* eval.c (specbind): Disallow let-binding frame-local vars.
[bpt/emacs.git] / src / ChangeLog
1 2010-05-14 Stefan Monnier <monnier@iro.umontreal.ca>
2
3 * eval.c (specbind): Remove left-over duplicate test.
4 Disallow let-binding frame-local vars. Add comment.
5
6 2010-05-14 Eli Zaretskii <eliz@gnu.org>
7
8 Make the cache of bidi iterator states dynamically allocated.
9 (bidi_cache_shrink): New function.
10 (bidi_init_it): Call it.
11 (bidi_cache_iterator_state): Enlarge the cache if needed.
12
13 * bidi.c (bidi_move_to_visually_next): Rename from
14 bidi_get_next_char_visually. All callers changed.
15
16 2010-05-14 Kenichi Handa <handa@m17n.org>
17
18 * dispextern.h (struct composition_it): New member reversed_p.
19
20 * composite.c (composition_compute_stop_pos): Search backward if
21 ENDPOS < CHARPOS.
22 (composition_reseat_it): Handle the case that ENDPOS < CHARPOS.
23 Set CMP_IT->reversed_p.
24 (composition_update_it): Pay attention to CMP_IT->reversed_p.
25
26 * xdisp.c (set_iterator_to_next):
27 Call composition_compute_stop_pos with negative ENDPOS if we are
28 scanning backward. Call composition_compute_stop_pos if scan
29 direction is changed.
30 (next_element_from_buffer): Call composition_compute_stop_pos with
31 negative ENDPOS if we are scanning backward.
32 (next_element_from_composition): Pay attention to
33 IT->cmp_it.reversed_p.
34
35 2010-05-14 Kenichi Handa <handa@m17n.org>
36
37 * font.c (font_range): Return the range for the font found at
38 first.
39
40 2010-05-14 Glenn Morris <rgm@gnu.org>
41
42 * Makefile.in (ns_appdir, ns_appbindir, ns_appsrc): Always define.
43
44 * Makefile.in (mktime, X11, register): Move undefs to configure.
45
46 * Makefile.in (MSDOS_OBJ): Default to empty, let msdos scripts set it.
47 (MSDOS_X_OBJ): New variable.
48 (MSDOS_SUPPORT_REAL): New constant.
49 (MSDOS_SUPPORT): Set as a variable, not with cpp.
50 (obj): Use MSDOS_X_OBJ.
51 (lisp): Use MSDOS_SUPPORT as a variable.
52
53 * Makefile.in (REAL_MOUSE_SUPPORT): New constant.
54 (GPM_MOUSE_SUPPORT): Now it's a constant.
55 (MOUSE_SUPPORT, TOOLTIP_SUPPORT, WINDOW_SUPPORT): Set with configure,
56 not cpp.
57
58 * Makefile.in (@NS_IMPL_GNUSTEP_INC@): Use in place of #ifdef.
59 (ns_appresdir): Remove, unused.
60
61 * Makefile.in (SHELL): Move outside cpp section.
62
63 * s/netbsd.h (AMPERSAND_FULL_NAME): Remove (defined in AH_BOTTOM).
64
65 2010-05-13 Glenn Morris <rgm@gnu.org>
66
67 * Makefile.in (FONT_DRIVERS): Place with other HAVE_X_WINDOWS stuff.
68 (TOOLTIP_SUPPORT): Place with other HAVE_WINDOW_SYSTEM stuff.
69
70 * Makefile.in (FONT_DRIVERS): If HAVE_X_WINDOWS is defined,
71 HAVE_WINDOW_SYSTEM must be too.
72
73 * Makefile.in (WINNT_SUPPORT): Remove, nt build does not use this file.
74 (lisp): Remove WINNT_SUPPORT.
75
76 * Makefile.in (OLDXMENU, LIBXMENU) [!HAVE_MENUS]:
77 Let configure set these variables (to empty) in this case as well.
78
79 * Makefile.in (LD_SWITCH_X_SITE): Define as a variable, not via cpp.
80 (LIBX_BASE): Use $LD_SWITCH_X_SITE.
81
82 * Makefile.in (C_SWITCH_X_SYSTEM, C_SWITCH_X_SITE, LIB_STANDARD)
83 (LIB_MATH, FONTCONFIG_CFLAGS, FONTCONFIG_LIBS, FREETYPE_CFLAGS)
84 (FREETYPE_LIBS, LIBOTF_CFLAGS, LIBOTF_LIBS, M17N_FLT_CFLAGS)
85 (M17N_FLT_LIBS, GNU_OBJC_CFLAGS, GNUSTEP_SYSTEM_LIBRARIES, LIBGPM)
86 (LIBRESOLV, UNEXEC_OBJ): For clarity, define variables to hold
87 the values output by configure.
88 (ALL_CFLAGS, obj, LIBES, temacs${EXEEXT}): Use the above variables.
89
90 2010-05-12 Glenn Morris <rgm@gnu.org>
91
92 * Makefile.in (YMF_PASS_LDFLAGS, LD, LINKER): Simplify the logic.
93 (LINKER_WAS_SPECIFIED): Remove.
94
95 * Makefile.in (LIB_GCC): Set using configure, not cpp.
96 (GNULIB_VAR) [!ORDINARY_LINK]: Always set to $LIB_GCC.
97 * m/arm.h (LIB_GCC) [GNU_LINUX]:
98 * s/cygwin.h (LIB_GCC):
99 * s/freebsd.h (LIB_GCC):
100 * s/gnu-linux.h (LIB_GCC):
101 * s/msdos.h (LIB_GCC):
102 * s/netbsd.h (LIB_GCC):
103 Move to configure.
104
105 2010-05-11 Karel Klic <kklic@redhat.com>
106
107 * ftfont.c: Fix incorrect parentheses of #if condition for
108 definining M17N_FLT_USE_NEW_FEATURE.
109
110 2010-05-11 Glenn Morris <rgm@gnu.org>
111
112 * Makefile.in (LIBS_SYSTEM) [MSDOS]: Do not reset.
113 * s/msdos.h (MSDOS_LIBS_SYSTEM): Remove.
114
115 2010-05-10 Eli Zaretskii <eliz@gnu.org>
116
117 * xdisp.c (init_iterator): Don't turn on bidi reordering in
118 unibyte buffers. See
119 http://lists.gnu.org/archive/html/emacs-devel/2010-05/msg00263.html.
120
121 2010-05-10 Glenn Morris <rgm@gnu.org>
122
123 * Makefile.in (LIBS_SYSTEM): Set using configure, not cpp.
124 (LIBS_SYSTEM) [MSDOS]: Reset with MSDOS_LIBS_SYSTEM.
125 (LIBES): Use LIBS_SYSTEM as a variable.
126 * s/msdos.h (LIBS_SYSTEM): Rename to MSDOS_LIBS_SYSTEM. Always define.
127 * s/aix4-2.h (LIBS_SYSTEM):
128 * s/freebsd.h (LIBS_SYSTEM):
129 * s/hpux10-20.h (LIBS_SYSTEM):
130 * s/sol2-6.h (LIBS_SYSTEM):
131 * s/unixware.h (LIBS_SYSTEM):
132 Move to configure.
133
134 * s/aix4-2.h (MAIL_USE_LOCKF):
135 * s/bsd-common.h (MAIL_USE_FLOCK):
136 * s/darwin.h (MAIL_USE_FLOCK):
137 * s/gnu-linux.h (MAIL_USE_FLOCK):
138 * s/irix6-5.h (MAIL_USE_FLOCK):
139 * s/template.h (MAIL_USE_FLOCK):
140 Move to configure.
141
142 2010-05-08 Chong Yidong <cyd@stupidchicken.com>
143
144 * Version 23.2 released.
145
146 2010-05-08 Andreas Schwab <schwab@linux-m68k.org>
147
148 * composite.c (autocmp_chars): Save point as marker before calling
149 auto-composition-function (Bug#5984).
150
151 * lisp.h (restore_point_unwind): Add prototype.
152
153 * fileio.c (restore_point_unwind): Remove static attribute.
154
155 2010-05-08 Kenichi Handa <handa@m17n.org>
156
157 * ftfont.c (M17N_FLT_USE_NEW_FEATURE): Define it if we can use the
158 new feature of libotf and m17n-flt.
159 (ftfont_check_otf) [M17N_FLT_USE_NEW_FEATURE]:
160 Call OTF_check_features even if no specific feature is given.
161 (PACK_OTF_TAG) [M17N_FLT_USE_NEW_FEATURE]: New macro.
162 (ftfont_drive_otf) [M17N_FLT_USE_NEW_FEATURE]: Handle the case
163 that OUT is NULL. Use OTF_drive_gsub_with_log and
164 OTF_drive_gpos_with_log instead of OTF_drive_gsub and
165 OTF_drive_gpos.
166 (ftfont_try_otf) [M17N_FLT_USE_NEW_FEATURE]: New function.
167 (ftfont_shape_by_flt) [M17N_FLT_USE_NEW_FEATURE]:
168 Setup mflt_enable_new_feature and mflt_try_otf.
169
170 2010-05-08 Jan Djärv <jan.h.d@swipnet.se>
171
172 * xsettings.c (Ftool_bar_get_system_style): Correct comment.
173
174 * gtkutil.c (xg_pack_tool_bar): Change show_all to show for handle
175 box and toolbar (Bug #6139).
176 (xg_create_tool_bar): Remove comment (Bug #6139).
177 (xg_make_tool_item): Remove gtk_widget_show_all (Bug #6139).
178 (xg_show_toolbar_item): Add gtk_widget_show for weventbox (Bug #6139).
179
180 2010-05-08 Juanma Barranquero <lekktu@gmail.com>
181
182 * makefile.w32-in ($(BLD)/eval.$(O), $(BLD)/w32fns.$(O)):
183 Update dependencies.
184
185 2010-05-08 Eli Zaretskii <eliz@gnu.org>
186
187 * fringe.c (update_window_fringes): Set up truncation bitmaps for
188 R2L lines.
189
190 2010-05-08 Glenn Morris <rgm@gnu.org>
191
192 * Makefile.in (THIS_IS_MAKEFILE): Remove, unused.
193
194 * Makefile.in (LIBS_TERMCAP): Set with configure, not cpp.
195 (TERMCAP_OBJ): New, set by configure, replacing termcapobj.
196 (termcapobj): Replace with TERMCAP_OBJ.
197 (otherobj): Use $TERMCAP_OBJ instead of $termcapobj.
198 (LIBES): Use LIBS_TERMCAP as a variable.
199
200 * s/freebsd.h (osreldate.h): No longer include, since this file
201 does not use __FreeBSD_version any more.
202
203 * s/aix4-2.h (TERMINFO):
204 * s/cygwin.h (TERMINFO):
205 * s/darwin.h (TERMINFO, LIBS_TERMCAP) [HAVE_LIBNCURSES]:
206 * s/freebsd.h (TERMINFO, LIBS_TERMCAP):
207 * s/gnu-linux.h (TERMINFO, LIBS_TERMCAP) [HAVE_LIBNCURSES]:
208 * s/gnu.h (TERMINFO, LIBS_TERMCAP) [HAVE_LIBNCURSES]:
209 * s/hpux10-20.h (TERMINFO, LIBS_TERMCAP):
210 * s/irix6-5.h (TERMINFO):
211 * s/netbsd.h (LIBS_TERMCAP):
212 * s/openbsd.h (TERMINFO, LIBS_TERMCAP):
213 * s/sol2-6.h (LIBS_TERMCAP) [!TERMINFO]:
214 * s/usg5-4.h (TERMINFO):
215 Move to configure.
216
217 2010-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
218
219 * eval.c (unbind_to): Don't unbind a local binding into the global
220 binding when the local binding disappeared. Inversely, don't unbind
221 a global binding into a newly created local binding.
222 * data.c (set_internal): Make its `buf' arg into a `where' arg so we
223 can specify the frame to use, when applicable. Adjust callers.
224
225 2010-05-07 Vincent Belaïche <vincent.belaiche@gmail.com>
226 Stefan Monnier <monnier@iro.umontreal.ca>
227
228 * floatfns.c (Fisnan, Fcopysign, Ffrexp, Fldexp): New functions.
229
230 2010-05-07 Eli Zaretskii <eliz@gnu.org>
231
232 * w32fns.c: Include w32.h.
233 (Fw32_shell_execute): Decode the error message before passing it
234 to `error'. (Bug#6126)
235
236 * msdos.c (dos_set_window_size):
237 * w16select.c (Fx_selection_exists_p): Use `Fsymbol_value (foo)'
238 instead of `XSYMBOL (foo)->value'.
239
240 2010-05-07 Eli Zaretskii <eliz@gnu.org>
241
242 Fix the MS-DOS build, broken by autoconfiscation.
243
244 * Makefile.in: Don't use Make-style comments past the "start of
245 cpp stuff" line.
246 (MSDOS_OBJ): Remove xmenu.o (it is now defined by XMENU_OBJ).
247
248 * s/msdos.h (UNEXEC): Don't define (@unexec@ in Makefile.in is
249 edited directly by msdos/sed1v2.inp).
250
251 2010-05-07 Glenn Morris <rgm@gnu.org>
252
253 * Makefile.in (LD_SWITCH_SYSTEM): Set with configure, not cpp.
254 (LD_SWITCH_SYSTEM_EXTRA): New variable, set by configure.
255 (TEMACS_LDFLAGS): Use $LD_SWITCH_SYSTEM and $LD_SWITCH_SYSTEM_EXTRA,
256 move out of cpp section.
257 * s/freebsd.h (LD_SWITCH_SYSTEM):
258 * s/gnu-linux.h (LD_SWITCH_SYSTEM):
259 * s/netbsd.h (LD_SWITCH_SYSTEM):
260 * s/openbsd.h (LD_SWITCH_SYSTEM): Move to configure.in.
261
262 2010-05-07 Dan Nicolaescu <dann@ics.uci.edu>
263
264 Define LIB_STANDARD and START_FILES using autoconf.
265 * s/usg5-4.h (LIB_STANDARD):
266 * s/netbsd.h (START_FILES):
267 * s/irix6-5.h (LIB_STANDARD):
268 * s/hpux10-20.h (LIB_STANDARD, START_FILES):
269 * s/gnu-linux.h (START_FILES, LIB_STANDARD):
270 * s/freebsd.h (START_FILES):
271 * s/darwin.h (START_FILES):
272 * s/cygwin.h (START_FILES):
273 * s/aix4-2.h (LIB_STANDARD):
274 * m/ibmrs6000.h (START_FILES): Remove, move logic to configure.in.
275 * Makefile.in (STARTFILES): Rename to START_FILES, define using
276 autoconf, not cpp.
277
278 2010-05-06 Dan Nicolaescu <dann@ics.uci.edu>
279
280 Remove NEED_BSDTTY and NEED_UNISTD_H.
281 * s/hpux10-20.h (NEED_BSDTTY): Remove.
282 * s/aix4-2.h (NEED_UNISTD_H): Remove.
283 * systty.h: Simplify conditionals for including <sys/bsdtty.h>,
284 <sys/ptyio.h> and <unistd.h>.
285
286 * emacs.c (main): Remove NO_DIR_LIBRARY conditional, unused.
287
288 * Makefile.in (STARTFILES): Conditionally define to make the usage clear.
289 * s/gnu.h (START_FILES): Remove empty definition.
290
291 2010-05-06 Jan Djärv <jan.h.d@swipnet.se>
292
293 * xterm.c (x_draw_image_relief): Move declaration of extra to beginning.
294
295 2010-05-06 Glenn Morris <rgm@gnu.org>
296
297 * Makefile.in (CPP, LN_S): Remove unused variables.
298
299 2010-05-05 Stefan Monnier <monnier@iro.umontreal.ca>
300
301 * syntax.c (Fchar_syntax): Check the arg is a character (bug#6080).
302
303 2010-05-05 Lawrence Mitchell <wence@gmx.li>
304
305 * m/sparc.h: Fix typo in earlier change.
306
307 2010-05-04 Stefan Monnier <monnier@iro.umontreal.ca>
308
309 Misc tweaks.
310 * eval.c (Fdefvaralias): Remove unintended nested if.
311 (internal_condition_case_2, internal_condition_case_n): Use ANSI type.
312
313 2010-05-04 Bernhard Herzog <bh@intevation.de> (tiny change)
314
315 * xsmfns.c (smc_save_yourself_CB): strlen(client_id) => strlen(cwd).
316
317 2010-05-04 Dan Nicolaescu <dann@ics.uci.edu>
318
319 Remove BSD_PGRPS.
320 * s/bsd-common.h (BSD_PGRPS): Remove undef.
321 * s/gnu-linux.h (BSD_PGRPS): Remove.
322 * term.c (dissociate_if_controlling_tty):
323 * sysdep.c (narrow_foreground_group, widen_foreground_group)
324 (init_sys_modes, reset_sys_modes):
325 * emacs.c (main):
326 * callproc.c (Fcall_process, child_setup): Remove code depending
327 on BSD_PGRPS.
328
329 Remove POSIX_SIGNALS.
330 * s/usg5-4.h (POSIX_SIGNALS):
331 * s/netbsd.h (POSIX_SIGNALS):
332 * s/msdos.h (POSIX_SIGNALS):
333 * s/ms-w32.h (POSIX_SIGNALS):
334 * s/hpux11.h (POSIX_SIGNALS):
335 * s/gnu.h (POSIX_SIGNALS):
336 * s/gnu-linux.h (POSIX_SIGNALS):
337 * s/freebsd.h (POSIX_SIGNALS):
338 * s/darwin.h (POSIX_SIGNALS):
339 * s/cygwin.h (POSIX_SIGNALS):
340 * s/aix4-2.h (POSIX_SIGNALS): Remove definition.
341 * s/unixware.h:
342 * s/sol2-6.h: Remove comments on POSIX_SIGNALS.
343 * process.c (create_process):
344 * syssignal.h:
345 * sysdep.c (wait_for_termination, init_signals):
346 * process.c (create_process):
347 * msdos.c: POSIX_SIGNALS is always defined on all platforms,
348 remove all code that assumes the contrary.
349
350 2010-05-04 Glenn Morris <rgm@gnu.org>
351
352 * s/gnu-linux.h (LD_SWITCH_SYSTEM): Use LD_SWITCH_X_SITE_AUX as a shell
353 variable.
354 * s/netbsd.h (LD_SWITCH_SYSTEM_tmp): Remove.
355 (LD_SWITCH_SYSTEM): Use $LD_SWITCH_X_SITE_AUX_RPATH.
356 * s/openbsd.h (LD_SWITCH_SYSTEM_tmp): Remove.
357 (LD_SWITCH_SYSTEM): Use $LD_SWITCH_X_SITE_AUX_RPATH instead of
358 LD_SWITCH_SYSTEM_tmp.
359 * Makefile.in (LD_SWITCH_X_SITE_AUX, LD_SWITCH_X_SITE_AUX_RPATH):
360 New variables, set by configure.
361
362 * s/aix4-2.h (LD_SWITCH_SYSTEM_TEMACS): Move to configure.in.
363 * s/darwin.h (HEADERPAD_EXTRA, LIBS_NSGUI): Remove.
364 (LD_SWITCH_SYSTEM_TEMACS): Move to configure.in.
365 * Makefile.in (LD_SWITCH_SYSTEM_TEMACS): New variable, set by configure.
366 (TEMACS_LDFLAGS): Use $LD_SWITCH_SYSTEM_TEMACS.
367
368 * s/aix4-2.h (C_SWITCH_SYSTEM):
369 * m/alpha.h (C_SWITCH_MACHINE):
370 Move to configure.in.
371 * Makefile.in (C_SWITCH_MACHINE, C_SWITCH_SYSTEM):
372 New variables, set by configure.
373 (ALL_CFLAGS): Use $C_SWITCH_MACHINE and $C_SWITCH_SYSTEM in place of
374 $c_switch_machine and $c_switch_system.
375
376 2010-05-04 Dan Nicolaescu <dann@ics.uci.edu>
377
378 * s/hpux10-20.h (LIB_STANDARD): New definition.
379 * Makefile.in (ORDINARY_LINK): Remove setting LIB_STANDARD based
380 on it, not used anymore.
381
382 2010-05-03 Chong Yidong <cyd@stupidchicken.com>
383
384 * eval.c (internal_condition_case_n): Rename from
385 internal_condition_case_2.
386 (internal_condition_case_2): New function.
387
388 * xdisp.c (safe_call): Use internal_condition_case_n.
389
390 * fileio.c (Fdelete_file, internal_delete_file): New arg FORCE.
391 (internal_delete_file, Frename_file): Callers changed.
392
393 * buffer.c (Fkill_buffer):
394 * callproc.c (delete_temp_file): Callers changed (Bug#6070).
395
396 * lisp.h: Update prototypes.
397
398 2010-05-03 Glenn Morris <rgm@gnu.org>
399
400 * Makefile.in (LIBX_EXTRA, LIBX_BASE): New variables.
401 (LIBXT_OTHER, LIBX_OTHER): New, set by configure.
402 (LIBXT): Set with configure, not cpp.
403 (LIBX): Remove.
404 (LIBES): Replace $LIBX with $LIBX_BASE and $LIBX_OTHER.
405
406 2010-05-02 Dan Nicolaescu <dann@ics.uci.edu>
407
408 * m/amdx86-64.h (START_FILES, LIB_STANDARD): Remove.
409 The FreeBSD is not needed, the default works, Solaris version is
410 not needed, and the remaining case is not supported by configure.
411
412 2010-05-02 Jan Djärv <jan.h.d@swipnet.se>
413
414 * xsmfns.c (CHDIR_OPT): New define.
415 (smc_save_yourself_CB): Add CHDIR_OPT to options to use when
416 restarting emacs.
417
418 * xterm.c (x_connection_closed): Call Fkill_emacs instead of
419 shut_down_emacs.
420
421 * emacs.c (USAGE1): Mention --chdir.
422 (main): Handle --chdir.
423 (standard_args): Add --chdir.
424 (fatal_error_signal): Call Fkill_emacs for SIGTERM and SIGHUP (Bug
425 #5552).
426
427 2010-05-01 Dan Nicolaescu <dann@ics.uci.edu>
428
429 Remove LD_SWITCH_MACHINE.
430 * Makefile.in (LD_SWITCH_MACHINE): Remove definition, unused.
431 (TEMACS_LDFLAGS): Do not use LD_SWITCH_MACHINE.
432
433 Clean up IRIX code.
434 * m/iris4d.h (TERMINFO, FIRST_PTY_LETTER): Move definitions ...
435 * s/irix6-5.h (TERMINFO, FIRST_PTY_LETTER): ... here.
436
437 Clean up AIX code.
438 * m/ibmrs6000.inp: Remove file, unused.
439 * m/ibmrs6000.h (IBMR2AIX): Remove, unused.
440 (LD_SWITCH_MACHINE): Rename to LD_SWITCH_SYSTEM_TEMACS, and move
441 definition ...
442 * s/aix4-2.h (LD_SWITCH_SYSTEM_TEMACS): ... here.
443
444 * sysdep.c (child_setup_tty, init_sys_modes): Remove !IBMR2AIX code,
445 unused.
446
447 2010-05-01 Eli Zaretskii <eliz@gnu.org>
448
449 Emulate POSIX_SIGNALS on MS-Windows.
450
451 * s/ms-w32.h (POSIX_SIGNALS, struct sigaction, SIG_BLOCK)
452 (SIG_SETMASK, SIG_UNBLOCK): Define.
453
454 * sysdep.c (sys_signal) [WINDOWSNT]: #ifdef away.
455 (wait_for_termination) [WINDOWSNT]: Move MS-Windows specific code
456 from non-POSIX_SIGNALS section to POSIX_SIGNALS section.
457
458 * w32.c (sigemptyset, sigaddset, sigfillset, sigprocmask):
459 New stubs.
460
461 Miscellaneous fixes of bidi display.
462
463 * xdisp.c (find_row_end): New function, refactored from display_line.
464 (display_line): Use it.
465 (extend_face_to_end_of_line): In almost-filled rows, extend only
466 if the row is R2L and not continued.
467 (display_line): Fix prepending of truncation glyphs to R2L rows.
468 Preserve overlay and string info in row->end.
469 (insert_left_trunc_glyphs): Support addition of left truncation
470 glyphs to R2L rows.
471 (set_cursor_from_row): Don't place cursor on the vertical border
472 glyph between adjacent windows. Fix a crash when a display string
473 is continued to the next line. Don't return zero if cursor was
474 found by `cursor' property of a display string.
475 (try_cursor_movement): Don't assume that row->end == (row+1)->start,
476 test for that explicitly.
477
478 2010-05-01 Glenn Morris <rgm@gnu.org>
479
480 * Makefile.in (gmallocobj, rallocobj, vmlimitobj): Initialize to null,
481 for clarity.
482 (OTHER_OBJ): Remove.
483 (PRE_ALLOC_OBJ, POST_ALLOC_OBJ): New, set by configure.
484 (otherobj): Use PRE_ALLOC_OBJ, POST_ALLOC_OBJ rather than OTHER_OBJ.
485
486 2010-05-01 Karel Klíč <kklic@redhat.com>
487
488 * fileio.c (Ffile_selinux_context): Context functions may return null.
489
490 2010-04-30 Dan Nicolaescu <dann@ics.uci.edu>
491
492 * s/gnu.h (POSIX_SIGNALS, START_FILES): New definitions.
493
494 2010-04-30 Glenn Morris <rgm@gnu.org>
495
496 * Makefile.in (vmlimitobj) [!SYSTEM_MALLOC]: New variable. (Bug#6065)
497 (OTHER_OBJ): Define as a separate variable, for clarity.
498
499 2010-04-30 Jan Djärv <jan.h.d@swipnet.se>
500
501 * xsettings.c: include limits.h and update file comment.
502
503 2010-04-30 Glenn Morris <rgm@gnu.org>
504
505 * Makefile.in (OLDXMENU, LIBXMENU) [HAVE_MENUS]:
506 Set with configure, not cpp.
507 (LIBW): Remove, replace with $TOOLKIT_LIBW.
508
509 * Makefile.in (mallocobj): Remove.
510 (otherobj): Simplify using @OTHER_OBJ@.
511
512 * Makefile.in (dispnew.o, frame.o, fringe.o, font.o, fontset.o)
513 (keyboard.o, window.o, xdisp.o, xfaces.o, menu.o):
514 Don't bother making nsgui.h dependency platform-specific.
515
516 * Makefile.in (nsfns.o): Remove duplicate nsgui.h dependency.
517
518 2010-04-29 Stefan Monnier <monnier@iro.umontreal.ca>
519
520 * process.c (read_process_output, exec_sentinel): Don't burp if the
521 sentinel/filter kills the current buffer (bug#6060).
522
523 Fix wrong-docstring problem introduced with hash-consing. (Bug#6008)
524 * eval.c (Fautoload): Set doc to a unique number rather than to 0.
525 Remove unused var `args'.
526 * lisp.h (XSETCARFASTINT, XSETCDRFASTINT): Remove.
527 (LOADHIST_ATTACH): Wrap with do...while to avoid surprises for callers.
528 * doc.c (store_function_docstring): Use XSETCAR.
529
530 2010-04-28 Glenn Morris <rgm@gnu.org>
531
532 * Makefile.in (BASE_WINDOW_SUPPORT, X_WINDOW_SUPPORT): New variables.
533 (WINDOW_SUPPORT) [HAVE_WINDOW_SYSTEM]: Use them.
534
535 * Makefile.in (CYGWIN_OBJ): Set with configure, not cpp.
536
537 * Makefile.in (GPM_MOUSE_SUPPORT): New, set by configure.
538 (MOUSE_SUPPORT) [!HAVE_MOUSE]: Use $GPM_MOUSE_SUPPORT.
539
540 * Makefile.in (FONT_OBJ): New, set by configure.
541 (FONT_DRIVERS): Use $FONT_OBJ.
542
543 * Makefile.in (LIBXMU): Set with configure, not cpp.
544 * s/aix4-2.h (LIBXMU):
545 * s/hpux10-20.h (LIBXMU):
546 Remove definition, now set in configure.
547
548 * Makefile.in (NS_OBJ, NS_SUPPORT): Set with configure, not cpp.
549
550 * m/amdx86-64.h [i386]: Move this test to configure.in.
551
552 2010-04-27 Glenn Morris <rgm@gnu.org>
553
554 * Makefile.in (LIBXTR6): Set with configure, not cpp.
555 * s/unixware.h (NEED_LIBW): Remove definition.
556
557 * Makefile.in (LUCID_LIBW, MOTIF_LIBW): Remove, replacing by...
558 (TOOLKIT_LIBW): New, set by configure.
559 (@X_TOOLKIT_TYPE@): No longer define it.
560
561 * Makefile.in (LIBXP): Remove, since included in MOTIF_LIBW.
562 (MOTIF_LIBW): Set with configure, not cpp.
563 * s/aix4-2.h (LIB_MOTIF):
564 * s/gnu-linux.h (LIB_MOTIF):
565 * s/unixware.h (LIB_MOTIF): Move to configure.in.
566
567 2010-04-27 Dan Nicolaescu <dann@ics.uci.edu>
568
569 Reduce CPP usage.
570 * Makefile.in (LIB_X11_LIB): Remove, inline in the only user.
571 (obj): Use autoconf for unexec instead of cpp.
572 (C_SWITCH_SYSTEM, C_SWITCH_MACHINE, C_SWITCH_X_SITE): Remove
573 definitions and undefs. Inline definitions in the only user.
574 (ALL_CFLAGS): Substitute C_SWITCH_X_SYSTEM using autoconf.
575
576 2010-04-27 Glenn Morris <rgm@gnu.org>
577
578 * m/amdx86-64.h (START_FILES, LIB_STANDARD): Change the logic around,
579 since the defaults (set by the system file) are fine in most cases.
580 [GNU_LINUX, __OpenBSD__, __NetBSD__, __APPLE__]: Remove sections.
581 * m/ibms390x.h (START_FILES, LIB_STANDARD):
582 * m/macppc.h (START_FILES, LIB_STANDARD) [GNU_LINUX]:
583 * m/sparc.h (START_FILES, LIB_STANDARD) [__linux__]:
584 Remove definitions, since they are set correctly in s/gnu-linux.h.
585 * s/freebsd.h (START_FILES, LIB_STANDARD):
586 * s/gnu-linux.h (START_FILES, LIB_STANDARD):
587 * s/hpux10-20.h (START_FILES):
588 * s/netbsd.h (START_FILES, LIB_STANDARD, START_FILES_1, END_FILES_1):
589 Use $CRT_DIR in place of fixed /usr/lib, /lib directories.
590
591 * Makefile.in (LIBXP, LUCID_LIBW, WIDGET_OBJ): Set via configure.
592 (MOTIF_LIBW): Use $LIBXP.
593 (otherobj): Use $WIDGET_OBJ.
594
595 2010-04-26 Dan Nicolaescu <dann@ics.uci.edu>
596
597 * Makefile.in (LIBS_MACHINE): Remove, unused.
598
599 Use autoconf instead of cpp for LIB_MATH.
600 * s/darwin.h (LIB_MATH): Do not define here, move to configure.
601 * s/cygwin.h (LIB_MATH): Likewise.
602 * Makefile.in (LIB_MATH): Do not define with cpp.
603 (LIBES): Use autoconf for LIB_MATH.
604
605 2010-04-26 Kenichi Handa <handa@m17n.org>
606
607 * composite.c (Ffind_composition_internal): Fix the return value
608 for an automatic composition.
609
610 2010-04-25 Dan Nicolaescu <dann@ics.uci.edu>
611
612 Remove all NO_ARG_ARRAY uses.
613 * fns.c (concat2, concat3, nconc2):
614 * eval.c (apply1, call1, call2, call3, call4, call5, call6)
615 (call7): Remove NO_ARG_ARRAY usage, assume it's always true.
616 * m/xtensa.h (NO_ARG_ARRAY):
617 * m/template.h (NO_ARG_ARRAY):
618 * m/sparc.h (NO_ARG_ARRAY):
619 * m/sh3.h (NO_ARG_ARRAY):
620 * m/mips.h (NO_ARG_ARRAY):
621 * m/macppc.h (NO_ARG_ARRAY):
622 * m/iris4d.h (NO_ARG_ARRAY):
623 * m/intel386.h (NO_ARG_ARRAY):
624 * m/ibms390x.h (NO_ARG_ARRAY):
625 * m/ibms390.h (NO_ARG_ARRAY):
626 * m/ibmrs6000.h (NO_ARG_ARRAY):
627 * m/ia64.h (NO_ARG_ARRAY):
628 * m/hp800.h (NO_ARG_ARRAY):
629 * m/arm.h (NO_ARG_ARRAY):
630 * m/amdx86-64.h (NO_ARG_ARRAY):
631 * m/alpha.h (NO_ARG_ARRAY): Remove definition.
632
633 2010-04-25 Eli Zaretskii <eliz@gnu.org>
634
635 * xdisp.c (display_line): Don't assume 2nd call to
636 get_next_display_element cannot return zero. (Bug#6030)
637 (iterate_out_of_display_property): New function, body from pop_it.
638 (pop_it): Use it.
639
640 2010-04-24 Glenn Morris <rgm@gnu.org>
641
642 * m/amdx86-64.h (START_FILES, LIB_STANDARD) [__OpenBSD__]:
643 For clarity, revert to using fixed /usr/lib rather than $CRT_DIR.
644 (START_FILES, LIB_STANDARD) [__FreeBSD__]: Merge into the generic case,
645 since CRT_DIR defaults to /usr/lib. Suggested by Dan Nicolaescu.
646
647 2010-04-24 Eli Zaretskii <eliz@gnu.org>
648
649 * xdisp.c (display_line): Use `reseat' instead of `reseat_1', and
650 use `get_next_display_element' and `set_iterator_to_next' to
651 advance to the next character, when looking for the character that
652 begins the next row.
653
654 * .gdbinit: Add a "set Fmake_symbol" line to force GDB to load the
655 definition of "struct Lisp_Symbol".
656
657 2010-04-24 Glenn Morris <rgm@gnu.org>
658
659 * Makefile.in (CRT_DIR): New variable, set by configure.
660 * m/amdx86-64.h, m/ibms390x.h (START_FILES, LIB_STANDARD):
661 Use $CRT_DIR rather than HAVE_LIB64_DIR. (Bug#5655)
662
663 2010-04-23 Dan Nicolaescu <dann@ics.uci.edu>
664
665 * Makefile.in: Remove C_SWITCH_X_MACHINE, unused.
666
667 * s/cygwin.h (LIBS_DEBUG): Remove, unused.
668
669 Remove redundant flags.
670 * s/freebsd.h (C_SWITCH_SYSTEM):
671 * s/hpux10-20.h (C_SWITCH_X_SYSTEM, LD_SWITCH_X_DEFAULT):
672 * s/netbsd.h (C_SWITCH_SYSTEM):
673 * s/openbsd.h (LD_SWITCH_X_DEFAULT): Remove, configure takes care
674 of these.
675
676 Simplify m/intel386.h.
677 * m/intel386.h (CRT0_DUMMIES): Remove, inline value in the only
678 user: ecrt0.c.
679 (SOLARIS2): Remove LOAD_AVE_TYPE, LOAD_AVE_CVT, LIBS_MACHINE, unused.
680 (USG5_4): Move LOAD_AVE_TYPE, LOAD_AVE_CVT, FSCALE definitions to
681 the only user: s/unixware.h.
682 * ecrt0.c: Remove #ifndef static. Inline CRT0_DUMMIES definition
683 from m/intel386.h.
684 * s/unixware.h (LOAD_AVE_TYPE, LOAD_AVE_CVT, FSCALE): Definitions
685 moved here from m/intel386.h.
686
687 * m/mips.h: Remove #if 0 code.
688
689 2010-04-23 Eli Zaretskii <eliz@gnu.org>
690
691 Fix display of composed characters from L2R scripts in bidi buffers.
692 * xdisp.c (set_iterator_to_next, next_element_from_composition):
693 After advancing IT past the composition, resync the bidi iterator
694 with IT's position. (Bug#5977)
695
696 2010-04-23 Dan Nicolaescu <dann@ics.uci.edu>
697
698 * Makefile.in (LD_SWITCH_MACHINE_TEMACS): Remove, unused.
699 (TEMACS_LDFLAGS): Don't use LD_SWITCH_SYSTEM_TEMACS.
700
701 2010-04-23 Stefan Monnier <monnier@iro.umontreal.ca>
702
703 * gtkutil.c: Include xsettings.h for Ftool_bar_get_system_style.
704
705 2010-04-23 Eli Zaretskii <eliz@gnu.org>
706
707 Support `display' text properties and overlay strings in bidi buffers.
708 * xdisp.c (pop_it): When the stack is popped after displaying
709 from a string, bidi-iterate to exit from the text portion covered
710 by the `display' property or overlay. (Bug#5988, bug#5920)
711
712 2010-04-23 Dan Nicolaescu <dann@ics.uci.edu>
713
714 * m/macppc.h (LD_SWITCH_SYSTEM_TEMACS): Remove #undef.
715 (LD_SWITCH_MACHINE_TEMACS): Remove, configure sets nocombreloc.
716
717 * s/netbsd.h (LD_SWITCH_SYSTEM_TEMACS): Remove, configure sets nocombreloc.
718 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Remove.
719
720 Simplify STARTFILES definition.
721 * s/hpux10-20.h (START_FILES): Explicitly define here instead of
722 relying on Makefile.in to define it.
723 * s/cygwin.h (START_FILES): Likewise.
724 * Makefile.in (STARTFILES): Remove conditional code, not needed anymore.
725
726 Clean up Solaris code.
727 * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS, C_SWITCH_X_SYSTEM)
728 (LIB_MOTIF): Remove, configure takes care of this.
729 (NOT_USING_MOTIF): Remove, unused.
730 * xrdb.c: Remove #if 0-ed #include.
731 (SYSV): Remove conditional for old SysV.
732 * sysdep.c (closedir): Remove conditional code for Solaris,
733 Solaris has closedir.
734
735 2010-04-22 Jan Djärv <jan.h.d@swipnet.se>
736
737 * xsettings.c (read_and_apply_settings): Check if current_font is
738 NULL before strcmp (Bug#6001).
739
740 2010-04-21 Dan Nicolaescu <dann@ics.uci.edu>
741
742 Clean up HP-UX files.
743 * m/hp800.h (NO_REMAP, VIRT_ADDR_VARIES, DATA_SEG_BITS)
744 (DATA_START, TEXT_START, LOAD_AVE_TYPE, LOAD_AVE_CVT)
745 (LDAV_SYMBOL, index, rindex): Move definitions only used in HP-UX ...
746 * s/hpux10-20.h: ... to the only user, here.
747
748 2010-04-21 Eli Zaretskii <eliz@gnu.org>
749
750 * bidi.c (bidi_find_paragraph_start, bidi_at_paragraph_end): Don't
751 use buffer-local values of paragraph-start and paragraph-separate.
752 <paragraph_start_re, paragraph_separate_re>: Rename from
753 fallback_paragraph_start_re and fallback_paragraph_separate_re.
754 (Bug#5992)
755
756 2010-04-21 Jan Djärv <jan.h.d@swipnet.se>
757
758 * xsettings.c: Qmonospace_font_name, Qtool_bar_style and
759 current_tool_bar_style are new.
760 (store_config_changed_event): Rename from store_font_changed_event.
761 (XSETTINGS_TOOL_BAR_STYLE): New define.
762 (SEEN_FONT, SEEN_TB_STYLE): New enum values.
763 (struct xsettings): Add font and tb_style, set xft stuff inside #ifdef
764 HAVE_XFT.
765 (something_changedCB): store_font_changed_event is now
766 store_config_changed_event
767 (parse_settings): Rename from parse_xft_settings. Read
768 non-xft xsettings outside #ifdef HAVE_XFT.
769 (read_settings): Renamed from read_xft_settings.
770 (apply_xft_settings): Take current settings as parameter. Do not
771 call read_(xft)_settings.
772 (read_and_apply_settings): New function.
773 (xft_settings_event): Do non-xft stuff out of HAVE_XFT. Call
774 read_and_apply_settings if there are settings to be read.
775 (init_xsettings): Renamed from init_xfd_settings.
776 Call read_and_apply_settings unconditionally.
777 (xsettings_initialize): Call init_xsettings.
778 (Ftool_bar_get_system_style): New function.
779 (syms_of_xsettings): Define Qmonospace_font_name and
780 Qtool_bar_style. Initialize current_tool_bar_style to nil.
781 defsubr Stool_bar_get_system_style. Fprovide on
782 dynamic-setting.
783 Move misplaced HAVE_GCONF
784
785 * xsettings.h (Ftool_bar_get_system_style): Declare.
786
787 * xdisp.c: Vtool_bar_style, tool_bar_max_label_size,
788 Qtext, Qboth, Qboth_horiz are new.
789 (syms_of_xdisp): Intern Qtext, Qboth, Qboth_horiz, DEFVAR
790 Vtool_bar_style, tool_bar_max_label_size.
791
792 * lisp.h: Extern declare Qtext, Qboth, Qboth_horiz.
793
794 * keyboard.c: QClabel is new.
795 (parse_tool_bar_item): Take out QClabel from tool bar items.
796 Try to construct a label if ther is no QClabel.
797 (syms_of_keyboard): Intern :label as QClabel.
798
799 * dispextern.h (tool_bar_item_idx): TOOL_BAR_ITEM_LABEL is new.
800 (Vtool_bar_style, tool_bar_max_label_size, DEFAULT_TOOL_BAR_LABEL_SIZE):
801 New.
802
803 * Makefile.in (SOME_MACHINE_LISP): font-setting.el renamed to
804 dynamic-setting.el.
805
806 * gtkutil.c (xg_tool_bar_menu_proxy): Handle label in tool bar item.
807 (xg_make_tool_item, xg_show_toolbar_item): New function.
808 (update_frame_tool_bar): Take label from TOOL_BAR_ITEM_LABEL.
809 Call xg_make_tool_item to make a tool bar item.
810 Call xg_show_toolbar_item. Use wtoolbar instead of x->toolbar_widget.
811
812 * xterm.c (x_draw_image_relief): Take Vtool_bar_button_margin
813 into account for toolbars.
814
815 2010-04-21 Jan Djärv <jan.h.d@swipnet.se>
816
817 * data.c (make_blv): Declarations before code (Bug#5993).
818
819 2010-04-21 Glenn Morris <rgm@gnu.org>
820
821 * Makefile.in (DBUS_OBJ, GTK_OBJ, XMENU_OBJ, XOBJ):
822 Define using autoconf, not cpp.
823 (LIBXSM): New variable, set by autoconf.
824 (LIBXT): Use $LIBXSM.
825
826 2010-04-21 Dan Nicolaescu <local_user@dannlt>
827
828 Remove NOMULTIPLEJOBS, unused.
829 * s/template.h (NOMULTIPLEJOBS):
830 * s/msdos.h (NOMULTIPLEJOBS): Remove, unused.
831
832 Simplify LD_SWITCH_SYSTEM_TEMACS usage.
833 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS):
834 * s/gnu-linux.h (LD_SWITCH_SYSTEM_TEMACS): Remove, configure
835 detects -znocombreloc and passes it to the linker
836 * s/hpux10-20.h (LD_SWITCH_SYSTEM_TEMACS): Remove, empty.
837
838 2010-04-21 Glenn Morris <rgm@gnu.org>
839
840 * Makefile.in (LIBSELINUX_LIBS): Move out of #ifdef.
841
842 2010-04-21 Karel Klíč <kklic@redhat.com>
843
844 * Makefile.in (LIBSELINUX_LIBS): New.
845 (LIBES): Add $LIBSELINUX_LIBS.
846 * eval.c, lisp.h (call7): New function.
847 * fileio.c [HAVE_LIBSELINUX]: Include selinux headers.
848 (Ffile_selinux_context, Fset_file_selinux_context):
849 New functions.
850 (Fcopy_file): New parameter preserve-selinux-context.
851 (Frename_file): Preserve selinux context when renaming by copy-file.
852
853 2010-04-21 Juanma Barranquero <lekktu@gmail.com>
854 Eli Zaretskii <eliz@gnu.org>
855
856 Don't depend on cm.c or termcap.c on Windows, use stubs.
857 * makefile.w32-in (OBJ1): Remove cm.$(O) and termcap.$(O).
858 ($(BLD)/cm.$(O), $(BLD)/termcap.$(O)): Remove.
859 * w32console.c (current_tty, cost): New vars; lifted from cm.c.
860 (evalcost, cmputc, cmcheckmagic, cmcostinit, cmgoto, Wcm_clear)
861 (sys_tputs, sys_tgetstr): New stubs.
862 * s/ms-w32.h (chcheckmagic, cmcostinit, cmgoto, cmputc, Wcm_clear)
863 (tputs, tgetstr): New; define to sys_*.
864
865 2010-04-20 Juanma Barranquero <lekktu@gmail.com>
866
867 * buffer.c (syms_of_buffer) <bidi-display-reordering>: Doc fix.
868
869 2010-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
870
871 * data.c (Fmake_variable_buffer_local, Fmake_local_variable):
872 Just signal a warning rather than an error when inside a let.
873 (Fmake_variable_frame_local): Add the same test.
874
875 * font.c (syms_of_font): Make the style table vars read-only.
876
877 * buffer.h (struct buffer): Remove unused var `direction_reversed'.
878 * buffer.c (init_buffer_once, syms_of_buffer): Remove its initialization.
879
880 * bidi.c (bidi_initialize): Simplify fallback_paragraph_*_re init.
881
882 2010-04-20 Eli Zaretskii <eliz@gnu.org>
883
884 Fix R2L paragraph display on TTY.
885
886 * xdisp.c (unproduce_glyphs): New function.
887 (display_line): Use it when produced glyphs are discarded from R2L
888 glyph rows.
889 (append_composite_glyph): In R2L rows, prepend the glyph rather
890 than appending it.
891
892 * term.c (append_composite_glyph): In R2L rows, prepend the glyph
893 rather than append it. Set up the resolved_level and bidi_type
894 attributes of the appended glyph.
895 (produce_special_glyphs): Mirror the backslash continuation
896 character in R2L lines.
897
898 Implement display of R2L paragraphs in GUI sessions.
899
900 * xdisp.c [HAVE_WINDOW_SYSTEM]: Add prototype for
901 append_stretch_glyph.
902 (set_cursor_from_row) <cursor_x>: Remove unused variable. Fix
903 off-by-one error in computing x at end of text in the row.
904 (append_stretch_glyph): In reversed row, prepend the glyph rather
905 than append it. Set resolved_level and bidi_type of the glyph.
906 (extend_face_to_end_of_line): If the row is reversed, prepend a
907 stretch glyph whose width is such that the rightmost glyph will be
908 drawn at the right margin of the window. Fix off-by-one error on
909 TTY frames in testing whether a line needs face extension. Fix
910 face extension at ZV. If this is the last glyph row, use
911 DEFAULT_FACE_ID, to avoid painting the rest of the window with the
912 region face.
913 (set_cursor_from_row, display_line): Use
914 MATRIX_ROW_CONTINUATION_LINE_P instead of testing value of
915 row->continuation_lines_width.
916 (next_element_from_buffer): Don't call bidi_paragraph_init if we
917 are at ZV. Fixes a crash when reseated to ZV by
918 try_window_reusing_current_matrix.
919 (display_and_set_cursor, erase_phys_cursor): Handle negative HPOS,
920 which happens with R2L glyph rows. Fixes a crash when inserting a
921 character at end of an R2L line.
922 (set_cursor_from_row): Don't be fooled by truncated rows: don't
923 treat them as having zero-width characters. Improve comments.
924 Don't reverse pos_before and pos_after for reversed glyph rows.
925 Set cursor.x to negative value when the cursor might be on the
926 left fringe.
927 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): For R2L lines, consider the
928 left fringe, not the right one.
929 (notice_overwritten_cursor, draw_phys_cursor_glyph)
930 (erase_phys_cursor): For reversed cursor_row, support cursor on
931 the left fringe.
932
933 * fringe.c (update_window_fringes): For R2L rows, swap the bitmaps
934 of continuation indicators on the fringes.
935 (draw_fringe_bitmap): For reversed glyph rows, allow cursor on the
936 left fringe.
937
938 * w32term.c (w32_draw_window_cursor): For reversed glyph rows,
939 draw cursor on the left fringe.
940
941 * xterm.c (x_draw_window_cursor): For reversed glyph rows, draw
942 cursor on the left fringe.
943
944 * dispnew.c (update_text_area): Handle reversed desired rows when
945 the cursor is on the left fringe.
946 (set_window_cursor_after_update): Limit cursor's hpos by -1 from
947 below, not by 0, for when the cursor is on the left fringe.
948
949 2010-04-20 Jan Djärv <jan.h.d@swipnet.se>
950
951 * gtkutil.c (xg_event_is_for_scrollbar): Check if grabbed
952 widget is a scrollbar.
953
954 2010-04-20 Kenichi Handa <handa@m17n.org>
955
956 * charset.c (char_charset): Consider Vcharset_non_preferred_head
957 only when the arg CHARSET_LIST is nil.
958
959 2010-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
960
961 Make variable forwarding explicit rather the using special values.
962 Basically, this makes the structure of buffer-local values and object
963 forwarding explicit in the type of Lisp_Symbols rather than use
964 special Lisp_Objects for that. This tends to lead to slightly more
965 verbose code, but is more C-like, simpler, and makes it easier to make
966 sure we handled all cases, among other things by letting the compiler
967 help us check it.
968 * lisp.h (enum Lisp_Misc_Type, union Lisp_Misc):
969 Removing forwarding objects.
970 (enum Lisp_Fwd_Type, enum symbol_redirect, union Lisp_Fwd): New types.
971 (struct Lisp_Symbol): Make the various forms of variable-forwarding
972 explicit rather than hiding them inside Lisp_Object "values".
973 (XFWDTYPE): New macro.
974 (XINTFWD, XBOOLFWD, XOBJFWD, XKBOARD_OBJFWD): Redefine.
975 (XBUFFER_LOCAL_VALUE): Remove.
976 (SYMBOL_VAL, SYMBOL_ALIAS, SYMBOL_BLV, SYMBOL_FWD, SET_SYMBOL_VAL)
977 (SET_SYMBOL_ALIAS, SET_SYMBOL_BLV, SET_SYMBOL_FWD): New macros.
978 (SYMBOL_VALUE, SET_SYMBOL_VALUE): Remove.
979 (struct Lisp_Intfwd, struct Lisp_Boolfwd, struct Lisp_Objfwd)
980 (struct Lisp_Buffer_Objfwd, struct Lisp_Kboard_Objfwd):
981 Remove the Lisp_Misc_* header.
982 (struct Lisp_Buffer_Local_Value): Redefine.
983 (BLV_FOUND, SET_BLV_FOUND, BLV_VALUE, SET_BLV_VALUE): New macros.
984 (struct Lisp_Misc_Any): Add filler to get the right size.
985 (struct Lisp_Free): Use struct Lisp_Misc_Any rather than struct
986 Lisp_Intfwd.
987 (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL, DEFVAR_INT)
988 (DEFVAR_KBOARD): Allocate a forwarding object.
989 * data.c (do_blv_forwarding, store_blv_forwarding): New macros.
990 (let_shadows_global_binding_p): New function.
991 (union Lisp_Val_Fwd): New type.
992 (make_blv): New function.
993 (swap_in_symval_forwarding, indirect_variable, do_symval_forwarding)
994 (store_symval_forwarding, swap_in_global_binding, Fboundp)
995 (swap_in_symval_forwarding, find_symbol_value, Fset)
996 (let_shadows_buffer_binding_p, set_internal, default_value)
997 (Fset_default, Fmake_variable_buffer_local, Fmake_local_variable)
998 (Fkill_local_variable, Fmake_variable_frame_local)
999 (Flocal_variable_p, Flocal_variable_if_set_p)
1000 (Fvariable_binding_locus):
1001 * xdisp.c (select_frame_for_redisplay):
1002 * lread.c (Fintern, Funintern, init_obarray, defvar_int)
1003 (defvar_bool, defvar_lisp_nopro, defvar_lisp, defvar_kboard):
1004 * frame.c (store_frame_param):
1005 * eval.c (Fdefvaralias, Fuser_variable_p, specbind, unbind_to):
1006 * bytecode.c (Fbyte_code) <varref, varset>: Adapt to the new symbol
1007 value structure.
1008 * buffer.c (PER_BUFFER_SYMBOL): Move from buffer.h.
1009 (clone_per_buffer_values): Only adjust markers into the current buffer.
1010 (reset_buffer_local_variables): PER_BUFFER_IDX is never -2.
1011 (Fbuffer_local_value, set_buffer_internal_1)
1012 (swap_out_buffer_local_variables):
1013 Adapt to the new symbol value structure.
1014 (DEFVAR_PER_BUFFER): Allocate a Lisp_Buffer_Objfwd object.
1015 (defvar_per_buffer): Take a new arg for the fwd object.
1016 (buffer_lisp_local_variables): Return a proper alist (different fix
1017 for bug#4138).
1018 * alloc.c (Fmake_symbol): Use SET_SYMBOL_VAL.
1019 (Fgarbage_collect): Don't handle buffer_defaults specially.
1020 (mark_object): Handle new symbol value structure rather than the old
1021 special Lisp_Misc_* objects.
1022 (gc_sweep) <symbols>: Free also the buffer-local-value objects.
1023 * term.c (set_tty_color_mode):
1024 * bidi.c (bidi_initialize): Don't access the ->value field directly.
1025 * buffer.h (PER_BUFFER_VAR_OFFSET): Don't bother with
1026 a buffer_local_flags.
1027 * print.c (print_object): Get rid of impossible forwarding objects.
1028
1029 2010-04-19 Eli Zaretskii <eliz@gnu.org>
1030
1031 * bidi.c (bidi_get_type, bidi_get_category)
1032 (bidi_at_paragraph_end, bidi_resolve_weak, bidi_resolve_neutral)
1033 (bidi_type_of_next_char, bidi_level_of_next_char):
1034 Declare static. Use `INLINE' rather than `inline'.
1035
1036 2010-04-19 Juanma Barranquero <lekktu@gmail.com>
1037
1038 * dired.c (Ffile_attributes): Fix typo in docstring.
1039
1040 2010-04-19 Adrian Robert <Adrian.B.Robert@gmail.com>
1041
1042 * nsmenu.m (EmacsDialog-runDialogAt:): Declare ret as
1043 NSInteger (Bug#5811).
1044
1045 2010-04-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1046
1047 * s/darwin.h (PTY_ITERATION, PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF)
1048 (PTY_OPEN): New defines. Use openpty (Bug#726, Bug#5819).
1049
1050 2010-04-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1051
1052 * frame.h (FRAME_LINE_TO_PIXEL_Y): Add missing parenthesis.
1053
1054 2010-04-19 Chong Yidong <cyd@stupidchicken.com>
1055
1056 * xdisp.c (prepare_menu_bars): Don't call ns_set_doc_edited for
1057 terminal frames (Bug#5837).
1058
1059 2010-04-19 Eli Zaretskii <eliz@gnu.org>
1060
1061 * .gdbinit (xsubchartable): New command.
1062
1063 2010-04-19 Eli Zaretskii <eliz@gnu.org>
1064
1065 * xdisp.c (display_line): Don't write beyond the last glyph row in
1066 the desired matrix. Fixes a crash in "emacs -nw" (bug#5972), see
1067 http://lists.gnu.org/archive/html/emacs-devel/2010-04/msg00075.html
1068 and
1069 http://lists.gnu.org/archive/html/emacs-devel/2010-04/msg00213.html
1070
1071 2010-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
1072
1073 * alloc.c (Fpurecopy): Hash-cons if requested.
1074 (syms_of_alloc): Update purify-flag docstring.
1075
1076 2010-04-18 Jan Djärv <jan.h.d@swipnet.se>
1077
1078 * gtkutil.c (xg_set_geometry): Set size in geometry string also.
1079 (x_wm_set_size_hint): Set USER_POS in hint_flags (Bug#5968).
1080
1081 2010-04-17 Eli Zaretskii <eliz@gnu.org>
1082
1083 Fix a crash when an NSM character is inserted at BEGV.
1084
1085 * bidi.c (bidi_init_it): Fix initialization of bidi_it->prev.
1086 (bidi_resolve_weak): Don't use prev.type_after_w1 if it is
1087 NEUTRAL_B or UNKNOWN_BT.
1088
1089 2010-04-16 Eli Zaretskii <eliz@gnu.org>
1090
1091 * xdisp.c (set_cursor_from_row): Don't consider possibility of
1092 other rows with cursor unless they are different from this row and
1093 this row is part of a continued line. (Bug#5943)
1094
1095 2010-04-16 Dan Nicolaescu <dann@ics.uci.edu>
1096
1097 * s/freebsd.h: Restore osreldate.h include.
1098 Suggested by Naohiro Aota.
1099
1100 2010-04-16 Jan Djärv <jan.h.d@swipnet.se>
1101
1102 * xmenu.c (apply_systemfont_to_menu): *childs was incorrectly used.
1103
1104 2010-04-16 Ken Brown <kbrown@cornell.edu> (tiny change)
1105
1106 * s/cygwin.h: Avoid linking against static libgcc.
1107
1108 2010-04-15 Juri Linkov <juri@jurta.org>
1109
1110 * window.c: Add Qscroll_command.
1111 Remove Vscroll_preserve_screen_position_commands.
1112 (window_scroll_pixel_based, window_scroll_line_based): Check the
1113 `scroll-command' property on the last command instead of searching
1114 the last command in Vscroll_preserve_screen_position_commands.
1115 (syms_of_window): Initialize and staticpro `Qscroll_command'.
1116 Put Qscroll_command property on Qscroll_up and Qscroll_down.
1117 (scroll-preserve-screen-position): Doc fix.
1118 (Vscroll_preserve_screen_position_commands): Remove variable.
1119
1120 2010-04-15 Dan Nicolaescu <dann@ics.uci.edu>
1121
1122 * xdisp.c (message): Do not use NO_ARG_ARRAY.
1123
1124 2010-04-14 Dan Nicolaescu <dann@ics.uci.edu>
1125
1126 Reduce cpp use in Makefile.in.
1127 * Makefile.in (DBUS_CFLAGS, DBUS_LIBS, GCONF_CFLAGS, GCONF_LIBS)
1128 (LIBSOUND, CFLAGS_SOUND, RSVG_LIBS, RSVG_CFLAGS, INTERVALS_H)
1129 (GETLOADAVG_LIBS, RUN_TEMACS): Move to the autoconf section.
1130 (ORDINARY_LINK): Remove, defined in src/s/gnu.h.
1131 (CRT0_COMPILE): Remove, inline it in the only user.
1132
1133 2010-04-14 Juri Linkov <juri@jurta.org>
1134
1135 * window.c (keys_of_window): Rebind `C-v' from `scroll-up' to
1136 `scroll-up-command' and `M-v' from `scroll-down' to
1137 `scroll-down-command'.
1138
1139 2010-04-14 Juri Linkov <juri@jurta.org>
1140
1141 * window.c (Vscroll_preserve_screen_position_commands): New variable
1142 with the default value as the list of Qscroll_down and Qscroll_up.
1143 (window_scroll_pixel_based, window_scroll_line_based): Search the
1144 last command in the list Vscroll_preserve_screen_position_commands
1145 instead of comparing with Qscroll_up and Qscroll_down.
1146
1147 2010-04-13 Jan Djärv <jan.h.d@swipnet.se>
1148
1149 * gtkutil.c (xg_set_geometry): Set geometry for PPosition also.
1150 (x_wm_set_size_hint): Dont set position flags, gtk_window_parse_geometry
1151 does that.
1152
1153 * xfns.c (Fx_create_frame, x_create_tip_frame): Set default border width
1154 to zero.
1155
1156 2010-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
1157
1158 * term.c (init_tty): Move common text outside of #ifdef TERMINFO.
1159
1160 Try to solve the problem of spurious EOF chars in long lines of text
1161 sent to interactive subprocesses.
1162 * sysdep.c (child_setup_tty): Do not enable ICANON any more.
1163 (system_process_attributes): Remove unused var `ttotal'.
1164 * process.c (send_process): Don't bother breaking long line with EOF
1165 chars when talking to ttys any more.
1166 (wait_reading_process_output): Output a warning when called in such
1167 a way that it could block without being interruptible.
1168
1169 Try to detect file modification within the same second.
1170 * buffer.h (struct buffer): New field modtime_size.
1171 * buffer.c (reset_buffer): Initialize it.
1172 * fileio.c (Finsert_file_contents, Fwrite_region): Set it.
1173 (Fverify_visited_file_modtime): Check it.
1174 (Fclear_visited_file_modtime, Fset_visited_file_modtime): Clear it.
1175 (Fset_visited_file_modtime): Set (or clear) it.
1176
1177 2010-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
1178
1179 * process.c (status_notify): Remove unused var `ro'.
1180
1181 2010-04-12 Jan Djärv <jan.h.d@swipnet.se>
1182
1183 * xfns.c (select_visual): Don't call error if XGetVisualInfo returns
1184 more than one visual (Bug#5938).
1185
1186 2010-04-12 Dan Nicolaescu <dann@ics.uci.edu>
1187
1188 * Makefile.in (C_SWITCH_SYSTEM,C_SWITCH_MACHINE,C_SWITCH_X_SITE):
1189 Undefine.
1190
1191 2010-04-11 Dan Nicolaescu <dann@ics.uci.edu>
1192
1193 Remove C_SWITCH_SYSTEM_TEMACS.
1194 * s/darwin.h (C_SWITCH_SYSTEM_TEMACS): Remove.
1195 (malloc, realloc, free): Use emacs, not temacs for conditional
1196 definition.
1197
1198 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Remove.
1199 (ALL_CFLAGS): Do not use C_SWITCH_SYSTEM_TEMACS.
1200
1201 Use autoconf, not cpp for some variables.
1202 * Makefile.in (C_SWITCH_SYSTEM, C_SWITCH_MACHINE)
1203 (C_SWITCH_X_SITE): Define using autoconf, not cpp.
1204 (ALL_CFLAGS): Use them as make variables.
1205 (really-lwlib, really-oldXMenu): Do not pass them.
1206
1207 2010-04-11 Jan Djärv <jan.h.d@swipnet.se>
1208
1209 * xmenu.c (apply_systemfont_to_dialog): New.
1210 (create_and_show_dialog): Call apply_systemfont_to_dialog if HAVE_XFT.
1211
1212 2010-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
1213
1214 * process.c (exec_sentinel): Preserve current-buffer.
1215
1216 * process.c (read_process_output): Move the save-current-buffer to
1217 apply to both the filter and the non-filter branches.
1218
1219 2010-04-10 Dan Nicolaescu <dann@ics.uci.edu>
1220
1221 * s/msdos.h (UNEXEC): New definition.
1222
1223 2010-04-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1224
1225 * dispextern.h (TRY_WINDOW_CHECK_MARGINS)
1226 (TRY_WINDOW_IGNORE_FONTS_CHANGE): New defines.
1227
1228 * xdisp.c (try_window): Change arg from CHECK_MARGINS to FLAGS.
1229 Don't abort with fonts change if TRY_WINDOW_IGNORE_FONTS_CHANGE is
1230 set in FLAGS. Callers with non-zero CHECK_MARGINS changed to use
1231 TRY_WINDOW_CHECK_MARGINS.
1232
1233 * xfns.c (Fx_show_tip): Undo last change. Call try_window with
1234 TRY_WINDOW_IGNORE_FONTS_CHANGE (Bug#2423). Subtract last glyph's
1235 width only when it is for padding.
1236
1237 2010-04-09 Jan Djärv <jan.h.d@swipnet.se>
1238
1239 * xfns.c (Fx_show_tip): Call try_window in a loop until
1240 fonts_changed_p is zero (Bug#2423).
1241
1242 2010-04-08 Eli Zaretskii <eliz@gnu.org>
1243
1244 * xdisp.c (set_cursor_from_row): Don't dereference glyphs beyond
1245 the end of TEXT_AREA. (Bug#5856)
1246
1247 2010-04-08 Jan Djärv <jan.h.d@swipnet.se>
1248
1249 * xsettings.c (XSETTINGS_FONT_NAME): Move XSETTINGS_FONT_NAME out of
1250 HAVE_GCONF.
1251
1252 2010-04-08 Eli Zaretskii <eliz@gnu.org>
1253
1254 * bidi.c (bidi_resolve_weak): Use prev.type_after_w1, instead of
1255 prev.orig_type, for resolving type of NSM. (Bug#5858)
1256
1257 2010-04-08 Jan Djärv <jan.h.d@swipnet.se>
1258
1259 * xsettings.c (current_font, SYSTEM_FONT, XSETTINGS_FONT_NAME): New.
1260 (parse_xft_settings): Also check for XSETTINGS_FONT_NAME and save that
1261 in current_font.
1262 (init_gconf): Read value of SYSTEM_FONT and save it in current_font.
1263 (Ffont_get_system_normal_font, xsettings_get_system_normal_font):
1264 New functions.
1265 (syms_of_xsettings): Initialize current_font.
1266 defsubr Sfont_get_system_normal_font.
1267
1268 * xsettings.h (Ffont_get_system_normal_font,
1269 xsettings_get_system_normal_font): Declare.
1270
1271 * xfns.c (extern xlwmenu_default_font): Remove.
1272 (Fx_create_frame): Remove setting of xlwmenu_default_font, moved
1273 to xlwmenu.c.
1274
1275 * menu.c (digest_single_submenu): If USE_LUCID and HAVE_XFT, encode
1276 menu items in UTF-8.
1277
1278 * xmenu.c: include xsettings.h and xlwmenu.h if USE_LUCID.
1279 (apply_systemfont_to_menu): New function.
1280 (set_frame_menubar, create_and_show_popup_menu): Call
1281 apply_systemfont_to_menu.
1282
1283 2010-04-07 Jan Djärv <jan.h.d@swipnet.se>
1284
1285 * frame.h (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Don't use
1286 FRAME_LINE_TO_PIXEL_Y.
1287
1288 * xterm.c (x_set_window_size_1): Don't add border_width/height to
1289 pixelwidth/height.
1290
1291 2010-04-07 Dan Nicolaescu <dann@ics.uci.edu>
1292
1293 Simplify code for HP machines.
1294 * m/hp800.h (LOAD_AVE_TYPE, LOAD_AVE_CVT, NO_REMAP): Do not define
1295 for GNU_LINUX, not needed.
1296 (UNEXEC, NEED_BSDTTY): Move definitions...
1297 * s/hpux10-20.h (UNEXEC, NEED_BSDTTY): ... here.
1298
1299 * m/iris4d.h (UNEXEC): Move definition ...
1300 * s/irix6-5.h (UNEXEC): ... here.
1301
1302 2010-04-04 Jan Djärv <jan.h.d@swipnet.se>
1303
1304 * xfns.c (set_machine_and_pid_properties): New function.
1305 (Fx_create_frame): Call set_machine_and_pid_properties.
1306
1307 2010-04-03 Eli Zaretskii <eliz@gnu.org>
1308
1309 * bidi.c (bidi_resolve_explicit, bidi_level_of_next_char): Check
1310 bidi_it->bytepos against ZV_BYTE instead of bidi_it->ch against
1311 BIDI_EOB. Fixes infloop with vertical cursor motion at ZV.
1312
1313 * w32fns.c (x_create_tip_frame): Copy `parms' before we modify it
1314 in this function. (Bug#5703)
1315
1316 2010-04-03 Chong Yidong <cyd@stupidchicken.com>
1317
1318 * nsterm.h: Fix last change.
1319
1320 2010-04-03 Dan Nicolaescu <dann@ics.uci.edu>
1321
1322 * m/intel386.h (NO_REMAP): Move definition ...
1323 * s/msdos.h (NO_REMAP): ... here.
1324
1325 * m/vax.h (CRT0_DUMMIES): Remove, unused.
1326
1327 * ecrt0.c: Remove MSDOS, m68k and __sparc__ conditionals, file not
1328 used on those platforms.
1329
1330 2010-04-02 Dan Nicolaescu <dann@ics.uci.edu>
1331
1332 Remove extern errno declarations.
1333 * xterm.c:
1334 * xrdb.c:
1335 * w32term.c:
1336 * unexec.c:
1337 * unexaix.c:
1338 * sysdep.c:
1339 * process.c:
1340 * lread.c:
1341 * keyboard.c:
1342 * floatfns.c:
1343 * filelock.c:
1344 * fileio.c:
1345 * emacs.c (main):
1346 * ecrt0.c:
1347 * dispnew.c:
1348 * callproc.c:
1349 * buffer.c: Remove errno extern declarations.
1350 * s/netbsd.h (NEED_ERRNO): Remove.
1351
1352 2010-04-01 Dan Nicolaescu <dann@ics.uci.edu>
1353
1354 Remove all uses of LIBX11_SYSTEM.
1355 * Makefile.in (LIBX11_SYSTEM): Remove.
1356 * s/msdos.h (LIBX11_SYSTEM): Do not define, define LIBS_SYSTEM
1357 instead.
1358
1359 2010-04-01 Eli Zaretskii <eliz@gnu.org>
1360
1361 Remove support for DJGPP v1.x (bug#5813).
1362
1363 * w16select.c (__dpmi_int): Remove DJGPP v1.x compatibility.
1364 * s/msdos.h:
1365 * unexec.c (make_hdr, copy_text_and_data):
1366 * sysdep.c (wait_for_termination, sys_subshell):
1367 * msdos.c (dos_set_window_size, msdos_set_cursor_shape)
1368 (IT_set_terminal_modes, __write, _rename, gethostname)
1369 (gettimeofday, alarm, fork, kill, dos_ttraw, dos_ttcooked)
1370 (run_msdos_command, abort): Remove DJGPP v1.x code and tests of
1371 the value of __DJGPP__.
1372 (nice, pause, sigsetmask, sigblock): Remove DJGPP v1.x
1373 compatibility code.
1374 * lread.c:
1375 * gmalloc.c (memalign):
1376 * fileio.c (Fcopy_file, check_executable, Ffile_modes):
1377 * emacs.c (main):
1378 * dosfns.c (init_dosfns):
1379 * dired.c (file_name_completion_stat): Remove tests of __DJGPP__.
1380
1381 2010-04-01 Eli Zaretskii <eliz@gnu.org>
1382
1383 * xdisp.c (set_cursor_from_row): Fix cursor positioning when the
1384 string with `cursor' property comes from an `after-string'
1385 overlay. (Bug#5816)
1386
1387 2010-04-01 Glenn Morris <rgm@gnu.org>
1388
1389 * Makefile.in (LIBTIFF, LIBJPEG, LIBPNG, LIBGIF, LIBXPM, XFT_LIBS):
1390 Define as Makefile variables.
1391 (LIBX): Use above variables rather than directly using autoconf.
1392
1393 2010-03-31 Dan Nicolaescu <dann@ics.uci.edu>
1394
1395 Clean up BSD_SYSTEM use.
1396 * xterm.c:
1397 * process.c:
1398 * emacs.c: Use HAVE_SYS_IOCTL_H instead of BSD_SYSTEM as a guard
1399 for including <sys/ioctl.h>.
1400 * sysdep.c (wait_without_blocking): Remove BSD_SYSTEM case, this
1401 code is only used for MSDOS.
1402
1403 2010-03-31 Juri Linkov <juri@jurta.org>
1404
1405 * image.c: Add `Qextension_data'.
1406 (syms_of_image): Initialize and staticpro `Qextension_data'.
1407 (Fimage_metadata): Rename from `Fimage_extension_data'.
1408 (gif_load): Put GIF extension data to the property
1409 `Qextension_data'.
1410
1411 2010-04-05 Chong Yidong <cyd@stupidchicken.com>
1412
1413 * xdisp.c (prepare_menu_bars): Don't call ns_set_doc_edited for
1414 terminal frames (Bug#5837).
1415
1416 2010-03-31 Chong Yidong <cyd@stupidchicken.com>
1417
1418 * nsfns.m (ns_set_doc_edited): Remove unused arg OLDVAL.
1419 * nsterm.h: Fix prototype.
1420
1421 2010-03-31 Eli Zaretskii <eliz@gnu.org>
1422
1423 * xdisp.c (highlight_trailing_whitespace): Support highlight of
1424 trailing whitespace in right-to-left rows.
1425
1426 2010-03-31 Stefan Monnier <monnier@iro.umontreal.ca>
1427
1428 Get rid of the direct_output optimizations.
1429 * keyboard.c (nonundocount): Remove extern declaration.
1430 (command_loop_1): Remove brittle optimisation for cheap and
1431 common operations.
1432 * xdisp.c (redisplay_internal): Don't bother checking
1433 redisplay_performed_directly_p any more.
1434 * sysdep.c (init_sys_modes): Don't call direct_output_forward_char
1435 any more.
1436 * dispnew.c (redisplay_performed_directly_p)
1437 (direct_output_for_insert, direct_output_forward_char):
1438 * dispextern.h (redisplay_performed_directly_p)
1439 (direct_output_for_insert, direct_output_forward_char): Remove.
1440 * cmds.c (nonundocount): Make it static.
1441
1442 2010-03-31 Bernhard Herzog <bh@intevation.de> (tiny change)
1443
1444 * menu.c (Fx_popup_menu): Use last_event_timestamp (Bug#4930).
1445
1446 2010-03-31 Jan Djärv <jan.h.d@swipnet.se>
1447
1448 * xdisp.c (note_mouse_highlight): Don't do highlight if pointer is
1449 invisible (Bug#5766).
1450
1451 2010-03-31 Adrian Robert <adrian.b.robert@gmail.com>
1452
1453 * xdisp.c (x_consider_frame_title, update_window_cursor):
1454 Remove HAVE_NS conditionals.
1455 (prepare_menu_bars) [HAVE_NS]: Call ns_set_doc_edited.
1456
1457 * nsfns.m (x_implicitly_set_name): If frame-title-format is t, use
1458 filename for the title.
1459 (ns_set_doc_edited): Do nothing if the selected window is a
1460 minibuffer window.
1461
1462 * nsterm.h: Add prototypes for ns_set_name_as_filename and
1463 ns_set_doc_edited.
1464
1465 * nsterm.m: Remove unneeded prototype.
1466
1467 2010-03-31 Glenn Morris <rgm@gnu.org>
1468
1469 * Makefile.in (SOME_MACHINE_OBJECTS): Ensure dbus stuff is always
1470 in the DOC file. (Bug#5336)
1471
1472 2010-03-31 Chong Yidong <cyd@stupidchicken.com>
1473
1474 * xdisp.c (pos_visible_p): Revert 2008-01-25 change (Bug#5730).
1475
1476 2010-03-31 Stefan Monnier <monnier@iro.umontreal.ca>
1477
1478 * window.c (keys_of_window): Remove redundant/overridden bindings.
1479
1480 2010-03-30 Eli Zaretskii <eliz@gnu.org>
1481
1482 * xdisp.c (BUFFER_POS_REACHED_P, move_it_in_display_line_to):
1483 Restore original behavior when the iterator is not bidi_p.
1484
1485 2010-03-30 Dan Nicolaescu <dann@ics.uci.edu>
1486
1487 * xdisp.c (syms_of_xdisp): Use intern_c_string instead of intern.
1488
1489 2010-03-30 Eli Zaretskii <eliz@gnu.org>
1490
1491 * bidi.c (bidi_cache_iterator_state): Invalidate the cache if we
1492 are outside the range of cached character positions.
1493
1494 2010-03-30 Juanma Barranquero <lekktu@gmail.com>
1495
1496 * makefile.w32-in ($(BLD)/bidi.$(O)): Add dependency on w32gui.h.
1497
1498 2010-03-30 Eli Zaretskii <eliz@gnu.org>
1499
1500 Initial support for bidirectional editing.
1501
1502 * Makefile.in (obj): Include bidi.o.
1503 (bidi.o): New target.
1504
1505 * makefile.w32-in (OBJ1): Add $(BLD)/bidi.$(O).
1506 ($(BLD)/bidi.$(O)): New target.
1507
1508 * bidi.c: New file.
1509
1510 * buffer.h (struct buffer): New members bidi_display_reordering
1511 and bidi_paragraph_direction.
1512
1513 * buffer.c (init_buffer_once): Initialize bidi_display_reordering
1514 and bidi_paragraph_direction.
1515 (syms_of_buffer): Declare Lisp variables bidi-display-reordering
1516 and bidi-paragraph-direction.
1517 (Fbuffer_swap_text): Swap the values of
1518 bidi_display_reordering and bidi_paragraph_direction.
1519
1520 * dispextern.h (BIDI_MAXLEVEL, BIDI_AT_BASE_LEVEL): New macros.
1521 (bidi_type_t, bidi_dir_t): New types.
1522 (bidi_saved_info, bidi_stack, bidi_it): New structures.
1523 (struct it): New members bidi_p, bidi_it, paragraph_embedding,
1524 prev_stop, base_level_stop, and eol_pos.
1525 (bidi_init_it, bidi_get_next_char_visually): New prototypes.
1526 (IT_STACK_SIZE): Enlarge to 5.
1527 (struct glyph_row): New member reversed_p.
1528 <string_buffer_position>: Update prototype.
1529 (PRODUCE_GLYPHS): Set the reversed_p flag in the iterator's
1530 glyph_row if bidi_it.paragraph_dir == R2L.
1531 (struct glyph): New members resolved_level and bidi_type.
1532
1533 * dispnew.c (direct_output_forward_char): Give up if we need bidi
1534 processing or buffer's direction is right-to-left.
1535 (prepare_desired_row): Preserve the reversed_p flag.
1536 (row_equal_p): Compare the reversed_p attributes as well.
1537
1538 * xdisp.c (init_iterator): Initialize it->bidi_p. Call
1539 bidi_init_it and set it->paragraph_embedding from the current
1540 buffer's value of bidi_paragraph_direction.
1541 (reseat_1): Initialize bidi_it.first_elt.
1542 (set_iterator_to_next, next_element_from_buffer): Use the value of
1543 paragraph_embedding to determine the paragraph direction.
1544 (set_iterator_to_next): Under bidi reordering, call
1545 bidi_get_next_char_visually. Call bidi_paragraph_init if the
1546 new_paragraph flag is set in the bidi iterator.
1547 (next_element_from_buffer): If bidi_it.first_elt is set,
1548 initialize paragraph direction and find the first character to
1549 display in the visual order. If reseated to a middle of a line,
1550 prime the bidi iterator starting at the line's beginning. Handle
1551 the situation where we overstepped stop_charpos due to
1552 non-linearity of the bidi iteration. Likewise for when we back up
1553 beyond the previous stop_charpos. When moving across stop_charpos,
1554 record it in prev_stop.
1555 (display_line): Set row->end and it->start for the next row to the
1556 next character in logical order. Always extend reversed_p rows to
1557 the end of line, even if they end at ZV. Copy the reversed_p flag
1558 to the next glyph row. Keep calling set_cursor_from_row for
1559 bidi-reordered rows even if we already have a possible candidate
1560 for cursor position. Set row_end after all the row's glyphs have
1561 been produced, by looping over the glyphs. Record the position
1562 after EOL in it->eol_pos, and use it to set end_pos of the last
1563 row produced for a continued line.
1564 <Qright_to_left, Qleft_to_right>: New variables.
1565 (syms_of_xdisp): Initialize and staticpro them.
1566 (string_buffer_position_lim): New function.
1567 (string_buffer_position): Most of code moved to
1568 string_buffer_position_lim. Last argument and return value are
1569 now EMACS_INT; all callers changed.
1570 (set_cursor_from_row): Rewritten to support bidirectional text and
1571 reversed glyph rows.
1572 (text_outside_line_unchanged_p, try_window_id): Disable
1573 optimizations if we are reordering bidirectional text and the
1574 paragraph direction can be affected by the change.
1575 (append_glyph, append_composite_glyph)
1576 (produce_image_glyph, append_stretch_glyph): Set the
1577 resolved_level and bidi_type members of each glyph.
1578 (append_glyph): If the glyph row is reversed, prepend the glyph
1579 rather than appending it.
1580 (handle_stop_backwards): New function.
1581 (reseat_1, pop_it, push_it): Set prev_stop and base_level_stop.
1582 (reseat): call handle_stop_backwards to recompute prev_stop and
1583 base_level_stop for the new position.
1584 (handle_invisible_prop): Under bidi iteration, skip invisible text
1585 using bidi_get_next_char_visually. If we are `reseat'ed, init the
1586 paragraph direction. Update IT->prev_stop after skipping
1587 invisible text.
1588 (move_it_in_display_line_to): New variables prev_method
1589 and prev_pos. Compare for strict equality in
1590 BUFFER_POS_REACHED_P.
1591 (try_cursor_movement): Examine all the candidate rows that occlude
1592 point, to return the best match. If rows are bidi-reordered
1593 and point moved backwards, back up to the row that is not a
1594 continuation line, and start looking for a suitable row from
1595 there.
1596
1597 * term.c (append_glyph): Reverse glyphs by pre-pending them,
1598 rather than appending, if the glyph_row's reversed_p flag is set.
1599 Set the resolved_level and bidi_type members of each glyph.
1600
1601 * .gdbinit (pbiditype): New command.
1602 (pgx): Use it to display bidi level and type of the glyph.
1603 (pitx): Display some bidi information about the iterator.
1604 (prowlims, pmtxrows): New commands.
1605
1606 2010-03-30 Dan Nicolaescu <dann@ics.uci.edu>
1607
1608 Remove all uses of C_DEBUG_SWITCH and LIBS_DEBUG.
1609 * s/usg5-4.h (LIBS_DEBUG):
1610 * s/irix6-5.h (C_DEBUG_SWITCH):
1611 * s/gnu-linux.h (LIBS_DEBUG):
1612 * s/darwin.h (LIBS_DEBUG):
1613 * s/bsd-common.h (LIBS_DEBUG):
1614 * s/aix4-2.h (LIBS_DEBUG, C_DEBUG_SWITCH):
1615 * m/iris4d.h (LIBS_DEBUG):
1616 * m/hp800.h (LIBS_DEBUG): Remove definitions.
1617
1618 * Makefile.in (LIBES): Remove reference to LIBS_DEBUG.
1619 (LIBS_DEBUG): Remove definition.
1620
1621 2010-03-27 Chong Yidong <cyd@stupidchicken.com>
1622
1623 * process.c (Fmake_network_process): Don't apply Bug#5173 fix for
1624 Windows.
1625
1626 2010-03-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1627
1628 * process.c (Fmake_network_process): Don't call turn_on_atimers around
1629 `connect' (Bug#5723).
1630
1631 2010-03-25 Helmut Eller <eller.helmut@gmail.com>
1632
1633 * process.c (Fmake_network_process): Call `select' for interrupted
1634 `connect' rather than creating new socket (Bug#5173).
1635
1636 2010-03-24 Jan Djärv <jan.h.d@swipnet.se>
1637
1638 * frame.c (x_get_arg): Handle RES_TYPE_BOOLEAN_NUMBER (bug #5736).
1639
1640 * xfns.c (Fx_create_frame): Make menuBar a RES_TYPE_BOOLEAN_NUMBER.
1641
1642 * dispextern.h (resource_types): RES_TYPE_BOOLEAN_NUMBER is new.
1643
1644 2010-03-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1645
1646 * xfns.c (Fx_create_frame) [USE_LUCID]: Add BLOCK_INPUT around
1647 XLoadQueryFont.
1648
1649 2010-03-24 Kenichi Handa <handa@m17n.org>
1650
1651 * coding.c (decode_coding_ccl): Fix previous change for the
1652 multibyte case.
1653 (encode_coding_ccl): Don't setup ccl program here. Fix for the
1654 case that the output buffer is fullfilled.
1655 (encode_coding): Setup ccl program here.
1656
1657 2010-03-24 Andreas Politz <politza@fh-trier.de> (tiny change)
1658
1659 * editfns.c (Fformat): Account for string precision when computing
1660 field width (Bug#5710).
1661
1662 2010-03-23 Dan Nicolaescu <dann@ics.uci.edu>
1663
1664 * s/gnu-linux.h (LIBS_SYSTEM): Remove, same as default.
1665
1666 Simplify LIBS_MACHINE definitions.
1667 * m/hp800.h (LIBS_MACHINE): Remove, same as default.
1668 * m/iris4d.h (LIBS_MACHINE): Likewise.
1669 * m/ibmrs6000.h (LIBS_MACHINE): Rename to LIBS_SYSTEM and move ...
1670 * s/aix4-2.h (LIBS_SYSTEM): ... here.
1671 * s/netbsd.h: Remove commented out code.
1672
1673 2010-03-22 Dan Nicolaescu <dann@ics.uci.edu>
1674
1675 Remove dead code dealing with POSIX_SIGNALS.
1676 * atimer.c (set_alarm): Remove dead code, all USG systems define
1677 POSIX_SIGNALS.
1678 * data.c (arith_error): Likewise.
1679 * keyboard.c (input_available_signal, handle_user_signal)
1680 (interrupt_signal): Likewise.
1681 * process.c (sigchld_handler): Likewise.
1682 (create_process): Remove if 0 code. Remove HPUX conditional when
1683 !defined (POSIX_SIGNALS), it cannot be true.
1684 * syssignal.h: Remove USG5_4 and USG conditionals when
1685 !POSIX_SIGNALS, they cannot be true.
1686
1687 * keyboard.c (Fset_input_interrupt_mode): Remove code depending on
1688 NO_SOCK_SIGIO, not used anymore.
1689
1690 2010-03-21 Dan Nicolaescu <dann@ics.uci.edu>
1691
1692 * m/vax.h (BSD_SYSTEM, BSD4_2): Remove conditionals, we only
1693 support vax on BSDs.
1694
1695 * m/ibmrs6000.h (ORDINARY_LINK): Move definition ...
1696 * s/aix4-2.h (ORDINARY_LINK): ... here.
1697
1698 2010-03-21 Andreas Schwab <schwab@linux-m68k.org>
1699
1700 * Makefile.in (abs_builddir): Define.
1701 (bootstrap_exe): Use it.
1702 (VPATH): Use $(srcdir) instead of @srcdir@.
1703
1704 2010-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
1705
1706 * Makefile.in (bootstrap_exe): Use an absolute name.
1707
1708 2010-03-20 Dan Nicolaescu <dann@ics.uci.edu>
1709
1710 Remove support for old GNU/Linux using libc version 5.
1711 * m/alpha.h (LINUX_SBRK_BUG): Remove definition.
1712 * emacs.c (main): Remove code depending on LINUX_SBRK_BUG.
1713
1714 Consolidate redundant definitions in s/bsd-common.h.
1715 * s/bsd-common.h (BSD4_2, TABDLY, TAB3, HAVE_TERMIOS, NO_TERMIO)
1716 (LIBS_DEBUG, SYSV_SYSTEM_DIR, UNEXEC, NARROWPROTO, BSD_PGRPS)
1717 (LDAV_SYMBOL, KERNEL_FILE): Define (or undefine) here instead of
1718 doing it in all files that include this one.
1719 * s/gnu.h (BSD4_2, TABDLY, TAB3, HAVE_TERMIOS, NO_TERMIO)
1720 (LIBS_DEBUG, SYSV_SYSTEM_DIR, UNEXEC, NARROWPROTO, BSD_PGRPS)
1721 (LDAV_SYMBOL, KERNEL_FILE): Remove.
1722 * s/freebsd.h (BSD4_2, TABDLY, TAB3, HAVE_TERMIOS, NO_TERMIO)
1723 (LIBS_DEBUG, SYSV_SYSTEM_DIR, UNEXEC, NARROWPROTO, BSD_PGRPS)
1724 (LDAV_SYMBOL, KERNEL_FILE): Remove.
1725 * s/netbsd.h (BSD4_2, TABDLY, TAB3, HAVE_TERMIOS, NO_TERMIO)
1726 (LIBS_DEBUG, SYSV_SYSTEM_DIR, UNEXEC, NARROWPROTO, BSD_PGRPS)
1727 (LDAV_SYMBOL, KERNEL_FILE): Remove.
1728
1729 Consolidate redundant definitions.
1730 * s/usg5-4.h (sigsetmask, PTY_TTY_NAME_SPRINTF): Do not define,
1731 it's undefined in all files that include this one.
1732 (POSIX_SIGNALS): Define here instead of doing it in all files that
1733 include this one.
1734 * s/irix6-5.h (sigsetmask, PTY_TTY_NAME_SPRINTF): Do not undef.
1735 (POSIX_SIGNALS): Do not define.
1736 * s/sol2-6.h (sigsetmask, PTY_TTY_NAME_SPRINTF): Do not undef.
1737 (POSIX_SIGNALS): Do not define.
1738 * s/unixware.h (sigsetmask, PTY_TTY_NAME_SPRINTF): Do not undef.
1739 (POSIX_SIGNALS): Do not define.
1740
1741 Remove support for old UNIX System V systems.
1742 * s/unixware.h: Add the contents of s/usg-5-4-2.h.
1743 * s/usg-5-4-2.h: Remove.
1744
1745 Remove support for Solaris on PPC and for old versions.
1746 * s/sol2-6.h: Add the contents of s/sol-2.3.h, s/sol-2.4.h, s/sol-2.5.h.
1747 (LD_SWITCH_SYSTEM, USE_MMAP_FOR_BUFFERS): Remove #defines/#undef
1748 that cancel each other.
1749 * s/sol2-3.h:
1750 * s/sol2-4.h:
1751 * s/sol2-5.h: Remove.
1752 * m/ibmrs6000.h: Remove code for USG5_4, this file is only used on AIX.
1753 (NO_REMAP): Remove, unused.
1754 (UNEXEC): Move definition ...
1755 * s/aix4-2.h (UNEXEC): ... here.
1756
1757 * s/openbsd.h: Remove support for non-ELF and for systems that do
1758 not support shared libraries.
1759 * s/netbsd.h:
1760 * s/freebsd.h: Likewise.
1761
1762 2010-03-20 Dan Nicolaescu <dann@ics.uci.edu>
1763
1764 Remove non-working support for lynxos 3.0.
1765 * s/lynxos.h: Remove file.
1766
1767 * unexec.c (unexec, adjust_lnnoptrs): Do not depend on
1768 COFF_BSD_SYMBOLS, nothing defines it anymore.
1769
1770 2010-03-20 Dan Nicolaescu <dann@ics.uci.edu>
1771
1772 Remove obsolete uses of HAVE_SHM.
1773 * emacs.c (standard_args):
1774 (Fdump_emacs):
1775 (syms_of_emacs): Remove code depending on HAVE_SHM.
1776
1777 * alloc.c: Remove HAVE_SHM dependent definition.
1778
1779 * Makefile.in (RUN_TEMACS): Do not depend on HAVE_SHM.
1780
1781 2010-03-18 Glenn Morris <rgm@gnu.org>
1782
1783 * emacs.c (USAGE4): Hard-code bug address.
1784 (REPORT_EMACS_BUG_ADDRESS, REPORT_EMACS_BUG_PRETEST_ADDRESS): Remove.
1785 (bug_reporting_address): Remove.
1786 (main): Don't call bug_reporting_address.
1787
1788 * Makefile.in (XFT_LIBS, LIBXPM, LIBJPEG, LIBPNG, LIBTIFF, LIBGIF)
1789 (LIBGPM, LIBRESOLV): Set using autoconf rather than cpp.
1790
1791 2010-03-15 Chong Yidong <cyd@stupidchicken.com>
1792
1793 * xfns.c (Fx_create_frame):
1794 * frame.c (Vdefault_frame_scroll_bars): Put non-GTK X scroll-bars
1795 on left.
1796
1797 2010-03-13 Andreas Politz <politza@fh-trier.de> (tiny change)
1798
1799 * editfns.c (Fformat): Account for string precision when computing
1800 field width (Bug#5710).
1801
1802 2010-03-12 Chong Yidong <cyd@stupidchicken.com>
1803
1804 * xfns.c (Fx_create_frame): Set default to Qright.
1805
1806 * frame.c (Vdefault_frame_scroll_bars): Set default to Qright for
1807 all window systems.
1808
1809 2010-03-12 Eli Zaretskii <eliz@gnu.org>
1810
1811 These changes remove termcap.c from the build on Posix platforms.
1812 * Makefile.in (termcapobj): Move termcap.o from here...
1813 (MSDOS_OBJ): ...to here.
1814 (termcapobj) [!LIBS_TERMCAP]: Remove specialized value, as it is
1815 now identical to when LIBS_TERMCAP is defined.
1816
1817 * term.c: Remove (ifdef'ed away) inclusion of termcap.h.
1818
1819 * cm.c: Remove (ifdef'ed away) inclusion of termcap.h.
1820
1821 * config.in: Regenerated. (See top-level ChangeLog.)
1822
1823 2010-03-10 Chong Yidong <cyd@stupidchicken.com>
1824
1825 * Branch for 23.2.
1826
1827 2010-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
1828
1829 Cleanup setup of gl_state in various parts of the code.
1830 * syntax.h (SETUP_BUFFER_SYNTAX_TABLE): New macro.
1831 (SETUP_SYNTAX_TABLE, SETUP_SYNTAX_TABLE_FOR_OBJECT):
1832 * syntax.c (find_defun_start, Fchar_syntax, Fmatching_paren)
1833 (skip_chars):
1834 * regex.c (regex_compile): Use it.
1835 (re_compile_pattern): Don't set gl_state.current_syntax_table since
1836 it's now set in regex_compile when/if we need it.
1837
1838 2010-03-05 Stefan Monnier <monnier@iro.umontreal.ca>
1839
1840 Make it possible to C-g in a tight bytecode loop again (bug#5680).
1841 * lisp.h (ELSE_PENDING_SIGNALS): New macro.
1842 (QUIT): Use it to consolidate code and remove redundancy.
1843 * bytecode.c (BYTE_CODE_QUIT): Use it as well.
1844
1845 * regex.c (regex_compile): Setup gl_state as well.
1846
1847 * syntax.c (skip_chars): Setup gl_state (bug#3823).
1848 (in_classes): Use CONSP before XCAR/XCDR.
1849
1850 2010-03-03 Chong Yidong <cyd@stupidchicken.com>
1851
1852 * keymap.c (Fwhere_is_internal): Use Fequal to compare
1853 definitions, so that keyboard macros are correctly handled
1854 (Bug#5481).
1855
1856 2010-03-02 Eli Zaretskii <eliz@gnu.org>
1857
1858 * coding.c (decode_coding_emacs_mule): Fixup pointers to buffer
1859 text that could be relocated inside the call to emacs_mule_char.
1860 (emacs_mule_char): Use CODING_DECODE_CHAR instead of DECODE_CHAR.
1861 (CODING_DECODE_CHAR): Add a comment describing its purpose.
1862
1863 2010-03-02 Kenichi Handa <handa@m17n.org>
1864
1865 * character.c (parse_str_as_multibyte): Fix handling of the
1866 multibyte form of raw-bytes.
1867 (str_as_multibyte): Likewise.
1868
1869 * buffer.c (Fset_buffer_multibyte): Fix handling of the multibyte
1870 form of raw-bytes.
1871
1872 2010-02-28 Chong Yidong <cyd@stupidchicken.com>
1873
1874 * charset.c (load_charset_map_from_file)
1875 (load_charset_map_from_vector): Zero out allocated
1876 charset_map_entries before using them.
1877
1878 2010-02-27 Andreas Schwab <schwab@linux-m68k.org>
1879
1880 * w32uniscribe.c (uniscribe_check_otf): Fix length check.
1881
1882 2010-02-27 Chong Yidong <cyd@stupidchicken.com>
1883
1884 * font.c (font_parse_fcname): Recognize "Book", "Condensed",
1885 "Medium", and "Semi-Condensed" keywords in GTK names (Bug#5646).
1886
1887 2010-02-26 Kenichi Handa <handa@m17n.org>
1888
1889 * ftfont.c (ftfont_get_open_type_spec): Fix parsing of otf_spec.
1890
1891 * xdisp.c (reseat_to_string): Fix previous change.
1892
1893 2010-02-26 David Reitter <david.reitter@gmail.com>
1894
1895 * nsfont.m (nsfont_draw): ns_antialias_text should be a
1896 Lisp_Object (Bug#4736).
1897
1898 2010-02-25 Kenichi Handa <handa@m17n.org>
1899
1900 * xdisp.c (reseat_to_string): Fix previous change (bug#5609).
1901
1902 2010-02-24 Jan Djärv <jan.h.d@swipnet.se>
1903
1904 * xterm.c (XTflash): Move declarations before statements.
1905
1906 * gtkutil.c (xg_get_gdk_display): Remove (unused).
1907 (xg_get_pixbuf_from_pix_and_mask, xg_create_frame_widgets)
1908 (xg_toggle_notify_cb, xg_set_toolkit_scroll_bar_thumb)
1909 (xg_create_tool_bar): Remove unused variables.
1910 (x_wm_set_size_hint): Move declarations before statements.
1911 (xg_create_frame_widgets): Remove variable grav,
1912
1913 2010-02-21 Chong Yidong <cyd@stupidchicken.com>
1914
1915 * m/arm.h: Define the LIB_GCC flag to be -lgcc_s (Bug#5518).
1916
1917 2010-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
1918
1919 * term.c (fatal): Add a final \n if needed (bug#5596).
1920
1921 2010-02-18 Chong Yidong <cyd@stupidchicken.com>
1922
1923 * nsterm.m (ns_ring_bell): Revert last change (Bug#5569).
1924
1925 2010-02-18 Glenn Morris <rgm@gnu.org>
1926
1927 * callint.c (Finteractive): Doc fix.
1928
1929 2010-02-18 Kazuhiro Ito <kzhr@d1.dion.ne.jp> (tiny change)
1930
1931 * coding.c (record_conversion_result):
1932 Handle CODING_RESULT_INSUFFICIENT_DST.
1933 (decode_coding_object): Record CODING_RESULT_INSUFFICIENT_MEM on
1934 memory allocation error.
1935
1936 2010-02-17 Kenichi Handa <handa@m17n.org>
1937
1938 * coding.c (decode_coding_ccl): Don't setup ccl program here.
1939 Fix for the case that the output buffer is fullfilled.
1940 (decode_coding): Setup ccl program here. Keep looping when the
1941 decoder stopped because the output buffer is
1942 fullfilled (bug#5534).
1943
1944 * ccl.c (ccl_driver): Never reset ic to CCL_HEADER_MAIN.
1945
1946 2010-02-13 Jan Djärv <jan.h.d@swipnet.se>
1947
1948 * xterm.c (x_clear_frame_area): Call gtk_widget_queue_draw if USE_GTK,
1949 bug #5571.
1950 (XTflash): Use Gdk-routines if USE_GTK so scroll bars don't get
1951 overdrawn.
1952
1953 2010-02-10 Jan Djärv <jan.h.d@swipnet.se>
1954
1955 * xsmfns.c (x_session_initialize): Move initialization of ice_fd and
1956 doing_interact here.
1957 (ice_connection_closed): New function.
1958 (x_session_check_input, smc_die_CB, ice_io_error_handler)
1959 (ice_conn_watch_CB, x_session_close): Call ice_connection_closed.
1960 (x_session_check_input): Call IceCloseConnection if IceProcessMessages
1961 returns I/O error.
1962 (ice_conn_watch_CB): Call add_keyboard_wait_descriptor on ice_fd,
1963 bug #5512.
1964
1965 2010-02-08 Francis Devereux <francis@devrx.org> (tiny change)
1966
1967 * nsfont.m (nsfont_open): The system's value for the font descent
1968 is negative, so round it down to avoid clipping.
1969
1970 2010-02-06 Chong Yidong <cyd@stupidchicken.com>
1971
1972 * charset.c (load_charset_map_from_file)
1973 (load_charset_map_from_vector): Fix last change to use SAFE_ALLOCA
1974 instead of xmalloc (Bug#5526). Suggested by Vivek Dasmohapatra.
1975
1976 2010-02-05 Chong Yidong <cyd@stupidchicken.com>
1977
1978 * charset.c (load_charset_map_from_file): Allocate large
1979 charset_map_entries structure on the heap rather than the stack.
1980 (Bug#5526).
1981
1982 2010-01-31 Kenichi Handa <handa@m17n.org>
1983
1984 * font.c (font_parse_xlfd): If FONT is a font-entity and pixel
1985 size in NAME is invalid, return -1 (Bug#5396).
1986
1987 2010-01-31 Chong Yidong <cyd@stupidchicken.com>
1988
1989 * nsterm.m (ns_defined_color): Block input. Suggested by Mike
1990 <deactivated@gmail.com> (Bug#3605).
1991
1992 2010-01-31 David De La Harpe Golden <david@harpegolden.net>
1993
1994 * fileio.c (Frename_file): Correctly rename symlinks to
1995 directories (Bug#5496).
1996
1997 2010-01-31 Filipe Cabecinhas <filcab@gmail.com> (tiny change)
1998
1999 * nsterm.m (ns_ring_bell): Handle visible bell like X.
2000
2001 2010-01-30 Andreas Schwab <schwab@linux-m68k.org>
2002
2003 * character.h (CHAR_PRINTABLE_P): Reparenthesize to avoid warning.
2004
2005 2010-01-29 Chong Yidong <cyd@stupidchicken.com>
2006
2007 * frame.c (DEFAULT_ROWS): Change default to 35.
2008
2009 * xfns.c (x_default_font_parameter): Change default XFT font to
2010 monospace-10 (Bug#3643).
2011
2012 2010-01-29 Eli Zaretskii <eliz@gnu.org>
2013
2014 * w32inevt.c (key_event): Remove unnecessary comparison of
2015 event->uChar.AsciiChar with 128.
2016
2017 2010-01-28 Chong Yidong <cyd@stupidchicken.com>
2018
2019 * fileio.c (Frename_file): Fix last change (Bug#5487).
2020
2021 * m/mips.h: Remove DATA_START. Suggested by Dan Nicolaescu.
2022
2023 * m/alpha.h: Don't define DATA_START on NetBSD (Bug#4629).
2024
2025 2010-01-28 Jan Djärv <jan.h.d@swipnet.se>
2026
2027 * xfns.c (Fx_create_frame): Remove window size matching code from
2028 2010-01-15.
2029 (x_get_current_desktop, x_get_desktop_workarea): Remove
2030
2031 2010-01-27 Jason Rumney <jasonr@gnu.org>
2032
2033 * w32inevt.c (w32_kbd_patch_key): Save the unicode character.
2034 (key_event): Use unicode for characters 128 and higher (Bug#4567).
2035
2036 2010-01-27 Kenichi Handa <handa@m17n.org>
2037
2038 * regex.c (analyse_first): Fix setting of fastmap for unibyte
2039 pattern string (Bug#4209).
2040
2041 2010-01-27 David De La Harpe Golden <david@harpegolden.net>
2042
2043 * fileio.c (Frename_file): Call copy-directory and
2044 delete-directory for directories, in order to handle cross-device
2045 renaming (Bug#3353).
2046
2047 2010-01-25 Jan Djärv <jan.h.d@swipnet.se>
2048
2049 * xfns.c (Fx_create_frame): If frame height is too big, try
2050 sizes 24 and 10. Bug #3643.
2051
2052 2010-01-24 Stefan Monnier <monnier@iro.umontreal.ca>
2053
2054 Try and fix bug#788, hopefully for real this time.
2055 * keymap.c (shadow_lookup): Add `remap' arg.
2056 (describe_map, describe_vector): Update calls to shadow_lookup.
2057 (Fwhere_is_internal): Fix up handling of `remapped_sequences' and
2058 `remapped' so this flag is applicable to `sequence'. Be careful to
2059 perform remapping during shadow_lookup check of remapped_sequences.
2060
2061 2010-01-24 Eric Bélanger <snowmaniscool@gmail.com> (tiny change)
2062
2063 * image.c (png_load): Use png_sig_cmp instead of the obsolete
2064 png_check_sig, which has been removed in libpng 1.4.
2065
2066 2010-01-23 Giorgos Keramidas <keramida@ceid.upatras.gr> (tiny change)
2067
2068 * filelock.c: Include utmp.h only when HAVE_UTMP_H (FreeBSD 9.x
2069 lacks this header file).
2070
2071 2010-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2072
2073 * xdisp.c (draw_glyphs): Update `start' for left_overwritten case
2074 as in Emacs 22.
2075
2076 2010-01-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2077
2078 * lisp.h (make_pure_string): String pointer arg now points to const.
2079
2080 * alloc.c (find_string_data_in_pure, make_pure_string): String pointer
2081 args now point to const.
2082
2083 2010-01-22 Eli Zaretskii <eliz@gnu.org>
2084
2085 * lread.c (Fload): Don't treat files without .elc extension as
2086 byte-compiled if they are ``magic'', i.e. `openp' returned -2 for
2087 them. (bug#5303)
2088
2089 2010-01-20 Kenichi Handa <handa@m17n.org>
2090
2091 * coding.c (consume_chars): If ! multibyte and the encoder is ccl,
2092 treat the source as actual byte sequence.
2093
2094 2010-01-19 Alan Mackenzie <acm@muc.de>
2095
2096 Fix spurious before-change-functions invocation from (insert ?\n).
2097 * textprop.c (set_text_properties): Rename parameter
2098 `signal_after_change_p' to `coherent_change_p', and make the
2099 invocation of `modify_region' conditional on it.
2100
2101 2010-01-19 Jan Djärv <jan.h.d@swipnet.se>
2102
2103 * xsettings.c (apply_xft_settings): Save settings in Vxft_settings
2104 for debug purpose.
2105 (syms_of_xsettings): Declare xft-settings.
2106
2107 2010-01-18 Chong Yidong <cyd@stupidchicken.com>
2108
2109 * editfns.c (Fcurrent_time_string): Doc fix (Bug#5408).
2110
2111 2010-01-16 Stefan Monnier <monnier@iro.umontreal.ca>
2112
2113 * xterm.c (event_handler_gdk): Block input (Bug#5037).
2114
2115 2010-01-16 Chong Yidong <cyd@stupidchicken.com>
2116
2117 * emacs.c (standard_args): Adjust arg priorities to reflect how
2118 they are processed in startup.el.
2119
2120 2010-01-16 Andreas Schwab <schwab@linux-m68k.org>
2121
2122 * Makefile.in (lisp, shortlisp): Update.
2123
2124 2010-01-16 Stefan Monnier <monnier@iro.umontreal.ca>
2125
2126 * xterm.c (x_term_init): Instead of inhibiting GC while running Lisp
2127 code, link the new kboard into all_kboard before running Lisp code,
2128 and protect the new terminal with GCPRO (Bug#5365).
2129 (x_term_init): Remove unused var `atom'.
2130 (x_delete_display, x_delete_terminal): Remove unused var `i'.
2131
2132 2010-01-15 Jan Djärv <jan.h.d@swipnet.se>
2133
2134 * xfns.c (x_get_current_desktop, x_get_desktop_workarea): New functions.
2135 (Fx_create_frame): Call x_get_current_desktop and x_get_desktop_workarea
2136 to find out usable size of the desktop. Don't make frames larger than
2137 this. Bug #3643.
2138
2139 2010-01-15 Kenichi Handa <handa@m17n.org>
2140
2141 * xdisp.c (CHAR_COMPOSED_P): New arg END_CHARPOS. Callers changed.
2142
2143 2010-01-15 Chong Yidong <cyd@stupidchicken.com>
2144
2145 * nsterm.m (Qnone): Define.
2146
2147 * nsfns.m (Qnone): Move definition to nsterm.m.
2148
2149 2010-01-14 Kenichi Handa <handa@m17n.org>
2150
2151 * coding.c (detect_coding_iso_2022): Fix handling of euc-xx coding
2152 systems.
2153
2154 2010-01-14 Kenichi Handa <handa@m17n.org>
2155
2156 Make auto-composition work on all buffers even if they are
2157 fundamental mode.
2158
2159 * composite.c (Vauto_composition_mode): New variable.
2160 (composition_compute_stop_pos): Check Vauto_composition_mode
2161 instead of Vauto_composition_function.
2162 (composition_adjust_point, Ffind_composition_internal): Likewise.
2163 (syms_of_composite): Declare Lisp variable
2164 "auto-composition-mode" here.
2165
2166 2010-01-13 Chong Yidong <cyd@stupidchicken.com>
2167
2168 * xterm.c (x_term_init): Avoid garbage-collecting the new terminal
2169 during call to vendor-specific-keysyms (Bug#5365).
2170
2171 2010-01-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2172
2173 * keyboard.c (input_available_signal) [SYNC_INPUT]:
2174 Call SIGNAL_THREAD_CHECK (Bug#5333).
2175
2176 * atimer.c (alarm_signal_handler) [!SYNC_INPUT]:
2177 Call SIGNAL_THREAD_CHECK.
2178
2179 2010-01-13 Stefan Monnier <monnier@iro.umontreal.ca>
2180
2181 Try to fix bug#5314. This is probably not the final word, tho.
2182 * buffer.c (Fset_buffer_modified_p): Try and be careful not to modify
2183 recent-auto-save-p as a side-effect.
2184 * buffer.h (BUF_AUTOSAVE_MODIFF): New macro.
2185 * buffer.c (Fkill_buffer, reset_buffer):
2186 * editfns.c (Fsubst_char_in_region):
2187 * fileio.c (Finsert_file_contents, Fdo_auto_save)
2188 (Fset_buffer_auto_saved, Frecent_auto_save_p): Use it.
2189
2190 2010-01-13 Kenichi Handa <handa@m17n.org>
2191
2192 Display buffer name, etc. in mode line by composing correctly.
2193
2194 * xdisp.c (reseat_to_string): Call composition_compute_stop_pos if
2195 STRING is not nil.
2196 (display_mode_element): Adjust for the change of
2197 decode_mode_spec and display_line.
2198 (decode_mode_spec): Change arg MULTIBYTE to STRING.
2199 (display_string): Handle the case that STRING is non-null and
2200 LISP_STRING is not nil.
2201
2202 * xterm.c (x_draw_composite_glyph_string_foreground):
2203 Pay attention to s->face->overstrike.
2204
2205 * composite.c (composition_reseat_it): Don't check PT if STRING is
2206 non nil.
2207
2208 2010-01-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2209
2210 * keyboard.c (read_char): Don't apply previous change when current
2211 buffer is unchanged by command execution.
2212
2213 2010-01-12 Jan Djärv <jan.h.d@swipnet.se>
2214
2215 * keyboard.c (read_char): Return after executing from special map.
2216
2217 2010-01-12 Glenn Morris <rgm@gnu.org>
2218
2219 * emacs.c (REPORT_EMACS_BUG_PRETEST_ADDRESS): Set it to
2220 bug-gnu-emacs rather than emacs-pretest-bug.
2221
2222 2010-01-11 Chong Yidong <cyd@stupidchicken.com>
2223
2224 * nsterm.m (syms_of_nsterm): Initialize Qcontrol etc. before
2225 initializing the Lisp variables that depend on them.
2226
2227 2010-01-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2228
2229 * xfns.c (x_set_menu_bar_lines) [!USE_X_TOOLKIT && !USE_GTK]:
2230 Clear areas that will not be updated after change of menu bar lines.
2231 Clear the menu bar window's current matrix when the window gets empty.
2232
2233 2010-01-09 Chong Yidong <cyd@stupidchicken.com>
2234
2235 * intervals.h, textprop.c (extend_property_ranges): Return value
2236 and args changed. Discard properties that begin at or after the
2237 new end (Bug#5306).
2238
2239 * editfns.c (Fformat): Caller changed.
2240
2241 * nsterm.m (ns_set_default_prefs): Delete function.
2242 (syms_of_nsterm): Initialize ns_command_modifier,
2243 ns_control_modifier, ns_function_modifier, ns_antialias_text, and
2244 ns_antialias_threshold here, not in ns_term_init (Bug#4113).
2245
2246 * xdisp.c (pos_visible_p): Check for invisible text at the correct
2247 position (Bug#4040).
2248
2249 2010-01-09 Eli Zaretskii <eliz@gnu.org>
2250
2251 * editfns.c (Ffloat_time): Doc fix.
2252
2253 2010-01-09 Jan Djärv <jan.h.d@swipnet.se>
2254
2255 * xfns.c (Fx_create_frame): Don't create frame larger than display
2256 by default bug#3643.
2257
2258 2010-01-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2259
2260 * frame.h (FRAME_TOP_MARGIN_HEIGHT): New macro.
2261 (FRAME_LINE_TO_PIXEL_Y, FRAME_PIXEL_Y_TO_LINE): Take account of pseudo
2262 windows above internal border.
2263
2264 * window.h (WINDOW_MENU_BAR_P, WINDOW_TOOL_BAR_P): New macros.
2265 (WINDOW_TOP_EDGE_Y, WINDOW_BOTTOM_EDGE_Y): Take account of pseudo
2266 windows above internal border.
2267
2268 * xdisp.c (get_glyph_string_clip_rects, init_glyph_string): Don't treat
2269 tool bar windows specially.
2270
2271 * xfns.c (x_set_tool_bar_lines): Take account of menu bar height.
2272
2273 * xterm.c (x_after_update_window_line): Don't treat tool bar windows
2274 specially.
2275 (XTflash): Take account of menu bar height.
2276
2277 * w32term.c (x_after_update_window_line): Don't treat tool bar windows
2278 specially.
2279
2280 2010-01-08 Jan Djärv <jan.h.d@swipnet.se>
2281
2282 * dispnew.c (change_frame_size_1): newwidth == FRAME_COLS (f) must
2283 also be true before we can return early (bug #5339).
2284
2285 2010-01-06 David Reitter <david.reitter@gmail.com>
2286
2287 * nsfns.m (ns_get_screen): Rewrite, returning NULL for non-NS.
2288 (Fns_display_usable_bounds): Rewrite, computing bounds properly
2289 (Bug#3233).
2290
2291 2010-01-06 Jan Djärv <jan.h.d@swipnet.se>
2292
2293 * font.c (font_open_entity): Enable chache and call cached_font_ok
2294 for the driver if defined.
2295 (QCuser_spec): New symbol.
2296 (font_spec_from_name): Save name as user-spec.
2297 (font_load_for_lface): Keep user-spec instead of name.
2298 (font_open_by_name): Save name as user-spec.
2299 (syms_of_font): Initialize QCuser_spec.
2300 (font_clear_prop): Clear name if it exists in font (bug#5157).
2301
2302 * xftfont.c (xftfont_open): Call xftfont_add_rendering_parameters.
2303 (xftfont_add_rendering_parameters, xftfont_cached_font_ok): New.
2304 (syms_of_xftfont): Initialize xftfont_driver.cached_font_ok.
2305
2306 * font.h (struct font_driver): Add cached_font_ok.
2307
2308 * xterm.c (x_clear_frame): Queue draw for scroll bars.
2309
2310 2010-01-05 Jan Djärv <jan.h.d@swipnet.se>
2311
2312 * xterm.c (x_new_font): Move code for setting rows/cols before
2313 resizing ...
2314 (x_set_window_size): ... to here. Bug #2568.
2315
2316 * gtkutil.c (xg_clear_under_internal_border): New function.
2317 (xg_frame_resized, xg_frame_set_char_size):
2318 Call xg_clear_under_internal_border.
2319 (xg_update_scrollbar_pos): Clear under old scroll bar position.
2320
2321 2010-01-05 Chong Yidong <cyd@stupidchicken.com>
2322
2323 * keyboard.c (read_key_sequence): Catch keyboard switch after
2324 making a new tty frame (Bug#5095).
2325
2326 2010-01-05 Kenichi Handa <handa@m17n.org>
2327
2328 * fontset.c (fontset_find_font): Fix getting the frame pointer.
2329
2330 2010-01-04 Stefan Monnier <monnier@iro.umontreal.ca>
2331
2332 * dbusbind.c (xd_remove_watch): Avoid trying to convert a void* to
2333 Lisp_Object, preferring to convert a lisp_Object to a void* instead.
2334 (Fdbus_init_bus): Use XHASH to get a scalar value from a Lisp_Object.
2335
2336 2010-01-03 Michael Albinus <michael.albinus@gmx.de>
2337
2338 * dbusbind.c (xd_add_watch): Improve debug message.
2339 (xd_remove_watch): Improve debug message. If DATA is the session
2340 bus, unset D-Bus session environment.
2341 (Fdbus_init_bus): Pass the bus as argument to
2342 dbus_connection_set_watch_functions. (Bug#5283)
2343
2344 2010-01-01 Chong Yidong <cyd@stupidchicken.com>
2345
2346 * nsterm.m (ns_get_color): Fix buffer overflow (Bug#4763).
2347
2348 * lread.c (syms_of_lread): Make it clearer that these are the
2349 names of loaded files (Bug#5068).
2350
2351 * eval.c (run_hook_with_args): Handle the case where the global
2352 value has the obsolete single-function form (Bug#5026).
2353
2354 2009-12-27 Chong Yidong <cyd@stupidchicken.com>
2355
2356 * minibuf.c (Fall_completions): Minor optimization.
2357
2358 2009-12-26 Eli Zaretskii <eliz@gnu.org>
2359
2360 * .gdbinit (pgx): Fix display of composite glyphs.
2361 Display cmp.from and cmp.to as well.
2362 (pitx): Fix last change.
2363
2364 2009-12-25 Kenichi Handa <handa@m17n.org>
2365
2366 * composite.h (composition_adjust_point): Update prototype.
2367
2368 * composite.c (composition_reseat_it): Don't make a composition
2369 spanning over point.
2370 (CHAR_COMPOSABLE_P): Treat U+200C (ZWNJ) and U+200D (ZWJ) as
2371 composable characters.
2372 (composition_adjust_point): New arg NEW_PT. Callers changed.
2373
2374 * keyboard.c (command_loop_1): Force redisplay if the last point
2375 was within a composition.
2376 (adjust_point_for_property): Don't adjust point for automatic
2377 composition when called after buffer modification.
2378
2379 2009-12-19 Eli Zaretskii <eliz@gnu.org>
2380
2381 * .gdbinit (pitx): Don't use enum names, use their values.
2382 Remove reference to non-existing value GET_FROM_COMPOSITION.
2383 (pgx): Don't use enum names, use their values.
2384 (pitmethod): New helper command.
2385 (pitx): Use it to display iteration method.
2386 (pgrowit): New command.
2387
2388 * makefile.w32-in ($(BLD)/cmds.$(O)): Depend on frame.h.
2389
2390 Update dependencies in Makefile.in.
2391
2392 * Makefile.in (alloc.o): Depend on termhooks.h.
2393 (atimer.o): Depend on blockinput.h.
2394 (buffer.o): Depend on indent.h, keyboard.h, coding.h, keymap.h,
2395 and frame.h.
2396 (callint.o): Depend on systime.h, coding.h, and composite.h.
2397 (callproc.o): Depend on buffer.h.
2398 (casefiddle.o): Don't depend on charset.h.
2399 (casetab.o): Depend on character.h.
2400 (ccl.o): Depend on composite.h.
2401 (chartab.o): Depend on ccl.h.
2402 (cm.o): Depend on dispextern.h.
2403 (cmds.o): Depend on systime.h, coding.h, frame.h, and composite.h.
2404 (coding.o): Don't depend on $(INTERVALS_H).
2405 (composite.o): Don't depend on dispextern.h explicitly (it's in
2406 $(INTERVALS_H)). Depend on ccl.h.
2407 (data.o): Depend on systime.h, coding.h, composite.h,
2408 dispextern.h, font.h, and ccl.h.
2409 (dired.o): Depend on composite.h.
2410 (dispnew.o): Depend on coding.h. Don't depend explicitly on
2411 composite.h (it's in $(INTERVALS_H)).
2412 (doc.o): Depend on systime.h, coding.h, and composite.h.
2413 (editfns.o): Don't depend explicitly on dispextern.h.
2414 (emacs.o): Depend on frame.h and coding.h.
2415 (eval.o): Depend on coding.h, composite.h, and xterm.h.
2416 (fileio.o): Depend on frame.h and commands.h. Don't depend
2417 explicitly on dispextern.h.
2418 (filelock.o): Don't depend on epaths.h and charset.h. Depend on
2419 composite.h.
2420 (fns.o): Don't depend on termhooks.h.
2421 (font.o): Depend on buffer.h, composite.h, fontset.h, and xterm.h.
2422 (fontset.o): Depend on blockinput.h, atimer.h, systime.h,
2423 coding.h, $(INTERVALS_H), window.h, xterm.h.
2424 (frame.o): Depend on coding.h, composite.h, termhooks.h, and ccl.h.
2425 (fringe.o): Depend on blockinput.h, atimer.h, and systime.h.
2426 (ftfont.o): Depend on blockinput.h, atimer.h, systime.h, coding.h,
2427 fontset.h, ccl.h, and ftfont.h.
2428 (ftxfont.o): Depend on atimer.h, systime.h, fontset.h, and ccl.h.
2429 (gtkutil.o): Depend on dispextern.h and composite.h.
2430 (image.o): Depend on epaths.h, character.h, coding.h, composite.h,
2431 termhooks.h, and ccl.h.
2432 (indent.o): Depend on systime.h, coding.h, and $(INTERVALS_H).
2433 (intervals.o): Depend on systime.h and coding.h.
2434 (keyboard.o): Depend on composite.h and coding.h.
2435 (keymap.o): Depend on coding.h and frame.h.
2436 (lread.o): Depend on systime.h, frame.h, blockinput.h, and atimer.h.
2437 (macros.o): Depend on systime.h, coding.h, and composite.h.
2438 (menu.o): Depend on systime.h, coding.h, composite.h, window.h,
2439 and atimer.h.
2440 (minibuf.o): Depend on systime.h and coding.h. Don't depend on
2441 dispextern.h explicitly.
2442 (print.o): Depend on termhooks.h, coding.h, and ccl.h.
2443 Don't depend explicitly on dispextern.h and composite.h.
2444 (process.o): Depend on character.h, xgselect.h, and sysselect.h.
2445 (regex.o): Don't depend on charset.h.
2446 (scroll.o): Depend on systime.h, coding.h, composite.h, and window.h.
2447 (search.o): Don't depend explicitly on composite.h.
2448 (sound.o): Depend on atimer.h and systime.h.
2449 (syntax.o): Don't depend explicitly on composite.h.
2450 (sysdep.o): Depend on coding.h and composite.h.
2451 (term.o): Depend on xterm.h and buffer.h.
2452 (terminal.o): Depend on dispextern.h, composite.h, and systime.h.
2453 (textprop.o): Don't depend on dispextern.h explicitly.
2454 (undo.o): Depend on dispextern.h.
2455 (window.o): Depend on coding.h and termhooks.h. Don't depend on
2456 dispextern.h and composite.h explicitly.
2457 (xdisp.o): Depend on ccl.h.
2458 (xfaces.o): Depend on coding.h and ccl.h.
2459 (xfns.o): Depend on $(INTERVALS_H) and ccl.h.
2460 (xfont.o): Depend on atimer.h, systime.h, fontset.h, and ccl.h.
2461 (xftfont.o): Depend on atimer.h, systime.h, fontset.h, ccl.h, and
2462 ftfont.h.
2463 (xgselect.o): New dependency.
2464 (xmenu.o): Depend on composite.h, keymap.h, and sysselect.h.
2465 (xselect.o): Depend on keyboard.h, coding.h, and composite.h.
2466 (xsettings.o): Depend on dispextern.h, keyboard.h, systime.h,
2467 coding.h, composite.h, blockinput.h, atimer.h, and termopts.h.
2468 (xsmfns.o): Depend on frame.h and dispextern.h.
2469 (xterm.o): Depend on intervals.h, keymap.h, xgselect.h, and
2470 sysselect.h.
2471
2472 2009-12-19 Andreas Schwab <schwab@linux-m68k.org>
2473
2474 * font.c (Fclear_font_cache): Pass correct cache argument to
2475 font_clear_cache.
2476
2477 2009-12-16 Andreas Schwab <schwab@linux-m68k.org>
2478
2479 * Makefile.in (prefix-args${EXEEXT}): Don't compile prefix-args.c
2480 twice.
2481
2482 2009-12-15 Chong Yidong <cyd@stupidchicken.com>
2483
2484 * xdisp.c (decode_mode_spec): Inhibit garbage collection when
2485 calling file-remote-p. Reported by Jim Meyering.
2486
2487 2009-12-15 Michael Albinus <michael.albinus@gmx.de>
2488
2489 * dbusbind.c (xd_retrieve_arg): Reorder declarations in order to
2490 avoid compiler warnings. (Bug #5217)
2491
2492 2009-12-14 Kenichi Handa <handa@m17n.org>
2493
2494 * coding.c (decode_coding_iso_2022): Ignore ISO_CODE_SS2_7 (0x19)
2495 in 8-bit encoding.
2496
2497 2009-12-13 Pat Thoyts <patthoyts@users.sourceforge.net> (tiny change)
2498
2499 * xfns.c (x_create_tip_frame): Set the extended window manager hint for
2500 tooltip windows.
2501
2502 2009-12-13 Jan Djärv <jan.h.d@swipnet.se>
2503
2504 * xterm.h (struct x_display_info): Add Xatom_net_window_type_tooltip and
2505 Xatom_net_window_type.
2506
2507 * xterm.c (x_term_init): Initialize Xatom_net_window_type_tooltip and
2508 Xatom_net_window_type.
2509
2510 * xterm.c (my_log_handler): New function.
2511 (x_term_init): Set my_log_handler as log handler during gtk_init
2512 so we can filter out buggy messages. (Bug #5120).
2513
2514 * xterm.c (xg_scroll_callback): Parameter list changed,
2515 use parameter GtkScrollType to determine scroll/line/page.
2516 Only allow dragging if a button < 4 is grabbed (bug #5177).
2517 (xg_end_scroll_callback): New function.
2518 (x_create_toolkit_scroll_bar): Pass xg_end_scroll_callback to
2519 xg_create_scroll_bar.
2520
2521 * gtkutil.c (xg_gtk_scroll_destroy): Remove XG_LAST_SB_DATA handling.
2522 (scroll_end_callback): Remove.
2523 (xg_create_scroll_bar): Add parameter end_callback, bind it to
2524 button-release-event. Replace value-changed event with change-value,
2525 bug #5177,
2526 (xg_event_is_for_scrollbar): Only return true if button is less than 4,
2527 bug #5177.
2528
2529 * gtkutil.h (XG_LAST_SB_DATA): Remove.
2530 (xg_create_scroll_bar): Add GCallback end_callback.
2531
2532 * xftfont.c (QClcdfilter): New variable.
2533 (xftfont_open): Parse constant names for RGBA, HINT_STYLE and LCDFILTER.
2534 (syms_of_xftfont): Initialize QClcdfilter.
2535
2536 2009-12-12 Jan Djärv <jan.h.d@swipnet.se>
2537
2538 * xsettings.c (struct xsettings): Add member seen.
2539 (parse_xft_settings): Update member seen with what we have read.
2540 Return non-zero if Xft-settings have been parsed, 0 otherwise.
2541 (apply_xft_settings): Only update Xft settings with what member seen
2542 indicates as new.
2543
2544 2009-12-12 Eli Zaretskii <eliz@gnu.org>
2545
2546 * dispextern.h (struct text_pos): Use EMACS_INT;
2547 (struct glyph): Use EMACS_INT for charpos.
2548 (struct it): Use EMACS_INT for stop_charpos, end_charpos,
2549 region_beg_charpos, region_end_charpos,
2550 redisplay_end_trigger_charpos, and also for
2551 iterator_stack_entry.end_charpos and
2552 iterator_stack_entry.stop_charpos.
2553
2554 2009-12-12 Jan Djärv <jan.h.d@swipnet.se>
2555
2556 * gtkutil.c (scroll_end_callback): New function (bug #5177).
2557 (xg_create_scroll_bar): Call scroll_end_callback on button release
2558 event (bug #5177).
2559 (xg_event_is_for_scrollbar): != replaced with ==.
2560
2561 2009-12-12 Kenichi Handa <handa@m17n.org>
2562
2563 * ftfont.c (struct ftfont_info): New member matrix.
2564 (ftfont_open): Setup xftfont_info->matrix.
2565 (MFLTFontFT): New member matrix.
2566 (FLOOR, CEIL, ROUND): New macros.
2567 (ftfont_get_metrics): Handle matrix transformation.
2568 (ftfont_shape_by_flt): New arg matrix. Callers changed.
2569
2570 * xftfont.c (struct xftfont_info): New member matrix.
2571 (xftfont_open): Setup xftfont_info->matrix.
2572
2573 2009-12-10 Kenichi Handa <handa@m17n.org>
2574
2575 * xdisp.c (append_space_for_newline): Consider face-remapping.
2576
2577 2009-12-09 Andreas Schwab <schwab@linux-m68k.org>
2578
2579 * xsettings.c: Include "keyboard.h".
2580
2581 * gtkutil.c (xg_tool_bar_proxy_help_callback): Fix missing return.
2582
2583 Fix implicit function declarations.
2584 * cmds.c: Include "frame.h".
2585 * frame.c: Include "font.h" also if !HAVE_WINDOW_SYSTEM.
2586 * frame.h: Move declaration of delete_frame outside of
2587 HAVE_WINDOW_SYSTEM.
2588
2589 2009-12-09 Ken Brown <kbrown@cornell.edu> (tiny change)
2590
2591 * s/cygwin.h (G_SLICE_ALWAYS_MALLOC): New variable.
2592
2593 * emacs.c (main): Set the G_SLICE environment variable for Cygwin
2594 GTK builds.
2595
2596 2009-12-07 Andreas Schwab <schwab@linux-m68k.org>
2597
2598 * unexelf.c (unexec): Don't search for .data twice.
2599
2600 2009-12-05 Chong Yidong <cyd@stupidchicken.com>
2601
2602 * xdisp.c (push_display_prop): Don't set avoid_cursor_p. Return 0
2603 if push failed.
2604 (handle_line_prefix): Set avoid_cursor_p here. Check return value
2605 of push_display_prop (Bug#5000).
2606
2607 * xfaces.c (Fx_family_fonts): Handle 2009-07-14 change to return
2608 value of font_list_entities (Bug#5085).
2609
2610 2009-12-04 Juanma Barranquero <lekktu@gmail.com>
2611
2612 Fix `string-to-number' to deal consistently with integers and floats.
2613 * lread.c (isfloat_string): New argument ignore_trailing to accept all
2614 trailing characters, not just whitespace.
2615 (read1): Pass new arg 0 to keep old behavior.
2616 * data.c (Fstring_to_number): Pass 1 to isfloat_string to ignore
2617 trailing chars, as it is already done for integers. Doc fixes.
2618 * lisp.h (isfloat_string): Add new arg to declaration of isfloat_string.
2619
2620 2009-12-04 Eli Zaretskii <eliz@gnu.org>
2621
2622 * dispextern.h (enum prop_idx) <AUTO_COMPOSED_PROP_IDX>:
2623 Delete unused enumeration value.
2624
2625 2009-12-03 Eli Zaretskii <eliz@gnu.org>
2626
2627 * Makefile.in (lisp, shortlisp): Replace indian.el with indian.elc.
2628
2629 2009-12-03 Daniel Hackney <dan@haxney.org> (tiny change)
2630
2631 * process.c (Fmake_network_process): Fix up the tests for
2632 "connectionless socket", so they DTRT for seqpacket sockets as well.
2633
2634 2009-12-03 Stefan Monnier <monnier@iro.umontreal.ca>
2635
2636 * process.c (Qseqpacket): New symbol.
2637 (HAVE_SEQPACKET): New macro.
2638 (Fmake_network_process): Accept new :type `seqpacket'.
2639 (init_process): Add `seqpacket' feature when applicable.
2640 (syms_of_process): Initialize Qseqpacket.
2641
2642 2009-12-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2643
2644 * font.c (font_load_for_lface, font_open_by_name): Don't store name
2645 if entity is Qnil.
2646
2647 2009-11-30 Stefan Monnier <monnier@iro.umontreal.ca>
2648
2649 * print.c (print_preprocess): Preprocess the key_and_value table of
2650 hashtables, even tho they're "hidden" (bug#5082).
2651
2652 2009-11-29 Jan Djärv <jan.h.d@swipnet.se>
2653
2654 * frame.c (frame_make_pointer_invisible)
2655 (frame_make_pointer_visible): Declare f before statements.
2656
2657 2009-11-28 Eli Zaretskii <eliz@gnu.org>
2658
2659 * Makefile.in [!AUTO_DEPEND]: Remove outdated comment about
2660 omitted dependencies on lisp.h.
2661
2662 2009-11-27 Jan Djärv <jan.h.d@swipnet.se>
2663
2664 * xftfont.c (xftfont_end_for_frame): Just return if dpyinfo->display
2665 is NULL.
2666
2667 * xterm.c (x_delete_terminal): Set dpyinfo->display to NULL.
2668
2669 * frame.c (frame_make_pointer_invisible)
2670 (frame_make_pointer_visible): Just return if there isn't any selected
2671 frame.
2672
2673 * search.c (simple_search): Remove warning by making *p const.
2674
2675 2009-11-26 Dan Nicolaescu <dann@ics.uci.edu>
2676
2677 * xdisp.c (power_letter): Remove duplicate const.
2678
2679 2009-11-25 Jan Djärv <jan.h.d@swipnet.se>
2680
2681 * term.c (delete_tty): Remove check for last terminal (bug#4970).
2682
2683 * xsettings.c: Revert changes from 2009-11-23. Just use Xft
2684 defaults (bug #5025).
2685
2686 2009-11-24 Stefan Monnier <monnier@iro.umontreal.ca>
2687
2688 * insdel.c (adjust_markers_for_delete): Move it in the
2689 right direction! (bug#4803)
2690
2691 2009-11-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2692
2693 * font.c (font_open_entity): Don't use ASET if font_object is Qnil.
2694
2695 * xterm.c (x_new_font): Update f->scroll_bar_actual_width.
2696
2697 2009-11-24 Glenn Morris <rgm@gnu.org>
2698
2699 * frame.c (focus-follows-mouse): Mention mouse-autoselect-window.
2700
2701 2009-11-23 Jan Djärv <jan.h.d@swipnet.se>
2702
2703 * Makefile.in: Must create deps for ecrt0.o in its rule.
2704
2705 * xfns.c (Fx_select_font): Try to convert Fontconfig name to Gtk name
2706 because that is what Gtk+ font dialog understands.
2707
2708 * font.c (font_make_object, Fcopy_font_spec): Use Fcopy_alist instead
2709 of Fcopy_sequence.
2710 (font_open_by_name): Put name given into QCname for font-object returned.
2711
2712 * frame.c (x_set_font): Save original font name as frame parameter
2713 font-parameter.
2714
2715 * xsettings.c (set_default_xft_settings): New function.
2716 (init_xfd_settings): Call set_default_xft_settings if no XSETTINGS window
2717 is found.
2718
2719 2009-11-22 Andreas Schwab <schwab@linux-m68k.org>
2720
2721 * search.c (simple_search): Avoid CHAR_TO_BYTE in inner loop when
2722 searching backwards through multibyte buffer.
2723
2724 2009-11-21 Jan Djärv <jan.h.d@swipnet.se>
2725
2726 * xterm.c: #include xgselect.h.
2727 (x_initialize): Call xgselect_initialize.
2728
2729 * xsettings.c (something_changedCB): C++ comments => C comments.
2730 (init_gconf): Do not deal with any GLib file descriptors, xg_select
2731 does that now.
2732
2733 * gtkutil.c (xg_timer, xg_process_timeouts, xg_start_timer)
2734 (xg_stop_timer, menu_grab_callback_cnt, menu_grab_callback)
2735 (scroll_bar_button_cb): Remove.
2736 (create_menus): C++ comments => C comments. Don't bind grab-notify
2737 event.
2738 (xg_create_scroll_bar): Don't bind button-press-event and
2739 button-release-event.
2740
2741 * process.c: Include xgselect.h if defined (USE_GTK) ||
2742 defined (HAVE_GCONF).
2743 (wait_reading_process_output): Call xg_select for the same condition.
2744
2745 * xgselect.c (xg_select): New function to better integrate with
2746 GLib/Gtk event handling. Needed if GConf daemon dies/restarts.
2747
2748 * xgselect.h: New file, declare xg_select, xgselect_initialize.
2749
2750 * Makefile.in (XOBJ): Add xgselect.o.
2751
2752 2009-11-21 Andreas Schwab <schwab@linux-m68k.org>
2753
2754 * character.h (STRING_CHAR, STRING_CHAR_AND_LENGTH):
2755 Remove ignored second argument. All callers changed.
2756 * regex.c (STRING_CHAR, STRING_CHAR_AND_LENGTH, RE_STRING_CHAR)
2757 (RE_STRING_CHAR_AND_LENGTH): Likewise.
2758 * xdisp.c (string_char_and_length): Likewise.
2759
2760 2009-11-21 Dan Nicolaescu <dann@ics.uci.edu>
2761
2762 * xterm.c (x_new_font):
2763 * print.c (print_object):
2764 * cmds.c (Fself_insert_command): Move declarations before statements.
2765
2766 2009-11-20 Ken Brown <kbrown@cornell.edu> (tiny change)
2767
2768 * s/cygwin.h: Remove unneeded linker flags.
2769
2770 2009-11-20 Jan Djärv <jan.h.d@swipnet.se>
2771
2772 * xfns.c (x_default_font_parameter): Call xsettings_get_system_font.
2773
2774 * xsettings.h: Declare xsettings_get_system_font.
2775
2776 * xsettings.c (xsettings_get_system_font): New function.
2777 (init_gconf): No use initiating gconf unless we have Xft also.
2778 (syms_of_xsettings): Only provide system-font-setting if HAVE_XFT and
2779 HAVE_GCONF.
2780
2781 * gtkutil.c (xg_modify_menubar_widgets): If menubar is totally empty
2782 add a blank entry so it doesn't collapse into nothing.
2783
2784 2009-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
2785
2786 * lread.c (Funintern): Comment out last change.
2787
2788 2009-11-19 Richard Stallman <rms@gnu.org>
2789
2790 * lread.c (Funintern): Error if symbol is t or nil.
2791
2792 2009-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
2793
2794 * insdel.c (make_gap_larger): Don't make as many assumptions about the
2795 representation of Lisp integers.
2796 Reported by MJ Chan <mjchan.inbox@gmail.com>.
2797
2798 2009-11-17 Andreas Schwab <schwab@linux-m68k.org>
2799
2800 * lisp.h: Remove declaration of Ffont_get_system_font.
2801 * xfns.c: Move include of "xsettings.h".
2802 * xsettings.h: Use EXFUN to declare Ffont_get_system_font.
2803
2804 2009-11-17 Jan Djärv <jan.h.d@swipnet.se>
2805
2806 * xsettings.c (something_changedCB, Ffont_get_system_font):
2807 Check use_system_font.
2808 (syms_of_xsettings): DEFVAR font-use-system-font.
2809
2810 2009-11-17 Andreas Schwab <schwab@linux-m68k.org>
2811
2812 * xfns.c (x_default_font_parameter): Remove dead assignment.
2813
2814 * lisp.h (Fbyteorder, init_font, Ffont_get_system_font): Declare.
2815
2816 2009-11-17 Jan Djärv <jan.h.d@swipnet.se>
2817
2818 * xftfont.c (xftfont_fix_match): Older versions of fontconfig do
2819 not have FC_LCD_*. #define them if not there.
2820
2821 * xsettings.c (parse_xft_settings, apply_xft_settings): Ditto.
2822
2823 * xterm.h (struct x_display_info): Add atoms and Window for xsettings.
2824
2825 * xterm.c (handle_one_xevent): Call xft_settings_event for
2826 ClientMessage, PropertyNotify and DestroyNotify.
2827 (x_term_init): If we have XFT, get DPI from Xft.dpi.
2828 Call xsettings_initialize.
2829
2830 * xftfont.c (xftfont_fix_match): New function.
2831 (xftfont_open): Call XftDefaultSubstitute before XftFontMatch.
2832 Call xftfont_fix_match after XftFontMatch.
2833
2834 * xfont.c (xfont_driver): Initialize all members.
2835
2836 * xfns.c (x_default_font_parameter):
2837 Try font from Ffont_get_system_font.
2838 Do not get font from x_default_parameter if we got one from
2839 Ffont_get_system_font.
2840 (Fx_select_font): Get the defaut font name from :name of FRAME_FONT(f).
2841
2842 * w32font.c (w32font_driver): Initialize all members.
2843
2844 * termhooks.h (enum event_kind): CONFIG_CHANGED_EVENT is new.
2845
2846 * lisp.h: Declare syms_of_xsettings.
2847
2848 * keyboard.c (kbd_buffer_get_event, make_lispy_event):
2849 Handle CONFIG_CHANGED_EVENT.
2850
2851 * ftfont.c (ftfont_filter_properties): New function.
2852
2853 * frame.c (x_set_font): Remove unused variable lval.
2854
2855 * font.h (struct font_driver): Add filter_properties.
2856
2857 * font.c (font_put_extra): Don't return if val is nil, it means
2858 boolean option is off.
2859 (font_parse_fcname): Collect all extra properties in extra_props
2860 and call filter_properties for all drivers with extra_props and
2861 font as parameter.
2862 (font_open_entity): Do not use cache, it does not pick up new
2863 fontconfig settings like hinting.
2864 (font_load_for_lface): If spec had a name in it, store it in entity.
2865
2866 * emacs.c (main): Call syms_of_xsettings
2867
2868 * config.in: HAVE_GCONF is new.
2869
2870 * Makefile.in (GCONF_CFLAGS, GCONF_LIBS): New variables for HAVE_GCONF.
2871 xsettings.o is new.
2872
2873 2009-11-17 Kenichi Handa <handa@m17n.org>
2874
2875 * xdisp.c (x_produce_glyphs): Consider face-remapping when falling
2876 back to the default font in case that no suitable font is found.
2877
2878 2009-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
2879
2880 * menu.c (Fx_popup_menu) [HAVE_NS]: Use generic code for window edge.
2881 Suggested by Chad Brown <yandros@mit.edu>.
2882 (push_menu_item): Use MENU_ITEMS_ITEM_* names.
2883
2884 2009-11-16 Jan Djärv <jan.h.d@swipnet.se>
2885
2886 * xmenu.c (x_menu_wait_for_event): Call XFlush before select.
2887
2888 2009-11-14 Andreas Schwab <schwab@linux-m68k.org>
2889
2890 * Makefile.in: Ignore errors from mkdir when creating deps directory.
2891
2892 2009-11-14 Jan Djärv <jan.h.d@swipnet.se>
2893
2894 * gtkutil.c (xg_update_frame_menubar): Do nothing if menubar already
2895 has a parent.
2896
2897 * Makefile.in: If AUTO_DEPEND is defined, make gcc generate
2898 dependency files in deps/. Include those files into Makefile.
2899
2900 * config.in: Generated (AUTO_DEPEND).
2901
2902 2009-11-13 Michael Albinus <michael.albinus@gmx.de>
2903
2904 * dbusbind.c (Vdbus_registered_objects_table): Rename from
2905 Vdbus_registered_functions_table, because it contains also
2906 properties. Fix docstring.
2907 (Fdbus_call_method, Fdbus_call_method_asynchronously): Fix docstring.
2908
2909 2009-11-13 Stefan Monnier <monnier@iro.umontreal.ca>
2910
2911 * alloc.c (mark_object): Don't reprocess marked strings.
2912 Check vector's markbit earlier. Adjust calls to mark_vectorlike.
2913 (mark_vectorlike, mark_char_table): Assume the object is unmarked.
2914
2915 2009-11-13 Kenichi Handa <handa@m17n.org>
2916
2917 * category.c (word_boundary_p): Adjust for the change of the
2918 semantics of Vword_combining_categories.
2919 (Vword_combining_categories): Describe the slight change of the
2920 semantics.
2921
2922 2009-11-13 Eli Zaretskii <eliz@gnu.org>
2923
2924 * menu.c (Fx_popup_menu): Call Fx_hide_tip only if HAVE_WINDOW_SYSTEM.
2925
2926 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Revert last change.
2927
2928 2009-11-12 Stefan Monnier <monnier@iro.umontreal.ca>
2929
2930 * xdisp.c (syms_of_xdisp): Fix typo in last change.
2931
2932 2009-11-12 Juanma Barranquero <lekktu@gmail.com>
2933
2934 * makefile.w32-in: Update dependencies; add dependencies to lisp.h.
2935
2936 2009-11-11 David Reitter <david.reitter@gmail.com>
2937
2938 * menu.c (Fx_popup_menu): Remove left-over debugging code and rename
2939 variables to fix 2009-11-09 change.
2940
2941 2009-11-11 Dan Nicolaescu <dann@ics.uci.edu>
2942
2943 * process.c (ifflag_def): Make flag_sym constant.
2944 (Fnetwork_interface_info): Use a constant pointer.
2945 (ifflag_table):
2946 * xfns.c (cursor_bits):
2947 * xdisp.c (power_letter):
2948 * termcap.c (speeds, esctab):
2949 * sysdep.c (baud_convert):
2950 * keyboard.c (lispy_accent_codes, modifier_names):
2951 * image.c (xbm_format, xpm_format, pbm_format, png_format)
2952 (jpeg_format, tiff_format, gif_format, svg_format)
2953 (interlace_start, interlace_increment, gs_format):
2954 * gtkutil.c (separator_names):
2955 * fringe.c (swap_nibble):
2956 * fns.c (base64_value_to_char, base64_char_to_value):
2957 * fileio.c (make_temp_name_tbl):
2958 * coding.c (suffixes): Make constant.
2959
2960 * frame.c (make_initial_frame):
2961 * buffer.c (init_buffer_once): Use make_pure_c_string instead of
2962 build_string.
2963 * alloc.c (syms_of_alloc): Build Vmemory_signal_data in pure memory.
2964
2965 * s/freebsd.h:
2966 * s/netbsd.h: Remove code referring to non-existent file: unexsunos4.o.
2967
2968 * Makefile.in: Add dependencies to lisp.h. Remove dependencies
2969 for non-existent files: unexmips.c, unexnext.c, abbrev.c, malloc.c.
2970
2971 * xfns.c (syms_of_xfns): Use make_pure_string instead of build_string.
2972 * xterm.c (syms_of_xterm):
2973 * xfaces.c (syms_of_xfaces):
2974 * xdisp.c (syms_of_xdisp):
2975 * lread.c (syms_of_lread):
2976 * keyboard.c (syms_of_keyboard): Use make_pure_c_string instead of
2977 build_string.
2978
2979 * doc.c (Fsnarf_documentation): Purecopy Vbuild_files.
2980
2981 2009-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
2982
2983 * fns.c (Fplist_get): Merge the active and the commented out code.
2984
2985 2009-11-10 Jan Djärv <jan.h.d@swipnet.se>
2986
2987 * keyboard.h: Declare timer_check.
2988
2989 * keyboard.c (timer_check_2): New function that does what the old
2990 timer_check did.
2991 (timer_check): Call timer_check_2 until -1 or a non-zero time is
2992 returned, i.e. don't return -1 with timers pending.
2993
2994 * process.c: Remove extern declaration of timer_check.
2995
2996 * xmenu.c (x_menu_wait_for_event): Remove code that did a timeout
2997 even if timer_check returned -1.
2998
2999 * gtkutil.c (xg_dialog_response_cb): Data is now a struct
3000 xg_dialog_data.
3001 (pop_down_dialog): Destroy widget (if any), cancel timer and unref
3002 the event loop.
3003 (xg_maybe_add_timer, xg_dialog_run): New functions (bug #4574).
3004 (xg_get_file_name, xg_get_font_name): Call xg_dialog_run (bug #4574).
3005 Destroy the dialog after xg_dialog_run.
3006
3007 2009-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
3008
3009 * menu.c (Fx_popup_menu) [HAVE_NS]: Remove unused vars.
3010
3011 2009-11-10 Jan Djärv <jan.h.d@swipnet.se>
3012
3013 * xmenu.c (xmenu_show): Must not be static after 2009-11-09 changes.
3014
3015 2009-11-09 Juanma Barranquero <lekktu@gmail.com>
3016
3017 * menu.c [HAVE_NTGUI]: Declare current_popup_menu.
3018
3019 2009-11-09 Stefan Monnier <monnier@iro.umontreal.ca>
3020
3021 * menu.c (Fx_popup_menu): Consolidate versions from xmenu.c,
3022 w32menu.c, and nsmenu.m.
3023 Simplify the obsolete case where position is nil.
3024 (cleanup_popup_menu): New function, moved from nsmenu.m.
3025 (struct skp): Remove slot `notreal'.
3026 (single_keymap_panes, keymap_panes): Remove arg `notreal' and
3027 adjust callers.
3028 (single_menu_item): Adjust call to parse_menu_item.
3029 (syms_of_menu): Defsubr x-popup-menu.
3030 * menu.h (Vmenu_updating_frame): Consolidate declarations from *menu.c.
3031 (keymap_panes): Don't export any more.
3032 (mouse_position_for_popup, w32_menu_show, ns_menu_show)
3033 (xmenu_show): Declare.
3034 * keyboard.c (parse_menu_item): Remove arg `notreal'.
3035 (menu_bar_item, read_char_minibuf_menu_prompt): Adjust callers.
3036 * keyboard.h (parse_menu_item): Update declaration.
3037 * xmenu.c (Fx_popup_menu): Remove.
3038 (syms_of_xmenu): Don't defsubr x-popup-menu.
3039 * w32menu.c (Fx_popup_menu): Remove.
3040 (syms_of_w32menu): Don't defsubr x-popup-menu.
3041 * nsmenu.m (cleanup_popup_menu): Remove.
3042 (ns_menu_show): Rename from ns_popup_menu and remove all the code
3043 moved to menu.c's Fx_popup_menu.
3044 (Fx_popup_menu): Remove.
3045 (syms_of_nsmenu): Don't defsubr x-popup-menu, and don't initialize
3046 menu_items (it's done in menu.c already).
3047
3048 2009-11-08 Stefan Monnier <monnier@iro.umontreal.ca>
3049
3050 * keyboard.c (parse_menu_item): Handle `notreal' a bit earlier.
3051 Use `tem' less. Make sure KEYEQ holds a string or nil (bug#4879).
3052
3053 2009-11-08 Chong Yidong <cyd@stupidchicken.com>
3054
3055 * xmenu.c (Fx_popup_menu): Extract event timestamp. Pass it to
3056 xmenu_show. Hide any tooltip before opening a menu.
3057 (xmenu_show): New arg. Pass it to create_and_show_popup_menu.
3058 (create_and_show_popup_menu): New arg. Pass it to gtk_menu_popup.
3059
3060 2009-11-06 Stefan Monnier <monnier@iro.umontreal.ca>
3061
3062 Let integers use up 2 tags to give them one extra bit and thus double
3063 their range.
3064 * lisp.h (USE_2_TAGS_FOR_INTS): New macro.
3065 (LISP_INT_TAG, case_Lisp_Int, LISP_STRING_TAG, LISP_INT_TAG_P):
3066 New macros.
3067 (enum Lisp_Type): Use them. Give explicit values.
3068 (Lisp_Type_Limit): Remove.
3069 (XINT, XUINT, make_number) [!USE_LISP_UNION_TYPE]:
3070 (MOST_NEGATIVE_FIXNUM, MOST_POSITIVE_FIXNUM, INTMASK):
3071 Pay attention to USE_2_TAGS_FOR_INTS.
3072 (INTEGERP): Use LISP_INT_TAG_P.
3073 * fns.c (internal_equal): Simplify the default case.
3074 (sxhash): Use case_Lisp_Int.
3075 * data.c (wrong_type_argument): Don't check against Lisp_Type_Limit
3076 any more.
3077 (Ftype_of): Use case_Lisp_Int.
3078 (store_symval_forwarding): Take into account the fact that Ints can
3079 now have more than one tag.
3080 * buffer.c (syms_of_buffer): Use LISP_INT_TAG.
3081 buffer_slot_type_mismatch):
3082 * xfaces.c (face_attr_equal_p):
3083 * print.c (print_object):
3084 * alloc.c (mark_maybe_object, mark_object, survives_gc_p):
3085 Use case_Lisp_Int.
3086
3087 2009-11-06 Eli Zaretskii <eliz@gnu.org>
3088
3089 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce by further 30K.
3090
3091 * alloc.c (make_pure_c_string): Fix last change to avoid compiler
3092 warning.
3093
3094 2009-11-06 Jan Djärv <jan.h.d@swipnet.se>
3095
3096 * gtkutil.c (xg_event_is_for_scrollbar): New function (bug#4870).
3097
3098 * gtkutil.h: Declare xg_event_is_for_scrollbar (bug#4870).
3099
3100 * xterm.c (handle_one_xevent): Call xg_event_is_for_scrollbar for
3101 ButtonPressRelease and MotionNotify (bug#4870).
3102
3103 2009-11-06 Dan Nicolaescu <dann@ics.uci.edu>
3104
3105 * keymap.c (syms_of_keymap): Construct exclude_keys in pure memory.
3106
3107 * xterm.c (syms_of_xterm):
3108 * xselect.c (syms_of_xselect):
3109 * xmenu.c (syms_of_xmenu):
3110 * xfns.c (syms_of_xfns):
3111 * xfaces.c (syms_of_xfaces):
3112 * xdisp.c (syms_of_xdisp):
3113 * window.c (syms_of_window):
3114 * w32fns.c (syms_of_w32fns):
3115 * undo.c (syms_of_undo):
3116 * textprop.c (syms_of_textprop):
3117 * terminal.c (syms_of_terminal):
3118 * syntax.c (syms_of_syntax):
3119 * sound.c (syms_of_sound):
3120 * search.c (syms_of_search):
3121 * print.c (syms_of_print):
3122 * minibuf.c (syms_of_minibuf):
3123 * macros.c (syms_of_macros):
3124 * keymap.c (syms_of_keymap, initial_define_key)
3125 (initial_define_lispy_key):
3126 * keyboard.c (syms_of_keyboard):
3127 * insdel.c (syms_of_insdel):
3128 * image.c (syms_of_image):
3129 * fringe.c (syms_of_fringe):
3130 * frame.c (syms_of_frame):
3131 * fontset.c (syms_of_fontset):
3132 * fns.c (syms_of_fns):
3133 * fns.c (syms_of_fns):
3134 * fileio.c (syms_of_fileio):
3135 * fileio.c (syms_of_fileio):
3136 * eval.c (syms_of_eval):
3137 * doc.c (syms_of_doc):
3138 * dispnew.c (syms_of_display):
3139 * dired.c (syms_of_dired):
3140 * dbusbind.c (syms_of_dbusbind):
3141 * data.c (syms_of_data):
3142 * composite.c (syms_of_composite):
3143 * coding.c (syms_of_coding):
3144 * cmds.c (syms_of_cmds):
3145 * charset.c (define_charset_internal, syms_of_character):
3146 * ccl.c (syms_of_ccl):
3147 * category.c (syms_of_category, init_category_once):
3148 * casetab.c (syms_of_casetab):
3149 * casefiddle.c (syms_of_casefiddle):
3150 * callint.c (syms_of_callint):
3151 * bytecode.c (syms_of_bytecode):
3152 * buffer.c (keys_of_buffer, syms_of_buffer):
3153 * alloc.c (syms_of_alloc):
3154 * process.c (syms_of_process, init_process):
3155 * lread.c (syms_of_lread, init_obarray):
3156 * font.c (build_style_table):
3157 * emacs.c (syms_of_emacs, main): Replace calls to intern with
3158 intern_c_string, calls to make_pure_string with
3159 make_pure_c_string. Use pure_cons instead of Fcons.
3160
3161 * process.c (socket_options): Make it const.
3162 (set_socket_option, init_process): Use a const pointer.
3163
3164 * lread.c (intern_c_string): New function.
3165 (defvar_kboard, defvar_lisp, defvar_lisp_nopro, defvar_bool)
3166 (defvar_int): Uset it. Make the name const char*.
3167
3168 * lisp.h (defvar_kboard, defvar_lisp, defvar_lisp_nopro, defvar_bool)
3169 (defvar_int): Update prototypes.
3170 (DEFUN, EXFUN): Support for prototypes is now required.
3171 (intern_c_string): New prototype.
3172 (struct Lisp_Subr): Make symbol_name constant.
3173
3174 * font.c (struct table_entry): Remove unused member. Make NAMES
3175 constant.
3176 (weight_table, slant_table, width_table): Make constant.
3177
3178 * emacs.c (struct standard_args): Make name and longname constant.
3179
3180 * character.h (DEFSYM): Use intern_c_string.
3181
3182 2009-11-06 Stefan Monnier <monnier@iro.umontreal.ca>
3183
3184 * alloc.c (make_pure_c_string): New function.
3185
3186 * eval.c (Fautoload): Purecopy all arguments.
3187
3188 2009-11-05 Kenichi Handa <handa@m17n.org>
3189
3190 * fileio.c (Finsert_file_contents): Be sure set coding-system of
3191 the buffer in case of replace.
3192
3193 2009-11-04 Dan Nicolaescu <dann@ics.uci.edu>
3194
3195 * puresize.h (BASE_PURESIZE): Increase to 1620000.
3196
3197 2009-11-03 Stefan Monnier <monnier@iro.umontreal.ca>
3198
3199 * editfns.c (save_restriction_restore): Update the (pt/begv/vz)_markers
3200 when applicable (bug#4851).
3201
3202 * lisp.h: Make USE_LSB_TAG work with USE_LISP_UNION_TYPE.
3203 (P_): Support for prototypes is now required.
3204
3205 2009-10-31 Chong Yidong <cyd@stupidchicken.com>
3206
3207 * frame.c (Fmake_frame_invisible, Fframe_visible_p): Doc fix
3208 (Bug#4827).
3209
3210 2009-10-30 Eli Zaretskii <eliz@gnu.org>
3211
3212 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Redefine to waste less pure space.
3213
3214 2009-10-30 Dan Nicolaescu <dann@ics.uci.edu>
3215
3216 * puresize.h (BASE_PURESIZE): Increase to 1470000.
3217
3218 * lread.c (Fload): Purecopy the file name when building
3219 Vpreloaded_file_list.
3220
3221 2009-10-29 Jason Rumney <jasonr@wanchan.jasonrumney.net>
3222
3223 * w32fns.c (syms_of_w32fns): Change default value of
3224 w32-scroll-lock-modifier to nil. (Bug#2827)
3225
3226 2009-10-26 Juanma Barranquero <lekktu@gmail.com>
3227
3228 * minibuf.c (Fall_completions): Fix typos in docstring.
3229
3230 2009-10-26 Andreas Schwab <schwab@redhat.com>
3231
3232 * puresize.h (PURESIZE_RATIO): Increase back to 10/6.
3233
3234 2009-10-26 Juanma Barranquero <lekktu@gmail.com>
3235
3236 * window.c (grow_mini_window): Comment out "delta >= 0" assertion.
3237 For delta < 0, skip check that only makes sense when the mini-window
3238 is going to be enlarged. (Bug#4534)
3239
3240 2009-10-25 Chong Yidong <cyd@stupidchicken.com>
3241
3242 * keyboard.c (read_char_x_menu_prompt): Don't demand a prompt
3243 string in menu maps (Bug#4471).
3244
3245 2009-10-24 Chong Yidong <cyd@stupidchicken.com>
3246
3247 * nsfns.m (ns_set_name, ns_set_name_as_filename): Don't call
3248 FRAME_NS_VIEW on terminal frames (Bug#4765).
3249
3250 2009-10-24 Andreas Schwab <schwab@linux-m68k.org>
3251
3252 * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_INTnn and
3253 DBUS_TYPE_UINTnn separately to get proper sign extension.
3254
3255 * dired.c (Ffile_attributes): Simplify now that FIXNUM_OVERFLOW_P
3256 can properly handle unsigned types.
3257 (make_uid, make_gid): Remove.
3258
3259 * lisp.h (FIXNUM_OVERFLOW_P): Fix last change to handle unsigned
3260 types again.
3261
3262 * sysdep.c (procfs_ttyname): Fix sprintf format to match argument type.
3263 (system_process_attributes): Likewise.
3264
3265 2009-10-24 Dan Nicolaescu <dann@ics.uci.edu>
3266
3267 * keymap.c (Fmake_sparse_keymap): Purecopy the name.
3268
3269 * eval.c (Fautoload): Purecopy the filename. Simplify.
3270
3271 * category.c (Fdefine_category): Purecopy docstring.
3272
3273 2009-10-23 Andreas Schwab <schwab@linux-m68k.org>
3274
3275 * lisp.h (FIXNUM_OVERFLOW_P): Remove cast to avoid overflow.
3276
3277 * puresize.h (PURESIZE_RATIO): Decrease to 11/7.
3278
3279 2009-10-23 Chong Yidong <cyd@stupidchicken.com>
3280
3281 * window.c (Fwindow_edges, Fwindow_pixel_edges)
3282 (Fwindow_inside_edges, Fwindow_inside_pixel_edges): Doc fix
3283 (Bug#4775).
3284
3285 2009-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
3286
3287 * fileio.c (syms_of_fileio): Initialize Vdirectory_sep_char.
3288 (init_fileio_once):
3289 * lisp.h (init_fileio_once): Remove.
3290 * emacs.c (main): Don't call init_fileio_once.
3291
3292 2009-10-23 Dan Nicolaescu <dann@ics.uci.edu>
3293
3294 * puresize.h (BASE_PURESIZE): Increase to 1430000.
3295
3296 2009-10-21 Andreas Schwab <schwab@linux-m68k.org>
3297
3298 * doprnt.c (doprnt): Fix overflow check.
3299
3300 2009-10-21 Jan Djärv <jan.h.d@swipnet.se>
3301
3302 * xterm.c (x_term_init): Remove XSynchronize call done for debugging.
3303
3304 * xterm.h (x_wait_for_event): Declare it.
3305
3306 * xterm.c (pending_event_wait): New variable.
3307 (handle_one_xevent): Set pending_event_wait.eventtype to 0 if we
3308 see pending_event_wait.eventtype.
3309 (handle_one_xevent): Don't change gravity when parent changes.
3310 (x_new_font): Call change_frame_size with new rows/columns before we
3311 try to resize the frame.
3312 (x_wait_for_event): New function.
3313 (x_set_window_size_1): Don't change gravity unless change_gravity
3314 is set.
3315 Call XResizeWindow with FRAME_OUTER_WINDOW. If we are visible,
3316 don't change frame size, instead wait for the ConfigureNotify.
3317 (x_set_window_size): Call x_set_window_size_1 for USE_X_TOOLKIT also.
3318 (x_wm_set_size_hint): Remove ifdefs for USE_X_TOOLKIT.
3319 (x_initialize): Initialize pending_event_wait.
3320
3321 * xmenu.c (set_frame_menubar): Add internal border width to menu bar
3322 size.
3323
3324 * widget.c (EmacsFrameSetValues): Add comment.
3325 (EmacsFrameSetCharSize): Just call x_set_window_size.
3326
3327 * gtkutil.c (xg_frame_set_char_size): Flush events and call
3328 x_wait_for_event.
3329 (flush_and_sync): Remove again.
3330 (xg_get_font_name): Suggest monospace if no previous font is known.
3331
3332 2009-10-20 Stefan Monnier <monnier@iro.umontreal.ca>
3333
3334 * character.c (char_resolve_modifier_mask): Don't resolve meta to the
3335 8th bit, since that only made sense in the ASCII world (bug#4751).
3336
3337 2009-10-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3338
3339 * xterm.c (XTread_socket) [!USE_GTK && HAVE_X_I18N]: Don't quit
3340 processing pending events when event is filtered for input method.
3341 (Bug#3681)
3342
3343 2009-10-20 Juanma Barranquero <lekktu@gmail.com>
3344
3345 * fns.c: Add #endif accidentally removed in previous change.
3346
3347 2009-10-19 Dan Nicolaescu <dann@ics.uci.edu>
3348
3349 * fns.c: Remove code for unsupported system: MAC_OS.
3350 * image.c: Likewise. Include setjmp.h.
3351
3352 2009-10-19 Jan Djärv <jan.h.d@swipnet.se>
3353
3354 * xterm.c (x_create_toolkit_scroll_bar): Don't allocate color for
3355 pixel -1 (bug #4742).
3356
3357 2009-10-19 Dan Nicolaescu <dann@ics.uci.edu>
3358
3359 * process.c (create_pty): Remove conditionals for no longer
3360 supported systems: UNIPLUS and RTU.
3361
3362 * xterm.c:
3363 * xfns.c: Remove always true condition: XtSpecificationRelease >= 5.
3364
3365 * alloc.c: Do not define struct catchtag.
3366 * eval.c: Move struct catchtag definition ...
3367 * lisp.h: ... here.
3368
3369 * image.c: Move png.h #include earlier to avoid warnings.
3370
3371 * xterm.c:
3372 * xsmfns.c:
3373 * xselect.c:
3374 * xrdb.c:
3375 * xmenu.c:
3376 * xftfont.c:
3377 * xfont.c:
3378 * xfns.c:
3379 * xfaces.c:
3380 * xdisp.c:
3381 * window.c:
3382 * widget.c:
3383 * w32xfns.c:
3384 * w32uniscribe.c:
3385 * w32term.c:
3386 * w32select.c:
3387 * w32reg.c:
3388 * w32proc.c:
3389 * w32menu.c:
3390 * w32inevt.c:
3391 * w32heap.c:
3392 * w32font.c:
3393 * w32fns.c:
3394 * w32console.c:
3395 * w32.c:
3396 * w16select.c:
3397 * vm-limit.c:
3398 * unexsol.c:
3399 * unexec.c:
3400 * unexcw.c:
3401 * unexaix.c:
3402 * undo.c:
3403 * tparam.c:
3404 * textprop.c:
3405 * terminfo.c:
3406 * terminal.c:
3407 * termcap.c:
3408 * term.c:
3409 * syntax.c:
3410 * sound.c:
3411 * sheap.c:
3412 * search.c:
3413 * scroll.c:
3414 * region-cache.c:
3415 * regex.c:
3416 * ralloc.c:
3417 * process.c:
3418 * print.c:
3419 * nsterm.m:
3420 * nsselect.m:
3421 * nsmenu.m:
3422 * nsimage.m:
3423 * nsfont.m:
3424 * nsfns.m:
3425 * msdos.c:
3426 * minibuf.c:
3427 * menu.c:
3428 * marker.c:
3429 * macros.c:
3430 * keymap.c:
3431 * keyboard.c:
3432 * intervals.c:
3433 * insdel.c:
3434 * indent.c:
3435 * gtkutil.c:
3436 * ftxfont.c:
3437 * ftfont.c:
3438 * fringe.c:
3439 * frame.c:
3440 * fontset.c:
3441 * font.c:
3442 * fns.c:
3443 * floatfns.c:
3444 * filelock.c:
3445 * fileio.c:
3446 * emacs.c:
3447 * editfns.c:
3448 * dosfns.c:
3449 * doprnt.c:
3450 * doc.c:
3451 * dispnew.c:
3452 * dired.c:
3453 * dbusbind.c:
3454 * data.c:
3455 * composite.c:
3456 * coding.c:
3457 * cmds.c:
3458 * cm.c:
3459 * chartab.c:
3460 * charset.c:
3461 * character.c:
3462 * ccl.c:
3463 * category.c:
3464 * casetab.c:
3465 * casefiddle.c:
3466 * callproc.c:
3467 * callint.c:
3468 * bytecode.c:
3469 * buffer.c:
3470 * atimer.c: Include setjmp.h. (Bug#4643)
3471
3472 2009-10-18 Stefan Monnier <monnier@iro.umontreal.ca>
3473
3474 Remove leftover table unibyte_to_multibyte_table.
3475 * character.c (unibyte_to_multibyte_table): Remove.
3476 (Funibyte_char_to_multibyte): Use MAKE_CHAR_MULTIBYTE.
3477 * charset.c (init_charset_once): Don't init unibyte_to_multibyte_table.
3478 * character.h (UNIBYTE_TO_CHAR): New macro.
3479 (MAKE_CHAR_MULTIBYTE): Use it.
3480 (unibyte_to_multibyte_table, unibyte_char_to_multibyte): Remove.
3481 * xdisp.c (get_next_display_element): USE ASCII_CHAR_P.
3482 (message_dolog, set_message_1):
3483 * search.c (Freplace_match):
3484 * editfns.c (Fcompare_buffer_substrings):
3485 * fns.c (Fcompare_strings): Use MAKE_CHAR_MULTIBYTE.
3486 (concat):
3487 * insdel.c (copy_text, count_size_as_multibyte):
3488 Use ASCII_CHAR_P and BYTE8_TO_CHAR.
3489 * term.c (produce_glyphs):
3490 * syntax.c (skip_chars): Use BYTE8_TO_CHAR.
3491 * regex.c (RE_CHAR_TO_MULTIBYTE):
3492 * cmds.c (internal_self_insert):
3493 * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use UNIBYTE_TO_CHAR.
3494
3495 * cmds.c (internal_self_insert): `c' is already in "multibyte" form.
3496
3497 2009-10-17 Dan Nicolaescu <dann@ics.uci.edu>
3498
3499 * puresize.h (BASE_PURESIZE): Increase to 1310000.
3500
3501 2009-10-16 Juanma Barranquero <lekktu@gmail.com>
3502
3503 * buffer.c (Fbuffer_name): Doc fix. (Bug#4728)
3504
3505 2009-10-15 Adrian Robert <Adrian.B.Robert@gmail.com>
3506
3507 * nsterm.h (NS_HAVE_NSINTEGER): Back out and augment with CGFloat,
3508 still needed under Tiger.
3509
3510 * nsterm.m (EmacsView-conversationIdentifier): Arg is long.
3511
3512 * m/amdx86-64.h: Don't set LIB_STANDARD and START_FILES under
3513 __Apple__.
3514
3515 * m/intel386.h: Remove DARWIN_OS/_LP64 special case.
3516
3517 2009-10-15 Kenichi Handa <handa@m17n.org>
3518
3519 * print.c (print_object): Escape a symbol like "2E10" too.
3520
3521 2009-10-11 Adrian Robert <Adrian.B.Robert@gmail.com>
3522
3523 Cleanups and changes for 64-bit compile under Snow Leopard.
3524 Based on suggestions by Erik Charlebois.
3525
3526 * nsfns.m (xw-color-values): Use CGFloat where appropriate.
3527
3528 * nsfont.m (ns_char_width): Replace deprecated call.
3529 (ns_findfonts, nsfont_list_family): Use long format in printf, and
3530 cast argument.
3531 (nsfont_open): Use ns_char_width() everywhere.
3532 (ns_uni_to_glyphs, NSGlyphStorage): Use NS[U]Integer where appropriate.
3533
3534 * nsgui.h (NSPoint, NSSize) [!__OBJC__]: Define and use CGFloat.
3535
3536 * nsimage.m (EmacsImage-setXBMColor:,-getPixelAtX:Y:): Use CGFloat
3537 where appropriate.
3538
3539 * nsmenu.m (EmacsMenu-addItemWithWidgetValue:): Use NSInteger
3540 where appropriate.
3541 (EmacsToolbar-addDisplayItemWithImage:idx:helpText:enabled:):
3542 Use stringWithUTF8String.
3543 (EmacsDialogPanel-initWithContentRect:styleMask:): Fix signature.
3544
3545 * nsterm.h (EmacsView, EmacsMenu, EmacsToolbar, EmacsTooltip):
3546 Add formal protocol mention to inheritance.
3547 [NS_HAVE_NSINTEGER]: Drop conditional and contents.
3548
3549 * nsterm.m (ns_color_to_lisp): Use CGFloat where appropriate.
3550 Fix printf format.
3551 (ns_query_color): Use CGFloat where appropriate.
3552 (EmacsView<NSTextInput>, EmacsScroller): Fix method signatures.
3553 (EmacsScroller-mouseDown:): Use long format in printf, and cast
3554 argument.
3555
3556 * config.in (NS_HAVE_NSINTEGER): Drop.
3557
3558 * dbusbind.c (dbus-method-return-internal)
3559 (dbus-method-error-internal): Use long format in printf, and cast
3560 argument.
3561
3562 * font.c (font_unparse_xlfd, font_unparse_fcname): Use long format
3563 in printf, and cast argument.
3564
3565 * process.c (list_processes_1): Use long format in printf, and
3566 cast argument.
3567
3568 2009-10-11 Glenn Morris <rgm@gnu.org>
3569
3570 * frame.c (Fframe_pixel_height): Doc fix. (Bug#4535)
3571
3572 2009-10-08 Jan Djärv <jan.h.d@swipnet.se>
3573
3574 * gtkutil.c (create_menus): Call gtk_widget_set_size_request for
3575 menu bar with a small width so it doesn't enlarge the frame.
3576
3577 2009-10-08 Juanma Barranquero <lekktu@gmail.com>
3578
3579 * fontset.c (Fset_fontset_font): Fix typos in error messages.
3580
3581 2009-10-06 Glenn Morris <rgm@gnu.org>
3582
3583 * Makefile.in (emacs${EXEEXT}): Remove direct dependence on
3584 SOME_MACHINE_LISP (this enters indirectly via DOC).
3585
3586 2009-10-05 Eli Zaretskii <eliz@gnu.org>
3587
3588 * dired.c (Ffile_attributes): Doc fix. (Bug#4638)
3589
3590 2009-10-04 Eli Zaretskii <eliz@gnu.org>
3591
3592 * xdisp.c (syms_of_xdisp) <unibyte-display-via-language-environment>:
3593 Doc fix.
3594
3595 2009-10-03 Martin Rudalics <rudalics@gmx.at>
3596
3597 * window.c (Fdelete_window): Check WINDOW argument. (Bug#4618)
3598
3599 2009-10-02 Michael Albinus <michael.albinus@gmx.de>
3600
3601 * lisp.h (Qdelete_directory_internal): Remove, because it is not
3602 used anymore outside fileio.c.
3603
3604 * w32fns.c (Fsystem_move_file_to_trash): Use delete-directory.
3605
3606 2009-10-01 Juanma Barranquero <lekktu@gmail.com>
3607
3608 * lisp.h (Qdelete_directory_internal):
3609 Declare, instead of Qdelete_directory.
3610
3611 * w32fns.c (Fsystem_move_file_to_trash): Use it.
3612
3613 2009-10-01 Stefan Monnier <monnier@iro.umontreal.ca>
3614
3615 * eval.c (Fcalled_interactively_p): Add `kind' argument.
3616
3617 2009-10-01 Michael Albinus <michael.albinus@gmx.de>
3618
3619 * fileio.c (Fdelete_directory_internal): Rename from
3620 Fdelete_directory. It is not a command anymore. It has no file
3621 name handler.
3622
3623 2009-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
3624
3625 * xdisp.c (get_next_display_element): Use an enum in last change.
3626
3627 2009-09-28 Kenichi Handa <handa@m17n.org>
3628
3629 * xdisp.c (get_next_display_element): Pay attention to
3630 unibyte_display_via_language_environment in handling
3631 Vnobreak_char_display.
3632
3633 2009-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
3634
3635 * nsterm.h (ns_app_name): New extern variable.
3636
3637 * nsterm.m (ns_app_name): New variable.
3638 (ns_term_init): Set and use it.
3639 (ns_term_shutdown): Use it.
3640
3641 * nsmenu.m (ns_update_menubar): Use ns_app_name. Sync with xmenu.c.
3642 (EmacsMenu-clear:, ns_popup_dialog): Use ns_app_name.
3643
3644 * nsfns.m (ns_set_name_iconic, ns_set_name)
3645 (ns_set_name_as_filename, x-create-frame, ns-get-resource)
3646 (ns-set-resource): Use ns_app_name instead of NSProcessInfo call.
3647
3648 * menu.c (find_and_return_menu_selection) [HAVE_NS]:
3649 Remove double-casting in client_data comparison.
3650
3651 2009-09-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3652
3653 * keyboard.c (make_lispy_event): Remember last wheel direction.
3654 (syms_of_keyboard) <wheel_syms>: Compute array size at compile time.
3655
3656 2009-09-26 Glenn Morris <rgm@gnu.org>
3657
3658 * Makefile.in (MSDOS_SUPPORT) [MSDOS]: Remove unneeded '/' in
3659 internal.elc. Add term/pc-win.elc.
3660 (WINDOW_SUPPORT) [HAVE_X_WINDOWS]: Add term/common-win.elc and
3661 term/x-win.elc.
3662 (WINNT_SUPPORT) [WINDOWSNT]: Add term/common-win.elc and
3663 term/w32-win.elc.
3664 (NS_SUPPORT): New.
3665 (lisp): Add NS_SUPPORT.
3666 (SOME_MACHINE_LISP): Add term/w32-win.elc and emacs-lisp/easymenu.elc.
3667
3668 2009-09-25 David Reitter <david.reitter@gmail.com>
3669
3670 * nsmenu.m (EmacsMenu-clear): Recognize application menu
3671 on Mac OS X 10.6+ (bug#4513).
3672
3673 2009-09-24 Juanma Barranquero <lekktu@gmail.com>
3674
3675 * frame.c (xrdb_get_resource): Return nil for empty string resources;
3676 some parts of Emacs code (like font selection) don't grok them.
3677 See http://lists.gnu.org/archive/html/emacs-devel/2009-09/msg00528.html
3678
3679 2009-09-24 Andreas Schwab <schwab@redhat.com>
3680
3681 * coding.c (decode_coding_iso_2022): Fix operator precedence.
3682
3683 2009-09-24 Juanma Barranquero <lekktu@gmail.com>
3684
3685 * dired.c (Fdirectory_files): Fix typo in docstring.
3686
3687 2009-09-23 Adrian Robert <Adrian.B.Robert@gmail.com>
3688
3689 * nsterm.m (EV_TIMESTAMP, x_set_window_size)
3690 (EmacsApp-application:openFiles:): Remove GNUstep conditionals.
3691 (EmacsScroller-setPosition:portion:whole:): Remove -display call
3692 under GNUstep.
3693 (EmacsView-initFrameFromEmacs:): Set autoresizing mask.
3694
3695 * nsfont.m (ns_glyph_metrics): Remove GNUstep conditional for
3696 glyph advancement.
3697
3698 2009-09-22 Adrian Robert <Adrian.B.Robert@gmail.com>
3699
3700 * nsterm.m (CGContextSetFontRenderingMode): Drop declaration.
3701 (EmacsScroller-mouseDown:): Use SCROLL_BAR_FIRST_DELAY.
3702
3703 * nsmenu.m (EmacsMenu-menuNeedsUpdate): Ignore if frame has been
3704 deleted (bug #4492).
3705
3706 * nsfont.m (Vns_reg_to_script): New lisp variable.
3707 (syms_of_nsfont): Declare it.
3708 (ns_registry_to_script): New function.
3709 (ns_get_req_script): Call it.
3710 (ns_findfonts): Don't give up on non-unicode registry.
3711
3712 * font.c (DEFAULT_ENCODING) [HAVE_NS]: Remove special case.
3713
3714 2009-09-20 Tom Tromey <tromey@redhat.com>
3715
3716 * eval.c (find_handler_clause): Make stack-trace-on-error work in
3717 batch mode (bug#4228).
3718
3719 2009-09-18 Rob Christie <robchristie@gmail.com> (tiny change)
3720
3721 * nsmenu.m (EmacsMenu-parseKeyEquiv:): Parse key equivalent more
3722 carefully. (Bug #4339)
3723
3724 2009-09-18 Chong Yidong <cyd@stupidchicken.com>
3725
3726 * syntax.c (Fchar_syntax): Minor doc fix (Bug#4400).
3727
3728 2009-09-18 Adrian Robert <Adrian.B.Robert@gmail.com>
3729
3730 * emacs.c (inhibit_x_resources): Update doc string for NS.
3731 (main) [HAVE_NS]: Don't process --no-init-file option. Remove
3732 legacy code for -NXHost. Fix error printf in daemon case.
3733
3734 * nsterm.h (ns_no_defaults): Remove.
3735
3736 * nsterm.m (ns_no_defaults): Remove.
3737 (ns_term_init): Switch ns_no_defaults -> inhibit_x_resources.
3738 (ns_use_qd_smoothing): Remove legacy variable.
3739 (EmacsView-windowShouldZoom:): Set frame left_pos, top_pos and
3740 don't update the NSWindow itself.
3741 (EmacsView-windowWillUseStandardFrame:defaultFrame:): Improve
3742 state detection and store user rect ourselves. (Bug #3581)
3743
3744 * nsfont.m (nsfont_draw) [NS_IMPL_COCOA]: Don't use
3745 ns_use_qd_smoothing.
3746
3747 * nsfns.m (x_get_string_resource): Ape just-previous changes to other
3748 platform versions. Drop support for emacs-20-style face specs.
3749 (x-close-connection): Drop PSFlush() under OS X.
3750 (x-focus-frame): Activate the app first. (Bug #4180)
3751
3752 2009-09-17 Juanma Barranquero <lekktu@gmail.com>
3753
3754 * emacs.c (inhibit_x_resources): New variable.
3755 (main) [HAVE_NS]: Don't process --quick command line option.
3756 (syms_of_emacs) <inhibit-x-resources>: DEFVAR_BOOL it.
3757
3758 * lisp.h (inhibit_x_resources): Declare it extern.
3759
3760 * w32reg.c (x_get_string_resource):
3761 * xrdb.c (x_get_string_resource): Obey inhibit_x_resources.
3762
3763 2009-09-17 Eli Zaretskii <eliz@gnu.org>
3764
3765 * Makefile.in (MSDOS_SUPPORT, SOME_MACHINE_LISP):
3766 Add lisp/term/internal.elc.
3767
3768 2009-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
3769
3770 * frame.c (x_get_resource_string): Re-add for non-toolkit builds
3771 (bug#4461).
3772
3773 2009-09-17 Dan Nicolaescu <dann@ics.uci.edu>
3774
3775 * puresize.h (BASE_PURESIZE): Increase to 1290000.
3776
3777 * Makefile.in (OTHER_FILES): Define using autoconf, not cpp.
3778 (OBJECTS_MACHINE): Remove, unused.
3779
3780 2009-09-16 Stefan Monnier <monnier@iro.umontreal.ca>
3781
3782 * frame.c (x_get_resource_string): Remove unused.
3783
3784 2009-09-15 Jan Djärv <jan.h.d@swipnet.se>
3785
3786 * xterm.c (x_new_font): Call change_frame_size before calling
3787 x_set_window_size, in case frame size won't change.
3788
3789 * frame.c (x_set_font): Remove dead code.
3790
3791 2009-09-15 Stefan Monnier <monnier@iro.umontreal.ca>
3792
3793 * lread.c (Fload): Also run do-after-load-evaluation while dumping.
3794
3795 2009-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
3796
3797 * lread.c (Fload): Don't output a message after loading an obsolete
3798 package any more (done in Lisp now).
3799
3800 2009-09-12 Chong Yidong <cyd@stupidchicken.com>
3801
3802 * fns.c (syms_of_fns): Doc fix (Bug#4227).
3803
3804 2009-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
3805
3806 * keymap.c (Fwhere_is_internal): Use nconc2.
3807
3808 2009-09-11 Alan Mackenzie <acm@muc.de>
3809
3810 * dispnew.c (Fsend_string_to_terminal): Amend doc string to cover
3811 batch mode.
3812
3813 2009-09-11 Andreas Schwab <schwab@linux-m68k.org>
3814
3815 * xdisp.c (display_mode_element): Detect cycles.
3816
3817 2009-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
3818
3819 * keymap.c (where_is_internal): Don't erroneously return nil right after
3820 filling the cache.
3821 (where_is_internal_1): Fix up typo.
3822
3823 2009-09-11 Glenn Morris <rgm@gnu.org>
3824
3825 * frame.c (Fx_parse_geometry): Unify the X and NS versions so that they
3826 share a common doc-string.
3827
3828 2009-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
3829
3830 * keymap.c (get_keymap): Return the actual keymap symbol rather than
3831 t for autoloaded keymaps when autoloading is not allowed (bug#4393).
3832
3833 * keymap.c (QCadvertised_binding): New constant.
3834 (syms_of_keymap): Initialize it.
3835 (Fwhere_is_internal): Try and use bindings from :advertised-binding
3836 if applicable.
3837
3838 2009-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
3839
3840 * keyboard.c (Qmenu_alias, Vdefine_key_rebound_commands): Remove.
3841 (parse_menu_item): Streamline since bindings are recomputed all the
3842 time anyway. Don't bother checking Vdefine_key_rebound_commands any
3843 more and don't support lmenu's menu-alias any more either.
3844
3845 * keymap.c (where_is_internal_data): Make noindirect a boolean.
3846 (where_is_internal): Strip it down to only traverse the keymaps.
3847 Move the cache handling from Fwhere_is_internal to here.
3848 (Fwhere_is_internal): Move the handling of remapping and the choice of
3849 the best binding from where_is_internal to here.
3850 Unify the cached/noncached paths, so remapping is also handled
3851 correctly when the cache is used, and so the cache can be used to
3852 speed up remap-handling when applicable.
3853 Give preference to non-remapped bindings.
3854 * doc.c (Fsubstitute_command_keys): Let Fwhere_is_internal's prefer
3855 non-remapped bindings.
3856 * keyboard.c (parse_menu_item): Let Fwhere_is_internal handle
3857 command remapping.
3858
3859 * xdisp.c (display_mode_element): Move list length limit from 50 to
3860 5000 (see thread starting with <xbaik5174uqu.fsf@cam.ac.uk>).
3861
3862 2009-09-09 Adrian Robert <Adrian.B.Robert@gmail.com>
3863
3864 * nsfont.m (ns_get_family): Don't force first letter to uppercase.
3865
3866 2009-09-09 Stefan Monnier <monnier@iro.umontreal.ca>
3867
3868 * xdisp.c (Vtruncate_partial_width_windows): Improve docstring.
3869 (Bug#4334)
3870
3871 * keymap.c (where_is_internal): Filter out shadowed remappings.
3872 Assume that where_is_internal returns unshadowed bindings to simplify
3873 the code and get rid of the gotos. Use ASIZE.
3874
3875 2009-09-04 Jan Djärv <jan.h.d@swipnet.se>
3876
3877 * xterm.c (x_focus_changed): If we get a focusout and pointer
3878 is invisible, make it visible.
3879
3880 * xterm.h: Remove condition for declaration of
3881 x_*_window_to_frame.
3882
3883 2009-09-03 Stefan Monnier <monnier@iro.umontreal.ca>
3884
3885 * dispnew.c (Fsend_string_to_terminal): Make it work again on the
3886 initial terminal as well.
3887
3888 2009-09-02 Jan Djärv <jan.h.d@swipnet.se>
3889
3890 * xterm.h: Rename x_non_menubar_window_to_frame to
3891 x_menubar_window_to_frame.
3892
3893 * xterm.c: Remove declarations also in xterm.h.
3894 (XTmouse_position): Do not return valid positions
3895 for clicks in the menubar and the toolbar for Gtk+.
3896
3897 * xfns.c (x_any_window_to_frame): Assume less about Gtk+ internals,
3898 if the widget for the event has the same top level as a frame,
3899 return the frame.
3900 (x_menubar_window_to_frame): Detect menu bar even with Gtk+
3901 internal windows, bug #4122.
3902 (x_non_menubar_window_to_frame): Remove.
3903
3904 2009-09-02 Glenn Morris <rgm@gnu.org>
3905
3906 * buffer.c (default-major-mode): Move most of the doc from here...
3907 (major-mode): ... to here.
3908
3909 2009-08-30 Nick Roberts <nickrob@snap.net.nz>
3910
3911 * process.c (wait_reading_process_output): Keep the descriptor
3912 when pty is used by a non-child process, e.g., in I/O buffer of
3913 GDB this allows inferior to be restarted.
3914
3915 2009-08-29 Eli Zaretskii <eliz@gnu.org>
3916
3917 * xdisp.c (redisplay_internal): Remove redundant test and collapse
3918 both branches into one.
3919
3920 2009-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
3921
3922 * emacs.c (USAGE1): Remove --(no-)multibyte, --(no-)unibyte.
3923 (main): Use enable-multibyte-characters rather than
3924 default-enable-multibyte-characters. Output a warning message when
3925 running a unibyte session.
3926
3927 2009-08-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3928
3929 * unexmacosx.c (print_load_command_name) [LC_DYLD_INFO]: Add cases
3930 LC_DYLD_INFO and LC_DYLD_INFO_ONLY.
3931 (copy_data_segment): Also copy __program_vars section.
3932 (copy_dyld_info) [LC_DYLD_INFO]: New function.
3933 (dump_it) [LC_DYLD_INFO]: Use it.
3934
3935 * s/darwin.h [temacs]: Undef HAVE_POSIX_MEMALIGN.
3936
3937 2009-08-28 Eli Zaretskii <eliz@gnu.org>
3938
3939 * makefile.w32-in ($(BLD)/doc.$(O)): Depend on buildobj.h, not on
3940 $(SRC)/buildobj.h.
3941 (buildobj.h): Renamed from $(SRC)/buildobj.h.
3942 (make-buildobj-CMD, make-buildobj-SH): Create buildobj.h, not
3943 $(SRC)/buildobj.h.
3944 (clean): Add buildobj.h.
3945
3946 2009-08-28 Teodor Zlatanov <tzz@lifelogs.com>
3947
3948 * print.c (print_object): Set escapeflag to 1 when printing
3949 hashtable keys and values.
3950
3951 2009-08-27 Stefan Monnier <monnier@iro.umontreal.ca>
3952
3953 * lread.c (read_integer): Use doubles (and potentially return a float
3954 number) as we do in string-to-number.
3955 (read1): Use strtol to read integers, signal errors on strtol's
3956 overflow and use floats if strtol's output is too large for
3957 Elisp integers.
3958
3959 2009-08-27 Eli Zaretskii <eliz@gnu.org>
3960
3961 * makefile.w32-in ($(SRC)/buildobj.h, make-buildobj-CMD)
3962 (make-buildobj-SH): Fix last change.
3963 (SRC): Move to before where it's first used.
3964
3965 2009-08-27 Kenichi Handa <handa@m17n.org>
3966
3967 * process.c (send_process): Use encode_coding_object instead of
3968 encode_coding_string to perform eol-conversion even if the string
3969 is unibyte.
3970
3971 * coding.c (encode_coding_utf_16): Fix checking of a Unicode
3972 character.
3973
3974 * cmds.c (Fself_insert_command): Avoid unnecessay
3975 unibyte->multibyte conversion. (Bug#4240) (Bug#4037)
3976
3977 2009-08-26 Dan Nicolaescu <dann@ics.uci.edu>
3978
3979 * callproc.c (Fcall_process): Remove always true #if.
3980
3981 * lisp.h: Replace #if 0 code for checking with text pointing to
3982 the --enable-checking configure flag.
3983
3984 * emacs.c (main): Mention the --enable-profiling configure flag
3985 instead of using CFLAGS.
3986
3987 2009-08-26 Ken Raeburn <raeburn@raeburn.org>
3988
3989 * Makefile.in (buildobj.h): New target.
3990 (doc.o): Depend on it.
3991 (temacs${EXEEXT}): Don't generate buildobj.lst.
3992 (mostlyclean): Delete buildobj.h, not buildobj.lst.
3993 * makefile.w32-in ($(SRC)/buildobj.h): New target.
3994 ($(BLD)/doc.$(O)): Depend on it.
3995 (make-buildobj-CMD, make-buildobj-SH): New targets. (Syntax help
3996 provided by Eli Zaretskii.)
3997 ($(TEMACS)): Don't generate buildobj.lst.
3998 * doc.c: Include buildobj.h.
3999 (buildobj): New static variable.
4000 (Fsnarf_documentation): Use it, instead of opening and reading
4001 buildobj.lst.
4002
4003 2009-08-25 Michael Albinus <michael.albinus@gmx.de>
4004
4005 * dbusbind.c (Fdbus_call_method)
4006 (Fdbus_call_method_asynchronously): Use English numeric format for
4007 timeout values in doc string.
4008
4009 2009-08-25 Kenichi Handa <handa@m17n.org>
4010
4011 * alloc.c (mark_char_table): New function.
4012 (mark_object): Use mark_char_table for a char-table.
4013
4014 * lisp.h (CHAR_TABLE_REF_ASCII): New macro.
4015 (CHAR_TABLE_REF): Use it.
4016
4017 2009-08-23 Ken Raeburn <raeburn@raeburn.org>
4018
4019 * Makefile.in (emacs${EXEEXT}) [CANNOT_DUMP]: Set EMACSLOADPATH
4020 before invoking the newly build emacs to check for load-path
4021 shadowing.
4022
4023 2009-08-22 Glenn Morris <rgm@gnu.org>
4024
4025 * Makefile.in (bootstrap_exe): New variable.
4026 (.el.elc, ${lispsource}loaddefs.el, bootstrap-emacs${EXEEXT}):
4027 Use ${bootstrap_exe}.
4028
4029 2009-08-22 Eli Zaretskii <eliz@gnu.org>
4030
4031 * coding.h (encode_coding_string): Don't encode unibyte strings.
4032 (Bug#4047)
4033
4034 2009-08-22 Michael Albinus <michael.albinus@gmx.de>
4035
4036 * config.in (HAVE_DBUS_WATCH_GET_UNIX_FD): Add.
4037
4038 * dbusbind.c (XD_WITH_DBUS_WATCH_GET_UNIX_FD): Remove. It was
4039 intended as hotfix only.
4040 (xd_add_watch, xd_remove_watch): Use HAVE_DBUS_WATCH_GET_UNIX_FD.
4041
4042 2009-08-21 Adrian Robert <Adrian.B.Robert@gmail.com>
4043
4044 * nsterm.m (ns_get_color): Update documentation properly for last
4045 change, and clean up loose ends in the code left by it. Fix
4046 longstanding bug with 16-bit hex parsing, and add support for
4047 yet another X11 format (rgb:r/g/b) for compatibility.
4048 * nsfns.m (EmacsDialogPanel-runDialogAt): Add declaration of
4049 timer_check() to avoid crash on Leopard/PPC. Bug #2154.
4050
4051 2009-08-21 Stefan Monnier <monnier@iro.umontreal.ca>
4052
4053 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 500 for js.el.
4054
4055 2009-08-20 Michael Albinus <michael.albinus@gmx.de>
4056
4057 * dbusbind.c (XD_WITH_DBUS_WATCH_GET_UNIX_FD): New macro.
4058 (xd_add_watch, xd_remove_watch): Use it. Print debug messages.
4059 (xd_initialize, xd_pending_messages): Check, whether
4060 $DBUS_SESSION_BUS_ADDRESS is set.
4061
4062 2009-08-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4063
4064 * nsfns.m (Fxw_color_values): Return 3-element list. Doc fix.
4065
4066 * nsterm.m (ns_get_color): Remove incompatible color formats again.
4067
4068 2009-08-20 Glenn Morris <rgm@gnu.org>
4069
4070 * emacs.c (system-type): Doc fix.
4071
4072 2009-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
4073
4074 * keyboard.c (syms_of_keyboard): Default to 5 buttons, which should be
4075 enough for the most common situations. Avoid SET_SYMBOL_VALUE.
4076
4077 2009-08-18 Michael Albinus <michael.albinus@gmx.de>
4078
4079 * dbusbind.c (xd_add_watch, xd_remove_watch, Fdbus_init_bus):
4080 New functions.
4081 (xd_initialize): Revert change from 2009-08-16.
4082
4083 2009-08-18 Kenichi Handa <handa@m17n.org>
4084
4085 * fontset.c (Ffontset_font): If a nil element is found in a
4086 font-group vector, return nil.
4087
4088 2009-08-17 Chong Yidong <cyd@stupidchicken.com>
4089
4090 * process.c (status_notify): Don't perform redisplay.
4091 (Fdelete_process, list_processes_1, process_send_signal):
4092 Expliticly perform redisplay.
4093 (wait_reading_process_output): Always check process status, but
4094 don't perform redisplay unless DO_DISPLAY is non-zero (Bug#2930).
4095
4096 2009-08-17 Ken Raeburn <raeburn@raeburn.org>
4097
4098 * lisp.h (XFLOAT_DATA): Produce an rvalue by adding 0 to the value.
4099 (XFLOAT_INIT): New macro for storing a float value.
4100 * alloc.c (make_float, make_pure_float): Use XFLOAT_INIT.
4101 * fns.c (sxhash): Copy out the value of a float in order to
4102 examine its bytes.
4103 * dbusbind.c (xd_append_arg): Likewise.
4104
4105 * emacs.c (main): Don't call syms_of_data twice.
4106
4107 2009-08-16 Michael Albinus <michael.albinus@gmx.de>
4108
4109 * dbusbind.c (xd_initialize): Add connection file descriptor to
4110 input_wait_mask, in order to let select() detect, whether a new
4111 message has been arrived.
4112 (Fdbus_call_method_asynchronously): Allow nil HANDLER.
4113
4114 2009-08-15 Michael Albinus <michael.albinus@gmx.de>
4115
4116 * dbusbind.c (xd_get_dispatch_status, xd_pending_messages):
4117 New functions.
4118
4119 * lisp.h (xd_pending_messages): Declare.
4120
4121 * keyboard.c (readable_events): Call xd_pending_messages.
4122
4123 2009-08-15 Chong Yidong <cyd@stupidchicken.com>
4124
4125 * eval.c (Fcalled_interactively_p, Finteractive_p): Doc fix (Bug#3936).
4126
4127 * xdisp.c (pop_it): Don't pop into a display vector (Bug#4131).
4128
4129 * buffer.c (set_buffer_internal_1)
4130 (swap_out_buffer_local_variables): Check for unbound local
4131 variables (Bug#4138).
4132
4133 2009-08-14 Eli Zaretskii <eliz@gnu.org>
4134
4135 * process.c (create_pty): Fix last change.
4136
4137 2009-08-13 Chong Yidong <cyd@stupidchicken.com>
4138
4139 * image.c (xbm_read_bitmap_data): New arg inhibit_image_error.
4140 (xbm_load_image): Caller changed.
4141 (xbm_file_p): Avoid signalling an image_error (Bug#4107).
4142
4143 2009-08-13 Nick Roberts <nickrob@snap.net.nz>
4144
4145 * process.c (create_pty): New function.
4146 (Fstart_process): Use it to allow Emacs to just associate a pty
4147 with the buffer. See associated change in gdb-mi.el.
4148 (list_processes_1): Deal with no program name.
4149 (start_process_unwind): Use pid == -2 to mean no process.
4150
4151 2009-08-12 Stefan Monnier <monnier@iro.umontreal.ca>
4152
4153 * cmds.c (nonundocount): New global variable.
4154 (keys_of_cmds): Initialize it.
4155 (Fself_insert_command): Use it to combine upto 20 sequential chars
4156 into a single undo entry, just like the Qself_insert_command code in
4157 keyboard.c does.
4158 Call frame_make_pointer_invisible, also like the Qself_insert_command
4159 code in keyboard.c does.
4160 * keyboard.c (command_loop_1): Use the new global nonundocount rather
4161 than its own local replacement for it.
4162
4163 2009-08-10 Ken Raeburn <raeburn@raeburn.org>
4164
4165 * fns.c (concat): Don't re-set string length to its current value.
4166
4167 * coding.h (decode_coding_string, encode_coding_string):
4168 Use SBYTES macro.
4169
4170 * doprnt.c (doprnt_lisp): Delete unused function.
4171 (doprnt): Merge with doprnt1, discarding lispstrings code.
4172 * lisp.h (doprnt_lisp): Don't declare.
4173
4174 2009-08-07 Juri Linkov <juri@jurta.org>
4175
4176 * puresize.h (BASE_PURESIZE): Increase to 1270000.
4177
4178 2009-08-07 Dan Nicolaescu <dann@ics.uci.edu>
4179
4180 * print.c (syms_of_print): Undo previous change.
4181
4182 2009-08-05 Teodor Zlatanov <tzz@lifelogs.com>
4183
4184 * lread.c (read1, syms_of_lread): Read hashtables back from the
4185 readable format.
4186
4187 * print.c (print_preprocess, print_object): Print hashtables fully
4188 and readably.
4189 (syms_of_print): Provide 'hashtable-print-readable.
4190
4191 2009-08-02 Adrian Robert <Adrian.B.Robert@gmail.com>
4192
4193 * nsfont.m (ns_descriptor_to_entity): Handle case when descriptor has
4194 no family set.
4195 (nsfont_open): Handle case when entity has no family.
4196
4197 2009-07-29 Adrian Robert <Adrian.B.Robert@gmail.com>
4198
4199 * nsfont.m (ns_findfonts): Fix 2009-07-24 change to return only one
4200 element, not a list, for match case.
4201
4202 2009-07-28 Kenichi Handa <handa@m17n.org>
4203
4204 * font.c (font_parse_xlfd): Check DPI and AVGWIDTH properties more
4205 rigidly.
4206
4207 * xfont.c (xfont_list_pattern): Don't ignore the return value of
4208 font_parse_xlfd. Check font properties more rigidly.
4209
4210 2009-07-27 Dan Nicolaescu <dann@ics.uci.edu>
4211
4212 * s/netbsd.h (SIGNALS_VIA_CHARACTERS): Remove, already defined in
4213 bsd-common.h.
4214
4215 2009-07-27 Kenichi Handa <handa@m17n.org>
4216
4217 * xfaces.c (face_with_height): Call font_clear_prop.
4218
4219 2009-07-26 Chong Yidong <cyd@stupidchicken.com>
4220
4221 * dispnew.c (init_display): Use Qx, Qw32, and Qns.
4222
4223 * xterm.c (x_term_init): Use Qx.
4224
4225 * nsfont.m (nsfont_draw): Revert 2009-07-15 change.
4226
4227 * nsterm.m (ns_maybe_dumpglyphs_background): Revert 2009-07-15 change.
4228 (ns_get_color): Revert 2009-07-16 change.
4229
4230 2009-07-25 Eli Zaretskii <eliz@gnu.org>
4231
4232 * lread.c (syms_of_lread) <force_load_messages>: New variable.
4233 (Fload): Use it to force load messages, even if NOMESSAGES is non-nil.
4234
4235 2009-07-25 Ken Raeburn <raeburn@raeburn.org>
4236
4237 * coding.h (decode_coding_string, encode_coding_string):
4238 Use SCHARS macro.
4239
4240 * lread.c: Rewrite 2009-07-21 changes.
4241 (load_depth): Delete.
4242 (Qload_in_progress): New variable.
4243 (load_unwind): Don't reference load_depth or load_in_progress.
4244 (Fload): Likewise; specbind Qload_in_progress instead.
4245 (init_lread): Don't initialize load_depth.
4246 (syms_of_lread): Initialize and protect Qload_in_progress.
4247
4248 2009-07-24 Adrian Robert <Adrian.B.Robert@gmail.com>
4249
4250 * nsfont.m (ns_findfonts): Correctly return fallback in match case.
4251
4252 2009-07-23 Yavor Doganov <yavor@gnu.org>
4253
4254 * nsfont.m (NSFontDescriptor.h): Explicitly include under GNUstep.
4255
4256 2009-07-23 Adrian Robert <Adrian.B.Robert@gmail.com>
4257
4258 * nsterm.m (EmacsView-keyUp:): Only act when running under Tiger.
4259 Bugs 3792, 3720, 2402.
4260 (ns_lookup_indexed_color): Check for bad index.
4261 (ns_index_color): Init unused slot to 0.
4262 (ns_dumpglyphs_box_or_relief): Replace useless xassert with an if().
4263 Bug 3714, possibly 3082.
4264
4265 2009-07-22 Jason Rumney <jasonr@gnu.org>
4266
4267 * w32fns.c (w32_wnd_proc) [WM_IME_STARTCOMPOSITION]:
4268 Position IME window at cursor (Bug#2570).
4269 (w32_wnd_proc) [WM_IME_CHAR]: Release context when finished.
4270 (globals_of_w32fns): Dynamically load functions required above.
4271
4272 * w32term.c (w32_draw_window_cursor): Send message to reposition
4273 any IME window.
4274
4275 2009-07-21 Chong Yidong <cyd@stupidchicken.com>
4276
4277 * fileio.c: Revert 2009-07-16 changes.
4278 (Vauto_save_include_big_deletions): New variable.
4279 (Fdo_auto_save): Disable auto-save only if
4280 auto-save-include-big-deletions is nil.
4281
4282 2009-07-21 Chong Yidong <cyd@stupidchicken.com>
4283
4284 * xdisp.c (move_it_to): For continued lines ending in a tab, take
4285 the overflowed pixels into account (Bug#3879).
4286
4287 2009-07-21 Ken Raeburn <raeburn@raeburn.org>
4288
4289 * lread.c (load_depth): New variable.
4290 (Fload, load_unwind, init_lread): Set it to the load recursion
4291 depth; set load_in_progress as a simple boolean based on the
4292 current load_depth. (Bug#3892)
4293
4294 2009-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
4295
4296 * nsfont.m (ns_has_attribute): Remove.
4297 (ns_findfonts, nsfont_open): Use ns_attribute_fvalue() instead.
4298
4299 2009-07-18 Juri Linkov <juri@jurta.org>
4300
4301 * process.c (Fset_process_query_on_exit_flag): Mention killing
4302 a buffer in docstring.
4303
4304 2009-07-17 Kenichi Handa <handa@m17n.org>
4305
4306 * casetab.c (shuffle): Fix the logic of setting up the cycle.
4307
4308 2009-07-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4309
4310 * nsfns.m (Fns_set_alpha): Remove function.
4311 (syms_of_nsfns): Don't defsubr it.
4312
4313 * nsterm.m (ns_get_color): Remove incompatible color formats.
4314 (ns_color_to_lisp): Generate #rrggbb color format string.
4315
4316 2009-07-16 Richard Stallman <rms@gnu.org>
4317
4318 * fileio.c (Fwrite_region, Fdo_auto_save): Handle save_length = -2.
4319 (Fset_buffer_auto_saved): Handle save_length = -2.
4320
4321 2009-07-16 Chong Yidong <cyd@stupidchicken.com>
4322
4323 * xterm.c (Qx_gtk_map_stock): New var.
4324
4325 * gtkutil.c (update_frame_tool_bar): Use Qx_gtk_map_stock instead
4326 of calling intern each time.
4327
4328 2009-07-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4329
4330 * nsfont.m (nsfont_draw): Remove code for stippling, which actually
4331 does tiling.
4332
4333 * nsterm.m (ns_maybe_dumpglyphs_background): Likewise.
4334
4335 2009-07-14 Kenichi Handa <handa@m17n.org>
4336
4337 * font.c (font_vconcat_entity_vectors): New function.
4338 (struct font_sort_data): New member font_driver_preference.
4339 (font_compare): Check font_driver_preference.
4340 (font_sort_entities): The format of the first argument changed.
4341 (font_delete_unmatched): Likewise.
4342 (font_list_entities): The return type changed.
4343 (font_select_entity): The format of the second argument changed.
4344 (font_find_for_lface): Adjuste for the above changes.
4345 Don't suppress the checking of C even if the repertory supports it.
4346 (Flist_fonts): Adjust for the above changes.
4347
4348 * ftfont.c (ftfont_spec_pattern): New arg langname. Change caller.
4349 (ftfont_list): Adjust for the change of ftfont_spec_pattern.
4350 Reject a font who has adstyle property that is different from a
4351 langname derived from registry property.
4352 (ftfont_match): Adjust for the change of ftfont_spec_pattern.
4353
4354 2009-07-13 Eli Zaretskii <eliz@gnu.org>
4355
4356 * dired.c (directory_files_internal) [WINDOWSNT]: Don't make a
4357 local copy of dirfilename.
4358
4359 2009-07-13 Kenichi Handa <handa@m17n.org>
4360
4361 * chartab.c (sub_char_table_ref_and_range): Fix the range check
4362 against max_char.
4363
4364 * cmds.c (internal_self_insert): Check sym by SYMBOLP before
4365 calling XSYMBOL (sym).
4366
4367 2009-07-11 Eli Zaretskii <eliz@gnu.org>
4368
4369 * dired.c (directory_files_internal_w32_unwind) [WINDOWSNT]:
4370 New function.
4371 (directory_files_internal) [WINDOWSNT]:
4372 Bind w32-get-true-file-attributes to either t or nil, depending whether
4373 the filesystem of the directory is fast or slow.
4374
4375 * w32.c (logon_network_drive): Don't assume PATH is an absolute
4376 file name.
4377 (is_slow_fs): New function.
4378 (stat): Use it to determine whether to issue more system calls to
4379 get accurate file attributes, when w32-get-true-file-attributes is
4380 `local'.
4381
4382 2009-07-10 Jan Djärv <jan.h.d@swipnet.se>
4383
4384 * xfns.c (Fx_select_font): Remember last font selected in
4385 x_last_font_name and use that the next time. Also try the frame
4386 parameter font-parameter as default to the font dialog.
4387
4388 2009-07-10 Kenichi Handa <handa@m17n.org>
4389
4390 * xftfont.c (xftfont_open): Fix typo: FC_RGBA->FC_HINT_STYLE.
4391
4392 2009-07-09 Eli Zaretskii <eliz@gnu.org>
4393
4394 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
4395
4396 * w32.c (stat): Treat UNC file names as residing on remote
4397 drives. (Bug#3542)
4398
4399 2009-07-09 Kenichi Handa <handa@m17n.org>
4400
4401 * fontset.c (fontset_find_font): Fix previous change.
4402
4403 2009-07-08 Michael Albinus <michael.albinus@gmx.de>
4404
4405 * dbusbind.c (xd_initialize, Fdbus_call_method, xd_read_message)
4406 (Fdbus_register_signal, Fdbus_register_method): Cleanup memory of
4407 error flag.
4408
4409 2009-07-08 Kenichi Handa <handa@m17n.org>
4410
4411 * fontset.c (fontset_find_font): Fix the logic of handling
4412 charset_matched.
4413 (font_for_char): Delete unused var.
4414 (generate_ascii_font_name): Delete it.
4415
4416 * coding.h (JIS_TO_SJIS2): Fix the code range check.
4417
4418 * coding.c (detect_coding_sjis): Handle shift_jis-2004 correctly.
4419 (encode_coding_sjis): Fix the code range check.
4420
4421 2009-07-07 Chong Yidong <cyd@stupidchicken.com>
4422
4423 * fileio.c (Fsubstitute_in_file_name, Ffile_name_directory)
4424 (Fexpand_file_name): Copy string data properly (Bug#3772).
4425
4426 2009-07-07 Jan Djärv <jan.h.d@swipnet.se>
4427
4428 * xterm.c (handle_one_xevent): Only call x_check_fullscreen on the
4429 first MapNotify.
4430
4431 2009-07-07 Kenichi Handa <handa@m17n.org>
4432
4433 * character.h (unibyte_has_multibyte_table): Delete extern.
4434 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): Delete it.
4435
4436 * charset.c (Fset_charset_priority): Update charset_unibyte.
4437 (syms_of_charset): Initialize charset_unibyte.
4438
4439 * character.c (unibyte_has_multibyte_table): Delete it.
4440 (multibyte_char_to_unibyte): Use CHAR_TO_BYTE8 instead of checking
4441 charset_unibyte.
4442 (multibyte_char_to_unibyte_safe): Likewise.
4443 (Funibyte_char_to_multibyte): Don't check charset_unibyte.
4444
4445 * xdisp.c (get_next_display_element): Decode it->c by charset_unibyte.
4446 (x_produce_glyphs): Likewise.
4447
4448 * .gdbinit (xcharset): Fix the treating $arg0.
4449
4450 2009-07-04 Eli Zaretskii <eliz@gnu.org>
4451
4452 Emulation of `getloadavg' on MS-Windows.
4453 * w32.c: Include float.h.
4454 (g_b_init_get_native_system_info, g_b_init_get_system_times)
4455 (GetNativeSystemInfo_Proc, GetSystemTimes_Proc): Declare.
4456 (get_native_system_info, get_system_times): New functions.
4457 (buf_next, buf_prev, sample_system_load, getavg): New subroutines.
4458 (getloadavg): Rewrite using GetSystemTimes and GetNativeSystemInfo.
4459 (globals_of_w32): Initialize g_b_init_get_native_system_info,
4460 g_b_init_get_system_times, and num_of_processors.
4461
4462 2009-07-03 Jason Rumney <jasonr@gnu.org>
4463
4464 * w32term.c (w32_initialize): Use standard types.
4465
4466 2009-07-03 Eli Zaretskii <eliz@gnu.org>
4467
4468 * dired.c (Ffile_attributes): Decode user and group names by the
4469 locale's encoding. (Bug#3443)
4470
4471 2009-07-03 Dan Nicolaescu <dann@ics.uci.edu>
4472
4473 * sysdep.c (sys_suspend): Remove USG_JOBCTRL #ifdef, unused.
4474 (mkdir): Remove MKDIR_PROTOTYPE #ifdef, unused.
4475
4476 * callproc.c (child_setup): Use #else instead of a separate #ifdef.
4477
4478 * term.c (init_tty): Remove spurious #ifdef.
4479
4480 * m/mips.h: Mention this file is also used for netbsd.
4481 * m/pmax.h: Remove file.
4482
4483 2009-07-03 Jan Djärv <jan.h.d@swipnet.se>
4484
4485 * xterm.h (struct x_display_info): Add invisible_cursor.
4486 (struct x_output): Add current_cursor.
4487
4488 * xterm.c (XTtoggle_invisible_pointer): New function.
4489 (x_define_frame_cursor): Don't define cursor if invisible or the
4490 same as before. Set current_cursor.
4491 (x_create_terminal): Set toggle_invisible_pointer_hook.
4492
4493 * xfns.c (make_invisible_cursor): New function.
4494 (x_set_mouse_color): Call make_invisible_cursor.
4495 Set current_cursor.
4496 (x_window): Set current_cursor.
4497
4498 * termhooks.h (struct terminal): Add toggle_invisible_pointer_hook.
4499
4500 * keyboard.c (command_loop_1): Call frame_make_pointer_invisible after
4501 inserting a character.
4502 (read_avail_input): Call frame_make_pointer_visible.
4503
4504 * frame.c (Vmake_pointer_invisible): New variable.
4505 (frame_make_pointer_invisible, frame_make_pointer_visible):
4506 New functions.
4507 (syms_of_frame): DEFVAR make-pointer-invisible, initialize to Qt.
4508
4509 * frame.h: Declare frame_make_pointer_invisible and
4510 frame_make_pointer_visible.
4511 (struct frame): Add pointer_invisible.
4512
4513 2009-07-02 Jan Djärv <jan.h.d@swipnet.se>
4514
4515 * gtkutil.c (xg_frame_set_char_size): Do set width/height if the
4516 frame isn't visible.
4517 (xg_frame_resized): If width/height is -1, get size of window
4518 from X server.
4519
4520 * xterm.c (handle_one_xevent): Call xg_frame_resized for USE_GTK
4521 for MapNotify.
4522
4523 * gtkutil.c (xg_frame_set_char_size): Do not set pixel width/height
4524 here or call change_frame_size. Just call flush_and_sync.
4525 (flush_and_sync): Reintroduce.
4526
4527 2009-07-01 Jan Djärv <jan.h.d@swipnet.se>
4528
4529 * xterm.h (struct x_display_info): Add Xatom_net_wm_state_sticky.
4530
4531 * xterm.c (x_handle_net_wm_state): Also look for sticky.
4532 (x_term_init): Initialize Xatom_net_wm_state_sticky.
4533
4534 * frame.h: Declare Qsticky.
4535
4536 * w32fns.c (w32_frame_parm_handlers): Set 0 for sticky.
4537
4538 * nsfns.m (ns_frame_parm_handlers): Ditto.
4539
4540 * frame.c: Declare Qsticky.
4541 (frame_parms): Add sticky.
4542
4543 * xfns.c (x_frame_parm_handlers): Let x_set_sticky handle sticky.
4544
4545 * xterm.h: Declare x_set_sticky.
4546
4547 * xterm.c (x_set_sticky): New function.
4548
4549 * gtkutil.c (xg_tool_bar_proxy_help_callback): New function.
4550 (xg_tool_bar_menu_proxy): Attach enter/leave events to
4551 xg_tool_bar_proxy_help_callback.
4552
4553 * emacs.c (USAGE3, standard_args): Add -mm and --maximized.
4554
4555 * frame.c: Qmaximized is new.
4556 (x_set_frame_parameters): Do not handle fullscreen specially.
4557 Only set width and height if explicitly set.
4558 (x_set_fullscreen): Handle Qmaximized.
4559 (x_set_font, x_figure_window_size): Do not handle fullscreen specially.
4560 (syms_of_frame): Initialize Qmaximized.
4561
4562 * frame.h (fullscreen_type): Add FULLSCREEN_MAXIMIZED.
4563 Declare Qfullwidth, Qfullheight, Qfullboth, Qmaximized.
4564
4565 * xterm.c (handle_one_xevent): Remove call to x_check_fullscreen
4566 for Expose event. Add call to x_check_fullscreen for MapNotify event.
4567 Remove all code w.r.t. fullscreen from ConfigureNotify event. Do not
4568 set gravity to NorthWestGravity when USE_GTK.
4569 (set_wm_state): New function.
4570 (do_ewmh_fullscreen): Use set_wm_state. Also handle FULLSCREEN_MAXIMIZED.
4571 (x_handle_net_wm_state): Handle FULLSCREEN_MAXIMIZED.
4572 (x_check_fullscreen): Simplify so we only handle EMWH type of fullscreen
4573 or the case when no window manager is running. That means remove calls
4574 to x_real_positions and x_fullscreen_adjust.
4575
4576 * gtkutil.c (flush_and_sync, x_wm_size_hint_off): Remove.
4577 (xg_frame_set_char_size): Remove calls to x_wm_size_hint_off and
4578 flush_and_sync.
4579 (xg_height_changed): New function.
4580 (xg_create_frame_widgets): Remove call to gtk_widget_set_size_request
4581 and gtk_window_set_policy. Set frame gravity after parsing the
4582 geometry string.
4583 (xg_update_frame_menubar, free_frame_menubar)
4584 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
4585 (update_frame_tool_bar, free_frame_tool_bar): Call xg_height_changed.
4586 Remove calls to xg_frame_set_char_size.
4587
4588 2009-07-01 Kenichi Handa <handa@m17n.org>
4589
4590 * keyboard.c (decode_keyboard_code): New function.
4591 (tty_read_avail_input): Decode the input bytes if necessary.
4592
4593 * coding.c (setup_coding_system):
4594 Initialize coding->carryover_bytes to 0.
4595 (Fset_keyboard_coding_system_internal): If CODING-SYSTEM is nil,
4596 use Qno_conversion.
4597
4598 2009-07-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4599
4600 * Makefile.in (SOME_MACHINE_LISP): Add ../lisp/term/common-win.elc.
4601
4602 2009-06-30 Chong Yidong <cyd@stupidchicken.com>
4603
4604 * xftfont.c (xftfont_open): Avoid passing NULL argument to XftLockFace.
4605
4606 2009-06-30 Jason Rumney <jasonr@gnu.org>
4607
4608 * w32term.c (w32_initialize): Use GetModuleHandle for library that
4609 is already loaded.
4610 Set user model ID if supported (bug#1849).
4611
4612 2009-06-29 Jim Meyering <meyering@redhat.com>
4613
4614 Remove useless if-before-xfree test.
4615 * nsfont.m (nsfont_close): Remove useless test.
4616 * term.c (delete_tty): Likewise.
4617 * w32.c (system_process_attributes): Likewise.
4618 * w32font.c (w32font_close): Likewise.
4619 * xfaces.c (x_free_gc): Likewise.
4620 * xselect.c (buffer): Likewise.
4621
4622 2009-06-28 Andreas Schwab <schwab@linux-m68k.org>
4623
4624 * process.c (send_process): Keep decoded string in a local
4625 variable and protect it from GC. (Bug#3521)
4626
4627 2009-06-28 Eli Zaretskii <eliz@gnu.org>
4628
4629 * term.c (create_tty_output) [MSDOS]: #ifdef away.
4630 (tty_free_frame_resources) [MSDOS]: Add a DOS-specific version.
4631
4632 2009-06-28 Chong Yidong <cyd@stupidchicken.com>
4633
4634 * xdisp.c (start_display, handle_face_prop)
4635 (move_it_vertically_backward, cursor_row_fully_visible_p)
4636 (redisplay_window, try_window_id, produce_image_glyph):
4637 Delete some #ifdef-ed out code chunks that are now obsolete.
4638
4639 * xterm.c (x_update_window_begin, x_new_focus_frame)
4640 (x_scroll_bar_handle_click, handle_one_xevent)
4641 (handle_one_xevent, XTread_socket, x_focus_on_frame)
4642 (x_make_frame_visible, x_make_frame_invisible)
4643 (x_wm_set_icon_pixmap, x_initialize): Delete some #ifdef-ed out
4644 code chunks that are now obsolete.
4645
4646 2009-06-28 Michael Albinus <michael.albinus@gmx.de>
4647
4648 * dbusbind.c (XD_SYMBOL_TO_DBUS_TYPE): Convert macro into function
4649 xd_symbol_to_dbus_type. With Solaris 2.11, it was said to compile
4650 for hours, when optimzation is enabled.
4651 (xd_signature, xd_append_arg, xd_retrieve_arg, xd_initialize)
4652 (xd_read_message): Make them static.
4653
4654 2009-06-27 Chuck Blake <cblake@pdos.csail.mit.edu> (tiny change)
4655
4656 * term.c (turn_on_face): Allow simultaneously bold and dim
4657 terminal faces (Bug#3530).
4658
4659 2009-06-27 Chong Yidong <cyd@stupidchicken.com>
4660
4661 * frame.c (x_get_arg): Check if dpyinfo is non-NULL.
4662
4663 * xdisp.c (mouse_face_from_buffer_pos): Fix detection of
4664 truncation glyphs (Bug#3686).
4665
4666 2009-06-27 Glenn Morris <rgm@gnu.org>
4667
4668 * m/pmax.h: Restore file, with only netbsd portions.
4669
4670 2009-06-26 David Reitter <david.reitter@gmail.com>
4671
4672 * nsterm.m (keydown): Avoid infinite loop.
4673
4674 2009-06-26 Peter Jolly <peter@jollys.org> (tiny change)
4675
4676 * ftfont.c (get_adstyle_property): Call font_intern_prop with 1 as
4677 the arg FORCE_SYMBOL.
4678
4679 2009-06-25 Kenichi Handa <handa@m17n.org>
4680
4681 * fontset.c (fontset_find_font): When a usable rfont_def is found
4682 in a fallback font-group, make it the first element of the group.
4683
4684 2009-06-24 Chong Yidong <cyd@stupidchicken.com>
4685
4686 * emacs-icon.h: Always define gnu_xpm_bits on GTK (bug#3671).
4687
4688 2009-06-24 Kenichi Handa <handa@m17n.org>
4689
4690 * fontset.c (fontset_get_font_group): Return 0 if no font-group is
4691 set for C.
4692 (fontset_font): Record the availability of a font for C both in
4693 the realized fontsets of the current one and the default one.
4694
4695 2009-06-23 Dan Nicolaescu <dann@ics.uci.edu>
4696
4697 * sysdep.c (child_setup_tty): Remove SIGNALS_VIA_CHARACTERS
4698 conditional, it is always defined on AIX.
4699
4700 2009-06-23 Miles Bader <miles@gnu.org>
4701
4702 * window.c (Vrecenter_redisplay): New variable.
4703 (syms_of_window): Initialize it.
4704 (Qtty): New extern declaration.
4705 (Frecenter): Only do redisplay if Vrecenter_redisplay requests it.
4706
4707 2009-06-23 Jim Meyering <meyering@redhat.com>
4708
4709 * src/ftfont.c (setup_otf_gstring, ftfont_shape_by_flt):
4710 Use xmalloc and xrealloc (not malloc and realloc), so subsequent heap
4711 pointer dereferences are guaranteed to be valid.
4712
4713 2009-06-23 Kenichi Handa <handa@m17n.org>
4714
4715 * emacs.c (main): Call init_font ().
4716
4717 * font.h (Vfont_log): Extern it.
4718 (FONT_ADD_LOG, FONT_DEFERRED_LOG): New macros.
4719
4720 * font.c (font_sort_entities, font_list_entities)
4721 (font_matching_entity, font_open_entity)
4722 (font_close_object): Change font_add_log to FONT_ADD_LOG.
4723 (Vfont_log): Delete static.
4724 (font_log_env_checked): Delete this variable.
4725 (font_add_log): Don't check font_log_env_checked.
4726 (font_deferred_log): Check Vfont_log.
4727 (init_font): New function.
4728
4729 * ftfont.c: Change font_add_log to FONT_ADD_LOG.
4730
4731 * w32font.c: Change font_add_log to FONT_ADD_LOG.
4732
4733 * w32uniscribe.c: Change font_add_log to FONT_ADD_LOG.
4734
4735 * xfont.c: Change font_add_log to FONT_ADD_LOG.
4736
4737 * fontset.c (fontset_font): Call FONT_DEFERRED_LOG.
4738 (face_for_char): Don't call font_deferred_log here.
4739 (font_for_char): Likewise.
4740
4741 2009-06-22 Chong Yidong <cyd@stupidchicken.com>
4742
4743 * w32term.c (x_draw_glyph_string): Use the glyph string's width
4744 rather than its background_width for drawing the overline and
4745 underline (Bug#489).
4746
4747 * xterm.c (x_draw_glyph_string): Use the glyph string's width
4748 rather than its background_width for drawing the overline and
4749 underline (Bug#489).
4750 (xg_default_icon_file): New variable.
4751 (syms_of_xterm): Initialize it to the Emacs SVG icon file.
4752 (x_bitmap_icon): Under GTK, use xg_default_icon_file.
4753
4754 * xdisp.c (Qbefore_string, Qafter_string): Add externs.
4755 (load_overlay_strings): Remove externs.
4756 (fast_find_position): Function deleted.
4757 (mouse_face_from_buffer_pos): New function, based on
4758 fast_find_position. Correctly handle before-strings,
4759 display-strings, and after-strings (Bug#1220).
4760 (note_mouse_highlight): Use mouse_face_from_buffer_pos.
4761
4762 2009-06-21 Chong Yidong <cyd@stupidchicken.com>
4763
4764 * xdisp.c (IT_DISPLAYING_WHITESPACE): Define for !HAVE_WINDOW_SYSTEM.
4765 (move_it_in_display_line_to, move_it_in_display_line_to)
4766 (display_line): Remove #ifdef HAVE_WINDOW_SYSTEM.
4767
4768 2009-06-21 Chong Yidong <cyd@stupidchicken.com>
4769
4770 * Branch for 23.1.
4771
4772 2009-06-21 Jason Rumney <jasonr@gnu.org>
4773
4774 * w32term.c (keyboard_codepage): New static variable.
4775 (w32_read_socket) [WM_INPUTLANGCHANGE]: Update it.
4776 (w32_read_socket) [WM_CHAR]: Use it to decode character
4777 input (bug#3237).
4778 (w32_initialize): Initialize it.
4779 (codepage_for_locale): New function.
4780
4781 2009-06-20 Ken Raeburn <raeburn@raeburn.org>
4782
4783 * process.c (status_message): Pass Faset index argument as a lisp
4784 object, so as to work with USE_LISP_UNION_TYPE.
4785
4786 2009-06-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4787
4788 * coding.c (Ffind_coding_systems_region_internal):
4789 Cache checked characters.
4790
4791 2009-06-18 Kenichi Handa <handa@m17n.org>
4792
4793 * coding.c (decode_coding_iso_2022): Check MSB of bytes more rigidly.
4794
4795 2009-06-18 Andreas Schwab <aschwab@redhat.com>
4796
4797 * xdisp.c (redisplay_internal): Check that the frame is still
4798 live after redisplay of its windows.
4799 (redisplay_windows): Check that the window is still live.
4800
4801 2009-06-17 Andreas Schwab <schwab@linux-m68k.org>
4802
4803 * coding.c (detect_coding_utf_16): Fix previous change.
4804
4805 2009-06-16 Kenichi Handa <handa@m17n.org>
4806
4807 * coding.c (detect_coding_utf_16): Fix the logic of rejecting
4808 UTF-16 by checking the dispersion of Eth and Oth bytes.
4809
4810 2009-06-15 Andreas Schwab <schwab@linux-m68k.org>
4811
4812 * coding.c (detect_coding_utf_16): Fix typo counting odd bytes.
4813
4814 2009-06-15 Kenichi Handa <handa@m17n.org>
4815
4816 * process.c (status_message): Fix previous change. Be sure to
4817 decode a localized string.
4818
4819 2009-06-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4820
4821 * xterm.c (x_delete_terminal): Put previous change in #if 0 and
4822 add comment explaining why.
4823
4824 2009-06-14 Sidney Markowitz <sidney@sidney.com>
4825
4826 * nsmenu.m (EmacsTooltip: setText): Set height of tooltip.
4827
4828 2009-06-14 Adrian Robert <Adrian.B.Robert@gmail.com>
4829
4830 * nsfont.m (ns_attribute_value): Remove.
4831 (ns_attribute_fvalue): Incorporate code from ns_attribute_value.
4832 (ns_has_attribute): Shrink the normal range.
4833 (ns_findfonts): Don't worry about requested spec in determining
4834 need for synthItal.
4835 (ns_get_covering_families): Retain scriptToFamilies.
4836
4837 2009-06-14 Seiji Zenitani <zenitani@mac.com>
4838
4839 * xdisp.c [USE_MAC_TOOLBAR]: Remove obsolete definition for Mac Carbon.
4840
4841 2009-06-11 Kenichi Handa <handa@m17n.org>
4842
4843 * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
4844 overhang for the static composition case.
4845
4846 2009-06-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4847
4848 * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
4849 overhang for the automatic composition case.
4850
4851 * xterm.c (x_compute_glyph_string_overhangs): Handle the automatic
4852 composition case.
4853
4854 2009-06-10 Chong Yidong <cyd@stupidchicken.com>
4855
4856 * xdisp.c (get_next_display_element): When handling wrap-prefix
4857 and line-prefix, treat \n as a control character (bug#3502).
4858
4859 2009-06-10 Kenichi Handa <handa@m17n.org>
4860
4861 * font.c (font_parse_family_registry): Fix for one-char foundry.
4862 (font_sort_entities): Initialize prefer_prop[FONT_AVGWIDTH_INDEX].
4863
4864 2009-06-09 Dmitry Dzhus <dima@sphinx.net.ru> (tiny change)
4865
4866 * process.c (status_message): Fix handling of multibyte signal
4867 string (Bug#3499).
4868
4869 2009-06-09 Jim Meyering <meyering@redhat.com>
4870
4871 * xfaces.c (Fx_load_color_file): Avoid array bounds error if the
4872 color name is missing.
4873
4874 2009-06-09 Kenichi Handa <handa@m17n.org>
4875
4876 * charset.c (Fmap_charset_chars): In docstring, state clearly that
4877 FROM-CODE and TO-CODE are codepoints of CHARSET.
4878
4879 2009-06-08 Adrian Robert <Adrian.B.Robert@gmail.com>
4880
4881 * nsterm.m (ns_use_system_highlight_color): Drop, unused.
4882
4883 2009-06-08 Adrian Robert <Adrian.B.Robert@gmail.com>
4884
4885 Changes to support :script/:lang/:otf in NS font driver.
4886 * nsfont.m (nsfont_escape_name, nsfont_unescape_name)
4887 (nsfont_get_family, nsfont_char_width): Rename to ns_ prefix to
4888 indicate not part of font driver interface, and change callers.
4889 (ns_get_family): Remove pointless null check.
4890 (nsfont_spec_to_traits, nsfont_fmember_to_entity): Replace with
4891 ns_spec_to_descriptor, ns_descriptor_to_entity.
4892 (nsfont_trait_distance, nsfont_make_fontset_for_font): Remove.
4893 (ns_attribute_value, ns_attribute_fvalue, ns_has_attribute)
4894 (ns_spec_to_descriptor, ns_descriptor_to_entity)
4895 (ns_charset_covers, ns_lang_to_script, ns_otf_to_script)
4896 (ns_get_req_script, ns_accumulate_script_ranges)
4897 (ns_script_to_charset, ns_get_covering_families, ns_findfonts):
4898 New functions.
4899 (nsfont_list, nsfont_match): Use ns_findfonts.
4900 (nsfont_open): Use font descriptor instead of traits.
4901 (nsfont_draw): Handle "automatic" (lookup-table) compositions.
4902 (dump_glyphstring): Rename to ns_dump_glyphstring.
4903
4904 * nsterm.h (dump_glyphstring): Rename to ns_dump_glyphstring.
4905
4906 * nsfns.m (Fns_popup_font_panel): Use shared font manager.
4907
4908 * fontset.c (fontset_from_font): Remove NS-specific code.
4909
4910 2009-06-08 Peter Jones <pjones@pmade.com> (tiny change)
4911
4912 * nsterm.m (ns_draw_window_cursor): Respect cursor_type for
4913 nonactive windows.
4914
4915 2009-06-08 Felix Mueller <felix@enqueue.eu> (tiny change)
4916
4917 * nsterm.m (ns_init_paths): Append path separator to INFOPATH variable.
4918
4919 2009-06-08 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
4920
4921 * keyboard.c (kbd_buffer_get_event): Null-check used_mouse_menu.
4922
4923 2009-06-07 Chong Yidong <cyd@stupidchicken.com>
4924
4925 * xdisp.c (move_it_in_display_line_to): On text-only terminals,
4926 account for the overflowing of newlines into the last glyph on the
4927 display line (Bug#3482).
4928
4929 2009-06-05 David Reitter <david.reitter@gmail.com>
4930
4931 * nsselect.m (Fx_own_selection_internal, Fx_selection_exists_p)
4932 (Fx_selection_owner_p): Rename from Fns_own_selection_internal,
4933 Fns_selection_exists_p, Fns_selection_owner_p.
4934
4935 2009-06-03 Jason Rumney <jasonr@gnu.org>
4936
4937 * w32fns.c (x_create_tip_frame): Use the uniscribe font backend if
4938 available. (Bug#3379)
4939
4940 2009-05-29 Kenichi Handa <handa@m17n.org>
4941
4942 * coding.c (get_translation_table):
4943 Check Venable_character_translation.
4944
4945 2009-05-26 David Reitter <david.reitter@gmail.com>
4946
4947 * nsterm.m (ns_raise_frame): Only raise frame if visible.
4948 (x_make_frame_visible): Move frame to front rather than calling
4949 ns_raise_frame().
4950 (keyDown:): Do not swallow events that aren't re-sent if frame
4951 isn't key window.
4952 (drawRect:): Do not set visibility/iconified flags because
4953 drawRect may be called by NSView even if the frame is hidden.
4954
4955 * nsfns.m (Fx_create_frame): Follow other ports in
4956 determining visibility; default to t. Ensure async_visible is set.
4957
4958 2009-05-23 Eli Zaretskii <eliz@gnu.org>
4959
4960 * dired.c (Ffile_attributes): Doc fix.
4961
4962 2009-05-22 Chong Yidong <cyd@stupidchicken.com>
4963
4964 * m/mips.h [GNU_LINUX]: Don't define DATA_START (Bug#2685).
4965
4966 2009-05-21 Stefan Monnier <monnier@iro.umontreal.ca>
4967
4968 * xfont.c (xfont_list_pattern): Don't initialize xfont_scripts_cache
4969 and xfont_scratch_props.
4970 (syms_of_xfont): Do it here instead.
4971 (xfont_find_ccl_program): Delete, unused.
4972 (xfont_open): Delete unused var `i'.
4973
4974 2009-05-21 Kenichi Handa <handa@m17n.org>
4975
4976 * fontset.c (Qlatin): Don't make it static.
4977
4978 * xfont.c (xfont_chars_supported, xfont_supported_scripts):
4979 New functions.
4980 (xfont_scripts_cache, xfont_scratch_props): New variables.
4981 (Qlatin, Vscalable_fonts_allowed): Extern it.
4982 (xfont_list_pattern): Argument changed. Callers changed.
4983 Check Vscalable_fonts_allowed. Check the support of a script.
4984 (xfont_list): Don't reject a font spec with :script property.
4985 (xfont_has_char): Fix setting of encoding.
4986 (syms_of_xfont): Staticpro and initialize xfont_scripts_cache and
4987 xfont_scratch_props.
4988
4989 2009-05-19 Kenichi Handa <handa@m17n.org>
4990
4991 * font.c (font_sort_entities): Rename from font_sort_entites.
4992 Callers changed.
4993
4994 2009-05-18 Kenichi Handa <handa@m17n.org>
4995
4996 * font.c (font_find_for_lface): Copy SPEC's FONT_TYPE too.
4997
4998 2009-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
4999
5000 * frame.c (do_switch_frame) [NS_IMPL_COCOA]: Don't raise any window.
5001 (delete_frame) [NS_IMPL_COCOA]: Instead, do it here.
5002
5003 2009-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5004
5005 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase here.
5006 (x_delete_terminal): Dissociate resource database from display and
5007 then call XrmDestroyDatabase before closing display.
5008
5009 2009-05-18 Adrian Robert <Adrian.B.Robert@gmail.com>
5010
5011 * nsterm.m (ns_read_socket): Remove unused variable.
5012 * frame.c (do_switch_frame): Under NS_IMPL_COCOA section, check
5013 whether selected frame is viable before raising it (based on patch
5014 by David Reitter), and improve commentary.
5015 * nsfont.m (nsfont_make_fontset_for_font): Avoid a compiler warning.
5016
5017 2009-05-15 Kenichi Handa <handa@m17n.org>
5018
5019 * font.c (Ffont_spec): Check arguments.
5020
5021 2009-05-14 Chong Yidong <cyd@stupidchicken.com>
5022
5023 * xfaces.c (tty_supports_face_attributes_p): Recognize unspecified
5024 weight when testing attributes (Bug#3282).
5025
5026 2009-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5027
5028 * gtkutil.c (xg_frame_set_char_size): Set frame pixel width/height to
5029 what we expect to get in the next ConfigureNotify event.
5030
5031 * xftfont.c (xftfont_open): Make sure that Xrender extension is added
5032 before Xft one (Bug#1696).
5033
5034 2009-05-07 David Reitter <david.reitter@gmail.com>
5035
5036 * nsfns.m (Fx_display_planes): Compute bitplanes using
5037 NSBitsPerPixelFromDepth (Bug#3207).
5038
5039 2009-05-10 Chong Yidong <cyd@stupidchicken.com>
5040
5041 * editfns.c (Ftranspose_regions): Doc fix (Bug#3248).
5042
5043 2009-05-10 Ulrich Mueller <ulm@gentoo.org>
5044
5045 * s/gnu-linux.h: Make GCPROs and UNGCPRO no-ops also on SuperH.
5046
5047 2009-05-07 David Reitter <david.reitter@gmail.com>
5048
5049 * nsterm.m (ns_dumpglyphs_stretch, ns_dumpglyphs_image):
5050 Respect mouse face background.
5051
5052 2009-05-07 David Reitter <david.reitter@gmail.com>
5053
5054 * nsterm.m (note_mouse_movement, ns_frame_up_to_date):
5055 Mouse movement/highlight: bracket drawing operations
5056 in ns_update_begin and ns_update_end.
5057
5058 2009-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
5059
5060 * nsfns.m (ns_get_screen): Rewrite.
5061 Don't presume selected-frame is of type `ns'.
5062
5063 * font.c (font_update_drivers): Sanity fallback to avoid disabling
5064 all drivers.
5065
5066 * nsterm.m (-windowDidResize:): Avoid inf-loop under GNUStep.
5067
5068 2009-05-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5069
5070 * keyboard.h (add_user_signal): Fix typo in extern.
5071
5072 * lisp.h (add_user_signal): Remove extern.
5073
5074 * unexelf.c (unexec): Consider a section to precede the .bss section
5075 if its addresses overlap that of .bss.
5076 (unexec) [NS_IMPL_GNUSTEP]: Copy ObjC-related data from old file
5077 instead of dumping process.
5078
5079 2009-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
5080
5081 * keyboard.c (syms_of_keyboard): Staticpro pending_funcalls.
5082
5083 2009-05-04 Stefan Monnier <monnier@iro.umontreal.ca>
5084
5085 * Makefile.in (ctagsfiles1, ctagsfiles2): Include ObjC files in TAGS.
5086
5087 2009-05-02 Dan Nicolaescu <dann@ics.uci.edu>
5088
5089 * xterm.c (x_handle_net_wm_state): Move declaration of lval before
5090 any statements.
5091
5092 2009-05-02 Andreas Schwab <schwab@linux-m68k.org>
5093
5094 * process.c (read_process_output): Make sure the current buffer is
5095 always restored.
5096
5097 * coding.c (record_conversion_result): Don't modify
5098 Vlast_code_conversion_error for successful result.
5099 (alloc_destination): Don't clobber conversion result. (Bug#1650)
5100
5101 2009-05-01 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
5102
5103 * charset.c (load_charset): Reformat X==Y==Z to (X==Y)==Z.
5104 (load_charset_map): Remove unnecessary code.
5105
5106 2009-04-30 David Reitter <david.reitter@gmail.com>
5107
5108 * nsterm.m (convert_ns_to_X_keysym): Define function keys f16
5109 through f24.
5110
5111 2009-04-30 Chong Yidong <cyd@stupidchicken.com>
5112
5113 * xfaces.c (face_at_buffer_position): New arg base_face_id.
5114
5115 * xdisp.c (handle_face_prop): Pass base_face_id of iterator to
5116 face_at_buffer_position.
5117 (face_before_or_after_it_pos, get_next_display_element)
5118 (note_mouse_highlight): Update face_at_buffer_position call.
5119
5120 * term.c (term_mouse_highlight):
5121 * msdos.c (IT_note_mouse_highlight):
5122 * fontset.c (Finternal_char_font):
5123 * font.c (font_at, font_range): Update face_at_buffer_position call.
5124
5125 * dispextern.h (face_at_buffer_position): Update prototype.
5126
5127 2009-04-30 Kenichi Handa <handa@m17n.org>
5128
5129 * fontset.c (fontset_find_font): Check if rfont_def is Qnil or not.
5130
5131 2009-04-29 Andreas Schwab <schwab@linux-m68k.org>
5132
5133 * callproc.c (Fcall_process): Fix GC protection. Make sure
5134 current buffer is always restored.
5135
5136 2009-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5137
5138 * atimer.c (init_atimer): Also clear stopped_atimers.
5139
5140 * keyboard.c (init_keyboard) [POLL_FOR_INPUT]: Reset poll_timer.
5141
5142 * process.c (create_process): Clean up merger residues of
5143 2008-07-17 change.
5144
5145 2009-04-29 Ulrich Mueller <ulm@gentoo.org>
5146
5147 * lread.c (Vread_circle): New variable.
5148 (read1): Disable recursive read if Vread_circle is nil.
5149
5150 2009-04-29 Kenichi Handa <handa@m17n.org>
5151
5152 * fontset.h (set_default_ascii_font): Delete extern.
5153
5154 * fontset.c (set_default_ascii_font): Delete this unused function.
5155
5156 * frame.c (x_set_font): When ARG is a font-object, check if the
5157 font-object matches with the ASCII font-spec of the frame's
5158 fontset. If not, create a new fontset for the frame. (Bug #3075)
5159
5160 2009-04-28 Andreas Schwab <schwab@linux-m68k.org>
5161
5162 * fns.c (Flocale_info): Protect vector from GC during decoding.
5163
5164 * process.c (Fstart_process): Protect argv strings from GC during
5165 encoding.
5166
5167 2009-04-27 Andreas Schwab <schwab@linux-m68k.org>
5168
5169 * sysdep.c: Include <ctype.h>.
5170
5171 2009-04-27 David Reitter <david.reitter@gmail.com>
5172
5173 * nsfont.m (nsfont_open): Remove unused variable shrink.
5174 Remove commented-out code.
5175
5176 2009-04-26 Johan Bockgård <bojohan@gnu.org>
5177
5178 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
5179
5180 2009-04-25 Jason Rumney <jasonr@gnu.org>
5181
5182 * w32font.c (clear_cached_metrics): Remove, unused since 2008-08-02.
5183
5184 2009-04-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5185
5186 * fringe.c (init_fringe_bitmap) [HAVE_X_WINDOWS && WORDS_BIG_ENDIAN]:
5187 Swap bytes in short integer if fringe bitmap width > 8.
5188
5189 2009-04-23 Kenichi Handa <handa@m17n.org>
5190
5191 * xfaces.c (Fx_list_fonts): If a font size is specified in
5192 PATTERN, set it in returned scalable fonts.
5193
5194 2009-04-22 Chong Yidong <cyd@stupidchicken.com>
5195
5196 * keyboard.c (Fset_input_meta_mode): Doc fix.
5197
5198 * dispnew.c (Fsend_string_to_terminal): Doc fix.
5199
5200 * data.c (Fterminal_local_value, Fset_terminal_local_value): Doc fixes.
5201
5202 * coding.c (Fterminal_coding_system): Doc fix.
5203
5204 * xfns.c (Fx_display_grayscale_p, Fx_display_pixel_width)
5205 (Fx_display_pixel_height, Fx_display_planes)
5206 (Fx_display_color_cells, Fx_server_max_request_size)
5207 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
5208 (Fx_display_mm_height, Fx_display_mm_width)
5209 (Fx_display_backing_store, Fx_display_visual_class)
5210 (Fx_display_save_under, Fx_close_connection, Fx_synchronize):
5211 Doc fixes, replacing "terminal id" with "terminal object".
5212 (check_x_display_info): Handle terminal objects instead of
5213 terminal ids.
5214
5215 * term.c (Ftty_display_color_p, Ftty_display_color_cells)
5216 (Ftty_type, Fcontrolling_tty_p, Ftty_no_underline, Fsuspend_tty)
5217 (Fresume_tty, Vsuspend_tty_functions, Vresume_tty_functions):
5218 Doc fixes, replacing "terminal id" with "terminal object".
5219
5220 2009-04-21 Kenichi Handa <handa@m17n.org>
5221
5222 * font.c (font_load_for_lface): Cancel previous change (bug#2994).
5223 (font_score): Check AVGWIDTH too.
5224
5225 * coding.c (decode_coding_utf_16): Reduce charbuf_end for the
5226 worst case.
5227 (decode_coding_sjis, decode_coding_big5, decode_coding_charset)
5228 (decode_coding_emacs_mule, decode_coding_iso_2022): Likewise.
5229
5230 2009-04-19 Jason Rumney <jasonr@gnu.org>
5231
5232 The following changes fix Bug#3005 for wide glyphs on each platform,
5233 without reintroducing Bug#1258 for stretch glyphs.
5234
5235 * xterm.c (x_draw_bar_cursor): Limit cursor width differently for
5236 BAR_CURSOR and HBAR_CURSOR. Calculate width of HBAR_CURSOR using
5237 get_phys_cursor_geometry.
5238
5239 * w32term.c (x_draw_bar_cursor): Limit cursor width differently
5240 for BAR_CURSOR and HBAR_CURSOR. Calculate width of HBAR_CURSOR
5241 using get_phys_cursor_geometry.
5242
5243 * nsterm.m (ns_draw_window_cursor): HBAR_CURSOR width already
5244 correctly calculated.
5245
5246 2009-04-19 Jan Djärv <jan.h.d@swipnet.se>
5247
5248 * gtkutil.c (xg_tool_bar_menu_proxy, update_frame_tool_bar):
5249 Use G_CALLBACK instead of GTK_SIGNAL_FUNC which is deprecated.
5250 (xg_initialize): Use g_type_class_ref instead of gtk_type_class which
5251 is deprecated.
5252
5253 2009-04-18 Andreas Schwab <schwab@linux-m68k.org>
5254
5255 * font.c (font_put_frame_data): Use xfree instead of free.
5256
5257 2009-04-17 Juanma Barranquero <lekktu@gmail.com>
5258
5259 * w32font.c (Qja, Qko): Remove declarations.
5260 (syms_of_w32font): Don't DEFSYM them.
5261
5262 2009-04-17 Chong Yidong <cyd@stupidchicken.com>
5263
5264 * font.c (Qja, Qko): Move definitions here from ftfont.c.
5265
5266 * font.h (Qja, Qko): Extern them.
5267
5268 * ftfont.c (Qja, Qko): Remove declarations.
5269
5270 * xfont.c (Qja, Qko): Remove declarations.
5271
5272 2009-04-17 Kenichi Handa <handa@m17n.org>
5273
5274 * editfns.c (Ftranslate_region_internal): Use Fconcat to make a
5275 string from a vector to handle Latin-1 characters correctly.
5276
5277 * ftfont.c (ftfont_pattern_entity): Return a newly allocated
5278 entity even if the cache hits.
5279
5280 2009-04-16 Andreas Schwab <schwab@linux-m68k.org>
5281
5282 * search.c (boyer_moore): Use zero as marker value for a possible
5283 match instead of depending on overflow behavior. (Bug#2844)
5284
5285 * search.c: Use EMACS_INT for buffer positions. Add prototypes.
5286 * lisp.h: Adjust prototypes.
5287
5288 2009-04-16 Chong Yidong <cyd@stupidchicken.com>
5289
5290 * keyboard.c (adjust_point_for_property): Disable 2009-02-12
5291 change (Bug#3003).
5292
5293 2009-04-16 Kenichi Handa <handa@m17n.org>
5294
5295 * xfont.c (xfont_has_char): Special handling of `ja' and `ko' adstyle.
5296
5297 * xftfont.c (xftfont_has_char): Special handling of `ja' and `ko'
5298 adstyle.
5299
5300 * ftfont.c (Qja, Qko): Don't make them static.
5301 (enum ftfont_cache_for): New enum.
5302 (fc_charset_table): Undo the previous change.
5303 (ftfont_get_latin1_charset): Delete it.
5304 (ftfont_pattern_entity): Check cache by ftfont_lookup_cache.
5305 Set FONT_SIZE_INDEX of the entity to 0 for a scalable font. For a
5306 non-scarable font, try to get AVERAGE_WIDTH.
5307 (ftfont_lookup_cache): Argument FOR-FACE is changed to CACHE_FOR.
5308 Change ft_face_cache from a list of a hash-table. Don't check
5309 `ja' and `ko' adstyle here.
5310 (ftfont_get_fc_charset): Call ftfont_lookup_cache with
5311 FTFONT_CACHE_FOR_CHARET.
5312 (ftfont_get_charset): Undo the previous change.
5313 (ftfont_open): Call ftfont_lookup_cache with FTFONT_CACHE_FOR_FACE.
5314 (ftfont_close): Likewise.
5315 (ftfont_has_char): Special handling of `ja' and `ko' adstyle.
5316
5317 * font.c (font_sort_entites): Change the meaning of the arg
5318 BEST-ONLY. Don't optimize for VEC of lenght 1.
5319 (font_select_entity): Just return the value of font_sort_entites.
5320
5321 * xfaces.c (merge_face_vectors): Reflect font properties in
5322 to[LFACE_FONT_INDEX] to the other face attributes. Don't call
5323 font_clear_prop if a face attribute doesn't change.
5324
5325 * charset.h (charset_ksc5601): Extern it.
5326
5327 * charset.c (charset_ksc5601): New variable.
5328 (Fdefine_charset_internal): Set charset_ksc5601.
5329 (init_charset_once): Initialize charset_ksc5601 to -1.
5330
5331 2009-04-15 Dan Nicolaescu <dann@ics.uci.edu>
5332
5333 * fileio.c (history_delete_duplicates): Remove unused declaration.
5334
5335 * callint.c (history_delete_duplicates): New declaration.
5336 (Fcall_interactively): Remove command history duplicates when
5337 history_delete_duplicates is true.
5338
5339 2009-04-14 Eli Zaretskii <eliz@gnu.org>
5340
5341 * buffer.c (syms_of_buffer) <line-spacing>: Doc fix.
5342
5343 2009-04-14 Kenichi Handa <handa@m17n.org>
5344
5345 * font.c (Ffont_info): Fix docstring. Fix the second element of
5346 the returned value (bug#2949).
5347
5348 2009-04-14 Chong Yidong <cyd@stupidchicken.com>
5349
5350 * xdisp.c (Vwrap_prefix, Vline_prefix): Reflow docstrings.
5351
5352 2009-04-14 Kenichi Handa <handa@m17n.org>
5353
5354 * xfont.c (xfont_has_char): The font has C if C is ASCII and the
5355 encoding charset is ascii_compatible.
5356
5357 * charset.c (Fdefine_charset_internal): Make charset
5358 ascii-compatible if the method is CHARSET_METHOD_OFFSET, the
5359 code_offset is 0, and covers all ASCII characters.
5360
5361 2009-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
5362
5363 * nsselect.m (symbol_to_nsstring, clean_local_selection_data)
5364 (ns_string_to_pasteboard_internal):
5365 * nsmenu.m (process_dialog):
5366 * nsimage.m (ns_load_image): Use SDATA and ASET where appropriate.
5367 * nsfont.m (nsfont_open): Use XHASH to make it compile with LISP_UNION.
5368 * lisp.h (Fx_load_color_file): Declare.
5369
5370 2009-04-13 Kenichi Handa <handa@m17n.org>
5371
5372 * font.c (font_delete_unmatched): Preserve the order of list elements.
5373 (font_select_entity): Suppress the code to optimize for the same
5374 kind of fonts.
5375 (font_load_for_lface): Get a font that supports at least ASCII
5376 characters.
5377
5378 * ftfont.c (Qja, Qko): New variables.
5379 (fc_charset_table): Delete uniquifier data for iso8859-1.
5380 (ftfont_get_latin1_charset): New function.
5381 (get_adstyle_property): New function.
5382 (ftfont_pattern_entity): Set FONT_ADSTYLE_INDEX of entity for
5383 bitmap fonts.
5384 (ftfont_lookup_cache): Handle the case that KEY is a font-entity.
5385 Delete iso-8859-1 range from the charset of fonts whose adstyle is
5386 `ko' or `ja'.
5387 (ftfont_get_fc_charset): Call ftfont_lookup_cache with ENTITY.
5388 (ftfont_get_charset): For iso8859-1, call ftfont_get_latin1_charset.
5389 (ftfont_list): Don't refuse a font spec with non-nil `adstyle'
5390 property.
5391 (ftfont_open): Call ftfont_lookup_cache with ENTITY.
5392 (syms_of_ftfont): DEFSYM Qja and Qko.
5393
5394 2009-04-09 Kenichi Handa <handa@m17n.org>
5395
5396 * charset.c (map_charset_chars): For a charset of `superset'
5397 method, fix calculation of code range.
5398
5399 * font.c (font_put_extra): If VAL is nil, delete the slot for PROP
5400 from the list of extra properties.
5401 (font_clear_prop): Be sure to delete `:name' font property.
5402
5403 2009-04-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5404
5405 * dispnew.c (redraw_overlapping_rows): Fix detection of
5406 overlapping for topmost and bottommost rows.
5407
5408 * ftfont.c (ftfont_text_extents): Fix calculation of metrics->descent.
5409
5410 2009-04-06 Jason Rumney <jasonr@gnu.org>
5411
5412 * frame.c (x_set_font): Avoid C99 mid-block variable declaration.
5413
5414 2009-04-06 Kenichi Handa <handa@m17n.org>
5415
5416 * ftxfont.c (ftxfont_draw_backgrond): Fix args to XFillRectangle.
5417
5418 * xftfont.c (xftfont_open): Fix setting font->underline_thickness.
5419
5420 2009-04-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5421
5422 * ftfont.c (ftfont_open): Fix checking of the return value of
5423 FT_Load_Char. Fix setting font->underline_thickness.
5424
5425 2009-04-04 Chong Yidong <cyd@stupidchicken.com>
5426
5427 * terminal.c (Fterminal_name, Fdelete_terminal, Fterminal_name)
5428 (Fterminal_parameters, Fterminal_parameter)
5429 (Fset_terminal_parameter): In doc string, refer to terminal
5430 objects rather than terminal ids.
5431
5432 2009-04-04 Eli Zaretskii <eliz@gnu.org>
5433
5434 * dosfns.c (system_process_attributes) [SYSTEM_MALLOC]: Don't call
5435 ret_lim_data. (Bug#2867)
5436
5437 2009-04-03 Chong Yidong <cyd@stupidchicken.com>
5438
5439 * term.c (produce_stretch_glyph): Reduce width of stretch glyphs
5440 so they don't get wider than the window, matching 2006-01-23
5441 change to the partner function in xdisp.c (Bug#2800).
5442
5443 2009-04-03 Kenichi Handa <handa@m17n.org>
5444
5445 * print.c (print_object): Make each lowest sub_char_table start a
5446 new line (Bug#2866).
5447
5448 2009-04-02 Kenichi Handa <handa@m17n.org>
5449
5450 * fontset.c (fontset_font): Record no-font when a fontset
5451 explicitly tells not to try another font-specs.
5452
5453 2009-03-30 Pierre Poissinger <pierre.poissinger@gmail.com> (tiny change)
5454
5455 * charset.c (map_charset_for_dump): Add missing UNGCPRO.
5456
5457 2009-03-30 Kenichi Handa <handa@m17n.org>
5458
5459 * fontset.c (fontset_from_font): Specify only registry in a
5460 font-spec for all characters supported by that registry.
5461
5462 * ftfont.c: Fix previous change. Define ftfont_variation_glyphs
5463 even if HAVE_M17N_FLT is not defined.
5464
5465 2009-03-29 Sebastian Rose <sebastian_rose@gmx.de> (tiny change)
5466
5467 * ftfont.c: Conditionalize prototyping and use of
5468 ftfont_variation_glyphs.
5469
5470 2009-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
5471
5472 * frame.c (delete_frame): Work around compiler bug.
5473
5474 * editfns.c (general_insert_function): Adjust to insdel.c changes.
5475 * insdel.c (prepare_to_modify_buffer, signal_before_change):
5476 Some more EMACS_INT.
5477 * lisp.h (copy_text, count_size_as_multibyte): Fix last change.
5478
5479 * xdisp.c (dump_glyph): Fix typo.
5480
5481 * insdel.c (move_gap, move_gap_both, gap_left, gap_right)
5482 (adjust_markers_gap_motion, adjust_markers_for_delete)
5483 (adjust_markers_for_insert, adjust_point)
5484 (adjust_markers_for_replace, make_gap_larger, make_gap_smaller)
5485 (make_gap, copy_text, count_size_as_multibyte, insert)
5486 (insert_and_inherit, insert_before_markers)
5487 (insert_before_markers_and_inherit, insert_1)
5488 (count_combining_before, count_combining_after, insert_1_both)
5489 (insert_from_string, insert_from_string_before_markers)
5490 (insert_from_string_1, insert_from_gap, insert_from_buffer)
5491 (insert_from_buffer_1, adjust_after_replace)
5492 (adjust_after_replace_noundo, adjust_after_insert, replace_range)
5493 (replace_range_2, del_range, del_range_1, del_range_byte)
5494 (del_range_both, del_range_2, modify_region)
5495 (prepare_to_modify_buffer, signal_before_change)
5496 (signal_after_change, Fcombine_after_change_execute): Use EMACS_INT
5497 for buffer positions and sizes.
5498 * lisp.h: Adjust prototypes accordingly.
5499
5500 * fileio.c (adjust_markers_for_delete): Move declaration to lisp.h.
5501 (non_regular_inserted, non_regular_nbytes, read_non_regular)
5502 (Finsert_file_contents): Use EMACS_INT for buffer positions.
5503
5504 * fileio.c (Finsert_file_contents): Don't limit size to INT_MAX/4.
5505
5506 2009-03-27 Jan Djärv <jan.h.d@swipnet.se>
5507
5508 * frame.c (x_set_font): If the fullscreen property is non-nil, adjust
5509 lines and columns so we keep the same pixel height and width.
5510
5511 * xterm.c (handle_one_xevent): Call x_handle_net_wm_state if
5512 the property _NET_WM_STATE has changed.
5513 (x_handle_net_wm_state): New function to update frame parameter
5514 fullscreen.
5515 (x_term_init): Initialize atoms for _NET_WM_STATE.
5516
5517 * xterm.h (struct x_display_info): Add atoms for _NET_WM_STATE.
5518
5519 2009-03-27 Kevin Ryde <user42@zip.com.au>
5520
5521 * keyboard.c (tty_read_avail_input): Don't treat a -1 return from
5522 Gpm_GetEvent as an error that justifies closing the filedescriptor.
5523 * term.c (close_gpm): Get the filedescriptor as a (new) parameter.
5524 (Fgpm_mouse_stop): Pass that new parameter.
5525 * termhooks.h (close_gpm): Adjust prototype.
5526
5527 2009-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
5528
5529 * lisp.h (Fx_focus_frame): Declare.
5530
5531 * callint.c (Fcall_interactively): For '^' just delegate the work to
5532 handle-shift-selection.
5533 (syms_of_callint): Move declaration of shift-select-mode to simple.el.
5534
5535 2009-03-24 Chong Yidong <cyd@stupidchicken.com>
5536
5537 * editfns.c (Ffloat_time): Doc fix (Bug#2768).
5538
5539 * data.c (Qinteractive_form): New variable.
5540 (Finteractive_form): Use it.
5541
5542 * eval.c (Fcommandp): Use Qinteractive_form.
5543
5544 2009-03-24 Jason Rumney <jasonr@gnu.org>
5545
5546 * fileio.c (Fsubstitute_in_file_name): Always work on a copy.
5547 Calculate total size precisely. Decode environment variables
5548 before substituting. (Bug#38)
5549
5550 2009-03-24 Kenichi Handa <handa@m17n.org>
5551
5552 * font.c (find_font_encoding): Return Qnil for unsupported
5553 encoding (Bug#2722).
5554
5555 2009-03-23 Jan Djärv <jan.h.d@swipnet.se>
5556
5557 * gtkutil.c (xg_display_open): Assign a value to gdpy_def, check
5558 that gdpy is set.
5559
5560 2009-03-22 Alan Mackenzie <acm@muc.de>
5561
5562 * callint.c (Finteractive): Clarify the doc string - even
5563 promptless elements need \n separators.
5564
5565 2009-03-22 Jason Rumney <jasonr@gnu.org>
5566
5567 * w32term.c (syms_of_w32term): Doc fix for
5568 x-use-underline-position-properties.
5569
5570 2009-03-21 Eli Zaretskii <eliz@gnu.org>
5571
5572 * w32.c (getpwuid): Change argument type to unsigned.
5573 (struct w32_id): Change type of `rid' member to unsigned.
5574 (w32_cached_id, w32_add_to_cache, get_name_and_id): Change type of
5575 argument ID to unsigned. All callers changed.
5576 (getuid, geteuid, getgid, getegid): Change return type to unsigned.
5577
5578 2009-03-20 Eli Zaretskii <eliz@gnu.org>
5579
5580 * editfns.c (Fuser_uid, Fuser_real_uid): If UID as EMACS_INT is
5581 negative, produce a float value.
5582
5583 * dired.c (make_uid, make_gid): New functions.
5584 (Ffile_attributes): Use them to avoid negative UID and GID.
5585
5586 2009-03-20 Juanma Barranquero <lekktu@gmail.com>
5587
5588 * keyboard.c (Fcurrent_idle_time): Reflow docstring.
5589 (syms_of_keyboard) <command-hook-internal, input-method-function>:
5590 Fix typos in docstrings.
5591
5592 2009-03-19 Kenichi Handa <handa@m17n.org>
5593
5594 * fontset.c (Fset_fontset_font): When a spec of ASCII font is
5595 changed, use font_load_for_lface to get a new font object.
5596 Call free_realized_fontset after handling ASCII font change.
5597
5598 * frame.c (x_set_font): Handle the case that ARG is a cons.
5599
5600 2009-03-19 Glenn Morris <rgm@gnu.org>
5601
5602 * fileio.c (Fsubstitute_in_file_name): Doc fix.
5603
5604 2009-03-19 Chong Yidong <cyd@stupidchicken.com>
5605
5606 * indent.c (Fvertical_motion): Undo 2005-01-19 change (Bug#2694).
5607
5608 2009-03-19 Kenichi Handa <handa@m17n.org>
5609
5610 * charset.c (load_charset_map_from_file): When a mapfile can't be
5611 loaded, signal an error.
5612
5613 2009-03-18 Eli Zaretskii <eliz@gnu.org>
5614
5615 * dired.c (Ffile_attributes): Make sure UID and GID are always
5616 positive, even if the value is too large for a positive EMACS_INT.
5617 Doc fix.
5618
5619 * editfns.c (Fuser_login_name): Support float arguments. Doc fix.
5620
5621 2009-03-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5622
5623 * xmenu.c (xdialog_show): Move Fredisplay call ...
5624 (Fx_popup_dialog): ... here.
5625
5626 2009-03-18 Stefan Monnier <monnier@iro.umontreal.ca>
5627
5628 * dired.c (file_name_completion): Disable the first optimization just
5629 installed, since it is not implemented correctly.
5630
5631 2009-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
5632
5633 * dired.c (file_name_completion): Check completion-ignored-extensions
5634 only if the entry can affect bestmatch.
5635 Stop the search early, as Ftry_completion already does.
5636
5637 2009-03-17 Chong Yidong <cyd@stupidchicken.com>
5638
5639 * minibuf.c (Vminibuffer_completion_confirm): Doc fix.
5640
5641 2009-03-15 Chong Yidong <cyd@stupidchicken.com>
5642
5643 * keyboard.c (parse_menu_item): Don't display remappings as menu
5644 equivalent bindings (Bug#788).
5645
5646 2009-03-15 Jason Rumney <jasonr@gnu.org>
5647
5648 * w32term.h (WM_EMACS_PAINT): New message.
5649 * w32term.c (w32_read_socket): Use it instead of WM_PAINT.
5650 * w32fns.c (w32_wnd_proc): Change WM_PAINT to WM_EMACS_PAINT
5651 before passing to lisp thread. (Bug#950)
5652
5653 2009-03-14 David Reitter <david.reitter@gmail.com>
5654
5655 * nsterm.m (ns_shutdown_properly, -terminate): Remove global state
5656 variable as it was never reset.
5657 (ns_term_init): Remove initialization of Lisp-settable defaults
5658 and ns_expand_space.
5659 (-setPanelFromDefaultValues): Remove ns_expand_space.
5660 (-showPreferencesWindow): Send new KEY_NS_SHOW_PREFS key.
5661 * nsfont.m (nsfont_open): Remove ns_expand_space, assume -0.5
5662 i.e. no additional spacing, similar to Carbon port.
5663
5664 * nsterm.h: Define KEY_NS_SHOW_PREFS key.
5665 * nsfns.m (ns-popup-prefs-panel): Remove.
5666
5667 2009-03-14 Jan Djärv <jan.h.d@swipnet.se>
5668
5669 * sound.c (alsa_configure): Remove call to deprecated
5670 snd_pcm_sw_params_set_xfer_align.
5671
5672 2009-03-14 Stephen Berman <stephen.berman@gmx.net>
5673
5674 * gtkutil.c (xg_tool_bar_callback): Set focus back to the frame
5675 after clicking in a detached tool bar.
5676 (xg_tool_bar_proxy_callback): Remove call to Fx_focus_frame.
5677
5678 2009-03-13 Stefan Monnier <monnier@iro.umontreal.ca>
5679
5680 * fontset.c (fontset_from_font, Ffontset_info): YAILOM (Yet another
5681 int/Lisp_Object mixup).
5682
5683 2009-03-13 Kenichi Handa <handa@m17n.org>
5684
5685 * fontset.c (Ffontset_info, check_fontset_name): New arg frame.
5686 Handle NAME nil and t correctly. Callers changed.
5687 (font_def_arg, add_arg, from_arg, to_arg): Delete them.
5688 (set_fontset_font): Change ARG to a vector. Handle range_list in
5689 ARG correctly.
5690 (Fset_fontset_font): Fix the case that TARGET is both a script
5691 name and charset name. Adjust the arg to set_fontset_font for
5692 the above change.
5693 (fontset_from_font): Fix previous change.
5694 (Ffontset_info): Adjust for the 2008-07-09 change of fontset
5695 entry. If FONTSET is the default fontset, don't set the extra
5696 slot of the returning char-table.
5697
5698 2009-03-12 Juanma Barranquero <lekktu@gmail.com>
5699
5700 * nsfns.m (Fx_close_connection): Doc fix.
5701 (Fns_do_applescript): Reflow docstring.
5702 (Fns_hide_others, Fns_hide_emacs, Fns_convert_utf8_nfd_to_nfc)
5703 (Fx_display_pixel_width, Fx_display_pixel_height)
5704 (Fns_display_usable_bounds, Fx_display_planes, Fx_show_tip):
5705 Fix typos in docstrings.
5706 (Fns_set_alpha): Fix typos in error messages.
5707
5708 2009-03-12 David Reitter <david.reitter@gmail.com>
5709
5710 * termhooks.h [HAVE_NS]: Define NS_NONKEY_EVENT to be used for
5711 non-key system events on NS. Formerly, NON_ASCII_KEYSTROKE_EVENT
5712 were used for such events.
5713
5714 * nsterm.m (newFrame, openFile, fulfillService, changeFont)
5715 (toggleToolbar, performDragOperation, runHelp): Use it.
5716
5717 * keyboard.c (parse_menu_item) [HAVE_NS]: Treat new event like
5718 NON_ASCII_KEYSTROKE_EVENT, but set used_mouse_menu.
5719
5720 2009-03-11 Kenichi Handa <handa@m17n.org>
5721
5722 * font.h (font_open_by_spec): Extern it.
5723
5724 * font.c (font_open_by_spec): New function.
5725 (font_open_by_name): Use font_open_by_spec.
5726
5727 * frame.c (x_set_font): When ARG is a font-object, don't alter the
5728 fontset of the frame.
5729
5730 * fontset.c (Fset_fontset_font): When a font for ASCII is changed,
5731 modify the default font of frames that use this fontset.
5732 (num_auto_fontsets): New variable.
5733 (fontset_from_font): Use num_auto_fontsets to decide a fontset
5734 name. Be sure to set FONTSET_ASCII to the correct font name.
5735 (update_auto_fontset_alist): New function.
5736
5737 2009-03-11 Juanma Barranquero <lekktu@gmail.com>
5738
5739 * makefile.w32-in: Update dependencies.
5740
5741 2009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
5742
5743 * nsfns.m (syms_of_nsfns): Remove Qbuffered.
5744
5745 2009-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
5746
5747 * buffer.c (Fswitch_to_buffer): Revert part of 2008-10-21's change.
5748
5749 2009-03-10 Chong Yidong <cyd@stupidchicken.com>
5750
5751 * lread.c (Feval_buffer): Doc fix.
5752
5753 2009-03-09 Kenichi Handa <handa@m17n.org>
5754
5755 * charset.c (Qfile_name_handler_alist): Extern it.
5756 (load_charset_map_from_file): Temporarily bind
5757 `file-name-handler-alist' to nil while calling openp. (Bug#2435)
5758
5759 2009-03-06 Aaron Ecay <aaronecay@gmail.com> (tiny change)
5760
5761 * nsterm.m (ns_draw_vertical_window_border): Draw 1 pixel wide,
5762 not two, and use NSRectFill instead of NSDrawGroove. (Bug#2352)
5763
5764 2009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
5765
5766 * nsterm.m: Include <signal.h> for SIGTERM used in ns_term_shutdown.
5767 (x_set_window_size): Change back to calculated method of setting
5768 toolbar height under Cocoa. (Bug#2546)
5769 (EmacsView-windowWillUseStandardFrame:defaultFrame:): New method.
5770 (EmacsView-drawRect:): Completely shortcircuit if ns_in_resize.
5771
5772 * nsfns.m (ns_appkit_version_int): Fix typo in the version macro.
5773
5774 * nsmenu.m (EmacsMenu-addItemWithWidgetValue:): Don't add
5775 accelerator in parens under GNUstep.
5776
5777 2009-03-06 Kenichi Handa <handa@m17n.org>
5778
5779 These changes are to detect incorrect composition sequence without
5780 looking ahead the source. (Bug#2370)
5781
5782 * coding.h: Include "composite.h".
5783 (enum compisition_state): New enum.
5784 (struct compisition_status): New struct.
5785 (struct iso_2022_spec): New member cmp_status.
5786 (struct emacs_mule_spec): New struct.
5787 (struct coding_system): New members ctext_extended_segment_len and
5788 embedded_utf_8. Change the union member
5789 spec.emacs_mule_full_support to spec.emacs_mule.
5790
5791 * coding.c (CODING_ISO_CMP_STATUS): New macro.
5792 (CODING_ISO_EXTSEGMENT_LEN, CODING_ISO_EMBEDDED_UTF_8): New macros.
5793 (MAX_ANNOTATION_LENGTH): Define to 5.
5794 (ADD_COMPOSITION_DATA): New arg nbytes.
5795 (emacs_mule_char): New arg cmp_status.
5796 (DECODE_EMACS_MULE_COMPOSITION_CHAR): Delete it.
5797 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): New arg c.
5798 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New arg c.
5799 (DECODE_EMACS_MULE_21_COMPOSITION): Delete the arg c.
5800 (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Likewise.
5801 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Likewise.
5802 (DECODE_EMACS_MULE_COMPOSITION_START): New macro.
5803 (EMACS_MULE_COMPOSITION_END): New macro.
5804 (emacs_mule_finish_composition): New function.
5805 (EMACS_MULE_MAYBE_FINISH_COMPOSITION): New macro.
5806 (decode_coding_emacs_mule): Avoid long looking ahead while
5807 handling composition.
5808 (DECODE_COMPOSITION_RULE): Argument changed to rule and nbytes.
5809 (ENCODE_COMPOSITION_RULE): New macro.
5810 (finish_composition): New function.
5811 (MAYBE_FINISH_COMPOSITION): Call finish_composition.
5812 (DECODE_COMPOSITION_START): New implementation.
5813 (DECODE_COMPOSITION_END): Likewise.
5814 (STORE_COMPOSITION_RULE): New macro.
5815 (decode_coding_iso_2022): Avoid long looking ahead while handling
5816 composition, CTEXT extended segment, and embedded UTF-8.
5817 (setup_coding_system): For a coding of type iso-2022, reset
5818 CODING_ISO_EXTSEGMENT_LEN (coding) and
5819 CODING_ISO_EMBEDDED_UTF_8 (coding).
5820 (get_translation): Delete arguments last_block, from_nchars,
5821 to_nchars. Callers changed.
5822 (produce_chars): Don't modify charbuf. Adjusted for the change of
5823 get_translation.
5824 (produce_composition): Adjust for the new annotation sequence.
5825 (handle_composition_annotation): Likewise.
5826 (consume_chars): Adjust for the change of get_translation.
5827
5828 2009-03-05 Adrian Robert <Adrian.B.Robert@gmail.com>
5829
5830 * nsterm.m (ns_select): Shortcircuit if reentrant call. (Bug#2564)
5831
5832 2009-03-05 Kenichi Handa <handa@m17n.org>
5833
5834 * font.c (font_select_entity): New function.
5835 (font_find_for_lface): Use font_select_entity to select a font.
5836
5837 * fontset.c (fontset_find_font): If a font found without
5838 restricting to the characters C doesn't support C, try to find a
5839 font with C restriction.
5840
5841 2009-03-04 Nikolaj Schumacher <me@nschum.de>
5842
5843 * nsfont.m (nsfont_draw): Compare ns_antialias_text against lisp value.
5844
5845 2009-03-04 Jason Rumney <jasonr@gnu.org>
5846
5847 * w32fns.c (w32_wnd_proc): Only ignore IME messages for the
5848 characters that have already been read. (Bug#2569)
5849
5850 * image.c (xbm_read_bitmap_data, png_load, svg_load_image):
5851 Log an error message if check_image_size failed.
5852 (xpm_load_image, pbm_load, jpeg_load, tiff_load, gif_load)
5853 (gs_load): Mention max-image-size in size error message. (Bug#2560)
5854
5855 2009-03-02 Eli Zaretskii <eliz@gnu.org>
5856
5857 * callproc.c (Fcall_process): Bind inhibit-modification-hooks to t
5858 when decoding process output.
5859
5860 2009-03-01 Richard M Stallman <rms@gnu.org>
5861
5862 * m/mips.h (DATA_SEG_BITS, XUINT, XSET): Definitions disabled.
5863
5864 * emacs.c (gdb_data_seg_bits) [USE_LSB_TAG]: Make it 0.
5865
5866 2009-02-28 Eli Zaretskii <eliz@gnu.org>
5867
5868 * coding.c (decode_coding_utf_8, decode_coding_utf_16)
5869 (decode_coding_emacs_mule, decode_coding_iso_2022)
5870 (encode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
5871 (decode_coding_raw_text, decode_coding_charset)
5872 (setup_coding_system, decode_eol, decode_coding, consume_chars):
5873 Honor inhibit-eol-conversion. (Bug #2186)
5874
5875 2009-02-28 Jason Rumney <jasonr@gnu.org>
5876
5877 * coding.c (detect_coding_charset): If not checking latin extra,
5878 fail on characters between 0x80 and 0xA0. (Bug#2354)
5879
5880 2009-02-28 Eli Zaretskii <eliz@gnu.org>
5881
5882 * coding.c (detect_coding_charset): Fix change from 2008-10-21.
5883 Also, check iso-latin-*, not only iso-8859-*. (Bug#2497)
5884
5885 2009-02-27 Glenn Morris <rgm@gnu.org>
5886
5887 * callint.c (Finteractive): Doc fix.
5888
5889 2009-02-27 Kenichi Handa <handa@m17n.org>
5890
5891 * lread.c (read_escape): Signal an error for invalid \UXXXXXXXX.
5892
5893 2009-02-27 Chong Yidong <cyd@stupidchicken.com>
5894
5895 * font.c (font_style_to_value): Set value for unknown symbols to
5896 100 instead of 255.
5897 (weight_table, slant_table, width_table): Treat "unspecified" as
5898 the default value.
5899
5900 2009-02-26 Juanma Barranquero <lekktu@gmail.com>
5901
5902 * fileio.c (Fnext_read_file_uses_dialog_p): Fix typo in docstring.
5903
5904 2009-02-25 Juanma Barranquero <lekktu@gmail.com>
5905
5906 * lread.c (Fload): Stop checking Vloads_in_progress and signal
5907 error as soon as a recursive load is detected.
5908
5909 2009-02-24 Adrian Robert <Adrian.B.Robert@gmail.com>
5910
5911 * nsterm.m (ns_ring_bell): Convert rect to window coordinates
5912 before caching.
5913
5914 2009-02-24 Kenichi Handa <handa@m17n.org>
5915
5916 * fontset.c (fontset_find_font): Fix the condition for checking
5917 unavailable font.
5918
5919 2009-02-24 Glenn Morris <rgm@gnu.org>
5920
5921 * xfaces.c (Finternal_set_font_selection_order): Remove leading
5922 whitespace that confuses documentation.
5923
5924 2009-02-23 Miles Bader <miles@gnu.org>
5925
5926 * process.c (Flist_system_processes, Fprocess_attributes)
5927 (syms_of_process): Rename `system-process-attributes' to
5928 `process-attributes'.
5929
5930 2009-02-22 Andreas Schwab <schwab@linux-m68k.org>
5931
5932 * coding.h (struct coding_system): Make safe_charsets a pointer to
5933 unsigned char.
5934 * coding.c (CODING_ISO_REQUEST): Check for safe_charsets content
5935 being 255.
5936 (SAFE_CHARSET_P): Likewise.
5937 (setup_iso_safe_charsets): Properly setup safe_charsets.
5938 (Fdefine_coding_system_internal): Likewise.
5939 (setup_coding_system): Likewise. Remove unneeded casts.
5940 (detect_coding_iso_2022): Compare Viso_2022_charset_list with
5941 CODING_ATTR_CHARSET_LIST, not CODING_ATTR_SAFE_CHARSETS. Remove
5942 unneeded casts.
5943
5944 * insdel.c (del_range_2): Don't modify gap contents when called
5945 from decode_coding_object. (Bug#1809)
5946
5947 2009-02-21 Chong Yidong <cyd@stupidchicken.com>
5948
5949 * data.c (syms_of_data): Define Qfont_spec, Qfont_entity, and
5950 Qfont_object.
5951 (Ftype_of): Recognize font objects.
5952
5953 * lisp.h: Define Qfont_spec, Qfont_entity, Qfont_object extern.
5954
5955 * font.c (Qfont_spec, Qfont_entity, Qfont_object): Definitions
5956 moved to data.c.
5957
5958 2009-02-20 Adrian Robert <Adrian.B.Robert@gmail.com>
5959
5960 * nsterm.m (x_make_frame_invisible): Unset async_visible,
5961 async_iconified. Based on a patch by Christian Lynbech
5962 <christian.lynbech@tieto.com>.
5963 (EmacsView-windowDidMiniaturize:): Unset async_visible.
5964
5965 2009-02-20 Glenn Morris <rgm@gnu.org>
5966
5967 * syntax.c (Fskip_chars_forward): Fix doc typo.
5968
5969 2009-02-20 Chong Yidong <cyd@stupidchicken.com>
5970
5971 * keymap.c (Fkeymap_parent): Doc fix (Bug#2391).
5972
5973 2009-02-19 Chong Yidong <cyd@stupidchicken.com>
5974
5975 * xfns.c (Fx_create_frame): Give Xft driver a higher priority.
5976
5977 2009-02-19 Kenichi Handa <handa@m17n.org>
5978
5979 * coding.c (detect_coding): Preserve coding->mode.
5980 Don't overflow coding->carryover. (Bug#2370)
5981
5982 2009-02-18 Dan Nicolaescu <dann@ics.uci.edu>
5983
5984 * m/ibmrs6000.h (ADDR_CORRECT): Restore, removed by mistake on 2008-07-23.
5985
5986 2009-02-18 Kenichi Handa <handa@m17n.org>
5987
5988 * font.c (font_check_otf_features): Fix handling of `nil' element.
5989 (Ffont_spec): Describe :lang and :otf in the docstring.
5990
5991 2009-02-16 Andreas Schwab <schwab@suse.de>
5992
5993 * coding.c (Fcheck_coding_systems_region): Fix test for unibyte
5994 string.
5995
5996 2009-02-16 Kenichi Handa <handa@m17n.org>
5997
5998 * coding.c (Fcheck_coding_systems_region): Fix typo; Qt -> Qnil.
5999 (Bug#1723)
6000
6001 2009-02-14 Chong Yidong <cyd@stupidchicken.com>
6002
6003 * dispextern.h (struct iterator_stack_entry): New line_wrap member.
6004
6005 * xdisp.c (push_it, pop_it): Save and restore line_wrap.
6006 (handle_line_prefix): Suppress wrapping of wrap prefixes.
6007
6008 2009-02-14 Eli Zaretskii <eliz@gnu.org>
6009
6010 * msdos.c (MAX_SCREEN_BUF): New macro.
6011 (IT_write_glyphs): Make screen_buf[] always be MAX_SCREEN_BUF-long.
6012 Encode the entire run of glyphs sharing the same face, instead of
6013 doing that one glyph at a time (fixes a bug with displaying
6014 double-size characters).
6015
6016 2009-02-13 Adrian Robert <Adrian.B.Robert@gmail.com>
6017
6018 * nsfns.m (ns-read-file-name): BLOCK_INPUT while showing dialog.
6019
6020 * nsmenu.m (pop_down_menu): Check popup_activated_flag.
6021 (ns_popup_dialog, EmacsDialogPanel-runDialogAt:): Let
6022 pop_down_menu do the cleanup work as it is always called. (Bug#2154)
6023
6024 * nsfont.m (nsfont_make_fontset_for_font): For now, don't try to
6025 set fontset font for "mathematical-" sub-scripts. (Bug #2218)
6026
6027 2009-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
6028
6029 * keyboard.c (adjust_point_for_property): Allow stopping between two
6030 invisible areas.
6031
6032 2009-02-12 Jason Rumney <jasonr@gnu.org>
6033
6034 * w32font.c (check_face_name): Check for fake helv. (Bug#2275)
6035 (add_font_entity_to_list): Call check_face_name even when family
6036 is unspecified.
6037
6038 * w32term.c (x_display_pixel_height, x_display_pixel_width):
6039 Release DC when finished. Use NULL window to refer to desktop.
6040 (w32_term_init): Use NULL window to refer to desktop. (Bug#460)
6041
6042 * w32font.c (add_font_entity_to_list): Fix check for substituted
6043 raster fonts. (Bug#2219)
6044
6045 2009-02-12 Kenichi Handa <handa@m17n.org>
6046
6047 * composite.c (MAX_AUTO_COMPOSITION_LOOKBACK): New macro.
6048 (composition_gstring_width): Fix handling of LGLYPH_YOFF.
6049 (autocmp_chars): Use fast_looking_at. Don't compose more
6050 characters than MAX_COMPOSITION_COMPONENTS.
6051 (find_automatic_composition): While looking forward and backward,
6052 check static composition. Fix where to stop looking forward.
6053 (composition_adjust_point): Fix checking of static composition.
6054 (Fcomposition_get_gstring): Pay attention to
6055 MAX_COMPOSITION_COMPONENTS.
6056
6057 * lisp.h (fast_looking_at): Extern it.
6058
6059 * search.c (fast_looking_at): New function.
6060
6061 * term.c (encode_terminal_code): Adjust for the change of
6062 <struct glyph>.u.cmp.to.
6063 (append_composite_glyph): Likewise.
6064
6065 * xdisp.c (fill_gstring_glyph_string): Adjust for the change of
6066 <struct glyph>.u.cmp.to. Check if the glyph belongs to the same
6067 composition.
6068 (append_composite_glyph): Adjust for the change of
6069 <strcut glyph>.u.cmp.to.
6070
6071 2009-02-11 Juanma Barranquero <lekktu@gmail.com>
6072
6073 * casetab.c (init_casetab_once):
6074 * coding.c (ALLOC_CONVERSION_WORK_AREA):
6075 * font.c (font_update_lface):
6076 * fontset.c (Fnew_fontset):
6077 * ftfont.c (ftfont_drive_otf):
6078 * xfont.c (xfont_open):
6079 * xftfont.c (xftfont_get_xft_draw): Remove spurious semicolons.
6080
6081 2009-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
6082
6083 * fileio.c (Fwrite_region): !NILP -> CONSP.
6084
6085 2009-02-10 Andreas Schwab <schwab@suse.de>
6086
6087 * process.c (send_process): Properly relocate pointer into data
6088 when using encoded data. (Bug#2272)
6089
6090 2009-02-08 ARISAWA Akihiro <ari@mbf.sphere.ne.jp>
6091
6092 * coding.c (detect_coding_charset): Fix previous change.
6093
6094 2009-02-08 Jason Rumney <jasonr@gnu.org>
6095
6096 * w32fns.c (w32_hide_hourglass): Handle case where frame
6097 disappeared while hourglass was displayed. (Bug #2193)
6098
6099 2009-02-07 Andreas Schwab <schwab@suse.de>
6100
6101 * unexelf.c (unexec): Fix error message.
6102
6103 2009-02-07 Adrian Robert <Adrian.B.Robert@gmail.com>
6104
6105 * nsterm.m (EmacsApp-sendEvent:): Defer NSApplicationDefined event
6106 when modal window is active. (Bug #2152)
6107 (applicationShouldTerminate:): Remove now-unneeded while loop
6108 around NSRunAlertPanel.
6109
6110 * nsmenu.m (popupSession): New file-global variable.
6111 (pop_down_menu): End the popupSession before closing dialog.
6112 (ns_popup_dialog): BLOCK_INPUT around dialog presentation.
6113 (EmacsDialogPanel-runDialogAt:): Don't place window (superfluous),
6114 don't query NSApp for events (just sleep instead).
6115
6116 2009-02-07 Eli Zaretskii <eliz@gnu.org>
6117
6118 * coding.c (syms_of_coding) <translation-table-for-input>:
6119 Modify doc string to discourage use for character code unification.
6120
6121 2009-02-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6122
6123 * atimer.c (run_timers): Update pending_atimers.
6124
6125 2009-02-06 Chong Yidong <cyd@stupidchicken.com>
6126
6127 * image.c (svg_load_image): Fix last change.
6128
6129 * xfns.c (Fx_create_frame): Signal an error if no font is
6130 found (Bug#2147).
6131
6132 2009-02-05 Juanma Barranquero <lekktu@gmail.com>
6133
6134 * character.c (syms_of_character) <script-representative-chars>:
6135 Fix typo in docstring.
6136
6137 2009-02-04 Adrian Robert <Adrian.B.Robert@gmail.com>
6138
6139 * nsmenu.m (pop_down_menu): New function.
6140 (ns_popup_dialog): Call it on unwind.
6141 (EmacsDialogPanel-runDialogAt:): Check popup_activated_flag and
6142 call timer_check() (Bug#2154).
6143 (EmacsMenu-menuNeedsUpdate:): Don't call ns_update_menu if
6144 handling_signal is set.
6145 (EmacsMenu-fillWithWidgetValue:): Set submenu title.
6146
6147 * config.in: Get rid of COCOA_EXPERIMENTAL_CTRL_G.
6148
6149 * s/darwin.h: Same and NO_SOCK_SIGIO as well.
6150
6151 * nsterm.m (ns_read_socket): Same and don't set handling_signal.
6152
6153 * keyboard.c (poll_for_input_1, handle_async_input):
6154 Set handling_signal under HAVE_NS.
6155
6156 2009-02-04 Glenn Morris <rgm@gnu.org>
6157
6158 * fileio.c (Fwrite_region): Doc fix (mention annotate-functions).
6159
6160 2009-02-04 Kenichi Handa <handa@m17n.org>
6161
6162 * Makefile.in (composite.o): Depends on frame.h and termhooks.h.
6163
6164 * charset.c (Fchar_charset): New optional arg restriction.
6165
6166 * coding.h (coding_system_charset_list): Extern it.
6167
6168 * coding.c (coding_system_charset_list): New function.
6169
6170 * composite.c: Include coding.h and termhooks.h.
6171 (composition_gstring_p): Fix for the terminal case.
6172 (composition_gstring_width): Likewise.
6173 (fill_gstring_body): Likewise.
6174 (autocmp_chars): For terminal, call Fcomposition_get_gstring with
6175 the frame.
6176 (composition_compute_stop_pos): Adjust cmp_it->stop_pos if point
6177 is within a composition.
6178 (Fcomposition_get_gstring): Fix the terminal case.
6179
6180 * term.c (encode_terminal_code): Fix handling of composition.
6181 (produce_composite_glyph): For static composition, get pixel_width
6182 from struct composition.
6183
6184 2009-02-02 Andreas Schwab <schwab@suse.de>
6185
6186 * unexelf.c (unexec): Handle unaligned bss offset.
6187
6188 2009-02-01 Adrian Robert <Adrian.B.Robert@gmail.com>
6189
6190 * nsterm.m (ns_read_socket): Copy 2009-01-29 and 2009-01-30
6191 XT,w32read_socket changes to ns_read_socket.
6192
6193 * keyboard.c (handle_interrupt): Don't call
6194 quit_throw_to_read_char() under NS.
6195
6196 * blockinput.h: Remove NS-specific code.
6197
6198 2009-01-30 Dan Nicolaescu <dann@ics.uci.edu>
6199
6200 * dispnew.c (window_change_signal): Don't try to get the size of a
6201 suspended tty frame.
6202 * term.c (Fresume_tty): Resize if the size has changed while the
6203 tty was suspended.
6204
6205 * alloc.c (mark_stack): Properly conditionalize previous change.
6206
6207 2009-01-30 Juanma Barranquero <lekktu@gmail.com>
6208
6209 * w32inevt.c (w32_console_read_socket) [SYNC_INPUT]:
6210 * w32term.c (w32_read_socket) [SYNC_INPUT]:
6211 Remove; this code is not used on Windows.
6212
6213 2009-01-30 Eli Zaretskii <eliz@gnu.org>
6214
6215 * coding.c (detect_eol, decode_eol): Handle text with DOS-style
6216 EOLs that also has stray ^M characters.
6217
6218 2009-01-30 Juanma Barranquero <lekktu@gmail.com>
6219
6220 * atimer.c (run_timers, alarm_signal_handler):
6221 * keyboard.c (pending_signals, handle_async_input, init_keyboard):
6222 * w32inevt.c (w32_console_read_socket):
6223 * w32term.c (w32_read_socket):
6224 * xterm.c (XTread_socket): Use "#ifdef SYNC_INPUT" where appropriate.
6225
6226 2009-01-30 Chong Yidong <cyd@stupidchicken.com>
6227
6228 * callproc.c (Vtemp_file_name_pattern): Remove DEFVAR_LISP.
6229 Initialize it as a relative filename pattern.
6230 (init_callproc): Don't initialize Vtemp_file_name_pattern here.
6231 (Fcall_process_region): Simplify temp file creation using
6232 temporary-file-directory.
6233
6234 2009-01-29 Eli Zaretskii <eliz@gnu.org>
6235
6236 * msdos.c: Rename pending_signals to msdos_pending_signals.
6237 (sig_suspender, sigprocmask): Adjust.
6238
6239 2009-01-29 Chong Yidong <cyd@stupidchicken.com>
6240
6241 * keyboard.c (pending_signals): New var.
6242 (poll_for_input, input_available_signal, init_keyboard): Set it.
6243 (process_pending_signals): New function.
6244
6245 * lisp.h (QUIT): Check pending_signals instead of
6246 interrupt_input_pending. Use process_pending_signals.
6247
6248 * atimer.c (run_timers, alarm_signal_handler): Update pending_signals.
6249
6250 * process.c (wait_reading_process_output): Use process_pending_signals.
6251
6252 * sysdep.c (emacs_write): Use process_pending_signals.
6253
6254 * xterm.c (XTread_socket): Update pending_signals.
6255
6256 * w32term.c (w32_read_socket): Update pending_signals.
6257
6258 * w32inevt.c (w32_console_read_socket): Update pending_signals.
6259
6260 2009-01-29 Kenichi Handa <handa@m17n.org>
6261
6262 * xftfont.c (xftfont_has_char): New function.
6263 (syms_of_xftfont): Register xftfont_has_char in xftfont_driver.
6264
6265 2009-01-29 Adrian Robert <Adrian.B.Robert@gmail.com>
6266
6267 * nsterm.h (EmacsPrefsController.cursorBlinkSlider): Only define
6268 under GNUstep.
6269 (ns_query_color): New declaration.
6270
6271 * nsterm.m (ns_confirm_quit): New variable.
6272 (ns_set_default_prefs, syms_of_nsterm, ns_term_init): Initialize it.
6273 (EmacsApp-applicationShouldTerminate:): Use it.
6274 (EmacsPrefsController): Let user set it.
6275 (ns_query_color): New function.
6276 (ns_defined_color): Use it.
6277 (ns_initialize): Drop.
6278 (ns_term_init): Add two lines from ns_initialize(), and set
6279 input_interrupt_mode to nil.
6280
6281 * image.c (svg_load_image): Don't right-shift background RGB when
6282 obtained from FRAME_BACKGROUND_PIXEL. Under HAVE_NS use ns_query_color.
6283
6284 2009-01-28 Kenichi Handa <handa@m17n.org>
6285
6286 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
6287 (fontset_get_font_group): Remember that no font-group is specified
6288 for C.
6289
6290 2009-01-27 Chong Yidong <cyd@stupidchicken.com>
6291
6292 * fns.c (concat): Check for string overflow (bug#1787).
6293
6294 * undo.c (undo_limit, undo_strong_limit, Vundo_outer_limit):
6295 Quadruple undo limits (bug#1501).
6296
6297 2009-01-27 Kenichi Handa <handa@m17n.org>
6298
6299 * ftfont.c (ftfont_has_char): If the arg FONT is a font-object,
6300 directly use GT_Get_Char_index.
6301
6302 * xftfont.c (struct xftfont_info): New member `index'.
6303
6304 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
6305 (Ffontset_font): Adjust for the change of fontset entry.
6306
6307 2009-01-26 Kenichi Handa <handa@m17n.org>
6308
6309 * fontset.c (fontset_find_font): Fix handling of non-cons return
6310 value of fontset_get_font_group.
6311 (fontset_font): Revert last change.
6312
6313 2009-01-26 Jason Rumney <jasonr@gnu.org>
6314
6315 * w32font.c (w32font_list_internal): Return quickly if registry is
6316 unknown. Simplify final return.
6317 (add_font_entity_to_list): Break complex logic down into more
6318 manageable chunks. Move unknown registry check to
6319 w32font_list_internal.
6320
6321 2009-01-25 Adrian Robert <Adrian.B.Robert@gmail.com>
6322
6323 Changes to remove Feval calls from GUI under NS.
6324
6325 * nsterm.h: Move KEY_NS_... definitions here from nsterm.m.
6326 Add NS_TOGGLE_TOOLBAR, NS_PUT_WORKING_TEXT, NS_UNPUT_WORKING_TEXT.
6327 Remove NS_INSERT_WORKING_TEXT, NS_DELETE_WORKING_TEXT.
6328
6329 * nsterm.m: Move KEY_NS_... definitions to nsterm.h.
6330 (EmacsView-toggleToolbar:): Use KEY_NS_TOGGLE_TOOLBAR.
6331 (EmacsView-setMarkedText:,-deleteWorkingText:): Use NS_TEXT_EVENT
6332 instead of NON_ASCII_KEYSTROKE_EVENT.
6333 (EmacsApp-terminate:): Use KEY_NS_POWER_OFF instead of Feval.
6334 (EmacsApp-applicationShouldTerminate:): Query user.
6335 (EmacsPreferencesController-runHelp:): Use KEY_NS_INFO_PREFS
6336 instead of Feval.
6337
6338 * termhooks.h (NS_TEXT_EVENT): New event type under HAVE_NS.
6339
6340 * keyboard.c (kbd_buffer_get_event): Check for it.
6341 (keys_of_keyboard): Define lispy keys for
6342 ns-put/unput-working-text.
6343
6344 * nsmenu.m (ns_popup_dialog): Resync window setting with X and W32
6345 versions.
6346 (EmacsDialog-runDialogAt:): Use NSModalPanelRunLoopMode.
6347
6348 2009-01-25 Chong Yidong <cyd@stupidchicken.com>
6349
6350 * dispnew.c (buffer_posn_from_coords): Use Fset_buffer instead of
6351 setting current_buffer directly. (Bug#2044)
6352
6353 2009-01-24 Chong Yidong <cyd@stupidchicken.com>
6354
6355 * fontset.c (fontset_font): If we know there is no font, don't do
6356 any work. (Bug#1952, bug#1990).
6357
6358 * font.c (font_parse_xlfd): Handle patterns of length < 2. (Bug#1802)
6359
6360 2009-01-23 Adrian Robert <Adrian.B.Robert@gmail.com>
6361
6362 * emacs.c (main): Do fork+exec under --daemon in Cocoa.
6363 (ns_no_defaults): New declaration.
6364 (main): Use it.
6365
6366 * nsterm.h (ns_no_defaults): New declaration.
6367
6368 * nsfns.m (x_get_string_resource): Don't read when ns_no_defaults.
6369
6370 * nsterm.m (ns_no_defaults): New variable.
6371 (ns_initialize): Don't read defaults when ns_no_defaults.
6372 (EmacsView-readSelectionFromPasteboard:)
6373 (writeSelectionToPasteboard:types:): New stubbed-out methods for
6374 NSServicesRequests protocol. (Bug#1435)
6375 (ns_dumpglyphs_stretch): New function.
6376 (ns_draw_glyph_string): Use it, parallel Yamamoto Mitsuharu change
6377 of 2008-11-15 to other terms. (Bug#615)
6378
6379 * nsimage.m (setPixmapData:): Set to ignore image DPI.
6380
6381 2009-01-23 Giorgos Keramidas <keramida@freebsd.org> (tiny change)
6382
6383 * alloc.c (mark_stack): Use "flushw" instead of "ta 3" assembly
6384 call for Sparc64.
6385
6386 2009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
6387
6388 * nsfns.m:
6389 * nsgui.h:
6390 * nsmenu.m:
6391 * nsselect.m:
6392 * nsterm.h:
6393 * nsterm.m: Remove '23' comments that indicated code added during
6394 update from emacs-20 -> emacs-23.
6395
6396 2009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
6397
6398 * nsterm.m (EmavsView-keyDown:): Treat nil as Qnone for
6399 ns_alternate_modifier. (Bug#1217)
6400
6401 * nsmenu.m (EmacsMenu-parseKeyEquiv:, addItemWithWidgetValue:):
6402 Display all shortcuts, including those w/o super modifier.
6403
6404 * nsfns.m (ns-read-file-name): Fix typo in assignment statement.
6405
6406 2009-01-22 Chong Yidong <cyd@stupidchicken.com>
6407
6408 * fileio.c (Vwrite_region_post_annotation_function)
6409 (Vwrite_region_annotation_buffers): New vars.
6410 (build_annotations_unwind): Just reset
6411 Vwrite_region_annotation_buffers.
6412 (Fwrite_region): Initialize Vwrite_region_annotation_buffers.
6413 Call write-region-post-annotation-function.
6414 (build_annotations): Add to Vwrite_region_annotation_buffers if
6415 buffer changes.
6416
6417 2009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
6418
6419 * nsterm.h (EmacsApp-setAppleMenu:): Conditionalize more correctly on
6420 Tiger.
6421 * nsfns.m (ns_do_applescript):
6422 Conditionalize typeUTF16ExternalRepresentation on Tiger.
6423
6424 2009-01-21 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
6425
6426 * nsterm.m (EV_TRAILER): Always use emacsframe for frame_or_window.
6427
6428 2009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
6429
6430 * nsmenu.m (NSMENUPROFILE): Change #if style.
6431
6432 * nsterm.h (EmacsPrefsController): Add -setPanelFromDefaultValues.
6433
6434 * nsterm.m (x_set_frame_alpha): Add prototype.
6435 (ns_fake_keydown, EmacsView-keyUp:): New variable and function to
6436 handle Ctrl-tab. (Bug#1841)
6437 (ns_get_color): Use unsigned long long for scanned hex string value.
6438 (ns_term_shutdown): Abort on non SIGTERM signals.
6439 (EmacsPrefsController-setDefaultFont:,-setColors:): Raise the frame.
6440 (EmacsPrefsController-setPanelFromDefaultValues): New function.
6441 (EmacsPrefsController-resetToDefaults:): Use it. (Bug#1801)
6442 (ns_font_to_xlfd, ns_fontname_to_xlfd): Remove, unused.
6443 (ns_defined_color): Fix settings of the XColor variable fields:
6444 red,green,blue scale to 2-byte, pixel's parts to 1-byte. (Bug#1663)
6445
6446 * nsimage.m (EmacsImage+allocInitFromFile:): Set to ignore image
6447 DPI. (Bug#1316)
6448 (EmacsImage-setPixelAtX:Y:toRed:green:blue:alpha:): Fix color
6449 values in onTiger section.
6450
6451 2009-01-19 Chong Yidong <cyd@stupidchicken.com>
6452
6453 * xfaces.c (Finternal_set_lisp_face_attribute, Fx_list_fonts):
6454 Check return value of font_spec_from_name.
6455 (Fx_list_fonts): Doc fix. (Bug#1951)
6456
6457 * font.c (font_spec_from_name): Return Qnil if font name could not
6458 be parsed.
6459 (font_parse_name): Treat a `?' character as part of an XLFD.
6460
6461 * fns.c (Fsubstring): Doc fix.
6462
6463 2009-01-19 Kenichi Handa <handa@m17n.org>
6464
6465 * ftfont.c (ftfont_lookup_cache): Check the return value of FcFontList.
6466 (ftfont_list): Likewise.
6467
6468 2009-01-18 Juanma Barranquero <lekktu@gmail.com>
6469
6470 * dbusbind.c (Fdbus_register_signal):
6471 * process.c (conv_sockaddr_to_lisp):
6472 * w32fns.c (Fw32_battery_status): Use empty_unibyte_string.
6473
6474 * callproc.c (Fgetenv_internal): Doc fix.
6475
6476 2009-01-16 Chong Yidong <cyd@stupidchicken.com>
6477
6478 * xfns.c (x_make_gc): Don't allocate stipple member for gc_values;
6479 it is not even used.
6480
6481 2009-01-16 Glenn Morris <rgm@gnu.org>
6482
6483 * font.c (Ffont_variation_glyphs): Silence compiler.
6484
6485 2009-01-15 Juanma Barranquero <lekktu@gmail.com>
6486
6487 * sound.c (SOUND_WARNING): Use _snprintf, for MSVC compatibility.
6488 Reported by David Robinow <drobinow@gmail.com>.
6489
6490 2009-01-15 Kenichi Handa <handa@m17n.org>
6491
6492 * coding.c (detect_coding_system): Fix handling of null_byte_found.
6493
6494 2009-01-14 Jason Rumney <jasonr@gnu.org>
6495
6496 * frame.c (x_set_font): Always store a font to the font parameter,
6497 never a fontset. (Bug#1562)
6498
6499 2009-01-14 Kenichi Handa <handa@m17n.org>
6500
6501 * coding.c (TWO_MORE_BYTES): New macro.
6502 (detect_coding_utf_16): Use TWO_MORE_BYTES instead of ONE_MORE_BYTE.
6503
6504 2009-01-13 Chong Yidong <cyd@stupidchicken.com>
6505
6506 * font.c (font_clear_prop): If clearing the family, clear the font
6507 width index too.
6508
6509 * xfaces.c (Finternal_set_lisp_face_attribute): Revert last change.
6510
6511 2009-01-12 Juanma Barranquero <lekktu@gmail.com>
6512
6513 * sound.c [WINDOWSNT] (SOUND_WARNING): New macro.
6514 (do_play_sound): Use it. Don't pass a hardcoded buffer size to mci
6515 functions, use sizeof.
6516
6517 2009-01-12 Martin Rudalics <rudalics@gmx.at>
6518
6519 * keyboard.c (read_char): Fix case where last_nonmenu_event
6520 returned a bad value with submenus. (Bug#447)
6521
6522 2009-01-12 Chong Yidong <cyd@stupidchicken.com>
6523
6524 * xfaces.c (Finternal_set_lisp_face_attribute): If setting the
6525 family, clear the font width index too.
6526
6527 2009-01-11 Jason Rumney <jasonr@gnu.org>
6528
6529 * keyboard.c (cmd_error_internal): Exit when errors occur before
6530 frame creation and not in daemon mode. (Bug#1836)
6531
6532 2009-01-10 Chong Yidong <cyd@stupidchicken.com>
6533
6534 * xdisp.c (pos_visible_p): When iterator stops on the last glyph
6535 of a display vector, backtrack.
6536 (try_window_reusing_current_matrix): Check glyph type before
6537 referencing charpos member.
6538
6539 2009-01-10 Eli Zaretskii <eliz@gnu.org>
6540
6541 Fix Bug #876:
6542
6543 * coding.c (inhibit_null_byte_detection): New variable.
6544 (detect_coding, detect_coding_system): Don't pay attention to null
6545 bytes if inhibit_null_byte_detection is non-zero.
6546 (syms_of_coding) <inhibit-null-byte-detection>: Declare and document.
6547 <inhibit-iso-escape-detection>: Doc fix.
6548
6549 2009-01-09 Jason Rumney <jasonr@gnu.org>
6550
6551 * w32font.c (add_font_entity_to_list): Don't report unknown
6552 Windows charset as any unrecognized registry. (Bug#1548)
6553 Only report Unicode Plane 2 fonts as unicode-sip.
6554
6555 2009-01-09 Chong Yidong <cyd@stupidchicken.com>
6556
6557 * xfaces.c (Fx_font_family_list): Delete function.
6558 Move compatibility version to faces.el.
6559
6560 * font.c (Ffont_family_list): Return a list of strings, not symbols.
6561
6562 2009-01-09 Martin Rudalics <rudalics@gmx.at>
6563
6564 * frame.c (x_set_frame_parameters): Remember requested value for
6565 fullscreen before it's reset by the parameter handler.
6566
6567 2009-01-09 Glenn Morris <rgm@gnu.org>
6568
6569 * keyboard.c (last_command_char): For clarity, rename to...
6570 (last_command_event): ... and update all users.
6571 (last_input_char): For clarity, rename to...
6572 (last_input_event): ... and update all users.
6573 (last-command-char, last-input-char): Move to subr.el as aliases.
6574 * cmds.c, commands.h: Update for last_command_char rename.
6575
6576 2009-01-08 Chong Yidong <cyd@stupidchicken.com>
6577
6578 * font.c (font_open_for_lface): Handle unspecified height attribute.
6579
6580 2009-01-08 Jason Rumney <jasonr@gnu.org>
6581
6582 * w32fns.c (Vx_pointer_shape, Vx_nontext_pointer_shape)
6583 (Vx_mode_pointer_shape, Vx_window_horizontal_drag_shape)
6584 (Vx_hourglass_pointer_shape, Vx_sensitive_text_pointer_shape):
6585 Don't declare.
6586 (syms_of_w32fns): Don't define x-pointer-shape variable. (Bug#1485)
6587 (x_create_tip_frame) [GLYPH_DEBUG]: Enable image debugging code.
6588
6589 2009-01-07 Kenichi Handa <handa@m17n.org>
6590
6591 * fileio.c (Finsert_file_contents): In the case of replace,
6592 remember the coding system used for decoding in
6593 coding_system (Bug#1039).
6594
6595 * coding.c (decode_coding_utf_8): Check byte_after_cr before
6596 breaking the loop. (Bug#870)
6597 (decode_coding_utf_16, decode_coding_emacs_mule)
6598 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
6599 (decode_coding_charset): Likewise.
6600
6601 2009-01-05 Martin Rudalics <rudalics@gmx.at>
6602
6603 * frame.c (x_set_frame_parameters): Make sure height (width) get
6604 applied when fullwidth (fullheight) is set. (Bug#1522)
6605
6606 2009-01-04 Juanma Barranquero <lekktu@gmail.com>
6607
6608 * w32.c: Use 64-bit arithmetic to do FILETIME conversions. (Bug#1766)
6609 (utc_base): Declare as ULONGLONG, not long double.
6610 (convert_time_raw): Delete.
6611 (FILETIME_TO_U64, U64_TO_LISP_TIME): New macros.
6612 (initialize_utc_base): New function.
6613 (convert_time): Use FILETIME_TO_U64, initialize_utc_base.
6614 (convert_from_time_t): Use initialize_utc_base; compute result with
6615 64-bit arithmetic.
6616 (process_times): Use FILETIME_TO_U64, U64_TO_LISP_TIME.
6617
6618 2009-01-03 Eli Zaretskii <eliz@gnu.org>
6619
6620 * process.c (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess)
6621 (Qttname, Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime)
6622 (Qcutime, Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs)
6623 (Quser, Qgroup, Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime)
6624 [!subprocesses]: Define.
6625 (syms_of_process) [!subprocesses]: Intern and staticpro them.
6626 (Flist_system_processes, Fsystem_process_attributes)
6627 [!subprocesses]: Call list_system_processes and
6628 system_process_attributes instead of returning Qnil.
6629
6630 * dosfns.c (system_process_attributes, list_system_processes):
6631 New functions.
6632
6633 * vm-limit.c (ret_lim_data) [MSDOS]: New function.
6634
6635 * sysdep.c (list_system_processes, system_process_attributes) [MSDOS]:
6636 Don't use the default (no-op) implementation.
6637
6638 2009-01-03 Jason Rumney <jasonr@gnu.org>
6639
6640 * keyboard.c (parse_modifiers_uncached): Wheel events are
6641 clicks (bug#687).
6642
6643 * w32term.c (x_query_colors, x_query_color): New functions.
6644
6645 * image.c (x_to_xcolors, png_load): Eliminate W32 specific code.
6646 (svg_load_image): Cast returned pointers from dynamically loaded
6647 functions. Eliminate W32 specific code.
6648
6649 2009-01-02 Dan Nicolaescu <dann@ics.uci.edu>
6650
6651 * nsfns.m (x_set_foreground_color, x_set_background_color)
6652 (x_set_cursor_color, x_set_icon_name, x_explicitly_set_name)
6653 (x_set_title, x_set_icon_type, x_set_cursor_type): Rename to use
6654 x_ prefix instead of ns_. Update references.
6655 (syms_of_nsfns): Add a FIXME comment.
6656
6657 * nsterm.m (x_set_cursor_type): New prototype.
6658 (setValuesFromPanel): Use it instead of the old ns_ prefixed name.
6659
6660 * sysdep.c (system_process_attributes): Provide Qtime and Qctime
6661 for Solaris instead of incorrectly providing Qutime and Qcutime.
6662
6663 2009-01-02 Eli Zaretskii <eliz@gnu.org>
6664
6665 * w32.c (process_times): Compute sum of utime and stime.
6666 (system_process_attributes): Add Qtime to the alist.
6667
6668 * sysdep.c (system_process_attributes): Compute Qtime and Qctime
6669 and add them to the alist.
6670
6671 * process.c (top level) <Qtime, Qctime>: New variables.
6672 (syms_of_process): staticpro them.
6673 (Fsystem_process_attributes): Add their documentation to the doc
6674 string.
6675
6676 * process.h: Declare Qtime and Qctime.
6677
6678 2009-01-02 Jason Rumney <jasonr@gnu.org>
6679
6680 * image.c (Qgobject): New symbol.
6681 (syms_of_image): Initialize it.
6682 (init_svg_functions): Load some functions from gobject library.
6683
6684 2009-01-01 Dan Nicolaescu <dann@ics.uci.edu>
6685
6686 * frame.c (make_terminal_frame): Remove redundant code and useless
6687 block.
6688
6689 2009-01-01 Andreas Schwab <schwab@suse.de>
6690
6691 * process.c (conv_sockaddr_to_lisp): Add workaround for
6692 getsockname bug on BSD.
6693
6694 2009-01-01 Chong Yidong <cyd@stupidchicken.com>
6695
6696 * xfns.c (x_create_tip_frame): Set border width of the X window.
6697
6698 * xfaces.c (Finternal_set_lisp_face_attribute): Improve error message.
6699
6700 2009-01-01 Jason Rumney <jasonr@gnu.org>
6701
6702 * w32term.c (x_new_font): Return font object, not fontset. (Bug#119)
6703 Don't block input, as per earlier xterm.c changes.
6704
6705 2008-12-31 Adrian Robert <Adrian.B.Robert@gmail.com>
6706
6707 * nsfns.m (ns_appkit_version_str): Rename from ns_appkit_version.
6708 (ns_appkit_version_int): New function.
6709 (x-server-version): Use ns_appkit_version_int and follow 21+
6710 convention of returning 3 integers.
6711
6712 2008-12-30 Kenichi Handa <handa@m17n.org>
6713
6714 * character.h (CHAR_VARIATION_SELECTOR_P): New macro.
6715 (CHAR_SURROGATE_PAIR_P): New macro.
6716
6717 * font.h (struct font_driver): New member get_variation_glyphs.
6718
6719 * font.c (font_range): Don't require a font for a variation selector.
6720 (Ffont_variation_glyphs): New function.
6721 (syms_of_font): Defsubr it.
6722
6723 * ftfont.c (ftfont_driver): Set the member get_variation_glyphs to
6724 ftfont_variation_glyphs.
6725 (setup_otf_gstring): New function.
6726 (ftfont_drive_otf): Use it.
6727 (ftfont_shape_by_flt): Handle variation selector.
6728 (ftfont_variation_glyphs): New function.
6729
6730 2008-12-30 Martin Rudalics <rudalics@gmx.at>
6731
6732 * frame.c (Vemacs_iconified): Remove.
6733
6734 2008-12-30 Jason Rumney <jasonr@gnu.org>
6735
6736 * frame.c (store_frame_param, x_get_arg): Enable newer code on
6737 WINDOWSNT too, as related changes have already been synced. (Bug#117)
6738
6739 2008-12-30 Chong Yidong <cyd@stupidchicken.com>
6740
6741 * indent.c (Fvertical_motion): Don't advance iterator if we have
6742 reseated to the desired position.
6743
6744 * xdisp.c (move_it_to): Handle GET_FROM_STRETCH method when
6745 checking for pos match.
6746
6747 2008-12-30 Kenichi Handa <handa@m17n.org>
6748
6749 * insdel.c (copy_text): To convert a non-ASCII char to unibyte,
6750 just get the low 8-bit of the code.
6751
6752 * font.c (font_intern_prop): Validate str as multibyte.
6753
6754 2008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
6755
6756 * dispextern.h (struct face): Move lface and hash from the middle
6757 of bitfields.
6758
6759 * Makefile.in (INTERVALS_H): Rename from INTERVAL_SRC, update all users.
6760
6761 2008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
6762
6763 * Makefile.in (INTERVAL_SRC): Also depend on dispextern.h.
6764 (coding.o, dispnew.o, keymap.o, msdos.o): Depend on INTERVAL_SRC
6765 instead of intervals.h.
6766
6767 2008-12-26 Andreas Schwab <schwab@suse.de>
6768
6769 * keymap.c (map_keymap_char_table_item): Make a copy of KEY if it is a
6770 cons.
6771
6772 2008-12-26 Martin Rudalics <rudalics@gmx.at>
6773
6774 * textprop.c (Qminibuffer_prompt): New variable.
6775 (syms_of_textprop): Initialize it.
6776 * callint.c (Fcall_interactively): For `c', `k', and `K' prompt
6777 in minibuffer-prompt face. (Bug#1662)
6778
6779 2008-12-25 Jason Rumney <jasonr@gnu.org>
6780
6781 * buffer.c (Fbuffer_swap_text): Use POINTER_TYPE.
6782
6783 2008-12-24 Jason Rumney <jasonr@gnu.org>
6784
6785 * ralloc.c (r_alloc_reset_variable): New function.
6786
6787 * buffer.c (Fbuffer_swap_text) [REL_ALLOC]: Reset ralloc's internal
6788 record of what points where. (Bug#716)
6789
6790 2008-12-22 Dan Nicolaescu <dann@ics.uci.edu>
6791
6792 * minibuf.c (read_minibuf): Follow the non-interactive case when
6793 running as a daemon, before detaching.
6794
6795 2008-12-22 Andreas Schwab <schwab@suse.de>
6796
6797 * buffer.c (init_buffer): Use realloc instead of xrealloc.
6798 * gtkutil.c (free_widget_value): Use xfree instead of free.
6799
6800 2008-12-22 Martin Rudalics <rudalics@gmx.at>
6801
6802 * frame.c (delete_frame): New function derived from
6803 Fdelete_frame to handle Qnoelisp value for FORCE argument.
6804 Delete last frame iff FORCE equals Qnoelisp. (Bug#1450)
6805 (Fdelete_frame): Call delete_frame. Remove line from doc-string
6806 saying that FORCE non-nil doesn't run `delete-frame-functions'.
6807 * frame.h: Extern delete_frame.
6808 * window.c (window_loop):
6809 * terminal.c (delete_terminal):
6810 * xterm.c (x_connection_closed):
6811 * xfns.c (Fx_hide_tip):
6812 * w32fns.c (Fx_hide_tip): Call delete_frame instead of Fdelete_frame.
6813
6814 2008-12-21 Jason Rumney <jasonr@gnu.org>
6815
6816 * w32uniscribe.c (uniscribe_encode_char): Return FONT_INVALID_CHAR
6817 when character maps to .notdef character.
6818
6819 2008-12-21 Stefan Monnier <monnier@iro.umontreal.ca>
6820
6821 * keyboard.c (cmd_error_internal): Don't exit in daemon mode, bug#1310.
6822
6823 2008-12-20 Jason Rumney <jasonr@gnu.org>
6824
6825 * frame.c (Fmake_terminal_frame): Raise an error when called from
6826 a graphical frame on Windows. (Bug#1325)
6827
6828 2008-12-20 Jan Djärv <jan.h.d@swipnet.se>
6829
6830 * frame.c (Fdelete_frame): Set f->menu_bar_vector to Qnil.
6831
6832 2008-12-20 Chong Yidong <cyd@stupidchicken.com>
6833
6834 * minibuf.c (Fread_buffer): Doc fix.
6835
6836 2008-12-20 Jason Rumney <jasonr@gnu.org>
6837
6838 * fileio.c (Fexpand_file_name): Do not allow ../ to go beyond the
6839 server name in UNC paths. (Bug#719)
6840
6841 * coding.c (decode_coding): Clear chars_at_source flag when using
6842 charbuf. (Bug#1035)
6843
6844 2008-12-19 Daniel Engeler <engeler@gmail.com>
6845
6846 * sysdep.c (serial_configure): Fix typo.
6847
6848 2008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
6849
6850 * sysdep.c: Include alloca.h.
6851 (system_process_attributes): Add implementation for Solaris.
6852
6853 * s/sol2-10.h (HAVE_PROCFS, _STRUCTURED_PROC): New defines.
6854
6855 2008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
6856
6857 Reorganize implementation of Flist_system_processes and
6858 Fsystem_process_attributes. No functional changes.
6859 * process.c: Don't #include pwd.h, grp.h and limits.h.
6860 (Flist_system_processes): Just call list_system_processes.
6861 (Fsystem_process_attributes): Just call system_process_attributes.
6862 (procfs_list_system_processes, time_from_jiffies)
6863 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
6864 (procfs_get_total_memory, procfs_system_process_attributes): Move ...
6865
6866 * sysdep.c: ... here. Include pwd.h, grp.h and limits.h.
6867 (list_system_processes): Rename from
6868 procfs_list_system_processes. Enclose in #ifdef HAVE_PROCFS.
6869 Provide a do nothing implementation.
6870 (system_process_attributes): Rename from
6871 procfs_list_system_processes.
6872 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
6873 (procfs_get_total_memory): Enclose in #ifdef GNU_LINUX.
6874
6875 * w32.c (list_system_processes): Rename from
6876 w32_list_system_processes.
6877 (system_process_attributes): Rename from
6878 w32_system_process_attributes.
6879
6880 * s/gnu-linux.h (LISTPROC, PROCATTR): Remove.
6881
6882 * process.h (w32_list_system_processes)
6883 (w32_system_process_attributes): Remove.
6884 (list_system_processes, system_process_attributes):
6885 New prototypes.
6886
6887 2008-12-19 Kenichi Handa <handa@m17n.org>
6888
6889 * xfont.c (xfont_decode_coding_xlfd): New function.
6890 (xfont_encode_coding_xlfd): New function.
6891 (xfont_list_pattern): Decode XLFD by iso-8859-1.
6892 (xfont_list): Decode and encode XLFD by iso-8859-1.
6893 (xfont_match): Likewise.
6894 (xfont_list_family): Likewise.
6895 (xfont_open): Likewise.
6896
6897 * ftfont.c (ftfont_open): Generate a multibyte string if given
6898 names are utf-8.
6899
6900 * xftfont.c (xftfont_open): Generate a multibyte string if given
6901 names are utf-8.
6902
6903 2008-12-18 Jan Djärv <jan.h.d@swipnet.se>
6904
6905 * gtkutil.c (xg_frame_resized): Remove check if rows/columns have
6906 changed.
6907 (xg_tool_bar_proxy_callback): Put focus on the frame after we have
6908 clicked on a detached tool bar button.
6909
6910 2008-12-18 Dan Nicolaescu <dann@ics.uci.edu>
6911
6912 * emacs.c (main): Print and error and exit when no data is read
6913 from the pipe.
6914
6915 2008-12-17 Jason Rumney <jasonr@gnu.org>
6916
6917 * w32font.c (w32font_has_char): Always return -1.
6918
6919 2008-12-16 Kenichi Handa <handa@m17n.org>
6920
6921 * font.c (font_open_entity): Fix previous change.
6922
6923 2008-12-16 Dan Nicolaescu <dann@ics.uci.edu>
6924
6925 * process.c: Include <limits.h>.
6926
6927 2008-12-16 Chetan Pandya <pandyacus@sbcglobal.net> (tiny change)
6928
6929 * font.c (font_update_drivers): Fix mistake in reconstructing the
6930 driver list.
6931
6932 2008-12-16 Chong Yidong <cyd@stupidchicken.com>
6933
6934 * font.c (font_clear_cache): Fix format of font cache data.
6935
6936 2008-12-15 Chong Yidong <cyd@stupidchicken.com>
6937
6938 * xftfont.c (xftfont_open): Free Xft font pattern if
6939 XftFontOpenPattern fails.
6940
6941 * xterm.c (x_free_frame_resources): Remove extraneous call to
6942 free_frame_faces.
6943
6944 2008-12-13 Chong Yidong <cyd@stupidchicken.com>
6945
6946 * xterm.c (x_delete_display): Move xim_close_dpy call to
6947 x_delete_terminal.
6948 (x_delete_terminal): Call xim_close_dpy.
6949
6950 2008-12-13 Jason Rumney <jasonr@gnu.org>
6951
6952 * w32font.c (intern_font_name): New function.
6953 (add_font_name_to_list, w32_enumfont_pattern_entity): Use it.
6954 (w32font_open_internal, Fx_select_font): Decode font name.
6955 (fill_in_logfont, list_all_matching_fonts): Encode font name.
6956
6957 * w32font.h (intern_font_name): Declare new function.
6958
6959 * w32uniscribe.c (add_opentype_font_name_to_list):
6960 Use intern_font_name.
6961
6962 2008-12-13 Chong Yidong <cyd@stupidchicken.com>
6963
6964 * frame.c (Fdelete_frame): Call free_font_driver_list.
6965
6966 * font.c (free_font_driver_list): Implement missing function.
6967
6968 * w32term.c (w32_term_init): Don't initialize the image cache
6969 here; it will be done in init_frame_faces.
6970
6971 * xterm.h (struct xim_inst_t): Definition moved from xterm.c.
6972 (struct x_display_info): Remove unused member null_pixel. New
6973 member xim_callback_data.
6974
6975 * xterm.c (struct xim_inst_t): Definition moved to xterm.h.
6976 (xim_initialize): Save pointer to callback function data.
6977 (xim_close_dpy): Free callback function data. Call XCloseIM,
6978 reverting 2008-11-04 change by David Smith.
6979 (x_term_init): Don't initialize the image cache here; it will be
6980 done in init_frame_faces. Remove ancient "null_pixel" cruft.
6981 (x_delete_display): Free x_dnd_atoms member.
6982
6983 2008-12-13 Kenichi Handa <handa@m17n.org>
6984
6985 * font.c (font_rescale_ratio): Moved from xfaces.c.
6986 Argument type changed. Handle a font-spec too.
6987 (font_score): Check Vface_font_rescale_alist.
6988 (font_open_entity): Likewise. (Bug#1547)
6989
6990 * xfaces.c (font_rescale_ratio): Moved to font.c.
6991
6992 2008-12-13 Chong Yidong <cyd@stupidchicken.com>
6993
6994 * xfns.c (Fx_wm_set_size_hint): Check if the frame is an X frame.
6995
6996 2008-12-12 Jason Rumney <jasonr@gnu.org>
6997
6998 * w32fns.c (x_display_info_for_name, Fx_open_connection): Set
6999 Vwindow_system_version to the real w32 major version.
7000
7001 2008-12-12 Dan Nicolaescu <dann@ics.uci.edu>
7002
7003 * term.c (init_tty): Move setting the terminal name before the
7004 potential user: maybe_fatal.
7005
7006 2008-12-11 Chong Yidong <cyd@stupidchicken.com>
7007
7008 * term.c (tty_free_frame_resources): Renamed from delete_tty_output;
7009 all callers changed. Call free_frame_faces to free the face cache.
7010
7011 2008-12-11 Jason Rumney <jasonr@gnu.org>
7012
7013 * w32font.c (fill_in_logfont): Don't assume symbol script means
7014 SYMBOL_CHARSET. (Bug#547)
7015
7016 * w32uniscribe.c (uniscribe_encode_char): Increase glyph buffer
7017 size for surrogates. (Bug#1096, bug#872)
7018
7019 2008-12-11 Juanma Barranquero <lekktu@gmail.com>
7020
7021 * w32proc.c (Fw32_get_locale_info): Decode long form of locale name.
7022
7023 2008-12-11 Juanma Barranquero <lekktu@gmail.com>
7024
7025 * process.c (Fsystem_process_attributes, syms_of_process):
7026 Fix typo in name of Ssystem_process_attributes.
7027 Reported by Ulrich Mueller <ulm@kph.uni-mainz.de>.
7028
7029 2008-12-11 Juanma Barranquero <lekktu@gmail.com>
7030
7031 * syntax.c (Fmodify_syntax_entry): Doc fix.
7032
7033 2008-12-10 Juanma Barranquero <lekktu@gmail.com>
7034
7035 * font.c (Ffont_spec): Move usage to end of docstring.
7036
7037 2008-12-10 Jason Rumney <jasonr@gnu.org>
7038
7039 * w32font.c (Qcham): New symbol.
7040 (font_supported_scripts): Add cham, and comments for other new
7041 scripts in bitfield from OpenType spec.
7042 (add_font_entity_to_list): Limit unicode-sip fonts to those that
7043 contain characters beyond the bmp.
7044
7045 2008-12-10 Kenichi Handa <handa@m17n.org>
7046
7047 * ftfont.c (fc_charset_table): Add "unicode-sip".
7048 (ftfont_spec_pattern): Lookup fc_charset_table for the registry
7049 Qunicode_sip.
7050
7051 2008-12-10 Juanma Barranquero <lekktu@gmail.com>
7052
7053 * coding.c (QCdefault_char): Rename from QCdefalut_char.
7054 (Fcoding_system_put): Use QCdefault_char.
7055 (syms_of_coding): Set QCdefault_char, not QCdefalut_char.
7056
7057 2008-12-09 Chong Yidong <cyd@stupidchicken.com>
7058
7059 * xftfont.c (syms_of_xftfont): Fix typo.
7060
7061 * buffer.c (Fbuffer_swap_text): Signal error if swapping a dead buffer.
7062
7063 2008-12-08 Dan Nicolaescu <dann@ics.uci.edu>
7064
7065 * emacs.c (main): Close daemon_pipe on exec.
7066
7067 2008-12-08 Chong Yidong <cyd@stupidchicken.com>
7068
7069 * termchar.h (struct tty): New members termcap_term_buffer and
7070 termcap_strings_buffer.
7071
7072 * term.c (encode_terminal_code): Free any previous memory blocks
7073 before calling xmalloc for encode_terminal_src or encode_terminal_dst.
7074 (maybe_fatal): Buffer argument deleted. Don't free buffer here.
7075 All callers changed.
7076 (init_tty): Store termcap data and string buffers in new struct
7077 tty members termcap_term_buffer and termcap_strings_buffer.
7078 (delete_tty): Free them.
7079 (syms_of_term): Initialize encode_terminal_src and encode_terminal_dst.
7080
7081 2008-12-07 Seiji Zenitani <zenitani@mac.com>
7082
7083 * nsfns.m (ns_set_background_color): Remove code duplication.
7084 It was a substitute for face-transparency on OS X 10.3.
7085
7086 2008-12-06 Chong Yidong <cyd@stupidchicken.com>
7087
7088 * coding.c (make_conversion_work_buffer): Disable buffer
7089 modification hooks in the work buffer.
7090
7091 2008-12-05 Eli Zaretskii <eliz@gnu.org>
7092
7093 * process.c (procfs_system_process_attributes): If `nread' has a
7094 negative value, assign zero to it.
7095
7096 2008-12-05 Chong Yidong <cyd@stupidchicken.com>
7097
7098 * eval.c (Vdebug_on_error): Doc fix.
7099
7100 2008-12-05 Kenichi Handa <handa@m17n.org>
7101
7102 * ftfont.c (ftfont_shape_by_flt): Use "combining" flt if the
7103 second character is a combining character.
7104
7105 2008-12-05 Eli Zaretskii <eliz@gnu.org>
7106
7107 * process.c (procfs_system_process_attributes): Don't use cmd,
7108 cmdsize, and q without initializing them first.
7109
7110 2008-12-04 Jason Rumney <jasonr@gnu.org>
7111
7112 * w32font.c (w32font_draw): Initialize orig_clip before getting
7113 it, and delete it when finished.
7114
7115 2008-12-04 Dan Nicolaescu <dann@ics.uci.edu>
7116
7117 * keyboard.c (kbd_buffer_get_event): Follow the non-interactive
7118 case when running as a daemon before detaching.
7119
7120 2008-12-03 Juanma Barranquero <lekktu@gmail.com>
7121
7122 * w32.c (init_environment): Don't unload library shell32.dll.
7123
7124 2008-12-03 Kenichi Handa <handa@m17n.org>
7125
7126 * font.c (font_at): Set `multibyte' at first.
7127
7128 * coding.c (decode_coding_charset): Check type of an element of
7129 vector VALIDS.
7130 (encode_coding_emacs_mule): Be sure to set `code'.
7131
7132 * fontset.c (face_for_char): Handle invalid charset property correctly.
7133 (font_for_char): Likewise.
7134
7135 2008-12-03 Chong Yidong <cyd@stupidchicken.com>
7136
7137 * font.c (Fopen_font): Compute pixel size correctly.
7138 (font_update_lface): Handle fonts with corrupted size specs,
7139 i.e. non-int and non-float.
7140
7141 * ftfont.c (ftfont_match): Initialize entity variable.
7142 (ftfont_resolve_generic_family): Avoid using uninitialized var.
7143 (ftfont_list_family): Initialize list var earlier.
7144
7145 * xselect.c (Fx_get_cut_buffer_internal): Fix memory leak.
7146
7147 * xterm.c (x_draw_glyph_string): Fall back on
7148 underline_minimum_offset for underline position.
7149
7150 2008-12-03 Dan Nicolaescu <dann@ics.uci.edu>
7151
7152 * keyboard.c (read_char_help_form_unwind): Specify the type for ARG.
7153
7154 * character.c (c_string_width): Specify the type for LEN.
7155
7156 2008-12-03 Kenichi Handa <handa@m17n.org>
7157
7158 * coding.c (decode_coding_utf_16): Initialize consumed_chars_base to 0.
7159 (decode_coding_utf_8): Likewise.
7160 (detect_coding_system): Initialize utf_16_le_eol to -1, val to Qnil.
7161 (produce_chars): Initialize consumed_chars to 0.
7162
7163 2008-12-02 Chong Yidong <cyd@stupidchicken.com>
7164
7165 * keyboard.c (make_lispy_position): Only use PT if the selected
7166 window is current.
7167
7168 2008-12-02 Andreas Schwab <schwab@suse.de>
7169
7170 * font.c (font_unparse_fcname): Fix use of uninitialized variable.
7171
7172 * doprnt.c (doprnt1): Fix size of charbuf.
7173
7174 2008-12-02 Chong Yidong <cyd@stupidchicken.com>
7175
7176 * keyboard.c (timer_check): Revert last change.
7177
7178 2008-12-02 Juanma Barranquero <lekktu@gmail.com>
7179
7180 * makefile.w32-in ($(BLD)/w32console.$(O)): Fix silly, silly typo.
7181
7182 2008-12-01 Juanma Barranquero <lekktu@gmail.com>
7183
7184 * makefile.w32-in: Update dependencies.
7185 (CONFIG_H): Add $(EMACS_ROOT)/nt/inc/sys/time.h.
7186
7187 2008-12-01 Andreas Schwab <schwab@suse.de>
7188
7189 * font.c (register_font_driver): Use xmalloc.
7190 (font_put_frame_data): Likewise.
7191
7192 2008-12-01 Chong Yidong <cyd@stupidchicken.com>
7193
7194 * xfaces.c (realize_x_face): Make abort condition clearer.
7195
7196 * gtkutil.c (update_frame_tool_bar): Initialize variable.
7197
7198 2008-11-30 Chong Yidong <cyd@stupidchicken.com>
7199
7200 * keyboard.c (timer_check): After a timer runs, ensure that the
7201 selected window's buffer is current.
7202
7203 2008-11-30 Juanma Barranquero <lekktu@gmail.com>
7204
7205 * makefile.w32-in ($(BLD)/abbrev.$(O)): Remove.
7206 It was accidentally restored by the Unicode merge.
7207
7208 * w32proc.c (Fw32_get_locale_info): Fix typo in docstring.
7209
7210 2008-11-29 Juanma Barranquero <lekktu@gmail.com>
7211
7212 * w32proc.c: Include "coding.h".
7213 (Fw32_short_file_name): Encode filename passed to Windows API.
7214 (Fw32_long_file_name): Encode filename passed to Windows API and
7215 decode back the result. (Bug#1433)
7216
7217 2008-11-29 Kenichi Handa <handa@m17n.org>
7218
7219 * charset.h (CHAR_CHARSET_P): Check if the encoder is loaded or
7220 not before accessing it.
7221
7222 * charset.c (Fdefine_charset_internal): After calculating
7223 min_char, max_char, and fastmap, copy the charset structure again.
7224 (encode_char): Fix the previous change.
7225
7226 2008-11-28 Seiji Zenitani <zenitani@mac.com>
7227
7228 * frame.c (x_set_alpha) [NS_IMPL_COCOA]: Call x_set_frame_alpha.
7229
7230 * nsfns.m (ns_frame_parm_handlers): Set alpha handler.
7231
7232 * nsterm.m (x_set_frame_alpha): New function.
7233
7234 2008-11-27 Eli Zaretskii <eliz@gnu.org>
7235
7236 * xfaces.c (Fx_font_family_list, syms_of_xfaces): Fix last change.
7237
7238 2008-11-27 Juanma Barranquero <lekktu@gmail.com>
7239
7240 * w32font.c (add_font_entity_to_list): Pass the right LOGFONT
7241 pointer to check_face_name.
7242
7243 2008-11-27 Kenichi Handa <handa@m17n.org>
7244
7245 * category.h (SET_CATEGORY_SET): Call set_category_set.
7246 (set_category_set): Extern it.
7247
7248 * category.c (hash_get_category_set): New function.
7249 (Fmodify_category_entry): Adjusted for the change of
7250 char_table_ref_and_range. Call hash_get_category_set to get a
7251 category set to store in the table.
7252
7253 * character.h (MAYBE_UNIFY_CHAR): Call maybe_unify_char instead of
7254 Funify_charset.
7255
7256 * charset.h (enum charset_method): Delete CHARSET_METHOD_MAP_DEFERRED.
7257 (DECODE_CHAR): Check if the decoder vector is ready.
7258 (ENCODE_CHAR): Check if the encoder char-table is ready.
7259 (maybe_unify_char): Extern it.
7260
7261 * charset.c (Vchar_unified_charset_table): Delete it.
7262 (inhibit_load_charset_map): New variable.
7263 (temp_charset_work): New variable.
7264 (SET_TEMP_CHARSET_WORK_ENCODER, GET_TEMP_CHARSET_WORK_ENCODER)
7265 (SET_TEMP_CHARSET_WORK_DECODER, GET_TEMP_CHARSET_WORK_DECODER):
7266 New macros.
7267 (load_charset_map): Meaning of control_flag changed. If
7268 inhibit_load_charset_map is nonzero, setup a table in
7269 temp_charset_work.
7270 (load_charset): New argument control_flag.
7271 (map_charset_for_dump): New function.
7272 (map_charset_chars): If inhibit_load_charset_map is nonzero, use
7273 map_charset_for_dump.
7274 (Fdefine_charset_internal): If the charset method is MAP, load
7275 mapping tables by calling load_charset.
7276 (Funify_charset): Don't load a mapping table but directly set
7277 Vchar_unify_table.
7278 (maybe_unify_char): New function.
7279 (decode_char): Don't handle the deleted method MAP_DEFERRED.
7280 Handle the case of inhibit_load_charset_map being nonzero.
7281 (encode_char): Don't handle the deleted method MAP_DEFERRED.
7282 Handle the case of inhibit_load_charset_map being nonzero.
7283 (Fclear_charset_maps): Just free temp_charset_work.
7284 (syms_of_charset): Make `inhibit-load-charset-map' a Lisp
7285 variable.
7286
7287 * chartab.c (sub_char_table_ref_and_range): Adjusted for the
7288 change of char_table_ref_and_range.
7289 (char_table_ref_and_range): Change the meaning of argument FROM
7290 and TO. Now the caller must provide initial values for *FROM
7291 and *TO.
7292
7293 * fontset.c (fontset_add): Adjusted for the change of
7294 char_table_ref_and_range.
7295 (fontset_get_font_group): Likewise.
7296 (Ffontset_info): Likewise.
7297
7298 * keymap.c (describe_vector): Adjusted for the change of
7299 char_table_ref_and_range. For char-table, put boundary between
7300 non-ASCII and 8-bit characters.
7301
7302 * print.c (print_object): For bool-vector, delete unnecessary
7303 check of ASCII_BYTE_P.
7304
7305 2008-11-26 Jason Rumney <jasonr@gnu.org>
7306
7307 * w32font.c (w32font_open_internal): Don't include external
7308 leading in font height. (Bug#879)
7309
7310 2008-11-26 Glenn Morris <rgm@gnu.org>
7311
7312 * xfaces.c (Fx_font_family_list): Replace lisp/term/pc-win.el
7313 redefinition with ifdef. (Bug#1383)
7314
7315 2008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
7316
7317 * nsterm.m (ns_get_color): Handle long hex strings (fixes bug #1044).
7318
7319 2008-11-24 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
7320
7321 * nsterm.m (-otherMouseDown:, -otherMouseUp:, -otherMouseDragged):
7322 New EmacsView methods.
7323 (EV_UDMODIFIERS, EV_BUTTON): Add OtherMouse constants.
7324 Fixes bug #1048,1357,1414.
7325
7326 2008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
7327
7328 Fix bug #1362.
7329 * image.c (x_clear_image_1): Do not free background under HAVE_NS, it
7330 is not an indexed color.
7331 * nsterm.m (free_indexed_color): Add argument checking.
7332 * nsfns.m: Move config.h to before system includes (advised by Dan N.).
7333
7334 2008-11-24 Chong Yidong <cyd@stupidchicken.com>
7335
7336 * minibuf.c (Fcompleting_read, Vminibuffer_completion_confirm):
7337 Document confirm-after-completion value for
7338 minibuffer-completion-confirm.
7339
7340 2008-11-24 Jason Rumney <jasonr@gnu.org>
7341
7342 * w32font.c (check_face_name): Use xstrcasecmp. Avoid compiler
7343 warning.
7344
7345 2008-11-23 Jason Rumney <jasonr@gnu.org>
7346
7347 * w32uniscribe.c (uniscribe_encode_char): Ensure context is
7348 restored before returning.
7349
7350 * w32font.c (check_face_name): New function.
7351 (add_font_entity_to_list): Use it to filter out common substituted
7352 fonts. (Bug#642)
7353
7354 2008-11-22 Martin Rudalics <rudalics@gmx.at>
7355
7356 * buffer.c (Fswitch_to_buffer): Reword and mention new option
7357 confirm-nonexistent-file-or-buffer in doc-string.
7358
7359 2008-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
7360
7361 * buffer.c (Fbuffer_swap_text): Remove redundant marker manipulation.
7362 Fix copy/paste typo. Add checks.
7363
7364 2008-11-21 Kenichi Handa <handa@m17n.org>
7365
7366 * coding.c (detect_coding_iso_2022): Reject invalid composition
7367 sequence.
7368 (DECODE_COMPOSITION_START): If the current source is the last
7369 block, and the current composition doesn't end, regard this
7370 sequence as invalid.
7371 (decode_coding_iso_2022): Handle invalid composition sequence.
7372
7373 2008-11-20 Martin Rudalics <rudalics@gmx.at>
7374
7375 * window.c (coordinates_in_window): Don't return
7376 ON_VERTICAL_BORDER for the rightmost position of a mode/header
7377 line when the window is not the rightmost one. (Bug#1372)
7378
7379 2008-11-16 Ben North <ben@redfrontdoor.org> (tiny change)
7380
7381 * buffer.c (syms_of_buffer): Fix doc-string of cursor-type.
7382
7383 2008-11-15 Eli Zaretskii <eliz@gnu.org>
7384
7385 * msdos.c (run_msdos_command): Don't call dos_ttcooked, dos_ttraw,
7386 and bright_bg if noninteractive is non-zero.
7387
7388 2008-11-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7389
7390 * xterm.c (x_draw_glyph_string): For stretch glyphs, don't call
7391 x_draw_glyph_string_background.
7392
7393 * w32term.c (x_draw_glyph_string): Likewise.
7394
7395 2008-11-15 Chong Yidong <cyd@stupidchicken.com>
7396
7397 * xterm.c (x_draw_glyph_string): Stop drawing the background of
7398 the next glyph string once past the overhang width.
7399
7400 * nsterm.m (ns_draw_glyph_string): Likewise.
7401
7402 * w32term.c (x_draw_glyph_string): Likewise.
7403
7404 2008-11-14 Fabrice Popineau <fabrice.popineau@supelec.fr> (tiny change)
7405
7406 * fileio.c (Finsert_file_contents): Decrement specpdl_ptr to avoid
7407 double file close.
7408
7409 2008-11-14 Martin Rudalics <rudalics@gmx.at>
7410
7411 * window.c (window_loop): In DELETE_BUFFER_WINDOWS case, reset
7412 dedicated status of window before attempting to display another
7413 buffer in it.
7414
7415 2008-11-14 Juanma Barranquero <lekktu@gmail.com>
7416
7417 * msdos.c (Fmsdos_long_file_names):
7418 (syms_of_msdos) <dos-unsupported-char-glyph>:
7419 * dosfns.c (Fint86): Fix typos in docstrings.
7420
7421 2008-11-14 Eli Zaretskii <eliz@gnu.org>
7422
7423 * makefile.w32-in (OBJ1, WIN32OBJ): Fix whitespace.
7424
7425 2008-11-14 Katsumi Yamaoka <yamaoka@jpl.org>
7426
7427 * puresize.h (BASE_PURESIZE): Increase to 1260000.
7428
7429 2008-11-12 Michal Nazarewicz <mina86@tlen.pl> (tiny change)
7430
7431 * frame.c (x_set_alpha): Set alpha to -1 if nil given.
7432
7433 * frame.h: Negative alpha means "don't touch".
7434
7435 * w32term.c (x_set_frame_alpha): Do nothing if alpha is negative.
7436
7437 * xterm.c (x_set_frame_alpha): Do nothing if alpha is negative.
7438
7439 2008-11-12 Dan Nicolaescu <dann@ics.uci.edu>
7440
7441 * hftctl.c:
7442 * chpdef.h:
7443 * acldef.h: Remove files used only for systems no longer supported.
7444
7445 * Makefile.in: Fix .o alphabetical ordering.
7446 (hftctl.o): Remove dependency, file removed.
7447 (keymap.o, print.o): Depend on charset.h.
7448
7449 2008-11-10 Kenichi Handa <handa@m17n.org>
7450
7451 * character.c (Fget_byte): Fix and make it faster for unibyte target.
7452
7453 2008-11-08 Chong Yidong <cyd@stupidchicken.com>
7454
7455 * dired.c (file_name_completion): If completion_ignore_case is
7456 enabled, ignore case when checking completion-regexp-list.
7457
7458 2008-11-08 Eli Zaretskii <eliz@gnu.org>
7459
7460 * vm-limit.c (get_lim_data): Fix last change.
7461
7462 2008-11-08 Kenichi Handa <handa@m17n.org>
7463
7464 * character.c (Fget_byte): New function.
7465 (syms_of_character): Defsubr Fget_byte.
7466
7467 2008-11-07 Chong Yidong <cyd@stupidchicken.com>
7468
7469 * xdisp.c (try_window_reusing_current_matrix): Ensure that window
7470 cursor position is valid after scrolling.
7471
7472 2008-11-06 Juanma Barranquero <lekktu@gmail.com>
7473
7474 * fns.c (Frandom): Rename arg N to LIMIT to match the docs; doc fix.
7475
7476 2008-11-06 Glenn Morris <rgm@gnu.org>
7477
7478 * xterm.c (handle_one_xevent): Don't let popup menus cause
7479 mouse-autoselect-window related window switching. (Bug#1261)
7480
7481 2008-11-04 David Smith <davidsmith@acm.org> (tiny change)
7482
7483 * xterm.c (xim_close_dpy): Avoid double-free on X11R6 XIM.
7484
7485 2008-11-04 Andreas Schwab <schwab@suse.de>
7486
7487 * xfns.c (Fx_wm_set_size_hint): Add missing return value.
7488
7489 2008-11-03 Chong Yidong <cyd@stupidchicken.com>
7490
7491 * xfns.c (Fx_wm_set_size_hint): New function.
7492
7493 2008-11-03 Martin Rudalics <rudalics@gmx.at>
7494
7495 * textprop.c (Fprevious_single_char_property_change): Return 0
7496 when there's no change in a string. (Bug#1301)
7497
7498 2008-11-02 Martin Rudalics <rudalics@gmx.at>
7499
7500 * frame.c (do_switch_frame): New argument NORECORD passed to
7501 Fselect_window.
7502 (Fselect_frame): New argument NORECORD passed to
7503 do_switch_frame.
7504 (Fset_frame_selected_window): New argument NORECORD passed to
7505 Fselect_frame.
7506 (Fhandle_switch_frame, Fdelete_frame): Handle NORECORD argument
7507 in call of do_switch_frame.
7508 (Fset_mouse_position, Fset_mouse_pixel_position, Fraise_frame):
7509 Handle NORECORD argument in call of Fselect_frame.
7510 * lisp.h (do_switch_frame, Fselect_frame)
7511 (Fset_frame_selected_window): Adjust declarations.
7512 * window.c (select_frame_norecord): New function.
7513 (run_window_configuration_change_hook): Use it and call
7514 Fselect_frame with NORECORD set.
7515 (Fselect_window): Pass NORECORD to Fselect_frame.
7516 (Fset_window_configuration): Handle NORECORD argument in call of
7517 do_switch_frame.
7518 * minibuf.c (choose_minibuf_frame): Handle NORECORD in call of
7519 Fset_frame_selected_window.
7520 * keyboard.c (command_loop_1): Handle NORECORD in call of
7521 Fselect_frame (currently ifdefd).
7522
7523 2008-11-02 Ulrich Mueller <ulm@kph.uni-mainz.de>
7524
7525 * emacs.c (USAGE2): Untabify.
7526
7527 2008-11-01 Stefan Monnier <monnier@iro.umontreal.ca>
7528
7529 * composite.c (fill_gstring_header): Fix copy/paste typo.
7530
7531 2008-10-31 Martin Rudalics <rudalics@gmx.at>
7532
7533 * window.c (Fnext_window, Fprevious_window): Rewrite doc-string.
7534 (Fother_window): Rename argument and rewrite doc-string.
7535 (select_window_norecord): Fix return value. (Bug#1276)
7536
7537 2008-10-30 Juanma Barranquero <lekktu@gmail.com>
7538
7539 * w32fns.c (x_create_tip_frame): Prevent default foreground color for
7540 new frames overriding foreground for tooltips. Based on similar patch
7541 from Martin Rudalics <rudalics@gmx.at>. (Bug#1032)
7542
7543 2008-10-29 Chong Yidong <cyd@stupidchicken.com>
7544
7545 * emacs.c (Fdaemon_initialized): Initialize nfd.
7546
7547 2008-10-29 Martin Rudalics <rudalics@gmx.at>
7548
7549 * window.c (Fwindow_height, Fdelete_window, set_window_buffer)
7550 (Fwindow_text_height): Clarify doc-strings.
7551 * xdisp.c (syms_of_xdisp): Mention set-window-buffer in
7552 doc-string of window-scroll-functions.
7553
7554 2008-10-28 Reiner Steib <Reiner.Steib@gmx.de>
7555
7556 * category.c (syms_of_category): Fix typo in docstring.
7557
7558 2008-10-28 Juanma Barranquero <lekktu@gmail.com>
7559
7560 * window.c (Fwindowp, Fwindow_live_p, Fwindow_minibuffer_p)
7561 (Fcoordinates_in_window_p, Fscroll_left, Fscroll_right):
7562 Fix typos in docstrings.
7563
7564 2008-10-28 Dan Nicolaescu <dann@ics.uci.edu>
7565
7566 * emacs.c (daemon_pipe): Make non-static.
7567 (IS_DAEMON): Move definition ...
7568 * lisp.h (IS_DAEMON): ... here.
7569 (daemon_pipe): Declare.
7570 (is_daemon): Remove.
7571 * dispnew.c (init_display): Use IS_DAEMON.
7572
7573 2008-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
7574
7575 * xdisp.c (pos_visible_p, redisplay_internal, message3_nolog)
7576 (message2_nolog): Check FRAME_INITIAL_P instead of noninteractively.
7577
7578 * emacs.c (is_daemon): Remove.
7579 (main): Don't set is_daemon.
7580 (IS_DAEMON): New macro.
7581 (Fdaemonp, Fdaemon_initialized): Use it.
7582 (Fdaemon_initialized): Write a char into the pipe to make sure the
7583 parent exits.
7584 (syms_of_emacs): Explicitly initialize daemon_pipe[1].
7585
7586 2008-10-27 Chong Yidong <cyd@stupidchicken.com>
7587
7588 * nsterm.m (ns_draw_window_cursor): When hbar cursor is on
7589 over-sized glyph, draw it with the default glyph width.
7590
7591 * w32term.c (x_draw_bar_cursor): When hbar cursor is on over-sized
7592 glyph, draw it with the default glyph width.
7593
7594 * xterm.c (x_draw_bar_cursor): When hbar cursor is on over-sized
7595 glyph, draw it with the default glyph width.
7596
7597 * xdisp.c (try_scrolling): When computing the distance from the
7598 scroll margin to PT, try moving some distance past the window
7599 bottom before giving up.
7600
7601 2008-10-27 Martin Rudalics <rudalics@gmx.at>
7602
7603 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p)
7604 (Fset_window_buffer): Explain in doc-string that a window can be
7605 "strongly" dedicated to its buffer.
7606
7607 2008-10-27 Dan Nicolaescu <dann@ics.uci.edu>
7608
7609 * emacs.c (daemon_name): New variable.
7610 (main): Deal with --daemon=SERVER_NAME.
7611 (Fdaemonp): Return a name if one was passed to --daemon.
7612
7613 2008-10-26 Romain Francoise <romain@orebokech.com>
7614
7615 * emacs.c (daemon_pipe): New variable.
7616 (main): Create a pipe before forking, make the parent exit only after
7617 the child has closed its end of the pipe. Move closing the
7618 descriptors ...
7619 (Fdaemon_initialized): ... here. New function.
7620
7621 2008-10-26 Stefan Monnier <monnier@iro.umontreal.ca>
7622
7623 * chartab.c (Foptimize_char_table): Make sure `ascii' doesn't point to
7624 the previous unoptimized table.
7625
7626 * window.c (Fset_window_buffer): Undo 2008-10-18 change to re-instate
7627 the distinction between non-nil and non-t value of `dedicated'.
7628
7629 2008-10-25 Chong Yidong <cyd@stupidchicken.com>
7630
7631 * keyboard.c (read_char_minibuf_menu_prompt): Ensure that
7632 read_char_minibuf_menu_text is large enough to hold the menu string.
7633
7634 2008-10-25 Martin Rudalics <rudalics@gmx.at>
7635
7636 * window.c (Fget_buffer_window, Fdelete_windows_on)
7637 (Freplace_buffer_in_windows): Make buffer argument optional and
7638 rename to buffer_or_name.
7639
7640 2008-10-24 Chong Yidong <cyd@stupidchicken.com>
7641
7642 * xdisp.c (handle_single_display_spec, handle_display_prop):
7643 Undo 2005-05-16 change.
7644 (handle_stop): Pop iterator if it's loaded with an empty string.
7645 (get_overlay_strings_1): Don't save iterator if it's loaded with
7646 an empty string (bug#1201).
7647
7648 2008-10-24 Kenichi Handa <handa@m17n.org>
7649
7650 * ftfont.c (ftfont_otf_features): Fix previous change.
7651 (ftfont_otf_capability): Check FeatureList.FeatureCount before
7652 calling ftfont_otf_features.
7653
7654 2008-10-24 Kenichi Handa <handa@m17n.org>
7655
7656 * font.c (font_match_p): Fix for the case that a vector of
7657 characters is in script-representative-chars.
7658
7659 2008-10-24 Michael Albinus <michael.albinus@gmx.de>
7660
7661 * dbusbind.c (xd_in_read_queued_messages): New variable.
7662 (XD_SIGNAL1, XD_SIGNAL2, XD_SIGNAL3): New macros. Throw Qdbus_error.
7663 (xd_read_queued_messages): Catch Qdbus_error from the macros.
7664 (all): Replace xsignal1, xsignal2, xsignal3 by the respective
7665 macro. (Bug#1186)
7666
7667 2008-10-23 Ali Bahrami <ali_gnu@emvision.com> (tiny change)
7668
7669 * s/sol2-10.h: New file.
7670
7671 2008-10-23 Juanma Barranquero <lekktu@gmail.com>
7672
7673 * xdisp.c (fill_glyph_string): Fix typo in source (though the
7674 poor beast has survived 9+ years and the jump from xterm.c!).
7675
7676 2008-10-23 Martin Rudalics <rudalics@gmx.at>
7677
7678 * buffer.c (Fget_buffer_create): Rename arg to buffer_or_name.
7679 Reword doc-string.
7680 (Fbury_buffer): In doc-string say what happens to the buffer's window.
7681
7682 2008-10-23 Juanma Barranquero <lekktu@gmail.com>
7683
7684 * character.c (syms_of_character) <script-representative-chars>:
7685 <unicode-category-table>: Doc fixes.
7686
7687 2008-10-23 Noah Friedman <friedman@splode.com>
7688
7689 * coding.c (make_conversion_work_buffer): Check that
7690 Vcode_conversion_reused_workbuf is a live buffer, otherwise call
7691 Fget_buffer_create.
7692
7693 2008-10-23 Kenichi Handa <handa@m17n.org>
7694
7695 * font.c (font_add_log): Check the values of extra properties.
7696
7697 2008-10-22 Martin Rudalics <rudalics@gmx.at>
7698
7699 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
7700 Reword doc-string.
7701 (Fset_window_parameter): Use NILP.
7702 (Fscroll_up, Fscroll_down, Fminibuffer_selected_window)
7703 (Frecenter): Use "selected" instead of "current" window in doc-strings.
7704
7705 2008-10-22 Juanma Barranquero <lekktu@gmail.com>
7706
7707 * xdisp.c (next_element_from_buffer): Remove bogus xassert condition.
7708
7709 2008-10-22 Adrian Robert <Adrian.B.Robert@gmail.com>
7710
7711 * nsfns.m (ns_appkit_version): New function.
7712 (x-server-version): Use it.
7713 (syms_of_nsfns): Define ns-version-string here, not nsterm.m.
7714 (x-server-vendor): Don't check_ns().
7715
7716 * nsterm.m (syms_of_nsterm): Drop ns-version-string.
7717
7718 2008-10-22 Juanma Barranquero <lekktu@gmail.com>
7719
7720 * w32fns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert.
7721 Copied from 2005-02-03 change to xfns.c by Kim F. Storm.
7722
7723 2008-10-22 Kenichi Handa <handa@m17n.org>
7724
7725 * syntax.c (scan_words): Call word_boundary_p instead of comparing
7726 scripts.
7727
7728 * category.c (word_boundary_p): Check scripts instead of charset.
7729 Handle nil value in word-separating-categories and
7730 word-combining-categories.
7731 (syms_of_category): Fix docstrings of word-separating-categories
7732 and word-combining-categories.
7733
7734 2008-10-21 Eli Zaretskii <eliz@gnu.org>
7735
7736 * coding.c (Fencode_coding_region, Fdecode_coding_region)
7737 (Fdecode_coding_string, Fencode_coding_string): Doc fix.
7738
7739 2008-10-21 Martin Rudalics <rudalics@gmx.at>
7740
7741 * buffer.c (Fget_buffer, Fbury_buffer, switch_to_buffer_1):
7742 Rename arg "buffer" to "buffer_or_name".
7743 (Fkill_buffer): Rename arg "buffer" to "buffer_or_name" and make
7744 it optional.
7745 (no_switch_window): Remove since the return value is not used.
7746 (Fswitch_to_buffer): Rename arg "buffer" to "buffer_or_name".
7747 Consider window as dedicated when Fwindow_dedicated_p returns a
7748 non-nil value.
7749 * lisp.h: Remove prototype for no_switch_window.
7750
7751 2008-10-21 Jan Djärv <jan.h.d@swipnet.se>
7752
7753 * emacs.c (main): Unconditionally set PER_LINUX32 and exec
7754 temacs when dumping if HAVE_PERSONALITY_LINUX32 is defined.
7755
7756 2008-10-21 Kenichi Handa <handa@m17n.org>
7757
7758 * coding.c (detect_coding_charset): For iso-8859-* coding systems,
7759 check Vlatin_extra_code_table.
7760
7761 2008-10-20 Eli Zaretskii <eliz@gnu.org>
7762
7763 * fileio.c (Fset_file_modes): Doc fix.
7764
7765 2008-10-19 Michael Albinus <michael.albinus@gmx.de>
7766
7767 * dbusbind.c (XD_OBJECT_TO_DBUS_TYPE): Handle simple type symbols
7768 in arrays.
7769
7770 2008-10-19 Martin Rudalics <rudalics@gmx.at>
7771
7772 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
7773 Mention kill-buffer in doc-string.
7774 (Fset_window_buffer): Reinsert tem check removed in last commit.
7775 (Fenlarge_window, Fshrink_window): Have argument names and
7776 doc-string follow Elisp manual more closely.
7777
7778 2008-10-18 Eli Zaretskii <eliz@gnu.org>
7779
7780 * fileio.c (Fset_file_modes): Doc fix.
7781
7782 2008-10-18 Martin Rudalics <rudalics@gmx.at>
7783
7784 * window.c (Fwindow_width, Fset_window_start)
7785 (Fwindow_parameters, Fwindow_parameter, Fset_window_parameter)
7786 (Fdelete_windows_on, Freplace_buffer_in_windows):
7787 Make doc-strings follow code and Elisp manual more closely.
7788 (Fwindow_dedicated_p): Make window argument optional.
7789 (Fset_window_dedicated_p): Rename argument "arg" to "flag".
7790 (Fset_window_buffer): Respect any non-nil dedicated value for
7791 window. Rename "buffer" argument to "buffer_or_name".
7792
7793 2008-10-18 Ulrich Mueller <ulm@gentoo.org>
7794
7795 * m/sh3.h: New file, machine description for SuperH.
7796
7797 2008-10-17 Martin Rudalics <rudalics@gmx.at>
7798
7799 * window.c (Fsplit_window): Rename arg horflag to horizontal.
7800
7801 2008-10-17 Kenichi Handa <handa@m17n.org>
7802
7803 * ftfont.c (ftfont_otf_features): Fix indexing
7804 gsub_gpos->FeatureList.Feature. Check the validity of indices.
7805
7806 2008-10-16 Magnus Henoch <mange@freemail.hu>
7807
7808 * dbusbind.c (Fdbus_call_method): Unbreak usage line.
7809 (Fdbus_call_method_asynchronously): Ditto.
7810 This change makes C-h f display the argument list.
7811
7812 2008-10-16 Chong Yidong <cyd@stupidchicken.com>
7813
7814 * fileio.c (Fexpand_file_name): Doc fix.
7815
7816 * xfaces.c (Finternal_set_lisp_face_attribute): Make null values
7817 of :foreground and :background equivalent to unspecified (20.x
7818 compatibility).
7819
7820 2008-10-15 Eli Zaretskii <eliz@gnu.org>
7821
7822 * buffer.c (syms_of_buffer): Doc fix.
7823
7824 2008-10-14 Kenichi Handa <handa@m17n.org>
7825
7826 * font.c (font_clear_prop): When clearing font width, clear the
7827 average width field too.
7828
7829 2008-10-12 Andreas Schwab <schwab@suse.de>
7830
7831 * ftfont.c (ftfont_shape_by_flt): Make static.
7832 * ftfont.h (ftfont_shape_by_flt): Don't declare.
7833
7834 * font.c: Don't include <m17n-flt.h>.
7835
7836 2008-10-10 Eli Zaretskii <eliz@gnu.org>
7837
7838 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Decrease to 10000.
7839
7840 2008-10-09 Eli Zaretskii <eliz@gnu.org>
7841
7842 * frame.c (make_terminal_frame) [MSDOS]: Remove unused #ifdef'ed
7843 away code.
7844
7845 2008-10-09 Chong Yidong <cyd@stupidchicken.com>
7846
7847 * dispnew.c (update_text_area): Avoid looping due to large glyph
7848 overhangs (bug#1070).
7849
7850 2008-10-09 Kenichi Handa <handa@m17n.org>
7851
7852 * fontset.c (face_for_char): If face->fontset is negative, just
7853 return ascii_face.
7854
7855 * font.c (font_delete_unmatched): Fix previous change.
7856 Don't reject an entity if DPI and AVGWIDTH of an entity are 0.
7857
7858 2008-10-09 Martin Rudalics <rudalics@gmx.at>
7859
7860 * frame.c (Fraise_frame): On text-only terminals select frame in
7861 order to make it visible. (Bug#1061)
7862
7863 2008-10-08 Chong Yidong <cyd@stupidchicken.com>
7864
7865 * fontset.c (fontset_find_font): Check frame validity.
7866
7867 2008-10-07 Chong Yidong <cyd@stupidchicken.com>
7868
7869 * gtkutil.c (xg_display_open): Reset default display if none exists.
7870 (xg_display_close): Allow Emacs to close all displays (bug#985).
7871
7872 2008-10-06 Andreas Schwab <schwab@suse.de>
7873
7874 * sysdep.c (sys_signal): Always set SA_RESTART when noninteractively.
7875
7876 2008-10-06 Chong Yidong <cyd@stupidchicken.com>
7877
7878 * emacs.c (Vbefore_init_time, Vafter_init_time): Move from startup.el.
7879
7880 * lisp.h (Vbefore_init_time, Vafter_init_time): Declare.
7881
7882 * gtkutil.c (x_wm_set_size_hint): Return immediately if called
7883 during initialization.
7884
7885 2008-10-04 Eli Zaretskii <eliz@gnu.org>
7886
7887 * xdisp.c (redisplay_internal): If frame switched, redisplay the
7888 whole thing on MSDOS frames as well as on a TTY.
7889
7890 * dispnew.c (update_frame): Flush termscript for MSDOS frames as
7891 well as for TTY.
7892 (Fopen_termscript): Allow opening a termscript on MSDOS frames as
7893 well as on a TTY.
7894
7895 * sysdep.c (init_sys_modes): Set FRAME_GARBAGED_P for MSDOS frames
7896 as well as for TTY.
7897
7898 * systime.h (EMACS_TIME_CMP): Cast EMACS_SECS values to `long'.
7899
7900 * dispnew.c (change_frame_size_1): Set FrameRows and FrameCols for
7901 MSDOS frames as well.
7902
7903 2008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
7904
7905 * image.c (x_clear_image_1): Under NS, call ns_free_indexed_color with
7906 correct arguments.
7907 * menu.c (find_and_return_menu_selection): Add cast.
7908
7909 2008-10-03 Glenn Morris <rgm@gnu.org>
7910
7911 * emacs.c (USAGE1): Add --daemon.
7912
7913 2008-10-02 Eli Zaretskii <eliz@gnu.org>
7914
7915 * process.c (procfs_system_process_attributes): Multiply `pcpu' by
7916 100, so it's in percents as advertised.
7917
7918 2008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
7919
7920 * nsterm.h (ns_cursor_types, ns_output.desired_cursor_color)
7921 (ns_output.current_cursor, ns_output.desired_cursor)
7922 (ns_output.last_inactive, FRAME_CURSOR, FRAME_NEW_CURSOR)
7923 (FRAME_NEW_CURSOR_COLOR): Remove.
7924
7925 * nsfns.m (ns_set_cursor_color): Use FRAME_CURSOR_COLOR.
7926 (ns_lisp_to_cursor_type, ns_cursor_type_to_lisp): Use core Emacs
7927 enumeration (HOLLOW_BOX_CURSOR, etc.).
7928
7929 * nsterm.m (ns_frame_rehighlight): Remove commented code.
7930 (draw_window_cursor): Simplify code.
7931 (EmacsView-windowDidBecomeKey:,-windowDidResignKey:):
7932 Don't change cursor type. In latter, call rehighlight instead of doing
7933 updates manually.
7934 (EmacsPrefsController-setPanelFromValues,-setValuesFromPanel):
7935 Use core Emacs cursor types.
7936
7937 * xdisp.c (draw_glyphs): Don't call notice_overwritten_cursor under NS.
7938
7939 2008-10-02 Martin Rudalics <rudalics@gmx.at>
7940
7941 * process.c (Faccept_process_output): Fix doc-string.
7942
7943 2008-10-02 Dan Nicolaescu <dann@ics.uci.edu>
7944
7945 * gmalloc.c (__sbrk): Also define for uClibc.
7946
7947 * s/gnu-linux.h (GNU_LIBRARY_PENDING_OUTPUT_COUNT): Add definition
7948 for uClibc.
7949
7950 2008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
7951
7952 * nsfont.m (nsfont_spec_to_traits): Use UnXX masks only for non-normal
7953 styles.
7954 (nsfont_open): Reenable the cache.
7955
7956 2008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
7957
7958 * font.c (font_matching_entity): Reflect ATTRS in font selection.
7959 (font_find_for_lface) [HAVE_NS]: Don't ignore case.
7960
7961 2008-09-30 Stefan Monnier <monnier@iro.umontreal.ca>
7962
7963 * dispnew.c (Fsend_string_to_terminal): Don't try to send a string to
7964 a suspended terminal.
7965
7966 2008-09-30 Michael Albinus <michael.albinus@gmx.de>
7967
7968 * dbusbind.c (xd_signature): Use strcat instead of sprintf.
7969
7970 2008-09-30 Eli Zaretskii <eliz@gnu.org>
7971
7972 * Makefile.in (MSDOS_SUPPORT): Remove ccl.elc and codepage.elc.
7973
7974 2008-09-30 Chong Yidong <cyd@stupidchicken.com>
7975
7976 * xdisp.c (move_it_to): Don't advance the iterator if the last tab
7977 in a continued line coincides with a line beginning.
7978
7979 2008-09-29 Adrian Robert <Adrian.B.Robert@gmail.com>
7980
7981 * nsfont.m (nsfont_trait_distance): Fix bug.
7982 (nsfont_list): Return a list rather than a vector (syncs with Handa
7983 changes of 2008-05-14).
7984 (nsfont_open): Improve logging.
7985
7986 2008-09-29 Andreas Schwab <schwab@suse.de>
7987
7988 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
7989
7990 2008-09-28 Martin Rudalics <rudalics@gmx.at>
7991
7992 * character.c (Fchar_resolve_modifiers): Rewrite Elisp function
7993 name as char-resolve-modifiers.
7994 Reported by: Markus Triska <markus.triska@gmx.at>
7995
7996 2008-09-28 Dan Nicolaescu <dann@ics.uci.edu>
7997
7998 * dispnew.c (init_display): Return earlier when running as a daemon.
7999
8000 2008-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
8001
8002 * nsfont.m (nsfont_draw): Fix up composition rendering (cmp_from, ...).
8003
8004 2008-09-27 Eli Zaretskii <eliz@gnu.org>
8005
8006 * composite.c (Fcomposition_get_gstring)
8007 (Fcompose_region_internal, Fcompose_string_internal)
8008 (Ffind_composition_internal): Doc fix.
8009 (syms_of_composite) <compose-chars-after-function>: Doc fix.
8010 (syms_of_composite) <auto-composition-function>: Doc fix.
8011 (syms_of_composite) <composition-function-table>: Doc fix.
8012
8013 2008-09-25 Chong Yidong <cyd@stupidchicken.com>
8014
8015 * search.c (wordify): New argument for lax word-ends.
8016 (Fword_search_forward_lax, Fword_search_backward_lax): New funs.
8017
8018 2008-09-24 Dan Nicolaescu <dann@ics.uci.edu>
8019
8020 * lisp.h (is_daemon): Declare.
8021 * dispnew.c (init_display): Do not try to initialize the terminal
8022 when running as a daemon.
8023
8024 2008-09-22 Chong Yidong <cyd@stupidchicken.com>
8025
8026 * nsfns.m (compute_tip_xy): Use x_display_pixel_width and
8027 x_display_pixel_height.
8028
8029 2008-09-22 Martin Rudalics <rudalics@gmx.at>
8030
8031 * undo.c (record_point): Don't call Fundo_boundary for first
8032 change. (Bug#731)
8033
8034 2008-09-22 Juanma Barranquero <lekktu@gmail.com>
8035
8036 * emacs.c (Fdaemonp): Doc fix.
8037
8038 2008-09-22 Dan Nicolaescu <dann@ics.uci.edu>
8039
8040 * emacs.c (main): Place #ifdef in the proper place.
8041
8042 2008-09-21 Dan Nicolaescu <dann@ics.uci.edu>
8043
8044 * emacs.c (standard_args): Add --daemon.
8045 (main): Disconnect from the terminal when --daemon is passed.
8046 (is_daemon): New variable.
8047 (Fdaemonp): New function.
8048 (syms_of_emacs): Defsubr it.
8049
8050 2008-09-20 Chong Yidong <cyd@stupidchicken.com>
8051
8052 * xdisp.c (get_next_display_element): Handle string display
8053 correctly when checking for the end of a box run.
8054
8055 2008-09-20 Glenn Morris <rgm@gnu.org>
8056
8057 * fileio.c (Qdelete_by_moving_to_trash): New Lisp_Object.
8058 (syms_of_fileio): Add Qdelete_by_moving_to_trash.
8059 (Frename_file): Avoid copying to trash if a rename involves
8060 a delete. (Bug#964).
8061
8062 2008-09-20 Eli Zaretskii <eliz@gnu.org>
8063
8064 * keyboard.c (Fset_quit_char, Fset_input_meta_mode)
8065 (Fset_output_flow_control, Fcurrent_input_mode): Support MSDOS
8066 frames as well as termcap frames.
8067 (handle_interrupt): Remove "#ifndef MSDOS" around the call to
8068 get_named_tty.
8069
8070 2008-09-19 Eli Zaretskii <eliz@gnu.org>
8071
8072 * process.c (procfs_system_process_attributes): Fix cmdline in
8073 case /proc/PID/cmdline is empty.
8074
8075 * xterm.c (x_wm_set_size_hint): Use x_display_pixel_width and
8076 x_display_pixel_height.
8077
8078 2008-09-19 Juanma Barranquero <lekktu@gmail.com>
8079
8080 * frame.c (x_fullscreen_adjust): Declare var as Display_Info.
8081
8082 * w32fns.c (Fx_display_pixel_width, Fx_display_pixel_height)
8083 (compute_tip_xy): Use x_display_pixel_width, x_display_pixel_height.
8084
8085 2008-09-19 Dan Nicolaescu <dann@ics.uci.edu>
8086
8087 * dispextern.h (struct it): Move line_wrap away from the middle of
8088 bitfields. Move voffset in struct iterator_stack_entry after the
8089 bitfields. Move tab_width near after another short.
8090
8091 2008-09-18 Dan Nicolaescu <dann@ics.uci.edu>
8092
8093 * frame.h (struct frame): Move alpha from the middle of bitfields.
8094
8095 * window.h (struct window): Move frozen_window_start_p after the
8096 rest of the bitfields to reduce padding.
8097
8098 2008-09-18 Chong Yidong <cyd@stupidchicken.com>
8099
8100 * xterm.h (x_display_info): Remove `height' and `width' members.
8101
8102 * nsterm.h (ns_display_info): Remove `height' and `width' members.
8103
8104 * w32term.h (w32_display_info): Remove `height', `width',
8105 `height_in', and `width_in' members.
8106
8107 * xterm.c (x_display_pixel_height, x_display_pixel_width):
8108 New functions.
8109 (x_calc_absolute_position): Use them.
8110 (x_term_init): Omit removed `height' and `width' members.
8111
8112 * w32term.c (x_display_pixel_height, x_display_pixel_width):
8113 New functions.
8114 (w32_read_socket, x_calc_absolute_position): Use them.
8115 (w32_initialize_display_info, w32_term_init): Omit removed members
8116 of w32_display_info.
8117
8118 * nsterm.m (x_display_pixel_height, x_display_pixel_width):
8119 New functions.
8120 (ns_initialize_display_info): Omit removed members of ns_display_info.
8121
8122 * xterm.c (x_display_pixel_height, x_display_pixel_width):
8123 New functions.
8124 (x_calc_absolute_position): Use them.
8125 (x_term_init): Omit removed `height' and `width' members.
8126
8127 * xfns.c (Fx_display_pixel_width, Fx_display_pixel_height)
8128 (compute_tip_xy):
8129 * frame.c (x_fullscreen_adjust):
8130 * xmenu.c (menu_position_func): Use x_display_pixel_height and
8131 x_display_pixel_width.
8132
8133 2008-09-18 Kenichi Handa <handa@m17n.org>
8134
8135 * composite.c (fill_gstring_header): Don't check FROM and TO here.
8136 (composition_compute_stop_pos): Fix handling of static composition.
8137 (Fcomposition_get_gstring): Check FROM and TO at first.
8138
8139 2008-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
8140
8141 * composite.c (Fcomposition_get_gstring): Yet another int/Lisp_Object
8142 mixup (YAILOM).
8143
8144 2008-09-17 Chong Yidong <cyd@stupidchicken.com>
8145
8146 * indent.c (Fvertical_motion): Use position reported by iterator
8147 instead of PT for determining screen motion (bug#943).
8148
8149 2008-09-17 Romain Francoise <romain@orebokech.com>
8150
8151 * composite.c (composition_adjust_point): Fix int/EMACS_INT mixup.
8152
8153 2008-09-17 Kenichi Handa <handa@m17n.org>
8154
8155 * ftfont.c (ftfont_shape_by_flt): Downcase family name.
8156
8157 * composite.c (Fcomposition_get_gstring): Make bigger gstring_work
8158 if necessary.
8159
8160 2008-09-16 Kenichi Handa <handa@m17n.org>
8161
8162 * coding.c (make_conversion_work_buffer): Avoid calling
8163 Fget_buffer_create if it is not necessary.
8164
8165 2008-09-15 Martin Rudalics <rudalics@gmx.at>
8166
8167 * window.c (Fselect_window): Don't update window_select_count and
8168 use_time when norecord is not nil.
8169
8170 2008-09-14 Kenichi Handa <handa@m17n.org>
8171
8172 * fileio.c (Finsert_file_contents): Delete incorrect decrement of
8173 specpdl_ptr.
8174
8175 2008-09-12 Kenichi Handa <handa@m17n.org>
8176
8177 * indent.c (scan_for_column): Don't handle automatic composition
8178 if the current buffer is not associated with a window.
8179
8180 * composite.c (composition_reseat_it): If the current buffer is
8181 not associated with a window, ignore the automatic composition.
8182 (find_automatic_composition): Likewise.
8183
8184 2008-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
8185
8186 * term.c (close_gpm): New fun extracted from Fgpm_mouse_stop.
8187 (Fgpm_mouse_stop): Use it.
8188 * termhooks.h (close_gpm): Declare.
8189 * keyboard.c (tty_read_avail_input): Forcefully close the gpm
8190 connection if Gpm_GetEvent fails.
8191
8192 * window.c (set_window_buffer): Always preserve current-buffer.
8193
8194 2008-09-12 Glenn Morris <rgm@gnu.org>
8195
8196 * charset.c (init_charset): Warn if etc/charsets not found. (Bug#909)
8197
8198 2008-09-11 Glenn Morris <rgm@gnu.org>
8199
8200 * charset.c (charset-map-path): Doc fix.
8201
8202 2008-09-10 Kenichi Handa <handa@m17n.org>
8203
8204 * xdisp.c (handle_composition_prop): Set it->cmp_it.ch to -1.
8205
8206 * font.c (Ffont_shape_gstring): Make glyphs of non-nil adjustment
8207 compose a grapheme cluster with the preceding base glyph.
8208
8209 * composite.c (composition_compute_stop_pos): Fix previous change.
8210 Reset cmp_it->id to -1 at first.
8211
8212 2008-09-10 Glenn Morris <rgm@gnu.org>
8213
8214 * Makefile.in (character.o, chartab.o): Fix config.h typo.
8215
8216 2008-09-09 Chong Yidong <cyd@stupidchicken.com>
8217
8218 * keyboard.c (read_key_sequence): Reapply translation maps when
8219 switching keyboards.
8220
8221 2008-09-09 Kenichi Handa <handa@m17n.org>
8222
8223 * ftfont.c (ftfont_shape_by_flt): Use "combining" FLT for ASCII
8224 characters.
8225
8226 * composite.c (FORWARD_CHAR): Fix calculation
8227 of (POSITION).pos_byte.
8228 (composition_compute_stop_pos): Limit the search of composition to
8229 at most 500 characters ahead. If we reach the limit or find a
8230 newline, set cmp_it->ch to -2 and return 0.
8231 (composition_reseat_it): Handle the case that cmp_it->ch is -2.
8232
8233 2008-09-08 Kenichi Handa <handa@m17n.org>
8234
8235 * indent.c (Fvertical_motion): Be sure to set
8236 it_overshoot_expected if it.cmp_it.id is non-negative.
8237
8238 2008-09-07 Andreas Schwab <schwab@suse.de>
8239
8240 * callproc.c (Fcall_process): Don't hold references to string data
8241 across garbage collection. Move initialisation of new_argv down
8242 to avoid compiler bug.
8243
8244 2008-09-07 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
8245
8246 * process.c (Fsystem_process_attributes): Doc fix.
8247
8248 2008-09-07 Chong Yidong <cyd@stupidchicken.com>
8249
8250 * callproc.c (Fcall_process): Canonicalize current directory name.
8251
8252 * xdisp.c (move_it_to): When moving by vpos, ensure that the
8253 iterator advances to the next line if the current line ends in a
8254 continued tab.
8255
8256 2008-09-07 Teodor Zlatanov <tzz@lifelogs.com>
8257
8258 * nsfont.m (nsfont_draw): Fix the references to missing gidx data
8259 member to point to cmp_from.
8260
8261 * xdisp.c: Doc fix for references to gidx data member.
8262
8263 2008-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
8264
8265 * buffer.c (Fbuffer_swap_text): Reset window->point markers.
8266
8267 2008-09-07 Kenichi Handa <handa@m17n.org>
8268
8269 * composite.c (FORWARD_CHAR): Check STOP after
8270 incrementing (POSITION).pos.
8271
8272 2008-09-06 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
8273
8274 * process.c (Fsystem_process_attributes): Doc fix.
8275
8276 2008-09-06 Chong Yidong <cyd@stupidchicken.com>
8277
8278 * keyboard.c (Ftop_level): Doc fix.
8279
8280 2008-09-06 Eli Zaretskii <eliz@gnu.org>
8281
8282 * xmenu.c (xmenu_show) [!HAVE_X_WINDOWS]: If frame has a
8283 minibuffer, don't let lower part of menu invade the echo area.
8284
8285 * msdos.c (IT_menu_display): Use STRING_CHAR_ADVANCE instead of a
8286 "char *q" to access menu text and advance through it. Revert the
8287 change that displayed ">" instead of ASCII character 0x10.
8288
8289 2008-09-05 Eli Zaretskii <eliz@gnu.org>
8290
8291 * menu.c (single_menu_item) [!HAVE_BOXES]: Enable emulation of
8292 toggle boxes and radio buttons on MS-DOS as well.
8293
8294 2008-09-05 Kenichi Handa <handa@m17n.org>
8295
8296 * composite.c (autocmp_chars): Check lookback count.
8297 (composition_compute_stop_pos): Set cmp_it->lookback.
8298 (composition_reseat_it): Check lookback count.
8299 (struct position_record): New struct.
8300 (FORWARD_CHAR, BACKWARD_CHAR, CHAR_COMPOSABLE_P): New macros.
8301 (find_automatic_composition): New function.
8302 (composition_adjust_point): Use find_automatic_composition.
8303
8304 * dispextern.h (struct composition_it): New member lookback.
8305
8306 2008-09-02 Chong Yidong <cyd@stupidchicken.com>
8307
8308 * indent.c (Fvertical_motion): Don't call move_it_by_lines again
8309 if moving by a single line.
8310
8311 2008-09-02 Andreas Schwab <schwab@suse.de>
8312
8313 * xterm.c (x_delete_display): Fix merge error.
8314
8315 * fileio.c (Fexpand_file_name): Remove unused variables.
8316
8317 2008-09-02 Eli Zaretskii <eliz@gnu.org>
8318
8319 * fileio.c (Fexpand_file_name): Copy argument `name' into local
8320 storage on all platforms, not just on DOS_NT.
8321
8322 2008-09-02 Jason Rumney <jasonr@gnu.org>
8323
8324 * w32menu.c (Fx_popup_menu, Fx_popup_dialog, w32_menu_show):
8325 Ensure mouse is not grabbed after menu is finished.
8326
8327 2008-09-01 Chong Yidong <cyd@stupidchicken.com>
8328
8329 * xfaces.c (Finternal_set_alternative_font_family_alist)
8330 (Finternal_set_alternative_font_registry_alist): Properly copy
8331 entire alist structure.
8332
8333 2008-09-01 Kenichi Handa <handa@m17n.org>
8334
8335 * ftfont.c (ftfont_spec_pattern): Don't create a charset if the
8336 representative chars of the script is a vector.
8337 (ftfont_list): Handle the case where the representative chars of
8338 the script is a vector.
8339
8340 * character.c (syms_of_character): Docstring of
8341 script-representative-chars fixed.
8342
8343 2008-08-31 Eli Zaretskii <eliz@gnu.org>
8344
8345 * msdos.c (BUILD_CHAR_GLYPH): New macro.
8346 (IT_menu_display): Use it instead of SET_CHAR_GLYPH to construct
8347 the menu. Allocate larger buffer for `text', to account for
8348 possible ^C characters.
8349
8350 2008-08-31 Martin Rudalics <rudalics@gmx.at>
8351
8352 * xdisp.c (prepare_menu_bars): Don't call
8353 Vwindow_size_change_functions with arg Qt.
8354
8355 2008-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
8356
8357 * font.h (font_range):
8358 * fileio.c (report_file_error):
8359 * composite.c (composition_update_it): Yet another int/Lisp_Object
8360 mixup (YAILOM).
8361
8362 2008-08-30 Glenn Morris <rgm@gnu.org>
8363
8364 * data.c (Fmake_variable_frame_local): Doc fix.
8365
8366 * frame.c (Fmodify_frame_parameters): Doc fix.
8367
8368 2008-08-30 Eli Zaretskii <eliz@gnu.org>
8369
8370 * w32.c (init_user_info): Allocate buf[] with xmalloc using the size
8371 needed by GetTokenInformation.
8372 (w32_system_process_attributes): Check return values of all system
8373 APIs.
8374
8375 * msdos.c (IT_display_cursor): Write "CURSOR ON/OFF" to termscript
8376 only when the state changes.
8377 (IT_update_begin, IT_update_end): Add termscript trace.
8378
8379 * w16select.c (Fw16_set_clipboard_data): Don't encode text if
8380 clipboard is unavailable. Set dst to NULL if it doesn't point to
8381 malloc'ed data.
8382 (Fw16_get_clipboard_data): Initialize htext to NULL, to avoid
8383 passing random values to xfree.
8384
8385 * dispnew.c (init_display): Set `tty's association in frame's
8386 parameters alist to the name of the terminal device, if that is known.
8387
8388 2008-08-29 Jason Rumney <jasonr@gnu.org>
8389
8390 * w32uniscribe.c (uniscribe_check_otf): Don't fallback on DFLT script.
8391
8392 2008-08-29 Eli Zaretskii <eliz@gnu.org>
8393
8394 * composite.c (fill_gstring_body): Avoid compiler warnings.
8395
8396 * font.c (font_fill_lglyph_metrics): Use EMACS_INT in
8397 LGLYPH_SET_CODE to avoid compiler warnings.
8398
8399 * makefile.w32-in ($(BLD)/w32uniscribe.$(O)): Depend on composite.h.
8400
8401 * composite.h (LGLYPH_SET_CODE): Cast `val' to EMACS_INT.
8402
8403 * w32uniscribe.c (uniscribe_shape): Shut up compiler warning in
8404 LGLYPH_SET_CODE.
8405
8406 2008-08-29 Kenichi Handa <handa@m17n.org>
8407
8408 * fileio.c (report_file_error): Don't downcase the first character
8409 of errstring if it is still unibyte.
8410
8411 2008-08-29 Kenichi Handa <handa@m17n.org>
8412
8413 These changes are to re-implement the automatic composition so
8414 that it doesn't use text properties.
8415
8416 * Makefile.in (ftfont.o): Depend on composite.h.
8417 (composite.o): Depend dispextern.h, font.h, frame, and window.h.
8418
8419 * character.h (Vunicode_category_table): Extern it.
8420
8421 * character.c (Vunicode_category_table): New variable.
8422 (syms_of_character): DEFVAR_LISP Vunicode_category_table.
8423
8424 * chartab.c (optimize_sub_char_table): Perform more greedy
8425 optimization.
8426
8427 * composite.h (enum composition_method):
8428 Delete COMPOSITION_WITH_GLYPH_STRING.
8429 (COMPOSITION_METHOD): Don't check COMPOSITION_WITH_GLYPH_STRING.
8430 (Vcomposition_function_table): Extern it.
8431 (LGSTRING_XXX, LGLYPH_XXX): Macros moved from font.h.
8432 (composition_gstring_put_cache, composition_gstring_from_id)
8433 (composition_gstring_p, composition_gstring_width)
8434 (composition_compute_stop_pos, composition_reseat_it)
8435 (composition_update_it, composition_adjust_point): Extern them.
8436 (Fcomposition_get_gstring): EXFUN it.
8437
8438 * composite.c: Include window.h, frame.h, dispextern.h, font.h.
8439 (Vcomposition_function_table)
8440 (get_composition_id): Don't handle COMPOSITION_WITH_GLYPH_STRING.
8441 (gstring_hash_table, gstring_work, gstring_work_headers):
8442 New variables.
8443 (gstring_lookup_cache, composition_gstring_put_cache)
8444 (composition_gstring_from_id, composition_gstring_p)
8445 (composition_gstring_width, fill_gstring_header)
8446 (fill_gstring_body, autocmp_chars, composition_compute_stop_pos)
8447 (composition_reseat_it, composition_update_it)
8448 (composition_adjust_point, Fcomposition_get_gstring): New functions.
8449 (syms_of_composite): Initialize gstring_hash_table, gstrint_work,
8450 and gstring_work_headers. DEFVAR_LISP composition-function-table.
8451 Defsubr compostion_get_gstring.
8452
8453 * dispextern.h (struct glyph): New union u.cmp. Delete the member
8454 cmp_id.
8455 (struct glyph_string): Delete the member gidx. New members
8456 cmp_id, cmp_from, and cmp_to.
8457 (enum it_method): Delete GET_FROM_COMPOSITION.
8458 (struct composition_it): New struct.
8459 (struct it): New member cmp_it, and iterator_stack_entry.cmp_it.
8460 Delete c, len, cmp_id, cmp_len in u.comp.
8461
8462 * font.h (enum lgstring_indices): Delete it.
8463 (LGSTRING_XXX, LGLYPH_XXX): Move these macros to composite.h.
8464 (enum lglyph_indices): Likewise.
8465 (font_range): Adjust extern.
8466 (font_fill_lglyph_metrics): Extern it.
8467
8468 * font.c (QCf): New variable.
8469 (check_gstring): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
8470 (font_prepare_composition): Delete this function.
8471 (font_range): Type and arguments changed.
8472 (Ffont_make_gstring, Ffont_fill_gstring): Delete them.
8473 (font_fill_lglyph_metrics): New function.
8474 (Ffont_shape_text): Rename to Ffont_shape_gstring and change arguments.
8475 (syms_of_font): DEFSYM QCf. Delete defsubr for
8476 Sfont_make_gstring, Sfont_fill_gstring, Sfont_shape_text.
8477 Defsubr Sfont_shape_gstring.
8478
8479 * fontset.h (font_for_char): Extern it.
8480
8481 * fontset.c (font_for_char): New function.
8482
8483 * ftfont.c: Include composite.h.
8484 (ftfont_resolve_generic_family): Add langset "en" to pattern.
8485 (ftfont_shape_by_flt): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
8486
8487 * indent.c: Include composite.h and dispextern.h.
8488 (check_composition): Delete this function.
8489 (scan_for_column): Handle composition by
8490 composition_compute_stop_pos, composition_reseat_it, and
8491 composition_update_it.
8492 (compute_motion): Likewise.
8493 (Fvertical_motion): Fix checking of composition.
8494
8495 * keyboard.c (adjust_point_for_property): Check composition by
8496 composition_adjust_point.
8497
8498 * nsterm.m (ns_draw_glyph_string): Adjust for the change of
8499 struct glyph_string.
8500
8501 * term.c (encode_terminal_code): Adjust for the change of struct glyph.
8502 (append_composite_glyph): Adjust for the change of struct it and
8503 struct glyph.
8504 (produce_composite_glyph): Likewise.
8505
8506 * w32term.c (x_draw_composite_glyph_string_foreground):
8507 Adjust for the change of struct glyph_string.
8508 (x_draw_glyph_string): Likewise.
8509
8510 * w32uniscribe.c (struct uniscribe_font_info): Include composite.h.
8511 (uniscribe_shape): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
8512
8513 * xdisp.c: Include font.h.
8514 (it_props): Delete the entry for Qauto_composed.
8515 (init_iterator): Initialize it->cmp_it.id to -1.
8516 (compute_stop_pos): Call composition_compute_stop_pos.
8517 (face_before_or_after_it_pos): Adjust for the change of struct it.
8518 (handle_auto_composed_prop): Delete it.
8519 (handle_composition_prop): Handle only static composition.
8520 (next_overlay_string): Remove it->method == GET_FROM_COMPOSITION
8521 from xassert. Initialize it->cmp_it.stop_pos.
8522 (push_it): Adjust for the change of struct it.
8523 (pop_it): Likewise.
8524 (get_next_element): Delete next_element_from_composition.
8525 (CHAR_COMPOSED_P): New macro.
8526 (get_next_display_element): For automatic composition, get a face
8527 from the font in the glyph-string.
8528 (set_iterator_to_next): For GET_FROM_BUFFER and GET_FROM_STRING,
8529 check composition by it->cmp_it.id. Delete GET_FROM_COMPOSITION case.
8530 (next_element_from_string): Check if the character at the current
8531 position is composed by CHAR_COMPOSED_P.
8532 (next_element_from_buffer): Likewise.
8533 (next_element_from_composition): Adjust for the change of struct it.
8534 Update it->cmp_it.
8535 (dump_glyph): Adjust for the change of struct glyph.
8536 (fill_composite_glyph_string): Adjust for the change of struct
8537 it and struct glyph. Don't handle automatic composition here.
8538 (fill_gstring_glyph_string): New function.
8539 (x_get_glyph_overhangs): Handle automatic composition.
8540 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the change of struct glyph.
8541 (BUILD_GSTRING_GLYPH_STRING): New macro.
8542 (BUILD_GLYPH_STRINGS): Call BUILD_GSTRING_GLYPH_STRING for
8543 automatic composition.
8544 (append_composite_glyph): Adjust for the change of struct it and
8545 struct glyph.
8546 (x_produce_glyphs): Adjust for the change of struct it.
8547
8548 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
8549 the change of struct glyph_string.
8550 (x_draw_glyph_string): Likewise.
8551
8552 2008-08-29 Glenn Morris <rgm@gnu.org>
8553
8554 * buffer.c (word-wrap): Doc fix.
8555 * xdisp.c (truncate-partial-width-windows): Doc fix.
8556 Increase default to 50.
8557
8558 2008-08-29 Chong Yidong <cyd@stupidchicken.com>
8559
8560 * xdisp.c (update_tool_bar_unwind): New function.
8561 (update_tool_bar): Temporarily set selected frame before building
8562 tool-bar items.
8563
8564 2008-08-28 Michael Albinus <michael.albinus@gmx.de>
8565
8566 * dbusbind.c (XD_ERROR, XD_DEBUG_MESSAGE): Use strncpy and
8567 snprintf, respectively.
8568 (xd_append_arg): Convert strings with Fstring_make_unibyte.
8569
8570 2008-08-28 Chong Yidong <cyd@stupidchicken.com>
8571
8572 * Makefile.in: Revert (undocumented) 2008-08-20 change adding
8573 LDFLAGS to GNUstep CC invocation.
8574
8575 2008-08-27 Chong Yidong <cyd@stupidchicken.com>
8576
8577 * indent.c (Fvertical_motion): Revert last change. Handle the
8578 general case where we are moving forward, and PT spans multiple
8579 screen lines.
8580
8581 * eval.c (find_handler_clause): Temporarily increase
8582 max-lisp-eval-depth while printing the backtrace buffer, to
8583 guarantee that help-mode code can run.
8584
8585 2008-08-27 Eli Zaretskii <eliz@gnu.org>
8586
8587 * msdos.c (Fmsdos_remember_default_colors): Don't reverse frame
8588 colors under -rv.
8589 (IT_set_frame_parameters): Don't swap foreground and background
8590 colors if `(reverse . t)' is present in the frame properties.
8591 (internal_terminal_init): Call init_frame_faces only for the
8592 initial frame.
8593
8594 2008-08-27 Andreas Schwab <schwab@suse.de>
8595
8596 * dired.c (Ffile_attributes): Avoid compiler warning in bitshift.
8597
8598 2008-08-27 Andreas Schwab <schwab@suse.de>
8599
8600 * search.c (search_buffer): Set char_base to zero only at the end.
8601
8602 2008-08-27 Kenichi Handa <handa@m17n.org>
8603
8604 * fileio.c (report_file_error): Fix handling of multibyte error string.
8605
8606 2008-08-27 Andreas Seltenreich <seltenreich@gmx.de>
8607
8608 * xterm.c (x_term_init): Temporarily hide the partially
8609 initialized terminal while calling vendor-specific-keysyms.
8610
8611 2008-08-26 Eli Zaretskii <eliz@gnu.org>
8612
8613 * msdos.c (internal_terminal_init): Most initializations done only
8614 once, especially initial_screen_colors[] and termscript open.
8615
8616 2008-08-26 Chong Yidong <cyd@stupidchicken.com>
8617
8618 * eval.c (Fcondition_case): Doc fix.
8619
8620 * widgetprv.h (EmacsFramePart): Change font member to the new font
8621 struct.
8622
8623 * widget.c: Include character.h and font.h for XSETFONT.
8624 (setup_frame_gcs): Compute X font id from font struct, just once.
8625
8626 2008-08-26 Eli Zaretskii <eliz@gnu.org>
8627
8628 * term.c (get_named_tty): Fix last change.
8629
8630 2008-08-26 Chong Yidong <cyd@stupidchicken.com>
8631
8632 * indent.c (Fvertical_motion): If moving forward starting from a
8633 multi-line string, move the iterator to the last line of that string.
8634
8635 2008-08-25 Eli Zaretskii <eliz@gnu.org>
8636
8637 * frame.c (do_switch_frame): Mark previously displayed frame as
8638 obscured for FRAME_MSDOS_P frames as well.
8639
8640 2008-08-24 Eli Zaretskii <eliz@gnu.org>
8641
8642 * frame.c (make_terminal_frame): Initialize f->terminal,
8643 f->terminal->reference_count, and scroll bars on MS-DOS as well.
8644 Set the top frame to newly created frame.
8645 (Fmake_terminal_frame): Reuse the_only_display_info.
8646
8647 * vm-limit.c (get_lim_data) [MSDOS]: Use alternative methods of
8648 estimating available memory.
8649
8650 2008-08-23 David Reitter <david.reitter@gmail.com>
8651
8652 * nsterm.m (ns_draw_window_cursor): Don't call
8653 NSDisableScreenUpdates and NSEnableScreenUpdates on
8654 non-NS_IMPL_COCOA systems.
8655
8656 2008-08-23 Andreas Schwab <schwab@suse.de>
8657
8658 * process.c (procfs_system_process_attributes): Fix use of
8659 uninitialized variables.
8660
8661 2008-08-23 Eli Zaretskii <eliz@gnu.org>
8662
8663 * emacs.c (main) [MSDOS]: Call syms_of_xmenu.
8664
8665 * dispnew.c (init_display): Remove MS-DOS specific conditions for
8666 calling tty-set-up-initial-frame-faces.
8667
8668 * xmenu.c (Fx_popup_dialog, Fx_popup_menu, xmenu_show):
8669 Allow MSDOS frames along with X frames.
8670
8671 * termhooks.h (TERMINAL_ACTIVE_P): Handle output_msdos_raw in
8672 addition to output_termcap.
8673
8674 * xdisp.c (redisplay_internal) [MSDOS]: Don't call set_tty_color_mode.
8675
8676 * termchar.h (FRAME_TTY): Support output_msdos_raw.
8677 (struct tty_display_info) [MSDOS]: Add fields related to mouse
8678 highlight.
8679
8680 * process.c [!subprocesses]: Define QCname.
8681 (syms_of_process): Intern and staticpro it.
8682
8683 * w16select.c (Fw16_set_clipboard_data, Fw16_get_clipboard_data):
8684 Adjust for changes in encoding/decoding routines.
8685 Use encode_coding_object and decode_coding_object instead of
8686 encode_coding and decode_coding.
8687
8688 * sysdep.c (init_sys_modes): Call dos_ttraw with tty_out as argument.
8689
8690 * dosfns.c: Include frame.h before termhooks.h.
8691 (dos_cleanup): Use CURTTY ()->termscript instead of a global
8692 variable termscript.
8693
8694 * s/msdos.h (USER_FULL_NAME): Define.
8695 (SYSTEM_PURESIZE_EXTRA): Bump up to 100K.
8696
8697 * editfns.c (USER_FULL_NAME): Define to pw->pw_gecos if undefined.
8698 (Fuser_full_name): Use USER_FULL_NAME instead of a literal
8699 pw->pw_gecos.
8700
8701 * keyboard.c (handle_interrupt) [MSDOS]: Call cursor_to with
8702 SELECTED_FRAME as additional (1st) argument.
8703 (tty_read_avail_input): Handle output_msdos_raw in
8704 addition to output_termcap.
8705
8706 * msdos.c: Include frame.h before termhooks.h.
8707 (mouse_on, mouse_off, mouse_moveto, mouse_init)
8708 (msdos_set_cursor_shape, IT_set_face, IT_write_glyphs)
8709 (show_mouse_face, IT_clear_end_of_line, IT_clear_screen)
8710 (IT_clear_to_end, IT_cursor_to, IT_display_cursor, IT_cmgoto)
8711 (IT_set_terminal_modes, IT_reset_terminal_modes)
8712 (IT_set_frame_parameters): Use tty->termscript instead of a global
8713 variable termscript.
8714 (IT_write_glyphs): Use tty->terminal->terminal_coding instead of a
8715 global variable terminal_coding. Don't refer to
8716 Vnonascii_translation_table.
8717 (internal_terminal_init): Set Vwindow_system in current_kboard.
8718 Don't use TTY_CHAR_INS_DEL_OK. Set Vinitial_window_system.
8719 Announce date and time of session start, if termscript is open.
8720 Don't zero out the_only_display_info (it is done in
8721 term.c:init_tty). Open termscript only of not already open.
8722 Log "SCREEN SAVED" here, instead of IT_set_terminal_modes. Init mouse
8723 here instead of dos_ttraw. Don't initialize display if this is an
8724 initial tty. Don't set FRAME_FONT.
8725 (Vwindow_system_version): Bump to 23.
8726 (dos_ttraw): Accept a TTY argument; all callers fixed. If mouse
8727 is available, set up mouse_position_hook.
8728 (dos_ttraw, IT_set_terminal_modes): If called with initial
8729 terminal, do nothing.
8730 (IT_set_frame_parameters): Handle the Qtty_type frame
8731 parameter by calling internal_terminal_init.
8732 (dos_set_window_size, show_mouse_face)
8733 (clear_mouse_face, IT_note_mode_line_highlight)
8734 (IT_note_mouse_highlight, IT_update_begin, IT_frame_up_to_date)
8735 (dos_rawgetc): Use tty_display_info instead of x_display_info.
8736 (initialize_msdos_display): New function.
8737 (IT_cursor_to, IT_clear_to_end, IT_clear_screen)
8738 (IT_clear_end_of_line, IT_insert_glyphs, IT_write_glyphs)
8739 (IT_delete_glyphs, IT_ring_bell, IT_reset_terminal_modes)
8740 (IT_set_terminal_modes, IT_set_terminal_window, IT_update_begin):
8741 Accept additional argument: a pointer to a frame. Update all callers.
8742 (request_sigio, unrequest_sigio): Don't define, now defined on
8743 sysdep.c.
8744 (IT_write_glyphs): Rewrite to use encode_terminal_code.
8745
8746 * term.c [MSDOS]: Include msdos.h.
8747 (init_tty) [MSDOS]: Reuse most of WINDOWSNT branch. Change cpp
8748 conditional to DOS_NT. Allow only one call to this function in a
8749 session. Don't allocate a new struct tty_display_info; instead,
8750 reuse the_only_display_info. Call get_tty_size to get screen
8751 dimensions. Call init_baud_rate to set bad_rate.
8752 (dissociate_if_controlling_tty) [MSDOS]: Ifdef away function body.
8753 (Fsuspend_tty) [MSDOS]: Don't close input and output.
8754 (Fresume_tty) [MSDOS]: Don't reopen the TTY; instead, use stdin/stdout.
8755 (get_tty_terminal, get_named_tty, Ftty_type)
8756 (Fcontrolling_tty_p): Handle output_msdos_raw in addition to
8757 output_termcap.
8758 (Fresume_tty, Fsuspend_tty, init_tty, delete_tty):
8759 Call add_keyboard_wait_descriptor and delete_keyboard_wait_descriptor
8760 only when subprocesses are supported.
8761
8762 * frame.c (make_terminal_frame) [MSDOS]: Adjust initialization of
8763 f->output_data.x.
8764 (Fmake_terminal_frame) [MSDOS]: Don't allow creation of new
8765 terminal devices.
8766
8767 * msdos.h: Remove definition of struct x_display_info and struct
8768 x_output.
8769 (FRAME_FONT): Use output_data.tty.
8770 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL): Don't define.
8771 (struct x_display_info): Rename from display_info. Update all users in
8772 msdos.c.
8773 (struct x_output): Remove background_pixel and foreground_pixel.
8774 (the_only_display_info): Rename from the_only_x_display.
8775 (dos_ttraw): Update prototype.
8776
8777 * Makefile.in (MSDOS_OBJ): Add xmenu.o.
8778 (SOME_MACHINE_LISP): Add ../lisp/term/pc-win.elc.
8779
8780 2008-08-23 Jason Rumney <jasonr@gnu.org>
8781
8782 * image.c (enum tiff_keyword_index, tiff_format): Add :index keyword.
8783 (fn_TIFFSetDirectory): New library function used.
8784 (init_tiff_functions) [HAVE_NTGUI]: Initialize it.
8785 (tiff_load): Use :index to select among multiple images. Set count
8786 property when multiple images exist.
8787 (gif_format): Use :index, not :image.
8788
8789 2008-08-23 Chong Yidong <cyd@stupidchicken.com>
8790
8791 * xdisp.c (try_scrolling): Check INT_MAX instead of
8792 MOST_POSITIVE_FIXNUM for maximum integer value. Include limits.h
8793 to obtain INT_MAX.
8794
8795 2008-08-21 İsmail Dönmez <ismail@namtrac.org> (tiny change)
8796
8797 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase on GTK+.
8798
8799 2008-08-21 Christian Faulhammer <opfer@gentoo.org> (tiny change)
8800
8801 * Makefile.in (temacs${EXEEXT}): On GNUstep, link to appropriate
8802 GNUstep library location.
8803
8804 2008-08-21 Chong Yidong <cyd@stupidchicken.com>
8805
8806 * xfaces.c (x_update_menu_appearance): Check validity of menu font
8807 before using it.
8808
8809 * puresize.h (BASE_PURESIZE): Increase to 1250000.
8810
8811 2008-08-20 Adrian Robert <Adrian.B.Robert@gmail.com>
8812
8813 * nsfns.m (ns-read-file-name): Add casts to avoid warning.
8814 (ns-convert-utf8-nfd-to-nfc): Warn if cannot execute correctly.
8815 * nsfont.m (nsfont_draw): Compare indexed colors to 0, not nil.
8816 * nsterm.h (EmacsView-unlockFocusNeedsFlush:): Add declaration.
8817 (EmacsApp-cursor_blink_handler): Remove declaration.
8818 * nsterm.m (ns_draw_glyph_string): Update first conditional body to
8819 match 01 Feb 2008 changes in xterm.c.
8820 (ns_read_socket): Add cast to avoid warning.
8821 (EmacsApp-application:openFiles:): Don't call replyToOpenOrPrint: on
8822 GNUstep.
8823
8824 2008-08-20 Chong Yidong <cyd@stupidchicken.com>
8825
8826 * xselect.c (x_get_foreign_selection): Return nil if desired
8827 selection could not be obtained, instead of signalling an error.
8828
8829 2008-08-20 David Reitter <david.reitter@gmail.com>
8830
8831 * nsfns.m (ns_lisp_to_cursor_type): Replace with generic xfns.c.
8832 * nsterm.m: Remove ns-specific code for cursor blinking.
8833 (ns_draw_window_cursor): Clear cursor properly rather than
8834 redrawing the area. Respect width of bar cursors.
8835 These changes enable the use of generic blink-cursor-mode and
8836 generic cursor types in NS and support smooth cursor movements (do
8837 not blink off after command).
8838 * xdisp.c (get_phys_cursor_geometry): Redraw wider rectangle on
8839 Nextstep, too.
8840
8841 2008-08-19 Kenichi Handa <handa@m17n.org>
8842
8843 * font.c (Vfont_log_deferred): New variable.
8844 (font_add_log): Check Vfont_log_deferred.
8845 (font_deferred_log): New function.
8846
8847 * font.h (font_deferred_log): Extern it.
8848
8849 * fontset.c (reorder_font_vector): Use encoding charset of fonts
8850 for sorting.
8851 (face_for_char): Use deferred log.
8852
8853 2008-08-18 Kenichi Handa <handa@m17n.org>
8854
8855 * fontset.c (face_for_char): Add font log.
8856
8857 * font.c (font_add_log): Add the font properties :script, :lang,
8858 and :otf in the log.
8859
8860 2008-08-17 Chong Yidong <cyd@stupidchicken.com>
8861
8862 * xdisp.c: Remove dead code.
8863 (handle_invisible_prop, next_overlay_string): Defer call to
8864 setup_for_ellipsis.
8865 (handle_stop, set_iterator_to_next): Call setup_for_ellipsis.
8866
8867 2008-08-15 Chong Yidong <cyd@stupidchicken.com>
8868
8869 * xfaces.c (lookup_derived_face): Properly handle possible zero
8870 return value of get_lface_attributes.
8871 (merge_faces): Don't tell lookup_derived_face to signal an error
8872 if face is not found.
8873
8874 * dired.c (Fdirectory_files): Doc fix.
8875
8876 * process.c (make_process): Initialize kill_without_query struct
8877 member.
8878
8879 2008-08-15 Eli Zaretskii <eliz@gnu.org>
8880
8881 * w32.c (w32_system_process_attributes) [_MSC_VER < 1300]:
8882 Alternative calculation of totphys for Visual Studio 6.
8883
8884 * w32fns.c [_MSC_VER && _MSC_VER < 1300]: Declare HMONITOR.
8885
8886 * w32.c (_MEMORY_STATUS_EX, MEMORY_STATUS_EX, LPMEMORY_STATUS_EX):
8887 Rename from _MEMORYSTATUSEX, MEMORYSTATUSEX, LPMEMORYSTATUSEX.
8888 All users changed.
8889 (stat): Only root directory passed to GetDriveType. Allow RAM
8890 disk as well as local fixed disk when w32-get-true-file-attributes
8891 is set to `local'.
8892 (CopySid_Proc, EqualSid_Proc, GetLengthSid_Proc): New typedefs.
8893 (equal_sid, get_length_sid, copy_sid): New wrapper functions.
8894 (w32_cached_id, w32_add_to_cache): New functions.
8895 (get_name_and_id): Look account names in the cache before calling
8896 lookup_account_sid.
8897 (g_b_init_get_length_sid, g_b_init_equal_sid, g_b_init_copy_sid):
8898 New initialization flags.
8899 (globals_of_w32): Initialize them to zero.
8900 (w32_system_process_attributes): Use w32_cached_id and
8901 w32_add_to_cache.
8902
8903 2008-08-14 Lawrence Mitchell <wence@gmx.li>
8904
8905 * lread.c (Fread_char, Fread_char_exclusive): If no character
8906 event is read before timeout is reached, return nil, rather than
8907 converting to a number.
8908
8909 2008-08-14 Chong Yidong <cyd@stupidchicken.com>
8910
8911 * fns.c (use_dialog_box): Doc fix.
8912
8913 * s/darwin.h: Undefine HAVE_RES_INIT, which appears to be harmful
8914 on OS X.
8915
8916 2008-08-13 Chong Yidong <cyd@stupidchicken.com>
8917
8918 * frame.c (Qns_parse_geometry): New var.
8919 (Fx_parse_geometry): For HAVE_NS, call ns-parse-geometry.
8920
8921 2008-08-11 Chong Yidong <cyd@stupidchicken.com>
8922
8923 * xdisp.c (x_produce_glyphs): Handle the case when font has no
8924 space character in calculating tabs.
8925
8926 2008-08-11 Dan Nicolaescu <dann@ics.uci.edu>
8927
8928 * Makefile.in (bootstrap-emacs): Use ln -f in the CANNOT_DUMP case.
8929
8930 2008-08-10 Glenn Morris <rgm@gnu.org>
8931
8932 * process.c (procfs_system_process_attributes): Use EMACS_INTs to
8933 silence gcc "limited range of data type" warnings in some
8934 make_fixnum_or_float calls.
8935
8936 2008-08-09 Eli Zaretskii <eliz@gnu.org>
8937
8938 * w32.c (w32_system_process_attributes): If the process does not
8939 exist, return nil.
8940
8941 * w32.c: Include thelp32.h, psapi.h and coding.h.
8942 (_MEMORYSTATUSEX, _PROCESS_MEMORY_COUNTERS_EX): New struct
8943 declarations.
8944 (CreateToolhelp32Snapshot_Proc, Process32First_Proc)
8945 (Process32Next_Proc): New typedefs.
8946 (g_b_init_create_toolhelp32_snapshot, g_b_init_process32_first)
8947 (g_b_init_process32_next, g_b_init_open_thread_token)
8948 (g_b_init_impersonate_self, g_b_init_revert_to_self)
8949 (g_b_init_get_process_memory_info, g_b_init_global_memory_status)
8950 (g_b_init_get_process_working_set_size)
8951 (g_b_init_global_memory_status_ex): New static variables.
8952 (globals_of_w32): Initialize them.
8953 (create_toolhelp32_snapshot, process32_first, process32_next)
8954 (open_thread_token, impersonate_self, revert_to_self)
8955 (get_process_memory_info, get_process_working_set_size)
8956 (global_memory_status, global_memory_status_ex): New wrapper
8957 functions.
8958 (w32_list_system_processes, w32_system_process_attributes)
8959 (enable_privilege, restore_privilege, ltime, process_times):
8960 New functions.
8961 (convert_time_raw): New function.
8962 (convert_time): Remove conversion of FILETIME into time in 100
8963 nsec units, call convert_time_raw instead.
8964
8965 * process.h (w32_list_system_processes, w32_system_process_attributes):
8966 Add prototypes.
8967 (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess, Qttname)
8968 (Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime, Qcutime)
8969 (Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs, Quser, Qgroup)
8970 (Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime): Add extern declarations.
8971
8972 * process.c (Fsystem_process_attributes): Doc fix.
8973
8974 2008-08-08 Chong Yidong <cyd@stupidchicken.com>
8975
8976 * xdisp.c (move_it_to): When stopping at a charpos, check if that's
8977 a continued multi-char glyph; if so, advance to the actual glyph.
8978
8979 2008-08-07 Dan Nicolaescu <dann@ics.uci.edu>
8980
8981 * s/darwin.h (OTHER_FILES): Do not define here, defined in config.in.
8982
8983 * Makefile.in (ALL_OBJC_CFLAGS): New variable.
8984 (.m.o): Use it.
8985 * config.in: Regenerate.
8986
8987 2008-08-07 Chong Yidong <cyd@stupidchicken.com>
8988
8989 * xdisp.c (redisplay_window): Revert last change.
8990 (try_window): Check bottom scroll margin too.
8991
8992 2008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
8993
8994 * config.in: Regenerate.
8995
8996 * Makefile.in (emacs): Remove ifndef NS conditional for 'emacs
8997 -list-load-path-shadows'.
8998 (nsgui.h): Reduce number of things depending on it.
8999
9000 2008-08-06 Chong Yidong <cyd@stupidchicken.com>
9001
9002 * xdisp.c (try_scrolling): Use iterator to find the scroll margin,
9003 instead of window-end which does the wrong thing at eob.
9004 (try_cursor_movement): Minor optimization.
9005 (redisplay_window): If scroll margin is defined, don't assume
9006 window doesn't need scrolling.
9007
9008 2008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
9009
9010 * config.in: Regenerate.
9011
9012 * Makefile.in: Move nsXXX.m dependencies into big alphabetical list.
9013 (mostlyclean): Don't delete *.d under NS.
9014
9015 * nsterm.h (NS_HAVE_INTEGER): Change to NS_HAVE_NSINTEGER.
9016
9017 2008-08-06 Kenichi Handa <handa@m17n.org>
9018
9019 * xfont.c (xfont_list_family): Return a list of symbols, not strings.
9020
9021 2008-08-06 Andreas Schwab <schwab@suse.de>
9022
9023 * config.in: Regenerate.
9024
9025 2008-08-05 Chong Yidong <cyd@stupidchicken.com>
9026
9027 * xdisp.c (redisplay_window): Don't enforce scroll-margin when
9028 forcing a window start.
9029
9030 * fileio.c (Vauto_save_list_file_name): Move here from file.el.
9031 (auto_save_1): Update modtime when auto-save-list-file-name is on.
9032
9033 2008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
9034
9035 * emacs.c (main): Under NS, set working dir to HOME when get a "psn"
9036 argument.
9037
9038 2008-08-05 Juanma Barranquero <lekktu@gmail.com>
9039
9040 * buffer.c (syms_of_buffer) <scroll-up-aggressively>:
9041 <scroll-down-aggressively, before-change-functions>:
9042 <after-change-functions>: Reflow docstrings.
9043
9044 2008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
9045 Ken Raeburn <raeburn@gnu.org>
9046
9047 Dock menu customization, based on a patch by Ken Raeburn, plus some
9048 other fixes.
9049 * nsmenu.m (dockMenu): New variable.
9050 (EmacsDialog -clicked:): Fix mistake in change of 2008-07-17.
9051
9052 * nsterm.h (dockMenu): Declare.
9053
9054 * nsterm.m (KEY_NS_NEW_FRAME): New definition.
9055 (ns_term_init): Initialize dockMenu.
9056 (EmacsApp -newFrame:, -applicationDockMenu:): New methods.
9057 (EmacsView -windowShouldClose:): Don't behave specially if <= 1 frame
9058 left.
9059
9060 * lisp.h (LSB_TAG): Use on DARWIN_OS, not NS_IMPL_COCOA.
9061
9062 2008-08-04 Chong Yidong <cyd@stupidchicken.com>
9063
9064 * nsterm.h: Test directly for NS_HAVE_INTEGER before defining it.
9065
9066 * config.in: Regenerate.
9067
9068 2008-08-04 Seiji Zenitani <zenitani@mac.com>
9069
9070 * nsfns.m (x-create-frame): Set the frame parameter alpha to nil.
9071
9072 2008-08-04 Chong Yidong <cyd@stupidchicken.com>
9073
9074 * nsterm.h (find_and_call_menu_selection): Fix prototype.
9075
9076 2008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
9077
9078 * emacs.c (main: unexec_init_emacs_zone): Call if on DARWIN_OS.
9079
9080 * keyboard.h: Comment an #endif.
9081
9082 * lisp.h (have_menus_p): Adjust comment.
9083
9084 * menu.c (find_and_return_menu_selection): Fix comparison with
9085 client_data.
9086
9087 * nsmenu.m (popup_activated_flag): New variable.
9088 (popup_activated): New function.
9089 (menu-or-popup-active-p): New exported lisp definition.
9090 (ns_popup_menu): Set popup_activated_flag. Call discard_menu_items()
9091 when popup done.
9092 (ns_popup_dialog): Set popup_activated_flag.
9093
9094 * nsterm.m (EmacsView -conversationIdentifier): Use NSInteger
9095 version for GNUstep (handled by conditional typedef in nsterm.m).
9096 (ns_get_color): Remove special-casing for "darkblue", "dark blue" (now
9097 in rgb.txt).
9098
9099 * process.c (init_process): Use DARWIN_OS, not DARWIN.
9100
9101 * sysselect.h: Conditionalize init_process undef on DARWIN_OS.
9102
9103 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): Do it also under NS.
9104
9105 * xdisp.c (redisplay_internal, note_mouse_highlight): Under NS,
9106 shortcircuit if popup_activated like GTK and X toolkit.
9107
9108 * m/inter386.h: Change DARWIN to DARWIN_OS.
9109
9110 * s/darwin.h: Add #define DARWIN_OS. Get rid of C_SWITCH_SYSTEM def.
9111 Change LIBS_MACGUI to LIBS_NSGUI. Move temacs-conditionalized defs
9112 closer to C_SWITCH_SYSTEM_TEMACS so usage is understood. Expand
9113 comment on NO_SOCK_SIGIO.
9114
9115 2008-08-03 Chong Yidong <cyd@stupidchicken.com>
9116
9117 * nsterm.m (windowDidResize): Remove stopModal call.
9118
9119 2008-08-03 Andreas Schwab <schwab@suse.de>
9120
9121 * vm-limit.c (get_lim_data) [HAVE_GETRLIMIT && RLIMIT_AS]: Define.
9122 (check_memory_limits): Don't handle HAVE_GETRLIMIT here.
9123
9124 2008-08-02 Chong Yidong <cyd@stupidchicken.com>
9125
9126 * vm-limit.c (check_memory_limits): Don't use getrlimit on cygwin.
9127 Don't use uninitialized pointer variable when using getrlimit.
9128
9129 2008-08-02 Jason Rumney <jasonr@gnu.org>
9130
9131 * w32font.c (compute_metrics): Don't mess with glyph_idx setting here.
9132
9133 2008-08-02 Eli Zaretskii <eliz@gnu.org>
9134
9135 * alloc.c (NSTATICS): Bump to 0x640.
9136
9137 * s/gnu-linux.h (HAVE_PROCFS, LISTPROC, PROCATTR): New defines.
9138
9139 * lisp.h: Add prototype for directory_files_internal.
9140
9141 * process.c (Fsystem_processes_list, Fsystem_process_attributes):
9142 New functions.
9143 (syms_of_process): Defsubr them. Add initializations for various
9144 Q* symbols used in procfs_system_process_attributes.
9145 (procfs_list_system_processes, procfs_system_process_attributes)
9146 [HAVE_PROCFS]: New functions.
9147 (time_from_jiffies, ltime_from_jiffies, get_up_time, procfs_ttyname)
9148 (procfs_get_total_memory): New functions.
9149
9150 2008-08-01 Juanma Barranquero <lekktu@gmail.com>
9151
9152 * xfaces.c (Fx_load_color_file): Fix previous change;
9153 it is #ifdef WINDOWSNT, not WINDOWS_NT.
9154
9155 2008-08-01 Michael Albinus <michael.albinus@gmx.de>
9156
9157 * dbusbind.c (xd_read_message): Handle D-Bus error messages.
9158
9159 2008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
9160
9161 * nsterm.h (NSInteger, NSUInteger): Add defines for non-Leopard.
9162
9163 2008-08-01 Chong Yidong <cyd@stupidchicken.com>
9164
9165 * nsfns.m (ns_frame_parm_handlers): Add empty entry for x_set_alpha.
9166
9167 * nsterm.m (EmacsApp -application:openFiles:): GNUstep does not
9168 define NSApplicationDelegateReplySuccess.
9169 (EmacsView -converstationIdentifier): Use long instead of
9170 NSInteger for GNUstep, since it doesn't have NSInteger.
9171
9172 * xmenu.c: Revert last change.
9173
9174 * keyboard.h: Fix last change.
9175
9176 2008-08-01 Juanma Barranquero <lekktu@gmail.com>
9177
9178 * xfaces.c (x-load-color-file): Use RGB() instead of manually shifting
9179 on Windows.
9180
9181 2008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
9182
9183 Warning clearing and clean-up in NS port.
9184 * keyboard.h (xmalloc_widget_value, digest_single_submenu):
9185 Add prototypes.
9186 * nsgui.h (FACE_DEFAULT): Remove, unused.
9187 (XGCValues): Change colors to unsigned long.
9188 * nsterm.h (EmacsApp): Add declaration of all methods implemented in
9189 nsterm.m.
9190 (EmacsMenu -addItemWithWidgetValue:): Change to use NSMenuItem class.
9191 (ns_list_fonts): Remove, unused.
9192 (ns_font_to_xlfd, ns_fontname_to_xlfd): Drop prototypes.
9193 * nsfns.m (interpret_services_menu): Use NSMenuItem class.
9194 * nsfont.m (nsfont_open): Fix cast error in glyphs,metrics alloc.
9195 (nsfont_draw): Compare face colors to 0, not nil.
9196 * nsmenu.m (struct widget_value): Drop unneeded declaration.
9197 (EmacsMenu -addItemWithWidgetValue:, -fillWithWidgetValue:)
9198 (-addSubmenuWithTitle:): Use NSMenuItem class.
9199 (ns_popup_menu): Use NO, not NULL, for enabled setting.
9200 * nsterm.m (ns_draw_glyph_string): Don't compare font to ~0.
9201 (ns_clip_to_row): Make gc arg a BOOL.
9202 (ns_draw_fringe_bitmap, ns_draw_window_cursor): Use YES, NO in
9203 ns_clip_to_row() call.
9204 (ns_draw_glyph_string): Drop face comparison to ~0 (no longer
9205 used). Cast FRAME_FONT assignments.
9206 (ns_read_socket): Cast call to EmacsApp-fulfillService:withArg:.
9207 (ns_string_to_lispmod): Change arg to const char.
9208 (ns_term_init): Use NSMenuItem class.
9209 (EmacsApp -openFile:): Move to different section of file.
9210 (EmacsApp -application:openFiles:): Don't return a value, call
9211 -replyToOpenOrPrint:.
9212 (EmacsView -keyDown:): Fix up cast.
9213 (EmacsView -converstationIdentifier): Use NSInteger instead of long.
9214 (EmacsView -menuDown:): Cast tag in call to
9215 find_and_call_menu_selection().
9216 (ns_list_fonts): Remove, unused.
9217 (ns_font_to_xlfd): Make static. Cast result of UTF8String.
9218 (ns_fontname_to_xlfd): Make static.
9219 * w32menu.c (xmalloc_widget_value, digest_single_submenu):
9220 Remove prototypes (now in keyboard.h).
9221 (next_menubar_widget_id): Remove, unused.
9222 * xmenu.c (xmalloc_widget_value, digest_single_submenu):
9223 Remove prototypes (now in keyboard.h).
9224 * xfaces.c (ns_list_fonts, w32_list_fonts): Remove, unused.
9225
9226 2008-08-01 Dan Nicolaescu <dann@ics.uci.edu>
9227
9228 * Makefile.in (dispnew.o, gtkutil.o, sound.o, atimer.o)
9229 (floatfns.o): Depend on syssignal.h.
9230 (term.o): Depend on syssignal.h, systty.h, and $(INTERVAL_SRC).
9231
9232 * systty.h: Fix previous change that removed BSD_TERMIOS.
9233 Add comments to #ifdefs.
9234
9235 2008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
9236
9237 * w32fns.c (w32-load-color-file): Remove.
9238 (x-open-connection): Use renamed Fx_load_color_file.
9239 * xfaces.c (x-load-color-file): Add.
9240 * nsterm.m (ns_initialize): Load colors from etc/rgb.txt instead of
9241 Emacs.clr.
9242 (hide_hourglass): BLOCK_INPUT before UNBLOCK.
9243
9244 2008-07-31 Michael Albinus <michael.albinus@gmx.de>
9245
9246 * dbusbind.c (Fdbus_call_method_asynchronously)
9247 (Fdbus_method_error_internal): New defuns.
9248 (xd_read_message): Handle also reply messages.
9249 (Vdbus_registered_functions_table): Extend docstring.
9250
9251 2008-07-31 Juanma Barranquero <lekktu@gmail.com>
9252
9253 * keyboard.c (gobble_input): Fix previous change.
9254
9255 2008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
9256
9257 * bitmaps/README:
9258 * xfns.c:
9259 * termcap.c:
9260 * term.c:
9261 * syswait.h:
9262 * systty.h:
9263 * systime.h:
9264 * syssignal.h:
9265 * sysdep.c:
9266 * process.h:
9267 * process.c:
9268 * print.c:
9269 * ndir.h:
9270 * lread.c:
9271 * keyboard.c:
9272 * getpagesize.h:
9273 * floatfns.c:
9274 * fileio.c:
9275 * emacs.c:
9276 * doc.c:
9277 * dispnew.c:
9278 * dired.c:
9279 * data.c:
9280 * callproc.c:
9281 * buffer.c:
9282 * README:
9283 * Makefile.in:
9284 * s/template.h:
9285 * s/msdos.h:
9286 * m/vax.h: Remove VMS support.
9287 * s/vms.h:
9288 * vlimit.h:
9289 * uaf.h:
9290 * temacs.opt:
9291 * param.h:
9292 * ioctl.h: Remove file.
9293
9294 2008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
9295
9296 * s/ms-w32.h (MULTI_KBOARD): Remove.
9297 * xterm.c:
9298 * xselect.c:
9299 * xfns.c:
9300 * window.c:
9301 * w32term.c:
9302 * w32fns.c:
9303 * terminal.c:
9304 * termhooks.h:
9305 * term.c:
9306 * sysdep.c:
9307 * keyboard.h:
9308 * keyboard.c:
9309 * frame.h:
9310 * frame.c:
9311 * frame.c: Remove references to MULTI_KBOARD, it is now the default.
9312 * config.in: Regenerate.
9313
9314 2008-07-30 Jason Rumney <jasonr@gnu.org>
9315
9316 * w32font.h (struct w32font_info): Use unicode version of textmetrics.
9317
9318 * w32font.c (w32font_encode_char): Leave as unicode if in range.
9319 (w32font_open_internal): Get unicode version of textmetrics.
9320 Don't enable or disable glyph indices here.
9321 (w32font_open): Disable use of glyph indices.
9322
9323 * w32uniscribe.c (uniscribe_open): Enable use of glyph indices.
9324
9325 2008-07-30 Chong Yidong <cyd@stupidchicken.com>
9326
9327 * minibuf.c (Vread_buffer_function): Doc fix.
9328
9329 2008-07-30 John Paul Wallington <jpw@pobox.com>
9330
9331 * minibuf.c (read_buffer_completion_ignore_case): New var.
9332 (Fread_buffer): Use it.
9333
9334 2008-07-30 Dan Nicolaescu <dann@ics.uci.edu>
9335
9336 * systty.h (sensemode): Remove empty #if. Remove reference to
9337 BSD_TERMIOS, unused.
9338
9339 * sysdep.c: Remove reference to DGUX.
9340 (closedir): Remove reference to BROKEN_CLOSEDIR, unused.
9341
9342 * config.in: Regenerate.
9343
9344 2008-07-30 Jason Rumney <jasonr@gnu.org>
9345
9346 * w32uniscribe.c (uniscribe_encode_char): Fix glyph buffer size.
9347
9348 2008-07-29 Jason Rumney <jasonr@gnu.org>
9349
9350 * w32uniscribe.c (uniscribe_shape): Avoid using context if cache
9351 is populated.
9352 (uniscribe_encode_char): Always use uniscribe.
9353 Avoid using context if cache is populated.
9354
9355 2008-07-29 Jan Djärv <jan.h.d@swipnet.se>
9356
9357 * xmenu.c (Fx_menu_bar_open_internal): Use activate_item signal to
9358 open menu.
9359
9360 * gtkutil.c (menu_nav_ended): Remove.
9361 (create_menus): Remove signal connect for menu_nav_ended.
9362
9363 2008-07-28 Chong Yidong <cyd@stupidchicken.com>
9364
9365 * xdisp.c (redisplay_window): Check return value of
9366 compute_window_start_on_continuation_line before forcing a window
9367 start.
9368
9369 2008-07-28 Jason Rumney <jasonr@gnu.org>
9370
9371 * w32font.c (w32font_text_extents): Use w32_metric_cache consistently.
9372
9373 * w32term.c (w32_enable_unicode_output, cleartype_active):
9374 Remove obsolete display options.
9375 (x_draw_glyph_string_background): Don't use old cleartype_active
9376 workaround.
9377 (w32_initialize): Remove cleartype_active initialization.
9378 (syms_of_w32term): Remove w32_enable_unicode_output initialization.
9379
9380 2008-07-28 Andreas Schwab <schwab@suse.de>
9381
9382 * lisp.h (init_weak_hash_tables, syms_of_font)
9383 (xd_read_queued_messages, syms_of_dbusbind): Declare.
9384 (remove_hash_entry): Don't declare.
9385 * eval.c (maybe_call_debugger): Make static and move before use.
9386 * gtkutil.c: Include <X11/Xft/Xft.h> if HAVE_XFT.
9387 * xdisp.c: Include "gtkutil.h" if USE_GTK.
9388 * xterm.h (x_set_frame_alpha): Declare.
9389
9390 2008-07-28 Jan Djärv <jan.h.d@swipnet.se>
9391
9392 * gtkutil.c (menu_nav_ended): Revert change from 2008-07-24.
9393 (create_menus): Connect selection-done to menu_nav_ended.
9394
9395 2008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
9396
9397 * nsfns.m (x-create-frame): Add copy of parms argument to beginning.
9398 Set Vx_resource_name to a fallback. Replace read of 'buffered'
9399 parameter with read of 'alpha' one.
9400 (Qns_frame_parameter): Remove.
9401 * nsselect.m (selection-coding-system)
9402 (next-selection-coding-system, Vselection_coding_system)
9403 (Vnext_selection_coding_system): Drop.
9404
9405 2008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
9406
9407 * nsfns.m (do-applescript, do_applescript): Rename to
9408 ns-do-applescript, ns_do_applescript, and move within file.
9409
9410 2008-07-27 Dan Nicolaescu <dann@ics.uci.edu>
9411
9412 Remove support for Mac Carbon.
9413 * mactoolbox.c:
9414 * macterm.h:
9415 * macterm.c:
9416 * macselect.c:
9417 * macmenu.c:
9418 * macgui.h:
9419 * macfns.c:
9420 * mac.c: Remove file.
9421 * s/darwin.h:
9422 * m/intel386.h:
9423 * xfaces.c:
9424 * xdisp.c:
9425 * window.c:
9426 * tparam.c:
9427 * termhooks.h:
9428 * termcap.c:
9429 * term.c:
9430 * syssignal.h:
9431 * sysselect.h:
9432 * sysdep.c:
9433 * process.c:
9434 * lread.c:
9435 * lisp.h:
9436 * keyboard.c:
9437 * image.c:
9438 * fringe.c:
9439 * frame.h:
9440 * frame.c:
9441 * fontset.c:
9442 * font.h:
9443 * font.c:
9444 * fns.c:
9445 * fileio.c:
9446 * emacs.c:
9447 * dispnew.c:
9448 * dispextern.h:
9449 * config.in:
9450 * atimer.c:
9451 * Makefile.in: Remove code for Carbon.
9452
9453 2008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9454
9455 * macterm.c (XDrawLine) [USE_MAC_IMAGE_IO]: Remove spurious return.
9456
9457 2008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9458
9459 * macterm.h (kCGBitmapByteOrder32Host): New define for
9460 non-universal SDKs.
9461
9462 * image.c (mac_create_cg_image_from_image, image_load_image_io)
9463 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
9464
9465 * macterm.c (XDrawLine, XCreatePixmapFromBitmapData)
9466 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
9467
9468 2008-07-26 David Robinow <drobinow@gmail.com> (tiny change)
9469
9470 * w32inevt.c: Include dispextern.h.
9471
9472 2008-07-26 Andreas Schwab <schwab@suse.de>
9473
9474 * print.c (print_object): Fix off-by-one in last change.
9475
9476 2008-07-25 Juanma Barranquero <lekktu@gmail.com>
9477
9478 * term.c (syms_of_term): Don't initialize default_orig_pair,
9479 default_set_foreground and default_set_background on Windows.
9480
9481 2008-07-25 Jason Rumney <jasonr@gnu.org>
9482
9483 * w32uniscribe.c (uniscribe_shape): Pass NULL for control arg to
9484 ScriptItemize. Clean up return value checking. Remove unused
9485 variables.
9486 (uniscribe_encode_char): Encode non-BMP characters with uniscribe
9487 shaping engine.
9488
9489 * w32font.c (w32font_has_char): Handle the case where we can't
9490 determine the script for a character.
9491
9492 2008-07-25 Chong Yidong <cyd@stupidchicken.com>
9493
9494 * term.c (syms_of_term): Initialize default_orig_pair,
9495 default_set_foreground, and default_set_background.
9496
9497 * getloadavg.c (nl): Rename to name_list to avoid ncurses.h
9498 clash (bug#86).
9499 (getloadavg): Callers changed.
9500
9501 * image.c (svg_load_image): Fix last change.
9502 (svg_load_image): Use rsvg_handle_get_dimensions to check that
9503 image size is valid. Use g_object_unref instead of deprecated
9504 rsvg_handle_free to free rsvg handle.
9505 (x_from_xcolors): Don't initialize pixmap (silence compiler).
9506
9507 2008-07-25 Jason Rumney <jasonr@gnu.org>
9508
9509 * w32font.c (w32font_encode_char): Encode characters outside BMP as
9510 surrogates before looking up glyph index.
9511 (w32font_text_extents): Encode as surrogates if falling back to
9512 functions that need UTF-16 wide chars.
9513
9514 * w32uniscribe.c (uniscribe_encode_char): Encode characters outside
9515 BMP as surrogates before looking up glyph index.
9516
9517 2008-07-25 Chong Yidong <cyd@stupidchicken.com>
9518
9519 * image.c (svg_load_image): Check for failure in return value of
9520 rsvg_handle_get_pixbuf. Free rsvg handle when done.
9521
9522 2008-07-25 Jason Rumney <jasonr@gnu.org>
9523
9524 * w32font.c (Fx_select_font): Reverse sense of second arg.
9525
9526 2008-07-24 Stefan Monnier <monnier@iro.umontreal.ca>
9527
9528 * syntax.c (struct lisp_parse_state, char_quoted, inc_bytepos)
9529 (dec_bytepos, find_defun_start): Use EMACS_INT for buffer positions.
9530
9531 * puresize.h (PURESIZE_CHECKING_RATIO): New macro.
9532 (PURESIZE): Use it.
9533
9534 2008-07-24 Dan Nicolaescu <dann@ics.uci.edu>
9535
9536 * m/amdx86-64.h (HAVE_LIB64_DIR): Consolidate ifdefs.
9537 * m/alpha.h (TEXT_END):
9538 * m/ibmrs6000.h (TEXT_END):
9539 * m/macppc.h (TEXT_END):
9540 * s/darwin.h (TEXT_END):
9541 * s/msdos.h (TEXT_END): Remove, unused.
9542 * s/gnu-linux.h (BSD_PGRPS): Add a comment.
9543 * s/cygwin.h: Remove comment.
9544
9545 * ecrt0.c (NODOT_GLOBAL_START): Remove code, unused.
9546 (DOT_GLOBAL_START): Remove conditional, redundant for CRT0_DUMMIES.
9547 * m/intel386.h (DOT_GLOBAL_START):
9548 * m/vax.h (DOT_GLOBAL_START): Remove, redundant with CRT0_DUMMIES.
9549 (USG): Remove, file not used on USG platforms.
9550
9551 * Makefile.in (HAVE_X11): Remove empty #else.
9552
9553 2008-07-24 Andreas Schwab <schwab@suse.de>
9554
9555 * fileio.c (Finsert_file_contents): Properly adjust undo list
9556 after format conversion.
9557
9558 2008-07-24 Jan Djärv <jan.h.d@swipnet.se>
9559
9560 * gtkutil.c (xg_get_font_name): Cast w to GTK_FONT_SELECTION_DIALOG.
9561 (menu_nav_ended): Remove.
9562 (create_menus): Remove signal connect for menu_nav_ended.
9563 (xg_update_menubar): Also take deactivate_cb as parameter, pass it to
9564 create_menus.
9565 (xg_modify_menubar_widgets): Pass deactivate_cb to xg_update_menubar.
9566
9567 2008-07-23 Jason Rumney <jasonr@gnu.org>
9568
9569 * w32font.c (w32_enumfont_pattern_entity): Return height consistent
9570 with opened font.
9571 (w32font_open): Set font type to gdi.
9572
9573 * w32uniscribe.c (uniscribe_open): Set font type to uniscribe.
9574
9575 2008-07-23 Dan Nicolaescu <dann@ics.uci.edu>
9576
9577 * s/usg5-4.h (ADDR_CORRECT): Remove, unused.
9578 * unexaix.c (ADDR_CORRECT): Remove conditional, the only user
9579 defines it.
9580 * unexec.c (ADDR_CORRECT): Define unconditionally.
9581
9582 * m/ibmrs6000.h (C_SWITCH_MACHINE): Remove.
9583
9584 * unexec.c: Remove code depending on !COFF and USG, the file is
9585 not used for such systems.
9586
9587 * s/netbsd.h (A_TEXT_OFFSET, A_TEXT_SEEK):
9588 * s/freebsd.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, unused.
9589 (LD_SWITCH_SYSTEM_1): Remove, update users.
9590
9591 * s/darwin.h (DATA_END):
9592 * m/intel386.h (DATA_END):
9593 * m/ibmrs6000.h (DATA_END):
9594 * m/alpha.h (DATA_END): Remove, unused.
9595
9596 * config.in: Regenerate.
9597 * s/ms-w32.h (subprocesses): Define unconditionally.
9598 * s/template.h (subprocesses): Update comment.
9599 * s/vms.h (subprocesses):
9600 * s/usg5-4.h (subprocesses):
9601 * s/hpux10-20.h (subprocesses):
9602 * s/gnu-linux.h (subprocesses):
9603 * s/cygwin.h (subprocesses):
9604 * s/bsd-common.h (subprocesses):
9605 * s/aix4-2.h (subprocesses):
9606 * s/darwin.h (subprocesses): Do not define, defined by default now.
9607
9608 * Makefile.in (C_SWITCH_SITE, LD_SWITCH_SITE): Remove, unused.
9609 Remove all references.
9610 (temacs): Add GNUstep specific ld flags.
9611
9612 * nsterm.m (syms_of_nsterm): Provide ns, not ns-windowing,
9613 similarly to what X does.
9614
9615 2008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
9616
9617 * nsfns.m (x-list-fonts): Remove.
9618 (syms_of_nsfns): Drop the x-list-fonts declaration.
9619 * nsterm.m: Get rid of remaining "//" comments.
9620
9621 2008-07-22 Chong Yidong <cyd@stupidchicken.com>
9622
9623 * xselect.c (Fx_rotate_cut_buffers_internal): Doc fix.
9624
9625 * nsselect.m (Fns_selection_exists_p, Fns_selection_owner_p)
9626 (Fx_get_selection_internal, Fns_rotate_cut_buffers_internal)
9627 (Fns_own_selection_internal, Fx_disown_selection_internal)
9628 (Fns_get_cut_buffer_internal, Fns_store_cut_buffer_internal):
9629
9630 * nsmenu.m (Fns_reset_menu, Fx_popup_menu): Change to use 'doc: /*
9631 ... */' style of docstrings. Doc fixes.
9632
9633 2008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
9634
9635 * terminfo.c (UP, BC, PC): Undo previous change.
9636
9637 * nsfns.m: Rename ns prefixed functions/variables to the
9638 corresponding x versions. Update references.
9639
9640 2008-07-22 Stefan Monnier <monnier@iro.umontreal.ca>
9641
9642 * syntax.c (char_quoted): Check "charpos > beg" before decrementing.
9643
9644 2008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
9645
9646 * nsfns.m (x_set_menu_bar_lines, x_set_tool_bar_lines):
9647 Remove forwarding functions.
9648 (ns_set_menu_bar_lines): Rename to x_set_menu_bar_lines, make
9649 non-static.
9650 (ns_set_tool_bar_lines): Rename to x_set_tool_bar_lines, make
9651 non-static.
9652 (ns_frame_parm_handlers): Use the new names.
9653 (syms_of_nsfns): Move to the end of file.
9654
9655 * nsterm.m (syms_of_nsterm): Move to the end of file.
9656
9657 * dispnew.c (init_display): Remove code for X10.
9658
9659 2008-07-22 Jason Rumney <jasonr@gnu.org>
9660
9661 * w32proc.c (Fw32_long_file_name): Don't append dir separator to
9662 bare drive.
9663
9664 2008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
9665
9666 * nsterm.m (syms_of_nsterm): Remove debugging println.
9667
9668 2008-07-22 David Reitter <david.reitter@gmail.com>
9669
9670 * nsfns.m (do_applescript, F_do_applescript): NS version of the
9671 Carbon implementation of the same functionality: execute arbitrary
9672 AppleScript code.
9673
9674 2008-07-21 Adrian Robert <Adrian.B.Robert@gmail.com>
9675
9676 * nsfns.m (Fx_create_frame, Fx_read_file_name, Fx_get_resource)
9677 (Fx_set_resource, Fx_set_alpha, Fx_server_max_request_size)
9678 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
9679 (Fx_display_mm_height, Fx_display_mm_width)
9680 (Fx_display_backing_store, Fx_display_visual_class)
9681 (Fx_display_save_under, Fx_open_connection)
9682 (Fx_close_connection, Fx_hide_emacs, Fx_font_name)
9683 (Fx_list_colors, Fx_perform_service, Fx_color_defined_p)
9684 (Fx_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
9685 (Fx_display_pixel_width, Fx_display_pixel_height)
9686 (Fx_display_usable_bounds, Fx_display_planes)
9687 (Fx_display_color_cells, Vns_icon_type_alist): Change to use 'doc: /*
9688 ... */' style of docstrings.
9689
9690 2008-07-21 Dan Nicolaescu <dann@ics.uci.edu>
9691
9692 * m/mips.h (LOAD_AVE_TYPE, LOAD_AVE_CVT): Do not define, not used
9693 on this platform.
9694 (mips):
9695 * m/iris4d.h (mips): Do not define.
9696 * sysdep.c (init_sys_modes): Use __mips__ instead of mips.
9697
9698 * m/ibmrs6000.h (LD_SWITCH_SITE): Remove.
9699
9700 * image.c:
9701 * nsfns.m:
9702 * nsselect.m:
9703 * nsterm.h:
9704 * nsterm.m: Rename ns prefixed functions/variables to the
9705 corresponding x versions. Update references.
9706
9707 * m/ibms390x.h (NO_REMAP): Do not undefine.
9708
9709 * m/amdx86-64.h: Use SOLARIS2 instead of sun.
9710
9711 2008-07-21 Chong Yidong <cyd@stupidchicken.com>
9712
9713 * nsfns.m: Change NS to Nextstep in docstrings and error messages.
9714 (Fns_create_frame, Fns_read_file_name, Fns_get_resource)
9715 (Fns_set_resource, Fns_set_alpha, Fns_server_max_request_size)
9716 (Fns_server_vendor, Fns_server_version, Fns_display_screens)
9717 (Fns_display_mm_height, Fns_display_mm_width)
9718 (Fns_display_backing_store, Fns_display_visual_class)
9719 (Fns_display_save_under, Fns_open_connection)
9720 (Fns_close_connection, Fns_hide_emacs, Fns_font_name)
9721 (Fns_list_colors, Fns_perform_service, Fns_color_defined_p)
9722 (Fns_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
9723 (Fns_display_pixel_width, Fns_display_pixel_height)
9724 (Fns_display_usable_bounds, Fx_display_planes)
9725 (Fns_display_color_cells, Vns_icon_type_alist): Doc fixes.
9726
9727 2008-07-21 Ami Fischman <ami@fischman.org> (tiny change)
9728
9729 * print.c (print_object): Check print_depth before searching for
9730 circularities.
9731
9732 2008-07-21 Michael Albinus <michael.albinus@gmx.de>
9733
9734 * dbusbind.c (Fdbus_register_signal): Use sprintf + strcat instead
9735 only sprintf.
9736
9737 2008-07-21 Kenichi Handa <handa@m17n.org>
9738
9739 * ftfont.c (adjust_anchor): Check if DeltaValue is not NULL.
9740
9741 2008-07-20 Andreas Schwab <schwab@suse.de>
9742
9743 * syntax.c (find_start_pos, find_start_value)
9744 (find_start_value_byte, find_start_begv, find_defun_start)
9745 (back_comment, scan_sexps_forward): Use EMACS_INT for buffer positions.
9746
9747 2008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
9748
9749 * s/sol2-3.h: Insert contents of s/sol2.h.
9750 (LD_SWITCH_SYSTEM): Remove redundant definition.
9751 * s/sol2.h: Remove, unused.
9752
9753 2008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
9754
9755 * nsterm.m (ns_get_color): Recognize HSB,AHSB be synonyms for HSV,AHSV.
9756
9757 2008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
9758
9759 * Makefile.in (ns_appdir): Fix typo in find command.
9760
9761 2008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
9762
9763 * m/intel386.h (NO_REMAP): Do no define for USG, not used.
9764
9765 * s/usg5-4.h (LIBS_SYSTEM): Remove, system for which this was
9766 added not supported anymore.
9767
9768 * s/usg5-4-2.h (LIBS_SYSTEM):
9769 * s/sol2.h (LIBS_SYSTEM): Do not undefine.
9770
9771 * s/netbsd.h (GETPGRP_NO_ARG, N_TRELOFF):
9772 * s/lynxos.h (GETPGRP_NO_ARG):
9773 * s/hpux10-20.h (NO_SIOCTL_H):
9774 * s/gnu.h (GETPGRP_NO_ARG):
9775 * s/gnu-linux.h (NO_SIOCTL_H):
9776 * s/freebsd.h (GETPGRP_NO_ARG, N_TRELOFF):
9777 * s/cygwin.h (GETPGRP_NO_ARG):
9778 * s/irix6-5.h (LIBS_SYSTEM, GETPGRP_NO_ARG): Remove, unused.
9779 (C_DEBUG_SWITCH): Remove duplicate definition.
9780
9781 * m/ibms390.h: Remove boilerplate comments.
9782
9783 * sysdep.c (closedir): Use SOLARIS2 instead of sun && USG5_4.
9784
9785 * process.c (HAVE_SERIAL): Consolidate ifdefs.
9786 (wait_reading_process_output): Remove code for SunOS, platform not
9787 supported anymore. Use SOLARIS2 instead of sun.
9788
9789 2008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
9790
9791 * font.c (font_open_by_name): Under NS, default lface height to zero.
9792 (font_open_for_lface): Under NS, set size based on frame fontsize.
9793 * nsterm.m (EmacsView-changeFont:): Remove some commented code.
9794 * frame.c (x_set_frame_parameters): Remove HAVE_NS ifdef.
9795
9796 2008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
9797
9798 * nsterm.m (ns_antialias_text, ns_use_qd_smoothing)
9799 (ns_use_system_highlight_color): Switch these from DEFVAR_BOOL to
9800 DEFVAR_LISP and change all code accordingly to use Qt/Qnil instead of
9801 YES/NO.
9802 * nsterm.h (prevUseHighlightColor): Make a Lisp_Object.
9803 * nsfont.m (nsfont_draw): Treat ns_use_qd_smoothing as Lisp_Object.
9804 * Makefile.in (clean): Clear out build destination dir.
9805
9806 2008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
9807
9808 * Makefile.in (nsgui.h-related dependencies): Remove abbrev, xfns,
9809 xterm, xselect.
9810 * lisp.h: Remove declaration of hash_remove.
9811 * nsgui.h: Remove redefinitions of hash_remove.
9812 * fns.c (hash_remove): Rename to hash_remove_from_table.
9813
9814 2008-07-19 Seiji Zenitani <zenitani@mac.com>
9815
9816 * nsfont.m (nsfont_fmember_to_entity, nsfont_make_fontset_for_font):
9817 strdup() the family UTF8String before modifying it.
9818
9819 2008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
9820
9821 * nsterm.m (ns_maybe_dumpglyphs_background): Compare result from
9822 NS_FACE_BACKGROUND with 0 instead of nil.
9823 * nsfont.m (nsfont_draw): Same.
9824
9825 2008-07-19 Chong Yidong <cyd@stupidchicken.com>
9826
9827 * nsfns.m (ns_set_background_color): Fix crash.
9828
9829 2008-07-18 Chong Yidong <cyd@stupidchicken.com>
9830
9831 * Makefile.in (SOME_MACHINE_LISP): Remove ns-carbon-compat.elc.
9832
9833 2008-07-18 Dan Nicolaescu <dann@ics.uci.edu>
9834
9835 * puresize.h (BASE_PURESIZE): Increase to 1240000.
9836
9837 2008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9838
9839 * gtkutil.c: Include <config.h> instead of "config.h".
9840
9841 * lisp.h (Foverlay_buffer): Add EXFUN.
9842
9843 * process.c (create_process) [!WINDOWSNT && FD_CLOEXEC]: Wait for
9844 child process to complete child_setup. Undo 2005-09-21 change.
9845
9846 * s/darwin.h: Mention setsid after vfork.
9847
9848 2008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9849
9850 * Makefile.in (frame.o, keyboard.o, xdisp.o, xfaces.o):
9851 Depend on macgui.h.
9852
9853 * macfns.c (Fx_server_version): Don't use gestaltSystemVersionMajor,
9854 gestaltSystemVersionMinor, or gestaltSystemVersionBugFix.
9855
9856 * macterm.c (keycode_to_xkeysym_table): Add entries for f17, f18,
9857 and f19.
9858 [MAC_OSX] (fn_keycode_to_keycode_table): Likewise.
9859
9860 * macterm.h (gestaltSystemVersionMajor, gestaltSystemVersionMinor)
9861 (gestaltSystemVersionBugFix) [MAC_OS_X_VERSION_MAX_ALLOWED < 1040]:
9862 Remove enumerators.
9863
9864 * mactoolbox.c [USE_MAC_TSM] (mac_handle_text_input_event):
9865 Check if FACE_FROM_ID returns NULL.
9866
9867 2008-07-17 David Robinow <drobinow@gmail.com> (tiny change)
9868
9869 * w32inevt.c (change_frame_size): Remove extern declaration.
9870 (resize_event, maybe_generate_resize_event): Pass SAFE arg to
9871 change_frame_size.
9872
9873 2008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
9874
9875 * getloadavg.c: Revert last change (2008-07-15).
9876
9877 2008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
9878
9879 * Makefile.in: Replace emacsapp, emacsbindir, emacsappsrc variables
9880 set here with ns_appdir, ns_appresdir, ns_appbindir, ns_appsrc set
9881 from configure.
9882
9883 2008-07-17 Dan Nicolaescu <dann@ics.uci.edu>
9884
9885 * s/sol2.h:
9886 * s/sol2-4.h: Reorganize conditionals.
9887
9888 * ecrt0.c: Remove code depending on m68000, not used anymore.
9889
9890 * fns.c (hash_remove): Make static.
9891 * lisp.h (hash_remove): Don't prototype.
9892
9893 * m/ibmrs6000.h:
9894 * m/ibms390x.h:
9895 * m/macppc.h: Remove boilerplate comments.
9896
9897 * m/sparc.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, only used on
9898 Solaris, which does not need them.
9899
9900 * m/vax.h: Remove comments about unsupported systems.
9901
9902 * s/darwin.h: Reorganize ifdefs.
9903
9904 2008-07-17 Andreas Schwab <schwab@suse.de>
9905
9906 * s/cygwin.h (LIB_STANDARD_LIBSRC): Don't define.
9907
9908 2008-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
9909
9910 Use SDATA. Follow coding convention of placing operators at
9911 beginning of next line rather than end of previous line, and placing
9912 spaces around infix operators.
9913
9914 * Makefile.in: Undef LIB_STANDARD before defining it to silence warning
9915 in case it was defined already.
9916 USE @GNUSTEP_MAKEFILES@ rather than envvars.
9917 * nsterm.m (ns_term_init): Pass Qt and Qnil rather than YES/NO to
9918 ns_default.
9919 (applicationShouldTerminate, setValuesFromPanel): Use EQ to compare
9920 Lisp_Objects.
9921 * nsterm.h (Fx_display_grayscale_p, Fx_display_planes)
9922 (ns_defined_color, ns_color_to_lisp): Declare.
9923 * nsselect.m (ns_handle_selection_request, ns_handle_selection_clear)
9924 (Fns_own_selection_internal): Make the big ugly hack more explicit, so
9925 it's accepted even with USE_LISP_UNION_TYPE.
9926 * nsmenu.m (ns_update_menubar): Use EQ to compare Lisp_Objects.
9927 (update_frame_tool_bar): Remove apparently obsolete tests for
9928 non-integerness of f->tool_bar_lines.
9929 (windowShouldClose, addButton, clicked, runDialogAt): Make the big ugly
9930 hack more explicit, so it's accepted even with USE_LISP_UNION_TYPE.
9931 * nsfont.m (nsfont_driver): Use just 0 rather than an invalid cast.
9932 (nsfont_open): Don't confuse NULL for Qnil.
9933 * nsfns.m (ns_implicitly_set_icon_type): Use EQ to compare Lisp_Objects.
9934 * menu.h (find_and_call_menu_selection):
9935 * menu.c (find_and_call_menu_selection): Use just int for vector size.
9936 (find_and_return_menu_selection): Always return something.
9937 * frame.h: Include dispextern.h for Display_Info.
9938 (display_x_get_resource): Declare.
9939
9940 2008-07-16 Adrian Robert <Adrian.B.Robert@gmail.com>
9941
9942 * syntax.c: Remove stdio.h include accidentally introduced in
9943 Emacs.app commit.
9944 * Makefile.in: Change GNUSTEP to NS_IMPL_GNUSTEP, COCOA to
9945 NS_IMPL_COCOA.
9946 * keyboard.c (handle_async_input, input_available_signal): Remove
9947 BSD4_1 conditional code, introduced accidentally in Emacs.app commit.
9948
9949 2008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
9950
9951 * nsterm.m (lisp_to_mod): Use parse_solitary_modifier instead.
9952 (ns_lisp_to_color): Don't mess with internal Lisp data fields.
9953 (ns_term_init, ns_term_shutdown, initFrameFromEmacs, ns_list_fonts):
9954 Use SDATA.
9955
9956 * keymap.c: Remove all NS-specific code.
9957 (where_is_preferred_modifier, Vwhere_is_preferred_modifier): New vars.
9958 (preferred_sequence_p): Rename from ascii_sequence_p; pay attention to
9959 where_is_preferred_modifier, return a different value depending on how
9960 preferred is the binding.
9961 (where_is_internal): Adjust accordingly.
9962 (Fwhere_is_internal): Refresh where_is_preferred_modifier.
9963 Adjust to new preferred_sequence_p.
9964 (syms_of_keymap): Declare `where-is-preferred-modifier'.
9965 * keyboard.c (parse_solitary_modifier): Not static any more.
9966 * keyboard.h (parse_solitary_modifier): Declare.
9967
9968 2008-07-16 Andreas Schwab <schwab@suse.de>
9969
9970 * Makefile.in (SOME_MACHINE_LISP): Remove easy-mmode, fix spelling
9971 of easymenu.
9972
9973 2008-07-16 Chong Yidong <cyd@stupidchicken.com>
9974
9975 * xdisp.c (move_it_in_display_line): Account for word wrap, so
9976 that we don't move off the line.
9977
9978 2008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
9979
9980 * keyboard.c (Qsuper): Remove.
9981 (parse_menu_item): Don't call where_is_internal specially for NS.
9982
9983 2008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
9984
9985 * s/gnu-linux.h: Remove boilerplate comments.
9986
9987 * m/alpha.h (__ELF__): Consolidate conditions.
9988
9989 * m/m68k.h (linux): Use GNU_LINUX instead.
9990 Remove boilerplate comments.
9991
9992 * m/intel386.h: Undo refactoring from previous change.
9993 (LIB_STANDARD): All systems that define USG define LIB_STANDARD
9994 too, remove dead code.
9995 (linux): Use GNU_LINUX instead.
9996
9997 2008-07-16 Jason Rumney <jasonr@gnu.org>
9998
9999 * w32gui.h: Repeat 26 June changes lost by last change.
10000
10001 2008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
10002
10003 * systty.h: Remove code for Aix on 386, unsupported platform.
10004
10005 * s/ms-w32.h: Remove boilerplate comments.
10006 (fcloseall, fgetchar, flushall, fputchar, getw, putw): Remove, unused.
10007
10008 * s/gnu-linux.h (TERM): Remove support.
10009 (HAVE_SYSVIPC): Remove, unused.
10010 (A_TEXT_OFFSET, A_TEXT_SEEK, ADJUST_EXEC_HEADER): Remove, not used
10011 for this system.
10012
10013 * process.c: Remove support for IRIS, unused.
10014 Remove support for TERM, not relevant anymore.
10015
10016 * unexalpha.c (DEFAULT_ENTRY_ADDRESS): Remove, replace the only
10017 used with the definition.
10018
10019 * s/aix4-2.h (static): Do not undef.
10020
10021 * m/ibmrs6000.h: Remove code depending on USG5_4, this file is
10022 only used on Aix.
10023 (HAVE_SYSVIPC): Remove, unused.
10024
10025 * m/hp800.h (CANNOT_DUMP): Do not undef.
10026
10027 * m/alpha.h: Fix comment.
10028
10029 * s/usg5-4.h (HAVE_SYSVIPC): Remove, unused.
10030 (USG_SHARED_LIBRARIES): Remove, only used in unexec.c which is not
10031 used by this configuration.
10032 * emacs.c: Remove code depending on USG_SHARED_LIBRARIES.
10033 * unexec.c: Remove code depending on HPUX and
10034 USG_SHARED_LIBRARIES, not used with this file. Remove code
10035 depending on IRIS, unused. Remove if 0-ed code.
10036
10037 * s/template.h: Remove comments about static.
10038
10039 * sysdep.c: Remove code depending on NEED_PTEM_H, unused.
10040 Remove if 0-ed code.
10041 (baud_convert): Don't depend on BAUD_CONVERT, all definitions the
10042 were the same as the default.
10043 * s/vms.h (BAUD_CONVERT): Remove, same as the default.
10044 Remove boilerplate comments.
10045 * s/hpux10-20.h (BAUD_CONVERT): Remove, same as the default.
10046 (HAVE_SYSVIPC): Remove, unused.
10047 (LD_SWITCH_SYSTEM_TEMACS): Simplify, hp9000s700 not supported anymore.
10048
10049 * m/ia64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
10050 Remove boilerplate comments.
10051 * m/amdx86-64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
10052 Remove boilerplate comments.
10053 * m/ibms390x.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
10054 Remove boilerplate comments.
10055 * lisp.h (PNTR_COMPARISON_TYPE): Define it unconditionally.
10056
10057 * m/intel386.h (DATA_SEG_BITS): Remove definitions, only used on
10058 USG systems which do not use DATA_SEG_BITS.
10059 Refactor code. Remove boilerplate comments.
10060
10061 * m/ibms390.h:
10062 * m/m68k.h:
10063 * s/bsd-common.h:
10064 * s/cygwin.h:
10065 * s/darwin.h:
10066 * s/freebsd.h:
10067 * s/gnu.h:
10068 * s/msdos.h: Remove boilerplate comments.
10069
10070 * m/iris4d.h: Remove boilerplate comments and code for systems that
10071 do not use this file.
10072 (IRIS_4D): Remove, unused.
10073
10074 * m/mips.h: Remove boilerplate comments and code for systems that
10075 do not use this file.
10076 (SIGN_EXTEND_CHAR):
10077 * m/arm.h (SIGN_EXTEND_CHAR): Remove, unused.
10078 * unexmips.c: Remove file, unused.
10079
10080 * editfns.c (Fuser_full_name): Replace the only use of
10081 USER_FULL_NAME with its value.
10082 * config.in: Regenerate.
10083
10084 2008-07-16 David Reitter <david.reitter@gmail.com>
10085
10086 * Makefile.in: Add ns-win, ns-carbon-compat, easy-mmode and
10087 easy-menu to SOME_MACHINE_LISP for the new NeXTstep port.
10088
10089 2008-07-16 Glenn Morris <rgm@gnu.org>
10090
10091 * emacs.c (system-type): Doc fix.
10092
10093 2008-07-15 Stefan Monnier <monnier@iro.umontreal.ca>
10094
10095 * keyboard.c (parse_menu_item): Don't use cachelist, even under NS.
10096 If the cache doesn't work, let's fix it, rather than work around it.
10097
10098 2008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
10099
10100 * Makefile.in: Correct additions for nsfont.o in last commit.
10101 * nsfont.m: New file (forgot last commit).
10102
10103 2008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
10104
10105 * callproc.c (set_initial_environment): Initialize
10106 Vprocess_environment under CANNOT_DUMP (fixes crash when
10107 batch-compiling for bootstrap).
10108
10109 2008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
10110 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10111
10112 (make_initial_frame): Call init_frame_faces(f) in CANNOT_DUMP case --
10113 fix crash due to different init order.
10114
10115 2008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
10116
10117 Changes and additions for NeXTstep windowing system (Cocoa and
10118 GNUstep) support.
10119
10120 * Makefile.in:
10121 * config.in: Support defines and build commands for NS port.
10122 * blockinput.h (BLOCK_INPUT, UNBLOCK_INPUT, TOTALLY_UNBLOCK_INPUT)
10123 (UNBLOCK_INPUT_TO): Don't use under NS unless EXPERIMENTAL_CONTROL_G.
10124 * dispextern.h: Include nsgui.h and add needed typedefs under NS
10125 windowing.
10126 (struct face): Add synth_ital field.
10127 * dispnew.c: Include nsterm.h when compiling under NS windowing.
10128 (init_display): Initialize Vinitial_window_system to "ns" when so
10129 compiled.
10130 * emacs.c: Include GSConfig.h when compiling under GNUstep.
10131 (display_arg): Use under NS.
10132 (main): Under NS, allocate autorelease pool and handle command line
10133 args. Move syms_of_xmenu() call under #ifdef HAVE_X_WINDOWS.
10134 (standard_args): Add NS-specific args.
10135 (shut_down_emacs): Shut down NS terminal if compiled under NS.
10136 * font.c (DEFAULT_ENCODING): New variable.
10137 (font_find_for_lface): Use it.
10138 (syms_of_font): Load syms_of_nsfont under NS.
10139 * font.h: Declare nsfont_driver when compiled under NS.
10140 * fontset.c: When compiling under NS, include nsterm.h.
10141 (fontset_from_font): Autoconstruct fontset under NS.
10142 * frame.c (various): Under NS, include nsterm.h, add Qns window system
10143 symbol, document and use it.
10144 (do_switch_frame): When for_deletion under Cocoa, add
10145 Fraise_frame(Qnil).
10146 (x_set_frame_parameters): Ensure font attribute changes are picked up.
10147 (x_get_arg): Allow "yes" and "no" as boolean values.
10148 (syms_of_frame): Declare Qns. Init Vdefault_frame_scroll_bars to
10149 Qright under Cocoa.
10150 (focus-follows-mouse): Default to 0 under NS.
10151 * frame.h (enum output_method): Add output_ns.
10152 (external_tool_bar, external_menu_bar, FRAME_EXTERNAL_TOOLBAR)
10153 (FRAME_EXTERNAL_MENU_BAR): Use under NS.
10154 (FRAME_WINDOW_P): NS-specific definition.
10155 * fringe.c (max_used_fringe_bitmap): Make public.
10156 * getloadavg.c (mach/mach.h): Include it under NeXT descendant OS's.
10157 (getloadavg): Use NeXT code under descendant OS's.
10158 * image.c (includes and header section, x_create_bitmap_from_data)
10159 (x_create_bitmap_from_file, free_bitmap_record, image_background)
10160 (image_background_transparent, x_clear_image_1)
10161 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
10162 (Create_Pixmap_From_Bitmap_Data, xpm_load_image, lookup_rgb_color)
10163 (x_to_xcolors, x_from_xcolors, x_disable_image)
10164 (x_build_heuristic_mask, syms_of_image): Add NS support parallel to
10165 other GUIs, including XPM support using code originally written for
10166 Carbon GUI.
10167 (png_load, jpeg_load, tiff_load, gif_load): Add implementations
10168 using NS API.
10169 (image_ascent): Use font metrics macros instead of direct struct field
10170 access.
10171 * keyboard.c (includes): Add nsterm.h when compiling under NS.
10172 (kbd_buffer_get_event): Handle NS as other GUI windowing systems.
10173 Also, handle NS as GTK for menu bar purposes.
10174 (make_lispy_event): Handle NS as other GUI windowing systems, and as X
10175 toolkit where they differ.
10176 (parse_menu_item): Prefer keybindings using 'super' modifier. Also,
10177 use cachelist, still needed under NS.
10178 * keyboard.h (ENCODE_MENU_STRING, XtPointer, Boolean): Handle as NTGUI.
10179 (struct widget_value): Define it here for menu.c.
10180 * keymap.c (includes): Include modifier internals.
10181 (lisp_to_mod, modifier_sequence_p): New functions, compiled only under
10182 NS.
10183 (where_is_internal, Fwhere_is_internal): When compiled under NS, add
10184 support for preferring sequences using certain modifiers, specified by
10185 the FIRSTONLY argument.
10186 * lisp.h (hash_remove): Rename to avoid name clash when compiling
10187 under NS GNUstep implementation.
10188 (USE_LSB_TAG): Use it under Cocoa when compiling under NS.
10189 * lread.c (init_lread): Treat NS as HAVE_CARBON for turn_off_warning.
10190 * menu.c: Include nsterm.h under NS.
10191 (single_menu_item, parse_single_submenu, xmalloc_widget_value)
10192 (free_menubar_widget_tree_value, update_submenu_strings)
10193 (find_and_call_menu_selection): Treat NS as X and NT.
10194 (find_and_return_menu_selection): New function, used for popup menus.
10195 * nsgui.h:
10196 * nsterm.h:
10197 * nsfns.m:
10198 * nsimage.m:
10199 * nsmenu.m:
10200 * nsselect.m:
10201 * nsterm.m: New files.
10202 * process.c (wait_reading_process_output): Under NS, call ns_select()
10203 instead of plain select().
10204 * syntax.c (char_quoted): Under NS, avoid a crash when called near
10205 beginning of buffer.
10206 * sysselect.h (init_process): Rename when compiling under Cocoa to
10207 avoid name conflict.
10208 * termhooks.h (display_info): Add ns_display_info to union.
10209 * terminal.c (Fterminal_live_p): Add ns to terminal types.
10210 * terminfo.c (UP, BC, PC): Don't declare when compiling under NS in
10211 COCOA environment.
10212 * unexnext.c: Update to work with mach API on Mac OS X, and to use new
10213 unexec() signature. (Note, this will dump, but the resulting file
10214 crashes; unexosx is used instead; keeping around for reference and
10215 possible aid in getting dump working under GNUstep.)
10216 * w32gui.h (button_type, widget_value): Remove definitions (now in
10217 keyboard.h).
10218 * window.c: Include nsterm.h when compiling under NS.
10219 * xdisp.c (includes): Include nsterm.h when compiling under NS.
10220 (set_frame_menubar, update_menu_bar, display_menu_bar): Handle NS as
10221 other GUI windowing systems.
10222 (update_tool_bar, redisplay_tool_bar, redisplay_window): Handle NS as
10223 GTK.
10224 (x_consider_frame_title): Under NS, set icon type and frame
10225 modified-state indicator; use ns_set_name_as_filename() when using
10226 formatted title.
10227 (update_window_cursor): Make public when compiling under NS.
10228 (display_hourglass_p, syms_of_xdisp, hourglass_shown_p)
10229 (hourglass_atimer, Vhourglass_delay
10230 * xfaces.c (header section, init_frame_faces, clear_font_table)
10231 (defined_color, unload_color, x_face_list_fonts)
10232 (prepare_face_for_display): Add NS support parallel to other GUIs.
10233 Emulate GCs like other non-X GUIs.
10234 (split_font_name): Don't lowercase font name under NS.
10235 (merge_face_ref, Finternal_set_lisp_face_attribute): Support stippling
10236 under NS.
10237 * s/darwin.h: Add support for compilation under NS.
10238
10239 2008-07-15 Jason Rumney <jasonr@gnu.org>
10240
10241 * w32fns.c (Fx_create_frame): Remove duplicate unwind_protect.
10242 (w32_show_hourglass): Rename from show_hourglass.
10243 (w32_hide_hourglass): Rename from hide_hourglass.
10244 (DEFAULT_HOURGLASS_DELAY): Revert from last change.
10245 (Vhourglass_delay): Declare extern.
10246 (hourglass_started): Remove.
10247
10248 * xdisp.c (Vhourglass_delay): Remove static.
10249 (hourglass_started, start_hourglass, cancel_hourglass):
10250 Don't include these versions on WINDOWSNT.
10251
10252 2008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
10253
10254 * dispextern.h (hourglass_shown_p, hourglass_atimer): New extern
10255 variables (formerly in xfns.c).
10256 (show_hourglass, hide_hourglass): New prototypes (same).
10257 * xdisp.c (display_hourglass_p, hourglass_shown_p, hourglass_atimer)
10258 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY): New variables (formerly
10259 in xfns.c).
10260 (syms_of_xdisp): Declare/initialize display-hourglass,
10261 hourglass-delay. Initialize hourglass_atimer, hourglass_shown_p.
10262 (hourglass_started, start_hourglass, cancel_hourglass): New functions,
10263 formerly in xfns.c.
10264 * xfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
10265 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
10266 (start_hourglass, cancel_hourglass): Remove.
10267 (show_hourglass, hide_hourglass): Remove prototypes and static
10268 modifiers.
10269 (syms_of_xfns): Remove display-hourglass, hourglass-delay,
10270 hourglass_atimer, hourglass_shown_p declaration/initialization.
10271 * macfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
10272 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
10273 (start_hourglass, cancel_hourglass): Remove.
10274 (show_hourglass, hide_hourglass): Remove prototypes and static
10275 modifiers.
10276 (syms_of_macfns): Remove display-hourglass, hourglass-delay,
10277 hourglass_atimer, hourglass_shown_p declaration/initialization.
10278 * w32fns.c (display_hourglass_p, Vhourglass_delay)
10279 (DEFAULT_HOURGLASS_DELAY): Remove.
10280 (syms_of_w32fns): Remove display-hourglass, hourglass-delay,
10281 hourglass_shown_p declaration/initialization.
10282
10283 2008-07-14 Jason Rumney <jasonr@gnu.org>
10284
10285 * w32fns.c (w32_get_arg): Remove wrapper function.
10286 (w32_createwindow, x_icon, x_create_tip_frame): Use x_get_arg
10287 directly.
10288 (Fx_create_frame): Sync with xfns.c. Use x_get_arg directly.
10289
10290 2008-07-14 Kenichi Handa <handa@m17n.org>
10291
10292 * xfont.c (xfont_open): Add workaround for X's bug.
10293
10294 2008-07-14 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
10295
10296 * fontset.c: Include <stdio.h> unconditionally.
10297
10298 2008-07-13 Michael Albinus <michael.albinus@gmx.de>
10299
10300 * dbusbind.c (Fdbus_register_signal): Allow also signal arguments
10301 for filtering.
10302
10303 2008-07-13 Dan Nicolaescu <dann@ics.uci.edu>
10304
10305 * s/vms.h: Use __GNUC__ instead of _GNUC_.
10306
10307 * m/macppc.h:
10308 * m/alpha.h: Use GNU_LINUX instead of LINUX. Reorganize conditionals.
10309
10310 * m/ibms390x.h (XINT, XUINT): Don't define, same as the default
10311 (SPECIAL_EMACS_INT):
10312 * m/ia64.h (SPECIAL_EMACS_INT):
10313 * m/amdx86-64.h (SPECIAL_EMACS_INT):
10314 * s/gnu.h (NLIST_STRUCT):
10315 * s/aix4-2.h (X11R5_INHIBIT_I18N):
10316 * s/gnu-linux.h (LINUX):
10317 * s/msdos.h (HAVE_FACES):
10318 * s/ms-w32.h (HAVE_FACES): Don't define, unused.
10319
10320 * systty.h:
10321 * sysdep.c (setup_pty): Don't depend on SYSV_PTYS, it is not used
10322 anymore.
10323
10324 2008-07-12 Dan Nicolaescu <dann@ics.uci.edu>
10325
10326 * syswait.h: Remove old if 0 code. Do not define WAITTYPE, it was
10327 always defined as int.
10328
10329 * s/netbsd.h (HAVE_UNION_WAIT, HAVE_WAIT_HEADER, WAIT_USE_INT):
10330 * s/gnu.h (HAVE_WAIT_HEADER, WAIT_USE_INT, HAVE_UNION_WAIT):
10331 * s/gnu-linux.h (HAVE_WAIT_HEADER):
10332 * s/freebsd.h (HAVE_WAIT_HEADER):
10333 * s/bsd-common.h (HAVE_UNION_WAIT):
10334 * s/aix4-2.h (HAVE_WAIT_HEADER):
10335 * m/mips.h (HAVE_UNION_WAIT):
10336 * s/usg5-4.h (HAVE_WAIT_HEADER, WAITTYPE): Do not define, not used.
10337 (COFF, static): Do not define, they are undefined later in the file.
10338
10339 * process.c (update_status): Don't use a union.
10340 (status_convert):
10341 (sigchld_handler): Use int instead of WAITTYPE.
10342
10343 2008-07-12 Chong Yidong <cyd@stupidchicken.com>
10344
10345 * indent.c (Fvertical_motion): Restore hscroll before moving to
10346 goal column.
10347
10348 2008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
10349
10350 * lisp.h: Remove left over code.
10351
10352 2008-07-11 Andreas Schwab <schwab@suse.de>
10353
10354 * lisp.h: Fix logic in last change.
10355
10356 * menu.h: New file.
10357 * menu.c: Include it.
10358 * xmenu.c: Likewise.
10359 * Makefile.in: Update dependencies.
10360
10361 2008-07-11 Kenichi Handa <handa@m17n.org>
10362
10363 * fontset.c (fontset_from_font): Cancel the previous change.
10364
10365 2008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
10366
10367 * lisp.h:
10368 * w32heap.c:
10369 * emacs.c:
10370 * alloc.c: Replace all references of NO_UNION_TYPE with
10371 USE_LISP_UNION_TYPE.
10372
10373 * m/xtensa.h (NO_UNION_TYPE):
10374 * m/vax.h (NO_UNION_TYPE):
10375 * m/template.h (NO_UNION_TYPE):
10376 * m/sparc.h (NO_UNION_TYPE):
10377 * m/mips.h (NO_UNION_TYPE):
10378 * m/macppc.h (NO_UNION_TYPE):
10379 * m/m68k.h (NO_UNION_TYPE):
10380 * m/iris4d.h (NO_UNION_TYPE):
10381 * m/intel386.h (NO_UNION_TYPE):
10382 * m/ibms390x.h (NO_UNION_TYPE):
10383 * m/ibms390.h (NO_UNION_TYPE):
10384 * m/ibmrs6000.h (NO_UNION_TYPE):
10385 * m/ia64.h (NO_UNION_TYPE):
10386 * m/hp800.h (NO_UNION_TYPE):
10387 * m/arm.h (NO_UNION_TYPE):
10388 * m/amdx86-64.h (NO_UNION_TYPE):
10389 * m/alpha.h (NO_UNION_TYPE): Remove definition, all platform were
10390 defining it the same.
10391
10392 2008-07-10 Chong Yidong <cyd@stupidchicken.com>
10393
10394 * xdisp.c (move_it_to): Backtrack if past the edge of a wrapped line.
10395
10396 2008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
10397
10398 * fileio.c:
10399 * sysdep.c:
10400 * systty.h:
10401 * m/ibmrs6000.h:
10402 * m/iris4d.h:
10403 * s/aix4-2.h:
10404 * s/freebsd.h:
10405 * s/gnu-linux.h:
10406 * s/hpux10-20.h:
10407 * s/hpux11.h:
10408 * s/netbsd.h:
10409 * s/sol2-3.h:
10410 * s/sol2-4.h:
10411 * s/sol2.h:
10412 * s/usg5-4.h:
10413 * s/vms.h: Remove references to unused variables.
10414
10415 2008-07-10 Andreas Schwab <schwab@suse.de>
10416
10417 * ftfont.c (ftfont_resolve_generic_family): Remove foundry from
10418 pattern before matching the generic family.
10419
10420 2008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
10421
10422 * unexec.c:
10423 * s/vms.h:
10424 * s/usg5-4-2.h:
10425 * s/sol2-5.h:
10426 * s/freebsd.h:
10427 * s/darwin.h: Remove dead code.
10428
10429 * m/template.h:
10430 * m/sparc.h:
10431 * m/mips.h:
10432 * m/m68k.h:
10433 * m/iris4d.h:
10434 * m/intel386.h:
10435 * m/ibms390x.h:
10436 * m/ibms390.h:
10437 * m/ia64.h:
10438 * m/hp800.h:
10439 * m/arm.h:
10440 * m/amdx86-64.h: Remove dead code and references to unused
10441 and compiler defined symbols.
10442
10443 * unexmips.c:
10444 * unexelf.c: Remove references to desupported systems.
10445
10446 * m/powermac.h: Remove file, it is now identical to m/macppc.h.
10447
10448 * m/powermac.h: Remove boilerplate comments.
10449 (NO_REMAP): Remove unused definition.
10450
10451 * m/macppc.h (UNEXEC, NO_TERMIO): Don't define, the s/ files
10452 define them.
10453
10454 2008-07-10 Kenichi Handa <handa@m17n.org>
10455
10456 * xfont.c (xfont_open): Log the reason of failure.
10457
10458 2008-07-09 Stefan Monnier <monnier@iro.umontreal.ca>
10459
10460 * fontset.c (fontset_get_font_group):
10461 * font.c (font_check_otf): Specify argument types.
10462
10463 2008-07-09 Kenichi Handa <handa@m17n.org>
10464
10465 * coding.c (detect_coding_utf_8): Set detect_info->found only when
10466 non-ASCII char is found.
10467
10468 * fontset.c (fontset_compare_rfontdef): Fix plus/minus.
10469 (reorder_font_vector): Change the arg preferred_family to font.
10470 Prefer the spec matching with font.
10471 (fontset_get_font_group): New function.
10472 (fontset_find_font): Change the format of an element of a realized
10473 fontset. Use fontset_get_font_group.
10474 (fontset_font): Try the current fontset, the default fontset, the
10475 fallbacks of the current fontset, and the fallbacks of the default
10476 fontset in this order.
10477 (face_for_char): Delete the shortcut to use the current font.
10478 (fontset_from_font): Don't set fonts for Latin in the fontset.
10479
10480 * font.h (font_make_object, font_match_p): Adjust prototypes.
10481
10482 * ftfont.h [FT_BDF_H]: Include FT_BDF_H.
10483
10484 * font.c (font_make_object): New arg entity and pixelsize.
10485 (font_check_otf_features, font_check_otf): New functions.
10486 (font_match_p): Check :lang, :script, and :otf properties.
10487
10488 * xfont.c (xfont_open): Adjust it for the change of
10489 font_make_object.
10490 (xfont_text_extents): Fix initial setting of metrics.
10491
10492 * ftfont.c (struct ftfont_info): New member index, delete member
10493 fc_charset_idx. Make the member order compatible with struct
10494 xftfont_info.
10495 (fc_charset_table): Change charset names to registry names.
10496 (ftfont_pattern_entity): Delete the args registry and
10497 fc_charset_idx. Change the value of :font-entity property
10498 to (FONTNAME . INDEX). Always set :registry property to
10499 `iso10646-1'.
10500 (struct ftfont_cache_data): New struct.
10501 (ftfont_lookup_cache): New arg for_face.
10502 (ftfont_get_fc_charset, ftfont_get_otf): New functions.
10503 (ftfont_driver): Set the member otf_capability.
10504 (ftfont_get_charset): Adjust it for the change of
10505 fc_charset_table.
10506 (OTF_TAG_SYM): New macro.
10507 (ftfont_spec_pattern): Delete the arg fc_charset_idx. Adjust it
10508 for the change of fc_charset_table.
10509 (ftfont_list): Adjust it for the change of ftfont_spec_pattern and
10510 ftfont_pattern_entity. Add FC_INDEX to objset.
10511 (ftfont_match): Adjust it for the change of ftfont_spec_pattern
10512 and ftfont_pattern_entity.
10513 (ftfont_open): Adjust it for the change of ftfont_lookup_cache,
10514 font_make_object, struct ftfont_info.
10515 (ftfont_has_char): Use ftfont_get_fc_charset.
10516 (ftfont_otf_features, ftfont_otf_capability): New functions.
10517 (ftfont_shape): Use ftfont_get_otf.
10518 (ftfont_text_extents): Fix initial setting of metrics.
10519
10520 * xftfont.c (struct xftfont_info): New member ft_size. Make the
10521 member order compatible with struct ftfont_info.
10522 (xftfont_open): Add FC_CHARSET to the pattern. Set
10523 xftfont_info->ft_size. Don't unlock the face. Check BDF
10524 properties if appropriate.
10525 (xftfont_close): Unlock the face.
10526 (xftfont_anchor_point, xftfont_shape): Deleted.
10527 (syms_of_xftfont): Don't set members anchor_point and shape of
10528 xftfont_driver.
10529
10530 * w32uniscribe.c (uniscribe_open): Adjust it for the change of
10531 font_make_object.
10532
10533 * w32font.c (w32font_open): Adjust it for the change of
10534 font_make_object.
10535 (w32font_open_internal): Don't set properties of font_object here.
10536
10537 2008-07-08 Chong Yidong <cyd@stupidchicken.com>
10538
10539 * macfns.c (x_create_tip_frame):
10540 * w32fns.c (x_create_tip_frame):
10541 * xfns.c (x_create_tip_frame): Pass parameter argument to
10542 face-set-after-frame-default.
10543
10544 * xfaces.c (Finternal_merge_in_global_face): Save merged
10545 attributes for the default face back into the face vector.
10546
10547 2008-07-08 Andreas Schwab <schwab@suse.de>
10548
10549 * fontset.h: Declare fontset_from_font. Don't declare
10550 new_fontset_from_font and fontset_from_font_name.
10551 * xterm.c: Include "fontset.h".
10552 * Makefile.in (xterm.o): Update dependencies.
10553
10554 2008-07-08 Glenn Morris <rgm@gnu.org>
10555
10556 * m/sparc.h: Define __sparc__ rather than sparc. (Bug#507.)
10557 * alloc.c, ecrt0.c: Use __sparc__ rather than sparc.
10558
10559 2008-07-07 Chong Yidong <cyd@stupidchicken.com>
10560
10561 * frame.c (Qinhibit_face_set_after_frame_default): Var deleted.
10562 (x_set_frame_parameters): Don't bind it.
10563
10564 2008-07-07 Juanma Barranquero <lekktu@gmail.com>
10565
10566 * w32fns.c (map_w32_filename): Declare extern.
10567
10568 2008-07-07 Jason Rumney <jasonr@gnu.org>
10569
10570 * w32term.c (WS_EX_LAYERED): Define if not already.
10571
10572 2008-07-06 Chong Yidong <cyd@stupidchicken.com>
10573
10574 * xfaces.c (set_font_frame_param): Don't try to set the font
10575 parameter if it is still unspecified in the lface.
10576
10577 2008-07-05 Chong Yidong <cyd@stupidchicken.com>
10578
10579 * xfaces.c (Finternal_merge_in_global_face): Don't realize default
10580 face if it didn't already exist.
10581
10582 * xdisp.c (try_window_id): Give up if word-wrapping is on.
10583
10584 2008-07-05 Andreas Schwab <schwab@suse.de>
10585
10586 * xdisp.c (get_it_property): Move out of HAVE_WINDOW_SYSTEM section.
10587
10588 2008-07-05 Chong Yidong <cyd@stupidchicken.com>
10589
10590 * xdisp.c (IT_OVERFLOW_NEWLINE_INTO_FRINGE): Turn it off if
10591 word-wrapping.
10592 (IT_DISPLAYING_WHITESPACE): New macro.
10593 (move_it_in_display_line_to): Handle MOVE_TO_X requests properly
10594 when word-wrapping. Simplify word-wrapping logic. Use correct
10595 pixel positions when saving copies of the iterator.
10596 (display_line): Use proper wrap point if the last character on a
10597 line was preceded by whitespace.
10598
10599 2008-07-04 Stefan Monnier <monnier@iro.umontreal.ca>
10600
10601 * Makefile.in (${etc}DOC): Depend on ${lisp} rather than ${shortlisp}.
10602
10603 2008-07-04 Kenichi Handa <handa@m17n.org>
10604
10605 * fns.c (Fstring_to_unibyte): Delete the arg ACCEPT-LATIN-1.
10606
10607 * lisp.h: EXFUN adjusted for the change of Fstring_to_unibyte.
10608
10609 2008-07-02 Jason Rumney <jasonr@gnu.org>
10610
10611 * xfns.c (syms_of_xfns): Only define x-select-font when both
10612 HAVE_FREETYPE and USE_GTK.
10613
10614 * xdisp.c (next_element_from_display_vector): Move assignment out
10615 of if statement.
10616
10617 2008-07-02 Toru Tsuneyoshi <t_tuneyosi@hotmail.com>
10618
10619 * lisp.h (Qdelete_file, Qdelete_directory): Declare extern.
10620
10621 * fileio.c (delete_by_moving_to_trash, Qmove_file_to_trash): New vars.
10622 (syms_of_fileio): Initialize and export them.
10623 (Fdelete_directory, Fdelete_file): Optionally delete via trash.
10624
10625 * w32fns.c (FOF_NO_CONNECTED_ELEMENTS): Define if not already.
10626 (Fsystem_move_file_to_trash): New function.
10627 (syms_of_w32fns): Export it to lisp.
10628
10629 2008-07-01 Jason Rumney <jasonr@gnu.org>
10630
10631 * w32font.c (w32font_text_extents): Don't count overhang as part
10632 of width.
10633
10634 2008-06-30 Miles Bader <miles@gnu.org>
10635
10636 * dispextern.h (struct glyph, struct it, struct iterator_stack_entry):
10637 Add `avoid_cursor_p' field.
10638
10639 * xdisp.c (push_it, pop_it): Save/restore avoid_cursor_p field.
10640 (set_cursor_from_row): Skip glyphs with avoid_cursor_p set.
10641 (append_glyph, append_composite_glyph, produce_image_glyph)
10642 (append_stretch_glyph): Initialize avoid_cursor_p.
10643 (get_it_property): Rename from `get_line_height_property'.
10644 (x_produce_glyphs): Use get_it_property.
10645 (handle_line_prefix, push_display_prop): New functions.
10646 (display_line, move_it_in_display_line_to): Handle line/wrap prefixes.
10647 (Vwrap_prefix, Qwrap_prefix, Vline_prefix, Qline_prefix):
10648 New variables.
10649 (syms_of_xdisp): Initialize them.
10650
10651 2008-06-30 Kenichi Handa <handa@m17n.org>
10652
10653 * xftfont.c (xftfont_open): Don't call FcConfigSubstitute and
10654 XftDefaultSubstitute (they are called in XftFontMatch).
10655 (xftfont_open): Fix args to ftfont_font_format.
10656
10657 * ftfont.c (fc_charset_table): New member lang.
10658 (ftfont_resolve_generic_family): New arg pattern.
10659 (ftfont_spec_pattern): Check fc_charset_table[]->lang.
10660 (ftfont_list): Call ftfont_resolve_generic_family with `pattern'.
10661 (ftfont_open): Fix args to ftfont_font_format.
10662 (ftfont_font_format): New arg filename.
10663
10664 2008-06-30 Chong Yidong <cyd@stupidchicken.com>
10665
10666 * xfaces.c (Finternal_merge_in_global_face): If default face was
10667 modified, realize it again. Update the font face attribute.
10668
10669 2008-06-29 Jason Rumney <jasonr@gnu.org>
10670
10671 * w32term.c (x_set_frame_alpha): Fix logic.
10672
10673 2008-06-29 Kenichi Handa <handa@m17n.org>
10674
10675 * fontset.c (Finternal_char_font): Return font-object instead of
10676 font-name.
10677
10678 * composite.c (get_composition_id): Fix the width calculation for TAB.
10679
10680 2008-06-29 Stefan Monnier <monnier@iro.umontreal.ca>
10681
10682 * indent.c (Fvertical_motion): Properly handle float column arg.
10683
10684 2008-06-28 Jason Rumney <jasonr@gnu.org>
10685
10686 * w32term.c (pfnGetFontUnicodeRanges): Remove unused function pointer.
10687 (pfnSetLayeredWindowAttributes): New function pointer.
10688 (w32_initialize): Initialize it when supported.
10689 (x_set_frame_alpha): New function.
10690
10691 * w32fns.c (Fx_create_frame): Initialize frame parameter `alpha'.
10692 (w32_frame_parm_handlers): Set alpha handler.
10693
10694 * frame.c (x_set_alpha) [HAVE_NTGUI]: Call x_set_frame_alpha.
10695
10696 2008-06-27 Jason Rumney <jasonr@gnu.org>
10697
10698 * w32fns.c (x_to_w32_font, w32_to_x_font, x_to_w32_weight)
10699 (w32_to_x_weight, w32_to_all_x_charsets): Remove obsolete functions.
10700 (w32_to_x_charset, x_to_w32_charset)
10701 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
10702 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
10703 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
10704 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
10705 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
10706 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
10707 (Qw32_charset_mac, Vw32_charset_info_alist): Move to w32font.c.
10708 (Qw32_charset_unicode): Remove.
10709 (syms_of_w32fns): Update for above changes.
10710
10711 * w32font.c (w32_to_x_charset, x_to_w32_charset)
10712 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
10713 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
10714 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
10715 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
10716 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
10717 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
10718 (Qw32_charset_mac, Vw32_charset_info_alist): Move from w32fns.c.
10719 (syms_of_w32font): Update for above changes.
10720
10721 2008-06-27 Dan Nicolaescu <dann@ics.uci.edu>
10722
10723 * s/usg5-4.h: Fix previous change: keep the correct branch of a
10724 removed #if.
10725 (USG_SHARED_LIBRARIES): Remove duplicate definition.
10726
10727 2008-06-26 Juanma Barranquero <lekktu@gmail.com>
10728 Eli Zaretskii <eliz@gnu.org>
10729
10730 * makefile.w32-in (LOCAL_FLAGS):
10731 Don't include WINDOWSNT, DOS_NT and _UCHAR_T.
10732
10733 * sysdep.c (_spawnlp, _getpid):
10734 Declare with explicit _cdecl instead of _CRTAPI1.
10735
10736 * editfns.c (Fget_internal_run_time):
10737 Check for WINDOWSNT with #ifdef, not #if.
10738
10739 2008-06-26 Jason Rumney <jasonr@gnu.org>
10740
10741 * w32font.h (FONT_HANDLE, FONT_TEXTMETRIC): New macros.
10742
10743 * w32term.c (x_draw_glyph_string_foreground)
10744 (x_draw_composite_glyph_string_foreground): Sync with xterm.c.
10745 Use FONT_HANDLE macro.
10746 (x_draw_glyph_string): Use FONT_TEXTMETRIC macro.
10747
10748 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
10749 (uniscribe_encode_char): Use FONT_HANDLE macro.
10750
10751 * w32font.c (Fx_select_font): Use FONT_HANDLE macro.
10752 (w32font_text_extents): Use precast w32_font.
10753 (w32font_close): Free cached metrics.
10754 (w32font_open_internal): Allocate space for name on stack.
10755
10756 2008-06-26 Chong Yidong <cyd@stupidchicken.com>
10757
10758 * xdisp.c (extend_face_to_end_of_line): Fix last change.
10759
10760 2008-06-26 Jason Rumney <jasonr@gnu.org>
10761
10762 * w32term.h (FONT_AVG_WIDTH): Remove obsolete macro.
10763 (CP_8BIT, CP_UNICODE, CP_UNKNOWN): Remove obsolete constants.
10764
10765 2008-06-26 Juanma Barranquero <lekktu@gmail.com>
10766
10767 * Makefile.in (SOME_MACHINE_OBJECTS): Remove w32bdf.o.
10768
10769 2008-06-26 Jason Rumney <jasonr@gnu.org>
10770
10771 * w32bdf.c, w32bdf.h: Remove obsolete files.
10772
10773 * makefile.w32-in: Remove refs to w32bdf.h and w32bdf.c.
10774
10775 * w32gui.h: Don't include w32bdf.h.
10776 (XCharStruct, enum w32_char_font_type, W32FontStruct):
10777 Remove obsolete font support.
10778
10779 * w32font.h (struct w32font_info): Remove compat_w32_font.
10780 Add hfont member.
10781 (FONT_COMPAT): Remove obsolete macro.
10782
10783 * w32font.c (w32font_close): Remove compat code. Delete hfont member.
10784 (w32font_encode_char, w32font_text_extents): Use new hfont member.
10785 (w32font_open_internal): Remove compat code. Set new hfont member.
10786 (Fx_select_font): Use new hfont member.
10787
10788 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
10789 (uniscribe_encode_char): Use new hfont member.
10790
10791 * w32term.c (x_draw_glyph_string_foreground)
10792 (x_draw_composite_glyph_string_foreground): Use new hfont member.
10793 (x_draw_glyph_string): Use metrics in w32font_info.
10794
10795 2008-06-26 Kenichi Handa <handa@m17n.org>
10796
10797 * xdisp.c (handle_auto_composed_prop): Fix for the terminal case.
10798
10799 2008-06-26 Dan Nicolaescu <dann@ics.uci.edu>
10800
10801 * unexnext.c:
10802 * m/ews4800.h:
10803 * m/hp9000s300.h:
10804 * m/ibm370aix.h:
10805 * m/mips-siemens.h:
10806 * m/ncr386.h:
10807 * m/next.h:
10808 * m/pmax.h:
10809 * m/powerpcle.h:
10810 * m/tandem-s2.h:
10811 * s/386bsd.h:
10812 * s/bsd386.h:
10813 * s/bsd4-1.h:
10814 * s/bsd4-2.h:
10815 * s/bsdos2-1.h:
10816 * s/bsdos2.h:
10817 * s/bsdos3.h:
10818 * s/bsdos4.h:
10819 * s/nextstep.h:
10820 * s/ultrix4-3.h:
10821 * s/usg5-0.h:
10822 * s/usg5-2-2.h:
10823 * s/usg5-2.h:
10824 * s/usg5-4-3.h:
10825 * s/ux4800.h:
10826 * s/uxpds.h:
10827 * s/uxpv.h: Remove support for obsolete systems.
10828 * s/hpux.h, s/hpux10.h, s/hpux8.h, s/hpux9.h, s/hpux9shr.h:
10829 Remove, insert contents in s/hpux10-20.h.
10830 * s/aix3-1.h, s/aix3-2-5.h, s/aix3-2.h, s/aix4-1.h, s/aix4.h:
10831 Remove, insert contents in s/aix4-2.h.
10832 * s/usg5-3.h: Remove, insert contents in s/usg5-4.h.
10833 * s/bsd4-3.h: Rename to ...
10834 * s/bsd-common.h: ... this.
10835 * data.c:
10836 * doc.c:
10837 * ecrt0.c:
10838 * emacs.c:
10839 * fileio.c:
10840 * floatfns.c:
10841 * keyboard.c:
10842 * mem-limits.h:
10843 * print.c:
10844 * process.c:
10845 * sysdep.c:
10846 * syssignal.h:
10847 * systty.h:
10848 * syswait.h:
10849 * term.c:
10850 * unexec.c:
10851 * unexelf.c:
10852 * unexhp9k800.c:
10853 * m/hp800.h:
10854 * m/ibmrs6000.h:
10855 * m/mips.h:
10856 * m/vax.h:
10857 * s/darwin.h:
10858 * s/freebsd.h:
10859 * s/gnu.h:
10860 * s/ms-w32.h:
10861 * s/msdos.h:
10862 * s/netbsd.h:
10863 * s/template.h: Remove references to obsolete variables.
10864
10865 * Makefile.in: Add dependencies for all unexec files.
10866 (admindir): Remove unused variable.
10867 (UNEXEC_SRC): Remove references.
10868
10869 2008-06-25 Chong Yidong <cyd@stupidchicken.com>
10870
10871 * xfns.c (x_default_font_parameter): If Xft is available, first
10872 try Monospace-12 for the default font.
10873
10874 2008-06-25 Jason Rumney <jasonr@gnu.org>
10875
10876 * xdisp.c (get_glyph_face_and_encoding): Encode invalid glyphs as 0.
10877
10878 2008-06-25 Stefan Monnier <monnier@iro.umontreal.ca>
10879
10880 * bytecode.c (Fbyte_code): Disable debugging code that doesn't compile.
10881
10882 * buffer.c (syms_of_buffer): Remove default-word-wrap.
10883
10884 2008-06-25 Juanma Barranquero <lekktu@gmail.com>
10885
10886 * xdisp.c (syms_of_xdisp) <truncate-partial-width-windows>: Doc fix.
10887 <scroll-conservatively>: Fix typo in docstring.
10888
10889 * xselect.c (Fx_send_client_event): Doc fix.
10890
10891 2008-06-25 Kenichi Handa <handa@m17n.org>
10892
10893 * xfaces.c (Fx_list_fonts): Call Flist_fonts with the arg PREFER.
10894
10895 * font.c (font_parse_fcname): Remove unused variables.
10896 (font_sort_entites): Delete the arg SPEC. Caller changed.
10897 Fix for the case of ! best_only.
10898 (font_delete_unmatched): Check DPI and AVGWIDTH too.
10899
10900 * lisp.h (Fstring_to_unibyte): EXFUN it.
10901
10902 * character.h (str_to_unibyte): Extern it.
10903
10904 * character.c (str_to_unibyte): New function.
10905
10906 * fns.c (Fstring_to_unibyte): New function.
10907 (syms_of_fns): Defsubr it.
10908
10909 2008-06-24 Kenichi Handa <handa@m17n.org>
10910
10911 * font.c (font_score): Even if the PIXEL_SIZE is the same, check
10912 DPI too.
10913 (font_sort_entites): Setup prefer_prop[FONT_DPI_INDEX] too.
10914
10915 2008-06-24 Andreas Schwab <schwab@suse.de>
10916
10917 * Makefile.in (${lispsource}loaddefs.el): Rename from
10918 ../lisp/loaddefs.el.
10919 (bootstrap-clean): Do what distclean does but don't remove
10920 Makefile.
10921 (distclean): Depend on bootstrap-clean and remove Makefile.
10922
10923 2008-06-24 Chong Yidong <cyd@stupidchicken.com>
10924
10925 * buffer.h (struct buffer): New member word_wrap.
10926
10927 * buffer.c (syms_of_buffer): New variables default-word-wrap and
10928 word-wrap.
10929 (init_buffer_once): Initialize them.
10930
10931 * dispextern.h (struct it): Replace bool truncate_lines_p with a
10932 line_wrap enum possessing three possible values.
10933
10934 * termopts.h: Replace truncate_partial_width_windows with
10935 Vtruncate_partial_width_windows.
10936
10937 * dispnew.c (direct_output_for_insert): Avoid direct output when
10938 inserting a space with word wrap on.
10939
10940 * indent.c (compute_motion): Obey integer values of
10941 truncate-partial-width-windows.
10942
10943 * xdisp.c (Vtruncate_partial_width_windows): New Lisp_Object,
10944 replacing truncate_partial_width_windows.
10945 (init_iterator): If Vtruncate_partial_width_windows is an integer,
10946 truncate only if the window width is below that integer.
10947 (start_display, resize_mini_window, produce_stretch_glyph)
10948 (display_string, move_it_in_display_line_to): Use line_wrap.
10949 (back_to_previous_visible_line_start, reseat_1): Reset
10950 string_from_display_prop_p.
10951 (display_line): Extend default face to end of line when wrapping.
10952
10953 2008-06-24 Kim F. Storm <storm@cua.dk>
10954
10955 * xdisp.c (display_line, move_it_in_display_line_to): Add ability
10956 to wrap continued lines at word boundaries.
10957
10958 2008-06-24 Jason Rumney <jasonr@gnu.org>
10959
10960 * font.c (Ffont_face_attributes): Multiply pixel size before point
10961 conversion to avoid multiplying rounding error.
10962
10963 2008-06-23 Jason Rumney <jasonr@gnu.org>
10964
10965 * w32term.c (x_draw_glyph_string_background)
10966 (x_draw_glyph_string): Remove old bdf font code.
10967
10968 * w32term.h (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): Remove.
10969
10970 2008-06-22 Kenichi Handa <handa@m17n.org>
10971
10972 * font.c (font_find_for_lface): Try the adstyle specified in
10973 the property of LFACE_FONT of LFACE (if any).
10974
10975 2008-06-21 Seiji Zenitani <zenitani@mac.com>
10976 Ryo Yoshitake <ryo@shiftmode.net>
10977
10978 * xterm.c (x_set_frame_alpha): Add x_catch_errors for bug#437.
10979
10980 2008-06-22 Stefan Monnier <monnier@iro.umontreal.ca>
10981
10982 * Makefile.in (${lisp} ${SOME_MACHINE_LISP}, ../lisp/loaddefs.el):
10983 Use $(BOOTSTRAPEMACS) rather than witness-emacs.
10984 (bootstrap-emacs${EXEEXT}): Merge witness-emacs into it.
10985 (witness-emacs): Remove.
10986 (lisp, shortlisp): Move loaddefs.el earlier.
10987 (mostlyclean): Forget about witness-emacs.
10988
10989 2008-06-22 Glenn Morris <rgm@gnu.org>
10990
10991 * Makefile.in (witness-emacs): Depend on temacs${EXEEXT}.
10992 (.SUFFIXES): Declare .el.elc as a suffix rule, for non-GNU makes.
10993
10994 2008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
10995
10996 * Makefile.in (PRECOMP): Remove.
10997 (${lisp} ${SOME_MACHINE_LISP}): Remove pseudo dependency on PRECOMP.
10998 (witness-emacs): Run `compile-first'.
10999 (.el.elc): Use the new compile-onefile target.
11000
11001 2008-06-21 Kenichi Handa <handa@m17n.org>
11002
11003 * xftfont.c (xftfont_open): Handle QCembolden only when
11004 FC_EMBOLDEN is defined.
11005
11006 2008-06-21 Andreas Schwab <schwab@suse.de>
11007
11008 * Makefile.in (witness-emacs): Use ../lisp, not $(lispsource).
11009 (.el.elc): Likewise.
11010
11011 2008-06-21 Miles Bader <miles@gnu.org>
11012
11013 * Makefile.in (../lisp/loaddefs.el): Build autoloads in the lisp
11014 build dir, not the lisp source dir.
11015
11016 2008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
11017
11018 * Makefile.in (emacs${EXEEXT}): Link the new emacs to bootstrap-emacs.
11019 (bootstrapclean): Remove.
11020 (.el.elc): New rule.
11021 (PRECOMP): New var.
11022 (../lisp/subdirs.el): Remove.
11023 (bootstrap-emacs${EXEEXT}): Remove subdirs.el and charpro.el dependency.
11024 (witness-emacs): New target.
11025 (mostlyclean): Remove witness-emacs as well.
11026 (../lisp/loaddefs.el, ${lisp} ${SOME_MACHINE_LISP}):
11027 Add witness-emacs dependency.
11028
11029 2008-06-20 Chong Yidong <cyd@stupidchicken.com>
11030
11031 * font.c (Ffont_face_attributes): Omit key-attribute pairs not
11032 defined by the font.
11033
11034 2008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
11035
11036 * Makefile.in (emacs${EXEEXT}): Depend on the machine-specific files.
11037 (bootstrap-clean): New target that keeps TAGS around.
11038 (../lisp/subdirs.el, ../lisp/loaddefs.el): New targets.
11039 (bootstrap-emacs${EXEEXT}): Depend on subdirs.el.
11040
11041 2008-06-20 Jason Rumney <jasonr@gnu.org>
11042
11043 * w32fns.c, w32term.c, w32term.h, w32gui.h [OLD_FONT]:
11044 Remove obsolete font code.
11045
11046 * w32font.c (font_matches_spec): Use csb bitfield from font signature
11047 to determine language support.
11048
11049 2008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
11050
11051 * sysdep.c (cfsetspeed): New fun extracted from the code.
11052 (cfmakeraw): Move before first use.
11053
11054 2008-06-20 Angelo Graziosi <angelo.graziosi@alice.it> (tiny change)
11055
11056 * sysdep.c (cfmakeraw): Provide fallback implementation.
11057 (serial_configure): Provide fallback implementation of cfsetspeed.
11058
11059 2008-06-20 Kenichi Handa <handa@m17n.org>
11060
11061 * xftfont.c (xftfont_open): Add FOUNDRY, SPACING, DPI, SCALABLE to
11062 the pattern.
11063
11064 * fontset.c (fontset_from_font): Copy font_spec before changing
11065 the elements.
11066
11067 * xfns.c (x_default_font_parameter): Try "monospace-12" too.
11068
11069 2008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
11070
11071 * w32fns.c, xfns.c (x_default_font_parameter): Only set `font-param'
11072 for explicit `font' parameters.
11073
11074 * frame.c (x_set_font): Remove unexplained call to fix inf-recursion.
11075
11076 2008-06-19 Kenichi Handa <handa@m17n.org>
11077
11078 * frame.c: Include <ctype.h>.
11079 (x_set_font_backend): Allow spacing characters in the X resource
11080 for FontBackend.
11081
11082 2008-06-19 Stefan Monnier <monnier@iro.umontreal.ca>
11083
11084 * w32fns.c, xfns.c (Qfont_param): New var.
11085 (syms_of_w32fns): Initialize it.
11086 (x_default_font_parameter): Record explicit `font' into
11087 `font-parameter'.
11088
11089 2008-06-18 Kenichi Handa <handa@m17n.org>
11090
11091 * font.c (font_parse_xlfd): Fix previous change.
11092 (font_parse_fcname): Don't use :fc-unknown-spec.
11093 (FRAME_X_DISPLAY_INFO): Be sure to have at least 1 pixel height.
11094 (Fcopy_font_spec): Preserve the order of elements in FONT_EXTRA.
11095 (font_add_log): Prepend the driver name to the resulting fonts.
11096
11097 * ftfont.c (ftfont_pattern_entity): New arg extra. Caller changed.
11098 (ftfont_spec_pattern): Don't check QCfc_unknown_spec and QCname.
11099 (ftfont_list) [FC_FONTFORMAT]: Include FC_FONTFORMAT in objset.
11100
11101 * xftfont.c (QChinting , QCautohint, QChintstyle, QCrgba)
11102 (QCembolden): New variables.
11103 (syms_of_xftfont): DEFSYM them.
11104 (xftfont_open): Call XftFontMatch. Don't trust the result of
11105 XftTextExtents8 if the pixel_size is less than 5.
11106
11107 2008-06-18 Andreas Schwab <schwab@suse.de>
11108
11109 * font.c (Ffont_face_attributes): Only define if HAVE_WINDOW_SYSTEM.
11110 (syms_of_font): Only defsubr if HAVE_WINDOW_SYSTEM.
11111
11112 2008-06-18 Jason Rumney <jasonr@gnu.org>
11113
11114 * w32font.c (w32font_list, w32font_match): Add logging.
11115
11116 * w32uniscribe.c (uniscribe_list, uniscribe_match): Add logging.
11117
11118 2008-06-17 Chong Yidong <cyd@stupidchicken.com>
11119
11120 * font.c (font_parse_fcname): Store divider characters for
11121 unknown-spec list. For known key symbols, intern using correct
11122 symbol name.
11123
11124 2008-06-17 Kenichi Handa <handa@m17n.org>
11125
11126 * xfaces.c (realize_default_face): If the frame is not on window
11127 system, set the fontset of face to nil.
11128
11129 2008-06-17 Naohiro Aota <nao.aota@gmail.com> (tiny change)
11130
11131 * fontset.c (fontset_pattern_regexp): Escape some reg-expr characters.
11132
11133 2008-06-16 Juanma Barranquero <lekktu@gmail.com>
11134
11135 * dispextern.h (lookup_non_ascii_face, split_font_name_into_vector)
11136 (build_font_name_from_vector): Delete externs.
11137
11138 * xfaces.c (struct font_name): Don't declare.
11139
11140 2008-06-16 Stefan Monnier <monnier@iro.umontreal.ca>
11141
11142 * font.c (font_unparse_gtkname): Use EQ to compare Lisp_Objects.
11143
11144 2008-06-16 Chong Yidong <cyd@stupidchicken.com>
11145
11146 * font.c (font_parse_fcname): Fix handling of unknown-spec string.
11147
11148 2008-06-16 Juanma Barranquero <lekktu@gmail.com>
11149
11150 * font.c (Ffont_spec): Fix usage in docstring.
11151 (Ffont_face_attributes): Doc fix.
11152
11153 2008-06-16 Andreas Schwab <schwab@suse.de>
11154
11155 * font.c (Ffont_face_attributes): Fix definition.
11156
11157 2008-06-16 Jason Rumney <jasonr@gnu.org>
11158
11159 * font.h (font_style_symbolic_from_value): Remove.
11160
11161 * font.c (font_style_symbolic_from_value): Remove.
11162 (font_style_symbolic): Revert to pre 2008-06-13 version.
11163
11164 * w32font.c (w32_to_fc_weight): New function.
11165 (w32font_full_name, logfont_to_fcname): Use it.
11166
11167 2008-06-16 Kenichi Handa <handa@m17n.org>
11168
11169 * font.c (font_check_object): Delete it.
11170 (font_clear_cache): Check if a font-object is alive.
11171 (font_open_entity): Likewise. Set FONT_OBJLST_INDEX of a
11172 font-object to nil.
11173 (font_close_object): Don't check FONT_CLOSE_OBJECT.
11174 (font_at): Don't call font_check_object.
11175 (Ffont_get): Return a symbol for :weight, :slant, and :width.
11176
11177 2008-06-16 Katsumi Yamaoka <yamaoka@jpl.org>
11178
11179 * puresize.h (BASE_PURESIZE): Increase to 1230000.
11180
11181 2008-06-16 Chong Yidong <cyd@stupidchicken.com>
11182
11183 * font.c (font_parse_fcname): Correctly parse KEY=VAL values.
11184
11185 2008-06-15 Chong Yidong <cyd@stupidchicken.com>
11186
11187 * font.c (font_parse_fcname): Only one decimal point.
11188 (font_unparse_fcname): Handle data in family and foundry indices
11189 as symbols, not strings.
11190 (font_unparse_gtkname, Ffont_face_attributes): New functions.
11191
11192 * xfns.c (Fx_select_font): Give GTK font dialog the default font name.
11193
11194 * font.h (font_unparse_gtkname): Add prototype.
11195
11196 2008-06-15 Naohiro Aota <nao.aota@gmail.com> (tiny change)
11197
11198 * fontset.c (fontset_pattern_regexp): Escape `+' characters in pattern.
11199
11200 2008-06-15 Andreas Schwab <schwab@suse.de>
11201
11202 * font.c (font_update_drivers): Fix crash when no drivers match.
11203
11204 2008-06-15 Stefan Monnier <monnier@iro.umontreal.ca>
11205
11206 * xfns.c (Fx_create_frame): internal-border-width default to 0 for Gtk.
11207 * gtkutil.c (xg_create_frame_widgets): Don't set internal_border_width.
11208
11209 2008-06-14 Stefan Monnier <monnier@iro.umontreal.ca>
11210
11211 * xdisp.c (syms_of_xdisp): Default underline-minimum-offset to 1.
11212
11213 2008-06-13 Stefan Monnier <monnier@iro.umontreal.ca>
11214
11215 * process.c (Fserial_process_configure, Fprocess_send_eof):
11216 Use EQ to compare Lisp_Objects.
11217
11218 2008-06-13 Jason Rumney <jasonr@gnu.org>
11219
11220 * w32fns.c (Fw32_select_font): Remove old font API function.
11221
11222 * w32font.c (logfont_to_fcname): New function.
11223 (Fx_select_font): New font dialog function compatible with
11224 GTK/fontconfig version.
11225
11226 * font.c (font_style_symbolic_from_value): New function.
11227 (font_style_symbolic): Use it.
11228
11229 * font.h (font_style_symbolic_from_value): Declare new function.
11230
11231 2008-06-13 Juanma Barranquero <lekktu@gmail.com>
11232
11233 * font.c (syms_of_font) <font-weight-table, font-slant-table>:
11234 <font-width-table>: Fix typos in docstrings.
11235
11236 2008-06-13 Daniel Engeler <engeler@gmail.com>
11237
11238 These changes add serial port access.
11239 * process.c: Add HAVE_SERIAL.
11240 (Fdelete_process, Fprocess_status, Fset_process_buffer)
11241 (Fset_process_filter, Fset_process_sentinel, Fprocess_contact)
11242 (list_processes_1, select_wrapper, Fstop_process)
11243 (Fcontinue_process, Fprocess_send_eof, kill_buffer_processes)
11244 (status_notify): Modify to handle serial processes.
11245 [HAVE_SERIAL] (Fserial_process_configure)
11246 [HAVE_SERIAL] (make_serial_process_unwind, Fmake_serial_process):
11247 New functions.
11248 * process.h (struct Lisp_Process): Add `type'.
11249 * sysdep.c [HAVE_TERMIOS] (serial_open, serial_configure):
11250 New functions.
11251 * w32.c (_sys_read_ahead, sys_read, sys_write): Modify to handle
11252 serial ports.
11253 (serial_open, serial_configure): New functions.
11254 * w32.h: Add FILE_SERIAL.
11255 (struct _child_process): Add ovl_read, ovl_write.
11256
11257 2008-06-13 Kenichi Handa <handa@m17n.org>
11258
11259 * dispextern.h (enum lface_attribute_index): New member
11260 LFACE_FOUNDRY_INDEX.
11261
11262 * font.c (font_score): Delete arg alternate_families. Check only
11263 weight, slant, width, and size. Ignore the difference of alias
11264 style symbols.
11265 (font_sort_entites): Adjust for the above change. Reflect the
11266 order of font-driver to scores.
11267 (font_list_entities): Don't check alternate_familes here.
11268 (font_clear_prop): Handle foundry.
11269 (font_update_lface): Don't parse "foundry-family" form here.
11270 Handle FONT_FOUNDRY_INDEX.
11271 (font_find_for_lface): Likewise. Handle alternate families here.
11272 If registry is nil, try iso8859-1 and ascii-0.
11273 (font_open_for_lface): Pay attention to size in ENTITY.
11274 (font_open_by_name): Simplify by calling font_load_for_lface.
11275 (free_font_driver_list): Delete it.
11276 (font_update_drivers): Preserve the order of backends.
11277 (syms_of_font): Setting of sort_shift_bits adjusted for the change
11278 of font_score and font_sort_entites.
11279 (font_update_sort_order): Likewise.
11280
11281 * xfaces.c (LFACE_FOUNDRY): New macro.
11282 (check_lface_attrs): Check foundry.
11283 (set_lface_from_font): Don't parse "FOUNDRY-FAMILY" form.
11284 (merge_face_vectors): Check foundry.
11285 (merge_face_ref): Likewise.
11286 (Finternal_set_lisp_face_attribute): Likewise.
11287 (x_update_menu_appearance): Likewise.
11288 (Finternal_get_lisp_face_attribute): Likewise.
11289 (lface_hash): Likewise.
11290 (lface_same_font_attributes_p): Likewise.
11291 (x_supports_face_attributes_p): Likewise.
11292 (tty_supports_face_attributes_p): Likewise.
11293 (Finternal_set_alternative_font_family_alist): Intern strings.
11294 (Finternal_set_alternative_font_registry_alist): Downcase strings.
11295 (realize_default_face): Set LFACE_FOUNDRY (lface).
11296
11297 * xfns.c (Fx_create_frame, x_create_tip_frame): Register X
11298 font-driver at first.
11299
11300 * ftfont.c (ftfont_font_format) [! FC_FONTFORMAT]: Declare "int len;".
11301
11302 2008-06-12 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
11303
11304 * lread.c (Fload): Use xfree, not free on saved_doc_string.
11305
11306 2008-06-12 Jim Meyering <meyering@redhat.com>
11307
11308 Make unexec_free handle NULL the same way free does.
11309 * unexmacosx.c (unexec_free): Ignore a NULL argument.
11310
11311 2008-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
11312
11313 * character.h (CHAR_TO_BYTE_SAFE): New macro.
11314 * character.c (Fmultibyte_char_to_unibyte): Obey the docstring.
11315 * regex.c (RE_CHAR_TO_UNIBYTE): Use the new macro.
11316 (WEAK_ALIAS): Simplify.
11317 * syntax.c (skip_chars): Don't mark non-byte chars in the fastmap
11318 when searching a unibyte buffer.
11319
11320 2008-06-12 Chong Yidong <cyd@stupidchicken.com>
11321
11322 * xfns.c (Fx_select_font): Rename from x-font-dialog.
11323
11324 2008-06-12 Juanma Barranquero <lekktu@gmail.com>
11325
11326 * w32font.c: Include ctype.h.
11327
11328 2008-06-11 Jason Rumney <jasonr@gnu.org>
11329
11330 * w32font.c (w32font_encode_char): Detect missing glyphs that are
11331 misreported as space.
11332 (add_font_entity_to_list): Support unicode-bmp and unicode-sip
11333 as aliases for registry iso10646-1.
11334
11335 2008-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
11336
11337 * buffer.c (clone_per_buffer_values): Skip `name'.
11338
11339 2008-06-11 Chong Yidong <cyd@stupidchicken.com>
11340
11341 * font.c (font_parse_fcname): Fix last change; accept decimal
11342 points in font size.
11343
11344 2008-06-10 Jason Rumney <jasonr@gnu.org>
11345
11346 * w32uniscribe.c (add_opentype_font_name_to_list):
11347 Skip non unicode fonts.
11348
11349 2008-06-10 Chong Yidong <cyd@stupidchicken.com>
11350
11351 * xfns.c (Fx_font_dialog): New function.
11352
11353 * gtkutil.c (xg_dialog_response_cb): Rename from
11354 xg_file_response_callback.
11355 (pop_down_dialog): Rename from pop_down_file_dialog.
11356 (xg_get_file_name): Callers changed.
11357 (xg_get_font_name): New function.
11358
11359 * gtkutil.h (xg_get_font_name): Insert prototype.
11360
11361 2008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
11362
11363 * xdisp.c (underline_minimum_offset): Rename from xterm.c's
11364 x_underline_minimum_display_offset.
11365 (syms_of_xdisp): Declare it here rather than in xterm.c.
11366 * dispextern.h (underline_minimum_offset): Declare it.
11367 * w32term.c (x_draw_glyph_string): Use it.
11368 * xterm.c (x_underline_minimum_display_offset): Move to xdisp.c.
11369 (syms_of_xterm): Don't declare it any more.
11370 (x_draw_glyph_string): Adjust to the new name.
11371
11372 2008-06-10 David De La Harpe Golden <david@harpegolden.net>
11373
11374 * xterm.c (x_underline_minimum_display_offset): New var.
11375 (x_draw_glyph_string): Use it.
11376 (syms_of_xterm): Declare it.
11377
11378 2008-06-10 Chong Yidong <cyd@stupidchicken.com>
11379
11380 * font.c (font_parse_fcname): Accept GTK-style font names too.
11381
11382 2008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
11383
11384 * dired.c (file_name_completion): Don't return t if the match is exact
11385 but with different capitalization.
11386 * minibuf.c (Ftry_completion): Simplify.
11387
11388 * window.c (Vwindow_point_insertion_type): New var.
11389 (set_window_buffer): Use it.
11390 (syms_of_window): Init and export it to Lisp.
11391
11392 2008-06-10 Kenichi Handa <handa@m17n.org>
11393
11394 * font.h (font_intern_prop): Prototype adjusted.
11395
11396 * font.c (font_intern_prop): New arg force_symbol.
11397 (font_parse_xlfd, font_parse_fcname, font_parse_family_registry):
11398 Adjust for the change of font_intern_prop.
11399
11400 * ftfont.c (ftfont_pattern_entity):
11401 * w32font.c (add_font_name_to_list, w32_enumfont_pattern_entity)
11402 (w32_registry):
11403 * w32uniscribe.c (add_opentype_font_name_to_list): Adjust for
11404 the change of font_intern_prop.
11405
11406 2008-06-09 Juanma Barranquero <lekktu@gmail.com>
11407
11408 * w32menu.c (digest_single_submenu): Declare extern.
11409
11410 2008-06-09 Jason Rumney <jasonr@gnu.org>
11411
11412 * w32term.c (x_make_frame_visible): Use alternate restore flags.
11413
11414 * w32menu.c (Fx_popup_menu): Unwind protect while building menu.
11415 (parse_single_submenu): Remove.
11416 (digest_single_submenu): Remove.
11417 (syms_of_w32menu): Don't initialise variables that have moved
11418 to menu.c.
11419 (set_frame_menubar): Sync with version in xmenu.c.
11420 (w32_menu_show): Sync with xmenu_show in xmenu.c.
11421
11422 * menu.c (single_keymap_panes, push_menu_pane, push_menu_item):
11423 Make static again.
11424
11425 2008-06-09 Jason Rumney <jasonr@gnu.org>
11426
11427 Changes to w32 files related to the move of common menu code
11428 to menu.c on 2008-06-08 by Chong Yidong.
11429
11430 * menu.c [HAVE_NTGUI]: Include w32term.h, move widget related
11431 defs to w32gui.h.
11432 (single_keymap_panes, push_menu_item, push_menu_pane):
11433 Make globally visible.
11434
11435 * w32menu.c (enum button_type, widget_value, local_heap, local_alloc)
11436 (local_free, malloc_widget_value, free_widget_value)
11437 (MENU_ITEMS_ITEM_NAME, MENU_ITEMS_ITEM_ENABLE, MENU_ITEMS_ITEM_VALUE)
11438 (MENU_ITEMS_ITEM_EQUIV_KEY, MENU_ITEMS_ITEM_DEFINITION)
11439 (MENU_ITEMS_ITEM_TYPE, MENU_ITEMS_ITEM_SELECTED, MENU_ITEMS_ITEM_HELP)
11440 (MENU_ITEMS_ITEM_LENGTH, enum menu_item_idx): Remove defs.
11441 (menu_items, menu_items_allocated, menu_items_used)
11442 (menu_items_n_panes, menu_items_submenu_depth): Remove global vars.
11443 (init_menu_items, finish_menu_items, discard_menu_items)
11444 (grow_menu_items, push_submenu_start, push_submenu_end)
11445 (push_left_right_boundary, push_menu_pane, push_menu_item)
11446 (keymap_panes, single_keymap_panes, list_of_panes, list_of_items)
11447 (free_menubar_widget_tree_value, parse_single_submenu)
11448 (update_submenu_strings): Remove functions.
11449 (xmalloc_widget_value): Remove and declare extern.
11450
11451 * makefile.w32-in ($(SRC)/menu.$(O)): New target.
11452 (OBJ1): Build it.
11453
11454 * w32gui.h (widget_value, XtPointer, Boolean, enum button_type)
11455 (local_heap, local_alloc, local_free, malloc_widget_value)
11456 (free_widget_value): Define here.
11457
11458 2008-06-09 Kenichi Handa <handa@m17n.org>
11459
11460 * font.h (Qascii_0): Extern it.
11461
11462 * font.c (Qascii_0): New variable.
11463 (syms_of_font): DEFSYM it.
11464 (font_open_by_name): If the registry "iso8859-1" fails, try also
11465 "ascii-0".
11466
11467 * ftfont.c (ftfont_spec_pattern): Accept the registry `ascii-0'.
11468
11469 2008-06-08 Kenichi Handa <handa@m17n.org>
11470
11471 * .gdbinit (xfont): New command.
11472
11473 2008-06-08 Andreas Schwab <schwab@suse.de>
11474
11475 * menu.c [HAVE_X_WINDOWS]: Include "xterm.h".
11476 * Makefile.in (menu.o): Update dependencies.
11477
11478 * Makefile.in (obj): Always add menu.o.
11479 * emacs.c (main): Always call syms_of_menu.
11480 * keyboard.h: Remove extra #ifdef HAVE_X_WINDOW.
11481
11482 2008-06-08 Chong Yidong <cyd@stupidchicken.com>
11483
11484 * Makefile.in: Compile menu.c.
11485
11486 * lisp.h: Declare syms_of_menu.
11487
11488 * emacs.c (main): Call syms_of_menu.
11489
11490 * keyboard.h: Relocate platform-independent menu definitions from
11491 xmenu.c.
11492
11493 * menu.c: New file. Relocate platform-independent menu
11494 definitions from xmenu.c. Suggested by Adrian Robert.
11495
11496 * xmenu.c: Remove platform-independent menu definitions.
11497 (menu_items menu_items_inuse, menu_items_allocated)
11498 (menu_items_used, menu_items_n_panes)
11499 (menu_items_submenu_depth): Move to keyboard.h.
11500 (init_menu_items, finish_menu_items, unuse_menu_items)
11501 (discard_menu_items, restore_menu_items, save_menu_items)
11502 (grow_menu_items, push_submenu_start, push_submenu_end)
11503 (push_left_right_boundary, push_menu_pane, push_menu_item)
11504 (keymap_panes, single_keymap_panes, single_menu_item)
11505 (list_of_panes, list_of_items, find_and_call_menu_selection)
11506 (xmalloc_widget_value, free_menubar_widget_value_tree)
11507 (parse_single_submenu, digest_single_submenu)
11508 (update_submenu_strings): Move to menu.c.
11509
11510 2008-06-07 Stefan Monnier <monnier@iro.umontreal.ca>
11511
11512 * dispnew.c (Flast_nonminibuf_frame): Handle the NULL case.
11513
11514 2008-06-06 Miles Bader <miles@gnu.org>
11515
11516 * xdisp.c (x_produce_glyphs): Calculate tab width based on current
11517 face, not frame default.
11518
11519 2008-06-05 Martin Rudalics <rudalics@gmx.at>
11520
11521 * window.c (pop_up_windows, pop_up_frames)
11522 (display_buffer_reuse_frames, Vpop_up_frame_function)
11523 (Vdisplay_buffer_function, Veven_window_heights)
11524 (Vspecial_display_buffer_names, Vspecial_display_regexps)
11525 (Vspecial_display_function, Vsame_window_buffer_names)
11526 (Vsame_window_regexps, split_height_threshold)
11527 (Vsplit_window_preferred_function): Move those vars to window.el.
11528 (display_buffer_1, Fspecial_display_p, Fsame_window_p)
11529 (Fdisplay_buffer): Move those functions to window.el.
11530 (syms_of_window): Remove corresponding declarations.
11531 (display_buffer): New function.
11532 (temp_output_buffer_show, Fother_window_for_scrolling): Use it.
11533 * dispnew.c (Flast_nonminibuf_frame): New function.
11534 * buffer.c (Fpop_to_buffer): Move to window.el.
11535
11536 2008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
11537
11538 * data.c (set_internal): Fix up call to let_shadows_buffer_binding_p.
11539
11540 2008-06-05 Kenichi Handa <handa@m17n.org>
11541
11542 * coding.c (detect_coding): Fix previous change.
11543 (detect_coding_system): Likewise.
11544
11545 2008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
11546
11547 * character.h (MAKE_CHAR_MULTIBYTE): Check the arg is a (uni)byte.
11548
11549 * keymap.c (Vminibuffer_local_filename_must_match_map):
11550 Rename from Vminibuffer_local_must_match_filename_map.
11551 (syms_of_keymap):
11552 * minibuf.c (Fcompleting_read): Adjust accordingly.
11553 * commands.h: Rename declaration as well.
11554
11555 2008-06-05 Kenichi Handa <handa@m17n.org>
11556
11557 * font.c (Ffont_spec): Don't use font_parse_family_registry for
11558 family name.
11559 (Ffont_put): Likewise.
11560
11561 * fontset.c (fontset_find_font): Call font_open_for_lface with the
11562 current font-spec.
11563
11564 * xfont.c (xfont_list): Don't set registry to iso8859-1 even if it
11565 is unspecified.
11566
11567 * xfaces.c (realize_x_face): If the font-related face attributes
11568 are the same as those of default face, realize a new fontset from
11569 default->fontset.
11570 (Fx_family_fonts): Use font_parse_family_registry instead of Ffont_put.
11571
11572 2008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
11573
11574 * xdisp.c (move_it_in_display_line_to): Improve the type of its args.
11575 (move_it_in_display_line): New wrapper.
11576
11577 * window.c (window_scroll_pixel_based_preserve_x)
11578 (window_scroll_preserve_hpos, window_scroll_preserve_vpos): New vars.
11579 (window_scroll_pixel_based, window_scroll_line_based):
11580 Use them to preserve column positions.
11581 (syms_of_window): Initialize them.
11582
11583 * indent.c (Fvertical_motion): Extend first arg to allow passing an
11584 (HPOS . VPOS) pair.
11585
11586 * dispextern.h (move_it_in_display_line): Declare.
11587
11588 2008-06-05 Juanma Barranquero <lekktu@gmail.com>
11589
11590 * window.c (Fwindow_parameter): Return VALUE, not (PARAMETER . VALUE).
11591 (Fwindow_parameters): Return copy of parameter alist. Doc fix.
11592 (Fset_window_parameter): Return VALUE, not parameter alist. Doc fix.
11593
11594 2008-06-04 Juanma Barranquero <lekktu@gmail.com>
11595
11596 * window.c (Fset_window_parameter): Doc fix.
11597 (Fwindow_parameters, Fwindow_parameter): Remove redundant check.
11598
11599 2008-06-04 Joakim Verona <joakim@verona.se>
11600
11601 * window.h (struct window): Add new member window_parameters.
11602
11603 * window.c (Fwindow_parameters, Fwindow_parameter)
11604 (Fset_window_parameter): New defuns.
11605 (syms_of_window): Defsubr the new defuns.
11606 (make_window): Initialize window_parameters to nil.
11607
11608 2008-06-04 John Paul Wallington <jpw@pobox.com>
11609
11610 * eval.c (Fdefmacro): Doc fix.
11611
11612 2008-06-04 Kenichi Handa <handa@m17n.org>
11613
11614 * coding.c (detect_coding): Fix handling of coding->head_ascii.
11615 Be sure to call setup_coding_system when we find a proper coding system.
11616 (detect_coding_system): Fix handling of coding->head_ascii.
11617
11618 2008-06-03 Andreas Schwab <schwab@suse.de>
11619
11620 * font.c (font_prop_validate_spacing): Fix last change.
11621
11622 2008-06-03 Kenichi Handa <handa@m17n.org>
11623
11624 * font.c (font_prop_validate_spacing): Handle uppercase symbols.
11625 (font_parse_fcname): Fix handling of unknown key.
11626
11627 * xfont.c (xfont_list): Try an alias.
11628
11629 * charset.c (char_charset): Return NULL if the arg charset_list is
11630 specified and C doesn't belong to any of them.
11631
11632 2008-06-02 Chip Coldwell <coldwell@redhat.com>
11633
11634 * font.c (font_pixel_size): Don't take cdr of an integer.
11635
11636 2008-06-02 Jim Meyering <meyering@redhat.com>
11637
11638 Make "xfree (NULL)" a no-op; remove useless if-before-xfree.
11639 * alloc.c (xfree): Return right away for a NULL arg.
11640 * lread.c (nosuffix): Remove now-useless if-before-xfree tests.
11641 * gtkutil.c (xg_gtk_scroll_destroy): Likewise.
11642 * mac.c (create_apple_event_from_event_ref): Likewise.
11643 (create_apple_event_from_drag_ref, cfstring_create_normalized):
11644 Likewise.
11645 * doprnt.c (doprnt1): Likewise.
11646 * frame.c (frame): Likewise.
11647 * keyboard.c (wipe_kboard): Likewise.
11648 * macterm.c (x_free_frame_resources, xlfdpat_destroy, XFreePixmap)
11649 (init_font_name_table, mac_unload_font, x_delete_display): Likewise.
11650 * term.c (tty_default_color_capabilities, maybe_fatal)
11651 (delete_tty): Likewise.
11652 * w16select.c (string): Likewise.
11653 * w32.c (w32_get_resource, SET_ENV_BUF_SIZE): Likewise.
11654 * w32bdf.c (w32_free_bdf_font): Likewise.
11655 * w32fns.c (w32_unload_font): Likewise.
11656 * w32font.c (w32font_close): Likewise.
11657 * window.c (size_window): Likewise.
11658 * xselect.c (receive_incremental_selection): Likewise.
11659 * xterm.c (x_free_frame_resources, x_delete_display): Likewise.
11660 * mactoolbox.c (create_apple_event_from_drag_ref): Likewise.
11661 * w32.c (stat): Likewise.
11662
11663 Remove useless if-before-free tests.
11664 * editfns.c (Fset_time_zone_rule): Likewise.
11665 * lread.c (nosuffix): Likewise.
11666 * ralloc.c (get_bloc): Likewise.
11667 * regex.c (reg_free): Likewise.
11668 * xftfont.c (xftfont_open, xftfont_close): Likewise.
11669 * xrdb.c (get_user_app, get_environ_db, x_load_resources): Likewise.
11670 * xsmfns.c (smc_save_yourself_CB): Likewise.
11671
11672 2008-06-02 Kenichi Handa <handa@m17n.org>
11673
11674 * font.c (font_find_for_lface): Handle float font size.
11675 (font_open_for_lface): Likewise.
11676
11677 * xfaces.c (x_supports_face_attributes_p): Check face->font before
11678 comparing the properties.
11679
11680 2008-06-01 Jason Rumney <jasonr@gnu.org>
11681
11682 * w32font.c (w32_enumfont_pattern_entity): Use requested registry.
11683 Treat iso10646-1 and Windows DEFAULT_CHARSET specially.
11684 Duplicate iso8859-1 fonts as iso10646-1 if no registry specified.
11685 Don't add empty script list.
11686 (w32_registry): Only map DEFAULT_CHARSET to iso10646-1 here.
11687
11688 2008-06-01 Dan Nicolaescu <dann@ics.uci.edu>
11689
11690 * Makefile.in (dot, dotdot): Remove, update users.
11691 ".." has been used elsewhere in the file for a long time.
11692 (LIBXT_STATIC): Remove conditional based on unused variable.
11693
11694 2008-06-01 Miles Bader <miles@gnu.org>
11695
11696 * xfaces.c (Vface_remapping_alist): New variable.
11697 (syms_of_xfaces): Initialize it.
11698 (enum named_merge_point_kind): New type.
11699 (struct named_merge_point): Add `named_merge_point_kind' field.
11700 (push_named_merge_point): Make cycle detection respect different
11701 named-merge-point kinds.
11702 (lface_from_face_name_no_resolve): Rename from `lface_from_face_name'.
11703 Remove face-name alias resolution.
11704 (lface_from_face_name): New definition using
11705 `lface_from_face_name_no_resolve'.
11706 (get_lface_attributes_no_remap): Rename from `get_lface_attributes'.
11707 Call lface_from_face_name_no_resolve instead of lface_from_face_name.
11708 (get_lface_attributes): New definition that layers face-remapping on
11709 top of get_lface_attributes_no_remap. New arg `named_merge_points'.
11710 (lookup_basic_face): New function.
11711 (lookup_derived_face): Pass new last arg to `get_lface_attributes'.
11712 (realize_named_face): Call `get_lface_attributes_no_remap' instead of
11713 `get_lface_attributes'.
11714 (face_at_buffer_position): Use `lookup_basic_face' to lookup
11715 DEFAULT_FACE_ID if necessary. When optimizing the default-face case,
11716 return default_face's face-id instead of the constant DEFAULT_FACE_ID.
11717
11718 * xdisp.c (init_iterator): Pass base_face_id through
11719 `lookup_basic_face' when we actually use it as a face-id.
11720 (handle_single_display_prop): Use `lookup_basic_face' to lookup
11721 DEFAULT_FACE_ID.
11722
11723 * fontset.c (Finternal_char_font): Use `lookup_basic_face' to
11724 lookup the initial face-id.
11725
11726 * dispextern.h (lookup_basic_face, Vface_remapping_alist): New decls.
11727
11728 2008-06-01 Juanma Barranquero <lekktu@gmail.com>
11729
11730 * textprop.c (syms_of_textprop) <text-property-default-nonsticky>:
11731 (Fremove_text_properties): Fix typos in docstrings.
11732
11733 2008-05-31 Kenichi Handa <handa@m17n.org>
11734
11735 * font.c (font_list_entities): Fix the car part of data to be
11736 stored in the cache.
11737
11738 * ftfont.c (ftfont_font_format): Don't use strcasestr.
11739
11740 2008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
11741
11742 * chartab.c (Foptimize_char_table, optimize_sub_char_table):
11743 Add a `test' argument so another predicate than `equal' can be used.
11744 (map_sub_char_table): Use `eq' rather than `equal' to merge ranges.
11745 (map_char_table): Remove unused vars `c' and `i'.
11746 * lisp.h (Foptimize_char_table): Adjust declaration.
11747 * charset.c (Fclear_charset_maps): Adjust call to Foptimize_char_table.
11748
11749 2008-05-30 Kenichi Handa <handa@m17n.org>
11750
11751 * font.c (Ffont_info): Define only if HAVE_WINDOW_SYSTEM is defined.
11752 (syms_of_font): Defsubr Sfont_info only if HAVE_WINDOW_SYSTEM is
11753 defined.
11754
11755 2008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
11756
11757 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
11758 (Fmake_variable_frame_local): Disallow mixing buffer-local and
11759 frame-local settings for the same variable.
11760
11761 2008-05-30 Kenichi Handa <handa@m17n.org>
11762
11763 * fontset.c (Ffont_info): Move to font.c.
11764 (syms_of_fontset): Delete defsubr of Sfont_info.
11765
11766 * font.c (font_style_to_value, font_score): Delete casting of the
11767 args to xstcasecmp.
11768 (register_font_driver): Increment num_font_drivers only when
11769 registering the driver globally.
11770 (Ffont_info): Move from fontset.c. Handle a font object too.
11771 (syms_of_font): Defsubr Sfont_info.
11772
11773 2008-05-29 Kenichi Handa <handa@m17n.org>
11774
11775 * coding.h (enum define_coding_utf8_arg_index): New enum.
11776 (enum coding_attr_index): Change coding_attr_utf_16_bom to
11777 coding_attr_utf_bom.
11778 (enum utf_bom_type): Rename from utf_16_bom_type.
11779 (struct utf_16_spec): Adjust for the above change.
11780 (struct coding_system): Add utf_8_bom in `spec' union.
11781
11782 * coding.c (CODING_UTF_8_BOM): New macro.
11783 (enum coding_category): Delete coding_category_utf_8, add
11784 coding_category_utf_8_auto, coding_category_utf_8_nosig, and
11785 coding_category_utf_8_sig.
11786 (CATEGORY_MASK_UTF_8): Delete it.
11787 (CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG)
11788 (CATEGORY_MASK_UTF_8_SIG): New macros.
11789 (CATEGORY_MASK_ANY): Delete CATEGORY_MASK_UTF_8, add
11790 CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG, and
11791 CATEGORY_MASK_UTF_8_SIG.
11792 (CATEGORY_MASK_UTF_8): New macro.
11793 (UTF_BOM, UTF_8_BOM_1, UTF_8_BOM_2, UTF_8_BOM_3): New macros.
11794 (detect_coding_utf_8): Check BOM.
11795 (decode_coding_utf_8, encode_coding_utf_8): Handle BOM.
11796 (decode_coding_utf_16): Adjust for the change of enum utf_bom_type.
11797 (encode_coding_utf_16): Likewise.
11798 (setup_coding_system): Likewise. Set CODING_UTF_8_BOM (coding).
11799 (detect_coding, detect_coding_system): Handle utf-8-auto.
11800 (Fdefine_coding_system_internal): Handle `bom' property for utf-8.
11801 (syms_of_coding): Fix setting up of Vcoding_category_table.
11802
11803 2008-05-29 Stefan Monnier <monnier@iro.umontreal.ca>
11804
11805 * process.c (Faccept_process_output): If `millisec' is non-nil,
11806 `seconds' default to 0.
11807 (wait_reading_process_output): Also return non-nil if we read output
11808 from a non-running process.
11809
11810 2008-05-29 Jason Rumney <jasonr@gnu.org>
11811
11812 * w32font.c (w32font_open_internal): Prefer truetype fonts unless
11813 `raster' specified.
11814 (add_font_entity_to_list): Allow non-opentype truetype fonts back
11815 in the uniscribe backend, but disallow any font that has no
11816 unicode subrange support.
11817
11818 2008-05-29 Juanma Barranquero <lekktu@gmail.com>
11819
11820 * xfaces.c (Fx_list_fonts, Finternal_copy_lisp_face):
11821 Fix typos in docstrings.
11822
11823 2008-05-29 Kenichi Handa <handa@m17n.org>
11824
11825 * xfaces.c (Fx_list_fonts): Make it return a list of font names.
11826 (Fx_family_fonts): Set frame correctly.
11827
11828 2008-05-28 Jason Rumney <jasonr@gnu.org>
11829
11830 * w32term.c (x_draw_glyph_string): Use clipmask if specified.
11831
11832 2008-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
11833
11834 * fileio.c (Fwrite_region): Delay the defaulting to beg&z to after
11835 calling build_annotations.
11836
11837 2008-05-28 Juanma Barranquero <lekktu@gmail.com>
11838
11839 * coding.c (Fdecode_coding_region, Fencode_coding_region)
11840 (Fencode_coding_string):
11841 (syms_of_coding) <coding-system-for-read, coding-system-for-write>:
11842 <latin-extra-code-table>: Fix typos in docstrings.
11843 (syms_of_coding) <coding-system-alist>: Doc fix.
11844 (syms_of_coding) <translation-table-for-input>: Reflow docstring.
11845
11846 2008-05-28 Kenichi Handa <handa@m17n.org>
11847
11848 * fontset.c (Ffont_info): Don't call font_close_object.
11849
11850 * font.c (font_parse_family_registry): Use Ffont_put to validate
11851 foundry and family.
11852 (font_delete_unmatched): Don't check spacing.
11853 (font_list_entities): Add spacing to the spec to list fonts.
11854
11855 * ftfont.c (ftfont_spec_pattern): Don't set FC_SPACING to pattern.
11856 (ftfont_list): Check spacing here. Don't include FC_CHARSET in objset.
11857
11858 * coding.c (encode_coding_raw_text): Fix previous change.
11859 (encode_coding_object): When the dst_object is a buffer and is
11860 different from src_object, move gap to PT.
11861
11862 2008-05-27 Chong Yidong <cyd@stupidchicken.com>
11863
11864 * xterm.c (x_draw_glyph_string): If a clipmask is specified, use it.
11865
11866 2008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
11867
11868 * coding.c (encode_coding_raw_text): Set coding->produced_char for
11869 all branches. Compute it differently.
11870
11871 * xdisp.c [!HAVE_WINDOW_SYSTEM]: Include font.h for --without-x.
11872
11873 2008-05-27 Juanma Barranquero <lekktu@gmail.com>
11874
11875 * w32font.c (compute_metrics): Rewrite an "else { if () ... else ... }"
11876 into "else if () ... else ...".
11877
11878 2008-05-27 Jason Rumney <jasonr@gnu.org>
11879
11880 * w32font.c (w32font_open_internal): Determine if glyph indices
11881 are likely to work here.
11882
11883 2008-05-27 Chong Yidong <cyd@stupidchicken.com>
11884
11885 * xdisp.c (draw_glyphs): If mouse-highlighting is on, attempt to
11886 draw overlap glyphs with appropriate highlighting.
11887
11888 2008-05-27 Kenichi Handa <handa@m17n.org>
11889
11890 * xfont.c (xfont_open): Fix calculation of font->average_width.
11891
11892 2008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
11893
11894 * casefiddle.c (casify_object): Try to guess better whether the
11895 argument is a byte or a char.
11896
11897 2008-05-26 Andreas Schwab <schwab@suse.de>
11898
11899 * xselect.c (x_reply_selection_request): Properly handle format == 32.
11900 Always send multiples of format size.
11901
11902 * xterm.c (x_set_frame_alpha): Fix type mismatch.
11903
11904 2008-05-26 Jason Rumney <jasonr@gnu.org>
11905
11906 * w32font.c (w32font_text_extents): Zero whole metrics struct first.
11907 (compute_metrics): Don't set failure if we just cleared the cache.
11908 (w32_weight_table): Remove unused variable.
11909 (w32_enumfont_pattern_entity): Use FONT_SPACING_CHARCELL for
11910 backwards compatibility.
11911
11912 2008-05-25 Kenichi Handa <handa@m17n.org>
11913
11914 * w32term.c (x_draw_glyph_string):
11915 * xterm.c (x_draw_glyph_string): Fix calculation of underline position.
11916
11917 * xfaces.c: Delete unused function prototypes.
11918 (xstrlwr, font_frame): Delete them.
11919 (clear_face_cache): Delete unused variable.
11920
11921 * xftfont.c (xftfont_open): Delete unused variable.
11922 If underline_thickness is not 1, adjust underline_position.
11923
11924 * ftxfont.c (ftxfont_open): Delete unused variable.
11925
11926 * fontset.c (face_for_char): Optimize for the case of no charset
11927 property.
11928
11929 * font.c (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE)
11930 (check_gstring, check_otf_features, otf_list, otf_tag_symbol)
11931 (otf_open, font_otf_capability, generate_otf_features)
11932 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
11933 Comment out by surrounding "#if 0" and "#endif" for the moment.
11934 (Ffont_drive_otf, Ffont_otf_alternates): Likewise.
11935 (syms_of_font): Codes for accessing above commented out.
11936
11937 2008-05-24 Eli Zaretskii <eliz@gnu.org>
11938
11939 * w32proc.c: Include dispextern.h.
11940
11941 * w32.c: Include dispextern.h.
11942
11943 2008-05-23 Juanma Barranquero <lekktu@gmail.com>
11944
11945 * charset.c (Fencode_char, Fsplit_char): Doc fixes.
11946 (Fget_unused_iso_final_char, Fdecode_char, Fiso_charset):
11947 Fix typos in docstrings.
11948
11949 2008-05-23 Jason Rumney <jasonr@gnu.org>
11950
11951 * xsmfns.c: Remove includes that are already included by config.h.
11952
11953 2008-05-23 Kenichi Handa <handa@m17n.org>
11954
11955 * charset.c (Qemacs, charset_emacs): New variables.
11956 (char_charset): Fix for non-Unicode characters.
11957 (syms_of_charset): Define charset_emacs.
11958
11959 * w32term.c (x_draw_glyph_string): Be sure to update
11960 s->underline_thickness and s->underline_position. Be sure to draw
11961 underline within the current line area.
11962
11963 * xterm.c (x_draw_glyph_string): Be sure to update
11964 s->underline_thickness and s->underline_position. Be sure to draw
11965 underline within the current line area.
11966
11967 * fontset.c: Delete unused variables and add casting for char *
11968 throughout the file.
11969 (fontset_font): Try the fallback fonts of the current fontset
11970 before consulting the default fontset.
11971
11972 * ftfont.c (ftfont_spec_pattern): Free charset if necessary.
11973
11974 * xfont.c (xfont_list_pattern): Free names returned from XListFonts.
11975
11976 2008-05-22 Jason Rumney <jasonr@gnu.org>
11977
11978 * font.c: Don't include strings.h.
11979
11980 * dispextern.h, xfaces.c (xstrcasecmp): Rename from xstricmp.
11981
11982 * dosfns.c, fileio.c, font.c, fontset.c, image.c, macfns.c:
11983 * macterm.c, process.c, w32.c, w32fns.c, w32proc.c, xfaces.c:
11984 * xfns.c, xfont.c: All callers of stricmp and strcasecmp changed
11985 to call xstrcasecmp.
11986
11987 * xfont.c (xfont_list_pattern, compare_font_names): Use xstrcasecmp.
11988
11989 * fontset.c (fs_query_fontset): Use xstrcasecmp.
11990
11991 * font.c (font_style_to_value, font_score): Use xstrcasecmp.
11992
11993 * dosfns.c (msdos_stdcolor_idx): Use xstrcasecmp.
11994
11995 2008-05-22 Kenichi Handa <handa@m17n.org>
11996
11997 * puresize.h (BASE_PURESIZE): Increase to 1220000.
11998
11999 * font.c (font_prop_validate_style): Adjust for the format
12000 change of font_style_table.
12001
12002 * w32font.c (w32font_open_internal): Call Ffont_xlfd_name with
12003 two args.
12004
12005 * xfaces.c (x_update_menu_appearance): Call Ffont_xlfd_name with
12006 two args.
12007
12008 2008-05-22 Stefan Monnier <monnier@iro.umontreal.ca>
12009
12010 * minibuf.c (keys_of_minibuf): Delete.
12011 * lisp.h (keys_of_minibuf): Delete.
12012 * emacs.c (main): Don't call keys_of_minibuf.
12013
12014 2008-05-22 Kenichi Handa <handa@m17n.org>
12015
12016 * ftfont.c (ftfont_resolve_generic_family): Rename from
12017 ftfont_list_generic_family. Return a single family for each
12018 generic family.
12019 (ftfont_spec_pattern): Add FC_FAMILY to pattern.
12020 (ftfont_list): Adjust for the change of ftfont_resolve_generic_family.
12021 Call font_add_log.
12022 (ftfont_match): Call font_add_log.
12023
12024 * font.h (Ffont_xlfd_name): EXFUN adjusted.
12025 (FONT_DEBUG): Define it.
12026 (font_add_log): Extern it.
12027 (font_assert): Rename from xassert.
12028
12029 * xfont.c (xfont_get_pcm): Change xassert to font_assert.
12030 (xfont_list_family): Call font_add_log.
12031 (xfont_match): Likewise.
12032 (memq_no_quit): Delete.
12033
12034 * fontset.c (fontset_from_font, Ffontset_info): Add the 2nd arg in
12035 call of Ffont_xlfd_name.
12036
12037 * xfaces.c (struct table_entry, slant_table, weight_table)
12038 (swidth_table): Move to font.c.
12039
12040 * font.c: Checking of FONT_DEBUG is moved to font.h. All calls of
12041 xassert are changed to font_assert. Delete many unused variables.
12042 (Vfont_weight_table, Vfont_slant_table, Vfont_width_table):
12043 New variables.
12044 (struct table_entry): Move from xfaces.c and modified.
12045 (weight_table, slant_table, width_table): Move from xfaces.c and
12046 contents adjusted for the change of struct table_entry.
12047 (font_style_to_value, font_style_symbolic): Adjust for the
12048 format change of font_style_table.
12049 (font_parse_family_registry): Don't overwrite existing foundry and
12050 family of font_spec.
12051 (font_score): Fix calculation of diff for sizes.
12052 (font_sort_entites): Call font_add_log.
12053 (font_delete_unmatched): Return a newly created list.
12054 (font_list_entities): Fix previous change. Call font_add_log.
12055 (font_matching_entity, font_open_entity, font_close_entity):
12056 Call font_add_log.
12057 (Ffont_xlfd_name): New arg FOLD-WILDCARDS.
12058 (Finternal_set_font_style_table): Delete.
12059 (BUILD_STYLE_TABLE): New macro.
12060 (build_style_table): New function.
12061 (Vfont_log, font_log_env_checked): New variables.
12062 (font_add_log): New function.
12063 (syms_of_font): Delete defsubr Sinternal_set_font_style_table.
12064 Declare Lisp variables "font-weight-table", "font-slant-table",
12065 "font-width-table", and "font-log". Initialize font_style_table.
12066
12067 2008-05-21 Dan Nicolaescu <dann@ics.uci.edu>
12068
12069 * xterm.c (x_set_frame_alpha): Move declarations before statements.
12070
12071 2008-05-21 Seiji Zenitani <zenitani@mac.com>
12072 Ryo Yoshitake <ryo@shiftmode.net>
12073
12074 * frame.c (Qalpha): Add a new frame parameter `alpha'.
12075 (Vframe_alpha_lower_limit): New variable.
12076 (x_set_alpha): New function.
12077
12078 * frame.h (Qalpha, Vframe_parameter_lower_limit): Export them.
12079
12080 * xfns.c (x-create-frame, Qalpha):
12081 Initialize the frame parameter `alpha'.
12082 * xterm.c (OPAQUE, OPACITY): New.
12083 (x_set_frame_alpha): New function.
12084 (frame_highlight, frame_unhighlight): Call x_set_frame_alpha.
12085
12086 * macfns.c (mac_frame_parm_handlers): A null handler for x_set_alpha.
12087 * w32fns.c (w32_frame_parm_handlers): Likewise.
12088
12089 2008-05-20 Jason Rumney <jasonr@gnu.org>
12090
12091 * w32font.c (add_font_entity_to_list): Don't add non-opentype
12092 truetype fonts to opentype list.
12093
12094 2008-05-20 Juanma Barranquero <lekktu@gmail.com>
12095
12096 * fontset.c (Ffontset_info): Doc fix.
12097 (syms_of_fontset) <font-encoding-charset-alist, use-default-ascent>:
12098 <ignore-relative-composition>: Fix typos in docstrings.
12099
12100 * font.c (syms-of-font) <font-encoding-alist>:
12101 (Ffontp, Ffont_make_gstring): Fix typos in docstrings.
12102 (Flist_fonts, Ffont_family_list, Ffont_fill_gstring, Fquery_font)
12103 (Ffont_otf_alternates): Doc fixes.
12104
12105 2008-05-20 Kenichi Handa <handa@m17n.org>
12106
12107 * Makefile.in (FONTSRC): Delete it. Change all $(FONTSRC) to
12108 font.h through out the file.
12109 (FONT_DRIVERS): Rename from FONTOBJ.
12110 (obj): Change $(FONTOBJ) to $(FONT_DRIVERS). Add font.o.
12111 (SOME_MACHINE_OBJECTS): Change $(FONTOBJ) to $(FONT_DRIVERS).
12112
12113 * emacs.c (main): Call syms_of_font unconditionally.
12114
12115 * font.h (find_font_encoding): Extern it.
12116
12117 * font.c (Vfont_encoding_alist, find_font_encoding): Move from
12118 fontset.c.
12119 (font_pixel_size) [! HAVE_WINDOW_SYSTEM]: Return 1.
12120 (font_open_entity): Update FRAME_X_DISPLAY_INFO (f)->n_fonts,
12121 FRAME_SMALLEST_CHAR_WIDTH (f), and FRAME_SMALLEST_FONT_HEIGHT (f)
12122 only when HAVE_WINDOW_SYSTEM is defined.
12123 (font_close_object): Update FRAME_X_DISPLAY_INFO (f)->n_fonts only
12124 when HAVE_WINDOW_SYSTEM is defined.
12125
12126 * fontset.c (Vfont_encoding_alist, find_font_encoding): Move to font.c.
12127 (syms_of_fontset): Move declaration of font-encoding-alist to font.c.
12128
12129 * xfaces.c: Include font.h unconditionally.
12130 (merge_face_ref, merge_face_vectors)
12131 (Finternal_set_lisp_face_attribute): Cancel the previous change.
12132
12133 2008-05-20 Stefan Monnier <monnier@iro.umontreal.ca>
12134
12135 * xdisp.c (select_frame_for_redisplay): Adjust for last change to
12136 indirect_variable.
12137 * eval.c (lisp_indirect_variable): New fun.
12138 (Fuser_variable_p): Use it.
12139
12140 2008-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
12141
12142 * lisp.h (indirect_variable):
12143 * data.c (indirect_variable, let_shadows_buffer_binding_p):
12144 Use Lisp_Symbol pointers rather than Lisp_Object.
12145 Adjust callers.
12146 * buffer.c (buffer_slot_type_mismatch): Use wrong-type-argument.
12147 To this end, change calling-convention.
12148
12149 * minibuf.c (Finternal_complete_buffer): Only strip out hidden buffers
12150 if some non-hidden buffers are selected by string&pred.
12151
12152 2008-05-19 Chong Yidong <cyd@stupidchicken.com>
12153
12154 * process.c (wait_reading_process_output): Always check status
12155 when in batch mode.
12156
12157 2008-05-19 Kenichi Handa <handa@m17n.org>
12158
12159 * font.c (font_list_entities): Fix handling of cache.
12160 (font_matching_entity): Likewise.
12161
12162 * ftfont.c (cs_iso8859_1): Delete.
12163 (ft_face_cache): New variable.
12164 (struct ftfont_info): New member fc_charset_idx.
12165 (ftfont_build_basic_charsets): Delete.
12166 (fc_charset_table): New variable.
12167 (ftfont_pattern_entity): New arg fc_charset_idx. Store (FILENAME
12168 . FC_CHARSET_IDX) as :font-entity property in the font entity.
12169 Callers changed.
12170 (ftfont_lookup_cache, ftfont_get_charset): New functions.
12171 (ftfont_spec_pattern): New argument fc_charset_idx.
12172 Check registry more rigidly. Change callers.
12173 (ftfont_open, ftfont_close, ftfont_has_char): Adjust for the
12174 change of :font-entity property of the font.
12175
12176 * xftfont.c (xftfont_open): Adjust for the change of :font-entity
12177 property of the font.
12178
12179 2008-05-18 Juanma Barranquero <lekktu@gmail.com>
12180
12181 * coding.c (Fcoding_system_p): Rename argument to match docstring.
12182 (Funencodable_char_position, Fcheck_coding_systems_region)
12183 (Fdecode_coding_string, Fencode_coding_string): Fix typos in docstrings.
12184 (Fdetect_coding_region, Fdetect_coding_string, Fencode_coding_region)
12185 (Ffind_operation_coding_system, Fset_coding_system_priority)
12186 (Fcoding_system_eol_type): Doc fixes.
12187
12188 2008-05-17 Glenn Morris <rgm@gnu.org>
12189
12190 * sysdep.c (child_setup_tty): Handle systems with NLDLY, without FFDLY.
12191
12192 2008-05-16 Eli Zaretskii <eliz@gnu.org>
12193
12194 * dired.c (Ffile_attributes): Shut up GCC warnings about st_uid
12195 and st_gid.
12196
12197 * frame.c (Fdelete_frame): Don't call font_update_drivers if
12198 HAVE_WINDOW_SYSTEM is not defined.
12199
12200 * xfaces.c (merge_face_ref, merge_face_vectors)
12201 (Finternal_set_lisp_face_attribute): Use FONT_*_INDEX only when
12202 HAVE_WINDOW_SYSTEM is defined.
12203 (Fface_font): Fix non-HAVE_WINDOW_SYSTEM case.
12204
12205 2008-05-16 Stefan Monnier <monnier@iro.umontreal.ca>
12206
12207 * keyboard.c (parse_menu_item): Do not cache key shortcut any more.
12208
12209 2008-05-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12210
12211 * macterm.c (x_draw_relief_rect): Remove unused variable `dpy'.
12212
12213 2008-05-15 Kenichi Handa <handa@m17n.org>
12214
12215 * font.c (font_find_for_lface): Reflect LFACE_FONT in the font
12216 preference.
12217
12218 2008-05-15 Glenn Morris <rgm@gnu.org>
12219
12220 * emacs.c (USAGE1, standard_args): Remove -disable-font-backend.
12221
12222 2008-05-15 Chong Yidong <cyd@stupidchicken.com>
12223
12224 * fns.c (init_fns): Don't initialize weak_hash_tables here.
12225 (init_weak_hash_tables): New fun. Initialize weak_hash_tables.
12226
12227 * alloc.c (init_alloc_once): Call init_weak_hash_tables.
12228
12229 2008-05-15 Kenichi Handa <handa@m17n.org>
12230
12231 * ftfont.c (ftfont_list): Downcase family name to check generic
12232 families.
12233
12234 * xfaces.c (Finternal_set_lisp_face_attribute): Be sure to make a
12235 font-spec for QCfont value.
12236
12237 * fontset.c (Fnew_fontset): Call font_unparse_xlfd with 256-byte
12238 buffer. Check the return value of it.
12239
12240 2008-05-14 Jason Rumney <jasonr@gnu.org>
12241
12242 * w32term.c (w32_get_glyph_overhangs): Remove.
12243 (w32_redisplay_interface): Use x_get_glyph_overhangs instead.
12244
12245 2008-05-14 Kenichi Handa <handa@m17n.org>
12246
12247 * font.c (font_prop_validate): Make nil a valid value.
12248 (font_clear_cache): Check if the cached vector of entities is nil
12249 or not.
12250
12251 2008-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12252
12253 * emacs.c (main_thread): Conditionalize on
12254 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
12255 (main) [FORWARD_SIGNAL_TO_MAIN_THREAD]: Initialize it.
12256
12257 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): New define.
12258 (main_thread, SIGNAL_THREAD_CHECK): Conditionalize on
12259 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
12260
12261 2008-05-14 Kenichi Handa <handa@m17n.org>
12262
12263 * coding.c (detect_coding_iso_2022): Ignore a coding category that
12264 has no corresponding coding system.
12265
12266 2008-05-14 Jason Rumney <jasonr@gnu.org>
12267
12268 * font.h (struct font) [WINDOWSNT]: Remove codepage member.
12269
12270 * w32font.h (w32font_open_internal): Update declaration.
12271
12272 * w32font.c (w32font_open_internal): Change last argument from
12273 w32font_info struct to font object. Fill in font object from
12274 font_entity. Get Outline metrics if possible. Use them to
12275 calculate underline position and thickness. Use xlfd name as name
12276 property. Don't set codepage.
12277 (w32font_open): Pass font_object to w32font_open_internal. Don't
12278 update dpyinfo->smallest_font_height and dpyinfo->smallest_char_width.
12279 (w32font_draw): Use s->font.
12280 (clear_cached_metrics): Don't clear non-existent blocks.
12281
12282 * w32term.c (w32_compute_glyph_string_overhangs): Don't compute if
12283 font was not found.
12284 (x_draw_glyph_string): Use underline position and thickness from font.
12285
12286 * w32uniscribe.c (uniscribe_open): Pass font_object to
12287 w32font_open_internal.
12288
12289 2008-05-14 Kenichi Handa <handa@m17n.org>
12290
12291 These changes are to delete all legacy font-handling codes, and
12292 make Emacs use only font-backends.
12293
12294 * Makefile.in: Delete USE_FONT_BACKEND conditionals.
12295 (frame.o, image.o, print.o): Depend on $(FONTSRC).
12296
12297 * makefile.w32-in (WIN32OBJ): Add w32reg.$(O), remove w32bdf.$(O).
12298
12299 * charset.h (Vcharset_non_preferred_head)
12300 (Vcurrent_iso639_language): Extern them.
12301
12302 * charset.c (Vcharset_non_preferred_head): New variable.
12303 (Vcurrent_iso639_language): New variable.
12304 (syms_of_charset): Declare it as a Lisp variable.
12305 (char_charset): Don't check non preferred charsets. As a last
12306 resort, return charset_unicode.
12307 (Fset_charset_priority): Update Vcharset_non_preferred_head.
12308
12309 * composite.c: Throughout the file, delete all USE_FONT_BACKEND
12310 conditionals. Don't check enable_font_backend. Delete all codes
12311 used only when USE_FONT_BACKEND is not defined.
12312
12313 * dispextern.h (struct glyph_string): Change type of `font' to
12314 `struct font *'.
12315 (struct glyph_string): New member underline_position and
12316 underline_thickness.
12317 (enum lface_attribute_index): Remove LFACE_AVGWIDTH_INDEX.
12318 (struct face): Change type of `font' to `struct font *'. Remove
12319 members `font_name', `font_info_id'.
12320 (per_char_metric, encode_char): Delete externs.
12321 (calc_pixel_width_or_height): Adjust the prototype.
12322
12323 * emacs.c (enable_font_backend): Delete extern.
12324 (main): Don't set enable_font_backend. Don't check the command
12325 line argument "-disable-font-backend".
12326
12327 * font.h (Qfont_spec, Qfont_entity, Qfont_object): Extern them.
12328 (enum font_property_index): New members FONT_DPI_INDEX,
12329 FONT_SPACING_INDEX, FONT_AVGWIDTH_INDEX, FONT_NAME_INDEX,
12330 FONT_FULLNAME_INDEX, FONT_FILE_INDEX, FONT_FORMAT_INDEX,
12331 FONT_OBJECT_MAX. Delete FONT_FRAME_INDEX.
12332 (FONT_WEIGHT_NUMERIC, FONT_SLANT_NUMERIC, FONT_WIDTH_NUMERIC)
12333 (FONT_WEIGHT_SYMBOLIC, FONT_SLANT_SYMBOLIC, FONT_WIDTH_SYMBOLIC)
12334 (FONT_WEIGHT_FOR_FACE, FONT_SLANT_FOR_FACE, FONT_WIDTH_FOR_FACE)
12335 (FONT_WEIGHT_NAME_NUMERIC, FONT_SLANT_NAME_NUMERIC)
12336 (FONT_WIDTH_NAME_NUMERIC, FONT_SET_STYLE): New macros.
12337 (struct font_spec, struct font_entity): New structs.
12338 (FONT_ENCODING_NOT_DECIDED): Moved from fontset.h.
12339 (struct font): Many members from old "struct font_info" moved to
12340 here. Members font and entity deleted.
12341 (FONT_SPEC_P, FONT_ENTITY_P, FONT_OBJECT_P, FONTP): Modified for
12342 the new font-related objects.
12343 (CHECK_FONT_SPEC, CHECK_FONT_ENTITY, CHECK_FONT_OBJECT)
12344 (CHECK_FONT_GET_OBJECT): Likewise.
12345 (XFONT_SPEC, XFONT_ENTITY, XFONT_OBJECT, XSETFONT): New macros.
12346 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved from font.h.
12347 (struct font_driver): New members case_sensitive anc check. Type
12348 of the member list and open changed.
12349 (enable_font_backend, font_symbolic_weight, font_symbolic_slant)
12350 (font_symbolic_width, font_find_object, font_get_spec)
12351 (font_set_lface_from_name): Delete extern.
12352 (Fcopy_font_spec, Fmerge_font_spec, Ffont_family_list): New EXFUNs.
12353
12354 * font.c: Include <strings.h>.
12355 (enable_font_backend): Delete it.
12356 (Qfont_spec, Qfont_entity, Qfont_object): New variables.
12357 (CHECK_VALIDATE_FONT_SPEC): Delete it.
12358 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved to font.h.
12359 (null_string): Delete it.
12360 (null_vector): Make it static.
12361 (font_family_alist): Delete it.
12362 (Qnormal): Extern it.
12363 (QCextra, QClanguage): Delete it.
12364 (QClang, QCavgwidth, QCfont_entity, QCfc_unknown_spec): New variables.
12365 (font_make_spec, font_make_entity, font_make_object)
12366 (font_intern_prop): Renamed from intern_downcase. Don't downcase
12367 the string. Callers changed.
12368 (font_pixel_size): Adjusted for the format change of font-related
12369 objects.
12370 (prop_name_to_numeric, prop_numeric_to_name): Delete them.
12371 (font_style_to_value, font_style_symbolic): New function.
12372 (build_font_family_alist): Delete it.
12373 (font_registry_charsets): Use Fassoc_string instead of
12374 assq_no_quit.
12375 (font_prop_validate_symbol): Don't return null_string.
12376 (font_prop_validate_style): Adjusted for the change of
12377 style-related values in a font vector.
12378 (font_property_table): Delete entries for QClanguage and
12379 QCantialias, add entries for QCavgwidth.
12380 (get_font_prop_index): Delete the 2nd argument FROM.
12381 (font_prop_validate): Arguments changed.
12382 (font_put_extra): Adjusted for the change of font-related objects.
12383 (font_expand_wildcards, font_parse_xlfd, font_unparse_xlfd)
12384 (font_parse_fcname, font_unparse_fcname)
12385 (font_prepare_composition): Likewise.
12386 (font_parse_family_registry): Renamed from font_merge_old_spec.
12387 (otf_open): Delete the 1st arg entity.
12388 (font_otf_capability): Adjusted for the above change.
12389 (font_score): New arg alternate_families. Adjusted for the change
12390 of font-related objects.
12391 (font_sort_entites): New arg best_only.
12392 (font_symbolic_weight, font_symbolic_slant, font_symbolic_width):
12393 Delete them.
12394 (font_match_p): Check alternate families.
12395 (font_find_object): Delete it.
12396 (font_check_object): New function.
12397 (font_clear_cache): Adjusted for the change of font-related objects.
12398 (font_delete_unmatched): New arg.
12399 (font_list_entities): Call font_driver->list with a spec that
12400 doesn't specify style-related properties.
12401 (font_matching_entity): Arguments changed. Caller changed.
12402 (font_open_entity): Adjusted for the change of font-related objects.
12403 (font_close_object, font_has_char, font_encode_char)
12404 (font_get_name, font_get_spec): Likewise.
12405 (font_spec_from_name, font_clear_prop, font_update_lface):
12406 New functions.
12407 (font_find_for_lface, font_open_for_lface, font_load_for_lface)
12408 (font_prepare_for_face, font_done_for_face, font_open_by_name)
12409 (font_at): Adjusted for the change of font-related objects.
12410 (font_range): New function.
12411 (Ffontp, Ffont_spec, Ffont_get, Ffont_put, Flist_fonts)
12412 (Ffont_xlfd_name): Adjusted for the change of font-related objects.
12413 (Fcopy_font_spec, Fmerge_font_spec): New function.
12414 (Ffont_family_list): Renamed from list-families.
12415 (Finternal_set_font_style_table): Arguments changed.
12416 (Ffont_fill_gstring, Ffont_shape_text, Fopen_font)
12417 (Ffont_drive_otf, Fquery_font, Ffont_match_p): Adjusted for the
12418 change of font-related objects.
12419 (syms_of_font): Delete "ifdef USE_FONT_BACKEND". DEFSYM new symbols.
12420
12421 * fontset.h (struct font_info): Delete it. Most members go to
12422 struct font.
12423 (FONT_ENCODING_NOT_DECIDED): Moved to font.h.
12424 (enum FONT_SPEC_INDEX): Delete it.
12425 (font_info, list_fonts_func, load_font_func, query_font_func)
12426 (set_frame_fontset_func, find_ccl_program_func)
12427 (get_font_repertory_func, new_fontset_from_font_name): Delete
12428 externs.
12429 (fontset_from_font_name): Extern it.
12430 (FS_LOAD_FONT, FONT_INFO_ID, FONT_INFO_FROM_ID)
12431 (FONT_INFO_FROM_FACE): Deleted.
12432 (face_for_font): Adjust prototype.
12433
12434 * fontset.c: Throughout the file, delete all USE_FONT_BACKEND
12435 conditionals. Don't check enable_font_backend. Delete all codes
12436 used only when USE_FONT_BACKEND is not defined.
12437 (get_font_info_func, list_font_func, load_font_func)
12438 (query_font_func, set_frame_fontset_func, find_ccl_program_func)
12439 (get_font_repertory_func): Delete them.
12440 (FONTSET_SPEC, FONT_DEF_NEW, FONT_DEF_SPEC, FONT_DEF_ENCODING)
12441 (FONT_DEF_REPERTORY, RFONT_DEF_FACE, RFONT_DEF_SET_FACE)
12442 (RFONT_DEF_FONT_DEF, RFONT_DEF_SPEC, RFONT_DEF_REPERTORY)
12443 (RFONT_DEF_OBJECT, RFONT_DEF_SET_OBJECT, RFONT_DEF_SCORE)
12444 (RFONT_DEF_SET_SCORE, RFONT_DEF_NEW): New macros.
12445 (fontset_compare_rfontdef): New function.
12446 (reorder_font_vector): Remove the argument CHARSET-ID. Sort
12447 rfont-defs by qsort. Adjusted for the change of font-group vector.
12448 (load_font_get_repertory): Deleted.
12449 (fontset_find_font): Use new macros to ref/set elements of
12450 font-def and rfont-def.
12451 (fontset_font): Fix the timing of remembering that no font for C.
12452 (free_face_fontset): Do nothing if the face has no fontset.
12453 (face_suitable_for_char_p): Use new macros to ref/set elements of
12454 rfont-def.
12455 (face_for_char): Likewise. Call face_for_char with font_object.
12456 (fs_load_font): Delete. Delete #pragma surrounding it.
12457 (fs_query_fontset): Use strcasecmp instead of strcmp.
12458 (generate_ascii_font_name): Adjusted for the format change of
12459 font-spec.
12460 (Fset_fontset_font): Likewise. Use new macros to set elements of
12461 font-def.
12462 (Fnew_fontset): Use font_unparse_xlfd to generate
12463 FONTSET_ASCII (fontset).
12464 (new_fontset_from_font_name): Deleted.
12465 (fontset_from_font): Renamed from new_fontset_from_font. Check if
12466 a fontset is already created for the font. FIx updating of
12467 Vfontset_alias_alist.
12468 (fontset_ascii_font): Deleted.
12469 (Ffont_info): Adjusted for the format change of font-spec.
12470 (Finternal_char_font): Likewise.
12471 (Ffontset_info): Likewise.
12472 (syms_of_fontset): Don't check load_font_func.
12473
12474 * fns.c (internal_equal): Handle PREV_FONT.
12475
12476 * frame.h: Delete USE_FONT_BACKEND conditional.
12477
12478 * frame.c: Throughout the file, delete all USE_FONT_BACKEND
12479 conditionals. Don't check enable_font_backend. Delete all codes
12480 used only when USE_FONT_BACKEND is not defined.
12481 (x_set_font): Call x_new_font, not x_new_fontset2.
12482 (x_set_font_backend): Use FRAME_FONT macro to check if a font is
12483 already set for the frame.
12484
12485 * ftfont.c (ftfont_pattern_entity): Argument FRAME removed. Make
12486 a font-entity by font_make_entity. Use font_intern_prop instead
12487 of intern_downcase. Use FONT_SET_STYLE to set a style-related
12488 font property. If a font is scalable, set avgwidth property to 0.
12489 Set font-entity property by font_put_extra.
12490 (ftfont_list_generic_family): Argument SPEC and REGISTRY removed.
12491 (ffont_driver): Adjusted for the change of struct font_driver.
12492 (ftfont_spec_pattern): New function.
12493 (ftfont_list): Return a list, not vector.
12494 (ftfont_match): Use ftfont_spec_pattern to get a pattern.
12495 (ftfont_list_family): Don't downcase names.
12496 (ftfont_free_entity): Deleted.
12497 (ftfont_open): Return a font-object. Adjusted for the change of
12498 struct font. Get underline_thickness and underline_position from
12499 font property. Don't update dpyinfo->smallest_font_height and
12500 dpyinfo->smallest_char_width.
12501 (ftfont_close): Don't free `struct font'.
12502 (ftfont_has_char): Adjusted for the format change of font-entity.
12503 (ftfont_encode_char, ftfont_text_extents): Likewise.
12504
12505 * ftxfont.c (ftxfont_list): Return a list, not vector.
12506 (ftxfont_open): Return a font-object. Adjusted for the change of
12507 struct font. Get underline_thickness and underline_position from
12508 font property. Don't update dpyinfo->smallest_font_height and
12509 dpyinfo->smallest_char_width.
12510 (ftxfont_close): Don't decrease FRAME_X_DISPLAY_INFO (f)->n_fonts.
12511 (ftxfont_draw): Adjusted for the change of struct font.
12512
12513 * image.c (image_ascent): Don't include "charset.h". Include
12514 "character.h" and "font.h".
12515
12516 * lisp.h (enum pvec_type): New member PREV_FONT.
12517 (Fassoc_string): EXFUN it.
12518
12519 * print.c: Include font.h.
12520 (print_object): Handle font-related objects.
12521
12522 * xdisp.c: Throughout the file, delete all USE_FONT_BACKEND
12523 conditionals. Don't check enable_font_backend. Delete all codes
12524 used only when USE_FONT_BACKEND is not defined.
12525 (handle_auto_composed_prop): Do nothing if it->f is not on a
12526 window system. Check how many following characters can be
12527 displayed by the same font.
12528 (calc_pixel_width_or_height): Type of the 4th arg is changed to
12529 'struct font *'.
12530 (get_char_face_and_encoding): Assign the whole encoding task to
12531 the `encode-char' method of a font driver.
12532 (fill_composite_glyph_string): Adjusted for the change of `struct
12533 face' and `struct glyph_string'.
12534 (fill_glyph_string): Likewise.
12535 (get_per_char_metric): Arguments changed.
12536 (x_get_glyph_overhangs): Adjusted for the change of `struct face'
12537 and `struct glyph_string'.
12538 (produce_stretch_glyph, calc_line_height_property)
12539 (x_produce_glyphs): Likewise.
12540
12541 * xfaces.c: Throughout the file, delete all USE_FONT_BACKEND
12542 conditionals. Don't check enable_font_backend. Delete all codes
12543 used only when USE_FONT_BACKEND is not defined. Use
12544 FONT_XXX_NAME_NUMERIC instead of face_numeric_xxx.
12545 (QCfoundry, QCadstyle, QCregistry, QCspacing, QCsize, QCavgwidth)
12546 (Qp): Extern them.
12547 (clear_font_table, load_face_font, xlfd_lookup_field_contents):
12548 Deleted.
12549 (struct font_name): Deleted.
12550 (xlfd_numeric_value, xlfd_symbolic_value): Deleted.
12551 (compare_fonts_by_sort_order): New function.
12552 (xlfd_numeric_slant, xlfd_symbolic_slant, xlfd_numeric_weight)
12553 (xlfd_symbolic_weight, xlfd_numeric_swidth, xlfd_symbolic_swidth):
12554 Deleted.
12555 (Fx_family_fonts): Use font_list_entities, and sort fonts by
12556 compare_fonts_by_sort_order.
12557 (Fx_font_family_list): Call Ffont_family_list.
12558 (face_numeric_value, face_numeric_weight, face_numeric_slant)
12559 (face_numeric_swidth, face_symbolic_value, face_symbolic_weight)
12560 (face_symbolic_slant, face_symbolic_swidth)
12561 (split_font_name_into_vector, build_font_name_from_vector)
12562 (xlfd_fixed_p, xlfd_point_size, pixel_point_size)
12563 (font_rescale_ratio, split_font_name, build_font_name)
12564 (free_font_names, sort_fonts, x_face_list_fonts)
12565 (face_font_available_p, sorted_font_list, cmp_font_names)
12566 (font_list_1, concat_font_list, font_list, remove_duplicates):
12567 Deleted.
12568 (Fx_list_fonts): Use Ffont_list.
12569 (LFACE_AVGWIDTH): Deleted.
12570 (check_lface_attrs): Don't check LFACE_AVGWIDTH. Check LFACE_FONT
12571 by FONTP.
12572 (lface_fully_specified_p): Don't check LFACE_AVGWIDTH.
12573 (set_lface_from_font_name): Delete it.
12574 (set_lface_from_font): Renamed from
12575 set_lface_from_font_and_fontset. Caller changed. Don't set
12576 LFACE_AVGWIDTH. Use FONT_XXX_FOR_FACE to get a symbol suitable
12577 for face.
12578 (merge_face_vectors): Copy font-spec if necessary.
12579 Clear properties of the font-spec if necessary.
12580 (merge_face_ref): Clear properties of the font-spec if necessary.
12581 (Finternal_set_lisp_face_attribute): Likewise.
12582 (set_font_frame_param): Use font_load_for_lface to load a
12583 font-object, and call Fmodify_frame_parameters with it.
12584 (x_update_menu_appearance): Don't check LFACE_AVGWIDTH. Get XLFD
12585 font name by Ffont_xlfd_name.
12586 (Finternal_lisp_face_attribute_values): Don't check QCweight,
12587 QCslant, and QCwidth.
12588 (Fface_font): Get a font name from font->props[FONT_NAME_INDEX].
12589 (lface_same_font_attributes_p): Don't check LFACE_AVGWIDTH.
12590 Compare fonts by EQ.
12591 (lookup_non_ascii_face): Deleted.
12592 (face_for_font): The 2nd argument changed.
12593 (x_supports_face_attributes_p): Don't check LFACE_AVGWIDTH.
12594 Check atomic font properties by case insensitive.
12595 (realize_non_ascii_face): Set face->overstrike correctly.
12596 (realize_x_face): Likewise. Check if LFACE_FONT is a font_object.
12597 (dump_realized_face): Get font name from
12598 font->props[FONT_NAME_INDEX]. Don't print font_info_id.
12599
12600 * xfns.c: Throughout the file, delete all USE_FONT_BACKEND
12601 conditionals. Don't check enable_font_backend. Delete all codes
12602 used only when USE_FONT_BACKEND is not defined.
12603 (xic_create_xfontset): Original code deleted and renamed from
12604 xic_create_xfontset2. Use FRAME_FONT, not FRAME_FONT_OBJECT.
12605 (x_make_gc): Don't set GCFont in GCs.
12606 (Fx_create_frame) [USE_LUCID]: Set xlwmenu_default_font to a font
12607 opened by "fixed".
12608 (syms_of_xfns): Don't set get_font_info_func, load_font_func,
12609 find_ccl_program_func, query_font_func, set_frame_fontset_func,
12610 get_font_repertory_func.
12611
12612 * xfont.c: Include <stdlib.h> and "ccl.h".
12613 (struct xfont_info): New structure.
12614 (xfont_query_font): Deleted.
12615 (xfont_find_ccl_program): Renamed from x_find_ccl_program and
12616 moved from xterm.c.
12617 (xfont_driver): Adjusted for the change of struct font_driver.
12618 (compare_font_names): New function.
12619 (xfont_list_pattern): Sort font names case insensitively. Make
12620 font_entity by calling font_make_entity. Avoid auto-scaled fonts.
12621 (xfont_list): Return a list, not vector.
12622 (xfont_match): If the font doesn't have QCname property, generate
12623 a name from the other font properties.
12624 (xfont_open): Return a font-object. Adjusted for the change of
12625 struct font. Get underline_thickness and underline_position from
12626 font property. Don't update dpyinfo->smallest_font_height and
12627 dpyinfo->smallest_char_width.
12628 (xfont_close): Don't free struct font.
12629 (xfont_prepare_face): Adjusted for the change of struct font.
12630 (xfont_done_face): Deleted.
12631 (xfont_has_char): Adjusted for the change of struct font.
12632 (xfont_encode_char, xfont_draw): Likewise.
12633 (xfont_check): New function.
12634
12635 * xftfont.c (xftfont_list): Adjusted for the change of `list'
12636 callback function.
12637 (xftfont_match): Adjusted for the format change of font-entity.
12638 (xftfont_open): Adjusted for the format change of font-entity and
12639 font-object. Adjusted for the change of struct font. Return a
12640 font-object. Don't update dpyinfo->smallest_font_height and
12641 dpyinfo->smallest_char_width.
12642 (xftfont_close): Block input while calling XftFontClose.
12643 (xftfont_prepare_face): Don't block input while calling
12644 xftfont_get_colors. Adjusted for the change of struct font.
12645 (xftfont_shape): Return value of error case fixed.
12646
12647 * xrdb.c (x_load_resources): Don't setup a fontset resource.
12648
12649 * xterm.h: Throughout the file, delete all USE_FONT_BACKEND
12650 conditionals.
12651 (FONT_WIDTH): Return (f)->max_width.
12652 (struct x_display_info): Delete member `font'.
12653 (x_list_fonts, x_get_font_info, x_load_font, x_query_font)
12654 (x_find_ccl_program, x_get_font_repertory): Delete externs.
12655 (struct x_output): Change type of `font' to `struct font *'.
12656
12657 * xterm.c: Throughout the file, delete all USE_FONT_BACKEND
12658 conditionals. Don't check enable_font_backend. Delete all codes
12659 used only when USE_FONT_BACKEND is not defined. Don't include ccl.h.
12660 (x_per_char_metric, x_encode_char): Deleted.
12661 (x_set_cursor_gc, x_set_mouse_face_gc): Don't set GCFont.
12662 (x_compute_glyph_string_overhangs): Adjusted for the change of
12663 `struct face'.
12664 (x_draw_glyph_string_foreground)
12665 (x_draw_composite_glyph_string_foreground): Likewise.
12666 (x_draw_glyph_string): Likewise. Use font->underline_position and
12667 font->underline_thickness.
12668 (x_new_font): Renamed from x_new_fontset2.
12669 (x_new_fontset, x_get_font_info, x_list_fonts): Deleted.
12670 (x_check_font): Call `check' method of a font driver.
12671 (x_font_min_bounds, x_compute_min_glyph_bounds, x_load_font)
12672 (x_query_font, x_get_font_repertory): Deleted.
12673 (x_find_ccl_program): Renamed and moved to xfont.c.
12674 (x_redisplay_interface): Adjusted for the change of `struct
12675 redisplay_interface'.
12676
12677 * w32fns.c: Throughout the file, delete all USE_FONT_BACKEND
12678 conditionals. Don't check enable_font_backend. Delete all codes
12679 used only when USE_FONT_BACKEND is not defined. Surround non-used
12680 code by "#ifdef OLD_FONT" and "endif".
12681 (Fw32_select_font): Use FONT_COMPAT to get old font structure.
12682
12683 * w32font.h (struct w32font_info): New member.
12684 (FONT_COMPAT): New macro.
12685 (w32font_open_internal): Prototype adjusted.
12686
12687 * w32gui.h (XGCValues): Surround `XFontStruct *font' by "if
12688 OLD_FONT" and "endif".
12689
12690 * w32font.c: Throughout the file, delete all USE_FONT_BACKEND
12691 conditionals. Don't check enable_font_backend. Delete all codes
12692 used only when USE_FONT_BACKEND is not defined.
12693 (w32font_open): Return a font-object. Make a font-object by
12694 font_make_object. Adjusted for the change of struct w32font_info.
12695 (w32font_close): Don't free struct font. Adjusted for the change
12696 of struct w32font_info.
12697 (w32font_encode_char, w32font_text_extents, w32font_draw):
12698 Adjusted for the change of struct w32font_info.
12699 (w32font_draw): Likewise.
12700 (w32font_list_internal): Return a list, not vector.
12701 (w32font_open_internal): Change the 4th arg to font-object.
12702 Adjusted for the change of struct w32font_info and font-object format.
12703 (add_font_name_to_list): Don't downcase names.
12704 (w32_enumfont_pattern_entity): Make a font-entity by
12705 font_make_entity. Adjusted for the format change of font-entity.
12706 Use FONT_SET_STYLE to set a style-related font property. If a
12707 font is scalable, set avgwidth property to 0. Set font-entity
12708 property by font_put_extra.
12709 (font_matches_spec): Adjusted for the format change of font-entity.
12710 (w32_weight_table, w32_decode_weight): New variables.
12711 (w32_encode_weight): New function.
12712 (fill_in_logfont): Adjusted for the format change of font-spec.
12713 (w32font_full_name): Use FONT_WEIGHT_SYMBOLIC to get a symbol
12714 weight value.
12715 (w32font_driver): Adjusted for the change of struct font_driver.
12716
12717 * w32term.h: Throughout the file, delete all USE_FONT_BACKEND
12718 conditionals. Don't check enable_font_backend. Surround non-used
12719 code by "#ifdef OLD_FONT" and "endif".
12720 (FONT_WIDTH, FONT_HEIGHT, FONT_BASE, FONT_DESCENT)
12721 (FONT_AVG_WIDTH): Adjusted for the change of struct font.
12722
12723 * w32term.c: Throughout the file, delete all USE_FONT_BACKEND
12724 conditionals. Don't check enable_font_backend. Delete all codes
12725 used only when USE_FONT_BACKEND is not defined. Surround non-used
12726 code by "#ifdef OLD_FONT" and "endif".
12727
12728 * w32uniscribe.c: Delete USE_FONT_BACKEND conditional.
12729 (uniscribe_open): Return value changed to font-object.
12730 Adjusted for the format change of font-object.
12731 (uniscribe_otf_capability): Adjusted for the change of struct font.
12732 (add_opentype_font_name_to_list): Don't downcase names.
12733 (uniscribe_font_driver): Adjusted for the change of struct
12734 font_driver.
12735
12736 2008-05-13 Chong Yidong <cyd@stupidchicken.com>
12737
12738 * dispnew.c (update_frame_1): Check if tty output is still valid
12739 before flushing it.
12740
12741 2008-05-13 Jan Djärv <jan.h.d@swipnet.se>
12742
12743 * xterm.c (handle_one_xevent): Don't pass buttons higher than 3
12744 to Gtk+ menus.
12745
12746 2008-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
12747
12748 * dired.c (file_name_completion): Tweak the code so as to always do it
12749 in a single pass. Tighten the scope of some variables.
12750
12751 * dired.c (Qdefault_directory): New var.
12752 (file_name_completion): Use it instead of Fexpand_file_name.
12753 (syms_of_dired): Initialize it.
12754
12755 2008-05-12 Stefan Monnier <monnier@iro.umontreal.ca>
12756
12757 * fileio.c (double_dollars): Remove dead code.
12758
12759 2008-05-10 Eli Zaretskii <eliz@gnu.org>
12760
12761 * dired.c (Ffile_attributes, Fdirectory_files_and_attributes):
12762 Mention w32-get-true-file-attributes in doc string.
12763
12764 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
12765
12766 2008-05-09 Glenn Morris <rgm@gnu.org>
12767
12768 * fileio.c (Fread_file_name): Remove reference to insdef, deleted
12769 2008-04-23.
12770
12771 2008-05-09 Eli Zaretskii <eliz@gnu.org>
12772
12773 Support for reporting owner and group of each file on MS-Windows:
12774 * dired.c (stat_uname, stat_gname): New functions, with special
12775 implementation for w32.
12776 (Ffile_attributes): Use them instead of getpwuid and getgrgid.
12777
12778 * w32.c: Rename the_passwd_* to dflt_passwd_*.
12779 (dflt_group_name): New static variable.
12780 (dflt_group): Rename from the_group.
12781 (init_user_info): Init dflt_group fields. Get user's group name
12782 from LookupAccountSid.
12783 (g_b_init_get_file_security, g_b_init_get_security_descriptor_owner)
12784 (g_b_init_get_security_descriptor_group, g_b_init_is_valid_sid):
12785 New initialization states.
12786 (globals_of_w32): Initialize them to zero. Initialize the default
12787 group name to "None".
12788 (GetFileSecurity_Name): New global var, the name of the function
12789 to call for GetFileSecurity.
12790 (GetFileSecurity_Proc, GetSecurityDescriptorOwner_Proc)
12791 (GetSecurityDescriptorGroup_Proc, IsValidSid_Proc): New typedefs.
12792 (get_file_security, get_security_descriptor_owner)
12793 (get_security_descriptor_group, is_valid_sid)
12794 (get_file_security_desc, get_rid, get_name_and_id)
12795 (get_file_owner_and_group): New functions.
12796 (stat): Use get_file_security_desc and get_file_owner_and_group to
12797 report the owner and primary group of each file. Don't ignore the
12798 high 32 bits of file's size, now that st_size is 64-bit wide.
12799 Fix test when to get true file attributes.
12800 (init_user_info): Use get_rid instead of equivalent inline code.
12801 (fstat): Don't ignore the high 32 bits of file's size.
12802
12803 2008-05-09 Chong Yidong <cyd@stupidchicken.com>
12804
12805 * image.c (png_load): Use correct bit-depth for setting background
12806 color.
12807
12808 2008-05-08 Eli Zaretskii <eliz@gnu.org>
12809
12810 * Makefile.in (lisp, shortlisp): Rename epa-file-hook.elc to
12811 epa-hook.elc.
12812
12813 2008-05-08 Juanma Barranquero <lekktu@gmail.com>
12814
12815 * font.c (Ffont_match_p): Don't use `iff' in docstring.
12816
12817 2008-05-07 Dan Nicolaescu <dann@ics.uci.edu>
12818
12819 * macfns.c (Fx_create_frame): Make a copy of frame parameters
12820 because the original parameters are in pure storage now.
12821 (mac_window): Remove unused params. Update callers.
12822
12823 2008-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
12824
12825 * lread.c (substitute_object_recurse): Use lower-level primitives.
12826 Don't signal errors when traversing sub-char-tables.
12827 Don't loop over all the possible characters when traversing char-tables.
12828
12829 * print.c (print_preprocess): Add sub-char-tables to the print-table,
12830 just like we do in print.c.
12831
12832 2008-05-05 Stefan Monnier <monnier@iro.umontreal.ca>
12833
12834 * minibuf.c (Ftry_completion): Remove code left over from when we used
12835 scmp instead of Fcompare_strings.
12836
12837 2008-05-04 Juanma Barranquero <lekktu@gmail.com>
12838
12839 * w32fns.c (Fw32_battery_status): Fix computation of %t (h:min) format.
12840
12841 2008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12842
12843 * image.c [USE_MAC_IMAGE_IO] (image_load_image_io):
12844 Create bitmap context in native byte order.
12845
12846 * macterm.c (XDrawLine)
12847 (XCreatePixmapFromBitmapData) [USE_MAC_IMAGE_IO]: Create bitmap
12848 context in native byte order.
12849
12850 2008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12851
12852 * config.in: Regenerate.
12853
12854 * image.c (PIX_MASK_DRAW, PIX_MASK_RETAIN) [USE_MAC_IMAGE_IO]:
12855 New definitions for Image I/O support.
12856 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
12857 (mac_create_cg_image_from_image, x_create_x_image_and_pixmap)
12858 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
12859 (mac_data_provider_release_data, image_load_image_io)
12860 [USE_MAC_IMAGE_IO]: New functions.
12861 (CGImageCreateWithPNGDataProviderProcType) [MAC_OSX]: Remove typedef.
12862 (MyCGImageCreateWithPNGDataProvider) [MAC_OSX]: Remove variable.
12863 (init_image_func_pointer) [MAC_OSX]: Remove function.
12864 (image_load_quartz2d) [MAC_OSX]: Check availability of
12865 CGImageCreateWithPNGDataProvider at compile time.
12866 Use lowercase `false' for boolean constant.
12867 (png_load, jpeg_load, tiff_load, gif_load) [USE_MAC_IMAGE_IO]:
12868 Use image_load_image_io.
12869 (png_load) [!USE_MAC_IMAGE_IO && MAC_OSX]:
12870 Don't check MyCGImageCreateWithPNGDataProvider.
12871 (init_image) [MAC_OSX && TARGET_API_MAC_CARBON]:
12872 Don't call init_image_func_pointer.
12873
12874 * macgui.h (Pixmap) [USE_MAC_IMAGE_IO]: New definition for Image I/O.
12875
12876 * macterm.c (mac_cg_color_space_rgb) [USE_CG_DRAWING]:
12877 Make variable non-static.
12878 (XDrawLine, XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
12879 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
12880
12881 * macterm.h (ARGB_TO_ULONG, ALPHA_FROM_ULONG): New macros.
12882 (RED_FROM_ULONG): Mask off higher bits.
12883 (mac_cg_color_space_rgb) [USE_MAC_IMAGE_IO]: New extern.
12884
12885 * s/darwin.h [HAVE_CARBON && HAVE_AVAILABILITYMACROS_H]:
12886 Include AvailabilityMacros.h.
12887 (USE_MAC_IMAGE_IO, LIBS_IMAGE) [HAVE_CARBON]: New defines.
12888 (LIBS_CARBON) [HAVE_CARBON]: Use LIBS_IMAGE.
12889
12890 2008-05-03 Stefan Monnier <monnier@iro.umontreal.ca>
12891
12892 * chartab.c (Fset_char_table_range): If range is t, really set all
12893 chars to that value.
12894
12895 2008-05-03 Eli Zaretskii <eliz@gnu.org>
12896
12897 * dired.c (Ffile_attributes): Don't allow the device number become
12898 negative.
12899
12900 2008-05-02 Daiki Ueno <ueno@unixuser.org>
12901
12902 * Makefile.in (lisp, shortlisp): Add epa-file-hook.elc.
12903
12904 2008-05-02 Juri Linkov <juri@jurta.org>
12905
12906 * minibuf.c (Fread_from_minibuffer, Fread_string, Fread_command)
12907 (Fread_variable, Fread_buffer, Fcompleting_read): Document the
12908 DEFAULT argument as a list of default values in docstrings.
12909
12910 2008-05-01 Chong Yidong <cyd@stupidchicken.com>
12911
12912 * puresize.h (BASE_PURESIZE): Increase to 1210000.
12913
12914 2008-05-01 Martin Rudalics <rudalics@gmx.at>
12915
12916 * dispnew.c (change_frame_size_1): Preserve small windows when
12917 shrinking frames by calling set_window_height|width with third
12918 arg 2.
12919
12920 * window.h (struct window): Replace field too_small_ok by field
12921 resize_proportionally.
12922
12923 * window.c (make_window): Initialize resize_proportionally.
12924 (enlarge_window): Temporarily set resize_proportionally to make
12925 sure that shrink_windows does scale the window proportionally.
12926 (shrink_windows): When window has resize_proportionally set try
12927 to shrink it proportionally by stealing from other windows.
12928 (struct saved_window, Fset_window_configuration)
12929 (compare_window_configurations): Handle resize_proportionally.
12930 (WINDOW_TOTAL_SIZE): New macro.
12931 (window_min_size, shrink_windows, size_window): Use it.
12932 (check_min_window_sizes): Remove. Invalid values of
12933 window-min-height|width are handled by window_min_size_2 now.
12934 (size_window, Fsplit_window, enlarge_window)
12935 (adjust_window_trailing_edge, grow_mini_window): Don't call
12936 check_min_window_sizes.
12937 (window_min_size_2, window_min_size_1, window_min_size):
12938 New argument safe_p for retrieving "safe" minimum sizes.
12939 (Fdisplay_buffer, Fsplit_window, enlarge_window)
12940 (adjust_window_trailing_edge, grow_mini_window):
12941 Adjust arguments of window_min_size... functions.
12942 (shrink_windows): Argument min_size removed. New argument
12943 safe_p allows shrinking windows to their safe minimum sizes.
12944 Calculate minimum size and decide whether a window shall be
12945 deleted for each window individually.
12946 (size_window): When nodelete_p equals 2, tell shrink_windows to
12947 delete windows only if their new minimum size is no more safe.
12948 (shrink_window_lowest_first): Call window_min_size_1 to make
12949 sure to preserve modeline of bottom-most window when resizing
12950 the minibuffer.
12951 (Fset_window_configuration, Fcurrent_window_configuration)
12952 (compare_window_configurations): Do not handle
12953 window-min-height|width any more.
12954 (syms_of_window): Clarify window-min-height|width doc-strings.
12955
12956 2008-04-30 Stefan Monnier <monnier@iro.umontreal.ca>
12957
12958 * dired.c (file_name_completion): Fix up the encoding/decoding issue
12959 some more. Copy some of the code from Ftry_completions.
12960 Remove special case code that dates back to initial revision when the
12961 slash was only added when necessary and that can't trigger nowadays.
12962
12963 2008-04-27 Kenichi Handa <handa@m17n.org>
12964
12965 * font.c (font_prop_validate): Signal `error' instead of `font'.
12966
12967 2008-04-29 Jason Rumney <jasonr@gnu.org>
12968
12969 * w32fns.c (Fw32_battery_status): New defun.
12970 (syms_of_w32fns): Defsubr it.
12971
12972 2008-04-28 Andreas Schwab <schwab@suse.de>
12973
12974 * dired.c (file_name_completion): Fix another mixing of encoded
12975 and decoded names.
12976
12977 2008-04-28 Juanma Barranquero <lekktu@gmail.com>
12978
12979 * w32fns.c (Fw32_define_rgb_color): Fix typo in docstring.
12980
12981 2008-04-27 Juanma Barranquero <lekktu@gmail.com>
12982
12983 * fringe.c (Fdefine_fringe_bitmap): Doc fix.
12984
12985 2008-04-27 Andreas Schwab <schwab@suse.de>
12986
12987 * dired.c (file_name_completion): Fix inappropriate mixing of
12988 encoded and decoded names.
12989
12990 * xterm.c (XTread_socket): Fix use of uninitialized variable.
12991
12992 * puresize.h (BASE_PURESIZE): Increase to 1200000.
12993
12994 2008-04-26 Eli Zaretskii <eliz@gnu.org>
12995
12996 * dired.c (Ffile_attributes) [WINDOWSNT]: Undo change from
12997 2008-03-31, it's not needed anymore with `struct stat' definition
12998 on nt/inc/sys/stat.h. Undo changes from 2007-01-12 and 2007-01-13
12999 for the same reasons.
13000
13001 2008-04-25 Dennis Gilmore <ausil@fedoraproject.org> (tiny change)
13002
13003 * m/sparc.h: Additional redefinitions for GNU/Linux.
13004
13005 2008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13006
13007 * macterm.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: New variable.
13008 (syms_of_macterm) [USE_MAC_TSM]: Defvar it.
13009 (Qmouse_drag_overlay) [MAC_OSX]: New variable.
13010 (syms_of_macterm) [MAC_OSX]: Intern and staticpro it.
13011 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
13012 (mac_ax_selected_text_range) [MAC_OSX]: New functions.
13013 (mac_ax_number_of_characters) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
13014 Likewise.
13015
13016 * mactoolbox.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: Add extern.
13017 (fast_find_position, x_y_to_hpos_vpos, mac_ax_selected_text_range)
13018 (mac_ax_number_of_characters): Add externs.
13019 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
13020 [USE_MAC_TSM]: Likewise.
13021 (mac_handle_text_input_event) [MAC_OSX]:
13022 Handle kEventTextInputOffsetToPos for no active input area case.
13023 Handle kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
13024 (mac_handle_document_access_event)
13025 [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: New function.
13026 (install_application_handler) [MAC_OSX]: Register handlers for
13027 kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
13028 (install_application_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
13029 Register mac_handle_document_access_event.
13030
13031 * xdisp.c (x_y_to_hpos_vpos, fast_find_position) [HAVE_CARBON]:
13032 Make functions non-static.
13033
13034 2008-04-23 Stefan Monnier <monnier@iro.umontreal.ca>
13035
13036 * fileio.c (Vread_file_name_function, Vread_file_name_predicate)
13037 (read_file_name_completion_ignore_case, insert_default_directory)
13038 (Qdefault_directory): Move to minibuffer.el.
13039 (Fread_file_name): Call the new `read-file-name' instead.
13040
13041 2008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13042
13043 * mac.c (create_apple_event) [TARGET_API_MAC_CARBON]:
13044 Make function non-static.
13045 (create_apple_event_from_event_ref) [TARGET_API_MAC_CARBON]:
13046 Remove function.
13047 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
13048 Move to mactoolbox.c.
13049 (mac_event_parameters_to_lisp) [TARGET_API_MAC_CARBON]: New function.
13050
13051 * macgui.h (CGFloat) [!CGFLOAT_DEFINED]: New typedef.
13052 (mac_rect_make): New macro.
13053
13054 * macterm.c (mac_draw_image_string_atsui) [MAC_OSX]: Use CGFloat
13055 instead of float.
13056 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
13057 (init_cg_color, mac_draw_line, mac_draw_cg_image, XSetForeground)
13058 (XSetBackground) [USE_CG_DRAWING]: Likewise.
13059 (mac_draw_image_string_atsui) [MAC_OSX]: Use mac_rect_make instead of
13060 CGRectMake.
13061 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
13062 (mac_erase_rectangle, mac_draw_cg_image, mac_fill_rectangle)
13063 (mac_set_clip_rectangles) [USE_CG_DRAWING]: Likewise.
13064 (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
13065 instead of WindowRef in argument type.
13066 (XCreatePixmap) [!MAC_OS8]: Don't call SetPortWindowPort.
13067 (mac_invert_rectangle): Use CGContextSetBlendMode if available.
13068 (mac_set_clip_rectangles, mac_reset_clip_rectangles): Take argument F
13069 instead of DISPLAY. All uses changed.
13070 (mac_handle_size_change): Don't call SET_FRAME_GARBAGED.
13071 (x_calc_absolute_position): Simplify so as not to use
13072 FRAME_PIXEL_WIDTH/FRAME_PIXEL_HEIGHT.
13073
13074 * macterm.h (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
13075 instead of WindowRef in argument type.
13076 (create_apple_event_from_event_ref, create_apple_event_from_drag_ref)
13077 [TARGET_API_MAC_CARBON]: Remove externs.
13078 (create_apple_event, mac_event_parameters_to_lisp)
13079 [TARGET_API_MAC_CARBON]: Add externs.
13080
13081 * mactoolbox.c (Vmac_ts_script_language_on_focus)
13082 (saved_ts_script_language_on_focus) [USE_MAC_TSM]: Remove externs.
13083 (XTread_socket) [USE_MAC_TOOLBAR]: Select window if its structure part
13084 is clicked.
13085 (x_activate_menubar): Remove extern for saved_menu_event_location.
13086 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
13087 Move from mac.c.
13088
13089 2008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13090
13091 * alloc.c [!SYSTEM_MALLOC && !SYNC_INPUT] (uninterrupt_malloc)
13092 [HAVE_GTK_AND_PTHREAD && !DOUG_LEA_MALLOC]: Don't use recursive mutex.
13093
13094 2008-04-23 Jason Rumney <jasonr@gnu.org>
13095
13096 * w32.c (stat): When Vw32_get_true_file_attributes is Qlocal, get
13097 attributes only for local files.
13098
13099 * w32proc.c (syms_of_ntproc): Change Vw32_get_true_file attributes
13100 default to Qlocal.
13101
13102 2008-04-22 Juri Linkov <juri@jurta.org>
13103
13104 * buffer.c (Fswitch_to_buffer): Change interactive spec to call
13105 read-buffer-to-switch instead of using the letter "B".
13106
13107 2008-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
13108
13109 * fileio.c (Qdefault_directory): New variable.
13110 (Fread_file_name): Use it to pass `dir' to the completion functions.
13111
13112 2008-04-20 Chong Yidong <cyd@stupidchicken.com>
13113
13114 * xdisp.c (pos_visible_p): Check if iterator stops on a display string.
13115
13116 2008-04-19 Stefan Monnier <monnier@iro.umontreal.ca>
13117
13118 * keyboard.c (Vpre_help_message): Remove.
13119 (show_help_echo): Remove default C code.
13120
13121 * dired.c (directory_files_internal, file_name_completion):
13122 Only call ENCODE_FILE if the string is indeed decoded.
13123
13124 2008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
13125
13126 * Makefile.in (TOOLKIT_DEFINES): Remove.
13127 (LIBW): Use a bit less #if, remove left over OPEN_LOOK stuff.
13128
13129 2008-04-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13130
13131 * Makefile.in (MAC_OBJ): Add mactoolbox.o.
13132 (mactoolbox.o): New target.
13133
13134 * mac.c [MAC_OSX] (select_and_poll_event, sys_select):
13135 Use mac_run_loop_run_once instead of CFRunLoopRunInMode.
13136
13137 * macfns.c (x_set_background_color, mac_window, x_create_tip_frame):
13138 Use mac_set_frame_window_background instead of XSetWindowBackground.
13139 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]:
13140 Use mac_is_window_toolbar_visible instead of IsWindowToolbarVisible.
13141 (x_set_name_internal) [TARGET_API_MAC_CARBON]: Use mac_set_window_title
13142 instead of SetWindowTitleWithCFString.
13143 (mac_update_proxy_icon) [TARGET_API_MAC_CARBON]: Remove BLOCK_INPUT.
13144 Move function to mactoolbox.c.
13145 (mac_update_title_bar) [TARGET_API_MAC_CARBON]:
13146 Use mac_set_window_modified instead of SetWindowModified.
13147 Add BLOCK_INPUT around mac_set_window_modified/mac_update_proxy_icon.
13148 (mac_window, x_create_tip_frame): Use mac_create_frame_window.
13149 (Fx_focus_frame): Use mac_front_non_floating_window instead of
13150 FrontNonFloatingWindow. Use mac_activate_window instead of
13151 ActivateWindow. Use mac_active_non_floating_window instead of
13152 ActiveNonFloatingWindow.
13153 (show_hourglass, hide_hourglass) [TARGET_API_MAC_CARBON]:
13154 Use mac_show_hourglass and mac_hide_hourglass.
13155 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use mac_get_global_mouse
13156 instead of GetGlobalMouse.
13157 (Fx_show_tip): Use mac_move_window/mac_size_window/mac_show_window
13158 instead of MoveWindow/SizeWindow/ShowWindow, respectively.
13159 Use mac_bring_window_to_front instead of BringToFront.
13160 (Qfile_name_history) [TARGET_API_MAC_CARBON]: Move extern to
13161 mactoolbox.c.
13162 (Fx_file_dialog) [TARGET_API_MAC_CARBON]: Move function body to
13163 mac_file_dialog in mactoolbox.c. Use mac_file_dialog.
13164 (mac_nav_event_callback) [TARGET_API_MAC_CARBON]: Move function to
13165 mactoolbox.c.
13166
13167 * macgui.h [!HAVE_CARBON]: Include Quickdraw.h instead of QuickDraw.h.
13168 (XtPointer): Move typedef from macmenu.c.
13169 (enum button_type): Move enum from macmenu.c.
13170 (widget_value): Move typedef from macmenu.c.
13171 (M_APPLE, I_ABOUT, EXTRA_STACK_ALLOC, ARGV_STRING_LIST_ID)
13172 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
13173 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
13174 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
13175 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
13176 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
13177 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
13178 (DIALOG_ICON_TOP_MARGIN): Move defines from macmenu.c.
13179 (Selection): Move typedef from macselect.c.
13180 (RAM_TOO_LARGE_ALERT_ID, ABOUT_ALERT_ID) [MAC_OS8]: Move defines from
13181 macterm.c.
13182 (mac_set_window_title, mac_set_window_modified, mac_is_window_visible)
13183 (mac_is_window_collapsed, mac_bring_window_to_front)
13184 (mac_send_window_behind, mac_hide_window, mac_show_window)
13185 (mac_collapse_window, mac_front_non_floating_window)
13186 (mac_active_non_floating_window, mac_activate_window)
13187 (mac_move_window_structure, mac_move_window, mac_size_window)
13188 (mac_get_global_mouse, mac_is_window_toolbar_visible): New defines.
13189
13190 * macmenu.c [!TARGET_API_MAC_CARBON]: Move includes to mactoolbox.c.
13191 (enum mac_menu_kind): Move enum to mactoolbox.c.
13192 (min_menu_id): Move variable to mactoolbox.c.
13193 (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]: Likewise.
13194 (DIALOG_WINDOW_RESOURCE): Move define to mactoolbox.c.
13195 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
13196 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
13197 [TARGET_API_MAC_CARBON]: Likewise.
13198 (XtPointer): Move typedef to macgui.h.
13199 (enum button_type): Move enum to macgui.h.
13200 (widget_value): Move typedef to macgui.h.
13201 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
13202 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
13203 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
13204 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
13205 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
13206 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
13207 (DIALOG_ICON_TOP_MARGIN): Move defines to macgui.h.
13208 (popup_activated_flag): Make variable non-static.
13209 (x_activate_menubar, install_menu_quit_handler, pop_down_menu)
13210 (add_menu_item, fill_menu, dispose_menus):
13211 Move functions to mactoolbox.c.
13212 (restore_show_help_function, menu_target_item_handler)
13213 (install_menu_target_item_handler, mac_handle_dialog_event)
13214 (install_dialog_event_handler, pop_down_dialog, create_and_show_dialog)
13215 [TARGET_API_MAC_CARBON]: Likewise.
13216 (menu_quit_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: Likewise.
13217 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
13218 (find_and_call_menu_selection, name_is_separator): Make function
13219 non-static.
13220 (Vshow_help_function, timer_check) [TARGET_API_MAC_CARBON]: Move extern
13221 to mactoolbox.c.
13222 (set_frame_menubar): Don't call install_menu_quit_handler.
13223 (menu_item_selection): New variable.
13224 (mac_menu_show): Use create_and_show_popup_menu.
13225 (create_and_show_dialog) [TARGET_API_MAC_CARBON]: Don't return
13226 selection but set variable menu_item_selection. All uses changed.
13227 (mac_fill_menubar): Rename from fill_menubar. All uses changed.
13228 Call install_menu_quit_handler. Move to mactoolbox.c.
13229
13230 * macselect.c [!TARGET_API_MAC_CARBON]: Don't include Scrap.h.
13231 (Selection): Move typedef to macgui.h.
13232 (Vselection_converter_alist, Qmac_scrap_name, Qmac_ostype)
13233 (Vmac_apple_event_map, Qmac_apple_event_class, Qmac_apple_event_id):
13234 Make variables non-static.
13235 (Vmac_dnd_known_types) [TARGET_API_MAC_CARBON]: Likewise.
13236 (mac_handle_apple_event, cleanup_all_suspended_apple_events):
13237 Make functions non-static.
13238 (Vmac_service_selection) [MAC_OSX]: Likewise.
13239 (mac_get_selection_from_symbol, get_flavor_type_from_symbol)
13240 (mac_valid_selection_target_p, mac_clear_selection)
13241 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
13242 (mac_put_selection_value, mac_selection_has_target_p)
13243 (mac_get_selection_value, mac_get_selection_target_list)
13244 (init_apple_event_handler, install_drag_handler, remove_drag_handler):
13245 Move functions to mactoolbox.c.
13246 (mac_do_track_drag, mac_do_receive_drag) [TARGET_API_MAC_CARBON]:
13247 Likewise.
13248 (copy_scrap_flavor_data, mac_handle_service_event)
13249 (install_service_handler) [MAC_OSX]: Likewise.
13250 (syms_of_macselect) <Vmac_dnd_known_types>:
13251 Use mac_dnd_default_known_types.
13252
13253 * macterm.h (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y):
13254 Move to mactoolbox.c.
13255 (HOURGLASS_WIDTH, HOURGLASS_HEIGHT): Change to 15.
13256 (Fx_selection_owner_p): Add EXFUN.
13257 (install_window_handler, remove_window_handler, XSetWindowBackground):
13258 Remove externs.
13259 (do_apple_menu) [!TARGET_API_MAC_CARBON]: Likewise.
13260 (mac_prepare_for_quickdraw) [USE_CG_DRAWING]: Likewise.
13261 (x_raise_frame, x_lower_frame, mac_alert_sound_play)
13262 (install_application_handler, mac_get_frame_bounds, mac_get_frame_mouse)
13263 (mac_convert_frame_point_to_global, mac_set_frame_window_background)
13264 (mac_update_begin mac_update_end, mac_frame_up_to_date, x_flush)
13265 (mac_create_frame_window, mac_dispose_frame_window, mac_begin_clip)
13266 (mac_end_clip, mac_create_scroll_bar, mac_dispose_scroll_bar)
13267 (mac_set_scroll_bar_bounds, mac_redraw_scroll_bar, mac_fill_menubar)
13268 (create_and_show_popup_menu, mac_get_selection_from_symbol)
13269 (mac_valid_selection_target_p, mac_clear_selection)
13270 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
13271 (mac_put_selection_value, mac_selection_has_target_p)
13272 (mac_get_selection_value, mac_get_selection_target_list): Add externs.
13273 (mac_update_proxy_icon, mac_show_hourglass, mac_hide_hourglass)
13274 (mac_reposition_hourglass, mac_file_dialog, create_and_show_dialog)
13275 (mac_dnd_default_known_types) [TARGET_API_MAC_CARBON]: Likewise.
13276 (mac_run_loop_run_once) [MAC_OSX]: Likewise.
13277 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
13278 (mac_begin_cg_clip, mac_end_cg_clip) [USE_CG_DRAWING]: Likewise.
13279 (x_set_toolkit_scroll_bar_thumb) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
13280 (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
13281
13282 * mactoolbox.c: New file.
13283
13284 2008-04-18 Jason Rumney <jasonr@gnu.org>
13285
13286 * dired.c (Ffile_attributes) [WINDOWSNT]: Cast uid and gid to unsigned.
13287
13288 2008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
13289
13290 * character.c (Fmultibyte_char_to_unibyte):
13291 Return latin1 chars unchanged.
13292
13293 * fileio.c (Fexpand_file_name): Refine last fix so `nm' is only
13294 relocated if it points to `name'.
13295
13296 2008-04-17 Kenichi Handa <handa@m17n.org>
13297
13298 * data.c (Faset): Allow setting a multibyte character in an
13299 ASCII-only unibyte string.
13300
13301 * lisp.h (STRING_SET_MULTIBYTE): New macro.
13302
13303 2008-04-16 Stefan Monnier <monnier@iro.umontreal.ca>
13304
13305 * Makefile.in: Don't use HAVE_GTK and don't -DUSE_GTK since it's now
13306 done in config.h.
13307
13308 2008-04-16 Juanma Barranquero <lekktu@gmail.com>
13309
13310 * character.c (Fchar_bytes, Fchar_width, Fstring_width)
13311 (Fchar_direction): Add usage in the docstring.
13312
13313 2008-04-15 Chong Yidong <cyd@stupidchicken.com>
13314
13315 * keyboard.c (read_key_sequence): Remove always-true checks.
13316
13317 2008-04-14 Jason Rumney <jasonr@gnu.org>
13318
13319 * w32font.c (w32font_open_internal): Set max_bounds.descent in
13320 compatibility struct, for better underline positioning.
13321
13322 2008-04-13 David Hansen <david.hansen@gmx.net>
13323
13324 * dbusbind.c (dbus-get-unique-name): Remove extra copying of name
13325 string.
13326
13327 2008-04-12 Dan Nicolaescu <dann@ics.uci.edu>
13328
13329 * m/hp800.h (XUINT, XSET): Remove.
13330
13331 2008-04-12 Juanma Barranquero <lekktu@gmail.com>
13332
13333 * fileio.c (Fexpand_file_name): Add declaration for `p' missing in
13334 previous change.
13335
13336 2008-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
13337
13338 * fileio.c (Fexpand_file_name): Tighten the scope of `p' and `o' vars.
13339 Relocate `nm' after calling DECODE_FILE, in case the GC was run.
13340
13341 2008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
13342
13343 * keymap.h (map_keymap_canonical): Declare.
13344 * xmenu.c (single_keymap_panes): Use it.
13345
13346 2008-04-11 Glenn Morris <rgm@gnu.org>
13347
13348 * eval.c (Fdefvaralias): If the alias is bound and the target is not,
13349 set the target's value to that of the alias.
13350
13351 2008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
13352
13353 * term.c (set_tty_color_mode): Left over typo.
13354
13355 2008-04-10 Michael Albinus <michael.albinus@gmx.de>
13356
13357 * fileio.c (Fmake_symbolic_link): Surround code by #ifdef S_IFLNK
13358 only after check for file name handler functions. Signal, when
13359 native functionality is not supported.
13360 (syms_of_fileio): Declare it unconditionally.
13361
13362 2008-04-10 Jason Rumney <jasonr@gnu.org>
13363
13364 * w32menu.c (is_simple_dialog, simple_dialog_show): New functions.
13365 (Fx_popup_dialog): Handle simple yes/no questions as dialogs.
13366
13367 * w32.c (logon_network_drive): Also logon to remote drives that
13368 are mapped to drive letters.
13369
13370 2008-04-10 Glenn Morris <rgm@gnu.org>
13371
13372 * xdisp.c (truncate-partial-width-windows): Doc fix.
13373
13374 2008-04-10 Stefan Monnier <monnier@iro.umontreal.ca>
13375
13376 * fileio.c (read_file_name_cleanup, Fread_file_name_internal):
13377 Move functions to minibuffer.el.
13378 (syms_of_fileio): Don't declare them.
13379
13380 2008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
13381
13382 * minibuf.c (Vcompletion_auto_help): Move to minibuffer.el.
13383 (syms_of_minibuf): Remove its initialization.
13384
13385 * minibuf.c (temp_echo_area_glyphs): Remove unused function.
13386
13387 2008-04-09 Juanma Barranquero <lekktu@gmail.com>
13388
13389 * editfns.c (Ffield_string_no_properties): Fix typo in docstring.
13390
13391 2008-04-09 Jason Rumney <jasonr@gnu.org>
13392
13393 * makefile.w32-in (distclean): Delete makefile too.
13394 (maintainer-clean): New target.
13395
13396 * xdisp.c (redisplay_internal) [!WINDOWSNT]: Conditionalize last change.
13397
13398 * w32term.c (w32_compute_glyph_string_overhangs): Compute overhangs
13399 for new font backend and composite cases.
13400
13401 2008-04-09 Jan Djärv <jan.h.d@swipnet.se>
13402
13403 * atimer.c (alarm_signal_handler): Call run_timers if not SYNC_INPUT.
13404 Most of the code moved to run_timers.
13405 (do_pending_atimers): Call run_timers.
13406 (run_timers): New function.
13407
13408 * sysdep.c (emacs_write): If SYNC_INPUT and pending_atimers,
13409 run atimers.
13410
13411 * process.c (wait_reading_process_output): The same as above.
13412
13413 2008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
13414
13415 * minibuf.c (last_exact_completion): Remove variable.
13416 (Fdelete_minibuffer_contents, do_completion, Fminibuffer_complete)
13417 (complete_and_exit_1, complete_and_exit_2)
13418 (Fminibuffer_complete_and_exit, Fminibuffer_complete_word)
13419 (Fdisplay_completion_list, display_completion_list_1)
13420 (Fminibuffer_completion_help, Fself_insert_and_exit)
13421 (Fexit_minibuffer, Fminibuffer_message): Move functions to
13422 minibuffer.el.
13423 (syms_of_minibuf): Remove corresponding initializations.
13424
13425 * keyboard.c (Qdeactivate_mark): New var.
13426 (command_loop_1): Use it to call `deactivate-mark'.
13427 (syms_of_keyboard): Initialize it.
13428
13429 * xdisp.c (redisplay_internal): Reset tty's color_mode when switching
13430 to another frame.
13431 * frame.c (do_switch_frame): Refine the top_frame/async_visible code.
13432 Don't call set_tty_color_mode.
13433 (store_frame_param): Reset previous_frame rather than call
13434 set_tty_color_mode.
13435 * term.c (set_tty_color_mode): Rewrite.
13436 * dispextern.h (set_tty_color_mode): New type.
13437 * termchar.h (struct tty_display_info): Add `previous_color_mode'.
13438
13439 2008-04-08 Stefan Monnier <monnier@iro.umontreal.ca>
13440
13441 * keymap.c (access_keymap): Remove the value 2 for t_ok which was used
13442 for generic chars, which do not exist any more in emacs-unicode.
13443
13444 2008-04-08 Michael Albinus <michael.albinus@gmx.de>
13445
13446 * coding.c (detect_coding_emacs_mule)
13447 (Ffind_operation_coding_system): Fix typo.
13448
13449 2008-04-08 Jason Rumney <jasonr@gnu.org>
13450
13451 * w32uniscribe.c (SNAME): Extract only symbol name.
13452
13453 * w32font.h (struct w32_metric_cache): New struct.
13454 (w32font_info): Use it.
13455 (W32METRIC_NO_ATTEMPT, W32METRIC_SUCCESS, W32METRIC_FAIL)
13456 (CACHE_BLOCKSIZE): New constants.
13457
13458 * w32font.c (Qja, Qko, Qzh): New symbols.
13459 (syms_of_w32font): Initialise them.
13460 (font_matches_spec): Use them to filter by language.
13461 (recompute_cached_metrics): Remove function.
13462 (compute_metrics, clear_cached_metrics): New functions.
13463 (w32font_encode_char): Use them to manage metric cache.
13464 (w32font_text_extents): Cache metrics for all glyphs on demand.
13465 Delay converting glyph indices to WORD until needed.
13466 (w32font_open_internal): Initialize metric cache to empty.
13467 (registry_to_w32_charset): Charset should always be a symbol.
13468 (fill_in_logfont, list_all_matching_fonts): Family should
13469 always be a symbol.
13470
13471 2008-04-06 Jason Rumney <jasonr@gnu.org>
13472
13473 * w32uniscribe.c (uniscribe_shape): Increase items buffer size.
13474 Give up if glyph indices not supported. Use uniscribe obtained
13475 ABC widths for individual metrics. Map glyph clusters back to
13476 characters using fClusterStart flag. Return number of glyphs
13477 produced, not chars processed.
13478 (uniscribe_shape): Map char at FROM to current glyph.
13479
13480 2008-04-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13481
13482 * macmenu.c (fill_menu) [TARGET_API_MAC_CARBON]:
13483 Use SetMenuItemHierarchicalMenu.
13484
13485 2008-04-05 Jason Rumney <jasonr@gnu.org>
13486
13487 * image.c (pbm_load): Allow color values up to 65535.
13488 Throw an error if max_color_idx is outside the supported range.
13489 Report an error when image size is invalid.
13490 Read two bytes at a time when raw images have max_color_idx above 255.
13491
13492 2008-04-05 Eli Zaretskii <eliz@gnu.org>
13493
13494 * w32.c (readdir): If FindFirstFile/FindNextFile return in
13495 cFileName a file name that includes `?' characters, use the 8+3
13496 alias in cAlternateFileName instead.
13497
13498 2008-04-05 Kenichi Handa <handa@ni.aist.go.jp>
13499
13500 * ccl.c (ccl_driver): If ccl->quit_silently is nonzero, don't
13501 append "CCL: Quitted" when the CCL program is quitted.
13502 (setup_ccl_program): Initialize ccl->quit_silently to zero.
13503
13504 * ccl.h (struct ccl_program): New member quit_silently.
13505
13506 2008-04-05 Chong Yidong <cyd@stupidchicken.com>
13507
13508 * search.c (compile_pattern_1): Treat non-nil and non-string of
13509 search-spaces-regexp as nil.
13510
13511 * minibuf.c (Fassoc_string): Tweak docstring.
13512
13513 2008-04-05 Eli Zaretskii <eliz@gnu.org>
13514
13515 * dired.c (Ffile_attributes): Support inode numbers wider than 32
13516 bits. Remove ugly WINDOWSNT-specific kludge introduced on
13517 2008-03-14 to force inode be positive.
13518
13519 * w32.c (sys_chown, stat, fstat): Use S_* constants instead of
13520 _S_* ones, since we now use our own sys/stat.h.
13521 (stat, fstat): Don't mangle the inode number.
13522 (init_user_info): Don't restrict UID and GID to 0-60000 range.
13523
13524 2008-04-04 Stefan Monnier <monnier@iro.umontreal.ca>
13525
13526 * frame.h (struct frame): Give one more bit to `visible' since we use
13527 values larger than 1 to indicate obscured frames on ttys.
13528
13529 * keymap.c (Qkeymap_canonicalize): New var.
13530 (Fmap_keymap_internal): New fun.
13531 (describe_map): Use keymap-canonicalize.
13532
13533 * undo.c (last_boundary_buffer, last_boundary_position): New vars.
13534 (Fundo_boundary): Set them.
13535 (syms_of_undo): Initialize them.
13536 (record_point): Use them instead of last_point_position*.
13537 (last_undo_buffer): Change type.
13538
13539 2008-04-04 Jason Rumney <jasonr@gnu.org>
13540
13541 * w32font.c (w32font_text_extents): Use font's ascent and descent.
13542 (recompute_cached_metrics): Don't set ascent and descent per char.
13543
13544 * w32uniscribe.c (uniscribe_check_otf): Fix last change.
13545 (uniscribe_check_otf): Add GC protection before consing.
13546 Rearrange loop for counting features.
13547
13548 2008-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
13549
13550 * insdel.c (insert_from_buffer_1): Don't compare bytes in destination
13551 buffer with byte-size of source buffer.
13552
13553 2008-04-03 Chong Yidong <cyd@stupidchicken.com>
13554
13555 * callint.c (Fcall_interactively): Handle temporary region even
13556 when shift-select-mode is off.
13557
13558 2008-04-03 Jason Rumney <jasonr@gnu.org>
13559
13560 * w32uniscribe.c (uniscribe_check_otf): Sanity check otf_spec.
13561
13562 2008-04-03 Kenichi Handa <handa@m17n.org>
13563
13564 * coding.c (CATEGORY_MASK_ANY): Add CATEGORY_MASK_UTF_16_AUTO.
13565 (CATEGORY_MASK_UTF_16): Likewise.
13566 (detect_coding_utf_16): Add heuristics to reject utf-16 for a
13567 binary file.
13568 (detect_coding): Add null-byte detection for a binary file.
13569 (detect_coding_system): Likewise.
13570
13571 2008-04-03 Jason Rumney <jasonr@gnu.org>
13572
13573 * w32uniscribe.c: New file.
13574
13575 * font.h (uniscribe_font_driver) [WINDOWSNT]: Declare for w32fns.c.
13576
13577 * w32font.h (uniscribe_check_otf): Declare for w32font.c.
13578
13579 * w32font.c (Qbalinese, Qbuginese, Qbuhid, Qcuneiform, Qcypriot)
13580 (Qdeseret, Qglagolitic, Qgothic, Qhanunoo, Qkharoshthi)
13581 (Qlimbu, Qlinear_b, Qold_italic, Qold_persian, Qosmanya)
13582 (Qphags_pa, Qphoenician, Qshavian, Qsyloti_nagri)
13583 (Qtagalog, Qtagbanwa, Qtai_le, Qtifinagh, Qugaritic)
13584 (Qphonetic): New symbols.
13585 (syms_of_w32font): Initialize them.
13586 (font_supported_scripts): Use them.
13587 (w32font_list_family): List all charsets.
13588 (w32font_text_extents, recompute_cached_metrics): Fix metric
13589 calculations.
13590 (w32_enumfont_pattern_entity): Make full_type a DWORD.
13591 Give opentype fonts their own format.
13592 (font_matches_spec): New arguments backend and logfont.
13593 Handle :otf spec for uniscribe backend.
13594 (add_font_entity_to_list): Match truetype fonts in uniscribe backend.
13595 (fill_in_logfont): Use DEFAULT_CHARSET when charset not supplied.
13596
13597 * w32fns.c (Fx_create_frame): Conditionally register uniscribe
13598 font backend.
13599 (globals_of_w32fns): Initialize uniscribe font backend.
13600
13601 * makefile.w32-in (CONFIG_H): New variable. Use it to clean up
13602 dependencies.
13603 (w32uniscribe.$(O)): New file to build.
13604 (FONT_OBJ): Include w32uniscribe.$(O).
13605 (LIBS): Add uniscribe libraries.
13606
13607 * ftfont.c (ftfont_get_open_type_spec): Check spec->script, not val.
13608
13609 2008-04-02 Chong Yidong <cyd@stupidchicken.com>
13610
13611 * callint.c (Vshift_select_mode): New var.
13612 (Finteractive): Document new ^ spec.
13613 (Fcall_interactively): Call handle-shift-selection if the ^ spec
13614 is present.
13615
13616 * keyboard.c (Vthis_command_keys_shift_translated): New var.
13617 (command_loop_1): Avoid running the direct display versions of
13618 forward-char and backward-char if shift-selection may occur.
13619 (read_key_sequence): Set Vthis_command_keys_shift_translated if
13620 shift-translation takes place.
13621
13622 * buffer.c (Vtransient_mark_mode): Move docstring to simple.el to
13623 avoid clobbering by define-minor-mode.
13624
13625 * cmds.c (Fforward_char, Fbackward_char, Fforward_line)
13626 (Fbeginning_of_line, Fend_of_line): Add ^ interactive spec.
13627
13628 * syntax.c (Fforward_word): Add ^ interactive spec.
13629
13630 * window.c (Fscroll_up, Fscroll_down, Fscroll_left)
13631 (Fscroll_right): Add ^ interactive spec.
13632
13633 2008-04-01 Stefan Monnier <monnier@iro.umontreal.ca>
13634
13635 * xdisp.c (try_window_id): Don't forget to reset delta_bytes.
13636
13637 * casefiddle.c (casify_object): Fix up int/EMACS_INT mixup.
13638
13639 * charset.c (Funibyte_charset, Fset_unibyte_charset): Remove.
13640
13641 2008-03-31 Juri Linkov <juri@jurta.org>
13642
13643 * window.c (Fdisplay_buffer): Reinitialize `tem' to nil.
13644
13645 2008-03-30 Jan Djärv <jan.h.d@swipnet.se>
13646
13647 * gtkutil.c (xg_set_geometry): Fix indentation.
13648 (xg_resize_outer_widget): Remove.
13649 (x_wm_size_hint_off): Fix indentation.
13650 (xg_frame_set_char_size): Call flush_and_sync after
13651 gtk_window_resize.
13652 (x_wm_set_size_hint): Pass NULL as geometry window to
13653 gtk_window_set_geometry_hints due to Gtk+ bug nr 68668.
13654 Add menu bar and tool bar height to base height.
13655 (xg_update_frame_menubar, free_frame_menubar)
13656 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
13657 (update_frame_tool_bar, free_frame_tool_bar):
13658 Change xg_resize_outer_widget to xg_frame_set_char_size.
13659
13660 2008-03-30 Michael Albinus <michael.albinus@gmx.de>
13661
13662 * dbusbind.c (QCdbus_timeout): New D-Bus internal symbol.
13663 (Fdbus_call_method): New parameter TIMEOUT.
13664 (dbus-send-signal): Optimize UNGCPRO call.
13665
13666 2008-03-29 Juri Linkov <juri@jurta.org>
13667
13668 * window.c (Fdisplay_buffer): Move call to
13669 Vsplit_window_preferred_function out of conditions that check
13670 if window is eligible for vertical splitting.
13671 When Vsplit_window_preferred_function is non-nil, call it and use
13672 its non-nil return value as window. Otherwise, continue doing
13673 vertical splitting using Fsplit_window with arg horflag=nil.
13674 (syms_of_window) <Vsplit_window_preferred_function>: Change the
13675 default value from `split-window' to nil.
13676
13677 2008-03-29 Juri Linkov <juri@jurta.org>
13678
13679 * callint.c (Fcall_interactively): Revert 2008-03-16 change
13680 for interactive code letters 'b' and 'B'.
13681
13682 2008-03-29 Eli Zaretskii <eliz@gnu.org>
13683
13684 * fileio.c (Fexpand_file_name): Convert the value of $HOME to a
13685 multibyte string.
13686
13687 2008-03-29 Stefan Monnier <monnier@iro.umontreal.ca>
13688
13689 * keyboard.c (pending_funcalls): New var.
13690 (timer_check): Run it.
13691 (syms_of_keyboard): Initialize it.
13692 * terminal.c (Qrun_hook_with_args, Qdelete_terminal_functions)
13693 (Vdelete_terminal_functions): New vars.
13694 (syms_of_terminal): Initialize them.
13695 (Fdelete_terminal): Run delete-terminal-functions.
13696 * xdisp.c (safe_eval): Rewrite.
13697 (safe_call2): New fun.
13698 * frame.c (Qdelete_frame_functions): New var.
13699 (syms_of_frame): Initialize it.
13700 (Fdelete_frame): Use it and use safe_call2 and pending_funcalls.
13701 * lisp.h (safe_call2, pending_funcalls): Declare.
13702
13703 2008-03-28 Andreas Schwab <schwab@suse.de>
13704
13705 * indent.c (Fmove_to_column): Move declaration before statements.
13706
13707 2008-03-27 Stefan Monnier <monnier@iro.umontreal.ca>
13708
13709 * frame.h (enum fullscreen_type): Give it a name. Move it before use.
13710 (struct frame): Use bit fields for boolean vars.
13711
13712 * process.c (server_accept_connection): Simplify naming.
13713 (emacs_get_tty_pgrp): Use SDATA.
13714
13715 * coding.c (decode_coding_object): Fix last change.
13716
13717 2008-03-27 Jason Rumney <jasonr@gnu.org>
13718
13719 * w32fns.c (start_hourglass): Suppress hourglass on tty frames.
13720
13721 2008-03-27 Kenichi Handa <handa@ni.aist.go.jp>
13722
13723 * charset.c (Fdefine_charset_internal): Change the way of
13724 registering charsets in Vcharset_order_list.
13725 (syms_of_charset): Make the charset `eight-bit' supplementary.
13726
13727 2008-03-26 Alexandre Oliva <aoliva@redhat.com> (tiny change)
13728
13729 * regex.c (EXTEND_BUFFER): Change order of pointer addition
13730 operations, to avoid having the difference between pointers
13731 overflow.
13732
13733 2008-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
13734
13735 * indent.c (check_display_width): New fun.
13736 (scan_for_column): Use it.
13737
13738 * data.c (syms_of_data): Mark most-positive-fixnum and
13739 most-negative-fixnum as constants.
13740
13741 * xdisp.c (redisplay_internal): Reset selected_frame earlier.
13742
13743 * indent.c (scan_for_column): Extract from current_column_1.
13744 Merge with the same code from Fmove_to_column.
13745 (current_column_1, Fmove_to_column): Use it.
13746
13747 2008-03-25 Stefan Monnier <monnier@iro.umontreal.ca>
13748
13749 * keymap.c (map_keymap_internal): New fun.
13750 (map_keymap): Use it.
13751 (Fmap_keymap_internal): New fun.
13752 (Fmap_keymap): Remove left-out test from before make_save_value.
13753
13754 * keymap.c (Fmap_keymap): Use `map-keymap-sorted.
13755
13756 * frame.c (Fmodify_frame_parameters, x_set_frame_parameters):
13757 Use XCAR/XCDR.
13758
13759 * process.h (struct Lisp_Process): Remove filter_multibyte.
13760 * process.c (QCfilter_multibyte): Remove.
13761 (setup_process_coding_systems): Don't use filter_multibyte.
13762 (Fstart_process, Fmake_network_process): Don't set filter_multibyte.
13763 (read_process_output): Don't adjust multibyteness to filter_multibyte.
13764 (Fset_process_filter_multibyte): Change the coding-system to
13765 approximate the previous behavior.
13766 (Fprocess_filter_multibyte_p): Get the multibyteness straight from the
13767 coding-system.
13768
13769 * coding.c (decode_coding_object): When not decoding into a buffer,
13770 obey the coding system's preference of (uni|multi)byte.
13771
13772 2008-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
13773
13774 * casefiddle.c (casify_object): Avoid pathological N^2 worst case if
13775 every char is changed and has a different byte-length.
13776 (Fupcase_word, Fdowncase_word, Fcapitalize_word, operate_on_word):
13777 Fix int -> EMACS_INT.
13778
13779 2008-03-23 David Hansen <david.hansen@gmx.net>
13780
13781 * dbusbind.c (xd_read_message): Remove extra copying of message
13782 strings. Check for NULL `interface' or `member'.
13783
13784 2008-03-22 Eli Zaretskii <eliz@gnu.org>
13785
13786 * w32.c (readdir): If FindFirstFile/FindNextFile return in
13787 cFileName a file name that includes `?' characters, use the 8+3
13788 alias in cAlternateFileName instead.
13789
13790 2008-03-21 Stefan Monnier <monnier@iro.umontreal.ca>
13791
13792 * buffer.c (enlarge_buffer_text): Fix int -> EMACS_INT.
13793
13794 2008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
13795
13796 * intervals.c (temp_set_point, temp_set_point_both): Use EMACS_INT.
13797 (set_point, set_point_both): Use EMACS_INT. Remove `buffer' arg,
13798 work on current_buffer only instead (that was already the case
13799 for some of the code anyway).
13800 * buffer.h (set_point, set_point_both): Remove buffer arg, use long int.
13801 (temp_set_point, temp_set_point_both): Use EMACS_INT.
13802 (SET_PT, SET_PT_BOTH): Adjust.
13803 * intervals.h (set_point, temp_set_point, set_point_both)
13804 (temp_set_point_both): Remove redundant declarations.
13805
13806 2008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
13807
13808 * fileio.c (Finsert_file_contents):
13809 * lread.c (Feval_buffer): Use BUF_TEMP_SET_PT.
13810 * buffer.h (BUF_SET_PT): Remove. set_point_both doesn't work right
13811 when buffer != current_buffer anyway.
13812
13813 2008-03-20 Andreas Schwab <schwab@suse.de>
13814
13815 * callint.c (Fcall_interactively) [case 'B']: Use other-buffer
13816 as default.
13817
13818 2008-03-19 Jason Rumney <jasonr@gnu.org>
13819
13820 * w32fns.c (hourglass_timer, hourglass_hwnd): New variables.
13821 (syms_of_w32fns): Initialize them.
13822 (HOURGLASS_ID): New constant.
13823 (x_window_to_frame): Don't check hourglass_window.
13824 (w32_wnd_proc) <WM_TIMER>: Handle hourglass_timer.
13825 (w32_wnd_proc) <WM_EXITMENULOOP>: Set pending hourglass cursor.
13826 (w32_wnd_proc) <WM_SETCURSOR>: Set the hourglass or current cursor.
13827 (w32_wnd_proc) <WM_EMACS_SETCURSOR>: Set frame's current_cursor.
13828 Only change the cursor if hourglass is not active.
13829 (Fx_create_frame): Initialize frame's current_cursor.
13830 (hourglass_atimer): Remove.
13831 (hourglass_started): New function.
13832 (start_hourglass, cancel_hourglass, hide_hourglass): Adapt to w32.
13833 (show_hourglass): Adapt to w32, changing argument to frame.
13834
13835 * w32term.h (struct w32_output): Remove hourglass_window.
13836 Add current_cursor.
13837
13838 * eval.c (call_debugger, Fsignal):
13839 * keyboard.c (recursive_edit_1, cmd_error, Ftop_level)
13840 (command_loop_1, Fread_key_sequence, Fread_key_sequence_vector)
13841 (Fexecute_extended_command, cancel_hourglass_unwind):
13842 * minibuf.c (read_minibuf):
13843 * fns.c (Fy_or_n_p): Enable hourglass when HAVE_WINDOW_SYSTEM.
13844
13845 2008-03-19 Stefan Monnier <monnier@iro.umontreal.ca>
13846
13847 * window.c (run_funs): New fun.
13848 (run_window_configuration_change_hook): Use it to run the buffer-local
13849 and the global part of the hook.
13850
13851 * xdisp.c (format_mode_line_unwind_data): Add window argument.
13852 (unwind_format_mode_line): Restore selected window.
13853 (x_consider_frame_title, Fformat_mode_line): Set selected window.
13854
13855 2008-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
13856
13857 * editfns.c (Fchar_equal): Check they are valid characters.
13858
13859 * buffer.h (Fbuffer_list): Declare (for use in callint.c).
13860
13861 2008-03-17 Andreas Schwab <schwab@suse.de>
13862
13863 * regex.c (re_match_2_internal): Properly match raw 8-bit bytes
13864 against a charset.
13865
13866 * lisp.h (Fbuffer_list): Declare.
13867
13868 2008-03-17 Jan Djärv <jan.h.d@swipnet.se>
13869
13870 * gtkutil.c (free_frame_tool_bar): Only call gtk_container_remove if
13871 handlebox_widget is != 0.
13872
13873 2008-03-16 Juri Linkov <juri@jurta.org>
13874
13875 * callint.c (Fcall_interactively): For interactive code letters
13876 'b' and 'B' put the buffer list into the list of default "future"
13877 values of the minibuffer.
13878
13879 2008-03-16 Andreas Schwab <schwab@suse.de>
13880
13881 * keyboard.c (read_key_sequence): Fix downcasing of letters with
13882 modifiers.
13883
13884 * regex.c (re_match_2_internal): Correct matching of a charset
13885 against latin-1 characters.
13886
13887 2008-03-16 Kenichi Handa <handa@m17n.org>
13888
13889 * coding.c (CHAR_STRING_ADVANCE_NO_UNIFY)
13890 (STRING_CHAR_ADVANCE_NO_UNIFY): New macros.
13891 (coding_alloc_by_making_gap): Fix the way to preserve data in the gap.
13892 (alloc_destination): Fix the 2nd arg to coding_alloc_by_making_gap.
13893 (encode_coding_utf_8): Use CHAR_STRING_ADVANCE_NO_UNIFY instead of
13894 CHAR_STRING_ADVANCE.
13895 (produce_chars): Fix for the case that the source and the
13896 destination are the same buffer. Use CHAR_STRING_ADVANCE_NO_UNIFY
13897 instead of CHAR_STRING_ADVANCE.
13898 (consume_chars): Use STRING_CHAR_ADVANCE_NO_UNIFY instead of
13899 STRING_CHAR_ADVANCE.
13900
13901 2008-03-15 Andreas Schwab <schwab@suse.de>
13902
13903 * regex.c (re_match_2_internal): Correct matching of eight bit
13904 characters in unibyte strings.
13905
13906 2008-03-15 Martin Rudalics <rudalics@gmx.at>
13907
13908 * buffer.c (overlays_in, Foverlays_in): Include empty overlays
13909 at end of range when it coincides with the end of the buffer.
13910
13911 2008-03-14 Eli Zaretskii <eliz@gnu.org>
13912
13913 * dired.c (Ffile_attributes) [WINDOWSNT]: Force inode be positive.
13914
13915 * w32fns.c (globals_of_w32fns, Fx_create_frame): Fix last change.
13916
13917 2008-03-14 Jason Rumney <jasonr@gnu.org>
13918
13919 * editfns.c (initial_tz): New variable.
13920 (syms_of_editfns): Initialize it.
13921 (Fset_time_zone_rule): Set it when first called.
13922 Use it when TZSTRING is nil.
13923
13924 * w32fns.c (MONITOR_DEFAULT_TO_NEAREST, struct MONITOR_INFO)
13925 (MonitorFromPoint_Proc, GetMonitorInfo_Proc): New definitions.
13926 (monitor_from_point_fn, get_monitor_info_fn): New globals.
13927 (globals_of_w32fns): Initialize them.
13928 (compute_tip_xy): Use them to position tooltips.
13929
13930 2008-03-14 Glenn Morris <rgm@gnu.org>
13931
13932 * emacs.c (main): Revert previous change.
13933 (standard_args): Revert -internal-script back to -scriptload,
13934 and remove the long-option form.
13935
13936 2008-03-13 Glenn Morris <rgm@gnu.org>
13937
13938 * emacs.c (main, standard_args): Rename -scriptload to -internal-script.
13939 Remove option -enable-font-backend.
13940
13941 2008-03-12 Stefan Monnier <monnier@iro.umontreal.ca>
13942
13943 * buffer.c (Fswitch_to_buffer): Fall back on pop-to-buffer.
13944
13945 2008-03-11 Jan Djärv <jan.h.d@swipnet.se>
13946
13947 * xterm.c (x_connection_closed): For GTK: If this is the last
13948 terminal just exit without closing the display.
13949
13950 2008-03-11 Jason Rumney <jasonr@gnu.org>
13951
13952 * w32font.c (w32font_full_name): Use floor to round.
13953
13954 2008-03-10 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
13955
13956 * sound.c (alsa_configure): Declare vol at beginning of block.
13957
13958 * fontset.c (Ffontset_info): Remove extra semicolon.
13959
13960 2008-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
13961
13962 * fileio.c (Fsubstitute_in_file_name): Fix up computation of maximum
13963 size of resulting string.
13964
13965 2008-03-10 Jason Rumney <jasonr@gnu.org>
13966
13967 * dispnew.c (adjust_glyph_matrix): Initialize window_height.
13968
13969 2008-03-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13970
13971 * xdisp.c (handle_single_display_spec): Undo 2007-10-16 changes.
13972 Don't pretend as if characters with display property haven't been
13973 consumed for string-replacing-string case.
13974
13975 2008-03-08 Kim F. Storm <storm@cua.dk>
13976
13977 * xdisp.c (GET_NEXT_DISPLAY_ELEMENT): New macro.
13978 (get_next_display_element, next_element_from_string)
13979 (next_element_from_ellipsis, next_element_from_buffer): Use it.
13980
13981 2008-03-08 Andreas Schwab <schwab@suse.de>
13982
13983 * process.h (struct Lisp_Process): Declare bit fields as unsigned.
13984
13985 2008-03-06 Jason Rumney <jasonr@gnu.org>
13986
13987 * w32font.c (w32_registry): Take font_type argument. Use ANSI
13988 when charset not specified. Only translate ANSI to unicode when
13989 font_type is truetype.
13990 (w32font_coverage_ok): New function.
13991 (add_font_entity_to_list): Use it to filter unsuitable fonts.
13992
13993 2008-03-05 Kenichi Handa <handa@ni.aist.go.jp>
13994
13995 * lread.c (Fread_char): Resolve modifiers.
13996 (Fread_char_exclusive): Likewise.
13997
13998 * character.c (char_resolve_modifier_mask): New function.
13999 (char_string): Use char_resolve_modifier_mask.
14000 (Fchar_resolve_modifiers): New function.
14001 (syms_of_character): Declare Fchar_resolve_modifiers as Lisp
14002 function.
14003
14004 2008-03-04 Jason Rumney <jasonr@gnu.org>
14005
14006 * makefile.w32-in: Always include w32font.c in the build.
14007 * w32font.c: Wrap in USE_FONT_BACKEND conditional.
14008
14009 2008-03-04 Andreas Schwab <schwab@suse.de>
14010
14011 * Makefile.in (clean): Remove emacs-*.*.* instead of emacs-*.
14012 (versionclean): Likewise.
14013
14014 2008-03-04 Juanma Barranquero <lekktu@gmail.com>
14015
14016 * .cvsignore: Add oo.
14017
14018 2008-03-03 Andreas Schwab <schwab@suse.de>
14019
14020 * coding.c (decode_coding_object): Inhibit gap shrinking while
14021 decoding in place.
14022
14023 2008-03-03 Dan Nicolaescu <dann@ics.uci.edu>
14024
14025 * w32term.c: Remove unused include "gnu.h".
14026 * makefile.w32-in (w32term.o): Don't depend on gnu.h.
14027
14028 * gnu.h: Rename to ...
14029 * emacs-icon.h: ... this.
14030 * xterm.c: Use emacs-icon.h instead of gnu.h.
14031 * Makefile (xterm.o): Depend on emacs-icon.h, not gnu.h.
14032
14033 2008-03-03 Juanma Barranquero <lekktu@gmail.com>
14034
14035 * w32font.c: Include math.h.
14036
14037 2008-03-03 Jason Rumney <jasonr@gnu.org>
14038
14039 * w32font.c (recompute_cached_metrics): Change font arg to w32font_info.
14040 Compute options separately.
14041 (w32font_open_internal): Set glyph_idx before caching metrics.
14042
14043 * w32font.h (NTM_PS_OPENTYPE, NTM_TT_OPENTYPE, NTM_TYPE1):
14044 Define if system headers don't.
14045 (struct w32font_info): Enlarge ascii_metrics. Add glyph_idx.
14046 (w32font_encode_char): Don't declare here.
14047
14048 * w32font.c (Quniscribe, QCformat): New symbols.
14049 (syms_of_w32font): Define them.
14050 (w32font_has_char): Indicate uncertainty.
14051 (w32font_encode_char): Encode as glyph point. Make static.
14052 (recompute_cached_metrics): New function.
14053 (w32font_open_internal): Use it. Set font to use glyph points
14054 initially. Set format based on type of font.
14055 (w32font_text_extents, w32font_draw): Optionally use glyph points.
14056 (w32_enumfont_pattern_entity): Accept backend arg. Set type based
14057 on it. Set format based on information available here.
14058 (add_font_entity_to_list): Identify backend based on opentype_only.
14059
14060 2008-03-02 Andreas Schwab <schwab@suse.de>
14061
14062 * ftfont.c (ftfont_pattern_entity): Fix aliasing violations.
14063
14064 * coding.c (decode_coding_big5, produce_chars):
14065 Fix typos in last change.
14066
14067 2008-03-02 Kentaro Ohkouchi <nanasess@fsm.ne.jp>
14068
14069 * gnu.h: New icon.
14070
14071 2008-03-02 Kenichi Handa <handa@m17n.org>
14072
14073 * coding.c (decode_coding_utf_8): When eol-type of CODING is
14074 `dos', don't decode '\r' if that is the last in the source.
14075 (decode_coding_utf_16, decode_coding_emacs_mule)
14076 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
14077 (decode_coding_raw_text, decode_coding_charset): Likewise.
14078 (produce_chars): Don't decode EOL here. Use EMACS_INT.
14079
14080 2008-03-01 Jason Rumney <jasonr@gnu.org>
14081
14082 * w32font.c (w32font_full_name): Report point size for scalable fonts.
14083
14084 2008-03-01 Kim F. Storm <storm@cua.dk>
14085
14086 * dispextern.h (CHAR_GLYPH_SPACE_P): Check for default face.
14087
14088 2008-03-01 Jason Rumney <jasonr@gnu.org>
14089
14090 * w32font.c (w32font_full_name): New function.
14091 (w32font_open_internal): Use it.
14092
14093 2008-03-01 Kim F. Storm <storm@cua.dk>
14094
14095 * dispnew.c (line_draw_cost): Fix invalid glyph check.
14096
14097 2008-03-01 Jason Rumney <jasonr@gnu.org>
14098
14099 * font.c (font_unparse_fcname): Increase len when style is a symbol.
14100
14101 2008-03-01 Jan Djärv <jan.h.d@swipnet.se>
14102
14103 * xterm.c (handle_one_xevent): For Gtk+ and ConfigureNotify, call
14104 xg_frame_resized when the event is for the edit widget.
14105
14106 * gtkutil.h (xg_frame_resized): Renamed from xg_resize_widgets.
14107
14108 * gtkutil.c (xg_resize_outer_widget): Only do one of set_geometry or
14109 set_char_size.
14110 (xg_frame_resized): Renamed from xg_resize_widgets. Remove all
14111 operations on widgets here. Just set frame size if needed.
14112 (flush_and_sync, x_wm_size_hint_off, xg_pack_tool_bar): New functions.
14113 (xg_frame_set_char_size): Call x_wm_size_hint_off before resizing.
14114 (x_wm_set_size_hint): Set size hints on the edit widget only, not
14115 the whole frame.
14116 (xg_create_tool_bar): Move attachment of the tool bar to
14117 xg_pack_tool_bar. Do not attach the tool bar if there are no items.
14118 (free_frame_tool_bar): Remove call to SET_FRAME_GARBAGED.
14119
14120 2008-03-01 Jason Rumney <jasonr@gnu.org>
14121
14122 * w32fns.c (w32_msg_pump): Disable debug code.
14123
14124 2008-03-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14125
14126 * m/intel386.h [MAC_OSX || DARWIN]: Define NO_ARG_ARRAY if _LP64.
14127
14128 2008-02-29 Chong Yidong <cyd@stupidchicken.com>
14129
14130 * xdisp.c (next_overlay_string): Don't set
14131 overlay_strings_at_end_processed_p if we're currently reading from
14132 a display string.
14133
14134 2008-02-29 Stefan Monnier <monnier@iro.umontreal.ca>
14135
14136 * xdisp.c (get_overlay_strings_1): Fix typo.
14137
14138 2008-02-29 Chong Yidong <cyd@stupidchicken.com>
14139
14140 * xdisp.c (get_overlay_strings_1): Add missing argument type.
14141
14142 2008-02-28 Kenichi Handa <handa@ni.aist.go.jp>
14143
14144 * ftfont.c (ftfont_match): Explicitly set pixelsize in pattern.
14145
14146 * xdisp.c (display_mode_element): Cancel the previous change.
14147 (decode_mode_spec): Likewise.
14148 (handle_auto_composed_prop): Don't make composition if it->string
14149 is a string.
14150
14151 2008-02-27 Kim F. Storm <storm@cua.dk>
14152
14153 * lisp.h (GLYPH): Change type from int to struct with separate char
14154 and face_id members.
14155 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Delete macros.
14156 (GLYPH_CHAR, GLYPH_FACE): Remove slow versions with frame arg.
14157 (FAST_GLYPH_CHAR, FAST_GLYPH_FACE): Rename macros to ...
14158 (GLYPH_CHAR, GLYPH_FACE): ... these. Change users.
14159 (FAST_MAKE_GLYPH, MAKE_GLYPH): Remove. Rewrite users to use ...
14160 (SET_GLYPH, SET_GLYPH_CHAR, SET_GLYPH_FACE): ... these macros instead.
14161 (GLYPH_CODE_CHAR, GLYPH_CODE_FACE, GLYPH_CODE_P)
14162 (GLYPH_CODE_CHAR_VALID_P, SET_GLYPH_FROM_GLYPH_CODE): New macros to
14163 handle new Lisp glyph code encoding, either an integer or a cons.
14164
14165 * disptab.h (GLYPH_SIMPLE_P): Rewrite.
14166 (GLYPH_ALIAS): Delete.
14167 (GLYPH_ALIAS_P, GLYPH_FOLLOW_ALIASES): Rewrite.
14168 (GLYPH_LENGTH, GLYPH_STRING): Use GLYPH_CHAR.
14169 (GLYPH_FROM_CHAR): Replace macro by ...
14170 (SET_GLYPH_FROM_CHAR): ... this macro. Change users.
14171
14172 * dispextern.h (CHAR_GLYPH_SPACE_P): Simplify.
14173 (GLYPH_FROM_CHAR_GLYPH): Replace macro by ...
14174 (SET_GLYPH_FROM_CHAR_GLYPH): ... this macro. Change users.
14175 (GLYPH_INVALID_P): New macro.
14176 (spec_glyph_lookup_face): Update prototype.
14177
14178 * dispnew.c (line_draw_cost): Adapt to new glyph type.
14179 (build_frame_matrix_from_leaf_window): Adapt to new glyph type and
14180 new glyph code encoding.
14181 (spec_glyph_lookup_face): No return value; update passed glyph instead.
14182 (init_display): Use SET_CHAR_GLYPH to initialize space_glyph.
14183
14184 * xdisp.c (get_next_display_element, next_element_from_display_vector):
14185 Adapt to new glyph type and new glyph code encoding.
14186
14187 * term.c (encode_terminal_code, produce_special_glyphs): Likewise.
14188
14189 * indent.c (current_column, current_column_1, Fmove_to_column)
14190 (compute_motion): Adapt to new glyph code encoding.
14191
14192 * msdos.c (IT_write_glyphs): Adapt to new glyph type.
14193
14194 2008-02-27 Chong Yidong <cyd@stupidchicken.com>
14195
14196 * process.c (wait_reading_process_output): Check for window
14197 changes caused by timers.
14198 Suggested by Johan Bockgård.
14199
14200 2008-02-27 Glenn Morris <rgm@gnu.org>
14201
14202 * emacs.c (USAGE1): Add `--disable-font-backend'.
14203
14204 2008-02-27 Stefan Monnier <monnier@iro.umontreal.ca>
14205
14206 * fileio.c (Finsert_file_contents): Don't reset undo_list if no change
14207 is made to the buffer.
14208
14209 2008-02-26 Stefan Monnier <monnier@iro.umontreal.ca>
14210
14211 * dispextern.h (face_at_buffer_position, face_for_overlay_string)
14212 (face_at_string_position):
14213 * xfaces.c (face_at_buffer_position, face_for_overlay_string)
14214 (face_at_string_position):
14215 * xdisp.c (display_string, next_overlay_change):
14216 * buffer.h (overlays_at):
14217 * buffer.c (overlays_at): Use EMACS_INT for buffer positions.
14218 Update callers.
14219
14220 2008-02-26 Chong Yidong <cyd@stupidchicken.com>
14221
14222 * editfns.c (Fformat): Doc fix.
14223
14224 2008-02-26 Juanma Barranquero <lekktu@gmail.com>
14225
14226 * font.c (Ffont_spec, Ffont_at): Fix typos in docstrings.
14227 (Ffont_put, Flist_families, Ffont_fill_gstring, Ffont_drive_otf)
14228 (Ffont_otf_alternates, Fquery_font): Doc fixes.
14229
14230 2008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
14231
14232 * buffer.c (Fbuffer_swap_text): New function.
14233 (syms_of_buffer): Defsubr it.
14234
14235 2008-02-25 Chong Yidong <cyd@stupidchicken.com>
14236
14237 * keyboard.c (command_loop_1): Revert 2006-10-09 change.
14238
14239 2008-02-25 Jason Rumney <jasonr@gnu.org>
14240
14241 * w32font.c (w32font_draw): Draw one character at a time when padding.
14242
14243 2008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
14244
14245 * window.c (Fdelete_window, Fadjust_window_trailing_edge):
14246 Handle a nil arg. Use run_window_configuration_change_hook.
14247 (delete_window, adjust_window_trailing_edge): Don't handle nil any more.
14248 (Fenlarge_window, Fshrink_window, Fset_window_configuration):
14249 Use run_window_configuration_change_hook.
14250
14251 2008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
14252
14253 * xdisp.c (x_produce_glyphs): For a visible glyph, assure at least
14254 1-pixel width.
14255
14256 2008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
14257
14258 * xdisp.c (fill_glyph_string): Pay attention to glyph->padding_p.
14259 (append_glyph): Set glyph->pixel_width and glyph->padding_p to 1
14260 if the glyph in the font is zero pixel with.
14261
14262 * dispextern.h (struct glyph_string): New member padding_p.
14263
14264 * w32font.c (w32font_draw): Pay attention to s->padding_p.
14265
14266 * ftxfont.c (ftxfont_draw): Pay attention to s->padding_p.
14267
14268 * xfont.c (xfont_draw): Pay attention to s->padding_p.
14269
14270 * xftfont.c (xftfont_draw): Pay attention to s->padding_p.
14271
14272 * font.c: If the font driver doesn't have `shape' function, return Qnil.
14273
14274 2008-02-25 Jason Rumney <jasonr@gnu.org>
14275
14276 * w32fns.c (enum_font_cb2): Don't use raster fonts for Unicode.
14277
14278 2008-02-24 Stefan Monnier <monnier@iro.umontreal.ca>
14279
14280 Allow fine-grained image-cache flushing.
14281 * dispextern.h (struct image): Add `dependencies' field.
14282 (clear_image_caches): Change arg to Lisp_Object.
14283 * image.c (make_image): Initialize `dependencies' field.
14284 (clear_image_cache): Change arg to allow fine-grained flushing.
14285 Perform the flush even if image-cache-eviction-delay is nil.
14286 (clear_image_caches): Change arg to Lisp_Object.
14287 (Fclear_image_cache): Expand meaning of the argument.
14288 (mark_image): Mark `dependencies' field.
14289 * xfaces.c (clear_face_cache): Adapt arg to call to clear_image_caches.
14290 (lface_hash): Use XHASH rather than XFASTINT.
14291 (face_at_buffer_position): Fix int -> EMACS_INT position.
14292 * xdisp.c (next_overlay_change): Fix int -> EMACS_INT position.
14293 (select_frame_for_redisplay): Remove code duplication.
14294 (redisplay_internal): Adapt arg to call to clear_image_caches.
14295
14296 2008-02-24 Dan Nicolaescu <dann@ics.uci.edu>
14297
14298 * s/vms4-0.h:
14299 * s/vms4-2.h:
14300 * s/vms4-4.h:
14301 * s/vms5-5.h: Remove, unused.
14302
14303 * s/irix5-2.h:
14304 * s/irix6-0.h:
14305 * s/riscos5.h:
14306 * s/mach-bsd4-3.h:
14307 * m/mips4.h: Remove files for obsolete systems.
14308
14309 * Makefile.in:
14310 * filelock.c:
14311 * unexmips.c:
14312 * m/hp9000s300.h:
14313 * m/iris4d.h:
14314 * s/aix3-1.h:
14315 * s/hpux.h:
14316 * s/msdos.h:
14317 * s/usg5-0.h:
14318 * s/usg5-2-2.h:
14319 * s/usg5-2.h:
14320 * s/usg5-3.h: Remove references to obsolete variables.
14321
14322 * s/irix5-0.h: Remove, move all the contents ...
14323 * s/irix6-5.h: ... here. Simplify.
14324 * config.in: Regenerate.
14325
14326 2008-02-24 Jason Rumney <jasonr@gnu.org>
14327
14328 * w32term.c (x_draw_glyph_string_background): Clear the background
14329 manually when cleartype is in use.
14330 (x_draw_glyph_string_foreground): Draw text transparently when
14331 cleartype is in use.
14332
14333 * w32font.c (w32font_text_extents): Avoid getting HDC and selecting
14334 a font into it unless we have to.
14335
14336 2008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
14337
14338 * intervals.h (INT_LISPLIKE): Remove. It may misfire.
14339 (NULL_INTERVAL_P, SET_INTERVAL_PARENT): Don't use it.
14340
14341 2008-02-18 Jason Rumney <jasonr@gnu.org>
14342
14343 * w32fns.c (Fw32_shell_execute): Encode parameters.
14344
14345 2008-02-09 Eli Zaretskii <eliz@gnu.org>
14346
14347 * fileio.c (syms_of_fileio) <insert-default-directory>: Doc fix.
14348
14349 2008-02-05 Juanma Barranquero <lekktu@gmail.com>
14350
14351 * unexhp9k800.c (read_header): Replace `legal' with `valid'.
14352
14353 2008-02-24 Ulrich Neumerkel <ulrich@complang.tuwien.ac.at> (tiny change)
14354
14355 * xterm.c (x_set_offset): Don't change the gravity if
14356 CHANGE_GRAVITY is -1.
14357
14358 2008-02-23 Chong Yidong <cyd@stupidchicken.com>
14359
14360 * fileio.c (auto_save_error_occurred): New var.
14361 (auto_save_error): Set it.
14362 (Fdo_auto_save): Don't overwrite the error message if an auto-save
14363 error occurred.
14364
14365 2008-02-23 Eli Zaretskii <eliz@gnu.org>
14366
14367 * w32.c (globals_of_w32): Add initializations for
14368 g_b_init_get_sid_sub_authority and
14369 g_b_init_get_sid_sub_authority_count.
14370
14371 2008-02-22 Stefan Monnier <monnier@iro.umontreal.ca>
14372
14373 * font.c (font_match_xlfd, font_check_xlfd_parse): New funs.
14374 (font_parse_xlfd): Use them for sanity check.
14375 (Finternal_set_font_style_table): Make sure the table is bijective.
14376
14377 Consolidate the image_cache to the terminal struct.
14378 * termhooks.h (P_): Remove redundant def.
14379 (struct terminal): New field `image_cache'.
14380 * frame.h (FRAME_IMAGE_CACHE): New macro. Use it everywhere in place
14381 of FRAME_X_IMAGE_CACHE.
14382 * xterm.h (struct x_display_info): Remove image_cache field.
14383 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
14384 * w32term.h (struct w32_display_info): Remove image_cache field.
14385 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
14386 * macterm.h (struct mac_display_info): Remove image_cache field.
14387 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
14388 * xterm.c (x_term_init):
14389 * w32term.c (w32_term_init):
14390 * macterm.c (mac_term_init): Set the image_cache in the terminal.
14391 * dispextern.h (clear_image_cache, forall_images_in_image_cache):
14392 Remove declarations.
14393 (clear_image_caches, mark_image_cache): New declarations.
14394 * xfaces.c (clear_face_cache):
14395 * xdisp.c (redisplay_internal): Use clear_image_caches.
14396 * image.c (clear_image_cache): Don't check that a frame is on
14397 a window-system before checking if it shares the same cache.
14398 (clear_image_caches): New function.
14399 (Fclear_image_cache): Use it.
14400 (mark_image): Move from allo.c.
14401 (mark_image_cache): Move from alloc.c and forall_images_in_image_cache.
14402 * alloc.c (mark_image, mark_image_cache): Move to image.c.
14403 (mark_object): Don't call mark_image_cache for frames.
14404 (mark_terminals): Call mark_image_cache.
14405
14406 * lisp.h (Fdelete_terminal): Declare.
14407
14408 * charset.h (CHECK_CHARSET, CHECK_CHARSET_GET_ID)
14409 (CHECK_CHARSET_GET_ATTR): Don't use the inexistent return value of
14410 wrong_type_argument.
14411
14412 2008-02-22 Kenichi Handa <handa@ni.aist.go.jp>
14413
14414 * Makefile.in (lisp): Remove devanagari.el, kannada.el,
14415 malayalam.el, and tamil.el. Add sinhala.el.
14416
14417 2008-02-21 Stefan Monnier <monnier@iro.umontreal.ca>
14418
14419 * xterm.c (x_connection_closed): Consolidate identical tests.
14420 (x_delete_terminal): Don't crash if called via x_connection_closed.
14421
14422 2008-02-21 Kenichi Handa <handa@ni.aist.go.jp>
14423
14424 * xdisp.c (decode_mode_spec): New arg string.
14425 (display_mode_element): Adjust for the above change.
14426
14427 2008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
14428
14429 * callint.c (Fcall_interactively): Use AREF.
14430
14431 2008-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
14432
14433 * font.c (font_unparse_xlfd): Don't ignore integer pixel size specs.
14434
14435 2008-02-18 Jan Djärv <jan.h.d@swipnet.se>
14436
14437 * xfns.c (Fx_show_tip): Set string to " " if empty.
14438
14439 2008-02-17 Dan Nicolaescu <dann@ics.uci.edu>
14440
14441 * callint.c (syms_of_callint): Initialize Vmark_even_if_inactive
14442 with Qt.
14443
14444 2008-02-17 Kenichi Handa <handa@m17n.org>
14445
14446 * ftfont.c (ftfont_shape): Return Lispy number.
14447
14448 * xfaces.c (prepare_face_for_display): Use display_info->font->fid
14449 for GCs.
14450 (Finternal_set_font_selection_order): Call font_update_sort_order
14451 only when enable_font_backend is set.
14452 (realize_x_face): Set face->font_info to that of default face only
14453 when enable_font_backend is set.
14454
14455 * xdisp.c (handle_composition_prop): Set it->c to the fist
14456 character of the composed region.
14457 (fill_composite_glyph_string): Set base_face->font_info to
14458 s->font_info. Get a face for ascii from base_face->ascii_face.
14459 (BUILD_COMPOSITE_GLYPH_STRING): Call fill_composite_glyph_string
14460 with a face already decided.
14461 (x_produce_glyphs): Be sure to set it->ascent and it->descent to
14462 non-negative.
14463 (x_produce_glyphs): If the composition method is ..._WITH_GLYPH_STRING,
14464 call font_prepare_composition unconditionally.
14465
14466 * xfns.c (x_make_gc): Use the default font id of the frame for GCs.
14467
14468 * xterm.h (struct x_display_info): New member font.
14469
14470 * xterm.c (x_set_cursor_gc): Use display_info->font->fid for GCs.
14471 (x_set_mouse_face_gc, x_new_font): Likewise.
14472 (x_term_init): Setup display_info->font.
14473 (x_delete_terminal): Free display_info->font.
14474
14475 * xfont.c (xfont_draw): Use BLOCK_INPUT and UNBLOCK_INPUT.
14476
14477 * ftxfont.c (ftxfont_default_fid): Delete it.
14478 (ftxfont_open): Set xfont->fid to 0.
14479 (ftxfont_end_for_frame): Clear data specific to the frame and the
14480 font-driver.
14481
14482 * xftfont.c (xftfont_default_fid): Delete it.
14483 (xftfont_open): Set xfont->fid to 0.
14484
14485 * fontset.c (FONTSET_OBJLIST): New macro.
14486 (fontset_find_font): Update font-object list of the fontset.
14487 (free_realized_fontset): New function.
14488 (free_face_fontset): Call free_realized_fontset.
14489 (Ffont_info): Call font_close_object only when enable_font_backend
14490 is set.
14491
14492 * font.c [HAVE_X_WINDOWS]: Include xterm.h.
14493 [HAVE_NTGUI]: Include w32term.h.
14494 [MAC_OS]: Include macterm.ch.
14495 (font_otf_ValueRecord): Use make_number.
14496 (font_finish_cache): Fix handling of reference count.
14497 (font_clear_cache): Update num_fonts.
14498 (font_open_entity): Update smallest_char_width and
14499 smallest_font_height of the frame.
14500 (font_close_object): Update num_fonts.
14501 (Fclear_font_cache): Fix finding the target cache data.
14502
14503 2008-02-16 Glenn Morris <rgm@gnu.org>
14504
14505 * fontset.c (Finternal_char_font): Fix compilation warning.
14506
14507 2008-02-16 Eli Zaretskii <eliz@gnu.org>
14508
14509 * w32.c (init_user_info): Use TOKEN_USER and TOKEN_PRIMARY_GROUP
14510 instead of char arrays. Enlarge the size of array passed to
14511 get_token_information.
14512
14513 * font.c (Ffont_fill_gstring, Fget_font_glyphs): Fix compilation
14514 warnings.
14515
14516 2008-02-15 Dan Nicolaescu <dann@ics.uci.edu>
14517
14518 * .gdbinit: Don't set `args', it breaks gdb --args.
14519
14520 2008-02-14 Stefan Monnier <monnier@iro.umontreal.ca>
14521
14522 * fileio.c (Finsert_file_contents): Adjust offsets when replacing
14523 within a narrowed buffer.
14524
14525 2008-02-14 Kenichi Handa <handa@ni.aist.go.jp>
14526
14527 * coding.c (decode_coding_object, encode_coding_object):
14528 Preserve Vdeactivate_mark. Delete unnecessary call of Fcurrent_buffer.
14529
14530 2008-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
14531
14532 * coding.c (coding_set_destination): Use BEG_BYTE rather than
14533 hardcoding 1.
14534 (detect_coding_system):
14535 * lisp.h (detect_coding_system, chars_in_text, multibyte_chars_in_text)
14536 (string_char_to_byte, string_byte_to_char, insert_from_gap):
14537 * insdel.c (insert_from_gap):
14538 * fns.c (string_char_byte_cache_charpos, string_char_byte_cache_bytepos)
14539 (string_char_to_byte, string_byte_to_char, string_make_multibyte)
14540 (string_to_multibyte):
14541 * character.c (chars_in_text, multibyte_chars_in_text):
14542 * fileio.c (Finsert_file_contents): Use EMACS_INT for buffer positions.
14543
14544 * character.h (FETCH_STRING_CHAR_ADVANCE)
14545 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE)
14546 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA and SREF.
14547 (DEC_POS, BUF_DEC_POS): Use BEG_BYTE rather than hardcoding 1.
14548
14549 * casefiddle.c (casify_region): Only call after-change and composition
14550 functions on the part of the region that was changed.
14551
14552 * keyboard.c (read_avail_input):
14553 * frame.c (Fdelete_frame): Call Fdelete_terminal.
14554
14555 2008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
14556
14557 * buffer.c (clone_per_buffer_values, reset_buffer_local_variables)
14558 (Fbuffer_local_value, Fbuffer_local_variables): Don't forget undo_list.
14559
14560 2008-02-11 Juanma Barranquero <lekktu@gmail.com>
14561
14562 * w32menu.c (push_submenu_start, push_submenu_end)
14563 (push_left_right_boundary, push_menu_pane, push_menu_item):
14564 * keyboard.c (read_key_sequence): Don't pass args with side effects
14565 to AREF, it fails when compiling with -DENABLE_CHECKING.
14566
14567 2008-02-11 Kenichi Handa <handa@ni.aist.go.jp>
14568
14569 * Makefile.in (${lispsource}international/charprop.el):
14570 Delete this target.
14571
14572 * search.c (boyer_moore): Fix incorrect synching of the trunk and
14573 emacs-unicode-2.
14574
14575 2008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
14576
14577 * terminal.c (Fdelete_terminal): Clean up the `force' path.
14578
14579 2008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
14580
14581 * frame.c (Qnoelisp): New symbol.
14582 (syms_of_frame): Initialize it.
14583 (Fdelete_frame): Use it to distinguish a mere `force' passed from some
14584 harmless Elisp code, from a strong `force' from x_connection_closed.
14585 * frame.h (Qnoelisp): Declare.
14586 * xterm.c (x_connection_closed): Pass `noelisp'.
14587
14588 * lisp.h (struct Lisp_Misc_Any, struct Lisp_Marker)
14589 (struct Lisp_Overlay, struct Lisp_Kboard_Objfwd)
14590 (struct Lisp_Save_Value, struct Lisp_Free): Use enum Lisp_Misc_Type
14591 rather than `int' for the type of `type'.
14592
14593 2008-02-10 Dan Nicolaescu <dann@ics.uci.edu>
14594
14595 * s/gnu-linux.h: Remove support for non-ELF and linux-1.x.
14596
14597 * Makefile.in (GNUC): Remove support for gcc-1.x.
14598
14599 2008-02-10 Richard Stallman <rms@gnu.org>
14600
14601 * lisp.h (ASET): Use AREF, not ASLOT.
14602
14603 2008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
14604
14605 * lisp.h (ASET): Check bounds.
14606
14607 2008-02-10 Glenn Morris <rgm@gnu.org>
14608
14609 * buffer.c (mode-name): Doc fix.
14610
14611 2008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
14612
14613 * Makefile.in:
14614 * emacs.c:
14615 * gmalloc.c:
14616 * keyboard.c:
14617 * lisp.h:
14618 * m/ibm370aix.h:
14619 * process.c:
14620 * regex.c:
14621 * s/hpux.h:
14622 * sysdep.c:
14623 * sysselect.h:
14624 * systty.h:
14625 * unexec.c:
14626 * w32term.c:
14627 * xsmfns.c:
14628 * xterm.c: Remove code that deals with obsolete variables.
14629
14630 * s/msdos.h (DONT_NEED_ENVIRON): Don't define.
14631
14632 * ecrt0.c: Replace the DONT_NEED_ENVIRON test with MSDOS test,
14633 nothing else needs it anymore.
14634
14635 2008-02-09 Eli Zaretskii <eliz@gnu.org>
14636
14637 * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use unibyte_to_multibyte_table
14638 instead of unibyte_char_to_multibyte.
14639
14640 2008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
14641
14642 * s/gnu-linux.h: Remove commented out code.
14643
14644 * unexec.c: Remove references to obsolete variable COFF_ENCAPSULATE.
14645
14646 * Makefile.in: Update what RMS says about using autoconf.
14647 (C_COMPILER, COFF_ENCAPSULATE, MAKE_PARALLEL): Remove obsolete variable.
14648 (C_SWITCH_MACHINE_1, C_SWITCH_SYSTEM_1, C_SWITCH_SITE_1)
14649 (C_SWITCH_X_SITE_1, C_SWITCH_X_MACHINE_1)
14650 (C_SWITCH_X_SYSTEM_1): Move invariant code outside conditional.
14651
14652 2008-02-08 Stefan Monnier <monnier@iro.umontreal.ca>
14653
14654 * keymap.c (Fkey_description): Move side effect outside of macro call.
14655
14656 * xfaces.c (Finternal_make_lisp_face):
14657 * keyboard.c (add_command_key, parse_menu_item): Use ASET.
14658
14659 * fontset.c (free_face_fontset): Use FONTSET_FROM_ID.
14660 (syms_of_fontset): Use ASET.
14661
14662 * fns.c (concat): Move side effect outside of macro call.
14663 (hash_clear): Use ASET.
14664
14665 2008-02-08 Richard Stallman <rms@gnu.org>
14666
14667 * frame.c (Fdelete_frame): If FORCE, don't call hooks.
14668 If FORCE, and frame has a surrogate minibuffer for another frame,
14669 delete the other frame first.
14670
14671 2008-02-07 Timo Savola <timo.savola@iki.fi>
14672
14673 * xterm.c (x_detect_focus_change): Handle embed client message.
14674 (handle_one_xevent): Ditto.
14675 (handle_one_xevent): If embedded and we get a button press/release,
14676 request focus.
14677 (xembed_set_info, xembed_send_message): New functions.
14678 (x_make_frame_visible): Call xembed_set_info if embedded.
14679 (x_make_frame_invisible): Call xembed_set_info if embedded.
14680 (x_term_init): Initialize Xatom_XEMBED.
14681 (x_make_frame_visible): Check for FRAME_X_EMBEDDED_P also.
14682 (x_iconify_frame): Ditto.
14683
14684 * xterm.h (struct x_display_info): Add AtomXatom_XEMBED.
14685 (enum xembed_info, enum xembed_message, enum xembed_focus)
14686 (enum xembed_modifier, enum xembed_accelerator): New.
14687 (xembed_set_info, xembed_send_message): Declare.
14688 (FRAME_X_EMBEDDED_P): New.
14689
14690 * gtkutil.c (xg_create_frame_widgets): If frame is embedded, call
14691 gtk_plug_new.
14692
14693 * xfns.c (Fx_create_frame): Do not override the explicitly set parent
14694 window ID of a frame.
14695 (x_window): Reparent frame if embedded.
14696 (Fx_create_frame): Don't set border width if embedded.
14697
14698 * emacs.c (USAGE3): Add --parent-id.
14699 (standard_args): Ditto.
14700
14701 2008-02-07 Jan Djärv <jan.h.d@swipnet.se>
14702
14703 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): Use "do...while (0)".
14704
14705 2008-02-07 Jim Meyering <meyering@redhat.com>
14706
14707 Use "do...while (0)", not "if (1)...else" in macro definitions.
14708 The latter provokes a warning from gcc about the empty else, when
14709 followed by ";". Also, without that trailing semicolon, it would
14710 silently swallow up any following statement.
14711 * syntax.h (SETUP_SYNTAX_TABLE)
14712 (SETUP_SYNTAX_TABLE_FOR_OBJECT): Likewise.
14713 * buffer.h (DECODE_POSITION): Likewise.
14714 * character.h (FETCH_STRING_CHAR_ADVANCE): Likewise.
14715 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): Likewise.
14716 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Likewise.
14717 (FETCH_CHAR_ADVANCE): Likewise.
14718 (FETCH_CHAR_ADVANCE_NO_CHECK): Likewise.
14719
14720 2008-02-07 Jim Meyering <meyering@redhat.com>
14721
14722 * lread.c [lint]: Don't include <sys/inode.h>.
14723
14724 2008-02-07 Stefan Monnier <monnier@iro.umontreal.ca>
14725
14726 * xselect.c (x_handle_dnd_message):
14727 * xmenu.c (digest_single_submenu, xmenu_show):
14728 * xdisp.c (with_echo_area_buffer_unwind_data)
14729 (format_mode_line_unwind_data, unwind_format_mode_line)
14730 (display_menu_bar):
14731 * eval.c (Ffetch_bytecode):
14732 * doc.c (store_function_docstring):
14733 * ccl.c (resolve_symbol_ccl_program, ccl_get_compiled_code)
14734 (Fccl_execute, Fccl_execute_on_string, Fregister_code_conversion_map):
14735 * buffer.c (add_overlay_mod_hooklist): Use ASET.
14736
14737 2008-02-07 Kenichi Handa <handa@m17n.org>
14738
14739 * ftxfont.c (ftxfont_open): Don't set
14740 dpyinfo->smallest_font_height and dpyinfo->smallest_char_width to 0.
14741
14742 * ftfont.c (ftfont_open): Fix previous change.
14743
14744 2008-02-06 Jason Rumney <jasonr@gnu.org>
14745
14746 * w32font.c (w32font_text_extents): Fill in lbearing metric.
14747 Use cached metrics for ASCII characters.
14748 (w32font_open_internal): Don't set font's owning_frame.
14749 Cache metrics for ASCII characters.
14750
14751 * w32font.h (struct w32font_info): Add ascii_metrics.
14752 Remove owning_frame.
14753
14754 2008-02-06 Kenichi Handa <handa@ni.aist.go.jp>
14755
14756 * xdisp.c (x_produce_glyphs): Don't set it->ascent and it->descent
14757 to negative value.
14758
14759 * ftxfont.c (ftxfont_draw): Use s->font_info, not face->font_info.
14760
14761 * ftfont.c (ftfont_open): Fix calculation of font->font.average_width.
14762
14763 * charset.c (syms_of_charset): Set QCtest and Qeq.
14764
14765 2008-02-06 Stefan Monnier <monnier@iro.umontreal.ca>
14766
14767 * process.c (Fstart_process):
14768 * callproc.c (Fcall_process): Handle the case where
14769 Funhandled_file_name_directory returns nil.
14770
14771 * font.h (enum lgstring_indices, enum lglyph_indices): New enums.
14772 (LGSTRING_SLOT, LGSTRING_SET_SLOT): New macros.
14773 * font.c (check_gstring): Use them and AREF to access the vector before
14774 we know it's really a gstring.
14775 (Ffont_shape_text): Fix typo.
14776 (Ffont_shape_text, Ffont_otf_alternates): Fix up int/Lisp_Object mixups.
14777
14778 * composite.h (Fcompose_region_internal, Fcompose_string_internal):
14779 Declare.
14780
14781 * chartab.c (make_sub_char_table): Remove noop-yet-incorrect statement.
14782
14783 2008-02-05 Jason Rumney <jasonr@gnu.org>
14784
14785 * w32font.c (w32font_open_internal): Fill min_width with tmAveCharWidth.
14786 Set smallest_font_height and smallest_char_width in display info.
14787
14788 2008-02-05 Kenichi Handa <handa@ni.aist.go.jp>
14789
14790 * coding.c (decode_eol): Pay attention to coding->dst_multibyte.
14791
14792 2008-02-05 Miles Bader <miles@gnu.org>
14793
14794 * xfaces.c (get_lface_attributes, merge_named_face)
14795 (lookup_named_face, lookup_derived_face, realize_named_face):
14796 Revert 2008-02-01 change by cyd@stupidchicken.com.
14797
14798 2008-02-04 Kenichi Handa <handa@ni.aist.go.jp>
14799
14800 * fontset.c (Ffontset_info): Handle the case of inhibitting the
14801 fallback fonts.
14802 (Ffontset_info) [USE_FONT_BACKEND]: Fix getting of opened font names.
14803
14804 2008-02-04 Jason Rumney <jasonr@gnu.org>
14805
14806 * w32font.c (w32font_open_internal): Use font_unparse_fcname to
14807 set full_name.
14808 (w32font_open_internal): Use xmalloc, xrealloc, xfree.
14809
14810 2008-02-03 Jason Rumney <jasonr@gnu.org>
14811
14812 * makefile.w32-in (OBJ1): Include font.o here.
14813 (FONTOBJ) [USE_FONTBACKEND]: Instead of here.
14814
14815 2008-02-02 Jason Rumney <jasonr@gnu.org>
14816
14817 * makefile.w32-in (temacs): Bump EMHEAP to 21.
14818
14819 2008-02-01 Jason Rumney <jasonr@gnu.org>
14820
14821 * s/cygwin.h: Define VIRT_ADDR_VARIES.
14822
14823 * puresize.h [VIRT_ADDR_VARIES]: Don't include CYGWIN in condition.
14824
14825 2008-02-01 Andreas Schwab <schwab@suse.de>
14826
14827 * Makefile.in (shortlisp, lisp): Update for rename of
14828 ../lisp/language/myanmar.el.
14829
14830 2008-02-01 Chong Yidong <cyd@stupidchicken.com>
14831
14832 * xfaces.c (get_lface_attributes): Delete function.
14833 (merge_named_face, lookup_named_face, lookup_derived_face)
14834 (realize_named_face): Call lface_from_face_name directly, and use
14835 the fact that merge_face_vectors does not alter its FROM argument.
14836
14837 2008-02-01 Jason Rumney <jasonr@gnu.org>
14838
14839 * w32term.c (w32_read_socket) <WM_CHAR>: Decode non-Unicode
14840 input in the default locale. Handle non-Unicode multibyte input.
14841
14842 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14843
14844 * fontset.c (reorder_font_vector): Exclude nil elements from the
14845 font group. Don't try multiple fonts.
14846 (fontset_font): Adjust for the above change.
14847 (Finternal_char_font): Return nil if the found font doesn't
14848 contain the character ch.
14849
14850 * Makefile.in (lisp, shortlisp): Add cham.el.
14851
14852 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14853
14854 * font.h (FONTP): Make it return 1 also for a font-object.
14855
14856 * .gdbinit (xfontset): New function.
14857
14858 * font.c (font_find_for_lface): Check if the character C is
14859 supported or not only for the first font.
14860
14861 * fontset.c (reorder_font_vector): Fix typo.
14862 (fontset_find_font): Don't add a font-spec specifying a script.
14863 Use 0 (not Qt) for the indication of empty font-group. Change the
14864 format of RFONT-DEF. Return Qt if no font in the font-group
14865 support the character.
14866 (fontset_font): Adjust for the above change. If no font was
14867 found the character, remember that.
14868 (face_for_char): Adjust for the change of RFONT-DEF.
14869 (Fset_fontset_font): Allow nil for FONT-SPEC to explicitly specify
14870 no font for the target.
14871 (Finternal_char_font): Adjust for the change of RFONT-DEF.
14872
14873 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14874
14875 * font.c (font_load_for_face): Handle the case that the font in
14876 face->lface is a string.
14877
14878 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14879
14880 * xfaces.c (set_lface_from_font_and_fontset): Set the fontname in lface.
14881
14882 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14883
14884 * xfaces.c (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]:
14885 Fix previous change. If the frame is not on a window system,
14886 signal an error.
14887
14888 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14889
14890 * coding.c (decode_coding_object, encode_coding_object): Adjust
14891 marker positions after conversion.
14892
14893 * lisp.h (struct Lisp_Marker): New member need_adjustment.
14894
14895 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14896
14897 * font.c (font_find_for_lface): Fix the handling of the return
14898 value of font_has_char.
14899 (Ffont_shape_text): Fix previous change.
14900
14901 * fontset.c (FONTSET_REF_AND_RANGE): Delete it.
14902 (fontset_ref_and_range): Delete it.
14903 (fontset_find_font): Call char_table_ref_and_range instead of
14904 FONTSET_REF_AND_RANGE.
14905 (make_fontset): Don't setup font groups of Latin here.
14906 (Fset_fontset_font): Don't overwrite the setting of FONTSET_ASCII.
14907 (new_fontset_from_font): Make the specified font the default for
14908 all Latin characters.
14909
14910 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14911
14912 * xfaces.c (Finternal_set_lisp_face_attribute): Check if the frame
14913 is on a window system before accessing the fontset of the frame.
14914
14915 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14916
14917 * Makefile.in (lisp, shortlisp): Add kherm.el and myanmar.el.
14918
14919 * ftfont.c (ftfont_driver): Set ftfont_shape in ftfont_driver only
14920 when both HAVE_M17N_FLT and HAVE_LIBOTF are defined.
14921
14922 * font.c (Ffont_shape_text): If the font driver doesn't have a
14923 shaper function, make zero-width glyphs to have at least one-pixel
14924 width. Fix setting of `to' field of glyphs.
14925
14926 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14927
14928 * ftfont.c (ftfont_drive_otf): Fix setting of FROM and TO slots of
14929 glyphs.
14930
14931 * font.h (struct font_driver): Improve docstring of member `shape'.
14932
14933 2008-02-01 Kenichi Handa <handa@m17n.org>
14934
14935 * composite.c (syms_of_composite): Fix docstring of
14936 auto-composition-function.
14937
14938 * font.h (LGLYPH_SIZE): New macro.
14939
14940 * font.c (Ffont_fill_gstring): Stop filling when a character not
14941 supported by the font is found.
14942 (Ffont_shape_text): When a shape callback function returns nil,
14943 try at most two more times with larger gstring.
14944 (Ffont_at): Fix getting of w. Call font_at with correct 5th argument.
14945
14946 * xdisp.c (handle_auto_composed_prop): Change the argument to
14947 auto-composition-function.
14948
14949 * ftfont.c (ftfont_encode_char): Use the macro FONT_INVALID_CODE.
14950 (ftfont_shape_by_flt): If an element of lgstring is nil, make a
14951 Lispy glyph and store it in the lgstring.
14952
14953 * xfont.c (xfont_encode_char): Use the macro FONT_INVALID_CODE.
14954
14955 * xftfont.c (xftfont_encode_char): Use the macro FONT_INVALID_CODE.
14956
14957 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14958
14959 * font.c (Ffont_shape_text): Avoid unnecessary composition.
14960
14961 * fontset.c (Vfont_encoding_charset_alist): New variable.
14962 (syms_of_fontset): DEFVAR it.
14963 (reorder_font_vector, fontset_find_font): Optimize for the case of
14964 no need of reordering.
14965 (face_for_char): Map the charset property by
14966 Vfont_encoding_charset_alist.
14967
14968 2008-02-01 Jason Rumney <jasonr@gnu.org>
14969
14970 * w32font.c (logfonts_match): Don't check adstyle here.
14971 (font_matches_spec): Check here against physical font instead.
14972 (add_font_entity_to_list): Avoid some substitutions.
14973
14974 * font.c (font_parse_fcname): Default weight and slant to normal.
14975 (font_score): Prefer normal fonts if weight or slant unspecified.
14976 (font_score) [WINDOWSNT]: Scale weight difference down to closer
14977 match freetype scores.
14978
14979 2008-02-01 Jason Rumney <jasonr@gnu.org>
14980
14981 * w32font.c (w32font_text_extents): Don't use the frame stored in the
14982 font, as it may have been deleted.
14983 (w32_enumfont_pattern_entity): Map generic family to adstyle using
14984 most common hyphenless variation.
14985 (logfonts_match): Check generic family.
14986 (font_matches_spec): Don't check generic family here.
14987 (fill_in_logfont): Set generic family based on adstyle.
14988
14989 * w32font.h (w32font_get_cache): Update declaration.
14990
14991 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14992
14993 * ftfont.c (ftfont_get_cache): Adjust the argument type.
14994
14995 * frame.c (x_set_font_backend): Don't call Fclear_font_cache.
14996 If none of the new drivers are available, call font_update_drivers
14997 with the old drivers.
14998
14999 * w32font.c (w32font_get_cache): Adjust the argument type.
15000
15001 * xfont.c (xfont_get_cache): Adjust the argument type.
15002
15003 * font.h (struct font_driver): Change argument type of get_cache.
15004
15005 * xftfont.c (xftfont_start_for_frame): Delete prototype.
15006
15007 * font.c (Ffont_get): Fix arguments to Fassoc.
15008 (font_prepare_cache, font_finish_cache, font_get_cache): New functions.
15009 (font_clear_cache): New function.
15010 (font_list_entities, font_matching_entity): Use font_get_cache.
15011 (font_update_drivers): Call font_clear_cache when finishing a driver.
15012
15013 * fontset.c (fontset_find_font): Fix previous change.
15014
15015 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15016
15017 * xterm.c (x_check_font) [USE_FONT_BACKEND]: Don't access
15018 dpyinfo->font_table.
15019 (x_delete_display) [USE_FONT_BACKEND]: Likewise.
15020 (x_delete_terminal) [USE_FONT_BACKEND]: Likewise.
15021
15022 * font.c (font_at): Handle the case that the arg C is negative.
15023 Handle the unibyte case.
15024 (Ffont_at): Call font_at with the arg C -1.
15025
15026 * xdisp.c (handle_auto_composed_prop): Don't get a character at
15027 the position here, and call font_at with the arg C -1.
15028 Don't check the range of the existing composition at the point.
15029
15030 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15031
15032 * fontset.c (fontset_add): New args charset_id and family.
15033 Change caller.
15034 (load_font_get_repertory, fontset_find_font): Assume that
15035 font_spec is always a font-spec object.
15036 (Fset_fontset_font): Always store a font-spec object in a fontset.
15037
15038 * xdisp.c (handle_auto_composed_prop): Use Fget_text_property
15039 instead of get_property_and_range.
15040
15041 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15042
15043 * xftfont.c (struct xftfont_info): Delete the member ft_face.
15044 (xftfont_open): Don't keep locking face.
15045 (xftfont_close): Don't unlock face.
15046 (xftfont_anchor_point, xftfont_shape): Lock and unlock face.
15047
15048 * fontset.c (fontset_find_font): Don't prefer a font of
15049 supplementary charset.
15050
15051 2008-02-01 Kenichi Handa <handa@m17n.org>
15052
15053 * ftfont.c (struct OpenTypeSpec): Rename members script_tag to
15054 script, langsys_tag to langsys, new member script.
15055 (OTF_TAG_STR): Terminate by '\0'.
15056 (ftfont_get_open_type_spec): If :otf prop is spec, limit the
15057 listing to the script specified in that property. Fix arg to
15058 OTF_check_features.
15059
15060 2008-02-01 Jason Rumney <jasonr@gnu.org>
15061
15062 * w32font.h: New file.
15063
15064 * w32font.c: Include it.
15065 (struct w32font_info): Add owning_frame field. Move to w32font.h.
15066 (w32font_open): Set owning_frame.
15067 (w32font_text_extents): Use owning_frame.
15068 (struct font_callback_data): Add opentype_only field.
15069 (add_font_entity_to_list): Use it to filter fonts.
15070 Don't check against full name.
15071 (w32font_list_internal): New function.
15072 (w32font_list): Use it.
15073 (w32font_match_internal): New function.
15074 (w32font_match): Use it.
15075 (w32font_open_internal): New function.
15076 (w32font_open): Use it.
15077 (w32font_get_cache, w32font_close, w32font_has_char)
15078 (w32font_encode_char, w32font_text_extents, w32font_draw):
15079 Make non-static.
15080
15081 * makefile.w32-in (w32font.o): Depend on w32font.h.
15082
15083 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15084
15085 * charset.c (Fdefine_charset_internal): Record a supplementary
15086 charset at the tail of Vcharset_order_list.
15087
15088 * font.c (Ffont_shape_text): Fix the return value.
15089
15090 * ftfont.c (OTF_SYM_TAG, OTF_TAG_STR): Fix argument names.
15091
15092 * xdisp.c (handle_auto_composed_prop): Fix previous change.
15093
15094 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15095
15096 * ftfont.c (struct OpenTypeSpec): New struct.
15097 (OTF_SYM_TAG, OTF_TAG_STR): New macros.
15098 (ftfont_get_open_type_spec): New function.
15099 (ftfont_list) [HAVE_LIBOTF]: Check otf-spec property.
15100
15101 * lread.c (read1): Redo the previous change with checking Vpurify_flag.
15102
15103 2008-02-01 Jason Rumney <jasonr@gnu.org>
15104
15105 * w32font.c (add_font_entity_to_list): Compare only the beginning
15106 of full name.
15107
15108 2008-02-01 Kenichi Handa <handa@m17n.org>
15109
15110 * xdisp.c (handle_auto_composed_prop): Simplify the code.
15111 Never return HANDLED_RECOMPUTE_PROPS.
15112
15113 2008-02-01 Kenichi Handa <handa@m17n.org>
15114
15115 * font.c (font_gstring_produce): Delete it.
15116
15117 * composite.h (COMPOSITION_METHOD):
15118 Handle COMPOSITION_WITH_GLYPH_STRING.
15119
15120 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15121
15122 * xfont.c (Qx): Delete.
15123 (syms_of_xfont): Don't initialize Qx.
15124
15125 * composite.h (enum composition_method):
15126 Define COMPOSITION_WITH_GLYPH_STRING unconditionally.
15127
15128 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15129
15130 * xfaces.c [HAVE_WINDOW_SYSTEM]: Include "font.h" unconditionally.
15131 (choose_face_font): Accept new form of font-spec.
15132
15133 * frame.h (font_driver_list): Declare it unconditionally.
15134 (struct frame): Define members font_driver_list and font_data_list
15135 unconditionally.
15136
15137 * fontset.c: Include "font.h" unconditionally.
15138 (generate_ascii_font_name): Use font_parse_xlfd and font_unparse_xlfd.
15139 (Fset_fontset_font): Accept a font-spec object.
15140
15141 * font.c (font_unparse_xlfd): If pixel_size is zero, make the
15142 PIXEL_SIZE part a wild card.
15143
15144 * dispextern.h (struct glyph_string): Define members clip and
15145 num_clips unconditionally.
15146 (struct face): Define members font_info and extra unconditionally.
15147
15148 * ftfont.c (ftfont_open): Set members maybe_otf and otf of
15149 ftfont_info only when HAVE_LIBOTF is defined.
15150
15151 2008-02-01 Andreas Schwab <schwab@suse.de>
15152
15153 * xdisp.c (back_to_previous_visible_line_start): Fix type of beg
15154 and end.
15155
15156 2008-02-01 Jason Rumney <jasonr@gnu.org>
15157
15158 * w32font.c (w32font_driver): Add new fields.
15159
15160 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15161
15162 * Makefile.in (ALL_CFLAGS): Add @M17N_FLT_CFLAGS@.
15163 (FONTSRC, FONTOBJ) [HAVE_WINDOW_SYSTEM]: Set them unconditionally.
15164 (LIBES): Add @M17N_FLT_CFLAGS@.
15165
15166 * composite.c (compose_text): Don't treat the new style
15167 composition specially.
15168
15169 * emacs.c (main): Call syms_of_font unconditionally.
15170
15171 * font.h (FONT_ENTITY_NOT_LOADABLE)
15172 (FONT_ENTITY_SET_NOT_LOADABLE): New macros.
15173 (LGSTRING_XXXX, LGLYPH_XXX): Adjust for the change of lispy gstring.
15174 (struct font_driver): New member shape.
15175 (font_registry_charsets): Extern it.
15176 (font_find_for_lface, font_prepare_composition): Adjust prototype.
15177 (font_otf_capability, font_drive_otf): Delete their externs.
15178
15179 * font.c [HAVE_M17N_FLT]: Include <m17n-flt.h>.
15180 (font_charset_alist, font_registry_charsets): Move from xfont.c
15181 and rename.
15182 (font_prop_validate_otf): New function.
15183 (font_property_table): Register it for QCotf.
15184 (DEVICE_DELTA, adjust_anchor, REPLACEMENT_CHARACTER)
15185 (font_drive_otf): Delete.
15186 (font_prepare_composition): New arg F. Adjust for the change of
15187 lispy gstring.
15188 (font_find_for_lface): New arg C.
15189 (font_load_for_face): Adjust for the change of font_find_for_lface.
15190 (Ffont_make_gstring, Ffont_fill_gstring): Adjust for the change of
15191 lispy gstring.
15192 (Ffont_shape_text): New function.
15193 (Fopen_font): If the font size is not given, use 12-pixel.
15194 (Ffont_at): New arg STRING.
15195 (syms_of_font): Initalize font_charset_alist.
15196 Declare Ffont_shape_text as a Lisp function. Call syms_of_XXfont
15197 conditionally.
15198
15199 * fontset.c (fontset_find_font) [USE_FONT_BACKEND]: Try multiple
15200 fonts of the same font-spec. Change the format of RFONT-DEF.
15201 (face_for_char, make_fontset_for_ascii_face, Finternal_char_font):
15202 Adjust for the change of RFONT-DEF.
15203 (Fset_fontset_font) [USE_FONT_BACKEND]: Handle new format of font-spec.
15204
15205 * ftfont.h: New file.
15206
15207 * ftfont.c: Don't include Freetype headers. Include "ftfont.h".
15208 (struct ftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
15209 (ftfont_open) [HAVE_LIBOTF]: Initialize the above members.
15210 (ftfont_driver) [HAVE_LIBOTF, HAVE_M17N_FLT]: Don't set
15211 font_otf_capability and font_drive_otf, set ftfont_shape.
15212 (ftfont_list): Adjust for the change of :otf property value.
15213 (struct MFLTFontFT) [HAVE_LIBOTF, HAVE_M17N_FLT]: New struct.
15214 (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_check_otf)
15215 (adjust_anchor, ftfont_drive_otf, ftfont_shape_by_flt)
15216 (ftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
15217 (DEVICE_DELTA) [HAVE_LIBOTF, HAVE_M17N_FLT]: New macro.
15218 (otf_gstring, gstring, m17n_flt_initialized): New variables.
15219
15220 * w32term.c (x_draw_composite_glyph_string_foreground):
15221 Adjust for the change of lispy gstring.
15222
15223 * xdisp.c (handle_composition_prop): Adjust for the change of
15224 lispy gstring. Call a function for auto-composition with the
15225 third arg it->window.
15226 (fill_composite_glyph_string): Adjust for the change of lispy string.
15227 (x_produce_glyphs): Adjust for the change of font_prepare_compositionl.
15228
15229 * xfaces.c (set_font_frame_param): Adjust for the change of
15230 font_find_for_lface.
15231
15232 * xfont.c (x_font_charset_alist): Move to font.c and rename.
15233 (xfont_registry_charsets): Likewise. Change caller.
15234 (syms_of_xfont): Don't handle x_font_charset_alist.
15235
15236 * xftfont.c: Include "ftfont.h".
15237 (struct xftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
15238 (xftfont_open) [HAVE_LIBOTF]: Initialize the above members.
15239 (xftfont_close) [HAVE_LIBOTF]: Close otf.
15240 (xftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
15241 (syms_of_xftfont) [HAVE_LIBOTF, HAVE_M17N_FLT]:
15242 Set xftfont_driver.shape to xftfont_shape.
15243
15244 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
15245 the change of lispy gstring.
15246
15247 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15248
15249 * ftxfont.c (ftxfont_end_for_frame): Fix array indexing error.
15250
15251 2008-02-01 Jason Rumney <jasonr@gnu.org>
15252
15253 * w32font.c (w32font_draw): Fill background manually.
15254
15255 2008-02-01 Jason Rumney <jasonr@gnu.org>
15256
15257 * font.c (Qfontp): Remove unused symbol.
15258 (QCantialias): New symbol.
15259 (syms_of_font): Define it.
15260 (font_property_table): Set a validator for QCantialias.
15261
15262 * w32font.c (CLEARTYPE_QUALITY, CLEARTYPE_NATURAL_QUALITY):
15263 Define if not already.
15264 (QCfamily): Share with xfaces.c.
15265 (Qstandard, Qsubpixel, Qnatural): New symbols.
15266 (syms_of_w32font): Define them. Don't define QCfamily here.
15267 (w32_antialias_type, lispy_antialias_type): New functions.
15268 (w32_enumfont_pattern_entity): New arg requested_font.
15269 Set antialias parameter if non-default was requested.
15270 (fill_in_logfont): Fill in lfQuality if :antialias specified.
15271
15272 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15273
15274 * lread.c (read1): Undo the previous change.
15275
15276 2008-02-01 CHENG Gao <chenggao@gmail.com> (tiny change)
15277
15278 * frame.c (Fdelete_frame): Call font_update_drivers only when
15279 USE_FONT_BACKEND is defined.
15280
15281 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15282
15283 * font.h (struct font_bitmap): New member bits_per_pixel.
15284 (struct font_driver): New members start_for_frame and end_for_frame.
15285 (struct font_data_list): New struct.
15286 (font_put_frame_data, font_get_frame_data): Extern them.
15287
15288 * frame.h (struct frame): New member font_data_list.
15289
15290 * font.c (font_update_drivers): Call driver->start_for_frame and
15291 driver->end_for_frame at proper timings.
15292 (font_put_frame_data, font_get_frame_data): New functions.
15293 (Ffont_spec): Add usage in the docstring.
15294
15295 * frame.c (make_frame): Initialize f->font_data_list to NULL.
15296 (Fdelete_frame): Call font_update_drivers.
15297
15298 * xftfont.c (struct xftface_info): Delete the member xft_draw.
15299 (xftfont_prepare_face, xftfont_done_face): Adjust for the above change.
15300 (xftfont_get_xft_draw): New function.
15301 (xftfont_draw): Get XftDraw by xftfont_get_xft_draw.
15302 (xftfont_end_for_frame): New function.
15303 (syms_of_xftfont): Set xftfont_driver.end_for_frame.
15304
15305 * ftxfont.c (ftxfont_get_gcs): Rename from ftxfont_create_gcs.
15306 Change argument. Cache GCs in the per-frame data.
15307 (struct ftxfont_frame_data): New struct.
15308 (ftxfont_draw_bitmap): New arg gc_fore and flush.
15309 (ftxfont_prepare_face, ftxfont_done_face): Delete them.
15310 (ftxfont_draw): Get GCs by ftxfont_get_gcs. Reflect s->clip in GCs.
15311 (ftxfont_end_for_frame): New function.
15312 (syms_of_ftxfont): Set ftxfont_driver.end_for_frame.
15313
15314 * ftfont.c (ftfont_get_bitmap): Set bitmap->bits_per_pixel.
15315
15316 2008-02-01 Kenichi Handa <handa@m17n.org>
15317
15318 * xselect.c (Vselection_coding_system)
15319 (Vnext_selection_coding_system): Delete them.
15320 (syms_of_xselect): Don't declare selection-coding-system and
15321 next-selection-coding-system. They are declared in select.el.
15322
15323 2008-02-01 Jason Rumney <jasonr@gnu.org>
15324
15325 * w32term.h (WM_UNICHAR, UNICODE_NOCHAR): Define if not already.
15326
15327 * w32fns.c: Include imm.h.
15328 (get_composition_string_fn, get_ime_context_fn): New optional
15329 system functions.
15330 (globals_of_w32fns): Load them from imm32.dll.
15331 (ignore_ime_char): New flag.
15332 (w32_wnd_proc): Handle WM_UNICHAR, WM_IME_CHAR and
15333 WM_IME_ENDCOMPOSITION messages.
15334
15335 * w32term.c (w32_read_socket) [WM_UNICHAR]: Handle as
15336 MULTIBYTE_CHAR_KEYSTROKE_EVENT.
15337
15338 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15339
15340 * lread.c (READCHAR): Call readchar with the 2nd arg NULL.
15341 (READCHAR_REPORT_MULTIBYTE): New macro.
15342 (readchar): New 2nd arg MULTIBYTE.
15343 (read1): Use READCHAR_REPORT_MULTIBYTE for the first read.
15344 Make symbol's name multibyte according to the multibyteness of the
15345 source.
15346
15347 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15348
15349 * xfaces.c (face_for_overlay_string): Call lookup_face with
15350 correct arguments (fix of synching with the trunk).
15351
15352 2008-02-01 Kenichi Handa <handa@m17n.org>
15353
15354 * font.c (font_prop_validate_symbol, font_prop_validate_style)
15355 (font_prop_validate_non_neg, font_prop_validate_spacing):
15356 Delete argument prop_index.
15357 (font_property_table): Change arguments to validater. Change Callers.
15358 (font_lispy_object): Delete.
15359 (font_at): Use font_find_object instead fo font_lispy_object.
15360
15361 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15362
15363 * fileio.c (Fexpand_file_name): Adjust multibyteness of directory
15364 and file names.
15365
15366 2008-02-01 Jason Rumney <jasonr@gnu.org>
15367
15368 * w32font.c (add_font_name_to_list): Avoid vertical fonts.
15369 (font_matches_spec): Remove debug output.
15370 (add_font_entity_to_list): Avoid using substituted fonts.
15371
15372 2008-02-01 Jason Rumney <jasonr@gnu.org>
15373
15374 * doc.c (Fsnarf_documentation):
15375 * Makefile.in (temacs${EXEEXT}, mostlyclean): Undo last change.
15376
15377 2008-02-01 Miles Bader <miles@gnu.org>
15378
15379 * dispextern.h (struct glyph_row): Only define "clip" field if
15380 HAVE_WINDOW_SYSTEM is defined.
15381
15382 2008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
15383
15384 Fix up multi-tty merge.
15385
15386 * xterm.c (handle_one_xevent): Remove duplicate code and fix up nesting
15387 and indentation.
15388
15389 * xfaces.c (free_realized_face, clear_face_gcs):
15390 Include font_done_for_face in the input_blocked section, just in case.
15391
15392 * xdisp.c (decode_mode_spec): Use terminal-local coding systems.
15393 (get_char_face_and_encoding): Undo last change and remove the *other*
15394 duplicate definition (i.e. keep the one that's better scoped and that
15395 includes code for the font-backend).
15396
15397 * terminal.c (create_terminal): Default keyboard_coding to
15398 `no-conversion' and terminal_coding to `undecided'.
15399
15400 * lread.c (read1): Use XSETPVECTYPE to set a pseudovector's tag.
15401
15402 * fontset.c (free_realized_fontsets): Check that the table entry does
15403 contain a fontset before trying to compare it to `base'.
15404
15405 * emacs.c (main): Move syms_of_data, syms_of_fileio, syms_of_alloc,
15406 syms_of_charset, and syms_of_coding earlier because init_window_once
15407 now needs Vcoding_system_hash_table to be setup.
15408
15409 * coding.h (default_buffer_file_coding): Remove.
15410
15411 * coding.c (default_buffer_file_coding): Remove.
15412 (Fterminal_coding_system, Fkeyboard_coding_system): Use ->id rather
15413 than ->symbol, and use the terminal-local coding system.
15414 (syms_of_coding): Don't setup the coding-systems that are not
15415 terminal-local.
15416 (Fdefine_coding_system_internal): Use XCAR/XCDR.
15417
15418 * chartab.c (Fmake_char_table, make_sub_char_table, copy_char_table):
15419 Use XSETPVECTYPE now that XSETCHAR_TABLE doesn't set the tag anymore.
15420
15421 * alloc.c (Fmake_char_table, make_sub_char_table): Remove. They're now
15422 in chartab.c and were re-added here by mistake.
15423 (Fpurecopy): Use XSETPVECTYPE after copying a COMPILED pseudovector.
15424
15425 * doc.c (Fsnarf_documentation):
15426 * Makefile.in (temacs${EXEEXT}, mostlyclean): Move buildobj.lst from
15427 src to etc.
15428
15429 * ChangeLog.10: Add mistakenly removed entry.
15430
15431 2008-02-01 Dan Nicolaescu <dann@ics.uci.edu>
15432
15433 * Makefile.in (fringe.o, minibuf.o): Fix dependencies.
15434
15435 2008-02-01 Miles Bader <miles@gnu.org>
15436
15437 * xdisp.c (get_char_face_and_encoding): Remove extraneous definition.
15438 Add extra args to FACE_FOR_CHAR.
15439
15440 2008-02-01 Kenichi Handa <handa@m17n.org>
15441
15442 * keymap.c (where_is_internal_1): If key is a cons, store the copy
15443 in sequence.
15444
15445 * chartab.c (map_sub_char_table, map_char_table): If the range
15446 contains just one character, call the function with that character
15447 even if the depth is not 3.
15448
15449 2008-02-01 Jason Rumney <jasonr@gnu.org>
15450
15451 * w32font.c (w32font_text_extents): Calculate metrics for the
15452 whole string.
15453
15454 2008-02-01 Jason Rumney <jasonr@gnu.org>
15455
15456 * w32xfns.c (get_next_msg): Consolidate WM_PAINT messages.
15457
15458 2008-02-01 Jason Rumney <jasonr@gnu.org>
15459
15460 * w32term.c (x_set_glyph_string_clipping): Use
15461 get_glyph_string_clip_rects.
15462 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
15463 Adjust for the change of struct glyph_string.
15464
15465 * w32font.c (w32font_draw): Do clipping here.
15466
15467 2008-02-01 Kenichi Handa <handa@m17n.org>
15468
15469 * xftfont.c (xftfont_draw): Adjust for the change of struct
15470 glyph_string.
15471
15472 * xterm.c (x_set_glyph_string_clipping): Use
15473 get_glyph_string_clip_rects.
15474 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
15475 Adjust for the change of struct glyph_string.
15476
15477 * xdisp.c (get_glyph_string_clip_rects): Reflect s->row->clip to
15478 the resulting clip(s}.
15479 (expose_overlaps): Add arg r. Change callers. Set it to
15480 row->clip temporarily.
15481 (expose_window): Redraw rows overlapping the exposed area.
15482
15483 * dispextern.h (struct glyph_row): New member clip.
15484 (struct glyph_string): Delete members clip_x, clip_y, clip_width,
15485 clip_height, new member clip, and num_clips.
15486
15487 2008-02-01 Kenichi Handa <handa@m17n.org>
15488
15489 * data.c (Fchar_or_string_p): Fix docstring.
15490
15491 2008-02-01 Kenichi Handa <handa@m17n.org>
15492
15493 * xftfont.c (xftfont_draw): If s->font_info != s->face->font_info,
15494 create a temporary XftDraw object.
15495
15496 2008-02-01 Kenichi Handa <handa@m17n.org>
15497
15498 * font.c (Ffontp): Fix docstring.
15499
15500 * coding.c (detect_coding_iso_2022): Don't treat SI/SO codes as a
15501 strong evidence of ISO-2022.
15502
15503 2008-02-01 Kenichi Handa <handa@m17n.org>
15504
15505 * abbrev.c (abbrev_check_chars): Use CHAR_TABLE_REF, not
15506 SYNTAX_ENTRY_FOLLOW_PARENT.
15507
15508 2008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
15509
15510 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and change
15511 its type.
15512 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
15513 Update to the new type of weak_hash_tables and next_weak.
15514
15515 * lisp.h (struct Lisp_Hash_Table): Change next_weak from Lisp_Object to
15516 a plain C pointer to Lisp_Hash_Table.
15517
15518 * lisp.h (XGCTYPE, GC_HASH_TABLE_P, GC_NILP, GC_NUMBERP, GC_NATNUMP)
15519 (GC_INTEGERP, GC_SYMBOLP, GC_MISCP, GC_VECTORLIKEP, GC_STRINGP)
15520 (GC_CONSP, GC_FLOATP, GC_VECTORP, GC_OVERLAYP, GC_MARKERP)
15521 (GC_INTFWDP, GC_BOOLFWDP, GC_OBJFWDP, GC_BUFFER_OBJFWDP)
15522 (GC_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP)
15523 (GC_KBOARD_OBJFWDP, GC_PSEUDOVECTORP, GC_WINDOW_CONFIGURATIONP)
15524 (GC_PROCESSP, GC_WINDOWP, GC_SUBRP, GC_COMPILEDP, GC_BUFFERP)
15525 (GC_SUB_CHAR_TABLE_P, GC_CHAR_TABLE_P, GC_BOOL_VECTOR_P, GC_FRAMEP)
15526 (GC_EQ): Remove since they've been identical to their non-GC_
15527 alter-egos ever since the markbit was eradicated.
15528
15529 * alloc.c:
15530 * buffer.c:
15531 * buffer.h:
15532 * data.c:
15533 * fileio.c:
15534 * filelock.c:
15535 * fns.c:
15536 * frame.h:
15537 * lisp.h:
15538 * macterm.c:
15539 * print.c:
15540 * process.c:
15541 * w32fns.c:
15542 * w32menu.c:
15543 * w32term.c:
15544 * xfns.c:
15545 * xmenu.c:
15546 * xterm.c: Replace uses of GC_* macros with the non-GC_ versions.
15547
15548 2008-02-01 Kenichi Handa <handa@m17n.org>
15549
15550 * chartab.c (map_sub_char_table): Make it work for the top-level
15551 char-table. Fix handling of parent char-table.
15552 (map_char_table): Adjust for the above change.
15553
15554 2008-02-01 Jason Rumney <jasonr@gnu.org>
15555
15556 * w32font.c (Qgdi): Rename from Qw32.
15557
15558 2008-02-01 Jason Rumney <jasonr@gnu.org>
15559
15560 * w32bdf.c (get_quoted_string): Make function static.
15561
15562 2008-02-01 Kenichi Handa <handa@m17n.org>
15563
15564 * xftfont.c (xftfont_open): If one of font's ASCII glyph has
15565 bigger ascent and descent than those of the font, use them as
15566 font's ascent and descent.
15567
15568 2008-02-01 Kenichi Handa <handa@m17n.org>
15569
15570 * Makefile.in (${lispsource}international/charprop.el): Move this
15571 target within "#ifdef HAVE_UNIDATA" and "#endif".
15572
15573 2008-02-01 Kenichi Handa <handa@m17n.org>
15574
15575 * Makefile.in (lisp): Add ${lispsource}language/tai-viet.el.
15576 (shortlisp): Add ../lisp/language/tai-viet.el.
15577
15578 2008-02-01 Ulrich Mueller <ulm@gentoo.org>
15579
15580 * Makefile.in (${lispsource}international/charprop.el): Depend on
15581 temacs${EXEEXT}.
15582
15583 2008-02-01 Jason Rumney <jasonr@gnu.org>
15584
15585 * w32font.c (w32font_close): Delete the GDI font object.
15586
15587 * w32menu.c: Include character.h.
15588
15589 * w32proc.c: Likewise.
15590
15591 * w32select.c: Likewise.
15592
15593 * makefile.w32-in (w32proc.o): Depend on character.h.
15594
15595 2008-02-01 Jason Rumney <jasonr@gnu.org>
15596
15597 * w32fns.c (syms_of_w32fns): Use DEFSYM macro.
15598
15599 * w32menu.c (syms_of_w32menu): Likewise.
15600
15601 * w32proc.c (syms_of_ntproc): Likewise.
15602
15603 * w32select.c (syms_of_w32select): Likewise.
15604
15605 * w32term.c (syms_of_w32term): Likewise.
15606
15607 2008-02-01 Jason Rumney <jasonr@gnu.org>
15608
15609 * w32font.c (w32font_draw): Delete brush after using it.
15610
15611 2008-02-01 Jason Rumney <jasonr@gnu.org>
15612
15613 * w32font.c (w32font_open): Don't set font_idx.
15614 (w32font_text_extents): Try GetTextExtentPoint32W before defaulting
15615 to font settings.
15616 (w32font_draw): Fill background explicitly.
15617
15618 2008-02-01 Jason Rumney <jasonr@gnu.org>
15619
15620 * w32term.c (w32_initialize): Don't call w32font_initialize.
15621
15622 * w32font.c (w32font_info): Remove subranges.
15623 (QCsubranges, Qmodern, Qswiss, Qroman): Remove.
15624 (QCfamily, Qmonospace, Qsans_serif, Qmono, Qsans, Qsans__serif)
15625 (Qraster, Qoutline, Qlatin, Qgreek, Qcoptic, Qcyrillic, Qarmenian)
15626 (Qhebrew, Qarabic, Qsyriac, Qnko, Qthaana, Qdevanagari, Qbengali)
15627 (Qgurmukhi, Qgujarati, Qoriya, Qtamil, Qtelugu, Qkannada)
15628 (Qmalayalam, Qsinhala, Qthai, Qlao, Qtibetan, Qmyanmar, Qgeorgian)
15629 (Qhangul, Qethiopic, Qcherokee, Qcanadian_aboriginal, Qogham)
15630 (Qrunic, Qkhmer, Qmongolian, Qsymbol, Qbraille, Qhan)
15631 (Qideographic_description, Qcjk_misc, Qkana, Qbopomofo, Qkanbun)
15632 (Qyi, Qbyzantine_musical_symbol, Qmusical_symbol, Qmathematical):
15633 New symbols.
15634 (font_callback_data): New struct.
15635 (w32font_list, w32font_match): Use it.
15636 (w32font_open): Don't populate subranges.
15637 (w32font_has_char): Use script Lisp symbols, not subrange bitmask.
15638 (w32font_encode_char): Always return unicode code-point as-is.
15639 (w32font_text_extents): Supply a transformation matrix to
15640 GetGlyphOutline. Never look up by glyph index. Avoid looping
15641 twice. Use unicode version of GetTexExtentPoint32 instead of
15642 glyph index version.
15643 (set_fonts_frame): Remove.
15644 (w32_enumfont_pattern_entity): Add frame parameter, use it to
15645 set frame parameter. Use backward compatible fake foundries.
15646 Save generic family in extra slot under QCfamily. Make width slot
15647 constant. Save QCspacing value. Save list of scripts instead of
15648 binary subranges.
15649 (w32_generic_family, logfonts_match, font_matches_spec): New functions.
15650 (add_font_entity_to_list): Use font_callback_data struct. Filter
15651 unwanted fonts.
15652 (add_one_font_entity_to_list): Use font_callback_data struct.
15653 (w32_registry): Default to iso10646_1.
15654 (fill_in_logfont): Use dpi from extra slot. Don't bother with
15655 string font registries. Don't fill in font name if it is a generic
15656 family name, fill family instead. Use spacing, family and script
15657 extra info to fill pitch, family and charset fields.
15658 (list_all_matching_fonts): Use font_callback_data struct.
15659 (unicode_range_for_char): Remove.
15660 (font_supported_scripts): New function.
15661 (w32font_initialize): Remove.
15662 (syms_of_w32font): Update which symbols are defined.
15663
15664 2008-02-01 Jason Rumney <jasonr@gnu.org>
15665
15666 * font.c (font_pixel_size): Reverse assq_no_quit args.
15667
15668 * w32term.h (FONT_WIDTH): Report max width, not average.
15669 (FONT_MAX_WIDTH): Remove.
15670 (FONT_AVG_WIDTH): New macro.
15671
15672 * xfaces.c (Fx_list_fonts) [WINDOWSNT]: Remove Windows only
15673 redefinition of FONT_WIDTH.
15674
15675 * w32term.c (x_font_min_bounds): Use FONT_AVG_WIDTH.
15676 (w32_cache_char_metrics): Use FONT_WIDTH.
15677
15678 * w32fns.c (w32_load_system_font, w32_list_fonts): Use FONT_AVG_WIDTH.
15679
15680 2008-02-01 Jason Rumney <jasonr@gnu.org>
15681
15682 * w32font.c (w32font_open): Make lfHeight negative.
15683
15684 * w32fns.c (x_default_font_parameter): Use new style font name.
15685 (Fx_create_frame, x_create_tip_frame): Initialize resx and resy.
15686
15687 2008-02-01 Jason Rumney <jasonr@gnu.org>
15688
15689 * w32font.c (QCsubranges): New symbol.
15690 (w32font_open, w32font_has_char): Get subranges from subproperty
15691 of extra.
15692 (w32_enumfont_pattern_entity): Set subranges as subproperty of extra.
15693 (syms_of_w32font): Define :subranges symbol.
15694
15695 * font.c (font_put_extra): Expose externally.
15696
15697 * font.h (font_put_extra): Move declaration from font.c.
15698
15699 * font.c (Ffont_get): Use font driver to determine otf capability.
15700 (adjust_anchor): Check if driver defines anchor_point before using.
15701
15702 * w32font.c (w32font_open): Handle size, height and pixel_size better.
15703 (w32font_draw): Use options.
15704 (w32_enumfont_pattern_entity): Set size to 0 for scalable fonts.
15705 Fix detection of truetype fonts.
15706 (registry_to_w32_charset): Handle charsets other than iso8859-1
15707 expressed as lisp symbols.
15708 (w32_registry): Express charset as lisp symbol.
15709 (fill_in_logfont): Reverse pixel and point height logic.
15710 Don't set width here. Set quality to default.
15711
15712 * w32fns.c (w32_load_system_font): Fix detecting FIXED_PITCH fonts.
15713 (x_to_w32_font): Fill in lfPitchAndFamily correctly.
15714
15715 * xterm.c (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
15716 Remove redundant loop and allocation.
15717
15718 * makefile.w32-in (font.o, w32font.o): New objects.
15719 (fontset.o, xdisp.o, xfaces.o, w32fns.o, w32term.o): Depend on font.h.
15720 (FONTOBJ): New group of objects conditioned on USE_FONT_BACKEND.
15721
15722 * xdisp.c (fill_composite_glyph_string): Make the first arg to
15723 STORE_XCHARB a valid l-value.
15724
15725 * w32term.c (w32_native_per_char_metric): Swap width and rbearing
15726 calculations for non-Truetype fonts.
15727 (x_draw_glyph_string): Sync with xterm.c.
15728 (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
15729 Remove redundant code.
15730 (w32_initialize) [USE_FONT_BACKEND]: Call w32font_initialize.
15731
15732 * w32term.h (w32_output_data) [USE_FONT_BACKEND]: Add fontp member.
15733 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro from xterm.h.
15734
15735 * w32fns.c [USE_FONT_BACKEND]: Port font backend changes from xfns.c.
15736 (x_to_w32_charset, w32_to_x_charset): Expose externally.
15737
15738 * w32font.c: New file for w32 font backend.
15739
15740 2008-02-01 Kenichi Handa <handa@m17n.org>
15741
15742 * term.c: Don't include "buffer.h" twice.
15743
15744 2008-02-01 Kenichi Handa <handa@m17n.org>
15745
15746 * character.c (Funibyte_string): New function.
15747 (syms_of_character): Defsubr it.
15748
15749 2008-02-01 Jason Rumney <jasonr@gnu.org>
15750
15751 * w32term.c [USE_FONT_BACKEND]:
15752 (x_get_font_repertory, note_mouse_movement, x_set_mouse_face_gc)
15753 (x_set_glyph_string_clipping, x_set_glyph_string_clipping_exactly)
15754 (x_draw_glyph_string, x_draw_glyph_string_foreground)
15755 (x_draw_composite_glyph_string_foreground, x_new_fontset2)
15756 (x_free_frame_resources): Sync with xterm.c.
15757
15758 2008-02-01 Andreas Schwab <schwab@suse.de>
15759
15760 * lread.c (read1): Use CHAR_TABLE_STANDARD_SLOTS to validate
15761 char-table size.
15762
15763 2008-02-01 Kenichi Handa <handa@m17n.org>
15764
15765 * font.c (check_otf_features): Define it regardless of HAVE_LIBOTF.
15766
15767 2008-02-01 Kenichi Handa <handa@m17n.org>
15768
15769 * ftfont.c (ftfont_driver): Delete font_otf_gsub and
15770 font_otf_gpos, add font_drive_otf.
15771
15772 * fontset.c (fontset_find_font): Pay attention to font size
15773 specified for a font.
15774 (reorder_font_vector): Check contents of font_def.
15775
15776 * font.c (struct otf_list): Delete it.
15777 (otf_list): Make it a lisp variable.
15778 (otf_open): Use lispy otf_list.
15779 (generate_otf_features): Rename from parse_gsub_gpos_spec.
15780 (check_otf_features): New function.
15781 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
15782 New functions.
15783 (font_drive_otf): New function merging font_otf_gsub and
15784 font_otf_gpos.
15785 (font_open_for_lface): New arg spec. Change argument order.
15786 (font_load_for_face): Adjust for the change of font_open_for_lface.
15787 (Ffont_drive_otf): New function merging Ffont_otf_gsub and
15788 Ffont_otf_gpos.
15789 (syms_of_font): Staticpro otf_list. Delete defsubr of
15790 Sfont_otf_gsub and Sfont_otf_gpos. Defsubr Sfont_drive_otf.
15791
15792 * xfaces.c (set_font_frame_param): Adjust for the change of
15793 font_open_for_lface.
15794
15795 * font.h (font_open_for_lface): Adjust prototype.
15796 (struct font_driver): Delete members otf_gsub and otf_gpos, add
15797 member otf_drive.
15798 (font_otf_gsub, font_otf_gpos): Delete externs.
15799 (font_drive_otf): Extern it.
15800
15801 2008-02-01 Kenichi Handa <handa@m17n.org>
15802
15803 * font.c (font_at): If the window W is not on a window system,
15804 return Qnil.
15805
15806 * coding.c (produce_chars, encode_coding): Don't call
15807 insert_from_gap if no characters to produce.
15808
15809 2008-02-01 Kenichi Handa <handa@m17n.org>
15810
15811 * fontset.c (free_realized_fontsets): Avoid unnecessary call of
15812 Fclear_face_cache.
15813
15814 * xfaces.c (face_for_font): Check also face->font==font->font.font.
15815
15816 2008-02-01 Miles Bader <miles@gnu.org>
15817
15818 * emacs.c (main): Change default value of `enable_font_backend' to 1.
15819 Parse "--disable-font-backend" option.
15820 (standard_args): Add "--disable-font-backend" option.
15821
15822 2008-02-01 Kenichi Handa <handa@m17n.org>
15823
15824 * fontset.c (fontset_find_font): New function.
15825 (fontset_font): Use fontset_find_font.
15826 (make_fontset_for_ascii_face): Don't set face ID in rfont_def.
15827 Register the specified font for all Latin characters.
15828 (new_fontset_from_font): Register the specified font for all Latin
15829 characters.
15830 (dump_fontset): For a realized fontset, include the base fontset
15831 name in the returned vector.
15832
15833 2008-02-01 Kenichi Handa <handa@m17n.org>
15834
15835 * character.h (CHAR_STRING): Cast C to unsigned on calling
15836 char_string.
15837
15838 * character.c (char_string): Type of arg C changed to unsigned.
15839 Signal an error if C is an invalid character code.
15840
15841 * editfns.c (general_insert_function, Fchar_to_string):
15842 Use CHARACTERP, not INTEGERP.
15843
15844 2008-02-01 Kenichi Handa <handa@m17n.org>
15845
15846 * character.h (MIN_MULTIBYTE_LEADING_CODE)
15847 (MAX_MULTIBYTE_LEADING_CODE): New macros.
15848
15849 * regex.c (analyse_first): Fix for multibyte characters in "case
15850 charset:" and "case categoryspec:".
15851
15852 2008-02-01 Andreas Schwab <schwab@suse.de>
15853
15854 * Makefile.in (LIBES): Move standard libraries to the end.
15855
15856 2008-02-01 Kenichi Handa <handa@m17n.org>
15857
15858 * alloc.c (Fgarbage_collect): If nextb->text->inhibit_shrinking is
15859 nonzero, don't shrink the buffer nextb.
15860
15861 * buffer.h (struct buffer_text): New member inhibit_shrinking.
15862
15863 * coding.c (coding_alloc_by_making_gap): New arg offset.
15864 (alloc_destination): Call coding_alloc_by_making_gap with the arg
15865 offset.
15866 (decode_coding_iso_2022): Update coding->safe_charsets.
15867 (decode_coding_gap): Temporarily set
15868 current_buffer->text->inhibit_shrinking to 1.
15869
15870 2008-02-01 Kenichi Handa <handa@m17n.org>
15871
15872 * xterm.c (x_draw_composite_glyph_string_foreground): Fix
15873 indexing into elements of s->cmp and s->char2b.
15874
15875 2008-02-01 Juanma Barranquero <lekktu@gmail.com>
15876
15877 * regex.c (RE_STRING_CHAR_AND_LENGTH) [! emacs]: Add missing arg `len'.
15878
15879 2008-02-01 Kenichi Handa <handa@m17n.org>
15880
15881 * regex.c (GET_CHAR_BEFORE_2, GET_CHAR_AFTER): Check the variable
15882 target_multibyte instead of multibyte.
15883 (re_match_2_internal): Call bcmp_translate with target_multibyte.
15884 (bcmp_translate): Change the argument name from multibyte to
15885 target_multibyte.
15886
15887 2008-02-01 Kenichi Handa <handa@m17n.org>
15888
15889 These changes are to compile a regexp into a pattern that can be
15890 used both for multibyte and unibyte targets.
15891
15892 * Makefile.in (search.o): Depend on charset.h.
15893
15894 * character.c (multibyte_char_to_unibyte_safe): New function.
15895
15896 * search.c: Include "charset.h".
15897 (compile_pattern_1): Delete argument multibyte. Don't set
15898 cp->buf.target_multibyte here. Set cp->buf.charset_unibyte.
15899 (compile_pattern): Don't compare cp->buf.target_multibyte.
15900 Compare cp->buf.charset_unibyte.
15901 (compile_pattern): Set cp->buf.target_multibyte.
15902
15903 * lisp.h (multibyte_char_to_unibyte_safe): Extern it.
15904
15905 * regex.h (struct re_pattern_buffer): New member charset_unibyte.
15906
15907 * regex.c (RE_STRING_CHAR, RE_STRING_CHAR_AND_LENGTH): New arg
15908 multibyte. Change callers.
15909 (RE_CHAR_TO_MULTIBYTE, RE_CHAR_TO_UNIBYTE): New macros.
15910 (MAKE_CHAR_MULTIBYTE, MAKE_CHAR_UNIBYTE): Delete. Change callers
15911 to use RE_CHAR_TO_MULTIBYTE and RE_CHAR_TO_UNIBYTE, respectively.
15912 (SETUP_ASCII_RANGE, SETUP_UNIBYTE_RANGE): New macros.
15913 (SETUP_MULTIBYTE_RANGE): Generate a more compact range_table.
15914 (regex_compile): Make the compiled pattern usable both for
15915 multibyte and unibyte targets.
15916 (analyse_first): Make the fastmap usable both for multibyte and
15917 unibyte targets.
15918 (TRANSLATE_VIA_MULTIBYTE): Delete.
15919 (re_match_2_internal): Pay attention to the case that the
15920 multibyteness of bufp and target may be different.
15921
15922 2008-02-01 Kenichi Handa <handa@m17n.org>
15923
15924 * xdisp.c (x_produce_glyphs): When a font is not found, make the
15925 empty box occupy at least one column width.
15926
15927 2008-02-01 Miles Bader <miles@gnu.org>
15928
15929 * Makefile.in: Remove redundant HAVE_XFT clause.
15930
15931 2008-02-01 Kenichi Handa <handa@m17n.org>
15932
15933 * xrdb.c (x_load_resources): Setup the default fontSet X resource.
15934
15935 2008-02-01 Kenichi Handa <handa@m17n.org>
15936
15937 * fontset.c (Finternal_char_font): Fix for the case of POSITION
15938 being nil.
15939
15940 2008-02-01 Kenichi Handa <handa@m17n.org>
15941
15942 * xftfont.c (xftfont_open): Call FcConfigSubstitute.
15943
15944 2008-02-01 Kenichi Handa <handa@m17n.org>
15945
15946 * xftfont.c (xftfont_open): Don't enable antialias explicitly.
15947
15948 2008-02-01 Kenichi Handa <handa@m17n.org>
15949
15950 * search.c (simple_search): Fix previous change.
15951
15952 2008-02-01 Kenichi Handa <handa@m17n.org>
15953
15954 * xftfont.c (ftfont_font_format): Extern declaration.
15955
15956 * frame.c (x_set_font): Fix the second arg to fs_query_fontset.
15957
15958 * xfont.c (xfont_driver): Initialize ftfont_driver.type by 0.
15959 (xfont_list): Don't directly use Lisp_Object as an operand of &&.
15960
15961 * ftfont.c (ftfont_driver): Initialize ftfont_driver.type by 0.
15962 (ftfont_font_format): Fix previous change.
15963
15964 * font.h (Ffont_xlfd_name): EXFUN it.
15965
15966 * font.c (font_parse_xlfd): Fix the array size of `f'.
15967 (register_font_driver): Use EQ to compare driver->type.
15968
15969 * xfns.c (xic_create_xfontset2) [USE_FONT_BACKEND]: New function.
15970 (create_frame_xic) [USE_FONT_BACKEND]: Call xic_create_xfontset2.
15971 (xic_set_xfontset) [USE_FONT_BACKEND]: Likewise.
15972
15973 2008-02-01 Kenichi Handa <handa@m17n.org>
15974
15975 * ftfont.c (ftfont_pattern_entity, ftfont_list_generic_family)
15976 (ftfont_list, ftfont_font_format): Check if FC_FONTFORMAT is defined.
15977
15978 2008-02-01 Kenichi Handa <handa@m17n.org>
15979
15980 * xfont.c (xfont_open): Set font->format.
15981
15982 * xftfont.c (xftfont_open): Set font->format.
15983
15984 * ftfont.c (ftfont_pattern_entity): Add fontformat in a pattern.
15985 (ftfont_list): Include FC_FONTFORMAT in FcObject.
15986 (ftfont_open): Set font->format.
15987 (ftfont_font_format): New function.
15988
15989 * font.h (struct font): New member format.
15990
15991 * font.c (Qopentype): New variable.
15992 (syms_of_font): Defsym it.
15993 (Fquery_font): Change the format of the last element of the return
15994 value.
15995
15996 2008-02-01 Kenichi Handa <handa@m17n.org>
15997
15998 * xfns.c (xic_create_xfontset): Try the default fontset name as a
15999 last resort.
16000
16001 2008-02-01 Kenichi Handa <handa@m17n.org>
16002
16003 * coding.c (detect_coding_charset): Fix detection of multi-byte
16004 charset.
16005
16006 2008-02-01 Bob Halley <halley@play-bow.org> (tiny change)
16007
16008 * ccl.c (ccl_driver): If DST is NULL, set ccl->produced to 0.
16009
16010 2008-02-01 Kenichi Handa <handa@m17n.org>
16011
16012 * xdisp.c (get_next_display_element): Set it->face_id for the
16013 first component of a composition.
16014 (x_produce_glyphs): Check if the font is changed or not for composition.
16015
16016 2008-02-01 Kenichi Handa <handa@m17n.org>
16017
16018 * fontset.c (Qlatin): New variable.
16019 (syms_of_fontset): Define it as a lisp symbol.
16020 (Fset_fontset_font): If TARGET is `latin', use FONT_SPEC for ASCII.
16021
16022 2008-02-01 Kenichi Handa <handa@m17n.org>
16023
16024 * font.c (font_unparse_fcname): Pay attention to the case that
16025 some of font property is a null string.
16026
16027 2008-02-01 Kenichi Handa <handa@m17n.org>
16028
16029 * term.c: Include "composite.h".
16030 (encode_terminal_code): Output all components of composition.
16031 Check the size of encode_terminal_src.
16032 (produce_glyphs): For composition, call produce_composite_glyph.
16033 (append_composite_glyph, produce_composite_glyph): New functions.
16034
16035 * xdisp.c (x_produce_glyphs): In handling composition, if a font
16036 is not found, get font_info from the current ascii face.
16037
16038 2008-02-01 Kenichi Handa <handa@m17n.org>
16039
16040 * fileio.c (Finsert_file_contents): On replacing, temporarily bind
16041 buffer-file-name to Qnil before calling insert_from_buffer.
16042
16043 * font.c (font_unparse_fcname): Pay attention to the case that
16044 foundry is a null string.
16045
16046 2008-02-01 Kenichi Handa <handa@m17n.org>
16047
16048 * ftfont.c (ftfont_list): Allow registry "unicode-sip".
16049
16050 * font.c (Qunicode_sip): New variable.
16051 (syms_of_font): Declare it as a Lisp symbol.
16052
16053 * font.h (Qunicode_sip): Extern it.
16054
16055 2008-02-01 Kenichi Handa <handa@m17n.org>
16056
16057 * composite.c (get_composition_id): Pay attention to TAB component.
16058
16059 * xterm.c (x_draw_composite_glyph_string_foreground): Don't draw
16060 TAB. Adjust for the change of s->char2b which always points to
16061 the first element of allocated memory.
16062
16063 * xftfont.c (xftfont_text_extents): Fix calculation of descent value.
16064
16065 * xdisp.c (handle_composition_prop): Set it->c to the first
16066 non-TAB component.
16067 (fill_composite_glyph_string): Change argument.
16068 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the above change.
16069 (x_produce_glyphs): Fix handling of left/right padding.
16070
16071 2008-02-01 Kenichi Handa <handa@m17n.org>
16072
16073 * coding.c (detect_coding_system): Fix for handling off
16074 inhibit_iso_escape_detection. Fix for the case that no coding
16075 system is defined for a specific coding category.
16076
16077 2008-02-01 Kenichi Handa <handa@m17n.org>
16078
16079 * font.c (font_matching_entity): Delete unused local var.
16080
16081 * xftfont.c (xftfont_open): Call XftDefaultSubstitute before
16082 opening a font.
16083
16084 * fileio.c (Finsert_file_contents): On recovering a file, assume
16085 Unix-like eol.
16086 (choose_write_coding_system): On auto-saving a file, force
16087 Unix-like eol.
16088
16089 * coding.c (setup_coding_system): Fix setting of
16090 coding->common_flags based on eol_type.
16091 (coding_inherit_eol_type): If PARENT is not nil, be sure to
16092 inherit from it.
16093
16094 2008-02-01 Kenichi Handa <handa@m17n.org>
16095
16096 * alloc.c (NSTATICS): Increas to 0x600.
16097
16098 2008-02-01 Kenichi Handa <handa@m17n.org>
16099
16100 * ftfont.c (ftfont_driver): Set ftfont_driver.match to ftfont_match.
16101 (ftfont_list): Don't check :name property.
16102 (ftfont_match): New function.
16103 (ftfont_pattern_entity): If the pattern doesn't contain
16104 FC_SPACING, don't assume FC_MONO.
16105
16106 * font.h (struct font_driver): New member `match'.
16107 (font_update_drivers): Adjust prototype.
16108
16109 * font.c (font_parse_fcname, font_parse_name): Don't change :name
16110 property of FONT.
16111 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE, check_gstring): Define
16112 them unconditionally.
16113 (font_matching_entity): New function.
16114 (font_open_by_name): Try font_matching_entity if exact match is
16115 not found.
16116 (font_update_drivers): Delete the arg FONT. Return a list of
16117 actually used backends. Don't free faces, font caches here.
16118 Don't store data in frame parameters. Don't call x_set_font.
16119 (Ffont_spec): Store :name property as is.
16120 (Ffont_get): Check HAVE_LIBOTF before calling font_otf_capability.
16121 (Ffont_otf_gsub): Call font->driver->otf_gsub instead of font_otf_gsub.
16122 (Ffont_otf_gpos): Call font->driver->otf_gpos instead of font_otf_gpos.
16123 (Ffont_otf_alternates): Check if the driver has otf_gsub function.
16124 Call font->driver->otf_gsub instead of font_otf_gsub.
16125
16126 * frame.c (x_set_font_backend): Do more works that were done in
16127 font_update_drivers before.
16128
16129 * xfont.c (xfont_match): New function.
16130 (xfont_driver): Set xfont_driver.match to xfont_match.
16131 (xfont_draw): Set font in GC if necessary.
16132
16133 * ftxfont.c (ftxfont_match): New function.
16134 (syms_of_ftxfont): Set ftxfont_driver.match to ftxfont_match.
16135
16136 * xftfont.c (xftfont_match): New function.
16137 (syms_of_xftfont): Set xftfont_driver.match to xftfont_match.
16138
16139 2008-02-01 Kenichi Handa <handa@m17n.org>
16140
16141 * font.h (struct font): New member scalable.
16142 (struct font_driver): New arg ALTERANTE_SUBST to otf_gsub.
16143 (font_otf_gsub): Adjust prototype.
16144
16145 * font.c (font_otf_capability): Fix handling of the default langsys.
16146 (parse_gsub_gpos_spec): Change type to void. New arg nbytes.
16147 Check the contents of SPEC.
16148 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE): New macros.
16149 (check_gstring): New function.
16150 (REPLACEMENT_CHARACTER): New macro.
16151 (font_otf_gsub): New arg alternate_subst. Be sure to set all
16152 glyph codes of GSTRING.
16153 (font_otf_gpos): Be sure to set all glyph codes of GSTRING.
16154 (font_prepare_composition): Set cmp->glyph_len.
16155 (font_open_entity): Set font->scalable.
16156 (Ffont_get): Handle :otf property.
16157 (Ffont_otf_gsub, Ffont_otf_gpos, Ffont_otf_alternates): New
16158 functions.
16159 (Fquery_font): Use font->font.full_name.
16160 (syms_of_font): Defsubr Sfont_otf_gsub, Sfont_otf_gpos, and
16161 Sfont_otf_alternates.
16162
16163 * ftfont.c (ftfont_open): Set font->font.full_name and
16164 font->font.name properly. Fix calculation of font->font.height
16165 and font->min_width.
16166
16167 * ftxfont.c (ftxfont_create_gcs): New function.
16168 (ftxfont_draw_bitmap): Fix arg to ftfont_driver.get_bitmap.
16169 (ftxfont_draw_backgrond): Fix filling region.
16170 (ftxfont_default_fid): New function.
16171 (ftxfont_open): Set xfont->fid to the return value of
16172 ftxfont_default_fid.
16173 (ftxfont_prepare_face): Use ftxfont_create_gcs to create GCs.
16174 (ftxfont_done_face): Free only GCs that are created by
16175 ftxfont_create_gcs.
16176 (ftxfont_draw): If face->gc != s->gc, create proper GCs.
16177
16178 * xterm.c (x_set_glyph_string_clipping_exactly) [USE_FONT_BACKEND]:
16179 Clip to src->width, etc (not src->clip_XXX).
16180
16181 * xfns.c (x_create_tip_frame) [USE_FONT_BACKEND]: Handle
16182 FontBackend frame parameter.
16183
16184 2008-02-01 Kenichi Handa <handa@m17n.org>
16185
16186 * font.h (struct font_driver_list): New member `on'.
16187 (Fclear_font_cache): EXFUN it.
16188 (font_update_drivers): Extern it.
16189
16190 * font.c (font_unparse_fcname): Fix typo (swidth->width).
16191 (font_list_entities): Check driver_list->on.
16192 (register_font_driver): Initalize `on' member to 0.
16193 (font_update_drivers): New function.
16194 (Fclear_font_cache): Check driver_list->on.
16195
16196 * frame.h (Qfont_backend): Extern it.
16197 (x_set_font_backend): Extern it.
16198
16199 * frame.c (Qfont_backend): New variable.
16200 (frame_parms): New element for font-backend.
16201 (x_set_font_backend): New function.
16202
16203 * xfns.c (Fx_create_frame) [USE_FONT_BACKEND]: Handle
16204 FontBackend frame parameter.
16205 (x_frame_parm_handlers) [USE_FONT_BACKEND]: New element
16206 x_set_font_backend.
16207
16208 * xfont.c (xfont_list): Don't try listing by :name property if the
16209 name is not for XLFD.
16210
16211 2008-02-01 Kenichi Handa <handa@m17n.org>
16212
16213 * font.h (LGLYPH_FROM, LGLYPH_TO, LGLYPH_SET_FROM)
16214 (LGLYPH_SET_TO): New macros.
16215 (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WADJUST): Check if adjustment
16216 element of G is vector or not.
16217 (font_at): Extern it.
16218
16219 * font.c: Include window.h.
16220 (font_lispy_object): New function.
16221 (font_prepare_composition): Check LGLYPH_FORM (g) to detect the
16222 end of valid glyph.
16223 (font_close_object): Fix getting (struct font *).
16224 (font_at): New function.
16225 (Ffont_get): If FONT is a font-object, get entity from it.
16226 (Ffont_make_gstring): Initialize elements of glyphs with nil.
16227 (Ffont_fill_gstring): Use macro LGSTRING_XXX and LGLYPH_XXX. Fix
16228 range check.
16229 (Ffont_at): New function.
16230 (syms_of_font): Defsubr Sfont_at.
16231
16232 * xdisp.c (it_props): Move the entry for Qauto_composed to just
16233 before the entry for Qcomposition.
16234 (handle_auto_composed_prop): Call auto-composition-function with 4 args.
16235 (handle_composition_prop) [USE_FONT_BACKEND]: Set it->face_id from
16236 the font in gstring.
16237 (fill_composite_glyph_string) [USE_FONT_BACKEND]: Check
16238 LGLYPH_FORM (g) to detect the end of valid glyph.
16239 (x_produce_glyphs) [USE_FONT_BACKEND]: Don't update it->face_id if
16240 we are composing with gstring.
16241
16242 * xterm.c (x_draw_composite_glyph_string_foreground) [USE_FONT_BACKEND]:
16243 Check if adjustment is vector or not.
16244
16245 * Makefile.in (font.o): Make it depends on window.h.
16246
16247 2008-02-01 Kenichi Handa <handa@m17n.org>
16248
16249 * xterm.c (x_draw_composite_glyph_string_foreground): Check if
16250 adjustment is vector or not.
16251
16252 2008-02-01 Miles Bader <miles@gnu.org>
16253
16254 * character.h (CHECK_CHARACTER): Redefine in terms of CHECK_TYPE.
16255
16256 2008-02-01 Kenichi Handa <handa@m17n.org>
16257
16258 * font.h (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WIDTH, LGLYPH_WADJUST)
16259 (LGLYPH_SET_WIDTH): Adjusted for the change of LGLYPH format.
16260 (LGLYPH_ADJUSTMENT, LGLYPH_SET_ADJUSTMENT): New macros.
16261
16262 * font.c (font_merge_old_spec): Treat '*' in foundry as a wild card.
16263 (DEVICE_DELTA): Fix typo.
16264 (font_otf_gpos, font_prepare_compositio): Adjust for the change of
16265 LGLYPH format.
16266
16267 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
16268 the change of LGLYPH format.
16269
16270 2008-02-01 Kenichi Handa <handa@m17n.org>
16271
16272 * ftfont.c (ftfont_list): Fix typo.
16273 (ftfont_build_basic_charsets): Don't include letters with diacritics.
16274
16275 2008-02-01 Jan Djärv <jan.h.d@swipnet.se>
16276
16277 * xfaces.c (realize_non_ascii_face): Set face->extra to NULL.
16278
16279 * xftfont.c (xftfont_done_face): Call XftDrawDestroy only if
16280 xftface_info is non-NULL.
16281
16282 2008-02-01 Jan Djärv <jan.h.d@swipnet.se>
16283
16284 * ftfont.c (ftfont_list): Move misplaced #endif.
16285
16286 2008-02-01 Kenichi Handa <handa@m17n.org>
16287
16288 * ftfont.c (ftfont_list): Pay attention to the case that
16289 FC_CAPABILITY is not defined.
16290
16291 2008-02-01 Kenichi Handa <handa@m17n.org>
16292
16293 * xftfont.c (xftfont_open): Set charset related members to -1.
16294
16295 * ftfont.c (ftfont_list): Handle QCotf property. Fix handling of
16296 QCname.
16297 (ftfont_open): Set charset related members to -1.
16298
16299 * fontset.c (Votf_script_alist): New variable.
16300 (syms_of_fontset): Initialize it.
16301 (fontset_font): Delete unused variable.
16302
16303 * fontset.h (Votf_script_alist): Extern it.
16304
16305 * font.c (font_find_for_lface): Optimize code.
16306
16307 * font.h (font_close_object, font_merge_old_spec): Extern them.
16308
16309 2008-02-01 Kenichi Handa <handa@m17n.org>
16310
16311 * font.c (QCscalable, Qc, Qm, Qp, Qd): New variables.
16312 (syms_of_font): Initialize them.
16313 (font_pixel_size): Allow float value in dpi.
16314 (font_prop_validate_type): Delete.
16315 (font_prop_validate_symbol, font_prop_validate_style): Change argument.
16316 Change caller.
16317 (font_prop_validate_non_neg): Rename from font_prop_validate_size.
16318 (font_prop_validate_extra): Delete.
16319 (font_prop_validate_spacing): New function.
16320 (font_property_table): Add elements for all known properties.
16321 (get_font_prop_index): Rename from check_font_prop_name. New
16322 argument FROM. Change caller.
16323 (font_prop_validate): Validate all known properties.
16324 (font_put_extra): Delete argument force. Change caller.
16325 (font_expand_wildcards): Make it static. Fix the way of shrinking
16326 the possible range.
16327 (font_parse_xlfd): Delete argument merge. Fix handling of RESX,
16328 RESY, SPACING, and AVGWIDTH. Don't validate property values here.
16329 Change caller.
16330 (font_unparse_xlfd): Handle dpi, spacing, and scalable properties.
16331 (font_parse_fcname): Delete argument merge. Fix parsing of point
16332 size. Don't validate properties values here. Change caller.
16333 (font_unparse_fcname): Handle dpi, spacing, and scalable properties.
16334 (font_open_by_name): Delete unused variable.
16335 (Ffont_spec): Likewise. Validate property values.
16336 (Ffont_match_p): New function.
16337
16338 * font.h (QCscalable): Extern it.
16339 (font_parse_xlfd, font_parse_fcname): Adjust prototype.
16340
16341 * ftfont.c (ftfont_list): Handle properties dpi, spacing, and scalable.
16342
16343 * xfont.c (xfont_query_font): Adjust for the change of font_parse_xlfd.
16344 (xfont_list_pattern): New function.
16345 (xfont_list): Use xfont_list_pattern.
16346
16347 2008-02-01 Kenichi Handa <handa@m17n.org>
16348
16349 * font.h (Flist_fonts): EXFUN it.
16350
16351 2008-02-01 Jason Rumney <jasonr@gnu.org>
16352
16353 * w32term.c (w32_initialize): Add back smoothing_type and
16354 smoothing_enabled definitions.
16355
16356 2008-02-01 Kenichi Handa <handa@m17n.org>
16357
16358 * xterm.c (x_draw_glyph_string) [USE_FONT_BACKEND]: Check
16359 s->face->font on determining underline position.
16360
16361 2008-02-01 Kenichi Handa <handa@m17n.org>
16362
16363 * font.c (font_parse_xlfd): Fix generating of CHARSET_REGISTRY field.
16364 (font_has_char): Accept font-object too.
16365 (font_find_for_lface): Try at first with a size specified in face.
16366
16367 2008-02-01 Kenichi Handa <handa@m17n.org>
16368
16369 * frame.c (x_set_font) [USE_FONT_BACKEND]: Fix argument to
16370 font_open_by_name.
16371
16372 2008-02-01 Kenichi Handa <handa@m17n.org>
16373
16374 * font.h (QCspacing, QCdpi): Extern them.
16375 (enum font_spacing): New enum.
16376 (FONT_PIXEL_SIZE_QUANTUM): New macro.
16377
16378 * font.c (POINT_TO_PIXEL): Don't divide POINT by 10.
16379 (QCspacing, QCdpi): New variables.
16380 (syms_of_font): Initialize them.
16381 (font_pixel_size): New function.
16382 (font_put_extra): New function.
16383 (font_parse_xlfd): Fix handling of font size. Add QCdpi property
16384 in FONT_EXTRA.
16385 (font_parse_fcname): Handle enumerated values (e.g. bold).
16386 Fix handling font size. Add QCname property that contains only
16387 unknown properties.
16388 (font_score): Change argument. Change caller. Pay attention to
16389 FONT_PIXEL_SIZE_QUANTUM.
16390 (font_sort_entites, font_list_entities, font_find_for_lface)
16391 (font_open_for_lface, font_open_by_name): Fix handling of font size.
16392 (Ffont_spec): Add QCname property that contains only unknown properties.
16393
16394 * ftfont.c (ftfont_list): Use assq_no_quit, not Fassq. Don't
16395 include weight in listing pattern, instead check weight of each
16396 listed font. Don't include scalable in pattern. Pay attention to
16397 FONT_PIXEL_SIZE_QUANTUM.
16398
16399 2008-02-01 Kenichi Handa <handa@m17n.org>
16400
16401 * font.c (font_parse_fcname): Fix parsing of point-size.
16402 (font_unparse_fcname): Produce symbolic names for style properties.
16403 (font_list_entities): Handle float size correctly.
16404 (font_open_by_name): Prefer `normal' property values if the name
16405 doesn't specify them.
16406
16407 * fontset.c (Finternal_char_font): Use font_get_name, not
16408 Ffont_xlfd_name.
16409
16410 * ftfont.c (ftfont_pattern_entity): Use the numeric value 100 for
16411 FC_WEIGHT_REGULAR. Exclude FC_SIZE and FC_PIXEL_SIZE from listing
16412 pattern. Don't force scalable.
16413
16414 * xftfont.c (xftfont_open): For generating a name, start from
16415 96-byte buffer.
16416
16417 2008-02-01 Jan Djärv <jan.h.d@swipnet.se>
16418
16419 * frame.h (x_new_fontset2): Fix prototype.
16420
16421 2008-02-01 Kenichi Handa <handa@m17n.org>
16422
16423 * font.h (struct font_driver): Delete member parse_name.
16424 (font_match_p, font_get_spec, font_parse_fcname)
16425 (font_unparse_fcname): Extern them.
16426 (font_get_name): Adjust prototype.
16427
16428 * font.c (XLFD_SMALLNUM_MASK): Delete this macro.
16429 (XLFD_LARGENUM_MASK): Delete XLFD_ENCODING_MASK from it.
16430 (font_expand_wildcards): Fix handling ENCODING field. Avoid
16431 unnecessary checks for weight, slant, and swidth.
16432 (font_parse_fcname): New function.
16433 (font_unparse_fcname): New function.
16434 (font_parse_name): New function.
16435 (font_match_p): New function.
16436 (font_get_name): Change return value to Lisp string.
16437 (font_get_spec): New function.
16438 (Qunspecified, Qignore_defface): Don't extern them.
16439 (font_find_for_lface): Assume that LFACE is fully specified.
16440 (font_load_for_face): If lface[LFACE_FONT_INDEX] is an font
16441 object, use it for FACE.
16442 (font_open_by_name): Call Ffont_spec with QCname prop. Don't call
16443 driver->parse_name.
16444 (Ffont_spec): Call font_parse_name, not font_parse_xlfd.
16445
16446 * fontset.h (new_fontset_from_font) [USE_FONT_BACKEND]: Adjust
16447 prototype.
16448
16449 * fontset.c (new_fontset_from_font) [USE_FONT_BACKEND]: Delete
16450 argument F. Don't call Fnew_fontset. Instead, directly call
16451 make_fontset.
16452
16453 * frame.h (x_new_fontset2) [USE_FONT_BACKEND]: Adjust prototype.
16454
16455 * frame.c (x_set_font) [USE_FONT_BACKEND]: Adjust for the change
16456 of x_new_fontset2.
16457
16458 * ftfont.c (Qmonospace, Qsans_serif, Qserif, Qmono, Qsans)
16459 (Qsans__serif): New variables.
16460 (ftfont_generic_family_list): New variable.
16461 (syms_of_ftfont): Initialize the above variables.
16462 (ftfont_pattern_entity): Delete argument NAME.
16463 (ftfont_list_generic_family): New function.
16464 (ftfont_parse_name): Delete this function.
16465 (ftfont_list): Try generic family only when FcFontList found no font.
16466 (ftfont_list_family): Fix args to FcObjectSetBuild.
16467
16468 * xfaces.c (check_lface_attrs) [USE_FONT_BACKEND]: Accept font
16469 object in attrs[LFACE_FONT_INDEX].
16470 (set_lface_from_font_name): Cancel all changes for font-backend.
16471 (set_lface_from_font_and_fontset) [USE_FONT_BACKEND]: New
16472 function.
16473 (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]: Accept a
16474 font object in QCfont attribute.
16475 (set_font_frame_param) [USE_FONT_BACKEND]: Likewise.
16476 (realize_default_face) [USE_FONT_BACKEND]: Call
16477 set_lface_from_font_and_fontset.
16478
16479 * xfns.c (x_default_font_parameter) [USE_FONT_BACKEND]: Try also
16480 "fixed", and signal error here if no suitable font was found.
16481
16482 * xfont.c (xfont_parse_name): Delete this function.
16483
16484 * xftfont.c (xftfont_open): Change coding style of error
16485 handling. Generate fontconfig's fontname pattern.
16486
16487 * xterm.h (struct x_output) [USE_FONT_BACKEND]: New member fontp.
16488 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro.
16489
16490 * xterm.c (x_new_fontset2) [USE_FONT_BACKEND]: Change arguments.
16491 Both args FONTSET and FONT_OBJECT must be existing ones.
16492
16493 2008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16494
16495 * macterm.c (mac_set_unicode_keystroke_event): Don't use MAKE_CHAR.
16496
16497 2008-02-01 Kenichi Handa <handa@m17n.org>
16498
16499 * xfont.c (xfont_open, xfont_encode_char): Fix typo.
16500
16501 * font.h (struct font): Fix typo.
16502
16503 * font.c (enum xlfd_field_index): Rename XLFD_XXX_SIZE_INDEX to
16504 XLFD_XXX_INDEX.
16505 (enum xlfd_field_mask): New enum.
16506 (intern_font_field): Changed argument. Change caller. If digits
16507 are followed by non-digits, return a symbol.
16508 (font_expand_wildcards): New function.
16509 (font_parse_xlfd): Fix wildcard handling.
16510 (Ffont_spec): If :name is specified, reflect the info in the other
16511 properties.
16512
16513 * ftfont.c (ftfont_pattern_entity): Fix typo.
16514 (ftfont_list): Enforce FC_LANG in PATTERN to cancel the effect of
16515 locale.
16516
16517 2008-02-01 Kenichi Handa <handa@m17n.org>
16518
16519 * font.h (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Extern them.
16520
16521 * font.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move from ftfont.c.
16522 (font_unparse_xlfd): Fix argument type declaration. Append "*" if
16523 registry doesn't specify encoding part.
16524 (font_find_for_lface): Pay attention to LFACE_FONT_INDEX.
16525 (font_open_by_name): At first try parsing the name.
16526 (syms_of_font): Declare Qiso8859_1, Qiso10646_1, and Qunicode_bmp
16527 as Lisp symbols.
16528
16529 * fontset.c (reorder_font_vector): Pay attention to the case that
16530 the 3rd element of font_def is nil.
16531 (fontset_font): For the default fontset, append one more fontset
16532 elements for a script-based font specification. Don't add script
16533 attribute on finding a font.
16534 (new_fontset_from_font): Unconditionally set FONTSET_ASCII to the
16535 font name.
16536 (fontset_ascii_font): If a font can't be opened, return nil.
16537
16538 * ftfont.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move to font.c.
16539 (ftfont_pattern_entity): New function.
16540 (ftfont_get_cache): Assume that freetype_font_cache is already
16541 initialized.
16542 (ftfont_list): Handle the case that a file is specified in font
16543 name. Use ftfont_pattern_entity to generate entities.
16544 (ftfont_has_char): Check if the pattern contains FC_CHARSET.
16545 (syms_of_ftfont): Initialize freetype_font_cache.
16546
16547 * xftfont.c (xftfont_open): Make the font name fontconfig's
16548 style. Add BLOCK_INPUT and UNBLOCK_INPUT.
16549 (xftfont_close): Free font->font.name if not NULL.
16550
16551 * xfont.c (xfont_list): If script is specified for a font, return
16552 null_vector.
16553 (xfont_list_family): Declare argument type.
16554
16555 * xfaces.c (set_lface_from_font_name): If a font doesn't have a
16556 name, set LFACE_FONT (lface) to nil.
16557
16558 * xterm.c (x_new_fontset2): If an ASCII font couldn't be loaded,
16559 return Qnil.
16560
16561 2008-02-01 Kenichi Handa <handa@m17n.org>
16562
16563 * emacs.c (main): Check -enable-font-backend arg after the check of -nl.
16564 (standard_args): Add "-enable-font-backend".
16565
16566 2008-02-01 Kenichi Handa <handa@m17n.org>
16567
16568 * xftfont.c (xftfont_default_fid): Set fid_known to 1.
16569 (struct xftdraw_list, xftdraw_list): Delete them.
16570 (register_xftdraw, check_xftdraw): Delete them.
16571 (xftfont_prepare_face): Don't call register_xftdraw.
16572 (xftfont_done_face): Don't call check_xftdraw.
16573 (xftfont_draw): Get background color only when with_background is
16574 nonzero.
16575
16576 * xfont.c (xfont_encode_char): Fix calculation of char2b.
16577
16578 2008-02-01 Kenichi Handa <handa@m17n.org>
16579
16580 These changes are for the new font handling codes.
16581
16582 * Makefile.in (ALL_CFLAGS): Add @FREETYPE_CFLAGS@,
16583 @FONTCONFIG_CFLAGS@, and @LIBOTF_CFLAGS@.
16584 (LIB_X11_LIB): If HAVE_XFT is defined, set to @XFT_LIBS@.
16585 (FONTSRC, FONTOBJ): New variables.
16586 (obj): Add $(FONTOBJ).
16587 (SOME_MACHINE_OBJECTS): Lib_X11_Lib.
16588 (LIBES): Add @FREETYPE_LIBS@, @FONTCONFIG_LIBS@, and
16589 @LIBOTF_LIBS@.
16590 (font.o, ftfont.o, xfont.o, xftfont.o, ftxfont.o): New targets.
16591 (fontset.o, xdisp.o, xfaces.o, xfns.o, xterm.o): Depend on $(FONTSRC).
16592
16593 * font.h, font.c, xfont.c, ftfont.c, xftfont.c, ftxfont.c: New files.
16594
16595 * character.h (Vscript_representative_chars): Extern it.
16596
16597 * character.c (Vscript_representative_chars): New variable.
16598 (syms_of_character): Declare it as a Lisp variable.
16599
16600 * composite.c (get_composition_id) [USE_FONT_BACKEND]: If
16601 enable_font_backend is nonzero, accept the composition method
16602 COMPOSITION_WITH_GLYPH_STRING.
16603
16604 * composite.h (enum composition_method) [USE_FONT_BACKEND]: New
16605 enumeration COMPOSITION_WITH_GLYPH_STRING.
16606
16607 * dispextern.h (struct glyph_string) [USE_FONT_BACKEND]: New
16608 members clip_x, clip_y, clip_width, and clip_height.
16609 (struct face) [USE_FONT_BACKEND]: New members font_info and extra.
16610
16611 * emacs.c (main) [USE_FONT_BACKEND]: Handle arg
16612 --enable-font-backend. Call syms_of_font.
16613
16614 * fns.c (assoc_no_quit): New function.
16615
16616 * fontset.h (FONT_INFO_FROM_FACE): New macro.
16617 (face_for_font, new_fontset_from_font)
16618 (fontset_ascii_font) [USE_FONT_BACKEND]: Extern them.
16619
16620 * fontset.c [USE_FONT_BACKEND]: Include "font.h".
16621 (fontset_font, fontset_ascii, face_for_char)
16622 (make_fontset_for_ascii_face, Ffont_info)
16623 (Finternal_char_font) [USE_FONT_BACKEND]: If enable_font_backend
16624 is nonzero, use font-backend mechanism.
16625 (find_font_encoding): Make it non-static.
16626 (new_fontset_from_font, fontset_ascii_font) [USE_FONT_BACKEND]:
16627 New functions.
16628
16629 * frame.h (struct frame): New members resx and resy.
16630 (struct frame) [USE_FONT_BACKEND]: New member font_driver_list.
16631 (x_new_fontset2) [USE_FONT_BACKEND]: Extern it.
16632
16633 * frame.c [USE_FONT_BACKEND]: Include "font.h".
16634 (make_frame, x_set_font) [USE_FONT_BACKEND]: Use font-backend mechanism.
16635
16636 * lisp.h (assoc_no_quit): Extern it.
16637
16638 * xdisp.c: If USE_FONT_BACKEND is defined, include "font.h".
16639 Through out the file, use FONT_INFO_FROM_FACE instead of
16640 FONT_INFO_FROM_ID, use get_per_char_metric instead of
16641 rif->per_char_metric.
16642 (handle_composition_prop) [USE_FONT_BACKEND]: If the composition
16643 method is COMPOSITION_WITH_GLYPH_STRING, just set it->c to ' '.
16644 (get_glyph_face_and_encoding, fill_composite_glyph_string)
16645 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
16646 (x_produce_glyphs) [USE_FONT_BACKEND]: If enable_font_backend is
16647 nonzero, use font-backend mechanism.
16648 (get_per_char_metric): New function.
16649
16650 * xfaces.c [USE_FONT_BACKEND]: Include "font.h".
16651 (set_lface_from_font_name)
16652 (set_font_frame_param, free_realized_face)
16653 (prepare_face_for_display, clear_face_gcs)
16654 (Finternal_set_font_selection_order, realize_x_face)
16655 [USE_FONT_BACKEND]: If enable_font_backend is nonzero, use
16656 font-backend mechanism.
16657 (clear_face_cache) [USE_FONT_BACKEND]: Don't call clear_font_table.
16658 (load_face_font) [USE_FONT_BACKEND]: Abort.
16659 (face_symbolic_value, face_symbolic_weight, face_symbolic_slant)
16660 (face_symbolic_swidth, face_for_font) [USE_FONT_BACKEND]: New functions.
16661
16662 * xfns.c [USE_FONT_BACKEND]: Include "font.h".
16663 (x_default_font_parameter) [USE_FONT_BACKEND]: New function.
16664 (Fx_create_frame) [USE_FONT_BACKEND]: If enable_font_backend is
16665 nonzero, register all available font drivers. Call
16666 x_default_font_parameter for deciding a font.
16667 (x_create_tip_frame) [USE_FONT_BACKEND]: Likewise.
16668
16669 * xterm.c [USE_FONT_BACKEND]: Include "font.h".
16670 (x_set_mouse_face_gc, x_set_glyph_string_clipping)
16671 (x_set_glyph_string_clipping_exactly)
16672 (x_compute_glyph_string_overhangs)
16673 (x_draw_glyph_string_foreground)
16674 (x_draw_composite_glyph_string_foreground, x_draw_glyph_string)
16675 (x_free_frame_resources) [USE_FONT_BACKEND]: If
16676 enable_font_backend is nonzero, use font-backend mechanism.
16677 (x_new_fontset2) [USE_FONT_BACKEND]: New function.
16678
16679 2008-02-01 Kenichi Handa <handa@m17n.org>
16680
16681 * coding.c (coding_inherit_eol_type): If PARENT is nil, inherit from
16682 system_eol_type.
16683 (syms_of_coding): Initialize system_eol_type.
16684
16685 * process.c (Fset_process_coding_system): Inherit system's eol
16686 format if necessary.
16687
16688 2008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16689
16690 * macgui.h (USE_ATSUI): Don't enable on emacs-unicode-2 branch.
16691
16692 2008-02-01 Kenichi Handa <handa@m17n.org>
16693
16694 * coding.c (decode_eol): Pay attention to buffer relocation in
16695 del_range_2.
16696 (decode_coding): Call decode_eol before restoring undo_list.
16697
16698 2008-02-01 Kenichi Handa <handa@m17n.org>
16699
16700 * charset.c (Fdefine_charset_internal): Fix setting of
16701 emacs_mule_bytes.
16702
16703 2008-02-01 Kenichi Handa <handa@m17n.org>
16704
16705 * keyboard.c (read_char): Check if C is a character or not before
16706 looking up Vkeyboard_translate_table.
16707
16708 2008-02-01 Kenichi Handa <handa@m17n.org>
16709
16710 * coding.c (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Fix
16711 condition to terminate the loop.
16712
16713 2008-02-01 Kenichi Handa <handa@m17n.org>
16714
16715 * coding.c (produce_composition): Compare charbuf[i] instead of
16716 args[i] against 0.
16717 (Fterminal_coding_system): Use EQ to compare Lisp objects.
16718
16719 2008-02-01 Kenichi Handa <handa@m17n.org>
16720
16721 * coding.c (DECODE_COMPOSITION_START): If the source is short, set
16722 coding->result to CODING_RESULT_INSUFFICIENT_SRC.
16723 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK after the call of
16724 detect_coding.
16725 (emacs_mule_char): Handle old style (Emacs 20) component character
16726 of a composition.
16727 (DECODE_EMACS_MULE_COMPOSITION_RULE_20)
16728 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Fix parsing a
16729 composition rule.
16730 (decode_coding_emacs_mule): Handle invalid bytes correctly.
16731
16732 2008-02-01 Kenichi Handa <handa@m17n.org>
16733
16734 * coding.c (encode_coding_ccl): Allocate destination dynamically
16735 when necessary.
16736
16737 2008-02-01 Kenichi Handa <handa@m17n.org>
16738
16739 * ccl.c (Fccl_execute_on_string): Fix the condition of terminating
16740 the loop. When quitted, show a proper error message.
16741
16742 2008-02-01 Kenichi Handa <handa@m17n.org>
16743
16744 * xterm.c (x_set_glyph_string_clipping_exactly): Set
16745 src->clip_head and src->clip_tail temporarily instead of src->hl.
16746
16747 * ccl.c (CCL_WRITE_STRING): Handle a flag bit for multibyte
16748 character sequence.
16749 (Fccl_execute_on_string): Use ASET, not XSET.
16750
16751 2008-02-01 Kenichi Handa <handa@m17n.org>
16752
16753 * search.c (search_buffer): Fix handling of "\\" in a trivial regexp.
16754
16755 2008-02-01 Kenichi Handa <handa@m17n.org>
16756
16757 * coding.c (decode_coding): Fix the condition of terminating the
16758 decoding loop.
16759
16760 2008-02-01 Kenichi Handa <handa@m17n.org>
16761
16762 * data.c (Faset): On setting a character bigger than 255 in a
16763 unibyte string, signal an error instead of make the string multibyte.
16764
16765 2008-02-01 Kenichi Handa <handa@m17n.org>
16766
16767 * charset.c (map_charset_chars): Fix for ascii-compatible charset
16768 made by a mapping table.
16769
16770 2008-02-01 Kenichi Handa <handa@m17n.org>
16771
16772 * xdisp.c (fill_composite_glyph_string): Check s->face is NULL or
16773 not.
16774 (BUILD_COMPOSITE_GLYPH_STRING): If C is TAB, set s->face to NULL.
16775 (x_produce_glyphs): If CH is TAB, set cmp->offsets properly.
16776
16777 * xterm.c (x_draw_composite_glyph_string_foreground): Check
16778 s->face is NULL or not.
16779
16780 2008-02-01 Kenichi Handa <handa@m17n.org>
16781
16782 * xterm.c (x_set_glyph_string_clipping_exactly): New function.
16783 (x_draw_glyph_string): Fix drawing of right_overhang and
16784 left_overhang around/on cursor.
16785
16786 * xdisp.c (draw_glyphs): Fix inclusion of right_overwriting glyphs.
16787
16788 2008-02-01 Kenichi Handa <handa@m17n.org>
16789
16790 * xdisp.c (x_produce_glyphs): Handle composition with TAB.
16791
16792 2008-02-01 Kenichi Handa <handa@m17n.org>
16793
16794 * coding.c (Fdefine_coding_system_internal)
16795 (Fdefine_coding_system_alias): Avoid a duplicated element in
16796 Vcoding_system_alist.
16797
16798 2008-02-01 Kenichi Handa <handa@m17n.org>
16799
16800 * xterm.c (handle_one_xevent): Handle keysyms 0x1000000..0x10000FF.
16801
16802 * coding.c (Qcoding_system_define_form): New variable.
16803 (syms_of_coding): Intern and staticpro it.
16804 (Fcoding_system_p): Check Qcoding_system_define_form.
16805 (Fcheck_coding_system): Try to autoload the definition of CODING-SYSTEM.
16806
16807 * coding.h (CODING_SYSTEM_P): If ID is not available, call
16808 Fcoding_system_p.
16809 (CHECK_CODING_SYSTEM): If ID is not available, call
16810 Fcheck_coding_system.
16811 (CHECK_CODING_SYSTEM_GET_SPEC, CHECK_CODING_SYSTEM_GET_ID):
16812 Try also Fcheck_coding_system.
16813
16814 2008-02-01 Kenichi Handa <handa@m17n.org>
16815
16816 * coding.c (code_conversion_restore): GCPRO arg.
16817
16818 2008-02-01 Kenichi Handa <handa@m17n.org>
16819
16820 * character.c (lisp_string_width): Check multibyteness of STRING.
16821
16822 2008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16823
16824 * macterm.c (mac_encode_char): Call ccl_driver with the last arg
16825 Qnil. Use JIS_TO_SJIS instead of ENCODE_SJIS.
16826 (decode_mac_font_name): Use decode_coding_c_string instead of
16827 decode_coding.
16828 (x_load_font): Initialize fontp->fontset to -1. Set
16829 fontp->encoding_type.
16830
16831 2008-02-01 Kenichi Handa <handa@m17n.org>
16832
16833 * search.c (search_buffer): Give up BM search on case-fold-search
16834 if one of a target character has a case-equivalence of different
16835 byte length even if that target charcter is an ASCII.
16836 (simple_search): Fix calculation of byte length of matched text.
16837 (boyer_moore): Fix handling of case-equivalent multibyte characters.
16838
16839 2008-02-01 Kenichi Handa <handa@m17n.org>
16840
16841 * coding.c (decode_coding): Fix handling of invalid bytes.
16842
16843 2008-02-01 Kenichi Handa <handa@m17n.org>
16844
16845 * xterm.c (handle_one_xevent): Handle keysyms directly mapped to
16846 Unicode characters.
16847
16848 2008-02-01 Kenichi Handa <handa@m17n.org>
16849
16850 * coding.c (encode_coding_object): If a pre-write-conversion
16851 function makes a new buffer, kill it.
16852
16853 2008-02-01 Kenichi Handa <handa@m17n.org>
16854
16855 * coding.c (QCascii_compatible_p): New variable.
16856 (syms_of_coding): Initialize it.
16857 (ONE_MORE_BYTE, ONE_MORE_BYTE_NO_CHECK): Decrement `src' before
16858 calling string_char.
16859 (record_conversion_result): Add `default:' case.
16860 (coding_charset_list): Delete unused variable `coding_type'.
16861 (Fdefine_coding_system_internal): Add `ascii-compatible-p'
16862 property in the plist of the coding system.
16863 (Fcoding_system_put): Check QCascii_compatible_p.
16864
16865 2008-02-01 Miles Bader <miles@gnu.org>
16866
16867 * xfaces.c (Finternal_lisp_face_equal_p): Restore previously
16868 removed calculation of frame `f', as it's now used.
16869
16870 2008-02-01 Kenichi Handa <handa@m17n.org>
16871
16872 * Makefile.in (RUN_TEMACS): Include "-nl" if HAVE_SHM is defined.
16873 (emacs${EXEEXT}): Run $(RUN_TEMACS) unconditionally.
16874 (UNIDATA): New variable.
16875 (${lispsource}international/charprop.el): Depends on ${UNIDATA}.
16876 (bootstrap-emacs${EXEEXT}): Depends on charprop.el. Run
16877 $(RUN_TEMACS) unconditionally.
16878
16879 2008-02-01 Kenichi Handa <handa@m17n.org>
16880
16881 * Makefile.in (temacs${EXEEXT}): Build charprop.el if necessary.
16882 (admindir): New variable.
16883 ($(lispsource)international/charprop.el): New target.
16884
16885 2008-02-01 Miles Bader <miles@gnu.org>
16886
16887 * character.c (chars-in-region): Remove obsolete function.
16888 (syms_of_character): Remove its initialization.
16889
16890 2008-02-01 Benjamin Riefenstahl <b.riefenstahl@turtle-trading.net>
16891
16892 * w32select.c (validate_coding_system)
16893 (setup_windows_coding_system): New functions.
16894 (convert_to_handle_as_coded, Fw32_get_clipboard_data): Use
16895 setup_windows_coding_system.
16896 (setup_config, Fw32_get_clipboard_data): Use
16897 validate_coding_system.
16898 (Fx_selection_exists): Move call to setup_config to a place
16899 where signals are allowed.
16900
16901 * lisp.h (Fcoding_system_base, Fcoding_system_eol_type)
16902 (Fcheck_coding_system): Add declarations.
16903
16904 2008-02-01 Kenichi Handa <handa@m17n.org>
16905
16906 * charset.c (load_charset_map_from_vector): Fix for the first iteration.
16907
16908 2008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16909
16910 * macfns.c (Fx_create_frame, x_create_tip_frame): Pass Lisp
16911 string as the second argument for x_new_fontset.
16912
16913 2008-02-01 Kenichi Handa <handa@m17n.org>
16914
16915 * coding.c (decode_coding_object): Use safe_call1 instead of call1.
16916 (encode_coding_object): Use safe_call instead of call2.
16917
16918 2008-02-01 Kenichi Handa <handa@m17n.org>
16919
16920 * fontset.c (Fset_fontset_font): Check family element of a given vector.
16921
16922 * Makefile.in (lisp): Include charprop.el.
16923
16924 2008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16925
16926 * macfns.c (Fx_create_frame, x_create_tip_frame): Fix crash.
16927 Not sure if it's unnecessary.
16928
16929 2008-02-01 Steven Tamm <steventamm@mac.com>
16930
16931 * macfns.c (Fx_create_frame, x_create_tip_frame): ifdef'd out
16932 some possibly unnecessary fontset checking code that crashed
16933 when creating a new frame.
16934
16935 2008-02-01 Kenichi Handa <handa@m17n.org>
16936
16937 * xfaces.c (merge_faces): Fix argument to lookup_derived_face and
16938 lookup_face.
16939
16940 * xdisp.c (Fformat_mode_line): Fix argument to lookup_named_face.
16941
16942 * fringe.c (draw_fringe_bitmap_1): Fix argument to lookup_named_face.
16943
16944 2008-02-01 Kenichi Handa <handa@m17n.org>
16945
16946 * coding.c: Cancel the change done in HEAD on 2008-02-01.
16947 (coding_charset_list): New function.
16948
16949 * coding.h (coding_charset_list): Extern it.
16950
16951 2008-02-01 Kenichi Handa <handa@m17n.org>
16952
16953 * fontset.c (Fset_fontset_font): Call find_font_encoding with
16954 concatenation of family and registry.
16955
16956 2008-02-01 Kenichi Handa <handa@m17n.org>
16957
16958 * character.h (BYTE8_STRING): Fix typo.
16959
16960 * editfns.c (Ftranslate_region_internal): Don't convert unibyte
16961 string to multibyte (sync to HEAD).
16962
16963 * casefiddle.c (casify_region): Handle changes in byte-length
16964 using replace_range_2 (sync to HEAD).
16965
16966 2008-02-01 Andreas Schwab <schwab@suse.de>
16967
16968 * chartab.c (map_char_table): GCPRO table and arg.
16969
16970 2008-02-01 Kenichi Handa <handa@m17n.org>
16971
16972 * syntax.c (skip_syntaxes): Return lispy 0 (not nil) if point is
16973 already at limit.
16974
16975 2008-02-01 Kenichi Handa <handa@m17n.org>
16976
16977 * fontset.c (fs_load_font): Use fast_string_match_ignore_case
16978 instead of fast_c_string_match_ignore_case.
16979 (find_font_encoding): Change argument to Lisp_Object. Use
16980 fast_string_match_ignore_case instead of
16981 fast_c_string_match_ignore_case. Change caller.
16982
16983 2008-02-01 Kenichi Handa <handa@m17n.org>
16984
16985 * xdisp.c (get_next_display_element): In unibyte case, decide to
16986 display in octal form by checking a character by
16987 UNIBYTE_CHAR_HAS_MULTIBYTE_P.
16988
16989 * charset.c (Fset_unibyte_charset): Setup unibyte_has_multibyte_table.
16990
16991 * character.c (unibyte_has_multibyte_table): New variable.
16992
16993 * character.h (unibyte_has_multibyte_table): Extern it.
16994 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): New macro.
16995
16996 2008-02-01 Kenichi Handa <handa@m17n.org>
16997
16998 * coding.c (encode_coding_iso_2022): Fix handling of charset
16999 annotation.
17000
17001 2008-02-01 Kenichi Handa <handa@m17n.org>
17002
17003 * coding.c (setup_coding_system): If coding_system is nil, use
17004 Qundecided.
17005 (Fterminal_coding_system): Return nil if terminal coding system is
17006 `undecided'.
17007 (syms_of_coding): Define coding-system `undecided' here. Setup
17008 terminal_coding as `undecided'.
17009
17010 2008-02-01 Kenichi Handa <handa@m17n.org>
17011
17012 * xdisp.c (message_dolog, set_message_1): Call
17013 unibyte_char_to_multibyte with arg type int.
17014
17015 * lread.c (read1): Fix reading of a char-table.
17016
17017 * print.c (print_object): Include sub char-table in circularities
17018 detection.
17019
17020 2008-02-01 Kenichi Handa <handa@m17n.org>
17021
17022 * keymap.c (where_is_internal_2): Fix for the case that KEY is a cons.
17023 Append the found sequences in car of ARGS instead of prepending.
17024
17025 2008-02-01 Kenichi Handa <handa@m17n.org>
17026
17027 * fileio.c (report_file_error): Make a unibyte string from
17028 strerror (errorno).
17029 (Fsubstitute_in_file_name): Fix the arg to
17030 unibyte_char_to_multibyte. It is evaluated twice.
17031
17032 2008-02-01 Kenichi Handa <handa@m17n.org>
17033
17034 * charset.h (CHAR_CHARSET): Shortcut for ASCII case.
17035
17036 2008-02-01 Kenichi Handa <handa@m17n.org>
17037
17038 * coding.c (detect_coding_utf_16): Don't set detect_info->found if
17039 BOM is not found.
17040 (detect_coding, detect_coding_system): Optimization for ISO-2022
17041 when no 8-bit data is found.
17042
17043 2008-02-01 Jason Rumney <jasonr@gnu.org>
17044
17045 * w32fns.c (x_to_w32_font): Update to use new coding struct.
17046
17047 2008-02-01 Kenichi Handa <handa@m17n.org>
17048
17049 * charset.c (Fdeclare_equiv_charset, Fiso_charset): Fix handing of
17050 CHARS.
17051
17052 2008-02-01 Steven Tamm <steventamm@mac.com>
17053
17054 * macterm.c (mac_encode_char): Add charset argument and update
17055 to use encoding_type.
17056 (x_new_font, x_new_fontset): Merge in changes from xterm.c;
17057 switch to pure fontset.
17058 (decode_mac_font_name): Temporarily remove decoding.
17059 (x_font_name_to_mac_font_name): Temporarily remove encoding.
17060 (x_load_font): Temporarily remove encoding.
17061
17062 2008-02-01 Kenichi Handa <handa@m17n.org>
17063
17064 * xfaces.c (Fface_font): If frame is not on a window system,
17065 ignore CHARACTER arg. If HAVE_WINDOW_SYSTEM is not defined, don't
17066 refer to face->font.
17067 (split_font_name_into_vector, build_font_name_from_vector)
17068 (lookup_non_ascii_face, realize_non_ascii_face): Define them only
17069 when HAVE_WINDOW_SYSTEM is defined.
17070
17071 2008-02-01 Kenichi Handa <handa@m17n.org>
17072
17073 * xdisp.c (BUILD_GLYPH_STRINGS): Check if s is NULL.
17074 (x_produce_glyphs): Fix setting of members of cmp in case
17075 cmp->glyph_len is zero.
17076
17077 * fontset.c (Fset_fontset_font): Fix docstring.
17078 (Ffontset_info): Make it backward compatible. New arg ALL.
17079
17080 2008-02-01 Kim F. Storm <storm@cua.dk>
17081
17082 * process.c (read_process_output): Grow decoding_buf when needed;
17083 this could cause a crash in allocate_string and compact_small_strings.
17084
17085 2008-02-01 Kenichi Handa <handa@m17n.org>
17086
17087 * fileio.c (WRITE_BUF_SIZE): Delete this macro.
17088
17089 2008-02-01 Kenichi Handa <handa@m17n.org>
17090
17091 * coding.c (setup_coding_system): Set coding->common_flags
17092 correctly for raw-text.
17093 (consume_chars): On encoding unibyte text by raw-text, don't check
17094 multibyte form.
17095 (encode_coding): On encoding by raw-text, never use translation tables.
17096
17097 * fileio.c (e_write): Short cut for the case of no encoding.
17098
17099 2008-02-01 Kenichi Handa <handa@m17n.org>
17100
17101 * coding.c (detect_coding, detect_coding_system): Delete unused
17102 variables.
17103
17104 2008-02-01 Kenichi Handa <handa@m17n.org>
17105
17106 * coding.c (encode_coding_utf_8): Fix handling of raw-byte char.
17107 (consume_chars): Fix handling of 8-bit bytes in unibyte source.
17108
17109 2008-02-01 Kenichi Handa <handa@m17n.org>
17110
17111 * coding.c (Ffind_coding_systems_region_internal): Include
17112 raw-text and no-conversion in the result.
17113
17114 2008-02-01 Kenichi Handa <handa@m17n.org>
17115
17116 * fontset.c (find_font_encoding): Return `ascii' for unknown encoding.
17117 (load_font_get_repertory): Delete unnecessary check of ENCODING of
17118 FONT_DEF.
17119 (font_def_arg, add_arg, from_arg, to_arg): New args.
17120 (set_fontset_font): Change argument.
17121 (Fset_fontset_font): Fix for the case that TARGET is a script
17122 name and charset name.
17123 (new_fontset_from_font_name): Fix argument to Fnew_fontset.
17124
17125 2008-02-01 Kenichi Handa <handa@m17n.org>
17126
17127 * fontset.c (fontset_font): Rename from fontset_face. Change return
17128 value.
17129 (face_suitable_for_char_p, face_for_char): Adjust for the change
17130 of fontset_font.
17131 (make_fontset_for_ascii_face): Fix setting of the fontset element
17132 for ASCII.
17133 (Finternal_char_font): Use fontset_font instead of FACE_FOR_CHAR
17134 to get a font name.
17135 (Ffontset_info): Adjust for the change of fontset_font.
17136
17137 * coding.c (emacs_mule_char): Check invalid code more rigidly.
17138
17139 * character.h (LEADING_CODE_LATIN_1_MIN)
17140 (LEADING_CODE_LATIN_1_MAX): Delete these macros.
17141
17142 2008-02-01 Kenichi Handa <handa@m17n.org>
17143
17144 * editfns.c (check_translation): New function.
17145 (Ftranslate_region_internal): Handle M:N mapping.
17146
17147 2008-02-01 Kenichi Handa <handa@m17n.org>
17148
17149 * xfaces.c (xlfd_point_size): Set font->numeric[XLFD_PIXEL_SIZE].
17150
17151 2008-02-01 Kenichi Handa <handa@m17n.org>
17152
17153 * coding.c (DECODE_DESIGNATION): Set chars_96 to -1 instead of
17154 goto invalid_code.
17155 (decode_coding_iso_2022): Fix handling of invalid designation.
17156
17157 * fileio.c (Finsert_file_contents): Be sure to call unbind_to
17158 after calling code_conversion_save.
17159
17160 2008-02-01 Kenichi Handa <handa@m17n.org>
17161
17162 * xdisp.c (handle_auto_composed_prop): Fix Lisp_Object/int mixup.
17163
17164 * print.c (print_prune_string_charset): Fix Lisp_Object/int mixup.
17165
17166 * fontset.c: Include "intervals.h".
17167 (fontset_face): Fix comparing of Lisp_Objects.
17168 (free_face_fontset, new_fontset_from_font_name): Fix
17169 Lisp_Object/int mixup.
17170
17171 * editfns.c (Ftranslate_region_internal): Fix Lisp_Object/int mixup.
17172
17173 * coding.c: Add many prototypes for static functions.
17174 (get_translation_table): Allow max_lookup to be NULL.
17175 (decode_coding, Ffind_coding_systems_region_internal)
17176 (Funencodable_char_position, Fcheck_coding_systems_region): Call
17177 get_translation_table with max_lookup NULL.
17178
17179 2008-02-01 Kenichi Handa <handa@m17n.org>
17180
17181 * coding.c (get_translation_table): Declare it as Lisp_Object.
17182 (LOOKUP_TRANSLATION_TABLE): New macro.
17183 (produce_chars, consume_chars): Use LOOKUP_TRANSLATION_TABLE
17184 instead of CHAR_TABLE_REF.
17185
17186 2008-02-01 Kenichi Handa <handa@m17n.org>
17187
17188 * coding.c (MAX_ANNOTATION_LENGTH): Adjust for the change of
17189 annotation data format.
17190 (ADD_ANNOTATION_DATA, ADD_COMPOSITION_DATA, ADD_CHARSET_DATA):
17191 Change arguments FROM and TO to single argument NCHARS. Change caller.
17192 (decode_coding_utf_8, decode_coding_utf_16, decode_coding_emacs_mule)
17193 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
17194 (decode_coding_ccl, decode_coding_charset): Pay attention to
17195 coding->charbuf_used.
17196 (get_translation): New function.
17197 (produce_chars): New arguments translation_table and last_block.
17198 Translate characters here. Return number of carryover chars.
17199 Change caller.
17200 (produce_composition): New argument pos. Change caller.
17201 Adjust for the change of annotation data format.
17202 (produce_charset, produce_annotation): Likewise.
17203 (decode_coding, encode_coding): Don't call translate_chars.
17204 (consume_chars): New arg translation_table. Change caller.
17205 (translate_chars): Delete.
17206 (syms_of_coding): Make translation-table's number of extra slots 2.
17207
17208 2008-02-01 Kenichi Handa <handa@m17n.org>
17209
17210 * search.c (simple_search): Fix setting this_pos_byte in backward
17211 search.
17212
17213 * coding.c (detect_coding_emacs_mule): Fix counting of encoded
17214 byte sequence.
17215 (detect_coding_ccl): Fix setting of the variable valids.
17216
17217 2008-02-01 Kenichi Handa <handa@m17n.org>
17218
17219 * xterm.c (x_list_fonts): Fix the detection of an auto-scaled font.
17220
17221 * coding.c (decode_coding_utf_16): Fix handling of surrogate pair.
17222
17223 * editfns.c (Ftranslate_region_internal): Rename from
17224 Ftranslate_region. Accept a char-table in TABLE.
17225 (syms_of_editfns): Defsubr Stranslate_region_internal.
17226
17227 * xfaces.c (set_lface_from_font_name): If a font is specified for
17228 a frame, generate a fontset from the font.
17229 (build_scalable_font_name): If the scalable font is requested for
17230 a specific size, don't change that size.
17231 (try_font_list): Try a scalable font also in the case that a
17232 pattern string is specified.
17233
17234 2008-02-01 Kenichi Handa <handa@m17n.org>
17235
17236 * xfaces.c (Fface_font): New optional arg CHARACTER.
17237
17238 2008-02-01 Kenichi Handa <handa@m17n.org>
17239
17240 * charset.h (CHARSET_OFFSET): New macro.
17241
17242 2008-02-01 Kenichi Handa <handa@m17n.org>
17243
17244 * xterm.c (x_get_font_repertory): Fix for non-Unicode-bmp charset.
17245
17246 * fontset.c (fontset_face): Handle the case that repertory is a
17247 char-table.
17248 (find_font_encoding): Return nil for unknown encoding.
17249 (Fset_fontset_font): Ignore a font of unknown encoding.
17250
17251 2008-02-01 Kenichi Handa <handa@m17n.org>
17252
17253 * keymap.c (describe_vector): Handle default value of a char table.
17254
17255 * fontset.c (fontset_face): Handle fallback fonts correctly.
17256 (Ffontset_info): Return infomation about fallback fonts.
17257
17258 2008-02-01 Kenichi Handa <handa@m17n.org>
17259
17260 * fontset.c (FONTSET_DEFAULT): New macro.
17261 (FONTSET_ADD, fontset_add): Handle the case that range is nil.
17262 (Fset_fontset_font): Change the 2nd arg name to TARGET, and handle
17263 the case that it is nil.
17264 (dump_fontset): Call FONTSET_DEFAULT, not FONTSET_FALLBACK.
17265 (syms_of_fontset): Set char-table-extra-slots property of fontset to 9.
17266
17267 * charset.h (CHAR_CHARSET_P): Fix for the case that the method is
17268 subset or superset.
17269
17270 2008-02-01 Kenichi Handa <handa@m17n.org>
17271
17272 * emacs.c (main): Call init_charset after syms_of_XXX.
17273
17274 * charset.c (Vcharset_map_directory): Delete.
17275 (Vcharset_map_path): New variable.
17276 (load_charset_map_from_file): Use Vcharset_map_path instead.
17277 (init_charset): Initialize Vcharset_map_path.
17278 (syms_of_charset): Delete declaration of "charset-map-directory",
17279 add declaration of "charset-map-path".
17280
17281 2008-02-01 Kenichi Handa <handa@m17n.org>
17282
17283 * fns.c (string_char_to_byte, string_byte_to_char): Optimize for
17284 ASCII only string.
17285
17286 * fileio.c (Finsert_file_contents): Avoid detecting a code twice.
17287
17288 * coding.c (detect_coding_iso_2022): Fix handling of SS2 and SS3.
17289 (detect_coding, detect_coding_system): Treat '\0' as normal ASCII byte.
17290
17291 2008-02-01 Kenichi Handa <handa@m17n.org>
17292
17293 * coding.h (SJIS_TO_JIS2, JIS_TO_SJIS2): New macros.
17294
17295 * coding.c (QCmnemonic, QCdefalut_char)
17296 (QCdecode_translation_table, QCencode_translation_table)
17297 (QCpost_read_conversion, QCpre_write_conversion): New variables.
17298 (get_translation_table): Return a list of translation tables if
17299 necessary.
17300 (decode_coding): Call get_translation_table with ENCODEP 0.
17301 (char_encodable_p): If translation_table is non-nil, always call
17302 translate_char.
17303 (Fdefine_coding_system_internal): Accept list of translation
17304 tables as :encode-translation-table and :decode-translation-table.
17305 (Fcoding_system_put): New function.
17306 (syms_of_coding): Declare new symbols. Defsubr
17307 Scoding_system_put.
17308 (decode_coding_sjis, encode_coding_sjis): Handle 4th charset,
17309 typically JISX0212.
17310
17311 * charset.c (map_charset_chars): Fix arg to map_charset_chars in
17312 when the charset is superset type.
17313
17314 * character.c (translate_char): Accept list of translation tables.
17315
17316 2008-02-01 Kenichi Handa <handa@m17n.org>
17317
17318 * coding.h (enum coding_attr_index): New member coding_attr_trans_tbl.
17319 (CODING_ATTR_TRANS_TBL): New macro.
17320
17321 * coding.c (get_translation_table): New function.
17322 (translate_chars): Fix the bug of skipping annotation data.
17323 (decode_coding, encode_coding): Utilize get_translation_table.
17324 (char_encodable_p, Funencodable_char_position): Translate char if
17325 necessary.
17326 (Ffind_coding_systems_region_internal)
17327 (Fcheck_coding_systems_region): Setup translation table for encode
17328 in a coding system attribute vector in advance.
17329 (Fdefine_coding_system_internal): Allow a symbol as translation
17330 table. For shift-jis type coding system, allow 4th charset.
17331
17332 2008-02-01 Kenichi Handa <handa@m17n.org>
17333
17334 * coding.c (decode_coding_sjis): Check the first byte rigidly.
17335
17336 * xdisp.c (get_next_display_element): Pass -1 as POS to
17337 FACE_FOR_CHAR if displaying a C-string.
17338
17339 2008-02-01 Kenichi Handa <handa@m17n.org>
17340
17341 * composite.c (get_composition_id): Handle xoff and yoff in a
17342 composition rule.
17343
17344 * composite.h (COMPOSITION_DECODE_RULE): New arg xoff and yoff.
17345 (struct composition): New member lbearing and rbearing.
17346
17347 * xdisp.c (move_it_to): Optimize for the case (op & MOVE_TO_Y).
17348 (x_get_glyph_overhangs): Handle a composition glyph.
17349 (x_produce_glyphs): Setup lbearing and rbreaing for a composition glyph.
17350
17351 * xterm.c (x_compute_glyph_string_overhangs): Handle also a
17352 composition glyph.
17353
17354 2008-02-01 Kenichi Handa <handa@m17n.org>
17355
17356 * print.c: Include charset.h.
17357 (Vprint_charset_text_property): New variable.
17358 (Qdefault): Extern it.
17359 (PRINT_STRING_NON_CHARSET_FOUND)
17360 (PRINT_STRING_UNSAFE_CHARSET_FOUND): New macros.
17361 (print_check_string_result): New variable.
17362 (print_check_string_charset_prop): New function.
17363 (print_prune_charset_plist): New variable.
17364 (print_prune_string_charset): New function.
17365 (print_object): Call print_prune_string_charset if
17366 Vprint_charset_text_property is not t.
17367 (print_interval): Print nothing if interval->plist is nil.
17368 (syms_of_print): Declare Vprint_charset_text_property as a lisp
17369 variable. Init and staticpro print_prune_charset_plist.
17370
17371 2008-02-01 Kenichi Handa <handa@m17n.org>
17372
17373 * fontset.c (new_fontset_from_font_name): Use the specified font
17374 for all characters in the new fontset.
17375
17376 * macterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
17377 OBJECT args.
17378
17379 * xdisp.c (x_produce_glyphs): Call FACE_FOR_CHAR with POS and
17380 OBJECT args for composition too.
17381
17382 * w32term.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
17383 OBJECT args.
17384
17385 2008-02-01 Kenichi Handa <handa@m17n.org>
17386
17387 * dispextern.h (FACE_FOR_CHAR): New args POS and OBJECT.
17388
17389 * fontset.c (reorder_font_vector): Adjust for the change of
17390 FONT_DEF format.
17391 (fontset_face): New arg id. Change caller.
17392 (face_for_char): New args pos and object.
17393 (make_fontset_for_ascii_face): Adjust for the change of FONT_DEF format.
17394 (fs_query_fontset): Check NAME by Fassoc too.
17395 (Fset_fontset_font): Allow non-XLFD font name.
17396 (Ffontset_info): Adjust for the change of FONT_DEF format.
17397
17398 * fontset.h (face_for_char): Adjust prototype.
17399
17400 * xdisp.c (face_before_or_after_it_pos, get_next_display_element)
17401 (append_space, extend_face_to_end_of_line)
17402 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
17403 (x_produce_glyphs): Call FACE_FOR_CHAR with POS and OBJECT args.
17404
17405 * xfaces.c (compute_char_face): Call FACE_FOR_CHAR with
17406 POS and OBJECT args.
17407
17408 * xterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with
17409 POS and OBJECT args.
17410
17411 2008-02-01 Jason Rumney <jasonr@gnu.org>
17412
17413 * w32select.c (Fw32_set_clipboard_data): Avoid potential realloc
17414 of GlobalAlloc'ed memory.
17415
17416 2008-02-01 Kenichi Handa <handa@m17n.org>
17417
17418 * ccl.c (Fccl_execute_on_string): Fix the condition of loop.
17419
17420 * charset.h (charset_table_used): Delete extern.
17421
17422 * charset.c (charset_table_used): Make it static.
17423 (map_charset_chars): Fix args to c_function with.
17424
17425 * chartab.c (map_sub_char_table_for_charset): Fix args to
17426 c_function with.
17427
17428 * coding.h (enum coding_result_code): Delete
17429 CODING_RESULT_INSUFFICIENT_CMP, add CODING_RESULT_INVALID_SRC.
17430
17431 * coding.c (Qinsufficient_source, Qinconsistent_eol)
17432 (Qinvalid_source, Qinterrupted, Qinsufficient_memory): New variables.
17433 (Vlast_code_conversion_error): New variables.
17434 (syms_of_coding): DEFSYM or DEFVAR_LISP them.
17435 (ONE_MORE_BYTE): Record error if any instead of signaling an
17436 error. If non-ASCII multibyte char is found, return the negative
17437 value of the code. All callers changed to check it.
17438 (ONE_MORE_BYTE_NO_CHECK): Likewise.
17439 (record_conversion_result): New function. Change all codes setting
17440 coding->result to call this function.
17441 (detect_coding_utf_8, decode_coding_utf_8)
17442 (detect_coding_emacs_mule, detect_coding_sji, detect_coding_big5):
17443 Don't use the local variable incomplete.
17444 (emacs_mule_char): Change the second arg to `const'.
17445 (decode_coding): Fix of flushing out unprocessed data.
17446 (make_conversion_work_buffer): Fix making of a work buffer.
17447 (decode_coding_object): Return coding->dst_object.
17448
17449 * fontset.c (set_fontset_font): Fix args.
17450
17451 * lisp.h (CHARACTERBITS): Define as 22.
17452
17453 * process.c (send_process): Be sure to set coding->src_multibyte.
17454
17455 * xdisp.c (handle_auto_composed_prop): Fix setting of limit.
17456
17457 2008-02-01 Kenichi Handa <handa@m17n.org>
17458
17459 * xdisp.c (handle_auto_composed_prop): Give limit to
17460 Fnext_single_char_property_change.
17461
17462 2008-02-01 Kenichi Handa <handa@m17n.org>
17463
17464 * composite.c (syms_of_composite): Don't make the composition hash
17465 table weak.
17466
17467 * fontset.c (Fset_fontset_font): Fix docstring.
17468
17469 * lisp.h (detect_coding_system): Adjust prototype.
17470
17471 * fileio.c (kill_workbuf_unwind): Delete this function.
17472 (Finsert_file_contents): Adjust the call of detect_coding_system.
17473 Get conversion_buffer by code_conversion_save. Use the macro
17474 CODING_MAY_REQUIRE_DECODING. After decoding, update
17475 coding_system.
17476
17477 * coding.h (make_conversion_work_buffer): Delete extern.
17478 (code_conversion_save): Extern it.
17479
17480 * coding.c (enum iso_code_class_type): Delete ISO_carriage_return.
17481 (CODING_GET_INFO): Delete argument eol_type. Change callers.
17482 (decode_coding_utf_8): Don't do eol converion.
17483 (detect_coding_utf_16): Check coding->src_chars, not
17484 coding->src_bytes. Add heuristics for those that have no signature.
17485 (decode_coding_emacs_mule, decode_coding_iso_2022)
17486 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
17487 Don't do eol converion.
17488 (adjust_coding_eol_type): Return a new coding system.
17489 (detect_coding): Don't detect eol. Fix for utf-16 detection.
17490 (decode_eol): In case of CRLF->LF conversion, use del_range_2 on
17491 each change.
17492 (decode_coding): Pay attention to undo_list. Do eol conversion for
17493 all types of coding-systems (if necessary).
17494 (Vcode_conversion_work_buf_list): Delete it.
17495 (Vcode_conversion_reused_workbuf): Rename from
17496 Vcode_conversion_reused_work_buf.
17497 (Vcode_conversion_workbuf_name): New variable.
17498 (reused_workbuf_in_use): New variable.
17499 (make_conversion_work_buffer): Delete the arg DEPTH.
17500 (code_conversion_restore): Change argument to cons.
17501 (code_conversion_save): Delete the argument BUFFER. Change callers.
17502 (detect_coding_system): New argument src_chars. Change callers.
17503 Fix for utf-16 detection.
17504 (init_coding_once): Don't use ISO_carriage_return.
17505 (syms_of_coding): Initialize Vcode_conversion_workbuf_name and
17506 reused_workbuf_in_use.
17507
17508 2008-02-01 Kenichi Handa <handa@m17n.org>
17509
17510 * keymap.c (store_in_keymap): Pay attention to the case that idx
17511 is a cons specifying a character range.
17512
17513 2008-02-01 Kenichi Handa <handa@m17n.org>
17514
17515 * xdisp.c (handle_auto_composed_prop): Fix the case of returning
17516 HANDLED_RECOMPUTE_PROPS.
17517
17518 * coding.c (Fdefine_coding_system_internal): Fix checking of
17519 ascii compatibility.
17520
17521 2008-02-01 Kenichi Handa <handa@m17n.org>
17522
17523 * charset.c (find_charsets_in_text): Delete unused locale variable.
17524 (Fset_charset_priority): Update Vemacs_mule_charset_list too.
17525
17526 * coding.c (encode_coding_emacs_mule): Emit bytes with MSB.
17527 Resync charset_list to Vemacs_mule_charset_list.
17528
17529 * keymap.c (store_in_keymap): Pay attention to the case that idx
17530 is a cons specifying a character range.
17531
17532 2008-02-01 Kenichi Handa <handa@m17n.org>
17533
17534 * composite.c (update_compositions): Bind inhibit-read-only, etc
17535 to t before calling remove-list-of-text-properties.
17536
17537 * print.c (print_object): Always print ASCII chars as is.
17538
17539 2008-02-01 Kenichi Handa <handa@m17n.org>
17540
17541 * keymap.c (Fdefine_key): Fix handling of Lucid style event type list.
17542
17543 * fns.c (Fmapconcat, Fmapcar, Fmapc): Signal an error if SEQUENCE
17544 is a char table.
17545
17546 2008-02-01 Kenichi Handa <handa@m17n.org>
17547
17548 * syntax.c (skip_chars): Be sure to alloca char_ranges when necessary.
17549
17550 2008-02-01 Kenichi Handa <handa@m17n.org>
17551
17552 * xfaces.c (set_lface_from_font_name): Fix for the case that
17553 FONTNAME is not fontset name.
17554
17555 2008-02-01 Kenichi Handa <handa@m17n.org>
17556
17557 * fns.c (base64_encode_1): Fix previous change.
17558
17559 2008-02-01 Kenichi Handa <handa@m17n.org>
17560
17561 * fontset.c (set_fontset_font): New function.
17562 (Fset_fontset_font): If a font is specified for a charset, use
17563 map_charset_chars to store the font spec in a fontset.
17564
17565 2008-02-01 Kenichi Handa <handa@m17n.org>
17566
17567 * fontset.c (fontset_face): Create a fallback fontset on demand.
17568 (make_fontset): Don't create a fallback fontset here.
17569 (free_face_fontset): Free a fallback fontset (if any) too.
17570 (n_auto_fontsets): Delete this variable.
17571 (auto_fontset_alist): New variable.
17572 (new_fontset_from_font_name): Check auto_fontset_alist.
17573 (dump_fontset) [FONTSET_DEBUG]: Fully re-written.
17574 (Ffontset_list_all) [FONTSET_DEBUG]: New function.
17575 (syms_of_fontset): Initialize and staticpro auto_fontset_alist.
17576 Defsubr Sfontset_list_all.
17577
17578 2008-02-01 Kenichi Handa <handa@m17n.org>
17579
17580 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
17581
17582 2008-02-01 Kenichi Handa <handa@m17n.org>
17583
17584 * fontset.c (Fnew_fontset): Check NAME more rigidly.
17585
17586 2008-02-01 Kenichi Handa <handa@m17n.org>
17587
17588 * editfns.c (Fgoto_char): Fix docstring.
17589
17590 2008-02-01 Kenichi Handa <handa@m17n.org>
17591
17592 * insdel.c (insert_from_gap): Adjust intervals correctly.
17593
17594 2008-02-01 Jason Rumney <jasonr@gnu.org>
17595
17596 * w32term.c (GLYPHSET, WCRANGE): Define if system headers don't.
17597 (pfnGetFontUnicodeRanges): New dynamically loaded function.
17598 (w32_initialize): Try to load it.
17599 (x_get_font_repertory): Use it if available.
17600 (w32_encode_char): Add shortcut for unicode output.
17601
17602 * w32fns.c (w32_load_system_font): Default charset to -1.
17603 (x_to_w32_charset): Match all fonts for unicode.
17604 (w32_to_x_charset): New parameter matching. Don't return partial
17605 or wildcard charsets.
17606 (w32_to_all_x_charsets): Don't return partial or wildcard charsets.
17607 (w32_codepage_for_font): Return CP_UNICODE for unicode.
17608 (w32_to_x_font): Match charset to real charset.
17609 (enum_font_cb2): Always list unicode versions.
17610
17611 * makefile.w32-in (temacs): Increase EMHEAP.
17612
17613 2008-02-01 Jason Rumney <jasonr@gnu.org>
17614
17615 * w32term.c (w32_encode_char): New charset parameter.
17616 font_info.encoding becomes encoding_type.
17617 (x_get_font_repertory): New function. Warning: stub only!
17618 (x_new_font): Return quickly if font already set.
17619 (x_new_fontset): fontsetname parameter is Lisp_Object.
17620 Use new fs_query_fontset. Try new_fontset_from_font_name.
17621 Use fontset_name for return value.
17622
17623 * w32term.h: Declare x_get_font_repertory.
17624
17625 * w32select.c (Fw32_set_clipboard_data): Use string_x_string_p in
17626 place of find_charset_in_text. Use encode_coding_object in place
17627 of encode_coding.
17628 (Fw32_get_clipboard_data): Use decode_coding_c_string in place of
17629 decode_coding.
17630
17631 * w32fns.c (Fx_create_frame, x_create_tip_frame): Use new version
17632 of x_new_fontset.
17633 (w32_load_system_font): Initialize charset as unicode.
17634 font_info.encoding becomes encoding_type.
17635 (w32_to_x_font): Use decode_coding_c_string in place of decode_coding.
17636 (x_to_w32_font): Use encode_coding_object in place of encode_coding.
17637 (syms_of_w32fns): Set get_font_repertory_func.
17638
17639 * w32console.c: Include character.h. Use terminal_encode_buffer
17640 from term.c.
17641 (write_glyphs): Use new version of encode_terminal_code. Use
17642 encode_coding_object in place of encode_coding.
17643
17644 * w32bdf.c (w32_load_bdf_font): Clear font_info before filling.
17645 encoding becomes encoding_type.
17646
17647 * term.c (terminal_encode_buffer): Make externally visible.
17648
17649 * makefile.w32-in: Add character.h dependancies.
17650 (character.o, chartab.o): New targets.
17651
17652 2008-02-01 Kenichi Handa <handa@m17n.org>
17653
17654 * fileio.c (Finsert_file_contents) [DOS_NT]: Use the macro
17655 CODING_ID_EOL_TYPE.
17656
17657 2008-02-01 Andreas Schwab <schwab@suse.de>
17658
17659 * coding.c (produce_chars): Revert last change.
17660
17661 2008-02-01 Kenichi Handa <handa@m17n.org>
17662
17663 * charset.h (charset_unicode): Extern it.
17664
17665 * charset.c (string_xstring_p): Check by (C >= 0x100).
17666 (find_charsets_in_text): Change format of the arc CHARSETS. New
17667 arg MULTIBYTE.
17668 (Ffind_charset_region, Ffind_charset_string): Adjust for the
17669 change of find_charsets_in_text.
17670 (Fsplit_char): Fix doc. Never return unknown.
17671
17672 * chartab.c (char_table_translate): Use CHARACTERP, not INTEGERP.
17673
17674 * coding.c (Fdefine_coding_system_alias): Update
17675 Vcoding_system_list.
17676
17677 * fontset.c (load_font_get_repertory): Pay attention to the case
17678 that ENCODING of a font is specified by a char-table.
17679
17680 * xterm.c (x_get_font_repertory): Handle the case that the
17681 encoding of font is other than Unicode.
17682
17683 2008-02-01 Kenichi Handa <handa@m17n.org>
17684
17685 * term.c (encode_terminal_code): Don't handle glyph-table. Check
17686 if a character is encodable by the terminal coding system. If
17687 not, produces proper number of `?'s. Update
17688 terminal_encode_buffer and terminal_encode_buf_size if necessary.
17689 (produce_glyphs): Check by CHAR_BYTE8_P, not SINGLE_BYTE_CHAR_P.
17690
17691 2008-02-01 Kenichi Handa <handa@m17n.org>
17692
17693 * term.c (terminal_encode_buffer, terminal_encode_buf_size): New
17694 variables.
17695 (encode_terminal_code): Change argument. Encode multiple
17696 characters at once. Store the result of encoding in
17697 terminal_encode_buffer.
17698 (write_glyphs, insert_glyphs): Adjust for the change of
17699 encode_terminal_code.
17700 (term_init): Initialize terminal_encode_buffer and
17701 terminal_encode_buf_size.
17702
17703 * coding.c (consume_chars): If coding->src_object is nil, don't
17704 check annotation.
17705
17706 2008-02-01 Kenichi Handa <handa@m17n.org>
17707
17708 * character.c (char_string): Use ASCII_CHAR_P instead of
17709 SINGLE_BYTE_CHAR_P.
17710
17711 2008-02-01 Kenichi Handa <handa@m17n.org>
17712
17713 * xdisp.c (handle_auto_composed_prop): Check if the last
17714 characters of auto-composed region is newly composed with the
17715 following characters.
17716 (handle_composition_prop): Fix checking of point being inside
17717 composition.
17718
17719 2008-02-01 Kenichi Handa <handa@m17n.org>
17720
17721 * fns.c (concat): Don't change multibyteness of the result by
17722 concatenating an 8-bit character.
17723
17724 * data.c (Faset): Check newelt by CHECK_CHARACTER. Don't change
17725 multibyteness of the result when newelt is an 8-bit character.
17726
17727 2008-02-01 Dave Love <fx@gnu.org>
17728
17729 * xmenu.c (find_and_call_menu_selection): Make menu_bar_items_used
17730 EMACS_INT.
17731
17732 * xfns.c (DefaultDepthOfScreen, x_encode_text): Remove unused vars.
17733
17734 * xfaces.c (face_numeric_value): Declare dim size_t.
17735 (Finternal_lisp_face_equal_p): Remove unused f.
17736
17737 * xdisp.c (BUILD_CHAR_GLYPH_STRINGS, display_and_set_cursor)
17738 (MATRIX_ROW): Remove unused vars.
17739 (draw_glyphs, x_insert_glyphs, fast_find_position)
17740 (fast_find_position, fast_find_string_pos): Use EMACS_INT for
17741 byte/char counts.
17742
17743 * regex.c (regex_compile): Remove unused var.
17744
17745 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
17746
17747 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
17748 (Faccessible_keymaps, where_is_internal): Remove unused vars.
17749
17750 * keyboard.c (cancel_hourglass_unwind): Return Qnil.
17751
17752 * frame.c (frame_name_fnn_p): Make len EMACS_INT.
17753
17754 * fileio.c (Fwrite_region): Remove unused var.
17755
17756 * dispnew.c (adjust_frame_glyphs_for_frame_redisplay)
17757 (adjust_frame_glyphs_for_window_redisplay): Remove unused ch_dim.
17758
17759 * composite.c (Fremove_list_of_text_properties): Declare.
17760
17761 * coding.c (inhibit_pre_post_conversion): Remove (unused).
17762 (alloc_destination, produce_chars): Use EMACS_INT for byte/char counts.
17763 (coding_inherit_eol_type): Remove unused attrs.
17764 (detect_coding): Cast arg of detect_eol.
17765
17766 * charset.c (syms_of_charset): Remove unused var p.
17767 (find_charsets_in_text, Ffind_charset_region): Use EMACS_INT for
17768 byte/char counts.
17769
17770 * casetab.c (set_case_table): Remove unused var.
17771
17772 * window.c (Fdisplay_buffer, Fframe_selected_window): Remove
17773 unused vars.
17774
17775 2008-02-01 Dave Love <fx@gnu.org>
17776
17777 * xterm.c (x_bitmap_mask): Declare.
17778
17779 2008-02-01 Dave Love <fx@gnu.org>
17780
17781 * xterm.c (x_term_init): Fix type error.
17782
17783 * lisp.h: Add Funibyte_char_to_multibyte.
17784
17785 * coding.c (Fread_coding_system): Fix arg of XSETSTRING.
17786 (Fset_coding_system_priority): Doc fix.
17787
17788 * ccl.c (ccl_driver): Fix arg of CHARACTERP.
17789
17790 * indent.c (check_composition): Make start and end EMACS_INT.
17791
17792 * character.c (lisp_string_width): Make ignore and end EMACS_INT.
17793
17794 * xdisp.c (handle_composition_prop, check_point_in_composition):
17795 Make buffer positions EMACS_INT.
17796
17797 * composite.c (find_composition, run_composition_function)
17798 (update_compositions, Ffind_composition_internal): Make buffer
17799 positions EMACS_INT.
17800
17801 * composite.h (find_composition, update_compositions): Make
17802 position args EMACS_INT.
17803
17804 * keyboard.c (adjust_point_for_property): Make beg and end EMACS_INT.
17805
17806 * intervals.c (get_property_and_range):
17807 * intervals.h (get_property_and_range): Make start and end EMACS_INT.
17808
17809 * unexalpha.c: Don't include varargs.h.
17810
17811 2008-02-01 Dave Love <fx@gnu.org>
17812
17813 * coding.h (ENCODE_UTF_8): New.
17814
17815 * Makefile.in (gtkutil.o): Depend on coding.h.
17816
17817 * coding.c (Fset_coding_system_priority): Doc fix.
17818
17819 2008-02-01 Kenichi Handa <handa@m17n.org>
17820
17821 * fileio.c (Finsert_file_contents): Call setup_coding_system in
17822 the case of auto saving.
17823
17824 2008-02-01 Andreas Schwab <schwab@suse.de>
17825
17826 * chartab.c (map_char_table, map_char_table_for_charset): Protect
17827 `range' from GC.
17828
17829 2008-02-01 Kenichi Handa <handa@m17n.org>
17830
17831 * coding.c (decode_coding_sjis): Check bytes more rigidly.
17832
17833 2008-02-01 Kenichi Handa <handa@m17n.org>
17834
17835 * fileio.c (choose_write_coding_system): Return a decided coding system.
17836 (Fwrite_region): Set Vlast_coding_system_used to the return value
17837 of choose_write_coding_system.
17838
17839 2008-02-01 Kenichi Handa <handa@m17n.org>
17840
17841 * charset.c (Fset_charset_priority): Pay attention to duplicated
17842 arguments.
17843
17844 * coding.c (QCcategory): New variable.
17845 (syms_of_coding): Defsym it. Set all elements of
17846 Vcoding_category_table and their symbol values.
17847 (Fset_coding_system_priority): Doc fix. Update symbol qvalues of
17848 coding-category-XXX, and coding-category-list.
17849 (Fdefine_coding_system_internal): Add category in the plist.
17850
17851 2008-02-01 Kenichi Handa <handa@m17n.org>
17852
17853 * callproc.c (Fcall_process): Handle carryover correctly.
17854
17855 * coding.c (decode_coding_iso_2022): Fix handling of invalid bytes.
17856 (raw_text_coding_system): Check NILP (coding_system).
17857 (coding_inherit_eol_type): Check NILP (coding_system) and
17858 NILP (parent).
17859 (consume_chars): Fix for the case of raw-text.
17860
17861 * process.c (read_process_output): Handle carryover correctly.
17862
17863 2008-02-01 Dave Love <fx@gnu.org>
17864
17865 * regex.c (re_search_2): Fix last change.
17866
17867 2008-02-01 Kenichi Handa <handa@m17n.org>
17868
17869 * regex.c (GET_CHAR_BEFORE_2): Check multibyte, not
17870 target_multibyte. Even in a unibyte case, return a converted
17871 multibyte char.
17872 (GET_CHAR_AFTER): New macro.
17873 (PATFETCH): Translate via multibyte char.
17874 (HANDLE_UNIBYTE_RANGE): Delete this macro.
17875 (SETUP_MULTIBYTE_RANGE): New macro.
17876 (regex_compile): Setup compiled code so that its multibyteness
17877 matches that of a target. Fix the handling of "[X-YZ]" using
17878 SETUP_MULTIBYTE_RANGE.
17879 (analyse_first) <charset>: For filling fastmap for all multibyte
17880 characters, don't check by BASE_LEADING_CODE_P.
17881 (re_search_2): Don't check RE_TARGET_MULTIBYTE_P (bufp). It is
17882 the same as RE_MULTIBYTE_P (bufp) now.
17883 (mutually_exclusive_p): Check by (! multibyte || IS_REAL_ASCII (c)).
17884 (TARGET_CHAR_AND_LENGTH): Delete this macro.
17885 (TRANSLATE_VIA_MULTIBYTE): New macro.
17886 (re_match_2_internal): Don't check RE_TARGET_MULTIBYTE_P (bufp).
17887 It is the same as RE_MULTIBYTE_P (bufp) now.
17888 <exactn>: Translate via multibyte.
17889 <anychar>: Fetch a character by RE_STRING_CHAR_AND_LENGTH. Don't
17890 translate it.
17891 <charset, charset_not>: Fetch a character by
17892 RE_STRING_CHAR_AND_LENGTH. Translate via multibyte.
17893 <duplicate>: Call bcmp_translate with the last arg `multibyte'.
17894 <wordbound, notwordbound, wordbeg, wordend, syntaxspec,
17895 notsyntaxspec, categoryspec, notcategoryspec> Fetch a character
17896 by GET_CHAR_AFTER.
17897 (bcmp_translate): Likewise.
17898
17899 * search.c (compile_pattern): Check the member target_multibyte,
17900 not the member multibyte of buf.
17901
17902 * lread.c (read1): While reading a string, set force_singlebyte
17903 and force_multibyte correctly.
17904
17905 * charset.c (Fset_unibyte_charset, init_charset_once): Fix setting
17906 up of unibyte_to_multibyte_table.
17907
17908 2008-02-01 Kenichi Handa <handa@m17n.org>
17909
17910 * coding.c (setup_coding_system): If coding has
17911 post-read-conversion or pre-write-conversion, set
17912 CODING_REQUIRE_DECODING_MASK and CODING_REQUIRE_ENCODING_MASK
17913 respectively.
17914 (decode_coding_gap): Run post-read-conversion if any.
17915
17916 * fileio.c (Finsert_file_contents): Even if we read into a
17917 unibyte buffer, check if we must decode the result or not.
17918
17919 2008-02-01 Kenichi Handa <handa@m17n.org>
17920
17921 * coding.c (make_conversion_work_buffer): Change the work buffer
17922 name to the same one as that of Emacs 21.
17923
17924 2008-02-01 Kenichi Handa <handa@m17n.org>
17925
17926 * coding.h (make_conversion_work_buffer): Adjust prototype.
17927 (code_conversion_restore): Don't extern it.
17928
17929 * coding.c (detected_mask): Delete unused variable.
17930 (decode_coding_iso_2022): Pay attention to the byte sequence of
17931 CTEXT extended segment, and retain those bytes as is.
17932 (decode_coding_ccl): Delete unused variable `valids'.
17933 (setup_coding_system): Delete unused variable `category'.
17934 (consume_chars): Delete unused variable `category'. Make it work
17935 for non-multibyte case.
17936 (make_conversion_work_buffer): Change argument.
17937 (saved_coding): Delete unused variable.
17938 (code_conversion_restore): Don't check saved_coding->destination.
17939 (code_conversion_save): New function.
17940 (decode_coding_gap, encode_coding_gap): Call code_conversion_save
17941 instead of record_unwind_protect.
17942 (decode_coding_object, encode_coding_object): Likewise. Recover PT.
17943 (detect_coding_system): Delete unused variable `mask'.
17944 (Fdefine_coding_system_internal): Delete unused variable id.
17945
17946 * fileio.c (kill_workbuf_unwind): New function.
17947 (Finsert_file_contents): On replacing, call
17948 make_conversion_work_buffer with correct args, and call
17949 record_unwind_protect with the first arg kill_workbuf_unwind.
17950
17951 * lisp.h (Fgenerate_new_buffer_name): EXFUN it.
17952
17953 2008-02-01 Kenichi Handa <handa@m17n.org>
17954
17955 * fontset.c (BASE_FONTSET_P): Check FONTSET_BASE, not FONTSET_NAME.
17956 (fontset_add): Fix for the case that TO is less than TO1.
17957 (Ffontset_info): Don't use fallback fontset on checking the
17958 default fontset.
17959 (dump_fontset): New function for debugging.
17960
17961 * coding.c (Fdefine_coding_system_internal): Fix for the case that
17962 coding_type is Qcharset.
17963
17964 2008-02-01 Kenichi Handa <handa@m17n.org>
17965
17966 * chartab.c (map_sub_char_table): New argument DEFAULT_VAL.
17967 (map_char_table): Don't inherit the value from the parent on
17968 initializing VAL. Adjust for the above change.
17969
17970 2008-02-01 Kenichi Handa <handa@m17n.org>
17971
17972 * coding.c (Qsignature, Qendian): Delete these variables.
17973 (syms_of_coding): Don't initialize them.
17974 (CATEGORY_MASK_UTF_16_AUTO): New macro.
17975 (detect_coding_utf_16): Add CATEGORY_MASK_UTF_16_AUTO in
17976 detect_info->found.
17977 (decode_coding_utf_16): Don't detect BOM here.
17978 (encode_coding_utf_16): Produce BOM if CODING_UTF_16_BOM (coding)
17979 is NOT utf_16_without_bom.
17980 (setup_coding_system): For a coding system of type utf-16, check
17981 if the attribute :endian is Qbig or not (not nil or not), and set
17982 CODING_REQUIRE_DETECTION_MASK if BOM detection is required.
17983 (detect_coding): If coding type is utf-16 and BOM detection is
17984 required, detect it.
17985 (Fdefine_coding_system_internal): For a coding system of type
17986 utf-16, check if the attribute :endian is Qbig or not (not nil or not).
17987
17988 2008-02-01 Kenichi Handa <handa@m17n.org>
17989
17990 * coding.c (coding_set_source): Fix for the case that the current
17991 buffer is different from coding->src_object.
17992 (decode_coding_object): Don't use the conversion work buffer if
17993 DST_OBJECT is a buffer.
17994
17995 2008-02-01 Dave Love <fx@gnu.org>
17996
17997 * lread.c (read_emacs_mule_char) [len==2]: Index
17998 emacs_mule_charset correctly.
17999
18000 2008-02-01 Dave Love <fx@gnu.org>
18001
18002 * coding.c (Qbig5, Vbig5_coding_system, CATEGORY_MASK_BIG5)
18003 (detect_coding_big5, decode_coding_big5, encode_coding_big5)
18004 (Fdecode_big5_char, Fencode_big5_char): Delete. (Big5 no longer
18005 treated specially.)
18006 (setup_coding_system, coding_category, CATEGORY_MASK_ANY)
18007 (detected_mask): Remove Big5 bits.
18008
18009 2008-02-01 Kenichi Handa <handa@m17n.org>
18010
18011 The following changes are to make the font rescaling facility
18012 compatible with Emacs 21.
18013
18014 * xfaces.c (Vface_font_rescale_alist): Rename from
18015 Vface_resizing_fonts.
18016 (struct font_name): Rename member resizing_ratio to rescale_ratio.
18017 (font_rescale_ratio): Rename from font_resizing_ratio.
18018 (split_font_name): Set font->rescale_ratio.
18019 (better_font_p): Pay attention to font->rescale_ratio.
18020 (build_scalable_font_name): Likewise. Change RESX, and RESY
18021 fields.
18022 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
18023
18024 2008-02-01 Kenichi Handa <handa@m17n.org>
18025
18026 * coding.c (Qutf_16_be_nosig, Qutf_16_be, Qutf_16_le_nosig)
18027 (Qutf_16_le): Remove these variables.
18028 (syms_of_coding): Don't DEFSYM them.
18029 (decode_coding_utf_16): Fix handling of BOM.
18030 (encode_coding_utf_16): Fix handling of BOM.
18031
18032 2008-02-01 Kenichi Handa <handa@m17n.org>
18033
18034 * fileio.c (Finsert_file_contents): On replacing, before decoding
18035 the file into the work buffer, set point of the work buffer to the end.
18036
18037 2008-02-01 Dave Love <fx@gnu.org>
18038
18039 * coding.c (Fcheck_coding_systems_region): Fix type errors.
18040
18041 2008-02-01 Dave Love <fx@gnu.org>
18042
18043 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
18044 and fix C types.
18045
18046 2008-02-01 Kenichi Handa <handa@m17n.org>
18047
18048 * xdisp.c (SKIP_GLYPHS): New macro.
18049 (set_cursor_from_row): Pay attention to string display properties.
18050
18051 * category.c (copy_category_entry): Fix for the case that RANGE
18052 is an integer.
18053
18054 * xterm.c (x_encode_char): Call ccl_driver with the last arg Qnil.
18055
18056 * w32term.c (w32_encode_char): Call ccl_driver with the last arg Qnil.
18057
18058 2008-02-01 Kenichi Handa <handa@m17n.org>
18059
18060 * charset.c (Fcharset_id_internal): New function.
18061 (syms_of_charset): Defsubr it.
18062
18063 * coding.c (decode_coding_ccl, encode_coding_ccl): Call ccl_driver
18064 with the last arg charset_list acquired from coding.
18065 (Fdefine_coding_system_internal): For ccl-based coding system, fix
18066 the attribute coding_attr_ccl_valids.
18067
18068 * coding.h (enum define_coding_ccl_arg_index): Set the first
18069 member coding_arg_ccl_decoder to coding_arg_max.
18070
18071 * ccl.h (ccl_driver): Adjust prototype.
18072
18073 * ccl.c (CCL_DECODE_CHAR, CCL_ENCODE_CHAR): New macros.
18074 (ccl_driver): New arg CHARSET_LIST. Use the above macros instead
18075 of DECODE_CHAR, ENCODE_CHAR, CHAR_CHARSET.
18076 (Fccl_execute, Fccl_execute_on_string): Call ccl_driver with the
18077 last arg Qnil.
18078
18079 2008-02-01 Kenichi Handa <handa@m17n.org>
18080
18081 * charset.h (ENCODE_CHAR): If the method is SUBSET or SUPERSET,
18082 call encode_char.
18083
18084 * charset.c (encode_char): Fix handling of methods SUBSET and SUPERSET.
18085
18086 2008-02-01 Dave Love <fx@gnu.org>
18087
18088 * composite.c (syms_of_composite): Make composition_hash_table weak.
18089
18090 2008-02-01 Kenichi Handa <handa@m17n.org>
18091
18092 * dispextern.h (check_face_attributes, generate_ascii_font_name)
18093 (font_name_registry): Don't extern them.
18094 (split_font_name_into_vector, build_font_name_from_vector): Extern them.
18095
18096 * fontset.h (Qfontset): Don't extern it.
18097 (new_fontset_from_font_name): Extern it.
18098
18099 * fontset.c: Give 8 extra slots to fontset objects.
18100 (Qfontset_info): New variable.
18101 (syms_of_fontset): Defsym it.
18102 (FONTSET_FALLBACK): New macro.
18103 (fontset_face): Try also the default fontset.
18104 (make_fontset): Realize a fallback fontset from the default fontset.
18105 (generate_ascii_font_name): Move from xfaces.c. Rewritten by
18106 using split_font_name_into_vector and build_font_name_from_vector.
18107 (Fset_fontset_font): Access the elements of font_spec by enum
18108 FONT_SPEC_INDEX. If font_spec is a string, extract the registry
18109 name by using split_font_name_into_vector.
18110 (Fnew_fontset): If no ASCII font is specified in FONTLIST,
18111 generate a proper font name from the fontset name. Update
18112 Vfontset_alias_alist.
18113 (n_auto_fontsets): New variable.
18114 (new_fontset_from_font_name): New function.
18115 (Ffont_info): Store the information about fonts generated from the
18116 default fontset in the first extra slot of the returned char-table.
18117
18118 * xfaces.c (generate_ascii_font_name): Move to fontset.c.
18119 (font_name_registry): Delete function.
18120 (split_font_name_into_vector): New function.
18121 (build_font_name_from_vector): New function.
18122 (font_list): The argument REGISTRY is now a list of registry names.
18123 (choose_face_font): If we are choosing an ASCII font, and ATTRS
18124 specifies an explicit font name, return the name as is. Make a
18125 list of registy names.
18126
18127 * xfns.c (x_set_font, x_create_tip_frame): Adjust for the change
18128 of x_new_fontset.
18129 (Fx_create_frame): Don't call x_new_fontset here. Just use
18130 x_list_fonts to check the existence of fonts.
18131
18132 * xterm.h (x_new_fontset): Adjust prototype.
18133
18134 * xterm.c (x_new_fontset): Change the arg FONTSETNAME to Lisp
18135 string. Use new_fontset_from_font_name to create a fontset from a
18136 font name.
18137
18138 2008-02-01 Kenichi Handa <handa@m17n.org>
18139
18140 * syntax.c (Vfind_word_boundary_function_table): New name for
18141 Vnext_word_boundary_function_table.
18142 (find-word-boundary-function-table): New name for
18143 next-word-boundary-function-table.
18144
18145 2008-02-01 Dave Love <fx@gnu.org>
18146
18147 * Makefile.in: Fix some dependencies.
18148
18149 * keymap.c (Fapropos_internal): Don't gcpro apropos_predicate but
18150 set it to nil before returning.
18151
18152 * composite.c (update_compositions): Fix type error.
18153
18154 * syntax.c (skip_chars, skip_syntaxes): Fix type errors.
18155
18156 2008-02-01 Kenichi Handa <handa@m17n.org>
18157
18158 * xterm.c (x_new_font): Optimize for the case that the font is
18159 already set for the frame.
18160
18161 2008-02-01 Kenichi Handa <handa@m17n.org>
18162
18163 * chartab.c (char_table_ascii): Check if the char table contents
18164 is sub-char-table or not.
18165 (char_table_set, char_table_set_range): Fix argument to
18166 char_table_ascii.
18167
18168 * coding.c (CATEGORY_MASK_RAW_TEXT): New macro.
18169 (detect_coding_utf_8, detect_coding_utf_16)
18170 (detect_coding_emacs_mule, detect_coding_iso_2022)
18171 (detect_coding_sjis, detect_coding_big5)
18172 (detect_coding_ccl, detect_coding_charset): Change argument MASK
18173 to DETECT_INFO. Update DETECT_INFO and return 1 if the byte
18174 sequence is valid in this coding system. Change callers.
18175 (MAX_ANNOTATION_LENGTH): New macro.
18176 (ADD_ANNOTATION_DATA): New macro.
18177 (ADD_COMPOSITION_DATA): Change argument. Change callers. Call
18178 ADD_ANNOTATION_DATA. Change the format of annotation data.
18179 (ADD_CHARSET_DATA): New macro.
18180 (emacs_mule_char): New argument ID. Change callers.
18181 (decode_coding_emacs_mule, decode_coding_iso_2022)
18182 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
18183 Produce charset annotation data in coding->charbuf.
18184 (encode_coding_emacs_mule, encode_coding_iso_2022): Pay attention
18185 to charset annotation data in coding->charbuf.
18186 (setup_coding_system): Add CODING_ANNOTATE_CHARSET_MASK
18187 coding->common_flags if the coding system is iso-2022 based and
18188 uses designation.
18189 (produce_composition): Adjust for the new annotation data format.
18190 (produce_charset): New function.
18191 (produce_annotation): Handle charset annotation.
18192 (handle_composition_annotation, handle_charset_annotation): New
18193 functions.
18194 (consume_chars): Handle charset annotation. Utilize the above two
18195 functions.
18196 (encode_coding_object): If SRC_OBJECT and DST_OBJECT are the same
18197 buffer, get the deleted text as a string and set
18198 coding->src_object to that string.
18199 (detect_coding, detect_coding_system): Use the new struct
18200 coding_detection_info.
18201
18202 * coding.h (struct coding_detection_info): New structure.
18203 (struct coding_system): Adjust prototype of the member `detector'.
18204 (CODING_ANNOTATE_CHARSET_MASK): New macro.
18205
18206 2008-02-01 Kenichi Handa <handa@m17n.org>
18207
18208 * insdel.c (insert_from_gap): Fix argument to offset_intervals.
18209
18210 2008-02-01 Dave Love <fx@gnu.org>
18211
18212 * keymap.c (apropos_predicate, apropos_accumulate): Declare static.
18213 (Fapropos_internal): Don't gcpro apropos_accumulate. Set result
18214 to new local and nullify apropos_accumulate before returning.
18215 (syms_of_keymap): Staticpro and initialize apropos_accumulate.
18216
18217 2008-02-01 Kenichi Handa <handa@m17n.org>
18218
18219 * charset.c (Fdefine_charset_internal): Setup charset.fast_map
18220 correctly.
18221
18222 2008-02-01 Dave Love <fx@gnu.org>
18223
18224 * fns.c (Flanginfo): Call synchronize_system_time_locale.
18225
18226 2008-02-01 Kenichi Handa <handa@m17n.org>
18227
18228 The following changes are to make character composition happen
18229 automatically on displaying.
18230
18231 * Makefile.in (lisp, shortlisp): Add composite.elc.
18232
18233 * composite.h (Qauto_composed, Vauto_composition_function)
18234 (Qauto_composition_function): Extern them.
18235
18236 * composite.c (Vcomposition_function_table)
18237 (Qcomposition_function_table): Delete variables.
18238 (Qauto_composed, Vauto_composition_function)
18239 (Qauto_composition_function): New variables.
18240 (run_composition_function): Don't call
18241 compose-chars-after-function.
18242 (update_compositions): Clear `auto-composed' text property.
18243 (compose_chars_in_text): Delete this function.
18244 (syms_of_composite): Staticpro Qauto_composed and
18245 Qauto_composition_function. Declare Vauto_composition_function as
18246 a Lisp variable.
18247
18248 * dispextern.h (enum prop_idx): Add member AUTO_COMPOSED_PROP_IDX.
18249
18250 * xdisp.c (it_props): Add an entry for Qauto_composed.
18251 (handle_auto_composed_prop): New function.
18252
18253 * xselect.c (selection_data_to_lisp_data): Don't call
18254 compose_chars_in_text.
18255
18256 2008-02-01 Dave Love <fx@gnu.org>
18257
18258 * keyboard.c (read_char): Modify checking around use of
18259 Vkeyboard_translate_table.
18260
18261 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
18262 and fix C types.
18263
18264 2008-02-01 Kenichi Handa <handa@m17n.org>
18265
18266 * coding.c (decode_coding_utf_8, decode_coding_emacs_mule)
18267 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
18268 (decode_coding_charset, produce_chars): When eol_type is Qdos, handle
18269 the case that the last byte is '\r' correctly.
18270 (decode_coding): Flush out the unprocessed data correctly.
18271 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK bit of coding->mode.
18272
18273 2008-02-01 Dave Love <fx@gnu.org>
18274
18275 * xterm.c (XTread_socket): Fix changes for defined keysyms.
18276 Add XK_ISO... case.
18277 (xaw_scroll_callback): Revert last change.
18278
18279 2008-02-01 Kenichi Handa <handa@m17n.org>
18280
18281 * charset.c (Fset_charset_priority): Update Viso_2022_charset_list.
18282
18283 2008-02-01 Kenichi Handa <handa@m17n.org>
18284
18285 * xfaces.c (Vface_resizing_fonts): New variable.
18286 (struct font_name): New member `resizing_ratio'.
18287 (font_resizing_ratio): New function.
18288 (split_font_name): Set font->resizing_ratio.
18289 (better_font_p): Pay attention to font->resizing_ratio.
18290 (build_scalable_font_name): Likewise. Don't change POINT_SIZE,
18291 RESX, and RESY fields.
18292 (try_alternative_families): Try scalable fonts if
18293 Vscalable_fonts_allowed is not Qt.
18294 (syms_of_xfaces): Declare Vface_resizing_fonts as a Lisp variable.
18295
18296 2008-02-01 Dave Love <fx@gnu.org>
18297
18298 * xterm.c (xaw_scroll_callback): Cast correctly.
18299
18300 2008-02-01 Dave Love <fx@gnu.org>
18301
18302 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extend.
18303 (lispy_kana_keys): Comment out.
18304 (make_lispy_event) [XK_kana_A]: Comment out.
18305
18306 * xterm.c (xaw_scroll_callback): Cast call_data.
18307 (XTread_socket): Deal with ASCII keysyms.
18308 (syms_of_xterm) <Vx_keysym_table>: Fix args of make_hash_table.
18309
18310 2008-02-01 Dave Love <fx@gnu.org>
18311
18312 * xterm.c (Vx_keysym_table): New.
18313 (syms_of_xterm): Initialize it.
18314 (XTread_socket): Use it.
18315 From head: Eliminate incorrect optimization that tried to avoid
18316 decoding the output of X*LookupString.
18317 (x_get_font_repertory): Delete charset declaration.
18318
18319 2008-02-01 Kenichi Handa <handa@m17n.org>
18320
18321 * coding.c (detect_coding_charset): If only ASCII bytes are found,
18322 return 0.
18323 (Fdefine_coding_system_internal): Setup
18324 CODING_ATTR_ASCII_COMPAT (attrs) correctly.
18325
18326 2008-02-01 Dave Love <fx@gnu.org>
18327
18328 * coding.c (Fcheck_coding_system): Doc fix.
18329
18330 * editfns.c (Finsert_byte): Return a proper value.
18331
18332 2008-02-01 Kenichi Handa <handa@m17n.org>
18333
18334 * coding.c (decode_coding): Fix args to translate_chars. Pay
18335 attention to Vstandard_translation_table_for_decode.
18336 (encode_coding): Fix args to translate_chars. Pay attention to
18337 Vstandard_translation_table_for_encode.
18338
18339 * data.c (Faset): Check NEWELT by ASCII_CHAR_P, not by
18340 SINGLE_BYTE_CHAR_P.
18341
18342 * editfns.c (general_insert_function): Check VAL by ASCII_CHAR_P,
18343 not by SINGLE_BYTE_CHAR_P.
18344
18345 * fns.c (concat): Check CH by ASCII_CHAR_P, not by
18346 SINGLE_BYTE_CHAR_P.
18347
18348 * insdel.c (copy_text): Check C by ASCII_CHAR_P, not by
18349 SINGLE_BYTE_CHAR_P.
18350
18351 * keymap.c (Ftext_char_description): Check C by ASCII_CHAR_P, not
18352 by SINGLE_BYTE_CHAR_P.
18353
18354 * search.c (Freplace_match): Check C by ASCII_CHAR_P, not by
18355 SINGLE_BYTE_CHAR_P.
18356
18357 2008-02-01 Dave Love <fx@gnu.org>
18358
18359 * fns.c (Fstring_as_multibyte, Fstring_to_multibyte): Doc fix.
18360
18361 2008-02-01 Dave Love <fx@gnu.org>
18362
18363 * fns.c (Flanginfo): Fix typo.
18364
18365 * unexelf.c (unexec): Make last change conditional on Irix 6.5.
18366
18367 2008-02-01 Kenichi Handa <handa@m17n.org>
18368
18369 * coding.c (detect_coding_utf_8, detect_coding_utf_16)
18370 (detect_coding_emacs_mule, detect_coding_iso_2022)
18371 (detect_coding_sjis, detect_coding_big5, detect_coding_ccl): Check
18372 incomplete byte sequence. Don't update *mask when correctly detected.
18373 (decode_coding_sjis): Fix decoding of katakana-jisx0201.
18374 (detect_eol): Delete the argument CODING, and add the argument CATEGORY.
18375 (detect_coding, detect_coding_system): Adjust for the changes above.
18376
18377 2008-02-01 Kenichi Handa <handa@m17n.org>
18378
18379 * character.c (char_string): Rename from
18380 char_string_with_unification. Pay attention to CHAR_MODIFIER_MASK.
18381 (string_char): Rename from string_char.
18382
18383 * character.h (CHAR_STRING, CHAR_STRING_ADVANCE): Call char_string
18384 if C is greater than MAX_3_BYTE_CHAR.
18385 (STRING_CHAR, STRING_CHAR_AND_LENGTH, STRING_CHAR_ADVANCE): Call
18386 string_char instead of string_char_with_unification.
18387
18388 2008-02-01 Dave Love <fx@gnu.org>
18389
18390 * coding.c (decode_coding_utf_8): Treat surrogates as invalid.
18391
18392 2008-02-01 Kenichi Handa <handa@m17n.org>
18393
18394 * keymap.c (push_key_description): Pay attention to force_multibyte.
18395
18396 * regex.c (re_search_2): Fix for the case of unibyte buffer.
18397
18398 2008-02-01 Dave Love <fx@gnu.org>
18399
18400 * charset.c (define_charset_internal): Rename `supprementary'.
18401
18402 * Makefile.in (lisp, shortlisp): Remove latin-N.
18403
18404 2008-02-01 Dave Love <fx@gnu.org>
18405
18406 * xfns.c (x_window, x_window): Use use_xim.
18407
18408 * xterm.c (use_xim): Initialize.
18409 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
18410 (x_term_init): Maybe set use_xim.
18411
18412 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
18413
18414 2008-02-01 Kenichi Handa <handa@m17n.org>
18415
18416 * search.c (search_buffer): Fix case-fold-search of multibyte
18417 characters.
18418 (boyer_moore): Rename the last argument to char_high_bits.
18419
18420 2008-02-01 Kenichi Handa <handa@m17n.org>
18421
18422 * xdisp.c (display_string): Fix for the case of zero width glyph.
18423
18424 * xfns.c (x_set_font): Change the error message of the case that
18425 x_new_fontset returns Qt.
18426
18427 * xfaces.c (set_lface_from_font_name): Reject the default fontset.
18428 (Finternal_set_lisp_face_attribute): Use signal_error for the
18429 error of invalid fontset.
18430
18431 * xterm.c (x_new_fontset): If FONTSETNAME specifies the default
18432 fontset, return Qt.
18433
18434 2008-02-01 Dave Love <fx@gnu.org>
18435
18436 * unexelf.c (unexec): Make .got handling not SGI-specific.
18437
18438 * syntax.c (syms_of_syntax) <multibyte-syntax-as-symbol>: Doc fix.
18439
18440 * regex.c: Use `ifdef HAVE_ALLOCA_H', not `if HAVE_ALLOCA_H'.
18441
18442 * keyboard.c (read_key_sequence): Fix type error.
18443
18444 * buffer.c (Fset_buffer_multibyte, Fset_buffer_multibyte): Fix
18445 type error.
18446
18447 * fontset.c (fontset_add): Return Lisp_Object.
18448
18449 2008-02-01 Dave Love <fx@gnu.org>
18450
18451 * charset.h (charset_ordered_list_tick): Declare extern.
18452
18453 2008-02-01 Kenichi Handa <handa@m17n.org>
18454
18455 The following changes (and some of 2008-02-01 changes of mine) are
18456 for handling syntax, category, and case conversion for unibyte
18457 characters by converting them to multibyte on the fly. With these
18458 changes, we don't have to setup syntax and case tables for unibyte
18459 characters in each language environment.
18460
18461 * abbrev.c (Fexpand_abbrev): Convert a unibyte character to
18462 multibyte if necessary.
18463
18464 * bytecode.c (Fbyte_code): Likewise.
18465
18466 * character.h (LEADING_CODE_LATIN_1_MIN)
18467 (LEADING_CODE_LATIN_1_MAX): New macros.
18468 (unibyte_to_multibyte_table): Extern it.
18469 (unibyte_char_to_multibyte): New macro.
18470 (MAKE_CHAR_MULTIBYTE): Use unibyte_to_multibyte_table.
18471 (CHAR_LEADING_CODE): New macro.
18472 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): New macro.
18473
18474 * character.c (unibyte_to_multibyte_table): New variable.
18475 (unibyte_char_to_multibyte): Move to character.h and define as macro.
18476 (multibyte_char_to_unibyte): If C is an eight-bit character,
18477 convert it to the corresponding byte value.
18478
18479 * charset.c (Fset_unibyte_charset): If the dimension of CHARSET is
18480 not 1, signals an error. Update the elements of
18481 unibyte_to_multibyte_table.
18482 (init_charset_once): Initialize unibyte_to_multibyte_table.
18483 (syms_of_charset): Define the charset `iso-8859-1'.
18484
18485 * cmds.c (internal_self_insert): In a multibyte buffer, insert C
18486 as is without converting it to unibyte. In a unibyte buffer,
18487 convert C to multibyte before checking the syntax.
18488
18489 * lisp.h (unibyte_char_to_multibyte): Delete extern.
18490
18491 * minibuf.c (Fminibuffer_complete_word): Use the macro
18492 FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE.
18493
18494 * regex.h (struct re_pattern_buffer): New member target_multibyte.
18495
18496 * regex.c (RE_TARGET_MULTIBYTE_P): New macro.
18497 (GET_CHAR_BEFORE_2): Check target_multibyte, not multibyte. If
18498 that is zero, convert an eight-bit char to multibyte.
18499 (MAKE_CHAR_MULTIBYTE, CHAR_LEADING_CODE): New dummy new macros for
18500 non-emacs case.
18501 (PATFETCH): Convert an eight-bit char to multibyte.
18502 (HANDLE_UNIBYTE_RANGE): New macro.
18503 (regex_compile): Setup the compiled pattern for multibyte chars
18504 even if the given regex string is unibyte. Use PATFETCH_RAW
18505 instead of PATFETCH in many places. To handle `charset'
18506 specification of unibyte, call HANDLE_UNIBYTE_RANGE. Use bitmap
18507 only for ASCII chars.
18508 (analyse_first) <exactn>: Simplify because the compiled pattern
18509 is multibyte.
18510 <charset_not>: Setup fastmap from bitmap only for ASCII chars.
18511 <charset>: Use CHAR_LEADING_CODE to get leading codes.
18512 <categoryspec>: If multibyte, setup fastmap only for ASCII chars here.
18513 (re_compile_fastmap) [emacs]: Call analyse_first with the arg
18514 multibyte always 1.
18515 (re_search_2): In emacs, set the locale variable multibyte to 1,
18516 otherwise to 0. New local variable target_multibyte. Check it
18517 to decide the multibyteness of STR1 and STR2. If
18518 target_multibyte is zero, convert unibyte chars to multibyte
18519 before translating and checking fastmap.
18520 (TARGET_CHAR_AND_LENGTH): New macro.
18521 (re_match_2_internal): In emacs, set the locale variable multibyte
18522 to 1, otherwise to 0. New local variable target_multibyte. Check
18523 it to decide the multibyteness of STR1 and STR2. Use
18524 TARGET_CHAR_AND_LENGTH to fetch a character from D.
18525 <charset, charset_not>: If multibyte is nonzero, check fastmap
18526 only for ASCII chars. Call bcmp_translate with
18527 target_multibyte, not with multibyte.
18528 <begline>: Declare the local variable C as `unsigned'.
18529 (bcmp_translate): Change the last arg name to target_multibyte.
18530
18531 * search.c (compile_pattern_1): Don't adjust the multibyteness of
18532 the regexp pattern and the matching target. Set cp->buf.multibyte
18533 to the multibyteness of the regexp pattern. Set
18534 cp->but.target_multibyte to the multibyteness of the matching target.
18535 (wordify): Use FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE instead of
18536 FETCH_STRING_CHAR_ADVANCE.
18537 (Freplace_match): Convert unibyte chars to multibyte.
18538
18539 * syntax.c (char_quoted, back_comment, scan_words)
18540 (Fforward_comment, scan_lists, Fbackward_prefix_chars)
18541 (scan_sexps_forward): Use FETCH_CHAR_AS_MULTIBYTE to convert
18542 unibyte chars to multibyte.
18543 (skip_chars): Delete the arg syntaxp, and move the code for
18544 handling syntaxes to skip_syntaxes. Change callers.
18545 Fix the case that the multibyteness of STRING and the current
18546 buffer doesn't match.
18547 (skip_syntaxes): New function.
18548 (SYNTAX_WITH_MULTIBYTE_CHECK): Check C by ASCII_CHAR_P, not by
18549 SINGLE_BYTE_CHAR_P.
18550
18551 2008-02-01 Kenichi Handa <handa@m17n.org>
18552
18553 * xfaces.c (QCfontset): New variable.
18554 (LFACE_FONTSET): New macro.
18555 (check_lface_attrs): Check also LFACE_FONTSET_INDEX.
18556 (set_lface_from_font_name): Setup LFACE_FONTSET (lface).
18557 (Finternal_set_lisp_face_attribute)
18558 (Finternal_get_lisp_face_attribute): Handle QCfontset.
18559 (lface_same_font_attributes_p): Fix checking of LFACE_FONT_INDEX,
18560 check also LFACE_FONTSET_INDEX.
18561 (face_fontset): Check attrs[LFACE_FONTSET_INDEX], not
18562 attrs[LFACE_FONT_INDEX].
18563 (syms_of_xfaces): Intern and staticpro QCfontset.
18564
18565 * dispextern.h (enum lface_attribute_index): New member
18566 LFACE_FONTSET_INDEX.
18567
18568 * fns.c (base64_encode_1): Handle eight-bit chars correctly.
18569
18570 2008-02-01 Kenichi Handa <handa@m17n.org>
18571
18572 * coding.c (coding_set_destination): Fix coding->destination for
18573 the case converting a region.
18574 (encode_coding_utf_8): Encode eight-bit chars as single byte.
18575 (encode_coding_object): Fix coding->dst_pos and
18576 coding->dst_pos_byte for the case converting a region.
18577
18578 * insdel.c (insert_from_gap): Make it work even if PT != GTP.
18579
18580 * character.h (BYTE8_STRING): New macro.
18581
18582 * fns.c (base64_decode_1): Insert eight-bit chars correctly.
18583
18584 2008-02-01 Kenichi Handa <handa@m17n.org>
18585
18586 * xdisp.c (get_next_display_element): Don't display unibyte 8-bit
18587 characters by octal form.
18588
18589 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
18590
18591 * buffer.h (_fetch_multibyte_char_len): Delete extern.
18592 (FETCH_MULTIBYTE_CHAR, BUF_FETCH_MULTIBYTE_CHAR): Don't use
18593 _fetch_multibyte_char_len.
18594 (FETCH_CHAR_AS_MULTIBYTE): New macro.
18595
18596 * casetab.c (set_canon, set_identity, shuffle): Simplify.
18597
18598 * casefiddle.c (casify_object): Simplify. Handle the case that
18599 the case conversion change the byte length.
18600 (casify_region): Likewise.
18601
18602 * character.h (MAKE_CHAR_UNIBYTE, MAKE_CHAR_MULTIBYTE): New macros.
18603
18604 * character.c (_fetch_multibyte_char_len): Delete this variable.
18605 (syms_of_character): Setup Vprintable_chars.
18606
18607 * editfns.c (Fchar_equal): Fix for the unibyte case.
18608 (Finsert_byte): New function.
18609 (syms_of_editfns): Defsubr it.
18610
18611 * keyboard.c (read_key_sequence): Use ~CHAR_MODIFIER_MASK instead
18612 of direct code 0x3ffff.
18613
18614 * search.c (Freplace_match): Fix for the unibyte case.
18615
18616 2008-02-01 Kenichi Handa <handa@m17n.org>
18617
18618 * lread.c (safe_to_load_p): Fix the logic.
18619
18620 * syntax.c (scan_words): Don't treat characters belonging to
18621 different scripts as constituting a word.
18622
18623 * editfns.c (Fformat): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
18624
18625 * fontset.c (Fset_fontset_font): Treat `ascii' as charset, not script.
18626
18627 * emacs.c (main): In the case of --unibyte, instead of aborting on
18628 finding non-empty buffer, make it unibyte.
18629
18630 2008-02-01 Kenichi Handa <handa@m17n.org>
18631
18632 * xterm.c (x_new_fontset): Call `create-fontset-from-ascii-font'
18633 to create a fontset.
18634
18635 2008-02-01 Dave Love <fx@gnu.org>
18636
18637 * character.c (Funibyte_char_to_multibyte): Doc fix.
18638
18639 * xfns.c [HAVE_STDLIB_H]: Fix last change.
18640
18641 2008-02-01 Kenichi Handa <handa@m17n.org>
18642
18643 * fontset.c (fontset_add): Make the type `int'.
18644 (fontset_id_valid_p): Define it if FONTSET_DEBUG is defined.
18645
18646 * character.c (unibyte_char_to_multibyte)
18647 (multibyte_char_to_unibyte, Funibyte_char_to_multibyte): Refer to
18648 charset_unibyte, not charset_primary.
18649
18650 * charset.h (charset_unibyte): Extern it instead of charset_primary.
18651
18652 * charset.c (charset_unibyte): Rename from charset_primary.
18653 (Funibyte_charset): Rename from Fprimary_charset.
18654 (Fset_unibyte_charset): Rename from Fset_primary_charset.
18655 (syms_of_charset): Adjust for the above changes.
18656
18657 * w32term.c (x_produce_glyphs): Use ASCII_CHAR_P, not
18658 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
18659 it->multibyte_p is zero.
18660
18661 * lisp.h (nonascii_insert_offset, Vnonascii_translation_table):
18662 Delete extern.
18663
18664 2008-02-01 Kenichi Handa <handa@m17n.org>
18665
18666 * coding.c (Fdefine_coding_system_internal): Fix category setting
18667 for a coding system of type iso-2022.
18668
18669 2008-02-01 Kenichi Handa <handa@m17n.org>
18670
18671 * fontset.h (FS_LOAD_FONT): Call fs_load_font with the arg CHARSET -1.
18672
18673 2008-02-01 Kenichi Handa <handa@m17n.org>
18674
18675 * syntax.c (Vnext_word_boundary_function_table): New variable.
18676 (next-word-boundary-function-table): Declare it as a Lisp variable
18677 in syms_of_syntax.
18678 (scan_words): Call functions in Vnext_word_boundary_function_table
18679 if any.
18680
18681 * xterm.c (x_load_font): Initialize fontp->fontset to -1.
18682
18683 * fontset.c (fs_load_font): If fontp->charset is not negative,
18684 return fontp without setting its members.
18685
18686 2008-02-01 Dave Love <fx@gnu.org>
18687
18688 * xfns.c [HAVE_STDLIB_H]: Change logic (instead of fixing typo).
18689
18690 * m/sparc.h (HAVE_ALLOCA): Delete.
18691
18692 * s/irix6-5.h: Don't include strings.h.
18693 (bcopy, bzero, bcmp): Don't undef.
18694
18695 * s/irix6-0.h (bcopy, bzero, bcmp): Don't undef.
18696
18697 * s/usg5-4.h (NO_SIOCTL_H): Don't define.
18698 (TIOCSIGSEND): Don't test IRIX6.
18699 (bcopy, bzero, bcmp): Define conditionally.
18700
18701 2008-02-01 Kenichi Handa <handa@m17n.org>
18702
18703 * buffer.c (Qas, Qmake, Qto): New variables.
18704 (Fset_buffer_multibyte): New optional arg METHOD. Change caller.
18705 (syms_of_buffer): Intern and staticpro Qas, Qmake, and Qto.
18706
18707 * callproc.c (Fcall_process): Don't call insert_1_both directly if
18708 we are inserting a process output into a multibyte buffer.
18709
18710 * character.h (CHAR_TO_BYTE8): If C is not eight-bit char, call
18711 multibyte_char_to_unibyte.
18712
18713 * character.c (Funibyte_char_to_multibyte): If C can't be decoded
18714 by the primary charset, make it eight-bit char.
18715 (Fmultibyte_char_to_unibyte): Call CHAR_TO_BYTE8.
18716
18717 * charset.c (charset_eight_bit, Qeight_bit_control): New variables.
18718 (charset_8_bit__control, charset_8_bit_graphic)
18719 (Qeight_bit_control, Qeight_bit_graphic): Delete these variables.
18720 (define_charset_internal): New function.
18721 (syms_of_charset): Call define_charset_internal for pre-defined
18722 charsets.
18723
18724 * charset.h (charset_8_bit): Extern it.
18725
18726 * coding.c (make_conversion_work_buffer): Adjust for the change
18727 of Fset_buffer_multibyte.
18728 (encode_coding_raw_text): Increment p0 in the loop.
18729
18730 * lisp.h (Fset_buffer_multibyte): Adjust prototype.
18731
18732 * xdisp.c (setup_echo_area_for_printing, set_message_1): Adjust
18733 for the change of Fset_buffer_multibyte.
18734
18735 * fns.c (Fstring_to_multibyte): New function.
18736 (syms_of_fns): Declare Fstring_to_multibyte as Lisp subroutine.
18737
18738 2008-02-01 Dave Love <fx@gnu.org>
18739
18740 * xfns.c (x_put_x_image): Declare args.
18741
18742 * xfaces.c (font_name_registry, choose_face_font): Delete unused vars.
18743 (try_font_list): Declare an arg.
18744
18745 * xdisp.c (message2_nolog, set_message): Declare an arg.
18746
18747 * terminfo.c (tparam): Declare an arg. Use P_ to declare tparm.
18748
18749 * syntax.c (scan_sexps_forward): Declare an arg.
18750
18751 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
18752 Declare an arg.
18753
18754 * lisp.h (Fnew_fontset): Declare.
18755
18756 * keymap.c (push_key_description): Call CHARACTERP correctly.
18757
18758 * fontset.c (fontset_add): Declare args. Call make_number correctly.
18759 (face_for_char): Delete unused vars.
18760 (Fset_fontset_font): Doc fix. Delete unused vars.
18761
18762 * doc.c (Fsubstitute_command_keys): Delete unused vars.
18763
18764 * composite.c (update_compositions): Declare arg.
18765
18766 * cm.c (calccost, cmgoto): Declare args.
18767
18768 * charset.c: Remove `emacs' conditional. Doc fixes.
18769 (map_char_table_for_charset): Declare.
18770
18771 * character.c (syms_of_character) <translation-table-vector>: Doc fix.
18772
18773 * ccl.c: Remove `emacs' conditional.
18774
18775 2008-02-01 Kenichi Handa <handa@m17n.org>
18776
18777 The following changes are to allow specifying multiple font
18778 patterns for a character range (specified by script or charset).
18779
18780 * Makefile.in (abbrev.o): Depend on syntax.h.
18781 (xfaces.o): Depend on charset.h.
18782
18783 * alloc.c (Fmake_string): Use ASCII_CHAR_P, not
18784 SINGLE_BYTE_CHAR_P.
18785
18786 * ccl.c (Fccl_execute_on_string): Add `const' to local variables.
18787
18788 * character.h (Vchar_script_table): Extern it.
18789
18790 * character.c (Vscript_alist): Delete.
18791 (Vchar_script_table, Qchar_script_table): New variable.
18792 (syms_of_character): Declare Vchar_script_table as a lisp variable
18793 and initialize it.
18794
18795 * chartab.c (Fmake_char_table): Doc fix. If PURPOSE doesn't
18796 have property char-table-extra-slots, make no extra slot.
18797
18798 * dispextern.h (struct face): Delete member `charset'.
18799 (FACE_SUITABLE_FOR_CHAR_P, FACE_FOR): Use ASCII_CHAR_P, not
18800 SINGLE_BYTE_CHAR_P.
18801 (choose_face_font, lookup_non_ascii_face, font_name_registry):
18802 Add prototypes.
18803 (lookup_face, lookup_named_face, lookup_derived_face): Fix prototype.
18804 (generate_ascii_font_name): Rename from generate_ascii_font.
18805
18806 * fontset.h (get_font_repertory_func): New prototype.
18807 (make_fontset_for_ascii_face, fs_load_font): Fix prototypes.
18808 (FS_LOAD_FONT): Call fs_load_font with the 3rd arg charset_ascii.
18809
18810 * fontset.c (Qprepend, Qappend): New variables.
18811 (FONTSET_CHARSET_ALIST, FONTSET_FACE_ALIST): Delete.
18812 (FONTSET_NOFONT_FACE, FONTSET_REPERTORY): New macros.
18813 (FONTSET_REF): Optimize if FONTSET is Vdefault_fontset.
18814 (FONTSET_REF_AND_RANGE, FONTSET_ADD): New macros.
18815 (fontset_ref_and_range, fontset_add, reorder_font_vector)
18816 (load_font_get_repertory): New functions.
18817 (fontset_set): Delete.
18818 (fontset_face): New arg FACE. Return face ID, not face.
18819 Complete re-write to handle new fontset structure. Change caller.
18820 (free_face_fontset): Use ASET istead of AREF (X) = Y.
18821 (face_for_char): Don't call lookup_face.
18822 (make_fontset_for_ascii_face): New arg FACE.
18823 (fs_load_font): New arg CHARSET_ID. Don't check
18824 Vfont_encoding_alist here.
18825 (find_font_encoding): New function.
18826 (list_fontsets): Use STRINGP, not ! NILP.
18827 (accumulate_script_ranges): New function.
18828 (Fset_fontset_font, Fnew_fontset, Ffontset_info): Completely
18829 re-written to handle new fontset structure.
18830 (Ffontset_font): Return a copy of element.
18831 (syms_of_fontset): Define symbols Qprepend and Qappend. Fix
18832 docstring of font-encoding-alist.
18833
18834 * lisp.h (CHAR_TABLE_REF): Remove unnecessary check (IDX >= 0).
18835 (Fset_fotset_font): Fix arguments to 5.
18836
18837 * msdos.c (XMenuActivate): Adjust for the change of lookup_derived_face.
18838
18839 * xdisp.c (message_dolog, set_message_1, extend_face_to_end_of_line):
18840 Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
18841 (highlight_trailing_whitespace): Adjust for the change of
18842 lookup_named_face.
18843
18844 * xfaces.c: Include charset.h.
18845 (load_face_font): Delete argument C. Change caller.
18846 (generate_ascii_font_name): Rename from generate_ascii_font.
18847 (font_name_registry): New function.
18848 (cache_face): Store ascii faces before non-ascii faces in buckets.
18849 (lookup_face): Delete arguments C and BASE_FACE. Change caller.
18850 Lookup only ascii faces.
18851 (lookup_non_ascii_face): New function.
18852 (lookup_named_face): Delete argument C. Change caller.
18853 (lookup_derived_face): Delete argument C. Change caller.
18854 (try_font_list): New arg PATTERN. Change caller. If PATTERN is
18855 a string, just call font_list with it.
18856 (choose_face_font): Delete arguments FACE and C. New arg
18857 FONT_SPEC. Change caller.
18858 (realize_face, realize_x_face): Delete arguments C and BASE_FACE.
18859 Change caller.
18860 (realize_non_ascii_face): New function.
18861 (realize_x_face): Call load_face_font here.
18862 (realize_tty_face): Delete argument C. Change caller.
18863 (compute_char_face): If CH is not ascii, call FACE_FOR_CHAR to
18864 get a face ID.
18865 (dump_realized_face): Don't print charset of FACE.
18866
18867 * xfns.c (x_set_font): Always call x_new_fontset and
18868 store_frame_parameter.
18869 (Fx_create_frame): Call x_new_fontset, not x_new_font.
18870 (syms_of_xfns): Set get_font_repertory_func to x_get_font_repertory.
18871
18872 * xterm.h (x_get_font_repertory): Extern it.
18873
18874 * xterm.c (x_produce_glyphs): Use ASCII_CHAR_P, not
18875 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
18876 it->multibyte_p is zero.
18877 (XTread_socket): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
18878 (x_new_fontset): If FONTSETNAME doesn't match any existing
18879 fontsets, create a new one.
18880 (x_get_font_repertory): New function.
18881
18882 2008-02-01 Kenichi Handa <handa@m17n.org>
18883
18884 * coding.c (Ffind_coding_systems_region_internal): Detect an
18885 ASCII only string correctly.
18886
18887 * lread.c (Fload): Don't load with Qload_force_doc_strings t if
18888 version is 0.
18889
18890 2008-02-01 Kenichi Handa <handa@m17n.org>
18891
18892 * lread.c: Include "coding.h".
18893 (Qget_emacs_mule_file_char, Qload_force_doc_strings)
18894 (load_each_byte, unread_char): New variables.
18895 (readchar_backlog): Delete.
18896 (readchar): Return a character unless load_each_byte is nonzero.
18897 Handle the case that readcharfun is Qget_emacs_mule_file_char or a
18898 cons. If unread_char is not -1, simply return it.
18899 (unreadchar): Handle the case that readcharfun is
18900 Qget_emacs_mule_file_char or a cons. Set unread_char if necessary.
18901 (read_multibyte): Delete.
18902 (readbyte_for_lambda, readbyte_from_file, readbyte_from_string)
18903 (read_emacs_mule_char): New functions.
18904 (Fload): Even if the file doesn't have the extension ".elc", if
18905 safe_to_load_p returns a positive version number, assume that the
18906 file contains bytecompiled code. If the version is less than 22,
18907 load the file while decoding multibyte sequences by emacs-mule.
18908 (readevalloop): Don't use readchar_backlog.
18909 (Fread): Likewise. Pay attention to the case that STREAM is a cons.
18910 (Fread_from_string): Pay attention to the case that STREAM is a cons.
18911 (read_escape): Delete the arg BYTEREP.
18912 (read1): Set load_each_byte to 1 temporarily while handling
18913 #@NUMBER. Don't call read_multibyte.
18914 (read_vector): Call Fread with a cons. If readcharfun is
18915 Qget_emacs_mule_file_char, decode the read string by emacs-mule.
18916 (read_list): If doc_reference is 2, make the cdr part string as unibyte.
18917 (syms_of_lread): Intern and staticpro Qget_emacs_mule_file_char
18918 and Qload_force_doc_strings.
18919
18920 2008-02-01 Kenichi Handa <handa@m17n.org>
18921
18922 * xdisp.c (face_before_or_after_it_pos): Call
18923 FETCH_MULTIBYTE_CHAR with byte postion, not char position.
18924
18925 2008-02-01 Kenichi Handa <handa@m17n.org>
18926
18927 * character.h (TRAILING_CODE_P): New macro.
18928 (MAYBE_UNIFY_CHAR): Adjust for the change of Funify_charset.
18929 (string_char_with_unification): Fix prototype.
18930 (Vscript_alist): Extern it.
18931
18932 * character.c (Vscript_alist): New variable.
18933 (string_char_with_unification, str_as_unibyte)
18934 (string_escape_byte8): Add `const' to local variables.
18935 (syms_of_character): Declare script-alist as a Lisp variable.
18936
18937 * charset.h (Vcharset_ordered_list): Extern it.
18938 (charset_ordered_list_tick): Extern it.
18939 (EMACS_MULE_LEADING_CODE_PRIVATE_11)
18940 (EMACS_MULE_LEADING_CODE_PRIVATE_12)
18941 (EMACS_MULE_LEADING_CODE_PRIVATE_21)
18942 (EMACS_MULE_LEADING_CODE_PRIVATE_22): New macros.
18943 (Funify_charset): Adjust for the change of Funify_charset.
18944
18945 * charset.c (charset_ordered_list_tick): New variable.
18946 (Fdefine_charset_internal): Increment charset_ordered_list_tick.
18947 (Funify_charset): New optional arg DEUNIFY. If it is non-nil,
18948 deunify intead of unify a charset.
18949 (string_xstring_p): Add `const' to local variables.
18950 (find_charsets_in_text): Add `const' to arguments and local variables.
18951 (encode_char): Adjust for the change of Funify_charset. Fix
18952 detecting of invalid code.
18953 (Fset_charset_priority): Increment charset_ordered_list_tick.
18954 (Fmap_charset_chars): Fix handling of default value for FROM_CODE
18955 and TO_CODE.
18956
18957 * coding.c (LEADING_CODE_PRIVATE_11, LEADING_CODE_PRIVATE_12)
18958 (LEADING_CODE_PRIVATE_21, LEADING_CODE_PRIVATE_22): Delete macros.
18959 Changed callers to use EMACS_MULE_LEADING_CODE_PRIVATE_11, etc.
18960 (decode_coding_ccl, consume_chars)
18961 (Ffind_coding_systems_region_internal)
18962 (Fcheck_coding_systems_region): Add `const' to local variables.
18963
18964 * print.c (print_object): Use octal form for printing the
18965 contents of a bool vector.
18966
18967 2008-02-01 Dave Love <fx@gnu.org>
18968
18969 * lread.c (Fload) <!load_dangerous_libraries>: Don't leak fd.
18970 <version == 20>: Refuse to load.
18971
18972 2008-02-01 Dave Love <fx@gnu.org>
18973
18974 * fns.c: Move coding.h.
18975 (Qcodeset, Qdays, Qmonths): New.
18976 (concat): Use CHARACTERP instead of INTEGERP.
18977 (Flocale_codeset): Delete.
18978 (Flanginfo): New function.
18979 (syms_of_fns): Change accordingly.
18980
18981 * coding.c (adjust_coding_eol_type): Fix eol_type/eol_seen mixup.
18982
18983 2008-02-01 Dave Love <fx@gnu.org>
18984
18985 * casetab.c (init_casetab_once, init_casetab_once): Fix
18986 CHAR_TABLE_SET call.
18987
18988 * category.c (Fmodify_category_entry): Fix CATEGORY_MEMBER call.
18989
18990 * character.c (syms_of_character): Fix CHAR_TABLE_SET call.
18991
18992 * charset.c (Fmap_charset_chars): Check args. Convert Lisp types.
18993 (load_charset_map, Fdeclare_equiv_charset, Fencode_char)
18994 (Fset_charset_priority, syms_of_charset): Convert Lisp types.
18995
18996 * charset.h (CHECK_CHARSET_GET_ID): Use XINT on AREF result.
18997
18998 * coding.c (ENCODE_DESIGNATION, decode_eol)
18999 (make_conversion_work_buffer, code_conversion_restore)
19000 (Fdefine_coding_system_internal): Convert Lisp types.
19001 (code_conversion_restore): Use EQ, not ==.
19002 (Fencode_coding_string): Fix code_convert_string call.
19003
19004 * coding.h (code_convert_region): Fix prototype.
19005
19006 * dispextern.h (redraw_frame, redraw_garbaged_frames): Remove.
19007
19008 * fontset.c (fontset_ref, fontset_set, fs_load_font)
19009 (Ffontset_info): Convert Lisp types.
19010
19011 * syntax.h (SYNTAX_ENTRY_INT): Don't use make_number.
19012
19013 * xterm.c (note_mouse_movement): Fix call of window_from_coordinates.
19014
19015 * xdisp.c (display_mode_element): Fix call of Fset_text_properties.
19016
19017 * chartab.c: Include "...h", not <...h> in some cases.
19018
19019 * callproc.c (Fcall_process): Remove unused variables.
19020
19021 2008-02-01 Dave Love <fx@gnu.org>
19022
19023 * coding.c (Fset_coding_system_priority): Allow null arg list.
19024
19025 2008-02-01 Dave Love <fx@gnu.org>
19026
19027 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
19028 (Fself_insert_and_exit): Use CHARACTERP.
19029
19030 * callproc.c (Fcall_process): Remove unused vars.
19031
19032 * xterm.c (XTread_socket): Add extra dead keysyms.
19033
19034 * xdisp.c (decode_mode_spec_coding): Use CHARACTERP.
19035
19036 * dispextern.h: Remove prototypes for redraw_frame,
19037 redraw_garbaged_frames.
19038
19039 * cmds.c (Fself_insert_command): Use CHARACTERP.
19040
19041 * chartab.c (make_sub_char_table): Remove unused var.
19042 (Fset_char_table_default, Fmap_char_table): Doc fix.
19043
19044 * keymap.c (access_keymap): Remove generic char code.
19045 (push_key_description): Use CHARACTERP.
19046
19047 2008-02-01 Dave Love <fx@gnu.org>
19048
19049 * charset.c: Doc fixes.
19050 (Funify_charset): Extra checking.
19051
19052 2008-02-01 Dave Love <fx@gnu.org>
19053
19054 * lread.c: Remove some unused variables.
19055 (safe_to_load_p): If safe, return the magic number version byte.
19056 (Fload): Maybe use load-with-code-conversion.
19057
19058 2008-02-01 Kenichi Handa <handa@m17n.org>
19059
19060 * category.c (Fmodify_category_entry): Don't modify the contents
19061 of category_set for characters out of the range. Avoid
19062 unnecessary modification.
19063
19064 * character.h (MAYBE_UNIFY_CHAR): Adjust for the change of
19065 Vchar_unify_table. The default value of the table is now nil.
19066
19067 * character.c (syms_of_character): Setup Vchar_width_table for
19068 eight-bit-control and raw-byte chars.
19069
19070 * charset.h (enum define_charset_arg_index): Delete
19071 charset_arg_parents and add charset_arg_subset and
19072 charset_arg_superset.
19073 (enum charset_attr_index): Delete charset_parents and add
19074 charset_subset and charset_superset.
19075 (enum charset_method): Delete CHARSET_METHOD_INHERIT and add
19076 CHARSET_METHOD_SUBSET and CHARSET_METHOD_SUPERSET.
19077 (CHARSET_ATTR_PARENTS, CHARSET_PARENTS): Delete.
19078 (CHARSET_ATTR_SUBSET, CHARSET_ATTR_SUPERSET, CHARSET_SUBSET)
19079 (CHARSET_SUPERSET): New macros.
19080 (charset_work): Extern it.
19081 (ENCODE_CHAR): Use charset_work.
19082 (CHAR_CHARSET_P): Adjust for the change of encoder format.
19083 (map_charset_chars): Extern it.
19084
19085 * charset.c (load_charset_map): Set the default value of encoder
19086 and deunifier char-tables to nil.
19087 (map_charset_chars): Change argument. Change callers. Use
19088 map_char_table_for_charset instead of map_char_table.
19089 (Fmap_charset_chars): New optional args from_code and to_code.
19090 (Fdefine_charset_internal): Adjust for the change of
19091 `define-charset' (:parents -> :subset or :superset).
19092 (charset_work): New variable.
19093 (encode_char, syms_of_charset): Adjust for the change of
19094 Fdefine_charset_internal.
19095 (Ffind_charset_string): Setup the vector `charsets' correctly.
19096
19097 * chartab.c (sub_char_table_ref_and_range): New arg default. Fix
19098 the previous change.
19099 (char_table_ref_and_range): Adjust for the above change.
19100 (map_sub_char_table_for_charset): New function.
19101 (map_char_table_for_charset): New function.
19102
19103 * keymap.c (describe_vector): Handle a char-table directly here.
19104 (describe_char_table): Delete.
19105
19106 * lisp.h (map_charset_chars): Delete.
19107
19108 2008-02-01 Dave Love <fx@gnu.org>
19109
19110 * fns.c (count_combining): Comment out (unused).
19111 (Flocale_codeset): New.
19112 (syms_of_fns): Defsubr it.
19113
19114 * config.in (HAVE_PTY_H, HAVE_SIZE_T, HAVE_LANGINFO_CODESET): New.
19115 (size_t): Remove.
19116
19117 2008-02-01 Dave Love <fx@gnu.org>
19118
19119 * Makefile.in (chartab.o): Depend on charset.h.
19120
19121 2008-02-01 Kenichi Handa <handa@m17n.org>
19122
19123 * character.c (syms_of_character): Set the default value of
19124 Vprintable_chars to Qnil.
19125
19126 2008-02-01 Dave Love <fx@gnu.org>
19127
19128 * Makefile.in (lisp, shortlisp): Change indian.elc to indian.el.
19129
19130 2008-02-01 Kenichi Handa <handa@m17n.org>
19131
19132 * charset.c (load_charset_map): Handle the case that from < to
19133 correctly.
19134
19135 * coding.c (encode_coding_emacs_mule, encode_coding_iso_2022)
19136 (encode_coding_sjis, encode_coding_big5, encode_coding_charset):
19137 Pay attention to raw-8-bit chars.
19138
19139 2008-02-01 Kenichi Handa <handa@m17n.org>
19140
19141 * Makefile.in (lisp, shortlisp): Change chinese.elc to chinese.el.
19142 It is not bytecompiled now.
19143
19144 * charset.c (charset_jisx0201_roman, charset_jisx0208_1978)
19145 (charset_jisx0208): New variables.
19146 (Fdefine_charset_internal): Setup them if appropriate.
19147 (init_charset_once): Initialize them to -1.
19148
19149 * charset.h (charset_jisx0201_roman, charset_jisx0208_1978)
19150 (charset_jisx0208): Extern them.
19151
19152 * coding.c (CODING_ISO_FLAG_USE_ROMAN): New macro.
19153 (CODING_ISO_FLAG_USE_OLDJIS): New macro.
19154 (CODING_ISO_FLAG_FULL_SUPPORT): Change macro definition.
19155 (setup_iso_safe_charsets): Fix arguments to Fassq.
19156 (DECODE_DESIGNATION, ENCODE_ISO_CHARACTER_DIMENSION1)
19157 (ENCODE_ISO_CHARACTER_DIMENSION2): Pay attention to
19158 CODING_ISO_FLAG_USE_ROMAN and CODING_ISO_FLAG_USE_OLDJIS.
19159 (encode_coding_iso_2022): Change the 1st arg to
19160 ENCODE_ISO_CHARACTER to a variable.
19161
19162 2008-02-01 Kenichi Handa <handa@m17n.org>
19163
19164 * charset.h (enum define_charset_arg_index): New enums
19165 charset_arg_min_code and charset_arg_max_code.
19166 (struct charset): New member char_index_offset.
19167
19168 * charset.c (CODE_POINT_TO_INDEX, INDEX_TO_CODE_POINT):
19169 Take charset->char_index_offset into account.
19170 (Fdefine_charset_internal): Handle args[charset_arg_min_code] and
19171 args[charset_arg_max_code]. Setup charset.char_index_offset.
19172 (syms_of_charset): Fix args to Fdefine_charset_internal.
19173
19174 2008-02-01 Dave Love <fx@gnu.org>
19175
19176 * coding.c (decode_coding_utf_8): Reject overlong sequences.
19177
19178 2008-02-01 Dave Love <fx@gnu.org>
19179
19180 * coding.c: Doc fixes.
19181 (Fcoding_system_aliases): Fix return value.
19182 (Qmac): Remove (duplicated) definition.
19183
19184 2008-02-01 Dave Love <fx@gnu.org>
19185
19186 * charset.c (Fcharset_priority_list, Fset_charset_priority):
19187 New functions.
19188
19189 * character.c (Fstring): Doc fix.
19190
19191 * charset.c (Fdefine_charset_alias): Update Vcharset_list.
19192
19193 * fontset.c (Ffontset_info): Doc fix. Return charset names, not ids.
19194 (font-encoding-alist): Doc fix.
19195
19196 2008-02-01 Dave Love <fx@gnu.org>
19197
19198 * term.c (costs_set): Declare static, non-initialized for pcc.
19199 (encode_terminal_code): Remove unused var.
19200
19201 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
19202 for K&R.
19203
19204 * xterm.c (xlwmenu_window_p): Fix prototype for K&R.
19205
19206 * coding.c (setup_iso_safe_charsets): Fix arg decl for K&R.
19207 (suffixes): Move out of make_subsidiaries for K&R.
19208
19209 * charset.c (map_charset_chars): Fix c_function declaration for K&R.
19210
19211 * lisp.h (DEFUN) [!PROTOTYPES]: Remove spurious `args'.
19212
19213 2008-02-01 Dave Love <fx@gnu.org>
19214
19215 * data.c (Fchar_or_string_p): Doc fix. Use CHARACTERP.
19216
19217 * category.c (Fmodify_category_entry): Doc fix. Remove unused vars.
19218
19219 2008-02-01 Yong Lu <lyongu@asia-infonet.com>
19220
19221 * charset.c (Fdefine_charset_internal): Fix argument to bzero.
19222
19223 * coding.c (decode_coding_charset): Workaround for the bug of GCC 2.96.
19224
19225 2008-02-01 Kenichi Handa <handa@m17n.org>
19226
19227 * Makefile.in (lisp, shortlisp): Change cyrillic.elc to cyrillic.el,
19228 vietnamese.elc to vietnamese.el. They are not bytecompiled now.
19229
19230 2008-02-01 Kenichi Handa <handa@m17n.org>
19231
19232 * coding.c (decode_coding_charset): Adjust for the change of
19233 Fdefine_coding_system_internal.
19234 (Fdefine_coding_system_internal): For a coding system of
19235 `charset' type, store a list of charset IDs in
19236 `charset_attr_charset_valids' element of coding attributes.
19237
19238 2008-02-01 Kenichi Handa <handa@m17n.org>
19239
19240 * coding.c (ONE_MORE_BYTE_NO_CHECK): Increment consumed_chars.
19241 (emacs_mule_char): New arg src. Delete arg `composition'. Change
19242 caller. Handle 2-byte and 3-byte charsets correctly.
19243 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): Rename from
19244 DECODE_EMACS_MULE_COMPOSITION_RULE. Change caller.
19245 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New macro.
19246 (DECODE_EMACS_MULE_21_COMPOSITION): Call
19247 DECODE_EMACS_MULE_COMPOSITION_RULE_21. Produce correct annotation
19248 sequence.
19249 (decode_coding_emacs_mule): Handle composition correctly. Rewind
19250 `src' and `consumed_chars' correctly before calling emacs_mule_char.
19251 (DECODE_COMPOSITION_START): Correctly handle the case of altchar
19252 and alt&rule composition.
19253 (decode_coding_iso_2022): Handle composition correctly.
19254 (init_coding_once): Setup emacs_mule_bytes for private charsets.
19255
19256 * charset.c (Fdefine_charset_internal): Fix bug for the case of
19257 re-defining a charset. If the charset has :emacs-mule-id, setup
19258 emacs_mule_bytes.
19259 (Fmake_char): If CODE1 is nil, use the minimum code of the charset.
19260
19261 2008-02-01 Kenichi Handa <handa@m17n.org>
19262
19263 * coding.c (encode_coding_iso_2022, encode_coding_sjis)
19264 (encode_coding_big5, encode_coding_charset): If coding requires safe
19265 encoding, produce a character specified by
19266 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
19267
19268 2008-02-01 Dave Love <fx@gnu.org>
19269
19270 * xterm.c (XSetIMValues): Declare.
19271
19272 * process.c: Conditionally include sys/wait.h, pty.h.
19273
19274 * print.c (print_object): Fix print format for 64-bit systems.
19275
19276 * keyboard.c (modify_event_symbol): Fix print format for 64-bit systems.
19277
19278 * buffer.c (emacs_strerror): Declare.
19279
19280 * fontset.c (Fclear_face_cache): Declare.
19281 (accumulate_font_info): Comment-out (unused).
19282 (face_for_char, Fset_fontset_font, Ffontset_info): Remove unused
19283 variables.
19284
19285 * character.h (string_escape_byte8): Declare.
19286
19287 * charset.c (load_charset_map, load_charset_map_from_file): Remove
19288 unused vars.
19289 (Fdefine_charset_internal, Fsplit_char, syms_of_charset)
19290 (Fmap_charset_chars): Doc fix.
19291
19292 * coding.c (Vchar_coding_system_table, Qchar_coding_system): Remove.
19293 (Fset_coding_system_priority, Fset_coding_system_priority)
19294 (Fdefine_coding_system_internal): Doc fix.
19295
19296 2008-02-01 Dave Love <fx@gnu.org>
19297
19298 * s/osf5-0.h (C_SWITCH_SYSTEM) [!__GNUC__]: Remove -nointrinsics.
19299
19300 2008-02-01 Kenichi Handa <handa@m17n.org>
19301
19302 * character.c (string_escape_byte8): Make multibyte string with
19303 correct size.
19304
19305 * charset.c (Fmake_char): Delete unnecessary code.
19306
19307 2008-02-01 Kenichi Handa <handa@m17n.org>
19308
19309 * xfns.c (x_encode_text): Allocate coding.destination here, and
19310 call encode_coding_object with dst_object Qnil.
19311
19312 * buffer.c (Fset_buffer_multibyte): Convert 8-bit bytes to
19313 multibyte form correctly.
19314
19315 * fontset.c (fs_load_font): Check fontp->full_name (not fontname)
19316 against Vfont_encoding_alist.
19317
19318 * coding.c (Fdecode_sjis_char): Fix typo (0x7F->0xFF). Fix the
19319 handling of charset list.
19320 (encode_coding_iso_2022): Setup coding->safe_charsets in advance.
19321 (decode_coding_object): Move point to coding->dst_pos before
19322 calling post-read-conversion function.
19323 (encode_coding_object): Give correct arguments to
19324 pre-write-conversion. Ignore the return value of
19325 pre-write-conversion function. Pay attention to the case that
19326 pre-write-conversion changes the current buffer. If dst_object is
19327 Qt, even if coding->src_bytes is zero, allocate at least one byte
19328 to coding->destination.
19329
19330 * coding.h (JIS_TO_SJIS): Fix typo (j1->s1, j2->s2).
19331
19332 * charset.c (Fmake_char): Make it more backward compatible.
19333 (Fmap_charset_chars): Fix docstring.
19334
19335 2008-02-01 Dave Love <fx@gnu.org>
19336
19337 * coding.c: Doc fixes.
19338 (Fdefine_coding_system_alias): Use names, not symbols, in
19339 coding-system-alist.
19340
19341 2008-02-01 Kenichi Handa <handa@m17n.org>
19342
19343 * fontset.c (free_realized_fontsets): Call Fclear_face_cache instead
19344 of calling free_realized_face.
19345
19346 2008-02-01 Yong Lu <lyongu@asia-infonet.com>
19347
19348 * charset.c (read_hex): Don't treat SPC as a comment starter.
19349 (decode_char): If CODE_POINT_TO_INDEX returns -1, always return -1.
19350 (Fdecode_char): Fix typo.
19351
19352 2008-02-01 Kenichi Handa <handa@m17n.org>
19353
19354 * charset.h (struct charset): New member `code_space_mask'.
19355
19356 * coding.c (coding_set_source): Delete the local variable beg_byte.
19357 (encode_coding_charset, Fdefine_coding_system_internal):
19358 Delete the local variable charset.
19359 (Fdefine_coding_system_internal): Setup
19360 attrs[coding_attr_charset_valids] correctly.
19361
19362 * charset.c (CODE_POINT_TO_INDEX): Utilize `code_space_mask'
19363 member to check if CODE is valid or not.
19364 (Fdefine_charset_internal): Initialize `code_space_mask' member.
19365 (encode_char): Before calling CODE_POINT_TO_INDEX, check if CODE
19366 is within the range of charset->min_code and carset->max_code.
19367
19368 2008-02-01 Dave Love <fx@gnu.org>
19369
19370 * syntax.h (syntax_temp) [!__GNUC__]: Declare.
19371
19372 * dispextern.h (generate_ascii_font): Fix return type.
19373
19374 * xfaces.c (generate_ascii_font): Fix arg declaration.
19375
19376 * coding.c (coding_inherit_eol_type)
19377 (Fset_terminal_coding_system_internal)
19378 (Fset_safe_terminal_coding_system_internal): Fix arg declarations.
19379
19380 2008-02-01 Kenichi Handa <handa@m17n.org>
19381
19382 * coding.c (decode_coding_charset, encode_coding_charset): Handle
19383 multiple charsets correctly.
19384
19385 2008-02-01 Kenichi Handa <handa@m17n.org>
19386
19387 * search.c (boyer_moore): Fix handling of multibyte character
19388 translation.
19389
19390 * xdisp.c (display_mode_element): When the variable `elt' is
19391 changed, update `this' and `lisp_string'.
19392
19393 2008-02-01 Kenichi Handa <handa@m17n.org>
19394
19395 * buffer.c (Fset_buffer_multibyte): Fix 8-bit char handling.
19396
19397 * callproc.c (Fcall_process): Be sure to give the current buffer
19398 to decode_coding_c_string. Update PT and PT_BYTE after the insertion.
19399
19400 * charset.c (struct charset_map_entries): New struct.
19401 (load_charset_map): Rename from parse_charset_map. New args
19402 entries and n_entries. Change caller.
19403 (load_charset_map_from_file): Rename from load_charset_map.
19404 Change caller. New arg control_flag. Call load_charset_map at
19405 the tail.
19406 (load_charset_map_from_vector): New function.
19407 (Fdefine_charset_internal): Setup charset.compact_codes_p.
19408 (encode_char): If the charset is compact, change a character index
19409 to a code point.
19410
19411 * coding.c (coding_alloc_by_making_gap): Check the case that the
19412 source and destination are the same correctly.
19413 (decode_coding_raw_text): Set coding->consumed_char and
19414 coding->consumed to 0.
19415 (produce_chars): If coding->chars_at_source is nonzero, update
19416 coding->consumed_char and coding->consumed before calling
19417 alloc_destination.
19418 (Fdefine_coding_system_alias): Register ALIAS in
19419 Vcoding_system_alist.
19420 (syms_of_coding): Define `no-conversion' coding system at the tail.
19421
19422 * fileio.c (Finsert_file_contents): Set coding_system instead of
19423 val. If the current buffer is multibyte, always call
19424 decode_coding_gap.
19425
19426 * xfaces.c (try_font_list): Give higher priority to fontset's
19427 family than face's family.
19428
19429 2008-02-01 Kenichi Handa <handa@m17n.org>
19430
19431 * callproc.c (Fcall_process): Be sure to give the current buffer
19432 to decode_coding_c_string.
19433
19434 * xfaces.c (try_font_list): Give a family specified in a fontset
19435 higher priority than a family specified in a face.
19436
19437 2008-02-01 Kenichi Handa <handa@m17n.org>
19438
19439 * fileio.c (Finsert_file_contents): Fix calculation of `inserted'.
19440 Fix arguments to insert_from_buffer.
19441
19442 * xdisp.c (display_mode_element): Fix calculation of `bytepos'.
19443
19444 2008-02-01 Kenichi Handa <handa@m17n.org>
19445
19446 * coding.c (produce_chars): Set the variable `multibytep' correctly.
19447 (decode_coding_gap): Set coding->dst_multibyte correctly.
19448
19449 2008-02-01 Kenichi Handa <handa@m17n.org>
19450
19451 * coding.c (encode_coding_utf_8): Initialize produced_chars to 0.
19452 (decode_coding_utf_16): Fix converting high and low bytes to code-point.
19453 (encode_coding_utf_16): Substitute coding->default_char for
19454 non-Unicode characters.
19455 (decode_coding): Don't call record_insert here.
19456 (setup_coding_system): Initialize `surrogate' of
19457 coding->spec.utf_16 to 0.
19458 (EMIT_ONE_BYTE): Fix for multibyte case.
19459
19460 * insdel.c (insert_from_gap): Call record_insert.
19461
19462 2008-02-01 Kenichi Handa <handa@m17n.org>
19463
19464 * casefiddle.c (casify_region): Fix multibyte case.
19465
19466 * character.c (c_string_width): Add return type `int'.
19467 (char_string_with_unification): Delete arg ADVANCED.
19468
19469 * character.h (CHAR_VALID_P): Don't call CHARACTERP.
19470 (CHAR_STRING): Adjust for the change of char_string_with_unification.
19471 (CHAR_STRING_ADVANCE): Make it do-while statement.
19472
19473 * chartab.c (sub_char_table_set_range): Optimize for the case
19474 DEPTH == 3. Add workaround code for a GCC optimization bug.
19475
19476 * charset.c (parse_charset_map): Remove an unused variable.
19477
19478 * coding.c: Delete unused variables.
19479
19480 * fileio.c (Finsert_file_contents): Set coding_system to Qnil
19481 earlier. If inserted is zero and the coding system doesn't
19482 require flushing, don't call decode_coding_gap.
19483
19484 * syntax.h (SET_RAW_SYNTAX_ENTRY): Don't call make_number.
19485
19486 2008-02-01 Kenichi Handa <handa@m17n.org>
19487
19488 The following changes are for using Unicode as an internal
19489 character model, and use UTF-8 format for buffer/string
19490 representation.
19491
19492 * .gdbinit (xchartable): Adjust for the change of char table structure.
19493 (xsubchartable, xcoding, xcharset, xcurbuf): New commands.
19494
19495 * Makefile.in (obj): Add character.o and chartab.o.
19496 (lisp, shortlisp): Remove utf-8.elc.
19497 (*.o): For many files, change dependency on charset.h to
19498 character.h, and add dependency on character.h.
19499 (character.o, chartab.o): New targets.
19500
19501 * abbrev.c, bytecode.c, casefiddle.c, cmds.c, dispnew.c, doc.c:
19502 * doprnt.c, dosfns.c, frame.c, marker.c, minibuf.c, msdos.c:
19503 * w16select.c, w32bdf.c, w32console.c: Include "character.h" instead
19504 of "charset.h".
19505
19506 * dired.c, filelock.c: Include "character.h".
19507
19508 * alloc.c: Include "character.h" instead of "charset.h".
19509 (Fmake_char_table, make_sub_char_table): Move to chartab.c.
19510 (syms_of_alloc): Remove defsubr for Smake_char_table.
19511
19512 * buffer.c: Include "character.h" instead of "charset.h", don't
19513 include "coding.h".
19514 (Fset_buffer_multibyte): Adjust for UTF-8.
19515
19516 * buffer.h: EXFUN Fbuffer_live_p.
19517
19518 * callproc.c: Include "character.h" instead of "charset.h".
19519 (Fcall_process): Big change for the new code-conversion APIs.
19520
19521 * casetab.c: Include "character.h" instead of "charset.h".
19522 (set_canon, set_identity, shuffle): Adjust for the new
19523 map_char_table spec.
19524 (init_casetab_once): Call CHAR_TABLE_SET instead of directly
19525 accessing the char table structure.
19526
19527 * chartab.c: New file that implements char table.
19528
19529 * category.c: Include "character.h".
19530 (copy_category_entry): New function.
19531 (copy_category_table): Call map_char_table and copy_category_entry.
19532 (Fmake_category_table): Initialize all top-level slots.
19533 (char_category_set): New function.
19534 (modify_lower_category_set): Delete.
19535 (Fmodify_category_entry): Call char_table_ref_and_range.
19536
19537 * category.h (CATEGORY_SET): Just call char_category_set.
19538
19539 * ccl.c: Include "character.h".
19540 (Qccl, Qcclp): New variables.
19541 (CCL_WRITE_CHAR): Alway treat the arg CH as a character even if
19542 it's less than 256.
19543 (CCL_WRITE_MULTIBYTE_CHAR): Delete.
19544 (CCL_WRITE_STRING, CCL_READ_CHAR): Adjust for the change of SRC
19545 and DST type.
19546 (ccl_driver): Change types of argument, adjust code accordingly.
19547 (Fccl_execute, Fccl_execute_on_string): Adjust for the change of
19548 ccl_driver.
19549 (syms_of_ccl): Intern and staticpro Qccl and Qcclp.
19550
19551 * ccl.h (struct ccl_program): Delete members eol_type and multibyte.
19552 New members src_multibyte, dst_multibyte, consumed, and produced.
19553 (struct ccl_spec): Delete members decoder and encoder. New member ccl.
19554 (CODING_SPEC_CCL_PROGRAM): New macro.
19555 (ccl_driver): Update prototype.
19556 (Qccl, Qcclp, Fccl_program_p): Extern them.
19557 (CHECK_CCL_PROGRAM): New macro.
19558
19559 * character.c, character.h, chartab.c: New files.
19560
19561 * charset.c: Mostly re-written. Move character and multibyte sequence
19562 handling codes to character.c.
19563
19564 * charset.h: Mostly re-written. Move character and multibyte sequence
19565 handling codes to character.h.
19566
19567 * coding.c, coding.h: Mostly re-written.
19568
19569 * composite.c: Include "character.h" instead of "charset.h".
19570 (CHAR_WIDTH): Move to character.h.
19571 (HASH_KEY, HASH_VALUE): Delete.
19572
19573 * composite.h (enum composition_method): Change order of enumeration
19574 symbols.
19575
19576 * data.c: Include "character.h" instead of "charset.h".
19577 (Faref): Call CHAR_TABLE_REF for a char table.
19578 (Faset): Call CHAR_TABLE_SET for a char table.
19579
19580 * dispextern.h (free_realized_face, check_face_attribytes)
19581 (generate_ascii_font): Extern them.
19582 (free_realized_multibyte_face): Delete extern.
19583
19584 * disptab.h (DISP_CHAR_VECTOR): Adjust for the change of char
19585 table structure.
19586
19587 * editfns.c: Include "character.h" instead of "charset.h".
19588 (Fchar_to_string): Always call CHAR_STRING.
19589
19590 * emacs.c (main): Call init_charset_once, init_charset,
19591 syms_of_chartab, and syms_of_character.
19592
19593 * fileio.c: Include "character.h" instead of "charset.h".
19594 (Finsert_file_contents): Big change for the new code-conversion API.
19595 (choose_write_coding_system, Fwrite_region): Likewise.
19596 (build_annotations_2): Delete.
19597 (e_write): Big change for the new code-conversion API.
19598
19599 * fns.c: Include "character.h" instead of "charset.h".
19600 (copy_sub_char_table): Move to chartab.c.
19601 (Fcopy_sequence): Call copy_char_table for a char table.
19602 (concat): Delete codes calling count_multibyte.
19603 (string_char_to_byte, string_byte_to_char): Adjust for the new
19604 multibyte form.
19605 (internal_equal): Adjust for the change of char table structure.
19606 (Fchar_table_subtype, Fchar_table_parent, Fset_char_table_parent)
19607 (Fchar_table_extra_slot, Fset_char_table_extra_slot)
19608 (Fchar_table_range, Fset_char_table_range, Fset_char_table_default)
19609 (char_table_translate, optimize_sub_char_table)
19610 (Foptimize_char_table, map_char_table, Fmap_char_table): Move to
19611 chartab.c.
19612 (char_table_ref_and_index): Delete.
19613 (HASH_KEY, HASH_VALUE): Move to lisp.h.
19614 (Fmd5): Call preferred_coding_system instead of accessing
19615 Vcoding_category_list. Adjust for the new code-conversion API.
19616 (syms_of_fns): Move defsubr for char table related functions to
19617 chartab.c.
19618
19619 * fontset.c: Mostly re-written.
19620
19621 * fontset.h (struct font_info): Change type of the member encoding_type.
19622 (enum FONT_SPEC_INDEX): New enum.
19623 (fontset_font_pattern, fs_load_font): Update prototype.
19624 (FS_LOAD_FONT): Adjust for the change of fs_load_font.
19625
19626 * indent.c: Include "character.h" instead of "charset.h".
19627 (MULTIBYTE_BYTES_WIDTH): Call CHAR_WIDTH instead of WIDTH_BY_CHAR_HEAD.
19628
19629 * insdel.c: Include "character.h" instead of "charset.h".
19630 (copy_text): Don't refer to Vnonascii_translation_table.
19631 (insert_from_gap): New function.
19632
19633 * keyboard.c: Include "character.h" instead of "charset.h".
19634 (command_loop_1): Never call direct_output_forward_char before
19635 a non-ASCII character.
19636 (read_char): If Vkeyboard_translate_table is a char table, always
19637 translate a character.
19638
19639 * keymap.c: Include "character.h".
19640 (store_in_keymap): Handle the case that IDX is a cons.
19641 (Fdefine_key): Handle the case that KEY is a cons and the car part
19642 is also a cons (range).
19643 (push_key_description): Adjust for the new character code.
19644 (describe_vector): Call describe_char_table for a char table.
19645 (describe_char_table): New function.
19646
19647 * keymap.h (describe_char_table): Extern it.
19648
19649 * lisp.h (enum pvec_type): New member PVEC_SUB_CHAR_TABLE.
19650 (XSUB_CHAR_TABLE, XSETSUB_CHAR_TABLE): New macros.
19651 (CHAR_TABLE_ORDINARY_SLOTS, CHAR_TABLE_SINGLE_BYTE_SLOTS)
19652 (SUB_CHAR_TABLE_ORDINARY_SLOTS, SUB_CHAR_TABLE_STANDARD_SLOTS):
19653 Delete.
19654 (CHAR_TABLE_REF, CHAR_TABLE_SET): Adjust for the new char table
19655 structure.
19656 (CHAR_TABLE_TRANSLATE): Just call char_table_translate.
19657 (CHARTAB_SIZE_BITS_0, CHARTAB_SIZE_BITS_1, CHARTAB_SIZE_BITS_2)
19658 (CHARTAB_SIZE_BITS_3): New macros.
19659 (chartab_size): Extern it.
19660 (struct Lisp_Char_Table): Re-design.
19661 (struct Lisp_Sub_Char_Table): New structure.
19662 (HASH_KEY, HASH_VALUE): Move from fns.c.
19663 (CHARACTERBITS): Define as 22.
19664 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Adjust for the above change.
19665 (SUB_CHAR_TABLE_P): Check PVEC_CHAR_TABLE.
19666 (GC_SUB_CHAR_TABLE_P): New macro.
19667 (Fencode_coding_string, Fdecode_coding_string): Update EXFUN.
19668 (code_convert_string_norecord): Deleted extern.
19669 (init_character_once, syms_of_character, init_charset)
19670 (syms_of_composite, Qeq, Fmakehash, insert_from_gap): Extern them.
19671
19672 * lread.c: Include "character.h".
19673 (read_multibyte): New arg NBYTES.
19674 (read_escape): Change the meaning of returned *BYTEREP.
19675 (to_multibyte): Delete.
19676 (read1): Adjust the handling of char table and string.
19677
19678 * print.c: Include "character.h" instead of "charset.h".
19679 (print_string): Convert 8-bit raw bytes to octal form by
19680 string_escape_byte8.
19681 (print_object): Adjust for the new multibyte form. Print 8-bit
19682 raw bytes always in octal form. Handle sub char table correctly.
19683
19684 * process.c: Include "character.h" instead of "charset.h".
19685 (read_process_output, send_process): Adjust for the new
19686 code-conversion API.
19687
19688 * puresize.h (BASE_PURESIZE): Increase.
19689
19690 * regex.c: Include "character.h" instead of "charset.h".
19691 (BYTE8_TO_CHAR, CHAR_BYTE8_P) [not emacs]: New dummy macros.
19692 (regex_compile): Accept a range whose starting and ending
19693 character have different leading bytes.
19694 (analyse_first): Adjust for the above change.
19695
19696 * search.c: Include "character.h" instead of "charset.h".
19697 (search_buffer, boyer_moore): Adjust for the new multibyte form.
19698 (Freplace_match): Adjust for the change of multibyte_char_to_unibyte.
19699
19700 * syntax.c: Include "character.h" instead of "charset.h".
19701 (syntax_parent_lookup): Delete.
19702 (Fmodify_syntax_entry): Accept a cons as CHAR.
19703 (skip_chars): Adjust for the new multibyte form.
19704 (init_syntax_once): Call char_table_set_range instead of directly
19705 accessing the structure of a char table.
19706
19707 * syntax.h (SET_RAW_SYNTAX_ENTRY): Call CHAR_TABLE_SET.
19708 (SYNTAX_ENTRY_FOLLOW_PARENT): Delete macro.
19709 (SET_RAW_SYNTAX_ENTRY_RANGE): New macro.
19710 (SYNTAX_ENTRY_INT): Call CHAR_TABLE_REF.
19711
19712 * term.c: Include "buffer.h" and "character.h".
19713 (encode_terminal_code, write_glyphs): Adjust for the new
19714 code-conversion API.
19715 (produce_glyphs): Call CHAR_WIDTH instead of CHARSET_WIDTH.
19716
19717 * w32term.c (x_new_font): Adjust for the change of FS_LOAD_FONT.
19718
19719 * xdisp.c: Include "character.h".
19720 (get_next_display_element): Adjust for the new multibyte form.
19721 (disp_char_vector): Adjust for the new char table structure.
19722 (decode_mode_spec_coding): Adjust for the new structure of
19723 coding system.
19724 (decode_mode_spec): Adjust for the new code-conversion API.
19725
19726 * xfaces.c: Include "character.h" instead of "charset.h".
19727 (load_face_font): Adjust for the change of choose_face_font and
19728 FS_LOAD_FONT.
19729 (generate_ascii_font): New function.
19730 (set_lface_from_font_name): Adjust for the change of FS_LOAD_FONT.
19731 (set_font_frame_param): Adjust for the change of choose_face_font.
19732 (free_realized_face): Make it public.
19733 (free_realized_faces_for_fontset): Rename from
19734 free_realized_multibyte_face. Free also faces realized for ASCII.
19735 (choose_face_font): Change arguments. Adjust for the change of
19736 fontset_font_pattern and FS_LOAD_FONT.
19737
19738 * xfns.c: Include "character.h".
19739 (x_encode_text): Adjust for the new code-conversion API.
19740
19741 * xselect.c: Don't include "charset.h".
19742 (selection_data_to_lisp_data): Adjust for the new code conversion API.
19743
19744 * xterm.c: Include "character.h".
19745 (x_encode_char): New argument CHARSET. Change caller.
19746 (x_get_char_face_and_encoding, x_get_glyph_face_and_encoding):
19747 Call ENCODE_CHAR instead of SPLIT_CHAR.
19748 (x_produce_glyphs): Don't check Vnonascii_translation_table Call
19749 CHAR_WIDTH instead of CHARSET_WIDTH.
19750 (XTread_socket): Adjust for the new code-conversion API.
19751 (x_new_font): Adjust for the change of FS_LOAD_FONT.
19752 (x_load_font): Adjust for the change of struct font.
19753
19754 2008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
19755
19756 * xfaces.c (face_at_buffer_position): Remove unused vars.
19757
19758 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
19759
19760 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR):
19761 Fix overflow checking.
19762
19763 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
19764
19765 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR, ccl_driver):
19766 Cancel previous change.
19767
19768 2008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
19769
19770 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when
19771 ccl->eight_bit_control. Fix check for buffer overflow.
19772 (CCL_WRITE_MULTIBYTE_CHAR): Fix check for buffer overflow.
19773 (ccl_driver): Initialize extra_bytes to 0.
19774
19775 2008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
19776
19777 * keyboard.c (make_ctrl_char): If C is a multibyte character, just
19778 return it ORed with ctrl_modifier.
19779
19780 2008-01-29 Miles Bader <miles@gnu.org>
19781
19782 * macterm.c (XTset_vertical_scroll_bar): Fix merge mistake.
19783
19784 2008-01-28 Jason Rumney <jasonr@gnu.org>
19785
19786 * w32.c (stat): Don't double check for networked drive.
19787
19788 2008-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
19789
19790 * window.c (run_window_configuration_change_hook): New function.
19791 Code extracted from set_window_buffer. Set the selected frame.
19792 (set_window_buffer): Use it.
19793 * window.h (run_window_configuration_change_hook): Declare.
19794 * dispnew.c (change_frame_size_1): Use it instead of set-window-buffer.
19795
19796 * keyboard.c (read_char): Yet another int/Lisp_Object mixup (YAILOM).
19797
19798 2008-01-27 Dan Nicolaescu <dann@ics.uci.edu>
19799
19800 * Makefile.in: Remove references to unused macros.
19801
19802 2008-01-26 Eli Zaretskii <eliz@gnu.org>
19803
19804 * w32.c (g_b_init_get_sid_sub_authority)
19805 (g_b_init_get_sid_sub_authority_count): New static variables.
19806 (GetSidSubAuthority_Proc, GetSidSubAuthorityCount_Proc): New typedefs.
19807 (get_sid_sub_authority, get_sid_sub_authority_count): New functions.
19808 (init_user_info): Use them to retrieve uid and gid.
19809 Use 500/513, the Windows defaults, as Administrator's uid/gid.
19810 (fstat): Use pw_uid and pw_gid from the_passwd structure for
19811 st_uid and st_gid of the file.
19812
19813 2008-01-26 Jason Rumney <jasonr@gnu.org>
19814
19815 * w32.c (logon_network_drive): New function.
19816 (stat): Use it.
19817
19818 2008-01-26 Chong Yidong <cyd@stupidchicken.com>
19819
19820 * xdisp.c (pos_visible_p): Handle the case where charpos falls on
19821 invisible text covered with an ellipsis.
19822
19823 2008-01-25 Richard Stallman <rms@gnu.org>
19824
19825 * xdisp.c (redisplay_window): Run Qwindow_text_change_functions and
19826 jump back to beginning. Move some other initializations after that.
19827 (Qwindow_text_change_functions, Vwindow_text_change_functions):
19828 New variables.
19829 (syms_of_xdisp): Init them.
19830
19831 * keyboard.c (read_char): Restore echo_message_buffer after redisplay.
19832
19833 * buffer.c (reset_buffer_local_variables):
19834 Implement `permanent-local-hook'.
19835 (Qpermanent_local_hook): New variable.
19836 (syms_of_buffer): Init and staticpro it.
19837
19838 2008-01-25 Michael Albinus <michael.albinus@gmx.de>
19839
19840 * dbusbind.c (xd_retrieve_arg): Pacify GCC on x86_64 GNU/Linux.
19841
19842 2008-01-25 Thien-Thi Nguyen <ttn@gnuvola.org>
19843
19844 * fns.c (Fclrhash): Return TABLE.
19845
19846 2008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19847
19848 * macterm.c (x_scroll_bar_create): Initialize bar->redraw_needed_p.
19849 (XTset_vertical_scroll_bar): Redraw scroll bar if bar->redraw_needed_p
19850 is set even without positional changes.
19851 (x_scroll_bar_clear): Set bar->redraw_needed_p.
19852
19853 * macterm.h (struct scroll_bar): New member `redraw_needed_p'.
19854
19855 2008-01-23 Jason Rumney <jasonr@gnu.org>
19856
19857 * xterm.c (handle_one_xevent): Revert to counting chars not bytes.
19858
19859 * w32term.c (w32_read_socket) <WM_CHAR>: Decode characters outside
19860 the unicode range available in MULE by locale-coding-system.
19861 Improve dbcs lead byte detection. Set event timestamp and modifiers
19862 earlier.
19863
19864 2008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19865
19866 * mac.c (mac_emacs_pid) [MAC_OSX]: New variable.
19867 [MAC_OSX] (init_mac_osx_environment): Initialize it.
19868 [MAC_OSX] (mac_try_close_socket) [SELECT_USE_CFSOCKET]: Return 0
19869 when used on child processes.
19870
19871 2008-01-21 Michael Albinus <michael.albinus@gmx.de>
19872
19873 * dbusbind.c (Fdbus_method_return_internal): Rename from
19874 Fdbus_method_return.
19875 (Fdbus_unregister_object): Move to dbus.el.
19876 (Fdbus_call_method, Fdbus_method_return_internal)
19877 (Fdbus_send_signal): Improve debug messages.
19878
19879 2008-01-20 Martin Rudalics <rudalics@gmx.at>
19880
19881 * undo.c (undo_inhibit_record_point): New variable.
19882 (syms_of_undo): Initialize it.
19883 (record_point): Don't record point when undo_inhibit_record_point
19884 is set.
19885
19886 2008-01-19 Stefan Monnier <monnier@iro.umontreal.ca>
19887
19888 * process.c (list_processes_1): Don't use SCHARS on a nil buffer name.
19889
19890 * xdisp.c (Qauto_hscroll_mode): New var.
19891 (syms_of_xdisp): Initialize it.
19892 (hscroll_window_tree): Use it to lookup `auto-hscroll-mode' in each
19893 window's buffer.
19894 (hscroll_windows): Don't check automatic_hscrolling_p here.
19895
19896 * window.c (set_window_buffer): Don't unnecessarily reset hscroll and
19897 vscroll if we're setting window-buffer to the value it already has.
19898
19899 2008-01-18 Dan Nicolaescu <dann@ics.uci.edu>
19900
19901 * m/intel386.h: Remove references to XENIX.
19902
19903 2008-01-17 Andreas Schwab <schwab@suse.de>
19904
19905 * m/amdx86-64.h (START_FILES, LIB_STANDARD): Use HAVE_LIB64_DIR
19906 instead of HAVE_X86_64_LIB64_DIR.
19907 * m/ibms390x.h (START_FILES, LIB_STANDARD): Likewise.
19908
19909 2008-01-17 Glenn Morris <rgm@gnu.org>
19910
19911 * m/ibms390x.h (START_FILES, LIB_STANDARD): Adjust value according
19912 to HAVE_X86_64_LIB64_DIR.
19913
19914 2008-01-16 Dan Nicolaescu <dann@ics.uci.edu>
19915
19916 * s/irix3-3.h:
19917 * s/irix4-0.h:
19918 * s/386-ix.h:
19919 * s/domain.h:
19920 * s/hpux9-x11r4.h:
19921 * s/hpux9shxr4.h: Remove files for systems no longer supported.
19922
19923 * sysdep.c: Remove code containing references to symbols defined
19924 by unsupported systems.
19925
19926 2008-01-16 Glenn Morris <rgm@gnu.org>
19927
19928 * coding.c (select-safe-coding-system-function): Doc fix.
19929
19930 2008-01-15 Glenn Morris <rgm@gnu.org>
19931
19932 * config.in: Revert 2008-01-13 change: this is a generated file.
19933
19934 2008-01-13 Tom Tromey <tromey@redhat.com>
19935
19936 * lisp.h: Fix typo.
19937
19938 2008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
19939
19940 * m/sequent-ptx.h:
19941 * m/sequent.h:
19942 * s/ptx.h:
19943 * s/ptx4-2.h:
19944 * s/ptx4.h: Remove files for systems no longer supported.
19945
19946 * callproc.c (Fcall_process): Fix previous change.
19947
19948 2008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
19949
19950 * unexsunos4.c: Remove file, system not supported anymore.
19951
19952 * m/mips.h:
19953 * m/intel386.h:
19954 * callproc.c:
19955 * config.in:
19956 * ecrt0.c:
19957 * emacs.c:
19958 * fileio.c:
19959 * frame.c:
19960 * getpagesize.h:
19961 * keyboard.c:
19962 * lread.c:
19963 * process.c:
19964 * puresize.h:
19965 * sysdep.c:
19966 * systty.h:
19967 * syswait.h:
19968 * unexec.c:
19969 * xdisp.c:
19970 * alloc.c: Remove code containing references to symbols defined by
19971 unsupported systems.
19972
19973 2008-01-11 Kenichi Handa <handa@ni.aist.go.jp>
19974
19975 * coding.c (detect_coding_mask): Fix previous change.
19976
19977 2008-01-09 Kenichi Handa <handa@ni.aist.go.jp>
19978
19979 * coding.c (detect_coding_iso2022): New arg
19980 latin_extra_code_state. Allow Latin extra codes only
19981 when *latin_extra_code_state is nonzero.
19982 (detect_coding_mask): If there is a NULL byte, detect the encoding
19983 as UTF-16 or binary. If Latin extra codes exist, detect the
19984 encoding as ISO-2022 only when there's no other proper encoding is
19985 found.
19986
19987 2008-01-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19988
19989 * frame.c (Fmake_terminal_frame): Use #ifdef MAC_OS8 instead of
19990 #ifdef MAC_OS.
19991
19992 2008-01-08 Richard Stallman <rms@gnu.org>
19993
19994 * fileio.c (Ffile_name_directory, Fexpand_file_name): Doc fixes.
19995
19996 2008-01-06 Nick Roberts <nickrob@snap.net.nz>
19997
19998 * keyboard.c (parse_menu_item): Don't enclose key bindings on
19999 menu bar in parentheses.
20000
20001 2008-01-06 Dan Nicolaescu <dann@ics.uci.edu>
20002
20003 * m/7300.h:
20004 * m/acorn.h:
20005 * m/alliant-2800.h:
20006 * m/alliant.h:
20007 * m/alliant1.h:
20008 * m/alliant4.h:
20009 * m/altos.h:
20010 * m/amdahl.h:
20011 * m/apollo.h:
20012 * m/att3b.h:
20013 * m/aviion-intel.h:
20014 * m/aviion.h:
20015 * m/celerity.h:
20016 * m/clipper.h:
20017 * m/cnvrgnt.h:
20018 * m/convex.h:
20019 * m/cydra5.h:
20020 * m/delta88k.h:
20021 * m/dpx2.h:
20022 * m/dual.h:
20023 * m/elxsi.h:
20024 * m/f301.h:
20025 * m/gould-np1.h:
20026 * m/gould.h:
20027 * m/i860.h:
20028 * m/ibmps2-aix.h:
20029 * m/ibmrt-aix.h:
20030 * m/ibmrt.h:
20031 * m/irist.h:
20032 * m/is386.h:
20033 * m/isi-ov.h:
20034 * m/mega68.h:
20035 * m/mg1.h:
20036 * m/news-r6.h:
20037 * m/news-risc.h:
20038 * m/news.h:
20039 * m/nh3000.h:
20040 * m/nh4000.h:
20041 * m/ns16000.h:
20042 * m/ns32000.h:
20043 * m/nu.h:
20044 * m/orion.h:
20045 * m/orion105.h:
20046 * m/paragon.h:
20047 * m/pfa50.h:
20048 * m/plexus.h:
20049 * m/pyramid.h:
20050 * m/pyrmips.h:
20051 * m/sh3el.h:
20052 * m/sps7.h:
20053 * m/sr2k.h:
20054 * m/stride.h:
20055 * m/sun1.h:
20056 * m/sun2.h:
20057 * m/sun3-68881.h:
20058 * m/sun3-fpa.h:
20059 * m/sun3-soft.h:
20060 * m/sun3.h:
20061 * m/sun386.h:
20062 * m/symmetry.h:
20063 * m/tad68k.h:
20064 * m/tahoe.h:
20065 * m/targon31.h:
20066 * m/tek4300.h:
20067 * m/tekxd88.h:
20068 * m/tower32.h:
20069 * m/tower32v3.h:
20070 * m/ustation.h:
20071 * m/wicat.h:
20072 * m/xps100.h:
20073 * s/cxux.h:
20074 * s/cxux7.h:
20075 * s/dgux.h:
20076 * s/dgux4.h:
20077 * s/dgux5-4-3.h:
20078 * s/dgux5-4r2.h:
20079 * s/esix.h:
20080 * s/esix5r4.h:
20081 * s/hiuxmpp.h:
20082 * s/hiuxwe2.h:
20083 * s/iris3-5.h:
20084 * s/iris3-6.h:
20085 * s/isc2-2.h:
20086 * s/isc3-0.h:
20087 * s/isc4-0.h:
20088 * s/isc4-1.h:
20089 * s/newsos5.h:
20090 * s/newsos6.h:
20091 * s/osf1.h:
20092 * s/osf5-0.h:
20093 * s/riscix1-1.h:
20094 * s/riscix12.h:
20095 * s/sco4.h:
20096 * s/sco5.h:
20097 * s/sunos4-0.h:
20098 * s/sunos4-1.h:
20099 * s/sunos413.h:
20100 * s/sunos4shr.h:
20101 * s/umax.h:
20102 * s/unipl5-2.h:
20103 * s/xenix.h:
20104 * cxux-crt0.s:
20105 * unexapollo.c:
20106 * unexconvex.c:
20107 * unexenix.c:
20108 * unexsni.c: Remove files for systems no longer supported.
20109
20110 * m/intel386.h: Remove references to unsupported systems.
20111
20112 * w32.c (get_emacs_configuration): Remove reference to i860.
20113
20114 * sysdep.c: Remove dead code.
20115
20116 2008-01-05 Dan Nicolaescu <dann@ics.uci.edu>
20117
20118 * s/rtu.h:
20119 * m/masscomp.h: Remove files. Platform is obsolete.
20120
20121 2008-01-04 Michael Albinus <michael.albinus@gmx.de>
20122
20123 * dbusbind.c (Fdbus_method_return): New function.
20124 (xd_read_message): Add the serial number to the event.
20125 (Fdbus_register_method): Activate the function.
20126
20127 2008-01-03 Stefan Monnier <monnier@iro.umontreal.ca>
20128
20129 * keyboard.c (read_key_sequence): Fix typo.
20130
20131 2008-01-03 Michael Albinus <michael.albinus@gmx.de>
20132
20133 * dbusbind.c (all): Replace XCAR by CAR_SAFE and XCDR by CDR_SAFE.
20134 (xd_signature, xd_append_arg): Handle element type detection for
20135 empty arrays.
20136 (Fdbus_call_method, Fdbus_send_signal): Undo type casting for
20137 SDATA () calls; this must be solved more general.
20138 (Fdbus_register_signal): Use SBYTES instead of strlen.
20139
20140 2008-01-03 Magnus Henoch <magnus@zemdatav>
20141
20142 * dbusbind.c (xd_append_arg): Use unsigned char instead of
20143 unsigned int for byte values (necessary for big-endian platform).
20144 (Fdbus_call_method): Handle the case of no returned arguments.
20145
20146 2007-12-31 Tom Tromey <tromey@redhat.com> (tiny change)
20147
20148 * dbusbind.c (xd_read_message): Use non-static input_event struct.
20149
20150 2007-12-31 Magnus Henoch <mange@freemail.hu>
20151
20152 * dbusbind.c (xd_signature): Signature of variant is just "v".
20153
20154 2007-12-30 Michael Albinus <michael.albinus@gmx.de>
20155
20156 * dbusbind.c: Fix several errors and compiler warnings.
20157 Reported by Tom Tromey <tromey@redhat.com>.
20158 (XD_ERROR, XD_DEBUG_MESSAGE)
20159 (XD_DEBUG_VALID_LISP_OBJECT_P): Wrap code with "do ... while (0)".
20160 (xd_append_arg): Part for basic D-Bus types rewritten.
20161 (xd_retrieve_arg): Split implementation of DBUS_TYPE_BYTE and
20162 DBUS_TYPE_(U)INT16. Don't call XD_DEBUG_MESSAGE with "%f" if not
20163 appropriate.
20164 (xd_read_message): Return Qnil. Don't signal an error; it is not
20165 useful during event reading.
20166 (Fdbus_register_signal): Signal an error if the check for
20167 FUNCTIONP fails.
20168 (Fdbus_register_method): New function. The implementation is not
20169 complete, the call of the function signals an error therefore.
20170 (Fdbus_unregister_object): New function, renamed from
20171 Fdbus_unregister_signal. The initial check signals an error, if
20172 the object is not well formed.
20173
20174 2007-12-30 Richard Stallman <rms@gnu.org>
20175
20176 * textprop.c (get_char_property_and_overlay):
20177 Signal error if POSITION is out of range in a buffer.
20178
20179 2007-12-29 Martin Rudalics <rudalics@gmx.at>
20180
20181 * w32fns.c (Fx_create_frame): Make copy of frame parameters
20182 because the original parameters are in pure storage now.
20183
20184 2007-12-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20185
20186 * xdisp.c (phys_cursor_in_rect_p): Check if cursor is in fringe area.
20187
20188 2007-12-22 Eli Zaretskii <eliz@gnu.org>
20189
20190 * callint.c (syms_of_callint) <command-history>: Add reference to
20191 history-length in the doc string.
20192
20193 2007-12-17 Jason Rumney <jasonr@gnu.org>
20194
20195 * w32fns.c (w32_wnd_proc) <WM_KEYDOWN>: Cast char to unsigned
20196 before passing as wParam.
20197
20198 2007-12-22 Michael Albinus <michael.albinus@gmx.de>
20199
20200 * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_BYTE,
20201 DBUS_TYPE_INT16, DBUS_TYPE_UINT16, DBUS_TYPE_INT64,
20202 DBUS_TYPE_UINT64, DBUS_TYPE_DOUBLE and DBUS_TYPE_SIGNATURE.
20203 Return float when DBUS_TYPE_INT32 or DBUS_TYPE_UINT32 do not fit
20204 as number.
20205 (Fdbus_call_method): Fix docstring.
20206
20207 2007-12-21 Michael Albinus <michael.albinus@gmx.de>
20208
20209 * dbusbind.c (XD_BASIC_DBUS_TYPE, XD_DBUS_TYPE_P, XD_NEXT_VALUE):
20210 New macros.
20211 (XD_SYMBOL_TO_DBUS_TYPE): Rename from XD_LISP_SYMBOL_TO_DBUS_TYPE.
20212 (XD_OBJECT_TO_DBUS_TYPE): Rename from XD_LISP_OBJECT_TO_DBUS_TYPE.
20213 Simplify.
20214 (xd_signature): New function.
20215 (xd_append_arg): Compute also signatures. Major rewrite.
20216 (xd_retrieve_arg): Make debug messages friendly.
20217 (Fdbus_call_method, Fdbus_send_signal): Extend docstring.
20218 Check for signatures of arguments.
20219
20220 2007-12-19 Michael Albinus <michael.albinus@gmx.de>
20221
20222 * dbusbind.c (QCdbus_type_byte, QCdbus_type_boolean)
20223 (QCdbus_type_int16, QCdbus_type_uint16, QCdbus_type_int32)
20224 (QCdbus_type_uint32, QCdbus_type_int64, QCdbus_type_uint64)
20225 (QCdbus_type_double, QCdbus_type_string, QCdbus_type_object_path)
20226 (QCdbus_type_signature, QCdbus_type_array, QCdbus_type_variant)
20227 (QCdbus_type_struct, QCdbus_type_dict_entry): New D-Bus type symbols.
20228 (XD_LISP_SYMBOL_TO_DBUS_TYPE): New macro.
20229 (XD_LISP_OBJECT_TO_DBUS_TYPE): Add compound types.
20230 (xd_retrieve_value): Remove. Functionality included in ...
20231 (xd_append_arg): New function.
20232 (Fdbus_call_method, Fdbus_send_signal): Apply it.
20233
20234 2007-12-16 Michael Albinus <michael.albinus@gmx.de>
20235
20236 * dbusbind.c (top): Include <stdio.h>.
20237 (Fdbus_call_method, Fdbus_send_signal): Apply type cast in
20238 dbus_message_new_method_call and dbus_message_new_signal.
20239 (Fdbus_register_signal): Rename unique_name to uname.
20240 Check handler for FUNCTIONP instead of CHECK_SYMBOL. Handle case of
20241 non-existing unique name. Fix typos in matching rule. Return an
20242 object which is useful in Fdbus_unregister_signal.
20243 (Fdbus_unregister_signal): Reimplementation, in order to remove
20244 only the corresponding entry.
20245 (Vdbus_registered_functions_table): Change the order of entries.
20246 Apply these changes in xd_read_message and Fdbus_register_signal.
20247
20248 2007-12-16 Andreas Schwab <schwab@suse.de>
20249
20250 * fileio.c (Finsert_file_contents): Fix overflow check to not
20251 depend on undefined integer overflow.
20252
20253 2007-12-14 Jason Rumney <jasonr@gnu.org>
20254
20255 * w32term.c (w32_read_socket): Use MULTIBYTE_CHAR_KEYSTROKE_EVENT
20256 for characters above 127.
20257
20258 2007-12-13 Jason Rumney <jasonr@gnu.org>
20259
20260 * w32fns.c (w32_wnd_proc, Fw32_reconstruct_hot_key): Range check
20261 before dereferencing array.
20262 (lookup_vk_code): Remove zero comparison.
20263
20264 2007-12-14 Michael Albinus <michael.albinus@gmx.de>
20265
20266 * dbusbind.c (xd_retrieve_value, xd_retrieve_arg)
20267 (Fdbus_call_method, Fdbus_send_signal, xd_read_message):
20268 Use `unsigned int' instead of `uint'.
20269 (xd_read_message, Fdbus_register_signal): Split expressions into
20270 multiple lines before operators "&&" and "||", according to the
20271 GNU Coding Standards.
20272
20273 2007-12-14 Eli Zaretskii <eliz@gnu.org>
20274
20275 * dispextern.h (WINDOWS_NT): Fix incorrect spelling of WINDOWSNT.
20276
20277 2007-12-12 Juri Linkov <juri@jurta.org>
20278
20279 * buffer.c (Frename_buffer): In interactive spec replace
20280 `read-buffer' with `read-string' that uses `buffer-name-history'
20281 as history, and the current buffer's name as default.
20282
20283 2007-12-10 Stefan Monnier <monnier@iro.umontreal.ca>
20284
20285 * keyboard.c (Fcommand_execute): Call Qcall_interactively instead of
20286 manipulating the backtrace manually.
20287 (make_lispy_event): Merge the ASCII and MULTIBYTE cases.
20288 (struct backtrace, backtrace_list): Remove.
20289 (command_loop_1): Remove dead var `no_direct'.
20290
20291 * buffer.c (reset_buffer_local_variables): If permanent_too is 0, also
20292 preserve non-built-in buffer-local variables.
20293 (Fkill_all_local_variables): Don't re-create&re-set permanent
20294 buffer-local variables.
20295
20296 2007-12-09 Juri Linkov <juri@jurta.org>
20297
20298 * buffer.c (Frename_buffer): Change interactive spec from "s" to
20299 Lisp code that uses `read-buffer' with current buffer as default.
20300
20301 2007-12-08 Michael Albinus <michael.albinus@gmx.de>
20302
20303 * dbusbind.c (xd_read_message): Generate an event for every
20304 registered handler. There might be several handlers registered
20305 for the same signal.
20306 (Fdbus_register_signal): Don't overwrite a registration for the
20307 same signal. Add a new registration if handlers are different.
20308 (Vdbus_registered_functions_table): Rework doc string.
20309
20310 2007-12-07 Michael Albinus <michael.albinus@gmx.de>
20311
20312 * dbusbind.c (Fdbus_get_unique_name, xd_read_message)
20313 (Fdbus_register_signal): Use DBUS_MAXIMUM_NAME_LENGTH and
20314 DBUS_MAXIMUM_MATCH_RULE_LENGTH for string lengths.
20315 (Fdbus_call_method, Fdbus_send_signal, Fdbus_register_signal):
20316 Unify argument lists.
20317 (xd_read_message, Fdbus_register_signal): Reorder and extend event
20318 arguments and hash table keys. Use unique name for service.
20319 (Fdbus_unregister_signal): Remove checks.
20320 (Vdbus_registered_functions_table): Fix doc string.
20321
20322 2007-12-05 Magnus Henoch <mange@freemail.hu>
20323
20324 * process.c (make_process): Initialize pty_flag to 0.
20325
20326 2007-12-05 Jason Rumney <jasonr@gnu.org>
20327
20328 * image.c (xbm_load) [WINDOWSNT]: Shuffle the bits of directly
20329 specified XBMs.
20330
20331 2007-12-05 Richard Stallman <rms@gnu.org>
20332
20333 * xdisp.c (syms_of_xdisp) <scroll-conservatively>: Doc fix.
20334
20335 2007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20336
20337 * mac.c (cfsockets_for_select) [MAC_OSX && SELECT_USE_CFSOCKET]:
20338 New variable.
20339 (mac_try_close_socket) [MAC_OSX]: New function.
20340 [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]:
20341 Update cfsockets_for_select. Replace invalid CFRunLoop source.
20342
20343 * sysdep.c (emacs_close) [MAC_OSX && HAVE_CARBON]:
20344 Use mac_try_close_socket.
20345
20346 2007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20347
20348 * unexmacosx.c (unrelocate): New argument BASE. Use it instead of
20349 reloc_base.
20350 (copy_dysymtab): Compute relocation base here.
20351 (rebase_reloc_address) [__ppc64__]: New function.
20352 (copy_dysymtab) [__ppc64__]: Use it if relocation base needs to be
20353 changed.
20354
20355 2007-12-05 Jason Rumney <jasonr@gnu.org>
20356
20357 * w32proc.c (sys_spawnve): Quote args with wildcards.
20358
20359 2007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20360
20361 * unexmacosx.c (copy_data_segment): Also copy __gcc_except_tab and
20362 __objc_* sections.
20363 (unrelocate) [_LP64]: Set relocation base to address of data segment.
20364
20365 2007-12-05 Michael Albinus <michael.albinus@gmx.de>
20366
20367 * dbusbind.c (xd_read_message): Return value is a Lisp_Object.
20368 Move check for Vdbus_registered_functions_table to
20369 xd_read_queued_messages.
20370 (xd_read_queued_messages): Protect xd_read_message calls by
20371 internal_condition_case_1.
20372
20373 2007-12-04 Michael Albinus <michael.albinus@gmx.de>
20374
20375 * dbusbind.c (QCdbus_system_bus, QCdbus_session_bus): Rename from
20376 Qdbus_system_bus and Qdbus_session_bus, respectively.
20377 (Vdbus_intern_symbols): Remove.
20378 (Vdbus_registered_functions_table): New hash table.
20379 (XD_SYMBOL_INTERN_SYMBOL): Remove.
20380 (xd_read_message, Fdbus_register_signal, Fdbus_unregister_signal):
20381 Rewrite in order to manage registered functions by hash table
20382 Vdbus_registered_functions_table.
20383
20384 2007-12-03 Jan Djärv <jan.h.d@swipnet.se>
20385
20386 * xterm.c: Update URL to Window Manager Specification in comment.
20387
20388 2007-12-02 Michael Albinus <michael.albinus@gmx.de>
20389
20390 * config.in (HAVE_DBUS): Add.
20391
20392 * Makefile.in (HAVE_DBUS): Add D-Bus definitions if defined.
20393 (ALL_CFLAGS): Add ${DBUS_CFLAGS}.
20394 (obj): Add $(DBUS_OBJ).
20395 (LIBES): Add $(DBUS_LIBS).
20396 (dbusbind.o): New target.
20397
20398 * dbusbind.c: New file.
20399
20400 * emacs.c (main): Call syms_of_dbusbind when HAVE_DBUS is defined.
20401
20402 * keyboard.c: All D-Bus related code is wrapped by "#ifdef HAVE_DBUS".
20403 (Qdbus_event): New Lisp symbol.
20404 (kbd_buffer_get_event, make_lispy_event): Handle DBUS_EVENT.
20405 (gobble_input): Call xd_read_queued_messages, reading D-Bus messages.
20406 (keys_of_keyboard): Define dbus-event.
20407
20408 * termhooks.h (event_kind): Add DBUS_EVENT when HAVE_DBUS is defined.
20409
20410 2007-12-01 Richard Stallman <rms@gnu.org>
20411
20412 * search.c (syms_of_search) <inhibit-changing-match-data>: Doc fix.
20413
20414 2007-11-30 Jason Rumney <jasonr@gnu.org>
20415
20416 * w32console.c (w32con_ins_del_lines, scroll_line): Clip to window.
20417 (w32con_reset_terminal_modes): Clear screen buffer.
20418 (w32_face_attributes): Don't use color indexes that are out of range.
20419 Only reverse the default colors.
20420
20421 * xfaces.c (map_tty_color, tty_color_name): Remove special case for
20422 WINDOWSNT.
20423
20424 * w32console.c, w32term.h (vga_stdcolor_name): Remove.
20425
20426 2007-11-29 Jason Rumney <jasonr@gnu.org>
20427
20428 * w32console.c: Leave HAVE_WINDOW_SYSTEM defined.
20429 (w32_face_attributes): Use Vtty_defined_color_alist to determine
20430 if the terminal colors are initialized.
20431 (unspecified_fg, unspecified_bg): Remove unused declarations.
20432
20433 2007-11-29 Andreas Schwab <schwab@suse.de>
20434
20435 * keyboard.c (apply_modifiers): Fix typo.
20436
20437 2007-11-29 Richard Stallman <rms@gnu.org>
20438
20439 * keymap.c (Fcurrent_local_map): Doc fix.
20440
20441 2007-11-28 Petr Salinger <Petr.Salinger@seznam.cz> (tiny change)
20442
20443 * s/gnu-kfreebsd.h: New file.
20444
20445 2007-11-28 Stefan Monnier <monnier@iro.umontreal.ca>
20446
20447 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer):
20448 Don't cast redundantly.
20449
20450 * keyboard.c (KEY_TO_CHAR): New macro.
20451 (parse_modifiers, apply_modifiers): Accept integer arguments.
20452 (read_key_sequence): Use them to unify the "shift->unshift" mapping
20453 for chars and symbol keys.
20454 After doing such remapping, apply function-key-map again.
20455
20456 2007-11-27 Dan Nicolaescu <dann@ics.uci.edu>
20457
20458 * Makefile.in (SOME_MACHINE_LISP): Remove VMS files, they are not
20459 compiled anymore.
20460
20461 2007-11-26 Andreas Schwab <schwab@suse.de>
20462
20463 * process.c (list_processes_1): Fix indentation level of the
20464 command column.
20465
20466 2007-11-23 Andreas Schwab <schwab@suse.de>
20467
20468 * editfns.c (Fformat): Handle %c specially since it requires the
20469 argument to be of type int.
20470
20471 2007-11-23 Markus Triska <markus.triska@gmx.at>
20472
20473 * emacs.c (main): Call init_editfns before init_process, since
20474 init_process sets Vprocess_connection_type depending on OS release.
20475
20476 2007-11-22 Stefan Monnier <monnier@iro.umontreal.ca>
20477
20478 * data.c (do_symval_forwarding): Use same code as in find_symbol_value.
20479 (find_symbol_value): Use do_symval_forwarding.
20480
20481 * data.c (set_internal): Set the value in the `cons-cell' (for
20482 Buffer_Local_values) not only for frame-local variables.
20483
20484 2007-11-22 Andreas Schwab <schwab@suse.de>
20485
20486 * data.c (Fnumber_to_string): Add cast when passing EMACS_INT
20487 values to sprintf.
20488 * keymap.c (Fsingle_key_description): Likewise.
20489 * print.c (print_object): Likewise.
20490
20491 2007-11-22 Jan Djärv <jan.h.d@swipnet.se>
20492
20493 * gtkutil.c (update_frame_tool_bar): Don't call x-gtk-map-stock if
20494 file for image is nil.
20495
20496 2007-11-22 Dan Nicolaescu <dann@ics.uci.edu>
20497
20498 * term.c: Include stdarg.h.
20499 (fatal): Implement using varargs.
20500 * lisp.h (fatal): Add argument types. (Restore 2005-09-30 change).
20501
20502 2007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
20503
20504 * lisp.h (struct Lisp_Buffer_Objfwd): Add a `slottype' field.
20505 * data.c (store_symval_forwarding): Get type from buffer_objfwd.
20506 Update call to buffer_slot_type_mismatch.
20507 * buffer.h (buffer_local_types, PER_BUFFER_TYPE): Remove.
20508 (buffer_slot_type_mismatch): Update.
20509 * buffer.c (buffer_local_types): Remove.
20510 (buffer_slot_type_mismatch): Get the symbol and type as arguments.
20511 (defvar_per_buffer): Set the type in the buffer_objfwd.
20512
20513 2007-11-21 Jason Rumney <jasonr@gnu.org>
20514
20515 * w32bdf.c (w32_init_bdf_font, w32_BDF_to_x_font):
20516 CreateFileMapping returns NULL on failure.
20517
20518 2007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
20519
20520 * search.c (Fset_match_data): Remove the `evaporate' feature.
20521 (unwind_set_match_data): Don't use the `evaporate' feature.
20522
20523 2007-11-21 Jason Rumney <jasonr@gnu.org>
20524
20525 * dispnew.c (init_display) [WINDOWSNT]: Hardcode terminal_type.
20526
20527 * w32console.c (w32con_write_glyphs): Remove unused variables.
20528
20529 2007-11-20 Dan Nicolaescu <dann@ics.uci.edu>
20530
20531 * macterm.c (mac_term_init): Call add_keyboard_wait_descriptor.
20532
20533 * s/darwin.h (MULTI_KBOARD): Remove.
20534
20535 * macfns.c (x_create_tip_frame, Fx_create_frame)
20536 (x_create_tip_frame): Don't deal with MULTI_KBOARD.
20537
20538 2007-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
20539
20540 * buffer.c (Fbuffer_local_value): Remove redundant test.
20541 (swap_out_buffer_local_variables): Swap out binding in `buffer' rather
20542 than in `current-buffer' to match the comment.
20543 Do the swap using swap_in_global_binding.
20544
20545 * data.c (store_symval_forwarding, set_internal):
20546 * eval.c (specbind): Remove dead code.
20547
20548 * coding.c (detect_coding, Fupdate_coding_systems_internal):
20549 * fns.c (Fmd5): Use find_symbol_value rather than SYMBOL_VALUE
20550 Since we do not want to see internal Lisp_*fwd objects here.
20551
20552 2007-11-18 Jan Djärv <jan.h.d@swipnet.se>
20553
20554 * sysdep.c (init_system_name): Use getaddrinfo if available.
20555
20556 * xterm.c (x_scroll_bar_set_handle, x_scroll_bar_handle_click)
20557 (x_scroll_bar_note_movement): start, end, with, height in struct
20558 scroll_bar are integers and not Lisp_Object, so remove XINT for them.
20559
20560 2007-11-17 Dan Nicolaescu <dann@ics.uci.edu>
20561
20562 * puresize.h (BASE_PURESIZE): Increase to 1190000.
20563
20564 2007-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
20565
20566 * buffer.h (struct buffer): Move `undo_list' back to before `name'.
20567 This undoes Richard's change of 14-Oct-2002.
20568
20569 * alloc.c (allocate_other_vector):
20570 * lisp.h (allocate_other_vector): Remove.
20571
20572 * window.c (struct save_window_data): Move non-lisp data to the end
20573 and make it `int' rather than Lisp_Object.
20574 (Fcurrent_window_configuration): Use ALLOCATE_PSEUDOVECTOR.
20575 Done wrap/unwrap integer values.
20576 (Fset_window_configuration, compare_window_configurations):
20577 Update use of fields to their new types.
20578
20579 * xterm.h (struct scroll_bar): Only use Lisp_Object for lisp data.
20580 Turn integer fields into `int'. Merge x_window_low and x_window_high.
20581 (SCROLL_BAR_PACK, SCROLL_BAR_UNPACK, SCROLL_BAR_X_WINDOW)
20582 (SET_SCROLL_BAR_X_WINDOW): Remove.
20583 (SCROLL_BAR_X_WIDGET, SET_SCROLL_BAR_X_WIDGET):
20584 Access the new x_window field directly.
20585 * xterm.c (x_scroll_bar_create): Use a pseudovector.
20586 Don't wrap/unwrap integers into Lisp_Objects.
20587 (XTset_vertical_scroll_bar, x_scroll_bar_handle_click)
20588 (x_scroll_bar_report_motion):
20589 Don't wrap/unwrap integers into Lisp_Objects.
20590 (x_term_init): Use SDATA.
20591 (x_window_to_scroll_bar, x_create_toolkit_scroll_bar)
20592 (x_scroll_bar_set_handle, x_scroll_bar_remove)
20593 (XTset_vertical_scroll_bar, x_scroll_bar_expose)
20594 (x_scroll_bar_report_motion, x_scroll_bar_clear):
20595 * xfns.c (x_set_background_color):
20596 * gtkutil.c (xg_create_scroll_bar, xg_set_toolkit_scroll_bar_thumb):
20597 Access the new x_window field directly.
20598
20599 * alloc.c (ALLOCATE_PSEUDOVECTOR): Move to lisp.h.
20600 (allocate_pseudovector): Make non-static.
20601
20602 * lisp.h (enum pvec_type): New tag PVEC_OTHER.
20603 (allocate_pseudovector): Declare.
20604 (ALLOCATE_PSEUDOVECTOR): Move from alloc.c.
20605
20606 2007-11-15 Andreas Schwab <schwab@suse.de>
20607
20608 * editfns.c (Fformat): Correctly format EMACS_INT values.
20609 Also take precision into account when formatting an integer.
20610
20611 * keyboard.c (Fevent_symbol_parse_modifiers): Fix declaration.
20612
20613 2007-11-15 Stefan Monnier <monnier@iro.umontreal.ca>
20614
20615 * keyboard.c (Fevent_symbol_parse_modifiers): New function.
20616 (syms_of_keyboard): Defsubr it.
20617
20618 * data.c (swap_in_global_binding): Fix longstanding bug where
20619 store_symval_forwarding was not called with the right second argument,
20620 thus causing objfwd-ing from being dropped.
20621
20622 2007-11-14 Juanma Barranquero <lekktu@gmail.com>
20623
20624 * macfns.c (Fx_create_frame, Fx_display_pixel_width)
20625 (Fx_display_pixel_height, Fx_display_planes)
20626 (Fx_display_color_cells, Fx_server_max_request_size)
20627 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
20628 (Fx_display_visual_class, Fx_display_save_under):
20629 * w32fns.c (Fx_create_frame, Fx_display_pixel_width)
20630 (Fx_display_pixel_height, Fx_display_planes)
20631 (Fx_display_color_cells, Fx_server_max_request_size)
20632 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
20633 (Fx_display_mm_height, Fx_display_mm_width)
20634 (Fx_display_backing_store, Fx_display_visual_class)
20635 (Fw32_select_font, Fx_display_save_under):
20636 * xfns.c (Fx_create_frame, Fx_display_pixel_width)
20637 (Fx_display_pixel_height, Fx_display_planes)
20638 (Fx_display_color_cells, Fx_server_max_request_size)
20639 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
20640 (Fx_display_save_under): Fix typos in docstrings.
20641
20642 2007-11-14 Juanma Barranquero <lekktu@gmail.com>
20643
20644 * w32fns.c (Fw32_registered_hot_keys): Don't return the nil values
20645 corresponding to deleted entries; they are an implementation detail.
20646 (gray_bitmap_width, gray_bitmap_height, gray_bitmap_bits):
20647 Remove variables.
20648 (w32_pass_extra_mouse_buttons_to_system, w32_strict_fontnames)
20649 (w32_pass_multimedia_buttons_to_system, w32_strict_painting)
20650 (Vw32_charset_info_alist, w32_to_x_color, w32_init_class)
20651 (w32_createscrollbar, w32_createwindow, my_post_msg, w32_get_modifiers)
20652 (w32_grabbed_keys, cancel_all_deferred_msgs): Make static.
20653 (Fw32_define_rgb_color, Fw32_load_color_file)
20654 (syms_of_w32fns) <w32-pass-multimedia-buttons-to-system>:
20655 Fix typos in docstrings.
20656 (Fx_server_version): Reflow docstring.
20657 (Fw32_shell_execute): Doc fixes.
20658
20659 2007-11-13 Juanma Barranquero <lekktu@gmail.com>
20660
20661 * w32fns.c (Fw32_register_hot_key): Don't try to register hot key
20662 if w32_parse_hot_key returned nil.
20663
20664 2007-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
20665
20666 * xdisp.c (load_overlay_strings): Fix copy&paste typo.
20667
20668 2007-11-09 Jason Rumney <jasonr@gnu.org>
20669
20670 * s/ms-w32.c (USE_TOOLKIT_SCROLL_BARS): Define.
20671
20672 * w32term.c (w32_scroll_bar_handle_click): Use SCROLL_BAR_CLICK_EVENT.
20673
20674 * keyboard.c (discard_mouse_events, make_lispy_event) [WINDOWSNT]:
20675 Remove W32_SCROLL_BAR_CLICK_EVENT.
20676
20677 * termhooks.h (enum event_kind) [WINDOWSNT]: Likewise.
20678 Add MULTIMEDIA_KEY_EVENT.
20679
20680 * keyboard.c (lispy_function_keys) [WINDOWSNT]: Add more keys.
20681 (lispy_multimedia_keys) [WINDOWSNT]: New array.
20682 (make_lispy_event) [WINDOWSNT]: Use it to translate
20683 MULTIMEDIA_KEY_EVENT.
20684
20685 * w32term.h (WM_APPCOMMAND): Define if not already.
20686 (GET_APPCOMMAND_LPARAM): Likewise.
20687
20688 * w32term.c (w32_read_socket): Generate MULTIMEDIA_KEY_EVENT from
20689 WM_APPCOMMAND.
20690
20691 * w32fns.c (w32_pass_multimedia_buttons_to_system): New user option.
20692 (syms_of_w32fns): Export and initialize it.
20693 (w32_wnd_proc): Pass WM_APPCOMMAND on to w32_read_socket.
20694
20695 2007-11-09 Chong Yidong <cyd@stupidchicken.com>
20696
20697 * dispextern.h (struct it): Don't define OVERLAY_STRING_CHUNK_SIZE
20698 twice.
20699
20700 * xdisp.c (handle_face_prop): Fix last change.
20701
20702 2007-11-09 Richard Stallman <rms@gnu.org>
20703
20704 * xdisp.c (handle_face_prop): Test for strings that came from overlays,
20705 not just for after-strings and before-strings.
20706 Call face_for_overlay_string and pass the overlay to it.
20707 (handle_display_prop): Determine whether property came from an overlay.
20708 Pass OVERLAY arg to handle_single_display_spec.
20709 (handle_single_display_spec): New arg OVERLAY sets it->from_overlay.
20710 (load_overlay_strings): Fill in it->string_overlays.
20711 (get_overlay_strings_1, push_it, pop_it): Handle it->from_overlays.
20712
20713 * xfaces.c (face_for_overlay_string): Function renamed from
20714 face_at_buffer_position_no_overlays, and add arg OVERLAY.
20715
20716 * dispextern.h (struct it): New elt string_overlays.
20717 New elt from_overlay, also in stack.
20718 Rearrange a few elements.
20719 (face_for_overlay_string): Decl renamed from
20720 face_at_buffer_position_no_overlays, and add argument.
20721
20722 2007-11-09 Richard Stallman <rms@gnu.org>
20723
20724 * xdisp.c (handle_face_prop): Use face_at_buffer_position_no_overlays
20725 to get the base face for an overlay string.
20726
20727 * dispextern.h (face_at_buffer_position_no_overlays): Add decl.
20728
20729 * xfaces.c (face_at_buffer_position_no_overlays): New function.
20730
20731 * xdisp.c (handle_stop): Move some code out of loop.
20732
20733 2007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20734
20735 * macfns.c [USE_ATSUI] (Fmac_atsu_font_face_attributes):
20736 Fix conversion from Lisp object to ATSUFontID.
20737
20738 2007-11-09 Jason Rumney <jasonr@gnu.org>
20739
20740 * xdisp.c (Fformat_mode_line): Do nothing when noninteractive.
20741
20742 2007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20743
20744 * unexmacosx.c (unexec_regions_recorder, unexec_regions_merge):
20745 Don't assume regions are aligned to page boundary.
20746 (print_load_command_name): Add LC_UUID if defined.
20747
20748 2007-11-09 Richard Stallman <rms@gnu.org>
20749
20750 * emacs.c (syms_of_emacs) <installation-directory>: Reflow docstring.
20751
20752 2007-11-07 Jason Rumney <jasonr@gnu.org>
20753
20754 * s/windows95.h: Remove.
20755
20756 2007-11-06 Jan Djärv <jan.h.d@swipnet.se>
20757
20758 * gtkutil.c (xg_tool_bar_menu_proxy): Handle GTK_IMAGE_ICON_NAME and
20759 abort with a message on unhandled store_type values.
20760
20761 2007-11-01 Jan Djärv <jan.h.d@swipnet.se>
20762
20763 * xterm.c, xfns.c, xselect.c, xterm.h, s/msdos.h, s/sco4.h, s/sco5.h:
20764 Remove HAVE_X11R5 and HAVE_X11R4.
20765
20766 2007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
20767
20768 * Makefile.in: Remove references to sunfns.c and sunfns.o.
20769
20770 2007-11-01 Johan Bockgård <bojohan@gnu.org>
20771
20772 * macterm.c, w32term.c, xterm.c (x_draw_stretch_glyph_string):
20773 Don't set s->stippled_p here, since it has already been set by
20774 x_set_glyph_string_gc from x_draw_glyph_string.
20775
20776 2007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
20777
20778 * sunfns.c: Remove file.
20779
20780 * m/sun386.h:
20781 * m/sun2.h:
20782 * m/sparc.h: Remove Sun windows code.
20783
20784 2007-10-31 Stefan Monnier <monnier@iro.umontreal.ca>
20785
20786 * keyboard.c (syms_of_keyboard): Initialize the initial_kboard.
20787 (init_keyboard): Set current_kboard's window-system to nil.
20788 (tty_read_avail_input): Typo.
20789 * frame.c (make_initial_frame): Don't initialize the initial_kboard.
20790
20791 2007-10-31 Dan Nicolaescu <dann@ics.uci.edu>
20792
20793 * s/usg5-4.h:
20794 * s/usg5-3.h:
20795 * s/ptx.h:
20796 * m/is386.h:
20797 * m/ibmps2-aix.h:
20798 * Makefile.in: Remove all mentions of X10.
20799
20800 * dispnew.c (syms_of_display): Don't mention version 10.
20801
20802 2007-10-28 Juanma Barranquero <lekktu@gmail.com>
20803
20804 * makefile.w32-in (OBJ1): Remove abbrev.$(O).
20805 ($(BLD)/abbrev.$(O)): Remove.
20806
20807 2007-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
20808
20809 Rewrite abbrev.c in Elisp.
20810 * image.c (Qcount): Don't declare as extern.
20811 (syms_of_image): Initialize and staticpro `Qcount'.
20812 * puresize.h (BASE_PURESIZE): Increase for the new abbrev.el functions.
20813 * emacs.c (main): Don't call syms_of_abbrev.
20814 * Makefile.in (obj): Remove abbrev.o.
20815 (abbrev.o): Remove.
20816 * abbrev.c: Remove.
20817
20818 2007-10-26 Martin Rudalics <rudalics@gmx.at>
20819
20820 * window.c (window_min_size_2): Don't count header-line.
20821
20822 2007-10-26 Dan Nicolaescu <dann@ics.uci.edu>
20823
20824 * frame.h (struct frame): Move all bit fields after the first bit
20825 field to take advantage of the available space. Group all the
20826 chars together to reduce wasted space due to padding.
20827
20828 2007-10-26 Juanma Barranquero <lekktu@gmail.com>
20829
20830 * minibuf.c (Fread_minibuffer, Feval_minibuffer): Reflow docstrings.
20831
20832 * alloc.c (spare_memory, stack_copy, stack_copy_size, ignore_warnings)
20833 (Vdead, dont_register_blocks, staticvec, staticidx, interval_block)
20834 (n_interval_blocks, init_strings, check_string_bytes, check_sblock)
20835 (init_float, free_float, n_cons_blocks, init_cons, all_vectors)
20836 (n_vectors, symbol_block, symbol_block_index, symbol_free_list)
20837 (n_symbol_blocks, init_symbol, marker_block, marker_free_list)
20838 (n_marker_blocks, init_marker, valid_pointer_p, make_pure_float)
20839 (last_marked, mark_object_loop_halt): Make static.
20840
20841 * frame.c (syms_of_frame) <delete-frame-functions>:
20842 Fix typo in docstring.
20843
20844 2007-10-25 Juanma Barranquero <lekktu@gmail.com>
20845
20846 * w32.c (init_environment): Fix tiny memory leak.
20847 (w32_get_resource): Remove unused variable `ok'.
20848
20849 2007-10-25 Stefan Monnier <monnier@iro.umontreal.ca>
20850
20851 Make `window-system' into a keyboard-local variable (rather than
20852 frame-local as done originally by multi-tty).
20853
20854 * keyboard.h (struct kboard): Add Vwindow_system.
20855 * keyboard.c (init_kboard): Set a default for Vwindow_system.
20856 (mark_kboards): Mark Vwindow_system.
20857
20858 * dispnew.c (syms_of_display) <window-system>: Declare terminal-local.
20859 (init_display): Don't set the obsolete `window-system' frame-param.
20860
20861 * xterm.c (x_term_init):
20862 * w32term.c (w32_create_terminal):
20863 * term.c (init_tty): Set Vwindow_system.
20864 * macterm.c (mac_create_terminal): Set a keyboard (missing piece of the
20865 multi-tty merge maybe?), copied from w32term.c. Set Vwindow_system.
20866
20867 * xfns.c (Fx_create_frame, x_create_tip_frame):
20868 * w32fns.c (Fx_create_frame, x_create_tip_frame):
20869 * macfns.c (Fx_create_frame):
20870 Don't set the obsolete `window-system' frame-param.
20871
20872 * frame.h (Qwindow_system): Remove.
20873 * frame.c (Qwindow_system): Remove. In `syms_of_frame' as well.
20874 (Fmake_terminal_frame): Don't set obsolete `window-system' frame-param.
20875
20876 2007-10-24 Richard Stallman <rms@gnu.org>
20877
20878 * frame.c (x_figure_window_size): For fullscreen case,
20879 set USPosition | PPosition without clobbering rest of window_prompting.
20880
20881 * keyboard.c (Fcurrent_idle_time): Doc fix.
20882
20883 * print.c (Fwith_output_to_temp_buffer): Doc fix.
20884
20885 2007-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
20886
20887 * process.c (unwind_request_sigio): Only define if __ultrix__.
20888
20889 * callproc.c (child_setup): Remove spurious *.
20890
20891 * lisp.h (Fget_text_property): Declare.
20892 (have_menus_p): Declare it here rather than in sys-dep header files.
20893 * macterm.h (have_menus_p):
20894 * msdos.h (have_menus_p):
20895 * xterm.h (have_menus_p): Remove.
20896
20897 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
20898 (Fmake_variable_frame_local): Just check the variable's const-ness
20899 rather than checking nil or t.
20900
20901 2007-10-22 Jason Rumney <jasonr@gnu.org>
20902
20903 * w32fns.c: Include math.h.
20904 (w32_abort): Declaration moved to nt/config.nt.
20905
20906 * s/ms-w32.h (HAVE_STDLIB_H): Define.
20907 (abort): Redefinition moved to nt/config.nt.
20908
20909 * m/windowsnt.h: Remove.
20910
20911 2007-10-22 Juanma Barranquero <lekktu@gmail.com>
20912
20913 * emacs.c (Fdump_emacs): Fix typo in message.
20914 (syms_of_emacs) <kill-emacs-hook>: Fix typo in docstring.
20915 <installation-directory>: Reflow docstring.
20916
20917 2007-10-22 Juri Linkov <juri@jurta.org>
20918
20919 * minibuf.c: Allow minibuffer default to be a list of default values.
20920 With empty input use the first element of this list as returned default.
20921 (string_to_object)
20922 (read_minibuf_noninteractive): If defalt is cons, set val to its car.
20923 (read_minibuf): If defalt is cons, set histstring to its car.
20924 (Fread_string): If default_value is cons, set val to its car.
20925 (Fread_buffer): If def is cons, use its car.
20926 (Fcompleting_read): If defalt is cons, set val to its car.
20927
20928 2007-10-21 Michael Albinus <michael.albinus@gmx.de>
20929
20930 * fileio.c (Fcopy_file): Call file name handler with preserve_uid_gid.
20931
20932 2007-10-20 Juanma Barranquero <lekktu@gmail.com>
20933
20934 * doc.c (Fdocumentation): Check for advice in all cases.
20935
20936 2007-10-19 Chong Yidong <cyd@stupidchicken.com>
20937
20938 * Makefile.in [HAVE_LIBRESOLV]: Add -lresolv to linker flags.
20939
20940 2007-10-19 Richard Stallman <rms@gnu.org>
20941
20942 * doc.c (Fdocumentation): Check for and handle an advised function.
20943
20944 2007-10-19 Juanma Barranquero <lekktu@gmail.com>
20945
20946 * process.c (Fset_process_filter): Doc fix.
20947
20948 2007-10-18 Stefan Monnier <monnier@iro.umontreal.ca>
20949
20950 * keyboard.c (read_key_sequence): Undo a change introduced by multi-tty
20951 which caused key-translation-map to applied repeatedly (thus breaking
20952 double-mode).
20953
20954 2007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
20955
20956 * xselect.c (x_own_selection, x_handle_selection_clear)
20957 (x_clear_frame_selections):
20958 * w32menu.c (list_of_panes, list_of_items):
20959 * w32fns.c (w32_color_map_lookup, Fx_create_frame, Fx_display_list):
20960 * textprop.c (validate_plist, interval_has_all_properties)
20961 (interval_has_some_properties, interval_has_some_properties_list)
20962 (add_properties, text_property_list):
20963 * process.c (Fget_buffer_process, list_processes_1, status_notify):
20964 * minibuf.c (Fassoc_string):
20965 * macselect.c (x_own_selection, x_clear_frame_selections)
20966 (Fx_disown_selection_internal):
20967 * keymap.c (Fcommand_remapping, where_is_internal, describe_map_tree):
20968 Use CONSP rather than !NILP and XC[AD]R rather than Fc[ad]r.
20969
20970 2007-10-17 Chong Yidong <cyd@stupidchicken.com>
20971
20972 * process.c: Link to libs for calling res_init() if available.
20973 (Fmake_network_process): Call res_init() before getaddrinfo or
20974 gethostbyname, if possible.
20975
20976 2007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
20977
20978 * lread.c (read1): Set pvectype for char_tables.
20979
20980 * lisp.h (XMISCANY, XMARKER, XINTFWD, XBOOLFWD, XOBJFWD, XOVERLAY)
20981 (XBUFFER_OBJFWD, XBUFFER_LOCAL_VALUE, XKBOARD_OBJFWD, XSAVE_VALUE):
20982 Add type checks.
20983 (SOME_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP): Remove.
20984
20985 * alloc.c (free_misc): Use XMISCTYPE.
20986 (live_misc_p, gc_sweep): Use Lisp_Misc_Any.
20987
20988 2007-10-17 Glenn Morris <rgm@gnu.org>
20989
20990 * minibuf.c (Qcompletion_ignore_case): New Lisp_Object.
20991 (syms_of_minibuf): Add Qcompletion_ignore_case.
20992 * dired.c (Qcompletion_ignore_case): Change to external.
20993 (syms_of_dired) [VMS]: Remove Qcompletion_ignore_case.
20994 * fileio.c (Qcompletion_ignore_case): New external Lisp_Object.
20995 (Fread_file_name): Use it rather than intern'ing.
20996
20997 * coding.c (Qcompletion_ignore_case): New external Lisp_Object.
20998 (Fread_coding_system): Ignore case of user input.
20999
21000 2007-10-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21001
21002 * xdisp.c (handle_display_prop): Ignore display specs after
21003 replacing one when string text is being replaced.
21004 (handle_single_display_spec): Pretend as if characters with display
21005 property haven't been consumed only when buffer text is being replaced.
21006
21007 2007-10-16 Stefan Monnier <monnier@iro.umontreal.ca>
21008
21009 * xfns.c (Fx_create_frame, Fx_display_list):
21010 * window.c (window_fixed_size_p, enlarge_window)
21011 (shrink_window_lowest_first):
21012 * macterm.c (init_font_name_table):
21013 * macfns.c (Fx_create_frame, Fx_display_list):
21014 * lread.c (close_load_descs):
21015 * keyboard.c (read_char_x_menu_prompt):
21016 * fns.c (Fmember, Fmemql, Fdelete, Fset_char_table_parent):
21017 * coding.c (code_convert_region_unwind): Test the type of an object
21018 rather than just !NILP before extracting data from it.
21019
21020 * alloc.c (Fpurecopy): Set the pvec tag on pseudo vectors.
21021
21022 * lisp.h (enum Lisp_Misc_Type): Del Lisp_Misc_Some_Buffer_Local_Value.
21023 (XMISCANY): New macro.
21024 (XMISCTYPE): Use it.
21025 (struct Lisp_Misc_Any): New type.
21026 (union Lisp_Misc): Use it.
21027 (struct Lisp_Buffer_Local_Value): Add `local_if_set' bit.
21028 * data.c (Fboundp, store_symval_forwarding, swap_in_global_binding)
21029 (find_symbol_value, set_internal, default_value, Fset_default)
21030 (Fmake_variable_buffer_local, Fmake_local_variable)
21031 (Fkill_local_variable, Fmake_variable_frame_local, Flocal_variable_p)
21032 (Flocal_variable_if_set_p, Fvariable_binding_locus):
21033 The SOME_BUFFER_LOCAL_VALUEP distinction is replaced by local_if_set.
21034 * alloc.c (allocate_buffer): Set the size and tag.
21035 (allocate_misc, mark_maybe_object, mark_object, survives_gc_p):
21036 Use XMISCANY.
21037 (die): Follow the GNU convention for error messages.
21038 * print.c (print_object): SOME_BUFFER_LOCAL_VALUEP -> local_if_set.
21039 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Don't set the
21040 tag any more.
21041 (set_buffer_internal_1):
21042 * frame.c (store_frame_param):
21043 * eval.c (specbind):
21044 * xdisp.c (select_frame_for_redisplay): Drop SOME_BUFFER_LOCAL_VALUEP.
21045
21046 * doc.c (Fsnarf_documentation): Simplify.
21047
21048 2007-10-14 Juanma Barranquero <lekktu@gmail.com>
21049
21050 * w32term.c (w32_font_is_double_byte, my_create_scrollbar): Make static.
21051 (syms_of_w32term) <w32-enable-unicode-output>: Fix typo in docstring.
21052
21053 2007-10-14 Stefan Monnier <monnier@iro.umontreal.ca>
21054
21055 * buffer.c (Fmake_indirect_buffer): Set the buffer's tag.
21056
21057 2007-10-14 Juanma Barranquero <lekktu@gmail.com>
21058
21059 * eval.c (do_autoload): Don't save autoloads.
21060
21061 * data.c (Ffset): Save autoload of the function being set.
21062
21063 2007-10-07 John Paul Wallington <jpw@pobox.com>
21064
21065 * xfns.c (x_create_tip_frame): Set the `display-type' frame
21066 parameter before setting up faces.
21067
21068 2007-10-13 Eli Zaretskii <eliz@gnu.org>
21069
21070 * ccl.c (Fregister_code_conversion_map):
21071 * keyboard.c (append_tool_bar_item): Reformat last change.
21072
21073 * lisp.h (eabs): Rename from `abs'. All callers changed.
21074
21075 2007-10-05 Dmitry Antipov <dmantipov@yandex.ru>
21076
21077 * buffer.c (add_overlay_mod_hooklist):
21078 * ccl.c (Fregister_ccl_program, Fregister_code_conversion_map):
21079 * fontset.c (make_fontset):
21080 * keyboard.c (GROW_RAW_KEYBUF, menu_bar_items, menu_bar_item)
21081 (append_tool_bar_item):
21082 * macmenu.c (grow_menu_items):
21083 * w32menu.c (grow_menu_items):
21084 * xmenu.c (grow_menu_items): Use larger_vector.
21085
21086 2007-10-13 Eli Zaretskii <eliz@gnu.org>
21087
21088 * msdos.c (dos_rawgetc): Undo last change (there's no ``leaving
21089 selected frame'' on MSDOS).
21090
21091 2007-10-12 Martin Rudalics <rudalics@gmx.at>
21092
21093 * frame.c (Qexplicit_name): New variable.
21094 (x_report_frame_params): Report it in parameter alist.
21095 (syms_of_frame): Intern and staticpro it.
21096
21097 2007-10-10 Patrick Mahan <mahan@mahan.org> (tiny change)
21098
21099 * macfns.c (x_create_tip_frame): Set terminal for frame.
21100
21101 2007-10-10 Stefan Monnier <monnier@iro.umontreal.ca>
21102
21103 * frame.c (Qenvironment): Remove.
21104 (syms_of_frame) <Qenvironment>: Don't initialize.
21105 (Fdelete_frame): Don't treat the `environment' param specially.
21106 * frame.h (Qenvironment): Don't declare.
21107 * callproc.c (set_initial_environment): Don't set unused frame param.
21108
21109 * frame.c (Fframe_with_environment): Remove.
21110 (syms_of_frame) <Sframe_with_environment>: Don't declare.
21111
21112 * lisp.h (Fframe_with_environment): Don't declare.
21113
21114 2007-10-10 Juanma Barranquero <lekktu@gmail.com>
21115
21116 * indent.c (indent_tabs_mode, last_known_column)
21117 (last_known_column_modified): Make static.
21118 (syms_of_indent) <indent-tabs-mode>: Remove redundant info in docstring.
21119
21120 2007-10-10 Katsumi Yamaoka <yamaoka@jpl.org>
21121
21122 * puresize.h (BASE_PURESIZE): Increase to 1170000.
21123
21124 2007-10-09 Jason Rumney <jasonr@gnu.org>
21125
21126 * w32term.c (x_set_window_size): Disable code that attempts to tell
21127 Lisp code about a size change before it actually happens.
21128
21129 2007-10-09 Richard Stallman <rms@gnu.org>
21130
21131 * xdisp.c (handle_invisible_prop): After setting up an ellipsis,
21132 return HANDLED_RETURN.
21133
21134 2007-10-08 Martin Rudalics <rudalics@gmx.at>
21135
21136 * keyboard.c (kbd_buffer_get_event): Break loop waiting for input
21137 when there's an unread command event.
21138
21139 * frame.c (focus_follows_mouse): Move here from frame.el to allow
21140 window autoselection act appropriately when leaving selected frame.
21141 (syms_of_frame): Initialize focus_follows_mouse.
21142 * frame.h (focus_follows_mouse): Extern it.
21143 * macterm.c (XTread_socket): When focus_follows_mouse is nil
21144 make SELECT_WINDOW_EVENT only if we don't leave the selected frame.
21145 * msdos.c (dos_rawgetc): Likewise.
21146 * w32term.c (w32_read_socket): Likewise.
21147 * xterm.c (handle_one_xevent): Likewise.
21148 * xdisp.c (syms_of_xdisp): In doc-string of
21149 mouse-autoselect-window mention focus-follows-mouse.
21150
21151 2007-10-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21152
21153 * macterm.c (mac_load_query_font): Fix missing return value.
21154 [USE_CG_DRAWING] (mac_define_fringe_bitmap, mac_destroy_fringe_bitmap):
21155 Add BLOCK_INPUT.
21156
21157 2007-10-08 Richard Stallman <rms@gnu.org>
21158
21159 * xdisp.c (get_window_cursor_type): Implement documented behavior
21160 for cursor-in-non-selected-windows = t.
21161
21162 2007-10-08 Jason Rumney <jasonr@gnu.org>
21163
21164 * w32.c (w32_get_resource): Always close registry keys.
21165
21166 2007-10-08 Jason Rumney <jasonr@gnu.org>
21167
21168 * makefile.w32-in (LIBS): Add COMCTL32.
21169
21170 * w32fns.c (globals_of_w32fns): Init common controls.
21171
21172 2007-10-08 Richard Stallman <rms@gnu.org>
21173
21174 * image.c (our_memory_buffer): Rename from omfib_buffer.
21175
21176 2007-10-08 Richard Stallman <rms@gnu.org>
21177
21178 * buffer.c (Foverlays_at): Doc fix.
21179
21180 2007-10-08 Stefan Monnier <monnier@iro.umontreal.ca>
21181
21182 * fns.c (Fplist_put): Preserve uneven tail data.
21183
21184 2007-10-08 Peter O'Gorman <bug-gnu-emacs@mlists.thewrittenword.com> (tiny change)
21185
21186 * termhooks.h (enum event_kind): Remove trailing comma.
21187
21188 * frame.h (enum): Remove trailing comma.
21189
21190 2007-10-08 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
21191
21192 * w32proc.c (delete_child): Don't terminate threads of zombies.
21193
21194 2007-10-08 Martin Rudalics <rudalics@gmx.at>
21195
21196 * keyboard.h (struct kboard): New elt Vlast_repeatable_command.
21197
21198 * keyboard.c (syms_of_keyboard): Set up new Lisp variable
21199 last-repeatable-command.
21200 (init_kboard): Initialize Vlast_repeatable_command.
21201 (command_loop_1): Set it to real_this_command unless that was
21202 bound to an input event.
21203 (mark_kboards): Mark it.
21204
21205 2007-10-08 Richard Stallman <rms@gnu.org>
21206
21207 * eval.c (condition-case): Doc fix.
21208
21209 2007-10-08 Masatake YAMATO <jet@gyve.org>
21210
21211 * xfaces.c (tty_supports_face_attributes_p): Fix code
21212 for LFACE_INVERSE_INDEX and LFACE_BACKGROUND_INDEX; code
21213 was copied and not edited.
21214
21215 2007-10-09 Stefan Monnier <monnier@iro.umontreal.ca>
21216
21217 Add new `input-decode-map' keymap and use it for terminal
21218 escape sequences.
21219 * keyboard.h (struct kboard): Add Vinput_decode_map.
21220 Remove Vlocal_key_translation_map.
21221 * keyboard.c (read_key_sequence): Add support for input-decode-map.
21222 (init_kboard): Init input-decode-map.
21223 Replace local-key-translation-map back with key-translation-map.
21224 (syms_of_keyboard): Declare input-decode-map.
21225 Remove local-key-translation-map. Update docstrings.
21226 (mark_kboards): Mark Vinput_decode_map.
21227 Don't mark Vlocal_key_translation_map.
21228 * keymap.c (Fdescribe_buffer_bindings): Describe input-decode-map.
21229 Replace local-key-translation-map back with key-translation-map.
21230 * term.c (term_get_fkeys_1, CONDITIONAL_REASSIGN):
21231 Bind in input-decode-map rather than function-key-map.
21232
21233 * lisp.h (XSETPSEUDOVECTOR): Don't set the tag anymore.
21234 This was made redundant by the previous introduction of XSETPVECTYPE.
21235
21236 2007-10-09 Richard Stallman <rms@gnu.org>
21237
21238 * image.c (free_bitmap_record): Rename from Free_Bitmap_Record.
21239
21240 2007-09-29 Richard Stallman <rms@gnu.org>
21241
21242 * eval.c (internal_condition_case_2, internal_condition_case_1)
21243 (internal_condition_case): Reenable abort if x_catching_errors ()
21244 to see if that really happens and why.
21245
21246 2007-10-06 Andreas Schwab <schwab@suse.de>
21247
21248 * fileio.c (Fwrite_region): Ignore EINVAL error from fsync.
21249
21250 2007-10-04 Juanma Barranquero <lekktu@gmail.com>
21251
21252 * image.c (syms_of_image) <image-types>: Fix typo in docstring.
21253
21254 2007-10-03 Stefan Monnier <monnier@iro.umontreal.ca>
21255
21256 * frame.h (struct frame): Don't try to GC-mark menu_bar_items_used.
21257
21258 2007-10-02 Stefan Monnier <monnier@iro.umontreal.ca>
21259
21260 * window.h (struct window):
21261 * window.c (struct save_window_data, struct saved_window):
21262 * termhooks.h (struct terminal):
21263 * process.h (struct Lisp_Process):
21264 * frame.h (struct frame):
21265 * buffer.h (struct buffer):
21266 * lisp.h (struct Lisp_Vector, struct Lisp_Char_Table)
21267 (struct Lisp_Bool_Vector, struct Lisp_Subr, struct Lisp_Hash_Table):
21268 The size field of (pseudo)vectors is now unsigned.
21269 (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Simplify accordingly.
21270
21271 * lisp.h (struct Lisp_Hash_Table): Move non-traced elements at the end.
21272 Turn `count' into an integer.
21273
21274 * fns.c (make_hash_table, hash_put, hash_remove, hash_clear)
21275 (sweep_weak_table, sweep_weak_hash_tables, Fhash_table_count):
21276 * print.c (print_object) <HASH_TABLE_P>: `count' is an int.
21277 * alloc.c (allocate_hash_table): Use ALLOCATE_PSEUDOVECTOR.
21278 (mark_object) <HASH_TABLE_P>: Use mark_vectorlike.
21279
21280 * alloc.c (allocate_pseudovector): New fun.
21281 (ALLOCATE_PSEUDOVECTOR): New macro.
21282 (allocate_window, allocate_terminal, allocate_frame)
21283 (allocate_process): Use it.
21284 (mark_vectorlike): New function.
21285 (mark_object) <FRAMEP, WINDOWP, BOOL_VECTOR_P, VECTORP>: Use it.
21286 (mark_terminals): Use it.
21287 (Fmake_bool_vector, Fmake_char_table, make_sub_char_table)
21288 (Fmake_byte_code): Use XSETPVECTYPE.
21289
21290 * frame.c (Fframe_parameters): Minor simplification.
21291
21292 * insdel.c (adjust_markers_for_insert): Generalize assertion checks.
21293
21294 * marker.c (Fmarker_buffer): Make test for odd case into a failure.
21295
21296 * buffer.c (Fget_buffer_create, init_buffer_once):
21297 * lread.c (defsubr):
21298 * window.c (Fcurrent_window_configuration): Use XSETPVECTYPE.
21299
21300 * lisp.h (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Don't let them be
21301 defined differently in the m/*.h files.
21302 (XCHAR_TABLE, XBOOL_VECTOR): Add assertion checking.
21303 (XSETPVECTYPE): New macro.
21304 (XSETPSEUDOVECTOR): Use it.
21305
21306 * buffer.c (syms_of_buffer) <local-abbrev-table>: Move from abbrev.c.
21307 (DEFVAR_PER_BUFFER, defvar_per_buffer): Move from lisp.h and lread.c.
21308
21309 * lisp.h (defvar_per_buffer, DEFVAR_PER_BUFFER):
21310 * lread.c (defvar_per_buffer):
21311 * abbrev.c (syms_of_abbrev) <local-abbrev-tabl>: Move to buffer.c.
21312
21313 * window.c (candidate_window_p): Only consider as visible frames that
21314 are on the same terminal.
21315
21316 * m/ibms390x.h (MARKBIT): Remove unused macro.
21317
21318 2007-10-01 Juanma Barranquero <lekktu@gmail.com>
21319
21320 * lread.c (Fload): Fix typo in docstring.
21321
21322 2007-10-01 Michaël Cadilhac <michael@cadilhac.name>
21323
21324 * floatfns.c (Fexpt): Manually check for overflows, so that a power
21325 of a non-zero value can't yield zero.
21326
21327 2007-09-29 Stefan Monnier <monnier@iro.umontreal.ca>
21328
21329 * term.c (term_clear_mouse_face, term_mouse_highlight)
21330 (tty_write_glyphs_with_face): Only define is HAVE_GPM.
21331
21332 * print.c (safe_debug_print): Use XHASH.
21333
21334 * lisp.h (DECL_ALIGN, USE_LSB_TAG): Move logic to before definition of
21335 Lisp elements such as tags.
21336 (XHASH): New macro.
21337 (EQ): Use it.
21338 (SREF, SSET, STRING_COPYIN): Use SDATA.
21339 (VOID_TO_LISP, CVOID_TO_LISP, LISP_TO_VOID, LISP_TO_CVOID): Remove.
21340
21341 * alloc.c (mark_terminal): Remove left-over declaration.
21342 (enum mem_type): Replace all vector subtypes -> MEM_TYPE_VECTORLIKE.
21343 (allocate_vectorlike): Remove type argument. Adjust callers.
21344 (live_vector_p, mark_maybe_pointer, valid_lisp_object_p):
21345 Only handle the one remaining MEM_TYPE_VECTORLIKE.
21346
21347 * alloc.c (MALLOC_BLOCK_INPUT, MALLOC_UNBLOCK_INPUT): New macros
21348 to avoid unnecessary BLOCK_INPUTs when SYNC_INPUT is used.
21349 (xmalloc, xrealloc, xfree, lisp_malloc, lisp_free, lisp_align_malloc)
21350 (lisp_align_free, make_interval, allocate_string, allocate_string_data)
21351 (make_float, Fcons, allocate_vectorlike, Fmake_symbol, allocate_misc):
21352 Use them.
21353
21354 * xfaces.c (load_face_font, free_realized_face, clear_face_gcs):
21355 Don't let signal handlers run when a GC is freed but not yet NULL'ed.
21356 (x_free_gc): Remove BLOCK_INPUT since it's now redundant.
21357
21358 2007-09-28 Dan Nicolaescu <dann@ics.uci.edu>
21359
21360 * Makefile.in (lisp, shortlisp): Delete server.elc, it is not
21361 loaded by default.
21362
21363 2007-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
21364
21365 * term.c (Fgpm_mouse_start): Don't signal an error if already activated
21366 on this tty.
21367 (Fgpm_mouse_stop): Only deactivate if it was activated on this tty.
21368
21369 * term.c (mouse_face_window): Rename from Qmouse_face_window.
21370 Update all users.
21371 (handle_one_term_event): Use Gpm_DrawPointer.
21372 (Fgpm_mouse_start): Rename from Fterm_open_connection.
21373 Signal errors instead of returning nil. Always return nil.
21374 (Fgpm_mouse_stop): Rename from Fterm_close_connection.
21375 Make it a noop if gpm-mouse was not activated.
21376 (syms_of_term): Update names.
21377
21378 2007-09-27 Stefan Monnier <monnier@iro.umontreal.ca>
21379
21380 * sysdep.c (narrow_foreground_group, widen_foreground_group): Static.
21381 (init_sys_modes): Check that gpm_tty is the current tty.
21382
21383 * alloc.c (allocate_terminal): Set the vector size to only count the
21384 lisp fields. Initialize those to nil.
21385 (mark_object): Don't treat terminals specially.
21386 (mark_terminal): Remove.
21387 (mark_terminals): Use mark_object instead.
21388
21389 * termhooks.h (struct terminal): Move all Lisp_Object fields traced by
21390 the GC to the beginning.
21391
21392 * indent.h:
21393 * indent.c: Use EMACS_INT for ints coming from Elisp data.
21394
21395 * indent.c (Fmove_to_column): Use EMACS_INT for buffer positions.
21396
21397 2007-09-25 Jason Rumney <jasonr@gnu.org>
21398
21399 * frame.c (make_terminal_frame): Remove special case for WINDOWSNT.
21400
21401 * w32console.c (create_w32cons_output): Remove.
21402
21403 * term.c (init_tty): Call init_sys_modes on WINDOWSNT also.
21404
21405 * sysdep.c (init_sys_modes): Use set_terminal_modes_hook.
21406 (reset_sys_modes): Use reset_terminal_modes_hook.
21407
21408 2007-09-24 Stefan Monnier <monnier@iro.umontreal.ca>
21409
21410 * eval.c (do_autoload): Don't output any message.
21411
21412 2007-09-24 Juri Linkov <juri@jurta.org>
21413
21414 * emacs.c (standard_args): Change priority of "--no-splash"
21415 from 40 to 3. Add "--no-desktop" with the same priority.
21416
21417 2007-09-23 Dmitry Antipov <dmantipov@yandex.ru>
21418
21419 * alloc.c (gc_sweep): Check cons cell mark bits word by word
21420 and optimize the case where they are all 1.
21421
21422 2007-09-23 Johannes Weiner <hannes@saeurebad.de>
21423
21424 * lisp.h (abs): Define if not defined.
21425 * keyboard.c, sound.c, w32term.c, xfaces.c, xterm.c:
21426 Don't define `abs', since it's defined in lisp.h.
21427
21428 2007-09-22 Eli Zaretskii <eliz@gnu.org>
21429
21430 * term.c (DEV_TTY): New macro. Provide a definition for MS-Windows.
21431 (FRAME_TERMCAP_P) [WINDOWSNT]: Don't define to zero.
21432 (Fcontrolling_tty_p, Fresume_tty, dissociate_if_controlling_tty)
21433 (init_tty): Use DEV_TTY instead of "/dev/tty".
21434 [WINDOWSNT]: No need to protect from NAME arg being null.
21435
21436 2007-09-21 Dan Nicolaescu <dann@ics.uci.edu>
21437
21438 * term.c (Fsuspend_tty): Run suspend-tty-functions before cleaning
21439 up the tty state.
21440
21441 2007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
21442
21443 * termhooks.h (term_gpm): Delete. Use gpm_tty's NULLness instead.
21444 (gpm_tty): Change its type.
21445 * term.c (term_gpm): Delete. Use gpm_tty's NULLness instead.
21446 (gpm_tty): Change its type and initialize it.
21447 (Fterm_open_connection): Check the frame is indeed a tty.
21448 Use the new gpm_tty.
21449 (Fterm_close_connection): Use the new gpm_tty.
21450 * keyboard.c (tty_read_avail_input): Use the new gpm_tty.
21451 * sysdep.c (init_sys_modes): term_gpm -> gpm_tty.
21452
21453 2007-09-21 Juanma Barranquero <lekktu@gmail.com>
21454
21455 * w32term.c (x_draw_glyph_string): Use strike_through_color, not
21456 underline_color, to draw strike-through.
21457
21458 2007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
21459
21460 * lisp.h (allocate_terminal): Declare.
21461
21462 * window.c (candidate_window_p): Consider frames that are being placed
21463 by the user as somewhere between visible and iconified.
21464 (window_loop): Prefer windows on the current frame.
21465 (Fselect_window): Move the use of select-frame to the beginning so we
21466 can just delegate all the work (it'll call us back anyway).
21467
21468 * frame.c (Qdisplay_environment_variable):
21469 * frame.h (Qdisplay_environment_variable): Delete.
21470
21471 * .gdbinit (xbacktrace): Print the arg's address rather than the value
21472 of the first arg, since that value may be a union.
21473
21474 * callproc.c (child_setup, getenv_internal): Use the frame's `display'
21475 parameter rather than Qdisplay_environment_variable. If all else
21476 fails, look for DISPLAY in initial-environment.
21477
21478 2007-09-21 Glenn Morris <rgm@gnu.org>
21479
21480 * Makefile.in (emacstool): Remove target.
21481 (lisp, shortlisp): Remove termdev.elc.
21482
21483 2007-09-21 Markus Triska <markus.triska@gmx.at>
21484
21485 * xterm.c (x_delete_display): Compile session management conditionally.
21486
21487 2007-09-20 Stefan Monnier <monnier@iro.umontreal.ca>
21488
21489 * callproc.c (getenv_internal_1): New function.
21490 (getenv_internal): Use it.
21491 (Fgetenv_internal): Use it. Accept an env-list as optional arg.
21492
21493 * terminal.c (get_terminal): Don't accept ints to represent terminals.
21494 (Fterminal_name, Fterminal_parameters, Fterminal_parameter)
21495 (Fset_terminal_parameter): Work with dead terminals as well.
21496 (Fmodify_terminal_parameters): Remove.
21497
21498 * terminal.c (get_terminal): Handle terminals.
21499 Make sure the terminal returned is live.
21500 (create_terminal): Use allocate_terminal.
21501 (mark_terminals): Move to alloc.c.
21502 (delete_terminal): Use terminal->name as liveness status.
21503 NULL out fields after freeing their contents.
21504 Don't deallocate the object.
21505 (Fframe_terminal): Use FRAME_TERMINAL. Return the terminal object
21506 rather than an int.
21507 (Fterminal_live_p): Accept non-integer arguments.
21508 (Fterminal_list): Return terminal objects rather than an ints.
21509
21510 * alloc.c (enum mem_type): New member for `terminal' objects.
21511 (allocate_terminal): New function.
21512 (mark_maybe_pointer, valid_lisp_object_p, mark_object):
21513 Handle terminals.
21514 (mark_terminal): New fun.
21515 (mark_terminals): Move from terminal.c.
21516
21517 * term.c (get_tty_terminal): Don't treat output_initial specially.
21518 (Fsuspend_tty, Fresume_tty): Use terminal objects rather than ints.
21519 (delete_tty): Use terminal->name as liveness status.
21520
21521 * termhooks.h (struct terminal): Make it into a pseudovector.
21522 Remove `deleted' replaced by checking `name's nullness.
21523
21524 * print.c (print_object): Handle terminals.
21525
21526 * lisp.h (enum pvec_type): New `terminal' pseudovector.
21527 (XTERMINAL, XSETTERMINAL, TERMINALP, GC_TERMINALP): New macros.
21528
21529 * frame.c (make_terminal_frame):
21530 * keyboard.c (tty_read_avail_input):
21531 * w32term.c (x_delete_terminal):
21532 * xfns.c (Fx_create_frame, x_create_tip_frame):
21533 * xterm.c (x_delete_terminal): Use terminal->name as liveness status.
21534
21535 2007-09-20 Glenn Morris <rgm@gnu.org>
21536
21537 * process.c (Fmake_network_process): Doc fix.
21538
21539 2007-09-19 Jason Rumney <jasonr@gnu.org>
21540
21541 * dispextern.h (w32_init_fringe, mac_init_fringe): Declare rif argument.
21542
21543 2007-09-19 Michaël Cadilhac <michael@cadilhac.name>
21544
21545 * coding.c (detect_eol_type, detect_eol_type_in_2_octet_form):
21546 Fix a C warning regarding variable constness.
21547
21548 * xterm.c (handle_one_xevent): Fix a C warning.
21549
21550 2007-09-18 Jason Rumney <jasonr@gnu.org>
21551
21552 * w32fns.c (Fx_focus_frame): Rename from Fw32_focus_frame.
21553
21554 2007-09-17 Jan Djärv <jan.h.d@swipnet.se>
21555
21556 * gtkutil.c (gdpy_def): New variable.
21557 (xg_initialize): Initialize gdpy_def.
21558 (xg_display_close): If no other display exists, set gdpy_def to a
21559 new connection.
21560
21561 2007-09-16 Jan Djärv <jan.h.d@swipnet.se>
21562
21563 * gtkutil.c (xg_get_image_for_pixmap): Always create a GdkPixbuf
21564 when we have no file name for the icon.
21565 (xg_tool_bar_expose_callback): Remove.
21566 (xg_create_tool_bar): Don't connect expose signal to
21567 xg_tool_bar_expose_callback.
21568 (xg_get_file_with_chooser): Move GCPRO1 after declarations.
21569
21570 2007-09-16 Andreas Schwab <schwab@suse.de>
21571
21572 * alloc.c (reset_malloc_hooks): Set the hooks to the previous
21573 values instead of zapping them.
21574
21575 2007-09-14 Glenn Morris <rgm@gnu.org>
21576
21577 * fringe.c (init_fringe_bitmap) <swap_nibble>: Move to file scope.
21578 * gtkutil.c (xg_separator_p) <separator_names>: Move to file scope.
21579 * image.c (our_memory_fill_input_buffer) <buffer>: Move to file
21580 scope and rename to omfib_buffer for clarity.
21581 (gif_load) <interlace_start, interlace_increment>: Move to file scope.
21582
21583 2007-09-14 Kenichi Handa <handa@m17n.org>
21584
21585 * xterm.c (handle_one_xevent): Skip decoding if nbytes is zero.
21586
21587 2007-09-13 Jason Rumney <jasonr@gnu.org>
21588
21589 * fringe.c (w32_init_fringe, mac_init_fringe): Add rif argument.
21590
21591 * w32term.c (w32_term_init): Pass rif to w32_init_fringe.
21592
21593 * macterm.c (mac_initialize): Don't call mac_init_fringe here.
21594 (mac_term_init): Call here instead, passing rif.
21595
21596 2007-09-13 Glenn Morris <rgm@gnu.org>
21597
21598 * s/hpux.h: No longer define `static' as nothing.
21599
21600 2007-09-13 Johan Bockgård <bojohan@gnu.org>
21601
21602 * callint.c (Fcall_interactively): Remove unused var `fun'.
21603
21604 2007-09-12 Romain Francoise <romain@orebokech.com>
21605
21606 * window.c (prefer_window_split_horizontally, display_buffer):
21607 Revert 2007-09-08 change.
21608
21609 2007-09-12 Glenn Morris <rgm@gnu.org>
21610
21611 * alloca.c: Remove file.
21612 * Makefile.in (alloca): Do not undef.
21613 (allocaobj, alloca.o): Remove.
21614 (otherobj): Remove allocaobj.
21615 * keyboard.c (command_loop_1): Remove #ifdef C_ALLOCA block.
21616 * regex.c (C_ALLOCA): Remove all references and code that was only
21617 used when this was defined.
21618 * search.c (boyer_moore): Remove #ifdef C_ALLOCA block.
21619 * xmenu.c (xmenu_show): Remove #ifdef C_ALLOCA block.
21620 * m/ibms390x.h, m/sh3el.h (C_ALLOCA): Remove references to this.
21621
21622 * Makefile.in (SOURCES, unlock, relock): Delete.
21623
21624 * gtkutil.c (cnt): Rename to menu_grab_callback_cnt for clarity.
21625 (menu_grab_callback): All uses changed.
21626
21627 * xselect.c (cnt): Rename to x_reply_selection_request_cnt for clarity.
21628 (x_reply_selection_request): All uses changed.
21629
21630 2007-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
21631
21632 * lread.c (load_warn_old_style_backquotes): Change message to look
21633 better when it appears in the middle of byte-compiler messages.
21634
21635 2007-09-10 Dan Nicolaescu <dann@ics.uci.edu>
21636
21637 * s/darwin.h (MULTI_KBOARD): Only define for Carbon.
21638
21639 * xterm.c (x_create_terminal): Add comment.
21640
21641 * term.c (clear_tty_hooks, set_tty_hooks): Add comments.
21642
21643 2007-09-10 Richard Stallman <rms@gnu.org>
21644
21645 * xterm.c (x_term_init): Give error if can't open DISPLAY_NAME.
21646
21647 2007-09-10 Michaël Cadilhac <michael@cadilhac.name>
21648
21649 * lisp.h (struct Lisp_Subr): Rename `prompt' field to `intspec'.
21650 (DEFUN): Document `intspec', use it instead of `prompt'.
21651
21652 * eval.c (Fcommandp): Change `->prompt' to `->intspec'.
21653
21654 * data.c (Finteractive_form): If the interactive specification starts
21655 with a `(', use it as a Lisp form.
21656
21657 * fileio.c (Fset_file_modes): Add an interactive spec that reads a file
21658 name and file modes.
21659
21660 * callint.c (Fcall_interactively): Comment fixes.
21661
21662 2007-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
21663
21664 * callint.c (Fcall_interactively): Use Finteractive_form also for subrs
21665 and compiled functions.
21666
21667 2007-09-08 Fredrik Axelsson <f.axelsson@gmail.com>
21668
21669 * window.c (prefer_window_split_horizontally): New variable.
21670 (display_buffer): Consider splitting window horizontally depending
21671 on prefer_window_split_horizontally.
21672
21673 2007-09-08 Eli Zaretskii <eliz@gnu.org>
21674
21675 * sysdep.c [WINDOWSNT]: Don't include sysselect.h.
21676
21677 2007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
21678
21679 * s/cygwin.h (GC_MARK_STACK): Enable conservative stack marking.
21680
21681 * frame.c (x_set_frame_parameters): Check number is positive before
21682 using XFASTINT.
21683
21684 * window.c (freeze_window_start): Don't presume selected_window holds
21685 a window object.
21686 (Fdisplay_buffer): Remove `register' since `buffer' needs to be gcpro'd.
21687
21688 2007-09-07 Angelo Graziosi <Angelo.Graziosi@roma1.infn.it> (tiny change)
21689
21690 * term.c (dissociate_if_controlling_tty): Call setsid on CYGWIN.
21691
21692 2007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
21693
21694 * window.c (Vsplit_window_preferred_function): New var.
21695 (Fdisplay_buffer): Use it.
21696 (syms_of_window): Export, and initialize it.
21697
21698 2007-09-06 Pixel <pixel@mandriva.com> (tiny change)
21699
21700 * image.c (gif_load): Fix bug: Handle nonexistent colormap.
21701
21702 2007-09-06 Glenn Morris <rgm@gnu.org>
21703
21704 * gtkutil.c (menu_grab_callback) <cnt>:
21705 * xselect.c (x_reply_selection_request) <cnt>: Move static
21706 variable to file scope.
21707
21708 2007-09-06 Stefan Monnier <monnier@iro.umontreal.ca>
21709
21710 * xdisp.c (redisplay_internal): Make sure Elisp code always sees
21711 consistent values of selected_frame and selected_window.
21712
21713 2007-09-04 Jason Rumney <jasonr@gnu.org>
21714
21715 * w32console.c (initialize_w32_display): Zero unused hooks.
21716
21717 2007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
21718
21719 * term.c (Vsuspend_tty_functions, Vresume_tty_functions)
21720 (syms_of_term, Fsuspend_tty, Fresume_tty): Undo previous change.
21721
21722 2007-09-04 Jason Rumney <jasonr@gnu.org>
21723
21724 * term.c (init_tty) [WINDOWSNT]: Add hooks that are not accessible
21725 in w32console.c. Set up input. Remove XXX comments that have been
21726 confirmed as correct.
21727
21728 * s/ms-w32.h (MULTI_KBOARD): Define.
21729
21730 * w32console.c (one_and_only_w32cons): Remove.
21731 (initialize_w32_display): Take terminal argument.
21732
21733 * term.c (init_tty) [WINDOWSNT]: Pass terminal to
21734 initialize_w32_display.
21735 (init_tty) [MULTI_KBOARD]: Include this code on WINDOWSNT too.
21736
21737 * termhooks.h (enum event_kind) <HORIZ_WHEEL_EVENT>: New event.
21738
21739 * keyboard.c (discard_mouse_events): Discard it.
21740 (make_lispy_event): Translate it to a lisp event.
21741 (lispy_wheel_names): Add wheel-left and right events.
21742 (syms_of_keyboard): Enlarge wheel_syms.
21743
21744 * w32fns.c (w32_wnd_proc) <WM_DROPFILES>: Merge with WM_MOUSEWHEEL.
21745 <WM_MOUSEHWHEEL>: Pass new system message to lisp.
21746
21747 * w32term.h (WM_MOUSEHWHEEL): Define if system headers don't.
21748
21749 * w32term.c (construct_mouse_wheel): Make HORIZ_WHEEL_EVENT
21750 from WM_MOUSEHWHEEL.
21751 (w32_read_socket) <WM_MOUSEHWHEEL>: Treat as WM_MOUSEWHEEL.
21752
21753 * w32fns.c (x_create_tip_frame) [MULTI_KBOARD]: Get keyboard from
21754 terminal.
21755
21756 * w32term.c (w32_create_terminal) [MULTI_KBOARD]: Create a new
21757 keyboard for the terminal.
21758
21759 2007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
21760
21761 * term.c (Vsuspend_tty_hook): Rename from Vsuspend_tty_functions.
21762 (Vresume_tty_hook): Rename from Vresume_tty_functions.
21763 (syms_of_term): Rename suspend-tty-functions to suspend-tty-hook
21764 and resume-tty-function to resume-tty-hook.
21765 (Fsuspend_tty, Fresume_tty): Use new names.
21766
21767 2007-09-02 Jan Djärv <jan.h.d@swipnet.se>
21768
21769 * gtkutil.c (update_frame_tool_bar): Handle stock name as a named icon
21770 if it starts with "n:".
21771
21772 2007-08-31 Jan Djärv <jan.h.d@swipnet.se>
21773
21774 * gtkutil.c (update_frame_tool_bar): Initialize wbutton to NULL.
21775
21776 2007-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
21777
21778 * frame.h:
21779 * frame.c (Qterm_environment_variable): Remove.
21780 (syms_of_frame): Don't init and staticpro it.
21781
21782 * callproc.c (getenv_internal): Remove special case for $TERM.
21783
21784 * callproc.c (Vinitial_environment): New variable.
21785 (set_initial_environment): Initialize it.
21786 (syms_of_callproc): Declare it.
21787 (child_setup): Don't mess with TERM via Qterm_environment_variable; the
21788 TERM under which a process runs is never related to the TERM in which
21789 Emacs is running.
21790
21791 2007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
21792
21793 * config.in (HAVE_WINDOW_SYSTEM): Don't undef MULTI_KBOARD here...
21794 * s/darwin.h: ... do it here.
21795
21796 2007-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
21797
21798 * lisp.h (set_initial_environment): Rename from set_global_environment.
21799
21800 * Makefile.in (${etc}DOC): Re-add a ${EXEEXT} which seems to have been
21801 removed by mistake on the multi-tty branch.
21802
21803 * frame.c (make_terminal_frame): Yet Another Int/Lisp_Object Mixup.
21804 (Fmodify_frame_parameters): Return a value.
21805
21806 * image.c (png_load): Comment-out var only used in commented-out code.
21807
21808 * term.c (mark_ttys): Don't bother checking top_frame (incorrectly)
21809 before passing it to mark_object.
21810
21811 * xfaces.c (internal_resolve_face_name): Return a value.
21812 (internal_resolve_face_name, resolve_face_name_error): Comment out.
21813
21814 * xfns.c (check_x_display_info): Yet Another Int/Lisp_Object Mixup.
21815 (x_icon): Comment-out var only used in commented-out code.
21816
21817 2007-08-29 Romain Francoise <romain@orebokech.com>
21818
21819 * keyboard.c (Fset_input_mode): Don't call `Fset_quit_char' if
21820 QUIT hasn't been provided.
21821
21822 2007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
21823
21824 * callproc.c (child_setup, getenv_internal): Use the
21825 display-environment-variable and term-environment-variable frame params.
21826 (set_initial_environment): Initialise Vprocess_environment.
21827
21828 * config.in: Disable multi-keyboard support on a mac.
21829
21830 * frame.c (Qterm_environment_variable)
21831 (Qdisplay_environment_variable): New variables.
21832 (syms_of_frame): Intern and staticpro them.
21833 (Fmake_terminal_frame): Disable output method test.
21834
21835 * frame.h: Declare them here.
21836
21837 * macfns.c (x_set_mouse_color): Get rif from the frame.
21838 (x_set_tool_bar_lines): Don't use updating_frame.
21839 (mac_window): Add 2 new parameters for consistency with other systems.
21840 (Fx_create_frame): Fix doc string. Rename the parameter. Set the
21841 frame parameters following what is done in X11 and w32. Don't use
21842 FRAME_MAC_DISPLAY_INFO.
21843 (Fx_open_connection, start_hourglass): Remove window-system check.
21844 (x_create_tip_frame): Get the keyboard from the terminal.
21845
21846 * macmenu.c: Reorder includes.
21847 (Fx_popup_menu): Use terminal specific mouse_position_hook.
21848
21849 * macterm.c (XTset_terminal_modes, XTreset_terminal_modes): Add a
21850 terminal parameter.
21851 (x_clear_frame): Add a frame parameter.
21852 (note_mouse_movement): Get rif from the frame.
21853 (mac_term_init): Initialize the terminal.
21854 (mac_initialize): Make static and move terminal initialization ...
21855 (mac_create_terminal): ... to this new function.
21856
21857 * macterm.h (struct mac_display_info): Add terminal.
21858 (mac_initialize): Delete declaration.
21859
21860 * puresize.h (BASE_PURESIZE): Increase base value to 1164000.
21861
21862 * sysdep.c: Comment out text after #endif.
21863
21864 * term.c (init_tty): Only use terminal->kboard when MULTI_KBOARD
21865 is defined. Better initialize ttys in windows. Use terminal
21866 specific mouse_position_hook.
21867
21868 * termhooks.h (union display_info): Add mac_display_info.
21869
21870 * w32fns.c (Fx_create_frame): Use kboard from the terminal.
21871 Set the default minibuffer frame, window_system and the rest of the
21872 frame parameters following what is done in X11.
21873
21874 * w32term.c (w32_initialize): Make static.
21875
21876 * xselect.c (x_handle_selection_clear): Only access
21877 terminal->kboard when MULTI_KBOARD is defined.
21878
21879 * s/darwin.h (SYSTEM_PURESIZE_EXTRA): Define here.
21880 (SYSTEM_PURESIZE_EXTRA): Only define on Carbon.
21881
21882 2007-08-29 Jason Rumney <jasonr@gnu.org>
21883
21884 * frame.c (Fdelete_frame): Only get kboard when MULTI_KBOARD defined.
21885 (make_terminal_frame) [WINDOWSNT]: Initialize terminal.
21886
21887 * fringe.c (w32_init_fringe w32_reset_fringes) [HAVE_NTGUI]:
21888 (mac_init_fringe) [MAC_OS]: Get rif from selected_frame.
21889
21890 * keyboard.c (restore_kboard_configuration): Only define when
21891 MULTI_KBOARD defined.
21892
21893 * makefile.w32-in: Update dependancies from Makefile.in.
21894 (OBJ1): Add terminal.$(O)
21895
21896 * term.c (dissociate_if_controlling_tty) [WINDOWSNT]:
21897 Don't define function body.
21898 (init_tty) [WINDOWSNT]: Use selected_frame for initializing.
21899
21900 * termhooks.h (display_info) [WINDOWSNT]: Add w32.
21901
21902 * w32.c (request_sigio, unrequest_sigio): Remove.
21903
21904 * w32console.c (w32con_move_cursor, w32con_clear_to_end)
21905 (w32con_clear_frame, w32con_clear_end_of_line)
21906 (w32con_ins_del_lines, w32con_insert_glyphs, w32con_write_glyphs)
21907 (w32con_delete_glyphs, w32con_set_terminal_window)
21908 (scroll_line, w32_sys_ring_bell): Add frame arg.
21909 (w32con_set_terminal_modes, w32con_reset_terminal_modes):
21910 Add terminal arg.
21911 (PICK_FRAME): Remove.
21912 (w32con_write_glyphs): Use frame specific terminal coding.
21913 (one_and_only_w32cons): New global variable.
21914 (initialize_w32_display): Use it for storing hooks.
21915 (create_w32cons_output): New function.
21916
21917 * w32inevt.c, w32inevt.h (w32_console_read_socket): Make first
21918 arg a frame.
21919
21920 * w32fns.c (x_create_tip_frame): Set terminal and ref count.
21921 Set window_system.
21922 (x_set_tool_bar_lines): Don't use updating_frame.
21923 (Fx_create_frame): Set terminal and ref count.
21924 (Fx_open_connection): Remove window-system check.
21925
21926 * w32menu.c (Fx_popup_menu): Use terminal specific mouse_position_hook.
21927
21928 * w32term.c (w32_term_init): Call add_keyboard_wait_descriptor.
21929 (w32_set_terminal_modes, w32_reset_terminal_modes): Add terminal arg.
21930 (x_clear_frame, x_delete_glyphs, w32_ring_bell, x_ins_del_lines):
21931 Add frame arg.
21932 (x_delete_terminal, w32_create_terminal): New functions.
21933 (w32_term_init): Create a terminal.
21934 (w32_initialize): Move terminal specific initialization to
21935 w32_create_terminal.
21936
21937 * w32term.h (x_output): Remove foreground_pixel and background_pixel.
21938 (w32_clear_rect, w32_clear_area): Use background from frame.
21939 (w32_display_info): Add terminal.
21940 (w32_sys_ring_bell, x_delete_display): Declare here.
21941
21942 * xdisp.c (display_menu_bar) [HAVE_NTGUI]: Check frame type.
21943
21944 * s/ms-w32.h (SYSTEM_PURESIZE_EXTRA): Bump to 50k.
21945
21946 2007-08-29 Kalle Olavi Niemitalo <kon@iki.fi> (tiny change)
21947
21948 * keyboard.c (interrupt_signal, handle_interrupt, Fset_quit_char):
21949 Fix get_named_tty calls for the controlling tty.
21950
21951 2007-08-29 ARISAWA Akihiro <ari@mbf.ocn.ne.jp> (tiny change)
21952
21953 * term.c (dissociate_if_controlling_tty) [USG]: Fix parse error.
21954
21955 2007-08-29 Yoshiaki Kasahara <kasahara@nc.kyushu-u.ac.jp> (tiny change)
21956
21957 * term.c (tty_insert_glyphs): Add missing first parameter.
21958
21959 2007-08-29 Károly Lőrentey <karoly@lorentey.hu>
21960
21961 * buffer.c (Fbuffer_list, Fbury_buffer):
21962 Take frame->buried_buffer_list into account.
21963
21964 * cm.c (current_tty): New variable, for cmputc().
21965 (cmputc): Use it.
21966 (cmcheckmagic): Add tty parameter, look up terminal streams there.
21967 (calccost): Add tty parameter. Use emacs_tputs() instead of tputs().
21968 (cmgoto): Add tty parameter. Pass it on to calccost().
21969 Use emacs_tputs() instead of tputs().
21970
21971 * cm.h (emacs_tputs): New macro to set current_tty, and then call
21972 tputs().
21973 (current_tty): New variable, for cmputc().
21974 (cmcheckmagic, cmputc, cmgoto): Add prototypes.
21975
21976 * eval.c (unwind_to_catch): Don't call x_fully_uncatch_errors.
21977 (internal_condition_case, internal_condition_case_1)
21978 (internal_condition_case_2): Don't abort when x_catching_errors.
21979
21980 * fns.c (Fyes_or_no_p): Don't try to open an X dialog on tty terminals.
21981 (Fy_or_n_p): Likewise. Use temporarily_switch_to_single_kboard to
21982 prevent crashes caused by bogus longjmps in read_char.
21983
21984 * keymap.h (Fset_keymap_parent): Add EXFUN.
21985
21986 * macterm.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL)
21987 * w32term.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
21988 Remove redundant definition.
21989
21990 * macfns.c (x_set_mouse_color, x_make_gc):
21991 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
21992
21993 * w32term.c (x_free_frame_resources):
21994 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
21995 (w32_initialize): Use the accessor macros for terminal characteristics.
21996
21997 * macterm.c (mac_initialize): Use Fset_input_interrupt_mode.
21998 Use the accessor macros for terminal characteristics.
21999 * msdos.c (internal_terminal_init): Use the accessor macros for
22000 terminal characteristics.
22001 (ScreenVisualBell, internal_terminal_init):
22002 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
22003
22004 * termopts.h (no_redraw_on_reenter): Declare.
22005
22006 * alloc.c (emacs_blocked_malloc): Disable mallopt call.
22007 (mark_terminals, mark_ttys): Declare.
22008 (Fgarbage_collect): Call them.
22009 (mark_object): Mark buried_buffer_list.
22010
22011 * prefix-args.c: Include stdlib.h for exit.
22012
22013 * syssignal.h: Add comment.
22014
22015 * indent.c: Include stdio.h.
22016
22017 * window.h (Vinitial_window_system): Declare.
22018 (Vwindow_system): Delete declaration.
22019
22020 * fontset.c (Finternal_char_font): Use FRAME_RIF.
22021
22022 * image.c (lookup_image): Don't initialize `c' until the xasserts
22023 have been run.
22024
22025 * gtkutil.c (xg_create_frame_widgets): Use FRAME_BACKGROUND_PIXEL and
22026 FRAME_FOREGROUND_PIXEL.
22027
22028 * print.c (print_preprocess): Don't lose print_depth levels while
22029 iterating.
22030
22031 * widget.c (update_from_various_frame_slots):
22032 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
22033
22034 * window.c (set_window_buffer): Don't call clear_mouse_face on tty
22035 frames.
22036 (window_internal_height): Remove bogus make_number call.
22037 (init_window_once): Call make_terminal_frame with two zero parameters.
22038
22039 * fileio.c (Fread_file_name): Update comment.
22040
22041 * callint.c (Fcall_interactively):
22042 Use temporarily_switch_to_single_kboard instead of single_kboard_state.
22043 Make sure it is correctly unwound.
22044
22045 * xsmfns.c (x_session_close): New function.
22046
22047 * coding.h (terminal_coding, safe_terminal_coding, keyboard_coding):
22048 Delete declarations.
22049
22050 * xterm.h: Remove declaration for x_fully_uncatch_errors.
22051 (x_output): Remove background_pixel and foreground_pixel fields.
22052 (x_display_info): Add new field TERMINAL. Remove KBOARD field.
22053 (x_delete_device, x_session_close): Declare.
22054
22055 * lread.c: Include setjmp.h. Update declaration of `read_char'.
22056 (read_filtered_event): Call `read_char' with a local
22057 `wrong_kboard_jmpbuf'.
22058
22059 * minibuf.c (read_minibuf): Call temporarily_switch_to_single_kboard.
22060 Don't call single_kboard_state. Use FRAME_RIF.
22061
22062 * process.c (Fmake_network_process): Don't unrequest_sigio on modern
22063 systems.
22064
22065 * lisp.h (set_process_environment): Rename to `set_global_environment'.
22066 (Fframe_with_environment, Fset_input_meta_mode)
22067 (Fset_quit_char): EXFUN.
22068 (x_create_device, tty_output, terminal, tty_display_info): Declare.
22069 (init_sys_modes, reset_sys_modes): Update prototypes.
22070 (init_all_sys_modes, reset_all_sys_modes): New prototypes.
22071
22072 * keyboard.h (struct kboard): Add new fields Vlocal_function_key_map,
22073 Vlocal_key_translation_map, and Vkeyboard_translate_table.
22074 (Vfunction_key_map, Vkeyboard_translate_table, single_kboard_state):
22075 Delete declarations.
22076 (Vfunction_key_map, Vkey_translation_map, push_kboard, pop_kboard)
22077 (temporarily_switch_to_single_kboard, tty_read_avail_input):
22078 New declarations.
22079
22080 * emacs.c (main): Don't call init_sys_modes(), the new term_init()
22081 already does that during init_display(). Call syms_of_keymap
22082 before syms_of_keyboard. Call `syms_of_terminal'.
22083 Call set_initial_environment, not set_process_environment.
22084 (shut_down_emacs): Call reset_all_sys_modes() instead of
22085 reset_sys_modes().
22086
22087 * xfaces.c (x_free_gc): Protect xassert with GLYPH_DEBUG.
22088 (internal_resolve_face_name, resolve_face_name_error): New functions.
22089 (resolve_face_name): Protect against loops and errors thrown by Fget.
22090 (realize_default_face): Don't use FRAME_FONT unless frame is an X frame.
22091 (Ftty_supports_face_attributes_p): Update tty_capable_p call.
22092
22093 * scroll.c: Replace CURTTY() with local variables throughout the
22094 file (where applicable).
22095 (calculate_scrolling, calculate_direct_scrolling)
22096 (scrolling_1, scroll_cost): Use the accessor macros for terminal
22097 characteristics.
22098
22099 * keymap.c (Vfunction_key_map): Remove.
22100 (Fdescribe_buffer_bindings): Update references to Vfunction_key_map.
22101 (syms_of_keymap): Remove DEFVAR for Vfunction_key_map.
22102 (Vkey_translation_map): Remove.
22103 (syms_of_keymap): Remove DEFVAR for key-translation-map.
22104 (Fdescribe_buffer_bindings)
22105 (read_key_sequence, init_kboard, syms_of_keyboard, mark_kboards):
22106 Update for terminal-local key-translation-map.
22107
22108 * Makefile.in (callproc.o): Update dependencies.
22109 (lisp, shortlisp): Add termdev.elc.
22110 (obj): Add terminal.o.
22111 (terminal.o): Add dependencies.
22112 [HAVE_CARBON]: Make terminal.o depend on macgui.h.
22113 (data.o, fns.o): Add termhooks.h dependency.
22114 (SOME_MACHINE_LISP): Add dnd.elc.
22115 (minibuf.o): Fix typo.
22116 Update dependencies.
22117
22118 * data.c (do_symval_forwarding, store_symval_forwarding)
22119 (find_symbol_value): Use the selected frame's keyboard, not
22120 current_kboard.
22121
22122 * .gdbinit (init_sys_modes): Use Vinitial_window_system instead of
22123 Vwindow_system.
22124
22125 * xmenu.c (Fx_menu_bar_open) [USE_X_TOOLKIT, USE_GTK]: Rename from
22126 Fmenu_bar_open.
22127 (syms_of_xmenu): Update defsubr.
22128 (mouse_position_for_popup, Fx_popup_menu)
22129 (Fx_popup_dialog, x_activate_menubar, update_frame_menubar)
22130 (set_frame_menubar, free_frame_menubar)
22131 (create_and_show_popup_menu, xmenu_show)
22132 (create_and_show_dialog, xdialog_show, xmenu_show): Abort if not
22133 an X frame.
22134
22135 * xselect.c (x_own_selection): Abort if not an X frame.
22136 (some_frame_on_display): Check if it is an X frame.
22137 (x_handle_selection_clear): Deal with MULTI_KBOARD.
22138
22139 * coding.c: Include frame.h and termhooks.h.
22140 (terminal_coding, keyboard_coding): Delete.
22141 (Fset_terminal_coding_system_internal)
22142 (Fset_keyboard_coding_system_internal)
22143 (Fkeyboard_coding_system)
22144 (Fterminal_coding_system): Add a terminal parameter.
22145 Get terminal_coding from the terminal.
22146 (init_coding_once): Don't call setup_coding_system here.
22147
22148 * dispextern.h (set_scroll_region, turn_off_insert)
22149 (turn_off_highlight, background_highlight, clear_end_of_line_raw)
22150 (tty_clear_end_of_line, tty_setup_colors)
22151 (delete_tty, updating_frame)
22152 (produce_special_glyphs, produce_glyphs, write_glyphs)
22153 (insert_glyphs): Remove.
22154 (raw_cursor_to, clear_to_end, tty_turn_off_insert)
22155 (tty_turn_off_highlight, get_tty_size): Add declaration.
22156 (tabs_safe_p, init_baud_rate, get_tty_terminal): Update prototypes.
22157
22158 * frame.h (enum output_method): Add output_initial.
22159 (struct x_output): Delete.
22160 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
22161 Access foreground_pixel and background_pixel directly from the frame.
22162 (tty_display): Delete.
22163 (struct frame): Add buried_buffer_list, foreground_pixel,
22164 background_pixel and terminal. Delete kboard.
22165 (union output_data): Add tty.
22166 (FRAME_KBOARD): Get the kboard from the terminal.
22167 (FRAME_INITIAL_P): New macro.
22168 (Qtty, Qtty_type, Qterminal, Qterminal_live_p, Qenvironment)
22169 (Qterm_environment_variable, Qdisplay_environment_variable)
22170 (make_terminal_frame, Qburied_buffer_list, Qwindow_system):
22171 New declarations.
22172
22173 * termchar.h (tty_output, tty_display_info): New structures.
22174 (tty_list): Declare.
22175 (FRAME_TTY, CURTTY): New macros.
22176 (must_write_spaces, min_padding_speed, fast_clear_end_of_line)
22177 (line_ins_del_ok, char_ins_del_ok, scroll_region_ok)
22178 (scroll_region_cost, memory_below_frame, fast_clear_end_of_line)
22179 (dont_calculate_costs, no_redraw_on_reenter): Remove declarations.
22180
22181 * callproc.c: Include frame.h and termhooks.h, for terminal
22182 parameters.
22183 (add_env): New function.
22184 (child_setup): Use it.
22185 (child_setup, getenv_internal): Handle the new Vprocess_environment.
22186 (getenv_internal): Fix get_terminal_param call.
22187 (Fgetenv_internal, egetenv): Update doc.
22188 (syms_of_callproc): Initialize Vprocess_environment to nil.
22189 Register and initialize them. Remove obsolete defvars. Update doc
22190 strings.
22191 (child_setup): Handle Vlocal_environment_variables.
22192 (getenv_internal): Add terminal parameter.
22193 Handle Vlocal_environment_variables.
22194 (Fgetenv_internal): Add terminal parameter.
22195 (child_setup, getenv_internal, Fgetenv_internal): Store the local
22196 environment in a frame (not terminal) parameter. Update doc strings.
22197 (set_initial_environment): Rename from set_global_environment.
22198 Store Emacs environment in initial frame parameter.
22199
22200 * xdisp.c (redisplay_internal): Update references to
22201 `previous_terminal_frame'.
22202 (display_mode_line, Fformat_mode_line): Replace calls to
22203 `push_frame_kboard' with `push_kboard'.
22204 (get_glyph_string_clip_rects): Add extra parentheses and
22205 braces to prevent compiler warnings.
22206 (calc_pixel_width_or_height): Add xassert to check that the
22207 frame is alive. Don't call `lookup_image' on a termcap frame.
22208 (message2_nolog, message3_nolog, redisplay_internal)
22209 (set_vertical_scroll_bar, redisplay_window, check_x_display_info)
22210 (x_set_scroll_bar_foreground, x_set_scroll_bar_background)
22211 (Fx_create_frame, Fxw_display_color_p, Fx_display_grayscale_p)
22212 (Fx_display_pixel_width, Fx_display_pixel_height)
22213 (Fx_display_planes, Fx_display_color_cells)
22214 (Fx_server_max_request_size, Fx_server_vendor, Fx_server_version)
22215 (Fx_display_screens, Fx_display_mm_height, Fx_display_mm_width)
22216 (Fx_display_backing_store, Fx_display_visual_class)
22217 (Fx_display_save_under, Fx_close_connection, x_create_tip_frame):
22218 Use FRAME_TERMINAL_P, FRAME_WINDOW_P, FRAME_TTY and FRAME_RIF.
22219
22220 * xfns.c (x_set_foreground_color x_set_background_color)
22221 (x_set_mouse_color, x_set_cursor_color, x_make_gc):
22222 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
22223 (Fx_create_frame, x_create_tip_frame, build_string, x_window)
22224 (Fx_create_frame, x_create_tip_frame): Don't create frames on a
22225 terminal that is being deleted.
22226 (Fx_create_frame): Use `store_frame_param' to set `window-system'
22227 frame parameter, and make sure it overrides any user-supplied setting.
22228 (Fx_close_connection, Fx_synchronize): Unify argument names with
22229 the rest of the DEFUNs.
22230
22231 * dispnew.c (Fsend_string_to_terminal): Update call to
22232 `get_tty_terminal'.
22233 (Fredraw_frame, Fsend_string_to_terminal)
22234 (Fsend_string_to_terminal, init_display): Use FRAME_RIF,
22235 FRAME_TERMCAP_P and FRAME_TTY.
22236 (window_change_signal): Don't believe width/height values that are
22237 impossibly small.
22238 (Vinitial_window_system): Rename from Vwindow_system.
22239 (termscript, Wcm, rif): Delete.
22240
22241 * termhooks.h (struct terminal): New struct containing the
22242 previously global text display hooks and new members NAME,
22243 DELETED and PARAM_ALIST.
22244 (FRAME_TERMINAL, TERMINAL_TERMINAL_CODING)
22245 (TERMINAL_KEYBOARD_CODING, TERMINAL_ACTIVE_P, FRAME_WINDOW_P)
22246 (FRAME_RIF): New macros.
22247 (get_terminal_param, get_device): New declarations.
22248 (termscript): Delete declaration.
22249
22250 * xterm.c (x_initialize): Use Fset_input_interrupt_mode.
22251 (XTflash, x_free_frame_resources, x_scroll_bar_create)
22252 (x_scroll_bar_set_handle): Use FRAME_BACKGROUND_PIXEL and
22253 FRAME_FOREGROUND_PIXEL.
22254 (x_fully_uncatch_errors): Disable definition.
22255 (x_scroll_bar_expose): Fix reference to foreground pixel.
22256 (XTread_socket): Disable loop on all X displays.
22257 (x_delete_terminal): Don't set terminal->deleted and let
22258 delete_terminal delete the frames on the terminal.
22259 (x_delete_display): Doc update to reflect changes in
22260 delete_terminal.
22261 (x_display_info) <terminal>: Move member earlier in the struct.
22262 (deleting_tty): Remove old variable.
22263 (Fsuspend_tty): Call clear_tty_hooks.
22264 (Fresume_tty, init_tty): Call set_tty_hooks.
22265 (Ftty_display_color_p, Ftty_display_color_cells): Don't throw
22266 errors on X frames.
22267 (x_catch_errors_unwind): Abort if x_error_message is NULL.
22268 (handle_one_xevent): Initialize `f' to NULL.
22269 (x_delete_terminal, x_create_terminal): New functions.
22270 (XTset_terminal_modes, XTreset_terminal_modes)
22271 (XTread_socket, x_connection_closed, x_term_init)
22272 (x_term_init, x_delete_display): Add terminal parameter.
22273 (x_term_init) [!HAVE_GTK_MULTIDISPLAY]: Refuse to create secondary
22274 X connections.
22275
22276 * frame.c: Include termchar.h.
22277 (Qterminal, Qterminal_live_p, Qburied_buffer_list, Qtty, Qtty_type)
22278 (Qwindow_system, Qenvironment, Qterm_environment_variable)
22279 (Qdisplay_environment_variable): New vars.
22280 (Fframep): Deal with output_initial.
22281 (Fframe-live-p): Doc fix.
22282 (Fwindow-system): New function.
22283 (x_set_screen_gamma, store_frame_param): Fix compilation errors.
22284 (make_terminal_frame): Don't create frames on a terminal that is
22285 being deleted. Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
22286 (store_frame_param): Check for found_for_frame before calling XFRAME.
22287 (Fmake_terminal_frame): Handle NULL tty names correctly.
22288 (syms_of_frame): Enhance doc string of `default-frame-alist'.
22289 (Fdelete_frame): Remove unused variable `count'. Don't allow other
22290 frames to refer to a deleted frame in their 'environment parameter.
22291 (Fframe_with_environment): New function.
22292 (syms_of_frame): Defsubr it. Initialize and staticpro Qenvironment.
22293 (get_future_frame_param): New function.
22294 (Fmake_terminal_frame): Use it.
22295 (x_set_frame_parameters, x_set_screen_gamma): Use FRAME_RIF.
22296
22297 * sysdep.c (init_sys_modes, reset_sys_modes): Update for renames.
22298 * sysdep.c (reset_sys_modes): Update for renames.
22299
22300 * keyboard.c (tty_read_avail_input): New function.
22301 (Fset_input_interrupt_mode, Fset_output_flow_control): New functions.
22302 (syms_of_keyboard): Defsubr them.
22303 (Fset_input_meta_mode, Fset_quit_char): New functions.
22304 (Fset_input_mode): Split to above functions.
22305 (read_char_minibuf_menu_prompt): Add wrong_kboard_jmpbuf
22306 parameter. Use it in call to `read_char'.
22307 (read_char): Declare. Update call to `read_char_minibuf_menu_prompt'.
22308 Set wrong_kboard_jmpbuf correctly in recursive calls.
22309 Use current_kboard to access Vkeyboard_translate_table.
22310 Enhance comment before extra longjmp to wrong_kboard_jmpbuf.
22311 Add wrong_kboard_jmpbuf parameter to allow for recursive calls.
22312 Update longjmp invocations. Remember the original current_kboard,
22313 and longjmp to `wrong_kboard_jmpbuf' when a filter, timer or sentinel
22314 changes it. Comment out unnecessary calls to
22315 `record_single_kboard_state' and `any_kboard_state'.
22316 Update recursive calls.
22317 (wrong_kboard_jmpbuf): Remove global variable.
22318 (read_key_sequence): Remove unused variable wrong_kboard_jmpbuf.
22319 Handle deleted interrupted_kboards correctly; that is a legal
22320 case. Add `wrong_kboard_jmpbuf' local variable. Update setjmp
22321 and read_char calls. Abort if interrupted_kboard died in read_char.
22322 (any_kboard_state, single_kboard_state)
22323 (push_frame_kboard): Remove function.
22324 (pop_kboard): Switch out of single_kboard mode if the kboard has
22325 been deleted. Remove unused variable. Help debugging by not
22326 changing current_kboard unnecessarily. Set current_kboard to the
22327 kboard of the selected frame when the stored kboard object has
22328 been deleted before pop_kboard.
22329 (temporarily_switch_to_single_kboard): Change first parameter to a
22330 frame pointer. Throw an error when caller wants to change kboards
22331 while in single_kboard mode. Don't push_kboard if we weren't in
22332 single kboard state. Don't pop_kboard if we popped into any
22333 kboard state.
22334 (restore_kboard_configuration): Abort if pop_kboard changed the
22335 kboard in single_kboard mode. Call pop_kboard only after setting
22336 up single_kboard mode.
22337 (Frecursive_edit): Switch to single_kboard mode only in nested
22338 command loops.
22339 (cmd_error, command_loop, command_loop_1, timer_check):
22340 Comment out unnecessary call to `any_kboard_state' and
22341 `record_single_kboard_state'.
22342 (delete_kboard): Exit single_kboard mode if we have just deleted
22343 that kboard. Use FRAME_KBOARD.
22344 (interrupt_signal): Use `Fkill_emacs' to exit Emacs, not
22345 `fatal_error_signal'.
22346 (record_single_kboard_state): Don't push_kboard if we weren't in
22347 single kboard state. Don't pop_kboard if we popped into any
22348 kboard state.
22349 (push_frame_kboard): Rename to push_kboard.
22350 (kbd_buffer_get_event): Use FRAME_TERMINAL.
22351 (read_avail_input): Read input from all terminals.
22352 (mark_kboards): Also mark Vkeyboard_translate_table.
22353 (kbd_buffer_store_event_hold): Simplify condition.
22354 (read_key_sequence): Reinitialize fkey and keytran at each replay.
22355 (Vkeyboard_translate_table): Move to struct kboard.
22356 (init_kboard): Initialize Vkeyboard_translate_table.
22357 (syms_of_keyboard): Use DEFVAR_KBOARD to define
22358 Vkeyboard_translate_table. Update doc strings. Update docs of
22359 local-function-key-map and function-key-map.
22360
22361 * terminal.c: New file.
22362
22363 * term.c: Include errno.h.
22364 (Vring_bell_function, device_list, initial_device)
22365 (next_device_id, ring_bell, update_begin, update_end)
22366 (set_terminal_window, cursor_to, raw_cursor_to)
22367 (clear_to_end, clear_frame, clear_end_of_line)
22368 (write_glyphs, insert_glyphs, delete_glyphs, ins_del_lines)
22369 (Fdisplay_name, create_device, delete_device): Move to terminal.c.
22370 (syms_of_term): Move their initialization to terminal.c.
22371 (get_tty_terminal, Fdisplay_tty_type, Ftty_display_color_p)
22372 (Ftty_display_color_cells)
22373 (Ftty_no_underline, Fsuspend_tty, Fresume_tty, create_tty_output)
22374 (clear_tty_hooks, set_tty_hooks)
22375 (init_tty, maybe_fatal): New functions.
22376 (Ftty_type): Return nil if terminal is not on a tty instead of
22377 throwing an error. Doc update.
22378 (syms_of_term) <Vsuspend_tty_functions, Vresume_tty_functions>:
22379 Doc update. Initialize new subrs and variables.
22380 (delete_tty): Use terminal->deleted.
22381 (tty_set_terminal_modes): Rename from set_terminal_modes.
22382 (tty_reset_terminal_modes): Rename from reset_terminal_modes.
22383 (set_scroll_region): Rename to `tty_set_scroll_region'.
22384 (turn_on_insert): Rename to `tty_turn_on_insert'.
22385 (turn_off_insert): Rename to `tty_turn_off_insert'.
22386 (turn_off_highlight): Rename to `tty_turn_off_highlight'.
22387 (turn_on_highlight): Rename to `tty_turn_on_highlight'.
22388 (toggle_highligh): Rename to `tty_toggle_highlight'.
22389 (background_highlight): Rename to `tty_background_highlight'.
22390 (highlight_if_desired): Rename to `tty_highlight_if_desired'.
22391 (tty_ring_bell, tty_update_end, tty_set_terminal_window)
22392 (tty_set_scroll_region, tty_background_highlight)
22393 (tty_cursor_to, tty_raw_cursor_to, tty_clear_to_end)
22394 (tty_clear_frame, tty_clear_end_of_line, tty_write_glyphs)
22395 (tty_insert_glyphs, tty_delete_glyphs, tty_ins_del_lines)
22396 (term_get_fkeys, tty_setup_colors, dissociate_if_controlling_tty):
22397 Add static modifier.
22398 (tty_reset_terminal_modes, tty_set_terminal_window)
22399 (tty_set_scroll_region, tty_background_highlight)
22400 (tty_highlight_if_desired, tty_cursor_to)
22401 (tty_raw_cursor_to, tty_clear_to_end, tty_clear_frame)
22402 (tty_clear_end_of_line, tty_write_glyphs, tty_insert_glyphs)
22403 (tty_delete_glyphs, tty_ins_del_lines, turn_on_face): Update for
22404 renames.
22405
22406 2007-08-28 Jan Djärv <jan.h.d@swipnet.se>
22407
22408 * keyboard.c: Qrtl is new.
22409 (parse_tool_bar_item): Handle :rtl keyword.
22410 (syms_of_keyboard): Intern :rtl keyword.
22411
22412 * dispextern.h (enum tool_bar_item_idx): Add TOOL_BAR_ITEM_RTL_IMAGE.
22413
22414 * gtkutil.c (xg_tool_bar_expose_callback): Just do SET_FRAME_GARBAGED
22415 so no Lisp code is executed.
22416 (file_for_image, find_rtl_image): New functions.
22417 (xg_get_image_for_pixmap): Use file_for_image.
22418 (update_frame_tool_bar): If direction is RTL, use RTL image if
22419 defined. Use Gtk stock images if defined.
22420
22421 2007-08-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22422
22423 * macterm.c (x_draw_composite_glyph_string_foreground): Draw rectangle
22424 for nonexistent or zero-width glyph in composition glyph.
22425
22426 2007-08-25 Stefan Monnier <monnier@iro.umontreal.ca>
22427
22428 * m/amdx86-64.h: Redirect to intel386.h if compiling for i386.
22429
22430 * xdisp.c (Finvisible_p): New function.
22431 (syms_of_xdisp): defsubr it.
22432
22433 2007-08-24 Juanma Barranquero <lekktu@gmail.com>
22434
22435 * image.c (syms_of_image) <image-library-alist, cross-disabled-images>:
22436 Doc fixes.
22437
22438 2007-08-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22439
22440 * mac.c [MAC_OSX] (select_and_poll_event, sys_select): Fix last changes.
22441
22442 2007-08-24 Martin Rudalics <rudalics@gmx.at>
22443
22444 * fileio.c (Finsert_file_contents): Consult CHARS_MODIFF to tell
22445 whether decoding has modified buffer contents.
22446
22447 2007-08-24 Jason Rumney <jasonr@gnu.org>
22448
22449 * image.c [HAVE_NTGUI]: Define dynamic loaded functions for SVG.
22450 (Qgdk_pixbuf, Qglib) [HAVE_NTGUI]: New symbols.
22451 (syms_of_image) [HAVE_NTGUI]: Intern and staticpro them.
22452 (init_svg_functions) [HAVE_NTGUI]: New function.
22453 (fn_g_type_init, fn_g_object_unref, fn_g_error_free): New #defines.
22454 (svg_load_image): Use them.
22455 (svg_load_image) [HAVE_NTGUI]: Implement background.
22456
22457 2007-08-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22458
22459 * Makefile.in (RSVG_LIBS, RSVG_CFLAGS): New variables.
22460 (ALL_CFLAGS): Use ${RSVG_CFLAGS} instead of @RSVG_CFLAGS@.
22461 (LIBX): Remove @RSVG_LIBS@.
22462 (LIBES): Add $(RSVG_LIBS).
22463
22464 * image.c (svg_load_image): Blend with specified background if exists.
22465 Use IMAGE_BACKGROUND. Add Mac OS Support.
22466
22467 * mac.c (wakeup_from_rne_enabled_p) [MAC_OSX]: Remove variable.
22468 (ENABLE_WAKEUP_FROM_RNE, DISABLE_WAKEUP_FROM_RNE) [MAC_OSX]:
22469 Remove macros.
22470 [MAC_OSX] (socket_callback): Do nothing.
22471 [MAC_OSX] (select_and_poll_event): Use CFRunLoopRunInMode instead of
22472 ReceiveNextEvent.
22473 [MAC_OSX] (sys_select): Likewise. Don't set context as argument to
22474 socket_callback.
22475 (mac_wakeup_from_rne) [MAC_OSX]: Do nothing.
22476
22477 2007-08-22 Glenn Morris <rgm@gnu.org>
22478
22479 * image.c (x_find_image_file): Search in etc/images/ rather than etc/.
22480
22481 2007-08-22 Paul Pogonyshev <pogonyshev@gmx.net>
22482
22483 * Makefile.in (ALL_CFLAGS, LIBX): Add RSVG_LIBS.
22484
22485 * image.c: Add support for SVG images. Some additional comments
22486 by Joakim Verona <joakim@verona.se>. When HAVE_RSVG is defined:
22487 (svg_image_p): New function to test for SVG image.
22488 (svg_load): New function to load SVG image.
22489 (svg_load_image): New function, helper for svg_load.
22490 (Qsvg): New Lisp_object.
22491 (svg_keyword_index): New enum.
22492 (svg_format): New static `image_keyword' struct.
22493 (svg_type): New static `image_type' struct.
22494 (librsvg/rsvg.h): Include it.
22495
22496 2007-08-23 Stefan Monnier <monnier@iro.umontreal.ca>
22497
22498 * lread.c (load_warn_old_style_backquotes): Fix up array size typo.
22499
22500 2007-08-22 Stefan Monnier <monnier@iro.umontreal.ca>
22501
22502 * lread.c (Qold_style_backquotes): New var.
22503 (syms_of_lread): Init and staticpro it.
22504 (load_warn_old_style_backquotes): New fun.
22505 (Fload): Use them to warn about old style backquotes.
22506 (end_of_file_error, Fload): Remove unused vars.
22507
22508 * lisp.h (Fclear_face_cache, Fx_send_client_event): Declare.
22509
22510 * lread.c (Vold_style_backquotes): New var.
22511 (syms_of_lread): Init and export it to Elisp.
22512 (read1): Set it when we find an old-style (back)quote.
22513
22514 2007-08-22 Jason Rumney <jasonr@gnu.org>
22515
22516 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): Add missing NULL terminator.
22517
22518 2007-08-22 Katsumi Yamaoka <yamaoka@jpl.org>
22519
22520 * puresize.h (BASE_PURESIZE): Increase to 1140000.
22521
22522 2007-08-19 Richard Stallman <rms@gnu.org>
22523
22524 * eval.c (Ffunction, Fquote): Signal error if not 1 argument.
22525
22526 2007-08-19 Andreas Schwab <schwab@suse.de>
22527
22528 * alloc.c (pure): Round PURESIZE up.
22529
22530 2007-08-17 Jan Djärv <jan.h.d@swipnet.se>
22531
22532 * xterm.c (handle_one_xevent): Remove check that mouse click is in
22533 active frame.
22534
22535 2007-08-16 Richard Stallman <rms@gnu.org>
22536
22537 * eval.c (Fcommandp): Add parens to clarify.
22538
22539 * minibuf.c (Fall_completions): Use enum for type of table.
22540
22541 * emacs.c (USAGE2): Improve text.
22542
22543 2007-08-15 Philippe Waroquiers <philippe.waroquiers@eurocontrol.int>
22544
22545 * term.c (tty_default_color_capabilities): Declare static
22546 variables in file scope, to avoid HPUX compiler problem.
22547
22548 2007-08-13 Jan Djärv <jan.h.d@swipnet.se>
22549
22550 * gtkutil.c (update_frame_tool_bar): Use -1 as index
22551 to gtk_toolbar_insert.
22552
22553 2007-08-13 Stefan Monnier <monnier@iro.umontreal.ca>
22554
22555 * fileio.c (Finsert_file_contents): Yet Another Int/Lisp_Object Mixup.
22556
22557 * insdel.c (reset_var_on_error): New fun.
22558 (signal_before_change, signal_after_change):
22559 Use it to reset (after|before)-change-functions to nil in case of error.
22560 Bind inhibit-modification-hooks to t.
22561 Don't bind (after|before)-change-functions to nil while they run.
22562
22563 2007-08-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22564
22565 * xterm.c (x_draw_image_glyph_string): Adjust stipple origin when
22566 filling pixmap with stippled background.
22567
22568 2007-08-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22569
22570 * macterm.c [TARGET_API_MAC_CARBON] (mac_handle_window_event):
22571 Don't use invisible frame as parent window for repositioning.
22572
22573 2007-08-10 Stefan Monnier <monnier@iro.umontreal.ca>
22574
22575 * print.c (new_backquote_output): Rename from old_backquote_output.
22576 (print): Inverse its logic (according to its name) so as to match the
22577 behavior of new_backquote_flag in lread.c.
22578
22579 2007-08-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22580
22581 * gmalloc.c (posix_memalign): New function.
22582
22583 * macterm.c (frame_highlight, frame_unhighlight): Don't call
22584 ActivateControl/DeactivateControl here.
22585 [USE_MAC_TOOLBAR] (free_frame_tool_bar): Suppress animation when
22586 frame-notice-user-settings is non-nil.
22587 [USE_MAC_FONT_PANEL] (mac_handle_font_event): Also record parameter
22588 for kEventParamFMFontStyle.
22589 [TARGET_API_MAC_CARBON] (mac_handle_keyboard_event): Don't check
22590 mac_pass_command_to_system and mac_pass_control_to_system here.
22591 (XTread_socket): Call ActivateControl/DeactivateControl here.
22592 (XTread_socket) [TARGET_API_MAC_CARBON]:
22593 Check mac_pass_command_to_system and mac_pass_control_to_system here.
22594 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Add further workaround
22595 for window repositioning.
22596
22597 2007-08-08 Glenn Morris <rgm@gnu.org>
22598
22599 * Replace `iff' in doc-strings and comments.
22600
22601 2007-08-07 Chong Yidong <cyd@stupidchicken.com>
22602
22603 * xdisp.c (move_it_by_lines): Remove incorrect optimization.
22604
22605 2007-08-07 Martin Rudalics <rudalics@gmx.at>
22606
22607 * fileio.c (Finsert_file_contents): Run format-decode and
22608 after_insert_file_functions on entire buffer when REPLACE is
22609 non-nil and inhibit modification_hooks and point_motion_hooks.
22610 For consistency, run after_insert_file_functions iff something
22611 got inserted. Move signal_after_change and update_compositions
22612 after code running after_insert_file_functions. Make sure that
22613 undo_list doesn't record intermediate steps of the decoding process.
22614
22615 2007-08-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22616
22617 * emacs.c (main)
22618 [HAVE_GTK_AND_PTHREAD && !SYSTEM_MALLOC && !DOUG_LEA_MALLOC]:
22619 Call malloc_enable_thread on interactive startup.
22620
22621 * gmalloc.c (_malloc_thread_enabled_p) [USE_PTHREAD]: New variable.
22622 (LOCK, UNLOCK, LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS)
22623 [USE_PTHREAD]: Conditionalize with it.
22624 (malloc_atfork_handler_prepare, malloc_atfork_handler_parent)
22625 (malloc_atfork_handler_child, malloc_enable_thread) [USE_PTHREAD]:
22626 New functions.
22627
22628 2007-08-06 Chong Yidong <cyd@stupidchicken.com>
22629
22630 * xdisp.c (redisplay_window): When restoring original buffer
22631 position, make sure it is still valid.
22632
22633 * image.c (png_load): Ignore png-supplied background color.
22634
22635 2007-08-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22636
22637 * mac.c [TARGET_API_MAC_CARBON] (cfdate_to_lisp): Obtain microsec value.
22638 Use kCFAbsoluteTimeIntervalSince1970.
22639
22640 * macmenu.c (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]:
22641 New variable.
22642 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Set it if dialog
22643 event loop should be quit.
22644 [TARGET_API_MAC_CARBON] (create_and_show_dialog) [!MAC_OSX]:
22645 Quit dialog event loop if quit_dialog_event_loop is set.
22646
22647 * macselect.c [!TARGET_API_MAC_CARBON]: Include Scrap.h.
22648 (Selection): New typedef. Use instead of ScrapRef.
22649 (mac_get_selection_from_symbol): Rename from get_scrap_from_symbol.
22650 (mac_valid_selection_target_p): Rename from valid_scrap_target_type_p.
22651 (mac_clear_selection): Rename from clear_scrap.
22652 (get_flavor_type_from_symbol): New argument SEL and subsume function of
22653 scrap_has_target_type. All uses changed.
22654 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
22655 (mac_selection_has_target_p): New functions.
22656 (mac_put_selection_value): Rename from put_scrap_string.
22657 (mac_get_selection_value): Rename from get_scrap_string.
22658 (mac_get_selection_target_list): Rename from get_scrap_target_type_list.
22659 (put_scrap_private_timestamp, scrap_has_target_type)
22660 (get_scrap_private_timestamp): Remove functions.
22661 (SCRAP_FLAVOR_TYPE_EMACS_TIMESTAMP): Remove define.
22662 (x_own_selection, x_get_local_selection):
22663 Use mac_valid_selection_value_p.
22664 (x_own_selection): Don't use put_scrap_private_timestamp.
22665 Record OWNERSHIP-INFO into Vselection_alist instead.
22666 (x_get_local_selection): Don't check type if request is local.
22667 (Fx_selection_owner_p): Don't use get_scrap_private_timestamp.
22668 Detect ownership change with OWNERSHIP-INFO in Vselection_alist instead.
22669
22670 2007-08-04 Jan Djärv <jan.h.d@swipnet.se>
22671
22672 * gtkutil.c (xg_tool_bar_callback): Generate two TOOL_BAR_EVENT:s,
22673 add comment explaining why.
22674
22675 2007-08-03 Richard Stallman <rms@gnu.org>
22676
22677 * fileio.c (Fvisited_file_modtime): Use make_time.
22678
22679 2007-08-01 Ryo Yoshitake <ryo@shiftmode.net> (tiny change)
22680
22681 * mac.c (init_mac_osx_environment): Adjust load-path on self-contained
22682 build.
22683
22684 2007-07-31 Stefan Monnier <monnier@iro.umontreal.ca>
22685
22686 * gtkutil.c (xg_tool_bar_callback): Generate a single TOOL_BAR_EVENT.
22687
22688 2007-07-30 Katsumi Yamaoka <yamaoka@jpl.org>
22689
22690 * puresize.h (BASE_PURESIZE): Increase to 1130000.
22691
22692 2007-07-30 Richard Stallman <rms@gnu.org>
22693
22694 * lread.c (readevalloop, read1): Treat NBSP as whitespace.
22695
22696 2007-07-29 Jan Djärv <jan.h.d@swipnet.se>
22697
22698 * gmalloc.c (__malloc_initialize): Remove pthread_once. Not needed.
22699
22700 2007-07-28 Nick Roberts <nickrob@snap.net.nz>
22701
22702 * xdisp.c (decode_mode_spec): Use '@' instead of 'R' to test for
22703 remote default-directory.
22704
22705 * buffer.c (mode-line-format): Update doc string.
22706
22707 2007-07-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22708
22709 * w32term.c (w32_draw_fringe_bitmap): Extend fringe background to
22710 scroll bar gap.
22711 (x_scroll_bar_create): Set bar->fringe_extended_p.
22712 (w32_set_vertical_scroll_bar): Put leftmost/rightmost scroll bars
22713 on frame edge. Check fringe background extension. Don't clear
22714 extended fringe background area.
22715
22716 * w32term.h (struct scroll_bar): New member fringe_extended_p.
22717 (w32_fill_area): Enclose multiple statements with do ... while (0).
22718
22719 * xterm.c (x_draw_fringe_bitmap) [USE_TOOLKIT_SCROLL_BARS]:
22720 Extend fringe background to scroll bar gap.
22721 (x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS]:
22722 Set bar->fringe_extended_p.
22723 (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
22724 Put leftmost/rightmost scroll bars on frame edge. Check fringe
22725 background extension. Don't clear extended fringe background area.
22726
22727 * xterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
22728 New member fringe_extended_p.
22729
22730 2007-07-25 Glenn Morris <rgm@gnu.org>
22731
22732 * Relicense all FSF files to GPLv3 or later.
22733
22734 * COPYING: Switch to GPLv3.
22735
22736 2007-07-25 Stefan Monnier <monnier@iro.umontreal.ca>
22737
22738 * eval.c (Fcommandp): Pay attention to the `interactive-form' property.
22739
22740 * data.c (Finteractive_form): Check for the presence of an
22741 `interactive-form' symbol property more thoroughly.
22742
22743 * data.c (Finteractive_form): Use an `interactive-form' property if
22744 present, analogous to the function-documentation property.
22745
22746 2007-07-24 Jason Rumney <jasonr@gnu.org>
22747
22748 * w32fns.c (x_real_positions): Get real position from OS instead of
22749 calculating it.
22750
22751 2007-07-23 Jason Rumney <jasonr@gnu.org>
22752
22753 * filelock.c (current_lock_owner): Allow for @ sign in username.
22754
22755 2007-07-22 Nick Roberts <nickrob@snap.net.nz>
22756
22757 * xdisp.c (decode_mode_spec): Add case 'R' for to test for
22758 remote default-directory.
22759
22760 * buffer.c (mode-line-format): Describe above case in doc string.
22761
22762 2007-07-20 Eli Zaretskii <eliz@gnu.org>
22763
22764 * w32proc.c (IMAGE_NT_OPTIONAL_HDR32_MAGIC, IMAGE_OPTIONAL_HEADER32):
22765 Define if not defined.
22766
22767 2007-07-18 Jason Rumney <jasonr@gnu.org>
22768
22769 * w32proc.c (w32_executable_type): Handle 64 bit executables.
22770
22771 2007-07-18 Richard Stallman <rms@gnu.org>
22772
22773 * data.c (Fsetq_default): Doc fix.
22774
22775 * eval.c (Fsetq): Doc fix.
22776
22777 2007-07-18 Juanma Barranquero <lekktu@gmail.com>
22778
22779 * coding.c (Ffind_operation_coding_system):
22780 * eval.c (For, Fand): Doc fixes.
22781 Reported by Johan Bockgård.
22782
22783 2007-07-18 Jan Djärv <jan.h.d@swipnet.se>
22784
22785 * xfns.c (Fx_focus_frame): Call x_ewmh_activate_frame.
22786
22787 * xterm.h: Declare x_ewmh_activate_frame.
22788
22789 * xterm.c (x_ewmh_activate_frame): New function.
22790 (XTframe_raise_lower): Move code to x_ewmh_activate_frame.
22791
22792 2007-07-17 Martin Rudalics <rudalics@gmx.at>
22793
22794 * window.c (Fdisplay_buffer): If largest or LRU window is the
22795 only window, split it even if it is not eligible for splitting.
22796 This restores the original behavior broken by the 2007-07-15
22797 change.
22798
22799 2007-07-17 Glenn Morris <rgm@gnu.org>
22800
22801 * abbrev.c (abbrev_check_chars): New function.
22802 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
22803 Call abbrev_check_chars to check abbrev characters are word
22804 constituents. Doc fix.
22805
22806 2007-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
22807
22808 * process.c (Fstart_process, Fmake_network_process)
22809 (read_process_output): Fix up last changes.
22810
22811 2007-07-16 Eli Zaretskii <eliz@gnu.org>
22812
22813 * makefile.w32-in (clean): Don't delete *~.
22814
22815 2007-07-16 Andreas Schwab <schwab@suse.de>
22816
22817 * window.c (Fdisplay_buffer): Use NILP.
22818 (Fset_window_scroll_bars): Likewise.
22819
22820 2007-07-15 Martin Rudalics <rudalics@gmx.at>
22821
22822 * window.c (window_min_size_2): New function.
22823 (window_min_size_1, size_window, Fdisplay_buffer)
22824 (Fsplit_window, adjust_window_trailing_edge): Use it to avoid
22825 windows without mode- or header-lines when window-min-height is
22826 too small.
22827 (size_window): Reset nodelete_p after testing it, following an
22828 earlier note by Kim F. Storm.
22829 (display_buffer): Do not set split_height_threshold to twice the
22830 value of window_min_height to avoid changing the value of a
22831 customizable variable. Rather explicitly check whether the
22832 height of the window that shall be splitted is at least as large
22833 as split_height_threshold.
22834 (Fwindow_full_width_p): New defun.
22835 (syms_of_window): Defsubr it.
22836
22837 * window.h: Add EXFUN for Fwindow_full_width_p.
22838
22839 2007-07-14 Jason Rumney <jasonr@gnu.org>
22840
22841 * process.c [WINDOWSNT]: Don't undefine AF_INET6.
22842
22843 2007-07-14 Richard Stallman <rms@gnu.org>
22844
22845 * eval.c (maybe_call_debugger): New function.
22846 (find_handler_clause): Use maybe_call_debugger.
22847 Call it when the handler says `debug'.
22848 Eliminate DEBUGGER_VALUE_PTR.
22849 (Fsignal): Eliminate debugger_value.
22850 (Qdebug): New variable.
22851 (syms_of_eval): Initialize it.
22852
22853 2007-07-14 Juanma Barranquero <lekktu@gmail.com>
22854
22855 * eval.c (Fprogn):
22856 * keyboard.c (Ftrack_mouse):
22857 * print.c (Fwith_output_to_temp_buffer):
22858 * window.c (Fsave_window_excursion): Doc fix.
22859
22860 2007-07-13 Stefan Monnier <monnier@iro.umontreal.ca>
22861
22862 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 400.
22863
22864 2007-07-12 Stefan Monnier <monnier@iro.umontreal.ca>
22865
22866 * process.h (struct Lisp_Process): Turn slots infd, outfd,
22867 kill_without_query, pty_flag, tick, update_tick, decoding_carryover,
22868 inherit_coding_system_flag, filter_multibyte, adaptive_read_buffering,
22869 read_output_delay, and read_output_skip from Lisp_Objects to ints.
22870 Remove unused encoding_carryover.
22871 * process.c: Adjust all functions accordingly.
22872
22873 2007-07-12 Richard Stallman <rms@gnu.org>
22874
22875 * term.c: Include unistd.h only if HAVE_UNISTD_H.
22876
22877 2007-07-11 Jason Rumney <jasonr@gnu.org>
22878
22879 * makefile.w32-in (LIBS): Include OLE32.
22880
22881 * w32fns.c (w32_msg_pump) <WM_EMACS_CREATEWINDOW>: Initialize COM.
22882 (w32_msg_pump) <WM_DESTROY>: Uninitialize COM.
22883
22884 2007-07-11 Stefan Monnier <monnier@iro.umontreal.ca>
22885
22886 * lisp.h (struct Lisp_Hash_Table): Turn next_weak into a bare pointer.
22887 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and turned
22888 from a Lisp_Object into a bare pointer.
22889 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
22890 Adjust the code correspondingly.
22891
22892 * alloc.c (emacs_blocked_free): Remove unused var `bytes_used_now'.
22893
22894 * term.c: Include unistd.h for ttyname, used in handle_one_term_event.
22895 (term_show_mouse_face): Remove unused var `j'.
22896 (handle_one_term_event): Remove unused vars `i' and `j'.
22897 Don't cast return value of ttyname since it's not necessary.
22898
22899 2007-07-10 Stefan Monnier <monnier@iro.umontreal.ca>
22900
22901 * alloc.c (mark_maybe_pointer): Enforce mult-of-8 alignment when using
22902 USE_LSB_TAG. Suggested by Dmitry Antipov <dmantipov@yandex.ru>.
22903
22904 * fns.c (map_char_table): Use an array of int for `indices' rather than
22905 an array of Lisp_Objects (which are only ever integers anyway).
22906 (Fmap_char_table): Update caller.
22907 * lisp.h: Update prototype.
22908 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap):
22909 * fontset.c (Ffontset_info):
22910 * casetab.c (set_case_table): Update callers.
22911
22912 * editfns.c (Ftranspose_regions): Use EMACS_INT for positions.
22913
22914 * keymap.c (struct accessible_keymaps_data)
22915 (struct where_is_internal_data): New structures.
22916 (accessible_keymaps_1, where_is_internal_1): Use them to change
22917 interface to adhere to the one used by map_keymap.
22918 (Faccessible_keymaps, where_is_internal): Use map_keymap.
22919 (accessible_keymaps_char_table, where_is_internal_2): Remove.
22920
22921 * keymap.h (map_keymap_function_t): More informative prototype.
22922
22923 2007-07-10 Guanpeng Xu <herberteuler@hotmail.com>
22924
22925 * search.c (Vinhibit_changing_match_data, search_regs_1): New vars.
22926 (looking_at_1): Don't change search_regs and last_thing_searched
22927 if `inhibit-changing-match-data' is non-nil.
22928 (string_match_1, search_buffer, set_search_regs): Likewise.
22929 (syms_of_search): Add Lisp level definition for
22930 `inhibit-changing-match-data' and set it to nil.
22931 (boyer_moore): If `inhibit-changing-match-data' is non-nil, compute
22932 start and end of the match, instead of using values in search_regs.
22933
22934 2007-07-01 Stefan Monnier <monnier@iro.umontreal.ca>
22935
22936 * minibuf.c (Fcompleting_read): New value `confirm-only'
22937 for `require-match'.
22938
22939 2007-06-28 Stefan Monnier <monnier@iro.umontreal.ca>
22940
22941 * fileio.c (Fdo_auto_save): Revert last patch installed unwillingly as
22942 part of the 2007-06-27 change to syms_of_fileio.
22943
22944 2007-06-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22945
22946 * macterm.c [USE_MAC_TSM] (mac_handle_text_input_event):
22947 Check WINDOWP before using XWINDOW. Consolidate return statements.
22948
22949 2007-06-27 Richard Stallman <rms@gnu.org>
22950
22951 * fileio.c (syms_of_fileio) <after-insert-file-functions>: Doc fix.
22952
22953 2007-06-27 Juanma Barranquero <lekktu@gmail.com>
22954
22955 * buffer.c (syms_of_buffer) <selective-display>: Fix typo in docstring.
22956
22957 2007-06-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22958
22959 * gmalloc.c [HAVE_GTK_AND_PTHREAD]: Check this after including config.h.
22960 (_aligned_blocks_mutex) [USE_PTHREAD]: New variable.
22961 (LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS): New macros.
22962 (_free_internal, memalign): Use them.
22963 (_malloc_mutex, _aligned_blocks_mutex) [USE_PTHREAD]:
22964 Initialize to PTHREAD_MUTEX_INITIALIZER.
22965 (malloc_initialize_1) [USE_PTHREAD]: Don't use recursive mutex.
22966 (morecore_nolock): Rename from morecore. All uses changed.
22967 Use only nolock versions of internal allocation functions.
22968 (_malloc_internal_nolock, _realloc_internal_nolock)
22969 (_free_internal_nolock): New functions created from
22970 _malloc_internal, _realloc_internal, and _free_internal.
22971 (_malloc_internal, _realloc_internal, _free_internal): Use them.
22972 Copy hook value to automatic variable before its use.
22973 (memalign): Copy hook value to automatic variable before its use.
22974
22975 2007-06-26 Kenichi Handa <handa@m17n.org>
22976
22977 * coding.c (Ffind_operation_coding_system): Docstring improved.
22978 (syms_of_coding): Docstring of `file-coding-system-alist' improved.
22979
22980 2007-06-25 David Kastrup <dak@gnu.org>
22981
22982 * keymap.c (Fcurrent_active_maps): Add `position' argument.
22983 (Fwhere_is_internal): Adjust call to `current-active-maps' to
22984 cater for additional parameter.
22985
22986 * keymap.h: Adjust number of parameters to `current-active-maps'.
22987
22988 * doc.c (Fsubstitute_command_keys): Adjust call of
22989 `current-active-maps'.
22990
22991 2007-06-25 David Kastrup <dak@gnu.org>
22992
22993 * callint.c (Fcall_interactively): Make the parsing of interactive
22994 specs somewhat more readable.
22995
22996 2007-06-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22997
22998 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe background
22999 to scroll bar gap also when bitmap fills fringe. Draw only foreground
23000 if extended background has already been filled.
23001
23002 2007-06-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23003
23004 * macgui.h (USE_CG_DRAWING): Don't require USE_ATSUI.
23005 (USE_MAC_TOOLBAR): Require USE_CG_DRAWING.
23006
23007 * macmenu.c (mac_dialog_modal_filter, Fx_popup_dialog) [MAC_OSX]:
23008 Put special treatment for Fmessage_box, Fyes_or_no_p, and Fy_or_n_p
23009 in #if 0 as it is not compatible with y-or-n-p-with-timeout.
23010 (timer_check) [TARGET_API_MAC_CARBON]: Add extern.
23011 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Use QuitEventLoop
23012 instead of QuitAppModalLoopForWindow. Consolidate QuitEventLoop calls.
23013 (pop_down_dialog) [TARGET_API_MAC_CARBON]: New function.
23014 [TARGET_API_MAC_CARBON] (create_and_show_dialog): Use it for unwind.
23015 Run timers during dialog popup.
23016 (Fmenu_or_popup_active_p) [TARGET_API_MAC_CARBON]: Use popup_activated.
23017
23018 2007-06-21 Jason Rumney <jasonr@gnu.org>
23019
23020 * image.c (convert_mono_to_color_image): Swap fore and background.
23021
23022 2007-06-20 Jason Rumney <jasonr@gnu.org>
23023
23024 * w32bdf.c (w32_BDF_to_x_font): Unmap memory when finished.
23025 (w32_free_bdf_font): Unmap memory not handle.
23026
23027 2007-06-20 Sam Steingold <sds@gnu.org>
23028
23029 * gmalloc.c (__morecore): Fix the declaration to comply with the
23030 definition.
23031
23032 2007-06-20 Juanma Barranquero <lekktu@gmail.com>
23033
23034 * w32term.c (w32_delete_display): Remove leftover declaration.
23035 (w32_define_cursor, w32_initialize): Make static.
23036
23037 * w32.c (_wsa_errlist): Fix typo in error message.
23038 (init_environment): Ignore any environment variable from the
23039 registry having a null value.
23040
23041 2007-06-20 Glenn Morris <rgm@gnu.org>
23042
23043 * Makefile.in (LIBGIF): Default to -lgif.
23044
23045 2007-06-17 Jason Rumney <jasonr@gnu.org>
23046
23047 * w32menu.c (add_menu_item): Don't use multibyte string functions on
23048 unicode strings.
23049
23050 2007-06-16 Juanma Barranquero <lekktu@gmail.com>
23051
23052 * xdisp.c (syms_of_xdisp) <auto-resize-tool-bars>:
23053 Fix typo in docstring.
23054
23055 2007-06-16 Eli Zaretskii <eliz@gnu.org>
23056
23057 * w32menu.c (add_menu_item): Escape `&' characters in menu items
23058 and their keybindings.
23059
23060 2007-06-15 Chong Yidong <cyd@stupidchicken.com>
23061
23062 * composite.c (update_compositions): Fix last fix.
23063
23064 2007-06-14 Jason Rumney <jasonr@gnu.org>
23065
23066 * w32.c (get_process_times_fn): New function pointer.
23067 (globals_of_w32): Intialize it if present in kernel32.dll.
23068 (w32_get_internal_run_time): New function.
23069
23070 * editfns.c (Fget_internal_run_time) [WINDOWSNT]: Use it.
23071
23072 2007-06-14 Kenichi Handa <handa@etlken.m17n.org>
23073
23074 * composite.c (update_compositions): Check the validness of
23075 compositions.
23076
23077 2007-06-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23078
23079 * frame.h (struct frame) [MAC_OS]: New member external_tool_bar.
23080 (FRAME_EXTERNAL_TOOL_BAR) [MAC_OS]: Use it.
23081
23082 * macfns.c (mac_window) [USE_MAC_TOOLBAR]: Set toolbar_win_gravity.
23083 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]: Set FRAME_EXTERNAL_TOOL_BAR.
23084
23085 * macgui.h (USE_MAC_TOOLBAR): New define.
23086
23087 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
23088 Return immediately unless popup is activated.
23089
23090 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe
23091 background to scroll bar gap.
23092 (x_scroll_bar_create) [MAC_OSX]: Set bar->fringe_extended_p.
23093 (XTset_vertical_scroll_bar) [MAC_OSX]: Put leftmost/rightmost
23094 scroll bars on frame edge. Check fringe background extension.
23095 Don't clear extended fringe background area.
23096 (TOOLBAR_IDENTIFIER, TOOLBAR_ICON_ITEM_IDENTIFIER)
23097 (TOOLBAR_ITEM_COMMAND_ID_OFFSET, TOOLBAR_ITEM_COMMAND_ID_P)
23098 (TOOLBAR_ITEM_COMMAND_ID_VALUE, TOOLBAR_ITEM_MAKE_COMMAND_ID):
23099 [USE_MAC_TOOLBAR]: New macros.
23100 (mac_move_window_with_gravity, mac_get_window_origin_with_gravity)
23101 (mac_handle_toolbar_event, mac_image_spec_to_cg_image)
23102 (mac_create_frame_tool_bar, update_frame_tool_bar, free_frame_tool_bar)
23103 (mac_tool_bar_note_mouse_movement, mac_handle_toolbar_command_event)
23104 [USE_MAC_TOOLBAR]: New functions.
23105 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Reposition window
23106 manually if previous repositioning has failed.
23107 (mac_handle_keyboard_event): Use precomputed event kind.
23108 (XTread_socket) [USE_MAC_TOOLBAR]: Handle click in structure region
23109 as tool bar item click. Handle mouse movement over tool bar items.
23110
23111 * macterm.h (struct mac_output) [USE_MAC_TOOLBAR]: New member
23112 toolbar_win_gravity.
23113 (struct scroll_bar) [MAC_OSX]: New member fringe_extended_p.
23114 (update_frame_tool_bar, free_frame_tool_bar) [USE_MAC_TOOLBAR]:
23115 Add externs.
23116
23117 * xdisp.c (update_tool_bar, redisplay_tool_bar, redisplay_window)
23118 [USE_MAC_TOOLBAR]: Sync with GTK+ tool bar display.
23119
23120 2007-06-14 Chong Yidong <cyd@stupidchicken.com>
23121
23122 * image.c (search_image_cache): Remove unused variable.
23123
23124 2007-06-13 Chong Yidong <cyd@stupidchicken.com>
23125
23126 * xfns.c, xmenu.c: Link to xaw3d if available.
23127
23128 2007-06-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23129
23130 * dispextern.h (struct image) [HAVE_WINDOW_SYSTEM]: New members
23131 frame_foreground and frame_background.
23132
23133 * image.c (lookup_image): Save frame foreground and background colors.
23134 (search_image_cache): Check if saved and current frame colors match.
23135
23136 2007-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
23137
23138 * regex.c (regex_compile): Remove the `regnum' counter.
23139 Use bufp->re_nsub instead. Add support for \(?N:RE\).
23140
23141 2007-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
23142
23143 * term.c: Include intervals.h to declare Fget_text_property.
23144
23145 2007-06-10 Jason Rumney <jasonr@gnu.org>
23146
23147 * w32fns.c (Fx_file_dialog): Take size from struct not pointer.
23148
23149 2007-06-08 Juanma Barranquero <lekktu@gmail.com>
23150
23151 * callint.c (Fcall_interactively):
23152 * editfns.c (Fdelete_and_extract_region):
23153 * fileio.c (Fread_file_name):
23154 * fns.c (Fmapconcat):
23155 * keyboard.c (cmd_error_internal):
23156 * keymap.c (Fkey_description):
23157 * lread.c (openp):
23158 * minibuf.c (read_minibuf):
23159 * search.c (wordify):
23160 * sunfns.c (sel_read):
23161 * xdisp.c (Fformat_mode_line, syms_of_xdisp):
23162 * xfns.c (x_default_scroll_bar_color_parameter):
23163 * xmenu.c (menu_help_callback):
23164 * xselect.c (Fx_get_atom_name):
23165 * xterm.c (x_term_init): Use empty_unibyte_string.
23166
23167 2007-06-08 Dmitry Antipov <dmantipov@yandex.ru> (tiny change)
23168
23169 * alloc.c (init_strings): Initialize canonical empty strings.
23170 (make_uninit_string, make_uninit_multibyte_string): Return appropriate
23171 canonical empty string when the requested size is 0.
23172
23173 * emacs.c (empty_unibyte_string): Rename from empty_string.
23174 (empty_multibyte_string): New canonical empty string.
23175 (syms_of_emacs): Don't initialize empty_string.
23176
23177 * lisp.h (STRING_SET_UNIBYTE): Return the canonical empty unibyte
23178 string, if appropriate.
23179 (empty_unibyte_string, empty_multibyte_string): New externs.
23180 (empty_string): Remove extern.
23181
23182 * lread.c (syms_of_lread): Use empty_unibyte_string.
23183
23184 2007-06-07 Jason Rumney <jasonr@gnu.org>
23185
23186 * s/ms-w32.h: Don't define HAVE_TZNAME.
23187
23188 * editfns.c (Fcurrent_time_zone): Remove hack for Japanese Windows.
23189
23190 2007-06-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23191
23192 * mac.c (xrm_get_preference_database): Remove BLOCK_INPUT.
23193
23194 * macfns.c (mac_get_window_bounds): Move extern to macterm.h.
23195 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use GetGlobalMouse.
23196
23197 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
23198 Don't call next handler.
23199 [TARGET_API_MAC_CARBON] (install_menu_target_item_handler):
23200 Remove argument. Install handler to application.
23201 (set_frame_menubar): Don't change deep_p.
23202 (mac_menu_show): Use FRAME_OUTER_TO_INNER_DIFF_X and
23203 FRAME_OUTER_TO_INNER_DIFF_Y.
23204 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
23205 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
23206 [HAVE_DIALOGS]: New macros.
23207 [HAVE_DIALOGS] (mac_handle_dialog_event, create_and_show_dialog):
23208 Use them.
23209 (fill_menubar) [TARGET_API_MAC_CARBON]: Use CFString.
23210
23211 * macselect.c [MAC_OSX] (install_service_handler): Rename from
23212 init_service_handler. All callers changed. Return OSStatus value.
23213
23214 * macterm.c (mac_begin_cg_clip): New arg F. Call SetPortWindowPort.
23215 All callers changed so as not to call SetPortWindowPort.
23216 (mac_begin_cg_clip) [USE_CG_DRAWING]: Call mac_prepare_for_quickdraw.
23217 (mac_draw_image_string_atsui) [USE_ATSUI]: New function created from
23218 mac_draw_string_common.
23219 (mac_draw_image_string_qd): Likewise.
23220 (mac_draw_string_common): Use them. Add INLINE.
23221 (XTmouse_position, x_scroll_bar_report_motion) [TARGET_API_MAC_CARBON]:
23222 Use FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y, and
23223 GetGlobalMouse.
23224 (x_set_mouse_pixel_position) [MAC_OSX]: Use FRAME_OUTER_TO_INNER_DIFF_X
23225 and FRAME_OUTER_TO_INNER_DIFF_Y.
23226 [TARGET_API_MAC_CARBON] (mac_handle_mouse_event): Likewise.
23227 [USE_MAC_TSM] (mac_handle_text_input_event): Likewise.
23228 (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Move code for
23229 repositioning window to mac_handle_window_event.
23230 (x_make_frame_invisible) [TARGET_API_MAC_CARBON]: Move code for
23231 saving window location to mac_handle_window_event
23232 [USE_MAC_FONT_PANEL] (mac_show_hide_font_panel): Install handler here.
23233 (install_menu_target_item_handler): Remove argument in extern.
23234 [TARGET_API_MAC_CARBON] (mac_event_to_emacs_modifiers):
23235 Also accept command events.
23236 (do_keystroke): New function created from XTread_socket.
23237 (init_command_handler): Remove functions.
23238 [TARGET_API_MAC_CARBON] (mac_handle_window_event): Reposition window
23239 and save window location by kEventWindowShowing and kEventWindowHiding
23240 handlers here. Don't call next handler for window state change and
23241 focus events.
23242 (mac_handle_application_event, mac_handle_keyboard_event)
23243 [TARGET_API_MAC_CARBON]: New functions.
23244 (install_window_handler) [TARGET_API_MAC_CARBON]: Register handlers for
23245 kEventWindowShowing and kEventWindowHiding events. Move installation
23246 of mouse, font, text input and menu target item handlers to
23247 install_application_handler.
23248 (install_application_handler) [TARGET_API_MAC_CARBON]: New function.
23249 (mac_handle_cg_display_reconfig) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
23250 New function.
23251 (init_dm_notification_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
23252 Register it.
23253 (XTread_socket) [TARGET_API_MAC_CARBON]:
23254 Consolidate SendEventToEventTarget calls.
23255 Use FRAME_OUTER_TO_INNER_DIFF_X and FRAME_OUTER_TO_INNER_DIFF_Y.
23256 Move application activation handler to mac_handle_application_event.
23257 Move keyboard handler to mac_handle_keyboard_event.
23258 (XTread_socket) [!TARGET_API_MAC_CARBON]: Use do_keystroke.
23259 (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
23260 init_command_handler. Call install_application_handler.
23261
23262 * macterm.h (mac_get_window_bounds): Move extern from macfns.c.
23263 (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y): New macros.
23264
23265 2007-06-07 Glenn Morris <rgm@gnu.org>
23266
23267 * emacs.c (main): Use `emacs-copyright' in --version output.
23268
23269 2007-06-06 Chong Yidong <cyd@stupidchicken.com>
23270
23271 * image.c (xpm_load): Remove spurious call to xpm_init_color_cache.
23272
23273 2007-06-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23274
23275 * macfns.c (mac_window): Replace WindowPtr with WindowRef.
23276
23277 * macgui.h: Replace WindowPtr with WindowRef.
23278
23279 * macmenu.c: Replace MenuHandle and GetMenuHandle with MenuRef and
23280 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
23281 Replace ControlHandle with ControlRef.
23282 (install_menu_quit_handler): Rename arg MENU_HANDLE to ROOT_MENU.
23283
23284 * macterm.c: Replace MenuHandle and GetMenuHandle with MenuRef and
23285 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
23286 Replace ControlHandle with ControlRef.
23287 (USE_CARBON_EVENTS): Remove. Use TARGET_API_MAC_CARBON instead.
23288 [MAC_OS8] (do_get_menus): Rename variable `menu_handle' to `menu'.
23289
23290 * macterm.h (struct scroll_bar): Rename member control_handle_low
23291 and control_handle_high to control_ref_low and control_ref_high.
23292 All uses changed.
23293 (SCROLL_BAR_CONTROL_REF, SET_SCROLL_BAR_CONTROL_REF): Rename from
23294 SCROLL_BAR_CONTROL_HANDLE and SET_SCROLL_BAR_CONTROL_HANDLE,
23295 respectively. All uses changed.
23296 (XCreatePixmap, XCreatePixmapFromBitmapData, XSetWindowBackground)
23297 (install_window_handler, remove_window_handler): Replace WindowPtr
23298 with WindowRef in externs.
23299
23300 2007-06-05 Juanma Barranquero <lekktu@gmail.com>
23301
23302 * xfaces.c (Finternal_lisp_face_p): Signal error for face alias loops.
23303
23304 2007-06-03 Nick Roberts <nickrob@snap.net.nz>
23305
23306 * keyboard.c (discard_mouse_events): Add GPM_CLICK_EVENT case.
23307
23308 * frame.c (Fmouse_position, Fmouse_pixel_position):
23309 Condition on HAVE_GPM too.
23310
23311 * term.c (term_mouse_highlight): Remove unused variables.
23312 (Fterm_open_connection): Set gpm_zerobased to 1.
23313 (term_mouse_movement, term_mouse_click, handle_one_term_event):
23314 Use zero based co-ordinates.
23315 (handle_one_term_event): Report a drag as mouse movement too.
23316
23317 * Makefile.in (MOUSE_SUPPORT): Define for HAVE_GPM.
23318
23319 2007-06-03 Chong Yidong <cyd@stupidchicken.com>
23320
23321 * image.c (search_image_cache): New function. Require background
23322 color match if background color is unspecified in the image spec.
23323 (uncache_image, lookup_image): Use it.
23324
23325 2007-06-01 Juanma Barranquero <lekktu@gmail.com>
23326
23327 * window.c (Fshrink_window): Reflow docstring.
23328
23329 2007-06-02 Chong Yidong <cyd@stupidchicken.com>
23330
23331 * Version 22.1 released.
23332
23333 2007-06-01 Richard Stallman <rms@gnu.org>
23334
23335 * xfns.c (x_encode_text): Add GCPRO.
23336
23337 2007-06-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23338
23339 * xfns.c (x_set_name_internal): Save encoded name before
23340 x_encode_text in case string data is relocated.
23341
23342 2007-05-31 Richard Stallman <rms@gnu.org>
23343
23344 * buffer.c (syms_of_buffer): Doc fix.
23345
23346 2007-05-30 Nick Roberts <nickrob@snap.net.nz>
23347
23348 * sysdep.c (init_sys_modes): Add rather than replace with
23349 O_NONBLOCK.
23350
23351 * frame.c [HAVE_GPM] (Fset_mouse_pixel_position): Add call to
23352 term_mouse_moveto.
23353
23354 * termhooks.h (term_mouse_moveto): New extern.
23355
23356 * term.c (mouse_face_window): Rename...
23357 (Qmouse_face_window): ...to this.
23358 (term_show_mouse_face, term_clear_mouse_face)
23359 (term_mouse_highlight): Use Qmouse_face_window.
23360 (term_mouse_moveto): New function.
23361 (term_mouse_position): Make it work.
23362 (syms_of_term): Uncomment assignment to mouse_position_hook.
23363 Staticpro Qmouse_face_window.
23364
23365 2007-05-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23366
23367 * xdisp.c (redisplay_internal): Bind inhibit-point-motion-hooks to t
23368 around current_column call.
23369
23370 2007-05-26 Dan Nicolaescu <dann@ics.uci.edu>
23371
23372 * xfaces.c (syms_of_xfaces): Delete stray semicolon.
23373 * xdisp.c (next_element_from_buffer):
23374 * window.c (delete_window):
23375 * term.c (term_mouse_highlight):
23376 * msdos.c (getdefdir):
23377 * macterm.c (mac_create_bitmap_from_bitmap_data)
23378 (init_font_name_table):
23379 * fns.c (Fsxhash):
23380 * data.c (Fmake_local_variable):
23381 * ccl.c (ccl_driver): Likewise.
23382
23383 2007-05-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23384
23385 * macterm.c [USE_CARBON_EVENTS] (mac_handle_window_event):
23386 Call mac_wakeup_from_rne on window size change.
23387
23388 2007-05-25 Chong Yidong <cyd@stupidchicken.com>
23389
23390 * image.c (uncache_image): Fix typo.
23391
23392 2007-05-23 Johannes Weiner <hannes@saeurebad.de> (tiny change)
23393
23394 * keyboard.c (make_lispy_movement): Condition on HAVE_GPM too.
23395
23396 2007-05-22 Richard Stallman <rms@gnu.org>
23397
23398 * xterm.c (x_connection_closed): Remove NO_RETURN.
23399
23400 2007-05-22 Martin Rudalics <rudalics@gmx.at>
23401
23402 * syntax.c (scan_words): Fix arg to UPDATE_SYNTAX_TABLE_BACKWARD.
23403
23404 2007-05-21 Chong Yidong <cyd@stupidchicken.com>
23405
23406 * image.c (uncache_image): New function.
23407 (Fimage_refresh): New function.
23408
23409 2007-05-20 Jan Djärv <jan.h.d@swipnet.se>
23410
23411 * Makefile.in: Move GPM check outside HAVE_X_WINDOWS.
23412
23413 2007-05-20 Nick Roberts <nickrob@snap.net.nz>
23414
23415 * config.in, keyboard.c, Makefile.in, sysdep.c, term.c,
23416 * termhooks.h: Use HAVE_GPM instead of HAVE_GPM_H.
23417
23418 2007-05-20 Nick Roberts <nickrob@snap.net.nz>
23419
23420 * keyboard.c (make_lispy_event): Make case GPM_CLICK_EVENT
23421 conditional on [HAVE_GPM_H].
23422
23423 2007-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
23424
23425 * syntax.c (skip_chars): Update syntax-table only after we checked that
23426 the new location is valid.
23427
23428 2007-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23429
23430 * macterm.c (x_calc_absolute_position): Add BLOCK_INPUT around
23431 mac_get_window_bounds.
23432
23433 2007-05-20 Nick Roberts <nickrob@snap.net.nz>
23434
23435 * Makefile.in (LIBGPM): Allow it to be set from configure.
23436 If set then link Emacs with it.
23437
23438 * config.in: Regenerate.
23439
23440 * lisp.h (add_gpm_wait_descriptor, delete_gpm_wait_descriptor):
23441 New externs.
23442
23443 * termhooks.h [HAVE_GPM_H] (enum event_kind): Add GPM_CLICK_EVENT.
23444 Include gpm.h.
23445 (handle_one_term_event, term_gpm): New externs.
23446
23447 * sysdep.c [HAVE_GPM_H] (init_sys_modes): Make gpm_fd nonblocking
23448 and allow it to be interrupted by SIGIO.
23449
23450 * process.c (gpm_wait_mask, max_gpm_desc): New variables.
23451 (wait_reading_process_output): Wait on gpm_fd too.
23452 (add_gpm_wait_descriptor, delete_gpm_wait_descriptor)): New functions.
23453 (add_gpm_wait_descriptor_called_flag): New variable.
23454 (delete_keyboard_wait_descriptor): Check gpm_wait_mask.
23455
23456 * keyboard.c [HAVE_GPM_H] (Qmouse_fixup_help_message)
23457 (make_lispy_movement, tracking_off, Ftrack_mouse, some_mouse_moved)
23458 (show_help_echo, readable_events, kbd_buffer_get_event, init_keyboard):
23459 Extend HAVE_MOUSE ifdefs to HAVE_GPM_H.
23460 (make_lispy_event): Add case GPM_CLICK_EVENT.
23461 (read_avail_input): Handle mouse input.
23462
23463 * term.c (write_glyphs_with_face): New function.
23464 [HAVE_GPM_H]: Include buffer.h, sys/fcntl.h.
23465 (mouse_face_beg_row, mouse_face_beg_col, mouse_face_end_row)
23466 (mouse_face_end_col, mouse_face_past_end, mouse_face_window)
23467 (mouse_face_face_id, term_gpm, pos_x, pos_y)
23468 (last_mouse_x, last_mouse_y): New variables.
23469 (term_show_mouse_face, term_clear_mouse_face, fast_find_position)
23470 (term_mouse_highlight, term_mouse_movement, term_mouse_position)
23471 (term_mouse_click, handle_one_term_event, Fterm_open_connection)
23472 (Fterm_close_connection): New functions.
23473 (term_init): Initialise mouse_face_window.
23474
23475 2007-05-19 Chong Yidong <cyd@stupidchicken.com>
23476
23477 * xdisp.c (redisplay_window): If first window line is a
23478 continuation line, recompute the new window start instead of
23479 recentering.
23480
23481 2007-05-18 Glenn Morris <rgm@gnu.org>
23482
23483 * m/alpha.h (ORDINARY_LINK): No longer define on OpenBSD.
23484 Suggested by Alfred M. Szmidt <ams@gnu.org>.
23485
23486 2007-05-17 Glenn Morris <rgm@gnu.org>
23487
23488 * m/macppc.h (ORDINARY_LINK): No longer define on OpenBSD.
23489
23490 2007-05-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23491
23492 * macterm.c [USE_CARBON_EVENTS] (mac_convert_event_ref): Also convert
23493 dead key repeat and up events.
23494
23495 2007-05-14 Chong Yidong <cyd@stupidchicken.com>
23496
23497 * image.c (pbm_load): Check image size for monochrome pbm.
23498
23499 2007-05-13 Chong Yidong <cyd@stupidchicken.com>
23500
23501 * xterm.c (XTread_socket): Revert last change.
23502
23503 2007-05-12 Chong Yidong <cyd@stupidchicken.com>
23504
23505 * image.c (pbm_load): Correctly check image size for greyscale pbm.
23506
23507 * xterm.c (XTread_socket): Yet Another Uncaught X Error Crash (YAUXEC).
23508
23509 2007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
23510
23511 * editfns.c (Ftranspose_regions): Yet another int/Lisp_Object
23512 mixup (YAILOM).
23513
23514 2007-05-07 Andreas Schwab <schwab@suse.de>
23515
23516 * keymap.c (Flookup_key): Fix typo in last change.
23517
23518 2007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
23519
23520 * keymap.c (Fdefine_key, Flookup_key): Only do the 0x80->meta_modifier
23521 mapping for unibyte strings.
23522
23523 2007-05-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23524
23525 * macmenu.c (mac_dialog_show): Apply 2007-04-27 change for xmenu.c.
23526 (Fx_popup_dialog) [MAC_OSX]: Likewise.
23527
23528 2007-04-29 Richard Stallman <rms@gnu.org>
23529
23530 * insdel.c (replace_range): For undo, record insertion first.
23531
23532 2007-04-29 Andreas Schwab <schwab@suse.de>
23533
23534 * lisp.h (VECSIZE): Use OFFSETOF.
23535
23536 2007-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23537
23538 * xdisp.c (try_window_reusing_current_matrix): Fix number of
23539 disabled lines.
23540
23541 2007-04-28 Richard Stallman <rms@gnu.org>
23542
23543 * lread.c (read_escape): In a string, \s is always space.
23544
23545 2007-04-27 Jan Djärv <jan.h.d@swipnet.se>
23546
23547 * xmenu.c (xdialog_show): Call Fredisplay before showing the dialog.
23548
23549 * gtkutil.c (xg_update_menubar, create_menus): Create empty
23550 submenu for menu bar items.
23551
23552 See ChangeLog.10 for earlier changes.
23553
23554 ;; Local Variables:
23555 ;; coding: utf-8
23556 ;; add-log-time-zone-rule: t
23557 ;; End:
23558
23559 Copyright (C) 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
23560
23561 This file is part of GNU Emacs.
23562
23563 GNU Emacs is free software: you can redistribute it and/or modify
23564 it under the terms of the GNU General Public License as published by
23565 the Free Software Foundation, either version 3 of the License, or
23566 (at your option) any later version.
23567
23568 GNU Emacs is distributed in the hope that it will be useful,
23569 but WITHOUT ANY WARRANTY; without even the implied warranty of
23570 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
23571 GNU General Public License for more details.
23572
23573 You should have received a copy of the GNU General Public License
23574 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
23575
23576 ;; arch-tag: dfb6ad96-1550-4905-9e53-d2059ee84c40