* src/Makefile.in (ns_appresdir): Remove, unused.
[bpt/emacs.git] / src / ChangeLog
CommitLineData
cb027b32
GM
12010-05-14 Glenn Morris <rgm@gnu.org>
2
e20f1f07 3 * Makefile.in (SHELL): Move outside cpp section.
845612ac 4 (ns_appresdir): Remove, unused.
e20f1f07 5
cb027b32
GM
6 * s/netbsd.h (AMPERSAND_FULL_NAME): Remove (defined in AH_BOTTOM).
7
5a903aa9
GM
82010-05-13 Glenn Morris <rgm@gnu.org>
9
3369c79f
GM
10 * Makefile.in (FONT_DRIVERS): Place with other HAVE_X_WINDOWS stuff.
11 (TOOLTIP_SUPPORT): Place with other HAVE_WINDOW_SYSTEM stuff.
12
d5e982a6
GM
13 * Makefile.in (FONT_DRIVERS): If HAVE_X_WINDOWS is defined,
14 HAVE_WINDOW_SYSTEM must be too.
15
6192e163
GM
16 * Makefile.in (WINNT_SUPPORT): Remove, nt build does not use this file.
17 (lisp): Remove WINNT_SUPPORT.
18
472c5d6b
GM
19 * Makefile.in (OLDXMENU, LIBXMENU) [!HAVE_MENUS]:
20 Let configure set these variables (to empty) in this case as well.
21
0116466b
GM
22 * Makefile.in (LD_SWITCH_X_SITE): Define as a variable, not via cpp.
23 (LIBX_BASE): Use $LD_SWITCH_X_SITE.
24
5a903aa9
GM
25 * Makefile.in (C_SWITCH_X_SYSTEM, C_SWITCH_X_SITE, LIB_STANDARD)
26 (LIB_MATH, FONTCONFIG_CFLAGS, FONTCONFIG_LIBS, FREETYPE_CFLAGS)
27 (FREETYPE_LIBS, LIBOTF_CFLAGS, LIBOTF_LIBS, M17N_FLT_CFLAGS)
28 (M17N_FLT_LIBS, GNU_OBJC_CFLAGS, GNUSTEP_SYSTEM_LIBRARIES, LIBGPM)
29 (LIBRESOLV, UNEXEC_OBJ): For clarity, define variables to hold
c0a2b70a 30 the values output by configure.
5a903aa9
GM
31 (ALL_CFLAGS, obj, LIBES, temacs${EXEEXT}): Use the above variables.
32
1a0d7c06
GM
332010-05-12 Glenn Morris <rgm@gnu.org>
34
b5457f14
GM
35 * Makefile.in (YMF_PASS_LDFLAGS, LD, LINKER): Simplify the logic.
36 (LINKER_WAS_SPECIFIED): Remove.
37
1a0d7c06
GM
38 * Makefile.in (LIB_GCC): Set using configure, not cpp.
39 (GNULIB_VAR) [!ORDINARY_LINK]: Always set to $LIB_GCC.
40 * m/arm.h (LIB_GCC) [GNU_LINUX]:
41 * s/cygwin.h (LIB_GCC):
42 * s/freebsd.h (LIB_GCC):
43 * s/gnu-linux.h (LIB_GCC):
44 * s/msdos.h (LIB_GCC):
45 * s/netbsd.h (LIB_GCC):
46 Move to configure.
47
3ffd4615 482010-05-11 Karel Klic <kklic@redhat.com>
c90ca7b7
KH
49
50 * ftfont.c: Fix incorrect parentheses of #if condition for
51 definining M17N_FLT_USE_NEW_FEATURE.
52
acddf8ae
GM
532010-05-11 Glenn Morris <rgm@gnu.org>
54
55 * Makefile.in (LIBS_SYSTEM) [MSDOS]: Do not reset.
56 * s/msdos.h (MSDOS_LIBS_SYSTEM): Remove.
57
ae5e04fa
EZ
582010-05-10 Eli Zaretskii <eliz@gnu.org>
59
60 * xdisp.c (init_iterator): Don't turn on bidi reordering in
61 unibyte buffers. See
62 http://lists.gnu.org/archive/html/emacs-devel/2010-05/msg00263.html.
63
7490175b
GM
642010-05-10 Glenn Morris <rgm@gnu.org>
65
97efb629
GM
66 * Makefile.in (LIBS_SYSTEM): Set using configure, not cpp.
67 (LIBS_SYSTEM) [MSDOS]: Reset with MSDOS_LIBS_SYSTEM.
68 (LIBES): Use LIBS_SYSTEM as a variable.
69 * s/msdos.h (LIBS_SYSTEM): Rename to MSDOS_LIBS_SYSTEM. Always define.
70 * s/aix4-2.h (LIBS_SYSTEM):
71 * s/freebsd.h (LIBS_SYSTEM):
72 * s/hpux10-20.h (LIBS_SYSTEM):
73 * s/sol2-6.h (LIBS_SYSTEM):
74 * s/unixware.h (LIBS_SYSTEM):
75 Move to configure.
76
7490175b
GM
77 * s/aix4-2.h (MAIL_USE_LOCKF):
78 * s/bsd-common.h (MAIL_USE_FLOCK):
79 * s/darwin.h (MAIL_USE_FLOCK):
80 * s/gnu-linux.h (MAIL_USE_FLOCK):
81 * s/irix6-5.h (MAIL_USE_FLOCK):
82 * s/template.h (MAIL_USE_FLOCK):
83 Move to configure.
84
0235128c 852010-05-08 Chong Yidong <cyd@stupidchicken.com>
61a808e8
CY
86
87 * Version 23.2 released.
88
0235128c 892010-05-08 Andreas Schwab <schwab@linux-m68k.org>
5dcde606
AS
90
91 * composite.c (autocmp_chars): Save point as marker before calling
92 auto-composition-function (Bug#5984).
93
94 * lisp.h (restore_point_unwind): Add prototype.
95
96 * fileio.c (restore_point_unwind): Remove static attribute.
97
0235128c 982010-05-08 Kenichi Handa <handa@m17n.org>
c4170e32
KH
99
100 * ftfont.c (M17N_FLT_USE_NEW_FEATURE): Define it if we can use the
101 new feature of libotf and m17n-flt.
0235128c
SM
102 (ftfont_check_otf) [M17N_FLT_USE_NEW_FEATURE]:
103 Call OTF_check_features even if no specific feature is given.
c4170e32
KH
104 (PACK_OTF_TAG) [M17N_FLT_USE_NEW_FEATURE]: New macro.
105 (ftfont_drive_otf) [M17N_FLT_USE_NEW_FEATURE]: Handle the case
106 that OUT is NULL. Use OTF_drive_gsub_with_log and
107 OTF_drive_gpos_with_log instead of OTF_drive_gsub and
108 OTF_drive_gpos.
109 (ftfont_try_otf) [M17N_FLT_USE_NEW_FEATURE]: New function.
0235128c
SM
110 (ftfont_shape_by_flt) [M17N_FLT_USE_NEW_FEATURE]:
111 Setup mflt_enable_new_feature and mflt_try_otf.
112
4721152c
J
1132010-05-08 Jan Djärv <jan.h.d@swipnet.se>
114
115 * xsettings.c (Ftool_bar_get_system_style): Correct comment.
116
117 * gtkutil.c (xg_pack_tool_bar): Change show_all to show for handle
118 box and toolbar (Bug #6139).
119 (xg_create_tool_bar): Remove comment (Bug #6139).
120 (xg_make_tool_item): Remove gtk_widget_show_all (Bug #6139).
121 (xg_show_toolbar_item): Add gtk_widget_show for weventbox (Bug #6139).
122
ee0a16cf
JB
1232010-05-08 Juanma Barranquero <lekktu@gmail.com>
124
125 * makefile.w32-in ($(BLD)/eval.$(O), $(BLD)/w32fns.$(O)):
126 Update dependencies.
127
96d79611
EZ
1282010-05-08 Eli Zaretskii <eliz@gnu.org>
129
130 * fringe.c (update_window_fringes): Set up truncation bitmaps for
131 R2L lines.
132
40c17879
GM
1332010-05-08 Glenn Morris <rgm@gnu.org>
134
7b42b29f
GM
135 * Makefile.in (THIS_IS_MAKEFILE): Remove, unused.
136
40c17879
GM
137 * Makefile.in (LIBS_TERMCAP): Set with configure, not cpp.
138 (TERMCAP_OBJ): New, set by configure, replacing termcapobj.
139 (termcapobj): Replace with TERMCAP_OBJ.
140 (otherobj): Use $TERMCAP_OBJ instead of $termcapobj.
141 (LIBES): Use LIBS_TERMCAP as a variable.
142
143 * s/freebsd.h (osreldate.h): No longer include, since this file
144 does not use __FreeBSD_version any more.
145
146 * s/aix4-2.h (TERMINFO):
147 * s/cygwin.h (TERMINFO):
148 * s/darwin.h (TERMINFO, LIBS_TERMCAP) [HAVE_LIBNCURSES]:
149 * s/freebsd.h (TERMINFO, LIBS_TERMCAP):
150 * s/gnu-linux.h (TERMINFO, LIBS_TERMCAP) [HAVE_LIBNCURSES]:
151 * s/gnu.h (TERMINFO, LIBS_TERMCAP) [HAVE_LIBNCURSES]:
152 * s/hpux10-20.h (TERMINFO, LIBS_TERMCAP):
153 * s/irix6-5.h (TERMINFO):
154 * s/netbsd.h (LIBS_TERMCAP):
155 * s/openbsd.h (TERMINFO, LIBS_TERMCAP):
156 * s/sol2-6.h (LIBS_TERMCAP) [!TERMINFO]:
157 * s/usg5-4.h (TERMINFO):
158 Move to configure.
159
94b612ad
SM
1602010-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
161
162 * eval.c (unbind_to): Don't unbind a local binding into the global
163 binding when the local binding disappeared. Inversely, don't unbind
164 a global binding into a newly created local binding.
165 * data.c (set_internal): Make its `buf' arg into a `where' arg so we
166 can specify the frame to use, when applicable. Adjust callers.
167
15e12598
VB
1682010-05-07 Vincent Belaïche <vincent.belaiche@gmail.com>
169 Stefan Monnier <monnier@iro.umontreal.ca>
170
171 * floatfns.c (Fisnan, Fcopysign, Ffrexp, Fldexp): New functions.
172
f724825e
EZ
1732010-05-07 Eli Zaretskii <eliz@gnu.org>
174
5cba3209
EZ
175 * w32fns.c: Include w32.h.
176 (Fw32_shell_execute): Decode the error message before passing it
177 to `error'. (Bug#6126)
178
d16bdfc3
EZ
179 * msdos.c (dos_set_window_size):
180 * w16select.c (Fx_selection_exists_p): Use `Fsymbol_value (foo)'
181 instead of `XSYMBOL (foo)->value'.
182
59d93e87
EZ
1832010-05-07 Eli Zaretskii <eliz@gnu.org>
184
9fdec8bc
EZ
185 Fix the MS-DOS build, broken by autoconfiscation.
186
187 * Makefile.in: Don't use Make-style comments past the "start of
188 cpp stuff" line.
189 (MSDOS_OBJ): Remove xmenu.o (it is now defined by XMENU_OBJ).
190
191 * s/msdos.h (UNEXEC): Don't define (@unexec@ in Makefile.in is
192 edited directly by msdos/sed1v2.inp).
f724825e 193
2f86b22b
GM
1942010-05-07 Glenn Morris <rgm@gnu.org>
195
196 * Makefile.in (LD_SWITCH_SYSTEM): Set with configure, not cpp.
197 (LD_SWITCH_SYSTEM_EXTRA): New variable, set by configure.
198 (TEMACS_LDFLAGS): Use $LD_SWITCH_SYSTEM and $LD_SWITCH_SYSTEM_EXTRA,
199 move out of cpp section.
200 * s/freebsd.h (LD_SWITCH_SYSTEM):
201 * s/gnu-linux.h (LD_SWITCH_SYSTEM):
202 * s/netbsd.h (LD_SWITCH_SYSTEM):
203 * s/openbsd.h (LD_SWITCH_SYSTEM): Move to configure.in.
204
49ebbd65
DN
2052010-05-07 Dan Nicolaescu <dann@ics.uci.edu>
206
207 Define LIB_STANDARD and START_FILES using autoconf.
208 * s/usg5-4.h (LIB_STANDARD):
209 * s/netbsd.h (START_FILES):
210 * s/irix6-5.h (LIB_STANDARD):
211 * s/hpux10-20.h (LIB_STANDARD, START_FILES):
212 * s/gnu-linux.h (START_FILES, LIB_STANDARD):
213 * s/freebsd.h (START_FILES):
214 * s/darwin.h (START_FILES):
215 * s/cygwin.h (START_FILES):
216 * s/aix4-2.h (LIB_STANDARD):
217 * m/ibmrs6000.h (START_FILES): Remove, move logic to configure.in.
218 * Makefile.in (STARTFILES): Rename to START_FILES, define using
219 autoconf, not cpp.
220
d43c06d6
DN
2212010-05-06 Dan Nicolaescu <dann@ics.uci.edu>
222
28823648
DN
223 Remove NEED_BSDTTY and NEED_UNISTD_H.
224 * s/hpux10-20.h (NEED_BSDTTY): Remove.
225 * s/aix4-2.h (NEED_UNISTD_H): Remove.
226 * systty.h: Simplify conditionals for including <sys/bsdtty.h>,
227 <sys/ptyio.h> and <unistd.h>.
228
aca00430
DN
229 * emacs.c (main): Remove NO_DIR_LIBRARY conditional, unused.
230
d43c06d6
DN
231 * Makefile.in (STARTFILES): Conditionally define to make the usage clear.
232 * s/gnu.h (START_FILES): Remove empty definition.
233
3e56b11d
JD
2342010-05-06 Jan Djärv <jan.h.d@swipnet.se>
235
236 * xterm.c (x_draw_image_relief): Move declaration of extra to beginning.
237
e3cf0cde
GM
2382010-05-06 Glenn Morris <rgm@gnu.org>
239
240 * Makefile.in (CPP, LN_S): Remove unused variables.
241
774b9a60
SM
2422010-05-05 Stefan Monnier <monnier@iro.umontreal.ca>
243
244 * syntax.c (Fchar_syntax): Check the arg is a character (bug#6080).
245
4ab92842
LM
2462010-05-05 Lawrence Mitchell <wence@gmx.li>
247
248 * m/sparc.h: Fix typo in earlier change.
249
178f2507
SM
2502010-05-04 Stefan Monnier <monnier@iro.umontreal.ca>
251
252 Misc tweaks.
253 * eval.c (Fdefvaralias): Remove unintended nested if.
254 (internal_condition_case_2, internal_condition_case_n): Use ANSI type.
255
80f00217 2562010-05-04 Bernhard Herzog <bh@intevation.de> (tiny change)
991be6d4
JD
257
258 * xsmfns.c (smc_save_yourself_CB): strlen(client_id) => strlen(cwd).
259
ef03a4e6
DN
2602010-05-04 Dan Nicolaescu <dann@ics.uci.edu>
261
58eb6cf0
DN
262 Remove BSD_PGRPS.
263 * s/bsd-common.h (BSD_PGRPS): Remove undef.
264 * s/gnu-linux.h (BSD_PGRPS): Remove.
265 * term.c (dissociate_if_controlling_tty):
266 * sysdep.c (narrow_foreground_group, widen_foreground_group)
267 (init_sys_modes, reset_sys_modes):
268 * emacs.c (main):
269 * callproc.c (Fcall_process, child_setup): Remove code depending
270 on BSD_PGRPS.
271
ef03a4e6
DN
272 Remove POSIX_SIGNALS.
273 * s/usg5-4.h (POSIX_SIGNALS):
274 * s/netbsd.h (POSIX_SIGNALS):
275 * s/msdos.h (POSIX_SIGNALS):
276 * s/ms-w32.h (POSIX_SIGNALS):
277 * s/hpux11.h (POSIX_SIGNALS):
278 * s/gnu.h (POSIX_SIGNALS):
279 * s/gnu-linux.h (POSIX_SIGNALS):
280 * s/freebsd.h (POSIX_SIGNALS):
281 * s/darwin.h (POSIX_SIGNALS):
282 * s/cygwin.h (POSIX_SIGNALS):
283 * s/aix4-2.h (POSIX_SIGNALS): Remove definition.
284 * s/unixware.h:
285 * s/sol2-6.h: Remove comments on POSIX_SIGNALS.
286 * process.c (create_process):
287 * syssignal.h:
288 * sysdep.c (wait_for_termination, init_signals):
289 * process.c (create_process):
290 * msdos.c: POSIX_SIGNALS is always defined on all platforms,
291 remove all code that assumes the contrary.
292
49628785
GM
2932010-05-04 Glenn Morris <rgm@gnu.org>
294
27a2cdfc
GM
295 * s/gnu-linux.h (LD_SWITCH_SYSTEM): Use LD_SWITCH_X_SITE_AUX as a shell
296 variable.
297 * s/netbsd.h (LD_SWITCH_SYSTEM_tmp): Remove.
298 (LD_SWITCH_SYSTEM): Use $LD_SWITCH_X_SITE_AUX_RPATH.
299 * s/openbsd.h (LD_SWITCH_SYSTEM_tmp): Remove.
300 (LD_SWITCH_SYSTEM): Use $LD_SWITCH_X_SITE_AUX_RPATH instead of
301 LD_SWITCH_SYSTEM_tmp.
302 * Makefile.in (LD_SWITCH_X_SITE_AUX, LD_SWITCH_X_SITE_AUX_RPATH):
303 New variables, set by configure.
304
eb21eab5
GM
305 * s/aix4-2.h (LD_SWITCH_SYSTEM_TEMACS): Move to configure.in.
306 * s/darwin.h (HEADERPAD_EXTRA, LIBS_NSGUI): Remove.
307 (LD_SWITCH_SYSTEM_TEMACS): Move to configure.in.
308 * Makefile.in (LD_SWITCH_SYSTEM_TEMACS): New variable, set by configure.
309 (TEMACS_LDFLAGS): Use $LD_SWITCH_SYSTEM_TEMACS.
310
49628785
GM
311 * s/aix4-2.h (C_SWITCH_SYSTEM):
312 * m/alpha.h (C_SWITCH_MACHINE):
313 Move to configure.in.
314 * Makefile.in (C_SWITCH_MACHINE, C_SWITCH_SYSTEM):
315 New variables, set by configure.
316 (ALL_CFLAGS): Use $C_SWITCH_MACHINE and $C_SWITCH_SYSTEM in place of
317 $c_switch_machine and $c_switch_system.
318
7dff330b
DN
3192010-05-04 Dan Nicolaescu <dann@ics.uci.edu>
320
321 * s/hpux10-20.h (LIB_STANDARD): New definition.
322 * Makefile.in (ORDINARY_LINK): Remove setting LIB_STANDARD based
323 on it, not used anymore.
324
53967e09
CY
3252010-05-03 Chong Yidong <cyd@stupidchicken.com>
326
327 * eval.c (internal_condition_case_n): Rename from
328 internal_condition_case_2.
329 (internal_condition_case_2): New function.
330
331 * xdisp.c (safe_call): Use internal_condition_case_n.
332
333 * fileio.c (Fdelete_file, internal_delete_file): New arg FORCE.
334 (internal_delete_file, Frename_file): Callers changed.
335
336 * buffer.c (Fkill_buffer):
337 * callproc.c (delete_temp_file): Callers changed (Bug#6070).
338
339 * lisp.h: Update prototypes.
340
3dee6fdb
GM
3412010-05-03 Glenn Morris <rgm@gnu.org>
342
343 * Makefile.in (LIBX_EXTRA, LIBX_BASE): New variables.
344 (LIBXT_OTHER, LIBX_OTHER): New, set by configure.
345 (LIBXT): Set with configure, not cpp.
346 (LIBX): Remove.
347 (LIBES): Replace $LIBX with $LIBX_BASE and $LIBX_OTHER.
348
a101e0fb
DN
3492010-05-02 Dan Nicolaescu <dann@ics.uci.edu>
350
351 * m/amdx86-64.h (START_FILES, LIB_STANDARD): Remove.
352 The FreeBSD is not needed, the default works, Solaris version is
353 not needed, and the remaining case is not supported by configure.
354
f63d0028
JD
3552010-05-02 Jan Djärv <jan.h.d@swipnet.se>
356
357 * xsmfns.c (CHDIR_OPT): New define.
358 (smc_save_yourself_CB): Add CHDIR_OPT to options to use when
359 restarting emacs.
360
361 * xterm.c (x_connection_closed): Call Fkill_emacs instead of
362 shut_down_emacs.
363
364 * emacs.c (USAGE1): Mention --chdir.
365 (main): Handle --chdir.
366 (standard_args): Add --chdir.
367 (fatal_error_signal): Call Fkill_emacs for SIGTERM and SIGHUP (Bug
368 #5552).
369
e4814a9f
DN
3702010-05-01 Dan Nicolaescu <dann@ics.uci.edu>
371
cd03c74a
DN
372 Remove LD_SWITCH_MACHINE.
373 * Makefile.in (LD_SWITCH_MACHINE): Remove definition, unused.
374 (TEMACS_LDFLAGS): Do not use LD_SWITCH_MACHINE.
375
c3a398a1
DN
376 Clean up IRIX code.
377 * m/iris4d.h (TERMINFO, FIRST_PTY_LETTER): Move definitions ...
378 * s/irix6-5.h (TERMINFO, FIRST_PTY_LETTER): ... here.
379
87e7285c
DN
380 Clean up AIX code.
381 * m/ibmrs6000.inp: Remove file, unused.
382 * m/ibmrs6000.h (IBMR2AIX): Remove, unused.
383 (LD_SWITCH_MACHINE): Rename to LD_SWITCH_SYSTEM_TEMACS, and move
384 definition ...
385 * s/aix4-2.h (LD_SWITCH_SYSTEM_TEMACS): ... here.
386
80f00217
JB
387 * sysdep.c (child_setup_tty, init_sys_modes): Remove !IBMR2AIX code,
388 unused.
e4814a9f 389
59ca28de
EZ
3902010-05-01 Eli Zaretskii <eliz@gnu.org>
391
197daef4
EZ
392 Emulate POSIX_SIGNALS on MS-Windows.
393
394 * s/ms-w32.h (POSIX_SIGNALS, struct sigaction, SIG_BLOCK)
395 (SIG_SETMASK, SIG_UNBLOCK): Define.
d6dae14b
EZ
396
397 * sysdep.c (sys_signal) [WINDOWSNT]: #ifdef away.
398 (wait_for_termination) [WINDOWSNT]: Move MS-Windows specific code
399 from non-POSIX_SIGNALS section to POSIX_SIGNALS section.
400
80f00217
JB
401 * w32.c (sigemptyset, sigaddset, sigfillset, sigprocmask):
402 New stubs.
197daef4 403
af7c7572
EZ
404 Miscellaneous fixes of bidi display.
405
59ca28de
EZ
406 * xdisp.c (find_row_end): New function, refactored from display_line.
407 (display_line): Use it.
017ea819
EZ
408 (extend_face_to_end_of_line): In almost-filled rows, extend only
409 if the row is R2L and not continued.
166e930d 410 (display_line): Fix prepending of truncation glyphs to R2L rows.
af7c7572 411 Preserve overlay and string info in row->end.
166e930d
EZ
412 (insert_left_trunc_glyphs): Support addition of left truncation
413 glyphs to R2L rows.
b47e0dcf 414 (set_cursor_from_row): Don't place cursor on the vertical border
af7c7572
EZ
415 glyph between adjacent windows. Fix a crash when a display string
416 is continued to the next line. Don't return zero if cursor was
417 found by `cursor' property of a display string.
b47e0dcf
EZ
418 (try_cursor_movement): Don't assume that row->end == (row+1)->start,
419 test for that explicitly.
59ca28de 420
7acac9f4
GM
4212010-05-01 Glenn Morris <rgm@gnu.org>
422
423 * Makefile.in (gmallocobj, rallocobj, vmlimitobj): Initialize to null,
424 for clarity.
425 (OTHER_OBJ): Remove.
426 (PRE_ALLOC_OBJ, POST_ALLOC_OBJ): New, set by configure.
427 (otherobj): Use PRE_ALLOC_OBJ, POST_ALLOC_OBJ rather than OTHER_OBJ.
428
45841e65
KK
4292010-05-01 Karel Klíč <kklic@redhat.com>
430
431 * fileio.c (Ffile_selinux_context): Context functions may return null.
432
afc61943
DN
4332010-04-30 Dan Nicolaescu <dann@ics.uci.edu>
434
80f00217 435 * s/gnu.h (POSIX_SIGNALS, START_FILES): New definitions.
afc61943 436
5a1bb006
GM
4372010-04-30 Glenn Morris <rgm@gnu.org>
438
439 * Makefile.in (vmlimitobj) [!SYSTEM_MALLOC]: New variable. (Bug#6065)
440 (OTHER_OBJ): Define as a separate variable, for clarity.
441
210af043
J
4422010-04-30 Jan Djärv <jan.h.d@swipnet.se>
443
444 * xsettings.c: include limits.h and update file comment.
445
0a7df391
GM
4462010-04-30 Glenn Morris <rgm@gnu.org>
447
d5096f16
GM
448 * Makefile.in (OLDXMENU, LIBXMENU) [HAVE_MENUS]:
449 Set with configure, not cpp.
450 (LIBW): Remove, replace with $TOOLKIT_LIBW.
451
7eb1ac33
GM
452 * Makefile.in (mallocobj): Remove.
453 (otherobj): Simplify using @OTHER_OBJ@.
454
517d086b
GM
455 * Makefile.in (dispnew.o, frame.o, fringe.o, font.o, fontset.o)
456 (keyboard.o, window.o, xdisp.o, xfaces.o, menu.o):
457 Don't bother making nsgui.h dependency platform-specific.
458
0a7df391
GM
459 * Makefile.in (nsfns.o): Remove duplicate nsgui.h dependency.
460
d6d23852
SM
4612010-04-29 Stefan Monnier <monnier@iro.umontreal.ca>
462
d2630aef
SM
463 * process.c (read_process_output, exec_sentinel): Don't burp if the
464 sentinel/filter kills the current buffer (bug#6060).
465
f9dddf52 466 Fix wrong-docstring problem introduced with hash-consing. (Bug#6008)
d6d23852
SM
467 * eval.c (Fautoload): Set doc to a unique number rather than to 0.
468 Remove unused var `args'.
469 * lisp.h (XSETCARFASTINT, XSETCDRFASTINT): Remove.
470 (LOADHIST_ATTACH): Wrap with do...while to avoid surprises for callers.
471 * doc.c (store_function_docstring): Use XSETCAR.
472
f1e3642a
GM
4732010-04-28 Glenn Morris <rgm@gnu.org>
474
faf535f8
GM
475 * Makefile.in (BASE_WINDOW_SUPPORT, X_WINDOW_SUPPORT): New variables.
476 (WINDOW_SUPPORT) [HAVE_WINDOW_SYSTEM]: Use them.
477
c40f9449
GM
478 * Makefile.in (CYGWIN_OBJ): Set with configure, not cpp.
479
658f86ca
GM
480 * Makefile.in (GPM_MOUSE_SUPPORT): New, set by configure.
481 (MOUSE_SUPPORT) [!HAVE_MOUSE]: Use $GPM_MOUSE_SUPPORT.
482
bc0b5f61
GM
483 * Makefile.in (FONT_OBJ): New, set by configure.
484 (FONT_DRIVERS): Use $FONT_OBJ.
485
294c50a0
GM
486 * Makefile.in (LIBXMU): Set with configure, not cpp.
487 * s/aix4-2.h (LIBXMU):
488 * s/hpux10-20.h (LIBXMU):
489 Remove definition, now set in configure.
490
e6ec4e99
GM
491 * Makefile.in (NS_OBJ, NS_SUPPORT): Set with configure, not cpp.
492
f1e3642a
GM
493 * m/amdx86-64.h [i386]: Move this test to configure.in.
494
c6ea2936
GM
4952010-04-27 Glenn Morris <rgm@gnu.org>
496
8fdac2c3
GM
497 * Makefile.in (LIBXTR6): Set with configure, not cpp.
498 * s/unixware.h (NEED_LIBW): Remove definition.
499
986fb647
GM
500 * Makefile.in (LUCID_LIBW, MOTIF_LIBW): Remove, replacing by...
501 (TOOLKIT_LIBW): New, set by configure.
502 (@X_TOOLKIT_TYPE@): No longer define it.
503
c6ea2936
GM
504 * Makefile.in (LIBXP): Remove, since included in MOTIF_LIBW.
505 (MOTIF_LIBW): Set with configure, not cpp.
506 * s/aix4-2.h (LIB_MOTIF):
507 * s/gnu-linux.h (LIB_MOTIF):
508 * s/unixware.h (LIB_MOTIF): Move to configure.in.
509
aaa36002
DN
5102010-04-27 Dan Nicolaescu <dann@ics.uci.edu>
511
512 Reduce CPP usage.
513 * Makefile.in (LIB_X11_LIB): Remove, inline in the only user.
514 (obj): Use autoconf for unexec instead of cpp.
ed6281b0
DN
515 (C_SWITCH_SYSTEM, C_SWITCH_MACHINE, C_SWITCH_X_SITE): Remove
516 definitions and undefs. Inline definitions in the only user.
517 (ALL_CFLAGS): Substitute C_SWITCH_X_SYSTEM using autoconf.
aaa36002 518
b678dd8b
GM
5192010-04-27 Glenn Morris <rgm@gnu.org>
520
76cda504
GM
521 * m/amdx86-64.h (START_FILES, LIB_STANDARD): Change the logic around,
522 since the defaults (set by the system file) are fine in most cases.
523 [GNU_LINUX, __OpenBSD__, __NetBSD__, __APPLE__]: Remove sections.
524 * m/ibms390x.h (START_FILES, LIB_STANDARD):
525 * m/macppc.h (START_FILES, LIB_STANDARD) [GNU_LINUX]:
526 * m/sparc.h (START_FILES, LIB_STANDARD) [__linux__]:
527 Remove definitions, since they are set correctly in s/gnu-linux.h.
528 * s/freebsd.h (START_FILES, LIB_STANDARD):
529 * s/gnu-linux.h (START_FILES, LIB_STANDARD):
530 * s/hpux10-20.h (START_FILES):
531 * s/netbsd.h (START_FILES, LIB_STANDARD, START_FILES_1, END_FILES_1):
532 Use $CRT_DIR in place of fixed /usr/lib, /lib directories.
533
b678dd8b
GM
534 * Makefile.in (LIBXP, LUCID_LIBW, WIDGET_OBJ): Set via configure.
535 (MOTIF_LIBW): Use $LIBXP.
536 (otherobj): Use $WIDGET_OBJ.
537
9452ded1
DN
5382010-04-26 Dan Nicolaescu <dann@ics.uci.edu>
539
7e10844c
DN
540 * Makefile.in (LIBS_MACHINE): Remove, unused.
541
9452ded1
DN
542 Use autoconf instead of cpp for LIB_MATH.
543 * s/darwin.h (LIB_MATH): Do not define here, move to configure.
544 * s/cygwin.h (LIB_MATH): Likewise.
545 * Makefile.in (LIB_MATH): Do not define with cpp.
546 (LIBES): Use autoconf for LIB_MATH.
547
fcebfc6a
KH
5482010-04-26 Kenichi Handa <handa@m17n.org>
549
550 * composite.c (Ffind_composition_internal): Fix the return value
551 for an automatic composition.
552
39e2ad1b
DN
5532010-04-25 Dan Nicolaescu <dann@ics.uci.edu>
554
555 Remove all NO_ARG_ARRAY uses.
556 * fns.c (concat2, concat3, nconc2):
557 * eval.c (apply1, call1, call2, call3, call4, call5, call6)
558 (call7): Remove NO_ARG_ARRAY usage, assume it's always true.
559 * m/xtensa.h (NO_ARG_ARRAY):
560 * m/template.h (NO_ARG_ARRAY):
561 * m/sparc.h (NO_ARG_ARRAY):
562 * m/sh3.h (NO_ARG_ARRAY):
563 * m/mips.h (NO_ARG_ARRAY):
564 * m/macppc.h (NO_ARG_ARRAY):
565 * m/iris4d.h (NO_ARG_ARRAY):
566 * m/intel386.h (NO_ARG_ARRAY):
567 * m/ibms390x.h (NO_ARG_ARRAY):
568 * m/ibms390.h (NO_ARG_ARRAY):
569 * m/ibmrs6000.h (NO_ARG_ARRAY):
570 * m/ia64.h (NO_ARG_ARRAY):
571 * m/hp800.h (NO_ARG_ARRAY):
572 * m/arm.h (NO_ARG_ARRAY):
573 * m/amdx86-64.h (NO_ARG_ARRAY):
574 * m/alpha.h (NO_ARG_ARRAY): Remove definition.
575
adf4f59c
EZ
5762010-04-25 Eli Zaretskii <eliz@gnu.org>
577
6bdf5d65
EZ
578 * xdisp.c (display_line): Don't assume 2nd call to
579 get_next_display_element cannot return zero. (Bug#6030)
f538fcec
EZ
580 (iterate_out_of_display_property): New function, body from pop_it.
581 (pop_it): Use it.
adf4f59c 582
dfbbda83
GM
5832010-04-24 Glenn Morris <rgm@gnu.org>
584
585 * m/amdx86-64.h (START_FILES, LIB_STANDARD) [__OpenBSD__]:
586 For clarity, revert to using fixed /usr/lib rather than $CRT_DIR.
587 (START_FILES, LIB_STANDARD) [__FreeBSD__]: Merge into the generic case,
588 since CRT_DIR defaults to /usr/lib. Suggested by Dan Nicolaescu.
589
2d4018aa
EZ
5902010-04-24 Eli Zaretskii <eliz@gnu.org>
591
a49884a6
EZ
592 * xdisp.c (display_line): Use `reseat' instead of `reseat_1', and
593 use `get_next_display_element' and `set_iterator_to_next' to
594 advance to the next character, when looking for the character that
595 begins the next row.
596
76db6fcc 597 * .gdbinit: Add a "set Fmake_symbol" line to force GDB to load the
2d4018aa
EZ
598 definition of "struct Lisp_Symbol".
599
70eab5c1
GM
6002010-04-24 Glenn Morris <rgm@gnu.org>
601
602 * Makefile.in (CRT_DIR): New variable, set by configure.
603 * m/amdx86-64.h, m/ibms390x.h (START_FILES, LIB_STANDARD):
604 Use $CRT_DIR rather than HAVE_LIB64_DIR. (Bug#5655)
605
1ad4cc3d
DN
6062010-04-23 Dan Nicolaescu <dann@ics.uci.edu>
607
e769f484
DN
608 * Makefile.in: Remove C_SWITCH_X_MACHINE, unused.
609
4196ff33
DN
610 * s/cygwin.h (LIBS_DEBUG): Remove, unused.
611
879b0ee4
DN
612 Remove redundant flags.
613 * s/freebsd.h (C_SWITCH_SYSTEM):
614 * s/hpux10-20.h (C_SWITCH_X_SYSTEM, LD_SWITCH_X_DEFAULT):
615 * s/netbsd.h (C_SWITCH_SYSTEM):
616 * s/openbsd.h (LD_SWITCH_X_DEFAULT): Remove, configure takes care
617 of these.
618
03cbbcb8
DN
619 Simplify m/intel386.h.
620 * m/intel386.h (CRT0_DUMMIES): Remove, inline value in the only
621 user: ecrt0.c.
622 (SOLARIS2): Remove LOAD_AVE_TYPE, LOAD_AVE_CVT, LIBS_MACHINE, unused.
623 (USG5_4): Move LOAD_AVE_TYPE, LOAD_AVE_CVT, FSCALE definitions to
624 the only user: s/unixware.h.
625 * ecrt0.c: Remove #ifndef static. Inline CRT0_DUMMIES definition
626 from m/intel386.h.
627 * s/unixware.h (LOAD_AVE_TYPE, LOAD_AVE_CVT, FSCALE): Definitions
628 moved here from m/intel386.h.
629
1ad4cc3d
DN
630 * m/mips.h: Remove #if 0 code.
631
8785b888
EZ
6322010-04-23 Eli Zaretskii <eliz@gnu.org>
633
728588cc
EZ
634 Fix display of composed characters from L2R scripts in bidi buffers.
635 * xdisp.c (set_iterator_to_next, next_element_from_composition):
636 After advancing IT past the composition, resync the bidi iterator
637 with IT's position. (Bug#5977)
638
a63f80b4
DN
6392010-04-23 Dan Nicolaescu <dann@ics.uci.edu>
640
641 * Makefile.in (LD_SWITCH_MACHINE_TEMACS): Remove, unused.
642 (TEMACS_LDFLAGS): Don't use LD_SWITCH_SYSTEM_TEMACS.
643
ff5dec5c
SM
6442010-04-23 Stefan Monnier <monnier@iro.umontreal.ca>
645
646 * gtkutil.c: Include xsettings.h for Ftool_bar_get_system_style.
647
8785b888
EZ
6482010-04-23 Eli Zaretskii <eliz@gnu.org>
649
58ccf243 650 Support `display' text properties and overlay strings in bidi buffers.
8785b888
EZ
651 * xdisp.c (pop_it): When the stack is popped after displaying
652 from a string, bidi-iterate to exit from the text portion covered
653 by the `display' property or overlay. (Bug#5988, bug#5920)
654
feeb1604
DN
6552010-04-23 Dan Nicolaescu <dann@ics.uci.edu>
656
8e324eb6
DN
657 * m/macppc.h (LD_SWITCH_SYSTEM_TEMACS): Remove #undef.
658 (LD_SWITCH_MACHINE_TEMACS): Remove, configure sets nocombreloc.
659
809fcaba
DN
660 * s/netbsd.h (LD_SWITCH_SYSTEM_TEMACS): Remove, configure sets nocombreloc.
661 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Remove.
662
ed710380
DN
663 Simplify STARTFILES definition.
664 * s/hpux10-20.h (START_FILES): Explicitly define here instead of
665 relying on Makefile.in to define it.
666 * s/cygwin.h (START_FILES): Likewise.
667 * Makefile.in (STARTFILES): Remove conditional code, not needed anymore.
668
feeb1604
DN
669 Clean up Solaris code.
670 * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS, C_SWITCH_X_SYSTEM)
671 (LIB_MOTIF): Remove, configure takes care of this.
672 (NOT_USING_MOTIF): Remove, unused.
673 * xrdb.c: Remove #if 0-ed #include.
674 (SYSV): Remove conditional for old SysV.
675 * sysdep.c (closedir): Remove conditional code for Solaris,
676 Solaris has closedir.
677
a0d0b563
JD
6782010-04-22 Jan Djärv <jan.h.d@swipnet.se>
679
680 * xsettings.c (read_and_apply_settings): Check if current_font is
681 NULL before strcmp (Bug#6001).
682
56bae7c7
DN
6832010-04-21 Dan Nicolaescu <dann@ics.uci.edu>
684
685 Clean up HP-UX files.
686 * m/hp800.h (NO_REMAP, VIRT_ADDR_VARIES, DATA_SEG_BITS)
687 (DATA_START, TEXT_START, LOAD_AVE_TYPE, LOAD_AVE_CVT)
688 (LDAV_SYMBOL, index, rindex): Move definitions only used in HP-UX ...
689 * s/hpux10-20.h: ... to the only user, here.
690
372b7a95
EZ
6912010-04-21 Eli Zaretskii <eliz@gnu.org>
692
693 * bidi.c (bidi_find_paragraph_start, bidi_at_paragraph_end): Don't
694 use buffer-local values of paragraph-start and paragraph-separate.
695 <paragraph_start_re, paragraph_separate_re>: Rename from
696 fallback_paragraph_start_re and fallback_paragraph_separate_re.
697 (Bug#5992)
698
f904c0f9
JD
6992010-04-21 Jan Djärv <jan.h.d@swipnet.se>
700
701 * xsettings.c: Qmonospace_font_name, Qtool_bar_style and
702 current_tool_bar_style are new.
703 (store_config_changed_event): Rename from store_font_changed_event.
704 (XSETTINGS_TOOL_BAR_STYLE): New define.
705 (SEEN_FONT, SEEN_TB_STYLE): New enum values.
706 (struct xsettings): Add font and tb_style, set xft stuff inside #ifdef
707 HAVE_XFT.
708 (something_changedCB): store_font_changed_event is now
709 store_config_changed_event
710 (parse_settings): Rename from parse_xft_settings. Read
711 non-xft xsettings outside #ifdef HAVE_XFT.
712 (read_settings): Renamed from read_xft_settings.
713 (apply_xft_settings): Take current settings as parameter. Do not
714 call read_(xft)_settings.
715 (read_and_apply_settings): New function.
716 (xft_settings_event): Do non-xft stuff out of HAVE_XFT. Call
717 read_and_apply_settings if there are settings to be read.
718 (init_xsettings): Renamed from init_xfd_settings.
719 Call read_and_apply_settings unconditionally.
720 (xsettings_initialize): Call init_xsettings.
721 (Ftool_bar_get_system_style): New function.
722 (syms_of_xsettings): Define Qmonospace_font_name and
723 Qtool_bar_style. Initialize current_tool_bar_style to nil.
f9dddf52 724 defsubr Stool_bar_get_system_style. Fprovide on
f904c0f9 725 dynamic-setting.
31a01b90 726 Move misplaced HAVE_GCONF
f904c0f9
JD
727
728 * xsettings.h (Ftool_bar_get_system_style): Declare.
729
730 * xdisp.c: Vtool_bar_style, tool_bar_max_label_size,
731 Qtext, Qboth, Qboth_horiz are new.
732 (syms_of_xdisp): Intern Qtext, Qboth, Qboth_horiz, DEFVAR
733 Vtool_bar_style, tool_bar_max_label_size.
734
735 * lisp.h: Extern declare Qtext, Qboth, Qboth_horiz.
736
737 * keyboard.c: QClabel is new.
738 (parse_tool_bar_item): Take out QClabel from tool bar items.
739 Try to construct a label if ther is no QClabel.
740 (syms_of_keyboard): Intern :label as QClabel.
741
742 * dispextern.h (tool_bar_item_idx): TOOL_BAR_ITEM_LABEL is new.
743 (Vtool_bar_style, tool_bar_max_label_size, DEFAULT_TOOL_BAR_LABEL_SIZE):
744 New.
745
746 * Makefile.in (SOME_MACHINE_LISP): font-setting.el renamed to
747 dynamic-setting.el.
748
749 * gtkutil.c (xg_tool_bar_menu_proxy): Handle label in tool bar item.
750 (xg_make_tool_item, xg_show_toolbar_item): New function.
751 (update_frame_tool_bar): Take label from TOOL_BAR_ITEM_LABEL.
752 Call xg_make_tool_item to make a tool bar item.
753 Call xg_show_toolbar_item. Use wtoolbar instead of x->toolbar_widget.
754
755 * xterm.c (x_draw_image_relief): Take Vtool_bar_button_margin
756 into account for toolbars.
757
c632dfda
JD
7582010-04-21 Jan Djärv <jan.h.d@swipnet.se>
759
760 * data.c (make_blv): Declarations before code (Bug#5993).
761
10efe302
GM
7622010-04-21 Glenn Morris <rgm@gnu.org>
763
764 * Makefile.in (DBUS_OBJ, GTK_OBJ, XMENU_OBJ, XOBJ):
765 Define using autoconf, not cpp.
766 (LIBXSM): New variable, set by autoconf.
767 (LIBXT): Use $LIBXSM.
768
4285ac5a
DN
7692010-04-21 Dan Nicolaescu <local_user@dannlt>
770
3ec759e7
DN
771 Remove NOMULTIPLEJOBS, unused.
772 * s/template.h (NOMULTIPLEJOBS):
773 * s/msdos.h (NOMULTIPLEJOBS): Remove, unused.
774
4285ac5a
DN
775 Simplify LD_SWITCH_SYSTEM_TEMACS usage.
776 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS):
777 * s/gnu-linux.h (LD_SWITCH_SYSTEM_TEMACS): Remove, configure
778 detects -znocombreloc and passes it to the linker
779 * s/hpux10-20.h (LD_SWITCH_SYSTEM_TEMACS): Remove, empty.
780
2807228d
GM
7812010-04-21 Glenn Morris <rgm@gnu.org>
782
783 * Makefile.in (LIBSELINUX_LIBS): Move out of #ifdef.
784
574c05e2
KK
7852010-04-21 Karel Klíč <kklic@redhat.com>
786
787 * Makefile.in (LIBSELINUX_LIBS): New.
788 (LIBES): Add $LIBSELINUX_LIBS.
789 * eval.c, lisp.h (call7): New function.
790 * fileio.c [HAVE_LIBSELINUX]: Include selinux headers.
791 (Ffile_selinux_context, Fset_file_selinux_context):
792 New functions.
793 (Fcopy_file): New parameter preserve-selinux-context.
794 (Frename_file): Preserve selinux context when renaming by copy-file.
795
91eac4bb 7962010-04-21 Juanma Barranquero <lekktu@gmail.com>
4e2af782 797 Eli Zaretskii <eliz@gnu.org>
91eac4bb 798
50426a04
JB
799 Don't depend on cm.c or termcap.c on Windows, use stubs.
800 * makefile.w32-in (OBJ1): Remove cm.$(O) and termcap.$(O).
801 ($(BLD)/cm.$(O), $(BLD)/termcap.$(O)): Remove.
802 * w32console.c (current_tty, cost): New vars; lifted from cm.c.
803 (evalcost, cmputc, cmcheckmagic, cmcostinit, cmgoto, Wcm_clear)
804 (sys_tputs, sys_tgetstr): New stubs.
805 * s/ms-w32.h (chcheckmagic, cmcostinit, cmgoto, cmputc, Wcm_clear)
806 (tputs, tgetstr): New; define to sys_*.
91eac4bb 807
938efb77
JB
8082010-04-20 Juanma Barranquero <lekktu@gmail.com>
809
810 * buffer.c (syms_of_buffer) <bidi-display-reordering>: Doc fix.
811
b4bf28b7
SM
8122010-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
813
8b1e1112
SM
814 * data.c (Fmake_variable_buffer_local, Fmake_local_variable):
815 Just signal a warning rather than an error when inside a let.
816 (Fmake_variable_frame_local): Add the same test.
817
933ac235
SM
818 * font.c (syms_of_font): Make the style table vars read-only.
819
b4bf28b7
SM
820 * buffer.h (struct buffer): Remove unused var `direction_reversed'.
821 * buffer.c (init_buffer_once, syms_of_buffer): Remove its initialization.
822
823 * bidi.c (bidi_initialize): Simplify fallback_paragraph_*_re init.
824
93d68d0c
EZ
8252010-04-20 Eli Zaretskii <eliz@gnu.org>
826
827 Fix R2L paragraph display on TTY.
828
829 * xdisp.c (unproduce_glyphs): New function.
830 (display_line): Use it when produced glyphs are discarded from R2L
831 glyph rows.
832 (append_composite_glyph): In R2L rows, prepend the glyph rather
833 than appending it.
834
835 * term.c (append_composite_glyph): In R2L rows, prepend the glyph
836 rather than append it. Set up the resolved_level and bidi_type
837 attributes of the appended glyph.
283ccc18
EZ
838 (produce_special_glyphs): Mirror the backslash continuation
839 character in R2L lines.
93d68d0c 840
283ccc18 841 Implement display of R2L paragraphs in GUI sessions.
26cdf528 842
283ccc18
EZ
843 * xdisp.c [HAVE_WINDOW_SYSTEM]: Add prototype for
844 append_stretch_glyph.
845 (set_cursor_from_row) <cursor_x>: Remove unused variable. Fix
846 off-by-one error in computing x at end of text in the row.
847 (append_stretch_glyph): In reversed row, prepend the glyph rather
848 than append it. Set resolved_level and bidi_type of the glyph.
849 (extend_face_to_end_of_line): If the row is reversed, prepend a
850 stretch glyph whose width is such that the rightmost glyph will be
851 drawn at the right margin of the window. Fix off-by-one error on
852 TTY frames in testing whether a line needs face extension. Fix
853 face extension at ZV. If this is the last glyph row, use
854 DEFAULT_FACE_ID, to avoid painting the rest of the window with the
855 region face.
856 (set_cursor_from_row, display_line): Use
26cdf528
EZ
857 MATRIX_ROW_CONTINUATION_LINE_P instead of testing value of
858 row->continuation_lines_width.
283ccc18
EZ
859 (next_element_from_buffer): Don't call bidi_paragraph_init if we
860 are at ZV. Fixes a crash when reseated to ZV by
861 try_window_reusing_current_matrix.
45903529
EZ
862 (display_and_set_cursor, erase_phys_cursor): Handle negative HPOS,
863 which happens with R2L glyph rows. Fixes a crash when inserting a
864 character at end of an R2L line.
283ccc18
EZ
865 (set_cursor_from_row): Don't be fooled by truncated rows: don't
866 treat them as having zero-width characters. Improve comments.
867 Don't reverse pos_before and pos_after for reversed glyph rows.
868 Set cursor.x to negative value when the cursor might be on the
869 left fringe.
870 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): For R2L lines, consider the
871 left fringe, not the right one.
f951a506
EZ
872 (notice_overwritten_cursor, draw_phys_cursor_glyph)
873 (erase_phys_cursor): For reversed cursor_row, support cursor on
874 the left fringe.
875
283ccc18
EZ
876 * fringe.c (update_window_fringes): For R2L rows, swap the bitmaps
877 of continuation indicators on the fringes.
878 (draw_fringe_bitmap): For reversed glyph rows, allow cursor on the
879 left fringe.
880
f951a506
EZ
881 * w32term.c (w32_draw_window_cursor): For reversed glyph rows,
882 draw cursor on the left fringe.
883
884 * xterm.c (x_draw_window_cursor): For reversed glyph rows, draw
885 cursor on the left fringe.
886
f951a506
EZ
887 * dispnew.c (update_text_area): Handle reversed desired rows when
888 the cursor is on the left fringe.
889 (set_window_cursor_after_update): Limit cursor's hpos by -1 from
890 below, not by 0, for when the cursor is on the left fringe.
891
3bb49aaf
JD
8922010-04-20 Jan Djärv <jan.h.d@swipnet.se>
893
894 * gtkutil.c (xg_event_is_for_scrollbar): Check if grabbed
895 widget is a scrollbar.
896
c0be27fd
KH
8972010-04-20 Kenichi Handa <handa@m17n.org>
898
899 * charset.c (char_charset): Consider Vcharset_non_preferred_head
900 only when the arg CHARSET_LIST is nil.
901
ce5b453a
SM
9022010-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
903
904 Make variable forwarding explicit rather the using special values.
905 Basically, this makes the structure of buffer-local values and object
906 forwarding explicit in the type of Lisp_Symbols rather than use
907 special Lisp_Objects for that. This tends to lead to slightly more
908 verbose code, but is more C-like, simpler, and makes it easier to make
909 sure we handled all cases, among other things by letting the compiler
910 help us check it.
911 * lisp.h (enum Lisp_Misc_Type, union Lisp_Misc):
912 Removing forwarding objects.
913 (enum Lisp_Fwd_Type, enum symbol_redirect, union Lisp_Fwd): New types.
914 (struct Lisp_Symbol): Make the various forms of variable-forwarding
915 explicit rather than hiding them inside Lisp_Object "values".
916 (XFWDTYPE): New macro.
917 (XINTFWD, XBOOLFWD, XOBJFWD, XKBOARD_OBJFWD): Redefine.
918 (XBUFFER_LOCAL_VALUE): Remove.
919 (SYMBOL_VAL, SYMBOL_ALIAS, SYMBOL_BLV, SYMBOL_FWD, SET_SYMBOL_VAL)
920 (SET_SYMBOL_ALIAS, SET_SYMBOL_BLV, SET_SYMBOL_FWD): New macros.
921 (SYMBOL_VALUE, SET_SYMBOL_VALUE): Remove.
922 (struct Lisp_Intfwd, struct Lisp_Boolfwd, struct Lisp_Objfwd)
923 (struct Lisp_Buffer_Objfwd, struct Lisp_Kboard_Objfwd):
924 Remove the Lisp_Misc_* header.
925 (struct Lisp_Buffer_Local_Value): Redefine.
926 (BLV_FOUND, SET_BLV_FOUND, BLV_VALUE, SET_BLV_VALUE): New macros.
927 (struct Lisp_Misc_Any): Add filler to get the right size.
928 (struct Lisp_Free): Use struct Lisp_Misc_Any rather than struct
929 Lisp_Intfwd.
930 (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL, DEFVAR_INT)
931 (DEFVAR_KBOARD): Allocate a forwarding object.
932 * data.c (do_blv_forwarding, store_blv_forwarding): New macros.
933 (let_shadows_global_binding_p): New function.
934 (union Lisp_Val_Fwd): New type.
935 (make_blv): New function.
936 (swap_in_symval_forwarding, indirect_variable, do_symval_forwarding)
937 (store_symval_forwarding, swap_in_global_binding, Fboundp)
938 (swap_in_symval_forwarding, find_symbol_value, Fset)
939 (let_shadows_buffer_binding_p, set_internal, default_value)
940 (Fset_default, Fmake_variable_buffer_local, Fmake_local_variable)
941 (Fkill_local_variable, Fmake_variable_frame_local)
942 (Flocal_variable_p, Flocal_variable_if_set_p)
943 (Fvariable_binding_locus):
944 * xdisp.c (select_frame_for_redisplay):
945 * lread.c (Fintern, Funintern, init_obarray, defvar_int)
946 (defvar_bool, defvar_lisp_nopro, defvar_lisp, defvar_kboard):
947 * frame.c (store_frame_param):
948 * eval.c (Fdefvaralias, Fuser_variable_p, specbind, unbind_to):
949 * bytecode.c (Fbyte_code) <varref, varset>: Adapt to the new symbol
950 value structure.
951 * buffer.c (PER_BUFFER_SYMBOL): Move from buffer.h.
952 (clone_per_buffer_values): Only adjust markers into the current buffer.
953 (reset_buffer_local_variables): PER_BUFFER_IDX is never -2.
954 (Fbuffer_local_value, set_buffer_internal_1)
955 (swap_out_buffer_local_variables):
956 Adapt to the new symbol value structure.
957 (DEFVAR_PER_BUFFER): Allocate a Lisp_Buffer_Objfwd object.
958 (defvar_per_buffer): Take a new arg for the fwd object.
959 (buffer_lisp_local_variables): Return a proper alist (different fix
960 for bug#4138).
961 * alloc.c (Fmake_symbol): Use SET_SYMBOL_VAL.
962 (Fgarbage_collect): Don't handle buffer_defaults specially.
963 (mark_object): Handle new symbol value structure rather than the old
964 special Lisp_Misc_* objects.
965 (gc_sweep) <symbols>: Free also the buffer-local-value objects.
966 * term.c (set_tty_color_mode):
967 * bidi.c (bidi_initialize): Don't access the ->value field directly.
968 * buffer.h (PER_BUFFER_VAR_OFFSET): Don't bother with
969 a buffer_local_flags.
970 * print.c (print_object): Get rid of impossible forwarding objects.
971
fd3998ff
EZ
9722010-04-19 Eli Zaretskii <eliz@gnu.org>
973
974 * bidi.c (bidi_get_type, bidi_get_category)
975 (bidi_at_paragraph_end, bidi_resolve_weak, bidi_resolve_neutral)
ce5b453a
SM
976 (bidi_type_of_next_char, bidi_level_of_next_char):
977 Declare static. Use `INLINE' rather than `inline'.
fd3998ff 978
e42cd1a7
JB
9792010-04-19 Juanma Barranquero <lekktu@gmail.com>
980
981 * dired.c (Ffile_attributes): Fix typo in docstring.
982
6e104790 9832010-04-19 Adrian Robert <Adrian.B.Robert@gmail.com>
79353a53
AR
984
985 * nsmenu.m (EmacsDialog-runDialogAt:): Declare ret as
986 NSInteger (Bug#5811).
987
6e104790 9882010-04-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
658b9b93
YM
989
990 * s/darwin.h (PTY_ITERATION, PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF)
991 (PTY_OPEN): New defines. Use openpty (Bug#726, Bug#5819).
992
6e104790 9932010-04-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16009a0e
YM
994
995 * frame.h (FRAME_LINE_TO_PIXEL_Y): Add missing parenthesis.
996
6e104790
SM
9972010-04-19 Chong Yidong <cyd@stupidchicken.com>
998
999 * xdisp.c (prepare_menu_bars): Don't call ns_set_doc_edited for
1000 terminal frames (Bug#5837).
1001
37dcfea0
EZ
10022010-04-19 Eli Zaretskii <eliz@gnu.org>
1003
d1da276f
EZ
1004 * .gdbinit (xsubchartable): New command.
1005
37dcfea0
EZ
10062010-04-19 Eli Zaretskii <eliz@gnu.org>
1007
1008 * xdisp.c (display_line): Don't write beyond the last glyph row in
9166b0f3 1009 the desired matrix. Fixes a crash in "emacs -nw" (bug#5972), see
37dcfea0
EZ
1010 http://lists.gnu.org/archive/html/emacs-devel/2010-04/msg00075.html
1011 and
1012 http://lists.gnu.org/archive/html/emacs-devel/2010-04/msg00213.html
1013
e9515805
SM
10142010-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
1015
1016 * alloc.c (Fpurecopy): Hash-cons if requested.
1017 (syms_of_alloc): Update purify-flag docstring.
1018
22aa44a8
JD
10192010-04-18 Jan Djärv <jan.h.d@swipnet.se>
1020
1021 * gtkutil.c (xg_set_geometry): Set size in geometry string also.
1022 (x_wm_set_size_hint): Set USER_POS in hint_flags (Bug#5968).
1023
ebb5722e
EZ
10242010-04-17 Eli Zaretskii <eliz@gnu.org>
1025
1026 Fix a crash when an NSM character is inserted at BEGV.
1027
1028 * bidi.c (bidi_init_it): Fix initialization of bidi_it->prev.
1029 (bidi_resolve_weak): Don't use prev.type_after_w1 if it is
1030 NEUTRAL_B or UNKNOWN_BT.
1031
0f4442ef
EZ
10322010-04-16 Eli Zaretskii <eliz@gnu.org>
1033
1034 * xdisp.c (set_cursor_from_row): Don't consider possibility of
1035 other rows with cursor unless they are different from this row and
1036 this row is part of a continued line. (Bug#5943)
1037
7d4e45f8
DN
10382010-04-16 Dan Nicolaescu <dann@ics.uci.edu>
1039
1040 * s/freebsd.h: Restore osreldate.h include.
1041 Suggested by Naohiro Aota.
1042
5ba5ec85
J
10432010-04-16 Jan Djärv <jan.h.d@swipnet.se>
1044
1045 * xmenu.c (apply_systemfont_to_menu): *childs was incorrectly used.
1046
20af301d
CY
10472010-04-16 Ken Brown <kbrown@cornell.edu> (tiny change)
1048
1049 * s/cygwin.h: Avoid linking against static libgcc.
1050
a4b000fb
JL
10512010-04-15 Juri Linkov <juri@jurta.org>
1052
1053 * window.c: Add Qscroll_command.
1054 Remove Vscroll_preserve_screen_position_commands.
1055 (window_scroll_pixel_based, window_scroll_line_based): Check the
1056 `scroll-command' property on the last command instead of searching
1057 the last command in Vscroll_preserve_screen_position_commands.
1058 (syms_of_window): Initialize and staticpro `Qscroll_command'.
1059 Put Qscroll_command property on Qscroll_up and Qscroll_down.
1060 (scroll-preserve-screen-position): Doc fix.
1061 (Vscroll_preserve_screen_position_commands): Remove variable.
1062
bc319ba4
DN
10632010-04-15 Dan Nicolaescu <dann@ics.uci.edu>
1064
6bb24457
DN
1065 * xdisp.c (message): Do not use NO_ARG_ARRAY.
1066
19d4c244
DN
10672010-04-14 Dan Nicolaescu <dann@ics.uci.edu>
1068
1069 Reduce cpp use in Makefile.in.
1070 * Makefile.in (DBUS_CFLAGS, DBUS_LIBS, GCONF_CFLAGS, GCONF_LIBS)
1071 (LIBSOUND, CFLAGS_SOUND, RSVG_LIBS, RSVG_CFLAGS, INTERVALS_H)
1072 (GETLOADAVG_LIBS, RUN_TEMACS): Move to the autoconf section.
1073 (ORDINARY_LINK): Remove, defined in src/s/gnu.h.
1074 (CRT0_COMPILE): Remove, inline it in the only user.
1075
32129746
JL
10762010-04-14 Juri Linkov <juri@jurta.org>
1077
1078 * window.c (keys_of_window): Rebind `C-v' from `scroll-up' to
1079 `scroll-up-command' and `M-v' from `scroll-down' to
1080 `scroll-down-command'.
1081
9013a7f8
JL
10822010-04-14 Juri Linkov <juri@jurta.org>
1083
1084 * window.c (Vscroll_preserve_screen_position_commands): New variable
1085 with the default value as the list of Qscroll_down and Qscroll_up.
1086 (window_scroll_pixel_based, window_scroll_line_based): Search the
1087 last command in the list Vscroll_preserve_screen_position_commands
1088 instead of comparing with Qscroll_up and Qscroll_down.
1089
4bef8d26
JD
10902010-04-13 Jan Djärv <jan.h.d@swipnet.se>
1091
92848133
JD
1092 * gtkutil.c (xg_set_geometry): Set geometry for PPosition also.
1093 (x_wm_set_size_hint): Dont set position flags, gtk_window_parse_geometry
1094 does that.
1095
4bef8d26
JD
1096 * xfns.c (Fx_create_frame, x_create_tip_frame): Set default border width
1097 to zero.
1098
58b963f7
SM
10992010-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
1100
84164a0d
SM
1101 * term.c (init_tty): Move common text outside of #ifdef TERMINFO.
1102
2b0a91e7
SM
1103 Try to solve the problem of spurious EOF chars in long lines of text
1104 sent to interactive subprocesses.
1105 * sysdep.c (child_setup_tty): Do not enable ICANON any more.
1106 (system_process_attributes): Remove unused var `ttotal'.
1107 * process.c (send_process): Don't bother breaking long line with EOF
1108 chars when talking to ttys any more.
1109 (wait_reading_process_output): Output a warning when called in such
1110 a way that it could block without being interruptible.
1111
58b963f7
SM
1112 Try to detect file modification within the same second.
1113 * buffer.h (struct buffer): New field modtime_size.
1114 * buffer.c (reset_buffer): Initialize it.
1115 * fileio.c (Finsert_file_contents, Fwrite_region): Set it.
1116 (Fverify_visited_file_modtime): Check it.
1117 (Fclear_visited_file_modtime, Fset_visited_file_modtime): Clear it.
1118 (Fset_visited_file_modtime): Set (or clear) it.
1119
01f5787b
SM
11202010-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
1121
1122 * process.c (status_notify): Remove unused var `ro'.
1123
83725342
JD
11242010-04-12 Jan Djärv <jan.h.d@swipnet.se>
1125
1126 * xfns.c (select_visual): Don't call error if XGetVisualInfo returns
1127 more than one visual (Bug#5938).
1128
b9465836
DN
11292010-04-12 Dan Nicolaescu <dann@ics.uci.edu>
1130
50426a04
JB
1131 * Makefile.in (C_SWITCH_SYSTEM,C_SWITCH_MACHINE,C_SWITCH_X_SITE):
1132 Undefine.
b9465836 1133
8d9c8ece
DN
11342010-04-11 Dan Nicolaescu <dann@ics.uci.edu>
1135
b1f52161
DN
1136 Remove C_SWITCH_SYSTEM_TEMACS.
1137 * s/darwin.h (C_SWITCH_SYSTEM_TEMACS): Remove.
1138 (malloc, realloc, free): Use emacs, not temacs for conditional
1139 definition.
1140
1141 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Remove.
1142 (ALL_CFLAGS): Do not use C_SWITCH_SYSTEM_TEMACS.
1143
8d9c8ece
DN
1144 Use autoconf, not cpp for some variables.
1145 * Makefile.in (C_SWITCH_SYSTEM, C_SWITCH_MACHINE)
1146 (C_SWITCH_X_SITE): Define using autoconf, not cpp.
1147 (ALL_CFLAGS): Use them as make variables.
1148 (really-lwlib, really-oldXMenu): Do not pass them.
1149
1ecb2d3f
JD
11502010-04-11 Jan Djärv <jan.h.d@swipnet.se>
1151
1152 * xmenu.c (apply_systemfont_to_dialog): New.
1153 (create_and_show_dialog): Call apply_systemfont_to_dialog if HAVE_XFT.
1154
3a4fa2f2
SM
11552010-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
1156
97e53006
SM
1157 * process.c (exec_sentinel): Preserve current-buffer.
1158
3a4fa2f2
SM
1159 * process.c (read_process_output): Move the save-current-buffer to
1160 apply to both the filter and the non-filter branches.
1161
88df7221
DN
11622010-04-10 Dan Nicolaescu <dann@ics.uci.edu>
1163
1164 * s/msdos.h (UNEXEC): New definition.
1165
5634ff85
YM
11662010-04-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1167
6eff5c3d
YM
1168 * dispextern.h (TRY_WINDOW_CHECK_MARGINS)
1169 (TRY_WINDOW_IGNORE_FONTS_CHANGE): New defines.
1170
1171 * xdisp.c (try_window): Change arg from CHECK_MARGINS to FLAGS.
1172 Don't abort with fonts change if TRY_WINDOW_IGNORE_FONTS_CHANGE is
1173 set in FLAGS. Callers with non-zero CHECK_MARGINS changed to use
1174 TRY_WINDOW_CHECK_MARGINS.
1175
1176 * xfns.c (Fx_show_tip): Undo last change. Call try_window with
5b253e9c
YM
1177 TRY_WINDOW_IGNORE_FONTS_CHANGE (Bug#2423). Subtract last glyph's
1178 width only when it is for padding.
5634ff85 1179
b13aef54
J
11802010-04-09 Jan Djärv <jan.h.d@swipnet.se>
1181
1182 * xfns.c (Fx_show_tip): Call try_window in a loop until
1183 fonts_changed_p is zero (Bug#2423).
1184
21d28484
EZ
11852010-04-08 Eli Zaretskii <eliz@gnu.org>
1186
1187 * xdisp.c (set_cursor_from_row): Don't dereference glyphs beyond
1188 the end of TEXT_AREA. (Bug#5856)
1189
0269ef77
JD
11902010-04-08 Jan Djärv <jan.h.d@swipnet.se>
1191
1192 * xsettings.c (XSETTINGS_FONT_NAME): Move XSETTINGS_FONT_NAME out of
1193 HAVE_GCONF.
1194
5930fe97
EZ
11952010-04-08 Eli Zaretskii <eliz@gnu.org>
1196
1197 * bidi.c (bidi_resolve_weak): Use prev.type_after_w1, instead of
1198 prev.orig_type, for resolving type of NSM. (Bug#5858)
1199
99852628
JD
12002010-04-08 Jan Djärv <jan.h.d@swipnet.se>
1201
1202 * xsettings.c (current_font, SYSTEM_FONT, XSETTINGS_FONT_NAME): New.
1203 (parse_xft_settings): Also check for XSETTINGS_FONT_NAME and save that
1204 in current_font.
1205 (init_gconf): Read value of SYSTEM_FONT and save it in current_font.
50426a04
JB
1206 (Ffont_get_system_normal_font, xsettings_get_system_normal_font):
1207 New functions.
1208 (syms_of_xsettings): Initialize current_font.
1209 defsubr Sfont_get_system_normal_font.
99852628
JD
1210
1211 * xsettings.h (Ffont_get_system_normal_font,
1212 xsettings_get_system_normal_font): Declare.
1213
1214 * xfns.c (extern xlwmenu_default_font): Remove.
1215 (Fx_create_frame): Remove setting of xlwmenu_default_font, moved
1216 to xlwmenu.c.
1217
1218 * menu.c (digest_single_submenu): If USE_LUCID and HAVE_XFT, encode
1219 menu items in UTF-8.
1220
1221 * xmenu.c: include xsettings.h and xlwmenu.h if USE_LUCID.
1222 (apply_systemfont_to_menu): New function.
1223 (set_frame_menubar, create_and_show_popup_menu): Call
1224 apply_systemfont_to_menu.
1225
7fc874c4
J
12262010-04-07 Jan Djärv <jan.h.d@swipnet.se>
1227
1228 * frame.h (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Don't use
1229 FRAME_LINE_TO_PIXEL_Y.
1230
1231 * xterm.c (x_set_window_size_1): Don't add border_width/height to
1232 pixelwidth/height.
1233
863bf481
DN
12342010-04-07 Dan Nicolaescu <dann@ics.uci.edu>
1235
5e5a3b92
DN
1236 Simplify code for HP machines.
1237 * m/hp800.h (LOAD_AVE_TYPE, LOAD_AVE_CVT, NO_REMAP): Do not define
1238 for GNU_LINUX, not needed.
1239 (UNEXEC, NEED_BSDTTY): Move definitions...
1240 * s/hpux10-20.h (UNEXEC, NEED_BSDTTY): ... here.
1241
863bf481
DN
1242 * m/iris4d.h (UNEXEC): Move definition ...
1243 * s/irix6-5.h (UNEXEC): ... here.
1244
3e6bec3b
JD
12452010-04-04 Jan Djärv <jan.h.d@swipnet.se>
1246
1247 * xfns.c (set_machine_and_pid_properties): New function.
1248 (Fx_create_frame): Call set_machine_and_pid_properties.
1249
2912322b
SM
12502010-04-03 Eli Zaretskii <eliz@gnu.org>
1251
1502b819
EZ
1252 * bidi.c (bidi_resolve_explicit, bidi_level_of_next_char): Check
1253 bidi_it->bytepos against ZV_BYTE instead of bidi_it->ch against
1254 BIDI_EOB. Fixes infloop with vertical cursor motion at ZV.
1255
2912322b
SM
1256 * w32fns.c (x_create_tip_frame): Copy `parms' before we modify it
1257 in this function. (Bug#5703)
1258
12592010-04-03 Chong Yidong <cyd@stupidchicken.com>
1260
1261 * nsterm.h: Fix last change.
1262
c435b432
DN
12632010-04-03 Dan Nicolaescu <dann@ics.uci.edu>
1264
a568f507
DN
1265 * m/intel386.h (NO_REMAP): Move definition ...
1266 * s/msdos.h (NO_REMAP): ... here.
1267
4cd9f6c2
DN
1268 * m/vax.h (CRT0_DUMMIES): Remove, unused.
1269
c435b432
DN
1270 * ecrt0.c: Remove MSDOS, m68k and __sparc__ conditionals, file not
1271 used on those platforms.
1272
42a2c622
DN
12732010-04-02 Dan Nicolaescu <dann@ics.uci.edu>
1274
1275 Remove extern errno declarations.
1276 * xterm.c:
1277 * xrdb.c:
1278 * w32term.c:
1279 * unexec.c:
1280 * unexaix.c:
1281 * sysdep.c:
1282 * process.c:
1283 * lread.c:
1284 * keyboard.c:
1285 * floatfns.c:
1286 * filelock.c:
1287 * fileio.c:
1288 * emacs.c (main):
1289 * ecrt0.c:
1290 * dispnew.c:
1291 * callproc.c:
1292 * buffer.c: Remove errno extern declarations.
1293 * s/netbsd.h (NEED_ERRNO): Remove.
1294
8224f93d
DN
12952010-04-01 Dan Nicolaescu <dann@ics.uci.edu>
1296
1297 Remove all uses of LIBX11_SYSTEM.
1298 * Makefile.in (LIBX11_SYSTEM): Remove.
1299 * s/msdos.h (LIBX11_SYSTEM): Do not define, define LIBS_SYSTEM
1300 instead.
1301
814062c7
EZ
13022010-04-01 Eli Zaretskii <eliz@gnu.org>
1303
ed68db4d
EZ
1304 Remove support for DJGPP v1.x (bug#5813).
1305
1306 * w16select.c (__dpmi_int): Remove DJGPP v1.x compatibility.
8224f93d
DN
1307 * s/msdos.h:
1308 * unexec.c (make_hdr, copy_text_and_data):
1309 * sysdep.c (wait_for_termination, sys_subshell):
ed68db4d 1310 * msdos.c (dos_set_window_size, msdos_set_cursor_shape)
52f4d8d5
EZ
1311 (IT_set_terminal_modes, __write, _rename, gethostname)
1312 (gettimeofday, alarm, fork, kill, dos_ttraw, dos_ttcooked)
1313 (run_msdos_command, abort): Remove DJGPP v1.x code and tests of
1314 the value of __DJGPP__.
ed68db4d
EZ
1315 (nice, pause, sigsetmask, sigblock): Remove DJGPP v1.x
1316 compatibility code.
8224f93d
DN
1317 * lread.c:
1318 * gmalloc.c (memalign):
1319 * fileio.c (Fcopy_file, check_executable, Ffile_modes):
1320 * emacs.c (main):
1321 * dosfns.c (init_dosfns):
ed68db4d
EZ
1322 * dired.c (file_name_completion_stat): Remove tests of __DJGPP__.
1323
52f4d8d5
EZ
13242010-04-01 Eli Zaretskii <eliz@gnu.org>
1325
814062c7
EZ
1326 * xdisp.c (set_cursor_from_row): Fix cursor positioning when the
1327 string with `cursor' property comes from an `after-string'
1328 overlay. (Bug#5816)
1329
0dc2e11d
GM
13302010-04-01 Glenn Morris <rgm@gnu.org>
1331
1332 * Makefile.in (LIBTIFF, LIBJPEG, LIBPNG, LIBGIF, LIBXPM, XFT_LIBS):
1333 Define as Makefile variables.
1334 (LIBX): Use above variables rather than directly using autoconf.
1335
1d29df59
DN
13362010-03-31 Dan Nicolaescu <dann@ics.uci.edu>
1337
1338 Clean up BSD_SYSTEM use.
1339 * xterm.c:
1340 * process.c:
1341 * emacs.c: Use HAVE_SYS_IOCTL_H instead of BSD_SYSTEM as a guard
1342 for including <sys/ioctl.h>.
1343 * sysdep.c (wait_without_blocking): Remove BSD_SYSTEM case, this
1344 code is only used for MSDOS.
1345
1546c559
JL
13462010-03-31 Juri Linkov <juri@jurta.org>
1347
1348 * image.c: Add `Qextension_data'.
1349 (syms_of_image): Initialize and staticpro `Qextension_data'.
1350 (Fimage_metadata): Rename from `Fimage_extension_data'.
1351 (gif_load): Put GIF extension data to the property
1352 `Qextension_data'.
1353
b8a1d5a1
CY
13542010-04-05 Chong Yidong <cyd@stupidchicken.com>
1355
1356 * xdisp.c (prepare_menu_bars): Don't call ns_set_doc_edited for
1357 terminal frames (Bug#5837).
1358
6521c534
CY
13592010-03-31 Chong Yidong <cyd@stupidchicken.com>
1360
1361 * nsfns.m (ns_set_doc_edited): Remove unused arg OLDVAL.
1362 * nsterm.h: Fix prototype.
1363
52c30783
EZ
13642010-03-31 Eli Zaretskii <eliz@gnu.org>
1365
1366 * xdisp.c (highlight_trailing_whitespace): Support highlight of
1367 trailing whitespace in right-to-left rows.
1368
855a0da7
SM
13692010-03-31 Stefan Monnier <monnier@iro.umontreal.ca>
1370
1371 Get rid of the direct_output optimizations.
1372 * keyboard.c (nonundocount): Remove extern declaration.
1373 (command_loop_1): Remove brittle optimisation for cheap and
1374 common operations.
1375 * xdisp.c (redisplay_internal): Don't bother checking
1376 redisplay_performed_directly_p any more.
1377 * sysdep.c (init_sys_modes): Don't call direct_output_forward_char
1378 any more.
1379 * dispnew.c (redisplay_performed_directly_p)
1380 (direct_output_for_insert, direct_output_forward_char):
1381 * dispextern.h (redisplay_performed_directly_p)
1382 (direct_output_for_insert, direct_output_forward_char): Remove.
1383 * cmds.c (nonundocount): Make it static.
1384
85738751 13852010-03-31 Bernhard Herzog <bh@intevation.de> (tiny change)
a6d676d9
CY
1386
1387 * menu.c (Fx_popup_menu): Use last_event_timestamp (Bug#4930).
1388
85738751 13892010-03-31 Jan Djärv <jan.h.d@swipnet.se>
67fee863
JD
1390
1391 * xdisp.c (note_mouse_highlight): Don't do highlight if pointer is
1392 invisible (Bug#5766).
1393
85738751 13942010-03-31 Adrian Robert <adrian.b.robert@gmail.com>
9ae6e189 1395
855a0da7
SM
1396 * xdisp.c (x_consider_frame_title, update_window_cursor):
1397 Remove HAVE_NS conditionals.
194d44e7 1398 (prepare_menu_bars) [HAVE_NS]: Call ns_set_doc_edited.
9ae6e189
CY
1399
1400 * nsfns.m (x_implicitly_set_name): If frame-title-format is t, use
1401 filename for the title.
1402 (ns_set_doc_edited): Do nothing if the selected window is a
1403 minibuffer window.
1404
1405 * nsterm.h: Add prototypes for ns_set_name_as_filename and
1406 ns_set_doc_edited.
1407
1408 * nsterm.m: Remove unneeded prototype.
1409
85738751 14102010-03-31 Glenn Morris <rgm@gnu.org>
25c72475
GM
1411
1412 * Makefile.in (SOME_MACHINE_OBJECTS): Ensure dbus stuff is always
1413 in the DOC file. (Bug#5336)
1414
85738751 14152010-03-31 Chong Yidong <cyd@stupidchicken.com>
f79a01db
CY
1416
1417 * xdisp.c (pos_visible_p): Revert 2008-01-25 change (Bug#5730).
1418
75d1428c
SM
14192010-03-31 Stefan Monnier <monnier@iro.umontreal.ca>
1420
1421 * window.c (keys_of_window): Remove redundant/overridden bindings.
1422
82043cfb
EZ
14232010-03-30 Eli Zaretskii <eliz@gnu.org>
1424
1425 * xdisp.c (BUFFER_POS_REACHED_P, move_it_in_display_line_to):
1426 Restore original behavior when the iterator is not bidi_p.
1427
b5dd0ae7
DN
14282010-03-30 Dan Nicolaescu <dann@ics.uci.edu>
1429
1430 * xdisp.c (syms_of_xdisp): Use intern_c_string instead of intern.
1431
bd924a5d
EZ
14322010-03-30 Eli Zaretskii <eliz@gnu.org>
1433
1434 * bidi.c (bidi_cache_iterator_state): Invalidate the cache if we
1435 are outside the range of cached character positions.
1436
3580374b
JB
14372010-03-30 Juanma Barranquero <lekktu@gmail.com>
1438
1439 * makefile.w32-in ($(BLD)/bidi.$(O)): Add dependency on w32gui.h.
1440
a7b02820
EZ
14412010-03-30 Eli Zaretskii <eliz@gnu.org>
1442
1443 Initial support for bidirectional editing.
1444
1445 * Makefile.in (obj): Include bidi.o.
1446 (bidi.o): New target.
1447
1448 * makefile.w32-in (OBJ1): Add $(BLD)/bidi.$(O).
1449 ($(BLD)/bidi.$(O)): New target.
1450
1451 * bidi.c: New file.
1452
1453 * buffer.h (struct buffer): New members bidi_display_reordering
1454 and bidi_paragraph_direction.
1455
1456 * buffer.c (init_buffer_once): Initialize bidi_display_reordering
1457 and bidi_paragraph_direction.
1458 (syms_of_buffer): Declare Lisp variables bidi-display-reordering
1459 and bidi-paragraph-direction.
1460 (Fbuffer_swap_text): Swap the values of
1461 bidi_display_reordering and bidi_paragraph_direction.
1462
1463 * dispextern.h (BIDI_MAXLEVEL, BIDI_AT_BASE_LEVEL): New macros.
1464 (bidi_type_t, bidi_dir_t): New types.
1465 (bidi_saved_info, bidi_stack, bidi_it): New structures.
1466 (struct it): New members bidi_p, bidi_it, paragraph_embedding,
1467 prev_stop, base_level_stop, and eol_pos.
1468 (bidi_init_it, bidi_get_next_char_visually): New prototypes.
1469 (IT_STACK_SIZE): Enlarge to 5.
1470 (struct glyph_row): New member reversed_p.
1471 <string_buffer_position>: Update prototype.
1472 (PRODUCE_GLYPHS): Set the reversed_p flag in the iterator's
1473 glyph_row if bidi_it.paragraph_dir == R2L.
1474 (struct glyph): New members resolved_level and bidi_type.
1475
1476 * dispnew.c (direct_output_forward_char): Give up if we need bidi
1477 processing or buffer's direction is right-to-left.
1478 (prepare_desired_row): Preserve the reversed_p flag.
1479 (row_equal_p): Compare the reversed_p attributes as well.
1480
1481 * xdisp.c (init_iterator): Initialize it->bidi_p. Call
1482 bidi_init_it and set it->paragraph_embedding from the current
1483 buffer's value of bidi_paragraph_direction.
1484 (reseat_1): Initialize bidi_it.first_elt.
1485 (set_iterator_to_next, next_element_from_buffer): Use the value of
1486 paragraph_embedding to determine the paragraph direction.
1487 (set_iterator_to_next): Under bidi reordering, call
1488 bidi_get_next_char_visually. Call bidi_paragraph_init if the
1489 new_paragraph flag is set in the bidi iterator.
1490 (next_element_from_buffer): If bidi_it.first_elt is set,
1491 initialize paragraph direction and find the first character to
1492 display in the visual order. If reseated to a middle of a line,
1493 prime the bidi iterator starting at the line's beginning. Handle
1494 the situation where we overstepped stop_charpos due to
1495 non-linearity of the bidi iteration. Likewise for when we back up
1496 beyond the previous stop_charpos. When moving across stop_charpos,
1497 record it in prev_stop.
1498 (display_line): Set row->end and it->start for the next row to the
1499 next character in logical order. Always extend reversed_p rows to
1500 the end of line, even if they end at ZV. Copy the reversed_p flag
1501 to the next glyph row. Keep calling set_cursor_from_row for
1502 bidi-reordered rows even if we already have a possible candidate
1503 for cursor position. Set row_end after all the row's glyphs have
1504 been produced, by looping over the glyphs. Record the position
1505 after EOL in it->eol_pos, and use it to set end_pos of the last
1506 row produced for a continued line.
1507 <Qright_to_left, Qleft_to_right>: New variables.
1508 (syms_of_xdisp): Initialize and staticpro them.
1509 (string_buffer_position_lim): New function.
1510 (string_buffer_position): Most of code moved to
1511 string_buffer_position_lim. Last argument and return value are
1512 now EMACS_INT; all callers changed.
1513 (set_cursor_from_row): Rewritten to support bidirectional text and
1514 reversed glyph rows.
1515 (text_outside_line_unchanged_p, try_window_id): Disable
1516 optimizations if we are reordering bidirectional text and the
1517 paragraph direction can be affected by the change.
1518 (append_glyph, append_composite_glyph)
1519 (produce_image_glyph, append_stretch_glyph): Set the
1520 resolved_level and bidi_type members of each glyph.
1521 (append_glyph): If the glyph row is reversed, prepend the glyph
1522 rather than appending it.
1523 (handle_stop_backwards): New function.
1524 (reseat_1, pop_it, push_it): Set prev_stop and base_level_stop.
1525 (reseat): call handle_stop_backwards to recompute prev_stop and
1526 base_level_stop for the new position.
1527 (handle_invisible_prop): Under bidi iteration, skip invisible text
1528 using bidi_get_next_char_visually. If we are `reseat'ed, init the
1529 paragraph direction. Update IT->prev_stop after skipping
1530 invisible text.
1531 (move_it_in_display_line_to): New variables prev_method
1532 and prev_pos. Compare for strict equality in
1533 BUFFER_POS_REACHED_P.
1534 (try_cursor_movement): Examine all the candidate rows that occlude
1535 point, to return the best match. If rows are bidi-reordered
1536 and point moved backwards, back up to the row that is not a
1537 continuation line, and start looking for a suitable row from
1538 there.
1539
1540 * term.c (append_glyph): Reverse glyphs by pre-pending them,
1541 rather than appending, if the glyph_row's reversed_p flag is set.
1542 Set the resolved_level and bidi_type members of each glyph.
1543
1544 * .gdbinit (pbiditype): New command.
1545 (pgx): Use it to display bidi level and type of the glyph.
1546 (pitx): Display some bidi information about the iterator.
1547 (prowlims, pmtxrows): New commands.
1548
32a8894e
DN
15492010-03-30 Dan Nicolaescu <dann@ics.uci.edu>
1550
1551 Remove all uses of C_DEBUG_SWITCH and LIBS_DEBUG.
1552 * s/usg5-4.h (LIBS_DEBUG):
1553 * s/irix6-5.h (C_DEBUG_SWITCH):
1554 * s/gnu-linux.h (LIBS_DEBUG):
1555 * s/darwin.h (LIBS_DEBUG):
1556 * s/bsd-common.h (LIBS_DEBUG):
1557 * s/aix4-2.h (LIBS_DEBUG, C_DEBUG_SWITCH):
1558 * m/iris4d.h (LIBS_DEBUG):
1559 * m/hp800.h (LIBS_DEBUG): Remove definitions.
1560
1561 * Makefile.in (LIBES): Remove reference to LIBS_DEBUG.
1562 (LIBS_DEBUG): Remove definition.
1563
649dbf36
CY
15642010-03-27 Chong Yidong <cyd@stupidchicken.com>
1565
1566 * process.c (Fmake_network_process): Don't apply Bug#5173 fix for
1567 Windows.
1568
cad4261f
YM
15692010-03-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1570
1571 * process.c (Fmake_network_process): Don't call turn_on_atimers around
1572 `connect' (Bug#5723).
1573
cd591dbc
HE
15742010-03-25 Helmut Eller <eller.helmut@gmail.com>
1575
1576 * process.c (Fmake_network_process): Call `select' for interrupted
1577 `connect' rather than creating new socket (Bug#5173).
1578
e867cb5d 15792010-03-24 Jan Djärv <jan.h.d@swipnet.se>
93318cbd
JD
1580
1581 * frame.c (x_get_arg): Handle RES_TYPE_BOOLEAN_NUMBER (bug #5736).
1582
1583 * xfns.c (Fx_create_frame): Make menuBar a RES_TYPE_BOOLEAN_NUMBER.
1584
1585 * dispextern.h (resource_types): RES_TYPE_BOOLEAN_NUMBER is new.
1586
e867cb5d 15872010-03-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
ad13a3ee
YM
1588
1589 * xfns.c (Fx_create_frame) [USE_LUCID]: Add BLOCK_INPUT around
1590 XLoadQueryFont.
1591
e867cb5d 15922010-03-24 Kenichi Handa <handa@m17n.org>
fbdc1721
KH
1593
1594 * coding.c (decode_coding_ccl): Fix previous change for the
1595 multibyte case.
fb608df3
KH
1596 (encode_coding_ccl): Don't setup ccl program here. Fix for the
1597 case that the output buffer is fullfilled.
1598 (encode_coding): Setup ccl program here.
fbdc1721 1599
e867cb5d 16002010-03-24 Andreas Politz <politza@fh-trier.de> (tiny change)
35cd7cd6
CY
1601
1602 * editfns.c (Fformat): Account for string precision when computing
1603 field width (Bug#5710).
1604
5845f0ed
DN
16052010-03-23 Dan Nicolaescu <dann@ics.uci.edu>
1606
814fb708
DN
1607 * s/gnu-linux.h (LIBS_SYSTEM): Remove, same as default.
1608
5845f0ed
DN
1609 Simplify LIBS_MACHINE definitions.
1610 * m/hp800.h (LIBS_MACHINE): Remove, same as default.
1611 * m/iris4d.h (LIBS_MACHINE): Likewise.
1612 * m/ibmrs6000.h (LIBS_MACHINE): Rename to LIBS_SYSTEM and move ...
1613 * s/aix4-2.h (LIBS_SYSTEM): ... here.
38e3487c 1614 * s/netbsd.h: Remove commented out code.
5845f0ed 1615
b7064064
DN
16162010-03-22 Dan Nicolaescu <dann@ics.uci.edu>
1617
df7734b2
DN
1618 Remove dead code dealing with POSIX_SIGNALS.
1619 * atimer.c (set_alarm): Remove dead code, all USG systems define
1620 POSIX_SIGNALS.
1621 * data.c (arith_error): Likewise.
1622 * keyboard.c (input_available_signal, handle_user_signal)
1623 (interrupt_signal): Likewise.
1624 * process.c (sigchld_handler): Likewise.
1625 (create_process): Remove if 0 code. Remove HPUX conditional when
1626 !defined (POSIX_SIGNALS), it cannot be true.
1627 * syssignal.h: Remove USG5_4 and USG conditionals when
1628 !POSIX_SIGNALS, they cannot be true.
1629
b7064064
DN
1630 * keyboard.c (Fset_input_interrupt_mode): Remove code depending on
1631 NO_SOCK_SIGIO, not used anymore.
1632
55da5ee3
DN
16332010-03-21 Dan Nicolaescu <dann@ics.uci.edu>
1634
0be96e3a
DN
1635 * m/vax.h (BSD_SYSTEM, BSD4_2): Remove conditionals, we only
1636 support vax on BSDs.
1637
55da5ee3
DN
1638 * m/ibmrs6000.h (ORDINARY_LINK): Move definition ...
1639 * s/aix4-2.h (ORDINARY_LINK): ... here.
1640
c0282183
AS
16412010-03-21 Andreas Schwab <schwab@linux-m68k.org>
1642
82c3d67a
AS
1643 * Makefile.in (abs_builddir): Define.
1644 (bootstrap_exe): Use it.
1645 (VPATH): Use $(srcdir) instead of @srcdir@.
c0282183 1646
3613edce
SM
16472010-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
1648
1649 * Makefile.in (bootstrap_exe): Use an absolute name.
1650
7f110ddc
DN
16512010-03-20 Dan Nicolaescu <dann@ics.uci.edu>
1652
22e87574
DN
1653 Remove support for old GNU/Linux using libc version 5.
1654 * m/alpha.h (LINUX_SBRK_BUG): Remove definition.
1655 * emacs.c (main): Remove code depending on LINUX_SBRK_BUG.
1656
05a670e6
DN
1657 Consolidate redundant definitions in s/bsd-common.h.
1658 * s/bsd-common.h (BSD4_2, TABDLY, TAB3, HAVE_TERMIOS, NO_TERMIO)
1659 (LIBS_DEBUG, SYSV_SYSTEM_DIR, UNEXEC, NARROWPROTO, BSD_PGRPS)
1660 (LDAV_SYMBOL, KERNEL_FILE): Define (or undefine) here instead of
1661 doing it in all files that include this one.
1662 * s/gnu.h (BSD4_2, TABDLY, TAB3, HAVE_TERMIOS, NO_TERMIO)
1663 (LIBS_DEBUG, SYSV_SYSTEM_DIR, UNEXEC, NARROWPROTO, BSD_PGRPS)
1664 (LDAV_SYMBOL, KERNEL_FILE): Remove.
1665 * s/freebsd.h (BSD4_2, TABDLY, TAB3, HAVE_TERMIOS, NO_TERMIO)
1666 (LIBS_DEBUG, SYSV_SYSTEM_DIR, UNEXEC, NARROWPROTO, BSD_PGRPS)
1667 (LDAV_SYMBOL, KERNEL_FILE): Remove.
1668 * s/netbsd.h (BSD4_2, TABDLY, TAB3, HAVE_TERMIOS, NO_TERMIO)
1669 (LIBS_DEBUG, SYSV_SYSTEM_DIR, UNEXEC, NARROWPROTO, BSD_PGRPS)
1670 (LDAV_SYMBOL, KERNEL_FILE): Remove.
1671
2968f561
DN
1672 Consolidate redundant definitions.
1673 * s/usg5-4.h (sigsetmask, PTY_TTY_NAME_SPRINTF): Do not define,
1674 it's undefined in all files that include this one.
1675 (POSIX_SIGNALS): Define here instead of doing it in all files that
1676 include this one.
1677 * s/irix6-5.h (sigsetmask, PTY_TTY_NAME_SPRINTF): Do not undef.
1678 (POSIX_SIGNALS): Do not define.
1679 * s/sol2-6.h (sigsetmask, PTY_TTY_NAME_SPRINTF): Do not undef.
1680 (POSIX_SIGNALS): Do not define.
1681 * s/unixware.h (sigsetmask, PTY_TTY_NAME_SPRINTF): Do not undef.
1682 (POSIX_SIGNALS): Do not define.
1683
15d25dc0
DN
1684 Remove support for old UNIX System V systems.
1685 * s/unixware.h: Add the contents of s/usg-5-4-2.h.
1686 * s/usg-5-4-2.h: Remove.
1687
07e339e4
DN
1688 Remove support for Solaris on PPC and for old versions.
1689 * s/sol2-6.h: Add the contents of s/sol-2.3.h, s/sol-2.4.h, s/sol-2.5.h.
1690 (LD_SWITCH_SYSTEM, USE_MMAP_FOR_BUFFERS): Remove #defines/#undef
1691 that cancel each other.
1692 * s/sol2-3.h:
1693 * s/sol2-4.h:
1694 * s/sol2-5.h: Remove.
1695 * m/ibmrs6000.h: Remove code for USG5_4, this file is only used on AIX.
1696 (NO_REMAP): Remove, unused.
1697 (UNEXEC): Move definition ...
1698 * s/aix4-2.h (UNEXEC): ... here.
1699
7f110ddc
DN
1700 * s/openbsd.h: Remove support for non-ELF and for systems that do
1701 not support shared libraries.
1702 * s/netbsd.h:
1703 * s/freebsd.h: Likewise.
1704
605f35cd
DN
17052010-03-20 Dan Nicolaescu <dann@ics.uci.edu>
1706
1707 Remove non-working support for lynxos 3.0.
1708 * s/lynxos.h: Remove file.
1709
1710 * unexec.c (unexec, adjust_lnnoptrs): Do not depend on
1711 COFF_BSD_SYMBOLS, nothing defines it anymore.
1712
aed71cf4
DN
17132010-03-20 Dan Nicolaescu <dann@ics.uci.edu>
1714
1715 Remove obsolete uses of HAVE_SHM.
1716 * emacs.c (standard_args):
1717 (Fdump_emacs):
1718 (syms_of_emacs): Remove code depending on HAVE_SHM.
1719
1720 * alloc.c: Remove HAVE_SHM dependent definition.
1721
1722 * Makefile.in (RUN_TEMACS): Do not depend on HAVE_SHM.
1723
aded53ff
GM
17242010-03-18 Glenn Morris <rgm@gnu.org>
1725
17284745
GM
1726 * emacs.c (USAGE4): Hard-code bug address.
1727 (REPORT_EMACS_BUG_ADDRESS, REPORT_EMACS_BUG_PRETEST_ADDRESS): Remove.
1728 (bug_reporting_address): Remove.
1729 (main): Don't call bug_reporting_address.
1730
aded53ff
GM
1731 * Makefile.in (XFT_LIBS, LIBXPM, LIBJPEG, LIBPNG, LIBTIFF, LIBGIF)
1732 (LIBGPM, LIBRESOLV): Set using autoconf rather than cpp.
1733
303500aa
CY
17342010-03-15 Chong Yidong <cyd@stupidchicken.com>
1735
1736 * xfns.c (Fx_create_frame):
1737 * frame.c (Vdefault_frame_scroll_bars): Put non-GTK X scroll-bars
1738 on left.
1739
cef3058f
CY
17402010-03-13 Andreas Politz <politza@fh-trier.de> (tiny change)
1741
1742 * editfns.c (Fformat): Account for string precision when computing
1743 field width (Bug#5710).
1744
a647d59d
CY
17452010-03-12 Chong Yidong <cyd@stupidchicken.com>
1746
4fa42018
CY
1747 * xfns.c (Fx_create_frame): Set default to Qright.
1748
a647d59d
CY
1749 * frame.c (Vdefault_frame_scroll_bars): Set default to Qright for
1750 all window systems.
1751
6da23aaa
EZ
17522010-03-12 Eli Zaretskii <eliz@gnu.org>
1753
a96f6398 1754 These changes remove termcap.c from the build on Posix platforms.
83d02def 1755 * Makefile.in (termcapobj): Move termcap.o from here...
6da23aaa
EZ
1756 (MSDOS_OBJ): ...to here.
1757 (termcapobj) [!LIBS_TERMCAP]: Remove specialized value, as it is
1758 now identical to when LIBS_TERMCAP is defined.
1759
1760 * term.c: Remove (ifdef'ed away) inclusion of termcap.h.
1761
1762 * cm.c: Remove (ifdef'ed away) inclusion of termcap.h.
1763
a96f6398 1764 * config.in: Regenerated. (See top-level ChangeLog.)
6da23aaa 1765
288f9fc0
CY
17662010-03-10 Chong Yidong <cyd@stupidchicken.com>
1767
1768 * Branch for 23.2.
1769
d48cd3f4
SM
17702010-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
1771
1772 Cleanup setup of gl_state in various parts of the code.
1773 * syntax.h (SETUP_BUFFER_SYNTAX_TABLE): New macro.
1774 (SETUP_SYNTAX_TABLE, SETUP_SYNTAX_TABLE_FOR_OBJECT):
1775 * syntax.c (find_defun_start, Fchar_syntax, Fmatching_paren)
1776 (skip_chars):
1777 * regex.c (regex_compile): Use it.
1778 (re_compile_pattern): Don't set gl_state.current_syntax_table since
1779 it's now set in regex_compile when/if we need it.
1780
618db430
SM
17812010-03-05 Stefan Monnier <monnier@iro.umontreal.ca>
1782
c0335e02
SM
1783 Make it possible to C-g in a tight bytecode loop again (bug#5680).
1784 * lisp.h (ELSE_PENDING_SIGNALS): New macro.
1785 (QUIT): Use it to consolidate code and remove redundancy.
1786 * bytecode.c (BYTE_CODE_QUIT): Use it as well.
1787
254c06a8
SM
1788 * regex.c (regex_compile): Setup gl_state as well.
1789
618db430
SM
1790 * syntax.c (skip_chars): Setup gl_state (bug#3823).
1791 (in_classes): Use CONSP before XCAR/XCDR.
1792
233f0c9f
CY
17932010-03-03 Chong Yidong <cyd@stupidchicken.com>
1794
1795 * keymap.c (Fwhere_is_internal): Use Fequal to compare
1796 definitions, so that keyboard macros are correctly handled
1797 (Bug#5481).
1798
75f80e63
EZ
17992010-03-02 Eli Zaretskii <eliz@gnu.org>
1800
1801 * coding.c (decode_coding_emacs_mule): Fixup pointers to buffer
1802 text that could be relocated inside the call to emacs_mule_char.
1803 (emacs_mule_char): Use CODING_DECODE_CHAR instead of DECODE_CHAR.
1804 (CODING_DECODE_CHAR): Add a comment describing its purpose.
1805
dcfb9bc4
KH
18062010-03-02 Kenichi Handa <handa@m17n.org>
1807
fc9a17bc
KH
1808 * character.c (parse_str_as_multibyte): Fix handling of the
1809 multibyte form of raw-bytes.
1810 (str_as_multibyte): Likewise.
1811
dcfb9bc4
KH
1812 * buffer.c (Fset_buffer_multibyte): Fix handling of the multibyte
1813 form of raw-bytes.
1814
412c01b6
CY
18152010-02-28 Chong Yidong <cyd@stupidchicken.com>
1816
1817 * charset.c (load_charset_map_from_file)
1818 (load_charset_map_from_vector): Zero out allocated
1819 charset_map_entries before using them.
1820
df7e1ea0
AS
18212010-02-27 Andreas Schwab <schwab@linux-m68k.org>
1822
1823 * w32uniscribe.c (uniscribe_check_otf): Fix length check.
1824
fe69a722
CY
18252010-02-27 Chong Yidong <cyd@stupidchicken.com>
1826
4ed28cf4
CY
1827 * font.c (font_parse_fcname): Recognize "Book", "Condensed",
1828 "Medium", and "Semi-Condensed" keywords in GTK names (Bug#5646).
fe69a722 1829
7379cfce
KH
18302010-02-26 Kenichi Handa <handa@m17n.org>
1831
f88cc4d6
KH
1832 * ftfont.c (ftfont_get_open_type_spec): Fix parsing of otf_spec.
1833
7379cfce
KH
1834 * xdisp.c (reseat_to_string): Fix previous change.
1835
cf2fdcfb
CY
18362010-02-26 David Reitter <david.reitter@gmail.com>
1837
1838 * nsfont.m (nsfont_draw): ns_antialias_text should be a
1839 Lisp_Object (Bug#4736).
1840
cc6c7c75
KH
18412010-02-25 Kenichi Handa <handa@m17n.org>
1842
1843 * xdisp.c (reseat_to_string): Fix previous change (bug#5609).
1844
32e737d7
JD
18452010-02-24 Jan Djärv <jan.h.d@swipnet.se>
1846
1847 * xterm.c (XTflash): Move declarations before statements.
1848
1849 * gtkutil.c (xg_get_gdk_display): Remove (unused).
1850 (xg_get_pixbuf_from_pix_and_mask, xg_create_frame_widgets)
1851 (xg_toggle_notify_cb, xg_set_toolkit_scroll_bar_thumb)
1852 (xg_create_tool_bar): Remove unused variables.
1853 (x_wm_set_size_hint): Move declarations before statements.
1854 (xg_create_frame_widgets): Remove variable grav,
1855
676cae9f
CY
18562010-02-21 Chong Yidong <cyd@stupidchicken.com>
1857
1858 * m/arm.h: Define the LIB_GCC flag to be -lgcc_s (Bug#5518).
1859
886cc2b8
SM
18602010-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
1861
1862 * term.c (fatal): Add a final \n if needed (bug#5596).
1863
ddb2d8e2
CY
18642010-02-18 Chong Yidong <cyd@stupidchicken.com>
1865
1866 * nsterm.m (ns_ring_bell): Revert last change (Bug#5569).
1867
2a4f8d3d
GM
18682010-02-18 Glenn Morris <rgm@gnu.org>
1869
1870 * callint.c (Finteractive): Doc fix.
1871
ebaf11b6
KH
18722010-02-18 Kazuhiro Ito <kzhr@d1.dion.ne.jp> (tiny change)
1873
886cc2b8
SM
1874 * coding.c (record_conversion_result):
1875 Handle CODING_RESULT_INSUFFICIENT_DST.
ebaf11b6
KH
1876 (decode_coding_object): Record CODING_RESULT_INSUFFICIENT_MEM on
1877 memory allocation error.
1878
d0396581
KH
18792010-02-17 Kenichi Handa <handa@m17n.org>
1880
886cc2b8
SM
1881 * coding.c (decode_coding_ccl): Don't setup ccl program here.
1882 Fix for the case that the output buffer is fullfilled.
d0396581
KH
1883 (decode_coding): Setup ccl program here. Keep looping when the
1884 decoder stopped because the output buffer is
1885 fullfilled (bug#5534).
1886
1887 * ccl.c (ccl_driver): Never reset ic to CCL_HEADER_MAIN.
1888
98599f74
JD
18892010-02-13 Jan Djärv <jan.h.d@swipnet.se>
1890
471e4f04 1891 * xterm.c (x_clear_frame_area): Call gtk_widget_queue_draw if USE_GTK,
98599f74 1892 bug #5571.
886cc2b8 1893 (XTflash): Use Gdk-routines if USE_GTK so scroll bars don't get
471e4f04 1894 overdrawn.
98599f74 1895
182659ae
JD
18962010-02-10 Jan Djärv <jan.h.d@swipnet.se>
1897
1898 * xsmfns.c (x_session_initialize): Move initialization of ice_fd and
1899 doing_interact here.
1900 (ice_connection_closed): New function.
1901 (x_session_check_input, smc_die_CB, ice_io_error_handler)
1902 (ice_conn_watch_CB, x_session_close): Call ice_connection_closed.
1903 (x_session_check_input): Call IceCloseConnection if IceProcessMessages
1904 returns I/O error.
1905 (ice_conn_watch_CB): Call add_keyboard_wait_descriptor on ice_fd,
1906 bug #5512.
1907
9be32c4e 19082010-02-08 Francis Devereux <francis@devrx.org> (tiny change)
14a225f9
CY
1909
1910 * nsfont.m (nsfont_open): The system's value for the font descent
1911 is negative, so round it down to avoid clipping.
1912
a2f3eb19
CY
19132010-02-06 Chong Yidong <cyd@stupidchicken.com>
1914
1915 * charset.c (load_charset_map_from_file)
1916 (load_charset_map_from_vector): Fix last change to use SAFE_ALLOCA
953d248c 1917 instead of xmalloc (Bug#5526). Suggested by Vivek Dasmohapatra.
a2f3eb19 1918
3088147c
CY
19192010-02-05 Chong Yidong <cyd@stupidchicken.com>
1920
1921 * charset.c (load_charset_map_from_file): Allocate large
1922 charset_map_entries structure on the heap rather than the stack.
1923 (Bug#5526).
1924
b57d9029
KH
19252010-01-31 Kenichi Handa <handa@m17n.org>
1926
1927 * font.c (font_parse_xlfd): If FONT is a font-entity and pixel
115e4fd3 1928 size in NAME is invalid, return -1 (Bug#5396).
b57d9029 1929
c67d885b
CY
19302010-01-31 Chong Yidong <cyd@stupidchicken.com>
1931
1932 * nsterm.m (ns_defined_color): Block input. Suggested by Mike
1933 <deactivated@gmail.com> (Bug#3605).
1934
8fab2362
CY
19352010-01-31 David De La Harpe Golden <david@harpegolden.net>
1936
1937 * fileio.c (Frename_file): Correctly rename symlinks to
1938 directories (Bug#5496).
1939
cb2a62f2
CY
19402010-01-31 Filipe Cabecinhas <filcab@gmail.com> (tiny change)
1941
1942 * nsterm.m (ns_ring_bell): Handle visible bell like X.
1943
944c7a26
AS
19442010-01-30 Andreas Schwab <schwab@linux-m68k.org>
1945
1946 * character.h (CHAR_PRINTABLE_P): Reparenthesize to avoid warning.
1947
c024ac08
CY
19482010-01-29 Chong Yidong <cyd@stupidchicken.com>
1949
1950 * frame.c (DEFAULT_ROWS): Change default to 35.
1951
1952 * xfns.c (x_default_font_parameter): Change default XFT font to
1953 monospace-10 (Bug#3643).
1954
af93af83
EZ
19552010-01-29 Eli Zaretskii <eliz@gnu.org>
1956
1957 * w32inevt.c (key_event): Remove unnecessary comparison of
1958 event->uChar.AsciiChar with 128.
1959
ca0eb708
CY
19602010-01-28 Chong Yidong <cyd@stupidchicken.com>
1961
b242dbfc
CY
1962 * fileio.c (Frename_file): Fix last change (Bug#5487).
1963
ca0eb708
CY
1964 * m/mips.h: Remove DATA_START. Suggested by Dan Nicolaescu.
1965
1966 * m/alpha.h: Don't define DATA_START on NetBSD (Bug#4629).
1967
45d45af5
JD
19682010-01-28 Jan Djärv <jan.h.d@swipnet.se>
1969
1970 * xfns.c (Fx_create_frame): Remove window size matching code from
1971 2010-01-15.
1972 (x_get_current_desktop, x_get_desktop_workarea): Remove
1973
7e233730
JR
19742010-01-27 Jason Rumney <jasonr@gnu.org>
1975
1976 * w32inevt.c (w32_kbd_patch_key): Save the unicode character.
a292592c 1977 (key_event): Use unicode for characters 128 and higher (Bug#4567).
7e233730 1978
86e893e3
KH
19792010-01-27 Kenichi Handa <handa@m17n.org>
1980
1981 * regex.c (analyse_first): Fix setting of fastmap for unibyte
c8b96b2a 1982 pattern string (Bug#4209).
86e893e3 1983
8719abec
CY
19842010-01-27 David De La Harpe Golden <david@harpegolden.net>
1985
1986 * fileio.c (Frename_file): Call copy-directory and
1987 delete-directory for directories, in order to handle cross-device
1988 renaming (Bug#3353).
1989
844794c8
JD
19902010-01-25 Jan Djärv <jan.h.d@swipnet.se>
1991
aa3e13b5 1992 * xfns.c (Fx_create_frame): If frame height is too big, try
ac146f82 1993 sizes 24 and 10. Bug #3643.
844794c8 1994
bd4b5750
SM
19952010-01-24 Stefan Monnier <monnier@iro.umontreal.ca>
1996
8dc1adf6 1997 Try and fix bug#788, hopefully for real this time.
bd4b5750
SM
1998 * keymap.c (shadow_lookup): Add `remap' arg.
1999 (describe_map, describe_vector): Update calls to shadow_lookup.
2000 (Fwhere_is_internal): Fix up handling of `remapped_sequences' and
2001 `remapped' so this flag is applicable to `sequence'. Be careful to
8dc1adf6
SM
2002 perform remapping during shadow_lookup check of remapped_sequences.
2003
285d07e2
CY
20042010-01-24 Eric Bélanger <snowmaniscool@gmail.com> (tiny change)
2005
2006 * image.c (png_load): Use png_sig_cmp instead of the obsolete
2007 png_check_sig, which has been removed in libpng 1.4.
2008
c6d09b8d
CY
20092010-01-23 Giorgos Keramidas <keramida@ceid.upatras.gr> (tiny change)
2010
2011 * filelock.c: Include utmp.h only when HAVE_UTMP_H (FreeBSD 9.x
2012 lacks this header file).
2013
3d782998
YM
20142010-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2015
2016 * xdisp.c (draw_glyphs): Update `start' for left_overwritten case
2017 as in Emacs 22.
2018
2aff7c53
YM
20192010-01-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2020
2021 * lisp.h (make_pure_string): String pointer arg now points to const.
2022
2023 * alloc.c (find_string_data_in_pure, make_pure_string): String pointer
2024 args now point to const.
2025
74327f7a
EZ
20262010-01-22 Eli Zaretskii <eliz@gnu.org>
2027
2028 * lread.c (Fload): Don't treat files without .elc extension as
2029 byte-compiled if they are ``magic'', i.e. `openp' returned -2 for
2030 them. (bug#5303)
2031
4d1e6632
KH
20322010-01-20 Kenichi Handa <handa@m17n.org>
2033
2034 * coding.c (consume_chars): If ! multibyte and the encoder is ccl,
2035 treat the source as actual byte sequence.
2036
1fdede8f
AM
20372010-01-19 Alan Mackenzie <acm@muc.de>
2038
2039 Fix spurious before-change-functions invocation from (insert ?\n).
194d44e7 2040 * textprop.c (set_text_properties): Rename parameter
1fdede8f
AM
2041 `signal_after_change_p' to `coherent_change_p', and make the
2042 invocation of `modify_region' conditional on it.
2043
67477f30
JD
20442010-01-19 Jan Djärv <jan.h.d@swipnet.se>
2045
2046 * xsettings.c (apply_xft_settings): Save settings in Vxft_settings
2047 for debug purpose.
2048 (syms_of_xsettings): Declare xft-settings.
2049
244b023e
CY
20502010-01-18 Chong Yidong <cyd@stupidchicken.com>
2051
2052 * editfns.c (Fcurrent_time_string): Doc fix (Bug#5408).
2053
617364fe
CY
20542010-01-16 Stefan Monnier <monnier@iro.umontreal.ca>
2055
2056 * xterm.c (event_handler_gdk): Block input (Bug#5037).
2057
4fe22cdf
CY
20582010-01-16 Chong Yidong <cyd@stupidchicken.com>
2059
2060 * emacs.c (standard_args): Adjust arg priorities to reflect how
2061 they are processed in startup.el.
2062
e118d2be
AS
20632010-01-16 Andreas Schwab <schwab@linux-m68k.org>
2064
2065 * Makefile.in (lisp, shortlisp): Update.
2066
523ae620
SM
20672010-01-16 Stefan Monnier <monnier@iro.umontreal.ca>
2068
2069 * xterm.c (x_term_init): Instead of inhibiting GC while running Lisp
2070 code, link the new kboard into all_kboard before running Lisp code,
2071 and protect the new terminal with GCPRO (Bug#5365).
2072 (x_term_init): Remove unused var `atom'.
2073 (x_delete_display, x_delete_terminal): Remove unused var `i'.
2074
f0d13888
JD
20752010-01-15 Jan Djärv <jan.h.d@swipnet.se>
2076
2077 * xfns.c (x_get_current_desktop, x_get_desktop_workarea): New functions.
2078 (Fx_create_frame): Call x_get_current_desktop and x_get_desktop_workarea
2079 to find out usable size of the desktop. Don't make frames larger than
ac146f82 2080 this. Bug #3643.
f0d13888 2081
cc320f07
KH
20822010-01-15 Kenichi Handa <handa@m17n.org>
2083
2084 * xdisp.c (CHAR_COMPOSED_P): New arg END_CHARPOS. Callers changed.
2085
7ffdf101
CY
20862010-01-15 Chong Yidong <cyd@stupidchicken.com>
2087
2088 * nsterm.m (Qnone): Define.
2089
2090 * nsfns.m (Qnone): Move definition to nsterm.m.
2091
d12bd917
KH
20922010-01-14 Kenichi Handa <handa@m17n.org>
2093
2094 * coding.c (detect_coding_iso_2022): Fix handling of euc-xx coding
2095 systems.
2096
d9a7c140
KH
20972010-01-14 Kenichi Handa <handa@m17n.org>
2098
2099 Make auto-composition work on all buffers even if they are
2100 fundamental mode.
2101
2102 * composite.c (Vauto_composition_mode): New variable.
2103 (composition_compute_stop_pos): Check Vauto_composition_mode
2104 instead of Vauto_composition_function.
2105 (composition_adjust_point, Ffind_composition_internal): Likewise.
2106 (syms_of_composite): Declare Lisp variable
2107 "auto-composition-mode" here.
2108
63286bb2
CY
21092010-01-13 Chong Yidong <cyd@stupidchicken.com>
2110
2111 * xterm.c (x_term_init): Avoid garbage-collecting the new terminal
2112 during call to vendor-specific-keysyms (Bug#5365).
2113
c2623ee7
YM
21142010-01-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2115
2116 * keyboard.c (input_available_signal) [SYNC_INPUT]:
2117 Call SIGNAL_THREAD_CHECK (Bug#5333).
2118
2119 * atimer.c (alarm_signal_handler) [!SYNC_INPUT]:
2120 Call SIGNAL_THREAD_CHECK.
2121
0b5397c2
SM
21222010-01-13 Stefan Monnier <monnier@iro.umontreal.ca>
2123
2124 Try to fix bug#5314. This is probably not the final word, tho.
2125 * buffer.c (Fset_buffer_modified_p): Try and be careful not to modify
2126 recent-auto-save-p as a side-effect.
2127 * buffer.h (BUF_AUTOSAVE_MODIFF): New macro.
2128 * buffer.c (Fkill_buffer, reset_buffer):
2129 * editfns.c (Fsubst_char_in_region):
2130 * fileio.c (Finsert_file_contents, Fdo_auto_save)
2131 (Fset_buffer_auto_saved, Frecent_auto_save_p): Use it.
2132
dc954cb2
KH
21332010-01-13 Kenichi Handa <handa@m17n.org>
2134
2135 Display buffer name, etc. in mode line by composing correctly.
2136
2137 * xdisp.c (reseat_to_string): Call composition_compute_stop_pos if
2138 STRING is not nil.
0b5397c2 2139 (display_mode_element): Adjust for the change of
dc954cb2
KH
2140 decode_mode_spec and display_line.
2141 (decode_mode_spec): Change arg MULTIBYTE to STRING.
2142 (display_string): Handle the case that STRING is non-null and
2143 LISP_STRING is not nil.
2144
0b5397c2
SM
2145 * xterm.c (x_draw_composite_glyph_string_foreground):
2146 Pay attention to s->face->overstrike.
dc954cb2
KH
2147
2148 * composite.c (composition_reseat_it): Don't check PT if STRING is
2149 non nil.
2150
4a00eaca
YM
21512010-01-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2152
2153 * keyboard.c (read_char): Don't apply previous change when current
2154 buffer is unchanged by command execution.
2155
60abb287
JD
21562010-01-12 Jan Djärv <jan.h.d@swipnet.se>
2157
2158 * keyboard.c (read_char): Return after executing from special map.
2159
893db5bc
GM
21602010-01-12 Glenn Morris <rgm@gnu.org>
2161
2162 * emacs.c (REPORT_EMACS_BUG_PRETEST_ADDRESS): Set it to
2163 bug-gnu-emacs rather than emacs-pretest-bug.
2164
4d03ece0
CY
21652010-01-11 Chong Yidong <cyd@stupidchicken.com>
2166
2167 * nsterm.m (syms_of_nsterm): Initialize Qcontrol etc. before
2168 initializing the Lisp variables that depend on them.
2169
1df47e38
YM
21702010-01-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2171
2172 * xfns.c (x_set_menu_bar_lines) [!USE_X_TOOLKIT && !USE_GTK]:
2173 Clear areas that will not be updated after change of menu bar lines.
2174 Clear the menu bar window's current matrix when the window gets empty.
2175
2f1c6384
CY
21762010-01-09 Chong Yidong <cyd@stupidchicken.com>
2177
e398c61c
CY
2178 * intervals.h, textprop.c (extend_property_ranges): Return value
2179 and args changed. Discard properties that begin at or after the
2180 new end (Bug#5306).
2181
2182 * editfns.c (Fformat): Caller changed.
2183
e5a29a10
CY
2184 * nsterm.m (ns_set_default_prefs): Delete function.
2185 (syms_of_nsterm): Initialize ns_command_modifier,
2186 ns_control_modifier, ns_function_modifier, ns_antialias_text, and
2187 ns_antialias_threshold here, not in ns_term_init (Bug#4113).
2188
2f1c6384
CY
2189 * xdisp.c (pos_visible_p): Check for invisible text at the correct
2190 position (Bug#4040).
2191
d427a9fa
EZ
21922010-01-09 Eli Zaretskii <eliz@gnu.org>
2193
2194 * editfns.c (Ffloat_time): Doc fix.
2195
21b9df2f
JD
21962010-01-09 Jan Djärv <jan.h.d@swipnet.se>
2197
2198 * xfns.c (Fx_create_frame): Don't create frame larger than display
2199 by default bug#3643.
2200
4b00d3b1
YM
22012010-01-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2202
2203 * frame.h (FRAME_TOP_MARGIN_HEIGHT): New macro.
2204 (FRAME_LINE_TO_PIXEL_Y, FRAME_PIXEL_Y_TO_LINE): Take account of pseudo
2205 windows above internal border.
2206
2207 * window.h (WINDOW_MENU_BAR_P, WINDOW_TOOL_BAR_P): New macros.
2208 (WINDOW_TOP_EDGE_Y, WINDOW_BOTTOM_EDGE_Y): Take account of pseudo
2209 windows above internal border.
2210
2211 * xdisp.c (get_glyph_string_clip_rects, init_glyph_string): Don't treat
2212 tool bar windows specially.
2213
2214 * xfns.c (x_set_tool_bar_lines): Take account of menu bar height.
2215
2216 * xterm.c (x_after_update_window_line): Don't treat tool bar windows
2217 specially.
2218 (XTflash): Take account of menu bar height.
2219
2220 * w32term.c (x_after_update_window_line): Don't treat tool bar windows
2221 specially.
2222
5075d853
JD
22232010-01-08 Jan Djärv <jan.h.d@swipnet.se>
2224
ac146f82 2225 * dispnew.c (change_frame_size_1): newwidth == FRAME_COLS (f) must
5075d853
JD
2226 also be true before we can return early (bug #5339).
2227
474217c8
CY
22282010-01-06 David Reitter <david.reitter@gmail.com>
2229
2230 * nsfns.m (ns_get_screen): Rewrite, returning NULL for non-NS.
2231 (Fns_display_usable_bounds): Rewrite, computing bounds properly
2232 (Bug#3233).
2233
c0e6d47d
JD
22342010-01-06 Jan Djärv <jan.h.d@swipnet.se>
2235
d0cf45b7
JD
2236 * font.c (font_open_entity): Enable chache and call cached_font_ok
2237 for the driver if defined.
2238 (QCuser_spec): New symbol.
2239 (font_spec_from_name): Save name as user-spec.
2240 (font_load_for_lface): Keep user-spec instead of name.
2241 (font_open_by_name): Save name as user-spec.
2242 (syms_of_font): Initialize QCuser_spec.
b7f8e4f5 2243 (font_clear_prop): Clear name if it exists in font (bug#5157).
d0cf45b7
JD
2244
2245 * xftfont.c (xftfont_open): Call xftfont_add_rendering_parameters.
2246 (xftfont_add_rendering_parameters, xftfont_cached_font_ok): New.
2247 (syms_of_xftfont): Initialize xftfont_driver.cached_font_ok.
2248
2249 * font.h (struct font_driver): Add cached_font_ok.
2250
c0e6d47d
JD
2251 * xterm.c (x_clear_frame): Queue draw for scroll bars.
2252
7c583cd8
JD
22532010-01-05 Jan Djärv <jan.h.d@swipnet.se>
2254
2255 * xterm.c (x_new_font): Move code for setting rows/cols before
2256 resizing ...
ac146f82 2257 (x_set_window_size): ... to here. Bug #2568.
7c583cd8
JD
2258
2259 * gtkutil.c (xg_clear_under_internal_border): New function.
0b5397c2
SM
2260 (xg_frame_resized, xg_frame_set_char_size):
2261 Call xg_clear_under_internal_border.
7c583cd8 2262 (xg_update_scrollbar_pos): Clear under old scroll bar position.
69e2f185 2263
03f77f0a
CY
22642010-01-05 Chong Yidong <cyd@stupidchicken.com>
2265
2266 * keyboard.c (read_key_sequence): Catch keyboard switch after
2267 making a new tty frame (Bug#5095).
2268
2a1ef5be
KH
22692010-01-05 Kenichi Handa <handa@m17n.org>
2270
2271 * fontset.c (fontset_find_font): Fix getting the frame pointer.
2272
e3eb1dae
SM
22732010-01-04 Stefan Monnier <monnier@iro.umontreal.ca>
2274
2275 * dbusbind.c (xd_remove_watch): Avoid trying to convert a void* to
2276 Lisp_Object, preferring to convert a lisp_Object to a void* instead.
2277 (Fdbus_init_bus): Use XHASH to get a scalar value from a Lisp_Object.
2278
777013f2
MA
22792010-01-03 Michael Albinus <michael.albinus@gmx.de>
2280
2281 * dbusbind.c (xd_add_watch): Improve debug message.
2282 (xd_remove_watch): Improve debug message. If DATA is the session
2283 bus, unset D-Bus session environment.
2284 (Fdbus_init_bus): Pass the bus as argument to
2285 dbus_connection_set_watch_functions. (Bug#5283)
7c583cd8 2286
8932b1c2
CY
22872010-01-01 Chong Yidong <cyd@stupidchicken.com>
2288
87231e2c
CY
2289 * nsterm.m (ns_get_color): Fix buffer overflow (Bug#4763).
2290
4801c5fa
CY
2291 * lread.c (syms_of_lread): Make it clearer that these are the
2292 names of loaded files (Bug#5068).
2293
8932b1c2
CY
2294 * eval.c (run_hook_with_args): Handle the case where the global
2295 value has the obsolete single-function form (Bug#5026).
2296
11e3c684
CY
22972009-12-27 Chong Yidong <cyd@stupidchicken.com>
2298
2299 * minibuf.c (Fall_completions): Minor optimization.
2300
5b28ce35
EZ
23012009-12-26 Eli Zaretskii <eliz@gnu.org>
2302
5ce6e4f4
JB
2303 * .gdbinit (pgx): Fix display of composite glyphs.
2304 Display cmp.from and cmp.to as well.
2305 (pitx): Fix last change.
5b28ce35 2306
bcffff46
KH
23072009-12-25 Kenichi Handa <handa@m17n.org>
2308
2309 * composite.h (composition_adjust_point): Update prototype.
2310
2311 * composite.c (composition_reseat_it): Don't make a composition
2312 spanning over point.
2313 (CHAR_COMPOSABLE_P): Treat U+200C (ZWNJ) and U+200D (ZWJ) as
2314 composable characters.
2315 (composition_adjust_point): New arg NEW_PT. Callers changed.
2316
2317 * keyboard.c (command_loop_1): Force redisplay if the last point
2318 was within a composition.
2319 (adjust_point_for_property): Don't adjust point for automatic
2320 composition when called after buffer modification.
2321
3f670e9a
EZ
23222009-12-19 Eli Zaretskii <eliz@gnu.org>
2323
5ce6e4f4
JB
2324 * .gdbinit (pitx): Don't use enum names, use their values.
2325 Remove reference to non-existing value GET_FROM_COMPOSITION.
be996d82
EZ
2326 (pgx): Don't use enum names, use their values.
2327 (pitmethod): New helper command.
2328 (pitx): Use it to display iteration method.
2329 (pgrowit): New command.
2330
ad903955
EZ
2331 * makefile.w32-in ($(BLD)/cmds.$(O)): Depend on frame.h.
2332
3f670e9a
EZ
2333 Update dependencies in Makefile.in.
2334
2335 * Makefile.in (alloc.o): Depend on termhooks.h.
2336 (atimer.o): Depend on blockinput.h.
2337 (buffer.o): Depend on indent.h, keyboard.h, coding.h, keymap.h,
2338 and frame.h.
2339 (callint.o): Depend on systime.h, coding.h, and composite.h.
2340 (callproc.o): Depend on buffer.h.
2341 (casefiddle.o): Don't depend on charset.h.
2342 (casetab.o): Depend on character.h.
2343 (ccl.o): Depend on composite.h.
2344 (chartab.o): Depend on ccl.h.
2345 (cm.o): Depend on dispextern.h.
2346 (cmds.o): Depend on systime.h, coding.h, frame.h, and composite.h.
2347 (coding.o): Don't depend on $(INTERVALS_H).
2348 (composite.o): Don't depend on dispextern.h explicitly (it's in
2349 $(INTERVALS_H)). Depend on ccl.h.
2350 (data.o): Depend on systime.h, coding.h, composite.h,
2351 dispextern.h, font.h, and ccl.h.
2352 (dired.o): Depend on composite.h.
2353 (dispnew.o): Depend on coding.h. Don't depend explicitly on
2354 composite.h (it's in $(INTERVALS_H)).
2355 (doc.o): Depend on systime.h, coding.h, and composite.h.
2356 (editfns.o): Don't depend explicitly on dispextern.h.
2357 (emacs.o): Depend on frame.h and coding.h.
2358 (eval.o): Depend on coding.h, composite.h, and xterm.h.
2359 (fileio.o): Depend on frame.h and commands.h. Don't depend
2360 explicitly on dispextern.h.
2361 (filelock.o): Don't depend on epaths.h and charset.h. Depend on
2362 composite.h.
2363 (fns.o): Don't depend on termhooks.h.
2364 (font.o): Depend on buffer.h, composite.h, fontset.h, and xterm.h.
2365 (fontset.o): Depend on blockinput.h, atimer.h, systime.h,
2366 coding.h, $(INTERVALS_H), window.h, xterm.h.
2367 (frame.o): Depend on coding.h, composite.h, termhooks.h, and ccl.h.
2368 (fringe.o): Depend on blockinput.h, atimer.h, and systime.h.
2369 (ftfont.o): Depend on blockinput.h, atimer.h, systime.h, coding.h,
2370 fontset.h, ccl.h, and ftfont.h.
2371 (ftxfont.o): Depend on atimer.h, systime.h, fontset.h, and ccl.h.
2372 (gtkutil.o): Depend on dispextern.h and composite.h.
2373 (image.o): Depend on epaths.h, character.h, coding.h, composite.h,
2374 termhooks.h, and ccl.h.
2375 (indent.o): Depend on systime.h, coding.h, and $(INTERVALS_H).
2376 (intervals.o): Depend on systime.h and coding.h.
2377 (keyboard.o): Depend on composite.h and coding.h.
2378 (keymap.o): Depend on coding.h and frame.h.
2379 (lread.o): Depend on systime.h, frame.h, blockinput.h, and atimer.h.
2380 (macros.o): Depend on systime.h, coding.h, and composite.h.
2381 (menu.o): Depend on systime.h, coding.h, composite.h, window.h,
2382 and atimer.h.
2383 (minibuf.o): Depend on systime.h and coding.h. Don't depend on
2384 dispextern.h explicitly.
0b5397c2
SM
2385 (print.o): Depend on termhooks.h, coding.h, and ccl.h.
2386 Don't depend explicitly on dispextern.h and composite.h.
3f670e9a
EZ
2387 (process.o): Depend on character.h, xgselect.h, and sysselect.h.
2388 (regex.o): Don't depend on charset.h.
2389 (scroll.o): Depend on systime.h, coding.h, composite.h, and window.h.
2390 (search.o): Don't depend explicitly on composite.h.
2391 (sound.o): Depend on atimer.h and systime.h.
2392 (syntax.o): Don't depend explicitly on composite.h.
2393 (sysdep.o): Depend on coding.h and composite.h.
2394 (term.o): Depend on xterm.h and buffer.h.
2395 (terminal.o): Depend on dispextern.h, composite.h, and systime.h.
2396 (textprop.o): Don't depend on dispextern.h explicitly.
2397 (undo.o): Depend on dispextern.h.
2398 (window.o): Depend on coding.h and termhooks.h. Don't depend on
2399 dispextern.h and composite.h explicitly.
2400 (xdisp.o): Depend on ccl.h.
2401 (xfaces.o): Depend on coding.h and ccl.h.
2402 (xfns.o): Depend on $(INTERVALS_H) and ccl.h.
2403 (xfont.o): Depend on atimer.h, systime.h, fontset.h, and ccl.h.
2404 (xftfont.o): Depend on atimer.h, systime.h, fontset.h, ccl.h, and
2405 ftfont.h.
2406 (xgselect.o): New dependency.
2407 (xmenu.o): Depend on composite.h, keymap.h, and sysselect.h.
2408 (xselect.o): Depend on keyboard.h, coding.h, and composite.h.
2409 (xsettings.o): Depend on dispextern.h, keyboard.h, systime.h,
2410 coding.h, composite.h, blockinput.h, atimer.h, and termopts.h.
2411 (xsmfns.o): Depend on frame.h and dispextern.h.
2412 (xterm.o): Depend on intervals.h, keymap.h, xgselect.h, and
2413 sysselect.h.
2414
7a6f7fea
AS
24152009-12-19 Andreas Schwab <schwab@linux-m68k.org>
2416
2417 * font.c (Fclear_font_cache): Pass correct cache argument to
2418 font_clear_cache.
2419
f4c21026
AS
24202009-12-16 Andreas Schwab <schwab@linux-m68k.org>
2421
2422 * Makefile.in (prefix-args${EXEEXT}): Don't compile prefix-args.c
2423 twice.
2424
f7ab0997
CY
24252009-12-15 Chong Yidong <cyd@stupidchicken.com>
2426
2427 * xdisp.c (decode_mode_spec): Inhibit garbage collection when
2428 calling file-remote-p. Reported by Jim Meyering.
2429
fa8e045a
MA
24302009-12-15 Michael Albinus <michael.albinus@gmx.de>
2431
2432 * dbusbind.c (xd_retrieve_arg): Reorder declarations in order to
777013f2 2433 avoid compiler warnings. (Bug #5217)
fa8e045a 2434
a63dba42
KH
24352009-12-14 Kenichi Handa <handa@m17n.org>
2436
2437 * coding.c (decode_coding_iso_2022): Ignore ISO_CODE_SS2_7 (0x19)
2438 in 8-bit encoding.
2439
5ce6e4f4 24402009-12-13 Pat Thoyts <patthoyts@users.sourceforge.net> (tiny change)
36acb2a7
JD
2441
2442 * xfns.c (x_create_tip_frame): Set the extended window manager hint for
2443 tooltip windows.
2444
223e5fc6
JD
24452009-12-13 Jan Djärv <jan.h.d@swipnet.se>
2446
36acb2a7
JD
2447 * xterm.h (struct x_display_info): Add Xatom_net_window_type_tooltip and
2448 Xatom_net_window_type.
2449
2450 * xterm.c (x_term_init): Initialize Xatom_net_window_type_tooltip and
2451 Xatom_net_window_type.
2452
b8f00677
JD
2453 * xterm.c (my_log_handler): New function.
2454 (x_term_init): Set my_log_handler as log handler during gtk_init
5ce6e4f4 2455 so we can filter out buggy messages. (Bug #5120).
b8f00677 2456
e5f0bc9a
JD
2457 * xterm.c (xg_scroll_callback): Parameter list changed,
2458 use parameter GtkScrollType to determine scroll/line/page.
2459 Only allow dragging if a button < 4 is grabbed (bug #5177).
2460 (xg_end_scroll_callback): New function.
2461 (x_create_toolkit_scroll_bar): Pass xg_end_scroll_callback to
2462 xg_create_scroll_bar.
2463
2464 * gtkutil.c (xg_gtk_scroll_destroy): Remove XG_LAST_SB_DATA handling.
2465 (scroll_end_callback): Remove.
2466 (xg_create_scroll_bar): Add parameter end_callback, bind it to
2467 button-release-event. Replace value-changed event with change-value,
2468 bug #5177,
2469 (xg_event_is_for_scrollbar): Only return true if button is less than 4,
2470 bug #5177.
2471
2472 * gtkutil.h (XG_LAST_SB_DATA): Remove.
2473 (xg_create_scroll_bar): Add GCallback end_callback.
2474
223e5fc6
JD
2475 * xftfont.c (QClcdfilter): New variable.
2476 (xftfont_open): Parse constant names for RGBA, HINT_STYLE and LCDFILTER.
2477 (syms_of_xftfont): Initialize QClcdfilter.
2478
3c055b77
JD
24792009-12-12 Jan Djärv <jan.h.d@swipnet.se>
2480
2481 * xsettings.c (struct xsettings): Add member seen.
2482 (parse_xft_settings): Update member seen with what we have read.
ba68c0b0 2483 Return non-zero if Xft-settings have been parsed, 0 otherwise.
3c055b77
JD
2484 (apply_xft_settings): Only update Xft settings with what member seen
2485 indicates as new.
2486
05fe33ff
EZ
24872009-12-12 Eli Zaretskii <eliz@gnu.org>
2488
2489 * dispextern.h (struct text_pos): Use EMACS_INT;
2490 (struct glyph): Use EMACS_INT for charpos.
2491 (struct it): Use EMACS_INT for stop_charpos, end_charpos,
2492 region_beg_charpos, region_end_charpos,
2493 redisplay_end_trigger_charpos, and also for
2494 iterator_stack_entry.end_charpos and
2495 iterator_stack_entry.stop_charpos.
2496
e8d7886a
JD
24972009-12-12 Jan Djärv <jan.h.d@swipnet.se>
2498
5ce6e4f4 2499 * gtkutil.c (scroll_end_callback): New function (bug #5177).
e8d7886a
JD
2500 (xg_create_scroll_bar): Call scroll_end_callback on button release
2501 event (bug #5177).
2502 (xg_event_is_for_scrollbar): != replaced with ==.
2503
d0db2ec8
KH
25042009-12-12 Kenichi Handa <handa@m17n.org>
2505
2506 * ftfont.c (struct ftfont_info): New member matrix.
2507 (ftfont_open): Setup xftfont_info->matrix.
2508 (MFLTFontFT): New member matrix.
2509 (FLOOR, CEIL, ROUND): New macros.
2510 (ftfont_get_metrics): Handle matrix transformation.
2511 (ftfont_shape_by_flt): New arg matrix. Callers changed.
2512
2513 * xftfont.c (struct xftfont_info): New member matrix.
2514 (xftfont_open): Setup xftfont_info->matrix.
2515
25162009-12-10 Kenichi Handa <handa@m17n.org>
2517
2518 * xdisp.c (append_space_for_newline): Consider face-remapping.
2519
2cc7b62f
AS
25202009-12-09 Andreas Schwab <schwab@linux-m68k.org>
2521
b87dd913
AS
2522 * xsettings.c: Include "keyboard.h".
2523
eba5eb94
AS
2524 * gtkutil.c (xg_tool_bar_proxy_help_callback): Fix missing return.
2525
2cc7b62f
AS
2526 Fix implicit function declarations.
2527 * cmds.c: Include "frame.h".
2528 * frame.c: Include "font.h" also if !HAVE_WINDOW_SYSTEM.
2529 * frame.h: Move declaration of delete_frame outside of
2530 HAVE_WINDOW_SYSTEM.
2531
a4ef73c8
CY
25322009-12-09 Ken Brown <kbrown@cornell.edu> (tiny change)
2533
2534 * s/cygwin.h (G_SLICE_ALWAYS_MALLOC): New variable.
2535
2536 * emacs.c (main): Set the G_SLICE environment variable for Cygwin
2537 GTK builds.
2538
944a300c
AS
25392009-12-07 Andreas Schwab <schwab@linux-m68k.org>
2540
2541 * unexelf.c (unexec): Don't search for .data twice.
2542
022eef62
CY
25432009-12-05 Chong Yidong <cyd@stupidchicken.com>
2544
426ac949
CY
2545 * xdisp.c (push_display_prop): Don't set avoid_cursor_p. Return 0
2546 if push failed.
2547 (handle_line_prefix): Set avoid_cursor_p here. Check return value
2548 of push_display_prop (Bug#5000).
2549
022eef62
CY
2550 * xfaces.c (Fx_family_fonts): Handle 2009-07-14 change to return
2551 value of font_list_entities (Bug#5085).
2552
be95bee9
JB
25532009-12-04 Juanma Barranquero <lekktu@gmail.com>
2554
2555 Fix `string-to-number' to deal consistently with integers and floats.
2556 * lread.c (isfloat_string): New argument ignore_trailing to accept all
2557 trailing characters, not just whitespace.
2558 (read1): Pass new arg 0 to keep old behavior.
2559 * data.c (Fstring_to_number): Pass 1 to isfloat_string to ignore
2560 trailing chars, as it is already done for integers. Doc fixes.
2561 * lisp.h (isfloat_string): Add new arg to declaration of isfloat_string.
2562
24c2d7ce
EZ
25632009-12-04 Eli Zaretskii <eliz@gnu.org>
2564
0b5397c2
SM
2565 * dispextern.h (enum prop_idx) <AUTO_COMPOSED_PROP_IDX>:
2566 Delete unused enumeration value.
24c2d7ce 2567
7e694795
EZ
25682009-12-03 Eli Zaretskii <eliz@gnu.org>
2569
2570 * Makefile.in (lisp, shortlisp): Replace indian.el with indian.elc.
2571
84b31826
SM
25722009-12-03 Daniel Hackney <dan@haxney.org> (tiny change)
2573
2574 * process.c (Fmake_network_process): Fix up the tests for
2575 "connectionless socket", so they DTRT for seqpacket sockets as well.
2576
f00c449b
SM
25772009-12-03 Stefan Monnier <monnier@iro.umontreal.ca>
2578
2579 * process.c (Qseqpacket): New symbol.
2580 (HAVE_SEQPACKET): New macro.
2581 (Fmake_network_process): Accept new :type `seqpacket'.
2582 (init_process): Add `seqpacket' feature when applicable.
2583 (syms_of_process): Initialize Qseqpacket.
2584
8096a0ff
YM
25852009-12-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2586
2587 * font.c (font_load_for_lface, font_open_by_name): Don't store name
2588 if entity is Qnil.
2589
3e0de07f
SM
25902009-11-30 Stefan Monnier <monnier@iro.umontreal.ca>
2591
2592 * print.c (print_preprocess): Preprocess the key_and_value table of
2593 hashtables, even tho they're "hidden" (bug#5082).
2594
abeafb2a
JD
25952009-11-29 Jan Djärv <jan.h.d@swipnet.se>
2596
2597 * frame.c (frame_make_pointer_invisible)
2598 (frame_make_pointer_visible): Declare f before statements.
2599
4bf47195
EZ
26002009-11-28 Eli Zaretskii <eliz@gnu.org>
2601
2602 * Makefile.in [!AUTO_DEPEND]: Remove outdated comment about
2603 omitted dependencies on lisp.h.
2604
c525b3f2
JD
26052009-11-27 Jan Djärv <jan.h.d@swipnet.se>
2606
ece2d4ed
JD
2607 * xftfont.c (xftfont_end_for_frame): Just return if dpyinfo->display
2608 is NULL.
2609
2610 * xterm.c (x_delete_terminal): Set dpyinfo->display to NULL.
2611
2612 * frame.c (frame_make_pointer_invisible)
3e0de07f 2613 (frame_make_pointer_visible): Just return if there isn't any selected
ece2d4ed
JD
2614 frame.
2615
c525b3f2
JD
2616 * search.c (simple_search): Remove warning by making *p const.
2617
2f00e299
DN
26182009-11-26 Dan Nicolaescu <dann@ics.uci.edu>
2619
2620 * xdisp.c (power_letter): Remove duplicate const.
2621
084b049b
JD
26222009-11-25 Jan Djärv <jan.h.d@swipnet.se>
2623
a1fadc6f
JD
2624 * term.c (delete_tty): Remove check for last terminal (bug#4970).
2625
5ce6e4f4 2626 * xsettings.c: Revert changes from 2009-11-23. Just use Xft
084b049b
JD
2627 defaults (bug #5025).
2628
28259cac
SM
26292009-11-24 Stefan Monnier <monnier@iro.umontreal.ca>
2630
2631 * insdel.c (adjust_markers_for_delete): Move it in the
2632 right direction! (bug#4803)
2633
e8e14166
YM
26342009-11-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2635
2636 * font.c (font_open_entity): Don't use ASET if font_object is Qnil.
2637
2638 * xterm.c (x_new_font): Update f->scroll_bar_actual_width.
2639
86677b58
GM
26402009-11-24 Glenn Morris <rgm@gnu.org>
2641
2642 * frame.c (focus-follows-mouse): Mention mouse-autoselect-window.
2643
581e51e8
JD
26442009-11-23 Jan Djärv <jan.h.d@swipnet.se>
2645
cfc86c7a
JD
2646 * Makefile.in: Must create deps for ecrt0.o in its rule.
2647
581e51e8
JD
2648 * xfns.c (Fx_select_font): Try to convert Fontconfig name to Gtk name
2649 because that is what Gtk+ font dialog understands.
2650
2651 * font.c (font_make_object, Fcopy_font_spec): Use Fcopy_alist instead
2652 of Fcopy_sequence.
2653 (font_open_by_name): Put name given into QCname for font-object returned.
2654
2655 * frame.c (x_set_font): Save original font name as frame parameter
2656 font-parameter.
2657
2658 * xsettings.c (set_default_xft_settings): New function.
2659 (init_xfd_settings): Call set_default_xft_settings if no XSETTINGS window
2660 is found.
2661
8b264ecb
AS
26622009-11-22 Andreas Schwab <schwab@linux-m68k.org>
2663
2664 * search.c (simple_search): Avoid CHAR_TO_BYTE in inner loop when
2665 searching backwards through multibyte buffer.
2666
872870b2
JD
26672009-11-21 Jan Djärv <jan.h.d@swipnet.se>
2668
2669 * xterm.c: #include xgselect.h.
2670 (x_initialize): Call xgselect_initialize.
2671
2672 * xsettings.c (something_changedCB): C++ comments => C comments.
2673 (init_gconf): Do not deal with any GLib file descriptors, xg_select
2674 does that now.
2675
2676 * gtkutil.c (xg_timer, xg_process_timeouts, xg_start_timer)
2677 (xg_stop_timer, menu_grab_callback_cnt, menu_grab_callback)
2678 (scroll_bar_button_cb): Remove.
5ce6e4f4 2679 (create_menus): C++ comments => C comments. Don't bind grab-notify
872870b2
JD
2680 event.
2681 (xg_create_scroll_bar): Don't bind button-press-event and
2682 button-release-event.
2683
2684 * process.c: Include xgselect.h if defined (USE_GTK) ||
2685 defined (HAVE_GCONF).
2686 (wait_reading_process_output): Call xg_select for the same condition.
2687
2688 * xgselect.c (xg_select): New function to better integrate with
2689 GLib/Gtk event handling. Needed if GConf daemon dies/restarts.
2690
2691 * xgselect.h: New file, declare xg_select, xgselect_initialize.
2692
2693 * Makefile.in (XOBJ): Add xgselect.o.
2694
62a6e103
AS
26952009-11-21 Andreas Schwab <schwab@linux-m68k.org>
2696
0b5397c2
SM
2697 * character.h (STRING_CHAR, STRING_CHAR_AND_LENGTH):
2698 Remove ignored second argument. All callers changed.
62a6e103
AS
2699 * regex.c (STRING_CHAR, STRING_CHAR_AND_LENGTH, RE_STRING_CHAR)
2700 (RE_STRING_CHAR_AND_LENGTH): Likewise.
2701 * xdisp.c (string_char_and_length): Likewise.
2702
b0ca0f33
DN
27032009-11-21 Dan Nicolaescu <dann@ics.uci.edu>
2704
2705 * xterm.c (x_new_font):
2706 * print.c (print_object):
2707 * cmds.c (Fself_insert_command): Move declarations before statements.
2708
dd5a6279
CY
27092009-11-20 Ken Brown <kbrown@cornell.edu> (tiny change)
2710
2711 * s/cygwin.h: Remove unneeded linker flags.
2712
4a8e097d
JD
27132009-11-20 Jan Djärv <jan.h.d@swipnet.se>
2714
0d1d0d26
JD
2715 * xfns.c (x_default_font_parameter): Call xsettings_get_system_font.
2716
2717 * xsettings.h: Declare xsettings_get_system_font.
2718
2719 * xsettings.c (xsettings_get_system_font): New function.
2720 (init_gconf): No use initiating gconf unless we have Xft also.
2721 (syms_of_xsettings): Only provide system-font-setting if HAVE_XFT and
2722 HAVE_GCONF.
2723
4a8e097d
JD
2724 * gtkutil.c (xg_modify_menubar_widgets): If menubar is totally empty
2725 add a blank entry so it doesn't collapse into nothing.
2726
8ab1650e
SM
27272009-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
2728
2729 * lread.c (Funintern): Comment out last change.
2730
82c602f0
RS
27312009-11-19 Richard Stallman <rms@gnu.org>
2732
2733 * lread.c (Funintern): Error if symbol is t or nil.
2734
87e32266
SM
27352009-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
2736
2737 * insdel.c (make_gap_larger): Don't make as many assumptions about the
2738 representation of Lisp integers.
2739 Reported by MJ Chan <mjchan.inbox@gmail.com>.
2740
1b9ac145
AS
27412009-11-17 Andreas Schwab <schwab@linux-m68k.org>
2742
2743 * lisp.h: Remove declaration of Ffont_get_system_font.
2744 * xfns.c: Move include of "xsettings.h".
2745 * xsettings.h: Use EXFUN to declare Ffont_get_system_font.
2746
dfb3c4c6
JD
27472009-11-17 Jan Djärv <jan.h.d@swipnet.se>
2748
87e32266
SM
2749 * xsettings.c (something_changedCB, Ffont_get_system_font):
2750 Check use_system_font.
dfb3c4c6
JD
2751 (syms_of_xsettings): DEFVAR font-use-system-font.
2752
9370c1d8
AS
27532009-11-17 Andreas Schwab <schwab@linux-m68k.org>
2754
25fe851a
AS
2755 * xfns.c (x_default_font_parameter): Remove dead assignment.
2756
9370c1d8
AS
2757 * lisp.h (Fbyteorder, init_font, Ffont_get_system_font): Declare.
2758
637fa988
JD
27592009-11-17 Jan Djärv <jan.h.d@swipnet.se>
2760
87e32266 2761 * xftfont.c (xftfont_fix_match): Older versions of fontconfig do
21050de1 2762 not have FC_LCD_*. #define them if not there.
a6eb20d8 2763
87e32266 2764 * xsettings.c (parse_xft_settings, apply_xft_settings): Ditto.
a6eb20d8 2765
637fa988
JD
2766 * xterm.h (struct x_display_info): Add atoms and Window for xsettings.
2767
2768 * xterm.c (handle_one_xevent): Call xft_settings_event for
2769 ClientMessage, PropertyNotify and DestroyNotify.
2770 (x_term_init): If we have XFT, get DPI from Xft.dpi.
2771 Call xsettings_initialize.
2772
2773 * xftfont.c (xftfont_fix_match): New function.
2774 (xftfont_open): Call XftDefaultSubstitute before XftFontMatch.
2775 Call xftfont_fix_match after XftFontMatch.
2776
2777 * xfont.c (xfont_driver): Initialize all members.
2778
87e32266
SM
2779 * xfns.c (x_default_font_parameter):
2780 Try font from Ffont_get_system_font.
637fa988
JD
2781 Do not get font from x_default_parameter if we got one from
2782 Ffont_get_system_font.
87e32266 2783 (Fx_select_font): Get the defaut font name from :name of FRAME_FONT(f).
637fa988
JD
2784
2785 * w32font.c (w32font_driver): Initialize all members.
2786
2787 * termhooks.h (enum event_kind): CONFIG_CHANGED_EVENT is new.
2788
2789 * lisp.h: Declare syms_of_xsettings.
2790
87e32266
SM
2791 * keyboard.c (kbd_buffer_get_event, make_lispy_event):
2792 Handle CONFIG_CHANGED_EVENT.
637fa988
JD
2793
2794 * ftfont.c (ftfont_filter_properties): New function.
2795
2796 * frame.c (x_set_font): Remove unused variable lval.
2797
87e32266 2798 * font.h (struct font_driver): Add filter_properties.
637fa988
JD
2799
2800 * font.c (font_put_extra): Don't return if val is nil, it means
2801 boolean option is off.
2802 (font_parse_fcname): Collect all extra properties in extra_props
2803 and call filter_properties for all drivers with extra_props and
2804 font as parameter.
87e32266
SM
2805 (font_open_entity): Do not use cache, it does not pick up new
2806 fontconfig settings like hinting.
637fa988
JD
2807 (font_load_for_lface): If spec had a name in it, store it in entity.
2808
2809 * emacs.c (main): Call syms_of_xsettings
2810
2811 * config.in: HAVE_GCONF is new.
2812
2813 * Makefile.in (GCONF_CFLAGS, GCONF_LIBS): New variables for HAVE_GCONF.
2814 xsettings.o is new.
2815
5a942932
KH
28162009-11-17 Kenichi Handa <handa@m17n.org>
2817
2818 * xdisp.c (x_produce_glyphs): Consider face-remapping when falling
2819 back to the default font in case that no suitable font is found.
2820
b7c7a4d1
SM
28212009-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
2822
2823 * menu.c (Fx_popup_menu) [HAVE_NS]: Use generic code for window edge.
2824 Suggested by Chad Brown <yandros@mit.edu>.
2825 (push_menu_item): Use MENU_ITEMS_ITEM_* names.
2826
072f1e39
JD
28272009-11-16 Jan Djärv <jan.h.d@swipnet.se>
2828
2829 * xmenu.c (x_menu_wait_for_event): Call XFlush before select.
2830
5d1e70a2
AS
28312009-11-14 Andreas Schwab <schwab@linux-m68k.org>
2832
87e32266 2833 * Makefile.in: Ignore errors from mkdir when creating deps directory.
5d1e70a2 2834
a53cfbe5
JD
28352009-11-14 Jan Djärv <jan.h.d@swipnet.se>
2836
473a99b7
JD
2837 * gtkutil.c (xg_update_frame_menubar): Do nothing if menubar already
2838 has a parent.
2839
a53cfbe5 2840 * Makefile.in: If AUTO_DEPEND is defined, make gcc generate
5ce6e4f4 2841 dependency files in deps/. Include those files into Makefile.
a53cfbe5
JD
2842
2843 * config.in: Generated (AUTO_DEPEND).
2844
f04bb9b2
MA
28452009-11-13 Michael Albinus <michael.albinus@gmx.de>
2846
b7c7a4d1 2847 * dbusbind.c (Vdbus_registered_objects_table): Rename from
f04bb9b2
MA
2848 Vdbus_registered_functions_table, because it contains also
2849 properties. Fix docstring.
b7c7a4d1 2850 (Fdbus_call_method, Fdbus_call_method_asynchronously): Fix docstring.
f04bb9b2 2851
8f11f7ec
SM
28522009-11-13 Stefan Monnier <monnier@iro.umontreal.ca>
2853
2854 * alloc.c (mark_object): Don't reprocess marked strings.
2855 Check vector's markbit earlier. Adjust calls to mark_vectorlike.
2856 (mark_vectorlike, mark_char_table): Assume the object is unmarked.
2857
8a605fe8
KH
28582009-11-13 Kenichi Handa <handa@m17n.org>
2859
8f11f7ec 2860 * category.c (word_boundary_p): Adjust for the change of the
8a605fe8
KH
2861 semantics of Vword_combining_categories.
2862 (Vword_combining_categories): Describe the slight change of the
2863 semantics.
2864
241c4680
EZ
28652009-11-13 Eli Zaretskii <eliz@gnu.org>
2866
2867 * menu.c (Fx_popup_menu): Call Fx_hide_tip only if HAVE_WINDOW_SYSTEM.
2868
2869 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Revert last change.
2870
5d58e44c
SM
28712009-11-12 Stefan Monnier <monnier@iro.umontreal.ca>
2872
2873 * xdisp.c (syms_of_xdisp): Fix typo in last change.
2874
5e13f9d3
JB
28752009-11-12 Juanma Barranquero <lekktu@gmail.com>
2876
2877 * makefile.w32-in: Update dependencies; add dependencies to lisp.h.
2878
cf54c754
DR
28792009-11-11 David Reitter <david.reitter@gmail.com>
2880
2881 * menu.c (Fx_popup_menu): Remove left-over debugging code and rename
2882 variables to fix 2009-11-09 change.
2883
a4ada374
DN
28842009-11-11 Dan Nicolaescu <dann@ics.uci.edu>
2885
91433552
DN
2886 * process.c (ifflag_def): Make flag_sym constant.
2887 (Fnetwork_interface_info): Use a constant pointer.
2888 (ifflag_table):
2889 * xfns.c (cursor_bits):
2890 * xdisp.c (power_letter):
2891 * termcap.c (speeds, esctab):
2892 * sysdep.c (baud_convert):
2893 * keyboard.c (lispy_accent_codes, modifier_names):
2894 * image.c (xbm_format, xpm_format, pbm_format, png_format)
2895 (jpeg_format, tiff_format, gif_format, svg_format)
2896 (interlace_start, interlace_increment, gs_format):
2897 * gtkutil.c (separator_names):
2898 * fringe.c (swap_nibble):
2899 * fns.c (base64_value_to_char, base64_char_to_value):
2900 * fileio.c (make_temp_name_tbl):
2901 * coding.c (suffixes): Make constant.
2902
f4265f6c
DN
2903 * frame.c (make_initial_frame):
2904 * buffer.c (init_buffer_once): Use make_pure_c_string instead of
2905 build_string.
2906 * alloc.c (syms_of_alloc): Build Vmemory_signal_data in pure memory.
2907
04420943
DN
2908 * s/freebsd.h:
2909 * s/netbsd.h: Remove code referring to non-existent file: unexsunos4.o.
2910
0a5d24ae
DN
2911 * Makefile.in: Add dependencies to lisp.h. Remove dependencies
2912 for non-existent files: unexmips.c, unexnext.c, abbrev.c, malloc.c.
2913
a4ada374
DN
2914 * xfns.c (syms_of_xfns): Use make_pure_string instead of build_string.
2915 * xterm.c (syms_of_xterm):
2916 * xfaces.c (syms_of_xfaces):
2917 * xdisp.c (syms_of_xdisp):
2918 * lread.c (syms_of_lread):
2919 * keyboard.c (syms_of_keyboard): Use make_pure_c_string instead of
2920 build_string.
91433552 2921
a4ada374
DN
2922 * doc.c (Fsnarf_documentation): Purecopy Vbuild_files.
2923
af98fc7f
SM
29242009-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
2925
8ab1650e 2926 * fns.c (Fplist_get): Merge the active and the commented out code.
af98fc7f 2927
e90292a9
JD
29282009-11-10 Jan Djärv <jan.h.d@swipnet.se>
2929
2930 * keyboard.h: Declare timer_check.
2931
2932 * keyboard.c (timer_check_2): New function that does what the old
2933 timer_check did.
2934 (timer_check): Call timer_check_2 until -1 or a non-zero time is
2935 returned, i.e. don't return -1 with timers pending.
2936
2937 * process.c: Remove extern declaration of timer_check.
2938
2939 * xmenu.c (x_menu_wait_for_event): Remove code that did a timeout
2940 even if timer_check returned -1.
2941
af98fc7f
SM
2942 * gtkutil.c (xg_dialog_response_cb): Data is now a struct
2943 xg_dialog_data.
e90292a9
JD
2944 (pop_down_dialog): Destroy widget (if any), cancel timer and unref
2945 the event loop.
2946 (xg_maybe_add_timer, xg_dialog_run): New functions (bug #4574).
2947 (xg_get_file_name, xg_get_font_name): Call xg_dialog_run (bug #4574).
2948 Destroy the dialog after xg_dialog_run.
2949
045b83c0
SM
29502009-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
2951
2952 * menu.c (Fx_popup_menu) [HAVE_NS]: Remove unused vars.
2953
1fb99a3a
JD
29542009-11-10 Jan Djärv <jan.h.d@swipnet.se>
2955
2956 * xmenu.c (xmenu_show): Must not be static after 2009-11-09 changes.
2957
04e452cb
JB
29582009-11-09 Juanma Barranquero <lekktu@gmail.com>
2959
2960 * menu.c [HAVE_NTGUI]: Declare current_popup_menu.
2961
ef7417fd
SM
29622009-11-09 Stefan Monnier <monnier@iro.umontreal.ca>
2963
2964 * menu.c (Fx_popup_menu): Consolidate versions from xmenu.c,
2965 w32menu.c, and nsmenu.m.
2966 Simplify the obsolete case where position is nil.
2967 (cleanup_popup_menu): New function, moved from nsmenu.m.
2968 (struct skp): Remove slot `notreal'.
2969 (single_keymap_panes, keymap_panes): Remove arg `notreal' and
2970 adjust callers.
2971 (single_menu_item): Adjust call to parse_menu_item.
2972 (syms_of_menu): Defsubr x-popup-menu.
2973 * menu.h (Vmenu_updating_frame): Consolidate declarations from *menu.c.
2974 (keymap_panes): Don't export any more.
2975 (mouse_position_for_popup, w32_menu_show, ns_menu_show)
2976 (xmenu_show): Declare.
2977 * keyboard.c (parse_menu_item): Remove arg `notreal'.
2978 (menu_bar_item, read_char_minibuf_menu_prompt): Adjust callers.
2979 * keyboard.h (parse_menu_item): Update declaration.
2980 * xmenu.c (Fx_popup_menu): Remove.
2981 (syms_of_xmenu): Don't defsubr x-popup-menu.
2982 * w32menu.c (Fx_popup_menu): Remove.
2983 (syms_of_w32menu): Don't defsubr x-popup-menu.
2984 * nsmenu.m (cleanup_popup_menu): Remove.
2985 (ns_menu_show): Rename from ns_popup_menu and remove all the code
2986 moved to menu.c's Fx_popup_menu.
2987 (Fx_popup_menu): Remove.
2988 (syms_of_nsmenu): Don't defsubr x-popup-menu, and don't initialize
2989 menu_items (it's done in menu.c already).
2990
424d6179
SM
29912009-11-08 Stefan Monnier <monnier@iro.umontreal.ca>
2992
2993 * keyboard.c (parse_menu_item): Handle `notreal' a bit earlier.
2994 Use `tem' less. Make sure KEYEQ holds a string or nil (bug#4879).
2995
c0df13a6 29962009-11-08 Chong Yidong <cyd@stupidchicken.com>
a20903d0
CY
2997
2998 * xmenu.c (Fx_popup_menu): Extract event timestamp. Pass it to
c0df13a6 2999 xmenu_show. Hide any tooltip before opening a menu.
a20903d0
CY
3000 (xmenu_show): New arg. Pass it to create_and_show_popup_menu.
3001 (create_and_show_popup_menu): New arg. Pass it to gtk_menu_popup.
3002
2de9f71c
SM
30032009-11-06 Stefan Monnier <monnier@iro.umontreal.ca>
3004
3005 Let integers use up 2 tags to give them one extra bit and thus double
3006 their range.
3007 * lisp.h (USE_2_TAGS_FOR_INTS): New macro.
3008 (LISP_INT_TAG, case_Lisp_Int, LISP_STRING_TAG, LISP_INT_TAG_P):
3009 New macros.
3010 (enum Lisp_Type): Use them. Give explicit values.
3011 (Lisp_Type_Limit): Remove.
3012 (XINT, XUINT, make_number) [!USE_LISP_UNION_TYPE]:
3013 (MOST_NEGATIVE_FIXNUM, MOST_POSITIVE_FIXNUM, INTMASK):
3014 Pay attention to USE_2_TAGS_FOR_INTS.
3015 (INTEGERP): Use LISP_INT_TAG_P.
3016 * fns.c (internal_equal): Simplify the default case.
3017 (sxhash): Use case_Lisp_Int.
3018 * data.c (wrong_type_argument): Don't check against Lisp_Type_Limit
3019 any more.
3020 (Ftype_of): Use case_Lisp_Int.
3021 (store_symval_forwarding): Take into account the fact that Ints can
3022 now have more than one tag.
3023 * buffer.c (syms_of_buffer): Use LISP_INT_TAG.
3024 buffer_slot_type_mismatch):
3025 * xfaces.c (face_attr_equal_p):
3026 * print.c (print_object):
3027 * alloc.c (mark_maybe_object, mark_object, survives_gc_p):
3028 Use case_Lisp_Int.
3029
323637a2
EZ
30302009-11-06 Eli Zaretskii <eliz@gnu.org>
3031
7ac65b38
EZ
3032 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce by further 30K.
3033
323637a2
EZ
3034 * alloc.c (make_pure_c_string): Fix last change to avoid compiler
3035 warning.
3036
e511451f
JD
30372009-11-06 Jan Djärv <jan.h.d@swipnet.se>
3038
3039 * gtkutil.c (xg_event_is_for_scrollbar): New function (bug#4870).
3040
3041 * gtkutil.h: Declare xg_event_is_for_scrollbar (bug#4870).
3042
3043 * xterm.c (handle_one_xevent): Call xg_event_is_for_scrollbar for
3044 ButtonPressRelease and MotionNotify (bug#4870).
3045
5e2327cf
DN
30462009-11-06 Dan Nicolaescu <dann@ics.uci.edu>
3047
5adc433e
DN
3048 * keymap.c (syms_of_keymap): Construct exclude_keys in pure memory.
3049
d67b4f80
DN
3050 * xterm.c (syms_of_xterm):
3051 * xselect.c (syms_of_xselect):
3052 * xmenu.c (syms_of_xmenu):
3053 * xfns.c (syms_of_xfns):
3054 * xfaces.c (syms_of_xfaces):
3055 * xdisp.c (syms_of_xdisp):
3056 * window.c (syms_of_window):
3057 * w32fns.c (syms_of_w32fns):
3058 * undo.c (syms_of_undo):
3059 * textprop.c (syms_of_textprop):
3060 * terminal.c (syms_of_terminal):
3061 * syntax.c (syms_of_syntax):
3062 * sound.c (syms_of_sound):
3063 * search.c (syms_of_search):
3064 * print.c (syms_of_print):
3065 * minibuf.c (syms_of_minibuf):
3066 * macros.c (syms_of_macros):
3067 * keymap.c (syms_of_keymap, initial_define_key)
3068 (initial_define_lispy_key):
3069 * keyboard.c (syms_of_keyboard):
3070 * insdel.c (syms_of_insdel):
3071 * image.c (syms_of_image):
3072 * fringe.c (syms_of_fringe):
3073 * frame.c (syms_of_frame):
3074 * fontset.c (syms_of_fontset):
3075 * fns.c (syms_of_fns):
3076 * fns.c (syms_of_fns):
3077 * fileio.c (syms_of_fileio):
3078 * fileio.c (syms_of_fileio):
3079 * eval.c (syms_of_eval):
3080 * doc.c (syms_of_doc):
3081 * dispnew.c (syms_of_display):
3082 * dired.c (syms_of_dired):
3083 * dbusbind.c (syms_of_dbusbind):
3084 * data.c (syms_of_data):
3085 * composite.c (syms_of_composite):
3086 * coding.c (syms_of_coding):
3087 * cmds.c (syms_of_cmds):
3088 * charset.c (define_charset_internal, syms_of_character):
3089 * ccl.c (syms_of_ccl):
3090 * category.c (syms_of_category, init_category_once):
3091 * casetab.c (syms_of_casetab):
3092 * casefiddle.c (syms_of_casefiddle):
3093 * callint.c (syms_of_callint):
3094 * bytecode.c (syms_of_bytecode):
3095 * buffer.c (keys_of_buffer, syms_of_buffer):
3096 * alloc.c (syms_of_alloc):
3097 * process.c (syms_of_process, init_process):
3098 * lread.c (syms_of_lread, init_obarray):
3099 * font.c (build_style_table):
3100 * emacs.c (syms_of_emacs, main): Replace calls to intern with
3101 intern_c_string, calls to make_pure_string with
3102 make_pure_c_string. Use pure_cons instead of Fcons.
3103
5e2327cf
DN
3104 * process.c (socket_options): Make it const.
3105 (set_socket_option, init_process): Use a const pointer.
3106
3107 * lread.c (intern_c_string): New function.
3108 (defvar_kboard, defvar_lisp, defvar_lisp_nopro, defvar_bool)
3109 (defvar_int): Uset it. Make the name const char*.
3110
3111 * lisp.h (defvar_kboard, defvar_lisp, defvar_lisp_nopro, defvar_bool)
3112 (defvar_int): Update prototypes.
3113 (DEFUN, EXFUN): Support for prototypes is now required.
3114 (intern_c_string): New prototype.
3115 (struct Lisp_Subr): Make symbol_name constant.
3116
3117 * font.c (struct table_entry): Remove unused member. Make NAMES
3118 constant.
3119 (weight_table, slant_table, width_table): Make constant.
3120
3121 * emacs.c (struct standard_args): Make name and longname constant.
3122
3123 * character.h (DEFSYM): Use intern_c_string.
3124
a56eaaef
DN
31252009-11-06 Stefan Monnier <monnier@iro.umontreal.ca>
3126
3127 * alloc.c (make_pure_c_string): New function.
3128
3129 * eval.c (Fautoload): Purecopy all arguments.
3130
f6a07420
KH
31312009-11-05 Kenichi Handa <handa@m17n.org>
3132
3133 * fileio.c (Finsert_file_contents): Be sure set coding-system of
3134 the buffer in case of replace.
3135
5d28d4b1
DN
31362009-11-04 Dan Nicolaescu <dann@ics.uci.edu>
3137
3138 * puresize.h (BASE_PURESIZE): Increase to 1620000.
3139
b349d111
SM
31402009-11-03 Stefan Monnier <monnier@iro.umontreal.ca>
3141
d528b1ce
SM
3142 * editfns.c (save_restriction_restore): Update the (pt/begv/vz)_markers
3143 when applicable (bug#4851).
3144
b349d111
SM
3145 * lisp.h: Make USE_LSB_TAG work with USE_LISP_UNION_TYPE.
3146 (P_): Support for prototypes is now required.
3147
c38eb027
CY
31482009-10-31 Chong Yidong <cyd@stupidchicken.com>
3149
3150 * frame.c (Fmake_frame_invisible, Fframe_visible_p): Doc fix
3151 (Bug#4827).
3152
0405f8d9
EZ
31532009-10-30 Eli Zaretskii <eliz@gnu.org>
3154
d528b1ce 3155 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Redefine to waste less pure space.
0405f8d9 3156
ca0a881a
DN
31572009-10-30 Dan Nicolaescu <dann@ics.uci.edu>
3158
3159 * puresize.h (BASE_PURESIZE): Increase to 1470000.
3160
d528b1ce
SM
3161 * lread.c (Fload): Purecopy the file name when building
3162 Vpreloaded_file_list.
ca0a881a 3163
47e0e0e4
JR
31642009-10-29 Jason Rumney <jasonr@wanchan.jasonrumney.net>
3165
3166 * w32fns.c (syms_of_w32fns): Change default value of
3167 w32-scroll-lock-modifier to nil. (Bug#2827)
3168
057bce6f
JB
31692009-10-26 Juanma Barranquero <lekktu@gmail.com>
3170
782a943e 3171 * minibuf.c (Fall_completions): Fix typos in docstring.
057bce6f 3172
242bc74c
AS
31732009-10-26 Andreas Schwab <schwab@redhat.com>
3174
3175 * puresize.h (PURESIZE_RATIO): Increase back to 10/6.
3176
522d013a
JB
31772009-10-26 Juanma Barranquero <lekktu@gmail.com>
3178
3179 * window.c (grow_mini_window): Comment out "delta >= 0" assertion.
3180 For delta < 0, skip check that only makes sense when the mini-window
3181 is going to be enlarged. (Bug#4534)
3182
18060980
CY
31832009-10-25 Chong Yidong <cyd@stupidchicken.com>
3184
3185 * keyboard.c (read_char_x_menu_prompt): Don't demand a prompt
3186 string in menu maps (Bug#4471).
3187
fec8f0fe
CY
31882009-10-24 Chong Yidong <cyd@stupidchicken.com>
3189
3190 * nsfns.m (ns_set_name, ns_set_name_as_filename): Don't call
3191 FRAME_NS_VIEW on terminal frames (Bug#4765).
3192
10d66ec0
AS
31932009-10-24 Andreas Schwab <schwab@linux-m68k.org>
3194
1cae01f7
AS
3195 * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_INTnn and
3196 DBUS_TYPE_UINTnn separately to get proper sign extension.
3197
58a12889
AS
3198 * dired.c (Ffile_attributes): Simplify now that FIXNUM_OVERFLOW_P
3199 can properly handle unsigned types.
d528b1ce 3200 (make_uid, make_gid): Remove.
58a12889 3201
987c9327
AS
3202 * lisp.h (FIXNUM_OVERFLOW_P): Fix last change to handle unsigned
3203 types again.
3204
522d013a 3205 * sysdep.c (procfs_ttyname): Fix sprintf format to match argument type.
10d66ec0
AS
3206 (system_process_attributes): Likewise.
3207
905a9ed3
DN
32082009-10-24 Dan Nicolaescu <dann@ics.uci.edu>
3209
3210 * keymap.c (Fmake_sparse_keymap): Purecopy the name.
3211
3212 * eval.c (Fautoload): Purecopy the filename. Simplify.
3213
3214 * category.c (Fdefine_category): Purecopy docstring.
3215
a599b3e8
AS
32162009-10-23 Andreas Schwab <schwab@linux-m68k.org>
3217
7b792fc9
AS
3218 * lisp.h (FIXNUM_OVERFLOW_P): Remove cast to avoid overflow.
3219
a599b3e8
AS
3220 * puresize.h (PURESIZE_RATIO): Decrease to 11/7.
3221
b35ac83e
CY
32222009-10-23 Chong Yidong <cyd@stupidchicken.com>
3223
3224 * window.c (Fwindow_edges, Fwindow_pixel_edges)
3225 (Fwindow_inside_edges, Fwindow_inside_pixel_edges): Doc fix
3226 (Bug#4775).
3227
e8903e00
SM
32282009-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
3229
3230 * fileio.c (syms_of_fileio): Initialize Vdirectory_sep_char.
3231 (init_fileio_once):
3232 * lisp.h (init_fileio_once): Remove.
3233 * emacs.c (main): Don't call init_fileio_once.
3234
8f43cbf3
DN
32352009-10-23 Dan Nicolaescu <dann@ics.uci.edu>
3236
3237 * puresize.h (BASE_PURESIZE): Increase to 1430000.
3238
26898943
AS
32392009-10-21 Andreas Schwab <schwab@linux-m68k.org>
3240
3241 * doprnt.c (doprnt): Fix overflow check.
3242
5c646d5a
JD
32432009-10-21 Jan Djärv <jan.h.d@swipnet.se>
3244
3132a7ea
JD
3245 * xterm.c (x_term_init): Remove XSynchronize call done for debugging.
3246
5c646d5a
JD
3247 * xterm.h (x_wait_for_event): Declare it.
3248
3249 * xterm.c (pending_event_wait): New variable.
3250 (handle_one_xevent): Set pending_event_wait.eventtype to 0 if we
3251 see pending_event_wait.eventtype.
3252 (handle_one_xevent): Don't change gravity when parent changes.
d528b1ce
SM
3253 (x_new_font): Call change_frame_size with new rows/columns before we
3254 try to resize the frame.
5c646d5a 3255 (x_wait_for_event): New function.
d528b1ce
SM
3256 (x_set_window_size_1): Don't change gravity unless change_gravity
3257 is set.
5c646d5a
JD
3258 Call XResizeWindow with FRAME_OUTER_WINDOW. If we are visible,
3259 don't change frame size, instead wait for the ConfigureNotify.
3260 (x_set_window_size): Call x_set_window_size_1 for USE_X_TOOLKIT also.
3261 (x_wm_set_size_hint): Remove ifdefs for USE_X_TOOLKIT.
3262 (x_initialize): Initialize pending_event_wait.
3263
3264 * xmenu.c (set_frame_menubar): Add internal border width to menu bar
3265 size.
3266
3267 * widget.c (EmacsFrameSetValues): Add comment.
3268 (EmacsFrameSetCharSize): Just call x_set_window_size.
3269
3270 * gtkutil.c (xg_frame_set_char_size): Flush events and call
3271 x_wait_for_event.
d528b1ce 3272 (flush_and_sync): Remove again.
5c646d5a
JD
3273 (xg_get_font_name): Suggest monospace if no previous font is known.
3274
e9c1637d
SM
32752009-10-20 Stefan Monnier <monnier@iro.umontreal.ca>
3276
3277 * character.c (char_resolve_modifier_mask): Don't resolve meta to the
46be764e 3278 8th bit, since that only made sense in the ASCII world (bug#4751).
e9c1637d 3279
5a72cccb
YM
32802009-10-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3281
3282 * xterm.c (XTread_socket) [!USE_GTK && HAVE_X_I18N]: Don't quit
3283 processing pending events when event is filtered for input method.
ab04798f 3284 (Bug#3681)
5a72cccb 3285
2629aa37
JB
32862009-10-20 Juanma Barranquero <lekktu@gmail.com>
3287
3288 * fns.c: Add #endif accidentally removed in previous change.
3289
c3417a74
DN
32902009-10-19 Dan Nicolaescu <dann@ics.uci.edu>
3291
3292 * fns.c: Remove code for unsupported system: MAC_OS.
3293 * image.c: Likewise. Include setjmp.h.
3294
9685cef2
JD
32952009-10-19 Jan Djärv <jan.h.d@swipnet.se>
3296
3297 * xterm.c (x_create_toolkit_scroll_bar): Don't allocate color for
3298 pixel -1 (bug #4742).
3299
d7306fe6
DN
33002009-10-19 Dan Nicolaescu <dann@ics.uci.edu>
3301
019d2c4c
DN
3302 * process.c (create_pty): Remove conditionals for no longer
3303 supported systems: UNIPLUS and RTU.
3304
ee6bacd4
DN
3305 * xterm.c:
3306 * xfns.c: Remove always true condition: XtSpecificationRelease >= 5.
3307
d7306fe6
DN
3308 * alloc.c: Do not define struct catchtag.
3309 * eval.c: Move struct catchtag definition ...
3310 * lisp.h: ... here.
3311
3312 * image.c: Move png.h #include earlier to avoid warnings.
3313
3314 * xterm.c:
3315 * xsmfns.c:
3316 * xselect.c:
3317 * xrdb.c:
3318 * xmenu.c:
3319 * xftfont.c:
3320 * xfont.c:
3321 * xfns.c:
3322 * xfaces.c:
3323 * xdisp.c:
3324 * window.c:
3325 * widget.c:
3326 * w32xfns.c:
3327 * w32uniscribe.c:
3328 * w32term.c:
3329 * w32select.c:
3330 * w32reg.c:
3331 * w32proc.c:
3332 * w32menu.c:
3333 * w32inevt.c:
3334 * w32heap.c:
3335 * w32font.c:
3336 * w32fns.c:
3337 * w32console.c:
3338 * w32.c:
3339 * w16select.c:
3340 * vm-limit.c:
3341 * unexsol.c:
3342 * unexec.c:
3343 * unexcw.c:
3344 * unexaix.c:
3345 * undo.c:
3346 * tparam.c:
3347 * textprop.c:
3348 * terminfo.c:
3349 * terminal.c:
3350 * termcap.c:
3351 * term.c:
3352 * syntax.c:
3353 * sound.c:
3354 * sheap.c:
3355 * search.c:
3356 * scroll.c:
3357 * region-cache.c:
3358 * regex.c:
3359 * ralloc.c:
3360 * process.c:
3361 * print.c:
b024548b
DN
3362 * nsterm.m:
3363 * nsselect.m:
3364 * nsmenu.m:
3365 * nsimage.m:
3366 * nsfont.m:
3367 * nsfns.m:
d7306fe6
DN
3368 * msdos.c:
3369 * minibuf.c:
3370 * menu.c:
3371 * marker.c:
3372 * macros.c:
3373 * keymap.c:
3374 * keyboard.c:
3375 * intervals.c:
3376 * insdel.c:
3377 * indent.c:
3378 * gtkutil.c:
3379 * ftxfont.c:
3380 * ftfont.c:
3381 * fringe.c:
3382 * frame.c:
3383 * fontset.c:
3384 * font.c:
3385 * fns.c:
3386 * floatfns.c:
3387 * filelock.c:
3388 * fileio.c:
3389 * emacs.c:
3390 * editfns.c:
3391 * dosfns.c:
3392 * doprnt.c:
3393 * doc.c:
3394 * dispnew.c:
3395 * dired.c:
3396 * dbusbind.c:
3397 * data.c:
3398 * composite.c:
3399 * coding.c:
3400 * cmds.c:
3401 * cm.c:
3402 * chartab.c:
3403 * charset.c:
3404 * character.c:
3405 * ccl.c:
3406 * category.c:
3407 * casetab.c:
3408 * casefiddle.c:
3409 * callproc.c:
3410 * callint.c:
3411 * bytecode.c:
3412 * buffer.c:
3413 * atimer.c: Include setjmp.h. (Bug#4643)
3414
fd5f21e6
SM
34152009-10-18 Stefan Monnier <monnier@iro.umontreal.ca>
3416
4c0354d7
SM
3417 Remove leftover table unibyte_to_multibyte_table.
3418 * character.c (unibyte_to_multibyte_table): Remove.
3419 (Funibyte_char_to_multibyte): Use MAKE_CHAR_MULTIBYTE.
3420 * charset.c (init_charset_once): Don't init unibyte_to_multibyte_table.
3421 * character.h (UNIBYTE_TO_CHAR): New macro.
3422 (MAKE_CHAR_MULTIBYTE): Use it.
3423 (unibyte_to_multibyte_table, unibyte_char_to_multibyte): Remove.
3424 * xdisp.c (get_next_display_element): USE ASCII_CHAR_P.
3425 (message_dolog, set_message_1):
3426 * search.c (Freplace_match):
3427 * editfns.c (Fcompare_buffer_substrings):
3428 * fns.c (Fcompare_strings): Use MAKE_CHAR_MULTIBYTE.
3429 (concat):
3430 * insdel.c (copy_text, count_size_as_multibyte):
3431 Use ASCII_CHAR_P and BYTE8_TO_CHAR.
3432 * term.c (produce_glyphs):
3433 * syntax.c (skip_chars): Use BYTE8_TO_CHAR.
3434 * regex.c (RE_CHAR_TO_MULTIBYTE):
3435 * cmds.c (internal_self_insert):
3436 * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use UNIBYTE_TO_CHAR.
3437
fd5f21e6
SM
3438 * cmds.c (internal_self_insert): `c' is already in "multibyte" form.
3439
4418646e
DN
34402009-10-17 Dan Nicolaescu <dann@ics.uci.edu>
3441
3442 * puresize.h (BASE_PURESIZE): Increase to 1310000.
3443
35f5c1d2
JB
34442009-10-16 Juanma Barranquero <lekktu@gmail.com>
3445
3446 * buffer.c (Fbuffer_name): Doc fix. (Bug#4728)
3447
a0cd8f6b
AR
34482009-10-15 Adrian Robert <Adrian.B.Robert@gmail.com>
3449
3450 * nsterm.h (NS_HAVE_NSINTEGER): Back out and augment with CGFloat,
3451 still needed under Tiger.
3452
3453 * nsterm.m (EmacsView-conversationIdentifier): Arg is long.
3454
3455 * m/amdx86-64.h: Don't set LIB_STANDARD and START_FILES under
3456 __Apple__.
3457
3458 * m/intel386.h: Remove DARWIN_OS/_LP64 special case.
3459
01a8d3fa
KH
34602009-10-15 Kenichi Handa <handa@m17n.org>
3461
3462 * print.c (print_object): Escape a symbol like "2E10" too.
3463
bf6c75c9 34642009-10-11 Adrian Robert <Adrian.B.Robert@gmail.com>
6e4780c5
JB
3465
3466 Cleanups and changes for 64-bit compile under Snow Leopard.
3467 Based on suggestions by Erik Charlebois.
bf6c75c9
AR
3468
3469 * nsfns.m (xw-color-values): Use CGFloat where appropriate.
3470
c5959062 3471 * nsfont.m (ns_char_width): Replace deprecated call.
bf6c75c9
AR
3472 (ns_findfonts, nsfont_list_family): Use long format in printf, and
3473 cast argument.
3474 (nsfont_open): Use ns_char_width() everywhere.
d528b1ce 3475 (ns_uni_to_glyphs, NSGlyphStorage): Use NS[U]Integer where appropriate.
bf6c75c9
AR
3476
3477 * nsgui.h (NSPoint, NSSize) [!__OBJC__]: Define and use CGFloat.
3478
3479 * nsimage.m (EmacsImage-setXBMColor:,-getPixelAtX:Y:): Use CGFloat
3480 where appropriate.
3481
3482 * nsmenu.m (EmacsMenu-addItemWithWidgetValue:): Use NSInteger
3483 where appropriate.
6e4780c5
JB
3484 (EmacsToolbar-addDisplayItemWithImage:idx:helpText:enabled:):
3485 Use stringWithUTF8String.
bf6c75c9
AR
3486 (EmacsDialogPanel-initWithContentRect:styleMask:): Fix signature.
3487
6e4780c5
JB
3488 * nsterm.h (EmacsView, EmacsMenu, EmacsToolbar, EmacsTooltip):
3489 Add formal protocol mention to inheritance.
bf6c75c9
AR
3490 [NS_HAVE_NSINTEGER]: Drop conditional and contents.
3491
6e4780c5
JB
3492 * nsterm.m (ns_color_to_lisp): Use CGFloat where appropriate.
3493 Fix printf format.
bf6c75c9
AR
3494 (ns_query_color): Use CGFloat where appropriate.
3495 (EmacsView<NSTextInput>, EmacsScroller): Fix method signatures.
ac146f82 3496 (EmacsScroller-mouseDown:): Use long format in printf, and cast
bf6c75c9
AR
3497 argument.
3498
3d87f118
AR
3499 * config.in (NS_HAVE_NSINTEGER): Drop.
3500
a95c8102
AR
3501 * dbusbind.c (dbus-method-return-internal)
3502 (dbus-method-error-internal): Use long format in printf, and cast
3503 argument.
3504
3505 * font.c (font_unparse_xlfd, font_unparse_fcname): Use long format
3506 in printf, and cast argument.
3507
6873acca 3508 * process.c (list_processes_1): Use long format in printf, and
a95c8102
AR
3509 cast argument.
3510
9ec6f100
GM
35112009-10-11 Glenn Morris <rgm@gnu.org>
3512
3513 * frame.c (Fframe_pixel_height): Doc fix. (Bug#4535)
3514
5be883cd
JD
35152009-10-08 Jan Djärv <jan.h.d@swipnet.se>
3516
3517 * gtkutil.c (create_menus): Call gtk_widget_set_size_request for
3518 menu bar with a small width so it doesn't enlarge the frame.
3519
d7a39b51
JB
35202009-10-08 Juanma Barranquero <lekktu@gmail.com>
3521
3522 * fontset.c (Fset_fontset_font): Fix typos in error messages.
3523
0c2b6f8e
GM
35242009-10-06 Glenn Morris <rgm@gnu.org>
3525
3526 * Makefile.in (emacs${EXEEXT}): Remove direct dependence on
3527 SOME_MACHINE_LISP (this enters indirectly via DOC).
3528
e02131a2
EZ
35292009-10-05 Eli Zaretskii <eliz@gnu.org>
3530
3531 * dired.c (Ffile_attributes): Doc fix. (Bug#4638)
3532
b4744254
EZ
35332009-10-04 Eli Zaretskii <eliz@gnu.org>
3534
3535 * xdisp.c (syms_of_xdisp) <unibyte-display-via-language-environment>:
3536 Doc fix.
3537
dbf64827
JB
35382009-10-03 Martin Rudalics <rudalics@gmx.at>
3539
3540 * window.c (Fdelete_window): Check WINDOW argument. (Bug#4618)
3541
e9a0aef8
MA
35422009-10-02 Michael Albinus <michael.albinus@gmx.de>
3543
d528b1ce 3544 * lisp.h (Qdelete_directory_internal): Remove, because it is not
e9a0aef8
MA
3545 used anymore outside fileio.c.
3546
3547 * w32fns.c (Fsystem_move_file_to_trash): Use delete-directory.
3548
64eb2b56
JB
35492009-10-01 Juanma Barranquero <lekktu@gmail.com>
3550
3551 * lisp.h (Qdelete_directory_internal):
3552 Declare, instead of Qdelete_directory.
3553
3554 * w32fns.c (Fsystem_move_file_to_trash): Use it.
3555
9d28c33e
SM
35562009-10-01 Stefan Monnier <monnier@iro.umontreal.ca>
3557
3558 * eval.c (Fcalled_interactively_p): Add `kind' argument.
3559
9d8f3bd9
MA
35602009-10-01 Michael Albinus <michael.albinus@gmx.de>
3561
9d28c33e 3562 * fileio.c (Fdelete_directory_internal): Rename from
9d8f3bd9
MA
3563 Fdelete_directory. It is not a command anymore. It has no file
3564 name handler.
3565
9694740b
SM
35662009-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
3567
3568 * xdisp.c (get_next_display_element): Use an enum in last change.
3569
748e162f
KH
35702009-09-28 Kenichi Handa <handa@m17n.org>
3571
9694740b 3572 * xdisp.c (get_next_display_element): Pay attention to
748e162f
KH
3573 unibyte_display_via_language_environment in handling
3574 Vnobreak_char_display.
3575
17efd58d
AR
35762009-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
3577
3578 * nsterm.h (ns_app_name): New extern variable.
3579
3580 * nsterm.m (ns_app_name): New variable.
3581 (ns_term_init): Set and use it.
3582 (ns_term_shutdown): Use it.
3583
3584 * nsmenu.m (ns_update_menubar): Use ns_app_name. Sync with xmenu.c.
3585 (EmacsMenu-clear:, ns_popup_dialog): Use ns_app_name.
3586
3587 * nsfns.m (ns_set_name_iconic, ns_set_name)
3588 (ns_set_name_as_filename, x-create-frame, ns-get-resource)
3589 (ns-set-resource): Use ns_app_name instead of NSProcessInfo call.
3590
9694740b
SM
3591 * menu.c (find_and_return_menu_selection) [HAVE_NS]:
3592 Remove double-casting in client_data comparison.
31c2d412 3593
3208cb35
YM
35942009-09-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3595
3596 * keyboard.c (make_lispy_event): Remember last wheel direction.
3597 (syms_of_keyboard) <wheel_syms>: Compute array size at compile time.
3598
b7d552d6
GM
35992009-09-26 Glenn Morris <rgm@gnu.org>
3600
3601 * Makefile.in (MSDOS_SUPPORT) [MSDOS]: Remove unneeded '/' in
3602 internal.elc. Add term/pc-win.elc.
3603 (WINDOW_SUPPORT) [HAVE_X_WINDOWS]: Add term/common-win.elc and
3604 term/x-win.elc.
3605 (WINNT_SUPPORT) [WINDOWSNT]: Add term/common-win.elc and
3606 term/w32-win.elc.
3607 (NS_SUPPORT): New.
3608 (lisp): Add NS_SUPPORT.
3609 (SOME_MACHINE_LISP): Add term/w32-win.elc and emacs-lisp/easymenu.elc.
3610
4ff670a8
DR
36112009-09-25 David Reitter <david.reitter@gmail.com>
3612
3613 * nsmenu.m (EmacsMenu-clear): Recognize application menu
3614 on Mac OS X 10.6+ (bug#4513).
3615
feabfb6c
JB
36162009-09-24 Juanma Barranquero <lekktu@gmail.com>
3617
3618 * frame.c (xrdb_get_resource): Return nil for empty string resources;
d528b1ce
SM
3619 some parts of Emacs code (like font selection) don't grok them.
3620 See http://lists.gnu.org/archive/html/emacs-devel/2009-09/msg00528.html
feabfb6c 3621
de59072a
AS
36222009-09-24 Andreas Schwab <schwab@redhat.com>
3623
3624 * coding.c (decode_coding_iso_2022): Fix operator precedence.
3625
a489517b
JB
36262009-09-24 Juanma Barranquero <lekktu@gmail.com>
3627
3628 * dired.c (Fdirectory_files): Fix typo in docstring.
3629
0592970c
AR
36302009-09-23 Adrian Robert <Adrian.B.Robert@gmail.com>
3631
3632 * nsterm.m (EV_TIMESTAMP, x_set_window_size)
3633 (EmacsApp-application:openFiles:): Remove GNUstep conditionals.
3634 (EmacsScroller-setPosition:portion:whole:): Remove -display call
3635 under GNUstep.
3636 (EmacsView-initFrameFromEmacs:): Set autoresizing mask.
3637
3638 * nsfont.m (ns_glyph_metrics): Remove GNUstep conditional for
3639 glyph advancement.
3640
48e8a88b
AR
36412009-09-22 Adrian Robert <Adrian.B.Robert@gmail.com>
3642
3643 * nsterm.m (CGContextSetFontRenderingMode): Drop declaration.
b3aac06a 3644 (EmacsScroller-mouseDown:): Use SCROLL_BAR_FIRST_DELAY.
48e8a88b
AR
3645
3646 * nsmenu.m (EmacsMenu-menuNeedsUpdate): Ignore if frame has been
3647 deleted (bug #4492).
3648
e14f0a78
AR
3649 * nsfont.m (Vns_reg_to_script): New lisp variable.
3650 (syms_of_nsfont): Declare it.
3651 (ns_registry_to_script): New function.
3652 (ns_get_req_script): Call it.
3653 (ns_findfonts): Don't give up on non-unicode registry.
3654
3655 * font.c (DEFAULT_ENCODING) [HAVE_NS]: Remove special case.
3656
5b650faa
SM
36572009-09-20 Tom Tromey <tromey@redhat.com>
3658
3659 * eval.c (find_handler_clause): Make stack-trace-on-error work in
3660 batch mode (bug#4228).
3661
a489517b 36622009-09-18 Rob Christie <robchristie@gmail.com> (tiny change)
0bae4e09
AR
3663
3664 * nsmenu.m (EmacsMenu-parseKeyEquiv:): Parse key equivalent more
a489517b 3665 carefully. (Bug #4339)
0bae4e09 3666
fcfe06f3
CY
36672009-09-18 Chong Yidong <cyd@stupidchicken.com>
3668
d798ba87 3669 * syntax.c (Fchar_syntax): Minor doc fix (Bug#4400).
fcfe06f3 3670
31642728
AR
36712009-09-18 Adrian Robert <Adrian.B.Robert@gmail.com>
3672
3673 * emacs.c (inhibit_x_resources): Update doc string for NS.
3674 (main) [HAVE_NS]: Don't process --no-init-file option. Remove
cff11156 3675 legacy code for -NXHost. Fix error printf in daemon case.
31642728
AR
3676
3677 * nsterm.h (ns_no_defaults): Remove.
3678
3679 * nsterm.m (ns_no_defaults): Remove.
3680 (ns_term_init): Switch ns_no_defaults -> inhibit_x_resources.
3681 (ns_use_qd_smoothing): Remove legacy variable.
6516d10a
AR
3682 (EmacsView-windowShouldZoom:): Set frame left_pos, top_pos and
3683 don't update the NSWindow itself.
3684 (EmacsView-windowWillUseStandardFrame:defaultFrame:): Improve
a489517b 3685 state detection and store user rect ourselves. (Bug #3581)
31642728
AR
3686
3687 * nsfont.m (nsfont_draw) [NS_IMPL_COCOA]: Don't use
3688 ns_use_qd_smoothing.
3689
3690 * nsfns.m (x_get_string_resource): Ape just-previous changes to other
3691 platform versions. Drop support for emacs-20-style face specs.
8aad0aea 3692 (x-close-connection): Drop PSFlush() under OS X.
a489517b 3693 (x-focus-frame): Activate the app first. (Bug #4180)
31642728 3694
8686ac71
JB
36952009-09-17 Juanma Barranquero <lekktu@gmail.com>
3696
3697 * emacs.c (inhibit_x_resources): New variable.
3698 (main) [HAVE_NS]: Don't process --quick command line option.
3699 (syms_of_emacs) <inhibit-x-resources>: DEFVAR_BOOL it.
3700
3701 * lisp.h (inhibit_x_resources): Declare it extern.
3702
3703 * w32reg.c (x_get_string_resource):
3704 * xrdb.c (x_get_string_resource): Obey inhibit_x_resources.
3705
e227ba05
EZ
37062009-09-17 Eli Zaretskii <eliz@gnu.org>
3707
362654a6
JB
3708 * Makefile.in (MSDOS_SUPPORT, SOME_MACHINE_LISP):
3709 Add lisp/term/internal.elc.
e227ba05 3710
742d40e8
SM
37112009-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
3712
3713 * frame.c (x_get_resource_string): Re-add for non-toolkit builds
3714 (bug#4461).
3715
005bd5a2
DN
37162009-09-17 Dan Nicolaescu <dann@ics.uci.edu>
3717
3718 * puresize.h (BASE_PURESIZE): Increase to 1290000.
3719
3720 * Makefile.in (OTHER_FILES): Define using autoconf, not cpp.
3721 (OBJECTS_MACHINE): Remove, unused.
3722
f9af9719
SM
37232009-09-16 Stefan Monnier <monnier@iro.umontreal.ca>
3724
3725 * frame.c (x_get_resource_string): Remove unused.
3726
0307c7d2
JD
37272009-09-15 Jan Djärv <jan.h.d@swipnet.se>
3728
3729 * xterm.c (x_new_font): Call change_frame_size before calling
3730 x_set_window_size, in case frame size won't change.
3731
3732 * frame.c (x_set_font): Remove dead code.
3733
428b13d6
SM
37342009-09-15 Stefan Monnier <monnier@iro.umontreal.ca>
3735
3736 * lread.c (Fload): Also run do-after-load-evaluation while dumping.
3737
5766c380
SM
37382009-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
3739
3740 * lread.c (Fload): Don't output a message after loading an obsolete
3741 package any more (done in Lisp now).
3742
2fd0161b
CY
37432009-09-12 Chong Yidong <cyd@stupidchicken.com>
3744
3745 * fns.c (syms_of_fns): Doc fix (Bug#4227).
3746
bc5e75b6
SM
37472009-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
3748
3749 * keymap.c (Fwhere_is_internal): Use nconc2.
3750
c31c985e
AM
37512009-09-11 Alan Mackenzie <acm@muc.de>
3752
3753 * dispnew.c (Fsend_string_to_terminal): Amend doc string to cover
3754 batch mode.
3755
78012bd2
AS
37562009-09-11 Andreas Schwab <schwab@linux-m68k.org>
3757
3758 * xdisp.c (display_mode_element): Detect cycles.
3759
9d889332
SM
37602009-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
3761
3762 * keymap.c (where_is_internal): Don't erroneously return nil right after
3763 filling the cache.
3764 (where_is_internal_1): Fix up typo.
3765
7ab5d780
GM
37662009-09-11 Glenn Morris <rgm@gnu.org>
3767
3768 * frame.c (Fx_parse_geometry): Unify the X and NS versions so that they
3769 share a common doc-string.
3770
5238a749
SM
37712009-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
3772
66d77eda
SM
3773 * keymap.c (get_keymap): Return the actual keymap symbol rather than
3774 t for autoloaded keymaps when autoloading is not allowed (bug#4393).
3775
5238a749
SM
3776 * keymap.c (QCadvertised_binding): New constant.
3777 (syms_of_keymap): Initialize it.
3778 (Fwhere_is_internal): Try and use bindings from :advertised-binding
3779 if applicable.
3780
19f48442
SM
37812009-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
3782
50d4ba39
SM
3783 * keyboard.c (Qmenu_alias, Vdefine_key_rebound_commands): Remove.
3784 (parse_menu_item): Streamline since bindings are recomputed all the
3785 time anyway. Don't bother checking Vdefine_key_rebound_commands any
3786 more and don't support lmenu's menu-alias any more either.
3787
a88a5372
SM
3788 * keymap.c (where_is_internal_data): Make noindirect a boolean.
3789 (where_is_internal): Strip it down to only traverse the keymaps.
3790 Move the cache handling from Fwhere_is_internal to here.
3791 (Fwhere_is_internal): Move the handling of remapping and the choice of
3792 the best binding from where_is_internal to here.
3793 Unify the cached/noncached paths, so remapping is also handled
3794 correctly when the cache is used, and so the cache can be used to
3795 speed up remap-handling when applicable.
3796 Give preference to non-remapped bindings.
3797 * doc.c (Fsubstitute_command_keys): Let Fwhere_is_internal's prefer
3798 non-remapped bindings.
3799 * keyboard.c (parse_menu_item): Let Fwhere_is_internal handle
3800 command remapping.
3801
19f48442
SM
3802 * xdisp.c (display_mode_element): Move list length limit from 50 to
3803 5000 (see thread starting with <xbaik5174uqu.fsf@cam.ac.uk>).
3804
599498c3 38052009-09-09 Adrian Robert <Adrian.B.Robert@gmail.com>
c1905ca3
AR
3806
3807 * nsfont.m (ns_get_family): Don't force first letter to uppercase.
3808
f9b7b5ac
SM
38092009-09-09 Stefan Monnier <monnier@iro.umontreal.ca>
3810
a53af587
JB
3811 * xdisp.c (Vtruncate_partial_width_windows): Improve docstring.
3812 (Bug#4334)
3813
f9b7b5ac
SM
3814 * keymap.c (where_is_internal): Filter out shadowed remappings.
3815 Assume that where_is_internal returns unshadowed bindings to simplify
3816 the code and get rid of the gotos. Use ASIZE.
3817
04f4b72d
JD
38182009-09-04 Jan Djärv <jan.h.d@swipnet.se>
3819
4da146f2
JD
3820 * xterm.c (x_focus_changed): If we get a focusout and pointer
3821 is invisible, make it visible.
3822
04f4b72d
JD
3823 * xterm.h: Remove condition for declaration of
3824 x_*_window_to_frame.
3825
7cef7ce3
SM
38262009-09-03 Stefan Monnier <monnier@iro.umontreal.ca>
3827
3828 * dispnew.c (Fsend_string_to_terminal): Make it work again on the
3829 initial terminal as well.
3830
a54fa5b7
JD
38312009-09-02 Jan Djärv <jan.h.d@swipnet.se>
3832
3833 * xterm.h: Rename x_non_menubar_window_to_frame to
7cef7ce3 3834 x_menubar_window_to_frame.
a54fa5b7 3835
50426a04 3836 * xterm.c: Remove declarations also in xterm.h.
a54fa5b7
JD
3837 (XTmouse_position): Do not return valid positions
3838 for clicks in the menubar and the toolbar for Gtk+.
3839
3840 * xfns.c (x_any_window_to_frame): Assume less about Gtk+ internals,
3841 if the widget for the event has the same top level as a frame,
3842 return the frame.
3843 (x_menubar_window_to_frame): Detect menu bar even with Gtk+
3844 internal windows, bug #4122.
3845 (x_non_menubar_window_to_frame): Remove.
3846
5a021dd0
GM
38472009-09-02 Glenn Morris <rgm@gnu.org>
3848
3849 * buffer.c (default-major-mode): Move most of the doc from here...
3850 (major-mode): ... to here.
3851
548fe2f3
NR
38522009-08-30 Nick Roberts <nickrob@snap.net.nz>
3853
3854 * process.c (wait_reading_process_output): Keep the descriptor
3855 when pty is used by a non-child process, e.g., in I/O buffer of
3856 GDB this allows inferior to be restarted.
3857
e0840eef
EZ
38582009-08-29 Eli Zaretskii <eliz@gnu.org>
3859
3860 * xdisp.c (redisplay_internal): Remove redundant test and collapse
3861 both branches into one.
3862
82e98df4
SM
38632009-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
3864
3865 * emacs.c (USAGE1): Remove --(no-)multibyte, --(no-)unibyte.
3866 (main): Use enable-multibyte-characters rather than
3867 default-enable-multibyte-characters. Output a warning message when
3868 running a unibyte session.
3869
890617cb
YM
38702009-08-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3871
3872 * unexmacosx.c (print_load_command_name) [LC_DYLD_INFO]: Add cases
3873 LC_DYLD_INFO and LC_DYLD_INFO_ONLY.
3874 (copy_data_segment): Also copy __program_vars section.
3875 (copy_dyld_info) [LC_DYLD_INFO]: New function.
3876 (dump_it) [LC_DYLD_INFO]: Use it.
3877
3878 * s/darwin.h [temacs]: Undef HAVE_POSIX_MEMALIGN.
3879
e7adeadc
EZ
38802009-08-28 Eli Zaretskii <eliz@gnu.org>
3881
3882 * makefile.w32-in ($(BLD)/doc.$(O)): Depend on buildobj.h, not on
3883 $(SRC)/buildobj.h.
3884 (buildobj.h): Renamed from $(SRC)/buildobj.h.
3885 (make-buildobj-CMD, make-buildobj-SH): Create buildobj.h, not
3886 $(SRC)/buildobj.h.
3887 (clean): Add buildobj.h.
3888
3ed8bbdc
TZ
38892009-08-28 Teodor Zlatanov <tzz@lifelogs.com>
3890
3891 * print.c (print_object): Set escapeflag to 1 when printing
3892 hashtable keys and values.
3893
155a6764
SM
38942009-08-27 Stefan Monnier <monnier@iro.umontreal.ca>
3895
3896 * lread.c (read_integer): Use doubles (and potentially return a float
3897 number) as we do in string-to-number.
3898 (read1): Use strtol to read integers, signal errors on strtol's
3899 overflow and use floats if strtol's output is too large for
3900 Elisp integers.
3901
877610de
EZ
39022009-08-27 Eli Zaretskii <eliz@gnu.org>
3903
3904 * makefile.w32-in ($(SRC)/buildobj.h, make-buildobj-CMD)
3905 (make-buildobj-SH): Fix last change.
3906 (SRC): Move to before where it's first used.
3907
ef73e7be
KH
39082009-08-27 Kenichi Handa <handa@m17n.org>
3909
550c8289
KH
3910 * process.c (send_process): Use encode_coding_object instead of
3911 encode_coding_string to perform eol-conversion even if the string
3912 is unibyte.
3913
60afa08d
KH
3914 * coding.c (encode_coding_utf_16): Fix checking of a Unicode
3915 character.
3916
ef73e7be 3917 * cmds.c (Fself_insert_command): Avoid unnecessay
8a0b709a 3918 unibyte->multibyte conversion. (Bug#4240) (Bug#4037)
ef73e7be 3919
7b3a82d7
DN
39202009-08-26 Dan Nicolaescu <dann@ics.uci.edu>
3921
5654bf63
DN
3922 * callproc.c (Fcall_process): Remove always true #if.
3923
7b3a82d7
DN
3924 * lisp.h: Replace #if 0 code for checking with text pointing to
3925 the --enable-checking configure flag.
3926
3927 * emacs.c (main): Mention the --enable-profiling configure flag
3928 instead of using CFLAGS.
3929
878bde49
KR
39302009-08-26 Ken Raeburn <raeburn@raeburn.org>
3931
3932 * Makefile.in (buildobj.h): New target.
3933 (doc.o): Depend on it.
3934 (temacs${EXEEXT}): Don't generate buildobj.lst.
3935 (mostlyclean): Delete buildobj.h, not buildobj.lst.
3936 * makefile.w32-in ($(SRC)/buildobj.h): New target.
3937 ($(BLD)/doc.$(O)): Depend on it.
3938 (make-buildobj-CMD, make-buildobj-SH): New targets. (Syntax help
3939 provided by Eli Zaretskii.)
3940 ($(TEMACS)): Don't generate buildobj.lst.
3941 * doc.c: Include buildobj.h.
3942 (buildobj): New static variable.
3943 (Fsnarf_documentation): Use it, instead of opening and reading
3944 buildobj.lst.
3945
1574224c
MA
39462009-08-25 Michael Albinus <michael.albinus@gmx.de>
3947
3948 * dbusbind.c (Fdbus_call_method)
3949 (Fdbus_call_method_asynchronously): Use English numeric format for
3950 timeout values in doc string.
3951
d9da2f45
KH
39522009-08-25 Kenichi Handa <handa@m17n.org>
3953
ef73e7be
KH
3954 * alloc.c (mark_char_table): New function.
3955 (mark_object): Use mark_char_table for a char-table.
3956
d9da2f45
KH
3957 * lisp.h (CHAR_TABLE_REF_ASCII): New macro.
3958 (CHAR_TABLE_REF): Use it.
3959
c8edcc01
KR
39602009-08-23 Ken Raeburn <raeburn@raeburn.org>
3961
3962 * Makefile.in (emacs${EXEEXT}) [CANNOT_DUMP]: Set EMACSLOADPATH
3963 before invoking the newly build emacs to check for load-path
3964 shadowing.
3965
7763401b
GM
39662009-08-22 Glenn Morris <rgm@gnu.org>
3967
3968 * Makefile.in (bootstrap_exe): New variable.
3969 (.el.elc, ${lispsource}loaddefs.el, bootstrap-emacs${EXEEXT}):
3970 Use ${bootstrap_exe}.
3971
729eadda
EZ
39722009-08-22 Eli Zaretskii <eliz@gnu.org>
3973
3974 * coding.h (encode_coding_string): Don't encode unibyte strings.
3975 (Bug#4047)
3976
eb4c6ace
MA
39772009-08-22 Michael Albinus <michael.albinus@gmx.de>
3978
3979 * config.in (HAVE_DBUS_WATCH_GET_UNIX_FD): Add.
3980
3981 * dbusbind.c (XD_WITH_DBUS_WATCH_GET_UNIX_FD): Remove. It was
3982 intended as hotfix only.
3983 (xd_add_watch, xd_remove_watch): Use HAVE_DBUS_WATCH_GET_UNIX_FD.
3984
36e34d1b
AR
39852009-08-21 Adrian Robert <Adrian.B.Robert@gmail.com>
3986
3987 * nsterm.m (ns_get_color): Update documentation properly for last
3988 change, and clean up loose ends in the code left by it. Fix
3989 longstanding bug with 16-bit hex parsing, and add support for
3990 yet another X11 format (rgb:r/g/b) for compatibility.
3991 * nsfns.m (EmacsDialogPanel-runDialogAt): Add declaration of
3992 timer_check() to avoid crash on Leopard/PPC. Bug #2154.
3993
f983eb8a
SM
39942009-08-21 Stefan Monnier <monnier@iro.umontreal.ca>
3995
3996 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 500 for js.el.
3997
3f56d3c6
MA
39982009-08-20 Michael Albinus <michael.albinus@gmx.de>
3999
4000 * dbusbind.c (XD_WITH_DBUS_WATCH_GET_UNIX_FD): New macro.
4001 (xd_add_watch, xd_remove_watch): Use it. Print debug messages.
4002 (xd_initialize, xd_pending_messages): Check, whether
4003 $DBUS_SESSION_BUS_ADDRESS is set.
4004
fb641d68
YM
40052009-08-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4006
4007 * nsfns.m (Fxw_color_values): Return 3-element list. Doc fix.
4008
4009 * nsterm.m (ns_get_color): Remove incompatible color formats again.
4010
cf59a374
GM
40112009-08-20 Glenn Morris <rgm@gnu.org>
4012
4013 * emacs.c (system-type): Doc fix.
4014
1373f3be
SM
40152009-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
4016
4017 * keyboard.c (syms_of_keyboard): Default to 5 buttons, which should be
4018 enough for the most common situations. Avoid SET_SYMBOL_VALUE.
4019
058ed861
MA
40202009-08-18 Michael Albinus <michael.albinus@gmx.de>
4021
1373f3be
SM
4022 * dbusbind.c (xd_add_watch, xd_remove_watch, Fdbus_init_bus):
4023 New functions.
058ed861
MA
4024 (xd_initialize): Revert change from 2009-08-16.
4025
563a866e 40262009-08-18 Kenichi Handa <handa@m17n.org>
5fc05db0
KH
4027
4028 * fontset.c (Ffontset_font): If a nil element is found in a
563a866e 4029 font-group vector, return nil.
5fc05db0 4030
e42bdf01
CY
40312009-08-17 Chong Yidong <cyd@stupidchicken.com>
4032
4033 * process.c (status_notify): Don't perform redisplay.
4034 (Fdelete_process, list_processes_1, process_send_signal):
4035 Expliticly perform redisplay.
4036 (wait_reading_process_output): Always check process status, but
4037 don't perform redisplay unless DO_DISPLAY is non-zero (Bug#2930).
4038
4230ab74
KR
40392009-08-17 Ken Raeburn <raeburn@raeburn.org>
4040
1373f3be 4041 * lisp.h (XFLOAT_DATA): Produce an rvalue by adding 0 to the value.
f601cdf3
KR
4042 (XFLOAT_INIT): New macro for storing a float value.
4043 * alloc.c (make_float, make_pure_float): Use XFLOAT_INIT.
4044 * fns.c (sxhash): Copy out the value of a float in order to
4045 examine its bytes.
4046 * dbusbind.c (xd_append_arg): Likewise.
4047
4230ab74
KR
4048 * emacs.c (main): Don't call syms_of_data twice.
4049
a0645cdd
MA
40502009-08-16 Michael Albinus <michael.albinus@gmx.de>
4051
4052 * dbusbind.c (xd_initialize): Add connection file descriptor to
4053 input_wait_mask, in order to let select() detect, whether a new
4054 message has been arrived.
ca4f31ea 4055 (Fdbus_call_method_asynchronously): Allow nil HANDLER.
a0645cdd 4056
485db0ba
MA
40572009-08-15 Michael Albinus <michael.albinus@gmx.de>
4058
1373f3be
SM
4059 * dbusbind.c (xd_get_dispatch_status, xd_pending_messages):
4060 New functions.
485db0ba
MA
4061
4062 * lisp.h (xd_pending_messages): Declare.
4063
4064 * keyboard.c (readable_events): Call xd_pending_messages.
4065
b5b98ff4
CY
40662009-08-15 Chong Yidong <cyd@stupidchicken.com>
4067
1373f3be 4068 * eval.c (Fcalled_interactively_p, Finteractive_p): Doc fix (Bug#3936).
84b17ab0 4069
f8354c6e
CY
4070 * xdisp.c (pop_it): Don't pop into a display vector (Bug#4131).
4071
b5b98ff4
CY
4072 * buffer.c (set_buffer_internal_1)
4073 (swap_out_buffer_local_variables): Check for unbound local
4074 variables (Bug#4138).
4075
8b9fc636
EZ
40762009-08-14 Eli Zaretskii <eliz@gnu.org>
4077
4078 * process.c (create_pty): Fix last change.
4079
ce959360
CY
40802009-08-13 Chong Yidong <cyd@stupidchicken.com>
4081
4082 * image.c (xbm_read_bitmap_data): New arg inhibit_image_error.
4083 (xbm_load_image): Caller changed.
64b807c9 4084 (xbm_file_p): Avoid signalling an image_error (Bug#4107).
ce959360 4085
c7baf7e9
NR
40862009-08-13 Nick Roberts <nickrob@snap.net.nz>
4087
4088 * process.c (create_pty): New function.
4089 (Fstart_process): Use it to allow Emacs to just associate a pty
4090 with the buffer. See associated change in gdb-mi.el.
4091 (list_processes_1): Deal with no program name.
4092 (start_process_unwind): Use pid == -2 to mean no process.
4093
1ac9108a
SM
40942009-08-12 Stefan Monnier <monnier@iro.umontreal.ca>
4095
4096 * cmds.c (nonundocount): New global variable.
4097 (keys_of_cmds): Initialize it.
4098 (Fself_insert_command): Use it to combine upto 20 sequential chars
4099 into a single undo entry, just like the Qself_insert_command code in
4100 keyboard.c does.
4101 Call frame_make_pointer_invisible, also like the Qself_insert_command
4102 code in keyboard.c does.
4103 * keyboard.c (command_loop_1): Use the new global nonundocount rather
4104 than its own local replacement for it.
4105
e267324c
KR
41062009-08-10 Ken Raeburn <raeburn@raeburn.org>
4107
1ac9108a 4108 * fns.c (concat): Don't re-set string length to its current value.
77437343 4109
1ac9108a
SM
4110 * coding.h (decode_coding_string, encode_coding_string):
4111 Use SBYTES macro.
f0bed503 4112
1ac9108a 4113 * doprnt.c (doprnt_lisp): Delete unused function.
e267324c
KR
4114 (doprnt): Merge with doprnt1, discarding lispstrings code.
4115 * lisp.h (doprnt_lisp): Don't declare.
4116
416e006d
JL
41172009-08-07 Juri Linkov <juri@jurta.org>
4118
4119 * puresize.h (BASE_PURESIZE): Increase to 1270000.
4120
6f7d5780
DN
41212009-08-07 Dan Nicolaescu <dann@ics.uci.edu>
4122
4123 * print.c (syms_of_print): Undo previous change.
4124
f19a0f5b
TZ
41252009-08-05 Teodor Zlatanov <tzz@lifelogs.com>
4126
4127 * lread.c (read1, syms_of_lread): Read hashtables back from the
4128 readable format.
4129
4130 * print.c (print_preprocess, print_object): Print hashtables fully
4131 and readably.
4132 (syms_of_print): Provide 'hashtable-print-readable.
4133
b9173dc2
AR
41342009-08-02 Adrian Robert <Adrian.B.Robert@gmail.com>
4135
4136 * nsfont.m (ns_descriptor_to_entity): Handle case when descriptor has
4137 no family set.
4138 (nsfont_open): Handle case when entity has no family.
4139
1586503c
AR
41402009-07-29 Adrian Robert <Adrian.B.Robert@gmail.com>
4141
4142 * nsfont.m (ns_findfonts): Fix 2009-07-24 change to return only one
4143 element, not a list, for match case.
4144
087048cd
KH
41452009-07-28 Kenichi Handa <handa@m17n.org>
4146
4147 * font.c (font_parse_xlfd): Check DPI and AVGWIDTH properties more
4148 rigidly.
4149
4150 * xfont.c (xfont_list_pattern): Don't ignore the return value of
4151 font_parse_xlfd. Check font properties more rigidly.
4152
780c2506
DN
41532009-07-27 Dan Nicolaescu <dann@ics.uci.edu>
4154
31fd7c5c
JB
4155 * s/netbsd.h (SIGNALS_VIA_CHARACTERS): Remove, already defined in
4156 bsd-common.h.
780c2506 4157
a8c0cc18
KH
41582009-07-27 Kenichi Handa <handa@m17n.org>
4159
4160 * xfaces.c (face_with_height): Call font_clear_prop.
4161
4fbe2306
CY
41622009-07-26 Chong Yidong <cyd@stupidchicken.com>
4163
111d9af3
CY
4164 * dispnew.c (init_display): Use Qx, Qw32, and Qns.
4165
4166 * xterm.c (x_term_init): Use Qx.
4167
4fbe2306
CY
4168 * nsfont.m (nsfont_draw): Revert 2009-07-15 change.
4169
1ac9108a 4170 * nsterm.m (ns_maybe_dumpglyphs_background): Revert 2009-07-15 change.
4fbe2306
CY
4171 (ns_get_color): Revert 2009-07-16 change.
4172
beb0b7f9
EZ
41732009-07-25 Eli Zaretskii <eliz@gnu.org>
4174
4175 * lread.c (syms_of_lread) <force_load_messages>: New variable.
1ac9108a 4176 (Fload): Use it to force load messages, even if NOMESSAGES is non-nil.
beb0b7f9 4177
2baf5e76
KR
41782009-07-25 Ken Raeburn <raeburn@raeburn.org>
4179
1ac9108a
SM
4180 * coding.h (decode_coding_string, encode_coding_string):
4181 Use SCHARS macro.
8890e5f5 4182
2baf5e76 4183 * lread.c: Rewrite 2009-07-21 changes.
1ac9108a 4184 (load_depth): Delete.
2baf5e76
KR
4185 (Qload_in_progress): New variable.
4186 (load_unwind): Don't reference load_depth or load_in_progress.
4187 (Fload): Likewise; specbind Qload_in_progress instead.
4188 (init_lread): Don't initialize load_depth.
4189 (syms_of_lread): Initialize and protect Qload_in_progress.
4190
1395c6f5
AR
41912009-07-24 Adrian Robert <Adrian.B.Robert@gmail.com>
4192
4193 * nsfont.m (ns_findfonts): Correctly return fallback in match case.
4194
4e2f36cf
AR
41952009-07-23 Yavor Doganov <yavor@gnu.org>
4196
4197 * nsfont.m (NSFontDescriptor.h): Explicitly include under GNUstep.
4198
5dd9a6f7
AR
41992009-07-23 Adrian Robert <Adrian.B.Robert@gmail.com>
4200
4201 * nsterm.m (EmacsView-keyUp:): Only act when running under Tiger.
7f6ad209
AR
4202 Bugs 3792, 3720, 2402.
4203 (ns_lookup_indexed_color): Check for bad index.
4204 (ns_index_color): Init unused slot to 0.
4205 (ns_dumpglyphs_box_or_relief): Replace useless xassert with an if().
4206 Bug 3714, possibly 3082.
5dd9a6f7 4207
c902b920
JR
42082009-07-22 Jason Rumney <jasonr@gnu.org>
4209
1ac9108a
SM
4210 * w32fns.c (w32_wnd_proc) [WM_IME_STARTCOMPOSITION]:
4211 Position IME window at cursor (Bug#2570).
c902b920
JR
4212 (w32_wnd_proc) [WM_IME_CHAR]: Release context when finished.
4213 (globals_of_w32fns): Dynamically load functions required above.
4214
4215 * w32term.c (w32_draw_window_cursor): Send message to reposition
4216 any IME window.
4217
090101cf
CY
42182009-07-21 Chong Yidong <cyd@stupidchicken.com>
4219
4220 * fileio.c: Revert 2009-07-16 changes.
4221 (Vauto_save_include_big_deletions): New variable.
4222 (Fdo_auto_save): Disable auto-save only if
4223 auto-save-include-big-deletions is nil.
4224
e6583e3d
CY
42252009-07-21 Chong Yidong <cyd@stupidchicken.com>
4226
4227 * xdisp.c (move_it_to): For continued lines ending in a tab, take
4228 the overflowed pixels into account (Bug#3879).
4229
ece435a5
KR
42302009-07-21 Ken Raeburn <raeburn@raeburn.org>
4231
4232 * lread.c (load_depth): New variable.
4233 (Fload, load_unwind, init_lread): Set it to the load recursion
4234 depth; set load_in_progress as a simple boolean based on the
4235 current load_depth. (Bug#3892)
4236
40b2d973
AR
42372009-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
4238
4239 * nsfont.m (ns_has_attribute): Remove.
4240 (ns_findfonts, nsfont_open): Use ns_attribute_fvalue() instead.
4241
10be7e0d
JL
42422009-07-18 Juri Linkov <juri@jurta.org>
4243
4244 * process.c (Fset_process_query_on_exit_flag): Mention killing
4245 a buffer in docstring.
4246
fa055055
KH
42472009-07-17 Kenichi Handa <handa@m17n.org>
4248
4249 * casetab.c (shuffle): Fix the logic of setting up the cycle.
4250
042f7b69
YM
42512009-07-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4252
4253 * nsfns.m (Fns_set_alpha): Remove function.
4254 (syms_of_nsfns): Don't defsubr it.
4255
4256 * nsterm.m (ns_get_color): Remove incompatible color formats.
4257 (ns_color_to_lisp): Generate #rrggbb color format string.
4258
4be941e3
RS
42592009-07-16 Richard Stallman <rms@gnu.org>
4260
4261 * fileio.c (Fwrite_region, Fdo_auto_save): Handle save_length = -2.
4262 (Fset_buffer_auto_saved): Handle save_length = -2.
4263
4e6b227d
CY
42642009-07-16 Chong Yidong <cyd@stupidchicken.com>
4265
4266 * xterm.c (Qx_gtk_map_stock): New var.
4267
4268 * gtkutil.c (update_frame_tool_bar): Use Qx_gtk_map_stock instead
4269 of calling intern each time.
4270
a1856973
YM
42712009-07-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4272
4273 * nsfont.m (nsfont_draw): Remove code for stippling, which actually
4274 does tiling.
4275
4276 * nsterm.m (ns_maybe_dumpglyphs_background): Likewise.
4277
497e54d8
KH
42782009-07-14 Kenichi Handa <handa@m17n.org>
4279
72d36834
KH
4280 * font.c (font_vconcat_entity_vectors): New function.
4281 (struct font_sort_data): New member font_driver_preference.
4282 (font_compare): Check font_driver_preference.
4283 (font_sort_entities): The format of the first argument changed.
4284 (font_delete_unmatched): Likewise.
4285 (font_list_entities): The return type changed.
4286 (font_select_entity): The format of the second argument changed.
1ac9108a
SM
4287 (font_find_for_lface): Adjuste for the above changes.
4288 Don't suppress the checking of C even if the repertory supports it.
4289 (Flist_fonts): Adjust for the above changes.
72d36834 4290
1ac9108a
SM
4291 * ftfont.c (ftfont_spec_pattern): New arg langname. Change caller.
4292 (ftfont_list): Adjust for the change of ftfont_spec_pattern.
497e54d8
KH
4293 Reject a font who has adstyle property that is different from a
4294 langname derived from registry property.
1ac9108a 4295 (ftfont_match): Adjust for the change of ftfont_spec_pattern.
497e54d8 4296
b6046155
EZ
42972009-07-13 Eli Zaretskii <eliz@gnu.org>
4298
4299 * dired.c (directory_files_internal) [WINDOWSNT]: Don't make a
4300 local copy of dirfilename.
4301
fb6b6049
KH
43022009-07-13 Kenichi Handa <handa@m17n.org>
4303
e2402a5e
KH
4304 * chartab.c (sub_char_table_ref_and_range): Fix the range check
4305 against max_char.
4306
fb6b6049
KH
4307 * cmds.c (internal_self_insert): Check sym by SYMBOLP before
4308 calling XSYMBOL (sym).
4309
65156807
EZ
43102009-07-11 Eli Zaretskii <eliz@gnu.org>
4311
1ac9108a
SM
4312 * dired.c (directory_files_internal_w32_unwind) [WINDOWSNT]:
4313 New function.
4314 (directory_files_internal) [WINDOWSNT]:
4315 Bind w32-get-true-file-attributes to either t or nil, depending whether
65156807
EZ
4316 the filesystem of the directory is fast or slow.
4317
4318 * w32.c (logon_network_drive): Don't assume PATH is an absolute
4319 file name.
4320 (is_slow_fs): New function.
4321 (stat): Use it to determine whether to issue more system calls to
4322 get accurate file attributes, when w32-get-true-file-attributes is
4323 `local'.
4324
e0ab5fcf
JD
43252009-07-10 Jan Djärv <jan.h.d@swipnet.se>
4326
4327 * xfns.c (Fx_select_font): Remember last font selected in
31fd7c5c 4328 x_last_font_name and use that the next time. Also try the frame
e0ab5fcf
JD
4329 parameter font-parameter as default to the font dialog.
4330
784ceded
KH
43312009-07-10 Kenichi Handa <handa@m17n.org>
4332
4333 * xftfont.c (xftfont_open): Fix typo: FC_RGBA->FC_HINT_STYLE.
4334
fb8edc0b
EZ
43352009-07-09 Eli Zaretskii <eliz@gnu.org>
4336
1ac9108a 4337 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
017dab84 4338
fb8edc0b
EZ
4339 * w32.c (stat): Treat UNC file names as residing on remote
4340 drives. (Bug#3542)
4341
635c75b1
KH
43422009-07-09 Kenichi Handa <handa@m17n.org>
4343
4344 * fontset.c (fontset_find_font): Fix previous change.
4345
c1d5ce94
MA
43462009-07-08 Michael Albinus <michael.albinus@gmx.de>
4347
4348 * dbusbind.c (xd_initialize, Fdbus_call_method, xd_read_message)
4349 (Fdbus_register_signal, Fdbus_register_method): Cleanup memory of
4350 error flag.
4351
edb61b39
KH
43522009-07-08 Kenichi Handa <handa@m17n.org>
4353
374bf7e4
KH
4354 * fontset.c (fontset_find_font): Fix the logic of handling
4355 charset_matched.
4356 (font_for_char): Delete unused var.
4357 (generate_ascii_font_name): Delete it.
4358
edb61b39
KH
4359 * coding.h (JIS_TO_SJIS2): Fix the code range check.
4360
4361 * coding.c (detect_coding_sjis): Handle shift_jis-2004 correctly.
4362 (encode_coding_sjis): Fix the code range check.
4363
0f3f018c
CY
43642009-07-07 Chong Yidong <cyd@stupidchicken.com>
4365
4366 * fileio.c (Fsubstitute_in_file_name, Ffile_name_directory)
4367 (Fexpand_file_name): Copy string data properly (Bug#3772).
4368
fcaf6f3a
JD
43692009-07-07 Jan Djärv <jan.h.d@swipnet.se>
4370
4371 * xterm.c (handle_one_xevent): Only call x_check_fullscreen on the
4372 first MapNotify.
4373
6809ca75
KH
43742009-07-07 Kenichi Handa <handa@m17n.org>
4375
4376 * character.h (unibyte_has_multibyte_table): Delete extern.
4377 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): Delete it.
4378
4379 * charset.c (Fset_charset_priority): Update charset_unibyte.
4380 (syms_of_charset): Initialize charset_unibyte.
4381
4382 * character.c (unibyte_has_multibyte_table): Delete it.
4383 (multibyte_char_to_unibyte): Use CHAR_TO_BYTE8 instead of checking
4384 charset_unibyte.
4385 (multibyte_char_to_unibyte_safe): Likewise.
4386 (Funibyte_char_to_multibyte): Don't check charset_unibyte.
4387
1ac9108a 4388 * xdisp.c (get_next_display_element): Decode it->c by charset_unibyte.
6809ca75
KH
4389 (x_produce_glyphs): Likewise.
4390
4391 * .gdbinit (xcharset): Fix the treating $arg0.
4392
ad9e2d54
EZ
43932009-07-04 Eli Zaretskii <eliz@gnu.org>
4394
4395 Emulation of `getloadavg' on MS-Windows.
50426a04 4396 * w32.c: Include float.h.
ad9e2d54
EZ
4397 (g_b_init_get_native_system_info, g_b_init_get_system_times)
4398 (GetNativeSystemInfo_Proc, GetSystemTimes_Proc): Declare.
4399 (get_native_system_info, get_system_times): New functions.
4400 (buf_next, buf_prev, sample_system_load, getavg): New subroutines.
4401 (getloadavg): Rewrite using GetSystemTimes and GetNativeSystemInfo.
4402 (globals_of_w32): Initialize g_b_init_get_native_system_info,
4403 g_b_init_get_system_times, and num_of_processors.
4404
0a3472c7
JR
44052009-07-03 Jason Rumney <jasonr@gnu.org>
4406
4407 * w32term.c (w32_initialize): Use standard types.
4408
80904120
EZ
44092009-07-03 Eli Zaretskii <eliz@gnu.org>
4410
4411 * dired.c (Ffile_attributes): Decode user and group names by the
4412 locale's encoding. (Bug#3443)
4413
6978862d
DN
44142009-07-03 Dan Nicolaescu <dann@ics.uci.edu>
4415
f8d23104
DN
4416 * sysdep.c (sys_suspend): Remove USG_JOBCTRL #ifdef, unused.
4417 (mkdir): Remove MKDIR_PROTOTYPE #ifdef, unused.
4418
4419 * callproc.c (child_setup): Use #else instead of a separate #ifdef.
4420
4421 * term.c (init_tty): Remove spurious #ifdef.
4422
6978862d
DN
4423 * m/mips.h: Mention this file is also used for netbsd.
4424 * m/pmax.h: Remove file.
4425
e044e4fc
JD
44262009-07-03 Jan Djärv <jan.h.d@swipnet.se>
4427
4428 * xterm.h (struct x_display_info): Add invisible_cursor.
4429 (struct x_output): Add current_cursor.
4430
4431 * xterm.c (XTtoggle_invisible_pointer): New function.
4432 (x_define_frame_cursor): Don't define cursor if invisible or the
4433 same as before. Set current_cursor.
4434 (x_create_terminal): Set toggle_invisible_pointer_hook.
4435
4436 * xfns.c (make_invisible_cursor): New function.
4437 (x_set_mouse_color): Call make_invisible_cursor.
4438 Set current_cursor.
4439 (x_window): Set current_cursor.
4440
4441 * termhooks.h (struct terminal): Add toggle_invisible_pointer_hook.
4442
4443 * keyboard.c (command_loop_1): Call frame_make_pointer_invisible after
4444 inserting a character.
4445 (read_avail_input): Call frame_make_pointer_visible.
4446
4447 * frame.c (Vmake_pointer_invisible): New variable.
1ac9108a
SM
4448 (frame_make_pointer_invisible, frame_make_pointer_visible):
4449 New functions.
e044e4fc
JD
4450 (syms_of_frame): DEFVAR make-pointer-invisible, initialize to Qt.
4451
4452 * frame.h: Declare frame_make_pointer_invisible and
4453 frame_make_pointer_visible.
4454 (struct frame): Add pointer_invisible.
4455
574c8efa
JD
44562009-07-02 Jan Djärv <jan.h.d@swipnet.se>
4457
7b507248
JD
4458 * gtkutil.c (xg_frame_set_char_size): Do set width/height if the
4459 frame isn't visible.
4460 (xg_frame_resized): If width/height is -1, get size of window
4461 from X server.
4462
4463 * xterm.c (handle_one_xevent): Call xg_frame_resized for USE_GTK
4464 for MapNotify.
4465
835bdaa7 4466 * gtkutil.c (xg_frame_set_char_size): Do not set pixel width/height
31fd7c5c 4467 here or call change_frame_size. Just call flush_and_sync.
1ac9108a 4468 (flush_and_sync): Reintroduce.
574c8efa 4469
3f1c6666 44702009-07-01 Jan Djärv <jan.h.d@swipnet.se>
69b16610 4471
31fd7c5c 4472 * xterm.h (struct x_display_info): Add Xatom_net_wm_state_sticky.
acd51077
JD
4473
4474 * xterm.c (x_handle_net_wm_state): Also look for sticky.
4475 (x_term_init): Initialize Xatom_net_wm_state_sticky.
4476
4477 * frame.h: Declare Qsticky.
4478
cad9ef74
JD
4479 * w32fns.c (w32_frame_parm_handlers): Set 0 for sticky.
4480
4481 * nsfns.m (ns_frame_parm_handlers): Ditto.
4482
4483 * frame.c: Declare Qsticky.
4484 (frame_parms): Add sticky.
4485
4486 * xfns.c (x_frame_parm_handlers): Let x_set_sticky handle sticky.
4487
4488 * xterm.h: Declare x_set_sticky.
4489
4490 * xterm.c (x_set_sticky): New function.
4491
69b16610
JD
4492 * gtkutil.c (xg_tool_bar_proxy_help_callback): New function.
4493 (xg_tool_bar_menu_proxy): Attach enter/leave events to
4494 xg_tool_bar_proxy_help_callback.
3f1c6666
JD
4495
4496 * emacs.c (USAGE3, standard_args): Add -mm and --maximized.
4497
4498 * frame.c: Qmaximized is new.
4499 (x_set_frame_parameters): Do not handle fullscreen specially.
4500 Only set width and height if explicitly set.
4501 (x_set_fullscreen): Handle Qmaximized.
4502 (x_set_font, x_figure_window_size): Do not handle fullscreen specially.
4503 (syms_of_frame): Initialize Qmaximized.
4504
1ac9108a
SM
4505 * frame.h (fullscreen_type): Add FULLSCREEN_MAXIMIZED.
4506 Declare Qfullwidth, Qfullheight, Qfullboth, Qmaximized.
3f1c6666
JD
4507
4508 * xterm.c (handle_one_xevent): Remove call to x_check_fullscreen
31fd7c5c
JB
4509 for Expose event. Add call to x_check_fullscreen for MapNotify event.
4510 Remove all code w.r.t. fullscreen from ConfigureNotify event. Do not
3f1c6666
JD
4511 set gravity to NorthWestGravity when USE_GTK.
4512 (set_wm_state): New function.
31fd7c5c 4513 (do_ewmh_fullscreen): Use set_wm_state. Also handle FULLSCREEN_MAXIMIZED.
3f1c6666
JD
4514 (x_handle_net_wm_state): Handle FULLSCREEN_MAXIMIZED.
4515 (x_check_fullscreen): Simplify so we only handle EMWH type of fullscreen
31fd7c5c 4516 or the case when no window manager is running. That means remove calls
3f1c6666
JD
4517 to x_real_positions and x_fullscreen_adjust.
4518
4519 * gtkutil.c (flush_and_sync, x_wm_size_hint_off): Remove.
4520 (xg_frame_set_char_size): Remove calls to x_wm_size_hint_off and
4521 flush_and_sync.
4522 (xg_height_changed): New function.
4523 (xg_create_frame_widgets): Remove call to gtk_widget_set_size_request
1ac9108a
SM
4524 and gtk_window_set_policy. Set frame gravity after parsing the
4525 geometry string.
3f1c6666
JD
4526 (xg_update_frame_menubar, free_frame_menubar)
4527 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
4528 (update_frame_tool_bar, free_frame_tool_bar): Call xg_height_changed.
4529 Remove calls to xg_frame_set_char_size.
4530
fd503d99
KH
45312009-07-01 Kenichi Handa <handa@m17n.org>
4532
4533 * keyboard.c (decode_keyboard_code): New function.
4534 (tty_read_avail_input): Decode the input bytes if necessary.
4535
1ac9108a
SM
4536 * coding.c (setup_coding_system):
4537 Initialize coding->carryover_bytes to 0.
fd503d99
KH
4538 (Fset_keyboard_coding_system_internal): If CODING-SYSTEM is nil,
4539 use Qno_conversion.
4540
24ed93fb
YM
45412009-07-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4542
4543 * Makefile.in (SOME_MACHINE_LISP): Add ../lisp/term/common-win.elc.
4544
99061dfc
CY
45452009-06-30 Chong Yidong <cyd@stupidchicken.com>
4546
1ac9108a 4547 * xftfont.c (xftfont_open): Avoid passing NULL argument to XftLockFace.
99061dfc 4548
ff90fbde
JR
45492009-06-30 Jason Rumney <jasonr@gnu.org>
4550
4551 * w32term.c (w32_initialize): Use GetModuleHandle for library that
4552 is already loaded.
4553 Set user model ID if supported (bug#1849).
4554
5f445726
JM
45552009-06-29 Jim Meyering <meyering@redhat.com>
4556
4557 Remove useless if-before-xfree test.
4558 * nsfont.m (nsfont_close): Remove useless test.
4559 * term.c (delete_tty): Likewise.
4560 * w32.c (system_process_attributes): Likewise.
4561 * w32font.c (w32font_close): Likewise.
4562 * xfaces.c (x_free_gc): Likewise.
4563 * xselect.c (buffer): Likewise.
4564
b9607587
AS
45652009-06-28 Andreas Schwab <schwab@linux-m68k.org>
4566
4567 * process.c (send_process): Keep decoded string in a local
4568 variable and protect it from GC. (Bug#3521)
4569
89ba96f4
EZ
45702009-06-28 Eli Zaretskii <eliz@gnu.org>
4571
4572 * term.c (create_tty_output) [MSDOS]: #ifdef away.
4573 (tty_free_frame_resources) [MSDOS]: Add a DOS-specific version.
4574
098a1589
CY
45752009-06-28 Chong Yidong <cyd@stupidchicken.com>
4576
485422be
CY
4577 * xdisp.c (start_display, handle_face_prop)
4578 (move_it_vertically_backward, cursor_row_fully_visible_p)
1ac9108a
SM
4579 (redisplay_window, try_window_id, produce_image_glyph):
4580 Delete some #ifdef-ed out code chunks that are now obsolete.
485422be 4581
098a1589
CY
4582 * xterm.c (x_update_window_begin, x_new_focus_frame)
4583 (x_scroll_bar_handle_click, handle_one_xevent)
4584 (handle_one_xevent, XTread_socket, x_focus_on_frame)
4585 (x_make_frame_visible, x_make_frame_invisible)
4586 (x_wm_set_icon_pixmap, x_initialize): Delete some #ifdef-ed out
4587 code chunks that are now obsolete.
4588
78c38319
MA
45892009-06-28 Michael Albinus <michael.albinus@gmx.de>
4590
4591 * dbusbind.c (XD_SYMBOL_TO_DBUS_TYPE): Convert macro into function
4592 xd_symbol_to_dbus_type. With Solaris 2.11, it was said to compile
4593 for hours, when optimzation is enabled.
4594 (xd_signature, xd_append_arg, xd_retrieve_arg, xd_initialize)
4595 (xd_read_message): Make them static.
4596
4189ed40
CY
45972009-06-27 Chuck Blake <cblake@pdos.csail.mit.edu> (tiny change)
4598
4599 * term.c (turn_on_face): Allow simultaneously bold and dim
4600 terminal faces (Bug#3530).
4601
cd9b5e16
CY
46022009-06-27 Chong Yidong <cyd@stupidchicken.com>
4603
4e23bedb
CY
4604 * frame.c (x_get_arg): Check if dpyinfo is non-NULL.
4605
cd9b5e16
CY
4606 * xdisp.c (mouse_face_from_buffer_pos): Fix detection of
4607 truncation glyphs (Bug#3686).
4608
07cc3c35
GM
46092009-06-27 Glenn Morris <rgm@gnu.org>
4610
4611 * m/pmax.h: Restore file, with only netbsd portions.
4612
31fd7c5c 46132009-06-26 David Reitter <david.reitter@gmail.com>
25c5550f 4614
cd9b5e16 4615 * nsterm.m (keydown): Avoid infinite loop.
25c5550f 4616
42d4a64f
KH
46172009-06-26 Peter Jolly <peter@jollys.org> (tiny change)
4618
4619 * ftfont.c (get_adstyle_property): Call font_intern_prop with 1 as
4620 the arg FORCE_SYMBOL.
4621
930fe55b 46222009-06-25 Kenichi Handa <handa@m17n.org>
a71ccf3a
KH
4623
4624 * fontset.c (fontset_find_font): When a usable rfont_def is found
4625 in a fallback font-group, make it the first element of the group.
4626
57ebc3fd
CY
46272009-06-24 Chong Yidong <cyd@stupidchicken.com>
4628
4629 * emacs-icon.h: Always define gnu_xpm_bits on GTK (bug#3671).
4630
f084f942
KH
46312009-06-24 Kenichi Handa <handa@m17n.org>
4632
4633 * fontset.c (fontset_get_font_group): Return 0 if no font-group is
4634 set for C.
4635 (fontset_font): Record the availability of a font for C both in
4636 the realized fontsets of the current one and the default one.
4637
2f686c87
DN
46382009-06-23 Dan Nicolaescu <dann@ics.uci.edu>
4639
4640 * sysdep.c (child_setup_tty): Remove SIGNALS_VIA_CHARACTERS
4641 conditional, it is always defined on AIX.
4642
666e158e
MB
46432009-06-23 Miles Bader <miles@gnu.org>
4644
4645 * window.c (Vrecenter_redisplay): New variable.
4646 (syms_of_window): Initialize it.
4647 (Qtty): New extern declaration.
4648 (Frecenter): Only do redisplay if Vrecenter_redisplay requests it.
4649
c6da7cd2
JM
46502009-06-23 Jim Meyering <meyering@redhat.com>
4651
1ac9108a
SM
4652 * src/ftfont.c (setup_otf_gstring, ftfont_shape_by_flt):
4653 Use xmalloc and xrealloc (not malloc and realloc), so subsequent heap
632c2030 4654 pointer dereferences are guaranteed to be valid.
c6da7cd2 4655
678dca3d
KH
46562009-06-23 Kenichi Handa <handa@m17n.org>
4657
74d75424
KH
4658 * emacs.c (main): Call init_font ().
4659
4660 * font.h (Vfont_log): Extern it.
4661 (FONT_ADD_LOG, FONT_DEFERRED_LOG): New macros.
4662
4663 * font.c (font_sort_entities, font_list_entities)
4664 (font_matching_entity, font_open_entity)
4665 (font_close_object): Change font_add_log to FONT_ADD_LOG.
4666 (Vfont_log): Delete static.
4667 (font_log_env_checked): Delete this variable.
4668 (font_add_log): Don't check font_log_env_checked.
4669 (font_deferred_log): Check Vfont_log.
4670 (init_font): New function.
4671
678dca3d
KH
4672 * ftfont.c: Change font_add_log to FONT_ADD_LOG.
4673
4674 * w32font.c: Change font_add_log to FONT_ADD_LOG.
4675
4676 * w32uniscribe.c: Change font_add_log to FONT_ADD_LOG.
4677
4678 * xfont.c: Change font_add_log to FONT_ADD_LOG.
4679
4680 * fontset.c (fontset_font): Call FONT_DEFERRED_LOG.
4681 (face_for_char): Don't call font_deferred_log here.
4682 (font_for_char): Likewise.
4683
8a668709
CY
46842009-06-22 Chong Yidong <cyd@stupidchicken.com>
4685
9a01ee33
CY
4686 * w32term.c (x_draw_glyph_string): Use the glyph string's width
4687 rather than its background_width for drawing the overline and
4688 underline (Bug#489).
4689
4690 * xterm.c (x_draw_glyph_string): Use the glyph string's width
4691 rather than its background_width for drawing the overline and
4692 underline (Bug#489).
ec7c9926
CY
4693 (xg_default_icon_file): New variable.
4694 (syms_of_xterm): Initialize it to the Emacs SVG icon file.
4695 (x_bitmap_icon): Under GTK, use xg_default_icon_file.
9a01ee33 4696
8a668709
CY
4697 * xdisp.c (Qbefore_string, Qafter_string): Add externs.
4698 (load_overlay_strings): Remove externs.
4699 (fast_find_position): Function deleted.
4700 (mouse_face_from_buffer_pos): New function, based on
4701 fast_find_position. Correctly handle before-strings,
4702 display-strings, and after-strings (Bug#1220).
4703 (note_mouse_highlight): Use mouse_face_from_buffer_pos.
4704
4d4c02d8
CY
47052009-06-21 Chong Yidong <cyd@stupidchicken.com>
4706
1ac9108a 4707 * xdisp.c (IT_DISPLAYING_WHITESPACE): Define for !HAVE_WINDOW_SYSTEM.
4d4c02d8
CY
4708 (move_it_in_display_line_to, move_it_in_display_line_to)
4709 (display_line): Remove #ifdef HAVE_WINDOW_SYSTEM.
4710
70243478
CY
47112009-06-21 Chong Yidong <cyd@stupidchicken.com>
4712
4713 * Branch for 23.1.
4714
13087e59
JR
47152009-06-21 Jason Rumney <jasonr@gnu.org>
4716
4717 * w32term.c (keyboard_codepage): New static variable.
4718 (w32_read_socket) [WM_INPUTLANGCHANGE]: Update it.
4719 (w32_read_socket) [WM_CHAR]: Use it to decode character
4720 input (bug#3237).
4721 (w32_initialize): Initialize it.
4722 (codepage_for_locale): New function.
4723
4735b74e
KR
47242009-06-20 Ken Raeburn <raeburn@raeburn.org>
4725
4726 * process.c (status_message): Pass Faset index argument as a lisp
4727 object, so as to work with USE_LISP_UNION_TYPE.
4728
0e727afa
YM
47292009-06-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4730
4731 * coding.c (Ffind_coding_systems_region_internal):
4732 Cache checked characters.
4733
cf299835
KH
47342009-06-18 Kenichi Handa <handa@m17n.org>
4735
1ac9108a 4736 * coding.c (decode_coding_iso_2022): Check MSB of bytes more rigidly.
cf299835 4737
90f20d94
AS
47382009-06-18 Andreas Schwab <aschwab@redhat.com>
4739
4740 * xdisp.c (redisplay_internal): Check that the frame is still
4741 live after redisplay of its windows.
4742 (redisplay_windows): Check that the window is still live.
4743
7f1faf1c
KH
47442009-06-17 Andreas Schwab <schwab@linux-m68k.org>
4745
4746 * coding.c (detect_coding_utf_16): Fix previous change.
4747
cc13543e
KH
47482009-06-16 Kenichi Handa <handa@m17n.org>
4749
4750 * coding.c (detect_coding_utf_16): Fix the logic of rejecting
4751 UTF-16 by checking the dispersion of Eth and Oth bytes.
4752
977b85f4
AS
47532009-06-15 Andreas Schwab <schwab@linux-m68k.org>
4754
4755 * coding.c (detect_coding_utf_16): Fix typo counting odd bytes.
4756
66bd43d1
KH
47572009-06-15 Kenichi Handa <handa@m17n.org>
4758
4759 * process.c (status_message): Fix previous change. Be sure to
4760 decode a localized string.
4761
cb5ca9c5
YM
47622009-06-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4763
4764 * xterm.c (x_delete_terminal): Put previous change in #if 0 and
4765 add comment explaining why.
4766
ec7709ba 47672009-06-14 Sidney Markowitz <sidney@sidney.com>
5ee6f629 4768
ec7709ba 4769 * nsmenu.m (EmacsTooltip: setText): Set height of tooltip.
5ee6f629 4770
4b7f335c
AR
47712009-06-14 Adrian Robert <Adrian.B.Robert@gmail.com>
4772
4773 * nsfont.m (ns_attribute_value): Remove.
4774 (ns_attribute_fvalue): Incorporate code from ns_attribute_value.
4775 (ns_has_attribute): Shrink the normal range.
4776 (ns_findfonts): Don't worry about requested spec in determining
4777 need for synthItal.
e41820ee 4778 (ns_get_covering_families): Retain scriptToFamilies.
4b7f335c 4779
73b26103
SZ
47802009-06-14 Seiji Zenitani <zenitani@mac.com>
4781
4782 * xdisp.c [USE_MAC_TOOLBAR]: Remove obsolete definition for Mac Carbon.
4783
5753e4da
KH
47842009-06-11 Kenichi Handa <handa@m17n.org>
4785
4786 * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
4787 overhang for the static composition case.
4788
3561b671
KH
47892009-06-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4790
5753e4da
KH
4791 * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
4792 overhang for the automatic composition case.
4793
3561b671
KH
4794 * xterm.c (x_compute_glyph_string_overhangs): Handle the automatic
4795 composition case.
4796
852bbd41
CY
47972009-06-10 Chong Yidong <cyd@stupidchicken.com>
4798
4799 * xdisp.c (get_next_display_element): When handling wrap-prefix
4800 and line-prefix, treat \n as a control character (bug#3502).
4801
9903d1e6
KH
48022009-06-10 Kenichi Handa <handa@m17n.org>
4803
4804 * font.c (font_parse_family_registry): Fix for one-char foundry.
4805 (font_sort_entities): Initialize prefer_prop[FONT_AVGWIDTH_INDEX].
4806
0bcbaaaa
CY
48072009-06-09 Dmitry Dzhus <dima@sphinx.net.ru> (tiny change)
4808
4809 * process.c (status_message): Fix handling of multibyte signal
4810 string (Bug#3499).
4811
40aa3f13
JM
48122009-06-09 Jim Meyering <meyering@redhat.com>
4813
1f80c7e2
CY
4814 * xfaces.c (Fx_load_color_file): Avoid array bounds error if the
4815 color name is missing.
40aa3f13 4816
72d51285
KH
48172009-06-09 Kenichi Handa <handa@m17n.org>
4818
4819 * charset.c (Fmap_charset_chars): In docstring, state clearly that
4820 FROM-CODE and TO-CODE are codepoints of CHARSET.
4821
c1d04d84
AR
48222009-06-08 Adrian Robert <Adrian.B.Robert@gmail.com>
4823
4824 * nsterm.m (ns_use_system_highlight_color): Drop, unused.
4825
48262009-06-08 Adrian Robert <Adrian.B.Robert@gmail.com>
4827
4828 Changes to support :script/:lang/:otf in NS font driver.
4829 * nsfont.m (nsfont_escape_name, nsfont_unescape_name)
4830 (nsfont_get_family, nsfont_char_width): Rename to ns_ prefix to
4831 indicate not part of font driver interface, and change callers.
4832 (ns_get_family): Remove pointless null check.
4833 (nsfont_spec_to_traits, nsfont_fmember_to_entity): Replace with
4834 ns_spec_to_descriptor, ns_descriptor_to_entity.
4835 (nsfont_trait_distance, nsfont_make_fontset_for_font): Remove.
4836 (ns_attribute_value, ns_attribute_fvalue, ns_has_attribute)
4837 (ns_spec_to_descriptor, ns_descriptor_to_entity)
4838 (ns_charset_covers, ns_lang_to_script, ns_otf_to_script)
4839 (ns_get_req_script, ns_accumulate_script_ranges)
4840 (ns_script_to_charset, ns_get_covering_families, ns_findfonts):
4841 New functions.
4842 (nsfont_list, nsfont_match): Use ns_findfonts.
4843 (nsfont_open): Use font descriptor instead of traits.
4844 (nsfont_draw): Handle "automatic" (lookup-table) compositions.
4845 (dump_glyphstring): Rename to ns_dump_glyphstring.
4846
c7eb9816
AR
4847 * nsterm.h (dump_glyphstring): Rename to ns_dump_glyphstring.
4848
c1d04d84
AR
4849 * nsfns.m (Fns_popup_font_panel): Use shared font manager.
4850
4851 * fontset.c (fontset_from_font): Remove NS-specific code.
4852
ec7709ba 48532009-06-08 Peter Jones <pjones@pmade.com> (tiny change)
c1d04d84
AR
4854
4855 * nsterm.m (ns_draw_window_cursor): Respect cursor_type for
4856 nonactive windows.
4857
31fd7c5c 48582009-06-08 Felix Mueller <felix@enqueue.eu> (tiny change)
c1d04d84 4859
1ac9108a 4860 * nsterm.m (ns_init_paths): Append path separator to INFOPATH variable.
c1d04d84 4861
68852c13 48622009-06-08 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
e7777236
AR
4863
4864 * keyboard.c (kbd_buffer_get_event): Null-check used_mouse_menu.
4865
6756cd1d
CY
48662009-06-07 Chong Yidong <cyd@stupidchicken.com>
4867
4868 * xdisp.c (move_it_in_display_line_to): On text-only terminals,
4869 account for the overflowing of newlines into the last glyph on the
4870 display line (Bug#3482).
4871
28bf482a
DR
48722009-06-05 David Reitter <david.reitter@gmail.com>
4873
ec7709ba
JB
4874 * nsselect.m (Fx_own_selection_internal, Fx_selection_exists_p)
4875 (Fx_selection_owner_p): Rename from Fns_own_selection_internal,
28bf482a
DR
4876 Fns_selection_exists_p, Fns_selection_owner_p.
4877
fdb55376
JR
48782009-06-03 Jason Rumney <jasonr@gnu.org>
4879
4880 * w32fns.c (x_create_tip_frame): Use the uniscribe font backend if
4881 available. (Bug#3379)
4882
05129fbe
KH
48832009-05-29 Kenichi Handa <handa@m17n.org>
4884
1ac9108a
SM
4885 * coding.c (get_translation_table):
4886 Check Venable_character_translation.
05129fbe 4887
ec7709ba 48882009-05-26 David Reitter <david.reitter@gmail.com>
15891144 4889
ec7709ba
JB
4890 * nsterm.m (ns_raise_frame): Only raise frame if visible.
4891 (x_make_frame_visible): Move frame to front rather than calling
15891144 4892 ns_raise_frame().
ec7709ba 4893 (keyDown:): Do not swallow events that aren't re-sent if frame
15891144 4894 isn't key window.
ec7709ba 4895 (drawRect:): Do not set visibility/iconified flags because
15891144
DR
4896 drawRect may be called by NSView even if the frame is hidden.
4897
ec7709ba
JB
4898 * nsfns.m (Fx_create_frame): Follow other ports in
4899 determining visibility; default to t. Ensure async_visible is set.
15891144 4900
21f73755
EZ
49012009-05-23 Eli Zaretskii <eliz@gnu.org>
4902
4903 * dired.c (Ffile_attributes): Doc fix.
4904
34001e41
CY
49052009-05-22 Chong Yidong <cyd@stupidchicken.com>
4906
4907 * m/mips.h [GNU_LINUX]: Don't define DATA_START (Bug#2685).
4908
46306a17
SM
49092009-05-21 Stefan Monnier <monnier@iro.umontreal.ca>
4910
4911 * xfont.c (xfont_list_pattern): Don't initialize xfont_scripts_cache
4912 and xfont_scratch_props.
4913 (syms_of_xfont): Do it here instead.
4914 (xfont_find_ccl_program): Delete, unused.
4915 (xfont_open): Delete unused var `i'.
4916
ef6e0694
KH
49172009-05-21 Kenichi Handa <handa@m17n.org>
4918
4919 * fontset.c (Qlatin): Don't make it static.
4920
46306a17
SM
4921 * xfont.c (xfont_chars_supported, xfont_supported_scripts):
4922 New functions.
ef6e0694
KH
4923 (xfont_scripts_cache, xfont_scratch_props): New variables.
4924 (Qlatin, Vscalable_fonts_allowed): Extern it.
46306a17
SM
4925 (xfont_list_pattern): Argument changed. Callers changed.
4926 Check Vscalable_fonts_allowed. Check the support of a script.
ef6e0694
KH
4927 (xfont_list): Don't reject a font spec with :script property.
4928 (xfont_has_char): Fix setting of encoding.
4929 (syms_of_xfont): Staticpro and initialize xfont_scripts_cache and
4930 xfont_scratch_props.
4931
49322009-05-19 Kenichi Handa <handa@m17n.org>
4933
46306a17 4934 * font.c (font_sort_entities): Rename from font_sort_entites.
ef6e0694
KH
4935 Callers changed.
4936
49372009-05-18 Kenichi Handa <handa@m17n.org>
4938
4939 * font.c (font_find_for_lface): Copy SPEC's FONT_TYPE too.
4940
ac71ced7
SM
49412009-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
4942
4943 * frame.c (do_switch_frame) [NS_IMPL_COCOA]: Don't raise any window.
4944 (delete_frame) [NS_IMPL_COCOA]: Instead, do it here.
4945
1c6d1051
YM
49462009-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4947
4948 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase here.
4949 (x_delete_terminal): Dissociate resource database from display and
4950 then call XrmDestroyDatabase before closing display.
4951
9b9b779c
AR
49522009-05-18 Adrian Robert <Adrian.B.Robert@gmail.com>
4953
4954 * nsterm.m (ns_read_socket): Remove unused variable.
1564e649
AR
4955 * frame.c (do_switch_frame): Under NS_IMPL_COCOA section, check
4956 whether selected frame is viable before raising it (based on patch
4957 by David Reitter), and improve commentary.
4958 * nsfont.m (nsfont_make_fontset_for_font): Avoid a compiler warning.
9b9b779c 4959
cccd42d5
KH
49602009-05-15 Kenichi Handa <handa@m17n.org>
4961
4962 * font.c (Ffont_spec): Check arguments.
4963
337fbd17
CY
49642009-05-14 Chong Yidong <cyd@stupidchicken.com>
4965
4966 * xfaces.c (tty_supports_face_attributes_p): Recognize unspecified
4967 weight when testing attributes (Bug#3282).
4968
47a6002f
JD
49692009-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4970
4971 * gtkutil.c (xg_frame_set_char_size): Set frame pixel width/height to
4972 what we expect to get in the next ConfigureNotify event.
4973
9cb363db
YM
4974 * xftfont.c (xftfont_open): Make sure that Xrender extension is added
4975 before Xft one (Bug#1696).
4976
b9126609
CY
49772009-05-07 David Reitter <david.reitter@gmail.com>
4978
4979 * nsfns.m (Fx_display_planes): Compute bitplanes using
4980 NSBitsPerPixelFromDepth (Bug#3207).
4981
27a69fd9
CY
49822009-05-10 Chong Yidong <cyd@stupidchicken.com>
4983
4984 * editfns.c (Ftranspose_regions): Doc fix (Bug#3248).
4985
00f37552
TTN
49862009-05-10 Ulrich Mueller <ulm@gentoo.org>
4987
4988 * s/gnu-linux.h: Make GCPROs and UNGCPRO no-ops also on SuperH.
4989
2d82a920
DR
49902009-05-07 David Reitter <david.reitter@gmail.com>
4991
ec7709ba
JB
4992 * nsterm.m (ns_dumpglyphs_stretch, ns_dumpglyphs_image):
4993 Respect mouse face background.
2d82a920 4994
46b0d52d
DR
49952009-05-07 David Reitter <david.reitter@gmail.com>
4996
ec7709ba
JB
4997 * nsterm.m (note_mouse_movement, ns_frame_up_to_date):
4998 Mouse movement/highlight: bracket drawing operations
46b0d52d
DR
4999 in ns_update_begin and ns_update_end.
5000
ce1b23bb
SM
50012009-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
5002
5996e1b7
SM
5003 * nsfns.m (ns_get_screen): Rewrite.
5004 Don't presume selected-frame is of type `ns'.
5005
ba98e3a0
SM
5006 * font.c (font_update_drivers): Sanity fallback to avoid disabling
5007 all drivers.
5008
ce1b23bb
SM
5009 * nsterm.m (-windowDidResize:): Avoid inf-loop under GNUStep.
5010
bcda200f
YM
50112009-05-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5012
5013 * keyboard.h (add_user_signal): Fix typo in extern.
5014
5015 * lisp.h (add_user_signal): Remove extern.
5016
5017 * unexelf.c (unexec): Consider a section to precede the .bss section
5018 if its addresses overlap that of .bss.
5019 (unexec) [NS_IMPL_GNUSTEP]: Copy ObjC-related data from old file
5020 instead of dumping process.
5021
864660a2
SM
50222009-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
5023
5024 * keyboard.c (syms_of_keyboard): Staticpro pending_funcalls.
5025
50da4e56
SM
50262009-05-04 Stefan Monnier <monnier@iro.umontreal.ca>
5027
5028 * Makefile.in (ctagsfiles1, ctagsfiles2): Include ObjC files in TAGS.
5029
51520a1a
DN
50302009-05-02 Dan Nicolaescu <dann@ics.uci.edu>
5031
5032 * xterm.c (x_handle_net_wm_state): Move declaration of lval before
5033 any statements.
5034
409ea3a1
AS
50352009-05-02 Andreas Schwab <schwab@linux-m68k.org>
5036
59c4c60f
AS
5037 * process.c (read_process_output): Make sure the current buffer is
5038 always restored.
5039
409ea3a1
AS
5040 * coding.c (record_conversion_result): Don't modify
5041 Vlast_code_conversion_error for successful result.
5042 (alloc_destination): Don't clobber conversion result. (Bug#1650)
5043
56f00ed2
KH
50442009-05-01 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
5045
5046 * charset.c (load_charset): Reformat X==Y==Z to (X==Y)==Z.
896b1cc9 5047 (load_charset_map): Remove unnecessary code.
56f00ed2 5048
4491c9d2
DR
50492009-04-30 David Reitter <david.reitter@gmail.com>
5050
35f5b128 5051 * nsterm.m (convert_ns_to_X_keysym): Define function keys f16
4491c9d2
DR
5052 through f24.
5053
6970f632
CY
50542009-04-30 Chong Yidong <cyd@stupidchicken.com>
5055
5056 * xfaces.c (face_at_buffer_position): New arg base_face_id.
5057
5058 * xdisp.c (handle_face_prop): Pass base_face_id of iterator to
5059 face_at_buffer_position.
5060 (face_before_or_after_it_pos, get_next_display_element)
5061 (note_mouse_highlight): Update face_at_buffer_position call.
5062
5063 * term.c (term_mouse_highlight):
5064 * msdos.c (IT_note_mouse_highlight):
5065 * fontset.c (Finternal_char_font):
35f5b128 5066 * font.c (font_at, font_range): Update face_at_buffer_position call.
6970f632
CY
5067
5068 * dispextern.h (face_at_buffer_position): Update prototype.
5069
0c616f63
KH
50702009-04-30 Kenichi Handa <handa@m17n.org>
5071
35f5b128 5072 * fontset.c (fontset_find_font): Check if rfont_def is Qnil or not.
0c616f63 5073
ad3aaf33
AS
50742009-04-29 Andreas Schwab <schwab@linux-m68k.org>
5075
5076 * callproc.c (Fcall_process): Fix GC protection. Make sure
5077 current buffer is always restored.
5078
c3c963a0
YM
50792009-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5080
5081 * atimer.c (init_atimer): Also clear stopped_atimers.
5082
5083 * keyboard.c (init_keyboard) [POLL_FOR_INPUT]: Reset poll_timer.
5084
7e3386cb
YM
5085 * process.c (create_process): Clean up merger residues of
5086 2008-07-17 change.
5087
91f68422
CY
50882009-04-29 Ulrich Mueller <ulm@gentoo.org>
5089
5090 * lread.c (Vread_circle): New variable.
5091 (read1): Disable recursive read if Vread_circle is nil.
5092
24b34550
KH
50932009-04-29 Kenichi Handa <handa@m17n.org>
5094
5095 * fontset.h (set_default_ascii_font): Delete extern.
5096
5097 * fontset.c (set_default_ascii_font): Delete this unused function.
5098
5099 * frame.c (x_set_font): When ARG is a font-object, check if the
5100 font-object matches with the ASCII font-spec of the frame's
9c358bda 5101 fontset. If not, create a new fontset for the frame. (Bug #3075)
24b34550 5102
77bf07e1
AS
51032009-04-28 Andreas Schwab <schwab@linux-m68k.org>
5104
5105 * fns.c (Flocale_info): Protect vector from GC during decoding.
5106
5107 * process.c (Fstart_process): Protect argv strings from GC during
5108 encoding.
5109
2c55aacf
AS
51102009-04-27 Andreas Schwab <schwab@linux-m68k.org>
5111
5112 * sysdep.c: Include <ctype.h>.
5113
b892d3c9
DR
51142009-04-27 David Reitter <david.reitter@gmail.com>
5115
35f5b128 5116 * nsfont.m (nsfont_open): Remove unused variable shrink.
b892d3c9
DR
5117 Remove commented-out code.
5118
9d0644c4
JB
51192009-04-26 Johan Bockgård <bojohan@gnu.org>
5120
5121 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
5122
b7053016
JR
51232009-04-25 Jason Rumney <jasonr@gnu.org>
5124
5125 * w32font.c (clear_cached_metrics): Remove, unused since 2008-08-02.
5126
4e8231f3
YM
51272009-04-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5128
5129 * fringe.c (init_fringe_bitmap) [HAVE_X_WINDOWS && WORDS_BIG_ENDIAN]:
5130 Swap bytes in short integer if fringe bitmap width > 8.
5131
493dcf2c
KH
51322009-04-23 Kenichi Handa <handa@m17n.org>
5133
5134 * xfaces.c (Fx_list_fonts): If a font size is specified in
5135 PATTERN, set it in returned scalable fonts.
5136
401e9e57
CY
51372009-04-22 Chong Yidong <cyd@stupidchicken.com>
5138
708e05dc
CY
5139 * keyboard.c (Fset_input_meta_mode): Doc fix.
5140
5141 * dispnew.c (Fsend_string_to_terminal): Doc fix.
5142
1ac9108a 5143 * data.c (Fterminal_local_value, Fset_terminal_local_value): Doc fixes.
708e05dc
CY
5144
5145 * coding.c (Fterminal_coding_system): Doc fix.
5146
5147 * xfns.c (Fx_display_grayscale_p, Fx_display_pixel_width)
5148 (Fx_display_pixel_height, Fx_display_planes)
5149 (Fx_display_color_cells, Fx_server_max_request_size)
5150 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
5151 (Fx_display_mm_height, Fx_display_mm_width)
5152 (Fx_display_backing_store, Fx_display_visual_class)
1ac9108a
SM
5153 (Fx_display_save_under, Fx_close_connection, Fx_synchronize):
5154 Doc fixes, replacing "terminal id" with "terminal object".
708e05dc
CY
5155 (check_x_display_info): Handle terminal objects instead of
5156 terminal ids.
5157
401e9e57
CY
5158 * term.c (Ftty_display_color_p, Ftty_display_color_cells)
5159 (Ftty_type, Fcontrolling_tty_p, Ftty_no_underline, Fsuspend_tty)
1ac9108a
SM
5160 (Fresume_tty, Vsuspend_tty_functions, Vresume_tty_functions):
5161 Doc fixes, replacing "terminal id" with "terminal object".
401e9e57 5162
df80c7f0
KH
51632009-04-21 Kenichi Handa <handa@m17n.org>
5164
5a8f12af 5165 * font.c (font_load_for_lface): Cancel previous change (bug#2994).
c0a6070d 5166 (font_score): Check AVGWIDTH too.
908567ef 5167
df80c7f0
KH
5168 * coding.c (decode_coding_utf_16): Reduce charbuf_end for the
5169 worst case.
1ac9108a
SM
5170 (decode_coding_sjis, decode_coding_big5, decode_coding_charset)
5171 (decode_coding_emacs_mule, decode_coding_iso_2022): Likewise.
df80c7f0 5172
705af33f
JR
51732009-04-19 Jason Rumney <jasonr@gnu.org>
5174
5175 The following changes fix Bug#3005 for wide glyphs on each platform,
b71ac3dd 5176 without reintroducing Bug#1258 for stretch glyphs.
705af33f
JR
5177
5178 * xterm.c (x_draw_bar_cursor): Limit cursor width differently for
5179 BAR_CURSOR and HBAR_CURSOR. Calculate width of HBAR_CURSOR using
5180 get_phys_cursor_geometry.
5181
b71ac3dd 5182 * w32term.c (x_draw_bar_cursor): Limit cursor width differently
705af33f
JR
5183 for BAR_CURSOR and HBAR_CURSOR. Calculate width of HBAR_CURSOR
5184 using get_phys_cursor_geometry.
5185
5186 * nsterm.m (ns_draw_window_cursor): HBAR_CURSOR width already
5187 correctly calculated.
5188
dc2933eb
JD
51892009-04-19 Jan Djärv <jan.h.d@swipnet.se>
5190
1ac9108a
SM
5191 * gtkutil.c (xg_tool_bar_menu_proxy, update_frame_tool_bar):
5192 Use G_CALLBACK instead of GTK_SIGNAL_FUNC which is deprecated.
dc2933eb
JD
5193 (xg_initialize): Use g_type_class_ref instead of gtk_type_class which
5194 is deprecated.
5195
973e7849
AS
51962009-04-18 Andreas Schwab <schwab@linux-m68k.org>
5197
5198 * font.c (font_put_frame_data): Use xfree instead of free.
5199
314d66f4
JB
52002009-04-17 Juanma Barranquero <lekktu@gmail.com>
5201
5202 * w32font.c (Qja, Qko): Remove declarations.
5203 (syms_of_w32font): Don't DEFSYM them.
5204
cf702558
CY
52052009-04-17 Chong Yidong <cyd@stupidchicken.com>
5206
5207 * font.c (Qja, Qko): Move definitions here from ftfont.c.
5208
5209 * font.h (Qja, Qko): Extern them.
5210
5211 * ftfont.c (Qja, Qko): Remove declarations.
5212
5213 * xfont.c (Qja, Qko): Remove declarations.
5214
b50504f5
KH
52152009-04-17 Kenichi Handa <handa@m17n.org>
5216
bde25748
KH
5217 * editfns.c (Ftranslate_region_internal): Use Fconcat to make a
5218 string from a vector to handle Latin-1 characters correctly.
5219
b50504f5
KH
5220 * ftfont.c (ftfont_pattern_entity): Return a newly allocated
5221 entity even if the cache hits.
5222
f4646fff
AS
52232009-04-16 Andreas Schwab <schwab@linux-m68k.org>
5224
5225 * search.c (boyer_moore): Use zero as marker value for a possible
6340c70e 5226 match instead of depending on overflow behavior. (Bug#2844)
f4646fff 5227
e7deaab0
AS
5228 * search.c: Use EMACS_INT for buffer positions. Add prototypes.
5229 * lisp.h: Adjust prototypes.
5230
0a0e7d49
CY
52312009-04-16 Chong Yidong <cyd@stupidchicken.com>
5232
5233 * keyboard.c (adjust_point_for_property): Disable 2009-02-12
5234 change (Bug#3003).
5235
3c908a57
KH
52362009-04-16 Kenichi Handa <handa@m17n.org>
5237
1ac9108a 5238 * xfont.c (xfont_has_char): Special handling of `ja' and `ko' adstyle.
bd0af90d
KH
5239
5240 * xftfont.c (xftfont_has_char): Special handling of `ja' and `ko'
5241 adstyle.
5242
5243 * ftfont.c (Qja, Qko): Don't make them static.
5244 (enum ftfont_cache_for): New enum.
5245 (fc_charset_table): Undo the previous change.
5246 (ftfont_get_latin1_charset): Delete it.
1ac9108a
SM
5247 (ftfont_pattern_entity): Check cache by ftfont_lookup_cache.
5248 Set FONT_SIZE_INDEX of the entity to 0 for a scalable font. For a
bd0af90d
KH
5249 non-scarable font, try to get AVERAGE_WIDTH.
5250 (ftfont_lookup_cache): Argument FOR-FACE is changed to CACHE_FOR.
5251 Change ft_face_cache from a list of a hash-table. Don't check
5252 `ja' and `ko' adstyle here.
5253 (ftfont_get_fc_charset): Call ftfont_lookup_cache with
5254 FTFONT_CACHE_FOR_CHARET.
5255 (ftfont_get_charset): Undo the previous change.
1ac9108a 5256 (ftfont_open): Call ftfont_lookup_cache with FTFONT_CACHE_FOR_FACE.
bd0af90d
KH
5257 (ftfont_close): Likewise.
5258 (ftfont_has_char): Special handling of `ja' and `ko' adstyle.
5259
5260 * font.c (font_sort_entites): Change the meaning of the arg
5261 BEST-ONLY. Don't optimize for VEC of lenght 1.
5262 (font_select_entity): Just return the value of font_sort_entites.
5263
5264 * xfaces.c (merge_face_vectors): Reflect font properties in
5265 to[LFACE_FONT_INDEX] to the other face attributes. Don't call
5266 font_clear_prop if a face attribute doesn't change.
5267
3c908a57
KH
5268 * charset.h (charset_ksc5601): Extern it.
5269
5270 * charset.c (charset_ksc5601): New variable.
5271 (Fdefine_charset_internal): Set charset_ksc5601.
5272 (init_charset_once): Initialize charset_ksc5601 to -1.
5273
d65859c3
DN
52742009-04-15 Dan Nicolaescu <dann@ics.uci.edu>
5275
5276 * fileio.c (history_delete_duplicates): Remove unused declaration.
5277
5278 * callint.c (history_delete_duplicates): New declaration.
5279 (Fcall_interactively): Remove command history duplicates when
5280 history_delete_duplicates is true.
5281
3ba010e5
EZ
52822009-04-14 Eli Zaretskii <eliz@gnu.org>
5283
5284 * buffer.c (syms_of_buffer) <line-spacing>: Doc fix.
5285
06f19b91
KH
52862009-04-14 Kenichi Handa <handa@m17n.org>
5287
5288 * font.c (Ffont_info): Fix docstring. Fix the second element of
5289 the returned value (bug#2949).
5290
2cce8bfc
CY
52912009-04-14 Chong Yidong <cyd@stupidchicken.com>
5292
5293 * xdisp.c (Vwrap_prefix, Vline_prefix): Reflow docstrings.
5294
d156542d
KH
52952009-04-14 Kenichi Handa <handa@m17n.org>
5296
5297 * xfont.c (xfont_has_char): The font has C if C is ASCII and the
5298 encoding charset is ascii_compatible.
5299
5300 * charset.c (Fdefine_charset_internal): Make charset
5301 ascii-compatible if the method is CHARSET_METHOD_OFFSET, the
5302 code_offset is 0, and covers all ASCII characters.
5303
86fa089e
SM
53042009-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
5305
5306 * nsselect.m (symbol_to_nsstring, clean_local_selection_data)
5307 (ns_string_to_pasteboard_internal):
5308 * nsmenu.m (process_dialog):
5309 * nsimage.m (ns_load_image): Use SDATA and ASET where appropriate.
5310 * nsfont.m (nsfont_open): Use XHASH to make it compile with LISP_UNION.
5311 * lisp.h (Fx_load_color_file): Declare.
5312
a8a3728b
KH
53132009-04-13 Kenichi Handa <handa@m17n.org>
5314
1ac9108a 5315 * font.c (font_delete_unmatched): Preserve the order of list elements.
a8a3728b
KH
5316 (font_select_entity): Suppress the code to optimize for the same
5317 kind of fonts.
5318 (font_load_for_lface): Get a font that supports at least ASCII
5319 characters.
5320
5321 * ftfont.c (Qja, Qko): New variables.
5322 (fc_charset_table): Delete uniquifier data for iso8859-1.
5323 (ftfont_get_latin1_charset): New function.
5324 (get_adstyle_property): New function.
5325 (ftfont_pattern_entity): Set FONT_ADSTYLE_INDEX of entity for
5326 bitmap fonts.
5327 (ftfont_lookup_cache): Handle the case that KEY is a font-entity.
5328 Delete iso-8859-1 range from the charset of fonts whose adstyle is
5329 `ko' or `ja'.
5330 (ftfont_get_fc_charset): Call ftfont_lookup_cache with ENTITY.
1ac9108a 5331 (ftfont_get_charset): For iso8859-1, call ftfont_get_latin1_charset.
a8a3728b
KH
5332 (ftfont_list): Don't refuse a font spec with non-nil `adstyle'
5333 property.
5334 (ftfont_open): Call ftfont_lookup_cache with ENTITY.
5335 (syms_of_ftfont): DEFSYM Qja and Qko.
5336
483670b5
KH
53372009-04-09 Kenichi Handa <handa@m17n.org>
5338
12b55765
KH
5339 * charset.c (map_charset_chars): For a charset of `superset'
5340 method, fix calculation of code range.
5341
483670b5
KH
5342 * font.c (font_put_extra): If VAL is nil, delete the slot for PROP
5343 from the list of extra properties.
5344 (font_clear_prop): Be sure to delete `:name' font property.
5345
57d3b93b
KH
53462009-04-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5347
b4b2c2ca
YM
5348 * dispnew.c (redraw_overlapping_rows): Fix detection of
5349 overlapping for topmost and bottommost rows.
5350
1ac9108a 5351 * ftfont.c (ftfont_text_extents): Fix calculation of metrics->descent.
57d3b93b 5352
472c3609
JR
53532009-04-06 Jason Rumney <jasonr@gnu.org>
5354
5355 * frame.c (x_set_font): Avoid C99 mid-block variable declaration.
5356
ab193662
KH
53572009-04-06 Kenichi Handa <handa@m17n.org>
5358
5359 * ftxfont.c (ftxfont_draw_backgrond): Fix args to XFillRectangle.
5360
5361 * xftfont.c (xftfont_open): Fix setting font->underline_thickness.
5362
0c26f026
KH
53632009-04-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5364
5365 * ftfont.c (ftfont_open): Fix checking of the return value of
5366 FT_Load_Char. Fix setting font->underline_thickness.
5367
e173bbce
CY
53682009-04-04 Chong Yidong <cyd@stupidchicken.com>
5369
5370 * terminal.c (Fterminal_name, Fdelete_terminal, Fterminal_name)
5371 (Fterminal_parameters, Fterminal_parameter)
5372 (Fset_terminal_parameter): In doc string, refer to terminal
5373 objects rather than terminal ids.
5374
693a2698
EZ
53752009-04-04 Eli Zaretskii <eliz@gnu.org>
5376
5377 * dosfns.c (system_process_attributes) [SYSTEM_MALLOC]: Don't call
5378 ret_lim_data. (Bug#2867)
5379
d5221487
CY
53802009-04-03 Chong Yidong <cyd@stupidchicken.com>
5381
5382 * term.c (produce_stretch_glyph): Reduce width of stretch glyphs
5383 so they don't get wider than the window, matching 2006-01-23
5384 change to the partner function in xdisp.c (Bug#2800).
5385
223509a3
KH
53862009-04-03 Kenichi Handa <handa@m17n.org>
5387
5388 * print.c (print_object): Make each lowest sub_char_table start a
5389 new line (Bug#2866).
5390
74fcd0b1
KH
53912009-04-02 Kenichi Handa <handa@m17n.org>
5392
5393 * fontset.c (fontset_font): Record no-font when a fontset
5394 explicitly tells not to try another font-specs.
5395
c542407d
SM
53962009-03-30 Pierre Poissinger <pierre.poissinger@gmail.com> (tiny change)
5397
5398 * charset.c (map_charset_for_dump): Add missing UNGCPRO.
5399
e3869731
KH
54002009-03-30 Kenichi Handa <handa@m17n.org>
5401
d8d2f142
KH
5402 * fontset.c (fontset_from_font): Specify only registry in a
5403 font-spec for all characters supported by that registry.
5404
e3869731
KH
5405 * ftfont.c: Fix previous change. Define ftfont_variation_glyphs
5406 even if HAVE_M17N_FLT is not defined.
5407
5da5f805
CY
54082009-03-29 Sebastian Rose <sebastian_rose@gmx.de> (tiny change)
5409
5410 * ftfont.c: Conditionalize prototyping and use of
5411 ftfont_variation_glyphs.
5412
ab226c50
SM
54132009-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
5414
9628fed7
SM
5415 * frame.c (delete_frame): Work around compiler bug.
5416
5417 * editfns.c (general_insert_function): Adjust to insdel.c changes.
5418 * insdel.c (prepare_to_modify_buffer, signal_before_change):
5419 Some more EMACS_INT.
5420 * lisp.h (copy_text, count_size_as_multibyte): Fix last change.
5421
5422 * xdisp.c (dump_glyph): Fix typo.
5423
ae19ba7c
SM
5424 * insdel.c (move_gap, move_gap_both, gap_left, gap_right)
5425 (adjust_markers_gap_motion, adjust_markers_for_delete)
5426 (adjust_markers_for_insert, adjust_point)
5427 (adjust_markers_for_replace, make_gap_larger, make_gap_smaller)
5428 (make_gap, copy_text, count_size_as_multibyte, insert)
5429 (insert_and_inherit, insert_before_markers)
5430 (insert_before_markers_and_inherit, insert_1)
5431 (count_combining_before, count_combining_after, insert_1_both)
5432 (insert_from_string, insert_from_string_before_markers)
5433 (insert_from_string_1, insert_from_gap, insert_from_buffer)
5434 (insert_from_buffer_1, adjust_after_replace)
5435 (adjust_after_replace_noundo, adjust_after_insert, replace_range)
5436 (replace_range_2, del_range, del_range_1, del_range_byte)
5437 (del_range_both, del_range_2, modify_region)
5438 (prepare_to_modify_buffer, signal_before_change)
5439 (signal_after_change, Fcombine_after_change_execute): Use EMACS_INT
5440 for buffer positions and sizes.
5441 * lisp.h: Adjust prototypes accordingly.
5442
5443 * fileio.c (adjust_markers_for_delete): Move declaration to lisp.h.
5444 (non_regular_inserted, non_regular_nbytes, read_non_regular)
5445 (Finsert_file_contents): Use EMACS_INT for buffer positions.
5446
ab226c50
SM
5447 * fileio.c (Finsert_file_contents): Don't limit size to INT_MAX/4.
5448
46dfb8fb
JD
54492009-03-27 Jan Djärv <jan.h.d@swipnet.se>
5450
5451 * frame.c (x_set_font): If the fullscreen property is non-nil, adjust
5452 lines and columns so we keep the same pixel height and width.
5453
5454 * xterm.c (handle_one_xevent): Call x_handle_net_wm_state if
5455 the property _NET_WM_STATE has changed.
46dfb8fb
JD
5456 (x_handle_net_wm_state): New function to update frame parameter
5457 fullscreen.
5458 (x_term_init): Initialize atoms for _NET_WM_STATE.
5459
5460 * xterm.h (struct x_display_info): Add atoms for _NET_WM_STATE.
5461
d347e494
SM
54622009-03-27 Kevin Ryde <user42@zip.com.au>
5463
5464 * keyboard.c (tty_read_avail_input): Don't treat a -1 return from
5465 Gpm_GetEvent as an error that justifies closing the filedescriptor.
5466 * term.c (close_gpm): Get the filedescriptor as a (new) parameter.
5467 (Fgpm_mouse_stop): Pass that new parameter.
5468 * termhooks.h (close_gpm): Adjust prototype.
5469
84db11d6
SM
54702009-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
5471
c95a5008
SM
5472 * lisp.h (Fx_focus_frame): Declare.
5473
84db11d6
SM
5474 * callint.c (Fcall_interactively): For '^' just delegate the work to
5475 handle-shift-selection.
5476 (syms_of_callint): Move declaration of shift-select-mode to simple.el.
5477
0a1958d6
CY
54782009-03-24 Chong Yidong <cyd@stupidchicken.com>
5479
0bfdff23
CY
5480 * editfns.c (Ffloat_time): Doc fix (Bug#2768).
5481
0a1958d6
CY
5482 * data.c (Qinteractive_form): New variable.
5483 (Finteractive_form): Use it.
5484
5485 * eval.c (Fcommandp): Use Qinteractive_form.
5486
58aec0d6
JR
54872009-03-24 Jason Rumney <jasonr@gnu.org>
5488
5489 * fileio.c (Fsubstitute_in_file_name): Always work on a copy.
5490 Calculate total size precisely. Decode environment variables
5491 before substituting. (Bug#38)
5492
553dd618
KH
54932009-03-24 Kenichi Handa <handa@m17n.org>
5494
5495 * font.c (find_font_encoding): Return Qnil for unsupported
639239cf 5496 encoding (Bug#2722).
553dd618 5497
c39ea606
JD
54982009-03-23 Jan Djärv <jan.h.d@swipnet.se>
5499
5500 * gtkutil.c (xg_display_open): Assign a value to gdpy_def, check
5501 that gdpy is set.
5502
bc9b2b5e
AM
55032009-03-22 Alan Mackenzie <acm@muc.de>
5504
5505 * callint.c (Finteractive): Clarify the doc string - even
5506 promptless elements need \n separators.
5507
9f995a76
JR
55082009-03-22 Jason Rumney <jasonr@gnu.org>
5509
5510 * w32term.c (syms_of_w32term): Doc fix for
5511 x-use-underline-position-properties.
5512
22749e9a
EZ
55132009-03-21 Eli Zaretskii <eliz@gnu.org>
5514
5515 * w32.c (getpwuid): Change argument type to unsigned.
5516 (struct w32_id): Change type of `rid' member to unsigned.
5517 (w32_cached_id, w32_add_to_cache, get_name_and_id): Change type of
5518 argument ID to unsigned. All callers changed.
5519 (getuid, geteuid, getgid, getegid): Change return type to unsigned.
5520
e00553bf
EZ
55212009-03-20 Eli Zaretskii <eliz@gnu.org>
5522
5523 * editfns.c (Fuser_uid, Fuser_real_uid): If UID as EMACS_INT is
5524 negative, produce a float value.
5525
5526 * dired.c (make_uid, make_gid): New functions.
5527 (Ffile_attributes): Use them to avoid negative UID and GID.
5528
f761d6b6
JB
55292009-03-20 Juanma Barranquero <lekktu@gmail.com>
5530
5531 * keyboard.c (Fcurrent_idle_time): Reflow docstring.
5532 (syms_of_keyboard) <command-hook-internal, input-method-function>:
5533 Fix typos in docstrings.
5534
d507f8d7
KH
55352009-03-19 Kenichi Handa <handa@m17n.org>
5536
5537 * fontset.c (Fset_fontset_font): When a spec of ASCII font is
f761d6b6
JB
5538 changed, use font_load_for_lface to get a new font object.
5539 Call free_realized_fontset after handling ASCII font change.
d507f8d7
KH
5540
5541 * frame.c (x_set_font): Handle the case that ARG is a cons.
5542
c68845e0
GM
55432009-03-19 Glenn Morris <rgm@gnu.org>
5544
5545 * fileio.c (Fsubstitute_in_file_name): Doc fix.
5546
bfa49dd1
CY
55472009-03-19 Chong Yidong <cyd@stupidchicken.com>
5548
5549 * indent.c (Fvertical_motion): Undo 2005-01-19 change (Bug#2694).
5550
8458d4c1
KH
55512009-03-19 Kenichi Handa <handa@m17n.org>
5552
5553 * charset.c (load_charset_map_from_file): When a mapfile can't be
5554 loaded, signal an error.
5555
78e7d1fe
EZ
55562009-03-18 Eli Zaretskii <eliz@gnu.org>
5557
5558 * dired.c (Ffile_attributes): Make sure UID and GID are always
5559 positive, even if the value is too large for a positive EMACS_INT.
5560 Doc fix.
5561
5562 * editfns.c (Fuser_login_name): Support float arguments. Doc fix.
5563
5da9fdfa
YM
55642009-03-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5565
5566 * xmenu.c (xdialog_show): Move Fredisplay call ...
5567 (Fx_popup_dialog): ... here.
5568
7519c40d
SM
55692009-03-18 Stefan Monnier <monnier@iro.umontreal.ca>
5570
5571 * dired.c (file_name_completion): Disable the first optimization just
5572 installed, since it is not implemented correctly.
5573
2cd298e2
SM
55742009-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
5575
5576 * dired.c (file_name_completion): Check completion-ignored-extensions
c95a5008 5577 only if the entry can affect bestmatch.
2cd298e2
SM
5578 Stop the search early, as Ftry_completion already does.
5579
48d37adf
CY
55802009-03-17 Chong Yidong <cyd@stupidchicken.com>
5581
e10c9c93 5582 * minibuf.c (Vminibuffer_completion_confirm): Doc fix.
48d37adf 5583
9286b16a
CY
55842009-03-15 Chong Yidong <cyd@stupidchicken.com>
5585
5586 * keyboard.c (parse_menu_item): Don't display remappings as menu
5587 equivalent bindings (Bug#788).
5588
f7b146dc
JR
55892009-03-15 Jason Rumney <jasonr@gnu.org>
5590
5591 * w32term.h (WM_EMACS_PAINT): New message.
5592 * w32term.c (w32_read_socket): Use it instead of WM_PAINT.
5593 * w32fns.c (w32_wnd_proc): Change WM_PAINT to WM_EMACS_PAINT
5594 before passing to lisp thread. (Bug#950)
5595
f761d6b6 55962009-03-14 David Reitter <david.reitter@gmail.com>
c6c62e78 5597
d93f9575
CY
5598 * nsterm.m (ns_shutdown_properly, -terminate): Remove global state
5599 variable as it was never reset.
5600 (ns_term_init): Remove initialization of Lisp-settable defaults
5601 and ns_expand_space.
5602 (-setPanelFromDefaultValues): Remove ns_expand_space.
5603 (-showPreferencesWindow): Send new KEY_NS_SHOW_PREFS key.
5604 * nsfont.m (nsfont_open): Remove ns_expand_space, assume -0.5
c6c62e78
DR
5605 i.e. no additional spacing, similar to Carbon port.
5606
d93f9575
CY
5607 * nsterm.h: Define KEY_NS_SHOW_PREFS key.
5608 * nsfns.m (ns-popup-prefs-panel): Remove.
c6c62e78 5609
305018ec
JD
56102009-03-14 Jan Djärv <jan.h.d@swipnet.se>
5611
5612 * sound.c (alsa_configure): Remove call to deprecated
5613 snd_pcm_sw_params_set_xfer_align.
5614
f761d6b6 56152009-03-14 Stephen Berman <stephen.berman@gmx.net>
4a02423f
JD
5616
5617 * gtkutil.c (xg_tool_bar_callback): Set focus back to the frame
5618 after clicking in a detached tool bar.
5619 (xg_tool_bar_proxy_callback): Remove call to Fx_focus_frame.
5620
46e722a9
SM
56212009-03-13 Stefan Monnier <monnier@iro.umontreal.ca>
5622
348db3dd
SM
5623 * fontset.c (fontset_from_font, Ffontset_info): YAILOM (Yet another
5624 int/Lisp_Object mixup).
46e722a9 5625
a3d16f39
KH
56262009-03-13 Kenichi Handa <handa@m17n.org>
5627
5628 * fontset.c (Ffontset_info, check_fontset_name): New arg frame.
fe24f56a 5629 Handle NAME nil and t correctly. Callers changed.
a3d16f39
KH
5630 (font_def_arg, add_arg, from_arg, to_arg): Delete them.
5631 (set_fontset_font): Change ARG to a vector. Handle range_list in
5632 ARG correctly.
5633 (Fset_fontset_font): Fix the case that TARGET is both a script
fe24f56a 5634 name and charset name. Adjust the arg to set_fontset_font for
a3d16f39
KH
5635 the above change.
5636 (fontset_from_font): Fix previous change.
fe24f56a 5637 (Ffontset_info): Adjust for the 2008-07-09 change of fontset
a3d16f39
KH
5638 entry. If FONTSET is the default fontset, don't set the extra
5639 slot of the returning char-table.
5640
b066e6b6
JB
56412009-03-12 Juanma Barranquero <lekktu@gmail.com>
5642
5643 * nsfns.m (Fx_close_connection): Doc fix.
5644 (Fns_do_applescript): Reflow docstring.
5645 (Fns_hide_others, Fns_hide_emacs, Fns_convert_utf8_nfd_to_nfc)
5646 (Fx_display_pixel_width, Fx_display_pixel_height)
5647 (Fns_display_usable_bounds, Fx_display_planes, Fx_show_tip):
5648 Fix typos in docstrings.
5649 (Fns_set_alpha): Fix typos in error messages.
5650
d472514e 56512009-03-12 David Reitter <david.reitter@gmail.com>
d6220c13 5652
d472514e 5653 * termhooks.h [HAVE_NS]: Define NS_NONKEY_EVENT to be used for
d6220c13
DR
5654 non-key system events on NS. Formerly, NON_ASCII_KEYSTROKE_EVENT
5655 were used for such events.
5656
d472514e
JB
5657 * nsterm.m (newFrame, openFile, fulfillService, changeFont)
5658 (toggleToolbar, performDragOperation, runHelp): Use it.
d6220c13 5659
d472514e 5660 * keyboard.c (parse_menu_item) [HAVE_NS]: Treat new event like
d6220c13
DR
5661 NON_ASCII_KEYSTROKE_EVENT, but set used_mouse_menu.
5662
fb930676
KH
56632009-03-11 Kenichi Handa <handa@m17n.org>
5664
ff85581a
KH
5665 * font.h (font_open_by_spec): Extern it.
5666
c50b7e98
KH
5667 * font.c (font_open_by_spec): New function.
5668 (font_open_by_name): Use font_open_by_spec.
5669
fb930676
KH
5670 * frame.c (x_set_font): When ARG is a font-object, don't alter the
5671 fontset of the frame.
5672
5673 * fontset.c (Fset_fontset_font): When a font for ASCII is changed,
5674 modify the default font of frames that use this fontset.
5675 (num_auto_fontsets): New variable.
5676 (fontset_from_font): Use num_auto_fontsets to decide a fontset
5677 name. Be sure to set FONTSET_ASCII to the correct font name.
5678 (update_auto_fontset_alist): New function.
5679
df4e8455
JB
56802009-03-11 Juanma Barranquero <lekktu@gmail.com>
5681
5682 * makefile.w32-in: Update dependencies.
5683
0a375797
AR
56842009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
5685
5686 * nsfns.m (syms_of_nsfns): Remove Qbuffered.
5687
61313fa3
SM
56882009-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
5689
5690 * buffer.c (Fswitch_to_buffer): Revert part of 2008-10-21's change.
5691
b55103fb
CY
56922009-03-10 Chong Yidong <cyd@stupidchicken.com>
5693
5694 * lread.c (Feval_buffer): Doc fix.
5695
dde2559c
KH
56962009-03-09 Kenichi Handa <handa@m17n.org>
5697
5698 * charset.c (Qfile_name_handler_alist): Extern it.
5699 (load_charset_map_from_file): Temporarily bind
5700 `file-name-handler-alist' to nil while calling openp. (Bug#2435)
5701
df4e8455 57022009-03-06 Aaron Ecay <aaronecay@gmail.com> (tiny change)
340e08a4 5703
47f588bb
GM
5704 * nsterm.m (ns_draw_vertical_window_border): Draw 1 pixel wide,
5705 not two, and use NSRectFill instead of NSDrawGroove. (Bug#2352)
340e08a4 5706
4ddf94bd
AR
57072009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
5708
4c9bdfc2
AR
5709 * nsterm.m: Include <signal.h> for SIGTERM used in ns_term_shutdown.
5710 (x_set_window_size): Change back to calculated method of setting
5711 toolbar height under Cocoa. (Bug#2546)
4ddf94bd
AR
5712 (EmacsView-windowWillUseStandardFrame:defaultFrame:): New method.
5713 (EmacsView-drawRect:): Completely shortcircuit if ns_in_resize.
5714
fe41ae9e
AR
5715 * nsfns.m (ns_appkit_version_int): Fix typo in the version macro.
5716
4c9bdfc2
AR
5717 * nsmenu.m (EmacsMenu-addItemWithWidgetValue:): Don't add
5718 accelerator in parens under GNUstep.
5719
825d0875
KH
57202009-03-06 Kenichi Handa <handa@m17n.org>
5721
5722 These changes are to detect incorrect composition sequence without
f3b3be74 5723 looking ahead the source. (Bug#2370)
825d0875
KH
5724
5725 * coding.h: Include "composite.h".
5726 (enum compisition_state): New enum.
5727 (struct compisition_status): New struct.
5728 (struct iso_2022_spec): New member cmp_status.
5729 (struct emacs_mule_spec): New struct.
5730 (struct coding_system): New members ctext_extended_segment_len and
5731 embedded_utf_8. Change the union member
5732 spec.emacs_mule_full_support to spec.emacs_mule.
5733
5734 * coding.c (CODING_ISO_CMP_STATUS): New macro.
5735 (CODING_ISO_EXTSEGMENT_LEN, CODING_ISO_EMBEDDED_UTF_8): New macros.
98a326f7 5736 (MAX_ANNOTATION_LENGTH): Define to 5.
825d0875
KH
5737 (ADD_COMPOSITION_DATA): New arg nbytes.
5738 (emacs_mule_char): New arg cmp_status.
5739 (DECODE_EMACS_MULE_COMPOSITION_CHAR): Delete it.
5740 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): New arg c.
5741 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New arg c.
5742 (DECODE_EMACS_MULE_21_COMPOSITION): Delete the arg c.
5743 (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Likewise.
5744 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Likewise.
5745 (DECODE_EMACS_MULE_COMPOSITION_START): New macro.
5746 (EMACS_MULE_COMPOSITION_END): New macro.
5747 (emacs_mule_finish_composition): New function.
5748 (EMACS_MULE_MAYBE_FINISH_COMPOSITION): New macro.
5749 (decode_coding_emacs_mule): Avoid long looking ahead while
5750 handling composition.
5751 (DECODE_COMPOSITION_RULE): Argument changed to rule and nbytes.
5752 (ENCODE_COMPOSITION_RULE): New macro.
5753 (finish_composition): New function.
5754 (MAYBE_FINISH_COMPOSITION): Call finish_composition.
5755 (DECODE_COMPOSITION_START): New implementation.
5756 (DECODE_COMPOSITION_END): Likewise.
5757 (STORE_COMPOSITION_RULE): New macro.
5758 (decode_coding_iso_2022): Avoid long looking ahead while handling
5759 composition, CTEXT extended segment, and embedded UTF-8.
5760 (setup_coding_system): For a coding of type iso-2022, reset
5761 CODING_ISO_EXTSEGMENT_LEN (coding) and
5762 CODING_ISO_EMBEDDED_UTF_8 (coding).
5763 (get_translation): Delete arguments last_block, from_nchars,
5764 to_nchars. Callers changed.
5765 (produce_chars): Don't modify charbuf. Adjusted for the change of
5766 get_translation.
98a326f7 5767 (produce_composition): Adjust for the new annotation sequence.
825d0875 5768 (handle_composition_annotation): Likewise.
98a326f7 5769 (consume_chars): Adjust for the change of get_translation.
825d0875 5770
ccbc4452
AR
57712009-03-05 Adrian Robert <Adrian.B.Robert@gmail.com>
5772
4ddf94bd 5773 * nsterm.m (ns_select): Shortcircuit if reentrant call. (Bug#2564)
ccbc4452 5774
988a7ddb
KH
57752009-03-05 Kenichi Handa <handa@m17n.org>
5776
5777 * font.c (font_select_entity): New function.
5778 (font_find_for_lface): Use font_select_entity to select a font.
5779
5780 * fontset.c (fontset_find_font): If a font found without
a8a3728b 5781 restricting to the characters C doesn't support C, try to find a
988a7ddb
KH
5782 font with C restriction.
5783
98a326f7 57842009-03-04 Nikolaj Schumacher <me@nschum.de>
2f462d73 5785
be1bce46 5786 * nsfont.m (nsfont_draw): Compare ns_antialias_text against lisp value.
2f462d73 5787
10ea2b82
JR
57882009-03-04 Jason Rumney <jasonr@gnu.org>
5789
2c93b248 5790 * w32fns.c (w32_wnd_proc): Only ignore IME messages for the
4891ba1d 5791 characters that have already been read. (Bug#2569)
2c93b248 5792
10ea2b82
JR
5793 * image.c (xbm_read_bitmap_data, png_load, svg_load_image):
5794 Log an error message if check_image_size failed.
5795 (xpm_load_image, pbm_load, jpeg_load, tiff_load, gif_load)
4891ba1d 5796 (gs_load): Mention max-image-size in size error message. (Bug#2560)
10ea2b82 5797
71a0c011
EZ
57982009-03-02 Eli Zaretskii <eliz@gnu.org>
5799
5800 * callproc.c (Fcall_process): Bind inhibit-modification-hooks to t
5801 when decoding process output.
5802
2f63bba8
RS
58032009-03-01 Richard M Stallman <rms@gnu.org>
5804
5805 * m/mips.h (DATA_SEG_BITS, XUINT, XSET): Definitions disabled.
5806
5807 * emacs.c (gdb_data_seg_bits) [USE_LSB_TAG]: Make it 0.
5808
0a9564cb
EZ
58092009-02-28 Eli Zaretskii <eliz@gnu.org>
5810
5811 * coding.c (decode_coding_utf_8, decode_coding_utf_16)
5812 (decode_coding_emacs_mule, decode_coding_iso_2022)
5813 (encode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
5814 (decode_coding_raw_text, decode_coding_charset)
5815 (setup_coding_system, decode_eol, decode_coding, consume_chars):
5816 Honor inhibit-eol-conversion. (Bug #2186)
5817
449148b3
JR
58182009-02-28 Jason Rumney <jasonr@gnu.org>
5819
5820 * coding.c (detect_coding_charset): If not checking latin extra,
5821 fail on characters between 0x80 and 0xA0. (Bug#2354)
5822
a4aee864
EZ
58232009-02-28 Eli Zaretskii <eliz@gnu.org>
5824
5825 * coding.c (detect_coding_charset): Fix change from 2008-10-21.
2a1573ff 5826 Also, check iso-latin-*, not only iso-8859-*. (Bug#2497)
a4aee864 5827
d88bee5a
GM
58282009-02-27 Glenn Morris <rgm@gnu.org>
5829
5830 * callint.c (Finteractive): Doc fix.
5831
a808f22d
KH
58322009-02-27 Kenichi Handa <handa@m17n.org>
5833
5834 * lread.c (read_escape): Signal an error for invalid \UXXXXXXXX.
5835
caf8d60c
CY
58362009-02-27 Chong Yidong <cyd@stupidchicken.com>
5837
5838 * font.c (font_style_to_value): Set value for unknown symbols to
5839 100 instead of 255.
b61137ea
CY
5840 (weight_table, slant_table, width_table): Treat "unspecified" as
5841 the default value.
caf8d60c 5842
1a0de25c
JB
58432009-02-26 Juanma Barranquero <lekktu@gmail.com>
5844
5845 * fileio.c (Fnext_read_file_uses_dialog_p): Fix typo in docstring.
5846
8fc45744
JB
58472009-02-25 Juanma Barranquero <lekktu@gmail.com>
5848
107bd7d1
JB
5849 * lread.c (Fload): Stop checking Vloads_in_progress and signal
5850 error as soon as a recursive load is detected.
8fc45744 5851
f097e223
AR
58522009-02-24 Adrian Robert <Adrian.B.Robert@gmail.com>
5853
5854 * nsterm.m (ns_ring_bell): Convert rect to window coordinates
5855 before caching.
5856
8810a12f
KH
58572009-02-24 Kenichi Handa <handa@m17n.org>
5858
5859 * fontset.c (fontset_find_font): Fix the condition for checking
5860 unavailable font.
5861
2c7d1565
GM
58622009-02-24 Glenn Morris <rgm@gnu.org>
5863
5864 * xfaces.c (Finternal_set_font_selection_order): Remove leading
5865 whitespace that confuses documentation.
5866
a20878b6
MB
58672009-02-23 Miles Bader <miles@gnu.org>
5868
5869 * process.c (Flist_system_processes, Fprocess_attributes)
5870 (syms_of_process): Rename `system-process-attributes' to
5871 `process-attributes'.
5872
b3b58c01
AS
58732009-02-22 Andreas Schwab <schwab@linux-m68k.org>
5874
1b3b981b
AS
5875 * coding.h (struct coding_system): Make safe_charsets a pointer to
5876 unsigned char.
5877 * coding.c (CODING_ISO_REQUEST): Check for safe_charsets content
5878 being 255.
5879 (SAFE_CHARSET_P): Likewise.
5880 (setup_iso_safe_charsets): Properly setup safe_charsets.
5881 (Fdefine_coding_system_internal): Likewise.
5882 (setup_coding_system): Likewise. Remove unneeded casts.
5883 (detect_coding_iso_2022): Compare Viso_2022_charset_list with
5884 CODING_ATTR_CHARSET_LIST, not CODING_ATTR_SAFE_CHARSETS. Remove
5885 unneeded casts.
5886
b3b58c01
AS
5887 * insdel.c (del_range_2): Don't modify gap contents when called
5888 from decode_coding_object. (Bug#1809)
5889
0b6f228c
CY
58902009-02-21 Chong Yidong <cyd@stupidchicken.com>
5891
5892 * data.c (syms_of_data): Define Qfont_spec, Qfont_entity, and
5893 Qfont_object.
5894 (Ftype_of): Recognize font objects.
5895
5896 * lisp.h: Define Qfont_spec, Qfont_entity, Qfont_object extern.
5897
5898 * font.c (Qfont_spec, Qfont_entity, Qfont_object): Definitions
5899 moved to data.c.
5900
52f8870b
AR
59012009-02-20 Adrian Robert <Adrian.B.Robert@gmail.com>
5902
5903 * nsterm.m (x_make_frame_invisible): Unset async_visible,
5904 async_iconified. Based on a patch by Christian Lynbech
5905 <christian.lynbech@tieto.com>.
5906 (EmacsView-windowDidMiniaturize:): Unset async_visible.
5907
7087d5e9
GM
59082009-02-20 Glenn Morris <rgm@gnu.org>
5909
5910 * syntax.c (Fskip_chars_forward): Fix doc typo.
5911
41d2ceef
CY
59122009-02-20 Chong Yidong <cyd@stupidchicken.com>
5913
5914 * keymap.c (Fkeymap_parent): Doc fix (Bug#2391).
5915
1a3b7ca6
CY
59162009-02-19 Chong Yidong <cyd@stupidchicken.com>
5917
5918 * xfns.c (Fx_create_frame): Give Xft driver a higher priority.
5919
73cce38d
KH
59202009-02-19 Kenichi Handa <handa@m17n.org>
5921
5922 * coding.c (detect_coding): Preserve coding->mode.
2bc550cb 5923 Don't overflow coding->carryover. (Bug#2370)
73cce38d 5924
a51092ee
DN
59252009-02-18 Dan Nicolaescu <dann@ics.uci.edu>
5926
5927 * m/ibmrs6000.h (ADDR_CORRECT): Restore, removed by mistake on 2008-07-23.
5928
c423ecca
KH
59292009-02-18 Kenichi Handa <handa@m17n.org>
5930
5931 * font.c (font_check_otf_features): Fix handling of `nil' element.
5932 (Ffont_spec): Describe :lang and :otf in the docstring.
5933
4c1958f4
AS
59342009-02-16 Andreas Schwab <schwab@suse.de>
5935
5936 * coding.c (Fcheck_coding_systems_region): Fix test for unibyte
5937 string.
5938
5704f39a
KH
59392009-02-16 Kenichi Handa <handa@m17n.org>
5940
5941 * coding.c (Fcheck_coding_systems_region): Fix typo; Qt -> Qnil.
a057d86a 5942 (Bug#1723)
5704f39a 5943
8f0085aa
CY
59442009-02-14 Chong Yidong <cyd@stupidchicken.com>
5945
a057d86a 5946 * dispextern.h (struct iterator_stack_entry): New line_wrap member.
8f0085aa
CY
5947
5948 * xdisp.c (push_it, pop_it): Save and restore line_wrap.
5949 (handle_line_prefix): Suppress wrapping of wrap prefixes.
5950
aff01dd9
EZ
59512009-02-14 Eli Zaretskii <eliz@gnu.org>
5952
5953 * msdos.c (MAX_SCREEN_BUF): New macro.
5954 (IT_write_glyphs): Make screen_buf[] always be MAX_SCREEN_BUF-long.
5955 Encode the entire run of glyphs sharing the same face, instead of
5956 doing that one glyph at a time (fixes a bug with displaying
5957 double-size characters).
5958
ba301db3
AR
59592009-02-13 Adrian Robert <Adrian.B.Robert@gmail.com>
5960
5961 * nsfns.m (ns-read-file-name): BLOCK_INPUT while showing dialog.
5962
5963 * nsmenu.m (pop_down_menu): Check popup_activated_flag.
5964 (ns_popup_dialog, EmacsDialogPanel-runDialogAt:): Let
a057d86a 5965 pop_down_menu do the cleanup work as it is always called. (Bug#2154)
ba301db3
AR
5966
5967 * nsfont.m (nsfont_make_fontset_for_font): For now, don't try to
a057d86a 5968 set fontset font for "mathematical-" sub-scripts. (Bug #2218)
ba301db3 5969
51d861de
SM
59702009-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
5971
ac146f82 5972 * keyboard.c (adjust_point_for_property): Allow stopping between two
51d861de
SM
5973 invisible areas.
5974
7fed8996
JR
59752009-02-12 Jason Rumney <jasonr@gnu.org>
5976
631ea4fb
JR
5977 * w32font.c (check_face_name): Check for fake helv. (Bug#2275)
5978 (add_font_entity_to_list): Call check_face_name even when family
5979 is unspecified.
5980
cb4a3e42
JR
5981 * w32term.c (x_display_pixel_height, x_display_pixel_width):
5982 Release DC when finished. Use NULL window to refer to desktop.
631ea4fb 5983 (w32_term_init): Use NULL window to refer to desktop. (Bug#460)
cb4a3e42 5984
7fed8996 5985 * w32font.c (add_font_entity_to_list): Fix check for substituted
631ea4fb 5986 raster fonts. (Bug#2219)
7fed8996 5987
895416e3
KH
59882009-02-12 Kenichi Handa <handa@m17n.org>
5989
5990 * composite.c (MAX_AUTO_COMPOSITION_LOOKBACK): New macro.
5991 (composition_gstring_width): Fix handling of LGLYPH_YOFF.
5992 (autocmp_chars): Use fast_looking_at. Don't compose more
1dacf998 5993 characters than MAX_COMPOSITION_COMPONENTS.
895416e3
KH
5994 (find_automatic_composition): While looking forward and backward,
5995 check static composition. Fix where to stop looking forward.
5996 (composition_adjust_point): Fix checking of static composition.
5997 (Fcomposition_get_gstring): Pay attention to
1dacf998 5998 MAX_COMPOSITION_COMPONENTS.
895416e3
KH
5999
6000 * lisp.h (fast_looking_at): Extern it.
6001
6002 * search.c (fast_looking_at): New function.
6003
51d861de 6004 * term.c (encode_terminal_code): Adjust for the change of
895416e3
KH
6005 <struct glyph>.u.cmp.to.
6006 (append_composite_glyph): Likewise.
6007
51d861de 6008 * xdisp.c (fill_gstring_glyph_string): Adjust for the change of
895416e3
KH
6009 <struct glyph>.u.cmp.to. Check if the glyph belongs to the same
6010 composition.
51d861de 6011 (append_composite_glyph): Adjust for the change of
895416e3
KH
6012 <strcut glyph>.u.cmp.to.
6013
8510724d
JB
60142009-02-11 Juanma Barranquero <lekktu@gmail.com>
6015
6016 * casetab.c (init_casetab_once):
6017 * coding.c (ALLOC_CONVERSION_WORK_AREA):
6018 * font.c (font_update_lface):
6019 * fontset.c (Fnew_fontset):
6020 * ftfont.c (ftfont_drive_otf):
6021 * xfont.c (xfont_open):
6022 * xftfont.c (xftfont_get_xft_draw): Remove spurious semicolons.
6023
294fa707
SM
60242009-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
6025
6026 * fileio.c (Fwrite_region): !NILP -> CONSP.
6027
b5bfebec
AS
60282009-02-10 Andreas Schwab <schwab@suse.de>
6029
6030 * process.c (send_process): Properly relocate pointer into data
adab88bd 6031 when using encoded data. (Bug#2272)
b5bfebec 6032
cb84a2be
KH
60332009-02-08 ARISAWA Akihiro <ari@mbf.sphere.ne.jp>
6034
6035 * coding.c (detect_coding_charset): Fix previous change.
6036
89e09428
JR
60372009-02-08 Jason Rumney <jasonr@gnu.org>
6038
6039 * w32fns.c (w32_hide_hourglass): Handle case where frame
adab88bd 6040 disappeared while hourglass was displayed. (Bug #2193)
89e09428 6041
4470a277
AS
60422009-02-07 Andreas Schwab <schwab@suse.de>
6043
6044 * unexelf.c (unexec): Fix error message.
6045
3175b12a
AR
60462009-02-07 Adrian Robert <Adrian.B.Robert@gmail.com>
6047
6048 * nsterm.m (EmacsApp-sendEvent:): Defer NSApplicationDefined event
adab88bd 6049 when modal window is active. (Bug #2152)
3175b12a
AR
6050 (applicationShouldTerminate:): Remove now-unneeded while loop
6051 around NSRunAlertPanel.
6052
6053 * nsmenu.m (popupSession): New file-global variable.
6054 (pop_down_menu): End the popupSession before closing dialog.
6055 (ns_popup_dialog): BLOCK_INPUT around dialog presentation.
6056 (EmacsDialogPanel-runDialogAt:): Don't place window (superfluous),
6057 don't query NSApp for events (just sleep instead).
6058
8434d0b8
EZ
60592009-02-07 Eli Zaretskii <eliz@gnu.org>
6060
51d861de
SM
6061 * coding.c (syms_of_coding) <translation-table-for-input>:
6062 Modify doc string to discourage use for character code unification.
8434d0b8 6063
aa82edfd
CY
60642009-02-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6065
6066 * atimer.c (run_timers): Update pending_atimers.
6067
2d283c7c
CY
60682009-02-06 Chong Yidong <cyd@stupidchicken.com>
6069
eb306cab
CY
6070 * image.c (svg_load_image): Fix last change.
6071
2d283c7c
CY
6072 * xfns.c (Fx_create_frame): Signal an error if no font is
6073 found (Bug#2147).
6074
4d8e170e
JB
60752009-02-05 Juanma Barranquero <lekktu@gmail.com>
6076
6077 * character.c (syms_of_character) <script-representative-chars>:
6078 Fix typo in docstring.
6079
c96169a0
AR
60802009-02-04 Adrian Robert <Adrian.B.Robert@gmail.com>
6081
6082 * nsmenu.m (pop_down_menu): New function.
6083 (ns_popup_dialog): Call it on unwind.
6084 (EmacsDialogPanel-runDialogAt:): Check popup_activated_flag and
6085 call timer_check() (Bug#2154).
6086 (EmacsMenu-menuNeedsUpdate:): Don't call ns_update_menu if
6087 handling_signal is set.
6088 (EmacsMenu-fillWithWidgetValue:): Set submenu title.
6089
31fd7c5c 6090 * config.in: Get rid of COCOA_EXPERIMENTAL_CTRL_G.
c96169a0
AR
6091
6092 * s/darwin.h: Same and NO_SOCK_SIGIO as well.
6093
6094 * nsterm.m (ns_read_socket): Same and don't set handling_signal.
6095
51d861de
SM
6096 * keyboard.c (poll_for_input_1, handle_async_input):
6097 Set handling_signal under HAVE_NS.
c96169a0 6098
aacd8ba1
GM
60992009-02-04 Glenn Morris <rgm@gnu.org>
6100
6101 * fileio.c (Fwrite_region): Doc fix (mention annotate-functions).
6102
4cb75c4b
KH
61032009-02-04 Kenichi Handa <handa@m17n.org>
6104
6105 * Makefile.in (composite.o): Depends on frame.h and termhooks.h.
6106
6107 * charset.c (Fchar_charset): New optional arg restriction.
6108
6109 * coding.h (coding_system_charset_list): Extern it.
6110
6111 * coding.c (coding_system_charset_list): New function.
6112
6113 * composite.c: Include coding.h and termhooks.h.
6114 (composition_gstring_p): Fix for the terminal case.
6115 (composition_gstring_width): Likewise.
6116 (fill_gstring_body): Likewise.
6117 (autocmp_chars): For terminal, call Fcomposition_get_gstring with
6118 the frame.
6119 (composition_compute_stop_pos): Adjust cmp_it->stop_pos if point
6120 is within a composition.
867d4bb3 6121 (Fcomposition_get_gstring): Fix the terminal case.
4cb75c4b
KH
6122
6123 * term.c (encode_terminal_code): Fix handling of composition.
6124 (produce_composite_glyph): For static composition, get pixel_width
6125 from struct composition.
6126
826ba17e
AS
61272009-02-02 Andreas Schwab <schwab@suse.de>
6128
6129 * unexelf.c (unexec): Handle unaligned bss offset.
6130
8ad093db
AR
61312009-02-01 Adrian Robert <Adrian.B.Robert@gmail.com>
6132
6133 * nsterm.m (ns_read_socket): Copy 2009-01-29 and 2009-01-30
6134 XT,w32read_socket changes to ns_read_socket.
d0a76a6e 6135
8ad093db
AR
6136 * keyboard.c (handle_interrupt): Don't call
6137 quit_throw_to_read_char() under NS.
d0a76a6e 6138
8ad093db
AR
6139 * blockinput.h: Remove NS-specific code.
6140
4d18a7a2
DN
61412009-01-30 Dan Nicolaescu <dann@ics.uci.edu>
6142
db878925
DN
6143 * dispnew.c (window_change_signal): Don't try to get the size of a
6144 suspended tty frame.
6145 * term.c (Fresume_tty): Resize if the size has changed while the
6146 tty was suspended.
6147
4d18a7a2
DN
6148 * alloc.c (mark_stack): Properly conditionalize previous change.
6149
8984df7c
JB
61502009-01-30 Juanma Barranquero <lekktu@gmail.com>
6151
6152 * w32inevt.c (w32_console_read_socket) [SYNC_INPUT]:
6153 * w32term.c (w32_read_socket) [SYNC_INPUT]:
6154 Remove; this code is not used on Windows.
6155
75f4f1ac
EZ
61562009-01-30 Eli Zaretskii <eliz@gnu.org>
6157
6158 * coding.c (detect_eol, decode_eol): Handle text with DOS-style
6159 EOLs that also has stray ^M characters.
6160
07a1e794
JB
61612009-01-30 Juanma Barranquero <lekktu@gmail.com>
6162
6163 * atimer.c (run_timers, alarm_signal_handler):
6164 * keyboard.c (pending_signals, handle_async_input, init_keyboard):
6165 * w32inevt.c (w32_console_read_socket):
6166 * w32term.c (w32_read_socket):
6167 * xterm.c (XTread_socket): Use "#ifdef SYNC_INPUT" where appropriate.
6168
a8b11cc9
CY
61692009-01-30 Chong Yidong <cyd@stupidchicken.com>
6170
6171 * callproc.c (Vtemp_file_name_pattern): Remove DEFVAR_LISP.
6172 Initialize it as a relative filename pattern.
6173 (init_callproc): Don't initialize Vtemp_file_name_pattern here.
6174 (Fcall_process_region): Simplify temp file creation using
6175 temporary-file-directory.
6176
c279587b
EZ
61772009-01-29 Eli Zaretskii <eliz@gnu.org>
6178
6179 * msdos.c: Rename pending_signals to msdos_pending_signals.
6180 (sig_suspender, sigprocmask): Adjust.
6181
a8fe3242
CY
61822009-01-29 Chong Yidong <cyd@stupidchicken.com>
6183
6184 * keyboard.c (pending_signals): New var.
6185 (poll_for_input, input_available_signal, init_keyboard): Set it.
6186 (process_pending_signals): New function.
6187
6188 * lisp.h (QUIT): Check pending_signals instead of
6189 interrupt_input_pending. Use process_pending_signals.
6190
51d861de 6191 * atimer.c (run_timers, alarm_signal_handler): Update pending_signals.
a8fe3242 6192
51d861de 6193 * process.c (wait_reading_process_output): Use process_pending_signals.
a8fe3242
CY
6194
6195 * sysdep.c (emacs_write): Use process_pending_signals.
6196
6197 * xterm.c (XTread_socket): Update pending_signals.
6198
6199 * w32term.c (w32_read_socket): Update pending_signals.
6200
6201 * w32inevt.c (w32_console_read_socket): Update pending_signals.
6202
6570a1c4
KH
62032009-01-29 Kenichi Handa <handa@m17n.org>
6204
6205 * xftfont.c (xftfont_has_char): New function.
6206 (syms_of_xftfont): Register xftfont_has_char in xftfont_driver.
6207
d72a4afa
AR
62082009-01-29 Adrian Robert <Adrian.B.Robert@gmail.com>
6209
6210 * nsterm.h (EmacsPrefsController.cursorBlinkSlider): Only define
6211 under GNUstep.
6212 (ns_query_color): New declaration.
6213
6214 * nsterm.m (ns_confirm_quit): New variable.
6215 (ns_set_default_prefs, syms_of_nsterm, ns_term_init): Initialize it.
6216 (EmacsApp-applicationShouldTerminate:): Use it.
6217 (EmacsPrefsController): Let user set it.
6218 (ns_query_color): New function.
6219 (ns_defined_color): Use it.
6220 (ns_initialize): Drop.
6221 (ns_term_init): Add two lines from ns_initialize(), and set
6222 input_interrupt_mode to nil.
6223
6224 * image.c (svg_load_image): Don't right-shift background RGB when
6af84d77 6225 obtained from FRAME_BACKGROUND_PIXEL. Under HAVE_NS use ns_query_color.
d72a4afa 6226
9fe78804
KH
62272009-01-28 Kenichi Handa <handa@m17n.org>
6228
6229 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
f088b054
KH
6230 (fontset_get_font_group): Remember that no font-group is specified
6231 for C.
9fe78804 6232
fa57de36
CY
62332009-01-27 Chong Yidong <cyd@stupidchicken.com>
6234
930600e9
CY
6235 * fns.c (concat): Check for string overflow (bug#1787).
6236
fa57de36
CY
6237 * undo.c (undo_limit, undo_strong_limit, Vundo_outer_limit):
6238 Quadruple undo limits (bug#1501).
6239
7179ce7b
KH
62402009-01-27 Kenichi Handa <handa@m17n.org>
6241
6242 * ftfont.c (ftfont_has_char): If the arg FONT is a font-object,
6243 directly use GT_Get_Char_index.
6244
6245 * xftfont.c (struct xftfont_info): New member `index'.
6246
6247 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
51d861de 6248 (Ffontset_font): Adjust for the change of fontset entry.
7179ce7b 6249
5be8fcc0
CY
62502009-01-26 Kenichi Handa <handa@m17n.org>
6251
6252 * fontset.c (fontset_find_font): Fix handling of non-cons return
6253 value of fontset_get_font_group.
6254 (fontset_font): Revert last change.
6255
19ae3e61
JR
62562009-01-26 Jason Rumney <jasonr@gnu.org>
6257
6258 * w32font.c (w32font_list_internal): Return quickly if registry is
6259 unknown. Simplify final return.
6260 (add_font_entity_to_list): Break complex logic down into more
6261 manageable chunks. Move unknown registry check to
6262 w32font_list_internal.
6263
8612b71a
AR
62642009-01-25 Adrian Robert <Adrian.B.Robert@gmail.com>
6265
6266 Changes to remove Feval calls from GUI under NS.
6267
d8038940
JB
6268 * nsterm.h: Move KEY_NS_... definitions here from nsterm.m.
6269 Add NS_TOGGLE_TOOLBAR, NS_PUT_WORKING_TEXT, NS_UNPUT_WORKING_TEXT.
8612b71a
AR
6270 Remove NS_INSERT_WORKING_TEXT, NS_DELETE_WORKING_TEXT.
6271
6272 * nsterm.m: Move KEY_NS_... definitions to nsterm.h.
6273 (EmacsView-toggleToolbar:): Use KEY_NS_TOGGLE_TOOLBAR.
6274 (EmacsView-setMarkedText:,-deleteWorkingText:): Use NS_TEXT_EVENT
6275 instead of NON_ASCII_KEYSTROKE_EVENT.
6276 (EmacsApp-terminate:): Use KEY_NS_POWER_OFF instead of Feval.
6277 (EmacsApp-applicationShouldTerminate:): Query user.
6278 (EmacsPreferencesController-runHelp:): Use KEY_NS_INFO_PREFS
6279 instead of Feval.
6280
6281 * termhooks.h (NS_TEXT_EVENT): New event type under HAVE_NS.
6282
6283 * keyboard.c (kbd_buffer_get_event): Check for it.
6284 (keys_of_keyboard): Define lispy keys for
6285 ns-put/unput-working-text.
6286
6287 * nsmenu.m (ns_popup_dialog): Resync window setting with X and W32
6288 versions.
6289 (EmacsDialog-runDialogAt:): Use NSModalPanelRunLoopMode.
6290
6288ae55
CY
62912009-01-25 Chong Yidong <cyd@stupidchicken.com>
6292
6293 * dispnew.c (buffer_posn_from_coords): Use Fset_buffer instead of
64cc3cf6 6294 setting current_buffer directly. (Bug#2044)
6288ae55 6295
289e7f8f
CY
62962009-01-24 Chong Yidong <cyd@stupidchicken.com>
6297
5ce87308 6298 * fontset.c (fontset_font): If we know there is no font, don't do
d8038940 6299 any work. (Bug#1952, bug#1990).
5ce87308 6300
64cc3cf6 6301 * font.c (font_parse_xlfd): Handle patterns of length < 2. (Bug#1802)
289e7f8f 6302
b3243e6f
AR
63032009-01-23 Adrian Robert <Adrian.B.Robert@gmail.com>
6304
6305 * emacs.c (main): Do fork+exec under --daemon in Cocoa.
d900b2af
AR
6306 (ns_no_defaults): New declaration.
6307 (main): Use it.
e0d2e69a 6308
d900b2af 6309 * nsterm.h (ns_no_defaults): New declaration.
e0d2e69a 6310
d900b2af 6311 * nsfns.m (x_get_string_resource): Don't read when ns_no_defaults.
e0d2e69a 6312
d900b2af
AR
6313 * nsterm.m (ns_no_defaults): New variable.
6314 (ns_initialize): Don't read defaults when ns_no_defaults.
6315 (EmacsView-readSelectionFromPasteboard:)
6316 (writeSelectionToPasteboard:types:): New stubbed-out methods for
d8038940 6317 NSServicesRequests protocol. (Bug#1435)
27521ca6
AR
6318 (ns_dumpglyphs_stretch): New function.
6319 (ns_draw_glyph_string): Use it, parallel Yamamoto Mitsuharu change
d8038940 6320 of 2008-11-15 to other terms. (Bug#615)
b3243e6f 6321
e0d2e69a
AR
6322 * nsimage.m (setPixmapData:): Set to ignore image DPI.
6323
3ac71f5d
CY
63242009-01-23 Giorgos Keramidas <keramida@freebsd.org> (tiny change)
6325
6326 * alloc.c (mark_stack): Use "flushw" instead of "ta 3" assembly
6327 call for Sparc64.
6328
3fe53a83
AR
63292009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
6330
6331 * nsfns.m:
6332 * nsgui.h:
6333 * nsmenu.m:
6334 * nsselect.m:
6335 * nsterm.h:
6336 * nsterm.m: Remove '23' comments that indicated code added during
6337 update from emacs-20 -> emacs-23.
6338
10f87c6f 63392009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
a3b53a85
AR
6340
6341 * nsterm.m (EmavsView-keyDown:): Treat nil as Qnone for
3a88a825 6342 ns_alternate_modifier. (Bug#1217)
a3b53a85 6343
c7cef62d
AR
6344 * nsmenu.m (EmacsMenu-parseKeyEquiv:, addItemWithWidgetValue:):
6345 Display all shortcuts, including those w/o super modifier.
6346
575fb8bd
AR
6347 * nsfns.m (ns-read-file-name): Fix typo in assignment statement.
6348
918b848b
CY
63492009-01-22 Chong Yidong <cyd@stupidchicken.com>
6350
6351 * fileio.c (Vwrite_region_post_annotation_function)
6352 (Vwrite_region_annotation_buffers): New vars.
6353 (build_annotations_unwind): Just reset
6354 Vwrite_region_annotation_buffers.
6355 (Fwrite_region): Initialize Vwrite_region_annotation_buffers.
6356 Call write-region-post-annotation-function.
6357 (build_annotations): Add to Vwrite_region_annotation_buffers if
6358 buffer changes.
6359
a39e2539
AR
63602009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
6361
6362 * nsterm.h (EmacsApp-setAppleMenu:): Conditionalize more correctly on
6363 Tiger.
51d861de
SM
6364 * nsfns.m (ns_do_applescript):
6365 Conditionalize typeUTF16ExternalRepresentation on Tiger.
a39e2539 6366
35ed44db
AR
63672009-01-21 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
6368
6369 * nsterm.m (EV_TRAILER): Always use emacsframe for frame_or_window.
6370
cbe0b5bf
AR
63712009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
6372
6373 * nsmenu.m (NSMENUPROFILE): Change #if style.
4c7077c3 6374
6049d3a0
AR
6375 * nsterm.h (EmacsPrefsController): Add -setPanelFromDefaultValues.
6376
6377 * nsterm.m (x_set_frame_alpha): Add prototype.
a9b4df69
AR
6378 (ns_fake_keydown, EmacsView-keyUp:): New variable and function to
6379 handle Ctrl-tab. (Bug#1841)
6380 (ns_get_color): Use unsigned long long for scanned hex string value.
6381 (ns_term_shutdown): Abort on non SIGTERM signals.
e889fa06 6382 (EmacsPrefsController-setDefaultFont:,-setColors:): Raise the frame.
b71ac3dd 6383 (EmacsPrefsController-setPanelFromDefaultValues): New function.
3a88a825 6384 (EmacsPrefsController-resetToDefaults:): Use it. (Bug#1801)
35ed44db 6385 (ns_font_to_xlfd, ns_fontname_to_xlfd): Remove, unused.
d3810c21 6386 (ns_defined_color): Fix settings of the XColor variable fields:
3a88a825 6387 red,green,blue scale to 2-byte, pixel's parts to 1-byte. (Bug#1663)
cbe0b5bf 6388
d3810c21 6389 * nsimage.m (EmacsImage+allocInitFromFile:): Set to ignore image
3a88a825 6390 DPI. (Bug#1316)
d3810c21
AR
6391 (EmacsImage-setPixelAtX:Y:toRed:green:blue:alpha:): Fix color
6392 values in onTiger section.
4c7077c3 6393
e301e634
CY
63942009-01-19 Chong Yidong <cyd@stupidchicken.com>
6395
7f82490b
CY
6396 * xfaces.c (Finternal_set_lisp_face_attribute, Fx_list_fonts):
6397 Check return value of font_spec_from_name.
64cc3cf6 6398 (Fx_list_fonts): Doc fix. (Bug#1951)
7f82490b
CY
6399
6400 * font.c (font_spec_from_name): Return Qnil if font name could not
6401 be parsed.
6402 (font_parse_name): Treat a `?' character as part of an XLFD.
6403
e301e634
CY
6404 * fns.c (Fsubstring): Doc fix.
6405
1c0db158
KH
64062009-01-19 Kenichi Handa <handa@m17n.org>
6407
51d861de 6408 * ftfont.c (ftfont_lookup_cache): Check the return value of FcFontList.
1c0db158
KH
6409 (ftfont_list): Likewise.
6410
acf20901
JB
64112009-01-18 Juanma Barranquero <lekktu@gmail.com>
6412
fff4e459
JB
6413 * dbusbind.c (Fdbus_register_signal):
6414 * process.c (conv_sockaddr_to_lisp):
6415 * w32fns.c (Fw32_battery_status): Use empty_unibyte_string.
6416
acf20901
JB
6417 * callproc.c (Fgetenv_internal): Doc fix.
6418
e7abcdfb
CY
64192009-01-16 Chong Yidong <cyd@stupidchicken.com>
6420
6421 * xfns.c (x_make_gc): Don't allocate stipple member for gc_values;
6422 it is not even used.
6423
b60861e6
GM
64242009-01-16 Glenn Morris <rgm@gnu.org>
6425
6426 * font.c (Ffont_variation_glyphs): Silence compiler.
6427
8db52afe
JB
64282009-01-15 Juanma Barranquero <lekktu@gmail.com>
6429
6430 * sound.c (SOUND_WARNING): Use _snprintf, for MSVC compatibility.
6431 Reported by David Robinow <drobinow@gmail.com>.
6432
4cddb209
KH
64332009-01-15 Kenichi Handa <handa@m17n.org>
6434
51d861de 6435 * coding.c (detect_coding_system): Fix handling of null_byte_found.
4cddb209 6436
f247f67b
JR
64372009-01-14 Jason Rumney <jasonr@gnu.org>
6438
6439 * frame.c (x_set_font): Always store a font to the font parameter,
fff4e459 6440 never a fontset. (Bug#1562)
f247f67b 6441
f56a4450
KH
64422009-01-14 Kenichi Handa <handa@m17n.org>
6443
6444 * coding.c (TWO_MORE_BYTES): New macro.
fff4e459 6445 (detect_coding_utf_16): Use TWO_MORE_BYTES instead of ONE_MORE_BYTE.
f56a4450 6446
4e99855e
CY
64472009-01-13 Chong Yidong <cyd@stupidchicken.com>
6448
6449 * font.c (font_clear_prop): If clearing the family, clear the font
6450 width index too.
6451
fff4e459 6452 * xfaces.c (Finternal_set_lisp_face_attribute): Revert last change.
4e99855e 6453
24f01470
JB
64542009-01-12 Juanma Barranquero <lekktu@gmail.com>
6455
6456 * sound.c [WINDOWSNT] (SOUND_WARNING): New macro.
6457 (do_play_sound): Use it. Don't pass a hardcoded buffer size to mci
6458 functions, use sizeof.
6459
a41240a3
MR
64602009-01-12 Martin Rudalics <rudalics@gmx.at>
6461
6462 * keyboard.c (read_char): Fix case where last_nonmenu_event
6463 returned a bad value with submenus. (Bug#447)
6464
944636b8
CY
64652009-01-12 Chong Yidong <cyd@stupidchicken.com>
6466
6467 * xfaces.c (Finternal_set_lisp_face_attribute): If setting the
6468 family, clear the font width index too.
6469
0dad7c6f
JR
64702009-01-11 Jason Rumney <jasonr@gnu.org>
6471
6472 * keyboard.c (cmd_error_internal): Exit when errors occur before
6473 frame creation and not in daemon mode. (Bug#1836)
6474
7c2363af
CY
64752009-01-10 Chong Yidong <cyd@stupidchicken.com>
6476
6477 * xdisp.c (pos_visible_p): When iterator stops on the last glyph
6478 of a display vector, backtrack.
6479 (try_window_reusing_current_matrix): Check glyph type before
6480 referencing charpos member.
6481
97b1b294
EZ
64822009-01-10 Eli Zaretskii <eliz@gnu.org>
6483
6484 Fix Bug #876:
6485
6486 * coding.c (inhibit_null_byte_detection): New variable.
6487 (detect_coding, detect_coding_system): Don't pay attention to null
6488 bytes if inhibit_null_byte_detection is non-zero.
51d861de 6489 (syms_of_coding) <inhibit-null-byte-detection>: Declare and document.
97b1b294
EZ
6490 <inhibit-iso-escape-detection>: Doc fix.
6491
4624b6e3
JR
64922009-01-09 Jason Rumney <jasonr@gnu.org>
6493
6494 * w32font.c (add_font_entity_to_list): Don't report unknown
fff4e459 6495 Windows charset as any unrecognized registry. (Bug#1548)
4624b6e3
JR
6496 Only report Unicode Plane 2 fonts as unicode-sip.
6497
323b840c
CY
64982009-01-09 Chong Yidong <cyd@stupidchicken.com>
6499
51d861de
SM
6500 * xfaces.c (Fx_font_family_list): Delete function.
6501 Move compatibility version to faces.el.
323b840c 6502
51d861de 6503 * font.c (Ffont_family_list): Return a list of strings, not symbols.
323b840c 6504
eba7400d
MR
65052009-01-09 Martin Rudalics <rudalics@gmx.at>
6506
6507 * frame.c (x_set_frame_parameters): Remember requested value for
6508 fullscreen before it's reset by the parameter handler.
6509
4b09796d
GM
65102009-01-09 Glenn Morris <rgm@gnu.org>
6511
6512 * keyboard.c (last_command_char): For clarity, rename to...
46e722a9 6513 (last_command_event): ... and update all users.
4b09796d
GM
6514 (last_input_char): For clarity, rename to...
6515 (last_input_event): ... and update all users.
6516 (last-command-char, last-input-char): Move to subr.el as aliases.
6517 * cmds.c, commands.h: Update for last_command_char rename.
6518
14ccea62
CY
65192009-01-08 Chong Yidong <cyd@stupidchicken.com>
6520
51d861de 6521 * font.c (font_open_for_lface): Handle unspecified height attribute.
14ccea62 6522
5f004711
JR
65232009-01-08 Jason Rumney <jasonr@gnu.org>
6524
6525 * w32fns.c (Vx_pointer_shape, Vx_nontext_pointer_shape)
6526 (Vx_mode_pointer_shape, Vx_window_horizontal_drag_shape)
6527 (Vx_hourglass_pointer_shape, Vx_sensitive_text_pointer_shape):
6528 Don't declare.
fff4e459 6529 (syms_of_w32fns): Don't define x-pointer-shape variable. (Bug#1485)
5f004711
JR
6530 (x_create_tip_frame) [GLYPH_DEBUG]: Enable image debugging code.
6531
b71f6f73
KH
65322009-01-07 Kenichi Handa <handa@m17n.org>
6533
50b06221 6534 * fileio.c (Finsert_file_contents): In the case of replace,
f56a4450 6535 remember the coding system used for decoding in
50b06221
KH
6536 coding_system (Bug#1039).
6537
b71f6f73 6538 * coding.c (decode_coding_utf_8): Check byte_after_cr before
79a97217 6539 breaking the loop. (Bug#870)
b71f6f73
KH
6540 (decode_coding_utf_16, decode_coding_emacs_mule)
6541 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
6542 (decode_coding_charset): Likewise.
6543
56f668f7
MR
65442009-01-05 Martin Rudalics <rudalics@gmx.at>
6545
6546 * frame.c (x_set_frame_parameters): Make sure height (width) get
6547 applied when fullwidth (fullheight) is set. (Bug#1522)
6548
5da9424d
JB
65492009-01-04 Juanma Barranquero <lekktu@gmail.com>
6550
6551 * w32.c: Use 64-bit arithmetic to do FILETIME conversions. (Bug#1766)
6552 (utc_base): Declare as ULONGLONG, not long double.
6553 (convert_time_raw): Delete.
6554 (FILETIME_TO_U64, U64_TO_LISP_TIME): New macros.
6555 (initialize_utc_base): New function.
6556 (convert_time): Use FILETIME_TO_U64, initialize_utc_base.
6557 (convert_from_time_t): Use initialize_utc_base; compute result with
6558 64-bit arithmetic.
6559 (process_times): Use FILETIME_TO_U64, U64_TO_LISP_TIME.
6560
c4605e09
EZ
65612009-01-03 Eli Zaretskii <eliz@gnu.org>
6562
9acef61c 6563 * process.c (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess)
c4605e09
EZ
6564 (Qttname, Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime)
6565 (Qcutime, Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs)
6566 (Quser, Qgroup, Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime)
6567 [!subprocesses]: Define.
6568 (syms_of_process) [!subprocesses]: Intern and staticpro them.
6569 (Flist_system_processes, Fsystem_process_attributes)
6570 [!subprocesses]: Call list_system_processes and
6571 system_process_attributes instead of returning Qnil.
6572
9acef61c
JB
6573 * dosfns.c (system_process_attributes, list_system_processes):
6574 New functions.
c4605e09
EZ
6575
6576 * vm-limit.c (ret_lim_data) [MSDOS]: New function.
6577
6578 * sysdep.c (list_system_processes, system_process_attributes) [MSDOS]:
6579 Don't use the default (no-op) implementation.
6580
8b7d0a16
JR
65812009-01-03 Jason Rumney <jasonr@gnu.org>
6582
a6d46bc1
JR
6583 * keyboard.c (parse_modifiers_uncached): Wheel events are
6584 clicks (bug#687).
6585
8b7d0a16
JR
6586 * w32term.c (x_query_colors, x_query_color): New functions.
6587
6588 * image.c (x_to_xcolors, png_load): Eliminate W32 specific code.
6589 (svg_load_image): Cast returned pointers from dynamically loaded
6590 functions. Eliminate W32 specific code.
6591
bfe11752
DN
65922009-01-02 Dan Nicolaescu <dann@ics.uci.edu>
6593
89e2438a
DN
6594 * nsfns.m (x_set_foreground_color, x_set_background_color)
6595 (x_set_cursor_color, x_set_icon_name, x_explicitly_set_name)
6596 (x_set_title, x_set_icon_type, x_set_cursor_type): Rename to use
6597 x_ prefix instead of ns_. Update references.
6598 (syms_of_nsfns): Add a FIXME comment.
6599
6600 * nsterm.m (x_set_cursor_type): New prototype.
6601 (setValuesFromPanel): Use it instead of the old ns_ prefixed name.
6602
bfe11752
DN
6603 * sysdep.c (system_process_attributes): Provide Qtime and Qctime
6604 for Solaris instead of incorrectly providing Qutime and Qcutime.
6605
031da700
EZ
66062009-01-02 Eli Zaretskii <eliz@gnu.org>
6607
6608 * w32.c (process_times): Compute sum of utime and stime.
6609 (system_process_attributes): Add Qtime to the alist.
6610
6611 * sysdep.c (system_process_attributes): Compute Qtime and Qctime
6612 and add them to the alist.
6613
6614 * process.c (top level) <Qtime, Qctime>: New variables.
6615 (syms_of_process): staticpro them.
6616 (Fsystem_process_attributes): Add their documentation to the doc
6617 string.
6618
6619 * process.h: Declare Qtime and Qctime.
6620
df23bf08
JR
66212009-01-02 Jason Rumney <jasonr@gnu.org>
6622
9acef61c 6623 * image.c (Qgobject): New symbol.
df23bf08
JR
6624 (syms_of_image): Initialize it.
6625 (init_svg_functions): Load some functions from gobject library.
6626
5bbdf7aa
DN
66272009-01-01 Dan Nicolaescu <dann@ics.uci.edu>
6628
6629 * frame.c (make_terminal_frame): Remove redundant code and useless
6630 block.
6631
63136da6
AS
66322009-01-01 Andreas Schwab <schwab@suse.de>
6633
6634 * process.c (conv_sockaddr_to_lisp): Add workaround for
6635 getsockname bug on BSD.
6636
9ef69046
CY
66372009-01-01 Chong Yidong <cyd@stupidchicken.com>
6638
d6fafbe0
CY
6639 * xfns.c (x_create_tip_frame): Set border width of the X window.
6640
51d861de 6641 * xfaces.c (Finternal_set_lisp_face_attribute): Improve error message.
9ef69046 6642
f9c34147
JR
66432009-01-01 Jason Rumney <jasonr@gnu.org>
6644
9acef61c 6645 * w32term.c (x_new_font): Return font object, not fontset. (Bug#119)
f9c34147
JR
6646 Don't block input, as per earlier xterm.c changes.
6647
f5497e45
AR
66482008-12-31 Adrian Robert <Adrian.B.Robert@gmail.com>
6649
6650 * nsfns.m (ns_appkit_version_str): Rename from ns_appkit_version.
6651 (ns_appkit_version_int): New function.
6652 (x-server-version): Use ns_appkit_version_int and follow 21+
6653 convention of returning 3 integers.
6654
c19cab20
KH
66552008-12-30 Kenichi Handa <handa@m17n.org>
6656
6657 * character.h (CHAR_VARIATION_SELECTOR_P): New macro.
6658 (CHAR_SURROGATE_PAIR_P): New macro.
6659
6660 * font.h (struct font_driver): New member get_variation_glyphs.
6661
9acef61c 6662 * font.c (font_range): Don't require a font for a variation selector.
c19cab20
KH
6663 (Ffont_variation_glyphs): New function.
6664 (syms_of_font): Defsubr it.
6665
6666 * ftfont.c (ftfont_driver): Set the member get_variation_glyphs to
6667 ftfont_variation_glyphs.
6668 (setup_otf_gstring): New function.
6669 (ftfont_drive_otf): Use it.
6670 (ftfont_shape_by_flt): Handle variation selector.
6671 (ftfont_variation_glyphs): New function.
6672
28cd591f
MR
66732008-12-30 Martin Rudalics <rudalics@gmx.at>
6674
6675 * frame.c (Vemacs_iconified): Remove.
6676
7f714baf
JR
66772008-12-30 Jason Rumney <jasonr@gnu.org>
6678
6679 * frame.c (store_frame_param, x_get_arg): Enable newer code on
9acef61c 6680 WINDOWSNT too, as related changes have already been synced. (Bug#117)
7f714baf 6681
9d2d22ab
CY
66822008-12-30 Chong Yidong <cyd@stupidchicken.com>
6683
6684 * indent.c (Fvertical_motion): Don't advance iterator if we have
6685 reseated to the desired position.
6686
6687 * xdisp.c (move_it_to): Handle GET_FROM_STRETCH method when
6688 checking for pos match.
6689
545312c2
KH
66902008-12-30 Kenichi Handa <handa@m17n.org>
6691
1ede3eb6
KH
6692 * insdel.c (copy_text): To convert a non-ASCII char to unibyte,
6693 just get the low 8-bit of the code.
6694
545312c2
KH
6695 * font.c (font_intern_prop): Validate str as multibyte.
6696
bd7bbf29
DN
66972008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
6698
31e0750e
DN
6699 * dispextern.h (struct face): Move lface and hash from the middle
6700 of bitfields.
6701
bd7bbf29
DN
6702 * Makefile.in (INTERVALS_H): Rename from INTERVAL_SRC, update all users.
6703
b5672e7c
DN
67042008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
6705
6706 * Makefile.in (INTERVAL_SRC): Also depend on dispextern.h.
6707 (coding.o, dispnew.o, keymap.o, msdos.o): Depend on INTERVAL_SRC
6708 instead of intervals.h.
6709
d704470f
AS
67102008-12-26 Andreas Schwab <schwab@suse.de>
6711
6712 * keymap.c (map_keymap_char_table_item): Make a copy of KEY if it is a
6713 cons.
6714
54b33868
MR
67152008-12-26 Martin Rudalics <rudalics@gmx.at>
6716
6717 * textprop.c (Qminibuffer_prompt): New variable.
6718 (syms_of_textprop): Initialize it.
6719 * callint.c (Fcall_interactively): For `c', `k', and `K' prompt
6720 in minibuffer-prompt face. (Bug#1662)
6721
40b615d6
JR
67222008-12-25 Jason Rumney <jasonr@gnu.org>
6723
6724 * buffer.c (Fbuffer_swap_text): Use POINTER_TYPE.
6725
baae5c2d
JR
67262008-12-24 Jason Rumney <jasonr@gnu.org>
6727
6728 * ralloc.c (r_alloc_reset_variable): New function.
6729
6730 * buffer.c (Fbuffer_swap_text) [REL_ALLOC]: Reset ralloc's internal
9acef61c 6731 record of what points where. (Bug#716)
baae5c2d 6732
a9051c88
DN
67332008-12-22 Dan Nicolaescu <dann@ics.uci.edu>
6734
6735 * minibuf.c (read_minibuf): Follow the non-interactive case when
6736 running as a daemon, before detaching.
6737
8b146312
AS
67382008-12-22 Andreas Schwab <schwab@suse.de>
6739
6740 * buffer.c (init_buffer): Use realloc instead of xrealloc.
6741 * gtkutil.c (free_widget_value): Use xfree instead of free.
6742
56f2de10
MR
67432008-12-22 Martin Rudalics <rudalics@gmx.at>
6744
6745 * frame.c (delete_frame): New function derived from
6746 Fdelete_frame to handle Qnoelisp value for FORCE argument.
6747 Delete last frame iff FORCE equals Qnoelisp. (Bug#1450)
6748 (Fdelete_frame): Call delete_frame. Remove line from doc-string
6749 saying that FORCE non-nil doesn't run `delete-frame-functions'.
6750 * frame.h: Extern delete_frame.
6751 * window.c (window_loop):
6752 * terminal.c (delete_terminal):
6753 * xterm.c (x_connection_closed):
6754 * xfns.c (Fx_hide_tip):
9acef61c 6755 * w32fns.c (Fx_hide_tip): Call delete_frame instead of Fdelete_frame.
56f2de10 6756
1fc200d6
JR
67572008-12-21 Jason Rumney <jasonr@gnu.org>
6758
6759 * w32uniscribe.c (uniscribe_encode_char): Return FONT_INVALID_CHAR
6760 when character maps to .notdef character.
6761
5e252df2
SM
67622008-12-21 Stefan Monnier <monnier@iro.umontreal.ca>
6763
6764 * keyboard.c (cmd_error_internal): Don't exit in daemon mode, bug#1310.
6765
99b72cc4
JR
67662008-12-20 Jason Rumney <jasonr@gnu.org>
6767
6768 * frame.c (Fmake_terminal_frame): Raise an error when called from
9acef61c 6769 a graphical frame on Windows. (Bug#1325)
99b72cc4 6770
acc49a52
JD
67712008-12-20 Jan Djärv <jan.h.d@swipnet.se>
6772
6773 * frame.c (Fdelete_frame): Set f->menu_bar_vector to Qnil.
6774
6ea15123
CY
67752008-12-20 Chong Yidong <cyd@stupidchicken.com>
6776
6777 * minibuf.c (Fread_buffer): Doc fix.
6778
b2dab6c8
JR
67792008-12-20 Jason Rumney <jasonr@gnu.org>
6780
54ea0c87 6781 * fileio.c (Fexpand_file_name): Do not allow ../ to go beyond the
9acef61c 6782 server name in UNC paths. (Bug#719)
54ea0c87 6783
b2dab6c8 6784 * coding.c (decode_coding): Clear chars_at_source flag when using
9acef61c 6785 charbuf. (Bug#1035)
b2dab6c8 6786
6d1921be
DN
67872008-12-19 Daniel Engeler <engeler@gmail.com>
6788
6789 * sysdep.c (serial_configure): Fix typo.
6790
53934c98
DN
67912008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
6792
6793 * sysdep.c: Include alloca.h.
f4f634e8
DN
6794 (system_process_attributes): Add implementation for Solaris.
6795
6796 * s/sol2-10.h (HAVE_PROCFS, _STRUCTURED_PROC): New defines.
53934c98 6797
06e111a6
DN
67982008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
6799
6800 Reorganize implementation of Flist_system_processes and
6801 Fsystem_process_attributes. No functional changes.
6802 * process.c: Don't #include pwd.h, grp.h and limits.h.
6803 (Flist_system_processes): Just call list_system_processes.
6804 (Fsystem_process_attributes): Just call system_process_attributes.
6805 (procfs_list_system_processes, time_from_jiffies)
6806 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
6807 (procfs_get_total_memory, procfs_system_process_attributes): Move ...
6808
6809 * sysdep.c: ... here. Include pwd.h, grp.h and limits.h.
6810 (list_system_processes): Rename from
6811 procfs_list_system_processes. Enclose in #ifdef HAVE_PROCFS.
6812 Provide a do nothing implementation.
6813 (system_process_attributes): Rename from
6814 procfs_list_system_processes.
6815 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
9acef61c 6816 (procfs_get_total_memory): Enclose in #ifdef GNU_LINUX.
06e111a6
DN
6817
6818 * w32.c (list_system_processes): Rename from
6819 w32_list_system_processes.
6820 (system_process_attributes): Rename from
6821 w32_system_process_attributes.
6822
6823 * s/gnu-linux.h (LISTPROC, PROCATTR): Remove.
6824
6825 * process.h (w32_list_system_processes)
6826 (w32_system_process_attributes): Remove.
362654a6
JB
6827 (list_system_processes, system_process_attributes):
6828 New prototypes.
06e111a6 6829
6a705b23
KH
68302008-12-19 Kenichi Handa <handa@m17n.org>
6831
6832 * xfont.c (xfont_decode_coding_xlfd): New function.
6833 (xfont_encode_coding_xlfd): New function.
6834 (xfont_list_pattern): Decode XLFD by iso-8859-1.
6835 (xfont_list): Decode and encode XLFD by iso-8859-1.
6836 (xfont_match): Likewise.
6837 (xfont_list_family): Likewise.
6838 (xfont_open): Likewise.
6839
d66c0241 6840 * ftfont.c (ftfont_open): Generate a multibyte string if given
6a705b23
KH
6841 names are utf-8.
6842
d66c0241 6843 * xftfont.c (xftfont_open): Generate a multibyte string if given
6a705b23
KH
6844 names are utf-8.
6845
5a130941
JD
68462008-12-18 Jan Djärv <jan.h.d@swipnet.se>
6847
6848 * gtkutil.c (xg_frame_resized): Remove check if rows/columns have
6849 changed.
bfd20325
JD
6850 (xg_tool_bar_proxy_callback): Put focus on the frame after we have
6851 clicked on a detached tool bar button.
5a130941 6852
fd95644b
DN
68532008-12-18 Dan Nicolaescu <dann@ics.uci.edu>
6854
6855 * emacs.c (main): Print and error and exit when no data is read
6856 from the pipe.
6857
e6eee6ae
JR
68582008-12-17 Jason Rumney <jasonr@gnu.org>
6859
6860 * w32font.c (w32font_has_char): Always return -1.
6861
a35dd56b
KH
68622008-12-16 Kenichi Handa <handa@m17n.org>
6863
6864 * font.c (font_open_entity): Fix previous change.
6865
0e3635c2
DN
68662008-12-16 Dan Nicolaescu <dann@ics.uci.edu>
6867
6868 * process.c: Include <limits.h>.
6869
d4835507 68702008-12-16 Chetan Pandya <pandyacus@sbcglobal.net> (tiny change)
b5356c39
CY
6871
6872 * font.c (font_update_drivers): Fix mistake in reconstructing the
6873 driver list.
6874
68752008-12-16 Chong Yidong <cyd@stupidchicken.com>
6876
6877 * font.c (font_clear_cache): Fix format of font cache data.
6878
e2cbc401
CY
68792008-12-15 Chong Yidong <cyd@stupidchicken.com>
6880
6881 * xftfont.c (xftfont_open): Free Xft font pattern if
6882 XftFontOpenPattern fails.
6883
6884 * xterm.c (x_free_frame_resources): Remove extraneous call to
6885 free_frame_faces.
6886
b131d535
CY
68872008-12-13 Chong Yidong <cyd@stupidchicken.com>
6888
6889 * xterm.c (x_delete_display): Move xim_close_dpy call to
6890 x_delete_terminal.
6891 (x_delete_terminal): Call xim_close_dpy.
6892
e6df5336
JR
68932008-12-13 Jason Rumney <jasonr@gnu.org>
6894
6895 * w32font.c (intern_font_name): New function.
6896 (add_font_name_to_list, w32_enumfont_pattern_entity): Use it.
6897 (w32font_open_internal, Fx_select_font): Decode font name.
6898 (fill_in_logfont, list_all_matching_fonts): Encode font name.
6899
6900 * w32font.h (intern_font_name): Declare new function.
6901
6902 * w32uniscribe.c (add_opentype_font_name_to_list):
6903 Use intern_font_name.
6904
20d68145
CY
69052008-12-13 Chong Yidong <cyd@stupidchicken.com>
6906
9f2554de
CY
6907 * frame.c (Fdelete_frame): Call free_font_driver_list.
6908
3d9bec9a
CY
6909 * font.c (free_font_driver_list): Implement missing function.
6910
20d68145
CY
6911 * w32term.c (w32_term_init): Don't initialize the image cache
6912 here; it will be done in init_frame_faces.
6913
6914 * xterm.h (struct xim_inst_t): Definition moved from xterm.c.
6915 (struct x_display_info): Remove unused member null_pixel. New
6916 member xim_callback_data.
6917
6918 * xterm.c (struct xim_inst_t): Definition moved to xterm.h.
6919 (xim_initialize): Save pointer to callback function data.
6920 (xim_close_dpy): Free callback function data. Call XCloseIM,
6921 reverting 2008-11-04 change by David Smith.
6922 (x_term_init): Don't initialize the image cache here; it will be
6923 done in init_frame_faces. Remove ancient "null_pixel" cruft.
6924 (x_delete_display): Free x_dnd_atoms member.
6925
96f9306b
KH
69262008-12-13 Kenichi Handa <handa@m17n.org>
6927
6dec9044
JB
6928 * font.c (font_rescale_ratio): Moved from xfaces.c.
6929 Argument type changed. Handle a font-spec too.
96f9306b 6930 (font_score): Check Vface_font_rescale_alist.
6dec9044 6931 (font_open_entity): Likewise. (Bug#1547)
96f9306b
KH
6932
6933 * xfaces.c (font_rescale_ratio): Moved to font.c.
6934
8d5b4964
CY
69352008-12-13 Chong Yidong <cyd@stupidchicken.com>
6936
6937 * xfns.c (Fx_wm_set_size_hint): Check if the frame is an X frame.
6938
e6df5336
JR
69392008-12-12 Jason Rumney <jasonr@gnu.org>
6940
6941 * w32fns.c (x_display_info_for_name, Fx_open_connection): Set
6942 Vwindow_system_version to the real w32 major version.
6943
97c6058a
DN
69442008-12-12 Dan Nicolaescu <dann@ics.uci.edu>
6945
6946 * term.c (init_tty): Move setting the terminal name before the
6947 potential user: maybe_fatal.
6948
ec4e88d7
CY
69492008-12-11 Chong Yidong <cyd@stupidchicken.com>
6950
d4835507
JB
6951 * term.c (tty_free_frame_resources): Renamed from delete_tty_output;
6952 all callers changed. Call free_frame_faces to free the face cache.
ec4e88d7 6953
b4233ec9
JR
69542008-12-11 Jason Rumney <jasonr@gnu.org>
6955
8ec71e23 6956 * w32font.c (fill_in_logfont): Don't assume symbol script means
9acef61c 6957 SYMBOL_CHARSET. (Bug#547)
8ec71e23 6958
b4233ec9 6959 * w32uniscribe.c (uniscribe_encode_char): Increase glyph buffer
9acef61c 6960 size for surrogates. (Bug#1096, bug#872)
b4233ec9 6961
011a0143
JB
69622008-12-11 Juanma Barranquero <lekktu@gmail.com>
6963
6964 * w32proc.c (Fw32_get_locale_info): Decode long form of locale name.
6965
3c309f34
JB
69662008-12-11 Juanma Barranquero <lekktu@gmail.com>
6967
6968 * process.c (Fsystem_process_attributes, syms_of_process):
6969 Fix typo in name of Ssystem_process_attributes.
6970 Reported by Ulrich Mueller <ulm@kph.uni-mainz.de>.
6971
fedc6ab5
JB
69722008-12-11 Juanma Barranquero <lekktu@gmail.com>
6973
6974 * syntax.c (Fmodify_syntax_entry): Doc fix.
6975
ba3de0e8
JB
69762008-12-10 Juanma Barranquero <lekktu@gmail.com>
6977
6978 * font.c (Ffont_spec): Move usage to end of docstring.
6979
174f1c74
JR
69802008-12-10 Jason Rumney <jasonr@gnu.org>
6981
6982 * w32font.c (Qcham): New symbol.
6983 (font_supported_scripts): Add cham, and comments for other new
6984 scripts in bitfield from OpenType spec.
9d32f818
JR
6985 (add_font_entity_to_list): Limit unicode-sip fonts to those that
6986 contain characters beyond the bmp.
174f1c74 6987
7b649478
KH
69882008-12-10 Kenichi Handa <handa@m17n.org>
6989
6990 * ftfont.c (fc_charset_table): Add "unicode-sip".
2ae37cf0 6991 (ftfont_spec_pattern): Lookup fc_charset_table for the registry
7b649478
KH
6992 Qunicode_sip.
6993
2133e2d1
JB
69942008-12-10 Juanma Barranquero <lekktu@gmail.com>
6995
6996 * coding.c (QCdefault_char): Rename from QCdefalut_char.
6997 (Fcoding_system_put): Use QCdefault_char.
6998 (syms_of_coding): Set QCdefault_char, not QCdefalut_char.
6999
9af886ee
CY
70002008-12-09 Chong Yidong <cyd@stupidchicken.com>
7001
74d819eb
CY
7002 * xftfont.c (syms_of_xftfont): Fix typo.
7003
4ccfa1c0 7004 * buffer.c (Fbuffer_swap_text): Signal error if swapping a dead buffer.
9af886ee 7005
7c19d3ae
DN
70062008-12-08 Dan Nicolaescu <dann@ics.uci.edu>
7007
7008 * emacs.c (main): Close daemon_pipe on exec.
7009
567826bb
CY
70102008-12-08 Chong Yidong <cyd@stupidchicken.com>
7011
7012 * termchar.h (struct tty): New members termcap_term_buffer and
7013 termcap_strings_buffer.
7014
7015 * term.c (encode_terminal_code): Free any previous memory blocks
4ccfa1c0 7016 before calling xmalloc for encode_terminal_src or encode_terminal_dst.
567826bb
CY
7017 (maybe_fatal): Buffer argument deleted. Don't free buffer here.
7018 All callers changed.
7019 (init_tty): Store termcap data and string buffers in new struct
7020 tty members termcap_term_buffer and termcap_strings_buffer.
7021 (delete_tty): Free them.
4ccfa1c0 7022 (syms_of_term): Initialize encode_terminal_src and encode_terminal_dst.
567826bb 7023
aa96c42b
SZ
70242008-12-07 Seiji Zenitani <zenitani@mac.com>
7025
7026 * nsfns.m (ns_set_background_color): Remove code duplication.
4ccfa1c0 7027 It was a substitute for face-transparency on OS X 10.3.
aa96c42b 7028
b7e1d896
CY
70292008-12-06 Chong Yidong <cyd@stupidchicken.com>
7030
7031 * coding.c (make_conversion_work_buffer): Disable buffer
7032 modification hooks in the work buffer.
7033
b5ec91a5
EZ
70342008-12-05 Eli Zaretskii <eliz@gnu.org>
7035
7036 * process.c (procfs_system_process_attributes): If `nread' has a
7037 negative value, assign zero to it.
7038
a5d2a52b
CY
70392008-12-05 Chong Yidong <cyd@stupidchicken.com>
7040
68c5540b 7041 * eval.c (Vdebug_on_error): Doc fix.
a5d2a52b 7042
7bf1bb21
KH
70432008-12-05 Kenichi Handa <handa@m17n.org>
7044
7045 * ftfont.c (ftfont_shape_by_flt): Use "combining" flt if the
7046 second character is a combining character.
7047
2fdc7d00
EZ
70482008-12-05 Eli Zaretskii <eliz@gnu.org>
7049
7050 * process.c (procfs_system_process_attributes): Don't use cmd,
7051 cmdsize, and q without initializing them first.
7052
bf6bfba8
JR
70532008-12-04 Jason Rumney <jasonr@gnu.org>
7054
7055 * w32font.c (w32font_draw): Initialize orig_clip before getting
7056 it, and delete it when finished.
7057
a3b1a468
DN
70582008-12-04 Dan Nicolaescu <dann@ics.uci.edu>
7059
7060 * keyboard.c (kbd_buffer_get_event): Follow the non-interactive
7061 case when running as a daemon before detaching.
7062
8b8be8eb
JB
70632008-12-03 Juanma Barranquero <lekktu@gmail.com>
7064
805f2638 7065 * w32.c (init_environment): Don't unload library shell32.dll.
8b8be8eb 7066
b1bde622
KH
70672008-12-03 Kenichi Handa <handa@m17n.org>
7068
e500c47d
KH
7069 * font.c (font_at): Set `multibyte' at first.
7070
ca516334
KH
7071 * coding.c (decode_coding_charset): Check type of an element of
7072 vector VALIDS.
7bf1bb21 7073 (encode_coding_emacs_mule): Be sure to set `code'.
ca516334 7074
4ccfa1c0 7075 * fontset.c (face_for_char): Handle invalid charset property correctly.
b1bde622
KH
7076 (font_for_char): Likewise.
7077
1e5ecd37
CY
70782008-12-03 Chong Yidong <cyd@stupidchicken.com>
7079
d5b01609 7080 * font.c (Fopen_font): Compute pixel size correctly.
ba207571
CY
7081 (font_update_lface): Handle fonts with corrupted size specs,
7082 i.e. non-int and non-float.
d5b01609 7083
11e3a6e4 7084 * ftfont.c (ftfont_match): Initialize entity variable.
9a48c8cb 7085 (ftfont_resolve_generic_family): Avoid using uninitialized var.
8adb3a3b 7086 (ftfont_list_family): Initialize list var earlier.
11e3a6e4 7087
ab06788b
CY
7088 * xselect.c (Fx_get_cut_buffer_internal): Fix memory leak.
7089
1e5ecd37 7090 * xterm.c (x_draw_glyph_string): Fall back on
0cff82ab 7091 underline_minimum_offset for underline position.
1e5ecd37 7092
63c125ab
DN
70932008-12-03 Dan Nicolaescu <dann@ics.uci.edu>
7094
7095 * keyboard.c (read_char_help_form_unwind): Specify the type for ARG.
7096
7097 * character.c (c_string_width): Specify the type for LEN.
7098
3a8406e1
KH
70992008-12-03 Kenichi Handa <handa@m17n.org>
7100
4ccfa1c0 7101 * coding.c (decode_coding_utf_16): Initialize consumed_chars_base to 0.
453b38f0 7102 (decode_coding_utf_8): Likewise.
4ccfa1c0 7103 (detect_coding_system): Initialize utf_16_le_eol to -1, val to Qnil.
4533845d 7104 (produce_chars): Initialize consumed_chars to 0.
3a8406e1 7105
651df7d9
CY
71062008-12-02 Chong Yidong <cyd@stupidchicken.com>
7107
7108 * keyboard.c (make_lispy_position): Only use PT if the selected
7109 window is current.
7110
1f625c6c
AS
71112008-12-02 Andreas Schwab <schwab@suse.de>
7112
f7741ce9
AS
7113 * font.c (font_unparse_fcname): Fix use of uninitialized variable.
7114
1f625c6c
AS
7115 * doprnt.c (doprnt1): Fix size of charbuf.
7116
92bc2678
CY
71172008-12-02 Chong Yidong <cyd@stupidchicken.com>
7118
7119 * keyboard.c (timer_check): Revert last change.
7120
93b9e8cc
JB
71212008-12-02 Juanma Barranquero <lekktu@gmail.com>
7122
7123 * makefile.w32-in ($(BLD)/w32console.$(O)): Fix silly, silly typo.
7124
fd7a37d5
JB
71252008-12-01 Juanma Barranquero <lekktu@gmail.com>
7126
7127 * makefile.w32-in: Update dependencies.
7128 (CONFIG_H): Add $(EMACS_ROOT)/nt/inc/sys/time.h.
7129
c115043b
AS
71302008-12-01 Andreas Schwab <schwab@suse.de>
7131
7132 * font.c (register_font_driver): Use xmalloc.
7133 (font_put_frame_data): Likewise.
7134
f5668d2a
CY
71352008-12-01 Chong Yidong <cyd@stupidchicken.com>
7136
860d96be
CY
7137 * xfaces.c (realize_x_face): Make abort condition clearer.
7138
f5668d2a
CY
7139 * gtkutil.c (update_frame_tool_bar): Initialize variable.
7140
379c17e7
CY
71412008-11-30 Chong Yidong <cyd@stupidchicken.com>
7142
7143 * keyboard.c (timer_check): After a timer runs, ensure that the
7144 selected window's buffer is current.
7145
35f36d65
JB
71462008-11-30 Juanma Barranquero <lekktu@gmail.com>
7147
f952c61c
JB
7148 * makefile.w32-in ($(BLD)/abbrev.$(O)): Remove.
7149 It was accidentally restored by the Unicode merge.
7150
35f36d65
JB
7151 * w32proc.c (Fw32_get_locale_info): Fix typo in docstring.
7152
b23077df
JB
71532008-11-29 Juanma Barranquero <lekktu@gmail.com>
7154
7155 * w32proc.c: Include "coding.h".
7156 (Fw32_short_file_name): Encode filename passed to Windows API.
7157 (Fw32_long_file_name): Encode filename passed to Windows API and
7158 decode back the result. (Bug#1433)
7159
b8ebe9dd
KH
71602008-11-29 Kenichi Handa <handa@m17n.org>
7161
8cc53f96
KH
7162 * charset.h (CHAR_CHARSET_P): Check if the encoder is loaded or
7163 not before accessing it.
7164
b8ebe9dd
KH
7165 * charset.c (Fdefine_charset_internal): After calculating
7166 min_char, max_char, and fastmap, copy the charset structure again.
7167 (encode_char): Fix the previous change.
7168
59bc82c0
SZ
71692008-11-28 Seiji Zenitani <zenitani@mac.com>
7170
7171 * frame.c (x_set_alpha) [NS_IMPL_COCOA]: Call x_set_frame_alpha.
7172
7173 * nsfns.m (ns_frame_parm_handlers): Set alpha handler.
7174
7175 * nsterm.m (x_set_frame_alpha): New function.
7176
32247e3d
EZ
71772008-11-27 Eli Zaretskii <eliz@gnu.org>
7178
7179 * xfaces.c (Fx_font_family_list, syms_of_xfaces): Fix last change.
7180
b003e5ff
JB
71812008-11-27 Juanma Barranquero <lekktu@gmail.com>
7182
7183 * w32font.c (add_font_entity_to_list): Pass the right LOGFONT
7184 pointer to check_face_name.
7185
708550f5
KH
71862008-11-27 Kenichi Handa <handa@m17n.org>
7187
7188 * category.h (SET_CATEGORY_SET): Call set_category_set.
7189 (set_category_set): Extern it.
7190
7191 * category.c (hash_get_category_set): New function.
7192 (Fmodify_category_entry): Adjusted for the change of
7193 char_table_ref_and_range. Call hash_get_category_set to get a
7194 category set to store in the table.
7195
7196 * character.h (MAYBE_UNIFY_CHAR): Call maybe_unify_char instead of
7197 Funify_charset.
7198
2ae37cf0 7199 * charset.h (enum charset_method): Delete CHARSET_METHOD_MAP_DEFERRED.
708550f5
KH
7200 (DECODE_CHAR): Check if the decoder vector is ready.
7201 (ENCODE_CHAR): Check if the encoder char-table is ready.
7202 (maybe_unify_char): Extern it.
7203
7204 * charset.c (Vchar_unified_charset_table): Delete it.
7205 (inhibit_load_charset_map): New variable.
7206 (temp_charset_work): New variable.
7207 (SET_TEMP_CHARSET_WORK_ENCODER, GET_TEMP_CHARSET_WORK_ENCODER)
7208 (SET_TEMP_CHARSET_WORK_DECODER, GET_TEMP_CHARSET_WORK_DECODER):
7209 New macros.
7210 (load_charset_map): Meaning of control_flag changed. If
7211 inhibit_load_charset_map is nonzero, setup a table in
7212 temp_charset_work.
7213 (load_charset): New argument control_flag.
7214 (map_charset_for_dump): New function.
7215 (map_charset_chars): If inhibit_load_charset_map is nonzero, use
7216 map_charset_for_dump.
7217 (Fdefine_charset_internal): If the charset method is MAP, load
7218 mapping tables by calling load_charset.
7219 (Funify_charset): Don't load a mapping table but directly set
7220 Vchar_unify_table.
7221 (maybe_unify_char): New function.
7222 (decode_char): Don't handle the deleted method MAP_DEFERRED.
7223 Handle the case of inhibit_load_charset_map being nonzero.
7224 (encode_char): Don't handle the deleted method MAP_DEFERRED.
7225 Handle the case of inhibit_load_charset_map being nonzero.
7226 (Fclear_charset_maps): Just free temp_charset_work.
7227 (syms_of_charset): Make `inhibit-load-charset-map' a Lisp
7228 variable.
7229
7230 * chartab.c (sub_char_table_ref_and_range): Adjusted for the
7231 change of char_table_ref_and_range.
7232 (char_table_ref_and_range): Change the meaning of argument FROM
7233 and TO. Now the caller must provide initial values for *FROM
7234 and *TO.
7235
7236 * fontset.c (fontset_add): Adjusted for the change of
7237 char_table_ref_and_range.
7238 (fontset_get_font_group): Likewise.
7239 (Ffontset_info): Likewise.
7240
7241 * keymap.c (describe_vector): Adjusted for the change of
7242 char_table_ref_and_range. For char-table, put boundary between
7243 non-ASCII and 8-bit characters.
7244
7245 * print.c (print_object): For bool-vector, delete unnecessary
7246 check of ASCII_BYTE_P.
7247
9196133b
JR
72482008-11-26 Jason Rumney <jasonr@gnu.org>
7249
7250 * w32font.c (w32font_open_internal): Don't include external
9acef61c 7251 leading in font height. (Bug#879)
9196133b 7252
9f688acf
GM
72532008-11-26 Glenn Morris <rgm@gnu.org>
7254
7255 * xfaces.c (Fx_font_family_list): Replace lisp/term/pc-win.el
7256 redefinition with ifdef. (Bug#1383)
7257
90d19aff
AR
72582008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
7259
7260 * nsterm.m (ns_get_color): Handle long hex strings (fixes bug #1044).
7261
4ccfa1c0 72622008-11-24 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
90d19aff
AR
7263
7264 * nsterm.m (-otherMouseDown:, -otherMouseUp:, -otherMouseDragged):
7265 New EmacsView methods.
7266 (EV_UDMODIFIERS, EV_BUTTON): Add OtherMouse constants.
7267 Fixes bug #1048,1357,1414.
7268
72692008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
7270
7271 Fix bug #1362.
7272 * image.c (x_clear_image_1): Do not free background under HAVE_NS, it
7273 is not an indexed color.
7274 * nsterm.m (free_indexed_color): Add argument checking.
7275 * nsfns.m: Move config.h to before system includes (advised by Dan N.).
7276
e7d5ecb3
CY
72772008-11-24 Chong Yidong <cyd@stupidchicken.com>
7278
7279 * minibuf.c (Fcompleting_read, Vminibuffer_completion_confirm):
7280 Document confirm-after-completion value for
7281 minibuffer-completion-confirm.
7282
c285743c
JR
72832008-11-24 Jason Rumney <jasonr@gnu.org>
7284
7285 * w32font.c (check_face_name): Use xstrcasecmp. Avoid compiler
7286 warning.
7287
b0857706
JR
72882008-11-23 Jason Rumney <jasonr@gnu.org>
7289
7290 * w32uniscribe.c (uniscribe_encode_char): Ensure context is
7291 restored before returning.
7292
7293 * w32font.c (check_face_name): New function.
7294 (add_font_entity_to_list): Use it to filter out common substituted
9acef61c 7295 fonts. (Bug#642)
b0857706 7296
ee50ff07
MR
72972008-11-22 Martin Rudalics <rudalics@gmx.at>
7298
7299 * buffer.c (Fswitch_to_buffer): Reword and mention new option
7300 confirm-nonexistent-file-or-buffer in doc-string.
7301
b8ff72fa
SM
73022008-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
7303
7304 * buffer.c (Fbuffer_swap_text): Remove redundant marker manipulation.
7305 Fix copy/paste typo. Add checks.
7306
cee53ed4
KH
73072008-11-21 Kenichi Handa <handa@m17n.org>
7308
7309 * coding.c (detect_coding_iso_2022): Reject invalid composition
7310 sequence.
7311 (DECODE_COMPOSITION_START): If the current source is the last
7312 block, and the current composition doesn't end, regard this
7313 sequence as invalid.
7314 (decode_coding_iso_2022): Handle invalid composition sequence.
7315
f6ef1e65
MR
73162008-11-20 Martin Rudalics <rudalics@gmx.at>
7317
7318 * window.c (coordinates_in_window): Don't return
7319 ON_VERTICAL_BORDER for the rightmost position of a mode/header
7320 line when the window is not the rightmost one. (Bug#1372)
7321
e08b1705
MR
73222008-11-16 Ben North <ben@redfrontdoor.org> (tiny change)
7323
7324 * buffer.c (syms_of_buffer): Fix doc-string of cursor-type.
7325
ad98e89f
EZ
73262008-11-15 Eli Zaretskii <eliz@gnu.org>
7327
7328 * msdos.c (run_msdos_command): Don't call dos_ttcooked, dos_ttraw,
7329 and bright_bg if noninteractive is non-zero.
7330
fb098a4b
CY
73312008-11-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7332
7333 * xterm.c (x_draw_glyph_string): For stretch glyphs, don't call
7334 x_draw_glyph_string_background.
7335
7336 * w32term.c (x_draw_glyph_string): Likewise.
7337
ce952b6e
CY
73382008-11-15 Chong Yidong <cyd@stupidchicken.com>
7339
7340 * xterm.c (x_draw_glyph_string): Stop drawing the background of
7341 the next glyph string once past the overhang width.
7342
7343 * nsterm.m (ns_draw_glyph_string): Likewise.
7344
7345 * w32term.c (x_draw_glyph_string): Likewise.
7346
26ea7079
CY
73472008-11-14 Fabrice Popineau <fabrice.popineau@supelec.fr> (tiny change)
7348
7349 * fileio.c (Finsert_file_contents): Decrement specpdl_ptr to avoid
7350 double file close.
7351
1c33c906
MR
73522008-11-14 Martin Rudalics <rudalics@gmx.at>
7353
7354 * window.c (window_loop): In DELETE_BUFFER_WINDOWS case, reset
7355 dedicated status of window before attempting to display another
7356 buffer in it.
7357
8fc29035
JB
73582008-11-14 Juanma Barranquero <lekktu@gmail.com>
7359
7360 * msdos.c (Fmsdos_long_file_names):
7361 (syms_of_msdos) <dos-unsupported-char-glyph>:
7362 * dosfns.c (Fint86): Fix typos in docstrings.
7363
55fb4286
EZ
73642008-11-14 Eli Zaretskii <eliz@gnu.org>
7365
7366 * makefile.w32-in (OBJ1, WIN32OBJ): Fix whitespace.
7367
3fda0315
KY
73682008-11-14 Katsumi Yamaoka <yamaoka@jpl.org>
7369
7370 * puresize.h (BASE_PURESIZE): Increase to 1260000.
7371
7e849c17
CY
73722008-11-12 Michal Nazarewicz <mina86@tlen.pl> (tiny change)
7373
7374 * frame.c (x_set_alpha): Set alpha to -1 if nil given.
7375
7376 * frame.h: Negative alpha means "don't touch".
7377
7378 * w32term.c (x_set_frame_alpha): Do nothing if alpha is negative.
7379
7380 * xterm.c (x_set_frame_alpha): Do nothing if alpha is negative.
7381
b9fd67bd
DN
73822008-11-12 Dan Nicolaescu <dann@ics.uci.edu>
7383
7384 * hftctl.c:
7385 * chpdef.h:
7386 * acldef.h: Remove files used only for systems no longer supported.
7387
7388 * Makefile.in: Fix .o alphabetical ordering.
7389 (hftctl.o): Remove dependency, file removed.
7390 (keymap.o, print.o): Depend on charset.h.
7391
d5998e03
KH
73922008-11-10 Kenichi Handa <handa@m17n.org>
7393
2ae37cf0 7394 * character.c (Fget_byte): Fix and make it faster for unibyte target.
d5998e03 7395
be70e183
CY
73962008-11-08 Chong Yidong <cyd@stupidchicken.com>
7397
7398 * dired.c (file_name_completion): If completion_ignore_case is
7399 enabled, ignore case when checking completion-regexp-list.
7400
7cf94eac
EZ
74012008-11-08 Eli Zaretskii <eliz@gnu.org>
7402
7403 * vm-limit.c (get_lim_data): Fix last change.
7404
ee107a89
KH
74052008-11-08 Kenichi Handa <handa@m17n.org>
7406
7407 * character.c (Fget_byte): New function.
7408 (syms_of_character): Defsubr Fget_byte.
7409
5fd15622
CY
74102008-11-07 Chong Yidong <cyd@stupidchicken.com>
7411
7412 * xdisp.c (try_window_reusing_current_matrix): Ensure that window
7413 cursor position is valid after scrolling.
7414
13d62fad
JB
74152008-11-06 Juanma Barranquero <lekktu@gmail.com>
7416
7417 * fns.c (Frandom): Rename arg N to LIMIT to match the docs; doc fix.
7418
a1dd2936
GM
74192008-11-06 Glenn Morris <rgm@gnu.org>
7420
7421 * xterm.c (handle_one_xevent): Don't let popup menus cause
7422 mouse-autoselect-window related window switching. (Bug#1261)
7423
860cd236
CY
74242008-11-04 David Smith <davidsmith@acm.org> (tiny change)
7425
7426 * xterm.c (xim_close_dpy): Avoid double-free on X11R6 XIM.
7427
653a3150
AS
74282008-11-04 Andreas Schwab <schwab@suse.de>
7429
7430 * xfns.c (Fx_wm_set_size_hint): Add missing return value.
7431
870f5cac
CY
74322008-11-03 Chong Yidong <cyd@stupidchicken.com>
7433
7434 * xfns.c (Fx_wm_set_size_hint): New function.
7435
1e02f3cb
MR
74362008-11-03 Martin Rudalics <rudalics@gmx.at>
7437
7438 * textprop.c (Fprevious_single_char_property_change): Return 0
7439 when there's no change in a string. (Bug#1301)
7440
e630dfc6
MR
74412008-11-02 Martin Rudalics <rudalics@gmx.at>
7442
7443 * frame.c (do_switch_frame): New argument NORECORD passed to
7444 Fselect_window.
7445 (Fselect_frame): New argument NORECORD passed to
7446 do_switch_frame.
7447 (Fset_frame_selected_window): New argument NORECORD passed to
7448 Fselect_frame.
7449 (Fhandle_switch_frame, Fdelete_frame): Handle NORECORD argument
7450 in call of do_switch_frame.
7451 (Fset_mouse_position, Fset_mouse_pixel_position, Fraise_frame):
7452 Handle NORECORD argument in call of Fselect_frame.
7453 * lisp.h (do_switch_frame, Fselect_frame)
7454 (Fset_frame_selected_window): Adjust declarations.
7455 * window.c (select_frame_norecord): New function.
7456 (run_window_configuration_change_hook): Use it and call
7457 Fselect_frame with NORECORD set.
7458 (Fselect_window): Pass NORECORD to Fselect_frame.
7459 (Fset_window_configuration): Handle NORECORD argument in call of
7460 do_switch_frame.
7461 * minibuf.c (choose_minibuf_frame): Handle NORECORD in call of
7462 Fset_frame_selected_window.
7463 * keyboard.c (command_loop_1): Handle NORECORD in call of
7464 Fselect_frame (currently ifdefd).
7465
9020b223
GM
74662008-11-02 Ulrich Mueller <ulm@kph.uni-mainz.de>
7467
7468 * emacs.c (USAGE2): Untabify.
7469
793ffee8
SM
74702008-11-01 Stefan Monnier <monnier@iro.umontreal.ca>
7471
7472 * composite.c (fill_gstring_header): Fix copy/paste typo.
7473
ab6d1131
MR
74742008-10-31 Martin Rudalics <rudalics@gmx.at>
7475
7476 * window.c (Fnext_window, Fprevious_window): Rewrite doc-string.
7477 (Fother_window): Rename argument and rewrite doc-string.
7478 (select_window_norecord): Fix return value. (Bug#1276)
7479
601a9cf1
JB
74802008-10-30 Juanma Barranquero <lekktu@gmail.com>
7481
7482 * w32fns.c (x_create_tip_frame): Prevent default foreground color for
7483 new frames overriding foreground for tooltips. Based on similar patch
7484 from Martin Rudalics <rudalics@gmx.at>. (Bug#1032)
7485
813b0652
CY
74862008-10-29 Chong Yidong <cyd@stupidchicken.com>
7487
7488 * emacs.c (Fdaemon_initialized): Initialize nfd.
7489
4414f58f
MR
74902008-10-29 Martin Rudalics <rudalics@gmx.at>
7491
7492 * window.c (Fwindow_height, Fdelete_window, set_window_buffer)
7493 (Fwindow_text_height): Clarify doc-strings.
7494 * xdisp.c (syms_of_xdisp): Mention set-window-buffer in
7495 doc-string of window-scroll-functions.
7496
ecdcaa09
RS
74972008-10-28 Reiner Steib <Reiner.Steib@gmx.de>
7498
7499 * category.c (syms_of_category): Fix typo in docstring.
7500
23fe745a
JB
75012008-10-28 Juanma Barranquero <lekktu@gmail.com>
7502
7503 * window.c (Fwindowp, Fwindow_live_p, Fwindow_minibuffer_p)
7504 (Fcoordinates_in_window_p, Fscroll_left, Fscroll_right):
7505 Fix typos in docstrings.
7506
ff808935
DN
75072008-10-28 Dan Nicolaescu <dann@ics.uci.edu>
7508
7509 * emacs.c (daemon_pipe): Make non-static.
7510 (IS_DAEMON): Move definition ...
7511 * lisp.h (IS_DAEMON): ... here.
7512 (daemon_pipe): Declare.
7513 (is_daemon): Remove.
7514 * dispnew.c (init_display): Use IS_DAEMON.
7515
fc012771
SM
75162008-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
7517
7518 * xdisp.c (pos_visible_p, redisplay_internal, message3_nolog)
7519 (message2_nolog): Check FRAME_INITIAL_P instead of noninteractively.
7520
7521 * emacs.c (is_daemon): Remove.
7522 (main): Don't set is_daemon.
7523 (IS_DAEMON): New macro.
7524 (Fdaemonp, Fdaemon_initialized): Use it.
601a9cf1 7525 (Fdaemon_initialized): Write a char into the pipe to make sure the
fc012771
SM
7526 parent exits.
7527 (syms_of_emacs): Explicitly initialize daemon_pipe[1].
7528
d8bdbe6f
CY
75292008-10-27 Chong Yidong <cyd@stupidchicken.com>
7530
d1a072bf
CY
7531 * nsterm.m (ns_draw_window_cursor): When hbar cursor is on
7532 over-sized glyph, draw it with the default glyph width.
7533
e2e325aa
CY
7534 * w32term.c (x_draw_bar_cursor): When hbar cursor is on over-sized
7535 glyph, draw it with the default glyph width.
7536
7537 * xterm.c (x_draw_bar_cursor): When hbar cursor is on over-sized
7538 glyph, draw it with the default glyph width.
7539
d8bdbe6f
CY
7540 * xdisp.c (try_scrolling): When computing the distance from the
7541 scroll margin to PT, try moving some distance past the window
7542 bottom before giving up.
7543
7bfac547
MR
75442008-10-27 Martin Rudalics <rudalics@gmx.at>
7545
7546 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p)
7547 (Fset_window_buffer): Explain in doc-string that a window can be
7548 "strongly" dedicated to its buffer.
7549
4ff029f6
DN
75502008-10-27 Dan Nicolaescu <dann@ics.uci.edu>
7551
7552 * emacs.c (daemon_name): New variable.
7553 (main): Deal with --daemon=SERVER_NAME.
7554 (Fdaemonp): Return a name if one was passed to --daemon.
7555
5790ef40
DN
75562008-10-26 Romain Francoise <romain@orebokech.com>
7557
f9bd0df9 7558 * emacs.c (daemon_pipe): New variable.
5790ef40
DN
7559 (main): Create a pipe before forking, make the parent exit only after
7560 the child has closed its end of the pipe. Move closing the
7561 descriptors ...
7562 (Fdaemon_initialized): ... here. New function.
7563
f5385255
SM
75642008-10-26 Stefan Monnier <monnier@iro.umontreal.ca>
7565
4d632321
SM
7566 * chartab.c (Foptimize_char_table): Make sure `ascii' doesn't point to
7567 the previous unoptimized table.
7568
f5385255
SM
7569 * window.c (Fset_window_buffer): Undo 2008-10-18 change to re-instate
7570 the distinction between non-nil and non-t value of `dedicated'.
7571
6c56a0f3
CY
75722008-10-25 Chong Yidong <cyd@stupidchicken.com>
7573
7574 * keyboard.c (read_char_minibuf_menu_prompt): Ensure that
f5385255 7575 read_char_minibuf_menu_text is large enough to hold the menu string.
6c56a0f3 7576
fec89261
MR
75772008-10-25 Martin Rudalics <rudalics@gmx.at>
7578
7579 * window.c (Fget_buffer_window, Fdelete_windows_on)
7580 (Freplace_buffer_in_windows): Make buffer argument optional and
7581 rename to buffer_or_name.
7582
34fcddd0
CY
75832008-10-24 Chong Yidong <cyd@stupidchicken.com>
7584
f5385255
SM
7585 * xdisp.c (handle_single_display_spec, handle_display_prop):
7586 Undo 2005-05-16 change.
34fcddd0
CY
7587 (handle_stop): Pop iterator if it's loaded with an empty string.
7588 (get_overlay_strings_1): Don't save iterator if it's loaded with
7589 an empty string (bug#1201).
7590
064766f2
KH
75912008-10-24 Kenichi Handa <handa@m17n.org>
7592
7593 * ftfont.c (ftfont_otf_features): Fix previous change.
7594 (ftfont_otf_capability): Check FeatureList.FeatureCount before
7595 calling ftfont_otf_features.
7596
f9bd0df9 75972008-10-24 Kenichi Handa <handa@m17n.org>
064766f2
KH
7598
7599 * font.c (font_match_p): Fix for the case that a vector of
7600 characters is in script-representative-chars.
7601
1dae9197
MA
76022008-10-24 Michael Albinus <michael.albinus@gmx.de>
7603
7604 * dbusbind.c (xd_in_read_queued_messages): New variable.
f5385255 7605 (XD_SIGNAL1, XD_SIGNAL2, XD_SIGNAL3): New macros. Throw Qdbus_error.
1dae9197
MA
7606 (xd_read_queued_messages): Catch Qdbus_error from the macros.
7607 (all): Replace xsignal1, xsignal2, xsignal3 by the respective
777013f2 7608 macro. (Bug#1186)
1dae9197 7609
f9bd0df9 76102008-10-23 Ali Bahrami <ali_gnu@emvision.com> (tiny change)
9b3362b8
DN
7611
7612 * s/sol2-10.h: New file.
7613
878a4584
JB
76142008-10-23 Juanma Barranquero <lekktu@gmail.com>
7615
7616 * xdisp.c (fill_glyph_string): Fix typo in source (though the
7617 poor beast has survived 9+ years and the jump from xterm.c!).
7618
cd265ca6
MR
76192008-10-23 Martin Rudalics <rudalics@gmx.at>
7620
7621 * buffer.c (Fget_buffer_create): Rename arg to buffer_or_name.
7622 Reword doc-string.
f5385255 7623 (Fbury_buffer): In doc-string say what happens to the buffer's window.
cd265ca6 7624
472a4dc9
JB
76252008-10-23 Juanma Barranquero <lekktu@gmail.com>
7626
7627 * character.c (syms_of_character) <script-representative-chars>:
7628 <unicode-category-table>: Doc fixes.
7629
159bd5a2
NF
76302008-10-23 Noah Friedman <friedman@splode.com>
7631
7632 * coding.c (make_conversion_work_buffer): Check that
7633 Vcode_conversion_reused_workbuf is a live buffer, otherwise call
7634 Fget_buffer_create.
7635
49f9c344
KH
76362008-10-23 Kenichi Handa <handa@m17n.org>
7637
7638 * font.c (font_add_log): Check the values of extra properties.
7639
12bb3111
MR
76402008-10-22 Martin Rudalics <rudalics@gmx.at>
7641
7642 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
7643 Reword doc-string.
7644 (Fset_window_parameter): Use NILP.
7645 (Fscroll_up, Fscroll_down, Fminibuffer_selected_window)
f5385255 7646 (Frecenter): Use "selected" instead of "current" window in doc-strings.
12bb3111 7647
bbeb4e99
JB
76482008-10-22 Juanma Barranquero <lekktu@gmail.com>
7649
7650 * xdisp.c (next_element_from_buffer): Remove bogus xassert condition.
7651
76522008-10-22 Adrian Robert <Adrian.B.Robert@gmail.com>
cb83c00b
AR
7653
7654 * nsfns.m (ns_appkit_version): New function.
7655 (x-server-version): Use it.
7656 (syms_of_nsfns): Define ns-version-string here, not nsterm.m.
7657 (x-server-vendor): Don't check_ns().
7658
7659 * nsterm.m (syms_of_nsterm): Drop ns-version-string.
7660
a9b555d3
JB
76612008-10-22 Juanma Barranquero <lekktu@gmail.com>
7662
7663 * w32fns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert.
7664 Copied from 2005-02-03 change to xfns.c by Kim F. Storm.
7665
4626499f
KH
76662008-10-22 Kenichi Handa <handa@m17n.org>
7667
e3681952
KH
7668 * syntax.c (scan_words): Call word_boundary_p instead of comparing
7669 scripts.
7670
4626499f
KH
7671 * category.c (word_boundary_p): Check scripts instead of charset.
7672 Handle nil value in word-separating-categories and
7673 word-combining-categories.
7674 (syms_of_category): Fix docstrings of word-separating-categories
7675 and word-combining-categories.
7676
1560f91a
EZ
76772008-10-21 Eli Zaretskii <eliz@gnu.org>
7678
7679 * coding.c (Fencode_coding_region, Fdecode_coding_region)
7680 (Fdecode_coding_string, Fencode_coding_string): Doc fix.
7681
f4668441
MR
76822008-10-21 Martin Rudalics <rudalics@gmx.at>
7683
7684 * buffer.c (Fget_buffer, Fbury_buffer, switch_to_buffer_1):
7685 Rename arg "buffer" to "buffer_or_name".
7686 (Fkill_buffer): Rename arg "buffer" to "buffer_or_name" and make
7687 it optional.
7688 (no_switch_window): Remove since the return value is not used.
a9b555d3 7689 (Fswitch_to_buffer): Rename arg "buffer" to "buffer_or_name".
f4668441
MR
7690 Consider window as dedicated when Fwindow_dedicated_p returns a
7691 non-nil value.
7692 * lisp.h: Remove prototype for no_switch_window.
7693
fd75ddb2
JD
76942008-10-21 Jan Djärv <jan.h.d@swipnet.se>
7695
7696 * emacs.c (main): Unconditionally set PER_LINUX32 and exec
2ae37cf0 7697 temacs when dumping if HAVE_PERSONALITY_LINUX32 is defined.
fd75ddb2 7698
07295713
KH
76992008-10-21 Kenichi Handa <handa@m17n.org>
7700
7701 * coding.c (detect_coding_charset): For iso-8859-* coding systems,
7702 check Vlatin_extra_code_table.
7703
712adc82
EZ
77042008-10-20 Eli Zaretskii <eliz@gnu.org>
7705
7706 * fileio.c (Fset_file_modes): Doc fix.
7707
f549eb0b
MA
77082008-10-19 Michael Albinus <michael.albinus@gmx.de>
7709
7710 * dbusbind.c (XD_OBJECT_TO_DBUS_TYPE): Handle simple type symbols
7711 in arrays.
7712
aac0c6e3
MR
77132008-10-19 Martin Rudalics <rudalics@gmx.at>
7714
7715 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
7716 Mention kill-buffer in doc-string.
7717 (Fset_window_buffer): Reinsert tem check removed in last commit.
7718 (Fenlarge_window, Fshrink_window): Have argument names and
7719 doc-string follow Elisp manual more closely.
7720
77212008-10-18 Eli Zaretskii <eliz@gnu.org>
7722
7723 * fileio.c (Fset_file_modes): Doc fix.
7724
77252008-10-18 Martin Rudalics <rudalics@gmx.at>
7726
7727 * window.c (Fwindow_width, Fset_window_start)
7728 (Fwindow_parameters, Fwindow_parameter, Fset_window_parameter)
f5385255
SM
7729 (Fdelete_windows_on, Freplace_buffer_in_windows):
7730 Make doc-strings follow code and Elisp manual more closely.
aac0c6e3
MR
7731 (Fwindow_dedicated_p): Make window argument optional.
7732 (Fset_window_dedicated_p): Rename argument "arg" to "flag".
7733 (Fset_window_buffer): Respect any non-nil dedicated value for
7734 window. Rename "buffer" argument to "buffer_or_name".
7735
77362008-10-18 Ulrich Mueller <ulm@gentoo.org>
7737
7738 * m/sh3.h: New file, machine description for SuperH.
7739
77402008-10-17 Martin Rudalics <rudalics@gmx.at>
7741
7742 * window.c (Fsplit_window): Rename arg horflag to horizontal.
7743
77442008-10-17 Kenichi Handa <handa@m17n.org>
7745
7746 * ftfont.c (ftfont_otf_features): Fix indexing
7747 gsub_gpos->FeatureList.Feature. Check the validity of indices.
7748
77492008-10-16 Magnus Henoch <mange@freemail.hu>
7750
7751 * dbusbind.c (Fdbus_call_method): Unbreak usage line.
7752 (Fdbus_call_method_asynchronously): Ditto.
7753 This change makes C-h f display the argument list.
7754
77552008-10-16 Chong Yidong <cyd@stupidchicken.com>
7756
7757 * fileio.c (Fexpand_file_name): Doc fix.
7758
7759 * xfaces.c (Finternal_set_lisp_face_attribute): Make null values
7760 of :foreground and :background equivalent to unspecified (20.x
7761 compatibility).
7762
77632008-10-15 Eli Zaretskii <eliz@gnu.org>
7764
7765 * buffer.c (syms_of_buffer): Doc fix.
7766
77672008-10-14 Kenichi Handa <handa@m17n.org>
7768
7769 * font.c (font_clear_prop): When clearing font width, clear the
7770 average width field too.
7771
77722008-10-12 Andreas Schwab <schwab@suse.de>
7773
7774 * ftfont.c (ftfont_shape_by_flt): Make static.
7775 * ftfont.h (ftfont_shape_by_flt): Don't declare.
7776
7777 * font.c: Don't include <m17n-flt.h>.
7778
77792008-10-10 Eli Zaretskii <eliz@gnu.org>
7780
7781 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Decrease to 10000.
7782
77832008-10-09 Eli Zaretskii <eliz@gnu.org>
7784
7785 * frame.c (make_terminal_frame) [MSDOS]: Remove unused #ifdef'ed
7786 away code.
7787
77882008-10-09 Chong Yidong <cyd@stupidchicken.com>
7789
7790 * dispnew.c (update_text_area): Avoid looping due to large glyph
7791 overhangs (bug#1070).
7792
77932008-10-09 Kenichi Handa <handa@m17n.org>
7794
7795 * fontset.c (face_for_char): If face->fontset is negative, just
7796 return ascii_face.
7797
f5385255
SM
7798 * font.c (font_delete_unmatched): Fix previous change.
7799 Don't reject an entity if DPI and AVGWIDTH of an entity are 0.
aac0c6e3
MR
7800
78012008-10-09 Martin Rudalics <rudalics@gmx.at>
7802
7803 * frame.c (Fraise_frame): On text-only terminals select frame in
7804 order to make it visible. (Bug#1061)
7805
78062008-10-08 Chong Yidong <cyd@stupidchicken.com>
7807
7808 * fontset.c (fontset_find_font): Check frame validity.
7809
78102008-10-07 Chong Yidong <cyd@stupidchicken.com>
7811
a9b555d3 7812 * gtkutil.c (xg_display_open): Reset default display if none exists.
aac0c6e3
MR
7813 (xg_display_close): Allow Emacs to close all displays (bug#985).
7814
78152008-10-06 Andreas Schwab <schwab@suse.de>
7816
f5385255 7817 * sysdep.c (sys_signal): Always set SA_RESTART when noninteractively.
aac0c6e3
MR
7818
78192008-10-06 Chong Yidong <cyd@stupidchicken.com>
7820
f5385255 7821 * emacs.c (Vbefore_init_time, Vafter_init_time): Move from startup.el.
aac0c6e3 7822
a9b555d3 7823 * lisp.h (Vbefore_init_time, Vafter_init_time): Declare.
aac0c6e3
MR
7824
7825 * gtkutil.c (x_wm_set_size_hint): Return immediately if called
7826 during initialization.
7827
78282008-10-04 Eli Zaretskii <eliz@gnu.org>
7829
7830 * xdisp.c (redisplay_internal): If frame switched, redisplay the
7831 whole thing on MSDOS frames as well as on a TTY.
7832
7833 * dispnew.c (update_frame): Flush termscript for MSDOS frames as
7834 well as for TTY.
7835 (Fopen_termscript): Allow opening a termscript on MSDOS frames as
7836 well as on a TTY.
7837
7838 * sysdep.c (init_sys_modes): Set FRAME_GARBAGED_P for MSDOS frames
7839 as well as for TTY.
7840
7841 * systime.h (EMACS_TIME_CMP): Cast EMACS_SECS values to `long'.
7842
7843 * dispnew.c (change_frame_size_1): Set FrameRows and FrameCols for
7844 MSDOS frames as well.
7845
78462008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
7847
7848 * image.c (x_clear_image_1): Under NS, call ns_free_indexed_color with
7849 correct arguments.
b71ac3dd 7850 * menu.c (find_and_return_menu_selection): Add cast.
aac0c6e3
MR
7851
78522008-10-03 Glenn Morris <rgm@gnu.org>
7853
7854 * emacs.c (USAGE1): Add --daemon.
7855
78562008-10-02 Eli Zaretskii <eliz@gnu.org>
7857
7858 * process.c (procfs_system_process_attributes): Multiply `pcpu' by
7859 100, so it's in percents as advertised.
7860
78612008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
7862
7863 * nsterm.h (ns_cursor_types, ns_output.desired_cursor_color)
7864 (ns_output.current_cursor, ns_output.desired_cursor)
7865 (ns_output.last_inactive, FRAME_CURSOR, FRAME_NEW_CURSOR)
7866 (FRAME_NEW_CURSOR_COLOR): Remove.
7867
7868 * nsfns.m (ns_set_cursor_color): Use FRAME_CURSOR_COLOR.
a9b555d3 7869 (ns_lisp_to_cursor_type, ns_cursor_type_to_lisp): Use core Emacs
aac0c6e3
MR
7870 enumeration (HOLLOW_BOX_CURSOR, etc.).
7871
7872 * nsterm.m (ns_frame_rehighlight): Remove commented code.
7873 (draw_window_cursor): Simplify code.
f5385255
SM
7874 (EmacsView-windowDidBecomeKey:,-windowDidResignKey:):
7875 Don't change cursor type. In latter, call rehighlight instead of doing
aac0c6e3 7876 updates manually.
a9b555d3
JB
7877 (EmacsPrefsController-setPanelFromValues,-setValuesFromPanel):
7878 Use core Emacs cursor types.
aac0c6e3 7879
b8ff72fa 7880 * xdisp.c (draw_glyphs): Don't call notice_overwritten_cursor under NS.
aac0c6e3
MR
7881
78822008-10-02 Martin Rudalics <rudalics@gmx.at>
7883
7884 * process.c (Faccept_process_output): Fix doc-string.
7885
78862008-10-02 Dan Nicolaescu <dann@ics.uci.edu>
7887
7888 * gmalloc.c (__sbrk): Also define for uClibc.
7889
7890 * s/gnu-linux.h (GNU_LIBRARY_PENDING_OUTPUT_COUNT): Add definition
7891 for uClibc.
7892
78932008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
7894
7895 * nsfont.m (nsfont_spec_to_traits): Use UnXX masks only for non-normal
7896 styles.
7897 (nsfont_open): Reenable the cache.
7898
78992008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
7900
7901 * font.c (font_matching_entity): Reflect ATTRS in font selection.
7902 (font_find_for_lface) [HAVE_NS]: Don't ignore case.
7903
79042008-09-30 Stefan Monnier <monnier@iro.umontreal.ca>
7905
7906 * dispnew.c (Fsend_string_to_terminal): Don't try to send a string to
7907 a suspended terminal.
7908
79092008-09-30 Michael Albinus <michael.albinus@gmx.de>
7910
7911 * dbusbind.c (xd_signature): Use strcat instead of sprintf.
7912
79132008-09-30 Eli Zaretskii <eliz@gnu.org>
7914
7915 * Makefile.in (MSDOS_SUPPORT): Remove ccl.elc and codepage.elc.
7916
79172008-09-30 Chong Yidong <cyd@stupidchicken.com>
7918
7919 * xdisp.c (move_it_to): Don't advance the iterator if the last tab
7920 in a continued line coincides with a line beginning.
7921
79222008-09-29 Adrian Robert <Adrian.B.Robert@gmail.com>
7923
7924 * nsfont.m (nsfont_trait_distance): Fix bug.
7925 (nsfont_list): Return a list rather than a vector (syncs with Handa
7926 changes of 2008-05-14).
7927 (nsfont_open): Improve logging.
7928
79292008-09-29 Andreas Schwab <schwab@suse.de>
7930
7931 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
7932
79332008-09-28 Martin Rudalics <rudalics@gmx.at>
7934
7935 * character.c (Fchar_resolve_modifiers): Rewrite Elisp function
7936 name as char-resolve-modifiers.
7937 Reported by: Markus Triska <markus.triska@gmx.at>
7938
79392008-09-28 Dan Nicolaescu <dann@ics.uci.edu>
7940
7941 * dispnew.c (init_display): Return earlier when running as a daemon.
7942
79432008-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
7944
7945 * nsfont.m (nsfont_draw): Fix up composition rendering (cmp_from, ...).
7946
79472008-09-27 Eli Zaretskii <eliz@gnu.org>
7948
7949 * composite.c (Fcomposition_get_gstring)
7950 (Fcompose_region_internal, Fcompose_string_internal)
7951 (Ffind_composition_internal): Doc fix.
7952 (syms_of_composite) <compose-chars-after-function>: Doc fix.
7953 (syms_of_composite) <auto-composition-function>: Doc fix.
7954 (syms_of_composite) <composition-function-table>: Doc fix.
7955
79562008-09-25 Chong Yidong <cyd@stupidchicken.com>
7957
7958 * search.c (wordify): New argument for lax word-ends.
7959 (Fword_search_forward_lax, Fword_search_backward_lax): New funs.
7960
79612008-09-24 Dan Nicolaescu <dann@ics.uci.edu>
7962
7963 * lisp.h (is_daemon): Declare.
7964 * dispnew.c (init_display): Do not try to initialize the terminal
7965 when running as a daemon.
7966
79672008-09-22 Chong Yidong <cyd@stupidchicken.com>
7968
7969 * nsfns.m (compute_tip_xy): Use x_display_pixel_width and
7970 x_display_pixel_height.
7971
79722008-09-22 Martin Rudalics <rudalics@gmx.at>
7973
7974 * undo.c (record_point): Don't call Fundo_boundary for first
7975 change. (Bug#731)
7976
79772008-09-22 Juanma Barranquero <lekktu@gmail.com>
7978
7979 * emacs.c (Fdaemonp): Doc fix.
7980
79812008-09-22 Dan Nicolaescu <dann@ics.uci.edu>
7982
7983 * emacs.c (main): Place #ifdef in the proper place.
7984
79852008-09-21 Dan Nicolaescu <dann@ics.uci.edu>
7986
7987 * emacs.c (standard_args): Add --daemon.
7988 (main): Disconnect from the terminal when --daemon is passed.
7989 (is_daemon): New variable.
7990 (Fdaemonp): New function.
7991 (syms_of_emacs): Defsubr it.
7992
79932008-09-20 Chong Yidong <cyd@stupidchicken.com>
7994
7995 * xdisp.c (get_next_display_element): Handle string display
7996 correctly when checking for the end of a box run.
7997
79982008-09-20 Glenn Morris <rgm@gnu.org>
7999
8000 * fileio.c (Qdelete_by_moving_to_trash): New Lisp_Object.
8001 (syms_of_fileio): Add Qdelete_by_moving_to_trash.
8002 (Frename_file): Avoid copying to trash if a rename involves
8003 a delete. (Bug#964).
8004
80052008-09-20 Eli Zaretskii <eliz@gnu.org>
8006
8007 * keyboard.c (Fset_quit_char, Fset_input_meta_mode)
8008 (Fset_output_flow_control, Fcurrent_input_mode): Support MSDOS
8009 frames as well as termcap frames.
8010 (handle_interrupt): Remove "#ifndef MSDOS" around the call to
8011 get_named_tty.
8012
80132008-09-19 Eli Zaretskii <eliz@gnu.org>
8014
8015 * process.c (procfs_system_process_attributes): Fix cmdline in
8016 case /proc/PID/cmdline is empty.
8017
8018 * xterm.c (x_wm_set_size_hint): Use x_display_pixel_width and
8019 x_display_pixel_height.
8020
80212008-09-19 Juanma Barranquero <lekktu@gmail.com>
8022
8023 * frame.c (x_fullscreen_adjust): Declare var as Display_Info.
8024
8025 * w32fns.c (Fx_display_pixel_width, Fx_display_pixel_height)
8026 (compute_tip_xy): Use x_display_pixel_width, x_display_pixel_height.
8027
80282008-09-19 Dan Nicolaescu <dann@ics.uci.edu>
8029
8030 * dispextern.h (struct it): Move line_wrap away from the middle of
8031 bitfields. Move voffset in struct iterator_stack_entry after the
8032 bitfields. Move tab_width near after another short.
8033
80342008-09-18 Dan Nicolaescu <dann@ics.uci.edu>
8035
8036 * frame.h (struct frame): Move alpha from the middle of bitfields.
8037
8038 * window.h (struct window): Move frozen_window_start_p after the
8039 rest of the bitfields to reduce padding.
8040
80412008-09-18 Chong Yidong <cyd@stupidchicken.com>
8042
8043 * xterm.h (x_display_info): Remove `height' and `width' members.
8044
8045 * nsterm.h (ns_display_info): Remove `height' and `width' members.
8046
8047 * w32term.h (w32_display_info): Remove `height', `width',
8048 `height_in', and `width_in' members.
8049
b8ff72fa
SM
8050 * xterm.c (x_display_pixel_height, x_display_pixel_width):
8051 New functions.
aac0c6e3
MR
8052 (x_calc_absolute_position): Use them.
8053 (x_term_init): Omit removed `height' and `width' members.
8054
b8ff72fa
SM
8055 * w32term.c (x_display_pixel_height, x_display_pixel_width):
8056 New functions.
aac0c6e3
MR
8057 (w32_read_socket, x_calc_absolute_position): Use them.
8058 (w32_initialize_display_info, w32_term_init): Omit removed members
8059 of w32_display_info.
8060
b8ff72fa
SM
8061 * nsterm.m (x_display_pixel_height, x_display_pixel_width):
8062 New functions.
8063 (ns_initialize_display_info): Omit removed members of ns_display_info.
aac0c6e3 8064
b8ff72fa
SM
8065 * xterm.c (x_display_pixel_height, x_display_pixel_width):
8066 New functions.
aac0c6e3
MR
8067 (x_calc_absolute_position): Use them.
8068 (x_term_init): Omit removed `height' and `width' members.
8069
8070 * xfns.c (Fx_display_pixel_width, Fx_display_pixel_height)
b8ff72fa
SM
8071 (compute_tip_xy):
8072 * frame.c (x_fullscreen_adjust):
aac0c6e3
MR
8073 * xmenu.c (menu_position_func): Use x_display_pixel_height and
8074 x_display_pixel_width.
8075
80762008-09-18 Kenichi Handa <handa@m17n.org>
8077
8078 * composite.c (fill_gstring_header): Don't check FROM and TO here.
8079 (composition_compute_stop_pos): Fix handling of static composition.
8080 (Fcomposition_get_gstring): Check FROM and TO at first.
8081
80822008-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
8083
46e722a9 8084 * composite.c (Fcomposition_get_gstring): Yet another int/Lisp_Object
aac0c6e3
MR
8085 mixup (YAILOM).
8086
80872008-09-17 Chong Yidong <cyd@stupidchicken.com>
8088
8089 * indent.c (Fvertical_motion): Use position reported by iterator
8090 instead of PT for determining screen motion (bug#943).
8091
80922008-09-17 Romain Francoise <romain@orebokech.com>
8093
8094 * composite.c (composition_adjust_point): Fix int/EMACS_INT mixup.
8095
80962008-09-17 Kenichi Handa <handa@m17n.org>
8097
8098 * ftfont.c (ftfont_shape_by_flt): Downcase family name.
8099
8100 * composite.c (Fcomposition_get_gstring): Make bigger gstring_work
8101 if necessary.
8102
81032008-09-16 Kenichi Handa <handa@m17n.org>
8104
8105 * coding.c (make_conversion_work_buffer): Avoid calling
8106 Fget_buffer_create if it is not necessary.
8107
81082008-09-15 Martin Rudalics <rudalics@gmx.at>
8109
8110 * window.c (Fselect_window): Don't update window_select_count and
8111 use_time when norecord is not nil.
8112
81132008-09-14 Kenichi Handa <handa@m17n.org>
8114
8115 * fileio.c (Finsert_file_contents): Delete incorrect decrement of
8116 specpdl_ptr.
8117
81182008-09-12 Kenichi Handa <handa@m17n.org>
8119
8120 * indent.c (scan_for_column): Don't handle automatic composition
8121 if the current buffer is not associated with a window.
8122
8123 * composite.c (composition_reseat_it): If the current buffer is
8124 not associated with a window, ignore the automatic composition.
8125 (find_automatic_composition): Likewise.
8126
81272008-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
8128
8129 * term.c (close_gpm): New fun extracted from Fgpm_mouse_stop.
8130 (Fgpm_mouse_stop): Use it.
8131 * termhooks.h (close_gpm): Declare.
8132 * keyboard.c (tty_read_avail_input): Forcefully close the gpm
8133 connection if Gpm_GetEvent fails.
8134
8135 * window.c (set_window_buffer): Always preserve current-buffer.
8136
81372008-09-12 Glenn Morris <rgm@gnu.org>
8138
8139 * charset.c (init_charset): Warn if etc/charsets not found. (Bug#909)
8140
81412008-09-11 Glenn Morris <rgm@gnu.org>
8142
8143 * charset.c (charset-map-path): Doc fix.
8144
81452008-09-10 Kenichi Handa <handa@m17n.org>
8146
8147 * xdisp.c (handle_composition_prop): Set it->cmp_it.ch to -1.
8148
8149 * font.c (Ffont_shape_gstring): Make glyphs of non-nil adjustment
8150 compose a grapheme cluster with the preceding base glyph.
8151
8152 * composite.c (composition_compute_stop_pos): Fix previous change.
8153 Reset cmp_it->id to -1 at first.
8154
81552008-09-10 Glenn Morris <rgm@gnu.org>
8156
8157 * Makefile.in (character.o, chartab.o): Fix config.h typo.
8158
81592008-09-09 Chong Yidong <cyd@stupidchicken.com>
8160
8161 * keyboard.c (read_key_sequence): Reapply translation maps when
8162 switching keyboards.
8163
81642008-09-09 Kenichi Handa <handa@m17n.org>
8165
8166 * ftfont.c (ftfont_shape_by_flt): Use "combining" FLT for ASCII
8167 characters.
8168
8169 * composite.c (FORWARD_CHAR): Fix calculation
8170 of (POSITION).pos_byte.
8171 (composition_compute_stop_pos): Limit the search of composition to
8172 at most 500 characters ahead. If we reach the limit or find a
8173 newline, set cmp_it->ch to -2 and return 0.
8174 (composition_reseat_it): Handle the case that cmp_it->ch is -2.
8175
81762008-09-08 Kenichi Handa <handa@m17n.org>
8177
8178 * indent.c (Fvertical_motion): Be sure to set
8179 it_overshoot_expected if it.cmp_it.id is non-negative.
8180
81812008-09-07 Andreas Schwab <schwab@suse.de>
8182
8183 * callproc.c (Fcall_process): Don't hold references to string data
8184 across garbage collection. Move initialisation of new_argv down
8185 to avoid compiler bug.
8186
81872008-09-07 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
8188
8189 * process.c (Fsystem_process_attributes): Doc fix.
8190
81912008-09-07 Chong Yidong <cyd@stupidchicken.com>
8192
8193 * callproc.c (Fcall_process): Canonicalize current directory name.
8194
8195 * xdisp.c (move_it_to): When moving by vpos, ensure that the
8196 iterator advances to the next line if the current line ends in a
8197 continued tab.
8198
81992008-09-07 Teodor Zlatanov <tzz@lifelogs.com>
8200
8201 * nsfont.m (nsfont_draw): Fix the references to missing gidx data
8202 member to point to cmp_from.
8203
8204 * xdisp.c: Doc fix for references to gidx data member.
8205
82062008-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
8207
8208 * buffer.c (Fbuffer_swap_text): Reset window->point markers.
8209
82102008-09-07 Kenichi Handa <handa@m17n.org>
8211
8212 * composite.c (FORWARD_CHAR): Check STOP after
8213 incrementing (POSITION).pos.
8214
82152008-09-06 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
8216
8217 * process.c (Fsystem_process_attributes): Doc fix.
8218
82192008-09-06 Chong Yidong <cyd@stupidchicken.com>
8220
8221 * keyboard.c (Ftop_level): Doc fix.
8222
82232008-09-06 Eli Zaretskii <eliz@gnu.org>
8224
8225 * xmenu.c (xmenu_show) [!HAVE_X_WINDOWS]: If frame has a
8226 minibuffer, don't let lower part of menu invade the echo area.
8227
8228 * msdos.c (IT_menu_display): Use STRING_CHAR_ADVANCE instead of a
8229 "char *q" to access menu text and advance through it. Revert the
8230 change that displayed ">" instead of ASCII character 0x10.
8231
82322008-09-05 Eli Zaretskii <eliz@gnu.org>
8233
8234 * menu.c (single_menu_item) [!HAVE_BOXES]: Enable emulation of
8235 toggle boxes and radio buttons on MS-DOS as well.
8236
82372008-09-05 Kenichi Handa <handa@m17n.org>
8238
8239 * composite.c (autocmp_chars): Check lookback count.
8240 (composition_compute_stop_pos): Set cmp_it->lookback.
8241 (composition_reseat_it): Check lookback count.
8242 (struct position_record): New struct.
8243 (FORWARD_CHAR, BACKWARD_CHAR, CHAR_COMPOSABLE_P): New macros.
8244 (find_automatic_composition): New function.
8245 (composition_adjust_point): Use find_automatic_composition.
8246
8247 * dispextern.h (struct composition_it): New member lookback.
8248
82492008-09-02 Chong Yidong <cyd@stupidchicken.com>
8250
8251 * indent.c (Fvertical_motion): Don't call move_it_by_lines again
8252 if moving by a single line.
8253
82542008-09-02 Andreas Schwab <schwab@suse.de>
8255
8256 * xterm.c (x_delete_display): Fix merge error.
8257
8258 * fileio.c (Fexpand_file_name): Remove unused variables.
8259
82602008-09-02 Eli Zaretskii <eliz@gnu.org>
8261
8262 * fileio.c (Fexpand_file_name): Copy argument `name' into local
8263 storage on all platforms, not just on DOS_NT.
8264
82652008-09-02 Jason Rumney <jasonr@gnu.org>
8266
b8ff72fa
SM
8267 * w32menu.c (Fx_popup_menu, Fx_popup_dialog, w32_menu_show):
8268 Ensure mouse is not grabbed after menu is finished.
aac0c6e3
MR
8269
82702008-09-01 Chong Yidong <cyd@stupidchicken.com>
8271
8272 * xfaces.c (Finternal_set_alternative_font_family_alist)
8273 (Finternal_set_alternative_font_registry_alist): Properly copy
8274 entire alist structure.
8275
82762008-09-01 Kenichi Handa <handa@m17n.org>
8277
d66c0241 8278 * ftfont.c (ftfont_spec_pattern): Don't create a charset if the
aac0c6e3 8279 representative chars of the script is a vector.
d66c0241
JB
8280 (ftfont_list): Handle the case where the representative chars of
8281 the script is a vector.
aac0c6e3
MR
8282
8283 * character.c (syms_of_character): Docstring of
8284 script-representative-chars fixed.
8285
82862008-08-31 Eli Zaretskii <eliz@gnu.org>
8287
8288 * msdos.c (BUILD_CHAR_GLYPH): New macro.
8289 (IT_menu_display): Use it instead of SET_CHAR_GLYPH to construct
8290 the menu. Allocate larger buffer for `text', to account for
8291 possible ^C characters.
8292
82932008-08-31 Martin Rudalics <rudalics@gmx.at>
8294
8295 * xdisp.c (prepare_menu_bars): Don't call
8296 Vwindow_size_change_functions with arg Qt.
8297
82982008-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
8299
8300 * font.h (font_range):
8301 * fileio.c (report_file_error):
46e722a9
SM
8302 * composite.c (composition_update_it): Yet another int/Lisp_Object
8303 mixup (YAILOM).
aac0c6e3
MR
8304
83052008-08-30 Glenn Morris <rgm@gnu.org>
8306
8307 * data.c (Fmake_variable_frame_local): Doc fix.
8308
8309 * frame.c (Fmodify_frame_parameters): Doc fix.
8310
83112008-08-30 Eli Zaretskii <eliz@gnu.org>
8312
8313 * w32.c (init_user_info): Allocate buf[] with xmalloc using the size
8314 needed by GetTokenInformation.
8315 (w32_system_process_attributes): Check return values of all system
8316 APIs.
8317
8318 * msdos.c (IT_display_cursor): Write "CURSOR ON/OFF" to termscript
8319 only when the state changes.
8320 (IT_update_begin, IT_update_end): Add termscript trace.
8321
8322 * w16select.c (Fw16_set_clipboard_data): Don't encode text if
8323 clipboard is unavailable. Set dst to NULL if it doesn't point to
8324 malloc'ed data.
8325 (Fw16_get_clipboard_data): Initialize htext to NULL, to avoid
8326 passing random values to xfree.
8327
8328 * dispnew.c (init_display): Set `tty's association in frame's
b8ff72fa 8329 parameters alist to the name of the terminal device, if that is known.
aac0c6e3
MR
8330
83312008-08-29 Jason Rumney <jasonr@gnu.org>
8332
8333 * w32uniscribe.c (uniscribe_check_otf): Don't fallback on DFLT script.
8334
83352008-08-29 Eli Zaretskii <eliz@gnu.org>
8336
8337 * composite.c (fill_gstring_body): Avoid compiler warnings.
8338
8339 * font.c (font_fill_lglyph_metrics): Use EMACS_INT in
8340 LGLYPH_SET_CODE to avoid compiler warnings.
8341
2ae37cf0 8342 * makefile.w32-in ($(BLD)/w32uniscribe.$(O)): Depend on composite.h.
aac0c6e3
MR
8343
8344 * composite.h (LGLYPH_SET_CODE): Cast `val' to EMACS_INT.
8345
8346 * w32uniscribe.c (uniscribe_shape): Shut up compiler warning in
8347 LGLYPH_SET_CODE.
8348
83492008-08-29 Kenichi Handa <handa@m17n.org>
8350
8351 * fileio.c (report_file_error): Don't downcase the first character
8352 of errstring if it is still unibyte.
8353
83542008-08-29 Kenichi Handa <handa@m17n.org>
8355
8356 These changes are to re-implement the automatic composition so
8357 that it doesn't use text properties.
8358
8359 * Makefile.in (ftfont.o): Depend on composite.h.
8360 (composite.o): Depend dispextern.h, font.h, frame, and window.h.
8361
8362 * character.h (Vunicode_category_table): Extern it.
8363
8364 * character.c (Vunicode_category_table): New variable.
8365 (syms_of_character): DEFVAR_LISP Vunicode_category_table.
8366
8367 * chartab.c (optimize_sub_char_table): Perform more greedy
8368 optimization.
8369
b8ff72fa
SM
8370 * composite.h (enum composition_method):
8371 Delete COMPOSITION_WITH_GLYPH_STRING.
aac0c6e3
MR
8372 (COMPOSITION_METHOD): Don't check COMPOSITION_WITH_GLYPH_STRING.
8373 (Vcomposition_function_table): Extern it.
8374 (LGSTRING_XXX, LGLYPH_XXX): Macros moved from font.h.
8375 (composition_gstring_put_cache, composition_gstring_from_id)
8376 (composition_gstring_p, composition_gstring_width)
8377 (composition_compute_stop_pos, composition_reseat_it)
8378 (composition_update_it, composition_adjust_point): Extern them.
8379 (Fcomposition_get_gstring): EXFUN it.
8380
d66c0241 8381 * composite.c: Include window.h, frame.h, dispextern.h, font.h.
aac0c6e3
MR
8382 (Vcomposition_function_table)
8383 (get_composition_id): Don't handle COMPOSITION_WITH_GLYPH_STRING.
b8ff72fa
SM
8384 (gstring_hash_table, gstring_work, gstring_work_headers):
8385 New variables.
aac0c6e3
MR
8386 (gstring_lookup_cache, composition_gstring_put_cache)
8387 (composition_gstring_from_id, composition_gstring_p)
8388 (composition_gstring_width, fill_gstring_header)
8389 (fill_gstring_body, autocmp_chars, composition_compute_stop_pos)
8390 (composition_reseat_it, composition_update_it)
b8ff72fa 8391 (composition_adjust_point, Fcomposition_get_gstring): New functions.
aac0c6e3
MR
8392 (syms_of_composite): Initialize gstring_hash_table, gstrint_work,
8393 and gstring_work_headers. DEFVAR_LISP composition-function-table.
8394 Defsubr compostion_get_gstring.
8395
8396 * dispextern.h (struct glyph): New union u.cmp. Delete the member
8397 cmp_id.
8398 (struct glyph_string): Delete the member gidx. New members
8399 cmp_id, cmp_from, and cmp_to.
8400 (enum it_method): Delete GET_FROM_COMPOSITION.
8401 (struct composition_it): New struct.
8402 (struct it): New member cmp_it, and iterator_stack_entry.cmp_it.
8403 Delete c, len, cmp_id, cmp_len in u.comp.
8404
8405 * font.h (enum lgstring_indices): Delete it.
b8ff72fa 8406 (LGSTRING_XXX, LGLYPH_XXX): Move these macros to composite.h.
aac0c6e3 8407 (enum lglyph_indices): Likewise.
b8ff72fa 8408 (font_range): Adjust extern.
aac0c6e3
MR
8409 (font_fill_lglyph_metrics): Extern it.
8410
8411 * font.c (QCf): New variable.
8412 (check_gstring): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
8413 (font_prepare_composition): Delete this function.
8414 (font_range): Type and arguments changed.
8415 (Ffont_make_gstring, Ffont_fill_gstring): Delete them.
8416 (font_fill_lglyph_metrics): New function.
b8ff72fa 8417 (Ffont_shape_text): Rename to Ffont_shape_gstring and change arguments.
aac0c6e3 8418 (syms_of_font): DEFSYM QCf. Delete defsubr for
b8ff72fa
SM
8419 Sfont_make_gstring, Sfont_fill_gstring, Sfont_shape_text.
8420 Defsubr Sfont_shape_gstring.
aac0c6e3
MR
8421
8422 * fontset.h (font_for_char): Extern it.
8423
8424 * fontset.c (font_for_char): New function.
8425
8426 * ftfont.c: Include composite.h.
8427 (ftfont_resolve_generic_family): Add langset "en" to pattern.
b8ff72fa 8428 (ftfont_shape_by_flt): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
aac0c6e3
MR
8429
8430 * indent.c: Include composite.h and dispextern.h.
8431 (check_composition): Delete this function.
8432 (scan_for_column): Handle composition by
8433 composition_compute_stop_pos, composition_reseat_it, and
8434 composition_update_it.
8435 (compute_motion): Likewise.
8436 (Fvertical_motion): Fix checking of composition.
8437
8438 * keyboard.c (adjust_point_for_property): Check composition by
8439 composition_adjust_point.
8440
b8ff72fa 8441 * nsterm.m (ns_draw_glyph_string): Adjust for the change of
aac0c6e3
MR
8442 struct glyph_string.
8443
b8ff72fa
SM
8444 * term.c (encode_terminal_code): Adjust for the change of struct glyph.
8445 (append_composite_glyph): Adjust for the change of struct it and
aac0c6e3
MR
8446 struct glyph.
8447 (produce_composite_glyph): Likewise.
8448
b8ff72fa
SM
8449 * w32term.c (x_draw_composite_glyph_string_foreground):
8450 Adjust for the change of struct glyph_string.
aac0c6e3
MR
8451 (x_draw_glyph_string): Likewise.
8452
8453 * w32uniscribe.c (struct uniscribe_font_info): Include composite.h.
8454 (uniscribe_shape): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
8455
8456 * xdisp.c: Include font.h.
8457 (it_props): Delete the entry for Qauto_composed.
8458 (init_iterator): Initialize it->cmp_it.id to -1.
8459 (compute_stop_pos): Call composition_compute_stop_pos.
b8ff72fa 8460 (face_before_or_after_it_pos): Adjust for the change of struct it.
aac0c6e3
MR
8461 (handle_auto_composed_prop): Delete it.
8462 (handle_composition_prop): Handle only static composition.
8463 (next_overlay_string): Remove it->method == GET_FROM_COMPOSITION
8464 from xassert. Initialize it->cmp_it.stop_pos.
b8ff72fa 8465 (push_it): Adjust for the change of struct it.
aac0c6e3
MR
8466 (pop_it): Likewise.
8467 (get_next_element): Delete next_element_from_composition.
8468 (CHAR_COMPOSED_P): New macro.
8469 (get_next_display_element): For automatic composition, get a face
8470 from the font in the glyph-string.
8471 (set_iterator_to_next): For GET_FROM_BUFFER and GET_FROM_STRING,
b8ff72fa 8472 check composition by it->cmp_it.id. Delete GET_FROM_COMPOSITION case.
aac0c6e3
MR
8473 (next_element_from_string): Check if the character at the current
8474 position is composed by CHAR_COMPOSED_P.
8475 (next_element_from_buffer): Likewise.
d66c0241
JB
8476 (next_element_from_composition): Adjust for the change of struct it.
8477 Update it->cmp_it.
b8ff72fa
SM
8478 (dump_glyph): Adjust for the change of struct glyph.
8479 (fill_composite_glyph_string): Adjust for the change of struct
aac0c6e3
MR
8480 it and struct glyph. Don't handle automatic composition here.
8481 (fill_gstring_glyph_string): New function.
8482 (x_get_glyph_overhangs): Handle automatic composition.
b8ff72fa 8483 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the change of struct glyph.
aac0c6e3
MR
8484 (BUILD_GSTRING_GLYPH_STRING): New macro.
8485 (BUILD_GLYPH_STRINGS): Call BUILD_GSTRING_GLYPH_STRING for
8486 automatic composition.
b8ff72fa 8487 (append_composite_glyph): Adjust for the change of struct it and
aac0c6e3 8488 struct glyph.
b8ff72fa 8489 (x_produce_glyphs): Adjust for the change of struct it.
aac0c6e3 8490
b8ff72fa 8491 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
aac0c6e3
MR
8492 the change of struct glyph_string.
8493 (x_draw_glyph_string): Likewise.
8494
84952008-08-29 Glenn Morris <rgm@gnu.org>
8496
8497 * buffer.c (word-wrap): Doc fix.
8498 * xdisp.c (truncate-partial-width-windows): Doc fix.
8499 Increase default to 50.
8500
85012008-08-29 Chong Yidong <cyd@stupidchicken.com>
8502
8503 * xdisp.c (update_tool_bar_unwind): New function.
8504 (update_tool_bar): Temporarily set selected frame before building
8505 tool-bar items.
8506
85072008-08-28 Michael Albinus <michael.albinus@gmx.de>
8508
8509 * dbusbind.c (XD_ERROR, XD_DEBUG_MESSAGE): Use strncpy and
8510 snprintf, respectively.
8511 (xd_append_arg): Convert strings with Fstring_make_unibyte.
8512
85132008-08-28 Chong Yidong <cyd@stupidchicken.com>
8514
8515 * Makefile.in: Revert (undocumented) 2008-08-20 change adding
8516 LDFLAGS to GNUstep CC invocation.
8517
85182008-08-27 Chong Yidong <cyd@stupidchicken.com>
8519
8520 * indent.c (Fvertical_motion): Revert last change. Handle the
8521 general case where we are moving forward, and PT spans multiple
8522 screen lines.
8523
8524 * eval.c (find_handler_clause): Temporarily increase
8525 max-lisp-eval-depth while printing the backtrace buffer, to
8526 guarantee that help-mode code can run.
8527
85282008-08-27 Eli Zaretskii <eliz@gnu.org>
8529
8530 * msdos.c (Fmsdos_remember_default_colors): Don't reverse frame
8531 colors under -rv.
8532 (IT_set_frame_parameters): Don't swap foreground and background
8533 colors if `(reverse . t)' is present in the frame properties.
8534 (internal_terminal_init): Call init_frame_faces only for the
8535 initial frame.
8536
85372008-08-27 Andreas Schwab <schwab@suse.de>
8538
8539 * dired.c (Ffile_attributes): Avoid compiler warning in bitshift.
8540
85412008-08-27 Andreas Schwab <schwab@suse.de>
8542
8543 * search.c (search_buffer): Set char_base to zero only at the end.
8544
85452008-08-27 Kenichi Handa <handa@m17n.org>
8546
b8ff72fa 8547 * fileio.c (report_file_error): Fix handling of multibyte error string.
aac0c6e3
MR
8548
85492008-08-27 Andreas Seltenreich <seltenreich@gmx.de>
8550
8551 * xterm.c (x_term_init): Temporarily hide the partially
8552 initialized terminal while calling vendor-specific-keysyms.
8553
85542008-08-26 Eli Zaretskii <eliz@gnu.org>
8555
8556 * msdos.c (internal_terminal_init): Most initializations done only
8557 once, especially initial_screen_colors[] and termscript open.
8558
85592008-08-26 Chong Yidong <cyd@stupidchicken.com>
8560
8561 * eval.c (Fcondition_case): Doc fix.
8562
8563 * widgetprv.h (EmacsFramePart): Change font member to the new font
8564 struct.
8565
8566 * widget.c: Include character.h and font.h for XSETFONT.
8567 (setup_frame_gcs): Compute X font id from font struct, just once.
8568
85692008-08-26 Eli Zaretskii <eliz@gnu.org>
8570
8571 * term.c (get_named_tty): Fix last change.
8572
85732008-08-26 Chong Yidong <cyd@stupidchicken.com>
8574
8575 * indent.c (Fvertical_motion): If moving forward starting from a
b8ff72fa 8576 multi-line string, move the iterator to the last line of that string.
aac0c6e3
MR
8577
85782008-08-25 Eli Zaretskii <eliz@gnu.org>
8579
8580 * frame.c (do_switch_frame): Mark previously displayed frame as
8581 obscured for FRAME_MSDOS_P frames as well.
8582
85832008-08-24 Eli Zaretskii <eliz@gnu.org>
8584
8585 * frame.c (make_terminal_frame): Initialize f->terminal,
8586 f->terminal->reference_count, and scroll bars on MS-DOS as well.
8587 Set the top frame to newly created frame.
8588 (Fmake_terminal_frame): Reuse the_only_display_info.
8589
8590 * vm-limit.c (get_lim_data) [MSDOS]: Use alternative methods of
8591 estimating available memory.
8592
b97439ce 85932008-08-23 David Reitter <david.reitter@gmail.com>
aac0c6e3
MR
8594
8595 * nsterm.m (ns_draw_window_cursor): Don't call
8596 NSDisableScreenUpdates and NSEnableScreenUpdates on
8597 non-NS_IMPL_COCOA systems.
8598
85992008-08-23 Andreas Schwab <schwab@suse.de>
8600
8601 * process.c (procfs_system_process_attributes): Fix use of
8602 uninitialized variables.
8603
86042008-08-23 Eli Zaretskii <eliz@gnu.org>
8605
8606 * emacs.c (main) [MSDOS]: Call syms_of_xmenu.
8607
8608 * dispnew.c (init_display): Remove MS-DOS specific conditions for
8609 calling tty-set-up-initial-frame-faces.
8610
b8ff72fa
SM
8611 * xmenu.c (Fx_popup_dialog, Fx_popup_menu, xmenu_show):
8612 Allow MSDOS frames along with X frames.
aac0c6e3
MR
8613
8614 * termhooks.h (TERMINAL_ACTIVE_P): Handle output_msdos_raw in
8615 addition to output_termcap.
8616
8617 * xdisp.c (redisplay_internal) [MSDOS]: Don't call set_tty_color_mode.
8618
8619 * termchar.h (FRAME_TTY): Support output_msdos_raw.
8620 (struct tty_display_info) [MSDOS]: Add fields related to mouse
8621 highlight.
8622
8623 * process.c [!subprocesses]: Define QCname.
8624 (syms_of_process): Intern and staticpro it.
8625
8626 * w16select.c (Fw16_set_clipboard_data, Fw16_get_clipboard_data):
b8ff72fa
SM
8627 Adjust for changes in encoding/decoding routines.
8628 Use encode_coding_object and decode_coding_object instead of
aac0c6e3
MR
8629 encode_coding and decode_coding.
8630
b8ff72fa 8631 * sysdep.c (init_sys_modes): Call dos_ttraw with tty_out as argument.
aac0c6e3
MR
8632
8633 * dosfns.c: Include frame.h before termhooks.h.
8634 (dos_cleanup): Use CURTTY ()->termscript instead of a global
8635 variable termscript.
8636
8637 * s/msdos.h (USER_FULL_NAME): Define.
8638 (SYSTEM_PURESIZE_EXTRA): Bump up to 100K.
8639
8640 * editfns.c (USER_FULL_NAME): Define to pw->pw_gecos if undefined.
8641 (Fuser_full_name): Use USER_FULL_NAME instead of a literal
8642 pw->pw_gecos.
8643
8644 * keyboard.c (handle_interrupt) [MSDOS]: Call cursor_to with
8645 SELECTED_FRAME as additional (1st) argument.
8646 (tty_read_avail_input): Handle output_msdos_raw in
8647 addition to output_termcap.
8648
8649 * msdos.c: Include frame.h before termhooks.h.
8650 (mouse_on, mouse_off, mouse_moveto, mouse_init)
8651 (msdos_set_cursor_shape, IT_set_face, IT_write_glyphs)
8652 (show_mouse_face, IT_clear_end_of_line, IT_clear_screen)
8653 (IT_clear_to_end, IT_cursor_to, IT_display_cursor, IT_cmgoto)
8654 (IT_set_terminal_modes, IT_reset_terminal_modes)
8655 (IT_set_frame_parameters): Use tty->termscript instead of a global
8656 variable termscript.
8657 (IT_write_glyphs): Use tty->terminal->terminal_coding instead of a
8658 global variable terminal_coding. Don't refer to
8659 Vnonascii_translation_table.
8660 (internal_terminal_init): Set Vwindow_system in current_kboard.
8661 Don't use TTY_CHAR_INS_DEL_OK. Set Vinitial_window_system.
8662 Announce date and time of session start, if termscript is open.
8663 Don't zero out the_only_display_info (it is done in
b8ff72fa
SM
8664 term.c:init_tty). Open termscript only of not already open.
8665 Log "SCREEN SAVED" here, instead of IT_set_terminal_modes. Init mouse
aac0c6e3
MR
8666 here instead of dos_ttraw. Don't initialize display if this is an
8667 initial tty. Don't set FRAME_FONT.
8668 (Vwindow_system_version): Bump to 23.
8669 (dos_ttraw): Accept a TTY argument; all callers fixed. If mouse
8670 is available, set up mouse_position_hook.
8671 (dos_ttraw, IT_set_terminal_modes): If called with initial
8672 terminal, do nothing.
8673 (IT_set_frame_parameters): Handle the Qtty_type frame
8674 parameter by calling internal_terminal_init.
8675 (dos_set_window_size, show_mouse_face)
8676 (clear_mouse_face, IT_note_mode_line_highlight)
8677 (IT_note_mouse_highlight, IT_update_begin, IT_frame_up_to_date)
8678 (dos_rawgetc): Use tty_display_info instead of x_display_info.
8679 (initialize_msdos_display): New function.
8680 (IT_cursor_to, IT_clear_to_end, IT_clear_screen)
8681 (IT_clear_end_of_line, IT_insert_glyphs, IT_write_glyphs)
8682 (IT_delete_glyphs, IT_ring_bell, IT_reset_terminal_modes)
8683 (IT_set_terminal_modes, IT_set_terminal_window, IT_update_begin):
b8ff72fa 8684 Accept additional argument: a pointer to a frame. Update all callers.
aac0c6e3
MR
8685 (request_sigio, unrequest_sigio): Don't define, now defined on
8686 sysdep.c.
8687 (IT_write_glyphs): Rewrite to use encode_terminal_code.
8688
8689 * term.c [MSDOS]: Include msdos.h.
8690 (init_tty) [MSDOS]: Reuse most of WINDOWSNT branch. Change cpp
8691 conditional to DOS_NT. Allow only one call to this function in a
8692 session. Don't allocate a new struct tty_display_info; instead,
8693 reuse the_only_display_info. Call get_tty_size to get screen
8694 dimensions. Call init_baud_rate to set bad_rate.
8695 (dissociate_if_controlling_tty) [MSDOS]: Ifdef away function body.
8696 (Fsuspend_tty) [MSDOS]: Don't close input and output.
b8ff72fa 8697 (Fresume_tty) [MSDOS]: Don't reopen the TTY; instead, use stdin/stdout.
aac0c6e3
MR
8698 (get_tty_terminal, get_named_tty, Ftty_type)
8699 (Fcontrolling_tty_p): Handle output_msdos_raw in addition to
8700 output_termcap.
b8ff72fa
SM
8701 (Fresume_tty, Fsuspend_tty, init_tty, delete_tty):
8702 Call add_keyboard_wait_descriptor and delete_keyboard_wait_descriptor
2ae37cf0 8703 only when subprocesses are supported.
aac0c6e3
MR
8704
8705 * frame.c (make_terminal_frame) [MSDOS]: Adjust initialization of
8706 f->output_data.x.
8707 (Fmake_terminal_frame) [MSDOS]: Don't allow creation of new
8708 terminal devices.
8709
5582fbc7 8710 * msdos.h: Remove definition of struct x_display_info and struct
aac0c6e3
MR
8711 x_output.
8712 (FRAME_FONT): Use output_data.tty.
8713 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL): Don't define.
b8ff72fa
SM
8714 (struct x_display_info): Rename from display_info. Update all users in
8715 msdos.c.
aac0c6e3 8716 (struct x_output): Remove background_pixel and foreground_pixel.
b8ff72fa 8717 (the_only_display_info): Rename from the_only_x_display.
aac0c6e3
MR
8718 (dos_ttraw): Update prototype.
8719
8720 * Makefile.in (MSDOS_OBJ): Add xmenu.o.
8721 (SOME_MACHINE_LISP): Add ../lisp/term/pc-win.elc.
8722
87232008-08-23 Jason Rumney <jasonr@gnu.org>
8724
8725 * image.c (enum tiff_keyword_index, tiff_format): Add :index keyword.
8726 (fn_TIFFSetDirectory): New library function used.
8727 (init_tiff_functions) [HAVE_NTGUI]: Initialize it.
8728 (tiff_load): Use :index to select among multiple images. Set count
8729 property when multiple images exist.
8730 (gif_format): Use :index, not :image.
8731
87322008-08-23 Chong Yidong <cyd@stupidchicken.com>
8733
8734 * xdisp.c (try_scrolling): Check INT_MAX instead of
8735 MOST_POSITIVE_FIXNUM for maximum integer value. Include limits.h
8736 to obtain INT_MAX.
8737
87382008-08-21 İsmail Dönmez <ismail@namtrac.org> (tiny change)
8739
8740 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase on GTK+.
8741
87422008-08-21 Christian Faulhammer <opfer@gentoo.org> (tiny change)
8743
8744 * Makefile.in (temacs${EXEEXT}): On GNUstep, link to appropriate
8745 GNUstep library location.
8746
87472008-08-21 Chong Yidong <cyd@stupidchicken.com>
8748
8749 * xfaces.c (x_update_menu_appearance): Check validity of menu font
8750 before using it.
8751
8752 * puresize.h (BASE_PURESIZE): Increase to 1250000.
8753
87542008-08-20 Adrian Robert <Adrian.B.Robert@gmail.com>
8755
8756 * nsfns.m (ns-read-file-name): Add casts to avoid warning.
8757 (ns-convert-utf8-nfd-to-nfc): Warn if cannot execute correctly.
8758 * nsfont.m (nsfont_draw): Compare indexed colors to 0, not nil.
8759 * nsterm.h (EmacsView-unlockFocusNeedsFlush:): Add declaration.
8760 (EmacsApp-cursor_blink_handler): Remove declaration.
8761 * nsterm.m (ns_draw_glyph_string): Update first conditional body to
8762 match 01 Feb 2008 changes in xterm.c.
8763 (ns_read_socket): Add cast to avoid warning.
8764 (EmacsApp-application:openFiles:): Don't call replyToOpenOrPrint: on
8765 GNUstep.
8766
87672008-08-20 Chong Yidong <cyd@stupidchicken.com>
8768
8769 * xselect.c (x_get_foreign_selection): Return nil if desired
8770 selection could not be obtained, instead of signalling an error.
8771
87722008-08-20 David Reitter <david.reitter@gmail.com>
8773
8774 * nsfns.m (ns_lisp_to_cursor_type): Replace with generic xfns.c.
8775 * nsterm.m: Remove ns-specific code for cursor blinking.
8776 (ns_draw_window_cursor): Clear cursor properly rather than
8777 redrawing the area. Respect width of bar cursors.
8778 These changes enable the use of generic blink-cursor-mode and
8779 generic cursor types in NS and support smooth cursor movements (do
8780 not blink off after command).
8781 * xdisp.c (get_phys_cursor_geometry): Redraw wider rectangle on
8782 Nextstep, too.
8783
87842008-08-19 Kenichi Handa <handa@m17n.org>
8785
8786 * font.c (Vfont_log_deferred): New variable.
8787 (font_add_log): Check Vfont_log_deferred.
8788 (font_deferred_log): New function.
8789
8790 * font.h (font_deferred_log): Extern it.
8791
8792 * fontset.c (reorder_font_vector): Use encoding charset of fonts
8793 for sorting.
8794 (face_for_char): Use deferred log.
8795
87962008-08-18 Kenichi Handa <handa@m17n.org>
8797
8798 * fontset.c (face_for_char): Add font log.
8799
8800 * font.c (font_add_log): Add the font properties :script, :lang,
8801 and :otf in the log.
8802
88032008-08-17 Chong Yidong <cyd@stupidchicken.com>
8804
8805 * xdisp.c: Remove dead code.
8806 (handle_invisible_prop, next_overlay_string): Defer call to
8807 setup_for_ellipsis.
8808 (handle_stop, set_iterator_to_next): Call setup_for_ellipsis.
8809
88102008-08-15 Chong Yidong <cyd@stupidchicken.com>
8811
8812 * xfaces.c (lookup_derived_face): Properly handle possible zero
8813 return value of get_lface_attributes.
8814 (merge_faces): Don't tell lookup_derived_face to signal an error
8815 if face is not found.
8816
8817 * dired.c (Fdirectory_files): Doc fix.
8818
8819 * process.c (make_process): Initialize kill_without_query struct
8820 member.
8821
88222008-08-15 Eli Zaretskii <eliz@gnu.org>
8823
8824 * w32.c (w32_system_process_attributes) [_MSC_VER < 1300]:
8825 Alternative calculation of totphys for Visual Studio 6.
8826
8827 * w32fns.c [_MSC_VER && _MSC_VER < 1300]: Declare HMONITOR.
8828
8829 * w32.c (_MEMORY_STATUS_EX, MEMORY_STATUS_EX, LPMEMORY_STATUS_EX):
8830 Rename from _MEMORYSTATUSEX, MEMORYSTATUSEX, LPMEMORYSTATUSEX.
8831 All users changed.
8832 (stat): Only root directory passed to GetDriveType. Allow RAM
8833 disk as well as local fixed disk when w32-get-true-file-attributes
8834 is set to `local'.
8835 (CopySid_Proc, EqualSid_Proc, GetLengthSid_Proc): New typedefs.
8836 (equal_sid, get_length_sid, copy_sid): New wrapper functions.
8837 (w32_cached_id, w32_add_to_cache): New functions.
8838 (get_name_and_id): Look account names in the cache before calling
8839 lookup_account_sid.
8840 (g_b_init_get_length_sid, g_b_init_equal_sid, g_b_init_copy_sid):
8841 New initialization flags.
8842 (globals_of_w32): Initialize them to zero.
8843 (w32_system_process_attributes): Use w32_cached_id and
8844 w32_add_to_cache.
8845
88462008-08-14 Lawrence Mitchell <wence@gmx.li>
8847
8848 * lread.c (Fread_char, Fread_char_exclusive): If no character
8849 event is read before timeout is reached, return nil, rather than
8850 converting to a number.
8851
88522008-08-14 Chong Yidong <cyd@stupidchicken.com>
8853
8854 * fns.c (use_dialog_box): Doc fix.
8855
8856 * s/darwin.h: Undefine HAVE_RES_INIT, which appears to be harmful
8857 on OS X.
8858
88592008-08-13 Chong Yidong <cyd@stupidchicken.com>
8860
8861 * frame.c (Qns_parse_geometry): New var.
8862 (Fx_parse_geometry): For HAVE_NS, call ns-parse-geometry.
8863
88642008-08-11 Chong Yidong <cyd@stupidchicken.com>
8865
8866 * xdisp.c (x_produce_glyphs): Handle the case when font has no
8867 space character in calculating tabs.
8868
88692008-08-11 Dan Nicolaescu <dann@ics.uci.edu>
8870
8871 * Makefile.in (bootstrap-emacs): Use ln -f in the CANNOT_DUMP case.
8872
88732008-08-10 Glenn Morris <rgm@gnu.org>
8874
8875 * process.c (procfs_system_process_attributes): Use EMACS_INTs to
8876 silence gcc "limited range of data type" warnings in some
8877 make_fixnum_or_float calls.
8878
88792008-08-09 Eli Zaretskii <eliz@gnu.org>
8880
8881 * w32.c (w32_system_process_attributes): If the process does not
8882 exist, return nil.
8883
8884 * w32.c: Include thelp32.h, psapi.h and coding.h.
8885 (_MEMORYSTATUSEX, _PROCESS_MEMORY_COUNTERS_EX): New struct
8886 declarations.
8887 (CreateToolhelp32Snapshot_Proc, Process32First_Proc)
8888 (Process32Next_Proc): New typedefs.
8889 (g_b_init_create_toolhelp32_snapshot, g_b_init_process32_first)
8890 (g_b_init_process32_next, g_b_init_open_thread_token)
8891 (g_b_init_impersonate_self, g_b_init_revert_to_self)
8892 (g_b_init_get_process_memory_info, g_b_init_global_memory_status)
8893 (g_b_init_get_process_working_set_size)
8894 (g_b_init_global_memory_status_ex): New static variables.
8895 (globals_of_w32): Initialize them.
8896 (create_toolhelp32_snapshot, process32_first, process32_next)
8897 (open_thread_token, impersonate_self, revert_to_self)
8898 (get_process_memory_info, get_process_working_set_size)
8899 (global_memory_status, global_memory_status_ex): New wrapper
8900 functions.
8901 (w32_list_system_processes, w32_system_process_attributes)
8902 (enable_privilege, restore_privilege, ltime, process_times):
8903 New functions.
8904 (convert_time_raw): New function.
8905 (convert_time): Remove conversion of FILETIME into time in 100
8906 nsec units, call convert_time_raw instead.
8907
8908 * process.h (w32_list_system_processes, w32_system_process_attributes):
8909 Add prototypes.
8910 (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess, Qttname)
8911 (Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime, Qcutime)
8912 (Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs, Quser, Qgroup)
8913 (Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime): Add extern declarations.
8914
8915 * process.c (Fsystem_process_attributes): Doc fix.
8916
89172008-08-08 Chong Yidong <cyd@stupidchicken.com>
8918
8919 * xdisp.c (move_it_to): When stopping at a charpos, check if that's
8920 a continued multi-char glyph; if so, advance to the actual glyph.
8921
89222008-08-07 Dan Nicolaescu <dann@ics.uci.edu>
8923
8924 * s/darwin.h (OTHER_FILES): Do not define here, defined in config.in.
8925
8926 * Makefile.in (ALL_OBJC_CFLAGS): New variable.
8927 (.m.o): Use it.
8928 * config.in: Regenerate.
8929
89302008-08-07 Chong Yidong <cyd@stupidchicken.com>
8931
8932 * xdisp.c (redisplay_window): Revert last change.
8933 (try_window): Check bottom scroll margin too.
8934
89352008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
8936
8937 * config.in: Regenerate.
8938
8939 * Makefile.in (emacs): Remove ifndef NS conditional for 'emacs
8940 -list-load-path-shadows'.
8941 (nsgui.h): Reduce number of things depending on it.
8942
89432008-08-06 Chong Yidong <cyd@stupidchicken.com>
8944
8945 * xdisp.c (try_scrolling): Use iterator to find the scroll margin,
8946 instead of window-end which does the wrong thing at eob.
8947 (try_cursor_movement): Minor optimization.
8948 (redisplay_window): If scroll margin is defined, don't assume
8949 window doesn't need scrolling.
8950
89512008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
8952
8953 * config.in: Regenerate.
8954
8955 * Makefile.in: Move nsXXX.m dependencies into big alphabetical list.
8956 (mostlyclean): Don't delete *.d under NS.
8957
8958 * nsterm.h (NS_HAVE_INTEGER): Change to NS_HAVE_NSINTEGER.
8959
89602008-08-06 Kenichi Handa <handa@m17n.org>
8961
8962 * xfont.c (xfont_list_family): Return a list of symbols, not strings.
8963
89642008-08-06 Andreas Schwab <schwab@suse.de>
8965
8966 * config.in: Regenerate.
8967
89682008-08-05 Chong Yidong <cyd@stupidchicken.com>
8969
8970 * xdisp.c (redisplay_window): Don't enforce scroll-margin when
8971 forcing a window start.
8972
8973 * fileio.c (Vauto_save_list_file_name): Move here from file.el.
8974 (auto_save_1): Update modtime when auto-save-list-file-name is on.
8975
89762008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
8977
8978 * emacs.c (main): Under NS, set working dir to HOME when get a "psn"
8979 argument.
8980
89812008-08-05 Juanma Barranquero <lekktu@gmail.com>
8982
8983 * buffer.c (syms_of_buffer) <scroll-up-aggressively>:
8984 <scroll-down-aggressively, before-change-functions>:
8985 <after-change-functions>: Reflow docstrings.
8986
89872008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
4e2af782 8988 Ken Raeburn <raeburn@gnu.org>
aac0c6e3
MR
8989
8990 Dock menu customization, based on a patch by Ken Raeburn, plus some
8991 other fixes.
8992 * nsmenu.m (dockMenu): New variable.
8993 (EmacsDialog -clicked:): Fix mistake in change of 2008-07-17.
8994
8995 * nsterm.h (dockMenu): Declare.
8996
8997 * nsterm.m (KEY_NS_NEW_FRAME): New definition.
8998 (ns_term_init): Initialize dockMenu.
8999 (EmacsApp -newFrame:, -applicationDockMenu:): New methods.
9000 (EmacsView -windowShouldClose:): Don't behave specially if <= 1 frame
9001 left.
9002
9003 * lisp.h (LSB_TAG): Use on DARWIN_OS, not NS_IMPL_COCOA.
9004
90052008-08-04 Chong Yidong <cyd@stupidchicken.com>
9006
9007 * nsterm.h: Test directly for NS_HAVE_INTEGER before defining it.
9008
9009 * config.in: Regenerate.
9010
90112008-08-04 Seiji Zenitani <zenitani@mac.com>
9012
9013 * nsfns.m (x-create-frame): Set the frame parameter alpha to nil.
9014
90152008-08-04 Chong Yidong <cyd@stupidchicken.com>
9016
9017 * nsterm.h (find_and_call_menu_selection): Fix prototype.
9018
90192008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
9020
9021 * emacs.c (main: unexec_init_emacs_zone): Call if on DARWIN_OS.
9022
9023 * keyboard.h: Comment an #endif.
9024
9025 * lisp.h (have_menus_p): Adjust comment.
9026
9027 * menu.c (find_and_return_menu_selection): Fix comparison with
9028 client_data.
9029
9030 * nsmenu.m (popup_activated_flag): New variable.
9031 (popup_activated): New function.
9032 (menu-or-popup-active-p): New exported lisp definition.
9033 (ns_popup_menu): Set popup_activated_flag. Call discard_menu_items()
9034 when popup done.
9035 (ns_popup_dialog): Set popup_activated_flag.
9036
9037 * nsterm.m (EmacsView -conversationIdentifier): Use NSInteger
9038 version for GNUstep (handled by conditional typedef in nsterm.m).
9039 (ns_get_color): Remove special-casing for "darkblue", "dark blue" (now
9040 in rgb.txt).
9041
9042 * process.c (init_process): Use DARWIN_OS, not DARWIN.
9043
9044 * sysselect.h: Conditionalize init_process undef on DARWIN_OS.
9045
9046 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): Do it also under NS.
9047
9048 * xdisp.c (redisplay_internal, note_mouse_highlight): Under NS,
9049 shortcircuit if popup_activated like GTK and X toolkit.
9050
9051 * m/inter386.h: Change DARWIN to DARWIN_OS.
9052
9053 * s/darwin.h: Add #define DARWIN_OS. Get rid of C_SWITCH_SYSTEM def.
9054 Change LIBS_MACGUI to LIBS_NSGUI. Move temacs-conditionalized defs
9055 closer to C_SWITCH_SYSTEM_TEMACS so usage is understood. Expand
9056 comment on NO_SOCK_SIGIO.
9057
90582008-08-03 Chong Yidong <cyd@stupidchicken.com>
9059
9060 * nsterm.m (windowDidResize): Remove stopModal call.
9061
90622008-08-03 Andreas Schwab <schwab@suse.de>
9063
9064 * vm-limit.c (get_lim_data) [HAVE_GETRLIMIT && RLIMIT_AS]: Define.
9065 (check_memory_limits): Don't handle HAVE_GETRLIMIT here.
9066
90672008-08-02 Chong Yidong <cyd@stupidchicken.com>
9068
9069 * vm-limit.c (check_memory_limits): Don't use getrlimit on cygwin.
9070 Don't use uninitialized pointer variable when using getrlimit.
9071
90722008-08-02 Jason Rumney <jasonr@gnu.org>
9073
9074 * w32font.c (compute_metrics): Don't mess with glyph_idx setting here.
9075
90762008-08-02 Eli Zaretskii <eliz@gnu.org>
9077
9078 * alloc.c (NSTATICS): Bump to 0x640.
9079
9080 * s/gnu-linux.h (HAVE_PROCFS, LISTPROC, PROCATTR): New defines.
9081
9082 * lisp.h: Add prototype for directory_files_internal.
9083
9084 * process.c (Fsystem_processes_list, Fsystem_process_attributes):
9085 New functions.
9086 (syms_of_process): Defsubr them. Add initializations for various
9087 Q* symbols used in procfs_system_process_attributes.
9088 (procfs_list_system_processes, procfs_system_process_attributes)
9089 [HAVE_PROCFS]: New functions.
9090 (time_from_jiffies, ltime_from_jiffies, get_up_time, procfs_ttyname)
9091 (procfs_get_total_memory): New functions.
9092
90932008-08-01 Juanma Barranquero <lekktu@gmail.com>
9094
9095 * xfaces.c (Fx_load_color_file): Fix previous change;
9096 it is #ifdef WINDOWSNT, not WINDOWS_NT.
9097
90982008-08-01 Michael Albinus <michael.albinus@gmx.de>
9099
9100 * dbusbind.c (xd_read_message): Handle D-Bus error messages.
9101
91022008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
9103
9104 * nsterm.h (NSInteger, NSUInteger): Add defines for non-Leopard.
9105
91062008-08-01 Chong Yidong <cyd@stupidchicken.com>
9107
9108 * nsfns.m (ns_frame_parm_handlers): Add empty entry for x_set_alpha.
9109
9110 * nsterm.m (EmacsApp -application:openFiles:): GNUstep does not
9111 define NSApplicationDelegateReplySuccess.
9112 (EmacsView -converstationIdentifier): Use long instead of
9113 NSInteger for GNUstep, since it doesn't have NSInteger.
9114
9115 * xmenu.c: Revert last change.
9116
9117 * keyboard.h: Fix last change.
9118
91192008-08-01 Juanma Barranquero <lekktu@gmail.com>
9120
9121 * xfaces.c (x-load-color-file): Use RGB() instead of manually shifting
9122 on Windows.
9123
91242008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
9125
9126 Warning clearing and clean-up in NS port.
9127 * keyboard.h (xmalloc_widget_value, digest_single_submenu):
9128 Add prototypes.
9129 * nsgui.h (FACE_DEFAULT): Remove, unused.
9130 (XGCValues): Change colors to unsigned long.
9131 * nsterm.h (EmacsApp): Add declaration of all methods implemented in
9132 nsterm.m.
9133 (EmacsMenu -addItemWithWidgetValue:): Change to use NSMenuItem class.
9134 (ns_list_fonts): Remove, unused.
9135 (ns_font_to_xlfd, ns_fontname_to_xlfd): Drop prototypes.
9136 * nsfns.m (interpret_services_menu): Use NSMenuItem class.
9137 * nsfont.m (nsfont_open): Fix cast error in glyphs,metrics alloc.
9138 (nsfont_draw): Compare face colors to 0, not nil.
9139 * nsmenu.m (struct widget_value): Drop unneeded declaration.
9140 (EmacsMenu -addItemWithWidgetValue:, -fillWithWidgetValue:)
9141 (-addSubmenuWithTitle:): Use NSMenuItem class.
9142 (ns_popup_menu): Use NO, not NULL, for enabled setting.
9143 * nsterm.m (ns_draw_glyph_string): Don't compare font to ~0.
9144 (ns_clip_to_row): Make gc arg a BOOL.
9145 (ns_draw_fringe_bitmap, ns_draw_window_cursor): Use YES, NO in
9146 ns_clip_to_row() call.
9147 (ns_draw_glyph_string): Drop face comparison to ~0 (no longer
9148 used). Cast FRAME_FONT assignments.
9149 (ns_read_socket): Cast call to EmacsApp-fulfillService:withArg:.
9150 (ns_string_to_lispmod): Change arg to const char.
9151 (ns_term_init): Use NSMenuItem class.
9152 (EmacsApp -openFile:): Move to different section of file.
9153 (EmacsApp -application:openFiles:): Don't return a value, call
9154 -replyToOpenOrPrint:.
9155 (EmacsView -keyDown:): Fix up cast.
9156 (EmacsView -converstationIdentifier): Use NSInteger instead of long.
9157 (EmacsView -menuDown:): Cast tag in call to
9158 find_and_call_menu_selection().
9159 (ns_list_fonts): Remove, unused.
9160 (ns_font_to_xlfd): Make static. Cast result of UTF8String.
9161 (ns_fontname_to_xlfd): Make static.
9162 * w32menu.c (xmalloc_widget_value, digest_single_submenu):
9163 Remove prototypes (now in keyboard.h).
9164 (next_menubar_widget_id): Remove, unused.
9165 * xmenu.c (xmalloc_widget_value, digest_single_submenu):
9166 Remove prototypes (now in keyboard.h).
9167 * xfaces.c (ns_list_fonts, w32_list_fonts): Remove, unused.
9168
91692008-08-01 Dan Nicolaescu <dann@ics.uci.edu>
9170
9171 * Makefile.in (dispnew.o, gtkutil.o, sound.o, atimer.o)
9172 (floatfns.o): Depend on syssignal.h.
9173 (term.o): Depend on syssignal.h, systty.h, and $(INTERVAL_SRC).
9174
9175 * systty.h: Fix previous change that removed BSD_TERMIOS.
9176 Add comments to #ifdefs.
9177
91782008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
9179
9180 * w32fns.c (w32-load-color-file): Remove.
9181 (x-open-connection): Use renamed Fx_load_color_file.
9182 * xfaces.c (x-load-color-file): Add.
9183 * nsterm.m (ns_initialize): Load colors from etc/rgb.txt instead of
9184 Emacs.clr.
9185 (hide_hourglass): BLOCK_INPUT before UNBLOCK.
9186
91872008-07-31 Michael Albinus <michael.albinus@gmx.de>
9188
9189 * dbusbind.c (Fdbus_call_method_asynchronously)
9190 (Fdbus_method_error_internal): New defuns.
9191 (xd_read_message): Handle also reply messages.
9192 (Vdbus_registered_functions_table): Extend docstring.
9193
91942008-07-31 Juanma Barranquero <lekktu@gmail.com>
9195
9196 * keyboard.c (gobble_input): Fix previous change.
9197
91982008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
9199
9200 * bitmaps/README:
9201 * xfns.c:
9202 * termcap.c:
9203 * term.c:
9204 * syswait.h:
9205 * systty.h:
9206 * systime.h:
9207 * syssignal.h:
9208 * sysdep.c:
9209 * process.h:
9210 * process.c:
9211 * print.c:
9212 * ndir.h:
9213 * lread.c:
9214 * keyboard.c:
9215 * getpagesize.h:
9216 * floatfns.c:
9217 * fileio.c:
9218 * emacs.c:
9219 * doc.c:
9220 * dispnew.c:
9221 * dired.c:
9222 * data.c:
9223 * callproc.c:
9224 * buffer.c:
9225 * README:
9226 * Makefile.in:
9227 * s/template.h:
9228 * s/msdos.h:
9229 * m/vax.h: Remove VMS support.
9230 * s/vms.h:
9231 * vlimit.h:
9232 * uaf.h:
9233 * temacs.opt:
9234 * param.h:
9235 * ioctl.h: Remove file.
9236
92372008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
9238
9239 * s/ms-w32.h (MULTI_KBOARD): Remove.
9240 * xterm.c:
9241 * xselect.c:
9242 * xfns.c:
9243 * window.c:
9244 * w32term.c:
9245 * w32fns.c:
9246 * terminal.c:
9247 * termhooks.h:
9248 * term.c:
9249 * sysdep.c:
9250 * keyboard.h:
9251 * keyboard.c:
9252 * frame.h:
9253 * frame.c:
9254 * frame.c: Remove references to MULTI_KBOARD, it is now the default.
9255 * config.in: Regenerate.
9256
92572008-07-30 Jason Rumney <jasonr@gnu.org>
9258
9259 * w32font.h (struct w32font_info): Use unicode version of textmetrics.
9260
9261 * w32font.c (w32font_encode_char): Leave as unicode if in range.
9262 (w32font_open_internal): Get unicode version of textmetrics.
9263 Don't enable or disable glyph indices here.
9264 (w32font_open): Disable use of glyph indices.
9265
9266 * w32uniscribe.c (uniscribe_open): Enable use of glyph indices.
9267
92682008-07-30 Chong Yidong <cyd@stupidchicken.com>
9269
9270 * minibuf.c (Vread_buffer_function): Doc fix.
9271
92722008-07-30 John Paul Wallington <jpw@pobox.com>
9273
9274 * minibuf.c (read_buffer_completion_ignore_case): New var.
9275 (Fread_buffer): Use it.
9276
92772008-07-30 Dan Nicolaescu <dann@ics.uci.edu>
9278
9279 * systty.h (sensemode): Remove empty #if. Remove reference to
9280 BSD_TERMIOS, unused.
9281
9282 * sysdep.c: Remove reference to DGUX.
9283 (closedir): Remove reference to BROKEN_CLOSEDIR, unused.
9284
9285 * config.in: Regenerate.
9286
92872008-07-30 Jason Rumney <jasonr@gnu.org>
9288
9289 * w32uniscribe.c (uniscribe_encode_char): Fix glyph buffer size.
9290
92912008-07-29 Jason Rumney <jasonr@gnu.org>
9292
9293 * w32uniscribe.c (uniscribe_shape): Avoid using context if cache
9294 is populated.
9295 (uniscribe_encode_char): Always use uniscribe.
9296 Avoid using context if cache is populated.
9297
92982008-07-29 Jan Djärv <jan.h.d@swipnet.se>
9299
9300 * xmenu.c (Fx_menu_bar_open_internal): Use activate_item signal to
9301 open menu.
9302
9303 * gtkutil.c (menu_nav_ended): Remove.
9304 (create_menus): Remove signal connect for menu_nav_ended.
9305
93062008-07-28 Chong Yidong <cyd@stupidchicken.com>
9307
9308 * xdisp.c (redisplay_window): Check return value of
9309 compute_window_start_on_continuation_line before forcing a window
9310 start.
9311
93122008-07-28 Jason Rumney <jasonr@gnu.org>
9313
9314 * w32font.c (w32font_text_extents): Use w32_metric_cache consistently.
9315
9316 * w32term.c (w32_enable_unicode_output, cleartype_active):
9317 Remove obsolete display options.
9318 (x_draw_glyph_string_background): Don't use old cleartype_active
9319 workaround.
9320 (w32_initialize): Remove cleartype_active initialization.
9321 (syms_of_w32term): Remove w32_enable_unicode_output initialization.
9322
93232008-07-28 Andreas Schwab <schwab@suse.de>
9324
9325 * lisp.h (init_weak_hash_tables, syms_of_font)
9326 (xd_read_queued_messages, syms_of_dbusbind): Declare.
9327 (remove_hash_entry): Don't declare.
9328 * eval.c (maybe_call_debugger): Make static and move before use.
9329 * gtkutil.c: Include <X11/Xft/Xft.h> if HAVE_XFT.
9330 * xdisp.c: Include "gtkutil.h" if USE_GTK.
9331 * xterm.h (x_set_frame_alpha): Declare.
9332
93332008-07-28 Jan Djärv <jan.h.d@swipnet.se>
9334
9335 * gtkutil.c (menu_nav_ended): Revert change from 2008-07-24.
9336 (create_menus): Connect selection-done to menu_nav_ended.
9337
93382008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
9339
9340 * nsfns.m (x-create-frame): Add copy of parms argument to beginning.
9341 Set Vx_resource_name to a fallback. Replace read of 'buffered'
9342 parameter with read of 'alpha' one.
9343 (Qns_frame_parameter): Remove.
5582fbc7 9344 * nsselect.m (selection-coding-system)
aac0c6e3
MR
9345 (next-selection-coding-system, Vselection_coding_system)
9346 (Vnext_selection_coding_system): Drop.
9347
93482008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
9349
9350 * nsfns.m (do-applescript, do_applescript): Rename to
9351 ns-do-applescript, ns_do_applescript, and move within file.
9352
93532008-07-27 Dan Nicolaescu <dann@ics.uci.edu>
9354
9355 Remove support for Mac Carbon.
9356 * mactoolbox.c:
9357 * macterm.h:
9358 * macterm.c:
9359 * macselect.c:
9360 * macmenu.c:
9361 * macgui.h:
9362 * macfns.c:
9363 * mac.c: Remove file.
9364 * s/darwin.h:
9365 * m/intel386.h:
9366 * xfaces.c:
9367 * xdisp.c:
9368 * window.c:
9369 * tparam.c:
9370 * termhooks.h:
9371 * termcap.c:
9372 * term.c:
9373 * syssignal.h:
9374 * sysselect.h:
9375 * sysdep.c:
9376 * process.c:
9377 * lread.c:
9378 * lisp.h:
9379 * keyboard.c:
9380 * image.c:
9381 * fringe.c:
9382 * frame.h:
9383 * frame.c:
9384 * fontset.c:
9385 * font.h:
9386 * font.c:
9387 * fns.c:
9388 * fileio.c:
9389 * emacs.c:
9390 * dispnew.c:
9391 * dispextern.h:
9392 * config.in:
9393 * atimer.c:
2ae37cf0 9394 * Makefile.in: Remove code for Carbon.
aac0c6e3 9395
f0131492 93962008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
aac0c6e3
MR
9397
9398 * macterm.c (XDrawLine) [USE_MAC_IMAGE_IO]: Remove spurious return.
9399
94002008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9401
9402 * macterm.h (kCGBitmapByteOrder32Host): New define for
9403 non-universal SDKs.
9404
9405 * image.c (mac_create_cg_image_from_image, image_load_image_io)
9406 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
9407
9408 * macterm.c (XDrawLine, XCreatePixmapFromBitmapData)
9409 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
9410
94112008-07-26 David Robinow <drobinow@gmail.com> (tiny change)
9412
9413 * w32inevt.c: Include dispextern.h.
9414
94152008-07-26 Andreas Schwab <schwab@suse.de>
9416
9417 * print.c (print_object): Fix off-by-one in last change.
9418
94192008-07-25 Juanma Barranquero <lekktu@gmail.com>
9420
9421 * term.c (syms_of_term): Don't initialize default_orig_pair,
9422 default_set_foreground and default_set_background on Windows.
9423
94242008-07-25 Jason Rumney <jasonr@gnu.org>
9425
9426 * w32uniscribe.c (uniscribe_shape): Pass NULL for control arg to
9427 ScriptItemize. Clean up return value checking. Remove unused
9428 variables.
9429 (uniscribe_encode_char): Encode non-BMP characters with uniscribe
9430 shaping engine.
9431
9432 * w32font.c (w32font_has_char): Handle the case where we can't
9433 determine the script for a character.
9434
94352008-07-25 Chong Yidong <cyd@stupidchicken.com>
9436
9437 * term.c (syms_of_term): Initialize default_orig_pair,
9438 default_set_foreground, and default_set_background.
9439
9440 * getloadavg.c (nl): Rename to name_list to avoid ncurses.h
9441 clash (bug#86).
9442 (getloadavg): Callers changed.
9443
9444 * image.c (svg_load_image): Fix last change.
9445 (svg_load_image): Use rsvg_handle_get_dimensions to check that
9446 image size is valid. Use g_object_unref instead of deprecated
9447 rsvg_handle_free to free rsvg handle.
9448 (x_from_xcolors): Don't initialize pixmap (silence compiler).
9449
94502008-07-25 Jason Rumney <jasonr@gnu.org>
9451
9452 * w32font.c (w32font_encode_char): Encode characters outside BMP as
9453 surrogates before looking up glyph index.
9454 (w32font_text_extents): Encode as surrogates if falling back to
9455 functions that need UTF-16 wide chars.
9456
9457 * w32uniscribe.c (uniscribe_encode_char): Encode characters outside
9458 BMP as surrogates before looking up glyph index.
9459
94602008-07-25 Chong Yidong <cyd@stupidchicken.com>
9461
9462 * image.c (svg_load_image): Check for failure in return value of
9463 rsvg_handle_get_pixbuf. Free rsvg handle when done.
9464
94652008-07-25 Jason Rumney <jasonr@gnu.org>
9466
9467 * w32font.c (Fx_select_font): Reverse sense of second arg.
9468
94692008-07-24 Stefan Monnier <monnier@iro.umontreal.ca>
9470
9471 * syntax.c (struct lisp_parse_state, char_quoted, inc_bytepos)
9472 (dec_bytepos, find_defun_start): Use EMACS_INT for buffer positions.
9473
9474 * puresize.h (PURESIZE_CHECKING_RATIO): New macro.
9475 (PURESIZE): Use it.
9476
94772008-07-24 Dan Nicolaescu <dann@ics.uci.edu>
9478
9479 * m/amdx86-64.h (HAVE_LIB64_DIR): Consolidate ifdefs.
9480 * m/alpha.h (TEXT_END):
9481 * m/ibmrs6000.h (TEXT_END):
9482 * m/macppc.h (TEXT_END):
9483 * s/darwin.h (TEXT_END):
9484 * s/msdos.h (TEXT_END): Remove, unused.
9485 * s/gnu-linux.h (BSD_PGRPS): Add a comment.
9486 * s/cygwin.h: Remove comment.
9487
9488 * ecrt0.c (NODOT_GLOBAL_START): Remove code, unused.
9489 (DOT_GLOBAL_START): Remove conditional, redundant for CRT0_DUMMIES.
9490 * m/intel386.h (DOT_GLOBAL_START):
9491 * m/vax.h (DOT_GLOBAL_START): Remove, redundant with CRT0_DUMMIES.
9492 (USG): Remove, file not used on USG platforms.
9493
9494 * Makefile.in (HAVE_X11): Remove empty #else.
9495
94962008-07-24 Andreas Schwab <schwab@suse.de>
9497
9498 * fileio.c (Finsert_file_contents): Properly adjust undo list
9499 after format conversion.
9500
95012008-07-24 Jan Djärv <jan.h.d@swipnet.se>
9502
9503 * gtkutil.c (xg_get_font_name): Cast w to GTK_FONT_SELECTION_DIALOG.
9504 (menu_nav_ended): Remove.
9505 (create_menus): Remove signal connect for menu_nav_ended.
9506 (xg_update_menubar): Also take deactivate_cb as parameter, pass it to
9507 create_menus.
9508 (xg_modify_menubar_widgets): Pass deactivate_cb to xg_update_menubar.
9509
95102008-07-23 Jason Rumney <jasonr@gnu.org>
9511
9512 * w32font.c (w32_enumfont_pattern_entity): Return height consistent
9513 with opened font.
9514 (w32font_open): Set font type to gdi.
9515
9516 * w32uniscribe.c (uniscribe_open): Set font type to uniscribe.
9517
95182008-07-23 Dan Nicolaescu <dann@ics.uci.edu>
9519
9520 * s/usg5-4.h (ADDR_CORRECT): Remove, unused.
9521 * unexaix.c (ADDR_CORRECT): Remove conditional, the only user
9522 defines it.
9523 * unexec.c (ADDR_CORRECT): Define unconditionally.
9524
9525 * m/ibmrs6000.h (C_SWITCH_MACHINE): Remove.
9526
9527 * unexec.c: Remove code depending on !COFF and USG, the file is
9528 not used for such systems.
9529
9530 * s/netbsd.h (A_TEXT_OFFSET, A_TEXT_SEEK):
9531 * s/freebsd.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, unused.
9532 (LD_SWITCH_SYSTEM_1): Remove, update users.
9533
9534 * s/darwin.h (DATA_END):
9535 * m/intel386.h (DATA_END):
9536 * m/ibmrs6000.h (DATA_END):
9537 * m/alpha.h (DATA_END): Remove, unused.
9538
9539 * config.in: Regenerate.
9540 * s/ms-w32.h (subprocesses): Define unconditionally.
9541 * s/template.h (subprocesses): Update comment.
9542 * s/vms.h (subprocesses):
9543 * s/usg5-4.h (subprocesses):
9544 * s/hpux10-20.h (subprocesses):
9545 * s/gnu-linux.h (subprocesses):
9546 * s/cygwin.h (subprocesses):
9547 * s/bsd-common.h (subprocesses):
9548 * s/aix4-2.h (subprocesses):
9549 * s/darwin.h (subprocesses): Do not define, defined by default now.
9550
9551 * Makefile.in (C_SWITCH_SITE, LD_SWITCH_SITE): Remove, unused.
9552 Remove all references.
9553 (temacs): Add GNUstep specific ld flags.
9554
9555 * nsterm.m (syms_of_nsterm): Provide ns, not ns-windowing,
9556 similarly to what X does.
9557
95582008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
9559
9560 * nsfns.m (x-list-fonts): Remove.
9561 (syms_of_nsfns): Drop the x-list-fonts declaration.
9562 * nsterm.m: Get rid of remaining "//" comments.
9563
95642008-07-22 Chong Yidong <cyd@stupidchicken.com>
9565
9566 * xselect.c (Fx_rotate_cut_buffers_internal): Doc fix.
9567
9568 * nsselect.m (Fns_selection_exists_p, Fns_selection_owner_p)
9569 (Fx_get_selection_internal, Fns_rotate_cut_buffers_internal)
9570 (Fns_own_selection_internal, Fx_disown_selection_internal)
9571 (Fns_get_cut_buffer_internal, Fns_store_cut_buffer_internal):
9572
9573 * nsmenu.m (Fns_reset_menu, Fx_popup_menu): Change to use 'doc: /*
9574 ... */' style of docstrings. Doc fixes.
9575
95762008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
9577
9578 * terminfo.c (UP, BC, PC): Undo previous change.
9579
9580 * nsfns.m: Rename ns prefixed functions/variables to the
9581 corresponding x versions. Update references.
9582
95832008-07-22 Stefan Monnier <monnier@iro.umontreal.ca>
9584
9585 * syntax.c (char_quoted): Check "charpos > beg" before decrementing.
9586
95872008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
9588
9589 * nsfns.m (x_set_menu_bar_lines, x_set_tool_bar_lines):
9590 Remove forwarding functions.
9591 (ns_set_menu_bar_lines): Rename to x_set_menu_bar_lines, make
9592 non-static.
9593 (ns_set_tool_bar_lines): Rename to x_set_tool_bar_lines, make
9594 non-static.
9595 (ns_frame_parm_handlers): Use the new names.
9596 (syms_of_nsfns): Move to the end of file.
9597
9598 * nsterm.m (syms_of_nsterm): Move to the end of file.
9599
9600 * dispnew.c (init_display): Remove code for X10.
9601
96022008-07-22 Jason Rumney <jasonr@gnu.org>
9603
9604 * w32proc.c (Fw32_long_file_name): Don't append dir separator to
9605 bare drive.
9606
96072008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
9608
9609 * nsterm.m (syms_of_nsterm): Remove debugging println.
9610
96112008-07-22 David Reitter <david.reitter@gmail.com>
9612
9613 * nsfns.m (do_applescript, F_do_applescript): NS version of the
9614 Carbon implementation of the same functionality: execute arbitrary
9615 AppleScript code.
9616
96172008-07-21 Adrian Robert <Adrian.B.Robert@gmail.com>
9618
9619 * nsfns.m (Fx_create_frame, Fx_read_file_name, Fx_get_resource)
9620 (Fx_set_resource, Fx_set_alpha, Fx_server_max_request_size)
9621 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
9622 (Fx_display_mm_height, Fx_display_mm_width)
9623 (Fx_display_backing_store, Fx_display_visual_class)
9624 (Fx_display_save_under, Fx_open_connection)
9625 (Fx_close_connection, Fx_hide_emacs, Fx_font_name)
9626 (Fx_list_colors, Fx_perform_service, Fx_color_defined_p)
9627 (Fx_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
9628 (Fx_display_pixel_width, Fx_display_pixel_height)
9629 (Fx_display_usable_bounds, Fx_display_planes)
9630 (Fx_display_color_cells, Vns_icon_type_alist): Change to use 'doc: /*
9631 ... */' style of docstrings.
9632
96332008-07-21 Dan Nicolaescu <dann@ics.uci.edu>
9634
9635 * m/mips.h (LOAD_AVE_TYPE, LOAD_AVE_CVT): Do not define, not used
9636 on this platform.
9637 (mips):
9638 * m/iris4d.h (mips): Do not define.
9639 * sysdep.c (init_sys_modes): Use __mips__ instead of mips.
9640
9641 * m/ibmrs6000.h (LD_SWITCH_SITE): Remove.
9642
9643 * image.c:
9644 * nsfns.m:
9645 * nsselect.m:
9646 * nsterm.h:
9647 * nsterm.m: Rename ns prefixed functions/variables to the
9648 corresponding x versions. Update references.
9649
9650 * m/ibms390x.h (NO_REMAP): Do not undefine.
9651
9652 * m/amdx86-64.h: Use SOLARIS2 instead of sun.
9653
96542008-07-21 Chong Yidong <cyd@stupidchicken.com>
9655
9656 * nsfns.m: Change NS to Nextstep in docstrings and error messages.
9657 (Fns_create_frame, Fns_read_file_name, Fns_get_resource)
9658 (Fns_set_resource, Fns_set_alpha, Fns_server_max_request_size)
9659 (Fns_server_vendor, Fns_server_version, Fns_display_screens)
9660 (Fns_display_mm_height, Fns_display_mm_width)
9661 (Fns_display_backing_store, Fns_display_visual_class)
9662 (Fns_display_save_under, Fns_open_connection)
9663 (Fns_close_connection, Fns_hide_emacs, Fns_font_name)
9664 (Fns_list_colors, Fns_perform_service, Fns_color_defined_p)
9665 (Fns_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
9666 (Fns_display_pixel_width, Fns_display_pixel_height)
9667 (Fns_display_usable_bounds, Fx_display_planes)
9668 (Fns_display_color_cells, Vns_icon_type_alist): Doc fixes.
9669
96702008-07-21 Ami Fischman <ami@fischman.org> (tiny change)
9671
9672 * print.c (print_object): Check print_depth before searching for
9673 circularities.
9674
96752008-07-21 Michael Albinus <michael.albinus@gmx.de>
9676
9677 * dbusbind.c (Fdbus_register_signal): Use sprintf + strcat instead
9678 only sprintf.
9679
96802008-07-21 Kenichi Handa <handa@m17n.org>
9681
9682 * ftfont.c (adjust_anchor): Check if DeltaValue is not NULL.
9683
96842008-07-20 Andreas Schwab <schwab@suse.de>
9685
9686 * syntax.c (find_start_pos, find_start_value)
9687 (find_start_value_byte, find_start_begv, find_defun_start)
9688 (back_comment, scan_sexps_forward): Use EMACS_INT for buffer positions.
9689
96902008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
9691
9692 * s/sol2-3.h: Insert contents of s/sol2.h.
9693 (LD_SWITCH_SYSTEM): Remove redundant definition.
9694 * s/sol2.h: Remove, unused.
9695
96962008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
9697
9698 * nsterm.m (ns_get_color): Recognize HSB,AHSB be synonyms for HSV,AHSV.
9699
97002008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
9701
9702 * Makefile.in (ns_appdir): Fix typo in find command.
9703
97042008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
9705
9706 * m/intel386.h (NO_REMAP): Do no define for USG, not used.
9707
9708 * s/usg5-4.h (LIBS_SYSTEM): Remove, system for which this was
9709 added not supported anymore.
9710
9711 * s/usg5-4-2.h (LIBS_SYSTEM):
9712 * s/sol2.h (LIBS_SYSTEM): Do not undefine.
9713
9714 * s/netbsd.h (GETPGRP_NO_ARG, N_TRELOFF):
9715 * s/lynxos.h (GETPGRP_NO_ARG):
9716 * s/hpux10-20.h (NO_SIOCTL_H):
9717 * s/gnu.h (GETPGRP_NO_ARG):
9718 * s/gnu-linux.h (NO_SIOCTL_H):
9719 * s/freebsd.h (GETPGRP_NO_ARG, N_TRELOFF):
9720 * s/cygwin.h (GETPGRP_NO_ARG):
9721 * s/irix6-5.h (LIBS_SYSTEM, GETPGRP_NO_ARG): Remove, unused.
9722 (C_DEBUG_SWITCH): Remove duplicate definition.
9723
9724 * m/ibms390.h: Remove boilerplate comments.
9725
9726 * sysdep.c (closedir): Use SOLARIS2 instead of sun && USG5_4.
9727
9728 * process.c (HAVE_SERIAL): Consolidate ifdefs.
9729 (wait_reading_process_output): Remove code for SunOS, platform not
9730 supported anymore. Use SOLARIS2 instead of sun.
9731
97322008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
9733
9734 * font.c (font_open_by_name): Under NS, default lface height to zero.
9735 (font_open_for_lface): Under NS, set size based on frame fontsize.
9736 * nsterm.m (EmacsView-changeFont:): Remove some commented code.
9737 * frame.c (x_set_frame_parameters): Remove HAVE_NS ifdef.
9738
97392008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
9740
9741 * nsterm.m (ns_antialias_text, ns_use_qd_smoothing)
9742 (ns_use_system_highlight_color): Switch these from DEFVAR_BOOL to
9743 DEFVAR_LISP and change all code accordingly to use Qt/Qnil instead of
9744 YES/NO.
9745 * nsterm.h (prevUseHighlightColor): Make a Lisp_Object.
9746 * nsfont.m (nsfont_draw): Treat ns_use_qd_smoothing as Lisp_Object.
9747 * Makefile.in (clean): Clear out build destination dir.
9748
97492008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
9750
9751 * Makefile.in (nsgui.h-related dependencies): Remove abbrev, xfns,
9752 xterm, xselect.
9753 * lisp.h: Remove declaration of hash_remove.
9754 * nsgui.h: Remove redefinitions of hash_remove.
9755 * fns.c (hash_remove): Rename to hash_remove_from_table.
9756
97572008-07-19 Seiji Zenitani <zenitani@mac.com>
9758
9759 * nsfont.m (nsfont_fmember_to_entity, nsfont_make_fontset_for_font):
9760 strdup() the family UTF8String before modifying it.
9761
97622008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
9763
9764 * nsterm.m (ns_maybe_dumpglyphs_background): Compare result from
9765 NS_FACE_BACKGROUND with 0 instead of nil.
9766 * nsfont.m (nsfont_draw): Same.
9767
97682008-07-19 Chong Yidong <cyd@stupidchicken.com>
9769
9770 * nsfns.m (ns_set_background_color): Fix crash.
9771
97722008-07-18 Chong Yidong <cyd@stupidchicken.com>
9773
9774 * Makefile.in (SOME_MACHINE_LISP): Remove ns-carbon-compat.elc.
9775
97762008-07-18 Dan Nicolaescu <dann@ics.uci.edu>
9777
9778 * puresize.h (BASE_PURESIZE): Increase to 1240000.
9779
97802008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9781
9782 * gtkutil.c: Include <config.h> instead of "config.h".
9783
9784 * lisp.h (Foverlay_buffer): Add EXFUN.
9785
9786 * process.c (create_process) [!WINDOWSNT && FD_CLOEXEC]: Wait for
9787 child process to complete child_setup. Undo 2005-09-21 change.
9788
9789 * s/darwin.h: Mention setsid after vfork.
9790
97912008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9792
9793 * Makefile.in (frame.o, keyboard.o, xdisp.o, xfaces.o):
9794 Depend on macgui.h.
9795
9796 * macfns.c (Fx_server_version): Don't use gestaltSystemVersionMajor,
9797 gestaltSystemVersionMinor, or gestaltSystemVersionBugFix.
9798
9799 * macterm.c (keycode_to_xkeysym_table): Add entries for f17, f18,
9800 and f19.
9801 [MAC_OSX] (fn_keycode_to_keycode_table): Likewise.
9802
9803 * macterm.h (gestaltSystemVersionMajor, gestaltSystemVersionMinor)
9804 (gestaltSystemVersionBugFix) [MAC_OS_X_VERSION_MAX_ALLOWED < 1040]:
9805 Remove enumerators.
9806
9807 * mactoolbox.c [USE_MAC_TSM] (mac_handle_text_input_event):
9808 Check if FACE_FROM_ID returns NULL.
9809
98102008-07-17 David Robinow <drobinow@gmail.com> (tiny change)
9811
9812 * w32inevt.c (change_frame_size): Remove extern declaration.
9813 (resize_event, maybe_generate_resize_event): Pass SAFE arg to
9814 change_frame_size.
9815
98162008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
9817
9818 * getloadavg.c: Revert last change (2008-07-15).
9819
98202008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
9821
9822 * Makefile.in: Replace emacsapp, emacsbindir, emacsappsrc variables
362654a6 9823 set here with ns_appdir, ns_appresdir, ns_appbindir, ns_appsrc set
aac0c6e3
MR
9824 from configure.
9825
98262008-07-17 Dan Nicolaescu <dann@ics.uci.edu>
9827
9828 * s/sol2.h:
9829 * s/sol2-4.h: Reorganize conditionals.
9830
9831 * ecrt0.c: Remove code depending on m68000, not used anymore.
9832
9833 * fns.c (hash_remove): Make static.
9834 * lisp.h (hash_remove): Don't prototype.
9835
9836 * m/ibmrs6000.h:
9837 * m/ibms390x.h:
9838 * m/macppc.h: Remove boilerplate comments.
9839
9840 * m/sparc.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, only used on
9841 Solaris, which does not need them.
9842
9843 * m/vax.h: Remove comments about unsupported systems.
9844
9845 * s/darwin.h: Reorganize ifdefs.
9846
98472008-07-17 Andreas Schwab <schwab@suse.de>
9848
9849 * s/cygwin.h (LIB_STANDARD_LIBSRC): Don't define.
9850
98512008-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
9852
9853 Use SDATA. Follow coding convention of placing operators at
9854 beginning of next line rather than end of previous line, and placing
9855 spaces around infix operators.
9856
9857 * Makefile.in: Undef LIB_STANDARD before defining it to silence warning
9858 in case it was defined already.
9859 USE @GNUSTEP_MAKEFILES@ rather than envvars.
9860 * nsterm.m (ns_term_init): Pass Qt and Qnil rather than YES/NO to
9861 ns_default.
9862 (applicationShouldTerminate, setValuesFromPanel): Use EQ to compare
9863 Lisp_Objects.
9864 * nsterm.h (Fx_display_grayscale_p, Fx_display_planes)
9865 (ns_defined_color, ns_color_to_lisp): Declare.
9866 * nsselect.m (ns_handle_selection_request, ns_handle_selection_clear)
9867 (Fns_own_selection_internal): Make the big ugly hack more explicit, so
9868 it's accepted even with USE_LISP_UNION_TYPE.
9869 * nsmenu.m (ns_update_menubar): Use EQ to compare Lisp_Objects.
9870 (update_frame_tool_bar): Remove apparently obsolete tests for
9871 non-integerness of f->tool_bar_lines.
9872 (windowShouldClose, addButton, clicked, runDialogAt): Make the big ugly
9873 hack more explicit, so it's accepted even with USE_LISP_UNION_TYPE.
9874 * nsfont.m (nsfont_driver): Use just 0 rather than an invalid cast.
9875 (nsfont_open): Don't confuse NULL for Qnil.
9876 * nsfns.m (ns_implicitly_set_icon_type): Use EQ to compare Lisp_Objects.
9877 * menu.h (find_and_call_menu_selection):
9878 * menu.c (find_and_call_menu_selection): Use just int for vector size.
9879 (find_and_return_menu_selection): Always return something.
9880 * frame.h: Include dispextern.h for Display_Info.
9881 (display_x_get_resource): Declare.
9882
98832008-07-16 Adrian Robert <Adrian.B.Robert@gmail.com>
9884
9885 * syntax.c: Remove stdio.h include accidentally introduced in
9886 Emacs.app commit.
9887 * Makefile.in: Change GNUSTEP to NS_IMPL_GNUSTEP, COCOA to
9888 NS_IMPL_COCOA.
9889 * keyboard.c (handle_async_input, input_available_signal): Remove
9890 BSD4_1 conditional code, introduced accidentally in Emacs.app commit.
9891
98922008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
9893
9894 * nsterm.m (lisp_to_mod): Use parse_solitary_modifier instead.
9895 (ns_lisp_to_color): Don't mess with internal Lisp data fields.
9896 (ns_term_init, ns_term_shutdown, initFrameFromEmacs, ns_list_fonts):
9897 Use SDATA.
9898
9899 * keymap.c: Remove all NS-specific code.
9900 (where_is_preferred_modifier, Vwhere_is_preferred_modifier): New vars.
9901 (preferred_sequence_p): Rename from ascii_sequence_p; pay attention to
9902 where_is_preferred_modifier, return a different value depending on how
9903 preferred is the binding.
9904 (where_is_internal): Adjust accordingly.
9905 (Fwhere_is_internal): Refresh where_is_preferred_modifier.
9906 Adjust to new preferred_sequence_p.
9907 (syms_of_keymap): Declare `where-is-preferred-modifier'.
9908 * keyboard.c (parse_solitary_modifier): Not static any more.
9909 * keyboard.h (parse_solitary_modifier): Declare.
9910
99112008-07-16 Andreas Schwab <schwab@suse.de>
9912
9913 * Makefile.in (SOME_MACHINE_LISP): Remove easy-mmode, fix spelling
9914 of easymenu.
9915
99162008-07-16 Chong Yidong <cyd@stupidchicken.com>
9917
9918 * xdisp.c (move_it_in_display_line): Account for word wrap, so
9919 that we don't move off the line.
9920
99212008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
9922
9923 * keyboard.c (Qsuper): Remove.
9924 (parse_menu_item): Don't call where_is_internal specially for NS.
9925
99262008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
9927
9928 * s/gnu-linux.h: Remove boilerplate comments.
9929
9930 * m/alpha.h (__ELF__): Consolidate conditions.
9931
9932 * m/m68k.h (linux): Use GNU_LINUX instead.
9933 Remove boilerplate comments.
9934
9935 * m/intel386.h: Undo refactoring from previous change.
9936 (LIB_STANDARD): All systems that define USG define LIB_STANDARD
9937 too, remove dead code.
9938 (linux): Use GNU_LINUX instead.
9939
99402008-07-16 Jason Rumney <jasonr@gnu.org>
9941
9942 * w32gui.h: Repeat 26 June changes lost by last change.
9943
99442008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
9945
9946 * systty.h: Remove code for Aix on 386, unsupported platform.
9947
9948 * s/ms-w32.h: Remove boilerplate comments.
9949 (fcloseall, fgetchar, flushall, fputchar, getw, putw): Remove, unused.
9950
9951 * s/gnu-linux.h (TERM): Remove support.
9952 (HAVE_SYSVIPC): Remove, unused.
9953 (A_TEXT_OFFSET, A_TEXT_SEEK, ADJUST_EXEC_HEADER): Remove, not used
9954 for this system.
9955
9956 * process.c: Remove support for IRIS, unused.
9957 Remove support for TERM, not relevant anymore.
9958
9959 * unexalpha.c (DEFAULT_ENTRY_ADDRESS): Remove, replace the only
9960 used with the definition.
9961
9962 * s/aix4-2.h (static): Do not undef.
9963
9964 * m/ibmrs6000.h: Remove code depending on USG5_4, this file is
9965 only used on Aix.
9966 (HAVE_SYSVIPC): Remove, unused.
9967
9968 * m/hp800.h (CANNOT_DUMP): Do not undef.
9969
9970 * m/alpha.h: Fix comment.
9971
9972 * s/usg5-4.h (HAVE_SYSVIPC): Remove, unused.
9973 (USG_SHARED_LIBRARIES): Remove, only used in unexec.c which is not
9974 used by this configuration.
9975 * emacs.c: Remove code depending on USG_SHARED_LIBRARIES.
9976 * unexec.c: Remove code depending on HPUX and
9977 USG_SHARED_LIBRARIES, not used with this file. Remove code
9978 depending on IRIS, unused. Remove if 0-ed code.
9979
9980 * s/template.h: Remove comments about static.
9981
9982 * sysdep.c: Remove code depending on NEED_PTEM_H, unused.
9983 Remove if 0-ed code.
9984 (baud_convert): Don't depend on BAUD_CONVERT, all definitions the
9985 were the same as the default.
9986 * s/vms.h (BAUD_CONVERT): Remove, same as the default.
9987 Remove boilerplate comments.
9988 * s/hpux10-20.h (BAUD_CONVERT): Remove, same as the default.
9989 (HAVE_SYSVIPC): Remove, unused.
9990 (LD_SWITCH_SYSTEM_TEMACS): Simplify, hp9000s700 not supported anymore.
9991
9992 * m/ia64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
9993 Remove boilerplate comments.
9994 * m/amdx86-64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
9995 Remove boilerplate comments.
9996 * m/ibms390x.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
9997 Remove boilerplate comments.
9998 * lisp.h (PNTR_COMPARISON_TYPE): Define it unconditionally.
9999
10000 * m/intel386.h (DATA_SEG_BITS): Remove definitions, only used on
10001 USG systems which do not use DATA_SEG_BITS.
10002 Refactor code. Remove boilerplate comments.
10003
10004 * m/ibms390.h:
10005 * m/m68k.h:
10006 * s/bsd-common.h:
10007 * s/cygwin.h:
10008 * s/darwin.h:
10009 * s/freebsd.h:
10010 * s/gnu.h:
10011 * s/msdos.h: Remove boilerplate comments.
10012
10013 * m/iris4d.h: Remove boilerplate comments and code for systems that
6873acca 10014 do not use this file.
aac0c6e3
MR
10015 (IRIS_4D): Remove, unused.
10016
10017 * m/mips.h: Remove boilerplate comments and code for systems that
6873acca 10018 do not use this file.
aac0c6e3
MR
10019 (SIGN_EXTEND_CHAR):
10020 * m/arm.h (SIGN_EXTEND_CHAR): Remove, unused.
10021 * unexmips.c: Remove file, unused.
10022
10023 * editfns.c (Fuser_full_name): Replace the only use of
10024 USER_FULL_NAME with its value.
10025 * config.in: Regenerate.
10026
100272008-07-16 David Reitter <david.reitter@gmail.com>
10028
10029 * Makefile.in: Add ns-win, ns-carbon-compat, easy-mmode and
10030 easy-menu to SOME_MACHINE_LISP for the new NeXTstep port.
10031
100322008-07-16 Glenn Morris <rgm@gnu.org>
10033
10034 * emacs.c (system-type): Doc fix.
10035
100362008-07-15 Stefan Monnier <monnier@iro.umontreal.ca>
10037
10038 * keyboard.c (parse_menu_item): Don't use cachelist, even under NS.
10039 If the cache doesn't work, let's fix it, rather than work around it.
10040
100412008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
10042
10043 * Makefile.in: Correct additions for nsfont.o in last commit.
10044 * nsfont.m: New file (forgot last commit).
10045
100462008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
10047
10048 * callproc.c (set_initial_environment): Initialize
10049 Vprocess_environment under CANNOT_DUMP (fixes crash when
10050 batch-compiling for bootstrap).
10051
100522008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
4e2af782 10053 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
aac0c6e3
MR
10054
10055 (make_initial_frame): Call init_frame_faces(f) in CANNOT_DUMP case --
10056 fix crash due to different init order.
10057
100582008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
10059
10060 Changes and additions for NeXTstep windowing system (Cocoa and
10061 GNUstep) support.
10062
10063 * Makefile.in:
10064 * config.in: Support defines and build commands for NS port.
10065 * blockinput.h (BLOCK_INPUT, UNBLOCK_INPUT, TOTALLY_UNBLOCK_INPUT)
10066 (UNBLOCK_INPUT_TO): Don't use under NS unless EXPERIMENTAL_CONTROL_G.
10067 * dispextern.h: Include nsgui.h and add needed typedefs under NS
10068 windowing.
10069 (struct face): Add synth_ital field.
10070 * dispnew.c: Include nsterm.h when compiling under NS windowing.
10071 (init_display): Initialize Vinitial_window_system to "ns" when so
10072 compiled.
10073 * emacs.c: Include GSConfig.h when compiling under GNUstep.
10074 (display_arg): Use under NS.
10075 (main): Under NS, allocate autorelease pool and handle command line
10076 args. Move syms_of_xmenu() call under #ifdef HAVE_X_WINDOWS.
10077 (standard_args): Add NS-specific args.
10078 (shut_down_emacs): Shut down NS terminal if compiled under NS.
10079 * font.c (DEFAULT_ENCODING): New variable.
10080 (font_find_for_lface): Use it.
10081 (syms_of_font): Load syms_of_nsfont under NS.
10082 * font.h: Declare nsfont_driver when compiled under NS.
10083 * fontset.c: When compiling under NS, include nsterm.h.
10084 (fontset_from_font): Autoconstruct fontset under NS.
10085 * frame.c (various): Under NS, include nsterm.h, add Qns window system
10086 symbol, document and use it.
10087 (do_switch_frame): When for_deletion under Cocoa, add
10088 Fraise_frame(Qnil).
10089 (x_set_frame_parameters): Ensure font attribute changes are picked up.
10090 (x_get_arg): Allow "yes" and "no" as boolean values.
10091 (syms_of_frame): Declare Qns. Init Vdefault_frame_scroll_bars to
10092 Qright under Cocoa.
10093 (focus-follows-mouse): Default to 0 under NS.
10094 * frame.h (enum output_method): Add output_ns.
10095 (external_tool_bar, external_menu_bar, FRAME_EXTERNAL_TOOLBAR)
10096 (FRAME_EXTERNAL_MENU_BAR): Use under NS.
10097 (FRAME_WINDOW_P): NS-specific definition.
10098 * fringe.c (max_used_fringe_bitmap): Make public.
10099 * getloadavg.c (mach/mach.h): Include it under NeXT descendant OS's.
10100 (getloadavg): Use NeXT code under descendant OS's.
10101 * image.c (includes and header section, x_create_bitmap_from_data)
10102 (x_create_bitmap_from_file, free_bitmap_record, image_background)
10103 (image_background_transparent, x_clear_image_1)
10104 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
10105 (Create_Pixmap_From_Bitmap_Data, xpm_load_image, lookup_rgb_color)
10106 (x_to_xcolors, x_from_xcolors, x_disable_image)
10107 (x_build_heuristic_mask, syms_of_image): Add NS support parallel to
10108 other GUIs, including XPM support using code originally written for
10109 Carbon GUI.
10110 (png_load, jpeg_load, tiff_load, gif_load): Add implementations
10111 using NS API.
10112 (image_ascent): Use font metrics macros instead of direct struct field
10113 access.
10114 * keyboard.c (includes): Add nsterm.h when compiling under NS.
10115 (kbd_buffer_get_event): Handle NS as other GUI windowing systems.
10116 Also, handle NS as GTK for menu bar purposes.
10117 (make_lispy_event): Handle NS as other GUI windowing systems, and as X
10118 toolkit where they differ.
10119 (parse_menu_item): Prefer keybindings using 'super' modifier. Also,
10120 use cachelist, still needed under NS.
10121 * keyboard.h (ENCODE_MENU_STRING, XtPointer, Boolean): Handle as NTGUI.
10122 (struct widget_value): Define it here for menu.c.
10123 * keymap.c (includes): Include modifier internals.
10124 (lisp_to_mod, modifier_sequence_p): New functions, compiled only under
10125 NS.
10126 (where_is_internal, Fwhere_is_internal): When compiled under NS, add
10127 support for preferring sequences using certain modifiers, specified by
10128 the FIRSTONLY argument.
10129 * lisp.h (hash_remove): Rename to avoid name clash when compiling
10130 under NS GNUstep implementation.
10131 (USE_LSB_TAG): Use it under Cocoa when compiling under NS.
10132 * lread.c (init_lread): Treat NS as HAVE_CARBON for turn_off_warning.
10133 * menu.c: Include nsterm.h under NS.
10134 (single_menu_item, parse_single_submenu, xmalloc_widget_value)
10135 (free_menubar_widget_tree_value, update_submenu_strings)
10136 (find_and_call_menu_selection): Treat NS as X and NT.
10137 (find_and_return_menu_selection): New function, used for popup menus.
10138 * nsgui.h:
10139 * nsterm.h:
10140 * nsfns.m:
10141 * nsimage.m:
10142 * nsmenu.m:
10143 * nsselect.m:
10144 * nsterm.m: New files.
10145 * process.c (wait_reading_process_output): Under NS, call ns_select()
10146 instead of plain select().
10147 * syntax.c (char_quoted): Under NS, avoid a crash when called near
10148 beginning of buffer.
10149 * sysselect.h (init_process): Rename when compiling under Cocoa to
10150 avoid name conflict.
10151 * termhooks.h (display_info): Add ns_display_info to union.
10152 * terminal.c (Fterminal_live_p): Add ns to terminal types.
10153 * terminfo.c (UP, BC, PC): Don't declare when compiling under NS in
10154 COCOA environment.
10155 * unexnext.c: Update to work with mach API on Mac OS X, and to use new
10156 unexec() signature. (Note, this will dump, but the resulting file
10157 crashes; unexosx is used instead; keeping around for reference and
10158 possible aid in getting dump working under GNUstep.)
10159 * w32gui.h (button_type, widget_value): Remove definitions (now in
10160 keyboard.h).
10161 * window.c: Include nsterm.h when compiling under NS.
10162 * xdisp.c (includes): Include nsterm.h when compiling under NS.
10163 (set_frame_menubar, update_menu_bar, display_menu_bar): Handle NS as
10164 other GUI windowing systems.
10165 (update_tool_bar, redisplay_tool_bar, redisplay_window): Handle NS as
10166 GTK.
10167 (x_consider_frame_title): Under NS, set icon type and frame
10168 modified-state indicator; use ns_set_name_as_filename() when using
10169 formatted title.
10170 (update_window_cursor): Make public when compiling under NS.
10171 (display_hourglass_p, syms_of_xdisp, hourglass_shown_p)
10172 (hourglass_atimer, Vhourglass_delay
10173 * xfaces.c (header section, init_frame_faces, clear_font_table)
10174 (defined_color, unload_color, x_face_list_fonts)
10175 (prepare_face_for_display): Add NS support parallel to other GUIs.
10176 Emulate GCs like other non-X GUIs.
10177 (split_font_name): Don't lowercase font name under NS.
10178 (merge_face_ref, Finternal_set_lisp_face_attribute): Support stippling
10179 under NS.
10180 * s/darwin.h: Add support for compilation under NS.
10181
101822008-07-15 Jason Rumney <jasonr@gnu.org>
10183
10184 * w32fns.c (Fx_create_frame): Remove duplicate unwind_protect.
10185 (w32_show_hourglass): Rename from show_hourglass.
10186 (w32_hide_hourglass): Rename from hide_hourglass.
10187 (DEFAULT_HOURGLASS_DELAY): Revert from last change.
10188 (Vhourglass_delay): Declare extern.
10189 (hourglass_started): Remove.
10190
10191 * xdisp.c (Vhourglass_delay): Remove static.
10192 (hourglass_started, start_hourglass, cancel_hourglass):
10193 Don't include these versions on WINDOWSNT.
10194
101952008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
10196
10197 * dispextern.h (hourglass_shown_p, hourglass_atimer): New extern
10198 variables (formerly in xfns.c).
10199 (show_hourglass, hide_hourglass): New prototypes (same).
10200 * xdisp.c (display_hourglass_p, hourglass_shown_p, hourglass_atimer)
10201 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY): New variables (formerly
10202 in xfns.c).
10203 (syms_of_xdisp): Declare/initialize display-hourglass,
10204 hourglass-delay. Initialize hourglass_atimer, hourglass_shown_p.
10205 (hourglass_started, start_hourglass, cancel_hourglass): New functions,
10206 formerly in xfns.c.
10207 * xfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
10208 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
10209 (start_hourglass, cancel_hourglass): Remove.
10210 (show_hourglass, hide_hourglass): Remove prototypes and static
10211 modifiers.
10212 (syms_of_xfns): Remove display-hourglass, hourglass-delay,
10213 hourglass_atimer, hourglass_shown_p declaration/initialization.
10214 * macfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
10215 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
10216 (start_hourglass, cancel_hourglass): Remove.
10217 (show_hourglass, hide_hourglass): Remove prototypes and static
10218 modifiers.
10219 (syms_of_macfns): Remove display-hourglass, hourglass-delay,
10220 hourglass_atimer, hourglass_shown_p declaration/initialization.
10221 * w32fns.c (display_hourglass_p, Vhourglass_delay)
10222 (DEFAULT_HOURGLASS_DELAY): Remove.
10223 (syms_of_w32fns): Remove display-hourglass, hourglass-delay,
10224 hourglass_shown_p declaration/initialization.
10225
102262008-07-14 Jason Rumney <jasonr@gnu.org>
10227
10228 * w32fns.c (w32_get_arg): Remove wrapper function.
10229 (w32_createwindow, x_icon, x_create_tip_frame): Use x_get_arg
10230 directly.
10231 (Fx_create_frame): Sync with xfns.c. Use x_get_arg directly.
10232
102332008-07-14 Kenichi Handa <handa@m17n.org>
10234
10235 * xfont.c (xfont_open): Add workaround for X's bug.
10236
102372008-07-14 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
10238
10239 * fontset.c: Include <stdio.h> unconditionally.
10240
102412008-07-13 Michael Albinus <michael.albinus@gmx.de>
10242
10243 * dbusbind.c (Fdbus_register_signal): Allow also signal arguments
10244 for filtering.
10245
102462008-07-13 Dan Nicolaescu <dann@ics.uci.edu>
10247
10248 * s/vms.h: Use __GNUC__ instead of _GNUC_.
10249
10250 * m/macppc.h:
10251 * m/alpha.h: Use GNU_LINUX instead of LINUX. Reorganize conditionals.
10252
10253 * m/ibms390x.h (XINT, XUINT): Don't define, same as the default
10254 (SPECIAL_EMACS_INT):
10255 * m/ia64.h (SPECIAL_EMACS_INT):
10256 * m/amdx86-64.h (SPECIAL_EMACS_INT):
10257 * s/gnu.h (NLIST_STRUCT):
10258 * s/aix4-2.h (X11R5_INHIBIT_I18N):
10259 * s/gnu-linux.h (LINUX):
10260 * s/msdos.h (HAVE_FACES):
10261 * s/ms-w32.h (HAVE_FACES): Don't define, unused.
10262
10263 * systty.h:
10264 * sysdep.c (setup_pty): Don't depend on SYSV_PTYS, it is not used
10265 anymore.
10266
102672008-07-12 Dan Nicolaescu <dann@ics.uci.edu>
10268
10269 * syswait.h: Remove old if 0 code. Do not define WAITTYPE, it was
10270 always defined as int.
10271
10272 * s/netbsd.h (HAVE_UNION_WAIT, HAVE_WAIT_HEADER, WAIT_USE_INT):
10273 * s/gnu.h (HAVE_WAIT_HEADER, WAIT_USE_INT, HAVE_UNION_WAIT):
10274 * s/gnu-linux.h (HAVE_WAIT_HEADER):
10275 * s/freebsd.h (HAVE_WAIT_HEADER):
10276 * s/bsd-common.h (HAVE_UNION_WAIT):
10277 * s/aix4-2.h (HAVE_WAIT_HEADER):
10278 * m/mips.h (HAVE_UNION_WAIT):
10279 * s/usg5-4.h (HAVE_WAIT_HEADER, WAITTYPE): Do not define, not used.
10280 (COFF, static): Do not define, they are undefined later in the file.
10281
10282 * process.c (update_status): Don't use a union.
10283 (status_convert):
10284 (sigchld_handler): Use int instead of WAITTYPE.
10285
102862008-07-12 Chong Yidong <cyd@stupidchicken.com>
10287
10288 * indent.c (Fvertical_motion): Restore hscroll before moving to
10289 goal column.
10290
102912008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
10292
10293 * lisp.h: Remove left over code.
10294
102952008-07-11 Andreas Schwab <schwab@suse.de>
10296
10297 * lisp.h: Fix logic in last change.
10298
10299 * menu.h: New file.
10300 * menu.c: Include it.
10301 * xmenu.c: Likewise.
10302 * Makefile.in: Update dependencies.
10303
103042008-07-11 Kenichi Handa <handa@m17n.org>
10305
10306 * fontset.c (fontset_from_font): Cancel the previous change.
10307
103082008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
10309
10310 * lisp.h:
10311 * w32heap.c:
10312 * emacs.c:
10313 * alloc.c: Replace all references of NO_UNION_TYPE with
10314 USE_LISP_UNION_TYPE.
10315
10316 * m/xtensa.h (NO_UNION_TYPE):
10317 * m/vax.h (NO_UNION_TYPE):
10318 * m/template.h (NO_UNION_TYPE):
10319 * m/sparc.h (NO_UNION_TYPE):
10320 * m/mips.h (NO_UNION_TYPE):
10321 * m/macppc.h (NO_UNION_TYPE):
10322 * m/m68k.h (NO_UNION_TYPE):
10323 * m/iris4d.h (NO_UNION_TYPE):
10324 * m/intel386.h (NO_UNION_TYPE):
10325 * m/ibms390x.h (NO_UNION_TYPE):
10326 * m/ibms390.h (NO_UNION_TYPE):
10327 * m/ibmrs6000.h (NO_UNION_TYPE):
10328 * m/ia64.h (NO_UNION_TYPE):
10329 * m/hp800.h (NO_UNION_TYPE):
10330 * m/arm.h (NO_UNION_TYPE):
10331 * m/amdx86-64.h (NO_UNION_TYPE):
10332 * m/alpha.h (NO_UNION_TYPE): Remove definition, all platform were
10333 defining it the same.
10334
103352008-07-10 Chong Yidong <cyd@stupidchicken.com>
10336
10337 * xdisp.c (move_it_to): Backtrack if past the edge of a wrapped line.
10338
103392008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
10340
10341 * fileio.c:
50426a04 10342 * sysdep.c:
aac0c6e3
MR
10343 * systty.h:
10344 * m/ibmrs6000.h:
10345 * m/iris4d.h:
10346 * s/aix4-2.h:
10347 * s/freebsd.h:
10348 * s/gnu-linux.h:
10349 * s/hpux10-20.h:
10350 * s/hpux11.h:
10351 * s/netbsd.h:
10352 * s/sol2-3.h:
10353 * s/sol2-4.h:
10354 * s/sol2.h:
10355 * s/usg5-4.h:
10356 * s/vms.h: Remove references to unused variables.
10357
103582008-07-10 Andreas Schwab <schwab@suse.de>
10359
10360 * ftfont.c (ftfont_resolve_generic_family): Remove foundry from
10361 pattern before matching the generic family.
10362
103632008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
10364
10365 * unexec.c:
10366 * s/vms.h:
10367 * s/usg5-4-2.h:
10368 * s/sol2-5.h:
10369 * s/freebsd.h:
10370 * s/darwin.h: Remove dead code.
10371
10372 * m/template.h:
10373 * m/sparc.h:
10374 * m/mips.h:
10375 * m/m68k.h:
10376 * m/iris4d.h:
10377 * m/intel386.h:
10378 * m/ibms390x.h:
10379 * m/ibms390.h:
10380 * m/ia64.h:
10381 * m/hp800.h:
10382 * m/arm.h:
10383 * m/amdx86-64.h: Remove dead code and references to unused
10384 and compiler defined symbols.
10385
10386 * unexmips.c:
10387 * unexelf.c: Remove references to desupported systems.
10388
10389 * m/powermac.h: Remove file, it is now identical to m/macppc.h.
10390
10391 * m/powermac.h: Remove boilerplate comments.
10392 (NO_REMAP): Remove unused definition.
10393
10394 * m/macppc.h (UNEXEC, NO_TERMIO): Don't define, the s/ files
10395 define them.
10396
103972008-07-10 Kenichi Handa <handa@m17n.org>
10398
10399 * xfont.c (xfont_open): Log the reason of failure.
10400
104012008-07-09 Stefan Monnier <monnier@iro.umontreal.ca>
10402
10403 * fontset.c (fontset_get_font_group):
10404 * font.c (font_check_otf): Specify argument types.
10405
104062008-07-09 Kenichi Handa <handa@m17n.org>
10407
10408 * coding.c (detect_coding_utf_8): Set detect_info->found only when
10409 non-ASCII char is found.
10410
10411 * fontset.c (fontset_compare_rfontdef): Fix plus/minus.
10412 (reorder_font_vector): Change the arg preferred_family to font.
10413 Prefer the spec matching with font.
10414 (fontset_get_font_group): New function.
10415 (fontset_find_font): Change the format of an element of a realized
10416 fontset. Use fontset_get_font_group.
10417 (fontset_font): Try the current fontset, the default fontset, the
10418 fallbacks of the current fontset, and the fallbacks of the default
10419 fontset in this order.
10420 (face_for_char): Delete the shortcut to use the current font.
10421 (fontset_from_font): Don't set fonts for Latin in the fontset.
10422
10423 * font.h (font_make_object, font_match_p): Adjust prototypes.
10424
10425 * ftfont.h [FT_BDF_H]: Include FT_BDF_H.
10426
10427 * font.c (font_make_object): New arg entity and pixelsize.
10428 (font_check_otf_features, font_check_otf): New functions.
10429 (font_match_p): Check :lang, :script, and :otf properties.
10430
10431 * xfont.c (xfont_open): Adjust it for the change of
10432 font_make_object.
10433 (xfont_text_extents): Fix initial setting of metrics.
10434
10435 * ftfont.c (struct ftfont_info): New member index, delete member
10436 fc_charset_idx. Make the member order compatible with struct
10437 xftfont_info.
10438 (fc_charset_table): Change charset names to registry names.
10439 (ftfont_pattern_entity): Delete the args registry and
10440 fc_charset_idx. Change the value of :font-entity property
10441 to (FONTNAME . INDEX). Always set :registry property to
10442 `iso10646-1'.
10443 (struct ftfont_cache_data): New struct.
10444 (ftfont_lookup_cache): New arg for_face.
10445 (ftfont_get_fc_charset, ftfont_get_otf): New functions.
10446 (ftfont_driver): Set the member otf_capability.
10447 (ftfont_get_charset): Adjust it for the change of
10448 fc_charset_table.
10449 (OTF_TAG_SYM): New macro.
10450 (ftfont_spec_pattern): Delete the arg fc_charset_idx. Adjust it
10451 for the change of fc_charset_table.
10452 (ftfont_list): Adjust it for the change of ftfont_spec_pattern and
10453 ftfont_pattern_entity. Add FC_INDEX to objset.
10454 (ftfont_match): Adjust it for the change of ftfont_spec_pattern
10455 and ftfont_pattern_entity.
10456 (ftfont_open): Adjust it for the change of ftfont_lookup_cache,
10457 font_make_object, struct ftfont_info.
10458 (ftfont_has_char): Use ftfont_get_fc_charset.
10459 (ftfont_otf_features, ftfont_otf_capability): New functions.
10460 (ftfont_shape): Use ftfont_get_otf.
10461 (ftfont_text_extents): Fix initial setting of metrics.
10462
10463 * xftfont.c (struct xftfont_info): New member ft_size. Make the
10464 member order compatible with struct ftfont_info.
10465 (xftfont_open): Add FC_CHARSET to the pattern. Set
10466 xftfont_info->ft_size. Don't unlock the face. Check BDF
10467 properties if appropriate.
10468 (xftfont_close): Unlock the face.
10469 (xftfont_anchor_point, xftfont_shape): Deleted.
10470 (syms_of_xftfont): Don't set members anchor_point and shape of
10471 xftfont_driver.
10472
10473 * w32uniscribe.c (uniscribe_open): Adjust it for the change of
10474 font_make_object.
10475
10476 * w32font.c (w32font_open): Adjust it for the change of
10477 font_make_object.
10478 (w32font_open_internal): Don't set properties of font_object here.
10479
104802008-07-08 Chong Yidong <cyd@stupidchicken.com>
10481
10482 * macfns.c (x_create_tip_frame):
10483 * w32fns.c (x_create_tip_frame):
10484 * xfns.c (x_create_tip_frame): Pass parameter argument to
10485 face-set-after-frame-default.
10486
10487 * xfaces.c (Finternal_merge_in_global_face): Save merged
10488 attributes for the default face back into the face vector.
10489
104902008-07-08 Andreas Schwab <schwab@suse.de>
10491
10492 * fontset.h: Declare fontset_from_font. Don't declare
10493 new_fontset_from_font and fontset_from_font_name.
10494 * xterm.c: Include "fontset.h".
10495 * Makefile.in (xterm.o): Update dependencies.
10496
104972008-07-08 Glenn Morris <rgm@gnu.org>
10498
10499 * m/sparc.h: Define __sparc__ rather than sparc. (Bug#507.)
10500 * alloc.c, ecrt0.c: Use __sparc__ rather than sparc.
10501
105022008-07-07 Chong Yidong <cyd@stupidchicken.com>
10503
10504 * frame.c (Qinhibit_face_set_after_frame_default): Var deleted.
10505 (x_set_frame_parameters): Don't bind it.
10506
105072008-07-07 Juanma Barranquero <lekktu@gmail.com>
10508
10509 * w32fns.c (map_w32_filename): Declare extern.
10510
105112008-07-07 Jason Rumney <jasonr@gnu.org>
10512
10513 * w32term.c (WS_EX_LAYERED): Define if not already.
10514
105152008-07-06 Chong Yidong <cyd@stupidchicken.com>
10516
10517 * xfaces.c (set_font_frame_param): Don't try to set the font
10518 parameter if it is still unspecified in the lface.
10519
105202008-07-05 Chong Yidong <cyd@stupidchicken.com>
10521
10522 * xfaces.c (Finternal_merge_in_global_face): Don't realize default
10523 face if it didn't already exist.
10524
10525 * xdisp.c (try_window_id): Give up if word-wrapping is on.
10526
105272008-07-05 Andreas Schwab <schwab@suse.de>
10528
10529 * xdisp.c (get_it_property): Move out of HAVE_WINDOW_SYSTEM section.
10530
105312008-07-05 Chong Yidong <cyd@stupidchicken.com>
10532
10533 * xdisp.c (IT_OVERFLOW_NEWLINE_INTO_FRINGE): Turn it off if
10534 word-wrapping.
10535 (IT_DISPLAYING_WHITESPACE): New macro.
10536 (move_it_in_display_line_to): Handle MOVE_TO_X requests properly
10537 when word-wrapping. Simplify word-wrapping logic. Use correct
10538 pixel positions when saving copies of the iterator.
10539 (display_line): Use proper wrap point if the last character on a
10540 line was preceded by whitespace.
10541
105422008-07-04 Stefan Monnier <monnier@iro.umontreal.ca>
10543
10544 * Makefile.in (${etc}DOC): Depend on ${lisp} rather than ${shortlisp}.
10545
105462008-07-04 Kenichi Handa <handa@m17n.org>
10547
10548 * fns.c (Fstring_to_unibyte): Delete the arg ACCEPT-LATIN-1.
10549
10550 * lisp.h: EXFUN adjusted for the change of Fstring_to_unibyte.
10551
105522008-07-02 Jason Rumney <jasonr@gnu.org>
10553
10554 * xfns.c (syms_of_xfns): Only define x-select-font when both
2ae37cf0 10555 HAVE_FREETYPE and USE_GTK.
aac0c6e3
MR
10556
10557 * xdisp.c (next_element_from_display_vector): Move assignment out
10558 of if statement.
10559
105602008-07-02 Toru Tsuneyoshi <t_tuneyosi@hotmail.com>
10561
10562 * lisp.h (Qdelete_file, Qdelete_directory): Declare extern.
10563
10564 * fileio.c (delete_by_moving_to_trash, Qmove_file_to_trash): New vars.
10565 (syms_of_fileio): Initialize and export them.
10566 (Fdelete_directory, Fdelete_file): Optionally delete via trash.
10567
10568 * w32fns.c (FOF_NO_CONNECTED_ELEMENTS): Define if not already.
10569 (Fsystem_move_file_to_trash): New function.
10570 (syms_of_w32fns): Export it to lisp.
10571
105722008-07-01 Jason Rumney <jasonr@gnu.org>
10573
10574 * w32font.c (w32font_text_extents): Don't count overhang as part
10575 of width.
10576
105772008-06-30 Miles Bader <miles@gnu.org>
10578
10579 * dispextern.h (struct glyph, struct it, struct iterator_stack_entry):
10580 Add `avoid_cursor_p' field.
10581
10582 * xdisp.c (push_it, pop_it): Save/restore avoid_cursor_p field.
10583 (set_cursor_from_row): Skip glyphs with avoid_cursor_p set.
10584 (append_glyph, append_composite_glyph, produce_image_glyph)
10585 (append_stretch_glyph): Initialize avoid_cursor_p.
10586 (get_it_property): Rename from `get_line_height_property'.
10587 (x_produce_glyphs): Use get_it_property.
10588 (handle_line_prefix, push_display_prop): New functions.
10589 (display_line, move_it_in_display_line_to): Handle line/wrap prefixes.
10590 (Vwrap_prefix, Qwrap_prefix, Vline_prefix, Qline_prefix):
10591 New variables.
10592 (syms_of_xdisp): Initialize them.
10593
105942008-06-30 Kenichi Handa <handa@m17n.org>
10595
10596 * xftfont.c (xftfont_open): Don't call FcConfigSubstitute and
10597 XftDefaultSubstitute (they are called in XftFontMatch).
10598 (xftfont_open): Fix args to ftfont_font_format.
10599
10600 * ftfont.c (fc_charset_table): New member lang.
10601 (ftfont_resolve_generic_family): New arg pattern.
60612c8f 10602 (ftfont_spec_pattern): Check fc_charset_table[]->lang.
aac0c6e3
MR
10603 (ftfont_list): Call ftfont_resolve_generic_family with `pattern'.
10604 (ftfont_open): Fix args to ftfont_font_format.
10605 (ftfont_font_format): New arg filename.
10606
106072008-06-30 Chong Yidong <cyd@stupidchicken.com>
10608
10609 * xfaces.c (Finternal_merge_in_global_face): If default face was
10610 modified, realize it again. Update the font face attribute.
10611
106122008-06-29 Jason Rumney <jasonr@gnu.org>
10613
10614 * w32term.c (x_set_frame_alpha): Fix logic.
10615
106162008-06-29 Kenichi Handa <handa@m17n.org>
10617
10618 * fontset.c (Finternal_char_font): Return font-object instead of
10619 font-name.
10620
10621 * composite.c (get_composition_id): Fix the width calculation for TAB.
10622
106232008-06-29 Stefan Monnier <monnier@iro.umontreal.ca>
10624
10625 * indent.c (Fvertical_motion): Properly handle float column arg.
10626
106272008-06-28 Jason Rumney <jasonr@gnu.org>
10628
10629 * w32term.c (pfnGetFontUnicodeRanges): Remove unused function pointer.
10630 (pfnSetLayeredWindowAttributes): New function pointer.
10631 (w32_initialize): Initialize it when supported.
10632 (x_set_frame_alpha): New function.
10633
10634 * w32fns.c (Fx_create_frame): Initialize frame parameter `alpha'.
10635 (w32_frame_parm_handlers): Set alpha handler.
10636
10637 * frame.c (x_set_alpha) [HAVE_NTGUI]: Call x_set_frame_alpha.
10638
106392008-06-27 Jason Rumney <jasonr@gnu.org>
10640
10641 * w32fns.c (x_to_w32_font, w32_to_x_font, x_to_w32_weight)
10642 (w32_to_x_weight, w32_to_all_x_charsets): Remove obsolete functions.
10643 (w32_to_x_charset, x_to_w32_charset)
10644 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
10645 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
10646 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
10647 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
10648 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
10649 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
10650 (Qw32_charset_mac, Vw32_charset_info_alist): Move to w32font.c.
10651 (Qw32_charset_unicode): Remove.
10652 (syms_of_w32fns): Update for above changes.
10653
10654 * w32font.c (w32_to_x_charset, x_to_w32_charset)
10655 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
10656 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
10657 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
10658 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
10659 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
10660 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
10661 (Qw32_charset_mac, Vw32_charset_info_alist): Move from w32fns.c.
10662 (syms_of_w32font): Update for above changes.
10663
106642008-06-27 Dan Nicolaescu <dann@ics.uci.edu>
10665
10666 * s/usg5-4.h: Fix previous change: keep the correct branch of a
10667 removed #if.
10668 (USG_SHARED_LIBRARIES): Remove duplicate definition.
10669
106702008-06-26 Juanma Barranquero <lekktu@gmail.com>
4e2af782 10671 Eli Zaretskii <eliz@gnu.org>
aac0c6e3
MR
10672
10673 * makefile.w32-in (LOCAL_FLAGS):
10674 Don't include WINDOWSNT, DOS_NT and _UCHAR_T.
10675
10676 * sysdep.c (_spawnlp, _getpid):
10677 Declare with explicit _cdecl instead of _CRTAPI1.
10678
10679 * editfns.c (Fget_internal_run_time):
10680 Check for WINDOWSNT with #ifdef, not #if.
10681
106822008-06-26 Jason Rumney <jasonr@gnu.org>
10683
10684 * w32font.h (FONT_HANDLE, FONT_TEXTMETRIC): New macros.
10685
10686 * w32term.c (x_draw_glyph_string_foreground)
10687 (x_draw_composite_glyph_string_foreground): Sync with xterm.c.
10688 Use FONT_HANDLE macro.
10689 (x_draw_glyph_string): Use FONT_TEXTMETRIC macro.
10690
10691 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
10692 (uniscribe_encode_char): Use FONT_HANDLE macro.
10693
10694 * w32font.c (Fx_select_font): Use FONT_HANDLE macro.
10695 (w32font_text_extents): Use precast w32_font.
10696 (w32font_close): Free cached metrics.
10697 (w32font_open_internal): Allocate space for name on stack.
10698
106992008-06-26 Chong Yidong <cyd@stupidchicken.com>
10700
10701 * xdisp.c (extend_face_to_end_of_line): Fix last change.
10702
107032008-06-26 Jason Rumney <jasonr@gnu.org>
10704
10705 * w32term.h (FONT_AVG_WIDTH): Remove obsolete macro.
10706 (CP_8BIT, CP_UNICODE, CP_UNKNOWN): Remove obsolete constants.
10707
107082008-06-26 Juanma Barranquero <lekktu@gmail.com>
10709
10710 * Makefile.in (SOME_MACHINE_OBJECTS): Remove w32bdf.o.
10711
107122008-06-26 Jason Rumney <jasonr@gnu.org>
10713
10714 * w32bdf.c, w32bdf.h: Remove obsolete files.
10715
10716 * makefile.w32-in: Remove refs to w32bdf.h and w32bdf.c.
10717
10718 * w32gui.h: Don't include w32bdf.h.
10719 (XCharStruct, enum w32_char_font_type, W32FontStruct):
10720 Remove obsolete font support.
10721
10722 * w32font.h (struct w32font_info): Remove compat_w32_font.
10723 Add hfont member.
10724 (FONT_COMPAT): Remove obsolete macro.
10725
10726 * w32font.c (w32font_close): Remove compat code. Delete hfont member.
10727 (w32font_encode_char, w32font_text_extents): Use new hfont member.
10728 (w32font_open_internal): Remove compat code. Set new hfont member.
10729 (Fx_select_font): Use new hfont member.
10730
10731 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
10732 (uniscribe_encode_char): Use new hfont member.
10733
10734 * w32term.c (x_draw_glyph_string_foreground)
10735 (x_draw_composite_glyph_string_foreground): Use new hfont member.
10736 (x_draw_glyph_string): Use metrics in w32font_info.
10737
107382008-06-26 Kenichi Handa <handa@m17n.org>
10739
10740 * xdisp.c (handle_auto_composed_prop): Fix for the terminal case.
10741
107422008-06-26 Dan Nicolaescu <dann@ics.uci.edu>
10743
10744 * unexnext.c:
10745 * m/ews4800.h:
10746 * m/hp9000s300.h:
10747 * m/ibm370aix.h:
10748 * m/mips-siemens.h:
10749 * m/ncr386.h:
10750 * m/next.h:
10751 * m/pmax.h:
10752 * m/powerpcle.h:
10753 * m/tandem-s2.h:
10754 * s/386bsd.h:
10755 * s/bsd386.h:
10756 * s/bsd4-1.h:
10757 * s/bsd4-2.h:
10758 * s/bsdos2-1.h:
10759 * s/bsdos2.h:
10760 * s/bsdos3.h:
10761 * s/bsdos4.h:
10762 * s/nextstep.h:
10763 * s/ultrix4-3.h:
10764 * s/usg5-0.h:
10765 * s/usg5-2-2.h:
10766 * s/usg5-2.h:
10767 * s/usg5-4-3.h:
10768 * s/ux4800.h:
10769 * s/uxpds.h:
10770 * s/uxpv.h: Remove support for obsolete systems.
10771 * s/hpux.h, s/hpux10.h, s/hpux8.h, s/hpux9.h, s/hpux9shr.h:
8f3a3ac2 10772 Remove, insert contents in s/hpux10-20.h.
aac0c6e3
MR
10773 * s/aix3-1.h, s/aix3-2-5.h, s/aix3-2.h, s/aix4-1.h, s/aix4.h:
10774 Remove, insert contents in s/aix4-2.h.
10775 * s/usg5-3.h: Remove, insert contents in s/usg5-4.h.
10776 * s/bsd4-3.h: Rename to ...
10777 * s/bsd-common.h: ... this.
10778 * data.c:
10779 * doc.c:
10780 * ecrt0.c:
10781 * emacs.c:
10782 * fileio.c:
10783 * floatfns.c:
10784 * keyboard.c:
10785 * mem-limits.h:
10786 * print.c:
10787 * process.c:
10788 * sysdep.c:
10789 * syssignal.h:
10790 * systty.h:
10791 * syswait.h:
10792 * term.c:
10793 * unexec.c:
10794 * unexelf.c:
10795 * unexhp9k800.c:
10796 * m/hp800.h:
10797 * m/ibmrs6000.h:
10798 * m/mips.h:
10799 * m/vax.h:
10800 * s/darwin.h:
10801 * s/freebsd.h:
10802 * s/gnu.h:
10803 * s/ms-w32.h:
10804 * s/msdos.h:
10805 * s/netbsd.h:
10806 * s/template.h: Remove references to obsolete variables.
10807
10808 * Makefile.in: Add dependencies for all unexec files.
10809 (admindir): Remove unused variable.
10810 (UNEXEC_SRC): Remove references.
10811
108122008-06-25 Chong Yidong <cyd@stupidchicken.com>
10813
10814 * xfns.c (x_default_font_parameter): If Xft is available, first
10815 try Monospace-12 for the default font.
10816
108172008-06-25 Jason Rumney <jasonr@gnu.org>
10818
10819 * xdisp.c (get_glyph_face_and_encoding): Encode invalid glyphs as 0.
10820
108212008-06-25 Stefan Monnier <monnier@iro.umontreal.ca>
10822
10823 * bytecode.c (Fbyte_code): Disable debugging code that doesn't compile.
10824
10825 * buffer.c (syms_of_buffer): Remove default-word-wrap.
10826
108272008-06-25 Juanma Barranquero <lekktu@gmail.com>
10828
10829 * xdisp.c (syms_of_xdisp) <truncate-partial-width-windows>: Doc fix.
10830 <scroll-conservatively>: Fix typo in docstring.
10831
10832 * xselect.c (Fx_send_client_event): Doc fix.
10833
108342008-06-25 Kenichi Handa <handa@m17n.org>
10835
10836 * xfaces.c (Fx_list_fonts): Call Flist_fonts with the arg PREFER.
10837
10838 * font.c (font_parse_fcname): Remove unused variables.
10839 (font_sort_entites): Delete the arg SPEC. Caller changed.
10840 Fix for the case of ! best_only.
10841 (font_delete_unmatched): Check DPI and AVGWIDTH too.
10842
10843 * lisp.h (Fstring_to_unibyte): EXFUN it.
10844
10845 * character.h (str_to_unibyte): Extern it.
10846
10847 * character.c (str_to_unibyte): New function.
10848
10849 * fns.c (Fstring_to_unibyte): New function.
10850 (syms_of_fns): Defsubr it.
10851
108522008-06-24 Kenichi Handa <handa@m17n.org>
10853
10854 * font.c (font_score): Even if the PIXEL_SIZE is the same, check
10855 DPI too.
10856 (font_sort_entites): Setup prefer_prop[FONT_DPI_INDEX] too.
10857
108582008-06-24 Andreas Schwab <schwab@suse.de>
10859
10860 * Makefile.in (${lispsource}loaddefs.el): Rename from
10861 ../lisp/loaddefs.el.
10862 (bootstrap-clean): Do what distclean does but don't remove
10863 Makefile.
10864 (distclean): Depend on bootstrap-clean and remove Makefile.
10865
108662008-06-24 Chong Yidong <cyd@stupidchicken.com>
10867
10868 * buffer.h (struct buffer): New member word_wrap.
10869
10870 * buffer.c (syms_of_buffer): New variables default-word-wrap and
10871 word-wrap.
10872 (init_buffer_once): Initialize them.
10873
10874 * dispextern.h (struct it): Replace bool truncate_lines_p with a
10875 line_wrap enum possessing three possible values.
10876
10877 * termopts.h: Replace truncate_partial_width_windows with
10878 Vtruncate_partial_width_windows.
10879
10880 * dispnew.c (direct_output_for_insert): Avoid direct output when
10881 inserting a space with word wrap on.
10882
10883 * indent.c (compute_motion): Obey integer values of
10884 truncate-partial-width-windows.
10885
10886 * xdisp.c (Vtruncate_partial_width_windows): New Lisp_Object,
10887 replacing truncate_partial_width_windows.
10888 (init_iterator): If Vtruncate_partial_width_windows is an integer,
10889 truncate only if the window width is below that integer.
10890 (start_display, resize_mini_window, produce_stretch_glyph)
10891 (display_string, move_it_in_display_line_to): Use line_wrap.
10892 (back_to_previous_visible_line_start, reseat_1): Reset
10893 string_from_display_prop_p.
10894 (display_line): Extend default face to end of line when wrapping.
10895
108962008-06-24 Kim F. Storm <storm@cua.dk>
10897
10898 * xdisp.c (display_line, move_it_in_display_line_to): Add ability
10899 to wrap continued lines at word boundaries.
10900
109012008-06-24 Jason Rumney <jasonr@gnu.org>
10902
10903 * font.c (Ffont_face_attributes): Multiply pixel size before point
10904 conversion to avoid multiplying rounding error.
10905
109062008-06-23 Jason Rumney <jasonr@gnu.org>
10907
10908 * w32term.c (x_draw_glyph_string_background)
10909 (x_draw_glyph_string): Remove old bdf font code.
10910
10911 * w32term.h (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): Remove.
10912
109132008-06-22 Kenichi Handa <handa@m17n.org>
10914
10915 * font.c (font_find_for_lface): Try the adstyle specified in
10916 the property of LFACE_FONT of LFACE (if any).
10917
109182008-06-21 Seiji Zenitani <zenitani@mac.com>
4e2af782 10919 Ryo Yoshitake <ryo@shiftmode.net>
aac0c6e3
MR
10920
10921 * xterm.c (x_set_frame_alpha): Add x_catch_errors for bug#437.
10922
109232008-06-22 Stefan Monnier <monnier@iro.umontreal.ca>
10924
10925 * Makefile.in (${lisp} ${SOME_MACHINE_LISP}, ../lisp/loaddefs.el):
10926 Use $(BOOTSTRAPEMACS) rather than witness-emacs.
10927 (bootstrap-emacs${EXEEXT}): Merge witness-emacs into it.
10928 (witness-emacs): Remove.
10929 (lisp, shortlisp): Move loaddefs.el earlier.
10930 (mostlyclean): Forget about witness-emacs.
10931
109322008-06-22 Glenn Morris <rgm@gnu.org>
10933
10934 * Makefile.in (witness-emacs): Depend on temacs${EXEEXT}.
10935 (.SUFFIXES): Declare .el.elc as a suffix rule, for non-GNU makes.
10936
109372008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
10938
10939 * Makefile.in (PRECOMP): Remove.
10940 (${lisp} ${SOME_MACHINE_LISP}): Remove pseudo dependency on PRECOMP.
10941 (witness-emacs): Run `compile-first'.
10942 (.el.elc): Use the new compile-onefile target.
10943
109442008-06-21 Kenichi Handa <handa@m17n.org>
10945
10946 * xftfont.c (xftfont_open): Handle QCembolden only when
10947 FC_EMBOLDEN is defined.
10948
109492008-06-21 Andreas Schwab <schwab@suse.de>
10950
10951 * Makefile.in (witness-emacs): Use ../lisp, not $(lispsource).
10952 (.el.elc): Likewise.
10953
109542008-06-21 Miles Bader <miles@gnu.org>
10955
10956 * Makefile.in (../lisp/loaddefs.el): Build autoloads in the lisp
10957 build dir, not the lisp source dir.
10958
109592008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
10960
10961 * Makefile.in (emacs${EXEEXT}): Link the new emacs to bootstrap-emacs.
10962 (bootstrapclean): Remove.
10963 (.el.elc): New rule.
10964 (PRECOMP): New var.
10965 (../lisp/subdirs.el): Remove.
10966 (bootstrap-emacs${EXEEXT}): Remove subdirs.el and charpro.el dependency.
10967 (witness-emacs): New target.
10968 (mostlyclean): Remove witness-emacs as well.
10969 (../lisp/loaddefs.el, ${lisp} ${SOME_MACHINE_LISP}):
10970 Add witness-emacs dependency.
10971
109722008-06-20 Chong Yidong <cyd@stupidchicken.com>
10973
10974 * font.c (Ffont_face_attributes): Omit key-attribute pairs not
10975 defined by the font.
10976
109772008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
10978
10979 * Makefile.in (emacs${EXEEXT}): Depend on the machine-specific files.
10980 (bootstrap-clean): New target that keeps TAGS around.
10981 (../lisp/subdirs.el, ../lisp/loaddefs.el): New targets.
10982 (bootstrap-emacs${EXEEXT}): Depend on subdirs.el.
10983
109842008-06-20 Jason Rumney <jasonr@gnu.org>
10985
10986 * w32fns.c, w32term.c, w32term.h, w32gui.h [OLD_FONT]:
10987 Remove obsolete font code.
10988
10989 * w32font.c (font_matches_spec): Use csb bitfield from font signature
10990 to determine language support.
10991
109922008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
10993
10994 * sysdep.c (cfsetspeed): New fun extracted from the code.
10995 (cfmakeraw): Move before first use.
10996
109972008-06-20 Angelo Graziosi <angelo.graziosi@alice.it> (tiny change)
10998
10999 * sysdep.c (cfmakeraw): Provide fallback implementation.
11000 (serial_configure): Provide fallback implementation of cfsetspeed.
11001
110022008-06-20 Kenichi Handa <handa@m17n.org>
11003
11004 * xftfont.c (xftfont_open): Add FOUNDRY, SPACING, DPI, SCALABLE to
11005 the pattern.
11006
11007 * fontset.c (fontset_from_font): Copy font_spec before changing
11008 the elements.
11009
11010 * xfns.c (x_default_font_parameter): Try "monospace-12" too.
11011
110122008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
11013
11014 * w32fns.c, xfns.c (x_default_font_parameter): Only set `font-param'
11015 for explicit `font' parameters.
11016
11017 * frame.c (x_set_font): Remove unexplained call to fix inf-recursion.
11018
110192008-06-19 Kenichi Handa <handa@m17n.org>
11020
11021 * frame.c: Include <ctype.h>.
11022 (x_set_font_backend): Allow spacing characters in the X resource
11023 for FontBackend.
11024
110252008-06-19 Stefan Monnier <monnier@iro.umontreal.ca>
11026
11027 * w32fns.c, xfns.c (Qfont_param): New var.
11028 (syms_of_w32fns): Initialize it.
11029 (x_default_font_parameter): Record explicit `font' into
11030 `font-parameter'.
11031
110322008-06-18 Kenichi Handa <handa@m17n.org>
11033
11034 * font.c (font_parse_xlfd): Fix previous change.
11035 (font_parse_fcname): Don't use :fc-unknown-spec.
11036 (FRAME_X_DISPLAY_INFO): Be sure to have at least 1 pixel height.
11037 (Fcopy_font_spec): Preserve the order of elements in FONT_EXTRA.
11038 (font_add_log): Prepend the driver name to the resulting fonts.
11039
11040 * ftfont.c (ftfont_pattern_entity): New arg extra. Caller changed.
11041 (ftfont_spec_pattern): Don't check QCfc_unknown_spec and QCname.
11042 (ftfont_list) [FC_FONTFORMAT]: Include FC_FONTFORMAT in objset.
11043
11044 * xftfont.c (QChinting , QCautohint, QChintstyle, QCrgba)
11045 (QCembolden): New variables.
11046 (syms_of_xftfont): DEFSYM them.
11047 (xftfont_open): Call XftFontMatch. Don't trust the result of
11048 XftTextExtents8 if the pixel_size is less than 5.
11049
110502008-06-18 Andreas Schwab <schwab@suse.de>
11051
11052 * font.c (Ffont_face_attributes): Only define if HAVE_WINDOW_SYSTEM.
11053 (syms_of_font): Only defsubr if HAVE_WINDOW_SYSTEM.
11054
110552008-06-18 Jason Rumney <jasonr@gnu.org>
11056
11057 * w32font.c (w32font_list, w32font_match): Add logging.
11058
11059 * w32uniscribe.c (uniscribe_list, uniscribe_match): Add logging.
11060
110612008-06-17 Chong Yidong <cyd@stupidchicken.com>
11062
11063 * font.c (font_parse_fcname): Store divider characters for
11064 unknown-spec list. For known key symbols, intern using correct
11065 symbol name.
11066
110672008-06-17 Kenichi Handa <handa@m17n.org>
11068
11069 * xfaces.c (realize_default_face): If the frame is not on window
11070 system, set the fontset of face to nil.
11071
110722008-06-17 Naohiro Aota <nao.aota@gmail.com> (tiny change)
11073
11074 * fontset.c (fontset_pattern_regexp): Escape some reg-expr characters.
11075
110762008-06-16 Juanma Barranquero <lekktu@gmail.com>
11077
11078 * dispextern.h (lookup_non_ascii_face, split_font_name_into_vector)
11079 (build_font_name_from_vector): Delete externs.
11080
11081 * xfaces.c (struct font_name): Don't declare.
11082
110832008-06-16 Stefan Monnier <monnier@iro.umontreal.ca>
11084
11085 * font.c (font_unparse_gtkname): Use EQ to compare Lisp_Objects.
11086
110872008-06-16 Chong Yidong <cyd@stupidchicken.com>
11088
11089 * font.c (font_parse_fcname): Fix handling of unknown-spec string.
11090
110912008-06-16 Juanma Barranquero <lekktu@gmail.com>
11092
11093 * font.c (Ffont_spec): Fix usage in docstring.
11094 (Ffont_face_attributes): Doc fix.
11095
110962008-06-16 Andreas Schwab <schwab@suse.de>
11097
11098 * font.c (Ffont_face_attributes): Fix definition.
11099
111002008-06-16 Jason Rumney <jasonr@gnu.org>
11101
11102 * font.h (font_style_symbolic_from_value): Remove.
11103
11104 * font.c (font_style_symbolic_from_value): Remove.
11105 (font_style_symbolic): Revert to pre 2008-06-13 version.
11106
11107 * w32font.c (w32_to_fc_weight): New function.
11108 (w32font_full_name, logfont_to_fcname): Use it.
11109
111102008-06-16 Kenichi Handa <handa@m17n.org>
11111
11112 * font.c (font_check_object): Delete it.
11113 (font_clear_cache): Check if a font-object is alive.
11114 (font_open_entity): Likewise. Set FONT_OBJLST_INDEX of a
11115 font-object to nil.
11116 (font_close_object): Don't check FONT_CLOSE_OBJECT.
11117 (font_at): Don't call font_check_object.
11118 (Ffont_get): Return a symbol for :weight, :slant, and :width.
11119
111202008-06-16 Katsumi Yamaoka <yamaoka@jpl.org>
11121
11122 * puresize.h (BASE_PURESIZE): Increase to 1230000.
11123
111242008-06-16 Chong Yidong <cyd@stupidchicken.com>
11125
11126 * font.c (font_parse_fcname): Correctly parse KEY=VAL values.
11127
111282008-06-15 Chong Yidong <cyd@stupidchicken.com>
11129
11130 * font.c (font_parse_fcname): Only one decimal point.
11131 (font_unparse_fcname): Handle data in family and foundry indices
11132 as symbols, not strings.
11133 (font_unparse_gtkname, Ffont_face_attributes): New functions.
11134
11135 * xfns.c (Fx_select_font): Give GTK font dialog the default font name.
11136
11137 * font.h (font_unparse_gtkname): Add prototype.
11138
111392008-06-15 Naohiro Aota <nao.aota@gmail.com> (tiny change)
11140
11141 * fontset.c (fontset_pattern_regexp): Escape `+' characters in pattern.
11142
111432008-06-15 Andreas Schwab <schwab@suse.de>
11144
11145 * font.c (font_update_drivers): Fix crash when no drivers match.
11146
111472008-06-15 Stefan Monnier <monnier@iro.umontreal.ca>
11148
11149 * xfns.c (Fx_create_frame): internal-border-width default to 0 for Gtk.
11150 * gtkutil.c (xg_create_frame_widgets): Don't set internal_border_width.
11151
111522008-06-14 Stefan Monnier <monnier@iro.umontreal.ca>
11153
11154 * xdisp.c (syms_of_xdisp): Default underline-minimum-offset to 1.
11155
111562008-06-13 Stefan Monnier <monnier@iro.umontreal.ca>
11157
11158 * process.c (Fserial_process_configure, Fprocess_send_eof):
11159 Use EQ to compare Lisp_Objects.
11160
111612008-06-13 Jason Rumney <jasonr@gnu.org>
11162
11163 * w32fns.c (Fw32_select_font): Remove old font API function.
11164
11165 * w32font.c (logfont_to_fcname): New function.
11166 (Fx_select_font): New font dialog function compatible with
11167 GTK/fontconfig version.
11168
11169 * font.c (font_style_symbolic_from_value): New function.
11170 (font_style_symbolic): Use it.
11171
11172 * font.h (font_style_symbolic_from_value): Declare new function.
11173
111742008-06-13 Juanma Barranquero <lekktu@gmail.com>
11175
11176 * font.c (syms_of_font) <font-weight-table, font-slant-table>:
11177 <font-width-table>: Fix typos in docstrings.
11178
111792008-06-13 Daniel Engeler <engeler@gmail.com>
11180
11181 These changes add serial port access.
11182 * process.c: Add HAVE_SERIAL.
11183 (Fdelete_process, Fprocess_status, Fset_process_buffer)
11184 (Fset_process_filter, Fset_process_sentinel, Fprocess_contact)
11185 (list_processes_1, select_wrapper, Fstop_process)
11186 (Fcontinue_process, Fprocess_send_eof, kill_buffer_processes)
11187 (status_notify): Modify to handle serial processes.
11188 [HAVE_SERIAL] (Fserial_process_configure)
11189 [HAVE_SERIAL] (make_serial_process_unwind, Fmake_serial_process):
11190 New functions.
11191 * process.h (struct Lisp_Process): Add `type'.
11192 * sysdep.c [HAVE_TERMIOS] (serial_open, serial_configure):
11193 New functions.
11194 * w32.c (_sys_read_ahead, sys_read, sys_write): Modify to handle
11195 serial ports.
b71ac3dd 11196 (serial_open, serial_configure): New functions.
aac0c6e3
MR
11197 * w32.h: Add FILE_SERIAL.
11198 (struct _child_process): Add ovl_read, ovl_write.
11199
112002008-06-13 Kenichi Handa <handa@m17n.org>
11201
11202 * dispextern.h (enum lface_attribute_index): New member
11203 LFACE_FOUNDRY_INDEX.
11204
11205 * font.c (font_score): Delete arg alternate_families. Check only
11206 weight, slant, width, and size. Ignore the difference of alias
11207 style symbols.
11208 (font_sort_entites): Adjust for the above change. Reflect the
11209 order of font-driver to scores.
11210 (font_list_entities): Don't check alternate_familes here.
11211 (font_clear_prop): Handle foundry.
11212 (font_update_lface): Don't parse "foundry-family" form here.
11213 Handle FONT_FOUNDRY_INDEX.
11214 (font_find_for_lface): Likewise. Handle alternate families here.
11215 If registry is nil, try iso8859-1 and ascii-0.
11216 (font_open_for_lface): Pay attention to size in ENTITY.
11217 (font_open_by_name): Simplify by calling font_load_for_lface.
11218 (free_font_driver_list): Delete it.
11219 (font_update_drivers): Preserve the order of backends.
11220 (syms_of_font): Setting of sort_shift_bits adjusted for the change
11221 of font_score and font_sort_entites.
11222 (font_update_sort_order): Likewise.
11223
11224 * xfaces.c (LFACE_FOUNDRY): New macro.
11225 (check_lface_attrs): Check foundry.
11226 (set_lface_from_font): Don't parse "FOUNDRY-FAMILY" form.
11227 (merge_face_vectors): Check foundry.
11228 (merge_face_ref): Likewise.
11229 (Finternal_set_lisp_face_attribute): Likewise.
11230 (x_update_menu_appearance): Likewise.
11231 (Finternal_get_lisp_face_attribute): Likewise.
11232 (lface_hash): Likewise.
11233 (lface_same_font_attributes_p): Likewise.
11234 (x_supports_face_attributes_p): Likewise.
11235 (tty_supports_face_attributes_p): Likewise.
11236 (Finternal_set_alternative_font_family_alist): Intern strings.
11237 (Finternal_set_alternative_font_registry_alist): Downcase strings.
11238 (realize_default_face): Set LFACE_FOUNDRY (lface).
11239
11240 * xfns.c (Fx_create_frame, x_create_tip_frame): Register X
11241 font-driver at first.
11242
11243 * ftfont.c (ftfont_font_format) [! FC_FONTFORMAT]: Declare "int len;".
11244
112452008-06-12 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
11246
11247 * lread.c (Fload): Use xfree, not free on saved_doc_string.
11248
112492008-06-12 Jim Meyering <meyering@redhat.com>
11250
11251 Make unexec_free handle NULL the same way free does.
11252 * unexmacosx.c (unexec_free): Ignore a NULL argument.
11253
112542008-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
11255
11256 * character.h (CHAR_TO_BYTE_SAFE): New macro.
11257 * character.c (Fmultibyte_char_to_unibyte): Obey the docstring.
11258 * regex.c (RE_CHAR_TO_UNIBYTE): Use the new macro.
11259 (WEAK_ALIAS): Simplify.
11260 * syntax.c (skip_chars): Don't mark non-byte chars in the fastmap
11261 when searching a unibyte buffer.
11262
112632008-06-12 Chong Yidong <cyd@stupidchicken.com>
11264
11265 * xfns.c (Fx_select_font): Rename from x-font-dialog.
11266
112672008-06-12 Juanma Barranquero <lekktu@gmail.com>
11268
11269 * w32font.c: Include ctype.h.
11270
112712008-06-11 Jason Rumney <jasonr@gnu.org>
11272
11273 * w32font.c (w32font_encode_char): Detect missing glyphs that are
11274 misreported as space.
11275 (add_font_entity_to_list): Support unicode-bmp and unicode-sip
11276 as aliases for registry iso10646-1.
11277
112782008-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
11279
11280 * buffer.c (clone_per_buffer_values): Skip `name'.
11281
112822008-06-11 Chong Yidong <cyd@stupidchicken.com>
11283
11284 * font.c (font_parse_fcname): Fix last change; accept decimal
11285 points in font size.
11286
112872008-06-10 Jason Rumney <jasonr@gnu.org>
11288
11289 * w32uniscribe.c (add_opentype_font_name_to_list):
11290 Skip non unicode fonts.
11291
112922008-06-10 Chong Yidong <cyd@stupidchicken.com>
11293
11294 * xfns.c (Fx_font_dialog): New function.
11295
11296 * gtkutil.c (xg_dialog_response_cb): Rename from
11297 xg_file_response_callback.
11298 (pop_down_dialog): Rename from pop_down_file_dialog.
11299 (xg_get_file_name): Callers changed.
11300 (xg_get_font_name): New function.
11301
11302 * gtkutil.h (xg_get_font_name): Insert prototype.
11303
113042008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
11305
11306 * xdisp.c (underline_minimum_offset): Rename from xterm.c's
11307 x_underline_minimum_display_offset.
11308 (syms_of_xdisp): Declare it here rather than in xterm.c.
11309 * dispextern.h (underline_minimum_offset): Declare it.
11310 * w32term.c (x_draw_glyph_string): Use it.
11311 * xterm.c (x_underline_minimum_display_offset): Move to xdisp.c.
11312 (syms_of_xterm): Don't declare it any more.
11313 (x_draw_glyph_string): Adjust to the new name.
11314
8719abec 113152008-06-10 David De La Harpe Golden <david@harpegolden.net>
aac0c6e3
MR
11316
11317 * xterm.c (x_underline_minimum_display_offset): New var.
11318 (x_draw_glyph_string): Use it.
11319 (syms_of_xterm): Declare it.
11320
113212008-06-10 Chong Yidong <cyd@stupidchicken.com>
11322
11323 * font.c (font_parse_fcname): Accept GTK-style font names too.
11324
113252008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
11326
11327 * dired.c (file_name_completion): Don't return t if the match is exact
11328 but with different capitalization.
11329 * minibuf.c (Ftry_completion): Simplify.
11330
11331 * window.c (Vwindow_point_insertion_type): New var.
11332 (set_window_buffer): Use it.
11333 (syms_of_window): Init and export it to Lisp.
11334
113352008-06-10 Kenichi Handa <handa@m17n.org>
11336
11337 * font.h (font_intern_prop): Prototype adjusted.
11338
11339 * font.c (font_intern_prop): New arg force_symbol.
11340 (font_parse_xlfd, font_parse_fcname, font_parse_family_registry):
11341 Adjust for the change of font_intern_prop.
11342
11343 * ftfont.c (ftfont_pattern_entity):
11344 * w32font.c (add_font_name_to_list, w32_enumfont_pattern_entity)
11345 (w32_registry):
11346 * w32uniscribe.c (add_opentype_font_name_to_list): Adjust for
11347 the change of font_intern_prop.
11348
113492008-06-09 Juanma Barranquero <lekktu@gmail.com>
11350
11351 * w32menu.c (digest_single_submenu): Declare extern.
11352
113532008-06-09 Jason Rumney <jasonr@gnu.org>
11354
11355 * w32term.c (x_make_frame_visible): Use alternate restore flags.
11356
11357 * w32menu.c (Fx_popup_menu): Unwind protect while building menu.
11358 (parse_single_submenu): Remove.
11359 (digest_single_submenu): Remove.
11360 (syms_of_w32menu): Don't initialise variables that have moved
11361 to menu.c.
11362 (set_frame_menubar): Sync with version in xmenu.c.
11363 (w32_menu_show): Sync with xmenu_show in xmenu.c.
11364
11365 * menu.c (single_keymap_panes, push_menu_pane, push_menu_item):
11366 Make static again.
11367
113682008-06-09 Jason Rumney <jasonr@gnu.org>
11369
11370 Changes to w32 files related to the move of common menu code
11371 to menu.c on 2008-06-08 by Chong Yidong.
11372
11373 * menu.c [HAVE_NTGUI]: Include w32term.h, move widget related
11374 defs to w32gui.h.
11375 (single_keymap_panes, push_menu_item, push_menu_pane):
11376 Make globally visible.
11377
11378 * w32menu.c (enum button_type, widget_value, local_heap, local_alloc)
11379 (local_free, malloc_widget_value, free_widget_value)
11380 (MENU_ITEMS_ITEM_NAME, MENU_ITEMS_ITEM_ENABLE, MENU_ITEMS_ITEM_VALUE)
11381 (MENU_ITEMS_ITEM_EQUIV_KEY, MENU_ITEMS_ITEM_DEFINITION)
11382 (MENU_ITEMS_ITEM_TYPE, MENU_ITEMS_ITEM_SELECTED, MENU_ITEMS_ITEM_HELP)
11383 (MENU_ITEMS_ITEM_LENGTH, enum menu_item_idx): Remove defs.
11384 (menu_items, menu_items_allocated, menu_items_used)
11385 (menu_items_n_panes, menu_items_submenu_depth): Remove global vars.
11386 (init_menu_items, finish_menu_items, discard_menu_items)
11387 (grow_menu_items, push_submenu_start, push_submenu_end)
11388 (push_left_right_boundary, push_menu_pane, push_menu_item)
11389 (keymap_panes, single_keymap_panes, list_of_panes, list_of_items)
11390 (free_menubar_widget_tree_value, parse_single_submenu)
11391 (update_submenu_strings): Remove functions.
11392 (xmalloc_widget_value): Remove and declare extern.
11393
11394 * makefile.w32-in ($(SRC)/menu.$(O)): New target.
11395 (OBJ1): Build it.
11396
11397 * w32gui.h (widget_value, XtPointer, Boolean, enum button_type)
11398 (local_heap, local_alloc, local_free, malloc_widget_value)
11399 (free_widget_value): Define here.
11400
114012008-06-09 Kenichi Handa <handa@m17n.org>
11402
11403 * font.h (Qascii_0): Extern it.
11404
11405 * font.c (Qascii_0): New variable.
11406 (syms_of_font): DEFSYM it.
11407 (font_open_by_name): If the registry "iso8859-1" fails, try also
11408 "ascii-0".
11409
11410 * ftfont.c (ftfont_spec_pattern): Accept the registry `ascii-0'.
11411
114122008-06-08 Kenichi Handa <handa@m17n.org>
11413
11414 * .gdbinit (xfont): New command.
11415
114162008-06-08 Andreas Schwab <schwab@suse.de>
11417
11418 * menu.c [HAVE_X_WINDOWS]: Include "xterm.h".
11419 * Makefile.in (menu.o): Update dependencies.
11420
11421 * Makefile.in (obj): Always add menu.o.
11422 * emacs.c (main): Always call syms_of_menu.
11423 * keyboard.h: Remove extra #ifdef HAVE_X_WINDOW.
11424
114252008-06-08 Chong Yidong <cyd@stupidchicken.com>
11426
11427 * Makefile.in: Compile menu.c.
11428
11429 * lisp.h: Declare syms_of_menu.
11430
11431 * emacs.c (main): Call syms_of_menu.
11432
11433 * keyboard.h: Relocate platform-independent menu definitions from
11434 xmenu.c.
11435
11436 * menu.c: New file. Relocate platform-independent menu
11437 definitions from xmenu.c. Suggested by Adrian Robert.
11438
11439 * xmenu.c: Remove platform-independent menu definitions.
11440 (menu_items menu_items_inuse, menu_items_allocated)
11441 (menu_items_used, menu_items_n_panes)
11442 (menu_items_submenu_depth): Move to keyboard.h.
11443 (init_menu_items, finish_menu_items, unuse_menu_items)
11444 (discard_menu_items, restore_menu_items, save_menu_items)
11445 (grow_menu_items, push_submenu_start, push_submenu_end)
11446 (push_left_right_boundary, push_menu_pane, push_menu_item)
11447 (keymap_panes, single_keymap_panes, single_menu_item)
11448 (list_of_panes, list_of_items, find_and_call_menu_selection)
11449 (xmalloc_widget_value, free_menubar_widget_value_tree)
11450 (parse_single_submenu, digest_single_submenu)
11451 (update_submenu_strings): Move to menu.c.
11452
114532008-06-07 Stefan Monnier <monnier@iro.umontreal.ca>
11454
11455 * dispnew.c (Flast_nonminibuf_frame): Handle the NULL case.
11456
114572008-06-06 Miles Bader <miles@gnu.org>
11458
11459 * xdisp.c (x_produce_glyphs): Calculate tab width based on current
11460 face, not frame default.
11461
114622008-06-05 Martin Rudalics <rudalics@gmx.at>
11463
11464 * window.c (pop_up_windows, pop_up_frames)
11465 (display_buffer_reuse_frames, Vpop_up_frame_function)
11466 (Vdisplay_buffer_function, Veven_window_heights)
11467 (Vspecial_display_buffer_names, Vspecial_display_regexps)
11468 (Vspecial_display_function, Vsame_window_buffer_names)
11469 (Vsame_window_regexps, split_height_threshold)
11470 (Vsplit_window_preferred_function): Move those vars to window.el.
11471 (display_buffer_1, Fspecial_display_p, Fsame_window_p)
11472 (Fdisplay_buffer): Move those functions to window.el.
11473 (syms_of_window): Remove corresponding declarations.
11474 (display_buffer): New function.
11475 (temp_output_buffer_show, Fother_window_for_scrolling): Use it.
11476 * dispnew.c (Flast_nonminibuf_frame): New function.
11477 * buffer.c (Fpop_to_buffer): Move to window.el.
11478
114792008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
11480
11481 * data.c (set_internal): Fix up call to let_shadows_buffer_binding_p.
11482
114832008-06-05 Kenichi Handa <handa@m17n.org>
11484
11485 * coding.c (detect_coding): Fix previous change.
11486 (detect_coding_system): Likewise.
11487
114882008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
11489
11490 * character.h (MAKE_CHAR_MULTIBYTE): Check the arg is a (uni)byte.
11491
11492 * keymap.c (Vminibuffer_local_filename_must_match_map):
11493 Rename from Vminibuffer_local_must_match_filename_map.
11494 (syms_of_keymap):
11495 * minibuf.c (Fcompleting_read): Adjust accordingly.
11496 * commands.h: Rename declaration as well.
11497
114982008-06-05 Kenichi Handa <handa@m17n.org>
11499
11500 * font.c (Ffont_spec): Don't use font_parse_family_registry for
11501 family name.
11502 (Ffont_put): Likewise.
11503
11504 * fontset.c (fontset_find_font): Call font_open_for_lface with the
11505 current font-spec.
11506
11507 * xfont.c (xfont_list): Don't set registry to iso8859-1 even if it
11508 is unspecified.
11509
11510 * xfaces.c (realize_x_face): If the font-related face attributes
11511 are the same as those of default face, realize a new fontset from
11512 default->fontset.
11513 (Fx_family_fonts): Use font_parse_family_registry instead of Ffont_put.
11514
115152008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
11516
11517 * xdisp.c (move_it_in_display_line_to): Improve the type of its args.
11518 (move_it_in_display_line): New wrapper.
11519
11520 * window.c (window_scroll_pixel_based_preserve_x)
11521 (window_scroll_preserve_hpos, window_scroll_preserve_vpos): New vars.
11522 (window_scroll_pixel_based, window_scroll_line_based):
11523 Use them to preserve column positions.
11524 (syms_of_window): Initialize them.
11525
11526 * indent.c (Fvertical_motion): Extend first arg to allow passing an
11527 (HPOS . VPOS) pair.
11528
11529 * dispextern.h (move_it_in_display_line): Declare.
11530
115312008-06-05 Juanma Barranquero <lekktu@gmail.com>
11532
11533 * window.c (Fwindow_parameter): Return VALUE, not (PARAMETER . VALUE).
11534 (Fwindow_parameters): Return copy of parameter alist. Doc fix.
11535 (Fset_window_parameter): Return VALUE, not parameter alist. Doc fix.
11536
115372008-06-04 Juanma Barranquero <lekktu@gmail.com>
11538
11539 * window.c (Fset_window_parameter): Doc fix.
11540 (Fwindow_parameters, Fwindow_parameter): Remove redundant check.
11541
115422008-06-04 Joakim Verona <joakim@verona.se>
11543
11544 * window.h (struct window): Add new member window_parameters.
11545
11546 * window.c (Fwindow_parameters, Fwindow_parameter)
11547 (Fset_window_parameter): New defuns.
11548 (syms_of_window): Defsubr the new defuns.
11549 (make_window): Initialize window_parameters to nil.
11550
115512008-06-04 John Paul Wallington <jpw@pobox.com>
11552
11553 * eval.c (Fdefmacro): Doc fix.
11554
115552008-06-04 Kenichi Handa <handa@m17n.org>
11556
11557 * coding.c (detect_coding): Fix handling of coding->head_ascii.
11558 Be sure to call setup_coding_system when we find a proper coding system.
11559 (detect_coding_system): Fix handling of coding->head_ascii.
11560
115612008-06-03 Andreas Schwab <schwab@suse.de>
11562
11563 * font.c (font_prop_validate_spacing): Fix last change.
11564
115652008-06-03 Kenichi Handa <handa@m17n.org>
11566
11567 * font.c (font_prop_validate_spacing): Handle uppercase symbols.
11568 (font_parse_fcname): Fix handling of unknown key.
11569
11570 * xfont.c (xfont_list): Try an alias.
11571
11572 * charset.c (char_charset): Return NULL if the arg charset_list is
11573 specified and C doesn't belong to any of them.
11574
115752008-06-02 Chip Coldwell <coldwell@redhat.com>
11576
11577 * font.c (font_pixel_size): Don't take cdr of an integer.
11578
115792008-06-02 Jim Meyering <meyering@redhat.com>
11580
11581 Make "xfree (NULL)" a no-op; remove useless if-before-xfree.
11582 * alloc.c (xfree): Return right away for a NULL arg.
11583 * lread.c (nosuffix): Remove now-useless if-before-xfree tests.
11584 * gtkutil.c (xg_gtk_scroll_destroy): Likewise.
11585 * mac.c (create_apple_event_from_event_ref): Likewise.
11586 (create_apple_event_from_drag_ref, cfstring_create_normalized):
11587 Likewise.
11588 * doprnt.c (doprnt1): Likewise.
11589 * frame.c (frame): Likewise.
11590 * keyboard.c (wipe_kboard): Likewise.
11591 * macterm.c (x_free_frame_resources, xlfdpat_destroy, XFreePixmap)
11592 (init_font_name_table, mac_unload_font, x_delete_display): Likewise.
11593 * term.c (tty_default_color_capabilities, maybe_fatal)
11594 (delete_tty): Likewise.
11595 * w16select.c (string): Likewise.
11596 * w32.c (w32_get_resource, SET_ENV_BUF_SIZE): Likewise.
11597 * w32bdf.c (w32_free_bdf_font): Likewise.
11598 * w32fns.c (w32_unload_font): Likewise.
11599 * w32font.c (w32font_close): Likewise.
11600 * window.c (size_window): Likewise.
11601 * xselect.c (receive_incremental_selection): Likewise.
11602 * xterm.c (x_free_frame_resources, x_delete_display): Likewise.
11603 * mactoolbox.c (create_apple_event_from_drag_ref): Likewise.
11604 * w32.c (stat): Likewise.
11605
11606 Remove useless if-before-free tests.
11607 * editfns.c (Fset_time_zone_rule): Likewise.
11608 * lread.c (nosuffix): Likewise.
11609 * ralloc.c (get_bloc): Likewise.
11610 * regex.c (reg_free): Likewise.
11611 * xftfont.c (xftfont_open, xftfont_close): Likewise.
11612 * xrdb.c (get_user_app, get_environ_db, x_load_resources): Likewise.
11613 * xsmfns.c (smc_save_yourself_CB): Likewise.
11614
116152008-06-02 Kenichi Handa <handa@m17n.org>
11616
11617 * font.c (font_find_for_lface): Handle float font size.
11618 (font_open_for_lface): Likewise.
11619
11620 * xfaces.c (x_supports_face_attributes_p): Check face->font before
11621 comparing the properties.
11622
116232008-06-01 Jason Rumney <jasonr@gnu.org>
11624
11625 * w32font.c (w32_enumfont_pattern_entity): Use requested registry.
11626 Treat iso10646-1 and Windows DEFAULT_CHARSET specially.
11627 Duplicate iso8859-1 fonts as iso10646-1 if no registry specified.
11628 Don't add empty script list.
11629 (w32_registry): Only map DEFAULT_CHARSET to iso10646-1 here.
11630
116312008-06-01 Dan Nicolaescu <dann@ics.uci.edu>
11632
11633 * Makefile.in (dot, dotdot): Remove, update users.
11634 ".." has been used elsewhere in the file for a long time.
11635 (LIBXT_STATIC): Remove conditional based on unused variable.
11636
116372008-06-01 Miles Bader <miles@gnu.org>
11638
11639 * xfaces.c (Vface_remapping_alist): New variable.
11640 (syms_of_xfaces): Initialize it.
11641 (enum named_merge_point_kind): New type.
11642 (struct named_merge_point): Add `named_merge_point_kind' field.
11643 (push_named_merge_point): Make cycle detection respect different
11644 named-merge-point kinds.
11645 (lface_from_face_name_no_resolve): Rename from `lface_from_face_name'.
11646 Remove face-name alias resolution.
11647 (lface_from_face_name): New definition using
11648 `lface_from_face_name_no_resolve'.
11649 (get_lface_attributes_no_remap): Rename from `get_lface_attributes'.
11650 Call lface_from_face_name_no_resolve instead of lface_from_face_name.
11651 (get_lface_attributes): New definition that layers face-remapping on
11652 top of get_lface_attributes_no_remap. New arg `named_merge_points'.
11653 (lookup_basic_face): New function.
11654 (lookup_derived_face): Pass new last arg to `get_lface_attributes'.
11655 (realize_named_face): Call `get_lface_attributes_no_remap' instead of
11656 `get_lface_attributes'.
11657 (face_at_buffer_position): Use `lookup_basic_face' to lookup
11658 DEFAULT_FACE_ID if necessary. When optimizing the default-face case,
11659 return default_face's face-id instead of the constant DEFAULT_FACE_ID.
11660
11661 * xdisp.c (init_iterator): Pass base_face_id through
11662 `lookup_basic_face' when we actually use it as a face-id.
11663 (handle_single_display_prop): Use `lookup_basic_face' to lookup
11664 DEFAULT_FACE_ID.
11665
11666 * fontset.c (Finternal_char_font): Use `lookup_basic_face' to
11667 lookup the initial face-id.
11668
11669 * dispextern.h (lookup_basic_face, Vface_remapping_alist): New decls.
11670
116712008-06-01 Juanma Barranquero <lekktu@gmail.com>
11672
11673 * textprop.c (syms_of_textprop) <text-property-default-nonsticky>:
11674 (Fremove_text_properties): Fix typos in docstrings.
11675
116762008-05-31 Kenichi Handa <handa@m17n.org>
11677
11678 * font.c (font_list_entities): Fix the car part of data to be
11679 stored in the cache.
11680
11681 * ftfont.c (ftfont_font_format): Don't use strcasestr.
11682
116832008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
11684
11685 * chartab.c (Foptimize_char_table, optimize_sub_char_table):
11686 Add a `test' argument so another predicate than `equal' can be used.
11687 (map_sub_char_table): Use `eq' rather than `equal' to merge ranges.
11688 (map_char_table): Remove unused vars `c' and `i'.
11689 * lisp.h (Foptimize_char_table): Adjust declaration.
11690 * charset.c (Fclear_charset_maps): Adjust call to Foptimize_char_table.
11691
116922008-05-30 Kenichi Handa <handa@m17n.org>
11693
11694 * font.c (Ffont_info): Define only if HAVE_WINDOW_SYSTEM is defined.
11695 (syms_of_font): Defsubr Sfont_info only if HAVE_WINDOW_SYSTEM is
11696 defined.
11697
116982008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
11699
11700 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
11701 (Fmake_variable_frame_local): Disallow mixing buffer-local and
11702 frame-local settings for the same variable.
11703
117042008-05-30 Kenichi Handa <handa@m17n.org>
11705
11706 * fontset.c (Ffont_info): Move to font.c.
11707 (syms_of_fontset): Delete defsubr of Sfont_info.
11708
11709 * font.c (font_style_to_value, font_score): Delete casting of the
11710 args to xstcasecmp.
11711 (register_font_driver): Increment num_font_drivers only when
11712 registering the driver globally.
11713 (Ffont_info): Move from fontset.c. Handle a font object too.
11714 (syms_of_font): Defsubr Sfont_info.
11715
117162008-05-29 Kenichi Handa <handa@m17n.org>
11717
11718 * coding.h (enum define_coding_utf8_arg_index): New enum.
11719 (enum coding_attr_index): Change coding_attr_utf_16_bom to
11720 coding_attr_utf_bom.
11721 (enum utf_bom_type): Rename from utf_16_bom_type.
11722 (struct utf_16_spec): Adjust for the above change.
11723 (struct coding_system): Add utf_8_bom in `spec' union.
11724
11725 * coding.c (CODING_UTF_8_BOM): New macro.
11726 (enum coding_category): Delete coding_category_utf_8, add
11727 coding_category_utf_8_auto, coding_category_utf_8_nosig, and
11728 coding_category_utf_8_sig.
11729 (CATEGORY_MASK_UTF_8): Delete it.
11730 (CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG)
11731 (CATEGORY_MASK_UTF_8_SIG): New macros.
11732 (CATEGORY_MASK_ANY): Delete CATEGORY_MASK_UTF_8, add
11733 CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG, and
11734 CATEGORY_MASK_UTF_8_SIG.
11735 (CATEGORY_MASK_UTF_8): New macro.
11736 (UTF_BOM, UTF_8_BOM_1, UTF_8_BOM_2, UTF_8_BOM_3): New macros.
11737 (detect_coding_utf_8): Check BOM.
11738 (decode_coding_utf_8, encode_coding_utf_8): Handle BOM.
11739 (decode_coding_utf_16): Adjust for the change of enum utf_bom_type.
11740 (encode_coding_utf_16): Likewise.
11741 (setup_coding_system): Likewise. Set CODING_UTF_8_BOM (coding).
11742 (detect_coding, detect_coding_system): Handle utf-8-auto.
11743 (Fdefine_coding_system_internal): Handle `bom' property for utf-8.
11744 (syms_of_coding): Fix setting up of Vcoding_category_table.
11745
117462008-05-29 Stefan Monnier <monnier@iro.umontreal.ca>
11747
11748 * process.c (Faccept_process_output): If `millisec' is non-nil,
11749 `seconds' default to 0.
11750 (wait_reading_process_output): Also return non-nil if we read output
11751 from a non-running process.
11752
117532008-05-29 Jason Rumney <jasonr@gnu.org>
11754
11755 * w32font.c (w32font_open_internal): Prefer truetype fonts unless
11756 `raster' specified.
11757 (add_font_entity_to_list): Allow non-opentype truetype fonts back
11758 in the uniscribe backend, but disallow any font that has no
11759 unicode subrange support.
11760
117612008-05-29 Juanma Barranquero <lekktu@gmail.com>
11762
11763 * xfaces.c (Fx_list_fonts, Finternal_copy_lisp_face):
11764 Fix typos in docstrings.
11765
117662008-05-29 Kenichi Handa <handa@m17n.org>
11767
11768 * xfaces.c (Fx_list_fonts): Make it return a list of font names.
11769 (Fx_family_fonts): Set frame correctly.
11770
117712008-05-28 Jason Rumney <jasonr@gnu.org>
11772
11773 * w32term.c (x_draw_glyph_string): Use clipmask if specified.
11774
117752008-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
11776
11777 * fileio.c (Fwrite_region): Delay the defaulting to beg&z to after
11778 calling build_annotations.
11779
117802008-05-28 Juanma Barranquero <lekktu@gmail.com>
11781
11782 * coding.c (Fdecode_coding_region, Fencode_coding_region)
11783 (Fencode_coding_string):
11784 (syms_of_coding) <coding-system-for-read, coding-system-for-write>:
11785 <latin-extra-code-table>: Fix typos in docstrings.
11786 (syms_of_coding) <coding-system-alist>: Doc fix.
11787 (syms_of_coding) <translation-table-for-input>: Reflow docstring.
11788
117892008-05-28 Kenichi Handa <handa@m17n.org>
11790
11791 * fontset.c (Ffont_info): Don't call font_close_object.
11792
11793 * font.c (font_parse_family_registry): Use Ffont_put to validate
11794 foundry and family.
11795 (font_delete_unmatched): Don't check spacing.
11796 (font_list_entities): Add spacing to the spec to list fonts.
11797
11798 * ftfont.c (ftfont_spec_pattern): Don't set FC_SPACING to pattern.
11799 (ftfont_list): Check spacing here. Don't include FC_CHARSET in objset.
11800
11801 * coding.c (encode_coding_raw_text): Fix previous change.
11802 (encode_coding_object): When the dst_object is a buffer and is
11803 different from src_object, move gap to PT.
11804
118052008-05-27 Chong Yidong <cyd@stupidchicken.com>
11806
11807 * xterm.c (x_draw_glyph_string): If a clipmask is specified, use it.
11808
118092008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
11810
11811 * coding.c (encode_coding_raw_text): Set coding->produced_char for
11812 all branches. Compute it differently.
11813
11814 * xdisp.c [!HAVE_WINDOW_SYSTEM]: Include font.h for --without-x.
11815
118162008-05-27 Juanma Barranquero <lekktu@gmail.com>
11817
11818 * w32font.c (compute_metrics): Rewrite an "else { if () ... else ... }"
11819 into "else if () ... else ...".
11820
118212008-05-27 Jason Rumney <jasonr@gnu.org>
11822
11823 * w32font.c (w32font_open_internal): Determine if glyph indices
11824 are likely to work here.
11825
118262008-05-27 Chong Yidong <cyd@stupidchicken.com>
11827
11828 * xdisp.c (draw_glyphs): If mouse-highlighting is on, attempt to
11829 draw overlap glyphs with appropriate highlighting.
11830
118312008-05-27 Kenichi Handa <handa@m17n.org>
11832
11833 * xfont.c (xfont_open): Fix calculation of font->average_width.
11834
118352008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
11836
11837 * casefiddle.c (casify_object): Try to guess better whether the
11838 argument is a byte or a char.
11839
118402008-05-26 Andreas Schwab <schwab@suse.de>
11841
11842 * xselect.c (x_reply_selection_request): Properly handle format == 32.
11843 Always send multiples of format size.
11844
11845 * xterm.c (x_set_frame_alpha): Fix type mismatch.
11846
118472008-05-26 Jason Rumney <jasonr@gnu.org>
11848
11849 * w32font.c (w32font_text_extents): Zero whole metrics struct first.
11850 (compute_metrics): Don't set failure if we just cleared the cache.
11851 (w32_weight_table): Remove unused variable.
11852 (w32_enumfont_pattern_entity): Use FONT_SPACING_CHARCELL for
11853 backwards compatibility.
11854
118552008-05-25 Kenichi Handa <handa@m17n.org>
11856
11857 * w32term.c (x_draw_glyph_string):
11858 * xterm.c (x_draw_glyph_string): Fix calculation of underline position.
11859
11860 * xfaces.c: Delete unused function prototypes.
11861 (xstrlwr, font_frame): Delete them.
11862 (clear_face_cache): Delete unused variable.
11863
11864 * xftfont.c (xftfont_open): Delete unused variable.
11865 If underline_thickness is not 1, adjust underline_position.
11866
11867 * ftxfont.c (ftxfont_open): Delete unused variable.
11868
11869 * fontset.c (face_for_char): Optimize for the case of no charset
11870 property.
11871
11872 * font.c (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE)
11873 (check_gstring, check_otf_features, otf_list, otf_tag_symbol)
11874 (otf_open, font_otf_capability, generate_otf_features)
11875 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
11876 Comment out by surrounding "#if 0" and "#endif" for the moment.
11877 (Ffont_drive_otf, Ffont_otf_alternates): Likewise.
11878 (syms_of_font): Codes for accessing above commented out.
11879
118802008-05-24 Eli Zaretskii <eliz@gnu.org>
11881
11882 * w32proc.c: Include dispextern.h.
11883
11884 * w32.c: Include dispextern.h.
11885
118862008-05-23 Juanma Barranquero <lekktu@gmail.com>
11887
11888 * charset.c (Fencode_char, Fsplit_char): Doc fixes.
11889 (Fget_unused_iso_final_char, Fdecode_char, Fiso_charset):
11890 Fix typos in docstrings.
11891
118922008-05-23 Jason Rumney <jasonr@gnu.org>
11893
11894 * xsmfns.c: Remove includes that are already included by config.h.
11895
118962008-05-23 Kenichi Handa <handa@m17n.org>
11897
11898 * charset.c (Qemacs, charset_emacs): New variables.
11899 (char_charset): Fix for non-Unicode characters.
11900 (syms_of_charset): Define charset_emacs.
11901
11902 * w32term.c (x_draw_glyph_string): Be sure to update
11903 s->underline_thickness and s->underline_position. Be sure to draw
11904 underline within the current line area.
11905
11906 * xterm.c (x_draw_glyph_string): Be sure to update
11907 s->underline_thickness and s->underline_position. Be sure to draw
11908 underline within the current line area.
11909
11910 * fontset.c: Delete unused variables and add casting for char *
11911 throughout the file.
11912 (fontset_font): Try the fallback fonts of the current fontset
11913 before consulting the default fontset.
11914
11915 * ftfont.c (ftfont_spec_pattern): Free charset if necessary.
11916
11917 * xfont.c (xfont_list_pattern): Free names returned from XListFonts.
11918
119192008-05-22 Jason Rumney <jasonr@gnu.org>
11920
11921 * font.c: Don't include strings.h.
11922
11923 * dispextern.h, xfaces.c (xstrcasecmp): Rename from xstricmp.
11924
11925 * dosfns.c, fileio.c, font.c, fontset.c, image.c, macfns.c:
11926 * macterm.c, process.c, w32.c, w32fns.c, w32proc.c, xfaces.c:
11927 * xfns.c, xfont.c: All callers of stricmp and strcasecmp changed
11928 to call xstrcasecmp.
11929
11930 * xfont.c (xfont_list_pattern, compare_font_names): Use xstrcasecmp.
11931
11932 * fontset.c (fs_query_fontset): Use xstrcasecmp.
11933
11934 * font.c (font_style_to_value, font_score): Use xstrcasecmp.
11935
11936 * dosfns.c (msdos_stdcolor_idx): Use xstrcasecmp.
11937
119382008-05-22 Kenichi Handa <handa@m17n.org>
11939
11940 * puresize.h (BASE_PURESIZE): Increase to 1220000.
11941
11942 * font.c (font_prop_validate_style): Adjust for the format
11943 change of font_style_table.
11944
11945 * w32font.c (w32font_open_internal): Call Ffont_xlfd_name with
11946 two args.
11947
11948 * xfaces.c (x_update_menu_appearance): Call Ffont_xlfd_name with
11949 two args.
11950
119512008-05-22 Stefan Monnier <monnier@iro.umontreal.ca>
11952
11953 * minibuf.c (keys_of_minibuf): Delete.
11954 * lisp.h (keys_of_minibuf): Delete.
11955 * emacs.c (main): Don't call keys_of_minibuf.
11956
119572008-05-22 Kenichi Handa <handa@m17n.org>
11958
11959 * ftfont.c (ftfont_resolve_generic_family): Rename from
11960 ftfont_list_generic_family. Return a single family for each
11961 generic family.
11962 (ftfont_spec_pattern): Add FC_FAMILY to pattern.
11963 (ftfont_list): Adjust for the change of ftfont_resolve_generic_family.
11964 Call font_add_log.
11965 (ftfont_match): Call font_add_log.
11966
11967 * font.h (Ffont_xlfd_name): EXFUN adjusted.
11968 (FONT_DEBUG): Define it.
11969 (font_add_log): Extern it.
11970 (font_assert): Rename from xassert.
11971
11972 * xfont.c (xfont_get_pcm): Change xassert to font_assert.
11973 (xfont_list_family): Call font_add_log.
11974 (xfont_match): Likewise.
11975 (memq_no_quit): Delete.
11976
11977 * fontset.c (fontset_from_font, Ffontset_info): Add the 2nd arg in
11978 call of Ffont_xlfd_name.
11979
11980 * xfaces.c (struct table_entry, slant_table, weight_table)
11981 (swidth_table): Move to font.c.
11982
11983 * font.c: Checking of FONT_DEBUG is moved to font.h. All calls of
11984 xassert are changed to font_assert. Delete many unused variables.
11985 (Vfont_weight_table, Vfont_slant_table, Vfont_width_table):
11986 New variables.
11987 (struct table_entry): Move from xfaces.c and modified.
11988 (weight_table, slant_table, width_table): Move from xfaces.c and
11989 contents adjusted for the change of struct table_entry.
11990 (font_style_to_value, font_style_symbolic): Adjust for the
11991 format change of font_style_table.
11992 (font_parse_family_registry): Don't overwrite existing foundry and
11993 family of font_spec.
11994 (font_score): Fix calculation of diff for sizes.
11995 (font_sort_entites): Call font_add_log.
11996 (font_delete_unmatched): Return a newly created list.
11997 (font_list_entities): Fix previous change. Call font_add_log.
11998 (font_matching_entity, font_open_entity, font_close_entity):
11999 Call font_add_log.
12000 (Ffont_xlfd_name): New arg FOLD-WILDCARDS.
12001 (Finternal_set_font_style_table): Delete.
12002 (BUILD_STYLE_TABLE): New macro.
12003 (build_style_table): New function.
12004 (Vfont_log, font_log_env_checked): New variables.
12005 (font_add_log): New function.
12006 (syms_of_font): Delete defsubr Sinternal_set_font_style_table.
12007 Declare Lisp variables "font-weight-table", "font-slant-table",
12008 "font-width-table", and "font-log". Initialize font_style_table.
12009
120102008-05-21 Dan Nicolaescu <dann@ics.uci.edu>
12011
12012 * xterm.c (x_set_frame_alpha): Move declarations before statements.
12013
120142008-05-21 Seiji Zenitani <zenitani@mac.com>
4e2af782 12015 Ryo Yoshitake <ryo@shiftmode.net>
aac0c6e3
MR
12016
12017 * frame.c (Qalpha): Add a new frame parameter `alpha'.
12018 (Vframe_alpha_lower_limit): New variable.
12019 (x_set_alpha): New function.
12020
12021 * frame.h (Qalpha, Vframe_parameter_lower_limit): Export them.
12022
12023 * xfns.c (x-create-frame, Qalpha):
12024 Initialize the frame parameter `alpha'.
12025 * xterm.c (OPAQUE, OPACITY): New.
12026 (x_set_frame_alpha): New function.
12027 (frame_highlight, frame_unhighlight): Call x_set_frame_alpha.
12028
12029 * macfns.c (mac_frame_parm_handlers): A null handler for x_set_alpha.
12030 * w32fns.c (w32_frame_parm_handlers): Likewise.
12031
120322008-05-20 Jason Rumney <jasonr@gnu.org>
12033
12034 * w32font.c (add_font_entity_to_list): Don't add non-opentype
12035 truetype fonts to opentype list.
12036
120372008-05-20 Juanma Barranquero <lekktu@gmail.com>
12038
12039 * fontset.c (Ffontset_info): Doc fix.
12040 (syms_of_fontset) <font-encoding-charset-alist, use-default-ascent>:
12041 <ignore-relative-composition>: Fix typos in docstrings.
12042
12043 * font.c (syms-of-font) <font-encoding-alist>:
12044 (Ffontp, Ffont_make_gstring): Fix typos in docstrings.
12045 (Flist_fonts, Ffont_family_list, Ffont_fill_gstring, Fquery_font)
12046 (Ffont_otf_alternates): Doc fixes.
12047
120482008-05-20 Kenichi Handa <handa@m17n.org>
12049
12050 * Makefile.in (FONTSRC): Delete it. Change all $(FONTSRC) to
12051 font.h through out the file.
12052 (FONT_DRIVERS): Rename from FONTOBJ.
12053 (obj): Change $(FONTOBJ) to $(FONT_DRIVERS). Add font.o.
12054 (SOME_MACHINE_OBJECTS): Change $(FONTOBJ) to $(FONT_DRIVERS).
12055
12056 * emacs.c (main): Call syms_of_font unconditionally.
12057
12058 * font.h (find_font_encoding): Extern it.
12059
12060 * font.c (Vfont_encoding_alist, find_font_encoding): Move from
12061 fontset.c.
194d44e7 12062 (font_pixel_size) [! HAVE_WINDOW_SYSTEM]: Return 1.
aac0c6e3
MR
12063 (font_open_entity): Update FRAME_X_DISPLAY_INFO (f)->n_fonts,
12064 FRAME_SMALLEST_CHAR_WIDTH (f), and FRAME_SMALLEST_FONT_HEIGHT (f)
12065 only when HAVE_WINDOW_SYSTEM is defined.
12066 (font_close_object): Update FRAME_X_DISPLAY_INFO (f)->n_fonts only
12067 when HAVE_WINDOW_SYSTEM is defined.
12068
12069 * fontset.c (Vfont_encoding_alist, find_font_encoding): Move to font.c.
12070 (syms_of_fontset): Move declaration of font-encoding-alist to font.c.
12071
12072 * xfaces.c: Include font.h unconditionally.
12073 (merge_face_ref, merge_face_vectors)
12074 (Finternal_set_lisp_face_attribute): Cancel the previous change.
12075
120762008-05-20 Stefan Monnier <monnier@iro.umontreal.ca>
12077
12078 * xdisp.c (select_frame_for_redisplay): Adjust for last change to
12079 indirect_variable.
12080 * eval.c (lisp_indirect_variable): New fun.
12081 (Fuser_variable_p): Use it.
12082
120832008-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
12084
12085 * lisp.h (indirect_variable):
12086 * data.c (indirect_variable, let_shadows_buffer_binding_p):
12087 Use Lisp_Symbol pointers rather than Lisp_Object.
12088 Adjust callers.
12089 * buffer.c (buffer_slot_type_mismatch): Use wrong-type-argument.
12090 To this end, change calling-convention.
12091
12092 * minibuf.c (Finternal_complete_buffer): Only strip out hidden buffers
12093 if some non-hidden buffers are selected by string&pred.
12094
120952008-05-19 Chong Yidong <cyd@stupidchicken.com>
12096
12097 * process.c (wait_reading_process_output): Always check status
12098 when in batch mode.
12099
121002008-05-19 Kenichi Handa <handa@m17n.org>
12101
12102 * font.c (font_list_entities): Fix handling of cache.
12103 (font_matching_entity): Likewise.
12104
12105 * ftfont.c (cs_iso8859_1): Delete.
12106 (ft_face_cache): New variable.
12107 (struct ftfont_info): New member fc_charset_idx.
12108 (ftfont_build_basic_charsets): Delete.
12109 (fc_charset_table): New variable.
12110 (ftfont_pattern_entity): New arg fc_charset_idx. Store (FILENAME
12111 . FC_CHARSET_IDX) as :font-entity property in the font entity.
12112 Callers changed.
12113 (ftfont_lookup_cache, ftfont_get_charset): New functions.
12114 (ftfont_spec_pattern): New argument fc_charset_idx.
12115 Check registry more rigidly. Change callers.
12116 (ftfont_open, ftfont_close, ftfont_has_char): Adjust for the
12117 change of :font-entity property of the font.
12118
12119 * xftfont.c (xftfont_open): Adjust for the change of :font-entity
12120 property of the font.
12121
121222008-05-18 Juanma Barranquero <lekktu@gmail.com>
12123
12124 * coding.c (Fcoding_system_p): Rename argument to match docstring.
12125 (Funencodable_char_position, Fcheck_coding_systems_region)
12126 (Fdecode_coding_string, Fencode_coding_string): Fix typos in docstrings.
12127 (Fdetect_coding_region, Fdetect_coding_string, Fencode_coding_region)
12128 (Ffind_operation_coding_system, Fset_coding_system_priority)
12129 (Fcoding_system_eol_type): Doc fixes.
12130
121312008-05-17 Glenn Morris <rgm@gnu.org>
12132
12133 * sysdep.c (child_setup_tty): Handle systems with NLDLY, without FFDLY.
12134
121352008-05-16 Eli Zaretskii <eliz@gnu.org>
12136
12137 * dired.c (Ffile_attributes): Shut up GCC warnings about st_uid
12138 and st_gid.
12139
12140 * frame.c (Fdelete_frame): Don't call font_update_drivers if
12141 HAVE_WINDOW_SYSTEM is not defined.
12142
12143 * xfaces.c (merge_face_ref, merge_face_vectors)
12144 (Finternal_set_lisp_face_attribute): Use FONT_*_INDEX only when
12145 HAVE_WINDOW_SYSTEM is defined.
12146 (Fface_font): Fix non-HAVE_WINDOW_SYSTEM case.
12147
121482008-05-16 Stefan Monnier <monnier@iro.umontreal.ca>
12149
12150 * keyboard.c (parse_menu_item): Do not cache key shortcut any more.
12151
121522008-05-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12153
12154 * macterm.c (x_draw_relief_rect): Remove unused variable `dpy'.
12155
121562008-05-15 Kenichi Handa <handa@m17n.org>
12157
12158 * font.c (font_find_for_lface): Reflect LFACE_FONT in the font
12159 preference.
12160
121612008-05-15 Glenn Morris <rgm@gnu.org>
12162
12163 * emacs.c (USAGE1, standard_args): Remove -disable-font-backend.
12164
121652008-05-15 Chong Yidong <cyd@stupidchicken.com>
12166
12167 * fns.c (init_fns): Don't initialize weak_hash_tables here.
12168 (init_weak_hash_tables): New fun. Initialize weak_hash_tables.
12169
12170 * alloc.c (init_alloc_once): Call init_weak_hash_tables.
12171
121722008-05-15 Kenichi Handa <handa@m17n.org>
12173
12174 * ftfont.c (ftfont_list): Downcase family name to check generic
12175 families.
12176
12177 * xfaces.c (Finternal_set_lisp_face_attribute): Be sure to make a
12178 font-spec for QCfont value.
12179
12180 * fontset.c (Fnew_fontset): Call font_unparse_xlfd with 256-byte
12181 buffer. Check the return value of it.
12182
121832008-05-14 Jason Rumney <jasonr@gnu.org>
12184
12185 * w32term.c (w32_get_glyph_overhangs): Remove.
12186 (w32_redisplay_interface): Use x_get_glyph_overhangs instead.
12187
121882008-05-14 Kenichi Handa <handa@m17n.org>
12189
12190 * font.c (font_prop_validate): Make nil a valid value.
12191 (font_clear_cache): Check if the cached vector of entities is nil
12192 or not.
12193
121942008-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12195
12196 * emacs.c (main_thread): Conditionalize on
12197 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
12198 (main) [FORWARD_SIGNAL_TO_MAIN_THREAD]: Initialize it.
12199
12200 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): New define.
12201 (main_thread, SIGNAL_THREAD_CHECK): Conditionalize on
12202 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
12203
122042008-05-14 Kenichi Handa <handa@m17n.org>
12205
12206 * coding.c (detect_coding_iso_2022): Ignore a coding category that
12207 has no corresponding coding system.
12208
122092008-05-14 Jason Rumney <jasonr@gnu.org>
12210
12211 * font.h (struct font) [WINDOWSNT]: Remove codepage member.
12212
12213 * w32font.h (w32font_open_internal): Update declaration.
12214
12215 * w32font.c (w32font_open_internal): Change last argument from
12216 w32font_info struct to font object. Fill in font object from
12217 font_entity. Get Outline metrics if possible. Use them to
12218 calculate underline position and thickness. Use xlfd name as name
12219 property. Don't set codepage.
12220 (w32font_open): Pass font_object to w32font_open_internal. Don't
12221 update dpyinfo->smallest_font_height and dpyinfo->smallest_char_width.
12222 (w32font_draw): Use s->font.
12223 (clear_cached_metrics): Don't clear non-existent blocks.
12224
12225 * w32term.c (w32_compute_glyph_string_overhangs): Don't compute if
12226 font was not found.
12227 (x_draw_glyph_string): Use underline position and thickness from font.
12228
12229 * w32uniscribe.c (uniscribe_open): Pass font_object to
12230 w32font_open_internal.
12231
122322008-05-14 Kenichi Handa <handa@m17n.org>
12233
12234 These changes are to delete all legacy font-handling codes, and
12235 make Emacs use only font-backends.
12236
12237 * Makefile.in: Delete USE_FONT_BACKEND conditionals.
12238 (frame.o, image.o, print.o): Depend on $(FONTSRC).
12239
12240 * makefile.w32-in (WIN32OBJ): Add w32reg.$(O), remove w32bdf.$(O).
12241
12242 * charset.h (Vcharset_non_preferred_head)
12243 (Vcurrent_iso639_language): Extern them.
12244
12245 * charset.c (Vcharset_non_preferred_head): New variable.
12246 (Vcurrent_iso639_language): New variable.
12247 (syms_of_charset): Declare it as a Lisp variable.
12248 (char_charset): Don't check non preferred charsets. As a last
12249 resort, return charset_unicode.
12250 (Fset_charset_priority): Update Vcharset_non_preferred_head.
12251
12252 * composite.c: Throughout the file, delete all USE_FONT_BACKEND
12253 conditionals. Don't check enable_font_backend. Delete all codes
12254 used only when USE_FONT_BACKEND is not defined.
12255
12256 * dispextern.h (struct glyph_string): Change type of `font' to
12257 `struct font *'.
12258 (struct glyph_string): New member underline_position and
12259 underline_thickness.
12260 (enum lface_attribute_index): Remove LFACE_AVGWIDTH_INDEX.
12261 (struct face): Change type of `font' to `struct font *'. Remove
12262 members `font_name', `font_info_id'.
12263 (per_char_metric, encode_char): Delete externs.
12264 (calc_pixel_width_or_height): Adjust the prototype.
12265
12266 * emacs.c (enable_font_backend): Delete extern.
12267 (main): Don't set enable_font_backend. Don't check the command
12268 line argument "-disable-font-backend".
12269
12270 * font.h (Qfont_spec, Qfont_entity, Qfont_object): Extern them.
12271 (enum font_property_index): New members FONT_DPI_INDEX,
12272 FONT_SPACING_INDEX, FONT_AVGWIDTH_INDEX, FONT_NAME_INDEX,
12273 FONT_FULLNAME_INDEX, FONT_FILE_INDEX, FONT_FORMAT_INDEX,
12274 FONT_OBJECT_MAX. Delete FONT_FRAME_INDEX.
12275 (FONT_WEIGHT_NUMERIC, FONT_SLANT_NUMERIC, FONT_WIDTH_NUMERIC)
12276 (FONT_WEIGHT_SYMBOLIC, FONT_SLANT_SYMBOLIC, FONT_WIDTH_SYMBOLIC)
12277 (FONT_WEIGHT_FOR_FACE, FONT_SLANT_FOR_FACE, FONT_WIDTH_FOR_FACE)
12278 (FONT_WEIGHT_NAME_NUMERIC, FONT_SLANT_NAME_NUMERIC)
12279 (FONT_WIDTH_NAME_NUMERIC, FONT_SET_STYLE): New macros.
12280 (struct font_spec, struct font_entity): New structs.
12281 (FONT_ENCODING_NOT_DECIDED): Moved from fontset.h.
12282 (struct font): Many members from old "struct font_info" moved to
12283 here. Members font and entity deleted.
12284 (FONT_SPEC_P, FONT_ENTITY_P, FONT_OBJECT_P, FONTP): Modified for
12285 the new font-related objects.
12286 (CHECK_FONT_SPEC, CHECK_FONT_ENTITY, CHECK_FONT_OBJECT)
12287 (CHECK_FONT_GET_OBJECT): Likewise.
12288 (XFONT_SPEC, XFONT_ENTITY, XFONT_OBJECT, XSETFONT): New macros.
12289 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved from font.h.
12290 (struct font_driver): New members case_sensitive anc check. Type
12291 of the member list and open changed.
12292 (enable_font_backend, font_symbolic_weight, font_symbolic_slant)
12293 (font_symbolic_width, font_find_object, font_get_spec)
12294 (font_set_lface_from_name): Delete extern.
12295 (Fcopy_font_spec, Fmerge_font_spec, Ffont_family_list): New EXFUNs.
12296
12297 * font.c: Include <strings.h>.
12298 (enable_font_backend): Delete it.
12299 (Qfont_spec, Qfont_entity, Qfont_object): New variables.
12300 (CHECK_VALIDATE_FONT_SPEC): Delete it.
12301 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved to font.h.
12302 (null_string): Delete it.
12303 (null_vector): Make it static.
12304 (font_family_alist): Delete it.
12305 (Qnormal): Extern it.
12306 (QCextra, QClanguage): Delete it.
12307 (QClang, QCavgwidth, QCfont_entity, QCfc_unknown_spec): New variables.
12308 (font_make_spec, font_make_entity, font_make_object)
12309 (font_intern_prop): Renamed from intern_downcase. Don't downcase
12310 the string. Callers changed.
12311 (font_pixel_size): Adjusted for the format change of font-related
12312 objects.
12313 (prop_name_to_numeric, prop_numeric_to_name): Delete them.
12314 (font_style_to_value, font_style_symbolic): New function.
12315 (build_font_family_alist): Delete it.
12316 (font_registry_charsets): Use Fassoc_string instead of
12317 assq_no_quit.
12318 (font_prop_validate_symbol): Don't return null_string.
12319 (font_prop_validate_style): Adjusted for the change of
12320 style-related values in a font vector.
12321 (font_property_table): Delete entries for QClanguage and
12322 QCantialias, add entries for QCavgwidth.
12323 (get_font_prop_index): Delete the 2nd argument FROM.
12324 (font_prop_validate): Arguments changed.
12325 (font_put_extra): Adjusted for the change of font-related objects.
12326 (font_expand_wildcards, font_parse_xlfd, font_unparse_xlfd)
12327 (font_parse_fcname, font_unparse_fcname)
12328 (font_prepare_composition): Likewise.
12329 (font_parse_family_registry): Renamed from font_merge_old_spec.
12330 (otf_open): Delete the 1st arg entity.
12331 (font_otf_capability): Adjusted for the above change.
12332 (font_score): New arg alternate_families. Adjusted for the change
12333 of font-related objects.
12334 (font_sort_entites): New arg best_only.
12335 (font_symbolic_weight, font_symbolic_slant, font_symbolic_width):
12336 Delete them.
12337 (font_match_p): Check alternate families.
12338 (font_find_object): Delete it.
12339 (font_check_object): New function.
12340 (font_clear_cache): Adjusted for the change of font-related objects.
12341 (font_delete_unmatched): New arg.
12342 (font_list_entities): Call font_driver->list with a spec that
12343 doesn't specify style-related properties.
12344 (font_matching_entity): Arguments changed. Caller changed.
12345 (font_open_entity): Adjusted for the change of font-related objects.
12346 (font_close_object, font_has_char, font_encode_char)
12347 (font_get_name, font_get_spec): Likewise.
12348 (font_spec_from_name, font_clear_prop, font_update_lface):
12349 New functions.
12350 (font_find_for_lface, font_open_for_lface, font_load_for_lface)
12351 (font_prepare_for_face, font_done_for_face, font_open_by_name)
12352 (font_at): Adjusted for the change of font-related objects.
12353 (font_range): New function.
12354 (Ffontp, Ffont_spec, Ffont_get, Ffont_put, Flist_fonts)
12355 (Ffont_xlfd_name): Adjusted for the change of font-related objects.
12356 (Fcopy_font_spec, Fmerge_font_spec): New function.
12357 (Ffont_family_list): Renamed from list-families.
12358 (Finternal_set_font_style_table): Arguments changed.
12359 (Ffont_fill_gstring, Ffont_shape_text, Fopen_font)
12360 (Ffont_drive_otf, Fquery_font, Ffont_match_p): Adjusted for the
12361 change of font-related objects.
12362 (syms_of_font): Delete "ifdef USE_FONT_BACKEND". DEFSYM new symbols.
12363
12364 * fontset.h (struct font_info): Delete it. Most members go to
12365 struct font.
12366 (FONT_ENCODING_NOT_DECIDED): Moved to font.h.
12367 (enum FONT_SPEC_INDEX): Delete it.
12368 (font_info, list_fonts_func, load_font_func, query_font_func)
12369 (set_frame_fontset_func, find_ccl_program_func)
12370 (get_font_repertory_func, new_fontset_from_font_name): Delete
12371 externs.
12372 (fontset_from_font_name): Extern it.
12373 (FS_LOAD_FONT, FONT_INFO_ID, FONT_INFO_FROM_ID)
12374 (FONT_INFO_FROM_FACE): Deleted.
12375 (face_for_font): Adjust prototype.
12376
12377 * fontset.c: Throughout the file, delete all USE_FONT_BACKEND
12378 conditionals. Don't check enable_font_backend. Delete all codes
12379 used only when USE_FONT_BACKEND is not defined.
12380 (get_font_info_func, list_font_func, load_font_func)
12381 (query_font_func, set_frame_fontset_func, find_ccl_program_func)
12382 (get_font_repertory_func): Delete them.
12383 (FONTSET_SPEC, FONT_DEF_NEW, FONT_DEF_SPEC, FONT_DEF_ENCODING)
12384 (FONT_DEF_REPERTORY, RFONT_DEF_FACE, RFONT_DEF_SET_FACE)
12385 (RFONT_DEF_FONT_DEF, RFONT_DEF_SPEC, RFONT_DEF_REPERTORY)
12386 (RFONT_DEF_OBJECT, RFONT_DEF_SET_OBJECT, RFONT_DEF_SCORE)
12387 (RFONT_DEF_SET_SCORE, RFONT_DEF_NEW): New macros.
12388 (fontset_compare_rfontdef): New function.
12389 (reorder_font_vector): Remove the argument CHARSET-ID. Sort
12390 rfont-defs by qsort. Adjusted for the change of font-group vector.
12391 (load_font_get_repertory): Deleted.
12392 (fontset_find_font): Use new macros to ref/set elements of
12393 font-def and rfont-def.
12394 (fontset_font): Fix the timing of remembering that no font for C.
12395 (free_face_fontset): Do nothing if the face has no fontset.
12396 (face_suitable_for_char_p): Use new macros to ref/set elements of
12397 rfont-def.
12398 (face_for_char): Likewise. Call face_for_char with font_object.
12399 (fs_load_font): Delete. Delete #pragma surrounding it.
12400 (fs_query_fontset): Use strcasecmp instead of strcmp.
12401 (generate_ascii_font_name): Adjusted for the format change of
12402 font-spec.
12403 (Fset_fontset_font): Likewise. Use new macros to set elements of
12404 font-def.
12405 (Fnew_fontset): Use font_unparse_xlfd to generate
12406 FONTSET_ASCII (fontset).
12407 (new_fontset_from_font_name): Deleted.
12408 (fontset_from_font): Renamed from new_fontset_from_font. Check if
12409 a fontset is already created for the font. FIx updating of
12410 Vfontset_alias_alist.
12411 (fontset_ascii_font): Deleted.
12412 (Ffont_info): Adjusted for the format change of font-spec.
12413 (Finternal_char_font): Likewise.
12414 (Ffontset_info): Likewise.
12415 (syms_of_fontset): Don't check load_font_func.
12416
12417 * fns.c (internal_equal): Handle PREV_FONT.
12418
12419 * frame.h: Delete USE_FONT_BACKEND conditional.
12420
12421 * frame.c: Throughout the file, delete all USE_FONT_BACKEND
12422 conditionals. Don't check enable_font_backend. Delete all codes
12423 used only when USE_FONT_BACKEND is not defined.
12424 (x_set_font): Call x_new_font, not x_new_fontset2.
12425 (x_set_font_backend): Use FRAME_FONT macro to check if a font is
12426 already set for the frame.
12427
12428 * ftfont.c (ftfont_pattern_entity): Argument FRAME removed. Make
12429 a font-entity by font_make_entity. Use font_intern_prop instead
12430 of intern_downcase. Use FONT_SET_STYLE to set a style-related
12431 font property. If a font is scalable, set avgwidth property to 0.
12432 Set font-entity property by font_put_extra.
12433 (ftfont_list_generic_family): Argument SPEC and REGISTRY removed.
12434 (ffont_driver): Adjusted for the change of struct font_driver.
12435 (ftfont_spec_pattern): New function.
12436 (ftfont_list): Return a list, not vector.
12437 (ftfont_match): Use ftfont_spec_pattern to get a pattern.
12438 (ftfont_list_family): Don't downcase names.
12439 (ftfont_free_entity): Deleted.
12440 (ftfont_open): Return a font-object. Adjusted for the change of
12441 struct font. Get underline_thickness and underline_position from
12442 font property. Don't update dpyinfo->smallest_font_height and
12443 dpyinfo->smallest_char_width.
12444 (ftfont_close): Don't free `struct font'.
12445 (ftfont_has_char): Adjusted for the format change of font-entity.
12446 (ftfont_encode_char, ftfont_text_extents): Likewise.
12447
12448 * ftxfont.c (ftxfont_list): Return a list, not vector.
12449 (ftxfont_open): Return a font-object. Adjusted for the change of
12450 struct font. Get underline_thickness and underline_position from
12451 font property. Don't update dpyinfo->smallest_font_height and
12452 dpyinfo->smallest_char_width.
12453 (ftxfont_close): Don't decrease FRAME_X_DISPLAY_INFO (f)->n_fonts.
12454 (ftxfont_draw): Adjusted for the change of struct font.
12455
12456 * image.c (image_ascent): Don't include "charset.h". Include
12457 "character.h" and "font.h".
12458
12459 * lisp.h (enum pvec_type): New member PREV_FONT.
12460 (Fassoc_string): EXFUN it.
12461
12462 * print.c: Include font.h.
12463 (print_object): Handle font-related objects.
12464
12465 * xdisp.c: Throughout the file, delete all USE_FONT_BACKEND
12466 conditionals. Don't check enable_font_backend. Delete all codes
12467 used only when USE_FONT_BACKEND is not defined.
12468 (handle_auto_composed_prop): Do nothing if it->f is not on a
12469 window system. Check how many following characters can be
12470 displayed by the same font.
12471 (calc_pixel_width_or_height): Type of the 4th arg is changed to
12472 'struct font *'.
12473 (get_char_face_and_encoding): Assign the whole encoding task to
12474 the `encode-char' method of a font driver.
12475 (fill_composite_glyph_string): Adjusted for the change of `struct
12476 face' and `struct glyph_string'.
12477 (fill_glyph_string): Likewise.
12478 (get_per_char_metric): Arguments changed.
12479 (x_get_glyph_overhangs): Adjusted for the change of `struct face'
12480 and `struct glyph_string'.
12481 (produce_stretch_glyph, calc_line_height_property)
12482 (x_produce_glyphs): Likewise.
12483
12484 * xfaces.c: Throughout the file, delete all USE_FONT_BACKEND
12485 conditionals. Don't check enable_font_backend. Delete all codes
12486 used only when USE_FONT_BACKEND is not defined. Use
12487 FONT_XXX_NAME_NUMERIC instead of face_numeric_xxx.
12488 (QCfoundry, QCadstyle, QCregistry, QCspacing, QCsize, QCavgwidth)
12489 (Qp): Extern them.
12490 (clear_font_table, load_face_font, xlfd_lookup_field_contents):
12491 Deleted.
12492 (struct font_name): Deleted.
12493 (xlfd_numeric_value, xlfd_symbolic_value): Deleted.
12494 (compare_fonts_by_sort_order): New function.
12495 (xlfd_numeric_slant, xlfd_symbolic_slant, xlfd_numeric_weight)
12496 (xlfd_symbolic_weight, xlfd_numeric_swidth, xlfd_symbolic_swidth):
12497 Deleted.
12498 (Fx_family_fonts): Use font_list_entities, and sort fonts by
12499 compare_fonts_by_sort_order.
12500 (Fx_font_family_list): Call Ffont_family_list.
12501 (face_numeric_value, face_numeric_weight, face_numeric_slant)
12502 (face_numeric_swidth, face_symbolic_value, face_symbolic_weight)
12503 (face_symbolic_slant, face_symbolic_swidth)
12504 (split_font_name_into_vector, build_font_name_from_vector)
12505 (xlfd_fixed_p, xlfd_point_size, pixel_point_size)
12506 (font_rescale_ratio, split_font_name, build_font_name)
12507 (free_font_names, sort_fonts, x_face_list_fonts)
12508 (face_font_available_p, sorted_font_list, cmp_font_names)
12509 (font_list_1, concat_font_list, font_list, remove_duplicates):
12510 Deleted.
12511 (Fx_list_fonts): Use Ffont_list.
12512 (LFACE_AVGWIDTH): Deleted.
12513 (check_lface_attrs): Don't check LFACE_AVGWIDTH. Check LFACE_FONT
12514 by FONTP.
12515 (lface_fully_specified_p): Don't check LFACE_AVGWIDTH.
12516 (set_lface_from_font_name): Delete it.
12517 (set_lface_from_font): Renamed from
12518 set_lface_from_font_and_fontset. Caller changed. Don't set
12519 LFACE_AVGWIDTH. Use FONT_XXX_FOR_FACE to get a symbol suitable
12520 for face.
12521 (merge_face_vectors): Copy font-spec if necessary.
12522 Clear properties of the font-spec if necessary.
12523 (merge_face_ref): Clear properties of the font-spec if necessary.
12524 (Finternal_set_lisp_face_attribute): Likewise.
12525 (set_font_frame_param): Use font_load_for_lface to load a
12526 font-object, and call Fmodify_frame_parameters with it.
12527 (x_update_menu_appearance): Don't check LFACE_AVGWIDTH. Get XLFD
12528 font name by Ffont_xlfd_name.
12529 (Finternal_lisp_face_attribute_values): Don't check QCweight,
12530 QCslant, and QCwidth.
12531 (Fface_font): Get a font name from font->props[FONT_NAME_INDEX].
12532 (lface_same_font_attributes_p): Don't check LFACE_AVGWIDTH.
12533 Compare fonts by EQ.
12534 (lookup_non_ascii_face): Deleted.
12535 (face_for_font): The 2nd argument changed.
12536 (x_supports_face_attributes_p): Don't check LFACE_AVGWIDTH.
12537 Check atomic font properties by case insensitive.
12538 (realize_non_ascii_face): Set face->overstrike correctly.
12539 (realize_x_face): Likewise. Check if LFACE_FONT is a font_object.
12540 (dump_realized_face): Get font name from
12541 font->props[FONT_NAME_INDEX]. Don't print font_info_id.
12542
12543 * xfns.c: Throughout the file, delete all USE_FONT_BACKEND
12544 conditionals. Don't check enable_font_backend. Delete all codes
12545 used only when USE_FONT_BACKEND is not defined.
12546 (xic_create_xfontset): Original code deleted and renamed from
12547 xic_create_xfontset2. Use FRAME_FONT, not FRAME_FONT_OBJECT.
12548 (x_make_gc): Don't set GCFont in GCs.
12549 (Fx_create_frame) [USE_LUCID]: Set xlwmenu_default_font to a font
12550 opened by "fixed".
12551 (syms_of_xfns): Don't set get_font_info_func, load_font_func,
12552 find_ccl_program_func, query_font_func, set_frame_fontset_func,
12553 get_font_repertory_func.
12554
12555 * xfont.c: Include <stdlib.h> and "ccl.h".
12556 (struct xfont_info): New structure.
12557 (xfont_query_font): Deleted.
12558 (xfont_find_ccl_program): Renamed from x_find_ccl_program and
12559 moved from xterm.c.
12560 (xfont_driver): Adjusted for the change of struct font_driver.
12561 (compare_font_names): New function.
12562 (xfont_list_pattern): Sort font names case insensitively. Make
12563 font_entity by calling font_make_entity. Avoid auto-scaled fonts.
12564 (xfont_list): Return a list, not vector.
12565 (xfont_match): If the font doesn't have QCname property, generate
12566 a name from the other font properties.
12567 (xfont_open): Return a font-object. Adjusted for the change of
12568 struct font. Get underline_thickness and underline_position from
12569 font property. Don't update dpyinfo->smallest_font_height and
12570 dpyinfo->smallest_char_width.
12571 (xfont_close): Don't free struct font.
12572 (xfont_prepare_face): Adjusted for the change of struct font.
12573 (xfont_done_face): Deleted.
12574 (xfont_has_char): Adjusted for the change of struct font.
12575 (xfont_encode_char, xfont_draw): Likewise.
12576 (xfont_check): New function.
12577
12578 * xftfont.c (xftfont_list): Adjusted for the change of `list'
12579 callback function.
12580 (xftfont_match): Adjusted for the format change of font-entity.
12581 (xftfont_open): Adjusted for the format change of font-entity and
12582 font-object. Adjusted for the change of struct font. Return a
12583 font-object. Don't update dpyinfo->smallest_font_height and
12584 dpyinfo->smallest_char_width.
12585 (xftfont_close): Block input while calling XftFontClose.
12586 (xftfont_prepare_face): Don't block input while calling
12587 xftfont_get_colors. Adjusted for the change of struct font.
12588 (xftfont_shape): Return value of error case fixed.
12589
12590 * xrdb.c (x_load_resources): Don't setup a fontset resource.
12591
12592 * xterm.h: Throughout the file, delete all USE_FONT_BACKEND
12593 conditionals.
12594 (FONT_WIDTH): Return (f)->max_width.
12595 (struct x_display_info): Delete member `font'.
12596 (x_list_fonts, x_get_font_info, x_load_font, x_query_font)
12597 (x_find_ccl_program, x_get_font_repertory): Delete externs.
12598 (struct x_output): Change type of `font' to `struct font *'.
12599
12600 * xterm.c: Throughout the file, delete all USE_FONT_BACKEND
12601 conditionals. Don't check enable_font_backend. Delete all codes
12602 used only when USE_FONT_BACKEND is not defined. Don't include ccl.h.
12603 (x_per_char_metric, x_encode_char): Deleted.
12604 (x_set_cursor_gc, x_set_mouse_face_gc): Don't set GCFont.
12605 (x_compute_glyph_string_overhangs): Adjusted for the change of
12606 `struct face'.
12607 (x_draw_glyph_string_foreground)
12608 (x_draw_composite_glyph_string_foreground): Likewise.
12609 (x_draw_glyph_string): Likewise. Use font->underline_position and
12610 font->underline_thickness.
12611 (x_new_font): Renamed from x_new_fontset2.
12612 (x_new_fontset, x_get_font_info, x_list_fonts): Deleted.
12613 (x_check_font): Call `check' method of a font driver.
12614 (x_font_min_bounds, x_compute_min_glyph_bounds, x_load_font)
12615 (x_query_font, x_get_font_repertory): Deleted.
12616 (x_find_ccl_program): Renamed and moved to xfont.c.
12617 (x_redisplay_interface): Adjusted for the change of `struct
12618 redisplay_interface'.
12619
12620 * w32fns.c: Throughout the file, delete all USE_FONT_BACKEND
12621 conditionals. Don't check enable_font_backend. Delete all codes
12622 used only when USE_FONT_BACKEND is not defined. Surround non-used
12623 code by "#ifdef OLD_FONT" and "endif".
12624 (Fw32_select_font): Use FONT_COMPAT to get old font structure.
12625
12626 * w32font.h (struct w32font_info): New member.
12627 (FONT_COMPAT): New macro.
12628 (w32font_open_internal): Prototype adjusted.
12629
12630 * w32gui.h (XGCValues): Surround `XFontStruct *font' by "if
12631 OLD_FONT" and "endif".
12632
12633 * w32font.c: Throughout the file, delete all USE_FONT_BACKEND
12634 conditionals. Don't check enable_font_backend. Delete all codes
12635 used only when USE_FONT_BACKEND is not defined.
12636 (w32font_open): Return a font-object. Make a font-object by
12637 font_make_object. Adjusted for the change of struct w32font_info.
12638 (w32font_close): Don't free struct font. Adjusted for the change
12639 of struct w32font_info.
12640 (w32font_encode_char, w32font_text_extents, w32font_draw):
12641 Adjusted for the change of struct w32font_info.
12642 (w32font_draw): Likewise.
12643 (w32font_list_internal): Return a list, not vector.
12644 (w32font_open_internal): Change the 4th arg to font-object.
12645 Adjusted for the change of struct w32font_info and font-object format.
12646 (add_font_name_to_list): Don't downcase names.
12647 (w32_enumfont_pattern_entity): Make a font-entity by
12648 font_make_entity. Adjusted for the format change of font-entity.
12649 Use FONT_SET_STYLE to set a style-related font property. If a
12650 font is scalable, set avgwidth property to 0. Set font-entity
12651 property by font_put_extra.
12652 (font_matches_spec): Adjusted for the format change of font-entity.
12653 (w32_weight_table, w32_decode_weight): New variables.
12654 (w32_encode_weight): New function.
12655 (fill_in_logfont): Adjusted for the format change of font-spec.
12656 (w32font_full_name): Use FONT_WEIGHT_SYMBOLIC to get a symbol
12657 weight value.
12658 (w32font_driver): Adjusted for the change of struct font_driver.
12659
12660 * w32term.h: Throughout the file, delete all USE_FONT_BACKEND
12661 conditionals. Don't check enable_font_backend. Surround non-used
12662 code by "#ifdef OLD_FONT" and "endif".
12663 (FONT_WIDTH, FONT_HEIGHT, FONT_BASE, FONT_DESCENT)
12664 (FONT_AVG_WIDTH): Adjusted for the change of struct font.
12665
12666 * w32term.c: Throughout the file, delete all USE_FONT_BACKEND
12667 conditionals. Don't check enable_font_backend. Delete all codes
12668 used only when USE_FONT_BACKEND is not defined. Surround non-used
12669 code by "#ifdef OLD_FONT" and "endif".
12670
12671 * w32uniscribe.c: Delete USE_FONT_BACKEND conditional.
12672 (uniscribe_open): Return value changed to font-object.
12673 Adjusted for the format change of font-object.
12674 (uniscribe_otf_capability): Adjusted for the change of struct font.
12675 (add_opentype_font_name_to_list): Don't downcase names.
12676 (uniscribe_font_driver): Adjusted for the change of struct
12677 font_driver.
12678
126792008-05-13 Chong Yidong <cyd@stupidchicken.com>
12680
12681 * dispnew.c (update_frame_1): Check if tty output is still valid
12682 before flushing it.
12683
126842008-05-13 Jan Djärv <jan.h.d@swipnet.se>
12685
12686 * xterm.c (handle_one_xevent): Don't pass buttons higher than 3
12687 to Gtk+ menus.
12688
126892008-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
12690
12691 * dired.c (file_name_completion): Tweak the code so as to always do it
12692 in a single pass. Tighten the scope of some variables.
12693
12694 * dired.c (Qdefault_directory): New var.
12695 (file_name_completion): Use it instead of Fexpand_file_name.
12696 (syms_of_dired): Initialize it.
12697
126982008-05-12 Stefan Monnier <monnier@iro.umontreal.ca>
12699
12700 * fileio.c (double_dollars): Remove dead code.
12701
127022008-05-10 Eli Zaretskii <eliz@gnu.org>
12703
12704 * dired.c (Ffile_attributes, Fdirectory_files_and_attributes):
12705 Mention w32-get-true-file-attributes in doc string.
12706
12707 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
12708
127092008-05-09 Glenn Morris <rgm@gnu.org>
12710
12711 * fileio.c (Fread_file_name): Remove reference to insdef, deleted
12712 2008-04-23.
12713
127142008-05-09 Eli Zaretskii <eliz@gnu.org>
12715
12716 Support for reporting owner and group of each file on MS-Windows:
12717 * dired.c (stat_uname, stat_gname): New functions, with special
12718 implementation for w32.
12719 (Ffile_attributes): Use them instead of getpwuid and getgrgid.
12720
12721 * w32.c: Rename the_passwd_* to dflt_passwd_*.
12722 (dflt_group_name): New static variable.
12723 (dflt_group): Rename from the_group.
12724 (init_user_info): Init dflt_group fields. Get user's group name
12725 from LookupAccountSid.
12726 (g_b_init_get_file_security, g_b_init_get_security_descriptor_owner)
12727 (g_b_init_get_security_descriptor_group, g_b_init_is_valid_sid):
12728 New initialization states.
12729 (globals_of_w32): Initialize them to zero. Initialize the default
12730 group name to "None".
12731 (GetFileSecurity_Name): New global var, the name of the function
12732 to call for GetFileSecurity.
12733 (GetFileSecurity_Proc, GetSecurityDescriptorOwner_Proc)
12734 (GetSecurityDescriptorGroup_Proc, IsValidSid_Proc): New typedefs.
12735 (get_file_security, get_security_descriptor_owner)
12736 (get_security_descriptor_group, is_valid_sid)
12737 (get_file_security_desc, get_rid, get_name_and_id)
12738 (get_file_owner_and_group): New functions.
12739 (stat): Use get_file_security_desc and get_file_owner_and_group to
12740 report the owner and primary group of each file. Don't ignore the
12741 high 32 bits of file's size, now that st_size is 64-bit wide.
12742 Fix test when to get true file attributes.
12743 (init_user_info): Use get_rid instead of equivalent inline code.
12744 (fstat): Don't ignore the high 32 bits of file's size.
12745
127462008-05-09 Chong Yidong <cyd@stupidchicken.com>
12747
12748 * image.c (png_load): Use correct bit-depth for setting background
12749 color.
12750
127512008-05-08 Eli Zaretskii <eliz@gnu.org>
12752
12753 * Makefile.in (lisp, shortlisp): Rename epa-file-hook.elc to
12754 epa-hook.elc.
12755
127562008-05-08 Juanma Barranquero <lekktu@gmail.com>
12757
12758 * font.c (Ffont_match_p): Don't use `iff' in docstring.
12759
127602008-05-07 Dan Nicolaescu <dann@ics.uci.edu>
12761
12762 * macfns.c (Fx_create_frame): Make a copy of frame parameters
12763 because the original parameters are in pure storage now.
12764 (mac_window): Remove unused params. Update callers.
12765
127662008-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
12767
12768 * lread.c (substitute_object_recurse): Use lower-level primitives.
12769 Don't signal errors when traversing sub-char-tables.
12770 Don't loop over all the possible characters when traversing char-tables.
12771
12772 * print.c (print_preprocess): Add sub-char-tables to the print-table,
12773 just like we do in print.c.
12774
127752008-05-05 Stefan Monnier <monnier@iro.umontreal.ca>
12776
12777 * minibuf.c (Ftry_completion): Remove code left over from when we used
12778 scmp instead of Fcompare_strings.
12779
127802008-05-04 Juanma Barranquero <lekktu@gmail.com>
12781
12782 * w32fns.c (Fw32_battery_status): Fix computation of %t (h:min) format.
12783
127842008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12785
12786 * image.c [USE_MAC_IMAGE_IO] (image_load_image_io):
12787 Create bitmap context in native byte order.
12788
12789 * macterm.c (XDrawLine)
12790 (XCreatePixmapFromBitmapData) [USE_MAC_IMAGE_IO]: Create bitmap
12791 context in native byte order.
12792
127932008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12794
12795 * config.in: Regenerate.
12796
12797 * image.c (PIX_MASK_DRAW, PIX_MASK_RETAIN) [USE_MAC_IMAGE_IO]:
12798 New definitions for Image I/O support.
12799 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
12800 (mac_create_cg_image_from_image, x_create_x_image_and_pixmap)
12801 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
12802 (mac_data_provider_release_data, image_load_image_io)
12803 [USE_MAC_IMAGE_IO]: New functions.
12804 (CGImageCreateWithPNGDataProviderProcType) [MAC_OSX]: Remove typedef.
12805 (MyCGImageCreateWithPNGDataProvider) [MAC_OSX]: Remove variable.
12806 (init_image_func_pointer) [MAC_OSX]: Remove function.
12807 (image_load_quartz2d) [MAC_OSX]: Check availability of
12808 CGImageCreateWithPNGDataProvider at compile time.
12809 Use lowercase `false' for boolean constant.
12810 (png_load, jpeg_load, tiff_load, gif_load) [USE_MAC_IMAGE_IO]:
12811 Use image_load_image_io.
12812 (png_load) [!USE_MAC_IMAGE_IO && MAC_OSX]:
12813 Don't check MyCGImageCreateWithPNGDataProvider.
12814 (init_image) [MAC_OSX && TARGET_API_MAC_CARBON]:
12815 Don't call init_image_func_pointer.
12816
12817 * macgui.h (Pixmap) [USE_MAC_IMAGE_IO]: New definition for Image I/O.
12818
12819 * macterm.c (mac_cg_color_space_rgb) [USE_CG_DRAWING]:
12820 Make variable non-static.
12821 (XDrawLine, XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
12822 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
12823
12824 * macterm.h (ARGB_TO_ULONG, ALPHA_FROM_ULONG): New macros.
12825 (RED_FROM_ULONG): Mask off higher bits.
12826 (mac_cg_color_space_rgb) [USE_MAC_IMAGE_IO]: New extern.
12827
12828 * s/darwin.h [HAVE_CARBON && HAVE_AVAILABILITYMACROS_H]:
12829 Include AvailabilityMacros.h.
12830 (USE_MAC_IMAGE_IO, LIBS_IMAGE) [HAVE_CARBON]: New defines.
12831 (LIBS_CARBON) [HAVE_CARBON]: Use LIBS_IMAGE.
12832
128332008-05-03 Stefan Monnier <monnier@iro.umontreal.ca>
12834
12835 * chartab.c (Fset_char_table_range): If range is t, really set all
12836 chars to that value.
12837
128382008-05-03 Eli Zaretskii <eliz@gnu.org>
12839
12840 * dired.c (Ffile_attributes): Don't allow the device number become
12841 negative.
12842
128432008-05-02 Daiki Ueno <ueno@unixuser.org>
12844
12845 * Makefile.in (lisp, shortlisp): Add epa-file-hook.elc.
12846
128472008-05-02 Juri Linkov <juri@jurta.org>
12848
12849 * minibuf.c (Fread_from_minibuffer, Fread_string, Fread_command)
12850 (Fread_variable, Fread_buffer, Fcompleting_read): Document the
12851 DEFAULT argument as a list of default values in docstrings.
12852
128532008-05-01 Chong Yidong <cyd@stupidchicken.com>
12854
12855 * puresize.h (BASE_PURESIZE): Increase to 1210000.
12856
128572008-05-01 Martin Rudalics <rudalics@gmx.at>
12858
12859 * dispnew.c (change_frame_size_1): Preserve small windows when
12860 shrinking frames by calling set_window_height|width with third
12861 arg 2.
12862
12863 * window.h (struct window): Replace field too_small_ok by field
12864 resize_proportionally.
12865
12866 * window.c (make_window): Initialize resize_proportionally.
12867 (enlarge_window): Temporarily set resize_proportionally to make
12868 sure that shrink_windows does scale the window proportionally.
12869 (shrink_windows): When window has resize_proportionally set try
12870 to shrink it proportionally by stealing from other windows.
12871 (struct saved_window, Fset_window_configuration)
12872 (compare_window_configurations): Handle resize_proportionally.
12873 (WINDOW_TOTAL_SIZE): New macro.
12874 (window_min_size, shrink_windows, size_window): Use it.
12875 (check_min_window_sizes): Remove. Invalid values of
12876 window-min-height|width are handled by window_min_size_2 now.
12877 (size_window, Fsplit_window, enlarge_window)
12878 (adjust_window_trailing_edge, grow_mini_window): Don't call
12879 check_min_window_sizes.
12880 (window_min_size_2, window_min_size_1, window_min_size):
12881 New argument safe_p for retrieving "safe" minimum sizes.
12882 (Fdisplay_buffer, Fsplit_window, enlarge_window)
12883 (adjust_window_trailing_edge, grow_mini_window):
12884 Adjust arguments of window_min_size... functions.
12885 (shrink_windows): Argument min_size removed. New argument
12886 safe_p allows shrinking windows to their safe minimum sizes.
12887 Calculate minimum size and decide whether a window shall be
12888 deleted for each window individually.
12889 (size_window): When nodelete_p equals 2, tell shrink_windows to
12890 delete windows only if their new minimum size is no more safe.
12891 (shrink_window_lowest_first): Call window_min_size_1 to make
12892 sure to preserve modeline of bottom-most window when resizing
12893 the minibuffer.
12894 (Fset_window_configuration, Fcurrent_window_configuration)
12895 (compare_window_configurations): Do not handle
12896 window-min-height|width any more.
12897 (syms_of_window): Clarify window-min-height|width doc-strings.
12898
128992008-04-30 Stefan Monnier <monnier@iro.umontreal.ca>
12900
12901 * dired.c (file_name_completion): Fix up the encoding/decoding issue
12902 some more. Copy some of the code from Ftry_completions.
12903 Remove special case code that dates back to initial revision when the
12904 slash was only added when necessary and that can't trigger nowadays.
12905
129062008-04-27 Kenichi Handa <handa@m17n.org>
12907
12908 * font.c (font_prop_validate): Signal `error' instead of `font'.
12909
129102008-04-29 Jason Rumney <jasonr@gnu.org>
12911
12912 * w32fns.c (Fw32_battery_status): New defun.
12913 (syms_of_w32fns): Defsubr it.
12914
129152008-04-28 Andreas Schwab <schwab@suse.de>
12916
12917 * dired.c (file_name_completion): Fix another mixing of encoded
12918 and decoded names.
12919
129202008-04-28 Juanma Barranquero <lekktu@gmail.com>
12921
12922 * w32fns.c (Fw32_define_rgb_color): Fix typo in docstring.
12923
129242008-04-27 Juanma Barranquero <lekktu@gmail.com>
12925
12926 * fringe.c (Fdefine_fringe_bitmap): Doc fix.
12927
129282008-04-27 Andreas Schwab <schwab@suse.de>
12929
12930 * dired.c (file_name_completion): Fix inappropriate mixing of
12931 encoded and decoded names.
12932
12933 * xterm.c (XTread_socket): Fix use of uninitialized variable.
12934
12935 * puresize.h (BASE_PURESIZE): Increase to 1200000.
12936
129372008-04-26 Eli Zaretskii <eliz@gnu.org>
12938
12939 * dired.c (Ffile_attributes) [WINDOWSNT]: Undo change from
12940 2008-03-31, it's not needed anymore with `struct stat' definition
12941 on nt/inc/sys/stat.h. Undo changes from 2007-01-12 and 2007-01-13
12942 for the same reasons.
12943
129442008-04-25 Dennis Gilmore <ausil@fedoraproject.org> (tiny change)
12945
12946 * m/sparc.h: Additional redefinitions for GNU/Linux.
12947
129482008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12949
12950 * macterm.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: New variable.
12951 (syms_of_macterm) [USE_MAC_TSM]: Defvar it.
12952 (Qmouse_drag_overlay) [MAC_OSX]: New variable.
12953 (syms_of_macterm) [MAC_OSX]: Intern and staticpro it.
12954 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
12955 (mac_ax_selected_text_range) [MAC_OSX]: New functions.
12956 (mac_ax_number_of_characters) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
12957 Likewise.
12958
12959 * mactoolbox.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: Add extern.
12960 (fast_find_position, x_y_to_hpos_vpos, mac_ax_selected_text_range)
12961 (mac_ax_number_of_characters): Add externs.
12962 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
12963 [USE_MAC_TSM]: Likewise.
12964 (mac_handle_text_input_event) [MAC_OSX]:
12965 Handle kEventTextInputOffsetToPos for no active input area case.
12966 Handle kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
12967 (mac_handle_document_access_event)
12968 [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: New function.
12969 (install_application_handler) [MAC_OSX]: Register handlers for
12970 kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
12971 (install_application_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
12972 Register mac_handle_document_access_event.
12973
12974 * xdisp.c (x_y_to_hpos_vpos, fast_find_position) [HAVE_CARBON]:
12975 Make functions non-static.
12976
129772008-04-23 Stefan Monnier <monnier@iro.umontreal.ca>
12978
12979 * fileio.c (Vread_file_name_function, Vread_file_name_predicate)
12980 (read_file_name_completion_ignore_case, insert_default_directory)
12981 (Qdefault_directory): Move to minibuffer.el.
12982 (Fread_file_name): Call the new `read-file-name' instead.
12983
129842008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12985
12986 * mac.c (create_apple_event) [TARGET_API_MAC_CARBON]:
12987 Make function non-static.
12988 (create_apple_event_from_event_ref) [TARGET_API_MAC_CARBON]:
12989 Remove function.
12990 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
12991 Move to mactoolbox.c.
12992 (mac_event_parameters_to_lisp) [TARGET_API_MAC_CARBON]: New function.
12993
12994 * macgui.h (CGFloat) [!CGFLOAT_DEFINED]: New typedef.
12995 (mac_rect_make): New macro.
12996
12997 * macterm.c (mac_draw_image_string_atsui) [MAC_OSX]: Use CGFloat
12998 instead of float.
12999 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
13000 (init_cg_color, mac_draw_line, mac_draw_cg_image, XSetForeground)
13001 (XSetBackground) [USE_CG_DRAWING]: Likewise.
13002 (mac_draw_image_string_atsui) [MAC_OSX]: Use mac_rect_make instead of
13003 CGRectMake.
13004 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
13005 (mac_erase_rectangle, mac_draw_cg_image, mac_fill_rectangle)
13006 (mac_set_clip_rectangles) [USE_CG_DRAWING]: Likewise.
13007 (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
13008 instead of WindowRef in argument type.
13009 (XCreatePixmap) [!MAC_OS8]: Don't call SetPortWindowPort.
13010 (mac_invert_rectangle): Use CGContextSetBlendMode if available.
13011 (mac_set_clip_rectangles, mac_reset_clip_rectangles): Take argument F
13012 instead of DISPLAY. All uses changed.
13013 (mac_handle_size_change): Don't call SET_FRAME_GARBAGED.
13014 (x_calc_absolute_position): Simplify so as not to use
13015 FRAME_PIXEL_WIDTH/FRAME_PIXEL_HEIGHT.
13016
13017 * macterm.h (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
13018 instead of WindowRef in argument type.
13019 (create_apple_event_from_event_ref, create_apple_event_from_drag_ref)
13020 [TARGET_API_MAC_CARBON]: Remove externs.
13021 (create_apple_event, mac_event_parameters_to_lisp)
13022 [TARGET_API_MAC_CARBON]: Add externs.
13023
13024 * mactoolbox.c (Vmac_ts_script_language_on_focus)
13025 (saved_ts_script_language_on_focus) [USE_MAC_TSM]: Remove externs.
13026 (XTread_socket) [USE_MAC_TOOLBAR]: Select window if its structure part
13027 is clicked.
13028 (x_activate_menubar): Remove extern for saved_menu_event_location.
13029 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
13030 Move from mac.c.
13031
130322008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13033
13034 * alloc.c [!SYSTEM_MALLOC && !SYNC_INPUT] (uninterrupt_malloc)
13035 [HAVE_GTK_AND_PTHREAD && !DOUG_LEA_MALLOC]: Don't use recursive mutex.
13036
130372008-04-23 Jason Rumney <jasonr@gnu.org>
13038
13039 * w32.c (stat): When Vw32_get_true_file_attributes is Qlocal, get
13040 attributes only for local files.
13041
13042 * w32proc.c (syms_of_ntproc): Change Vw32_get_true_file attributes
13043 default to Qlocal.
13044
130452008-04-22 Juri Linkov <juri@jurta.org>
13046
13047 * buffer.c (Fswitch_to_buffer): Change interactive spec to call
13048 read-buffer-to-switch instead of using the letter "B".
13049
130502008-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
13051
13052 * fileio.c (Qdefault_directory): New variable.
13053 (Fread_file_name): Use it to pass `dir' to the completion functions.
13054
130552008-04-20 Chong Yidong <cyd@stupidchicken.com>
13056
13057 * xdisp.c (pos_visible_p): Check if iterator stops on a display string.
13058
130592008-04-19 Stefan Monnier <monnier@iro.umontreal.ca>
13060
13061 * keyboard.c (Vpre_help_message): Remove.
13062 (show_help_echo): Remove default C code.
13063
13064 * dired.c (directory_files_internal, file_name_completion):
13065 Only call ENCODE_FILE if the string is indeed decoded.
13066
130672008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
13068
13069 * Makefile.in (TOOLKIT_DEFINES): Remove.
13070 (LIBW): Use a bit less #if, remove left over OPEN_LOOK stuff.
13071
130722008-04-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13073
13074 * Makefile.in (MAC_OBJ): Add mactoolbox.o.
13075 (mactoolbox.o): New target.
13076
13077 * mac.c [MAC_OSX] (select_and_poll_event, sys_select):
13078 Use mac_run_loop_run_once instead of CFRunLoopRunInMode.
13079
13080 * macfns.c (x_set_background_color, mac_window, x_create_tip_frame):
13081 Use mac_set_frame_window_background instead of XSetWindowBackground.
13082 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]:
13083 Use mac_is_window_toolbar_visible instead of IsWindowToolbarVisible.
13084 (x_set_name_internal) [TARGET_API_MAC_CARBON]: Use mac_set_window_title
13085 instead of SetWindowTitleWithCFString.
13086 (mac_update_proxy_icon) [TARGET_API_MAC_CARBON]: Remove BLOCK_INPUT.
13087 Move function to mactoolbox.c.
13088 (mac_update_title_bar) [TARGET_API_MAC_CARBON]:
13089 Use mac_set_window_modified instead of SetWindowModified.
13090 Add BLOCK_INPUT around mac_set_window_modified/mac_update_proxy_icon.
13091 (mac_window, x_create_tip_frame): Use mac_create_frame_window.
13092 (Fx_focus_frame): Use mac_front_non_floating_window instead of
13093 FrontNonFloatingWindow. Use mac_activate_window instead of
13094 ActivateWindow. Use mac_active_non_floating_window instead of
13095 ActiveNonFloatingWindow.
13096 (show_hourglass, hide_hourglass) [TARGET_API_MAC_CARBON]:
13097 Use mac_show_hourglass and mac_hide_hourglass.
13098 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use mac_get_global_mouse
13099 instead of GetGlobalMouse.
13100 (Fx_show_tip): Use mac_move_window/mac_size_window/mac_show_window
13101 instead of MoveWindow/SizeWindow/ShowWindow, respectively.
13102 Use mac_bring_window_to_front instead of BringToFront.
13103 (Qfile_name_history) [TARGET_API_MAC_CARBON]: Move extern to
13104 mactoolbox.c.
13105 (Fx_file_dialog) [TARGET_API_MAC_CARBON]: Move function body to
13106 mac_file_dialog in mactoolbox.c. Use mac_file_dialog.
13107 (mac_nav_event_callback) [TARGET_API_MAC_CARBON]: Move function to
13108 mactoolbox.c.
13109
13110 * macgui.h [!HAVE_CARBON]: Include Quickdraw.h instead of QuickDraw.h.
13111 (XtPointer): Move typedef from macmenu.c.
13112 (enum button_type): Move enum from macmenu.c.
13113 (widget_value): Move typedef from macmenu.c.
13114 (M_APPLE, I_ABOUT, EXTRA_STACK_ALLOC, ARGV_STRING_LIST_ID)
13115 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
13116 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
13117 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
13118 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
13119 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
13120 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
13121 (DIALOG_ICON_TOP_MARGIN): Move defines from macmenu.c.
13122 (Selection): Move typedef from macselect.c.
13123 (RAM_TOO_LARGE_ALERT_ID, ABOUT_ALERT_ID) [MAC_OS8]: Move defines from
13124 macterm.c.
13125 (mac_set_window_title, mac_set_window_modified, mac_is_window_visible)
13126 (mac_is_window_collapsed, mac_bring_window_to_front)
13127 (mac_send_window_behind, mac_hide_window, mac_show_window)
13128 (mac_collapse_window, mac_front_non_floating_window)
13129 (mac_active_non_floating_window, mac_activate_window)
13130 (mac_move_window_structure, mac_move_window, mac_size_window)
13131 (mac_get_global_mouse, mac_is_window_toolbar_visible): New defines.
13132
13133 * macmenu.c [!TARGET_API_MAC_CARBON]: Move includes to mactoolbox.c.
13134 (enum mac_menu_kind): Move enum to mactoolbox.c.
13135 (min_menu_id): Move variable to mactoolbox.c.
13136 (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]: Likewise.
13137 (DIALOG_WINDOW_RESOURCE): Move define to mactoolbox.c.
13138 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
13139 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
13140 [TARGET_API_MAC_CARBON]: Likewise.
13141 (XtPointer): Move typedef to macgui.h.
13142 (enum button_type): Move enum to macgui.h.
13143 (widget_value): Move typedef to macgui.h.
13144 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
13145 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
13146 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
13147 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
13148 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
13149 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
13150 (DIALOG_ICON_TOP_MARGIN): Move defines to macgui.h.
13151 (popup_activated_flag): Make variable non-static.
13152 (x_activate_menubar, install_menu_quit_handler, pop_down_menu)
13153 (add_menu_item, fill_menu, dispose_menus):
13154 Move functions to mactoolbox.c.
13155 (restore_show_help_function, menu_target_item_handler)
13156 (install_menu_target_item_handler, mac_handle_dialog_event)
13157 (install_dialog_event_handler, pop_down_dialog, create_and_show_dialog)
13158 [TARGET_API_MAC_CARBON]: Likewise.
13159 (menu_quit_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: Likewise.
13160 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
13161 (find_and_call_menu_selection, name_is_separator): Make function
13162 non-static.
13163 (Vshow_help_function, timer_check) [TARGET_API_MAC_CARBON]: Move extern
13164 to mactoolbox.c.
13165 (set_frame_menubar): Don't call install_menu_quit_handler.
13166 (menu_item_selection): New variable.
13167 (mac_menu_show): Use create_and_show_popup_menu.
13168 (create_and_show_dialog) [TARGET_API_MAC_CARBON]: Don't return
13169 selection but set variable menu_item_selection. All uses changed.
13170 (mac_fill_menubar): Rename from fill_menubar. All uses changed.
13171 Call install_menu_quit_handler. Move to mactoolbox.c.
13172
13173 * macselect.c [!TARGET_API_MAC_CARBON]: Don't include Scrap.h.
13174 (Selection): Move typedef to macgui.h.
13175 (Vselection_converter_alist, Qmac_scrap_name, Qmac_ostype)
13176 (Vmac_apple_event_map, Qmac_apple_event_class, Qmac_apple_event_id):
13177 Make variables non-static.
13178 (Vmac_dnd_known_types) [TARGET_API_MAC_CARBON]: Likewise.
13179 (mac_handle_apple_event, cleanup_all_suspended_apple_events):
13180 Make functions non-static.
13181 (Vmac_service_selection) [MAC_OSX]: Likewise.
13182 (mac_get_selection_from_symbol, get_flavor_type_from_symbol)
13183 (mac_valid_selection_target_p, mac_clear_selection)
13184 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
13185 (mac_put_selection_value, mac_selection_has_target_p)
13186 (mac_get_selection_value, mac_get_selection_target_list)
13187 (init_apple_event_handler, install_drag_handler, remove_drag_handler):
13188 Move functions to mactoolbox.c.
13189 (mac_do_track_drag, mac_do_receive_drag) [TARGET_API_MAC_CARBON]:
13190 Likewise.
13191 (copy_scrap_flavor_data, mac_handle_service_event)
13192 (install_service_handler) [MAC_OSX]: Likewise.
13193 (syms_of_macselect) <Vmac_dnd_known_types>:
13194 Use mac_dnd_default_known_types.
13195
13196 * macterm.h (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y):
13197 Move to mactoolbox.c.
13198 (HOURGLASS_WIDTH, HOURGLASS_HEIGHT): Change to 15.
13199 (Fx_selection_owner_p): Add EXFUN.
13200 (install_window_handler, remove_window_handler, XSetWindowBackground):
13201 Remove externs.
13202 (do_apple_menu) [!TARGET_API_MAC_CARBON]: Likewise.
13203 (mac_prepare_for_quickdraw) [USE_CG_DRAWING]: Likewise.
13204 (x_raise_frame, x_lower_frame, mac_alert_sound_play)
13205 (install_application_handler, mac_get_frame_bounds, mac_get_frame_mouse)
13206 (mac_convert_frame_point_to_global, mac_set_frame_window_background)
13207 (mac_update_begin mac_update_end, mac_frame_up_to_date, x_flush)
13208 (mac_create_frame_window, mac_dispose_frame_window, mac_begin_clip)
13209 (mac_end_clip, mac_create_scroll_bar, mac_dispose_scroll_bar)
13210 (mac_set_scroll_bar_bounds, mac_redraw_scroll_bar, mac_fill_menubar)
13211 (create_and_show_popup_menu, mac_get_selection_from_symbol)
13212 (mac_valid_selection_target_p, mac_clear_selection)
13213 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
13214 (mac_put_selection_value, mac_selection_has_target_p)
13215 (mac_get_selection_value, mac_get_selection_target_list): Add externs.
13216 (mac_update_proxy_icon, mac_show_hourglass, mac_hide_hourglass)
13217 (mac_reposition_hourglass, mac_file_dialog, create_and_show_dialog)
13218 (mac_dnd_default_known_types) [TARGET_API_MAC_CARBON]: Likewise.
13219 (mac_run_loop_run_once) [MAC_OSX]: Likewise.
13220 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
13221 (mac_begin_cg_clip, mac_end_cg_clip) [USE_CG_DRAWING]: Likewise.
13222 (x_set_toolkit_scroll_bar_thumb) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
13223 (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
13224
13225 * mactoolbox.c: New file.
13226
132272008-04-18 Jason Rumney <jasonr@gnu.org>
13228
13229 * dired.c (Ffile_attributes) [WINDOWSNT]: Cast uid and gid to unsigned.
13230
132312008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
13232
13233 * character.c (Fmultibyte_char_to_unibyte):
13234 Return latin1 chars unchanged.
13235
13236 * fileio.c (Fexpand_file_name): Refine last fix so `nm' is only
13237 relocated if it points to `name'.
13238
132392008-04-17 Kenichi Handa <handa@m17n.org>
13240
13241 * data.c (Faset): Allow setting a multibyte character in an
13242 ASCII-only unibyte string.
13243
13244 * lisp.h (STRING_SET_MULTIBYTE): New macro.
13245
132462008-04-16 Stefan Monnier <monnier@iro.umontreal.ca>
13247
13248 * Makefile.in: Don't use HAVE_GTK and don't -DUSE_GTK since it's now
13249 done in config.h.
13250
132512008-04-16 Juanma Barranquero <lekktu@gmail.com>
13252
13253 * character.c (Fchar_bytes, Fchar_width, Fstring_width)
13254 (Fchar_direction): Add usage in the docstring.
13255
132562008-04-15 Chong Yidong <cyd@stupidchicken.com>
13257
13258 * keyboard.c (read_key_sequence): Remove always-true checks.
13259
132602008-04-14 Jason Rumney <jasonr@gnu.org>
13261
13262 * w32font.c (w32font_open_internal): Set max_bounds.descent in
13263 compatibility struct, for better underline positioning.
13264
132652008-04-13 David Hansen <david.hansen@gmx.net>
13266
13267 * dbusbind.c (dbus-get-unique-name): Remove extra copying of name
13268 string.
13269
132702008-04-12 Dan Nicolaescu <dann@ics.uci.edu>
13271
13272 * m/hp800.h (XUINT, XSET): Remove.
13273
132742008-04-12 Juanma Barranquero <lekktu@gmail.com>
13275
13276 * fileio.c (Fexpand_file_name): Add declaration for `p' missing in
13277 previous change.
13278
132792008-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
13280
13281 * fileio.c (Fexpand_file_name): Tighten the scope of `p' and `o' vars.
13282 Relocate `nm' after calling DECODE_FILE, in case the GC was run.
13283
132842008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
13285
13286 * keymap.h (map_keymap_canonical): Declare.
13287 * xmenu.c (single_keymap_panes): Use it.
13288
132892008-04-11 Glenn Morris <rgm@gnu.org>
13290
13291 * eval.c (Fdefvaralias): If the alias is bound and the target is not,
13292 set the target's value to that of the alias.
13293
132942008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
13295
13296 * term.c (set_tty_color_mode): Left over typo.
13297
132982008-04-10 Michael Albinus <michael.albinus@gmx.de>
13299
13300 * fileio.c (Fmake_symbolic_link): Surround code by #ifdef S_IFLNK
13301 only after check for file name handler functions. Signal, when
13302 native functionality is not supported.
13303 (syms_of_fileio): Declare it unconditionally.
13304
133052008-04-10 Jason Rumney <jasonr@gnu.org>
13306
13307 * w32menu.c (is_simple_dialog, simple_dialog_show): New functions.
13308 (Fx_popup_dialog): Handle simple yes/no questions as dialogs.
13309
13310 * w32.c (logon_network_drive): Also logon to remote drives that
13311 are mapped to drive letters.
13312
133132008-04-10 Glenn Morris <rgm@gnu.org>
13314
13315 * xdisp.c (truncate-partial-width-windows): Doc fix.
13316
133172008-04-10 Stefan Monnier <monnier@iro.umontreal.ca>
13318
13319 * fileio.c (read_file_name_cleanup, Fread_file_name_internal):
13320 Move functions to minibuffer.el.
13321 (syms_of_fileio): Don't declare them.
13322
133232008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
13324
13325 * minibuf.c (Vcompletion_auto_help): Move to minibuffer.el.
13326 (syms_of_minibuf): Remove its initialization.
13327
13328 * minibuf.c (temp_echo_area_glyphs): Remove unused function.
13329
133302008-04-09 Juanma Barranquero <lekktu@gmail.com>
13331
13332 * editfns.c (Ffield_string_no_properties): Fix typo in docstring.
13333
133342008-04-09 Jason Rumney <jasonr@gnu.org>
13335
13336 * makefile.w32-in (distclean): Delete makefile too.
13337 (maintainer-clean): New target.
13338
13339 * xdisp.c (redisplay_internal) [!WINDOWSNT]: Conditionalize last change.
13340
13341 * w32term.c (w32_compute_glyph_string_overhangs): Compute overhangs
13342 for new font backend and composite cases.
13343
133442008-04-09 Jan Djärv <jan.h.d@swipnet.se>
13345
13346 * atimer.c (alarm_signal_handler): Call run_timers if not SYNC_INPUT.
13347 Most of the code moved to run_timers.
13348 (do_pending_atimers): Call run_timers.
13349 (run_timers): New function.
13350
13351 * sysdep.c (emacs_write): If SYNC_INPUT and pending_atimers,
13352 run atimers.
13353
13354 * process.c (wait_reading_process_output): The same as above.
13355
133562008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
13357
13358 * minibuf.c (last_exact_completion): Remove variable.
13359 (Fdelete_minibuffer_contents, do_completion, Fminibuffer_complete)
13360 (complete_and_exit_1, complete_and_exit_2)
13361 (Fminibuffer_complete_and_exit, Fminibuffer_complete_word)
13362 (Fdisplay_completion_list, display_completion_list_1)
13363 (Fminibuffer_completion_help, Fself_insert_and_exit)
13364 (Fexit_minibuffer, Fminibuffer_message): Move functions to
13365 minibuffer.el.
13366 (syms_of_minibuf): Remove corresponding initializations.
13367
13368 * keyboard.c (Qdeactivate_mark): New var.
13369 (command_loop_1): Use it to call `deactivate-mark'.
13370 (syms_of_keyboard): Initialize it.
13371
13372 * xdisp.c (redisplay_internal): Reset tty's color_mode when switching
13373 to another frame.
13374 * frame.c (do_switch_frame): Refine the top_frame/async_visible code.
13375 Don't call set_tty_color_mode.
13376 (store_frame_param): Reset previous_frame rather than call
13377 set_tty_color_mode.
13378 * term.c (set_tty_color_mode): Rewrite.
13379 * dispextern.h (set_tty_color_mode): New type.
13380 * termchar.h (struct tty_display_info): Add `previous_color_mode'.
13381
133822008-04-08 Stefan Monnier <monnier@iro.umontreal.ca>
13383
13384 * keymap.c (access_keymap): Remove the value 2 for t_ok which was used
13385 for generic chars, which do not exist any more in emacs-unicode.
13386
133872008-04-08 Michael Albinus <michael.albinus@gmx.de>
13388
13389 * coding.c (detect_coding_emacs_mule)
13390 (Ffind_operation_coding_system): Fix typo.
13391
133922008-04-08 Jason Rumney <jasonr@gnu.org>
13393
13394 * w32uniscribe.c (SNAME): Extract only symbol name.
13395
13396 * w32font.h (struct w32_metric_cache): New struct.
13397 (w32font_info): Use it.
13398 (W32METRIC_NO_ATTEMPT, W32METRIC_SUCCESS, W32METRIC_FAIL)
13399 (CACHE_BLOCKSIZE): New constants.
13400
13401 * w32font.c (Qja, Qko, Qzh): New symbols.
13402 (syms_of_w32font): Initialise them.
13403 (font_matches_spec): Use them to filter by language.
13404 (recompute_cached_metrics): Remove function.
13405 (compute_metrics, clear_cached_metrics): New functions.
13406 (w32font_encode_char): Use them to manage metric cache.
13407 (w32font_text_extents): Cache metrics for all glyphs on demand.
13408 Delay converting glyph indices to WORD until needed.
13409 (w32font_open_internal): Initialize metric cache to empty.
13410 (registry_to_w32_charset): Charset should always be a symbol.
13411 (fill_in_logfont, list_all_matching_fonts): Family should
13412 always be a symbol.
13413
134142008-04-06 Jason Rumney <jasonr@gnu.org>
13415
13416 * w32uniscribe.c (uniscribe_shape): Increase items buffer size.
13417 Give up if glyph indices not supported. Use uniscribe obtained
13418 ABC widths for individual metrics. Map glyph clusters back to
13419 characters using fClusterStart flag. Return number of glyphs
13420 produced, not chars processed.
13421 (uniscribe_shape): Map char at FROM to current glyph.
13422
134232008-04-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13424
13425 * macmenu.c (fill_menu) [TARGET_API_MAC_CARBON]:
13426 Use SetMenuItemHierarchicalMenu.
13427
134282008-04-05 Jason Rumney <jasonr@gnu.org>
13429
13430 * image.c (pbm_load): Allow color values up to 65535.
13431 Throw an error if max_color_idx is outside the supported range.
13432 Report an error when image size is invalid.
13433 Read two bytes at a time when raw images have max_color_idx above 255.
13434
134352008-04-05 Eli Zaretskii <eliz@gnu.org>
13436
13437 * w32.c (readdir): If FindFirstFile/FindNextFile return in
13438 cFileName a file name that includes `?' characters, use the 8+3
13439 alias in cAlternateFileName instead.
13440
134412008-04-05 Kenichi Handa <handa@ni.aist.go.jp>
13442
13443 * ccl.c (ccl_driver): If ccl->quit_silently is nonzero, don't
13444 append "CCL: Quitted" when the CCL program is quitted.
13445 (setup_ccl_program): Initialize ccl->quit_silently to zero.
13446
13447 * ccl.h (struct ccl_program): New member quit_silently.
13448
134492008-04-05 Chong Yidong <cyd@stupidchicken.com>
13450
13451 * search.c (compile_pattern_1): Treat non-nil and non-string of
13452 search-spaces-regexp as nil.
13453
13454 * minibuf.c (Fassoc_string): Tweak docstring.
13455
134562008-04-05 Eli Zaretskii <eliz@gnu.org>
13457
13458 * dired.c (Ffile_attributes): Support inode numbers wider than 32
13459 bits. Remove ugly WINDOWSNT-specific kludge introduced on
13460 2008-03-14 to force inode be positive.
13461
13462 * w32.c (sys_chown, stat, fstat): Use S_* constants instead of
13463 _S_* ones, since we now use our own sys/stat.h.
13464 (stat, fstat): Don't mangle the inode number.
13465 (init_user_info): Don't restrict UID and GID to 0-60000 range.
13466
134672008-04-04 Stefan Monnier <monnier@iro.umontreal.ca>
13468
13469 * frame.h (struct frame): Give one more bit to `visible' since we use
13470 values larger than 1 to indicate obscured frames on ttys.
13471
13472 * keymap.c (Qkeymap_canonicalize): New var.
13473 (Fmap_keymap_internal): New fun.
13474 (describe_map): Use keymap-canonicalize.
13475
13476 * undo.c (last_boundary_buffer, last_boundary_position): New vars.
13477 (Fundo_boundary): Set them.
13478 (syms_of_undo): Initialize them.
13479 (record_point): Use them instead of last_point_position*.
13480 (last_undo_buffer): Change type.
13481
134822008-04-04 Jason Rumney <jasonr@gnu.org>
13483
13484 * w32font.c (w32font_text_extents): Use font's ascent and descent.
13485 (recompute_cached_metrics): Don't set ascent and descent per char.
13486
13487 * w32uniscribe.c (uniscribe_check_otf): Fix last change.
13488 (uniscribe_check_otf): Add GC protection before consing.
13489 Rearrange loop for counting features.
13490
134912008-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
13492
13493 * insdel.c (insert_from_buffer_1): Don't compare bytes in destination
13494 buffer with byte-size of source buffer.
13495
134962008-04-03 Chong Yidong <cyd@stupidchicken.com>
13497
13498 * callint.c (Fcall_interactively): Handle temporary region even
13499 when shift-select-mode is off.
13500
135012008-04-03 Jason Rumney <jasonr@gnu.org>
13502
13503 * w32uniscribe.c (uniscribe_check_otf): Sanity check otf_spec.
13504
135052008-04-03 Kenichi Handa <handa@m17n.org>
13506
13507 * coding.c (CATEGORY_MASK_ANY): Add CATEGORY_MASK_UTF_16_AUTO.
13508 (CATEGORY_MASK_UTF_16): Likewise.
13509 (detect_coding_utf_16): Add heuristics to reject utf-16 for a
13510 binary file.
13511 (detect_coding): Add null-byte detection for a binary file.
13512 (detect_coding_system): Likewise.
13513
135142008-04-03 Jason Rumney <jasonr@gnu.org>
13515
13516 * w32uniscribe.c: New file.
13517
13518 * font.h (uniscribe_font_driver) [WINDOWSNT]: Declare for w32fns.c.
13519
13520 * w32font.h (uniscribe_check_otf): Declare for w32font.c.
13521
13522 * w32font.c (Qbalinese, Qbuginese, Qbuhid, Qcuneiform, Qcypriot)
13523 (Qdeseret, Qglagolitic, Qgothic, Qhanunoo, Qkharoshthi)
13524 (Qlimbu, Qlinear_b, Qold_italic, Qold_persian, Qosmanya)
13525 (Qphags_pa, Qphoenician, Qshavian, Qsyloti_nagri)
13526 (Qtagalog, Qtagbanwa, Qtai_le, Qtifinagh, Qugaritic)
13527 (Qphonetic): New symbols.
13528 (syms_of_w32font): Initialize them.
13529 (font_supported_scripts): Use them.
13530 (w32font_list_family): List all charsets.
13531 (w32font_text_extents, recompute_cached_metrics): Fix metric
13532 calculations.
13533 (w32_enumfont_pattern_entity): Make full_type a DWORD.
13534 Give opentype fonts their own format.
13535 (font_matches_spec): New arguments backend and logfont.
13536 Handle :otf spec for uniscribe backend.
13537 (add_font_entity_to_list): Match truetype fonts in uniscribe backend.
13538 (fill_in_logfont): Use DEFAULT_CHARSET when charset not supplied.
13539
13540 * w32fns.c (Fx_create_frame): Conditionally register uniscribe
13541 font backend.
13542 (globals_of_w32fns): Initialize uniscribe font backend.
13543
13544 * makefile.w32-in (CONFIG_H): New variable. Use it to clean up
13545 dependencies.
13546 (w32uniscribe.$(O)): New file to build.
13547 (FONT_OBJ): Include w32uniscribe.$(O).
13548 (LIBS): Add uniscribe libraries.
13549
13550 * ftfont.c (ftfont_get_open_type_spec): Check spec->script, not val.
13551
135522008-04-02 Chong Yidong <cyd@stupidchicken.com>
13553
13554 * callint.c (Vshift_select_mode): New var.
13555 (Finteractive): Document new ^ spec.
13556 (Fcall_interactively): Call handle-shift-selection if the ^ spec
13557 is present.
13558
13559 * keyboard.c (Vthis_command_keys_shift_translated): New var.
13560 (command_loop_1): Avoid running the direct display versions of
13561 forward-char and backward-char if shift-selection may occur.
13562 (read_key_sequence): Set Vthis_command_keys_shift_translated if
13563 shift-translation takes place.
13564
13565 * buffer.c (Vtransient_mark_mode): Move docstring to simple.el to
13566 avoid clobbering by define-minor-mode.
13567
13568 * cmds.c (Fforward_char, Fbackward_char, Fforward_line)
13569 (Fbeginning_of_line, Fend_of_line): Add ^ interactive spec.
13570
13571 * syntax.c (Fforward_word): Add ^ interactive spec.
13572
13573 * window.c (Fscroll_up, Fscroll_down, Fscroll_left)
13574 (Fscroll_right): Add ^ interactive spec.
13575
135762008-04-01 Stefan Monnier <monnier@iro.umontreal.ca>
13577
13578 * xdisp.c (try_window_id): Don't forget to reset delta_bytes.
13579
13580 * casefiddle.c (casify_object): Fix up int/EMACS_INT mixup.
13581
13582 * charset.c (Funibyte_charset, Fset_unibyte_charset): Remove.
13583
135842008-03-31 Juri Linkov <juri@jurta.org>
13585
13586 * window.c (Fdisplay_buffer): Reinitialize `tem' to nil.
13587
135882008-03-30 Jan Djärv <jan.h.d@swipnet.se>
13589
13590 * gtkutil.c (xg_set_geometry): Fix indentation.
13591 (xg_resize_outer_widget): Remove.
13592 (x_wm_size_hint_off): Fix indentation.
13593 (xg_frame_set_char_size): Call flush_and_sync after
13594 gtk_window_resize.
13595 (x_wm_set_size_hint): Pass NULL as geometry window to
13596 gtk_window_set_geometry_hints due to Gtk+ bug nr 68668.
13597 Add menu bar and tool bar height to base height.
13598 (xg_update_frame_menubar, free_frame_menubar)
13599 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
13600 (update_frame_tool_bar, free_frame_tool_bar):
13601 Change xg_resize_outer_widget to xg_frame_set_char_size.
13602
136032008-03-30 Michael Albinus <michael.albinus@gmx.de>
13604
13605 * dbusbind.c (QCdbus_timeout): New D-Bus internal symbol.
13606 (Fdbus_call_method): New parameter TIMEOUT.
13607 (dbus-send-signal): Optimize UNGCPRO call.
13608
136092008-03-29 Juri Linkov <juri@jurta.org>
13610
13611 * window.c (Fdisplay_buffer): Move call to
13612 Vsplit_window_preferred_function out of conditions that check
13613 if window is eligible for vertical splitting.
13614 When Vsplit_window_preferred_function is non-nil, call it and use
13615 its non-nil return value as window. Otherwise, continue doing
13616 vertical splitting using Fsplit_window with arg horflag=nil.
13617 (syms_of_window) <Vsplit_window_preferred_function>: Change the
13618 default value from `split-window' to nil.
13619
136202008-03-29 Juri Linkov <juri@jurta.org>
13621
13622 * callint.c (Fcall_interactively): Revert 2008-03-16 change
13623 for interactive code letters 'b' and 'B'.
13624
136252008-03-29 Eli Zaretskii <eliz@gnu.org>
13626
13627 * fileio.c (Fexpand_file_name): Convert the value of $HOME to a
13628 multibyte string.
13629
136302008-03-29 Stefan Monnier <monnier@iro.umontreal.ca>
13631
13632 * keyboard.c (pending_funcalls): New var.
13633 (timer_check): Run it.
13634 (syms_of_keyboard): Initialize it.
13635 * terminal.c (Qrun_hook_with_args, Qdelete_terminal_functions)
13636 (Vdelete_terminal_functions): New vars.
13637 (syms_of_terminal): Initialize them.
13638 (Fdelete_terminal): Run delete-terminal-functions.
13639 * xdisp.c (safe_eval): Rewrite.
13640 (safe_call2): New fun.
13641 * frame.c (Qdelete_frame_functions): New var.
13642 (syms_of_frame): Initialize it.
13643 (Fdelete_frame): Use it and use safe_call2 and pending_funcalls.
13644 * lisp.h (safe_call2, pending_funcalls): Declare.
13645
136462008-03-28 Andreas Schwab <schwab@suse.de>
13647
13648 * indent.c (Fmove_to_column): Move declaration before statements.
13649
136502008-03-27 Stefan Monnier <monnier@iro.umontreal.ca>
13651
13652 * frame.h (enum fullscreen_type): Give it a name. Move it before use.
13653 (struct frame): Use bit fields for boolean vars.
13654
13655 * process.c (server_accept_connection): Simplify naming.
13656 (emacs_get_tty_pgrp): Use SDATA.
13657
13658 * coding.c (decode_coding_object): Fix last change.
13659
136602008-03-27 Jason Rumney <jasonr@gnu.org>
13661
13662 * w32fns.c (start_hourglass): Suppress hourglass on tty frames.
13663
136642008-03-27 Kenichi Handa <handa@ni.aist.go.jp>
13665
13666 * charset.c (Fdefine_charset_internal): Change the way of
13667 registering charsets in Vcharset_order_list.
13668 (syms_of_charset): Make the charset `eight-bit' supplementary.
13669
136702008-03-26 Alexandre Oliva <aoliva@redhat.com> (tiny change)
13671
13672 * regex.c (EXTEND_BUFFER): Change order of pointer addition
13673 operations, to avoid having the difference between pointers
13674 overflow.
13675
136762008-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
13677
13678 * indent.c (check_display_width): New fun.
13679 (scan_for_column): Use it.
13680
13681 * data.c (syms_of_data): Mark most-positive-fixnum and
13682 most-negative-fixnum as constants.
13683
13684 * xdisp.c (redisplay_internal): Reset selected_frame earlier.
13685
13686 * indent.c (scan_for_column): Extract from current_column_1.
13687 Merge with the same code from Fmove_to_column.
13688 (current_column_1, Fmove_to_column): Use it.
13689
136902008-03-25 Stefan Monnier <monnier@iro.umontreal.ca>
13691
13692 * keymap.c (map_keymap_internal): New fun.
13693 (map_keymap): Use it.
13694 (Fmap_keymap_internal): New fun.
13695 (Fmap_keymap): Remove left-out test from before make_save_value.
13696
13697 * keymap.c (Fmap_keymap): Use `map-keymap-sorted.
13698
13699 * frame.c (Fmodify_frame_parameters, x_set_frame_parameters):
13700 Use XCAR/XCDR.
13701
13702 * process.h (struct Lisp_Process): Remove filter_multibyte.
13703 * process.c (QCfilter_multibyte): Remove.
13704 (setup_process_coding_systems): Don't use filter_multibyte.
13705 (Fstart_process, Fmake_network_process): Don't set filter_multibyte.
13706 (read_process_output): Don't adjust multibyteness to filter_multibyte.
13707 (Fset_process_filter_multibyte): Change the coding-system to
13708 approximate the previous behavior.
13709 (Fprocess_filter_multibyte_p): Get the multibyteness straight from the
13710 coding-system.
13711
13712 * coding.c (decode_coding_object): When not decoding into a buffer,
13713 obey the coding system's preference of (uni|multi)byte.
13714
137152008-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
13716
13717 * casefiddle.c (casify_object): Avoid pathological N^2 worst case if
13718 every char is changed and has a different byte-length.
13719 (Fupcase_word, Fdowncase_word, Fcapitalize_word, operate_on_word):
13720 Fix int -> EMACS_INT.
13721
137222008-03-23 David Hansen <david.hansen@gmx.net>
13723
13724 * dbusbind.c (xd_read_message): Remove extra copying of message
13725 strings. Check for NULL `interface' or `member'.
13726
137272008-03-22 Eli Zaretskii <eliz@gnu.org>
13728
13729 * w32.c (readdir): If FindFirstFile/FindNextFile return in
13730 cFileName a file name that includes `?' characters, use the 8+3
13731 alias in cAlternateFileName instead.
13732
137332008-03-21 Stefan Monnier <monnier@iro.umontreal.ca>
13734
13735 * buffer.c (enlarge_buffer_text): Fix int -> EMACS_INT.
13736
137372008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
13738
13739 * intervals.c (temp_set_point, temp_set_point_both): Use EMACS_INT.
13740 (set_point, set_point_both): Use EMACS_INT. Remove `buffer' arg,
13741 work on current_buffer only instead (that was already the case
13742 for some of the code anyway).
13743 * buffer.h (set_point, set_point_both): Remove buffer arg, use long int.
13744 (temp_set_point, temp_set_point_both): Use EMACS_INT.
13745 (SET_PT, SET_PT_BOTH): Adjust.
13746 * intervals.h (set_point, temp_set_point, set_point_both)
13747 (temp_set_point_both): Remove redundant declarations.
13748
137492008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
13750
13751 * fileio.c (Finsert_file_contents):
13752 * lread.c (Feval_buffer): Use BUF_TEMP_SET_PT.
13753 * buffer.h (BUF_SET_PT): Remove. set_point_both doesn't work right
13754 when buffer != current_buffer anyway.
13755
137562008-03-20 Andreas Schwab <schwab@suse.de>
13757
13758 * callint.c (Fcall_interactively) [case 'B']: Use other-buffer
13759 as default.
13760
137612008-03-19 Jason Rumney <jasonr@gnu.org>
13762
13763 * w32fns.c (hourglass_timer, hourglass_hwnd): New variables.
13764 (syms_of_w32fns): Initialize them.
13765 (HOURGLASS_ID): New constant.
13766 (x_window_to_frame): Don't check hourglass_window.
13767 (w32_wnd_proc) <WM_TIMER>: Handle hourglass_timer.
13768 (w32_wnd_proc) <WM_EXITMENULOOP>: Set pending hourglass cursor.
13769 (w32_wnd_proc) <WM_SETCURSOR>: Set the hourglass or current cursor.
13770 (w32_wnd_proc) <WM_EMACS_SETCURSOR>: Set frame's current_cursor.
13771 Only change the cursor if hourglass is not active.
13772 (Fx_create_frame): Initialize frame's current_cursor.
13773 (hourglass_atimer): Remove.
13774 (hourglass_started): New function.
13775 (start_hourglass, cancel_hourglass, hide_hourglass): Adapt to w32.
13776 (show_hourglass): Adapt to w32, changing argument to frame.
13777
13778 * w32term.h (struct w32_output): Remove hourglass_window.
13779 Add current_cursor.
13780
13781 * eval.c (call_debugger, Fsignal):
13782 * keyboard.c (recursive_edit_1, cmd_error, Ftop_level)
13783 (command_loop_1, Fread_key_sequence, Fread_key_sequence_vector)
13784 (Fexecute_extended_command, cancel_hourglass_unwind):
13785 * minibuf.c (read_minibuf):
13786 * fns.c (Fy_or_n_p): Enable hourglass when HAVE_WINDOW_SYSTEM.
13787
137882008-03-19 Stefan Monnier <monnier@iro.umontreal.ca>
13789
13790 * window.c (run_funs): New fun.
13791 (run_window_configuration_change_hook): Use it to run the buffer-local
13792 and the global part of the hook.
13793
13794 * xdisp.c (format_mode_line_unwind_data): Add window argument.
13795 (unwind_format_mode_line): Restore selected window.
13796 (x_consider_frame_title, Fformat_mode_line): Set selected window.
13797
137982008-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
13799
13800 * editfns.c (Fchar_equal): Check they are valid characters.
13801
13802 * buffer.h (Fbuffer_list): Declare (for use in callint.c).
13803
138042008-03-17 Andreas Schwab <schwab@suse.de>
13805
13806 * regex.c (re_match_2_internal): Properly match raw 8-bit bytes
13807 against a charset.
13808
13809 * lisp.h (Fbuffer_list): Declare.
13810
138112008-03-17 Jan Djärv <jan.h.d@swipnet.se>
d6c952f8 13812
aac0c6e3
MR
13813 * gtkutil.c (free_frame_tool_bar): Only call gtk_container_remove if
13814 handlebox_widget is != 0.
13815
138162008-03-16 Juri Linkov <juri@jurta.org>
13817
13818 * callint.c (Fcall_interactively): For interactive code letters
13819 'b' and 'B' put the buffer list into the list of default "future"
13820 values of the minibuffer.
13821
138222008-03-16 Andreas Schwab <schwab@suse.de>
13823
13824 * keyboard.c (read_key_sequence): Fix downcasing of letters with
13825 modifiers.
13826
13827 * regex.c (re_match_2_internal): Correct matching of a charset
13828 against latin-1 characters.
13829
138302008-03-16 Kenichi Handa <handa@m17n.org>
13831
13832 * coding.c (CHAR_STRING_ADVANCE_NO_UNIFY)
13833 (STRING_CHAR_ADVANCE_NO_UNIFY): New macros.
13834 (coding_alloc_by_making_gap): Fix the way to preserve data in the gap.
13835 (alloc_destination): Fix the 2nd arg to coding_alloc_by_making_gap.
13836 (encode_coding_utf_8): Use CHAR_STRING_ADVANCE_NO_UNIFY instead of
13837 CHAR_STRING_ADVANCE.
13838 (produce_chars): Fix for the case that the source and the
13839 destination are the same buffer. Use CHAR_STRING_ADVANCE_NO_UNIFY
13840 instead of CHAR_STRING_ADVANCE.
13841 (consume_chars): Use STRING_CHAR_ADVANCE_NO_UNIFY instead of
13842 STRING_CHAR_ADVANCE.
13843
138442008-03-15 Andreas Schwab <schwab@suse.de>
13845
13846 * regex.c (re_match_2_internal): Correct matching of eight bit
13847 characters in unibyte strings.
13848
138492008-03-15 Martin Rudalics <rudalics@gmx.at>
13850
13851 * buffer.c (overlays_in, Foverlays_in): Include empty overlays
13852 at end of range when it coincides with the end of the buffer.
13853
138542008-03-14 Eli Zaretskii <eliz@gnu.org>
13855
13856 * dired.c (Ffile_attributes) [WINDOWSNT]: Force inode be positive.
13857
13858 * w32fns.c (globals_of_w32fns, Fx_create_frame): Fix last change.
13859
138602008-03-14 Jason Rumney <jasonr@gnu.org>
13861
13862 * editfns.c (initial_tz): New variable.
13863 (syms_of_editfns): Initialize it.
13864 (Fset_time_zone_rule): Set it when first called.
13865 Use it when TZSTRING is nil.
13866
13867 * w32fns.c (MONITOR_DEFAULT_TO_NEAREST, struct MONITOR_INFO)
13868 (MonitorFromPoint_Proc, GetMonitorInfo_Proc): New definitions.
13869 (monitor_from_point_fn, get_monitor_info_fn): New globals.
13870 (globals_of_w32fns): Initialize them.
13871 (compute_tip_xy): Use them to position tooltips.
13872
138732008-03-14 Glenn Morris <rgm@gnu.org>
13874
13875 * emacs.c (main): Revert previous change.
13876 (standard_args): Revert -internal-script back to -scriptload,
13877 and remove the long-option form.
13878
138792008-03-13 Glenn Morris <rgm@gnu.org>
13880
13881 * emacs.c (main, standard_args): Rename -scriptload to -internal-script.
13882 Remove option -enable-font-backend.
13883
138842008-03-12 Stefan Monnier <monnier@iro.umontreal.ca>
13885
13886 * buffer.c (Fswitch_to_buffer): Fall back on pop-to-buffer.
13887
138882008-03-11 Jan Djärv <jan.h.d@swipnet.se>
13889
13890 * xterm.c (x_connection_closed): For GTK: If this is the last
13891 terminal just exit without closing the display.
13892
138932008-03-11 Jason Rumney <jasonr@gnu.org>
13894
13895 * w32font.c (w32font_full_name): Use floor to round.
13896
f0131492 138972008-03-10 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
aac0c6e3
MR
13898
13899 * sound.c (alsa_configure): Declare vol at beginning of block.
13900
13901 * fontset.c (Ffontset_info): Remove extra semicolon.
13902
139032008-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
13904
13905 * fileio.c (Fsubstitute_in_file_name): Fix up computation of maximum
13906 size of resulting string.
13907
139082008-03-10 Jason Rumney <jasonr@gnu.org>
13909
13910 * dispnew.c (adjust_glyph_matrix): Initialize window_height.
13911
139122008-03-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13913
13914 * xdisp.c (handle_single_display_spec): Undo 2007-10-16 changes.
13915 Don't pretend as if characters with display property haven't been
13916 consumed for string-replacing-string case.
13917
139182008-03-08 Kim F. Storm <storm@cua.dk>
13919
13920 * xdisp.c (GET_NEXT_DISPLAY_ELEMENT): New macro.
13921 (get_next_display_element, next_element_from_string)
13922 (next_element_from_ellipsis, next_element_from_buffer): Use it.
13923
139242008-03-08 Andreas Schwab <schwab@suse.de>
13925
13926 * process.h (struct Lisp_Process): Declare bit fields as unsigned.
13927
139282008-03-06 Jason Rumney <jasonr@gnu.org>
13929
13930 * w32font.c (w32_registry): Take font_type argument. Use ANSI
13931 when charset not specified. Only translate ANSI to unicode when
13932 font_type is truetype.
13933 (w32font_coverage_ok): New function.
13934 (add_font_entity_to_list): Use it to filter unsuitable fonts.
13935
139362008-03-05 Kenichi Handa <handa@ni.aist.go.jp>
13937
13938 * lread.c (Fread_char): Resolve modifiers.
13939 (Fread_char_exclusive): Likewise.
13940
13941 * character.c (char_resolve_modifier_mask): New function.
13942 (char_string): Use char_resolve_modifier_mask.
13943 (Fchar_resolve_modifiers): New function.
13944 (syms_of_character): Declare Fchar_resolve_modifiers as Lisp
13945 function.
13946
139472008-03-04 Jason Rumney <jasonr@gnu.org>
13948
13949 * makefile.w32-in: Always include w32font.c in the build.
13950 * w32font.c: Wrap in USE_FONT_BACKEND conditional.
13951
139522008-03-04 Andreas Schwab <schwab@suse.de>
13953
13954 * Makefile.in (clean): Remove emacs-*.*.* instead of emacs-*.
13955 (versionclean): Likewise.
13956
139572008-03-04 Juanma Barranquero <lekktu@gmail.com>
13958
13959 * .cvsignore: Add oo.
13960
139612008-03-03 Andreas Schwab <schwab@suse.de>
13962
13963 * coding.c (decode_coding_object): Inhibit gap shrinking while
13964 decoding in place.
13965
139662008-03-03 Dan Nicolaescu <dann@ics.uci.edu>
13967
13968 * w32term.c: Remove unused include "gnu.h".
13969 * makefile.w32-in (w32term.o): Don't depend on gnu.h.
13970
13971 * gnu.h: Rename to ...
13972 * emacs-icon.h: ... this.
13973 * xterm.c: Use emacs-icon.h instead of gnu.h.
13974 * Makefile (xterm.o): Depend on emacs-icon.h, not gnu.h.
13975
139762008-03-03 Juanma Barranquero <lekktu@gmail.com>
13977
13978 * w32font.c: Include math.h.
13979
139802008-03-03 Jason Rumney <jasonr@gnu.org>
13981
13982 * w32font.c (recompute_cached_metrics): Change font arg to w32font_info.
13983 Compute options separately.
13984 (w32font_open_internal): Set glyph_idx before caching metrics.
13985
13986 * w32font.h (NTM_PS_OPENTYPE, NTM_TT_OPENTYPE, NTM_TYPE1):
13987 Define if system headers don't.
13988 (struct w32font_info): Enlarge ascii_metrics. Add glyph_idx.
13989 (w32font_encode_char): Don't declare here.
13990
13991 * w32font.c (Quniscribe, QCformat): New symbols.
13992 (syms_of_w32font): Define them.
13993 (w32font_has_char): Indicate uncertainty.
13994 (w32font_encode_char): Encode as glyph point. Make static.
13995 (recompute_cached_metrics): New function.
13996 (w32font_open_internal): Use it. Set font to use glyph points
13997 initially. Set format based on type of font.
13998 (w32font_text_extents, w32font_draw): Optionally use glyph points.
13999 (w32_enumfont_pattern_entity): Accept backend arg. Set type based
14000 on it. Set format based on information available here.
14001 (add_font_entity_to_list): Identify backend based on opentype_only.
14002
140032008-03-02 Andreas Schwab <schwab@suse.de>
14004
14005 * ftfont.c (ftfont_pattern_entity): Fix aliasing violations.
14006
14007 * coding.c (decode_coding_big5, produce_chars):
14008 Fix typos in last change.
14009
140102008-03-02 Kentaro Ohkouchi <nanasess@fsm.ne.jp>
14011
14012 * gnu.h: New icon.
14013
140142008-03-02 Kenichi Handa <handa@m17n.org>
14015
14016 * coding.c (decode_coding_utf_8): When eol-type of CODING is
14017 `dos', don't decode '\r' if that is the last in the source.
14018 (decode_coding_utf_16, decode_coding_emacs_mule)
14019 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
14020 (decode_coding_raw_text, decode_coding_charset): Likewise.
14021 (produce_chars): Don't decode EOL here. Use EMACS_INT.
14022
140232008-03-01 Jason Rumney <jasonr@gnu.org>
14024
14025 * w32font.c (w32font_full_name): Report point size for scalable fonts.
14026
140272008-03-01 Kim F. Storm <storm@cua.dk>
14028
14029 * dispextern.h (CHAR_GLYPH_SPACE_P): Check for default face.
14030
140312008-03-01 Jason Rumney <jasonr@gnu.org>
14032
14033 * w32font.c (w32font_full_name): New function.
14034 (w32font_open_internal): Use it.
14035
140362008-03-01 Kim F. Storm <storm@cua.dk>
14037
14038 * dispnew.c (line_draw_cost): Fix invalid glyph check.
14039
140402008-03-01 Jason Rumney <jasonr@gnu.org>
14041
14042 * font.c (font_unparse_fcname): Increase len when style is a symbol.
14043
140442008-03-01 Jan Djärv <jan.h.d@swipnet.se>
14045
14046 * xterm.c (handle_one_xevent): For Gtk+ and ConfigureNotify, call
14047 xg_frame_resized when the event is for the edit widget.
14048
14049 * gtkutil.h (xg_frame_resized): Renamed from xg_resize_widgets.
14050
14051 * gtkutil.c (xg_resize_outer_widget): Only do one of set_geometry or
14052 set_char_size.
14053 (xg_frame_resized): Renamed from xg_resize_widgets. Remove all
14054 operations on widgets here. Just set frame size if needed.
14055 (flush_and_sync, x_wm_size_hint_off, xg_pack_tool_bar): New functions.
14056 (xg_frame_set_char_size): Call x_wm_size_hint_off before resizing.
14057 (x_wm_set_size_hint): Set size hints on the edit widget only, not
14058 the whole frame.
14059 (xg_create_tool_bar): Move attachment of the tool bar to
14060 xg_pack_tool_bar. Do not attach the tool bar if there are no items.
14061 (free_frame_tool_bar): Remove call to SET_FRAME_GARBAGED.
14062
140632008-03-01 Jason Rumney <jasonr@gnu.org>
14064
14065 * w32fns.c (w32_msg_pump): Disable debug code.
14066
140672008-03-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14068
14069 * m/intel386.h [MAC_OSX || DARWIN]: Define NO_ARG_ARRAY if _LP64.
14070
140712008-02-29 Chong Yidong <cyd@stupidchicken.com>
14072
14073 * xdisp.c (next_overlay_string): Don't set
14074 overlay_strings_at_end_processed_p if we're currently reading from
14075 a display string.
14076
140772008-02-29 Stefan Monnier <monnier@iro.umontreal.ca>
14078
14079 * xdisp.c (get_overlay_strings_1): Fix typo.
14080
140812008-02-29 Chong Yidong <cyd@stupidchicken.com>
14082
14083 * xdisp.c (get_overlay_strings_1): Add missing argument type.
14084
140852008-02-28 Kenichi Handa <handa@ni.aist.go.jp>
14086
14087 * ftfont.c (ftfont_match): Explicitly set pixelsize in pattern.
14088
14089 * xdisp.c (display_mode_element): Cancel the previous change.
14090 (decode_mode_spec): Likewise.
14091 (handle_auto_composed_prop): Don't make composition if it->string
14092 is a string.
14093
140942008-02-27 Kim F. Storm <storm@cua.dk>
14095
14096 * lisp.h (GLYPH): Change type from int to struct with separate char
14097 and face_id members.
14098 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Delete macros.
14099 (GLYPH_CHAR, GLYPH_FACE): Remove slow versions with frame arg.
14100 (FAST_GLYPH_CHAR, FAST_GLYPH_FACE): Rename macros to ...
14101 (GLYPH_CHAR, GLYPH_FACE): ... these. Change users.
14102 (FAST_MAKE_GLYPH, MAKE_GLYPH): Remove. Rewrite users to use ...
14103 (SET_GLYPH, SET_GLYPH_CHAR, SET_GLYPH_FACE): ... these macros instead.
14104 (GLYPH_CODE_CHAR, GLYPH_CODE_FACE, GLYPH_CODE_P)
14105 (GLYPH_CODE_CHAR_VALID_P, SET_GLYPH_FROM_GLYPH_CODE): New macros to
14106 handle new Lisp glyph code encoding, either an integer or a cons.
14107
14108 * disptab.h (GLYPH_SIMPLE_P): Rewrite.
14109 (GLYPH_ALIAS): Delete.
14110 (GLYPH_ALIAS_P, GLYPH_FOLLOW_ALIASES): Rewrite.
14111 (GLYPH_LENGTH, GLYPH_STRING): Use GLYPH_CHAR.
14112 (GLYPH_FROM_CHAR): Replace macro by ...
14113 (SET_GLYPH_FROM_CHAR): ... this macro. Change users.
14114
14115 * dispextern.h (CHAR_GLYPH_SPACE_P): Simplify.
14116 (GLYPH_FROM_CHAR_GLYPH): Replace macro by ...
14117 (SET_GLYPH_FROM_CHAR_GLYPH): ... this macro. Change users.
14118 (GLYPH_INVALID_P): New macro.
14119 (spec_glyph_lookup_face): Update prototype.
14120
14121 * dispnew.c (line_draw_cost): Adapt to new glyph type.
14122 (build_frame_matrix_from_leaf_window): Adapt to new glyph type and
14123 new glyph code encoding.
14124 (spec_glyph_lookup_face): No return value; update passed glyph instead.
14125 (init_display): Use SET_CHAR_GLYPH to initialize space_glyph.
14126
14127 * xdisp.c (get_next_display_element, next_element_from_display_vector):
14128 Adapt to new glyph type and new glyph code encoding.
14129
14130 * term.c (encode_terminal_code, produce_special_glyphs): Likewise.
14131
14132 * indent.c (current_column, current_column_1, Fmove_to_column)
14133 (compute_motion): Adapt to new glyph code encoding.
14134
14135 * msdos.c (IT_write_glyphs): Adapt to new glyph type.
14136
141372008-02-27 Chong Yidong <cyd@stupidchicken.com>
14138
14139 * process.c (wait_reading_process_output): Check for window
14140 changes caused by timers.
14141 Suggested by Johan Bockgård.
14142
141432008-02-27 Glenn Morris <rgm@gnu.org>
14144
14145 * emacs.c (USAGE1): Add `--disable-font-backend'.
14146
141472008-02-27 Stefan Monnier <monnier@iro.umontreal.ca>
14148
14149 * fileio.c (Finsert_file_contents): Don't reset undo_list if no change
14150 is made to the buffer.
14151
141522008-02-26 Stefan Monnier <monnier@iro.umontreal.ca>
14153
14154 * dispextern.h (face_at_buffer_position, face_for_overlay_string)
14155 (face_at_string_position):
14156 * xfaces.c (face_at_buffer_position, face_for_overlay_string)
14157 (face_at_string_position):
14158 * xdisp.c (display_string, next_overlay_change):
14159 * buffer.h (overlays_at):
14160 * buffer.c (overlays_at): Use EMACS_INT for buffer positions.
14161 Update callers.
14162
141632008-02-26 Chong Yidong <cyd@stupidchicken.com>
14164
14165 * editfns.c (Fformat): Doc fix.
14166
141672008-02-26 Juanma Barranquero <lekktu@gmail.com>
14168
14169 * font.c (Ffont_spec, Ffont_at): Fix typos in docstrings.
14170 (Ffont_put, Flist_families, Ffont_fill_gstring, Ffont_drive_otf)
14171 (Ffont_otf_alternates, Fquery_font): Doc fixes.
14172
141732008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
14174
14175 * buffer.c (Fbuffer_swap_text): New function.
14176 (syms_of_buffer): Defsubr it.
14177
141782008-02-25 Chong Yidong <cyd@stupidchicken.com>
14179
14180 * keyboard.c (command_loop_1): Revert 2006-10-09 change.
14181
141822008-02-25 Jason Rumney <jasonr@gnu.org>
14183
14184 * w32font.c (w32font_draw): Draw one character at a time when padding.
14185
141862008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
14187
14188 * window.c (Fdelete_window, Fadjust_window_trailing_edge):
14189 Handle a nil arg. Use run_window_configuration_change_hook.
14190 (delete_window, adjust_window_trailing_edge): Don't handle nil any more.
14191 (Fenlarge_window, Fshrink_window, Fset_window_configuration):
14192 Use run_window_configuration_change_hook.
14193
141942008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
14195
14196 * xdisp.c (x_produce_glyphs): For a visible glyph, assure at least
14197 1-pixel width.
14198
141992008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
14200
14201 * xdisp.c (fill_glyph_string): Pay attention to glyph->padding_p.
14202 (append_glyph): Set glyph->pixel_width and glyph->padding_p to 1
14203 if the glyph in the font is zero pixel with.
14204
14205 * dispextern.h (struct glyph_string): New member padding_p.
14206
14207 * w32font.c (w32font_draw): Pay attention to s->padding_p.
14208
14209 * ftxfont.c (ftxfont_draw): Pay attention to s->padding_p.
14210
14211 * xfont.c (xfont_draw): Pay attention to s->padding_p.
14212
14213 * xftfont.c (xftfont_draw): Pay attention to s->padding_p.
14214
14215 * font.c: If the font driver doesn't have `shape' function, return Qnil.
14216
142172008-02-25 Jason Rumney <jasonr@gnu.org>
14218
14219 * w32fns.c (enum_font_cb2): Don't use raster fonts for Unicode.
14220
142212008-02-24 Stefan Monnier <monnier@iro.umontreal.ca>
14222
14223 Allow fine-grained image-cache flushing.
14224 * dispextern.h (struct image): Add `dependencies' field.
14225 (clear_image_caches): Change arg to Lisp_Object.
14226 * image.c (make_image): Initialize `dependencies' field.
14227 (clear_image_cache): Change arg to allow fine-grained flushing.
14228 Perform the flush even if image-cache-eviction-delay is nil.
14229 (clear_image_caches): Change arg to Lisp_Object.
14230 (Fclear_image_cache): Expand meaning of the argument.
14231 (mark_image): Mark `dependencies' field.
14232 * xfaces.c (clear_face_cache): Adapt arg to call to clear_image_caches.
14233 (lface_hash): Use XHASH rather than XFASTINT.
14234 (face_at_buffer_position): Fix int -> EMACS_INT position.
14235 * xdisp.c (next_overlay_change): Fix int -> EMACS_INT position.
14236 (select_frame_for_redisplay): Remove code duplication.
14237 (redisplay_internal): Adapt arg to call to clear_image_caches.
14238
142392008-02-24 Dan Nicolaescu <dann@ics.uci.edu>
14240
14241 * s/vms4-0.h:
14242 * s/vms4-2.h:
14243 * s/vms4-4.h:
14244 * s/vms5-5.h: Remove, unused.
14245
14246 * s/irix5-2.h:
14247 * s/irix6-0.h:
14248 * s/riscos5.h:
14249 * s/mach-bsd4-3.h:
14250 * m/mips4.h: Remove files for obsolete systems.
14251
14252 * Makefile.in:
14253 * filelock.c:
14254 * unexmips.c:
14255 * m/hp9000s300.h:
14256 * m/iris4d.h:
14257 * s/aix3-1.h:
14258 * s/hpux.h:
14259 * s/msdos.h:
14260 * s/usg5-0.h:
14261 * s/usg5-2-2.h:
14262 * s/usg5-2.h:
14263 * s/usg5-3.h: Remove references to obsolete variables.
14264
14265 * s/irix5-0.h: Remove, move all the contents ...
14266 * s/irix6-5.h: ... here. Simplify.
14267 * config.in: Regenerate.
14268
142692008-02-24 Jason Rumney <jasonr@gnu.org>
14270
14271 * w32term.c (x_draw_glyph_string_background): Clear the background
14272 manually when cleartype is in use.
14273 (x_draw_glyph_string_foreground): Draw text transparently when
14274 cleartype is in use.
14275
14276 * w32font.c (w32font_text_extents): Avoid getting HDC and selecting
14277 a font into it unless we have to.
14278
142792008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
14280
14281 * intervals.h (INT_LISPLIKE): Remove. It may misfire.
14282 (NULL_INTERVAL_P, SET_INTERVAL_PARENT): Don't use it.
d6c952f8 14283
aac0c6e3
MR
142842008-02-18 Jason Rumney <jasonr@gnu.org>
14285
14286 * w32fns.c (Fw32_shell_execute): Encode parameters.
14287
142882008-02-09 Eli Zaretskii <eliz@gnu.org>
14289
14290 * fileio.c (syms_of_fileio) <insert-default-directory>: Doc fix.
14291
142922008-02-05 Juanma Barranquero <lekktu@gmail.com>
14293
14294 * unexhp9k800.c (read_header): Replace `legal' with `valid'.
14295
142962008-02-24 Ulrich Neumerkel <ulrich@complang.tuwien.ac.at> (tiny change)
14297
14298 * xterm.c (x_set_offset): Don't change the gravity if
14299 CHANGE_GRAVITY is -1.
14300
143012008-02-23 Chong Yidong <cyd@stupidchicken.com>
14302
14303 * fileio.c (auto_save_error_occurred): New var.
14304 (auto_save_error): Set it.
14305 (Fdo_auto_save): Don't overwrite the error message if an auto-save
14306 error occurred.
14307
143082008-02-23 Eli Zaretskii <eliz@gnu.org>
14309
14310 * w32.c (globals_of_w32): Add initializations for
14311 g_b_init_get_sid_sub_authority and
14312 g_b_init_get_sid_sub_authority_count.
14313
143142008-02-22 Stefan Monnier <monnier@iro.umontreal.ca>
14315
14316 * font.c (font_match_xlfd, font_check_xlfd_parse): New funs.
14317 (font_parse_xlfd): Use them for sanity check.
14318 (Finternal_set_font_style_table): Make sure the table is bijective.
14319
14320 Consolidate the image_cache to the terminal struct.
14321 * termhooks.h (P_): Remove redundant def.
14322 (struct terminal): New field `image_cache'.
14323 * frame.h (FRAME_IMAGE_CACHE): New macro. Use it everywhere in place
14324 of FRAME_X_IMAGE_CACHE.
14325 * xterm.h (struct x_display_info): Remove image_cache field.
14326 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
14327 * w32term.h (struct w32_display_info): Remove image_cache field.
14328 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
14329 * macterm.h (struct mac_display_info): Remove image_cache field.
14330 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
14331 * xterm.c (x_term_init):
14332 * w32term.c (w32_term_init):
14333 * macterm.c (mac_term_init): Set the image_cache in the terminal.
14334 * dispextern.h (clear_image_cache, forall_images_in_image_cache):
14335 Remove declarations.
14336 (clear_image_caches, mark_image_cache): New declarations.
14337 * xfaces.c (clear_face_cache):
14338 * xdisp.c (redisplay_internal): Use clear_image_caches.
14339 * image.c (clear_image_cache): Don't check that a frame is on
14340 a window-system before checking if it shares the same cache.
14341 (clear_image_caches): New function.
14342 (Fclear_image_cache): Use it.
14343 (mark_image): Move from allo.c.
14344 (mark_image_cache): Move from alloc.c and forall_images_in_image_cache.
14345 * alloc.c (mark_image, mark_image_cache): Move to image.c.
14346 (mark_object): Don't call mark_image_cache for frames.
14347 (mark_terminals): Call mark_image_cache.
14348
14349 * lisp.h (Fdelete_terminal): Declare.
14350
14351 * charset.h (CHECK_CHARSET, CHECK_CHARSET_GET_ID)
14352 (CHECK_CHARSET_GET_ATTR): Don't use the inexistent return value of
14353 wrong_type_argument.
14354
143552008-02-22 Kenichi Handa <handa@ni.aist.go.jp>
14356
14357 * Makefile.in (lisp): Remove devanagari.el, kannada.el,
14358 malayalam.el, and tamil.el. Add sinhala.el.
14359
143602008-02-21 Stefan Monnier <monnier@iro.umontreal.ca>
14361
14362 * xterm.c (x_connection_closed): Consolidate identical tests.
14363 (x_delete_terminal): Don't crash if called via x_connection_closed.
14364
143652008-02-21 Kenichi Handa <handa@ni.aist.go.jp>
14366
14367 * xdisp.c (decode_mode_spec): New arg string.
14368 (display_mode_element): Adjust for the above change.
14369
143702008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
14371
14372 * callint.c (Fcall_interactively): Use AREF.
14373
143742008-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
14375
14376 * font.c (font_unparse_xlfd): Don't ignore integer pixel size specs.
14377
143782008-02-18 Jan Djärv <jan.h.d@swipnet.se>
14379
14380 * xfns.c (Fx_show_tip): Set string to " " if empty.
14381
143822008-02-17 Dan Nicolaescu <dann@ics.uci.edu>
14383
14384 * callint.c (syms_of_callint): Initialize Vmark_even_if_inactive
14385 with Qt.
14386
143872008-02-17 Kenichi Handa <handa@m17n.org>
14388
14389 * ftfont.c (ftfont_shape): Return Lispy number.
14390
14391 * xfaces.c (prepare_face_for_display): Use display_info->font->fid
14392 for GCs.
14393 (Finternal_set_font_selection_order): Call font_update_sort_order
14394 only when enable_font_backend is set.
14395 (realize_x_face): Set face->font_info to that of default face only
14396 when enable_font_backend is set.
14397
14398 * xdisp.c (handle_composition_prop): Set it->c to the fist
14399 character of the composed region.
14400 (fill_composite_glyph_string): Set base_face->font_info to
14401 s->font_info. Get a face for ascii from base_face->ascii_face.
14402 (BUILD_COMPOSITE_GLYPH_STRING): Call fill_composite_glyph_string
14403 with a face already decided.
14404 (x_produce_glyphs): Be sure to set it->ascent and it->descent to
14405 non-negative.
14406 (x_produce_glyphs): If the composition method is ..._WITH_GLYPH_STRING,
14407 call font_prepare_composition unconditionally.
14408
14409 * xfns.c (x_make_gc): Use the default font id of the frame for GCs.
14410
14411 * xterm.h (struct x_display_info): New member font.
14412
14413 * xterm.c (x_set_cursor_gc): Use display_info->font->fid for GCs.
14414 (x_set_mouse_face_gc, x_new_font): Likewise.
14415 (x_term_init): Setup display_info->font.
14416 (x_delete_terminal): Free display_info->font.
14417
14418 * xfont.c (xfont_draw): Use BLOCK_INPUT and UNBLOCK_INPUT.
14419
14420 * ftxfont.c (ftxfont_default_fid): Delete it.
14421 (ftxfont_open): Set xfont->fid to 0.
14422 (ftxfont_end_for_frame): Clear data specific to the frame and the
14423 font-driver.
14424
14425 * xftfont.c (xftfont_default_fid): Delete it.
14426 (xftfont_open): Set xfont->fid to 0.
14427
14428 * fontset.c (FONTSET_OBJLIST): New macro.
14429 (fontset_find_font): Update font-object list of the fontset.
14430 (free_realized_fontset): New function.
14431 (free_face_fontset): Call free_realized_fontset.
14432 (Ffont_info): Call font_close_object only when enable_font_backend
14433 is set.
14434
14435 * font.c [HAVE_X_WINDOWS]: Include xterm.h.
14436 [HAVE_NTGUI]: Include w32term.h.
14437 [MAC_OS]: Include macterm.ch.
14438 (font_otf_ValueRecord): Use make_number.
14439 (font_finish_cache): Fix handling of reference count.
14440 (font_clear_cache): Update num_fonts.
14441 (font_open_entity): Update smallest_char_width and
14442 smallest_font_height of the frame.
14443 (font_close_object): Update num_fonts.
14444 (Fclear_font_cache): Fix finding the target cache data.
14445
144462008-02-16 Glenn Morris <rgm@gnu.org>
14447
14448 * fontset.c (Finternal_char_font): Fix compilation warning.
14449
144502008-02-16 Eli Zaretskii <eliz@gnu.org>
14451
14452 * w32.c (init_user_info): Use TOKEN_USER and TOKEN_PRIMARY_GROUP
14453 instead of char arrays. Enlarge the size of array passed to
14454 get_token_information.
14455
14456 * font.c (Ffont_fill_gstring, Fget_font_glyphs): Fix compilation
14457 warnings.
14458
144592008-02-15 Dan Nicolaescu <dann@ics.uci.edu>
14460
14461 * .gdbinit: Don't set `args', it breaks gdb --args.
14462
144632008-02-14 Stefan Monnier <monnier@iro.umontreal.ca>
14464
14465 * fileio.c (Finsert_file_contents): Adjust offsets when replacing
14466 within a narrowed buffer.
14467
144682008-02-14 Kenichi Handa <handa@ni.aist.go.jp>
14469
14470 * coding.c (decode_coding_object, encode_coding_object):
14471 Preserve Vdeactivate_mark. Delete unnecessary call of Fcurrent_buffer.
14472
144732008-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
14474
14475 * coding.c (coding_set_destination): Use BEG_BYTE rather than
14476 hardcoding 1.
14477 (detect_coding_system):
14478 * lisp.h (detect_coding_system, chars_in_text, multibyte_chars_in_text)
14479 (string_char_to_byte, string_byte_to_char, insert_from_gap):
14480 * insdel.c (insert_from_gap):
14481 * fns.c (string_char_byte_cache_charpos, string_char_byte_cache_bytepos)
14482 (string_char_to_byte, string_byte_to_char, string_make_multibyte)
14483 (string_to_multibyte):
14484 * character.c (chars_in_text, multibyte_chars_in_text):
14485 * fileio.c (Finsert_file_contents): Use EMACS_INT for buffer positions.
14486
14487 * character.h (FETCH_STRING_CHAR_ADVANCE)
14488 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE)
14489 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA and SREF.
14490 (DEC_POS, BUF_DEC_POS): Use BEG_BYTE rather than hardcoding 1.
14491
14492 * casefiddle.c (casify_region): Only call after-change and composition
14493 functions on the part of the region that was changed.
14494
14495 * keyboard.c (read_avail_input):
14496 * frame.c (Fdelete_frame): Call Fdelete_terminal.
14497
144982008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
14499
14500 * buffer.c (clone_per_buffer_values, reset_buffer_local_variables)
14501 (Fbuffer_local_value, Fbuffer_local_variables): Don't forget undo_list.
14502
145032008-02-11 Juanma Barranquero <lekktu@gmail.com>
14504
14505 * w32menu.c (push_submenu_start, push_submenu_end)
14506 (push_left_right_boundary, push_menu_pane, push_menu_item):
14507 * keyboard.c (read_key_sequence): Don't pass args with side effects
14508 to AREF, it fails when compiling with -DENABLE_CHECKING.
14509
145102008-02-11 Kenichi Handa <handa@ni.aist.go.jp>
14511
14512 * Makefile.in (${lispsource}international/charprop.el):
14513 Delete this target.
14514
14515 * search.c (boyer_moore): Fix incorrect synching of the trunk and
14516 emacs-unicode-2.
14517
145182008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
14519
14520 * terminal.c (Fdelete_terminal): Clean up the `force' path.
14521
145222008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
14523
14524 * frame.c (Qnoelisp): New symbol.
14525 (syms_of_frame): Initialize it.
14526 (Fdelete_frame): Use it to distinguish a mere `force' passed from some
14527 harmless Elisp code, from a strong `force' from x_connection_closed.
14528 * frame.h (Qnoelisp): Declare.
14529 * xterm.c (x_connection_closed): Pass `noelisp'.
14530
14531 * lisp.h (struct Lisp_Misc_Any, struct Lisp_Marker)
14532 (struct Lisp_Overlay, struct Lisp_Kboard_Objfwd)
14533 (struct Lisp_Save_Value, struct Lisp_Free): Use enum Lisp_Misc_Type
14534 rather than `int' for the type of `type'.
14535
145362008-02-10 Dan Nicolaescu <dann@ics.uci.edu>
14537
14538 * s/gnu-linux.h: Remove support for non-ELF and linux-1.x.
14539
14540 * Makefile.in (GNUC): Remove support for gcc-1.x.
14541
145422008-02-10 Richard Stallman <rms@gnu.org>
14543
14544 * lisp.h (ASET): Use AREF, not ASLOT.
14545
145462008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
14547
14548 * lisp.h (ASET): Check bounds.
14549
145502008-02-10 Glenn Morris <rgm@gnu.org>
14551
14552 * buffer.c (mode-name): Doc fix.
14553
145542008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
14555
14556 * Makefile.in:
14557 * emacs.c:
14558 * gmalloc.c:
14559 * keyboard.c:
14560 * lisp.h:
14561 * m/ibm370aix.h:
14562 * process.c:
14563 * regex.c:
14564 * s/hpux.h:
14565 * sysdep.c:
14566 * sysselect.h:
14567 * systty.h:
14568 * unexec.c:
14569 * w32term.c:
14570 * xsmfns.c:
14571 * xterm.c: Remove code that deals with obsolete variables.
14572
14573 * s/msdos.h (DONT_NEED_ENVIRON): Don't define.
14574
14575 * ecrt0.c: Replace the DONT_NEED_ENVIRON test with MSDOS test,
14576 nothing else needs it anymore.
14577
145782008-02-09 Eli Zaretskii <eliz@gnu.org>
14579
14580 * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use unibyte_to_multibyte_table
14581 instead of unibyte_char_to_multibyte.
14582
145832008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
14584
14585 * s/gnu-linux.h: Remove commented out code.
14586
14587 * unexec.c: Remove references to obsolete variable COFF_ENCAPSULATE.
14588
14589 * Makefile.in: Update what RMS says about using autoconf.
14590 (C_COMPILER, COFF_ENCAPSULATE, MAKE_PARALLEL): Remove obsolete variable.
14591 (C_SWITCH_MACHINE_1, C_SWITCH_SYSTEM_1, C_SWITCH_SITE_1)
14592 (C_SWITCH_X_SITE_1, C_SWITCH_X_MACHINE_1)
14593 (C_SWITCH_X_SYSTEM_1): Move invariant code outside conditional.
14594
145952008-02-08 Stefan Monnier <monnier@iro.umontreal.ca>
14596
14597 * keymap.c (Fkey_description): Move side effect outside of macro call.
14598
14599 * xfaces.c (Finternal_make_lisp_face):
14600 * keyboard.c (add_command_key, parse_menu_item): Use ASET.
14601
14602 * fontset.c (free_face_fontset): Use FONTSET_FROM_ID.
14603 (syms_of_fontset): Use ASET.
14604
14605 * fns.c (concat): Move side effect outside of macro call.
14606 (hash_clear): Use ASET.
14607
146082008-02-08 Richard Stallman <rms@gnu.org>
14609
14610 * frame.c (Fdelete_frame): If FORCE, don't call hooks.
14611 If FORCE, and frame has a surrogate minibuffer for another frame,
14612 delete the other frame first.
14613
146142008-02-07 Timo Savola <timo.savola@iki.fi>
14615
14616 * xterm.c (x_detect_focus_change): Handle embed client message.
14617 (handle_one_xevent): Ditto.
14618 (handle_one_xevent): If embedded and we get a button press/release,
14619 request focus.
14620 (xembed_set_info, xembed_send_message): New functions.
14621 (x_make_frame_visible): Call xembed_set_info if embedded.
14622 (x_make_frame_invisible): Call xembed_set_info if embedded.
14623 (x_term_init): Initialize Xatom_XEMBED.
14624 (x_make_frame_visible): Check for FRAME_X_EMBEDDED_P also.
14625 (x_iconify_frame): Ditto.
14626
14627 * xterm.h (struct x_display_info): Add AtomXatom_XEMBED.
14628 (enum xembed_info, enum xembed_message, enum xembed_focus)
14629 (enum xembed_modifier, enum xembed_accelerator): New.
14630 (xembed_set_info, xembed_send_message): Declare.
14631 (FRAME_X_EMBEDDED_P): New.
14632
14633 * gtkutil.c (xg_create_frame_widgets): If frame is embedded, call
14634 gtk_plug_new.
14635
14636 * xfns.c (Fx_create_frame): Do not override the explicitly set parent
14637 window ID of a frame.
14638 (x_window): Reparent frame if embedded.
14639 (Fx_create_frame): Don't set border width if embedded.
14640
14641 * emacs.c (USAGE3): Add --parent-id.
14642 (standard_args): Ditto.
14643
146442008-02-07 Jan Djärv <jan.h.d@swipnet.se>
14645
14646 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): Use "do...while (0)".
14647
146482008-02-07 Jim Meyering <meyering@redhat.com>
14649
14650 Use "do...while (0)", not "if (1)...else" in macro definitions.
14651 The latter provokes a warning from gcc about the empty else, when
14652 followed by ";". Also, without that trailing semicolon, it would
14653 silently swallow up any following statement.
14654 * syntax.h (SETUP_SYNTAX_TABLE)
14655 (SETUP_SYNTAX_TABLE_FOR_OBJECT): Likewise.
14656 * buffer.h (DECODE_POSITION): Likewise.
14657 * character.h (FETCH_STRING_CHAR_ADVANCE): Likewise.
14658 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): Likewise.
14659 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Likewise.
14660 (FETCH_CHAR_ADVANCE): Likewise.
14661 (FETCH_CHAR_ADVANCE_NO_CHECK): Likewise.
14662
146632008-02-07 Jim Meyering <meyering@redhat.com>
14664
14665 * lread.c [lint]: Don't include <sys/inode.h>.
14666
146672008-02-07 Stefan Monnier <monnier@iro.umontreal.ca>
14668
14669 * xselect.c (x_handle_dnd_message):
14670 * xmenu.c (digest_single_submenu, xmenu_show):
14671 * xdisp.c (with_echo_area_buffer_unwind_data)
14672 (format_mode_line_unwind_data, unwind_format_mode_line)
14673 (display_menu_bar):
14674 * eval.c (Ffetch_bytecode):
14675 * doc.c (store_function_docstring):
14676 * ccl.c (resolve_symbol_ccl_program, ccl_get_compiled_code)
14677 (Fccl_execute, Fccl_execute_on_string, Fregister_code_conversion_map):
14678 * buffer.c (add_overlay_mod_hooklist): Use ASET.
14679
146802008-02-07 Kenichi Handa <handa@m17n.org>
14681
14682 * ftxfont.c (ftxfont_open): Don't set
14683 dpyinfo->smallest_font_height and dpyinfo->smallest_char_width to 0.
14684
14685 * ftfont.c (ftfont_open): Fix previous change.
14686
146872008-02-06 Jason Rumney <jasonr@gnu.org>
14688
14689 * w32font.c (w32font_text_extents): Fill in lbearing metric.
14690 Use cached metrics for ASCII characters.
14691 (w32font_open_internal): Don't set font's owning_frame.
14692 Cache metrics for ASCII characters.
14693
14694 * w32font.h (struct w32font_info): Add ascii_metrics.
14695 Remove owning_frame.
14696
146972008-02-06 Kenichi Handa <handa@ni.aist.go.jp>
14698
14699 * xdisp.c (x_produce_glyphs): Don't set it->ascent and it->descent
14700 to negative value.
14701
14702 * ftxfont.c (ftxfont_draw): Use s->font_info, not face->font_info.
14703
14704 * ftfont.c (ftfont_open): Fix calculation of font->font.average_width.
14705
14706 * charset.c (syms_of_charset): Set QCtest and Qeq.
14707
147082008-02-06 Stefan Monnier <monnier@iro.umontreal.ca>
14709
14710 * process.c (Fstart_process):
14711 * callproc.c (Fcall_process): Handle the case where
14712 Funhandled_file_name_directory returns nil.
14713
14714 * font.h (enum lgstring_indices, enum lglyph_indices): New enums.
14715 (LGSTRING_SLOT, LGSTRING_SET_SLOT): New macros.
14716 * font.c (check_gstring): Use them and AREF to access the vector before
14717 we know it's really a gstring.
14718 (Ffont_shape_text): Fix typo.
46e722a9 14719 (Ffont_shape_text, Ffont_otf_alternates): Fix up int/Lisp_Object mixups.
aac0c6e3
MR
14720
14721 * composite.h (Fcompose_region_internal, Fcompose_string_internal):
14722 Declare.
14723
14724 * chartab.c (make_sub_char_table): Remove noop-yet-incorrect statement.
14725
147262008-02-05 Jason Rumney <jasonr@gnu.org>
14727
14728 * w32font.c (w32font_open_internal): Fill min_width with tmAveCharWidth.
14729 Set smallest_font_height and smallest_char_width in display info.
14730
147312008-02-05 Kenichi Handa <handa@ni.aist.go.jp>
14732
14733 * coding.c (decode_eol): Pay attention to coding->dst_multibyte.
14734
147352008-02-05 Miles Bader <miles@gnu.org>
14736
14737 * xfaces.c (get_lface_attributes, merge_named_face)
14738 (lookup_named_face, lookup_derived_face, realize_named_face):
14739 Revert 2008-02-01 change by cyd@stupidchicken.com.
14740
147412008-02-04 Kenichi Handa <handa@ni.aist.go.jp>
14742
14743 * fontset.c (Ffontset_info): Handle the case of inhibitting the
14744 fallback fonts.
14745 (Ffontset_info) [USE_FONT_BACKEND]: Fix getting of opened font names.
14746
147472008-02-04 Jason Rumney <jasonr@gnu.org>
14748
14749 * w32font.c (w32font_open_internal): Use font_unparse_fcname to
14750 set full_name.
14751 (w32font_open_internal): Use xmalloc, xrealloc, xfree.
14752
147532008-02-03 Jason Rumney <jasonr@gnu.org>
14754
14755 * makefile.w32-in (OBJ1): Include font.o here.
14756 (FONTOBJ) [USE_FONTBACKEND]: Instead of here.
14757
147582008-02-02 Jason Rumney <jasonr@gnu.org>
14759
14760 * makefile.w32-in (temacs): Bump EMHEAP to 21.
14761
147622008-02-01 Jason Rumney <jasonr@gnu.org>
14763
14764 * s/cygwin.h: Define VIRT_ADDR_VARIES.
14765
14766 * puresize.h [VIRT_ADDR_VARIES]: Don't include CYGWIN in condition.
14767
147682008-02-01 Andreas Schwab <schwab@suse.de>
14769
14770 * Makefile.in (shortlisp, lisp): Update for rename of
14771 ../lisp/language/myanmar.el.
14772
147732008-02-01 Chong Yidong <cyd@stupidchicken.com>
14774
14775 * xfaces.c (get_lface_attributes): Delete function.
14776 (merge_named_face, lookup_named_face, lookup_derived_face)
14777 (realize_named_face): Call lface_from_face_name directly, and use
14778 the fact that merge_face_vectors does not alter its FROM argument.
14779
147802008-02-01 Jason Rumney <jasonr@gnu.org>
14781
14782 * w32term.c (w32_read_socket) <WM_CHAR>: Decode non-Unicode
14783 input in the default locale. Handle non-Unicode multibyte input.
14784
147852008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14786
14787 * fontset.c (reorder_font_vector): Exclude nil elements from the
14788 font group. Don't try multiple fonts.
14789 (fontset_font): Adjust for the above change.
14790 (Finternal_char_font): Return nil if the found font doesn't
14791 contain the character ch.
14792
14793 * Makefile.in (lisp, shortlisp): Add cham.el.
14794
147952008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14796
14797 * font.h (FONTP): Make it return 1 also for a font-object.
14798
14799 * .gdbinit (xfontset): New function.
14800
14801 * font.c (font_find_for_lface): Check if the character C is
14802 supported or not only for the first font.
14803
14804 * fontset.c (reorder_font_vector): Fix typo.
14805 (fontset_find_font): Don't add a font-spec specifying a script.
14806 Use 0 (not Qt) for the indication of empty font-group. Change the
14807 format of RFONT-DEF. Return Qt if no font in the font-group
14808 support the character.
14809 (fontset_font): Adjust for the above change. If no font was
14810 found the character, remember that.
14811 (face_for_char): Adjust for the change of RFONT-DEF.
14812 (Fset_fontset_font): Allow nil for FONT-SPEC to explicitly specify
14813 no font for the target.
14814 (Finternal_char_font): Adjust for the change of RFONT-DEF.
14815
148162008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14817
14818 * font.c (font_load_for_face): Handle the case that the font in
14819 face->lface is a string.
14820
148212008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14822
14823 * xfaces.c (set_lface_from_font_and_fontset): Set the fontname in lface.
14824
148252008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14826
14827 * xfaces.c (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]:
14828 Fix previous change. If the frame is not on a window system,
14829 signal an error.
14830
148312008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14832
14833 * coding.c (decode_coding_object, encode_coding_object): Adjust
14834 marker positions after conversion.
14835
14836 * lisp.h (struct Lisp_Marker): New member need_adjustment.
14837
148382008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14839
14840 * font.c (font_find_for_lface): Fix the handling of the return
14841 value of font_has_char.
14842 (Ffont_shape_text): Fix previous change.
14843
14844 * fontset.c (FONTSET_REF_AND_RANGE): Delete it.
14845 (fontset_ref_and_range): Delete it.
14846 (fontset_find_font): Call char_table_ref_and_range instead of
14847 FONTSET_REF_AND_RANGE.
14848 (make_fontset): Don't setup font groups of Latin here.
14849 (Fset_fontset_font): Don't overwrite the setting of FONTSET_ASCII.
14850 (new_fontset_from_font): Make the specified font the default for
14851 all Latin characters.
14852
148532008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14854
14855 * xfaces.c (Finternal_set_lisp_face_attribute): Check if the frame
14856 is on a window system before accessing the fontset of the frame.
14857
148582008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14859
14860 * Makefile.in (lisp, shortlisp): Add kherm.el and myanmar.el.
14861
14862 * ftfont.c (ftfont_driver): Set ftfont_shape in ftfont_driver only
14863 when both HAVE_M17N_FLT and HAVE_LIBOTF are defined.
14864
14865 * font.c (Ffont_shape_text): If the font driver doesn't have a
14866 shaper function, make zero-width glyphs to have at least one-pixel
14867 width. Fix setting of `to' field of glyphs.
14868
148692008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14870
14871 * ftfont.c (ftfont_drive_otf): Fix setting of FROM and TO slots of
14872 glyphs.
14873
14874 * font.h (struct font_driver): Improve docstring of member `shape'.
14875
148762008-02-01 Kenichi Handa <handa@m17n.org>
14877
14878 * composite.c (syms_of_composite): Fix docstring of
14879 auto-composition-function.
14880
14881 * font.h (LGLYPH_SIZE): New macro.
14882
14883 * font.c (Ffont_fill_gstring): Stop filling when a character not
14884 supported by the font is found.
14885 (Ffont_shape_text): When a shape callback function returns nil,
14886 try at most two more times with larger gstring.
14887 (Ffont_at): Fix getting of w. Call font_at with correct 5th argument.
14888
14889 * xdisp.c (handle_auto_composed_prop): Change the argument to
14890 auto-composition-function.
14891
14892 * ftfont.c (ftfont_encode_char): Use the macro FONT_INVALID_CODE.
14893 (ftfont_shape_by_flt): If an element of lgstring is nil, make a
14894 Lispy glyph and store it in the lgstring.
14895
14896 * xfont.c (xfont_encode_char): Use the macro FONT_INVALID_CODE.
14897
14898 * xftfont.c (xftfont_encode_char): Use the macro FONT_INVALID_CODE.
14899
149002008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14901
14902 * font.c (Ffont_shape_text): Avoid unnecessary composition.
14903
14904 * fontset.c (Vfont_encoding_charset_alist): New variable.
14905 (syms_of_fontset): DEFVAR it.
14906 (reorder_font_vector, fontset_find_font): Optimize for the case of
14907 no need of reordering.
14908 (face_for_char): Map the charset property by
14909 Vfont_encoding_charset_alist.
14910
149112008-02-01 Jason Rumney <jasonr@gnu.org>
14912
14913 * w32font.c (logfonts_match): Don't check adstyle here.
14914 (font_matches_spec): Check here against physical font instead.
14915 (add_font_entity_to_list): Avoid some substitutions.
14916
14917 * font.c (font_parse_fcname): Default weight and slant to normal.
14918 (font_score): Prefer normal fonts if weight or slant unspecified.
14919 (font_score) [WINDOWSNT]: Scale weight difference down to closer
14920 match freetype scores.
14921
149222008-02-01 Jason Rumney <jasonr@gnu.org>
14923
14924 * w32font.c (w32font_text_extents): Don't use the frame stored in the
14925 font, as it may have been deleted.
14926 (w32_enumfont_pattern_entity): Map generic family to adstyle using
14927 most common hyphenless variation.
14928 (logfonts_match): Check generic family.
14929 (font_matches_spec): Don't check generic family here.
14930 (fill_in_logfont): Set generic family based on adstyle.
14931
14932 * w32font.h (w32font_get_cache): Update declaration.
14933
149342008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14935
14936 * ftfont.c (ftfont_get_cache): Adjust the argument type.
14937
14938 * frame.c (x_set_font_backend): Don't call Fclear_font_cache.
14939 If none of the new drivers are available, call font_update_drivers
14940 with the old drivers.
14941
14942 * w32font.c (w32font_get_cache): Adjust the argument type.
14943
14944 * xfont.c (xfont_get_cache): Adjust the argument type.
14945
14946 * font.h (struct font_driver): Change argument type of get_cache.
14947
14948 * xftfont.c (xftfont_start_for_frame): Delete prototype.
14949
14950 * font.c (Ffont_get): Fix arguments to Fassoc.
14951 (font_prepare_cache, font_finish_cache, font_get_cache): New functions.
14952 (font_clear_cache): New function.
14953 (font_list_entities, font_matching_entity): Use font_get_cache.
14954 (font_update_drivers): Call font_clear_cache when finishing a driver.
14955
14956 * fontset.c (fontset_find_font): Fix previous change.
14957
149582008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14959
14960 * xterm.c (x_check_font) [USE_FONT_BACKEND]: Don't access
14961 dpyinfo->font_table.
14962 (x_delete_display) [USE_FONT_BACKEND]: Likewise.
14963 (x_delete_terminal) [USE_FONT_BACKEND]: Likewise.
14964
14965 * font.c (font_at): Handle the case that the arg C is negative.
14966 Handle the unibyte case.
14967 (Ffont_at): Call font_at with the arg C -1.
14968
14969 * xdisp.c (handle_auto_composed_prop): Don't get a character at
14970 the position here, and call font_at with the arg C -1.
14971 Don't check the range of the existing composition at the point.
14972
149732008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14974
14975 * fontset.c (fontset_add): New args charset_id and family.
14976 Change caller.
14977 (load_font_get_repertory, fontset_find_font): Assume that
14978 font_spec is always a font-spec object.
14979 (Fset_fontset_font): Always store a font-spec object in a fontset.
14980
14981 * xdisp.c (handle_auto_composed_prop): Use Fget_text_property
14982 instead of get_property_and_range.
14983
149842008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14985
14986 * xftfont.c (struct xftfont_info): Delete the member ft_face.
14987 (xftfont_open): Don't keep locking face.
14988 (xftfont_close): Don't unlock face.
14989 (xftfont_anchor_point, xftfont_shape): Lock and unlock face.
14990
14991 * fontset.c (fontset_find_font): Don't prefer a font of
14992 supplementary charset.
14993
149942008-02-01 Kenichi Handa <handa@m17n.org>
14995
14996 * ftfont.c (struct OpenTypeSpec): Rename members script_tag to
14997 script, langsys_tag to langsys, new member script.
14998 (OTF_TAG_STR): Terminate by '\0'.
867d4bb3 14999 (ftfont_get_open_type_spec): If :otf prop is spec, limit the
aac0c6e3
MR
15000 listing to the script specified in that property. Fix arg to
15001 OTF_check_features.
15002
150032008-02-01 Jason Rumney <jasonr@gnu.org>
15004
15005 * w32font.h: New file.
15006
15007 * w32font.c: Include it.
15008 (struct w32font_info): Add owning_frame field. Move to w32font.h.
15009 (w32font_open): Set owning_frame.
15010 (w32font_text_extents): Use owning_frame.
15011 (struct font_callback_data): Add opentype_only field.
15012 (add_font_entity_to_list): Use it to filter fonts.
15013 Don't check against full name.
15014 (w32font_list_internal): New function.
15015 (w32font_list): Use it.
15016 (w32font_match_internal): New function.
15017 (w32font_match): Use it.
15018 (w32font_open_internal): New function.
15019 (w32font_open): Use it.
15020 (w32font_get_cache, w32font_close, w32font_has_char)
15021 (w32font_encode_char, w32font_text_extents, w32font_draw):
15022 Make non-static.
15023
15024 * makefile.w32-in (w32font.o): Depend on w32font.h.
15025
150262008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15027
15028 * charset.c (Fdefine_charset_internal): Record a supplementary
15029 charset at the tail of Vcharset_order_list.
15030
15031 * font.c (Ffont_shape_text): Fix the return value.
15032
15033 * ftfont.c (OTF_SYM_TAG, OTF_TAG_STR): Fix argument names.
15034
15035 * xdisp.c (handle_auto_composed_prop): Fix previous change.
15036
150372008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15038
15039 * ftfont.c (struct OpenTypeSpec): New struct.
15040 (OTF_SYM_TAG, OTF_TAG_STR): New macros.
15041 (ftfont_get_open_type_spec): New function.
15042 (ftfont_list) [HAVE_LIBOTF]: Check otf-spec property.
15043
15044 * lread.c (read1): Redo the previous change with checking Vpurify_flag.
15045
150462008-02-01 Jason Rumney <jasonr@gnu.org>
15047
15048 * w32font.c (add_font_entity_to_list): Compare only the beginning
15049 of full name.
15050
150512008-02-01 Kenichi Handa <handa@m17n.org>
15052
15053 * xdisp.c (handle_auto_composed_prop): Simplify the code.
15054 Never return HANDLED_RECOMPUTE_PROPS.
15055
150562008-02-01 Kenichi Handa <handa@m17n.org>
15057
15058 * font.c (font_gstring_produce): Delete it.
15059
15060 * composite.h (COMPOSITION_METHOD):
15061 Handle COMPOSITION_WITH_GLYPH_STRING.
15062
150632008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15064
15065 * xfont.c (Qx): Delete.
15066 (syms_of_xfont): Don't initialize Qx.
15067
15068 * composite.h (enum composition_method):
15069 Define COMPOSITION_WITH_GLYPH_STRING unconditionally.
15070
150712008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15072
15073 * xfaces.c [HAVE_WINDOW_SYSTEM]: Include "font.h" unconditionally.
15074 (choose_face_font): Accept new form of font-spec.
15075
15076 * frame.h (font_driver_list): Declare it unconditionally.
15077 (struct frame): Define members font_driver_list and font_data_list
15078 unconditionally.
15079
15080 * fontset.c: Include "font.h" unconditionally.
15081 (generate_ascii_font_name): Use font_parse_xlfd and font_unparse_xlfd.
15082 (Fset_fontset_font): Accept a font-spec object.
15083
15084 * font.c (font_unparse_xlfd): If pixel_size is zero, make the
15085 PIXEL_SIZE part a wild card.
15086
15087 * dispextern.h (struct glyph_string): Define members clip and
15088 num_clips unconditionally.
15089 (struct face): Define members font_info and extra unconditionally.
15090
15091 * ftfont.c (ftfont_open): Set members maybe_otf and otf of
15092 ftfont_info only when HAVE_LIBOTF is defined.
15093
150942008-02-01 Andreas Schwab <schwab@suse.de>
15095
15096 * xdisp.c (back_to_previous_visible_line_start): Fix type of beg
15097 and end.
15098
150992008-02-01 Jason Rumney <jasonr@gnu.org>
15100
15101 * w32font.c (w32font_driver): Add new fields.
15102
151032008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15104
15105 * Makefile.in (ALL_CFLAGS): Add @M17N_FLT_CFLAGS@.
15106 (FONTSRC, FONTOBJ) [HAVE_WINDOW_SYSTEM]: Set them unconditionally.
15107 (LIBES): Add @M17N_FLT_CFLAGS@.
15108
15109 * composite.c (compose_text): Don't treat the new style
15110 composition specially.
15111
15112 * emacs.c (main): Call syms_of_font unconditionally.
15113
15114 * font.h (FONT_ENTITY_NOT_LOADABLE)
15115 (FONT_ENTITY_SET_NOT_LOADABLE): New macros.
15116 (LGSTRING_XXXX, LGLYPH_XXX): Adjust for the change of lispy gstring.
15117 (struct font_driver): New member shape.
15118 (font_registry_charsets): Extern it.
15119 (font_find_for_lface, font_prepare_composition): Adjust prototype.
15120 (font_otf_capability, font_drive_otf): Delete their externs.
15121
15122 * font.c [HAVE_M17N_FLT]: Include <m17n-flt.h>.
15123 (font_charset_alist, font_registry_charsets): Move from xfont.c
15124 and rename.
15125 (font_prop_validate_otf): New function.
15126 (font_property_table): Register it for QCotf.
15127 (DEVICE_DELTA, adjust_anchor, REPLACEMENT_CHARACTER)
15128 (font_drive_otf): Delete.
15129 (font_prepare_composition): New arg F. Adjust for the change of
15130 lispy gstring.
15131 (font_find_for_lface): New arg C.
15132 (font_load_for_face): Adjust for the change of font_find_for_lface.
15133 (Ffont_make_gstring, Ffont_fill_gstring): Adjust for the change of
15134 lispy gstring.
15135 (Ffont_shape_text): New function.
15136 (Fopen_font): If the font size is not given, use 12-pixel.
15137 (Ffont_at): New arg STRING.
15138 (syms_of_font): Initalize font_charset_alist.
15139 Declare Ffont_shape_text as a Lisp function. Call syms_of_XXfont
15140 conditionally.
15141
15142 * fontset.c (fontset_find_font) [USE_FONT_BACKEND]: Try multiple
15143 fonts of the same font-spec. Change the format of RFONT-DEF.
15144 (face_for_char, make_fontset_for_ascii_face, Finternal_char_font):
15145 Adjust for the change of RFONT-DEF.
15146 (Fset_fontset_font) [USE_FONT_BACKEND]: Handle new format of font-spec.
15147
15148 * ftfont.h: New file.
15149
15150 * ftfont.c: Don't include Freetype headers. Include "ftfont.h".
15151 (struct ftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
15152 (ftfont_open) [HAVE_LIBOTF]: Initialize the above members.
15153 (ftfont_driver) [HAVE_LIBOTF, HAVE_M17N_FLT]: Don't set
15154 font_otf_capability and font_drive_otf, set ftfont_shape.
15155 (ftfont_list): Adjust for the change of :otf property value.
15156 (struct MFLTFontFT) [HAVE_LIBOTF, HAVE_M17N_FLT]: New struct.
15157 (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_check_otf)
15158 (adjust_anchor, ftfont_drive_otf, ftfont_shape_by_flt)
15159 (ftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
15160 (DEVICE_DELTA) [HAVE_LIBOTF, HAVE_M17N_FLT]: New macro.
15161 (otf_gstring, gstring, m17n_flt_initialized): New variables.
15162
15163 * w32term.c (x_draw_composite_glyph_string_foreground):
15164 Adjust for the change of lispy gstring.
15165
15166 * xdisp.c (handle_composition_prop): Adjust for the change of
15167 lispy gstring. Call a function for auto-composition with the
15168 third arg it->window.
15169 (fill_composite_glyph_string): Adjust for the change of lispy string.
15170 (x_produce_glyphs): Adjust for the change of font_prepare_compositionl.
15171
15172 * xfaces.c (set_font_frame_param): Adjust for the change of
15173 font_find_for_lface.
15174
15175 * xfont.c (x_font_charset_alist): Move to font.c and rename.
15176 (xfont_registry_charsets): Likewise. Change caller.
15177 (syms_of_xfont): Don't handle x_font_charset_alist.
15178
15179 * xftfont.c: Include "ftfont.h".
15180 (struct xftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
15181 (xftfont_open) [HAVE_LIBOTF]: Initialize the above members.
15182 (xftfont_close) [HAVE_LIBOTF]: Close otf.
15183 (xftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
15184 (syms_of_xftfont) [HAVE_LIBOTF, HAVE_M17N_FLT]:
15185 Set xftfont_driver.shape to xftfont_shape.
15186
15187 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
15188 the change of lispy gstring.
15189
151902008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15191
15192 * ftxfont.c (ftxfont_end_for_frame): Fix array indexing error.
15193
151942008-02-01 Jason Rumney <jasonr@gnu.org>
15195
15196 * w32font.c (w32font_draw): Fill background manually.
15197
151982008-02-01 Jason Rumney <jasonr@gnu.org>
15199
15200 * font.c (Qfontp): Remove unused symbol.
15201 (QCantialias): New symbol.
15202 (syms_of_font): Define it.
15203 (font_property_table): Set a validator for QCantialias.
15204
15205 * w32font.c (CLEARTYPE_QUALITY, CLEARTYPE_NATURAL_QUALITY):
15206 Define if not already.
15207 (QCfamily): Share with xfaces.c.
15208 (Qstandard, Qsubpixel, Qnatural): New symbols.
15209 (syms_of_w32font): Define them. Don't define QCfamily here.
15210 (w32_antialias_type, lispy_antialias_type): New functions.
15211 (w32_enumfont_pattern_entity): New arg requested_font.
15212 Set antialias parameter if non-default was requested.
15213 (fill_in_logfont): Fill in lfQuality if :antialias specified.
15214
152152008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15216
15217 * lread.c (read1): Undo the previous change.
15218
152192008-02-01 CHENG Gao <chenggao@gmail.com> (tiny change)
15220
15221 * frame.c (Fdelete_frame): Call font_update_drivers only when
15222 USE_FONT_BACKEND is defined.
15223
152242008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15225
15226 * font.h (struct font_bitmap): New member bits_per_pixel.
15227 (struct font_driver): New members start_for_frame and end_for_frame.
15228 (struct font_data_list): New struct.
15229 (font_put_frame_data, font_get_frame_data): Extern them.
15230
15231 * frame.h (struct frame): New member font_data_list.
15232
15233 * font.c (font_update_drivers): Call driver->start_for_frame and
15234 driver->end_for_frame at proper timings.
15235 (font_put_frame_data, font_get_frame_data): New functions.
15236 (Ffont_spec): Add usage in the docstring.
15237
15238 * frame.c (make_frame): Initialize f->font_data_list to NULL.
15239 (Fdelete_frame): Call font_update_drivers.
15240
15241 * xftfont.c (struct xftface_info): Delete the member xft_draw.
15242 (xftfont_prepare_face, xftfont_done_face): Adjust for the above change.
15243 (xftfont_get_xft_draw): New function.
15244 (xftfont_draw): Get XftDraw by xftfont_get_xft_draw.
15245 (xftfont_end_for_frame): New function.
15246 (syms_of_xftfont): Set xftfont_driver.end_for_frame.
15247
15248 * ftxfont.c (ftxfont_get_gcs): Rename from ftxfont_create_gcs.
15249 Change argument. Cache GCs in the per-frame data.
15250 (struct ftxfont_frame_data): New struct.
15251 (ftxfont_draw_bitmap): New arg gc_fore and flush.
15252 (ftxfont_prepare_face, ftxfont_done_face): Delete them.
15253 (ftxfont_draw): Get GCs by ftxfont_get_gcs. Reflect s->clip in GCs.
15254 (ftxfont_end_for_frame): New function.
15255 (syms_of_ftxfont): Set ftxfont_driver.end_for_frame.
15256
15257 * ftfont.c (ftfont_get_bitmap): Set bitmap->bits_per_pixel.
15258
152592008-02-01 Kenichi Handa <handa@m17n.org>
15260
15261 * xselect.c (Vselection_coding_system)
15262 (Vnext_selection_coding_system): Delete them.
15263 (syms_of_xselect): Don't declare selection-coding-system and
15264 next-selection-coding-system. They are declared in select.el.
15265
152662008-02-01 Jason Rumney <jasonr@gnu.org>
15267
15268 * w32term.h (WM_UNICHAR, UNICODE_NOCHAR): Define if not already.
15269
15270 * w32fns.c: Include imm.h.
15271 (get_composition_string_fn, get_ime_context_fn): New optional
15272 system functions.
15273 (globals_of_w32fns): Load them from imm32.dll.
15274 (ignore_ime_char): New flag.
15275 (w32_wnd_proc): Handle WM_UNICHAR, WM_IME_CHAR and
15276 WM_IME_ENDCOMPOSITION messages.
15277
15278 * w32term.c (w32_read_socket) [WM_UNICHAR]: Handle as
15279 MULTIBYTE_CHAR_KEYSTROKE_EVENT.
15280
152812008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15282
15283 * lread.c (READCHAR): Call readchar with the 2nd arg NULL.
15284 (READCHAR_REPORT_MULTIBYTE): New macro.
15285 (readchar): New 2nd arg MULTIBYTE.
15286 (read1): Use READCHAR_REPORT_MULTIBYTE for the first read.
15287 Make symbol's name multibyte according to the multibyteness of the
15288 source.
15289
152902008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15291
15292 * xfaces.c (face_for_overlay_string): Call lookup_face with
15293 correct arguments (fix of synching with the trunk).
15294
152952008-02-01 Kenichi Handa <handa@m17n.org>
15296
15297 * font.c (font_prop_validate_symbol, font_prop_validate_style)
15298 (font_prop_validate_non_neg, font_prop_validate_spacing):
15299 Delete argument prop_index.
15300 (font_property_table): Change arguments to validater. Change Callers.
15301 (font_lispy_object): Delete.
15302 (font_at): Use font_find_object instead fo font_lispy_object.
15303
153042008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15305
15306 * fileio.c (Fexpand_file_name): Adjust multibyteness of directory
15307 and file names.
15308
153092008-02-01 Jason Rumney <jasonr@gnu.org>
15310
15311 * w32font.c (add_font_name_to_list): Avoid vertical fonts.
15312 (font_matches_spec): Remove debug output.
15313 (add_font_entity_to_list): Avoid using substituted fonts.
15314
153152008-02-01 Jason Rumney <jasonr@gnu.org>
15316
15317 * doc.c (Fsnarf_documentation):
15318 * Makefile.in (temacs${EXEEXT}, mostlyclean): Undo last change.
15319
153202008-02-01 Miles Bader <miles@gnu.org>
15321
15322 * dispextern.h (struct glyph_row): Only define "clip" field if
15323 HAVE_WINDOW_SYSTEM is defined.
15324
153252008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
15326
15327 Fix up multi-tty merge.
15328
15329 * xterm.c (handle_one_xevent): Remove duplicate code and fix up nesting
15330 and indentation.
15331
15332 * xfaces.c (free_realized_face, clear_face_gcs):
15333 Include font_done_for_face in the input_blocked section, just in case.
15334
15335 * xdisp.c (decode_mode_spec): Use terminal-local coding systems.
15336 (get_char_face_and_encoding): Undo last change and remove the *other*
15337 duplicate definition (i.e. keep the one that's better scoped and that
15338 includes code for the font-backend).
15339
15340 * terminal.c (create_terminal): Default keyboard_coding to
15341 `no-conversion' and terminal_coding to `undecided'.
15342
15343 * lread.c (read1): Use XSETPVECTYPE to set a pseudovector's tag.
15344
15345 * fontset.c (free_realized_fontsets): Check that the table entry does
15346 contain a fontset before trying to compare it to `base'.
15347
15348 * emacs.c (main): Move syms_of_data, syms_of_fileio, syms_of_alloc,
15349 syms_of_charset, and syms_of_coding earlier because init_window_once
15350 now needs Vcoding_system_hash_table to be setup.
15351
15352 * coding.h (default_buffer_file_coding): Remove.
15353
15354 * coding.c (default_buffer_file_coding): Remove.
15355 (Fterminal_coding_system, Fkeyboard_coding_system): Use ->id rather
15356 than ->symbol, and use the terminal-local coding system.
15357 (syms_of_coding): Don't setup the coding-systems that are not
15358 terminal-local.
15359 (Fdefine_coding_system_internal): Use XCAR/XCDR.
15360
15361 * chartab.c (Fmake_char_table, make_sub_char_table, copy_char_table):
15362 Use XSETPVECTYPE now that XSETCHAR_TABLE doesn't set the tag anymore.
15363
15364 * alloc.c (Fmake_char_table, make_sub_char_table): Remove. They're now
15365 in chartab.c and were re-added here by mistake.
15366 (Fpurecopy): Use XSETPVECTYPE after copying a COMPILED pseudovector.
15367
15368 * doc.c (Fsnarf_documentation):
15369 * Makefile.in (temacs${EXEEXT}, mostlyclean): Move buildobj.lst from
15370 src to etc.
15371
15372 * ChangeLog.10: Add mistakenly removed entry.
15373
153742008-02-01 Dan Nicolaescu <dann@ics.uci.edu>
15375
15376 * Makefile.in (fringe.o, minibuf.o): Fix dependencies.
15377
153782008-02-01 Miles Bader <miles@gnu.org>
15379
15380 * xdisp.c (get_char_face_and_encoding): Remove extraneous definition.
15381 Add extra args to FACE_FOR_CHAR.
15382
153832008-02-01 Kenichi Handa <handa@m17n.org>
15384
15385 * keymap.c (where_is_internal_1): If key is a cons, store the copy
15386 in sequence.
15387
15388 * chartab.c (map_sub_char_table, map_char_table): If the range
15389 contains just one character, call the function with that character
15390 even if the depth is not 3.
15391
153922008-02-01 Jason Rumney <jasonr@gnu.org>
15393
15394 * w32font.c (w32font_text_extents): Calculate metrics for the
15395 whole string.
15396
153972008-02-01 Jason Rumney <jasonr@gnu.org>
15398
15399 * w32xfns.c (get_next_msg): Consolidate WM_PAINT messages.
15400
154012008-02-01 Jason Rumney <jasonr@gnu.org>
15402
15403 * w32term.c (x_set_glyph_string_clipping): Use
15404 get_glyph_string_clip_rects.
15405 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
15406 Adjust for the change of struct glyph_string.
15407
15408 * w32font.c (w32font_draw): Do clipping here.
15409
154102008-02-01 Kenichi Handa <handa@m17n.org>
15411
15412 * xftfont.c (xftfont_draw): Adjust for the change of struct
15413 glyph_string.
15414
15415 * xterm.c (x_set_glyph_string_clipping): Use
15416 get_glyph_string_clip_rects.
15417 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
15418 Adjust for the change of struct glyph_string.
15419
15420 * xdisp.c (get_glyph_string_clip_rects): Reflect s->row->clip to
15421 the resulting clip(s}.
15422 (expose_overlaps): Add arg r. Change callers. Set it to
15423 row->clip temporarily.
15424 (expose_window): Redraw rows overlapping the exposed area.
15425
15426 * dispextern.h (struct glyph_row): New member clip.
15427 (struct glyph_string): Delete members clip_x, clip_y, clip_width,
15428 clip_height, new member clip, and num_clips.
15429
154302008-02-01 Kenichi Handa <handa@m17n.org>
15431
15432 * data.c (Fchar_or_string_p): Fix docstring.
15433
154342008-02-01 Kenichi Handa <handa@m17n.org>
15435
15436 * xftfont.c (xftfont_draw): If s->font_info != s->face->font_info,
15437 create a temporary XftDraw object.
15438
154392008-02-01 Kenichi Handa <handa@m17n.org>
15440
15441 * font.c (Ffontp): Fix docstring.
15442
15443 * coding.c (detect_coding_iso_2022): Don't treat SI/SO codes as a
15444 strong evidence of ISO-2022.
15445
154462008-02-01 Kenichi Handa <handa@m17n.org>
15447
15448 * abbrev.c (abbrev_check_chars): Use CHAR_TABLE_REF, not
15449 SYNTAX_ENTRY_FOLLOW_PARENT.
15450
154512008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
15452
15453 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and change
15454 its type.
15455 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
15456 Update to the new type of weak_hash_tables and next_weak.
15457
15458 * lisp.h (struct Lisp_Hash_Table): Change next_weak from Lisp_Object to
15459 a plain C pointer to Lisp_Hash_Table.
15460
15461 * lisp.h (XGCTYPE, GC_HASH_TABLE_P, GC_NILP, GC_NUMBERP, GC_NATNUMP)
15462 (GC_INTEGERP, GC_SYMBOLP, GC_MISCP, GC_VECTORLIKEP, GC_STRINGP)
15463 (GC_CONSP, GC_FLOATP, GC_VECTORP, GC_OVERLAYP, GC_MARKERP)
15464 (GC_INTFWDP, GC_BOOLFWDP, GC_OBJFWDP, GC_BUFFER_OBJFWDP)
15465 (GC_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP)
15466 (GC_KBOARD_OBJFWDP, GC_PSEUDOVECTORP, GC_WINDOW_CONFIGURATIONP)
15467 (GC_PROCESSP, GC_WINDOWP, GC_SUBRP, GC_COMPILEDP, GC_BUFFERP)
15468 (GC_SUB_CHAR_TABLE_P, GC_CHAR_TABLE_P, GC_BOOL_VECTOR_P, GC_FRAMEP)
15469 (GC_EQ): Remove since they've been identical to their non-GC_
15470 alter-egos ever since the markbit was eradicated.
15471
15472 * alloc.c:
15473 * buffer.c:
15474 * buffer.h:
15475 * data.c:
15476 * fileio.c:
15477 * filelock.c:
15478 * fns.c:
15479 * frame.h:
15480 * lisp.h:
15481 * macterm.c:
15482 * print.c:
15483 * process.c:
15484 * w32fns.c:
15485 * w32menu.c:
15486 * w32term.c:
15487 * xfns.c:
15488 * xmenu.c:
15489 * xterm.c: Replace uses of GC_* macros with the non-GC_ versions.
15490
154912008-02-01 Kenichi Handa <handa@m17n.org>
15492
15493 * chartab.c (map_sub_char_table): Make it work for the top-level
15494 char-table. Fix handling of parent char-table.
15495 (map_char_table): Adjust for the above change.
15496
154972008-02-01 Jason Rumney <jasonr@gnu.org>
15498
15499 * w32font.c (Qgdi): Rename from Qw32.
15500
155012008-02-01 Jason Rumney <jasonr@gnu.org>
15502
15503 * w32bdf.c (get_quoted_string): Make function static.
15504
155052008-02-01 Kenichi Handa <handa@m17n.org>
15506
15507 * xftfont.c (xftfont_open): If one of font's ASCII glyph has
15508 bigger ascent and descent than those of the font, use them as
15509 font's ascent and descent.
15510
155112008-02-01 Kenichi Handa <handa@m17n.org>
15512
15513 * Makefile.in (${lispsource}international/charprop.el): Move this
15514 target within "#ifdef HAVE_UNIDATA" and "#endif".
15515
155162008-02-01 Kenichi Handa <handa@m17n.org>
15517
15518 * Makefile.in (lisp): Add ${lispsource}language/tai-viet.el.
15519 (shortlisp): Add ../lisp/language/tai-viet.el.
15520
155212008-02-01 Ulrich Mueller <ulm@gentoo.org>
15522
15523 * Makefile.in (${lispsource}international/charprop.el): Depend on
15524 temacs${EXEEXT}.
15525
155262008-02-01 Jason Rumney <jasonr@gnu.org>
15527
15528 * w32font.c (w32font_close): Delete the GDI font object.
15529
15530 * w32menu.c: Include character.h.
15531
15532 * w32proc.c: Likewise.
15533
15534 * w32select.c: Likewise.
15535
15536 * makefile.w32-in (w32proc.o): Depend on character.h.
15537
155382008-02-01 Jason Rumney <jasonr@gnu.org>
15539
15540 * w32fns.c (syms_of_w32fns): Use DEFSYM macro.
15541
15542 * w32menu.c (syms_of_w32menu): Likewise.
15543
15544 * w32proc.c (syms_of_ntproc): Likewise.
15545
15546 * w32select.c (syms_of_w32select): Likewise.
15547
15548 * w32term.c (syms_of_w32term): Likewise.
15549
155502008-02-01 Jason Rumney <jasonr@gnu.org>
15551
15552 * w32font.c (w32font_draw): Delete brush after using it.
15553
155542008-02-01 Jason Rumney <jasonr@gnu.org>
15555
15556 * w32font.c (w32font_open): Don't set font_idx.
15557 (w32font_text_extents): Try GetTextExtentPoint32W before defaulting
15558 to font settings.
15559 (w32font_draw): Fill background explicitly.
15560
155612008-02-01 Jason Rumney <jasonr@gnu.org>
15562
15563 * w32term.c (w32_initialize): Don't call w32font_initialize.
15564
15565 * w32font.c (w32font_info): Remove subranges.
15566 (QCsubranges, Qmodern, Qswiss, Qroman): Remove.
15567 (QCfamily, Qmonospace, Qsans_serif, Qmono, Qsans, Qsans__serif)
15568 (Qraster, Qoutline, Qlatin, Qgreek, Qcoptic, Qcyrillic, Qarmenian)
15569 (Qhebrew, Qarabic, Qsyriac, Qnko, Qthaana, Qdevanagari, Qbengali)
15570 (Qgurmukhi, Qgujarati, Qoriya, Qtamil, Qtelugu, Qkannada)
15571 (Qmalayalam, Qsinhala, Qthai, Qlao, Qtibetan, Qmyanmar, Qgeorgian)
15572 (Qhangul, Qethiopic, Qcherokee, Qcanadian_aboriginal, Qogham)
15573 (Qrunic, Qkhmer, Qmongolian, Qsymbol, Qbraille, Qhan)
15574 (Qideographic_description, Qcjk_misc, Qkana, Qbopomofo, Qkanbun)
15575 (Qyi, Qbyzantine_musical_symbol, Qmusical_symbol, Qmathematical):
15576 New symbols.
15577 (font_callback_data): New struct.
15578 (w32font_list, w32font_match): Use it.
15579 (w32font_open): Don't populate subranges.
15580 (w32font_has_char): Use script Lisp symbols, not subrange bitmask.
15581 (w32font_encode_char): Always return unicode code-point as-is.
15582 (w32font_text_extents): Supply a transformation matrix to
15583 GetGlyphOutline. Never look up by glyph index. Avoid looping
15584 twice. Use unicode version of GetTexExtentPoint32 instead of
15585 glyph index version.
15586 (set_fonts_frame): Remove.
15587 (w32_enumfont_pattern_entity): Add frame parameter, use it to
15588 set frame parameter. Use backward compatible fake foundries.
15589 Save generic family in extra slot under QCfamily. Make width slot
15590 constant. Save QCspacing value. Save list of scripts instead of
15591 binary subranges.
15592 (w32_generic_family, logfonts_match, font_matches_spec): New functions.
15593 (add_font_entity_to_list): Use font_callback_data struct. Filter
15594 unwanted fonts.
15595 (add_one_font_entity_to_list): Use font_callback_data struct.
15596 (w32_registry): Default to iso10646_1.
15597 (fill_in_logfont): Use dpi from extra slot. Don't bother with
15598 string font registries. Don't fill in font name if it is a generic
15599 family name, fill family instead. Use spacing, family and script
15600 extra info to fill pitch, family and charset fields.
15601 (list_all_matching_fonts): Use font_callback_data struct.
15602 (unicode_range_for_char): Remove.
15603 (font_supported_scripts): New function.
15604 (w32font_initialize): Remove.
15605 (syms_of_w32font): Update which symbols are defined.
15606
156072008-02-01 Jason Rumney <jasonr@gnu.org>
15608
15609 * font.c (font_pixel_size): Reverse assq_no_quit args.
15610
15611 * w32term.h (FONT_WIDTH): Report max width, not average.
15612 (FONT_MAX_WIDTH): Remove.
15613 (FONT_AVG_WIDTH): New macro.
15614
15615 * xfaces.c (Fx_list_fonts) [WINDOWSNT]: Remove Windows only
15616 redefinition of FONT_WIDTH.
15617
15618 * w32term.c (x_font_min_bounds): Use FONT_AVG_WIDTH.
15619 (w32_cache_char_metrics): Use FONT_WIDTH.
15620
15621 * w32fns.c (w32_load_system_font, w32_list_fonts): Use FONT_AVG_WIDTH.
15622
156232008-02-01 Jason Rumney <jasonr@gnu.org>
15624
15625 * w32font.c (w32font_open): Make lfHeight negative.
15626
15627 * w32fns.c (x_default_font_parameter): Use new style font name.
15628 (Fx_create_frame, x_create_tip_frame): Initialize resx and resy.
15629
156302008-02-01 Jason Rumney <jasonr@gnu.org>
15631
15632 * w32font.c (QCsubranges): New symbol.
15633 (w32font_open, w32font_has_char): Get subranges from subproperty
15634 of extra.
15635 (w32_enumfont_pattern_entity): Set subranges as subproperty of extra.
15636 (syms_of_w32font): Define :subranges symbol.
15637
15638 * font.c (font_put_extra): Expose externally.
15639
15640 * font.h (font_put_extra): Move declaration from font.c.
15641
15642 * font.c (Ffont_get): Use font driver to determine otf capability.
15643 (adjust_anchor): Check if driver defines anchor_point before using.
15644
15645 * w32font.c (w32font_open): Handle size, height and pixel_size better.
15646 (w32font_draw): Use options.
15647 (w32_enumfont_pattern_entity): Set size to 0 for scalable fonts.
15648 Fix detection of truetype fonts.
15649 (registry_to_w32_charset): Handle charsets other than iso8859-1
15650 expressed as lisp symbols.
15651 (w32_registry): Express charset as lisp symbol.
15652 (fill_in_logfont): Reverse pixel and point height logic.
15653 Don't set width here. Set quality to default.
15654
15655 * w32fns.c (w32_load_system_font): Fix detecting FIXED_PITCH fonts.
15656 (x_to_w32_font): Fill in lfPitchAndFamily correctly.
15657
15658 * xterm.c (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
15659 Remove redundant loop and allocation.
15660
15661 * makefile.w32-in (font.o, w32font.o): New objects.
15662 (fontset.o, xdisp.o, xfaces.o, w32fns.o, w32term.o): Depend on font.h.
15663 (FONTOBJ): New group of objects conditioned on USE_FONT_BACKEND.
15664
15665 * xdisp.c (fill_composite_glyph_string): Make the first arg to
15666 STORE_XCHARB a valid l-value.
15667
15668 * w32term.c (w32_native_per_char_metric): Swap width and rbearing
15669 calculations for non-Truetype fonts.
15670 (x_draw_glyph_string): Sync with xterm.c.
15671 (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
15672 Remove redundant code.
15673 (w32_initialize) [USE_FONT_BACKEND]: Call w32font_initialize.
15674
15675 * w32term.h (w32_output_data) [USE_FONT_BACKEND]: Add fontp member.
15676 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro from xterm.h.
15677
15678 * w32fns.c [USE_FONT_BACKEND]: Port font backend changes from xfns.c.
15679 (x_to_w32_charset, w32_to_x_charset): Expose externally.
15680
15681 * w32font.c: New file for w32 font backend.
15682
156832008-02-01 Kenichi Handa <handa@m17n.org>
15684
15685 * term.c: Don't include "buffer.h" twice.
15686
156872008-02-01 Kenichi Handa <handa@m17n.org>
15688
15689 * character.c (Funibyte_string): New function.
15690 (syms_of_character): Defsubr it.
15691
156922008-02-01 Jason Rumney <jasonr@gnu.org>
15693
15694 * w32term.c [USE_FONT_BACKEND]:
15695 (x_get_font_repertory, note_mouse_movement, x_set_mouse_face_gc)
15696 (x_set_glyph_string_clipping, x_set_glyph_string_clipping_exactly)
15697 (x_draw_glyph_string, x_draw_glyph_string_foreground)
15698 (x_draw_composite_glyph_string_foreground, x_new_fontset2)
15699 (x_free_frame_resources): Sync with xterm.c.
15700
157012008-02-01 Andreas Schwab <schwab@suse.de>
15702
15703 * lread.c (read1): Use CHAR_TABLE_STANDARD_SLOTS to validate
15704 char-table size.
15705
157062008-02-01 Kenichi Handa <handa@m17n.org>
15707
15708 * font.c (check_otf_features): Define it regardless of HAVE_LIBOTF.
15709
157102008-02-01 Kenichi Handa <handa@m17n.org>
15711
15712 * ftfont.c (ftfont_driver): Delete font_otf_gsub and
15713 font_otf_gpos, add font_drive_otf.
15714
15715 * fontset.c (fontset_find_font): Pay attention to font size
15716 specified for a font.
15717 (reorder_font_vector): Check contents of font_def.
15718
15719 * font.c (struct otf_list): Delete it.
15720 (otf_list): Make it a lisp variable.
15721 (otf_open): Use lispy otf_list.
15722 (generate_otf_features): Rename from parse_gsub_gpos_spec.
15723 (check_otf_features): New function.
15724 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
15725 New functions.
15726 (font_drive_otf): New function merging font_otf_gsub and
15727 font_otf_gpos.
15728 (font_open_for_lface): New arg spec. Change argument order.
15729 (font_load_for_face): Adjust for the change of font_open_for_lface.
15730 (Ffont_drive_otf): New function merging Ffont_otf_gsub and
15731 Ffont_otf_gpos.
15732 (syms_of_font): Staticpro otf_list. Delete defsubr of
15733 Sfont_otf_gsub and Sfont_otf_gpos. Defsubr Sfont_drive_otf.
15734
15735 * xfaces.c (set_font_frame_param): Adjust for the change of
15736 font_open_for_lface.
15737
15738 * font.h (font_open_for_lface): Adjust prototype.
15739 (struct font_driver): Delete members otf_gsub and otf_gpos, add
15740 member otf_drive.
15741 (font_otf_gsub, font_otf_gpos): Delete externs.
15742 (font_drive_otf): Extern it.
15743
157442008-02-01 Kenichi Handa <handa@m17n.org>
15745
15746 * font.c (font_at): If the window W is not on a window system,
15747 return Qnil.
15748
15749 * coding.c (produce_chars, encode_coding): Don't call
15750 insert_from_gap if no characters to produce.
15751
157522008-02-01 Kenichi Handa <handa@m17n.org>
15753
15754 * fontset.c (free_realized_fontsets): Avoid unnecessary call of
15755 Fclear_face_cache.
15756
15757 * xfaces.c (face_for_font): Check also face->font==font->font.font.
15758
157592008-02-01 Miles Bader <miles@gnu.org>
15760
15761 * emacs.c (main): Change default value of `enable_font_backend' to 1.
15762 Parse "--disable-font-backend" option.
15763 (standard_args): Add "--disable-font-backend" option.
15764
157652008-02-01 Kenichi Handa <handa@m17n.org>
15766
15767 * fontset.c (fontset_find_font): New function.
15768 (fontset_font): Use fontset_find_font.
15769 (make_fontset_for_ascii_face): Don't set face ID in rfont_def.
15770 Register the specified font for all Latin characters.
15771 (new_fontset_from_font): Register the specified font for all Latin
15772 characters.
15773 (dump_fontset): For a realized fontset, include the base fontset
15774 name in the returned vector.
15775
157762008-02-01 Kenichi Handa <handa@m17n.org>
15777
15778 * character.h (CHAR_STRING): Cast C to unsigned on calling
15779 char_string.
15780
15781 * character.c (char_string): Type of arg C changed to unsigned.
15782 Signal an error if C is an invalid character code.
15783
15784 * editfns.c (general_insert_function, Fchar_to_string):
15785 Use CHARACTERP, not INTEGERP.
15786
157872008-02-01 Kenichi Handa <handa@m17n.org>
15788
15789 * character.h (MIN_MULTIBYTE_LEADING_CODE)
15790 (MAX_MULTIBYTE_LEADING_CODE): New macros.
15791
15792 * regex.c (analyse_first): Fix for multibyte characters in "case
15793 charset:" and "case categoryspec:".
15794
157952008-02-01 Andreas Schwab <schwab@suse.de>
15796
15797 * Makefile.in (LIBES): Move standard libraries to the end.
15798
157992008-02-01 Kenichi Handa <handa@m17n.org>
15800
15801 * alloc.c (Fgarbage_collect): If nextb->text->inhibit_shrinking is
15802 nonzero, don't shrink the buffer nextb.
15803
15804 * buffer.h (struct buffer_text): New member inhibit_shrinking.
15805
15806 * coding.c (coding_alloc_by_making_gap): New arg offset.
15807 (alloc_destination): Call coding_alloc_by_making_gap with the arg
15808 offset.
15809 (decode_coding_iso_2022): Update coding->safe_charsets.
15810 (decode_coding_gap): Temporarily set
15811 current_buffer->text->inhibit_shrinking to 1.
15812
158132008-02-01 Kenichi Handa <handa@m17n.org>
15814
15815 * xterm.c (x_draw_composite_glyph_string_foreground): Fix
15816 indexing into elements of s->cmp and s->char2b.
15817
158182008-02-01 Juanma Barranquero <lekktu@gmail.com>
15819
15820 * regex.c (RE_STRING_CHAR_AND_LENGTH) [! emacs]: Add missing arg `len'.
15821
158222008-02-01 Kenichi Handa <handa@m17n.org>
15823
15824 * regex.c (GET_CHAR_BEFORE_2, GET_CHAR_AFTER): Check the variable
15825 target_multibyte instead of multibyte.
15826 (re_match_2_internal): Call bcmp_translate with target_multibyte.
15827 (bcmp_translate): Change the argument name from multibyte to
15828 target_multibyte.
15829
158302008-02-01 Kenichi Handa <handa@m17n.org>
15831
15832 These changes are to compile a regexp into a pattern that can be
15833 used both for multibyte and unibyte targets.
15834
15835 * Makefile.in (search.o): Depend on charset.h.
15836
15837 * character.c (multibyte_char_to_unibyte_safe): New function.
15838
15839 * search.c: Include "charset.h".
15840 (compile_pattern_1): Delete argument multibyte. Don't set
15841 cp->buf.target_multibyte here. Set cp->buf.charset_unibyte.
15842 (compile_pattern): Don't compare cp->buf.target_multibyte.
15843 Compare cp->buf.charset_unibyte.
15844 (compile_pattern): Set cp->buf.target_multibyte.
15845
15846 * lisp.h (multibyte_char_to_unibyte_safe): Extern it.
15847
15848 * regex.h (struct re_pattern_buffer): New member charset_unibyte.
15849
15850 * regex.c (RE_STRING_CHAR, RE_STRING_CHAR_AND_LENGTH): New arg
15851 multibyte. Change callers.
15852 (RE_CHAR_TO_MULTIBYTE, RE_CHAR_TO_UNIBYTE): New macros.
15853 (MAKE_CHAR_MULTIBYTE, MAKE_CHAR_UNIBYTE): Delete. Change callers
15854 to use RE_CHAR_TO_MULTIBYTE and RE_CHAR_TO_UNIBYTE, respectively.
15855 (SETUP_ASCII_RANGE, SETUP_UNIBYTE_RANGE): New macros.
15856 (SETUP_MULTIBYTE_RANGE): Generate a more compact range_table.
15857 (regex_compile): Make the compiled pattern usable both for
15858 multibyte and unibyte targets.
15859 (analyse_first): Make the fastmap usable both for multibyte and
15860 unibyte targets.
15861 (TRANSLATE_VIA_MULTIBYTE): Delete.
15862 (re_match_2_internal): Pay attention to the case that the
15863 multibyteness of bufp and target may be different.
15864
158652008-02-01 Kenichi Handa <handa@m17n.org>
15866
15867 * xdisp.c (x_produce_glyphs): When a font is not found, make the
15868 empty box occupy at least one column width.
15869
158702008-02-01 Miles Bader <miles@gnu.org>
15871
15872 * Makefile.in: Remove redundant HAVE_XFT clause.
15873
158742008-02-01 Kenichi Handa <handa@m17n.org>
15875
15876 * xrdb.c (x_load_resources): Setup the default fontSet X resource.
15877
158782008-02-01 Kenichi Handa <handa@m17n.org>
15879
15880 * fontset.c (Finternal_char_font): Fix for the case of POSITION
15881 being nil.
15882
158832008-02-01 Kenichi Handa <handa@m17n.org>
15884
15885 * xftfont.c (xftfont_open): Call FcConfigSubstitute.
15886
158872008-02-01 Kenichi Handa <handa@m17n.org>
15888
15889 * xftfont.c (xftfont_open): Don't enable antialias explicitly.
15890
158912008-02-01 Kenichi Handa <handa@m17n.org>
15892
15893 * search.c (simple_search): Fix previous change.
15894
158952008-02-01 Kenichi Handa <handa@m17n.org>
15896
15897 * xftfont.c (ftfont_font_format): Extern declaration.
15898
15899 * frame.c (x_set_font): Fix the second arg to fs_query_fontset.
15900
15901 * xfont.c (xfont_driver): Initialize ftfont_driver.type by 0.
15902 (xfont_list): Don't directly use Lisp_Object as an operand of &&.
15903
15904 * ftfont.c (ftfont_driver): Initialize ftfont_driver.type by 0.
15905 (ftfont_font_format): Fix previous change.
15906
15907 * font.h (Ffont_xlfd_name): EXFUN it.
15908
15909 * font.c (font_parse_xlfd): Fix the array size of `f'.
15910 (register_font_driver): Use EQ to compare driver->type.
15911
15912 * xfns.c (xic_create_xfontset2) [USE_FONT_BACKEND]: New function.
15913 (create_frame_xic) [USE_FONT_BACKEND]: Call xic_create_xfontset2.
15914 (xic_set_xfontset) [USE_FONT_BACKEND]: Likewise.
15915
159162008-02-01 Kenichi Handa <handa@m17n.org>
15917
15918 * ftfont.c (ftfont_pattern_entity, ftfont_list_generic_family)
15919 (ftfont_list, ftfont_font_format): Check if FC_FONTFORMAT is defined.
15920
159212008-02-01 Kenichi Handa <handa@m17n.org>
15922
15923 * xfont.c (xfont_open): Set font->format.
15924
15925 * xftfont.c (xftfont_open): Set font->format.
15926
15927 * ftfont.c (ftfont_pattern_entity): Add fontformat in a pattern.
15928 (ftfont_list): Include FC_FONTFORMAT in FcObject.
15929 (ftfont_open): Set font->format.
15930 (ftfont_font_format): New function.
15931
15932 * font.h (struct font): New member format.
15933
15934 * font.c (Qopentype): New variable.
15935 (syms_of_font): Defsym it.
15936 (Fquery_font): Change the format of the last element of the return
15937 value.
15938
159392008-02-01 Kenichi Handa <handa@m17n.org>
15940
15941 * xfns.c (xic_create_xfontset): Try the default fontset name as a
15942 last resort.
15943
159442008-02-01 Kenichi Handa <handa@m17n.org>
15945
15946 * coding.c (detect_coding_charset): Fix detection of multi-byte
15947 charset.
15948
159492008-02-01 Bob Halley <halley@play-bow.org> (tiny change)
15950
15951 * ccl.c (ccl_driver): If DST is NULL, set ccl->produced to 0.
15952
159532008-02-01 Kenichi Handa <handa@m17n.org>
15954
15955 * xdisp.c (get_next_display_element): Set it->face_id for the
15956 first component of a composition.
15957 (x_produce_glyphs): Check if the font is changed or not for composition.
15958
159592008-02-01 Kenichi Handa <handa@m17n.org>
15960
15961 * fontset.c (Qlatin): New variable.
15962 (syms_of_fontset): Define it as a lisp symbol.
15963 (Fset_fontset_font): If TARGET is `latin', use FONT_SPEC for ASCII.
15964
159652008-02-01 Kenichi Handa <handa@m17n.org>
15966
15967 * font.c (font_unparse_fcname): Pay attention to the case that
15968 some of font property is a null string.
15969
159702008-02-01 Kenichi Handa <handa@m17n.org>
15971
15972 * term.c: Include "composite.h".
15973 (encode_terminal_code): Output all components of composition.
15974 Check the size of encode_terminal_src.
15975 (produce_glyphs): For composition, call produce_composite_glyph.
15976 (append_composite_glyph, produce_composite_glyph): New functions.
15977
15978 * xdisp.c (x_produce_glyphs): In handling composition, if a font
15979 is not found, get font_info from the current ascii face.
15980
159812008-02-01 Kenichi Handa <handa@m17n.org>
15982
15983 * fileio.c (Finsert_file_contents): On replacing, temporarily bind
15984 buffer-file-name to Qnil before calling insert_from_buffer.
15985
15986 * font.c (font_unparse_fcname): Pay attention to the case that
15987 foundry is a null string.
15988
159892008-02-01 Kenichi Handa <handa@m17n.org>
15990
15991 * ftfont.c (ftfont_list): Allow registry "unicode-sip".
15992
15993 * font.c (Qunicode_sip): New variable.
15994 (syms_of_font): Declare it as a Lisp symbol.
15995
15996 * font.h (Qunicode_sip): Extern it.
15997
159982008-02-01 Kenichi Handa <handa@m17n.org>
15999
16000 * composite.c (get_composition_id): Pay attention to TAB component.
16001
16002 * xterm.c (x_draw_composite_glyph_string_foreground): Don't draw
16003 TAB. Adjust for the change of s->char2b which always points to
16004 the first element of allocated memory.
16005
16006 * xftfont.c (xftfont_text_extents): Fix calculation of descent value.
16007
16008 * xdisp.c (handle_composition_prop): Set it->c to the first
16009 non-TAB component.
16010 (fill_composite_glyph_string): Change argument.
16011 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the above change.
16012 (x_produce_glyphs): Fix handling of left/right padding.
16013
160142008-02-01 Kenichi Handa <handa@m17n.org>
16015
16016 * coding.c (detect_coding_system): Fix for handling off
16017 inhibit_iso_escape_detection. Fix for the case that no coding
16018 system is defined for a specific coding category.
16019
160202008-02-01 Kenichi Handa <handa@m17n.org>
16021
16022 * font.c (font_matching_entity): Delete unused local var.
16023
16024 * xftfont.c (xftfont_open): Call XftDefaultSubstitute before
16025 opening a font.
16026
16027 * fileio.c (Finsert_file_contents): On recovering a file, assume
16028 Unix-like eol.
16029 (choose_write_coding_system): On auto-saving a file, force
16030 Unix-like eol.
16031
16032 * coding.c (setup_coding_system): Fix setting of
16033 coding->common_flags based on eol_type.
16034 (coding_inherit_eol_type): If PARENT is not nil, be sure to
16035 inherit from it.
16036
160372008-02-01 Kenichi Handa <handa@m17n.org>
16038
16039 * alloc.c (NSTATICS): Increas to 0x600.
16040
160412008-02-01 Kenichi Handa <handa@m17n.org>
16042
16043 * ftfont.c (ftfont_driver): Set ftfont_driver.match to ftfont_match.
16044 (ftfont_list): Don't check :name property.
16045 (ftfont_match): New function.
16046 (ftfont_pattern_entity): If the pattern doesn't contain
16047 FC_SPACING, don't assume FC_MONO.
16048
16049 * font.h (struct font_driver): New member `match'.
16050 (font_update_drivers): Adjust prototype.
16051
16052 * font.c (font_parse_fcname, font_parse_name): Don't change :name
16053 property of FONT.
16054 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE, check_gstring): Define
16055 them unconditionally.
16056 (font_matching_entity): New function.
16057 (font_open_by_name): Try font_matching_entity if exact match is
16058 not found.
16059 (font_update_drivers): Delete the arg FONT. Return a list of
16060 actually used backends. Don't free faces, font caches here.
16061 Don't store data in frame parameters. Don't call x_set_font.
16062 (Ffont_spec): Store :name property as is.
16063 (Ffont_get): Check HAVE_LIBOTF before calling font_otf_capability.
16064 (Ffont_otf_gsub): Call font->driver->otf_gsub instead of font_otf_gsub.
16065 (Ffont_otf_gpos): Call font->driver->otf_gpos instead of font_otf_gpos.
16066 (Ffont_otf_alternates): Check if the driver has otf_gsub function.
16067 Call font->driver->otf_gsub instead of font_otf_gsub.
16068
16069 * frame.c (x_set_font_backend): Do more works that were done in
16070 font_update_drivers before.
16071
16072 * xfont.c (xfont_match): New function.
16073 (xfont_driver): Set xfont_driver.match to xfont_match.
16074 (xfont_draw): Set font in GC if necessary.
16075
16076 * ftxfont.c (ftxfont_match): New function.
16077 (syms_of_ftxfont): Set ftxfont_driver.match to ftxfont_match.
16078
16079 * xftfont.c (xftfont_match): New function.
16080 (syms_of_xftfont): Set xftfont_driver.match to xftfont_match.
16081
160822008-02-01 Kenichi Handa <handa@m17n.org>
16083
16084 * font.h (struct font): New member scalable.
16085 (struct font_driver): New arg ALTERANTE_SUBST to otf_gsub.
16086 (font_otf_gsub): Adjust prototype.
16087
16088 * font.c (font_otf_capability): Fix handling of the default langsys.
16089 (parse_gsub_gpos_spec): Change type to void. New arg nbytes.
16090 Check the contents of SPEC.
16091 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE): New macros.
16092 (check_gstring): New function.
16093 (REPLACEMENT_CHARACTER): New macro.
16094 (font_otf_gsub): New arg alternate_subst. Be sure to set all
16095 glyph codes of GSTRING.
16096 (font_otf_gpos): Be sure to set all glyph codes of GSTRING.
16097 (font_prepare_composition): Set cmp->glyph_len.
16098 (font_open_entity): Set font->scalable.
16099 (Ffont_get): Handle :otf property.
16100 (Ffont_otf_gsub, Ffont_otf_gpos, Ffont_otf_alternates): New
16101 functions.
16102 (Fquery_font): Use font->font.full_name.
16103 (syms_of_font): Defsubr Sfont_otf_gsub, Sfont_otf_gpos, and
16104 Sfont_otf_alternates.
16105
16106 * ftfont.c (ftfont_open): Set font->font.full_name and
16107 font->font.name properly. Fix calculation of font->font.height
16108 and font->min_width.
16109
16110 * ftxfont.c (ftxfont_create_gcs): New function.
16111 (ftxfont_draw_bitmap): Fix arg to ftfont_driver.get_bitmap.
16112 (ftxfont_draw_backgrond): Fix filling region.
16113 (ftxfont_default_fid): New function.
16114 (ftxfont_open): Set xfont->fid to the return value of
16115 ftxfont_default_fid.
16116 (ftxfont_prepare_face): Use ftxfont_create_gcs to create GCs.
16117 (ftxfont_done_face): Free only GCs that are created by
16118 ftxfont_create_gcs.
16119 (ftxfont_draw): If face->gc != s->gc, create proper GCs.
16120
16121 * xterm.c (x_set_glyph_string_clipping_exactly) [USE_FONT_BACKEND]:
16122 Clip to src->width, etc (not src->clip_XXX).
16123
16124 * xfns.c (x_create_tip_frame) [USE_FONT_BACKEND]: Handle
16125 FontBackend frame parameter.
16126
161272008-02-01 Kenichi Handa <handa@m17n.org>
16128
16129 * font.h (struct font_driver_list): New member `on'.
16130 (Fclear_font_cache): EXFUN it.
16131 (font_update_drivers): Extern it.
16132
16133 * font.c (font_unparse_fcname): Fix typo (swidth->width).
16134 (font_list_entities): Check driver_list->on.
16135 (register_font_driver): Initalize `on' member to 0.
16136 (font_update_drivers): New function.
16137 (Fclear_font_cache): Check driver_list->on.
16138
16139 * frame.h (Qfont_backend): Extern it.
16140 (x_set_font_backend): Extern it.
16141
16142 * frame.c (Qfont_backend): New variable.
16143 (frame_parms): New element for font-backend.
16144 (x_set_font_backend): New function.
16145
16146 * xfns.c (Fx_create_frame) [USE_FONT_BACKEND]: Handle
16147 FontBackend frame parameter.
16148 (x_frame_parm_handlers) [USE_FONT_BACKEND]: New element
16149 x_set_font_backend.
16150
16151 * xfont.c (xfont_list): Don't try listing by :name property if the
16152 name is not for XLFD.
16153
161542008-02-01 Kenichi Handa <handa@m17n.org>
16155
16156 * font.h (LGLYPH_FROM, LGLYPH_TO, LGLYPH_SET_FROM)
16157 (LGLYPH_SET_TO): New macros.
16158 (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WADJUST): Check if adjustment
16159 element of G is vector or not.
16160 (font_at): Extern it.
16161
16162 * font.c: Include window.h.
16163 (font_lispy_object): New function.
16164 (font_prepare_composition): Check LGLYPH_FORM (g) to detect the
16165 end of valid glyph.
16166 (font_close_object): Fix getting (struct font *).
16167 (font_at): New function.
16168 (Ffont_get): If FONT is a font-object, get entity from it.
16169 (Ffont_make_gstring): Initialize elements of glyphs with nil.
16170 (Ffont_fill_gstring): Use macro LGSTRING_XXX and LGLYPH_XXX. Fix
16171 range check.
16172 (Ffont_at): New function.
16173 (syms_of_font): Defsubr Sfont_at.
16174
16175 * xdisp.c (it_props): Move the entry for Qauto_composed to just
16176 before the entry for Qcomposition.
16177 (handle_auto_composed_prop): Call auto-composition-function with 4 args.
16178 (handle_composition_prop) [USE_FONT_BACKEND]: Set it->face_id from
16179 the font in gstring.
16180 (fill_composite_glyph_string) [USE_FONT_BACKEND]: Check
16181 LGLYPH_FORM (g) to detect the end of valid glyph.
16182 (x_produce_glyphs) [USE_FONT_BACKEND]: Don't update it->face_id if
16183 we are composing with gstring.
16184
16185 * xterm.c (x_draw_composite_glyph_string_foreground) [USE_FONT_BACKEND]:
16186 Check if adjustment is vector or not.
16187
16188 * Makefile.in (font.o): Make it depends on window.h.
16189
161902008-02-01 Kenichi Handa <handa@m17n.org>
16191
16192 * xterm.c (x_draw_composite_glyph_string_foreground): Check if
16193 adjustment is vector or not.
16194
161952008-02-01 Miles Bader <miles@gnu.org>
16196
16197 * character.h (CHECK_CHARACTER): Redefine in terms of CHECK_TYPE.
16198
161992008-02-01 Kenichi Handa <handa@m17n.org>
16200
16201 * font.h (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WIDTH, LGLYPH_WADJUST)
16202 (LGLYPH_SET_WIDTH): Adjusted for the change of LGLYPH format.
16203 (LGLYPH_ADJUSTMENT, LGLYPH_SET_ADJUSTMENT): New macros.
16204
16205 * font.c (font_merge_old_spec): Treat '*' in foundry as a wild card.
16206 (DEVICE_DELTA): Fix typo.
16207 (font_otf_gpos, font_prepare_compositio): Adjust for the change of
16208 LGLYPH format.
16209
16210 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
16211 the change of LGLYPH format.
16212
162132008-02-01 Kenichi Handa <handa@m17n.org>
16214
16215 * ftfont.c (ftfont_list): Fix typo.
16216 (ftfont_build_basic_charsets): Don't include letters with diacritics.
16217
162182008-02-01 Jan Djärv <jan.h.d@swipnet.se>
16219
16220 * xfaces.c (realize_non_ascii_face): Set face->extra to NULL.
16221
16222 * xftfont.c (xftfont_done_face): Call XftDrawDestroy only if
16223 xftface_info is non-NULL.
16224
162252008-02-01 Jan Djärv <jan.h.d@swipnet.se>
16226
16227 * ftfont.c (ftfont_list): Move misplaced #endif.
16228
162292008-02-01 Kenichi Handa <handa@m17n.org>
16230
16231 * ftfont.c (ftfont_list): Pay attention to the case that
16232 FC_CAPABILITY is not defined.
16233
162342008-02-01 Kenichi Handa <handa@m17n.org>
16235
16236 * xftfont.c (xftfont_open): Set charset related members to -1.
16237
16238 * ftfont.c (ftfont_list): Handle QCotf property. Fix handling of
16239 QCname.
16240 (ftfont_open): Set charset related members to -1.
16241
16242 * fontset.c (Votf_script_alist): New variable.
16243 (syms_of_fontset): Initialize it.
16244 (fontset_font): Delete unused variable.
16245
16246 * fontset.h (Votf_script_alist): Extern it.
16247
16248 * font.c (font_find_for_lface): Optimize code.
16249
16250 * font.h (font_close_object, font_merge_old_spec): Extern them.
16251
162522008-02-01 Kenichi Handa <handa@m17n.org>
16253
16254 * font.c (QCscalable, Qc, Qm, Qp, Qd): New variables.
16255 (syms_of_font): Initialize them.
16256 (font_pixel_size): Allow float value in dpi.
16257 (font_prop_validate_type): Delete.
16258 (font_prop_validate_symbol, font_prop_validate_style): Change argument.
16259 Change caller.
16260 (font_prop_validate_non_neg): Rename from font_prop_validate_size.
16261 (font_prop_validate_extra): Delete.
16262 (font_prop_validate_spacing): New function.
16263 (font_property_table): Add elements for all known properties.
16264 (get_font_prop_index): Rename from check_font_prop_name. New
16265 argument FROM. Change caller.
16266 (font_prop_validate): Validate all known properties.
16267 (font_put_extra): Delete argument force. Change caller.
16268 (font_expand_wildcards): Make it static. Fix the way of shrinking
16269 the possible range.
16270 (font_parse_xlfd): Delete argument merge. Fix handling of RESX,
16271 RESY, SPACING, and AVGWIDTH. Don't validate property values here.
16272 Change caller.
16273 (font_unparse_xlfd): Handle dpi, spacing, and scalable properties.
16274 (font_parse_fcname): Delete argument merge. Fix parsing of point
16275 size. Don't validate properties values here. Change caller.
16276 (font_unparse_fcname): Handle dpi, spacing, and scalable properties.
16277 (font_open_by_name): Delete unused variable.
16278 (Ffont_spec): Likewise. Validate property values.
16279 (Ffont_match_p): New function.
16280
16281 * font.h (QCscalable): Extern it.
16282 (font_parse_xlfd, font_parse_fcname): Adjust prototype.
16283
16284 * ftfont.c (ftfont_list): Handle properties dpi, spacing, and scalable.
16285
16286 * xfont.c (xfont_query_font): Adjust for the change of font_parse_xlfd.
16287 (xfont_list_pattern): New function.
16288 (xfont_list): Use xfont_list_pattern.
16289
162902008-02-01 Kenichi Handa <handa@m17n.org>
16291
16292 * font.h (Flist_fonts): EXFUN it.
16293
162942008-02-01 Jason Rumney <jasonr@gnu.org>
16295
16296 * w32term.c (w32_initialize): Add back smoothing_type and
16297 smoothing_enabled definitions.
16298
162992008-02-01 Kenichi Handa <handa@m17n.org>
16300
16301 * xterm.c (x_draw_glyph_string) [USE_FONT_BACKEND]: Check
16302 s->face->font on determining underline position.
16303
163042008-02-01 Kenichi Handa <handa@m17n.org>
16305
16306 * font.c (font_parse_xlfd): Fix generating of CHARSET_REGISTRY field.
16307 (font_has_char): Accept font-object too.
16308 (font_find_for_lface): Try at first with a size specified in face.
16309
163102008-02-01 Kenichi Handa <handa@m17n.org>
16311
16312 * frame.c (x_set_font) [USE_FONT_BACKEND]: Fix argument to
16313 font_open_by_name.
16314
163152008-02-01 Kenichi Handa <handa@m17n.org>
16316
16317 * font.h (QCspacing, QCdpi): Extern them.
16318 (enum font_spacing): New enum.
16319 (FONT_PIXEL_SIZE_QUANTUM): New macro.
16320
16321 * font.c (POINT_TO_PIXEL): Don't divide POINT by 10.
16322 (QCspacing, QCdpi): New variables.
16323 (syms_of_font): Initialize them.
16324 (font_pixel_size): New function.
16325 (font_put_extra): New function.
16326 (font_parse_xlfd): Fix handling of font size. Add QCdpi property
16327 in FONT_EXTRA.
16328 (font_parse_fcname): Handle enumerated values (e.g. bold).
16329 Fix handling font size. Add QCname property that contains only
16330 unknown properties.
16331 (font_score): Change argument. Change caller. Pay attention to
16332 FONT_PIXEL_SIZE_QUANTUM.
16333 (font_sort_entites, font_list_entities, font_find_for_lface)
16334 (font_open_for_lface, font_open_by_name): Fix handling of font size.
16335 (Ffont_spec): Add QCname property that contains only unknown properties.
16336
16337 * ftfont.c (ftfont_list): Use assq_no_quit, not Fassq. Don't
16338 include weight in listing pattern, instead check weight of each
16339 listed font. Don't include scalable in pattern. Pay attention to
16340 FONT_PIXEL_SIZE_QUANTUM.
16341
163422008-02-01 Kenichi Handa <handa@m17n.org>
16343
16344 * font.c (font_parse_fcname): Fix parsing of point-size.
16345 (font_unparse_fcname): Produce symbolic names for style properties.
16346 (font_list_entities): Handle float size correctly.
16347 (font_open_by_name): Prefer `normal' property values if the name
16348 doesn't specify them.
16349
16350 * fontset.c (Finternal_char_font): Use font_get_name, not
16351 Ffont_xlfd_name.
16352
16353 * ftfont.c (ftfont_pattern_entity): Use the numeric value 100 for
16354 FC_WEIGHT_REGULAR. Exclude FC_SIZE and FC_PIXEL_SIZE from listing
16355 pattern. Don't force scalable.
16356
16357 * xftfont.c (xftfont_open): For generating a name, start from
16358 96-byte buffer.
16359
163602008-02-01 Jan Djärv <jan.h.d@swipnet.se>
16361
16362 * frame.h (x_new_fontset2): Fix prototype.
16363
163642008-02-01 Kenichi Handa <handa@m17n.org>
16365
16366 * font.h (struct font_driver): Delete member parse_name.
16367 (font_match_p, font_get_spec, font_parse_fcname)
16368 (font_unparse_fcname): Extern them.
16369 (font_get_name): Adjust prototype.
16370
16371 * font.c (XLFD_SMALLNUM_MASK): Delete this macro.
16372 (XLFD_LARGENUM_MASK): Delete XLFD_ENCODING_MASK from it.
16373 (font_expand_wildcards): Fix handling ENCODING field. Avoid
16374 unnecessary checks for weight, slant, and swidth.
16375 (font_parse_fcname): New function.
16376 (font_unparse_fcname): New function.
16377 (font_parse_name): New function.
16378 (font_match_p): New function.
16379 (font_get_name): Change return value to Lisp string.
16380 (font_get_spec): New function.
16381 (Qunspecified, Qignore_defface): Don't extern them.
16382 (font_find_for_lface): Assume that LFACE is fully specified.
16383 (font_load_for_face): If lface[LFACE_FONT_INDEX] is an font
16384 object, use it for FACE.
16385 (font_open_by_name): Call Ffont_spec with QCname prop. Don't call
16386 driver->parse_name.
16387 (Ffont_spec): Call font_parse_name, not font_parse_xlfd.
16388
16389 * fontset.h (new_fontset_from_font) [USE_FONT_BACKEND]: Adjust
16390 prototype.
16391
16392 * fontset.c (new_fontset_from_font) [USE_FONT_BACKEND]: Delete
16393 argument F. Don't call Fnew_fontset. Instead, directly call
16394 make_fontset.
16395
16396 * frame.h (x_new_fontset2) [USE_FONT_BACKEND]: Adjust prototype.
16397
16398 * frame.c (x_set_font) [USE_FONT_BACKEND]: Adjust for the change
16399 of x_new_fontset2.
16400
16401 * ftfont.c (Qmonospace, Qsans_serif, Qserif, Qmono, Qsans)
16402 (Qsans__serif): New variables.
16403 (ftfont_generic_family_list): New variable.
16404 (syms_of_ftfont): Initialize the above variables.
16405 (ftfont_pattern_entity): Delete argument NAME.
16406 (ftfont_list_generic_family): New function.
16407 (ftfont_parse_name): Delete this function.
16408 (ftfont_list): Try generic family only when FcFontList found no font.
16409 (ftfont_list_family): Fix args to FcObjectSetBuild.
16410
16411 * xfaces.c (check_lface_attrs) [USE_FONT_BACKEND]: Accept font
16412 object in attrs[LFACE_FONT_INDEX].
16413 (set_lface_from_font_name): Cancel all changes for font-backend.
16414 (set_lface_from_font_and_fontset) [USE_FONT_BACKEND]: New
16415 function.
16416 (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]: Accept a
16417 font object in QCfont attribute.
16418 (set_font_frame_param) [USE_FONT_BACKEND]: Likewise.
16419 (realize_default_face) [USE_FONT_BACKEND]: Call
16420 set_lface_from_font_and_fontset.
16421
16422 * xfns.c (x_default_font_parameter) [USE_FONT_BACKEND]: Try also
16423 "fixed", and signal error here if no suitable font was found.
16424
16425 * xfont.c (xfont_parse_name): Delete this function.
16426
16427 * xftfont.c (xftfont_open): Change coding style of error
16428 handling. Generate fontconfig's fontname pattern.
16429
16430 * xterm.h (struct x_output) [USE_FONT_BACKEND]: New member fontp.
16431 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro.
16432
16433 * xterm.c (x_new_fontset2) [USE_FONT_BACKEND]: Change arguments.
16434 Both args FONTSET and FONT_OBJECT must be existing ones.
16435
164362008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16437
16438 * macterm.c (mac_set_unicode_keystroke_event): Don't use MAKE_CHAR.
16439
164402008-02-01 Kenichi Handa <handa@m17n.org>
16441
16442 * xfont.c (xfont_open, xfont_encode_char): Fix typo.
16443
16444 * font.h (struct font): Fix typo.
16445
16446 * font.c (enum xlfd_field_index): Rename XLFD_XXX_SIZE_INDEX to
16447 XLFD_XXX_INDEX.
16448 (enum xlfd_field_mask): New enum.
16449 (intern_font_field): Changed argument. Change caller. If digits
16450 are followed by non-digits, return a symbol.
16451 (font_expand_wildcards): New function.
16452 (font_parse_xlfd): Fix wildcard handling.
16453 (Ffont_spec): If :name is specified, reflect the info in the other
16454 properties.
16455
16456 * ftfont.c (ftfont_pattern_entity): Fix typo.
16457 (ftfont_list): Enforce FC_LANG in PATTERN to cancel the effect of
16458 locale.
16459
164602008-02-01 Kenichi Handa <handa@m17n.org>
16461
16462 * font.h (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Extern them.
16463
16464 * font.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move from ftfont.c.
16465 (font_unparse_xlfd): Fix argument type declaration. Append "*" if
16466 registry doesn't specify encoding part.
16467 (font_find_for_lface): Pay attention to LFACE_FONT_INDEX.
16468 (font_open_by_name): At first try parsing the name.
16469 (syms_of_font): Declare Qiso8859_1, Qiso10646_1, and Qunicode_bmp
16470 as Lisp symbols.
16471
16472 * fontset.c (reorder_font_vector): Pay attention to the case that
16473 the 3rd element of font_def is nil.
16474 (fontset_font): For the default fontset, append one more fontset
16475 elements for a script-based font specification. Don't add script
16476 attribute on finding a font.
16477 (new_fontset_from_font): Unconditionally set FONTSET_ASCII to the
16478 font name.
16479 (fontset_ascii_font): If a font can't be opened, return nil.
16480
16481 * ftfont.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move to font.c.
16482 (ftfont_pattern_entity): New function.
16483 (ftfont_get_cache): Assume that freetype_font_cache is already
16484 initialized.
16485 (ftfont_list): Handle the case that a file is specified in font
16486 name. Use ftfont_pattern_entity to generate entities.
16487 (ftfont_has_char): Check if the pattern contains FC_CHARSET.
16488 (syms_of_ftfont): Initialize freetype_font_cache.
16489
16490 * xftfont.c (xftfont_open): Make the font name fontconfig's
16491 style. Add BLOCK_INPUT and UNBLOCK_INPUT.
16492 (xftfont_close): Free font->font.name if not NULL.
16493
16494 * xfont.c (xfont_list): If script is specified for a font, return
16495 null_vector.
16496 (xfont_list_family): Declare argument type.
16497
16498 * xfaces.c (set_lface_from_font_name): If a font doesn't have a
16499 name, set LFACE_FONT (lface) to nil.
16500
16501 * xterm.c (x_new_fontset2): If an ASCII font couldn't be loaded,
16502 return Qnil.
16503
165042008-02-01 Kenichi Handa <handa@m17n.org>
16505
16506 * emacs.c (main): Check -enable-font-backend arg after the check of -nl.
16507 (standard_args): Add "-enable-font-backend".
16508
165092008-02-01 Kenichi Handa <handa@m17n.org>
16510
16511 * xftfont.c (xftfont_default_fid): Set fid_known to 1.
16512 (struct xftdraw_list, xftdraw_list): Delete them.
16513 (register_xftdraw, check_xftdraw): Delete them.
16514 (xftfont_prepare_face): Don't call register_xftdraw.
16515 (xftfont_done_face): Don't call check_xftdraw.
16516 (xftfont_draw): Get background color only when with_background is
16517 nonzero.
16518
16519 * xfont.c (xfont_encode_char): Fix calculation of char2b.
16520
165212008-02-01 Kenichi Handa <handa@m17n.org>
16522
16523 These changes are for the new font handling codes.
16524
16525 * Makefile.in (ALL_CFLAGS): Add @FREETYPE_CFLAGS@,
16526 @FONTCONFIG_CFLAGS@, and @LIBOTF_CFLAGS@.
16527 (LIB_X11_LIB): If HAVE_XFT is defined, set to @XFT_LIBS@.
16528 (FONTSRC, FONTOBJ): New variables.
16529 (obj): Add $(FONTOBJ).
16530 (SOME_MACHINE_OBJECTS): Lib_X11_Lib.
16531 (LIBES): Add @FREETYPE_LIBS@, @FONTCONFIG_LIBS@, and
16532 @LIBOTF_LIBS@.
16533 (font.o, ftfont.o, xfont.o, xftfont.o, ftxfont.o): New targets.
16534 (fontset.o, xdisp.o, xfaces.o, xfns.o, xterm.o): Depend on $(FONTSRC).
16535
16536 * font.h, font.c, xfont.c, ftfont.c, xftfont.c, ftxfont.c: New files.
16537
16538 * character.h (Vscript_representative_chars): Extern it.
16539
16540 * character.c (Vscript_representative_chars): New variable.
16541 (syms_of_character): Declare it as a Lisp variable.
16542
16543 * composite.c (get_composition_id) [USE_FONT_BACKEND]: If
16544 enable_font_backend is nonzero, accept the composition method
16545 COMPOSITION_WITH_GLYPH_STRING.
16546
16547 * composite.h (enum composition_method) [USE_FONT_BACKEND]: New
16548 enumeration COMPOSITION_WITH_GLYPH_STRING.
16549
16550 * dispextern.h (struct glyph_string) [USE_FONT_BACKEND]: New
16551 members clip_x, clip_y, clip_width, and clip_height.
16552 (struct face) [USE_FONT_BACKEND]: New members font_info and extra.
16553
16554 * emacs.c (main) [USE_FONT_BACKEND]: Handle arg
16555 --enable-font-backend. Call syms_of_font.
16556
16557 * fns.c (assoc_no_quit): New function.
16558
16559 * fontset.h (FONT_INFO_FROM_FACE): New macro.
16560 (face_for_font, new_fontset_from_font)
16561 (fontset_ascii_font) [USE_FONT_BACKEND]: Extern them.
16562
16563 * fontset.c [USE_FONT_BACKEND]: Include "font.h".
16564 (fontset_font, fontset_ascii, face_for_char)
16565 (make_fontset_for_ascii_face, Ffont_info)
16566 (Finternal_char_font) [USE_FONT_BACKEND]: If enable_font_backend
16567 is nonzero, use font-backend mechanism.
16568 (find_font_encoding): Make it non-static.
16569 (new_fontset_from_font, fontset_ascii_font) [USE_FONT_BACKEND]:
16570 New functions.
16571
16572 * frame.h (struct frame): New members resx and resy.
16573 (struct frame) [USE_FONT_BACKEND]: New member font_driver_list.
16574 (x_new_fontset2) [USE_FONT_BACKEND]: Extern it.
16575
16576 * frame.c [USE_FONT_BACKEND]: Include "font.h".
16577 (make_frame, x_set_font) [USE_FONT_BACKEND]: Use font-backend mechanism.
16578
16579 * lisp.h (assoc_no_quit): Extern it.
16580
16581 * xdisp.c: If USE_FONT_BACKEND is defined, include "font.h".
16582 Through out the file, use FONT_INFO_FROM_FACE instead of
16583 FONT_INFO_FROM_ID, use get_per_char_metric instead of
16584 rif->per_char_metric.
16585 (handle_composition_prop) [USE_FONT_BACKEND]: If the composition
16586 method is COMPOSITION_WITH_GLYPH_STRING, just set it->c to ' '.
16587 (get_glyph_face_and_encoding, fill_composite_glyph_string)
16588 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
16589 (x_produce_glyphs) [USE_FONT_BACKEND]: If enable_font_backend is
16590 nonzero, use font-backend mechanism.
16591 (get_per_char_metric): New function.
16592
16593 * xfaces.c [USE_FONT_BACKEND]: Include "font.h".
16594 (set_lface_from_font_name)
16595 (set_font_frame_param, free_realized_face)
16596 (prepare_face_for_display, clear_face_gcs)
16597 (Finternal_set_font_selection_order, realize_x_face)
16598 [USE_FONT_BACKEND]: If enable_font_backend is nonzero, use
16599 font-backend mechanism.
16600 (clear_face_cache) [USE_FONT_BACKEND]: Don't call clear_font_table.
16601 (load_face_font) [USE_FONT_BACKEND]: Abort.
16602 (face_symbolic_value, face_symbolic_weight, face_symbolic_slant)
16603 (face_symbolic_swidth, face_for_font) [USE_FONT_BACKEND]: New functions.
16604
16605 * xfns.c [USE_FONT_BACKEND]: Include "font.h".
16606 (x_default_font_parameter) [USE_FONT_BACKEND]: New function.
16607 (Fx_create_frame) [USE_FONT_BACKEND]: If enable_font_backend is
16608 nonzero, register all available font drivers. Call
16609 x_default_font_parameter for deciding a font.
16610 (x_create_tip_frame) [USE_FONT_BACKEND]: Likewise.
16611
16612 * xterm.c [USE_FONT_BACKEND]: Include "font.h".
16613 (x_set_mouse_face_gc, x_set_glyph_string_clipping)
16614 (x_set_glyph_string_clipping_exactly)
16615 (x_compute_glyph_string_overhangs)
16616 (x_draw_glyph_string_foreground)
16617 (x_draw_composite_glyph_string_foreground, x_draw_glyph_string)
16618 (x_free_frame_resources) [USE_FONT_BACKEND]: If
16619 enable_font_backend is nonzero, use font-backend mechanism.
16620 (x_new_fontset2) [USE_FONT_BACKEND]: New function.
16621
166222008-02-01 Kenichi Handa <handa@m17n.org>
16623
16624 * coding.c (coding_inherit_eol_type): If PARENT is nil, inherit from
16625 system_eol_type.
16626 (syms_of_coding): Initialize system_eol_type.
16627
16628 * process.c (Fset_process_coding_system): Inherit system's eol
16629 format if necessary.
16630
166312008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16632
16633 * macgui.h (USE_ATSUI): Don't enable on emacs-unicode-2 branch.
16634
166352008-02-01 Kenichi Handa <handa@m17n.org>
16636
16637 * coding.c (decode_eol): Pay attention to buffer relocation in
16638 del_range_2.
16639 (decode_coding): Call decode_eol before restoring undo_list.
16640
166412008-02-01 Kenichi Handa <handa@m17n.org>
16642
16643 * charset.c (Fdefine_charset_internal): Fix setting of
16644 emacs_mule_bytes.
16645
166462008-02-01 Kenichi Handa <handa@m17n.org>
16647
16648 * keyboard.c (read_char): Check if C is a character or not before
16649 looking up Vkeyboard_translate_table.
16650
166512008-02-01 Kenichi Handa <handa@m17n.org>
16652
16653 * coding.c (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Fix
16654 condition to terminate the loop.
16655
166562008-02-01 Kenichi Handa <handa@m17n.org>
16657
16658 * coding.c (produce_composition): Compare charbuf[i] instead of
16659 args[i] against 0.
16660 (Fterminal_coding_system): Use EQ to compare Lisp objects.
16661
166622008-02-01 Kenichi Handa <handa@m17n.org>
16663
16664 * coding.c (DECODE_COMPOSITION_START): If the source is short, set
16665 coding->result to CODING_RESULT_INSUFFICIENT_SRC.
16666 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK after the call of
16667 detect_coding.
16668 (emacs_mule_char): Handle old style (Emacs 20) component character
16669 of a composition.
16670 (DECODE_EMACS_MULE_COMPOSITION_RULE_20)
16671 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Fix parsing a
16672 composition rule.
16673 (decode_coding_emacs_mule): Handle invalid bytes correctly.
16674
166752008-02-01 Kenichi Handa <handa@m17n.org>
16676
16677 * coding.c (encode_coding_ccl): Allocate destination dynamically
16678 when necessary.
16679
166802008-02-01 Kenichi Handa <handa@m17n.org>
16681
16682 * ccl.c (Fccl_execute_on_string): Fix the condition of terminating
16683 the loop. When quitted, show a proper error message.
16684
166852008-02-01 Kenichi Handa <handa@m17n.org>
16686
16687 * xterm.c (x_set_glyph_string_clipping_exactly): Set
16688 src->clip_head and src->clip_tail temporarily instead of src->hl.
16689
16690 * ccl.c (CCL_WRITE_STRING): Handle a flag bit for multibyte
16691 character sequence.
16692 (Fccl_execute_on_string): Use ASET, not XSET.
16693
166942008-02-01 Kenichi Handa <handa@m17n.org>
16695
16696 * search.c (search_buffer): Fix handling of "\\" in a trivial regexp.
16697
166982008-02-01 Kenichi Handa <handa@m17n.org>
16699
16700 * coding.c (decode_coding): Fix the condition of terminating the
16701 decoding loop.
16702
167032008-02-01 Kenichi Handa <handa@m17n.org>
16704
16705 * data.c (Faset): On setting a character bigger than 255 in a
16706 unibyte string, signal an error instead of make the string multibyte.
16707
167082008-02-01 Kenichi Handa <handa@m17n.org>
16709
16710 * charset.c (map_charset_chars): Fix for ascii-compatible charset
16711 made by a mapping table.
16712
167132008-02-01 Kenichi Handa <handa@m17n.org>
16714
16715 * xdisp.c (fill_composite_glyph_string): Check s->face is NULL or
16716 not.
16717 (BUILD_COMPOSITE_GLYPH_STRING): If C is TAB, set s->face to NULL.
16718 (x_produce_glyphs): If CH is TAB, set cmp->offsets properly.
16719
16720 * xterm.c (x_draw_composite_glyph_string_foreground): Check
16721 s->face is NULL or not.
16722
167232008-02-01 Kenichi Handa <handa@m17n.org>
16724
16725 * xterm.c (x_set_glyph_string_clipping_exactly): New function.
16726 (x_draw_glyph_string): Fix drawing of right_overhang and
16727 left_overhang around/on cursor.
16728
16729 * xdisp.c (draw_glyphs): Fix inclusion of right_overwriting glyphs.
16730
167312008-02-01 Kenichi Handa <handa@m17n.org>
16732
16733 * xdisp.c (x_produce_glyphs): Handle composition with TAB.
16734
167352008-02-01 Kenichi Handa <handa@m17n.org>
16736
16737 * coding.c (Fdefine_coding_system_internal)
16738 (Fdefine_coding_system_alias): Avoid a duplicated element in
16739 Vcoding_system_alist.
16740
167412008-02-01 Kenichi Handa <handa@m17n.org>
16742
16743 * xterm.c (handle_one_xevent): Handle keysyms 0x1000000..0x10000FF.
16744
16745 * coding.c (Qcoding_system_define_form): New variable.
16746 (syms_of_coding): Intern and staticpro it.
16747 (Fcoding_system_p): Check Qcoding_system_define_form.
16748 (Fcheck_coding_system): Try to autoload the definition of CODING-SYSTEM.
16749
16750 * coding.h (CODING_SYSTEM_P): If ID is not available, call
16751 Fcoding_system_p.
16752 (CHECK_CODING_SYSTEM): If ID is not available, call
16753 Fcheck_coding_system.
16754 (CHECK_CODING_SYSTEM_GET_SPEC, CHECK_CODING_SYSTEM_GET_ID):
16755 Try also Fcheck_coding_system.
16756
167572008-02-01 Kenichi Handa <handa@m17n.org>
16758
16759 * coding.c (code_conversion_restore): GCPRO arg.
16760
167612008-02-01 Kenichi Handa <handa@m17n.org>
16762
16763 * character.c (lisp_string_width): Check multibyteness of STRING.
16764
167652008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16766
16767 * macterm.c (mac_encode_char): Call ccl_driver with the last arg
16768 Qnil. Use JIS_TO_SJIS instead of ENCODE_SJIS.
16769 (decode_mac_font_name): Use decode_coding_c_string instead of
16770 decode_coding.
16771 (x_load_font): Initialize fontp->fontset to -1. Set
16772 fontp->encoding_type.
16773
167742008-02-01 Kenichi Handa <handa@m17n.org>
16775
16776 * search.c (search_buffer): Give up BM search on case-fold-search
16777 if one of a target character has a case-equivalence of different
16778 byte length even if that target charcter is an ASCII.
16779 (simple_search): Fix calculation of byte length of matched text.
16780 (boyer_moore): Fix handling of case-equivalent multibyte characters.
16781
167822008-02-01 Kenichi Handa <handa@m17n.org>
16783
16784 * coding.c (decode_coding): Fix handling of invalid bytes.
16785
167862008-02-01 Kenichi Handa <handa@m17n.org>
16787
16788 * xterm.c (handle_one_xevent): Handle keysyms directly mapped to
16789 Unicode characters.
16790
167912008-02-01 Kenichi Handa <handa@m17n.org>
16792
16793 * coding.c (encode_coding_object): If a pre-write-conversion
16794 function makes a new buffer, kill it.
16795
167962008-02-01 Kenichi Handa <handa@m17n.org>
16797
16798 * coding.c (QCascii_compatible_p): New variable.
16799 (syms_of_coding): Initialize it.
16800 (ONE_MORE_BYTE, ONE_MORE_BYTE_NO_CHECK): Decrement `src' before
16801 calling string_char.
16802 (record_conversion_result): Add `default:' case.
16803 (coding_charset_list): Delete unused variable `coding_type'.
16804 (Fdefine_coding_system_internal): Add `ascii-compatible-p'
16805 property in the plist of the coding system.
16806 (Fcoding_system_put): Check QCascii_compatible_p.
16807
168082008-02-01 Miles Bader <miles@gnu.org>
16809
16810 * xfaces.c (Finternal_lisp_face_equal_p): Restore previously
16811 removed calculation of frame `f', as it's now used.
16812
168132008-02-01 Kenichi Handa <handa@m17n.org>
16814
16815 * Makefile.in (RUN_TEMACS): Include "-nl" if HAVE_SHM is defined.
16816 (emacs${EXEEXT}): Run $(RUN_TEMACS) unconditionally.
16817 (UNIDATA): New variable.
16818 (${lispsource}international/charprop.el): Depends on ${UNIDATA}.
16819 (bootstrap-emacs${EXEEXT}): Depends on charprop.el. Run
16820 $(RUN_TEMACS) unconditionally.
16821
168222008-02-01 Kenichi Handa <handa@m17n.org>
16823
16824 * Makefile.in (temacs${EXEEXT}): Build charprop.el if necessary.
16825 (admindir): New variable.
16826 ($(lispsource)international/charprop.el): New target.
16827
168282008-02-01 Miles Bader <miles@gnu.org>
16829
16830 * character.c (chars-in-region): Remove obsolete function.
16831 (syms_of_character): Remove its initialization.
16832
168332008-02-01 Benjamin Riefenstahl <b.riefenstahl@turtle-trading.net>
16834
16835 * w32select.c (validate_coding_system)
16836 (setup_windows_coding_system): New functions.
16837 (convert_to_handle_as_coded, Fw32_get_clipboard_data): Use
16838 setup_windows_coding_system.
16839 (setup_config, Fw32_get_clipboard_data): Use
16840 validate_coding_system.
16841 (Fx_selection_exists): Move call to setup_config to a place
16842 where signals are allowed.
16843
16844 * lisp.h (Fcoding_system_base, Fcoding_system_eol_type)
16845 (Fcheck_coding_system): Add declarations.
16846
168472008-02-01 Kenichi Handa <handa@m17n.org>
16848
16849 * charset.c (load_charset_map_from_vector): Fix for the first iteration.
16850
168512008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16852
16853 * macfns.c (Fx_create_frame, x_create_tip_frame): Pass Lisp
16854 string as the second argument for x_new_fontset.
16855
168562008-02-01 Kenichi Handa <handa@m17n.org>
16857
16858 * coding.c (decode_coding_object): Use safe_call1 instead of call1.
16859 (encode_coding_object): Use safe_call instead of call2.
16860
168612008-02-01 Kenichi Handa <handa@m17n.org>
16862
16863 * fontset.c (Fset_fontset_font): Check family element of a given vector.
16864
16865 * Makefile.in (lisp): Include charprop.el.
16866
168672008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16868
16869 * macfns.c (Fx_create_frame, x_create_tip_frame): Fix crash.
16870 Not sure if it's unnecessary.
16871
168722008-02-01 Steven Tamm <steventamm@mac.com>
16873
16874 * macfns.c (Fx_create_frame, x_create_tip_frame): ifdef'd out
16875 some possibly unnecessary fontset checking code that crashed
16876 when creating a new frame.
16877
168782008-02-01 Kenichi Handa <handa@m17n.org>
16879
16880 * xfaces.c (merge_faces): Fix argument to lookup_derived_face and
16881 lookup_face.
16882
16883 * xdisp.c (Fformat_mode_line): Fix argument to lookup_named_face.
16884
16885 * fringe.c (draw_fringe_bitmap_1): Fix argument to lookup_named_face.
16886
168872008-02-01 Kenichi Handa <handa@m17n.org>
16888
16889 * coding.c: Cancel the change done in HEAD on 2008-02-01.
16890 (coding_charset_list): New function.
16891
16892 * coding.h (coding_charset_list): Extern it.
16893
168942008-02-01 Kenichi Handa <handa@m17n.org>
16895
16896 * fontset.c (Fset_fontset_font): Call find_font_encoding with
16897 concatenation of family and registry.
16898
168992008-02-01 Kenichi Handa <handa@m17n.org>
16900
16901 * character.h (BYTE8_STRING): Fix typo.
16902
16903 * editfns.c (Ftranslate_region_internal): Don't convert unibyte
16904 string to multibyte (sync to HEAD).
16905
16906 * casefiddle.c (casify_region): Handle changes in byte-length
16907 using replace_range_2 (sync to HEAD).
16908
169092008-02-01 Andreas Schwab <schwab@suse.de>
16910
16911 * chartab.c (map_char_table): GCPRO table and arg.
16912
169132008-02-01 Kenichi Handa <handa@m17n.org>
16914
16915 * syntax.c (skip_syntaxes): Return lispy 0 (not nil) if point is
16916 already at limit.
16917
169182008-02-01 Kenichi Handa <handa@m17n.org>
16919
16920 * fontset.c (fs_load_font): Use fast_string_match_ignore_case
16921 instead of fast_c_string_match_ignore_case.
16922 (find_font_encoding): Change argument to Lisp_Object. Use
16923 fast_string_match_ignore_case instead of
16924 fast_c_string_match_ignore_case. Change caller.
16925
169262008-02-01 Kenichi Handa <handa@m17n.org>
16927
16928 * xdisp.c (get_next_display_element): In unibyte case, decide to
16929 display in octal form by checking a character by
16930 UNIBYTE_CHAR_HAS_MULTIBYTE_P.
16931
16932 * charset.c (Fset_unibyte_charset): Setup unibyte_has_multibyte_table.
16933
16934 * character.c (unibyte_has_multibyte_table): New variable.
16935
16936 * character.h (unibyte_has_multibyte_table): Extern it.
16937 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): New macro.
16938
169392008-02-01 Kenichi Handa <handa@m17n.org>
16940
16941 * coding.c (encode_coding_iso_2022): Fix handling of charset
16942 annotation.
16943
169442008-02-01 Kenichi Handa <handa@m17n.org>
16945
16946 * coding.c (setup_coding_system): If coding_system is nil, use
16947 Qundecided.
16948 (Fterminal_coding_system): Return nil if terminal coding system is
16949 `undecided'.
16950 (syms_of_coding): Define coding-system `undecided' here. Setup
16951 terminal_coding as `undecided'.
16952
169532008-02-01 Kenichi Handa <handa@m17n.org>
16954
16955 * xdisp.c (message_dolog, set_message_1): Call
16956 unibyte_char_to_multibyte with arg type int.
16957
16958 * lread.c (read1): Fix reading of a char-table.
16959
16960 * print.c (print_object): Include sub char-table in circularities
16961 detection.
16962
169632008-02-01 Kenichi Handa <handa@m17n.org>
16964
16965 * keymap.c (where_is_internal_2): Fix for the case that KEY is a cons.
16966 Append the found sequences in car of ARGS instead of prepending.
16967
169682008-02-01 Kenichi Handa <handa@m17n.org>
16969
16970 * fileio.c (report_file_error): Make a unibyte string from
16971 strerror (errorno).
16972 (Fsubstitute_in_file_name): Fix the arg to
16973 unibyte_char_to_multibyte. It is evaluated twice.
16974
169752008-02-01 Kenichi Handa <handa@m17n.org>
16976
16977 * charset.h (CHAR_CHARSET): Shortcut for ASCII case.
16978
169792008-02-01 Kenichi Handa <handa@m17n.org>
16980
16981 * coding.c (detect_coding_utf_16): Don't set detect_info->found if
16982 BOM is not found.
16983 (detect_coding, detect_coding_system): Optimization for ISO-2022
16984 when no 8-bit data is found.
16985
169862008-02-01 Jason Rumney <jasonr@gnu.org>
16987
16988 * w32fns.c (x_to_w32_font): Update to use new coding struct.
16989
169902008-02-01 Kenichi Handa <handa@m17n.org>
16991
16992 * charset.c (Fdeclare_equiv_charset, Fiso_charset): Fix handing of
16993 CHARS.
16994
169952008-02-01 Steven Tamm <steventamm@mac.com>
16996
16997 * macterm.c (mac_encode_char): Add charset argument and update
16998 to use encoding_type.
16999 (x_new_font, x_new_fontset): Merge in changes from xterm.c;
17000 switch to pure fontset.
17001 (decode_mac_font_name): Temporarily remove decoding.
17002 (x_font_name_to_mac_font_name): Temporarily remove encoding.
17003 (x_load_font): Temporarily remove encoding.
17004
170052008-02-01 Kenichi Handa <handa@m17n.org>
17006
17007 * xfaces.c (Fface_font): If frame is not on a window system,
17008 ignore CHARACTER arg. If HAVE_WINDOW_SYSTEM is not defined, don't
17009 refer to face->font.
17010 (split_font_name_into_vector, build_font_name_from_vector)
17011 (lookup_non_ascii_face, realize_non_ascii_face): Define them only
17012 when HAVE_WINDOW_SYSTEM is defined.
17013
170142008-02-01 Kenichi Handa <handa@m17n.org>
17015
17016 * xdisp.c (BUILD_GLYPH_STRINGS): Check if s is NULL.
17017 (x_produce_glyphs): Fix setting of members of cmp in case
17018 cmp->glyph_len is zero.
17019
17020 * fontset.c (Fset_fontset_font): Fix docstring.
17021 (Ffontset_info): Make it backward compatible. New arg ALL.
17022
170232008-02-01 Kim F. Storm <storm@cua.dk>
17024
17025 * process.c (read_process_output): Grow decoding_buf when needed;
17026 this could cause a crash in allocate_string and compact_small_strings.
17027
170282008-02-01 Kenichi Handa <handa@m17n.org>
17029
17030 * fileio.c (WRITE_BUF_SIZE): Delete this macro.
17031
170322008-02-01 Kenichi Handa <handa@m17n.org>
17033
17034 * coding.c (setup_coding_system): Set coding->common_flags
17035 correctly for raw-text.
17036 (consume_chars): On encoding unibyte text by raw-text, don't check
17037 multibyte form.
17038 (encode_coding): On encoding by raw-text, never use translation tables.
17039
17040 * fileio.c (e_write): Short cut for the case of no encoding.
17041
170422008-02-01 Kenichi Handa <handa@m17n.org>
17043
17044 * coding.c (detect_coding, detect_coding_system): Delete unused
17045 variables.
17046
170472008-02-01 Kenichi Handa <handa@m17n.org>
17048
17049 * coding.c (encode_coding_utf_8): Fix handling of raw-byte char.
17050 (consume_chars): Fix handling of 8-bit bytes in unibyte source.
17051
170522008-02-01 Kenichi Handa <handa@m17n.org>
17053
17054 * coding.c (Ffind_coding_systems_region_internal): Include
17055 raw-text and no-conversion in the result.
17056
170572008-02-01 Kenichi Handa <handa@m17n.org>
17058
17059 * fontset.c (find_font_encoding): Return `ascii' for unknown encoding.
17060 (load_font_get_repertory): Delete unnecessary check of ENCODING of
17061 FONT_DEF.
17062 (font_def_arg, add_arg, from_arg, to_arg): New args.
17063 (set_fontset_font): Change argument.
17064 (Fset_fontset_font): Fix for the case that TARGET is a script
17065 name and charset name.
17066 (new_fontset_from_font_name): Fix argument to Fnew_fontset.
17067
170682008-02-01 Kenichi Handa <handa@m17n.org>
17069
17070 * fontset.c (fontset_font): Rename from fontset_face. Change return
17071 value.
17072 (face_suitable_for_char_p, face_for_char): Adjust for the change
17073 of fontset_font.
17074 (make_fontset_for_ascii_face): Fix setting of the fontset element
17075 for ASCII.
17076 (Finternal_char_font): Use fontset_font instead of FACE_FOR_CHAR
17077 to get a font name.
17078 (Ffontset_info): Adjust for the change of fontset_font.
17079
17080 * coding.c (emacs_mule_char): Check invalid code more rigidly.
17081
17082 * character.h (LEADING_CODE_LATIN_1_MIN)
17083 (LEADING_CODE_LATIN_1_MAX): Delete these macros.
17084
170852008-02-01 Kenichi Handa <handa@m17n.org>
17086
17087 * editfns.c (check_translation): New function.
17088 (Ftranslate_region_internal): Handle M:N mapping.
17089
170902008-02-01 Kenichi Handa <handa@m17n.org>
17091
17092 * xfaces.c (xlfd_point_size): Set font->numeric[XLFD_PIXEL_SIZE].
17093
170942008-02-01 Kenichi Handa <handa@m17n.org>
17095
17096 * coding.c (DECODE_DESIGNATION): Set chars_96 to -1 instead of
17097 goto invalid_code.
17098 (decode_coding_iso_2022): Fix handling of invalid designation.
17099
17100 * fileio.c (Finsert_file_contents): Be sure to call unbind_to
17101 after calling code_conversion_save.
17102
171032008-02-01 Kenichi Handa <handa@m17n.org>
17104
17105 * xdisp.c (handle_auto_composed_prop): Fix Lisp_Object/int mixup.
17106
17107 * print.c (print_prune_string_charset): Fix Lisp_Object/int mixup.
17108
17109 * fontset.c: Include "intervals.h".
17110 (fontset_face): Fix comparing of Lisp_Objects.
17111 (free_face_fontset, new_fontset_from_font_name): Fix
17112 Lisp_Object/int mixup.
17113
17114 * editfns.c (Ftranslate_region_internal): Fix Lisp_Object/int mixup.
17115
17116 * coding.c: Add many prototypes for static functions.
17117 (get_translation_table): Allow max_lookup to be NULL.
17118 (decode_coding, Ffind_coding_systems_region_internal)
17119 (Funencodable_char_position, Fcheck_coding_systems_region): Call
17120 get_translation_table with max_lookup NULL.
17121
171222008-02-01 Kenichi Handa <handa@m17n.org>
17123
17124 * coding.c (get_translation_table): Declare it as Lisp_Object.
17125 (LOOKUP_TRANSLATION_TABLE): New macro.
17126 (produce_chars, consume_chars): Use LOOKUP_TRANSLATION_TABLE
17127 instead of CHAR_TABLE_REF.
17128
171292008-02-01 Kenichi Handa <handa@m17n.org>
17130
17131 * coding.c (MAX_ANNOTATION_LENGTH): Adjust for the change of
17132 annotation data format.
17133 (ADD_ANNOTATION_DATA, ADD_COMPOSITION_DATA, ADD_CHARSET_DATA):
17134 Change arguments FROM and TO to single argument NCHARS. Change caller.
17135 (decode_coding_utf_8, decode_coding_utf_16, decode_coding_emacs_mule)
17136 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
17137 (decode_coding_ccl, decode_coding_charset): Pay attention to
17138 coding->charbuf_used.
17139 (get_translation): New function.
17140 (produce_chars): New arguments translation_table and last_block.
17141 Translate characters here. Return number of carryover chars.
17142 Change caller.
17143 (produce_composition): New argument pos. Change caller.
17144 Adjust for the change of annotation data format.
17145 (produce_charset, produce_annotation): Likewise.
17146 (decode_coding, encode_coding): Don't call translate_chars.
17147 (consume_chars): New arg translation_table. Change caller.
17148 (translate_chars): Delete.
17149 (syms_of_coding): Make translation-table's number of extra slots 2.
17150
171512008-02-01 Kenichi Handa <handa@m17n.org>
17152
17153 * search.c (simple_search): Fix setting this_pos_byte in backward
17154 search.
17155
17156 * coding.c (detect_coding_emacs_mule): Fix counting of encoded
17157 byte sequence.
17158 (detect_coding_ccl): Fix setting of the variable valids.
17159
171602008-02-01 Kenichi Handa <handa@m17n.org>
17161
17162 * xterm.c (x_list_fonts): Fix the detection of an auto-scaled font.
17163
17164 * coding.c (decode_coding_utf_16): Fix handling of surrogate pair.
17165
17166 * editfns.c (Ftranslate_region_internal): Rename from
17167 Ftranslate_region. Accept a char-table in TABLE.
17168 (syms_of_editfns): Defsubr Stranslate_region_internal.
17169
17170 * xfaces.c (set_lface_from_font_name): If a font is specified for
17171 a frame, generate a fontset from the font.
17172 (build_scalable_font_name): If the scalable font is requested for
17173 a specific size, don't change that size.
17174 (try_font_list): Try a scalable font also in the case that a
17175 pattern string is specified.
17176
171772008-02-01 Kenichi Handa <handa@m17n.org>
17178
17179 * xfaces.c (Fface_font): New optional arg CHARACTER.
17180
171812008-02-01 Kenichi Handa <handa@m17n.org>
17182
17183 * charset.h (CHARSET_OFFSET): New macro.
17184
171852008-02-01 Kenichi Handa <handa@m17n.org>
17186
17187 * xterm.c (x_get_font_repertory): Fix for non-Unicode-bmp charset.
17188
17189 * fontset.c (fontset_face): Handle the case that repertory is a
17190 char-table.
17191 (find_font_encoding): Return nil for unknown encoding.
17192 (Fset_fontset_font): Ignore a font of unknown encoding.
17193
171942008-02-01 Kenichi Handa <handa@m17n.org>
17195
17196 * keymap.c (describe_vector): Handle default value of a char table.
17197
17198 * fontset.c (fontset_face): Handle fallback fonts correctly.
17199 (Ffontset_info): Return infomation about fallback fonts.
17200
172012008-02-01 Kenichi Handa <handa@m17n.org>
17202
17203 * fontset.c (FONTSET_DEFAULT): New macro.
17204 (FONTSET_ADD, fontset_add): Handle the case that range is nil.
17205 (Fset_fontset_font): Change the 2nd arg name to TARGET, and handle
17206 the case that it is nil.
17207 (dump_fontset): Call FONTSET_DEFAULT, not FONTSET_FALLBACK.
17208 (syms_of_fontset): Set char-table-extra-slots property of fontset to 9.
17209
17210 * charset.h (CHAR_CHARSET_P): Fix for the case that the method is
17211 subset or superset.
17212
172132008-02-01 Kenichi Handa <handa@m17n.org>
17214
17215 * emacs.c (main): Call init_charset after syms_of_XXX.
17216
17217 * charset.c (Vcharset_map_directory): Delete.
17218 (Vcharset_map_path): New variable.
17219 (load_charset_map_from_file): Use Vcharset_map_path instead.
17220 (init_charset): Initialize Vcharset_map_path.
17221 (syms_of_charset): Delete declaration of "charset-map-directory",
17222 add declaration of "charset-map-path".
17223
172242008-02-01 Kenichi Handa <handa@m17n.org>
17225
17226 * fns.c (string_char_to_byte, string_byte_to_char): Optimize for
17227 ASCII only string.
17228
17229 * fileio.c (Finsert_file_contents): Avoid detecting a code twice.
17230
17231 * coding.c (detect_coding_iso_2022): Fix handling of SS2 and SS3.
17232 (detect_coding, detect_coding_system): Treat '\0' as normal ASCII byte.
17233
172342008-02-01 Kenichi Handa <handa@m17n.org>
17235
17236 * coding.h (SJIS_TO_JIS2, JIS_TO_SJIS2): New macros.
17237
17238 * coding.c (QCmnemonic, QCdefalut_char)
17239 (QCdecode_translation_table, QCencode_translation_table)
17240 (QCpost_read_conversion, QCpre_write_conversion): New variables.
17241 (get_translation_table): Return a list of translation tables if
17242 necessary.
17243 (decode_coding): Call get_translation_table with ENCODEP 0.
17244 (char_encodable_p): If translation_table is non-nil, always call
17245 translate_char.
17246 (Fdefine_coding_system_internal): Accept list of translation
17247 tables as :encode-translation-table and :decode-translation-table.
17248 (Fcoding_system_put): New function.
17249 (syms_of_coding): Declare new symbols. Defsubr
17250 Scoding_system_put.
17251 (decode_coding_sjis, encode_coding_sjis): Handle 4th charset,
17252 typically JISX0212.
17253
17254 * charset.c (map_charset_chars): Fix arg to map_charset_chars in
17255 when the charset is superset type.
17256
17257 * character.c (translate_char): Accept list of translation tables.
17258
172592008-02-01 Kenichi Handa <handa@m17n.org>
17260
17261 * coding.h (enum coding_attr_index): New member coding_attr_trans_tbl.
17262 (CODING_ATTR_TRANS_TBL): New macro.
17263
17264 * coding.c (get_translation_table): New function.
17265 (translate_chars): Fix the bug of skipping annotation data.
17266 (decode_coding, encode_coding): Utilize get_translation_table.
17267 (char_encodable_p, Funencodable_char_position): Translate char if
17268 necessary.
17269 (Ffind_coding_systems_region_internal)
17270 (Fcheck_coding_systems_region): Setup translation table for encode
17271 in a coding system attribute vector in advance.
17272 (Fdefine_coding_system_internal): Allow a symbol as translation
17273 table. For shift-jis type coding system, allow 4th charset.
17274
172752008-02-01 Kenichi Handa <handa@m17n.org>
17276
17277 * coding.c (decode_coding_sjis): Check the first byte rigidly.
17278
17279 * xdisp.c (get_next_display_element): Pass -1 as POS to
17280 FACE_FOR_CHAR if displaying a C-string.
17281
172822008-02-01 Kenichi Handa <handa@m17n.org>
17283
17284 * composite.c (get_composition_id): Handle xoff and yoff in a
17285 composition rule.
17286
17287 * composite.h (COMPOSITION_DECODE_RULE): New arg xoff and yoff.
17288 (struct composition): New member lbearing and rbearing.
17289
17290 * xdisp.c (move_it_to): Optimize for the case (op & MOVE_TO_Y).
17291 (x_get_glyph_overhangs): Handle a composition glyph.
17292 (x_produce_glyphs): Setup lbearing and rbreaing for a composition glyph.
17293
17294 * xterm.c (x_compute_glyph_string_overhangs): Handle also a
17295 composition glyph.
17296
172972008-02-01 Kenichi Handa <handa@m17n.org>
17298
17299 * print.c: Include charset.h.
17300 (Vprint_charset_text_property): New variable.
17301 (Qdefault): Extern it.
17302 (PRINT_STRING_NON_CHARSET_FOUND)
17303 (PRINT_STRING_UNSAFE_CHARSET_FOUND): New macros.
17304 (print_check_string_result): New variable.
17305 (print_check_string_charset_prop): New function.
17306 (print_prune_charset_plist): New variable.
17307 (print_prune_string_charset): New function.
17308 (print_object): Call print_prune_string_charset if
17309 Vprint_charset_text_property is not t.
17310 (print_interval): Print nothing if interval->plist is nil.
17311 (syms_of_print): Declare Vprint_charset_text_property as a lisp
17312 variable. Init and staticpro print_prune_charset_plist.
17313
173142008-02-01 Kenichi Handa <handa@m17n.org>
17315
17316 * fontset.c (new_fontset_from_font_name): Use the specified font
17317 for all characters in the new fontset.
17318
17319 * macterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
17320 OBJECT args.
17321
17322 * xdisp.c (x_produce_glyphs): Call FACE_FOR_CHAR with POS and
17323 OBJECT args for composition too.
17324
17325 * w32term.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
17326 OBJECT args.
17327
173282008-02-01 Kenichi Handa <handa@m17n.org>
17329
17330 * dispextern.h (FACE_FOR_CHAR): New args POS and OBJECT.
17331
17332 * fontset.c (reorder_font_vector): Adjust for the change of
17333 FONT_DEF format.
17334 (fontset_face): New arg id. Change caller.
17335 (face_for_char): New args pos and object.
17336 (make_fontset_for_ascii_face): Adjust for the change of FONT_DEF format.
17337 (fs_query_fontset): Check NAME by Fassoc too.
17338 (Fset_fontset_font): Allow non-XLFD font name.
17339 (Ffontset_info): Adjust for the change of FONT_DEF format.
17340
17341 * fontset.h (face_for_char): Adjust prototype.
17342
17343 * xdisp.c (face_before_or_after_it_pos, get_next_display_element)
17344 (append_space, extend_face_to_end_of_line)
17345 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
17346 (x_produce_glyphs): Call FACE_FOR_CHAR with POS and OBJECT args.
17347
17348 * xfaces.c (compute_char_face): Call FACE_FOR_CHAR with
17349 POS and OBJECT args.
17350
17351 * xterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with
17352 POS and OBJECT args.
17353
173542008-02-01 Jason Rumney <jasonr@gnu.org>
17355
17356 * w32select.c (Fw32_set_clipboard_data): Avoid potential realloc
17357 of GlobalAlloc'ed memory.
17358
173592008-02-01 Kenichi Handa <handa@m17n.org>
17360
17361 * ccl.c (Fccl_execute_on_string): Fix the condition of loop.
17362
17363 * charset.h (charset_table_used): Delete extern.
17364
17365 * charset.c (charset_table_used): Make it static.
17366 (map_charset_chars): Fix args to c_function with.
17367
17368 * chartab.c (map_sub_char_table_for_charset): Fix args to
17369 c_function with.
17370
17371 * coding.h (enum coding_result_code): Delete
17372 CODING_RESULT_INSUFFICIENT_CMP, add CODING_RESULT_INVALID_SRC.
17373
17374 * coding.c (Qinsufficient_source, Qinconsistent_eol)
17375 (Qinvalid_source, Qinterrupted, Qinsufficient_memory): New variables.
17376 (Vlast_code_conversion_error): New variables.
17377 (syms_of_coding): DEFSYM or DEFVAR_LISP them.
17378 (ONE_MORE_BYTE): Record error if any instead of signaling an
17379 error. If non-ASCII multibyte char is found, return the negative
17380 value of the code. All callers changed to check it.
17381 (ONE_MORE_BYTE_NO_CHECK): Likewise.
17382 (record_conversion_result): New function. Change all codes setting
17383 coding->result to call this function.
17384 (detect_coding_utf_8, decode_coding_utf_8)
17385 (detect_coding_emacs_mule, detect_coding_sji, detect_coding_big5):
17386 Don't use the local variable incomplete.
17387 (emacs_mule_char): Change the second arg to `const'.
17388 (decode_coding): Fix of flushing out unprocessed data.
17389 (make_conversion_work_buffer): Fix making of a work buffer.
17390 (decode_coding_object): Return coding->dst_object.
17391
17392 * fontset.c (set_fontset_font): Fix args.
17393
17394 * lisp.h (CHARACTERBITS): Define as 22.
17395
17396 * process.c (send_process): Be sure to set coding->src_multibyte.
17397
17398 * xdisp.c (handle_auto_composed_prop): Fix setting of limit.
17399
174002008-02-01 Kenichi Handa <handa@m17n.org>
17401
17402 * xdisp.c (handle_auto_composed_prop): Give limit to
17403 Fnext_single_char_property_change.
17404
174052008-02-01 Kenichi Handa <handa@m17n.org>
17406
17407 * composite.c (syms_of_composite): Don't make the composition hash
17408 table weak.
17409
17410 * fontset.c (Fset_fontset_font): Fix docstring.
17411
17412 * lisp.h (detect_coding_system): Adjust prototype.
17413
17414 * fileio.c (kill_workbuf_unwind): Delete this function.
17415 (Finsert_file_contents): Adjust the call of detect_coding_system.
17416 Get conversion_buffer by code_conversion_save. Use the macro
17417 CODING_MAY_REQUIRE_DECODING. After decoding, update
17418 coding_system.
17419
17420 * coding.h (make_conversion_work_buffer): Delete extern.
17421 (code_conversion_save): Extern it.
17422
17423 * coding.c (enum iso_code_class_type): Delete ISO_carriage_return.
17424 (CODING_GET_INFO): Delete argument eol_type. Change callers.
17425 (decode_coding_utf_8): Don't do eol converion.
17426 (detect_coding_utf_16): Check coding->src_chars, not
17427 coding->src_bytes. Add heuristics for those that have no signature.
17428 (decode_coding_emacs_mule, decode_coding_iso_2022)
17429 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
17430 Don't do eol converion.
17431 (adjust_coding_eol_type): Return a new coding system.
17432 (detect_coding): Don't detect eol. Fix for utf-16 detection.
17433 (decode_eol): In case of CRLF->LF conversion, use del_range_2 on
17434 each change.
17435 (decode_coding): Pay attention to undo_list. Do eol conversion for
17436 all types of coding-systems (if necessary).
17437 (Vcode_conversion_work_buf_list): Delete it.
17438 (Vcode_conversion_reused_workbuf): Rename from
17439 Vcode_conversion_reused_work_buf.
17440 (Vcode_conversion_workbuf_name): New variable.
17441 (reused_workbuf_in_use): New variable.
17442 (make_conversion_work_buffer): Delete the arg DEPTH.
17443 (code_conversion_restore): Change argument to cons.
17444 (code_conversion_save): Delete the argument BUFFER. Change callers.
17445 (detect_coding_system): New argument src_chars. Change callers.
17446 Fix for utf-16 detection.
17447 (init_coding_once): Don't use ISO_carriage_return.
17448 (syms_of_coding): Initialize Vcode_conversion_workbuf_name and
17449 reused_workbuf_in_use.
17450
174512008-02-01 Kenichi Handa <handa@m17n.org>
17452
17453 * keymap.c (store_in_keymap): Pay attention to the case that idx
17454 is a cons specifying a character range.
17455
174562008-02-01 Kenichi Handa <handa@m17n.org>
17457
17458 * xdisp.c (handle_auto_composed_prop): Fix the case of returning
17459 HANDLED_RECOMPUTE_PROPS.
17460
17461 * coding.c (Fdefine_coding_system_internal): Fix checking of
17462 ascii compatibility.
17463
174642008-02-01 Kenichi Handa <handa@m17n.org>
17465
17466 * charset.c (find_charsets_in_text): Delete unused locale variable.
17467 (Fset_charset_priority): Update Vemacs_mule_charset_list too.
17468
17469 * coding.c (encode_coding_emacs_mule): Emit bytes with MSB.
17470 Resync charset_list to Vemacs_mule_charset_list.
17471
17472 * keymap.c (store_in_keymap): Pay attention to the case that idx
17473 is a cons specifying a character range.
17474
174752008-02-01 Kenichi Handa <handa@m17n.org>
17476
17477 * composite.c (update_compositions): Bind inhibit-read-only, etc
17478 to t before calling remove-list-of-text-properties.
17479
17480 * print.c (print_object): Always print ASCII chars as is.
17481
174822008-02-01 Kenichi Handa <handa@m17n.org>
17483
17484 * keymap.c (Fdefine_key): Fix handling of Lucid style event type list.
17485
17486 * fns.c (Fmapconcat, Fmapcar, Fmapc): Signal an error if SEQUENCE
17487 is a char table.
17488
174892008-02-01 Kenichi Handa <handa@m17n.org>
17490
17491 * syntax.c (skip_chars): Be sure to alloca char_ranges when necessary.
17492
174932008-02-01 Kenichi Handa <handa@m17n.org>
17494
17495 * xfaces.c (set_lface_from_font_name): Fix for the case that
17496 FONTNAME is not fontset name.
17497
174982008-02-01 Kenichi Handa <handa@m17n.org>
17499
17500 * fns.c (base64_encode_1): Fix previous change.
17501
175022008-02-01 Kenichi Handa <handa@m17n.org>
17503
17504 * fontset.c (set_fontset_font): New function.
17505 (Fset_fontset_font): If a font is specified for a charset, use
17506 map_charset_chars to store the font spec in a fontset.
17507
175082008-02-01 Kenichi Handa <handa@m17n.org>
17509
17510 * fontset.c (fontset_face): Create a fallback fontset on demand.
17511 (make_fontset): Don't create a fallback fontset here.
17512 (free_face_fontset): Free a fallback fontset (if any) too.
17513 (n_auto_fontsets): Delete this variable.
17514 (auto_fontset_alist): New variable.
17515 (new_fontset_from_font_name): Check auto_fontset_alist.
17516 (dump_fontset) [FONTSET_DEBUG]: Fully re-written.
17517 (Ffontset_list_all) [FONTSET_DEBUG]: New function.
17518 (syms_of_fontset): Initialize and staticpro auto_fontset_alist.
17519 Defsubr Sfontset_list_all.
17520
175212008-02-01 Kenichi Handa <handa@m17n.org>
17522
17523 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
17524
175252008-02-01 Kenichi Handa <handa@m17n.org>
17526
17527 * fontset.c (Fnew_fontset): Check NAME more rigidly.
17528
175292008-02-01 Kenichi Handa <handa@m17n.org>
17530
17531 * editfns.c (Fgoto_char): Fix docstring.
17532
175332008-02-01 Kenichi Handa <handa@m17n.org>
17534
17535 * insdel.c (insert_from_gap): Adjust intervals correctly.
17536
175372008-02-01 Jason Rumney <jasonr@gnu.org>
17538
17539 * w32term.c (GLYPHSET, WCRANGE): Define if system headers don't.
17540 (pfnGetFontUnicodeRanges): New dynamically loaded function.
17541 (w32_initialize): Try to load it.
17542 (x_get_font_repertory): Use it if available.
17543 (w32_encode_char): Add shortcut for unicode output.
17544
17545 * w32fns.c (w32_load_system_font): Default charset to -1.
17546 (x_to_w32_charset): Match all fonts for unicode.
17547 (w32_to_x_charset): New parameter matching. Don't return partial
17548 or wildcard charsets.
17549 (w32_to_all_x_charsets): Don't return partial or wildcard charsets.
17550 (w32_codepage_for_font): Return CP_UNICODE for unicode.
17551 (w32_to_x_font): Match charset to real charset.
17552 (enum_font_cb2): Always list unicode versions.
17553
17554 * makefile.w32-in (temacs): Increase EMHEAP.
17555
175562008-02-01 Jason Rumney <jasonr@gnu.org>
17557
17558 * w32term.c (w32_encode_char): New charset parameter.
17559 font_info.encoding becomes encoding_type.
17560 (x_get_font_repertory): New function. Warning: stub only!
17561 (x_new_font): Return quickly if font already set.
17562 (x_new_fontset): fontsetname parameter is Lisp_Object.
17563 Use new fs_query_fontset. Try new_fontset_from_font_name.
17564 Use fontset_name for return value.
17565
17566 * w32term.h: Declare x_get_font_repertory.
17567
17568 * w32select.c (Fw32_set_clipboard_data): Use string_x_string_p in
17569 place of find_charset_in_text. Use encode_coding_object in place
17570 of encode_coding.
17571 (Fw32_get_clipboard_data): Use decode_coding_c_string in place of
17572 decode_coding.
17573
17574 * w32fns.c (Fx_create_frame, x_create_tip_frame): Use new version
17575 of x_new_fontset.
17576 (w32_load_system_font): Initialize charset as unicode.
17577 font_info.encoding becomes encoding_type.
17578 (w32_to_x_font): Use decode_coding_c_string in place of decode_coding.
17579 (x_to_w32_font): Use encode_coding_object in place of encode_coding.
17580 (syms_of_w32fns): Set get_font_repertory_func.
17581
17582 * w32console.c: Include character.h. Use terminal_encode_buffer
17583 from term.c.
17584 (write_glyphs): Use new version of encode_terminal_code. Use
17585 encode_coding_object in place of encode_coding.
17586
17587 * w32bdf.c (w32_load_bdf_font): Clear font_info before filling.
17588 encoding becomes encoding_type.
17589
17590 * term.c (terminal_encode_buffer): Make externally visible.
17591
17592 * makefile.w32-in: Add character.h dependancies.
17593 (character.o, chartab.o): New targets.
17594
175952008-02-01 Kenichi Handa <handa@m17n.org>
17596
17597 * fileio.c (Finsert_file_contents) [DOS_NT]: Use the macro
17598 CODING_ID_EOL_TYPE.
17599
176002008-02-01 Andreas Schwab <schwab@suse.de>
17601
17602 * coding.c (produce_chars): Revert last change.
17603
176042008-02-01 Kenichi Handa <handa@m17n.org>
17605
17606 * charset.h (charset_unicode): Extern it.
17607
17608 * charset.c (string_xstring_p): Check by (C >= 0x100).
17609 (find_charsets_in_text): Change format of the arc CHARSETS. New
17610 arg MULTIBYTE.
17611 (Ffind_charset_region, Ffind_charset_string): Adjust for the
17612 change of find_charsets_in_text.
17613 (Fsplit_char): Fix doc. Never return unknown.
17614
17615 * chartab.c (char_table_translate): Use CHARACTERP, not INTEGERP.
17616
17617 * coding.c (Fdefine_coding_system_alias): Update
17618 Vcoding_system_list.
17619
17620 * fontset.c (load_font_get_repertory): Pay attention to the case
17621 that ENCODING of a font is specified by a char-table.
17622
17623 * xterm.c (x_get_font_repertory): Handle the case that the
17624 encoding of font is other than Unicode.
17625
176262008-02-01 Kenichi Handa <handa@m17n.org>
17627
17628 * term.c (encode_terminal_code): Don't handle glyph-table. Check
17629 if a character is encodable by the terminal coding system. If
17630 not, produces proper number of `?'s. Update
17631 terminal_encode_buffer and terminal_encode_buf_size if necessary.
17632 (produce_glyphs): Check by CHAR_BYTE8_P, not SINGLE_BYTE_CHAR_P.
17633
176342008-02-01 Kenichi Handa <handa@m17n.org>
17635
17636 * term.c (terminal_encode_buffer, terminal_encode_buf_size): New
17637 variables.
17638 (encode_terminal_code): Change argument. Encode multiple
17639 characters at once. Store the result of encoding in
17640 terminal_encode_buffer.
17641 (write_glyphs, insert_glyphs): Adjust for the change of
17642 encode_terminal_code.
17643 (term_init): Initialize terminal_encode_buffer and
17644 terminal_encode_buf_size.
17645
17646 * coding.c (consume_chars): If coding->src_object is nil, don't
17647 check annotation.
17648
176492008-02-01 Kenichi Handa <handa@m17n.org>
17650
17651 * character.c (char_string): Use ASCII_CHAR_P instead of
17652 SINGLE_BYTE_CHAR_P.
17653
176542008-02-01 Kenichi Handa <handa@m17n.org>
17655
17656 * xdisp.c (handle_auto_composed_prop): Check if the last
17657 characters of auto-composed region is newly composed with the
17658 following characters.
17659 (handle_composition_prop): Fix checking of point being inside
17660 composition.
17661
176622008-02-01 Kenichi Handa <handa@m17n.org>
17663
17664 * fns.c (concat): Don't change multibyteness of the result by
17665 concatenating an 8-bit character.
17666
17667 * data.c (Faset): Check newelt by CHECK_CHARACTER. Don't change
17668 multibyteness of the result when newelt is an 8-bit character.
17669
176702008-02-01 Dave Love <fx@gnu.org>
17671
17672 * xmenu.c (find_and_call_menu_selection): Make menu_bar_items_used
17673 EMACS_INT.
17674
17675 * xfns.c (DefaultDepthOfScreen, x_encode_text): Remove unused vars.
17676
17677 * xfaces.c (face_numeric_value): Declare dim size_t.
17678 (Finternal_lisp_face_equal_p): Remove unused f.
17679
17680 * xdisp.c (BUILD_CHAR_GLYPH_STRINGS, display_and_set_cursor)
17681 (MATRIX_ROW): Remove unused vars.
17682 (draw_glyphs, x_insert_glyphs, fast_find_position)
17683 (fast_find_position, fast_find_string_pos): Use EMACS_INT for
17684 byte/char counts.
17685
17686 * regex.c (regex_compile): Remove unused var.
17687
17688 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
17689
17690 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
17691 (Faccessible_keymaps, where_is_internal): Remove unused vars.
17692
17693 * keyboard.c (cancel_hourglass_unwind): Return Qnil.
17694
17695 * frame.c (frame_name_fnn_p): Make len EMACS_INT.
17696
17697 * fileio.c (Fwrite_region): Remove unused var.
17698
17699 * dispnew.c (adjust_frame_glyphs_for_frame_redisplay)
17700 (adjust_frame_glyphs_for_window_redisplay): Remove unused ch_dim.
17701
17702 * composite.c (Fremove_list_of_text_properties): Declare.
17703
17704 * coding.c (inhibit_pre_post_conversion): Remove (unused).
17705 (alloc_destination, produce_chars): Use EMACS_INT for byte/char counts.
17706 (coding_inherit_eol_type): Remove unused attrs.
17707 (detect_coding): Cast arg of detect_eol.
17708
17709 * charset.c (syms_of_charset): Remove unused var p.
17710 (find_charsets_in_text, Ffind_charset_region): Use EMACS_INT for
17711 byte/char counts.
17712
17713 * casetab.c (set_case_table): Remove unused var.
17714
17715 * window.c (Fdisplay_buffer, Fframe_selected_window): Remove
17716 unused vars.
17717
177182008-02-01 Dave Love <fx@gnu.org>
17719
17720 * xterm.c (x_bitmap_mask): Declare.
17721
177222008-02-01 Dave Love <fx@gnu.org>
17723
17724 * xterm.c (x_term_init): Fix type error.
17725
17726 * lisp.h: Add Funibyte_char_to_multibyte.
17727
17728 * coding.c (Fread_coding_system): Fix arg of XSETSTRING.
17729 (Fset_coding_system_priority): Doc fix.
17730
17731 * ccl.c (ccl_driver): Fix arg of CHARACTERP.
17732
17733 * indent.c (check_composition): Make start and end EMACS_INT.
17734
17735 * character.c (lisp_string_width): Make ignore and end EMACS_INT.
17736
17737 * xdisp.c (handle_composition_prop, check_point_in_composition):
17738 Make buffer positions EMACS_INT.
17739
17740 * composite.c (find_composition, run_composition_function)
17741 (update_compositions, Ffind_composition_internal): Make buffer
17742 positions EMACS_INT.
17743
17744 * composite.h (find_composition, update_compositions): Make
17745 position args EMACS_INT.
17746
17747 * keyboard.c (adjust_point_for_property): Make beg and end EMACS_INT.
17748
17749 * intervals.c (get_property_and_range):
17750 * intervals.h (get_property_and_range): Make start and end EMACS_INT.
17751
17752 * unexalpha.c: Don't include varargs.h.
17753
177542008-02-01 Dave Love <fx@gnu.org>
17755
17756 * coding.h (ENCODE_UTF_8): New.
17757
17758 * Makefile.in (gtkutil.o): Depend on coding.h.
17759
17760 * coding.c (Fset_coding_system_priority): Doc fix.
17761
177622008-02-01 Kenichi Handa <handa@m17n.org>
17763
17764 * fileio.c (Finsert_file_contents): Call setup_coding_system in
17765 the case of auto saving.
17766
177672008-02-01 Andreas Schwab <schwab@suse.de>
17768
17769 * chartab.c (map_char_table, map_char_table_for_charset): Protect
17770 `range' from GC.
17771
177722008-02-01 Kenichi Handa <handa@m17n.org>
17773
17774 * coding.c (decode_coding_sjis): Check bytes more rigidly.
17775
177762008-02-01 Kenichi Handa <handa@m17n.org>
17777
17778 * fileio.c (choose_write_coding_system): Return a decided coding system.
17779 (Fwrite_region): Set Vlast_coding_system_used to the return value
17780 of choose_write_coding_system.
17781
177822008-02-01 Kenichi Handa <handa@m17n.org>
17783
17784 * charset.c (Fset_charset_priority): Pay attention to duplicated
17785 arguments.
17786
17787 * coding.c (QCcategory): New variable.
17788 (syms_of_coding): Defsym it. Set all elements of
17789 Vcoding_category_table and their symbol values.
17790 (Fset_coding_system_priority): Doc fix. Update symbol qvalues of
17791 coding-category-XXX, and coding-category-list.
17792 (Fdefine_coding_system_internal): Add category in the plist.
17793
177942008-02-01 Kenichi Handa <handa@m17n.org>
17795
17796 * callproc.c (Fcall_process): Handle carryover correctly.
17797
17798 * coding.c (decode_coding_iso_2022): Fix handling of invalid bytes.
17799 (raw_text_coding_system): Check NILP (coding_system).
17800 (coding_inherit_eol_type): Check NILP (coding_system) and
17801 NILP (parent).
17802 (consume_chars): Fix for the case of raw-text.
17803
17804 * process.c (read_process_output): Handle carryover correctly.
17805
178062008-02-01 Dave Love <fx@gnu.org>
17807
17808 * regex.c (re_search_2): Fix last change.
17809
178102008-02-01 Kenichi Handa <handa@m17n.org>
17811
17812 * regex.c (GET_CHAR_BEFORE_2): Check multibyte, not
17813 target_multibyte. Even in a unibyte case, return a converted
17814 multibyte char.
17815 (GET_CHAR_AFTER): New macro.
17816 (PATFETCH): Translate via multibyte char.
17817 (HANDLE_UNIBYTE_RANGE): Delete this macro.
17818 (SETUP_MULTIBYTE_RANGE): New macro.
17819 (regex_compile): Setup compiled code so that its multibyteness
17820 matches that of a target. Fix the handling of "[X-YZ]" using
17821 SETUP_MULTIBYTE_RANGE.
17822 (analyse_first) <charset>: For filling fastmap for all multibyte
17823 characters, don't check by BASE_LEADING_CODE_P.
17824 (re_search_2): Don't check RE_TARGET_MULTIBYTE_P (bufp). It is
17825 the same as RE_MULTIBYTE_P (bufp) now.
17826 (mutually_exclusive_p): Check by (! multibyte || IS_REAL_ASCII (c)).
17827 (TARGET_CHAR_AND_LENGTH): Delete this macro.
17828 (TRANSLATE_VIA_MULTIBYTE): New macro.
17829 (re_match_2_internal): Don't check RE_TARGET_MULTIBYTE_P (bufp).
17830 It is the same as RE_MULTIBYTE_P (bufp) now.
17831 <exactn>: Translate via multibyte.
17832 <anychar>: Fetch a character by RE_STRING_CHAR_AND_LENGTH. Don't
17833 translate it.
17834 <charset, charset_not>: Fetch a character by
17835 RE_STRING_CHAR_AND_LENGTH. Translate via multibyte.
17836 <duplicate>: Call bcmp_translate with the last arg `multibyte'.
17837 <wordbound, notwordbound, wordbeg, wordend, syntaxspec,
17838 notsyntaxspec, categoryspec, notcategoryspec> Fetch a character
17839 by GET_CHAR_AFTER.
17840 (bcmp_translate): Likewise.
17841
17842 * search.c (compile_pattern): Check the member target_multibyte,
17843 not the member multibyte of buf.
17844
17845 * lread.c (read1): While reading a string, set force_singlebyte
17846 and force_multibyte correctly.
17847
17848 * charset.c (Fset_unibyte_charset, init_charset_once): Fix setting
17849 up of unibyte_to_multibyte_table.
17850
178512008-02-01 Kenichi Handa <handa@m17n.org>
17852
17853 * coding.c (setup_coding_system): If coding has
17854 post-read-conversion or pre-write-conversion, set
17855 CODING_REQUIRE_DECODING_MASK and CODING_REQUIRE_ENCODING_MASK
17856 respectively.
17857 (decode_coding_gap): Run post-read-conversion if any.
17858
17859 * fileio.c (Finsert_file_contents): Even if we read into a
17860 unibyte buffer, check if we must decode the result or not.
17861
178622008-02-01 Kenichi Handa <handa@m17n.org>
17863
17864 * coding.c (make_conversion_work_buffer): Change the work buffer
17865 name to the same one as that of Emacs 21.
17866
178672008-02-01 Kenichi Handa <handa@m17n.org>
17868
17869 * coding.h (make_conversion_work_buffer): Adjust prototype.
17870 (code_conversion_restore): Don't extern it.
17871
17872 * coding.c (detected_mask): Delete unused variable.
17873 (decode_coding_iso_2022): Pay attention to the byte sequence of
17874 CTEXT extended segment, and retain those bytes as is.
17875 (decode_coding_ccl): Delete unused variable `valids'.
17876 (setup_coding_system): Delete unused variable `category'.
17877 (consume_chars): Delete unused variable `category'. Make it work
17878 for non-multibyte case.
17879 (make_conversion_work_buffer): Change argument.
17880 (saved_coding): Delete unused variable.
17881 (code_conversion_restore): Don't check saved_coding->destination.
17882 (code_conversion_save): New function.
17883 (decode_coding_gap, encode_coding_gap): Call code_conversion_save
17884 instead of record_unwind_protect.
17885 (decode_coding_object, encode_coding_object): Likewise. Recover PT.
17886 (detect_coding_system): Delete unused variable `mask'.
17887 (Fdefine_coding_system_internal): Delete unused variable id.
17888
17889 * fileio.c (kill_workbuf_unwind): New function.
17890 (Finsert_file_contents): On replacing, call
17891 make_conversion_work_buffer with correct args, and call
17892 record_unwind_protect with the first arg kill_workbuf_unwind.
17893
17894 * lisp.h (Fgenerate_new_buffer_name): EXFUN it.
17895
178962008-02-01 Kenichi Handa <handa@m17n.org>
17897
17898 * fontset.c (BASE_FONTSET_P): Check FONTSET_BASE, not FONTSET_NAME.
17899 (fontset_add): Fix for the case that TO is less than TO1.
17900 (Ffontset_info): Don't use fallback fontset on checking the
17901 default fontset.
17902 (dump_fontset): New function for debugging.
17903
17904 * coding.c (Fdefine_coding_system_internal): Fix for the case that
17905 coding_type is Qcharset.
17906
179072008-02-01 Kenichi Handa <handa@m17n.org>
17908
17909 * chartab.c (map_sub_char_table): New argument DEFAULT_VAL.
17910 (map_char_table): Don't inherit the value from the parent on
17911 initializing VAL. Adjust for the above change.
17912
179132008-02-01 Kenichi Handa <handa@m17n.org>
17914
17915 * coding.c (Qsignature, Qendian): Delete these variables.
17916 (syms_of_coding): Don't initialize them.
17917 (CATEGORY_MASK_UTF_16_AUTO): New macro.
17918 (detect_coding_utf_16): Add CATEGORY_MASK_UTF_16_AUTO in
17919 detect_info->found.
17920 (decode_coding_utf_16): Don't detect BOM here.
17921 (encode_coding_utf_16): Produce BOM if CODING_UTF_16_BOM (coding)
17922 is NOT utf_16_without_bom.
17923 (setup_coding_system): For a coding system of type utf-16, check
17924 if the attribute :endian is Qbig or not (not nil or not), and set
17925 CODING_REQUIRE_DETECTION_MASK if BOM detection is required.
17926 (detect_coding): If coding type is utf-16 and BOM detection is
17927 required, detect it.
17928 (Fdefine_coding_system_internal): For a coding system of type
17929 utf-16, check if the attribute :endian is Qbig or not (not nil or not).
17930
179312008-02-01 Kenichi Handa <handa@m17n.org>
17932
17933 * coding.c (coding_set_source): Fix for the case that the current
17934 buffer is different from coding->src_object.
17935 (decode_coding_object): Don't use the conversion work buffer if
17936 DST_OBJECT is a buffer.
17937
179382008-02-01 Dave Love <fx@gnu.org>
17939
17940 * lread.c (read_emacs_mule_char) [len==2]: Index
17941 emacs_mule_charset correctly.
17942
179432008-02-01 Dave Love <fx@gnu.org>
17944
17945 * coding.c (Qbig5, Vbig5_coding_system, CATEGORY_MASK_BIG5)
17946 (detect_coding_big5, decode_coding_big5, encode_coding_big5)
17947 (Fdecode_big5_char, Fencode_big5_char): Delete. (Big5 no longer
17948 treated specially.)
17949 (setup_coding_system, coding_category, CATEGORY_MASK_ANY)
17950 (detected_mask): Remove Big5 bits.
17951
179522008-02-01 Kenichi Handa <handa@m17n.org>
17953
17954 The following changes are to make the font rescaling facility
17955 compatible with Emacs 21.
17956
17957 * xfaces.c (Vface_font_rescale_alist): Rename from
17958 Vface_resizing_fonts.
17959 (struct font_name): Rename member resizing_ratio to rescale_ratio.
17960 (font_rescale_ratio): Rename from font_resizing_ratio.
17961 (split_font_name): Set font->rescale_ratio.
17962 (better_font_p): Pay attention to font->rescale_ratio.
17963 (build_scalable_font_name): Likewise. Change RESX, and RESY
17964 fields.
17965 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
17966
179672008-02-01 Kenichi Handa <handa@m17n.org>
17968
17969 * coding.c (Qutf_16_be_nosig, Qutf_16_be, Qutf_16_le_nosig)
17970 (Qutf_16_le): Remove these variables.
17971 (syms_of_coding): Don't DEFSYM them.
17972 (decode_coding_utf_16): Fix handling of BOM.
17973 (encode_coding_utf_16): Fix handling of BOM.
17974
179752008-02-01 Kenichi Handa <handa@m17n.org>
17976
17977 * fileio.c (Finsert_file_contents): On replacing, before decoding
17978 the file into the work buffer, set point of the work buffer to the end.
17979
179802008-02-01 Dave Love <fx@gnu.org>
17981
17982 * coding.c (Fcheck_coding_systems_region): Fix type errors.
17983
179842008-02-01 Dave Love <fx@gnu.org>
17985
17986 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
17987 and fix C types.
17988
179892008-02-01 Kenichi Handa <handa@m17n.org>
17990
17991 * xdisp.c (SKIP_GLYPHS): New macro.
17992 (set_cursor_from_row): Pay attention to string display properties.
17993
17994 * category.c (copy_category_entry): Fix for the case that RANGE
17995 is an integer.
17996
17997 * xterm.c (x_encode_char): Call ccl_driver with the last arg Qnil.
17998
17999 * w32term.c (w32_encode_char): Call ccl_driver with the last arg Qnil.
18000
180012008-02-01 Kenichi Handa <handa@m17n.org>
18002
18003 * charset.c (Fcharset_id_internal): New function.
18004 (syms_of_charset): Defsubr it.
18005
18006 * coding.c (decode_coding_ccl, encode_coding_ccl): Call ccl_driver
18007 with the last arg charset_list acquired from coding.
18008 (Fdefine_coding_system_internal): For ccl-based coding system, fix
18009 the attribute coding_attr_ccl_valids.
18010
18011 * coding.h (enum define_coding_ccl_arg_index): Set the first
18012 member coding_arg_ccl_decoder to coding_arg_max.
18013
18014 * ccl.h (ccl_driver): Adjust prototype.
18015
18016 * ccl.c (CCL_DECODE_CHAR, CCL_ENCODE_CHAR): New macros.
18017 (ccl_driver): New arg CHARSET_LIST. Use the above macros instead
60612c8f 18018 of DECODE_CHAR, ENCODE_CHAR, CHAR_CHARSET.
aac0c6e3
MR
18019 (Fccl_execute, Fccl_execute_on_string): Call ccl_driver with the
18020 last arg Qnil.
18021
180222008-02-01 Kenichi Handa <handa@m17n.org>
18023
18024 * charset.h (ENCODE_CHAR): If the method is SUBSET or SUPERSET,
18025 call encode_char.
18026
18027 * charset.c (encode_char): Fix handling of methods SUBSET and SUPERSET.
18028
180292008-02-01 Dave Love <fx@gnu.org>
18030
18031 * composite.c (syms_of_composite): Make composition_hash_table weak.
18032
180332008-02-01 Kenichi Handa <handa@m17n.org>
18034
18035 * dispextern.h (check_face_attributes, generate_ascii_font_name)
18036 (font_name_registry): Don't extern them.
18037 (split_font_name_into_vector, build_font_name_from_vector): Extern them.
18038
18039 * fontset.h (Qfontset): Don't extern it.
18040 (new_fontset_from_font_name): Extern it.
18041
18042 * fontset.c: Give 8 extra slots to fontset objects.
18043 (Qfontset_info): New variable.
18044 (syms_of_fontset): Defsym it.
18045 (FONTSET_FALLBACK): New macro.
18046 (fontset_face): Try also the default fontset.
18047 (make_fontset): Realize a fallback fontset from the default fontset.
18048 (generate_ascii_font_name): Move from xfaces.c. Rewritten by
18049 using split_font_name_into_vector and build_font_name_from_vector.
18050 (Fset_fontset_font): Access the elements of font_spec by enum
18051 FONT_SPEC_INDEX. If font_spec is a string, extract the registry
18052 name by using split_font_name_into_vector.
18053 (Fnew_fontset): If no ASCII font is specified in FONTLIST,
18054 generate a proper font name from the fontset name. Update
18055 Vfontset_alias_alist.
18056 (n_auto_fontsets): New variable.
18057 (new_fontset_from_font_name): New function.
18058 (Ffont_info): Store the information about fonts generated from the
18059 default fontset in the first extra slot of the returned char-table.
18060
18061 * xfaces.c (generate_ascii_font_name): Move to fontset.c.
18062 (font_name_registry): Delete function.
18063 (split_font_name_into_vector): New function.
18064 (build_font_name_from_vector): New function.
18065 (font_list): The argument REGISTRY is now a list of registry names.
18066 (choose_face_font): If we are choosing an ASCII font, and ATTRS
18067 specifies an explicit font name, return the name as is. Make a
18068 list of registy names.
18069
18070 * xfns.c (x_set_font, x_create_tip_frame): Adjust for the change
18071 of x_new_fontset.
18072 (Fx_create_frame): Don't call x_new_fontset here. Just use
18073 x_list_fonts to check the existence of fonts.
18074
18075 * xterm.h (x_new_fontset): Adjust prototype.
18076
18077 * xterm.c (x_new_fontset): Change the arg FONTSETNAME to Lisp
18078 string. Use new_fontset_from_font_name to create a fontset from a
18079 font name.
18080
180812008-02-01 Kenichi Handa <handa@m17n.org>
18082
18083 * syntax.c (Vfind_word_boundary_function_table): New name for
18084 Vnext_word_boundary_function_table.
18085 (find-word-boundary-function-table): New name for
18086 next-word-boundary-function-table.
18087
180882008-02-01 Dave Love <fx@gnu.org>
18089
18090 * Makefile.in: Fix some dependencies.
18091
18092 * keymap.c (Fapropos_internal): Don't gcpro apropos_predicate but
18093 set it to nil before returning.
18094
18095 * composite.c (update_compositions): Fix type error.
18096
18097 * syntax.c (skip_chars, skip_syntaxes): Fix type errors.
18098
180992008-02-01 Kenichi Handa <handa@m17n.org>
18100
18101 * xterm.c (x_new_font): Optimize for the case that the font is
18102 already set for the frame.
18103
181042008-02-01 Kenichi Handa <handa@m17n.org>
18105
18106 * chartab.c (char_table_ascii): Check if the char table contents
18107 is sub-char-table or not.
18108 (char_table_set, char_table_set_range): Fix argument to
18109 char_table_ascii.
18110
18111 * coding.c (CATEGORY_MASK_RAW_TEXT): New macro.
18112 (detect_coding_utf_8, detect_coding_utf_16)
18113 (detect_coding_emacs_mule, detect_coding_iso_2022)
18114 (detect_coding_sjis, detect_coding_big5)
18115 (detect_coding_ccl, detect_coding_charset): Change argument MASK
18116 to DETECT_INFO. Update DETECT_INFO and return 1 if the byte
18117 sequence is valid in this coding system. Change callers.
18118 (MAX_ANNOTATION_LENGTH): New macro.
18119 (ADD_ANNOTATION_DATA): New macro.
18120 (ADD_COMPOSITION_DATA): Change argument. Change callers. Call
18121 ADD_ANNOTATION_DATA. Change the format of annotation data.
18122 (ADD_CHARSET_DATA): New macro.
18123 (emacs_mule_char): New argument ID. Change callers.
18124 (decode_coding_emacs_mule, decode_coding_iso_2022)
18125 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
18126 Produce charset annotation data in coding->charbuf.
18127 (encode_coding_emacs_mule, encode_coding_iso_2022): Pay attention
18128 to charset annotation data in coding->charbuf.
18129 (setup_coding_system): Add CODING_ANNOTATE_CHARSET_MASK
18130 coding->common_flags if the coding system is iso-2022 based and
18131 uses designation.
18132 (produce_composition): Adjust for the new annotation data format.
18133 (produce_charset): New function.
18134 (produce_annotation): Handle charset annotation.
18135 (handle_composition_annotation, handle_charset_annotation): New
18136 functions.
18137 (consume_chars): Handle charset annotation. Utilize the above two
18138 functions.
18139 (encode_coding_object): If SRC_OBJECT and DST_OBJECT are the same
18140 buffer, get the deleted text as a string and set
18141 coding->src_object to that string.
18142 (detect_coding, detect_coding_system): Use the new struct
18143 coding_detection_info.
18144
18145 * coding.h (struct coding_detection_info): New structure.
18146 (struct coding_system): Adjust prototype of the member `detector'.
18147 (CODING_ANNOTATE_CHARSET_MASK): New macro.
18148
181492008-02-01 Kenichi Handa <handa@m17n.org>
18150
18151 * insdel.c (insert_from_gap): Fix argument to offset_intervals.
18152
181532008-02-01 Dave Love <fx@gnu.org>
18154
18155 * keymap.c (apropos_predicate, apropos_accumulate): Declare static.
18156 (Fapropos_internal): Don't gcpro apropos_accumulate. Set result
18157 to new local and nullify apropos_accumulate before returning.
18158 (syms_of_keymap): Staticpro and initialize apropos_accumulate.
18159
181602008-02-01 Kenichi Handa <handa@m17n.org>
18161
18162 * charset.c (Fdefine_charset_internal): Setup charset.fast_map
18163 correctly.
e3eea1fc 18164
aac0c6e3
MR
181652008-02-01 Dave Love <fx@gnu.org>
18166
18167 * fns.c (Flanginfo): Call synchronize_system_time_locale.
18168
181692008-02-01 Kenichi Handa <handa@m17n.org>
18170
18171 The following changes are to make character composition happen
18172 automatically on displaying.
18173
18174 * Makefile.in (lisp, shortlisp): Add composite.elc.
18175
18176 * composite.h (Qauto_composed, Vauto_composition_function)
18177 (Qauto_composition_function): Extern them.
18178
18179 * composite.c (Vcomposition_function_table)
18180 (Qcomposition_function_table): Delete variables.
18181 (Qauto_composed, Vauto_composition_function)
18182 (Qauto_composition_function): New variables.
18183 (run_composition_function): Don't call
18184 compose-chars-after-function.
18185 (update_compositions): Clear `auto-composed' text property.
18186 (compose_chars_in_text): Delete this function.
18187 (syms_of_composite): Staticpro Qauto_composed and
18188 Qauto_composition_function. Declare Vauto_composition_function as
18189 a Lisp variable.
18190
18191 * dispextern.h (enum prop_idx): Add member AUTO_COMPOSED_PROP_IDX.
18192
18193 * xdisp.c (it_props): Add an entry for Qauto_composed.
18194 (handle_auto_composed_prop): New function.
18195
18196 * xselect.c (selection_data_to_lisp_data): Don't call
18197 compose_chars_in_text.
18198
181992008-02-01 Dave Love <fx@gnu.org>
18200
18201 * keyboard.c (read_char): Modify checking around use of
18202 Vkeyboard_translate_table.
18203
18204 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
18205 and fix C types.
18206
182072008-02-01 Kenichi Handa <handa@m17n.org>
18208
18209 * coding.c (decode_coding_utf_8, decode_coding_emacs_mule)
18210 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
18211 (decode_coding_charset, produce_chars): When eol_type is Qdos, handle
18212 the case that the last byte is '\r' correctly.
18213 (decode_coding): Flush out the unprocessed data correctly.
18214 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK bit of coding->mode.
18215
182162008-02-01 Dave Love <fx@gnu.org>
18217
18218 * xterm.c (XTread_socket): Fix changes for defined keysyms.
18219 Add XK_ISO... case.
18220 (xaw_scroll_callback): Revert last change.
18221
182222008-02-01 Kenichi Handa <handa@m17n.org>
18223
18224 * charset.c (Fset_charset_priority): Update Viso_2022_charset_list.
18225
182262008-02-01 Kenichi Handa <handa@m17n.org>
18227
18228 * xfaces.c (Vface_resizing_fonts): New variable.
18229 (struct font_name): New member `resizing_ratio'.
18230 (font_resizing_ratio): New function.
18231 (split_font_name): Set font->resizing_ratio.
18232 (better_font_p): Pay attention to font->resizing_ratio.
18233 (build_scalable_font_name): Likewise. Don't change POINT_SIZE,
18234 RESX, and RESY fields.
18235 (try_alternative_families): Try scalable fonts if
18236 Vscalable_fonts_allowed is not Qt.
18237 (syms_of_xfaces): Declare Vface_resizing_fonts as a Lisp variable.
18238
182392008-02-01 Dave Love <fx@gnu.org>
18240
18241 * xterm.c (xaw_scroll_callback): Cast correctly.
18242
182432008-02-01 Dave Love <fx@gnu.org>
18244
18245 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extend.
18246 (lispy_kana_keys): Comment out.
18247 (make_lispy_event) [XK_kana_A]: Comment out.
18248
18249 * xterm.c (xaw_scroll_callback): Cast call_data.
18250 (XTread_socket): Deal with ASCII keysyms.
18251 (syms_of_xterm) <Vx_keysym_table>: Fix args of make_hash_table.
18252
182532008-02-01 Dave Love <fx@gnu.org>
18254
18255 * xterm.c (Vx_keysym_table): New.
18256 (syms_of_xterm): Initialize it.
18257 (XTread_socket): Use it.
18258 From head: Eliminate incorrect optimization that tried to avoid
18259 decoding the output of X*LookupString.
18260 (x_get_font_repertory): Delete charset declaration.
18261
182622008-02-01 Kenichi Handa <handa@m17n.org>
18263
18264 * coding.c (detect_coding_charset): If only ASCII bytes are found,
18265 return 0.
18266 (Fdefine_coding_system_internal): Setup
18267 CODING_ATTR_ASCII_COMPAT (attrs) correctly.
18268
182692008-02-01 Dave Love <fx@gnu.org>
18270
18271 * coding.c (Fcheck_coding_system): Doc fix.
18272
18273 * editfns.c (Finsert_byte): Return a proper value.
18274
182752008-02-01 Kenichi Handa <handa@m17n.org>
18276
18277 * coding.c (decode_coding): Fix args to translate_chars. Pay
18278 attention to Vstandard_translation_table_for_decode.
18279 (encode_coding): Fix args to translate_chars. Pay attention to
18280 Vstandard_translation_table_for_encode.
18281
18282 * data.c (Faset): Check NEWELT by ASCII_CHAR_P, not by
18283 SINGLE_BYTE_CHAR_P.
18284
18285 * editfns.c (general_insert_function): Check VAL by ASCII_CHAR_P,
18286 not by SINGLE_BYTE_CHAR_P.
18287
18288 * fns.c (concat): Check CH by ASCII_CHAR_P, not by
18289 SINGLE_BYTE_CHAR_P.
18290
18291 * insdel.c (copy_text): Check C by ASCII_CHAR_P, not by
18292 SINGLE_BYTE_CHAR_P.
18293
18294 * keymap.c (Ftext_char_description): Check C by ASCII_CHAR_P, not
18295 by SINGLE_BYTE_CHAR_P.
18296
18297 * search.c (Freplace_match): Check C by ASCII_CHAR_P, not by
18298 SINGLE_BYTE_CHAR_P.
18299
183002008-02-01 Dave Love <fx@gnu.org>
18301
18302 * fns.c (Fstring_as_multibyte, Fstring_to_multibyte): Doc fix.
18303
183042008-02-01 Dave Love <fx@gnu.org>
18305
18306 * fns.c (Flanginfo): Fix typo.
18307
18308 * unexelf.c (unexec): Make last change conditional on Irix 6.5.
18309
183102008-02-01 Kenichi Handa <handa@m17n.org>
18311
18312 * coding.c (detect_coding_utf_8, detect_coding_utf_16)
18313 (detect_coding_emacs_mule, detect_coding_iso_2022)
18314 (detect_coding_sjis, detect_coding_big5, detect_coding_ccl): Check
18315 incomplete byte sequence. Don't update *mask when correctly detected.
18316 (decode_coding_sjis): Fix decoding of katakana-jisx0201.
18317 (detect_eol): Delete the argument CODING, and add the argument CATEGORY.
18318 (detect_coding, detect_coding_system): Adjust for the changes above.
18319
183202008-02-01 Kenichi Handa <handa@m17n.org>
18321
18322 * character.c (char_string): Rename from
18323 char_string_with_unification. Pay attention to CHAR_MODIFIER_MASK.
18324 (string_char): Rename from string_char.
18325
18326 * character.h (CHAR_STRING, CHAR_STRING_ADVANCE): Call char_string
18327 if C is greater than MAX_3_BYTE_CHAR.
18328 (STRING_CHAR, STRING_CHAR_AND_LENGTH, STRING_CHAR_ADVANCE): Call
18329 string_char instead of string_char_with_unification.
18330
183312008-02-01 Dave Love <fx@gnu.org>
18332
18333 * coding.c (decode_coding_utf_8): Treat surrogates as invalid.
18334
183352008-02-01 Kenichi Handa <handa@m17n.org>
18336
18337 * keymap.c (push_key_description): Pay attention to force_multibyte.
18338
18339 * regex.c (re_search_2): Fix for the case of unibyte buffer.
18340
183412008-02-01 Dave Love <fx@gnu.org>
18342
18343 * charset.c (define_charset_internal): Rename `supprementary'.
18344
18345 * Makefile.in (lisp, shortlisp): Remove latin-N.
18346
183472008-02-01 Dave Love <fx@gnu.org>
18348
18349 * xfns.c (x_window, x_window): Use use_xim.
18350
18351 * xterm.c (use_xim): Initialize.
18352 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
18353 (x_term_init): Maybe set use_xim.
18354
18355 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
18356
183572008-02-01 Kenichi Handa <handa@m17n.org>
18358
18359 * search.c (search_buffer): Fix case-fold-search of multibyte
18360 characters.
18361 (boyer_moore): Rename the last argument to char_high_bits.
18362
183632008-02-01 Kenichi Handa <handa@m17n.org>
18364
18365 * xdisp.c (display_string): Fix for the case of zero width glyph.
18366
18367 * xfns.c (x_set_font): Change the error message of the case that
18368 x_new_fontset returns Qt.
18369
18370 * xfaces.c (set_lface_from_font_name): Reject the default fontset.
18371 (Finternal_set_lisp_face_attribute): Use signal_error for the
18372 error of invalid fontset.
18373
18374 * xterm.c (x_new_fontset): If FONTSETNAME specifies the default
18375 fontset, return Qt.
18376
183772008-02-01 Dave Love <fx@gnu.org>
18378
18379 * unexelf.c (unexec): Make .got handling not SGI-specific.
18380
18381 * syntax.c (syms_of_syntax) <multibyte-syntax-as-symbol>: Doc fix.
18382
18383 * regex.c: Use `ifdef HAVE_ALLOCA_H', not `if HAVE_ALLOCA_H'.
18384
18385 * keyboard.c (read_key_sequence): Fix type error.
18386
18387 * buffer.c (Fset_buffer_multibyte, Fset_buffer_multibyte): Fix
18388 type error.
18389
18390 * fontset.c (fontset_add): Return Lisp_Object.
18391
183922008-02-01 Dave Love <fx@gnu.org>
18393
18394 * charset.h (charset_ordered_list_tick): Declare extern.
18395
183962008-02-01 Kenichi Handa <handa@m17n.org>
18397
18398 The following changes (and some of 2008-02-01 changes of mine) are
18399 for handling syntax, category, and case conversion for unibyte
18400 characters by converting them to multibyte on the fly. With these
18401 changes, we don't have to setup syntax and case tables for unibyte
18402 characters in each language environment.
18403
18404 * abbrev.c (Fexpand_abbrev): Convert a unibyte character to
18405 multibyte if necessary.
18406
18407 * bytecode.c (Fbyte_code): Likewise.
18408
18409 * character.h (LEADING_CODE_LATIN_1_MIN)
18410 (LEADING_CODE_LATIN_1_MAX): New macros.
18411 (unibyte_to_multibyte_table): Extern it.
18412 (unibyte_char_to_multibyte): New macro.
18413 (MAKE_CHAR_MULTIBYTE): Use unibyte_to_multibyte_table.
18414 (CHAR_LEADING_CODE): New macro.
18415 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): New macro.
18416
18417 * character.c (unibyte_to_multibyte_table): New variable.
18418 (unibyte_char_to_multibyte): Move to character.h and define as macro.
18419 (multibyte_char_to_unibyte): If C is an eight-bit character,
18420 convert it to the corresponding byte value.
18421
18422 * charset.c (Fset_unibyte_charset): If the dimension of CHARSET is
18423 not 1, signals an error. Update the elements of
18424 unibyte_to_multibyte_table.
18425 (init_charset_once): Initialize unibyte_to_multibyte_table.
18426 (syms_of_charset): Define the charset `iso-8859-1'.
18427
18428 * cmds.c (internal_self_insert): In a multibyte buffer, insert C
18429 as is without converting it to unibyte. In a unibyte buffer,
18430 convert C to multibyte before checking the syntax.
18431
18432 * lisp.h (unibyte_char_to_multibyte): Delete extern.
18433
18434 * minibuf.c (Fminibuffer_complete_word): Use the macro
18435 FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE.
18436
18437 * regex.h (struct re_pattern_buffer): New member target_multibyte.
18438
18439 * regex.c (RE_TARGET_MULTIBYTE_P): New macro.
18440 (GET_CHAR_BEFORE_2): Check target_multibyte, not multibyte. If
18441 that is zero, convert an eight-bit char to multibyte.
18442 (MAKE_CHAR_MULTIBYTE, CHAR_LEADING_CODE): New dummy new macros for
18443 non-emacs case.
18444 (PATFETCH): Convert an eight-bit char to multibyte.
18445 (HANDLE_UNIBYTE_RANGE): New macro.
18446 (regex_compile): Setup the compiled pattern for multibyte chars
18447 even if the given regex string is unibyte. Use PATFETCH_RAW
18448 instead of PATFETCH in many places. To handle `charset'
18449 specification of unibyte, call HANDLE_UNIBYTE_RANGE. Use bitmap
18450 only for ASCII chars.
18451 (analyse_first) <exactn>: Simplify because the compiled pattern
18452 is multibyte.
18453 <charset_not>: Setup fastmap from bitmap only for ASCII chars.
18454 <charset>: Use CHAR_LEADING_CODE to get leading codes.
18455 <categoryspec>: If multibyte, setup fastmap only for ASCII chars here.
18456 (re_compile_fastmap) [emacs]: Call analyse_first with the arg
18457 multibyte always 1.
18458 (re_search_2): In emacs, set the locale variable multibyte to 1,
18459 otherwise to 0. New local variable target_multibyte. Check it
18460 to decide the multibyteness of STR1 and STR2. If
18461 target_multibyte is zero, convert unibyte chars to multibyte
18462 before translating and checking fastmap.
18463 (TARGET_CHAR_AND_LENGTH): New macro.
18464 (re_match_2_internal): In emacs, set the locale variable multibyte
18465 to 1, otherwise to 0. New local variable target_multibyte. Check
18466 it to decide the multibyteness of STR1 and STR2. Use
18467 TARGET_CHAR_AND_LENGTH to fetch a character from D.
18468 <charset, charset_not>: If multibyte is nonzero, check fastmap
18469 only for ASCII chars. Call bcmp_translate with
18470 target_multibyte, not with multibyte.
18471 <begline>: Declare the local variable C as `unsigned'.
18472 (bcmp_translate): Change the last arg name to target_multibyte.
18473
18474 * search.c (compile_pattern_1): Don't adjust the multibyteness of
18475 the regexp pattern and the matching target. Set cp->buf.multibyte
18476 to the multibyteness of the regexp pattern. Set
18477 cp->but.target_multibyte to the multibyteness of the matching target.
18478 (wordify): Use FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE instead of
18479 FETCH_STRING_CHAR_ADVANCE.
18480 (Freplace_match): Convert unibyte chars to multibyte.
18481
18482 * syntax.c (char_quoted, back_comment, scan_words)
18483 (Fforward_comment, scan_lists, Fbackward_prefix_chars)
18484 (scan_sexps_forward): Use FETCH_CHAR_AS_MULTIBYTE to convert
18485 unibyte chars to multibyte.
18486 (skip_chars): Delete the arg syntaxp, and move the code for
18487 handling syntaxes to skip_syntaxes. Change callers.
18488 Fix the case that the multibyteness of STRING and the current
18489 buffer doesn't match.
18490 (skip_syntaxes): New function.
18491 (SYNTAX_WITH_MULTIBYTE_CHECK): Check C by ASCII_CHAR_P, not by
18492 SINGLE_BYTE_CHAR_P.
18493
184942008-02-01 Kenichi Handa <handa@m17n.org>
18495
18496 * xfaces.c (QCfontset): New variable.
18497 (LFACE_FONTSET): New macro.
18498 (check_lface_attrs): Check also LFACE_FONTSET_INDEX.
18499 (set_lface_from_font_name): Setup LFACE_FONTSET (lface).
18500 (Finternal_set_lisp_face_attribute)
18501 (Finternal_get_lisp_face_attribute): Handle QCfontset.
18502 (lface_same_font_attributes_p): Fix checking of LFACE_FONT_INDEX,
18503 check also LFACE_FONTSET_INDEX.
18504 (face_fontset): Check attrs[LFACE_FONTSET_INDEX], not
18505 attrs[LFACE_FONT_INDEX].
18506 (syms_of_xfaces): Intern and staticpro QCfontset.
18507
18508 * dispextern.h (enum lface_attribute_index): New member
18509 LFACE_FONTSET_INDEX.
18510
18511 * fns.c (base64_encode_1): Handle eight-bit chars correctly.
18512
185132008-02-01 Kenichi Handa <handa@m17n.org>
18514
18515 * coding.c (coding_set_destination): Fix coding->destination for
18516 the case converting a region.
18517 (encode_coding_utf_8): Encode eight-bit chars as single byte.
18518 (encode_coding_object): Fix coding->dst_pos and
18519 coding->dst_pos_byte for the case converting a region.
18520
18521 * insdel.c (insert_from_gap): Make it work even if PT != GTP.
18522
18523 * character.h (BYTE8_STRING): New macro.
18524
18525 * fns.c (base64_decode_1): Insert eight-bit chars correctly.
18526
185272008-02-01 Kenichi Handa <handa@m17n.org>
18528
18529 * xdisp.c (get_next_display_element): Don't display unibyte 8-bit
18530 characters by octal form.
18531
18532 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
18533
18534 * buffer.h (_fetch_multibyte_char_len): Delete extern.
18535 (FETCH_MULTIBYTE_CHAR, BUF_FETCH_MULTIBYTE_CHAR): Don't use
18536 _fetch_multibyte_char_len.
18537 (FETCH_CHAR_AS_MULTIBYTE): New macro.
18538
18539 * casetab.c (set_canon, set_identity, shuffle): Simplify.
18540
18541 * casefiddle.c (casify_object): Simplify. Handle the case that
18542 the case conversion change the byte length.
18543 (casify_region): Likewise.
18544
18545 * character.h (MAKE_CHAR_UNIBYTE, MAKE_CHAR_MULTIBYTE): New macros.
18546
18547 * character.c (_fetch_multibyte_char_len): Delete this variable.
18548 (syms_of_character): Setup Vprintable_chars.
18549
18550 * editfns.c (Fchar_equal): Fix for the unibyte case.
18551 (Finsert_byte): New function.
18552 (syms_of_editfns): Defsubr it.
18553
18554 * keyboard.c (read_key_sequence): Use ~CHAR_MODIFIER_MASK instead
18555 of direct code 0x3ffff.
18556
18557 * search.c (Freplace_match): Fix for the unibyte case.
18558
185592008-02-01 Kenichi Handa <handa@m17n.org>
18560
18561 * lread.c (safe_to_load_p): Fix the logic.
18562
18563 * syntax.c (scan_words): Don't treat characters belonging to
18564 different scripts as constituting a word.
18565
18566 * editfns.c (Fformat): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
18567
18568 * fontset.c (Fset_fontset_font): Treat `ascii' as charset, not script.
18569
18570 * emacs.c (main): In the case of --unibyte, instead of aborting on
18571 finding non-empty buffer, make it unibyte.
18572
185732008-02-01 Kenichi Handa <handa@m17n.org>
18574
18575 * xterm.c (x_new_fontset): Call `create-fontset-from-ascii-font'
18576 to create a fontset.
18577
185782008-02-01 Dave Love <fx@gnu.org>
18579
18580 * character.c (Funibyte_char_to_multibyte): Doc fix.
18581
18582 * xfns.c [HAVE_STDLIB_H]: Fix last change.
18583
185842008-02-01 Kenichi Handa <handa@m17n.org>
18585
18586 * fontset.c (fontset_add): Make the type `int'.
18587 (fontset_id_valid_p): Define it if FONTSET_DEBUG is defined.
18588
18589 * character.c (unibyte_char_to_multibyte)
18590 (multibyte_char_to_unibyte, Funibyte_char_to_multibyte): Refer to
18591 charset_unibyte, not charset_primary.
18592
18593 * charset.h (charset_unibyte): Extern it instead of charset_primary.
18594
18595 * charset.c (charset_unibyte): Rename from charset_primary.
18596 (Funibyte_charset): Rename from Fprimary_charset.
18597 (Fset_unibyte_charset): Rename from Fset_primary_charset.
18598 (syms_of_charset): Adjust for the above changes.
18599
18600 * w32term.c (x_produce_glyphs): Use ASCII_CHAR_P, not
18601 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
18602 it->multibyte_p is zero.
18603
18604 * lisp.h (nonascii_insert_offset, Vnonascii_translation_table):
18605 Delete extern.
18606
186072008-02-01 Kenichi Handa <handa@m17n.org>
18608
18609 * coding.c (Fdefine_coding_system_internal): Fix category setting
18610 for a coding system of type iso-2022.
18611
186122008-02-01 Kenichi Handa <handa@m17n.org>
18613
18614 * fontset.h (FS_LOAD_FONT): Call fs_load_font with the arg CHARSET -1.
18615
186162008-02-01 Kenichi Handa <handa@m17n.org>
18617
18618 * syntax.c (Vnext_word_boundary_function_table): New variable.
18619 (next-word-boundary-function-table): Declare it as a Lisp variable
18620 in syms_of_syntax.
18621 (scan_words): Call functions in Vnext_word_boundary_function_table
18622 if any.
18623
18624 * xterm.c (x_load_font): Initialize fontp->fontset to -1.
18625
18626 * fontset.c (fs_load_font): If fontp->charset is not negative,
18627 return fontp without setting its members.
18628
186292008-02-01 Dave Love <fx@gnu.org>
18630
18631 * xfns.c [HAVE_STDLIB_H]: Change logic (instead of fixing typo).
18632
18633 * m/sparc.h (HAVE_ALLOCA): Delete.
18634
18635 * s/irix6-5.h: Don't include strings.h.
18636 (bcopy, bzero, bcmp): Don't undef.
18637
18638 * s/irix6-0.h (bcopy, bzero, bcmp): Don't undef.
18639
18640 * s/usg5-4.h (NO_SIOCTL_H): Don't define.
18641 (TIOCSIGSEND): Don't test IRIX6.
18642 (bcopy, bzero, bcmp): Define conditionally.
18643
186442008-02-01 Kenichi Handa <handa@m17n.org>
18645
18646 * buffer.c (Qas, Qmake, Qto): New variables.
18647 (Fset_buffer_multibyte): New optional arg METHOD. Change caller.
18648 (syms_of_buffer): Intern and staticpro Qas, Qmake, and Qto.
18649
18650 * callproc.c (Fcall_process): Don't call insert_1_both directly if
18651 we are inserting a process output into a multibyte buffer.
18652
18653 * character.h (CHAR_TO_BYTE8): If C is not eight-bit char, call
18654 multibyte_char_to_unibyte.
18655
18656 * character.c (Funibyte_char_to_multibyte): If C can't be decoded
18657 by the primary charset, make it eight-bit char.
18658 (Fmultibyte_char_to_unibyte): Call CHAR_TO_BYTE8.
18659
18660 * charset.c (charset_eight_bit, Qeight_bit_control): New variables.
18661 (charset_8_bit__control, charset_8_bit_graphic)
18662 (Qeight_bit_control, Qeight_bit_graphic): Delete these variables.
18663 (define_charset_internal): New function.
18664 (syms_of_charset): Call define_charset_internal for pre-defined
18665 charsets.
18666
18667 * charset.h (charset_8_bit): Extern it.
18668
18669 * coding.c (make_conversion_work_buffer): Adjust for the change
18670 of Fset_buffer_multibyte.
18671 (encode_coding_raw_text): Increment p0 in the loop.
18672
18673 * lisp.h (Fset_buffer_multibyte): Adjust prototype.
18674
18675 * xdisp.c (setup_echo_area_for_printing, set_message_1): Adjust
18676 for the change of Fset_buffer_multibyte.
18677
18678 * fns.c (Fstring_to_multibyte): New function.
18679 (syms_of_fns): Declare Fstring_to_multibyte as Lisp subroutine.
18680
186812008-02-01 Dave Love <fx@gnu.org>
18682
18683 * xfns.c (x_put_x_image): Declare args.
18684
18685 * xfaces.c (font_name_registry, choose_face_font): Delete unused vars.
18686 (try_font_list): Declare an arg.
18687
18688 * xdisp.c (message2_nolog, set_message): Declare an arg.
18689
18690 * terminfo.c (tparam): Declare an arg. Use P_ to declare tparm.
18691
18692 * syntax.c (scan_sexps_forward): Declare an arg.
18693
18694 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
18695 Declare an arg.
18696
18697 * lisp.h (Fnew_fontset): Declare.
18698
18699 * keymap.c (push_key_description): Call CHARACTERP correctly.
18700
18701 * fontset.c (fontset_add): Declare args. Call make_number correctly.
18702 (face_for_char): Delete unused vars.
18703 (Fset_fontset_font): Doc fix. Delete unused vars.
18704
18705 * doc.c (Fsubstitute_command_keys): Delete unused vars.
18706
18707 * composite.c (update_compositions): Declare arg.
18708
18709 * cm.c (calccost, cmgoto): Declare args.
18710
18711 * charset.c: Remove `emacs' conditional. Doc fixes.
18712 (map_char_table_for_charset): Declare.
18713
18714 * character.c (syms_of_character) <translation-table-vector>: Doc fix.
18715
18716 * ccl.c: Remove `emacs' conditional.
18717
187182008-02-01 Kenichi Handa <handa@m17n.org>
18719
18720 The following changes are to allow specifying multiple font
18721 patterns for a character range (specified by script or charset).
18722
18723 * Makefile.in (abbrev.o): Depend on syntax.h.
18724 (xfaces.o): Depend on charset.h.
18725
18726 * alloc.c (Fmake_string): Use ASCII_CHAR_P, not
18727 SINGLE_BYTE_CHAR_P.
18728
18729 * ccl.c (Fccl_execute_on_string): Add `const' to local variables.
18730
18731 * character.h (Vchar_script_table): Extern it.
18732
18733 * character.c (Vscript_alist): Delete.
18734 (Vchar_script_table, Qchar_script_table): New variable.
18735 (syms_of_character): Declare Vchar_script_table as a lisp variable
18736 and initialize it.
18737
18738 * chartab.c (Fmake_char_table): Doc fix. If PURPOSE doesn't
18739 have property char-table-extra-slots, make no extra slot.
18740
18741 * dispextern.h (struct face): Delete member `charset'.
18742 (FACE_SUITABLE_FOR_CHAR_P, FACE_FOR): Use ASCII_CHAR_P, not
18743 SINGLE_BYTE_CHAR_P.
18744 (choose_face_font, lookup_non_ascii_face, font_name_registry):
18745 Add prototypes.
18746 (lookup_face, lookup_named_face, lookup_derived_face): Fix prototype.
18747 (generate_ascii_font_name): Rename from generate_ascii_font.
18748
18749 * fontset.h (get_font_repertory_func): New prototype.
18750 (make_fontset_for_ascii_face, fs_load_font): Fix prototypes.
18751 (FS_LOAD_FONT): Call fs_load_font with the 3rd arg charset_ascii.
18752
18753 * fontset.c (Qprepend, Qappend): New variables.
18754 (FONTSET_CHARSET_ALIST, FONTSET_FACE_ALIST): Delete.
18755 (FONTSET_NOFONT_FACE, FONTSET_REPERTORY): New macros.
18756 (FONTSET_REF): Optimize if FONTSET is Vdefault_fontset.
18757 (FONTSET_REF_AND_RANGE, FONTSET_ADD): New macros.
18758 (fontset_ref_and_range, fontset_add, reorder_font_vector)
18759 (load_font_get_repertory): New functions.
18760 (fontset_set): Delete.
18761 (fontset_face): New arg FACE. Return face ID, not face.
18762 Complete re-write to handle new fontset structure. Change caller.
18763 (free_face_fontset): Use ASET istead of AREF (X) = Y.
18764 (face_for_char): Don't call lookup_face.
18765 (make_fontset_for_ascii_face): New arg FACE.
18766 (fs_load_font): New arg CHARSET_ID. Don't check
18767 Vfont_encoding_alist here.
18768 (find_font_encoding): New function.
18769 (list_fontsets): Use STRINGP, not ! NILP.
18770 (accumulate_script_ranges): New function.
18771 (Fset_fontset_font, Fnew_fontset, Ffontset_info): Completely
18772 re-written to handle new fontset structure.
18773 (Ffontset_font): Return a copy of element.
18774 (syms_of_fontset): Define symbols Qprepend and Qappend. Fix
18775 docstring of font-encoding-alist.
18776
18777 * lisp.h (CHAR_TABLE_REF): Remove unnecessary check (IDX >= 0).
18778 (Fset_fotset_font): Fix arguments to 5.
18779
18780 * msdos.c (XMenuActivate): Adjust for the change of lookup_derived_face.
18781
18782 * xdisp.c (message_dolog, set_message_1, extend_face_to_end_of_line):
18783 Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
18784 (highlight_trailing_whitespace): Adjust for the change of
18785 lookup_named_face.
18786
18787 * xfaces.c: Include charset.h.
18788 (load_face_font): Delete argument C. Change caller.
18789 (generate_ascii_font_name): Rename from generate_ascii_font.
18790 (font_name_registry): New function.
18791 (cache_face): Store ascii faces before non-ascii faces in buckets.
18792 (lookup_face): Delete arguments C and BASE_FACE. Change caller.
18793 Lookup only ascii faces.
18794 (lookup_non_ascii_face): New function.
18795 (lookup_named_face): Delete argument C. Change caller.
18796 (lookup_derived_face): Delete argument C. Change caller.
18797 (try_font_list): New arg PATTERN. Change caller. If PATTERN is
18798 a string, just call font_list with it.
18799 (choose_face_font): Delete arguments FACE and C. New arg
18800 FONT_SPEC. Change caller.
18801 (realize_face, realize_x_face): Delete arguments C and BASE_FACE.
18802 Change caller.
18803 (realize_non_ascii_face): New function.
18804 (realize_x_face): Call load_face_font here.
18805 (realize_tty_face): Delete argument C. Change caller.
18806 (compute_char_face): If CH is not ascii, call FACE_FOR_CHAR to
18807 get a face ID.
18808 (dump_realized_face): Don't print charset of FACE.
18809
18810 * xfns.c (x_set_font): Always call x_new_fontset and
18811 store_frame_parameter.
18812 (Fx_create_frame): Call x_new_fontset, not x_new_font.
18813 (syms_of_xfns): Set get_font_repertory_func to x_get_font_repertory.
18814
18815 * xterm.h (x_get_font_repertory): Extern it.
18816
18817 * xterm.c (x_produce_glyphs): Use ASCII_CHAR_P, not
18818 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
18819 it->multibyte_p is zero.
18820 (XTread_socket): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
18821 (x_new_fontset): If FONTSETNAME doesn't match any existing
18822 fontsets, create a new one.
18823 (x_get_font_repertory): New function.
18824
188252008-02-01 Kenichi Handa <handa@m17n.org>
18826
18827 * coding.c (Ffind_coding_systems_region_internal): Detect an
18828 ASCII only string correctly.
18829
18830 * lread.c (Fload): Don't load with Qload_force_doc_strings t if
18831 version is 0.
18832
188332008-02-01 Kenichi Handa <handa@m17n.org>
18834
18835 * lread.c: Include "coding.h".
18836 (Qget_emacs_mule_file_char, Qload_force_doc_strings)
18837 (load_each_byte, unread_char): New variables.
18838 (readchar_backlog): Delete.
18839 (readchar): Return a character unless load_each_byte is nonzero.
18840 Handle the case that readcharfun is Qget_emacs_mule_file_char or a
18841 cons. If unread_char is not -1, simply return it.
18842 (unreadchar): Handle the case that readcharfun is
18843 Qget_emacs_mule_file_char or a cons. Set unread_char if necessary.
18844 (read_multibyte): Delete.
18845 (readbyte_for_lambda, readbyte_from_file, readbyte_from_string)
18846 (read_emacs_mule_char): New functions.
18847 (Fload): Even if the file doesn't have the extension ".elc", if
18848 safe_to_load_p returns a positive version number, assume that the
18849 file contains bytecompiled code. If the version is less than 22,
18850 load the file while decoding multibyte sequences by emacs-mule.
18851 (readevalloop): Don't use readchar_backlog.
18852 (Fread): Likewise. Pay attention to the case that STREAM is a cons.
18853 (Fread_from_string): Pay attention to the case that STREAM is a cons.
18854 (read_escape): Delete the arg BYTEREP.
18855 (read1): Set load_each_byte to 1 temporarily while handling
18856 #@NUMBER. Don't call read_multibyte.
18857 (read_vector): Call Fread with a cons. If readcharfun is
18858 Qget_emacs_mule_file_char, decode the read string by emacs-mule.
18859 (read_list): If doc_reference is 2, make the cdr part string as unibyte.
18860 (syms_of_lread): Intern and staticpro Qget_emacs_mule_file_char
18861 and Qload_force_doc_strings.
18862
188632008-02-01 Kenichi Handa <handa@m17n.org>
18864
18865 * xdisp.c (face_before_or_after_it_pos): Call
18866 FETCH_MULTIBYTE_CHAR with byte postion, not char position.
18867
188682008-02-01 Kenichi Handa <handa@m17n.org>
18869
18870 * character.h (TRAILING_CODE_P): New macro.
18871 (MAYBE_UNIFY_CHAR): Adjust for the change of Funify_charset.
18872 (string_char_with_unification): Fix prototype.
18873 (Vscript_alist): Extern it.
18874
18875 * character.c (Vscript_alist): New variable.
18876 (string_char_with_unification, str_as_unibyte)
18877 (string_escape_byte8): Add `const' to local variables.
18878 (syms_of_character): Declare script-alist as a Lisp variable.
18879
18880 * charset.h (Vcharset_ordered_list): Extern it.
18881 (charset_ordered_list_tick): Extern it.
18882 (EMACS_MULE_LEADING_CODE_PRIVATE_11)
18883 (EMACS_MULE_LEADING_CODE_PRIVATE_12)
18884 (EMACS_MULE_LEADING_CODE_PRIVATE_21)
18885 (EMACS_MULE_LEADING_CODE_PRIVATE_22): New macros.
18886 (Funify_charset): Adjust for the change of Funify_charset.
18887
18888 * charset.c (charset_ordered_list_tick): New variable.
18889 (Fdefine_charset_internal): Increment charset_ordered_list_tick.
18890 (Funify_charset): New optional arg DEUNIFY. If it is non-nil,
18891 deunify intead of unify a charset.
18892 (string_xstring_p): Add `const' to local variables.
18893 (find_charsets_in_text): Add `const' to arguments and local variables.
18894 (encode_char): Adjust for the change of Funify_charset. Fix
18895 detecting of invalid code.
18896 (Fset_charset_priority): Increment charset_ordered_list_tick.
18897 (Fmap_charset_chars): Fix handling of default value for FROM_CODE
18898 and TO_CODE.
18899
18900 * coding.c (LEADING_CODE_PRIVATE_11, LEADING_CODE_PRIVATE_12)
18901 (LEADING_CODE_PRIVATE_21, LEADING_CODE_PRIVATE_22): Delete macros.
18902 Changed callers to use EMACS_MULE_LEADING_CODE_PRIVATE_11, etc.
18903 (decode_coding_ccl, consume_chars)
18904 (Ffind_coding_systems_region_internal)
18905 (Fcheck_coding_systems_region): Add `const' to local variables.
18906
18907 * print.c (print_object): Use octal form for printing the
18908 contents of a bool vector.
18909
189102008-02-01 Dave Love <fx@gnu.org>
18911
18912 * lread.c (Fload) <!load_dangerous_libraries>: Don't leak fd.
18913 <version == 20>: Refuse to load.
18914
189152008-02-01 Dave Love <fx@gnu.org>
18916
18917 * fns.c: Move coding.h.
18918 (Qcodeset, Qdays, Qmonths): New.
18919 (concat): Use CHARACTERP instead of INTEGERP.
18920 (Flocale_codeset): Delete.
18921 (Flanginfo): New function.
18922 (syms_of_fns): Change accordingly.
18923
18924 * coding.c (adjust_coding_eol_type): Fix eol_type/eol_seen mixup.
18925
189262008-02-01 Dave Love <fx@gnu.org>
18927
18928 * casetab.c (init_casetab_once, init_casetab_once): Fix
18929 CHAR_TABLE_SET call.
18930
18931 * category.c (Fmodify_category_entry): Fix CATEGORY_MEMBER call.
18932
18933 * character.c (syms_of_character): Fix CHAR_TABLE_SET call.
18934
18935 * charset.c (Fmap_charset_chars): Check args. Convert Lisp types.
18936 (load_charset_map, Fdeclare_equiv_charset, Fencode_char)
18937 (Fset_charset_priority, syms_of_charset): Convert Lisp types.
18938
18939 * charset.h (CHECK_CHARSET_GET_ID): Use XINT on AREF result.
18940
18941 * coding.c (ENCODE_DESIGNATION, decode_eol)
18942 (make_conversion_work_buffer, code_conversion_restore)
18943 (Fdefine_coding_system_internal): Convert Lisp types.
18944 (code_conversion_restore): Use EQ, not ==.
18945 (Fencode_coding_string): Fix code_convert_string call.
18946
18947 * coding.h (code_convert_region): Fix prototype.
18948
18949 * dispextern.h (redraw_frame, redraw_garbaged_frames): Remove.
18950
18951 * fontset.c (fontset_ref, fontset_set, fs_load_font)
18952 (Ffontset_info): Convert Lisp types.
18953
18954 * syntax.h (SYNTAX_ENTRY_INT): Don't use make_number.
18955
18956 * xterm.c (note_mouse_movement): Fix call of window_from_coordinates.
18957
18958 * xdisp.c (display_mode_element): Fix call of Fset_text_properties.
18959
18960 * chartab.c: Include "...h", not <...h> in some cases.
18961
18962 * callproc.c (Fcall_process): Remove unused variables.
18963
189642008-02-01 Dave Love <fx@gnu.org>
18965
18966 * coding.c (Fset_coding_system_priority): Allow null arg list.
18967
189682008-02-01 Dave Love <fx@gnu.org>
18969
18970 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
18971 (Fself_insert_and_exit): Use CHARACTERP.
18972
18973 * callproc.c (Fcall_process): Remove unused vars.
18974
18975 * xterm.c (XTread_socket): Add extra dead keysyms.
18976
18977 * xdisp.c (decode_mode_spec_coding): Use CHARACTERP.
18978
18979 * dispextern.h: Remove prototypes for redraw_frame,
18980 redraw_garbaged_frames.
18981
18982 * cmds.c (Fself_insert_command): Use CHARACTERP.
18983
18984 * chartab.c (make_sub_char_table): Remove unused var.
18985 (Fset_char_table_default, Fmap_char_table): Doc fix.
18986
18987 * keymap.c (access_keymap): Remove generic char code.
18988 (push_key_description): Use CHARACTERP.
18989
189902008-02-01 Dave Love <fx@gnu.org>
18991
18992 * charset.c: Doc fixes.
18993 (Funify_charset): Extra checking.
18994
189952008-02-01 Dave Love <fx@gnu.org>
18996
18997 * lread.c: Remove some unused variables.
18998 (safe_to_load_p): If safe, return the magic number version byte.
18999 (Fload): Maybe use load-with-code-conversion.
19000
190012008-02-01 Kenichi Handa <handa@m17n.org>
19002
19003 * category.c (Fmodify_category_entry): Don't modify the contents
19004 of category_set for characters out of the range. Avoid
19005 unnecessary modification.
19006
19007 * character.h (MAYBE_UNIFY_CHAR): Adjust for the change of
19008 Vchar_unify_table. The default value of the table is now nil.
19009
19010 * character.c (syms_of_character): Setup Vchar_width_table for
19011 eight-bit-control and raw-byte chars.
19012
19013 * charset.h (enum define_charset_arg_index): Delete
19014 charset_arg_parents and add charset_arg_subset and
19015 charset_arg_superset.
19016 (enum charset_attr_index): Delete charset_parents and add
19017 charset_subset and charset_superset.
19018 (enum charset_method): Delete CHARSET_METHOD_INHERIT and add
19019 CHARSET_METHOD_SUBSET and CHARSET_METHOD_SUPERSET.
19020 (CHARSET_ATTR_PARENTS, CHARSET_PARENTS): Delete.
19021 (CHARSET_ATTR_SUBSET, CHARSET_ATTR_SUPERSET, CHARSET_SUBSET)
19022 (CHARSET_SUPERSET): New macros.
19023 (charset_work): Extern it.
19024 (ENCODE_CHAR): Use charset_work.
19025 (CHAR_CHARSET_P): Adjust for the change of encoder format.
19026 (map_charset_chars): Extern it.
19027
19028 * charset.c (load_charset_map): Set the default value of encoder
19029 and deunifier char-tables to nil.
19030 (map_charset_chars): Change argument. Change callers. Use
19031 map_char_table_for_charset instead of map_char_table.
19032 (Fmap_charset_chars): New optional args from_code and to_code.
19033 (Fdefine_charset_internal): Adjust for the change of
19034 `define-charset' (:parents -> :subset or :superset).
19035 (charset_work): New variable.
19036 (encode_char, syms_of_charset): Adjust for the change of
19037 Fdefine_charset_internal.
19038 (Ffind_charset_string): Setup the vector `charsets' correctly.
19039
19040 * chartab.c (sub_char_table_ref_and_range): New arg default. Fix
19041 the previous change.
19042 (char_table_ref_and_range): Adjust for the above change.
19043 (map_sub_char_table_for_charset): New function.
19044 (map_char_table_for_charset): New function.
19045
19046 * keymap.c (describe_vector): Handle a char-table directly here.
19047 (describe_char_table): Delete.
19048
19049 * lisp.h (map_charset_chars): Delete.
19050
190512008-02-01 Dave Love <fx@gnu.org>
19052
19053 * fns.c (count_combining): Comment out (unused).
19054 (Flocale_codeset): New.
19055 (syms_of_fns): Defsubr it.
19056
19057 * config.in (HAVE_PTY_H, HAVE_SIZE_T, HAVE_LANGINFO_CODESET): New.
19058 (size_t): Remove.
19059
190602008-02-01 Dave Love <fx@gnu.org>
19061
19062 * Makefile.in (chartab.o): Depend on charset.h.
19063
190642008-02-01 Kenichi Handa <handa@m17n.org>
19065
19066 * character.c (syms_of_character): Set the default value of
19067 Vprintable_chars to Qnil.
19068
190692008-02-01 Dave Love <fx@gnu.org>
19070
19071 * Makefile.in (lisp, shortlisp): Change indian.elc to indian.el.
19072
190732008-02-01 Kenichi Handa <handa@m17n.org>
19074
19075 * charset.c (load_charset_map): Handle the case that from < to
19076 correctly.
19077
19078 * coding.c (encode_coding_emacs_mule, encode_coding_iso_2022)
19079 (encode_coding_sjis, encode_coding_big5, encode_coding_charset):
19080 Pay attention to raw-8-bit chars.
19081
190822008-02-01 Kenichi Handa <handa@m17n.org>
19083
19084 * Makefile.in (lisp, shortlisp): Change chinese.elc to chinese.el.
19085 It is not bytecompiled now.
19086
19087 * charset.c (charset_jisx0201_roman, charset_jisx0208_1978)
19088 (charset_jisx0208): New variables.
19089 (Fdefine_charset_internal): Setup them if appropriate.
19090 (init_charset_once): Initialize them to -1.
19091
19092 * charset.h (charset_jisx0201_roman, charset_jisx0208_1978)
19093 (charset_jisx0208): Extern them.
19094
19095 * coding.c (CODING_ISO_FLAG_USE_ROMAN): New macro.
19096 (CODING_ISO_FLAG_USE_OLDJIS): New macro.
19097 (CODING_ISO_FLAG_FULL_SUPPORT): Change macro definition.
19098 (setup_iso_safe_charsets): Fix arguments to Fassq.
19099 (DECODE_DESIGNATION, ENCODE_ISO_CHARACTER_DIMENSION1)
19100 (ENCODE_ISO_CHARACTER_DIMENSION2): Pay attention to
19101 CODING_ISO_FLAG_USE_ROMAN and CODING_ISO_FLAG_USE_OLDJIS.
19102 (encode_coding_iso_2022): Change the 1st arg to
19103 ENCODE_ISO_CHARACTER to a variable.
19104
191052008-02-01 Kenichi Handa <handa@m17n.org>
19106
19107 * charset.h (enum define_charset_arg_index): New enums
19108 charset_arg_min_code and charset_arg_max_code.
19109 (struct charset): New member char_index_offset.
19110
19111 * charset.c (CODE_POINT_TO_INDEX, INDEX_TO_CODE_POINT):
19112 Take charset->char_index_offset into account.
19113 (Fdefine_charset_internal): Handle args[charset_arg_min_code] and
19114 args[charset_arg_max_code]. Setup charset.char_index_offset.
19115 (syms_of_charset): Fix args to Fdefine_charset_internal.
19116
191172008-02-01 Dave Love <fx@gnu.org>
19118
19119 * coding.c (decode_coding_utf_8): Reject overlong sequences.
19120
191212008-02-01 Dave Love <fx@gnu.org>
19122
19123 * coding.c: Doc fixes.
19124 (Fcoding_system_aliases): Fix return value.
19125 (Qmac): Remove (duplicated) definition.
19126
191272008-02-01 Dave Love <fx@gnu.org>
19128
362654a6
JB
19129 * charset.c (Fcharset_priority_list, Fset_charset_priority):
19130 New functions.
aac0c6e3
MR
19131
19132 * character.c (Fstring): Doc fix.
19133
19134 * charset.c (Fdefine_charset_alias): Update Vcharset_list.
19135
362654a6 19136 * fontset.c (Ffontset_info): Doc fix. Return charset names, not ids.
aac0c6e3
MR
19137 (font-encoding-alist): Doc fix.
19138
191392008-02-01 Dave Love <fx@gnu.org>
19140
19141 * term.c (costs_set): Declare static, non-initialized for pcc.
19142 (encode_terminal_code): Remove unused var.
19143
19144 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
19145 for K&R.
19146
19147 * xterm.c (xlwmenu_window_p): Fix prototype for K&R.
19148
19149 * coding.c (setup_iso_safe_charsets): Fix arg decl for K&R.
19150 (suffixes): Move out of make_subsidiaries for K&R.
19151
19152 * charset.c (map_charset_chars): Fix c_function declaration for K&R.
19153
19154 * lisp.h (DEFUN) [!PROTOTYPES]: Remove spurious `args'.
19155
191562008-02-01 Dave Love <fx@gnu.org>
19157
19158 * data.c (Fchar_or_string_p): Doc fix. Use CHARACTERP.
19159
19160 * category.c (Fmodify_category_entry): Doc fix. Remove unused vars.
19161
191622008-02-01 Yong Lu <lyongu@asia-infonet.com>
19163
19164 * charset.c (Fdefine_charset_internal): Fix argument to bzero.
19165
19166 * coding.c (decode_coding_charset): Workaround for the bug of GCC 2.96.
19167
191682008-02-01 Kenichi Handa <handa@m17n.org>
19169
19170 * Makefile.in (lisp, shortlisp): Change cyrillic.elc to cyrillic.el,
19171 vietnamese.elc to vietnamese.el. They are not bytecompiled now.
19172
191732008-02-01 Kenichi Handa <handa@m17n.org>
19174
19175 * coding.c (decode_coding_charset): Adjust for the change of
19176 Fdefine_coding_system_internal.
19177 (Fdefine_coding_system_internal): For a coding system of
19178 `charset' type, store a list of charset IDs in
19179 `charset_attr_charset_valids' element of coding attributes.
19180
191812008-02-01 Kenichi Handa <handa@m17n.org>
19182
19183 * coding.c (ONE_MORE_BYTE_NO_CHECK): Increment consumed_chars.
19184 (emacs_mule_char): New arg src. Delete arg `composition'. Change
19185 caller. Handle 2-byte and 3-byte charsets correctly.
19186 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): Rename from
19187 DECODE_EMACS_MULE_COMPOSITION_RULE. Change caller.
19188 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New macro.
19189 (DECODE_EMACS_MULE_21_COMPOSITION): Call
19190 DECODE_EMACS_MULE_COMPOSITION_RULE_21. Produce correct annotation
19191 sequence.
19192 (decode_coding_emacs_mule): Handle composition correctly. Rewind
19193 `src' and `consumed_chars' correctly before calling emacs_mule_char.
19194 (DECODE_COMPOSITION_START): Correctly handle the case of altchar
19195 and alt&rule composition.
19196 (decode_coding_iso_2022): Handle composition correctly.
19197 (init_coding_once): Setup emacs_mule_bytes for private charsets.
19198
19199 * charset.c (Fdefine_charset_internal): Fix bug for the case of
19200 re-defining a charset. If the charset has :emacs-mule-id, setup
19201 emacs_mule_bytes.
19202 (Fmake_char): If CODE1 is nil, use the minimum code of the charset.
19203
192042008-02-01 Kenichi Handa <handa@m17n.org>
19205
19206 * coding.c (encode_coding_iso_2022, encode_coding_sjis)
19207 (encode_coding_big5, encode_coding_charset): If coding requires safe
19208 encoding, produce a character specified by
19209 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
19210
192112008-02-01 Dave Love <fx@gnu.org>
19212
19213 * xterm.c (XSetIMValues): Declare.
19214
19215 * process.c: Conditionally include sys/wait.h, pty.h.
19216
19217 * print.c (print_object): Fix print format for 64-bit systems.
19218
19219 * keyboard.c (modify_event_symbol): Fix print format for 64-bit systems.
19220
19221 * buffer.c (emacs_strerror): Declare.
19222
19223 * fontset.c (Fclear_face_cache): Declare.
19224 (accumulate_font_info): Comment-out (unused).
19225 (face_for_char, Fset_fontset_font, Ffontset_info): Remove unused
19226 variables.
19227
19228 * character.h (string_escape_byte8): Declare.
19229
19230 * charset.c (load_charset_map, load_charset_map_from_file): Remove
19231 unused vars.
19232 (Fdefine_charset_internal, Fsplit_char, syms_of_charset)
19233 (Fmap_charset_chars): Doc fix.
19234
19235 * coding.c (Vchar_coding_system_table, Qchar_coding_system): Remove.
19236 (Fset_coding_system_priority, Fset_coding_system_priority)
19237 (Fdefine_coding_system_internal): Doc fix.
19238
192392008-02-01 Dave Love <fx@gnu.org>
19240
19241 * s/osf5-0.h (C_SWITCH_SYSTEM) [!__GNUC__]: Remove -nointrinsics.
19242
192432008-02-01 Kenichi Handa <handa@m17n.org>
19244
19245 * character.c (string_escape_byte8): Make multibyte string with
19246 correct size.
19247
19248 * charset.c (Fmake_char): Delete unnecessary code.
19249
192502008-02-01 Kenichi Handa <handa@m17n.org>
19251
19252 * xfns.c (x_encode_text): Allocate coding.destination here, and
19253 call encode_coding_object with dst_object Qnil.
19254
19255 * buffer.c (Fset_buffer_multibyte): Convert 8-bit bytes to
19256 multibyte form correctly.
19257
19258 * fontset.c (fs_load_font): Check fontp->full_name (not fontname)
19259 against Vfont_encoding_alist.
19260
19261 * coding.c (Fdecode_sjis_char): Fix typo (0x7F->0xFF). Fix the
19262 handling of charset list.
19263 (encode_coding_iso_2022): Setup coding->safe_charsets in advance.
19264 (decode_coding_object): Move point to coding->dst_pos before
19265 calling post-read-conversion function.
19266 (encode_coding_object): Give correct arguments to
19267 pre-write-conversion. Ignore the return value of
19268 pre-write-conversion function. Pay attention to the case that
19269 pre-write-conversion changes the current buffer. If dst_object is
19270 Qt, even if coding->src_bytes is zero, allocate at least one byte
19271 to coding->destination.
19272
19273 * coding.h (JIS_TO_SJIS): Fix typo (j1->s1, j2->s2).
19274
19275 * charset.c (Fmake_char): Make it more backward compatible.
19276 (Fmap_charset_chars): Fix docstring.
19277
192782008-02-01 Dave Love <fx@gnu.org>
19279
19280 * coding.c: Doc fixes.
19281 (Fdefine_coding_system_alias): Use names, not symbols, in
19282 coding-system-alist.
19283
192842008-02-01 Kenichi Handa <handa@m17n.org>
19285
19286 * fontset.c (free_realized_fontsets): Call Fclear_face_cache instead
19287 of calling free_realized_face.
19288
192892008-02-01 Yong Lu <lyongu@asia-infonet.com>
19290
19291 * charset.c (read_hex): Don't treat SPC as a comment starter.
19292 (decode_char): If CODE_POINT_TO_INDEX returns -1, always return -1.
19293 (Fdecode_char): Fix typo.
19294
192952008-02-01 Kenichi Handa <handa@m17n.org>
19296
19297 * charset.h (struct charset): New member `code_space_mask'.
19298
19299 * coding.c (coding_set_source): Delete the local variable beg_byte.
19300 (encode_coding_charset, Fdefine_coding_system_internal):
19301 Delete the local variable charset.
19302 (Fdefine_coding_system_internal): Setup
19303 attrs[coding_attr_charset_valids] correctly.
19304
19305 * charset.c (CODE_POINT_TO_INDEX): Utilize `code_space_mask'
19306 member to check if CODE is valid or not.
19307 (Fdefine_charset_internal): Initialize `code_space_mask' member.
19308 (encode_char): Before calling CODE_POINT_TO_INDEX, check if CODE
19309 is within the range of charset->min_code and carset->max_code.
19310
193112008-02-01 Dave Love <fx@gnu.org>
19312
19313 * syntax.h (syntax_temp) [!__GNUC__]: Declare.
19314
19315 * dispextern.h (generate_ascii_font): Fix return type.
19316
19317 * xfaces.c (generate_ascii_font): Fix arg declaration.
19318
19319 * coding.c (coding_inherit_eol_type)
19320 (Fset_terminal_coding_system_internal)
19321 (Fset_safe_terminal_coding_system_internal): Fix arg declarations.
19322
193232008-02-01 Kenichi Handa <handa@m17n.org>
19324
19325 * coding.c (decode_coding_charset, encode_coding_charset): Handle
19326 multiple charsets correctly.
19327
193282008-02-01 Kenichi Handa <handa@m17n.org>
19329
19330 * search.c (boyer_moore): Fix handling of multibyte character
19331 translation.
19332
19333 * xdisp.c (display_mode_element): When the variable `elt' is
19334 changed, update `this' and `lisp_string'.
19335
193362008-02-01 Kenichi Handa <handa@m17n.org>
19337
19338 * buffer.c (Fset_buffer_multibyte): Fix 8-bit char handling.
19339
19340 * callproc.c (Fcall_process): Be sure to give the current buffer
19341 to decode_coding_c_string. Update PT and PT_BYTE after the insertion.
19342
19343 * charset.c (struct charset_map_entries): New struct.
19344 (load_charset_map): Rename from parse_charset_map. New args
19345 entries and n_entries. Change caller.
19346 (load_charset_map_from_file): Rename from load_charset_map.
19347 Change caller. New arg control_flag. Call load_charset_map at
19348 the tail.
19349 (load_charset_map_from_vector): New function.
19350 (Fdefine_charset_internal): Setup charset.compact_codes_p.
19351 (encode_char): If the charset is compact, change a character index
19352 to a code point.
19353
19354 * coding.c (coding_alloc_by_making_gap): Check the case that the
19355 source and destination are the same correctly.
19356 (decode_coding_raw_text): Set coding->consumed_char and
19357 coding->consumed to 0.
19358 (produce_chars): If coding->chars_at_source is nonzero, update
19359 coding->consumed_char and coding->consumed before calling
19360 alloc_destination.
19361 (Fdefine_coding_system_alias): Register ALIAS in
19362 Vcoding_system_alist.
19363 (syms_of_coding): Define `no-conversion' coding system at the tail.
19364
19365 * fileio.c (Finsert_file_contents): Set coding_system instead of
19366 val. If the current buffer is multibyte, always call
19367 decode_coding_gap.
19368
19369 * xfaces.c (try_font_list): Give higher priority to fontset's
19370 family than face's family.
19371
193722008-02-01 Kenichi Handa <handa@m17n.org>
19373
19374 * callproc.c (Fcall_process): Be sure to give the current buffer
19375 to decode_coding_c_string.
19376
19377 * xfaces.c (try_font_list): Give a family specified in a fontset
19378 higher priority than a family specified in a face.
19379
193802008-02-01 Kenichi Handa <handa@m17n.org>
19381
19382 * fileio.c (Finsert_file_contents): Fix calculation of `inserted'.
19383 Fix arguments to insert_from_buffer.
19384
19385 * xdisp.c (display_mode_element): Fix calculation of `bytepos'.
19386
193872008-02-01 Kenichi Handa <handa@m17n.org>
19388
19389 * coding.c (produce_chars): Set the variable `multibytep' correctly.
19390 (decode_coding_gap): Set coding->dst_multibyte correctly.
19391
193922008-02-01 Kenichi Handa <handa@m17n.org>
19393
19394 * coding.c (encode_coding_utf_8): Initialize produced_chars to 0.
19395 (decode_coding_utf_16): Fix converting high and low bytes to code-point.
19396 (encode_coding_utf_16): Substitute coding->default_char for
19397 non-Unicode characters.
19398 (decode_coding): Don't call record_insert here.
19399 (setup_coding_system): Initialize `surrogate' of
19400 coding->spec.utf_16 to 0.
19401 (EMIT_ONE_BYTE): Fix for multibyte case.
19402
19403 * insdel.c (insert_from_gap): Call record_insert.
19404
194052008-02-01 Kenichi Handa <handa@m17n.org>
19406
19407 * casefiddle.c (casify_region): Fix multibyte case.
19408
19409 * character.c (c_string_width): Add return type `int'.
19410 (char_string_with_unification): Delete arg ADVANCED.
19411
19412 * character.h (CHAR_VALID_P): Don't call CHARACTERP.
19413 (CHAR_STRING): Adjust for the change of char_string_with_unification.
19414 (CHAR_STRING_ADVANCE): Make it do-while statement.
19415
19416 * chartab.c (sub_char_table_set_range): Optimize for the case
19417 DEPTH == 3. Add workaround code for a GCC optimization bug.
19418
19419 * charset.c (parse_charset_map): Remove an unused variable.
19420
19421 * coding.c: Delete unused variables.
19422
19423 * fileio.c (Finsert_file_contents): Set coding_system to Qnil
19424 earlier. If inserted is zero and the coding system doesn't
19425 require flushing, don't call decode_coding_gap.
19426
19427 * syntax.h (SET_RAW_SYNTAX_ENTRY): Don't call make_number.
19428
194292008-02-01 Kenichi Handa <handa@m17n.org>
19430
19431 The following changes are for using Unicode as an internal
19432 character model, and use UTF-8 format for buffer/string
19433 representation.
19434
19435 * .gdbinit (xchartable): Adjust for the change of char table structure.
19436 (xsubchartable, xcoding, xcharset, xcurbuf): New commands.
19437
19438 * Makefile.in (obj): Add character.o and chartab.o.
19439 (lisp, shortlisp): Remove utf-8.elc.
19440 (*.o): For many files, change dependency on charset.h to
19441 character.h, and add dependency on character.h.
19442 (character.o, chartab.o): New targets.
19443
19444 * abbrev.c, bytecode.c, casefiddle.c, cmds.c, dispnew.c, doc.c:
19445 * doprnt.c, dosfns.c, frame.c, marker.c, minibuf.c, msdos.c:
19446 * w16select.c, w32bdf.c, w32console.c: Include "character.h" instead
19447 of "charset.h".
19448
19449 * dired.c, filelock.c: Include "character.h".
19450
19451 * alloc.c: Include "character.h" instead of "charset.h".
19452 (Fmake_char_table, make_sub_char_table): Move to chartab.c.
19453 (syms_of_alloc): Remove defsubr for Smake_char_table.
19454
19455 * buffer.c: Include "character.h" instead of "charset.h", don't
19456 include "coding.h".
19457 (Fset_buffer_multibyte): Adjust for UTF-8.
19458
19459 * buffer.h: EXFUN Fbuffer_live_p.
19460
19461 * callproc.c: Include "character.h" instead of "charset.h".
19462 (Fcall_process): Big change for the new code-conversion APIs.
19463
19464 * casetab.c: Include "character.h" instead of "charset.h".
19465 (set_canon, set_identity, shuffle): Adjust for the new
19466 map_char_table spec.
19467 (init_casetab_once): Call CHAR_TABLE_SET instead of directly
19468 accessing the char table structure.
19469
19470 * chartab.c: New file that implements char table.
19471
19472 * category.c: Include "character.h".
19473 (copy_category_entry): New function.
19474 (copy_category_table): Call map_char_table and copy_category_entry.
19475 (Fmake_category_table): Initialize all top-level slots.
19476 (char_category_set): New function.
19477 (modify_lower_category_set): Delete.
19478 (Fmodify_category_entry): Call char_table_ref_and_range.
19479
19480 * category.h (CATEGORY_SET): Just call char_category_set.
19481
19482 * ccl.c: Include "character.h".
19483 (Qccl, Qcclp): New variables.
19484 (CCL_WRITE_CHAR): Alway treat the arg CH as a character even if
19485 it's less than 256.
19486 (CCL_WRITE_MULTIBYTE_CHAR): Delete.
19487 (CCL_WRITE_STRING, CCL_READ_CHAR): Adjust for the change of SRC
19488 and DST type.
19489 (ccl_driver): Change types of argument, adjust code accordingly.
19490 (Fccl_execute, Fccl_execute_on_string): Adjust for the change of
19491 ccl_driver.
19492 (syms_of_ccl): Intern and staticpro Qccl and Qcclp.
19493
19494 * ccl.h (struct ccl_program): Delete members eol_type and multibyte.
19495 New members src_multibyte, dst_multibyte, consumed, and produced.
19496 (struct ccl_spec): Delete members decoder and encoder. New member ccl.
19497 (CODING_SPEC_CCL_PROGRAM): New macro.
19498 (ccl_driver): Update prototype.
19499 (Qccl, Qcclp, Fccl_program_p): Extern them.
19500 (CHECK_CCL_PROGRAM): New macro.
19501
19502 * character.c, character.h, chartab.c: New files.
19503
19504 * charset.c: Mostly re-written. Move character and multibyte sequence
19505 handling codes to character.c.
19506
19507 * charset.h: Mostly re-written. Move character and multibyte sequence
19508 handling codes to character.h.
19509
19510 * coding.c, coding.h: Mostly re-written.
19511
19512 * composite.c: Include "character.h" instead of "charset.h".
19513 (CHAR_WIDTH): Move to character.h.
19514 (HASH_KEY, HASH_VALUE): Delete.
19515
19516 * composite.h (enum composition_method): Change order of enumeration
19517 symbols.
19518
19519 * data.c: Include "character.h" instead of "charset.h".
19520 (Faref): Call CHAR_TABLE_REF for a char table.
19521 (Faset): Call CHAR_TABLE_SET for a char table.
19522
19523 * dispextern.h (free_realized_face, check_face_attribytes)
19524 (generate_ascii_font): Extern them.
19525 (free_realized_multibyte_face): Delete extern.
19526
19527 * disptab.h (DISP_CHAR_VECTOR): Adjust for the change of char
19528 table structure.
19529
19530 * editfns.c: Include "character.h" instead of "charset.h".
19531 (Fchar_to_string): Always call CHAR_STRING.
19532
19533 * emacs.c (main): Call init_charset_once, init_charset,
19534 syms_of_chartab, and syms_of_character.
19535
19536 * fileio.c: Include "character.h" instead of "charset.h".
19537 (Finsert_file_contents): Big change for the new code-conversion API.
19538 (choose_write_coding_system, Fwrite_region): Likewise.
19539 (build_annotations_2): Delete.
19540 (e_write): Big change for the new code-conversion API.
19541
19542 * fns.c: Include "character.h" instead of "charset.h".
19543 (copy_sub_char_table): Move to chartab.c.
19544 (Fcopy_sequence): Call copy_char_table for a char table.
19545 (concat): Delete codes calling count_multibyte.
19546 (string_char_to_byte, string_byte_to_char): Adjust for the new
19547 multibyte form.
19548 (internal_equal): Adjust for the change of char table structure.
19549 (Fchar_table_subtype, Fchar_table_parent, Fset_char_table_parent)
19550 (Fchar_table_extra_slot, Fset_char_table_extra_slot)
19551 (Fchar_table_range, Fset_char_table_range, Fset_char_table_default)
19552 (char_table_translate, optimize_sub_char_table)
19553 (Foptimize_char_table, map_char_table, Fmap_char_table): Move to
19554 chartab.c.
19555 (char_table_ref_and_index): Delete.
19556 (HASH_KEY, HASH_VALUE): Move to lisp.h.
19557 (Fmd5): Call preferred_coding_system instead of accessing
19558 Vcoding_category_list. Adjust for the new code-conversion API.
19559 (syms_of_fns): Move defsubr for char table related functions to
19560 chartab.c.
19561
19562 * fontset.c: Mostly re-written.
19563
19564 * fontset.h (struct font_info): Change type of the member encoding_type.
19565 (enum FONT_SPEC_INDEX): New enum.
19566 (fontset_font_pattern, fs_load_font): Update prototype.
19567 (FS_LOAD_FONT): Adjust for the change of fs_load_font.
19568
19569 * indent.c: Include "character.h" instead of "charset.h".
19570 (MULTIBYTE_BYTES_WIDTH): Call CHAR_WIDTH instead of WIDTH_BY_CHAR_HEAD.
19571
19572 * insdel.c: Include "character.h" instead of "charset.h".
19573 (copy_text): Don't refer to Vnonascii_translation_table.
19574 (insert_from_gap): New function.
19575
19576 * keyboard.c: Include "character.h" instead of "charset.h".
19577 (command_loop_1): Never call direct_output_forward_char before
19578 a non-ASCII character.
19579 (read_char): If Vkeyboard_translate_table is a char table, always
19580 translate a character.
19581
19582 * keymap.c: Include "character.h".
19583 (store_in_keymap): Handle the case that IDX is a cons.
19584 (Fdefine_key): Handle the case that KEY is a cons and the car part
19585 is also a cons (range).
19586 (push_key_description): Adjust for the new character code.
19587 (describe_vector): Call describe_char_table for a char table.
19588 (describe_char_table): New function.
19589
19590 * keymap.h (describe_char_table): Extern it.
19591
19592 * lisp.h (enum pvec_type): New member PVEC_SUB_CHAR_TABLE.
19593 (XSUB_CHAR_TABLE, XSETSUB_CHAR_TABLE): New macros.
19594 (CHAR_TABLE_ORDINARY_SLOTS, CHAR_TABLE_SINGLE_BYTE_SLOTS)
19595 (SUB_CHAR_TABLE_ORDINARY_SLOTS, SUB_CHAR_TABLE_STANDARD_SLOTS):
19596 Delete.
19597 (CHAR_TABLE_REF, CHAR_TABLE_SET): Adjust for the new char table
19598 structure.
19599 (CHAR_TABLE_TRANSLATE): Just call char_table_translate.
19600 (CHARTAB_SIZE_BITS_0, CHARTAB_SIZE_BITS_1, CHARTAB_SIZE_BITS_2)
19601 (CHARTAB_SIZE_BITS_3): New macros.
19602 (chartab_size): Extern it.
19603 (struct Lisp_Char_Table): Re-design.
19604 (struct Lisp_Sub_Char_Table): New structure.
19605 (HASH_KEY, HASH_VALUE): Move from fns.c.
19606 (CHARACTERBITS): Define as 22.
19607 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Adjust for the above change.
19608 (SUB_CHAR_TABLE_P): Check PVEC_CHAR_TABLE.
19609 (GC_SUB_CHAR_TABLE_P): New macro.
19610 (Fencode_coding_string, Fdecode_coding_string): Update EXFUN.
19611 (code_convert_string_norecord): Deleted extern.
19612 (init_character_once, syms_of_character, init_charset)
19613 (syms_of_composite, Qeq, Fmakehash, insert_from_gap): Extern them.
19614
19615 * lread.c: Include "character.h".
19616 (read_multibyte): New arg NBYTES.
19617 (read_escape): Change the meaning of returned *BYTEREP.
19618 (to_multibyte): Delete.
19619 (read1): Adjust the handling of char table and string.
19620
19621 * print.c: Include "character.h" instead of "charset.h".
19622 (print_string): Convert 8-bit raw bytes to octal form by
19623 string_escape_byte8.
19624 (print_object): Adjust for the new multibyte form. Print 8-bit
19625 raw bytes always in octal form. Handle sub char table correctly.
19626
19627 * process.c: Include "character.h" instead of "charset.h".
19628 (read_process_output, send_process): Adjust for the new
19629 code-conversion API.
19630
19631 * puresize.h (BASE_PURESIZE): Increase.
19632
19633 * regex.c: Include "character.h" instead of "charset.h".
19634 (BYTE8_TO_CHAR, CHAR_BYTE8_P) [not emacs]: New dummy macros.
19635 (regex_compile): Accept a range whose starting and ending
19636 character have different leading bytes.
19637 (analyse_first): Adjust for the above change.
19638
19639 * search.c: Include "character.h" instead of "charset.h".
19640 (search_buffer, boyer_moore): Adjust for the new multibyte form.
19641 (Freplace_match): Adjust for the change of multibyte_char_to_unibyte.
19642
19643 * syntax.c: Include "character.h" instead of "charset.h".
19644 (syntax_parent_lookup): Delete.
19645 (Fmodify_syntax_entry): Accept a cons as CHAR.
19646 (skip_chars): Adjust for the new multibyte form.
19647 (init_syntax_once): Call char_table_set_range instead of directly
19648 accessing the structure of a char table.
19649
19650 * syntax.h (SET_RAW_SYNTAX_ENTRY): Call CHAR_TABLE_SET.
19651 (SYNTAX_ENTRY_FOLLOW_PARENT): Delete macro.
19652 (SET_RAW_SYNTAX_ENTRY_RANGE): New macro.
19653 (SYNTAX_ENTRY_INT): Call CHAR_TABLE_REF.
19654
19655 * term.c: Include "buffer.h" and "character.h".
19656 (encode_terminal_code, write_glyphs): Adjust for the new
19657 code-conversion API.
19658 (produce_glyphs): Call CHAR_WIDTH instead of CHARSET_WIDTH.
19659
19660 * w32term.c (x_new_font): Adjust for the change of FS_LOAD_FONT.
19661
19662 * xdisp.c: Include "character.h".
19663 (get_next_display_element): Adjust for the new multibyte form.
19664 (disp_char_vector): Adjust for the new char table structure.
19665 (decode_mode_spec_coding): Adjust for the new structure of
19666 coding system.
19667 (decode_mode_spec): Adjust for the new code-conversion API.
19668
19669 * xfaces.c: Include "character.h" instead of "charset.h".
19670 (load_face_font): Adjust for the change of choose_face_font and
19671 FS_LOAD_FONT.
19672 (generate_ascii_font): New function.
19673 (set_lface_from_font_name): Adjust for the change of FS_LOAD_FONT.
19674 (set_font_frame_param): Adjust for the change of choose_face_font.
19675 (free_realized_face): Make it public.
19676 (free_realized_faces_for_fontset): Rename from
19677 free_realized_multibyte_face. Free also faces realized for ASCII.
19678 (choose_face_font): Change arguments. Adjust for the change of
19679 fontset_font_pattern and FS_LOAD_FONT.
19680
19681 * xfns.c: Include "character.h".
19682 (x_encode_text): Adjust for the new code-conversion API.
19683
19684 * xselect.c: Don't include "charset.h".
19685 (selection_data_to_lisp_data): Adjust for the new code conversion API.
19686
19687 * xterm.c: Include "character.h".
19688 (x_encode_char): New argument CHARSET. Change caller.
19689 (x_get_char_face_and_encoding, x_get_glyph_face_and_encoding):
19690 Call ENCODE_CHAR instead of SPLIT_CHAR.
19691 (x_produce_glyphs): Don't check Vnonascii_translation_table Call
19692 CHAR_WIDTH instead of CHARSET_WIDTH.
19693 (XTread_socket): Adjust for the new code-conversion API.
19694 (x_new_font): Adjust for the change of FS_LOAD_FONT.
19695 (x_load_font): Adjust for the change of struct font.
19696
196972008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
19698
19699 * xfaces.c (face_at_buffer_position): Remove unused vars.
19700
197012008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
19702
19703 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR):
19704 Fix overflow checking.
19705
197062008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
19707
19708 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR, ccl_driver):
19709 Cancel previous change.
19710
197112008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
19712
19713 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when
19714 ccl->eight_bit_control. Fix check for buffer overflow.
19715 (CCL_WRITE_MULTIBYTE_CHAR): Fix check for buffer overflow.
19716 (ccl_driver): Initialize extra_bytes to 0.
19717
197182008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
19719
19720 * keyboard.c (make_ctrl_char): If C is a multibyte character, just
19721 return it ORed with ctrl_modifier.
19722
197232008-01-29 Miles Bader <miles@gnu.org>
19724
19725 * macterm.c (XTset_vertical_scroll_bar): Fix merge mistake.
19726
197272008-01-28 Jason Rumney <jasonr@gnu.org>
19728
19729 * w32.c (stat): Don't double check for networked drive.
19730
197312008-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
19732
19733 * window.c (run_window_configuration_change_hook): New function.
19734 Code extracted from set_window_buffer. Set the selected frame.
19735 (set_window_buffer): Use it.
19736 * window.h (run_window_configuration_change_hook): Declare.
19737 * dispnew.c (change_frame_size_1): Use it instead of set-window-buffer.
19738
19739 * keyboard.c (read_char): Yet another int/Lisp_Object mixup (YAILOM).
19740
197412008-01-27 Dan Nicolaescu <dann@ics.uci.edu>
19742
19743 * Makefile.in: Remove references to unused macros.
19744
197452008-01-26 Eli Zaretskii <eliz@gnu.org>
19746
19747 * w32.c (g_b_init_get_sid_sub_authority)
19748 (g_b_init_get_sid_sub_authority_count): New static variables.
19749 (GetSidSubAuthority_Proc, GetSidSubAuthorityCount_Proc): New typedefs.
19750 (get_sid_sub_authority, get_sid_sub_authority_count): New functions.
19751 (init_user_info): Use them to retrieve uid and gid.
19752 Use 500/513, the Windows defaults, as Administrator's uid/gid.
19753 (fstat): Use pw_uid and pw_gid from the_passwd structure for
19754 st_uid and st_gid of the file.
19755
197562008-01-26 Jason Rumney <jasonr@gnu.org>
19757
19758 * w32.c (logon_network_drive): New function.
19759 (stat): Use it.
19760
197612008-01-26 Chong Yidong <cyd@stupidchicken.com>
19762
19763 * xdisp.c (pos_visible_p): Handle the case where charpos falls on
19764 invisible text covered with an ellipsis.
19765
197662008-01-25 Richard Stallman <rms@gnu.org>
19767
19768 * xdisp.c (redisplay_window): Run Qwindow_text_change_functions and
19769 jump back to beginning. Move some other initializations after that.
19770 (Qwindow_text_change_functions, Vwindow_text_change_functions):
19771 New variables.
19772 (syms_of_xdisp): Init them.
19773
19774 * keyboard.c (read_char): Restore echo_message_buffer after redisplay.
19775
19776 * buffer.c (reset_buffer_local_variables):
19777 Implement `permanent-local-hook'.
19778 (Qpermanent_local_hook): New variable.
19779 (syms_of_buffer): Init and staticpro it.
19780
197812008-01-25 Michael Albinus <michael.albinus@gmx.de>
19782
19783 * dbusbind.c (xd_retrieve_arg): Pacify GCC on x86_64 GNU/Linux.
19784
197852008-01-25 Thien-Thi Nguyen <ttn@gnuvola.org>
19786
19787 * fns.c (Fclrhash): Return TABLE.
19788
197892008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19790
19791 * macterm.c (x_scroll_bar_create): Initialize bar->redraw_needed_p.
19792 (XTset_vertical_scroll_bar): Redraw scroll bar if bar->redraw_needed_p
19793 is set even without positional changes.
19794 (x_scroll_bar_clear): Set bar->redraw_needed_p.
19795
19796 * macterm.h (struct scroll_bar): New member `redraw_needed_p'.
19797
197982008-01-23 Jason Rumney <jasonr@gnu.org>
19799
19800 * xterm.c (handle_one_xevent): Revert to counting chars not bytes.
19801
19802 * w32term.c (w32_read_socket) <WM_CHAR>: Decode characters outside
19803 the unicode range available in MULE by locale-coding-system.
19804 Improve dbcs lead byte detection. Set event timestamp and modifiers
19805 earlier.
19806
198072008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19808
19809 * mac.c (mac_emacs_pid) [MAC_OSX]: New variable.
19810 [MAC_OSX] (init_mac_osx_environment): Initialize it.
19811 [MAC_OSX] (mac_try_close_socket) [SELECT_USE_CFSOCKET]: Return 0
19812 when used on child processes.
19813
198142008-01-21 Michael Albinus <michael.albinus@gmx.de>
19815
19816 * dbusbind.c (Fdbus_method_return_internal): Rename from
19817 Fdbus_method_return.
19818 (Fdbus_unregister_object): Move to dbus.el.
19819 (Fdbus_call_method, Fdbus_method_return_internal)
19820 (Fdbus_send_signal): Improve debug messages.
19821
198222008-01-20 Martin Rudalics <rudalics@gmx.at>
19823
19824 * undo.c (undo_inhibit_record_point): New variable.
19825 (syms_of_undo): Initialize it.
19826 (record_point): Don't record point when undo_inhibit_record_point
19827 is set.
19828
198292008-01-19 Stefan Monnier <monnier@iro.umontreal.ca>
19830
19831 * process.c (list_processes_1): Don't use SCHARS on a nil buffer name.
19832
19833 * xdisp.c (Qauto_hscroll_mode): New var.
19834 (syms_of_xdisp): Initialize it.
19835 (hscroll_window_tree): Use it to lookup `auto-hscroll-mode' in each
19836 window's buffer.
19837 (hscroll_windows): Don't check automatic_hscrolling_p here.
19838
19839 * window.c (set_window_buffer): Don't unnecessarily reset hscroll and
19840 vscroll if we're setting window-buffer to the value it already has.
19841
198422008-01-18 Dan Nicolaescu <dann@ics.uci.edu>
19843
19844 * m/intel386.h: Remove references to XENIX.
19845
198462008-01-17 Andreas Schwab <schwab@suse.de>
19847
19848 * m/amdx86-64.h (START_FILES, LIB_STANDARD): Use HAVE_LIB64_DIR
19849 instead of HAVE_X86_64_LIB64_DIR.
19850 * m/ibms390x.h (START_FILES, LIB_STANDARD): Likewise.
19851
198522008-01-17 Glenn Morris <rgm@gnu.org>
19853
19854 * m/ibms390x.h (START_FILES, LIB_STANDARD): Adjust value according
19855 to HAVE_X86_64_LIB64_DIR.
19856
198572008-01-16 Dan Nicolaescu <dann@ics.uci.edu>
19858
19859 * s/irix3-3.h:
19860 * s/irix4-0.h:
19861 * s/386-ix.h:
19862 * s/domain.h:
19863 * s/hpux9-x11r4.h:
19864 * s/hpux9shxr4.h: Remove files for systems no longer supported.
19865
19866 * sysdep.c: Remove code containing references to symbols defined
19867 by unsupported systems.
19868
198692008-01-16 Glenn Morris <rgm@gnu.org>
19870
19871 * coding.c (select-safe-coding-system-function): Doc fix.
19872
198732008-01-15 Glenn Morris <rgm@gnu.org>
19874
19875 * config.in: Revert 2008-01-13 change: this is a generated file.
19876
198772008-01-13 Tom Tromey <tromey@redhat.com>
19878
19879 * lisp.h: Fix typo.
19880
198812008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
19882
19883 * m/sequent-ptx.h:
19884 * m/sequent.h:
19885 * s/ptx.h:
19886 * s/ptx4-2.h:
19887 * s/ptx4.h: Remove files for systems no longer supported.
19888
19889 * callproc.c (Fcall_process): Fix previous change.
19890
198912008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
19892
19893 * unexsunos4.c: Remove file, system not supported anymore.
19894
19895 * m/mips.h:
19896 * m/intel386.h:
19897 * callproc.c:
19898 * config.in:
19899 * ecrt0.c:
19900 * emacs.c:
19901 * fileio.c:
19902 * frame.c:
19903 * getpagesize.h:
19904 * keyboard.c:
19905 * lread.c:
19906 * process.c:
19907 * puresize.h:
19908 * sysdep.c:
19909 * systty.h:
19910 * syswait.h:
19911 * unexec.c:
19912 * xdisp.c:
19913 * alloc.c: Remove code containing references to symbols defined by
19914 unsupported systems.
19915
199162008-01-11 Kenichi Handa <handa@ni.aist.go.jp>
19917
19918 * coding.c (detect_coding_mask): Fix previous change.
19919
199202008-01-09 Kenichi Handa <handa@ni.aist.go.jp>
19921
19922 * coding.c (detect_coding_iso2022): New arg
19923 latin_extra_code_state. Allow Latin extra codes only
19924 when *latin_extra_code_state is nonzero.
19925 (detect_coding_mask): If there is a NULL byte, detect the encoding
19926 as UTF-16 or binary. If Latin extra codes exist, detect the
19927 encoding as ISO-2022 only when there's no other proper encoding is
19928 found.
19929
199302008-01-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19931
19932 * frame.c (Fmake_terminal_frame): Use #ifdef MAC_OS8 instead of
19933 #ifdef MAC_OS.
19934
199352008-01-08 Richard Stallman <rms@gnu.org>
19936
19937 * fileio.c (Ffile_name_directory, Fexpand_file_name): Doc fixes.
19938
199392008-01-06 Nick Roberts <nickrob@snap.net.nz>
19940
19941 * keyboard.c (parse_menu_item): Don't enclose key bindings on
19942 menu bar in parentheses.
19943
199442008-01-06 Dan Nicolaescu <dann@ics.uci.edu>
19945
19946 * m/7300.h:
19947 * m/acorn.h:
19948 * m/alliant-2800.h:
19949 * m/alliant.h:
19950 * m/alliant1.h:
19951 * m/alliant4.h:
19952 * m/altos.h:
19953 * m/amdahl.h:
19954 * m/apollo.h:
19955 * m/att3b.h:
19956 * m/aviion-intel.h:
19957 * m/aviion.h:
19958 * m/celerity.h:
19959 * m/clipper.h:
19960 * m/cnvrgnt.h:
19961 * m/convex.h:
19962 * m/cydra5.h:
19963 * m/delta88k.h:
19964 * m/dpx2.h:
19965 * m/dual.h:
19966 * m/elxsi.h:
19967 * m/f301.h:
19968 * m/gould-np1.h:
19969 * m/gould.h:
19970 * m/i860.h:
19971 * m/ibmps2-aix.h:
19972 * m/ibmrt-aix.h:
19973 * m/ibmrt.h:
19974 * m/irist.h:
19975 * m/is386.h:
19976 * m/isi-ov.h:
19977 * m/mega68.h:
19978 * m/mg1.h:
19979 * m/news-r6.h:
19980 * m/news-risc.h:
19981 * m/news.h:
19982 * m/nh3000.h:
19983 * m/nh4000.h:
19984 * m/ns16000.h:
19985 * m/ns32000.h:
19986 * m/nu.h:
19987 * m/orion.h:
19988 * m/orion105.h:
19989 * m/paragon.h:
19990 * m/pfa50.h:
19991 * m/plexus.h:
19992 * m/pyramid.h:
19993 * m/pyrmips.h:
19994 * m/sh3el.h:
19995 * m/sps7.h:
19996 * m/sr2k.h:
19997 * m/stride.h:
19998 * m/sun1.h:
19999 * m/sun2.h:
20000 * m/sun3-68881.h:
20001 * m/sun3-fpa.h:
20002 * m/sun3-soft.h:
20003 * m/sun3.h:
20004 * m/sun386.h:
20005 * m/symmetry.h:
20006 * m/tad68k.h:
20007 * m/tahoe.h:
20008 * m/targon31.h:
20009 * m/tek4300.h:
20010 * m/tekxd88.h:
20011 * m/tower32.h:
20012 * m/tower32v3.h:
20013 * m/ustation.h:
20014 * m/wicat.h:
20015 * m/xps100.h:
20016 * s/cxux.h:
20017 * s/cxux7.h:
20018 * s/dgux.h:
20019 * s/dgux4.h:
20020 * s/dgux5-4-3.h:
20021 * s/dgux5-4r2.h:
20022 * s/esix.h:
20023 * s/esix5r4.h:
20024 * s/hiuxmpp.h:
20025 * s/hiuxwe2.h:
20026 * s/iris3-5.h:
20027 * s/iris3-6.h:
20028 * s/isc2-2.h:
20029 * s/isc3-0.h:
20030 * s/isc4-0.h:
20031 * s/isc4-1.h:
20032 * s/newsos5.h:
20033 * s/newsos6.h:
20034 * s/osf1.h:
20035 * s/osf5-0.h:
20036 * s/riscix1-1.h:
20037 * s/riscix12.h:
20038 * s/sco4.h:
20039 * s/sco5.h:
20040 * s/sunos4-0.h:
20041 * s/sunos4-1.h:
20042 * s/sunos413.h:
20043 * s/sunos4shr.h:
20044 * s/umax.h:
20045 * s/unipl5-2.h:
20046 * s/xenix.h:
20047 * cxux-crt0.s:
20048 * unexapollo.c:
20049 * unexconvex.c:
20050 * unexenix.c:
20051 * unexsni.c: Remove files for systems no longer supported.
20052
20053 * m/intel386.h: Remove references to unsupported systems.
20054
20055 * w32.c (get_emacs_configuration): Remove reference to i860.
20056
20057 * sysdep.c: Remove dead code.
20058
200592008-01-05 Dan Nicolaescu <dann@ics.uci.edu>
20060
20061 * s/rtu.h:
20062 * m/masscomp.h: Remove files. Platform is obsolete.
20063
200642008-01-04 Michael Albinus <michael.albinus@gmx.de>
20065
20066 * dbusbind.c (Fdbus_method_return): New function.
20067 (xd_read_message): Add the serial number to the event.
20068 (Fdbus_register_method): Activate the function.
20069
200702008-01-03 Stefan Monnier <monnier@iro.umontreal.ca>
20071
20072 * keyboard.c (read_key_sequence): Fix typo.
20073
200742008-01-03 Michael Albinus <michael.albinus@gmx.de>
20075
20076 * dbusbind.c (all): Replace XCAR by CAR_SAFE and XCDR by CDR_SAFE.
20077 (xd_signature, xd_append_arg): Handle element type detection for
20078 empty arrays.
20079 (Fdbus_call_method, Fdbus_send_signal): Undo type casting for
20080 SDATA () calls; this must be solved more general.
20081 (Fdbus_register_signal): Use SBYTES instead of strlen.
20082
200832008-01-03 Magnus Henoch <magnus@zemdatav>
20084
20085 * dbusbind.c (xd_append_arg): Use unsigned char instead of
20086 unsigned int for byte values (necessary for big-endian platform).
20087 (Fdbus_call_method): Handle the case of no returned arguments.
20088
200892007-12-31 Tom Tromey <tromey@redhat.com> (tiny change)
20090
20091 * dbusbind.c (xd_read_message): Use non-static input_event struct.
20092
200932007-12-31 Magnus Henoch <mange@freemail.hu>
20094
20095 * dbusbind.c (xd_signature): Signature of variant is just "v".
20096
200972007-12-30 Michael Albinus <michael.albinus@gmx.de>
20098
20099 * dbusbind.c: Fix several errors and compiler warnings.
20100 Reported by Tom Tromey <tromey@redhat.com>.
20101 (XD_ERROR, XD_DEBUG_MESSAGE)
20102 (XD_DEBUG_VALID_LISP_OBJECT_P): Wrap code with "do ... while (0)".
20103 (xd_append_arg): Part for basic D-Bus types rewritten.
20104 (xd_retrieve_arg): Split implementation of DBUS_TYPE_BYTE and
20105 DBUS_TYPE_(U)INT16. Don't call XD_DEBUG_MESSAGE with "%f" if not
20106 appropriate.
20107 (xd_read_message): Return Qnil. Don't signal an error; it is not
20108 useful during event reading.
20109 (Fdbus_register_signal): Signal an error if the check for
20110 FUNCTIONP fails.
20111 (Fdbus_register_method): New function. The implementation is not
20112 complete, the call of the function signals an error therefore.
20113 (Fdbus_unregister_object): New function, renamed from
20114 Fdbus_unregister_signal. The initial check signals an error, if
20115 the object is not well formed.
20116
201172007-12-30 Richard Stallman <rms@gnu.org>
20118
20119 * textprop.c (get_char_property_and_overlay):
20120 Signal error if POSITION is out of range in a buffer.
20121
201222007-12-29 Martin Rudalics <rudalics@gmx.at>
20123
20124 * w32fns.c (Fx_create_frame): Make copy of frame parameters
20125 because the original parameters are in pure storage now.
20126
201272007-12-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20128
20129 * xdisp.c (phys_cursor_in_rect_p): Check if cursor is in fringe area.
20130
201312007-12-22 Eli Zaretskii <eliz@gnu.org>
20132
20133 * callint.c (syms_of_callint) <command-history>: Add reference to
20134 history-length in the doc string.
20135
201362007-12-17 Jason Rumney <jasonr@gnu.org>
20137
20138 * w32fns.c (w32_wnd_proc) <WM_KEYDOWN>: Cast char to unsigned
20139 before passing as wParam.
20140
201412007-12-22 Michael Albinus <michael.albinus@gmx.de>
20142
20143 * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_BYTE,
20144 DBUS_TYPE_INT16, DBUS_TYPE_UINT16, DBUS_TYPE_INT64,
20145 DBUS_TYPE_UINT64, DBUS_TYPE_DOUBLE and DBUS_TYPE_SIGNATURE.
20146 Return float when DBUS_TYPE_INT32 or DBUS_TYPE_UINT32 do not fit
20147 as number.
20148 (Fdbus_call_method): Fix docstring.
20149
201502007-12-21 Michael Albinus <michael.albinus@gmx.de>
20151
20152 * dbusbind.c (XD_BASIC_DBUS_TYPE, XD_DBUS_TYPE_P, XD_NEXT_VALUE):
20153 New macros.
20154 (XD_SYMBOL_TO_DBUS_TYPE): Rename from XD_LISP_SYMBOL_TO_DBUS_TYPE.
20155 (XD_OBJECT_TO_DBUS_TYPE): Rename from XD_LISP_OBJECT_TO_DBUS_TYPE.
20156 Simplify.
20157 (xd_signature): New function.
20158 (xd_append_arg): Compute also signatures. Major rewrite.
20159 (xd_retrieve_arg): Make debug messages friendly.
20160 (Fdbus_call_method, Fdbus_send_signal): Extend docstring.
20161 Check for signatures of arguments.
20162
201632007-12-19 Michael Albinus <michael.albinus@gmx.de>
20164
20165 * dbusbind.c (QCdbus_type_byte, QCdbus_type_boolean)
20166 (QCdbus_type_int16, QCdbus_type_uint16, QCdbus_type_int32)
20167 (QCdbus_type_uint32, QCdbus_type_int64, QCdbus_type_uint64)
20168 (QCdbus_type_double, QCdbus_type_string, QCdbus_type_object_path)
20169 (QCdbus_type_signature, QCdbus_type_array, QCdbus_type_variant)
20170 (QCdbus_type_struct, QCdbus_type_dict_entry): New D-Bus type symbols.
20171 (XD_LISP_SYMBOL_TO_DBUS_TYPE): New macro.
20172 (XD_LISP_OBJECT_TO_DBUS_TYPE): Add compound types.
20173 (xd_retrieve_value): Remove. Functionality included in ...
20174 (xd_append_arg): New function.
20175 (Fdbus_call_method, Fdbus_send_signal): Apply it.
20176
201772007-12-16 Michael Albinus <michael.albinus@gmx.de>
20178
20179 * dbusbind.c (top): Include <stdio.h>.
20180 (Fdbus_call_method, Fdbus_send_signal): Apply type cast in
20181 dbus_message_new_method_call and dbus_message_new_signal.
20182 (Fdbus_register_signal): Rename unique_name to uname.
20183 Check handler for FUNCTIONP instead of CHECK_SYMBOL. Handle case of
20184 non-existing unique name. Fix typos in matching rule. Return an
20185 object which is useful in Fdbus_unregister_signal.
20186 (Fdbus_unregister_signal): Reimplementation, in order to remove
20187 only the corresponding entry.
20188 (Vdbus_registered_functions_table): Change the order of entries.
20189 Apply these changes in xd_read_message and Fdbus_register_signal.
20190
201912007-12-16 Andreas Schwab <schwab@suse.de>
20192
20193 * fileio.c (Finsert_file_contents): Fix overflow check to not
20194 depend on undefined integer overflow.
20195
201962007-12-14 Jason Rumney <jasonr@gnu.org>
20197
20198 * w32term.c (w32_read_socket): Use MULTIBYTE_CHAR_KEYSTROKE_EVENT
20199 for characters above 127.
20200
202012007-12-13 Jason Rumney <jasonr@gnu.org>
20202
20203 * w32fns.c (w32_wnd_proc, Fw32_reconstruct_hot_key): Range check
20204 before dereferencing array.
20205 (lookup_vk_code): Remove zero comparison.
20206
202072007-12-14 Michael Albinus <michael.albinus@gmx.de>
20208
20209 * dbusbind.c (xd_retrieve_value, xd_retrieve_arg)
20210 (Fdbus_call_method, Fdbus_send_signal, xd_read_message):
20211 Use `unsigned int' instead of `uint'.
20212 (xd_read_message, Fdbus_register_signal): Split expressions into
20213 multiple lines before operators "&&" and "||", according to the
20214 GNU Coding Standards.
20215
202162007-12-14 Eli Zaretskii <eliz@gnu.org>
20217
20218 * dispextern.h (WINDOWS_NT): Fix incorrect spelling of WINDOWSNT.
20219
202202007-12-12 Juri Linkov <juri@jurta.org>
20221
20222 * buffer.c (Frename_buffer): In interactive spec replace
20223 `read-buffer' with `read-string' that uses `buffer-name-history'
20224 as history, and the current buffer's name as default.
20225
202262007-12-10 Stefan Monnier <monnier@iro.umontreal.ca>
20227
20228 * keyboard.c (Fcommand_execute): Call Qcall_interactively instead of
20229 manipulating the backtrace manually.
20230 (make_lispy_event): Merge the ASCII and MULTIBYTE cases.
20231 (struct backtrace, backtrace_list): Remove.
20232 (command_loop_1): Remove dead var `no_direct'.
20233
20234 * buffer.c (reset_buffer_local_variables): If permanent_too is 0, also
20235 preserve non-built-in buffer-local variables.
20236 (Fkill_all_local_variables): Don't re-create&re-set permanent
20237 buffer-local variables.
20238
202392007-12-09 Juri Linkov <juri@jurta.org>
20240
20241 * buffer.c (Frename_buffer): Change interactive spec from "s" to
20242 Lisp code that uses `read-buffer' with current buffer as default.
20243
202442007-12-08 Michael Albinus <michael.albinus@gmx.de>
20245
20246 * dbusbind.c (xd_read_message): Generate an event for every
20247 registered handler. There might be several handlers registered
20248 for the same signal.
20249 (Fdbus_register_signal): Don't overwrite a registration for the
20250 same signal. Add a new registration if handlers are different.
20251 (Vdbus_registered_functions_table): Rework doc string.
20252
202532007-12-07 Michael Albinus <michael.albinus@gmx.de>
20254
20255 * dbusbind.c (Fdbus_get_unique_name, xd_read_message)
20256 (Fdbus_register_signal): Use DBUS_MAXIMUM_NAME_LENGTH and
20257 DBUS_MAXIMUM_MATCH_RULE_LENGTH for string lengths.
20258 (Fdbus_call_method, Fdbus_send_signal, Fdbus_register_signal):
20259 Unify argument lists.
20260 (xd_read_message, Fdbus_register_signal): Reorder and extend event
20261 arguments and hash table keys. Use unique name for service.
20262 (Fdbus_unregister_signal): Remove checks.
20263 (Vdbus_registered_functions_table): Fix doc string.
20264
202652007-12-05 Magnus Henoch <mange@freemail.hu>
20266
20267 * process.c (make_process): Initialize pty_flag to 0.
20268
202692007-12-05 Jason Rumney <jasonr@gnu.org>
20270
20271 * image.c (xbm_load) [WINDOWSNT]: Shuffle the bits of directly
20272 specified XBMs.
20273
202742007-12-05 Richard Stallman <rms@gnu.org>
20275
20276 * xdisp.c (syms_of_xdisp) <scroll-conservatively>: Doc fix.
20277
202782007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20279
20280 * mac.c (cfsockets_for_select) [MAC_OSX && SELECT_USE_CFSOCKET]:
20281 New variable.
20282 (mac_try_close_socket) [MAC_OSX]: New function.
20283 [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]:
20284 Update cfsockets_for_select. Replace invalid CFRunLoop source.
20285
20286 * sysdep.c (emacs_close) [MAC_OSX && HAVE_CARBON]:
20287 Use mac_try_close_socket.
20288
202892007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20290
20291 * unexmacosx.c (unrelocate): New argument BASE. Use it instead of
20292 reloc_base.
20293 (copy_dysymtab): Compute relocation base here.
20294 (rebase_reloc_address) [__ppc64__]: New function.
20295 (copy_dysymtab) [__ppc64__]: Use it if relocation base needs to be
20296 changed.
20297
202982007-12-05 Jason Rumney <jasonr@gnu.org>
20299
20300 * w32proc.c (sys_spawnve): Quote args with wildcards.
20301
203022007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20303
20304 * unexmacosx.c (copy_data_segment): Also copy __gcc_except_tab and
20305 __objc_* sections.
20306 (unrelocate) [_LP64]: Set relocation base to address of data segment.
20307
203082007-12-05 Michael Albinus <michael.albinus@gmx.de>
20309
20310 * dbusbind.c (xd_read_message): Return value is a Lisp_Object.
20311 Move check for Vdbus_registered_functions_table to
20312 xd_read_queued_messages.
20313 (xd_read_queued_messages): Protect xd_read_message calls by
20314 internal_condition_case_1.
20315
203162007-12-04 Michael Albinus <michael.albinus@gmx.de>
20317
20318 * dbusbind.c (QCdbus_system_bus, QCdbus_session_bus): Rename from
20319 Qdbus_system_bus and Qdbus_session_bus, respectively.
20320 (Vdbus_intern_symbols): Remove.
20321 (Vdbus_registered_functions_table): New hash table.
20322 (XD_SYMBOL_INTERN_SYMBOL): Remove.
20323 (xd_read_message, Fdbus_register_signal, Fdbus_unregister_signal):
20324 Rewrite in order to manage registered functions by hash table
20325 Vdbus_registered_functions_table.
20326
203272007-12-03 Jan Djärv <jan.h.d@swipnet.se>
20328
20329 * xterm.c: Update URL to Window Manager Specification in comment.
20330
203312007-12-02 Michael Albinus <michael.albinus@gmx.de>
20332
20333 * config.in (HAVE_DBUS): Add.
20334
20335 * Makefile.in (HAVE_DBUS): Add D-Bus definitions if defined.
20336 (ALL_CFLAGS): Add ${DBUS_CFLAGS}.
20337 (obj): Add $(DBUS_OBJ).
20338 (LIBES): Add $(DBUS_LIBS).
20339 (dbusbind.o): New target.
20340
20341 * dbusbind.c: New file.
20342
20343 * emacs.c (main): Call syms_of_dbusbind when HAVE_DBUS is defined.
20344
20345 * keyboard.c: All D-Bus related code is wrapped by "#ifdef HAVE_DBUS".
20346 (Qdbus_event): New Lisp symbol.
20347 (kbd_buffer_get_event, make_lispy_event): Handle DBUS_EVENT.
20348 (gobble_input): Call xd_read_queued_messages, reading D-Bus messages.
b97439ce 20349 (keys_of_keyboard): Define dbus-event.
aac0c6e3
MR
20350
20351 * termhooks.h (event_kind): Add DBUS_EVENT when HAVE_DBUS is defined.
20352
203532007-12-01 Richard Stallman <rms@gnu.org>
20354
20355 * search.c (syms_of_search) <inhibit-changing-match-data>: Doc fix.
20356
203572007-11-30 Jason Rumney <jasonr@gnu.org>
20358
20359 * w32console.c (w32con_ins_del_lines, scroll_line): Clip to window.
20360 (w32con_reset_terminal_modes): Clear screen buffer.
20361 (w32_face_attributes): Don't use color indexes that are out of range.
20362 Only reverse the default colors.
20363
20364 * xfaces.c (map_tty_color, tty_color_name): Remove special case for
20365 WINDOWSNT.
20366
20367 * w32console.c, w32term.h (vga_stdcolor_name): Remove.
20368
203692007-11-29 Jason Rumney <jasonr@gnu.org>
20370
20371 * w32console.c: Leave HAVE_WINDOW_SYSTEM defined.
20372 (w32_face_attributes): Use Vtty_defined_color_alist to determine
20373 if the terminal colors are initialized.
20374 (unspecified_fg, unspecified_bg): Remove unused declarations.
20375
203762007-11-29 Andreas Schwab <schwab@suse.de>
20377
20378 * keyboard.c (apply_modifiers): Fix typo.
20379
203802007-11-29 Richard Stallman <rms@gnu.org>
20381
20382 * keymap.c (Fcurrent_local_map): Doc fix.
20383
203842007-11-28 Petr Salinger <Petr.Salinger@seznam.cz> (tiny change)
20385
20386 * s/gnu-kfreebsd.h: New file.
20387
203882007-11-28 Stefan Monnier <monnier@iro.umontreal.ca>
20389
20390 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer):
20391 Don't cast redundantly.
20392
20393 * keyboard.c (KEY_TO_CHAR): New macro.
20394 (parse_modifiers, apply_modifiers): Accept integer arguments.
20395 (read_key_sequence): Use them to unify the "shift->unshift" mapping
20396 for chars and symbol keys.
20397 After doing such remapping, apply function-key-map again.
20398
203992007-11-27 Dan Nicolaescu <dann@ics.uci.edu>
20400
20401 * Makefile.in (SOME_MACHINE_LISP): Remove VMS files, they are not
20402 compiled anymore.
20403
204042007-11-26 Andreas Schwab <schwab@suse.de>
20405
20406 * process.c (list_processes_1): Fix indentation level of the
20407 command column.
20408
204092007-11-23 Andreas Schwab <schwab@suse.de>
20410
20411 * editfns.c (Fformat): Handle %c specially since it requires the
20412 argument to be of type int.
20413
204142007-11-23 Markus Triska <markus.triska@gmx.at>
20415
20416 * emacs.c (main): Call init_editfns before init_process, since
20417 init_process sets Vprocess_connection_type depending on OS release.
20418
204192007-11-22 Stefan Monnier <monnier@iro.umontreal.ca>
20420
20421 * data.c (do_symval_forwarding): Use same code as in find_symbol_value.
20422 (find_symbol_value): Use do_symval_forwarding.
20423
20424 * data.c (set_internal): Set the value in the `cons-cell' (for
20425 Buffer_Local_values) not only for frame-local variables.
20426
204272007-11-22 Andreas Schwab <schwab@suse.de>
20428
20429 * data.c (Fnumber_to_string): Add cast when passing EMACS_INT
20430 values to sprintf.
20431 * keymap.c (Fsingle_key_description): Likewise.
20432 * print.c (print_object): Likewise.
20433
204342007-11-22 Jan Djärv <jan.h.d@swipnet.se>
20435
20436 * gtkutil.c (update_frame_tool_bar): Don't call x-gtk-map-stock if
20437 file for image is nil.
20438
204392007-11-22 Dan Nicolaescu <dann@ics.uci.edu>
20440
20441 * term.c: Include stdarg.h.
20442 (fatal): Implement using varargs.
20443 * lisp.h (fatal): Add argument types. (Restore 2005-09-30 change).
20444
204452007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
20446
20447 * lisp.h (struct Lisp_Buffer_Objfwd): Add a `slottype' field.
20448 * data.c (store_symval_forwarding): Get type from buffer_objfwd.
20449 Update call to buffer_slot_type_mismatch.
20450 * buffer.h (buffer_local_types, PER_BUFFER_TYPE): Remove.
20451 (buffer_slot_type_mismatch): Update.
20452 * buffer.c (buffer_local_types): Remove.
20453 (buffer_slot_type_mismatch): Get the symbol and type as arguments.
20454 (defvar_per_buffer): Set the type in the buffer_objfwd.
20455
204562007-11-21 Jason Rumney <jasonr@gnu.org>
20457
20458 * w32bdf.c (w32_init_bdf_font, w32_BDF_to_x_font):
20459 CreateFileMapping returns NULL on failure.
20460
204612007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
20462
20463 * search.c (Fset_match_data): Remove the `evaporate' feature.
20464 (unwind_set_match_data): Don't use the `evaporate' feature.
20465
204662007-11-21 Jason Rumney <jasonr@gnu.org>
20467
20468 * dispnew.c (init_display) [WINDOWSNT]: Hardcode terminal_type.
20469
20470 * w32console.c (w32con_write_glyphs): Remove unused variables.
20471
204722007-11-20 Dan Nicolaescu <dann@ics.uci.edu>
20473
20474 * macterm.c (mac_term_init): Call add_keyboard_wait_descriptor.
20475
20476 * s/darwin.h (MULTI_KBOARD): Remove.
20477
20478 * macfns.c (x_create_tip_frame, Fx_create_frame)
20479 (x_create_tip_frame): Don't deal with MULTI_KBOARD.
20480
204812007-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
20482
20483 * buffer.c (Fbuffer_local_value): Remove redundant test.
20484 (swap_out_buffer_local_variables): Swap out binding in `buffer' rather
20485 than in `current-buffer' to match the comment.
20486 Do the swap using swap_in_global_binding.
20487
20488 * data.c (store_symval_forwarding, set_internal):
20489 * eval.c (specbind): Remove dead code.
20490
20491 * coding.c (detect_coding, Fupdate_coding_systems_internal):
20492 * fns.c (Fmd5): Use find_symbol_value rather than SYMBOL_VALUE
20493 Since we do not want to see internal Lisp_*fwd objects here.
20494
204952007-11-18 Jan Djärv <jan.h.d@swipnet.se>
20496
20497 * sysdep.c (init_system_name): Use getaddrinfo if available.
20498
20499 * xterm.c (x_scroll_bar_set_handle, x_scroll_bar_handle_click)
20500 (x_scroll_bar_note_movement): start, end, with, height in struct
20501 scroll_bar are integers and not Lisp_Object, so remove XINT for them.
20502
205032007-11-17 Dan Nicolaescu <dann@ics.uci.edu>
20504
20505 * puresize.h (BASE_PURESIZE): Increase to 1190000.
20506
205072007-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
20508
20509 * buffer.h (struct buffer): Move `undo_list' back to before `name'.
20510 This undoes Richard's change of 14-Oct-2002.
20511
20512 * alloc.c (allocate_other_vector):
20513 * lisp.h (allocate_other_vector): Remove.
20514
20515 * window.c (struct save_window_data): Move non-lisp data to the end
20516 and make it `int' rather than Lisp_Object.
20517 (Fcurrent_window_configuration): Use ALLOCATE_PSEUDOVECTOR.
20518 Done wrap/unwrap integer values.
20519 (Fset_window_configuration, compare_window_configurations):
20520 Update use of fields to their new types.
20521
20522 * xterm.h (struct scroll_bar): Only use Lisp_Object for lisp data.
20523 Turn integer fields into `int'. Merge x_window_low and x_window_high.
20524 (SCROLL_BAR_PACK, SCROLL_BAR_UNPACK, SCROLL_BAR_X_WINDOW)
20525 (SET_SCROLL_BAR_X_WINDOW): Remove.
20526 (SCROLL_BAR_X_WIDGET, SET_SCROLL_BAR_X_WIDGET):
20527 Access the new x_window field directly.
20528 * xterm.c (x_scroll_bar_create): Use a pseudovector.
20529 Don't wrap/unwrap integers into Lisp_Objects.
20530 (XTset_vertical_scroll_bar, x_scroll_bar_handle_click)
20531 (x_scroll_bar_report_motion):
20532 Don't wrap/unwrap integers into Lisp_Objects.
20533 (x_term_init): Use SDATA.
20534 (x_window_to_scroll_bar, x_create_toolkit_scroll_bar)
20535 (x_scroll_bar_set_handle, x_scroll_bar_remove)
20536 (XTset_vertical_scroll_bar, x_scroll_bar_expose)
20537 (x_scroll_bar_report_motion, x_scroll_bar_clear):
20538 * xfns.c (x_set_background_color):
20539 * gtkutil.c (xg_create_scroll_bar, xg_set_toolkit_scroll_bar_thumb):
20540 Access the new x_window field directly.
20541
20542 * alloc.c (ALLOCATE_PSEUDOVECTOR): Move to lisp.h.
20543 (allocate_pseudovector): Make non-static.
20544
20545 * lisp.h (enum pvec_type): New tag PVEC_OTHER.
20546 (allocate_pseudovector): Declare.
20547 (ALLOCATE_PSEUDOVECTOR): Move from alloc.c.
20548
205492007-11-15 Andreas Schwab <schwab@suse.de>
20550
20551 * editfns.c (Fformat): Correctly format EMACS_INT values.
20552 Also take precision into account when formatting an integer.
20553
20554 * keyboard.c (Fevent_symbol_parse_modifiers): Fix declaration.
20555
205562007-11-15 Stefan Monnier <monnier@iro.umontreal.ca>
20557
20558 * keyboard.c (Fevent_symbol_parse_modifiers): New function.
20559 (syms_of_keyboard): Defsubr it.
20560
20561 * data.c (swap_in_global_binding): Fix longstanding bug where
20562 store_symval_forwarding was not called with the right second argument,
20563 thus causing objfwd-ing from being dropped.
20564
205652007-11-14 Juanma Barranquero <lekktu@gmail.com>
20566
20567 * macfns.c (Fx_create_frame, Fx_display_pixel_width)
20568 (Fx_display_pixel_height, Fx_display_planes)
20569 (Fx_display_color_cells, Fx_server_max_request_size)
20570 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
20571 (Fx_display_visual_class, Fx_display_save_under):
20572 * w32fns.c (Fx_create_frame, Fx_display_pixel_width)
20573 (Fx_display_pixel_height, Fx_display_planes)
20574 (Fx_display_color_cells, Fx_server_max_request_size)
20575 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
20576 (Fx_display_mm_height, Fx_display_mm_width)
20577 (Fx_display_backing_store, Fx_display_visual_class)
20578 (Fw32_select_font, Fx_display_save_under):
20579 * xfns.c (Fx_create_frame, Fx_display_pixel_width)
20580 (Fx_display_pixel_height, Fx_display_planes)
20581 (Fx_display_color_cells, Fx_server_max_request_size)
20582 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
20583 (Fx_display_save_under): Fix typos in docstrings.
20584
205852007-11-14 Juanma Barranquero <lekktu@gmail.com>
20586
20587 * w32fns.c (Fw32_registered_hot_keys): Don't return the nil values
20588 corresponding to deleted entries; they are an implementation detail.
20589 (gray_bitmap_width, gray_bitmap_height, gray_bitmap_bits):
20590 Remove variables.
20591 (w32_pass_extra_mouse_buttons_to_system, w32_strict_fontnames)
20592 (w32_pass_multimedia_buttons_to_system, w32_strict_painting)
20593 (Vw32_charset_info_alist, w32_to_x_color, w32_init_class)
20594 (w32_createscrollbar, w32_createwindow, my_post_msg, w32_get_modifiers)
20595 (w32_grabbed_keys, cancel_all_deferred_msgs): Make static.
20596 (Fw32_define_rgb_color, Fw32_load_color_file)
20597 (syms_of_w32fns) <w32-pass-multimedia-buttons-to-system>:
20598 Fix typos in docstrings.
20599 (Fx_server_version): Reflow docstring.
20600 (Fw32_shell_execute): Doc fixes.
20601
206022007-11-13 Juanma Barranquero <lekktu@gmail.com>
20603
20604 * w32fns.c (Fw32_register_hot_key): Don't try to register hot key
20605 if w32_parse_hot_key returned nil.
20606
206072007-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
20608
20609 * xdisp.c (load_overlay_strings): Fix copy&paste typo.
20610
206112007-11-09 Jason Rumney <jasonr@gnu.org>
d6c952f8 20612
aac0c6e3
MR
20613 * s/ms-w32.c (USE_TOOLKIT_SCROLL_BARS): Define.
20614
20615 * w32term.c (w32_scroll_bar_handle_click): Use SCROLL_BAR_CLICK_EVENT.
20616
20617 * keyboard.c (discard_mouse_events, make_lispy_event) [WINDOWSNT]:
20618 Remove W32_SCROLL_BAR_CLICK_EVENT.
20619
20620 * termhooks.h (enum event_kind) [WINDOWSNT]: Likewise.
20621 Add MULTIMEDIA_KEY_EVENT.
20622
20623 * keyboard.c (lispy_function_keys) [WINDOWSNT]: Add more keys.
20624 (lispy_multimedia_keys) [WINDOWSNT]: New array.
20625 (make_lispy_event) [WINDOWSNT]: Use it to translate
20626 MULTIMEDIA_KEY_EVENT.
20627
20628 * w32term.h (WM_APPCOMMAND): Define if not already.
20629 (GET_APPCOMMAND_LPARAM): Likewise.
20630
20631 * w32term.c (w32_read_socket): Generate MULTIMEDIA_KEY_EVENT from
20632 WM_APPCOMMAND.
20633
20634 * w32fns.c (w32_pass_multimedia_buttons_to_system): New user option.
20635 (syms_of_w32fns): Export and initialize it.
20636 (w32_wnd_proc): Pass WM_APPCOMMAND on to w32_read_socket.
20637
206382007-11-09 Chong Yidong <cyd@stupidchicken.com>
20639
20640 * dispextern.h (struct it): Don't define OVERLAY_STRING_CHUNK_SIZE
20641 twice.
20642
20643 * xdisp.c (handle_face_prop): Fix last change.
20644
206452007-11-09 Richard Stallman <rms@gnu.org>
20646
20647 * xdisp.c (handle_face_prop): Test for strings that came from overlays,
20648 not just for after-strings and before-strings.
20649 Call face_for_overlay_string and pass the overlay to it.
20650 (handle_display_prop): Determine whether property came from an overlay.
20651 Pass OVERLAY arg to handle_single_display_spec.
20652 (handle_single_display_spec): New arg OVERLAY sets it->from_overlay.
20653 (load_overlay_strings): Fill in it->string_overlays.
20654 (get_overlay_strings_1, push_it, pop_it): Handle it->from_overlays.
20655
20656 * xfaces.c (face_for_overlay_string): Function renamed from
20657 face_at_buffer_position_no_overlays, and add arg OVERLAY.
20658
20659 * dispextern.h (struct it): New elt string_overlays.
20660 New elt from_overlay, also in stack.
20661 Rearrange a few elements.
20662 (face_for_overlay_string): Decl renamed from
20663 face_at_buffer_position_no_overlays, and add argument.
20664
206652007-11-09 Richard Stallman <rms@gnu.org>
20666
20667 * xdisp.c (handle_face_prop): Use face_at_buffer_position_no_overlays
20668 to get the base face for an overlay string.
20669
20670 * dispextern.h (face_at_buffer_position_no_overlays): Add decl.
20671
20672 * xfaces.c (face_at_buffer_position_no_overlays): New function.
20673
20674 * xdisp.c (handle_stop): Move some code out of loop.
20675
206762007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20677
20678 * macfns.c [USE_ATSUI] (Fmac_atsu_font_face_attributes):
20679 Fix conversion from Lisp object to ATSUFontID.
20680
206812007-11-09 Jason Rumney <jasonr@gnu.org>
20682
20683 * xdisp.c (Fformat_mode_line): Do nothing when noninteractive.
20684
206852007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20686
20687 * unexmacosx.c (unexec_regions_recorder, unexec_regions_merge):
20688 Don't assume regions are aligned to page boundary.
20689 (print_load_command_name): Add LC_UUID if defined.
20690
206912007-11-09 Richard Stallman <rms@gnu.org>
20692
20693 * emacs.c (syms_of_emacs) <installation-directory>: Reflow docstring.
20694
206952007-11-07 Jason Rumney <jasonr@gnu.org>
20696
20697 * s/windows95.h: Remove.
20698
206992007-11-06 Jan Djärv <jan.h.d@swipnet.se>
20700
20701 * gtkutil.c (xg_tool_bar_menu_proxy): Handle GTK_IMAGE_ICON_NAME and
20702 abort with a message on unhandled store_type values.
20703
207042007-11-01 Jan Djärv <jan.h.d@swipnet.se>
20705
20706 * xterm.c, xfns.c, xselect.c, xterm.h, s/msdos.h, s/sco4.h, s/sco5.h:
20707 Remove HAVE_X11R5 and HAVE_X11R4.
20708
207092007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
20710
20711 * Makefile.in: Remove references to sunfns.c and sunfns.o.
20712
207132007-11-01 Johan Bockgård <bojohan@gnu.org>
20714
20715 * macterm.c, w32term.c, xterm.c (x_draw_stretch_glyph_string):
20716 Don't set s->stippled_p here, since it has already been set by
20717 x_set_glyph_string_gc from x_draw_glyph_string.
20718
207192007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
20720
20721 * sunfns.c: Remove file.
20722
20723 * m/sun386.h:
20724 * m/sun2.h:
20725 * m/sparc.h: Remove Sun windows code.
20726
207272007-10-31 Stefan Monnier <monnier@iro.umontreal.ca>
20728
20729 * keyboard.c (syms_of_keyboard): Initialize the initial_kboard.
20730 (init_keyboard): Set current_kboard's window-system to nil.
20731 (tty_read_avail_input): Typo.
20732 * frame.c (make_initial_frame): Don't initialize the initial_kboard.
20733
207342007-10-31 Dan Nicolaescu <dann@ics.uci.edu>
20735
20736 * s/usg5-4.h:
20737 * s/usg5-3.h:
20738 * s/ptx.h:
20739 * m/is386.h:
20740 * m/ibmps2-aix.h:
20741 * Makefile.in: Remove all mentions of X10.
20742
20743 * dispnew.c (syms_of_display): Don't mention version 10.
20744
207452007-10-28 Juanma Barranquero <lekktu@gmail.com>
20746
20747 * makefile.w32-in (OBJ1): Remove abbrev.$(O).
20748 ($(BLD)/abbrev.$(O)): Remove.
20749
207502007-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
20751
20752 Rewrite abbrev.c in Elisp.
20753 * image.c (Qcount): Don't declare as extern.
20754 (syms_of_image): Initialize and staticpro `Qcount'.
20755 * puresize.h (BASE_PURESIZE): Increase for the new abbrev.el functions.
20756 * emacs.c (main): Don't call syms_of_abbrev.
20757 * Makefile.in (obj): Remove abbrev.o.
20758 (abbrev.o): Remove.
20759 * abbrev.c: Remove.
20760
207612007-10-26 Martin Rudalics <rudalics@gmx.at>
20762
20763 * window.c (window_min_size_2): Don't count header-line.
20764
207652007-10-26 Dan Nicolaescu <dann@ics.uci.edu>
20766
20767 * frame.h (struct frame): Move all bit fields after the first bit
20768 field to take advantage of the available space. Group all the
20769 chars together to reduce wasted space due to padding.
20770
207712007-10-26 Juanma Barranquero <lekktu@gmail.com>
20772
20773 * minibuf.c (Fread_minibuffer, Feval_minibuffer): Reflow docstrings.
20774
20775 * alloc.c (spare_memory, stack_copy, stack_copy_size, ignore_warnings)
20776 (Vdead, dont_register_blocks, staticvec, staticidx, interval_block)
20777 (n_interval_blocks, init_strings, check_string_bytes, check_sblock)
20778 (init_float, free_float, n_cons_blocks, init_cons, all_vectors)
20779 (n_vectors, symbol_block, symbol_block_index, symbol_free_list)
20780 (n_symbol_blocks, init_symbol, marker_block, marker_free_list)
20781 (n_marker_blocks, init_marker, valid_pointer_p, make_pure_float)
20782 (last_marked, mark_object_loop_halt): Make static.
20783
20784 * frame.c (syms_of_frame) <delete-frame-functions>:
20785 Fix typo in docstring.
20786
207872007-10-25 Juanma Barranquero <lekktu@gmail.com>
20788
20789 * w32.c (init_environment): Fix tiny memory leak.
20790 (w32_get_resource): Remove unused variable `ok'.
20791
207922007-10-25 Stefan Monnier <monnier@iro.umontreal.ca>
20793
20794 Make `window-system' into a keyboard-local variable (rather than
20795 frame-local as done originally by multi-tty).
20796
20797 * keyboard.h (struct kboard): Add Vwindow_system.
20798 * keyboard.c (init_kboard): Set a default for Vwindow_system.
20799 (mark_kboards): Mark Vwindow_system.
20800
20801 * dispnew.c (syms_of_display) <window-system>: Declare terminal-local.
20802 (init_display): Don't set the obsolete `window-system' frame-param.
20803
20804 * xterm.c (x_term_init):
20805 * w32term.c (w32_create_terminal):
20806 * term.c (init_tty): Set Vwindow_system.
20807 * macterm.c (mac_create_terminal): Set a keyboard (missing piece of the
20808 multi-tty merge maybe?), copied from w32term.c. Set Vwindow_system.
20809
20810 * xfns.c (Fx_create_frame, x_create_tip_frame):
20811 * w32fns.c (Fx_create_frame, x_create_tip_frame):
20812 * macfns.c (Fx_create_frame):
20813 Don't set the obsolete `window-system' frame-param.
20814
20815 * frame.h (Qwindow_system): Remove.
20816 * frame.c (Qwindow_system): Remove. In `syms_of_frame' as well.
20817 (Fmake_terminal_frame): Don't set obsolete `window-system' frame-param.
20818
208192007-10-24 Richard Stallman <rms@gnu.org>
20820
20821 * frame.c (x_figure_window_size): For fullscreen case,
20822 set USPosition | PPosition without clobbering rest of window_prompting.
20823
20824 * keyboard.c (Fcurrent_idle_time): Doc fix.
20825
20826 * print.c (Fwith_output_to_temp_buffer): Doc fix.
20827
208282007-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
20829
20830 * process.c (unwind_request_sigio): Only define if __ultrix__.
20831
20832 * callproc.c (child_setup): Remove spurious *.
20833
20834 * lisp.h (Fget_text_property): Declare.
20835 (have_menus_p): Declare it here rather than in sys-dep header files.
20836 * macterm.h (have_menus_p):
20837 * msdos.h (have_menus_p):
20838 * xterm.h (have_menus_p): Remove.
20839
20840 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
20841 (Fmake_variable_frame_local): Just check the variable's const-ness
20842 rather than checking nil or t.
20843
208442007-10-22 Jason Rumney <jasonr@gnu.org>
20845
20846 * w32fns.c: Include math.h.
20847 (w32_abort): Declaration moved to nt/config.nt.
20848
20849 * s/ms-w32.h (HAVE_STDLIB_H): Define.
20850 (abort): Redefinition moved to nt/config.nt.
20851
20852 * m/windowsnt.h: Remove.
20853
208542007-10-22 Juanma Barranquero <lekktu@gmail.com>
20855
20856 * emacs.c (Fdump_emacs): Fix typo in message.
20857 (syms_of_emacs) <kill-emacs-hook>: Fix typo in docstring.
20858 <installation-directory>: Reflow docstring.
20859
208602007-10-22 Juri Linkov <juri@jurta.org>
20861
20862 * minibuf.c: Allow minibuffer default to be a list of default values.
20863 With empty input use the first element of this list as returned default.
20864 (string_to_object)
20865 (read_minibuf_noninteractive): If defalt is cons, set val to its car.
20866 (read_minibuf): If defalt is cons, set histstring to its car.
20867 (Fread_string): If default_value is cons, set val to its car.
20868 (Fread_buffer): If def is cons, use its car.
20869 (Fcompleting_read): If defalt is cons, set val to its car.
20870
208712007-10-21 Michael Albinus <michael.albinus@gmx.de>
20872
20873 * fileio.c (Fcopy_file): Call file name handler with preserve_uid_gid.
20874
208752007-10-20 Juanma Barranquero <lekktu@gmail.com>
20876
20877 * doc.c (Fdocumentation): Check for advice in all cases.
20878
208792007-10-19 Chong Yidong <cyd@stupidchicken.com>
20880
20881 * Makefile.in [HAVE_LIBRESOLV]: Add -lresolv to linker flags.
20882
208832007-10-19 Richard Stallman <rms@gnu.org>
20884
20885 * doc.c (Fdocumentation): Check for and handle an advised function.
20886
208872007-10-19 Juanma Barranquero <lekktu@gmail.com>
20888
20889 * process.c (Fset_process_filter): Doc fix.
20890
208912007-10-18 Stefan Monnier <monnier@iro.umontreal.ca>
20892
20893 * keyboard.c (read_key_sequence): Undo a change introduced by multi-tty
20894 which caused key-translation-map to applied repeatedly (thus breaking
20895 double-mode).
20896
208972007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
20898
20899 * xselect.c (x_own_selection, x_handle_selection_clear)
20900 (x_clear_frame_selections):
20901 * w32menu.c (list_of_panes, list_of_items):
20902 * w32fns.c (w32_color_map_lookup, Fx_create_frame, Fx_display_list):
20903 * textprop.c (validate_plist, interval_has_all_properties)
20904 (interval_has_some_properties, interval_has_some_properties_list)
20905 (add_properties, text_property_list):
20906 * process.c (Fget_buffer_process, list_processes_1, status_notify):
20907 * minibuf.c (Fassoc_string):
20908 * macselect.c (x_own_selection, x_clear_frame_selections)
20909 (Fx_disown_selection_internal):
20910 * keymap.c (Fcommand_remapping, where_is_internal, describe_map_tree):
20911 Use CONSP rather than !NILP and XC[AD]R rather than Fc[ad]r.
20912
209132007-10-17 Chong Yidong <cyd@stupidchicken.com>
20914
20915 * process.c: Link to libs for calling res_init() if available.
20916 (Fmake_network_process): Call res_init() before getaddrinfo or
20917 gethostbyname, if possible.
20918
209192007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
20920
20921 * lread.c (read1): Set pvectype for char_tables.
20922
20923 * lisp.h (XMISCANY, XMARKER, XINTFWD, XBOOLFWD, XOBJFWD, XOVERLAY)
20924 (XBUFFER_OBJFWD, XBUFFER_LOCAL_VALUE, XKBOARD_OBJFWD, XSAVE_VALUE):
20925 Add type checks.
20926 (SOME_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP): Remove.
20927
20928 * alloc.c (free_misc): Use XMISCTYPE.
20929 (live_misc_p, gc_sweep): Use Lisp_Misc_Any.
20930
209312007-10-17 Glenn Morris <rgm@gnu.org>
20932
20933 * minibuf.c (Qcompletion_ignore_case): New Lisp_Object.
20934 (syms_of_minibuf): Add Qcompletion_ignore_case.
20935 * dired.c (Qcompletion_ignore_case): Change to external.
20936 (syms_of_dired) [VMS]: Remove Qcompletion_ignore_case.
20937 * fileio.c (Qcompletion_ignore_case): New external Lisp_Object.
20938 (Fread_file_name): Use it rather than intern'ing.
20939
20940 * coding.c (Qcompletion_ignore_case): New external Lisp_Object.
20941 (Fread_coding_system): Ignore case of user input.
20942
209432007-10-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20944
20945 * xdisp.c (handle_display_prop): Ignore display specs after
20946 replacing one when string text is being replaced.
20947 (handle_single_display_spec): Pretend as if characters with display
20948 property haven't been consumed only when buffer text is being replaced.
20949
209502007-10-16 Stefan Monnier <monnier@iro.umontreal.ca>
20951
20952 * xfns.c (Fx_create_frame, Fx_display_list):
20953 * window.c (window_fixed_size_p, enlarge_window)
20954 (shrink_window_lowest_first):
20955 * macterm.c (init_font_name_table):
20956 * macfns.c (Fx_create_frame, Fx_display_list):
20957 * lread.c (close_load_descs):
20958 * keyboard.c (read_char_x_menu_prompt):
20959 * fns.c (Fmember, Fmemql, Fdelete, Fset_char_table_parent):
20960 * coding.c (code_convert_region_unwind): Test the type of an object
20961 rather than just !NILP before extracting data from it.
20962
20963 * alloc.c (Fpurecopy): Set the pvec tag on pseudo vectors.
20964
20965 * lisp.h (enum Lisp_Misc_Type): Del Lisp_Misc_Some_Buffer_Local_Value.
20966 (XMISCANY): New macro.
20967 (XMISCTYPE): Use it.
20968 (struct Lisp_Misc_Any): New type.
20969 (union Lisp_Misc): Use it.
20970 (struct Lisp_Buffer_Local_Value): Add `local_if_set' bit.
20971 * data.c (Fboundp, store_symval_forwarding, swap_in_global_binding)
20972 (find_symbol_value, set_internal, default_value, Fset_default)
20973 (Fmake_variable_buffer_local, Fmake_local_variable)
20974 (Fkill_local_variable, Fmake_variable_frame_local, Flocal_variable_p)
20975 (Flocal_variable_if_set_p, Fvariable_binding_locus):
20976 The SOME_BUFFER_LOCAL_VALUEP distinction is replaced by local_if_set.
20977 * alloc.c (allocate_buffer): Set the size and tag.
20978 (allocate_misc, mark_maybe_object, mark_object, survives_gc_p):
20979 Use XMISCANY.
20980 (die): Follow the GNU convention for error messages.
20981 * print.c (print_object): SOME_BUFFER_LOCAL_VALUEP -> local_if_set.
20982 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Don't set the
20983 tag any more.
20984 (set_buffer_internal_1):
20985 * frame.c (store_frame_param):
20986 * eval.c (specbind):
20987 * xdisp.c (select_frame_for_redisplay): Drop SOME_BUFFER_LOCAL_VALUEP.
20988
20989 * doc.c (Fsnarf_documentation): Simplify.
20990
209912007-10-14 Juanma Barranquero <lekktu@gmail.com>
20992
20993 * w32term.c (w32_font_is_double_byte, my_create_scrollbar): Make static.
20994 (syms_of_w32term) <w32-enable-unicode-output>: Fix typo in docstring.
20995
209962007-10-14 Stefan Monnier <monnier@iro.umontreal.ca>
20997
20998 * buffer.c (Fmake_indirect_buffer): Set the buffer's tag.
20999
210002007-10-14 Juanma Barranquero <lekktu@gmail.com>
21001
21002 * eval.c (do_autoload): Don't save autoloads.
21003
21004 * data.c (Ffset): Save autoload of the function being set.
21005
210062007-10-07 John Paul Wallington <jpw@pobox.com>
21007
21008 * xfns.c (x_create_tip_frame): Set the `display-type' frame
21009 parameter before setting up faces.
21010
210112007-10-13 Eli Zaretskii <eliz@gnu.org>
21012
21013 * ccl.c (Fregister_code_conversion_map):
21014 * keyboard.c (append_tool_bar_item): Reformat last change.
21015
21016 * lisp.h (eabs): Rename from `abs'. All callers changed.
21017
210182007-10-05 Dmitry Antipov <dmantipov@yandex.ru>
21019
21020 * buffer.c (add_overlay_mod_hooklist):
21021 * ccl.c (Fregister_ccl_program, Fregister_code_conversion_map):
21022 * fontset.c (make_fontset):
21023 * keyboard.c (GROW_RAW_KEYBUF, menu_bar_items, menu_bar_item)
21024 (append_tool_bar_item):
21025 * macmenu.c (grow_menu_items):
21026 * w32menu.c (grow_menu_items):
21027 * xmenu.c (grow_menu_items): Use larger_vector.
21028
210292007-10-13 Eli Zaretskii <eliz@gnu.org>
21030
21031 * msdos.c (dos_rawgetc): Undo last change (there's no ``leaving
21032 selected frame'' on MSDOS).
21033
210342007-10-12 Martin Rudalics <rudalics@gmx.at>
21035
21036 * frame.c (Qexplicit_name): New variable.
21037 (x_report_frame_params): Report it in parameter alist.
21038 (syms_of_frame): Intern and staticpro it.
21039
210402007-10-10 Patrick Mahan <mahan@mahan.org> (tiny change)
21041
21042 * macfns.c (x_create_tip_frame): Set terminal for frame.
21043
210442007-10-10 Stefan Monnier <monnier@iro.umontreal.ca>
21045
21046 * frame.c (Qenvironment): Remove.
21047 (syms_of_frame) <Qenvironment>: Don't initialize.
21048 (Fdelete_frame): Don't treat the `environment' param specially.
21049 * frame.h (Qenvironment): Don't declare.
21050 * callproc.c (set_initial_environment): Don't set unused frame param.
21051
21052 * frame.c (Fframe_with_environment): Remove.
21053 (syms_of_frame) <Sframe_with_environment>: Don't declare.
21054
21055 * lisp.h (Fframe_with_environment): Don't declare.
21056
210572007-10-10 Juanma Barranquero <lekktu@gmail.com>
21058
21059 * indent.c (indent_tabs_mode, last_known_column)
21060 (last_known_column_modified): Make static.
21061 (syms_of_indent) <indent-tabs-mode>: Remove redundant info in docstring.
21062
210632007-10-10 Katsumi Yamaoka <yamaoka@jpl.org>
21064
21065 * puresize.h (BASE_PURESIZE): Increase to 1170000.
21066
210672007-10-09 Jason Rumney <jasonr@gnu.org>
21068
21069 * w32term.c (x_set_window_size): Disable code that attempts to tell
21070 Lisp code about a size change before it actually happens.
21071
210722007-10-09 Richard Stallman <rms@gnu.org>
21073
21074 * xdisp.c (handle_invisible_prop): After setting up an ellipsis,
21075 return HANDLED_RETURN.
21076
210772007-10-08 Martin Rudalics <rudalics@gmx.at>
21078
21079 * keyboard.c (kbd_buffer_get_event): Break loop waiting for input
21080 when there's an unread command event.
21081
21082 * frame.c (focus_follows_mouse): Move here from frame.el to allow
21083 window autoselection act appropriately when leaving selected frame.
21084 (syms_of_frame): Initialize focus_follows_mouse.
21085 * frame.h (focus_follows_mouse): Extern it.
21086 * macterm.c (XTread_socket): When focus_follows_mouse is nil
21087 make SELECT_WINDOW_EVENT only if we don't leave the selected frame.
21088 * msdos.c (dos_rawgetc): Likewise.
21089 * w32term.c (w32_read_socket): Likewise.
21090 * xterm.c (handle_one_xevent): Likewise.
21091 * xdisp.c (syms_of_xdisp): In doc-string of
21092 mouse-autoselect-window mention focus-follows-mouse.
21093
210942007-10-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21095
21096 * macterm.c (mac_load_query_font): Fix missing return value.
21097 [USE_CG_DRAWING] (mac_define_fringe_bitmap, mac_destroy_fringe_bitmap):
21098 Add BLOCK_INPUT.
21099
211002007-10-08 Richard Stallman <rms@gnu.org>
21101
21102 * xdisp.c (get_window_cursor_type): Implement documented behavior
21103 for cursor-in-non-selected-windows = t.
21104
211052007-10-08 Jason Rumney <jasonr@gnu.org>
21106
21107 * w32.c (w32_get_resource): Always close registry keys.
21108
211092007-10-08 Jason Rumney <jasonr@gnu.org>
21110
21111 * makefile.w32-in (LIBS): Add COMCTL32.
21112
21113 * w32fns.c (globals_of_w32fns): Init common controls.
21114
211152007-10-08 Richard Stallman <rms@gnu.org>
21116
21117 * image.c (our_memory_buffer): Rename from omfib_buffer.
21118
211192007-10-08 Richard Stallman <rms@gnu.org>
21120
21121 * buffer.c (Foverlays_at): Doc fix.
21122
211232007-10-08 Stefan Monnier <monnier@iro.umontreal.ca>
21124
21125 * fns.c (Fplist_put): Preserve uneven tail data.
21126
211272007-10-08 Peter O'Gorman <bug-gnu-emacs@mlists.thewrittenword.com> (tiny change)
21128
21129 * termhooks.h (enum event_kind): Remove trailing comma.
21130
21131 * frame.h (enum): Remove trailing comma.
21132
211332007-10-08 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
21134
21135 * w32proc.c (delete_child): Don't terminate threads of zombies.
21136
211372007-10-08 Martin Rudalics <rudalics@gmx.at>
21138
21139 * keyboard.h (struct kboard): New elt Vlast_repeatable_command.
21140
21141 * keyboard.c (syms_of_keyboard): Set up new Lisp variable
21142 last-repeatable-command.
21143 (init_kboard): Initialize Vlast_repeatable_command.
21144 (command_loop_1): Set it to real_this_command unless that was
21145 bound to an input event.
21146 (mark_kboards): Mark it.
21147
211482007-10-08 Richard Stallman <rms@gnu.org>
21149
21150 * eval.c (condition-case): Doc fix.
21151
211522007-10-08 Masatake YAMATO <jet@gyve.org>
21153
21154 * xfaces.c (tty_supports_face_attributes_p): Fix code
21155 for LFACE_INVERSE_INDEX and LFACE_BACKGROUND_INDEX; code
21156 was copied and not edited.
21157
211582007-10-09 Stefan Monnier <monnier@iro.umontreal.ca>
21159
21160 Add new `input-decode-map' keymap and use it for terminal
21161 escape sequences.
21162 * keyboard.h (struct kboard): Add Vinput_decode_map.
21163 Remove Vlocal_key_translation_map.
21164 * keyboard.c (read_key_sequence): Add support for input-decode-map.
21165 (init_kboard): Init input-decode-map.
21166 Replace local-key-translation-map back with key-translation-map.
21167 (syms_of_keyboard): Declare input-decode-map.
21168 Remove local-key-translation-map. Update docstrings.
21169 (mark_kboards): Mark Vinput_decode_map.
21170 Don't mark Vlocal_key_translation_map.
21171 * keymap.c (Fdescribe_buffer_bindings): Describe input-decode-map.
21172 Replace local-key-translation-map back with key-translation-map.
21173 * term.c (term_get_fkeys_1, CONDITIONAL_REASSIGN):
21174 Bind in input-decode-map rather than function-key-map.
21175
21176 * lisp.h (XSETPSEUDOVECTOR): Don't set the tag anymore.
21177 This was made redundant by the previous introduction of XSETPVECTYPE.
21178
211792007-10-09 Richard Stallman <rms@gnu.org>
21180
21181 * image.c (free_bitmap_record): Rename from Free_Bitmap_Record.
21182
211832007-09-29 Richard Stallman <rms@gnu.org>
21184
21185 * eval.c (internal_condition_case_2, internal_condition_case_1)
21186 (internal_condition_case): Reenable abort if x_catching_errors ()
21187 to see if that really happens and why.
21188
211892007-10-06 Andreas Schwab <schwab@suse.de>
21190
21191 * fileio.c (Fwrite_region): Ignore EINVAL error from fsync.
21192
211932007-10-04 Juanma Barranquero <lekktu@gmail.com>
21194
21195 * image.c (syms_of_image) <image-types>: Fix typo in docstring.
21196
211972007-10-03 Stefan Monnier <monnier@iro.umontreal.ca>
21198
21199 * frame.h (struct frame): Don't try to GC-mark menu_bar_items_used.
21200
212012007-10-02 Stefan Monnier <monnier@iro.umontreal.ca>
21202
21203 * window.h (struct window):
21204 * window.c (struct save_window_data, struct saved_window):
21205 * termhooks.h (struct terminal):
21206 * process.h (struct Lisp_Process):
21207 * frame.h (struct frame):
21208 * buffer.h (struct buffer):
21209 * lisp.h (struct Lisp_Vector, struct Lisp_Char_Table)
21210 (struct Lisp_Bool_Vector, struct Lisp_Subr, struct Lisp_Hash_Table):
21211 The size field of (pseudo)vectors is now unsigned.
21212 (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Simplify accordingly.
21213
21214 * lisp.h (struct Lisp_Hash_Table): Move non-traced elements at the end.
21215 Turn `count' into an integer.
21216
21217 * fns.c (make_hash_table, hash_put, hash_remove, hash_clear)
21218 (sweep_weak_table, sweep_weak_hash_tables, Fhash_table_count):
21219 * print.c (print_object) <HASH_TABLE_P>: `count' is an int.
21220 * alloc.c (allocate_hash_table): Use ALLOCATE_PSEUDOVECTOR.
21221 (mark_object) <HASH_TABLE_P>: Use mark_vectorlike.
21222
21223 * alloc.c (allocate_pseudovector): New fun.
21224 (ALLOCATE_PSEUDOVECTOR): New macro.
21225 (allocate_window, allocate_terminal, allocate_frame)
21226 (allocate_process): Use it.
21227 (mark_vectorlike): New function.
21228 (mark_object) <FRAMEP, WINDOWP, BOOL_VECTOR_P, VECTORP>: Use it.
21229 (mark_terminals): Use it.
21230 (Fmake_bool_vector, Fmake_char_table, make_sub_char_table)
21231 (Fmake_byte_code): Use XSETPVECTYPE.
21232
21233 * frame.c (Fframe_parameters): Minor simplification.
21234
21235 * insdel.c (adjust_markers_for_insert): Generalize assertion checks.
21236
21237 * marker.c (Fmarker_buffer): Make test for odd case into a failure.
21238
21239 * buffer.c (Fget_buffer_create, init_buffer_once):
21240 * lread.c (defsubr):
21241 * window.c (Fcurrent_window_configuration): Use XSETPVECTYPE.
21242
21243 * lisp.h (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Don't let them be
21244 defined differently in the m/*.h files.
21245 (XCHAR_TABLE, XBOOL_VECTOR): Add assertion checking.
21246 (XSETPVECTYPE): New macro.
21247 (XSETPSEUDOVECTOR): Use it.
21248
21249 * buffer.c (syms_of_buffer) <local-abbrev-table>: Move from abbrev.c.
21250 (DEFVAR_PER_BUFFER, defvar_per_buffer): Move from lisp.h and lread.c.
21251
21252 * lisp.h (defvar_per_buffer, DEFVAR_PER_BUFFER):
21253 * lread.c (defvar_per_buffer):
21254 * abbrev.c (syms_of_abbrev) <local-abbrev-tabl>: Move to buffer.c.
21255
21256 * window.c (candidate_window_p): Only consider as visible frames that
21257 are on the same terminal.
21258
21259 * m/ibms390x.h (MARKBIT): Remove unused macro.
21260
212612007-10-01 Juanma Barranquero <lekktu@gmail.com>
21262
21263 * lread.c (Fload): Fix typo in docstring.
21264
212652007-10-01 Michaël Cadilhac <michael@cadilhac.name>
21266
21267 * floatfns.c (Fexpt): Manually check for overflows, so that a power
21268 of a non-zero value can't yield zero.
21269
212702007-09-29 Stefan Monnier <monnier@iro.umontreal.ca>
21271
21272 * term.c (term_clear_mouse_face, term_mouse_highlight)
21273 (tty_write_glyphs_with_face): Only define is HAVE_GPM.
21274
21275 * print.c (safe_debug_print): Use XHASH.
21276
21277 * lisp.h (DECL_ALIGN, USE_LSB_TAG): Move logic to before definition of
21278 Lisp elements such as tags.
21279 (XHASH): New macro.
21280 (EQ): Use it.
21281 (SREF, SSET, STRING_COPYIN): Use SDATA.
21282 (VOID_TO_LISP, CVOID_TO_LISP, LISP_TO_VOID, LISP_TO_CVOID): Remove.
21283
21284 * alloc.c (mark_terminal): Remove left-over declaration.
21285 (enum mem_type): Replace all vector subtypes -> MEM_TYPE_VECTORLIKE.
21286 (allocate_vectorlike): Remove type argument. Adjust callers.
21287 (live_vector_p, mark_maybe_pointer, valid_lisp_object_p):
21288 Only handle the one remaining MEM_TYPE_VECTORLIKE.
21289
21290 * alloc.c (MALLOC_BLOCK_INPUT, MALLOC_UNBLOCK_INPUT): New macros
21291 to avoid unnecessary BLOCK_INPUTs when SYNC_INPUT is used.
21292 (xmalloc, xrealloc, xfree, lisp_malloc, lisp_free, lisp_align_malloc)
21293 (lisp_align_free, make_interval, allocate_string, allocate_string_data)
21294 (make_float, Fcons, allocate_vectorlike, Fmake_symbol, allocate_misc):
21295 Use them.
21296
21297 * xfaces.c (load_face_font, free_realized_face, clear_face_gcs):
21298 Don't let signal handlers run when a GC is freed but not yet NULL'ed.
21299 (x_free_gc): Remove BLOCK_INPUT since it's now redundant.
21300
213012007-09-28 Dan Nicolaescu <dann@ics.uci.edu>
21302
21303 * Makefile.in (lisp, shortlisp): Delete server.elc, it is not
21304 loaded by default.
21305
213062007-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
21307
21308 * term.c (Fgpm_mouse_start): Don't signal an error if already activated
21309 on this tty.
21310 (Fgpm_mouse_stop): Only deactivate if it was activated on this tty.
21311
21312 * term.c (mouse_face_window): Rename from Qmouse_face_window.
21313 Update all users.
21314 (handle_one_term_event): Use Gpm_DrawPointer.
21315 (Fgpm_mouse_start): Rename from Fterm_open_connection.
21316 Signal errors instead of returning nil. Always return nil.
21317 (Fgpm_mouse_stop): Rename from Fterm_close_connection.
21318 Make it a noop if gpm-mouse was not activated.
21319 (syms_of_term): Update names.
21320
213212007-09-27 Stefan Monnier <monnier@iro.umontreal.ca>
21322
21323 * sysdep.c (narrow_foreground_group, widen_foreground_group): Static.
21324 (init_sys_modes): Check that gpm_tty is the current tty.
21325
21326 * alloc.c (allocate_terminal): Set the vector size to only count the
21327 lisp fields. Initialize those to nil.
21328 (mark_object): Don't treat terminals specially.
21329 (mark_terminal): Remove.
21330 (mark_terminals): Use mark_object instead.
21331
21332 * termhooks.h (struct terminal): Move all Lisp_Object fields traced by
21333 the GC to the beginning.
21334
21335 * indent.h:
21336 * indent.c: Use EMACS_INT for ints coming from Elisp data.
21337
21338 * indent.c (Fmove_to_column): Use EMACS_INT for buffer positions.
21339
213402007-09-25 Jason Rumney <jasonr@gnu.org>
21341
21342 * frame.c (make_terminal_frame): Remove special case for WINDOWSNT.
21343
21344 * w32console.c (create_w32cons_output): Remove.
21345
21346 * term.c (init_tty): Call init_sys_modes on WINDOWSNT also.
21347
21348 * sysdep.c (init_sys_modes): Use set_terminal_modes_hook.
21349 (reset_sys_modes): Use reset_terminal_modes_hook.
21350
213512007-09-24 Stefan Monnier <monnier@iro.umontreal.ca>
21352
21353 * eval.c (do_autoload): Don't output any message.
21354
213552007-09-24 Juri Linkov <juri@jurta.org>
21356
21357 * emacs.c (standard_args): Change priority of "--no-splash"
21358 from 40 to 3. Add "--no-desktop" with the same priority.
21359
213602007-09-23 Dmitry Antipov <dmantipov@yandex.ru>
21361
21362 * alloc.c (gc_sweep): Check cons cell mark bits word by word
21363 and optimize the case where they are all 1.
21364
213652007-09-23 Johannes Weiner <hannes@saeurebad.de>
21366
21367 * lisp.h (abs): Define if not defined.
21368 * keyboard.c, sound.c, w32term.c, xfaces.c, xterm.c:
21369 Don't define `abs', since it's defined in lisp.h.
21370
213712007-09-22 Eli Zaretskii <eliz@gnu.org>
21372
21373 * term.c (DEV_TTY): New macro. Provide a definition for MS-Windows.
21374 (FRAME_TERMCAP_P) [WINDOWSNT]: Don't define to zero.
21375 (Fcontrolling_tty_p, Fresume_tty, dissociate_if_controlling_tty)
21376 (init_tty): Use DEV_TTY instead of "/dev/tty".
21377 [WINDOWSNT]: No need to protect from NAME arg being null.
21378
213792007-09-21 Dan Nicolaescu <dann@ics.uci.edu>
21380
21381 * term.c (Fsuspend_tty): Run suspend-tty-functions before cleaning
21382 up the tty state.
21383
213842007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
21385
21386 * termhooks.h (term_gpm): Delete. Use gpm_tty's NULLness instead.
21387 (gpm_tty): Change its type.
21388 * term.c (term_gpm): Delete. Use gpm_tty's NULLness instead.
21389 (gpm_tty): Change its type and initialize it.
21390 (Fterm_open_connection): Check the frame is indeed a tty.
21391 Use the new gpm_tty.
21392 (Fterm_close_connection): Use the new gpm_tty.
21393 * keyboard.c (tty_read_avail_input): Use the new gpm_tty.
21394 * sysdep.c (init_sys_modes): term_gpm -> gpm_tty.
21395
213962007-09-21 Juanma Barranquero <lekktu@gmail.com>
21397
21398 * w32term.c (x_draw_glyph_string): Use strike_through_color, not
21399 underline_color, to draw strike-through.
21400
214012007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
21402
21403 * lisp.h (allocate_terminal): Declare.
21404
21405 * window.c (candidate_window_p): Consider frames that are being placed
21406 by the user as somewhere between visible and iconified.
21407 (window_loop): Prefer windows on the current frame.
21408 (Fselect_window): Move the use of select-frame to the beginning so we
21409 can just delegate all the work (it'll call us back anyway).
21410
21411 * frame.c (Qdisplay_environment_variable):
21412 * frame.h (Qdisplay_environment_variable): Delete.
21413
21414 * .gdbinit (xbacktrace): Print the arg's address rather than the value
21415 of the first arg, since that value may be a union.
21416
21417 * callproc.c (child_setup, getenv_internal): Use the frame's `display'
21418 parameter rather than Qdisplay_environment_variable. If all else
21419 fails, look for DISPLAY in initial-environment.
21420
214212007-09-21 Glenn Morris <rgm@gnu.org>
21422
21423 * Makefile.in (emacstool): Remove target.
21424 (lisp, shortlisp): Remove termdev.elc.
21425
214262007-09-21 Markus Triska <markus.triska@gmx.at>
21427
21428 * xterm.c (x_delete_display): Compile session management conditionally.
21429
214302007-09-20 Stefan Monnier <monnier@iro.umontreal.ca>
21431
21432 * callproc.c (getenv_internal_1): New function.
21433 (getenv_internal): Use it.
21434 (Fgetenv_internal): Use it. Accept an env-list as optional arg.
21435
21436 * terminal.c (get_terminal): Don't accept ints to represent terminals.
21437 (Fterminal_name, Fterminal_parameters, Fterminal_parameter)
21438 (Fset_terminal_parameter): Work with dead terminals as well.
21439 (Fmodify_terminal_parameters): Remove.
21440
21441 * terminal.c (get_terminal): Handle terminals.
21442 Make sure the terminal returned is live.
21443 (create_terminal): Use allocate_terminal.
21444 (mark_terminals): Move to alloc.c.
21445 (delete_terminal): Use terminal->name as liveness status.
21446 NULL out fields after freeing their contents.
21447 Don't deallocate the object.
21448 (Fframe_terminal): Use FRAME_TERMINAL. Return the terminal object
21449 rather than an int.
21450 (Fterminal_live_p): Accept non-integer arguments.
21451 (Fterminal_list): Return terminal objects rather than an ints.
21452
21453 * alloc.c (enum mem_type): New member for `terminal' objects.
21454 (allocate_terminal): New function.
21455 (mark_maybe_pointer, valid_lisp_object_p, mark_object):
21456 Handle terminals.
21457 (mark_terminal): New fun.
21458 (mark_terminals): Move from terminal.c.
21459
21460 * term.c (get_tty_terminal): Don't treat output_initial specially.
21461 (Fsuspend_tty, Fresume_tty): Use terminal objects rather than ints.
21462 (delete_tty): Use terminal->name as liveness status.
21463
21464 * termhooks.h (struct terminal): Make it into a pseudovector.
21465 Remove `deleted' replaced by checking `name's nullness.
21466
21467 * print.c (print_object): Handle terminals.
21468
21469 * lisp.h (enum pvec_type): New `terminal' pseudovector.
21470 (XTERMINAL, XSETTERMINAL, TERMINALP, GC_TERMINALP): New macros.
21471
21472 * frame.c (make_terminal_frame):
21473 * keyboard.c (tty_read_avail_input):
21474 * w32term.c (x_delete_terminal):
21475 * xfns.c (Fx_create_frame, x_create_tip_frame):
21476 * xterm.c (x_delete_terminal): Use terminal->name as liveness status.
21477
214782007-09-20 Glenn Morris <rgm@gnu.org>
21479
21480 * process.c (Fmake_network_process): Doc fix.
21481
214822007-09-19 Jason Rumney <jasonr@gnu.org>
21483
21484 * dispextern.h (w32_init_fringe, mac_init_fringe): Declare rif argument.
21485
214862007-09-19 Michaël Cadilhac <michael@cadilhac.name>
21487
21488 * coding.c (detect_eol_type, detect_eol_type_in_2_octet_form):
21489 Fix a C warning regarding variable constness.
21490
21491 * xterm.c (handle_one_xevent): Fix a C warning.
21492
214932007-09-18 Jason Rumney <jasonr@gnu.org>
21494
21495 * w32fns.c (Fx_focus_frame): Rename from Fw32_focus_frame.
21496
214972007-09-17 Jan Djärv <jan.h.d@swipnet.se>
21498
21499 * gtkutil.c (gdpy_def): New variable.
21500 (xg_initialize): Initialize gdpy_def.
21501 (xg_display_close): If no other display exists, set gdpy_def to a
21502 new connection.
21503
215042007-09-16 Jan Djärv <jan.h.d@swipnet.se>
21505
21506 * gtkutil.c (xg_get_image_for_pixmap): Always create a GdkPixbuf
21507 when we have no file name for the icon.
21508 (xg_tool_bar_expose_callback): Remove.
21509 (xg_create_tool_bar): Don't connect expose signal to
21510 xg_tool_bar_expose_callback.
21511 (xg_get_file_with_chooser): Move GCPRO1 after declarations.
21512
215132007-09-16 Andreas Schwab <schwab@suse.de>
21514
21515 * alloc.c (reset_malloc_hooks): Set the hooks to the previous
21516 values instead of zapping them.
21517
215182007-09-14 Glenn Morris <rgm@gnu.org>
21519
21520 * fringe.c (init_fringe_bitmap) <swap_nibble>: Move to file scope.
21521 * gtkutil.c (xg_separator_p) <separator_names>: Move to file scope.
21522 * image.c (our_memory_fill_input_buffer) <buffer>: Move to file
21523 scope and rename to omfib_buffer for clarity.
21524 (gif_load) <interlace_start, interlace_increment>: Move to file scope.
21525
215262007-09-14 Kenichi Handa <handa@m17n.org>
21527
21528 * xterm.c (handle_one_xevent): Skip decoding if nbytes is zero.
21529
215302007-09-13 Jason Rumney <jasonr@gnu.org>
21531
21532 * fringe.c (w32_init_fringe, mac_init_fringe): Add rif argument.
21533
21534 * w32term.c (w32_term_init): Pass rif to w32_init_fringe.
21535
21536 * macterm.c (mac_initialize): Don't call mac_init_fringe here.
21537 (mac_term_init): Call here instead, passing rif.
21538
215392007-09-13 Glenn Morris <rgm@gnu.org>
21540
21541 * s/hpux.h: No longer define `static' as nothing.
21542
215432007-09-13 Johan Bockgård <bojohan@gnu.org>
21544
21545 * callint.c (Fcall_interactively): Remove unused var `fun'.
21546
215472007-09-12 Romain Francoise <romain@orebokech.com>
21548
21549 * window.c (prefer_window_split_horizontally, display_buffer):
21550 Revert 2007-09-08 change.
21551
215522007-09-12 Glenn Morris <rgm@gnu.org>
21553
21554 * alloca.c: Remove file.
21555 * Makefile.in (alloca): Do not undef.
21556 (allocaobj, alloca.o): Remove.
21557 (otherobj): Remove allocaobj.
21558 * keyboard.c (command_loop_1): Remove #ifdef C_ALLOCA block.
21559 * regex.c (C_ALLOCA): Remove all references and code that was only
21560 used when this was defined.
21561 * search.c (boyer_moore): Remove #ifdef C_ALLOCA block.
21562 * xmenu.c (xmenu_show): Remove #ifdef C_ALLOCA block.
21563 * m/ibms390x.h, m/sh3el.h (C_ALLOCA): Remove references to this.
21564
21565 * Makefile.in (SOURCES, unlock, relock): Delete.
21566
21567 * gtkutil.c (cnt): Rename to menu_grab_callback_cnt for clarity.
21568 (menu_grab_callback): All uses changed.
21569
21570 * xselect.c (cnt): Rename to x_reply_selection_request_cnt for clarity.
21571 (x_reply_selection_request): All uses changed.
21572
215732007-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
21574
21575 * lread.c (load_warn_old_style_backquotes): Change message to look
21576 better when it appears in the middle of byte-compiler messages.
21577
215782007-09-10 Dan Nicolaescu <dann@ics.uci.edu>
21579
21580 * s/darwin.h (MULTI_KBOARD): Only define for Carbon.
21581
21582 * xterm.c (x_create_terminal): Add comment.
21583
21584 * term.c (clear_tty_hooks, set_tty_hooks): Add comments.
21585
215862007-09-10 Richard Stallman <rms@gnu.org>
21587
21588 * xterm.c (x_term_init): Give error if can't open DISPLAY_NAME.
21589
215902007-09-10 Michaël Cadilhac <michael@cadilhac.name>
21591
21592 * lisp.h (struct Lisp_Subr): Rename `prompt' field to `intspec'.
21593 (DEFUN): Document `intspec', use it instead of `prompt'.
21594
21595 * eval.c (Fcommandp): Change `->prompt' to `->intspec'.
21596
21597 * data.c (Finteractive_form): If the interactive specification starts
21598 with a `(', use it as a Lisp form.
21599
21600 * fileio.c (Fset_file_modes): Add an interactive spec that reads a file
21601 name and file modes.
21602
21603 * callint.c (Fcall_interactively): Comment fixes.
21604
216052007-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
21606
21607 * callint.c (Fcall_interactively): Use Finteractive_form also for subrs
21608 and compiled functions.
21609
216102007-09-08 Fredrik Axelsson <f.axelsson@gmail.com>
21611
21612 * window.c (prefer_window_split_horizontally): New variable.
21613 (display_buffer): Consider splitting window horizontally depending
21614 on prefer_window_split_horizontally.
21615
216162007-09-08 Eli Zaretskii <eliz@gnu.org>
21617
21618 * sysdep.c [WINDOWSNT]: Don't include sysselect.h.
21619
216202007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
21621
21622 * s/cygwin.h (GC_MARK_STACK): Enable conservative stack marking.
21623
21624 * frame.c (x_set_frame_parameters): Check number is positive before
21625 using XFASTINT.
21626
21627 * window.c (freeze_window_start): Don't presume selected_window holds
21628 a window object.
21629 (Fdisplay_buffer): Remove `register' since `buffer' needs to be gcpro'd.
21630
216312007-09-07 Angelo Graziosi <Angelo.Graziosi@roma1.infn.it> (tiny change)
21632
21633 * term.c (dissociate_if_controlling_tty): Call setsid on CYGWIN.
21634
216352007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
21636
21637 * window.c (Vsplit_window_preferred_function): New var.
21638 (Fdisplay_buffer): Use it.
21639 (syms_of_window): Export, and initialize it.
21640
216412007-09-06 Pixel <pixel@mandriva.com> (tiny change)
21642
21643 * image.c (gif_load): Fix bug: Handle nonexistent colormap.
21644
216452007-09-06 Glenn Morris <rgm@gnu.org>
21646
21647 * gtkutil.c (menu_grab_callback) <cnt>:
21648 * xselect.c (x_reply_selection_request) <cnt>: Move static
21649 variable to file scope.
21650
216512007-09-06 Stefan Monnier <monnier@iro.umontreal.ca>
21652
21653 * xdisp.c (redisplay_internal): Make sure Elisp code always sees
21654 consistent values of selected_frame and selected_window.
21655
216562007-09-04 Jason Rumney <jasonr@gnu.org>
21657
21658 * w32console.c (initialize_w32_display): Zero unused hooks.
21659
216602007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
21661
21662 * term.c (Vsuspend_tty_functions, Vresume_tty_functions)
21663 (syms_of_term, Fsuspend_tty, Fresume_tty): Undo previous change.
21664
216652007-09-04 Jason Rumney <jasonr@gnu.org>
21666
21667 * term.c (init_tty) [WINDOWSNT]: Add hooks that are not accessible
21668 in w32console.c. Set up input. Remove XXX comments that have been
21669 confirmed as correct.
21670
21671 * s/ms-w32.h (MULTI_KBOARD): Define.
21672
21673 * w32console.c (one_and_only_w32cons): Remove.
21674 (initialize_w32_display): Take terminal argument.
21675
21676 * term.c (init_tty) [WINDOWSNT]: Pass terminal to
21677 initialize_w32_display.
21678 (init_tty) [MULTI_KBOARD]: Include this code on WINDOWSNT too.
21679
21680 * termhooks.h (enum event_kind) <HORIZ_WHEEL_EVENT>: New event.
21681
21682 * keyboard.c (discard_mouse_events): Discard it.
21683 (make_lispy_event): Translate it to a lisp event.
21684 (lispy_wheel_names): Add wheel-left and right events.
21685 (syms_of_keyboard): Enlarge wheel_syms.
21686
21687 * w32fns.c (w32_wnd_proc) <WM_DROPFILES>: Merge with WM_MOUSEWHEEL.
21688 <WM_MOUSEHWHEEL>: Pass new system message to lisp.
21689
21690 * w32term.h (WM_MOUSEHWHEEL): Define if system headers don't.
21691
21692 * w32term.c (construct_mouse_wheel): Make HORIZ_WHEEL_EVENT
21693 from WM_MOUSEHWHEEL.
21694 (w32_read_socket) <WM_MOUSEHWHEEL>: Treat as WM_MOUSEWHEEL.
21695
21696 * w32fns.c (x_create_tip_frame) [MULTI_KBOARD]: Get keyboard from
21697 terminal.
21698
21699 * w32term.c (w32_create_terminal) [MULTI_KBOARD]: Create a new
21700 keyboard for the terminal.
21701
217022007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
21703
21704 * term.c (Vsuspend_tty_hook): Rename from Vsuspend_tty_functions.
21705 (Vresume_tty_hook): Rename from Vresume_tty_functions.
21706 (syms_of_term): Rename suspend-tty-functions to suspend-tty-hook
21707 and resume-tty-function to resume-tty-hook.
21708 (Fsuspend_tty, Fresume_tty): Use new names.
21709
217102007-09-02 Jan Djärv <jan.h.d@swipnet.se>
21711
21712 * gtkutil.c (update_frame_tool_bar): Handle stock name as a named icon
21713 if it starts with "n:".
21714
217152007-08-31 Jan Djärv <jan.h.d@swipnet.se>
21716
21717 * gtkutil.c (update_frame_tool_bar): Initialize wbutton to NULL.
21718
217192007-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
21720
21721 * frame.h:
21722 * frame.c (Qterm_environment_variable): Remove.
21723 (syms_of_frame): Don't init and staticpro it.
21724
21725 * callproc.c (getenv_internal): Remove special case for $TERM.
21726
21727 * callproc.c (Vinitial_environment): New variable.
21728 (set_initial_environment): Initialize it.
21729 (syms_of_callproc): Declare it.
21730 (child_setup): Don't mess with TERM via Qterm_environment_variable; the
21731 TERM under which a process runs is never related to the TERM in which
21732 Emacs is running.
21733
217342007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
21735
21736 * config.in (HAVE_WINDOW_SYSTEM): Don't undef MULTI_KBOARD here...
21737 * s/darwin.h: ... do it here.
21738
217392007-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
21740
21741 * lisp.h (set_initial_environment): Rename from set_global_environment.
21742
21743 * Makefile.in (${etc}DOC): Re-add a ${EXEEXT} which seems to have been
21744 removed by mistake on the multi-tty branch.
21745
21746 * frame.c (make_terminal_frame): Yet Another Int/Lisp_Object Mixup.
21747 (Fmodify_frame_parameters): Return a value.
21748
21749 * image.c (png_load): Comment-out var only used in commented-out code.
21750
21751 * term.c (mark_ttys): Don't bother checking top_frame (incorrectly)
21752 before passing it to mark_object.
21753
21754 * xfaces.c (internal_resolve_face_name): Return a value.
21755 (internal_resolve_face_name, resolve_face_name_error): Comment out.
21756
21757 * xfns.c (check_x_display_info): Yet Another Int/Lisp_Object Mixup.
21758 (x_icon): Comment-out var only used in commented-out code.
21759
217602007-08-29 Romain Francoise <romain@orebokech.com>
21761
21762 * keyboard.c (Fset_input_mode): Don't call `Fset_quit_char' if
21763 QUIT hasn't been provided.
21764
217652007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
21766
21767 * callproc.c (child_setup, getenv_internal): Use the
21768 display-environment-variable and term-environment-variable frame params.
21769 (set_initial_environment): Initialise Vprocess_environment.
21770
21771 * config.in: Disable multi-keyboard support on a mac.
21772
21773 * frame.c (Qterm_environment_variable)
21774 (Qdisplay_environment_variable): New variables.
21775 (syms_of_frame): Intern and staticpro them.
21776 (Fmake_terminal_frame): Disable output method test.
21777
21778 * frame.h: Declare them here.
21779
21780 * macfns.c (x_set_mouse_color): Get rif from the frame.
21781 (x_set_tool_bar_lines): Don't use updating_frame.
21782 (mac_window): Add 2 new parameters for consistency with other systems.
21783 (Fx_create_frame): Fix doc string. Rename the parameter. Set the
21784 frame parameters following what is done in X11 and w32. Don't use
21785 FRAME_MAC_DISPLAY_INFO.
21786 (Fx_open_connection, start_hourglass): Remove window-system check.
21787 (x_create_tip_frame): Get the keyboard from the terminal.
21788
21789 * macmenu.c: Reorder includes.
21790 (Fx_popup_menu): Use terminal specific mouse_position_hook.
21791
21792 * macterm.c (XTset_terminal_modes, XTreset_terminal_modes): Add a
21793 terminal parameter.
21794 (x_clear_frame): Add a frame parameter.
21795 (note_mouse_movement): Get rif from the frame.
21796 (mac_term_init): Initialize the terminal.
21797 (mac_initialize): Make static and move terminal initialization ...
21798 (mac_create_terminal): ... to this new function.
21799
21800 * macterm.h (struct mac_display_info): Add terminal.
21801 (mac_initialize): Delete declaration.
21802
21803 * puresize.h (BASE_PURESIZE): Increase base value to 1164000.
21804
21805 * sysdep.c: Comment out text after #endif.
21806
21807 * term.c (init_tty): Only use terminal->kboard when MULTI_KBOARD
21808 is defined. Better initialize ttys in windows. Use terminal
21809 specific mouse_position_hook.
21810
21811 * termhooks.h (union display_info): Add mac_display_info.
21812
21813 * w32fns.c (Fx_create_frame): Use kboard from the terminal.
21814 Set the default minibuffer frame, window_system and the rest of the
21815 frame parameters following what is done in X11.
21816
21817 * w32term.c (w32_initialize): Make static.
21818
21819 * xselect.c (x_handle_selection_clear): Only access
21820 terminal->kboard when MULTI_KBOARD is defined.
21821
21822 * s/darwin.h (SYSTEM_PURESIZE_EXTRA): Define here.
21823 (SYSTEM_PURESIZE_EXTRA): Only define on Carbon.
21824
218252007-08-29 Jason Rumney <jasonr@gnu.org>
21826
21827 * frame.c (Fdelete_frame): Only get kboard when MULTI_KBOARD defined.
21828 (make_terminal_frame) [WINDOWSNT]: Initialize terminal.
21829
21830 * fringe.c (w32_init_fringe w32_reset_fringes) [HAVE_NTGUI]:
21831 (mac_init_fringe) [MAC_OS]: Get rif from selected_frame.
21832
21833 * keyboard.c (restore_kboard_configuration): Only define when
21834 MULTI_KBOARD defined.
21835
21836 * makefile.w32-in: Update dependancies from Makefile.in.
21837 (OBJ1): Add terminal.$(O)
21838
21839 * term.c (dissociate_if_controlling_tty) [WINDOWSNT]:
21840 Don't define function body.
21841 (init_tty) [WINDOWSNT]: Use selected_frame for initializing.
21842
21843 * termhooks.h (display_info) [WINDOWSNT]: Add w32.
21844
21845 * w32.c (request_sigio, unrequest_sigio): Remove.
21846
21847 * w32console.c (w32con_move_cursor, w32con_clear_to_end)
21848 (w32con_clear_frame, w32con_clear_end_of_line)
21849 (w32con_ins_del_lines, w32con_insert_glyphs, w32con_write_glyphs)
21850 (w32con_delete_glyphs, w32con_set_terminal_window)
21851 (scroll_line, w32_sys_ring_bell): Add frame arg.
21852 (w32con_set_terminal_modes, w32con_reset_terminal_modes):
21853 Add terminal arg.
21854 (PICK_FRAME): Remove.
21855 (w32con_write_glyphs): Use frame specific terminal coding.
21856 (one_and_only_w32cons): New global variable.
21857 (initialize_w32_display): Use it for storing hooks.
21858 (create_w32cons_output): New function.
21859
21860 * w32inevt.c, w32inevt.h (w32_console_read_socket): Make first
21861 arg a frame.
21862
21863 * w32fns.c (x_create_tip_frame): Set terminal and ref count.
21864 Set window_system.
21865 (x_set_tool_bar_lines): Don't use updating_frame.
21866 (Fx_create_frame): Set terminal and ref count.
21867 (Fx_open_connection): Remove window-system check.
21868
21869 * w32menu.c (Fx_popup_menu): Use terminal specific mouse_position_hook.
21870
21871 * w32term.c (w32_term_init): Call add_keyboard_wait_descriptor.
21872 (w32_set_terminal_modes, w32_reset_terminal_modes): Add terminal arg.
21873 (x_clear_frame, x_delete_glyphs, w32_ring_bell, x_ins_del_lines):
21874 Add frame arg.
21875 (x_delete_terminal, w32_create_terminal): New functions.
21876 (w32_term_init): Create a terminal.
21877 (w32_initialize): Move terminal specific initialization to
21878 w32_create_terminal.
21879
21880 * w32term.h (x_output): Remove foreground_pixel and background_pixel.
21881 (w32_clear_rect, w32_clear_area): Use background from frame.
21882 (w32_display_info): Add terminal.
21883 (w32_sys_ring_bell, x_delete_display): Declare here.
21884
21885 * xdisp.c (display_menu_bar) [HAVE_NTGUI]: Check frame type.
21886
21887 * s/ms-w32.h (SYSTEM_PURESIZE_EXTRA): Bump to 50k.
21888
218892007-08-29 Kalle Olavi Niemitalo <kon@iki.fi> (tiny change)
21890
21891 * keyboard.c (interrupt_signal, handle_interrupt, Fset_quit_char):
21892 Fix get_named_tty calls for the controlling tty.
21893
218942007-08-29 ARISAWA Akihiro <ari@mbf.ocn.ne.jp> (tiny change)
21895
194d44e7 21896 * term.c (dissociate_if_controlling_tty) [USG]: Fix parse error.
aac0c6e3
MR
21897
218982007-08-29 Yoshiaki Kasahara <kasahara@nc.kyushu-u.ac.jp> (tiny change)
21899
21900 * term.c (tty_insert_glyphs): Add missing first parameter.
21901
219022007-08-29 Károly Lőrentey <karoly@lorentey.hu>
21903
21904 * buffer.c (Fbuffer_list, Fbury_buffer):
21905 Take frame->buried_buffer_list into account.
21906
21907 * cm.c (current_tty): New variable, for cmputc().
21908 (cmputc): Use it.
21909 (cmcheckmagic): Add tty parameter, look up terminal streams there.
21910 (calccost): Add tty parameter. Use emacs_tputs() instead of tputs().
21911 (cmgoto): Add tty parameter. Pass it on to calccost().
21912 Use emacs_tputs() instead of tputs().
21913
21914 * cm.h (emacs_tputs): New macro to set current_tty, and then call
21915 tputs().
21916 (current_tty): New variable, for cmputc().
21917 (cmcheckmagic, cmputc, cmgoto): Add prototypes.
21918
21919 * eval.c (unwind_to_catch): Don't call x_fully_uncatch_errors.
21920 (internal_condition_case, internal_condition_case_1)
21921 (internal_condition_case_2): Don't abort when x_catching_errors.
21922
21923 * fns.c (Fyes_or_no_p): Don't try to open an X dialog on tty terminals.
21924 (Fy_or_n_p): Likewise. Use temporarily_switch_to_single_kboard to
21925 prevent crashes caused by bogus longjmps in read_char.
21926
21927 * keymap.h (Fset_keymap_parent): Add EXFUN.
21928
21929 * macterm.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL)
21930 * w32term.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
21931 Remove redundant definition.
21932
21933 * macfns.c (x_set_mouse_color, x_make_gc):
21934 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
21935
21936 * w32term.c (x_free_frame_resources):
21937 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
21938 (w32_initialize): Use the accessor macros for terminal characteristics.
21939
21940 * macterm.c (mac_initialize): Use Fset_input_interrupt_mode.
21941 Use the accessor macros for terminal characteristics.
21942 * msdos.c (internal_terminal_init): Use the accessor macros for
21943 terminal characteristics.
21944 (ScreenVisualBell, internal_terminal_init):
21945 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
21946
21947 * termopts.h (no_redraw_on_reenter): Declare.
21948
21949 * alloc.c (emacs_blocked_malloc): Disable mallopt call.
21950 (mark_terminals, mark_ttys): Declare.
21951 (Fgarbage_collect): Call them.
21952 (mark_object): Mark buried_buffer_list.
21953
21954 * prefix-args.c: Include stdlib.h for exit.
21955
21956 * syssignal.h: Add comment.
21957
21958 * indent.c: Include stdio.h.
21959
21960 * window.h (Vinitial_window_system): Declare.
21961 (Vwindow_system): Delete declaration.
21962
21963 * fontset.c (Finternal_char_font): Use FRAME_RIF.
21964
21965 * image.c (lookup_image): Don't initialize `c' until the xasserts
21966 have been run.
21967
21968 * gtkutil.c (xg_create_frame_widgets): Use FRAME_BACKGROUND_PIXEL and
21969 FRAME_FOREGROUND_PIXEL.
21970
21971 * print.c (print_preprocess): Don't lose print_depth levels while
21972 iterating.
21973
21974 * widget.c (update_from_various_frame_slots):
21975 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
21976
21977 * window.c (set_window_buffer): Don't call clear_mouse_face on tty
21978 frames.
21979 (window_internal_height): Remove bogus make_number call.
21980 (init_window_once): Call make_terminal_frame with two zero parameters.
21981
21982 * fileio.c (Fread_file_name): Update comment.
21983
21984 * callint.c (Fcall_interactively):
21985 Use temporarily_switch_to_single_kboard instead of single_kboard_state.
21986 Make sure it is correctly unwound.
21987
21988 * xsmfns.c (x_session_close): New function.
21989
21990 * coding.h (terminal_coding, safe_terminal_coding, keyboard_coding):
21991 Delete declarations.
21992
21993 * xterm.h: Remove declaration for x_fully_uncatch_errors.
21994 (x_output): Remove background_pixel and foreground_pixel fields.
21995 (x_display_info): Add new field TERMINAL. Remove KBOARD field.
21996 (x_delete_device, x_session_close): Declare.
21997
21998 * lread.c: Include setjmp.h. Update declaration of `read_char'.
21999 (read_filtered_event): Call `read_char' with a local
22000 `wrong_kboard_jmpbuf'.
22001
22002 * minibuf.c (read_minibuf): Call temporarily_switch_to_single_kboard.
22003 Don't call single_kboard_state. Use FRAME_RIF.
22004
22005 * process.c (Fmake_network_process): Don't unrequest_sigio on modern
22006 systems.
22007
22008 * lisp.h (set_process_environment): Rename to `set_global_environment'.
22009 (Fframe_with_environment, Fset_input_meta_mode)
22010 (Fset_quit_char): EXFUN.
22011 (x_create_device, tty_output, terminal, tty_display_info): Declare.
22012 (init_sys_modes, reset_sys_modes): Update prototypes.
22013 (init_all_sys_modes, reset_all_sys_modes): New prototypes.
22014
22015 * keyboard.h (struct kboard): Add new fields Vlocal_function_key_map,
22016 Vlocal_key_translation_map, and Vkeyboard_translate_table.
22017 (Vfunction_key_map, Vkeyboard_translate_table, single_kboard_state):
22018 Delete declarations.
22019 (Vfunction_key_map, Vkey_translation_map, push_kboard, pop_kboard)
22020 (temporarily_switch_to_single_kboard, tty_read_avail_input):
22021 New declarations.
22022
22023 * emacs.c (main): Don't call init_sys_modes(), the new term_init()
22024 already does that during init_display(). Call syms_of_keymap
22025 before syms_of_keyboard. Call `syms_of_terminal'.
22026 Call set_initial_environment, not set_process_environment.
22027 (shut_down_emacs): Call reset_all_sys_modes() instead of
22028 reset_sys_modes().
22029
22030 * xfaces.c (x_free_gc): Protect xassert with GLYPH_DEBUG.
22031 (internal_resolve_face_name, resolve_face_name_error): New functions.
22032 (resolve_face_name): Protect against loops and errors thrown by Fget.
22033 (realize_default_face): Don't use FRAME_FONT unless frame is an X frame.
22034 (Ftty_supports_face_attributes_p): Update tty_capable_p call.
22035
22036 * scroll.c: Replace CURTTY() with local variables throughout the
22037 file (where applicable).
22038 (calculate_scrolling, calculate_direct_scrolling)
22039 (scrolling_1, scroll_cost): Use the accessor macros for terminal
22040 characteristics.
22041
22042 * keymap.c (Vfunction_key_map): Remove.
22043 (Fdescribe_buffer_bindings): Update references to Vfunction_key_map.
22044 (syms_of_keymap): Remove DEFVAR for Vfunction_key_map.
22045 (Vkey_translation_map): Remove.
22046 (syms_of_keymap): Remove DEFVAR for key-translation-map.
22047 (Fdescribe_buffer_bindings)
22048 (read_key_sequence, init_kboard, syms_of_keyboard, mark_kboards):
22049 Update for terminal-local key-translation-map.
22050
22051 * Makefile.in (callproc.o): Update dependencies.
22052 (lisp, shortlisp): Add termdev.elc.
22053 (obj): Add terminal.o.
22054 (terminal.o): Add dependencies.
22055 [HAVE_CARBON]: Make terminal.o depend on macgui.h.
22056 (data.o, fns.o): Add termhooks.h dependency.
22057 (SOME_MACHINE_LISP): Add dnd.elc.
22058 (minibuf.o): Fix typo.
22059 Update dependencies.
22060
22061 * data.c (do_symval_forwarding, store_symval_forwarding)
22062 (find_symbol_value): Use the selected frame's keyboard, not
22063 current_kboard.
22064
22065 * .gdbinit (init_sys_modes): Use Vinitial_window_system instead of
22066 Vwindow_system.
22067
22068 * xmenu.c (Fx_menu_bar_open) [USE_X_TOOLKIT, USE_GTK]: Rename from
22069 Fmenu_bar_open.
22070 (syms_of_xmenu): Update defsubr.
22071 (mouse_position_for_popup, Fx_popup_menu)
22072 (Fx_popup_dialog, x_activate_menubar, update_frame_menubar)
22073 (set_frame_menubar, free_frame_menubar)
b97439ce 22074 (create_and_show_popup_menu, xmenu_show)
aac0c6e3
MR
22075 (create_and_show_dialog, xdialog_show, xmenu_show): Abort if not
22076 an X frame.
22077
22078 * xselect.c (x_own_selection): Abort if not an X frame.
22079 (some_frame_on_display): Check if it is an X frame.
22080 (x_handle_selection_clear): Deal with MULTI_KBOARD.
22081
22082 * coding.c: Include frame.h and termhooks.h.
22083 (terminal_coding, keyboard_coding): Delete.
22084 (Fset_terminal_coding_system_internal)
22085 (Fset_keyboard_coding_system_internal)
22086 (Fkeyboard_coding_system)
22087 (Fterminal_coding_system): Add a terminal parameter.
22088 Get terminal_coding from the terminal.
22089 (init_coding_once): Don't call setup_coding_system here.
22090
22091 * dispextern.h (set_scroll_region, turn_off_insert)
22092 (turn_off_highlight, background_highlight, clear_end_of_line_raw)
22093 (tty_clear_end_of_line, tty_setup_colors)
22094 (delete_tty, updating_frame)
22095 (produce_special_glyphs, produce_glyphs, write_glyphs)
22096 (insert_glyphs): Remove.
22097 (raw_cursor_to, clear_to_end, tty_turn_off_insert)
22098 (tty_turn_off_highlight, get_tty_size): Add declaration.
22099 (tabs_safe_p, init_baud_rate, get_tty_terminal): Update prototypes.
22100
22101 * frame.h (enum output_method): Add output_initial.
22102 (struct x_output): Delete.
22103 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
22104 Access foreground_pixel and background_pixel directly from the frame.
22105 (tty_display): Delete.
22106 (struct frame): Add buried_buffer_list, foreground_pixel,
22107 background_pixel and terminal. Delete kboard.
22108 (union output_data): Add tty.
22109 (FRAME_KBOARD): Get the kboard from the terminal.
22110 (FRAME_INITIAL_P): New macro.
22111 (Qtty, Qtty_type, Qterminal, Qterminal_live_p, Qenvironment)
22112 (Qterm_environment_variable, Qdisplay_environment_variable)
22113 (make_terminal_frame, Qburied_buffer_list, Qwindow_system):
22114 New declarations.
22115
22116 * termchar.h (tty_output, tty_display_info): New structures.
22117 (tty_list): Declare.
22118 (FRAME_TTY, CURTTY): New macros.
22119 (must_write_spaces, min_padding_speed, fast_clear_end_of_line)
22120 (line_ins_del_ok, char_ins_del_ok, scroll_region_ok)
22121 (scroll_region_cost, memory_below_frame, fast_clear_end_of_line)
22122 (dont_calculate_costs, no_redraw_on_reenter): Remove declarations.
22123
22124 * callproc.c: Include frame.h and termhooks.h, for terminal
22125 parameters.
22126 (add_env): New function.
22127 (child_setup): Use it.
22128 (child_setup, getenv_internal): Handle the new Vprocess_environment.
22129 (getenv_internal): Fix get_terminal_param call.
22130 (Fgetenv_internal, egetenv): Update doc.
22131 (syms_of_callproc): Initialize Vprocess_environment to nil.
22132 Register and initialize them. Remove obsolete defvars. Update doc
22133 strings.
22134 (child_setup): Handle Vlocal_environment_variables.
22135 (getenv_internal): Add terminal parameter.
22136 Handle Vlocal_environment_variables.
22137 (Fgetenv_internal): Add terminal parameter.
22138 (child_setup, getenv_internal, Fgetenv_internal): Store the local
22139 environment in a frame (not terminal) parameter. Update doc strings.
22140 (set_initial_environment): Rename from set_global_environment.
22141 Store Emacs environment in initial frame parameter.
22142
22143 * xdisp.c (redisplay_internal): Update references to
22144 `previous_terminal_frame'.
22145 (display_mode_line, Fformat_mode_line): Replace calls to
22146 `push_frame_kboard' with `push_kboard'.
22147 (get_glyph_string_clip_rects): Add extra parentheses and
22148 braces to prevent compiler warnings.
22149 (calc_pixel_width_or_height): Add xassert to check that the
22150 frame is alive. Don't call `lookup_image' on a termcap frame.
22151 (message2_nolog, message3_nolog, redisplay_internal)
22152 (set_vertical_scroll_bar, redisplay_window, check_x_display_info)
22153 (x_set_scroll_bar_foreground, x_set_scroll_bar_background)
22154 (Fx_create_frame, Fxw_display_color_p, Fx_display_grayscale_p)
22155 (Fx_display_pixel_width, Fx_display_pixel_height)
22156 (Fx_display_planes, Fx_display_color_cells)
22157 (Fx_server_max_request_size, Fx_server_vendor, Fx_server_version)
22158 (Fx_display_screens, Fx_display_mm_height, Fx_display_mm_width)
22159 (Fx_display_backing_store, Fx_display_visual_class)
22160 (Fx_display_save_under, Fx_close_connection, x_create_tip_frame):
22161 Use FRAME_TERMINAL_P, FRAME_WINDOW_P, FRAME_TTY and FRAME_RIF.
22162
22163 * xfns.c (x_set_foreground_color x_set_background_color)
22164 (x_set_mouse_color, x_set_cursor_color, x_make_gc):
22165 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
22166 (Fx_create_frame, x_create_tip_frame, build_string, x_window)
22167 (Fx_create_frame, x_create_tip_frame): Don't create frames on a
22168 terminal that is being deleted.
22169 (Fx_create_frame): Use `store_frame_param' to set `window-system'
22170 frame parameter, and make sure it overrides any user-supplied setting.
22171 (Fx_close_connection, Fx_synchronize): Unify argument names with
22172 the rest of the DEFUNs.
22173
22174 * dispnew.c (Fsend_string_to_terminal): Update call to
22175 `get_tty_terminal'.
22176 (Fredraw_frame, Fsend_string_to_terminal)
22177 (Fsend_string_to_terminal, init_display): Use FRAME_RIF,
22178 FRAME_TERMCAP_P and FRAME_TTY.
22179 (window_change_signal): Don't believe width/height values that are
22180 impossibly small.
22181 (Vinitial_window_system): Rename from Vwindow_system.
22182 (termscript, Wcm, rif): Delete.
22183
22184 * termhooks.h (struct terminal): New struct containing the
22185 previously global text display hooks and new members NAME,
22186 DELETED and PARAM_ALIST.
22187 (FRAME_TERMINAL, TERMINAL_TERMINAL_CODING)
22188 (TERMINAL_KEYBOARD_CODING, TERMINAL_ACTIVE_P, FRAME_WINDOW_P)
22189 (FRAME_RIF): New macros.
22190 (get_terminal_param, get_device): New declarations.
22191 (termscript): Delete declaration.
22192
22193 * xterm.c (x_initialize): Use Fset_input_interrupt_mode.
22194 (XTflash, x_free_frame_resources, x_scroll_bar_create)
22195 (x_scroll_bar_set_handle): Use FRAME_BACKGROUND_PIXEL and
22196 FRAME_FOREGROUND_PIXEL.
22197 (x_fully_uncatch_errors): Disable definition.
22198 (x_scroll_bar_expose): Fix reference to foreground pixel.
22199 (XTread_socket): Disable loop on all X displays.
22200 (x_delete_terminal): Don't set terminal->deleted and let
22201 delete_terminal delete the frames on the terminal.
22202 (x_delete_display): Doc update to reflect changes in
22203 delete_terminal.
22204 (x_display_info) <terminal>: Move member earlier in the struct.
22205 (deleting_tty): Remove old variable.
22206 (Fsuspend_tty): Call clear_tty_hooks.
22207 (Fresume_tty, init_tty): Call set_tty_hooks.
22208 (Ftty_display_color_p, Ftty_display_color_cells): Don't throw
22209 errors on X frames.
22210 (x_catch_errors_unwind): Abort if x_error_message is NULL.
22211 (handle_one_xevent): Initialize `f' to NULL.
22212 (x_delete_terminal, x_create_terminal): New functions.
22213 (XTset_terminal_modes, XTreset_terminal_modes)
22214 (XTread_socket, x_connection_closed, x_term_init)
22215 (x_term_init, x_delete_display): Add terminal parameter.
22216 (x_term_init) [!HAVE_GTK_MULTIDISPLAY]: Refuse to create secondary
22217 X connections.
22218
22219 * frame.c: Include termchar.h.
22220 (Qterminal, Qterminal_live_p, Qburied_buffer_list, Qtty, Qtty_type)
22221 (Qwindow_system, Qenvironment, Qterm_environment_variable)
22222 (Qdisplay_environment_variable): New vars.
22223 (Fframep): Deal with output_initial.
22224 (Fframe-live-p): Doc fix.
22225 (Fwindow-system): New function.
22226 (x_set_screen_gamma, store_frame_param): Fix compilation errors.
22227 (make_terminal_frame): Don't create frames on a terminal that is
22228 being deleted. Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
22229 (store_frame_param): Check for found_for_frame before calling XFRAME.
22230 (Fmake_terminal_frame): Handle NULL tty names correctly.
22231 (syms_of_frame): Enhance doc string of `default-frame-alist'.
22232 (Fdelete_frame): Remove unused variable `count'. Don't allow other
22233 frames to refer to a deleted frame in their 'environment parameter.
22234 (Fframe_with_environment): New function.
22235 (syms_of_frame): Defsubr it. Initialize and staticpro Qenvironment.
22236 (get_future_frame_param): New function.
22237 (Fmake_terminal_frame): Use it.
22238 (x_set_frame_parameters, x_set_screen_gamma): Use FRAME_RIF.
22239
22240 * sysdep.c (init_sys_modes, reset_sys_modes): Update for renames.
22241 * sysdep.c (reset_sys_modes): Update for renames.
22242
22243 * keyboard.c (tty_read_avail_input): New function.
22244 (Fset_input_interrupt_mode, Fset_output_flow_control): New functions.
22245 (syms_of_keyboard): Defsubr them.
22246 (Fset_input_meta_mode, Fset_quit_char): New functions.
22247 (Fset_input_mode): Split to above functions.
22248 (read_char_minibuf_menu_prompt): Add wrong_kboard_jmpbuf
22249 parameter. Use it in call to `read_char'.
22250 (read_char): Declare. Update call to `read_char_minibuf_menu_prompt'.
22251 Set wrong_kboard_jmpbuf correctly in recursive calls.
22252 Use current_kboard to access Vkeyboard_translate_table.
22253 Enhance comment before extra longjmp to wrong_kboard_jmpbuf.
22254 Add wrong_kboard_jmpbuf parameter to allow for recursive calls.
22255 Update longjmp invocations. Remember the original current_kboard,
22256 and longjmp to `wrong_kboard_jmpbuf' when a filter, timer or sentinel
22257 changes it. Comment out unnecessary calls to
22258 `record_single_kboard_state' and `any_kboard_state'.
22259 Update recursive calls.
22260 (wrong_kboard_jmpbuf): Remove global variable.
22261 (read_key_sequence): Remove unused variable wrong_kboard_jmpbuf.
22262 Handle deleted interrupted_kboards correctly; that is a legal
22263 case. Add `wrong_kboard_jmpbuf' local variable. Update setjmp
22264 and read_char calls. Abort if interrupted_kboard died in read_char.
22265 (any_kboard_state, single_kboard_state)
22266 (push_frame_kboard): Remove function.
22267 (pop_kboard): Switch out of single_kboard mode if the kboard has
22268 been deleted. Remove unused variable. Help debugging by not
22269 changing current_kboard unnecessarily. Set current_kboard to the
22270 kboard of the selected frame when the stored kboard object has
22271 been deleted before pop_kboard.
22272 (temporarily_switch_to_single_kboard): Change first parameter to a
22273 frame pointer. Throw an error when caller wants to change kboards
22274 while in single_kboard mode. Don't push_kboard if we weren't in
22275 single kboard state. Don't pop_kboard if we popped into any
22276 kboard state.
22277 (restore_kboard_configuration): Abort if pop_kboard changed the
22278 kboard in single_kboard mode. Call pop_kboard only after setting
22279 up single_kboard mode.
22280 (Frecursive_edit): Switch to single_kboard mode only in nested
22281 command loops.
22282 (cmd_error, command_loop, command_loop_1, timer_check):
22283 Comment out unnecessary call to `any_kboard_state' and
22284 `record_single_kboard_state'.
22285 (delete_kboard): Exit single_kboard mode if we have just deleted
22286 that kboard. Use FRAME_KBOARD.
22287 (interrupt_signal): Use `Fkill_emacs' to exit Emacs, not
22288 `fatal_error_signal'.
22289 (record_single_kboard_state): Don't push_kboard if we weren't in
22290 single kboard state. Don't pop_kboard if we popped into any
22291 kboard state.
22292 (push_frame_kboard): Rename to push_kboard.
22293 (kbd_buffer_get_event): Use FRAME_TERMINAL.
22294 (read_avail_input): Read input from all terminals.
22295 (mark_kboards): Also mark Vkeyboard_translate_table.
22296 (kbd_buffer_store_event_hold): Simplify condition.
22297 (read_key_sequence): Reinitialize fkey and keytran at each replay.
22298 (Vkeyboard_translate_table): Move to struct kboard.
22299 (init_kboard): Initialize Vkeyboard_translate_table.
22300 (syms_of_keyboard): Use DEFVAR_KBOARD to define
22301 Vkeyboard_translate_table. Update doc strings. Update docs of
22302 local-function-key-map and function-key-map.
22303
22304 * terminal.c: New file.
22305
22306 * term.c: Include errno.h.
22307 (Vring_bell_function, device_list, initial_device)
22308 (next_device_id, ring_bell, update_begin, update_end)
22309 (set_terminal_window, cursor_to, raw_cursor_to)
22310 (clear_to_end, clear_frame, clear_end_of_line)
22311 (write_glyphs, insert_glyphs, delete_glyphs, ins_del_lines)
22312 (Fdisplay_name, create_device, delete_device): Move to terminal.c.
22313 (syms_of_term): Move their initialization to terminal.c.
22314 (get_tty_terminal, Fdisplay_tty_type, Ftty_display_color_p)
22315 (Ftty_display_color_cells)
22316 (Ftty_no_underline, Fsuspend_tty, Fresume_tty, create_tty_output)
22317 (clear_tty_hooks, set_tty_hooks)
22318 (init_tty, maybe_fatal): New functions.
22319 (Ftty_type): Return nil if terminal is not on a tty instead of
22320 throwing an error. Doc update.
22321 (syms_of_term) <Vsuspend_tty_functions, Vresume_tty_functions>:
22322 Doc update. Initialize new subrs and variables.
22323 (delete_tty): Use terminal->deleted.
22324 (tty_set_terminal_modes): Rename from set_terminal_modes.
22325 (tty_reset_terminal_modes): Rename from reset_terminal_modes.
22326 (set_scroll_region): Rename to `tty_set_scroll_region'.
22327 (turn_on_insert): Rename to `tty_turn_on_insert'.
22328 (turn_off_insert): Rename to `tty_turn_off_insert'.
22329 (turn_off_highlight): Rename to `tty_turn_off_highlight'.
22330 (turn_on_highlight): Rename to `tty_turn_on_highlight'.
22331 (toggle_highligh): Rename to `tty_toggle_highlight'.
22332 (background_highlight): Rename to `tty_background_highlight'.
22333 (highlight_if_desired): Rename to `tty_highlight_if_desired'.
22334 (tty_ring_bell, tty_update_end, tty_set_terminal_window)
22335 (tty_set_scroll_region, tty_background_highlight)
22336 (tty_cursor_to, tty_raw_cursor_to, tty_clear_to_end)
22337 (tty_clear_frame, tty_clear_end_of_line, tty_write_glyphs)
22338 (tty_insert_glyphs, tty_delete_glyphs, tty_ins_del_lines)
22339 (term_get_fkeys, tty_setup_colors, dissociate_if_controlling_tty):
22340 Add static modifier.
22341 (tty_reset_terminal_modes, tty_set_terminal_window)
22342 (tty_set_scroll_region, tty_background_highlight)
22343 (tty_highlight_if_desired, tty_cursor_to)
22344 (tty_raw_cursor_to, tty_clear_to_end, tty_clear_frame)
22345 (tty_clear_end_of_line, tty_write_glyphs, tty_insert_glyphs)
22346 (tty_delete_glyphs, tty_ins_del_lines, turn_on_face): Update for
22347 renames.
22348
223492007-08-28 Jan Djärv <jan.h.d@swipnet.se>
22350
22351 * keyboard.c: Qrtl is new.
22352 (parse_tool_bar_item): Handle :rtl keyword.
22353 (syms_of_keyboard): Intern :rtl keyword.
22354
22355 * dispextern.h (enum tool_bar_item_idx): Add TOOL_BAR_ITEM_RTL_IMAGE.
22356
22357 * gtkutil.c (xg_tool_bar_expose_callback): Just do SET_FRAME_GARBAGED
22358 so no Lisp code is executed.
22359 (file_for_image, find_rtl_image): New functions.
22360 (xg_get_image_for_pixmap): Use file_for_image.
22361 (update_frame_tool_bar): If direction is RTL, use RTL image if
22362 defined. Use Gtk stock images if defined.
22363
223642007-08-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22365
22366 * macterm.c (x_draw_composite_glyph_string_foreground): Draw rectangle
22367 for nonexistent or zero-width glyph in composition glyph.
22368
223692007-08-25 Stefan Monnier <monnier@iro.umontreal.ca>
22370
22371 * m/amdx86-64.h: Redirect to intel386.h if compiling for i386.
22372
22373 * xdisp.c (Finvisible_p): New function.
22374 (syms_of_xdisp): defsubr it.
22375
223762007-08-24 Juanma Barranquero <lekktu@gmail.com>
22377
22378 * image.c (syms_of_image) <image-library-alist, cross-disabled-images>:
22379 Doc fixes.
22380
223812007-08-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22382
22383 * mac.c [MAC_OSX] (select_and_poll_event, sys_select): Fix last changes.
22384
223852007-08-24 Martin Rudalics <rudalics@gmx.at>
22386
22387 * fileio.c (Finsert_file_contents): Consult CHARS_MODIFF to tell
22388 whether decoding has modified buffer contents.
22389
223902007-08-24 Jason Rumney <jasonr@gnu.org>
22391
22392 * image.c [HAVE_NTGUI]: Define dynamic loaded functions for SVG.
22393 (Qgdk_pixbuf, Qglib) [HAVE_NTGUI]: New symbols.
22394 (syms_of_image) [HAVE_NTGUI]: Intern and staticpro them.
22395 (init_svg_functions) [HAVE_NTGUI]: New function.
22396 (fn_g_type_init, fn_g_object_unref, fn_g_error_free): New #defines.
22397 (svg_load_image): Use them.
22398 (svg_load_image) [HAVE_NTGUI]: Implement background.
22399
224002007-08-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22401
22402 * Makefile.in (RSVG_LIBS, RSVG_CFLAGS): New variables.
22403 (ALL_CFLAGS): Use ${RSVG_CFLAGS} instead of @RSVG_CFLAGS@.
22404 (LIBX): Remove @RSVG_LIBS@.
22405 (LIBES): Add $(RSVG_LIBS).
22406
22407 * image.c (svg_load_image): Blend with specified background if exists.
22408 Use IMAGE_BACKGROUND. Add Mac OS Support.
22409
22410 * mac.c (wakeup_from_rne_enabled_p) [MAC_OSX]: Remove variable.
22411 (ENABLE_WAKEUP_FROM_RNE, DISABLE_WAKEUP_FROM_RNE) [MAC_OSX]:
22412 Remove macros.
22413 [MAC_OSX] (socket_callback): Do nothing.
22414 [MAC_OSX] (select_and_poll_event): Use CFRunLoopRunInMode instead of
22415 ReceiveNextEvent.
22416 [MAC_OSX] (sys_select): Likewise. Don't set context as argument to
22417 socket_callback.
22418 (mac_wakeup_from_rne) [MAC_OSX]: Do nothing.
22419
224202007-08-22 Glenn Morris <rgm@gnu.org>
22421
22422 * image.c (x_find_image_file): Search in etc/images/ rather than etc/.
22423
224242007-08-22 Paul Pogonyshev <pogonyshev@gmx.net>
22425
22426 * Makefile.in (ALL_CFLAGS, LIBX): Add RSVG_LIBS.
22427
22428 * image.c: Add support for SVG images. Some additional comments
22429 by Joakim Verona <joakim@verona.se>. When HAVE_RSVG is defined:
22430 (svg_image_p): New function to test for SVG image.
22431 (svg_load): New function to load SVG image.
22432 (svg_load_image): New function, helper for svg_load.
22433 (Qsvg): New Lisp_object.
22434 (svg_keyword_index): New enum.
22435 (svg_format): New static `image_keyword' struct.
22436 (svg_type): New static `image_type' struct.
22437 (librsvg/rsvg.h): Include it.
22438
224392007-08-23 Stefan Monnier <monnier@iro.umontreal.ca>
22440
22441 * lread.c (load_warn_old_style_backquotes): Fix up array size typo.
22442
224432007-08-22 Stefan Monnier <monnier@iro.umontreal.ca>
22444
22445 * lread.c (Qold_style_backquotes): New var.
22446 (syms_of_lread): Init and staticpro it.
22447 (load_warn_old_style_backquotes): New fun.
22448 (Fload): Use them to warn about old style backquotes.
22449 (end_of_file_error, Fload): Remove unused vars.
22450
22451 * lisp.h (Fclear_face_cache, Fx_send_client_event): Declare.
22452
22453 * lread.c (Vold_style_backquotes): New var.
22454 (syms_of_lread): Init and export it to Elisp.
22455 (read1): Set it when we find an old-style (back)quote.
22456
224572007-08-22 Jason Rumney <jasonr@gnu.org>
22458
22459 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): Add missing NULL terminator.
22460
224612007-08-22 Katsumi Yamaoka <yamaoka@jpl.org>
22462
22463 * puresize.h (BASE_PURESIZE): Increase to 1140000.
22464
224652007-08-19 Richard Stallman <rms@gnu.org>
22466
22467 * eval.c (Ffunction, Fquote): Signal error if not 1 argument.
22468
224692007-08-19 Andreas Schwab <schwab@suse.de>
22470
22471 * alloc.c (pure): Round PURESIZE up.
22472
224732007-08-17 Jan Djärv <jan.h.d@swipnet.se>
22474
22475 * xterm.c (handle_one_xevent): Remove check that mouse click is in
22476 active frame.
22477
224782007-08-16 Richard Stallman <rms@gnu.org>
22479
22480 * eval.c (Fcommandp): Add parens to clarify.
22481
22482 * minibuf.c (Fall_completions): Use enum for type of table.
22483
22484 * emacs.c (USAGE2): Improve text.
22485
224862007-08-15 Philippe Waroquiers <philippe.waroquiers@eurocontrol.int>
22487
22488 * term.c (tty_default_color_capabilities): Declare static
22489 variables in file scope, to avoid HPUX compiler problem.
22490
224912007-08-13 Jan Djärv <jan.h.d@swipnet.se>
22492
22493 * gtkutil.c (update_frame_tool_bar): Use -1 as index
22494 to gtk_toolbar_insert.
22495
224962007-08-13 Stefan Monnier <monnier@iro.umontreal.ca>
22497
22498 * fileio.c (Finsert_file_contents): Yet Another Int/Lisp_Object Mixup.
22499
22500 * insdel.c (reset_var_on_error): New fun.
22501 (signal_before_change, signal_after_change):
22502 Use it to reset (after|before)-change-functions to nil in case of error.
22503 Bind inhibit-modification-hooks to t.
22504 Don't bind (after|before)-change-functions to nil while they run.
22505
225062007-08-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22507
22508 * xterm.c (x_draw_image_glyph_string): Adjust stipple origin when
22509 filling pixmap with stippled background.
22510
225112007-08-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22512
22513 * macterm.c [TARGET_API_MAC_CARBON] (mac_handle_window_event):
22514 Don't use invisible frame as parent window for repositioning.
22515
225162007-08-10 Stefan Monnier <monnier@iro.umontreal.ca>
22517
22518 * print.c (new_backquote_output): Rename from old_backquote_output.
22519 (print): Inverse its logic (according to its name) so as to match the
22520 behavior of new_backquote_flag in lread.c.
22521
225222007-08-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22523
22524 * gmalloc.c (posix_memalign): New function.
22525
22526 * macterm.c (frame_highlight, frame_unhighlight): Don't call
22527 ActivateControl/DeactivateControl here.
22528 [USE_MAC_TOOLBAR] (free_frame_tool_bar): Suppress animation when
22529 frame-notice-user-settings is non-nil.
22530 [USE_MAC_FONT_PANEL] (mac_handle_font_event): Also record parameter
22531 for kEventParamFMFontStyle.
22532 [TARGET_API_MAC_CARBON] (mac_handle_keyboard_event): Don't check
22533 mac_pass_command_to_system and mac_pass_control_to_system here.
22534 (XTread_socket): Call ActivateControl/DeactivateControl here.
22535 (XTread_socket) [TARGET_API_MAC_CARBON]:
22536 Check mac_pass_command_to_system and mac_pass_control_to_system here.
22537 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Add further workaround
22538 for window repositioning.
22539
225402007-08-08 Glenn Morris <rgm@gnu.org>
22541
22542 * Replace `iff' in doc-strings and comments.
22543
225442007-08-07 Chong Yidong <cyd@stupidchicken.com>
22545
22546 * xdisp.c (move_it_by_lines): Remove incorrect optimization.
22547
225482007-08-07 Martin Rudalics <rudalics@gmx.at>
22549
22550 * fileio.c (Finsert_file_contents): Run format-decode and
22551 after_insert_file_functions on entire buffer when REPLACE is
22552 non-nil and inhibit modification_hooks and point_motion_hooks.
22553 For consistency, run after_insert_file_functions iff something
22554 got inserted. Move signal_after_change and update_compositions
22555 after code running after_insert_file_functions. Make sure that
22556 undo_list doesn't record intermediate steps of the decoding process.
22557
225582007-08-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22559
22560 * emacs.c (main)
22561 [HAVE_GTK_AND_PTHREAD && !SYSTEM_MALLOC && !DOUG_LEA_MALLOC]:
22562 Call malloc_enable_thread on interactive startup.
22563
22564 * gmalloc.c (_malloc_thread_enabled_p) [USE_PTHREAD]: New variable.
22565 (LOCK, UNLOCK, LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS)
22566 [USE_PTHREAD]: Conditionalize with it.
22567 (malloc_atfork_handler_prepare, malloc_atfork_handler_parent)
22568 (malloc_atfork_handler_child, malloc_enable_thread) [USE_PTHREAD]:
22569 New functions.
22570
225712007-08-06 Chong Yidong <cyd@stupidchicken.com>
22572
22573 * xdisp.c (redisplay_window): When restoring original buffer
22574 position, make sure it is still valid.
22575
22576 * image.c (png_load): Ignore png-supplied background color.
22577
225782007-08-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22579
22580 * mac.c [TARGET_API_MAC_CARBON] (cfdate_to_lisp): Obtain microsec value.
22581 Use kCFAbsoluteTimeIntervalSince1970.
22582
22583 * macmenu.c (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]:
22584 New variable.
22585 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Set it if dialog
22586 event loop should be quit.
22587 [TARGET_API_MAC_CARBON] (create_and_show_dialog) [!MAC_OSX]:
22588 Quit dialog event loop if quit_dialog_event_loop is set.
22589
22590 * macselect.c [!TARGET_API_MAC_CARBON]: Include Scrap.h.
22591 (Selection): New typedef. Use instead of ScrapRef.
22592 (mac_get_selection_from_symbol): Rename from get_scrap_from_symbol.
22593 (mac_valid_selection_target_p): Rename from valid_scrap_target_type_p.
22594 (mac_clear_selection): Rename from clear_scrap.
22595 (get_flavor_type_from_symbol): New argument SEL and subsume function of
22596 scrap_has_target_type. All uses changed.
22597 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
22598 (mac_selection_has_target_p): New functions.
22599 (mac_put_selection_value): Rename from put_scrap_string.
22600 (mac_get_selection_value): Rename from get_scrap_string.
22601 (mac_get_selection_target_list): Rename from get_scrap_target_type_list.
22602 (put_scrap_private_timestamp, scrap_has_target_type)
22603 (get_scrap_private_timestamp): Remove functions.
22604 (SCRAP_FLAVOR_TYPE_EMACS_TIMESTAMP): Remove define.
22605 (x_own_selection, x_get_local_selection):
22606 Use mac_valid_selection_value_p.
22607 (x_own_selection): Don't use put_scrap_private_timestamp.
22608 Record OWNERSHIP-INFO into Vselection_alist instead.
22609 (x_get_local_selection): Don't check type if request is local.
22610 (Fx_selection_owner_p): Don't use get_scrap_private_timestamp.
22611 Detect ownership change with OWNERSHIP-INFO in Vselection_alist instead.
22612
226132007-08-04 Jan Djärv <jan.h.d@swipnet.se>
22614
22615 * gtkutil.c (xg_tool_bar_callback): Generate two TOOL_BAR_EVENT:s,
22616 add comment explaining why.
22617
226182007-08-03 Richard Stallman <rms@gnu.org>
22619
22620 * fileio.c (Fvisited_file_modtime): Use make_time.
22621
226222007-08-01 Ryo Yoshitake <ryo@shiftmode.net> (tiny change)
22623
22624 * mac.c (init_mac_osx_environment): Adjust load-path on self-contained
22625 build.
22626
226272007-07-31 Stefan Monnier <monnier@iro.umontreal.ca>
22628
22629 * gtkutil.c (xg_tool_bar_callback): Generate a single TOOL_BAR_EVENT.
22630
226312007-07-30 Katsumi Yamaoka <yamaoka@jpl.org>
22632
22633 * puresize.h (BASE_PURESIZE): Increase to 1130000.
22634
226352007-07-30 Richard Stallman <rms@gnu.org>
22636
22637 * lread.c (readevalloop, read1): Treat NBSP as whitespace.
22638
226392007-07-29 Jan Djärv <jan.h.d@swipnet.se>
22640
22641 * gmalloc.c (__malloc_initialize): Remove pthread_once. Not needed.
22642
226432007-07-28 Nick Roberts <nickrob@snap.net.nz>
22644
22645 * xdisp.c (decode_mode_spec): Use '@' instead of 'R' to test for
22646 remote default-directory.
22647
22648 * buffer.c (mode-line-format): Update doc string.
22649
226502007-07-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22651
22652 * w32term.c (w32_draw_fringe_bitmap): Extend fringe background to
22653 scroll bar gap.
22654 (x_scroll_bar_create): Set bar->fringe_extended_p.
22655 (w32_set_vertical_scroll_bar): Put leftmost/rightmost scroll bars
22656 on frame edge. Check fringe background extension. Don't clear
22657 extended fringe background area.
22658
22659 * w32term.h (struct scroll_bar): New member fringe_extended_p.
22660 (w32_fill_area): Enclose multiple statements with do ... while (0).
22661
22662 * xterm.c (x_draw_fringe_bitmap) [USE_TOOLKIT_SCROLL_BARS]:
22663 Extend fringe background to scroll bar gap.
22664 (x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS]:
22665 Set bar->fringe_extended_p.
22666 (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
22667 Put leftmost/rightmost scroll bars on frame edge. Check fringe
22668 background extension. Don't clear extended fringe background area.
22669
22670 * xterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
22671 New member fringe_extended_p.
22672
226732007-07-25 Glenn Morris <rgm@gnu.org>
22674
22675 * Relicense all FSF files to GPLv3 or later.
22676
22677 * COPYING: Switch to GPLv3.
22678
226792007-07-25 Stefan Monnier <monnier@iro.umontreal.ca>
22680
22681 * eval.c (Fcommandp): Pay attention to the `interactive-form' property.
22682
22683 * data.c (Finteractive_form): Check for the presence of an
22684 `interactive-form' symbol property more thoroughly.
22685
22686 * data.c (Finteractive_form): Use an `interactive-form' property if
22687 present, analogous to the function-documentation property.
22688
226892007-07-24 Jason Rumney <jasonr@gnu.org>
22690
22691 * w32fns.c (x_real_positions): Get real position from OS instead of
22692 calculating it.
22693
226942007-07-23 Jason Rumney <jasonr@gnu.org>
22695
22696 * filelock.c (current_lock_owner): Allow for @ sign in username.
22697
226982007-07-22 Nick Roberts <nickrob@snap.net.nz>
22699
22700 * xdisp.c (decode_mode_spec): Add case 'R' for to test for
22701 remote default-directory.
22702
22703 * buffer.c (mode-line-format): Describe above case in doc string.
22704
227052007-07-20 Eli Zaretskii <eliz@gnu.org>
22706
22707 * w32proc.c (IMAGE_NT_OPTIONAL_HDR32_MAGIC, IMAGE_OPTIONAL_HEADER32):
22708 Define if not defined.
22709
227102007-07-18 Jason Rumney <jasonr@gnu.org>
22711
22712 * w32proc.c (w32_executable_type): Handle 64 bit executables.
22713
227142007-07-18 Richard Stallman <rms@gnu.org>
22715
22716 * data.c (Fsetq_default): Doc fix.
22717
22718 * eval.c (Fsetq): Doc fix.
22719
227202007-07-18 Juanma Barranquero <lekktu@gmail.com>
22721
22722 * coding.c (Ffind_operation_coding_system):
22723 * eval.c (For, Fand): Doc fixes.
22724 Reported by Johan Bockgård.
22725
227262007-07-18 Jan Djärv <jan.h.d@swipnet.se>
22727
22728 * xfns.c (Fx_focus_frame): Call x_ewmh_activate_frame.
22729
22730 * xterm.h: Declare x_ewmh_activate_frame.
22731
22732 * xterm.c (x_ewmh_activate_frame): New function.
22733 (XTframe_raise_lower): Move code to x_ewmh_activate_frame.
22734
227352007-07-17 Martin Rudalics <rudalics@gmx.at>
22736
22737 * window.c (Fdisplay_buffer): If largest or LRU window is the
22738 only window, split it even if it is not eligible for splitting.
22739 This restores the original behavior broken by the 2007-07-15
22740 change.
22741
227422007-07-17 Glenn Morris <rgm@gnu.org>
22743
22744 * abbrev.c (abbrev_check_chars): New function.
22745 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
22746 Call abbrev_check_chars to check abbrev characters are word
22747 constituents. Doc fix.
22748
227492007-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
22750
22751 * process.c (Fstart_process, Fmake_network_process)
22752 (read_process_output): Fix up last changes.
22753
227542007-07-16 Eli Zaretskii <eliz@gnu.org>
22755
22756 * makefile.w32-in (clean): Don't delete *~.
22757
227582007-07-16 Andreas Schwab <schwab@suse.de>
22759
22760 * window.c (Fdisplay_buffer): Use NILP.
22761 (Fset_window_scroll_bars): Likewise.
22762
227632007-07-15 Martin Rudalics <rudalics@gmx.at>
22764
22765 * window.c (window_min_size_2): New function.
22766 (window_min_size_1, size_window, Fdisplay_buffer)
22767 (Fsplit_window, adjust_window_trailing_edge): Use it to avoid
22768 windows without mode- or header-lines when window-min-height is
22769 too small.
22770 (size_window): Reset nodelete_p after testing it, following an
22771 earlier note by Kim F. Storm.
22772 (display_buffer): Do not set split_height_threshold to twice the
22773 value of window_min_height to avoid changing the value of a
22774 customizable variable. Rather explicitly check whether the
22775 height of the window that shall be splitted is at least as large
22776 as split_height_threshold.
22777 (Fwindow_full_width_p): New defun.
22778 (syms_of_window): Defsubr it.
22779
22780 * window.h: Add EXFUN for Fwindow_full_width_p.
22781
227822007-07-14 Jason Rumney <jasonr@gnu.org>
22783
22784 * process.c [WINDOWSNT]: Don't undefine AF_INET6.
22785
227862007-07-14 Richard Stallman <rms@gnu.org>
22787
22788 * eval.c (maybe_call_debugger): New function.
22789 (find_handler_clause): Use maybe_call_debugger.
22790 Call it when the handler says `debug'.
22791 Eliminate DEBUGGER_VALUE_PTR.
22792 (Fsignal): Eliminate debugger_value.
22793 (Qdebug): New variable.
22794 (syms_of_eval): Initialize it.
22795
227962007-07-14 Juanma Barranquero <lekktu@gmail.com>
22797
22798 * eval.c (Fprogn):
22799 * keyboard.c (Ftrack_mouse):
22800 * print.c (Fwith_output_to_temp_buffer):
22801 * window.c (Fsave_window_excursion): Doc fix.
22802
228032007-07-13 Stefan Monnier <monnier@iro.umontreal.ca>
22804
22805 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 400.
22806
228072007-07-12 Stefan Monnier <monnier@iro.umontreal.ca>
22808
22809 * process.h (struct Lisp_Process): Turn slots infd, outfd,
22810 kill_without_query, pty_flag, tick, update_tick, decoding_carryover,
22811 inherit_coding_system_flag, filter_multibyte, adaptive_read_buffering,
22812 read_output_delay, and read_output_skip from Lisp_Objects to ints.
22813 Remove unused encoding_carryover.
22814 * process.c: Adjust all functions accordingly.
22815
228162007-07-12 Richard Stallman <rms@gnu.org>
22817
22818 * term.c: Include unistd.h only if HAVE_UNISTD_H.
22819
228202007-07-11 Jason Rumney <jasonr@gnu.org>
22821
22822 * makefile.w32-in (LIBS): Include OLE32.
22823
22824 * w32fns.c (w32_msg_pump) <WM_EMACS_CREATEWINDOW>: Initialize COM.
22825 (w32_msg_pump) <WM_DESTROY>: Uninitialize COM.
22826
228272007-07-11 Stefan Monnier <monnier@iro.umontreal.ca>
22828
22829 * lisp.h (struct Lisp_Hash_Table): Turn next_weak into a bare pointer.
22830 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and turned
22831 from a Lisp_Object into a bare pointer.
22832 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
22833 Adjust the code correspondingly.
22834
22835 * alloc.c (emacs_blocked_free): Remove unused var `bytes_used_now'.
22836
22837 * term.c: Include unistd.h for ttyname, used in handle_one_term_event.
22838 (term_show_mouse_face): Remove unused var `j'.
22839 (handle_one_term_event): Remove unused vars `i' and `j'.
22840 Don't cast return value of ttyname since it's not necessary.
22841
228422007-07-10 Stefan Monnier <monnier@iro.umontreal.ca>
22843
22844 * alloc.c (mark_maybe_pointer): Enforce mult-of-8 alignment when using
22845 USE_LSB_TAG. Suggested by Dmitry Antipov <dmantipov@yandex.ru>.
22846
22847 * fns.c (map_char_table): Use an array of int for `indices' rather than
22848 an array of Lisp_Objects (which are only ever integers anyway).
22849 (Fmap_char_table): Update caller.
22850 * lisp.h: Update prototype.
22851 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap):
22852 * fontset.c (Ffontset_info):
22853 * casetab.c (set_case_table): Update callers.
22854
22855 * editfns.c (Ftranspose_regions): Use EMACS_INT for positions.
22856
22857 * keymap.c (struct accessible_keymaps_data)
22858 (struct where_is_internal_data): New structures.
22859 (accessible_keymaps_1, where_is_internal_1): Use them to change
22860 interface to adhere to the one used by map_keymap.
22861 (Faccessible_keymaps, where_is_internal): Use map_keymap.
22862 (accessible_keymaps_char_table, where_is_internal_2): Remove.
22863
22864 * keymap.h (map_keymap_function_t): More informative prototype.
22865
228662007-07-10 Guanpeng Xu <herberteuler@hotmail.com>
22867
22868 * search.c (Vinhibit_changing_match_data, search_regs_1): New vars.
22869 (looking_at_1): Don't change search_regs and last_thing_searched
22870 if `inhibit-changing-match-data' is non-nil.
22871 (string_match_1, search_buffer, set_search_regs): Likewise.
22872 (syms_of_search): Add Lisp level definition for
22873 `inhibit-changing-match-data' and set it to nil.
22874 (boyer_moore): If `inhibit-changing-match-data' is non-nil, compute
22875 start and end of the match, instead of using values in search_regs.
22876
228772007-07-01 Stefan Monnier <monnier@iro.umontreal.ca>
22878
22879 * minibuf.c (Fcompleting_read): New value `confirm-only'
22880 for `require-match'.
22881
228822007-06-28 Stefan Monnier <monnier@iro.umontreal.ca>
22883
22884 * fileio.c (Fdo_auto_save): Revert last patch installed unwillingly as
22885 part of the 2007-06-27 change to syms_of_fileio.
22886
228872007-06-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22888
22889 * macterm.c [USE_MAC_TSM] (mac_handle_text_input_event):
22890 Check WINDOWP before using XWINDOW. Consolidate return statements.
22891
228922007-06-27 Richard Stallman <rms@gnu.org>
22893
22894 * fileio.c (syms_of_fileio) <after-insert-file-functions>: Doc fix.
22895
228962007-06-27 Juanma Barranquero <lekktu@gmail.com>
22897
22898 * buffer.c (syms_of_buffer) <selective-display>: Fix typo in docstring.
22899
229002007-06-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22901
22902 * gmalloc.c [HAVE_GTK_AND_PTHREAD]: Check this after including config.h.
22903 (_aligned_blocks_mutex) [USE_PTHREAD]: New variable.
22904 (LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS): New macros.
22905 (_free_internal, memalign): Use them.
22906 (_malloc_mutex, _aligned_blocks_mutex) [USE_PTHREAD]:
22907 Initialize to PTHREAD_MUTEX_INITIALIZER.
22908 (malloc_initialize_1) [USE_PTHREAD]: Don't use recursive mutex.
22909 (morecore_nolock): Rename from morecore. All uses changed.
22910 Use only nolock versions of internal allocation functions.
22911 (_malloc_internal_nolock, _realloc_internal_nolock)
22912 (_free_internal_nolock): New functions created from
22913 _malloc_internal, _realloc_internal, and _free_internal.
22914 (_malloc_internal, _realloc_internal, _free_internal): Use them.
22915 Copy hook value to automatic variable before its use.
22916 (memalign): Copy hook value to automatic variable before its use.
22917
229182007-06-26 Kenichi Handa <handa@m17n.org>
22919
22920 * coding.c (Ffind_operation_coding_system): Docstring improved.
22921 (syms_of_coding): Docstring of `file-coding-system-alist' improved.
22922
229232007-06-25 David Kastrup <dak@gnu.org>
22924
22925 * keymap.c (Fcurrent_active_maps): Add `position' argument.
22926 (Fwhere_is_internal): Adjust call to `current-active-maps' to
22927 cater for additional parameter.
22928
22929 * keymap.h: Adjust number of parameters to `current-active-maps'.
22930
22931 * doc.c (Fsubstitute_command_keys): Adjust call of
22932 `current-active-maps'.
22933
229342007-06-25 David Kastrup <dak@gnu.org>
22935
22936 * callint.c (Fcall_interactively): Make the parsing of interactive
22937 specs somewhat more readable.
22938
229392007-06-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22940
22941 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe background
22942 to scroll bar gap also when bitmap fills fringe. Draw only foreground
22943 if extended background has already been filled.
22944
229452007-06-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22946
22947 * macgui.h (USE_CG_DRAWING): Don't require USE_ATSUI.
22948 (USE_MAC_TOOLBAR): Require USE_CG_DRAWING.
22949
22950 * macmenu.c (mac_dialog_modal_filter, Fx_popup_dialog) [MAC_OSX]:
22951 Put special treatment for Fmessage_box, Fyes_or_no_p, and Fy_or_n_p
22952 in #if 0 as it is not compatible with y-or-n-p-with-timeout.
22953 (timer_check) [TARGET_API_MAC_CARBON]: Add extern.
22954 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Use QuitEventLoop
22955 instead of QuitAppModalLoopForWindow. Consolidate QuitEventLoop calls.
22956 (pop_down_dialog) [TARGET_API_MAC_CARBON]: New function.
22957 [TARGET_API_MAC_CARBON] (create_and_show_dialog): Use it for unwind.
22958 Run timers during dialog popup.
22959 (Fmenu_or_popup_active_p) [TARGET_API_MAC_CARBON]: Use popup_activated.
22960
229612007-06-21 Jason Rumney <jasonr@gnu.org>
22962
22963 * image.c (convert_mono_to_color_image): Swap fore and background.
22964
229652007-06-20 Jason Rumney <jasonr@gnu.org>
22966
22967 * w32bdf.c (w32_BDF_to_x_font): Unmap memory when finished.
22968 (w32_free_bdf_font): Unmap memory not handle.
22969
229702007-06-20 Sam Steingold <sds@gnu.org>
22971
22972 * gmalloc.c (__morecore): Fix the declaration to comply with the
22973 definition.
22974
229752007-06-20 Juanma Barranquero <lekktu@gmail.com>
22976
22977 * w32term.c (w32_delete_display): Remove leftover declaration.
22978 (w32_define_cursor, w32_initialize): Make static.
22979
22980 * w32.c (_wsa_errlist): Fix typo in error message.
22981 (init_environment): Ignore any environment variable from the
22982 registry having a null value.
22983
229842007-06-20 Glenn Morris <rgm@gnu.org>
22985
22986 * Makefile.in (LIBGIF): Default to -lgif.
22987
229882007-06-17 Jason Rumney <jasonr@gnu.org>
22989
22990 * w32menu.c (add_menu_item): Don't use multibyte string functions on
22991 unicode strings.
22992
229932007-06-16 Juanma Barranquero <lekktu@gmail.com>
22994
22995 * xdisp.c (syms_of_xdisp) <auto-resize-tool-bars>:
22996 Fix typo in docstring.
22997
229982007-06-16 Eli Zaretskii <eliz@gnu.org>
22999
23000 * w32menu.c (add_menu_item): Escape `&' characters in menu items
23001 and their keybindings.
23002
230032007-06-15 Chong Yidong <cyd@stupidchicken.com>
23004
23005 * composite.c (update_compositions): Fix last fix.
23006
230072007-06-14 Jason Rumney <jasonr@gnu.org>
23008
23009 * w32.c (get_process_times_fn): New function pointer.
23010 (globals_of_w32): Intialize it if present in kernel32.dll.
23011 (w32_get_internal_run_time): New function.
23012
23013 * editfns.c (Fget_internal_run_time) [WINDOWSNT]: Use it.
23014
230152007-06-14 Kenichi Handa <handa@etlken.m17n.org>
23016
23017 * composite.c (update_compositions): Check the validness of
23018 compositions.
23019
230202007-06-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23021
23022 * frame.h (struct frame) [MAC_OS]: New member external_tool_bar.
23023 (FRAME_EXTERNAL_TOOL_BAR) [MAC_OS]: Use it.
23024
23025 * macfns.c (mac_window) [USE_MAC_TOOLBAR]: Set toolbar_win_gravity.
23026 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]: Set FRAME_EXTERNAL_TOOL_BAR.
23027
23028 * macgui.h (USE_MAC_TOOLBAR): New define.
23029
23030 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
23031 Return immediately unless popup is activated.
23032
23033 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe
23034 background to scroll bar gap.
23035 (x_scroll_bar_create) [MAC_OSX]: Set bar->fringe_extended_p.
23036 (XTset_vertical_scroll_bar) [MAC_OSX]: Put leftmost/rightmost
23037 scroll bars on frame edge. Check fringe background extension.
23038 Don't clear extended fringe background area.
23039 (TOOLBAR_IDENTIFIER, TOOLBAR_ICON_ITEM_IDENTIFIER)
23040 (TOOLBAR_ITEM_COMMAND_ID_OFFSET, TOOLBAR_ITEM_COMMAND_ID_P)
23041 (TOOLBAR_ITEM_COMMAND_ID_VALUE, TOOLBAR_ITEM_MAKE_COMMAND_ID):
23042 [USE_MAC_TOOLBAR]: New macros.
23043 (mac_move_window_with_gravity, mac_get_window_origin_with_gravity)
23044 (mac_handle_toolbar_event, mac_image_spec_to_cg_image)
23045 (mac_create_frame_tool_bar, update_frame_tool_bar, free_frame_tool_bar)
23046 (mac_tool_bar_note_mouse_movement, mac_handle_toolbar_command_event)
23047 [USE_MAC_TOOLBAR]: New functions.
23048 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Reposition window
23049 manually if previous repositioning has failed.
23050 (mac_handle_keyboard_event): Use precomputed event kind.
23051 (XTread_socket) [USE_MAC_TOOLBAR]: Handle click in structure region
23052 as tool bar item click. Handle mouse movement over tool bar items.
23053
23054 * macterm.h (struct mac_output) [USE_MAC_TOOLBAR]: New member
23055 toolbar_win_gravity.
23056 (struct scroll_bar) [MAC_OSX]: New member fringe_extended_p.
23057 (update_frame_tool_bar, free_frame_tool_bar) [USE_MAC_TOOLBAR]:
23058 Add externs.
23059
23060 * xdisp.c (update_tool_bar, redisplay_tool_bar, redisplay_window)
23061 [USE_MAC_TOOLBAR]: Sync with GTK+ tool bar display.
23062
230632007-06-14 Chong Yidong <cyd@stupidchicken.com>
23064
23065 * image.c (search_image_cache): Remove unused variable.
23066
230672007-06-13 Chong Yidong <cyd@stupidchicken.com>
23068
23069 * xfns.c, xmenu.c: Link to xaw3d if available.
23070
230712007-06-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23072
23073 * dispextern.h (struct image) [HAVE_WINDOW_SYSTEM]: New members
23074 frame_foreground and frame_background.
23075
23076 * image.c (lookup_image): Save frame foreground and background colors.
23077 (search_image_cache): Check if saved and current frame colors match.
23078
230792007-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
23080
23081 * regex.c (regex_compile): Remove the `regnum' counter.
23082 Use bufp->re_nsub instead. Add support for \(?N:RE\).
23083
230842007-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
23085
23086 * term.c: Include intervals.h to declare Fget_text_property.
23087
230882007-06-10 Jason Rumney <jasonr@gnu.org>
23089
23090 * w32fns.c (Fx_file_dialog): Take size from struct not pointer.
23091
230922007-06-08 Juanma Barranquero <lekktu@gmail.com>
23093
23094 * callint.c (Fcall_interactively):
23095 * editfns.c (Fdelete_and_extract_region):
23096 * fileio.c (Fread_file_name):
23097 * fns.c (Fmapconcat):
23098 * keyboard.c (cmd_error_internal):
23099 * keymap.c (Fkey_description):
23100 * lread.c (openp):
23101 * minibuf.c (read_minibuf):
23102 * search.c (wordify):
23103 * sunfns.c (sel_read):
23104 * xdisp.c (Fformat_mode_line, syms_of_xdisp):
23105 * xfns.c (x_default_scroll_bar_color_parameter):
23106 * xmenu.c (menu_help_callback):
23107 * xselect.c (Fx_get_atom_name):
23108 * xterm.c (x_term_init): Use empty_unibyte_string.
23109
231102007-06-08 Dmitry Antipov <dmantipov@yandex.ru> (tiny change)
23111
23112 * alloc.c (init_strings): Initialize canonical empty strings.
23113 (make_uninit_string, make_uninit_multibyte_string): Return appropriate
23114 canonical empty string when the requested size is 0.
23115
23116 * emacs.c (empty_unibyte_string): Rename from empty_string.
23117 (empty_multibyte_string): New canonical empty string.
23118 (syms_of_emacs): Don't initialize empty_string.
23119
23120 * lisp.h (STRING_SET_UNIBYTE): Return the canonical empty unibyte
23121 string, if appropriate.
23122 (empty_unibyte_string, empty_multibyte_string): New externs.
23123 (empty_string): Remove extern.
23124
23125 * lread.c (syms_of_lread): Use empty_unibyte_string.
23126
231272007-06-07 Jason Rumney <jasonr@gnu.org>
23128
23129 * s/ms-w32.h: Don't define HAVE_TZNAME.
23130
23131 * editfns.c (Fcurrent_time_zone): Remove hack for Japanese Windows.
23132
231332007-06-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23134
23135 * mac.c (xrm_get_preference_database): Remove BLOCK_INPUT.
23136
23137 * macfns.c (mac_get_window_bounds): Move extern to macterm.h.
23138 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use GetGlobalMouse.
23139
23140 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
23141 Don't call next handler.
23142 [TARGET_API_MAC_CARBON] (install_menu_target_item_handler):
23143 Remove argument. Install handler to application.
23144 (set_frame_menubar): Don't change deep_p.
23145 (mac_menu_show): Use FRAME_OUTER_TO_INNER_DIFF_X and
23146 FRAME_OUTER_TO_INNER_DIFF_Y.
23147 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
23148 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
23149 [HAVE_DIALOGS]: New macros.
23150 [HAVE_DIALOGS] (mac_handle_dialog_event, create_and_show_dialog):
23151 Use them.
23152 (fill_menubar) [TARGET_API_MAC_CARBON]: Use CFString.
23153
23154 * macselect.c [MAC_OSX] (install_service_handler): Rename from
23155 init_service_handler. All callers changed. Return OSStatus value.
23156
23157 * macterm.c (mac_begin_cg_clip): New arg F. Call SetPortWindowPort.
23158 All callers changed so as not to call SetPortWindowPort.
23159 (mac_begin_cg_clip) [USE_CG_DRAWING]: Call mac_prepare_for_quickdraw.
23160 (mac_draw_image_string_atsui) [USE_ATSUI]: New function created from
23161 mac_draw_string_common.
23162 (mac_draw_image_string_qd): Likewise.
23163 (mac_draw_string_common): Use them. Add INLINE.
23164 (XTmouse_position, x_scroll_bar_report_motion) [TARGET_API_MAC_CARBON]:
23165 Use FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y, and
23166 GetGlobalMouse.
23167 (x_set_mouse_pixel_position) [MAC_OSX]: Use FRAME_OUTER_TO_INNER_DIFF_X
23168 and FRAME_OUTER_TO_INNER_DIFF_Y.
23169 [TARGET_API_MAC_CARBON] (mac_handle_mouse_event): Likewise.
23170 [USE_MAC_TSM] (mac_handle_text_input_event): Likewise.
23171 (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Move code for
23172 repositioning window to mac_handle_window_event.
23173 (x_make_frame_invisible) [TARGET_API_MAC_CARBON]: Move code for
23174 saving window location to mac_handle_window_event
23175 [USE_MAC_FONT_PANEL] (mac_show_hide_font_panel): Install handler here.
23176 (install_menu_target_item_handler): Remove argument in extern.
23177 [TARGET_API_MAC_CARBON] (mac_event_to_emacs_modifiers):
23178 Also accept command events.
23179 (do_keystroke): New function created from XTread_socket.
23180 (init_command_handler): Remove functions.
23181 [TARGET_API_MAC_CARBON] (mac_handle_window_event): Reposition window
23182 and save window location by kEventWindowShowing and kEventWindowHiding
23183 handlers here. Don't call next handler for window state change and
23184 focus events.
23185 (mac_handle_application_event, mac_handle_keyboard_event)
23186 [TARGET_API_MAC_CARBON]: New functions.
23187 (install_window_handler) [TARGET_API_MAC_CARBON]: Register handlers for
23188 kEventWindowShowing and kEventWindowHiding events. Move installation
23189 of mouse, font, text input and menu target item handlers to
23190 install_application_handler.
23191 (install_application_handler) [TARGET_API_MAC_CARBON]: New function.
23192 (mac_handle_cg_display_reconfig) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
23193 New function.
23194 (init_dm_notification_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
23195 Register it.
23196 (XTread_socket) [TARGET_API_MAC_CARBON]:
23197 Consolidate SendEventToEventTarget calls.
23198 Use FRAME_OUTER_TO_INNER_DIFF_X and FRAME_OUTER_TO_INNER_DIFF_Y.
23199 Move application activation handler to mac_handle_application_event.
23200 Move keyboard handler to mac_handle_keyboard_event.
23201 (XTread_socket) [!TARGET_API_MAC_CARBON]: Use do_keystroke.
23202 (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
23203 init_command_handler. Call install_application_handler.
23204
23205 * macterm.h (mac_get_window_bounds): Move extern from macfns.c.
23206 (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y): New macros.
23207
232082007-06-07 Glenn Morris <rgm@gnu.org>
23209
23210 * emacs.c (main): Use `emacs-copyright' in --version output.
23211
232122007-06-06 Chong Yidong <cyd@stupidchicken.com>
23213
23214 * image.c (xpm_load): Remove spurious call to xpm_init_color_cache.
23215
232162007-06-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23217
23218 * macfns.c (mac_window): Replace WindowPtr with WindowRef.
23219
23220 * macgui.h: Replace WindowPtr with WindowRef.
23221
23222 * macmenu.c: Replace MenuHandle and GetMenuHandle with MenuRef and
23223 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
23224 Replace ControlHandle with ControlRef.
23225 (install_menu_quit_handler): Rename arg MENU_HANDLE to ROOT_MENU.
23226
23227 * macterm.c: Replace MenuHandle and GetMenuHandle with MenuRef and
23228 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
23229 Replace ControlHandle with ControlRef.
23230 (USE_CARBON_EVENTS): Remove. Use TARGET_API_MAC_CARBON instead.
23231 [MAC_OS8] (do_get_menus): Rename variable `menu_handle' to `menu'.
23232
23233 * macterm.h (struct scroll_bar): Rename member control_handle_low
23234 and control_handle_high to control_ref_low and control_ref_high.
23235 All uses changed.
23236 (SCROLL_BAR_CONTROL_REF, SET_SCROLL_BAR_CONTROL_REF): Rename from
23237 SCROLL_BAR_CONTROL_HANDLE and SET_SCROLL_BAR_CONTROL_HANDLE,
23238 respectively. All uses changed.
23239 (XCreatePixmap, XCreatePixmapFromBitmapData, XSetWindowBackground)
23240 (install_window_handler, remove_window_handler): Replace WindowPtr
23241 with WindowRef in externs.
23242
232432007-06-05 Juanma Barranquero <lekktu@gmail.com>
23244
23245 * xfaces.c (Finternal_lisp_face_p): Signal error for face alias loops.
23246
232472007-06-03 Nick Roberts <nickrob@snap.net.nz>
23248
23249 * keyboard.c (discard_mouse_events): Add GPM_CLICK_EVENT case.
23250
23251 * frame.c (Fmouse_position, Fmouse_pixel_position):
23252 Condition on HAVE_GPM too.
23253
23254 * term.c (term_mouse_highlight): Remove unused variables.
23255 (Fterm_open_connection): Set gpm_zerobased to 1.
23256 (term_mouse_movement, term_mouse_click, handle_one_term_event):
23257 Use zero based co-ordinates.
23258 (handle_one_term_event): Report a drag as mouse movement too.
23259
23260 * Makefile.in (MOUSE_SUPPORT): Define for HAVE_GPM.
23261
232622007-06-03 Chong Yidong <cyd@stupidchicken.com>
23263
23264 * image.c (search_image_cache): New function. Require background
23265 color match if background color is unspecified in the image spec.
23266 (uncache_image, lookup_image): Use it.
23267
232682007-06-01 Juanma Barranquero <lekktu@gmail.com>
23269
23270 * window.c (Fshrink_window): Reflow docstring.
23271
232722007-06-02 Chong Yidong <cyd@stupidchicken.com>
23273
23274 * Version 22.1 released.
23275
232762007-06-01 Richard Stallman <rms@gnu.org>
23277
23278 * xfns.c (x_encode_text): Add GCPRO.
23279
232802007-06-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23281
23282 * xfns.c (x_set_name_internal): Save encoded name before
23283 x_encode_text in case string data is relocated.
23284
232852007-05-31 Richard Stallman <rms@gnu.org>
23286
23287 * buffer.c (syms_of_buffer): Doc fix.
23288
232892007-05-30 Nick Roberts <nickrob@snap.net.nz>
23290
23291 * sysdep.c (init_sys_modes): Add rather than replace with
23292 O_NONBLOCK.
23293
23294 * frame.c [HAVE_GPM] (Fset_mouse_pixel_position): Add call to
23295 term_mouse_moveto.
23296
23297 * termhooks.h (term_mouse_moveto): New extern.
23298
23299 * term.c (mouse_face_window): Rename...
23300 (Qmouse_face_window): ...to this.
23301 (term_show_mouse_face, term_clear_mouse_face)
23302 (term_mouse_highlight): Use Qmouse_face_window.
23303 (term_mouse_moveto): New function.
23304 (term_mouse_position): Make it work.
23305 (syms_of_term): Uncomment assignment to mouse_position_hook.
23306 Staticpro Qmouse_face_window.
23307
233082007-05-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23309
23310 * xdisp.c (redisplay_internal): Bind inhibit-point-motion-hooks to t
23311 around current_column call.
23312
233132007-05-26 Dan Nicolaescu <dann@ics.uci.edu>
23314
23315 * xfaces.c (syms_of_xfaces): Delete stray semicolon.
23316 * xdisp.c (next_element_from_buffer):
23317 * window.c (delete_window):
23318 * term.c (term_mouse_highlight):
23319 * msdos.c (getdefdir):
23320 * macterm.c (mac_create_bitmap_from_bitmap_data)
23321 (init_font_name_table):
23322 * fns.c (Fsxhash):
23323 * data.c (Fmake_local_variable):
23324 * ccl.c (ccl_driver): Likewise.
23325
233262007-05-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23327
23328 * macterm.c [USE_CARBON_EVENTS] (mac_handle_window_event):
23329 Call mac_wakeup_from_rne on window size change.
23330
233312007-05-25 Chong Yidong <cyd@stupidchicken.com>
23332
23333 * image.c (uncache_image): Fix typo.
23334
233352007-05-23 Johannes Weiner <hannes@saeurebad.de> (tiny change)
23336
23337 * keyboard.c (make_lispy_movement): Condition on HAVE_GPM too.
23338
233392007-05-22 Richard Stallman <rms@gnu.org>
23340
23341 * xterm.c (x_connection_closed): Remove NO_RETURN.
23342
233432007-05-22 Martin Rudalics <rudalics@gmx.at>
23344
23345 * syntax.c (scan_words): Fix arg to UPDATE_SYNTAX_TABLE_BACKWARD.
23346
233472007-05-21 Chong Yidong <cyd@stupidchicken.com>
23348
23349 * image.c (uncache_image): New function.
23350 (Fimage_refresh): New function.
23351
233522007-05-20 Jan Djärv <jan.h.d@swipnet.se>
23353
23354 * Makefile.in: Move GPM check outside HAVE_X_WINDOWS.
23355
233562007-05-20 Nick Roberts <nickrob@snap.net.nz>
23357
23358 * config.in, keyboard.c, Makefile.in, sysdep.c, term.c,
23359 * termhooks.h: Use HAVE_GPM instead of HAVE_GPM_H.
23360
233612007-05-20 Nick Roberts <nickrob@snap.net.nz>
23362
23363 * keyboard.c (make_lispy_event): Make case GPM_CLICK_EVENT
23364 conditional on [HAVE_GPM_H].
23365
233662007-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
23367
23368 * syntax.c (skip_chars): Update syntax-table only after we checked that
23369 the new location is valid.
23370
233712007-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23372
23373 * macterm.c (x_calc_absolute_position): Add BLOCK_INPUT around
23374 mac_get_window_bounds.
23375
233762007-05-20 Nick Roberts <nickrob@snap.net.nz>
23377
23378 * Makefile.in (LIBGPM): Allow it to be set from configure.
23379 If set then link Emacs with it.
23380
23381 * config.in: Regenerate.
23382
23383 * lisp.h (add_gpm_wait_descriptor, delete_gpm_wait_descriptor):
23384 New externs.
23385
23386 * termhooks.h [HAVE_GPM_H] (enum event_kind): Add GPM_CLICK_EVENT.
23387 Include gpm.h.
23388 (handle_one_term_event, term_gpm): New externs.
23389
23390 * sysdep.c [HAVE_GPM_H] (init_sys_modes): Make gpm_fd nonblocking
23391 and allow it to be interrupted by SIGIO.
23392
23393 * process.c (gpm_wait_mask, max_gpm_desc): New variables.
23394 (wait_reading_process_output): Wait on gpm_fd too.
23395 (add_gpm_wait_descriptor, delete_gpm_wait_descriptor)): New functions.
23396 (add_gpm_wait_descriptor_called_flag): New variable.
23397 (delete_keyboard_wait_descriptor): Check gpm_wait_mask.
23398
23399 * keyboard.c [HAVE_GPM_H] (Qmouse_fixup_help_message)
23400 (make_lispy_movement, tracking_off, Ftrack_mouse, some_mouse_moved)
23401 (show_help_echo, readable_events, kbd_buffer_get_event, init_keyboard):
23402 Extend HAVE_MOUSE ifdefs to HAVE_GPM_H.
23403 (make_lispy_event): Add case GPM_CLICK_EVENT.
23404 (read_avail_input): Handle mouse input.
23405
23406 * term.c (write_glyphs_with_face): New function.
23407 [HAVE_GPM_H]: Include buffer.h, sys/fcntl.h.
23408 (mouse_face_beg_row, mouse_face_beg_col, mouse_face_end_row)
23409 (mouse_face_end_col, mouse_face_past_end, mouse_face_window)
23410 (mouse_face_face_id, term_gpm, pos_x, pos_y)
23411 (last_mouse_x, last_mouse_y): New variables.
23412 (term_show_mouse_face, term_clear_mouse_face, fast_find_position)
23413 (term_mouse_highlight, term_mouse_movement, term_mouse_position)
23414 (term_mouse_click, handle_one_term_event, Fterm_open_connection)
23415 (Fterm_close_connection): New functions.
23416 (term_init): Initialise mouse_face_window.
23417
234182007-05-19 Chong Yidong <cyd@stupidchicken.com>
23419
23420 * xdisp.c (redisplay_window): If first window line is a
23421 continuation line, recompute the new window start instead of
23422 recentering.
23423
234242007-05-18 Glenn Morris <rgm@gnu.org>
23425
23426 * m/alpha.h (ORDINARY_LINK): No longer define on OpenBSD.
23427 Suggested by Alfred M. Szmidt <ams@gnu.org>.
23428
234292007-05-17 Glenn Morris <rgm@gnu.org>
23430
23431 * m/macppc.h (ORDINARY_LINK): No longer define on OpenBSD.
23432
234332007-05-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23434
23435 * macterm.c [USE_CARBON_EVENTS] (mac_convert_event_ref): Also convert
23436 dead key repeat and up events.
23437
234382007-05-14 Chong Yidong <cyd@stupidchicken.com>
23439
23440 * image.c (pbm_load): Check image size for monochrome pbm.
23441
234422007-05-13 Chong Yidong <cyd@stupidchicken.com>
23443
23444 * xterm.c (XTread_socket): Revert last change.
23445
234462007-05-12 Chong Yidong <cyd@stupidchicken.com>
23447
23448 * image.c (pbm_load): Correctly check image size for greyscale pbm.
23449
23450 * xterm.c (XTread_socket): Yet Another Uncaught X Error Crash (YAUXEC).
23451
234522007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
23453
23454 * editfns.c (Ftranspose_regions): Yet another int/Lisp_Object
23455 mixup (YAILOM).
23456
234572007-05-07 Andreas Schwab <schwab@suse.de>
23458
23459 * keymap.c (Flookup_key): Fix typo in last change.
23460
234612007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
23462
23463 * keymap.c (Fdefine_key, Flookup_key): Only do the 0x80->meta_modifier
23464 mapping for unibyte strings.
23465
234662007-05-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23467
23468 * macmenu.c (mac_dialog_show): Apply 2007-04-27 change for xmenu.c.
23469 (Fx_popup_dialog) [MAC_OSX]: Likewise.
23470
234712007-04-29 Richard Stallman <rms@gnu.org>
23472
23473 * insdel.c (replace_range): For undo, record insertion first.
23474
234752007-04-29 Andreas Schwab <schwab@suse.de>
23476
23477 * lisp.h (VECSIZE): Use OFFSETOF.
23478
234792007-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23480
23481 * xdisp.c (try_window_reusing_current_matrix): Fix number of
23482 disabled lines.
23483
234842007-04-28 Richard Stallman <rms@gnu.org>
23485
23486 * lread.c (read_escape): In a string, \s is always space.
23487
234882007-04-27 Jan Djärv <jan.h.d@swipnet.se>
23489
23490 * xmenu.c (xdialog_show): Call Fredisplay before showing the dialog.
23491
23492 * gtkutil.c (xg_update_menubar, create_menus): Create empty
23493 submenu for menu bar items.
23494
23495See ChangeLog.10 for earlier changes.
23496
23497;; Local Variables:
23498;; coding: utf-8
23499;; add-log-time-zone-rule: t
aac0c6e3
MR
23500;; End:
23501
e3eb1dae 23502 Copyright (C) 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
aac0c6e3
MR
23503
23504 This file is part of GNU Emacs.
23505
23506 GNU Emacs is free software: you can redistribute it and/or modify
23507 it under the terms of the GNU General Public License as published by
23508 the Free Software Foundation, either version 3 of the License, or
23509 (at your option) any later version.
23510
23511 GNU Emacs is distributed in the hope that it will be useful,
23512 but WITHOUT ANY WARRANTY; without even the implied warranty of
23513 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
23514 GNU General Public License for more details.
23515
23516 You should have received a copy of the GNU General Public License
23517 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
23518
23519;; arch-tag: dfb6ad96-1550-4905-9e53-d2059ee84c40