Regenerate configure.
[bpt/emacs.git] / src / ChangeLog
CommitLineData
1a0d7c06
GM
12010-05-12 Glenn Morris <rgm@gnu.org>
2
3 * Makefile.in (LIB_GCC): Set using configure, not cpp.
4 (GNULIB_VAR) [!ORDINARY_LINK]: Always set to $LIB_GCC.
5 * m/arm.h (LIB_GCC) [GNU_LINUX]:
6 * s/cygwin.h (LIB_GCC):
7 * s/freebsd.h (LIB_GCC):
8 * s/gnu-linux.h (LIB_GCC):
9 * s/msdos.h (LIB_GCC):
10 * s/netbsd.h (LIB_GCC):
11 Move to configure.
12
3ffd4615 132010-05-11 Karel Klic <kklic@redhat.com>
c90ca7b7
KH
14
15 * ftfont.c: Fix incorrect parentheses of #if condition for
16 definining M17N_FLT_USE_NEW_FEATURE.
17
acddf8ae
GM
182010-05-11 Glenn Morris <rgm@gnu.org>
19
20 * Makefile.in (LIBS_SYSTEM) [MSDOS]: Do not reset.
21 * s/msdos.h (MSDOS_LIBS_SYSTEM): Remove.
22
ae5e04fa
EZ
232010-05-10 Eli Zaretskii <eliz@gnu.org>
24
25 * xdisp.c (init_iterator): Don't turn on bidi reordering in
26 unibyte buffers. See
27 http://lists.gnu.org/archive/html/emacs-devel/2010-05/msg00263.html.
28
7490175b
GM
292010-05-10 Glenn Morris <rgm@gnu.org>
30
97efb629
GM
31 * Makefile.in (LIBS_SYSTEM): Set using configure, not cpp.
32 (LIBS_SYSTEM) [MSDOS]: Reset with MSDOS_LIBS_SYSTEM.
33 (LIBES): Use LIBS_SYSTEM as a variable.
34 * s/msdos.h (LIBS_SYSTEM): Rename to MSDOS_LIBS_SYSTEM. Always define.
35 * s/aix4-2.h (LIBS_SYSTEM):
36 * s/freebsd.h (LIBS_SYSTEM):
37 * s/hpux10-20.h (LIBS_SYSTEM):
38 * s/sol2-6.h (LIBS_SYSTEM):
39 * s/unixware.h (LIBS_SYSTEM):
40 Move to configure.
41
7490175b
GM
42 * s/aix4-2.h (MAIL_USE_LOCKF):
43 * s/bsd-common.h (MAIL_USE_FLOCK):
44 * s/darwin.h (MAIL_USE_FLOCK):
45 * s/gnu-linux.h (MAIL_USE_FLOCK):
46 * s/irix6-5.h (MAIL_USE_FLOCK):
47 * s/template.h (MAIL_USE_FLOCK):
48 Move to configure.
49
0235128c 502010-05-08 Chong Yidong <cyd@stupidchicken.com>
61a808e8
CY
51
52 * Version 23.2 released.
53
0235128c 542010-05-08 Andreas Schwab <schwab@linux-m68k.org>
5dcde606
AS
55
56 * composite.c (autocmp_chars): Save point as marker before calling
57 auto-composition-function (Bug#5984).
58
59 * lisp.h (restore_point_unwind): Add prototype.
60
61 * fileio.c (restore_point_unwind): Remove static attribute.
62
0235128c 632010-05-08 Kenichi Handa <handa@m17n.org>
c4170e32
KH
64
65 * ftfont.c (M17N_FLT_USE_NEW_FEATURE): Define it if we can use the
66 new feature of libotf and m17n-flt.
0235128c
SM
67 (ftfont_check_otf) [M17N_FLT_USE_NEW_FEATURE]:
68 Call OTF_check_features even if no specific feature is given.
c4170e32
KH
69 (PACK_OTF_TAG) [M17N_FLT_USE_NEW_FEATURE]: New macro.
70 (ftfont_drive_otf) [M17N_FLT_USE_NEW_FEATURE]: Handle the case
71 that OUT is NULL. Use OTF_drive_gsub_with_log and
72 OTF_drive_gpos_with_log instead of OTF_drive_gsub and
73 OTF_drive_gpos.
74 (ftfont_try_otf) [M17N_FLT_USE_NEW_FEATURE]: New function.
0235128c
SM
75 (ftfont_shape_by_flt) [M17N_FLT_USE_NEW_FEATURE]:
76 Setup mflt_enable_new_feature and mflt_try_otf.
77
4721152c
J
782010-05-08 Jan Djärv <jan.h.d@swipnet.se>
79
80 * xsettings.c (Ftool_bar_get_system_style): Correct comment.
81
82 * gtkutil.c (xg_pack_tool_bar): Change show_all to show for handle
83 box and toolbar (Bug #6139).
84 (xg_create_tool_bar): Remove comment (Bug #6139).
85 (xg_make_tool_item): Remove gtk_widget_show_all (Bug #6139).
86 (xg_show_toolbar_item): Add gtk_widget_show for weventbox (Bug #6139).
87
ee0a16cf
JB
882010-05-08 Juanma Barranquero <lekktu@gmail.com>
89
90 * makefile.w32-in ($(BLD)/eval.$(O), $(BLD)/w32fns.$(O)):
91 Update dependencies.
92
96d79611
EZ
932010-05-08 Eli Zaretskii <eliz@gnu.org>
94
95 * fringe.c (update_window_fringes): Set up truncation bitmaps for
96 R2L lines.
97
40c17879
GM
982010-05-08 Glenn Morris <rgm@gnu.org>
99
7b42b29f
GM
100 * Makefile.in (THIS_IS_MAKEFILE): Remove, unused.
101
40c17879
GM
102 * Makefile.in (LIBS_TERMCAP): Set with configure, not cpp.
103 (TERMCAP_OBJ): New, set by configure, replacing termcapobj.
104 (termcapobj): Replace with TERMCAP_OBJ.
105 (otherobj): Use $TERMCAP_OBJ instead of $termcapobj.
106 (LIBES): Use LIBS_TERMCAP as a variable.
107
108 * s/freebsd.h (osreldate.h): No longer include, since this file
109 does not use __FreeBSD_version any more.
110
111 * s/aix4-2.h (TERMINFO):
112 * s/cygwin.h (TERMINFO):
113 * s/darwin.h (TERMINFO, LIBS_TERMCAP) [HAVE_LIBNCURSES]:
114 * s/freebsd.h (TERMINFO, LIBS_TERMCAP):
115 * s/gnu-linux.h (TERMINFO, LIBS_TERMCAP) [HAVE_LIBNCURSES]:
116 * s/gnu.h (TERMINFO, LIBS_TERMCAP) [HAVE_LIBNCURSES]:
117 * s/hpux10-20.h (TERMINFO, LIBS_TERMCAP):
118 * s/irix6-5.h (TERMINFO):
119 * s/netbsd.h (LIBS_TERMCAP):
120 * s/openbsd.h (TERMINFO, LIBS_TERMCAP):
121 * s/sol2-6.h (LIBS_TERMCAP) [!TERMINFO]:
122 * s/usg5-4.h (TERMINFO):
123 Move to configure.
124
94b612ad
SM
1252010-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
126
127 * eval.c (unbind_to): Don't unbind a local binding into the global
128 binding when the local binding disappeared. Inversely, don't unbind
129 a global binding into a newly created local binding.
130 * data.c (set_internal): Make its `buf' arg into a `where' arg so we
131 can specify the frame to use, when applicable. Adjust callers.
132
15e12598
VB
1332010-05-07 Vincent Belaïche <vincent.belaiche@gmail.com>
134 Stefan Monnier <monnier@iro.umontreal.ca>
135
136 * floatfns.c (Fisnan, Fcopysign, Ffrexp, Fldexp): New functions.
137
f724825e
EZ
1382010-05-07 Eli Zaretskii <eliz@gnu.org>
139
5cba3209
EZ
140 * w32fns.c: Include w32.h.
141 (Fw32_shell_execute): Decode the error message before passing it
142 to `error'. (Bug#6126)
143
d16bdfc3
EZ
144 * msdos.c (dos_set_window_size):
145 * w16select.c (Fx_selection_exists_p): Use `Fsymbol_value (foo)'
146 instead of `XSYMBOL (foo)->value'.
147
59d93e87
EZ
1482010-05-07 Eli Zaretskii <eliz@gnu.org>
149
9fdec8bc
EZ
150 Fix the MS-DOS build, broken by autoconfiscation.
151
152 * Makefile.in: Don't use Make-style comments past the "start of
153 cpp stuff" line.
154 (MSDOS_OBJ): Remove xmenu.o (it is now defined by XMENU_OBJ).
155
156 * s/msdos.h (UNEXEC): Don't define (@unexec@ in Makefile.in is
157 edited directly by msdos/sed1v2.inp).
f724825e 158
2f86b22b
GM
1592010-05-07 Glenn Morris <rgm@gnu.org>
160
161 * Makefile.in (LD_SWITCH_SYSTEM): Set with configure, not cpp.
162 (LD_SWITCH_SYSTEM_EXTRA): New variable, set by configure.
163 (TEMACS_LDFLAGS): Use $LD_SWITCH_SYSTEM and $LD_SWITCH_SYSTEM_EXTRA,
164 move out of cpp section.
165 * s/freebsd.h (LD_SWITCH_SYSTEM):
166 * s/gnu-linux.h (LD_SWITCH_SYSTEM):
167 * s/netbsd.h (LD_SWITCH_SYSTEM):
168 * s/openbsd.h (LD_SWITCH_SYSTEM): Move to configure.in.
169
49ebbd65
DN
1702010-05-07 Dan Nicolaescu <dann@ics.uci.edu>
171
172 Define LIB_STANDARD and START_FILES using autoconf.
173 * s/usg5-4.h (LIB_STANDARD):
174 * s/netbsd.h (START_FILES):
175 * s/irix6-5.h (LIB_STANDARD):
176 * s/hpux10-20.h (LIB_STANDARD, START_FILES):
177 * s/gnu-linux.h (START_FILES, LIB_STANDARD):
178 * s/freebsd.h (START_FILES):
179 * s/darwin.h (START_FILES):
180 * s/cygwin.h (START_FILES):
181 * s/aix4-2.h (LIB_STANDARD):
182 * m/ibmrs6000.h (START_FILES): Remove, move logic to configure.in.
183 * Makefile.in (STARTFILES): Rename to START_FILES, define using
184 autoconf, not cpp.
185
d43c06d6
DN
1862010-05-06 Dan Nicolaescu <dann@ics.uci.edu>
187
28823648
DN
188 Remove NEED_BSDTTY and NEED_UNISTD_H.
189 * s/hpux10-20.h (NEED_BSDTTY): Remove.
190 * s/aix4-2.h (NEED_UNISTD_H): Remove.
191 * systty.h: Simplify conditionals for including <sys/bsdtty.h>,
192 <sys/ptyio.h> and <unistd.h>.
193
aca00430
DN
194 * emacs.c (main): Remove NO_DIR_LIBRARY conditional, unused.
195
d43c06d6
DN
196 * Makefile.in (STARTFILES): Conditionally define to make the usage clear.
197 * s/gnu.h (START_FILES): Remove empty definition.
198
3e56b11d
JD
1992010-05-06 Jan Djärv <jan.h.d@swipnet.se>
200
201 * xterm.c (x_draw_image_relief): Move declaration of extra to beginning.
202
e3cf0cde
GM
2032010-05-06 Glenn Morris <rgm@gnu.org>
204
205 * Makefile.in (CPP, LN_S): Remove unused variables.
206
774b9a60
SM
2072010-05-05 Stefan Monnier <monnier@iro.umontreal.ca>
208
209 * syntax.c (Fchar_syntax): Check the arg is a character (bug#6080).
210
4ab92842
LM
2112010-05-05 Lawrence Mitchell <wence@gmx.li>
212
213 * m/sparc.h: Fix typo in earlier change.
214
178f2507
SM
2152010-05-04 Stefan Monnier <monnier@iro.umontreal.ca>
216
217 Misc tweaks.
218 * eval.c (Fdefvaralias): Remove unintended nested if.
219 (internal_condition_case_2, internal_condition_case_n): Use ANSI type.
220
80f00217 2212010-05-04 Bernhard Herzog <bh@intevation.de> (tiny change)
991be6d4
JD
222
223 * xsmfns.c (smc_save_yourself_CB): strlen(client_id) => strlen(cwd).
224
ef03a4e6
DN
2252010-05-04 Dan Nicolaescu <dann@ics.uci.edu>
226
58eb6cf0
DN
227 Remove BSD_PGRPS.
228 * s/bsd-common.h (BSD_PGRPS): Remove undef.
229 * s/gnu-linux.h (BSD_PGRPS): Remove.
230 * term.c (dissociate_if_controlling_tty):
231 * sysdep.c (narrow_foreground_group, widen_foreground_group)
232 (init_sys_modes, reset_sys_modes):
233 * emacs.c (main):
234 * callproc.c (Fcall_process, child_setup): Remove code depending
235 on BSD_PGRPS.
236
ef03a4e6
DN
237 Remove POSIX_SIGNALS.
238 * s/usg5-4.h (POSIX_SIGNALS):
239 * s/netbsd.h (POSIX_SIGNALS):
240 * s/msdos.h (POSIX_SIGNALS):
241 * s/ms-w32.h (POSIX_SIGNALS):
242 * s/hpux11.h (POSIX_SIGNALS):
243 * s/gnu.h (POSIX_SIGNALS):
244 * s/gnu-linux.h (POSIX_SIGNALS):
245 * s/freebsd.h (POSIX_SIGNALS):
246 * s/darwin.h (POSIX_SIGNALS):
247 * s/cygwin.h (POSIX_SIGNALS):
248 * s/aix4-2.h (POSIX_SIGNALS): Remove definition.
249 * s/unixware.h:
250 * s/sol2-6.h: Remove comments on POSIX_SIGNALS.
251 * process.c (create_process):
252 * syssignal.h:
253 * sysdep.c (wait_for_termination, init_signals):
254 * process.c (create_process):
255 * msdos.c: POSIX_SIGNALS is always defined on all platforms,
256 remove all code that assumes the contrary.
257
49628785
GM
2582010-05-04 Glenn Morris <rgm@gnu.org>
259
27a2cdfc
GM
260 * s/gnu-linux.h (LD_SWITCH_SYSTEM): Use LD_SWITCH_X_SITE_AUX as a shell
261 variable.
262 * s/netbsd.h (LD_SWITCH_SYSTEM_tmp): Remove.
263 (LD_SWITCH_SYSTEM): Use $LD_SWITCH_X_SITE_AUX_RPATH.
264 * s/openbsd.h (LD_SWITCH_SYSTEM_tmp): Remove.
265 (LD_SWITCH_SYSTEM): Use $LD_SWITCH_X_SITE_AUX_RPATH instead of
266 LD_SWITCH_SYSTEM_tmp.
267 * Makefile.in (LD_SWITCH_X_SITE_AUX, LD_SWITCH_X_SITE_AUX_RPATH):
268 New variables, set by configure.
269
eb21eab5
GM
270 * s/aix4-2.h (LD_SWITCH_SYSTEM_TEMACS): Move to configure.in.
271 * s/darwin.h (HEADERPAD_EXTRA, LIBS_NSGUI): Remove.
272 (LD_SWITCH_SYSTEM_TEMACS): Move to configure.in.
273 * Makefile.in (LD_SWITCH_SYSTEM_TEMACS): New variable, set by configure.
274 (TEMACS_LDFLAGS): Use $LD_SWITCH_SYSTEM_TEMACS.
275
49628785
GM
276 * s/aix4-2.h (C_SWITCH_SYSTEM):
277 * m/alpha.h (C_SWITCH_MACHINE):
278 Move to configure.in.
279 * Makefile.in (C_SWITCH_MACHINE, C_SWITCH_SYSTEM):
280 New variables, set by configure.
281 (ALL_CFLAGS): Use $C_SWITCH_MACHINE and $C_SWITCH_SYSTEM in place of
282 $c_switch_machine and $c_switch_system.
283
7dff330b
DN
2842010-05-04 Dan Nicolaescu <dann@ics.uci.edu>
285
286 * s/hpux10-20.h (LIB_STANDARD): New definition.
287 * Makefile.in (ORDINARY_LINK): Remove setting LIB_STANDARD based
288 on it, not used anymore.
289
53967e09
CY
2902010-05-03 Chong Yidong <cyd@stupidchicken.com>
291
292 * eval.c (internal_condition_case_n): Rename from
293 internal_condition_case_2.
294 (internal_condition_case_2): New function.
295
296 * xdisp.c (safe_call): Use internal_condition_case_n.
297
298 * fileio.c (Fdelete_file, internal_delete_file): New arg FORCE.
299 (internal_delete_file, Frename_file): Callers changed.
300
301 * buffer.c (Fkill_buffer):
302 * callproc.c (delete_temp_file): Callers changed (Bug#6070).
303
304 * lisp.h: Update prototypes.
305
3dee6fdb
GM
3062010-05-03 Glenn Morris <rgm@gnu.org>
307
308 * Makefile.in (LIBX_EXTRA, LIBX_BASE): New variables.
309 (LIBXT_OTHER, LIBX_OTHER): New, set by configure.
310 (LIBXT): Set with configure, not cpp.
311 (LIBX): Remove.
312 (LIBES): Replace $LIBX with $LIBX_BASE and $LIBX_OTHER.
313
a101e0fb
DN
3142010-05-02 Dan Nicolaescu <dann@ics.uci.edu>
315
316 * m/amdx86-64.h (START_FILES, LIB_STANDARD): Remove.
317 The FreeBSD is not needed, the default works, Solaris version is
318 not needed, and the remaining case is not supported by configure.
319
f63d0028
JD
3202010-05-02 Jan Djärv <jan.h.d@swipnet.se>
321
322 * xsmfns.c (CHDIR_OPT): New define.
323 (smc_save_yourself_CB): Add CHDIR_OPT to options to use when
324 restarting emacs.
325
326 * xterm.c (x_connection_closed): Call Fkill_emacs instead of
327 shut_down_emacs.
328
329 * emacs.c (USAGE1): Mention --chdir.
330 (main): Handle --chdir.
331 (standard_args): Add --chdir.
332 (fatal_error_signal): Call Fkill_emacs for SIGTERM and SIGHUP (Bug
333 #5552).
334
e4814a9f
DN
3352010-05-01 Dan Nicolaescu <dann@ics.uci.edu>
336
cd03c74a
DN
337 Remove LD_SWITCH_MACHINE.
338 * Makefile.in (LD_SWITCH_MACHINE): Remove definition, unused.
339 (TEMACS_LDFLAGS): Do not use LD_SWITCH_MACHINE.
340
c3a398a1
DN
341 Clean up IRIX code.
342 * m/iris4d.h (TERMINFO, FIRST_PTY_LETTER): Move definitions ...
343 * s/irix6-5.h (TERMINFO, FIRST_PTY_LETTER): ... here.
344
87e7285c
DN
345 Clean up AIX code.
346 * m/ibmrs6000.inp: Remove file, unused.
347 * m/ibmrs6000.h (IBMR2AIX): Remove, unused.
348 (LD_SWITCH_MACHINE): Rename to LD_SWITCH_SYSTEM_TEMACS, and move
349 definition ...
350 * s/aix4-2.h (LD_SWITCH_SYSTEM_TEMACS): ... here.
351
80f00217
JB
352 * sysdep.c (child_setup_tty, init_sys_modes): Remove !IBMR2AIX code,
353 unused.
e4814a9f 354
59ca28de
EZ
3552010-05-01 Eli Zaretskii <eliz@gnu.org>
356
197daef4
EZ
357 Emulate POSIX_SIGNALS on MS-Windows.
358
359 * s/ms-w32.h (POSIX_SIGNALS, struct sigaction, SIG_BLOCK)
360 (SIG_SETMASK, SIG_UNBLOCK): Define.
d6dae14b
EZ
361
362 * sysdep.c (sys_signal) [WINDOWSNT]: #ifdef away.
363 (wait_for_termination) [WINDOWSNT]: Move MS-Windows specific code
364 from non-POSIX_SIGNALS section to POSIX_SIGNALS section.
365
80f00217
JB
366 * w32.c (sigemptyset, sigaddset, sigfillset, sigprocmask):
367 New stubs.
197daef4 368
af7c7572
EZ
369 Miscellaneous fixes of bidi display.
370
59ca28de
EZ
371 * xdisp.c (find_row_end): New function, refactored from display_line.
372 (display_line): Use it.
017ea819
EZ
373 (extend_face_to_end_of_line): In almost-filled rows, extend only
374 if the row is R2L and not continued.
166e930d 375 (display_line): Fix prepending of truncation glyphs to R2L rows.
af7c7572 376 Preserve overlay and string info in row->end.
166e930d
EZ
377 (insert_left_trunc_glyphs): Support addition of left truncation
378 glyphs to R2L rows.
b47e0dcf 379 (set_cursor_from_row): Don't place cursor on the vertical border
af7c7572
EZ
380 glyph between adjacent windows. Fix a crash when a display string
381 is continued to the next line. Don't return zero if cursor was
382 found by `cursor' property of a display string.
b47e0dcf
EZ
383 (try_cursor_movement): Don't assume that row->end == (row+1)->start,
384 test for that explicitly.
59ca28de 385
7acac9f4
GM
3862010-05-01 Glenn Morris <rgm@gnu.org>
387
388 * Makefile.in (gmallocobj, rallocobj, vmlimitobj): Initialize to null,
389 for clarity.
390 (OTHER_OBJ): Remove.
391 (PRE_ALLOC_OBJ, POST_ALLOC_OBJ): New, set by configure.
392 (otherobj): Use PRE_ALLOC_OBJ, POST_ALLOC_OBJ rather than OTHER_OBJ.
393
45841e65
KK
3942010-05-01 Karel Klíč <kklic@redhat.com>
395
396 * fileio.c (Ffile_selinux_context): Context functions may return null.
397
afc61943
DN
3982010-04-30 Dan Nicolaescu <dann@ics.uci.edu>
399
80f00217 400 * s/gnu.h (POSIX_SIGNALS, START_FILES): New definitions.
afc61943 401
5a1bb006
GM
4022010-04-30 Glenn Morris <rgm@gnu.org>
403
404 * Makefile.in (vmlimitobj) [!SYSTEM_MALLOC]: New variable. (Bug#6065)
405 (OTHER_OBJ): Define as a separate variable, for clarity.
406
210af043
J
4072010-04-30 Jan Djärv <jan.h.d@swipnet.se>
408
409 * xsettings.c: include limits.h and update file comment.
410
0a7df391
GM
4112010-04-30 Glenn Morris <rgm@gnu.org>
412
d5096f16
GM
413 * Makefile.in (OLDXMENU, LIBXMENU) [HAVE_MENUS]:
414 Set with configure, not cpp.
415 (LIBW): Remove, replace with $TOOLKIT_LIBW.
416
7eb1ac33
GM
417 * Makefile.in (mallocobj): Remove.
418 (otherobj): Simplify using @OTHER_OBJ@.
419
517d086b
GM
420 * Makefile.in (dispnew.o, frame.o, fringe.o, font.o, fontset.o)
421 (keyboard.o, window.o, xdisp.o, xfaces.o, menu.o):
422 Don't bother making nsgui.h dependency platform-specific.
423
0a7df391
GM
424 * Makefile.in (nsfns.o): Remove duplicate nsgui.h dependency.
425
d6d23852
SM
4262010-04-29 Stefan Monnier <monnier@iro.umontreal.ca>
427
d2630aef
SM
428 * process.c (read_process_output, exec_sentinel): Don't burp if the
429 sentinel/filter kills the current buffer (bug#6060).
430
f9dddf52 431 Fix wrong-docstring problem introduced with hash-consing. (Bug#6008)
d6d23852
SM
432 * eval.c (Fautoload): Set doc to a unique number rather than to 0.
433 Remove unused var `args'.
434 * lisp.h (XSETCARFASTINT, XSETCDRFASTINT): Remove.
435 (LOADHIST_ATTACH): Wrap with do...while to avoid surprises for callers.
436 * doc.c (store_function_docstring): Use XSETCAR.
437
f1e3642a
GM
4382010-04-28 Glenn Morris <rgm@gnu.org>
439
faf535f8
GM
440 * Makefile.in (BASE_WINDOW_SUPPORT, X_WINDOW_SUPPORT): New variables.
441 (WINDOW_SUPPORT) [HAVE_WINDOW_SYSTEM]: Use them.
442
c40f9449
GM
443 * Makefile.in (CYGWIN_OBJ): Set with configure, not cpp.
444
658f86ca
GM
445 * Makefile.in (GPM_MOUSE_SUPPORT): New, set by configure.
446 (MOUSE_SUPPORT) [!HAVE_MOUSE]: Use $GPM_MOUSE_SUPPORT.
447
bc0b5f61
GM
448 * Makefile.in (FONT_OBJ): New, set by configure.
449 (FONT_DRIVERS): Use $FONT_OBJ.
450
294c50a0
GM
451 * Makefile.in (LIBXMU): Set with configure, not cpp.
452 * s/aix4-2.h (LIBXMU):
453 * s/hpux10-20.h (LIBXMU):
454 Remove definition, now set in configure.
455
e6ec4e99
GM
456 * Makefile.in (NS_OBJ, NS_SUPPORT): Set with configure, not cpp.
457
f1e3642a
GM
458 * m/amdx86-64.h [i386]: Move this test to configure.in.
459
c6ea2936
GM
4602010-04-27 Glenn Morris <rgm@gnu.org>
461
8fdac2c3
GM
462 * Makefile.in (LIBXTR6): Set with configure, not cpp.
463 * s/unixware.h (NEED_LIBW): Remove definition.
464
986fb647
GM
465 * Makefile.in (LUCID_LIBW, MOTIF_LIBW): Remove, replacing by...
466 (TOOLKIT_LIBW): New, set by configure.
467 (@X_TOOLKIT_TYPE@): No longer define it.
468
c6ea2936
GM
469 * Makefile.in (LIBXP): Remove, since included in MOTIF_LIBW.
470 (MOTIF_LIBW): Set with configure, not cpp.
471 * s/aix4-2.h (LIB_MOTIF):
472 * s/gnu-linux.h (LIB_MOTIF):
473 * s/unixware.h (LIB_MOTIF): Move to configure.in.
474
aaa36002
DN
4752010-04-27 Dan Nicolaescu <dann@ics.uci.edu>
476
477 Reduce CPP usage.
478 * Makefile.in (LIB_X11_LIB): Remove, inline in the only user.
479 (obj): Use autoconf for unexec instead of cpp.
ed6281b0
DN
480 (C_SWITCH_SYSTEM, C_SWITCH_MACHINE, C_SWITCH_X_SITE): Remove
481 definitions and undefs. Inline definitions in the only user.
482 (ALL_CFLAGS): Substitute C_SWITCH_X_SYSTEM using autoconf.
aaa36002 483
b678dd8b
GM
4842010-04-27 Glenn Morris <rgm@gnu.org>
485
76cda504
GM
486 * m/amdx86-64.h (START_FILES, LIB_STANDARD): Change the logic around,
487 since the defaults (set by the system file) are fine in most cases.
488 [GNU_LINUX, __OpenBSD__, __NetBSD__, __APPLE__]: Remove sections.
489 * m/ibms390x.h (START_FILES, LIB_STANDARD):
490 * m/macppc.h (START_FILES, LIB_STANDARD) [GNU_LINUX]:
491 * m/sparc.h (START_FILES, LIB_STANDARD) [__linux__]:
492 Remove definitions, since they are set correctly in s/gnu-linux.h.
493 * s/freebsd.h (START_FILES, LIB_STANDARD):
494 * s/gnu-linux.h (START_FILES, LIB_STANDARD):
495 * s/hpux10-20.h (START_FILES):
496 * s/netbsd.h (START_FILES, LIB_STANDARD, START_FILES_1, END_FILES_1):
497 Use $CRT_DIR in place of fixed /usr/lib, /lib directories.
498
b678dd8b
GM
499 * Makefile.in (LIBXP, LUCID_LIBW, WIDGET_OBJ): Set via configure.
500 (MOTIF_LIBW): Use $LIBXP.
501 (otherobj): Use $WIDGET_OBJ.
502
9452ded1
DN
5032010-04-26 Dan Nicolaescu <dann@ics.uci.edu>
504
7e10844c
DN
505 * Makefile.in (LIBS_MACHINE): Remove, unused.
506
9452ded1
DN
507 Use autoconf instead of cpp for LIB_MATH.
508 * s/darwin.h (LIB_MATH): Do not define here, move to configure.
509 * s/cygwin.h (LIB_MATH): Likewise.
510 * Makefile.in (LIB_MATH): Do not define with cpp.
511 (LIBES): Use autoconf for LIB_MATH.
512
fcebfc6a
KH
5132010-04-26 Kenichi Handa <handa@m17n.org>
514
515 * composite.c (Ffind_composition_internal): Fix the return value
516 for an automatic composition.
517
39e2ad1b
DN
5182010-04-25 Dan Nicolaescu <dann@ics.uci.edu>
519
520 Remove all NO_ARG_ARRAY uses.
521 * fns.c (concat2, concat3, nconc2):
522 * eval.c (apply1, call1, call2, call3, call4, call5, call6)
523 (call7): Remove NO_ARG_ARRAY usage, assume it's always true.
524 * m/xtensa.h (NO_ARG_ARRAY):
525 * m/template.h (NO_ARG_ARRAY):
526 * m/sparc.h (NO_ARG_ARRAY):
527 * m/sh3.h (NO_ARG_ARRAY):
528 * m/mips.h (NO_ARG_ARRAY):
529 * m/macppc.h (NO_ARG_ARRAY):
530 * m/iris4d.h (NO_ARG_ARRAY):
531 * m/intel386.h (NO_ARG_ARRAY):
532 * m/ibms390x.h (NO_ARG_ARRAY):
533 * m/ibms390.h (NO_ARG_ARRAY):
534 * m/ibmrs6000.h (NO_ARG_ARRAY):
535 * m/ia64.h (NO_ARG_ARRAY):
536 * m/hp800.h (NO_ARG_ARRAY):
537 * m/arm.h (NO_ARG_ARRAY):
538 * m/amdx86-64.h (NO_ARG_ARRAY):
539 * m/alpha.h (NO_ARG_ARRAY): Remove definition.
540
adf4f59c
EZ
5412010-04-25 Eli Zaretskii <eliz@gnu.org>
542
6bdf5d65
EZ
543 * xdisp.c (display_line): Don't assume 2nd call to
544 get_next_display_element cannot return zero. (Bug#6030)
f538fcec
EZ
545 (iterate_out_of_display_property): New function, body from pop_it.
546 (pop_it): Use it.
adf4f59c 547
dfbbda83
GM
5482010-04-24 Glenn Morris <rgm@gnu.org>
549
550 * m/amdx86-64.h (START_FILES, LIB_STANDARD) [__OpenBSD__]:
551 For clarity, revert to using fixed /usr/lib rather than $CRT_DIR.
552 (START_FILES, LIB_STANDARD) [__FreeBSD__]: Merge into the generic case,
553 since CRT_DIR defaults to /usr/lib. Suggested by Dan Nicolaescu.
554
2d4018aa
EZ
5552010-04-24 Eli Zaretskii <eliz@gnu.org>
556
a49884a6
EZ
557 * xdisp.c (display_line): Use `reseat' instead of `reseat_1', and
558 use `get_next_display_element' and `set_iterator_to_next' to
559 advance to the next character, when looking for the character that
560 begins the next row.
561
76db6fcc 562 * .gdbinit: Add a "set Fmake_symbol" line to force GDB to load the
2d4018aa
EZ
563 definition of "struct Lisp_Symbol".
564
70eab5c1
GM
5652010-04-24 Glenn Morris <rgm@gnu.org>
566
567 * Makefile.in (CRT_DIR): New variable, set by configure.
568 * m/amdx86-64.h, m/ibms390x.h (START_FILES, LIB_STANDARD):
569 Use $CRT_DIR rather than HAVE_LIB64_DIR. (Bug#5655)
570
1ad4cc3d
DN
5712010-04-23 Dan Nicolaescu <dann@ics.uci.edu>
572
e769f484
DN
573 * Makefile.in: Remove C_SWITCH_X_MACHINE, unused.
574
4196ff33
DN
575 * s/cygwin.h (LIBS_DEBUG): Remove, unused.
576
879b0ee4
DN
577 Remove redundant flags.
578 * s/freebsd.h (C_SWITCH_SYSTEM):
579 * s/hpux10-20.h (C_SWITCH_X_SYSTEM, LD_SWITCH_X_DEFAULT):
580 * s/netbsd.h (C_SWITCH_SYSTEM):
581 * s/openbsd.h (LD_SWITCH_X_DEFAULT): Remove, configure takes care
582 of these.
583
03cbbcb8
DN
584 Simplify m/intel386.h.
585 * m/intel386.h (CRT0_DUMMIES): Remove, inline value in the only
586 user: ecrt0.c.
587 (SOLARIS2): Remove LOAD_AVE_TYPE, LOAD_AVE_CVT, LIBS_MACHINE, unused.
588 (USG5_4): Move LOAD_AVE_TYPE, LOAD_AVE_CVT, FSCALE definitions to
589 the only user: s/unixware.h.
590 * ecrt0.c: Remove #ifndef static. Inline CRT0_DUMMIES definition
591 from m/intel386.h.
592 * s/unixware.h (LOAD_AVE_TYPE, LOAD_AVE_CVT, FSCALE): Definitions
593 moved here from m/intel386.h.
594
1ad4cc3d
DN
595 * m/mips.h: Remove #if 0 code.
596
8785b888
EZ
5972010-04-23 Eli Zaretskii <eliz@gnu.org>
598
728588cc
EZ
599 Fix display of composed characters from L2R scripts in bidi buffers.
600 * xdisp.c (set_iterator_to_next, next_element_from_composition):
601 After advancing IT past the composition, resync the bidi iterator
602 with IT's position. (Bug#5977)
603
a63f80b4
DN
6042010-04-23 Dan Nicolaescu <dann@ics.uci.edu>
605
606 * Makefile.in (LD_SWITCH_MACHINE_TEMACS): Remove, unused.
607 (TEMACS_LDFLAGS): Don't use LD_SWITCH_SYSTEM_TEMACS.
608
ff5dec5c
SM
6092010-04-23 Stefan Monnier <monnier@iro.umontreal.ca>
610
611 * gtkutil.c: Include xsettings.h for Ftool_bar_get_system_style.
612
8785b888
EZ
6132010-04-23 Eli Zaretskii <eliz@gnu.org>
614
58ccf243 615 Support `display' text properties and overlay strings in bidi buffers.
8785b888
EZ
616 * xdisp.c (pop_it): When the stack is popped after displaying
617 from a string, bidi-iterate to exit from the text portion covered
618 by the `display' property or overlay. (Bug#5988, bug#5920)
619
feeb1604
DN
6202010-04-23 Dan Nicolaescu <dann@ics.uci.edu>
621
8e324eb6
DN
622 * m/macppc.h (LD_SWITCH_SYSTEM_TEMACS): Remove #undef.
623 (LD_SWITCH_MACHINE_TEMACS): Remove, configure sets nocombreloc.
624
809fcaba
DN
625 * s/netbsd.h (LD_SWITCH_SYSTEM_TEMACS): Remove, configure sets nocombreloc.
626 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Remove.
627
ed710380
DN
628 Simplify STARTFILES definition.
629 * s/hpux10-20.h (START_FILES): Explicitly define here instead of
630 relying on Makefile.in to define it.
631 * s/cygwin.h (START_FILES): Likewise.
632 * Makefile.in (STARTFILES): Remove conditional code, not needed anymore.
633
feeb1604
DN
634 Clean up Solaris code.
635 * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS, C_SWITCH_X_SYSTEM)
636 (LIB_MOTIF): Remove, configure takes care of this.
637 (NOT_USING_MOTIF): Remove, unused.
638 * xrdb.c: Remove #if 0-ed #include.
639 (SYSV): Remove conditional for old SysV.
640 * sysdep.c (closedir): Remove conditional code for Solaris,
641 Solaris has closedir.
642
a0d0b563
JD
6432010-04-22 Jan Djärv <jan.h.d@swipnet.se>
644
645 * xsettings.c (read_and_apply_settings): Check if current_font is
646 NULL before strcmp (Bug#6001).
647
56bae7c7
DN
6482010-04-21 Dan Nicolaescu <dann@ics.uci.edu>
649
650 Clean up HP-UX files.
651 * m/hp800.h (NO_REMAP, VIRT_ADDR_VARIES, DATA_SEG_BITS)
652 (DATA_START, TEXT_START, LOAD_AVE_TYPE, LOAD_AVE_CVT)
653 (LDAV_SYMBOL, index, rindex): Move definitions only used in HP-UX ...
654 * s/hpux10-20.h: ... to the only user, here.
655
372b7a95
EZ
6562010-04-21 Eli Zaretskii <eliz@gnu.org>
657
658 * bidi.c (bidi_find_paragraph_start, bidi_at_paragraph_end): Don't
659 use buffer-local values of paragraph-start and paragraph-separate.
660 <paragraph_start_re, paragraph_separate_re>: Rename from
661 fallback_paragraph_start_re and fallback_paragraph_separate_re.
662 (Bug#5992)
663
f904c0f9
JD
6642010-04-21 Jan Djärv <jan.h.d@swipnet.se>
665
666 * xsettings.c: Qmonospace_font_name, Qtool_bar_style and
667 current_tool_bar_style are new.
668 (store_config_changed_event): Rename from store_font_changed_event.
669 (XSETTINGS_TOOL_BAR_STYLE): New define.
670 (SEEN_FONT, SEEN_TB_STYLE): New enum values.
671 (struct xsettings): Add font and tb_style, set xft stuff inside #ifdef
672 HAVE_XFT.
673 (something_changedCB): store_font_changed_event is now
674 store_config_changed_event
675 (parse_settings): Rename from parse_xft_settings. Read
676 non-xft xsettings outside #ifdef HAVE_XFT.
677 (read_settings): Renamed from read_xft_settings.
678 (apply_xft_settings): Take current settings as parameter. Do not
679 call read_(xft)_settings.
680 (read_and_apply_settings): New function.
681 (xft_settings_event): Do non-xft stuff out of HAVE_XFT. Call
682 read_and_apply_settings if there are settings to be read.
683 (init_xsettings): Renamed from init_xfd_settings.
684 Call read_and_apply_settings unconditionally.
685 (xsettings_initialize): Call init_xsettings.
686 (Ftool_bar_get_system_style): New function.
687 (syms_of_xsettings): Define Qmonospace_font_name and
688 Qtool_bar_style. Initialize current_tool_bar_style to nil.
f9dddf52 689 defsubr Stool_bar_get_system_style. Fprovide on
f904c0f9 690 dynamic-setting.
31a01b90 691 Move misplaced HAVE_GCONF
f904c0f9
JD
692
693 * xsettings.h (Ftool_bar_get_system_style): Declare.
694
695 * xdisp.c: Vtool_bar_style, tool_bar_max_label_size,
696 Qtext, Qboth, Qboth_horiz are new.
697 (syms_of_xdisp): Intern Qtext, Qboth, Qboth_horiz, DEFVAR
698 Vtool_bar_style, tool_bar_max_label_size.
699
700 * lisp.h: Extern declare Qtext, Qboth, Qboth_horiz.
701
702 * keyboard.c: QClabel is new.
703 (parse_tool_bar_item): Take out QClabel from tool bar items.
704 Try to construct a label if ther is no QClabel.
705 (syms_of_keyboard): Intern :label as QClabel.
706
707 * dispextern.h (tool_bar_item_idx): TOOL_BAR_ITEM_LABEL is new.
708 (Vtool_bar_style, tool_bar_max_label_size, DEFAULT_TOOL_BAR_LABEL_SIZE):
709 New.
710
711 * Makefile.in (SOME_MACHINE_LISP): font-setting.el renamed to
712 dynamic-setting.el.
713
714 * gtkutil.c (xg_tool_bar_menu_proxy): Handle label in tool bar item.
715 (xg_make_tool_item, xg_show_toolbar_item): New function.
716 (update_frame_tool_bar): Take label from TOOL_BAR_ITEM_LABEL.
717 Call xg_make_tool_item to make a tool bar item.
718 Call xg_show_toolbar_item. Use wtoolbar instead of x->toolbar_widget.
719
720 * xterm.c (x_draw_image_relief): Take Vtool_bar_button_margin
721 into account for toolbars.
722
c632dfda
JD
7232010-04-21 Jan Djärv <jan.h.d@swipnet.se>
724
725 * data.c (make_blv): Declarations before code (Bug#5993).
726
10efe302
GM
7272010-04-21 Glenn Morris <rgm@gnu.org>
728
729 * Makefile.in (DBUS_OBJ, GTK_OBJ, XMENU_OBJ, XOBJ):
730 Define using autoconf, not cpp.
731 (LIBXSM): New variable, set by autoconf.
732 (LIBXT): Use $LIBXSM.
733
4285ac5a
DN
7342010-04-21 Dan Nicolaescu <local_user@dannlt>
735
3ec759e7
DN
736 Remove NOMULTIPLEJOBS, unused.
737 * s/template.h (NOMULTIPLEJOBS):
738 * s/msdos.h (NOMULTIPLEJOBS): Remove, unused.
739
4285ac5a
DN
740 Simplify LD_SWITCH_SYSTEM_TEMACS usage.
741 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS):
742 * s/gnu-linux.h (LD_SWITCH_SYSTEM_TEMACS): Remove, configure
743 detects -znocombreloc and passes it to the linker
744 * s/hpux10-20.h (LD_SWITCH_SYSTEM_TEMACS): Remove, empty.
745
2807228d
GM
7462010-04-21 Glenn Morris <rgm@gnu.org>
747
748 * Makefile.in (LIBSELINUX_LIBS): Move out of #ifdef.
749
574c05e2
KK
7502010-04-21 Karel Klíč <kklic@redhat.com>
751
752 * Makefile.in (LIBSELINUX_LIBS): New.
753 (LIBES): Add $LIBSELINUX_LIBS.
754 * eval.c, lisp.h (call7): New function.
755 * fileio.c [HAVE_LIBSELINUX]: Include selinux headers.
756 (Ffile_selinux_context, Fset_file_selinux_context):
757 New functions.
758 (Fcopy_file): New parameter preserve-selinux-context.
759 (Frename_file): Preserve selinux context when renaming by copy-file.
760
91eac4bb 7612010-04-21 Juanma Barranquero <lekktu@gmail.com>
4e2af782 762 Eli Zaretskii <eliz@gnu.org>
91eac4bb 763
50426a04
JB
764 Don't depend on cm.c or termcap.c on Windows, use stubs.
765 * makefile.w32-in (OBJ1): Remove cm.$(O) and termcap.$(O).
766 ($(BLD)/cm.$(O), $(BLD)/termcap.$(O)): Remove.
767 * w32console.c (current_tty, cost): New vars; lifted from cm.c.
768 (evalcost, cmputc, cmcheckmagic, cmcostinit, cmgoto, Wcm_clear)
769 (sys_tputs, sys_tgetstr): New stubs.
770 * s/ms-w32.h (chcheckmagic, cmcostinit, cmgoto, cmputc, Wcm_clear)
771 (tputs, tgetstr): New; define to sys_*.
91eac4bb 772
938efb77
JB
7732010-04-20 Juanma Barranquero <lekktu@gmail.com>
774
775 * buffer.c (syms_of_buffer) <bidi-display-reordering>: Doc fix.
776
b4bf28b7
SM
7772010-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
778
8b1e1112
SM
779 * data.c (Fmake_variable_buffer_local, Fmake_local_variable):
780 Just signal a warning rather than an error when inside a let.
781 (Fmake_variable_frame_local): Add the same test.
782
933ac235
SM
783 * font.c (syms_of_font): Make the style table vars read-only.
784
b4bf28b7
SM
785 * buffer.h (struct buffer): Remove unused var `direction_reversed'.
786 * buffer.c (init_buffer_once, syms_of_buffer): Remove its initialization.
787
788 * bidi.c (bidi_initialize): Simplify fallback_paragraph_*_re init.
789
93d68d0c
EZ
7902010-04-20 Eli Zaretskii <eliz@gnu.org>
791
792 Fix R2L paragraph display on TTY.
793
794 * xdisp.c (unproduce_glyphs): New function.
795 (display_line): Use it when produced glyphs are discarded from R2L
796 glyph rows.
797 (append_composite_glyph): In R2L rows, prepend the glyph rather
798 than appending it.
799
800 * term.c (append_composite_glyph): In R2L rows, prepend the glyph
801 rather than append it. Set up the resolved_level and bidi_type
802 attributes of the appended glyph.
283ccc18
EZ
803 (produce_special_glyphs): Mirror the backslash continuation
804 character in R2L lines.
93d68d0c 805
283ccc18 806 Implement display of R2L paragraphs in GUI sessions.
26cdf528 807
283ccc18
EZ
808 * xdisp.c [HAVE_WINDOW_SYSTEM]: Add prototype for
809 append_stretch_glyph.
810 (set_cursor_from_row) <cursor_x>: Remove unused variable. Fix
811 off-by-one error in computing x at end of text in the row.
812 (append_stretch_glyph): In reversed row, prepend the glyph rather
813 than append it. Set resolved_level and bidi_type of the glyph.
814 (extend_face_to_end_of_line): If the row is reversed, prepend a
815 stretch glyph whose width is such that the rightmost glyph will be
816 drawn at the right margin of the window. Fix off-by-one error on
817 TTY frames in testing whether a line needs face extension. Fix
818 face extension at ZV. If this is the last glyph row, use
819 DEFAULT_FACE_ID, to avoid painting the rest of the window with the
820 region face.
821 (set_cursor_from_row, display_line): Use
26cdf528
EZ
822 MATRIX_ROW_CONTINUATION_LINE_P instead of testing value of
823 row->continuation_lines_width.
283ccc18
EZ
824 (next_element_from_buffer): Don't call bidi_paragraph_init if we
825 are at ZV. Fixes a crash when reseated to ZV by
826 try_window_reusing_current_matrix.
45903529
EZ
827 (display_and_set_cursor, erase_phys_cursor): Handle negative HPOS,
828 which happens with R2L glyph rows. Fixes a crash when inserting a
829 character at end of an R2L line.
283ccc18
EZ
830 (set_cursor_from_row): Don't be fooled by truncated rows: don't
831 treat them as having zero-width characters. Improve comments.
832 Don't reverse pos_before and pos_after for reversed glyph rows.
833 Set cursor.x to negative value when the cursor might be on the
834 left fringe.
835 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): For R2L lines, consider the
836 left fringe, not the right one.
f951a506
EZ
837 (notice_overwritten_cursor, draw_phys_cursor_glyph)
838 (erase_phys_cursor): For reversed cursor_row, support cursor on
839 the left fringe.
840
283ccc18
EZ
841 * fringe.c (update_window_fringes): For R2L rows, swap the bitmaps
842 of continuation indicators on the fringes.
843 (draw_fringe_bitmap): For reversed glyph rows, allow cursor on the
844 left fringe.
845
f951a506
EZ
846 * w32term.c (w32_draw_window_cursor): For reversed glyph rows,
847 draw cursor on the left fringe.
848
849 * xterm.c (x_draw_window_cursor): For reversed glyph rows, draw
850 cursor on the left fringe.
851
f951a506
EZ
852 * dispnew.c (update_text_area): Handle reversed desired rows when
853 the cursor is on the left fringe.
854 (set_window_cursor_after_update): Limit cursor's hpos by -1 from
855 below, not by 0, for when the cursor is on the left fringe.
856
3bb49aaf
JD
8572010-04-20 Jan Djärv <jan.h.d@swipnet.se>
858
859 * gtkutil.c (xg_event_is_for_scrollbar): Check if grabbed
860 widget is a scrollbar.
861
c0be27fd
KH
8622010-04-20 Kenichi Handa <handa@m17n.org>
863
864 * charset.c (char_charset): Consider Vcharset_non_preferred_head
865 only when the arg CHARSET_LIST is nil.
866
ce5b453a
SM
8672010-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
868
869 Make variable forwarding explicit rather the using special values.
870 Basically, this makes the structure of buffer-local values and object
871 forwarding explicit in the type of Lisp_Symbols rather than use
872 special Lisp_Objects for that. This tends to lead to slightly more
873 verbose code, but is more C-like, simpler, and makes it easier to make
874 sure we handled all cases, among other things by letting the compiler
875 help us check it.
876 * lisp.h (enum Lisp_Misc_Type, union Lisp_Misc):
877 Removing forwarding objects.
878 (enum Lisp_Fwd_Type, enum symbol_redirect, union Lisp_Fwd): New types.
879 (struct Lisp_Symbol): Make the various forms of variable-forwarding
880 explicit rather than hiding them inside Lisp_Object "values".
881 (XFWDTYPE): New macro.
882 (XINTFWD, XBOOLFWD, XOBJFWD, XKBOARD_OBJFWD): Redefine.
883 (XBUFFER_LOCAL_VALUE): Remove.
884 (SYMBOL_VAL, SYMBOL_ALIAS, SYMBOL_BLV, SYMBOL_FWD, SET_SYMBOL_VAL)
885 (SET_SYMBOL_ALIAS, SET_SYMBOL_BLV, SET_SYMBOL_FWD): New macros.
886 (SYMBOL_VALUE, SET_SYMBOL_VALUE): Remove.
887 (struct Lisp_Intfwd, struct Lisp_Boolfwd, struct Lisp_Objfwd)
888 (struct Lisp_Buffer_Objfwd, struct Lisp_Kboard_Objfwd):
889 Remove the Lisp_Misc_* header.
890 (struct Lisp_Buffer_Local_Value): Redefine.
891 (BLV_FOUND, SET_BLV_FOUND, BLV_VALUE, SET_BLV_VALUE): New macros.
892 (struct Lisp_Misc_Any): Add filler to get the right size.
893 (struct Lisp_Free): Use struct Lisp_Misc_Any rather than struct
894 Lisp_Intfwd.
895 (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL, DEFVAR_INT)
896 (DEFVAR_KBOARD): Allocate a forwarding object.
897 * data.c (do_blv_forwarding, store_blv_forwarding): New macros.
898 (let_shadows_global_binding_p): New function.
899 (union Lisp_Val_Fwd): New type.
900 (make_blv): New function.
901 (swap_in_symval_forwarding, indirect_variable, do_symval_forwarding)
902 (store_symval_forwarding, swap_in_global_binding, Fboundp)
903 (swap_in_symval_forwarding, find_symbol_value, Fset)
904 (let_shadows_buffer_binding_p, set_internal, default_value)
905 (Fset_default, Fmake_variable_buffer_local, Fmake_local_variable)
906 (Fkill_local_variable, Fmake_variable_frame_local)
907 (Flocal_variable_p, Flocal_variable_if_set_p)
908 (Fvariable_binding_locus):
909 * xdisp.c (select_frame_for_redisplay):
910 * lread.c (Fintern, Funintern, init_obarray, defvar_int)
911 (defvar_bool, defvar_lisp_nopro, defvar_lisp, defvar_kboard):
912 * frame.c (store_frame_param):
913 * eval.c (Fdefvaralias, Fuser_variable_p, specbind, unbind_to):
914 * bytecode.c (Fbyte_code) <varref, varset>: Adapt to the new symbol
915 value structure.
916 * buffer.c (PER_BUFFER_SYMBOL): Move from buffer.h.
917 (clone_per_buffer_values): Only adjust markers into the current buffer.
918 (reset_buffer_local_variables): PER_BUFFER_IDX is never -2.
919 (Fbuffer_local_value, set_buffer_internal_1)
920 (swap_out_buffer_local_variables):
921 Adapt to the new symbol value structure.
922 (DEFVAR_PER_BUFFER): Allocate a Lisp_Buffer_Objfwd object.
923 (defvar_per_buffer): Take a new arg for the fwd object.
924 (buffer_lisp_local_variables): Return a proper alist (different fix
925 for bug#4138).
926 * alloc.c (Fmake_symbol): Use SET_SYMBOL_VAL.
927 (Fgarbage_collect): Don't handle buffer_defaults specially.
928 (mark_object): Handle new symbol value structure rather than the old
929 special Lisp_Misc_* objects.
930 (gc_sweep) <symbols>: Free also the buffer-local-value objects.
931 * term.c (set_tty_color_mode):
932 * bidi.c (bidi_initialize): Don't access the ->value field directly.
933 * buffer.h (PER_BUFFER_VAR_OFFSET): Don't bother with
934 a buffer_local_flags.
935 * print.c (print_object): Get rid of impossible forwarding objects.
936
fd3998ff
EZ
9372010-04-19 Eli Zaretskii <eliz@gnu.org>
938
939 * bidi.c (bidi_get_type, bidi_get_category)
940 (bidi_at_paragraph_end, bidi_resolve_weak, bidi_resolve_neutral)
ce5b453a
SM
941 (bidi_type_of_next_char, bidi_level_of_next_char):
942 Declare static. Use `INLINE' rather than `inline'.
fd3998ff 943
e42cd1a7
JB
9442010-04-19 Juanma Barranquero <lekktu@gmail.com>
945
946 * dired.c (Ffile_attributes): Fix typo in docstring.
947
6e104790 9482010-04-19 Adrian Robert <Adrian.B.Robert@gmail.com>
79353a53
AR
949
950 * nsmenu.m (EmacsDialog-runDialogAt:): Declare ret as
951 NSInteger (Bug#5811).
952
6e104790 9532010-04-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
658b9b93
YM
954
955 * s/darwin.h (PTY_ITERATION, PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF)
956 (PTY_OPEN): New defines. Use openpty (Bug#726, Bug#5819).
957
6e104790 9582010-04-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16009a0e
YM
959
960 * frame.h (FRAME_LINE_TO_PIXEL_Y): Add missing parenthesis.
961
6e104790
SM
9622010-04-19 Chong Yidong <cyd@stupidchicken.com>
963
964 * xdisp.c (prepare_menu_bars): Don't call ns_set_doc_edited for
965 terminal frames (Bug#5837).
966
37dcfea0
EZ
9672010-04-19 Eli Zaretskii <eliz@gnu.org>
968
d1da276f
EZ
969 * .gdbinit (xsubchartable): New command.
970
37dcfea0
EZ
9712010-04-19 Eli Zaretskii <eliz@gnu.org>
972
973 * xdisp.c (display_line): Don't write beyond the last glyph row in
9166b0f3 974 the desired matrix. Fixes a crash in "emacs -nw" (bug#5972), see
37dcfea0
EZ
975 http://lists.gnu.org/archive/html/emacs-devel/2010-04/msg00075.html
976 and
977 http://lists.gnu.org/archive/html/emacs-devel/2010-04/msg00213.html
978
e9515805
SM
9792010-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
980
981 * alloc.c (Fpurecopy): Hash-cons if requested.
982 (syms_of_alloc): Update purify-flag docstring.
983
22aa44a8
JD
9842010-04-18 Jan Djärv <jan.h.d@swipnet.se>
985
986 * gtkutil.c (xg_set_geometry): Set size in geometry string also.
987 (x_wm_set_size_hint): Set USER_POS in hint_flags (Bug#5968).
988
ebb5722e
EZ
9892010-04-17 Eli Zaretskii <eliz@gnu.org>
990
991 Fix a crash when an NSM character is inserted at BEGV.
992
993 * bidi.c (bidi_init_it): Fix initialization of bidi_it->prev.
994 (bidi_resolve_weak): Don't use prev.type_after_w1 if it is
995 NEUTRAL_B or UNKNOWN_BT.
996
0f4442ef
EZ
9972010-04-16 Eli Zaretskii <eliz@gnu.org>
998
999 * xdisp.c (set_cursor_from_row): Don't consider possibility of
1000 other rows with cursor unless they are different from this row and
1001 this row is part of a continued line. (Bug#5943)
1002
7d4e45f8
DN
10032010-04-16 Dan Nicolaescu <dann@ics.uci.edu>
1004
1005 * s/freebsd.h: Restore osreldate.h include.
1006 Suggested by Naohiro Aota.
1007
5ba5ec85
J
10082010-04-16 Jan Djärv <jan.h.d@swipnet.se>
1009
1010 * xmenu.c (apply_systemfont_to_menu): *childs was incorrectly used.
1011
20af301d
CY
10122010-04-16 Ken Brown <kbrown@cornell.edu> (tiny change)
1013
1014 * s/cygwin.h: Avoid linking against static libgcc.
1015
a4b000fb
JL
10162010-04-15 Juri Linkov <juri@jurta.org>
1017
1018 * window.c: Add Qscroll_command.
1019 Remove Vscroll_preserve_screen_position_commands.
1020 (window_scroll_pixel_based, window_scroll_line_based): Check the
1021 `scroll-command' property on the last command instead of searching
1022 the last command in Vscroll_preserve_screen_position_commands.
1023 (syms_of_window): Initialize and staticpro `Qscroll_command'.
1024 Put Qscroll_command property on Qscroll_up and Qscroll_down.
1025 (scroll-preserve-screen-position): Doc fix.
1026 (Vscroll_preserve_screen_position_commands): Remove variable.
1027
bc319ba4
DN
10282010-04-15 Dan Nicolaescu <dann@ics.uci.edu>
1029
6bb24457
DN
1030 * xdisp.c (message): Do not use NO_ARG_ARRAY.
1031
19d4c244
DN
10322010-04-14 Dan Nicolaescu <dann@ics.uci.edu>
1033
1034 Reduce cpp use in Makefile.in.
1035 * Makefile.in (DBUS_CFLAGS, DBUS_LIBS, GCONF_CFLAGS, GCONF_LIBS)
1036 (LIBSOUND, CFLAGS_SOUND, RSVG_LIBS, RSVG_CFLAGS, INTERVALS_H)
1037 (GETLOADAVG_LIBS, RUN_TEMACS): Move to the autoconf section.
1038 (ORDINARY_LINK): Remove, defined in src/s/gnu.h.
1039 (CRT0_COMPILE): Remove, inline it in the only user.
1040
32129746
JL
10412010-04-14 Juri Linkov <juri@jurta.org>
1042
1043 * window.c (keys_of_window): Rebind `C-v' from `scroll-up' to
1044 `scroll-up-command' and `M-v' from `scroll-down' to
1045 `scroll-down-command'.
1046
9013a7f8
JL
10472010-04-14 Juri Linkov <juri@jurta.org>
1048
1049 * window.c (Vscroll_preserve_screen_position_commands): New variable
1050 with the default value as the list of Qscroll_down and Qscroll_up.
1051 (window_scroll_pixel_based, window_scroll_line_based): Search the
1052 last command in the list Vscroll_preserve_screen_position_commands
1053 instead of comparing with Qscroll_up and Qscroll_down.
1054
4bef8d26
JD
10552010-04-13 Jan Djärv <jan.h.d@swipnet.se>
1056
92848133
JD
1057 * gtkutil.c (xg_set_geometry): Set geometry for PPosition also.
1058 (x_wm_set_size_hint): Dont set position flags, gtk_window_parse_geometry
1059 does that.
1060
4bef8d26
JD
1061 * xfns.c (Fx_create_frame, x_create_tip_frame): Set default border width
1062 to zero.
1063
58b963f7
SM
10642010-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
1065
84164a0d
SM
1066 * term.c (init_tty): Move common text outside of #ifdef TERMINFO.
1067
2b0a91e7
SM
1068 Try to solve the problem of spurious EOF chars in long lines of text
1069 sent to interactive subprocesses.
1070 * sysdep.c (child_setup_tty): Do not enable ICANON any more.
1071 (system_process_attributes): Remove unused var `ttotal'.
1072 * process.c (send_process): Don't bother breaking long line with EOF
1073 chars when talking to ttys any more.
1074 (wait_reading_process_output): Output a warning when called in such
1075 a way that it could block without being interruptible.
1076
58b963f7
SM
1077 Try to detect file modification within the same second.
1078 * buffer.h (struct buffer): New field modtime_size.
1079 * buffer.c (reset_buffer): Initialize it.
1080 * fileio.c (Finsert_file_contents, Fwrite_region): Set it.
1081 (Fverify_visited_file_modtime): Check it.
1082 (Fclear_visited_file_modtime, Fset_visited_file_modtime): Clear it.
1083 (Fset_visited_file_modtime): Set (or clear) it.
1084
01f5787b
SM
10852010-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
1086
1087 * process.c (status_notify): Remove unused var `ro'.
1088
83725342
JD
10892010-04-12 Jan Djärv <jan.h.d@swipnet.se>
1090
1091 * xfns.c (select_visual): Don't call error if XGetVisualInfo returns
1092 more than one visual (Bug#5938).
1093
b9465836
DN
10942010-04-12 Dan Nicolaescu <dann@ics.uci.edu>
1095
50426a04
JB
1096 * Makefile.in (C_SWITCH_SYSTEM,C_SWITCH_MACHINE,C_SWITCH_X_SITE):
1097 Undefine.
b9465836 1098
8d9c8ece
DN
10992010-04-11 Dan Nicolaescu <dann@ics.uci.edu>
1100
b1f52161
DN
1101 Remove C_SWITCH_SYSTEM_TEMACS.
1102 * s/darwin.h (C_SWITCH_SYSTEM_TEMACS): Remove.
1103 (malloc, realloc, free): Use emacs, not temacs for conditional
1104 definition.
1105
1106 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Remove.
1107 (ALL_CFLAGS): Do not use C_SWITCH_SYSTEM_TEMACS.
1108
8d9c8ece
DN
1109 Use autoconf, not cpp for some variables.
1110 * Makefile.in (C_SWITCH_SYSTEM, C_SWITCH_MACHINE)
1111 (C_SWITCH_X_SITE): Define using autoconf, not cpp.
1112 (ALL_CFLAGS): Use them as make variables.
1113 (really-lwlib, really-oldXMenu): Do not pass them.
1114
1ecb2d3f
JD
11152010-04-11 Jan Djärv <jan.h.d@swipnet.se>
1116
1117 * xmenu.c (apply_systemfont_to_dialog): New.
1118 (create_and_show_dialog): Call apply_systemfont_to_dialog if HAVE_XFT.
1119
3a4fa2f2
SM
11202010-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
1121
97e53006
SM
1122 * process.c (exec_sentinel): Preserve current-buffer.
1123
3a4fa2f2
SM
1124 * process.c (read_process_output): Move the save-current-buffer to
1125 apply to both the filter and the non-filter branches.
1126
88df7221
DN
11272010-04-10 Dan Nicolaescu <dann@ics.uci.edu>
1128
1129 * s/msdos.h (UNEXEC): New definition.
1130
5634ff85
YM
11312010-04-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1132
6eff5c3d
YM
1133 * dispextern.h (TRY_WINDOW_CHECK_MARGINS)
1134 (TRY_WINDOW_IGNORE_FONTS_CHANGE): New defines.
1135
1136 * xdisp.c (try_window): Change arg from CHECK_MARGINS to FLAGS.
1137 Don't abort with fonts change if TRY_WINDOW_IGNORE_FONTS_CHANGE is
1138 set in FLAGS. Callers with non-zero CHECK_MARGINS changed to use
1139 TRY_WINDOW_CHECK_MARGINS.
1140
1141 * xfns.c (Fx_show_tip): Undo last change. Call try_window with
5b253e9c
YM
1142 TRY_WINDOW_IGNORE_FONTS_CHANGE (Bug#2423). Subtract last glyph's
1143 width only when it is for padding.
5634ff85 1144
b13aef54
J
11452010-04-09 Jan Djärv <jan.h.d@swipnet.se>
1146
1147 * xfns.c (Fx_show_tip): Call try_window in a loop until
1148 fonts_changed_p is zero (Bug#2423).
1149
21d28484
EZ
11502010-04-08 Eli Zaretskii <eliz@gnu.org>
1151
1152 * xdisp.c (set_cursor_from_row): Don't dereference glyphs beyond
1153 the end of TEXT_AREA. (Bug#5856)
1154
0269ef77
JD
11552010-04-08 Jan Djärv <jan.h.d@swipnet.se>
1156
1157 * xsettings.c (XSETTINGS_FONT_NAME): Move XSETTINGS_FONT_NAME out of
1158 HAVE_GCONF.
1159
5930fe97
EZ
11602010-04-08 Eli Zaretskii <eliz@gnu.org>
1161
1162 * bidi.c (bidi_resolve_weak): Use prev.type_after_w1, instead of
1163 prev.orig_type, for resolving type of NSM. (Bug#5858)
1164
99852628
JD
11652010-04-08 Jan Djärv <jan.h.d@swipnet.se>
1166
1167 * xsettings.c (current_font, SYSTEM_FONT, XSETTINGS_FONT_NAME): New.
1168 (parse_xft_settings): Also check for XSETTINGS_FONT_NAME and save that
1169 in current_font.
1170 (init_gconf): Read value of SYSTEM_FONT and save it in current_font.
50426a04
JB
1171 (Ffont_get_system_normal_font, xsettings_get_system_normal_font):
1172 New functions.
1173 (syms_of_xsettings): Initialize current_font.
1174 defsubr Sfont_get_system_normal_font.
99852628
JD
1175
1176 * xsettings.h (Ffont_get_system_normal_font,
1177 xsettings_get_system_normal_font): Declare.
1178
1179 * xfns.c (extern xlwmenu_default_font): Remove.
1180 (Fx_create_frame): Remove setting of xlwmenu_default_font, moved
1181 to xlwmenu.c.
1182
1183 * menu.c (digest_single_submenu): If USE_LUCID and HAVE_XFT, encode
1184 menu items in UTF-8.
1185
1186 * xmenu.c: include xsettings.h and xlwmenu.h if USE_LUCID.
1187 (apply_systemfont_to_menu): New function.
1188 (set_frame_menubar, create_and_show_popup_menu): Call
1189 apply_systemfont_to_menu.
1190
7fc874c4
J
11912010-04-07 Jan Djärv <jan.h.d@swipnet.se>
1192
1193 * frame.h (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Don't use
1194 FRAME_LINE_TO_PIXEL_Y.
1195
1196 * xterm.c (x_set_window_size_1): Don't add border_width/height to
1197 pixelwidth/height.
1198
863bf481
DN
11992010-04-07 Dan Nicolaescu <dann@ics.uci.edu>
1200
5e5a3b92
DN
1201 Simplify code for HP machines.
1202 * m/hp800.h (LOAD_AVE_TYPE, LOAD_AVE_CVT, NO_REMAP): Do not define
1203 for GNU_LINUX, not needed.
1204 (UNEXEC, NEED_BSDTTY): Move definitions...
1205 * s/hpux10-20.h (UNEXEC, NEED_BSDTTY): ... here.
1206
863bf481
DN
1207 * m/iris4d.h (UNEXEC): Move definition ...
1208 * s/irix6-5.h (UNEXEC): ... here.
1209
3e6bec3b
JD
12102010-04-04 Jan Djärv <jan.h.d@swipnet.se>
1211
1212 * xfns.c (set_machine_and_pid_properties): New function.
1213 (Fx_create_frame): Call set_machine_and_pid_properties.
1214
2912322b
SM
12152010-04-03 Eli Zaretskii <eliz@gnu.org>
1216
1502b819
EZ
1217 * bidi.c (bidi_resolve_explicit, bidi_level_of_next_char): Check
1218 bidi_it->bytepos against ZV_BYTE instead of bidi_it->ch against
1219 BIDI_EOB. Fixes infloop with vertical cursor motion at ZV.
1220
2912322b
SM
1221 * w32fns.c (x_create_tip_frame): Copy `parms' before we modify it
1222 in this function. (Bug#5703)
1223
12242010-04-03 Chong Yidong <cyd@stupidchicken.com>
1225
1226 * nsterm.h: Fix last change.
1227
c435b432
DN
12282010-04-03 Dan Nicolaescu <dann@ics.uci.edu>
1229
a568f507
DN
1230 * m/intel386.h (NO_REMAP): Move definition ...
1231 * s/msdos.h (NO_REMAP): ... here.
1232
4cd9f6c2
DN
1233 * m/vax.h (CRT0_DUMMIES): Remove, unused.
1234
c435b432
DN
1235 * ecrt0.c: Remove MSDOS, m68k and __sparc__ conditionals, file not
1236 used on those platforms.
1237
42a2c622
DN
12382010-04-02 Dan Nicolaescu <dann@ics.uci.edu>
1239
1240 Remove extern errno declarations.
1241 * xterm.c:
1242 * xrdb.c:
1243 * w32term.c:
1244 * unexec.c:
1245 * unexaix.c:
1246 * sysdep.c:
1247 * process.c:
1248 * lread.c:
1249 * keyboard.c:
1250 * floatfns.c:
1251 * filelock.c:
1252 * fileio.c:
1253 * emacs.c (main):
1254 * ecrt0.c:
1255 * dispnew.c:
1256 * callproc.c:
1257 * buffer.c: Remove errno extern declarations.
1258 * s/netbsd.h (NEED_ERRNO): Remove.
1259
8224f93d
DN
12602010-04-01 Dan Nicolaescu <dann@ics.uci.edu>
1261
1262 Remove all uses of LIBX11_SYSTEM.
1263 * Makefile.in (LIBX11_SYSTEM): Remove.
1264 * s/msdos.h (LIBX11_SYSTEM): Do not define, define LIBS_SYSTEM
1265 instead.
1266
814062c7
EZ
12672010-04-01 Eli Zaretskii <eliz@gnu.org>
1268
ed68db4d
EZ
1269 Remove support for DJGPP v1.x (bug#5813).
1270
1271 * w16select.c (__dpmi_int): Remove DJGPP v1.x compatibility.
8224f93d
DN
1272 * s/msdos.h:
1273 * unexec.c (make_hdr, copy_text_and_data):
1274 * sysdep.c (wait_for_termination, sys_subshell):
ed68db4d 1275 * msdos.c (dos_set_window_size, msdos_set_cursor_shape)
52f4d8d5
EZ
1276 (IT_set_terminal_modes, __write, _rename, gethostname)
1277 (gettimeofday, alarm, fork, kill, dos_ttraw, dos_ttcooked)
1278 (run_msdos_command, abort): Remove DJGPP v1.x code and tests of
1279 the value of __DJGPP__.
ed68db4d
EZ
1280 (nice, pause, sigsetmask, sigblock): Remove DJGPP v1.x
1281 compatibility code.
8224f93d
DN
1282 * lread.c:
1283 * gmalloc.c (memalign):
1284 * fileio.c (Fcopy_file, check_executable, Ffile_modes):
1285 * emacs.c (main):
1286 * dosfns.c (init_dosfns):
ed68db4d
EZ
1287 * dired.c (file_name_completion_stat): Remove tests of __DJGPP__.
1288
52f4d8d5
EZ
12892010-04-01 Eli Zaretskii <eliz@gnu.org>
1290
814062c7
EZ
1291 * xdisp.c (set_cursor_from_row): Fix cursor positioning when the
1292 string with `cursor' property comes from an `after-string'
1293 overlay. (Bug#5816)
1294
0dc2e11d
GM
12952010-04-01 Glenn Morris <rgm@gnu.org>
1296
1297 * Makefile.in (LIBTIFF, LIBJPEG, LIBPNG, LIBGIF, LIBXPM, XFT_LIBS):
1298 Define as Makefile variables.
1299 (LIBX): Use above variables rather than directly using autoconf.
1300
1d29df59
DN
13012010-03-31 Dan Nicolaescu <dann@ics.uci.edu>
1302
1303 Clean up BSD_SYSTEM use.
1304 * xterm.c:
1305 * process.c:
1306 * emacs.c: Use HAVE_SYS_IOCTL_H instead of BSD_SYSTEM as a guard
1307 for including <sys/ioctl.h>.
1308 * sysdep.c (wait_without_blocking): Remove BSD_SYSTEM case, this
1309 code is only used for MSDOS.
1310
1546c559
JL
13112010-03-31 Juri Linkov <juri@jurta.org>
1312
1313 * image.c: Add `Qextension_data'.
1314 (syms_of_image): Initialize and staticpro `Qextension_data'.
1315 (Fimage_metadata): Rename from `Fimage_extension_data'.
1316 (gif_load): Put GIF extension data to the property
1317 `Qextension_data'.
1318
b8a1d5a1
CY
13192010-04-05 Chong Yidong <cyd@stupidchicken.com>
1320
1321 * xdisp.c (prepare_menu_bars): Don't call ns_set_doc_edited for
1322 terminal frames (Bug#5837).
1323
6521c534
CY
13242010-03-31 Chong Yidong <cyd@stupidchicken.com>
1325
1326 * nsfns.m (ns_set_doc_edited): Remove unused arg OLDVAL.
1327 * nsterm.h: Fix prototype.
1328
52c30783
EZ
13292010-03-31 Eli Zaretskii <eliz@gnu.org>
1330
1331 * xdisp.c (highlight_trailing_whitespace): Support highlight of
1332 trailing whitespace in right-to-left rows.
1333
855a0da7
SM
13342010-03-31 Stefan Monnier <monnier@iro.umontreal.ca>
1335
1336 Get rid of the direct_output optimizations.
1337 * keyboard.c (nonundocount): Remove extern declaration.
1338 (command_loop_1): Remove brittle optimisation for cheap and
1339 common operations.
1340 * xdisp.c (redisplay_internal): Don't bother checking
1341 redisplay_performed_directly_p any more.
1342 * sysdep.c (init_sys_modes): Don't call direct_output_forward_char
1343 any more.
1344 * dispnew.c (redisplay_performed_directly_p)
1345 (direct_output_for_insert, direct_output_forward_char):
1346 * dispextern.h (redisplay_performed_directly_p)
1347 (direct_output_for_insert, direct_output_forward_char): Remove.
1348 * cmds.c (nonundocount): Make it static.
1349
85738751 13502010-03-31 Bernhard Herzog <bh@intevation.de> (tiny change)
a6d676d9
CY
1351
1352 * menu.c (Fx_popup_menu): Use last_event_timestamp (Bug#4930).
1353
85738751 13542010-03-31 Jan Djärv <jan.h.d@swipnet.se>
67fee863
JD
1355
1356 * xdisp.c (note_mouse_highlight): Don't do highlight if pointer is
1357 invisible (Bug#5766).
1358
85738751 13592010-03-31 Adrian Robert <adrian.b.robert@gmail.com>
9ae6e189 1360
855a0da7
SM
1361 * xdisp.c (x_consider_frame_title, update_window_cursor):
1362 Remove HAVE_NS conditionals.
194d44e7 1363 (prepare_menu_bars) [HAVE_NS]: Call ns_set_doc_edited.
9ae6e189
CY
1364
1365 * nsfns.m (x_implicitly_set_name): If frame-title-format is t, use
1366 filename for the title.
1367 (ns_set_doc_edited): Do nothing if the selected window is a
1368 minibuffer window.
1369
1370 * nsterm.h: Add prototypes for ns_set_name_as_filename and
1371 ns_set_doc_edited.
1372
1373 * nsterm.m: Remove unneeded prototype.
1374
85738751 13752010-03-31 Glenn Morris <rgm@gnu.org>
25c72475
GM
1376
1377 * Makefile.in (SOME_MACHINE_OBJECTS): Ensure dbus stuff is always
1378 in the DOC file. (Bug#5336)
1379
85738751 13802010-03-31 Chong Yidong <cyd@stupidchicken.com>
f79a01db
CY
1381
1382 * xdisp.c (pos_visible_p): Revert 2008-01-25 change (Bug#5730).
1383
75d1428c
SM
13842010-03-31 Stefan Monnier <monnier@iro.umontreal.ca>
1385
1386 * window.c (keys_of_window): Remove redundant/overridden bindings.
1387
82043cfb
EZ
13882010-03-30 Eli Zaretskii <eliz@gnu.org>
1389
1390 * xdisp.c (BUFFER_POS_REACHED_P, move_it_in_display_line_to):
1391 Restore original behavior when the iterator is not bidi_p.
1392
b5dd0ae7
DN
13932010-03-30 Dan Nicolaescu <dann@ics.uci.edu>
1394
1395 * xdisp.c (syms_of_xdisp): Use intern_c_string instead of intern.
1396
bd924a5d
EZ
13972010-03-30 Eli Zaretskii <eliz@gnu.org>
1398
1399 * bidi.c (bidi_cache_iterator_state): Invalidate the cache if we
1400 are outside the range of cached character positions.
1401
3580374b
JB
14022010-03-30 Juanma Barranquero <lekktu@gmail.com>
1403
1404 * makefile.w32-in ($(BLD)/bidi.$(O)): Add dependency on w32gui.h.
1405
a7b02820
EZ
14062010-03-30 Eli Zaretskii <eliz@gnu.org>
1407
1408 Initial support for bidirectional editing.
1409
1410 * Makefile.in (obj): Include bidi.o.
1411 (bidi.o): New target.
1412
1413 * makefile.w32-in (OBJ1): Add $(BLD)/bidi.$(O).
1414 ($(BLD)/bidi.$(O)): New target.
1415
1416 * bidi.c: New file.
1417
1418 * buffer.h (struct buffer): New members bidi_display_reordering
1419 and bidi_paragraph_direction.
1420
1421 * buffer.c (init_buffer_once): Initialize bidi_display_reordering
1422 and bidi_paragraph_direction.
1423 (syms_of_buffer): Declare Lisp variables bidi-display-reordering
1424 and bidi-paragraph-direction.
1425 (Fbuffer_swap_text): Swap the values of
1426 bidi_display_reordering and bidi_paragraph_direction.
1427
1428 * dispextern.h (BIDI_MAXLEVEL, BIDI_AT_BASE_LEVEL): New macros.
1429 (bidi_type_t, bidi_dir_t): New types.
1430 (bidi_saved_info, bidi_stack, bidi_it): New structures.
1431 (struct it): New members bidi_p, bidi_it, paragraph_embedding,
1432 prev_stop, base_level_stop, and eol_pos.
1433 (bidi_init_it, bidi_get_next_char_visually): New prototypes.
1434 (IT_STACK_SIZE): Enlarge to 5.
1435 (struct glyph_row): New member reversed_p.
1436 <string_buffer_position>: Update prototype.
1437 (PRODUCE_GLYPHS): Set the reversed_p flag in the iterator's
1438 glyph_row if bidi_it.paragraph_dir == R2L.
1439 (struct glyph): New members resolved_level and bidi_type.
1440
1441 * dispnew.c (direct_output_forward_char): Give up if we need bidi
1442 processing or buffer's direction is right-to-left.
1443 (prepare_desired_row): Preserve the reversed_p flag.
1444 (row_equal_p): Compare the reversed_p attributes as well.
1445
1446 * xdisp.c (init_iterator): Initialize it->bidi_p. Call
1447 bidi_init_it and set it->paragraph_embedding from the current
1448 buffer's value of bidi_paragraph_direction.
1449 (reseat_1): Initialize bidi_it.first_elt.
1450 (set_iterator_to_next, next_element_from_buffer): Use the value of
1451 paragraph_embedding to determine the paragraph direction.
1452 (set_iterator_to_next): Under bidi reordering, call
1453 bidi_get_next_char_visually. Call bidi_paragraph_init if the
1454 new_paragraph flag is set in the bidi iterator.
1455 (next_element_from_buffer): If bidi_it.first_elt is set,
1456 initialize paragraph direction and find the first character to
1457 display in the visual order. If reseated to a middle of a line,
1458 prime the bidi iterator starting at the line's beginning. Handle
1459 the situation where we overstepped stop_charpos due to
1460 non-linearity of the bidi iteration. Likewise for when we back up
1461 beyond the previous stop_charpos. When moving across stop_charpos,
1462 record it in prev_stop.
1463 (display_line): Set row->end and it->start for the next row to the
1464 next character in logical order. Always extend reversed_p rows to
1465 the end of line, even if they end at ZV. Copy the reversed_p flag
1466 to the next glyph row. Keep calling set_cursor_from_row for
1467 bidi-reordered rows even if we already have a possible candidate
1468 for cursor position. Set row_end after all the row's glyphs have
1469 been produced, by looping over the glyphs. Record the position
1470 after EOL in it->eol_pos, and use it to set end_pos of the last
1471 row produced for a continued line.
1472 <Qright_to_left, Qleft_to_right>: New variables.
1473 (syms_of_xdisp): Initialize and staticpro them.
1474 (string_buffer_position_lim): New function.
1475 (string_buffer_position): Most of code moved to
1476 string_buffer_position_lim. Last argument and return value are
1477 now EMACS_INT; all callers changed.
1478 (set_cursor_from_row): Rewritten to support bidirectional text and
1479 reversed glyph rows.
1480 (text_outside_line_unchanged_p, try_window_id): Disable
1481 optimizations if we are reordering bidirectional text and the
1482 paragraph direction can be affected by the change.
1483 (append_glyph, append_composite_glyph)
1484 (produce_image_glyph, append_stretch_glyph): Set the
1485 resolved_level and bidi_type members of each glyph.
1486 (append_glyph): If the glyph row is reversed, prepend the glyph
1487 rather than appending it.
1488 (handle_stop_backwards): New function.
1489 (reseat_1, pop_it, push_it): Set prev_stop and base_level_stop.
1490 (reseat): call handle_stop_backwards to recompute prev_stop and
1491 base_level_stop for the new position.
1492 (handle_invisible_prop): Under bidi iteration, skip invisible text
1493 using bidi_get_next_char_visually. If we are `reseat'ed, init the
1494 paragraph direction. Update IT->prev_stop after skipping
1495 invisible text.
1496 (move_it_in_display_line_to): New variables prev_method
1497 and prev_pos. Compare for strict equality in
1498 BUFFER_POS_REACHED_P.
1499 (try_cursor_movement): Examine all the candidate rows that occlude
1500 point, to return the best match. If rows are bidi-reordered
1501 and point moved backwards, back up to the row that is not a
1502 continuation line, and start looking for a suitable row from
1503 there.
1504
1505 * term.c (append_glyph): Reverse glyphs by pre-pending them,
1506 rather than appending, if the glyph_row's reversed_p flag is set.
1507 Set the resolved_level and bidi_type members of each glyph.
1508
1509 * .gdbinit (pbiditype): New command.
1510 (pgx): Use it to display bidi level and type of the glyph.
1511 (pitx): Display some bidi information about the iterator.
1512 (prowlims, pmtxrows): New commands.
1513
32a8894e
DN
15142010-03-30 Dan Nicolaescu <dann@ics.uci.edu>
1515
1516 Remove all uses of C_DEBUG_SWITCH and LIBS_DEBUG.
1517 * s/usg5-4.h (LIBS_DEBUG):
1518 * s/irix6-5.h (C_DEBUG_SWITCH):
1519 * s/gnu-linux.h (LIBS_DEBUG):
1520 * s/darwin.h (LIBS_DEBUG):
1521 * s/bsd-common.h (LIBS_DEBUG):
1522 * s/aix4-2.h (LIBS_DEBUG, C_DEBUG_SWITCH):
1523 * m/iris4d.h (LIBS_DEBUG):
1524 * m/hp800.h (LIBS_DEBUG): Remove definitions.
1525
1526 * Makefile.in (LIBES): Remove reference to LIBS_DEBUG.
1527 (LIBS_DEBUG): Remove definition.
1528
649dbf36
CY
15292010-03-27 Chong Yidong <cyd@stupidchicken.com>
1530
1531 * process.c (Fmake_network_process): Don't apply Bug#5173 fix for
1532 Windows.
1533
cad4261f
YM
15342010-03-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1535
1536 * process.c (Fmake_network_process): Don't call turn_on_atimers around
1537 `connect' (Bug#5723).
1538
cd591dbc
HE
15392010-03-25 Helmut Eller <eller.helmut@gmail.com>
1540
1541 * process.c (Fmake_network_process): Call `select' for interrupted
1542 `connect' rather than creating new socket (Bug#5173).
1543
e867cb5d 15442010-03-24 Jan Djärv <jan.h.d@swipnet.se>
93318cbd
JD
1545
1546 * frame.c (x_get_arg): Handle RES_TYPE_BOOLEAN_NUMBER (bug #5736).
1547
1548 * xfns.c (Fx_create_frame): Make menuBar a RES_TYPE_BOOLEAN_NUMBER.
1549
1550 * dispextern.h (resource_types): RES_TYPE_BOOLEAN_NUMBER is new.
1551
e867cb5d 15522010-03-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
ad13a3ee
YM
1553
1554 * xfns.c (Fx_create_frame) [USE_LUCID]: Add BLOCK_INPUT around
1555 XLoadQueryFont.
1556
e867cb5d 15572010-03-24 Kenichi Handa <handa@m17n.org>
fbdc1721
KH
1558
1559 * coding.c (decode_coding_ccl): Fix previous change for the
1560 multibyte case.
fb608df3
KH
1561 (encode_coding_ccl): Don't setup ccl program here. Fix for the
1562 case that the output buffer is fullfilled.
1563 (encode_coding): Setup ccl program here.
fbdc1721 1564
e867cb5d 15652010-03-24 Andreas Politz <politza@fh-trier.de> (tiny change)
35cd7cd6
CY
1566
1567 * editfns.c (Fformat): Account for string precision when computing
1568 field width (Bug#5710).
1569
5845f0ed
DN
15702010-03-23 Dan Nicolaescu <dann@ics.uci.edu>
1571
814fb708
DN
1572 * s/gnu-linux.h (LIBS_SYSTEM): Remove, same as default.
1573
5845f0ed
DN
1574 Simplify LIBS_MACHINE definitions.
1575 * m/hp800.h (LIBS_MACHINE): Remove, same as default.
1576 * m/iris4d.h (LIBS_MACHINE): Likewise.
1577 * m/ibmrs6000.h (LIBS_MACHINE): Rename to LIBS_SYSTEM and move ...
1578 * s/aix4-2.h (LIBS_SYSTEM): ... here.
38e3487c 1579 * s/netbsd.h: Remove commented out code.
5845f0ed 1580
b7064064
DN
15812010-03-22 Dan Nicolaescu <dann@ics.uci.edu>
1582
df7734b2
DN
1583 Remove dead code dealing with POSIX_SIGNALS.
1584 * atimer.c (set_alarm): Remove dead code, all USG systems define
1585 POSIX_SIGNALS.
1586 * data.c (arith_error): Likewise.
1587 * keyboard.c (input_available_signal, handle_user_signal)
1588 (interrupt_signal): Likewise.
1589 * process.c (sigchld_handler): Likewise.
1590 (create_process): Remove if 0 code. Remove HPUX conditional when
1591 !defined (POSIX_SIGNALS), it cannot be true.
1592 * syssignal.h: Remove USG5_4 and USG conditionals when
1593 !POSIX_SIGNALS, they cannot be true.
1594
b7064064
DN
1595 * keyboard.c (Fset_input_interrupt_mode): Remove code depending on
1596 NO_SOCK_SIGIO, not used anymore.
1597
55da5ee3
DN
15982010-03-21 Dan Nicolaescu <dann@ics.uci.edu>
1599
0be96e3a
DN
1600 * m/vax.h (BSD_SYSTEM, BSD4_2): Remove conditionals, we only
1601 support vax on BSDs.
1602
55da5ee3
DN
1603 * m/ibmrs6000.h (ORDINARY_LINK): Move definition ...
1604 * s/aix4-2.h (ORDINARY_LINK): ... here.
1605
c0282183
AS
16062010-03-21 Andreas Schwab <schwab@linux-m68k.org>
1607
82c3d67a
AS
1608 * Makefile.in (abs_builddir): Define.
1609 (bootstrap_exe): Use it.
1610 (VPATH): Use $(srcdir) instead of @srcdir@.
c0282183 1611
3613edce
SM
16122010-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
1613
1614 * Makefile.in (bootstrap_exe): Use an absolute name.
1615
7f110ddc
DN
16162010-03-20 Dan Nicolaescu <dann@ics.uci.edu>
1617
22e87574
DN
1618 Remove support for old GNU/Linux using libc version 5.
1619 * m/alpha.h (LINUX_SBRK_BUG): Remove definition.
1620 * emacs.c (main): Remove code depending on LINUX_SBRK_BUG.
1621
05a670e6
DN
1622 Consolidate redundant definitions in s/bsd-common.h.
1623 * s/bsd-common.h (BSD4_2, TABDLY, TAB3, HAVE_TERMIOS, NO_TERMIO)
1624 (LIBS_DEBUG, SYSV_SYSTEM_DIR, UNEXEC, NARROWPROTO, BSD_PGRPS)
1625 (LDAV_SYMBOL, KERNEL_FILE): Define (or undefine) here instead of
1626 doing it in all files that include this one.
1627 * s/gnu.h (BSD4_2, TABDLY, TAB3, HAVE_TERMIOS, NO_TERMIO)
1628 (LIBS_DEBUG, SYSV_SYSTEM_DIR, UNEXEC, NARROWPROTO, BSD_PGRPS)
1629 (LDAV_SYMBOL, KERNEL_FILE): Remove.
1630 * s/freebsd.h (BSD4_2, TABDLY, TAB3, HAVE_TERMIOS, NO_TERMIO)
1631 (LIBS_DEBUG, SYSV_SYSTEM_DIR, UNEXEC, NARROWPROTO, BSD_PGRPS)
1632 (LDAV_SYMBOL, KERNEL_FILE): Remove.
1633 * s/netbsd.h (BSD4_2, TABDLY, TAB3, HAVE_TERMIOS, NO_TERMIO)
1634 (LIBS_DEBUG, SYSV_SYSTEM_DIR, UNEXEC, NARROWPROTO, BSD_PGRPS)
1635 (LDAV_SYMBOL, KERNEL_FILE): Remove.
1636
2968f561
DN
1637 Consolidate redundant definitions.
1638 * s/usg5-4.h (sigsetmask, PTY_TTY_NAME_SPRINTF): Do not define,
1639 it's undefined in all files that include this one.
1640 (POSIX_SIGNALS): Define here instead of doing it in all files that
1641 include this one.
1642 * s/irix6-5.h (sigsetmask, PTY_TTY_NAME_SPRINTF): Do not undef.
1643 (POSIX_SIGNALS): Do not define.
1644 * s/sol2-6.h (sigsetmask, PTY_TTY_NAME_SPRINTF): Do not undef.
1645 (POSIX_SIGNALS): Do not define.
1646 * s/unixware.h (sigsetmask, PTY_TTY_NAME_SPRINTF): Do not undef.
1647 (POSIX_SIGNALS): Do not define.
1648
15d25dc0
DN
1649 Remove support for old UNIX System V systems.
1650 * s/unixware.h: Add the contents of s/usg-5-4-2.h.
1651 * s/usg-5-4-2.h: Remove.
1652
07e339e4
DN
1653 Remove support for Solaris on PPC and for old versions.
1654 * s/sol2-6.h: Add the contents of s/sol-2.3.h, s/sol-2.4.h, s/sol-2.5.h.
1655 (LD_SWITCH_SYSTEM, USE_MMAP_FOR_BUFFERS): Remove #defines/#undef
1656 that cancel each other.
1657 * s/sol2-3.h:
1658 * s/sol2-4.h:
1659 * s/sol2-5.h: Remove.
1660 * m/ibmrs6000.h: Remove code for USG5_4, this file is only used on AIX.
1661 (NO_REMAP): Remove, unused.
1662 (UNEXEC): Move definition ...
1663 * s/aix4-2.h (UNEXEC): ... here.
1664
7f110ddc
DN
1665 * s/openbsd.h: Remove support for non-ELF and for systems that do
1666 not support shared libraries.
1667 * s/netbsd.h:
1668 * s/freebsd.h: Likewise.
1669
605f35cd
DN
16702010-03-20 Dan Nicolaescu <dann@ics.uci.edu>
1671
1672 Remove non-working support for lynxos 3.0.
1673 * s/lynxos.h: Remove file.
1674
1675 * unexec.c (unexec, adjust_lnnoptrs): Do not depend on
1676 COFF_BSD_SYMBOLS, nothing defines it anymore.
1677
aed71cf4
DN
16782010-03-20 Dan Nicolaescu <dann@ics.uci.edu>
1679
1680 Remove obsolete uses of HAVE_SHM.
1681 * emacs.c (standard_args):
1682 (Fdump_emacs):
1683 (syms_of_emacs): Remove code depending on HAVE_SHM.
1684
1685 * alloc.c: Remove HAVE_SHM dependent definition.
1686
1687 * Makefile.in (RUN_TEMACS): Do not depend on HAVE_SHM.
1688
aded53ff
GM
16892010-03-18 Glenn Morris <rgm@gnu.org>
1690
17284745
GM
1691 * emacs.c (USAGE4): Hard-code bug address.
1692 (REPORT_EMACS_BUG_ADDRESS, REPORT_EMACS_BUG_PRETEST_ADDRESS): Remove.
1693 (bug_reporting_address): Remove.
1694 (main): Don't call bug_reporting_address.
1695
aded53ff
GM
1696 * Makefile.in (XFT_LIBS, LIBXPM, LIBJPEG, LIBPNG, LIBTIFF, LIBGIF)
1697 (LIBGPM, LIBRESOLV): Set using autoconf rather than cpp.
1698
303500aa
CY
16992010-03-15 Chong Yidong <cyd@stupidchicken.com>
1700
1701 * xfns.c (Fx_create_frame):
1702 * frame.c (Vdefault_frame_scroll_bars): Put non-GTK X scroll-bars
1703 on left.
1704
cef3058f
CY
17052010-03-13 Andreas Politz <politza@fh-trier.de> (tiny change)
1706
1707 * editfns.c (Fformat): Account for string precision when computing
1708 field width (Bug#5710).
1709
a647d59d
CY
17102010-03-12 Chong Yidong <cyd@stupidchicken.com>
1711
4fa42018
CY
1712 * xfns.c (Fx_create_frame): Set default to Qright.
1713
a647d59d
CY
1714 * frame.c (Vdefault_frame_scroll_bars): Set default to Qright for
1715 all window systems.
1716
6da23aaa
EZ
17172010-03-12 Eli Zaretskii <eliz@gnu.org>
1718
a96f6398 1719 These changes remove termcap.c from the build on Posix platforms.
83d02def 1720 * Makefile.in (termcapobj): Move termcap.o from here...
6da23aaa
EZ
1721 (MSDOS_OBJ): ...to here.
1722 (termcapobj) [!LIBS_TERMCAP]: Remove specialized value, as it is
1723 now identical to when LIBS_TERMCAP is defined.
1724
1725 * term.c: Remove (ifdef'ed away) inclusion of termcap.h.
1726
1727 * cm.c: Remove (ifdef'ed away) inclusion of termcap.h.
1728
a96f6398 1729 * config.in: Regenerated. (See top-level ChangeLog.)
6da23aaa 1730
288f9fc0
CY
17312010-03-10 Chong Yidong <cyd@stupidchicken.com>
1732
1733 * Branch for 23.2.
1734
d48cd3f4
SM
17352010-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
1736
1737 Cleanup setup of gl_state in various parts of the code.
1738 * syntax.h (SETUP_BUFFER_SYNTAX_TABLE): New macro.
1739 (SETUP_SYNTAX_TABLE, SETUP_SYNTAX_TABLE_FOR_OBJECT):
1740 * syntax.c (find_defun_start, Fchar_syntax, Fmatching_paren)
1741 (skip_chars):
1742 * regex.c (regex_compile): Use it.
1743 (re_compile_pattern): Don't set gl_state.current_syntax_table since
1744 it's now set in regex_compile when/if we need it.
1745
618db430
SM
17462010-03-05 Stefan Monnier <monnier@iro.umontreal.ca>
1747
c0335e02
SM
1748 Make it possible to C-g in a tight bytecode loop again (bug#5680).
1749 * lisp.h (ELSE_PENDING_SIGNALS): New macro.
1750 (QUIT): Use it to consolidate code and remove redundancy.
1751 * bytecode.c (BYTE_CODE_QUIT): Use it as well.
1752
254c06a8
SM
1753 * regex.c (regex_compile): Setup gl_state as well.
1754
618db430
SM
1755 * syntax.c (skip_chars): Setup gl_state (bug#3823).
1756 (in_classes): Use CONSP before XCAR/XCDR.
1757
233f0c9f
CY
17582010-03-03 Chong Yidong <cyd@stupidchicken.com>
1759
1760 * keymap.c (Fwhere_is_internal): Use Fequal to compare
1761 definitions, so that keyboard macros are correctly handled
1762 (Bug#5481).
1763
75f80e63
EZ
17642010-03-02 Eli Zaretskii <eliz@gnu.org>
1765
1766 * coding.c (decode_coding_emacs_mule): Fixup pointers to buffer
1767 text that could be relocated inside the call to emacs_mule_char.
1768 (emacs_mule_char): Use CODING_DECODE_CHAR instead of DECODE_CHAR.
1769 (CODING_DECODE_CHAR): Add a comment describing its purpose.
1770
dcfb9bc4
KH
17712010-03-02 Kenichi Handa <handa@m17n.org>
1772
fc9a17bc
KH
1773 * character.c (parse_str_as_multibyte): Fix handling of the
1774 multibyte form of raw-bytes.
1775 (str_as_multibyte): Likewise.
1776
dcfb9bc4
KH
1777 * buffer.c (Fset_buffer_multibyte): Fix handling of the multibyte
1778 form of raw-bytes.
1779
412c01b6
CY
17802010-02-28 Chong Yidong <cyd@stupidchicken.com>
1781
1782 * charset.c (load_charset_map_from_file)
1783 (load_charset_map_from_vector): Zero out allocated
1784 charset_map_entries before using them.
1785
df7e1ea0
AS
17862010-02-27 Andreas Schwab <schwab@linux-m68k.org>
1787
1788 * w32uniscribe.c (uniscribe_check_otf): Fix length check.
1789
fe69a722
CY
17902010-02-27 Chong Yidong <cyd@stupidchicken.com>
1791
4ed28cf4
CY
1792 * font.c (font_parse_fcname): Recognize "Book", "Condensed",
1793 "Medium", and "Semi-Condensed" keywords in GTK names (Bug#5646).
fe69a722 1794
7379cfce
KH
17952010-02-26 Kenichi Handa <handa@m17n.org>
1796
f88cc4d6
KH
1797 * ftfont.c (ftfont_get_open_type_spec): Fix parsing of otf_spec.
1798
7379cfce
KH
1799 * xdisp.c (reseat_to_string): Fix previous change.
1800
cf2fdcfb
CY
18012010-02-26 David Reitter <david.reitter@gmail.com>
1802
1803 * nsfont.m (nsfont_draw): ns_antialias_text should be a
1804 Lisp_Object (Bug#4736).
1805
cc6c7c75
KH
18062010-02-25 Kenichi Handa <handa@m17n.org>
1807
1808 * xdisp.c (reseat_to_string): Fix previous change (bug#5609).
1809
32e737d7
JD
18102010-02-24 Jan Djärv <jan.h.d@swipnet.se>
1811
1812 * xterm.c (XTflash): Move declarations before statements.
1813
1814 * gtkutil.c (xg_get_gdk_display): Remove (unused).
1815 (xg_get_pixbuf_from_pix_and_mask, xg_create_frame_widgets)
1816 (xg_toggle_notify_cb, xg_set_toolkit_scroll_bar_thumb)
1817 (xg_create_tool_bar): Remove unused variables.
1818 (x_wm_set_size_hint): Move declarations before statements.
1819 (xg_create_frame_widgets): Remove variable grav,
1820
676cae9f
CY
18212010-02-21 Chong Yidong <cyd@stupidchicken.com>
1822
1823 * m/arm.h: Define the LIB_GCC flag to be -lgcc_s (Bug#5518).
1824
886cc2b8
SM
18252010-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
1826
1827 * term.c (fatal): Add a final \n if needed (bug#5596).
1828
ddb2d8e2
CY
18292010-02-18 Chong Yidong <cyd@stupidchicken.com>
1830
1831 * nsterm.m (ns_ring_bell): Revert last change (Bug#5569).
1832
2a4f8d3d
GM
18332010-02-18 Glenn Morris <rgm@gnu.org>
1834
1835 * callint.c (Finteractive): Doc fix.
1836
ebaf11b6
KH
18372010-02-18 Kazuhiro Ito <kzhr@d1.dion.ne.jp> (tiny change)
1838
886cc2b8
SM
1839 * coding.c (record_conversion_result):
1840 Handle CODING_RESULT_INSUFFICIENT_DST.
ebaf11b6
KH
1841 (decode_coding_object): Record CODING_RESULT_INSUFFICIENT_MEM on
1842 memory allocation error.
1843
d0396581
KH
18442010-02-17 Kenichi Handa <handa@m17n.org>
1845
886cc2b8
SM
1846 * coding.c (decode_coding_ccl): Don't setup ccl program here.
1847 Fix for the case that the output buffer is fullfilled.
d0396581
KH
1848 (decode_coding): Setup ccl program here. Keep looping when the
1849 decoder stopped because the output buffer is
1850 fullfilled (bug#5534).
1851
1852 * ccl.c (ccl_driver): Never reset ic to CCL_HEADER_MAIN.
1853
98599f74
JD
18542010-02-13 Jan Djärv <jan.h.d@swipnet.se>
1855
471e4f04 1856 * xterm.c (x_clear_frame_area): Call gtk_widget_queue_draw if USE_GTK,
98599f74 1857 bug #5571.
886cc2b8 1858 (XTflash): Use Gdk-routines if USE_GTK so scroll bars don't get
471e4f04 1859 overdrawn.
98599f74 1860
182659ae
JD
18612010-02-10 Jan Djärv <jan.h.d@swipnet.se>
1862
1863 * xsmfns.c (x_session_initialize): Move initialization of ice_fd and
1864 doing_interact here.
1865 (ice_connection_closed): New function.
1866 (x_session_check_input, smc_die_CB, ice_io_error_handler)
1867 (ice_conn_watch_CB, x_session_close): Call ice_connection_closed.
1868 (x_session_check_input): Call IceCloseConnection if IceProcessMessages
1869 returns I/O error.
1870 (ice_conn_watch_CB): Call add_keyboard_wait_descriptor on ice_fd,
1871 bug #5512.
1872
9be32c4e 18732010-02-08 Francis Devereux <francis@devrx.org> (tiny change)
14a225f9
CY
1874
1875 * nsfont.m (nsfont_open): The system's value for the font descent
1876 is negative, so round it down to avoid clipping.
1877
a2f3eb19
CY
18782010-02-06 Chong Yidong <cyd@stupidchicken.com>
1879
1880 * charset.c (load_charset_map_from_file)
1881 (load_charset_map_from_vector): Fix last change to use SAFE_ALLOCA
953d248c 1882 instead of xmalloc (Bug#5526). Suggested by Vivek Dasmohapatra.
a2f3eb19 1883
3088147c
CY
18842010-02-05 Chong Yidong <cyd@stupidchicken.com>
1885
1886 * charset.c (load_charset_map_from_file): Allocate large
1887 charset_map_entries structure on the heap rather than the stack.
1888 (Bug#5526).
1889
b57d9029
KH
18902010-01-31 Kenichi Handa <handa@m17n.org>
1891
1892 * font.c (font_parse_xlfd): If FONT is a font-entity and pixel
115e4fd3 1893 size in NAME is invalid, return -1 (Bug#5396).
b57d9029 1894
c67d885b
CY
18952010-01-31 Chong Yidong <cyd@stupidchicken.com>
1896
1897 * nsterm.m (ns_defined_color): Block input. Suggested by Mike
1898 <deactivated@gmail.com> (Bug#3605).
1899
8fab2362
CY
19002010-01-31 David De La Harpe Golden <david@harpegolden.net>
1901
1902 * fileio.c (Frename_file): Correctly rename symlinks to
1903 directories (Bug#5496).
1904
cb2a62f2
CY
19052010-01-31 Filipe Cabecinhas <filcab@gmail.com> (tiny change)
1906
1907 * nsterm.m (ns_ring_bell): Handle visible bell like X.
1908
944c7a26
AS
19092010-01-30 Andreas Schwab <schwab@linux-m68k.org>
1910
1911 * character.h (CHAR_PRINTABLE_P): Reparenthesize to avoid warning.
1912
c024ac08
CY
19132010-01-29 Chong Yidong <cyd@stupidchicken.com>
1914
1915 * frame.c (DEFAULT_ROWS): Change default to 35.
1916
1917 * xfns.c (x_default_font_parameter): Change default XFT font to
1918 monospace-10 (Bug#3643).
1919
af93af83
EZ
19202010-01-29 Eli Zaretskii <eliz@gnu.org>
1921
1922 * w32inevt.c (key_event): Remove unnecessary comparison of
1923 event->uChar.AsciiChar with 128.
1924
ca0eb708
CY
19252010-01-28 Chong Yidong <cyd@stupidchicken.com>
1926
b242dbfc
CY
1927 * fileio.c (Frename_file): Fix last change (Bug#5487).
1928
ca0eb708
CY
1929 * m/mips.h: Remove DATA_START. Suggested by Dan Nicolaescu.
1930
1931 * m/alpha.h: Don't define DATA_START on NetBSD (Bug#4629).
1932
45d45af5
JD
19332010-01-28 Jan Djärv <jan.h.d@swipnet.se>
1934
1935 * xfns.c (Fx_create_frame): Remove window size matching code from
1936 2010-01-15.
1937 (x_get_current_desktop, x_get_desktop_workarea): Remove
1938
7e233730
JR
19392010-01-27 Jason Rumney <jasonr@gnu.org>
1940
1941 * w32inevt.c (w32_kbd_patch_key): Save the unicode character.
a292592c 1942 (key_event): Use unicode for characters 128 and higher (Bug#4567).
7e233730 1943
86e893e3
KH
19442010-01-27 Kenichi Handa <handa@m17n.org>
1945
1946 * regex.c (analyse_first): Fix setting of fastmap for unibyte
c8b96b2a 1947 pattern string (Bug#4209).
86e893e3 1948
8719abec
CY
19492010-01-27 David De La Harpe Golden <david@harpegolden.net>
1950
1951 * fileio.c (Frename_file): Call copy-directory and
1952 delete-directory for directories, in order to handle cross-device
1953 renaming (Bug#3353).
1954
844794c8
JD
19552010-01-25 Jan Djärv <jan.h.d@swipnet.se>
1956
aa3e13b5 1957 * xfns.c (Fx_create_frame): If frame height is too big, try
ac146f82 1958 sizes 24 and 10. Bug #3643.
844794c8 1959
bd4b5750
SM
19602010-01-24 Stefan Monnier <monnier@iro.umontreal.ca>
1961
8dc1adf6 1962 Try and fix bug#788, hopefully for real this time.
bd4b5750
SM
1963 * keymap.c (shadow_lookup): Add `remap' arg.
1964 (describe_map, describe_vector): Update calls to shadow_lookup.
1965 (Fwhere_is_internal): Fix up handling of `remapped_sequences' and
1966 `remapped' so this flag is applicable to `sequence'. Be careful to
8dc1adf6
SM
1967 perform remapping during shadow_lookup check of remapped_sequences.
1968
285d07e2
CY
19692010-01-24 Eric Bélanger <snowmaniscool@gmail.com> (tiny change)
1970
1971 * image.c (png_load): Use png_sig_cmp instead of the obsolete
1972 png_check_sig, which has been removed in libpng 1.4.
1973
c6d09b8d
CY
19742010-01-23 Giorgos Keramidas <keramida@ceid.upatras.gr> (tiny change)
1975
1976 * filelock.c: Include utmp.h only when HAVE_UTMP_H (FreeBSD 9.x
1977 lacks this header file).
1978
3d782998
YM
19792010-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1980
1981 * xdisp.c (draw_glyphs): Update `start' for left_overwritten case
1982 as in Emacs 22.
1983
2aff7c53
YM
19842010-01-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1985
1986 * lisp.h (make_pure_string): String pointer arg now points to const.
1987
1988 * alloc.c (find_string_data_in_pure, make_pure_string): String pointer
1989 args now point to const.
1990
74327f7a
EZ
19912010-01-22 Eli Zaretskii <eliz@gnu.org>
1992
1993 * lread.c (Fload): Don't treat files without .elc extension as
1994 byte-compiled if they are ``magic'', i.e. `openp' returned -2 for
1995 them. (bug#5303)
1996
4d1e6632
KH
19972010-01-20 Kenichi Handa <handa@m17n.org>
1998
1999 * coding.c (consume_chars): If ! multibyte and the encoder is ccl,
2000 treat the source as actual byte sequence.
2001
1fdede8f
AM
20022010-01-19 Alan Mackenzie <acm@muc.de>
2003
2004 Fix spurious before-change-functions invocation from (insert ?\n).
194d44e7 2005 * textprop.c (set_text_properties): Rename parameter
1fdede8f
AM
2006 `signal_after_change_p' to `coherent_change_p', and make the
2007 invocation of `modify_region' conditional on it.
2008
67477f30
JD
20092010-01-19 Jan Djärv <jan.h.d@swipnet.se>
2010
2011 * xsettings.c (apply_xft_settings): Save settings in Vxft_settings
2012 for debug purpose.
2013 (syms_of_xsettings): Declare xft-settings.
2014
244b023e
CY
20152010-01-18 Chong Yidong <cyd@stupidchicken.com>
2016
2017 * editfns.c (Fcurrent_time_string): Doc fix (Bug#5408).
2018
617364fe
CY
20192010-01-16 Stefan Monnier <monnier@iro.umontreal.ca>
2020
2021 * xterm.c (event_handler_gdk): Block input (Bug#5037).
2022
4fe22cdf
CY
20232010-01-16 Chong Yidong <cyd@stupidchicken.com>
2024
2025 * emacs.c (standard_args): Adjust arg priorities to reflect how
2026 they are processed in startup.el.
2027
e118d2be
AS
20282010-01-16 Andreas Schwab <schwab@linux-m68k.org>
2029
2030 * Makefile.in (lisp, shortlisp): Update.
2031
523ae620
SM
20322010-01-16 Stefan Monnier <monnier@iro.umontreal.ca>
2033
2034 * xterm.c (x_term_init): Instead of inhibiting GC while running Lisp
2035 code, link the new kboard into all_kboard before running Lisp code,
2036 and protect the new terminal with GCPRO (Bug#5365).
2037 (x_term_init): Remove unused var `atom'.
2038 (x_delete_display, x_delete_terminal): Remove unused var `i'.
2039
f0d13888
JD
20402010-01-15 Jan Djärv <jan.h.d@swipnet.se>
2041
2042 * xfns.c (x_get_current_desktop, x_get_desktop_workarea): New functions.
2043 (Fx_create_frame): Call x_get_current_desktop and x_get_desktop_workarea
2044 to find out usable size of the desktop. Don't make frames larger than
ac146f82 2045 this. Bug #3643.
f0d13888 2046
cc320f07
KH
20472010-01-15 Kenichi Handa <handa@m17n.org>
2048
2049 * xdisp.c (CHAR_COMPOSED_P): New arg END_CHARPOS. Callers changed.
2050
7ffdf101
CY
20512010-01-15 Chong Yidong <cyd@stupidchicken.com>
2052
2053 * nsterm.m (Qnone): Define.
2054
2055 * nsfns.m (Qnone): Move definition to nsterm.m.
2056
d12bd917
KH
20572010-01-14 Kenichi Handa <handa@m17n.org>
2058
2059 * coding.c (detect_coding_iso_2022): Fix handling of euc-xx coding
2060 systems.
2061
d9a7c140
KH
20622010-01-14 Kenichi Handa <handa@m17n.org>
2063
2064 Make auto-composition work on all buffers even if they are
2065 fundamental mode.
2066
2067 * composite.c (Vauto_composition_mode): New variable.
2068 (composition_compute_stop_pos): Check Vauto_composition_mode
2069 instead of Vauto_composition_function.
2070 (composition_adjust_point, Ffind_composition_internal): Likewise.
2071 (syms_of_composite): Declare Lisp variable
2072 "auto-composition-mode" here.
2073
63286bb2
CY
20742010-01-13 Chong Yidong <cyd@stupidchicken.com>
2075
2076 * xterm.c (x_term_init): Avoid garbage-collecting the new terminal
2077 during call to vendor-specific-keysyms (Bug#5365).
2078
c2623ee7
YM
20792010-01-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2080
2081 * keyboard.c (input_available_signal) [SYNC_INPUT]:
2082 Call SIGNAL_THREAD_CHECK (Bug#5333).
2083
2084 * atimer.c (alarm_signal_handler) [!SYNC_INPUT]:
2085 Call SIGNAL_THREAD_CHECK.
2086
0b5397c2
SM
20872010-01-13 Stefan Monnier <monnier@iro.umontreal.ca>
2088
2089 Try to fix bug#5314. This is probably not the final word, tho.
2090 * buffer.c (Fset_buffer_modified_p): Try and be careful not to modify
2091 recent-auto-save-p as a side-effect.
2092 * buffer.h (BUF_AUTOSAVE_MODIFF): New macro.
2093 * buffer.c (Fkill_buffer, reset_buffer):
2094 * editfns.c (Fsubst_char_in_region):
2095 * fileio.c (Finsert_file_contents, Fdo_auto_save)
2096 (Fset_buffer_auto_saved, Frecent_auto_save_p): Use it.
2097
dc954cb2
KH
20982010-01-13 Kenichi Handa <handa@m17n.org>
2099
2100 Display buffer name, etc. in mode line by composing correctly.
2101
2102 * xdisp.c (reseat_to_string): Call composition_compute_stop_pos if
2103 STRING is not nil.
0b5397c2 2104 (display_mode_element): Adjust for the change of
dc954cb2
KH
2105 decode_mode_spec and display_line.
2106 (decode_mode_spec): Change arg MULTIBYTE to STRING.
2107 (display_string): Handle the case that STRING is non-null and
2108 LISP_STRING is not nil.
2109
0b5397c2
SM
2110 * xterm.c (x_draw_composite_glyph_string_foreground):
2111 Pay attention to s->face->overstrike.
dc954cb2
KH
2112
2113 * composite.c (composition_reseat_it): Don't check PT if STRING is
2114 non nil.
2115
4a00eaca
YM
21162010-01-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2117
2118 * keyboard.c (read_char): Don't apply previous change when current
2119 buffer is unchanged by command execution.
2120
60abb287
JD
21212010-01-12 Jan Djärv <jan.h.d@swipnet.se>
2122
2123 * keyboard.c (read_char): Return after executing from special map.
2124
893db5bc
GM
21252010-01-12 Glenn Morris <rgm@gnu.org>
2126
2127 * emacs.c (REPORT_EMACS_BUG_PRETEST_ADDRESS): Set it to
2128 bug-gnu-emacs rather than emacs-pretest-bug.
2129
4d03ece0
CY
21302010-01-11 Chong Yidong <cyd@stupidchicken.com>
2131
2132 * nsterm.m (syms_of_nsterm): Initialize Qcontrol etc. before
2133 initializing the Lisp variables that depend on them.
2134
1df47e38
YM
21352010-01-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2136
2137 * xfns.c (x_set_menu_bar_lines) [!USE_X_TOOLKIT && !USE_GTK]:
2138 Clear areas that will not be updated after change of menu bar lines.
2139 Clear the menu bar window's current matrix when the window gets empty.
2140
2f1c6384
CY
21412010-01-09 Chong Yidong <cyd@stupidchicken.com>
2142
e398c61c
CY
2143 * intervals.h, textprop.c (extend_property_ranges): Return value
2144 and args changed. Discard properties that begin at or after the
2145 new end (Bug#5306).
2146
2147 * editfns.c (Fformat): Caller changed.
2148
e5a29a10
CY
2149 * nsterm.m (ns_set_default_prefs): Delete function.
2150 (syms_of_nsterm): Initialize ns_command_modifier,
2151 ns_control_modifier, ns_function_modifier, ns_antialias_text, and
2152 ns_antialias_threshold here, not in ns_term_init (Bug#4113).
2153
2f1c6384
CY
2154 * xdisp.c (pos_visible_p): Check for invisible text at the correct
2155 position (Bug#4040).
2156
d427a9fa
EZ
21572010-01-09 Eli Zaretskii <eliz@gnu.org>
2158
2159 * editfns.c (Ffloat_time): Doc fix.
2160
21b9df2f
JD
21612010-01-09 Jan Djärv <jan.h.d@swipnet.se>
2162
2163 * xfns.c (Fx_create_frame): Don't create frame larger than display
2164 by default bug#3643.
2165
4b00d3b1
YM
21662010-01-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2167
2168 * frame.h (FRAME_TOP_MARGIN_HEIGHT): New macro.
2169 (FRAME_LINE_TO_PIXEL_Y, FRAME_PIXEL_Y_TO_LINE): Take account of pseudo
2170 windows above internal border.
2171
2172 * window.h (WINDOW_MENU_BAR_P, WINDOW_TOOL_BAR_P): New macros.
2173 (WINDOW_TOP_EDGE_Y, WINDOW_BOTTOM_EDGE_Y): Take account of pseudo
2174 windows above internal border.
2175
2176 * xdisp.c (get_glyph_string_clip_rects, init_glyph_string): Don't treat
2177 tool bar windows specially.
2178
2179 * xfns.c (x_set_tool_bar_lines): Take account of menu bar height.
2180
2181 * xterm.c (x_after_update_window_line): Don't treat tool bar windows
2182 specially.
2183 (XTflash): Take account of menu bar height.
2184
2185 * w32term.c (x_after_update_window_line): Don't treat tool bar windows
2186 specially.
2187
5075d853
JD
21882010-01-08 Jan Djärv <jan.h.d@swipnet.se>
2189
ac146f82 2190 * dispnew.c (change_frame_size_1): newwidth == FRAME_COLS (f) must
5075d853
JD
2191 also be true before we can return early (bug #5339).
2192
474217c8
CY
21932010-01-06 David Reitter <david.reitter@gmail.com>
2194
2195 * nsfns.m (ns_get_screen): Rewrite, returning NULL for non-NS.
2196 (Fns_display_usable_bounds): Rewrite, computing bounds properly
2197 (Bug#3233).
2198
c0e6d47d
JD
21992010-01-06 Jan Djärv <jan.h.d@swipnet.se>
2200
d0cf45b7
JD
2201 * font.c (font_open_entity): Enable chache and call cached_font_ok
2202 for the driver if defined.
2203 (QCuser_spec): New symbol.
2204 (font_spec_from_name): Save name as user-spec.
2205 (font_load_for_lface): Keep user-spec instead of name.
2206 (font_open_by_name): Save name as user-spec.
2207 (syms_of_font): Initialize QCuser_spec.
b7f8e4f5 2208 (font_clear_prop): Clear name if it exists in font (bug#5157).
d0cf45b7
JD
2209
2210 * xftfont.c (xftfont_open): Call xftfont_add_rendering_parameters.
2211 (xftfont_add_rendering_parameters, xftfont_cached_font_ok): New.
2212 (syms_of_xftfont): Initialize xftfont_driver.cached_font_ok.
2213
2214 * font.h (struct font_driver): Add cached_font_ok.
2215
c0e6d47d
JD
2216 * xterm.c (x_clear_frame): Queue draw for scroll bars.
2217
7c583cd8
JD
22182010-01-05 Jan Djärv <jan.h.d@swipnet.se>
2219
2220 * xterm.c (x_new_font): Move code for setting rows/cols before
2221 resizing ...
ac146f82 2222 (x_set_window_size): ... to here. Bug #2568.
7c583cd8
JD
2223
2224 * gtkutil.c (xg_clear_under_internal_border): New function.
0b5397c2
SM
2225 (xg_frame_resized, xg_frame_set_char_size):
2226 Call xg_clear_under_internal_border.
7c583cd8 2227 (xg_update_scrollbar_pos): Clear under old scroll bar position.
69e2f185 2228
03f77f0a
CY
22292010-01-05 Chong Yidong <cyd@stupidchicken.com>
2230
2231 * keyboard.c (read_key_sequence): Catch keyboard switch after
2232 making a new tty frame (Bug#5095).
2233
2a1ef5be
KH
22342010-01-05 Kenichi Handa <handa@m17n.org>
2235
2236 * fontset.c (fontset_find_font): Fix getting the frame pointer.
2237
e3eb1dae
SM
22382010-01-04 Stefan Monnier <monnier@iro.umontreal.ca>
2239
2240 * dbusbind.c (xd_remove_watch): Avoid trying to convert a void* to
2241 Lisp_Object, preferring to convert a lisp_Object to a void* instead.
2242 (Fdbus_init_bus): Use XHASH to get a scalar value from a Lisp_Object.
2243
777013f2
MA
22442010-01-03 Michael Albinus <michael.albinus@gmx.de>
2245
2246 * dbusbind.c (xd_add_watch): Improve debug message.
2247 (xd_remove_watch): Improve debug message. If DATA is the session
2248 bus, unset D-Bus session environment.
2249 (Fdbus_init_bus): Pass the bus as argument to
2250 dbus_connection_set_watch_functions. (Bug#5283)
7c583cd8 2251
8932b1c2
CY
22522010-01-01 Chong Yidong <cyd@stupidchicken.com>
2253
87231e2c
CY
2254 * nsterm.m (ns_get_color): Fix buffer overflow (Bug#4763).
2255
4801c5fa
CY
2256 * lread.c (syms_of_lread): Make it clearer that these are the
2257 names of loaded files (Bug#5068).
2258
8932b1c2
CY
2259 * eval.c (run_hook_with_args): Handle the case where the global
2260 value has the obsolete single-function form (Bug#5026).
2261
11e3c684
CY
22622009-12-27 Chong Yidong <cyd@stupidchicken.com>
2263
2264 * minibuf.c (Fall_completions): Minor optimization.
2265
5b28ce35
EZ
22662009-12-26 Eli Zaretskii <eliz@gnu.org>
2267
5ce6e4f4
JB
2268 * .gdbinit (pgx): Fix display of composite glyphs.
2269 Display cmp.from and cmp.to as well.
2270 (pitx): Fix last change.
5b28ce35 2271
bcffff46
KH
22722009-12-25 Kenichi Handa <handa@m17n.org>
2273
2274 * composite.h (composition_adjust_point): Update prototype.
2275
2276 * composite.c (composition_reseat_it): Don't make a composition
2277 spanning over point.
2278 (CHAR_COMPOSABLE_P): Treat U+200C (ZWNJ) and U+200D (ZWJ) as
2279 composable characters.
2280 (composition_adjust_point): New arg NEW_PT. Callers changed.
2281
2282 * keyboard.c (command_loop_1): Force redisplay if the last point
2283 was within a composition.
2284 (adjust_point_for_property): Don't adjust point for automatic
2285 composition when called after buffer modification.
2286
3f670e9a
EZ
22872009-12-19 Eli Zaretskii <eliz@gnu.org>
2288
5ce6e4f4
JB
2289 * .gdbinit (pitx): Don't use enum names, use their values.
2290 Remove reference to non-existing value GET_FROM_COMPOSITION.
be996d82
EZ
2291 (pgx): Don't use enum names, use their values.
2292 (pitmethod): New helper command.
2293 (pitx): Use it to display iteration method.
2294 (pgrowit): New command.
2295
ad903955
EZ
2296 * makefile.w32-in ($(BLD)/cmds.$(O)): Depend on frame.h.
2297
3f670e9a
EZ
2298 Update dependencies in Makefile.in.
2299
2300 * Makefile.in (alloc.o): Depend on termhooks.h.
2301 (atimer.o): Depend on blockinput.h.
2302 (buffer.o): Depend on indent.h, keyboard.h, coding.h, keymap.h,
2303 and frame.h.
2304 (callint.o): Depend on systime.h, coding.h, and composite.h.
2305 (callproc.o): Depend on buffer.h.
2306 (casefiddle.o): Don't depend on charset.h.
2307 (casetab.o): Depend on character.h.
2308 (ccl.o): Depend on composite.h.
2309 (chartab.o): Depend on ccl.h.
2310 (cm.o): Depend on dispextern.h.
2311 (cmds.o): Depend on systime.h, coding.h, frame.h, and composite.h.
2312 (coding.o): Don't depend on $(INTERVALS_H).
2313 (composite.o): Don't depend on dispextern.h explicitly (it's in
2314 $(INTERVALS_H)). Depend on ccl.h.
2315 (data.o): Depend on systime.h, coding.h, composite.h,
2316 dispextern.h, font.h, and ccl.h.
2317 (dired.o): Depend on composite.h.
2318 (dispnew.o): Depend on coding.h. Don't depend explicitly on
2319 composite.h (it's in $(INTERVALS_H)).
2320 (doc.o): Depend on systime.h, coding.h, and composite.h.
2321 (editfns.o): Don't depend explicitly on dispextern.h.
2322 (emacs.o): Depend on frame.h and coding.h.
2323 (eval.o): Depend on coding.h, composite.h, and xterm.h.
2324 (fileio.o): Depend on frame.h and commands.h. Don't depend
2325 explicitly on dispextern.h.
2326 (filelock.o): Don't depend on epaths.h and charset.h. Depend on
2327 composite.h.
2328 (fns.o): Don't depend on termhooks.h.
2329 (font.o): Depend on buffer.h, composite.h, fontset.h, and xterm.h.
2330 (fontset.o): Depend on blockinput.h, atimer.h, systime.h,
2331 coding.h, $(INTERVALS_H), window.h, xterm.h.
2332 (frame.o): Depend on coding.h, composite.h, termhooks.h, and ccl.h.
2333 (fringe.o): Depend on blockinput.h, atimer.h, and systime.h.
2334 (ftfont.o): Depend on blockinput.h, atimer.h, systime.h, coding.h,
2335 fontset.h, ccl.h, and ftfont.h.
2336 (ftxfont.o): Depend on atimer.h, systime.h, fontset.h, and ccl.h.
2337 (gtkutil.o): Depend on dispextern.h and composite.h.
2338 (image.o): Depend on epaths.h, character.h, coding.h, composite.h,
2339 termhooks.h, and ccl.h.
2340 (indent.o): Depend on systime.h, coding.h, and $(INTERVALS_H).
2341 (intervals.o): Depend on systime.h and coding.h.
2342 (keyboard.o): Depend on composite.h and coding.h.
2343 (keymap.o): Depend on coding.h and frame.h.
2344 (lread.o): Depend on systime.h, frame.h, blockinput.h, and atimer.h.
2345 (macros.o): Depend on systime.h, coding.h, and composite.h.
2346 (menu.o): Depend on systime.h, coding.h, composite.h, window.h,
2347 and atimer.h.
2348 (minibuf.o): Depend on systime.h and coding.h. Don't depend on
2349 dispextern.h explicitly.
0b5397c2
SM
2350 (print.o): Depend on termhooks.h, coding.h, and ccl.h.
2351 Don't depend explicitly on dispextern.h and composite.h.
3f670e9a
EZ
2352 (process.o): Depend on character.h, xgselect.h, and sysselect.h.
2353 (regex.o): Don't depend on charset.h.
2354 (scroll.o): Depend on systime.h, coding.h, composite.h, and window.h.
2355 (search.o): Don't depend explicitly on composite.h.
2356 (sound.o): Depend on atimer.h and systime.h.
2357 (syntax.o): Don't depend explicitly on composite.h.
2358 (sysdep.o): Depend on coding.h and composite.h.
2359 (term.o): Depend on xterm.h and buffer.h.
2360 (terminal.o): Depend on dispextern.h, composite.h, and systime.h.
2361 (textprop.o): Don't depend on dispextern.h explicitly.
2362 (undo.o): Depend on dispextern.h.
2363 (window.o): Depend on coding.h and termhooks.h. Don't depend on
2364 dispextern.h and composite.h explicitly.
2365 (xdisp.o): Depend on ccl.h.
2366 (xfaces.o): Depend on coding.h and ccl.h.
2367 (xfns.o): Depend on $(INTERVALS_H) and ccl.h.
2368 (xfont.o): Depend on atimer.h, systime.h, fontset.h, and ccl.h.
2369 (xftfont.o): Depend on atimer.h, systime.h, fontset.h, ccl.h, and
2370 ftfont.h.
2371 (xgselect.o): New dependency.
2372 (xmenu.o): Depend on composite.h, keymap.h, and sysselect.h.
2373 (xselect.o): Depend on keyboard.h, coding.h, and composite.h.
2374 (xsettings.o): Depend on dispextern.h, keyboard.h, systime.h,
2375 coding.h, composite.h, blockinput.h, atimer.h, and termopts.h.
2376 (xsmfns.o): Depend on frame.h and dispextern.h.
2377 (xterm.o): Depend on intervals.h, keymap.h, xgselect.h, and
2378 sysselect.h.
2379
7a6f7fea
AS
23802009-12-19 Andreas Schwab <schwab@linux-m68k.org>
2381
2382 * font.c (Fclear_font_cache): Pass correct cache argument to
2383 font_clear_cache.
2384
f4c21026
AS
23852009-12-16 Andreas Schwab <schwab@linux-m68k.org>
2386
2387 * Makefile.in (prefix-args${EXEEXT}): Don't compile prefix-args.c
2388 twice.
2389
f7ab0997
CY
23902009-12-15 Chong Yidong <cyd@stupidchicken.com>
2391
2392 * xdisp.c (decode_mode_spec): Inhibit garbage collection when
2393 calling file-remote-p. Reported by Jim Meyering.
2394
fa8e045a
MA
23952009-12-15 Michael Albinus <michael.albinus@gmx.de>
2396
2397 * dbusbind.c (xd_retrieve_arg): Reorder declarations in order to
777013f2 2398 avoid compiler warnings. (Bug #5217)
fa8e045a 2399
a63dba42
KH
24002009-12-14 Kenichi Handa <handa@m17n.org>
2401
2402 * coding.c (decode_coding_iso_2022): Ignore ISO_CODE_SS2_7 (0x19)
2403 in 8-bit encoding.
2404
5ce6e4f4 24052009-12-13 Pat Thoyts <patthoyts@users.sourceforge.net> (tiny change)
36acb2a7
JD
2406
2407 * xfns.c (x_create_tip_frame): Set the extended window manager hint for
2408 tooltip windows.
2409
223e5fc6
JD
24102009-12-13 Jan Djärv <jan.h.d@swipnet.se>
2411
36acb2a7
JD
2412 * xterm.h (struct x_display_info): Add Xatom_net_window_type_tooltip and
2413 Xatom_net_window_type.
2414
2415 * xterm.c (x_term_init): Initialize Xatom_net_window_type_tooltip and
2416 Xatom_net_window_type.
2417
b8f00677
JD
2418 * xterm.c (my_log_handler): New function.
2419 (x_term_init): Set my_log_handler as log handler during gtk_init
5ce6e4f4 2420 so we can filter out buggy messages. (Bug #5120).
b8f00677 2421
e5f0bc9a
JD
2422 * xterm.c (xg_scroll_callback): Parameter list changed,
2423 use parameter GtkScrollType to determine scroll/line/page.
2424 Only allow dragging if a button < 4 is grabbed (bug #5177).
2425 (xg_end_scroll_callback): New function.
2426 (x_create_toolkit_scroll_bar): Pass xg_end_scroll_callback to
2427 xg_create_scroll_bar.
2428
2429 * gtkutil.c (xg_gtk_scroll_destroy): Remove XG_LAST_SB_DATA handling.
2430 (scroll_end_callback): Remove.
2431 (xg_create_scroll_bar): Add parameter end_callback, bind it to
2432 button-release-event. Replace value-changed event with change-value,
2433 bug #5177,
2434 (xg_event_is_for_scrollbar): Only return true if button is less than 4,
2435 bug #5177.
2436
2437 * gtkutil.h (XG_LAST_SB_DATA): Remove.
2438 (xg_create_scroll_bar): Add GCallback end_callback.
2439
223e5fc6
JD
2440 * xftfont.c (QClcdfilter): New variable.
2441 (xftfont_open): Parse constant names for RGBA, HINT_STYLE and LCDFILTER.
2442 (syms_of_xftfont): Initialize QClcdfilter.
2443
3c055b77
JD
24442009-12-12 Jan Djärv <jan.h.d@swipnet.se>
2445
2446 * xsettings.c (struct xsettings): Add member seen.
2447 (parse_xft_settings): Update member seen with what we have read.
ba68c0b0 2448 Return non-zero if Xft-settings have been parsed, 0 otherwise.
3c055b77
JD
2449 (apply_xft_settings): Only update Xft settings with what member seen
2450 indicates as new.
2451
05fe33ff
EZ
24522009-12-12 Eli Zaretskii <eliz@gnu.org>
2453
2454 * dispextern.h (struct text_pos): Use EMACS_INT;
2455 (struct glyph): Use EMACS_INT for charpos.
2456 (struct it): Use EMACS_INT for stop_charpos, end_charpos,
2457 region_beg_charpos, region_end_charpos,
2458 redisplay_end_trigger_charpos, and also for
2459 iterator_stack_entry.end_charpos and
2460 iterator_stack_entry.stop_charpos.
2461
e8d7886a
JD
24622009-12-12 Jan Djärv <jan.h.d@swipnet.se>
2463
5ce6e4f4 2464 * gtkutil.c (scroll_end_callback): New function (bug #5177).
e8d7886a
JD
2465 (xg_create_scroll_bar): Call scroll_end_callback on button release
2466 event (bug #5177).
2467 (xg_event_is_for_scrollbar): != replaced with ==.
2468
d0db2ec8
KH
24692009-12-12 Kenichi Handa <handa@m17n.org>
2470
2471 * ftfont.c (struct ftfont_info): New member matrix.
2472 (ftfont_open): Setup xftfont_info->matrix.
2473 (MFLTFontFT): New member matrix.
2474 (FLOOR, CEIL, ROUND): New macros.
2475 (ftfont_get_metrics): Handle matrix transformation.
2476 (ftfont_shape_by_flt): New arg matrix. Callers changed.
2477
2478 * xftfont.c (struct xftfont_info): New member matrix.
2479 (xftfont_open): Setup xftfont_info->matrix.
2480
24812009-12-10 Kenichi Handa <handa@m17n.org>
2482
2483 * xdisp.c (append_space_for_newline): Consider face-remapping.
2484
2cc7b62f
AS
24852009-12-09 Andreas Schwab <schwab@linux-m68k.org>
2486
b87dd913
AS
2487 * xsettings.c: Include "keyboard.h".
2488
eba5eb94
AS
2489 * gtkutil.c (xg_tool_bar_proxy_help_callback): Fix missing return.
2490
2cc7b62f
AS
2491 Fix implicit function declarations.
2492 * cmds.c: Include "frame.h".
2493 * frame.c: Include "font.h" also if !HAVE_WINDOW_SYSTEM.
2494 * frame.h: Move declaration of delete_frame outside of
2495 HAVE_WINDOW_SYSTEM.
2496
a4ef73c8
CY
24972009-12-09 Ken Brown <kbrown@cornell.edu> (tiny change)
2498
2499 * s/cygwin.h (G_SLICE_ALWAYS_MALLOC): New variable.
2500
2501 * emacs.c (main): Set the G_SLICE environment variable for Cygwin
2502 GTK builds.
2503
944a300c
AS
25042009-12-07 Andreas Schwab <schwab@linux-m68k.org>
2505
2506 * unexelf.c (unexec): Don't search for .data twice.
2507
022eef62
CY
25082009-12-05 Chong Yidong <cyd@stupidchicken.com>
2509
426ac949
CY
2510 * xdisp.c (push_display_prop): Don't set avoid_cursor_p. Return 0
2511 if push failed.
2512 (handle_line_prefix): Set avoid_cursor_p here. Check return value
2513 of push_display_prop (Bug#5000).
2514
022eef62
CY
2515 * xfaces.c (Fx_family_fonts): Handle 2009-07-14 change to return
2516 value of font_list_entities (Bug#5085).
2517
be95bee9
JB
25182009-12-04 Juanma Barranquero <lekktu@gmail.com>
2519
2520 Fix `string-to-number' to deal consistently with integers and floats.
2521 * lread.c (isfloat_string): New argument ignore_trailing to accept all
2522 trailing characters, not just whitespace.
2523 (read1): Pass new arg 0 to keep old behavior.
2524 * data.c (Fstring_to_number): Pass 1 to isfloat_string to ignore
2525 trailing chars, as it is already done for integers. Doc fixes.
2526 * lisp.h (isfloat_string): Add new arg to declaration of isfloat_string.
2527
24c2d7ce
EZ
25282009-12-04 Eli Zaretskii <eliz@gnu.org>
2529
0b5397c2
SM
2530 * dispextern.h (enum prop_idx) <AUTO_COMPOSED_PROP_IDX>:
2531 Delete unused enumeration value.
24c2d7ce 2532
7e694795
EZ
25332009-12-03 Eli Zaretskii <eliz@gnu.org>
2534
2535 * Makefile.in (lisp, shortlisp): Replace indian.el with indian.elc.
2536
84b31826
SM
25372009-12-03 Daniel Hackney <dan@haxney.org> (tiny change)
2538
2539 * process.c (Fmake_network_process): Fix up the tests for
2540 "connectionless socket", so they DTRT for seqpacket sockets as well.
2541
f00c449b
SM
25422009-12-03 Stefan Monnier <monnier@iro.umontreal.ca>
2543
2544 * process.c (Qseqpacket): New symbol.
2545 (HAVE_SEQPACKET): New macro.
2546 (Fmake_network_process): Accept new :type `seqpacket'.
2547 (init_process): Add `seqpacket' feature when applicable.
2548 (syms_of_process): Initialize Qseqpacket.
2549
8096a0ff
YM
25502009-12-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2551
2552 * font.c (font_load_for_lface, font_open_by_name): Don't store name
2553 if entity is Qnil.
2554
3e0de07f
SM
25552009-11-30 Stefan Monnier <monnier@iro.umontreal.ca>
2556
2557 * print.c (print_preprocess): Preprocess the key_and_value table of
2558 hashtables, even tho they're "hidden" (bug#5082).
2559
abeafb2a
JD
25602009-11-29 Jan Djärv <jan.h.d@swipnet.se>
2561
2562 * frame.c (frame_make_pointer_invisible)
2563 (frame_make_pointer_visible): Declare f before statements.
2564
4bf47195
EZ
25652009-11-28 Eli Zaretskii <eliz@gnu.org>
2566
2567 * Makefile.in [!AUTO_DEPEND]: Remove outdated comment about
2568 omitted dependencies on lisp.h.
2569
c525b3f2
JD
25702009-11-27 Jan Djärv <jan.h.d@swipnet.se>
2571
ece2d4ed
JD
2572 * xftfont.c (xftfont_end_for_frame): Just return if dpyinfo->display
2573 is NULL.
2574
2575 * xterm.c (x_delete_terminal): Set dpyinfo->display to NULL.
2576
2577 * frame.c (frame_make_pointer_invisible)
3e0de07f 2578 (frame_make_pointer_visible): Just return if there isn't any selected
ece2d4ed
JD
2579 frame.
2580
c525b3f2
JD
2581 * search.c (simple_search): Remove warning by making *p const.
2582
2f00e299
DN
25832009-11-26 Dan Nicolaescu <dann@ics.uci.edu>
2584
2585 * xdisp.c (power_letter): Remove duplicate const.
2586
084b049b
JD
25872009-11-25 Jan Djärv <jan.h.d@swipnet.se>
2588
a1fadc6f
JD
2589 * term.c (delete_tty): Remove check for last terminal (bug#4970).
2590
5ce6e4f4 2591 * xsettings.c: Revert changes from 2009-11-23. Just use Xft
084b049b
JD
2592 defaults (bug #5025).
2593
28259cac
SM
25942009-11-24 Stefan Monnier <monnier@iro.umontreal.ca>
2595
2596 * insdel.c (adjust_markers_for_delete): Move it in the
2597 right direction! (bug#4803)
2598
e8e14166
YM
25992009-11-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2600
2601 * font.c (font_open_entity): Don't use ASET if font_object is Qnil.
2602
2603 * xterm.c (x_new_font): Update f->scroll_bar_actual_width.
2604
86677b58
GM
26052009-11-24 Glenn Morris <rgm@gnu.org>
2606
2607 * frame.c (focus-follows-mouse): Mention mouse-autoselect-window.
2608
581e51e8
JD
26092009-11-23 Jan Djärv <jan.h.d@swipnet.se>
2610
cfc86c7a
JD
2611 * Makefile.in: Must create deps for ecrt0.o in its rule.
2612
581e51e8
JD
2613 * xfns.c (Fx_select_font): Try to convert Fontconfig name to Gtk name
2614 because that is what Gtk+ font dialog understands.
2615
2616 * font.c (font_make_object, Fcopy_font_spec): Use Fcopy_alist instead
2617 of Fcopy_sequence.
2618 (font_open_by_name): Put name given into QCname for font-object returned.
2619
2620 * frame.c (x_set_font): Save original font name as frame parameter
2621 font-parameter.
2622
2623 * xsettings.c (set_default_xft_settings): New function.
2624 (init_xfd_settings): Call set_default_xft_settings if no XSETTINGS window
2625 is found.
2626
8b264ecb
AS
26272009-11-22 Andreas Schwab <schwab@linux-m68k.org>
2628
2629 * search.c (simple_search): Avoid CHAR_TO_BYTE in inner loop when
2630 searching backwards through multibyte buffer.
2631
872870b2
JD
26322009-11-21 Jan Djärv <jan.h.d@swipnet.se>
2633
2634 * xterm.c: #include xgselect.h.
2635 (x_initialize): Call xgselect_initialize.
2636
2637 * xsettings.c (something_changedCB): C++ comments => C comments.
2638 (init_gconf): Do not deal with any GLib file descriptors, xg_select
2639 does that now.
2640
2641 * gtkutil.c (xg_timer, xg_process_timeouts, xg_start_timer)
2642 (xg_stop_timer, menu_grab_callback_cnt, menu_grab_callback)
2643 (scroll_bar_button_cb): Remove.
5ce6e4f4 2644 (create_menus): C++ comments => C comments. Don't bind grab-notify
872870b2
JD
2645 event.
2646 (xg_create_scroll_bar): Don't bind button-press-event and
2647 button-release-event.
2648
2649 * process.c: Include xgselect.h if defined (USE_GTK) ||
2650 defined (HAVE_GCONF).
2651 (wait_reading_process_output): Call xg_select for the same condition.
2652
2653 * xgselect.c (xg_select): New function to better integrate with
2654 GLib/Gtk event handling. Needed if GConf daemon dies/restarts.
2655
2656 * xgselect.h: New file, declare xg_select, xgselect_initialize.
2657
2658 * Makefile.in (XOBJ): Add xgselect.o.
2659
62a6e103
AS
26602009-11-21 Andreas Schwab <schwab@linux-m68k.org>
2661
0b5397c2
SM
2662 * character.h (STRING_CHAR, STRING_CHAR_AND_LENGTH):
2663 Remove ignored second argument. All callers changed.
62a6e103
AS
2664 * regex.c (STRING_CHAR, STRING_CHAR_AND_LENGTH, RE_STRING_CHAR)
2665 (RE_STRING_CHAR_AND_LENGTH): Likewise.
2666 * xdisp.c (string_char_and_length): Likewise.
2667
b0ca0f33
DN
26682009-11-21 Dan Nicolaescu <dann@ics.uci.edu>
2669
2670 * xterm.c (x_new_font):
2671 * print.c (print_object):
2672 * cmds.c (Fself_insert_command): Move declarations before statements.
2673
dd5a6279
CY
26742009-11-20 Ken Brown <kbrown@cornell.edu> (tiny change)
2675
2676 * s/cygwin.h: Remove unneeded linker flags.
2677
4a8e097d
JD
26782009-11-20 Jan Djärv <jan.h.d@swipnet.se>
2679
0d1d0d26
JD
2680 * xfns.c (x_default_font_parameter): Call xsettings_get_system_font.
2681
2682 * xsettings.h: Declare xsettings_get_system_font.
2683
2684 * xsettings.c (xsettings_get_system_font): New function.
2685 (init_gconf): No use initiating gconf unless we have Xft also.
2686 (syms_of_xsettings): Only provide system-font-setting if HAVE_XFT and
2687 HAVE_GCONF.
2688
4a8e097d
JD
2689 * gtkutil.c (xg_modify_menubar_widgets): If menubar is totally empty
2690 add a blank entry so it doesn't collapse into nothing.
2691
8ab1650e
SM
26922009-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
2693
2694 * lread.c (Funintern): Comment out last change.
2695
82c602f0
RS
26962009-11-19 Richard Stallman <rms@gnu.org>
2697
2698 * lread.c (Funintern): Error if symbol is t or nil.
2699
87e32266
SM
27002009-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
2701
2702 * insdel.c (make_gap_larger): Don't make as many assumptions about the
2703 representation of Lisp integers.
2704 Reported by MJ Chan <mjchan.inbox@gmail.com>.
2705
1b9ac145
AS
27062009-11-17 Andreas Schwab <schwab@linux-m68k.org>
2707
2708 * lisp.h: Remove declaration of Ffont_get_system_font.
2709 * xfns.c: Move include of "xsettings.h".
2710 * xsettings.h: Use EXFUN to declare Ffont_get_system_font.
2711
dfb3c4c6
JD
27122009-11-17 Jan Djärv <jan.h.d@swipnet.se>
2713
87e32266
SM
2714 * xsettings.c (something_changedCB, Ffont_get_system_font):
2715 Check use_system_font.
dfb3c4c6
JD
2716 (syms_of_xsettings): DEFVAR font-use-system-font.
2717
9370c1d8
AS
27182009-11-17 Andreas Schwab <schwab@linux-m68k.org>
2719
25fe851a
AS
2720 * xfns.c (x_default_font_parameter): Remove dead assignment.
2721
9370c1d8
AS
2722 * lisp.h (Fbyteorder, init_font, Ffont_get_system_font): Declare.
2723
637fa988
JD
27242009-11-17 Jan Djärv <jan.h.d@swipnet.se>
2725
87e32266 2726 * xftfont.c (xftfont_fix_match): Older versions of fontconfig do
21050de1 2727 not have FC_LCD_*. #define them if not there.
a6eb20d8 2728
87e32266 2729 * xsettings.c (parse_xft_settings, apply_xft_settings): Ditto.
a6eb20d8 2730
637fa988
JD
2731 * xterm.h (struct x_display_info): Add atoms and Window for xsettings.
2732
2733 * xterm.c (handle_one_xevent): Call xft_settings_event for
2734 ClientMessage, PropertyNotify and DestroyNotify.
2735 (x_term_init): If we have XFT, get DPI from Xft.dpi.
2736 Call xsettings_initialize.
2737
2738 * xftfont.c (xftfont_fix_match): New function.
2739 (xftfont_open): Call XftDefaultSubstitute before XftFontMatch.
2740 Call xftfont_fix_match after XftFontMatch.
2741
2742 * xfont.c (xfont_driver): Initialize all members.
2743
87e32266
SM
2744 * xfns.c (x_default_font_parameter):
2745 Try font from Ffont_get_system_font.
637fa988
JD
2746 Do not get font from x_default_parameter if we got one from
2747 Ffont_get_system_font.
87e32266 2748 (Fx_select_font): Get the defaut font name from :name of FRAME_FONT(f).
637fa988
JD
2749
2750 * w32font.c (w32font_driver): Initialize all members.
2751
2752 * termhooks.h (enum event_kind): CONFIG_CHANGED_EVENT is new.
2753
2754 * lisp.h: Declare syms_of_xsettings.
2755
87e32266
SM
2756 * keyboard.c (kbd_buffer_get_event, make_lispy_event):
2757 Handle CONFIG_CHANGED_EVENT.
637fa988
JD
2758
2759 * ftfont.c (ftfont_filter_properties): New function.
2760
2761 * frame.c (x_set_font): Remove unused variable lval.
2762
87e32266 2763 * font.h (struct font_driver): Add filter_properties.
637fa988
JD
2764
2765 * font.c (font_put_extra): Don't return if val is nil, it means
2766 boolean option is off.
2767 (font_parse_fcname): Collect all extra properties in extra_props
2768 and call filter_properties for all drivers with extra_props and
2769 font as parameter.
87e32266
SM
2770 (font_open_entity): Do not use cache, it does not pick up new
2771 fontconfig settings like hinting.
637fa988
JD
2772 (font_load_for_lface): If spec had a name in it, store it in entity.
2773
2774 * emacs.c (main): Call syms_of_xsettings
2775
2776 * config.in: HAVE_GCONF is new.
2777
2778 * Makefile.in (GCONF_CFLAGS, GCONF_LIBS): New variables for HAVE_GCONF.
2779 xsettings.o is new.
2780
5a942932
KH
27812009-11-17 Kenichi Handa <handa@m17n.org>
2782
2783 * xdisp.c (x_produce_glyphs): Consider face-remapping when falling
2784 back to the default font in case that no suitable font is found.
2785
b7c7a4d1
SM
27862009-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
2787
2788 * menu.c (Fx_popup_menu) [HAVE_NS]: Use generic code for window edge.
2789 Suggested by Chad Brown <yandros@mit.edu>.
2790 (push_menu_item): Use MENU_ITEMS_ITEM_* names.
2791
072f1e39
JD
27922009-11-16 Jan Djärv <jan.h.d@swipnet.se>
2793
2794 * xmenu.c (x_menu_wait_for_event): Call XFlush before select.
2795
5d1e70a2
AS
27962009-11-14 Andreas Schwab <schwab@linux-m68k.org>
2797
87e32266 2798 * Makefile.in: Ignore errors from mkdir when creating deps directory.
5d1e70a2 2799
a53cfbe5
JD
28002009-11-14 Jan Djärv <jan.h.d@swipnet.se>
2801
473a99b7
JD
2802 * gtkutil.c (xg_update_frame_menubar): Do nothing if menubar already
2803 has a parent.
2804
a53cfbe5 2805 * Makefile.in: If AUTO_DEPEND is defined, make gcc generate
5ce6e4f4 2806 dependency files in deps/. Include those files into Makefile.
a53cfbe5
JD
2807
2808 * config.in: Generated (AUTO_DEPEND).
2809
f04bb9b2
MA
28102009-11-13 Michael Albinus <michael.albinus@gmx.de>
2811
b7c7a4d1 2812 * dbusbind.c (Vdbus_registered_objects_table): Rename from
f04bb9b2
MA
2813 Vdbus_registered_functions_table, because it contains also
2814 properties. Fix docstring.
b7c7a4d1 2815 (Fdbus_call_method, Fdbus_call_method_asynchronously): Fix docstring.
f04bb9b2 2816
8f11f7ec
SM
28172009-11-13 Stefan Monnier <monnier@iro.umontreal.ca>
2818
2819 * alloc.c (mark_object): Don't reprocess marked strings.
2820 Check vector's markbit earlier. Adjust calls to mark_vectorlike.
2821 (mark_vectorlike, mark_char_table): Assume the object is unmarked.
2822
8a605fe8
KH
28232009-11-13 Kenichi Handa <handa@m17n.org>
2824
8f11f7ec 2825 * category.c (word_boundary_p): Adjust for the change of the
8a605fe8
KH
2826 semantics of Vword_combining_categories.
2827 (Vword_combining_categories): Describe the slight change of the
2828 semantics.
2829
241c4680
EZ
28302009-11-13 Eli Zaretskii <eliz@gnu.org>
2831
2832 * menu.c (Fx_popup_menu): Call Fx_hide_tip only if HAVE_WINDOW_SYSTEM.
2833
2834 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Revert last change.
2835
5d58e44c
SM
28362009-11-12 Stefan Monnier <monnier@iro.umontreal.ca>
2837
2838 * xdisp.c (syms_of_xdisp): Fix typo in last change.
2839
5e13f9d3
JB
28402009-11-12 Juanma Barranquero <lekktu@gmail.com>
2841
2842 * makefile.w32-in: Update dependencies; add dependencies to lisp.h.
2843
cf54c754
DR
28442009-11-11 David Reitter <david.reitter@gmail.com>
2845
2846 * menu.c (Fx_popup_menu): Remove left-over debugging code and rename
2847 variables to fix 2009-11-09 change.
2848
a4ada374
DN
28492009-11-11 Dan Nicolaescu <dann@ics.uci.edu>
2850
91433552
DN
2851 * process.c (ifflag_def): Make flag_sym constant.
2852 (Fnetwork_interface_info): Use a constant pointer.
2853 (ifflag_table):
2854 * xfns.c (cursor_bits):
2855 * xdisp.c (power_letter):
2856 * termcap.c (speeds, esctab):
2857 * sysdep.c (baud_convert):
2858 * keyboard.c (lispy_accent_codes, modifier_names):
2859 * image.c (xbm_format, xpm_format, pbm_format, png_format)
2860 (jpeg_format, tiff_format, gif_format, svg_format)
2861 (interlace_start, interlace_increment, gs_format):
2862 * gtkutil.c (separator_names):
2863 * fringe.c (swap_nibble):
2864 * fns.c (base64_value_to_char, base64_char_to_value):
2865 * fileio.c (make_temp_name_tbl):
2866 * coding.c (suffixes): Make constant.
2867
f4265f6c
DN
2868 * frame.c (make_initial_frame):
2869 * buffer.c (init_buffer_once): Use make_pure_c_string instead of
2870 build_string.
2871 * alloc.c (syms_of_alloc): Build Vmemory_signal_data in pure memory.
2872
04420943
DN
2873 * s/freebsd.h:
2874 * s/netbsd.h: Remove code referring to non-existent file: unexsunos4.o.
2875
0a5d24ae
DN
2876 * Makefile.in: Add dependencies to lisp.h. Remove dependencies
2877 for non-existent files: unexmips.c, unexnext.c, abbrev.c, malloc.c.
2878
a4ada374
DN
2879 * xfns.c (syms_of_xfns): Use make_pure_string instead of build_string.
2880 * xterm.c (syms_of_xterm):
2881 * xfaces.c (syms_of_xfaces):
2882 * xdisp.c (syms_of_xdisp):
2883 * lread.c (syms_of_lread):
2884 * keyboard.c (syms_of_keyboard): Use make_pure_c_string instead of
2885 build_string.
91433552 2886
a4ada374
DN
2887 * doc.c (Fsnarf_documentation): Purecopy Vbuild_files.
2888
af98fc7f
SM
28892009-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
2890
8ab1650e 2891 * fns.c (Fplist_get): Merge the active and the commented out code.
af98fc7f 2892
e90292a9
JD
28932009-11-10 Jan Djärv <jan.h.d@swipnet.se>
2894
2895 * keyboard.h: Declare timer_check.
2896
2897 * keyboard.c (timer_check_2): New function that does what the old
2898 timer_check did.
2899 (timer_check): Call timer_check_2 until -1 or a non-zero time is
2900 returned, i.e. don't return -1 with timers pending.
2901
2902 * process.c: Remove extern declaration of timer_check.
2903
2904 * xmenu.c (x_menu_wait_for_event): Remove code that did a timeout
2905 even if timer_check returned -1.
2906
af98fc7f
SM
2907 * gtkutil.c (xg_dialog_response_cb): Data is now a struct
2908 xg_dialog_data.
e90292a9
JD
2909 (pop_down_dialog): Destroy widget (if any), cancel timer and unref
2910 the event loop.
2911 (xg_maybe_add_timer, xg_dialog_run): New functions (bug #4574).
2912 (xg_get_file_name, xg_get_font_name): Call xg_dialog_run (bug #4574).
2913 Destroy the dialog after xg_dialog_run.
2914
045b83c0
SM
29152009-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
2916
2917 * menu.c (Fx_popup_menu) [HAVE_NS]: Remove unused vars.
2918
1fb99a3a
JD
29192009-11-10 Jan Djärv <jan.h.d@swipnet.se>
2920
2921 * xmenu.c (xmenu_show): Must not be static after 2009-11-09 changes.
2922
04e452cb
JB
29232009-11-09 Juanma Barranquero <lekktu@gmail.com>
2924
2925 * menu.c [HAVE_NTGUI]: Declare current_popup_menu.
2926
ef7417fd
SM
29272009-11-09 Stefan Monnier <monnier@iro.umontreal.ca>
2928
2929 * menu.c (Fx_popup_menu): Consolidate versions from xmenu.c,
2930 w32menu.c, and nsmenu.m.
2931 Simplify the obsolete case where position is nil.
2932 (cleanup_popup_menu): New function, moved from nsmenu.m.
2933 (struct skp): Remove slot `notreal'.
2934 (single_keymap_panes, keymap_panes): Remove arg `notreal' and
2935 adjust callers.
2936 (single_menu_item): Adjust call to parse_menu_item.
2937 (syms_of_menu): Defsubr x-popup-menu.
2938 * menu.h (Vmenu_updating_frame): Consolidate declarations from *menu.c.
2939 (keymap_panes): Don't export any more.
2940 (mouse_position_for_popup, w32_menu_show, ns_menu_show)
2941 (xmenu_show): Declare.
2942 * keyboard.c (parse_menu_item): Remove arg `notreal'.
2943 (menu_bar_item, read_char_minibuf_menu_prompt): Adjust callers.
2944 * keyboard.h (parse_menu_item): Update declaration.
2945 * xmenu.c (Fx_popup_menu): Remove.
2946 (syms_of_xmenu): Don't defsubr x-popup-menu.
2947 * w32menu.c (Fx_popup_menu): Remove.
2948 (syms_of_w32menu): Don't defsubr x-popup-menu.
2949 * nsmenu.m (cleanup_popup_menu): Remove.
2950 (ns_menu_show): Rename from ns_popup_menu and remove all the code
2951 moved to menu.c's Fx_popup_menu.
2952 (Fx_popup_menu): Remove.
2953 (syms_of_nsmenu): Don't defsubr x-popup-menu, and don't initialize
2954 menu_items (it's done in menu.c already).
2955
424d6179
SM
29562009-11-08 Stefan Monnier <monnier@iro.umontreal.ca>
2957
2958 * keyboard.c (parse_menu_item): Handle `notreal' a bit earlier.
2959 Use `tem' less. Make sure KEYEQ holds a string or nil (bug#4879).
2960
c0df13a6 29612009-11-08 Chong Yidong <cyd@stupidchicken.com>
a20903d0
CY
2962
2963 * xmenu.c (Fx_popup_menu): Extract event timestamp. Pass it to
c0df13a6 2964 xmenu_show. Hide any tooltip before opening a menu.
a20903d0
CY
2965 (xmenu_show): New arg. Pass it to create_and_show_popup_menu.
2966 (create_and_show_popup_menu): New arg. Pass it to gtk_menu_popup.
2967
2de9f71c
SM
29682009-11-06 Stefan Monnier <monnier@iro.umontreal.ca>
2969
2970 Let integers use up 2 tags to give them one extra bit and thus double
2971 their range.
2972 * lisp.h (USE_2_TAGS_FOR_INTS): New macro.
2973 (LISP_INT_TAG, case_Lisp_Int, LISP_STRING_TAG, LISP_INT_TAG_P):
2974 New macros.
2975 (enum Lisp_Type): Use them. Give explicit values.
2976 (Lisp_Type_Limit): Remove.
2977 (XINT, XUINT, make_number) [!USE_LISP_UNION_TYPE]:
2978 (MOST_NEGATIVE_FIXNUM, MOST_POSITIVE_FIXNUM, INTMASK):
2979 Pay attention to USE_2_TAGS_FOR_INTS.
2980 (INTEGERP): Use LISP_INT_TAG_P.
2981 * fns.c (internal_equal): Simplify the default case.
2982 (sxhash): Use case_Lisp_Int.
2983 * data.c (wrong_type_argument): Don't check against Lisp_Type_Limit
2984 any more.
2985 (Ftype_of): Use case_Lisp_Int.
2986 (store_symval_forwarding): Take into account the fact that Ints can
2987 now have more than one tag.
2988 * buffer.c (syms_of_buffer): Use LISP_INT_TAG.
2989 buffer_slot_type_mismatch):
2990 * xfaces.c (face_attr_equal_p):
2991 * print.c (print_object):
2992 * alloc.c (mark_maybe_object, mark_object, survives_gc_p):
2993 Use case_Lisp_Int.
2994
323637a2
EZ
29952009-11-06 Eli Zaretskii <eliz@gnu.org>
2996
7ac65b38
EZ
2997 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce by further 30K.
2998
323637a2
EZ
2999 * alloc.c (make_pure_c_string): Fix last change to avoid compiler
3000 warning.
3001
e511451f
JD
30022009-11-06 Jan Djärv <jan.h.d@swipnet.se>
3003
3004 * gtkutil.c (xg_event_is_for_scrollbar): New function (bug#4870).
3005
3006 * gtkutil.h: Declare xg_event_is_for_scrollbar (bug#4870).
3007
3008 * xterm.c (handle_one_xevent): Call xg_event_is_for_scrollbar for
3009 ButtonPressRelease and MotionNotify (bug#4870).
3010
5e2327cf
DN
30112009-11-06 Dan Nicolaescu <dann@ics.uci.edu>
3012
5adc433e
DN
3013 * keymap.c (syms_of_keymap): Construct exclude_keys in pure memory.
3014
d67b4f80
DN
3015 * xterm.c (syms_of_xterm):
3016 * xselect.c (syms_of_xselect):
3017 * xmenu.c (syms_of_xmenu):
3018 * xfns.c (syms_of_xfns):
3019 * xfaces.c (syms_of_xfaces):
3020 * xdisp.c (syms_of_xdisp):
3021 * window.c (syms_of_window):
3022 * w32fns.c (syms_of_w32fns):
3023 * undo.c (syms_of_undo):
3024 * textprop.c (syms_of_textprop):
3025 * terminal.c (syms_of_terminal):
3026 * syntax.c (syms_of_syntax):
3027 * sound.c (syms_of_sound):
3028 * search.c (syms_of_search):
3029 * print.c (syms_of_print):
3030 * minibuf.c (syms_of_minibuf):
3031 * macros.c (syms_of_macros):
3032 * keymap.c (syms_of_keymap, initial_define_key)
3033 (initial_define_lispy_key):
3034 * keyboard.c (syms_of_keyboard):
3035 * insdel.c (syms_of_insdel):
3036 * image.c (syms_of_image):
3037 * fringe.c (syms_of_fringe):
3038 * frame.c (syms_of_frame):
3039 * fontset.c (syms_of_fontset):
3040 * fns.c (syms_of_fns):
3041 * fns.c (syms_of_fns):
3042 * fileio.c (syms_of_fileio):
3043 * fileio.c (syms_of_fileio):
3044 * eval.c (syms_of_eval):
3045 * doc.c (syms_of_doc):
3046 * dispnew.c (syms_of_display):
3047 * dired.c (syms_of_dired):
3048 * dbusbind.c (syms_of_dbusbind):
3049 * data.c (syms_of_data):
3050 * composite.c (syms_of_composite):
3051 * coding.c (syms_of_coding):
3052 * cmds.c (syms_of_cmds):
3053 * charset.c (define_charset_internal, syms_of_character):
3054 * ccl.c (syms_of_ccl):
3055 * category.c (syms_of_category, init_category_once):
3056 * casetab.c (syms_of_casetab):
3057 * casefiddle.c (syms_of_casefiddle):
3058 * callint.c (syms_of_callint):
3059 * bytecode.c (syms_of_bytecode):
3060 * buffer.c (keys_of_buffer, syms_of_buffer):
3061 * alloc.c (syms_of_alloc):
3062 * process.c (syms_of_process, init_process):
3063 * lread.c (syms_of_lread, init_obarray):
3064 * font.c (build_style_table):
3065 * emacs.c (syms_of_emacs, main): Replace calls to intern with
3066 intern_c_string, calls to make_pure_string with
3067 make_pure_c_string. Use pure_cons instead of Fcons.
3068
5e2327cf
DN
3069 * process.c (socket_options): Make it const.
3070 (set_socket_option, init_process): Use a const pointer.
3071
3072 * lread.c (intern_c_string): New function.
3073 (defvar_kboard, defvar_lisp, defvar_lisp_nopro, defvar_bool)
3074 (defvar_int): Uset it. Make the name const char*.
3075
3076 * lisp.h (defvar_kboard, defvar_lisp, defvar_lisp_nopro, defvar_bool)
3077 (defvar_int): Update prototypes.
3078 (DEFUN, EXFUN): Support for prototypes is now required.
3079 (intern_c_string): New prototype.
3080 (struct Lisp_Subr): Make symbol_name constant.
3081
3082 * font.c (struct table_entry): Remove unused member. Make NAMES
3083 constant.
3084 (weight_table, slant_table, width_table): Make constant.
3085
3086 * emacs.c (struct standard_args): Make name and longname constant.
3087
3088 * character.h (DEFSYM): Use intern_c_string.
3089
a56eaaef
DN
30902009-11-06 Stefan Monnier <monnier@iro.umontreal.ca>
3091
3092 * alloc.c (make_pure_c_string): New function.
3093
3094 * eval.c (Fautoload): Purecopy all arguments.
3095
f6a07420
KH
30962009-11-05 Kenichi Handa <handa@m17n.org>
3097
3098 * fileio.c (Finsert_file_contents): Be sure set coding-system of
3099 the buffer in case of replace.
3100
5d28d4b1
DN
31012009-11-04 Dan Nicolaescu <dann@ics.uci.edu>
3102
3103 * puresize.h (BASE_PURESIZE): Increase to 1620000.
3104
b349d111
SM
31052009-11-03 Stefan Monnier <monnier@iro.umontreal.ca>
3106
d528b1ce
SM
3107 * editfns.c (save_restriction_restore): Update the (pt/begv/vz)_markers
3108 when applicable (bug#4851).
3109
b349d111
SM
3110 * lisp.h: Make USE_LSB_TAG work with USE_LISP_UNION_TYPE.
3111 (P_): Support for prototypes is now required.
3112
c38eb027
CY
31132009-10-31 Chong Yidong <cyd@stupidchicken.com>
3114
3115 * frame.c (Fmake_frame_invisible, Fframe_visible_p): Doc fix
3116 (Bug#4827).
3117
0405f8d9
EZ
31182009-10-30 Eli Zaretskii <eliz@gnu.org>
3119
d528b1ce 3120 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Redefine to waste less pure space.
0405f8d9 3121
ca0a881a
DN
31222009-10-30 Dan Nicolaescu <dann@ics.uci.edu>
3123
3124 * puresize.h (BASE_PURESIZE): Increase to 1470000.
3125
d528b1ce
SM
3126 * lread.c (Fload): Purecopy the file name when building
3127 Vpreloaded_file_list.
ca0a881a 3128
47e0e0e4
JR
31292009-10-29 Jason Rumney <jasonr@wanchan.jasonrumney.net>
3130
3131 * w32fns.c (syms_of_w32fns): Change default value of
3132 w32-scroll-lock-modifier to nil. (Bug#2827)
3133
057bce6f
JB
31342009-10-26 Juanma Barranquero <lekktu@gmail.com>
3135
782a943e 3136 * minibuf.c (Fall_completions): Fix typos in docstring.
057bce6f 3137
242bc74c
AS
31382009-10-26 Andreas Schwab <schwab@redhat.com>
3139
3140 * puresize.h (PURESIZE_RATIO): Increase back to 10/6.
3141
522d013a
JB
31422009-10-26 Juanma Barranquero <lekktu@gmail.com>
3143
3144 * window.c (grow_mini_window): Comment out "delta >= 0" assertion.
3145 For delta < 0, skip check that only makes sense when the mini-window
3146 is going to be enlarged. (Bug#4534)
3147
18060980
CY
31482009-10-25 Chong Yidong <cyd@stupidchicken.com>
3149
3150 * keyboard.c (read_char_x_menu_prompt): Don't demand a prompt
3151 string in menu maps (Bug#4471).
3152
fec8f0fe
CY
31532009-10-24 Chong Yidong <cyd@stupidchicken.com>
3154
3155 * nsfns.m (ns_set_name, ns_set_name_as_filename): Don't call
3156 FRAME_NS_VIEW on terminal frames (Bug#4765).
3157
10d66ec0
AS
31582009-10-24 Andreas Schwab <schwab@linux-m68k.org>
3159
1cae01f7
AS
3160 * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_INTnn and
3161 DBUS_TYPE_UINTnn separately to get proper sign extension.
3162
58a12889
AS
3163 * dired.c (Ffile_attributes): Simplify now that FIXNUM_OVERFLOW_P
3164 can properly handle unsigned types.
d528b1ce 3165 (make_uid, make_gid): Remove.
58a12889 3166
987c9327
AS
3167 * lisp.h (FIXNUM_OVERFLOW_P): Fix last change to handle unsigned
3168 types again.
3169
522d013a 3170 * sysdep.c (procfs_ttyname): Fix sprintf format to match argument type.
10d66ec0
AS
3171 (system_process_attributes): Likewise.
3172
905a9ed3
DN
31732009-10-24 Dan Nicolaescu <dann@ics.uci.edu>
3174
3175 * keymap.c (Fmake_sparse_keymap): Purecopy the name.
3176
3177 * eval.c (Fautoload): Purecopy the filename. Simplify.
3178
3179 * category.c (Fdefine_category): Purecopy docstring.
3180
a599b3e8
AS
31812009-10-23 Andreas Schwab <schwab@linux-m68k.org>
3182
7b792fc9
AS
3183 * lisp.h (FIXNUM_OVERFLOW_P): Remove cast to avoid overflow.
3184
a599b3e8
AS
3185 * puresize.h (PURESIZE_RATIO): Decrease to 11/7.
3186
b35ac83e
CY
31872009-10-23 Chong Yidong <cyd@stupidchicken.com>
3188
3189 * window.c (Fwindow_edges, Fwindow_pixel_edges)
3190 (Fwindow_inside_edges, Fwindow_inside_pixel_edges): Doc fix
3191 (Bug#4775).
3192
e8903e00
SM
31932009-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
3194
3195 * fileio.c (syms_of_fileio): Initialize Vdirectory_sep_char.
3196 (init_fileio_once):
3197 * lisp.h (init_fileio_once): Remove.
3198 * emacs.c (main): Don't call init_fileio_once.
3199
8f43cbf3
DN
32002009-10-23 Dan Nicolaescu <dann@ics.uci.edu>
3201
3202 * puresize.h (BASE_PURESIZE): Increase to 1430000.
3203
26898943
AS
32042009-10-21 Andreas Schwab <schwab@linux-m68k.org>
3205
3206 * doprnt.c (doprnt): Fix overflow check.
3207
5c646d5a
JD
32082009-10-21 Jan Djärv <jan.h.d@swipnet.se>
3209
3132a7ea
JD
3210 * xterm.c (x_term_init): Remove XSynchronize call done for debugging.
3211
5c646d5a
JD
3212 * xterm.h (x_wait_for_event): Declare it.
3213
3214 * xterm.c (pending_event_wait): New variable.
3215 (handle_one_xevent): Set pending_event_wait.eventtype to 0 if we
3216 see pending_event_wait.eventtype.
3217 (handle_one_xevent): Don't change gravity when parent changes.
d528b1ce
SM
3218 (x_new_font): Call change_frame_size with new rows/columns before we
3219 try to resize the frame.
5c646d5a 3220 (x_wait_for_event): New function.
d528b1ce
SM
3221 (x_set_window_size_1): Don't change gravity unless change_gravity
3222 is set.
5c646d5a
JD
3223 Call XResizeWindow with FRAME_OUTER_WINDOW. If we are visible,
3224 don't change frame size, instead wait for the ConfigureNotify.
3225 (x_set_window_size): Call x_set_window_size_1 for USE_X_TOOLKIT also.
3226 (x_wm_set_size_hint): Remove ifdefs for USE_X_TOOLKIT.
3227 (x_initialize): Initialize pending_event_wait.
3228
3229 * xmenu.c (set_frame_menubar): Add internal border width to menu bar
3230 size.
3231
3232 * widget.c (EmacsFrameSetValues): Add comment.
3233 (EmacsFrameSetCharSize): Just call x_set_window_size.
3234
3235 * gtkutil.c (xg_frame_set_char_size): Flush events and call
3236 x_wait_for_event.
d528b1ce 3237 (flush_and_sync): Remove again.
5c646d5a
JD
3238 (xg_get_font_name): Suggest monospace if no previous font is known.
3239
e9c1637d
SM
32402009-10-20 Stefan Monnier <monnier@iro.umontreal.ca>
3241
3242 * character.c (char_resolve_modifier_mask): Don't resolve meta to the
46be764e 3243 8th bit, since that only made sense in the ASCII world (bug#4751).
e9c1637d 3244
5a72cccb
YM
32452009-10-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3246
3247 * xterm.c (XTread_socket) [!USE_GTK && HAVE_X_I18N]: Don't quit
3248 processing pending events when event is filtered for input method.
ab04798f 3249 (Bug#3681)
5a72cccb 3250
2629aa37
JB
32512009-10-20 Juanma Barranquero <lekktu@gmail.com>
3252
3253 * fns.c: Add #endif accidentally removed in previous change.
3254
c3417a74
DN
32552009-10-19 Dan Nicolaescu <dann@ics.uci.edu>
3256
3257 * fns.c: Remove code for unsupported system: MAC_OS.
3258 * image.c: Likewise. Include setjmp.h.
3259
9685cef2
JD
32602009-10-19 Jan Djärv <jan.h.d@swipnet.se>
3261
3262 * xterm.c (x_create_toolkit_scroll_bar): Don't allocate color for
3263 pixel -1 (bug #4742).
3264
d7306fe6
DN
32652009-10-19 Dan Nicolaescu <dann@ics.uci.edu>
3266
019d2c4c
DN
3267 * process.c (create_pty): Remove conditionals for no longer
3268 supported systems: UNIPLUS and RTU.
3269
ee6bacd4
DN
3270 * xterm.c:
3271 * xfns.c: Remove always true condition: XtSpecificationRelease >= 5.
3272
d7306fe6
DN
3273 * alloc.c: Do not define struct catchtag.
3274 * eval.c: Move struct catchtag definition ...
3275 * lisp.h: ... here.
3276
3277 * image.c: Move png.h #include earlier to avoid warnings.
3278
3279 * xterm.c:
3280 * xsmfns.c:
3281 * xselect.c:
3282 * xrdb.c:
3283 * xmenu.c:
3284 * xftfont.c:
3285 * xfont.c:
3286 * xfns.c:
3287 * xfaces.c:
3288 * xdisp.c:
3289 * window.c:
3290 * widget.c:
3291 * w32xfns.c:
3292 * w32uniscribe.c:
3293 * w32term.c:
3294 * w32select.c:
3295 * w32reg.c:
3296 * w32proc.c:
3297 * w32menu.c:
3298 * w32inevt.c:
3299 * w32heap.c:
3300 * w32font.c:
3301 * w32fns.c:
3302 * w32console.c:
3303 * w32.c:
3304 * w16select.c:
3305 * vm-limit.c:
3306 * unexsol.c:
3307 * unexec.c:
3308 * unexcw.c:
3309 * unexaix.c:
3310 * undo.c:
3311 * tparam.c:
3312 * textprop.c:
3313 * terminfo.c:
3314 * terminal.c:
3315 * termcap.c:
3316 * term.c:
3317 * syntax.c:
3318 * sound.c:
3319 * sheap.c:
3320 * search.c:
3321 * scroll.c:
3322 * region-cache.c:
3323 * regex.c:
3324 * ralloc.c:
3325 * process.c:
3326 * print.c:
b024548b
DN
3327 * nsterm.m:
3328 * nsselect.m:
3329 * nsmenu.m:
3330 * nsimage.m:
3331 * nsfont.m:
3332 * nsfns.m:
d7306fe6
DN
3333 * msdos.c:
3334 * minibuf.c:
3335 * menu.c:
3336 * marker.c:
3337 * macros.c:
3338 * keymap.c:
3339 * keyboard.c:
3340 * intervals.c:
3341 * insdel.c:
3342 * indent.c:
3343 * gtkutil.c:
3344 * ftxfont.c:
3345 * ftfont.c:
3346 * fringe.c:
3347 * frame.c:
3348 * fontset.c:
3349 * font.c:
3350 * fns.c:
3351 * floatfns.c:
3352 * filelock.c:
3353 * fileio.c:
3354 * emacs.c:
3355 * editfns.c:
3356 * dosfns.c:
3357 * doprnt.c:
3358 * doc.c:
3359 * dispnew.c:
3360 * dired.c:
3361 * dbusbind.c:
3362 * data.c:
3363 * composite.c:
3364 * coding.c:
3365 * cmds.c:
3366 * cm.c:
3367 * chartab.c:
3368 * charset.c:
3369 * character.c:
3370 * ccl.c:
3371 * category.c:
3372 * casetab.c:
3373 * casefiddle.c:
3374 * callproc.c:
3375 * callint.c:
3376 * bytecode.c:
3377 * buffer.c:
3378 * atimer.c: Include setjmp.h. (Bug#4643)
3379
fd5f21e6
SM
33802009-10-18 Stefan Monnier <monnier@iro.umontreal.ca>
3381
4c0354d7
SM
3382 Remove leftover table unibyte_to_multibyte_table.
3383 * character.c (unibyte_to_multibyte_table): Remove.
3384 (Funibyte_char_to_multibyte): Use MAKE_CHAR_MULTIBYTE.
3385 * charset.c (init_charset_once): Don't init unibyte_to_multibyte_table.
3386 * character.h (UNIBYTE_TO_CHAR): New macro.
3387 (MAKE_CHAR_MULTIBYTE): Use it.
3388 (unibyte_to_multibyte_table, unibyte_char_to_multibyte): Remove.
3389 * xdisp.c (get_next_display_element): USE ASCII_CHAR_P.
3390 (message_dolog, set_message_1):
3391 * search.c (Freplace_match):
3392 * editfns.c (Fcompare_buffer_substrings):
3393 * fns.c (Fcompare_strings): Use MAKE_CHAR_MULTIBYTE.
3394 (concat):
3395 * insdel.c (copy_text, count_size_as_multibyte):
3396 Use ASCII_CHAR_P and BYTE8_TO_CHAR.
3397 * term.c (produce_glyphs):
3398 * syntax.c (skip_chars): Use BYTE8_TO_CHAR.
3399 * regex.c (RE_CHAR_TO_MULTIBYTE):
3400 * cmds.c (internal_self_insert):
3401 * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use UNIBYTE_TO_CHAR.
3402
fd5f21e6
SM
3403 * cmds.c (internal_self_insert): `c' is already in "multibyte" form.
3404
4418646e
DN
34052009-10-17 Dan Nicolaescu <dann@ics.uci.edu>
3406
3407 * puresize.h (BASE_PURESIZE): Increase to 1310000.
3408
35f5c1d2
JB
34092009-10-16 Juanma Barranquero <lekktu@gmail.com>
3410
3411 * buffer.c (Fbuffer_name): Doc fix. (Bug#4728)
3412
a0cd8f6b
AR
34132009-10-15 Adrian Robert <Adrian.B.Robert@gmail.com>
3414
3415 * nsterm.h (NS_HAVE_NSINTEGER): Back out and augment with CGFloat,
3416 still needed under Tiger.
3417
3418 * nsterm.m (EmacsView-conversationIdentifier): Arg is long.
3419
3420 * m/amdx86-64.h: Don't set LIB_STANDARD and START_FILES under
3421 __Apple__.
3422
3423 * m/intel386.h: Remove DARWIN_OS/_LP64 special case.
3424
01a8d3fa
KH
34252009-10-15 Kenichi Handa <handa@m17n.org>
3426
3427 * print.c (print_object): Escape a symbol like "2E10" too.
3428
bf6c75c9 34292009-10-11 Adrian Robert <Adrian.B.Robert@gmail.com>
6e4780c5
JB
3430
3431 Cleanups and changes for 64-bit compile under Snow Leopard.
3432 Based on suggestions by Erik Charlebois.
bf6c75c9
AR
3433
3434 * nsfns.m (xw-color-values): Use CGFloat where appropriate.
3435
c5959062 3436 * nsfont.m (ns_char_width): Replace deprecated call.
bf6c75c9
AR
3437 (ns_findfonts, nsfont_list_family): Use long format in printf, and
3438 cast argument.
3439 (nsfont_open): Use ns_char_width() everywhere.
d528b1ce 3440 (ns_uni_to_glyphs, NSGlyphStorage): Use NS[U]Integer where appropriate.
bf6c75c9
AR
3441
3442 * nsgui.h (NSPoint, NSSize) [!__OBJC__]: Define and use CGFloat.
3443
3444 * nsimage.m (EmacsImage-setXBMColor:,-getPixelAtX:Y:): Use CGFloat
3445 where appropriate.
3446
3447 * nsmenu.m (EmacsMenu-addItemWithWidgetValue:): Use NSInteger
3448 where appropriate.
6e4780c5
JB
3449 (EmacsToolbar-addDisplayItemWithImage:idx:helpText:enabled:):
3450 Use stringWithUTF8String.
bf6c75c9
AR
3451 (EmacsDialogPanel-initWithContentRect:styleMask:): Fix signature.
3452
6e4780c5
JB
3453 * nsterm.h (EmacsView, EmacsMenu, EmacsToolbar, EmacsTooltip):
3454 Add formal protocol mention to inheritance.
bf6c75c9
AR
3455 [NS_HAVE_NSINTEGER]: Drop conditional and contents.
3456
6e4780c5
JB
3457 * nsterm.m (ns_color_to_lisp): Use CGFloat where appropriate.
3458 Fix printf format.
bf6c75c9
AR
3459 (ns_query_color): Use CGFloat where appropriate.
3460 (EmacsView<NSTextInput>, EmacsScroller): Fix method signatures.
ac146f82 3461 (EmacsScroller-mouseDown:): Use long format in printf, and cast
bf6c75c9
AR
3462 argument.
3463
3d87f118
AR
3464 * config.in (NS_HAVE_NSINTEGER): Drop.
3465
a95c8102
AR
3466 * dbusbind.c (dbus-method-return-internal)
3467 (dbus-method-error-internal): Use long format in printf, and cast
3468 argument.
3469
3470 * font.c (font_unparse_xlfd, font_unparse_fcname): Use long format
3471 in printf, and cast argument.
3472
6873acca 3473 * process.c (list_processes_1): Use long format in printf, and
a95c8102
AR
3474 cast argument.
3475
9ec6f100
GM
34762009-10-11 Glenn Morris <rgm@gnu.org>
3477
3478 * frame.c (Fframe_pixel_height): Doc fix. (Bug#4535)
3479
5be883cd
JD
34802009-10-08 Jan Djärv <jan.h.d@swipnet.se>
3481
3482 * gtkutil.c (create_menus): Call gtk_widget_set_size_request for
3483 menu bar with a small width so it doesn't enlarge the frame.
3484
d7a39b51
JB
34852009-10-08 Juanma Barranquero <lekktu@gmail.com>
3486
3487 * fontset.c (Fset_fontset_font): Fix typos in error messages.
3488
0c2b6f8e
GM
34892009-10-06 Glenn Morris <rgm@gnu.org>
3490
3491 * Makefile.in (emacs${EXEEXT}): Remove direct dependence on
3492 SOME_MACHINE_LISP (this enters indirectly via DOC).
3493
e02131a2
EZ
34942009-10-05 Eli Zaretskii <eliz@gnu.org>
3495
3496 * dired.c (Ffile_attributes): Doc fix. (Bug#4638)
3497
b4744254
EZ
34982009-10-04 Eli Zaretskii <eliz@gnu.org>
3499
3500 * xdisp.c (syms_of_xdisp) <unibyte-display-via-language-environment>:
3501 Doc fix.
3502
dbf64827
JB
35032009-10-03 Martin Rudalics <rudalics@gmx.at>
3504
3505 * window.c (Fdelete_window): Check WINDOW argument. (Bug#4618)
3506
e9a0aef8
MA
35072009-10-02 Michael Albinus <michael.albinus@gmx.de>
3508
d528b1ce 3509 * lisp.h (Qdelete_directory_internal): Remove, because it is not
e9a0aef8
MA
3510 used anymore outside fileio.c.
3511
3512 * w32fns.c (Fsystem_move_file_to_trash): Use delete-directory.
3513
64eb2b56
JB
35142009-10-01 Juanma Barranquero <lekktu@gmail.com>
3515
3516 * lisp.h (Qdelete_directory_internal):
3517 Declare, instead of Qdelete_directory.
3518
3519 * w32fns.c (Fsystem_move_file_to_trash): Use it.
3520
9d28c33e
SM
35212009-10-01 Stefan Monnier <monnier@iro.umontreal.ca>
3522
3523 * eval.c (Fcalled_interactively_p): Add `kind' argument.
3524
9d8f3bd9
MA
35252009-10-01 Michael Albinus <michael.albinus@gmx.de>
3526
9d28c33e 3527 * fileio.c (Fdelete_directory_internal): Rename from
9d8f3bd9
MA
3528 Fdelete_directory. It is not a command anymore. It has no file
3529 name handler.
3530
9694740b
SM
35312009-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
3532
3533 * xdisp.c (get_next_display_element): Use an enum in last change.
3534
748e162f
KH
35352009-09-28 Kenichi Handa <handa@m17n.org>
3536
9694740b 3537 * xdisp.c (get_next_display_element): Pay attention to
748e162f
KH
3538 unibyte_display_via_language_environment in handling
3539 Vnobreak_char_display.
3540
17efd58d
AR
35412009-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
3542
3543 * nsterm.h (ns_app_name): New extern variable.
3544
3545 * nsterm.m (ns_app_name): New variable.
3546 (ns_term_init): Set and use it.
3547 (ns_term_shutdown): Use it.
3548
3549 * nsmenu.m (ns_update_menubar): Use ns_app_name. Sync with xmenu.c.
3550 (EmacsMenu-clear:, ns_popup_dialog): Use ns_app_name.
3551
3552 * nsfns.m (ns_set_name_iconic, ns_set_name)
3553 (ns_set_name_as_filename, x-create-frame, ns-get-resource)
3554 (ns-set-resource): Use ns_app_name instead of NSProcessInfo call.
3555
9694740b
SM
3556 * menu.c (find_and_return_menu_selection) [HAVE_NS]:
3557 Remove double-casting in client_data comparison.
31c2d412 3558
3208cb35
YM
35592009-09-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3560
3561 * keyboard.c (make_lispy_event): Remember last wheel direction.
3562 (syms_of_keyboard) <wheel_syms>: Compute array size at compile time.
3563
b7d552d6
GM
35642009-09-26 Glenn Morris <rgm@gnu.org>
3565
3566 * Makefile.in (MSDOS_SUPPORT) [MSDOS]: Remove unneeded '/' in
3567 internal.elc. Add term/pc-win.elc.
3568 (WINDOW_SUPPORT) [HAVE_X_WINDOWS]: Add term/common-win.elc and
3569 term/x-win.elc.
3570 (WINNT_SUPPORT) [WINDOWSNT]: Add term/common-win.elc and
3571 term/w32-win.elc.
3572 (NS_SUPPORT): New.
3573 (lisp): Add NS_SUPPORT.
3574 (SOME_MACHINE_LISP): Add term/w32-win.elc and emacs-lisp/easymenu.elc.
3575
4ff670a8
DR
35762009-09-25 David Reitter <david.reitter@gmail.com>
3577
3578 * nsmenu.m (EmacsMenu-clear): Recognize application menu
3579 on Mac OS X 10.6+ (bug#4513).
3580
feabfb6c
JB
35812009-09-24 Juanma Barranquero <lekktu@gmail.com>
3582
3583 * frame.c (xrdb_get_resource): Return nil for empty string resources;
d528b1ce
SM
3584 some parts of Emacs code (like font selection) don't grok them.
3585 See http://lists.gnu.org/archive/html/emacs-devel/2009-09/msg00528.html
feabfb6c 3586
de59072a
AS
35872009-09-24 Andreas Schwab <schwab@redhat.com>
3588
3589 * coding.c (decode_coding_iso_2022): Fix operator precedence.
3590
a489517b
JB
35912009-09-24 Juanma Barranquero <lekktu@gmail.com>
3592
3593 * dired.c (Fdirectory_files): Fix typo in docstring.
3594
0592970c
AR
35952009-09-23 Adrian Robert <Adrian.B.Robert@gmail.com>
3596
3597 * nsterm.m (EV_TIMESTAMP, x_set_window_size)
3598 (EmacsApp-application:openFiles:): Remove GNUstep conditionals.
3599 (EmacsScroller-setPosition:portion:whole:): Remove -display call
3600 under GNUstep.
3601 (EmacsView-initFrameFromEmacs:): Set autoresizing mask.
3602
3603 * nsfont.m (ns_glyph_metrics): Remove GNUstep conditional for
3604 glyph advancement.
3605
48e8a88b
AR
36062009-09-22 Adrian Robert <Adrian.B.Robert@gmail.com>
3607
3608 * nsterm.m (CGContextSetFontRenderingMode): Drop declaration.
b3aac06a 3609 (EmacsScroller-mouseDown:): Use SCROLL_BAR_FIRST_DELAY.
48e8a88b
AR
3610
3611 * nsmenu.m (EmacsMenu-menuNeedsUpdate): Ignore if frame has been
3612 deleted (bug #4492).
3613
e14f0a78
AR
3614 * nsfont.m (Vns_reg_to_script): New lisp variable.
3615 (syms_of_nsfont): Declare it.
3616 (ns_registry_to_script): New function.
3617 (ns_get_req_script): Call it.
3618 (ns_findfonts): Don't give up on non-unicode registry.
3619
3620 * font.c (DEFAULT_ENCODING) [HAVE_NS]: Remove special case.
3621
5b650faa
SM
36222009-09-20 Tom Tromey <tromey@redhat.com>
3623
3624 * eval.c (find_handler_clause): Make stack-trace-on-error work in
3625 batch mode (bug#4228).
3626
a489517b 36272009-09-18 Rob Christie <robchristie@gmail.com> (tiny change)
0bae4e09
AR
3628
3629 * nsmenu.m (EmacsMenu-parseKeyEquiv:): Parse key equivalent more
a489517b 3630 carefully. (Bug #4339)
0bae4e09 3631
fcfe06f3
CY
36322009-09-18 Chong Yidong <cyd@stupidchicken.com>
3633
d798ba87 3634 * syntax.c (Fchar_syntax): Minor doc fix (Bug#4400).
fcfe06f3 3635
31642728
AR
36362009-09-18 Adrian Robert <Adrian.B.Robert@gmail.com>
3637
3638 * emacs.c (inhibit_x_resources): Update doc string for NS.
3639 (main) [HAVE_NS]: Don't process --no-init-file option. Remove
cff11156 3640 legacy code for -NXHost. Fix error printf in daemon case.
31642728
AR
3641
3642 * nsterm.h (ns_no_defaults): Remove.
3643
3644 * nsterm.m (ns_no_defaults): Remove.
3645 (ns_term_init): Switch ns_no_defaults -> inhibit_x_resources.
3646 (ns_use_qd_smoothing): Remove legacy variable.
6516d10a
AR
3647 (EmacsView-windowShouldZoom:): Set frame left_pos, top_pos and
3648 don't update the NSWindow itself.
3649 (EmacsView-windowWillUseStandardFrame:defaultFrame:): Improve
a489517b 3650 state detection and store user rect ourselves. (Bug #3581)
31642728
AR
3651
3652 * nsfont.m (nsfont_draw) [NS_IMPL_COCOA]: Don't use
3653 ns_use_qd_smoothing.
3654
3655 * nsfns.m (x_get_string_resource): Ape just-previous changes to other
3656 platform versions. Drop support for emacs-20-style face specs.
8aad0aea 3657 (x-close-connection): Drop PSFlush() under OS X.
a489517b 3658 (x-focus-frame): Activate the app first. (Bug #4180)
31642728 3659
8686ac71
JB
36602009-09-17 Juanma Barranquero <lekktu@gmail.com>
3661
3662 * emacs.c (inhibit_x_resources): New variable.
3663 (main) [HAVE_NS]: Don't process --quick command line option.
3664 (syms_of_emacs) <inhibit-x-resources>: DEFVAR_BOOL it.
3665
3666 * lisp.h (inhibit_x_resources): Declare it extern.
3667
3668 * w32reg.c (x_get_string_resource):
3669 * xrdb.c (x_get_string_resource): Obey inhibit_x_resources.
3670
e227ba05
EZ
36712009-09-17 Eli Zaretskii <eliz@gnu.org>
3672
362654a6
JB
3673 * Makefile.in (MSDOS_SUPPORT, SOME_MACHINE_LISP):
3674 Add lisp/term/internal.elc.
e227ba05 3675
742d40e8
SM
36762009-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
3677
3678 * frame.c (x_get_resource_string): Re-add for non-toolkit builds
3679 (bug#4461).
3680
005bd5a2
DN
36812009-09-17 Dan Nicolaescu <dann@ics.uci.edu>
3682
3683 * puresize.h (BASE_PURESIZE): Increase to 1290000.
3684
3685 * Makefile.in (OTHER_FILES): Define using autoconf, not cpp.
3686 (OBJECTS_MACHINE): Remove, unused.
3687
f9af9719
SM
36882009-09-16 Stefan Monnier <monnier@iro.umontreal.ca>
3689
3690 * frame.c (x_get_resource_string): Remove unused.
3691
0307c7d2
JD
36922009-09-15 Jan Djärv <jan.h.d@swipnet.se>
3693
3694 * xterm.c (x_new_font): Call change_frame_size before calling
3695 x_set_window_size, in case frame size won't change.
3696
3697 * frame.c (x_set_font): Remove dead code.
3698
428b13d6
SM
36992009-09-15 Stefan Monnier <monnier@iro.umontreal.ca>
3700
3701 * lread.c (Fload): Also run do-after-load-evaluation while dumping.
3702
5766c380
SM
37032009-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
3704
3705 * lread.c (Fload): Don't output a message after loading an obsolete
3706 package any more (done in Lisp now).
3707
2fd0161b
CY
37082009-09-12 Chong Yidong <cyd@stupidchicken.com>
3709
3710 * fns.c (syms_of_fns): Doc fix (Bug#4227).
3711
bc5e75b6
SM
37122009-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
3713
3714 * keymap.c (Fwhere_is_internal): Use nconc2.
3715
c31c985e
AM
37162009-09-11 Alan Mackenzie <acm@muc.de>
3717
3718 * dispnew.c (Fsend_string_to_terminal): Amend doc string to cover
3719 batch mode.
3720
78012bd2
AS
37212009-09-11 Andreas Schwab <schwab@linux-m68k.org>
3722
3723 * xdisp.c (display_mode_element): Detect cycles.
3724
9d889332
SM
37252009-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
3726
3727 * keymap.c (where_is_internal): Don't erroneously return nil right after
3728 filling the cache.
3729 (where_is_internal_1): Fix up typo.
3730
7ab5d780
GM
37312009-09-11 Glenn Morris <rgm@gnu.org>
3732
3733 * frame.c (Fx_parse_geometry): Unify the X and NS versions so that they
3734 share a common doc-string.
3735
5238a749
SM
37362009-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
3737
66d77eda
SM
3738 * keymap.c (get_keymap): Return the actual keymap symbol rather than
3739 t for autoloaded keymaps when autoloading is not allowed (bug#4393).
3740
5238a749
SM
3741 * keymap.c (QCadvertised_binding): New constant.
3742 (syms_of_keymap): Initialize it.
3743 (Fwhere_is_internal): Try and use bindings from :advertised-binding
3744 if applicable.
3745
19f48442
SM
37462009-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
3747
50d4ba39
SM
3748 * keyboard.c (Qmenu_alias, Vdefine_key_rebound_commands): Remove.
3749 (parse_menu_item): Streamline since bindings are recomputed all the
3750 time anyway. Don't bother checking Vdefine_key_rebound_commands any
3751 more and don't support lmenu's menu-alias any more either.
3752
a88a5372
SM
3753 * keymap.c (where_is_internal_data): Make noindirect a boolean.
3754 (where_is_internal): Strip it down to only traverse the keymaps.
3755 Move the cache handling from Fwhere_is_internal to here.
3756 (Fwhere_is_internal): Move the handling of remapping and the choice of
3757 the best binding from where_is_internal to here.
3758 Unify the cached/noncached paths, so remapping is also handled
3759 correctly when the cache is used, and so the cache can be used to
3760 speed up remap-handling when applicable.
3761 Give preference to non-remapped bindings.
3762 * doc.c (Fsubstitute_command_keys): Let Fwhere_is_internal's prefer
3763 non-remapped bindings.
3764 * keyboard.c (parse_menu_item): Let Fwhere_is_internal handle
3765 command remapping.
3766
19f48442
SM
3767 * xdisp.c (display_mode_element): Move list length limit from 50 to
3768 5000 (see thread starting with <xbaik5174uqu.fsf@cam.ac.uk>).
3769
599498c3 37702009-09-09 Adrian Robert <Adrian.B.Robert@gmail.com>
c1905ca3
AR
3771
3772 * nsfont.m (ns_get_family): Don't force first letter to uppercase.
3773
f9b7b5ac
SM
37742009-09-09 Stefan Monnier <monnier@iro.umontreal.ca>
3775
a53af587
JB
3776 * xdisp.c (Vtruncate_partial_width_windows): Improve docstring.
3777 (Bug#4334)
3778
f9b7b5ac
SM
3779 * keymap.c (where_is_internal): Filter out shadowed remappings.
3780 Assume that where_is_internal returns unshadowed bindings to simplify
3781 the code and get rid of the gotos. Use ASIZE.
3782
04f4b72d
JD
37832009-09-04 Jan Djärv <jan.h.d@swipnet.se>
3784
4da146f2
JD
3785 * xterm.c (x_focus_changed): If we get a focusout and pointer
3786 is invisible, make it visible.
3787
04f4b72d
JD
3788 * xterm.h: Remove condition for declaration of
3789 x_*_window_to_frame.
3790
7cef7ce3
SM
37912009-09-03 Stefan Monnier <monnier@iro.umontreal.ca>
3792
3793 * dispnew.c (Fsend_string_to_terminal): Make it work again on the
3794 initial terminal as well.
3795
a54fa5b7
JD
37962009-09-02 Jan Djärv <jan.h.d@swipnet.se>
3797
3798 * xterm.h: Rename x_non_menubar_window_to_frame to
7cef7ce3 3799 x_menubar_window_to_frame.
a54fa5b7 3800
50426a04 3801 * xterm.c: Remove declarations also in xterm.h.
a54fa5b7
JD
3802 (XTmouse_position): Do not return valid positions
3803 for clicks in the menubar and the toolbar for Gtk+.
3804
3805 * xfns.c (x_any_window_to_frame): Assume less about Gtk+ internals,
3806 if the widget for the event has the same top level as a frame,
3807 return the frame.
3808 (x_menubar_window_to_frame): Detect menu bar even with Gtk+
3809 internal windows, bug #4122.
3810 (x_non_menubar_window_to_frame): Remove.
3811
5a021dd0
GM
38122009-09-02 Glenn Morris <rgm@gnu.org>
3813
3814 * buffer.c (default-major-mode): Move most of the doc from here...
3815 (major-mode): ... to here.
3816
548fe2f3
NR
38172009-08-30 Nick Roberts <nickrob@snap.net.nz>
3818
3819 * process.c (wait_reading_process_output): Keep the descriptor
3820 when pty is used by a non-child process, e.g., in I/O buffer of
3821 GDB this allows inferior to be restarted.
3822
e0840eef
EZ
38232009-08-29 Eli Zaretskii <eliz@gnu.org>
3824
3825 * xdisp.c (redisplay_internal): Remove redundant test and collapse
3826 both branches into one.
3827
82e98df4
SM
38282009-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
3829
3830 * emacs.c (USAGE1): Remove --(no-)multibyte, --(no-)unibyte.
3831 (main): Use enable-multibyte-characters rather than
3832 default-enable-multibyte-characters. Output a warning message when
3833 running a unibyte session.
3834
890617cb
YM
38352009-08-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3836
3837 * unexmacosx.c (print_load_command_name) [LC_DYLD_INFO]: Add cases
3838 LC_DYLD_INFO and LC_DYLD_INFO_ONLY.
3839 (copy_data_segment): Also copy __program_vars section.
3840 (copy_dyld_info) [LC_DYLD_INFO]: New function.
3841 (dump_it) [LC_DYLD_INFO]: Use it.
3842
3843 * s/darwin.h [temacs]: Undef HAVE_POSIX_MEMALIGN.
3844
e7adeadc
EZ
38452009-08-28 Eli Zaretskii <eliz@gnu.org>
3846
3847 * makefile.w32-in ($(BLD)/doc.$(O)): Depend on buildobj.h, not on
3848 $(SRC)/buildobj.h.
3849 (buildobj.h): Renamed from $(SRC)/buildobj.h.
3850 (make-buildobj-CMD, make-buildobj-SH): Create buildobj.h, not
3851 $(SRC)/buildobj.h.
3852 (clean): Add buildobj.h.
3853
3ed8bbdc
TZ
38542009-08-28 Teodor Zlatanov <tzz@lifelogs.com>
3855
3856 * print.c (print_object): Set escapeflag to 1 when printing
3857 hashtable keys and values.
3858
155a6764
SM
38592009-08-27 Stefan Monnier <monnier@iro.umontreal.ca>
3860
3861 * lread.c (read_integer): Use doubles (and potentially return a float
3862 number) as we do in string-to-number.
3863 (read1): Use strtol to read integers, signal errors on strtol's
3864 overflow and use floats if strtol's output is too large for
3865 Elisp integers.
3866
877610de
EZ
38672009-08-27 Eli Zaretskii <eliz@gnu.org>
3868
3869 * makefile.w32-in ($(SRC)/buildobj.h, make-buildobj-CMD)
3870 (make-buildobj-SH): Fix last change.
3871 (SRC): Move to before where it's first used.
3872
ef73e7be
KH
38732009-08-27 Kenichi Handa <handa@m17n.org>
3874
550c8289
KH
3875 * process.c (send_process): Use encode_coding_object instead of
3876 encode_coding_string to perform eol-conversion even if the string
3877 is unibyte.
3878
60afa08d
KH
3879 * coding.c (encode_coding_utf_16): Fix checking of a Unicode
3880 character.
3881
ef73e7be 3882 * cmds.c (Fself_insert_command): Avoid unnecessay
8a0b709a 3883 unibyte->multibyte conversion. (Bug#4240) (Bug#4037)
ef73e7be 3884
7b3a82d7
DN
38852009-08-26 Dan Nicolaescu <dann@ics.uci.edu>
3886
5654bf63
DN
3887 * callproc.c (Fcall_process): Remove always true #if.
3888
7b3a82d7
DN
3889 * lisp.h: Replace #if 0 code for checking with text pointing to
3890 the --enable-checking configure flag.
3891
3892 * emacs.c (main): Mention the --enable-profiling configure flag
3893 instead of using CFLAGS.
3894
878bde49
KR
38952009-08-26 Ken Raeburn <raeburn@raeburn.org>
3896
3897 * Makefile.in (buildobj.h): New target.
3898 (doc.o): Depend on it.
3899 (temacs${EXEEXT}): Don't generate buildobj.lst.
3900 (mostlyclean): Delete buildobj.h, not buildobj.lst.
3901 * makefile.w32-in ($(SRC)/buildobj.h): New target.
3902 ($(BLD)/doc.$(O)): Depend on it.
3903 (make-buildobj-CMD, make-buildobj-SH): New targets. (Syntax help
3904 provided by Eli Zaretskii.)
3905 ($(TEMACS)): Don't generate buildobj.lst.
3906 * doc.c: Include buildobj.h.
3907 (buildobj): New static variable.
3908 (Fsnarf_documentation): Use it, instead of opening and reading
3909 buildobj.lst.
3910
1574224c
MA
39112009-08-25 Michael Albinus <michael.albinus@gmx.de>
3912
3913 * dbusbind.c (Fdbus_call_method)
3914 (Fdbus_call_method_asynchronously): Use English numeric format for
3915 timeout values in doc string.
3916
d9da2f45
KH
39172009-08-25 Kenichi Handa <handa@m17n.org>
3918
ef73e7be
KH
3919 * alloc.c (mark_char_table): New function.
3920 (mark_object): Use mark_char_table for a char-table.
3921
d9da2f45
KH
3922 * lisp.h (CHAR_TABLE_REF_ASCII): New macro.
3923 (CHAR_TABLE_REF): Use it.
3924
c8edcc01
KR
39252009-08-23 Ken Raeburn <raeburn@raeburn.org>
3926
3927 * Makefile.in (emacs${EXEEXT}) [CANNOT_DUMP]: Set EMACSLOADPATH
3928 before invoking the newly build emacs to check for load-path
3929 shadowing.
3930
7763401b
GM
39312009-08-22 Glenn Morris <rgm@gnu.org>
3932
3933 * Makefile.in (bootstrap_exe): New variable.
3934 (.el.elc, ${lispsource}loaddefs.el, bootstrap-emacs${EXEEXT}):
3935 Use ${bootstrap_exe}.
3936
729eadda
EZ
39372009-08-22 Eli Zaretskii <eliz@gnu.org>
3938
3939 * coding.h (encode_coding_string): Don't encode unibyte strings.
3940 (Bug#4047)
3941
eb4c6ace
MA
39422009-08-22 Michael Albinus <michael.albinus@gmx.de>
3943
3944 * config.in (HAVE_DBUS_WATCH_GET_UNIX_FD): Add.
3945
3946 * dbusbind.c (XD_WITH_DBUS_WATCH_GET_UNIX_FD): Remove. It was
3947 intended as hotfix only.
3948 (xd_add_watch, xd_remove_watch): Use HAVE_DBUS_WATCH_GET_UNIX_FD.
3949
36e34d1b
AR
39502009-08-21 Adrian Robert <Adrian.B.Robert@gmail.com>
3951
3952 * nsterm.m (ns_get_color): Update documentation properly for last
3953 change, and clean up loose ends in the code left by it. Fix
3954 longstanding bug with 16-bit hex parsing, and add support for
3955 yet another X11 format (rgb:r/g/b) for compatibility.
3956 * nsfns.m (EmacsDialogPanel-runDialogAt): Add declaration of
3957 timer_check() to avoid crash on Leopard/PPC. Bug #2154.
3958
f983eb8a
SM
39592009-08-21 Stefan Monnier <monnier@iro.umontreal.ca>
3960
3961 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 500 for js.el.
3962
3f56d3c6
MA
39632009-08-20 Michael Albinus <michael.albinus@gmx.de>
3964
3965 * dbusbind.c (XD_WITH_DBUS_WATCH_GET_UNIX_FD): New macro.
3966 (xd_add_watch, xd_remove_watch): Use it. Print debug messages.
3967 (xd_initialize, xd_pending_messages): Check, whether
3968 $DBUS_SESSION_BUS_ADDRESS is set.
3969
fb641d68
YM
39702009-08-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3971
3972 * nsfns.m (Fxw_color_values): Return 3-element list. Doc fix.
3973
3974 * nsterm.m (ns_get_color): Remove incompatible color formats again.
3975
cf59a374
GM
39762009-08-20 Glenn Morris <rgm@gnu.org>
3977
3978 * emacs.c (system-type): Doc fix.
3979
1373f3be
SM
39802009-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
3981
3982 * keyboard.c (syms_of_keyboard): Default to 5 buttons, which should be
3983 enough for the most common situations. Avoid SET_SYMBOL_VALUE.
3984
058ed861
MA
39852009-08-18 Michael Albinus <michael.albinus@gmx.de>
3986
1373f3be
SM
3987 * dbusbind.c (xd_add_watch, xd_remove_watch, Fdbus_init_bus):
3988 New functions.
058ed861
MA
3989 (xd_initialize): Revert change from 2009-08-16.
3990
563a866e 39912009-08-18 Kenichi Handa <handa@m17n.org>
5fc05db0
KH
3992
3993 * fontset.c (Ffontset_font): If a nil element is found in a
563a866e 3994 font-group vector, return nil.
5fc05db0 3995
e42bdf01
CY
39962009-08-17 Chong Yidong <cyd@stupidchicken.com>
3997
3998 * process.c (status_notify): Don't perform redisplay.
3999 (Fdelete_process, list_processes_1, process_send_signal):
4000 Expliticly perform redisplay.
4001 (wait_reading_process_output): Always check process status, but
4002 don't perform redisplay unless DO_DISPLAY is non-zero (Bug#2930).
4003
4230ab74
KR
40042009-08-17 Ken Raeburn <raeburn@raeburn.org>
4005
1373f3be 4006 * lisp.h (XFLOAT_DATA): Produce an rvalue by adding 0 to the value.
f601cdf3
KR
4007 (XFLOAT_INIT): New macro for storing a float value.
4008 * alloc.c (make_float, make_pure_float): Use XFLOAT_INIT.
4009 * fns.c (sxhash): Copy out the value of a float in order to
4010 examine its bytes.
4011 * dbusbind.c (xd_append_arg): Likewise.
4012
4230ab74
KR
4013 * emacs.c (main): Don't call syms_of_data twice.
4014
a0645cdd
MA
40152009-08-16 Michael Albinus <michael.albinus@gmx.de>
4016
4017 * dbusbind.c (xd_initialize): Add connection file descriptor to
4018 input_wait_mask, in order to let select() detect, whether a new
4019 message has been arrived.
ca4f31ea 4020 (Fdbus_call_method_asynchronously): Allow nil HANDLER.
a0645cdd 4021
485db0ba
MA
40222009-08-15 Michael Albinus <michael.albinus@gmx.de>
4023
1373f3be
SM
4024 * dbusbind.c (xd_get_dispatch_status, xd_pending_messages):
4025 New functions.
485db0ba
MA
4026
4027 * lisp.h (xd_pending_messages): Declare.
4028
4029 * keyboard.c (readable_events): Call xd_pending_messages.
4030
b5b98ff4
CY
40312009-08-15 Chong Yidong <cyd@stupidchicken.com>
4032
1373f3be 4033 * eval.c (Fcalled_interactively_p, Finteractive_p): Doc fix (Bug#3936).
84b17ab0 4034
f8354c6e
CY
4035 * xdisp.c (pop_it): Don't pop into a display vector (Bug#4131).
4036
b5b98ff4
CY
4037 * buffer.c (set_buffer_internal_1)
4038 (swap_out_buffer_local_variables): Check for unbound local
4039 variables (Bug#4138).
4040
8b9fc636
EZ
40412009-08-14 Eli Zaretskii <eliz@gnu.org>
4042
4043 * process.c (create_pty): Fix last change.
4044
ce959360
CY
40452009-08-13 Chong Yidong <cyd@stupidchicken.com>
4046
4047 * image.c (xbm_read_bitmap_data): New arg inhibit_image_error.
4048 (xbm_load_image): Caller changed.
64b807c9 4049 (xbm_file_p): Avoid signalling an image_error (Bug#4107).
ce959360 4050
c7baf7e9
NR
40512009-08-13 Nick Roberts <nickrob@snap.net.nz>
4052
4053 * process.c (create_pty): New function.
4054 (Fstart_process): Use it to allow Emacs to just associate a pty
4055 with the buffer. See associated change in gdb-mi.el.
4056 (list_processes_1): Deal with no program name.
4057 (start_process_unwind): Use pid == -2 to mean no process.
4058
1ac9108a
SM
40592009-08-12 Stefan Monnier <monnier@iro.umontreal.ca>
4060
4061 * cmds.c (nonundocount): New global variable.
4062 (keys_of_cmds): Initialize it.
4063 (Fself_insert_command): Use it to combine upto 20 sequential chars
4064 into a single undo entry, just like the Qself_insert_command code in
4065 keyboard.c does.
4066 Call frame_make_pointer_invisible, also like the Qself_insert_command
4067 code in keyboard.c does.
4068 * keyboard.c (command_loop_1): Use the new global nonundocount rather
4069 than its own local replacement for it.
4070
e267324c
KR
40712009-08-10 Ken Raeburn <raeburn@raeburn.org>
4072
1ac9108a 4073 * fns.c (concat): Don't re-set string length to its current value.
77437343 4074
1ac9108a
SM
4075 * coding.h (decode_coding_string, encode_coding_string):
4076 Use SBYTES macro.
f0bed503 4077
1ac9108a 4078 * doprnt.c (doprnt_lisp): Delete unused function.
e267324c
KR
4079 (doprnt): Merge with doprnt1, discarding lispstrings code.
4080 * lisp.h (doprnt_lisp): Don't declare.
4081
416e006d
JL
40822009-08-07 Juri Linkov <juri@jurta.org>
4083
4084 * puresize.h (BASE_PURESIZE): Increase to 1270000.
4085
6f7d5780
DN
40862009-08-07 Dan Nicolaescu <dann@ics.uci.edu>
4087
4088 * print.c (syms_of_print): Undo previous change.
4089
f19a0f5b
TZ
40902009-08-05 Teodor Zlatanov <tzz@lifelogs.com>
4091
4092 * lread.c (read1, syms_of_lread): Read hashtables back from the
4093 readable format.
4094
4095 * print.c (print_preprocess, print_object): Print hashtables fully
4096 and readably.
4097 (syms_of_print): Provide 'hashtable-print-readable.
4098
b9173dc2
AR
40992009-08-02 Adrian Robert <Adrian.B.Robert@gmail.com>
4100
4101 * nsfont.m (ns_descriptor_to_entity): Handle case when descriptor has
4102 no family set.
4103 (nsfont_open): Handle case when entity has no family.
4104
1586503c
AR
41052009-07-29 Adrian Robert <Adrian.B.Robert@gmail.com>
4106
4107 * nsfont.m (ns_findfonts): Fix 2009-07-24 change to return only one
4108 element, not a list, for match case.
4109
087048cd
KH
41102009-07-28 Kenichi Handa <handa@m17n.org>
4111
4112 * font.c (font_parse_xlfd): Check DPI and AVGWIDTH properties more
4113 rigidly.
4114
4115 * xfont.c (xfont_list_pattern): Don't ignore the return value of
4116 font_parse_xlfd. Check font properties more rigidly.
4117
780c2506
DN
41182009-07-27 Dan Nicolaescu <dann@ics.uci.edu>
4119
31fd7c5c
JB
4120 * s/netbsd.h (SIGNALS_VIA_CHARACTERS): Remove, already defined in
4121 bsd-common.h.
780c2506 4122
a8c0cc18
KH
41232009-07-27 Kenichi Handa <handa@m17n.org>
4124
4125 * xfaces.c (face_with_height): Call font_clear_prop.
4126
4fbe2306
CY
41272009-07-26 Chong Yidong <cyd@stupidchicken.com>
4128
111d9af3
CY
4129 * dispnew.c (init_display): Use Qx, Qw32, and Qns.
4130
4131 * xterm.c (x_term_init): Use Qx.
4132
4fbe2306
CY
4133 * nsfont.m (nsfont_draw): Revert 2009-07-15 change.
4134
1ac9108a 4135 * nsterm.m (ns_maybe_dumpglyphs_background): Revert 2009-07-15 change.
4fbe2306
CY
4136 (ns_get_color): Revert 2009-07-16 change.
4137
beb0b7f9
EZ
41382009-07-25 Eli Zaretskii <eliz@gnu.org>
4139
4140 * lread.c (syms_of_lread) <force_load_messages>: New variable.
1ac9108a 4141 (Fload): Use it to force load messages, even if NOMESSAGES is non-nil.
beb0b7f9 4142
2baf5e76
KR
41432009-07-25 Ken Raeburn <raeburn@raeburn.org>
4144
1ac9108a
SM
4145 * coding.h (decode_coding_string, encode_coding_string):
4146 Use SCHARS macro.
8890e5f5 4147
2baf5e76 4148 * lread.c: Rewrite 2009-07-21 changes.
1ac9108a 4149 (load_depth): Delete.
2baf5e76
KR
4150 (Qload_in_progress): New variable.
4151 (load_unwind): Don't reference load_depth or load_in_progress.
4152 (Fload): Likewise; specbind Qload_in_progress instead.
4153 (init_lread): Don't initialize load_depth.
4154 (syms_of_lread): Initialize and protect Qload_in_progress.
4155
1395c6f5
AR
41562009-07-24 Adrian Robert <Adrian.B.Robert@gmail.com>
4157
4158 * nsfont.m (ns_findfonts): Correctly return fallback in match case.
4159
4e2f36cf
AR
41602009-07-23 Yavor Doganov <yavor@gnu.org>
4161
4162 * nsfont.m (NSFontDescriptor.h): Explicitly include under GNUstep.
4163
5dd9a6f7
AR
41642009-07-23 Adrian Robert <Adrian.B.Robert@gmail.com>
4165
4166 * nsterm.m (EmacsView-keyUp:): Only act when running under Tiger.
7f6ad209
AR
4167 Bugs 3792, 3720, 2402.
4168 (ns_lookup_indexed_color): Check for bad index.
4169 (ns_index_color): Init unused slot to 0.
4170 (ns_dumpglyphs_box_or_relief): Replace useless xassert with an if().
4171 Bug 3714, possibly 3082.
5dd9a6f7 4172
c902b920
JR
41732009-07-22 Jason Rumney <jasonr@gnu.org>
4174
1ac9108a
SM
4175 * w32fns.c (w32_wnd_proc) [WM_IME_STARTCOMPOSITION]:
4176 Position IME window at cursor (Bug#2570).
c902b920
JR
4177 (w32_wnd_proc) [WM_IME_CHAR]: Release context when finished.
4178 (globals_of_w32fns): Dynamically load functions required above.
4179
4180 * w32term.c (w32_draw_window_cursor): Send message to reposition
4181 any IME window.
4182
090101cf
CY
41832009-07-21 Chong Yidong <cyd@stupidchicken.com>
4184
4185 * fileio.c: Revert 2009-07-16 changes.
4186 (Vauto_save_include_big_deletions): New variable.
4187 (Fdo_auto_save): Disable auto-save only if
4188 auto-save-include-big-deletions is nil.
4189
e6583e3d
CY
41902009-07-21 Chong Yidong <cyd@stupidchicken.com>
4191
4192 * xdisp.c (move_it_to): For continued lines ending in a tab, take
4193 the overflowed pixels into account (Bug#3879).
4194
ece435a5
KR
41952009-07-21 Ken Raeburn <raeburn@raeburn.org>
4196
4197 * lread.c (load_depth): New variable.
4198 (Fload, load_unwind, init_lread): Set it to the load recursion
4199 depth; set load_in_progress as a simple boolean based on the
4200 current load_depth. (Bug#3892)
4201
40b2d973
AR
42022009-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
4203
4204 * nsfont.m (ns_has_attribute): Remove.
4205 (ns_findfonts, nsfont_open): Use ns_attribute_fvalue() instead.
4206
10be7e0d
JL
42072009-07-18 Juri Linkov <juri@jurta.org>
4208
4209 * process.c (Fset_process_query_on_exit_flag): Mention killing
4210 a buffer in docstring.
4211
fa055055
KH
42122009-07-17 Kenichi Handa <handa@m17n.org>
4213
4214 * casetab.c (shuffle): Fix the logic of setting up the cycle.
4215
042f7b69
YM
42162009-07-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4217
4218 * nsfns.m (Fns_set_alpha): Remove function.
4219 (syms_of_nsfns): Don't defsubr it.
4220
4221 * nsterm.m (ns_get_color): Remove incompatible color formats.
4222 (ns_color_to_lisp): Generate #rrggbb color format string.
4223
4be941e3
RS
42242009-07-16 Richard Stallman <rms@gnu.org>
4225
4226 * fileio.c (Fwrite_region, Fdo_auto_save): Handle save_length = -2.
4227 (Fset_buffer_auto_saved): Handle save_length = -2.
4228
4e6b227d
CY
42292009-07-16 Chong Yidong <cyd@stupidchicken.com>
4230
4231 * xterm.c (Qx_gtk_map_stock): New var.
4232
4233 * gtkutil.c (update_frame_tool_bar): Use Qx_gtk_map_stock instead
4234 of calling intern each time.
4235
a1856973
YM
42362009-07-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4237
4238 * nsfont.m (nsfont_draw): Remove code for stippling, which actually
4239 does tiling.
4240
4241 * nsterm.m (ns_maybe_dumpglyphs_background): Likewise.
4242
497e54d8
KH
42432009-07-14 Kenichi Handa <handa@m17n.org>
4244
72d36834
KH
4245 * font.c (font_vconcat_entity_vectors): New function.
4246 (struct font_sort_data): New member font_driver_preference.
4247 (font_compare): Check font_driver_preference.
4248 (font_sort_entities): The format of the first argument changed.
4249 (font_delete_unmatched): Likewise.
4250 (font_list_entities): The return type changed.
4251 (font_select_entity): The format of the second argument changed.
1ac9108a
SM
4252 (font_find_for_lface): Adjuste for the above changes.
4253 Don't suppress the checking of C even if the repertory supports it.
4254 (Flist_fonts): Adjust for the above changes.
72d36834 4255
1ac9108a
SM
4256 * ftfont.c (ftfont_spec_pattern): New arg langname. Change caller.
4257 (ftfont_list): Adjust for the change of ftfont_spec_pattern.
497e54d8
KH
4258 Reject a font who has adstyle property that is different from a
4259 langname derived from registry property.
1ac9108a 4260 (ftfont_match): Adjust for the change of ftfont_spec_pattern.
497e54d8 4261
b6046155
EZ
42622009-07-13 Eli Zaretskii <eliz@gnu.org>
4263
4264 * dired.c (directory_files_internal) [WINDOWSNT]: Don't make a
4265 local copy of dirfilename.
4266
fb6b6049
KH
42672009-07-13 Kenichi Handa <handa@m17n.org>
4268
e2402a5e
KH
4269 * chartab.c (sub_char_table_ref_and_range): Fix the range check
4270 against max_char.
4271
fb6b6049
KH
4272 * cmds.c (internal_self_insert): Check sym by SYMBOLP before
4273 calling XSYMBOL (sym).
4274
65156807
EZ
42752009-07-11 Eli Zaretskii <eliz@gnu.org>
4276
1ac9108a
SM
4277 * dired.c (directory_files_internal_w32_unwind) [WINDOWSNT]:
4278 New function.
4279 (directory_files_internal) [WINDOWSNT]:
4280 Bind w32-get-true-file-attributes to either t or nil, depending whether
65156807
EZ
4281 the filesystem of the directory is fast or slow.
4282
4283 * w32.c (logon_network_drive): Don't assume PATH is an absolute
4284 file name.
4285 (is_slow_fs): New function.
4286 (stat): Use it to determine whether to issue more system calls to
4287 get accurate file attributes, when w32-get-true-file-attributes is
4288 `local'.
4289
e0ab5fcf
JD
42902009-07-10 Jan Djärv <jan.h.d@swipnet.se>
4291
4292 * xfns.c (Fx_select_font): Remember last font selected in
31fd7c5c 4293 x_last_font_name and use that the next time. Also try the frame
e0ab5fcf
JD
4294 parameter font-parameter as default to the font dialog.
4295
784ceded
KH
42962009-07-10 Kenichi Handa <handa@m17n.org>
4297
4298 * xftfont.c (xftfont_open): Fix typo: FC_RGBA->FC_HINT_STYLE.
4299
fb8edc0b
EZ
43002009-07-09 Eli Zaretskii <eliz@gnu.org>
4301
1ac9108a 4302 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
017dab84 4303
fb8edc0b
EZ
4304 * w32.c (stat): Treat UNC file names as residing on remote
4305 drives. (Bug#3542)
4306
635c75b1
KH
43072009-07-09 Kenichi Handa <handa@m17n.org>
4308
4309 * fontset.c (fontset_find_font): Fix previous change.
4310
c1d5ce94
MA
43112009-07-08 Michael Albinus <michael.albinus@gmx.de>
4312
4313 * dbusbind.c (xd_initialize, Fdbus_call_method, xd_read_message)
4314 (Fdbus_register_signal, Fdbus_register_method): Cleanup memory of
4315 error flag.
4316
edb61b39
KH
43172009-07-08 Kenichi Handa <handa@m17n.org>
4318
374bf7e4
KH
4319 * fontset.c (fontset_find_font): Fix the logic of handling
4320 charset_matched.
4321 (font_for_char): Delete unused var.
4322 (generate_ascii_font_name): Delete it.
4323
edb61b39
KH
4324 * coding.h (JIS_TO_SJIS2): Fix the code range check.
4325
4326 * coding.c (detect_coding_sjis): Handle shift_jis-2004 correctly.
4327 (encode_coding_sjis): Fix the code range check.
4328
0f3f018c
CY
43292009-07-07 Chong Yidong <cyd@stupidchicken.com>
4330
4331 * fileio.c (Fsubstitute_in_file_name, Ffile_name_directory)
4332 (Fexpand_file_name): Copy string data properly (Bug#3772).
4333
fcaf6f3a
JD
43342009-07-07 Jan Djärv <jan.h.d@swipnet.se>
4335
4336 * xterm.c (handle_one_xevent): Only call x_check_fullscreen on the
4337 first MapNotify.
4338
6809ca75
KH
43392009-07-07 Kenichi Handa <handa@m17n.org>
4340
4341 * character.h (unibyte_has_multibyte_table): Delete extern.
4342 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): Delete it.
4343
4344 * charset.c (Fset_charset_priority): Update charset_unibyte.
4345 (syms_of_charset): Initialize charset_unibyte.
4346
4347 * character.c (unibyte_has_multibyte_table): Delete it.
4348 (multibyte_char_to_unibyte): Use CHAR_TO_BYTE8 instead of checking
4349 charset_unibyte.
4350 (multibyte_char_to_unibyte_safe): Likewise.
4351 (Funibyte_char_to_multibyte): Don't check charset_unibyte.
4352
1ac9108a 4353 * xdisp.c (get_next_display_element): Decode it->c by charset_unibyte.
6809ca75
KH
4354 (x_produce_glyphs): Likewise.
4355
4356 * .gdbinit (xcharset): Fix the treating $arg0.
4357
ad9e2d54
EZ
43582009-07-04 Eli Zaretskii <eliz@gnu.org>
4359
4360 Emulation of `getloadavg' on MS-Windows.
50426a04 4361 * w32.c: Include float.h.
ad9e2d54
EZ
4362 (g_b_init_get_native_system_info, g_b_init_get_system_times)
4363 (GetNativeSystemInfo_Proc, GetSystemTimes_Proc): Declare.
4364 (get_native_system_info, get_system_times): New functions.
4365 (buf_next, buf_prev, sample_system_load, getavg): New subroutines.
4366 (getloadavg): Rewrite using GetSystemTimes and GetNativeSystemInfo.
4367 (globals_of_w32): Initialize g_b_init_get_native_system_info,
4368 g_b_init_get_system_times, and num_of_processors.
4369
0a3472c7
JR
43702009-07-03 Jason Rumney <jasonr@gnu.org>
4371
4372 * w32term.c (w32_initialize): Use standard types.
4373
80904120
EZ
43742009-07-03 Eli Zaretskii <eliz@gnu.org>
4375
4376 * dired.c (Ffile_attributes): Decode user and group names by the
4377 locale's encoding. (Bug#3443)
4378
6978862d
DN
43792009-07-03 Dan Nicolaescu <dann@ics.uci.edu>
4380
f8d23104
DN
4381 * sysdep.c (sys_suspend): Remove USG_JOBCTRL #ifdef, unused.
4382 (mkdir): Remove MKDIR_PROTOTYPE #ifdef, unused.
4383
4384 * callproc.c (child_setup): Use #else instead of a separate #ifdef.
4385
4386 * term.c (init_tty): Remove spurious #ifdef.
4387
6978862d
DN
4388 * m/mips.h: Mention this file is also used for netbsd.
4389 * m/pmax.h: Remove file.
4390
e044e4fc
JD
43912009-07-03 Jan Djärv <jan.h.d@swipnet.se>
4392
4393 * xterm.h (struct x_display_info): Add invisible_cursor.
4394 (struct x_output): Add current_cursor.
4395
4396 * xterm.c (XTtoggle_invisible_pointer): New function.
4397 (x_define_frame_cursor): Don't define cursor if invisible or the
4398 same as before. Set current_cursor.
4399 (x_create_terminal): Set toggle_invisible_pointer_hook.
4400
4401 * xfns.c (make_invisible_cursor): New function.
4402 (x_set_mouse_color): Call make_invisible_cursor.
4403 Set current_cursor.
4404 (x_window): Set current_cursor.
4405
4406 * termhooks.h (struct terminal): Add toggle_invisible_pointer_hook.
4407
4408 * keyboard.c (command_loop_1): Call frame_make_pointer_invisible after
4409 inserting a character.
4410 (read_avail_input): Call frame_make_pointer_visible.
4411
4412 * frame.c (Vmake_pointer_invisible): New variable.
1ac9108a
SM
4413 (frame_make_pointer_invisible, frame_make_pointer_visible):
4414 New functions.
e044e4fc
JD
4415 (syms_of_frame): DEFVAR make-pointer-invisible, initialize to Qt.
4416
4417 * frame.h: Declare frame_make_pointer_invisible and
4418 frame_make_pointer_visible.
4419 (struct frame): Add pointer_invisible.
4420
574c8efa
JD
44212009-07-02 Jan Djärv <jan.h.d@swipnet.se>
4422
7b507248
JD
4423 * gtkutil.c (xg_frame_set_char_size): Do set width/height if the
4424 frame isn't visible.
4425 (xg_frame_resized): If width/height is -1, get size of window
4426 from X server.
4427
4428 * xterm.c (handle_one_xevent): Call xg_frame_resized for USE_GTK
4429 for MapNotify.
4430
835bdaa7 4431 * gtkutil.c (xg_frame_set_char_size): Do not set pixel width/height
31fd7c5c 4432 here or call change_frame_size. Just call flush_and_sync.
1ac9108a 4433 (flush_and_sync): Reintroduce.
574c8efa 4434
3f1c6666 44352009-07-01 Jan Djärv <jan.h.d@swipnet.se>
69b16610 4436
31fd7c5c 4437 * xterm.h (struct x_display_info): Add Xatom_net_wm_state_sticky.
acd51077
JD
4438
4439 * xterm.c (x_handle_net_wm_state): Also look for sticky.
4440 (x_term_init): Initialize Xatom_net_wm_state_sticky.
4441
4442 * frame.h: Declare Qsticky.
4443
cad9ef74
JD
4444 * w32fns.c (w32_frame_parm_handlers): Set 0 for sticky.
4445
4446 * nsfns.m (ns_frame_parm_handlers): Ditto.
4447
4448 * frame.c: Declare Qsticky.
4449 (frame_parms): Add sticky.
4450
4451 * xfns.c (x_frame_parm_handlers): Let x_set_sticky handle sticky.
4452
4453 * xterm.h: Declare x_set_sticky.
4454
4455 * xterm.c (x_set_sticky): New function.
4456
69b16610
JD
4457 * gtkutil.c (xg_tool_bar_proxy_help_callback): New function.
4458 (xg_tool_bar_menu_proxy): Attach enter/leave events to
4459 xg_tool_bar_proxy_help_callback.
3f1c6666
JD
4460
4461 * emacs.c (USAGE3, standard_args): Add -mm and --maximized.
4462
4463 * frame.c: Qmaximized is new.
4464 (x_set_frame_parameters): Do not handle fullscreen specially.
4465 Only set width and height if explicitly set.
4466 (x_set_fullscreen): Handle Qmaximized.
4467 (x_set_font, x_figure_window_size): Do not handle fullscreen specially.
4468 (syms_of_frame): Initialize Qmaximized.
4469
1ac9108a
SM
4470 * frame.h (fullscreen_type): Add FULLSCREEN_MAXIMIZED.
4471 Declare Qfullwidth, Qfullheight, Qfullboth, Qmaximized.
3f1c6666
JD
4472
4473 * xterm.c (handle_one_xevent): Remove call to x_check_fullscreen
31fd7c5c
JB
4474 for Expose event. Add call to x_check_fullscreen for MapNotify event.
4475 Remove all code w.r.t. fullscreen from ConfigureNotify event. Do not
3f1c6666
JD
4476 set gravity to NorthWestGravity when USE_GTK.
4477 (set_wm_state): New function.
31fd7c5c 4478 (do_ewmh_fullscreen): Use set_wm_state. Also handle FULLSCREEN_MAXIMIZED.
3f1c6666
JD
4479 (x_handle_net_wm_state): Handle FULLSCREEN_MAXIMIZED.
4480 (x_check_fullscreen): Simplify so we only handle EMWH type of fullscreen
31fd7c5c 4481 or the case when no window manager is running. That means remove calls
3f1c6666
JD
4482 to x_real_positions and x_fullscreen_adjust.
4483
4484 * gtkutil.c (flush_and_sync, x_wm_size_hint_off): Remove.
4485 (xg_frame_set_char_size): Remove calls to x_wm_size_hint_off and
4486 flush_and_sync.
4487 (xg_height_changed): New function.
4488 (xg_create_frame_widgets): Remove call to gtk_widget_set_size_request
1ac9108a
SM
4489 and gtk_window_set_policy. Set frame gravity after parsing the
4490 geometry string.
3f1c6666
JD
4491 (xg_update_frame_menubar, free_frame_menubar)
4492 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
4493 (update_frame_tool_bar, free_frame_tool_bar): Call xg_height_changed.
4494 Remove calls to xg_frame_set_char_size.
4495
fd503d99
KH
44962009-07-01 Kenichi Handa <handa@m17n.org>
4497
4498 * keyboard.c (decode_keyboard_code): New function.
4499 (tty_read_avail_input): Decode the input bytes if necessary.
4500
1ac9108a
SM
4501 * coding.c (setup_coding_system):
4502 Initialize coding->carryover_bytes to 0.
fd503d99
KH
4503 (Fset_keyboard_coding_system_internal): If CODING-SYSTEM is nil,
4504 use Qno_conversion.
4505
24ed93fb
YM
45062009-07-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4507
4508 * Makefile.in (SOME_MACHINE_LISP): Add ../lisp/term/common-win.elc.
4509
99061dfc
CY
45102009-06-30 Chong Yidong <cyd@stupidchicken.com>
4511
1ac9108a 4512 * xftfont.c (xftfont_open): Avoid passing NULL argument to XftLockFace.
99061dfc 4513
ff90fbde
JR
45142009-06-30 Jason Rumney <jasonr@gnu.org>
4515
4516 * w32term.c (w32_initialize): Use GetModuleHandle for library that
4517 is already loaded.
4518 Set user model ID if supported (bug#1849).
4519
5f445726
JM
45202009-06-29 Jim Meyering <meyering@redhat.com>
4521
4522 Remove useless if-before-xfree test.
4523 * nsfont.m (nsfont_close): Remove useless test.
4524 * term.c (delete_tty): Likewise.
4525 * w32.c (system_process_attributes): Likewise.
4526 * w32font.c (w32font_close): Likewise.
4527 * xfaces.c (x_free_gc): Likewise.
4528 * xselect.c (buffer): Likewise.
4529
b9607587
AS
45302009-06-28 Andreas Schwab <schwab@linux-m68k.org>
4531
4532 * process.c (send_process): Keep decoded string in a local
4533 variable and protect it from GC. (Bug#3521)
4534
89ba96f4
EZ
45352009-06-28 Eli Zaretskii <eliz@gnu.org>
4536
4537 * term.c (create_tty_output) [MSDOS]: #ifdef away.
4538 (tty_free_frame_resources) [MSDOS]: Add a DOS-specific version.
4539
098a1589
CY
45402009-06-28 Chong Yidong <cyd@stupidchicken.com>
4541
485422be
CY
4542 * xdisp.c (start_display, handle_face_prop)
4543 (move_it_vertically_backward, cursor_row_fully_visible_p)
1ac9108a
SM
4544 (redisplay_window, try_window_id, produce_image_glyph):
4545 Delete some #ifdef-ed out code chunks that are now obsolete.
485422be 4546
098a1589
CY
4547 * xterm.c (x_update_window_begin, x_new_focus_frame)
4548 (x_scroll_bar_handle_click, handle_one_xevent)
4549 (handle_one_xevent, XTread_socket, x_focus_on_frame)
4550 (x_make_frame_visible, x_make_frame_invisible)
4551 (x_wm_set_icon_pixmap, x_initialize): Delete some #ifdef-ed out
4552 code chunks that are now obsolete.
4553
78c38319
MA
45542009-06-28 Michael Albinus <michael.albinus@gmx.de>
4555
4556 * dbusbind.c (XD_SYMBOL_TO_DBUS_TYPE): Convert macro into function
4557 xd_symbol_to_dbus_type. With Solaris 2.11, it was said to compile
4558 for hours, when optimzation is enabled.
4559 (xd_signature, xd_append_arg, xd_retrieve_arg, xd_initialize)
4560 (xd_read_message): Make them static.
4561
4189ed40
CY
45622009-06-27 Chuck Blake <cblake@pdos.csail.mit.edu> (tiny change)
4563
4564 * term.c (turn_on_face): Allow simultaneously bold and dim
4565 terminal faces (Bug#3530).
4566
cd9b5e16
CY
45672009-06-27 Chong Yidong <cyd@stupidchicken.com>
4568
4e23bedb
CY
4569 * frame.c (x_get_arg): Check if dpyinfo is non-NULL.
4570
cd9b5e16
CY
4571 * xdisp.c (mouse_face_from_buffer_pos): Fix detection of
4572 truncation glyphs (Bug#3686).
4573
07cc3c35
GM
45742009-06-27 Glenn Morris <rgm@gnu.org>
4575
4576 * m/pmax.h: Restore file, with only netbsd portions.
4577
31fd7c5c 45782009-06-26 David Reitter <david.reitter@gmail.com>
25c5550f 4579
cd9b5e16 4580 * nsterm.m (keydown): Avoid infinite loop.
25c5550f 4581
42d4a64f
KH
45822009-06-26 Peter Jolly <peter@jollys.org> (tiny change)
4583
4584 * ftfont.c (get_adstyle_property): Call font_intern_prop with 1 as
4585 the arg FORCE_SYMBOL.
4586
930fe55b 45872009-06-25 Kenichi Handa <handa@m17n.org>
a71ccf3a
KH
4588
4589 * fontset.c (fontset_find_font): When a usable rfont_def is found
4590 in a fallback font-group, make it the first element of the group.
4591
57ebc3fd
CY
45922009-06-24 Chong Yidong <cyd@stupidchicken.com>
4593
4594 * emacs-icon.h: Always define gnu_xpm_bits on GTK (bug#3671).
4595
f084f942
KH
45962009-06-24 Kenichi Handa <handa@m17n.org>
4597
4598 * fontset.c (fontset_get_font_group): Return 0 if no font-group is
4599 set for C.
4600 (fontset_font): Record the availability of a font for C both in
4601 the realized fontsets of the current one and the default one.
4602
2f686c87
DN
46032009-06-23 Dan Nicolaescu <dann@ics.uci.edu>
4604
4605 * sysdep.c (child_setup_tty): Remove SIGNALS_VIA_CHARACTERS
4606 conditional, it is always defined on AIX.
4607
666e158e
MB
46082009-06-23 Miles Bader <miles@gnu.org>
4609
4610 * window.c (Vrecenter_redisplay): New variable.
4611 (syms_of_window): Initialize it.
4612 (Qtty): New extern declaration.
4613 (Frecenter): Only do redisplay if Vrecenter_redisplay requests it.
4614
c6da7cd2
JM
46152009-06-23 Jim Meyering <meyering@redhat.com>
4616
1ac9108a
SM
4617 * src/ftfont.c (setup_otf_gstring, ftfont_shape_by_flt):
4618 Use xmalloc and xrealloc (not malloc and realloc), so subsequent heap
632c2030 4619 pointer dereferences are guaranteed to be valid.
c6da7cd2 4620
678dca3d
KH
46212009-06-23 Kenichi Handa <handa@m17n.org>
4622
74d75424
KH
4623 * emacs.c (main): Call init_font ().
4624
4625 * font.h (Vfont_log): Extern it.
4626 (FONT_ADD_LOG, FONT_DEFERRED_LOG): New macros.
4627
4628 * font.c (font_sort_entities, font_list_entities)
4629 (font_matching_entity, font_open_entity)
4630 (font_close_object): Change font_add_log to FONT_ADD_LOG.
4631 (Vfont_log): Delete static.
4632 (font_log_env_checked): Delete this variable.
4633 (font_add_log): Don't check font_log_env_checked.
4634 (font_deferred_log): Check Vfont_log.
4635 (init_font): New function.
4636
678dca3d
KH
4637 * ftfont.c: Change font_add_log to FONT_ADD_LOG.
4638
4639 * w32font.c: Change font_add_log to FONT_ADD_LOG.
4640
4641 * w32uniscribe.c: Change font_add_log to FONT_ADD_LOG.
4642
4643 * xfont.c: Change font_add_log to FONT_ADD_LOG.
4644
4645 * fontset.c (fontset_font): Call FONT_DEFERRED_LOG.
4646 (face_for_char): Don't call font_deferred_log here.
4647 (font_for_char): Likewise.
4648
8a668709
CY
46492009-06-22 Chong Yidong <cyd@stupidchicken.com>
4650
9a01ee33
CY
4651 * w32term.c (x_draw_glyph_string): Use the glyph string's width
4652 rather than its background_width for drawing the overline and
4653 underline (Bug#489).
4654
4655 * xterm.c (x_draw_glyph_string): Use the glyph string's width
4656 rather than its background_width for drawing the overline and
4657 underline (Bug#489).
ec7c9926
CY
4658 (xg_default_icon_file): New variable.
4659 (syms_of_xterm): Initialize it to the Emacs SVG icon file.
4660 (x_bitmap_icon): Under GTK, use xg_default_icon_file.
9a01ee33 4661
8a668709
CY
4662 * xdisp.c (Qbefore_string, Qafter_string): Add externs.
4663 (load_overlay_strings): Remove externs.
4664 (fast_find_position): Function deleted.
4665 (mouse_face_from_buffer_pos): New function, based on
4666 fast_find_position. Correctly handle before-strings,
4667 display-strings, and after-strings (Bug#1220).
4668 (note_mouse_highlight): Use mouse_face_from_buffer_pos.
4669
4d4c02d8
CY
46702009-06-21 Chong Yidong <cyd@stupidchicken.com>
4671
1ac9108a 4672 * xdisp.c (IT_DISPLAYING_WHITESPACE): Define for !HAVE_WINDOW_SYSTEM.
4d4c02d8
CY
4673 (move_it_in_display_line_to, move_it_in_display_line_to)
4674 (display_line): Remove #ifdef HAVE_WINDOW_SYSTEM.
4675
70243478
CY
46762009-06-21 Chong Yidong <cyd@stupidchicken.com>
4677
4678 * Branch for 23.1.
4679
13087e59
JR
46802009-06-21 Jason Rumney <jasonr@gnu.org>
4681
4682 * w32term.c (keyboard_codepage): New static variable.
4683 (w32_read_socket) [WM_INPUTLANGCHANGE]: Update it.
4684 (w32_read_socket) [WM_CHAR]: Use it to decode character
4685 input (bug#3237).
4686 (w32_initialize): Initialize it.
4687 (codepage_for_locale): New function.
4688
4735b74e
KR
46892009-06-20 Ken Raeburn <raeburn@raeburn.org>
4690
4691 * process.c (status_message): Pass Faset index argument as a lisp
4692 object, so as to work with USE_LISP_UNION_TYPE.
4693
0e727afa
YM
46942009-06-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4695
4696 * coding.c (Ffind_coding_systems_region_internal):
4697 Cache checked characters.
4698
cf299835
KH
46992009-06-18 Kenichi Handa <handa@m17n.org>
4700
1ac9108a 4701 * coding.c (decode_coding_iso_2022): Check MSB of bytes more rigidly.
cf299835 4702
90f20d94
AS
47032009-06-18 Andreas Schwab <aschwab@redhat.com>
4704
4705 * xdisp.c (redisplay_internal): Check that the frame is still
4706 live after redisplay of its windows.
4707 (redisplay_windows): Check that the window is still live.
4708
7f1faf1c
KH
47092009-06-17 Andreas Schwab <schwab@linux-m68k.org>
4710
4711 * coding.c (detect_coding_utf_16): Fix previous change.
4712
cc13543e
KH
47132009-06-16 Kenichi Handa <handa@m17n.org>
4714
4715 * coding.c (detect_coding_utf_16): Fix the logic of rejecting
4716 UTF-16 by checking the dispersion of Eth and Oth bytes.
4717
977b85f4
AS
47182009-06-15 Andreas Schwab <schwab@linux-m68k.org>
4719
4720 * coding.c (detect_coding_utf_16): Fix typo counting odd bytes.
4721
66bd43d1
KH
47222009-06-15 Kenichi Handa <handa@m17n.org>
4723
4724 * process.c (status_message): Fix previous change. Be sure to
4725 decode a localized string.
4726
cb5ca9c5
YM
47272009-06-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4728
4729 * xterm.c (x_delete_terminal): Put previous change in #if 0 and
4730 add comment explaining why.
4731
ec7709ba 47322009-06-14 Sidney Markowitz <sidney@sidney.com>
5ee6f629 4733
ec7709ba 4734 * nsmenu.m (EmacsTooltip: setText): Set height of tooltip.
5ee6f629 4735
4b7f335c
AR
47362009-06-14 Adrian Robert <Adrian.B.Robert@gmail.com>
4737
4738 * nsfont.m (ns_attribute_value): Remove.
4739 (ns_attribute_fvalue): Incorporate code from ns_attribute_value.
4740 (ns_has_attribute): Shrink the normal range.
4741 (ns_findfonts): Don't worry about requested spec in determining
4742 need for synthItal.
e41820ee 4743 (ns_get_covering_families): Retain scriptToFamilies.
4b7f335c 4744
73b26103
SZ
47452009-06-14 Seiji Zenitani <zenitani@mac.com>
4746
4747 * xdisp.c [USE_MAC_TOOLBAR]: Remove obsolete definition for Mac Carbon.
4748
5753e4da
KH
47492009-06-11 Kenichi Handa <handa@m17n.org>
4750
4751 * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
4752 overhang for the static composition case.
4753
3561b671
KH
47542009-06-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4755
5753e4da
KH
4756 * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
4757 overhang for the automatic composition case.
4758
3561b671
KH
4759 * xterm.c (x_compute_glyph_string_overhangs): Handle the automatic
4760 composition case.
4761
852bbd41
CY
47622009-06-10 Chong Yidong <cyd@stupidchicken.com>
4763
4764 * xdisp.c (get_next_display_element): When handling wrap-prefix
4765 and line-prefix, treat \n as a control character (bug#3502).
4766
9903d1e6
KH
47672009-06-10 Kenichi Handa <handa@m17n.org>
4768
4769 * font.c (font_parse_family_registry): Fix for one-char foundry.
4770 (font_sort_entities): Initialize prefer_prop[FONT_AVGWIDTH_INDEX].
4771
0bcbaaaa
CY
47722009-06-09 Dmitry Dzhus <dima@sphinx.net.ru> (tiny change)
4773
4774 * process.c (status_message): Fix handling of multibyte signal
4775 string (Bug#3499).
4776
40aa3f13
JM
47772009-06-09 Jim Meyering <meyering@redhat.com>
4778
1f80c7e2
CY
4779 * xfaces.c (Fx_load_color_file): Avoid array bounds error if the
4780 color name is missing.
40aa3f13 4781
72d51285
KH
47822009-06-09 Kenichi Handa <handa@m17n.org>
4783
4784 * charset.c (Fmap_charset_chars): In docstring, state clearly that
4785 FROM-CODE and TO-CODE are codepoints of CHARSET.
4786
c1d04d84
AR
47872009-06-08 Adrian Robert <Adrian.B.Robert@gmail.com>
4788
4789 * nsterm.m (ns_use_system_highlight_color): Drop, unused.
4790
47912009-06-08 Adrian Robert <Adrian.B.Robert@gmail.com>
4792
4793 Changes to support :script/:lang/:otf in NS font driver.
4794 * nsfont.m (nsfont_escape_name, nsfont_unescape_name)
4795 (nsfont_get_family, nsfont_char_width): Rename to ns_ prefix to
4796 indicate not part of font driver interface, and change callers.
4797 (ns_get_family): Remove pointless null check.
4798 (nsfont_spec_to_traits, nsfont_fmember_to_entity): Replace with
4799 ns_spec_to_descriptor, ns_descriptor_to_entity.
4800 (nsfont_trait_distance, nsfont_make_fontset_for_font): Remove.
4801 (ns_attribute_value, ns_attribute_fvalue, ns_has_attribute)
4802 (ns_spec_to_descriptor, ns_descriptor_to_entity)
4803 (ns_charset_covers, ns_lang_to_script, ns_otf_to_script)
4804 (ns_get_req_script, ns_accumulate_script_ranges)
4805 (ns_script_to_charset, ns_get_covering_families, ns_findfonts):
4806 New functions.
4807 (nsfont_list, nsfont_match): Use ns_findfonts.
4808 (nsfont_open): Use font descriptor instead of traits.
4809 (nsfont_draw): Handle "automatic" (lookup-table) compositions.
4810 (dump_glyphstring): Rename to ns_dump_glyphstring.
4811
c7eb9816
AR
4812 * nsterm.h (dump_glyphstring): Rename to ns_dump_glyphstring.
4813
c1d04d84
AR
4814 * nsfns.m (Fns_popup_font_panel): Use shared font manager.
4815
4816 * fontset.c (fontset_from_font): Remove NS-specific code.
4817
ec7709ba 48182009-06-08 Peter Jones <pjones@pmade.com> (tiny change)
c1d04d84
AR
4819
4820 * nsterm.m (ns_draw_window_cursor): Respect cursor_type for
4821 nonactive windows.
4822
31fd7c5c 48232009-06-08 Felix Mueller <felix@enqueue.eu> (tiny change)
c1d04d84 4824
1ac9108a 4825 * nsterm.m (ns_init_paths): Append path separator to INFOPATH variable.
c1d04d84 4826
68852c13 48272009-06-08 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
e7777236
AR
4828
4829 * keyboard.c (kbd_buffer_get_event): Null-check used_mouse_menu.
4830
6756cd1d
CY
48312009-06-07 Chong Yidong <cyd@stupidchicken.com>
4832
4833 * xdisp.c (move_it_in_display_line_to): On text-only terminals,
4834 account for the overflowing of newlines into the last glyph on the
4835 display line (Bug#3482).
4836
28bf482a
DR
48372009-06-05 David Reitter <david.reitter@gmail.com>
4838
ec7709ba
JB
4839 * nsselect.m (Fx_own_selection_internal, Fx_selection_exists_p)
4840 (Fx_selection_owner_p): Rename from Fns_own_selection_internal,
28bf482a
DR
4841 Fns_selection_exists_p, Fns_selection_owner_p.
4842
fdb55376
JR
48432009-06-03 Jason Rumney <jasonr@gnu.org>
4844
4845 * w32fns.c (x_create_tip_frame): Use the uniscribe font backend if
4846 available. (Bug#3379)
4847
05129fbe
KH
48482009-05-29 Kenichi Handa <handa@m17n.org>
4849
1ac9108a
SM
4850 * coding.c (get_translation_table):
4851 Check Venable_character_translation.
05129fbe 4852
ec7709ba 48532009-05-26 David Reitter <david.reitter@gmail.com>
15891144 4854
ec7709ba
JB
4855 * nsterm.m (ns_raise_frame): Only raise frame if visible.
4856 (x_make_frame_visible): Move frame to front rather than calling
15891144 4857 ns_raise_frame().
ec7709ba 4858 (keyDown:): Do not swallow events that aren't re-sent if frame
15891144 4859 isn't key window.
ec7709ba 4860 (drawRect:): Do not set visibility/iconified flags because
15891144
DR
4861 drawRect may be called by NSView even if the frame is hidden.
4862
ec7709ba
JB
4863 * nsfns.m (Fx_create_frame): Follow other ports in
4864 determining visibility; default to t. Ensure async_visible is set.
15891144 4865
21f73755
EZ
48662009-05-23 Eli Zaretskii <eliz@gnu.org>
4867
4868 * dired.c (Ffile_attributes): Doc fix.
4869
34001e41
CY
48702009-05-22 Chong Yidong <cyd@stupidchicken.com>
4871
4872 * m/mips.h [GNU_LINUX]: Don't define DATA_START (Bug#2685).
4873
46306a17
SM
48742009-05-21 Stefan Monnier <monnier@iro.umontreal.ca>
4875
4876 * xfont.c (xfont_list_pattern): Don't initialize xfont_scripts_cache
4877 and xfont_scratch_props.
4878 (syms_of_xfont): Do it here instead.
4879 (xfont_find_ccl_program): Delete, unused.
4880 (xfont_open): Delete unused var `i'.
4881
ef6e0694
KH
48822009-05-21 Kenichi Handa <handa@m17n.org>
4883
4884 * fontset.c (Qlatin): Don't make it static.
4885
46306a17
SM
4886 * xfont.c (xfont_chars_supported, xfont_supported_scripts):
4887 New functions.
ef6e0694
KH
4888 (xfont_scripts_cache, xfont_scratch_props): New variables.
4889 (Qlatin, Vscalable_fonts_allowed): Extern it.
46306a17
SM
4890 (xfont_list_pattern): Argument changed. Callers changed.
4891 Check Vscalable_fonts_allowed. Check the support of a script.
ef6e0694
KH
4892 (xfont_list): Don't reject a font spec with :script property.
4893 (xfont_has_char): Fix setting of encoding.
4894 (syms_of_xfont): Staticpro and initialize xfont_scripts_cache and
4895 xfont_scratch_props.
4896
48972009-05-19 Kenichi Handa <handa@m17n.org>
4898
46306a17 4899 * font.c (font_sort_entities): Rename from font_sort_entites.
ef6e0694
KH
4900 Callers changed.
4901
49022009-05-18 Kenichi Handa <handa@m17n.org>
4903
4904 * font.c (font_find_for_lface): Copy SPEC's FONT_TYPE too.
4905
ac71ced7
SM
49062009-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
4907
4908 * frame.c (do_switch_frame) [NS_IMPL_COCOA]: Don't raise any window.
4909 (delete_frame) [NS_IMPL_COCOA]: Instead, do it here.
4910
1c6d1051
YM
49112009-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4912
4913 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase here.
4914 (x_delete_terminal): Dissociate resource database from display and
4915 then call XrmDestroyDatabase before closing display.
4916
9b9b779c
AR
49172009-05-18 Adrian Robert <Adrian.B.Robert@gmail.com>
4918
4919 * nsterm.m (ns_read_socket): Remove unused variable.
1564e649
AR
4920 * frame.c (do_switch_frame): Under NS_IMPL_COCOA section, check
4921 whether selected frame is viable before raising it (based on patch
4922 by David Reitter), and improve commentary.
4923 * nsfont.m (nsfont_make_fontset_for_font): Avoid a compiler warning.
9b9b779c 4924
cccd42d5
KH
49252009-05-15 Kenichi Handa <handa@m17n.org>
4926
4927 * font.c (Ffont_spec): Check arguments.
4928
337fbd17
CY
49292009-05-14 Chong Yidong <cyd@stupidchicken.com>
4930
4931 * xfaces.c (tty_supports_face_attributes_p): Recognize unspecified
4932 weight when testing attributes (Bug#3282).
4933
47a6002f
JD
49342009-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4935
4936 * gtkutil.c (xg_frame_set_char_size): Set frame pixel width/height to
4937 what we expect to get in the next ConfigureNotify event.
4938
9cb363db
YM
4939 * xftfont.c (xftfont_open): Make sure that Xrender extension is added
4940 before Xft one (Bug#1696).
4941
b9126609
CY
49422009-05-07 David Reitter <david.reitter@gmail.com>
4943
4944 * nsfns.m (Fx_display_planes): Compute bitplanes using
4945 NSBitsPerPixelFromDepth (Bug#3207).
4946
27a69fd9
CY
49472009-05-10 Chong Yidong <cyd@stupidchicken.com>
4948
4949 * editfns.c (Ftranspose_regions): Doc fix (Bug#3248).
4950
00f37552
TTN
49512009-05-10 Ulrich Mueller <ulm@gentoo.org>
4952
4953 * s/gnu-linux.h: Make GCPROs and UNGCPRO no-ops also on SuperH.
4954
2d82a920
DR
49552009-05-07 David Reitter <david.reitter@gmail.com>
4956
ec7709ba
JB
4957 * nsterm.m (ns_dumpglyphs_stretch, ns_dumpglyphs_image):
4958 Respect mouse face background.
2d82a920 4959
46b0d52d
DR
49602009-05-07 David Reitter <david.reitter@gmail.com>
4961
ec7709ba
JB
4962 * nsterm.m (note_mouse_movement, ns_frame_up_to_date):
4963 Mouse movement/highlight: bracket drawing operations
46b0d52d
DR
4964 in ns_update_begin and ns_update_end.
4965
ce1b23bb
SM
49662009-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
4967
5996e1b7
SM
4968 * nsfns.m (ns_get_screen): Rewrite.
4969 Don't presume selected-frame is of type `ns'.
4970
ba98e3a0
SM
4971 * font.c (font_update_drivers): Sanity fallback to avoid disabling
4972 all drivers.
4973
ce1b23bb
SM
4974 * nsterm.m (-windowDidResize:): Avoid inf-loop under GNUStep.
4975
bcda200f
YM
49762009-05-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4977
4978 * keyboard.h (add_user_signal): Fix typo in extern.
4979
4980 * lisp.h (add_user_signal): Remove extern.
4981
4982 * unexelf.c (unexec): Consider a section to precede the .bss section
4983 if its addresses overlap that of .bss.
4984 (unexec) [NS_IMPL_GNUSTEP]: Copy ObjC-related data from old file
4985 instead of dumping process.
4986
864660a2
SM
49872009-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
4988
4989 * keyboard.c (syms_of_keyboard): Staticpro pending_funcalls.
4990
50da4e56
SM
49912009-05-04 Stefan Monnier <monnier@iro.umontreal.ca>
4992
4993 * Makefile.in (ctagsfiles1, ctagsfiles2): Include ObjC files in TAGS.
4994
51520a1a
DN
49952009-05-02 Dan Nicolaescu <dann@ics.uci.edu>
4996
4997 * xterm.c (x_handle_net_wm_state): Move declaration of lval before
4998 any statements.
4999
409ea3a1
AS
50002009-05-02 Andreas Schwab <schwab@linux-m68k.org>
5001
59c4c60f
AS
5002 * process.c (read_process_output): Make sure the current buffer is
5003 always restored.
5004
409ea3a1
AS
5005 * coding.c (record_conversion_result): Don't modify
5006 Vlast_code_conversion_error for successful result.
5007 (alloc_destination): Don't clobber conversion result. (Bug#1650)
5008
56f00ed2
KH
50092009-05-01 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
5010
5011 * charset.c (load_charset): Reformat X==Y==Z to (X==Y)==Z.
896b1cc9 5012 (load_charset_map): Remove unnecessary code.
56f00ed2 5013
4491c9d2
DR
50142009-04-30 David Reitter <david.reitter@gmail.com>
5015
35f5b128 5016 * nsterm.m (convert_ns_to_X_keysym): Define function keys f16
4491c9d2
DR
5017 through f24.
5018
6970f632
CY
50192009-04-30 Chong Yidong <cyd@stupidchicken.com>
5020
5021 * xfaces.c (face_at_buffer_position): New arg base_face_id.
5022
5023 * xdisp.c (handle_face_prop): Pass base_face_id of iterator to
5024 face_at_buffer_position.
5025 (face_before_or_after_it_pos, get_next_display_element)
5026 (note_mouse_highlight): Update face_at_buffer_position call.
5027
5028 * term.c (term_mouse_highlight):
5029 * msdos.c (IT_note_mouse_highlight):
5030 * fontset.c (Finternal_char_font):
35f5b128 5031 * font.c (font_at, font_range): Update face_at_buffer_position call.
6970f632
CY
5032
5033 * dispextern.h (face_at_buffer_position): Update prototype.
5034
0c616f63
KH
50352009-04-30 Kenichi Handa <handa@m17n.org>
5036
35f5b128 5037 * fontset.c (fontset_find_font): Check if rfont_def is Qnil or not.
0c616f63 5038
ad3aaf33
AS
50392009-04-29 Andreas Schwab <schwab@linux-m68k.org>
5040
5041 * callproc.c (Fcall_process): Fix GC protection. Make sure
5042 current buffer is always restored.
5043
c3c963a0
YM
50442009-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5045
5046 * atimer.c (init_atimer): Also clear stopped_atimers.
5047
5048 * keyboard.c (init_keyboard) [POLL_FOR_INPUT]: Reset poll_timer.
5049
7e3386cb
YM
5050 * process.c (create_process): Clean up merger residues of
5051 2008-07-17 change.
5052
91f68422
CY
50532009-04-29 Ulrich Mueller <ulm@gentoo.org>
5054
5055 * lread.c (Vread_circle): New variable.
5056 (read1): Disable recursive read if Vread_circle is nil.
5057
24b34550
KH
50582009-04-29 Kenichi Handa <handa@m17n.org>
5059
5060 * fontset.h (set_default_ascii_font): Delete extern.
5061
5062 * fontset.c (set_default_ascii_font): Delete this unused function.
5063
5064 * frame.c (x_set_font): When ARG is a font-object, check if the
5065 font-object matches with the ASCII font-spec of the frame's
9c358bda 5066 fontset. If not, create a new fontset for the frame. (Bug #3075)
24b34550 5067
77bf07e1
AS
50682009-04-28 Andreas Schwab <schwab@linux-m68k.org>
5069
5070 * fns.c (Flocale_info): Protect vector from GC during decoding.
5071
5072 * process.c (Fstart_process): Protect argv strings from GC during
5073 encoding.
5074
2c55aacf
AS
50752009-04-27 Andreas Schwab <schwab@linux-m68k.org>
5076
5077 * sysdep.c: Include <ctype.h>.
5078
b892d3c9
DR
50792009-04-27 David Reitter <david.reitter@gmail.com>
5080
35f5b128 5081 * nsfont.m (nsfont_open): Remove unused variable shrink.
b892d3c9
DR
5082 Remove commented-out code.
5083
9d0644c4
JB
50842009-04-26 Johan Bockgård <bojohan@gnu.org>
5085
5086 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
5087
b7053016
JR
50882009-04-25 Jason Rumney <jasonr@gnu.org>
5089
5090 * w32font.c (clear_cached_metrics): Remove, unused since 2008-08-02.
5091
4e8231f3
YM
50922009-04-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5093
5094 * fringe.c (init_fringe_bitmap) [HAVE_X_WINDOWS && WORDS_BIG_ENDIAN]:
5095 Swap bytes in short integer if fringe bitmap width > 8.
5096
493dcf2c
KH
50972009-04-23 Kenichi Handa <handa@m17n.org>
5098
5099 * xfaces.c (Fx_list_fonts): If a font size is specified in
5100 PATTERN, set it in returned scalable fonts.
5101
401e9e57
CY
51022009-04-22 Chong Yidong <cyd@stupidchicken.com>
5103
708e05dc
CY
5104 * keyboard.c (Fset_input_meta_mode): Doc fix.
5105
5106 * dispnew.c (Fsend_string_to_terminal): Doc fix.
5107
1ac9108a 5108 * data.c (Fterminal_local_value, Fset_terminal_local_value): Doc fixes.
708e05dc
CY
5109
5110 * coding.c (Fterminal_coding_system): Doc fix.
5111
5112 * xfns.c (Fx_display_grayscale_p, Fx_display_pixel_width)
5113 (Fx_display_pixel_height, Fx_display_planes)
5114 (Fx_display_color_cells, Fx_server_max_request_size)
5115 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
5116 (Fx_display_mm_height, Fx_display_mm_width)
5117 (Fx_display_backing_store, Fx_display_visual_class)
1ac9108a
SM
5118 (Fx_display_save_under, Fx_close_connection, Fx_synchronize):
5119 Doc fixes, replacing "terminal id" with "terminal object".
708e05dc
CY
5120 (check_x_display_info): Handle terminal objects instead of
5121 terminal ids.
5122
401e9e57
CY
5123 * term.c (Ftty_display_color_p, Ftty_display_color_cells)
5124 (Ftty_type, Fcontrolling_tty_p, Ftty_no_underline, Fsuspend_tty)
1ac9108a
SM
5125 (Fresume_tty, Vsuspend_tty_functions, Vresume_tty_functions):
5126 Doc fixes, replacing "terminal id" with "terminal object".
401e9e57 5127
df80c7f0
KH
51282009-04-21 Kenichi Handa <handa@m17n.org>
5129
5a8f12af 5130 * font.c (font_load_for_lface): Cancel previous change (bug#2994).
c0a6070d 5131 (font_score): Check AVGWIDTH too.
908567ef 5132
df80c7f0
KH
5133 * coding.c (decode_coding_utf_16): Reduce charbuf_end for the
5134 worst case.
1ac9108a
SM
5135 (decode_coding_sjis, decode_coding_big5, decode_coding_charset)
5136 (decode_coding_emacs_mule, decode_coding_iso_2022): Likewise.
df80c7f0 5137
705af33f
JR
51382009-04-19 Jason Rumney <jasonr@gnu.org>
5139
5140 The following changes fix Bug#3005 for wide glyphs on each platform,
b71ac3dd 5141 without reintroducing Bug#1258 for stretch glyphs.
705af33f
JR
5142
5143 * xterm.c (x_draw_bar_cursor): Limit cursor width differently for
5144 BAR_CURSOR and HBAR_CURSOR. Calculate width of HBAR_CURSOR using
5145 get_phys_cursor_geometry.
5146
b71ac3dd 5147 * w32term.c (x_draw_bar_cursor): Limit cursor width differently
705af33f
JR
5148 for BAR_CURSOR and HBAR_CURSOR. Calculate width of HBAR_CURSOR
5149 using get_phys_cursor_geometry.
5150
5151 * nsterm.m (ns_draw_window_cursor): HBAR_CURSOR width already
5152 correctly calculated.
5153
dc2933eb
JD
51542009-04-19 Jan Djärv <jan.h.d@swipnet.se>
5155
1ac9108a
SM
5156 * gtkutil.c (xg_tool_bar_menu_proxy, update_frame_tool_bar):
5157 Use G_CALLBACK instead of GTK_SIGNAL_FUNC which is deprecated.
dc2933eb
JD
5158 (xg_initialize): Use g_type_class_ref instead of gtk_type_class which
5159 is deprecated.
5160
973e7849
AS
51612009-04-18 Andreas Schwab <schwab@linux-m68k.org>
5162
5163 * font.c (font_put_frame_data): Use xfree instead of free.
5164
314d66f4
JB
51652009-04-17 Juanma Barranquero <lekktu@gmail.com>
5166
5167 * w32font.c (Qja, Qko): Remove declarations.
5168 (syms_of_w32font): Don't DEFSYM them.
5169
cf702558
CY
51702009-04-17 Chong Yidong <cyd@stupidchicken.com>
5171
5172 * font.c (Qja, Qko): Move definitions here from ftfont.c.
5173
5174 * font.h (Qja, Qko): Extern them.
5175
5176 * ftfont.c (Qja, Qko): Remove declarations.
5177
5178 * xfont.c (Qja, Qko): Remove declarations.
5179
b50504f5
KH
51802009-04-17 Kenichi Handa <handa@m17n.org>
5181
bde25748
KH
5182 * editfns.c (Ftranslate_region_internal): Use Fconcat to make a
5183 string from a vector to handle Latin-1 characters correctly.
5184
b50504f5
KH
5185 * ftfont.c (ftfont_pattern_entity): Return a newly allocated
5186 entity even if the cache hits.
5187
f4646fff
AS
51882009-04-16 Andreas Schwab <schwab@linux-m68k.org>
5189
5190 * search.c (boyer_moore): Use zero as marker value for a possible
6340c70e 5191 match instead of depending on overflow behavior. (Bug#2844)
f4646fff 5192
e7deaab0
AS
5193 * search.c: Use EMACS_INT for buffer positions. Add prototypes.
5194 * lisp.h: Adjust prototypes.
5195
0a0e7d49
CY
51962009-04-16 Chong Yidong <cyd@stupidchicken.com>
5197
5198 * keyboard.c (adjust_point_for_property): Disable 2009-02-12
5199 change (Bug#3003).
5200
3c908a57
KH
52012009-04-16 Kenichi Handa <handa@m17n.org>
5202
1ac9108a 5203 * xfont.c (xfont_has_char): Special handling of `ja' and `ko' adstyle.
bd0af90d
KH
5204
5205 * xftfont.c (xftfont_has_char): Special handling of `ja' and `ko'
5206 adstyle.
5207
5208 * ftfont.c (Qja, Qko): Don't make them static.
5209 (enum ftfont_cache_for): New enum.
5210 (fc_charset_table): Undo the previous change.
5211 (ftfont_get_latin1_charset): Delete it.
1ac9108a
SM
5212 (ftfont_pattern_entity): Check cache by ftfont_lookup_cache.
5213 Set FONT_SIZE_INDEX of the entity to 0 for a scalable font. For a
bd0af90d
KH
5214 non-scarable font, try to get AVERAGE_WIDTH.
5215 (ftfont_lookup_cache): Argument FOR-FACE is changed to CACHE_FOR.
5216 Change ft_face_cache from a list of a hash-table. Don't check
5217 `ja' and `ko' adstyle here.
5218 (ftfont_get_fc_charset): Call ftfont_lookup_cache with
5219 FTFONT_CACHE_FOR_CHARET.
5220 (ftfont_get_charset): Undo the previous change.
1ac9108a 5221 (ftfont_open): Call ftfont_lookup_cache with FTFONT_CACHE_FOR_FACE.
bd0af90d
KH
5222 (ftfont_close): Likewise.
5223 (ftfont_has_char): Special handling of `ja' and `ko' adstyle.
5224
5225 * font.c (font_sort_entites): Change the meaning of the arg
5226 BEST-ONLY. Don't optimize for VEC of lenght 1.
5227 (font_select_entity): Just return the value of font_sort_entites.
5228
5229 * xfaces.c (merge_face_vectors): Reflect font properties in
5230 to[LFACE_FONT_INDEX] to the other face attributes. Don't call
5231 font_clear_prop if a face attribute doesn't change.
5232
3c908a57
KH
5233 * charset.h (charset_ksc5601): Extern it.
5234
5235 * charset.c (charset_ksc5601): New variable.
5236 (Fdefine_charset_internal): Set charset_ksc5601.
5237 (init_charset_once): Initialize charset_ksc5601 to -1.
5238
d65859c3
DN
52392009-04-15 Dan Nicolaescu <dann@ics.uci.edu>
5240
5241 * fileio.c (history_delete_duplicates): Remove unused declaration.
5242
5243 * callint.c (history_delete_duplicates): New declaration.
5244 (Fcall_interactively): Remove command history duplicates when
5245 history_delete_duplicates is true.
5246
3ba010e5
EZ
52472009-04-14 Eli Zaretskii <eliz@gnu.org>
5248
5249 * buffer.c (syms_of_buffer) <line-spacing>: Doc fix.
5250
06f19b91
KH
52512009-04-14 Kenichi Handa <handa@m17n.org>
5252
5253 * font.c (Ffont_info): Fix docstring. Fix the second element of
5254 the returned value (bug#2949).
5255
2cce8bfc
CY
52562009-04-14 Chong Yidong <cyd@stupidchicken.com>
5257
5258 * xdisp.c (Vwrap_prefix, Vline_prefix): Reflow docstrings.
5259
d156542d
KH
52602009-04-14 Kenichi Handa <handa@m17n.org>
5261
5262 * xfont.c (xfont_has_char): The font has C if C is ASCII and the
5263 encoding charset is ascii_compatible.
5264
5265 * charset.c (Fdefine_charset_internal): Make charset
5266 ascii-compatible if the method is CHARSET_METHOD_OFFSET, the
5267 code_offset is 0, and covers all ASCII characters.
5268
86fa089e
SM
52692009-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
5270
5271 * nsselect.m (symbol_to_nsstring, clean_local_selection_data)
5272 (ns_string_to_pasteboard_internal):
5273 * nsmenu.m (process_dialog):
5274 * nsimage.m (ns_load_image): Use SDATA and ASET where appropriate.
5275 * nsfont.m (nsfont_open): Use XHASH to make it compile with LISP_UNION.
5276 * lisp.h (Fx_load_color_file): Declare.
5277
a8a3728b
KH
52782009-04-13 Kenichi Handa <handa@m17n.org>
5279
1ac9108a 5280 * font.c (font_delete_unmatched): Preserve the order of list elements.
a8a3728b
KH
5281 (font_select_entity): Suppress the code to optimize for the same
5282 kind of fonts.
5283 (font_load_for_lface): Get a font that supports at least ASCII
5284 characters.
5285
5286 * ftfont.c (Qja, Qko): New variables.
5287 (fc_charset_table): Delete uniquifier data for iso8859-1.
5288 (ftfont_get_latin1_charset): New function.
5289 (get_adstyle_property): New function.
5290 (ftfont_pattern_entity): Set FONT_ADSTYLE_INDEX of entity for
5291 bitmap fonts.
5292 (ftfont_lookup_cache): Handle the case that KEY is a font-entity.
5293 Delete iso-8859-1 range from the charset of fonts whose adstyle is
5294 `ko' or `ja'.
5295 (ftfont_get_fc_charset): Call ftfont_lookup_cache with ENTITY.
1ac9108a 5296 (ftfont_get_charset): For iso8859-1, call ftfont_get_latin1_charset.
a8a3728b
KH
5297 (ftfont_list): Don't refuse a font spec with non-nil `adstyle'
5298 property.
5299 (ftfont_open): Call ftfont_lookup_cache with ENTITY.
5300 (syms_of_ftfont): DEFSYM Qja and Qko.
5301
483670b5
KH
53022009-04-09 Kenichi Handa <handa@m17n.org>
5303
12b55765
KH
5304 * charset.c (map_charset_chars): For a charset of `superset'
5305 method, fix calculation of code range.
5306
483670b5
KH
5307 * font.c (font_put_extra): If VAL is nil, delete the slot for PROP
5308 from the list of extra properties.
5309 (font_clear_prop): Be sure to delete `:name' font property.
5310
57d3b93b
KH
53112009-04-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5312
b4b2c2ca
YM
5313 * dispnew.c (redraw_overlapping_rows): Fix detection of
5314 overlapping for topmost and bottommost rows.
5315
1ac9108a 5316 * ftfont.c (ftfont_text_extents): Fix calculation of metrics->descent.
57d3b93b 5317
472c3609
JR
53182009-04-06 Jason Rumney <jasonr@gnu.org>
5319
5320 * frame.c (x_set_font): Avoid C99 mid-block variable declaration.
5321
ab193662
KH
53222009-04-06 Kenichi Handa <handa@m17n.org>
5323
5324 * ftxfont.c (ftxfont_draw_backgrond): Fix args to XFillRectangle.
5325
5326 * xftfont.c (xftfont_open): Fix setting font->underline_thickness.
5327
0c26f026
KH
53282009-04-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5329
5330 * ftfont.c (ftfont_open): Fix checking of the return value of
5331 FT_Load_Char. Fix setting font->underline_thickness.
5332
e173bbce
CY
53332009-04-04 Chong Yidong <cyd@stupidchicken.com>
5334
5335 * terminal.c (Fterminal_name, Fdelete_terminal, Fterminal_name)
5336 (Fterminal_parameters, Fterminal_parameter)
5337 (Fset_terminal_parameter): In doc string, refer to terminal
5338 objects rather than terminal ids.
5339
693a2698
EZ
53402009-04-04 Eli Zaretskii <eliz@gnu.org>
5341
5342 * dosfns.c (system_process_attributes) [SYSTEM_MALLOC]: Don't call
5343 ret_lim_data. (Bug#2867)
5344
d5221487
CY
53452009-04-03 Chong Yidong <cyd@stupidchicken.com>
5346
5347 * term.c (produce_stretch_glyph): Reduce width of stretch glyphs
5348 so they don't get wider than the window, matching 2006-01-23
5349 change to the partner function in xdisp.c (Bug#2800).
5350
223509a3
KH
53512009-04-03 Kenichi Handa <handa@m17n.org>
5352
5353 * print.c (print_object): Make each lowest sub_char_table start a
5354 new line (Bug#2866).
5355
74fcd0b1
KH
53562009-04-02 Kenichi Handa <handa@m17n.org>
5357
5358 * fontset.c (fontset_font): Record no-font when a fontset
5359 explicitly tells not to try another font-specs.
5360
c542407d
SM
53612009-03-30 Pierre Poissinger <pierre.poissinger@gmail.com> (tiny change)
5362
5363 * charset.c (map_charset_for_dump): Add missing UNGCPRO.
5364
e3869731
KH
53652009-03-30 Kenichi Handa <handa@m17n.org>
5366
d8d2f142
KH
5367 * fontset.c (fontset_from_font): Specify only registry in a
5368 font-spec for all characters supported by that registry.
5369
e3869731
KH
5370 * ftfont.c: Fix previous change. Define ftfont_variation_glyphs
5371 even if HAVE_M17N_FLT is not defined.
5372
5da5f805
CY
53732009-03-29 Sebastian Rose <sebastian_rose@gmx.de> (tiny change)
5374
5375 * ftfont.c: Conditionalize prototyping and use of
5376 ftfont_variation_glyphs.
5377
ab226c50
SM
53782009-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
5379
9628fed7
SM
5380 * frame.c (delete_frame): Work around compiler bug.
5381
5382 * editfns.c (general_insert_function): Adjust to insdel.c changes.
5383 * insdel.c (prepare_to_modify_buffer, signal_before_change):
5384 Some more EMACS_INT.
5385 * lisp.h (copy_text, count_size_as_multibyte): Fix last change.
5386
5387 * xdisp.c (dump_glyph): Fix typo.
5388
ae19ba7c
SM
5389 * insdel.c (move_gap, move_gap_both, gap_left, gap_right)
5390 (adjust_markers_gap_motion, adjust_markers_for_delete)
5391 (adjust_markers_for_insert, adjust_point)
5392 (adjust_markers_for_replace, make_gap_larger, make_gap_smaller)
5393 (make_gap, copy_text, count_size_as_multibyte, insert)
5394 (insert_and_inherit, insert_before_markers)
5395 (insert_before_markers_and_inherit, insert_1)
5396 (count_combining_before, count_combining_after, insert_1_both)
5397 (insert_from_string, insert_from_string_before_markers)
5398 (insert_from_string_1, insert_from_gap, insert_from_buffer)
5399 (insert_from_buffer_1, adjust_after_replace)
5400 (adjust_after_replace_noundo, adjust_after_insert, replace_range)
5401 (replace_range_2, del_range, del_range_1, del_range_byte)
5402 (del_range_both, del_range_2, modify_region)
5403 (prepare_to_modify_buffer, signal_before_change)
5404 (signal_after_change, Fcombine_after_change_execute): Use EMACS_INT
5405 for buffer positions and sizes.
5406 * lisp.h: Adjust prototypes accordingly.
5407
5408 * fileio.c (adjust_markers_for_delete): Move declaration to lisp.h.
5409 (non_regular_inserted, non_regular_nbytes, read_non_regular)
5410 (Finsert_file_contents): Use EMACS_INT for buffer positions.
5411
ab226c50
SM
5412 * fileio.c (Finsert_file_contents): Don't limit size to INT_MAX/4.
5413
46dfb8fb
JD
54142009-03-27 Jan Djärv <jan.h.d@swipnet.se>
5415
5416 * frame.c (x_set_font): If the fullscreen property is non-nil, adjust
5417 lines and columns so we keep the same pixel height and width.
5418
5419 * xterm.c (handle_one_xevent): Call x_handle_net_wm_state if
5420 the property _NET_WM_STATE has changed.
46dfb8fb
JD
5421 (x_handle_net_wm_state): New function to update frame parameter
5422 fullscreen.
5423 (x_term_init): Initialize atoms for _NET_WM_STATE.
5424
5425 * xterm.h (struct x_display_info): Add atoms for _NET_WM_STATE.
5426
d347e494
SM
54272009-03-27 Kevin Ryde <user42@zip.com.au>
5428
5429 * keyboard.c (tty_read_avail_input): Don't treat a -1 return from
5430 Gpm_GetEvent as an error that justifies closing the filedescriptor.
5431 * term.c (close_gpm): Get the filedescriptor as a (new) parameter.
5432 (Fgpm_mouse_stop): Pass that new parameter.
5433 * termhooks.h (close_gpm): Adjust prototype.
5434
84db11d6
SM
54352009-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
5436
c95a5008
SM
5437 * lisp.h (Fx_focus_frame): Declare.
5438
84db11d6
SM
5439 * callint.c (Fcall_interactively): For '^' just delegate the work to
5440 handle-shift-selection.
5441 (syms_of_callint): Move declaration of shift-select-mode to simple.el.
5442
0a1958d6
CY
54432009-03-24 Chong Yidong <cyd@stupidchicken.com>
5444
0bfdff23
CY
5445 * editfns.c (Ffloat_time): Doc fix (Bug#2768).
5446
0a1958d6
CY
5447 * data.c (Qinteractive_form): New variable.
5448 (Finteractive_form): Use it.
5449
5450 * eval.c (Fcommandp): Use Qinteractive_form.
5451
58aec0d6
JR
54522009-03-24 Jason Rumney <jasonr@gnu.org>
5453
5454 * fileio.c (Fsubstitute_in_file_name): Always work on a copy.
5455 Calculate total size precisely. Decode environment variables
5456 before substituting. (Bug#38)
5457
553dd618
KH
54582009-03-24 Kenichi Handa <handa@m17n.org>
5459
5460 * font.c (find_font_encoding): Return Qnil for unsupported
639239cf 5461 encoding (Bug#2722).
553dd618 5462
c39ea606
JD
54632009-03-23 Jan Djärv <jan.h.d@swipnet.se>
5464
5465 * gtkutil.c (xg_display_open): Assign a value to gdpy_def, check
5466 that gdpy is set.
5467
bc9b2b5e
AM
54682009-03-22 Alan Mackenzie <acm@muc.de>
5469
5470 * callint.c (Finteractive): Clarify the doc string - even
5471 promptless elements need \n separators.
5472
9f995a76
JR
54732009-03-22 Jason Rumney <jasonr@gnu.org>
5474
5475 * w32term.c (syms_of_w32term): Doc fix for
5476 x-use-underline-position-properties.
5477
22749e9a
EZ
54782009-03-21 Eli Zaretskii <eliz@gnu.org>
5479
5480 * w32.c (getpwuid): Change argument type to unsigned.
5481 (struct w32_id): Change type of `rid' member to unsigned.
5482 (w32_cached_id, w32_add_to_cache, get_name_and_id): Change type of
5483 argument ID to unsigned. All callers changed.
5484 (getuid, geteuid, getgid, getegid): Change return type to unsigned.
5485
e00553bf
EZ
54862009-03-20 Eli Zaretskii <eliz@gnu.org>
5487
5488 * editfns.c (Fuser_uid, Fuser_real_uid): If UID as EMACS_INT is
5489 negative, produce a float value.
5490
5491 * dired.c (make_uid, make_gid): New functions.
5492 (Ffile_attributes): Use them to avoid negative UID and GID.
5493
f761d6b6
JB
54942009-03-20 Juanma Barranquero <lekktu@gmail.com>
5495
5496 * keyboard.c (Fcurrent_idle_time): Reflow docstring.
5497 (syms_of_keyboard) <command-hook-internal, input-method-function>:
5498 Fix typos in docstrings.
5499
d507f8d7
KH
55002009-03-19 Kenichi Handa <handa@m17n.org>
5501
5502 * fontset.c (Fset_fontset_font): When a spec of ASCII font is
f761d6b6
JB
5503 changed, use font_load_for_lface to get a new font object.
5504 Call free_realized_fontset after handling ASCII font change.
d507f8d7
KH
5505
5506 * frame.c (x_set_font): Handle the case that ARG is a cons.
5507
c68845e0
GM
55082009-03-19 Glenn Morris <rgm@gnu.org>
5509
5510 * fileio.c (Fsubstitute_in_file_name): Doc fix.
5511
bfa49dd1
CY
55122009-03-19 Chong Yidong <cyd@stupidchicken.com>
5513
5514 * indent.c (Fvertical_motion): Undo 2005-01-19 change (Bug#2694).
5515
8458d4c1
KH
55162009-03-19 Kenichi Handa <handa@m17n.org>
5517
5518 * charset.c (load_charset_map_from_file): When a mapfile can't be
5519 loaded, signal an error.
5520
78e7d1fe
EZ
55212009-03-18 Eli Zaretskii <eliz@gnu.org>
5522
5523 * dired.c (Ffile_attributes): Make sure UID and GID are always
5524 positive, even if the value is too large for a positive EMACS_INT.
5525 Doc fix.
5526
5527 * editfns.c (Fuser_login_name): Support float arguments. Doc fix.
5528
5da9fdfa
YM
55292009-03-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5530
5531 * xmenu.c (xdialog_show): Move Fredisplay call ...
5532 (Fx_popup_dialog): ... here.
5533
7519c40d
SM
55342009-03-18 Stefan Monnier <monnier@iro.umontreal.ca>
5535
5536 * dired.c (file_name_completion): Disable the first optimization just
5537 installed, since it is not implemented correctly.
5538
2cd298e2
SM
55392009-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
5540
5541 * dired.c (file_name_completion): Check completion-ignored-extensions
c95a5008 5542 only if the entry can affect bestmatch.
2cd298e2
SM
5543 Stop the search early, as Ftry_completion already does.
5544
48d37adf
CY
55452009-03-17 Chong Yidong <cyd@stupidchicken.com>
5546
e10c9c93 5547 * minibuf.c (Vminibuffer_completion_confirm): Doc fix.
48d37adf 5548
9286b16a
CY
55492009-03-15 Chong Yidong <cyd@stupidchicken.com>
5550
5551 * keyboard.c (parse_menu_item): Don't display remappings as menu
5552 equivalent bindings (Bug#788).
5553
f7b146dc
JR
55542009-03-15 Jason Rumney <jasonr@gnu.org>
5555
5556 * w32term.h (WM_EMACS_PAINT): New message.
5557 * w32term.c (w32_read_socket): Use it instead of WM_PAINT.
5558 * w32fns.c (w32_wnd_proc): Change WM_PAINT to WM_EMACS_PAINT
5559 before passing to lisp thread. (Bug#950)
5560
f761d6b6 55612009-03-14 David Reitter <david.reitter@gmail.com>
c6c62e78 5562
d93f9575
CY
5563 * nsterm.m (ns_shutdown_properly, -terminate): Remove global state
5564 variable as it was never reset.
5565 (ns_term_init): Remove initialization of Lisp-settable defaults
5566 and ns_expand_space.
5567 (-setPanelFromDefaultValues): Remove ns_expand_space.
5568 (-showPreferencesWindow): Send new KEY_NS_SHOW_PREFS key.
5569 * nsfont.m (nsfont_open): Remove ns_expand_space, assume -0.5
c6c62e78
DR
5570 i.e. no additional spacing, similar to Carbon port.
5571
d93f9575
CY
5572 * nsterm.h: Define KEY_NS_SHOW_PREFS key.
5573 * nsfns.m (ns-popup-prefs-panel): Remove.
c6c62e78 5574
305018ec
JD
55752009-03-14 Jan Djärv <jan.h.d@swipnet.se>
5576
5577 * sound.c (alsa_configure): Remove call to deprecated
5578 snd_pcm_sw_params_set_xfer_align.
5579
f761d6b6 55802009-03-14 Stephen Berman <stephen.berman@gmx.net>
4a02423f
JD
5581
5582 * gtkutil.c (xg_tool_bar_callback): Set focus back to the frame
5583 after clicking in a detached tool bar.
5584 (xg_tool_bar_proxy_callback): Remove call to Fx_focus_frame.
5585
46e722a9
SM
55862009-03-13 Stefan Monnier <monnier@iro.umontreal.ca>
5587
348db3dd
SM
5588 * fontset.c (fontset_from_font, Ffontset_info): YAILOM (Yet another
5589 int/Lisp_Object mixup).
46e722a9 5590
a3d16f39
KH
55912009-03-13 Kenichi Handa <handa@m17n.org>
5592
5593 * fontset.c (Ffontset_info, check_fontset_name): New arg frame.
fe24f56a 5594 Handle NAME nil and t correctly. Callers changed.
a3d16f39
KH
5595 (font_def_arg, add_arg, from_arg, to_arg): Delete them.
5596 (set_fontset_font): Change ARG to a vector. Handle range_list in
5597 ARG correctly.
5598 (Fset_fontset_font): Fix the case that TARGET is both a script
fe24f56a 5599 name and charset name. Adjust the arg to set_fontset_font for
a3d16f39
KH
5600 the above change.
5601 (fontset_from_font): Fix previous change.
fe24f56a 5602 (Ffontset_info): Adjust for the 2008-07-09 change of fontset
a3d16f39
KH
5603 entry. If FONTSET is the default fontset, don't set the extra
5604 slot of the returning char-table.
5605
b066e6b6
JB
56062009-03-12 Juanma Barranquero <lekktu@gmail.com>
5607
5608 * nsfns.m (Fx_close_connection): Doc fix.
5609 (Fns_do_applescript): Reflow docstring.
5610 (Fns_hide_others, Fns_hide_emacs, Fns_convert_utf8_nfd_to_nfc)
5611 (Fx_display_pixel_width, Fx_display_pixel_height)
5612 (Fns_display_usable_bounds, Fx_display_planes, Fx_show_tip):
5613 Fix typos in docstrings.
5614 (Fns_set_alpha): Fix typos in error messages.
5615
d472514e 56162009-03-12 David Reitter <david.reitter@gmail.com>
d6220c13 5617
d472514e 5618 * termhooks.h [HAVE_NS]: Define NS_NONKEY_EVENT to be used for
d6220c13
DR
5619 non-key system events on NS. Formerly, NON_ASCII_KEYSTROKE_EVENT
5620 were used for such events.
5621
d472514e
JB
5622 * nsterm.m (newFrame, openFile, fulfillService, changeFont)
5623 (toggleToolbar, performDragOperation, runHelp): Use it.
d6220c13 5624
d472514e 5625 * keyboard.c (parse_menu_item) [HAVE_NS]: Treat new event like
d6220c13
DR
5626 NON_ASCII_KEYSTROKE_EVENT, but set used_mouse_menu.
5627
fb930676
KH
56282009-03-11 Kenichi Handa <handa@m17n.org>
5629
ff85581a
KH
5630 * font.h (font_open_by_spec): Extern it.
5631
c50b7e98
KH
5632 * font.c (font_open_by_spec): New function.
5633 (font_open_by_name): Use font_open_by_spec.
5634
fb930676
KH
5635 * frame.c (x_set_font): When ARG is a font-object, don't alter the
5636 fontset of the frame.
5637
5638 * fontset.c (Fset_fontset_font): When a font for ASCII is changed,
5639 modify the default font of frames that use this fontset.
5640 (num_auto_fontsets): New variable.
5641 (fontset_from_font): Use num_auto_fontsets to decide a fontset
5642 name. Be sure to set FONTSET_ASCII to the correct font name.
5643 (update_auto_fontset_alist): New function.
5644
df4e8455
JB
56452009-03-11 Juanma Barranquero <lekktu@gmail.com>
5646
5647 * makefile.w32-in: Update dependencies.
5648
0a375797
AR
56492009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
5650
5651 * nsfns.m (syms_of_nsfns): Remove Qbuffered.
5652
61313fa3
SM
56532009-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
5654
5655 * buffer.c (Fswitch_to_buffer): Revert part of 2008-10-21's change.
5656
b55103fb
CY
56572009-03-10 Chong Yidong <cyd@stupidchicken.com>
5658
5659 * lread.c (Feval_buffer): Doc fix.
5660
dde2559c
KH
56612009-03-09 Kenichi Handa <handa@m17n.org>
5662
5663 * charset.c (Qfile_name_handler_alist): Extern it.
5664 (load_charset_map_from_file): Temporarily bind
5665 `file-name-handler-alist' to nil while calling openp. (Bug#2435)
5666
df4e8455 56672009-03-06 Aaron Ecay <aaronecay@gmail.com> (tiny change)
340e08a4 5668
47f588bb
GM
5669 * nsterm.m (ns_draw_vertical_window_border): Draw 1 pixel wide,
5670 not two, and use NSRectFill instead of NSDrawGroove. (Bug#2352)
340e08a4 5671
4ddf94bd
AR
56722009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
5673
4c9bdfc2
AR
5674 * nsterm.m: Include <signal.h> for SIGTERM used in ns_term_shutdown.
5675 (x_set_window_size): Change back to calculated method of setting
5676 toolbar height under Cocoa. (Bug#2546)
4ddf94bd
AR
5677 (EmacsView-windowWillUseStandardFrame:defaultFrame:): New method.
5678 (EmacsView-drawRect:): Completely shortcircuit if ns_in_resize.
5679
fe41ae9e
AR
5680 * nsfns.m (ns_appkit_version_int): Fix typo in the version macro.
5681
4c9bdfc2
AR
5682 * nsmenu.m (EmacsMenu-addItemWithWidgetValue:): Don't add
5683 accelerator in parens under GNUstep.
5684
825d0875
KH
56852009-03-06 Kenichi Handa <handa@m17n.org>
5686
5687 These changes are to detect incorrect composition sequence without
f3b3be74 5688 looking ahead the source. (Bug#2370)
825d0875
KH
5689
5690 * coding.h: Include "composite.h".
5691 (enum compisition_state): New enum.
5692 (struct compisition_status): New struct.
5693 (struct iso_2022_spec): New member cmp_status.
5694 (struct emacs_mule_spec): New struct.
5695 (struct coding_system): New members ctext_extended_segment_len and
5696 embedded_utf_8. Change the union member
5697 spec.emacs_mule_full_support to spec.emacs_mule.
5698
5699 * coding.c (CODING_ISO_CMP_STATUS): New macro.
5700 (CODING_ISO_EXTSEGMENT_LEN, CODING_ISO_EMBEDDED_UTF_8): New macros.
98a326f7 5701 (MAX_ANNOTATION_LENGTH): Define to 5.
825d0875
KH
5702 (ADD_COMPOSITION_DATA): New arg nbytes.
5703 (emacs_mule_char): New arg cmp_status.
5704 (DECODE_EMACS_MULE_COMPOSITION_CHAR): Delete it.
5705 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): New arg c.
5706 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New arg c.
5707 (DECODE_EMACS_MULE_21_COMPOSITION): Delete the arg c.
5708 (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Likewise.
5709 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Likewise.
5710 (DECODE_EMACS_MULE_COMPOSITION_START): New macro.
5711 (EMACS_MULE_COMPOSITION_END): New macro.
5712 (emacs_mule_finish_composition): New function.
5713 (EMACS_MULE_MAYBE_FINISH_COMPOSITION): New macro.
5714 (decode_coding_emacs_mule): Avoid long looking ahead while
5715 handling composition.
5716 (DECODE_COMPOSITION_RULE): Argument changed to rule and nbytes.
5717 (ENCODE_COMPOSITION_RULE): New macro.
5718 (finish_composition): New function.
5719 (MAYBE_FINISH_COMPOSITION): Call finish_composition.
5720 (DECODE_COMPOSITION_START): New implementation.
5721 (DECODE_COMPOSITION_END): Likewise.
5722 (STORE_COMPOSITION_RULE): New macro.
5723 (decode_coding_iso_2022): Avoid long looking ahead while handling
5724 composition, CTEXT extended segment, and embedded UTF-8.
5725 (setup_coding_system): For a coding of type iso-2022, reset
5726 CODING_ISO_EXTSEGMENT_LEN (coding) and
5727 CODING_ISO_EMBEDDED_UTF_8 (coding).
5728 (get_translation): Delete arguments last_block, from_nchars,
5729 to_nchars. Callers changed.
5730 (produce_chars): Don't modify charbuf. Adjusted for the change of
5731 get_translation.
98a326f7 5732 (produce_composition): Adjust for the new annotation sequence.
825d0875 5733 (handle_composition_annotation): Likewise.
98a326f7 5734 (consume_chars): Adjust for the change of get_translation.
825d0875 5735
ccbc4452
AR
57362009-03-05 Adrian Robert <Adrian.B.Robert@gmail.com>
5737
4ddf94bd 5738 * nsterm.m (ns_select): Shortcircuit if reentrant call. (Bug#2564)
ccbc4452 5739
988a7ddb
KH
57402009-03-05 Kenichi Handa <handa@m17n.org>
5741
5742 * font.c (font_select_entity): New function.
5743 (font_find_for_lface): Use font_select_entity to select a font.
5744
5745 * fontset.c (fontset_find_font): If a font found without
a8a3728b 5746 restricting to the characters C doesn't support C, try to find a
988a7ddb
KH
5747 font with C restriction.
5748
98a326f7 57492009-03-04 Nikolaj Schumacher <me@nschum.de>
2f462d73 5750
be1bce46 5751 * nsfont.m (nsfont_draw): Compare ns_antialias_text against lisp value.
2f462d73 5752
10ea2b82
JR
57532009-03-04 Jason Rumney <jasonr@gnu.org>
5754
2c93b248 5755 * w32fns.c (w32_wnd_proc): Only ignore IME messages for the
4891ba1d 5756 characters that have already been read. (Bug#2569)
2c93b248 5757
10ea2b82
JR
5758 * image.c (xbm_read_bitmap_data, png_load, svg_load_image):
5759 Log an error message if check_image_size failed.
5760 (xpm_load_image, pbm_load, jpeg_load, tiff_load, gif_load)
4891ba1d 5761 (gs_load): Mention max-image-size in size error message. (Bug#2560)
10ea2b82 5762
71a0c011
EZ
57632009-03-02 Eli Zaretskii <eliz@gnu.org>
5764
5765 * callproc.c (Fcall_process): Bind inhibit-modification-hooks to t
5766 when decoding process output.
5767
2f63bba8
RS
57682009-03-01 Richard M Stallman <rms@gnu.org>
5769
5770 * m/mips.h (DATA_SEG_BITS, XUINT, XSET): Definitions disabled.
5771
5772 * emacs.c (gdb_data_seg_bits) [USE_LSB_TAG]: Make it 0.
5773
0a9564cb
EZ
57742009-02-28 Eli Zaretskii <eliz@gnu.org>
5775
5776 * coding.c (decode_coding_utf_8, decode_coding_utf_16)
5777 (decode_coding_emacs_mule, decode_coding_iso_2022)
5778 (encode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
5779 (decode_coding_raw_text, decode_coding_charset)
5780 (setup_coding_system, decode_eol, decode_coding, consume_chars):
5781 Honor inhibit-eol-conversion. (Bug #2186)
5782
449148b3
JR
57832009-02-28 Jason Rumney <jasonr@gnu.org>
5784
5785 * coding.c (detect_coding_charset): If not checking latin extra,
5786 fail on characters between 0x80 and 0xA0. (Bug#2354)
5787
a4aee864
EZ
57882009-02-28 Eli Zaretskii <eliz@gnu.org>
5789
5790 * coding.c (detect_coding_charset): Fix change from 2008-10-21.
2a1573ff 5791 Also, check iso-latin-*, not only iso-8859-*. (Bug#2497)
a4aee864 5792
d88bee5a
GM
57932009-02-27 Glenn Morris <rgm@gnu.org>
5794
5795 * callint.c (Finteractive): Doc fix.
5796
a808f22d
KH
57972009-02-27 Kenichi Handa <handa@m17n.org>
5798
5799 * lread.c (read_escape): Signal an error for invalid \UXXXXXXXX.
5800
caf8d60c
CY
58012009-02-27 Chong Yidong <cyd@stupidchicken.com>
5802
5803 * font.c (font_style_to_value): Set value for unknown symbols to
5804 100 instead of 255.
b61137ea
CY
5805 (weight_table, slant_table, width_table): Treat "unspecified" as
5806 the default value.
caf8d60c 5807
1a0de25c
JB
58082009-02-26 Juanma Barranquero <lekktu@gmail.com>
5809
5810 * fileio.c (Fnext_read_file_uses_dialog_p): Fix typo in docstring.
5811
8fc45744
JB
58122009-02-25 Juanma Barranquero <lekktu@gmail.com>
5813
107bd7d1
JB
5814 * lread.c (Fload): Stop checking Vloads_in_progress and signal
5815 error as soon as a recursive load is detected.
8fc45744 5816
f097e223
AR
58172009-02-24 Adrian Robert <Adrian.B.Robert@gmail.com>
5818
5819 * nsterm.m (ns_ring_bell): Convert rect to window coordinates
5820 before caching.
5821
8810a12f
KH
58222009-02-24 Kenichi Handa <handa@m17n.org>
5823
5824 * fontset.c (fontset_find_font): Fix the condition for checking
5825 unavailable font.
5826
2c7d1565
GM
58272009-02-24 Glenn Morris <rgm@gnu.org>
5828
5829 * xfaces.c (Finternal_set_font_selection_order): Remove leading
5830 whitespace that confuses documentation.
5831
a20878b6
MB
58322009-02-23 Miles Bader <miles@gnu.org>
5833
5834 * process.c (Flist_system_processes, Fprocess_attributes)
5835 (syms_of_process): Rename `system-process-attributes' to
5836 `process-attributes'.
5837
b3b58c01
AS
58382009-02-22 Andreas Schwab <schwab@linux-m68k.org>
5839
1b3b981b
AS
5840 * coding.h (struct coding_system): Make safe_charsets a pointer to
5841 unsigned char.
5842 * coding.c (CODING_ISO_REQUEST): Check for safe_charsets content
5843 being 255.
5844 (SAFE_CHARSET_P): Likewise.
5845 (setup_iso_safe_charsets): Properly setup safe_charsets.
5846 (Fdefine_coding_system_internal): Likewise.
5847 (setup_coding_system): Likewise. Remove unneeded casts.
5848 (detect_coding_iso_2022): Compare Viso_2022_charset_list with
5849 CODING_ATTR_CHARSET_LIST, not CODING_ATTR_SAFE_CHARSETS. Remove
5850 unneeded casts.
5851
b3b58c01
AS
5852 * insdel.c (del_range_2): Don't modify gap contents when called
5853 from decode_coding_object. (Bug#1809)
5854
0b6f228c
CY
58552009-02-21 Chong Yidong <cyd@stupidchicken.com>
5856
5857 * data.c (syms_of_data): Define Qfont_spec, Qfont_entity, and
5858 Qfont_object.
5859 (Ftype_of): Recognize font objects.
5860
5861 * lisp.h: Define Qfont_spec, Qfont_entity, Qfont_object extern.
5862
5863 * font.c (Qfont_spec, Qfont_entity, Qfont_object): Definitions
5864 moved to data.c.
5865
52f8870b
AR
58662009-02-20 Adrian Robert <Adrian.B.Robert@gmail.com>
5867
5868 * nsterm.m (x_make_frame_invisible): Unset async_visible,
5869 async_iconified. Based on a patch by Christian Lynbech
5870 <christian.lynbech@tieto.com>.
5871 (EmacsView-windowDidMiniaturize:): Unset async_visible.
5872
7087d5e9
GM
58732009-02-20 Glenn Morris <rgm@gnu.org>
5874
5875 * syntax.c (Fskip_chars_forward): Fix doc typo.
5876
41d2ceef
CY
58772009-02-20 Chong Yidong <cyd@stupidchicken.com>
5878
5879 * keymap.c (Fkeymap_parent): Doc fix (Bug#2391).
5880
1a3b7ca6
CY
58812009-02-19 Chong Yidong <cyd@stupidchicken.com>
5882
5883 * xfns.c (Fx_create_frame): Give Xft driver a higher priority.
5884
73cce38d
KH
58852009-02-19 Kenichi Handa <handa@m17n.org>
5886
5887 * coding.c (detect_coding): Preserve coding->mode.
2bc550cb 5888 Don't overflow coding->carryover. (Bug#2370)
73cce38d 5889
a51092ee
DN
58902009-02-18 Dan Nicolaescu <dann@ics.uci.edu>
5891
5892 * m/ibmrs6000.h (ADDR_CORRECT): Restore, removed by mistake on 2008-07-23.
5893
c423ecca
KH
58942009-02-18 Kenichi Handa <handa@m17n.org>
5895
5896 * font.c (font_check_otf_features): Fix handling of `nil' element.
5897 (Ffont_spec): Describe :lang and :otf in the docstring.
5898
4c1958f4
AS
58992009-02-16 Andreas Schwab <schwab@suse.de>
5900
5901 * coding.c (Fcheck_coding_systems_region): Fix test for unibyte
5902 string.
5903
5704f39a
KH
59042009-02-16 Kenichi Handa <handa@m17n.org>
5905
5906 * coding.c (Fcheck_coding_systems_region): Fix typo; Qt -> Qnil.
a057d86a 5907 (Bug#1723)
5704f39a 5908
8f0085aa
CY
59092009-02-14 Chong Yidong <cyd@stupidchicken.com>
5910
a057d86a 5911 * dispextern.h (struct iterator_stack_entry): New line_wrap member.
8f0085aa
CY
5912
5913 * xdisp.c (push_it, pop_it): Save and restore line_wrap.
5914 (handle_line_prefix): Suppress wrapping of wrap prefixes.
5915
aff01dd9
EZ
59162009-02-14 Eli Zaretskii <eliz@gnu.org>
5917
5918 * msdos.c (MAX_SCREEN_BUF): New macro.
5919 (IT_write_glyphs): Make screen_buf[] always be MAX_SCREEN_BUF-long.
5920 Encode the entire run of glyphs sharing the same face, instead of
5921 doing that one glyph at a time (fixes a bug with displaying
5922 double-size characters).
5923
ba301db3
AR
59242009-02-13 Adrian Robert <Adrian.B.Robert@gmail.com>
5925
5926 * nsfns.m (ns-read-file-name): BLOCK_INPUT while showing dialog.
5927
5928 * nsmenu.m (pop_down_menu): Check popup_activated_flag.
5929 (ns_popup_dialog, EmacsDialogPanel-runDialogAt:): Let
a057d86a 5930 pop_down_menu do the cleanup work as it is always called. (Bug#2154)
ba301db3
AR
5931
5932 * nsfont.m (nsfont_make_fontset_for_font): For now, don't try to
a057d86a 5933 set fontset font for "mathematical-" sub-scripts. (Bug #2218)
ba301db3 5934
51d861de
SM
59352009-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
5936
ac146f82 5937 * keyboard.c (adjust_point_for_property): Allow stopping between two
51d861de
SM
5938 invisible areas.
5939
7fed8996
JR
59402009-02-12 Jason Rumney <jasonr@gnu.org>
5941
631ea4fb
JR
5942 * w32font.c (check_face_name): Check for fake helv. (Bug#2275)
5943 (add_font_entity_to_list): Call check_face_name even when family
5944 is unspecified.
5945
cb4a3e42
JR
5946 * w32term.c (x_display_pixel_height, x_display_pixel_width):
5947 Release DC when finished. Use NULL window to refer to desktop.
631ea4fb 5948 (w32_term_init): Use NULL window to refer to desktop. (Bug#460)
cb4a3e42 5949
7fed8996 5950 * w32font.c (add_font_entity_to_list): Fix check for substituted
631ea4fb 5951 raster fonts. (Bug#2219)
7fed8996 5952
895416e3
KH
59532009-02-12 Kenichi Handa <handa@m17n.org>
5954
5955 * composite.c (MAX_AUTO_COMPOSITION_LOOKBACK): New macro.
5956 (composition_gstring_width): Fix handling of LGLYPH_YOFF.
5957 (autocmp_chars): Use fast_looking_at. Don't compose more
1dacf998 5958 characters than MAX_COMPOSITION_COMPONENTS.
895416e3
KH
5959 (find_automatic_composition): While looking forward and backward,
5960 check static composition. Fix where to stop looking forward.
5961 (composition_adjust_point): Fix checking of static composition.
5962 (Fcomposition_get_gstring): Pay attention to
1dacf998 5963 MAX_COMPOSITION_COMPONENTS.
895416e3
KH
5964
5965 * lisp.h (fast_looking_at): Extern it.
5966
5967 * search.c (fast_looking_at): New function.
5968
51d861de 5969 * term.c (encode_terminal_code): Adjust for the change of
895416e3
KH
5970 <struct glyph>.u.cmp.to.
5971 (append_composite_glyph): Likewise.
5972
51d861de 5973 * xdisp.c (fill_gstring_glyph_string): Adjust for the change of
895416e3
KH
5974 <struct glyph>.u.cmp.to. Check if the glyph belongs to the same
5975 composition.
51d861de 5976 (append_composite_glyph): Adjust for the change of
895416e3
KH
5977 <strcut glyph>.u.cmp.to.
5978
8510724d
JB
59792009-02-11 Juanma Barranquero <lekktu@gmail.com>
5980
5981 * casetab.c (init_casetab_once):
5982 * coding.c (ALLOC_CONVERSION_WORK_AREA):
5983 * font.c (font_update_lface):
5984 * fontset.c (Fnew_fontset):
5985 * ftfont.c (ftfont_drive_otf):
5986 * xfont.c (xfont_open):
5987 * xftfont.c (xftfont_get_xft_draw): Remove spurious semicolons.
5988
294fa707
SM
59892009-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
5990
5991 * fileio.c (Fwrite_region): !NILP -> CONSP.
5992
b5bfebec
AS
59932009-02-10 Andreas Schwab <schwab@suse.de>
5994
5995 * process.c (send_process): Properly relocate pointer into data
adab88bd 5996 when using encoded data. (Bug#2272)
b5bfebec 5997
cb84a2be
KH
59982009-02-08 ARISAWA Akihiro <ari@mbf.sphere.ne.jp>
5999
6000 * coding.c (detect_coding_charset): Fix previous change.
6001
89e09428
JR
60022009-02-08 Jason Rumney <jasonr@gnu.org>
6003
6004 * w32fns.c (w32_hide_hourglass): Handle case where frame
adab88bd 6005 disappeared while hourglass was displayed. (Bug #2193)
89e09428 6006
4470a277
AS
60072009-02-07 Andreas Schwab <schwab@suse.de>
6008
6009 * unexelf.c (unexec): Fix error message.
6010
3175b12a
AR
60112009-02-07 Adrian Robert <Adrian.B.Robert@gmail.com>
6012
6013 * nsterm.m (EmacsApp-sendEvent:): Defer NSApplicationDefined event
adab88bd 6014 when modal window is active. (Bug #2152)
3175b12a
AR
6015 (applicationShouldTerminate:): Remove now-unneeded while loop
6016 around NSRunAlertPanel.
6017
6018 * nsmenu.m (popupSession): New file-global variable.
6019 (pop_down_menu): End the popupSession before closing dialog.
6020 (ns_popup_dialog): BLOCK_INPUT around dialog presentation.
6021 (EmacsDialogPanel-runDialogAt:): Don't place window (superfluous),
6022 don't query NSApp for events (just sleep instead).
6023
8434d0b8
EZ
60242009-02-07 Eli Zaretskii <eliz@gnu.org>
6025
51d861de
SM
6026 * coding.c (syms_of_coding) <translation-table-for-input>:
6027 Modify doc string to discourage use for character code unification.
8434d0b8 6028
aa82edfd
CY
60292009-02-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6030
6031 * atimer.c (run_timers): Update pending_atimers.
6032
2d283c7c
CY
60332009-02-06 Chong Yidong <cyd@stupidchicken.com>
6034
eb306cab
CY
6035 * image.c (svg_load_image): Fix last change.
6036
2d283c7c
CY
6037 * xfns.c (Fx_create_frame): Signal an error if no font is
6038 found (Bug#2147).
6039
4d8e170e
JB
60402009-02-05 Juanma Barranquero <lekktu@gmail.com>
6041
6042 * character.c (syms_of_character) <script-representative-chars>:
6043 Fix typo in docstring.
6044
c96169a0
AR
60452009-02-04 Adrian Robert <Adrian.B.Robert@gmail.com>
6046
6047 * nsmenu.m (pop_down_menu): New function.
6048 (ns_popup_dialog): Call it on unwind.
6049 (EmacsDialogPanel-runDialogAt:): Check popup_activated_flag and
6050 call timer_check() (Bug#2154).
6051 (EmacsMenu-menuNeedsUpdate:): Don't call ns_update_menu if
6052 handling_signal is set.
6053 (EmacsMenu-fillWithWidgetValue:): Set submenu title.
6054
31fd7c5c 6055 * config.in: Get rid of COCOA_EXPERIMENTAL_CTRL_G.
c96169a0
AR
6056
6057 * s/darwin.h: Same and NO_SOCK_SIGIO as well.
6058
6059 * nsterm.m (ns_read_socket): Same and don't set handling_signal.
6060
51d861de
SM
6061 * keyboard.c (poll_for_input_1, handle_async_input):
6062 Set handling_signal under HAVE_NS.
c96169a0 6063
aacd8ba1
GM
60642009-02-04 Glenn Morris <rgm@gnu.org>
6065
6066 * fileio.c (Fwrite_region): Doc fix (mention annotate-functions).
6067
4cb75c4b
KH
60682009-02-04 Kenichi Handa <handa@m17n.org>
6069
6070 * Makefile.in (composite.o): Depends on frame.h and termhooks.h.
6071
6072 * charset.c (Fchar_charset): New optional arg restriction.
6073
6074 * coding.h (coding_system_charset_list): Extern it.
6075
6076 * coding.c (coding_system_charset_list): New function.
6077
6078 * composite.c: Include coding.h and termhooks.h.
6079 (composition_gstring_p): Fix for the terminal case.
6080 (composition_gstring_width): Likewise.
6081 (fill_gstring_body): Likewise.
6082 (autocmp_chars): For terminal, call Fcomposition_get_gstring with
6083 the frame.
6084 (composition_compute_stop_pos): Adjust cmp_it->stop_pos if point
6085 is within a composition.
867d4bb3 6086 (Fcomposition_get_gstring): Fix the terminal case.
4cb75c4b
KH
6087
6088 * term.c (encode_terminal_code): Fix handling of composition.
6089 (produce_composite_glyph): For static composition, get pixel_width
6090 from struct composition.
6091
826ba17e
AS
60922009-02-02 Andreas Schwab <schwab@suse.de>
6093
6094 * unexelf.c (unexec): Handle unaligned bss offset.
6095
8ad093db
AR
60962009-02-01 Adrian Robert <Adrian.B.Robert@gmail.com>
6097
6098 * nsterm.m (ns_read_socket): Copy 2009-01-29 and 2009-01-30
6099 XT,w32read_socket changes to ns_read_socket.
d0a76a6e 6100
8ad093db
AR
6101 * keyboard.c (handle_interrupt): Don't call
6102 quit_throw_to_read_char() under NS.
d0a76a6e 6103
8ad093db
AR
6104 * blockinput.h: Remove NS-specific code.
6105
4d18a7a2
DN
61062009-01-30 Dan Nicolaescu <dann@ics.uci.edu>
6107
db878925
DN
6108 * dispnew.c (window_change_signal): Don't try to get the size of a
6109 suspended tty frame.
6110 * term.c (Fresume_tty): Resize if the size has changed while the
6111 tty was suspended.
6112
4d18a7a2
DN
6113 * alloc.c (mark_stack): Properly conditionalize previous change.
6114
8984df7c
JB
61152009-01-30 Juanma Barranquero <lekktu@gmail.com>
6116
6117 * w32inevt.c (w32_console_read_socket) [SYNC_INPUT]:
6118 * w32term.c (w32_read_socket) [SYNC_INPUT]:
6119 Remove; this code is not used on Windows.
6120
75f4f1ac
EZ
61212009-01-30 Eli Zaretskii <eliz@gnu.org>
6122
6123 * coding.c (detect_eol, decode_eol): Handle text with DOS-style
6124 EOLs that also has stray ^M characters.
6125
07a1e794
JB
61262009-01-30 Juanma Barranquero <lekktu@gmail.com>
6127
6128 * atimer.c (run_timers, alarm_signal_handler):
6129 * keyboard.c (pending_signals, handle_async_input, init_keyboard):
6130 * w32inevt.c (w32_console_read_socket):
6131 * w32term.c (w32_read_socket):
6132 * xterm.c (XTread_socket): Use "#ifdef SYNC_INPUT" where appropriate.
6133
a8b11cc9
CY
61342009-01-30 Chong Yidong <cyd@stupidchicken.com>
6135
6136 * callproc.c (Vtemp_file_name_pattern): Remove DEFVAR_LISP.
6137 Initialize it as a relative filename pattern.
6138 (init_callproc): Don't initialize Vtemp_file_name_pattern here.
6139 (Fcall_process_region): Simplify temp file creation using
6140 temporary-file-directory.
6141
c279587b
EZ
61422009-01-29 Eli Zaretskii <eliz@gnu.org>
6143
6144 * msdos.c: Rename pending_signals to msdos_pending_signals.
6145 (sig_suspender, sigprocmask): Adjust.
6146
a8fe3242
CY
61472009-01-29 Chong Yidong <cyd@stupidchicken.com>
6148
6149 * keyboard.c (pending_signals): New var.
6150 (poll_for_input, input_available_signal, init_keyboard): Set it.
6151 (process_pending_signals): New function.
6152
6153 * lisp.h (QUIT): Check pending_signals instead of
6154 interrupt_input_pending. Use process_pending_signals.
6155
51d861de 6156 * atimer.c (run_timers, alarm_signal_handler): Update pending_signals.
a8fe3242 6157
51d861de 6158 * process.c (wait_reading_process_output): Use process_pending_signals.
a8fe3242
CY
6159
6160 * sysdep.c (emacs_write): Use process_pending_signals.
6161
6162 * xterm.c (XTread_socket): Update pending_signals.
6163
6164 * w32term.c (w32_read_socket): Update pending_signals.
6165
6166 * w32inevt.c (w32_console_read_socket): Update pending_signals.
6167
6570a1c4
KH
61682009-01-29 Kenichi Handa <handa@m17n.org>
6169
6170 * xftfont.c (xftfont_has_char): New function.
6171 (syms_of_xftfont): Register xftfont_has_char in xftfont_driver.
6172
d72a4afa
AR
61732009-01-29 Adrian Robert <Adrian.B.Robert@gmail.com>
6174
6175 * nsterm.h (EmacsPrefsController.cursorBlinkSlider): Only define
6176 under GNUstep.
6177 (ns_query_color): New declaration.
6178
6179 * nsterm.m (ns_confirm_quit): New variable.
6180 (ns_set_default_prefs, syms_of_nsterm, ns_term_init): Initialize it.
6181 (EmacsApp-applicationShouldTerminate:): Use it.
6182 (EmacsPrefsController): Let user set it.
6183 (ns_query_color): New function.
6184 (ns_defined_color): Use it.
6185 (ns_initialize): Drop.
6186 (ns_term_init): Add two lines from ns_initialize(), and set
6187 input_interrupt_mode to nil.
6188
6189 * image.c (svg_load_image): Don't right-shift background RGB when
6af84d77 6190 obtained from FRAME_BACKGROUND_PIXEL. Under HAVE_NS use ns_query_color.
d72a4afa 6191
9fe78804
KH
61922009-01-28 Kenichi Handa <handa@m17n.org>
6193
6194 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
f088b054
KH
6195 (fontset_get_font_group): Remember that no font-group is specified
6196 for C.
9fe78804 6197
fa57de36
CY
61982009-01-27 Chong Yidong <cyd@stupidchicken.com>
6199
930600e9
CY
6200 * fns.c (concat): Check for string overflow (bug#1787).
6201
fa57de36
CY
6202 * undo.c (undo_limit, undo_strong_limit, Vundo_outer_limit):
6203 Quadruple undo limits (bug#1501).
6204
7179ce7b
KH
62052009-01-27 Kenichi Handa <handa@m17n.org>
6206
6207 * ftfont.c (ftfont_has_char): If the arg FONT is a font-object,
6208 directly use GT_Get_Char_index.
6209
6210 * xftfont.c (struct xftfont_info): New member `index'.
6211
6212 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
51d861de 6213 (Ffontset_font): Adjust for the change of fontset entry.
7179ce7b 6214
5be8fcc0
CY
62152009-01-26 Kenichi Handa <handa@m17n.org>
6216
6217 * fontset.c (fontset_find_font): Fix handling of non-cons return
6218 value of fontset_get_font_group.
6219 (fontset_font): Revert last change.
6220
19ae3e61
JR
62212009-01-26 Jason Rumney <jasonr@gnu.org>
6222
6223 * w32font.c (w32font_list_internal): Return quickly if registry is
6224 unknown. Simplify final return.
6225 (add_font_entity_to_list): Break complex logic down into more
6226 manageable chunks. Move unknown registry check to
6227 w32font_list_internal.
6228
8612b71a
AR
62292009-01-25 Adrian Robert <Adrian.B.Robert@gmail.com>
6230
6231 Changes to remove Feval calls from GUI under NS.
6232
d8038940
JB
6233 * nsterm.h: Move KEY_NS_... definitions here from nsterm.m.
6234 Add NS_TOGGLE_TOOLBAR, NS_PUT_WORKING_TEXT, NS_UNPUT_WORKING_TEXT.
8612b71a
AR
6235 Remove NS_INSERT_WORKING_TEXT, NS_DELETE_WORKING_TEXT.
6236
6237 * nsterm.m: Move KEY_NS_... definitions to nsterm.h.
6238 (EmacsView-toggleToolbar:): Use KEY_NS_TOGGLE_TOOLBAR.
6239 (EmacsView-setMarkedText:,-deleteWorkingText:): Use NS_TEXT_EVENT
6240 instead of NON_ASCII_KEYSTROKE_EVENT.
6241 (EmacsApp-terminate:): Use KEY_NS_POWER_OFF instead of Feval.
6242 (EmacsApp-applicationShouldTerminate:): Query user.
6243 (EmacsPreferencesController-runHelp:): Use KEY_NS_INFO_PREFS
6244 instead of Feval.
6245
6246 * termhooks.h (NS_TEXT_EVENT): New event type under HAVE_NS.
6247
6248 * keyboard.c (kbd_buffer_get_event): Check for it.
6249 (keys_of_keyboard): Define lispy keys for
6250 ns-put/unput-working-text.
6251
6252 * nsmenu.m (ns_popup_dialog): Resync window setting with X and W32
6253 versions.
6254 (EmacsDialog-runDialogAt:): Use NSModalPanelRunLoopMode.
6255
6288ae55
CY
62562009-01-25 Chong Yidong <cyd@stupidchicken.com>
6257
6258 * dispnew.c (buffer_posn_from_coords): Use Fset_buffer instead of
64cc3cf6 6259 setting current_buffer directly. (Bug#2044)
6288ae55 6260
289e7f8f
CY
62612009-01-24 Chong Yidong <cyd@stupidchicken.com>
6262
5ce87308 6263 * fontset.c (fontset_font): If we know there is no font, don't do
d8038940 6264 any work. (Bug#1952, bug#1990).
5ce87308 6265
64cc3cf6 6266 * font.c (font_parse_xlfd): Handle patterns of length < 2. (Bug#1802)
289e7f8f 6267
b3243e6f
AR
62682009-01-23 Adrian Robert <Adrian.B.Robert@gmail.com>
6269
6270 * emacs.c (main): Do fork+exec under --daemon in Cocoa.
d900b2af
AR
6271 (ns_no_defaults): New declaration.
6272 (main): Use it.
e0d2e69a 6273
d900b2af 6274 * nsterm.h (ns_no_defaults): New declaration.
e0d2e69a 6275
d900b2af 6276 * nsfns.m (x_get_string_resource): Don't read when ns_no_defaults.
e0d2e69a 6277
d900b2af
AR
6278 * nsterm.m (ns_no_defaults): New variable.
6279 (ns_initialize): Don't read defaults when ns_no_defaults.
6280 (EmacsView-readSelectionFromPasteboard:)
6281 (writeSelectionToPasteboard:types:): New stubbed-out methods for
d8038940 6282 NSServicesRequests protocol. (Bug#1435)
27521ca6
AR
6283 (ns_dumpglyphs_stretch): New function.
6284 (ns_draw_glyph_string): Use it, parallel Yamamoto Mitsuharu change
d8038940 6285 of 2008-11-15 to other terms. (Bug#615)
b3243e6f 6286
e0d2e69a
AR
6287 * nsimage.m (setPixmapData:): Set to ignore image DPI.
6288
3ac71f5d
CY
62892009-01-23 Giorgos Keramidas <keramida@freebsd.org> (tiny change)
6290
6291 * alloc.c (mark_stack): Use "flushw" instead of "ta 3" assembly
6292 call for Sparc64.
6293
3fe53a83
AR
62942009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
6295
6296 * nsfns.m:
6297 * nsgui.h:
6298 * nsmenu.m:
6299 * nsselect.m:
6300 * nsterm.h:
6301 * nsterm.m: Remove '23' comments that indicated code added during
6302 update from emacs-20 -> emacs-23.
6303
10f87c6f 63042009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
a3b53a85
AR
6305
6306 * nsterm.m (EmavsView-keyDown:): Treat nil as Qnone for
3a88a825 6307 ns_alternate_modifier. (Bug#1217)
a3b53a85 6308
c7cef62d
AR
6309 * nsmenu.m (EmacsMenu-parseKeyEquiv:, addItemWithWidgetValue:):
6310 Display all shortcuts, including those w/o super modifier.
6311
575fb8bd
AR
6312 * nsfns.m (ns-read-file-name): Fix typo in assignment statement.
6313
918b848b
CY
63142009-01-22 Chong Yidong <cyd@stupidchicken.com>
6315
6316 * fileio.c (Vwrite_region_post_annotation_function)
6317 (Vwrite_region_annotation_buffers): New vars.
6318 (build_annotations_unwind): Just reset
6319 Vwrite_region_annotation_buffers.
6320 (Fwrite_region): Initialize Vwrite_region_annotation_buffers.
6321 Call write-region-post-annotation-function.
6322 (build_annotations): Add to Vwrite_region_annotation_buffers if
6323 buffer changes.
6324
a39e2539
AR
63252009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
6326
6327 * nsterm.h (EmacsApp-setAppleMenu:): Conditionalize more correctly on
6328 Tiger.
51d861de
SM
6329 * nsfns.m (ns_do_applescript):
6330 Conditionalize typeUTF16ExternalRepresentation on Tiger.
a39e2539 6331
35ed44db
AR
63322009-01-21 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
6333
6334 * nsterm.m (EV_TRAILER): Always use emacsframe for frame_or_window.
6335
cbe0b5bf
AR
63362009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
6337
6338 * nsmenu.m (NSMENUPROFILE): Change #if style.
4c7077c3 6339
6049d3a0
AR
6340 * nsterm.h (EmacsPrefsController): Add -setPanelFromDefaultValues.
6341
6342 * nsterm.m (x_set_frame_alpha): Add prototype.
a9b4df69
AR
6343 (ns_fake_keydown, EmacsView-keyUp:): New variable and function to
6344 handle Ctrl-tab. (Bug#1841)
6345 (ns_get_color): Use unsigned long long for scanned hex string value.
6346 (ns_term_shutdown): Abort on non SIGTERM signals.
e889fa06 6347 (EmacsPrefsController-setDefaultFont:,-setColors:): Raise the frame.
b71ac3dd 6348 (EmacsPrefsController-setPanelFromDefaultValues): New function.
3a88a825 6349 (EmacsPrefsController-resetToDefaults:): Use it. (Bug#1801)
35ed44db 6350 (ns_font_to_xlfd, ns_fontname_to_xlfd): Remove, unused.
d3810c21 6351 (ns_defined_color): Fix settings of the XColor variable fields:
3a88a825 6352 red,green,blue scale to 2-byte, pixel's parts to 1-byte. (Bug#1663)
cbe0b5bf 6353
d3810c21 6354 * nsimage.m (EmacsImage+allocInitFromFile:): Set to ignore image
3a88a825 6355 DPI. (Bug#1316)
d3810c21
AR
6356 (EmacsImage-setPixelAtX:Y:toRed:green:blue:alpha:): Fix color
6357 values in onTiger section.
4c7077c3 6358
e301e634
CY
63592009-01-19 Chong Yidong <cyd@stupidchicken.com>
6360
7f82490b
CY
6361 * xfaces.c (Finternal_set_lisp_face_attribute, Fx_list_fonts):
6362 Check return value of font_spec_from_name.
64cc3cf6 6363 (Fx_list_fonts): Doc fix. (Bug#1951)
7f82490b
CY
6364
6365 * font.c (font_spec_from_name): Return Qnil if font name could not
6366 be parsed.
6367 (font_parse_name): Treat a `?' character as part of an XLFD.
6368
e301e634
CY
6369 * fns.c (Fsubstring): Doc fix.
6370
1c0db158
KH
63712009-01-19 Kenichi Handa <handa@m17n.org>
6372
51d861de 6373 * ftfont.c (ftfont_lookup_cache): Check the return value of FcFontList.
1c0db158
KH
6374 (ftfont_list): Likewise.
6375
acf20901
JB
63762009-01-18 Juanma Barranquero <lekktu@gmail.com>
6377
fff4e459
JB
6378 * dbusbind.c (Fdbus_register_signal):
6379 * process.c (conv_sockaddr_to_lisp):
6380 * w32fns.c (Fw32_battery_status): Use empty_unibyte_string.
6381
acf20901
JB
6382 * callproc.c (Fgetenv_internal): Doc fix.
6383
e7abcdfb
CY
63842009-01-16 Chong Yidong <cyd@stupidchicken.com>
6385
6386 * xfns.c (x_make_gc): Don't allocate stipple member for gc_values;
6387 it is not even used.
6388
b60861e6
GM
63892009-01-16 Glenn Morris <rgm@gnu.org>
6390
6391 * font.c (Ffont_variation_glyphs): Silence compiler.
6392
8db52afe
JB
63932009-01-15 Juanma Barranquero <lekktu@gmail.com>
6394
6395 * sound.c (SOUND_WARNING): Use _snprintf, for MSVC compatibility.
6396 Reported by David Robinow <drobinow@gmail.com>.
6397
4cddb209
KH
63982009-01-15 Kenichi Handa <handa@m17n.org>
6399
51d861de 6400 * coding.c (detect_coding_system): Fix handling of null_byte_found.
4cddb209 6401
f247f67b
JR
64022009-01-14 Jason Rumney <jasonr@gnu.org>
6403
6404 * frame.c (x_set_font): Always store a font to the font parameter,
fff4e459 6405 never a fontset. (Bug#1562)
f247f67b 6406
f56a4450
KH
64072009-01-14 Kenichi Handa <handa@m17n.org>
6408
6409 * coding.c (TWO_MORE_BYTES): New macro.
fff4e459 6410 (detect_coding_utf_16): Use TWO_MORE_BYTES instead of ONE_MORE_BYTE.
f56a4450 6411
4e99855e
CY
64122009-01-13 Chong Yidong <cyd@stupidchicken.com>
6413
6414 * font.c (font_clear_prop): If clearing the family, clear the font
6415 width index too.
6416
fff4e459 6417 * xfaces.c (Finternal_set_lisp_face_attribute): Revert last change.
4e99855e 6418
24f01470
JB
64192009-01-12 Juanma Barranquero <lekktu@gmail.com>
6420
6421 * sound.c [WINDOWSNT] (SOUND_WARNING): New macro.
6422 (do_play_sound): Use it. Don't pass a hardcoded buffer size to mci
6423 functions, use sizeof.
6424
a41240a3
MR
64252009-01-12 Martin Rudalics <rudalics@gmx.at>
6426
6427 * keyboard.c (read_char): Fix case where last_nonmenu_event
6428 returned a bad value with submenus. (Bug#447)
6429
944636b8
CY
64302009-01-12 Chong Yidong <cyd@stupidchicken.com>
6431
6432 * xfaces.c (Finternal_set_lisp_face_attribute): If setting the
6433 family, clear the font width index too.
6434
0dad7c6f
JR
64352009-01-11 Jason Rumney <jasonr@gnu.org>
6436
6437 * keyboard.c (cmd_error_internal): Exit when errors occur before
6438 frame creation and not in daemon mode. (Bug#1836)
6439
7c2363af
CY
64402009-01-10 Chong Yidong <cyd@stupidchicken.com>
6441
6442 * xdisp.c (pos_visible_p): When iterator stops on the last glyph
6443 of a display vector, backtrack.
6444 (try_window_reusing_current_matrix): Check glyph type before
6445 referencing charpos member.
6446
97b1b294
EZ
64472009-01-10 Eli Zaretskii <eliz@gnu.org>
6448
6449 Fix Bug #876:
6450
6451 * coding.c (inhibit_null_byte_detection): New variable.
6452 (detect_coding, detect_coding_system): Don't pay attention to null
6453 bytes if inhibit_null_byte_detection is non-zero.
51d861de 6454 (syms_of_coding) <inhibit-null-byte-detection>: Declare and document.
97b1b294
EZ
6455 <inhibit-iso-escape-detection>: Doc fix.
6456
4624b6e3
JR
64572009-01-09 Jason Rumney <jasonr@gnu.org>
6458
6459 * w32font.c (add_font_entity_to_list): Don't report unknown
fff4e459 6460 Windows charset as any unrecognized registry. (Bug#1548)
4624b6e3
JR
6461 Only report Unicode Plane 2 fonts as unicode-sip.
6462
323b840c
CY
64632009-01-09 Chong Yidong <cyd@stupidchicken.com>
6464
51d861de
SM
6465 * xfaces.c (Fx_font_family_list): Delete function.
6466 Move compatibility version to faces.el.
323b840c 6467
51d861de 6468 * font.c (Ffont_family_list): Return a list of strings, not symbols.
323b840c 6469
eba7400d
MR
64702009-01-09 Martin Rudalics <rudalics@gmx.at>
6471
6472 * frame.c (x_set_frame_parameters): Remember requested value for
6473 fullscreen before it's reset by the parameter handler.
6474
4b09796d
GM
64752009-01-09 Glenn Morris <rgm@gnu.org>
6476
6477 * keyboard.c (last_command_char): For clarity, rename to...
46e722a9 6478 (last_command_event): ... and update all users.
4b09796d
GM
6479 (last_input_char): For clarity, rename to...
6480 (last_input_event): ... and update all users.
6481 (last-command-char, last-input-char): Move to subr.el as aliases.
6482 * cmds.c, commands.h: Update for last_command_char rename.
6483
14ccea62
CY
64842009-01-08 Chong Yidong <cyd@stupidchicken.com>
6485
51d861de 6486 * font.c (font_open_for_lface): Handle unspecified height attribute.
14ccea62 6487
5f004711
JR
64882009-01-08 Jason Rumney <jasonr@gnu.org>
6489
6490 * w32fns.c (Vx_pointer_shape, Vx_nontext_pointer_shape)
6491 (Vx_mode_pointer_shape, Vx_window_horizontal_drag_shape)
6492 (Vx_hourglass_pointer_shape, Vx_sensitive_text_pointer_shape):
6493 Don't declare.
fff4e459 6494 (syms_of_w32fns): Don't define x-pointer-shape variable. (Bug#1485)
5f004711
JR
6495 (x_create_tip_frame) [GLYPH_DEBUG]: Enable image debugging code.
6496
b71f6f73
KH
64972009-01-07 Kenichi Handa <handa@m17n.org>
6498
50b06221 6499 * fileio.c (Finsert_file_contents): In the case of replace,
f56a4450 6500 remember the coding system used for decoding in
50b06221
KH
6501 coding_system (Bug#1039).
6502
b71f6f73 6503 * coding.c (decode_coding_utf_8): Check byte_after_cr before
79a97217 6504 breaking the loop. (Bug#870)
b71f6f73
KH
6505 (decode_coding_utf_16, decode_coding_emacs_mule)
6506 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
6507 (decode_coding_charset): Likewise.
6508
56f668f7
MR
65092009-01-05 Martin Rudalics <rudalics@gmx.at>
6510
6511 * frame.c (x_set_frame_parameters): Make sure height (width) get
6512 applied when fullwidth (fullheight) is set. (Bug#1522)
6513
5da9424d
JB
65142009-01-04 Juanma Barranquero <lekktu@gmail.com>
6515
6516 * w32.c: Use 64-bit arithmetic to do FILETIME conversions. (Bug#1766)
6517 (utc_base): Declare as ULONGLONG, not long double.
6518 (convert_time_raw): Delete.
6519 (FILETIME_TO_U64, U64_TO_LISP_TIME): New macros.
6520 (initialize_utc_base): New function.
6521 (convert_time): Use FILETIME_TO_U64, initialize_utc_base.
6522 (convert_from_time_t): Use initialize_utc_base; compute result with
6523 64-bit arithmetic.
6524 (process_times): Use FILETIME_TO_U64, U64_TO_LISP_TIME.
6525
c4605e09
EZ
65262009-01-03 Eli Zaretskii <eliz@gnu.org>
6527
9acef61c 6528 * process.c (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess)
c4605e09
EZ
6529 (Qttname, Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime)
6530 (Qcutime, Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs)
6531 (Quser, Qgroup, Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime)
6532 [!subprocesses]: Define.
6533 (syms_of_process) [!subprocesses]: Intern and staticpro them.
6534 (Flist_system_processes, Fsystem_process_attributes)
6535 [!subprocesses]: Call list_system_processes and
6536 system_process_attributes instead of returning Qnil.
6537
9acef61c
JB
6538 * dosfns.c (system_process_attributes, list_system_processes):
6539 New functions.
c4605e09
EZ
6540
6541 * vm-limit.c (ret_lim_data) [MSDOS]: New function.
6542
6543 * sysdep.c (list_system_processes, system_process_attributes) [MSDOS]:
6544 Don't use the default (no-op) implementation.
6545
8b7d0a16
JR
65462009-01-03 Jason Rumney <jasonr@gnu.org>
6547
a6d46bc1
JR
6548 * keyboard.c (parse_modifiers_uncached): Wheel events are
6549 clicks (bug#687).
6550
8b7d0a16
JR
6551 * w32term.c (x_query_colors, x_query_color): New functions.
6552
6553 * image.c (x_to_xcolors, png_load): Eliminate W32 specific code.
6554 (svg_load_image): Cast returned pointers from dynamically loaded
6555 functions. Eliminate W32 specific code.
6556
bfe11752
DN
65572009-01-02 Dan Nicolaescu <dann@ics.uci.edu>
6558
89e2438a
DN
6559 * nsfns.m (x_set_foreground_color, x_set_background_color)
6560 (x_set_cursor_color, x_set_icon_name, x_explicitly_set_name)
6561 (x_set_title, x_set_icon_type, x_set_cursor_type): Rename to use
6562 x_ prefix instead of ns_. Update references.
6563 (syms_of_nsfns): Add a FIXME comment.
6564
6565 * nsterm.m (x_set_cursor_type): New prototype.
6566 (setValuesFromPanel): Use it instead of the old ns_ prefixed name.
6567
bfe11752
DN
6568 * sysdep.c (system_process_attributes): Provide Qtime and Qctime
6569 for Solaris instead of incorrectly providing Qutime and Qcutime.
6570
031da700
EZ
65712009-01-02 Eli Zaretskii <eliz@gnu.org>
6572
6573 * w32.c (process_times): Compute sum of utime and stime.
6574 (system_process_attributes): Add Qtime to the alist.
6575
6576 * sysdep.c (system_process_attributes): Compute Qtime and Qctime
6577 and add them to the alist.
6578
6579 * process.c (top level) <Qtime, Qctime>: New variables.
6580 (syms_of_process): staticpro them.
6581 (Fsystem_process_attributes): Add their documentation to the doc
6582 string.
6583
6584 * process.h: Declare Qtime and Qctime.
6585
df23bf08
JR
65862009-01-02 Jason Rumney <jasonr@gnu.org>
6587
9acef61c 6588 * image.c (Qgobject): New symbol.
df23bf08
JR
6589 (syms_of_image): Initialize it.
6590 (init_svg_functions): Load some functions from gobject library.
6591
5bbdf7aa
DN
65922009-01-01 Dan Nicolaescu <dann@ics.uci.edu>
6593
6594 * frame.c (make_terminal_frame): Remove redundant code and useless
6595 block.
6596
63136da6
AS
65972009-01-01 Andreas Schwab <schwab@suse.de>
6598
6599 * process.c (conv_sockaddr_to_lisp): Add workaround for
6600 getsockname bug on BSD.
6601
9ef69046
CY
66022009-01-01 Chong Yidong <cyd@stupidchicken.com>
6603
d6fafbe0
CY
6604 * xfns.c (x_create_tip_frame): Set border width of the X window.
6605
51d861de 6606 * xfaces.c (Finternal_set_lisp_face_attribute): Improve error message.
9ef69046 6607
f9c34147
JR
66082009-01-01 Jason Rumney <jasonr@gnu.org>
6609
9acef61c 6610 * w32term.c (x_new_font): Return font object, not fontset. (Bug#119)
f9c34147
JR
6611 Don't block input, as per earlier xterm.c changes.
6612
f5497e45
AR
66132008-12-31 Adrian Robert <Adrian.B.Robert@gmail.com>
6614
6615 * nsfns.m (ns_appkit_version_str): Rename from ns_appkit_version.
6616 (ns_appkit_version_int): New function.
6617 (x-server-version): Use ns_appkit_version_int and follow 21+
6618 convention of returning 3 integers.
6619
c19cab20
KH
66202008-12-30 Kenichi Handa <handa@m17n.org>
6621
6622 * character.h (CHAR_VARIATION_SELECTOR_P): New macro.
6623 (CHAR_SURROGATE_PAIR_P): New macro.
6624
6625 * font.h (struct font_driver): New member get_variation_glyphs.
6626
9acef61c 6627 * font.c (font_range): Don't require a font for a variation selector.
c19cab20
KH
6628 (Ffont_variation_glyphs): New function.
6629 (syms_of_font): Defsubr it.
6630
6631 * ftfont.c (ftfont_driver): Set the member get_variation_glyphs to
6632 ftfont_variation_glyphs.
6633 (setup_otf_gstring): New function.
6634 (ftfont_drive_otf): Use it.
6635 (ftfont_shape_by_flt): Handle variation selector.
6636 (ftfont_variation_glyphs): New function.
6637
28cd591f
MR
66382008-12-30 Martin Rudalics <rudalics@gmx.at>
6639
6640 * frame.c (Vemacs_iconified): Remove.
6641
7f714baf
JR
66422008-12-30 Jason Rumney <jasonr@gnu.org>
6643
6644 * frame.c (store_frame_param, x_get_arg): Enable newer code on
9acef61c 6645 WINDOWSNT too, as related changes have already been synced. (Bug#117)
7f714baf 6646
9d2d22ab
CY
66472008-12-30 Chong Yidong <cyd@stupidchicken.com>
6648
6649 * indent.c (Fvertical_motion): Don't advance iterator if we have
6650 reseated to the desired position.
6651
6652 * xdisp.c (move_it_to): Handle GET_FROM_STRETCH method when
6653 checking for pos match.
6654
545312c2
KH
66552008-12-30 Kenichi Handa <handa@m17n.org>
6656
1ede3eb6
KH
6657 * insdel.c (copy_text): To convert a non-ASCII char to unibyte,
6658 just get the low 8-bit of the code.
6659
545312c2
KH
6660 * font.c (font_intern_prop): Validate str as multibyte.
6661
bd7bbf29
DN
66622008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
6663
31e0750e
DN
6664 * dispextern.h (struct face): Move lface and hash from the middle
6665 of bitfields.
6666
bd7bbf29
DN
6667 * Makefile.in (INTERVALS_H): Rename from INTERVAL_SRC, update all users.
6668
b5672e7c
DN
66692008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
6670
6671 * Makefile.in (INTERVAL_SRC): Also depend on dispextern.h.
6672 (coding.o, dispnew.o, keymap.o, msdos.o): Depend on INTERVAL_SRC
6673 instead of intervals.h.
6674
d704470f
AS
66752008-12-26 Andreas Schwab <schwab@suse.de>
6676
6677 * keymap.c (map_keymap_char_table_item): Make a copy of KEY if it is a
6678 cons.
6679
54b33868
MR
66802008-12-26 Martin Rudalics <rudalics@gmx.at>
6681
6682 * textprop.c (Qminibuffer_prompt): New variable.
6683 (syms_of_textprop): Initialize it.
6684 * callint.c (Fcall_interactively): For `c', `k', and `K' prompt
6685 in minibuffer-prompt face. (Bug#1662)
6686
40b615d6
JR
66872008-12-25 Jason Rumney <jasonr@gnu.org>
6688
6689 * buffer.c (Fbuffer_swap_text): Use POINTER_TYPE.
6690
baae5c2d
JR
66912008-12-24 Jason Rumney <jasonr@gnu.org>
6692
6693 * ralloc.c (r_alloc_reset_variable): New function.
6694
6695 * buffer.c (Fbuffer_swap_text) [REL_ALLOC]: Reset ralloc's internal
9acef61c 6696 record of what points where. (Bug#716)
baae5c2d 6697
a9051c88
DN
66982008-12-22 Dan Nicolaescu <dann@ics.uci.edu>
6699
6700 * minibuf.c (read_minibuf): Follow the non-interactive case when
6701 running as a daemon, before detaching.
6702
8b146312
AS
67032008-12-22 Andreas Schwab <schwab@suse.de>
6704
6705 * buffer.c (init_buffer): Use realloc instead of xrealloc.
6706 * gtkutil.c (free_widget_value): Use xfree instead of free.
6707
56f2de10
MR
67082008-12-22 Martin Rudalics <rudalics@gmx.at>
6709
6710 * frame.c (delete_frame): New function derived from
6711 Fdelete_frame to handle Qnoelisp value for FORCE argument.
6712 Delete last frame iff FORCE equals Qnoelisp. (Bug#1450)
6713 (Fdelete_frame): Call delete_frame. Remove line from doc-string
6714 saying that FORCE non-nil doesn't run `delete-frame-functions'.
6715 * frame.h: Extern delete_frame.
6716 * window.c (window_loop):
6717 * terminal.c (delete_terminal):
6718 * xterm.c (x_connection_closed):
6719 * xfns.c (Fx_hide_tip):
9acef61c 6720 * w32fns.c (Fx_hide_tip): Call delete_frame instead of Fdelete_frame.
56f2de10 6721
1fc200d6
JR
67222008-12-21 Jason Rumney <jasonr@gnu.org>
6723
6724 * w32uniscribe.c (uniscribe_encode_char): Return FONT_INVALID_CHAR
6725 when character maps to .notdef character.
6726
5e252df2
SM
67272008-12-21 Stefan Monnier <monnier@iro.umontreal.ca>
6728
6729 * keyboard.c (cmd_error_internal): Don't exit in daemon mode, bug#1310.
6730
99b72cc4
JR
67312008-12-20 Jason Rumney <jasonr@gnu.org>
6732
6733 * frame.c (Fmake_terminal_frame): Raise an error when called from
9acef61c 6734 a graphical frame on Windows. (Bug#1325)
99b72cc4 6735
acc49a52
JD
67362008-12-20 Jan Djärv <jan.h.d@swipnet.se>
6737
6738 * frame.c (Fdelete_frame): Set f->menu_bar_vector to Qnil.
6739
6ea15123
CY
67402008-12-20 Chong Yidong <cyd@stupidchicken.com>
6741
6742 * minibuf.c (Fread_buffer): Doc fix.
6743
b2dab6c8
JR
67442008-12-20 Jason Rumney <jasonr@gnu.org>
6745
54ea0c87 6746 * fileio.c (Fexpand_file_name): Do not allow ../ to go beyond the
9acef61c 6747 server name in UNC paths. (Bug#719)
54ea0c87 6748
b2dab6c8 6749 * coding.c (decode_coding): Clear chars_at_source flag when using
9acef61c 6750 charbuf. (Bug#1035)
b2dab6c8 6751
6d1921be
DN
67522008-12-19 Daniel Engeler <engeler@gmail.com>
6753
6754 * sysdep.c (serial_configure): Fix typo.
6755
53934c98
DN
67562008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
6757
6758 * sysdep.c: Include alloca.h.
f4f634e8
DN
6759 (system_process_attributes): Add implementation for Solaris.
6760
6761 * s/sol2-10.h (HAVE_PROCFS, _STRUCTURED_PROC): New defines.
53934c98 6762
06e111a6
DN
67632008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
6764
6765 Reorganize implementation of Flist_system_processes and
6766 Fsystem_process_attributes. No functional changes.
6767 * process.c: Don't #include pwd.h, grp.h and limits.h.
6768 (Flist_system_processes): Just call list_system_processes.
6769 (Fsystem_process_attributes): Just call system_process_attributes.
6770 (procfs_list_system_processes, time_from_jiffies)
6771 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
6772 (procfs_get_total_memory, procfs_system_process_attributes): Move ...
6773
6774 * sysdep.c: ... here. Include pwd.h, grp.h and limits.h.
6775 (list_system_processes): Rename from
6776 procfs_list_system_processes. Enclose in #ifdef HAVE_PROCFS.
6777 Provide a do nothing implementation.
6778 (system_process_attributes): Rename from
6779 procfs_list_system_processes.
6780 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
9acef61c 6781 (procfs_get_total_memory): Enclose in #ifdef GNU_LINUX.
06e111a6
DN
6782
6783 * w32.c (list_system_processes): Rename from
6784 w32_list_system_processes.
6785 (system_process_attributes): Rename from
6786 w32_system_process_attributes.
6787
6788 * s/gnu-linux.h (LISTPROC, PROCATTR): Remove.
6789
6790 * process.h (w32_list_system_processes)
6791 (w32_system_process_attributes): Remove.
362654a6
JB
6792 (list_system_processes, system_process_attributes):
6793 New prototypes.
06e111a6 6794
6a705b23
KH
67952008-12-19 Kenichi Handa <handa@m17n.org>
6796
6797 * xfont.c (xfont_decode_coding_xlfd): New function.
6798 (xfont_encode_coding_xlfd): New function.
6799 (xfont_list_pattern): Decode XLFD by iso-8859-1.
6800 (xfont_list): Decode and encode XLFD by iso-8859-1.
6801 (xfont_match): Likewise.
6802 (xfont_list_family): Likewise.
6803 (xfont_open): Likewise.
6804
d66c0241 6805 * ftfont.c (ftfont_open): Generate a multibyte string if given
6a705b23
KH
6806 names are utf-8.
6807
d66c0241 6808 * xftfont.c (xftfont_open): Generate a multibyte string if given
6a705b23
KH
6809 names are utf-8.
6810
5a130941
JD
68112008-12-18 Jan Djärv <jan.h.d@swipnet.se>
6812
6813 * gtkutil.c (xg_frame_resized): Remove check if rows/columns have
6814 changed.
bfd20325
JD
6815 (xg_tool_bar_proxy_callback): Put focus on the frame after we have
6816 clicked on a detached tool bar button.
5a130941 6817
fd95644b
DN
68182008-12-18 Dan Nicolaescu <dann@ics.uci.edu>
6819
6820 * emacs.c (main): Print and error and exit when no data is read
6821 from the pipe.
6822
e6eee6ae
JR
68232008-12-17 Jason Rumney <jasonr@gnu.org>
6824
6825 * w32font.c (w32font_has_char): Always return -1.
6826
a35dd56b
KH
68272008-12-16 Kenichi Handa <handa@m17n.org>
6828
6829 * font.c (font_open_entity): Fix previous change.
6830
0e3635c2
DN
68312008-12-16 Dan Nicolaescu <dann@ics.uci.edu>
6832
6833 * process.c: Include <limits.h>.
6834
d4835507 68352008-12-16 Chetan Pandya <pandyacus@sbcglobal.net> (tiny change)
b5356c39
CY
6836
6837 * font.c (font_update_drivers): Fix mistake in reconstructing the
6838 driver list.
6839
68402008-12-16 Chong Yidong <cyd@stupidchicken.com>
6841
6842 * font.c (font_clear_cache): Fix format of font cache data.
6843
e2cbc401
CY
68442008-12-15 Chong Yidong <cyd@stupidchicken.com>
6845
6846 * xftfont.c (xftfont_open): Free Xft font pattern if
6847 XftFontOpenPattern fails.
6848
6849 * xterm.c (x_free_frame_resources): Remove extraneous call to
6850 free_frame_faces.
6851
b131d535
CY
68522008-12-13 Chong Yidong <cyd@stupidchicken.com>
6853
6854 * xterm.c (x_delete_display): Move xim_close_dpy call to
6855 x_delete_terminal.
6856 (x_delete_terminal): Call xim_close_dpy.
6857
e6df5336
JR
68582008-12-13 Jason Rumney <jasonr@gnu.org>
6859
6860 * w32font.c (intern_font_name): New function.
6861 (add_font_name_to_list, w32_enumfont_pattern_entity): Use it.
6862 (w32font_open_internal, Fx_select_font): Decode font name.
6863 (fill_in_logfont, list_all_matching_fonts): Encode font name.
6864
6865 * w32font.h (intern_font_name): Declare new function.
6866
6867 * w32uniscribe.c (add_opentype_font_name_to_list):
6868 Use intern_font_name.
6869
20d68145
CY
68702008-12-13 Chong Yidong <cyd@stupidchicken.com>
6871
9f2554de
CY
6872 * frame.c (Fdelete_frame): Call free_font_driver_list.
6873
3d9bec9a
CY
6874 * font.c (free_font_driver_list): Implement missing function.
6875
20d68145
CY
6876 * w32term.c (w32_term_init): Don't initialize the image cache
6877 here; it will be done in init_frame_faces.
6878
6879 * xterm.h (struct xim_inst_t): Definition moved from xterm.c.
6880 (struct x_display_info): Remove unused member null_pixel. New
6881 member xim_callback_data.
6882
6883 * xterm.c (struct xim_inst_t): Definition moved to xterm.h.
6884 (xim_initialize): Save pointer to callback function data.
6885 (xim_close_dpy): Free callback function data. Call XCloseIM,
6886 reverting 2008-11-04 change by David Smith.
6887 (x_term_init): Don't initialize the image cache here; it will be
6888 done in init_frame_faces. Remove ancient "null_pixel" cruft.
6889 (x_delete_display): Free x_dnd_atoms member.
6890
96f9306b
KH
68912008-12-13 Kenichi Handa <handa@m17n.org>
6892
6dec9044
JB
6893 * font.c (font_rescale_ratio): Moved from xfaces.c.
6894 Argument type changed. Handle a font-spec too.
96f9306b 6895 (font_score): Check Vface_font_rescale_alist.
6dec9044 6896 (font_open_entity): Likewise. (Bug#1547)
96f9306b
KH
6897
6898 * xfaces.c (font_rescale_ratio): Moved to font.c.
6899
8d5b4964
CY
69002008-12-13 Chong Yidong <cyd@stupidchicken.com>
6901
6902 * xfns.c (Fx_wm_set_size_hint): Check if the frame is an X frame.
6903
e6df5336
JR
69042008-12-12 Jason Rumney <jasonr@gnu.org>
6905
6906 * w32fns.c (x_display_info_for_name, Fx_open_connection): Set
6907 Vwindow_system_version to the real w32 major version.
6908
97c6058a
DN
69092008-12-12 Dan Nicolaescu <dann@ics.uci.edu>
6910
6911 * term.c (init_tty): Move setting the terminal name before the
6912 potential user: maybe_fatal.
6913
ec4e88d7
CY
69142008-12-11 Chong Yidong <cyd@stupidchicken.com>
6915
d4835507
JB
6916 * term.c (tty_free_frame_resources): Renamed from delete_tty_output;
6917 all callers changed. Call free_frame_faces to free the face cache.
ec4e88d7 6918
b4233ec9
JR
69192008-12-11 Jason Rumney <jasonr@gnu.org>
6920
8ec71e23 6921 * w32font.c (fill_in_logfont): Don't assume symbol script means
9acef61c 6922 SYMBOL_CHARSET. (Bug#547)
8ec71e23 6923
b4233ec9 6924 * w32uniscribe.c (uniscribe_encode_char): Increase glyph buffer
9acef61c 6925 size for surrogates. (Bug#1096, bug#872)
b4233ec9 6926
011a0143
JB
69272008-12-11 Juanma Barranquero <lekktu@gmail.com>
6928
6929 * w32proc.c (Fw32_get_locale_info): Decode long form of locale name.
6930
3c309f34
JB
69312008-12-11 Juanma Barranquero <lekktu@gmail.com>
6932
6933 * process.c (Fsystem_process_attributes, syms_of_process):
6934 Fix typo in name of Ssystem_process_attributes.
6935 Reported by Ulrich Mueller <ulm@kph.uni-mainz.de>.
6936
fedc6ab5
JB
69372008-12-11 Juanma Barranquero <lekktu@gmail.com>
6938
6939 * syntax.c (Fmodify_syntax_entry): Doc fix.
6940
ba3de0e8
JB
69412008-12-10 Juanma Barranquero <lekktu@gmail.com>
6942
6943 * font.c (Ffont_spec): Move usage to end of docstring.
6944
174f1c74
JR
69452008-12-10 Jason Rumney <jasonr@gnu.org>
6946
6947 * w32font.c (Qcham): New symbol.
6948 (font_supported_scripts): Add cham, and comments for other new
6949 scripts in bitfield from OpenType spec.
9d32f818
JR
6950 (add_font_entity_to_list): Limit unicode-sip fonts to those that
6951 contain characters beyond the bmp.
174f1c74 6952
7b649478
KH
69532008-12-10 Kenichi Handa <handa@m17n.org>
6954
6955 * ftfont.c (fc_charset_table): Add "unicode-sip".
2ae37cf0 6956 (ftfont_spec_pattern): Lookup fc_charset_table for the registry
7b649478
KH
6957 Qunicode_sip.
6958
2133e2d1
JB
69592008-12-10 Juanma Barranquero <lekktu@gmail.com>
6960
6961 * coding.c (QCdefault_char): Rename from QCdefalut_char.
6962 (Fcoding_system_put): Use QCdefault_char.
6963 (syms_of_coding): Set QCdefault_char, not QCdefalut_char.
6964
9af886ee
CY
69652008-12-09 Chong Yidong <cyd@stupidchicken.com>
6966
74d819eb
CY
6967 * xftfont.c (syms_of_xftfont): Fix typo.
6968
4ccfa1c0 6969 * buffer.c (Fbuffer_swap_text): Signal error if swapping a dead buffer.
9af886ee 6970
7c19d3ae
DN
69712008-12-08 Dan Nicolaescu <dann@ics.uci.edu>
6972
6973 * emacs.c (main): Close daemon_pipe on exec.
6974
567826bb
CY
69752008-12-08 Chong Yidong <cyd@stupidchicken.com>
6976
6977 * termchar.h (struct tty): New members termcap_term_buffer and
6978 termcap_strings_buffer.
6979
6980 * term.c (encode_terminal_code): Free any previous memory blocks
4ccfa1c0 6981 before calling xmalloc for encode_terminal_src or encode_terminal_dst.
567826bb
CY
6982 (maybe_fatal): Buffer argument deleted. Don't free buffer here.
6983 All callers changed.
6984 (init_tty): Store termcap data and string buffers in new struct
6985 tty members termcap_term_buffer and termcap_strings_buffer.
6986 (delete_tty): Free them.
4ccfa1c0 6987 (syms_of_term): Initialize encode_terminal_src and encode_terminal_dst.
567826bb 6988
aa96c42b
SZ
69892008-12-07 Seiji Zenitani <zenitani@mac.com>
6990
6991 * nsfns.m (ns_set_background_color): Remove code duplication.
4ccfa1c0 6992 It was a substitute for face-transparency on OS X 10.3.
aa96c42b 6993
b7e1d896
CY
69942008-12-06 Chong Yidong <cyd@stupidchicken.com>
6995
6996 * coding.c (make_conversion_work_buffer): Disable buffer
6997 modification hooks in the work buffer.
6998
b5ec91a5
EZ
69992008-12-05 Eli Zaretskii <eliz@gnu.org>
7000
7001 * process.c (procfs_system_process_attributes): If `nread' has a
7002 negative value, assign zero to it.
7003
a5d2a52b
CY
70042008-12-05 Chong Yidong <cyd@stupidchicken.com>
7005
68c5540b 7006 * eval.c (Vdebug_on_error): Doc fix.
a5d2a52b 7007
7bf1bb21
KH
70082008-12-05 Kenichi Handa <handa@m17n.org>
7009
7010 * ftfont.c (ftfont_shape_by_flt): Use "combining" flt if the
7011 second character is a combining character.
7012
2fdc7d00
EZ
70132008-12-05 Eli Zaretskii <eliz@gnu.org>
7014
7015 * process.c (procfs_system_process_attributes): Don't use cmd,
7016 cmdsize, and q without initializing them first.
7017
bf6bfba8
JR
70182008-12-04 Jason Rumney <jasonr@gnu.org>
7019
7020 * w32font.c (w32font_draw): Initialize orig_clip before getting
7021 it, and delete it when finished.
7022
a3b1a468
DN
70232008-12-04 Dan Nicolaescu <dann@ics.uci.edu>
7024
7025 * keyboard.c (kbd_buffer_get_event): Follow the non-interactive
7026 case when running as a daemon before detaching.
7027
8b8be8eb
JB
70282008-12-03 Juanma Barranquero <lekktu@gmail.com>
7029
805f2638 7030 * w32.c (init_environment): Don't unload library shell32.dll.
8b8be8eb 7031
b1bde622
KH
70322008-12-03 Kenichi Handa <handa@m17n.org>
7033
e500c47d
KH
7034 * font.c (font_at): Set `multibyte' at first.
7035
ca516334
KH
7036 * coding.c (decode_coding_charset): Check type of an element of
7037 vector VALIDS.
7bf1bb21 7038 (encode_coding_emacs_mule): Be sure to set `code'.
ca516334 7039
4ccfa1c0 7040 * fontset.c (face_for_char): Handle invalid charset property correctly.
b1bde622
KH
7041 (font_for_char): Likewise.
7042
1e5ecd37
CY
70432008-12-03 Chong Yidong <cyd@stupidchicken.com>
7044
d5b01609 7045 * font.c (Fopen_font): Compute pixel size correctly.
ba207571
CY
7046 (font_update_lface): Handle fonts with corrupted size specs,
7047 i.e. non-int and non-float.
d5b01609 7048
11e3a6e4 7049 * ftfont.c (ftfont_match): Initialize entity variable.
9a48c8cb 7050 (ftfont_resolve_generic_family): Avoid using uninitialized var.
8adb3a3b 7051 (ftfont_list_family): Initialize list var earlier.
11e3a6e4 7052
ab06788b
CY
7053 * xselect.c (Fx_get_cut_buffer_internal): Fix memory leak.
7054
1e5ecd37 7055 * xterm.c (x_draw_glyph_string): Fall back on
0cff82ab 7056 underline_minimum_offset for underline position.
1e5ecd37 7057
63c125ab
DN
70582008-12-03 Dan Nicolaescu <dann@ics.uci.edu>
7059
7060 * keyboard.c (read_char_help_form_unwind): Specify the type for ARG.
7061
7062 * character.c (c_string_width): Specify the type for LEN.
7063
3a8406e1
KH
70642008-12-03 Kenichi Handa <handa@m17n.org>
7065
4ccfa1c0 7066 * coding.c (decode_coding_utf_16): Initialize consumed_chars_base to 0.
453b38f0 7067 (decode_coding_utf_8): Likewise.
4ccfa1c0 7068 (detect_coding_system): Initialize utf_16_le_eol to -1, val to Qnil.
4533845d 7069 (produce_chars): Initialize consumed_chars to 0.
3a8406e1 7070
651df7d9
CY
70712008-12-02 Chong Yidong <cyd@stupidchicken.com>
7072
7073 * keyboard.c (make_lispy_position): Only use PT if the selected
7074 window is current.
7075
1f625c6c
AS
70762008-12-02 Andreas Schwab <schwab@suse.de>
7077
f7741ce9
AS
7078 * font.c (font_unparse_fcname): Fix use of uninitialized variable.
7079
1f625c6c
AS
7080 * doprnt.c (doprnt1): Fix size of charbuf.
7081
92bc2678
CY
70822008-12-02 Chong Yidong <cyd@stupidchicken.com>
7083
7084 * keyboard.c (timer_check): Revert last change.
7085
93b9e8cc
JB
70862008-12-02 Juanma Barranquero <lekktu@gmail.com>
7087
7088 * makefile.w32-in ($(BLD)/w32console.$(O)): Fix silly, silly typo.
7089
fd7a37d5
JB
70902008-12-01 Juanma Barranquero <lekktu@gmail.com>
7091
7092 * makefile.w32-in: Update dependencies.
7093 (CONFIG_H): Add $(EMACS_ROOT)/nt/inc/sys/time.h.
7094
c115043b
AS
70952008-12-01 Andreas Schwab <schwab@suse.de>
7096
7097 * font.c (register_font_driver): Use xmalloc.
7098 (font_put_frame_data): Likewise.
7099
f5668d2a
CY
71002008-12-01 Chong Yidong <cyd@stupidchicken.com>
7101
860d96be
CY
7102 * xfaces.c (realize_x_face): Make abort condition clearer.
7103
f5668d2a
CY
7104 * gtkutil.c (update_frame_tool_bar): Initialize variable.
7105
379c17e7
CY
71062008-11-30 Chong Yidong <cyd@stupidchicken.com>
7107
7108 * keyboard.c (timer_check): After a timer runs, ensure that the
7109 selected window's buffer is current.
7110
35f36d65
JB
71112008-11-30 Juanma Barranquero <lekktu@gmail.com>
7112
f952c61c
JB
7113 * makefile.w32-in ($(BLD)/abbrev.$(O)): Remove.
7114 It was accidentally restored by the Unicode merge.
7115
35f36d65
JB
7116 * w32proc.c (Fw32_get_locale_info): Fix typo in docstring.
7117
b23077df
JB
71182008-11-29 Juanma Barranquero <lekktu@gmail.com>
7119
7120 * w32proc.c: Include "coding.h".
7121 (Fw32_short_file_name): Encode filename passed to Windows API.
7122 (Fw32_long_file_name): Encode filename passed to Windows API and
7123 decode back the result. (Bug#1433)
7124
b8ebe9dd
KH
71252008-11-29 Kenichi Handa <handa@m17n.org>
7126
8cc53f96
KH
7127 * charset.h (CHAR_CHARSET_P): Check if the encoder is loaded or
7128 not before accessing it.
7129
b8ebe9dd
KH
7130 * charset.c (Fdefine_charset_internal): After calculating
7131 min_char, max_char, and fastmap, copy the charset structure again.
7132 (encode_char): Fix the previous change.
7133
59bc82c0
SZ
71342008-11-28 Seiji Zenitani <zenitani@mac.com>
7135
7136 * frame.c (x_set_alpha) [NS_IMPL_COCOA]: Call x_set_frame_alpha.
7137
7138 * nsfns.m (ns_frame_parm_handlers): Set alpha handler.
7139
7140 * nsterm.m (x_set_frame_alpha): New function.
7141
32247e3d
EZ
71422008-11-27 Eli Zaretskii <eliz@gnu.org>
7143
7144 * xfaces.c (Fx_font_family_list, syms_of_xfaces): Fix last change.
7145
b003e5ff
JB
71462008-11-27 Juanma Barranquero <lekktu@gmail.com>
7147
7148 * w32font.c (add_font_entity_to_list): Pass the right LOGFONT
7149 pointer to check_face_name.
7150
708550f5
KH
71512008-11-27 Kenichi Handa <handa@m17n.org>
7152
7153 * category.h (SET_CATEGORY_SET): Call set_category_set.
7154 (set_category_set): Extern it.
7155
7156 * category.c (hash_get_category_set): New function.
7157 (Fmodify_category_entry): Adjusted for the change of
7158 char_table_ref_and_range. Call hash_get_category_set to get a
7159 category set to store in the table.
7160
7161 * character.h (MAYBE_UNIFY_CHAR): Call maybe_unify_char instead of
7162 Funify_charset.
7163
2ae37cf0 7164 * charset.h (enum charset_method): Delete CHARSET_METHOD_MAP_DEFERRED.
708550f5
KH
7165 (DECODE_CHAR): Check if the decoder vector is ready.
7166 (ENCODE_CHAR): Check if the encoder char-table is ready.
7167 (maybe_unify_char): Extern it.
7168
7169 * charset.c (Vchar_unified_charset_table): Delete it.
7170 (inhibit_load_charset_map): New variable.
7171 (temp_charset_work): New variable.
7172 (SET_TEMP_CHARSET_WORK_ENCODER, GET_TEMP_CHARSET_WORK_ENCODER)
7173 (SET_TEMP_CHARSET_WORK_DECODER, GET_TEMP_CHARSET_WORK_DECODER):
7174 New macros.
7175 (load_charset_map): Meaning of control_flag changed. If
7176 inhibit_load_charset_map is nonzero, setup a table in
7177 temp_charset_work.
7178 (load_charset): New argument control_flag.
7179 (map_charset_for_dump): New function.
7180 (map_charset_chars): If inhibit_load_charset_map is nonzero, use
7181 map_charset_for_dump.
7182 (Fdefine_charset_internal): If the charset method is MAP, load
7183 mapping tables by calling load_charset.
7184 (Funify_charset): Don't load a mapping table but directly set
7185 Vchar_unify_table.
7186 (maybe_unify_char): New function.
7187 (decode_char): Don't handle the deleted method MAP_DEFERRED.
7188 Handle the case of inhibit_load_charset_map being nonzero.
7189 (encode_char): Don't handle the deleted method MAP_DEFERRED.
7190 Handle the case of inhibit_load_charset_map being nonzero.
7191 (Fclear_charset_maps): Just free temp_charset_work.
7192 (syms_of_charset): Make `inhibit-load-charset-map' a Lisp
7193 variable.
7194
7195 * chartab.c (sub_char_table_ref_and_range): Adjusted for the
7196 change of char_table_ref_and_range.
7197 (char_table_ref_and_range): Change the meaning of argument FROM
7198 and TO. Now the caller must provide initial values for *FROM
7199 and *TO.
7200
7201 * fontset.c (fontset_add): Adjusted for the change of
7202 char_table_ref_and_range.
7203 (fontset_get_font_group): Likewise.
7204 (Ffontset_info): Likewise.
7205
7206 * keymap.c (describe_vector): Adjusted for the change of
7207 char_table_ref_and_range. For char-table, put boundary between
7208 non-ASCII and 8-bit characters.
7209
7210 * print.c (print_object): For bool-vector, delete unnecessary
7211 check of ASCII_BYTE_P.
7212
9196133b
JR
72132008-11-26 Jason Rumney <jasonr@gnu.org>
7214
7215 * w32font.c (w32font_open_internal): Don't include external
9acef61c 7216 leading in font height. (Bug#879)
9196133b 7217
9f688acf
GM
72182008-11-26 Glenn Morris <rgm@gnu.org>
7219
7220 * xfaces.c (Fx_font_family_list): Replace lisp/term/pc-win.el
7221 redefinition with ifdef. (Bug#1383)
7222
90d19aff
AR
72232008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
7224
7225 * nsterm.m (ns_get_color): Handle long hex strings (fixes bug #1044).
7226
4ccfa1c0 72272008-11-24 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
90d19aff
AR
7228
7229 * nsterm.m (-otherMouseDown:, -otherMouseUp:, -otherMouseDragged):
7230 New EmacsView methods.
7231 (EV_UDMODIFIERS, EV_BUTTON): Add OtherMouse constants.
7232 Fixes bug #1048,1357,1414.
7233
72342008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
7235
7236 Fix bug #1362.
7237 * image.c (x_clear_image_1): Do not free background under HAVE_NS, it
7238 is not an indexed color.
7239 * nsterm.m (free_indexed_color): Add argument checking.
7240 * nsfns.m: Move config.h to before system includes (advised by Dan N.).
7241
e7d5ecb3
CY
72422008-11-24 Chong Yidong <cyd@stupidchicken.com>
7243
7244 * minibuf.c (Fcompleting_read, Vminibuffer_completion_confirm):
7245 Document confirm-after-completion value for
7246 minibuffer-completion-confirm.
7247
c285743c
JR
72482008-11-24 Jason Rumney <jasonr@gnu.org>
7249
7250 * w32font.c (check_face_name): Use xstrcasecmp. Avoid compiler
7251 warning.
7252
b0857706
JR
72532008-11-23 Jason Rumney <jasonr@gnu.org>
7254
7255 * w32uniscribe.c (uniscribe_encode_char): Ensure context is
7256 restored before returning.
7257
7258 * w32font.c (check_face_name): New function.
7259 (add_font_entity_to_list): Use it to filter out common substituted
9acef61c 7260 fonts. (Bug#642)
b0857706 7261
ee50ff07
MR
72622008-11-22 Martin Rudalics <rudalics@gmx.at>
7263
7264 * buffer.c (Fswitch_to_buffer): Reword and mention new option
7265 confirm-nonexistent-file-or-buffer in doc-string.
7266
b8ff72fa
SM
72672008-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
7268
7269 * buffer.c (Fbuffer_swap_text): Remove redundant marker manipulation.
7270 Fix copy/paste typo. Add checks.
7271
cee53ed4
KH
72722008-11-21 Kenichi Handa <handa@m17n.org>
7273
7274 * coding.c (detect_coding_iso_2022): Reject invalid composition
7275 sequence.
7276 (DECODE_COMPOSITION_START): If the current source is the last
7277 block, and the current composition doesn't end, regard this
7278 sequence as invalid.
7279 (decode_coding_iso_2022): Handle invalid composition sequence.
7280
f6ef1e65
MR
72812008-11-20 Martin Rudalics <rudalics@gmx.at>
7282
7283 * window.c (coordinates_in_window): Don't return
7284 ON_VERTICAL_BORDER for the rightmost position of a mode/header
7285 line when the window is not the rightmost one. (Bug#1372)
7286
e08b1705
MR
72872008-11-16 Ben North <ben@redfrontdoor.org> (tiny change)
7288
7289 * buffer.c (syms_of_buffer): Fix doc-string of cursor-type.
7290
ad98e89f
EZ
72912008-11-15 Eli Zaretskii <eliz@gnu.org>
7292
7293 * msdos.c (run_msdos_command): Don't call dos_ttcooked, dos_ttraw,
7294 and bright_bg if noninteractive is non-zero.
7295
fb098a4b
CY
72962008-11-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7297
7298 * xterm.c (x_draw_glyph_string): For stretch glyphs, don't call
7299 x_draw_glyph_string_background.
7300
7301 * w32term.c (x_draw_glyph_string): Likewise.
7302
ce952b6e
CY
73032008-11-15 Chong Yidong <cyd@stupidchicken.com>
7304
7305 * xterm.c (x_draw_glyph_string): Stop drawing the background of
7306 the next glyph string once past the overhang width.
7307
7308 * nsterm.m (ns_draw_glyph_string): Likewise.
7309
7310 * w32term.c (x_draw_glyph_string): Likewise.
7311
26ea7079
CY
73122008-11-14 Fabrice Popineau <fabrice.popineau@supelec.fr> (tiny change)
7313
7314 * fileio.c (Finsert_file_contents): Decrement specpdl_ptr to avoid
7315 double file close.
7316
1c33c906
MR
73172008-11-14 Martin Rudalics <rudalics@gmx.at>
7318
7319 * window.c (window_loop): In DELETE_BUFFER_WINDOWS case, reset
7320 dedicated status of window before attempting to display another
7321 buffer in it.
7322
8fc29035
JB
73232008-11-14 Juanma Barranquero <lekktu@gmail.com>
7324
7325 * msdos.c (Fmsdos_long_file_names):
7326 (syms_of_msdos) <dos-unsupported-char-glyph>:
7327 * dosfns.c (Fint86): Fix typos in docstrings.
7328
55fb4286
EZ
73292008-11-14 Eli Zaretskii <eliz@gnu.org>
7330
7331 * makefile.w32-in (OBJ1, WIN32OBJ): Fix whitespace.
7332
3fda0315
KY
73332008-11-14 Katsumi Yamaoka <yamaoka@jpl.org>
7334
7335 * puresize.h (BASE_PURESIZE): Increase to 1260000.
7336
7e849c17
CY
73372008-11-12 Michal Nazarewicz <mina86@tlen.pl> (tiny change)
7338
7339 * frame.c (x_set_alpha): Set alpha to -1 if nil given.
7340
7341 * frame.h: Negative alpha means "don't touch".
7342
7343 * w32term.c (x_set_frame_alpha): Do nothing if alpha is negative.
7344
7345 * xterm.c (x_set_frame_alpha): Do nothing if alpha is negative.
7346
b9fd67bd
DN
73472008-11-12 Dan Nicolaescu <dann@ics.uci.edu>
7348
7349 * hftctl.c:
7350 * chpdef.h:
7351 * acldef.h: Remove files used only for systems no longer supported.
7352
7353 * Makefile.in: Fix .o alphabetical ordering.
7354 (hftctl.o): Remove dependency, file removed.
7355 (keymap.o, print.o): Depend on charset.h.
7356
d5998e03
KH
73572008-11-10 Kenichi Handa <handa@m17n.org>
7358
2ae37cf0 7359 * character.c (Fget_byte): Fix and make it faster for unibyte target.
d5998e03 7360
be70e183
CY
73612008-11-08 Chong Yidong <cyd@stupidchicken.com>
7362
7363 * dired.c (file_name_completion): If completion_ignore_case is
7364 enabled, ignore case when checking completion-regexp-list.
7365
7cf94eac
EZ
73662008-11-08 Eli Zaretskii <eliz@gnu.org>
7367
7368 * vm-limit.c (get_lim_data): Fix last change.
7369
ee107a89
KH
73702008-11-08 Kenichi Handa <handa@m17n.org>
7371
7372 * character.c (Fget_byte): New function.
7373 (syms_of_character): Defsubr Fget_byte.
7374
5fd15622
CY
73752008-11-07 Chong Yidong <cyd@stupidchicken.com>
7376
7377 * xdisp.c (try_window_reusing_current_matrix): Ensure that window
7378 cursor position is valid after scrolling.
7379
13d62fad
JB
73802008-11-06 Juanma Barranquero <lekktu@gmail.com>
7381
7382 * fns.c (Frandom): Rename arg N to LIMIT to match the docs; doc fix.
7383
a1dd2936
GM
73842008-11-06 Glenn Morris <rgm@gnu.org>
7385
7386 * xterm.c (handle_one_xevent): Don't let popup menus cause
7387 mouse-autoselect-window related window switching. (Bug#1261)
7388
860cd236
CY
73892008-11-04 David Smith <davidsmith@acm.org> (tiny change)
7390
7391 * xterm.c (xim_close_dpy): Avoid double-free on X11R6 XIM.
7392
653a3150
AS
73932008-11-04 Andreas Schwab <schwab@suse.de>
7394
7395 * xfns.c (Fx_wm_set_size_hint): Add missing return value.
7396
870f5cac
CY
73972008-11-03 Chong Yidong <cyd@stupidchicken.com>
7398
7399 * xfns.c (Fx_wm_set_size_hint): New function.
7400
1e02f3cb
MR
74012008-11-03 Martin Rudalics <rudalics@gmx.at>
7402
7403 * textprop.c (Fprevious_single_char_property_change): Return 0
7404 when there's no change in a string. (Bug#1301)
7405
e630dfc6
MR
74062008-11-02 Martin Rudalics <rudalics@gmx.at>
7407
7408 * frame.c (do_switch_frame): New argument NORECORD passed to
7409 Fselect_window.
7410 (Fselect_frame): New argument NORECORD passed to
7411 do_switch_frame.
7412 (Fset_frame_selected_window): New argument NORECORD passed to
7413 Fselect_frame.
7414 (Fhandle_switch_frame, Fdelete_frame): Handle NORECORD argument
7415 in call of do_switch_frame.
7416 (Fset_mouse_position, Fset_mouse_pixel_position, Fraise_frame):
7417 Handle NORECORD argument in call of Fselect_frame.
7418 * lisp.h (do_switch_frame, Fselect_frame)
7419 (Fset_frame_selected_window): Adjust declarations.
7420 * window.c (select_frame_norecord): New function.
7421 (run_window_configuration_change_hook): Use it and call
7422 Fselect_frame with NORECORD set.
7423 (Fselect_window): Pass NORECORD to Fselect_frame.
7424 (Fset_window_configuration): Handle NORECORD argument in call of
7425 do_switch_frame.
7426 * minibuf.c (choose_minibuf_frame): Handle NORECORD in call of
7427 Fset_frame_selected_window.
7428 * keyboard.c (command_loop_1): Handle NORECORD in call of
7429 Fselect_frame (currently ifdefd).
7430
9020b223
GM
74312008-11-02 Ulrich Mueller <ulm@kph.uni-mainz.de>
7432
7433 * emacs.c (USAGE2): Untabify.
7434
793ffee8
SM
74352008-11-01 Stefan Monnier <monnier@iro.umontreal.ca>
7436
7437 * composite.c (fill_gstring_header): Fix copy/paste typo.
7438
ab6d1131
MR
74392008-10-31 Martin Rudalics <rudalics@gmx.at>
7440
7441 * window.c (Fnext_window, Fprevious_window): Rewrite doc-string.
7442 (Fother_window): Rename argument and rewrite doc-string.
7443 (select_window_norecord): Fix return value. (Bug#1276)
7444
601a9cf1
JB
74452008-10-30 Juanma Barranquero <lekktu@gmail.com>
7446
7447 * w32fns.c (x_create_tip_frame): Prevent default foreground color for
7448 new frames overriding foreground for tooltips. Based on similar patch
7449 from Martin Rudalics <rudalics@gmx.at>. (Bug#1032)
7450
813b0652
CY
74512008-10-29 Chong Yidong <cyd@stupidchicken.com>
7452
7453 * emacs.c (Fdaemon_initialized): Initialize nfd.
7454
4414f58f
MR
74552008-10-29 Martin Rudalics <rudalics@gmx.at>
7456
7457 * window.c (Fwindow_height, Fdelete_window, set_window_buffer)
7458 (Fwindow_text_height): Clarify doc-strings.
7459 * xdisp.c (syms_of_xdisp): Mention set-window-buffer in
7460 doc-string of window-scroll-functions.
7461
ecdcaa09
RS
74622008-10-28 Reiner Steib <Reiner.Steib@gmx.de>
7463
7464 * category.c (syms_of_category): Fix typo in docstring.
7465
23fe745a
JB
74662008-10-28 Juanma Barranquero <lekktu@gmail.com>
7467
7468 * window.c (Fwindowp, Fwindow_live_p, Fwindow_minibuffer_p)
7469 (Fcoordinates_in_window_p, Fscroll_left, Fscroll_right):
7470 Fix typos in docstrings.
7471
ff808935
DN
74722008-10-28 Dan Nicolaescu <dann@ics.uci.edu>
7473
7474 * emacs.c (daemon_pipe): Make non-static.
7475 (IS_DAEMON): Move definition ...
7476 * lisp.h (IS_DAEMON): ... here.
7477 (daemon_pipe): Declare.
7478 (is_daemon): Remove.
7479 * dispnew.c (init_display): Use IS_DAEMON.
7480
fc012771
SM
74812008-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
7482
7483 * xdisp.c (pos_visible_p, redisplay_internal, message3_nolog)
7484 (message2_nolog): Check FRAME_INITIAL_P instead of noninteractively.
7485
7486 * emacs.c (is_daemon): Remove.
7487 (main): Don't set is_daemon.
7488 (IS_DAEMON): New macro.
7489 (Fdaemonp, Fdaemon_initialized): Use it.
601a9cf1 7490 (Fdaemon_initialized): Write a char into the pipe to make sure the
fc012771
SM
7491 parent exits.
7492 (syms_of_emacs): Explicitly initialize daemon_pipe[1].
7493
d8bdbe6f
CY
74942008-10-27 Chong Yidong <cyd@stupidchicken.com>
7495
d1a072bf
CY
7496 * nsterm.m (ns_draw_window_cursor): When hbar cursor is on
7497 over-sized glyph, draw it with the default glyph width.
7498
e2e325aa
CY
7499 * w32term.c (x_draw_bar_cursor): When hbar cursor is on over-sized
7500 glyph, draw it with the default glyph width.
7501
7502 * xterm.c (x_draw_bar_cursor): When hbar cursor is on over-sized
7503 glyph, draw it with the default glyph width.
7504
d8bdbe6f
CY
7505 * xdisp.c (try_scrolling): When computing the distance from the
7506 scroll margin to PT, try moving some distance past the window
7507 bottom before giving up.
7508
7bfac547
MR
75092008-10-27 Martin Rudalics <rudalics@gmx.at>
7510
7511 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p)
7512 (Fset_window_buffer): Explain in doc-string that a window can be
7513 "strongly" dedicated to its buffer.
7514
4ff029f6
DN
75152008-10-27 Dan Nicolaescu <dann@ics.uci.edu>
7516
7517 * emacs.c (daemon_name): New variable.
7518 (main): Deal with --daemon=SERVER_NAME.
7519 (Fdaemonp): Return a name if one was passed to --daemon.
7520
5790ef40
DN
75212008-10-26 Romain Francoise <romain@orebokech.com>
7522
f9bd0df9 7523 * emacs.c (daemon_pipe): New variable.
5790ef40
DN
7524 (main): Create a pipe before forking, make the parent exit only after
7525 the child has closed its end of the pipe. Move closing the
7526 descriptors ...
7527 (Fdaemon_initialized): ... here. New function.
7528
f5385255
SM
75292008-10-26 Stefan Monnier <monnier@iro.umontreal.ca>
7530
4d632321
SM
7531 * chartab.c (Foptimize_char_table): Make sure `ascii' doesn't point to
7532 the previous unoptimized table.
7533
f5385255
SM
7534 * window.c (Fset_window_buffer): Undo 2008-10-18 change to re-instate
7535 the distinction between non-nil and non-t value of `dedicated'.
7536
6c56a0f3
CY
75372008-10-25 Chong Yidong <cyd@stupidchicken.com>
7538
7539 * keyboard.c (read_char_minibuf_menu_prompt): Ensure that
f5385255 7540 read_char_minibuf_menu_text is large enough to hold the menu string.
6c56a0f3 7541
fec89261
MR
75422008-10-25 Martin Rudalics <rudalics@gmx.at>
7543
7544 * window.c (Fget_buffer_window, Fdelete_windows_on)
7545 (Freplace_buffer_in_windows): Make buffer argument optional and
7546 rename to buffer_or_name.
7547
34fcddd0
CY
75482008-10-24 Chong Yidong <cyd@stupidchicken.com>
7549
f5385255
SM
7550 * xdisp.c (handle_single_display_spec, handle_display_prop):
7551 Undo 2005-05-16 change.
34fcddd0
CY
7552 (handle_stop): Pop iterator if it's loaded with an empty string.
7553 (get_overlay_strings_1): Don't save iterator if it's loaded with
7554 an empty string (bug#1201).
7555
064766f2
KH
75562008-10-24 Kenichi Handa <handa@m17n.org>
7557
7558 * ftfont.c (ftfont_otf_features): Fix previous change.
7559 (ftfont_otf_capability): Check FeatureList.FeatureCount before
7560 calling ftfont_otf_features.
7561
f9bd0df9 75622008-10-24 Kenichi Handa <handa@m17n.org>
064766f2
KH
7563
7564 * font.c (font_match_p): Fix for the case that a vector of
7565 characters is in script-representative-chars.
7566
1dae9197
MA
75672008-10-24 Michael Albinus <michael.albinus@gmx.de>
7568
7569 * dbusbind.c (xd_in_read_queued_messages): New variable.
f5385255 7570 (XD_SIGNAL1, XD_SIGNAL2, XD_SIGNAL3): New macros. Throw Qdbus_error.
1dae9197
MA
7571 (xd_read_queued_messages): Catch Qdbus_error from the macros.
7572 (all): Replace xsignal1, xsignal2, xsignal3 by the respective
777013f2 7573 macro. (Bug#1186)
1dae9197 7574
f9bd0df9 75752008-10-23 Ali Bahrami <ali_gnu@emvision.com> (tiny change)
9b3362b8
DN
7576
7577 * s/sol2-10.h: New file.
7578
878a4584
JB
75792008-10-23 Juanma Barranquero <lekktu@gmail.com>
7580
7581 * xdisp.c (fill_glyph_string): Fix typo in source (though the
7582 poor beast has survived 9+ years and the jump from xterm.c!).
7583
cd265ca6
MR
75842008-10-23 Martin Rudalics <rudalics@gmx.at>
7585
7586 * buffer.c (Fget_buffer_create): Rename arg to buffer_or_name.
7587 Reword doc-string.
f5385255 7588 (Fbury_buffer): In doc-string say what happens to the buffer's window.
cd265ca6 7589
472a4dc9
JB
75902008-10-23 Juanma Barranquero <lekktu@gmail.com>
7591
7592 * character.c (syms_of_character) <script-representative-chars>:
7593 <unicode-category-table>: Doc fixes.
7594
159bd5a2
NF
75952008-10-23 Noah Friedman <friedman@splode.com>
7596
7597 * coding.c (make_conversion_work_buffer): Check that
7598 Vcode_conversion_reused_workbuf is a live buffer, otherwise call
7599 Fget_buffer_create.
7600
49f9c344
KH
76012008-10-23 Kenichi Handa <handa@m17n.org>
7602
7603 * font.c (font_add_log): Check the values of extra properties.
7604
12bb3111
MR
76052008-10-22 Martin Rudalics <rudalics@gmx.at>
7606
7607 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
7608 Reword doc-string.
7609 (Fset_window_parameter): Use NILP.
7610 (Fscroll_up, Fscroll_down, Fminibuffer_selected_window)
f5385255 7611 (Frecenter): Use "selected" instead of "current" window in doc-strings.
12bb3111 7612
bbeb4e99
JB
76132008-10-22 Juanma Barranquero <lekktu@gmail.com>
7614
7615 * xdisp.c (next_element_from_buffer): Remove bogus xassert condition.
7616
76172008-10-22 Adrian Robert <Adrian.B.Robert@gmail.com>
cb83c00b
AR
7618
7619 * nsfns.m (ns_appkit_version): New function.
7620 (x-server-version): Use it.
7621 (syms_of_nsfns): Define ns-version-string here, not nsterm.m.
7622 (x-server-vendor): Don't check_ns().
7623
7624 * nsterm.m (syms_of_nsterm): Drop ns-version-string.
7625
a9b555d3
JB
76262008-10-22 Juanma Barranquero <lekktu@gmail.com>
7627
7628 * w32fns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert.
7629 Copied from 2005-02-03 change to xfns.c by Kim F. Storm.
7630
4626499f
KH
76312008-10-22 Kenichi Handa <handa@m17n.org>
7632
e3681952
KH
7633 * syntax.c (scan_words): Call word_boundary_p instead of comparing
7634 scripts.
7635
4626499f
KH
7636 * category.c (word_boundary_p): Check scripts instead of charset.
7637 Handle nil value in word-separating-categories and
7638 word-combining-categories.
7639 (syms_of_category): Fix docstrings of word-separating-categories
7640 and word-combining-categories.
7641
1560f91a
EZ
76422008-10-21 Eli Zaretskii <eliz@gnu.org>
7643
7644 * coding.c (Fencode_coding_region, Fdecode_coding_region)
7645 (Fdecode_coding_string, Fencode_coding_string): Doc fix.
7646
f4668441
MR
76472008-10-21 Martin Rudalics <rudalics@gmx.at>
7648
7649 * buffer.c (Fget_buffer, Fbury_buffer, switch_to_buffer_1):
7650 Rename arg "buffer" to "buffer_or_name".
7651 (Fkill_buffer): Rename arg "buffer" to "buffer_or_name" and make
7652 it optional.
7653 (no_switch_window): Remove since the return value is not used.
a9b555d3 7654 (Fswitch_to_buffer): Rename arg "buffer" to "buffer_or_name".
f4668441
MR
7655 Consider window as dedicated when Fwindow_dedicated_p returns a
7656 non-nil value.
7657 * lisp.h: Remove prototype for no_switch_window.
7658
fd75ddb2
JD
76592008-10-21 Jan Djärv <jan.h.d@swipnet.se>
7660
7661 * emacs.c (main): Unconditionally set PER_LINUX32 and exec
2ae37cf0 7662 temacs when dumping if HAVE_PERSONALITY_LINUX32 is defined.
fd75ddb2 7663
07295713
KH
76642008-10-21 Kenichi Handa <handa@m17n.org>
7665
7666 * coding.c (detect_coding_charset): For iso-8859-* coding systems,
7667 check Vlatin_extra_code_table.
7668
712adc82
EZ
76692008-10-20 Eli Zaretskii <eliz@gnu.org>
7670
7671 * fileio.c (Fset_file_modes): Doc fix.
7672
f549eb0b
MA
76732008-10-19 Michael Albinus <michael.albinus@gmx.de>
7674
7675 * dbusbind.c (XD_OBJECT_TO_DBUS_TYPE): Handle simple type symbols
7676 in arrays.
7677
aac0c6e3
MR
76782008-10-19 Martin Rudalics <rudalics@gmx.at>
7679
7680 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
7681 Mention kill-buffer in doc-string.
7682 (Fset_window_buffer): Reinsert tem check removed in last commit.
7683 (Fenlarge_window, Fshrink_window): Have argument names and
7684 doc-string follow Elisp manual more closely.
7685
76862008-10-18 Eli Zaretskii <eliz@gnu.org>
7687
7688 * fileio.c (Fset_file_modes): Doc fix.
7689
76902008-10-18 Martin Rudalics <rudalics@gmx.at>
7691
7692 * window.c (Fwindow_width, Fset_window_start)
7693 (Fwindow_parameters, Fwindow_parameter, Fset_window_parameter)
f5385255
SM
7694 (Fdelete_windows_on, Freplace_buffer_in_windows):
7695 Make doc-strings follow code and Elisp manual more closely.
aac0c6e3
MR
7696 (Fwindow_dedicated_p): Make window argument optional.
7697 (Fset_window_dedicated_p): Rename argument "arg" to "flag".
7698 (Fset_window_buffer): Respect any non-nil dedicated value for
7699 window. Rename "buffer" argument to "buffer_or_name".
7700
77012008-10-18 Ulrich Mueller <ulm@gentoo.org>
7702
7703 * m/sh3.h: New file, machine description for SuperH.
7704
77052008-10-17 Martin Rudalics <rudalics@gmx.at>
7706
7707 * window.c (Fsplit_window): Rename arg horflag to horizontal.
7708
77092008-10-17 Kenichi Handa <handa@m17n.org>
7710
7711 * ftfont.c (ftfont_otf_features): Fix indexing
7712 gsub_gpos->FeatureList.Feature. Check the validity of indices.
7713
77142008-10-16 Magnus Henoch <mange@freemail.hu>
7715
7716 * dbusbind.c (Fdbus_call_method): Unbreak usage line.
7717 (Fdbus_call_method_asynchronously): Ditto.
7718 This change makes C-h f display the argument list.
7719
77202008-10-16 Chong Yidong <cyd@stupidchicken.com>
7721
7722 * fileio.c (Fexpand_file_name): Doc fix.
7723
7724 * xfaces.c (Finternal_set_lisp_face_attribute): Make null values
7725 of :foreground and :background equivalent to unspecified (20.x
7726 compatibility).
7727
77282008-10-15 Eli Zaretskii <eliz@gnu.org>
7729
7730 * buffer.c (syms_of_buffer): Doc fix.
7731
77322008-10-14 Kenichi Handa <handa@m17n.org>
7733
7734 * font.c (font_clear_prop): When clearing font width, clear the
7735 average width field too.
7736
77372008-10-12 Andreas Schwab <schwab@suse.de>
7738
7739 * ftfont.c (ftfont_shape_by_flt): Make static.
7740 * ftfont.h (ftfont_shape_by_flt): Don't declare.
7741
7742 * font.c: Don't include <m17n-flt.h>.
7743
77442008-10-10 Eli Zaretskii <eliz@gnu.org>
7745
7746 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Decrease to 10000.
7747
77482008-10-09 Eli Zaretskii <eliz@gnu.org>
7749
7750 * frame.c (make_terminal_frame) [MSDOS]: Remove unused #ifdef'ed
7751 away code.
7752
77532008-10-09 Chong Yidong <cyd@stupidchicken.com>
7754
7755 * dispnew.c (update_text_area): Avoid looping due to large glyph
7756 overhangs (bug#1070).
7757
77582008-10-09 Kenichi Handa <handa@m17n.org>
7759
7760 * fontset.c (face_for_char): If face->fontset is negative, just
7761 return ascii_face.
7762
f5385255
SM
7763 * font.c (font_delete_unmatched): Fix previous change.
7764 Don't reject an entity if DPI and AVGWIDTH of an entity are 0.
aac0c6e3
MR
7765
77662008-10-09 Martin Rudalics <rudalics@gmx.at>
7767
7768 * frame.c (Fraise_frame): On text-only terminals select frame in
7769 order to make it visible. (Bug#1061)
7770
77712008-10-08 Chong Yidong <cyd@stupidchicken.com>
7772
7773 * fontset.c (fontset_find_font): Check frame validity.
7774
77752008-10-07 Chong Yidong <cyd@stupidchicken.com>
7776
a9b555d3 7777 * gtkutil.c (xg_display_open): Reset default display if none exists.
aac0c6e3
MR
7778 (xg_display_close): Allow Emacs to close all displays (bug#985).
7779
77802008-10-06 Andreas Schwab <schwab@suse.de>
7781
f5385255 7782 * sysdep.c (sys_signal): Always set SA_RESTART when noninteractively.
aac0c6e3
MR
7783
77842008-10-06 Chong Yidong <cyd@stupidchicken.com>
7785
f5385255 7786 * emacs.c (Vbefore_init_time, Vafter_init_time): Move from startup.el.
aac0c6e3 7787
a9b555d3 7788 * lisp.h (Vbefore_init_time, Vafter_init_time): Declare.
aac0c6e3
MR
7789
7790 * gtkutil.c (x_wm_set_size_hint): Return immediately if called
7791 during initialization.
7792
77932008-10-04 Eli Zaretskii <eliz@gnu.org>
7794
7795 * xdisp.c (redisplay_internal): If frame switched, redisplay the
7796 whole thing on MSDOS frames as well as on a TTY.
7797
7798 * dispnew.c (update_frame): Flush termscript for MSDOS frames as
7799 well as for TTY.
7800 (Fopen_termscript): Allow opening a termscript on MSDOS frames as
7801 well as on a TTY.
7802
7803 * sysdep.c (init_sys_modes): Set FRAME_GARBAGED_P for MSDOS frames
7804 as well as for TTY.
7805
7806 * systime.h (EMACS_TIME_CMP): Cast EMACS_SECS values to `long'.
7807
7808 * dispnew.c (change_frame_size_1): Set FrameRows and FrameCols for
7809 MSDOS frames as well.
7810
78112008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
7812
7813 * image.c (x_clear_image_1): Under NS, call ns_free_indexed_color with
7814 correct arguments.
b71ac3dd 7815 * menu.c (find_and_return_menu_selection): Add cast.
aac0c6e3
MR
7816
78172008-10-03 Glenn Morris <rgm@gnu.org>
7818
7819 * emacs.c (USAGE1): Add --daemon.
7820
78212008-10-02 Eli Zaretskii <eliz@gnu.org>
7822
7823 * process.c (procfs_system_process_attributes): Multiply `pcpu' by
7824 100, so it's in percents as advertised.
7825
78262008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
7827
7828 * nsterm.h (ns_cursor_types, ns_output.desired_cursor_color)
7829 (ns_output.current_cursor, ns_output.desired_cursor)
7830 (ns_output.last_inactive, FRAME_CURSOR, FRAME_NEW_CURSOR)
7831 (FRAME_NEW_CURSOR_COLOR): Remove.
7832
7833 * nsfns.m (ns_set_cursor_color): Use FRAME_CURSOR_COLOR.
a9b555d3 7834 (ns_lisp_to_cursor_type, ns_cursor_type_to_lisp): Use core Emacs
aac0c6e3
MR
7835 enumeration (HOLLOW_BOX_CURSOR, etc.).
7836
7837 * nsterm.m (ns_frame_rehighlight): Remove commented code.
7838 (draw_window_cursor): Simplify code.
f5385255
SM
7839 (EmacsView-windowDidBecomeKey:,-windowDidResignKey:):
7840 Don't change cursor type. In latter, call rehighlight instead of doing
aac0c6e3 7841 updates manually.
a9b555d3
JB
7842 (EmacsPrefsController-setPanelFromValues,-setValuesFromPanel):
7843 Use core Emacs cursor types.
aac0c6e3 7844
b8ff72fa 7845 * xdisp.c (draw_glyphs): Don't call notice_overwritten_cursor under NS.
aac0c6e3
MR
7846
78472008-10-02 Martin Rudalics <rudalics@gmx.at>
7848
7849 * process.c (Faccept_process_output): Fix doc-string.
7850
78512008-10-02 Dan Nicolaescu <dann@ics.uci.edu>
7852
7853 * gmalloc.c (__sbrk): Also define for uClibc.
7854
7855 * s/gnu-linux.h (GNU_LIBRARY_PENDING_OUTPUT_COUNT): Add definition
7856 for uClibc.
7857
78582008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
7859
7860 * nsfont.m (nsfont_spec_to_traits): Use UnXX masks only for non-normal
7861 styles.
7862 (nsfont_open): Reenable the cache.
7863
78642008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
7865
7866 * font.c (font_matching_entity): Reflect ATTRS in font selection.
7867 (font_find_for_lface) [HAVE_NS]: Don't ignore case.
7868
78692008-09-30 Stefan Monnier <monnier@iro.umontreal.ca>
7870
7871 * dispnew.c (Fsend_string_to_terminal): Don't try to send a string to
7872 a suspended terminal.
7873
78742008-09-30 Michael Albinus <michael.albinus@gmx.de>
7875
7876 * dbusbind.c (xd_signature): Use strcat instead of sprintf.
7877
78782008-09-30 Eli Zaretskii <eliz@gnu.org>
7879
7880 * Makefile.in (MSDOS_SUPPORT): Remove ccl.elc and codepage.elc.
7881
78822008-09-30 Chong Yidong <cyd@stupidchicken.com>
7883
7884 * xdisp.c (move_it_to): Don't advance the iterator if the last tab
7885 in a continued line coincides with a line beginning.
7886
78872008-09-29 Adrian Robert <Adrian.B.Robert@gmail.com>
7888
7889 * nsfont.m (nsfont_trait_distance): Fix bug.
7890 (nsfont_list): Return a list rather than a vector (syncs with Handa
7891 changes of 2008-05-14).
7892 (nsfont_open): Improve logging.
7893
78942008-09-29 Andreas Schwab <schwab@suse.de>
7895
7896 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
7897
78982008-09-28 Martin Rudalics <rudalics@gmx.at>
7899
7900 * character.c (Fchar_resolve_modifiers): Rewrite Elisp function
7901 name as char-resolve-modifiers.
7902 Reported by: Markus Triska <markus.triska@gmx.at>
7903
79042008-09-28 Dan Nicolaescu <dann@ics.uci.edu>
7905
7906 * dispnew.c (init_display): Return earlier when running as a daemon.
7907
79082008-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
7909
7910 * nsfont.m (nsfont_draw): Fix up composition rendering (cmp_from, ...).
7911
79122008-09-27 Eli Zaretskii <eliz@gnu.org>
7913
7914 * composite.c (Fcomposition_get_gstring)
7915 (Fcompose_region_internal, Fcompose_string_internal)
7916 (Ffind_composition_internal): Doc fix.
7917 (syms_of_composite) <compose-chars-after-function>: Doc fix.
7918 (syms_of_composite) <auto-composition-function>: Doc fix.
7919 (syms_of_composite) <composition-function-table>: Doc fix.
7920
79212008-09-25 Chong Yidong <cyd@stupidchicken.com>
7922
7923 * search.c (wordify): New argument for lax word-ends.
7924 (Fword_search_forward_lax, Fword_search_backward_lax): New funs.
7925
79262008-09-24 Dan Nicolaescu <dann@ics.uci.edu>
7927
7928 * lisp.h (is_daemon): Declare.
7929 * dispnew.c (init_display): Do not try to initialize the terminal
7930 when running as a daemon.
7931
79322008-09-22 Chong Yidong <cyd@stupidchicken.com>
7933
7934 * nsfns.m (compute_tip_xy): Use x_display_pixel_width and
7935 x_display_pixel_height.
7936
79372008-09-22 Martin Rudalics <rudalics@gmx.at>
7938
7939 * undo.c (record_point): Don't call Fundo_boundary for first
7940 change. (Bug#731)
7941
79422008-09-22 Juanma Barranquero <lekktu@gmail.com>
7943
7944 * emacs.c (Fdaemonp): Doc fix.
7945
79462008-09-22 Dan Nicolaescu <dann@ics.uci.edu>
7947
7948 * emacs.c (main): Place #ifdef in the proper place.
7949
79502008-09-21 Dan Nicolaescu <dann@ics.uci.edu>
7951
7952 * emacs.c (standard_args): Add --daemon.
7953 (main): Disconnect from the terminal when --daemon is passed.
7954 (is_daemon): New variable.
7955 (Fdaemonp): New function.
7956 (syms_of_emacs): Defsubr it.
7957
79582008-09-20 Chong Yidong <cyd@stupidchicken.com>
7959
7960 * xdisp.c (get_next_display_element): Handle string display
7961 correctly when checking for the end of a box run.
7962
79632008-09-20 Glenn Morris <rgm@gnu.org>
7964
7965 * fileio.c (Qdelete_by_moving_to_trash): New Lisp_Object.
7966 (syms_of_fileio): Add Qdelete_by_moving_to_trash.
7967 (Frename_file): Avoid copying to trash if a rename involves
7968 a delete. (Bug#964).
7969
79702008-09-20 Eli Zaretskii <eliz@gnu.org>
7971
7972 * keyboard.c (Fset_quit_char, Fset_input_meta_mode)
7973 (Fset_output_flow_control, Fcurrent_input_mode): Support MSDOS
7974 frames as well as termcap frames.
7975 (handle_interrupt): Remove "#ifndef MSDOS" around the call to
7976 get_named_tty.
7977
79782008-09-19 Eli Zaretskii <eliz@gnu.org>
7979
7980 * process.c (procfs_system_process_attributes): Fix cmdline in
7981 case /proc/PID/cmdline is empty.
7982
7983 * xterm.c (x_wm_set_size_hint): Use x_display_pixel_width and
7984 x_display_pixel_height.
7985
79862008-09-19 Juanma Barranquero <lekktu@gmail.com>
7987
7988 * frame.c (x_fullscreen_adjust): Declare var as Display_Info.
7989
7990 * w32fns.c (Fx_display_pixel_width, Fx_display_pixel_height)
7991 (compute_tip_xy): Use x_display_pixel_width, x_display_pixel_height.
7992
79932008-09-19 Dan Nicolaescu <dann@ics.uci.edu>
7994
7995 * dispextern.h (struct it): Move line_wrap away from the middle of
7996 bitfields. Move voffset in struct iterator_stack_entry after the
7997 bitfields. Move tab_width near after another short.
7998
79992008-09-18 Dan Nicolaescu <dann@ics.uci.edu>
8000
8001 * frame.h (struct frame): Move alpha from the middle of bitfields.
8002
8003 * window.h (struct window): Move frozen_window_start_p after the
8004 rest of the bitfields to reduce padding.
8005
80062008-09-18 Chong Yidong <cyd@stupidchicken.com>
8007
8008 * xterm.h (x_display_info): Remove `height' and `width' members.
8009
8010 * nsterm.h (ns_display_info): Remove `height' and `width' members.
8011
8012 * w32term.h (w32_display_info): Remove `height', `width',
8013 `height_in', and `width_in' members.
8014
b8ff72fa
SM
8015 * xterm.c (x_display_pixel_height, x_display_pixel_width):
8016 New functions.
aac0c6e3
MR
8017 (x_calc_absolute_position): Use them.
8018 (x_term_init): Omit removed `height' and `width' members.
8019
b8ff72fa
SM
8020 * w32term.c (x_display_pixel_height, x_display_pixel_width):
8021 New functions.
aac0c6e3
MR
8022 (w32_read_socket, x_calc_absolute_position): Use them.
8023 (w32_initialize_display_info, w32_term_init): Omit removed members
8024 of w32_display_info.
8025
b8ff72fa
SM
8026 * nsterm.m (x_display_pixel_height, x_display_pixel_width):
8027 New functions.
8028 (ns_initialize_display_info): Omit removed members of ns_display_info.
aac0c6e3 8029
b8ff72fa
SM
8030 * xterm.c (x_display_pixel_height, x_display_pixel_width):
8031 New functions.
aac0c6e3
MR
8032 (x_calc_absolute_position): Use them.
8033 (x_term_init): Omit removed `height' and `width' members.
8034
8035 * xfns.c (Fx_display_pixel_width, Fx_display_pixel_height)
b8ff72fa
SM
8036 (compute_tip_xy):
8037 * frame.c (x_fullscreen_adjust):
aac0c6e3
MR
8038 * xmenu.c (menu_position_func): Use x_display_pixel_height and
8039 x_display_pixel_width.
8040
80412008-09-18 Kenichi Handa <handa@m17n.org>
8042
8043 * composite.c (fill_gstring_header): Don't check FROM and TO here.
8044 (composition_compute_stop_pos): Fix handling of static composition.
8045 (Fcomposition_get_gstring): Check FROM and TO at first.
8046
80472008-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
8048
46e722a9 8049 * composite.c (Fcomposition_get_gstring): Yet another int/Lisp_Object
aac0c6e3
MR
8050 mixup (YAILOM).
8051
80522008-09-17 Chong Yidong <cyd@stupidchicken.com>
8053
8054 * indent.c (Fvertical_motion): Use position reported by iterator
8055 instead of PT for determining screen motion (bug#943).
8056
80572008-09-17 Romain Francoise <romain@orebokech.com>
8058
8059 * composite.c (composition_adjust_point): Fix int/EMACS_INT mixup.
8060
80612008-09-17 Kenichi Handa <handa@m17n.org>
8062
8063 * ftfont.c (ftfont_shape_by_flt): Downcase family name.
8064
8065 * composite.c (Fcomposition_get_gstring): Make bigger gstring_work
8066 if necessary.
8067
80682008-09-16 Kenichi Handa <handa@m17n.org>
8069
8070 * coding.c (make_conversion_work_buffer): Avoid calling
8071 Fget_buffer_create if it is not necessary.
8072
80732008-09-15 Martin Rudalics <rudalics@gmx.at>
8074
8075 * window.c (Fselect_window): Don't update window_select_count and
8076 use_time when norecord is not nil.
8077
80782008-09-14 Kenichi Handa <handa@m17n.org>
8079
8080 * fileio.c (Finsert_file_contents): Delete incorrect decrement of
8081 specpdl_ptr.
8082
80832008-09-12 Kenichi Handa <handa@m17n.org>
8084
8085 * indent.c (scan_for_column): Don't handle automatic composition
8086 if the current buffer is not associated with a window.
8087
8088 * composite.c (composition_reseat_it): If the current buffer is
8089 not associated with a window, ignore the automatic composition.
8090 (find_automatic_composition): Likewise.
8091
80922008-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
8093
8094 * term.c (close_gpm): New fun extracted from Fgpm_mouse_stop.
8095 (Fgpm_mouse_stop): Use it.
8096 * termhooks.h (close_gpm): Declare.
8097 * keyboard.c (tty_read_avail_input): Forcefully close the gpm
8098 connection if Gpm_GetEvent fails.
8099
8100 * window.c (set_window_buffer): Always preserve current-buffer.
8101
81022008-09-12 Glenn Morris <rgm@gnu.org>
8103
8104 * charset.c (init_charset): Warn if etc/charsets not found. (Bug#909)
8105
81062008-09-11 Glenn Morris <rgm@gnu.org>
8107
8108 * charset.c (charset-map-path): Doc fix.
8109
81102008-09-10 Kenichi Handa <handa@m17n.org>
8111
8112 * xdisp.c (handle_composition_prop): Set it->cmp_it.ch to -1.
8113
8114 * font.c (Ffont_shape_gstring): Make glyphs of non-nil adjustment
8115 compose a grapheme cluster with the preceding base glyph.
8116
8117 * composite.c (composition_compute_stop_pos): Fix previous change.
8118 Reset cmp_it->id to -1 at first.
8119
81202008-09-10 Glenn Morris <rgm@gnu.org>
8121
8122 * Makefile.in (character.o, chartab.o): Fix config.h typo.
8123
81242008-09-09 Chong Yidong <cyd@stupidchicken.com>
8125
8126 * keyboard.c (read_key_sequence): Reapply translation maps when
8127 switching keyboards.
8128
81292008-09-09 Kenichi Handa <handa@m17n.org>
8130
8131 * ftfont.c (ftfont_shape_by_flt): Use "combining" FLT for ASCII
8132 characters.
8133
8134 * composite.c (FORWARD_CHAR): Fix calculation
8135 of (POSITION).pos_byte.
8136 (composition_compute_stop_pos): Limit the search of composition to
8137 at most 500 characters ahead. If we reach the limit or find a
8138 newline, set cmp_it->ch to -2 and return 0.
8139 (composition_reseat_it): Handle the case that cmp_it->ch is -2.
8140
81412008-09-08 Kenichi Handa <handa@m17n.org>
8142
8143 * indent.c (Fvertical_motion): Be sure to set
8144 it_overshoot_expected if it.cmp_it.id is non-negative.
8145
81462008-09-07 Andreas Schwab <schwab@suse.de>
8147
8148 * callproc.c (Fcall_process): Don't hold references to string data
8149 across garbage collection. Move initialisation of new_argv down
8150 to avoid compiler bug.
8151
81522008-09-07 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
8153
8154 * process.c (Fsystem_process_attributes): Doc fix.
8155
81562008-09-07 Chong Yidong <cyd@stupidchicken.com>
8157
8158 * callproc.c (Fcall_process): Canonicalize current directory name.
8159
8160 * xdisp.c (move_it_to): When moving by vpos, ensure that the
8161 iterator advances to the next line if the current line ends in a
8162 continued tab.
8163
81642008-09-07 Teodor Zlatanov <tzz@lifelogs.com>
8165
8166 * nsfont.m (nsfont_draw): Fix the references to missing gidx data
8167 member to point to cmp_from.
8168
8169 * xdisp.c: Doc fix for references to gidx data member.
8170
81712008-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
8172
8173 * buffer.c (Fbuffer_swap_text): Reset window->point markers.
8174
81752008-09-07 Kenichi Handa <handa@m17n.org>
8176
8177 * composite.c (FORWARD_CHAR): Check STOP after
8178 incrementing (POSITION).pos.
8179
81802008-09-06 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
8181
8182 * process.c (Fsystem_process_attributes): Doc fix.
8183
81842008-09-06 Chong Yidong <cyd@stupidchicken.com>
8185
8186 * keyboard.c (Ftop_level): Doc fix.
8187
81882008-09-06 Eli Zaretskii <eliz@gnu.org>
8189
8190 * xmenu.c (xmenu_show) [!HAVE_X_WINDOWS]: If frame has a
8191 minibuffer, don't let lower part of menu invade the echo area.
8192
8193 * msdos.c (IT_menu_display): Use STRING_CHAR_ADVANCE instead of a
8194 "char *q" to access menu text and advance through it. Revert the
8195 change that displayed ">" instead of ASCII character 0x10.
8196
81972008-09-05 Eli Zaretskii <eliz@gnu.org>
8198
8199 * menu.c (single_menu_item) [!HAVE_BOXES]: Enable emulation of
8200 toggle boxes and radio buttons on MS-DOS as well.
8201
82022008-09-05 Kenichi Handa <handa@m17n.org>
8203
8204 * composite.c (autocmp_chars): Check lookback count.
8205 (composition_compute_stop_pos): Set cmp_it->lookback.
8206 (composition_reseat_it): Check lookback count.
8207 (struct position_record): New struct.
8208 (FORWARD_CHAR, BACKWARD_CHAR, CHAR_COMPOSABLE_P): New macros.
8209 (find_automatic_composition): New function.
8210 (composition_adjust_point): Use find_automatic_composition.
8211
8212 * dispextern.h (struct composition_it): New member lookback.
8213
82142008-09-02 Chong Yidong <cyd@stupidchicken.com>
8215
8216 * indent.c (Fvertical_motion): Don't call move_it_by_lines again
8217 if moving by a single line.
8218
82192008-09-02 Andreas Schwab <schwab@suse.de>
8220
8221 * xterm.c (x_delete_display): Fix merge error.
8222
8223 * fileio.c (Fexpand_file_name): Remove unused variables.
8224
82252008-09-02 Eli Zaretskii <eliz@gnu.org>
8226
8227 * fileio.c (Fexpand_file_name): Copy argument `name' into local
8228 storage on all platforms, not just on DOS_NT.
8229
82302008-09-02 Jason Rumney <jasonr@gnu.org>
8231
b8ff72fa
SM
8232 * w32menu.c (Fx_popup_menu, Fx_popup_dialog, w32_menu_show):
8233 Ensure mouse is not grabbed after menu is finished.
aac0c6e3
MR
8234
82352008-09-01 Chong Yidong <cyd@stupidchicken.com>
8236
8237 * xfaces.c (Finternal_set_alternative_font_family_alist)
8238 (Finternal_set_alternative_font_registry_alist): Properly copy
8239 entire alist structure.
8240
82412008-09-01 Kenichi Handa <handa@m17n.org>
8242
d66c0241 8243 * ftfont.c (ftfont_spec_pattern): Don't create a charset if the
aac0c6e3 8244 representative chars of the script is a vector.
d66c0241
JB
8245 (ftfont_list): Handle the case where the representative chars of
8246 the script is a vector.
aac0c6e3
MR
8247
8248 * character.c (syms_of_character): Docstring of
8249 script-representative-chars fixed.
8250
82512008-08-31 Eli Zaretskii <eliz@gnu.org>
8252
8253 * msdos.c (BUILD_CHAR_GLYPH): New macro.
8254 (IT_menu_display): Use it instead of SET_CHAR_GLYPH to construct
8255 the menu. Allocate larger buffer for `text', to account for
8256 possible ^C characters.
8257
82582008-08-31 Martin Rudalics <rudalics@gmx.at>
8259
8260 * xdisp.c (prepare_menu_bars): Don't call
8261 Vwindow_size_change_functions with arg Qt.
8262
82632008-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
8264
8265 * font.h (font_range):
8266 * fileio.c (report_file_error):
46e722a9
SM
8267 * composite.c (composition_update_it): Yet another int/Lisp_Object
8268 mixup (YAILOM).
aac0c6e3
MR
8269
82702008-08-30 Glenn Morris <rgm@gnu.org>
8271
8272 * data.c (Fmake_variable_frame_local): Doc fix.
8273
8274 * frame.c (Fmodify_frame_parameters): Doc fix.
8275
82762008-08-30 Eli Zaretskii <eliz@gnu.org>
8277
8278 * w32.c (init_user_info): Allocate buf[] with xmalloc using the size
8279 needed by GetTokenInformation.
8280 (w32_system_process_attributes): Check return values of all system
8281 APIs.
8282
8283 * msdos.c (IT_display_cursor): Write "CURSOR ON/OFF" to termscript
8284 only when the state changes.
8285 (IT_update_begin, IT_update_end): Add termscript trace.
8286
8287 * w16select.c (Fw16_set_clipboard_data): Don't encode text if
8288 clipboard is unavailable. Set dst to NULL if it doesn't point to
8289 malloc'ed data.
8290 (Fw16_get_clipboard_data): Initialize htext to NULL, to avoid
8291 passing random values to xfree.
8292
8293 * dispnew.c (init_display): Set `tty's association in frame's
b8ff72fa 8294 parameters alist to the name of the terminal device, if that is known.
aac0c6e3
MR
8295
82962008-08-29 Jason Rumney <jasonr@gnu.org>
8297
8298 * w32uniscribe.c (uniscribe_check_otf): Don't fallback on DFLT script.
8299
83002008-08-29 Eli Zaretskii <eliz@gnu.org>
8301
8302 * composite.c (fill_gstring_body): Avoid compiler warnings.
8303
8304 * font.c (font_fill_lglyph_metrics): Use EMACS_INT in
8305 LGLYPH_SET_CODE to avoid compiler warnings.
8306
2ae37cf0 8307 * makefile.w32-in ($(BLD)/w32uniscribe.$(O)): Depend on composite.h.
aac0c6e3
MR
8308
8309 * composite.h (LGLYPH_SET_CODE): Cast `val' to EMACS_INT.
8310
8311 * w32uniscribe.c (uniscribe_shape): Shut up compiler warning in
8312 LGLYPH_SET_CODE.
8313
83142008-08-29 Kenichi Handa <handa@m17n.org>
8315
8316 * fileio.c (report_file_error): Don't downcase the first character
8317 of errstring if it is still unibyte.
8318
83192008-08-29 Kenichi Handa <handa@m17n.org>
8320
8321 These changes are to re-implement the automatic composition so
8322 that it doesn't use text properties.
8323
8324 * Makefile.in (ftfont.o): Depend on composite.h.
8325 (composite.o): Depend dispextern.h, font.h, frame, and window.h.
8326
8327 * character.h (Vunicode_category_table): Extern it.
8328
8329 * character.c (Vunicode_category_table): New variable.
8330 (syms_of_character): DEFVAR_LISP Vunicode_category_table.
8331
8332 * chartab.c (optimize_sub_char_table): Perform more greedy
8333 optimization.
8334
b8ff72fa
SM
8335 * composite.h (enum composition_method):
8336 Delete COMPOSITION_WITH_GLYPH_STRING.
aac0c6e3
MR
8337 (COMPOSITION_METHOD): Don't check COMPOSITION_WITH_GLYPH_STRING.
8338 (Vcomposition_function_table): Extern it.
8339 (LGSTRING_XXX, LGLYPH_XXX): Macros moved from font.h.
8340 (composition_gstring_put_cache, composition_gstring_from_id)
8341 (composition_gstring_p, composition_gstring_width)
8342 (composition_compute_stop_pos, composition_reseat_it)
8343 (composition_update_it, composition_adjust_point): Extern them.
8344 (Fcomposition_get_gstring): EXFUN it.
8345
d66c0241 8346 * composite.c: Include window.h, frame.h, dispextern.h, font.h.
aac0c6e3
MR
8347 (Vcomposition_function_table)
8348 (get_composition_id): Don't handle COMPOSITION_WITH_GLYPH_STRING.
b8ff72fa
SM
8349 (gstring_hash_table, gstring_work, gstring_work_headers):
8350 New variables.
aac0c6e3
MR
8351 (gstring_lookup_cache, composition_gstring_put_cache)
8352 (composition_gstring_from_id, composition_gstring_p)
8353 (composition_gstring_width, fill_gstring_header)
8354 (fill_gstring_body, autocmp_chars, composition_compute_stop_pos)
8355 (composition_reseat_it, composition_update_it)
b8ff72fa 8356 (composition_adjust_point, Fcomposition_get_gstring): New functions.
aac0c6e3
MR
8357 (syms_of_composite): Initialize gstring_hash_table, gstrint_work,
8358 and gstring_work_headers. DEFVAR_LISP composition-function-table.
8359 Defsubr compostion_get_gstring.
8360
8361 * dispextern.h (struct glyph): New union u.cmp. Delete the member
8362 cmp_id.
8363 (struct glyph_string): Delete the member gidx. New members
8364 cmp_id, cmp_from, and cmp_to.
8365 (enum it_method): Delete GET_FROM_COMPOSITION.
8366 (struct composition_it): New struct.
8367 (struct it): New member cmp_it, and iterator_stack_entry.cmp_it.
8368 Delete c, len, cmp_id, cmp_len in u.comp.
8369
8370 * font.h (enum lgstring_indices): Delete it.
b8ff72fa 8371 (LGSTRING_XXX, LGLYPH_XXX): Move these macros to composite.h.
aac0c6e3 8372 (enum lglyph_indices): Likewise.
b8ff72fa 8373 (font_range): Adjust extern.
aac0c6e3
MR
8374 (font_fill_lglyph_metrics): Extern it.
8375
8376 * font.c (QCf): New variable.
8377 (check_gstring): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
8378 (font_prepare_composition): Delete this function.
8379 (font_range): Type and arguments changed.
8380 (Ffont_make_gstring, Ffont_fill_gstring): Delete them.
8381 (font_fill_lglyph_metrics): New function.
b8ff72fa 8382 (Ffont_shape_text): Rename to Ffont_shape_gstring and change arguments.
aac0c6e3 8383 (syms_of_font): DEFSYM QCf. Delete defsubr for
b8ff72fa
SM
8384 Sfont_make_gstring, Sfont_fill_gstring, Sfont_shape_text.
8385 Defsubr Sfont_shape_gstring.
aac0c6e3
MR
8386
8387 * fontset.h (font_for_char): Extern it.
8388
8389 * fontset.c (font_for_char): New function.
8390
8391 * ftfont.c: Include composite.h.
8392 (ftfont_resolve_generic_family): Add langset "en" to pattern.
b8ff72fa 8393 (ftfont_shape_by_flt): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
aac0c6e3
MR
8394
8395 * indent.c: Include composite.h and dispextern.h.
8396 (check_composition): Delete this function.
8397 (scan_for_column): Handle composition by
8398 composition_compute_stop_pos, composition_reseat_it, and
8399 composition_update_it.
8400 (compute_motion): Likewise.
8401 (Fvertical_motion): Fix checking of composition.
8402
8403 * keyboard.c (adjust_point_for_property): Check composition by
8404 composition_adjust_point.
8405
b8ff72fa 8406 * nsterm.m (ns_draw_glyph_string): Adjust for the change of
aac0c6e3
MR
8407 struct glyph_string.
8408
b8ff72fa
SM
8409 * term.c (encode_terminal_code): Adjust for the change of struct glyph.
8410 (append_composite_glyph): Adjust for the change of struct it and
aac0c6e3
MR
8411 struct glyph.
8412 (produce_composite_glyph): Likewise.
8413
b8ff72fa
SM
8414 * w32term.c (x_draw_composite_glyph_string_foreground):
8415 Adjust for the change of struct glyph_string.
aac0c6e3
MR
8416 (x_draw_glyph_string): Likewise.
8417
8418 * w32uniscribe.c (struct uniscribe_font_info): Include composite.h.
8419 (uniscribe_shape): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
8420
8421 * xdisp.c: Include font.h.
8422 (it_props): Delete the entry for Qauto_composed.
8423 (init_iterator): Initialize it->cmp_it.id to -1.
8424 (compute_stop_pos): Call composition_compute_stop_pos.
b8ff72fa 8425 (face_before_or_after_it_pos): Adjust for the change of struct it.
aac0c6e3
MR
8426 (handle_auto_composed_prop): Delete it.
8427 (handle_composition_prop): Handle only static composition.
8428 (next_overlay_string): Remove it->method == GET_FROM_COMPOSITION
8429 from xassert. Initialize it->cmp_it.stop_pos.
b8ff72fa 8430 (push_it): Adjust for the change of struct it.
aac0c6e3
MR
8431 (pop_it): Likewise.
8432 (get_next_element): Delete next_element_from_composition.
8433 (CHAR_COMPOSED_P): New macro.
8434 (get_next_display_element): For automatic composition, get a face
8435 from the font in the glyph-string.
8436 (set_iterator_to_next): For GET_FROM_BUFFER and GET_FROM_STRING,
b8ff72fa 8437 check composition by it->cmp_it.id. Delete GET_FROM_COMPOSITION case.
aac0c6e3
MR
8438 (next_element_from_string): Check if the character at the current
8439 position is composed by CHAR_COMPOSED_P.
8440 (next_element_from_buffer): Likewise.
d66c0241
JB
8441 (next_element_from_composition): Adjust for the change of struct it.
8442 Update it->cmp_it.
b8ff72fa
SM
8443 (dump_glyph): Adjust for the change of struct glyph.
8444 (fill_composite_glyph_string): Adjust for the change of struct
aac0c6e3
MR
8445 it and struct glyph. Don't handle automatic composition here.
8446 (fill_gstring_glyph_string): New function.
8447 (x_get_glyph_overhangs): Handle automatic composition.
b8ff72fa 8448 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the change of struct glyph.
aac0c6e3
MR
8449 (BUILD_GSTRING_GLYPH_STRING): New macro.
8450 (BUILD_GLYPH_STRINGS): Call BUILD_GSTRING_GLYPH_STRING for
8451 automatic composition.
b8ff72fa 8452 (append_composite_glyph): Adjust for the change of struct it and
aac0c6e3 8453 struct glyph.
b8ff72fa 8454 (x_produce_glyphs): Adjust for the change of struct it.
aac0c6e3 8455
b8ff72fa 8456 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
aac0c6e3
MR
8457 the change of struct glyph_string.
8458 (x_draw_glyph_string): Likewise.
8459
84602008-08-29 Glenn Morris <rgm@gnu.org>
8461
8462 * buffer.c (word-wrap): Doc fix.
8463 * xdisp.c (truncate-partial-width-windows): Doc fix.
8464 Increase default to 50.
8465
84662008-08-29 Chong Yidong <cyd@stupidchicken.com>
8467
8468 * xdisp.c (update_tool_bar_unwind): New function.
8469 (update_tool_bar): Temporarily set selected frame before building
8470 tool-bar items.
8471
84722008-08-28 Michael Albinus <michael.albinus@gmx.de>
8473
8474 * dbusbind.c (XD_ERROR, XD_DEBUG_MESSAGE): Use strncpy and
8475 snprintf, respectively.
8476 (xd_append_arg): Convert strings with Fstring_make_unibyte.
8477
84782008-08-28 Chong Yidong <cyd@stupidchicken.com>
8479
8480 * Makefile.in: Revert (undocumented) 2008-08-20 change adding
8481 LDFLAGS to GNUstep CC invocation.
8482
84832008-08-27 Chong Yidong <cyd@stupidchicken.com>
8484
8485 * indent.c (Fvertical_motion): Revert last change. Handle the
8486 general case where we are moving forward, and PT spans multiple
8487 screen lines.
8488
8489 * eval.c (find_handler_clause): Temporarily increase
8490 max-lisp-eval-depth while printing the backtrace buffer, to
8491 guarantee that help-mode code can run.
8492
84932008-08-27 Eli Zaretskii <eliz@gnu.org>
8494
8495 * msdos.c (Fmsdos_remember_default_colors): Don't reverse frame
8496 colors under -rv.
8497 (IT_set_frame_parameters): Don't swap foreground and background
8498 colors if `(reverse . t)' is present in the frame properties.
8499 (internal_terminal_init): Call init_frame_faces only for the
8500 initial frame.
8501
85022008-08-27 Andreas Schwab <schwab@suse.de>
8503
8504 * dired.c (Ffile_attributes): Avoid compiler warning in bitshift.
8505
85062008-08-27 Andreas Schwab <schwab@suse.de>
8507
8508 * search.c (search_buffer): Set char_base to zero only at the end.
8509
85102008-08-27 Kenichi Handa <handa@m17n.org>
8511
b8ff72fa 8512 * fileio.c (report_file_error): Fix handling of multibyte error string.
aac0c6e3
MR
8513
85142008-08-27 Andreas Seltenreich <seltenreich@gmx.de>
8515
8516 * xterm.c (x_term_init): Temporarily hide the partially
8517 initialized terminal while calling vendor-specific-keysyms.
8518
85192008-08-26 Eli Zaretskii <eliz@gnu.org>
8520
8521 * msdos.c (internal_terminal_init): Most initializations done only
8522 once, especially initial_screen_colors[] and termscript open.
8523
85242008-08-26 Chong Yidong <cyd@stupidchicken.com>
8525
8526 * eval.c (Fcondition_case): Doc fix.
8527
8528 * widgetprv.h (EmacsFramePart): Change font member to the new font
8529 struct.
8530
8531 * widget.c: Include character.h and font.h for XSETFONT.
8532 (setup_frame_gcs): Compute X font id from font struct, just once.
8533
85342008-08-26 Eli Zaretskii <eliz@gnu.org>
8535
8536 * term.c (get_named_tty): Fix last change.
8537
85382008-08-26 Chong Yidong <cyd@stupidchicken.com>
8539
8540 * indent.c (Fvertical_motion): If moving forward starting from a
b8ff72fa 8541 multi-line string, move the iterator to the last line of that string.
aac0c6e3
MR
8542
85432008-08-25 Eli Zaretskii <eliz@gnu.org>
8544
8545 * frame.c (do_switch_frame): Mark previously displayed frame as
8546 obscured for FRAME_MSDOS_P frames as well.
8547
85482008-08-24 Eli Zaretskii <eliz@gnu.org>
8549
8550 * frame.c (make_terminal_frame): Initialize f->terminal,
8551 f->terminal->reference_count, and scroll bars on MS-DOS as well.
8552 Set the top frame to newly created frame.
8553 (Fmake_terminal_frame): Reuse the_only_display_info.
8554
8555 * vm-limit.c (get_lim_data) [MSDOS]: Use alternative methods of
8556 estimating available memory.
8557
b97439ce 85582008-08-23 David Reitter <david.reitter@gmail.com>
aac0c6e3
MR
8559
8560 * nsterm.m (ns_draw_window_cursor): Don't call
8561 NSDisableScreenUpdates and NSEnableScreenUpdates on
8562 non-NS_IMPL_COCOA systems.
8563
85642008-08-23 Andreas Schwab <schwab@suse.de>
8565
8566 * process.c (procfs_system_process_attributes): Fix use of
8567 uninitialized variables.
8568
85692008-08-23 Eli Zaretskii <eliz@gnu.org>
8570
8571 * emacs.c (main) [MSDOS]: Call syms_of_xmenu.
8572
8573 * dispnew.c (init_display): Remove MS-DOS specific conditions for
8574 calling tty-set-up-initial-frame-faces.
8575
b8ff72fa
SM
8576 * xmenu.c (Fx_popup_dialog, Fx_popup_menu, xmenu_show):
8577 Allow MSDOS frames along with X frames.
aac0c6e3
MR
8578
8579 * termhooks.h (TERMINAL_ACTIVE_P): Handle output_msdos_raw in
8580 addition to output_termcap.
8581
8582 * xdisp.c (redisplay_internal) [MSDOS]: Don't call set_tty_color_mode.
8583
8584 * termchar.h (FRAME_TTY): Support output_msdos_raw.
8585 (struct tty_display_info) [MSDOS]: Add fields related to mouse
8586 highlight.
8587
8588 * process.c [!subprocesses]: Define QCname.
8589 (syms_of_process): Intern and staticpro it.
8590
8591 * w16select.c (Fw16_set_clipboard_data, Fw16_get_clipboard_data):
b8ff72fa
SM
8592 Adjust for changes in encoding/decoding routines.
8593 Use encode_coding_object and decode_coding_object instead of
aac0c6e3
MR
8594 encode_coding and decode_coding.
8595
b8ff72fa 8596 * sysdep.c (init_sys_modes): Call dos_ttraw with tty_out as argument.
aac0c6e3
MR
8597
8598 * dosfns.c: Include frame.h before termhooks.h.
8599 (dos_cleanup): Use CURTTY ()->termscript instead of a global
8600 variable termscript.
8601
8602 * s/msdos.h (USER_FULL_NAME): Define.
8603 (SYSTEM_PURESIZE_EXTRA): Bump up to 100K.
8604
8605 * editfns.c (USER_FULL_NAME): Define to pw->pw_gecos if undefined.
8606 (Fuser_full_name): Use USER_FULL_NAME instead of a literal
8607 pw->pw_gecos.
8608
8609 * keyboard.c (handle_interrupt) [MSDOS]: Call cursor_to with
8610 SELECTED_FRAME as additional (1st) argument.
8611 (tty_read_avail_input): Handle output_msdos_raw in
8612 addition to output_termcap.
8613
8614 * msdos.c: Include frame.h before termhooks.h.
8615 (mouse_on, mouse_off, mouse_moveto, mouse_init)
8616 (msdos_set_cursor_shape, IT_set_face, IT_write_glyphs)
8617 (show_mouse_face, IT_clear_end_of_line, IT_clear_screen)
8618 (IT_clear_to_end, IT_cursor_to, IT_display_cursor, IT_cmgoto)
8619 (IT_set_terminal_modes, IT_reset_terminal_modes)
8620 (IT_set_frame_parameters): Use tty->termscript instead of a global
8621 variable termscript.
8622 (IT_write_glyphs): Use tty->terminal->terminal_coding instead of a
8623 global variable terminal_coding. Don't refer to
8624 Vnonascii_translation_table.
8625 (internal_terminal_init): Set Vwindow_system in current_kboard.
8626 Don't use TTY_CHAR_INS_DEL_OK. Set Vinitial_window_system.
8627 Announce date and time of session start, if termscript is open.
8628 Don't zero out the_only_display_info (it is done in
b8ff72fa
SM
8629 term.c:init_tty). Open termscript only of not already open.
8630 Log "SCREEN SAVED" here, instead of IT_set_terminal_modes. Init mouse
aac0c6e3
MR
8631 here instead of dos_ttraw. Don't initialize display if this is an
8632 initial tty. Don't set FRAME_FONT.
8633 (Vwindow_system_version): Bump to 23.
8634 (dos_ttraw): Accept a TTY argument; all callers fixed. If mouse
8635 is available, set up mouse_position_hook.
8636 (dos_ttraw, IT_set_terminal_modes): If called with initial
8637 terminal, do nothing.
8638 (IT_set_frame_parameters): Handle the Qtty_type frame
8639 parameter by calling internal_terminal_init.
8640 (dos_set_window_size, show_mouse_face)
8641 (clear_mouse_face, IT_note_mode_line_highlight)
8642 (IT_note_mouse_highlight, IT_update_begin, IT_frame_up_to_date)
8643 (dos_rawgetc): Use tty_display_info instead of x_display_info.
8644 (initialize_msdos_display): New function.
8645 (IT_cursor_to, IT_clear_to_end, IT_clear_screen)
8646 (IT_clear_end_of_line, IT_insert_glyphs, IT_write_glyphs)
8647 (IT_delete_glyphs, IT_ring_bell, IT_reset_terminal_modes)
8648 (IT_set_terminal_modes, IT_set_terminal_window, IT_update_begin):
b8ff72fa 8649 Accept additional argument: a pointer to a frame. Update all callers.
aac0c6e3
MR
8650 (request_sigio, unrequest_sigio): Don't define, now defined on
8651 sysdep.c.
8652 (IT_write_glyphs): Rewrite to use encode_terminal_code.
8653
8654 * term.c [MSDOS]: Include msdos.h.
8655 (init_tty) [MSDOS]: Reuse most of WINDOWSNT branch. Change cpp
8656 conditional to DOS_NT. Allow only one call to this function in a
8657 session. Don't allocate a new struct tty_display_info; instead,
8658 reuse the_only_display_info. Call get_tty_size to get screen
8659 dimensions. Call init_baud_rate to set bad_rate.
8660 (dissociate_if_controlling_tty) [MSDOS]: Ifdef away function body.
8661 (Fsuspend_tty) [MSDOS]: Don't close input and output.
b8ff72fa 8662 (Fresume_tty) [MSDOS]: Don't reopen the TTY; instead, use stdin/stdout.
aac0c6e3
MR
8663 (get_tty_terminal, get_named_tty, Ftty_type)
8664 (Fcontrolling_tty_p): Handle output_msdos_raw in addition to
8665 output_termcap.
b8ff72fa
SM
8666 (Fresume_tty, Fsuspend_tty, init_tty, delete_tty):
8667 Call add_keyboard_wait_descriptor and delete_keyboard_wait_descriptor
2ae37cf0 8668 only when subprocesses are supported.
aac0c6e3
MR
8669
8670 * frame.c (make_terminal_frame) [MSDOS]: Adjust initialization of
8671 f->output_data.x.
8672 (Fmake_terminal_frame) [MSDOS]: Don't allow creation of new
8673 terminal devices.
8674
5582fbc7 8675 * msdos.h: Remove definition of struct x_display_info and struct
aac0c6e3
MR
8676 x_output.
8677 (FRAME_FONT): Use output_data.tty.
8678 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL): Don't define.
b8ff72fa
SM
8679 (struct x_display_info): Rename from display_info. Update all users in
8680 msdos.c.
aac0c6e3 8681 (struct x_output): Remove background_pixel and foreground_pixel.
b8ff72fa 8682 (the_only_display_info): Rename from the_only_x_display.
aac0c6e3
MR
8683 (dos_ttraw): Update prototype.
8684
8685 * Makefile.in (MSDOS_OBJ): Add xmenu.o.
8686 (SOME_MACHINE_LISP): Add ../lisp/term/pc-win.elc.
8687
86882008-08-23 Jason Rumney <jasonr@gnu.org>
8689
8690 * image.c (enum tiff_keyword_index, tiff_format): Add :index keyword.
8691 (fn_TIFFSetDirectory): New library function used.
8692 (init_tiff_functions) [HAVE_NTGUI]: Initialize it.
8693 (tiff_load): Use :index to select among multiple images. Set count
8694 property when multiple images exist.
8695 (gif_format): Use :index, not :image.
8696
86972008-08-23 Chong Yidong <cyd@stupidchicken.com>
8698
8699 * xdisp.c (try_scrolling): Check INT_MAX instead of
8700 MOST_POSITIVE_FIXNUM for maximum integer value. Include limits.h
8701 to obtain INT_MAX.
8702
87032008-08-21 İsmail Dönmez <ismail@namtrac.org> (tiny change)
8704
8705 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase on GTK+.
8706
87072008-08-21 Christian Faulhammer <opfer@gentoo.org> (tiny change)
8708
8709 * Makefile.in (temacs${EXEEXT}): On GNUstep, link to appropriate
8710 GNUstep library location.
8711
87122008-08-21 Chong Yidong <cyd@stupidchicken.com>
8713
8714 * xfaces.c (x_update_menu_appearance): Check validity of menu font
8715 before using it.
8716
8717 * puresize.h (BASE_PURESIZE): Increase to 1250000.
8718
87192008-08-20 Adrian Robert <Adrian.B.Robert@gmail.com>
8720
8721 * nsfns.m (ns-read-file-name): Add casts to avoid warning.
8722 (ns-convert-utf8-nfd-to-nfc): Warn if cannot execute correctly.
8723 * nsfont.m (nsfont_draw): Compare indexed colors to 0, not nil.
8724 * nsterm.h (EmacsView-unlockFocusNeedsFlush:): Add declaration.
8725 (EmacsApp-cursor_blink_handler): Remove declaration.
8726 * nsterm.m (ns_draw_glyph_string): Update first conditional body to
8727 match 01 Feb 2008 changes in xterm.c.
8728 (ns_read_socket): Add cast to avoid warning.
8729 (EmacsApp-application:openFiles:): Don't call replyToOpenOrPrint: on
8730 GNUstep.
8731
87322008-08-20 Chong Yidong <cyd@stupidchicken.com>
8733
8734 * xselect.c (x_get_foreign_selection): Return nil if desired
8735 selection could not be obtained, instead of signalling an error.
8736
87372008-08-20 David Reitter <david.reitter@gmail.com>
8738
8739 * nsfns.m (ns_lisp_to_cursor_type): Replace with generic xfns.c.
8740 * nsterm.m: Remove ns-specific code for cursor blinking.
8741 (ns_draw_window_cursor): Clear cursor properly rather than
8742 redrawing the area. Respect width of bar cursors.
8743 These changes enable the use of generic blink-cursor-mode and
8744 generic cursor types in NS and support smooth cursor movements (do
8745 not blink off after command).
8746 * xdisp.c (get_phys_cursor_geometry): Redraw wider rectangle on
8747 Nextstep, too.
8748
87492008-08-19 Kenichi Handa <handa@m17n.org>
8750
8751 * font.c (Vfont_log_deferred): New variable.
8752 (font_add_log): Check Vfont_log_deferred.
8753 (font_deferred_log): New function.
8754
8755 * font.h (font_deferred_log): Extern it.
8756
8757 * fontset.c (reorder_font_vector): Use encoding charset of fonts
8758 for sorting.
8759 (face_for_char): Use deferred log.
8760
87612008-08-18 Kenichi Handa <handa@m17n.org>
8762
8763 * fontset.c (face_for_char): Add font log.
8764
8765 * font.c (font_add_log): Add the font properties :script, :lang,
8766 and :otf in the log.
8767
87682008-08-17 Chong Yidong <cyd@stupidchicken.com>
8769
8770 * xdisp.c: Remove dead code.
8771 (handle_invisible_prop, next_overlay_string): Defer call to
8772 setup_for_ellipsis.
8773 (handle_stop, set_iterator_to_next): Call setup_for_ellipsis.
8774
87752008-08-15 Chong Yidong <cyd@stupidchicken.com>
8776
8777 * xfaces.c (lookup_derived_face): Properly handle possible zero
8778 return value of get_lface_attributes.
8779 (merge_faces): Don't tell lookup_derived_face to signal an error
8780 if face is not found.
8781
8782 * dired.c (Fdirectory_files): Doc fix.
8783
8784 * process.c (make_process): Initialize kill_without_query struct
8785 member.
8786
87872008-08-15 Eli Zaretskii <eliz@gnu.org>
8788
8789 * w32.c (w32_system_process_attributes) [_MSC_VER < 1300]:
8790 Alternative calculation of totphys for Visual Studio 6.
8791
8792 * w32fns.c [_MSC_VER && _MSC_VER < 1300]: Declare HMONITOR.
8793
8794 * w32.c (_MEMORY_STATUS_EX, MEMORY_STATUS_EX, LPMEMORY_STATUS_EX):
8795 Rename from _MEMORYSTATUSEX, MEMORYSTATUSEX, LPMEMORYSTATUSEX.
8796 All users changed.
8797 (stat): Only root directory passed to GetDriveType. Allow RAM
8798 disk as well as local fixed disk when w32-get-true-file-attributes
8799 is set to `local'.
8800 (CopySid_Proc, EqualSid_Proc, GetLengthSid_Proc): New typedefs.
8801 (equal_sid, get_length_sid, copy_sid): New wrapper functions.
8802 (w32_cached_id, w32_add_to_cache): New functions.
8803 (get_name_and_id): Look account names in the cache before calling
8804 lookup_account_sid.
8805 (g_b_init_get_length_sid, g_b_init_equal_sid, g_b_init_copy_sid):
8806 New initialization flags.
8807 (globals_of_w32): Initialize them to zero.
8808 (w32_system_process_attributes): Use w32_cached_id and
8809 w32_add_to_cache.
8810
88112008-08-14 Lawrence Mitchell <wence@gmx.li>
8812
8813 * lread.c (Fread_char, Fread_char_exclusive): If no character
8814 event is read before timeout is reached, return nil, rather than
8815 converting to a number.
8816
88172008-08-14 Chong Yidong <cyd@stupidchicken.com>
8818
8819 * fns.c (use_dialog_box): Doc fix.
8820
8821 * s/darwin.h: Undefine HAVE_RES_INIT, which appears to be harmful
8822 on OS X.
8823
88242008-08-13 Chong Yidong <cyd@stupidchicken.com>
8825
8826 * frame.c (Qns_parse_geometry): New var.
8827 (Fx_parse_geometry): For HAVE_NS, call ns-parse-geometry.
8828
88292008-08-11 Chong Yidong <cyd@stupidchicken.com>
8830
8831 * xdisp.c (x_produce_glyphs): Handle the case when font has no
8832 space character in calculating tabs.
8833
88342008-08-11 Dan Nicolaescu <dann@ics.uci.edu>
8835
8836 * Makefile.in (bootstrap-emacs): Use ln -f in the CANNOT_DUMP case.
8837
88382008-08-10 Glenn Morris <rgm@gnu.org>
8839
8840 * process.c (procfs_system_process_attributes): Use EMACS_INTs to
8841 silence gcc "limited range of data type" warnings in some
8842 make_fixnum_or_float calls.
8843
88442008-08-09 Eli Zaretskii <eliz@gnu.org>
8845
8846 * w32.c (w32_system_process_attributes): If the process does not
8847 exist, return nil.
8848
8849 * w32.c: Include thelp32.h, psapi.h and coding.h.
8850 (_MEMORYSTATUSEX, _PROCESS_MEMORY_COUNTERS_EX): New struct
8851 declarations.
8852 (CreateToolhelp32Snapshot_Proc, Process32First_Proc)
8853 (Process32Next_Proc): New typedefs.
8854 (g_b_init_create_toolhelp32_snapshot, g_b_init_process32_first)
8855 (g_b_init_process32_next, g_b_init_open_thread_token)
8856 (g_b_init_impersonate_self, g_b_init_revert_to_self)
8857 (g_b_init_get_process_memory_info, g_b_init_global_memory_status)
8858 (g_b_init_get_process_working_set_size)
8859 (g_b_init_global_memory_status_ex): New static variables.
8860 (globals_of_w32): Initialize them.
8861 (create_toolhelp32_snapshot, process32_first, process32_next)
8862 (open_thread_token, impersonate_self, revert_to_self)
8863 (get_process_memory_info, get_process_working_set_size)
8864 (global_memory_status, global_memory_status_ex): New wrapper
8865 functions.
8866 (w32_list_system_processes, w32_system_process_attributes)
8867 (enable_privilege, restore_privilege, ltime, process_times):
8868 New functions.
8869 (convert_time_raw): New function.
8870 (convert_time): Remove conversion of FILETIME into time in 100
8871 nsec units, call convert_time_raw instead.
8872
8873 * process.h (w32_list_system_processes, w32_system_process_attributes):
8874 Add prototypes.
8875 (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess, Qttname)
8876 (Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime, Qcutime)
8877 (Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs, Quser, Qgroup)
8878 (Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime): Add extern declarations.
8879
8880 * process.c (Fsystem_process_attributes): Doc fix.
8881
88822008-08-08 Chong Yidong <cyd@stupidchicken.com>
8883
8884 * xdisp.c (move_it_to): When stopping at a charpos, check if that's
8885 a continued multi-char glyph; if so, advance to the actual glyph.
8886
88872008-08-07 Dan Nicolaescu <dann@ics.uci.edu>
8888
8889 * s/darwin.h (OTHER_FILES): Do not define here, defined in config.in.
8890
8891 * Makefile.in (ALL_OBJC_CFLAGS): New variable.
8892 (.m.o): Use it.
8893 * config.in: Regenerate.
8894
88952008-08-07 Chong Yidong <cyd@stupidchicken.com>
8896
8897 * xdisp.c (redisplay_window): Revert last change.
8898 (try_window): Check bottom scroll margin too.
8899
89002008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
8901
8902 * config.in: Regenerate.
8903
8904 * Makefile.in (emacs): Remove ifndef NS conditional for 'emacs
8905 -list-load-path-shadows'.
8906 (nsgui.h): Reduce number of things depending on it.
8907
89082008-08-06 Chong Yidong <cyd@stupidchicken.com>
8909
8910 * xdisp.c (try_scrolling): Use iterator to find the scroll margin,
8911 instead of window-end which does the wrong thing at eob.
8912 (try_cursor_movement): Minor optimization.
8913 (redisplay_window): If scroll margin is defined, don't assume
8914 window doesn't need scrolling.
8915
89162008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
8917
8918 * config.in: Regenerate.
8919
8920 * Makefile.in: Move nsXXX.m dependencies into big alphabetical list.
8921 (mostlyclean): Don't delete *.d under NS.
8922
8923 * nsterm.h (NS_HAVE_INTEGER): Change to NS_HAVE_NSINTEGER.
8924
89252008-08-06 Kenichi Handa <handa@m17n.org>
8926
8927 * xfont.c (xfont_list_family): Return a list of symbols, not strings.
8928
89292008-08-06 Andreas Schwab <schwab@suse.de>
8930
8931 * config.in: Regenerate.
8932
89332008-08-05 Chong Yidong <cyd@stupidchicken.com>
8934
8935 * xdisp.c (redisplay_window): Don't enforce scroll-margin when
8936 forcing a window start.
8937
8938 * fileio.c (Vauto_save_list_file_name): Move here from file.el.
8939 (auto_save_1): Update modtime when auto-save-list-file-name is on.
8940
89412008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
8942
8943 * emacs.c (main): Under NS, set working dir to HOME when get a "psn"
8944 argument.
8945
89462008-08-05 Juanma Barranquero <lekktu@gmail.com>
8947
8948 * buffer.c (syms_of_buffer) <scroll-up-aggressively>:
8949 <scroll-down-aggressively, before-change-functions>:
8950 <after-change-functions>: Reflow docstrings.
8951
89522008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
4e2af782 8953 Ken Raeburn <raeburn@gnu.org>
aac0c6e3
MR
8954
8955 Dock menu customization, based on a patch by Ken Raeburn, plus some
8956 other fixes.
8957 * nsmenu.m (dockMenu): New variable.
8958 (EmacsDialog -clicked:): Fix mistake in change of 2008-07-17.
8959
8960 * nsterm.h (dockMenu): Declare.
8961
8962 * nsterm.m (KEY_NS_NEW_FRAME): New definition.
8963 (ns_term_init): Initialize dockMenu.
8964 (EmacsApp -newFrame:, -applicationDockMenu:): New methods.
8965 (EmacsView -windowShouldClose:): Don't behave specially if <= 1 frame
8966 left.
8967
8968 * lisp.h (LSB_TAG): Use on DARWIN_OS, not NS_IMPL_COCOA.
8969
89702008-08-04 Chong Yidong <cyd@stupidchicken.com>
8971
8972 * nsterm.h: Test directly for NS_HAVE_INTEGER before defining it.
8973
8974 * config.in: Regenerate.
8975
89762008-08-04 Seiji Zenitani <zenitani@mac.com>
8977
8978 * nsfns.m (x-create-frame): Set the frame parameter alpha to nil.
8979
89802008-08-04 Chong Yidong <cyd@stupidchicken.com>
8981
8982 * nsterm.h (find_and_call_menu_selection): Fix prototype.
8983
89842008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
8985
8986 * emacs.c (main: unexec_init_emacs_zone): Call if on DARWIN_OS.
8987
8988 * keyboard.h: Comment an #endif.
8989
8990 * lisp.h (have_menus_p): Adjust comment.
8991
8992 * menu.c (find_and_return_menu_selection): Fix comparison with
8993 client_data.
8994
8995 * nsmenu.m (popup_activated_flag): New variable.
8996 (popup_activated): New function.
8997 (menu-or-popup-active-p): New exported lisp definition.
8998 (ns_popup_menu): Set popup_activated_flag. Call discard_menu_items()
8999 when popup done.
9000 (ns_popup_dialog): Set popup_activated_flag.
9001
9002 * nsterm.m (EmacsView -conversationIdentifier): Use NSInteger
9003 version for GNUstep (handled by conditional typedef in nsterm.m).
9004 (ns_get_color): Remove special-casing for "darkblue", "dark blue" (now
9005 in rgb.txt).
9006
9007 * process.c (init_process): Use DARWIN_OS, not DARWIN.
9008
9009 * sysselect.h: Conditionalize init_process undef on DARWIN_OS.
9010
9011 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): Do it also under NS.
9012
9013 * xdisp.c (redisplay_internal, note_mouse_highlight): Under NS,
9014 shortcircuit if popup_activated like GTK and X toolkit.
9015
9016 * m/inter386.h: Change DARWIN to DARWIN_OS.
9017
9018 * s/darwin.h: Add #define DARWIN_OS. Get rid of C_SWITCH_SYSTEM def.
9019 Change LIBS_MACGUI to LIBS_NSGUI. Move temacs-conditionalized defs
9020 closer to C_SWITCH_SYSTEM_TEMACS so usage is understood. Expand
9021 comment on NO_SOCK_SIGIO.
9022
90232008-08-03 Chong Yidong <cyd@stupidchicken.com>
9024
9025 * nsterm.m (windowDidResize): Remove stopModal call.
9026
90272008-08-03 Andreas Schwab <schwab@suse.de>
9028
9029 * vm-limit.c (get_lim_data) [HAVE_GETRLIMIT && RLIMIT_AS]: Define.
9030 (check_memory_limits): Don't handle HAVE_GETRLIMIT here.
9031
90322008-08-02 Chong Yidong <cyd@stupidchicken.com>
9033
9034 * vm-limit.c (check_memory_limits): Don't use getrlimit on cygwin.
9035 Don't use uninitialized pointer variable when using getrlimit.
9036
90372008-08-02 Jason Rumney <jasonr@gnu.org>
9038
9039 * w32font.c (compute_metrics): Don't mess with glyph_idx setting here.
9040
90412008-08-02 Eli Zaretskii <eliz@gnu.org>
9042
9043 * alloc.c (NSTATICS): Bump to 0x640.
9044
9045 * s/gnu-linux.h (HAVE_PROCFS, LISTPROC, PROCATTR): New defines.
9046
9047 * lisp.h: Add prototype for directory_files_internal.
9048
9049 * process.c (Fsystem_processes_list, Fsystem_process_attributes):
9050 New functions.
9051 (syms_of_process): Defsubr them. Add initializations for various
9052 Q* symbols used in procfs_system_process_attributes.
9053 (procfs_list_system_processes, procfs_system_process_attributes)
9054 [HAVE_PROCFS]: New functions.
9055 (time_from_jiffies, ltime_from_jiffies, get_up_time, procfs_ttyname)
9056 (procfs_get_total_memory): New functions.
9057
90582008-08-01 Juanma Barranquero <lekktu@gmail.com>
9059
9060 * xfaces.c (Fx_load_color_file): Fix previous change;
9061 it is #ifdef WINDOWSNT, not WINDOWS_NT.
9062
90632008-08-01 Michael Albinus <michael.albinus@gmx.de>
9064
9065 * dbusbind.c (xd_read_message): Handle D-Bus error messages.
9066
90672008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
9068
9069 * nsterm.h (NSInteger, NSUInteger): Add defines for non-Leopard.
9070
90712008-08-01 Chong Yidong <cyd@stupidchicken.com>
9072
9073 * nsfns.m (ns_frame_parm_handlers): Add empty entry for x_set_alpha.
9074
9075 * nsterm.m (EmacsApp -application:openFiles:): GNUstep does not
9076 define NSApplicationDelegateReplySuccess.
9077 (EmacsView -converstationIdentifier): Use long instead of
9078 NSInteger for GNUstep, since it doesn't have NSInteger.
9079
9080 * xmenu.c: Revert last change.
9081
9082 * keyboard.h: Fix last change.
9083
90842008-08-01 Juanma Barranquero <lekktu@gmail.com>
9085
9086 * xfaces.c (x-load-color-file): Use RGB() instead of manually shifting
9087 on Windows.
9088
90892008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
9090
9091 Warning clearing and clean-up in NS port.
9092 * keyboard.h (xmalloc_widget_value, digest_single_submenu):
9093 Add prototypes.
9094 * nsgui.h (FACE_DEFAULT): Remove, unused.
9095 (XGCValues): Change colors to unsigned long.
9096 * nsterm.h (EmacsApp): Add declaration of all methods implemented in
9097 nsterm.m.
9098 (EmacsMenu -addItemWithWidgetValue:): Change to use NSMenuItem class.
9099 (ns_list_fonts): Remove, unused.
9100 (ns_font_to_xlfd, ns_fontname_to_xlfd): Drop prototypes.
9101 * nsfns.m (interpret_services_menu): Use NSMenuItem class.
9102 * nsfont.m (nsfont_open): Fix cast error in glyphs,metrics alloc.
9103 (nsfont_draw): Compare face colors to 0, not nil.
9104 * nsmenu.m (struct widget_value): Drop unneeded declaration.
9105 (EmacsMenu -addItemWithWidgetValue:, -fillWithWidgetValue:)
9106 (-addSubmenuWithTitle:): Use NSMenuItem class.
9107 (ns_popup_menu): Use NO, not NULL, for enabled setting.
9108 * nsterm.m (ns_draw_glyph_string): Don't compare font to ~0.
9109 (ns_clip_to_row): Make gc arg a BOOL.
9110 (ns_draw_fringe_bitmap, ns_draw_window_cursor): Use YES, NO in
9111 ns_clip_to_row() call.
9112 (ns_draw_glyph_string): Drop face comparison to ~0 (no longer
9113 used). Cast FRAME_FONT assignments.
9114 (ns_read_socket): Cast call to EmacsApp-fulfillService:withArg:.
9115 (ns_string_to_lispmod): Change arg to const char.
9116 (ns_term_init): Use NSMenuItem class.
9117 (EmacsApp -openFile:): Move to different section of file.
9118 (EmacsApp -application:openFiles:): Don't return a value, call
9119 -replyToOpenOrPrint:.
9120 (EmacsView -keyDown:): Fix up cast.
9121 (EmacsView -converstationIdentifier): Use NSInteger instead of long.
9122 (EmacsView -menuDown:): Cast tag in call to
9123 find_and_call_menu_selection().
9124 (ns_list_fonts): Remove, unused.
9125 (ns_font_to_xlfd): Make static. Cast result of UTF8String.
9126 (ns_fontname_to_xlfd): Make static.
9127 * w32menu.c (xmalloc_widget_value, digest_single_submenu):
9128 Remove prototypes (now in keyboard.h).
9129 (next_menubar_widget_id): Remove, unused.
9130 * xmenu.c (xmalloc_widget_value, digest_single_submenu):
9131 Remove prototypes (now in keyboard.h).
9132 * xfaces.c (ns_list_fonts, w32_list_fonts): Remove, unused.
9133
91342008-08-01 Dan Nicolaescu <dann@ics.uci.edu>
9135
9136 * Makefile.in (dispnew.o, gtkutil.o, sound.o, atimer.o)
9137 (floatfns.o): Depend on syssignal.h.
9138 (term.o): Depend on syssignal.h, systty.h, and $(INTERVAL_SRC).
9139
9140 * systty.h: Fix previous change that removed BSD_TERMIOS.
9141 Add comments to #ifdefs.
9142
91432008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
9144
9145 * w32fns.c (w32-load-color-file): Remove.
9146 (x-open-connection): Use renamed Fx_load_color_file.
9147 * xfaces.c (x-load-color-file): Add.
9148 * nsterm.m (ns_initialize): Load colors from etc/rgb.txt instead of
9149 Emacs.clr.
9150 (hide_hourglass): BLOCK_INPUT before UNBLOCK.
9151
91522008-07-31 Michael Albinus <michael.albinus@gmx.de>
9153
9154 * dbusbind.c (Fdbus_call_method_asynchronously)
9155 (Fdbus_method_error_internal): New defuns.
9156 (xd_read_message): Handle also reply messages.
9157 (Vdbus_registered_functions_table): Extend docstring.
9158
91592008-07-31 Juanma Barranquero <lekktu@gmail.com>
9160
9161 * keyboard.c (gobble_input): Fix previous change.
9162
91632008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
9164
9165 * bitmaps/README:
9166 * xfns.c:
9167 * termcap.c:
9168 * term.c:
9169 * syswait.h:
9170 * systty.h:
9171 * systime.h:
9172 * syssignal.h:
9173 * sysdep.c:
9174 * process.h:
9175 * process.c:
9176 * print.c:
9177 * ndir.h:
9178 * lread.c:
9179 * keyboard.c:
9180 * getpagesize.h:
9181 * floatfns.c:
9182 * fileio.c:
9183 * emacs.c:
9184 * doc.c:
9185 * dispnew.c:
9186 * dired.c:
9187 * data.c:
9188 * callproc.c:
9189 * buffer.c:
9190 * README:
9191 * Makefile.in:
9192 * s/template.h:
9193 * s/msdos.h:
9194 * m/vax.h: Remove VMS support.
9195 * s/vms.h:
9196 * vlimit.h:
9197 * uaf.h:
9198 * temacs.opt:
9199 * param.h:
9200 * ioctl.h: Remove file.
9201
92022008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
9203
9204 * s/ms-w32.h (MULTI_KBOARD): Remove.
9205 * xterm.c:
9206 * xselect.c:
9207 * xfns.c:
9208 * window.c:
9209 * w32term.c:
9210 * w32fns.c:
9211 * terminal.c:
9212 * termhooks.h:
9213 * term.c:
9214 * sysdep.c:
9215 * keyboard.h:
9216 * keyboard.c:
9217 * frame.h:
9218 * frame.c:
9219 * frame.c: Remove references to MULTI_KBOARD, it is now the default.
9220 * config.in: Regenerate.
9221
92222008-07-30 Jason Rumney <jasonr@gnu.org>
9223
9224 * w32font.h (struct w32font_info): Use unicode version of textmetrics.
9225
9226 * w32font.c (w32font_encode_char): Leave as unicode if in range.
9227 (w32font_open_internal): Get unicode version of textmetrics.
9228 Don't enable or disable glyph indices here.
9229 (w32font_open): Disable use of glyph indices.
9230
9231 * w32uniscribe.c (uniscribe_open): Enable use of glyph indices.
9232
92332008-07-30 Chong Yidong <cyd@stupidchicken.com>
9234
9235 * minibuf.c (Vread_buffer_function): Doc fix.
9236
92372008-07-30 John Paul Wallington <jpw@pobox.com>
9238
9239 * minibuf.c (read_buffer_completion_ignore_case): New var.
9240 (Fread_buffer): Use it.
9241
92422008-07-30 Dan Nicolaescu <dann@ics.uci.edu>
9243
9244 * systty.h (sensemode): Remove empty #if. Remove reference to
9245 BSD_TERMIOS, unused.
9246
9247 * sysdep.c: Remove reference to DGUX.
9248 (closedir): Remove reference to BROKEN_CLOSEDIR, unused.
9249
9250 * config.in: Regenerate.
9251
92522008-07-30 Jason Rumney <jasonr@gnu.org>
9253
9254 * w32uniscribe.c (uniscribe_encode_char): Fix glyph buffer size.
9255
92562008-07-29 Jason Rumney <jasonr@gnu.org>
9257
9258 * w32uniscribe.c (uniscribe_shape): Avoid using context if cache
9259 is populated.
9260 (uniscribe_encode_char): Always use uniscribe.
9261 Avoid using context if cache is populated.
9262
92632008-07-29 Jan Djärv <jan.h.d@swipnet.se>
9264
9265 * xmenu.c (Fx_menu_bar_open_internal): Use activate_item signal to
9266 open menu.
9267
9268 * gtkutil.c (menu_nav_ended): Remove.
9269 (create_menus): Remove signal connect for menu_nav_ended.
9270
92712008-07-28 Chong Yidong <cyd@stupidchicken.com>
9272
9273 * xdisp.c (redisplay_window): Check return value of
9274 compute_window_start_on_continuation_line before forcing a window
9275 start.
9276
92772008-07-28 Jason Rumney <jasonr@gnu.org>
9278
9279 * w32font.c (w32font_text_extents): Use w32_metric_cache consistently.
9280
9281 * w32term.c (w32_enable_unicode_output, cleartype_active):
9282 Remove obsolete display options.
9283 (x_draw_glyph_string_background): Don't use old cleartype_active
9284 workaround.
9285 (w32_initialize): Remove cleartype_active initialization.
9286 (syms_of_w32term): Remove w32_enable_unicode_output initialization.
9287
92882008-07-28 Andreas Schwab <schwab@suse.de>
9289
9290 * lisp.h (init_weak_hash_tables, syms_of_font)
9291 (xd_read_queued_messages, syms_of_dbusbind): Declare.
9292 (remove_hash_entry): Don't declare.
9293 * eval.c (maybe_call_debugger): Make static and move before use.
9294 * gtkutil.c: Include <X11/Xft/Xft.h> if HAVE_XFT.
9295 * xdisp.c: Include "gtkutil.h" if USE_GTK.
9296 * xterm.h (x_set_frame_alpha): Declare.
9297
92982008-07-28 Jan Djärv <jan.h.d@swipnet.se>
9299
9300 * gtkutil.c (menu_nav_ended): Revert change from 2008-07-24.
9301 (create_menus): Connect selection-done to menu_nav_ended.
9302
93032008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
9304
9305 * nsfns.m (x-create-frame): Add copy of parms argument to beginning.
9306 Set Vx_resource_name to a fallback. Replace read of 'buffered'
9307 parameter with read of 'alpha' one.
9308 (Qns_frame_parameter): Remove.
5582fbc7 9309 * nsselect.m (selection-coding-system)
aac0c6e3
MR
9310 (next-selection-coding-system, Vselection_coding_system)
9311 (Vnext_selection_coding_system): Drop.
9312
93132008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
9314
9315 * nsfns.m (do-applescript, do_applescript): Rename to
9316 ns-do-applescript, ns_do_applescript, and move within file.
9317
93182008-07-27 Dan Nicolaescu <dann@ics.uci.edu>
9319
9320 Remove support for Mac Carbon.
9321 * mactoolbox.c:
9322 * macterm.h:
9323 * macterm.c:
9324 * macselect.c:
9325 * macmenu.c:
9326 * macgui.h:
9327 * macfns.c:
9328 * mac.c: Remove file.
9329 * s/darwin.h:
9330 * m/intel386.h:
9331 * xfaces.c:
9332 * xdisp.c:
9333 * window.c:
9334 * tparam.c:
9335 * termhooks.h:
9336 * termcap.c:
9337 * term.c:
9338 * syssignal.h:
9339 * sysselect.h:
9340 * sysdep.c:
9341 * process.c:
9342 * lread.c:
9343 * lisp.h:
9344 * keyboard.c:
9345 * image.c:
9346 * fringe.c:
9347 * frame.h:
9348 * frame.c:
9349 * fontset.c:
9350 * font.h:
9351 * font.c:
9352 * fns.c:
9353 * fileio.c:
9354 * emacs.c:
9355 * dispnew.c:
9356 * dispextern.h:
9357 * config.in:
9358 * atimer.c:
2ae37cf0 9359 * Makefile.in: Remove code for Carbon.
aac0c6e3 9360
f0131492 93612008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
aac0c6e3
MR
9362
9363 * macterm.c (XDrawLine) [USE_MAC_IMAGE_IO]: Remove spurious return.
9364
93652008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9366
9367 * macterm.h (kCGBitmapByteOrder32Host): New define for
9368 non-universal SDKs.
9369
9370 * image.c (mac_create_cg_image_from_image, image_load_image_io)
9371 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
9372
9373 * macterm.c (XDrawLine, XCreatePixmapFromBitmapData)
9374 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
9375
93762008-07-26 David Robinow <drobinow@gmail.com> (tiny change)
9377
9378 * w32inevt.c: Include dispextern.h.
9379
93802008-07-26 Andreas Schwab <schwab@suse.de>
9381
9382 * print.c (print_object): Fix off-by-one in last change.
9383
93842008-07-25 Juanma Barranquero <lekktu@gmail.com>
9385
9386 * term.c (syms_of_term): Don't initialize default_orig_pair,
9387 default_set_foreground and default_set_background on Windows.
9388
93892008-07-25 Jason Rumney <jasonr@gnu.org>
9390
9391 * w32uniscribe.c (uniscribe_shape): Pass NULL for control arg to
9392 ScriptItemize. Clean up return value checking. Remove unused
9393 variables.
9394 (uniscribe_encode_char): Encode non-BMP characters with uniscribe
9395 shaping engine.
9396
9397 * w32font.c (w32font_has_char): Handle the case where we can't
9398 determine the script for a character.
9399
94002008-07-25 Chong Yidong <cyd@stupidchicken.com>
9401
9402 * term.c (syms_of_term): Initialize default_orig_pair,
9403 default_set_foreground, and default_set_background.
9404
9405 * getloadavg.c (nl): Rename to name_list to avoid ncurses.h
9406 clash (bug#86).
9407 (getloadavg): Callers changed.
9408
9409 * image.c (svg_load_image): Fix last change.
9410 (svg_load_image): Use rsvg_handle_get_dimensions to check that
9411 image size is valid. Use g_object_unref instead of deprecated
9412 rsvg_handle_free to free rsvg handle.
9413 (x_from_xcolors): Don't initialize pixmap (silence compiler).
9414
94152008-07-25 Jason Rumney <jasonr@gnu.org>
9416
9417 * w32font.c (w32font_encode_char): Encode characters outside BMP as
9418 surrogates before looking up glyph index.
9419 (w32font_text_extents): Encode as surrogates if falling back to
9420 functions that need UTF-16 wide chars.
9421
9422 * w32uniscribe.c (uniscribe_encode_char): Encode characters outside
9423 BMP as surrogates before looking up glyph index.
9424
94252008-07-25 Chong Yidong <cyd@stupidchicken.com>
9426
9427 * image.c (svg_load_image): Check for failure in return value of
9428 rsvg_handle_get_pixbuf. Free rsvg handle when done.
9429
94302008-07-25 Jason Rumney <jasonr@gnu.org>
9431
9432 * w32font.c (Fx_select_font): Reverse sense of second arg.
9433
94342008-07-24 Stefan Monnier <monnier@iro.umontreal.ca>
9435
9436 * syntax.c (struct lisp_parse_state, char_quoted, inc_bytepos)
9437 (dec_bytepos, find_defun_start): Use EMACS_INT for buffer positions.
9438
9439 * puresize.h (PURESIZE_CHECKING_RATIO): New macro.
9440 (PURESIZE): Use it.
9441
94422008-07-24 Dan Nicolaescu <dann@ics.uci.edu>
9443
9444 * m/amdx86-64.h (HAVE_LIB64_DIR): Consolidate ifdefs.
9445 * m/alpha.h (TEXT_END):
9446 * m/ibmrs6000.h (TEXT_END):
9447 * m/macppc.h (TEXT_END):
9448 * s/darwin.h (TEXT_END):
9449 * s/msdos.h (TEXT_END): Remove, unused.
9450 * s/gnu-linux.h (BSD_PGRPS): Add a comment.
9451 * s/cygwin.h: Remove comment.
9452
9453 * ecrt0.c (NODOT_GLOBAL_START): Remove code, unused.
9454 (DOT_GLOBAL_START): Remove conditional, redundant for CRT0_DUMMIES.
9455 * m/intel386.h (DOT_GLOBAL_START):
9456 * m/vax.h (DOT_GLOBAL_START): Remove, redundant with CRT0_DUMMIES.
9457 (USG): Remove, file not used on USG platforms.
9458
9459 * Makefile.in (HAVE_X11): Remove empty #else.
9460
94612008-07-24 Andreas Schwab <schwab@suse.de>
9462
9463 * fileio.c (Finsert_file_contents): Properly adjust undo list
9464 after format conversion.
9465
94662008-07-24 Jan Djärv <jan.h.d@swipnet.se>
9467
9468 * gtkutil.c (xg_get_font_name): Cast w to GTK_FONT_SELECTION_DIALOG.
9469 (menu_nav_ended): Remove.
9470 (create_menus): Remove signal connect for menu_nav_ended.
9471 (xg_update_menubar): Also take deactivate_cb as parameter, pass it to
9472 create_menus.
9473 (xg_modify_menubar_widgets): Pass deactivate_cb to xg_update_menubar.
9474
94752008-07-23 Jason Rumney <jasonr@gnu.org>
9476
9477 * w32font.c (w32_enumfont_pattern_entity): Return height consistent
9478 with opened font.
9479 (w32font_open): Set font type to gdi.
9480
9481 * w32uniscribe.c (uniscribe_open): Set font type to uniscribe.
9482
94832008-07-23 Dan Nicolaescu <dann@ics.uci.edu>
9484
9485 * s/usg5-4.h (ADDR_CORRECT): Remove, unused.
9486 * unexaix.c (ADDR_CORRECT): Remove conditional, the only user
9487 defines it.
9488 * unexec.c (ADDR_CORRECT): Define unconditionally.
9489
9490 * m/ibmrs6000.h (C_SWITCH_MACHINE): Remove.
9491
9492 * unexec.c: Remove code depending on !COFF and USG, the file is
9493 not used for such systems.
9494
9495 * s/netbsd.h (A_TEXT_OFFSET, A_TEXT_SEEK):
9496 * s/freebsd.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, unused.
9497 (LD_SWITCH_SYSTEM_1): Remove, update users.
9498
9499 * s/darwin.h (DATA_END):
9500 * m/intel386.h (DATA_END):
9501 * m/ibmrs6000.h (DATA_END):
9502 * m/alpha.h (DATA_END): Remove, unused.
9503
9504 * config.in: Regenerate.
9505 * s/ms-w32.h (subprocesses): Define unconditionally.
9506 * s/template.h (subprocesses): Update comment.
9507 * s/vms.h (subprocesses):
9508 * s/usg5-4.h (subprocesses):
9509 * s/hpux10-20.h (subprocesses):
9510 * s/gnu-linux.h (subprocesses):
9511 * s/cygwin.h (subprocesses):
9512 * s/bsd-common.h (subprocesses):
9513 * s/aix4-2.h (subprocesses):
9514 * s/darwin.h (subprocesses): Do not define, defined by default now.
9515
9516 * Makefile.in (C_SWITCH_SITE, LD_SWITCH_SITE): Remove, unused.
9517 Remove all references.
9518 (temacs): Add GNUstep specific ld flags.
9519
9520 * nsterm.m (syms_of_nsterm): Provide ns, not ns-windowing,
9521 similarly to what X does.
9522
95232008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
9524
9525 * nsfns.m (x-list-fonts): Remove.
9526 (syms_of_nsfns): Drop the x-list-fonts declaration.
9527 * nsterm.m: Get rid of remaining "//" comments.
9528
95292008-07-22 Chong Yidong <cyd@stupidchicken.com>
9530
9531 * xselect.c (Fx_rotate_cut_buffers_internal): Doc fix.
9532
9533 * nsselect.m (Fns_selection_exists_p, Fns_selection_owner_p)
9534 (Fx_get_selection_internal, Fns_rotate_cut_buffers_internal)
9535 (Fns_own_selection_internal, Fx_disown_selection_internal)
9536 (Fns_get_cut_buffer_internal, Fns_store_cut_buffer_internal):
9537
9538 * nsmenu.m (Fns_reset_menu, Fx_popup_menu): Change to use 'doc: /*
9539 ... */' style of docstrings. Doc fixes.
9540
95412008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
9542
9543 * terminfo.c (UP, BC, PC): Undo previous change.
9544
9545 * nsfns.m: Rename ns prefixed functions/variables to the
9546 corresponding x versions. Update references.
9547
95482008-07-22 Stefan Monnier <monnier@iro.umontreal.ca>
9549
9550 * syntax.c (char_quoted): Check "charpos > beg" before decrementing.
9551
95522008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
9553
9554 * nsfns.m (x_set_menu_bar_lines, x_set_tool_bar_lines):
9555 Remove forwarding functions.
9556 (ns_set_menu_bar_lines): Rename to x_set_menu_bar_lines, make
9557 non-static.
9558 (ns_set_tool_bar_lines): Rename to x_set_tool_bar_lines, make
9559 non-static.
9560 (ns_frame_parm_handlers): Use the new names.
9561 (syms_of_nsfns): Move to the end of file.
9562
9563 * nsterm.m (syms_of_nsterm): Move to the end of file.
9564
9565 * dispnew.c (init_display): Remove code for X10.
9566
95672008-07-22 Jason Rumney <jasonr@gnu.org>
9568
9569 * w32proc.c (Fw32_long_file_name): Don't append dir separator to
9570 bare drive.
9571
95722008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
9573
9574 * nsterm.m (syms_of_nsterm): Remove debugging println.
9575
95762008-07-22 David Reitter <david.reitter@gmail.com>
9577
9578 * nsfns.m (do_applescript, F_do_applescript): NS version of the
9579 Carbon implementation of the same functionality: execute arbitrary
9580 AppleScript code.
9581
95822008-07-21 Adrian Robert <Adrian.B.Robert@gmail.com>
9583
9584 * nsfns.m (Fx_create_frame, Fx_read_file_name, Fx_get_resource)
9585 (Fx_set_resource, Fx_set_alpha, Fx_server_max_request_size)
9586 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
9587 (Fx_display_mm_height, Fx_display_mm_width)
9588 (Fx_display_backing_store, Fx_display_visual_class)
9589 (Fx_display_save_under, Fx_open_connection)
9590 (Fx_close_connection, Fx_hide_emacs, Fx_font_name)
9591 (Fx_list_colors, Fx_perform_service, Fx_color_defined_p)
9592 (Fx_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
9593 (Fx_display_pixel_width, Fx_display_pixel_height)
9594 (Fx_display_usable_bounds, Fx_display_planes)
9595 (Fx_display_color_cells, Vns_icon_type_alist): Change to use 'doc: /*
9596 ... */' style of docstrings.
9597
95982008-07-21 Dan Nicolaescu <dann@ics.uci.edu>
9599
9600 * m/mips.h (LOAD_AVE_TYPE, LOAD_AVE_CVT): Do not define, not used
9601 on this platform.
9602 (mips):
9603 * m/iris4d.h (mips): Do not define.
9604 * sysdep.c (init_sys_modes): Use __mips__ instead of mips.
9605
9606 * m/ibmrs6000.h (LD_SWITCH_SITE): Remove.
9607
9608 * image.c:
9609 * nsfns.m:
9610 * nsselect.m:
9611 * nsterm.h:
9612 * nsterm.m: Rename ns prefixed functions/variables to the
9613 corresponding x versions. Update references.
9614
9615 * m/ibms390x.h (NO_REMAP): Do not undefine.
9616
9617 * m/amdx86-64.h: Use SOLARIS2 instead of sun.
9618
96192008-07-21 Chong Yidong <cyd@stupidchicken.com>
9620
9621 * nsfns.m: Change NS to Nextstep in docstrings and error messages.
9622 (Fns_create_frame, Fns_read_file_name, Fns_get_resource)
9623 (Fns_set_resource, Fns_set_alpha, Fns_server_max_request_size)
9624 (Fns_server_vendor, Fns_server_version, Fns_display_screens)
9625 (Fns_display_mm_height, Fns_display_mm_width)
9626 (Fns_display_backing_store, Fns_display_visual_class)
9627 (Fns_display_save_under, Fns_open_connection)
9628 (Fns_close_connection, Fns_hide_emacs, Fns_font_name)
9629 (Fns_list_colors, Fns_perform_service, Fns_color_defined_p)
9630 (Fns_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
9631 (Fns_display_pixel_width, Fns_display_pixel_height)
9632 (Fns_display_usable_bounds, Fx_display_planes)
9633 (Fns_display_color_cells, Vns_icon_type_alist): Doc fixes.
9634
96352008-07-21 Ami Fischman <ami@fischman.org> (tiny change)
9636
9637 * print.c (print_object): Check print_depth before searching for
9638 circularities.
9639
96402008-07-21 Michael Albinus <michael.albinus@gmx.de>
9641
9642 * dbusbind.c (Fdbus_register_signal): Use sprintf + strcat instead
9643 only sprintf.
9644
96452008-07-21 Kenichi Handa <handa@m17n.org>
9646
9647 * ftfont.c (adjust_anchor): Check if DeltaValue is not NULL.
9648
96492008-07-20 Andreas Schwab <schwab@suse.de>
9650
9651 * syntax.c (find_start_pos, find_start_value)
9652 (find_start_value_byte, find_start_begv, find_defun_start)
9653 (back_comment, scan_sexps_forward): Use EMACS_INT for buffer positions.
9654
96552008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
9656
9657 * s/sol2-3.h: Insert contents of s/sol2.h.
9658 (LD_SWITCH_SYSTEM): Remove redundant definition.
9659 * s/sol2.h: Remove, unused.
9660
96612008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
9662
9663 * nsterm.m (ns_get_color): Recognize HSB,AHSB be synonyms for HSV,AHSV.
9664
96652008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
9666
9667 * Makefile.in (ns_appdir): Fix typo in find command.
9668
96692008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
9670
9671 * m/intel386.h (NO_REMAP): Do no define for USG, not used.
9672
9673 * s/usg5-4.h (LIBS_SYSTEM): Remove, system for which this was
9674 added not supported anymore.
9675
9676 * s/usg5-4-2.h (LIBS_SYSTEM):
9677 * s/sol2.h (LIBS_SYSTEM): Do not undefine.
9678
9679 * s/netbsd.h (GETPGRP_NO_ARG, N_TRELOFF):
9680 * s/lynxos.h (GETPGRP_NO_ARG):
9681 * s/hpux10-20.h (NO_SIOCTL_H):
9682 * s/gnu.h (GETPGRP_NO_ARG):
9683 * s/gnu-linux.h (NO_SIOCTL_H):
9684 * s/freebsd.h (GETPGRP_NO_ARG, N_TRELOFF):
9685 * s/cygwin.h (GETPGRP_NO_ARG):
9686 * s/irix6-5.h (LIBS_SYSTEM, GETPGRP_NO_ARG): Remove, unused.
9687 (C_DEBUG_SWITCH): Remove duplicate definition.
9688
9689 * m/ibms390.h: Remove boilerplate comments.
9690
9691 * sysdep.c (closedir): Use SOLARIS2 instead of sun && USG5_4.
9692
9693 * process.c (HAVE_SERIAL): Consolidate ifdefs.
9694 (wait_reading_process_output): Remove code for SunOS, platform not
9695 supported anymore. Use SOLARIS2 instead of sun.
9696
96972008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
9698
9699 * font.c (font_open_by_name): Under NS, default lface height to zero.
9700 (font_open_for_lface): Under NS, set size based on frame fontsize.
9701 * nsterm.m (EmacsView-changeFont:): Remove some commented code.
9702 * frame.c (x_set_frame_parameters): Remove HAVE_NS ifdef.
9703
97042008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
9705
9706 * nsterm.m (ns_antialias_text, ns_use_qd_smoothing)
9707 (ns_use_system_highlight_color): Switch these from DEFVAR_BOOL to
9708 DEFVAR_LISP and change all code accordingly to use Qt/Qnil instead of
9709 YES/NO.
9710 * nsterm.h (prevUseHighlightColor): Make a Lisp_Object.
9711 * nsfont.m (nsfont_draw): Treat ns_use_qd_smoothing as Lisp_Object.
9712 * Makefile.in (clean): Clear out build destination dir.
9713
97142008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
9715
9716 * Makefile.in (nsgui.h-related dependencies): Remove abbrev, xfns,
9717 xterm, xselect.
9718 * lisp.h: Remove declaration of hash_remove.
9719 * nsgui.h: Remove redefinitions of hash_remove.
9720 * fns.c (hash_remove): Rename to hash_remove_from_table.
9721
97222008-07-19 Seiji Zenitani <zenitani@mac.com>
9723
9724 * nsfont.m (nsfont_fmember_to_entity, nsfont_make_fontset_for_font):
9725 strdup() the family UTF8String before modifying it.
9726
97272008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
9728
9729 * nsterm.m (ns_maybe_dumpglyphs_background): Compare result from
9730 NS_FACE_BACKGROUND with 0 instead of nil.
9731 * nsfont.m (nsfont_draw): Same.
9732
97332008-07-19 Chong Yidong <cyd@stupidchicken.com>
9734
9735 * nsfns.m (ns_set_background_color): Fix crash.
9736
97372008-07-18 Chong Yidong <cyd@stupidchicken.com>
9738
9739 * Makefile.in (SOME_MACHINE_LISP): Remove ns-carbon-compat.elc.
9740
97412008-07-18 Dan Nicolaescu <dann@ics.uci.edu>
9742
9743 * puresize.h (BASE_PURESIZE): Increase to 1240000.
9744
97452008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9746
9747 * gtkutil.c: Include <config.h> instead of "config.h".
9748
9749 * lisp.h (Foverlay_buffer): Add EXFUN.
9750
9751 * process.c (create_process) [!WINDOWSNT && FD_CLOEXEC]: Wait for
9752 child process to complete child_setup. Undo 2005-09-21 change.
9753
9754 * s/darwin.h: Mention setsid after vfork.
9755
97562008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9757
9758 * Makefile.in (frame.o, keyboard.o, xdisp.o, xfaces.o):
9759 Depend on macgui.h.
9760
9761 * macfns.c (Fx_server_version): Don't use gestaltSystemVersionMajor,
9762 gestaltSystemVersionMinor, or gestaltSystemVersionBugFix.
9763
9764 * macterm.c (keycode_to_xkeysym_table): Add entries for f17, f18,
9765 and f19.
9766 [MAC_OSX] (fn_keycode_to_keycode_table): Likewise.
9767
9768 * macterm.h (gestaltSystemVersionMajor, gestaltSystemVersionMinor)
9769 (gestaltSystemVersionBugFix) [MAC_OS_X_VERSION_MAX_ALLOWED < 1040]:
9770 Remove enumerators.
9771
9772 * mactoolbox.c [USE_MAC_TSM] (mac_handle_text_input_event):
9773 Check if FACE_FROM_ID returns NULL.
9774
97752008-07-17 David Robinow <drobinow@gmail.com> (tiny change)
9776
9777 * w32inevt.c (change_frame_size): Remove extern declaration.
9778 (resize_event, maybe_generate_resize_event): Pass SAFE arg to
9779 change_frame_size.
9780
97812008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
9782
9783 * getloadavg.c: Revert last change (2008-07-15).
9784
97852008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
9786
9787 * Makefile.in: Replace emacsapp, emacsbindir, emacsappsrc variables
362654a6 9788 set here with ns_appdir, ns_appresdir, ns_appbindir, ns_appsrc set
aac0c6e3
MR
9789 from configure.
9790
97912008-07-17 Dan Nicolaescu <dann@ics.uci.edu>
9792
9793 * s/sol2.h:
9794 * s/sol2-4.h: Reorganize conditionals.
9795
9796 * ecrt0.c: Remove code depending on m68000, not used anymore.
9797
9798 * fns.c (hash_remove): Make static.
9799 * lisp.h (hash_remove): Don't prototype.
9800
9801 * m/ibmrs6000.h:
9802 * m/ibms390x.h:
9803 * m/macppc.h: Remove boilerplate comments.
9804
9805 * m/sparc.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, only used on
9806 Solaris, which does not need them.
9807
9808 * m/vax.h: Remove comments about unsupported systems.
9809
9810 * s/darwin.h: Reorganize ifdefs.
9811
98122008-07-17 Andreas Schwab <schwab@suse.de>
9813
9814 * s/cygwin.h (LIB_STANDARD_LIBSRC): Don't define.
9815
98162008-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
9817
9818 Use SDATA. Follow coding convention of placing operators at
9819 beginning of next line rather than end of previous line, and placing
9820 spaces around infix operators.
9821
9822 * Makefile.in: Undef LIB_STANDARD before defining it to silence warning
9823 in case it was defined already.
9824 USE @GNUSTEP_MAKEFILES@ rather than envvars.
9825 * nsterm.m (ns_term_init): Pass Qt and Qnil rather than YES/NO to
9826 ns_default.
9827 (applicationShouldTerminate, setValuesFromPanel): Use EQ to compare
9828 Lisp_Objects.
9829 * nsterm.h (Fx_display_grayscale_p, Fx_display_planes)
9830 (ns_defined_color, ns_color_to_lisp): Declare.
9831 * nsselect.m (ns_handle_selection_request, ns_handle_selection_clear)
9832 (Fns_own_selection_internal): Make the big ugly hack more explicit, so
9833 it's accepted even with USE_LISP_UNION_TYPE.
9834 * nsmenu.m (ns_update_menubar): Use EQ to compare Lisp_Objects.
9835 (update_frame_tool_bar): Remove apparently obsolete tests for
9836 non-integerness of f->tool_bar_lines.
9837 (windowShouldClose, addButton, clicked, runDialogAt): Make the big ugly
9838 hack more explicit, so it's accepted even with USE_LISP_UNION_TYPE.
9839 * nsfont.m (nsfont_driver): Use just 0 rather than an invalid cast.
9840 (nsfont_open): Don't confuse NULL for Qnil.
9841 * nsfns.m (ns_implicitly_set_icon_type): Use EQ to compare Lisp_Objects.
9842 * menu.h (find_and_call_menu_selection):
9843 * menu.c (find_and_call_menu_selection): Use just int for vector size.
9844 (find_and_return_menu_selection): Always return something.
9845 * frame.h: Include dispextern.h for Display_Info.
9846 (display_x_get_resource): Declare.
9847
98482008-07-16 Adrian Robert <Adrian.B.Robert@gmail.com>
9849
9850 * syntax.c: Remove stdio.h include accidentally introduced in
9851 Emacs.app commit.
9852 * Makefile.in: Change GNUSTEP to NS_IMPL_GNUSTEP, COCOA to
9853 NS_IMPL_COCOA.
9854 * keyboard.c (handle_async_input, input_available_signal): Remove
9855 BSD4_1 conditional code, introduced accidentally in Emacs.app commit.
9856
98572008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
9858
9859 * nsterm.m (lisp_to_mod): Use parse_solitary_modifier instead.
9860 (ns_lisp_to_color): Don't mess with internal Lisp data fields.
9861 (ns_term_init, ns_term_shutdown, initFrameFromEmacs, ns_list_fonts):
9862 Use SDATA.
9863
9864 * keymap.c: Remove all NS-specific code.
9865 (where_is_preferred_modifier, Vwhere_is_preferred_modifier): New vars.
9866 (preferred_sequence_p): Rename from ascii_sequence_p; pay attention to
9867 where_is_preferred_modifier, return a different value depending on how
9868 preferred is the binding.
9869 (where_is_internal): Adjust accordingly.
9870 (Fwhere_is_internal): Refresh where_is_preferred_modifier.
9871 Adjust to new preferred_sequence_p.
9872 (syms_of_keymap): Declare `where-is-preferred-modifier'.
9873 * keyboard.c (parse_solitary_modifier): Not static any more.
9874 * keyboard.h (parse_solitary_modifier): Declare.
9875
98762008-07-16 Andreas Schwab <schwab@suse.de>
9877
9878 * Makefile.in (SOME_MACHINE_LISP): Remove easy-mmode, fix spelling
9879 of easymenu.
9880
98812008-07-16 Chong Yidong <cyd@stupidchicken.com>
9882
9883 * xdisp.c (move_it_in_display_line): Account for word wrap, so
9884 that we don't move off the line.
9885
98862008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
9887
9888 * keyboard.c (Qsuper): Remove.
9889 (parse_menu_item): Don't call where_is_internal specially for NS.
9890
98912008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
9892
9893 * s/gnu-linux.h: Remove boilerplate comments.
9894
9895 * m/alpha.h (__ELF__): Consolidate conditions.
9896
9897 * m/m68k.h (linux): Use GNU_LINUX instead.
9898 Remove boilerplate comments.
9899
9900 * m/intel386.h: Undo refactoring from previous change.
9901 (LIB_STANDARD): All systems that define USG define LIB_STANDARD
9902 too, remove dead code.
9903 (linux): Use GNU_LINUX instead.
9904
99052008-07-16 Jason Rumney <jasonr@gnu.org>
9906
9907 * w32gui.h: Repeat 26 June changes lost by last change.
9908
99092008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
9910
9911 * systty.h: Remove code for Aix on 386, unsupported platform.
9912
9913 * s/ms-w32.h: Remove boilerplate comments.
9914 (fcloseall, fgetchar, flushall, fputchar, getw, putw): Remove, unused.
9915
9916 * s/gnu-linux.h (TERM): Remove support.
9917 (HAVE_SYSVIPC): Remove, unused.
9918 (A_TEXT_OFFSET, A_TEXT_SEEK, ADJUST_EXEC_HEADER): Remove, not used
9919 for this system.
9920
9921 * process.c: Remove support for IRIS, unused.
9922 Remove support for TERM, not relevant anymore.
9923
9924 * unexalpha.c (DEFAULT_ENTRY_ADDRESS): Remove, replace the only
9925 used with the definition.
9926
9927 * s/aix4-2.h (static): Do not undef.
9928
9929 * m/ibmrs6000.h: Remove code depending on USG5_4, this file is
9930 only used on Aix.
9931 (HAVE_SYSVIPC): Remove, unused.
9932
9933 * m/hp800.h (CANNOT_DUMP): Do not undef.
9934
9935 * m/alpha.h: Fix comment.
9936
9937 * s/usg5-4.h (HAVE_SYSVIPC): Remove, unused.
9938 (USG_SHARED_LIBRARIES): Remove, only used in unexec.c which is not
9939 used by this configuration.
9940 * emacs.c: Remove code depending on USG_SHARED_LIBRARIES.
9941 * unexec.c: Remove code depending on HPUX and
9942 USG_SHARED_LIBRARIES, not used with this file. Remove code
9943 depending on IRIS, unused. Remove if 0-ed code.
9944
9945 * s/template.h: Remove comments about static.
9946
9947 * sysdep.c: Remove code depending on NEED_PTEM_H, unused.
9948 Remove if 0-ed code.
9949 (baud_convert): Don't depend on BAUD_CONVERT, all definitions the
9950 were the same as the default.
9951 * s/vms.h (BAUD_CONVERT): Remove, same as the default.
9952 Remove boilerplate comments.
9953 * s/hpux10-20.h (BAUD_CONVERT): Remove, same as the default.
9954 (HAVE_SYSVIPC): Remove, unused.
9955 (LD_SWITCH_SYSTEM_TEMACS): Simplify, hp9000s700 not supported anymore.
9956
9957 * m/ia64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
9958 Remove boilerplate comments.
9959 * m/amdx86-64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
9960 Remove boilerplate comments.
9961 * m/ibms390x.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
9962 Remove boilerplate comments.
9963 * lisp.h (PNTR_COMPARISON_TYPE): Define it unconditionally.
9964
9965 * m/intel386.h (DATA_SEG_BITS): Remove definitions, only used on
9966 USG systems which do not use DATA_SEG_BITS.
9967 Refactor code. Remove boilerplate comments.
9968
9969 * m/ibms390.h:
9970 * m/m68k.h:
9971 * s/bsd-common.h:
9972 * s/cygwin.h:
9973 * s/darwin.h:
9974 * s/freebsd.h:
9975 * s/gnu.h:
9976 * s/msdos.h: Remove boilerplate comments.
9977
9978 * m/iris4d.h: Remove boilerplate comments and code for systems that
6873acca 9979 do not use this file.
aac0c6e3
MR
9980 (IRIS_4D): Remove, unused.
9981
9982 * m/mips.h: Remove boilerplate comments and code for systems that
6873acca 9983 do not use this file.
aac0c6e3
MR
9984 (SIGN_EXTEND_CHAR):
9985 * m/arm.h (SIGN_EXTEND_CHAR): Remove, unused.
9986 * unexmips.c: Remove file, unused.
9987
9988 * editfns.c (Fuser_full_name): Replace the only use of
9989 USER_FULL_NAME with its value.
9990 * config.in: Regenerate.
9991
99922008-07-16 David Reitter <david.reitter@gmail.com>
9993
9994 * Makefile.in: Add ns-win, ns-carbon-compat, easy-mmode and
9995 easy-menu to SOME_MACHINE_LISP for the new NeXTstep port.
9996
99972008-07-16 Glenn Morris <rgm@gnu.org>
9998
9999 * emacs.c (system-type): Doc fix.
10000
100012008-07-15 Stefan Monnier <monnier@iro.umontreal.ca>
10002
10003 * keyboard.c (parse_menu_item): Don't use cachelist, even under NS.
10004 If the cache doesn't work, let's fix it, rather than work around it.
10005
100062008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
10007
10008 * Makefile.in: Correct additions for nsfont.o in last commit.
10009 * nsfont.m: New file (forgot last commit).
10010
100112008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
10012
10013 * callproc.c (set_initial_environment): Initialize
10014 Vprocess_environment under CANNOT_DUMP (fixes crash when
10015 batch-compiling for bootstrap).
10016
100172008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
4e2af782 10018 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
aac0c6e3
MR
10019
10020 (make_initial_frame): Call init_frame_faces(f) in CANNOT_DUMP case --
10021 fix crash due to different init order.
10022
100232008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
10024
10025 Changes and additions for NeXTstep windowing system (Cocoa and
10026 GNUstep) support.
10027
10028 * Makefile.in:
10029 * config.in: Support defines and build commands for NS port.
10030 * blockinput.h (BLOCK_INPUT, UNBLOCK_INPUT, TOTALLY_UNBLOCK_INPUT)
10031 (UNBLOCK_INPUT_TO): Don't use under NS unless EXPERIMENTAL_CONTROL_G.
10032 * dispextern.h: Include nsgui.h and add needed typedefs under NS
10033 windowing.
10034 (struct face): Add synth_ital field.
10035 * dispnew.c: Include nsterm.h when compiling under NS windowing.
10036 (init_display): Initialize Vinitial_window_system to "ns" when so
10037 compiled.
10038 * emacs.c: Include GSConfig.h when compiling under GNUstep.
10039 (display_arg): Use under NS.
10040 (main): Under NS, allocate autorelease pool and handle command line
10041 args. Move syms_of_xmenu() call under #ifdef HAVE_X_WINDOWS.
10042 (standard_args): Add NS-specific args.
10043 (shut_down_emacs): Shut down NS terminal if compiled under NS.
10044 * font.c (DEFAULT_ENCODING): New variable.
10045 (font_find_for_lface): Use it.
10046 (syms_of_font): Load syms_of_nsfont under NS.
10047 * font.h: Declare nsfont_driver when compiled under NS.
10048 * fontset.c: When compiling under NS, include nsterm.h.
10049 (fontset_from_font): Autoconstruct fontset under NS.
10050 * frame.c (various): Under NS, include nsterm.h, add Qns window system
10051 symbol, document and use it.
10052 (do_switch_frame): When for_deletion under Cocoa, add
10053 Fraise_frame(Qnil).
10054 (x_set_frame_parameters): Ensure font attribute changes are picked up.
10055 (x_get_arg): Allow "yes" and "no" as boolean values.
10056 (syms_of_frame): Declare Qns. Init Vdefault_frame_scroll_bars to
10057 Qright under Cocoa.
10058 (focus-follows-mouse): Default to 0 under NS.
10059 * frame.h (enum output_method): Add output_ns.
10060 (external_tool_bar, external_menu_bar, FRAME_EXTERNAL_TOOLBAR)
10061 (FRAME_EXTERNAL_MENU_BAR): Use under NS.
10062 (FRAME_WINDOW_P): NS-specific definition.
10063 * fringe.c (max_used_fringe_bitmap): Make public.
10064 * getloadavg.c (mach/mach.h): Include it under NeXT descendant OS's.
10065 (getloadavg): Use NeXT code under descendant OS's.
10066 * image.c (includes and header section, x_create_bitmap_from_data)
10067 (x_create_bitmap_from_file, free_bitmap_record, image_background)
10068 (image_background_transparent, x_clear_image_1)
10069 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
10070 (Create_Pixmap_From_Bitmap_Data, xpm_load_image, lookup_rgb_color)
10071 (x_to_xcolors, x_from_xcolors, x_disable_image)
10072 (x_build_heuristic_mask, syms_of_image): Add NS support parallel to
10073 other GUIs, including XPM support using code originally written for
10074 Carbon GUI.
10075 (png_load, jpeg_load, tiff_load, gif_load): Add implementations
10076 using NS API.
10077 (image_ascent): Use font metrics macros instead of direct struct field
10078 access.
10079 * keyboard.c (includes): Add nsterm.h when compiling under NS.
10080 (kbd_buffer_get_event): Handle NS as other GUI windowing systems.
10081 Also, handle NS as GTK for menu bar purposes.
10082 (make_lispy_event): Handle NS as other GUI windowing systems, and as X
10083 toolkit where they differ.
10084 (parse_menu_item): Prefer keybindings using 'super' modifier. Also,
10085 use cachelist, still needed under NS.
10086 * keyboard.h (ENCODE_MENU_STRING, XtPointer, Boolean): Handle as NTGUI.
10087 (struct widget_value): Define it here for menu.c.
10088 * keymap.c (includes): Include modifier internals.
10089 (lisp_to_mod, modifier_sequence_p): New functions, compiled only under
10090 NS.
10091 (where_is_internal, Fwhere_is_internal): When compiled under NS, add
10092 support for preferring sequences using certain modifiers, specified by
10093 the FIRSTONLY argument.
10094 * lisp.h (hash_remove): Rename to avoid name clash when compiling
10095 under NS GNUstep implementation.
10096 (USE_LSB_TAG): Use it under Cocoa when compiling under NS.
10097 * lread.c (init_lread): Treat NS as HAVE_CARBON for turn_off_warning.
10098 * menu.c: Include nsterm.h under NS.
10099 (single_menu_item, parse_single_submenu, xmalloc_widget_value)
10100 (free_menubar_widget_tree_value, update_submenu_strings)
10101 (find_and_call_menu_selection): Treat NS as X and NT.
10102 (find_and_return_menu_selection): New function, used for popup menus.
10103 * nsgui.h:
10104 * nsterm.h:
10105 * nsfns.m:
10106 * nsimage.m:
10107 * nsmenu.m:
10108 * nsselect.m:
10109 * nsterm.m: New files.
10110 * process.c (wait_reading_process_output): Under NS, call ns_select()
10111 instead of plain select().
10112 * syntax.c (char_quoted): Under NS, avoid a crash when called near
10113 beginning of buffer.
10114 * sysselect.h (init_process): Rename when compiling under Cocoa to
10115 avoid name conflict.
10116 * termhooks.h (display_info): Add ns_display_info to union.
10117 * terminal.c (Fterminal_live_p): Add ns to terminal types.
10118 * terminfo.c (UP, BC, PC): Don't declare when compiling under NS in
10119 COCOA environment.
10120 * unexnext.c: Update to work with mach API on Mac OS X, and to use new
10121 unexec() signature. (Note, this will dump, but the resulting file
10122 crashes; unexosx is used instead; keeping around for reference and
10123 possible aid in getting dump working under GNUstep.)
10124 * w32gui.h (button_type, widget_value): Remove definitions (now in
10125 keyboard.h).
10126 * window.c: Include nsterm.h when compiling under NS.
10127 * xdisp.c (includes): Include nsterm.h when compiling under NS.
10128 (set_frame_menubar, update_menu_bar, display_menu_bar): Handle NS as
10129 other GUI windowing systems.
10130 (update_tool_bar, redisplay_tool_bar, redisplay_window): Handle NS as
10131 GTK.
10132 (x_consider_frame_title): Under NS, set icon type and frame
10133 modified-state indicator; use ns_set_name_as_filename() when using
10134 formatted title.
10135 (update_window_cursor): Make public when compiling under NS.
10136 (display_hourglass_p, syms_of_xdisp, hourglass_shown_p)
10137 (hourglass_atimer, Vhourglass_delay
10138 * xfaces.c (header section, init_frame_faces, clear_font_table)
10139 (defined_color, unload_color, x_face_list_fonts)
10140 (prepare_face_for_display): Add NS support parallel to other GUIs.
10141 Emulate GCs like other non-X GUIs.
10142 (split_font_name): Don't lowercase font name under NS.
10143 (merge_face_ref, Finternal_set_lisp_face_attribute): Support stippling
10144 under NS.
10145 * s/darwin.h: Add support for compilation under NS.
10146
101472008-07-15 Jason Rumney <jasonr@gnu.org>
10148
10149 * w32fns.c (Fx_create_frame): Remove duplicate unwind_protect.
10150 (w32_show_hourglass): Rename from show_hourglass.
10151 (w32_hide_hourglass): Rename from hide_hourglass.
10152 (DEFAULT_HOURGLASS_DELAY): Revert from last change.
10153 (Vhourglass_delay): Declare extern.
10154 (hourglass_started): Remove.
10155
10156 * xdisp.c (Vhourglass_delay): Remove static.
10157 (hourglass_started, start_hourglass, cancel_hourglass):
10158 Don't include these versions on WINDOWSNT.
10159
101602008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
10161
10162 * dispextern.h (hourglass_shown_p, hourglass_atimer): New extern
10163 variables (formerly in xfns.c).
10164 (show_hourglass, hide_hourglass): New prototypes (same).
10165 * xdisp.c (display_hourglass_p, hourglass_shown_p, hourglass_atimer)
10166 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY): New variables (formerly
10167 in xfns.c).
10168 (syms_of_xdisp): Declare/initialize display-hourglass,
10169 hourglass-delay. Initialize hourglass_atimer, hourglass_shown_p.
10170 (hourglass_started, start_hourglass, cancel_hourglass): New functions,
10171 formerly in xfns.c.
10172 * xfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
10173 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
10174 (start_hourglass, cancel_hourglass): Remove.
10175 (show_hourglass, hide_hourglass): Remove prototypes and static
10176 modifiers.
10177 (syms_of_xfns): Remove display-hourglass, hourglass-delay,
10178 hourglass_atimer, hourglass_shown_p declaration/initialization.
10179 * macfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
10180 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
10181 (start_hourglass, cancel_hourglass): Remove.
10182 (show_hourglass, hide_hourglass): Remove prototypes and static
10183 modifiers.
10184 (syms_of_macfns): Remove display-hourglass, hourglass-delay,
10185 hourglass_atimer, hourglass_shown_p declaration/initialization.
10186 * w32fns.c (display_hourglass_p, Vhourglass_delay)
10187 (DEFAULT_HOURGLASS_DELAY): Remove.
10188 (syms_of_w32fns): Remove display-hourglass, hourglass-delay,
10189 hourglass_shown_p declaration/initialization.
10190
101912008-07-14 Jason Rumney <jasonr@gnu.org>
10192
10193 * w32fns.c (w32_get_arg): Remove wrapper function.
10194 (w32_createwindow, x_icon, x_create_tip_frame): Use x_get_arg
10195 directly.
10196 (Fx_create_frame): Sync with xfns.c. Use x_get_arg directly.
10197
101982008-07-14 Kenichi Handa <handa@m17n.org>
10199
10200 * xfont.c (xfont_open): Add workaround for X's bug.
10201
102022008-07-14 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
10203
10204 * fontset.c: Include <stdio.h> unconditionally.
10205
102062008-07-13 Michael Albinus <michael.albinus@gmx.de>
10207
10208 * dbusbind.c (Fdbus_register_signal): Allow also signal arguments
10209 for filtering.
10210
102112008-07-13 Dan Nicolaescu <dann@ics.uci.edu>
10212
10213 * s/vms.h: Use __GNUC__ instead of _GNUC_.
10214
10215 * m/macppc.h:
10216 * m/alpha.h: Use GNU_LINUX instead of LINUX. Reorganize conditionals.
10217
10218 * m/ibms390x.h (XINT, XUINT): Don't define, same as the default
10219 (SPECIAL_EMACS_INT):
10220 * m/ia64.h (SPECIAL_EMACS_INT):
10221 * m/amdx86-64.h (SPECIAL_EMACS_INT):
10222 * s/gnu.h (NLIST_STRUCT):
10223 * s/aix4-2.h (X11R5_INHIBIT_I18N):
10224 * s/gnu-linux.h (LINUX):
10225 * s/msdos.h (HAVE_FACES):
10226 * s/ms-w32.h (HAVE_FACES): Don't define, unused.
10227
10228 * systty.h:
10229 * sysdep.c (setup_pty): Don't depend on SYSV_PTYS, it is not used
10230 anymore.
10231
102322008-07-12 Dan Nicolaescu <dann@ics.uci.edu>
10233
10234 * syswait.h: Remove old if 0 code. Do not define WAITTYPE, it was
10235 always defined as int.
10236
10237 * s/netbsd.h (HAVE_UNION_WAIT, HAVE_WAIT_HEADER, WAIT_USE_INT):
10238 * s/gnu.h (HAVE_WAIT_HEADER, WAIT_USE_INT, HAVE_UNION_WAIT):
10239 * s/gnu-linux.h (HAVE_WAIT_HEADER):
10240 * s/freebsd.h (HAVE_WAIT_HEADER):
10241 * s/bsd-common.h (HAVE_UNION_WAIT):
10242 * s/aix4-2.h (HAVE_WAIT_HEADER):
10243 * m/mips.h (HAVE_UNION_WAIT):
10244 * s/usg5-4.h (HAVE_WAIT_HEADER, WAITTYPE): Do not define, not used.
10245 (COFF, static): Do not define, they are undefined later in the file.
10246
10247 * process.c (update_status): Don't use a union.
10248 (status_convert):
10249 (sigchld_handler): Use int instead of WAITTYPE.
10250
102512008-07-12 Chong Yidong <cyd@stupidchicken.com>
10252
10253 * indent.c (Fvertical_motion): Restore hscroll before moving to
10254 goal column.
10255
102562008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
10257
10258 * lisp.h: Remove left over code.
10259
102602008-07-11 Andreas Schwab <schwab@suse.de>
10261
10262 * lisp.h: Fix logic in last change.
10263
10264 * menu.h: New file.
10265 * menu.c: Include it.
10266 * xmenu.c: Likewise.
10267 * Makefile.in: Update dependencies.
10268
102692008-07-11 Kenichi Handa <handa@m17n.org>
10270
10271 * fontset.c (fontset_from_font): Cancel the previous change.
10272
102732008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
10274
10275 * lisp.h:
10276 * w32heap.c:
10277 * emacs.c:
10278 * alloc.c: Replace all references of NO_UNION_TYPE with
10279 USE_LISP_UNION_TYPE.
10280
10281 * m/xtensa.h (NO_UNION_TYPE):
10282 * m/vax.h (NO_UNION_TYPE):
10283 * m/template.h (NO_UNION_TYPE):
10284 * m/sparc.h (NO_UNION_TYPE):
10285 * m/mips.h (NO_UNION_TYPE):
10286 * m/macppc.h (NO_UNION_TYPE):
10287 * m/m68k.h (NO_UNION_TYPE):
10288 * m/iris4d.h (NO_UNION_TYPE):
10289 * m/intel386.h (NO_UNION_TYPE):
10290 * m/ibms390x.h (NO_UNION_TYPE):
10291 * m/ibms390.h (NO_UNION_TYPE):
10292 * m/ibmrs6000.h (NO_UNION_TYPE):
10293 * m/ia64.h (NO_UNION_TYPE):
10294 * m/hp800.h (NO_UNION_TYPE):
10295 * m/arm.h (NO_UNION_TYPE):
10296 * m/amdx86-64.h (NO_UNION_TYPE):
10297 * m/alpha.h (NO_UNION_TYPE): Remove definition, all platform were
10298 defining it the same.
10299
103002008-07-10 Chong Yidong <cyd@stupidchicken.com>
10301
10302 * xdisp.c (move_it_to): Backtrack if past the edge of a wrapped line.
10303
103042008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
10305
10306 * fileio.c:
50426a04 10307 * sysdep.c:
aac0c6e3
MR
10308 * systty.h:
10309 * m/ibmrs6000.h:
10310 * m/iris4d.h:
10311 * s/aix4-2.h:
10312 * s/freebsd.h:
10313 * s/gnu-linux.h:
10314 * s/hpux10-20.h:
10315 * s/hpux11.h:
10316 * s/netbsd.h:
10317 * s/sol2-3.h:
10318 * s/sol2-4.h:
10319 * s/sol2.h:
10320 * s/usg5-4.h:
10321 * s/vms.h: Remove references to unused variables.
10322
103232008-07-10 Andreas Schwab <schwab@suse.de>
10324
10325 * ftfont.c (ftfont_resolve_generic_family): Remove foundry from
10326 pattern before matching the generic family.
10327
103282008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
10329
10330 * unexec.c:
10331 * s/vms.h:
10332 * s/usg5-4-2.h:
10333 * s/sol2-5.h:
10334 * s/freebsd.h:
10335 * s/darwin.h: Remove dead code.
10336
10337 * m/template.h:
10338 * m/sparc.h:
10339 * m/mips.h:
10340 * m/m68k.h:
10341 * m/iris4d.h:
10342 * m/intel386.h:
10343 * m/ibms390x.h:
10344 * m/ibms390.h:
10345 * m/ia64.h:
10346 * m/hp800.h:
10347 * m/arm.h:
10348 * m/amdx86-64.h: Remove dead code and references to unused
10349 and compiler defined symbols.
10350
10351 * unexmips.c:
10352 * unexelf.c: Remove references to desupported systems.
10353
10354 * m/powermac.h: Remove file, it is now identical to m/macppc.h.
10355
10356 * m/powermac.h: Remove boilerplate comments.
10357 (NO_REMAP): Remove unused definition.
10358
10359 * m/macppc.h (UNEXEC, NO_TERMIO): Don't define, the s/ files
10360 define them.
10361
103622008-07-10 Kenichi Handa <handa@m17n.org>
10363
10364 * xfont.c (xfont_open): Log the reason of failure.
10365
103662008-07-09 Stefan Monnier <monnier@iro.umontreal.ca>
10367
10368 * fontset.c (fontset_get_font_group):
10369 * font.c (font_check_otf): Specify argument types.
10370
103712008-07-09 Kenichi Handa <handa@m17n.org>
10372
10373 * coding.c (detect_coding_utf_8): Set detect_info->found only when
10374 non-ASCII char is found.
10375
10376 * fontset.c (fontset_compare_rfontdef): Fix plus/minus.
10377 (reorder_font_vector): Change the arg preferred_family to font.
10378 Prefer the spec matching with font.
10379 (fontset_get_font_group): New function.
10380 (fontset_find_font): Change the format of an element of a realized
10381 fontset. Use fontset_get_font_group.
10382 (fontset_font): Try the current fontset, the default fontset, the
10383 fallbacks of the current fontset, and the fallbacks of the default
10384 fontset in this order.
10385 (face_for_char): Delete the shortcut to use the current font.
10386 (fontset_from_font): Don't set fonts for Latin in the fontset.
10387
10388 * font.h (font_make_object, font_match_p): Adjust prototypes.
10389
10390 * ftfont.h [FT_BDF_H]: Include FT_BDF_H.
10391
10392 * font.c (font_make_object): New arg entity and pixelsize.
10393 (font_check_otf_features, font_check_otf): New functions.
10394 (font_match_p): Check :lang, :script, and :otf properties.
10395
10396 * xfont.c (xfont_open): Adjust it for the change of
10397 font_make_object.
10398 (xfont_text_extents): Fix initial setting of metrics.
10399
10400 * ftfont.c (struct ftfont_info): New member index, delete member
10401 fc_charset_idx. Make the member order compatible with struct
10402 xftfont_info.
10403 (fc_charset_table): Change charset names to registry names.
10404 (ftfont_pattern_entity): Delete the args registry and
10405 fc_charset_idx. Change the value of :font-entity property
10406 to (FONTNAME . INDEX). Always set :registry property to
10407 `iso10646-1'.
10408 (struct ftfont_cache_data): New struct.
10409 (ftfont_lookup_cache): New arg for_face.
10410 (ftfont_get_fc_charset, ftfont_get_otf): New functions.
10411 (ftfont_driver): Set the member otf_capability.
10412 (ftfont_get_charset): Adjust it for the change of
10413 fc_charset_table.
10414 (OTF_TAG_SYM): New macro.
10415 (ftfont_spec_pattern): Delete the arg fc_charset_idx. Adjust it
10416 for the change of fc_charset_table.
10417 (ftfont_list): Adjust it for the change of ftfont_spec_pattern and
10418 ftfont_pattern_entity. Add FC_INDEX to objset.
10419 (ftfont_match): Adjust it for the change of ftfont_spec_pattern
10420 and ftfont_pattern_entity.
10421 (ftfont_open): Adjust it for the change of ftfont_lookup_cache,
10422 font_make_object, struct ftfont_info.
10423 (ftfont_has_char): Use ftfont_get_fc_charset.
10424 (ftfont_otf_features, ftfont_otf_capability): New functions.
10425 (ftfont_shape): Use ftfont_get_otf.
10426 (ftfont_text_extents): Fix initial setting of metrics.
10427
10428 * xftfont.c (struct xftfont_info): New member ft_size. Make the
10429 member order compatible with struct ftfont_info.
10430 (xftfont_open): Add FC_CHARSET to the pattern. Set
10431 xftfont_info->ft_size. Don't unlock the face. Check BDF
10432 properties if appropriate.
10433 (xftfont_close): Unlock the face.
10434 (xftfont_anchor_point, xftfont_shape): Deleted.
10435 (syms_of_xftfont): Don't set members anchor_point and shape of
10436 xftfont_driver.
10437
10438 * w32uniscribe.c (uniscribe_open): Adjust it for the change of
10439 font_make_object.
10440
10441 * w32font.c (w32font_open): Adjust it for the change of
10442 font_make_object.
10443 (w32font_open_internal): Don't set properties of font_object here.
10444
104452008-07-08 Chong Yidong <cyd@stupidchicken.com>
10446
10447 * macfns.c (x_create_tip_frame):
10448 * w32fns.c (x_create_tip_frame):
10449 * xfns.c (x_create_tip_frame): Pass parameter argument to
10450 face-set-after-frame-default.
10451
10452 * xfaces.c (Finternal_merge_in_global_face): Save merged
10453 attributes for the default face back into the face vector.
10454
104552008-07-08 Andreas Schwab <schwab@suse.de>
10456
10457 * fontset.h: Declare fontset_from_font. Don't declare
10458 new_fontset_from_font and fontset_from_font_name.
10459 * xterm.c: Include "fontset.h".
10460 * Makefile.in (xterm.o): Update dependencies.
10461
104622008-07-08 Glenn Morris <rgm@gnu.org>
10463
10464 * m/sparc.h: Define __sparc__ rather than sparc. (Bug#507.)
10465 * alloc.c, ecrt0.c: Use __sparc__ rather than sparc.
10466
104672008-07-07 Chong Yidong <cyd@stupidchicken.com>
10468
10469 * frame.c (Qinhibit_face_set_after_frame_default): Var deleted.
10470 (x_set_frame_parameters): Don't bind it.
10471
104722008-07-07 Juanma Barranquero <lekktu@gmail.com>
10473
10474 * w32fns.c (map_w32_filename): Declare extern.
10475
104762008-07-07 Jason Rumney <jasonr@gnu.org>
10477
10478 * w32term.c (WS_EX_LAYERED): Define if not already.
10479
104802008-07-06 Chong Yidong <cyd@stupidchicken.com>
10481
10482 * xfaces.c (set_font_frame_param): Don't try to set the font
10483 parameter if it is still unspecified in the lface.
10484
104852008-07-05 Chong Yidong <cyd@stupidchicken.com>
10486
10487 * xfaces.c (Finternal_merge_in_global_face): Don't realize default
10488 face if it didn't already exist.
10489
10490 * xdisp.c (try_window_id): Give up if word-wrapping is on.
10491
104922008-07-05 Andreas Schwab <schwab@suse.de>
10493
10494 * xdisp.c (get_it_property): Move out of HAVE_WINDOW_SYSTEM section.
10495
104962008-07-05 Chong Yidong <cyd@stupidchicken.com>
10497
10498 * xdisp.c (IT_OVERFLOW_NEWLINE_INTO_FRINGE): Turn it off if
10499 word-wrapping.
10500 (IT_DISPLAYING_WHITESPACE): New macro.
10501 (move_it_in_display_line_to): Handle MOVE_TO_X requests properly
10502 when word-wrapping. Simplify word-wrapping logic. Use correct
10503 pixel positions when saving copies of the iterator.
10504 (display_line): Use proper wrap point if the last character on a
10505 line was preceded by whitespace.
10506
105072008-07-04 Stefan Monnier <monnier@iro.umontreal.ca>
10508
10509 * Makefile.in (${etc}DOC): Depend on ${lisp} rather than ${shortlisp}.
10510
105112008-07-04 Kenichi Handa <handa@m17n.org>
10512
10513 * fns.c (Fstring_to_unibyte): Delete the arg ACCEPT-LATIN-1.
10514
10515 * lisp.h: EXFUN adjusted for the change of Fstring_to_unibyte.
10516
105172008-07-02 Jason Rumney <jasonr@gnu.org>
10518
10519 * xfns.c (syms_of_xfns): Only define x-select-font when both
2ae37cf0 10520 HAVE_FREETYPE and USE_GTK.
aac0c6e3
MR
10521
10522 * xdisp.c (next_element_from_display_vector): Move assignment out
10523 of if statement.
10524
105252008-07-02 Toru Tsuneyoshi <t_tuneyosi@hotmail.com>
10526
10527 * lisp.h (Qdelete_file, Qdelete_directory): Declare extern.
10528
10529 * fileio.c (delete_by_moving_to_trash, Qmove_file_to_trash): New vars.
10530 (syms_of_fileio): Initialize and export them.
10531 (Fdelete_directory, Fdelete_file): Optionally delete via trash.
10532
10533 * w32fns.c (FOF_NO_CONNECTED_ELEMENTS): Define if not already.
10534 (Fsystem_move_file_to_trash): New function.
10535 (syms_of_w32fns): Export it to lisp.
10536
105372008-07-01 Jason Rumney <jasonr@gnu.org>
10538
10539 * w32font.c (w32font_text_extents): Don't count overhang as part
10540 of width.
10541
105422008-06-30 Miles Bader <miles@gnu.org>
10543
10544 * dispextern.h (struct glyph, struct it, struct iterator_stack_entry):
10545 Add `avoid_cursor_p' field.
10546
10547 * xdisp.c (push_it, pop_it): Save/restore avoid_cursor_p field.
10548 (set_cursor_from_row): Skip glyphs with avoid_cursor_p set.
10549 (append_glyph, append_composite_glyph, produce_image_glyph)
10550 (append_stretch_glyph): Initialize avoid_cursor_p.
10551 (get_it_property): Rename from `get_line_height_property'.
10552 (x_produce_glyphs): Use get_it_property.
10553 (handle_line_prefix, push_display_prop): New functions.
10554 (display_line, move_it_in_display_line_to): Handle line/wrap prefixes.
10555 (Vwrap_prefix, Qwrap_prefix, Vline_prefix, Qline_prefix):
10556 New variables.
10557 (syms_of_xdisp): Initialize them.
10558
105592008-06-30 Kenichi Handa <handa@m17n.org>
10560
10561 * xftfont.c (xftfont_open): Don't call FcConfigSubstitute and
10562 XftDefaultSubstitute (they are called in XftFontMatch).
10563 (xftfont_open): Fix args to ftfont_font_format.
10564
10565 * ftfont.c (fc_charset_table): New member lang.
10566 (ftfont_resolve_generic_family): New arg pattern.
60612c8f 10567 (ftfont_spec_pattern): Check fc_charset_table[]->lang.
aac0c6e3
MR
10568 (ftfont_list): Call ftfont_resolve_generic_family with `pattern'.
10569 (ftfont_open): Fix args to ftfont_font_format.
10570 (ftfont_font_format): New arg filename.
10571
105722008-06-30 Chong Yidong <cyd@stupidchicken.com>
10573
10574 * xfaces.c (Finternal_merge_in_global_face): If default face was
10575 modified, realize it again. Update the font face attribute.
10576
105772008-06-29 Jason Rumney <jasonr@gnu.org>
10578
10579 * w32term.c (x_set_frame_alpha): Fix logic.
10580
105812008-06-29 Kenichi Handa <handa@m17n.org>
10582
10583 * fontset.c (Finternal_char_font): Return font-object instead of
10584 font-name.
10585
10586 * composite.c (get_composition_id): Fix the width calculation for TAB.
10587
105882008-06-29 Stefan Monnier <monnier@iro.umontreal.ca>
10589
10590 * indent.c (Fvertical_motion): Properly handle float column arg.
10591
105922008-06-28 Jason Rumney <jasonr@gnu.org>
10593
10594 * w32term.c (pfnGetFontUnicodeRanges): Remove unused function pointer.
10595 (pfnSetLayeredWindowAttributes): New function pointer.
10596 (w32_initialize): Initialize it when supported.
10597 (x_set_frame_alpha): New function.
10598
10599 * w32fns.c (Fx_create_frame): Initialize frame parameter `alpha'.
10600 (w32_frame_parm_handlers): Set alpha handler.
10601
10602 * frame.c (x_set_alpha) [HAVE_NTGUI]: Call x_set_frame_alpha.
10603
106042008-06-27 Jason Rumney <jasonr@gnu.org>
10605
10606 * w32fns.c (x_to_w32_font, w32_to_x_font, x_to_w32_weight)
10607 (w32_to_x_weight, w32_to_all_x_charsets): Remove obsolete functions.
10608 (w32_to_x_charset, x_to_w32_charset)
10609 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
10610 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
10611 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
10612 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
10613 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
10614 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
10615 (Qw32_charset_mac, Vw32_charset_info_alist): Move to w32font.c.
10616 (Qw32_charset_unicode): Remove.
10617 (syms_of_w32fns): Update for above changes.
10618
10619 * w32font.c (w32_to_x_charset, x_to_w32_charset)
10620 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
10621 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
10622 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
10623 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
10624 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
10625 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
10626 (Qw32_charset_mac, Vw32_charset_info_alist): Move from w32fns.c.
10627 (syms_of_w32font): Update for above changes.
10628
106292008-06-27 Dan Nicolaescu <dann@ics.uci.edu>
10630
10631 * s/usg5-4.h: Fix previous change: keep the correct branch of a
10632 removed #if.
10633 (USG_SHARED_LIBRARIES): Remove duplicate definition.
10634
106352008-06-26 Juanma Barranquero <lekktu@gmail.com>
4e2af782 10636 Eli Zaretskii <eliz@gnu.org>
aac0c6e3
MR
10637
10638 * makefile.w32-in (LOCAL_FLAGS):
10639 Don't include WINDOWSNT, DOS_NT and _UCHAR_T.
10640
10641 * sysdep.c (_spawnlp, _getpid):
10642 Declare with explicit _cdecl instead of _CRTAPI1.
10643
10644 * editfns.c (Fget_internal_run_time):
10645 Check for WINDOWSNT with #ifdef, not #if.
10646
106472008-06-26 Jason Rumney <jasonr@gnu.org>
10648
10649 * w32font.h (FONT_HANDLE, FONT_TEXTMETRIC): New macros.
10650
10651 * w32term.c (x_draw_glyph_string_foreground)
10652 (x_draw_composite_glyph_string_foreground): Sync with xterm.c.
10653 Use FONT_HANDLE macro.
10654 (x_draw_glyph_string): Use FONT_TEXTMETRIC macro.
10655
10656 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
10657 (uniscribe_encode_char): Use FONT_HANDLE macro.
10658
10659 * w32font.c (Fx_select_font): Use FONT_HANDLE macro.
10660 (w32font_text_extents): Use precast w32_font.
10661 (w32font_close): Free cached metrics.
10662 (w32font_open_internal): Allocate space for name on stack.
10663
106642008-06-26 Chong Yidong <cyd@stupidchicken.com>
10665
10666 * xdisp.c (extend_face_to_end_of_line): Fix last change.
10667
106682008-06-26 Jason Rumney <jasonr@gnu.org>
10669
10670 * w32term.h (FONT_AVG_WIDTH): Remove obsolete macro.
10671 (CP_8BIT, CP_UNICODE, CP_UNKNOWN): Remove obsolete constants.
10672
106732008-06-26 Juanma Barranquero <lekktu@gmail.com>
10674
10675 * Makefile.in (SOME_MACHINE_OBJECTS): Remove w32bdf.o.
10676
106772008-06-26 Jason Rumney <jasonr@gnu.org>
10678
10679 * w32bdf.c, w32bdf.h: Remove obsolete files.
10680
10681 * makefile.w32-in: Remove refs to w32bdf.h and w32bdf.c.
10682
10683 * w32gui.h: Don't include w32bdf.h.
10684 (XCharStruct, enum w32_char_font_type, W32FontStruct):
10685 Remove obsolete font support.
10686
10687 * w32font.h (struct w32font_info): Remove compat_w32_font.
10688 Add hfont member.
10689 (FONT_COMPAT): Remove obsolete macro.
10690
10691 * w32font.c (w32font_close): Remove compat code. Delete hfont member.
10692 (w32font_encode_char, w32font_text_extents): Use new hfont member.
10693 (w32font_open_internal): Remove compat code. Set new hfont member.
10694 (Fx_select_font): Use new hfont member.
10695
10696 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
10697 (uniscribe_encode_char): Use new hfont member.
10698
10699 * w32term.c (x_draw_glyph_string_foreground)
10700 (x_draw_composite_glyph_string_foreground): Use new hfont member.
10701 (x_draw_glyph_string): Use metrics in w32font_info.
10702
107032008-06-26 Kenichi Handa <handa@m17n.org>
10704
10705 * xdisp.c (handle_auto_composed_prop): Fix for the terminal case.
10706
107072008-06-26 Dan Nicolaescu <dann@ics.uci.edu>
10708
10709 * unexnext.c:
10710 * m/ews4800.h:
10711 * m/hp9000s300.h:
10712 * m/ibm370aix.h:
10713 * m/mips-siemens.h:
10714 * m/ncr386.h:
10715 * m/next.h:
10716 * m/pmax.h:
10717 * m/powerpcle.h:
10718 * m/tandem-s2.h:
10719 * s/386bsd.h:
10720 * s/bsd386.h:
10721 * s/bsd4-1.h:
10722 * s/bsd4-2.h:
10723 * s/bsdos2-1.h:
10724 * s/bsdos2.h:
10725 * s/bsdos3.h:
10726 * s/bsdos4.h:
10727 * s/nextstep.h:
10728 * s/ultrix4-3.h:
10729 * s/usg5-0.h:
10730 * s/usg5-2-2.h:
10731 * s/usg5-2.h:
10732 * s/usg5-4-3.h:
10733 * s/ux4800.h:
10734 * s/uxpds.h:
10735 * s/uxpv.h: Remove support for obsolete systems.
10736 * s/hpux.h, s/hpux10.h, s/hpux8.h, s/hpux9.h, s/hpux9shr.h:
8f3a3ac2 10737 Remove, insert contents in s/hpux10-20.h.
aac0c6e3
MR
10738 * s/aix3-1.h, s/aix3-2-5.h, s/aix3-2.h, s/aix4-1.h, s/aix4.h:
10739 Remove, insert contents in s/aix4-2.h.
10740 * s/usg5-3.h: Remove, insert contents in s/usg5-4.h.
10741 * s/bsd4-3.h: Rename to ...
10742 * s/bsd-common.h: ... this.
10743 * data.c:
10744 * doc.c:
10745 * ecrt0.c:
10746 * emacs.c:
10747 * fileio.c:
10748 * floatfns.c:
10749 * keyboard.c:
10750 * mem-limits.h:
10751 * print.c:
10752 * process.c:
10753 * sysdep.c:
10754 * syssignal.h:
10755 * systty.h:
10756 * syswait.h:
10757 * term.c:
10758 * unexec.c:
10759 * unexelf.c:
10760 * unexhp9k800.c:
10761 * m/hp800.h:
10762 * m/ibmrs6000.h:
10763 * m/mips.h:
10764 * m/vax.h:
10765 * s/darwin.h:
10766 * s/freebsd.h:
10767 * s/gnu.h:
10768 * s/ms-w32.h:
10769 * s/msdos.h:
10770 * s/netbsd.h:
10771 * s/template.h: Remove references to obsolete variables.
10772
10773 * Makefile.in: Add dependencies for all unexec files.
10774 (admindir): Remove unused variable.
10775 (UNEXEC_SRC): Remove references.
10776
107772008-06-25 Chong Yidong <cyd@stupidchicken.com>
10778
10779 * xfns.c (x_default_font_parameter): If Xft is available, first
10780 try Monospace-12 for the default font.
10781
107822008-06-25 Jason Rumney <jasonr@gnu.org>
10783
10784 * xdisp.c (get_glyph_face_and_encoding): Encode invalid glyphs as 0.
10785
107862008-06-25 Stefan Monnier <monnier@iro.umontreal.ca>
10787
10788 * bytecode.c (Fbyte_code): Disable debugging code that doesn't compile.
10789
10790 * buffer.c (syms_of_buffer): Remove default-word-wrap.
10791
107922008-06-25 Juanma Barranquero <lekktu@gmail.com>
10793
10794 * xdisp.c (syms_of_xdisp) <truncate-partial-width-windows>: Doc fix.
10795 <scroll-conservatively>: Fix typo in docstring.
10796
10797 * xselect.c (Fx_send_client_event): Doc fix.
10798
107992008-06-25 Kenichi Handa <handa@m17n.org>
10800
10801 * xfaces.c (Fx_list_fonts): Call Flist_fonts with the arg PREFER.
10802
10803 * font.c (font_parse_fcname): Remove unused variables.
10804 (font_sort_entites): Delete the arg SPEC. Caller changed.
10805 Fix for the case of ! best_only.
10806 (font_delete_unmatched): Check DPI and AVGWIDTH too.
10807
10808 * lisp.h (Fstring_to_unibyte): EXFUN it.
10809
10810 * character.h (str_to_unibyte): Extern it.
10811
10812 * character.c (str_to_unibyte): New function.
10813
10814 * fns.c (Fstring_to_unibyte): New function.
10815 (syms_of_fns): Defsubr it.
10816
108172008-06-24 Kenichi Handa <handa@m17n.org>
10818
10819 * font.c (font_score): Even if the PIXEL_SIZE is the same, check
10820 DPI too.
10821 (font_sort_entites): Setup prefer_prop[FONT_DPI_INDEX] too.
10822
108232008-06-24 Andreas Schwab <schwab@suse.de>
10824
10825 * Makefile.in (${lispsource}loaddefs.el): Rename from
10826 ../lisp/loaddefs.el.
10827 (bootstrap-clean): Do what distclean does but don't remove
10828 Makefile.
10829 (distclean): Depend on bootstrap-clean and remove Makefile.
10830
108312008-06-24 Chong Yidong <cyd@stupidchicken.com>
10832
10833 * buffer.h (struct buffer): New member word_wrap.
10834
10835 * buffer.c (syms_of_buffer): New variables default-word-wrap and
10836 word-wrap.
10837 (init_buffer_once): Initialize them.
10838
10839 * dispextern.h (struct it): Replace bool truncate_lines_p with a
10840 line_wrap enum possessing three possible values.
10841
10842 * termopts.h: Replace truncate_partial_width_windows with
10843 Vtruncate_partial_width_windows.
10844
10845 * dispnew.c (direct_output_for_insert): Avoid direct output when
10846 inserting a space with word wrap on.
10847
10848 * indent.c (compute_motion): Obey integer values of
10849 truncate-partial-width-windows.
10850
10851 * xdisp.c (Vtruncate_partial_width_windows): New Lisp_Object,
10852 replacing truncate_partial_width_windows.
10853 (init_iterator): If Vtruncate_partial_width_windows is an integer,
10854 truncate only if the window width is below that integer.
10855 (start_display, resize_mini_window, produce_stretch_glyph)
10856 (display_string, move_it_in_display_line_to): Use line_wrap.
10857 (back_to_previous_visible_line_start, reseat_1): Reset
10858 string_from_display_prop_p.
10859 (display_line): Extend default face to end of line when wrapping.
10860
108612008-06-24 Kim F. Storm <storm@cua.dk>
10862
10863 * xdisp.c (display_line, move_it_in_display_line_to): Add ability
10864 to wrap continued lines at word boundaries.
10865
108662008-06-24 Jason Rumney <jasonr@gnu.org>
10867
10868 * font.c (Ffont_face_attributes): Multiply pixel size before point
10869 conversion to avoid multiplying rounding error.
10870
108712008-06-23 Jason Rumney <jasonr@gnu.org>
10872
10873 * w32term.c (x_draw_glyph_string_background)
10874 (x_draw_glyph_string): Remove old bdf font code.
10875
10876 * w32term.h (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): Remove.
10877
108782008-06-22 Kenichi Handa <handa@m17n.org>
10879
10880 * font.c (font_find_for_lface): Try the adstyle specified in
10881 the property of LFACE_FONT of LFACE (if any).
10882
108832008-06-21 Seiji Zenitani <zenitani@mac.com>
4e2af782 10884 Ryo Yoshitake <ryo@shiftmode.net>
aac0c6e3
MR
10885
10886 * xterm.c (x_set_frame_alpha): Add x_catch_errors for bug#437.
10887
108882008-06-22 Stefan Monnier <monnier@iro.umontreal.ca>
10889
10890 * Makefile.in (${lisp} ${SOME_MACHINE_LISP}, ../lisp/loaddefs.el):
10891 Use $(BOOTSTRAPEMACS) rather than witness-emacs.
10892 (bootstrap-emacs${EXEEXT}): Merge witness-emacs into it.
10893 (witness-emacs): Remove.
10894 (lisp, shortlisp): Move loaddefs.el earlier.
10895 (mostlyclean): Forget about witness-emacs.
10896
108972008-06-22 Glenn Morris <rgm@gnu.org>
10898
10899 * Makefile.in (witness-emacs): Depend on temacs${EXEEXT}.
10900 (.SUFFIXES): Declare .el.elc as a suffix rule, for non-GNU makes.
10901
109022008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
10903
10904 * Makefile.in (PRECOMP): Remove.
10905 (${lisp} ${SOME_MACHINE_LISP}): Remove pseudo dependency on PRECOMP.
10906 (witness-emacs): Run `compile-first'.
10907 (.el.elc): Use the new compile-onefile target.
10908
109092008-06-21 Kenichi Handa <handa@m17n.org>
10910
10911 * xftfont.c (xftfont_open): Handle QCembolden only when
10912 FC_EMBOLDEN is defined.
10913
109142008-06-21 Andreas Schwab <schwab@suse.de>
10915
10916 * Makefile.in (witness-emacs): Use ../lisp, not $(lispsource).
10917 (.el.elc): Likewise.
10918
109192008-06-21 Miles Bader <miles@gnu.org>
10920
10921 * Makefile.in (../lisp/loaddefs.el): Build autoloads in the lisp
10922 build dir, not the lisp source dir.
10923
109242008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
10925
10926 * Makefile.in (emacs${EXEEXT}): Link the new emacs to bootstrap-emacs.
10927 (bootstrapclean): Remove.
10928 (.el.elc): New rule.
10929 (PRECOMP): New var.
10930 (../lisp/subdirs.el): Remove.
10931 (bootstrap-emacs${EXEEXT}): Remove subdirs.el and charpro.el dependency.
10932 (witness-emacs): New target.
10933 (mostlyclean): Remove witness-emacs as well.
10934 (../lisp/loaddefs.el, ${lisp} ${SOME_MACHINE_LISP}):
10935 Add witness-emacs dependency.
10936
109372008-06-20 Chong Yidong <cyd@stupidchicken.com>
10938
10939 * font.c (Ffont_face_attributes): Omit key-attribute pairs not
10940 defined by the font.
10941
109422008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
10943
10944 * Makefile.in (emacs${EXEEXT}): Depend on the machine-specific files.
10945 (bootstrap-clean): New target that keeps TAGS around.
10946 (../lisp/subdirs.el, ../lisp/loaddefs.el): New targets.
10947 (bootstrap-emacs${EXEEXT}): Depend on subdirs.el.
10948
109492008-06-20 Jason Rumney <jasonr@gnu.org>
10950
10951 * w32fns.c, w32term.c, w32term.h, w32gui.h [OLD_FONT]:
10952 Remove obsolete font code.
10953
10954 * w32font.c (font_matches_spec): Use csb bitfield from font signature
10955 to determine language support.
10956
109572008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
10958
10959 * sysdep.c (cfsetspeed): New fun extracted from the code.
10960 (cfmakeraw): Move before first use.
10961
109622008-06-20 Angelo Graziosi <angelo.graziosi@alice.it> (tiny change)
10963
10964 * sysdep.c (cfmakeraw): Provide fallback implementation.
10965 (serial_configure): Provide fallback implementation of cfsetspeed.
10966
109672008-06-20 Kenichi Handa <handa@m17n.org>
10968
10969 * xftfont.c (xftfont_open): Add FOUNDRY, SPACING, DPI, SCALABLE to
10970 the pattern.
10971
10972 * fontset.c (fontset_from_font): Copy font_spec before changing
10973 the elements.
10974
10975 * xfns.c (x_default_font_parameter): Try "monospace-12" too.
10976
109772008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
10978
10979 * w32fns.c, xfns.c (x_default_font_parameter): Only set `font-param'
10980 for explicit `font' parameters.
10981
10982 * frame.c (x_set_font): Remove unexplained call to fix inf-recursion.
10983
109842008-06-19 Kenichi Handa <handa@m17n.org>
10985
10986 * frame.c: Include <ctype.h>.
10987 (x_set_font_backend): Allow spacing characters in the X resource
10988 for FontBackend.
10989
109902008-06-19 Stefan Monnier <monnier@iro.umontreal.ca>
10991
10992 * w32fns.c, xfns.c (Qfont_param): New var.
10993 (syms_of_w32fns): Initialize it.
10994 (x_default_font_parameter): Record explicit `font' into
10995 `font-parameter'.
10996
109972008-06-18 Kenichi Handa <handa@m17n.org>
10998
10999 * font.c (font_parse_xlfd): Fix previous change.
11000 (font_parse_fcname): Don't use :fc-unknown-spec.
11001 (FRAME_X_DISPLAY_INFO): Be sure to have at least 1 pixel height.
11002 (Fcopy_font_spec): Preserve the order of elements in FONT_EXTRA.
11003 (font_add_log): Prepend the driver name to the resulting fonts.
11004
11005 * ftfont.c (ftfont_pattern_entity): New arg extra. Caller changed.
11006 (ftfont_spec_pattern): Don't check QCfc_unknown_spec and QCname.
11007 (ftfont_list) [FC_FONTFORMAT]: Include FC_FONTFORMAT in objset.
11008
11009 * xftfont.c (QChinting , QCautohint, QChintstyle, QCrgba)
11010 (QCembolden): New variables.
11011 (syms_of_xftfont): DEFSYM them.
11012 (xftfont_open): Call XftFontMatch. Don't trust the result of
11013 XftTextExtents8 if the pixel_size is less than 5.
11014
110152008-06-18 Andreas Schwab <schwab@suse.de>
11016
11017 * font.c (Ffont_face_attributes): Only define if HAVE_WINDOW_SYSTEM.
11018 (syms_of_font): Only defsubr if HAVE_WINDOW_SYSTEM.
11019
110202008-06-18 Jason Rumney <jasonr@gnu.org>
11021
11022 * w32font.c (w32font_list, w32font_match): Add logging.
11023
11024 * w32uniscribe.c (uniscribe_list, uniscribe_match): Add logging.
11025
110262008-06-17 Chong Yidong <cyd@stupidchicken.com>
11027
11028 * font.c (font_parse_fcname): Store divider characters for
11029 unknown-spec list. For known key symbols, intern using correct
11030 symbol name.
11031
110322008-06-17 Kenichi Handa <handa@m17n.org>
11033
11034 * xfaces.c (realize_default_face): If the frame is not on window
11035 system, set the fontset of face to nil.
11036
110372008-06-17 Naohiro Aota <nao.aota@gmail.com> (tiny change)
11038
11039 * fontset.c (fontset_pattern_regexp): Escape some reg-expr characters.
11040
110412008-06-16 Juanma Barranquero <lekktu@gmail.com>
11042
11043 * dispextern.h (lookup_non_ascii_face, split_font_name_into_vector)
11044 (build_font_name_from_vector): Delete externs.
11045
11046 * xfaces.c (struct font_name): Don't declare.
11047
110482008-06-16 Stefan Monnier <monnier@iro.umontreal.ca>
11049
11050 * font.c (font_unparse_gtkname): Use EQ to compare Lisp_Objects.
11051
110522008-06-16 Chong Yidong <cyd@stupidchicken.com>
11053
11054 * font.c (font_parse_fcname): Fix handling of unknown-spec string.
11055
110562008-06-16 Juanma Barranquero <lekktu@gmail.com>
11057
11058 * font.c (Ffont_spec): Fix usage in docstring.
11059 (Ffont_face_attributes): Doc fix.
11060
110612008-06-16 Andreas Schwab <schwab@suse.de>
11062
11063 * font.c (Ffont_face_attributes): Fix definition.
11064
110652008-06-16 Jason Rumney <jasonr@gnu.org>
11066
11067 * font.h (font_style_symbolic_from_value): Remove.
11068
11069 * font.c (font_style_symbolic_from_value): Remove.
11070 (font_style_symbolic): Revert to pre 2008-06-13 version.
11071
11072 * w32font.c (w32_to_fc_weight): New function.
11073 (w32font_full_name, logfont_to_fcname): Use it.
11074
110752008-06-16 Kenichi Handa <handa@m17n.org>
11076
11077 * font.c (font_check_object): Delete it.
11078 (font_clear_cache): Check if a font-object is alive.
11079 (font_open_entity): Likewise. Set FONT_OBJLST_INDEX of a
11080 font-object to nil.
11081 (font_close_object): Don't check FONT_CLOSE_OBJECT.
11082 (font_at): Don't call font_check_object.
11083 (Ffont_get): Return a symbol for :weight, :slant, and :width.
11084
110852008-06-16 Katsumi Yamaoka <yamaoka@jpl.org>
11086
11087 * puresize.h (BASE_PURESIZE): Increase to 1230000.
11088
110892008-06-16 Chong Yidong <cyd@stupidchicken.com>
11090
11091 * font.c (font_parse_fcname): Correctly parse KEY=VAL values.
11092
110932008-06-15 Chong Yidong <cyd@stupidchicken.com>
11094
11095 * font.c (font_parse_fcname): Only one decimal point.
11096 (font_unparse_fcname): Handle data in family and foundry indices
11097 as symbols, not strings.
11098 (font_unparse_gtkname, Ffont_face_attributes): New functions.
11099
11100 * xfns.c (Fx_select_font): Give GTK font dialog the default font name.
11101
11102 * font.h (font_unparse_gtkname): Add prototype.
11103
111042008-06-15 Naohiro Aota <nao.aota@gmail.com> (tiny change)
11105
11106 * fontset.c (fontset_pattern_regexp): Escape `+' characters in pattern.
11107
111082008-06-15 Andreas Schwab <schwab@suse.de>
11109
11110 * font.c (font_update_drivers): Fix crash when no drivers match.
11111
111122008-06-15 Stefan Monnier <monnier@iro.umontreal.ca>
11113
11114 * xfns.c (Fx_create_frame): internal-border-width default to 0 for Gtk.
11115 * gtkutil.c (xg_create_frame_widgets): Don't set internal_border_width.
11116
111172008-06-14 Stefan Monnier <monnier@iro.umontreal.ca>
11118
11119 * xdisp.c (syms_of_xdisp): Default underline-minimum-offset to 1.
11120
111212008-06-13 Stefan Monnier <monnier@iro.umontreal.ca>
11122
11123 * process.c (Fserial_process_configure, Fprocess_send_eof):
11124 Use EQ to compare Lisp_Objects.
11125
111262008-06-13 Jason Rumney <jasonr@gnu.org>
11127
11128 * w32fns.c (Fw32_select_font): Remove old font API function.
11129
11130 * w32font.c (logfont_to_fcname): New function.
11131 (Fx_select_font): New font dialog function compatible with
11132 GTK/fontconfig version.
11133
11134 * font.c (font_style_symbolic_from_value): New function.
11135 (font_style_symbolic): Use it.
11136
11137 * font.h (font_style_symbolic_from_value): Declare new function.
11138
111392008-06-13 Juanma Barranquero <lekktu@gmail.com>
11140
11141 * font.c (syms_of_font) <font-weight-table, font-slant-table>:
11142 <font-width-table>: Fix typos in docstrings.
11143
111442008-06-13 Daniel Engeler <engeler@gmail.com>
11145
11146 These changes add serial port access.
11147 * process.c: Add HAVE_SERIAL.
11148 (Fdelete_process, Fprocess_status, Fset_process_buffer)
11149 (Fset_process_filter, Fset_process_sentinel, Fprocess_contact)
11150 (list_processes_1, select_wrapper, Fstop_process)
11151 (Fcontinue_process, Fprocess_send_eof, kill_buffer_processes)
11152 (status_notify): Modify to handle serial processes.
11153 [HAVE_SERIAL] (Fserial_process_configure)
11154 [HAVE_SERIAL] (make_serial_process_unwind, Fmake_serial_process):
11155 New functions.
11156 * process.h (struct Lisp_Process): Add `type'.
11157 * sysdep.c [HAVE_TERMIOS] (serial_open, serial_configure):
11158 New functions.
11159 * w32.c (_sys_read_ahead, sys_read, sys_write): Modify to handle
11160 serial ports.
b71ac3dd 11161 (serial_open, serial_configure): New functions.
aac0c6e3
MR
11162 * w32.h: Add FILE_SERIAL.
11163 (struct _child_process): Add ovl_read, ovl_write.
11164
111652008-06-13 Kenichi Handa <handa@m17n.org>
11166
11167 * dispextern.h (enum lface_attribute_index): New member
11168 LFACE_FOUNDRY_INDEX.
11169
11170 * font.c (font_score): Delete arg alternate_families. Check only
11171 weight, slant, width, and size. Ignore the difference of alias
11172 style symbols.
11173 (font_sort_entites): Adjust for the above change. Reflect the
11174 order of font-driver to scores.
11175 (font_list_entities): Don't check alternate_familes here.
11176 (font_clear_prop): Handle foundry.
11177 (font_update_lface): Don't parse "foundry-family" form here.
11178 Handle FONT_FOUNDRY_INDEX.
11179 (font_find_for_lface): Likewise. Handle alternate families here.
11180 If registry is nil, try iso8859-1 and ascii-0.
11181 (font_open_for_lface): Pay attention to size in ENTITY.
11182 (font_open_by_name): Simplify by calling font_load_for_lface.
11183 (free_font_driver_list): Delete it.
11184 (font_update_drivers): Preserve the order of backends.
11185 (syms_of_font): Setting of sort_shift_bits adjusted for the change
11186 of font_score and font_sort_entites.
11187 (font_update_sort_order): Likewise.
11188
11189 * xfaces.c (LFACE_FOUNDRY): New macro.
11190 (check_lface_attrs): Check foundry.
11191 (set_lface_from_font): Don't parse "FOUNDRY-FAMILY" form.
11192 (merge_face_vectors): Check foundry.
11193 (merge_face_ref): Likewise.
11194 (Finternal_set_lisp_face_attribute): Likewise.
11195 (x_update_menu_appearance): Likewise.
11196 (Finternal_get_lisp_face_attribute): Likewise.
11197 (lface_hash): Likewise.
11198 (lface_same_font_attributes_p): Likewise.
11199 (x_supports_face_attributes_p): Likewise.
11200 (tty_supports_face_attributes_p): Likewise.
11201 (Finternal_set_alternative_font_family_alist): Intern strings.
11202 (Finternal_set_alternative_font_registry_alist): Downcase strings.
11203 (realize_default_face): Set LFACE_FOUNDRY (lface).
11204
11205 * xfns.c (Fx_create_frame, x_create_tip_frame): Register X
11206 font-driver at first.
11207
11208 * ftfont.c (ftfont_font_format) [! FC_FONTFORMAT]: Declare "int len;".
11209
112102008-06-12 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
11211
11212 * lread.c (Fload): Use xfree, not free on saved_doc_string.
11213
112142008-06-12 Jim Meyering <meyering@redhat.com>
11215
11216 Make unexec_free handle NULL the same way free does.
11217 * unexmacosx.c (unexec_free): Ignore a NULL argument.
11218
112192008-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
11220
11221 * character.h (CHAR_TO_BYTE_SAFE): New macro.
11222 * character.c (Fmultibyte_char_to_unibyte): Obey the docstring.
11223 * regex.c (RE_CHAR_TO_UNIBYTE): Use the new macro.
11224 (WEAK_ALIAS): Simplify.
11225 * syntax.c (skip_chars): Don't mark non-byte chars in the fastmap
11226 when searching a unibyte buffer.
11227
112282008-06-12 Chong Yidong <cyd@stupidchicken.com>
11229
11230 * xfns.c (Fx_select_font): Rename from x-font-dialog.
11231
112322008-06-12 Juanma Barranquero <lekktu@gmail.com>
11233
11234 * w32font.c: Include ctype.h.
11235
112362008-06-11 Jason Rumney <jasonr@gnu.org>
11237
11238 * w32font.c (w32font_encode_char): Detect missing glyphs that are
11239 misreported as space.
11240 (add_font_entity_to_list): Support unicode-bmp and unicode-sip
11241 as aliases for registry iso10646-1.
11242
112432008-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
11244
11245 * buffer.c (clone_per_buffer_values): Skip `name'.
11246
112472008-06-11 Chong Yidong <cyd@stupidchicken.com>
11248
11249 * font.c (font_parse_fcname): Fix last change; accept decimal
11250 points in font size.
11251
112522008-06-10 Jason Rumney <jasonr@gnu.org>
11253
11254 * w32uniscribe.c (add_opentype_font_name_to_list):
11255 Skip non unicode fonts.
11256
112572008-06-10 Chong Yidong <cyd@stupidchicken.com>
11258
11259 * xfns.c (Fx_font_dialog): New function.
11260
11261 * gtkutil.c (xg_dialog_response_cb): Rename from
11262 xg_file_response_callback.
11263 (pop_down_dialog): Rename from pop_down_file_dialog.
11264 (xg_get_file_name): Callers changed.
11265 (xg_get_font_name): New function.
11266
11267 * gtkutil.h (xg_get_font_name): Insert prototype.
11268
112692008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
11270
11271 * xdisp.c (underline_minimum_offset): Rename from xterm.c's
11272 x_underline_minimum_display_offset.
11273 (syms_of_xdisp): Declare it here rather than in xterm.c.
11274 * dispextern.h (underline_minimum_offset): Declare it.
11275 * w32term.c (x_draw_glyph_string): Use it.
11276 * xterm.c (x_underline_minimum_display_offset): Move to xdisp.c.
11277 (syms_of_xterm): Don't declare it any more.
11278 (x_draw_glyph_string): Adjust to the new name.
11279
8719abec 112802008-06-10 David De La Harpe Golden <david@harpegolden.net>
aac0c6e3
MR
11281
11282 * xterm.c (x_underline_minimum_display_offset): New var.
11283 (x_draw_glyph_string): Use it.
11284 (syms_of_xterm): Declare it.
11285
112862008-06-10 Chong Yidong <cyd@stupidchicken.com>
11287
11288 * font.c (font_parse_fcname): Accept GTK-style font names too.
11289
112902008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
11291
11292 * dired.c (file_name_completion): Don't return t if the match is exact
11293 but with different capitalization.
11294 * minibuf.c (Ftry_completion): Simplify.
11295
11296 * window.c (Vwindow_point_insertion_type): New var.
11297 (set_window_buffer): Use it.
11298 (syms_of_window): Init and export it to Lisp.
11299
113002008-06-10 Kenichi Handa <handa@m17n.org>
11301
11302 * font.h (font_intern_prop): Prototype adjusted.
11303
11304 * font.c (font_intern_prop): New arg force_symbol.
11305 (font_parse_xlfd, font_parse_fcname, font_parse_family_registry):
11306 Adjust for the change of font_intern_prop.
11307
11308 * ftfont.c (ftfont_pattern_entity):
11309 * w32font.c (add_font_name_to_list, w32_enumfont_pattern_entity)
11310 (w32_registry):
11311 * w32uniscribe.c (add_opentype_font_name_to_list): Adjust for
11312 the change of font_intern_prop.
11313
113142008-06-09 Juanma Barranquero <lekktu@gmail.com>
11315
11316 * w32menu.c (digest_single_submenu): Declare extern.
11317
113182008-06-09 Jason Rumney <jasonr@gnu.org>
11319
11320 * w32term.c (x_make_frame_visible): Use alternate restore flags.
11321
11322 * w32menu.c (Fx_popup_menu): Unwind protect while building menu.
11323 (parse_single_submenu): Remove.
11324 (digest_single_submenu): Remove.
11325 (syms_of_w32menu): Don't initialise variables that have moved
11326 to menu.c.
11327 (set_frame_menubar): Sync with version in xmenu.c.
11328 (w32_menu_show): Sync with xmenu_show in xmenu.c.
11329
11330 * menu.c (single_keymap_panes, push_menu_pane, push_menu_item):
11331 Make static again.
11332
113332008-06-09 Jason Rumney <jasonr@gnu.org>
11334
11335 Changes to w32 files related to the move of common menu code
11336 to menu.c on 2008-06-08 by Chong Yidong.
11337
11338 * menu.c [HAVE_NTGUI]: Include w32term.h, move widget related
11339 defs to w32gui.h.
11340 (single_keymap_panes, push_menu_item, push_menu_pane):
11341 Make globally visible.
11342
11343 * w32menu.c (enum button_type, widget_value, local_heap, local_alloc)
11344 (local_free, malloc_widget_value, free_widget_value)
11345 (MENU_ITEMS_ITEM_NAME, MENU_ITEMS_ITEM_ENABLE, MENU_ITEMS_ITEM_VALUE)
11346 (MENU_ITEMS_ITEM_EQUIV_KEY, MENU_ITEMS_ITEM_DEFINITION)
11347 (MENU_ITEMS_ITEM_TYPE, MENU_ITEMS_ITEM_SELECTED, MENU_ITEMS_ITEM_HELP)
11348 (MENU_ITEMS_ITEM_LENGTH, enum menu_item_idx): Remove defs.
11349 (menu_items, menu_items_allocated, menu_items_used)
11350 (menu_items_n_panes, menu_items_submenu_depth): Remove global vars.
11351 (init_menu_items, finish_menu_items, discard_menu_items)
11352 (grow_menu_items, push_submenu_start, push_submenu_end)
11353 (push_left_right_boundary, push_menu_pane, push_menu_item)
11354 (keymap_panes, single_keymap_panes, list_of_panes, list_of_items)
11355 (free_menubar_widget_tree_value, parse_single_submenu)
11356 (update_submenu_strings): Remove functions.
11357 (xmalloc_widget_value): Remove and declare extern.
11358
11359 * makefile.w32-in ($(SRC)/menu.$(O)): New target.
11360 (OBJ1): Build it.
11361
11362 * w32gui.h (widget_value, XtPointer, Boolean, enum button_type)
11363 (local_heap, local_alloc, local_free, malloc_widget_value)
11364 (free_widget_value): Define here.
11365
113662008-06-09 Kenichi Handa <handa@m17n.org>
11367
11368 * font.h (Qascii_0): Extern it.
11369
11370 * font.c (Qascii_0): New variable.
11371 (syms_of_font): DEFSYM it.
11372 (font_open_by_name): If the registry "iso8859-1" fails, try also
11373 "ascii-0".
11374
11375 * ftfont.c (ftfont_spec_pattern): Accept the registry `ascii-0'.
11376
113772008-06-08 Kenichi Handa <handa@m17n.org>
11378
11379 * .gdbinit (xfont): New command.
11380
113812008-06-08 Andreas Schwab <schwab@suse.de>
11382
11383 * menu.c [HAVE_X_WINDOWS]: Include "xterm.h".
11384 * Makefile.in (menu.o): Update dependencies.
11385
11386 * Makefile.in (obj): Always add menu.o.
11387 * emacs.c (main): Always call syms_of_menu.
11388 * keyboard.h: Remove extra #ifdef HAVE_X_WINDOW.
11389
113902008-06-08 Chong Yidong <cyd@stupidchicken.com>
11391
11392 * Makefile.in: Compile menu.c.
11393
11394 * lisp.h: Declare syms_of_menu.
11395
11396 * emacs.c (main): Call syms_of_menu.
11397
11398 * keyboard.h: Relocate platform-independent menu definitions from
11399 xmenu.c.
11400
11401 * menu.c: New file. Relocate platform-independent menu
11402 definitions from xmenu.c. Suggested by Adrian Robert.
11403
11404 * xmenu.c: Remove platform-independent menu definitions.
11405 (menu_items menu_items_inuse, menu_items_allocated)
11406 (menu_items_used, menu_items_n_panes)
11407 (menu_items_submenu_depth): Move to keyboard.h.
11408 (init_menu_items, finish_menu_items, unuse_menu_items)
11409 (discard_menu_items, restore_menu_items, save_menu_items)
11410 (grow_menu_items, push_submenu_start, push_submenu_end)
11411 (push_left_right_boundary, push_menu_pane, push_menu_item)
11412 (keymap_panes, single_keymap_panes, single_menu_item)
11413 (list_of_panes, list_of_items, find_and_call_menu_selection)
11414 (xmalloc_widget_value, free_menubar_widget_value_tree)
11415 (parse_single_submenu, digest_single_submenu)
11416 (update_submenu_strings): Move to menu.c.
11417
114182008-06-07 Stefan Monnier <monnier@iro.umontreal.ca>
11419
11420 * dispnew.c (Flast_nonminibuf_frame): Handle the NULL case.
11421
114222008-06-06 Miles Bader <miles@gnu.org>
11423
11424 * xdisp.c (x_produce_glyphs): Calculate tab width based on current
11425 face, not frame default.
11426
114272008-06-05 Martin Rudalics <rudalics@gmx.at>
11428
11429 * window.c (pop_up_windows, pop_up_frames)
11430 (display_buffer_reuse_frames, Vpop_up_frame_function)
11431 (Vdisplay_buffer_function, Veven_window_heights)
11432 (Vspecial_display_buffer_names, Vspecial_display_regexps)
11433 (Vspecial_display_function, Vsame_window_buffer_names)
11434 (Vsame_window_regexps, split_height_threshold)
11435 (Vsplit_window_preferred_function): Move those vars to window.el.
11436 (display_buffer_1, Fspecial_display_p, Fsame_window_p)
11437 (Fdisplay_buffer): Move those functions to window.el.
11438 (syms_of_window): Remove corresponding declarations.
11439 (display_buffer): New function.
11440 (temp_output_buffer_show, Fother_window_for_scrolling): Use it.
11441 * dispnew.c (Flast_nonminibuf_frame): New function.
11442 * buffer.c (Fpop_to_buffer): Move to window.el.
11443
114442008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
11445
11446 * data.c (set_internal): Fix up call to let_shadows_buffer_binding_p.
11447
114482008-06-05 Kenichi Handa <handa@m17n.org>
11449
11450 * coding.c (detect_coding): Fix previous change.
11451 (detect_coding_system): Likewise.
11452
114532008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
11454
11455 * character.h (MAKE_CHAR_MULTIBYTE): Check the arg is a (uni)byte.
11456
11457 * keymap.c (Vminibuffer_local_filename_must_match_map):
11458 Rename from Vminibuffer_local_must_match_filename_map.
11459 (syms_of_keymap):
11460 * minibuf.c (Fcompleting_read): Adjust accordingly.
11461 * commands.h: Rename declaration as well.
11462
114632008-06-05 Kenichi Handa <handa@m17n.org>
11464
11465 * font.c (Ffont_spec): Don't use font_parse_family_registry for
11466 family name.
11467 (Ffont_put): Likewise.
11468
11469 * fontset.c (fontset_find_font): Call font_open_for_lface with the
11470 current font-spec.
11471
11472 * xfont.c (xfont_list): Don't set registry to iso8859-1 even if it
11473 is unspecified.
11474
11475 * xfaces.c (realize_x_face): If the font-related face attributes
11476 are the same as those of default face, realize a new fontset from
11477 default->fontset.
11478 (Fx_family_fonts): Use font_parse_family_registry instead of Ffont_put.
11479
114802008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
11481
11482 * xdisp.c (move_it_in_display_line_to): Improve the type of its args.
11483 (move_it_in_display_line): New wrapper.
11484
11485 * window.c (window_scroll_pixel_based_preserve_x)
11486 (window_scroll_preserve_hpos, window_scroll_preserve_vpos): New vars.
11487 (window_scroll_pixel_based, window_scroll_line_based):
11488 Use them to preserve column positions.
11489 (syms_of_window): Initialize them.
11490
11491 * indent.c (Fvertical_motion): Extend first arg to allow passing an
11492 (HPOS . VPOS) pair.
11493
11494 * dispextern.h (move_it_in_display_line): Declare.
11495
114962008-06-05 Juanma Barranquero <lekktu@gmail.com>
11497
11498 * window.c (Fwindow_parameter): Return VALUE, not (PARAMETER . VALUE).
11499 (Fwindow_parameters): Return copy of parameter alist. Doc fix.
11500 (Fset_window_parameter): Return VALUE, not parameter alist. Doc fix.
11501
115022008-06-04 Juanma Barranquero <lekktu@gmail.com>
11503
11504 * window.c (Fset_window_parameter): Doc fix.
11505 (Fwindow_parameters, Fwindow_parameter): Remove redundant check.
11506
115072008-06-04 Joakim Verona <joakim@verona.se>
11508
11509 * window.h (struct window): Add new member window_parameters.
11510
11511 * window.c (Fwindow_parameters, Fwindow_parameter)
11512 (Fset_window_parameter): New defuns.
11513 (syms_of_window): Defsubr the new defuns.
11514 (make_window): Initialize window_parameters to nil.
11515
115162008-06-04 John Paul Wallington <jpw@pobox.com>
11517
11518 * eval.c (Fdefmacro): Doc fix.
11519
115202008-06-04 Kenichi Handa <handa@m17n.org>
11521
11522 * coding.c (detect_coding): Fix handling of coding->head_ascii.
11523 Be sure to call setup_coding_system when we find a proper coding system.
11524 (detect_coding_system): Fix handling of coding->head_ascii.
11525
115262008-06-03 Andreas Schwab <schwab@suse.de>
11527
11528 * font.c (font_prop_validate_spacing): Fix last change.
11529
115302008-06-03 Kenichi Handa <handa@m17n.org>
11531
11532 * font.c (font_prop_validate_spacing): Handle uppercase symbols.
11533 (font_parse_fcname): Fix handling of unknown key.
11534
11535 * xfont.c (xfont_list): Try an alias.
11536
11537 * charset.c (char_charset): Return NULL if the arg charset_list is
11538 specified and C doesn't belong to any of them.
11539
115402008-06-02 Chip Coldwell <coldwell@redhat.com>
11541
11542 * font.c (font_pixel_size): Don't take cdr of an integer.
11543
115442008-06-02 Jim Meyering <meyering@redhat.com>
11545
11546 Make "xfree (NULL)" a no-op; remove useless if-before-xfree.
11547 * alloc.c (xfree): Return right away for a NULL arg.
11548 * lread.c (nosuffix): Remove now-useless if-before-xfree tests.
11549 * gtkutil.c (xg_gtk_scroll_destroy): Likewise.
11550 * mac.c (create_apple_event_from_event_ref): Likewise.
11551 (create_apple_event_from_drag_ref, cfstring_create_normalized):
11552 Likewise.
11553 * doprnt.c (doprnt1): Likewise.
11554 * frame.c (frame): Likewise.
11555 * keyboard.c (wipe_kboard): Likewise.
11556 * macterm.c (x_free_frame_resources, xlfdpat_destroy, XFreePixmap)
11557 (init_font_name_table, mac_unload_font, x_delete_display): Likewise.
11558 * term.c (tty_default_color_capabilities, maybe_fatal)
11559 (delete_tty): Likewise.
11560 * w16select.c (string): Likewise.
11561 * w32.c (w32_get_resource, SET_ENV_BUF_SIZE): Likewise.
11562 * w32bdf.c (w32_free_bdf_font): Likewise.
11563 * w32fns.c (w32_unload_font): Likewise.
11564 * w32font.c (w32font_close): Likewise.
11565 * window.c (size_window): Likewise.
11566 * xselect.c (receive_incremental_selection): Likewise.
11567 * xterm.c (x_free_frame_resources, x_delete_display): Likewise.
11568 * mactoolbox.c (create_apple_event_from_drag_ref): Likewise.
11569 * w32.c (stat): Likewise.
11570
11571 Remove useless if-before-free tests.
11572 * editfns.c (Fset_time_zone_rule): Likewise.
11573 * lread.c (nosuffix): Likewise.
11574 * ralloc.c (get_bloc): Likewise.
11575 * regex.c (reg_free): Likewise.
11576 * xftfont.c (xftfont_open, xftfont_close): Likewise.
11577 * xrdb.c (get_user_app, get_environ_db, x_load_resources): Likewise.
11578 * xsmfns.c (smc_save_yourself_CB): Likewise.
11579
115802008-06-02 Kenichi Handa <handa@m17n.org>
11581
11582 * font.c (font_find_for_lface): Handle float font size.
11583 (font_open_for_lface): Likewise.
11584
11585 * xfaces.c (x_supports_face_attributes_p): Check face->font before
11586 comparing the properties.
11587
115882008-06-01 Jason Rumney <jasonr@gnu.org>
11589
11590 * w32font.c (w32_enumfont_pattern_entity): Use requested registry.
11591 Treat iso10646-1 and Windows DEFAULT_CHARSET specially.
11592 Duplicate iso8859-1 fonts as iso10646-1 if no registry specified.
11593 Don't add empty script list.
11594 (w32_registry): Only map DEFAULT_CHARSET to iso10646-1 here.
11595
115962008-06-01 Dan Nicolaescu <dann@ics.uci.edu>
11597
11598 * Makefile.in (dot, dotdot): Remove, update users.
11599 ".." has been used elsewhere in the file for a long time.
11600 (LIBXT_STATIC): Remove conditional based on unused variable.
11601
116022008-06-01 Miles Bader <miles@gnu.org>
11603
11604 * xfaces.c (Vface_remapping_alist): New variable.
11605 (syms_of_xfaces): Initialize it.
11606 (enum named_merge_point_kind): New type.
11607 (struct named_merge_point): Add `named_merge_point_kind' field.
11608 (push_named_merge_point): Make cycle detection respect different
11609 named-merge-point kinds.
11610 (lface_from_face_name_no_resolve): Rename from `lface_from_face_name'.
11611 Remove face-name alias resolution.
11612 (lface_from_face_name): New definition using
11613 `lface_from_face_name_no_resolve'.
11614 (get_lface_attributes_no_remap): Rename from `get_lface_attributes'.
11615 Call lface_from_face_name_no_resolve instead of lface_from_face_name.
11616 (get_lface_attributes): New definition that layers face-remapping on
11617 top of get_lface_attributes_no_remap. New arg `named_merge_points'.
11618 (lookup_basic_face): New function.
11619 (lookup_derived_face): Pass new last arg to `get_lface_attributes'.
11620 (realize_named_face): Call `get_lface_attributes_no_remap' instead of
11621 `get_lface_attributes'.
11622 (face_at_buffer_position): Use `lookup_basic_face' to lookup
11623 DEFAULT_FACE_ID if necessary. When optimizing the default-face case,
11624 return default_face's face-id instead of the constant DEFAULT_FACE_ID.
11625
11626 * xdisp.c (init_iterator): Pass base_face_id through
11627 `lookup_basic_face' when we actually use it as a face-id.
11628 (handle_single_display_prop): Use `lookup_basic_face' to lookup
11629 DEFAULT_FACE_ID.
11630
11631 * fontset.c (Finternal_char_font): Use `lookup_basic_face' to
11632 lookup the initial face-id.
11633
11634 * dispextern.h (lookup_basic_face, Vface_remapping_alist): New decls.
11635
116362008-06-01 Juanma Barranquero <lekktu@gmail.com>
11637
11638 * textprop.c (syms_of_textprop) <text-property-default-nonsticky>:
11639 (Fremove_text_properties): Fix typos in docstrings.
11640
116412008-05-31 Kenichi Handa <handa@m17n.org>
11642
11643 * font.c (font_list_entities): Fix the car part of data to be
11644 stored in the cache.
11645
11646 * ftfont.c (ftfont_font_format): Don't use strcasestr.
11647
116482008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
11649
11650 * chartab.c (Foptimize_char_table, optimize_sub_char_table):
11651 Add a `test' argument so another predicate than `equal' can be used.
11652 (map_sub_char_table): Use `eq' rather than `equal' to merge ranges.
11653 (map_char_table): Remove unused vars `c' and `i'.
11654 * lisp.h (Foptimize_char_table): Adjust declaration.
11655 * charset.c (Fclear_charset_maps): Adjust call to Foptimize_char_table.
11656
116572008-05-30 Kenichi Handa <handa@m17n.org>
11658
11659 * font.c (Ffont_info): Define only if HAVE_WINDOW_SYSTEM is defined.
11660 (syms_of_font): Defsubr Sfont_info only if HAVE_WINDOW_SYSTEM is
11661 defined.
11662
116632008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
11664
11665 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
11666 (Fmake_variable_frame_local): Disallow mixing buffer-local and
11667 frame-local settings for the same variable.
11668
116692008-05-30 Kenichi Handa <handa@m17n.org>
11670
11671 * fontset.c (Ffont_info): Move to font.c.
11672 (syms_of_fontset): Delete defsubr of Sfont_info.
11673
11674 * font.c (font_style_to_value, font_score): Delete casting of the
11675 args to xstcasecmp.
11676 (register_font_driver): Increment num_font_drivers only when
11677 registering the driver globally.
11678 (Ffont_info): Move from fontset.c. Handle a font object too.
11679 (syms_of_font): Defsubr Sfont_info.
11680
116812008-05-29 Kenichi Handa <handa@m17n.org>
11682
11683 * coding.h (enum define_coding_utf8_arg_index): New enum.
11684 (enum coding_attr_index): Change coding_attr_utf_16_bom to
11685 coding_attr_utf_bom.
11686 (enum utf_bom_type): Rename from utf_16_bom_type.
11687 (struct utf_16_spec): Adjust for the above change.
11688 (struct coding_system): Add utf_8_bom in `spec' union.
11689
11690 * coding.c (CODING_UTF_8_BOM): New macro.
11691 (enum coding_category): Delete coding_category_utf_8, add
11692 coding_category_utf_8_auto, coding_category_utf_8_nosig, and
11693 coding_category_utf_8_sig.
11694 (CATEGORY_MASK_UTF_8): Delete it.
11695 (CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG)
11696 (CATEGORY_MASK_UTF_8_SIG): New macros.
11697 (CATEGORY_MASK_ANY): Delete CATEGORY_MASK_UTF_8, add
11698 CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG, and
11699 CATEGORY_MASK_UTF_8_SIG.
11700 (CATEGORY_MASK_UTF_8): New macro.
11701 (UTF_BOM, UTF_8_BOM_1, UTF_8_BOM_2, UTF_8_BOM_3): New macros.
11702 (detect_coding_utf_8): Check BOM.
11703 (decode_coding_utf_8, encode_coding_utf_8): Handle BOM.
11704 (decode_coding_utf_16): Adjust for the change of enum utf_bom_type.
11705 (encode_coding_utf_16): Likewise.
11706 (setup_coding_system): Likewise. Set CODING_UTF_8_BOM (coding).
11707 (detect_coding, detect_coding_system): Handle utf-8-auto.
11708 (Fdefine_coding_system_internal): Handle `bom' property for utf-8.
11709 (syms_of_coding): Fix setting up of Vcoding_category_table.
11710
117112008-05-29 Stefan Monnier <monnier@iro.umontreal.ca>
11712
11713 * process.c (Faccept_process_output): If `millisec' is non-nil,
11714 `seconds' default to 0.
11715 (wait_reading_process_output): Also return non-nil if we read output
11716 from a non-running process.
11717
117182008-05-29 Jason Rumney <jasonr@gnu.org>
11719
11720 * w32font.c (w32font_open_internal): Prefer truetype fonts unless
11721 `raster' specified.
11722 (add_font_entity_to_list): Allow non-opentype truetype fonts back
11723 in the uniscribe backend, but disallow any font that has no
11724 unicode subrange support.
11725
117262008-05-29 Juanma Barranquero <lekktu@gmail.com>
11727
11728 * xfaces.c (Fx_list_fonts, Finternal_copy_lisp_face):
11729 Fix typos in docstrings.
11730
117312008-05-29 Kenichi Handa <handa@m17n.org>
11732
11733 * xfaces.c (Fx_list_fonts): Make it return a list of font names.
11734 (Fx_family_fonts): Set frame correctly.
11735
117362008-05-28 Jason Rumney <jasonr@gnu.org>
11737
11738 * w32term.c (x_draw_glyph_string): Use clipmask if specified.
11739
117402008-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
11741
11742 * fileio.c (Fwrite_region): Delay the defaulting to beg&z to after
11743 calling build_annotations.
11744
117452008-05-28 Juanma Barranquero <lekktu@gmail.com>
11746
11747 * coding.c (Fdecode_coding_region, Fencode_coding_region)
11748 (Fencode_coding_string):
11749 (syms_of_coding) <coding-system-for-read, coding-system-for-write>:
11750 <latin-extra-code-table>: Fix typos in docstrings.
11751 (syms_of_coding) <coding-system-alist>: Doc fix.
11752 (syms_of_coding) <translation-table-for-input>: Reflow docstring.
11753
117542008-05-28 Kenichi Handa <handa@m17n.org>
11755
11756 * fontset.c (Ffont_info): Don't call font_close_object.
11757
11758 * font.c (font_parse_family_registry): Use Ffont_put to validate
11759 foundry and family.
11760 (font_delete_unmatched): Don't check spacing.
11761 (font_list_entities): Add spacing to the spec to list fonts.
11762
11763 * ftfont.c (ftfont_spec_pattern): Don't set FC_SPACING to pattern.
11764 (ftfont_list): Check spacing here. Don't include FC_CHARSET in objset.
11765
11766 * coding.c (encode_coding_raw_text): Fix previous change.
11767 (encode_coding_object): When the dst_object is a buffer and is
11768 different from src_object, move gap to PT.
11769
117702008-05-27 Chong Yidong <cyd@stupidchicken.com>
11771
11772 * xterm.c (x_draw_glyph_string): If a clipmask is specified, use it.
11773
117742008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
11775
11776 * coding.c (encode_coding_raw_text): Set coding->produced_char for
11777 all branches. Compute it differently.
11778
11779 * xdisp.c [!HAVE_WINDOW_SYSTEM]: Include font.h for --without-x.
11780
117812008-05-27 Juanma Barranquero <lekktu@gmail.com>
11782
11783 * w32font.c (compute_metrics): Rewrite an "else { if () ... else ... }"
11784 into "else if () ... else ...".
11785
117862008-05-27 Jason Rumney <jasonr@gnu.org>
11787
11788 * w32font.c (w32font_open_internal): Determine if glyph indices
11789 are likely to work here.
11790
117912008-05-27 Chong Yidong <cyd@stupidchicken.com>
11792
11793 * xdisp.c (draw_glyphs): If mouse-highlighting is on, attempt to
11794 draw overlap glyphs with appropriate highlighting.
11795
117962008-05-27 Kenichi Handa <handa@m17n.org>
11797
11798 * xfont.c (xfont_open): Fix calculation of font->average_width.
11799
118002008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
11801
11802 * casefiddle.c (casify_object): Try to guess better whether the
11803 argument is a byte or a char.
11804
118052008-05-26 Andreas Schwab <schwab@suse.de>
11806
11807 * xselect.c (x_reply_selection_request): Properly handle format == 32.
11808 Always send multiples of format size.
11809
11810 * xterm.c (x_set_frame_alpha): Fix type mismatch.
11811
118122008-05-26 Jason Rumney <jasonr@gnu.org>
11813
11814 * w32font.c (w32font_text_extents): Zero whole metrics struct first.
11815 (compute_metrics): Don't set failure if we just cleared the cache.
11816 (w32_weight_table): Remove unused variable.
11817 (w32_enumfont_pattern_entity): Use FONT_SPACING_CHARCELL for
11818 backwards compatibility.
11819
118202008-05-25 Kenichi Handa <handa@m17n.org>
11821
11822 * w32term.c (x_draw_glyph_string):
11823 * xterm.c (x_draw_glyph_string): Fix calculation of underline position.
11824
11825 * xfaces.c: Delete unused function prototypes.
11826 (xstrlwr, font_frame): Delete them.
11827 (clear_face_cache): Delete unused variable.
11828
11829 * xftfont.c (xftfont_open): Delete unused variable.
11830 If underline_thickness is not 1, adjust underline_position.
11831
11832 * ftxfont.c (ftxfont_open): Delete unused variable.
11833
11834 * fontset.c (face_for_char): Optimize for the case of no charset
11835 property.
11836
11837 * font.c (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE)
11838 (check_gstring, check_otf_features, otf_list, otf_tag_symbol)
11839 (otf_open, font_otf_capability, generate_otf_features)
11840 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
11841 Comment out by surrounding "#if 0" and "#endif" for the moment.
11842 (Ffont_drive_otf, Ffont_otf_alternates): Likewise.
11843 (syms_of_font): Codes for accessing above commented out.
11844
118452008-05-24 Eli Zaretskii <eliz@gnu.org>
11846
11847 * w32proc.c: Include dispextern.h.
11848
11849 * w32.c: Include dispextern.h.
11850
118512008-05-23 Juanma Barranquero <lekktu@gmail.com>
11852
11853 * charset.c (Fencode_char, Fsplit_char): Doc fixes.
11854 (Fget_unused_iso_final_char, Fdecode_char, Fiso_charset):
11855 Fix typos in docstrings.
11856
118572008-05-23 Jason Rumney <jasonr@gnu.org>
11858
11859 * xsmfns.c: Remove includes that are already included by config.h.
11860
118612008-05-23 Kenichi Handa <handa@m17n.org>
11862
11863 * charset.c (Qemacs, charset_emacs): New variables.
11864 (char_charset): Fix for non-Unicode characters.
11865 (syms_of_charset): Define charset_emacs.
11866
11867 * w32term.c (x_draw_glyph_string): Be sure to update
11868 s->underline_thickness and s->underline_position. Be sure to draw
11869 underline within the current line area.
11870
11871 * xterm.c (x_draw_glyph_string): Be sure to update
11872 s->underline_thickness and s->underline_position. Be sure to draw
11873 underline within the current line area.
11874
11875 * fontset.c: Delete unused variables and add casting for char *
11876 throughout the file.
11877 (fontset_font): Try the fallback fonts of the current fontset
11878 before consulting the default fontset.
11879
11880 * ftfont.c (ftfont_spec_pattern): Free charset if necessary.
11881
11882 * xfont.c (xfont_list_pattern): Free names returned from XListFonts.
11883
118842008-05-22 Jason Rumney <jasonr@gnu.org>
11885
11886 * font.c: Don't include strings.h.
11887
11888 * dispextern.h, xfaces.c (xstrcasecmp): Rename from xstricmp.
11889
11890 * dosfns.c, fileio.c, font.c, fontset.c, image.c, macfns.c:
11891 * macterm.c, process.c, w32.c, w32fns.c, w32proc.c, xfaces.c:
11892 * xfns.c, xfont.c: All callers of stricmp and strcasecmp changed
11893 to call xstrcasecmp.
11894
11895 * xfont.c (xfont_list_pattern, compare_font_names): Use xstrcasecmp.
11896
11897 * fontset.c (fs_query_fontset): Use xstrcasecmp.
11898
11899 * font.c (font_style_to_value, font_score): Use xstrcasecmp.
11900
11901 * dosfns.c (msdos_stdcolor_idx): Use xstrcasecmp.
11902
119032008-05-22 Kenichi Handa <handa@m17n.org>
11904
11905 * puresize.h (BASE_PURESIZE): Increase to 1220000.
11906
11907 * font.c (font_prop_validate_style): Adjust for the format
11908 change of font_style_table.
11909
11910 * w32font.c (w32font_open_internal): Call Ffont_xlfd_name with
11911 two args.
11912
11913 * xfaces.c (x_update_menu_appearance): Call Ffont_xlfd_name with
11914 two args.
11915
119162008-05-22 Stefan Monnier <monnier@iro.umontreal.ca>
11917
11918 * minibuf.c (keys_of_minibuf): Delete.
11919 * lisp.h (keys_of_minibuf): Delete.
11920 * emacs.c (main): Don't call keys_of_minibuf.
11921
119222008-05-22 Kenichi Handa <handa@m17n.org>
11923
11924 * ftfont.c (ftfont_resolve_generic_family): Rename from
11925 ftfont_list_generic_family. Return a single family for each
11926 generic family.
11927 (ftfont_spec_pattern): Add FC_FAMILY to pattern.
11928 (ftfont_list): Adjust for the change of ftfont_resolve_generic_family.
11929 Call font_add_log.
11930 (ftfont_match): Call font_add_log.
11931
11932 * font.h (Ffont_xlfd_name): EXFUN adjusted.
11933 (FONT_DEBUG): Define it.
11934 (font_add_log): Extern it.
11935 (font_assert): Rename from xassert.
11936
11937 * xfont.c (xfont_get_pcm): Change xassert to font_assert.
11938 (xfont_list_family): Call font_add_log.
11939 (xfont_match): Likewise.
11940 (memq_no_quit): Delete.
11941
11942 * fontset.c (fontset_from_font, Ffontset_info): Add the 2nd arg in
11943 call of Ffont_xlfd_name.
11944
11945 * xfaces.c (struct table_entry, slant_table, weight_table)
11946 (swidth_table): Move to font.c.
11947
11948 * font.c: Checking of FONT_DEBUG is moved to font.h. All calls of
11949 xassert are changed to font_assert. Delete many unused variables.
11950 (Vfont_weight_table, Vfont_slant_table, Vfont_width_table):
11951 New variables.
11952 (struct table_entry): Move from xfaces.c and modified.
11953 (weight_table, slant_table, width_table): Move from xfaces.c and
11954 contents adjusted for the change of struct table_entry.
11955 (font_style_to_value, font_style_symbolic): Adjust for the
11956 format change of font_style_table.
11957 (font_parse_family_registry): Don't overwrite existing foundry and
11958 family of font_spec.
11959 (font_score): Fix calculation of diff for sizes.
11960 (font_sort_entites): Call font_add_log.
11961 (font_delete_unmatched): Return a newly created list.
11962 (font_list_entities): Fix previous change. Call font_add_log.
11963 (font_matching_entity, font_open_entity, font_close_entity):
11964 Call font_add_log.
11965 (Ffont_xlfd_name): New arg FOLD-WILDCARDS.
11966 (Finternal_set_font_style_table): Delete.
11967 (BUILD_STYLE_TABLE): New macro.
11968 (build_style_table): New function.
11969 (Vfont_log, font_log_env_checked): New variables.
11970 (font_add_log): New function.
11971 (syms_of_font): Delete defsubr Sinternal_set_font_style_table.
11972 Declare Lisp variables "font-weight-table", "font-slant-table",
11973 "font-width-table", and "font-log". Initialize font_style_table.
11974
119752008-05-21 Dan Nicolaescu <dann@ics.uci.edu>
11976
11977 * xterm.c (x_set_frame_alpha): Move declarations before statements.
11978
119792008-05-21 Seiji Zenitani <zenitani@mac.com>
4e2af782 11980 Ryo Yoshitake <ryo@shiftmode.net>
aac0c6e3
MR
11981
11982 * frame.c (Qalpha): Add a new frame parameter `alpha'.
11983 (Vframe_alpha_lower_limit): New variable.
11984 (x_set_alpha): New function.
11985
11986 * frame.h (Qalpha, Vframe_parameter_lower_limit): Export them.
11987
11988 * xfns.c (x-create-frame, Qalpha):
11989 Initialize the frame parameter `alpha'.
11990 * xterm.c (OPAQUE, OPACITY): New.
11991 (x_set_frame_alpha): New function.
11992 (frame_highlight, frame_unhighlight): Call x_set_frame_alpha.
11993
11994 * macfns.c (mac_frame_parm_handlers): A null handler for x_set_alpha.
11995 * w32fns.c (w32_frame_parm_handlers): Likewise.
11996
119972008-05-20 Jason Rumney <jasonr@gnu.org>
11998
11999 * w32font.c (add_font_entity_to_list): Don't add non-opentype
12000 truetype fonts to opentype list.
12001
120022008-05-20 Juanma Barranquero <lekktu@gmail.com>
12003
12004 * fontset.c (Ffontset_info): Doc fix.
12005 (syms_of_fontset) <font-encoding-charset-alist, use-default-ascent>:
12006 <ignore-relative-composition>: Fix typos in docstrings.
12007
12008 * font.c (syms-of-font) <font-encoding-alist>:
12009 (Ffontp, Ffont_make_gstring): Fix typos in docstrings.
12010 (Flist_fonts, Ffont_family_list, Ffont_fill_gstring, Fquery_font)
12011 (Ffont_otf_alternates): Doc fixes.
12012
120132008-05-20 Kenichi Handa <handa@m17n.org>
12014
12015 * Makefile.in (FONTSRC): Delete it. Change all $(FONTSRC) to
12016 font.h through out the file.
12017 (FONT_DRIVERS): Rename from FONTOBJ.
12018 (obj): Change $(FONTOBJ) to $(FONT_DRIVERS). Add font.o.
12019 (SOME_MACHINE_OBJECTS): Change $(FONTOBJ) to $(FONT_DRIVERS).
12020
12021 * emacs.c (main): Call syms_of_font unconditionally.
12022
12023 * font.h (find_font_encoding): Extern it.
12024
12025 * font.c (Vfont_encoding_alist, find_font_encoding): Move from
12026 fontset.c.
194d44e7 12027 (font_pixel_size) [! HAVE_WINDOW_SYSTEM]: Return 1.
aac0c6e3
MR
12028 (font_open_entity): Update FRAME_X_DISPLAY_INFO (f)->n_fonts,
12029 FRAME_SMALLEST_CHAR_WIDTH (f), and FRAME_SMALLEST_FONT_HEIGHT (f)
12030 only when HAVE_WINDOW_SYSTEM is defined.
12031 (font_close_object): Update FRAME_X_DISPLAY_INFO (f)->n_fonts only
12032 when HAVE_WINDOW_SYSTEM is defined.
12033
12034 * fontset.c (Vfont_encoding_alist, find_font_encoding): Move to font.c.
12035 (syms_of_fontset): Move declaration of font-encoding-alist to font.c.
12036
12037 * xfaces.c: Include font.h unconditionally.
12038 (merge_face_ref, merge_face_vectors)
12039 (Finternal_set_lisp_face_attribute): Cancel the previous change.
12040
120412008-05-20 Stefan Monnier <monnier@iro.umontreal.ca>
12042
12043 * xdisp.c (select_frame_for_redisplay): Adjust for last change to
12044 indirect_variable.
12045 * eval.c (lisp_indirect_variable): New fun.
12046 (Fuser_variable_p): Use it.
12047
120482008-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
12049
12050 * lisp.h (indirect_variable):
12051 * data.c (indirect_variable, let_shadows_buffer_binding_p):
12052 Use Lisp_Symbol pointers rather than Lisp_Object.
12053 Adjust callers.
12054 * buffer.c (buffer_slot_type_mismatch): Use wrong-type-argument.
12055 To this end, change calling-convention.
12056
12057 * minibuf.c (Finternal_complete_buffer): Only strip out hidden buffers
12058 if some non-hidden buffers are selected by string&pred.
12059
120602008-05-19 Chong Yidong <cyd@stupidchicken.com>
12061
12062 * process.c (wait_reading_process_output): Always check status
12063 when in batch mode.
12064
120652008-05-19 Kenichi Handa <handa@m17n.org>
12066
12067 * font.c (font_list_entities): Fix handling of cache.
12068 (font_matching_entity): Likewise.
12069
12070 * ftfont.c (cs_iso8859_1): Delete.
12071 (ft_face_cache): New variable.
12072 (struct ftfont_info): New member fc_charset_idx.
12073 (ftfont_build_basic_charsets): Delete.
12074 (fc_charset_table): New variable.
12075 (ftfont_pattern_entity): New arg fc_charset_idx. Store (FILENAME
12076 . FC_CHARSET_IDX) as :font-entity property in the font entity.
12077 Callers changed.
12078 (ftfont_lookup_cache, ftfont_get_charset): New functions.
12079 (ftfont_spec_pattern): New argument fc_charset_idx.
12080 Check registry more rigidly. Change callers.
12081 (ftfont_open, ftfont_close, ftfont_has_char): Adjust for the
12082 change of :font-entity property of the font.
12083
12084 * xftfont.c (xftfont_open): Adjust for the change of :font-entity
12085 property of the font.
12086
120872008-05-18 Juanma Barranquero <lekktu@gmail.com>
12088
12089 * coding.c (Fcoding_system_p): Rename argument to match docstring.
12090 (Funencodable_char_position, Fcheck_coding_systems_region)
12091 (Fdecode_coding_string, Fencode_coding_string): Fix typos in docstrings.
12092 (Fdetect_coding_region, Fdetect_coding_string, Fencode_coding_region)
12093 (Ffind_operation_coding_system, Fset_coding_system_priority)
12094 (Fcoding_system_eol_type): Doc fixes.
12095
120962008-05-17 Glenn Morris <rgm@gnu.org>
12097
12098 * sysdep.c (child_setup_tty): Handle systems with NLDLY, without FFDLY.
12099
121002008-05-16 Eli Zaretskii <eliz@gnu.org>
12101
12102 * dired.c (Ffile_attributes): Shut up GCC warnings about st_uid
12103 and st_gid.
12104
12105 * frame.c (Fdelete_frame): Don't call font_update_drivers if
12106 HAVE_WINDOW_SYSTEM is not defined.
12107
12108 * xfaces.c (merge_face_ref, merge_face_vectors)
12109 (Finternal_set_lisp_face_attribute): Use FONT_*_INDEX only when
12110 HAVE_WINDOW_SYSTEM is defined.
12111 (Fface_font): Fix non-HAVE_WINDOW_SYSTEM case.
12112
121132008-05-16 Stefan Monnier <monnier@iro.umontreal.ca>
12114
12115 * keyboard.c (parse_menu_item): Do not cache key shortcut any more.
12116
121172008-05-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12118
12119 * macterm.c (x_draw_relief_rect): Remove unused variable `dpy'.
12120
121212008-05-15 Kenichi Handa <handa@m17n.org>
12122
12123 * font.c (font_find_for_lface): Reflect LFACE_FONT in the font
12124 preference.
12125
121262008-05-15 Glenn Morris <rgm@gnu.org>
12127
12128 * emacs.c (USAGE1, standard_args): Remove -disable-font-backend.
12129
121302008-05-15 Chong Yidong <cyd@stupidchicken.com>
12131
12132 * fns.c (init_fns): Don't initialize weak_hash_tables here.
12133 (init_weak_hash_tables): New fun. Initialize weak_hash_tables.
12134
12135 * alloc.c (init_alloc_once): Call init_weak_hash_tables.
12136
121372008-05-15 Kenichi Handa <handa@m17n.org>
12138
12139 * ftfont.c (ftfont_list): Downcase family name to check generic
12140 families.
12141
12142 * xfaces.c (Finternal_set_lisp_face_attribute): Be sure to make a
12143 font-spec for QCfont value.
12144
12145 * fontset.c (Fnew_fontset): Call font_unparse_xlfd with 256-byte
12146 buffer. Check the return value of it.
12147
121482008-05-14 Jason Rumney <jasonr@gnu.org>
12149
12150 * w32term.c (w32_get_glyph_overhangs): Remove.
12151 (w32_redisplay_interface): Use x_get_glyph_overhangs instead.
12152
121532008-05-14 Kenichi Handa <handa@m17n.org>
12154
12155 * font.c (font_prop_validate): Make nil a valid value.
12156 (font_clear_cache): Check if the cached vector of entities is nil
12157 or not.
12158
121592008-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12160
12161 * emacs.c (main_thread): Conditionalize on
12162 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
12163 (main) [FORWARD_SIGNAL_TO_MAIN_THREAD]: Initialize it.
12164
12165 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): New define.
12166 (main_thread, SIGNAL_THREAD_CHECK): Conditionalize on
12167 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
12168
121692008-05-14 Kenichi Handa <handa@m17n.org>
12170
12171 * coding.c (detect_coding_iso_2022): Ignore a coding category that
12172 has no corresponding coding system.
12173
121742008-05-14 Jason Rumney <jasonr@gnu.org>
12175
12176 * font.h (struct font) [WINDOWSNT]: Remove codepage member.
12177
12178 * w32font.h (w32font_open_internal): Update declaration.
12179
12180 * w32font.c (w32font_open_internal): Change last argument from
12181 w32font_info struct to font object. Fill in font object from
12182 font_entity. Get Outline metrics if possible. Use them to
12183 calculate underline position and thickness. Use xlfd name as name
12184 property. Don't set codepage.
12185 (w32font_open): Pass font_object to w32font_open_internal. Don't
12186 update dpyinfo->smallest_font_height and dpyinfo->smallest_char_width.
12187 (w32font_draw): Use s->font.
12188 (clear_cached_metrics): Don't clear non-existent blocks.
12189
12190 * w32term.c (w32_compute_glyph_string_overhangs): Don't compute if
12191 font was not found.
12192 (x_draw_glyph_string): Use underline position and thickness from font.
12193
12194 * w32uniscribe.c (uniscribe_open): Pass font_object to
12195 w32font_open_internal.
12196
121972008-05-14 Kenichi Handa <handa@m17n.org>
12198
12199 These changes are to delete all legacy font-handling codes, and
12200 make Emacs use only font-backends.
12201
12202 * Makefile.in: Delete USE_FONT_BACKEND conditionals.
12203 (frame.o, image.o, print.o): Depend on $(FONTSRC).
12204
12205 * makefile.w32-in (WIN32OBJ): Add w32reg.$(O), remove w32bdf.$(O).
12206
12207 * charset.h (Vcharset_non_preferred_head)
12208 (Vcurrent_iso639_language): Extern them.
12209
12210 * charset.c (Vcharset_non_preferred_head): New variable.
12211 (Vcurrent_iso639_language): New variable.
12212 (syms_of_charset): Declare it as a Lisp variable.
12213 (char_charset): Don't check non preferred charsets. As a last
12214 resort, return charset_unicode.
12215 (Fset_charset_priority): Update Vcharset_non_preferred_head.
12216
12217 * composite.c: Throughout the file, delete all USE_FONT_BACKEND
12218 conditionals. Don't check enable_font_backend. Delete all codes
12219 used only when USE_FONT_BACKEND is not defined.
12220
12221 * dispextern.h (struct glyph_string): Change type of `font' to
12222 `struct font *'.
12223 (struct glyph_string): New member underline_position and
12224 underline_thickness.
12225 (enum lface_attribute_index): Remove LFACE_AVGWIDTH_INDEX.
12226 (struct face): Change type of `font' to `struct font *'. Remove
12227 members `font_name', `font_info_id'.
12228 (per_char_metric, encode_char): Delete externs.
12229 (calc_pixel_width_or_height): Adjust the prototype.
12230
12231 * emacs.c (enable_font_backend): Delete extern.
12232 (main): Don't set enable_font_backend. Don't check the command
12233 line argument "-disable-font-backend".
12234
12235 * font.h (Qfont_spec, Qfont_entity, Qfont_object): Extern them.
12236 (enum font_property_index): New members FONT_DPI_INDEX,
12237 FONT_SPACING_INDEX, FONT_AVGWIDTH_INDEX, FONT_NAME_INDEX,
12238 FONT_FULLNAME_INDEX, FONT_FILE_INDEX, FONT_FORMAT_INDEX,
12239 FONT_OBJECT_MAX. Delete FONT_FRAME_INDEX.
12240 (FONT_WEIGHT_NUMERIC, FONT_SLANT_NUMERIC, FONT_WIDTH_NUMERIC)
12241 (FONT_WEIGHT_SYMBOLIC, FONT_SLANT_SYMBOLIC, FONT_WIDTH_SYMBOLIC)
12242 (FONT_WEIGHT_FOR_FACE, FONT_SLANT_FOR_FACE, FONT_WIDTH_FOR_FACE)
12243 (FONT_WEIGHT_NAME_NUMERIC, FONT_SLANT_NAME_NUMERIC)
12244 (FONT_WIDTH_NAME_NUMERIC, FONT_SET_STYLE): New macros.
12245 (struct font_spec, struct font_entity): New structs.
12246 (FONT_ENCODING_NOT_DECIDED): Moved from fontset.h.
12247 (struct font): Many members from old "struct font_info" moved to
12248 here. Members font and entity deleted.
12249 (FONT_SPEC_P, FONT_ENTITY_P, FONT_OBJECT_P, FONTP): Modified for
12250 the new font-related objects.
12251 (CHECK_FONT_SPEC, CHECK_FONT_ENTITY, CHECK_FONT_OBJECT)
12252 (CHECK_FONT_GET_OBJECT): Likewise.
12253 (XFONT_SPEC, XFONT_ENTITY, XFONT_OBJECT, XSETFONT): New macros.
12254 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved from font.h.
12255 (struct font_driver): New members case_sensitive anc check. Type
12256 of the member list and open changed.
12257 (enable_font_backend, font_symbolic_weight, font_symbolic_slant)
12258 (font_symbolic_width, font_find_object, font_get_spec)
12259 (font_set_lface_from_name): Delete extern.
12260 (Fcopy_font_spec, Fmerge_font_spec, Ffont_family_list): New EXFUNs.
12261
12262 * font.c: Include <strings.h>.
12263 (enable_font_backend): Delete it.
12264 (Qfont_spec, Qfont_entity, Qfont_object): New variables.
12265 (CHECK_VALIDATE_FONT_SPEC): Delete it.
12266 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved to font.h.
12267 (null_string): Delete it.
12268 (null_vector): Make it static.
12269 (font_family_alist): Delete it.
12270 (Qnormal): Extern it.
12271 (QCextra, QClanguage): Delete it.
12272 (QClang, QCavgwidth, QCfont_entity, QCfc_unknown_spec): New variables.
12273 (font_make_spec, font_make_entity, font_make_object)
12274 (font_intern_prop): Renamed from intern_downcase. Don't downcase
12275 the string. Callers changed.
12276 (font_pixel_size): Adjusted for the format change of font-related
12277 objects.
12278 (prop_name_to_numeric, prop_numeric_to_name): Delete them.
12279 (font_style_to_value, font_style_symbolic): New function.
12280 (build_font_family_alist): Delete it.
12281 (font_registry_charsets): Use Fassoc_string instead of
12282 assq_no_quit.
12283 (font_prop_validate_symbol): Don't return null_string.
12284 (font_prop_validate_style): Adjusted for the change of
12285 style-related values in a font vector.
12286 (font_property_table): Delete entries for QClanguage and
12287 QCantialias, add entries for QCavgwidth.
12288 (get_font_prop_index): Delete the 2nd argument FROM.
12289 (font_prop_validate): Arguments changed.
12290 (font_put_extra): Adjusted for the change of font-related objects.
12291 (font_expand_wildcards, font_parse_xlfd, font_unparse_xlfd)
12292 (font_parse_fcname, font_unparse_fcname)
12293 (font_prepare_composition): Likewise.
12294 (font_parse_family_registry): Renamed from font_merge_old_spec.
12295 (otf_open): Delete the 1st arg entity.
12296 (font_otf_capability): Adjusted for the above change.
12297 (font_score): New arg alternate_families. Adjusted for the change
12298 of font-related objects.
12299 (font_sort_entites): New arg best_only.
12300 (font_symbolic_weight, font_symbolic_slant, font_symbolic_width):
12301 Delete them.
12302 (font_match_p): Check alternate families.
12303 (font_find_object): Delete it.
12304 (font_check_object): New function.
12305 (font_clear_cache): Adjusted for the change of font-related objects.
12306 (font_delete_unmatched): New arg.
12307 (font_list_entities): Call font_driver->list with a spec that
12308 doesn't specify style-related properties.
12309 (font_matching_entity): Arguments changed. Caller changed.
12310 (font_open_entity): Adjusted for the change of font-related objects.
12311 (font_close_object, font_has_char, font_encode_char)
12312 (font_get_name, font_get_spec): Likewise.
12313 (font_spec_from_name, font_clear_prop, font_update_lface):
12314 New functions.
12315 (font_find_for_lface, font_open_for_lface, font_load_for_lface)
12316 (font_prepare_for_face, font_done_for_face, font_open_by_name)
12317 (font_at): Adjusted for the change of font-related objects.
12318 (font_range): New function.
12319 (Ffontp, Ffont_spec, Ffont_get, Ffont_put, Flist_fonts)
12320 (Ffont_xlfd_name): Adjusted for the change of font-related objects.
12321 (Fcopy_font_spec, Fmerge_font_spec): New function.
12322 (Ffont_family_list): Renamed from list-families.
12323 (Finternal_set_font_style_table): Arguments changed.
12324 (Ffont_fill_gstring, Ffont_shape_text, Fopen_font)
12325 (Ffont_drive_otf, Fquery_font, Ffont_match_p): Adjusted for the
12326 change of font-related objects.
12327 (syms_of_font): Delete "ifdef USE_FONT_BACKEND". DEFSYM new symbols.
12328
12329 * fontset.h (struct font_info): Delete it. Most members go to
12330 struct font.
12331 (FONT_ENCODING_NOT_DECIDED): Moved to font.h.
12332 (enum FONT_SPEC_INDEX): Delete it.
12333 (font_info, list_fonts_func, load_font_func, query_font_func)
12334 (set_frame_fontset_func, find_ccl_program_func)
12335 (get_font_repertory_func, new_fontset_from_font_name): Delete
12336 externs.
12337 (fontset_from_font_name): Extern it.
12338 (FS_LOAD_FONT, FONT_INFO_ID, FONT_INFO_FROM_ID)
12339 (FONT_INFO_FROM_FACE): Deleted.
12340 (face_for_font): Adjust prototype.
12341
12342 * fontset.c: Throughout the file, delete all USE_FONT_BACKEND
12343 conditionals. Don't check enable_font_backend. Delete all codes
12344 used only when USE_FONT_BACKEND is not defined.
12345 (get_font_info_func, list_font_func, load_font_func)
12346 (query_font_func, set_frame_fontset_func, find_ccl_program_func)
12347 (get_font_repertory_func): Delete them.
12348 (FONTSET_SPEC, FONT_DEF_NEW, FONT_DEF_SPEC, FONT_DEF_ENCODING)
12349 (FONT_DEF_REPERTORY, RFONT_DEF_FACE, RFONT_DEF_SET_FACE)
12350 (RFONT_DEF_FONT_DEF, RFONT_DEF_SPEC, RFONT_DEF_REPERTORY)
12351 (RFONT_DEF_OBJECT, RFONT_DEF_SET_OBJECT, RFONT_DEF_SCORE)
12352 (RFONT_DEF_SET_SCORE, RFONT_DEF_NEW): New macros.
12353 (fontset_compare_rfontdef): New function.
12354 (reorder_font_vector): Remove the argument CHARSET-ID. Sort
12355 rfont-defs by qsort. Adjusted for the change of font-group vector.
12356 (load_font_get_repertory): Deleted.
12357 (fontset_find_font): Use new macros to ref/set elements of
12358 font-def and rfont-def.
12359 (fontset_font): Fix the timing of remembering that no font for C.
12360 (free_face_fontset): Do nothing if the face has no fontset.
12361 (face_suitable_for_char_p): Use new macros to ref/set elements of
12362 rfont-def.
12363 (face_for_char): Likewise. Call face_for_char with font_object.
12364 (fs_load_font): Delete. Delete #pragma surrounding it.
12365 (fs_query_fontset): Use strcasecmp instead of strcmp.
12366 (generate_ascii_font_name): Adjusted for the format change of
12367 font-spec.
12368 (Fset_fontset_font): Likewise. Use new macros to set elements of
12369 font-def.
12370 (Fnew_fontset): Use font_unparse_xlfd to generate
12371 FONTSET_ASCII (fontset).
12372 (new_fontset_from_font_name): Deleted.
12373 (fontset_from_font): Renamed from new_fontset_from_font. Check if
12374 a fontset is already created for the font. FIx updating of
12375 Vfontset_alias_alist.
12376 (fontset_ascii_font): Deleted.
12377 (Ffont_info): Adjusted for the format change of font-spec.
12378 (Finternal_char_font): Likewise.
12379 (Ffontset_info): Likewise.
12380 (syms_of_fontset): Don't check load_font_func.
12381
12382 * fns.c (internal_equal): Handle PREV_FONT.
12383
12384 * frame.h: Delete USE_FONT_BACKEND conditional.
12385
12386 * frame.c: Throughout the file, delete all USE_FONT_BACKEND
12387 conditionals. Don't check enable_font_backend. Delete all codes
12388 used only when USE_FONT_BACKEND is not defined.
12389 (x_set_font): Call x_new_font, not x_new_fontset2.
12390 (x_set_font_backend): Use FRAME_FONT macro to check if a font is
12391 already set for the frame.
12392
12393 * ftfont.c (ftfont_pattern_entity): Argument FRAME removed. Make
12394 a font-entity by font_make_entity. Use font_intern_prop instead
12395 of intern_downcase. Use FONT_SET_STYLE to set a style-related
12396 font property. If a font is scalable, set avgwidth property to 0.
12397 Set font-entity property by font_put_extra.
12398 (ftfont_list_generic_family): Argument SPEC and REGISTRY removed.
12399 (ffont_driver): Adjusted for the change of struct font_driver.
12400 (ftfont_spec_pattern): New function.
12401 (ftfont_list): Return a list, not vector.
12402 (ftfont_match): Use ftfont_spec_pattern to get a pattern.
12403 (ftfont_list_family): Don't downcase names.
12404 (ftfont_free_entity): Deleted.
12405 (ftfont_open): Return a font-object. Adjusted for the change of
12406 struct font. Get underline_thickness and underline_position from
12407 font property. Don't update dpyinfo->smallest_font_height and
12408 dpyinfo->smallest_char_width.
12409 (ftfont_close): Don't free `struct font'.
12410 (ftfont_has_char): Adjusted for the format change of font-entity.
12411 (ftfont_encode_char, ftfont_text_extents): Likewise.
12412
12413 * ftxfont.c (ftxfont_list): Return a list, not vector.
12414 (ftxfont_open): Return a font-object. Adjusted for the change of
12415 struct font. Get underline_thickness and underline_position from
12416 font property. Don't update dpyinfo->smallest_font_height and
12417 dpyinfo->smallest_char_width.
12418 (ftxfont_close): Don't decrease FRAME_X_DISPLAY_INFO (f)->n_fonts.
12419 (ftxfont_draw): Adjusted for the change of struct font.
12420
12421 * image.c (image_ascent): Don't include "charset.h". Include
12422 "character.h" and "font.h".
12423
12424 * lisp.h (enum pvec_type): New member PREV_FONT.
12425 (Fassoc_string): EXFUN it.
12426
12427 * print.c: Include font.h.
12428 (print_object): Handle font-related objects.
12429
12430 * xdisp.c: Throughout the file, delete all USE_FONT_BACKEND
12431 conditionals. Don't check enable_font_backend. Delete all codes
12432 used only when USE_FONT_BACKEND is not defined.
12433 (handle_auto_composed_prop): Do nothing if it->f is not on a
12434 window system. Check how many following characters can be
12435 displayed by the same font.
12436 (calc_pixel_width_or_height): Type of the 4th arg is changed to
12437 'struct font *'.
12438 (get_char_face_and_encoding): Assign the whole encoding task to
12439 the `encode-char' method of a font driver.
12440 (fill_composite_glyph_string): Adjusted for the change of `struct
12441 face' and `struct glyph_string'.
12442 (fill_glyph_string): Likewise.
12443 (get_per_char_metric): Arguments changed.
12444 (x_get_glyph_overhangs): Adjusted for the change of `struct face'
12445 and `struct glyph_string'.
12446 (produce_stretch_glyph, calc_line_height_property)
12447 (x_produce_glyphs): Likewise.
12448
12449 * xfaces.c: Throughout the file, delete all USE_FONT_BACKEND
12450 conditionals. Don't check enable_font_backend. Delete all codes
12451 used only when USE_FONT_BACKEND is not defined. Use
12452 FONT_XXX_NAME_NUMERIC instead of face_numeric_xxx.
12453 (QCfoundry, QCadstyle, QCregistry, QCspacing, QCsize, QCavgwidth)
12454 (Qp): Extern them.
12455 (clear_font_table, load_face_font, xlfd_lookup_field_contents):
12456 Deleted.
12457 (struct font_name): Deleted.
12458 (xlfd_numeric_value, xlfd_symbolic_value): Deleted.
12459 (compare_fonts_by_sort_order): New function.
12460 (xlfd_numeric_slant, xlfd_symbolic_slant, xlfd_numeric_weight)
12461 (xlfd_symbolic_weight, xlfd_numeric_swidth, xlfd_symbolic_swidth):
12462 Deleted.
12463 (Fx_family_fonts): Use font_list_entities, and sort fonts by
12464 compare_fonts_by_sort_order.
12465 (Fx_font_family_list): Call Ffont_family_list.
12466 (face_numeric_value, face_numeric_weight, face_numeric_slant)
12467 (face_numeric_swidth, face_symbolic_value, face_symbolic_weight)
12468 (face_symbolic_slant, face_symbolic_swidth)
12469 (split_font_name_into_vector, build_font_name_from_vector)
12470 (xlfd_fixed_p, xlfd_point_size, pixel_point_size)
12471 (font_rescale_ratio, split_font_name, build_font_name)
12472 (free_font_names, sort_fonts, x_face_list_fonts)
12473 (face_font_available_p, sorted_font_list, cmp_font_names)
12474 (font_list_1, concat_font_list, font_list, remove_duplicates):
12475 Deleted.
12476 (Fx_list_fonts): Use Ffont_list.
12477 (LFACE_AVGWIDTH): Deleted.
12478 (check_lface_attrs): Don't check LFACE_AVGWIDTH. Check LFACE_FONT
12479 by FONTP.
12480 (lface_fully_specified_p): Don't check LFACE_AVGWIDTH.
12481 (set_lface_from_font_name): Delete it.
12482 (set_lface_from_font): Renamed from
12483 set_lface_from_font_and_fontset. Caller changed. Don't set
12484 LFACE_AVGWIDTH. Use FONT_XXX_FOR_FACE to get a symbol suitable
12485 for face.
12486 (merge_face_vectors): Copy font-spec if necessary.
12487 Clear properties of the font-spec if necessary.
12488 (merge_face_ref): Clear properties of the font-spec if necessary.
12489 (Finternal_set_lisp_face_attribute): Likewise.
12490 (set_font_frame_param): Use font_load_for_lface to load a
12491 font-object, and call Fmodify_frame_parameters with it.
12492 (x_update_menu_appearance): Don't check LFACE_AVGWIDTH. Get XLFD
12493 font name by Ffont_xlfd_name.
12494 (Finternal_lisp_face_attribute_values): Don't check QCweight,
12495 QCslant, and QCwidth.
12496 (Fface_font): Get a font name from font->props[FONT_NAME_INDEX].
12497 (lface_same_font_attributes_p): Don't check LFACE_AVGWIDTH.
12498 Compare fonts by EQ.
12499 (lookup_non_ascii_face): Deleted.
12500 (face_for_font): The 2nd argument changed.
12501 (x_supports_face_attributes_p): Don't check LFACE_AVGWIDTH.
12502 Check atomic font properties by case insensitive.
12503 (realize_non_ascii_face): Set face->overstrike correctly.
12504 (realize_x_face): Likewise. Check if LFACE_FONT is a font_object.
12505 (dump_realized_face): Get font name from
12506 font->props[FONT_NAME_INDEX]. Don't print font_info_id.
12507
12508 * xfns.c: Throughout the file, delete all USE_FONT_BACKEND
12509 conditionals. Don't check enable_font_backend. Delete all codes
12510 used only when USE_FONT_BACKEND is not defined.
12511 (xic_create_xfontset): Original code deleted and renamed from
12512 xic_create_xfontset2. Use FRAME_FONT, not FRAME_FONT_OBJECT.
12513 (x_make_gc): Don't set GCFont in GCs.
12514 (Fx_create_frame) [USE_LUCID]: Set xlwmenu_default_font to a font
12515 opened by "fixed".
12516 (syms_of_xfns): Don't set get_font_info_func, load_font_func,
12517 find_ccl_program_func, query_font_func, set_frame_fontset_func,
12518 get_font_repertory_func.
12519
12520 * xfont.c: Include <stdlib.h> and "ccl.h".
12521 (struct xfont_info): New structure.
12522 (xfont_query_font): Deleted.
12523 (xfont_find_ccl_program): Renamed from x_find_ccl_program and
12524 moved from xterm.c.
12525 (xfont_driver): Adjusted for the change of struct font_driver.
12526 (compare_font_names): New function.
12527 (xfont_list_pattern): Sort font names case insensitively. Make
12528 font_entity by calling font_make_entity. Avoid auto-scaled fonts.
12529 (xfont_list): Return a list, not vector.
12530 (xfont_match): If the font doesn't have QCname property, generate
12531 a name from the other font properties.
12532 (xfont_open): Return a font-object. Adjusted for the change of
12533 struct font. Get underline_thickness and underline_position from
12534 font property. Don't update dpyinfo->smallest_font_height and
12535 dpyinfo->smallest_char_width.
12536 (xfont_close): Don't free struct font.
12537 (xfont_prepare_face): Adjusted for the change of struct font.
12538 (xfont_done_face): Deleted.
12539 (xfont_has_char): Adjusted for the change of struct font.
12540 (xfont_encode_char, xfont_draw): Likewise.
12541 (xfont_check): New function.
12542
12543 * xftfont.c (xftfont_list): Adjusted for the change of `list'
12544 callback function.
12545 (xftfont_match): Adjusted for the format change of font-entity.
12546 (xftfont_open): Adjusted for the format change of font-entity and
12547 font-object. Adjusted for the change of struct font. Return a
12548 font-object. Don't update dpyinfo->smallest_font_height and
12549 dpyinfo->smallest_char_width.
12550 (xftfont_close): Block input while calling XftFontClose.
12551 (xftfont_prepare_face): Don't block input while calling
12552 xftfont_get_colors. Adjusted for the change of struct font.
12553 (xftfont_shape): Return value of error case fixed.
12554
12555 * xrdb.c (x_load_resources): Don't setup a fontset resource.
12556
12557 * xterm.h: Throughout the file, delete all USE_FONT_BACKEND
12558 conditionals.
12559 (FONT_WIDTH): Return (f)->max_width.
12560 (struct x_display_info): Delete member `font'.
12561 (x_list_fonts, x_get_font_info, x_load_font, x_query_font)
12562 (x_find_ccl_program, x_get_font_repertory): Delete externs.
12563 (struct x_output): Change type of `font' to `struct font *'.
12564
12565 * xterm.c: Throughout the file, delete all USE_FONT_BACKEND
12566 conditionals. Don't check enable_font_backend. Delete all codes
12567 used only when USE_FONT_BACKEND is not defined. Don't include ccl.h.
12568 (x_per_char_metric, x_encode_char): Deleted.
12569 (x_set_cursor_gc, x_set_mouse_face_gc): Don't set GCFont.
12570 (x_compute_glyph_string_overhangs): Adjusted for the change of
12571 `struct face'.
12572 (x_draw_glyph_string_foreground)
12573 (x_draw_composite_glyph_string_foreground): Likewise.
12574 (x_draw_glyph_string): Likewise. Use font->underline_position and
12575 font->underline_thickness.
12576 (x_new_font): Renamed from x_new_fontset2.
12577 (x_new_fontset, x_get_font_info, x_list_fonts): Deleted.
12578 (x_check_font): Call `check' method of a font driver.
12579 (x_font_min_bounds, x_compute_min_glyph_bounds, x_load_font)
12580 (x_query_font, x_get_font_repertory): Deleted.
12581 (x_find_ccl_program): Renamed and moved to xfont.c.
12582 (x_redisplay_interface): Adjusted for the change of `struct
12583 redisplay_interface'.
12584
12585 * w32fns.c: Throughout the file, delete all USE_FONT_BACKEND
12586 conditionals. Don't check enable_font_backend. Delete all codes
12587 used only when USE_FONT_BACKEND is not defined. Surround non-used
12588 code by "#ifdef OLD_FONT" and "endif".
12589 (Fw32_select_font): Use FONT_COMPAT to get old font structure.
12590
12591 * w32font.h (struct w32font_info): New member.
12592 (FONT_COMPAT): New macro.
12593 (w32font_open_internal): Prototype adjusted.
12594
12595 * w32gui.h (XGCValues): Surround `XFontStruct *font' by "if
12596 OLD_FONT" and "endif".
12597
12598 * w32font.c: Throughout the file, delete all USE_FONT_BACKEND
12599 conditionals. Don't check enable_font_backend. Delete all codes
12600 used only when USE_FONT_BACKEND is not defined.
12601 (w32font_open): Return a font-object. Make a font-object by
12602 font_make_object. Adjusted for the change of struct w32font_info.
12603 (w32font_close): Don't free struct font. Adjusted for the change
12604 of struct w32font_info.
12605 (w32font_encode_char, w32font_text_extents, w32font_draw):
12606 Adjusted for the change of struct w32font_info.
12607 (w32font_draw): Likewise.
12608 (w32font_list_internal): Return a list, not vector.
12609 (w32font_open_internal): Change the 4th arg to font-object.
12610 Adjusted for the change of struct w32font_info and font-object format.
12611 (add_font_name_to_list): Don't downcase names.
12612 (w32_enumfont_pattern_entity): Make a font-entity by
12613 font_make_entity. Adjusted for the format change of font-entity.
12614 Use FONT_SET_STYLE to set a style-related font property. If a
12615 font is scalable, set avgwidth property to 0. Set font-entity
12616 property by font_put_extra.
12617 (font_matches_spec): Adjusted for the format change of font-entity.
12618 (w32_weight_table, w32_decode_weight): New variables.
12619 (w32_encode_weight): New function.
12620 (fill_in_logfont): Adjusted for the format change of font-spec.
12621 (w32font_full_name): Use FONT_WEIGHT_SYMBOLIC to get a symbol
12622 weight value.
12623 (w32font_driver): Adjusted for the change of struct font_driver.
12624
12625 * w32term.h: Throughout the file, delete all USE_FONT_BACKEND
12626 conditionals. Don't check enable_font_backend. Surround non-used
12627 code by "#ifdef OLD_FONT" and "endif".
12628 (FONT_WIDTH, FONT_HEIGHT, FONT_BASE, FONT_DESCENT)
12629 (FONT_AVG_WIDTH): Adjusted for the change of struct font.
12630
12631 * w32term.c: Throughout the file, delete all USE_FONT_BACKEND
12632 conditionals. Don't check enable_font_backend. Delete all codes
12633 used only when USE_FONT_BACKEND is not defined. Surround non-used
12634 code by "#ifdef OLD_FONT" and "endif".
12635
12636 * w32uniscribe.c: Delete USE_FONT_BACKEND conditional.
12637 (uniscribe_open): Return value changed to font-object.
12638 Adjusted for the format change of font-object.
12639 (uniscribe_otf_capability): Adjusted for the change of struct font.
12640 (add_opentype_font_name_to_list): Don't downcase names.
12641 (uniscribe_font_driver): Adjusted for the change of struct
12642 font_driver.
12643
126442008-05-13 Chong Yidong <cyd@stupidchicken.com>
12645
12646 * dispnew.c (update_frame_1): Check if tty output is still valid
12647 before flushing it.
12648
126492008-05-13 Jan Djärv <jan.h.d@swipnet.se>
12650
12651 * xterm.c (handle_one_xevent): Don't pass buttons higher than 3
12652 to Gtk+ menus.
12653
126542008-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
12655
12656 * dired.c (file_name_completion): Tweak the code so as to always do it
12657 in a single pass. Tighten the scope of some variables.
12658
12659 * dired.c (Qdefault_directory): New var.
12660 (file_name_completion): Use it instead of Fexpand_file_name.
12661 (syms_of_dired): Initialize it.
12662
126632008-05-12 Stefan Monnier <monnier@iro.umontreal.ca>
12664
12665 * fileio.c (double_dollars): Remove dead code.
12666
126672008-05-10 Eli Zaretskii <eliz@gnu.org>
12668
12669 * dired.c (Ffile_attributes, Fdirectory_files_and_attributes):
12670 Mention w32-get-true-file-attributes in doc string.
12671
12672 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
12673
126742008-05-09 Glenn Morris <rgm@gnu.org>
12675
12676 * fileio.c (Fread_file_name): Remove reference to insdef, deleted
12677 2008-04-23.
12678
126792008-05-09 Eli Zaretskii <eliz@gnu.org>
12680
12681 Support for reporting owner and group of each file on MS-Windows:
12682 * dired.c (stat_uname, stat_gname): New functions, with special
12683 implementation for w32.
12684 (Ffile_attributes): Use them instead of getpwuid and getgrgid.
12685
12686 * w32.c: Rename the_passwd_* to dflt_passwd_*.
12687 (dflt_group_name): New static variable.
12688 (dflt_group): Rename from the_group.
12689 (init_user_info): Init dflt_group fields. Get user's group name
12690 from LookupAccountSid.
12691 (g_b_init_get_file_security, g_b_init_get_security_descriptor_owner)
12692 (g_b_init_get_security_descriptor_group, g_b_init_is_valid_sid):
12693 New initialization states.
12694 (globals_of_w32): Initialize them to zero. Initialize the default
12695 group name to "None".
12696 (GetFileSecurity_Name): New global var, the name of the function
12697 to call for GetFileSecurity.
12698 (GetFileSecurity_Proc, GetSecurityDescriptorOwner_Proc)
12699 (GetSecurityDescriptorGroup_Proc, IsValidSid_Proc): New typedefs.
12700 (get_file_security, get_security_descriptor_owner)
12701 (get_security_descriptor_group, is_valid_sid)
12702 (get_file_security_desc, get_rid, get_name_and_id)
12703 (get_file_owner_and_group): New functions.
12704 (stat): Use get_file_security_desc and get_file_owner_and_group to
12705 report the owner and primary group of each file. Don't ignore the
12706 high 32 bits of file's size, now that st_size is 64-bit wide.
12707 Fix test when to get true file attributes.
12708 (init_user_info): Use get_rid instead of equivalent inline code.
12709 (fstat): Don't ignore the high 32 bits of file's size.
12710
127112008-05-09 Chong Yidong <cyd@stupidchicken.com>
12712
12713 * image.c (png_load): Use correct bit-depth for setting background
12714 color.
12715
127162008-05-08 Eli Zaretskii <eliz@gnu.org>
12717
12718 * Makefile.in (lisp, shortlisp): Rename epa-file-hook.elc to
12719 epa-hook.elc.
12720
127212008-05-08 Juanma Barranquero <lekktu@gmail.com>
12722
12723 * font.c (Ffont_match_p): Don't use `iff' in docstring.
12724
127252008-05-07 Dan Nicolaescu <dann@ics.uci.edu>
12726
12727 * macfns.c (Fx_create_frame): Make a copy of frame parameters
12728 because the original parameters are in pure storage now.
12729 (mac_window): Remove unused params. Update callers.
12730
127312008-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
12732
12733 * lread.c (substitute_object_recurse): Use lower-level primitives.
12734 Don't signal errors when traversing sub-char-tables.
12735 Don't loop over all the possible characters when traversing char-tables.
12736
12737 * print.c (print_preprocess): Add sub-char-tables to the print-table,
12738 just like we do in print.c.
12739
127402008-05-05 Stefan Monnier <monnier@iro.umontreal.ca>
12741
12742 * minibuf.c (Ftry_completion): Remove code left over from when we used
12743 scmp instead of Fcompare_strings.
12744
127452008-05-04 Juanma Barranquero <lekktu@gmail.com>
12746
12747 * w32fns.c (Fw32_battery_status): Fix computation of %t (h:min) format.
12748
127492008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12750
12751 * image.c [USE_MAC_IMAGE_IO] (image_load_image_io):
12752 Create bitmap context in native byte order.
12753
12754 * macterm.c (XDrawLine)
12755 (XCreatePixmapFromBitmapData) [USE_MAC_IMAGE_IO]: Create bitmap
12756 context in native byte order.
12757
127582008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12759
12760 * config.in: Regenerate.
12761
12762 * image.c (PIX_MASK_DRAW, PIX_MASK_RETAIN) [USE_MAC_IMAGE_IO]:
12763 New definitions for Image I/O support.
12764 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
12765 (mac_create_cg_image_from_image, x_create_x_image_and_pixmap)
12766 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
12767 (mac_data_provider_release_data, image_load_image_io)
12768 [USE_MAC_IMAGE_IO]: New functions.
12769 (CGImageCreateWithPNGDataProviderProcType) [MAC_OSX]: Remove typedef.
12770 (MyCGImageCreateWithPNGDataProvider) [MAC_OSX]: Remove variable.
12771 (init_image_func_pointer) [MAC_OSX]: Remove function.
12772 (image_load_quartz2d) [MAC_OSX]: Check availability of
12773 CGImageCreateWithPNGDataProvider at compile time.
12774 Use lowercase `false' for boolean constant.
12775 (png_load, jpeg_load, tiff_load, gif_load) [USE_MAC_IMAGE_IO]:
12776 Use image_load_image_io.
12777 (png_load) [!USE_MAC_IMAGE_IO && MAC_OSX]:
12778 Don't check MyCGImageCreateWithPNGDataProvider.
12779 (init_image) [MAC_OSX && TARGET_API_MAC_CARBON]:
12780 Don't call init_image_func_pointer.
12781
12782 * macgui.h (Pixmap) [USE_MAC_IMAGE_IO]: New definition for Image I/O.
12783
12784 * macterm.c (mac_cg_color_space_rgb) [USE_CG_DRAWING]:
12785 Make variable non-static.
12786 (XDrawLine, XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
12787 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
12788
12789 * macterm.h (ARGB_TO_ULONG, ALPHA_FROM_ULONG): New macros.
12790 (RED_FROM_ULONG): Mask off higher bits.
12791 (mac_cg_color_space_rgb) [USE_MAC_IMAGE_IO]: New extern.
12792
12793 * s/darwin.h [HAVE_CARBON && HAVE_AVAILABILITYMACROS_H]:
12794 Include AvailabilityMacros.h.
12795 (USE_MAC_IMAGE_IO, LIBS_IMAGE) [HAVE_CARBON]: New defines.
12796 (LIBS_CARBON) [HAVE_CARBON]: Use LIBS_IMAGE.
12797
127982008-05-03 Stefan Monnier <monnier@iro.umontreal.ca>
12799
12800 * chartab.c (Fset_char_table_range): If range is t, really set all
12801 chars to that value.
12802
128032008-05-03 Eli Zaretskii <eliz@gnu.org>
12804
12805 * dired.c (Ffile_attributes): Don't allow the device number become
12806 negative.
12807
128082008-05-02 Daiki Ueno <ueno@unixuser.org>
12809
12810 * Makefile.in (lisp, shortlisp): Add epa-file-hook.elc.
12811
128122008-05-02 Juri Linkov <juri@jurta.org>
12813
12814 * minibuf.c (Fread_from_minibuffer, Fread_string, Fread_command)
12815 (Fread_variable, Fread_buffer, Fcompleting_read): Document the
12816 DEFAULT argument as a list of default values in docstrings.
12817
128182008-05-01 Chong Yidong <cyd@stupidchicken.com>
12819
12820 * puresize.h (BASE_PURESIZE): Increase to 1210000.
12821
128222008-05-01 Martin Rudalics <rudalics@gmx.at>
12823
12824 * dispnew.c (change_frame_size_1): Preserve small windows when
12825 shrinking frames by calling set_window_height|width with third
12826 arg 2.
12827
12828 * window.h (struct window): Replace field too_small_ok by field
12829 resize_proportionally.
12830
12831 * window.c (make_window): Initialize resize_proportionally.
12832 (enlarge_window): Temporarily set resize_proportionally to make
12833 sure that shrink_windows does scale the window proportionally.
12834 (shrink_windows): When window has resize_proportionally set try
12835 to shrink it proportionally by stealing from other windows.
12836 (struct saved_window, Fset_window_configuration)
12837 (compare_window_configurations): Handle resize_proportionally.
12838 (WINDOW_TOTAL_SIZE): New macro.
12839 (window_min_size, shrink_windows, size_window): Use it.
12840 (check_min_window_sizes): Remove. Invalid values of
12841 window-min-height|width are handled by window_min_size_2 now.
12842 (size_window, Fsplit_window, enlarge_window)
12843 (adjust_window_trailing_edge, grow_mini_window): Don't call
12844 check_min_window_sizes.
12845 (window_min_size_2, window_min_size_1, window_min_size):
12846 New argument safe_p for retrieving "safe" minimum sizes.
12847 (Fdisplay_buffer, Fsplit_window, enlarge_window)
12848 (adjust_window_trailing_edge, grow_mini_window):
12849 Adjust arguments of window_min_size... functions.
12850 (shrink_windows): Argument min_size removed. New argument
12851 safe_p allows shrinking windows to their safe minimum sizes.
12852 Calculate minimum size and decide whether a window shall be
12853 deleted for each window individually.
12854 (size_window): When nodelete_p equals 2, tell shrink_windows to
12855 delete windows only if their new minimum size is no more safe.
12856 (shrink_window_lowest_first): Call window_min_size_1 to make
12857 sure to preserve modeline of bottom-most window when resizing
12858 the minibuffer.
12859 (Fset_window_configuration, Fcurrent_window_configuration)
12860 (compare_window_configurations): Do not handle
12861 window-min-height|width any more.
12862 (syms_of_window): Clarify window-min-height|width doc-strings.
12863
128642008-04-30 Stefan Monnier <monnier@iro.umontreal.ca>
12865
12866 * dired.c (file_name_completion): Fix up the encoding/decoding issue
12867 some more. Copy some of the code from Ftry_completions.
12868 Remove special case code that dates back to initial revision when the
12869 slash was only added when necessary and that can't trigger nowadays.
12870
128712008-04-27 Kenichi Handa <handa@m17n.org>
12872
12873 * font.c (font_prop_validate): Signal `error' instead of `font'.
12874
128752008-04-29 Jason Rumney <jasonr@gnu.org>
12876
12877 * w32fns.c (Fw32_battery_status): New defun.
12878 (syms_of_w32fns): Defsubr it.
12879
128802008-04-28 Andreas Schwab <schwab@suse.de>
12881
12882 * dired.c (file_name_completion): Fix another mixing of encoded
12883 and decoded names.
12884
128852008-04-28 Juanma Barranquero <lekktu@gmail.com>
12886
12887 * w32fns.c (Fw32_define_rgb_color): Fix typo in docstring.
12888
128892008-04-27 Juanma Barranquero <lekktu@gmail.com>
12890
12891 * fringe.c (Fdefine_fringe_bitmap): Doc fix.
12892
128932008-04-27 Andreas Schwab <schwab@suse.de>
12894
12895 * dired.c (file_name_completion): Fix inappropriate mixing of
12896 encoded and decoded names.
12897
12898 * xterm.c (XTread_socket): Fix use of uninitialized variable.
12899
12900 * puresize.h (BASE_PURESIZE): Increase to 1200000.
12901
129022008-04-26 Eli Zaretskii <eliz@gnu.org>
12903
12904 * dired.c (Ffile_attributes) [WINDOWSNT]: Undo change from
12905 2008-03-31, it's not needed anymore with `struct stat' definition
12906 on nt/inc/sys/stat.h. Undo changes from 2007-01-12 and 2007-01-13
12907 for the same reasons.
12908
129092008-04-25 Dennis Gilmore <ausil@fedoraproject.org> (tiny change)
12910
12911 * m/sparc.h: Additional redefinitions for GNU/Linux.
12912
129132008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12914
12915 * macterm.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: New variable.
12916 (syms_of_macterm) [USE_MAC_TSM]: Defvar it.
12917 (Qmouse_drag_overlay) [MAC_OSX]: New variable.
12918 (syms_of_macterm) [MAC_OSX]: Intern and staticpro it.
12919 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
12920 (mac_ax_selected_text_range) [MAC_OSX]: New functions.
12921 (mac_ax_number_of_characters) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
12922 Likewise.
12923
12924 * mactoolbox.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: Add extern.
12925 (fast_find_position, x_y_to_hpos_vpos, mac_ax_selected_text_range)
12926 (mac_ax_number_of_characters): Add externs.
12927 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
12928 [USE_MAC_TSM]: Likewise.
12929 (mac_handle_text_input_event) [MAC_OSX]:
12930 Handle kEventTextInputOffsetToPos for no active input area case.
12931 Handle kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
12932 (mac_handle_document_access_event)
12933 [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: New function.
12934 (install_application_handler) [MAC_OSX]: Register handlers for
12935 kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
12936 (install_application_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
12937 Register mac_handle_document_access_event.
12938
12939 * xdisp.c (x_y_to_hpos_vpos, fast_find_position) [HAVE_CARBON]:
12940 Make functions non-static.
12941
129422008-04-23 Stefan Monnier <monnier@iro.umontreal.ca>
12943
12944 * fileio.c (Vread_file_name_function, Vread_file_name_predicate)
12945 (read_file_name_completion_ignore_case, insert_default_directory)
12946 (Qdefault_directory): Move to minibuffer.el.
12947 (Fread_file_name): Call the new `read-file-name' instead.
12948
129492008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12950
12951 * mac.c (create_apple_event) [TARGET_API_MAC_CARBON]:
12952 Make function non-static.
12953 (create_apple_event_from_event_ref) [TARGET_API_MAC_CARBON]:
12954 Remove function.
12955 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
12956 Move to mactoolbox.c.
12957 (mac_event_parameters_to_lisp) [TARGET_API_MAC_CARBON]: New function.
12958
12959 * macgui.h (CGFloat) [!CGFLOAT_DEFINED]: New typedef.
12960 (mac_rect_make): New macro.
12961
12962 * macterm.c (mac_draw_image_string_atsui) [MAC_OSX]: Use CGFloat
12963 instead of float.
12964 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
12965 (init_cg_color, mac_draw_line, mac_draw_cg_image, XSetForeground)
12966 (XSetBackground) [USE_CG_DRAWING]: Likewise.
12967 (mac_draw_image_string_atsui) [MAC_OSX]: Use mac_rect_make instead of
12968 CGRectMake.
12969 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
12970 (mac_erase_rectangle, mac_draw_cg_image, mac_fill_rectangle)
12971 (mac_set_clip_rectangles) [USE_CG_DRAWING]: Likewise.
12972 (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
12973 instead of WindowRef in argument type.
12974 (XCreatePixmap) [!MAC_OS8]: Don't call SetPortWindowPort.
12975 (mac_invert_rectangle): Use CGContextSetBlendMode if available.
12976 (mac_set_clip_rectangles, mac_reset_clip_rectangles): Take argument F
12977 instead of DISPLAY. All uses changed.
12978 (mac_handle_size_change): Don't call SET_FRAME_GARBAGED.
12979 (x_calc_absolute_position): Simplify so as not to use
12980 FRAME_PIXEL_WIDTH/FRAME_PIXEL_HEIGHT.
12981
12982 * macterm.h (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
12983 instead of WindowRef in argument type.
12984 (create_apple_event_from_event_ref, create_apple_event_from_drag_ref)
12985 [TARGET_API_MAC_CARBON]: Remove externs.
12986 (create_apple_event, mac_event_parameters_to_lisp)
12987 [TARGET_API_MAC_CARBON]: Add externs.
12988
12989 * mactoolbox.c (Vmac_ts_script_language_on_focus)
12990 (saved_ts_script_language_on_focus) [USE_MAC_TSM]: Remove externs.
12991 (XTread_socket) [USE_MAC_TOOLBAR]: Select window if its structure part
12992 is clicked.
12993 (x_activate_menubar): Remove extern for saved_menu_event_location.
12994 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
12995 Move from mac.c.
12996
129972008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12998
12999 * alloc.c [!SYSTEM_MALLOC && !SYNC_INPUT] (uninterrupt_malloc)
13000 [HAVE_GTK_AND_PTHREAD && !DOUG_LEA_MALLOC]: Don't use recursive mutex.
13001
130022008-04-23 Jason Rumney <jasonr@gnu.org>
13003
13004 * w32.c (stat): When Vw32_get_true_file_attributes is Qlocal, get
13005 attributes only for local files.
13006
13007 * w32proc.c (syms_of_ntproc): Change Vw32_get_true_file attributes
13008 default to Qlocal.
13009
130102008-04-22 Juri Linkov <juri@jurta.org>
13011
13012 * buffer.c (Fswitch_to_buffer): Change interactive spec to call
13013 read-buffer-to-switch instead of using the letter "B".
13014
130152008-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
13016
13017 * fileio.c (Qdefault_directory): New variable.
13018 (Fread_file_name): Use it to pass `dir' to the completion functions.
13019
130202008-04-20 Chong Yidong <cyd@stupidchicken.com>
13021
13022 * xdisp.c (pos_visible_p): Check if iterator stops on a display string.
13023
130242008-04-19 Stefan Monnier <monnier@iro.umontreal.ca>
13025
13026 * keyboard.c (Vpre_help_message): Remove.
13027 (show_help_echo): Remove default C code.
13028
13029 * dired.c (directory_files_internal, file_name_completion):
13030 Only call ENCODE_FILE if the string is indeed decoded.
13031
130322008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
13033
13034 * Makefile.in (TOOLKIT_DEFINES): Remove.
13035 (LIBW): Use a bit less #if, remove left over OPEN_LOOK stuff.
13036
130372008-04-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13038
13039 * Makefile.in (MAC_OBJ): Add mactoolbox.o.
13040 (mactoolbox.o): New target.
13041
13042 * mac.c [MAC_OSX] (select_and_poll_event, sys_select):
13043 Use mac_run_loop_run_once instead of CFRunLoopRunInMode.
13044
13045 * macfns.c (x_set_background_color, mac_window, x_create_tip_frame):
13046 Use mac_set_frame_window_background instead of XSetWindowBackground.
13047 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]:
13048 Use mac_is_window_toolbar_visible instead of IsWindowToolbarVisible.
13049 (x_set_name_internal) [TARGET_API_MAC_CARBON]: Use mac_set_window_title
13050 instead of SetWindowTitleWithCFString.
13051 (mac_update_proxy_icon) [TARGET_API_MAC_CARBON]: Remove BLOCK_INPUT.
13052 Move function to mactoolbox.c.
13053 (mac_update_title_bar) [TARGET_API_MAC_CARBON]:
13054 Use mac_set_window_modified instead of SetWindowModified.
13055 Add BLOCK_INPUT around mac_set_window_modified/mac_update_proxy_icon.
13056 (mac_window, x_create_tip_frame): Use mac_create_frame_window.
13057 (Fx_focus_frame): Use mac_front_non_floating_window instead of
13058 FrontNonFloatingWindow. Use mac_activate_window instead of
13059 ActivateWindow. Use mac_active_non_floating_window instead of
13060 ActiveNonFloatingWindow.
13061 (show_hourglass, hide_hourglass) [TARGET_API_MAC_CARBON]:
13062 Use mac_show_hourglass and mac_hide_hourglass.
13063 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use mac_get_global_mouse
13064 instead of GetGlobalMouse.
13065 (Fx_show_tip): Use mac_move_window/mac_size_window/mac_show_window
13066 instead of MoveWindow/SizeWindow/ShowWindow, respectively.
13067 Use mac_bring_window_to_front instead of BringToFront.
13068 (Qfile_name_history) [TARGET_API_MAC_CARBON]: Move extern to
13069 mactoolbox.c.
13070 (Fx_file_dialog) [TARGET_API_MAC_CARBON]: Move function body to
13071 mac_file_dialog in mactoolbox.c. Use mac_file_dialog.
13072 (mac_nav_event_callback) [TARGET_API_MAC_CARBON]: Move function to
13073 mactoolbox.c.
13074
13075 * macgui.h [!HAVE_CARBON]: Include Quickdraw.h instead of QuickDraw.h.
13076 (XtPointer): Move typedef from macmenu.c.
13077 (enum button_type): Move enum from macmenu.c.
13078 (widget_value): Move typedef from macmenu.c.
13079 (M_APPLE, I_ABOUT, EXTRA_STACK_ALLOC, ARGV_STRING_LIST_ID)
13080 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
13081 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
13082 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
13083 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
13084 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
13085 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
13086 (DIALOG_ICON_TOP_MARGIN): Move defines from macmenu.c.
13087 (Selection): Move typedef from macselect.c.
13088 (RAM_TOO_LARGE_ALERT_ID, ABOUT_ALERT_ID) [MAC_OS8]: Move defines from
13089 macterm.c.
13090 (mac_set_window_title, mac_set_window_modified, mac_is_window_visible)
13091 (mac_is_window_collapsed, mac_bring_window_to_front)
13092 (mac_send_window_behind, mac_hide_window, mac_show_window)
13093 (mac_collapse_window, mac_front_non_floating_window)
13094 (mac_active_non_floating_window, mac_activate_window)
13095 (mac_move_window_structure, mac_move_window, mac_size_window)
13096 (mac_get_global_mouse, mac_is_window_toolbar_visible): New defines.
13097
13098 * macmenu.c [!TARGET_API_MAC_CARBON]: Move includes to mactoolbox.c.
13099 (enum mac_menu_kind): Move enum to mactoolbox.c.
13100 (min_menu_id): Move variable to mactoolbox.c.
13101 (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]: Likewise.
13102 (DIALOG_WINDOW_RESOURCE): Move define to mactoolbox.c.
13103 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
13104 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
13105 [TARGET_API_MAC_CARBON]: Likewise.
13106 (XtPointer): Move typedef to macgui.h.
13107 (enum button_type): Move enum to macgui.h.
13108 (widget_value): Move typedef to macgui.h.
13109 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
13110 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
13111 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
13112 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
13113 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
13114 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
13115 (DIALOG_ICON_TOP_MARGIN): Move defines to macgui.h.
13116 (popup_activated_flag): Make variable non-static.
13117 (x_activate_menubar, install_menu_quit_handler, pop_down_menu)
13118 (add_menu_item, fill_menu, dispose_menus):
13119 Move functions to mactoolbox.c.
13120 (restore_show_help_function, menu_target_item_handler)
13121 (install_menu_target_item_handler, mac_handle_dialog_event)
13122 (install_dialog_event_handler, pop_down_dialog, create_and_show_dialog)
13123 [TARGET_API_MAC_CARBON]: Likewise.
13124 (menu_quit_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: Likewise.
13125 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
13126 (find_and_call_menu_selection, name_is_separator): Make function
13127 non-static.
13128 (Vshow_help_function, timer_check) [TARGET_API_MAC_CARBON]: Move extern
13129 to mactoolbox.c.
13130 (set_frame_menubar): Don't call install_menu_quit_handler.
13131 (menu_item_selection): New variable.
13132 (mac_menu_show): Use create_and_show_popup_menu.
13133 (create_and_show_dialog) [TARGET_API_MAC_CARBON]: Don't return
13134 selection but set variable menu_item_selection. All uses changed.
13135 (mac_fill_menubar): Rename from fill_menubar. All uses changed.
13136 Call install_menu_quit_handler. Move to mactoolbox.c.
13137
13138 * macselect.c [!TARGET_API_MAC_CARBON]: Don't include Scrap.h.
13139 (Selection): Move typedef to macgui.h.
13140 (Vselection_converter_alist, Qmac_scrap_name, Qmac_ostype)
13141 (Vmac_apple_event_map, Qmac_apple_event_class, Qmac_apple_event_id):
13142 Make variables non-static.
13143 (Vmac_dnd_known_types) [TARGET_API_MAC_CARBON]: Likewise.
13144 (mac_handle_apple_event, cleanup_all_suspended_apple_events):
13145 Make functions non-static.
13146 (Vmac_service_selection) [MAC_OSX]: Likewise.
13147 (mac_get_selection_from_symbol, get_flavor_type_from_symbol)
13148 (mac_valid_selection_target_p, mac_clear_selection)
13149 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
13150 (mac_put_selection_value, mac_selection_has_target_p)
13151 (mac_get_selection_value, mac_get_selection_target_list)
13152 (init_apple_event_handler, install_drag_handler, remove_drag_handler):
13153 Move functions to mactoolbox.c.
13154 (mac_do_track_drag, mac_do_receive_drag) [TARGET_API_MAC_CARBON]:
13155 Likewise.
13156 (copy_scrap_flavor_data, mac_handle_service_event)
13157 (install_service_handler) [MAC_OSX]: Likewise.
13158 (syms_of_macselect) <Vmac_dnd_known_types>:
13159 Use mac_dnd_default_known_types.
13160
13161 * macterm.h (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y):
13162 Move to mactoolbox.c.
13163 (HOURGLASS_WIDTH, HOURGLASS_HEIGHT): Change to 15.
13164 (Fx_selection_owner_p): Add EXFUN.
13165 (install_window_handler, remove_window_handler, XSetWindowBackground):
13166 Remove externs.
13167 (do_apple_menu) [!TARGET_API_MAC_CARBON]: Likewise.
13168 (mac_prepare_for_quickdraw) [USE_CG_DRAWING]: Likewise.
13169 (x_raise_frame, x_lower_frame, mac_alert_sound_play)
13170 (install_application_handler, mac_get_frame_bounds, mac_get_frame_mouse)
13171 (mac_convert_frame_point_to_global, mac_set_frame_window_background)
13172 (mac_update_begin mac_update_end, mac_frame_up_to_date, x_flush)
13173 (mac_create_frame_window, mac_dispose_frame_window, mac_begin_clip)
13174 (mac_end_clip, mac_create_scroll_bar, mac_dispose_scroll_bar)
13175 (mac_set_scroll_bar_bounds, mac_redraw_scroll_bar, mac_fill_menubar)
13176 (create_and_show_popup_menu, mac_get_selection_from_symbol)
13177 (mac_valid_selection_target_p, mac_clear_selection)
13178 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
13179 (mac_put_selection_value, mac_selection_has_target_p)
13180 (mac_get_selection_value, mac_get_selection_target_list): Add externs.
13181 (mac_update_proxy_icon, mac_show_hourglass, mac_hide_hourglass)
13182 (mac_reposition_hourglass, mac_file_dialog, create_and_show_dialog)
13183 (mac_dnd_default_known_types) [TARGET_API_MAC_CARBON]: Likewise.
13184 (mac_run_loop_run_once) [MAC_OSX]: Likewise.
13185 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
13186 (mac_begin_cg_clip, mac_end_cg_clip) [USE_CG_DRAWING]: Likewise.
13187 (x_set_toolkit_scroll_bar_thumb) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
13188 (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
13189
13190 * mactoolbox.c: New file.
13191
131922008-04-18 Jason Rumney <jasonr@gnu.org>
13193
13194 * dired.c (Ffile_attributes) [WINDOWSNT]: Cast uid and gid to unsigned.
13195
131962008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
13197
13198 * character.c (Fmultibyte_char_to_unibyte):
13199 Return latin1 chars unchanged.
13200
13201 * fileio.c (Fexpand_file_name): Refine last fix so `nm' is only
13202 relocated if it points to `name'.
13203
132042008-04-17 Kenichi Handa <handa@m17n.org>
13205
13206 * data.c (Faset): Allow setting a multibyte character in an
13207 ASCII-only unibyte string.
13208
13209 * lisp.h (STRING_SET_MULTIBYTE): New macro.
13210
132112008-04-16 Stefan Monnier <monnier@iro.umontreal.ca>
13212
13213 * Makefile.in: Don't use HAVE_GTK and don't -DUSE_GTK since it's now
13214 done in config.h.
13215
132162008-04-16 Juanma Barranquero <lekktu@gmail.com>
13217
13218 * character.c (Fchar_bytes, Fchar_width, Fstring_width)
13219 (Fchar_direction): Add usage in the docstring.
13220
132212008-04-15 Chong Yidong <cyd@stupidchicken.com>
13222
13223 * keyboard.c (read_key_sequence): Remove always-true checks.
13224
132252008-04-14 Jason Rumney <jasonr@gnu.org>
13226
13227 * w32font.c (w32font_open_internal): Set max_bounds.descent in
13228 compatibility struct, for better underline positioning.
13229
132302008-04-13 David Hansen <david.hansen@gmx.net>
13231
13232 * dbusbind.c (dbus-get-unique-name): Remove extra copying of name
13233 string.
13234
132352008-04-12 Dan Nicolaescu <dann@ics.uci.edu>
13236
13237 * m/hp800.h (XUINT, XSET): Remove.
13238
132392008-04-12 Juanma Barranquero <lekktu@gmail.com>
13240
13241 * fileio.c (Fexpand_file_name): Add declaration for `p' missing in
13242 previous change.
13243
132442008-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
13245
13246 * fileio.c (Fexpand_file_name): Tighten the scope of `p' and `o' vars.
13247 Relocate `nm' after calling DECODE_FILE, in case the GC was run.
13248
132492008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
13250
13251 * keymap.h (map_keymap_canonical): Declare.
13252 * xmenu.c (single_keymap_panes): Use it.
13253
132542008-04-11 Glenn Morris <rgm@gnu.org>
13255
13256 * eval.c (Fdefvaralias): If the alias is bound and the target is not,
13257 set the target's value to that of the alias.
13258
132592008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
13260
13261 * term.c (set_tty_color_mode): Left over typo.
13262
132632008-04-10 Michael Albinus <michael.albinus@gmx.de>
13264
13265 * fileio.c (Fmake_symbolic_link): Surround code by #ifdef S_IFLNK
13266 only after check for file name handler functions. Signal, when
13267 native functionality is not supported.
13268 (syms_of_fileio): Declare it unconditionally.
13269
132702008-04-10 Jason Rumney <jasonr@gnu.org>
13271
13272 * w32menu.c (is_simple_dialog, simple_dialog_show): New functions.
13273 (Fx_popup_dialog): Handle simple yes/no questions as dialogs.
13274
13275 * w32.c (logon_network_drive): Also logon to remote drives that
13276 are mapped to drive letters.
13277
132782008-04-10 Glenn Morris <rgm@gnu.org>
13279
13280 * xdisp.c (truncate-partial-width-windows): Doc fix.
13281
132822008-04-10 Stefan Monnier <monnier@iro.umontreal.ca>
13283
13284 * fileio.c (read_file_name_cleanup, Fread_file_name_internal):
13285 Move functions to minibuffer.el.
13286 (syms_of_fileio): Don't declare them.
13287
132882008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
13289
13290 * minibuf.c (Vcompletion_auto_help): Move to minibuffer.el.
13291 (syms_of_minibuf): Remove its initialization.
13292
13293 * minibuf.c (temp_echo_area_glyphs): Remove unused function.
13294
132952008-04-09 Juanma Barranquero <lekktu@gmail.com>
13296
13297 * editfns.c (Ffield_string_no_properties): Fix typo in docstring.
13298
132992008-04-09 Jason Rumney <jasonr@gnu.org>
13300
13301 * makefile.w32-in (distclean): Delete makefile too.
13302 (maintainer-clean): New target.
13303
13304 * xdisp.c (redisplay_internal) [!WINDOWSNT]: Conditionalize last change.
13305
13306 * w32term.c (w32_compute_glyph_string_overhangs): Compute overhangs
13307 for new font backend and composite cases.
13308
133092008-04-09 Jan Djärv <jan.h.d@swipnet.se>
13310
13311 * atimer.c (alarm_signal_handler): Call run_timers if not SYNC_INPUT.
13312 Most of the code moved to run_timers.
13313 (do_pending_atimers): Call run_timers.
13314 (run_timers): New function.
13315
13316 * sysdep.c (emacs_write): If SYNC_INPUT and pending_atimers,
13317 run atimers.
13318
13319 * process.c (wait_reading_process_output): The same as above.
13320
133212008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
13322
13323 * minibuf.c (last_exact_completion): Remove variable.
13324 (Fdelete_minibuffer_contents, do_completion, Fminibuffer_complete)
13325 (complete_and_exit_1, complete_and_exit_2)
13326 (Fminibuffer_complete_and_exit, Fminibuffer_complete_word)
13327 (Fdisplay_completion_list, display_completion_list_1)
13328 (Fminibuffer_completion_help, Fself_insert_and_exit)
13329 (Fexit_minibuffer, Fminibuffer_message): Move functions to
13330 minibuffer.el.
13331 (syms_of_minibuf): Remove corresponding initializations.
13332
13333 * keyboard.c (Qdeactivate_mark): New var.
13334 (command_loop_1): Use it to call `deactivate-mark'.
13335 (syms_of_keyboard): Initialize it.
13336
13337 * xdisp.c (redisplay_internal): Reset tty's color_mode when switching
13338 to another frame.
13339 * frame.c (do_switch_frame): Refine the top_frame/async_visible code.
13340 Don't call set_tty_color_mode.
13341 (store_frame_param): Reset previous_frame rather than call
13342 set_tty_color_mode.
13343 * term.c (set_tty_color_mode): Rewrite.
13344 * dispextern.h (set_tty_color_mode): New type.
13345 * termchar.h (struct tty_display_info): Add `previous_color_mode'.
13346
133472008-04-08 Stefan Monnier <monnier@iro.umontreal.ca>
13348
13349 * keymap.c (access_keymap): Remove the value 2 for t_ok which was used
13350 for generic chars, which do not exist any more in emacs-unicode.
13351
133522008-04-08 Michael Albinus <michael.albinus@gmx.de>
13353
13354 * coding.c (detect_coding_emacs_mule)
13355 (Ffind_operation_coding_system): Fix typo.
13356
133572008-04-08 Jason Rumney <jasonr@gnu.org>
13358
13359 * w32uniscribe.c (SNAME): Extract only symbol name.
13360
13361 * w32font.h (struct w32_metric_cache): New struct.
13362 (w32font_info): Use it.
13363 (W32METRIC_NO_ATTEMPT, W32METRIC_SUCCESS, W32METRIC_FAIL)
13364 (CACHE_BLOCKSIZE): New constants.
13365
13366 * w32font.c (Qja, Qko, Qzh): New symbols.
13367 (syms_of_w32font): Initialise them.
13368 (font_matches_spec): Use them to filter by language.
13369 (recompute_cached_metrics): Remove function.
13370 (compute_metrics, clear_cached_metrics): New functions.
13371 (w32font_encode_char): Use them to manage metric cache.
13372 (w32font_text_extents): Cache metrics for all glyphs on demand.
13373 Delay converting glyph indices to WORD until needed.
13374 (w32font_open_internal): Initialize metric cache to empty.
13375 (registry_to_w32_charset): Charset should always be a symbol.
13376 (fill_in_logfont, list_all_matching_fonts): Family should
13377 always be a symbol.
13378
133792008-04-06 Jason Rumney <jasonr@gnu.org>
13380
13381 * w32uniscribe.c (uniscribe_shape): Increase items buffer size.
13382 Give up if glyph indices not supported. Use uniscribe obtained
13383 ABC widths for individual metrics. Map glyph clusters back to
13384 characters using fClusterStart flag. Return number of glyphs
13385 produced, not chars processed.
13386 (uniscribe_shape): Map char at FROM to current glyph.
13387
133882008-04-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13389
13390 * macmenu.c (fill_menu) [TARGET_API_MAC_CARBON]:
13391 Use SetMenuItemHierarchicalMenu.
13392
133932008-04-05 Jason Rumney <jasonr@gnu.org>
13394
13395 * image.c (pbm_load): Allow color values up to 65535.
13396 Throw an error if max_color_idx is outside the supported range.
13397 Report an error when image size is invalid.
13398 Read two bytes at a time when raw images have max_color_idx above 255.
13399
134002008-04-05 Eli Zaretskii <eliz@gnu.org>
13401
13402 * w32.c (readdir): If FindFirstFile/FindNextFile return in
13403 cFileName a file name that includes `?' characters, use the 8+3
13404 alias in cAlternateFileName instead.
13405
134062008-04-05 Kenichi Handa <handa@ni.aist.go.jp>
13407
13408 * ccl.c (ccl_driver): If ccl->quit_silently is nonzero, don't
13409 append "CCL: Quitted" when the CCL program is quitted.
13410 (setup_ccl_program): Initialize ccl->quit_silently to zero.
13411
13412 * ccl.h (struct ccl_program): New member quit_silently.
13413
134142008-04-05 Chong Yidong <cyd@stupidchicken.com>
13415
13416 * search.c (compile_pattern_1): Treat non-nil and non-string of
13417 search-spaces-regexp as nil.
13418
13419 * minibuf.c (Fassoc_string): Tweak docstring.
13420
134212008-04-05 Eli Zaretskii <eliz@gnu.org>
13422
13423 * dired.c (Ffile_attributes): Support inode numbers wider than 32
13424 bits. Remove ugly WINDOWSNT-specific kludge introduced on
13425 2008-03-14 to force inode be positive.
13426
13427 * w32.c (sys_chown, stat, fstat): Use S_* constants instead of
13428 _S_* ones, since we now use our own sys/stat.h.
13429 (stat, fstat): Don't mangle the inode number.
13430 (init_user_info): Don't restrict UID and GID to 0-60000 range.
13431
134322008-04-04 Stefan Monnier <monnier@iro.umontreal.ca>
13433
13434 * frame.h (struct frame): Give one more bit to `visible' since we use
13435 values larger than 1 to indicate obscured frames on ttys.
13436
13437 * keymap.c (Qkeymap_canonicalize): New var.
13438 (Fmap_keymap_internal): New fun.
13439 (describe_map): Use keymap-canonicalize.
13440
13441 * undo.c (last_boundary_buffer, last_boundary_position): New vars.
13442 (Fundo_boundary): Set them.
13443 (syms_of_undo): Initialize them.
13444 (record_point): Use them instead of last_point_position*.
13445 (last_undo_buffer): Change type.
13446
134472008-04-04 Jason Rumney <jasonr@gnu.org>
13448
13449 * w32font.c (w32font_text_extents): Use font's ascent and descent.
13450 (recompute_cached_metrics): Don't set ascent and descent per char.
13451
13452 * w32uniscribe.c (uniscribe_check_otf): Fix last change.
13453 (uniscribe_check_otf): Add GC protection before consing.
13454 Rearrange loop for counting features.
13455
134562008-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
13457
13458 * insdel.c (insert_from_buffer_1): Don't compare bytes in destination
13459 buffer with byte-size of source buffer.
13460
134612008-04-03 Chong Yidong <cyd@stupidchicken.com>
13462
13463 * callint.c (Fcall_interactively): Handle temporary region even
13464 when shift-select-mode is off.
13465
134662008-04-03 Jason Rumney <jasonr@gnu.org>
13467
13468 * w32uniscribe.c (uniscribe_check_otf): Sanity check otf_spec.
13469
134702008-04-03 Kenichi Handa <handa@m17n.org>
13471
13472 * coding.c (CATEGORY_MASK_ANY): Add CATEGORY_MASK_UTF_16_AUTO.
13473 (CATEGORY_MASK_UTF_16): Likewise.
13474 (detect_coding_utf_16): Add heuristics to reject utf-16 for a
13475 binary file.
13476 (detect_coding): Add null-byte detection for a binary file.
13477 (detect_coding_system): Likewise.
13478
134792008-04-03 Jason Rumney <jasonr@gnu.org>
13480
13481 * w32uniscribe.c: New file.
13482
13483 * font.h (uniscribe_font_driver) [WINDOWSNT]: Declare for w32fns.c.
13484
13485 * w32font.h (uniscribe_check_otf): Declare for w32font.c.
13486
13487 * w32font.c (Qbalinese, Qbuginese, Qbuhid, Qcuneiform, Qcypriot)
13488 (Qdeseret, Qglagolitic, Qgothic, Qhanunoo, Qkharoshthi)
13489 (Qlimbu, Qlinear_b, Qold_italic, Qold_persian, Qosmanya)
13490 (Qphags_pa, Qphoenician, Qshavian, Qsyloti_nagri)
13491 (Qtagalog, Qtagbanwa, Qtai_le, Qtifinagh, Qugaritic)
13492 (Qphonetic): New symbols.
13493 (syms_of_w32font): Initialize them.
13494 (font_supported_scripts): Use them.
13495 (w32font_list_family): List all charsets.
13496 (w32font_text_extents, recompute_cached_metrics): Fix metric
13497 calculations.
13498 (w32_enumfont_pattern_entity): Make full_type a DWORD.
13499 Give opentype fonts their own format.
13500 (font_matches_spec): New arguments backend and logfont.
13501 Handle :otf spec for uniscribe backend.
13502 (add_font_entity_to_list): Match truetype fonts in uniscribe backend.
13503 (fill_in_logfont): Use DEFAULT_CHARSET when charset not supplied.
13504
13505 * w32fns.c (Fx_create_frame): Conditionally register uniscribe
13506 font backend.
13507 (globals_of_w32fns): Initialize uniscribe font backend.
13508
13509 * makefile.w32-in (CONFIG_H): New variable. Use it to clean up
13510 dependencies.
13511 (w32uniscribe.$(O)): New file to build.
13512 (FONT_OBJ): Include w32uniscribe.$(O).
13513 (LIBS): Add uniscribe libraries.
13514
13515 * ftfont.c (ftfont_get_open_type_spec): Check spec->script, not val.
13516
135172008-04-02 Chong Yidong <cyd@stupidchicken.com>
13518
13519 * callint.c (Vshift_select_mode): New var.
13520 (Finteractive): Document new ^ spec.
13521 (Fcall_interactively): Call handle-shift-selection if the ^ spec
13522 is present.
13523
13524 * keyboard.c (Vthis_command_keys_shift_translated): New var.
13525 (command_loop_1): Avoid running the direct display versions of
13526 forward-char and backward-char if shift-selection may occur.
13527 (read_key_sequence): Set Vthis_command_keys_shift_translated if
13528 shift-translation takes place.
13529
13530 * buffer.c (Vtransient_mark_mode): Move docstring to simple.el to
13531 avoid clobbering by define-minor-mode.
13532
13533 * cmds.c (Fforward_char, Fbackward_char, Fforward_line)
13534 (Fbeginning_of_line, Fend_of_line): Add ^ interactive spec.
13535
13536 * syntax.c (Fforward_word): Add ^ interactive spec.
13537
13538 * window.c (Fscroll_up, Fscroll_down, Fscroll_left)
13539 (Fscroll_right): Add ^ interactive spec.
13540
135412008-04-01 Stefan Monnier <monnier@iro.umontreal.ca>
13542
13543 * xdisp.c (try_window_id): Don't forget to reset delta_bytes.
13544
13545 * casefiddle.c (casify_object): Fix up int/EMACS_INT mixup.
13546
13547 * charset.c (Funibyte_charset, Fset_unibyte_charset): Remove.
13548
135492008-03-31 Juri Linkov <juri@jurta.org>
13550
13551 * window.c (Fdisplay_buffer): Reinitialize `tem' to nil.
13552
135532008-03-30 Jan Djärv <jan.h.d@swipnet.se>
13554
13555 * gtkutil.c (xg_set_geometry): Fix indentation.
13556 (xg_resize_outer_widget): Remove.
13557 (x_wm_size_hint_off): Fix indentation.
13558 (xg_frame_set_char_size): Call flush_and_sync after
13559 gtk_window_resize.
13560 (x_wm_set_size_hint): Pass NULL as geometry window to
13561 gtk_window_set_geometry_hints due to Gtk+ bug nr 68668.
13562 Add menu bar and tool bar height to base height.
13563 (xg_update_frame_menubar, free_frame_menubar)
13564 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
13565 (update_frame_tool_bar, free_frame_tool_bar):
13566 Change xg_resize_outer_widget to xg_frame_set_char_size.
13567
135682008-03-30 Michael Albinus <michael.albinus@gmx.de>
13569
13570 * dbusbind.c (QCdbus_timeout): New D-Bus internal symbol.
13571 (Fdbus_call_method): New parameter TIMEOUT.
13572 (dbus-send-signal): Optimize UNGCPRO call.
13573
135742008-03-29 Juri Linkov <juri@jurta.org>
13575
13576 * window.c (Fdisplay_buffer): Move call to
13577 Vsplit_window_preferred_function out of conditions that check
13578 if window is eligible for vertical splitting.
13579 When Vsplit_window_preferred_function is non-nil, call it and use
13580 its non-nil return value as window. Otherwise, continue doing
13581 vertical splitting using Fsplit_window with arg horflag=nil.
13582 (syms_of_window) <Vsplit_window_preferred_function>: Change the
13583 default value from `split-window' to nil.
13584
135852008-03-29 Juri Linkov <juri@jurta.org>
13586
13587 * callint.c (Fcall_interactively): Revert 2008-03-16 change
13588 for interactive code letters 'b' and 'B'.
13589
135902008-03-29 Eli Zaretskii <eliz@gnu.org>
13591
13592 * fileio.c (Fexpand_file_name): Convert the value of $HOME to a
13593 multibyte string.
13594
135952008-03-29 Stefan Monnier <monnier@iro.umontreal.ca>
13596
13597 * keyboard.c (pending_funcalls): New var.
13598 (timer_check): Run it.
13599 (syms_of_keyboard): Initialize it.
13600 * terminal.c (Qrun_hook_with_args, Qdelete_terminal_functions)
13601 (Vdelete_terminal_functions): New vars.
13602 (syms_of_terminal): Initialize them.
13603 (Fdelete_terminal): Run delete-terminal-functions.
13604 * xdisp.c (safe_eval): Rewrite.
13605 (safe_call2): New fun.
13606 * frame.c (Qdelete_frame_functions): New var.
13607 (syms_of_frame): Initialize it.
13608 (Fdelete_frame): Use it and use safe_call2 and pending_funcalls.
13609 * lisp.h (safe_call2, pending_funcalls): Declare.
13610
136112008-03-28 Andreas Schwab <schwab@suse.de>
13612
13613 * indent.c (Fmove_to_column): Move declaration before statements.
13614
136152008-03-27 Stefan Monnier <monnier@iro.umontreal.ca>
13616
13617 * frame.h (enum fullscreen_type): Give it a name. Move it before use.
13618 (struct frame): Use bit fields for boolean vars.
13619
13620 * process.c (server_accept_connection): Simplify naming.
13621 (emacs_get_tty_pgrp): Use SDATA.
13622
13623 * coding.c (decode_coding_object): Fix last change.
13624
136252008-03-27 Jason Rumney <jasonr@gnu.org>
13626
13627 * w32fns.c (start_hourglass): Suppress hourglass on tty frames.
13628
136292008-03-27 Kenichi Handa <handa@ni.aist.go.jp>
13630
13631 * charset.c (Fdefine_charset_internal): Change the way of
13632 registering charsets in Vcharset_order_list.
13633 (syms_of_charset): Make the charset `eight-bit' supplementary.
13634
136352008-03-26 Alexandre Oliva <aoliva@redhat.com> (tiny change)
13636
13637 * regex.c (EXTEND_BUFFER): Change order of pointer addition
13638 operations, to avoid having the difference between pointers
13639 overflow.
13640
136412008-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
13642
13643 * indent.c (check_display_width): New fun.
13644 (scan_for_column): Use it.
13645
13646 * data.c (syms_of_data): Mark most-positive-fixnum and
13647 most-negative-fixnum as constants.
13648
13649 * xdisp.c (redisplay_internal): Reset selected_frame earlier.
13650
13651 * indent.c (scan_for_column): Extract from current_column_1.
13652 Merge with the same code from Fmove_to_column.
13653 (current_column_1, Fmove_to_column): Use it.
13654
136552008-03-25 Stefan Monnier <monnier@iro.umontreal.ca>
13656
13657 * keymap.c (map_keymap_internal): New fun.
13658 (map_keymap): Use it.
13659 (Fmap_keymap_internal): New fun.
13660 (Fmap_keymap): Remove left-out test from before make_save_value.
13661
13662 * keymap.c (Fmap_keymap): Use `map-keymap-sorted.
13663
13664 * frame.c (Fmodify_frame_parameters, x_set_frame_parameters):
13665 Use XCAR/XCDR.
13666
13667 * process.h (struct Lisp_Process): Remove filter_multibyte.
13668 * process.c (QCfilter_multibyte): Remove.
13669 (setup_process_coding_systems): Don't use filter_multibyte.
13670 (Fstart_process, Fmake_network_process): Don't set filter_multibyte.
13671 (read_process_output): Don't adjust multibyteness to filter_multibyte.
13672 (Fset_process_filter_multibyte): Change the coding-system to
13673 approximate the previous behavior.
13674 (Fprocess_filter_multibyte_p): Get the multibyteness straight from the
13675 coding-system.
13676
13677 * coding.c (decode_coding_object): When not decoding into a buffer,
13678 obey the coding system's preference of (uni|multi)byte.
13679
136802008-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
13681
13682 * casefiddle.c (casify_object): Avoid pathological N^2 worst case if
13683 every char is changed and has a different byte-length.
13684 (Fupcase_word, Fdowncase_word, Fcapitalize_word, operate_on_word):
13685 Fix int -> EMACS_INT.
13686
136872008-03-23 David Hansen <david.hansen@gmx.net>
13688
13689 * dbusbind.c (xd_read_message): Remove extra copying of message
13690 strings. Check for NULL `interface' or `member'.
13691
136922008-03-22 Eli Zaretskii <eliz@gnu.org>
13693
13694 * w32.c (readdir): If FindFirstFile/FindNextFile return in
13695 cFileName a file name that includes `?' characters, use the 8+3
13696 alias in cAlternateFileName instead.
13697
136982008-03-21 Stefan Monnier <monnier@iro.umontreal.ca>
13699
13700 * buffer.c (enlarge_buffer_text): Fix int -> EMACS_INT.
13701
137022008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
13703
13704 * intervals.c (temp_set_point, temp_set_point_both): Use EMACS_INT.
13705 (set_point, set_point_both): Use EMACS_INT. Remove `buffer' arg,
13706 work on current_buffer only instead (that was already the case
13707 for some of the code anyway).
13708 * buffer.h (set_point, set_point_both): Remove buffer arg, use long int.
13709 (temp_set_point, temp_set_point_both): Use EMACS_INT.
13710 (SET_PT, SET_PT_BOTH): Adjust.
13711 * intervals.h (set_point, temp_set_point, set_point_both)
13712 (temp_set_point_both): Remove redundant declarations.
13713
137142008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
13715
13716 * fileio.c (Finsert_file_contents):
13717 * lread.c (Feval_buffer): Use BUF_TEMP_SET_PT.
13718 * buffer.h (BUF_SET_PT): Remove. set_point_both doesn't work right
13719 when buffer != current_buffer anyway.
13720
137212008-03-20 Andreas Schwab <schwab@suse.de>
13722
13723 * callint.c (Fcall_interactively) [case 'B']: Use other-buffer
13724 as default.
13725
137262008-03-19 Jason Rumney <jasonr@gnu.org>
13727
13728 * w32fns.c (hourglass_timer, hourglass_hwnd): New variables.
13729 (syms_of_w32fns): Initialize them.
13730 (HOURGLASS_ID): New constant.
13731 (x_window_to_frame): Don't check hourglass_window.
13732 (w32_wnd_proc) <WM_TIMER>: Handle hourglass_timer.
13733 (w32_wnd_proc) <WM_EXITMENULOOP>: Set pending hourglass cursor.
13734 (w32_wnd_proc) <WM_SETCURSOR>: Set the hourglass or current cursor.
13735 (w32_wnd_proc) <WM_EMACS_SETCURSOR>: Set frame's current_cursor.
13736 Only change the cursor if hourglass is not active.
13737 (Fx_create_frame): Initialize frame's current_cursor.
13738 (hourglass_atimer): Remove.
13739 (hourglass_started): New function.
13740 (start_hourglass, cancel_hourglass, hide_hourglass): Adapt to w32.
13741 (show_hourglass): Adapt to w32, changing argument to frame.
13742
13743 * w32term.h (struct w32_output): Remove hourglass_window.
13744 Add current_cursor.
13745
13746 * eval.c (call_debugger, Fsignal):
13747 * keyboard.c (recursive_edit_1, cmd_error, Ftop_level)
13748 (command_loop_1, Fread_key_sequence, Fread_key_sequence_vector)
13749 (Fexecute_extended_command, cancel_hourglass_unwind):
13750 * minibuf.c (read_minibuf):
13751 * fns.c (Fy_or_n_p): Enable hourglass when HAVE_WINDOW_SYSTEM.
13752
137532008-03-19 Stefan Monnier <monnier@iro.umontreal.ca>
13754
13755 * window.c (run_funs): New fun.
13756 (run_window_configuration_change_hook): Use it to run the buffer-local
13757 and the global part of the hook.
13758
13759 * xdisp.c (format_mode_line_unwind_data): Add window argument.
13760 (unwind_format_mode_line): Restore selected window.
13761 (x_consider_frame_title, Fformat_mode_line): Set selected window.
13762
137632008-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
13764
13765 * editfns.c (Fchar_equal): Check they are valid characters.
13766
13767 * buffer.h (Fbuffer_list): Declare (for use in callint.c).
13768
137692008-03-17 Andreas Schwab <schwab@suse.de>
13770
13771 * regex.c (re_match_2_internal): Properly match raw 8-bit bytes
13772 against a charset.
13773
13774 * lisp.h (Fbuffer_list): Declare.
13775
137762008-03-17 Jan Djärv <jan.h.d@swipnet.se>
d6c952f8 13777
aac0c6e3
MR
13778 * gtkutil.c (free_frame_tool_bar): Only call gtk_container_remove if
13779 handlebox_widget is != 0.
13780
137812008-03-16 Juri Linkov <juri@jurta.org>
13782
13783 * callint.c (Fcall_interactively): For interactive code letters
13784 'b' and 'B' put the buffer list into the list of default "future"
13785 values of the minibuffer.
13786
137872008-03-16 Andreas Schwab <schwab@suse.de>
13788
13789 * keyboard.c (read_key_sequence): Fix downcasing of letters with
13790 modifiers.
13791
13792 * regex.c (re_match_2_internal): Correct matching of a charset
13793 against latin-1 characters.
13794
137952008-03-16 Kenichi Handa <handa@m17n.org>
13796
13797 * coding.c (CHAR_STRING_ADVANCE_NO_UNIFY)
13798 (STRING_CHAR_ADVANCE_NO_UNIFY): New macros.
13799 (coding_alloc_by_making_gap): Fix the way to preserve data in the gap.
13800 (alloc_destination): Fix the 2nd arg to coding_alloc_by_making_gap.
13801 (encode_coding_utf_8): Use CHAR_STRING_ADVANCE_NO_UNIFY instead of
13802 CHAR_STRING_ADVANCE.
13803 (produce_chars): Fix for the case that the source and the
13804 destination are the same buffer. Use CHAR_STRING_ADVANCE_NO_UNIFY
13805 instead of CHAR_STRING_ADVANCE.
13806 (consume_chars): Use STRING_CHAR_ADVANCE_NO_UNIFY instead of
13807 STRING_CHAR_ADVANCE.
13808
138092008-03-15 Andreas Schwab <schwab@suse.de>
13810
13811 * regex.c (re_match_2_internal): Correct matching of eight bit
13812 characters in unibyte strings.
13813
138142008-03-15 Martin Rudalics <rudalics@gmx.at>
13815
13816 * buffer.c (overlays_in, Foverlays_in): Include empty overlays
13817 at end of range when it coincides with the end of the buffer.
13818
138192008-03-14 Eli Zaretskii <eliz@gnu.org>
13820
13821 * dired.c (Ffile_attributes) [WINDOWSNT]: Force inode be positive.
13822
13823 * w32fns.c (globals_of_w32fns, Fx_create_frame): Fix last change.
13824
138252008-03-14 Jason Rumney <jasonr@gnu.org>
13826
13827 * editfns.c (initial_tz): New variable.
13828 (syms_of_editfns): Initialize it.
13829 (Fset_time_zone_rule): Set it when first called.
13830 Use it when TZSTRING is nil.
13831
13832 * w32fns.c (MONITOR_DEFAULT_TO_NEAREST, struct MONITOR_INFO)
13833 (MonitorFromPoint_Proc, GetMonitorInfo_Proc): New definitions.
13834 (monitor_from_point_fn, get_monitor_info_fn): New globals.
13835 (globals_of_w32fns): Initialize them.
13836 (compute_tip_xy): Use them to position tooltips.
13837
138382008-03-14 Glenn Morris <rgm@gnu.org>
13839
13840 * emacs.c (main): Revert previous change.
13841 (standard_args): Revert -internal-script back to -scriptload,
13842 and remove the long-option form.
13843
138442008-03-13 Glenn Morris <rgm@gnu.org>
13845
13846 * emacs.c (main, standard_args): Rename -scriptload to -internal-script.
13847 Remove option -enable-font-backend.
13848
138492008-03-12 Stefan Monnier <monnier@iro.umontreal.ca>
13850
13851 * buffer.c (Fswitch_to_buffer): Fall back on pop-to-buffer.
13852
138532008-03-11 Jan Djärv <jan.h.d@swipnet.se>
13854
13855 * xterm.c (x_connection_closed): For GTK: If this is the last
13856 terminal just exit without closing the display.
13857
138582008-03-11 Jason Rumney <jasonr@gnu.org>
13859
13860 * w32font.c (w32font_full_name): Use floor to round.
13861
f0131492 138622008-03-10 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
aac0c6e3
MR
13863
13864 * sound.c (alsa_configure): Declare vol at beginning of block.
13865
13866 * fontset.c (Ffontset_info): Remove extra semicolon.
13867
138682008-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
13869
13870 * fileio.c (Fsubstitute_in_file_name): Fix up computation of maximum
13871 size of resulting string.
13872
138732008-03-10 Jason Rumney <jasonr@gnu.org>
13874
13875 * dispnew.c (adjust_glyph_matrix): Initialize window_height.
13876
138772008-03-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13878
13879 * xdisp.c (handle_single_display_spec): Undo 2007-10-16 changes.
13880 Don't pretend as if characters with display property haven't been
13881 consumed for string-replacing-string case.
13882
138832008-03-08 Kim F. Storm <storm@cua.dk>
13884
13885 * xdisp.c (GET_NEXT_DISPLAY_ELEMENT): New macro.
13886 (get_next_display_element, next_element_from_string)
13887 (next_element_from_ellipsis, next_element_from_buffer): Use it.
13888
138892008-03-08 Andreas Schwab <schwab@suse.de>
13890
13891 * process.h (struct Lisp_Process): Declare bit fields as unsigned.
13892
138932008-03-06 Jason Rumney <jasonr@gnu.org>
13894
13895 * w32font.c (w32_registry): Take font_type argument. Use ANSI
13896 when charset not specified. Only translate ANSI to unicode when
13897 font_type is truetype.
13898 (w32font_coverage_ok): New function.
13899 (add_font_entity_to_list): Use it to filter unsuitable fonts.
13900
139012008-03-05 Kenichi Handa <handa@ni.aist.go.jp>
13902
13903 * lread.c (Fread_char): Resolve modifiers.
13904 (Fread_char_exclusive): Likewise.
13905
13906 * character.c (char_resolve_modifier_mask): New function.
13907 (char_string): Use char_resolve_modifier_mask.
13908 (Fchar_resolve_modifiers): New function.
13909 (syms_of_character): Declare Fchar_resolve_modifiers as Lisp
13910 function.
13911
139122008-03-04 Jason Rumney <jasonr@gnu.org>
13913
13914 * makefile.w32-in: Always include w32font.c in the build.
13915 * w32font.c: Wrap in USE_FONT_BACKEND conditional.
13916
139172008-03-04 Andreas Schwab <schwab@suse.de>
13918
13919 * Makefile.in (clean): Remove emacs-*.*.* instead of emacs-*.
13920 (versionclean): Likewise.
13921
139222008-03-04 Juanma Barranquero <lekktu@gmail.com>
13923
13924 * .cvsignore: Add oo.
13925
139262008-03-03 Andreas Schwab <schwab@suse.de>
13927
13928 * coding.c (decode_coding_object): Inhibit gap shrinking while
13929 decoding in place.
13930
139312008-03-03 Dan Nicolaescu <dann@ics.uci.edu>
13932
13933 * w32term.c: Remove unused include "gnu.h".
13934 * makefile.w32-in (w32term.o): Don't depend on gnu.h.
13935
13936 * gnu.h: Rename to ...
13937 * emacs-icon.h: ... this.
13938 * xterm.c: Use emacs-icon.h instead of gnu.h.
13939 * Makefile (xterm.o): Depend on emacs-icon.h, not gnu.h.
13940
139412008-03-03 Juanma Barranquero <lekktu@gmail.com>
13942
13943 * w32font.c: Include math.h.
13944
139452008-03-03 Jason Rumney <jasonr@gnu.org>
13946
13947 * w32font.c (recompute_cached_metrics): Change font arg to w32font_info.
13948 Compute options separately.
13949 (w32font_open_internal): Set glyph_idx before caching metrics.
13950
13951 * w32font.h (NTM_PS_OPENTYPE, NTM_TT_OPENTYPE, NTM_TYPE1):
13952 Define if system headers don't.
13953 (struct w32font_info): Enlarge ascii_metrics. Add glyph_idx.
13954 (w32font_encode_char): Don't declare here.
13955
13956 * w32font.c (Quniscribe, QCformat): New symbols.
13957 (syms_of_w32font): Define them.
13958 (w32font_has_char): Indicate uncertainty.
13959 (w32font_encode_char): Encode as glyph point. Make static.
13960 (recompute_cached_metrics): New function.
13961 (w32font_open_internal): Use it. Set font to use glyph points
13962 initially. Set format based on type of font.
13963 (w32font_text_extents, w32font_draw): Optionally use glyph points.
13964 (w32_enumfont_pattern_entity): Accept backend arg. Set type based
13965 on it. Set format based on information available here.
13966 (add_font_entity_to_list): Identify backend based on opentype_only.
13967
139682008-03-02 Andreas Schwab <schwab@suse.de>
13969
13970 * ftfont.c (ftfont_pattern_entity): Fix aliasing violations.
13971
13972 * coding.c (decode_coding_big5, produce_chars):
13973 Fix typos in last change.
13974
139752008-03-02 Kentaro Ohkouchi <nanasess@fsm.ne.jp>
13976
13977 * gnu.h: New icon.
13978
139792008-03-02 Kenichi Handa <handa@m17n.org>
13980
13981 * coding.c (decode_coding_utf_8): When eol-type of CODING is
13982 `dos', don't decode '\r' if that is the last in the source.
13983 (decode_coding_utf_16, decode_coding_emacs_mule)
13984 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
13985 (decode_coding_raw_text, decode_coding_charset): Likewise.
13986 (produce_chars): Don't decode EOL here. Use EMACS_INT.
13987
139882008-03-01 Jason Rumney <jasonr@gnu.org>
13989
13990 * w32font.c (w32font_full_name): Report point size for scalable fonts.
13991
139922008-03-01 Kim F. Storm <storm@cua.dk>
13993
13994 * dispextern.h (CHAR_GLYPH_SPACE_P): Check for default face.
13995
139962008-03-01 Jason Rumney <jasonr@gnu.org>
13997
13998 * w32font.c (w32font_full_name): New function.
13999 (w32font_open_internal): Use it.
14000
140012008-03-01 Kim F. Storm <storm@cua.dk>
14002
14003 * dispnew.c (line_draw_cost): Fix invalid glyph check.
14004
140052008-03-01 Jason Rumney <jasonr@gnu.org>
14006
14007 * font.c (font_unparse_fcname): Increase len when style is a symbol.
14008
140092008-03-01 Jan Djärv <jan.h.d@swipnet.se>
14010
14011 * xterm.c (handle_one_xevent): For Gtk+ and ConfigureNotify, call
14012 xg_frame_resized when the event is for the edit widget.
14013
14014 * gtkutil.h (xg_frame_resized): Renamed from xg_resize_widgets.
14015
14016 * gtkutil.c (xg_resize_outer_widget): Only do one of set_geometry or
14017 set_char_size.
14018 (xg_frame_resized): Renamed from xg_resize_widgets. Remove all
14019 operations on widgets here. Just set frame size if needed.
14020 (flush_and_sync, x_wm_size_hint_off, xg_pack_tool_bar): New functions.
14021 (xg_frame_set_char_size): Call x_wm_size_hint_off before resizing.
14022 (x_wm_set_size_hint): Set size hints on the edit widget only, not
14023 the whole frame.
14024 (xg_create_tool_bar): Move attachment of the tool bar to
14025 xg_pack_tool_bar. Do not attach the tool bar if there are no items.
14026 (free_frame_tool_bar): Remove call to SET_FRAME_GARBAGED.
14027
140282008-03-01 Jason Rumney <jasonr@gnu.org>
14029
14030 * w32fns.c (w32_msg_pump): Disable debug code.
14031
140322008-03-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14033
14034 * m/intel386.h [MAC_OSX || DARWIN]: Define NO_ARG_ARRAY if _LP64.
14035
140362008-02-29 Chong Yidong <cyd@stupidchicken.com>
14037
14038 * xdisp.c (next_overlay_string): Don't set
14039 overlay_strings_at_end_processed_p if we're currently reading from
14040 a display string.
14041
140422008-02-29 Stefan Monnier <monnier@iro.umontreal.ca>
14043
14044 * xdisp.c (get_overlay_strings_1): Fix typo.
14045
140462008-02-29 Chong Yidong <cyd@stupidchicken.com>
14047
14048 * xdisp.c (get_overlay_strings_1): Add missing argument type.
14049
140502008-02-28 Kenichi Handa <handa@ni.aist.go.jp>
14051
14052 * ftfont.c (ftfont_match): Explicitly set pixelsize in pattern.
14053
14054 * xdisp.c (display_mode_element): Cancel the previous change.
14055 (decode_mode_spec): Likewise.
14056 (handle_auto_composed_prop): Don't make composition if it->string
14057 is a string.
14058
140592008-02-27 Kim F. Storm <storm@cua.dk>
14060
14061 * lisp.h (GLYPH): Change type from int to struct with separate char
14062 and face_id members.
14063 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Delete macros.
14064 (GLYPH_CHAR, GLYPH_FACE): Remove slow versions with frame arg.
14065 (FAST_GLYPH_CHAR, FAST_GLYPH_FACE): Rename macros to ...
14066 (GLYPH_CHAR, GLYPH_FACE): ... these. Change users.
14067 (FAST_MAKE_GLYPH, MAKE_GLYPH): Remove. Rewrite users to use ...
14068 (SET_GLYPH, SET_GLYPH_CHAR, SET_GLYPH_FACE): ... these macros instead.
14069 (GLYPH_CODE_CHAR, GLYPH_CODE_FACE, GLYPH_CODE_P)
14070 (GLYPH_CODE_CHAR_VALID_P, SET_GLYPH_FROM_GLYPH_CODE): New macros to
14071 handle new Lisp glyph code encoding, either an integer or a cons.
14072
14073 * disptab.h (GLYPH_SIMPLE_P): Rewrite.
14074 (GLYPH_ALIAS): Delete.
14075 (GLYPH_ALIAS_P, GLYPH_FOLLOW_ALIASES): Rewrite.
14076 (GLYPH_LENGTH, GLYPH_STRING): Use GLYPH_CHAR.
14077 (GLYPH_FROM_CHAR): Replace macro by ...
14078 (SET_GLYPH_FROM_CHAR): ... this macro. Change users.
14079
14080 * dispextern.h (CHAR_GLYPH_SPACE_P): Simplify.
14081 (GLYPH_FROM_CHAR_GLYPH): Replace macro by ...
14082 (SET_GLYPH_FROM_CHAR_GLYPH): ... this macro. Change users.
14083 (GLYPH_INVALID_P): New macro.
14084 (spec_glyph_lookup_face): Update prototype.
14085
14086 * dispnew.c (line_draw_cost): Adapt to new glyph type.
14087 (build_frame_matrix_from_leaf_window): Adapt to new glyph type and
14088 new glyph code encoding.
14089 (spec_glyph_lookup_face): No return value; update passed glyph instead.
14090 (init_display): Use SET_CHAR_GLYPH to initialize space_glyph.
14091
14092 * xdisp.c (get_next_display_element, next_element_from_display_vector):
14093 Adapt to new glyph type and new glyph code encoding.
14094
14095 * term.c (encode_terminal_code, produce_special_glyphs): Likewise.
14096
14097 * indent.c (current_column, current_column_1, Fmove_to_column)
14098 (compute_motion): Adapt to new glyph code encoding.
14099
14100 * msdos.c (IT_write_glyphs): Adapt to new glyph type.
14101
141022008-02-27 Chong Yidong <cyd@stupidchicken.com>
14103
14104 * process.c (wait_reading_process_output): Check for window
14105 changes caused by timers.
14106 Suggested by Johan Bockgård.
14107
141082008-02-27 Glenn Morris <rgm@gnu.org>
14109
14110 * emacs.c (USAGE1): Add `--disable-font-backend'.
14111
141122008-02-27 Stefan Monnier <monnier@iro.umontreal.ca>
14113
14114 * fileio.c (Finsert_file_contents): Don't reset undo_list if no change
14115 is made to the buffer.
14116
141172008-02-26 Stefan Monnier <monnier@iro.umontreal.ca>
14118
14119 * dispextern.h (face_at_buffer_position, face_for_overlay_string)
14120 (face_at_string_position):
14121 * xfaces.c (face_at_buffer_position, face_for_overlay_string)
14122 (face_at_string_position):
14123 * xdisp.c (display_string, next_overlay_change):
14124 * buffer.h (overlays_at):
14125 * buffer.c (overlays_at): Use EMACS_INT for buffer positions.
14126 Update callers.
14127
141282008-02-26 Chong Yidong <cyd@stupidchicken.com>
14129
14130 * editfns.c (Fformat): Doc fix.
14131
141322008-02-26 Juanma Barranquero <lekktu@gmail.com>
14133
14134 * font.c (Ffont_spec, Ffont_at): Fix typos in docstrings.
14135 (Ffont_put, Flist_families, Ffont_fill_gstring, Ffont_drive_otf)
14136 (Ffont_otf_alternates, Fquery_font): Doc fixes.
14137
141382008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
14139
14140 * buffer.c (Fbuffer_swap_text): New function.
14141 (syms_of_buffer): Defsubr it.
14142
141432008-02-25 Chong Yidong <cyd@stupidchicken.com>
14144
14145 * keyboard.c (command_loop_1): Revert 2006-10-09 change.
14146
141472008-02-25 Jason Rumney <jasonr@gnu.org>
14148
14149 * w32font.c (w32font_draw): Draw one character at a time when padding.
14150
141512008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
14152
14153 * window.c (Fdelete_window, Fadjust_window_trailing_edge):
14154 Handle a nil arg. Use run_window_configuration_change_hook.
14155 (delete_window, adjust_window_trailing_edge): Don't handle nil any more.
14156 (Fenlarge_window, Fshrink_window, Fset_window_configuration):
14157 Use run_window_configuration_change_hook.
14158
141592008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
14160
14161 * xdisp.c (x_produce_glyphs): For a visible glyph, assure at least
14162 1-pixel width.
14163
141642008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
14165
14166 * xdisp.c (fill_glyph_string): Pay attention to glyph->padding_p.
14167 (append_glyph): Set glyph->pixel_width and glyph->padding_p to 1
14168 if the glyph in the font is zero pixel with.
14169
14170 * dispextern.h (struct glyph_string): New member padding_p.
14171
14172 * w32font.c (w32font_draw): Pay attention to s->padding_p.
14173
14174 * ftxfont.c (ftxfont_draw): Pay attention to s->padding_p.
14175
14176 * xfont.c (xfont_draw): Pay attention to s->padding_p.
14177
14178 * xftfont.c (xftfont_draw): Pay attention to s->padding_p.
14179
14180 * font.c: If the font driver doesn't have `shape' function, return Qnil.
14181
141822008-02-25 Jason Rumney <jasonr@gnu.org>
14183
14184 * w32fns.c (enum_font_cb2): Don't use raster fonts for Unicode.
14185
141862008-02-24 Stefan Monnier <monnier@iro.umontreal.ca>
14187
14188 Allow fine-grained image-cache flushing.
14189 * dispextern.h (struct image): Add `dependencies' field.
14190 (clear_image_caches): Change arg to Lisp_Object.
14191 * image.c (make_image): Initialize `dependencies' field.
14192 (clear_image_cache): Change arg to allow fine-grained flushing.
14193 Perform the flush even if image-cache-eviction-delay is nil.
14194 (clear_image_caches): Change arg to Lisp_Object.
14195 (Fclear_image_cache): Expand meaning of the argument.
14196 (mark_image): Mark `dependencies' field.
14197 * xfaces.c (clear_face_cache): Adapt arg to call to clear_image_caches.
14198 (lface_hash): Use XHASH rather than XFASTINT.
14199 (face_at_buffer_position): Fix int -> EMACS_INT position.
14200 * xdisp.c (next_overlay_change): Fix int -> EMACS_INT position.
14201 (select_frame_for_redisplay): Remove code duplication.
14202 (redisplay_internal): Adapt arg to call to clear_image_caches.
14203
142042008-02-24 Dan Nicolaescu <dann@ics.uci.edu>
14205
14206 * s/vms4-0.h:
14207 * s/vms4-2.h:
14208 * s/vms4-4.h:
14209 * s/vms5-5.h: Remove, unused.
14210
14211 * s/irix5-2.h:
14212 * s/irix6-0.h:
14213 * s/riscos5.h:
14214 * s/mach-bsd4-3.h:
14215 * m/mips4.h: Remove files for obsolete systems.
14216
14217 * Makefile.in:
14218 * filelock.c:
14219 * unexmips.c:
14220 * m/hp9000s300.h:
14221 * m/iris4d.h:
14222 * s/aix3-1.h:
14223 * s/hpux.h:
14224 * s/msdos.h:
14225 * s/usg5-0.h:
14226 * s/usg5-2-2.h:
14227 * s/usg5-2.h:
14228 * s/usg5-3.h: Remove references to obsolete variables.
14229
14230 * s/irix5-0.h: Remove, move all the contents ...
14231 * s/irix6-5.h: ... here. Simplify.
14232 * config.in: Regenerate.
14233
142342008-02-24 Jason Rumney <jasonr@gnu.org>
14235
14236 * w32term.c (x_draw_glyph_string_background): Clear the background
14237 manually when cleartype is in use.
14238 (x_draw_glyph_string_foreground): Draw text transparently when
14239 cleartype is in use.
14240
14241 * w32font.c (w32font_text_extents): Avoid getting HDC and selecting
14242 a font into it unless we have to.
14243
142442008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
14245
14246 * intervals.h (INT_LISPLIKE): Remove. It may misfire.
14247 (NULL_INTERVAL_P, SET_INTERVAL_PARENT): Don't use it.
d6c952f8 14248
aac0c6e3
MR
142492008-02-18 Jason Rumney <jasonr@gnu.org>
14250
14251 * w32fns.c (Fw32_shell_execute): Encode parameters.
14252
142532008-02-09 Eli Zaretskii <eliz@gnu.org>
14254
14255 * fileio.c (syms_of_fileio) <insert-default-directory>: Doc fix.
14256
142572008-02-05 Juanma Barranquero <lekktu@gmail.com>
14258
14259 * unexhp9k800.c (read_header): Replace `legal' with `valid'.
14260
142612008-02-24 Ulrich Neumerkel <ulrich@complang.tuwien.ac.at> (tiny change)
14262
14263 * xterm.c (x_set_offset): Don't change the gravity if
14264 CHANGE_GRAVITY is -1.
14265
142662008-02-23 Chong Yidong <cyd@stupidchicken.com>
14267
14268 * fileio.c (auto_save_error_occurred): New var.
14269 (auto_save_error): Set it.
14270 (Fdo_auto_save): Don't overwrite the error message if an auto-save
14271 error occurred.
14272
142732008-02-23 Eli Zaretskii <eliz@gnu.org>
14274
14275 * w32.c (globals_of_w32): Add initializations for
14276 g_b_init_get_sid_sub_authority and
14277 g_b_init_get_sid_sub_authority_count.
14278
142792008-02-22 Stefan Monnier <monnier@iro.umontreal.ca>
14280
14281 * font.c (font_match_xlfd, font_check_xlfd_parse): New funs.
14282 (font_parse_xlfd): Use them for sanity check.
14283 (Finternal_set_font_style_table): Make sure the table is bijective.
14284
14285 Consolidate the image_cache to the terminal struct.
14286 * termhooks.h (P_): Remove redundant def.
14287 (struct terminal): New field `image_cache'.
14288 * frame.h (FRAME_IMAGE_CACHE): New macro. Use it everywhere in place
14289 of FRAME_X_IMAGE_CACHE.
14290 * xterm.h (struct x_display_info): Remove image_cache field.
14291 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
14292 * w32term.h (struct w32_display_info): Remove image_cache field.
14293 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
14294 * macterm.h (struct mac_display_info): Remove image_cache field.
14295 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
14296 * xterm.c (x_term_init):
14297 * w32term.c (w32_term_init):
14298 * macterm.c (mac_term_init): Set the image_cache in the terminal.
14299 * dispextern.h (clear_image_cache, forall_images_in_image_cache):
14300 Remove declarations.
14301 (clear_image_caches, mark_image_cache): New declarations.
14302 * xfaces.c (clear_face_cache):
14303 * xdisp.c (redisplay_internal): Use clear_image_caches.
14304 * image.c (clear_image_cache): Don't check that a frame is on
14305 a window-system before checking if it shares the same cache.
14306 (clear_image_caches): New function.
14307 (Fclear_image_cache): Use it.
14308 (mark_image): Move from allo.c.
14309 (mark_image_cache): Move from alloc.c and forall_images_in_image_cache.
14310 * alloc.c (mark_image, mark_image_cache): Move to image.c.
14311 (mark_object): Don't call mark_image_cache for frames.
14312 (mark_terminals): Call mark_image_cache.
14313
14314 * lisp.h (Fdelete_terminal): Declare.
14315
14316 * charset.h (CHECK_CHARSET, CHECK_CHARSET_GET_ID)
14317 (CHECK_CHARSET_GET_ATTR): Don't use the inexistent return value of
14318 wrong_type_argument.
14319
143202008-02-22 Kenichi Handa <handa@ni.aist.go.jp>
14321
14322 * Makefile.in (lisp): Remove devanagari.el, kannada.el,
14323 malayalam.el, and tamil.el. Add sinhala.el.
14324
143252008-02-21 Stefan Monnier <monnier@iro.umontreal.ca>
14326
14327 * xterm.c (x_connection_closed): Consolidate identical tests.
14328 (x_delete_terminal): Don't crash if called via x_connection_closed.
14329
143302008-02-21 Kenichi Handa <handa@ni.aist.go.jp>
14331
14332 * xdisp.c (decode_mode_spec): New arg string.
14333 (display_mode_element): Adjust for the above change.
14334
143352008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
14336
14337 * callint.c (Fcall_interactively): Use AREF.
14338
143392008-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
14340
14341 * font.c (font_unparse_xlfd): Don't ignore integer pixel size specs.
14342
143432008-02-18 Jan Djärv <jan.h.d@swipnet.se>
14344
14345 * xfns.c (Fx_show_tip): Set string to " " if empty.
14346
143472008-02-17 Dan Nicolaescu <dann@ics.uci.edu>
14348
14349 * callint.c (syms_of_callint): Initialize Vmark_even_if_inactive
14350 with Qt.
14351
143522008-02-17 Kenichi Handa <handa@m17n.org>
14353
14354 * ftfont.c (ftfont_shape): Return Lispy number.
14355
14356 * xfaces.c (prepare_face_for_display): Use display_info->font->fid
14357 for GCs.
14358 (Finternal_set_font_selection_order): Call font_update_sort_order
14359 only when enable_font_backend is set.
14360 (realize_x_face): Set face->font_info to that of default face only
14361 when enable_font_backend is set.
14362
14363 * xdisp.c (handle_composition_prop): Set it->c to the fist
14364 character of the composed region.
14365 (fill_composite_glyph_string): Set base_face->font_info to
14366 s->font_info. Get a face for ascii from base_face->ascii_face.
14367 (BUILD_COMPOSITE_GLYPH_STRING): Call fill_composite_glyph_string
14368 with a face already decided.
14369 (x_produce_glyphs): Be sure to set it->ascent and it->descent to
14370 non-negative.
14371 (x_produce_glyphs): If the composition method is ..._WITH_GLYPH_STRING,
14372 call font_prepare_composition unconditionally.
14373
14374 * xfns.c (x_make_gc): Use the default font id of the frame for GCs.
14375
14376 * xterm.h (struct x_display_info): New member font.
14377
14378 * xterm.c (x_set_cursor_gc): Use display_info->font->fid for GCs.
14379 (x_set_mouse_face_gc, x_new_font): Likewise.
14380 (x_term_init): Setup display_info->font.
14381 (x_delete_terminal): Free display_info->font.
14382
14383 * xfont.c (xfont_draw): Use BLOCK_INPUT and UNBLOCK_INPUT.
14384
14385 * ftxfont.c (ftxfont_default_fid): Delete it.
14386 (ftxfont_open): Set xfont->fid to 0.
14387 (ftxfont_end_for_frame): Clear data specific to the frame and the
14388 font-driver.
14389
14390 * xftfont.c (xftfont_default_fid): Delete it.
14391 (xftfont_open): Set xfont->fid to 0.
14392
14393 * fontset.c (FONTSET_OBJLIST): New macro.
14394 (fontset_find_font): Update font-object list of the fontset.
14395 (free_realized_fontset): New function.
14396 (free_face_fontset): Call free_realized_fontset.
14397 (Ffont_info): Call font_close_object only when enable_font_backend
14398 is set.
14399
14400 * font.c [HAVE_X_WINDOWS]: Include xterm.h.
14401 [HAVE_NTGUI]: Include w32term.h.
14402 [MAC_OS]: Include macterm.ch.
14403 (font_otf_ValueRecord): Use make_number.
14404 (font_finish_cache): Fix handling of reference count.
14405 (font_clear_cache): Update num_fonts.
14406 (font_open_entity): Update smallest_char_width and
14407 smallest_font_height of the frame.
14408 (font_close_object): Update num_fonts.
14409 (Fclear_font_cache): Fix finding the target cache data.
14410
144112008-02-16 Glenn Morris <rgm@gnu.org>
14412
14413 * fontset.c (Finternal_char_font): Fix compilation warning.
14414
144152008-02-16 Eli Zaretskii <eliz@gnu.org>
14416
14417 * w32.c (init_user_info): Use TOKEN_USER and TOKEN_PRIMARY_GROUP
14418 instead of char arrays. Enlarge the size of array passed to
14419 get_token_information.
14420
14421 * font.c (Ffont_fill_gstring, Fget_font_glyphs): Fix compilation
14422 warnings.
14423
144242008-02-15 Dan Nicolaescu <dann@ics.uci.edu>
14425
14426 * .gdbinit: Don't set `args', it breaks gdb --args.
14427
144282008-02-14 Stefan Monnier <monnier@iro.umontreal.ca>
14429
14430 * fileio.c (Finsert_file_contents): Adjust offsets when replacing
14431 within a narrowed buffer.
14432
144332008-02-14 Kenichi Handa <handa@ni.aist.go.jp>
14434
14435 * coding.c (decode_coding_object, encode_coding_object):
14436 Preserve Vdeactivate_mark. Delete unnecessary call of Fcurrent_buffer.
14437
144382008-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
14439
14440 * coding.c (coding_set_destination): Use BEG_BYTE rather than
14441 hardcoding 1.
14442 (detect_coding_system):
14443 * lisp.h (detect_coding_system, chars_in_text, multibyte_chars_in_text)
14444 (string_char_to_byte, string_byte_to_char, insert_from_gap):
14445 * insdel.c (insert_from_gap):
14446 * fns.c (string_char_byte_cache_charpos, string_char_byte_cache_bytepos)
14447 (string_char_to_byte, string_byte_to_char, string_make_multibyte)
14448 (string_to_multibyte):
14449 * character.c (chars_in_text, multibyte_chars_in_text):
14450 * fileio.c (Finsert_file_contents): Use EMACS_INT for buffer positions.
14451
14452 * character.h (FETCH_STRING_CHAR_ADVANCE)
14453 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE)
14454 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA and SREF.
14455 (DEC_POS, BUF_DEC_POS): Use BEG_BYTE rather than hardcoding 1.
14456
14457 * casefiddle.c (casify_region): Only call after-change and composition
14458 functions on the part of the region that was changed.
14459
14460 * keyboard.c (read_avail_input):
14461 * frame.c (Fdelete_frame): Call Fdelete_terminal.
14462
144632008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
14464
14465 * buffer.c (clone_per_buffer_values, reset_buffer_local_variables)
14466 (Fbuffer_local_value, Fbuffer_local_variables): Don't forget undo_list.
14467
144682008-02-11 Juanma Barranquero <lekktu@gmail.com>
14469
14470 * w32menu.c (push_submenu_start, push_submenu_end)
14471 (push_left_right_boundary, push_menu_pane, push_menu_item):
14472 * keyboard.c (read_key_sequence): Don't pass args with side effects
14473 to AREF, it fails when compiling with -DENABLE_CHECKING.
14474
144752008-02-11 Kenichi Handa <handa@ni.aist.go.jp>
14476
14477 * Makefile.in (${lispsource}international/charprop.el):
14478 Delete this target.
14479
14480 * search.c (boyer_moore): Fix incorrect synching of the trunk and
14481 emacs-unicode-2.
14482
144832008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
14484
14485 * terminal.c (Fdelete_terminal): Clean up the `force' path.
14486
144872008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
14488
14489 * frame.c (Qnoelisp): New symbol.
14490 (syms_of_frame): Initialize it.
14491 (Fdelete_frame): Use it to distinguish a mere `force' passed from some
14492 harmless Elisp code, from a strong `force' from x_connection_closed.
14493 * frame.h (Qnoelisp): Declare.
14494 * xterm.c (x_connection_closed): Pass `noelisp'.
14495
14496 * lisp.h (struct Lisp_Misc_Any, struct Lisp_Marker)
14497 (struct Lisp_Overlay, struct Lisp_Kboard_Objfwd)
14498 (struct Lisp_Save_Value, struct Lisp_Free): Use enum Lisp_Misc_Type
14499 rather than `int' for the type of `type'.
14500
145012008-02-10 Dan Nicolaescu <dann@ics.uci.edu>
14502
14503 * s/gnu-linux.h: Remove support for non-ELF and linux-1.x.
14504
14505 * Makefile.in (GNUC): Remove support for gcc-1.x.
14506
145072008-02-10 Richard Stallman <rms@gnu.org>
14508
14509 * lisp.h (ASET): Use AREF, not ASLOT.
14510
145112008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
14512
14513 * lisp.h (ASET): Check bounds.
14514
145152008-02-10 Glenn Morris <rgm@gnu.org>
14516
14517 * buffer.c (mode-name): Doc fix.
14518
145192008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
14520
14521 * Makefile.in:
14522 * emacs.c:
14523 * gmalloc.c:
14524 * keyboard.c:
14525 * lisp.h:
14526 * m/ibm370aix.h:
14527 * process.c:
14528 * regex.c:
14529 * s/hpux.h:
14530 * sysdep.c:
14531 * sysselect.h:
14532 * systty.h:
14533 * unexec.c:
14534 * w32term.c:
14535 * xsmfns.c:
14536 * xterm.c: Remove code that deals with obsolete variables.
14537
14538 * s/msdos.h (DONT_NEED_ENVIRON): Don't define.
14539
14540 * ecrt0.c: Replace the DONT_NEED_ENVIRON test with MSDOS test,
14541 nothing else needs it anymore.
14542
145432008-02-09 Eli Zaretskii <eliz@gnu.org>
14544
14545 * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use unibyte_to_multibyte_table
14546 instead of unibyte_char_to_multibyte.
14547
145482008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
14549
14550 * s/gnu-linux.h: Remove commented out code.
14551
14552 * unexec.c: Remove references to obsolete variable COFF_ENCAPSULATE.
14553
14554 * Makefile.in: Update what RMS says about using autoconf.
14555 (C_COMPILER, COFF_ENCAPSULATE, MAKE_PARALLEL): Remove obsolete variable.
14556 (C_SWITCH_MACHINE_1, C_SWITCH_SYSTEM_1, C_SWITCH_SITE_1)
14557 (C_SWITCH_X_SITE_1, C_SWITCH_X_MACHINE_1)
14558 (C_SWITCH_X_SYSTEM_1): Move invariant code outside conditional.
14559
145602008-02-08 Stefan Monnier <monnier@iro.umontreal.ca>
14561
14562 * keymap.c (Fkey_description): Move side effect outside of macro call.
14563
14564 * xfaces.c (Finternal_make_lisp_face):
14565 * keyboard.c (add_command_key, parse_menu_item): Use ASET.
14566
14567 * fontset.c (free_face_fontset): Use FONTSET_FROM_ID.
14568 (syms_of_fontset): Use ASET.
14569
14570 * fns.c (concat): Move side effect outside of macro call.
14571 (hash_clear): Use ASET.
14572
145732008-02-08 Richard Stallman <rms@gnu.org>
14574
14575 * frame.c (Fdelete_frame): If FORCE, don't call hooks.
14576 If FORCE, and frame has a surrogate minibuffer for another frame,
14577 delete the other frame first.
14578
145792008-02-07 Timo Savola <timo.savola@iki.fi>
14580
14581 * xterm.c (x_detect_focus_change): Handle embed client message.
14582 (handle_one_xevent): Ditto.
14583 (handle_one_xevent): If embedded and we get a button press/release,
14584 request focus.
14585 (xembed_set_info, xembed_send_message): New functions.
14586 (x_make_frame_visible): Call xembed_set_info if embedded.
14587 (x_make_frame_invisible): Call xembed_set_info if embedded.
14588 (x_term_init): Initialize Xatom_XEMBED.
14589 (x_make_frame_visible): Check for FRAME_X_EMBEDDED_P also.
14590 (x_iconify_frame): Ditto.
14591
14592 * xterm.h (struct x_display_info): Add AtomXatom_XEMBED.
14593 (enum xembed_info, enum xembed_message, enum xembed_focus)
14594 (enum xembed_modifier, enum xembed_accelerator): New.
14595 (xembed_set_info, xembed_send_message): Declare.
14596 (FRAME_X_EMBEDDED_P): New.
14597
14598 * gtkutil.c (xg_create_frame_widgets): If frame is embedded, call
14599 gtk_plug_new.
14600
14601 * xfns.c (Fx_create_frame): Do not override the explicitly set parent
14602 window ID of a frame.
14603 (x_window): Reparent frame if embedded.
14604 (Fx_create_frame): Don't set border width if embedded.
14605
14606 * emacs.c (USAGE3): Add --parent-id.
14607 (standard_args): Ditto.
14608
146092008-02-07 Jan Djärv <jan.h.d@swipnet.se>
14610
14611 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): Use "do...while (0)".
14612
146132008-02-07 Jim Meyering <meyering@redhat.com>
14614
14615 Use "do...while (0)", not "if (1)...else" in macro definitions.
14616 The latter provokes a warning from gcc about the empty else, when
14617 followed by ";". Also, without that trailing semicolon, it would
14618 silently swallow up any following statement.
14619 * syntax.h (SETUP_SYNTAX_TABLE)
14620 (SETUP_SYNTAX_TABLE_FOR_OBJECT): Likewise.
14621 * buffer.h (DECODE_POSITION): Likewise.
14622 * character.h (FETCH_STRING_CHAR_ADVANCE): Likewise.
14623 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): Likewise.
14624 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Likewise.
14625 (FETCH_CHAR_ADVANCE): Likewise.
14626 (FETCH_CHAR_ADVANCE_NO_CHECK): Likewise.
14627
146282008-02-07 Jim Meyering <meyering@redhat.com>
14629
14630 * lread.c [lint]: Don't include <sys/inode.h>.
14631
146322008-02-07 Stefan Monnier <monnier@iro.umontreal.ca>
14633
14634 * xselect.c (x_handle_dnd_message):
14635 * xmenu.c (digest_single_submenu, xmenu_show):
14636 * xdisp.c (with_echo_area_buffer_unwind_data)
14637 (format_mode_line_unwind_data, unwind_format_mode_line)
14638 (display_menu_bar):
14639 * eval.c (Ffetch_bytecode):
14640 * doc.c (store_function_docstring):
14641 * ccl.c (resolve_symbol_ccl_program, ccl_get_compiled_code)
14642 (Fccl_execute, Fccl_execute_on_string, Fregister_code_conversion_map):
14643 * buffer.c (add_overlay_mod_hooklist): Use ASET.
14644
146452008-02-07 Kenichi Handa <handa@m17n.org>
14646
14647 * ftxfont.c (ftxfont_open): Don't set
14648 dpyinfo->smallest_font_height and dpyinfo->smallest_char_width to 0.
14649
14650 * ftfont.c (ftfont_open): Fix previous change.
14651
146522008-02-06 Jason Rumney <jasonr@gnu.org>
14653
14654 * w32font.c (w32font_text_extents): Fill in lbearing metric.
14655 Use cached metrics for ASCII characters.
14656 (w32font_open_internal): Don't set font's owning_frame.
14657 Cache metrics for ASCII characters.
14658
14659 * w32font.h (struct w32font_info): Add ascii_metrics.
14660 Remove owning_frame.
14661
146622008-02-06 Kenichi Handa <handa@ni.aist.go.jp>
14663
14664 * xdisp.c (x_produce_glyphs): Don't set it->ascent and it->descent
14665 to negative value.
14666
14667 * ftxfont.c (ftxfont_draw): Use s->font_info, not face->font_info.
14668
14669 * ftfont.c (ftfont_open): Fix calculation of font->font.average_width.
14670
14671 * charset.c (syms_of_charset): Set QCtest and Qeq.
14672
146732008-02-06 Stefan Monnier <monnier@iro.umontreal.ca>
14674
14675 * process.c (Fstart_process):
14676 * callproc.c (Fcall_process): Handle the case where
14677 Funhandled_file_name_directory returns nil.
14678
14679 * font.h (enum lgstring_indices, enum lglyph_indices): New enums.
14680 (LGSTRING_SLOT, LGSTRING_SET_SLOT): New macros.
14681 * font.c (check_gstring): Use them and AREF to access the vector before
14682 we know it's really a gstring.
14683 (Ffont_shape_text): Fix typo.
46e722a9 14684 (Ffont_shape_text, Ffont_otf_alternates): Fix up int/Lisp_Object mixups.
aac0c6e3
MR
14685
14686 * composite.h (Fcompose_region_internal, Fcompose_string_internal):
14687 Declare.
14688
14689 * chartab.c (make_sub_char_table): Remove noop-yet-incorrect statement.
14690
146912008-02-05 Jason Rumney <jasonr@gnu.org>
14692
14693 * w32font.c (w32font_open_internal): Fill min_width with tmAveCharWidth.
14694 Set smallest_font_height and smallest_char_width in display info.
14695
146962008-02-05 Kenichi Handa <handa@ni.aist.go.jp>
14697
14698 * coding.c (decode_eol): Pay attention to coding->dst_multibyte.
14699
147002008-02-05 Miles Bader <miles@gnu.org>
14701
14702 * xfaces.c (get_lface_attributes, merge_named_face)
14703 (lookup_named_face, lookup_derived_face, realize_named_face):
14704 Revert 2008-02-01 change by cyd@stupidchicken.com.
14705
147062008-02-04 Kenichi Handa <handa@ni.aist.go.jp>
14707
14708 * fontset.c (Ffontset_info): Handle the case of inhibitting the
14709 fallback fonts.
14710 (Ffontset_info) [USE_FONT_BACKEND]: Fix getting of opened font names.
14711
147122008-02-04 Jason Rumney <jasonr@gnu.org>
14713
14714 * w32font.c (w32font_open_internal): Use font_unparse_fcname to
14715 set full_name.
14716 (w32font_open_internal): Use xmalloc, xrealloc, xfree.
14717
147182008-02-03 Jason Rumney <jasonr@gnu.org>
14719
14720 * makefile.w32-in (OBJ1): Include font.o here.
14721 (FONTOBJ) [USE_FONTBACKEND]: Instead of here.
14722
147232008-02-02 Jason Rumney <jasonr@gnu.org>
14724
14725 * makefile.w32-in (temacs): Bump EMHEAP to 21.
14726
147272008-02-01 Jason Rumney <jasonr@gnu.org>
14728
14729 * s/cygwin.h: Define VIRT_ADDR_VARIES.
14730
14731 * puresize.h [VIRT_ADDR_VARIES]: Don't include CYGWIN in condition.
14732
147332008-02-01 Andreas Schwab <schwab@suse.de>
14734
14735 * Makefile.in (shortlisp, lisp): Update for rename of
14736 ../lisp/language/myanmar.el.
14737
147382008-02-01 Chong Yidong <cyd@stupidchicken.com>
14739
14740 * xfaces.c (get_lface_attributes): Delete function.
14741 (merge_named_face, lookup_named_face, lookup_derived_face)
14742 (realize_named_face): Call lface_from_face_name directly, and use
14743 the fact that merge_face_vectors does not alter its FROM argument.
14744
147452008-02-01 Jason Rumney <jasonr@gnu.org>
14746
14747 * w32term.c (w32_read_socket) <WM_CHAR>: Decode non-Unicode
14748 input in the default locale. Handle non-Unicode multibyte input.
14749
147502008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14751
14752 * fontset.c (reorder_font_vector): Exclude nil elements from the
14753 font group. Don't try multiple fonts.
14754 (fontset_font): Adjust for the above change.
14755 (Finternal_char_font): Return nil if the found font doesn't
14756 contain the character ch.
14757
14758 * Makefile.in (lisp, shortlisp): Add cham.el.
14759
147602008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14761
14762 * font.h (FONTP): Make it return 1 also for a font-object.
14763
14764 * .gdbinit (xfontset): New function.
14765
14766 * font.c (font_find_for_lface): Check if the character C is
14767 supported or not only for the first font.
14768
14769 * fontset.c (reorder_font_vector): Fix typo.
14770 (fontset_find_font): Don't add a font-spec specifying a script.
14771 Use 0 (not Qt) for the indication of empty font-group. Change the
14772 format of RFONT-DEF. Return Qt if no font in the font-group
14773 support the character.
14774 (fontset_font): Adjust for the above change. If no font was
14775 found the character, remember that.
14776 (face_for_char): Adjust for the change of RFONT-DEF.
14777 (Fset_fontset_font): Allow nil for FONT-SPEC to explicitly specify
14778 no font for the target.
14779 (Finternal_char_font): Adjust for the change of RFONT-DEF.
14780
147812008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14782
14783 * font.c (font_load_for_face): Handle the case that the font in
14784 face->lface is a string.
14785
147862008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14787
14788 * xfaces.c (set_lface_from_font_and_fontset): Set the fontname in lface.
14789
147902008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14791
14792 * xfaces.c (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]:
14793 Fix previous change. If the frame is not on a window system,
14794 signal an error.
14795
147962008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14797
14798 * coding.c (decode_coding_object, encode_coding_object): Adjust
14799 marker positions after conversion.
14800
14801 * lisp.h (struct Lisp_Marker): New member need_adjustment.
14802
148032008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14804
14805 * font.c (font_find_for_lface): Fix the handling of the return
14806 value of font_has_char.
14807 (Ffont_shape_text): Fix previous change.
14808
14809 * fontset.c (FONTSET_REF_AND_RANGE): Delete it.
14810 (fontset_ref_and_range): Delete it.
14811 (fontset_find_font): Call char_table_ref_and_range instead of
14812 FONTSET_REF_AND_RANGE.
14813 (make_fontset): Don't setup font groups of Latin here.
14814 (Fset_fontset_font): Don't overwrite the setting of FONTSET_ASCII.
14815 (new_fontset_from_font): Make the specified font the default for
14816 all Latin characters.
14817
148182008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14819
14820 * xfaces.c (Finternal_set_lisp_face_attribute): Check if the frame
14821 is on a window system before accessing the fontset of the frame.
14822
148232008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14824
14825 * Makefile.in (lisp, shortlisp): Add kherm.el and myanmar.el.
14826
14827 * ftfont.c (ftfont_driver): Set ftfont_shape in ftfont_driver only
14828 when both HAVE_M17N_FLT and HAVE_LIBOTF are defined.
14829
14830 * font.c (Ffont_shape_text): If the font driver doesn't have a
14831 shaper function, make zero-width glyphs to have at least one-pixel
14832 width. Fix setting of `to' field of glyphs.
14833
148342008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14835
14836 * ftfont.c (ftfont_drive_otf): Fix setting of FROM and TO slots of
14837 glyphs.
14838
14839 * font.h (struct font_driver): Improve docstring of member `shape'.
14840
148412008-02-01 Kenichi Handa <handa@m17n.org>
14842
14843 * composite.c (syms_of_composite): Fix docstring of
14844 auto-composition-function.
14845
14846 * font.h (LGLYPH_SIZE): New macro.
14847
14848 * font.c (Ffont_fill_gstring): Stop filling when a character not
14849 supported by the font is found.
14850 (Ffont_shape_text): When a shape callback function returns nil,
14851 try at most two more times with larger gstring.
14852 (Ffont_at): Fix getting of w. Call font_at with correct 5th argument.
14853
14854 * xdisp.c (handle_auto_composed_prop): Change the argument to
14855 auto-composition-function.
14856
14857 * ftfont.c (ftfont_encode_char): Use the macro FONT_INVALID_CODE.
14858 (ftfont_shape_by_flt): If an element of lgstring is nil, make a
14859 Lispy glyph and store it in the lgstring.
14860
14861 * xfont.c (xfont_encode_char): Use the macro FONT_INVALID_CODE.
14862
14863 * xftfont.c (xftfont_encode_char): Use the macro FONT_INVALID_CODE.
14864
148652008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14866
14867 * font.c (Ffont_shape_text): Avoid unnecessary composition.
14868
14869 * fontset.c (Vfont_encoding_charset_alist): New variable.
14870 (syms_of_fontset): DEFVAR it.
14871 (reorder_font_vector, fontset_find_font): Optimize for the case of
14872 no need of reordering.
14873 (face_for_char): Map the charset property by
14874 Vfont_encoding_charset_alist.
14875
148762008-02-01 Jason Rumney <jasonr@gnu.org>
14877
14878 * w32font.c (logfonts_match): Don't check adstyle here.
14879 (font_matches_spec): Check here against physical font instead.
14880 (add_font_entity_to_list): Avoid some substitutions.
14881
14882 * font.c (font_parse_fcname): Default weight and slant to normal.
14883 (font_score): Prefer normal fonts if weight or slant unspecified.
14884 (font_score) [WINDOWSNT]: Scale weight difference down to closer
14885 match freetype scores.
14886
148872008-02-01 Jason Rumney <jasonr@gnu.org>
14888
14889 * w32font.c (w32font_text_extents): Don't use the frame stored in the
14890 font, as it may have been deleted.
14891 (w32_enumfont_pattern_entity): Map generic family to adstyle using
14892 most common hyphenless variation.
14893 (logfonts_match): Check generic family.
14894 (font_matches_spec): Don't check generic family here.
14895 (fill_in_logfont): Set generic family based on adstyle.
14896
14897 * w32font.h (w32font_get_cache): Update declaration.
14898
148992008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14900
14901 * ftfont.c (ftfont_get_cache): Adjust the argument type.
14902
14903 * frame.c (x_set_font_backend): Don't call Fclear_font_cache.
14904 If none of the new drivers are available, call font_update_drivers
14905 with the old drivers.
14906
14907 * w32font.c (w32font_get_cache): Adjust the argument type.
14908
14909 * xfont.c (xfont_get_cache): Adjust the argument type.
14910
14911 * font.h (struct font_driver): Change argument type of get_cache.
14912
14913 * xftfont.c (xftfont_start_for_frame): Delete prototype.
14914
14915 * font.c (Ffont_get): Fix arguments to Fassoc.
14916 (font_prepare_cache, font_finish_cache, font_get_cache): New functions.
14917 (font_clear_cache): New function.
14918 (font_list_entities, font_matching_entity): Use font_get_cache.
14919 (font_update_drivers): Call font_clear_cache when finishing a driver.
14920
14921 * fontset.c (fontset_find_font): Fix previous change.
14922
149232008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14924
14925 * xterm.c (x_check_font) [USE_FONT_BACKEND]: Don't access
14926 dpyinfo->font_table.
14927 (x_delete_display) [USE_FONT_BACKEND]: Likewise.
14928 (x_delete_terminal) [USE_FONT_BACKEND]: Likewise.
14929
14930 * font.c (font_at): Handle the case that the arg C is negative.
14931 Handle the unibyte case.
14932 (Ffont_at): Call font_at with the arg C -1.
14933
14934 * xdisp.c (handle_auto_composed_prop): Don't get a character at
14935 the position here, and call font_at with the arg C -1.
14936 Don't check the range of the existing composition at the point.
14937
149382008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14939
14940 * fontset.c (fontset_add): New args charset_id and family.
14941 Change caller.
14942 (load_font_get_repertory, fontset_find_font): Assume that
14943 font_spec is always a font-spec object.
14944 (Fset_fontset_font): Always store a font-spec object in a fontset.
14945
14946 * xdisp.c (handle_auto_composed_prop): Use Fget_text_property
14947 instead of get_property_and_range.
14948
149492008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14950
14951 * xftfont.c (struct xftfont_info): Delete the member ft_face.
14952 (xftfont_open): Don't keep locking face.
14953 (xftfont_close): Don't unlock face.
14954 (xftfont_anchor_point, xftfont_shape): Lock and unlock face.
14955
14956 * fontset.c (fontset_find_font): Don't prefer a font of
14957 supplementary charset.
14958
149592008-02-01 Kenichi Handa <handa@m17n.org>
14960
14961 * ftfont.c (struct OpenTypeSpec): Rename members script_tag to
14962 script, langsys_tag to langsys, new member script.
14963 (OTF_TAG_STR): Terminate by '\0'.
867d4bb3 14964 (ftfont_get_open_type_spec): If :otf prop is spec, limit the
aac0c6e3
MR
14965 listing to the script specified in that property. Fix arg to
14966 OTF_check_features.
14967
149682008-02-01 Jason Rumney <jasonr@gnu.org>
14969
14970 * w32font.h: New file.
14971
14972 * w32font.c: Include it.
14973 (struct w32font_info): Add owning_frame field. Move to w32font.h.
14974 (w32font_open): Set owning_frame.
14975 (w32font_text_extents): Use owning_frame.
14976 (struct font_callback_data): Add opentype_only field.
14977 (add_font_entity_to_list): Use it to filter fonts.
14978 Don't check against full name.
14979 (w32font_list_internal): New function.
14980 (w32font_list): Use it.
14981 (w32font_match_internal): New function.
14982 (w32font_match): Use it.
14983 (w32font_open_internal): New function.
14984 (w32font_open): Use it.
14985 (w32font_get_cache, w32font_close, w32font_has_char)
14986 (w32font_encode_char, w32font_text_extents, w32font_draw):
14987 Make non-static.
14988
14989 * makefile.w32-in (w32font.o): Depend on w32font.h.
14990
149912008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14992
14993 * charset.c (Fdefine_charset_internal): Record a supplementary
14994 charset at the tail of Vcharset_order_list.
14995
14996 * font.c (Ffont_shape_text): Fix the return value.
14997
14998 * ftfont.c (OTF_SYM_TAG, OTF_TAG_STR): Fix argument names.
14999
15000 * xdisp.c (handle_auto_composed_prop): Fix previous change.
15001
150022008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15003
15004 * ftfont.c (struct OpenTypeSpec): New struct.
15005 (OTF_SYM_TAG, OTF_TAG_STR): New macros.
15006 (ftfont_get_open_type_spec): New function.
15007 (ftfont_list) [HAVE_LIBOTF]: Check otf-spec property.
15008
15009 * lread.c (read1): Redo the previous change with checking Vpurify_flag.
15010
150112008-02-01 Jason Rumney <jasonr@gnu.org>
15012
15013 * w32font.c (add_font_entity_to_list): Compare only the beginning
15014 of full name.
15015
150162008-02-01 Kenichi Handa <handa@m17n.org>
15017
15018 * xdisp.c (handle_auto_composed_prop): Simplify the code.
15019 Never return HANDLED_RECOMPUTE_PROPS.
15020
150212008-02-01 Kenichi Handa <handa@m17n.org>
15022
15023 * font.c (font_gstring_produce): Delete it.
15024
15025 * composite.h (COMPOSITION_METHOD):
15026 Handle COMPOSITION_WITH_GLYPH_STRING.
15027
150282008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15029
15030 * xfont.c (Qx): Delete.
15031 (syms_of_xfont): Don't initialize Qx.
15032
15033 * composite.h (enum composition_method):
15034 Define COMPOSITION_WITH_GLYPH_STRING unconditionally.
15035
150362008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15037
15038 * xfaces.c [HAVE_WINDOW_SYSTEM]: Include "font.h" unconditionally.
15039 (choose_face_font): Accept new form of font-spec.
15040
15041 * frame.h (font_driver_list): Declare it unconditionally.
15042 (struct frame): Define members font_driver_list and font_data_list
15043 unconditionally.
15044
15045 * fontset.c: Include "font.h" unconditionally.
15046 (generate_ascii_font_name): Use font_parse_xlfd and font_unparse_xlfd.
15047 (Fset_fontset_font): Accept a font-spec object.
15048
15049 * font.c (font_unparse_xlfd): If pixel_size is zero, make the
15050 PIXEL_SIZE part a wild card.
15051
15052 * dispextern.h (struct glyph_string): Define members clip and
15053 num_clips unconditionally.
15054 (struct face): Define members font_info and extra unconditionally.
15055
15056 * ftfont.c (ftfont_open): Set members maybe_otf and otf of
15057 ftfont_info only when HAVE_LIBOTF is defined.
15058
150592008-02-01 Andreas Schwab <schwab@suse.de>
15060
15061 * xdisp.c (back_to_previous_visible_line_start): Fix type of beg
15062 and end.
15063
150642008-02-01 Jason Rumney <jasonr@gnu.org>
15065
15066 * w32font.c (w32font_driver): Add new fields.
15067
150682008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15069
15070 * Makefile.in (ALL_CFLAGS): Add @M17N_FLT_CFLAGS@.
15071 (FONTSRC, FONTOBJ) [HAVE_WINDOW_SYSTEM]: Set them unconditionally.
15072 (LIBES): Add @M17N_FLT_CFLAGS@.
15073
15074 * composite.c (compose_text): Don't treat the new style
15075 composition specially.
15076
15077 * emacs.c (main): Call syms_of_font unconditionally.
15078
15079 * font.h (FONT_ENTITY_NOT_LOADABLE)
15080 (FONT_ENTITY_SET_NOT_LOADABLE): New macros.
15081 (LGSTRING_XXXX, LGLYPH_XXX): Adjust for the change of lispy gstring.
15082 (struct font_driver): New member shape.
15083 (font_registry_charsets): Extern it.
15084 (font_find_for_lface, font_prepare_composition): Adjust prototype.
15085 (font_otf_capability, font_drive_otf): Delete their externs.
15086
15087 * font.c [HAVE_M17N_FLT]: Include <m17n-flt.h>.
15088 (font_charset_alist, font_registry_charsets): Move from xfont.c
15089 and rename.
15090 (font_prop_validate_otf): New function.
15091 (font_property_table): Register it for QCotf.
15092 (DEVICE_DELTA, adjust_anchor, REPLACEMENT_CHARACTER)
15093 (font_drive_otf): Delete.
15094 (font_prepare_composition): New arg F. Adjust for the change of
15095 lispy gstring.
15096 (font_find_for_lface): New arg C.
15097 (font_load_for_face): Adjust for the change of font_find_for_lface.
15098 (Ffont_make_gstring, Ffont_fill_gstring): Adjust for the change of
15099 lispy gstring.
15100 (Ffont_shape_text): New function.
15101 (Fopen_font): If the font size is not given, use 12-pixel.
15102 (Ffont_at): New arg STRING.
15103 (syms_of_font): Initalize font_charset_alist.
15104 Declare Ffont_shape_text as a Lisp function. Call syms_of_XXfont
15105 conditionally.
15106
15107 * fontset.c (fontset_find_font) [USE_FONT_BACKEND]: Try multiple
15108 fonts of the same font-spec. Change the format of RFONT-DEF.
15109 (face_for_char, make_fontset_for_ascii_face, Finternal_char_font):
15110 Adjust for the change of RFONT-DEF.
15111 (Fset_fontset_font) [USE_FONT_BACKEND]: Handle new format of font-spec.
15112
15113 * ftfont.h: New file.
15114
15115 * ftfont.c: Don't include Freetype headers. Include "ftfont.h".
15116 (struct ftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
15117 (ftfont_open) [HAVE_LIBOTF]: Initialize the above members.
15118 (ftfont_driver) [HAVE_LIBOTF, HAVE_M17N_FLT]: Don't set
15119 font_otf_capability and font_drive_otf, set ftfont_shape.
15120 (ftfont_list): Adjust for the change of :otf property value.
15121 (struct MFLTFontFT) [HAVE_LIBOTF, HAVE_M17N_FLT]: New struct.
15122 (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_check_otf)
15123 (adjust_anchor, ftfont_drive_otf, ftfont_shape_by_flt)
15124 (ftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
15125 (DEVICE_DELTA) [HAVE_LIBOTF, HAVE_M17N_FLT]: New macro.
15126 (otf_gstring, gstring, m17n_flt_initialized): New variables.
15127
15128 * w32term.c (x_draw_composite_glyph_string_foreground):
15129 Adjust for the change of lispy gstring.
15130
15131 * xdisp.c (handle_composition_prop): Adjust for the change of
15132 lispy gstring. Call a function for auto-composition with the
15133 third arg it->window.
15134 (fill_composite_glyph_string): Adjust for the change of lispy string.
15135 (x_produce_glyphs): Adjust for the change of font_prepare_compositionl.
15136
15137 * xfaces.c (set_font_frame_param): Adjust for the change of
15138 font_find_for_lface.
15139
15140 * xfont.c (x_font_charset_alist): Move to font.c and rename.
15141 (xfont_registry_charsets): Likewise. Change caller.
15142 (syms_of_xfont): Don't handle x_font_charset_alist.
15143
15144 * xftfont.c: Include "ftfont.h".
15145 (struct xftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
15146 (xftfont_open) [HAVE_LIBOTF]: Initialize the above members.
15147 (xftfont_close) [HAVE_LIBOTF]: Close otf.
15148 (xftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
15149 (syms_of_xftfont) [HAVE_LIBOTF, HAVE_M17N_FLT]:
15150 Set xftfont_driver.shape to xftfont_shape.
15151
15152 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
15153 the change of lispy gstring.
15154
151552008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15156
15157 * ftxfont.c (ftxfont_end_for_frame): Fix array indexing error.
15158
151592008-02-01 Jason Rumney <jasonr@gnu.org>
15160
15161 * w32font.c (w32font_draw): Fill background manually.
15162
151632008-02-01 Jason Rumney <jasonr@gnu.org>
15164
15165 * font.c (Qfontp): Remove unused symbol.
15166 (QCantialias): New symbol.
15167 (syms_of_font): Define it.
15168 (font_property_table): Set a validator for QCantialias.
15169
15170 * w32font.c (CLEARTYPE_QUALITY, CLEARTYPE_NATURAL_QUALITY):
15171 Define if not already.
15172 (QCfamily): Share with xfaces.c.
15173 (Qstandard, Qsubpixel, Qnatural): New symbols.
15174 (syms_of_w32font): Define them. Don't define QCfamily here.
15175 (w32_antialias_type, lispy_antialias_type): New functions.
15176 (w32_enumfont_pattern_entity): New arg requested_font.
15177 Set antialias parameter if non-default was requested.
15178 (fill_in_logfont): Fill in lfQuality if :antialias specified.
15179
151802008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15181
15182 * lread.c (read1): Undo the previous change.
15183
151842008-02-01 CHENG Gao <chenggao@gmail.com> (tiny change)
15185
15186 * frame.c (Fdelete_frame): Call font_update_drivers only when
15187 USE_FONT_BACKEND is defined.
15188
151892008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15190
15191 * font.h (struct font_bitmap): New member bits_per_pixel.
15192 (struct font_driver): New members start_for_frame and end_for_frame.
15193 (struct font_data_list): New struct.
15194 (font_put_frame_data, font_get_frame_data): Extern them.
15195
15196 * frame.h (struct frame): New member font_data_list.
15197
15198 * font.c (font_update_drivers): Call driver->start_for_frame and
15199 driver->end_for_frame at proper timings.
15200 (font_put_frame_data, font_get_frame_data): New functions.
15201 (Ffont_spec): Add usage in the docstring.
15202
15203 * frame.c (make_frame): Initialize f->font_data_list to NULL.
15204 (Fdelete_frame): Call font_update_drivers.
15205
15206 * xftfont.c (struct xftface_info): Delete the member xft_draw.
15207 (xftfont_prepare_face, xftfont_done_face): Adjust for the above change.
15208 (xftfont_get_xft_draw): New function.
15209 (xftfont_draw): Get XftDraw by xftfont_get_xft_draw.
15210 (xftfont_end_for_frame): New function.
15211 (syms_of_xftfont): Set xftfont_driver.end_for_frame.
15212
15213 * ftxfont.c (ftxfont_get_gcs): Rename from ftxfont_create_gcs.
15214 Change argument. Cache GCs in the per-frame data.
15215 (struct ftxfont_frame_data): New struct.
15216 (ftxfont_draw_bitmap): New arg gc_fore and flush.
15217 (ftxfont_prepare_face, ftxfont_done_face): Delete them.
15218 (ftxfont_draw): Get GCs by ftxfont_get_gcs. Reflect s->clip in GCs.
15219 (ftxfont_end_for_frame): New function.
15220 (syms_of_ftxfont): Set ftxfont_driver.end_for_frame.
15221
15222 * ftfont.c (ftfont_get_bitmap): Set bitmap->bits_per_pixel.
15223
152242008-02-01 Kenichi Handa <handa@m17n.org>
15225
15226 * xselect.c (Vselection_coding_system)
15227 (Vnext_selection_coding_system): Delete them.
15228 (syms_of_xselect): Don't declare selection-coding-system and
15229 next-selection-coding-system. They are declared in select.el.
15230
152312008-02-01 Jason Rumney <jasonr@gnu.org>
15232
15233 * w32term.h (WM_UNICHAR, UNICODE_NOCHAR): Define if not already.
15234
15235 * w32fns.c: Include imm.h.
15236 (get_composition_string_fn, get_ime_context_fn): New optional
15237 system functions.
15238 (globals_of_w32fns): Load them from imm32.dll.
15239 (ignore_ime_char): New flag.
15240 (w32_wnd_proc): Handle WM_UNICHAR, WM_IME_CHAR and
15241 WM_IME_ENDCOMPOSITION messages.
15242
15243 * w32term.c (w32_read_socket) [WM_UNICHAR]: Handle as
15244 MULTIBYTE_CHAR_KEYSTROKE_EVENT.
15245
152462008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15247
15248 * lread.c (READCHAR): Call readchar with the 2nd arg NULL.
15249 (READCHAR_REPORT_MULTIBYTE): New macro.
15250 (readchar): New 2nd arg MULTIBYTE.
15251 (read1): Use READCHAR_REPORT_MULTIBYTE for the first read.
15252 Make symbol's name multibyte according to the multibyteness of the
15253 source.
15254
152552008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15256
15257 * xfaces.c (face_for_overlay_string): Call lookup_face with
15258 correct arguments (fix of synching with the trunk).
15259
152602008-02-01 Kenichi Handa <handa@m17n.org>
15261
15262 * font.c (font_prop_validate_symbol, font_prop_validate_style)
15263 (font_prop_validate_non_neg, font_prop_validate_spacing):
15264 Delete argument prop_index.
15265 (font_property_table): Change arguments to validater. Change Callers.
15266 (font_lispy_object): Delete.
15267 (font_at): Use font_find_object instead fo font_lispy_object.
15268
152692008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15270
15271 * fileio.c (Fexpand_file_name): Adjust multibyteness of directory
15272 and file names.
15273
152742008-02-01 Jason Rumney <jasonr@gnu.org>
15275
15276 * w32font.c (add_font_name_to_list): Avoid vertical fonts.
15277 (font_matches_spec): Remove debug output.
15278 (add_font_entity_to_list): Avoid using substituted fonts.
15279
152802008-02-01 Jason Rumney <jasonr@gnu.org>
15281
15282 * doc.c (Fsnarf_documentation):
15283 * Makefile.in (temacs${EXEEXT}, mostlyclean): Undo last change.
15284
152852008-02-01 Miles Bader <miles@gnu.org>
15286
15287 * dispextern.h (struct glyph_row): Only define "clip" field if
15288 HAVE_WINDOW_SYSTEM is defined.
15289
152902008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
15291
15292 Fix up multi-tty merge.
15293
15294 * xterm.c (handle_one_xevent): Remove duplicate code and fix up nesting
15295 and indentation.
15296
15297 * xfaces.c (free_realized_face, clear_face_gcs):
15298 Include font_done_for_face in the input_blocked section, just in case.
15299
15300 * xdisp.c (decode_mode_spec): Use terminal-local coding systems.
15301 (get_char_face_and_encoding): Undo last change and remove the *other*
15302 duplicate definition (i.e. keep the one that's better scoped and that
15303 includes code for the font-backend).
15304
15305 * terminal.c (create_terminal): Default keyboard_coding to
15306 `no-conversion' and terminal_coding to `undecided'.
15307
15308 * lread.c (read1): Use XSETPVECTYPE to set a pseudovector's tag.
15309
15310 * fontset.c (free_realized_fontsets): Check that the table entry does
15311 contain a fontset before trying to compare it to `base'.
15312
15313 * emacs.c (main): Move syms_of_data, syms_of_fileio, syms_of_alloc,
15314 syms_of_charset, and syms_of_coding earlier because init_window_once
15315 now needs Vcoding_system_hash_table to be setup.
15316
15317 * coding.h (default_buffer_file_coding): Remove.
15318
15319 * coding.c (default_buffer_file_coding): Remove.
15320 (Fterminal_coding_system, Fkeyboard_coding_system): Use ->id rather
15321 than ->symbol, and use the terminal-local coding system.
15322 (syms_of_coding): Don't setup the coding-systems that are not
15323 terminal-local.
15324 (Fdefine_coding_system_internal): Use XCAR/XCDR.
15325
15326 * chartab.c (Fmake_char_table, make_sub_char_table, copy_char_table):
15327 Use XSETPVECTYPE now that XSETCHAR_TABLE doesn't set the tag anymore.
15328
15329 * alloc.c (Fmake_char_table, make_sub_char_table): Remove. They're now
15330 in chartab.c and were re-added here by mistake.
15331 (Fpurecopy): Use XSETPVECTYPE after copying a COMPILED pseudovector.
15332
15333 * doc.c (Fsnarf_documentation):
15334 * Makefile.in (temacs${EXEEXT}, mostlyclean): Move buildobj.lst from
15335 src to etc.
15336
15337 * ChangeLog.10: Add mistakenly removed entry.
15338
153392008-02-01 Dan Nicolaescu <dann@ics.uci.edu>
15340
15341 * Makefile.in (fringe.o, minibuf.o): Fix dependencies.
15342
153432008-02-01 Miles Bader <miles@gnu.org>
15344
15345 * xdisp.c (get_char_face_and_encoding): Remove extraneous definition.
15346 Add extra args to FACE_FOR_CHAR.
15347
153482008-02-01 Kenichi Handa <handa@m17n.org>
15349
15350 * keymap.c (where_is_internal_1): If key is a cons, store the copy
15351 in sequence.
15352
15353 * chartab.c (map_sub_char_table, map_char_table): If the range
15354 contains just one character, call the function with that character
15355 even if the depth is not 3.
15356
153572008-02-01 Jason Rumney <jasonr@gnu.org>
15358
15359 * w32font.c (w32font_text_extents): Calculate metrics for the
15360 whole string.
15361
153622008-02-01 Jason Rumney <jasonr@gnu.org>
15363
15364 * w32xfns.c (get_next_msg): Consolidate WM_PAINT messages.
15365
153662008-02-01 Jason Rumney <jasonr@gnu.org>
15367
15368 * w32term.c (x_set_glyph_string_clipping): Use
15369 get_glyph_string_clip_rects.
15370 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
15371 Adjust for the change of struct glyph_string.
15372
15373 * w32font.c (w32font_draw): Do clipping here.
15374
153752008-02-01 Kenichi Handa <handa@m17n.org>
15376
15377 * xftfont.c (xftfont_draw): Adjust for the change of struct
15378 glyph_string.
15379
15380 * xterm.c (x_set_glyph_string_clipping): Use
15381 get_glyph_string_clip_rects.
15382 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
15383 Adjust for the change of struct glyph_string.
15384
15385 * xdisp.c (get_glyph_string_clip_rects): Reflect s->row->clip to
15386 the resulting clip(s}.
15387 (expose_overlaps): Add arg r. Change callers. Set it to
15388 row->clip temporarily.
15389 (expose_window): Redraw rows overlapping the exposed area.
15390
15391 * dispextern.h (struct glyph_row): New member clip.
15392 (struct glyph_string): Delete members clip_x, clip_y, clip_width,
15393 clip_height, new member clip, and num_clips.
15394
153952008-02-01 Kenichi Handa <handa@m17n.org>
15396
15397 * data.c (Fchar_or_string_p): Fix docstring.
15398
153992008-02-01 Kenichi Handa <handa@m17n.org>
15400
15401 * xftfont.c (xftfont_draw): If s->font_info != s->face->font_info,
15402 create a temporary XftDraw object.
15403
154042008-02-01 Kenichi Handa <handa@m17n.org>
15405
15406 * font.c (Ffontp): Fix docstring.
15407
15408 * coding.c (detect_coding_iso_2022): Don't treat SI/SO codes as a
15409 strong evidence of ISO-2022.
15410
154112008-02-01 Kenichi Handa <handa@m17n.org>
15412
15413 * abbrev.c (abbrev_check_chars): Use CHAR_TABLE_REF, not
15414 SYNTAX_ENTRY_FOLLOW_PARENT.
15415
154162008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
15417
15418 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and change
15419 its type.
15420 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
15421 Update to the new type of weak_hash_tables and next_weak.
15422
15423 * lisp.h (struct Lisp_Hash_Table): Change next_weak from Lisp_Object to
15424 a plain C pointer to Lisp_Hash_Table.
15425
15426 * lisp.h (XGCTYPE, GC_HASH_TABLE_P, GC_NILP, GC_NUMBERP, GC_NATNUMP)
15427 (GC_INTEGERP, GC_SYMBOLP, GC_MISCP, GC_VECTORLIKEP, GC_STRINGP)
15428 (GC_CONSP, GC_FLOATP, GC_VECTORP, GC_OVERLAYP, GC_MARKERP)
15429 (GC_INTFWDP, GC_BOOLFWDP, GC_OBJFWDP, GC_BUFFER_OBJFWDP)
15430 (GC_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP)
15431 (GC_KBOARD_OBJFWDP, GC_PSEUDOVECTORP, GC_WINDOW_CONFIGURATIONP)
15432 (GC_PROCESSP, GC_WINDOWP, GC_SUBRP, GC_COMPILEDP, GC_BUFFERP)
15433 (GC_SUB_CHAR_TABLE_P, GC_CHAR_TABLE_P, GC_BOOL_VECTOR_P, GC_FRAMEP)
15434 (GC_EQ): Remove since they've been identical to their non-GC_
15435 alter-egos ever since the markbit was eradicated.
15436
15437 * alloc.c:
15438 * buffer.c:
15439 * buffer.h:
15440 * data.c:
15441 * fileio.c:
15442 * filelock.c:
15443 * fns.c:
15444 * frame.h:
15445 * lisp.h:
15446 * macterm.c:
15447 * print.c:
15448 * process.c:
15449 * w32fns.c:
15450 * w32menu.c:
15451 * w32term.c:
15452 * xfns.c:
15453 * xmenu.c:
15454 * xterm.c: Replace uses of GC_* macros with the non-GC_ versions.
15455
154562008-02-01 Kenichi Handa <handa@m17n.org>
15457
15458 * chartab.c (map_sub_char_table): Make it work for the top-level
15459 char-table. Fix handling of parent char-table.
15460 (map_char_table): Adjust for the above change.
15461
154622008-02-01 Jason Rumney <jasonr@gnu.org>
15463
15464 * w32font.c (Qgdi): Rename from Qw32.
15465
154662008-02-01 Jason Rumney <jasonr@gnu.org>
15467
15468 * w32bdf.c (get_quoted_string): Make function static.
15469
154702008-02-01 Kenichi Handa <handa@m17n.org>
15471
15472 * xftfont.c (xftfont_open): If one of font's ASCII glyph has
15473 bigger ascent and descent than those of the font, use them as
15474 font's ascent and descent.
15475
154762008-02-01 Kenichi Handa <handa@m17n.org>
15477
15478 * Makefile.in (${lispsource}international/charprop.el): Move this
15479 target within "#ifdef HAVE_UNIDATA" and "#endif".
15480
154812008-02-01 Kenichi Handa <handa@m17n.org>
15482
15483 * Makefile.in (lisp): Add ${lispsource}language/tai-viet.el.
15484 (shortlisp): Add ../lisp/language/tai-viet.el.
15485
154862008-02-01 Ulrich Mueller <ulm@gentoo.org>
15487
15488 * Makefile.in (${lispsource}international/charprop.el): Depend on
15489 temacs${EXEEXT}.
15490
154912008-02-01 Jason Rumney <jasonr@gnu.org>
15492
15493 * w32font.c (w32font_close): Delete the GDI font object.
15494
15495 * w32menu.c: Include character.h.
15496
15497 * w32proc.c: Likewise.
15498
15499 * w32select.c: Likewise.
15500
15501 * makefile.w32-in (w32proc.o): Depend on character.h.
15502
155032008-02-01 Jason Rumney <jasonr@gnu.org>
15504
15505 * w32fns.c (syms_of_w32fns): Use DEFSYM macro.
15506
15507 * w32menu.c (syms_of_w32menu): Likewise.
15508
15509 * w32proc.c (syms_of_ntproc): Likewise.
15510
15511 * w32select.c (syms_of_w32select): Likewise.
15512
15513 * w32term.c (syms_of_w32term): Likewise.
15514
155152008-02-01 Jason Rumney <jasonr@gnu.org>
15516
15517 * w32font.c (w32font_draw): Delete brush after using it.
15518
155192008-02-01 Jason Rumney <jasonr@gnu.org>
15520
15521 * w32font.c (w32font_open): Don't set font_idx.
15522 (w32font_text_extents): Try GetTextExtentPoint32W before defaulting
15523 to font settings.
15524 (w32font_draw): Fill background explicitly.
15525
155262008-02-01 Jason Rumney <jasonr@gnu.org>
15527
15528 * w32term.c (w32_initialize): Don't call w32font_initialize.
15529
15530 * w32font.c (w32font_info): Remove subranges.
15531 (QCsubranges, Qmodern, Qswiss, Qroman): Remove.
15532 (QCfamily, Qmonospace, Qsans_serif, Qmono, Qsans, Qsans__serif)
15533 (Qraster, Qoutline, Qlatin, Qgreek, Qcoptic, Qcyrillic, Qarmenian)
15534 (Qhebrew, Qarabic, Qsyriac, Qnko, Qthaana, Qdevanagari, Qbengali)
15535 (Qgurmukhi, Qgujarati, Qoriya, Qtamil, Qtelugu, Qkannada)
15536 (Qmalayalam, Qsinhala, Qthai, Qlao, Qtibetan, Qmyanmar, Qgeorgian)
15537 (Qhangul, Qethiopic, Qcherokee, Qcanadian_aboriginal, Qogham)
15538 (Qrunic, Qkhmer, Qmongolian, Qsymbol, Qbraille, Qhan)
15539 (Qideographic_description, Qcjk_misc, Qkana, Qbopomofo, Qkanbun)
15540 (Qyi, Qbyzantine_musical_symbol, Qmusical_symbol, Qmathematical):
15541 New symbols.
15542 (font_callback_data): New struct.
15543 (w32font_list, w32font_match): Use it.
15544 (w32font_open): Don't populate subranges.
15545 (w32font_has_char): Use script Lisp symbols, not subrange bitmask.
15546 (w32font_encode_char): Always return unicode code-point as-is.
15547 (w32font_text_extents): Supply a transformation matrix to
15548 GetGlyphOutline. Never look up by glyph index. Avoid looping
15549 twice. Use unicode version of GetTexExtentPoint32 instead of
15550 glyph index version.
15551 (set_fonts_frame): Remove.
15552 (w32_enumfont_pattern_entity): Add frame parameter, use it to
15553 set frame parameter. Use backward compatible fake foundries.
15554 Save generic family in extra slot under QCfamily. Make width slot
15555 constant. Save QCspacing value. Save list of scripts instead of
15556 binary subranges.
15557 (w32_generic_family, logfonts_match, font_matches_spec): New functions.
15558 (add_font_entity_to_list): Use font_callback_data struct. Filter
15559 unwanted fonts.
15560 (add_one_font_entity_to_list): Use font_callback_data struct.
15561 (w32_registry): Default to iso10646_1.
15562 (fill_in_logfont): Use dpi from extra slot. Don't bother with
15563 string font registries. Don't fill in font name if it is a generic
15564 family name, fill family instead. Use spacing, family and script
15565 extra info to fill pitch, family and charset fields.
15566 (list_all_matching_fonts): Use font_callback_data struct.
15567 (unicode_range_for_char): Remove.
15568 (font_supported_scripts): New function.
15569 (w32font_initialize): Remove.
15570 (syms_of_w32font): Update which symbols are defined.
15571
155722008-02-01 Jason Rumney <jasonr@gnu.org>
15573
15574 * font.c (font_pixel_size): Reverse assq_no_quit args.
15575
15576 * w32term.h (FONT_WIDTH): Report max width, not average.
15577 (FONT_MAX_WIDTH): Remove.
15578 (FONT_AVG_WIDTH): New macro.
15579
15580 * xfaces.c (Fx_list_fonts) [WINDOWSNT]: Remove Windows only
15581 redefinition of FONT_WIDTH.
15582
15583 * w32term.c (x_font_min_bounds): Use FONT_AVG_WIDTH.
15584 (w32_cache_char_metrics): Use FONT_WIDTH.
15585
15586 * w32fns.c (w32_load_system_font, w32_list_fonts): Use FONT_AVG_WIDTH.
15587
155882008-02-01 Jason Rumney <jasonr@gnu.org>
15589
15590 * w32font.c (w32font_open): Make lfHeight negative.
15591
15592 * w32fns.c (x_default_font_parameter): Use new style font name.
15593 (Fx_create_frame, x_create_tip_frame): Initialize resx and resy.
15594
155952008-02-01 Jason Rumney <jasonr@gnu.org>
15596
15597 * w32font.c (QCsubranges): New symbol.
15598 (w32font_open, w32font_has_char): Get subranges from subproperty
15599 of extra.
15600 (w32_enumfont_pattern_entity): Set subranges as subproperty of extra.
15601 (syms_of_w32font): Define :subranges symbol.
15602
15603 * font.c (font_put_extra): Expose externally.
15604
15605 * font.h (font_put_extra): Move declaration from font.c.
15606
15607 * font.c (Ffont_get): Use font driver to determine otf capability.
15608 (adjust_anchor): Check if driver defines anchor_point before using.
15609
15610 * w32font.c (w32font_open): Handle size, height and pixel_size better.
15611 (w32font_draw): Use options.
15612 (w32_enumfont_pattern_entity): Set size to 0 for scalable fonts.
15613 Fix detection of truetype fonts.
15614 (registry_to_w32_charset): Handle charsets other than iso8859-1
15615 expressed as lisp symbols.
15616 (w32_registry): Express charset as lisp symbol.
15617 (fill_in_logfont): Reverse pixel and point height logic.
15618 Don't set width here. Set quality to default.
15619
15620 * w32fns.c (w32_load_system_font): Fix detecting FIXED_PITCH fonts.
15621 (x_to_w32_font): Fill in lfPitchAndFamily correctly.
15622
15623 * xterm.c (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
15624 Remove redundant loop and allocation.
15625
15626 * makefile.w32-in (font.o, w32font.o): New objects.
15627 (fontset.o, xdisp.o, xfaces.o, w32fns.o, w32term.o): Depend on font.h.
15628 (FONTOBJ): New group of objects conditioned on USE_FONT_BACKEND.
15629
15630 * xdisp.c (fill_composite_glyph_string): Make the first arg to
15631 STORE_XCHARB a valid l-value.
15632
15633 * w32term.c (w32_native_per_char_metric): Swap width and rbearing
15634 calculations for non-Truetype fonts.
15635 (x_draw_glyph_string): Sync with xterm.c.
15636 (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
15637 Remove redundant code.
15638 (w32_initialize) [USE_FONT_BACKEND]: Call w32font_initialize.
15639
15640 * w32term.h (w32_output_data) [USE_FONT_BACKEND]: Add fontp member.
15641 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro from xterm.h.
15642
15643 * w32fns.c [USE_FONT_BACKEND]: Port font backend changes from xfns.c.
15644 (x_to_w32_charset, w32_to_x_charset): Expose externally.
15645
15646 * w32font.c: New file for w32 font backend.
15647
156482008-02-01 Kenichi Handa <handa@m17n.org>
15649
15650 * term.c: Don't include "buffer.h" twice.
15651
156522008-02-01 Kenichi Handa <handa@m17n.org>
15653
15654 * character.c (Funibyte_string): New function.
15655 (syms_of_character): Defsubr it.
15656
156572008-02-01 Jason Rumney <jasonr@gnu.org>
15658
15659 * w32term.c [USE_FONT_BACKEND]:
15660 (x_get_font_repertory, note_mouse_movement, x_set_mouse_face_gc)
15661 (x_set_glyph_string_clipping, x_set_glyph_string_clipping_exactly)
15662 (x_draw_glyph_string, x_draw_glyph_string_foreground)
15663 (x_draw_composite_glyph_string_foreground, x_new_fontset2)
15664 (x_free_frame_resources): Sync with xterm.c.
15665
156662008-02-01 Andreas Schwab <schwab@suse.de>
15667
15668 * lread.c (read1): Use CHAR_TABLE_STANDARD_SLOTS to validate
15669 char-table size.
15670
156712008-02-01 Kenichi Handa <handa@m17n.org>
15672
15673 * font.c (check_otf_features): Define it regardless of HAVE_LIBOTF.
15674
156752008-02-01 Kenichi Handa <handa@m17n.org>
15676
15677 * ftfont.c (ftfont_driver): Delete font_otf_gsub and
15678 font_otf_gpos, add font_drive_otf.
15679
15680 * fontset.c (fontset_find_font): Pay attention to font size
15681 specified for a font.
15682 (reorder_font_vector): Check contents of font_def.
15683
15684 * font.c (struct otf_list): Delete it.
15685 (otf_list): Make it a lisp variable.
15686 (otf_open): Use lispy otf_list.
15687 (generate_otf_features): Rename from parse_gsub_gpos_spec.
15688 (check_otf_features): New function.
15689 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
15690 New functions.
15691 (font_drive_otf): New function merging font_otf_gsub and
15692 font_otf_gpos.
15693 (font_open_for_lface): New arg spec. Change argument order.
15694 (font_load_for_face): Adjust for the change of font_open_for_lface.
15695 (Ffont_drive_otf): New function merging Ffont_otf_gsub and
15696 Ffont_otf_gpos.
15697 (syms_of_font): Staticpro otf_list. Delete defsubr of
15698 Sfont_otf_gsub and Sfont_otf_gpos. Defsubr Sfont_drive_otf.
15699
15700 * xfaces.c (set_font_frame_param): Adjust for the change of
15701 font_open_for_lface.
15702
15703 * font.h (font_open_for_lface): Adjust prototype.
15704 (struct font_driver): Delete members otf_gsub and otf_gpos, add
15705 member otf_drive.
15706 (font_otf_gsub, font_otf_gpos): Delete externs.
15707 (font_drive_otf): Extern it.
15708
157092008-02-01 Kenichi Handa <handa@m17n.org>
15710
15711 * font.c (font_at): If the window W is not on a window system,
15712 return Qnil.
15713
15714 * coding.c (produce_chars, encode_coding): Don't call
15715 insert_from_gap if no characters to produce.
15716
157172008-02-01 Kenichi Handa <handa@m17n.org>
15718
15719 * fontset.c (free_realized_fontsets): Avoid unnecessary call of
15720 Fclear_face_cache.
15721
15722 * xfaces.c (face_for_font): Check also face->font==font->font.font.
15723
157242008-02-01 Miles Bader <miles@gnu.org>
15725
15726 * emacs.c (main): Change default value of `enable_font_backend' to 1.
15727 Parse "--disable-font-backend" option.
15728 (standard_args): Add "--disable-font-backend" option.
15729
157302008-02-01 Kenichi Handa <handa@m17n.org>
15731
15732 * fontset.c (fontset_find_font): New function.
15733 (fontset_font): Use fontset_find_font.
15734 (make_fontset_for_ascii_face): Don't set face ID in rfont_def.
15735 Register the specified font for all Latin characters.
15736 (new_fontset_from_font): Register the specified font for all Latin
15737 characters.
15738 (dump_fontset): For a realized fontset, include the base fontset
15739 name in the returned vector.
15740
157412008-02-01 Kenichi Handa <handa@m17n.org>
15742
15743 * character.h (CHAR_STRING): Cast C to unsigned on calling
15744 char_string.
15745
15746 * character.c (char_string): Type of arg C changed to unsigned.
15747 Signal an error if C is an invalid character code.
15748
15749 * editfns.c (general_insert_function, Fchar_to_string):
15750 Use CHARACTERP, not INTEGERP.
15751
157522008-02-01 Kenichi Handa <handa@m17n.org>
15753
15754 * character.h (MIN_MULTIBYTE_LEADING_CODE)
15755 (MAX_MULTIBYTE_LEADING_CODE): New macros.
15756
15757 * regex.c (analyse_first): Fix for multibyte characters in "case
15758 charset:" and "case categoryspec:".
15759
157602008-02-01 Andreas Schwab <schwab@suse.de>
15761
15762 * Makefile.in (LIBES): Move standard libraries to the end.
15763
157642008-02-01 Kenichi Handa <handa@m17n.org>
15765
15766 * alloc.c (Fgarbage_collect): If nextb->text->inhibit_shrinking is
15767 nonzero, don't shrink the buffer nextb.
15768
15769 * buffer.h (struct buffer_text): New member inhibit_shrinking.
15770
15771 * coding.c (coding_alloc_by_making_gap): New arg offset.
15772 (alloc_destination): Call coding_alloc_by_making_gap with the arg
15773 offset.
15774 (decode_coding_iso_2022): Update coding->safe_charsets.
15775 (decode_coding_gap): Temporarily set
15776 current_buffer->text->inhibit_shrinking to 1.
15777
157782008-02-01 Kenichi Handa <handa@m17n.org>
15779
15780 * xterm.c (x_draw_composite_glyph_string_foreground): Fix
15781 indexing into elements of s->cmp and s->char2b.
15782
157832008-02-01 Juanma Barranquero <lekktu@gmail.com>
15784
15785 * regex.c (RE_STRING_CHAR_AND_LENGTH) [! emacs]: Add missing arg `len'.
15786
157872008-02-01 Kenichi Handa <handa@m17n.org>
15788
15789 * regex.c (GET_CHAR_BEFORE_2, GET_CHAR_AFTER): Check the variable
15790 target_multibyte instead of multibyte.
15791 (re_match_2_internal): Call bcmp_translate with target_multibyte.
15792 (bcmp_translate): Change the argument name from multibyte to
15793 target_multibyte.
15794
157952008-02-01 Kenichi Handa <handa@m17n.org>
15796
15797 These changes are to compile a regexp into a pattern that can be
15798 used both for multibyte and unibyte targets.
15799
15800 * Makefile.in (search.o): Depend on charset.h.
15801
15802 * character.c (multibyte_char_to_unibyte_safe): New function.
15803
15804 * search.c: Include "charset.h".
15805 (compile_pattern_1): Delete argument multibyte. Don't set
15806 cp->buf.target_multibyte here. Set cp->buf.charset_unibyte.
15807 (compile_pattern): Don't compare cp->buf.target_multibyte.
15808 Compare cp->buf.charset_unibyte.
15809 (compile_pattern): Set cp->buf.target_multibyte.
15810
15811 * lisp.h (multibyte_char_to_unibyte_safe): Extern it.
15812
15813 * regex.h (struct re_pattern_buffer): New member charset_unibyte.
15814
15815 * regex.c (RE_STRING_CHAR, RE_STRING_CHAR_AND_LENGTH): New arg
15816 multibyte. Change callers.
15817 (RE_CHAR_TO_MULTIBYTE, RE_CHAR_TO_UNIBYTE): New macros.
15818 (MAKE_CHAR_MULTIBYTE, MAKE_CHAR_UNIBYTE): Delete. Change callers
15819 to use RE_CHAR_TO_MULTIBYTE and RE_CHAR_TO_UNIBYTE, respectively.
15820 (SETUP_ASCII_RANGE, SETUP_UNIBYTE_RANGE): New macros.
15821 (SETUP_MULTIBYTE_RANGE): Generate a more compact range_table.
15822 (regex_compile): Make the compiled pattern usable both for
15823 multibyte and unibyte targets.
15824 (analyse_first): Make the fastmap usable both for multibyte and
15825 unibyte targets.
15826 (TRANSLATE_VIA_MULTIBYTE): Delete.
15827 (re_match_2_internal): Pay attention to the case that the
15828 multibyteness of bufp and target may be different.
15829
158302008-02-01 Kenichi Handa <handa@m17n.org>
15831
15832 * xdisp.c (x_produce_glyphs): When a font is not found, make the
15833 empty box occupy at least one column width.
15834
158352008-02-01 Miles Bader <miles@gnu.org>
15836
15837 * Makefile.in: Remove redundant HAVE_XFT clause.
15838
158392008-02-01 Kenichi Handa <handa@m17n.org>
15840
15841 * xrdb.c (x_load_resources): Setup the default fontSet X resource.
15842
158432008-02-01 Kenichi Handa <handa@m17n.org>
15844
15845 * fontset.c (Finternal_char_font): Fix for the case of POSITION
15846 being nil.
15847
158482008-02-01 Kenichi Handa <handa@m17n.org>
15849
15850 * xftfont.c (xftfont_open): Call FcConfigSubstitute.
15851
158522008-02-01 Kenichi Handa <handa@m17n.org>
15853
15854 * xftfont.c (xftfont_open): Don't enable antialias explicitly.
15855
158562008-02-01 Kenichi Handa <handa@m17n.org>
15857
15858 * search.c (simple_search): Fix previous change.
15859
158602008-02-01 Kenichi Handa <handa@m17n.org>
15861
15862 * xftfont.c (ftfont_font_format): Extern declaration.
15863
15864 * frame.c (x_set_font): Fix the second arg to fs_query_fontset.
15865
15866 * xfont.c (xfont_driver): Initialize ftfont_driver.type by 0.
15867 (xfont_list): Don't directly use Lisp_Object as an operand of &&.
15868
15869 * ftfont.c (ftfont_driver): Initialize ftfont_driver.type by 0.
15870 (ftfont_font_format): Fix previous change.
15871
15872 * font.h (Ffont_xlfd_name): EXFUN it.
15873
15874 * font.c (font_parse_xlfd): Fix the array size of `f'.
15875 (register_font_driver): Use EQ to compare driver->type.
15876
15877 * xfns.c (xic_create_xfontset2) [USE_FONT_BACKEND]: New function.
15878 (create_frame_xic) [USE_FONT_BACKEND]: Call xic_create_xfontset2.
15879 (xic_set_xfontset) [USE_FONT_BACKEND]: Likewise.
15880
158812008-02-01 Kenichi Handa <handa@m17n.org>
15882
15883 * ftfont.c (ftfont_pattern_entity, ftfont_list_generic_family)
15884 (ftfont_list, ftfont_font_format): Check if FC_FONTFORMAT is defined.
15885
158862008-02-01 Kenichi Handa <handa@m17n.org>
15887
15888 * xfont.c (xfont_open): Set font->format.
15889
15890 * xftfont.c (xftfont_open): Set font->format.
15891
15892 * ftfont.c (ftfont_pattern_entity): Add fontformat in a pattern.
15893 (ftfont_list): Include FC_FONTFORMAT in FcObject.
15894 (ftfont_open): Set font->format.
15895 (ftfont_font_format): New function.
15896
15897 * font.h (struct font): New member format.
15898
15899 * font.c (Qopentype): New variable.
15900 (syms_of_font): Defsym it.
15901 (Fquery_font): Change the format of the last element of the return
15902 value.
15903
159042008-02-01 Kenichi Handa <handa@m17n.org>
15905
15906 * xfns.c (xic_create_xfontset): Try the default fontset name as a
15907 last resort.
15908
159092008-02-01 Kenichi Handa <handa@m17n.org>
15910
15911 * coding.c (detect_coding_charset): Fix detection of multi-byte
15912 charset.
15913
159142008-02-01 Bob Halley <halley@play-bow.org> (tiny change)
15915
15916 * ccl.c (ccl_driver): If DST is NULL, set ccl->produced to 0.
15917
159182008-02-01 Kenichi Handa <handa@m17n.org>
15919
15920 * xdisp.c (get_next_display_element): Set it->face_id for the
15921 first component of a composition.
15922 (x_produce_glyphs): Check if the font is changed or not for composition.
15923
159242008-02-01 Kenichi Handa <handa@m17n.org>
15925
15926 * fontset.c (Qlatin): New variable.
15927 (syms_of_fontset): Define it as a lisp symbol.
15928 (Fset_fontset_font): If TARGET is `latin', use FONT_SPEC for ASCII.
15929
159302008-02-01 Kenichi Handa <handa@m17n.org>
15931
15932 * font.c (font_unparse_fcname): Pay attention to the case that
15933 some of font property is a null string.
15934
159352008-02-01 Kenichi Handa <handa@m17n.org>
15936
15937 * term.c: Include "composite.h".
15938 (encode_terminal_code): Output all components of composition.
15939 Check the size of encode_terminal_src.
15940 (produce_glyphs): For composition, call produce_composite_glyph.
15941 (append_composite_glyph, produce_composite_glyph): New functions.
15942
15943 * xdisp.c (x_produce_glyphs): In handling composition, if a font
15944 is not found, get font_info from the current ascii face.
15945
159462008-02-01 Kenichi Handa <handa@m17n.org>
15947
15948 * fileio.c (Finsert_file_contents): On replacing, temporarily bind
15949 buffer-file-name to Qnil before calling insert_from_buffer.
15950
15951 * font.c (font_unparse_fcname): Pay attention to the case that
15952 foundry is a null string.
15953
159542008-02-01 Kenichi Handa <handa@m17n.org>
15955
15956 * ftfont.c (ftfont_list): Allow registry "unicode-sip".
15957
15958 * font.c (Qunicode_sip): New variable.
15959 (syms_of_font): Declare it as a Lisp symbol.
15960
15961 * font.h (Qunicode_sip): Extern it.
15962
159632008-02-01 Kenichi Handa <handa@m17n.org>
15964
15965 * composite.c (get_composition_id): Pay attention to TAB component.
15966
15967 * xterm.c (x_draw_composite_glyph_string_foreground): Don't draw
15968 TAB. Adjust for the change of s->char2b which always points to
15969 the first element of allocated memory.
15970
15971 * xftfont.c (xftfont_text_extents): Fix calculation of descent value.
15972
15973 * xdisp.c (handle_composition_prop): Set it->c to the first
15974 non-TAB component.
15975 (fill_composite_glyph_string): Change argument.
15976 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the above change.
15977 (x_produce_glyphs): Fix handling of left/right padding.
15978
159792008-02-01 Kenichi Handa <handa@m17n.org>
15980
15981 * coding.c (detect_coding_system): Fix for handling off
15982 inhibit_iso_escape_detection. Fix for the case that no coding
15983 system is defined for a specific coding category.
15984
159852008-02-01 Kenichi Handa <handa@m17n.org>
15986
15987 * font.c (font_matching_entity): Delete unused local var.
15988
15989 * xftfont.c (xftfont_open): Call XftDefaultSubstitute before
15990 opening a font.
15991
15992 * fileio.c (Finsert_file_contents): On recovering a file, assume
15993 Unix-like eol.
15994 (choose_write_coding_system): On auto-saving a file, force
15995 Unix-like eol.
15996
15997 * coding.c (setup_coding_system): Fix setting of
15998 coding->common_flags based on eol_type.
15999 (coding_inherit_eol_type): If PARENT is not nil, be sure to
16000 inherit from it.
16001
160022008-02-01 Kenichi Handa <handa@m17n.org>
16003
16004 * alloc.c (NSTATICS): Increas to 0x600.
16005
160062008-02-01 Kenichi Handa <handa@m17n.org>
16007
16008 * ftfont.c (ftfont_driver): Set ftfont_driver.match to ftfont_match.
16009 (ftfont_list): Don't check :name property.
16010 (ftfont_match): New function.
16011 (ftfont_pattern_entity): If the pattern doesn't contain
16012 FC_SPACING, don't assume FC_MONO.
16013
16014 * font.h (struct font_driver): New member `match'.
16015 (font_update_drivers): Adjust prototype.
16016
16017 * font.c (font_parse_fcname, font_parse_name): Don't change :name
16018 property of FONT.
16019 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE, check_gstring): Define
16020 them unconditionally.
16021 (font_matching_entity): New function.
16022 (font_open_by_name): Try font_matching_entity if exact match is
16023 not found.
16024 (font_update_drivers): Delete the arg FONT. Return a list of
16025 actually used backends. Don't free faces, font caches here.
16026 Don't store data in frame parameters. Don't call x_set_font.
16027 (Ffont_spec): Store :name property as is.
16028 (Ffont_get): Check HAVE_LIBOTF before calling font_otf_capability.
16029 (Ffont_otf_gsub): Call font->driver->otf_gsub instead of font_otf_gsub.
16030 (Ffont_otf_gpos): Call font->driver->otf_gpos instead of font_otf_gpos.
16031 (Ffont_otf_alternates): Check if the driver has otf_gsub function.
16032 Call font->driver->otf_gsub instead of font_otf_gsub.
16033
16034 * frame.c (x_set_font_backend): Do more works that were done in
16035 font_update_drivers before.
16036
16037 * xfont.c (xfont_match): New function.
16038 (xfont_driver): Set xfont_driver.match to xfont_match.
16039 (xfont_draw): Set font in GC if necessary.
16040
16041 * ftxfont.c (ftxfont_match): New function.
16042 (syms_of_ftxfont): Set ftxfont_driver.match to ftxfont_match.
16043
16044 * xftfont.c (xftfont_match): New function.
16045 (syms_of_xftfont): Set xftfont_driver.match to xftfont_match.
16046
160472008-02-01 Kenichi Handa <handa@m17n.org>
16048
16049 * font.h (struct font): New member scalable.
16050 (struct font_driver): New arg ALTERANTE_SUBST to otf_gsub.
16051 (font_otf_gsub): Adjust prototype.
16052
16053 * font.c (font_otf_capability): Fix handling of the default langsys.
16054 (parse_gsub_gpos_spec): Change type to void. New arg nbytes.
16055 Check the contents of SPEC.
16056 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE): New macros.
16057 (check_gstring): New function.
16058 (REPLACEMENT_CHARACTER): New macro.
16059 (font_otf_gsub): New arg alternate_subst. Be sure to set all
16060 glyph codes of GSTRING.
16061 (font_otf_gpos): Be sure to set all glyph codes of GSTRING.
16062 (font_prepare_composition): Set cmp->glyph_len.
16063 (font_open_entity): Set font->scalable.
16064 (Ffont_get): Handle :otf property.
16065 (Ffont_otf_gsub, Ffont_otf_gpos, Ffont_otf_alternates): New
16066 functions.
16067 (Fquery_font): Use font->font.full_name.
16068 (syms_of_font): Defsubr Sfont_otf_gsub, Sfont_otf_gpos, and
16069 Sfont_otf_alternates.
16070
16071 * ftfont.c (ftfont_open): Set font->font.full_name and
16072 font->font.name properly. Fix calculation of font->font.height
16073 and font->min_width.
16074
16075 * ftxfont.c (ftxfont_create_gcs): New function.
16076 (ftxfont_draw_bitmap): Fix arg to ftfont_driver.get_bitmap.
16077 (ftxfont_draw_backgrond): Fix filling region.
16078 (ftxfont_default_fid): New function.
16079 (ftxfont_open): Set xfont->fid to the return value of
16080 ftxfont_default_fid.
16081 (ftxfont_prepare_face): Use ftxfont_create_gcs to create GCs.
16082 (ftxfont_done_face): Free only GCs that are created by
16083 ftxfont_create_gcs.
16084 (ftxfont_draw): If face->gc != s->gc, create proper GCs.
16085
16086 * xterm.c (x_set_glyph_string_clipping_exactly) [USE_FONT_BACKEND]:
16087 Clip to src->width, etc (not src->clip_XXX).
16088
16089 * xfns.c (x_create_tip_frame) [USE_FONT_BACKEND]: Handle
16090 FontBackend frame parameter.
16091
160922008-02-01 Kenichi Handa <handa@m17n.org>
16093
16094 * font.h (struct font_driver_list): New member `on'.
16095 (Fclear_font_cache): EXFUN it.
16096 (font_update_drivers): Extern it.
16097
16098 * font.c (font_unparse_fcname): Fix typo (swidth->width).
16099 (font_list_entities): Check driver_list->on.
16100 (register_font_driver): Initalize `on' member to 0.
16101 (font_update_drivers): New function.
16102 (Fclear_font_cache): Check driver_list->on.
16103
16104 * frame.h (Qfont_backend): Extern it.
16105 (x_set_font_backend): Extern it.
16106
16107 * frame.c (Qfont_backend): New variable.
16108 (frame_parms): New element for font-backend.
16109 (x_set_font_backend): New function.
16110
16111 * xfns.c (Fx_create_frame) [USE_FONT_BACKEND]: Handle
16112 FontBackend frame parameter.
16113 (x_frame_parm_handlers) [USE_FONT_BACKEND]: New element
16114 x_set_font_backend.
16115
16116 * xfont.c (xfont_list): Don't try listing by :name property if the
16117 name is not for XLFD.
16118
161192008-02-01 Kenichi Handa <handa@m17n.org>
16120
16121 * font.h (LGLYPH_FROM, LGLYPH_TO, LGLYPH_SET_FROM)
16122 (LGLYPH_SET_TO): New macros.
16123 (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WADJUST): Check if adjustment
16124 element of G is vector or not.
16125 (font_at): Extern it.
16126
16127 * font.c: Include window.h.
16128 (font_lispy_object): New function.
16129 (font_prepare_composition): Check LGLYPH_FORM (g) to detect the
16130 end of valid glyph.
16131 (font_close_object): Fix getting (struct font *).
16132 (font_at): New function.
16133 (Ffont_get): If FONT is a font-object, get entity from it.
16134 (Ffont_make_gstring): Initialize elements of glyphs with nil.
16135 (Ffont_fill_gstring): Use macro LGSTRING_XXX and LGLYPH_XXX. Fix
16136 range check.
16137 (Ffont_at): New function.
16138 (syms_of_font): Defsubr Sfont_at.
16139
16140 * xdisp.c (it_props): Move the entry for Qauto_composed to just
16141 before the entry for Qcomposition.
16142 (handle_auto_composed_prop): Call auto-composition-function with 4 args.
16143 (handle_composition_prop) [USE_FONT_BACKEND]: Set it->face_id from
16144 the font in gstring.
16145 (fill_composite_glyph_string) [USE_FONT_BACKEND]: Check
16146 LGLYPH_FORM (g) to detect the end of valid glyph.
16147 (x_produce_glyphs) [USE_FONT_BACKEND]: Don't update it->face_id if
16148 we are composing with gstring.
16149
16150 * xterm.c (x_draw_composite_glyph_string_foreground) [USE_FONT_BACKEND]:
16151 Check if adjustment is vector or not.
16152
16153 * Makefile.in (font.o): Make it depends on window.h.
16154
161552008-02-01 Kenichi Handa <handa@m17n.org>
16156
16157 * xterm.c (x_draw_composite_glyph_string_foreground): Check if
16158 adjustment is vector or not.
16159
161602008-02-01 Miles Bader <miles@gnu.org>
16161
16162 * character.h (CHECK_CHARACTER): Redefine in terms of CHECK_TYPE.
16163
161642008-02-01 Kenichi Handa <handa@m17n.org>
16165
16166 * font.h (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WIDTH, LGLYPH_WADJUST)
16167 (LGLYPH_SET_WIDTH): Adjusted for the change of LGLYPH format.
16168 (LGLYPH_ADJUSTMENT, LGLYPH_SET_ADJUSTMENT): New macros.
16169
16170 * font.c (font_merge_old_spec): Treat '*' in foundry as a wild card.
16171 (DEVICE_DELTA): Fix typo.
16172 (font_otf_gpos, font_prepare_compositio): Adjust for the change of
16173 LGLYPH format.
16174
16175 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
16176 the change of LGLYPH format.
16177
161782008-02-01 Kenichi Handa <handa@m17n.org>
16179
16180 * ftfont.c (ftfont_list): Fix typo.
16181 (ftfont_build_basic_charsets): Don't include letters with diacritics.
16182
161832008-02-01 Jan Djärv <jan.h.d@swipnet.se>
16184
16185 * xfaces.c (realize_non_ascii_face): Set face->extra to NULL.
16186
16187 * xftfont.c (xftfont_done_face): Call XftDrawDestroy only if
16188 xftface_info is non-NULL.
16189
161902008-02-01 Jan Djärv <jan.h.d@swipnet.se>
16191
16192 * ftfont.c (ftfont_list): Move misplaced #endif.
16193
161942008-02-01 Kenichi Handa <handa@m17n.org>
16195
16196 * ftfont.c (ftfont_list): Pay attention to the case that
16197 FC_CAPABILITY is not defined.
16198
161992008-02-01 Kenichi Handa <handa@m17n.org>
16200
16201 * xftfont.c (xftfont_open): Set charset related members to -1.
16202
16203 * ftfont.c (ftfont_list): Handle QCotf property. Fix handling of
16204 QCname.
16205 (ftfont_open): Set charset related members to -1.
16206
16207 * fontset.c (Votf_script_alist): New variable.
16208 (syms_of_fontset): Initialize it.
16209 (fontset_font): Delete unused variable.
16210
16211 * fontset.h (Votf_script_alist): Extern it.
16212
16213 * font.c (font_find_for_lface): Optimize code.
16214
16215 * font.h (font_close_object, font_merge_old_spec): Extern them.
16216
162172008-02-01 Kenichi Handa <handa@m17n.org>
16218
16219 * font.c (QCscalable, Qc, Qm, Qp, Qd): New variables.
16220 (syms_of_font): Initialize them.
16221 (font_pixel_size): Allow float value in dpi.
16222 (font_prop_validate_type): Delete.
16223 (font_prop_validate_symbol, font_prop_validate_style): Change argument.
16224 Change caller.
16225 (font_prop_validate_non_neg): Rename from font_prop_validate_size.
16226 (font_prop_validate_extra): Delete.
16227 (font_prop_validate_spacing): New function.
16228 (font_property_table): Add elements for all known properties.
16229 (get_font_prop_index): Rename from check_font_prop_name. New
16230 argument FROM. Change caller.
16231 (font_prop_validate): Validate all known properties.
16232 (font_put_extra): Delete argument force. Change caller.
16233 (font_expand_wildcards): Make it static. Fix the way of shrinking
16234 the possible range.
16235 (font_parse_xlfd): Delete argument merge. Fix handling of RESX,
16236 RESY, SPACING, and AVGWIDTH. Don't validate property values here.
16237 Change caller.
16238 (font_unparse_xlfd): Handle dpi, spacing, and scalable properties.
16239 (font_parse_fcname): Delete argument merge. Fix parsing of point
16240 size. Don't validate properties values here. Change caller.
16241 (font_unparse_fcname): Handle dpi, spacing, and scalable properties.
16242 (font_open_by_name): Delete unused variable.
16243 (Ffont_spec): Likewise. Validate property values.
16244 (Ffont_match_p): New function.
16245
16246 * font.h (QCscalable): Extern it.
16247 (font_parse_xlfd, font_parse_fcname): Adjust prototype.
16248
16249 * ftfont.c (ftfont_list): Handle properties dpi, spacing, and scalable.
16250
16251 * xfont.c (xfont_query_font): Adjust for the change of font_parse_xlfd.
16252 (xfont_list_pattern): New function.
16253 (xfont_list): Use xfont_list_pattern.
16254
162552008-02-01 Kenichi Handa <handa@m17n.org>
16256
16257 * font.h (Flist_fonts): EXFUN it.
16258
162592008-02-01 Jason Rumney <jasonr@gnu.org>
16260
16261 * w32term.c (w32_initialize): Add back smoothing_type and
16262 smoothing_enabled definitions.
16263
162642008-02-01 Kenichi Handa <handa@m17n.org>
16265
16266 * xterm.c (x_draw_glyph_string) [USE_FONT_BACKEND]: Check
16267 s->face->font on determining underline position.
16268
162692008-02-01 Kenichi Handa <handa@m17n.org>
16270
16271 * font.c (font_parse_xlfd): Fix generating of CHARSET_REGISTRY field.
16272 (font_has_char): Accept font-object too.
16273 (font_find_for_lface): Try at first with a size specified in face.
16274
162752008-02-01 Kenichi Handa <handa@m17n.org>
16276
16277 * frame.c (x_set_font) [USE_FONT_BACKEND]: Fix argument to
16278 font_open_by_name.
16279
162802008-02-01 Kenichi Handa <handa@m17n.org>
16281
16282 * font.h (QCspacing, QCdpi): Extern them.
16283 (enum font_spacing): New enum.
16284 (FONT_PIXEL_SIZE_QUANTUM): New macro.
16285
16286 * font.c (POINT_TO_PIXEL): Don't divide POINT by 10.
16287 (QCspacing, QCdpi): New variables.
16288 (syms_of_font): Initialize them.
16289 (font_pixel_size): New function.
16290 (font_put_extra): New function.
16291 (font_parse_xlfd): Fix handling of font size. Add QCdpi property
16292 in FONT_EXTRA.
16293 (font_parse_fcname): Handle enumerated values (e.g. bold).
16294 Fix handling font size. Add QCname property that contains only
16295 unknown properties.
16296 (font_score): Change argument. Change caller. Pay attention to
16297 FONT_PIXEL_SIZE_QUANTUM.
16298 (font_sort_entites, font_list_entities, font_find_for_lface)
16299 (font_open_for_lface, font_open_by_name): Fix handling of font size.
16300 (Ffont_spec): Add QCname property that contains only unknown properties.
16301
16302 * ftfont.c (ftfont_list): Use assq_no_quit, not Fassq. Don't
16303 include weight in listing pattern, instead check weight of each
16304 listed font. Don't include scalable in pattern. Pay attention to
16305 FONT_PIXEL_SIZE_QUANTUM.
16306
163072008-02-01 Kenichi Handa <handa@m17n.org>
16308
16309 * font.c (font_parse_fcname): Fix parsing of point-size.
16310 (font_unparse_fcname): Produce symbolic names for style properties.
16311 (font_list_entities): Handle float size correctly.
16312 (font_open_by_name): Prefer `normal' property values if the name
16313 doesn't specify them.
16314
16315 * fontset.c (Finternal_char_font): Use font_get_name, not
16316 Ffont_xlfd_name.
16317
16318 * ftfont.c (ftfont_pattern_entity): Use the numeric value 100 for
16319 FC_WEIGHT_REGULAR. Exclude FC_SIZE and FC_PIXEL_SIZE from listing
16320 pattern. Don't force scalable.
16321
16322 * xftfont.c (xftfont_open): For generating a name, start from
16323 96-byte buffer.
16324
163252008-02-01 Jan Djärv <jan.h.d@swipnet.se>
16326
16327 * frame.h (x_new_fontset2): Fix prototype.
16328
163292008-02-01 Kenichi Handa <handa@m17n.org>
16330
16331 * font.h (struct font_driver): Delete member parse_name.
16332 (font_match_p, font_get_spec, font_parse_fcname)
16333 (font_unparse_fcname): Extern them.
16334 (font_get_name): Adjust prototype.
16335
16336 * font.c (XLFD_SMALLNUM_MASK): Delete this macro.
16337 (XLFD_LARGENUM_MASK): Delete XLFD_ENCODING_MASK from it.
16338 (font_expand_wildcards): Fix handling ENCODING field. Avoid
16339 unnecessary checks for weight, slant, and swidth.
16340 (font_parse_fcname): New function.
16341 (font_unparse_fcname): New function.
16342 (font_parse_name): New function.
16343 (font_match_p): New function.
16344 (font_get_name): Change return value to Lisp string.
16345 (font_get_spec): New function.
16346 (Qunspecified, Qignore_defface): Don't extern them.
16347 (font_find_for_lface): Assume that LFACE is fully specified.
16348 (font_load_for_face): If lface[LFACE_FONT_INDEX] is an font
16349 object, use it for FACE.
16350 (font_open_by_name): Call Ffont_spec with QCname prop. Don't call
16351 driver->parse_name.
16352 (Ffont_spec): Call font_parse_name, not font_parse_xlfd.
16353
16354 * fontset.h (new_fontset_from_font) [USE_FONT_BACKEND]: Adjust
16355 prototype.
16356
16357 * fontset.c (new_fontset_from_font) [USE_FONT_BACKEND]: Delete
16358 argument F. Don't call Fnew_fontset. Instead, directly call
16359 make_fontset.
16360
16361 * frame.h (x_new_fontset2) [USE_FONT_BACKEND]: Adjust prototype.
16362
16363 * frame.c (x_set_font) [USE_FONT_BACKEND]: Adjust for the change
16364 of x_new_fontset2.
16365
16366 * ftfont.c (Qmonospace, Qsans_serif, Qserif, Qmono, Qsans)
16367 (Qsans__serif): New variables.
16368 (ftfont_generic_family_list): New variable.
16369 (syms_of_ftfont): Initialize the above variables.
16370 (ftfont_pattern_entity): Delete argument NAME.
16371 (ftfont_list_generic_family): New function.
16372 (ftfont_parse_name): Delete this function.
16373 (ftfont_list): Try generic family only when FcFontList found no font.
16374 (ftfont_list_family): Fix args to FcObjectSetBuild.
16375
16376 * xfaces.c (check_lface_attrs) [USE_FONT_BACKEND]: Accept font
16377 object in attrs[LFACE_FONT_INDEX].
16378 (set_lface_from_font_name): Cancel all changes for font-backend.
16379 (set_lface_from_font_and_fontset) [USE_FONT_BACKEND]: New
16380 function.
16381 (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]: Accept a
16382 font object in QCfont attribute.
16383 (set_font_frame_param) [USE_FONT_BACKEND]: Likewise.
16384 (realize_default_face) [USE_FONT_BACKEND]: Call
16385 set_lface_from_font_and_fontset.
16386
16387 * xfns.c (x_default_font_parameter) [USE_FONT_BACKEND]: Try also
16388 "fixed", and signal error here if no suitable font was found.
16389
16390 * xfont.c (xfont_parse_name): Delete this function.
16391
16392 * xftfont.c (xftfont_open): Change coding style of error
16393 handling. Generate fontconfig's fontname pattern.
16394
16395 * xterm.h (struct x_output) [USE_FONT_BACKEND]: New member fontp.
16396 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro.
16397
16398 * xterm.c (x_new_fontset2) [USE_FONT_BACKEND]: Change arguments.
16399 Both args FONTSET and FONT_OBJECT must be existing ones.
16400
164012008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16402
16403 * macterm.c (mac_set_unicode_keystroke_event): Don't use MAKE_CHAR.
16404
164052008-02-01 Kenichi Handa <handa@m17n.org>
16406
16407 * xfont.c (xfont_open, xfont_encode_char): Fix typo.
16408
16409 * font.h (struct font): Fix typo.
16410
16411 * font.c (enum xlfd_field_index): Rename XLFD_XXX_SIZE_INDEX to
16412 XLFD_XXX_INDEX.
16413 (enum xlfd_field_mask): New enum.
16414 (intern_font_field): Changed argument. Change caller. If digits
16415 are followed by non-digits, return a symbol.
16416 (font_expand_wildcards): New function.
16417 (font_parse_xlfd): Fix wildcard handling.
16418 (Ffont_spec): If :name is specified, reflect the info in the other
16419 properties.
16420
16421 * ftfont.c (ftfont_pattern_entity): Fix typo.
16422 (ftfont_list): Enforce FC_LANG in PATTERN to cancel the effect of
16423 locale.
16424
164252008-02-01 Kenichi Handa <handa@m17n.org>
16426
16427 * font.h (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Extern them.
16428
16429 * font.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move from ftfont.c.
16430 (font_unparse_xlfd): Fix argument type declaration. Append "*" if
16431 registry doesn't specify encoding part.
16432 (font_find_for_lface): Pay attention to LFACE_FONT_INDEX.
16433 (font_open_by_name): At first try parsing the name.
16434 (syms_of_font): Declare Qiso8859_1, Qiso10646_1, and Qunicode_bmp
16435 as Lisp symbols.
16436
16437 * fontset.c (reorder_font_vector): Pay attention to the case that
16438 the 3rd element of font_def is nil.
16439 (fontset_font): For the default fontset, append one more fontset
16440 elements for a script-based font specification. Don't add script
16441 attribute on finding a font.
16442 (new_fontset_from_font): Unconditionally set FONTSET_ASCII to the
16443 font name.
16444 (fontset_ascii_font): If a font can't be opened, return nil.
16445
16446 * ftfont.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move to font.c.
16447 (ftfont_pattern_entity): New function.
16448 (ftfont_get_cache): Assume that freetype_font_cache is already
16449 initialized.
16450 (ftfont_list): Handle the case that a file is specified in font
16451 name. Use ftfont_pattern_entity to generate entities.
16452 (ftfont_has_char): Check if the pattern contains FC_CHARSET.
16453 (syms_of_ftfont): Initialize freetype_font_cache.
16454
16455 * xftfont.c (xftfont_open): Make the font name fontconfig's
16456 style. Add BLOCK_INPUT and UNBLOCK_INPUT.
16457 (xftfont_close): Free font->font.name if not NULL.
16458
16459 * xfont.c (xfont_list): If script is specified for a font, return
16460 null_vector.
16461 (xfont_list_family): Declare argument type.
16462
16463 * xfaces.c (set_lface_from_font_name): If a font doesn't have a
16464 name, set LFACE_FONT (lface) to nil.
16465
16466 * xterm.c (x_new_fontset2): If an ASCII font couldn't be loaded,
16467 return Qnil.
16468
164692008-02-01 Kenichi Handa <handa@m17n.org>
16470
16471 * emacs.c (main): Check -enable-font-backend arg after the check of -nl.
16472 (standard_args): Add "-enable-font-backend".
16473
164742008-02-01 Kenichi Handa <handa@m17n.org>
16475
16476 * xftfont.c (xftfont_default_fid): Set fid_known to 1.
16477 (struct xftdraw_list, xftdraw_list): Delete them.
16478 (register_xftdraw, check_xftdraw): Delete them.
16479 (xftfont_prepare_face): Don't call register_xftdraw.
16480 (xftfont_done_face): Don't call check_xftdraw.
16481 (xftfont_draw): Get background color only when with_background is
16482 nonzero.
16483
16484 * xfont.c (xfont_encode_char): Fix calculation of char2b.
16485
164862008-02-01 Kenichi Handa <handa@m17n.org>
16487
16488 These changes are for the new font handling codes.
16489
16490 * Makefile.in (ALL_CFLAGS): Add @FREETYPE_CFLAGS@,
16491 @FONTCONFIG_CFLAGS@, and @LIBOTF_CFLAGS@.
16492 (LIB_X11_LIB): If HAVE_XFT is defined, set to @XFT_LIBS@.
16493 (FONTSRC, FONTOBJ): New variables.
16494 (obj): Add $(FONTOBJ).
16495 (SOME_MACHINE_OBJECTS): Lib_X11_Lib.
16496 (LIBES): Add @FREETYPE_LIBS@, @FONTCONFIG_LIBS@, and
16497 @LIBOTF_LIBS@.
16498 (font.o, ftfont.o, xfont.o, xftfont.o, ftxfont.o): New targets.
16499 (fontset.o, xdisp.o, xfaces.o, xfns.o, xterm.o): Depend on $(FONTSRC).
16500
16501 * font.h, font.c, xfont.c, ftfont.c, xftfont.c, ftxfont.c: New files.
16502
16503 * character.h (Vscript_representative_chars): Extern it.
16504
16505 * character.c (Vscript_representative_chars): New variable.
16506 (syms_of_character): Declare it as a Lisp variable.
16507
16508 * composite.c (get_composition_id) [USE_FONT_BACKEND]: If
16509 enable_font_backend is nonzero, accept the composition method
16510 COMPOSITION_WITH_GLYPH_STRING.
16511
16512 * composite.h (enum composition_method) [USE_FONT_BACKEND]: New
16513 enumeration COMPOSITION_WITH_GLYPH_STRING.
16514
16515 * dispextern.h (struct glyph_string) [USE_FONT_BACKEND]: New
16516 members clip_x, clip_y, clip_width, and clip_height.
16517 (struct face) [USE_FONT_BACKEND]: New members font_info and extra.
16518
16519 * emacs.c (main) [USE_FONT_BACKEND]: Handle arg
16520 --enable-font-backend. Call syms_of_font.
16521
16522 * fns.c (assoc_no_quit): New function.
16523
16524 * fontset.h (FONT_INFO_FROM_FACE): New macro.
16525 (face_for_font, new_fontset_from_font)
16526 (fontset_ascii_font) [USE_FONT_BACKEND]: Extern them.
16527
16528 * fontset.c [USE_FONT_BACKEND]: Include "font.h".
16529 (fontset_font, fontset_ascii, face_for_char)
16530 (make_fontset_for_ascii_face, Ffont_info)
16531 (Finternal_char_font) [USE_FONT_BACKEND]: If enable_font_backend
16532 is nonzero, use font-backend mechanism.
16533 (find_font_encoding): Make it non-static.
16534 (new_fontset_from_font, fontset_ascii_font) [USE_FONT_BACKEND]:
16535 New functions.
16536
16537 * frame.h (struct frame): New members resx and resy.
16538 (struct frame) [USE_FONT_BACKEND]: New member font_driver_list.
16539 (x_new_fontset2) [USE_FONT_BACKEND]: Extern it.
16540
16541 * frame.c [USE_FONT_BACKEND]: Include "font.h".
16542 (make_frame, x_set_font) [USE_FONT_BACKEND]: Use font-backend mechanism.
16543
16544 * lisp.h (assoc_no_quit): Extern it.
16545
16546 * xdisp.c: If USE_FONT_BACKEND is defined, include "font.h".
16547 Through out the file, use FONT_INFO_FROM_FACE instead of
16548 FONT_INFO_FROM_ID, use get_per_char_metric instead of
16549 rif->per_char_metric.
16550 (handle_composition_prop) [USE_FONT_BACKEND]: If the composition
16551 method is COMPOSITION_WITH_GLYPH_STRING, just set it->c to ' '.
16552 (get_glyph_face_and_encoding, fill_composite_glyph_string)
16553 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
16554 (x_produce_glyphs) [USE_FONT_BACKEND]: If enable_font_backend is
16555 nonzero, use font-backend mechanism.
16556 (get_per_char_metric): New function.
16557
16558 * xfaces.c [USE_FONT_BACKEND]: Include "font.h".
16559 (set_lface_from_font_name)
16560 (set_font_frame_param, free_realized_face)
16561 (prepare_face_for_display, clear_face_gcs)
16562 (Finternal_set_font_selection_order, realize_x_face)
16563 [USE_FONT_BACKEND]: If enable_font_backend is nonzero, use
16564 font-backend mechanism.
16565 (clear_face_cache) [USE_FONT_BACKEND]: Don't call clear_font_table.
16566 (load_face_font) [USE_FONT_BACKEND]: Abort.
16567 (face_symbolic_value, face_symbolic_weight, face_symbolic_slant)
16568 (face_symbolic_swidth, face_for_font) [USE_FONT_BACKEND]: New functions.
16569
16570 * xfns.c [USE_FONT_BACKEND]: Include "font.h".
16571 (x_default_font_parameter) [USE_FONT_BACKEND]: New function.
16572 (Fx_create_frame) [USE_FONT_BACKEND]: If enable_font_backend is
16573 nonzero, register all available font drivers. Call
16574 x_default_font_parameter for deciding a font.
16575 (x_create_tip_frame) [USE_FONT_BACKEND]: Likewise.
16576
16577 * xterm.c [USE_FONT_BACKEND]: Include "font.h".
16578 (x_set_mouse_face_gc, x_set_glyph_string_clipping)
16579 (x_set_glyph_string_clipping_exactly)
16580 (x_compute_glyph_string_overhangs)
16581 (x_draw_glyph_string_foreground)
16582 (x_draw_composite_glyph_string_foreground, x_draw_glyph_string)
16583 (x_free_frame_resources) [USE_FONT_BACKEND]: If
16584 enable_font_backend is nonzero, use font-backend mechanism.
16585 (x_new_fontset2) [USE_FONT_BACKEND]: New function.
16586
165872008-02-01 Kenichi Handa <handa@m17n.org>
16588
16589 * coding.c (coding_inherit_eol_type): If PARENT is nil, inherit from
16590 system_eol_type.
16591 (syms_of_coding): Initialize system_eol_type.
16592
16593 * process.c (Fset_process_coding_system): Inherit system's eol
16594 format if necessary.
16595
165962008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16597
16598 * macgui.h (USE_ATSUI): Don't enable on emacs-unicode-2 branch.
16599
166002008-02-01 Kenichi Handa <handa@m17n.org>
16601
16602 * coding.c (decode_eol): Pay attention to buffer relocation in
16603 del_range_2.
16604 (decode_coding): Call decode_eol before restoring undo_list.
16605
166062008-02-01 Kenichi Handa <handa@m17n.org>
16607
16608 * charset.c (Fdefine_charset_internal): Fix setting of
16609 emacs_mule_bytes.
16610
166112008-02-01 Kenichi Handa <handa@m17n.org>
16612
16613 * keyboard.c (read_char): Check if C is a character or not before
16614 looking up Vkeyboard_translate_table.
16615
166162008-02-01 Kenichi Handa <handa@m17n.org>
16617
16618 * coding.c (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Fix
16619 condition to terminate the loop.
16620
166212008-02-01 Kenichi Handa <handa@m17n.org>
16622
16623 * coding.c (produce_composition): Compare charbuf[i] instead of
16624 args[i] against 0.
16625 (Fterminal_coding_system): Use EQ to compare Lisp objects.
16626
166272008-02-01 Kenichi Handa <handa@m17n.org>
16628
16629 * coding.c (DECODE_COMPOSITION_START): If the source is short, set
16630 coding->result to CODING_RESULT_INSUFFICIENT_SRC.
16631 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK after the call of
16632 detect_coding.
16633 (emacs_mule_char): Handle old style (Emacs 20) component character
16634 of a composition.
16635 (DECODE_EMACS_MULE_COMPOSITION_RULE_20)
16636 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Fix parsing a
16637 composition rule.
16638 (decode_coding_emacs_mule): Handle invalid bytes correctly.
16639
166402008-02-01 Kenichi Handa <handa@m17n.org>
16641
16642 * coding.c (encode_coding_ccl): Allocate destination dynamically
16643 when necessary.
16644
166452008-02-01 Kenichi Handa <handa@m17n.org>
16646
16647 * ccl.c (Fccl_execute_on_string): Fix the condition of terminating
16648 the loop. When quitted, show a proper error message.
16649
166502008-02-01 Kenichi Handa <handa@m17n.org>
16651
16652 * xterm.c (x_set_glyph_string_clipping_exactly): Set
16653 src->clip_head and src->clip_tail temporarily instead of src->hl.
16654
16655 * ccl.c (CCL_WRITE_STRING): Handle a flag bit for multibyte
16656 character sequence.
16657 (Fccl_execute_on_string): Use ASET, not XSET.
16658
166592008-02-01 Kenichi Handa <handa@m17n.org>
16660
16661 * search.c (search_buffer): Fix handling of "\\" in a trivial regexp.
16662
166632008-02-01 Kenichi Handa <handa@m17n.org>
16664
16665 * coding.c (decode_coding): Fix the condition of terminating the
16666 decoding loop.
16667
166682008-02-01 Kenichi Handa <handa@m17n.org>
16669
16670 * data.c (Faset): On setting a character bigger than 255 in a
16671 unibyte string, signal an error instead of make the string multibyte.
16672
166732008-02-01 Kenichi Handa <handa@m17n.org>
16674
16675 * charset.c (map_charset_chars): Fix for ascii-compatible charset
16676 made by a mapping table.
16677
166782008-02-01 Kenichi Handa <handa@m17n.org>
16679
16680 * xdisp.c (fill_composite_glyph_string): Check s->face is NULL or
16681 not.
16682 (BUILD_COMPOSITE_GLYPH_STRING): If C is TAB, set s->face to NULL.
16683 (x_produce_glyphs): If CH is TAB, set cmp->offsets properly.
16684
16685 * xterm.c (x_draw_composite_glyph_string_foreground): Check
16686 s->face is NULL or not.
16687
166882008-02-01 Kenichi Handa <handa@m17n.org>
16689
16690 * xterm.c (x_set_glyph_string_clipping_exactly): New function.
16691 (x_draw_glyph_string): Fix drawing of right_overhang and
16692 left_overhang around/on cursor.
16693
16694 * xdisp.c (draw_glyphs): Fix inclusion of right_overwriting glyphs.
16695
166962008-02-01 Kenichi Handa <handa@m17n.org>
16697
16698 * xdisp.c (x_produce_glyphs): Handle composition with TAB.
16699
167002008-02-01 Kenichi Handa <handa@m17n.org>
16701
16702 * coding.c (Fdefine_coding_system_internal)
16703 (Fdefine_coding_system_alias): Avoid a duplicated element in
16704 Vcoding_system_alist.
16705
167062008-02-01 Kenichi Handa <handa@m17n.org>
16707
16708 * xterm.c (handle_one_xevent): Handle keysyms 0x1000000..0x10000FF.
16709
16710 * coding.c (Qcoding_system_define_form): New variable.
16711 (syms_of_coding): Intern and staticpro it.
16712 (Fcoding_system_p): Check Qcoding_system_define_form.
16713 (Fcheck_coding_system): Try to autoload the definition of CODING-SYSTEM.
16714
16715 * coding.h (CODING_SYSTEM_P): If ID is not available, call
16716 Fcoding_system_p.
16717 (CHECK_CODING_SYSTEM): If ID is not available, call
16718 Fcheck_coding_system.
16719 (CHECK_CODING_SYSTEM_GET_SPEC, CHECK_CODING_SYSTEM_GET_ID):
16720 Try also Fcheck_coding_system.
16721
167222008-02-01 Kenichi Handa <handa@m17n.org>
16723
16724 * coding.c (code_conversion_restore): GCPRO arg.
16725
167262008-02-01 Kenichi Handa <handa@m17n.org>
16727
16728 * character.c (lisp_string_width): Check multibyteness of STRING.
16729
167302008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16731
16732 * macterm.c (mac_encode_char): Call ccl_driver with the last arg
16733 Qnil. Use JIS_TO_SJIS instead of ENCODE_SJIS.
16734 (decode_mac_font_name): Use decode_coding_c_string instead of
16735 decode_coding.
16736 (x_load_font): Initialize fontp->fontset to -1. Set
16737 fontp->encoding_type.
16738
167392008-02-01 Kenichi Handa <handa@m17n.org>
16740
16741 * search.c (search_buffer): Give up BM search on case-fold-search
16742 if one of a target character has a case-equivalence of different
16743 byte length even if that target charcter is an ASCII.
16744 (simple_search): Fix calculation of byte length of matched text.
16745 (boyer_moore): Fix handling of case-equivalent multibyte characters.
16746
167472008-02-01 Kenichi Handa <handa@m17n.org>
16748
16749 * coding.c (decode_coding): Fix handling of invalid bytes.
16750
167512008-02-01 Kenichi Handa <handa@m17n.org>
16752
16753 * xterm.c (handle_one_xevent): Handle keysyms directly mapped to
16754 Unicode characters.
16755
167562008-02-01 Kenichi Handa <handa@m17n.org>
16757
16758 * coding.c (encode_coding_object): If a pre-write-conversion
16759 function makes a new buffer, kill it.
16760
167612008-02-01 Kenichi Handa <handa@m17n.org>
16762
16763 * coding.c (QCascii_compatible_p): New variable.
16764 (syms_of_coding): Initialize it.
16765 (ONE_MORE_BYTE, ONE_MORE_BYTE_NO_CHECK): Decrement `src' before
16766 calling string_char.
16767 (record_conversion_result): Add `default:' case.
16768 (coding_charset_list): Delete unused variable `coding_type'.
16769 (Fdefine_coding_system_internal): Add `ascii-compatible-p'
16770 property in the plist of the coding system.
16771 (Fcoding_system_put): Check QCascii_compatible_p.
16772
167732008-02-01 Miles Bader <miles@gnu.org>
16774
16775 * xfaces.c (Finternal_lisp_face_equal_p): Restore previously
16776 removed calculation of frame `f', as it's now used.
16777
167782008-02-01 Kenichi Handa <handa@m17n.org>
16779
16780 * Makefile.in (RUN_TEMACS): Include "-nl" if HAVE_SHM is defined.
16781 (emacs${EXEEXT}): Run $(RUN_TEMACS) unconditionally.
16782 (UNIDATA): New variable.
16783 (${lispsource}international/charprop.el): Depends on ${UNIDATA}.
16784 (bootstrap-emacs${EXEEXT}): Depends on charprop.el. Run
16785 $(RUN_TEMACS) unconditionally.
16786
167872008-02-01 Kenichi Handa <handa@m17n.org>
16788
16789 * Makefile.in (temacs${EXEEXT}): Build charprop.el if necessary.
16790 (admindir): New variable.
16791 ($(lispsource)international/charprop.el): New target.
16792
167932008-02-01 Miles Bader <miles@gnu.org>
16794
16795 * character.c (chars-in-region): Remove obsolete function.
16796 (syms_of_character): Remove its initialization.
16797
167982008-02-01 Benjamin Riefenstahl <b.riefenstahl@turtle-trading.net>
16799
16800 * w32select.c (validate_coding_system)
16801 (setup_windows_coding_system): New functions.
16802 (convert_to_handle_as_coded, Fw32_get_clipboard_data): Use
16803 setup_windows_coding_system.
16804 (setup_config, Fw32_get_clipboard_data): Use
16805 validate_coding_system.
16806 (Fx_selection_exists): Move call to setup_config to a place
16807 where signals are allowed.
16808
16809 * lisp.h (Fcoding_system_base, Fcoding_system_eol_type)
16810 (Fcheck_coding_system): Add declarations.
16811
168122008-02-01 Kenichi Handa <handa@m17n.org>
16813
16814 * charset.c (load_charset_map_from_vector): Fix for the first iteration.
16815
168162008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16817
16818 * macfns.c (Fx_create_frame, x_create_tip_frame): Pass Lisp
16819 string as the second argument for x_new_fontset.
16820
168212008-02-01 Kenichi Handa <handa@m17n.org>
16822
16823 * coding.c (decode_coding_object): Use safe_call1 instead of call1.
16824 (encode_coding_object): Use safe_call instead of call2.
16825
168262008-02-01 Kenichi Handa <handa@m17n.org>
16827
16828 * fontset.c (Fset_fontset_font): Check family element of a given vector.
16829
16830 * Makefile.in (lisp): Include charprop.el.
16831
168322008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16833
16834 * macfns.c (Fx_create_frame, x_create_tip_frame): Fix crash.
16835 Not sure if it's unnecessary.
16836
168372008-02-01 Steven Tamm <steventamm@mac.com>
16838
16839 * macfns.c (Fx_create_frame, x_create_tip_frame): ifdef'd out
16840 some possibly unnecessary fontset checking code that crashed
16841 when creating a new frame.
16842
168432008-02-01 Kenichi Handa <handa@m17n.org>
16844
16845 * xfaces.c (merge_faces): Fix argument to lookup_derived_face and
16846 lookup_face.
16847
16848 * xdisp.c (Fformat_mode_line): Fix argument to lookup_named_face.
16849
16850 * fringe.c (draw_fringe_bitmap_1): Fix argument to lookup_named_face.
16851
168522008-02-01 Kenichi Handa <handa@m17n.org>
16853
16854 * coding.c: Cancel the change done in HEAD on 2008-02-01.
16855 (coding_charset_list): New function.
16856
16857 * coding.h (coding_charset_list): Extern it.
16858
168592008-02-01 Kenichi Handa <handa@m17n.org>
16860
16861 * fontset.c (Fset_fontset_font): Call find_font_encoding with
16862 concatenation of family and registry.
16863
168642008-02-01 Kenichi Handa <handa@m17n.org>
16865
16866 * character.h (BYTE8_STRING): Fix typo.
16867
16868 * editfns.c (Ftranslate_region_internal): Don't convert unibyte
16869 string to multibyte (sync to HEAD).
16870
16871 * casefiddle.c (casify_region): Handle changes in byte-length
16872 using replace_range_2 (sync to HEAD).
16873
168742008-02-01 Andreas Schwab <schwab@suse.de>
16875
16876 * chartab.c (map_char_table): GCPRO table and arg.
16877
168782008-02-01 Kenichi Handa <handa@m17n.org>
16879
16880 * syntax.c (skip_syntaxes): Return lispy 0 (not nil) if point is
16881 already at limit.
16882
168832008-02-01 Kenichi Handa <handa@m17n.org>
16884
16885 * fontset.c (fs_load_font): Use fast_string_match_ignore_case
16886 instead of fast_c_string_match_ignore_case.
16887 (find_font_encoding): Change argument to Lisp_Object. Use
16888 fast_string_match_ignore_case instead of
16889 fast_c_string_match_ignore_case. Change caller.
16890
168912008-02-01 Kenichi Handa <handa@m17n.org>
16892
16893 * xdisp.c (get_next_display_element): In unibyte case, decide to
16894 display in octal form by checking a character by
16895 UNIBYTE_CHAR_HAS_MULTIBYTE_P.
16896
16897 * charset.c (Fset_unibyte_charset): Setup unibyte_has_multibyte_table.
16898
16899 * character.c (unibyte_has_multibyte_table): New variable.
16900
16901 * character.h (unibyte_has_multibyte_table): Extern it.
16902 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): New macro.
16903
169042008-02-01 Kenichi Handa <handa@m17n.org>
16905
16906 * coding.c (encode_coding_iso_2022): Fix handling of charset
16907 annotation.
16908
169092008-02-01 Kenichi Handa <handa@m17n.org>
16910
16911 * coding.c (setup_coding_system): If coding_system is nil, use
16912 Qundecided.
16913 (Fterminal_coding_system): Return nil if terminal coding system is
16914 `undecided'.
16915 (syms_of_coding): Define coding-system `undecided' here. Setup
16916 terminal_coding as `undecided'.
16917
169182008-02-01 Kenichi Handa <handa@m17n.org>
16919
16920 * xdisp.c (message_dolog, set_message_1): Call
16921 unibyte_char_to_multibyte with arg type int.
16922
16923 * lread.c (read1): Fix reading of a char-table.
16924
16925 * print.c (print_object): Include sub char-table in circularities
16926 detection.
16927
169282008-02-01 Kenichi Handa <handa@m17n.org>
16929
16930 * keymap.c (where_is_internal_2): Fix for the case that KEY is a cons.
16931 Append the found sequences in car of ARGS instead of prepending.
16932
169332008-02-01 Kenichi Handa <handa@m17n.org>
16934
16935 * fileio.c (report_file_error): Make a unibyte string from
16936 strerror (errorno).
16937 (Fsubstitute_in_file_name): Fix the arg to
16938 unibyte_char_to_multibyte. It is evaluated twice.
16939
169402008-02-01 Kenichi Handa <handa@m17n.org>
16941
16942 * charset.h (CHAR_CHARSET): Shortcut for ASCII case.
16943
169442008-02-01 Kenichi Handa <handa@m17n.org>
16945
16946 * coding.c (detect_coding_utf_16): Don't set detect_info->found if
16947 BOM is not found.
16948 (detect_coding, detect_coding_system): Optimization for ISO-2022
16949 when no 8-bit data is found.
16950
169512008-02-01 Jason Rumney <jasonr@gnu.org>
16952
16953 * w32fns.c (x_to_w32_font): Update to use new coding struct.
16954
169552008-02-01 Kenichi Handa <handa@m17n.org>
16956
16957 * charset.c (Fdeclare_equiv_charset, Fiso_charset): Fix handing of
16958 CHARS.
16959
169602008-02-01 Steven Tamm <steventamm@mac.com>
16961
16962 * macterm.c (mac_encode_char): Add charset argument and update
16963 to use encoding_type.
16964 (x_new_font, x_new_fontset): Merge in changes from xterm.c;
16965 switch to pure fontset.
16966 (decode_mac_font_name): Temporarily remove decoding.
16967 (x_font_name_to_mac_font_name): Temporarily remove encoding.
16968 (x_load_font): Temporarily remove encoding.
16969
169702008-02-01 Kenichi Handa <handa@m17n.org>
16971
16972 * xfaces.c (Fface_font): If frame is not on a window system,
16973 ignore CHARACTER arg. If HAVE_WINDOW_SYSTEM is not defined, don't
16974 refer to face->font.
16975 (split_font_name_into_vector, build_font_name_from_vector)
16976 (lookup_non_ascii_face, realize_non_ascii_face): Define them only
16977 when HAVE_WINDOW_SYSTEM is defined.
16978
169792008-02-01 Kenichi Handa <handa@m17n.org>
16980
16981 * xdisp.c (BUILD_GLYPH_STRINGS): Check if s is NULL.
16982 (x_produce_glyphs): Fix setting of members of cmp in case
16983 cmp->glyph_len is zero.
16984
16985 * fontset.c (Fset_fontset_font): Fix docstring.
16986 (Ffontset_info): Make it backward compatible. New arg ALL.
16987
169882008-02-01 Kim F. Storm <storm@cua.dk>
16989
16990 * process.c (read_process_output): Grow decoding_buf when needed;
16991 this could cause a crash in allocate_string and compact_small_strings.
16992
169932008-02-01 Kenichi Handa <handa@m17n.org>
16994
16995 * fileio.c (WRITE_BUF_SIZE): Delete this macro.
16996
169972008-02-01 Kenichi Handa <handa@m17n.org>
16998
16999 * coding.c (setup_coding_system): Set coding->common_flags
17000 correctly for raw-text.
17001 (consume_chars): On encoding unibyte text by raw-text, don't check
17002 multibyte form.
17003 (encode_coding): On encoding by raw-text, never use translation tables.
17004
17005 * fileio.c (e_write): Short cut for the case of no encoding.
17006
170072008-02-01 Kenichi Handa <handa@m17n.org>
17008
17009 * coding.c (detect_coding, detect_coding_system): Delete unused
17010 variables.
17011
170122008-02-01 Kenichi Handa <handa@m17n.org>
17013
17014 * coding.c (encode_coding_utf_8): Fix handling of raw-byte char.
17015 (consume_chars): Fix handling of 8-bit bytes in unibyte source.
17016
170172008-02-01 Kenichi Handa <handa@m17n.org>
17018
17019 * coding.c (Ffind_coding_systems_region_internal): Include
17020 raw-text and no-conversion in the result.
17021
170222008-02-01 Kenichi Handa <handa@m17n.org>
17023
17024 * fontset.c (find_font_encoding): Return `ascii' for unknown encoding.
17025 (load_font_get_repertory): Delete unnecessary check of ENCODING of
17026 FONT_DEF.
17027 (font_def_arg, add_arg, from_arg, to_arg): New args.
17028 (set_fontset_font): Change argument.
17029 (Fset_fontset_font): Fix for the case that TARGET is a script
17030 name and charset name.
17031 (new_fontset_from_font_name): Fix argument to Fnew_fontset.
17032
170332008-02-01 Kenichi Handa <handa@m17n.org>
17034
17035 * fontset.c (fontset_font): Rename from fontset_face. Change return
17036 value.
17037 (face_suitable_for_char_p, face_for_char): Adjust for the change
17038 of fontset_font.
17039 (make_fontset_for_ascii_face): Fix setting of the fontset element
17040 for ASCII.
17041 (Finternal_char_font): Use fontset_font instead of FACE_FOR_CHAR
17042 to get a font name.
17043 (Ffontset_info): Adjust for the change of fontset_font.
17044
17045 * coding.c (emacs_mule_char): Check invalid code more rigidly.
17046
17047 * character.h (LEADING_CODE_LATIN_1_MIN)
17048 (LEADING_CODE_LATIN_1_MAX): Delete these macros.
17049
170502008-02-01 Kenichi Handa <handa@m17n.org>
17051
17052 * editfns.c (check_translation): New function.
17053 (Ftranslate_region_internal): Handle M:N mapping.
17054
170552008-02-01 Kenichi Handa <handa@m17n.org>
17056
17057 * xfaces.c (xlfd_point_size): Set font->numeric[XLFD_PIXEL_SIZE].
17058
170592008-02-01 Kenichi Handa <handa@m17n.org>
17060
17061 * coding.c (DECODE_DESIGNATION): Set chars_96 to -1 instead of
17062 goto invalid_code.
17063 (decode_coding_iso_2022): Fix handling of invalid designation.
17064
17065 * fileio.c (Finsert_file_contents): Be sure to call unbind_to
17066 after calling code_conversion_save.
17067
170682008-02-01 Kenichi Handa <handa@m17n.org>
17069
17070 * xdisp.c (handle_auto_composed_prop): Fix Lisp_Object/int mixup.
17071
17072 * print.c (print_prune_string_charset): Fix Lisp_Object/int mixup.
17073
17074 * fontset.c: Include "intervals.h".
17075 (fontset_face): Fix comparing of Lisp_Objects.
17076 (free_face_fontset, new_fontset_from_font_name): Fix
17077 Lisp_Object/int mixup.
17078
17079 * editfns.c (Ftranslate_region_internal): Fix Lisp_Object/int mixup.
17080
17081 * coding.c: Add many prototypes for static functions.
17082 (get_translation_table): Allow max_lookup to be NULL.
17083 (decode_coding, Ffind_coding_systems_region_internal)
17084 (Funencodable_char_position, Fcheck_coding_systems_region): Call
17085 get_translation_table with max_lookup NULL.
17086
170872008-02-01 Kenichi Handa <handa@m17n.org>
17088
17089 * coding.c (get_translation_table): Declare it as Lisp_Object.
17090 (LOOKUP_TRANSLATION_TABLE): New macro.
17091 (produce_chars, consume_chars): Use LOOKUP_TRANSLATION_TABLE
17092 instead of CHAR_TABLE_REF.
17093
170942008-02-01 Kenichi Handa <handa@m17n.org>
17095
17096 * coding.c (MAX_ANNOTATION_LENGTH): Adjust for the change of
17097 annotation data format.
17098 (ADD_ANNOTATION_DATA, ADD_COMPOSITION_DATA, ADD_CHARSET_DATA):
17099 Change arguments FROM and TO to single argument NCHARS. Change caller.
17100 (decode_coding_utf_8, decode_coding_utf_16, decode_coding_emacs_mule)
17101 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
17102 (decode_coding_ccl, decode_coding_charset): Pay attention to
17103 coding->charbuf_used.
17104 (get_translation): New function.
17105 (produce_chars): New arguments translation_table and last_block.
17106 Translate characters here. Return number of carryover chars.
17107 Change caller.
17108 (produce_composition): New argument pos. Change caller.
17109 Adjust for the change of annotation data format.
17110 (produce_charset, produce_annotation): Likewise.
17111 (decode_coding, encode_coding): Don't call translate_chars.
17112 (consume_chars): New arg translation_table. Change caller.
17113 (translate_chars): Delete.
17114 (syms_of_coding): Make translation-table's number of extra slots 2.
17115
171162008-02-01 Kenichi Handa <handa@m17n.org>
17117
17118 * search.c (simple_search): Fix setting this_pos_byte in backward
17119 search.
17120
17121 * coding.c (detect_coding_emacs_mule): Fix counting of encoded
17122 byte sequence.
17123 (detect_coding_ccl): Fix setting of the variable valids.
17124
171252008-02-01 Kenichi Handa <handa@m17n.org>
17126
17127 * xterm.c (x_list_fonts): Fix the detection of an auto-scaled font.
17128
17129 * coding.c (decode_coding_utf_16): Fix handling of surrogate pair.
17130
17131 * editfns.c (Ftranslate_region_internal): Rename from
17132 Ftranslate_region. Accept a char-table in TABLE.
17133 (syms_of_editfns): Defsubr Stranslate_region_internal.
17134
17135 * xfaces.c (set_lface_from_font_name): If a font is specified for
17136 a frame, generate a fontset from the font.
17137 (build_scalable_font_name): If the scalable font is requested for
17138 a specific size, don't change that size.
17139 (try_font_list): Try a scalable font also in the case that a
17140 pattern string is specified.
17141
171422008-02-01 Kenichi Handa <handa@m17n.org>
17143
17144 * xfaces.c (Fface_font): New optional arg CHARACTER.
17145
171462008-02-01 Kenichi Handa <handa@m17n.org>
17147
17148 * charset.h (CHARSET_OFFSET): New macro.
17149
171502008-02-01 Kenichi Handa <handa@m17n.org>
17151
17152 * xterm.c (x_get_font_repertory): Fix for non-Unicode-bmp charset.
17153
17154 * fontset.c (fontset_face): Handle the case that repertory is a
17155 char-table.
17156 (find_font_encoding): Return nil for unknown encoding.
17157 (Fset_fontset_font): Ignore a font of unknown encoding.
17158
171592008-02-01 Kenichi Handa <handa@m17n.org>
17160
17161 * keymap.c (describe_vector): Handle default value of a char table.
17162
17163 * fontset.c (fontset_face): Handle fallback fonts correctly.
17164 (Ffontset_info): Return infomation about fallback fonts.
17165
171662008-02-01 Kenichi Handa <handa@m17n.org>
17167
17168 * fontset.c (FONTSET_DEFAULT): New macro.
17169 (FONTSET_ADD, fontset_add): Handle the case that range is nil.
17170 (Fset_fontset_font): Change the 2nd arg name to TARGET, and handle
17171 the case that it is nil.
17172 (dump_fontset): Call FONTSET_DEFAULT, not FONTSET_FALLBACK.
17173 (syms_of_fontset): Set char-table-extra-slots property of fontset to 9.
17174
17175 * charset.h (CHAR_CHARSET_P): Fix for the case that the method is
17176 subset or superset.
17177
171782008-02-01 Kenichi Handa <handa@m17n.org>
17179
17180 * emacs.c (main): Call init_charset after syms_of_XXX.
17181
17182 * charset.c (Vcharset_map_directory): Delete.
17183 (Vcharset_map_path): New variable.
17184 (load_charset_map_from_file): Use Vcharset_map_path instead.
17185 (init_charset): Initialize Vcharset_map_path.
17186 (syms_of_charset): Delete declaration of "charset-map-directory",
17187 add declaration of "charset-map-path".
17188
171892008-02-01 Kenichi Handa <handa@m17n.org>
17190
17191 * fns.c (string_char_to_byte, string_byte_to_char): Optimize for
17192 ASCII only string.
17193
17194 * fileio.c (Finsert_file_contents): Avoid detecting a code twice.
17195
17196 * coding.c (detect_coding_iso_2022): Fix handling of SS2 and SS3.
17197 (detect_coding, detect_coding_system): Treat '\0' as normal ASCII byte.
17198
171992008-02-01 Kenichi Handa <handa@m17n.org>
17200
17201 * coding.h (SJIS_TO_JIS2, JIS_TO_SJIS2): New macros.
17202
17203 * coding.c (QCmnemonic, QCdefalut_char)
17204 (QCdecode_translation_table, QCencode_translation_table)
17205 (QCpost_read_conversion, QCpre_write_conversion): New variables.
17206 (get_translation_table): Return a list of translation tables if
17207 necessary.
17208 (decode_coding): Call get_translation_table with ENCODEP 0.
17209 (char_encodable_p): If translation_table is non-nil, always call
17210 translate_char.
17211 (Fdefine_coding_system_internal): Accept list of translation
17212 tables as :encode-translation-table and :decode-translation-table.
17213 (Fcoding_system_put): New function.
17214 (syms_of_coding): Declare new symbols. Defsubr
17215 Scoding_system_put.
17216 (decode_coding_sjis, encode_coding_sjis): Handle 4th charset,
17217 typically JISX0212.
17218
17219 * charset.c (map_charset_chars): Fix arg to map_charset_chars in
17220 when the charset is superset type.
17221
17222 * character.c (translate_char): Accept list of translation tables.
17223
172242008-02-01 Kenichi Handa <handa@m17n.org>
17225
17226 * coding.h (enum coding_attr_index): New member coding_attr_trans_tbl.
17227 (CODING_ATTR_TRANS_TBL): New macro.
17228
17229 * coding.c (get_translation_table): New function.
17230 (translate_chars): Fix the bug of skipping annotation data.
17231 (decode_coding, encode_coding): Utilize get_translation_table.
17232 (char_encodable_p, Funencodable_char_position): Translate char if
17233 necessary.
17234 (Ffind_coding_systems_region_internal)
17235 (Fcheck_coding_systems_region): Setup translation table for encode
17236 in a coding system attribute vector in advance.
17237 (Fdefine_coding_system_internal): Allow a symbol as translation
17238 table. For shift-jis type coding system, allow 4th charset.
17239
172402008-02-01 Kenichi Handa <handa@m17n.org>
17241
17242 * coding.c (decode_coding_sjis): Check the first byte rigidly.
17243
17244 * xdisp.c (get_next_display_element): Pass -1 as POS to
17245 FACE_FOR_CHAR if displaying a C-string.
17246
172472008-02-01 Kenichi Handa <handa@m17n.org>
17248
17249 * composite.c (get_composition_id): Handle xoff and yoff in a
17250 composition rule.
17251
17252 * composite.h (COMPOSITION_DECODE_RULE): New arg xoff and yoff.
17253 (struct composition): New member lbearing and rbearing.
17254
17255 * xdisp.c (move_it_to): Optimize for the case (op & MOVE_TO_Y).
17256 (x_get_glyph_overhangs): Handle a composition glyph.
17257 (x_produce_glyphs): Setup lbearing and rbreaing for a composition glyph.
17258
17259 * xterm.c (x_compute_glyph_string_overhangs): Handle also a
17260 composition glyph.
17261
172622008-02-01 Kenichi Handa <handa@m17n.org>
17263
17264 * print.c: Include charset.h.
17265 (Vprint_charset_text_property): New variable.
17266 (Qdefault): Extern it.
17267 (PRINT_STRING_NON_CHARSET_FOUND)
17268 (PRINT_STRING_UNSAFE_CHARSET_FOUND): New macros.
17269 (print_check_string_result): New variable.
17270 (print_check_string_charset_prop): New function.
17271 (print_prune_charset_plist): New variable.
17272 (print_prune_string_charset): New function.
17273 (print_object): Call print_prune_string_charset if
17274 Vprint_charset_text_property is not t.
17275 (print_interval): Print nothing if interval->plist is nil.
17276 (syms_of_print): Declare Vprint_charset_text_property as a lisp
17277 variable. Init and staticpro print_prune_charset_plist.
17278
172792008-02-01 Kenichi Handa <handa@m17n.org>
17280
17281 * fontset.c (new_fontset_from_font_name): Use the specified font
17282 for all characters in the new fontset.
17283
17284 * macterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
17285 OBJECT args.
17286
17287 * xdisp.c (x_produce_glyphs): Call FACE_FOR_CHAR with POS and
17288 OBJECT args for composition too.
17289
17290 * w32term.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
17291 OBJECT args.
17292
172932008-02-01 Kenichi Handa <handa@m17n.org>
17294
17295 * dispextern.h (FACE_FOR_CHAR): New args POS and OBJECT.
17296
17297 * fontset.c (reorder_font_vector): Adjust for the change of
17298 FONT_DEF format.
17299 (fontset_face): New arg id. Change caller.
17300 (face_for_char): New args pos and object.
17301 (make_fontset_for_ascii_face): Adjust for the change of FONT_DEF format.
17302 (fs_query_fontset): Check NAME by Fassoc too.
17303 (Fset_fontset_font): Allow non-XLFD font name.
17304 (Ffontset_info): Adjust for the change of FONT_DEF format.
17305
17306 * fontset.h (face_for_char): Adjust prototype.
17307
17308 * xdisp.c (face_before_or_after_it_pos, get_next_display_element)
17309 (append_space, extend_face_to_end_of_line)
17310 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
17311 (x_produce_glyphs): Call FACE_FOR_CHAR with POS and OBJECT args.
17312
17313 * xfaces.c (compute_char_face): Call FACE_FOR_CHAR with
17314 POS and OBJECT args.
17315
17316 * xterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with
17317 POS and OBJECT args.
17318
173192008-02-01 Jason Rumney <jasonr@gnu.org>
17320
17321 * w32select.c (Fw32_set_clipboard_data): Avoid potential realloc
17322 of GlobalAlloc'ed memory.
17323
173242008-02-01 Kenichi Handa <handa@m17n.org>
17325
17326 * ccl.c (Fccl_execute_on_string): Fix the condition of loop.
17327
17328 * charset.h (charset_table_used): Delete extern.
17329
17330 * charset.c (charset_table_used): Make it static.
17331 (map_charset_chars): Fix args to c_function with.
17332
17333 * chartab.c (map_sub_char_table_for_charset): Fix args to
17334 c_function with.
17335
17336 * coding.h (enum coding_result_code): Delete
17337 CODING_RESULT_INSUFFICIENT_CMP, add CODING_RESULT_INVALID_SRC.
17338
17339 * coding.c (Qinsufficient_source, Qinconsistent_eol)
17340 (Qinvalid_source, Qinterrupted, Qinsufficient_memory): New variables.
17341 (Vlast_code_conversion_error): New variables.
17342 (syms_of_coding): DEFSYM or DEFVAR_LISP them.
17343 (ONE_MORE_BYTE): Record error if any instead of signaling an
17344 error. If non-ASCII multibyte char is found, return the negative
17345 value of the code. All callers changed to check it.
17346 (ONE_MORE_BYTE_NO_CHECK): Likewise.
17347 (record_conversion_result): New function. Change all codes setting
17348 coding->result to call this function.
17349 (detect_coding_utf_8, decode_coding_utf_8)
17350 (detect_coding_emacs_mule, detect_coding_sji, detect_coding_big5):
17351 Don't use the local variable incomplete.
17352 (emacs_mule_char): Change the second arg to `const'.
17353 (decode_coding): Fix of flushing out unprocessed data.
17354 (make_conversion_work_buffer): Fix making of a work buffer.
17355 (decode_coding_object): Return coding->dst_object.
17356
17357 * fontset.c (set_fontset_font): Fix args.
17358
17359 * lisp.h (CHARACTERBITS): Define as 22.
17360
17361 * process.c (send_process): Be sure to set coding->src_multibyte.
17362
17363 * xdisp.c (handle_auto_composed_prop): Fix setting of limit.
17364
173652008-02-01 Kenichi Handa <handa@m17n.org>
17366
17367 * xdisp.c (handle_auto_composed_prop): Give limit to
17368 Fnext_single_char_property_change.
17369
173702008-02-01 Kenichi Handa <handa@m17n.org>
17371
17372 * composite.c (syms_of_composite): Don't make the composition hash
17373 table weak.
17374
17375 * fontset.c (Fset_fontset_font): Fix docstring.
17376
17377 * lisp.h (detect_coding_system): Adjust prototype.
17378
17379 * fileio.c (kill_workbuf_unwind): Delete this function.
17380 (Finsert_file_contents): Adjust the call of detect_coding_system.
17381 Get conversion_buffer by code_conversion_save. Use the macro
17382 CODING_MAY_REQUIRE_DECODING. After decoding, update
17383 coding_system.
17384
17385 * coding.h (make_conversion_work_buffer): Delete extern.
17386 (code_conversion_save): Extern it.
17387
17388 * coding.c (enum iso_code_class_type): Delete ISO_carriage_return.
17389 (CODING_GET_INFO): Delete argument eol_type. Change callers.
17390 (decode_coding_utf_8): Don't do eol converion.
17391 (detect_coding_utf_16): Check coding->src_chars, not
17392 coding->src_bytes. Add heuristics for those that have no signature.
17393 (decode_coding_emacs_mule, decode_coding_iso_2022)
17394 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
17395 Don't do eol converion.
17396 (adjust_coding_eol_type): Return a new coding system.
17397 (detect_coding): Don't detect eol. Fix for utf-16 detection.
17398 (decode_eol): In case of CRLF->LF conversion, use del_range_2 on
17399 each change.
17400 (decode_coding): Pay attention to undo_list. Do eol conversion for
17401 all types of coding-systems (if necessary).
17402 (Vcode_conversion_work_buf_list): Delete it.
17403 (Vcode_conversion_reused_workbuf): Rename from
17404 Vcode_conversion_reused_work_buf.
17405 (Vcode_conversion_workbuf_name): New variable.
17406 (reused_workbuf_in_use): New variable.
17407 (make_conversion_work_buffer): Delete the arg DEPTH.
17408 (code_conversion_restore): Change argument to cons.
17409 (code_conversion_save): Delete the argument BUFFER. Change callers.
17410 (detect_coding_system): New argument src_chars. Change callers.
17411 Fix for utf-16 detection.
17412 (init_coding_once): Don't use ISO_carriage_return.
17413 (syms_of_coding): Initialize Vcode_conversion_workbuf_name and
17414 reused_workbuf_in_use.
17415
174162008-02-01 Kenichi Handa <handa@m17n.org>
17417
17418 * keymap.c (store_in_keymap): Pay attention to the case that idx
17419 is a cons specifying a character range.
17420
174212008-02-01 Kenichi Handa <handa@m17n.org>
17422
17423 * xdisp.c (handle_auto_composed_prop): Fix the case of returning
17424 HANDLED_RECOMPUTE_PROPS.
17425
17426 * coding.c (Fdefine_coding_system_internal): Fix checking of
17427 ascii compatibility.
17428
174292008-02-01 Kenichi Handa <handa@m17n.org>
17430
17431 * charset.c (find_charsets_in_text): Delete unused locale variable.
17432 (Fset_charset_priority): Update Vemacs_mule_charset_list too.
17433
17434 * coding.c (encode_coding_emacs_mule): Emit bytes with MSB.
17435 Resync charset_list to Vemacs_mule_charset_list.
17436
17437 * keymap.c (store_in_keymap): Pay attention to the case that idx
17438 is a cons specifying a character range.
17439
174402008-02-01 Kenichi Handa <handa@m17n.org>
17441
17442 * composite.c (update_compositions): Bind inhibit-read-only, etc
17443 to t before calling remove-list-of-text-properties.
17444
17445 * print.c (print_object): Always print ASCII chars as is.
17446
174472008-02-01 Kenichi Handa <handa@m17n.org>
17448
17449 * keymap.c (Fdefine_key): Fix handling of Lucid style event type list.
17450
17451 * fns.c (Fmapconcat, Fmapcar, Fmapc): Signal an error if SEQUENCE
17452 is a char table.
17453
174542008-02-01 Kenichi Handa <handa@m17n.org>
17455
17456 * syntax.c (skip_chars): Be sure to alloca char_ranges when necessary.
17457
174582008-02-01 Kenichi Handa <handa@m17n.org>
17459
17460 * xfaces.c (set_lface_from_font_name): Fix for the case that
17461 FONTNAME is not fontset name.
17462
174632008-02-01 Kenichi Handa <handa@m17n.org>
17464
17465 * fns.c (base64_encode_1): Fix previous change.
17466
174672008-02-01 Kenichi Handa <handa@m17n.org>
17468
17469 * fontset.c (set_fontset_font): New function.
17470 (Fset_fontset_font): If a font is specified for a charset, use
17471 map_charset_chars to store the font spec in a fontset.
17472
174732008-02-01 Kenichi Handa <handa@m17n.org>
17474
17475 * fontset.c (fontset_face): Create a fallback fontset on demand.
17476 (make_fontset): Don't create a fallback fontset here.
17477 (free_face_fontset): Free a fallback fontset (if any) too.
17478 (n_auto_fontsets): Delete this variable.
17479 (auto_fontset_alist): New variable.
17480 (new_fontset_from_font_name): Check auto_fontset_alist.
17481 (dump_fontset) [FONTSET_DEBUG]: Fully re-written.
17482 (Ffontset_list_all) [FONTSET_DEBUG]: New function.
17483 (syms_of_fontset): Initialize and staticpro auto_fontset_alist.
17484 Defsubr Sfontset_list_all.
17485
174862008-02-01 Kenichi Handa <handa@m17n.org>
17487
17488 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
17489
174902008-02-01 Kenichi Handa <handa@m17n.org>
17491
17492 * fontset.c (Fnew_fontset): Check NAME more rigidly.
17493
174942008-02-01 Kenichi Handa <handa@m17n.org>
17495
17496 * editfns.c (Fgoto_char): Fix docstring.
17497
174982008-02-01 Kenichi Handa <handa@m17n.org>
17499
17500 * insdel.c (insert_from_gap): Adjust intervals correctly.
17501
175022008-02-01 Jason Rumney <jasonr@gnu.org>
17503
17504 * w32term.c (GLYPHSET, WCRANGE): Define if system headers don't.
17505 (pfnGetFontUnicodeRanges): New dynamically loaded function.
17506 (w32_initialize): Try to load it.
17507 (x_get_font_repertory): Use it if available.
17508 (w32_encode_char): Add shortcut for unicode output.
17509
17510 * w32fns.c (w32_load_system_font): Default charset to -1.
17511 (x_to_w32_charset): Match all fonts for unicode.
17512 (w32_to_x_charset): New parameter matching. Don't return partial
17513 or wildcard charsets.
17514 (w32_to_all_x_charsets): Don't return partial or wildcard charsets.
17515 (w32_codepage_for_font): Return CP_UNICODE for unicode.
17516 (w32_to_x_font): Match charset to real charset.
17517 (enum_font_cb2): Always list unicode versions.
17518
17519 * makefile.w32-in (temacs): Increase EMHEAP.
17520
175212008-02-01 Jason Rumney <jasonr@gnu.org>
17522
17523 * w32term.c (w32_encode_char): New charset parameter.
17524 font_info.encoding becomes encoding_type.
17525 (x_get_font_repertory): New function. Warning: stub only!
17526 (x_new_font): Return quickly if font already set.
17527 (x_new_fontset): fontsetname parameter is Lisp_Object.
17528 Use new fs_query_fontset. Try new_fontset_from_font_name.
17529 Use fontset_name for return value.
17530
17531 * w32term.h: Declare x_get_font_repertory.
17532
17533 * w32select.c (Fw32_set_clipboard_data): Use string_x_string_p in
17534 place of find_charset_in_text. Use encode_coding_object in place
17535 of encode_coding.
17536 (Fw32_get_clipboard_data): Use decode_coding_c_string in place of
17537 decode_coding.
17538
17539 * w32fns.c (Fx_create_frame, x_create_tip_frame): Use new version
17540 of x_new_fontset.
17541 (w32_load_system_font): Initialize charset as unicode.
17542 font_info.encoding becomes encoding_type.
17543 (w32_to_x_font): Use decode_coding_c_string in place of decode_coding.
17544 (x_to_w32_font): Use encode_coding_object in place of encode_coding.
17545 (syms_of_w32fns): Set get_font_repertory_func.
17546
17547 * w32console.c: Include character.h. Use terminal_encode_buffer
17548 from term.c.
17549 (write_glyphs): Use new version of encode_terminal_code. Use
17550 encode_coding_object in place of encode_coding.
17551
17552 * w32bdf.c (w32_load_bdf_font): Clear font_info before filling.
17553 encoding becomes encoding_type.
17554
17555 * term.c (terminal_encode_buffer): Make externally visible.
17556
17557 * makefile.w32-in: Add character.h dependancies.
17558 (character.o, chartab.o): New targets.
17559
175602008-02-01 Kenichi Handa <handa@m17n.org>
17561
17562 * fileio.c (Finsert_file_contents) [DOS_NT]: Use the macro
17563 CODING_ID_EOL_TYPE.
17564
175652008-02-01 Andreas Schwab <schwab@suse.de>
17566
17567 * coding.c (produce_chars): Revert last change.
17568
175692008-02-01 Kenichi Handa <handa@m17n.org>
17570
17571 * charset.h (charset_unicode): Extern it.
17572
17573 * charset.c (string_xstring_p): Check by (C >= 0x100).
17574 (find_charsets_in_text): Change format of the arc CHARSETS. New
17575 arg MULTIBYTE.
17576 (Ffind_charset_region, Ffind_charset_string): Adjust for the
17577 change of find_charsets_in_text.
17578 (Fsplit_char): Fix doc. Never return unknown.
17579
17580 * chartab.c (char_table_translate): Use CHARACTERP, not INTEGERP.
17581
17582 * coding.c (Fdefine_coding_system_alias): Update
17583 Vcoding_system_list.
17584
17585 * fontset.c (load_font_get_repertory): Pay attention to the case
17586 that ENCODING of a font is specified by a char-table.
17587
17588 * xterm.c (x_get_font_repertory): Handle the case that the
17589 encoding of font is other than Unicode.
17590
175912008-02-01 Kenichi Handa <handa@m17n.org>
17592
17593 * term.c (encode_terminal_code): Don't handle glyph-table. Check
17594 if a character is encodable by the terminal coding system. If
17595 not, produces proper number of `?'s. Update
17596 terminal_encode_buffer and terminal_encode_buf_size if necessary.
17597 (produce_glyphs): Check by CHAR_BYTE8_P, not SINGLE_BYTE_CHAR_P.
17598
175992008-02-01 Kenichi Handa <handa@m17n.org>
17600
17601 * term.c (terminal_encode_buffer, terminal_encode_buf_size): New
17602 variables.
17603 (encode_terminal_code): Change argument. Encode multiple
17604 characters at once. Store the result of encoding in
17605 terminal_encode_buffer.
17606 (write_glyphs, insert_glyphs): Adjust for the change of
17607 encode_terminal_code.
17608 (term_init): Initialize terminal_encode_buffer and
17609 terminal_encode_buf_size.
17610
17611 * coding.c (consume_chars): If coding->src_object is nil, don't
17612 check annotation.
17613
176142008-02-01 Kenichi Handa <handa@m17n.org>
17615
17616 * character.c (char_string): Use ASCII_CHAR_P instead of
17617 SINGLE_BYTE_CHAR_P.
17618
176192008-02-01 Kenichi Handa <handa@m17n.org>
17620
17621 * xdisp.c (handle_auto_composed_prop): Check if the last
17622 characters of auto-composed region is newly composed with the
17623 following characters.
17624 (handle_composition_prop): Fix checking of point being inside
17625 composition.
17626
176272008-02-01 Kenichi Handa <handa@m17n.org>
17628
17629 * fns.c (concat): Don't change multibyteness of the result by
17630 concatenating an 8-bit character.
17631
17632 * data.c (Faset): Check newelt by CHECK_CHARACTER. Don't change
17633 multibyteness of the result when newelt is an 8-bit character.
17634
176352008-02-01 Dave Love <fx@gnu.org>
17636
17637 * xmenu.c (find_and_call_menu_selection): Make menu_bar_items_used
17638 EMACS_INT.
17639
17640 * xfns.c (DefaultDepthOfScreen, x_encode_text): Remove unused vars.
17641
17642 * xfaces.c (face_numeric_value): Declare dim size_t.
17643 (Finternal_lisp_face_equal_p): Remove unused f.
17644
17645 * xdisp.c (BUILD_CHAR_GLYPH_STRINGS, display_and_set_cursor)
17646 (MATRIX_ROW): Remove unused vars.
17647 (draw_glyphs, x_insert_glyphs, fast_find_position)
17648 (fast_find_position, fast_find_string_pos): Use EMACS_INT for
17649 byte/char counts.
17650
17651 * regex.c (regex_compile): Remove unused var.
17652
17653 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
17654
17655 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
17656 (Faccessible_keymaps, where_is_internal): Remove unused vars.
17657
17658 * keyboard.c (cancel_hourglass_unwind): Return Qnil.
17659
17660 * frame.c (frame_name_fnn_p): Make len EMACS_INT.
17661
17662 * fileio.c (Fwrite_region): Remove unused var.
17663
17664 * dispnew.c (adjust_frame_glyphs_for_frame_redisplay)
17665 (adjust_frame_glyphs_for_window_redisplay): Remove unused ch_dim.
17666
17667 * composite.c (Fremove_list_of_text_properties): Declare.
17668
17669 * coding.c (inhibit_pre_post_conversion): Remove (unused).
17670 (alloc_destination, produce_chars): Use EMACS_INT for byte/char counts.
17671 (coding_inherit_eol_type): Remove unused attrs.
17672 (detect_coding): Cast arg of detect_eol.
17673
17674 * charset.c (syms_of_charset): Remove unused var p.
17675 (find_charsets_in_text, Ffind_charset_region): Use EMACS_INT for
17676 byte/char counts.
17677
17678 * casetab.c (set_case_table): Remove unused var.
17679
17680 * window.c (Fdisplay_buffer, Fframe_selected_window): Remove
17681 unused vars.
17682
176832008-02-01 Dave Love <fx@gnu.org>
17684
17685 * xterm.c (x_bitmap_mask): Declare.
17686
176872008-02-01 Dave Love <fx@gnu.org>
17688
17689 * xterm.c (x_term_init): Fix type error.
17690
17691 * lisp.h: Add Funibyte_char_to_multibyte.
17692
17693 * coding.c (Fread_coding_system): Fix arg of XSETSTRING.
17694 (Fset_coding_system_priority): Doc fix.
17695
17696 * ccl.c (ccl_driver): Fix arg of CHARACTERP.
17697
17698 * indent.c (check_composition): Make start and end EMACS_INT.
17699
17700 * character.c (lisp_string_width): Make ignore and end EMACS_INT.
17701
17702 * xdisp.c (handle_composition_prop, check_point_in_composition):
17703 Make buffer positions EMACS_INT.
17704
17705 * composite.c (find_composition, run_composition_function)
17706 (update_compositions, Ffind_composition_internal): Make buffer
17707 positions EMACS_INT.
17708
17709 * composite.h (find_composition, update_compositions): Make
17710 position args EMACS_INT.
17711
17712 * keyboard.c (adjust_point_for_property): Make beg and end EMACS_INT.
17713
17714 * intervals.c (get_property_and_range):
17715 * intervals.h (get_property_and_range): Make start and end EMACS_INT.
17716
17717 * unexalpha.c: Don't include varargs.h.
17718
177192008-02-01 Dave Love <fx@gnu.org>
17720
17721 * coding.h (ENCODE_UTF_8): New.
17722
17723 * Makefile.in (gtkutil.o): Depend on coding.h.
17724
17725 * coding.c (Fset_coding_system_priority): Doc fix.
17726
177272008-02-01 Kenichi Handa <handa@m17n.org>
17728
17729 * fileio.c (Finsert_file_contents): Call setup_coding_system in
17730 the case of auto saving.
17731
177322008-02-01 Andreas Schwab <schwab@suse.de>
17733
17734 * chartab.c (map_char_table, map_char_table_for_charset): Protect
17735 `range' from GC.
17736
177372008-02-01 Kenichi Handa <handa@m17n.org>
17738
17739 * coding.c (decode_coding_sjis): Check bytes more rigidly.
17740
177412008-02-01 Kenichi Handa <handa@m17n.org>
17742
17743 * fileio.c (choose_write_coding_system): Return a decided coding system.
17744 (Fwrite_region): Set Vlast_coding_system_used to the return value
17745 of choose_write_coding_system.
17746
177472008-02-01 Kenichi Handa <handa@m17n.org>
17748
17749 * charset.c (Fset_charset_priority): Pay attention to duplicated
17750 arguments.
17751
17752 * coding.c (QCcategory): New variable.
17753 (syms_of_coding): Defsym it. Set all elements of
17754 Vcoding_category_table and their symbol values.
17755 (Fset_coding_system_priority): Doc fix. Update symbol qvalues of
17756 coding-category-XXX, and coding-category-list.
17757 (Fdefine_coding_system_internal): Add category in the plist.
17758
177592008-02-01 Kenichi Handa <handa@m17n.org>
17760
17761 * callproc.c (Fcall_process): Handle carryover correctly.
17762
17763 * coding.c (decode_coding_iso_2022): Fix handling of invalid bytes.
17764 (raw_text_coding_system): Check NILP (coding_system).
17765 (coding_inherit_eol_type): Check NILP (coding_system) and
17766 NILP (parent).
17767 (consume_chars): Fix for the case of raw-text.
17768
17769 * process.c (read_process_output): Handle carryover correctly.
17770
177712008-02-01 Dave Love <fx@gnu.org>
17772
17773 * regex.c (re_search_2): Fix last change.
17774
177752008-02-01 Kenichi Handa <handa@m17n.org>
17776
17777 * regex.c (GET_CHAR_BEFORE_2): Check multibyte, not
17778 target_multibyte. Even in a unibyte case, return a converted
17779 multibyte char.
17780 (GET_CHAR_AFTER): New macro.
17781 (PATFETCH): Translate via multibyte char.
17782 (HANDLE_UNIBYTE_RANGE): Delete this macro.
17783 (SETUP_MULTIBYTE_RANGE): New macro.
17784 (regex_compile): Setup compiled code so that its multibyteness
17785 matches that of a target. Fix the handling of "[X-YZ]" using
17786 SETUP_MULTIBYTE_RANGE.
17787 (analyse_first) <charset>: For filling fastmap for all multibyte
17788 characters, don't check by BASE_LEADING_CODE_P.
17789 (re_search_2): Don't check RE_TARGET_MULTIBYTE_P (bufp). It is
17790 the same as RE_MULTIBYTE_P (bufp) now.
17791 (mutually_exclusive_p): Check by (! multibyte || IS_REAL_ASCII (c)).
17792 (TARGET_CHAR_AND_LENGTH): Delete this macro.
17793 (TRANSLATE_VIA_MULTIBYTE): New macro.
17794 (re_match_2_internal): Don't check RE_TARGET_MULTIBYTE_P (bufp).
17795 It is the same as RE_MULTIBYTE_P (bufp) now.
17796 <exactn>: Translate via multibyte.
17797 <anychar>: Fetch a character by RE_STRING_CHAR_AND_LENGTH. Don't
17798 translate it.
17799 <charset, charset_not>: Fetch a character by
17800 RE_STRING_CHAR_AND_LENGTH. Translate via multibyte.
17801 <duplicate>: Call bcmp_translate with the last arg `multibyte'.
17802 <wordbound, notwordbound, wordbeg, wordend, syntaxspec,
17803 notsyntaxspec, categoryspec, notcategoryspec> Fetch a character
17804 by GET_CHAR_AFTER.
17805 (bcmp_translate): Likewise.
17806
17807 * search.c (compile_pattern): Check the member target_multibyte,
17808 not the member multibyte of buf.
17809
17810 * lread.c (read1): While reading a string, set force_singlebyte
17811 and force_multibyte correctly.
17812
17813 * charset.c (Fset_unibyte_charset, init_charset_once): Fix setting
17814 up of unibyte_to_multibyte_table.
17815
178162008-02-01 Kenichi Handa <handa@m17n.org>
17817
17818 * coding.c (setup_coding_system): If coding has
17819 post-read-conversion or pre-write-conversion, set
17820 CODING_REQUIRE_DECODING_MASK and CODING_REQUIRE_ENCODING_MASK
17821 respectively.
17822 (decode_coding_gap): Run post-read-conversion if any.
17823
17824 * fileio.c (Finsert_file_contents): Even if we read into a
17825 unibyte buffer, check if we must decode the result or not.
17826
178272008-02-01 Kenichi Handa <handa@m17n.org>
17828
17829 * coding.c (make_conversion_work_buffer): Change the work buffer
17830 name to the same one as that of Emacs 21.
17831
178322008-02-01 Kenichi Handa <handa@m17n.org>
17833
17834 * coding.h (make_conversion_work_buffer): Adjust prototype.
17835 (code_conversion_restore): Don't extern it.
17836
17837 * coding.c (detected_mask): Delete unused variable.
17838 (decode_coding_iso_2022): Pay attention to the byte sequence of
17839 CTEXT extended segment, and retain those bytes as is.
17840 (decode_coding_ccl): Delete unused variable `valids'.
17841 (setup_coding_system): Delete unused variable `category'.
17842 (consume_chars): Delete unused variable `category'. Make it work
17843 for non-multibyte case.
17844 (make_conversion_work_buffer): Change argument.
17845 (saved_coding): Delete unused variable.
17846 (code_conversion_restore): Don't check saved_coding->destination.
17847 (code_conversion_save): New function.
17848 (decode_coding_gap, encode_coding_gap): Call code_conversion_save
17849 instead of record_unwind_protect.
17850 (decode_coding_object, encode_coding_object): Likewise. Recover PT.
17851 (detect_coding_system): Delete unused variable `mask'.
17852 (Fdefine_coding_system_internal): Delete unused variable id.
17853
17854 * fileio.c (kill_workbuf_unwind): New function.
17855 (Finsert_file_contents): On replacing, call
17856 make_conversion_work_buffer with correct args, and call
17857 record_unwind_protect with the first arg kill_workbuf_unwind.
17858
17859 * lisp.h (Fgenerate_new_buffer_name): EXFUN it.
17860
178612008-02-01 Kenichi Handa <handa@m17n.org>
17862
17863 * fontset.c (BASE_FONTSET_P): Check FONTSET_BASE, not FONTSET_NAME.
17864 (fontset_add): Fix for the case that TO is less than TO1.
17865 (Ffontset_info): Don't use fallback fontset on checking the
17866 default fontset.
17867 (dump_fontset): New function for debugging.
17868
17869 * coding.c (Fdefine_coding_system_internal): Fix for the case that
17870 coding_type is Qcharset.
17871
178722008-02-01 Kenichi Handa <handa@m17n.org>
17873
17874 * chartab.c (map_sub_char_table): New argument DEFAULT_VAL.
17875 (map_char_table): Don't inherit the value from the parent on
17876 initializing VAL. Adjust for the above change.
17877
178782008-02-01 Kenichi Handa <handa@m17n.org>
17879
17880 * coding.c (Qsignature, Qendian): Delete these variables.
17881 (syms_of_coding): Don't initialize them.
17882 (CATEGORY_MASK_UTF_16_AUTO): New macro.
17883 (detect_coding_utf_16): Add CATEGORY_MASK_UTF_16_AUTO in
17884 detect_info->found.
17885 (decode_coding_utf_16): Don't detect BOM here.
17886 (encode_coding_utf_16): Produce BOM if CODING_UTF_16_BOM (coding)
17887 is NOT utf_16_without_bom.
17888 (setup_coding_system): For a coding system of type utf-16, check
17889 if the attribute :endian is Qbig or not (not nil or not), and set
17890 CODING_REQUIRE_DETECTION_MASK if BOM detection is required.
17891 (detect_coding): If coding type is utf-16 and BOM detection is
17892 required, detect it.
17893 (Fdefine_coding_system_internal): For a coding system of type
17894 utf-16, check if the attribute :endian is Qbig or not (not nil or not).
17895
178962008-02-01 Kenichi Handa <handa@m17n.org>
17897
17898 * coding.c (coding_set_source): Fix for the case that the current
17899 buffer is different from coding->src_object.
17900 (decode_coding_object): Don't use the conversion work buffer if
17901 DST_OBJECT is a buffer.
17902
179032008-02-01 Dave Love <fx@gnu.org>
17904
17905 * lread.c (read_emacs_mule_char) [len==2]: Index
17906 emacs_mule_charset correctly.
17907
179082008-02-01 Dave Love <fx@gnu.org>
17909
17910 * coding.c (Qbig5, Vbig5_coding_system, CATEGORY_MASK_BIG5)
17911 (detect_coding_big5, decode_coding_big5, encode_coding_big5)
17912 (Fdecode_big5_char, Fencode_big5_char): Delete. (Big5 no longer
17913 treated specially.)
17914 (setup_coding_system, coding_category, CATEGORY_MASK_ANY)
17915 (detected_mask): Remove Big5 bits.
17916
179172008-02-01 Kenichi Handa <handa@m17n.org>
17918
17919 The following changes are to make the font rescaling facility
17920 compatible with Emacs 21.
17921
17922 * xfaces.c (Vface_font_rescale_alist): Rename from
17923 Vface_resizing_fonts.
17924 (struct font_name): Rename member resizing_ratio to rescale_ratio.
17925 (font_rescale_ratio): Rename from font_resizing_ratio.
17926 (split_font_name): Set font->rescale_ratio.
17927 (better_font_p): Pay attention to font->rescale_ratio.
17928 (build_scalable_font_name): Likewise. Change RESX, and RESY
17929 fields.
17930 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
17931
179322008-02-01 Kenichi Handa <handa@m17n.org>
17933
17934 * coding.c (Qutf_16_be_nosig, Qutf_16_be, Qutf_16_le_nosig)
17935 (Qutf_16_le): Remove these variables.
17936 (syms_of_coding): Don't DEFSYM them.
17937 (decode_coding_utf_16): Fix handling of BOM.
17938 (encode_coding_utf_16): Fix handling of BOM.
17939
179402008-02-01 Kenichi Handa <handa@m17n.org>
17941
17942 * fileio.c (Finsert_file_contents): On replacing, before decoding
17943 the file into the work buffer, set point of the work buffer to the end.
17944
179452008-02-01 Dave Love <fx@gnu.org>
17946
17947 * coding.c (Fcheck_coding_systems_region): Fix type errors.
17948
179492008-02-01 Dave Love <fx@gnu.org>
17950
17951 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
17952 and fix C types.
17953
179542008-02-01 Kenichi Handa <handa@m17n.org>
17955
17956 * xdisp.c (SKIP_GLYPHS): New macro.
17957 (set_cursor_from_row): Pay attention to string display properties.
17958
17959 * category.c (copy_category_entry): Fix for the case that RANGE
17960 is an integer.
17961
17962 * xterm.c (x_encode_char): Call ccl_driver with the last arg Qnil.
17963
17964 * w32term.c (w32_encode_char): Call ccl_driver with the last arg Qnil.
17965
179662008-02-01 Kenichi Handa <handa@m17n.org>
17967
17968 * charset.c (Fcharset_id_internal): New function.
17969 (syms_of_charset): Defsubr it.
17970
17971 * coding.c (decode_coding_ccl, encode_coding_ccl): Call ccl_driver
17972 with the last arg charset_list acquired from coding.
17973 (Fdefine_coding_system_internal): For ccl-based coding system, fix
17974 the attribute coding_attr_ccl_valids.
17975
17976 * coding.h (enum define_coding_ccl_arg_index): Set the first
17977 member coding_arg_ccl_decoder to coding_arg_max.
17978
17979 * ccl.h (ccl_driver): Adjust prototype.
17980
17981 * ccl.c (CCL_DECODE_CHAR, CCL_ENCODE_CHAR): New macros.
17982 (ccl_driver): New arg CHARSET_LIST. Use the above macros instead
60612c8f 17983 of DECODE_CHAR, ENCODE_CHAR, CHAR_CHARSET.
aac0c6e3
MR
17984 (Fccl_execute, Fccl_execute_on_string): Call ccl_driver with the
17985 last arg Qnil.
17986
179872008-02-01 Kenichi Handa <handa@m17n.org>
17988
17989 * charset.h (ENCODE_CHAR): If the method is SUBSET or SUPERSET,
17990 call encode_char.
17991
17992 * charset.c (encode_char): Fix handling of methods SUBSET and SUPERSET.
17993
179942008-02-01 Dave Love <fx@gnu.org>
17995
17996 * composite.c (syms_of_composite): Make composition_hash_table weak.
17997
179982008-02-01 Kenichi Handa <handa@m17n.org>
17999
18000 * dispextern.h (check_face_attributes, generate_ascii_font_name)
18001 (font_name_registry): Don't extern them.
18002 (split_font_name_into_vector, build_font_name_from_vector): Extern them.
18003
18004 * fontset.h (Qfontset): Don't extern it.
18005 (new_fontset_from_font_name): Extern it.
18006
18007 * fontset.c: Give 8 extra slots to fontset objects.
18008 (Qfontset_info): New variable.
18009 (syms_of_fontset): Defsym it.
18010 (FONTSET_FALLBACK): New macro.
18011 (fontset_face): Try also the default fontset.
18012 (make_fontset): Realize a fallback fontset from the default fontset.
18013 (generate_ascii_font_name): Move from xfaces.c. Rewritten by
18014 using split_font_name_into_vector and build_font_name_from_vector.
18015 (Fset_fontset_font): Access the elements of font_spec by enum
18016 FONT_SPEC_INDEX. If font_spec is a string, extract the registry
18017 name by using split_font_name_into_vector.
18018 (Fnew_fontset): If no ASCII font is specified in FONTLIST,
18019 generate a proper font name from the fontset name. Update
18020 Vfontset_alias_alist.
18021 (n_auto_fontsets): New variable.
18022 (new_fontset_from_font_name): New function.
18023 (Ffont_info): Store the information about fonts generated from the
18024 default fontset in the first extra slot of the returned char-table.
18025
18026 * xfaces.c (generate_ascii_font_name): Move to fontset.c.
18027 (font_name_registry): Delete function.
18028 (split_font_name_into_vector): New function.
18029 (build_font_name_from_vector): New function.
18030 (font_list): The argument REGISTRY is now a list of registry names.
18031 (choose_face_font): If we are choosing an ASCII font, and ATTRS
18032 specifies an explicit font name, return the name as is. Make a
18033 list of registy names.
18034
18035 * xfns.c (x_set_font, x_create_tip_frame): Adjust for the change
18036 of x_new_fontset.
18037 (Fx_create_frame): Don't call x_new_fontset here. Just use
18038 x_list_fonts to check the existence of fonts.
18039
18040 * xterm.h (x_new_fontset): Adjust prototype.
18041
18042 * xterm.c (x_new_fontset): Change the arg FONTSETNAME to Lisp
18043 string. Use new_fontset_from_font_name to create a fontset from a
18044 font name.
18045
180462008-02-01 Kenichi Handa <handa@m17n.org>
18047
18048 * syntax.c (Vfind_word_boundary_function_table): New name for
18049 Vnext_word_boundary_function_table.
18050 (find-word-boundary-function-table): New name for
18051 next-word-boundary-function-table.
18052
180532008-02-01 Dave Love <fx@gnu.org>
18054
18055 * Makefile.in: Fix some dependencies.
18056
18057 * keymap.c (Fapropos_internal): Don't gcpro apropos_predicate but
18058 set it to nil before returning.
18059
18060 * composite.c (update_compositions): Fix type error.
18061
18062 * syntax.c (skip_chars, skip_syntaxes): Fix type errors.
18063
180642008-02-01 Kenichi Handa <handa@m17n.org>
18065
18066 * xterm.c (x_new_font): Optimize for the case that the font is
18067 already set for the frame.
18068
180692008-02-01 Kenichi Handa <handa@m17n.org>
18070
18071 * chartab.c (char_table_ascii): Check if the char table contents
18072 is sub-char-table or not.
18073 (char_table_set, char_table_set_range): Fix argument to
18074 char_table_ascii.
18075
18076 * coding.c (CATEGORY_MASK_RAW_TEXT): New macro.
18077 (detect_coding_utf_8, detect_coding_utf_16)
18078 (detect_coding_emacs_mule, detect_coding_iso_2022)
18079 (detect_coding_sjis, detect_coding_big5)
18080 (detect_coding_ccl, detect_coding_charset): Change argument MASK
18081 to DETECT_INFO. Update DETECT_INFO and return 1 if the byte
18082 sequence is valid in this coding system. Change callers.
18083 (MAX_ANNOTATION_LENGTH): New macro.
18084 (ADD_ANNOTATION_DATA): New macro.
18085 (ADD_COMPOSITION_DATA): Change argument. Change callers. Call
18086 ADD_ANNOTATION_DATA. Change the format of annotation data.
18087 (ADD_CHARSET_DATA): New macro.
18088 (emacs_mule_char): New argument ID. Change callers.
18089 (decode_coding_emacs_mule, decode_coding_iso_2022)
18090 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
18091 Produce charset annotation data in coding->charbuf.
18092 (encode_coding_emacs_mule, encode_coding_iso_2022): Pay attention
18093 to charset annotation data in coding->charbuf.
18094 (setup_coding_system): Add CODING_ANNOTATE_CHARSET_MASK
18095 coding->common_flags if the coding system is iso-2022 based and
18096 uses designation.
18097 (produce_composition): Adjust for the new annotation data format.
18098 (produce_charset): New function.
18099 (produce_annotation): Handle charset annotation.
18100 (handle_composition_annotation, handle_charset_annotation): New
18101 functions.
18102 (consume_chars): Handle charset annotation. Utilize the above two
18103 functions.
18104 (encode_coding_object): If SRC_OBJECT and DST_OBJECT are the same
18105 buffer, get the deleted text as a string and set
18106 coding->src_object to that string.
18107 (detect_coding, detect_coding_system): Use the new struct
18108 coding_detection_info.
18109
18110 * coding.h (struct coding_detection_info): New structure.
18111 (struct coding_system): Adjust prototype of the member `detector'.
18112 (CODING_ANNOTATE_CHARSET_MASK): New macro.
18113
181142008-02-01 Kenichi Handa <handa@m17n.org>
18115
18116 * insdel.c (insert_from_gap): Fix argument to offset_intervals.
18117
181182008-02-01 Dave Love <fx@gnu.org>
18119
18120 * keymap.c (apropos_predicate, apropos_accumulate): Declare static.
18121 (Fapropos_internal): Don't gcpro apropos_accumulate. Set result
18122 to new local and nullify apropos_accumulate before returning.
18123 (syms_of_keymap): Staticpro and initialize apropos_accumulate.
18124
181252008-02-01 Kenichi Handa <handa@m17n.org>
18126
18127 * charset.c (Fdefine_charset_internal): Setup charset.fast_map
18128 correctly.
e3eea1fc 18129
aac0c6e3
MR
181302008-02-01 Dave Love <fx@gnu.org>
18131
18132 * fns.c (Flanginfo): Call synchronize_system_time_locale.
18133
181342008-02-01 Kenichi Handa <handa@m17n.org>
18135
18136 The following changes are to make character composition happen
18137 automatically on displaying.
18138
18139 * Makefile.in (lisp, shortlisp): Add composite.elc.
18140
18141 * composite.h (Qauto_composed, Vauto_composition_function)
18142 (Qauto_composition_function): Extern them.
18143
18144 * composite.c (Vcomposition_function_table)
18145 (Qcomposition_function_table): Delete variables.
18146 (Qauto_composed, Vauto_composition_function)
18147 (Qauto_composition_function): New variables.
18148 (run_composition_function): Don't call
18149 compose-chars-after-function.
18150 (update_compositions): Clear `auto-composed' text property.
18151 (compose_chars_in_text): Delete this function.
18152 (syms_of_composite): Staticpro Qauto_composed and
18153 Qauto_composition_function. Declare Vauto_composition_function as
18154 a Lisp variable.
18155
18156 * dispextern.h (enum prop_idx): Add member AUTO_COMPOSED_PROP_IDX.
18157
18158 * xdisp.c (it_props): Add an entry for Qauto_composed.
18159 (handle_auto_composed_prop): New function.
18160
18161 * xselect.c (selection_data_to_lisp_data): Don't call
18162 compose_chars_in_text.
18163
181642008-02-01 Dave Love <fx@gnu.org>
18165
18166 * keyboard.c (read_char): Modify checking around use of
18167 Vkeyboard_translate_table.
18168
18169 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
18170 and fix C types.
18171
181722008-02-01 Kenichi Handa <handa@m17n.org>
18173
18174 * coding.c (decode_coding_utf_8, decode_coding_emacs_mule)
18175 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
18176 (decode_coding_charset, produce_chars): When eol_type is Qdos, handle
18177 the case that the last byte is '\r' correctly.
18178 (decode_coding): Flush out the unprocessed data correctly.
18179 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK bit of coding->mode.
18180
181812008-02-01 Dave Love <fx@gnu.org>
18182
18183 * xterm.c (XTread_socket): Fix changes for defined keysyms.
18184 Add XK_ISO... case.
18185 (xaw_scroll_callback): Revert last change.
18186
181872008-02-01 Kenichi Handa <handa@m17n.org>
18188
18189 * charset.c (Fset_charset_priority): Update Viso_2022_charset_list.
18190
181912008-02-01 Kenichi Handa <handa@m17n.org>
18192
18193 * xfaces.c (Vface_resizing_fonts): New variable.
18194 (struct font_name): New member `resizing_ratio'.
18195 (font_resizing_ratio): New function.
18196 (split_font_name): Set font->resizing_ratio.
18197 (better_font_p): Pay attention to font->resizing_ratio.
18198 (build_scalable_font_name): Likewise. Don't change POINT_SIZE,
18199 RESX, and RESY fields.
18200 (try_alternative_families): Try scalable fonts if
18201 Vscalable_fonts_allowed is not Qt.
18202 (syms_of_xfaces): Declare Vface_resizing_fonts as a Lisp variable.
18203
182042008-02-01 Dave Love <fx@gnu.org>
18205
18206 * xterm.c (xaw_scroll_callback): Cast correctly.
18207
182082008-02-01 Dave Love <fx@gnu.org>
18209
18210 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extend.
18211 (lispy_kana_keys): Comment out.
18212 (make_lispy_event) [XK_kana_A]: Comment out.
18213
18214 * xterm.c (xaw_scroll_callback): Cast call_data.
18215 (XTread_socket): Deal with ASCII keysyms.
18216 (syms_of_xterm) <Vx_keysym_table>: Fix args of make_hash_table.
18217
182182008-02-01 Dave Love <fx@gnu.org>
18219
18220 * xterm.c (Vx_keysym_table): New.
18221 (syms_of_xterm): Initialize it.
18222 (XTread_socket): Use it.
18223 From head: Eliminate incorrect optimization that tried to avoid
18224 decoding the output of X*LookupString.
18225 (x_get_font_repertory): Delete charset declaration.
18226
182272008-02-01 Kenichi Handa <handa@m17n.org>
18228
18229 * coding.c (detect_coding_charset): If only ASCII bytes are found,
18230 return 0.
18231 (Fdefine_coding_system_internal): Setup
18232 CODING_ATTR_ASCII_COMPAT (attrs) correctly.
18233
182342008-02-01 Dave Love <fx@gnu.org>
18235
18236 * coding.c (Fcheck_coding_system): Doc fix.
18237
18238 * editfns.c (Finsert_byte): Return a proper value.
18239
182402008-02-01 Kenichi Handa <handa@m17n.org>
18241
18242 * coding.c (decode_coding): Fix args to translate_chars. Pay
18243 attention to Vstandard_translation_table_for_decode.
18244 (encode_coding): Fix args to translate_chars. Pay attention to
18245 Vstandard_translation_table_for_encode.
18246
18247 * data.c (Faset): Check NEWELT by ASCII_CHAR_P, not by
18248 SINGLE_BYTE_CHAR_P.
18249
18250 * editfns.c (general_insert_function): Check VAL by ASCII_CHAR_P,
18251 not by SINGLE_BYTE_CHAR_P.
18252
18253 * fns.c (concat): Check CH by ASCII_CHAR_P, not by
18254 SINGLE_BYTE_CHAR_P.
18255
18256 * insdel.c (copy_text): Check C by ASCII_CHAR_P, not by
18257 SINGLE_BYTE_CHAR_P.
18258
18259 * keymap.c (Ftext_char_description): Check C by ASCII_CHAR_P, not
18260 by SINGLE_BYTE_CHAR_P.
18261
18262 * search.c (Freplace_match): Check C by ASCII_CHAR_P, not by
18263 SINGLE_BYTE_CHAR_P.
18264
182652008-02-01 Dave Love <fx@gnu.org>
18266
18267 * fns.c (Fstring_as_multibyte, Fstring_to_multibyte): Doc fix.
18268
182692008-02-01 Dave Love <fx@gnu.org>
18270
18271 * fns.c (Flanginfo): Fix typo.
18272
18273 * unexelf.c (unexec): Make last change conditional on Irix 6.5.
18274
182752008-02-01 Kenichi Handa <handa@m17n.org>
18276
18277 * coding.c (detect_coding_utf_8, detect_coding_utf_16)
18278 (detect_coding_emacs_mule, detect_coding_iso_2022)
18279 (detect_coding_sjis, detect_coding_big5, detect_coding_ccl): Check
18280 incomplete byte sequence. Don't update *mask when correctly detected.
18281 (decode_coding_sjis): Fix decoding of katakana-jisx0201.
18282 (detect_eol): Delete the argument CODING, and add the argument CATEGORY.
18283 (detect_coding, detect_coding_system): Adjust for the changes above.
18284
182852008-02-01 Kenichi Handa <handa@m17n.org>
18286
18287 * character.c (char_string): Rename from
18288 char_string_with_unification. Pay attention to CHAR_MODIFIER_MASK.
18289 (string_char): Rename from string_char.
18290
18291 * character.h (CHAR_STRING, CHAR_STRING_ADVANCE): Call char_string
18292 if C is greater than MAX_3_BYTE_CHAR.
18293 (STRING_CHAR, STRING_CHAR_AND_LENGTH, STRING_CHAR_ADVANCE): Call
18294 string_char instead of string_char_with_unification.
18295
182962008-02-01 Dave Love <fx@gnu.org>
18297
18298 * coding.c (decode_coding_utf_8): Treat surrogates as invalid.
18299
183002008-02-01 Kenichi Handa <handa@m17n.org>
18301
18302 * keymap.c (push_key_description): Pay attention to force_multibyte.
18303
18304 * regex.c (re_search_2): Fix for the case of unibyte buffer.
18305
183062008-02-01 Dave Love <fx@gnu.org>
18307
18308 * charset.c (define_charset_internal): Rename `supprementary'.
18309
18310 * Makefile.in (lisp, shortlisp): Remove latin-N.
18311
183122008-02-01 Dave Love <fx@gnu.org>
18313
18314 * xfns.c (x_window, x_window): Use use_xim.
18315
18316 * xterm.c (use_xim): Initialize.
18317 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
18318 (x_term_init): Maybe set use_xim.
18319
18320 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
18321
183222008-02-01 Kenichi Handa <handa@m17n.org>
18323
18324 * search.c (search_buffer): Fix case-fold-search of multibyte
18325 characters.
18326 (boyer_moore): Rename the last argument to char_high_bits.
18327
183282008-02-01 Kenichi Handa <handa@m17n.org>
18329
18330 * xdisp.c (display_string): Fix for the case of zero width glyph.
18331
18332 * xfns.c (x_set_font): Change the error message of the case that
18333 x_new_fontset returns Qt.
18334
18335 * xfaces.c (set_lface_from_font_name): Reject the default fontset.
18336 (Finternal_set_lisp_face_attribute): Use signal_error for the
18337 error of invalid fontset.
18338
18339 * xterm.c (x_new_fontset): If FONTSETNAME specifies the default
18340 fontset, return Qt.
18341
183422008-02-01 Dave Love <fx@gnu.org>
18343
18344 * unexelf.c (unexec): Make .got handling not SGI-specific.
18345
18346 * syntax.c (syms_of_syntax) <multibyte-syntax-as-symbol>: Doc fix.
18347
18348 * regex.c: Use `ifdef HAVE_ALLOCA_H', not `if HAVE_ALLOCA_H'.
18349
18350 * keyboard.c (read_key_sequence): Fix type error.
18351
18352 * buffer.c (Fset_buffer_multibyte, Fset_buffer_multibyte): Fix
18353 type error.
18354
18355 * fontset.c (fontset_add): Return Lisp_Object.
18356
183572008-02-01 Dave Love <fx@gnu.org>
18358
18359 * charset.h (charset_ordered_list_tick): Declare extern.
18360
183612008-02-01 Kenichi Handa <handa@m17n.org>
18362
18363 The following changes (and some of 2008-02-01 changes of mine) are
18364 for handling syntax, category, and case conversion for unibyte
18365 characters by converting them to multibyte on the fly. With these
18366 changes, we don't have to setup syntax and case tables for unibyte
18367 characters in each language environment.
18368
18369 * abbrev.c (Fexpand_abbrev): Convert a unibyte character to
18370 multibyte if necessary.
18371
18372 * bytecode.c (Fbyte_code): Likewise.
18373
18374 * character.h (LEADING_CODE_LATIN_1_MIN)
18375 (LEADING_CODE_LATIN_1_MAX): New macros.
18376 (unibyte_to_multibyte_table): Extern it.
18377 (unibyte_char_to_multibyte): New macro.
18378 (MAKE_CHAR_MULTIBYTE): Use unibyte_to_multibyte_table.
18379 (CHAR_LEADING_CODE): New macro.
18380 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): New macro.
18381
18382 * character.c (unibyte_to_multibyte_table): New variable.
18383 (unibyte_char_to_multibyte): Move to character.h and define as macro.
18384 (multibyte_char_to_unibyte): If C is an eight-bit character,
18385 convert it to the corresponding byte value.
18386
18387 * charset.c (Fset_unibyte_charset): If the dimension of CHARSET is
18388 not 1, signals an error. Update the elements of
18389 unibyte_to_multibyte_table.
18390 (init_charset_once): Initialize unibyte_to_multibyte_table.
18391 (syms_of_charset): Define the charset `iso-8859-1'.
18392
18393 * cmds.c (internal_self_insert): In a multibyte buffer, insert C
18394 as is without converting it to unibyte. In a unibyte buffer,
18395 convert C to multibyte before checking the syntax.
18396
18397 * lisp.h (unibyte_char_to_multibyte): Delete extern.
18398
18399 * minibuf.c (Fminibuffer_complete_word): Use the macro
18400 FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE.
18401
18402 * regex.h (struct re_pattern_buffer): New member target_multibyte.
18403
18404 * regex.c (RE_TARGET_MULTIBYTE_P): New macro.
18405 (GET_CHAR_BEFORE_2): Check target_multibyte, not multibyte. If
18406 that is zero, convert an eight-bit char to multibyte.
18407 (MAKE_CHAR_MULTIBYTE, CHAR_LEADING_CODE): New dummy new macros for
18408 non-emacs case.
18409 (PATFETCH): Convert an eight-bit char to multibyte.
18410 (HANDLE_UNIBYTE_RANGE): New macro.
18411 (regex_compile): Setup the compiled pattern for multibyte chars
18412 even if the given regex string is unibyte. Use PATFETCH_RAW
18413 instead of PATFETCH in many places. To handle `charset'
18414 specification of unibyte, call HANDLE_UNIBYTE_RANGE. Use bitmap
18415 only for ASCII chars.
18416 (analyse_first) <exactn>: Simplify because the compiled pattern
18417 is multibyte.
18418 <charset_not>: Setup fastmap from bitmap only for ASCII chars.
18419 <charset>: Use CHAR_LEADING_CODE to get leading codes.
18420 <categoryspec>: If multibyte, setup fastmap only for ASCII chars here.
18421 (re_compile_fastmap) [emacs]: Call analyse_first with the arg
18422 multibyte always 1.
18423 (re_search_2): In emacs, set the locale variable multibyte to 1,
18424 otherwise to 0. New local variable target_multibyte. Check it
18425 to decide the multibyteness of STR1 and STR2. If
18426 target_multibyte is zero, convert unibyte chars to multibyte
18427 before translating and checking fastmap.
18428 (TARGET_CHAR_AND_LENGTH): New macro.
18429 (re_match_2_internal): In emacs, set the locale variable multibyte
18430 to 1, otherwise to 0. New local variable target_multibyte. Check
18431 it to decide the multibyteness of STR1 and STR2. Use
18432 TARGET_CHAR_AND_LENGTH to fetch a character from D.
18433 <charset, charset_not>: If multibyte is nonzero, check fastmap
18434 only for ASCII chars. Call bcmp_translate with
18435 target_multibyte, not with multibyte.
18436 <begline>: Declare the local variable C as `unsigned'.
18437 (bcmp_translate): Change the last arg name to target_multibyte.
18438
18439 * search.c (compile_pattern_1): Don't adjust the multibyteness of
18440 the regexp pattern and the matching target. Set cp->buf.multibyte
18441 to the multibyteness of the regexp pattern. Set
18442 cp->but.target_multibyte to the multibyteness of the matching target.
18443 (wordify): Use FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE instead of
18444 FETCH_STRING_CHAR_ADVANCE.
18445 (Freplace_match): Convert unibyte chars to multibyte.
18446
18447 * syntax.c (char_quoted, back_comment, scan_words)
18448 (Fforward_comment, scan_lists, Fbackward_prefix_chars)
18449 (scan_sexps_forward): Use FETCH_CHAR_AS_MULTIBYTE to convert
18450 unibyte chars to multibyte.
18451 (skip_chars): Delete the arg syntaxp, and move the code for
18452 handling syntaxes to skip_syntaxes. Change callers.
18453 Fix the case that the multibyteness of STRING and the current
18454 buffer doesn't match.
18455 (skip_syntaxes): New function.
18456 (SYNTAX_WITH_MULTIBYTE_CHECK): Check C by ASCII_CHAR_P, not by
18457 SINGLE_BYTE_CHAR_P.
18458
184592008-02-01 Kenichi Handa <handa@m17n.org>
18460
18461 * xfaces.c (QCfontset): New variable.
18462 (LFACE_FONTSET): New macro.
18463 (check_lface_attrs): Check also LFACE_FONTSET_INDEX.
18464 (set_lface_from_font_name): Setup LFACE_FONTSET (lface).
18465 (Finternal_set_lisp_face_attribute)
18466 (Finternal_get_lisp_face_attribute): Handle QCfontset.
18467 (lface_same_font_attributes_p): Fix checking of LFACE_FONT_INDEX,
18468 check also LFACE_FONTSET_INDEX.
18469 (face_fontset): Check attrs[LFACE_FONTSET_INDEX], not
18470 attrs[LFACE_FONT_INDEX].
18471 (syms_of_xfaces): Intern and staticpro QCfontset.
18472
18473 * dispextern.h (enum lface_attribute_index): New member
18474 LFACE_FONTSET_INDEX.
18475
18476 * fns.c (base64_encode_1): Handle eight-bit chars correctly.
18477
184782008-02-01 Kenichi Handa <handa@m17n.org>
18479
18480 * coding.c (coding_set_destination): Fix coding->destination for
18481 the case converting a region.
18482 (encode_coding_utf_8): Encode eight-bit chars as single byte.
18483 (encode_coding_object): Fix coding->dst_pos and
18484 coding->dst_pos_byte for the case converting a region.
18485
18486 * insdel.c (insert_from_gap): Make it work even if PT != GTP.
18487
18488 * character.h (BYTE8_STRING): New macro.
18489
18490 * fns.c (base64_decode_1): Insert eight-bit chars correctly.
18491
184922008-02-01 Kenichi Handa <handa@m17n.org>
18493
18494 * xdisp.c (get_next_display_element): Don't display unibyte 8-bit
18495 characters by octal form.
18496
18497 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
18498
18499 * buffer.h (_fetch_multibyte_char_len): Delete extern.
18500 (FETCH_MULTIBYTE_CHAR, BUF_FETCH_MULTIBYTE_CHAR): Don't use
18501 _fetch_multibyte_char_len.
18502 (FETCH_CHAR_AS_MULTIBYTE): New macro.
18503
18504 * casetab.c (set_canon, set_identity, shuffle): Simplify.
18505
18506 * casefiddle.c (casify_object): Simplify. Handle the case that
18507 the case conversion change the byte length.
18508 (casify_region): Likewise.
18509
18510 * character.h (MAKE_CHAR_UNIBYTE, MAKE_CHAR_MULTIBYTE): New macros.
18511
18512 * character.c (_fetch_multibyte_char_len): Delete this variable.
18513 (syms_of_character): Setup Vprintable_chars.
18514
18515 * editfns.c (Fchar_equal): Fix for the unibyte case.
18516 (Finsert_byte): New function.
18517 (syms_of_editfns): Defsubr it.
18518
18519 * keyboard.c (read_key_sequence): Use ~CHAR_MODIFIER_MASK instead
18520 of direct code 0x3ffff.
18521
18522 * search.c (Freplace_match): Fix for the unibyte case.
18523
185242008-02-01 Kenichi Handa <handa@m17n.org>
18525
18526 * lread.c (safe_to_load_p): Fix the logic.
18527
18528 * syntax.c (scan_words): Don't treat characters belonging to
18529 different scripts as constituting a word.
18530
18531 * editfns.c (Fformat): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
18532
18533 * fontset.c (Fset_fontset_font): Treat `ascii' as charset, not script.
18534
18535 * emacs.c (main): In the case of --unibyte, instead of aborting on
18536 finding non-empty buffer, make it unibyte.
18537
185382008-02-01 Kenichi Handa <handa@m17n.org>
18539
18540 * xterm.c (x_new_fontset): Call `create-fontset-from-ascii-font'
18541 to create a fontset.
18542
185432008-02-01 Dave Love <fx@gnu.org>
18544
18545 * character.c (Funibyte_char_to_multibyte): Doc fix.
18546
18547 * xfns.c [HAVE_STDLIB_H]: Fix last change.
18548
185492008-02-01 Kenichi Handa <handa@m17n.org>
18550
18551 * fontset.c (fontset_add): Make the type `int'.
18552 (fontset_id_valid_p): Define it if FONTSET_DEBUG is defined.
18553
18554 * character.c (unibyte_char_to_multibyte)
18555 (multibyte_char_to_unibyte, Funibyte_char_to_multibyte): Refer to
18556 charset_unibyte, not charset_primary.
18557
18558 * charset.h (charset_unibyte): Extern it instead of charset_primary.
18559
18560 * charset.c (charset_unibyte): Rename from charset_primary.
18561 (Funibyte_charset): Rename from Fprimary_charset.
18562 (Fset_unibyte_charset): Rename from Fset_primary_charset.
18563 (syms_of_charset): Adjust for the above changes.
18564
18565 * w32term.c (x_produce_glyphs): Use ASCII_CHAR_P, not
18566 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
18567 it->multibyte_p is zero.
18568
18569 * lisp.h (nonascii_insert_offset, Vnonascii_translation_table):
18570 Delete extern.
18571
185722008-02-01 Kenichi Handa <handa@m17n.org>
18573
18574 * coding.c (Fdefine_coding_system_internal): Fix category setting
18575 for a coding system of type iso-2022.
18576
185772008-02-01 Kenichi Handa <handa@m17n.org>
18578
18579 * fontset.h (FS_LOAD_FONT): Call fs_load_font with the arg CHARSET -1.
18580
185812008-02-01 Kenichi Handa <handa@m17n.org>
18582
18583 * syntax.c (Vnext_word_boundary_function_table): New variable.
18584 (next-word-boundary-function-table): Declare it as a Lisp variable
18585 in syms_of_syntax.
18586 (scan_words): Call functions in Vnext_word_boundary_function_table
18587 if any.
18588
18589 * xterm.c (x_load_font): Initialize fontp->fontset to -1.
18590
18591 * fontset.c (fs_load_font): If fontp->charset is not negative,
18592 return fontp without setting its members.
18593
185942008-02-01 Dave Love <fx@gnu.org>
18595
18596 * xfns.c [HAVE_STDLIB_H]: Change logic (instead of fixing typo).
18597
18598 * m/sparc.h (HAVE_ALLOCA): Delete.
18599
18600 * s/irix6-5.h: Don't include strings.h.
18601 (bcopy, bzero, bcmp): Don't undef.
18602
18603 * s/irix6-0.h (bcopy, bzero, bcmp): Don't undef.
18604
18605 * s/usg5-4.h (NO_SIOCTL_H): Don't define.
18606 (TIOCSIGSEND): Don't test IRIX6.
18607 (bcopy, bzero, bcmp): Define conditionally.
18608
186092008-02-01 Kenichi Handa <handa@m17n.org>
18610
18611 * buffer.c (Qas, Qmake, Qto): New variables.
18612 (Fset_buffer_multibyte): New optional arg METHOD. Change caller.
18613 (syms_of_buffer): Intern and staticpro Qas, Qmake, and Qto.
18614
18615 * callproc.c (Fcall_process): Don't call insert_1_both directly if
18616 we are inserting a process output into a multibyte buffer.
18617
18618 * character.h (CHAR_TO_BYTE8): If C is not eight-bit char, call
18619 multibyte_char_to_unibyte.
18620
18621 * character.c (Funibyte_char_to_multibyte): If C can't be decoded
18622 by the primary charset, make it eight-bit char.
18623 (Fmultibyte_char_to_unibyte): Call CHAR_TO_BYTE8.
18624
18625 * charset.c (charset_eight_bit, Qeight_bit_control): New variables.
18626 (charset_8_bit__control, charset_8_bit_graphic)
18627 (Qeight_bit_control, Qeight_bit_graphic): Delete these variables.
18628 (define_charset_internal): New function.
18629 (syms_of_charset): Call define_charset_internal for pre-defined
18630 charsets.
18631
18632 * charset.h (charset_8_bit): Extern it.
18633
18634 * coding.c (make_conversion_work_buffer): Adjust for the change
18635 of Fset_buffer_multibyte.
18636 (encode_coding_raw_text): Increment p0 in the loop.
18637
18638 * lisp.h (Fset_buffer_multibyte): Adjust prototype.
18639
18640 * xdisp.c (setup_echo_area_for_printing, set_message_1): Adjust
18641 for the change of Fset_buffer_multibyte.
18642
18643 * fns.c (Fstring_to_multibyte): New function.
18644 (syms_of_fns): Declare Fstring_to_multibyte as Lisp subroutine.
18645
186462008-02-01 Dave Love <fx@gnu.org>
18647
18648 * xfns.c (x_put_x_image): Declare args.
18649
18650 * xfaces.c (font_name_registry, choose_face_font): Delete unused vars.
18651 (try_font_list): Declare an arg.
18652
18653 * xdisp.c (message2_nolog, set_message): Declare an arg.
18654
18655 * terminfo.c (tparam): Declare an arg. Use P_ to declare tparm.
18656
18657 * syntax.c (scan_sexps_forward): Declare an arg.
18658
18659 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
18660 Declare an arg.
18661
18662 * lisp.h (Fnew_fontset): Declare.
18663
18664 * keymap.c (push_key_description): Call CHARACTERP correctly.
18665
18666 * fontset.c (fontset_add): Declare args. Call make_number correctly.
18667 (face_for_char): Delete unused vars.
18668 (Fset_fontset_font): Doc fix. Delete unused vars.
18669
18670 * doc.c (Fsubstitute_command_keys): Delete unused vars.
18671
18672 * composite.c (update_compositions): Declare arg.
18673
18674 * cm.c (calccost, cmgoto): Declare args.
18675
18676 * charset.c: Remove `emacs' conditional. Doc fixes.
18677 (map_char_table_for_charset): Declare.
18678
18679 * character.c (syms_of_character) <translation-table-vector>: Doc fix.
18680
18681 * ccl.c: Remove `emacs' conditional.
18682
186832008-02-01 Kenichi Handa <handa@m17n.org>
18684
18685 The following changes are to allow specifying multiple font
18686 patterns for a character range (specified by script or charset).
18687
18688 * Makefile.in (abbrev.o): Depend on syntax.h.
18689 (xfaces.o): Depend on charset.h.
18690
18691 * alloc.c (Fmake_string): Use ASCII_CHAR_P, not
18692 SINGLE_BYTE_CHAR_P.
18693
18694 * ccl.c (Fccl_execute_on_string): Add `const' to local variables.
18695
18696 * character.h (Vchar_script_table): Extern it.
18697
18698 * character.c (Vscript_alist): Delete.
18699 (Vchar_script_table, Qchar_script_table): New variable.
18700 (syms_of_character): Declare Vchar_script_table as a lisp variable
18701 and initialize it.
18702
18703 * chartab.c (Fmake_char_table): Doc fix. If PURPOSE doesn't
18704 have property char-table-extra-slots, make no extra slot.
18705
18706 * dispextern.h (struct face): Delete member `charset'.
18707 (FACE_SUITABLE_FOR_CHAR_P, FACE_FOR): Use ASCII_CHAR_P, not
18708 SINGLE_BYTE_CHAR_P.
18709 (choose_face_font, lookup_non_ascii_face, font_name_registry):
18710 Add prototypes.
18711 (lookup_face, lookup_named_face, lookup_derived_face): Fix prototype.
18712 (generate_ascii_font_name): Rename from generate_ascii_font.
18713
18714 * fontset.h (get_font_repertory_func): New prototype.
18715 (make_fontset_for_ascii_face, fs_load_font): Fix prototypes.
18716 (FS_LOAD_FONT): Call fs_load_font with the 3rd arg charset_ascii.
18717
18718 * fontset.c (Qprepend, Qappend): New variables.
18719 (FONTSET_CHARSET_ALIST, FONTSET_FACE_ALIST): Delete.
18720 (FONTSET_NOFONT_FACE, FONTSET_REPERTORY): New macros.
18721 (FONTSET_REF): Optimize if FONTSET is Vdefault_fontset.
18722 (FONTSET_REF_AND_RANGE, FONTSET_ADD): New macros.
18723 (fontset_ref_and_range, fontset_add, reorder_font_vector)
18724 (load_font_get_repertory): New functions.
18725 (fontset_set): Delete.
18726 (fontset_face): New arg FACE. Return face ID, not face.
18727 Complete re-write to handle new fontset structure. Change caller.
18728 (free_face_fontset): Use ASET istead of AREF (X) = Y.
18729 (face_for_char): Don't call lookup_face.
18730 (make_fontset_for_ascii_face): New arg FACE.
18731 (fs_load_font): New arg CHARSET_ID. Don't check
18732 Vfont_encoding_alist here.
18733 (find_font_encoding): New function.
18734 (list_fontsets): Use STRINGP, not ! NILP.
18735 (accumulate_script_ranges): New function.
18736 (Fset_fontset_font, Fnew_fontset, Ffontset_info): Completely
18737 re-written to handle new fontset structure.
18738 (Ffontset_font): Return a copy of element.
18739 (syms_of_fontset): Define symbols Qprepend and Qappend. Fix
18740 docstring of font-encoding-alist.
18741
18742 * lisp.h (CHAR_TABLE_REF): Remove unnecessary check (IDX >= 0).
18743 (Fset_fotset_font): Fix arguments to 5.
18744
18745 * msdos.c (XMenuActivate): Adjust for the change of lookup_derived_face.
18746
18747 * xdisp.c (message_dolog, set_message_1, extend_face_to_end_of_line):
18748 Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
18749 (highlight_trailing_whitespace): Adjust for the change of
18750 lookup_named_face.
18751
18752 * xfaces.c: Include charset.h.
18753 (load_face_font): Delete argument C. Change caller.
18754 (generate_ascii_font_name): Rename from generate_ascii_font.
18755 (font_name_registry): New function.
18756 (cache_face): Store ascii faces before non-ascii faces in buckets.
18757 (lookup_face): Delete arguments C and BASE_FACE. Change caller.
18758 Lookup only ascii faces.
18759 (lookup_non_ascii_face): New function.
18760 (lookup_named_face): Delete argument C. Change caller.
18761 (lookup_derived_face): Delete argument C. Change caller.
18762 (try_font_list): New arg PATTERN. Change caller. If PATTERN is
18763 a string, just call font_list with it.
18764 (choose_face_font): Delete arguments FACE and C. New arg
18765 FONT_SPEC. Change caller.
18766 (realize_face, realize_x_face): Delete arguments C and BASE_FACE.
18767 Change caller.
18768 (realize_non_ascii_face): New function.
18769 (realize_x_face): Call load_face_font here.
18770 (realize_tty_face): Delete argument C. Change caller.
18771 (compute_char_face): If CH is not ascii, call FACE_FOR_CHAR to
18772 get a face ID.
18773 (dump_realized_face): Don't print charset of FACE.
18774
18775 * xfns.c (x_set_font): Always call x_new_fontset and
18776 store_frame_parameter.
18777 (Fx_create_frame): Call x_new_fontset, not x_new_font.
18778 (syms_of_xfns): Set get_font_repertory_func to x_get_font_repertory.
18779
18780 * xterm.h (x_get_font_repertory): Extern it.
18781
18782 * xterm.c (x_produce_glyphs): Use ASCII_CHAR_P, not
18783 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
18784 it->multibyte_p is zero.
18785 (XTread_socket): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
18786 (x_new_fontset): If FONTSETNAME doesn't match any existing
18787 fontsets, create a new one.
18788 (x_get_font_repertory): New function.
18789
187902008-02-01 Kenichi Handa <handa@m17n.org>
18791
18792 * coding.c (Ffind_coding_systems_region_internal): Detect an
18793 ASCII only string correctly.
18794
18795 * lread.c (Fload): Don't load with Qload_force_doc_strings t if
18796 version is 0.
18797
187982008-02-01 Kenichi Handa <handa@m17n.org>
18799
18800 * lread.c: Include "coding.h".
18801 (Qget_emacs_mule_file_char, Qload_force_doc_strings)
18802 (load_each_byte, unread_char): New variables.
18803 (readchar_backlog): Delete.
18804 (readchar): Return a character unless load_each_byte is nonzero.
18805 Handle the case that readcharfun is Qget_emacs_mule_file_char or a
18806 cons. If unread_char is not -1, simply return it.
18807 (unreadchar): Handle the case that readcharfun is
18808 Qget_emacs_mule_file_char or a cons. Set unread_char if necessary.
18809 (read_multibyte): Delete.
18810 (readbyte_for_lambda, readbyte_from_file, readbyte_from_string)
18811 (read_emacs_mule_char): New functions.
18812 (Fload): Even if the file doesn't have the extension ".elc", if
18813 safe_to_load_p returns a positive version number, assume that the
18814 file contains bytecompiled code. If the version is less than 22,
18815 load the file while decoding multibyte sequences by emacs-mule.
18816 (readevalloop): Don't use readchar_backlog.
18817 (Fread): Likewise. Pay attention to the case that STREAM is a cons.
18818 (Fread_from_string): Pay attention to the case that STREAM is a cons.
18819 (read_escape): Delete the arg BYTEREP.
18820 (read1): Set load_each_byte to 1 temporarily while handling
18821 #@NUMBER. Don't call read_multibyte.
18822 (read_vector): Call Fread with a cons. If readcharfun is
18823 Qget_emacs_mule_file_char, decode the read string by emacs-mule.
18824 (read_list): If doc_reference is 2, make the cdr part string as unibyte.
18825 (syms_of_lread): Intern and staticpro Qget_emacs_mule_file_char
18826 and Qload_force_doc_strings.
18827
188282008-02-01 Kenichi Handa <handa@m17n.org>
18829
18830 * xdisp.c (face_before_or_after_it_pos): Call
18831 FETCH_MULTIBYTE_CHAR with byte postion, not char position.
18832
188332008-02-01 Kenichi Handa <handa@m17n.org>
18834
18835 * character.h (TRAILING_CODE_P): New macro.
18836 (MAYBE_UNIFY_CHAR): Adjust for the change of Funify_charset.
18837 (string_char_with_unification): Fix prototype.
18838 (Vscript_alist): Extern it.
18839
18840 * character.c (Vscript_alist): New variable.
18841 (string_char_with_unification, str_as_unibyte)
18842 (string_escape_byte8): Add `const' to local variables.
18843 (syms_of_character): Declare script-alist as a Lisp variable.
18844
18845 * charset.h (Vcharset_ordered_list): Extern it.
18846 (charset_ordered_list_tick): Extern it.
18847 (EMACS_MULE_LEADING_CODE_PRIVATE_11)
18848 (EMACS_MULE_LEADING_CODE_PRIVATE_12)
18849 (EMACS_MULE_LEADING_CODE_PRIVATE_21)
18850 (EMACS_MULE_LEADING_CODE_PRIVATE_22): New macros.
18851 (Funify_charset): Adjust for the change of Funify_charset.
18852
18853 * charset.c (charset_ordered_list_tick): New variable.
18854 (Fdefine_charset_internal): Increment charset_ordered_list_tick.
18855 (Funify_charset): New optional arg DEUNIFY. If it is non-nil,
18856 deunify intead of unify a charset.
18857 (string_xstring_p): Add `const' to local variables.
18858 (find_charsets_in_text): Add `const' to arguments and local variables.
18859 (encode_char): Adjust for the change of Funify_charset. Fix
18860 detecting of invalid code.
18861 (Fset_charset_priority): Increment charset_ordered_list_tick.
18862 (Fmap_charset_chars): Fix handling of default value for FROM_CODE
18863 and TO_CODE.
18864
18865 * coding.c (LEADING_CODE_PRIVATE_11, LEADING_CODE_PRIVATE_12)
18866 (LEADING_CODE_PRIVATE_21, LEADING_CODE_PRIVATE_22): Delete macros.
18867 Changed callers to use EMACS_MULE_LEADING_CODE_PRIVATE_11, etc.
18868 (decode_coding_ccl, consume_chars)
18869 (Ffind_coding_systems_region_internal)
18870 (Fcheck_coding_systems_region): Add `const' to local variables.
18871
18872 * print.c (print_object): Use octal form for printing the
18873 contents of a bool vector.
18874
188752008-02-01 Dave Love <fx@gnu.org>
18876
18877 * lread.c (Fload) <!load_dangerous_libraries>: Don't leak fd.
18878 <version == 20>: Refuse to load.
18879
188802008-02-01 Dave Love <fx@gnu.org>
18881
18882 * fns.c: Move coding.h.
18883 (Qcodeset, Qdays, Qmonths): New.
18884 (concat): Use CHARACTERP instead of INTEGERP.
18885 (Flocale_codeset): Delete.
18886 (Flanginfo): New function.
18887 (syms_of_fns): Change accordingly.
18888
18889 * coding.c (adjust_coding_eol_type): Fix eol_type/eol_seen mixup.
18890
188912008-02-01 Dave Love <fx@gnu.org>
18892
18893 * casetab.c (init_casetab_once, init_casetab_once): Fix
18894 CHAR_TABLE_SET call.
18895
18896 * category.c (Fmodify_category_entry): Fix CATEGORY_MEMBER call.
18897
18898 * character.c (syms_of_character): Fix CHAR_TABLE_SET call.
18899
18900 * charset.c (Fmap_charset_chars): Check args. Convert Lisp types.
18901 (load_charset_map, Fdeclare_equiv_charset, Fencode_char)
18902 (Fset_charset_priority, syms_of_charset): Convert Lisp types.
18903
18904 * charset.h (CHECK_CHARSET_GET_ID): Use XINT on AREF result.
18905
18906 * coding.c (ENCODE_DESIGNATION, decode_eol)
18907 (make_conversion_work_buffer, code_conversion_restore)
18908 (Fdefine_coding_system_internal): Convert Lisp types.
18909 (code_conversion_restore): Use EQ, not ==.
18910 (Fencode_coding_string): Fix code_convert_string call.
18911
18912 * coding.h (code_convert_region): Fix prototype.
18913
18914 * dispextern.h (redraw_frame, redraw_garbaged_frames): Remove.
18915
18916 * fontset.c (fontset_ref, fontset_set, fs_load_font)
18917 (Ffontset_info): Convert Lisp types.
18918
18919 * syntax.h (SYNTAX_ENTRY_INT): Don't use make_number.
18920
18921 * xterm.c (note_mouse_movement): Fix call of window_from_coordinates.
18922
18923 * xdisp.c (display_mode_element): Fix call of Fset_text_properties.
18924
18925 * chartab.c: Include "...h", not <...h> in some cases.
18926
18927 * callproc.c (Fcall_process): Remove unused variables.
18928
189292008-02-01 Dave Love <fx@gnu.org>
18930
18931 * coding.c (Fset_coding_system_priority): Allow null arg list.
18932
189332008-02-01 Dave Love <fx@gnu.org>
18934
18935 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
18936 (Fself_insert_and_exit): Use CHARACTERP.
18937
18938 * callproc.c (Fcall_process): Remove unused vars.
18939
18940 * xterm.c (XTread_socket): Add extra dead keysyms.
18941
18942 * xdisp.c (decode_mode_spec_coding): Use CHARACTERP.
18943
18944 * dispextern.h: Remove prototypes for redraw_frame,
18945 redraw_garbaged_frames.
18946
18947 * cmds.c (Fself_insert_command): Use CHARACTERP.
18948
18949 * chartab.c (make_sub_char_table): Remove unused var.
18950 (Fset_char_table_default, Fmap_char_table): Doc fix.
18951
18952 * keymap.c (access_keymap): Remove generic char code.
18953 (push_key_description): Use CHARACTERP.
18954
189552008-02-01 Dave Love <fx@gnu.org>
18956
18957 * charset.c: Doc fixes.
18958 (Funify_charset): Extra checking.
18959
189602008-02-01 Dave Love <fx@gnu.org>
18961
18962 * lread.c: Remove some unused variables.
18963 (safe_to_load_p): If safe, return the magic number version byte.
18964 (Fload): Maybe use load-with-code-conversion.
18965
189662008-02-01 Kenichi Handa <handa@m17n.org>
18967
18968 * category.c (Fmodify_category_entry): Don't modify the contents
18969 of category_set for characters out of the range. Avoid
18970 unnecessary modification.
18971
18972 * character.h (MAYBE_UNIFY_CHAR): Adjust for the change of
18973 Vchar_unify_table. The default value of the table is now nil.
18974
18975 * character.c (syms_of_character): Setup Vchar_width_table for
18976 eight-bit-control and raw-byte chars.
18977
18978 * charset.h (enum define_charset_arg_index): Delete
18979 charset_arg_parents and add charset_arg_subset and
18980 charset_arg_superset.
18981 (enum charset_attr_index): Delete charset_parents and add
18982 charset_subset and charset_superset.
18983 (enum charset_method): Delete CHARSET_METHOD_INHERIT and add
18984 CHARSET_METHOD_SUBSET and CHARSET_METHOD_SUPERSET.
18985 (CHARSET_ATTR_PARENTS, CHARSET_PARENTS): Delete.
18986 (CHARSET_ATTR_SUBSET, CHARSET_ATTR_SUPERSET, CHARSET_SUBSET)
18987 (CHARSET_SUPERSET): New macros.
18988 (charset_work): Extern it.
18989 (ENCODE_CHAR): Use charset_work.
18990 (CHAR_CHARSET_P): Adjust for the change of encoder format.
18991 (map_charset_chars): Extern it.
18992
18993 * charset.c (load_charset_map): Set the default value of encoder
18994 and deunifier char-tables to nil.
18995 (map_charset_chars): Change argument. Change callers. Use
18996 map_char_table_for_charset instead of map_char_table.
18997 (Fmap_charset_chars): New optional args from_code and to_code.
18998 (Fdefine_charset_internal): Adjust for the change of
18999 `define-charset' (:parents -> :subset or :superset).
19000 (charset_work): New variable.
19001 (encode_char, syms_of_charset): Adjust for the change of
19002 Fdefine_charset_internal.
19003 (Ffind_charset_string): Setup the vector `charsets' correctly.
19004
19005 * chartab.c (sub_char_table_ref_and_range): New arg default. Fix
19006 the previous change.
19007 (char_table_ref_and_range): Adjust for the above change.
19008 (map_sub_char_table_for_charset): New function.
19009 (map_char_table_for_charset): New function.
19010
19011 * keymap.c (describe_vector): Handle a char-table directly here.
19012 (describe_char_table): Delete.
19013
19014 * lisp.h (map_charset_chars): Delete.
19015
190162008-02-01 Dave Love <fx@gnu.org>
19017
19018 * fns.c (count_combining): Comment out (unused).
19019 (Flocale_codeset): New.
19020 (syms_of_fns): Defsubr it.
19021
19022 * config.in (HAVE_PTY_H, HAVE_SIZE_T, HAVE_LANGINFO_CODESET): New.
19023 (size_t): Remove.
19024
190252008-02-01 Dave Love <fx@gnu.org>
19026
19027 * Makefile.in (chartab.o): Depend on charset.h.
19028
190292008-02-01 Kenichi Handa <handa@m17n.org>
19030
19031 * character.c (syms_of_character): Set the default value of
19032 Vprintable_chars to Qnil.
19033
190342008-02-01 Dave Love <fx@gnu.org>
19035
19036 * Makefile.in (lisp, shortlisp): Change indian.elc to indian.el.
19037
190382008-02-01 Kenichi Handa <handa@m17n.org>
19039
19040 * charset.c (load_charset_map): Handle the case that from < to
19041 correctly.
19042
19043 * coding.c (encode_coding_emacs_mule, encode_coding_iso_2022)
19044 (encode_coding_sjis, encode_coding_big5, encode_coding_charset):
19045 Pay attention to raw-8-bit chars.
19046
190472008-02-01 Kenichi Handa <handa@m17n.org>
19048
19049 * Makefile.in (lisp, shortlisp): Change chinese.elc to chinese.el.
19050 It is not bytecompiled now.
19051
19052 * charset.c (charset_jisx0201_roman, charset_jisx0208_1978)
19053 (charset_jisx0208): New variables.
19054 (Fdefine_charset_internal): Setup them if appropriate.
19055 (init_charset_once): Initialize them to -1.
19056
19057 * charset.h (charset_jisx0201_roman, charset_jisx0208_1978)
19058 (charset_jisx0208): Extern them.
19059
19060 * coding.c (CODING_ISO_FLAG_USE_ROMAN): New macro.
19061 (CODING_ISO_FLAG_USE_OLDJIS): New macro.
19062 (CODING_ISO_FLAG_FULL_SUPPORT): Change macro definition.
19063 (setup_iso_safe_charsets): Fix arguments to Fassq.
19064 (DECODE_DESIGNATION, ENCODE_ISO_CHARACTER_DIMENSION1)
19065 (ENCODE_ISO_CHARACTER_DIMENSION2): Pay attention to
19066 CODING_ISO_FLAG_USE_ROMAN and CODING_ISO_FLAG_USE_OLDJIS.
19067 (encode_coding_iso_2022): Change the 1st arg to
19068 ENCODE_ISO_CHARACTER to a variable.
19069
190702008-02-01 Kenichi Handa <handa@m17n.org>
19071
19072 * charset.h (enum define_charset_arg_index): New enums
19073 charset_arg_min_code and charset_arg_max_code.
19074 (struct charset): New member char_index_offset.
19075
19076 * charset.c (CODE_POINT_TO_INDEX, INDEX_TO_CODE_POINT):
19077 Take charset->char_index_offset into account.
19078 (Fdefine_charset_internal): Handle args[charset_arg_min_code] and
19079 args[charset_arg_max_code]. Setup charset.char_index_offset.
19080 (syms_of_charset): Fix args to Fdefine_charset_internal.
19081
190822008-02-01 Dave Love <fx@gnu.org>
19083
19084 * coding.c (decode_coding_utf_8): Reject overlong sequences.
19085
190862008-02-01 Dave Love <fx@gnu.org>
19087
19088 * coding.c: Doc fixes.
19089 (Fcoding_system_aliases): Fix return value.
19090 (Qmac): Remove (duplicated) definition.
19091
190922008-02-01 Dave Love <fx@gnu.org>
19093
362654a6
JB
19094 * charset.c (Fcharset_priority_list, Fset_charset_priority):
19095 New functions.
aac0c6e3
MR
19096
19097 * character.c (Fstring): Doc fix.
19098
19099 * charset.c (Fdefine_charset_alias): Update Vcharset_list.
19100
362654a6 19101 * fontset.c (Ffontset_info): Doc fix. Return charset names, not ids.
aac0c6e3
MR
19102 (font-encoding-alist): Doc fix.
19103
191042008-02-01 Dave Love <fx@gnu.org>
19105
19106 * term.c (costs_set): Declare static, non-initialized for pcc.
19107 (encode_terminal_code): Remove unused var.
19108
19109 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
19110 for K&R.
19111
19112 * xterm.c (xlwmenu_window_p): Fix prototype for K&R.
19113
19114 * coding.c (setup_iso_safe_charsets): Fix arg decl for K&R.
19115 (suffixes): Move out of make_subsidiaries for K&R.
19116
19117 * charset.c (map_charset_chars): Fix c_function declaration for K&R.
19118
19119 * lisp.h (DEFUN) [!PROTOTYPES]: Remove spurious `args'.
19120
191212008-02-01 Dave Love <fx@gnu.org>
19122
19123 * data.c (Fchar_or_string_p): Doc fix. Use CHARACTERP.
19124
19125 * category.c (Fmodify_category_entry): Doc fix. Remove unused vars.
19126
191272008-02-01 Yong Lu <lyongu@asia-infonet.com>
19128
19129 * charset.c (Fdefine_charset_internal): Fix argument to bzero.
19130
19131 * coding.c (decode_coding_charset): Workaround for the bug of GCC 2.96.
19132
191332008-02-01 Kenichi Handa <handa@m17n.org>
19134
19135 * Makefile.in (lisp, shortlisp): Change cyrillic.elc to cyrillic.el,
19136 vietnamese.elc to vietnamese.el. They are not bytecompiled now.
19137
191382008-02-01 Kenichi Handa <handa@m17n.org>
19139
19140 * coding.c (decode_coding_charset): Adjust for the change of
19141 Fdefine_coding_system_internal.
19142 (Fdefine_coding_system_internal): For a coding system of
19143 `charset' type, store a list of charset IDs in
19144 `charset_attr_charset_valids' element of coding attributes.
19145
191462008-02-01 Kenichi Handa <handa@m17n.org>
19147
19148 * coding.c (ONE_MORE_BYTE_NO_CHECK): Increment consumed_chars.
19149 (emacs_mule_char): New arg src. Delete arg `composition'. Change
19150 caller. Handle 2-byte and 3-byte charsets correctly.
19151 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): Rename from
19152 DECODE_EMACS_MULE_COMPOSITION_RULE. Change caller.
19153 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New macro.
19154 (DECODE_EMACS_MULE_21_COMPOSITION): Call
19155 DECODE_EMACS_MULE_COMPOSITION_RULE_21. Produce correct annotation
19156 sequence.
19157 (decode_coding_emacs_mule): Handle composition correctly. Rewind
19158 `src' and `consumed_chars' correctly before calling emacs_mule_char.
19159 (DECODE_COMPOSITION_START): Correctly handle the case of altchar
19160 and alt&rule composition.
19161 (decode_coding_iso_2022): Handle composition correctly.
19162 (init_coding_once): Setup emacs_mule_bytes for private charsets.
19163
19164 * charset.c (Fdefine_charset_internal): Fix bug for the case of
19165 re-defining a charset. If the charset has :emacs-mule-id, setup
19166 emacs_mule_bytes.
19167 (Fmake_char): If CODE1 is nil, use the minimum code of the charset.
19168
191692008-02-01 Kenichi Handa <handa@m17n.org>
19170
19171 * coding.c (encode_coding_iso_2022, encode_coding_sjis)
19172 (encode_coding_big5, encode_coding_charset): If coding requires safe
19173 encoding, produce a character specified by
19174 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
19175
191762008-02-01 Dave Love <fx@gnu.org>
19177
19178 * xterm.c (XSetIMValues): Declare.
19179
19180 * process.c: Conditionally include sys/wait.h, pty.h.
19181
19182 * print.c (print_object): Fix print format for 64-bit systems.
19183
19184 * keyboard.c (modify_event_symbol): Fix print format for 64-bit systems.
19185
19186 * buffer.c (emacs_strerror): Declare.
19187
19188 * fontset.c (Fclear_face_cache): Declare.
19189 (accumulate_font_info): Comment-out (unused).
19190 (face_for_char, Fset_fontset_font, Ffontset_info): Remove unused
19191 variables.
19192
19193 * character.h (string_escape_byte8): Declare.
19194
19195 * charset.c (load_charset_map, load_charset_map_from_file): Remove
19196 unused vars.
19197 (Fdefine_charset_internal, Fsplit_char, syms_of_charset)
19198 (Fmap_charset_chars): Doc fix.
19199
19200 * coding.c (Vchar_coding_system_table, Qchar_coding_system): Remove.
19201 (Fset_coding_system_priority, Fset_coding_system_priority)
19202 (Fdefine_coding_system_internal): Doc fix.
19203
192042008-02-01 Dave Love <fx@gnu.org>
19205
19206 * s/osf5-0.h (C_SWITCH_SYSTEM) [!__GNUC__]: Remove -nointrinsics.
19207
192082008-02-01 Kenichi Handa <handa@m17n.org>
19209
19210 * character.c (string_escape_byte8): Make multibyte string with
19211 correct size.
19212
19213 * charset.c (Fmake_char): Delete unnecessary code.
19214
192152008-02-01 Kenichi Handa <handa@m17n.org>
19216
19217 * xfns.c (x_encode_text): Allocate coding.destination here, and
19218 call encode_coding_object with dst_object Qnil.
19219
19220 * buffer.c (Fset_buffer_multibyte): Convert 8-bit bytes to
19221 multibyte form correctly.
19222
19223 * fontset.c (fs_load_font): Check fontp->full_name (not fontname)
19224 against Vfont_encoding_alist.
19225
19226 * coding.c (Fdecode_sjis_char): Fix typo (0x7F->0xFF). Fix the
19227 handling of charset list.
19228 (encode_coding_iso_2022): Setup coding->safe_charsets in advance.
19229 (decode_coding_object): Move point to coding->dst_pos before
19230 calling post-read-conversion function.
19231 (encode_coding_object): Give correct arguments to
19232 pre-write-conversion. Ignore the return value of
19233 pre-write-conversion function. Pay attention to the case that
19234 pre-write-conversion changes the current buffer. If dst_object is
19235 Qt, even if coding->src_bytes is zero, allocate at least one byte
19236 to coding->destination.
19237
19238 * coding.h (JIS_TO_SJIS): Fix typo (j1->s1, j2->s2).
19239
19240 * charset.c (Fmake_char): Make it more backward compatible.
19241 (Fmap_charset_chars): Fix docstring.
19242
192432008-02-01 Dave Love <fx@gnu.org>
19244
19245 * coding.c: Doc fixes.
19246 (Fdefine_coding_system_alias): Use names, not symbols, in
19247 coding-system-alist.
19248
192492008-02-01 Kenichi Handa <handa@m17n.org>
19250
19251 * fontset.c (free_realized_fontsets): Call Fclear_face_cache instead
19252 of calling free_realized_face.
19253
192542008-02-01 Yong Lu <lyongu@asia-infonet.com>
19255
19256 * charset.c (read_hex): Don't treat SPC as a comment starter.
19257 (decode_char): If CODE_POINT_TO_INDEX returns -1, always return -1.
19258 (Fdecode_char): Fix typo.
19259
192602008-02-01 Kenichi Handa <handa@m17n.org>
19261
19262 * charset.h (struct charset): New member `code_space_mask'.
19263
19264 * coding.c (coding_set_source): Delete the local variable beg_byte.
19265 (encode_coding_charset, Fdefine_coding_system_internal):
19266 Delete the local variable charset.
19267 (Fdefine_coding_system_internal): Setup
19268 attrs[coding_attr_charset_valids] correctly.
19269
19270 * charset.c (CODE_POINT_TO_INDEX): Utilize `code_space_mask'
19271 member to check if CODE is valid or not.
19272 (Fdefine_charset_internal): Initialize `code_space_mask' member.
19273 (encode_char): Before calling CODE_POINT_TO_INDEX, check if CODE
19274 is within the range of charset->min_code and carset->max_code.
19275
192762008-02-01 Dave Love <fx@gnu.org>
19277
19278 * syntax.h (syntax_temp) [!__GNUC__]: Declare.
19279
19280 * dispextern.h (generate_ascii_font): Fix return type.
19281
19282 * xfaces.c (generate_ascii_font): Fix arg declaration.
19283
19284 * coding.c (coding_inherit_eol_type)
19285 (Fset_terminal_coding_system_internal)
19286 (Fset_safe_terminal_coding_system_internal): Fix arg declarations.
19287
192882008-02-01 Kenichi Handa <handa@m17n.org>
19289
19290 * coding.c (decode_coding_charset, encode_coding_charset): Handle
19291 multiple charsets correctly.
19292
192932008-02-01 Kenichi Handa <handa@m17n.org>
19294
19295 * search.c (boyer_moore): Fix handling of multibyte character
19296 translation.
19297
19298 * xdisp.c (display_mode_element): When the variable `elt' is
19299 changed, update `this' and `lisp_string'.
19300
193012008-02-01 Kenichi Handa <handa@m17n.org>
19302
19303 * buffer.c (Fset_buffer_multibyte): Fix 8-bit char handling.
19304
19305 * callproc.c (Fcall_process): Be sure to give the current buffer
19306 to decode_coding_c_string. Update PT and PT_BYTE after the insertion.
19307
19308 * charset.c (struct charset_map_entries): New struct.
19309 (load_charset_map): Rename from parse_charset_map. New args
19310 entries and n_entries. Change caller.
19311 (load_charset_map_from_file): Rename from load_charset_map.
19312 Change caller. New arg control_flag. Call load_charset_map at
19313 the tail.
19314 (load_charset_map_from_vector): New function.
19315 (Fdefine_charset_internal): Setup charset.compact_codes_p.
19316 (encode_char): If the charset is compact, change a character index
19317 to a code point.
19318
19319 * coding.c (coding_alloc_by_making_gap): Check the case that the
19320 source and destination are the same correctly.
19321 (decode_coding_raw_text): Set coding->consumed_char and
19322 coding->consumed to 0.
19323 (produce_chars): If coding->chars_at_source is nonzero, update
19324 coding->consumed_char and coding->consumed before calling
19325 alloc_destination.
19326 (Fdefine_coding_system_alias): Register ALIAS in
19327 Vcoding_system_alist.
19328 (syms_of_coding): Define `no-conversion' coding system at the tail.
19329
19330 * fileio.c (Finsert_file_contents): Set coding_system instead of
19331 val. If the current buffer is multibyte, always call
19332 decode_coding_gap.
19333
19334 * xfaces.c (try_font_list): Give higher priority to fontset's
19335 family than face's family.
19336
193372008-02-01 Kenichi Handa <handa@m17n.org>
19338
19339 * callproc.c (Fcall_process): Be sure to give the current buffer
19340 to decode_coding_c_string.
19341
19342 * xfaces.c (try_font_list): Give a family specified in a fontset
19343 higher priority than a family specified in a face.
19344
193452008-02-01 Kenichi Handa <handa@m17n.org>
19346
19347 * fileio.c (Finsert_file_contents): Fix calculation of `inserted'.
19348 Fix arguments to insert_from_buffer.
19349
19350 * xdisp.c (display_mode_element): Fix calculation of `bytepos'.
19351
193522008-02-01 Kenichi Handa <handa@m17n.org>
19353
19354 * coding.c (produce_chars): Set the variable `multibytep' correctly.
19355 (decode_coding_gap): Set coding->dst_multibyte correctly.
19356
193572008-02-01 Kenichi Handa <handa@m17n.org>
19358
19359 * coding.c (encode_coding_utf_8): Initialize produced_chars to 0.
19360 (decode_coding_utf_16): Fix converting high and low bytes to code-point.
19361 (encode_coding_utf_16): Substitute coding->default_char for
19362 non-Unicode characters.
19363 (decode_coding): Don't call record_insert here.
19364 (setup_coding_system): Initialize `surrogate' of
19365 coding->spec.utf_16 to 0.
19366 (EMIT_ONE_BYTE): Fix for multibyte case.
19367
19368 * insdel.c (insert_from_gap): Call record_insert.
19369
193702008-02-01 Kenichi Handa <handa@m17n.org>
19371
19372 * casefiddle.c (casify_region): Fix multibyte case.
19373
19374 * character.c (c_string_width): Add return type `int'.
19375 (char_string_with_unification): Delete arg ADVANCED.
19376
19377 * character.h (CHAR_VALID_P): Don't call CHARACTERP.
19378 (CHAR_STRING): Adjust for the change of char_string_with_unification.
19379 (CHAR_STRING_ADVANCE): Make it do-while statement.
19380
19381 * chartab.c (sub_char_table_set_range): Optimize for the case
19382 DEPTH == 3. Add workaround code for a GCC optimization bug.
19383
19384 * charset.c (parse_charset_map): Remove an unused variable.
19385
19386 * coding.c: Delete unused variables.
19387
19388 * fileio.c (Finsert_file_contents): Set coding_system to Qnil
19389 earlier. If inserted is zero and the coding system doesn't
19390 require flushing, don't call decode_coding_gap.
19391
19392 * syntax.h (SET_RAW_SYNTAX_ENTRY): Don't call make_number.
19393
193942008-02-01 Kenichi Handa <handa@m17n.org>
19395
19396 The following changes are for using Unicode as an internal
19397 character model, and use UTF-8 format for buffer/string
19398 representation.
19399
19400 * .gdbinit (xchartable): Adjust for the change of char table structure.
19401 (xsubchartable, xcoding, xcharset, xcurbuf): New commands.
19402
19403 * Makefile.in (obj): Add character.o and chartab.o.
19404 (lisp, shortlisp): Remove utf-8.elc.
19405 (*.o): For many files, change dependency on charset.h to
19406 character.h, and add dependency on character.h.
19407 (character.o, chartab.o): New targets.
19408
19409 * abbrev.c, bytecode.c, casefiddle.c, cmds.c, dispnew.c, doc.c:
19410 * doprnt.c, dosfns.c, frame.c, marker.c, minibuf.c, msdos.c:
19411 * w16select.c, w32bdf.c, w32console.c: Include "character.h" instead
19412 of "charset.h".
19413
19414 * dired.c, filelock.c: Include "character.h".
19415
19416 * alloc.c: Include "character.h" instead of "charset.h".
19417 (Fmake_char_table, make_sub_char_table): Move to chartab.c.
19418 (syms_of_alloc): Remove defsubr for Smake_char_table.
19419
19420 * buffer.c: Include "character.h" instead of "charset.h", don't
19421 include "coding.h".
19422 (Fset_buffer_multibyte): Adjust for UTF-8.
19423
19424 * buffer.h: EXFUN Fbuffer_live_p.
19425
19426 * callproc.c: Include "character.h" instead of "charset.h".
19427 (Fcall_process): Big change for the new code-conversion APIs.
19428
19429 * casetab.c: Include "character.h" instead of "charset.h".
19430 (set_canon, set_identity, shuffle): Adjust for the new
19431 map_char_table spec.
19432 (init_casetab_once): Call CHAR_TABLE_SET instead of directly
19433 accessing the char table structure.
19434
19435 * chartab.c: New file that implements char table.
19436
19437 * category.c: Include "character.h".
19438 (copy_category_entry): New function.
19439 (copy_category_table): Call map_char_table and copy_category_entry.
19440 (Fmake_category_table): Initialize all top-level slots.
19441 (char_category_set): New function.
19442 (modify_lower_category_set): Delete.
19443 (Fmodify_category_entry): Call char_table_ref_and_range.
19444
19445 * category.h (CATEGORY_SET): Just call char_category_set.
19446
19447 * ccl.c: Include "character.h".
19448 (Qccl, Qcclp): New variables.
19449 (CCL_WRITE_CHAR): Alway treat the arg CH as a character even if
19450 it's less than 256.
19451 (CCL_WRITE_MULTIBYTE_CHAR): Delete.
19452 (CCL_WRITE_STRING, CCL_READ_CHAR): Adjust for the change of SRC
19453 and DST type.
19454 (ccl_driver): Change types of argument, adjust code accordingly.
19455 (Fccl_execute, Fccl_execute_on_string): Adjust for the change of
19456 ccl_driver.
19457 (syms_of_ccl): Intern and staticpro Qccl and Qcclp.
19458
19459 * ccl.h (struct ccl_program): Delete members eol_type and multibyte.
19460 New members src_multibyte, dst_multibyte, consumed, and produced.
19461 (struct ccl_spec): Delete members decoder and encoder. New member ccl.
19462 (CODING_SPEC_CCL_PROGRAM): New macro.
19463 (ccl_driver): Update prototype.
19464 (Qccl, Qcclp, Fccl_program_p): Extern them.
19465 (CHECK_CCL_PROGRAM): New macro.
19466
19467 * character.c, character.h, chartab.c: New files.
19468
19469 * charset.c: Mostly re-written. Move character and multibyte sequence
19470 handling codes to character.c.
19471
19472 * charset.h: Mostly re-written. Move character and multibyte sequence
19473 handling codes to character.h.
19474
19475 * coding.c, coding.h: Mostly re-written.
19476
19477 * composite.c: Include "character.h" instead of "charset.h".
19478 (CHAR_WIDTH): Move to character.h.
19479 (HASH_KEY, HASH_VALUE): Delete.
19480
19481 * composite.h (enum composition_method): Change order of enumeration
19482 symbols.
19483
19484 * data.c: Include "character.h" instead of "charset.h".
19485 (Faref): Call CHAR_TABLE_REF for a char table.
19486 (Faset): Call CHAR_TABLE_SET for a char table.
19487
19488 * dispextern.h (free_realized_face, check_face_attribytes)
19489 (generate_ascii_font): Extern them.
19490 (free_realized_multibyte_face): Delete extern.
19491
19492 * disptab.h (DISP_CHAR_VECTOR): Adjust for the change of char
19493 table structure.
19494
19495 * editfns.c: Include "character.h" instead of "charset.h".
19496 (Fchar_to_string): Always call CHAR_STRING.
19497
19498 * emacs.c (main): Call init_charset_once, init_charset,
19499 syms_of_chartab, and syms_of_character.
19500
19501 * fileio.c: Include "character.h" instead of "charset.h".
19502 (Finsert_file_contents): Big change for the new code-conversion API.
19503 (choose_write_coding_system, Fwrite_region): Likewise.
19504 (build_annotations_2): Delete.
19505 (e_write): Big change for the new code-conversion API.
19506
19507 * fns.c: Include "character.h" instead of "charset.h".
19508 (copy_sub_char_table): Move to chartab.c.
19509 (Fcopy_sequence): Call copy_char_table for a char table.
19510 (concat): Delete codes calling count_multibyte.
19511 (string_char_to_byte, string_byte_to_char): Adjust for the new
19512 multibyte form.
19513 (internal_equal): Adjust for the change of char table structure.
19514 (Fchar_table_subtype, Fchar_table_parent, Fset_char_table_parent)
19515 (Fchar_table_extra_slot, Fset_char_table_extra_slot)
19516 (Fchar_table_range, Fset_char_table_range, Fset_char_table_default)
19517 (char_table_translate, optimize_sub_char_table)
19518 (Foptimize_char_table, map_char_table, Fmap_char_table): Move to
19519 chartab.c.
19520 (char_table_ref_and_index): Delete.
19521 (HASH_KEY, HASH_VALUE): Move to lisp.h.
19522 (Fmd5): Call preferred_coding_system instead of accessing
19523 Vcoding_category_list. Adjust for the new code-conversion API.
19524 (syms_of_fns): Move defsubr for char table related functions to
19525 chartab.c.
19526
19527 * fontset.c: Mostly re-written.
19528
19529 * fontset.h (struct font_info): Change type of the member encoding_type.
19530 (enum FONT_SPEC_INDEX): New enum.
19531 (fontset_font_pattern, fs_load_font): Update prototype.
19532 (FS_LOAD_FONT): Adjust for the change of fs_load_font.
19533
19534 * indent.c: Include "character.h" instead of "charset.h".
19535 (MULTIBYTE_BYTES_WIDTH): Call CHAR_WIDTH instead of WIDTH_BY_CHAR_HEAD.
19536
19537 * insdel.c: Include "character.h" instead of "charset.h".
19538 (copy_text): Don't refer to Vnonascii_translation_table.
19539 (insert_from_gap): New function.
19540
19541 * keyboard.c: Include "character.h" instead of "charset.h".
19542 (command_loop_1): Never call direct_output_forward_char before
19543 a non-ASCII character.
19544 (read_char): If Vkeyboard_translate_table is a char table, always
19545 translate a character.
19546
19547 * keymap.c: Include "character.h".
19548 (store_in_keymap): Handle the case that IDX is a cons.
19549 (Fdefine_key): Handle the case that KEY is a cons and the car part
19550 is also a cons (range).
19551 (push_key_description): Adjust for the new character code.
19552 (describe_vector): Call describe_char_table for a char table.
19553 (describe_char_table): New function.
19554
19555 * keymap.h (describe_char_table): Extern it.
19556
19557 * lisp.h (enum pvec_type): New member PVEC_SUB_CHAR_TABLE.
19558 (XSUB_CHAR_TABLE, XSETSUB_CHAR_TABLE): New macros.
19559 (CHAR_TABLE_ORDINARY_SLOTS, CHAR_TABLE_SINGLE_BYTE_SLOTS)
19560 (SUB_CHAR_TABLE_ORDINARY_SLOTS, SUB_CHAR_TABLE_STANDARD_SLOTS):
19561 Delete.
19562 (CHAR_TABLE_REF, CHAR_TABLE_SET): Adjust for the new char table
19563 structure.
19564 (CHAR_TABLE_TRANSLATE): Just call char_table_translate.
19565 (CHARTAB_SIZE_BITS_0, CHARTAB_SIZE_BITS_1, CHARTAB_SIZE_BITS_2)
19566 (CHARTAB_SIZE_BITS_3): New macros.
19567 (chartab_size): Extern it.
19568 (struct Lisp_Char_Table): Re-design.
19569 (struct Lisp_Sub_Char_Table): New structure.
19570 (HASH_KEY, HASH_VALUE): Move from fns.c.
19571 (CHARACTERBITS): Define as 22.
19572 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Adjust for the above change.
19573 (SUB_CHAR_TABLE_P): Check PVEC_CHAR_TABLE.
19574 (GC_SUB_CHAR_TABLE_P): New macro.
19575 (Fencode_coding_string, Fdecode_coding_string): Update EXFUN.
19576 (code_convert_string_norecord): Deleted extern.
19577 (init_character_once, syms_of_character, init_charset)
19578 (syms_of_composite, Qeq, Fmakehash, insert_from_gap): Extern them.
19579
19580 * lread.c: Include "character.h".
19581 (read_multibyte): New arg NBYTES.
19582 (read_escape): Change the meaning of returned *BYTEREP.
19583 (to_multibyte): Delete.
19584 (read1): Adjust the handling of char table and string.
19585
19586 * print.c: Include "character.h" instead of "charset.h".
19587 (print_string): Convert 8-bit raw bytes to octal form by
19588 string_escape_byte8.
19589 (print_object): Adjust for the new multibyte form. Print 8-bit
19590 raw bytes always in octal form. Handle sub char table correctly.
19591
19592 * process.c: Include "character.h" instead of "charset.h".
19593 (read_process_output, send_process): Adjust for the new
19594 code-conversion API.
19595
19596 * puresize.h (BASE_PURESIZE): Increase.
19597
19598 * regex.c: Include "character.h" instead of "charset.h".
19599 (BYTE8_TO_CHAR, CHAR_BYTE8_P) [not emacs]: New dummy macros.
19600 (regex_compile): Accept a range whose starting and ending
19601 character have different leading bytes.
19602 (analyse_first): Adjust for the above change.
19603
19604 * search.c: Include "character.h" instead of "charset.h".
19605 (search_buffer, boyer_moore): Adjust for the new multibyte form.
19606 (Freplace_match): Adjust for the change of multibyte_char_to_unibyte.
19607
19608 * syntax.c: Include "character.h" instead of "charset.h".
19609 (syntax_parent_lookup): Delete.
19610 (Fmodify_syntax_entry): Accept a cons as CHAR.
19611 (skip_chars): Adjust for the new multibyte form.
19612 (init_syntax_once): Call char_table_set_range instead of directly
19613 accessing the structure of a char table.
19614
19615 * syntax.h (SET_RAW_SYNTAX_ENTRY): Call CHAR_TABLE_SET.
19616 (SYNTAX_ENTRY_FOLLOW_PARENT): Delete macro.
19617 (SET_RAW_SYNTAX_ENTRY_RANGE): New macro.
19618 (SYNTAX_ENTRY_INT): Call CHAR_TABLE_REF.
19619
19620 * term.c: Include "buffer.h" and "character.h".
19621 (encode_terminal_code, write_glyphs): Adjust for the new
19622 code-conversion API.
19623 (produce_glyphs): Call CHAR_WIDTH instead of CHARSET_WIDTH.
19624
19625 * w32term.c (x_new_font): Adjust for the change of FS_LOAD_FONT.
19626
19627 * xdisp.c: Include "character.h".
19628 (get_next_display_element): Adjust for the new multibyte form.
19629 (disp_char_vector): Adjust for the new char table structure.
19630 (decode_mode_spec_coding): Adjust for the new structure of
19631 coding system.
19632 (decode_mode_spec): Adjust for the new code-conversion API.
19633
19634 * xfaces.c: Include "character.h" instead of "charset.h".
19635 (load_face_font): Adjust for the change of choose_face_font and
19636 FS_LOAD_FONT.
19637 (generate_ascii_font): New function.
19638 (set_lface_from_font_name): Adjust for the change of FS_LOAD_FONT.
19639 (set_font_frame_param): Adjust for the change of choose_face_font.
19640 (free_realized_face): Make it public.
19641 (free_realized_faces_for_fontset): Rename from
19642 free_realized_multibyte_face. Free also faces realized for ASCII.
19643 (choose_face_font): Change arguments. Adjust for the change of
19644 fontset_font_pattern and FS_LOAD_FONT.
19645
19646 * xfns.c: Include "character.h".
19647 (x_encode_text): Adjust for the new code-conversion API.
19648
19649 * xselect.c: Don't include "charset.h".
19650 (selection_data_to_lisp_data): Adjust for the new code conversion API.
19651
19652 * xterm.c: Include "character.h".
19653 (x_encode_char): New argument CHARSET. Change caller.
19654 (x_get_char_face_and_encoding, x_get_glyph_face_and_encoding):
19655 Call ENCODE_CHAR instead of SPLIT_CHAR.
19656 (x_produce_glyphs): Don't check Vnonascii_translation_table Call
19657 CHAR_WIDTH instead of CHARSET_WIDTH.
19658 (XTread_socket): Adjust for the new code-conversion API.
19659 (x_new_font): Adjust for the change of FS_LOAD_FONT.
19660 (x_load_font): Adjust for the change of struct font.
19661
196622008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
19663
19664 * xfaces.c (face_at_buffer_position): Remove unused vars.
19665
196662008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
19667
19668 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR):
19669 Fix overflow checking.
19670
196712008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
19672
19673 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR, ccl_driver):
19674 Cancel previous change.
19675
196762008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
19677
19678 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when
19679 ccl->eight_bit_control. Fix check for buffer overflow.
19680 (CCL_WRITE_MULTIBYTE_CHAR): Fix check for buffer overflow.
19681 (ccl_driver): Initialize extra_bytes to 0.
19682
196832008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
19684
19685 * keyboard.c (make_ctrl_char): If C is a multibyte character, just
19686 return it ORed with ctrl_modifier.
19687
196882008-01-29 Miles Bader <miles@gnu.org>
19689
19690 * macterm.c (XTset_vertical_scroll_bar): Fix merge mistake.
19691
196922008-01-28 Jason Rumney <jasonr@gnu.org>
19693
19694 * w32.c (stat): Don't double check for networked drive.
19695
196962008-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
19697
19698 * window.c (run_window_configuration_change_hook): New function.
19699 Code extracted from set_window_buffer. Set the selected frame.
19700 (set_window_buffer): Use it.
19701 * window.h (run_window_configuration_change_hook): Declare.
19702 * dispnew.c (change_frame_size_1): Use it instead of set-window-buffer.
19703
19704 * keyboard.c (read_char): Yet another int/Lisp_Object mixup (YAILOM).
19705
197062008-01-27 Dan Nicolaescu <dann@ics.uci.edu>
19707
19708 * Makefile.in: Remove references to unused macros.
19709
197102008-01-26 Eli Zaretskii <eliz@gnu.org>
19711
19712 * w32.c (g_b_init_get_sid_sub_authority)
19713 (g_b_init_get_sid_sub_authority_count): New static variables.
19714 (GetSidSubAuthority_Proc, GetSidSubAuthorityCount_Proc): New typedefs.
19715 (get_sid_sub_authority, get_sid_sub_authority_count): New functions.
19716 (init_user_info): Use them to retrieve uid and gid.
19717 Use 500/513, the Windows defaults, as Administrator's uid/gid.
19718 (fstat): Use pw_uid and pw_gid from the_passwd structure for
19719 st_uid and st_gid of the file.
19720
197212008-01-26 Jason Rumney <jasonr@gnu.org>
19722
19723 * w32.c (logon_network_drive): New function.
19724 (stat): Use it.
19725
197262008-01-26 Chong Yidong <cyd@stupidchicken.com>
19727
19728 * xdisp.c (pos_visible_p): Handle the case where charpos falls on
19729 invisible text covered with an ellipsis.
19730
197312008-01-25 Richard Stallman <rms@gnu.org>
19732
19733 * xdisp.c (redisplay_window): Run Qwindow_text_change_functions and
19734 jump back to beginning. Move some other initializations after that.
19735 (Qwindow_text_change_functions, Vwindow_text_change_functions):
19736 New variables.
19737 (syms_of_xdisp): Init them.
19738
19739 * keyboard.c (read_char): Restore echo_message_buffer after redisplay.
19740
19741 * buffer.c (reset_buffer_local_variables):
19742 Implement `permanent-local-hook'.
19743 (Qpermanent_local_hook): New variable.
19744 (syms_of_buffer): Init and staticpro it.
19745
197462008-01-25 Michael Albinus <michael.albinus@gmx.de>
19747
19748 * dbusbind.c (xd_retrieve_arg): Pacify GCC on x86_64 GNU/Linux.
19749
197502008-01-25 Thien-Thi Nguyen <ttn@gnuvola.org>
19751
19752 * fns.c (Fclrhash): Return TABLE.
19753
197542008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19755
19756 * macterm.c (x_scroll_bar_create): Initialize bar->redraw_needed_p.
19757 (XTset_vertical_scroll_bar): Redraw scroll bar if bar->redraw_needed_p
19758 is set even without positional changes.
19759 (x_scroll_bar_clear): Set bar->redraw_needed_p.
19760
19761 * macterm.h (struct scroll_bar): New member `redraw_needed_p'.
19762
197632008-01-23 Jason Rumney <jasonr@gnu.org>
19764
19765 * xterm.c (handle_one_xevent): Revert to counting chars not bytes.
19766
19767 * w32term.c (w32_read_socket) <WM_CHAR>: Decode characters outside
19768 the unicode range available in MULE by locale-coding-system.
19769 Improve dbcs lead byte detection. Set event timestamp and modifiers
19770 earlier.
19771
197722008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19773
19774 * mac.c (mac_emacs_pid) [MAC_OSX]: New variable.
19775 [MAC_OSX] (init_mac_osx_environment): Initialize it.
19776 [MAC_OSX] (mac_try_close_socket) [SELECT_USE_CFSOCKET]: Return 0
19777 when used on child processes.
19778
197792008-01-21 Michael Albinus <michael.albinus@gmx.de>
19780
19781 * dbusbind.c (Fdbus_method_return_internal): Rename from
19782 Fdbus_method_return.
19783 (Fdbus_unregister_object): Move to dbus.el.
19784 (Fdbus_call_method, Fdbus_method_return_internal)
19785 (Fdbus_send_signal): Improve debug messages.
19786
197872008-01-20 Martin Rudalics <rudalics@gmx.at>
19788
19789 * undo.c (undo_inhibit_record_point): New variable.
19790 (syms_of_undo): Initialize it.
19791 (record_point): Don't record point when undo_inhibit_record_point
19792 is set.
19793
197942008-01-19 Stefan Monnier <monnier@iro.umontreal.ca>
19795
19796 * process.c (list_processes_1): Don't use SCHARS on a nil buffer name.
19797
19798 * xdisp.c (Qauto_hscroll_mode): New var.
19799 (syms_of_xdisp): Initialize it.
19800 (hscroll_window_tree): Use it to lookup `auto-hscroll-mode' in each
19801 window's buffer.
19802 (hscroll_windows): Don't check automatic_hscrolling_p here.
19803
19804 * window.c (set_window_buffer): Don't unnecessarily reset hscroll and
19805 vscroll if we're setting window-buffer to the value it already has.
19806
198072008-01-18 Dan Nicolaescu <dann@ics.uci.edu>
19808
19809 * m/intel386.h: Remove references to XENIX.
19810
198112008-01-17 Andreas Schwab <schwab@suse.de>
19812
19813 * m/amdx86-64.h (START_FILES, LIB_STANDARD): Use HAVE_LIB64_DIR
19814 instead of HAVE_X86_64_LIB64_DIR.
19815 * m/ibms390x.h (START_FILES, LIB_STANDARD): Likewise.
19816
198172008-01-17 Glenn Morris <rgm@gnu.org>
19818
19819 * m/ibms390x.h (START_FILES, LIB_STANDARD): Adjust value according
19820 to HAVE_X86_64_LIB64_DIR.
19821
198222008-01-16 Dan Nicolaescu <dann@ics.uci.edu>
19823
19824 * s/irix3-3.h:
19825 * s/irix4-0.h:
19826 * s/386-ix.h:
19827 * s/domain.h:
19828 * s/hpux9-x11r4.h:
19829 * s/hpux9shxr4.h: Remove files for systems no longer supported.
19830
19831 * sysdep.c: Remove code containing references to symbols defined
19832 by unsupported systems.
19833
198342008-01-16 Glenn Morris <rgm@gnu.org>
19835
19836 * coding.c (select-safe-coding-system-function): Doc fix.
19837
198382008-01-15 Glenn Morris <rgm@gnu.org>
19839
19840 * config.in: Revert 2008-01-13 change: this is a generated file.
19841
198422008-01-13 Tom Tromey <tromey@redhat.com>
19843
19844 * lisp.h: Fix typo.
19845
198462008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
19847
19848 * m/sequent-ptx.h:
19849 * m/sequent.h:
19850 * s/ptx.h:
19851 * s/ptx4-2.h:
19852 * s/ptx4.h: Remove files for systems no longer supported.
19853
19854 * callproc.c (Fcall_process): Fix previous change.
19855
198562008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
19857
19858 * unexsunos4.c: Remove file, system not supported anymore.
19859
19860 * m/mips.h:
19861 * m/intel386.h:
19862 * callproc.c:
19863 * config.in:
19864 * ecrt0.c:
19865 * emacs.c:
19866 * fileio.c:
19867 * frame.c:
19868 * getpagesize.h:
19869 * keyboard.c:
19870 * lread.c:
19871 * process.c:
19872 * puresize.h:
19873 * sysdep.c:
19874 * systty.h:
19875 * syswait.h:
19876 * unexec.c:
19877 * xdisp.c:
19878 * alloc.c: Remove code containing references to symbols defined by
19879 unsupported systems.
19880
198812008-01-11 Kenichi Handa <handa@ni.aist.go.jp>
19882
19883 * coding.c (detect_coding_mask): Fix previous change.
19884
198852008-01-09 Kenichi Handa <handa@ni.aist.go.jp>
19886
19887 * coding.c (detect_coding_iso2022): New arg
19888 latin_extra_code_state. Allow Latin extra codes only
19889 when *latin_extra_code_state is nonzero.
19890 (detect_coding_mask): If there is a NULL byte, detect the encoding
19891 as UTF-16 or binary. If Latin extra codes exist, detect the
19892 encoding as ISO-2022 only when there's no other proper encoding is
19893 found.
19894
198952008-01-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19896
19897 * frame.c (Fmake_terminal_frame): Use #ifdef MAC_OS8 instead of
19898 #ifdef MAC_OS.
19899
199002008-01-08 Richard Stallman <rms@gnu.org>
19901
19902 * fileio.c (Ffile_name_directory, Fexpand_file_name): Doc fixes.
19903
199042008-01-06 Nick Roberts <nickrob@snap.net.nz>
19905
19906 * keyboard.c (parse_menu_item): Don't enclose key bindings on
19907 menu bar in parentheses.
19908
199092008-01-06 Dan Nicolaescu <dann@ics.uci.edu>
19910
19911 * m/7300.h:
19912 * m/acorn.h:
19913 * m/alliant-2800.h:
19914 * m/alliant.h:
19915 * m/alliant1.h:
19916 * m/alliant4.h:
19917 * m/altos.h:
19918 * m/amdahl.h:
19919 * m/apollo.h:
19920 * m/att3b.h:
19921 * m/aviion-intel.h:
19922 * m/aviion.h:
19923 * m/celerity.h:
19924 * m/clipper.h:
19925 * m/cnvrgnt.h:
19926 * m/convex.h:
19927 * m/cydra5.h:
19928 * m/delta88k.h:
19929 * m/dpx2.h:
19930 * m/dual.h:
19931 * m/elxsi.h:
19932 * m/f301.h:
19933 * m/gould-np1.h:
19934 * m/gould.h:
19935 * m/i860.h:
19936 * m/ibmps2-aix.h:
19937 * m/ibmrt-aix.h:
19938 * m/ibmrt.h:
19939 * m/irist.h:
19940 * m/is386.h:
19941 * m/isi-ov.h:
19942 * m/mega68.h:
19943 * m/mg1.h:
19944 * m/news-r6.h:
19945 * m/news-risc.h:
19946 * m/news.h:
19947 * m/nh3000.h:
19948 * m/nh4000.h:
19949 * m/ns16000.h:
19950 * m/ns32000.h:
19951 * m/nu.h:
19952 * m/orion.h:
19953 * m/orion105.h:
19954 * m/paragon.h:
19955 * m/pfa50.h:
19956 * m/plexus.h:
19957 * m/pyramid.h:
19958 * m/pyrmips.h:
19959 * m/sh3el.h:
19960 * m/sps7.h:
19961 * m/sr2k.h:
19962 * m/stride.h:
19963 * m/sun1.h:
19964 * m/sun2.h:
19965 * m/sun3-68881.h:
19966 * m/sun3-fpa.h:
19967 * m/sun3-soft.h:
19968 * m/sun3.h:
19969 * m/sun386.h:
19970 * m/symmetry.h:
19971 * m/tad68k.h:
19972 * m/tahoe.h:
19973 * m/targon31.h:
19974 * m/tek4300.h:
19975 * m/tekxd88.h:
19976 * m/tower32.h:
19977 * m/tower32v3.h:
19978 * m/ustation.h:
19979 * m/wicat.h:
19980 * m/xps100.h:
19981 * s/cxux.h:
19982 * s/cxux7.h:
19983 * s/dgux.h:
19984 * s/dgux4.h:
19985 * s/dgux5-4-3.h:
19986 * s/dgux5-4r2.h:
19987 * s/esix.h:
19988 * s/esix5r4.h:
19989 * s/hiuxmpp.h:
19990 * s/hiuxwe2.h:
19991 * s/iris3-5.h:
19992 * s/iris3-6.h:
19993 * s/isc2-2.h:
19994 * s/isc3-0.h:
19995 * s/isc4-0.h:
19996 * s/isc4-1.h:
19997 * s/newsos5.h:
19998 * s/newsos6.h:
19999 * s/osf1.h:
20000 * s/osf5-0.h:
20001 * s/riscix1-1.h:
20002 * s/riscix12.h:
20003 * s/sco4.h:
20004 * s/sco5.h:
20005 * s/sunos4-0.h:
20006 * s/sunos4-1.h:
20007 * s/sunos413.h:
20008 * s/sunos4shr.h:
20009 * s/umax.h:
20010 * s/unipl5-2.h:
20011 * s/xenix.h:
20012 * cxux-crt0.s:
20013 * unexapollo.c:
20014 * unexconvex.c:
20015 * unexenix.c:
20016 * unexsni.c: Remove files for systems no longer supported.
20017
20018 * m/intel386.h: Remove references to unsupported systems.
20019
20020 * w32.c (get_emacs_configuration): Remove reference to i860.
20021
20022 * sysdep.c: Remove dead code.
20023
200242008-01-05 Dan Nicolaescu <dann@ics.uci.edu>
20025
20026 * s/rtu.h:
20027 * m/masscomp.h: Remove files. Platform is obsolete.
20028
200292008-01-04 Michael Albinus <michael.albinus@gmx.de>
20030
20031 * dbusbind.c (Fdbus_method_return): New function.
20032 (xd_read_message): Add the serial number to the event.
20033 (Fdbus_register_method): Activate the function.
20034
200352008-01-03 Stefan Monnier <monnier@iro.umontreal.ca>
20036
20037 * keyboard.c (read_key_sequence): Fix typo.
20038
200392008-01-03 Michael Albinus <michael.albinus@gmx.de>
20040
20041 * dbusbind.c (all): Replace XCAR by CAR_SAFE and XCDR by CDR_SAFE.
20042 (xd_signature, xd_append_arg): Handle element type detection for
20043 empty arrays.
20044 (Fdbus_call_method, Fdbus_send_signal): Undo type casting for
20045 SDATA () calls; this must be solved more general.
20046 (Fdbus_register_signal): Use SBYTES instead of strlen.
20047
200482008-01-03 Magnus Henoch <magnus@zemdatav>
20049
20050 * dbusbind.c (xd_append_arg): Use unsigned char instead of
20051 unsigned int for byte values (necessary for big-endian platform).
20052 (Fdbus_call_method): Handle the case of no returned arguments.
20053
200542007-12-31 Tom Tromey <tromey@redhat.com> (tiny change)
20055
20056 * dbusbind.c (xd_read_message): Use non-static input_event struct.
20057
200582007-12-31 Magnus Henoch <mange@freemail.hu>
20059
20060 * dbusbind.c (xd_signature): Signature of variant is just "v".
20061
200622007-12-30 Michael Albinus <michael.albinus@gmx.de>
20063
20064 * dbusbind.c: Fix several errors and compiler warnings.
20065 Reported by Tom Tromey <tromey@redhat.com>.
20066 (XD_ERROR, XD_DEBUG_MESSAGE)
20067 (XD_DEBUG_VALID_LISP_OBJECT_P): Wrap code with "do ... while (0)".
20068 (xd_append_arg): Part for basic D-Bus types rewritten.
20069 (xd_retrieve_arg): Split implementation of DBUS_TYPE_BYTE and
20070 DBUS_TYPE_(U)INT16. Don't call XD_DEBUG_MESSAGE with "%f" if not
20071 appropriate.
20072 (xd_read_message): Return Qnil. Don't signal an error; it is not
20073 useful during event reading.
20074 (Fdbus_register_signal): Signal an error if the check for
20075 FUNCTIONP fails.
20076 (Fdbus_register_method): New function. The implementation is not
20077 complete, the call of the function signals an error therefore.
20078 (Fdbus_unregister_object): New function, renamed from
20079 Fdbus_unregister_signal. The initial check signals an error, if
20080 the object is not well formed.
20081
200822007-12-30 Richard Stallman <rms@gnu.org>
20083
20084 * textprop.c (get_char_property_and_overlay):
20085 Signal error if POSITION is out of range in a buffer.
20086
200872007-12-29 Martin Rudalics <rudalics@gmx.at>
20088
20089 * w32fns.c (Fx_create_frame): Make copy of frame parameters
20090 because the original parameters are in pure storage now.
20091
200922007-12-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20093
20094 * xdisp.c (phys_cursor_in_rect_p): Check if cursor is in fringe area.
20095
200962007-12-22 Eli Zaretskii <eliz@gnu.org>
20097
20098 * callint.c (syms_of_callint) <command-history>: Add reference to
20099 history-length in the doc string.
20100
201012007-12-17 Jason Rumney <jasonr@gnu.org>
20102
20103 * w32fns.c (w32_wnd_proc) <WM_KEYDOWN>: Cast char to unsigned
20104 before passing as wParam.
20105
201062007-12-22 Michael Albinus <michael.albinus@gmx.de>
20107
20108 * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_BYTE,
20109 DBUS_TYPE_INT16, DBUS_TYPE_UINT16, DBUS_TYPE_INT64,
20110 DBUS_TYPE_UINT64, DBUS_TYPE_DOUBLE and DBUS_TYPE_SIGNATURE.
20111 Return float when DBUS_TYPE_INT32 or DBUS_TYPE_UINT32 do not fit
20112 as number.
20113 (Fdbus_call_method): Fix docstring.
20114
201152007-12-21 Michael Albinus <michael.albinus@gmx.de>
20116
20117 * dbusbind.c (XD_BASIC_DBUS_TYPE, XD_DBUS_TYPE_P, XD_NEXT_VALUE):
20118 New macros.
20119 (XD_SYMBOL_TO_DBUS_TYPE): Rename from XD_LISP_SYMBOL_TO_DBUS_TYPE.
20120 (XD_OBJECT_TO_DBUS_TYPE): Rename from XD_LISP_OBJECT_TO_DBUS_TYPE.
20121 Simplify.
20122 (xd_signature): New function.
20123 (xd_append_arg): Compute also signatures. Major rewrite.
20124 (xd_retrieve_arg): Make debug messages friendly.
20125 (Fdbus_call_method, Fdbus_send_signal): Extend docstring.
20126 Check for signatures of arguments.
20127
201282007-12-19 Michael Albinus <michael.albinus@gmx.de>
20129
20130 * dbusbind.c (QCdbus_type_byte, QCdbus_type_boolean)
20131 (QCdbus_type_int16, QCdbus_type_uint16, QCdbus_type_int32)
20132 (QCdbus_type_uint32, QCdbus_type_int64, QCdbus_type_uint64)
20133 (QCdbus_type_double, QCdbus_type_string, QCdbus_type_object_path)
20134 (QCdbus_type_signature, QCdbus_type_array, QCdbus_type_variant)
20135 (QCdbus_type_struct, QCdbus_type_dict_entry): New D-Bus type symbols.
20136 (XD_LISP_SYMBOL_TO_DBUS_TYPE): New macro.
20137 (XD_LISP_OBJECT_TO_DBUS_TYPE): Add compound types.
20138 (xd_retrieve_value): Remove. Functionality included in ...
20139 (xd_append_arg): New function.
20140 (Fdbus_call_method, Fdbus_send_signal): Apply it.
20141
201422007-12-16 Michael Albinus <michael.albinus@gmx.de>
20143
20144 * dbusbind.c (top): Include <stdio.h>.
20145 (Fdbus_call_method, Fdbus_send_signal): Apply type cast in
20146 dbus_message_new_method_call and dbus_message_new_signal.
20147 (Fdbus_register_signal): Rename unique_name to uname.
20148 Check handler for FUNCTIONP instead of CHECK_SYMBOL. Handle case of
20149 non-existing unique name. Fix typos in matching rule. Return an
20150 object which is useful in Fdbus_unregister_signal.
20151 (Fdbus_unregister_signal): Reimplementation, in order to remove
20152 only the corresponding entry.
20153 (Vdbus_registered_functions_table): Change the order of entries.
20154 Apply these changes in xd_read_message and Fdbus_register_signal.
20155
201562007-12-16 Andreas Schwab <schwab@suse.de>
20157
20158 * fileio.c (Finsert_file_contents): Fix overflow check to not
20159 depend on undefined integer overflow.
20160
201612007-12-14 Jason Rumney <jasonr@gnu.org>
20162
20163 * w32term.c (w32_read_socket): Use MULTIBYTE_CHAR_KEYSTROKE_EVENT
20164 for characters above 127.
20165
201662007-12-13 Jason Rumney <jasonr@gnu.org>
20167
20168 * w32fns.c (w32_wnd_proc, Fw32_reconstruct_hot_key): Range check
20169 before dereferencing array.
20170 (lookup_vk_code): Remove zero comparison.
20171
201722007-12-14 Michael Albinus <michael.albinus@gmx.de>
20173
20174 * dbusbind.c (xd_retrieve_value, xd_retrieve_arg)
20175 (Fdbus_call_method, Fdbus_send_signal, xd_read_message):
20176 Use `unsigned int' instead of `uint'.
20177 (xd_read_message, Fdbus_register_signal): Split expressions into
20178 multiple lines before operators "&&" and "||", according to the
20179 GNU Coding Standards.
20180
201812007-12-14 Eli Zaretskii <eliz@gnu.org>
20182
20183 * dispextern.h (WINDOWS_NT): Fix incorrect spelling of WINDOWSNT.
20184
201852007-12-12 Juri Linkov <juri@jurta.org>
20186
20187 * buffer.c (Frename_buffer): In interactive spec replace
20188 `read-buffer' with `read-string' that uses `buffer-name-history'
20189 as history, and the current buffer's name as default.
20190
201912007-12-10 Stefan Monnier <monnier@iro.umontreal.ca>
20192
20193 * keyboard.c (Fcommand_execute): Call Qcall_interactively instead of
20194 manipulating the backtrace manually.
20195 (make_lispy_event): Merge the ASCII and MULTIBYTE cases.
20196 (struct backtrace, backtrace_list): Remove.
20197 (command_loop_1): Remove dead var `no_direct'.
20198
20199 * buffer.c (reset_buffer_local_variables): If permanent_too is 0, also
20200 preserve non-built-in buffer-local variables.
20201 (Fkill_all_local_variables): Don't re-create&re-set permanent
20202 buffer-local variables.
20203
202042007-12-09 Juri Linkov <juri@jurta.org>
20205
20206 * buffer.c (Frename_buffer): Change interactive spec from "s" to
20207 Lisp code that uses `read-buffer' with current buffer as default.
20208
202092007-12-08 Michael Albinus <michael.albinus@gmx.de>
20210
20211 * dbusbind.c (xd_read_message): Generate an event for every
20212 registered handler. There might be several handlers registered
20213 for the same signal.
20214 (Fdbus_register_signal): Don't overwrite a registration for the
20215 same signal. Add a new registration if handlers are different.
20216 (Vdbus_registered_functions_table): Rework doc string.
20217
202182007-12-07 Michael Albinus <michael.albinus@gmx.de>
20219
20220 * dbusbind.c (Fdbus_get_unique_name, xd_read_message)
20221 (Fdbus_register_signal): Use DBUS_MAXIMUM_NAME_LENGTH and
20222 DBUS_MAXIMUM_MATCH_RULE_LENGTH for string lengths.
20223 (Fdbus_call_method, Fdbus_send_signal, Fdbus_register_signal):
20224 Unify argument lists.
20225 (xd_read_message, Fdbus_register_signal): Reorder and extend event
20226 arguments and hash table keys. Use unique name for service.
20227 (Fdbus_unregister_signal): Remove checks.
20228 (Vdbus_registered_functions_table): Fix doc string.
20229
202302007-12-05 Magnus Henoch <mange@freemail.hu>
20231
20232 * process.c (make_process): Initialize pty_flag to 0.
20233
202342007-12-05 Jason Rumney <jasonr@gnu.org>
20235
20236 * image.c (xbm_load) [WINDOWSNT]: Shuffle the bits of directly
20237 specified XBMs.
20238
202392007-12-05 Richard Stallman <rms@gnu.org>
20240
20241 * xdisp.c (syms_of_xdisp) <scroll-conservatively>: Doc fix.
20242
202432007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20244
20245 * mac.c (cfsockets_for_select) [MAC_OSX && SELECT_USE_CFSOCKET]:
20246 New variable.
20247 (mac_try_close_socket) [MAC_OSX]: New function.
20248 [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]:
20249 Update cfsockets_for_select. Replace invalid CFRunLoop source.
20250
20251 * sysdep.c (emacs_close) [MAC_OSX && HAVE_CARBON]:
20252 Use mac_try_close_socket.
20253
202542007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20255
20256 * unexmacosx.c (unrelocate): New argument BASE. Use it instead of
20257 reloc_base.
20258 (copy_dysymtab): Compute relocation base here.
20259 (rebase_reloc_address) [__ppc64__]: New function.
20260 (copy_dysymtab) [__ppc64__]: Use it if relocation base needs to be
20261 changed.
20262
202632007-12-05 Jason Rumney <jasonr@gnu.org>
20264
20265 * w32proc.c (sys_spawnve): Quote args with wildcards.
20266
202672007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20268
20269 * unexmacosx.c (copy_data_segment): Also copy __gcc_except_tab and
20270 __objc_* sections.
20271 (unrelocate) [_LP64]: Set relocation base to address of data segment.
20272
202732007-12-05 Michael Albinus <michael.albinus@gmx.de>
20274
20275 * dbusbind.c (xd_read_message): Return value is a Lisp_Object.
20276 Move check for Vdbus_registered_functions_table to
20277 xd_read_queued_messages.
20278 (xd_read_queued_messages): Protect xd_read_message calls by
20279 internal_condition_case_1.
20280
202812007-12-04 Michael Albinus <michael.albinus@gmx.de>
20282
20283 * dbusbind.c (QCdbus_system_bus, QCdbus_session_bus): Rename from
20284 Qdbus_system_bus and Qdbus_session_bus, respectively.
20285 (Vdbus_intern_symbols): Remove.
20286 (Vdbus_registered_functions_table): New hash table.
20287 (XD_SYMBOL_INTERN_SYMBOL): Remove.
20288 (xd_read_message, Fdbus_register_signal, Fdbus_unregister_signal):
20289 Rewrite in order to manage registered functions by hash table
20290 Vdbus_registered_functions_table.
20291
202922007-12-03 Jan Djärv <jan.h.d@swipnet.se>
20293
20294 * xterm.c: Update URL to Window Manager Specification in comment.
20295
202962007-12-02 Michael Albinus <michael.albinus@gmx.de>
20297
20298 * config.in (HAVE_DBUS): Add.
20299
20300 * Makefile.in (HAVE_DBUS): Add D-Bus definitions if defined.
20301 (ALL_CFLAGS): Add ${DBUS_CFLAGS}.
20302 (obj): Add $(DBUS_OBJ).
20303 (LIBES): Add $(DBUS_LIBS).
20304 (dbusbind.o): New target.
20305
20306 * dbusbind.c: New file.
20307
20308 * emacs.c (main): Call syms_of_dbusbind when HAVE_DBUS is defined.
20309
20310 * keyboard.c: All D-Bus related code is wrapped by "#ifdef HAVE_DBUS".
20311 (Qdbus_event): New Lisp symbol.
20312 (kbd_buffer_get_event, make_lispy_event): Handle DBUS_EVENT.
20313 (gobble_input): Call xd_read_queued_messages, reading D-Bus messages.
b97439ce 20314 (keys_of_keyboard): Define dbus-event.
aac0c6e3
MR
20315
20316 * termhooks.h (event_kind): Add DBUS_EVENT when HAVE_DBUS is defined.
20317
203182007-12-01 Richard Stallman <rms@gnu.org>
20319
20320 * search.c (syms_of_search) <inhibit-changing-match-data>: Doc fix.
20321
203222007-11-30 Jason Rumney <jasonr@gnu.org>
20323
20324 * w32console.c (w32con_ins_del_lines, scroll_line): Clip to window.
20325 (w32con_reset_terminal_modes): Clear screen buffer.
20326 (w32_face_attributes): Don't use color indexes that are out of range.
20327 Only reverse the default colors.
20328
20329 * xfaces.c (map_tty_color, tty_color_name): Remove special case for
20330 WINDOWSNT.
20331
20332 * w32console.c, w32term.h (vga_stdcolor_name): Remove.
20333
203342007-11-29 Jason Rumney <jasonr@gnu.org>
20335
20336 * w32console.c: Leave HAVE_WINDOW_SYSTEM defined.
20337 (w32_face_attributes): Use Vtty_defined_color_alist to determine
20338 if the terminal colors are initialized.
20339 (unspecified_fg, unspecified_bg): Remove unused declarations.
20340
203412007-11-29 Andreas Schwab <schwab@suse.de>
20342
20343 * keyboard.c (apply_modifiers): Fix typo.
20344
203452007-11-29 Richard Stallman <rms@gnu.org>
20346
20347 * keymap.c (Fcurrent_local_map): Doc fix.
20348
203492007-11-28 Petr Salinger <Petr.Salinger@seznam.cz> (tiny change)
20350
20351 * s/gnu-kfreebsd.h: New file.
20352
203532007-11-28 Stefan Monnier <monnier@iro.umontreal.ca>
20354
20355 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer):
20356 Don't cast redundantly.
20357
20358 * keyboard.c (KEY_TO_CHAR): New macro.
20359 (parse_modifiers, apply_modifiers): Accept integer arguments.
20360 (read_key_sequence): Use them to unify the "shift->unshift" mapping
20361 for chars and symbol keys.
20362 After doing such remapping, apply function-key-map again.
20363
203642007-11-27 Dan Nicolaescu <dann@ics.uci.edu>
20365
20366 * Makefile.in (SOME_MACHINE_LISP): Remove VMS files, they are not
20367 compiled anymore.
20368
203692007-11-26 Andreas Schwab <schwab@suse.de>
20370
20371 * process.c (list_processes_1): Fix indentation level of the
20372 command column.
20373
203742007-11-23 Andreas Schwab <schwab@suse.de>
20375
20376 * editfns.c (Fformat): Handle %c specially since it requires the
20377 argument to be of type int.
20378
203792007-11-23 Markus Triska <markus.triska@gmx.at>
20380
20381 * emacs.c (main): Call init_editfns before init_process, since
20382 init_process sets Vprocess_connection_type depending on OS release.
20383
203842007-11-22 Stefan Monnier <monnier@iro.umontreal.ca>
20385
20386 * data.c (do_symval_forwarding): Use same code as in find_symbol_value.
20387 (find_symbol_value): Use do_symval_forwarding.
20388
20389 * data.c (set_internal): Set the value in the `cons-cell' (for
20390 Buffer_Local_values) not only for frame-local variables.
20391
203922007-11-22 Andreas Schwab <schwab@suse.de>
20393
20394 * data.c (Fnumber_to_string): Add cast when passing EMACS_INT
20395 values to sprintf.
20396 * keymap.c (Fsingle_key_description): Likewise.
20397 * print.c (print_object): Likewise.
20398
203992007-11-22 Jan Djärv <jan.h.d@swipnet.se>
20400
20401 * gtkutil.c (update_frame_tool_bar): Don't call x-gtk-map-stock if
20402 file for image is nil.
20403
204042007-11-22 Dan Nicolaescu <dann@ics.uci.edu>
20405
20406 * term.c: Include stdarg.h.
20407 (fatal): Implement using varargs.
20408 * lisp.h (fatal): Add argument types. (Restore 2005-09-30 change).
20409
204102007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
20411
20412 * lisp.h (struct Lisp_Buffer_Objfwd): Add a `slottype' field.
20413 * data.c (store_symval_forwarding): Get type from buffer_objfwd.
20414 Update call to buffer_slot_type_mismatch.
20415 * buffer.h (buffer_local_types, PER_BUFFER_TYPE): Remove.
20416 (buffer_slot_type_mismatch): Update.
20417 * buffer.c (buffer_local_types): Remove.
20418 (buffer_slot_type_mismatch): Get the symbol and type as arguments.
20419 (defvar_per_buffer): Set the type in the buffer_objfwd.
20420
204212007-11-21 Jason Rumney <jasonr@gnu.org>
20422
20423 * w32bdf.c (w32_init_bdf_font, w32_BDF_to_x_font):
20424 CreateFileMapping returns NULL on failure.
20425
204262007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
20427
20428 * search.c (Fset_match_data): Remove the `evaporate' feature.
20429 (unwind_set_match_data): Don't use the `evaporate' feature.
20430
204312007-11-21 Jason Rumney <jasonr@gnu.org>
20432
20433 * dispnew.c (init_display) [WINDOWSNT]: Hardcode terminal_type.
20434
20435 * w32console.c (w32con_write_glyphs): Remove unused variables.
20436
204372007-11-20 Dan Nicolaescu <dann@ics.uci.edu>
20438
20439 * macterm.c (mac_term_init): Call add_keyboard_wait_descriptor.
20440
20441 * s/darwin.h (MULTI_KBOARD): Remove.
20442
20443 * macfns.c (x_create_tip_frame, Fx_create_frame)
20444 (x_create_tip_frame): Don't deal with MULTI_KBOARD.
20445
204462007-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
20447
20448 * buffer.c (Fbuffer_local_value): Remove redundant test.
20449 (swap_out_buffer_local_variables): Swap out binding in `buffer' rather
20450 than in `current-buffer' to match the comment.
20451 Do the swap using swap_in_global_binding.
20452
20453 * data.c (store_symval_forwarding, set_internal):
20454 * eval.c (specbind): Remove dead code.
20455
20456 * coding.c (detect_coding, Fupdate_coding_systems_internal):
20457 * fns.c (Fmd5): Use find_symbol_value rather than SYMBOL_VALUE
20458 Since we do not want to see internal Lisp_*fwd objects here.
20459
204602007-11-18 Jan Djärv <jan.h.d@swipnet.se>
20461
20462 * sysdep.c (init_system_name): Use getaddrinfo if available.
20463
20464 * xterm.c (x_scroll_bar_set_handle, x_scroll_bar_handle_click)
20465 (x_scroll_bar_note_movement): start, end, with, height in struct
20466 scroll_bar are integers and not Lisp_Object, so remove XINT for them.
20467
204682007-11-17 Dan Nicolaescu <dann@ics.uci.edu>
20469
20470 * puresize.h (BASE_PURESIZE): Increase to 1190000.
20471
204722007-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
20473
20474 * buffer.h (struct buffer): Move `undo_list' back to before `name'.
20475 This undoes Richard's change of 14-Oct-2002.
20476
20477 * alloc.c (allocate_other_vector):
20478 * lisp.h (allocate_other_vector): Remove.
20479
20480 * window.c (struct save_window_data): Move non-lisp data to the end
20481 and make it `int' rather than Lisp_Object.
20482 (Fcurrent_window_configuration): Use ALLOCATE_PSEUDOVECTOR.
20483 Done wrap/unwrap integer values.
20484 (Fset_window_configuration, compare_window_configurations):
20485 Update use of fields to their new types.
20486
20487 * xterm.h (struct scroll_bar): Only use Lisp_Object for lisp data.
20488 Turn integer fields into `int'. Merge x_window_low and x_window_high.
20489 (SCROLL_BAR_PACK, SCROLL_BAR_UNPACK, SCROLL_BAR_X_WINDOW)
20490 (SET_SCROLL_BAR_X_WINDOW): Remove.
20491 (SCROLL_BAR_X_WIDGET, SET_SCROLL_BAR_X_WIDGET):
20492 Access the new x_window field directly.
20493 * xterm.c (x_scroll_bar_create): Use a pseudovector.
20494 Don't wrap/unwrap integers into Lisp_Objects.
20495 (XTset_vertical_scroll_bar, x_scroll_bar_handle_click)
20496 (x_scroll_bar_report_motion):
20497 Don't wrap/unwrap integers into Lisp_Objects.
20498 (x_term_init): Use SDATA.
20499 (x_window_to_scroll_bar, x_create_toolkit_scroll_bar)
20500 (x_scroll_bar_set_handle, x_scroll_bar_remove)
20501 (XTset_vertical_scroll_bar, x_scroll_bar_expose)
20502 (x_scroll_bar_report_motion, x_scroll_bar_clear):
20503 * xfns.c (x_set_background_color):
20504 * gtkutil.c (xg_create_scroll_bar, xg_set_toolkit_scroll_bar_thumb):
20505 Access the new x_window field directly.
20506
20507 * alloc.c (ALLOCATE_PSEUDOVECTOR): Move to lisp.h.
20508 (allocate_pseudovector): Make non-static.
20509
20510 * lisp.h (enum pvec_type): New tag PVEC_OTHER.
20511 (allocate_pseudovector): Declare.
20512 (ALLOCATE_PSEUDOVECTOR): Move from alloc.c.
20513
205142007-11-15 Andreas Schwab <schwab@suse.de>
20515
20516 * editfns.c (Fformat): Correctly format EMACS_INT values.
20517 Also take precision into account when formatting an integer.
20518
20519 * keyboard.c (Fevent_symbol_parse_modifiers): Fix declaration.
20520
205212007-11-15 Stefan Monnier <monnier@iro.umontreal.ca>
20522
20523 * keyboard.c (Fevent_symbol_parse_modifiers): New function.
20524 (syms_of_keyboard): Defsubr it.
20525
20526 * data.c (swap_in_global_binding): Fix longstanding bug where
20527 store_symval_forwarding was not called with the right second argument,
20528 thus causing objfwd-ing from being dropped.
20529
205302007-11-14 Juanma Barranquero <lekktu@gmail.com>
20531
20532 * macfns.c (Fx_create_frame, Fx_display_pixel_width)
20533 (Fx_display_pixel_height, Fx_display_planes)
20534 (Fx_display_color_cells, Fx_server_max_request_size)
20535 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
20536 (Fx_display_visual_class, Fx_display_save_under):
20537 * w32fns.c (Fx_create_frame, Fx_display_pixel_width)
20538 (Fx_display_pixel_height, Fx_display_planes)
20539 (Fx_display_color_cells, Fx_server_max_request_size)
20540 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
20541 (Fx_display_mm_height, Fx_display_mm_width)
20542 (Fx_display_backing_store, Fx_display_visual_class)
20543 (Fw32_select_font, Fx_display_save_under):
20544 * xfns.c (Fx_create_frame, Fx_display_pixel_width)
20545 (Fx_display_pixel_height, Fx_display_planes)
20546 (Fx_display_color_cells, Fx_server_max_request_size)
20547 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
20548 (Fx_display_save_under): Fix typos in docstrings.
20549
205502007-11-14 Juanma Barranquero <lekktu@gmail.com>
20551
20552 * w32fns.c (Fw32_registered_hot_keys): Don't return the nil values
20553 corresponding to deleted entries; they are an implementation detail.
20554 (gray_bitmap_width, gray_bitmap_height, gray_bitmap_bits):
20555 Remove variables.
20556 (w32_pass_extra_mouse_buttons_to_system, w32_strict_fontnames)
20557 (w32_pass_multimedia_buttons_to_system, w32_strict_painting)
20558 (Vw32_charset_info_alist, w32_to_x_color, w32_init_class)
20559 (w32_createscrollbar, w32_createwindow, my_post_msg, w32_get_modifiers)
20560 (w32_grabbed_keys, cancel_all_deferred_msgs): Make static.
20561 (Fw32_define_rgb_color, Fw32_load_color_file)
20562 (syms_of_w32fns) <w32-pass-multimedia-buttons-to-system>:
20563 Fix typos in docstrings.
20564 (Fx_server_version): Reflow docstring.
20565 (Fw32_shell_execute): Doc fixes.
20566
205672007-11-13 Juanma Barranquero <lekktu@gmail.com>
20568
20569 * w32fns.c (Fw32_register_hot_key): Don't try to register hot key
20570 if w32_parse_hot_key returned nil.
20571
205722007-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
20573
20574 * xdisp.c (load_overlay_strings): Fix copy&paste typo.
20575
205762007-11-09 Jason Rumney <jasonr@gnu.org>
d6c952f8 20577
aac0c6e3
MR
20578 * s/ms-w32.c (USE_TOOLKIT_SCROLL_BARS): Define.
20579
20580 * w32term.c (w32_scroll_bar_handle_click): Use SCROLL_BAR_CLICK_EVENT.
20581
20582 * keyboard.c (discard_mouse_events, make_lispy_event) [WINDOWSNT]:
20583 Remove W32_SCROLL_BAR_CLICK_EVENT.
20584
20585 * termhooks.h (enum event_kind) [WINDOWSNT]: Likewise.
20586 Add MULTIMEDIA_KEY_EVENT.
20587
20588 * keyboard.c (lispy_function_keys) [WINDOWSNT]: Add more keys.
20589 (lispy_multimedia_keys) [WINDOWSNT]: New array.
20590 (make_lispy_event) [WINDOWSNT]: Use it to translate
20591 MULTIMEDIA_KEY_EVENT.
20592
20593 * w32term.h (WM_APPCOMMAND): Define if not already.
20594 (GET_APPCOMMAND_LPARAM): Likewise.
20595
20596 * w32term.c (w32_read_socket): Generate MULTIMEDIA_KEY_EVENT from
20597 WM_APPCOMMAND.
20598
20599 * w32fns.c (w32_pass_multimedia_buttons_to_system): New user option.
20600 (syms_of_w32fns): Export and initialize it.
20601 (w32_wnd_proc): Pass WM_APPCOMMAND on to w32_read_socket.
20602
206032007-11-09 Chong Yidong <cyd@stupidchicken.com>
20604
20605 * dispextern.h (struct it): Don't define OVERLAY_STRING_CHUNK_SIZE
20606 twice.
20607
20608 * xdisp.c (handle_face_prop): Fix last change.
20609
206102007-11-09 Richard Stallman <rms@gnu.org>
20611
20612 * xdisp.c (handle_face_prop): Test for strings that came from overlays,
20613 not just for after-strings and before-strings.
20614 Call face_for_overlay_string and pass the overlay to it.
20615 (handle_display_prop): Determine whether property came from an overlay.
20616 Pass OVERLAY arg to handle_single_display_spec.
20617 (handle_single_display_spec): New arg OVERLAY sets it->from_overlay.
20618 (load_overlay_strings): Fill in it->string_overlays.
20619 (get_overlay_strings_1, push_it, pop_it): Handle it->from_overlays.
20620
20621 * xfaces.c (face_for_overlay_string): Function renamed from
20622 face_at_buffer_position_no_overlays, and add arg OVERLAY.
20623
20624 * dispextern.h (struct it): New elt string_overlays.
20625 New elt from_overlay, also in stack.
20626 Rearrange a few elements.
20627 (face_for_overlay_string): Decl renamed from
20628 face_at_buffer_position_no_overlays, and add argument.
20629
206302007-11-09 Richard Stallman <rms@gnu.org>
20631
20632 * xdisp.c (handle_face_prop): Use face_at_buffer_position_no_overlays
20633 to get the base face for an overlay string.
20634
20635 * dispextern.h (face_at_buffer_position_no_overlays): Add decl.
20636
20637 * xfaces.c (face_at_buffer_position_no_overlays): New function.
20638
20639 * xdisp.c (handle_stop): Move some code out of loop.
20640
206412007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20642
20643 * macfns.c [USE_ATSUI] (Fmac_atsu_font_face_attributes):
20644 Fix conversion from Lisp object to ATSUFontID.
20645
206462007-11-09 Jason Rumney <jasonr@gnu.org>
20647
20648 * xdisp.c (Fformat_mode_line): Do nothing when noninteractive.
20649
206502007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20651
20652 * unexmacosx.c (unexec_regions_recorder, unexec_regions_merge):
20653 Don't assume regions are aligned to page boundary.
20654 (print_load_command_name): Add LC_UUID if defined.
20655
206562007-11-09 Richard Stallman <rms@gnu.org>
20657
20658 * emacs.c (syms_of_emacs) <installation-directory>: Reflow docstring.
20659
206602007-11-07 Jason Rumney <jasonr@gnu.org>
20661
20662 * s/windows95.h: Remove.
20663
206642007-11-06 Jan Djärv <jan.h.d@swipnet.se>
20665
20666 * gtkutil.c (xg_tool_bar_menu_proxy): Handle GTK_IMAGE_ICON_NAME and
20667 abort with a message on unhandled store_type values.
20668
206692007-11-01 Jan Djärv <jan.h.d@swipnet.se>
20670
20671 * xterm.c, xfns.c, xselect.c, xterm.h, s/msdos.h, s/sco4.h, s/sco5.h:
20672 Remove HAVE_X11R5 and HAVE_X11R4.
20673
206742007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
20675
20676 * Makefile.in: Remove references to sunfns.c and sunfns.o.
20677
206782007-11-01 Johan Bockgård <bojohan@gnu.org>
20679
20680 * macterm.c, w32term.c, xterm.c (x_draw_stretch_glyph_string):
20681 Don't set s->stippled_p here, since it has already been set by
20682 x_set_glyph_string_gc from x_draw_glyph_string.
20683
206842007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
20685
20686 * sunfns.c: Remove file.
20687
20688 * m/sun386.h:
20689 * m/sun2.h:
20690 * m/sparc.h: Remove Sun windows code.
20691
206922007-10-31 Stefan Monnier <monnier@iro.umontreal.ca>
20693
20694 * keyboard.c (syms_of_keyboard): Initialize the initial_kboard.
20695 (init_keyboard): Set current_kboard's window-system to nil.
20696 (tty_read_avail_input): Typo.
20697 * frame.c (make_initial_frame): Don't initialize the initial_kboard.
20698
206992007-10-31 Dan Nicolaescu <dann@ics.uci.edu>
20700
20701 * s/usg5-4.h:
20702 * s/usg5-3.h:
20703 * s/ptx.h:
20704 * m/is386.h:
20705 * m/ibmps2-aix.h:
20706 * Makefile.in: Remove all mentions of X10.
20707
20708 * dispnew.c (syms_of_display): Don't mention version 10.
20709
207102007-10-28 Juanma Barranquero <lekktu@gmail.com>
20711
20712 * makefile.w32-in (OBJ1): Remove abbrev.$(O).
20713 ($(BLD)/abbrev.$(O)): Remove.
20714
207152007-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
20716
20717 Rewrite abbrev.c in Elisp.
20718 * image.c (Qcount): Don't declare as extern.
20719 (syms_of_image): Initialize and staticpro `Qcount'.
20720 * puresize.h (BASE_PURESIZE): Increase for the new abbrev.el functions.
20721 * emacs.c (main): Don't call syms_of_abbrev.
20722 * Makefile.in (obj): Remove abbrev.o.
20723 (abbrev.o): Remove.
20724 * abbrev.c: Remove.
20725
207262007-10-26 Martin Rudalics <rudalics@gmx.at>
20727
20728 * window.c (window_min_size_2): Don't count header-line.
20729
207302007-10-26 Dan Nicolaescu <dann@ics.uci.edu>
20731
20732 * frame.h (struct frame): Move all bit fields after the first bit
20733 field to take advantage of the available space. Group all the
20734 chars together to reduce wasted space due to padding.
20735
207362007-10-26 Juanma Barranquero <lekktu@gmail.com>
20737
20738 * minibuf.c (Fread_minibuffer, Feval_minibuffer): Reflow docstrings.
20739
20740 * alloc.c (spare_memory, stack_copy, stack_copy_size, ignore_warnings)
20741 (Vdead, dont_register_blocks, staticvec, staticidx, interval_block)
20742 (n_interval_blocks, init_strings, check_string_bytes, check_sblock)
20743 (init_float, free_float, n_cons_blocks, init_cons, all_vectors)
20744 (n_vectors, symbol_block, symbol_block_index, symbol_free_list)
20745 (n_symbol_blocks, init_symbol, marker_block, marker_free_list)
20746 (n_marker_blocks, init_marker, valid_pointer_p, make_pure_float)
20747 (last_marked, mark_object_loop_halt): Make static.
20748
20749 * frame.c (syms_of_frame) <delete-frame-functions>:
20750 Fix typo in docstring.
20751
207522007-10-25 Juanma Barranquero <lekktu@gmail.com>
20753
20754 * w32.c (init_environment): Fix tiny memory leak.
20755 (w32_get_resource): Remove unused variable `ok'.
20756
207572007-10-25 Stefan Monnier <monnier@iro.umontreal.ca>
20758
20759 Make `window-system' into a keyboard-local variable (rather than
20760 frame-local as done originally by multi-tty).
20761
20762 * keyboard.h (struct kboard): Add Vwindow_system.
20763 * keyboard.c (init_kboard): Set a default for Vwindow_system.
20764 (mark_kboards): Mark Vwindow_system.
20765
20766 * dispnew.c (syms_of_display) <window-system>: Declare terminal-local.
20767 (init_display): Don't set the obsolete `window-system' frame-param.
20768
20769 * xterm.c (x_term_init):
20770 * w32term.c (w32_create_terminal):
20771 * term.c (init_tty): Set Vwindow_system.
20772 * macterm.c (mac_create_terminal): Set a keyboard (missing piece of the
20773 multi-tty merge maybe?), copied from w32term.c. Set Vwindow_system.
20774
20775 * xfns.c (Fx_create_frame, x_create_tip_frame):
20776 * w32fns.c (Fx_create_frame, x_create_tip_frame):
20777 * macfns.c (Fx_create_frame):
20778 Don't set the obsolete `window-system' frame-param.
20779
20780 * frame.h (Qwindow_system): Remove.
20781 * frame.c (Qwindow_system): Remove. In `syms_of_frame' as well.
20782 (Fmake_terminal_frame): Don't set obsolete `window-system' frame-param.
20783
207842007-10-24 Richard Stallman <rms@gnu.org>
20785
20786 * frame.c (x_figure_window_size): For fullscreen case,
20787 set USPosition | PPosition without clobbering rest of window_prompting.
20788
20789 * keyboard.c (Fcurrent_idle_time): Doc fix.
20790
20791 * print.c (Fwith_output_to_temp_buffer): Doc fix.
20792
207932007-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
20794
20795 * process.c (unwind_request_sigio): Only define if __ultrix__.
20796
20797 * callproc.c (child_setup): Remove spurious *.
20798
20799 * lisp.h (Fget_text_property): Declare.
20800 (have_menus_p): Declare it here rather than in sys-dep header files.
20801 * macterm.h (have_menus_p):
20802 * msdos.h (have_menus_p):
20803 * xterm.h (have_menus_p): Remove.
20804
20805 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
20806 (Fmake_variable_frame_local): Just check the variable's const-ness
20807 rather than checking nil or t.
20808
208092007-10-22 Jason Rumney <jasonr@gnu.org>
20810
20811 * w32fns.c: Include math.h.
20812 (w32_abort): Declaration moved to nt/config.nt.
20813
20814 * s/ms-w32.h (HAVE_STDLIB_H): Define.
20815 (abort): Redefinition moved to nt/config.nt.
20816
20817 * m/windowsnt.h: Remove.
20818
208192007-10-22 Juanma Barranquero <lekktu@gmail.com>
20820
20821 * emacs.c (Fdump_emacs): Fix typo in message.
20822 (syms_of_emacs) <kill-emacs-hook>: Fix typo in docstring.
20823 <installation-directory>: Reflow docstring.
20824
208252007-10-22 Juri Linkov <juri@jurta.org>
20826
20827 * minibuf.c: Allow minibuffer default to be a list of default values.
20828 With empty input use the first element of this list as returned default.
20829 (string_to_object)
20830 (read_minibuf_noninteractive): If defalt is cons, set val to its car.
20831 (read_minibuf): If defalt is cons, set histstring to its car.
20832 (Fread_string): If default_value is cons, set val to its car.
20833 (Fread_buffer): If def is cons, use its car.
20834 (Fcompleting_read): If defalt is cons, set val to its car.
20835
208362007-10-21 Michael Albinus <michael.albinus@gmx.de>
20837
20838 * fileio.c (Fcopy_file): Call file name handler with preserve_uid_gid.
20839
208402007-10-20 Juanma Barranquero <lekktu@gmail.com>
20841
20842 * doc.c (Fdocumentation): Check for advice in all cases.
20843
208442007-10-19 Chong Yidong <cyd@stupidchicken.com>
20845
20846 * Makefile.in [HAVE_LIBRESOLV]: Add -lresolv to linker flags.
20847
208482007-10-19 Richard Stallman <rms@gnu.org>
20849
20850 * doc.c (Fdocumentation): Check for and handle an advised function.
20851
208522007-10-19 Juanma Barranquero <lekktu@gmail.com>
20853
20854 * process.c (Fset_process_filter): Doc fix.
20855
208562007-10-18 Stefan Monnier <monnier@iro.umontreal.ca>
20857
20858 * keyboard.c (read_key_sequence): Undo a change introduced by multi-tty
20859 which caused key-translation-map to applied repeatedly (thus breaking
20860 double-mode).
20861
208622007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
20863
20864 * xselect.c (x_own_selection, x_handle_selection_clear)
20865 (x_clear_frame_selections):
20866 * w32menu.c (list_of_panes, list_of_items):
20867 * w32fns.c (w32_color_map_lookup, Fx_create_frame, Fx_display_list):
20868 * textprop.c (validate_plist, interval_has_all_properties)
20869 (interval_has_some_properties, interval_has_some_properties_list)
20870 (add_properties, text_property_list):
20871 * process.c (Fget_buffer_process, list_processes_1, status_notify):
20872 * minibuf.c (Fassoc_string):
20873 * macselect.c (x_own_selection, x_clear_frame_selections)
20874 (Fx_disown_selection_internal):
20875 * keymap.c (Fcommand_remapping, where_is_internal, describe_map_tree):
20876 Use CONSP rather than !NILP and XC[AD]R rather than Fc[ad]r.
20877
208782007-10-17 Chong Yidong <cyd@stupidchicken.com>
20879
20880 * process.c: Link to libs for calling res_init() if available.
20881 (Fmake_network_process): Call res_init() before getaddrinfo or
20882 gethostbyname, if possible.
20883
208842007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
20885
20886 * lread.c (read1): Set pvectype for char_tables.
20887
20888 * lisp.h (XMISCANY, XMARKER, XINTFWD, XBOOLFWD, XOBJFWD, XOVERLAY)
20889 (XBUFFER_OBJFWD, XBUFFER_LOCAL_VALUE, XKBOARD_OBJFWD, XSAVE_VALUE):
20890 Add type checks.
20891 (SOME_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP): Remove.
20892
20893 * alloc.c (free_misc): Use XMISCTYPE.
20894 (live_misc_p, gc_sweep): Use Lisp_Misc_Any.
20895
208962007-10-17 Glenn Morris <rgm@gnu.org>
20897
20898 * minibuf.c (Qcompletion_ignore_case): New Lisp_Object.
20899 (syms_of_minibuf): Add Qcompletion_ignore_case.
20900 * dired.c (Qcompletion_ignore_case): Change to external.
20901 (syms_of_dired) [VMS]: Remove Qcompletion_ignore_case.
20902 * fileio.c (Qcompletion_ignore_case): New external Lisp_Object.
20903 (Fread_file_name): Use it rather than intern'ing.
20904
20905 * coding.c (Qcompletion_ignore_case): New external Lisp_Object.
20906 (Fread_coding_system): Ignore case of user input.
20907
209082007-10-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20909
20910 * xdisp.c (handle_display_prop): Ignore display specs after
20911 replacing one when string text is being replaced.
20912 (handle_single_display_spec): Pretend as if characters with display
20913 property haven't been consumed only when buffer text is being replaced.
20914
209152007-10-16 Stefan Monnier <monnier@iro.umontreal.ca>
20916
20917 * xfns.c (Fx_create_frame, Fx_display_list):
20918 * window.c (window_fixed_size_p, enlarge_window)
20919 (shrink_window_lowest_first):
20920 * macterm.c (init_font_name_table):
20921 * macfns.c (Fx_create_frame, Fx_display_list):
20922 * lread.c (close_load_descs):
20923 * keyboard.c (read_char_x_menu_prompt):
20924 * fns.c (Fmember, Fmemql, Fdelete, Fset_char_table_parent):
20925 * coding.c (code_convert_region_unwind): Test the type of an object
20926 rather than just !NILP before extracting data from it.
20927
20928 * alloc.c (Fpurecopy): Set the pvec tag on pseudo vectors.
20929
20930 * lisp.h (enum Lisp_Misc_Type): Del Lisp_Misc_Some_Buffer_Local_Value.
20931 (XMISCANY): New macro.
20932 (XMISCTYPE): Use it.
20933 (struct Lisp_Misc_Any): New type.
20934 (union Lisp_Misc): Use it.
20935 (struct Lisp_Buffer_Local_Value): Add `local_if_set' bit.
20936 * data.c (Fboundp, store_symval_forwarding, swap_in_global_binding)
20937 (find_symbol_value, set_internal, default_value, Fset_default)
20938 (Fmake_variable_buffer_local, Fmake_local_variable)
20939 (Fkill_local_variable, Fmake_variable_frame_local, Flocal_variable_p)
20940 (Flocal_variable_if_set_p, Fvariable_binding_locus):
20941 The SOME_BUFFER_LOCAL_VALUEP distinction is replaced by local_if_set.
20942 * alloc.c (allocate_buffer): Set the size and tag.
20943 (allocate_misc, mark_maybe_object, mark_object, survives_gc_p):
20944 Use XMISCANY.
20945 (die): Follow the GNU convention for error messages.
20946 * print.c (print_object): SOME_BUFFER_LOCAL_VALUEP -> local_if_set.
20947 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Don't set the
20948 tag any more.
20949 (set_buffer_internal_1):
20950 * frame.c (store_frame_param):
20951 * eval.c (specbind):
20952 * xdisp.c (select_frame_for_redisplay): Drop SOME_BUFFER_LOCAL_VALUEP.
20953
20954 * doc.c (Fsnarf_documentation): Simplify.
20955
209562007-10-14 Juanma Barranquero <lekktu@gmail.com>
20957
20958 * w32term.c (w32_font_is_double_byte, my_create_scrollbar): Make static.
20959 (syms_of_w32term) <w32-enable-unicode-output>: Fix typo in docstring.
20960
209612007-10-14 Stefan Monnier <monnier@iro.umontreal.ca>
20962
20963 * buffer.c (Fmake_indirect_buffer): Set the buffer's tag.
20964
209652007-10-14 Juanma Barranquero <lekktu@gmail.com>
20966
20967 * eval.c (do_autoload): Don't save autoloads.
20968
20969 * data.c (Ffset): Save autoload of the function being set.
20970
209712007-10-07 John Paul Wallington <jpw@pobox.com>
20972
20973 * xfns.c (x_create_tip_frame): Set the `display-type' frame
20974 parameter before setting up faces.
20975
209762007-10-13 Eli Zaretskii <eliz@gnu.org>
20977
20978 * ccl.c (Fregister_code_conversion_map):
20979 * keyboard.c (append_tool_bar_item): Reformat last change.
20980
20981 * lisp.h (eabs): Rename from `abs'. All callers changed.
20982
209832007-10-05 Dmitry Antipov <dmantipov@yandex.ru>
20984
20985 * buffer.c (add_overlay_mod_hooklist):
20986 * ccl.c (Fregister_ccl_program, Fregister_code_conversion_map):
20987 * fontset.c (make_fontset):
20988 * keyboard.c (GROW_RAW_KEYBUF, menu_bar_items, menu_bar_item)
20989 (append_tool_bar_item):
20990 * macmenu.c (grow_menu_items):
20991 * w32menu.c (grow_menu_items):
20992 * xmenu.c (grow_menu_items): Use larger_vector.
20993
209942007-10-13 Eli Zaretskii <eliz@gnu.org>
20995
20996 * msdos.c (dos_rawgetc): Undo last change (there's no ``leaving
20997 selected frame'' on MSDOS).
20998
209992007-10-12 Martin Rudalics <rudalics@gmx.at>
21000
21001 * frame.c (Qexplicit_name): New variable.
21002 (x_report_frame_params): Report it in parameter alist.
21003 (syms_of_frame): Intern and staticpro it.
21004
210052007-10-10 Patrick Mahan <mahan@mahan.org> (tiny change)
21006
21007 * macfns.c (x_create_tip_frame): Set terminal for frame.
21008
210092007-10-10 Stefan Monnier <monnier@iro.umontreal.ca>
21010
21011 * frame.c (Qenvironment): Remove.
21012 (syms_of_frame) <Qenvironment>: Don't initialize.
21013 (Fdelete_frame): Don't treat the `environment' param specially.
21014 * frame.h (Qenvironment): Don't declare.
21015 * callproc.c (set_initial_environment): Don't set unused frame param.
21016
21017 * frame.c (Fframe_with_environment): Remove.
21018 (syms_of_frame) <Sframe_with_environment>: Don't declare.
21019
21020 * lisp.h (Fframe_with_environment): Don't declare.
21021
210222007-10-10 Juanma Barranquero <lekktu@gmail.com>
21023
21024 * indent.c (indent_tabs_mode, last_known_column)
21025 (last_known_column_modified): Make static.
21026 (syms_of_indent) <indent-tabs-mode>: Remove redundant info in docstring.
21027
210282007-10-10 Katsumi Yamaoka <yamaoka@jpl.org>
21029
21030 * puresize.h (BASE_PURESIZE): Increase to 1170000.
21031
210322007-10-09 Jason Rumney <jasonr@gnu.org>
21033
21034 * w32term.c (x_set_window_size): Disable code that attempts to tell
21035 Lisp code about a size change before it actually happens.
21036
210372007-10-09 Richard Stallman <rms@gnu.org>
21038
21039 * xdisp.c (handle_invisible_prop): After setting up an ellipsis,
21040 return HANDLED_RETURN.
21041
210422007-10-08 Martin Rudalics <rudalics@gmx.at>
21043
21044 * keyboard.c (kbd_buffer_get_event): Break loop waiting for input
21045 when there's an unread command event.
21046
21047 * frame.c (focus_follows_mouse): Move here from frame.el to allow
21048 window autoselection act appropriately when leaving selected frame.
21049 (syms_of_frame): Initialize focus_follows_mouse.
21050 * frame.h (focus_follows_mouse): Extern it.
21051 * macterm.c (XTread_socket): When focus_follows_mouse is nil
21052 make SELECT_WINDOW_EVENT only if we don't leave the selected frame.
21053 * msdos.c (dos_rawgetc): Likewise.
21054 * w32term.c (w32_read_socket): Likewise.
21055 * xterm.c (handle_one_xevent): Likewise.
21056 * xdisp.c (syms_of_xdisp): In doc-string of
21057 mouse-autoselect-window mention focus-follows-mouse.
21058
210592007-10-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21060
21061 * macterm.c (mac_load_query_font): Fix missing return value.
21062 [USE_CG_DRAWING] (mac_define_fringe_bitmap, mac_destroy_fringe_bitmap):
21063 Add BLOCK_INPUT.
21064
210652007-10-08 Richard Stallman <rms@gnu.org>
21066
21067 * xdisp.c (get_window_cursor_type): Implement documented behavior
21068 for cursor-in-non-selected-windows = t.
21069
210702007-10-08 Jason Rumney <jasonr@gnu.org>
21071
21072 * w32.c (w32_get_resource): Always close registry keys.
21073
210742007-10-08 Jason Rumney <jasonr@gnu.org>
21075
21076 * makefile.w32-in (LIBS): Add COMCTL32.
21077
21078 * w32fns.c (globals_of_w32fns): Init common controls.
21079
210802007-10-08 Richard Stallman <rms@gnu.org>
21081
21082 * image.c (our_memory_buffer): Rename from omfib_buffer.
21083
210842007-10-08 Richard Stallman <rms@gnu.org>
21085
21086 * buffer.c (Foverlays_at): Doc fix.
21087
210882007-10-08 Stefan Monnier <monnier@iro.umontreal.ca>
21089
21090 * fns.c (Fplist_put): Preserve uneven tail data.
21091
210922007-10-08 Peter O'Gorman <bug-gnu-emacs@mlists.thewrittenword.com> (tiny change)
21093
21094 * termhooks.h (enum event_kind): Remove trailing comma.
21095
21096 * frame.h (enum): Remove trailing comma.
21097
210982007-10-08 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
21099
21100 * w32proc.c (delete_child): Don't terminate threads of zombies.
21101
211022007-10-08 Martin Rudalics <rudalics@gmx.at>
21103
21104 * keyboard.h (struct kboard): New elt Vlast_repeatable_command.
21105
21106 * keyboard.c (syms_of_keyboard): Set up new Lisp variable
21107 last-repeatable-command.
21108 (init_kboard): Initialize Vlast_repeatable_command.
21109 (command_loop_1): Set it to real_this_command unless that was
21110 bound to an input event.
21111 (mark_kboards): Mark it.
21112
211132007-10-08 Richard Stallman <rms@gnu.org>
21114
21115 * eval.c (condition-case): Doc fix.
21116
211172007-10-08 Masatake YAMATO <jet@gyve.org>
21118
21119 * xfaces.c (tty_supports_face_attributes_p): Fix code
21120 for LFACE_INVERSE_INDEX and LFACE_BACKGROUND_INDEX; code
21121 was copied and not edited.
21122
211232007-10-09 Stefan Monnier <monnier@iro.umontreal.ca>
21124
21125 Add new `input-decode-map' keymap and use it for terminal
21126 escape sequences.
21127 * keyboard.h (struct kboard): Add Vinput_decode_map.
21128 Remove Vlocal_key_translation_map.
21129 * keyboard.c (read_key_sequence): Add support for input-decode-map.
21130 (init_kboard): Init input-decode-map.
21131 Replace local-key-translation-map back with key-translation-map.
21132 (syms_of_keyboard): Declare input-decode-map.
21133 Remove local-key-translation-map. Update docstrings.
21134 (mark_kboards): Mark Vinput_decode_map.
21135 Don't mark Vlocal_key_translation_map.
21136 * keymap.c (Fdescribe_buffer_bindings): Describe input-decode-map.
21137 Replace local-key-translation-map back with key-translation-map.
21138 * term.c (term_get_fkeys_1, CONDITIONAL_REASSIGN):
21139 Bind in input-decode-map rather than function-key-map.
21140
21141 * lisp.h (XSETPSEUDOVECTOR): Don't set the tag anymore.
21142 This was made redundant by the previous introduction of XSETPVECTYPE.
21143
211442007-10-09 Richard Stallman <rms@gnu.org>
21145
21146 * image.c (free_bitmap_record): Rename from Free_Bitmap_Record.
21147
211482007-09-29 Richard Stallman <rms@gnu.org>
21149
21150 * eval.c (internal_condition_case_2, internal_condition_case_1)
21151 (internal_condition_case): Reenable abort if x_catching_errors ()
21152 to see if that really happens and why.
21153
211542007-10-06 Andreas Schwab <schwab@suse.de>
21155
21156 * fileio.c (Fwrite_region): Ignore EINVAL error from fsync.
21157
211582007-10-04 Juanma Barranquero <lekktu@gmail.com>
21159
21160 * image.c (syms_of_image) <image-types>: Fix typo in docstring.
21161
211622007-10-03 Stefan Monnier <monnier@iro.umontreal.ca>
21163
21164 * frame.h (struct frame): Don't try to GC-mark menu_bar_items_used.
21165
211662007-10-02 Stefan Monnier <monnier@iro.umontreal.ca>
21167
21168 * window.h (struct window):
21169 * window.c (struct save_window_data, struct saved_window):
21170 * termhooks.h (struct terminal):
21171 * process.h (struct Lisp_Process):
21172 * frame.h (struct frame):
21173 * buffer.h (struct buffer):
21174 * lisp.h (struct Lisp_Vector, struct Lisp_Char_Table)
21175 (struct Lisp_Bool_Vector, struct Lisp_Subr, struct Lisp_Hash_Table):
21176 The size field of (pseudo)vectors is now unsigned.
21177 (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Simplify accordingly.
21178
21179 * lisp.h (struct Lisp_Hash_Table): Move non-traced elements at the end.
21180 Turn `count' into an integer.
21181
21182 * fns.c (make_hash_table, hash_put, hash_remove, hash_clear)
21183 (sweep_weak_table, sweep_weak_hash_tables, Fhash_table_count):
21184 * print.c (print_object) <HASH_TABLE_P>: `count' is an int.
21185 * alloc.c (allocate_hash_table): Use ALLOCATE_PSEUDOVECTOR.
21186 (mark_object) <HASH_TABLE_P>: Use mark_vectorlike.
21187
21188 * alloc.c (allocate_pseudovector): New fun.
21189 (ALLOCATE_PSEUDOVECTOR): New macro.
21190 (allocate_window, allocate_terminal, allocate_frame)
21191 (allocate_process): Use it.
21192 (mark_vectorlike): New function.
21193 (mark_object) <FRAMEP, WINDOWP, BOOL_VECTOR_P, VECTORP>: Use it.
21194 (mark_terminals): Use it.
21195 (Fmake_bool_vector, Fmake_char_table, make_sub_char_table)
21196 (Fmake_byte_code): Use XSETPVECTYPE.
21197
21198 * frame.c (Fframe_parameters): Minor simplification.
21199
21200 * insdel.c (adjust_markers_for_insert): Generalize assertion checks.
21201
21202 * marker.c (Fmarker_buffer): Make test for odd case into a failure.
21203
21204 * buffer.c (Fget_buffer_create, init_buffer_once):
21205 * lread.c (defsubr):
21206 * window.c (Fcurrent_window_configuration): Use XSETPVECTYPE.
21207
21208 * lisp.h (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Don't let them be
21209 defined differently in the m/*.h files.
21210 (XCHAR_TABLE, XBOOL_VECTOR): Add assertion checking.
21211 (XSETPVECTYPE): New macro.
21212 (XSETPSEUDOVECTOR): Use it.
21213
21214 * buffer.c (syms_of_buffer) <local-abbrev-table>: Move from abbrev.c.
21215 (DEFVAR_PER_BUFFER, defvar_per_buffer): Move from lisp.h and lread.c.
21216
21217 * lisp.h (defvar_per_buffer, DEFVAR_PER_BUFFER):
21218 * lread.c (defvar_per_buffer):
21219 * abbrev.c (syms_of_abbrev) <local-abbrev-tabl>: Move to buffer.c.
21220
21221 * window.c (candidate_window_p): Only consider as visible frames that
21222 are on the same terminal.
21223
21224 * m/ibms390x.h (MARKBIT): Remove unused macro.
21225
212262007-10-01 Juanma Barranquero <lekktu@gmail.com>
21227
21228 * lread.c (Fload): Fix typo in docstring.
21229
212302007-10-01 Michaël Cadilhac <michael@cadilhac.name>
21231
21232 * floatfns.c (Fexpt): Manually check for overflows, so that a power
21233 of a non-zero value can't yield zero.
21234
212352007-09-29 Stefan Monnier <monnier@iro.umontreal.ca>
21236
21237 * term.c (term_clear_mouse_face, term_mouse_highlight)
21238 (tty_write_glyphs_with_face): Only define is HAVE_GPM.
21239
21240 * print.c (safe_debug_print): Use XHASH.
21241
21242 * lisp.h (DECL_ALIGN, USE_LSB_TAG): Move logic to before definition of
21243 Lisp elements such as tags.
21244 (XHASH): New macro.
21245 (EQ): Use it.
21246 (SREF, SSET, STRING_COPYIN): Use SDATA.
21247 (VOID_TO_LISP, CVOID_TO_LISP, LISP_TO_VOID, LISP_TO_CVOID): Remove.
21248
21249 * alloc.c (mark_terminal): Remove left-over declaration.
21250 (enum mem_type): Replace all vector subtypes -> MEM_TYPE_VECTORLIKE.
21251 (allocate_vectorlike): Remove type argument. Adjust callers.
21252 (live_vector_p, mark_maybe_pointer, valid_lisp_object_p):
21253 Only handle the one remaining MEM_TYPE_VECTORLIKE.
21254
21255 * alloc.c (MALLOC_BLOCK_INPUT, MALLOC_UNBLOCK_INPUT): New macros
21256 to avoid unnecessary BLOCK_INPUTs when SYNC_INPUT is used.
21257 (xmalloc, xrealloc, xfree, lisp_malloc, lisp_free, lisp_align_malloc)
21258 (lisp_align_free, make_interval, allocate_string, allocate_string_data)
21259 (make_float, Fcons, allocate_vectorlike, Fmake_symbol, allocate_misc):
21260 Use them.
21261
21262 * xfaces.c (load_face_font, free_realized_face, clear_face_gcs):
21263 Don't let signal handlers run when a GC is freed but not yet NULL'ed.
21264 (x_free_gc): Remove BLOCK_INPUT since it's now redundant.
21265
212662007-09-28 Dan Nicolaescu <dann@ics.uci.edu>
21267
21268 * Makefile.in (lisp, shortlisp): Delete server.elc, it is not
21269 loaded by default.
21270
212712007-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
21272
21273 * term.c (Fgpm_mouse_start): Don't signal an error if already activated
21274 on this tty.
21275 (Fgpm_mouse_stop): Only deactivate if it was activated on this tty.
21276
21277 * term.c (mouse_face_window): Rename from Qmouse_face_window.
21278 Update all users.
21279 (handle_one_term_event): Use Gpm_DrawPointer.
21280 (Fgpm_mouse_start): Rename from Fterm_open_connection.
21281 Signal errors instead of returning nil. Always return nil.
21282 (Fgpm_mouse_stop): Rename from Fterm_close_connection.
21283 Make it a noop if gpm-mouse was not activated.
21284 (syms_of_term): Update names.
21285
212862007-09-27 Stefan Monnier <monnier@iro.umontreal.ca>
21287
21288 * sysdep.c (narrow_foreground_group, widen_foreground_group): Static.
21289 (init_sys_modes): Check that gpm_tty is the current tty.
21290
21291 * alloc.c (allocate_terminal): Set the vector size to only count the
21292 lisp fields. Initialize those to nil.
21293 (mark_object): Don't treat terminals specially.
21294 (mark_terminal): Remove.
21295 (mark_terminals): Use mark_object instead.
21296
21297 * termhooks.h (struct terminal): Move all Lisp_Object fields traced by
21298 the GC to the beginning.
21299
21300 * indent.h:
21301 * indent.c: Use EMACS_INT for ints coming from Elisp data.
21302
21303 * indent.c (Fmove_to_column): Use EMACS_INT for buffer positions.
21304
213052007-09-25 Jason Rumney <jasonr@gnu.org>
21306
21307 * frame.c (make_terminal_frame): Remove special case for WINDOWSNT.
21308
21309 * w32console.c (create_w32cons_output): Remove.
21310
21311 * term.c (init_tty): Call init_sys_modes on WINDOWSNT also.
21312
21313 * sysdep.c (init_sys_modes): Use set_terminal_modes_hook.
21314 (reset_sys_modes): Use reset_terminal_modes_hook.
21315
213162007-09-24 Stefan Monnier <monnier@iro.umontreal.ca>
21317
21318 * eval.c (do_autoload): Don't output any message.
21319
213202007-09-24 Juri Linkov <juri@jurta.org>
21321
21322 * emacs.c (standard_args): Change priority of "--no-splash"
21323 from 40 to 3. Add "--no-desktop" with the same priority.
21324
213252007-09-23 Dmitry Antipov <dmantipov@yandex.ru>
21326
21327 * alloc.c (gc_sweep): Check cons cell mark bits word by word
21328 and optimize the case where they are all 1.
21329
213302007-09-23 Johannes Weiner <hannes@saeurebad.de>
21331
21332 * lisp.h (abs): Define if not defined.
21333 * keyboard.c, sound.c, w32term.c, xfaces.c, xterm.c:
21334 Don't define `abs', since it's defined in lisp.h.
21335
213362007-09-22 Eli Zaretskii <eliz@gnu.org>
21337
21338 * term.c (DEV_TTY): New macro. Provide a definition for MS-Windows.
21339 (FRAME_TERMCAP_P) [WINDOWSNT]: Don't define to zero.
21340 (Fcontrolling_tty_p, Fresume_tty, dissociate_if_controlling_tty)
21341 (init_tty): Use DEV_TTY instead of "/dev/tty".
21342 [WINDOWSNT]: No need to protect from NAME arg being null.
21343
213442007-09-21 Dan Nicolaescu <dann@ics.uci.edu>
21345
21346 * term.c (Fsuspend_tty): Run suspend-tty-functions before cleaning
21347 up the tty state.
21348
213492007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
21350
21351 * termhooks.h (term_gpm): Delete. Use gpm_tty's NULLness instead.
21352 (gpm_tty): Change its type.
21353 * term.c (term_gpm): Delete. Use gpm_tty's NULLness instead.
21354 (gpm_tty): Change its type and initialize it.
21355 (Fterm_open_connection): Check the frame is indeed a tty.
21356 Use the new gpm_tty.
21357 (Fterm_close_connection): Use the new gpm_tty.
21358 * keyboard.c (tty_read_avail_input): Use the new gpm_tty.
21359 * sysdep.c (init_sys_modes): term_gpm -> gpm_tty.
21360
213612007-09-21 Juanma Barranquero <lekktu@gmail.com>
21362
21363 * w32term.c (x_draw_glyph_string): Use strike_through_color, not
21364 underline_color, to draw strike-through.
21365
213662007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
21367
21368 * lisp.h (allocate_terminal): Declare.
21369
21370 * window.c (candidate_window_p): Consider frames that are being placed
21371 by the user as somewhere between visible and iconified.
21372 (window_loop): Prefer windows on the current frame.
21373 (Fselect_window): Move the use of select-frame to the beginning so we
21374 can just delegate all the work (it'll call us back anyway).
21375
21376 * frame.c (Qdisplay_environment_variable):
21377 * frame.h (Qdisplay_environment_variable): Delete.
21378
21379 * .gdbinit (xbacktrace): Print the arg's address rather than the value
21380 of the first arg, since that value may be a union.
21381
21382 * callproc.c (child_setup, getenv_internal): Use the frame's `display'
21383 parameter rather than Qdisplay_environment_variable. If all else
21384 fails, look for DISPLAY in initial-environment.
21385
213862007-09-21 Glenn Morris <rgm@gnu.org>
21387
21388 * Makefile.in (emacstool): Remove target.
21389 (lisp, shortlisp): Remove termdev.elc.
21390
213912007-09-21 Markus Triska <markus.triska@gmx.at>
21392
21393 * xterm.c (x_delete_display): Compile session management conditionally.
21394
213952007-09-20 Stefan Monnier <monnier@iro.umontreal.ca>
21396
21397 * callproc.c (getenv_internal_1): New function.
21398 (getenv_internal): Use it.
21399 (Fgetenv_internal): Use it. Accept an env-list as optional arg.
21400
21401 * terminal.c (get_terminal): Don't accept ints to represent terminals.
21402 (Fterminal_name, Fterminal_parameters, Fterminal_parameter)
21403 (Fset_terminal_parameter): Work with dead terminals as well.
21404 (Fmodify_terminal_parameters): Remove.
21405
21406 * terminal.c (get_terminal): Handle terminals.
21407 Make sure the terminal returned is live.
21408 (create_terminal): Use allocate_terminal.
21409 (mark_terminals): Move to alloc.c.
21410 (delete_terminal): Use terminal->name as liveness status.
21411 NULL out fields after freeing their contents.
21412 Don't deallocate the object.
21413 (Fframe_terminal): Use FRAME_TERMINAL. Return the terminal object
21414 rather than an int.
21415 (Fterminal_live_p): Accept non-integer arguments.
21416 (Fterminal_list): Return terminal objects rather than an ints.
21417
21418 * alloc.c (enum mem_type): New member for `terminal' objects.
21419 (allocate_terminal): New function.
21420 (mark_maybe_pointer, valid_lisp_object_p, mark_object):
21421 Handle terminals.
21422 (mark_terminal): New fun.
21423 (mark_terminals): Move from terminal.c.
21424
21425 * term.c (get_tty_terminal): Don't treat output_initial specially.
21426 (Fsuspend_tty, Fresume_tty): Use terminal objects rather than ints.
21427 (delete_tty): Use terminal->name as liveness status.
21428
21429 * termhooks.h (struct terminal): Make it into a pseudovector.
21430 Remove `deleted' replaced by checking `name's nullness.
21431
21432 * print.c (print_object): Handle terminals.
21433
21434 * lisp.h (enum pvec_type): New `terminal' pseudovector.
21435 (XTERMINAL, XSETTERMINAL, TERMINALP, GC_TERMINALP): New macros.
21436
21437 * frame.c (make_terminal_frame):
21438 * keyboard.c (tty_read_avail_input):
21439 * w32term.c (x_delete_terminal):
21440 * xfns.c (Fx_create_frame, x_create_tip_frame):
21441 * xterm.c (x_delete_terminal): Use terminal->name as liveness status.
21442
214432007-09-20 Glenn Morris <rgm@gnu.org>
21444
21445 * process.c (Fmake_network_process): Doc fix.
21446
214472007-09-19 Jason Rumney <jasonr@gnu.org>
21448
21449 * dispextern.h (w32_init_fringe, mac_init_fringe): Declare rif argument.
21450
214512007-09-19 Michaël Cadilhac <michael@cadilhac.name>
21452
21453 * coding.c (detect_eol_type, detect_eol_type_in_2_octet_form):
21454 Fix a C warning regarding variable constness.
21455
21456 * xterm.c (handle_one_xevent): Fix a C warning.
21457
214582007-09-18 Jason Rumney <jasonr@gnu.org>
21459
21460 * w32fns.c (Fx_focus_frame): Rename from Fw32_focus_frame.
21461
214622007-09-17 Jan Djärv <jan.h.d@swipnet.se>
21463
21464 * gtkutil.c (gdpy_def): New variable.
21465 (xg_initialize): Initialize gdpy_def.
21466 (xg_display_close): If no other display exists, set gdpy_def to a
21467 new connection.
21468
214692007-09-16 Jan Djärv <jan.h.d@swipnet.se>
21470
21471 * gtkutil.c (xg_get_image_for_pixmap): Always create a GdkPixbuf
21472 when we have no file name for the icon.
21473 (xg_tool_bar_expose_callback): Remove.
21474 (xg_create_tool_bar): Don't connect expose signal to
21475 xg_tool_bar_expose_callback.
21476 (xg_get_file_with_chooser): Move GCPRO1 after declarations.
21477
214782007-09-16 Andreas Schwab <schwab@suse.de>
21479
21480 * alloc.c (reset_malloc_hooks): Set the hooks to the previous
21481 values instead of zapping them.
21482
214832007-09-14 Glenn Morris <rgm@gnu.org>
21484
21485 * fringe.c (init_fringe_bitmap) <swap_nibble>: Move to file scope.
21486 * gtkutil.c (xg_separator_p) <separator_names>: Move to file scope.
21487 * image.c (our_memory_fill_input_buffer) <buffer>: Move to file
21488 scope and rename to omfib_buffer for clarity.
21489 (gif_load) <interlace_start, interlace_increment>: Move to file scope.
21490
214912007-09-14 Kenichi Handa <handa@m17n.org>
21492
21493 * xterm.c (handle_one_xevent): Skip decoding if nbytes is zero.
21494
214952007-09-13 Jason Rumney <jasonr@gnu.org>
21496
21497 * fringe.c (w32_init_fringe, mac_init_fringe): Add rif argument.
21498
21499 * w32term.c (w32_term_init): Pass rif to w32_init_fringe.
21500
21501 * macterm.c (mac_initialize): Don't call mac_init_fringe here.
21502 (mac_term_init): Call here instead, passing rif.
21503
215042007-09-13 Glenn Morris <rgm@gnu.org>
21505
21506 * s/hpux.h: No longer define `static' as nothing.
21507
215082007-09-13 Johan Bockgård <bojohan@gnu.org>
21509
21510 * callint.c (Fcall_interactively): Remove unused var `fun'.
21511
215122007-09-12 Romain Francoise <romain@orebokech.com>
21513
21514 * window.c (prefer_window_split_horizontally, display_buffer):
21515 Revert 2007-09-08 change.
21516
215172007-09-12 Glenn Morris <rgm@gnu.org>
21518
21519 * alloca.c: Remove file.
21520 * Makefile.in (alloca): Do not undef.
21521 (allocaobj, alloca.o): Remove.
21522 (otherobj): Remove allocaobj.
21523 * keyboard.c (command_loop_1): Remove #ifdef C_ALLOCA block.
21524 * regex.c (C_ALLOCA): Remove all references and code that was only
21525 used when this was defined.
21526 * search.c (boyer_moore): Remove #ifdef C_ALLOCA block.
21527 * xmenu.c (xmenu_show): Remove #ifdef C_ALLOCA block.
21528 * m/ibms390x.h, m/sh3el.h (C_ALLOCA): Remove references to this.
21529
21530 * Makefile.in (SOURCES, unlock, relock): Delete.
21531
21532 * gtkutil.c (cnt): Rename to menu_grab_callback_cnt for clarity.
21533 (menu_grab_callback): All uses changed.
21534
21535 * xselect.c (cnt): Rename to x_reply_selection_request_cnt for clarity.
21536 (x_reply_selection_request): All uses changed.
21537
215382007-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
21539
21540 * lread.c (load_warn_old_style_backquotes): Change message to look
21541 better when it appears in the middle of byte-compiler messages.
21542
215432007-09-10 Dan Nicolaescu <dann@ics.uci.edu>
21544
21545 * s/darwin.h (MULTI_KBOARD): Only define for Carbon.
21546
21547 * xterm.c (x_create_terminal): Add comment.
21548
21549 * term.c (clear_tty_hooks, set_tty_hooks): Add comments.
21550
215512007-09-10 Richard Stallman <rms@gnu.org>
21552
21553 * xterm.c (x_term_init): Give error if can't open DISPLAY_NAME.
21554
215552007-09-10 Michaël Cadilhac <michael@cadilhac.name>
21556
21557 * lisp.h (struct Lisp_Subr): Rename `prompt' field to `intspec'.
21558 (DEFUN): Document `intspec', use it instead of `prompt'.
21559
21560 * eval.c (Fcommandp): Change `->prompt' to `->intspec'.
21561
21562 * data.c (Finteractive_form): If the interactive specification starts
21563 with a `(', use it as a Lisp form.
21564
21565 * fileio.c (Fset_file_modes): Add an interactive spec that reads a file
21566 name and file modes.
21567
21568 * callint.c (Fcall_interactively): Comment fixes.
21569
215702007-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
21571
21572 * callint.c (Fcall_interactively): Use Finteractive_form also for subrs
21573 and compiled functions.
21574
215752007-09-08 Fredrik Axelsson <f.axelsson@gmail.com>
21576
21577 * window.c (prefer_window_split_horizontally): New variable.
21578 (display_buffer): Consider splitting window horizontally depending
21579 on prefer_window_split_horizontally.
21580
215812007-09-08 Eli Zaretskii <eliz@gnu.org>
21582
21583 * sysdep.c [WINDOWSNT]: Don't include sysselect.h.
21584
215852007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
21586
21587 * s/cygwin.h (GC_MARK_STACK): Enable conservative stack marking.
21588
21589 * frame.c (x_set_frame_parameters): Check number is positive before
21590 using XFASTINT.
21591
21592 * window.c (freeze_window_start): Don't presume selected_window holds
21593 a window object.
21594 (Fdisplay_buffer): Remove `register' since `buffer' needs to be gcpro'd.
21595
215962007-09-07 Angelo Graziosi <Angelo.Graziosi@roma1.infn.it> (tiny change)
21597
21598 * term.c (dissociate_if_controlling_tty): Call setsid on CYGWIN.
21599
216002007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
21601
21602 * window.c (Vsplit_window_preferred_function): New var.
21603 (Fdisplay_buffer): Use it.
21604 (syms_of_window): Export, and initialize it.
21605
216062007-09-06 Pixel <pixel@mandriva.com> (tiny change)
21607
21608 * image.c (gif_load): Fix bug: Handle nonexistent colormap.
21609
216102007-09-06 Glenn Morris <rgm@gnu.org>
21611
21612 * gtkutil.c (menu_grab_callback) <cnt>:
21613 * xselect.c (x_reply_selection_request) <cnt>: Move static
21614 variable to file scope.
21615
216162007-09-06 Stefan Monnier <monnier@iro.umontreal.ca>
21617
21618 * xdisp.c (redisplay_internal): Make sure Elisp code always sees
21619 consistent values of selected_frame and selected_window.
21620
216212007-09-04 Jason Rumney <jasonr@gnu.org>
21622
21623 * w32console.c (initialize_w32_display): Zero unused hooks.
21624
216252007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
21626
21627 * term.c (Vsuspend_tty_functions, Vresume_tty_functions)
21628 (syms_of_term, Fsuspend_tty, Fresume_tty): Undo previous change.
21629
216302007-09-04 Jason Rumney <jasonr@gnu.org>
21631
21632 * term.c (init_tty) [WINDOWSNT]: Add hooks that are not accessible
21633 in w32console.c. Set up input. Remove XXX comments that have been
21634 confirmed as correct.
21635
21636 * s/ms-w32.h (MULTI_KBOARD): Define.
21637
21638 * w32console.c (one_and_only_w32cons): Remove.
21639 (initialize_w32_display): Take terminal argument.
21640
21641 * term.c (init_tty) [WINDOWSNT]: Pass terminal to
21642 initialize_w32_display.
21643 (init_tty) [MULTI_KBOARD]: Include this code on WINDOWSNT too.
21644
21645 * termhooks.h (enum event_kind) <HORIZ_WHEEL_EVENT>: New event.
21646
21647 * keyboard.c (discard_mouse_events): Discard it.
21648 (make_lispy_event): Translate it to a lisp event.
21649 (lispy_wheel_names): Add wheel-left and right events.
21650 (syms_of_keyboard): Enlarge wheel_syms.
21651
21652 * w32fns.c (w32_wnd_proc) <WM_DROPFILES>: Merge with WM_MOUSEWHEEL.
21653 <WM_MOUSEHWHEEL>: Pass new system message to lisp.
21654
21655 * w32term.h (WM_MOUSEHWHEEL): Define if system headers don't.
21656
21657 * w32term.c (construct_mouse_wheel): Make HORIZ_WHEEL_EVENT
21658 from WM_MOUSEHWHEEL.
21659 (w32_read_socket) <WM_MOUSEHWHEEL>: Treat as WM_MOUSEWHEEL.
21660
21661 * w32fns.c (x_create_tip_frame) [MULTI_KBOARD]: Get keyboard from
21662 terminal.
21663
21664 * w32term.c (w32_create_terminal) [MULTI_KBOARD]: Create a new
21665 keyboard for the terminal.
21666
216672007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
21668
21669 * term.c (Vsuspend_tty_hook): Rename from Vsuspend_tty_functions.
21670 (Vresume_tty_hook): Rename from Vresume_tty_functions.
21671 (syms_of_term): Rename suspend-tty-functions to suspend-tty-hook
21672 and resume-tty-function to resume-tty-hook.
21673 (Fsuspend_tty, Fresume_tty): Use new names.
21674
216752007-09-02 Jan Djärv <jan.h.d@swipnet.se>
21676
21677 * gtkutil.c (update_frame_tool_bar): Handle stock name as a named icon
21678 if it starts with "n:".
21679
216802007-08-31 Jan Djärv <jan.h.d@swipnet.se>
21681
21682 * gtkutil.c (update_frame_tool_bar): Initialize wbutton to NULL.
21683
216842007-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
21685
21686 * frame.h:
21687 * frame.c (Qterm_environment_variable): Remove.
21688 (syms_of_frame): Don't init and staticpro it.
21689
21690 * callproc.c (getenv_internal): Remove special case for $TERM.
21691
21692 * callproc.c (Vinitial_environment): New variable.
21693 (set_initial_environment): Initialize it.
21694 (syms_of_callproc): Declare it.
21695 (child_setup): Don't mess with TERM via Qterm_environment_variable; the
21696 TERM under which a process runs is never related to the TERM in which
21697 Emacs is running.
21698
216992007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
21700
21701 * config.in (HAVE_WINDOW_SYSTEM): Don't undef MULTI_KBOARD here...
21702 * s/darwin.h: ... do it here.
21703
217042007-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
21705
21706 * lisp.h (set_initial_environment): Rename from set_global_environment.
21707
21708 * Makefile.in (${etc}DOC): Re-add a ${EXEEXT} which seems to have been
21709 removed by mistake on the multi-tty branch.
21710
21711 * frame.c (make_terminal_frame): Yet Another Int/Lisp_Object Mixup.
21712 (Fmodify_frame_parameters): Return a value.
21713
21714 * image.c (png_load): Comment-out var only used in commented-out code.
21715
21716 * term.c (mark_ttys): Don't bother checking top_frame (incorrectly)
21717 before passing it to mark_object.
21718
21719 * xfaces.c (internal_resolve_face_name): Return a value.
21720 (internal_resolve_face_name, resolve_face_name_error): Comment out.
21721
21722 * xfns.c (check_x_display_info): Yet Another Int/Lisp_Object Mixup.
21723 (x_icon): Comment-out var only used in commented-out code.
21724
217252007-08-29 Romain Francoise <romain@orebokech.com>
21726
21727 * keyboard.c (Fset_input_mode): Don't call `Fset_quit_char' if
21728 QUIT hasn't been provided.
21729
217302007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
21731
21732 * callproc.c (child_setup, getenv_internal): Use the
21733 display-environment-variable and term-environment-variable frame params.
21734 (set_initial_environment): Initialise Vprocess_environment.
21735
21736 * config.in: Disable multi-keyboard support on a mac.
21737
21738 * frame.c (Qterm_environment_variable)
21739 (Qdisplay_environment_variable): New variables.
21740 (syms_of_frame): Intern and staticpro them.
21741 (Fmake_terminal_frame): Disable output method test.
21742
21743 * frame.h: Declare them here.
21744
21745 * macfns.c (x_set_mouse_color): Get rif from the frame.
21746 (x_set_tool_bar_lines): Don't use updating_frame.
21747 (mac_window): Add 2 new parameters for consistency with other systems.
21748 (Fx_create_frame): Fix doc string. Rename the parameter. Set the
21749 frame parameters following what is done in X11 and w32. Don't use
21750 FRAME_MAC_DISPLAY_INFO.
21751 (Fx_open_connection, start_hourglass): Remove window-system check.
21752 (x_create_tip_frame): Get the keyboard from the terminal.
21753
21754 * macmenu.c: Reorder includes.
21755 (Fx_popup_menu): Use terminal specific mouse_position_hook.
21756
21757 * macterm.c (XTset_terminal_modes, XTreset_terminal_modes): Add a
21758 terminal parameter.
21759 (x_clear_frame): Add a frame parameter.
21760 (note_mouse_movement): Get rif from the frame.
21761 (mac_term_init): Initialize the terminal.
21762 (mac_initialize): Make static and move terminal initialization ...
21763 (mac_create_terminal): ... to this new function.
21764
21765 * macterm.h (struct mac_display_info): Add terminal.
21766 (mac_initialize): Delete declaration.
21767
21768 * puresize.h (BASE_PURESIZE): Increase base value to 1164000.
21769
21770 * sysdep.c: Comment out text after #endif.
21771
21772 * term.c (init_tty): Only use terminal->kboard when MULTI_KBOARD
21773 is defined. Better initialize ttys in windows. Use terminal
21774 specific mouse_position_hook.
21775
21776 * termhooks.h (union display_info): Add mac_display_info.
21777
21778 * w32fns.c (Fx_create_frame): Use kboard from the terminal.
21779 Set the default minibuffer frame, window_system and the rest of the
21780 frame parameters following what is done in X11.
21781
21782 * w32term.c (w32_initialize): Make static.
21783
21784 * xselect.c (x_handle_selection_clear): Only access
21785 terminal->kboard when MULTI_KBOARD is defined.
21786
21787 * s/darwin.h (SYSTEM_PURESIZE_EXTRA): Define here.
21788 (SYSTEM_PURESIZE_EXTRA): Only define on Carbon.
21789
217902007-08-29 Jason Rumney <jasonr@gnu.org>
21791
21792 * frame.c (Fdelete_frame): Only get kboard when MULTI_KBOARD defined.
21793 (make_terminal_frame) [WINDOWSNT]: Initialize terminal.
21794
21795 * fringe.c (w32_init_fringe w32_reset_fringes) [HAVE_NTGUI]:
21796 (mac_init_fringe) [MAC_OS]: Get rif from selected_frame.
21797
21798 * keyboard.c (restore_kboard_configuration): Only define when
21799 MULTI_KBOARD defined.
21800
21801 * makefile.w32-in: Update dependancies from Makefile.in.
21802 (OBJ1): Add terminal.$(O)
21803
21804 * term.c (dissociate_if_controlling_tty) [WINDOWSNT]:
21805 Don't define function body.
21806 (init_tty) [WINDOWSNT]: Use selected_frame for initializing.
21807
21808 * termhooks.h (display_info) [WINDOWSNT]: Add w32.
21809
21810 * w32.c (request_sigio, unrequest_sigio): Remove.
21811
21812 * w32console.c (w32con_move_cursor, w32con_clear_to_end)
21813 (w32con_clear_frame, w32con_clear_end_of_line)
21814 (w32con_ins_del_lines, w32con_insert_glyphs, w32con_write_glyphs)
21815 (w32con_delete_glyphs, w32con_set_terminal_window)
21816 (scroll_line, w32_sys_ring_bell): Add frame arg.
21817 (w32con_set_terminal_modes, w32con_reset_terminal_modes):
21818 Add terminal arg.
21819 (PICK_FRAME): Remove.
21820 (w32con_write_glyphs): Use frame specific terminal coding.
21821 (one_and_only_w32cons): New global variable.
21822 (initialize_w32_display): Use it for storing hooks.
21823 (create_w32cons_output): New function.
21824
21825 * w32inevt.c, w32inevt.h (w32_console_read_socket): Make first
21826 arg a frame.
21827
21828 * w32fns.c (x_create_tip_frame): Set terminal and ref count.
21829 Set window_system.
21830 (x_set_tool_bar_lines): Don't use updating_frame.
21831 (Fx_create_frame): Set terminal and ref count.
21832 (Fx_open_connection): Remove window-system check.
21833
21834 * w32menu.c (Fx_popup_menu): Use terminal specific mouse_position_hook.
21835
21836 * w32term.c (w32_term_init): Call add_keyboard_wait_descriptor.
21837 (w32_set_terminal_modes, w32_reset_terminal_modes): Add terminal arg.
21838 (x_clear_frame, x_delete_glyphs, w32_ring_bell, x_ins_del_lines):
21839 Add frame arg.
21840 (x_delete_terminal, w32_create_terminal): New functions.
21841 (w32_term_init): Create a terminal.
21842 (w32_initialize): Move terminal specific initialization to
21843 w32_create_terminal.
21844
21845 * w32term.h (x_output): Remove foreground_pixel and background_pixel.
21846 (w32_clear_rect, w32_clear_area): Use background from frame.
21847 (w32_display_info): Add terminal.
21848 (w32_sys_ring_bell, x_delete_display): Declare here.
21849
21850 * xdisp.c (display_menu_bar) [HAVE_NTGUI]: Check frame type.
21851
21852 * s/ms-w32.h (SYSTEM_PURESIZE_EXTRA): Bump to 50k.
21853
218542007-08-29 Kalle Olavi Niemitalo <kon@iki.fi> (tiny change)
21855
21856 * keyboard.c (interrupt_signal, handle_interrupt, Fset_quit_char):
21857 Fix get_named_tty calls for the controlling tty.
21858
218592007-08-29 ARISAWA Akihiro <ari@mbf.ocn.ne.jp> (tiny change)
21860
194d44e7 21861 * term.c (dissociate_if_controlling_tty) [USG]: Fix parse error.
aac0c6e3
MR
21862
218632007-08-29 Yoshiaki Kasahara <kasahara@nc.kyushu-u.ac.jp> (tiny change)
21864
21865 * term.c (tty_insert_glyphs): Add missing first parameter.
21866
218672007-08-29 Károly Lőrentey <karoly@lorentey.hu>
21868
21869 * buffer.c (Fbuffer_list, Fbury_buffer):
21870 Take frame->buried_buffer_list into account.
21871
21872 * cm.c (current_tty): New variable, for cmputc().
21873 (cmputc): Use it.
21874 (cmcheckmagic): Add tty parameter, look up terminal streams there.
21875 (calccost): Add tty parameter. Use emacs_tputs() instead of tputs().
21876 (cmgoto): Add tty parameter. Pass it on to calccost().
21877 Use emacs_tputs() instead of tputs().
21878
21879 * cm.h (emacs_tputs): New macro to set current_tty, and then call
21880 tputs().
21881 (current_tty): New variable, for cmputc().
21882 (cmcheckmagic, cmputc, cmgoto): Add prototypes.
21883
21884 * eval.c (unwind_to_catch): Don't call x_fully_uncatch_errors.
21885 (internal_condition_case, internal_condition_case_1)
21886 (internal_condition_case_2): Don't abort when x_catching_errors.
21887
21888 * fns.c (Fyes_or_no_p): Don't try to open an X dialog on tty terminals.
21889 (Fy_or_n_p): Likewise. Use temporarily_switch_to_single_kboard to
21890 prevent crashes caused by bogus longjmps in read_char.
21891
21892 * keymap.h (Fset_keymap_parent): Add EXFUN.
21893
21894 * macterm.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL)
21895 * w32term.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
21896 Remove redundant definition.
21897
21898 * macfns.c (x_set_mouse_color, x_make_gc):
21899 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
21900
21901 * w32term.c (x_free_frame_resources):
21902 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
21903 (w32_initialize): Use the accessor macros for terminal characteristics.
21904
21905 * macterm.c (mac_initialize): Use Fset_input_interrupt_mode.
21906 Use the accessor macros for terminal characteristics.
21907 * msdos.c (internal_terminal_init): Use the accessor macros for
21908 terminal characteristics.
21909 (ScreenVisualBell, internal_terminal_init):
21910 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
21911
21912 * termopts.h (no_redraw_on_reenter): Declare.
21913
21914 * alloc.c (emacs_blocked_malloc): Disable mallopt call.
21915 (mark_terminals, mark_ttys): Declare.
21916 (Fgarbage_collect): Call them.
21917 (mark_object): Mark buried_buffer_list.
21918
21919 * prefix-args.c: Include stdlib.h for exit.
21920
21921 * syssignal.h: Add comment.
21922
21923 * indent.c: Include stdio.h.
21924
21925 * window.h (Vinitial_window_system): Declare.
21926 (Vwindow_system): Delete declaration.
21927
21928 * fontset.c (Finternal_char_font): Use FRAME_RIF.
21929
21930 * image.c (lookup_image): Don't initialize `c' until the xasserts
21931 have been run.
21932
21933 * gtkutil.c (xg_create_frame_widgets): Use FRAME_BACKGROUND_PIXEL and
21934 FRAME_FOREGROUND_PIXEL.
21935
21936 * print.c (print_preprocess): Don't lose print_depth levels while
21937 iterating.
21938
21939 * widget.c (update_from_various_frame_slots):
21940 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
21941
21942 * window.c (set_window_buffer): Don't call clear_mouse_face on tty
21943 frames.
21944 (window_internal_height): Remove bogus make_number call.
21945 (init_window_once): Call make_terminal_frame with two zero parameters.
21946
21947 * fileio.c (Fread_file_name): Update comment.
21948
21949 * callint.c (Fcall_interactively):
21950 Use temporarily_switch_to_single_kboard instead of single_kboard_state.
21951 Make sure it is correctly unwound.
21952
21953 * xsmfns.c (x_session_close): New function.
21954
21955 * coding.h (terminal_coding, safe_terminal_coding, keyboard_coding):
21956 Delete declarations.
21957
21958 * xterm.h: Remove declaration for x_fully_uncatch_errors.
21959 (x_output): Remove background_pixel and foreground_pixel fields.
21960 (x_display_info): Add new field TERMINAL. Remove KBOARD field.
21961 (x_delete_device, x_session_close): Declare.
21962
21963 * lread.c: Include setjmp.h. Update declaration of `read_char'.
21964 (read_filtered_event): Call `read_char' with a local
21965 `wrong_kboard_jmpbuf'.
21966
21967 * minibuf.c (read_minibuf): Call temporarily_switch_to_single_kboard.
21968 Don't call single_kboard_state. Use FRAME_RIF.
21969
21970 * process.c (Fmake_network_process): Don't unrequest_sigio on modern
21971 systems.
21972
21973 * lisp.h (set_process_environment): Rename to `set_global_environment'.
21974 (Fframe_with_environment, Fset_input_meta_mode)
21975 (Fset_quit_char): EXFUN.
21976 (x_create_device, tty_output, terminal, tty_display_info): Declare.
21977 (init_sys_modes, reset_sys_modes): Update prototypes.
21978 (init_all_sys_modes, reset_all_sys_modes): New prototypes.
21979
21980 * keyboard.h (struct kboard): Add new fields Vlocal_function_key_map,
21981 Vlocal_key_translation_map, and Vkeyboard_translate_table.
21982 (Vfunction_key_map, Vkeyboard_translate_table, single_kboard_state):
21983 Delete declarations.
21984 (Vfunction_key_map, Vkey_translation_map, push_kboard, pop_kboard)
21985 (temporarily_switch_to_single_kboard, tty_read_avail_input):
21986 New declarations.
21987
21988 * emacs.c (main): Don't call init_sys_modes(), the new term_init()
21989 already does that during init_display(). Call syms_of_keymap
21990 before syms_of_keyboard. Call `syms_of_terminal'.
21991 Call set_initial_environment, not set_process_environment.
21992 (shut_down_emacs): Call reset_all_sys_modes() instead of
21993 reset_sys_modes().
21994
21995 * xfaces.c (x_free_gc): Protect xassert with GLYPH_DEBUG.
21996 (internal_resolve_face_name, resolve_face_name_error): New functions.
21997 (resolve_face_name): Protect against loops and errors thrown by Fget.
21998 (realize_default_face): Don't use FRAME_FONT unless frame is an X frame.
21999 (Ftty_supports_face_attributes_p): Update tty_capable_p call.
22000
22001 * scroll.c: Replace CURTTY() with local variables throughout the
22002 file (where applicable).
22003 (calculate_scrolling, calculate_direct_scrolling)
22004 (scrolling_1, scroll_cost): Use the accessor macros for terminal
22005 characteristics.
22006
22007 * keymap.c (Vfunction_key_map): Remove.
22008 (Fdescribe_buffer_bindings): Update references to Vfunction_key_map.
22009 (syms_of_keymap): Remove DEFVAR for Vfunction_key_map.
22010 (Vkey_translation_map): Remove.
22011 (syms_of_keymap): Remove DEFVAR for key-translation-map.
22012 (Fdescribe_buffer_bindings)
22013 (read_key_sequence, init_kboard, syms_of_keyboard, mark_kboards):
22014 Update for terminal-local key-translation-map.
22015
22016 * Makefile.in (callproc.o): Update dependencies.
22017 (lisp, shortlisp): Add termdev.elc.
22018 (obj): Add terminal.o.
22019 (terminal.o): Add dependencies.
22020 [HAVE_CARBON]: Make terminal.o depend on macgui.h.
22021 (data.o, fns.o): Add termhooks.h dependency.
22022 (SOME_MACHINE_LISP): Add dnd.elc.
22023 (minibuf.o): Fix typo.
22024 Update dependencies.
22025
22026 * data.c (do_symval_forwarding, store_symval_forwarding)
22027 (find_symbol_value): Use the selected frame's keyboard, not
22028 current_kboard.
22029
22030 * .gdbinit (init_sys_modes): Use Vinitial_window_system instead of
22031 Vwindow_system.
22032
22033 * xmenu.c (Fx_menu_bar_open) [USE_X_TOOLKIT, USE_GTK]: Rename from
22034 Fmenu_bar_open.
22035 (syms_of_xmenu): Update defsubr.
22036 (mouse_position_for_popup, Fx_popup_menu)
22037 (Fx_popup_dialog, x_activate_menubar, update_frame_menubar)
22038 (set_frame_menubar, free_frame_menubar)
b97439ce 22039 (create_and_show_popup_menu, xmenu_show)
aac0c6e3
MR
22040 (create_and_show_dialog, xdialog_show, xmenu_show): Abort if not
22041 an X frame.
22042
22043 * xselect.c (x_own_selection): Abort if not an X frame.
22044 (some_frame_on_display): Check if it is an X frame.
22045 (x_handle_selection_clear): Deal with MULTI_KBOARD.
22046
22047 * coding.c: Include frame.h and termhooks.h.
22048 (terminal_coding, keyboard_coding): Delete.
22049 (Fset_terminal_coding_system_internal)
22050 (Fset_keyboard_coding_system_internal)
22051 (Fkeyboard_coding_system)
22052 (Fterminal_coding_system): Add a terminal parameter.
22053 Get terminal_coding from the terminal.
22054 (init_coding_once): Don't call setup_coding_system here.
22055
22056 * dispextern.h (set_scroll_region, turn_off_insert)
22057 (turn_off_highlight, background_highlight, clear_end_of_line_raw)
22058 (tty_clear_end_of_line, tty_setup_colors)
22059 (delete_tty, updating_frame)
22060 (produce_special_glyphs, produce_glyphs, write_glyphs)
22061 (insert_glyphs): Remove.
22062 (raw_cursor_to, clear_to_end, tty_turn_off_insert)
22063 (tty_turn_off_highlight, get_tty_size): Add declaration.
22064 (tabs_safe_p, init_baud_rate, get_tty_terminal): Update prototypes.
22065
22066 * frame.h (enum output_method): Add output_initial.
22067 (struct x_output): Delete.
22068 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
22069 Access foreground_pixel and background_pixel directly from the frame.
22070 (tty_display): Delete.
22071 (struct frame): Add buried_buffer_list, foreground_pixel,
22072 background_pixel and terminal. Delete kboard.
22073 (union output_data): Add tty.
22074 (FRAME_KBOARD): Get the kboard from the terminal.
22075 (FRAME_INITIAL_P): New macro.
22076 (Qtty, Qtty_type, Qterminal, Qterminal_live_p, Qenvironment)
22077 (Qterm_environment_variable, Qdisplay_environment_variable)
22078 (make_terminal_frame, Qburied_buffer_list, Qwindow_system):
22079 New declarations.
22080
22081 * termchar.h (tty_output, tty_display_info): New structures.
22082 (tty_list): Declare.
22083 (FRAME_TTY, CURTTY): New macros.
22084 (must_write_spaces, min_padding_speed, fast_clear_end_of_line)
22085 (line_ins_del_ok, char_ins_del_ok, scroll_region_ok)
22086 (scroll_region_cost, memory_below_frame, fast_clear_end_of_line)
22087 (dont_calculate_costs, no_redraw_on_reenter): Remove declarations.
22088
22089 * callproc.c: Include frame.h and termhooks.h, for terminal
22090 parameters.
22091 (add_env): New function.
22092 (child_setup): Use it.
22093 (child_setup, getenv_internal): Handle the new Vprocess_environment.
22094 (getenv_internal): Fix get_terminal_param call.
22095 (Fgetenv_internal, egetenv): Update doc.
22096 (syms_of_callproc): Initialize Vprocess_environment to nil.
22097 Register and initialize them. Remove obsolete defvars. Update doc
22098 strings.
22099 (child_setup): Handle Vlocal_environment_variables.
22100 (getenv_internal): Add terminal parameter.
22101 Handle Vlocal_environment_variables.
22102 (Fgetenv_internal): Add terminal parameter.
22103 (child_setup, getenv_internal, Fgetenv_internal): Store the local
22104 environment in a frame (not terminal) parameter. Update doc strings.
22105 (set_initial_environment): Rename from set_global_environment.
22106 Store Emacs environment in initial frame parameter.
22107
22108 * xdisp.c (redisplay_internal): Update references to
22109 `previous_terminal_frame'.
22110 (display_mode_line, Fformat_mode_line): Replace calls to
22111 `push_frame_kboard' with `push_kboard'.
22112 (get_glyph_string_clip_rects): Add extra parentheses and
22113 braces to prevent compiler warnings.
22114 (calc_pixel_width_or_height): Add xassert to check that the
22115 frame is alive. Don't call `lookup_image' on a termcap frame.
22116 (message2_nolog, message3_nolog, redisplay_internal)
22117 (set_vertical_scroll_bar, redisplay_window, check_x_display_info)
22118 (x_set_scroll_bar_foreground, x_set_scroll_bar_background)
22119 (Fx_create_frame, Fxw_display_color_p, Fx_display_grayscale_p)
22120 (Fx_display_pixel_width, Fx_display_pixel_height)
22121 (Fx_display_planes, Fx_display_color_cells)
22122 (Fx_server_max_request_size, Fx_server_vendor, Fx_server_version)
22123 (Fx_display_screens, Fx_display_mm_height, Fx_display_mm_width)
22124 (Fx_display_backing_store, Fx_display_visual_class)
22125 (Fx_display_save_under, Fx_close_connection, x_create_tip_frame):
22126 Use FRAME_TERMINAL_P, FRAME_WINDOW_P, FRAME_TTY and FRAME_RIF.
22127
22128 * xfns.c (x_set_foreground_color x_set_background_color)
22129 (x_set_mouse_color, x_set_cursor_color, x_make_gc):
22130 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
22131 (Fx_create_frame, x_create_tip_frame, build_string, x_window)
22132 (Fx_create_frame, x_create_tip_frame): Don't create frames on a
22133 terminal that is being deleted.
22134 (Fx_create_frame): Use `store_frame_param' to set `window-system'
22135 frame parameter, and make sure it overrides any user-supplied setting.
22136 (Fx_close_connection, Fx_synchronize): Unify argument names with
22137 the rest of the DEFUNs.
22138
22139 * dispnew.c (Fsend_string_to_terminal): Update call to
22140 `get_tty_terminal'.
22141 (Fredraw_frame, Fsend_string_to_terminal)
22142 (Fsend_string_to_terminal, init_display): Use FRAME_RIF,
22143 FRAME_TERMCAP_P and FRAME_TTY.
22144 (window_change_signal): Don't believe width/height values that are
22145 impossibly small.
22146 (Vinitial_window_system): Rename from Vwindow_system.
22147 (termscript, Wcm, rif): Delete.
22148
22149 * termhooks.h (struct terminal): New struct containing the
22150 previously global text display hooks and new members NAME,
22151 DELETED and PARAM_ALIST.
22152 (FRAME_TERMINAL, TERMINAL_TERMINAL_CODING)
22153 (TERMINAL_KEYBOARD_CODING, TERMINAL_ACTIVE_P, FRAME_WINDOW_P)
22154 (FRAME_RIF): New macros.
22155 (get_terminal_param, get_device): New declarations.
22156 (termscript): Delete declaration.
22157
22158 * xterm.c (x_initialize): Use Fset_input_interrupt_mode.
22159 (XTflash, x_free_frame_resources, x_scroll_bar_create)
22160 (x_scroll_bar_set_handle): Use FRAME_BACKGROUND_PIXEL and
22161 FRAME_FOREGROUND_PIXEL.
22162 (x_fully_uncatch_errors): Disable definition.
22163 (x_scroll_bar_expose): Fix reference to foreground pixel.
22164 (XTread_socket): Disable loop on all X displays.
22165 (x_delete_terminal): Don't set terminal->deleted and let
22166 delete_terminal delete the frames on the terminal.
22167 (x_delete_display): Doc update to reflect changes in
22168 delete_terminal.
22169 (x_display_info) <terminal>: Move member earlier in the struct.
22170 (deleting_tty): Remove old variable.
22171 (Fsuspend_tty): Call clear_tty_hooks.
22172 (Fresume_tty, init_tty): Call set_tty_hooks.
22173 (Ftty_display_color_p, Ftty_display_color_cells): Don't throw
22174 errors on X frames.
22175 (x_catch_errors_unwind): Abort if x_error_message is NULL.
22176 (handle_one_xevent): Initialize `f' to NULL.
22177 (x_delete_terminal, x_create_terminal): New functions.
22178 (XTset_terminal_modes, XTreset_terminal_modes)
22179 (XTread_socket, x_connection_closed, x_term_init)
22180 (x_term_init, x_delete_display): Add terminal parameter.
22181 (x_term_init) [!HAVE_GTK_MULTIDISPLAY]: Refuse to create secondary
22182 X connections.
22183
22184 * frame.c: Include termchar.h.
22185 (Qterminal, Qterminal_live_p, Qburied_buffer_list, Qtty, Qtty_type)
22186 (Qwindow_system, Qenvironment, Qterm_environment_variable)
22187 (Qdisplay_environment_variable): New vars.
22188 (Fframep): Deal with output_initial.
22189 (Fframe-live-p): Doc fix.
22190 (Fwindow-system): New function.
22191 (x_set_screen_gamma, store_frame_param): Fix compilation errors.
22192 (make_terminal_frame): Don't create frames on a terminal that is
22193 being deleted. Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
22194 (store_frame_param): Check for found_for_frame before calling XFRAME.
22195 (Fmake_terminal_frame): Handle NULL tty names correctly.
22196 (syms_of_frame): Enhance doc string of `default-frame-alist'.
22197 (Fdelete_frame): Remove unused variable `count'. Don't allow other
22198 frames to refer to a deleted frame in their 'environment parameter.
22199 (Fframe_with_environment): New function.
22200 (syms_of_frame): Defsubr it. Initialize and staticpro Qenvironment.
22201 (get_future_frame_param): New function.
22202 (Fmake_terminal_frame): Use it.
22203 (x_set_frame_parameters, x_set_screen_gamma): Use FRAME_RIF.
22204
22205 * sysdep.c (init_sys_modes, reset_sys_modes): Update for renames.
22206 * sysdep.c (reset_sys_modes): Update for renames.
22207
22208 * keyboard.c (tty_read_avail_input): New function.
22209 (Fset_input_interrupt_mode, Fset_output_flow_control): New functions.
22210 (syms_of_keyboard): Defsubr them.
22211 (Fset_input_meta_mode, Fset_quit_char): New functions.
22212 (Fset_input_mode): Split to above functions.
22213 (read_char_minibuf_menu_prompt): Add wrong_kboard_jmpbuf
22214 parameter. Use it in call to `read_char'.
22215 (read_char): Declare. Update call to `read_char_minibuf_menu_prompt'.
22216 Set wrong_kboard_jmpbuf correctly in recursive calls.
22217 Use current_kboard to access Vkeyboard_translate_table.
22218 Enhance comment before extra longjmp to wrong_kboard_jmpbuf.
22219 Add wrong_kboard_jmpbuf parameter to allow for recursive calls.
22220 Update longjmp invocations. Remember the original current_kboard,
22221 and longjmp to `wrong_kboard_jmpbuf' when a filter, timer or sentinel
22222 changes it. Comment out unnecessary calls to
22223 `record_single_kboard_state' and `any_kboard_state'.
22224 Update recursive calls.
22225 (wrong_kboard_jmpbuf): Remove global variable.
22226 (read_key_sequence): Remove unused variable wrong_kboard_jmpbuf.
22227 Handle deleted interrupted_kboards correctly; that is a legal
22228 case. Add `wrong_kboard_jmpbuf' local variable. Update setjmp
22229 and read_char calls. Abort if interrupted_kboard died in read_char.
22230 (any_kboard_state, single_kboard_state)
22231 (push_frame_kboard): Remove function.
22232 (pop_kboard): Switch out of single_kboard mode if the kboard has
22233 been deleted. Remove unused variable. Help debugging by not
22234 changing current_kboard unnecessarily. Set current_kboard to the
22235 kboard of the selected frame when the stored kboard object has
22236 been deleted before pop_kboard.
22237 (temporarily_switch_to_single_kboard): Change first parameter to a
22238 frame pointer. Throw an error when caller wants to change kboards
22239 while in single_kboard mode. Don't push_kboard if we weren't in
22240 single kboard state. Don't pop_kboard if we popped into any
22241 kboard state.
22242 (restore_kboard_configuration): Abort if pop_kboard changed the
22243 kboard in single_kboard mode. Call pop_kboard only after setting
22244 up single_kboard mode.
22245 (Frecursive_edit): Switch to single_kboard mode only in nested
22246 command loops.
22247 (cmd_error, command_loop, command_loop_1, timer_check):
22248 Comment out unnecessary call to `any_kboard_state' and
22249 `record_single_kboard_state'.
22250 (delete_kboard): Exit single_kboard mode if we have just deleted
22251 that kboard. Use FRAME_KBOARD.
22252 (interrupt_signal): Use `Fkill_emacs' to exit Emacs, not
22253 `fatal_error_signal'.
22254 (record_single_kboard_state): Don't push_kboard if we weren't in
22255 single kboard state. Don't pop_kboard if we popped into any
22256 kboard state.
22257 (push_frame_kboard): Rename to push_kboard.
22258 (kbd_buffer_get_event): Use FRAME_TERMINAL.
22259 (read_avail_input): Read input from all terminals.
22260 (mark_kboards): Also mark Vkeyboard_translate_table.
22261 (kbd_buffer_store_event_hold): Simplify condition.
22262 (read_key_sequence): Reinitialize fkey and keytran at each replay.
22263 (Vkeyboard_translate_table): Move to struct kboard.
22264 (init_kboard): Initialize Vkeyboard_translate_table.
22265 (syms_of_keyboard): Use DEFVAR_KBOARD to define
22266 Vkeyboard_translate_table. Update doc strings. Update docs of
22267 local-function-key-map and function-key-map.
22268
22269 * terminal.c: New file.
22270
22271 * term.c: Include errno.h.
22272 (Vring_bell_function, device_list, initial_device)
22273 (next_device_id, ring_bell, update_begin, update_end)
22274 (set_terminal_window, cursor_to, raw_cursor_to)
22275 (clear_to_end, clear_frame, clear_end_of_line)
22276 (write_glyphs, insert_glyphs, delete_glyphs, ins_del_lines)
22277 (Fdisplay_name, create_device, delete_device): Move to terminal.c.
22278 (syms_of_term): Move their initialization to terminal.c.
22279 (get_tty_terminal, Fdisplay_tty_type, Ftty_display_color_p)
22280 (Ftty_display_color_cells)
22281 (Ftty_no_underline, Fsuspend_tty, Fresume_tty, create_tty_output)
22282 (clear_tty_hooks, set_tty_hooks)
22283 (init_tty, maybe_fatal): New functions.
22284 (Ftty_type): Return nil if terminal is not on a tty instead of
22285 throwing an error. Doc update.
22286 (syms_of_term) <Vsuspend_tty_functions, Vresume_tty_functions>:
22287 Doc update. Initialize new subrs and variables.
22288 (delete_tty): Use terminal->deleted.
22289 (tty_set_terminal_modes): Rename from set_terminal_modes.
22290 (tty_reset_terminal_modes): Rename from reset_terminal_modes.
22291 (set_scroll_region): Rename to `tty_set_scroll_region'.
22292 (turn_on_insert): Rename to `tty_turn_on_insert'.
22293 (turn_off_insert): Rename to `tty_turn_off_insert'.
22294 (turn_off_highlight): Rename to `tty_turn_off_highlight'.
22295 (turn_on_highlight): Rename to `tty_turn_on_highlight'.
22296 (toggle_highligh): Rename to `tty_toggle_highlight'.
22297 (background_highlight): Rename to `tty_background_highlight'.
22298 (highlight_if_desired): Rename to `tty_highlight_if_desired'.
22299 (tty_ring_bell, tty_update_end, tty_set_terminal_window)
22300 (tty_set_scroll_region, tty_background_highlight)
22301 (tty_cursor_to, tty_raw_cursor_to, tty_clear_to_end)
22302 (tty_clear_frame, tty_clear_end_of_line, tty_write_glyphs)
22303 (tty_insert_glyphs, tty_delete_glyphs, tty_ins_del_lines)
22304 (term_get_fkeys, tty_setup_colors, dissociate_if_controlling_tty):
22305 Add static modifier.
22306 (tty_reset_terminal_modes, tty_set_terminal_window)
22307 (tty_set_scroll_region, tty_background_highlight)
22308 (tty_highlight_if_desired, tty_cursor_to)
22309 (tty_raw_cursor_to, tty_clear_to_end, tty_clear_frame)
22310 (tty_clear_end_of_line, tty_write_glyphs, tty_insert_glyphs)
22311 (tty_delete_glyphs, tty_ins_del_lines, turn_on_face): Update for
22312 renames.
22313
223142007-08-28 Jan Djärv <jan.h.d@swipnet.se>
22315
22316 * keyboard.c: Qrtl is new.
22317 (parse_tool_bar_item): Handle :rtl keyword.
22318 (syms_of_keyboard): Intern :rtl keyword.
22319
22320 * dispextern.h (enum tool_bar_item_idx): Add TOOL_BAR_ITEM_RTL_IMAGE.
22321
22322 * gtkutil.c (xg_tool_bar_expose_callback): Just do SET_FRAME_GARBAGED
22323 so no Lisp code is executed.
22324 (file_for_image, find_rtl_image): New functions.
22325 (xg_get_image_for_pixmap): Use file_for_image.
22326 (update_frame_tool_bar): If direction is RTL, use RTL image if
22327 defined. Use Gtk stock images if defined.
22328
223292007-08-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22330
22331 * macterm.c (x_draw_composite_glyph_string_foreground): Draw rectangle
22332 for nonexistent or zero-width glyph in composition glyph.
22333
223342007-08-25 Stefan Monnier <monnier@iro.umontreal.ca>
22335
22336 * m/amdx86-64.h: Redirect to intel386.h if compiling for i386.
22337
22338 * xdisp.c (Finvisible_p): New function.
22339 (syms_of_xdisp): defsubr it.
22340
223412007-08-24 Juanma Barranquero <lekktu@gmail.com>
22342
22343 * image.c (syms_of_image) <image-library-alist, cross-disabled-images>:
22344 Doc fixes.
22345
223462007-08-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22347
22348 * mac.c [MAC_OSX] (select_and_poll_event, sys_select): Fix last changes.
22349
223502007-08-24 Martin Rudalics <rudalics@gmx.at>
22351
22352 * fileio.c (Finsert_file_contents): Consult CHARS_MODIFF to tell
22353 whether decoding has modified buffer contents.
22354
223552007-08-24 Jason Rumney <jasonr@gnu.org>
22356
22357 * image.c [HAVE_NTGUI]: Define dynamic loaded functions for SVG.
22358 (Qgdk_pixbuf, Qglib) [HAVE_NTGUI]: New symbols.
22359 (syms_of_image) [HAVE_NTGUI]: Intern and staticpro them.
22360 (init_svg_functions) [HAVE_NTGUI]: New function.
22361 (fn_g_type_init, fn_g_object_unref, fn_g_error_free): New #defines.
22362 (svg_load_image): Use them.
22363 (svg_load_image) [HAVE_NTGUI]: Implement background.
22364
223652007-08-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22366
22367 * Makefile.in (RSVG_LIBS, RSVG_CFLAGS): New variables.
22368 (ALL_CFLAGS): Use ${RSVG_CFLAGS} instead of @RSVG_CFLAGS@.
22369 (LIBX): Remove @RSVG_LIBS@.
22370 (LIBES): Add $(RSVG_LIBS).
22371
22372 * image.c (svg_load_image): Blend with specified background if exists.
22373 Use IMAGE_BACKGROUND. Add Mac OS Support.
22374
22375 * mac.c (wakeup_from_rne_enabled_p) [MAC_OSX]: Remove variable.
22376 (ENABLE_WAKEUP_FROM_RNE, DISABLE_WAKEUP_FROM_RNE) [MAC_OSX]:
22377 Remove macros.
22378 [MAC_OSX] (socket_callback): Do nothing.
22379 [MAC_OSX] (select_and_poll_event): Use CFRunLoopRunInMode instead of
22380 ReceiveNextEvent.
22381 [MAC_OSX] (sys_select): Likewise. Don't set context as argument to
22382 socket_callback.
22383 (mac_wakeup_from_rne) [MAC_OSX]: Do nothing.
22384
223852007-08-22 Glenn Morris <rgm@gnu.org>
22386
22387 * image.c (x_find_image_file): Search in etc/images/ rather than etc/.
22388
223892007-08-22 Paul Pogonyshev <pogonyshev@gmx.net>
22390
22391 * Makefile.in (ALL_CFLAGS, LIBX): Add RSVG_LIBS.
22392
22393 * image.c: Add support for SVG images. Some additional comments
22394 by Joakim Verona <joakim@verona.se>. When HAVE_RSVG is defined:
22395 (svg_image_p): New function to test for SVG image.
22396 (svg_load): New function to load SVG image.
22397 (svg_load_image): New function, helper for svg_load.
22398 (Qsvg): New Lisp_object.
22399 (svg_keyword_index): New enum.
22400 (svg_format): New static `image_keyword' struct.
22401 (svg_type): New static `image_type' struct.
22402 (librsvg/rsvg.h): Include it.
22403
224042007-08-23 Stefan Monnier <monnier@iro.umontreal.ca>
22405
22406 * lread.c (load_warn_old_style_backquotes): Fix up array size typo.
22407
224082007-08-22 Stefan Monnier <monnier@iro.umontreal.ca>
22409
22410 * lread.c (Qold_style_backquotes): New var.
22411 (syms_of_lread): Init and staticpro it.
22412 (load_warn_old_style_backquotes): New fun.
22413 (Fload): Use them to warn about old style backquotes.
22414 (end_of_file_error, Fload): Remove unused vars.
22415
22416 * lisp.h (Fclear_face_cache, Fx_send_client_event): Declare.
22417
22418 * lread.c (Vold_style_backquotes): New var.
22419 (syms_of_lread): Init and export it to Elisp.
22420 (read1): Set it when we find an old-style (back)quote.
22421
224222007-08-22 Jason Rumney <jasonr@gnu.org>
22423
22424 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): Add missing NULL terminator.
22425
224262007-08-22 Katsumi Yamaoka <yamaoka@jpl.org>
22427
22428 * puresize.h (BASE_PURESIZE): Increase to 1140000.
22429
224302007-08-19 Richard Stallman <rms@gnu.org>
22431
22432 * eval.c (Ffunction, Fquote): Signal error if not 1 argument.
22433
224342007-08-19 Andreas Schwab <schwab@suse.de>
22435
22436 * alloc.c (pure): Round PURESIZE up.
22437
224382007-08-17 Jan Djärv <jan.h.d@swipnet.se>
22439
22440 * xterm.c (handle_one_xevent): Remove check that mouse click is in
22441 active frame.
22442
224432007-08-16 Richard Stallman <rms@gnu.org>
22444
22445 * eval.c (Fcommandp): Add parens to clarify.
22446
22447 * minibuf.c (Fall_completions): Use enum for type of table.
22448
22449 * emacs.c (USAGE2): Improve text.
22450
224512007-08-15 Philippe Waroquiers <philippe.waroquiers@eurocontrol.int>
22452
22453 * term.c (tty_default_color_capabilities): Declare static
22454 variables in file scope, to avoid HPUX compiler problem.
22455
224562007-08-13 Jan Djärv <jan.h.d@swipnet.se>
22457
22458 * gtkutil.c (update_frame_tool_bar): Use -1 as index
22459 to gtk_toolbar_insert.
22460
224612007-08-13 Stefan Monnier <monnier@iro.umontreal.ca>
22462
22463 * fileio.c (Finsert_file_contents): Yet Another Int/Lisp_Object Mixup.
22464
22465 * insdel.c (reset_var_on_error): New fun.
22466 (signal_before_change, signal_after_change):
22467 Use it to reset (after|before)-change-functions to nil in case of error.
22468 Bind inhibit-modification-hooks to t.
22469 Don't bind (after|before)-change-functions to nil while they run.
22470
224712007-08-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22472
22473 * xterm.c (x_draw_image_glyph_string): Adjust stipple origin when
22474 filling pixmap with stippled background.
22475
224762007-08-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22477
22478 * macterm.c [TARGET_API_MAC_CARBON] (mac_handle_window_event):
22479 Don't use invisible frame as parent window for repositioning.
22480
224812007-08-10 Stefan Monnier <monnier@iro.umontreal.ca>
22482
22483 * print.c (new_backquote_output): Rename from old_backquote_output.
22484 (print): Inverse its logic (according to its name) so as to match the
22485 behavior of new_backquote_flag in lread.c.
22486
224872007-08-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22488
22489 * gmalloc.c (posix_memalign): New function.
22490
22491 * macterm.c (frame_highlight, frame_unhighlight): Don't call
22492 ActivateControl/DeactivateControl here.
22493 [USE_MAC_TOOLBAR] (free_frame_tool_bar): Suppress animation when
22494 frame-notice-user-settings is non-nil.
22495 [USE_MAC_FONT_PANEL] (mac_handle_font_event): Also record parameter
22496 for kEventParamFMFontStyle.
22497 [TARGET_API_MAC_CARBON] (mac_handle_keyboard_event): Don't check
22498 mac_pass_command_to_system and mac_pass_control_to_system here.
22499 (XTread_socket): Call ActivateControl/DeactivateControl here.
22500 (XTread_socket) [TARGET_API_MAC_CARBON]:
22501 Check mac_pass_command_to_system and mac_pass_control_to_system here.
22502 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Add further workaround
22503 for window repositioning.
22504
225052007-08-08 Glenn Morris <rgm@gnu.org>
22506
22507 * Replace `iff' in doc-strings and comments.
22508
225092007-08-07 Chong Yidong <cyd@stupidchicken.com>
22510
22511 * xdisp.c (move_it_by_lines): Remove incorrect optimization.
22512
225132007-08-07 Martin Rudalics <rudalics@gmx.at>
22514
22515 * fileio.c (Finsert_file_contents): Run format-decode and
22516 after_insert_file_functions on entire buffer when REPLACE is
22517 non-nil and inhibit modification_hooks and point_motion_hooks.
22518 For consistency, run after_insert_file_functions iff something
22519 got inserted. Move signal_after_change and update_compositions
22520 after code running after_insert_file_functions. Make sure that
22521 undo_list doesn't record intermediate steps of the decoding process.
22522
225232007-08-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22524
22525 * emacs.c (main)
22526 [HAVE_GTK_AND_PTHREAD && !SYSTEM_MALLOC && !DOUG_LEA_MALLOC]:
22527 Call malloc_enable_thread on interactive startup.
22528
22529 * gmalloc.c (_malloc_thread_enabled_p) [USE_PTHREAD]: New variable.
22530 (LOCK, UNLOCK, LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS)
22531 [USE_PTHREAD]: Conditionalize with it.
22532 (malloc_atfork_handler_prepare, malloc_atfork_handler_parent)
22533 (malloc_atfork_handler_child, malloc_enable_thread) [USE_PTHREAD]:
22534 New functions.
22535
225362007-08-06 Chong Yidong <cyd@stupidchicken.com>
22537
22538 * xdisp.c (redisplay_window): When restoring original buffer
22539 position, make sure it is still valid.
22540
22541 * image.c (png_load): Ignore png-supplied background color.
22542
225432007-08-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22544
22545 * mac.c [TARGET_API_MAC_CARBON] (cfdate_to_lisp): Obtain microsec value.
22546 Use kCFAbsoluteTimeIntervalSince1970.
22547
22548 * macmenu.c (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]:
22549 New variable.
22550 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Set it if dialog
22551 event loop should be quit.
22552 [TARGET_API_MAC_CARBON] (create_and_show_dialog) [!MAC_OSX]:
22553 Quit dialog event loop if quit_dialog_event_loop is set.
22554
22555 * macselect.c [!TARGET_API_MAC_CARBON]: Include Scrap.h.
22556 (Selection): New typedef. Use instead of ScrapRef.
22557 (mac_get_selection_from_symbol): Rename from get_scrap_from_symbol.
22558 (mac_valid_selection_target_p): Rename from valid_scrap_target_type_p.
22559 (mac_clear_selection): Rename from clear_scrap.
22560 (get_flavor_type_from_symbol): New argument SEL and subsume function of
22561 scrap_has_target_type. All uses changed.
22562 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
22563 (mac_selection_has_target_p): New functions.
22564 (mac_put_selection_value): Rename from put_scrap_string.
22565 (mac_get_selection_value): Rename from get_scrap_string.
22566 (mac_get_selection_target_list): Rename from get_scrap_target_type_list.
22567 (put_scrap_private_timestamp, scrap_has_target_type)
22568 (get_scrap_private_timestamp): Remove functions.
22569 (SCRAP_FLAVOR_TYPE_EMACS_TIMESTAMP): Remove define.
22570 (x_own_selection, x_get_local_selection):
22571 Use mac_valid_selection_value_p.
22572 (x_own_selection): Don't use put_scrap_private_timestamp.
22573 Record OWNERSHIP-INFO into Vselection_alist instead.
22574 (x_get_local_selection): Don't check type if request is local.
22575 (Fx_selection_owner_p): Don't use get_scrap_private_timestamp.
22576 Detect ownership change with OWNERSHIP-INFO in Vselection_alist instead.
22577
225782007-08-04 Jan Djärv <jan.h.d@swipnet.se>
22579
22580 * gtkutil.c (xg_tool_bar_callback): Generate two TOOL_BAR_EVENT:s,
22581 add comment explaining why.
22582
225832007-08-03 Richard Stallman <rms@gnu.org>
22584
22585 * fileio.c (Fvisited_file_modtime): Use make_time.
22586
225872007-08-01 Ryo Yoshitake <ryo@shiftmode.net> (tiny change)
22588
22589 * mac.c (init_mac_osx_environment): Adjust load-path on self-contained
22590 build.
22591
225922007-07-31 Stefan Monnier <monnier@iro.umontreal.ca>
22593
22594 * gtkutil.c (xg_tool_bar_callback): Generate a single TOOL_BAR_EVENT.
22595
225962007-07-30 Katsumi Yamaoka <yamaoka@jpl.org>
22597
22598 * puresize.h (BASE_PURESIZE): Increase to 1130000.
22599
226002007-07-30 Richard Stallman <rms@gnu.org>
22601
22602 * lread.c (readevalloop, read1): Treat NBSP as whitespace.
22603
226042007-07-29 Jan Djärv <jan.h.d@swipnet.se>
22605
22606 * gmalloc.c (__malloc_initialize): Remove pthread_once. Not needed.
22607
226082007-07-28 Nick Roberts <nickrob@snap.net.nz>
22609
22610 * xdisp.c (decode_mode_spec): Use '@' instead of 'R' to test for
22611 remote default-directory.
22612
22613 * buffer.c (mode-line-format): Update doc string.
22614
226152007-07-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22616
22617 * w32term.c (w32_draw_fringe_bitmap): Extend fringe background to
22618 scroll bar gap.
22619 (x_scroll_bar_create): Set bar->fringe_extended_p.
22620 (w32_set_vertical_scroll_bar): Put leftmost/rightmost scroll bars
22621 on frame edge. Check fringe background extension. Don't clear
22622 extended fringe background area.
22623
22624 * w32term.h (struct scroll_bar): New member fringe_extended_p.
22625 (w32_fill_area): Enclose multiple statements with do ... while (0).
22626
22627 * xterm.c (x_draw_fringe_bitmap) [USE_TOOLKIT_SCROLL_BARS]:
22628 Extend fringe background to scroll bar gap.
22629 (x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS]:
22630 Set bar->fringe_extended_p.
22631 (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
22632 Put leftmost/rightmost scroll bars on frame edge. Check fringe
22633 background extension. Don't clear extended fringe background area.
22634
22635 * xterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
22636 New member fringe_extended_p.
22637
226382007-07-25 Glenn Morris <rgm@gnu.org>
22639
22640 * Relicense all FSF files to GPLv3 or later.
22641
22642 * COPYING: Switch to GPLv3.
22643
226442007-07-25 Stefan Monnier <monnier@iro.umontreal.ca>
22645
22646 * eval.c (Fcommandp): Pay attention to the `interactive-form' property.
22647
22648 * data.c (Finteractive_form): Check for the presence of an
22649 `interactive-form' symbol property more thoroughly.
22650
22651 * data.c (Finteractive_form): Use an `interactive-form' property if
22652 present, analogous to the function-documentation property.
22653
226542007-07-24 Jason Rumney <jasonr@gnu.org>
22655
22656 * w32fns.c (x_real_positions): Get real position from OS instead of
22657 calculating it.
22658
226592007-07-23 Jason Rumney <jasonr@gnu.org>
22660
22661 * filelock.c (current_lock_owner): Allow for @ sign in username.
22662
226632007-07-22 Nick Roberts <nickrob@snap.net.nz>
22664
22665 * xdisp.c (decode_mode_spec): Add case 'R' for to test for
22666 remote default-directory.
22667
22668 * buffer.c (mode-line-format): Describe above case in doc string.
22669
226702007-07-20 Eli Zaretskii <eliz@gnu.org>
22671
22672 * w32proc.c (IMAGE_NT_OPTIONAL_HDR32_MAGIC, IMAGE_OPTIONAL_HEADER32):
22673 Define if not defined.
22674
226752007-07-18 Jason Rumney <jasonr@gnu.org>
22676
22677 * w32proc.c (w32_executable_type): Handle 64 bit executables.
22678
226792007-07-18 Richard Stallman <rms@gnu.org>
22680
22681 * data.c (Fsetq_default): Doc fix.
22682
22683 * eval.c (Fsetq): Doc fix.
22684
226852007-07-18 Juanma Barranquero <lekktu@gmail.com>
22686
22687 * coding.c (Ffind_operation_coding_system):
22688 * eval.c (For, Fand): Doc fixes.
22689 Reported by Johan Bockgård.
22690
226912007-07-18 Jan Djärv <jan.h.d@swipnet.se>
22692
22693 * xfns.c (Fx_focus_frame): Call x_ewmh_activate_frame.
22694
22695 * xterm.h: Declare x_ewmh_activate_frame.
22696
22697 * xterm.c (x_ewmh_activate_frame): New function.
22698 (XTframe_raise_lower): Move code to x_ewmh_activate_frame.
22699
227002007-07-17 Martin Rudalics <rudalics@gmx.at>
22701
22702 * window.c (Fdisplay_buffer): If largest or LRU window is the
22703 only window, split it even if it is not eligible for splitting.
22704 This restores the original behavior broken by the 2007-07-15
22705 change.
22706
227072007-07-17 Glenn Morris <rgm@gnu.org>
22708
22709 * abbrev.c (abbrev_check_chars): New function.
22710 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
22711 Call abbrev_check_chars to check abbrev characters are word
22712 constituents. Doc fix.
22713
227142007-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
22715
22716 * process.c (Fstart_process, Fmake_network_process)
22717 (read_process_output): Fix up last changes.
22718
227192007-07-16 Eli Zaretskii <eliz@gnu.org>
22720
22721 * makefile.w32-in (clean): Don't delete *~.
22722
227232007-07-16 Andreas Schwab <schwab@suse.de>
22724
22725 * window.c (Fdisplay_buffer): Use NILP.
22726 (Fset_window_scroll_bars): Likewise.
22727
227282007-07-15 Martin Rudalics <rudalics@gmx.at>
22729
22730 * window.c (window_min_size_2): New function.
22731 (window_min_size_1, size_window, Fdisplay_buffer)
22732 (Fsplit_window, adjust_window_trailing_edge): Use it to avoid
22733 windows without mode- or header-lines when window-min-height is
22734 too small.
22735 (size_window): Reset nodelete_p after testing it, following an
22736 earlier note by Kim F. Storm.
22737 (display_buffer): Do not set split_height_threshold to twice the
22738 value of window_min_height to avoid changing the value of a
22739 customizable variable. Rather explicitly check whether the
22740 height of the window that shall be splitted is at least as large
22741 as split_height_threshold.
22742 (Fwindow_full_width_p): New defun.
22743 (syms_of_window): Defsubr it.
22744
22745 * window.h: Add EXFUN for Fwindow_full_width_p.
22746
227472007-07-14 Jason Rumney <jasonr@gnu.org>
22748
22749 * process.c [WINDOWSNT]: Don't undefine AF_INET6.
22750
227512007-07-14 Richard Stallman <rms@gnu.org>
22752
22753 * eval.c (maybe_call_debugger): New function.
22754 (find_handler_clause): Use maybe_call_debugger.
22755 Call it when the handler says `debug'.
22756 Eliminate DEBUGGER_VALUE_PTR.
22757 (Fsignal): Eliminate debugger_value.
22758 (Qdebug): New variable.
22759 (syms_of_eval): Initialize it.
22760
227612007-07-14 Juanma Barranquero <lekktu@gmail.com>
22762
22763 * eval.c (Fprogn):
22764 * keyboard.c (Ftrack_mouse):
22765 * print.c (Fwith_output_to_temp_buffer):
22766 * window.c (Fsave_window_excursion): Doc fix.
22767
227682007-07-13 Stefan Monnier <monnier@iro.umontreal.ca>
22769
22770 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 400.
22771
227722007-07-12 Stefan Monnier <monnier@iro.umontreal.ca>
22773
22774 * process.h (struct Lisp_Process): Turn slots infd, outfd,
22775 kill_without_query, pty_flag, tick, update_tick, decoding_carryover,
22776 inherit_coding_system_flag, filter_multibyte, adaptive_read_buffering,
22777 read_output_delay, and read_output_skip from Lisp_Objects to ints.
22778 Remove unused encoding_carryover.
22779 * process.c: Adjust all functions accordingly.
22780
227812007-07-12 Richard Stallman <rms@gnu.org>
22782
22783 * term.c: Include unistd.h only if HAVE_UNISTD_H.
22784
227852007-07-11 Jason Rumney <jasonr@gnu.org>
22786
22787 * makefile.w32-in (LIBS): Include OLE32.
22788
22789 * w32fns.c (w32_msg_pump) <WM_EMACS_CREATEWINDOW>: Initialize COM.
22790 (w32_msg_pump) <WM_DESTROY>: Uninitialize COM.
22791
227922007-07-11 Stefan Monnier <monnier@iro.umontreal.ca>
22793
22794 * lisp.h (struct Lisp_Hash_Table): Turn next_weak into a bare pointer.
22795 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and turned
22796 from a Lisp_Object into a bare pointer.
22797 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
22798 Adjust the code correspondingly.
22799
22800 * alloc.c (emacs_blocked_free): Remove unused var `bytes_used_now'.
22801
22802 * term.c: Include unistd.h for ttyname, used in handle_one_term_event.
22803 (term_show_mouse_face): Remove unused var `j'.
22804 (handle_one_term_event): Remove unused vars `i' and `j'.
22805 Don't cast return value of ttyname since it's not necessary.
22806
228072007-07-10 Stefan Monnier <monnier@iro.umontreal.ca>
22808
22809 * alloc.c (mark_maybe_pointer): Enforce mult-of-8 alignment when using
22810 USE_LSB_TAG. Suggested by Dmitry Antipov <dmantipov@yandex.ru>.
22811
22812 * fns.c (map_char_table): Use an array of int for `indices' rather than
22813 an array of Lisp_Objects (which are only ever integers anyway).
22814 (Fmap_char_table): Update caller.
22815 * lisp.h: Update prototype.
22816 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap):
22817 * fontset.c (Ffontset_info):
22818 * casetab.c (set_case_table): Update callers.
22819
22820 * editfns.c (Ftranspose_regions): Use EMACS_INT for positions.
22821
22822 * keymap.c (struct accessible_keymaps_data)
22823 (struct where_is_internal_data): New structures.
22824 (accessible_keymaps_1, where_is_internal_1): Use them to change
22825 interface to adhere to the one used by map_keymap.
22826 (Faccessible_keymaps, where_is_internal): Use map_keymap.
22827 (accessible_keymaps_char_table, where_is_internal_2): Remove.
22828
22829 * keymap.h (map_keymap_function_t): More informative prototype.
22830
228312007-07-10 Guanpeng Xu <herberteuler@hotmail.com>
22832
22833 * search.c (Vinhibit_changing_match_data, search_regs_1): New vars.
22834 (looking_at_1): Don't change search_regs and last_thing_searched
22835 if `inhibit-changing-match-data' is non-nil.
22836 (string_match_1, search_buffer, set_search_regs): Likewise.
22837 (syms_of_search): Add Lisp level definition for
22838 `inhibit-changing-match-data' and set it to nil.
22839 (boyer_moore): If `inhibit-changing-match-data' is non-nil, compute
22840 start and end of the match, instead of using values in search_regs.
22841
228422007-07-01 Stefan Monnier <monnier@iro.umontreal.ca>
22843
22844 * minibuf.c (Fcompleting_read): New value `confirm-only'
22845 for `require-match'.
22846
228472007-06-28 Stefan Monnier <monnier@iro.umontreal.ca>
22848
22849 * fileio.c (Fdo_auto_save): Revert last patch installed unwillingly as
22850 part of the 2007-06-27 change to syms_of_fileio.
22851
228522007-06-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22853
22854 * macterm.c [USE_MAC_TSM] (mac_handle_text_input_event):
22855 Check WINDOWP before using XWINDOW. Consolidate return statements.
22856
228572007-06-27 Richard Stallman <rms@gnu.org>
22858
22859 * fileio.c (syms_of_fileio) <after-insert-file-functions>: Doc fix.
22860
228612007-06-27 Juanma Barranquero <lekktu@gmail.com>
22862
22863 * buffer.c (syms_of_buffer) <selective-display>: Fix typo in docstring.
22864
228652007-06-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22866
22867 * gmalloc.c [HAVE_GTK_AND_PTHREAD]: Check this after including config.h.
22868 (_aligned_blocks_mutex) [USE_PTHREAD]: New variable.
22869 (LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS): New macros.
22870 (_free_internal, memalign): Use them.
22871 (_malloc_mutex, _aligned_blocks_mutex) [USE_PTHREAD]:
22872 Initialize to PTHREAD_MUTEX_INITIALIZER.
22873 (malloc_initialize_1) [USE_PTHREAD]: Don't use recursive mutex.
22874 (morecore_nolock): Rename from morecore. All uses changed.
22875 Use only nolock versions of internal allocation functions.
22876 (_malloc_internal_nolock, _realloc_internal_nolock)
22877 (_free_internal_nolock): New functions created from
22878 _malloc_internal, _realloc_internal, and _free_internal.
22879 (_malloc_internal, _realloc_internal, _free_internal): Use them.
22880 Copy hook value to automatic variable before its use.
22881 (memalign): Copy hook value to automatic variable before its use.
22882
228832007-06-26 Kenichi Handa <handa@m17n.org>
22884
22885 * coding.c (Ffind_operation_coding_system): Docstring improved.
22886 (syms_of_coding): Docstring of `file-coding-system-alist' improved.
22887
228882007-06-25 David Kastrup <dak@gnu.org>
22889
22890 * keymap.c (Fcurrent_active_maps): Add `position' argument.
22891 (Fwhere_is_internal): Adjust call to `current-active-maps' to
22892 cater for additional parameter.
22893
22894 * keymap.h: Adjust number of parameters to `current-active-maps'.
22895
22896 * doc.c (Fsubstitute_command_keys): Adjust call of
22897 `current-active-maps'.
22898
228992007-06-25 David Kastrup <dak@gnu.org>
22900
22901 * callint.c (Fcall_interactively): Make the parsing of interactive
22902 specs somewhat more readable.
22903
229042007-06-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22905
22906 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe background
22907 to scroll bar gap also when bitmap fills fringe. Draw only foreground
22908 if extended background has already been filled.
22909
229102007-06-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22911
22912 * macgui.h (USE_CG_DRAWING): Don't require USE_ATSUI.
22913 (USE_MAC_TOOLBAR): Require USE_CG_DRAWING.
22914
22915 * macmenu.c (mac_dialog_modal_filter, Fx_popup_dialog) [MAC_OSX]:
22916 Put special treatment for Fmessage_box, Fyes_or_no_p, and Fy_or_n_p
22917 in #if 0 as it is not compatible with y-or-n-p-with-timeout.
22918 (timer_check) [TARGET_API_MAC_CARBON]: Add extern.
22919 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Use QuitEventLoop
22920 instead of QuitAppModalLoopForWindow. Consolidate QuitEventLoop calls.
22921 (pop_down_dialog) [TARGET_API_MAC_CARBON]: New function.
22922 [TARGET_API_MAC_CARBON] (create_and_show_dialog): Use it for unwind.
22923 Run timers during dialog popup.
22924 (Fmenu_or_popup_active_p) [TARGET_API_MAC_CARBON]: Use popup_activated.
22925
229262007-06-21 Jason Rumney <jasonr@gnu.org>
22927
22928 * image.c (convert_mono_to_color_image): Swap fore and background.
22929
229302007-06-20 Jason Rumney <jasonr@gnu.org>
22931
22932 * w32bdf.c (w32_BDF_to_x_font): Unmap memory when finished.
22933 (w32_free_bdf_font): Unmap memory not handle.
22934
229352007-06-20 Sam Steingold <sds@gnu.org>
22936
22937 * gmalloc.c (__morecore): Fix the declaration to comply with the
22938 definition.
22939
229402007-06-20 Juanma Barranquero <lekktu@gmail.com>
22941
22942 * w32term.c (w32_delete_display): Remove leftover declaration.
22943 (w32_define_cursor, w32_initialize): Make static.
22944
22945 * w32.c (_wsa_errlist): Fix typo in error message.
22946 (init_environment): Ignore any environment variable from the
22947 registry having a null value.
22948
229492007-06-20 Glenn Morris <rgm@gnu.org>
22950
22951 * Makefile.in (LIBGIF): Default to -lgif.
22952
229532007-06-17 Jason Rumney <jasonr@gnu.org>
22954
22955 * w32menu.c (add_menu_item): Don't use multibyte string functions on
22956 unicode strings.
22957
229582007-06-16 Juanma Barranquero <lekktu@gmail.com>
22959
22960 * xdisp.c (syms_of_xdisp) <auto-resize-tool-bars>:
22961 Fix typo in docstring.
22962
229632007-06-16 Eli Zaretskii <eliz@gnu.org>
22964
22965 * w32menu.c (add_menu_item): Escape `&' characters in menu items
22966 and their keybindings.
22967
229682007-06-15 Chong Yidong <cyd@stupidchicken.com>
22969
22970 * composite.c (update_compositions): Fix last fix.
22971
229722007-06-14 Jason Rumney <jasonr@gnu.org>
22973
22974 * w32.c (get_process_times_fn): New function pointer.
22975 (globals_of_w32): Intialize it if present in kernel32.dll.
22976 (w32_get_internal_run_time): New function.
22977
22978 * editfns.c (Fget_internal_run_time) [WINDOWSNT]: Use it.
22979
229802007-06-14 Kenichi Handa <handa@etlken.m17n.org>
22981
22982 * composite.c (update_compositions): Check the validness of
22983 compositions.
22984
229852007-06-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22986
22987 * frame.h (struct frame) [MAC_OS]: New member external_tool_bar.
22988 (FRAME_EXTERNAL_TOOL_BAR) [MAC_OS]: Use it.
22989
22990 * macfns.c (mac_window) [USE_MAC_TOOLBAR]: Set toolbar_win_gravity.
22991 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]: Set FRAME_EXTERNAL_TOOL_BAR.
22992
22993 * macgui.h (USE_MAC_TOOLBAR): New define.
22994
22995 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
22996 Return immediately unless popup is activated.
22997
22998 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe
22999 background to scroll bar gap.
23000 (x_scroll_bar_create) [MAC_OSX]: Set bar->fringe_extended_p.
23001 (XTset_vertical_scroll_bar) [MAC_OSX]: Put leftmost/rightmost
23002 scroll bars on frame edge. Check fringe background extension.
23003 Don't clear extended fringe background area.
23004 (TOOLBAR_IDENTIFIER, TOOLBAR_ICON_ITEM_IDENTIFIER)
23005 (TOOLBAR_ITEM_COMMAND_ID_OFFSET, TOOLBAR_ITEM_COMMAND_ID_P)
23006 (TOOLBAR_ITEM_COMMAND_ID_VALUE, TOOLBAR_ITEM_MAKE_COMMAND_ID):
23007 [USE_MAC_TOOLBAR]: New macros.
23008 (mac_move_window_with_gravity, mac_get_window_origin_with_gravity)
23009 (mac_handle_toolbar_event, mac_image_spec_to_cg_image)
23010 (mac_create_frame_tool_bar, update_frame_tool_bar, free_frame_tool_bar)
23011 (mac_tool_bar_note_mouse_movement, mac_handle_toolbar_command_event)
23012 [USE_MAC_TOOLBAR]: New functions.
23013 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Reposition window
23014 manually if previous repositioning has failed.
23015 (mac_handle_keyboard_event): Use precomputed event kind.
23016 (XTread_socket) [USE_MAC_TOOLBAR]: Handle click in structure region
23017 as tool bar item click. Handle mouse movement over tool bar items.
23018
23019 * macterm.h (struct mac_output) [USE_MAC_TOOLBAR]: New member
23020 toolbar_win_gravity.
23021 (struct scroll_bar) [MAC_OSX]: New member fringe_extended_p.
23022 (update_frame_tool_bar, free_frame_tool_bar) [USE_MAC_TOOLBAR]:
23023 Add externs.
23024
23025 * xdisp.c (update_tool_bar, redisplay_tool_bar, redisplay_window)
23026 [USE_MAC_TOOLBAR]: Sync with GTK+ tool bar display.
23027
230282007-06-14 Chong Yidong <cyd@stupidchicken.com>
23029
23030 * image.c (search_image_cache): Remove unused variable.
23031
230322007-06-13 Chong Yidong <cyd@stupidchicken.com>
23033
23034 * xfns.c, xmenu.c: Link to xaw3d if available.
23035
230362007-06-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23037
23038 * dispextern.h (struct image) [HAVE_WINDOW_SYSTEM]: New members
23039 frame_foreground and frame_background.
23040
23041 * image.c (lookup_image): Save frame foreground and background colors.
23042 (search_image_cache): Check if saved and current frame colors match.
23043
230442007-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
23045
23046 * regex.c (regex_compile): Remove the `regnum' counter.
23047 Use bufp->re_nsub instead. Add support for \(?N:RE\).
23048
230492007-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
23050
23051 * term.c: Include intervals.h to declare Fget_text_property.
23052
230532007-06-10 Jason Rumney <jasonr@gnu.org>
23054
23055 * w32fns.c (Fx_file_dialog): Take size from struct not pointer.
23056
230572007-06-08 Juanma Barranquero <lekktu@gmail.com>
23058
23059 * callint.c (Fcall_interactively):
23060 * editfns.c (Fdelete_and_extract_region):
23061 * fileio.c (Fread_file_name):
23062 * fns.c (Fmapconcat):
23063 * keyboard.c (cmd_error_internal):
23064 * keymap.c (Fkey_description):
23065 * lread.c (openp):
23066 * minibuf.c (read_minibuf):
23067 * search.c (wordify):
23068 * sunfns.c (sel_read):
23069 * xdisp.c (Fformat_mode_line, syms_of_xdisp):
23070 * xfns.c (x_default_scroll_bar_color_parameter):
23071 * xmenu.c (menu_help_callback):
23072 * xselect.c (Fx_get_atom_name):
23073 * xterm.c (x_term_init): Use empty_unibyte_string.
23074
230752007-06-08 Dmitry Antipov <dmantipov@yandex.ru> (tiny change)
23076
23077 * alloc.c (init_strings): Initialize canonical empty strings.
23078 (make_uninit_string, make_uninit_multibyte_string): Return appropriate
23079 canonical empty string when the requested size is 0.
23080
23081 * emacs.c (empty_unibyte_string): Rename from empty_string.
23082 (empty_multibyte_string): New canonical empty string.
23083 (syms_of_emacs): Don't initialize empty_string.
23084
23085 * lisp.h (STRING_SET_UNIBYTE): Return the canonical empty unibyte
23086 string, if appropriate.
23087 (empty_unibyte_string, empty_multibyte_string): New externs.
23088 (empty_string): Remove extern.
23089
23090 * lread.c (syms_of_lread): Use empty_unibyte_string.
23091
230922007-06-07 Jason Rumney <jasonr@gnu.org>
23093
23094 * s/ms-w32.h: Don't define HAVE_TZNAME.
23095
23096 * editfns.c (Fcurrent_time_zone): Remove hack for Japanese Windows.
23097
230982007-06-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23099
23100 * mac.c (xrm_get_preference_database): Remove BLOCK_INPUT.
23101
23102 * macfns.c (mac_get_window_bounds): Move extern to macterm.h.
23103 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use GetGlobalMouse.
23104
23105 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
23106 Don't call next handler.
23107 [TARGET_API_MAC_CARBON] (install_menu_target_item_handler):
23108 Remove argument. Install handler to application.
23109 (set_frame_menubar): Don't change deep_p.
23110 (mac_menu_show): Use FRAME_OUTER_TO_INNER_DIFF_X and
23111 FRAME_OUTER_TO_INNER_DIFF_Y.
23112 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
23113 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
23114 [HAVE_DIALOGS]: New macros.
23115 [HAVE_DIALOGS] (mac_handle_dialog_event, create_and_show_dialog):
23116 Use them.
23117 (fill_menubar) [TARGET_API_MAC_CARBON]: Use CFString.
23118
23119 * macselect.c [MAC_OSX] (install_service_handler): Rename from
23120 init_service_handler. All callers changed. Return OSStatus value.
23121
23122 * macterm.c (mac_begin_cg_clip): New arg F. Call SetPortWindowPort.
23123 All callers changed so as not to call SetPortWindowPort.
23124 (mac_begin_cg_clip) [USE_CG_DRAWING]: Call mac_prepare_for_quickdraw.
23125 (mac_draw_image_string_atsui) [USE_ATSUI]: New function created from
23126 mac_draw_string_common.
23127 (mac_draw_image_string_qd): Likewise.
23128 (mac_draw_string_common): Use them. Add INLINE.
23129 (XTmouse_position, x_scroll_bar_report_motion) [TARGET_API_MAC_CARBON]:
23130 Use FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y, and
23131 GetGlobalMouse.
23132 (x_set_mouse_pixel_position) [MAC_OSX]: Use FRAME_OUTER_TO_INNER_DIFF_X
23133 and FRAME_OUTER_TO_INNER_DIFF_Y.
23134 [TARGET_API_MAC_CARBON] (mac_handle_mouse_event): Likewise.
23135 [USE_MAC_TSM] (mac_handle_text_input_event): Likewise.
23136 (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Move code for
23137 repositioning window to mac_handle_window_event.
23138 (x_make_frame_invisible) [TARGET_API_MAC_CARBON]: Move code for
23139 saving window location to mac_handle_window_event
23140 [USE_MAC_FONT_PANEL] (mac_show_hide_font_panel): Install handler here.
23141 (install_menu_target_item_handler): Remove argument in extern.
23142 [TARGET_API_MAC_CARBON] (mac_event_to_emacs_modifiers):
23143 Also accept command events.
23144 (do_keystroke): New function created from XTread_socket.
23145 (init_command_handler): Remove functions.
23146 [TARGET_API_MAC_CARBON] (mac_handle_window_event): Reposition window
23147 and save window location by kEventWindowShowing and kEventWindowHiding
23148 handlers here. Don't call next handler for window state change and
23149 focus events.
23150 (mac_handle_application_event, mac_handle_keyboard_event)
23151 [TARGET_API_MAC_CARBON]: New functions.
23152 (install_window_handler) [TARGET_API_MAC_CARBON]: Register handlers for
23153 kEventWindowShowing and kEventWindowHiding events. Move installation
23154 of mouse, font, text input and menu target item handlers to
23155 install_application_handler.
23156 (install_application_handler) [TARGET_API_MAC_CARBON]: New function.
23157 (mac_handle_cg_display_reconfig) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
23158 New function.
23159 (init_dm_notification_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
23160 Register it.
23161 (XTread_socket) [TARGET_API_MAC_CARBON]:
23162 Consolidate SendEventToEventTarget calls.
23163 Use FRAME_OUTER_TO_INNER_DIFF_X and FRAME_OUTER_TO_INNER_DIFF_Y.
23164 Move application activation handler to mac_handle_application_event.
23165 Move keyboard handler to mac_handle_keyboard_event.
23166 (XTread_socket) [!TARGET_API_MAC_CARBON]: Use do_keystroke.
23167 (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
23168 init_command_handler. Call install_application_handler.
23169
23170 * macterm.h (mac_get_window_bounds): Move extern from macfns.c.
23171 (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y): New macros.
23172
231732007-06-07 Glenn Morris <rgm@gnu.org>
23174
23175 * emacs.c (main): Use `emacs-copyright' in --version output.
23176
231772007-06-06 Chong Yidong <cyd@stupidchicken.com>
23178
23179 * image.c (xpm_load): Remove spurious call to xpm_init_color_cache.
23180
231812007-06-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23182
23183 * macfns.c (mac_window): Replace WindowPtr with WindowRef.
23184
23185 * macgui.h: Replace WindowPtr with WindowRef.
23186
23187 * macmenu.c: Replace MenuHandle and GetMenuHandle with MenuRef and
23188 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
23189 Replace ControlHandle with ControlRef.
23190 (install_menu_quit_handler): Rename arg MENU_HANDLE to ROOT_MENU.
23191
23192 * macterm.c: Replace MenuHandle and GetMenuHandle with MenuRef and
23193 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
23194 Replace ControlHandle with ControlRef.
23195 (USE_CARBON_EVENTS): Remove. Use TARGET_API_MAC_CARBON instead.
23196 [MAC_OS8] (do_get_menus): Rename variable `menu_handle' to `menu'.
23197
23198 * macterm.h (struct scroll_bar): Rename member control_handle_low
23199 and control_handle_high to control_ref_low and control_ref_high.
23200 All uses changed.
23201 (SCROLL_BAR_CONTROL_REF, SET_SCROLL_BAR_CONTROL_REF): Rename from
23202 SCROLL_BAR_CONTROL_HANDLE and SET_SCROLL_BAR_CONTROL_HANDLE,
23203 respectively. All uses changed.
23204 (XCreatePixmap, XCreatePixmapFromBitmapData, XSetWindowBackground)
23205 (install_window_handler, remove_window_handler): Replace WindowPtr
23206 with WindowRef in externs.
23207
232082007-06-05 Juanma Barranquero <lekktu@gmail.com>
23209
23210 * xfaces.c (Finternal_lisp_face_p): Signal error for face alias loops.
23211
232122007-06-03 Nick Roberts <nickrob@snap.net.nz>
23213
23214 * keyboard.c (discard_mouse_events): Add GPM_CLICK_EVENT case.
23215
23216 * frame.c (Fmouse_position, Fmouse_pixel_position):
23217 Condition on HAVE_GPM too.
23218
23219 * term.c (term_mouse_highlight): Remove unused variables.
23220 (Fterm_open_connection): Set gpm_zerobased to 1.
23221 (term_mouse_movement, term_mouse_click, handle_one_term_event):
23222 Use zero based co-ordinates.
23223 (handle_one_term_event): Report a drag as mouse movement too.
23224
23225 * Makefile.in (MOUSE_SUPPORT): Define for HAVE_GPM.
23226
232272007-06-03 Chong Yidong <cyd@stupidchicken.com>
23228
23229 * image.c (search_image_cache): New function. Require background
23230 color match if background color is unspecified in the image spec.
23231 (uncache_image, lookup_image): Use it.
23232
232332007-06-01 Juanma Barranquero <lekktu@gmail.com>
23234
23235 * window.c (Fshrink_window): Reflow docstring.
23236
232372007-06-02 Chong Yidong <cyd@stupidchicken.com>
23238
23239 * Version 22.1 released.
23240
232412007-06-01 Richard Stallman <rms@gnu.org>
23242
23243 * xfns.c (x_encode_text): Add GCPRO.
23244
232452007-06-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23246
23247 * xfns.c (x_set_name_internal): Save encoded name before
23248 x_encode_text in case string data is relocated.
23249
232502007-05-31 Richard Stallman <rms@gnu.org>
23251
23252 * buffer.c (syms_of_buffer): Doc fix.
23253
232542007-05-30 Nick Roberts <nickrob@snap.net.nz>
23255
23256 * sysdep.c (init_sys_modes): Add rather than replace with
23257 O_NONBLOCK.
23258
23259 * frame.c [HAVE_GPM] (Fset_mouse_pixel_position): Add call to
23260 term_mouse_moveto.
23261
23262 * termhooks.h (term_mouse_moveto): New extern.
23263
23264 * term.c (mouse_face_window): Rename...
23265 (Qmouse_face_window): ...to this.
23266 (term_show_mouse_face, term_clear_mouse_face)
23267 (term_mouse_highlight): Use Qmouse_face_window.
23268 (term_mouse_moveto): New function.
23269 (term_mouse_position): Make it work.
23270 (syms_of_term): Uncomment assignment to mouse_position_hook.
23271 Staticpro Qmouse_face_window.
23272
232732007-05-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23274
23275 * xdisp.c (redisplay_internal): Bind inhibit-point-motion-hooks to t
23276 around current_column call.
23277
232782007-05-26 Dan Nicolaescu <dann@ics.uci.edu>
23279
23280 * xfaces.c (syms_of_xfaces): Delete stray semicolon.
23281 * xdisp.c (next_element_from_buffer):
23282 * window.c (delete_window):
23283 * term.c (term_mouse_highlight):
23284 * msdos.c (getdefdir):
23285 * macterm.c (mac_create_bitmap_from_bitmap_data)
23286 (init_font_name_table):
23287 * fns.c (Fsxhash):
23288 * data.c (Fmake_local_variable):
23289 * ccl.c (ccl_driver): Likewise.
23290
232912007-05-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23292
23293 * macterm.c [USE_CARBON_EVENTS] (mac_handle_window_event):
23294 Call mac_wakeup_from_rne on window size change.
23295
232962007-05-25 Chong Yidong <cyd@stupidchicken.com>
23297
23298 * image.c (uncache_image): Fix typo.
23299
233002007-05-23 Johannes Weiner <hannes@saeurebad.de> (tiny change)
23301
23302 * keyboard.c (make_lispy_movement): Condition on HAVE_GPM too.
23303
233042007-05-22 Richard Stallman <rms@gnu.org>
23305
23306 * xterm.c (x_connection_closed): Remove NO_RETURN.
23307
233082007-05-22 Martin Rudalics <rudalics@gmx.at>
23309
23310 * syntax.c (scan_words): Fix arg to UPDATE_SYNTAX_TABLE_BACKWARD.
23311
233122007-05-21 Chong Yidong <cyd@stupidchicken.com>
23313
23314 * image.c (uncache_image): New function.
23315 (Fimage_refresh): New function.
23316
233172007-05-20 Jan Djärv <jan.h.d@swipnet.se>
23318
23319 * Makefile.in: Move GPM check outside HAVE_X_WINDOWS.
23320
233212007-05-20 Nick Roberts <nickrob@snap.net.nz>
23322
23323 * config.in, keyboard.c, Makefile.in, sysdep.c, term.c,
23324 * termhooks.h: Use HAVE_GPM instead of HAVE_GPM_H.
23325
233262007-05-20 Nick Roberts <nickrob@snap.net.nz>
23327
23328 * keyboard.c (make_lispy_event): Make case GPM_CLICK_EVENT
23329 conditional on [HAVE_GPM_H].
23330
233312007-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
23332
23333 * syntax.c (skip_chars): Update syntax-table only after we checked that
23334 the new location is valid.
23335
233362007-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23337
23338 * macterm.c (x_calc_absolute_position): Add BLOCK_INPUT around
23339 mac_get_window_bounds.
23340
233412007-05-20 Nick Roberts <nickrob@snap.net.nz>
23342
23343 * Makefile.in (LIBGPM): Allow it to be set from configure.
23344 If set then link Emacs with it.
23345
23346 * config.in: Regenerate.
23347
23348 * lisp.h (add_gpm_wait_descriptor, delete_gpm_wait_descriptor):
23349 New externs.
23350
23351 * termhooks.h [HAVE_GPM_H] (enum event_kind): Add GPM_CLICK_EVENT.
23352 Include gpm.h.
23353 (handle_one_term_event, term_gpm): New externs.
23354
23355 * sysdep.c [HAVE_GPM_H] (init_sys_modes): Make gpm_fd nonblocking
23356 and allow it to be interrupted by SIGIO.
23357
23358 * process.c (gpm_wait_mask, max_gpm_desc): New variables.
23359 (wait_reading_process_output): Wait on gpm_fd too.
23360 (add_gpm_wait_descriptor, delete_gpm_wait_descriptor)): New functions.
23361 (add_gpm_wait_descriptor_called_flag): New variable.
23362 (delete_keyboard_wait_descriptor): Check gpm_wait_mask.
23363
23364 * keyboard.c [HAVE_GPM_H] (Qmouse_fixup_help_message)
23365 (make_lispy_movement, tracking_off, Ftrack_mouse, some_mouse_moved)
23366 (show_help_echo, readable_events, kbd_buffer_get_event, init_keyboard):
23367 Extend HAVE_MOUSE ifdefs to HAVE_GPM_H.
23368 (make_lispy_event): Add case GPM_CLICK_EVENT.
23369 (read_avail_input): Handle mouse input.
23370
23371 * term.c (write_glyphs_with_face): New function.
23372 [HAVE_GPM_H]: Include buffer.h, sys/fcntl.h.
23373 (mouse_face_beg_row, mouse_face_beg_col, mouse_face_end_row)
23374 (mouse_face_end_col, mouse_face_past_end, mouse_face_window)
23375 (mouse_face_face_id, term_gpm, pos_x, pos_y)
23376 (last_mouse_x, last_mouse_y): New variables.
23377 (term_show_mouse_face, term_clear_mouse_face, fast_find_position)
23378 (term_mouse_highlight, term_mouse_movement, term_mouse_position)
23379 (term_mouse_click, handle_one_term_event, Fterm_open_connection)
23380 (Fterm_close_connection): New functions.
23381 (term_init): Initialise mouse_face_window.
23382
233832007-05-19 Chong Yidong <cyd@stupidchicken.com>
23384
23385 * xdisp.c (redisplay_window): If first window line is a
23386 continuation line, recompute the new window start instead of
23387 recentering.
23388
233892007-05-18 Glenn Morris <rgm@gnu.org>
23390
23391 * m/alpha.h (ORDINARY_LINK): No longer define on OpenBSD.
23392 Suggested by Alfred M. Szmidt <ams@gnu.org>.
23393
233942007-05-17 Glenn Morris <rgm@gnu.org>
23395
23396 * m/macppc.h (ORDINARY_LINK): No longer define on OpenBSD.
23397
233982007-05-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23399
23400 * macterm.c [USE_CARBON_EVENTS] (mac_convert_event_ref): Also convert
23401 dead key repeat and up events.
23402
234032007-05-14 Chong Yidong <cyd@stupidchicken.com>
23404
23405 * image.c (pbm_load): Check image size for monochrome pbm.
23406
234072007-05-13 Chong Yidong <cyd@stupidchicken.com>
23408
23409 * xterm.c (XTread_socket): Revert last change.
23410
234112007-05-12 Chong Yidong <cyd@stupidchicken.com>
23412
23413 * image.c (pbm_load): Correctly check image size for greyscale pbm.
23414
23415 * xterm.c (XTread_socket): Yet Another Uncaught X Error Crash (YAUXEC).
23416
234172007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
23418
23419 * editfns.c (Ftranspose_regions): Yet another int/Lisp_Object
23420 mixup (YAILOM).
23421
234222007-05-07 Andreas Schwab <schwab@suse.de>
23423
23424 * keymap.c (Flookup_key): Fix typo in last change.
23425
234262007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
23427
23428 * keymap.c (Fdefine_key, Flookup_key): Only do the 0x80->meta_modifier
23429 mapping for unibyte strings.
23430
234312007-05-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23432
23433 * macmenu.c (mac_dialog_show): Apply 2007-04-27 change for xmenu.c.
23434 (Fx_popup_dialog) [MAC_OSX]: Likewise.
23435
234362007-04-29 Richard Stallman <rms@gnu.org>
23437
23438 * insdel.c (replace_range): For undo, record insertion first.
23439
234402007-04-29 Andreas Schwab <schwab@suse.de>
23441
23442 * lisp.h (VECSIZE): Use OFFSETOF.
23443
234442007-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23445
23446 * xdisp.c (try_window_reusing_current_matrix): Fix number of
23447 disabled lines.
23448
234492007-04-28 Richard Stallman <rms@gnu.org>
23450
23451 * lread.c (read_escape): In a string, \s is always space.
23452
234532007-04-27 Jan Djärv <jan.h.d@swipnet.se>
23454
23455 * xmenu.c (xdialog_show): Call Fredisplay before showing the dialog.
23456
23457 * gtkutil.c (xg_update_menubar, create_menus): Create empty
23458 submenu for menu bar items.
23459
23460See ChangeLog.10 for earlier changes.
23461
23462;; Local Variables:
23463;; coding: utf-8
23464;; add-log-time-zone-rule: t
aac0c6e3
MR
23465;; End:
23466
e3eb1dae 23467 Copyright (C) 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
aac0c6e3
MR
23468
23469 This file is part of GNU Emacs.
23470
23471 GNU Emacs is free software: you can redistribute it and/or modify
23472 it under the terms of the GNU General Public License as published by
23473 the Free Software Foundation, either version 3 of the License, or
23474 (at your option) any later version.
23475
23476 GNU Emacs is distributed in the hope that it will be useful,
23477 but WITHOUT ANY WARRANTY; without even the implied warranty of
23478 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
23479 GNU General Public License for more details.
23480
23481 You should have received a copy of the GNU General Public License
23482 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
23483
23484;; arch-tag: dfb6ad96-1550-4905-9e53-d2059ee84c40