Reformat some comments in src/s/*.h.
[bpt/emacs.git] / src / ChangeLog
CommitLineData
1a0d7c06
GM
12010-05-12 Glenn Morris <rgm@gnu.org>
2
b5457f14
GM
3 * Makefile.in (YMF_PASS_LDFLAGS, LD, LINKER): Simplify the logic.
4 (LINKER_WAS_SPECIFIED): Remove.
5
1a0d7c06
GM
6 * Makefile.in (LIB_GCC): Set using configure, not cpp.
7 (GNULIB_VAR) [!ORDINARY_LINK]: Always set to $LIB_GCC.
8 * m/arm.h (LIB_GCC) [GNU_LINUX]:
9 * s/cygwin.h (LIB_GCC):
10 * s/freebsd.h (LIB_GCC):
11 * s/gnu-linux.h (LIB_GCC):
12 * s/msdos.h (LIB_GCC):
13 * s/netbsd.h (LIB_GCC):
14 Move to configure.
15
3ffd4615 162010-05-11 Karel Klic <kklic@redhat.com>
c90ca7b7
KH
17
18 * ftfont.c: Fix incorrect parentheses of #if condition for
19 definining M17N_FLT_USE_NEW_FEATURE.
20
acddf8ae
GM
212010-05-11 Glenn Morris <rgm@gnu.org>
22
23 * Makefile.in (LIBS_SYSTEM) [MSDOS]: Do not reset.
24 * s/msdos.h (MSDOS_LIBS_SYSTEM): Remove.
25
ae5e04fa
EZ
262010-05-10 Eli Zaretskii <eliz@gnu.org>
27
28 * xdisp.c (init_iterator): Don't turn on bidi reordering in
29 unibyte buffers. See
30 http://lists.gnu.org/archive/html/emacs-devel/2010-05/msg00263.html.
31
7490175b
GM
322010-05-10 Glenn Morris <rgm@gnu.org>
33
97efb629
GM
34 * Makefile.in (LIBS_SYSTEM): Set using configure, not cpp.
35 (LIBS_SYSTEM) [MSDOS]: Reset with MSDOS_LIBS_SYSTEM.
36 (LIBES): Use LIBS_SYSTEM as a variable.
37 * s/msdos.h (LIBS_SYSTEM): Rename to MSDOS_LIBS_SYSTEM. Always define.
38 * s/aix4-2.h (LIBS_SYSTEM):
39 * s/freebsd.h (LIBS_SYSTEM):
40 * s/hpux10-20.h (LIBS_SYSTEM):
41 * s/sol2-6.h (LIBS_SYSTEM):
42 * s/unixware.h (LIBS_SYSTEM):
43 Move to configure.
44
7490175b
GM
45 * s/aix4-2.h (MAIL_USE_LOCKF):
46 * s/bsd-common.h (MAIL_USE_FLOCK):
47 * s/darwin.h (MAIL_USE_FLOCK):
48 * s/gnu-linux.h (MAIL_USE_FLOCK):
49 * s/irix6-5.h (MAIL_USE_FLOCK):
50 * s/template.h (MAIL_USE_FLOCK):
51 Move to configure.
52
0235128c 532010-05-08 Chong Yidong <cyd@stupidchicken.com>
61a808e8
CY
54
55 * Version 23.2 released.
56
0235128c 572010-05-08 Andreas Schwab <schwab@linux-m68k.org>
5dcde606
AS
58
59 * composite.c (autocmp_chars): Save point as marker before calling
60 auto-composition-function (Bug#5984).
61
62 * lisp.h (restore_point_unwind): Add prototype.
63
64 * fileio.c (restore_point_unwind): Remove static attribute.
65
0235128c 662010-05-08 Kenichi Handa <handa@m17n.org>
c4170e32
KH
67
68 * ftfont.c (M17N_FLT_USE_NEW_FEATURE): Define it if we can use the
69 new feature of libotf and m17n-flt.
0235128c
SM
70 (ftfont_check_otf) [M17N_FLT_USE_NEW_FEATURE]:
71 Call OTF_check_features even if no specific feature is given.
c4170e32
KH
72 (PACK_OTF_TAG) [M17N_FLT_USE_NEW_FEATURE]: New macro.
73 (ftfont_drive_otf) [M17N_FLT_USE_NEW_FEATURE]: Handle the case
74 that OUT is NULL. Use OTF_drive_gsub_with_log and
75 OTF_drive_gpos_with_log instead of OTF_drive_gsub and
76 OTF_drive_gpos.
77 (ftfont_try_otf) [M17N_FLT_USE_NEW_FEATURE]: New function.
0235128c
SM
78 (ftfont_shape_by_flt) [M17N_FLT_USE_NEW_FEATURE]:
79 Setup mflt_enable_new_feature and mflt_try_otf.
80
4721152c
J
812010-05-08 Jan Djärv <jan.h.d@swipnet.se>
82
83 * xsettings.c (Ftool_bar_get_system_style): Correct comment.
84
85 * gtkutil.c (xg_pack_tool_bar): Change show_all to show for handle
86 box and toolbar (Bug #6139).
87 (xg_create_tool_bar): Remove comment (Bug #6139).
88 (xg_make_tool_item): Remove gtk_widget_show_all (Bug #6139).
89 (xg_show_toolbar_item): Add gtk_widget_show for weventbox (Bug #6139).
90
ee0a16cf
JB
912010-05-08 Juanma Barranquero <lekktu@gmail.com>
92
93 * makefile.w32-in ($(BLD)/eval.$(O), $(BLD)/w32fns.$(O)):
94 Update dependencies.
95
96d79611
EZ
962010-05-08 Eli Zaretskii <eliz@gnu.org>
97
98 * fringe.c (update_window_fringes): Set up truncation bitmaps for
99 R2L lines.
100
40c17879
GM
1012010-05-08 Glenn Morris <rgm@gnu.org>
102
7b42b29f
GM
103 * Makefile.in (THIS_IS_MAKEFILE): Remove, unused.
104
40c17879
GM
105 * Makefile.in (LIBS_TERMCAP): Set with configure, not cpp.
106 (TERMCAP_OBJ): New, set by configure, replacing termcapobj.
107 (termcapobj): Replace with TERMCAP_OBJ.
108 (otherobj): Use $TERMCAP_OBJ instead of $termcapobj.
109 (LIBES): Use LIBS_TERMCAP as a variable.
110
111 * s/freebsd.h (osreldate.h): No longer include, since this file
112 does not use __FreeBSD_version any more.
113
114 * s/aix4-2.h (TERMINFO):
115 * s/cygwin.h (TERMINFO):
116 * s/darwin.h (TERMINFO, LIBS_TERMCAP) [HAVE_LIBNCURSES]:
117 * s/freebsd.h (TERMINFO, LIBS_TERMCAP):
118 * s/gnu-linux.h (TERMINFO, LIBS_TERMCAP) [HAVE_LIBNCURSES]:
119 * s/gnu.h (TERMINFO, LIBS_TERMCAP) [HAVE_LIBNCURSES]:
120 * s/hpux10-20.h (TERMINFO, LIBS_TERMCAP):
121 * s/irix6-5.h (TERMINFO):
122 * s/netbsd.h (LIBS_TERMCAP):
123 * s/openbsd.h (TERMINFO, LIBS_TERMCAP):
124 * s/sol2-6.h (LIBS_TERMCAP) [!TERMINFO]:
125 * s/usg5-4.h (TERMINFO):
126 Move to configure.
127
94b612ad
SM
1282010-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
129
130 * eval.c (unbind_to): Don't unbind a local binding into the global
131 binding when the local binding disappeared. Inversely, don't unbind
132 a global binding into a newly created local binding.
133 * data.c (set_internal): Make its `buf' arg into a `where' arg so we
134 can specify the frame to use, when applicable. Adjust callers.
135
15e12598
VB
1362010-05-07 Vincent Belaïche <vincent.belaiche@gmail.com>
137 Stefan Monnier <monnier@iro.umontreal.ca>
138
139 * floatfns.c (Fisnan, Fcopysign, Ffrexp, Fldexp): New functions.
140
f724825e
EZ
1412010-05-07 Eli Zaretskii <eliz@gnu.org>
142
5cba3209
EZ
143 * w32fns.c: Include w32.h.
144 (Fw32_shell_execute): Decode the error message before passing it
145 to `error'. (Bug#6126)
146
d16bdfc3
EZ
147 * msdos.c (dos_set_window_size):
148 * w16select.c (Fx_selection_exists_p): Use `Fsymbol_value (foo)'
149 instead of `XSYMBOL (foo)->value'.
150
59d93e87
EZ
1512010-05-07 Eli Zaretskii <eliz@gnu.org>
152
9fdec8bc
EZ
153 Fix the MS-DOS build, broken by autoconfiscation.
154
155 * Makefile.in: Don't use Make-style comments past the "start of
156 cpp stuff" line.
157 (MSDOS_OBJ): Remove xmenu.o (it is now defined by XMENU_OBJ).
158
159 * s/msdos.h (UNEXEC): Don't define (@unexec@ in Makefile.in is
160 edited directly by msdos/sed1v2.inp).
f724825e 161
2f86b22b
GM
1622010-05-07 Glenn Morris <rgm@gnu.org>
163
164 * Makefile.in (LD_SWITCH_SYSTEM): Set with configure, not cpp.
165 (LD_SWITCH_SYSTEM_EXTRA): New variable, set by configure.
166 (TEMACS_LDFLAGS): Use $LD_SWITCH_SYSTEM and $LD_SWITCH_SYSTEM_EXTRA,
167 move out of cpp section.
168 * s/freebsd.h (LD_SWITCH_SYSTEM):
169 * s/gnu-linux.h (LD_SWITCH_SYSTEM):
170 * s/netbsd.h (LD_SWITCH_SYSTEM):
171 * s/openbsd.h (LD_SWITCH_SYSTEM): Move to configure.in.
172
49ebbd65
DN
1732010-05-07 Dan Nicolaescu <dann@ics.uci.edu>
174
175 Define LIB_STANDARD and START_FILES using autoconf.
176 * s/usg5-4.h (LIB_STANDARD):
177 * s/netbsd.h (START_FILES):
178 * s/irix6-5.h (LIB_STANDARD):
179 * s/hpux10-20.h (LIB_STANDARD, START_FILES):
180 * s/gnu-linux.h (START_FILES, LIB_STANDARD):
181 * s/freebsd.h (START_FILES):
182 * s/darwin.h (START_FILES):
183 * s/cygwin.h (START_FILES):
184 * s/aix4-2.h (LIB_STANDARD):
185 * m/ibmrs6000.h (START_FILES): Remove, move logic to configure.in.
186 * Makefile.in (STARTFILES): Rename to START_FILES, define using
187 autoconf, not cpp.
188
d43c06d6
DN
1892010-05-06 Dan Nicolaescu <dann@ics.uci.edu>
190
28823648
DN
191 Remove NEED_BSDTTY and NEED_UNISTD_H.
192 * s/hpux10-20.h (NEED_BSDTTY): Remove.
193 * s/aix4-2.h (NEED_UNISTD_H): Remove.
194 * systty.h: Simplify conditionals for including <sys/bsdtty.h>,
195 <sys/ptyio.h> and <unistd.h>.
196
aca00430
DN
197 * emacs.c (main): Remove NO_DIR_LIBRARY conditional, unused.
198
d43c06d6
DN
199 * Makefile.in (STARTFILES): Conditionally define to make the usage clear.
200 * s/gnu.h (START_FILES): Remove empty definition.
201
3e56b11d
JD
2022010-05-06 Jan Djärv <jan.h.d@swipnet.se>
203
204 * xterm.c (x_draw_image_relief): Move declaration of extra to beginning.
205
e3cf0cde
GM
2062010-05-06 Glenn Morris <rgm@gnu.org>
207
208 * Makefile.in (CPP, LN_S): Remove unused variables.
209
774b9a60
SM
2102010-05-05 Stefan Monnier <monnier@iro.umontreal.ca>
211
212 * syntax.c (Fchar_syntax): Check the arg is a character (bug#6080).
213
4ab92842
LM
2142010-05-05 Lawrence Mitchell <wence@gmx.li>
215
216 * m/sparc.h: Fix typo in earlier change.
217
178f2507
SM
2182010-05-04 Stefan Monnier <monnier@iro.umontreal.ca>
219
220 Misc tweaks.
221 * eval.c (Fdefvaralias): Remove unintended nested if.
222 (internal_condition_case_2, internal_condition_case_n): Use ANSI type.
223
80f00217 2242010-05-04 Bernhard Herzog <bh@intevation.de> (tiny change)
991be6d4
JD
225
226 * xsmfns.c (smc_save_yourself_CB): strlen(client_id) => strlen(cwd).
227
ef03a4e6
DN
2282010-05-04 Dan Nicolaescu <dann@ics.uci.edu>
229
58eb6cf0
DN
230 Remove BSD_PGRPS.
231 * s/bsd-common.h (BSD_PGRPS): Remove undef.
232 * s/gnu-linux.h (BSD_PGRPS): Remove.
233 * term.c (dissociate_if_controlling_tty):
234 * sysdep.c (narrow_foreground_group, widen_foreground_group)
235 (init_sys_modes, reset_sys_modes):
236 * emacs.c (main):
237 * callproc.c (Fcall_process, child_setup): Remove code depending
238 on BSD_PGRPS.
239
ef03a4e6
DN
240 Remove POSIX_SIGNALS.
241 * s/usg5-4.h (POSIX_SIGNALS):
242 * s/netbsd.h (POSIX_SIGNALS):
243 * s/msdos.h (POSIX_SIGNALS):
244 * s/ms-w32.h (POSIX_SIGNALS):
245 * s/hpux11.h (POSIX_SIGNALS):
246 * s/gnu.h (POSIX_SIGNALS):
247 * s/gnu-linux.h (POSIX_SIGNALS):
248 * s/freebsd.h (POSIX_SIGNALS):
249 * s/darwin.h (POSIX_SIGNALS):
250 * s/cygwin.h (POSIX_SIGNALS):
251 * s/aix4-2.h (POSIX_SIGNALS): Remove definition.
252 * s/unixware.h:
253 * s/sol2-6.h: Remove comments on POSIX_SIGNALS.
254 * process.c (create_process):
255 * syssignal.h:
256 * sysdep.c (wait_for_termination, init_signals):
257 * process.c (create_process):
258 * msdos.c: POSIX_SIGNALS is always defined on all platforms,
259 remove all code that assumes the contrary.
260
49628785
GM
2612010-05-04 Glenn Morris <rgm@gnu.org>
262
27a2cdfc
GM
263 * s/gnu-linux.h (LD_SWITCH_SYSTEM): Use LD_SWITCH_X_SITE_AUX as a shell
264 variable.
265 * s/netbsd.h (LD_SWITCH_SYSTEM_tmp): Remove.
266 (LD_SWITCH_SYSTEM): Use $LD_SWITCH_X_SITE_AUX_RPATH.
267 * s/openbsd.h (LD_SWITCH_SYSTEM_tmp): Remove.
268 (LD_SWITCH_SYSTEM): Use $LD_SWITCH_X_SITE_AUX_RPATH instead of
269 LD_SWITCH_SYSTEM_tmp.
270 * Makefile.in (LD_SWITCH_X_SITE_AUX, LD_SWITCH_X_SITE_AUX_RPATH):
271 New variables, set by configure.
272
eb21eab5
GM
273 * s/aix4-2.h (LD_SWITCH_SYSTEM_TEMACS): Move to configure.in.
274 * s/darwin.h (HEADERPAD_EXTRA, LIBS_NSGUI): Remove.
275 (LD_SWITCH_SYSTEM_TEMACS): Move to configure.in.
276 * Makefile.in (LD_SWITCH_SYSTEM_TEMACS): New variable, set by configure.
277 (TEMACS_LDFLAGS): Use $LD_SWITCH_SYSTEM_TEMACS.
278
49628785
GM
279 * s/aix4-2.h (C_SWITCH_SYSTEM):
280 * m/alpha.h (C_SWITCH_MACHINE):
281 Move to configure.in.
282 * Makefile.in (C_SWITCH_MACHINE, C_SWITCH_SYSTEM):
283 New variables, set by configure.
284 (ALL_CFLAGS): Use $C_SWITCH_MACHINE and $C_SWITCH_SYSTEM in place of
285 $c_switch_machine and $c_switch_system.
286
7dff330b
DN
2872010-05-04 Dan Nicolaescu <dann@ics.uci.edu>
288
289 * s/hpux10-20.h (LIB_STANDARD): New definition.
290 * Makefile.in (ORDINARY_LINK): Remove setting LIB_STANDARD based
291 on it, not used anymore.
292
53967e09
CY
2932010-05-03 Chong Yidong <cyd@stupidchicken.com>
294
295 * eval.c (internal_condition_case_n): Rename from
296 internal_condition_case_2.
297 (internal_condition_case_2): New function.
298
299 * xdisp.c (safe_call): Use internal_condition_case_n.
300
301 * fileio.c (Fdelete_file, internal_delete_file): New arg FORCE.
302 (internal_delete_file, Frename_file): Callers changed.
303
304 * buffer.c (Fkill_buffer):
305 * callproc.c (delete_temp_file): Callers changed (Bug#6070).
306
307 * lisp.h: Update prototypes.
308
3dee6fdb
GM
3092010-05-03 Glenn Morris <rgm@gnu.org>
310
311 * Makefile.in (LIBX_EXTRA, LIBX_BASE): New variables.
312 (LIBXT_OTHER, LIBX_OTHER): New, set by configure.
313 (LIBXT): Set with configure, not cpp.
314 (LIBX): Remove.
315 (LIBES): Replace $LIBX with $LIBX_BASE and $LIBX_OTHER.
316
a101e0fb
DN
3172010-05-02 Dan Nicolaescu <dann@ics.uci.edu>
318
319 * m/amdx86-64.h (START_FILES, LIB_STANDARD): Remove.
320 The FreeBSD is not needed, the default works, Solaris version is
321 not needed, and the remaining case is not supported by configure.
322
f63d0028
JD
3232010-05-02 Jan Djärv <jan.h.d@swipnet.se>
324
325 * xsmfns.c (CHDIR_OPT): New define.
326 (smc_save_yourself_CB): Add CHDIR_OPT to options to use when
327 restarting emacs.
328
329 * xterm.c (x_connection_closed): Call Fkill_emacs instead of
330 shut_down_emacs.
331
332 * emacs.c (USAGE1): Mention --chdir.
333 (main): Handle --chdir.
334 (standard_args): Add --chdir.
335 (fatal_error_signal): Call Fkill_emacs for SIGTERM and SIGHUP (Bug
336 #5552).
337
e4814a9f
DN
3382010-05-01 Dan Nicolaescu <dann@ics.uci.edu>
339
cd03c74a
DN
340 Remove LD_SWITCH_MACHINE.
341 * Makefile.in (LD_SWITCH_MACHINE): Remove definition, unused.
342 (TEMACS_LDFLAGS): Do not use LD_SWITCH_MACHINE.
343
c3a398a1
DN
344 Clean up IRIX code.
345 * m/iris4d.h (TERMINFO, FIRST_PTY_LETTER): Move definitions ...
346 * s/irix6-5.h (TERMINFO, FIRST_PTY_LETTER): ... here.
347
87e7285c
DN
348 Clean up AIX code.
349 * m/ibmrs6000.inp: Remove file, unused.
350 * m/ibmrs6000.h (IBMR2AIX): Remove, unused.
351 (LD_SWITCH_MACHINE): Rename to LD_SWITCH_SYSTEM_TEMACS, and move
352 definition ...
353 * s/aix4-2.h (LD_SWITCH_SYSTEM_TEMACS): ... here.
354
80f00217
JB
355 * sysdep.c (child_setup_tty, init_sys_modes): Remove !IBMR2AIX code,
356 unused.
e4814a9f 357
59ca28de
EZ
3582010-05-01 Eli Zaretskii <eliz@gnu.org>
359
197daef4
EZ
360 Emulate POSIX_SIGNALS on MS-Windows.
361
362 * s/ms-w32.h (POSIX_SIGNALS, struct sigaction, SIG_BLOCK)
363 (SIG_SETMASK, SIG_UNBLOCK): Define.
d6dae14b
EZ
364
365 * sysdep.c (sys_signal) [WINDOWSNT]: #ifdef away.
366 (wait_for_termination) [WINDOWSNT]: Move MS-Windows specific code
367 from non-POSIX_SIGNALS section to POSIX_SIGNALS section.
368
80f00217
JB
369 * w32.c (sigemptyset, sigaddset, sigfillset, sigprocmask):
370 New stubs.
197daef4 371
af7c7572
EZ
372 Miscellaneous fixes of bidi display.
373
59ca28de
EZ
374 * xdisp.c (find_row_end): New function, refactored from display_line.
375 (display_line): Use it.
017ea819
EZ
376 (extend_face_to_end_of_line): In almost-filled rows, extend only
377 if the row is R2L and not continued.
166e930d 378 (display_line): Fix prepending of truncation glyphs to R2L rows.
af7c7572 379 Preserve overlay and string info in row->end.
166e930d
EZ
380 (insert_left_trunc_glyphs): Support addition of left truncation
381 glyphs to R2L rows.
b47e0dcf 382 (set_cursor_from_row): Don't place cursor on the vertical border
af7c7572
EZ
383 glyph between adjacent windows. Fix a crash when a display string
384 is continued to the next line. Don't return zero if cursor was
385 found by `cursor' property of a display string.
b47e0dcf
EZ
386 (try_cursor_movement): Don't assume that row->end == (row+1)->start,
387 test for that explicitly.
59ca28de 388
7acac9f4
GM
3892010-05-01 Glenn Morris <rgm@gnu.org>
390
391 * Makefile.in (gmallocobj, rallocobj, vmlimitobj): Initialize to null,
392 for clarity.
393 (OTHER_OBJ): Remove.
394 (PRE_ALLOC_OBJ, POST_ALLOC_OBJ): New, set by configure.
395 (otherobj): Use PRE_ALLOC_OBJ, POST_ALLOC_OBJ rather than OTHER_OBJ.
396
45841e65
KK
3972010-05-01 Karel Klíč <kklic@redhat.com>
398
399 * fileio.c (Ffile_selinux_context): Context functions may return null.
400
afc61943
DN
4012010-04-30 Dan Nicolaescu <dann@ics.uci.edu>
402
80f00217 403 * s/gnu.h (POSIX_SIGNALS, START_FILES): New definitions.
afc61943 404
5a1bb006
GM
4052010-04-30 Glenn Morris <rgm@gnu.org>
406
407 * Makefile.in (vmlimitobj) [!SYSTEM_MALLOC]: New variable. (Bug#6065)
408 (OTHER_OBJ): Define as a separate variable, for clarity.
409
210af043
J
4102010-04-30 Jan Djärv <jan.h.d@swipnet.se>
411
412 * xsettings.c: include limits.h and update file comment.
413
0a7df391
GM
4142010-04-30 Glenn Morris <rgm@gnu.org>
415
d5096f16
GM
416 * Makefile.in (OLDXMENU, LIBXMENU) [HAVE_MENUS]:
417 Set with configure, not cpp.
418 (LIBW): Remove, replace with $TOOLKIT_LIBW.
419
7eb1ac33
GM
420 * Makefile.in (mallocobj): Remove.
421 (otherobj): Simplify using @OTHER_OBJ@.
422
517d086b
GM
423 * Makefile.in (dispnew.o, frame.o, fringe.o, font.o, fontset.o)
424 (keyboard.o, window.o, xdisp.o, xfaces.o, menu.o):
425 Don't bother making nsgui.h dependency platform-specific.
426
0a7df391
GM
427 * Makefile.in (nsfns.o): Remove duplicate nsgui.h dependency.
428
d6d23852
SM
4292010-04-29 Stefan Monnier <monnier@iro.umontreal.ca>
430
d2630aef
SM
431 * process.c (read_process_output, exec_sentinel): Don't burp if the
432 sentinel/filter kills the current buffer (bug#6060).
433
f9dddf52 434 Fix wrong-docstring problem introduced with hash-consing. (Bug#6008)
d6d23852
SM
435 * eval.c (Fautoload): Set doc to a unique number rather than to 0.
436 Remove unused var `args'.
437 * lisp.h (XSETCARFASTINT, XSETCDRFASTINT): Remove.
438 (LOADHIST_ATTACH): Wrap with do...while to avoid surprises for callers.
439 * doc.c (store_function_docstring): Use XSETCAR.
440
f1e3642a
GM
4412010-04-28 Glenn Morris <rgm@gnu.org>
442
faf535f8
GM
443 * Makefile.in (BASE_WINDOW_SUPPORT, X_WINDOW_SUPPORT): New variables.
444 (WINDOW_SUPPORT) [HAVE_WINDOW_SYSTEM]: Use them.
445
c40f9449
GM
446 * Makefile.in (CYGWIN_OBJ): Set with configure, not cpp.
447
658f86ca
GM
448 * Makefile.in (GPM_MOUSE_SUPPORT): New, set by configure.
449 (MOUSE_SUPPORT) [!HAVE_MOUSE]: Use $GPM_MOUSE_SUPPORT.
450
bc0b5f61
GM
451 * Makefile.in (FONT_OBJ): New, set by configure.
452 (FONT_DRIVERS): Use $FONT_OBJ.
453
294c50a0
GM
454 * Makefile.in (LIBXMU): Set with configure, not cpp.
455 * s/aix4-2.h (LIBXMU):
456 * s/hpux10-20.h (LIBXMU):
457 Remove definition, now set in configure.
458
e6ec4e99
GM
459 * Makefile.in (NS_OBJ, NS_SUPPORT): Set with configure, not cpp.
460
f1e3642a
GM
461 * m/amdx86-64.h [i386]: Move this test to configure.in.
462
c6ea2936
GM
4632010-04-27 Glenn Morris <rgm@gnu.org>
464
8fdac2c3
GM
465 * Makefile.in (LIBXTR6): Set with configure, not cpp.
466 * s/unixware.h (NEED_LIBW): Remove definition.
467
986fb647
GM
468 * Makefile.in (LUCID_LIBW, MOTIF_LIBW): Remove, replacing by...
469 (TOOLKIT_LIBW): New, set by configure.
470 (@X_TOOLKIT_TYPE@): No longer define it.
471
c6ea2936
GM
472 * Makefile.in (LIBXP): Remove, since included in MOTIF_LIBW.
473 (MOTIF_LIBW): Set with configure, not cpp.
474 * s/aix4-2.h (LIB_MOTIF):
475 * s/gnu-linux.h (LIB_MOTIF):
476 * s/unixware.h (LIB_MOTIF): Move to configure.in.
477
aaa36002
DN
4782010-04-27 Dan Nicolaescu <dann@ics.uci.edu>
479
480 Reduce CPP usage.
481 * Makefile.in (LIB_X11_LIB): Remove, inline in the only user.
482 (obj): Use autoconf for unexec instead of cpp.
ed6281b0
DN
483 (C_SWITCH_SYSTEM, C_SWITCH_MACHINE, C_SWITCH_X_SITE): Remove
484 definitions and undefs. Inline definitions in the only user.
485 (ALL_CFLAGS): Substitute C_SWITCH_X_SYSTEM using autoconf.
aaa36002 486
b678dd8b
GM
4872010-04-27 Glenn Morris <rgm@gnu.org>
488
76cda504
GM
489 * m/amdx86-64.h (START_FILES, LIB_STANDARD): Change the logic around,
490 since the defaults (set by the system file) are fine in most cases.
491 [GNU_LINUX, __OpenBSD__, __NetBSD__, __APPLE__]: Remove sections.
492 * m/ibms390x.h (START_FILES, LIB_STANDARD):
493 * m/macppc.h (START_FILES, LIB_STANDARD) [GNU_LINUX]:
494 * m/sparc.h (START_FILES, LIB_STANDARD) [__linux__]:
495 Remove definitions, since they are set correctly in s/gnu-linux.h.
496 * s/freebsd.h (START_FILES, LIB_STANDARD):
497 * s/gnu-linux.h (START_FILES, LIB_STANDARD):
498 * s/hpux10-20.h (START_FILES):
499 * s/netbsd.h (START_FILES, LIB_STANDARD, START_FILES_1, END_FILES_1):
500 Use $CRT_DIR in place of fixed /usr/lib, /lib directories.
501
b678dd8b
GM
502 * Makefile.in (LIBXP, LUCID_LIBW, WIDGET_OBJ): Set via configure.
503 (MOTIF_LIBW): Use $LIBXP.
504 (otherobj): Use $WIDGET_OBJ.
505
9452ded1
DN
5062010-04-26 Dan Nicolaescu <dann@ics.uci.edu>
507
7e10844c
DN
508 * Makefile.in (LIBS_MACHINE): Remove, unused.
509
9452ded1
DN
510 Use autoconf instead of cpp for LIB_MATH.
511 * s/darwin.h (LIB_MATH): Do not define here, move to configure.
512 * s/cygwin.h (LIB_MATH): Likewise.
513 * Makefile.in (LIB_MATH): Do not define with cpp.
514 (LIBES): Use autoconf for LIB_MATH.
515
fcebfc6a
KH
5162010-04-26 Kenichi Handa <handa@m17n.org>
517
518 * composite.c (Ffind_composition_internal): Fix the return value
519 for an automatic composition.
520
39e2ad1b
DN
5212010-04-25 Dan Nicolaescu <dann@ics.uci.edu>
522
523 Remove all NO_ARG_ARRAY uses.
524 * fns.c (concat2, concat3, nconc2):
525 * eval.c (apply1, call1, call2, call3, call4, call5, call6)
526 (call7): Remove NO_ARG_ARRAY usage, assume it's always true.
527 * m/xtensa.h (NO_ARG_ARRAY):
528 * m/template.h (NO_ARG_ARRAY):
529 * m/sparc.h (NO_ARG_ARRAY):
530 * m/sh3.h (NO_ARG_ARRAY):
531 * m/mips.h (NO_ARG_ARRAY):
532 * m/macppc.h (NO_ARG_ARRAY):
533 * m/iris4d.h (NO_ARG_ARRAY):
534 * m/intel386.h (NO_ARG_ARRAY):
535 * m/ibms390x.h (NO_ARG_ARRAY):
536 * m/ibms390.h (NO_ARG_ARRAY):
537 * m/ibmrs6000.h (NO_ARG_ARRAY):
538 * m/ia64.h (NO_ARG_ARRAY):
539 * m/hp800.h (NO_ARG_ARRAY):
540 * m/arm.h (NO_ARG_ARRAY):
541 * m/amdx86-64.h (NO_ARG_ARRAY):
542 * m/alpha.h (NO_ARG_ARRAY): Remove definition.
543
adf4f59c
EZ
5442010-04-25 Eli Zaretskii <eliz@gnu.org>
545
6bdf5d65
EZ
546 * xdisp.c (display_line): Don't assume 2nd call to
547 get_next_display_element cannot return zero. (Bug#6030)
f538fcec
EZ
548 (iterate_out_of_display_property): New function, body from pop_it.
549 (pop_it): Use it.
adf4f59c 550
dfbbda83
GM
5512010-04-24 Glenn Morris <rgm@gnu.org>
552
553 * m/amdx86-64.h (START_FILES, LIB_STANDARD) [__OpenBSD__]:
554 For clarity, revert to using fixed /usr/lib rather than $CRT_DIR.
555 (START_FILES, LIB_STANDARD) [__FreeBSD__]: Merge into the generic case,
556 since CRT_DIR defaults to /usr/lib. Suggested by Dan Nicolaescu.
557
2d4018aa
EZ
5582010-04-24 Eli Zaretskii <eliz@gnu.org>
559
a49884a6
EZ
560 * xdisp.c (display_line): Use `reseat' instead of `reseat_1', and
561 use `get_next_display_element' and `set_iterator_to_next' to
562 advance to the next character, when looking for the character that
563 begins the next row.
564
76db6fcc 565 * .gdbinit: Add a "set Fmake_symbol" line to force GDB to load the
2d4018aa
EZ
566 definition of "struct Lisp_Symbol".
567
70eab5c1
GM
5682010-04-24 Glenn Morris <rgm@gnu.org>
569
570 * Makefile.in (CRT_DIR): New variable, set by configure.
571 * m/amdx86-64.h, m/ibms390x.h (START_FILES, LIB_STANDARD):
572 Use $CRT_DIR rather than HAVE_LIB64_DIR. (Bug#5655)
573
1ad4cc3d
DN
5742010-04-23 Dan Nicolaescu <dann@ics.uci.edu>
575
e769f484
DN
576 * Makefile.in: Remove C_SWITCH_X_MACHINE, unused.
577
4196ff33
DN
578 * s/cygwin.h (LIBS_DEBUG): Remove, unused.
579
879b0ee4
DN
580 Remove redundant flags.
581 * s/freebsd.h (C_SWITCH_SYSTEM):
582 * s/hpux10-20.h (C_SWITCH_X_SYSTEM, LD_SWITCH_X_DEFAULT):
583 * s/netbsd.h (C_SWITCH_SYSTEM):
584 * s/openbsd.h (LD_SWITCH_X_DEFAULT): Remove, configure takes care
585 of these.
586
03cbbcb8
DN
587 Simplify m/intel386.h.
588 * m/intel386.h (CRT0_DUMMIES): Remove, inline value in the only
589 user: ecrt0.c.
590 (SOLARIS2): Remove LOAD_AVE_TYPE, LOAD_AVE_CVT, LIBS_MACHINE, unused.
591 (USG5_4): Move LOAD_AVE_TYPE, LOAD_AVE_CVT, FSCALE definitions to
592 the only user: s/unixware.h.
593 * ecrt0.c: Remove #ifndef static. Inline CRT0_DUMMIES definition
594 from m/intel386.h.
595 * s/unixware.h (LOAD_AVE_TYPE, LOAD_AVE_CVT, FSCALE): Definitions
596 moved here from m/intel386.h.
597
1ad4cc3d
DN
598 * m/mips.h: Remove #if 0 code.
599
8785b888
EZ
6002010-04-23 Eli Zaretskii <eliz@gnu.org>
601
728588cc
EZ
602 Fix display of composed characters from L2R scripts in bidi buffers.
603 * xdisp.c (set_iterator_to_next, next_element_from_composition):
604 After advancing IT past the composition, resync the bidi iterator
605 with IT's position. (Bug#5977)
606
a63f80b4
DN
6072010-04-23 Dan Nicolaescu <dann@ics.uci.edu>
608
609 * Makefile.in (LD_SWITCH_MACHINE_TEMACS): Remove, unused.
610 (TEMACS_LDFLAGS): Don't use LD_SWITCH_SYSTEM_TEMACS.
611
ff5dec5c
SM
6122010-04-23 Stefan Monnier <monnier@iro.umontreal.ca>
613
614 * gtkutil.c: Include xsettings.h for Ftool_bar_get_system_style.
615
8785b888
EZ
6162010-04-23 Eli Zaretskii <eliz@gnu.org>
617
58ccf243 618 Support `display' text properties and overlay strings in bidi buffers.
8785b888
EZ
619 * xdisp.c (pop_it): When the stack is popped after displaying
620 from a string, bidi-iterate to exit from the text portion covered
621 by the `display' property or overlay. (Bug#5988, bug#5920)
622
feeb1604
DN
6232010-04-23 Dan Nicolaescu <dann@ics.uci.edu>
624
8e324eb6
DN
625 * m/macppc.h (LD_SWITCH_SYSTEM_TEMACS): Remove #undef.
626 (LD_SWITCH_MACHINE_TEMACS): Remove, configure sets nocombreloc.
627
809fcaba
DN
628 * s/netbsd.h (LD_SWITCH_SYSTEM_TEMACS): Remove, configure sets nocombreloc.
629 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Remove.
630
ed710380
DN
631 Simplify STARTFILES definition.
632 * s/hpux10-20.h (START_FILES): Explicitly define here instead of
633 relying on Makefile.in to define it.
634 * s/cygwin.h (START_FILES): Likewise.
635 * Makefile.in (STARTFILES): Remove conditional code, not needed anymore.
636
feeb1604
DN
637 Clean up Solaris code.
638 * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS, C_SWITCH_X_SYSTEM)
639 (LIB_MOTIF): Remove, configure takes care of this.
640 (NOT_USING_MOTIF): Remove, unused.
641 * xrdb.c: Remove #if 0-ed #include.
642 (SYSV): Remove conditional for old SysV.
643 * sysdep.c (closedir): Remove conditional code for Solaris,
644 Solaris has closedir.
645
a0d0b563
JD
6462010-04-22 Jan Djärv <jan.h.d@swipnet.se>
647
648 * xsettings.c (read_and_apply_settings): Check if current_font is
649 NULL before strcmp (Bug#6001).
650
56bae7c7
DN
6512010-04-21 Dan Nicolaescu <dann@ics.uci.edu>
652
653 Clean up HP-UX files.
654 * m/hp800.h (NO_REMAP, VIRT_ADDR_VARIES, DATA_SEG_BITS)
655 (DATA_START, TEXT_START, LOAD_AVE_TYPE, LOAD_AVE_CVT)
656 (LDAV_SYMBOL, index, rindex): Move definitions only used in HP-UX ...
657 * s/hpux10-20.h: ... to the only user, here.
658
372b7a95
EZ
6592010-04-21 Eli Zaretskii <eliz@gnu.org>
660
661 * bidi.c (bidi_find_paragraph_start, bidi_at_paragraph_end): Don't
662 use buffer-local values of paragraph-start and paragraph-separate.
663 <paragraph_start_re, paragraph_separate_re>: Rename from
664 fallback_paragraph_start_re and fallback_paragraph_separate_re.
665 (Bug#5992)
666
f904c0f9
JD
6672010-04-21 Jan Djärv <jan.h.d@swipnet.se>
668
669 * xsettings.c: Qmonospace_font_name, Qtool_bar_style and
670 current_tool_bar_style are new.
671 (store_config_changed_event): Rename from store_font_changed_event.
672 (XSETTINGS_TOOL_BAR_STYLE): New define.
673 (SEEN_FONT, SEEN_TB_STYLE): New enum values.
674 (struct xsettings): Add font and tb_style, set xft stuff inside #ifdef
675 HAVE_XFT.
676 (something_changedCB): store_font_changed_event is now
677 store_config_changed_event
678 (parse_settings): Rename from parse_xft_settings. Read
679 non-xft xsettings outside #ifdef HAVE_XFT.
680 (read_settings): Renamed from read_xft_settings.
681 (apply_xft_settings): Take current settings as parameter. Do not
682 call read_(xft)_settings.
683 (read_and_apply_settings): New function.
684 (xft_settings_event): Do non-xft stuff out of HAVE_XFT. Call
685 read_and_apply_settings if there are settings to be read.
686 (init_xsettings): Renamed from init_xfd_settings.
687 Call read_and_apply_settings unconditionally.
688 (xsettings_initialize): Call init_xsettings.
689 (Ftool_bar_get_system_style): New function.
690 (syms_of_xsettings): Define Qmonospace_font_name and
691 Qtool_bar_style. Initialize current_tool_bar_style to nil.
f9dddf52 692 defsubr Stool_bar_get_system_style. Fprovide on
f904c0f9 693 dynamic-setting.
31a01b90 694 Move misplaced HAVE_GCONF
f904c0f9
JD
695
696 * xsettings.h (Ftool_bar_get_system_style): Declare.
697
698 * xdisp.c: Vtool_bar_style, tool_bar_max_label_size,
699 Qtext, Qboth, Qboth_horiz are new.
700 (syms_of_xdisp): Intern Qtext, Qboth, Qboth_horiz, DEFVAR
701 Vtool_bar_style, tool_bar_max_label_size.
702
703 * lisp.h: Extern declare Qtext, Qboth, Qboth_horiz.
704
705 * keyboard.c: QClabel is new.
706 (parse_tool_bar_item): Take out QClabel from tool bar items.
707 Try to construct a label if ther is no QClabel.
708 (syms_of_keyboard): Intern :label as QClabel.
709
710 * dispextern.h (tool_bar_item_idx): TOOL_BAR_ITEM_LABEL is new.
711 (Vtool_bar_style, tool_bar_max_label_size, DEFAULT_TOOL_BAR_LABEL_SIZE):
712 New.
713
714 * Makefile.in (SOME_MACHINE_LISP): font-setting.el renamed to
715 dynamic-setting.el.
716
717 * gtkutil.c (xg_tool_bar_menu_proxy): Handle label in tool bar item.
718 (xg_make_tool_item, xg_show_toolbar_item): New function.
719 (update_frame_tool_bar): Take label from TOOL_BAR_ITEM_LABEL.
720 Call xg_make_tool_item to make a tool bar item.
721 Call xg_show_toolbar_item. Use wtoolbar instead of x->toolbar_widget.
722
723 * xterm.c (x_draw_image_relief): Take Vtool_bar_button_margin
724 into account for toolbars.
725
c632dfda
JD
7262010-04-21 Jan Djärv <jan.h.d@swipnet.se>
727
728 * data.c (make_blv): Declarations before code (Bug#5993).
729
10efe302
GM
7302010-04-21 Glenn Morris <rgm@gnu.org>
731
732 * Makefile.in (DBUS_OBJ, GTK_OBJ, XMENU_OBJ, XOBJ):
733 Define using autoconf, not cpp.
734 (LIBXSM): New variable, set by autoconf.
735 (LIBXT): Use $LIBXSM.
736
4285ac5a
DN
7372010-04-21 Dan Nicolaescu <local_user@dannlt>
738
3ec759e7
DN
739 Remove NOMULTIPLEJOBS, unused.
740 * s/template.h (NOMULTIPLEJOBS):
741 * s/msdos.h (NOMULTIPLEJOBS): Remove, unused.
742
4285ac5a
DN
743 Simplify LD_SWITCH_SYSTEM_TEMACS usage.
744 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS):
745 * s/gnu-linux.h (LD_SWITCH_SYSTEM_TEMACS): Remove, configure
746 detects -znocombreloc and passes it to the linker
747 * s/hpux10-20.h (LD_SWITCH_SYSTEM_TEMACS): Remove, empty.
748
2807228d
GM
7492010-04-21 Glenn Morris <rgm@gnu.org>
750
751 * Makefile.in (LIBSELINUX_LIBS): Move out of #ifdef.
752
574c05e2
KK
7532010-04-21 Karel Klíč <kklic@redhat.com>
754
755 * Makefile.in (LIBSELINUX_LIBS): New.
756 (LIBES): Add $LIBSELINUX_LIBS.
757 * eval.c, lisp.h (call7): New function.
758 * fileio.c [HAVE_LIBSELINUX]: Include selinux headers.
759 (Ffile_selinux_context, Fset_file_selinux_context):
760 New functions.
761 (Fcopy_file): New parameter preserve-selinux-context.
762 (Frename_file): Preserve selinux context when renaming by copy-file.
763
91eac4bb 7642010-04-21 Juanma Barranquero <lekktu@gmail.com>
4e2af782 765 Eli Zaretskii <eliz@gnu.org>
91eac4bb 766
50426a04
JB
767 Don't depend on cm.c or termcap.c on Windows, use stubs.
768 * makefile.w32-in (OBJ1): Remove cm.$(O) and termcap.$(O).
769 ($(BLD)/cm.$(O), $(BLD)/termcap.$(O)): Remove.
770 * w32console.c (current_tty, cost): New vars; lifted from cm.c.
771 (evalcost, cmputc, cmcheckmagic, cmcostinit, cmgoto, Wcm_clear)
772 (sys_tputs, sys_tgetstr): New stubs.
773 * s/ms-w32.h (chcheckmagic, cmcostinit, cmgoto, cmputc, Wcm_clear)
774 (tputs, tgetstr): New; define to sys_*.
91eac4bb 775
938efb77
JB
7762010-04-20 Juanma Barranquero <lekktu@gmail.com>
777
778 * buffer.c (syms_of_buffer) <bidi-display-reordering>: Doc fix.
779
b4bf28b7
SM
7802010-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
781
8b1e1112
SM
782 * data.c (Fmake_variable_buffer_local, Fmake_local_variable):
783 Just signal a warning rather than an error when inside a let.
784 (Fmake_variable_frame_local): Add the same test.
785
933ac235
SM
786 * font.c (syms_of_font): Make the style table vars read-only.
787
b4bf28b7
SM
788 * buffer.h (struct buffer): Remove unused var `direction_reversed'.
789 * buffer.c (init_buffer_once, syms_of_buffer): Remove its initialization.
790
791 * bidi.c (bidi_initialize): Simplify fallback_paragraph_*_re init.
792
93d68d0c
EZ
7932010-04-20 Eli Zaretskii <eliz@gnu.org>
794
795 Fix R2L paragraph display on TTY.
796
797 * xdisp.c (unproduce_glyphs): New function.
798 (display_line): Use it when produced glyphs are discarded from R2L
799 glyph rows.
800 (append_composite_glyph): In R2L rows, prepend the glyph rather
801 than appending it.
802
803 * term.c (append_composite_glyph): In R2L rows, prepend the glyph
804 rather than append it. Set up the resolved_level and bidi_type
805 attributes of the appended glyph.
283ccc18
EZ
806 (produce_special_glyphs): Mirror the backslash continuation
807 character in R2L lines.
93d68d0c 808
283ccc18 809 Implement display of R2L paragraphs in GUI sessions.
26cdf528 810
283ccc18
EZ
811 * xdisp.c [HAVE_WINDOW_SYSTEM]: Add prototype for
812 append_stretch_glyph.
813 (set_cursor_from_row) <cursor_x>: Remove unused variable. Fix
814 off-by-one error in computing x at end of text in the row.
815 (append_stretch_glyph): In reversed row, prepend the glyph rather
816 than append it. Set resolved_level and bidi_type of the glyph.
817 (extend_face_to_end_of_line): If the row is reversed, prepend a
818 stretch glyph whose width is such that the rightmost glyph will be
819 drawn at the right margin of the window. Fix off-by-one error on
820 TTY frames in testing whether a line needs face extension. Fix
821 face extension at ZV. If this is the last glyph row, use
822 DEFAULT_FACE_ID, to avoid painting the rest of the window with the
823 region face.
824 (set_cursor_from_row, display_line): Use
26cdf528
EZ
825 MATRIX_ROW_CONTINUATION_LINE_P instead of testing value of
826 row->continuation_lines_width.
283ccc18
EZ
827 (next_element_from_buffer): Don't call bidi_paragraph_init if we
828 are at ZV. Fixes a crash when reseated to ZV by
829 try_window_reusing_current_matrix.
45903529
EZ
830 (display_and_set_cursor, erase_phys_cursor): Handle negative HPOS,
831 which happens with R2L glyph rows. Fixes a crash when inserting a
832 character at end of an R2L line.
283ccc18
EZ
833 (set_cursor_from_row): Don't be fooled by truncated rows: don't
834 treat them as having zero-width characters. Improve comments.
835 Don't reverse pos_before and pos_after for reversed glyph rows.
836 Set cursor.x to negative value when the cursor might be on the
837 left fringe.
838 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): For R2L lines, consider the
839 left fringe, not the right one.
f951a506
EZ
840 (notice_overwritten_cursor, draw_phys_cursor_glyph)
841 (erase_phys_cursor): For reversed cursor_row, support cursor on
842 the left fringe.
843
283ccc18
EZ
844 * fringe.c (update_window_fringes): For R2L rows, swap the bitmaps
845 of continuation indicators on the fringes.
846 (draw_fringe_bitmap): For reversed glyph rows, allow cursor on the
847 left fringe.
848
f951a506
EZ
849 * w32term.c (w32_draw_window_cursor): For reversed glyph rows,
850 draw cursor on the left fringe.
851
852 * xterm.c (x_draw_window_cursor): For reversed glyph rows, draw
853 cursor on the left fringe.
854
f951a506
EZ
855 * dispnew.c (update_text_area): Handle reversed desired rows when
856 the cursor is on the left fringe.
857 (set_window_cursor_after_update): Limit cursor's hpos by -1 from
858 below, not by 0, for when the cursor is on the left fringe.
859
3bb49aaf
JD
8602010-04-20 Jan Djärv <jan.h.d@swipnet.se>
861
862 * gtkutil.c (xg_event_is_for_scrollbar): Check if grabbed
863 widget is a scrollbar.
864
c0be27fd
KH
8652010-04-20 Kenichi Handa <handa@m17n.org>
866
867 * charset.c (char_charset): Consider Vcharset_non_preferred_head
868 only when the arg CHARSET_LIST is nil.
869
ce5b453a
SM
8702010-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
871
872 Make variable forwarding explicit rather the using special values.
873 Basically, this makes the structure of buffer-local values and object
874 forwarding explicit in the type of Lisp_Symbols rather than use
875 special Lisp_Objects for that. This tends to lead to slightly more
876 verbose code, but is more C-like, simpler, and makes it easier to make
877 sure we handled all cases, among other things by letting the compiler
878 help us check it.
879 * lisp.h (enum Lisp_Misc_Type, union Lisp_Misc):
880 Removing forwarding objects.
881 (enum Lisp_Fwd_Type, enum symbol_redirect, union Lisp_Fwd): New types.
882 (struct Lisp_Symbol): Make the various forms of variable-forwarding
883 explicit rather than hiding them inside Lisp_Object "values".
884 (XFWDTYPE): New macro.
885 (XINTFWD, XBOOLFWD, XOBJFWD, XKBOARD_OBJFWD): Redefine.
886 (XBUFFER_LOCAL_VALUE): Remove.
887 (SYMBOL_VAL, SYMBOL_ALIAS, SYMBOL_BLV, SYMBOL_FWD, SET_SYMBOL_VAL)
888 (SET_SYMBOL_ALIAS, SET_SYMBOL_BLV, SET_SYMBOL_FWD): New macros.
889 (SYMBOL_VALUE, SET_SYMBOL_VALUE): Remove.
890 (struct Lisp_Intfwd, struct Lisp_Boolfwd, struct Lisp_Objfwd)
891 (struct Lisp_Buffer_Objfwd, struct Lisp_Kboard_Objfwd):
892 Remove the Lisp_Misc_* header.
893 (struct Lisp_Buffer_Local_Value): Redefine.
894 (BLV_FOUND, SET_BLV_FOUND, BLV_VALUE, SET_BLV_VALUE): New macros.
895 (struct Lisp_Misc_Any): Add filler to get the right size.
896 (struct Lisp_Free): Use struct Lisp_Misc_Any rather than struct
897 Lisp_Intfwd.
898 (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL, DEFVAR_INT)
899 (DEFVAR_KBOARD): Allocate a forwarding object.
900 * data.c (do_blv_forwarding, store_blv_forwarding): New macros.
901 (let_shadows_global_binding_p): New function.
902 (union Lisp_Val_Fwd): New type.
903 (make_blv): New function.
904 (swap_in_symval_forwarding, indirect_variable, do_symval_forwarding)
905 (store_symval_forwarding, swap_in_global_binding, Fboundp)
906 (swap_in_symval_forwarding, find_symbol_value, Fset)
907 (let_shadows_buffer_binding_p, set_internal, default_value)
908 (Fset_default, Fmake_variable_buffer_local, Fmake_local_variable)
909 (Fkill_local_variable, Fmake_variable_frame_local)
910 (Flocal_variable_p, Flocal_variable_if_set_p)
911 (Fvariable_binding_locus):
912 * xdisp.c (select_frame_for_redisplay):
913 * lread.c (Fintern, Funintern, init_obarray, defvar_int)
914 (defvar_bool, defvar_lisp_nopro, defvar_lisp, defvar_kboard):
915 * frame.c (store_frame_param):
916 * eval.c (Fdefvaralias, Fuser_variable_p, specbind, unbind_to):
917 * bytecode.c (Fbyte_code) <varref, varset>: Adapt to the new symbol
918 value structure.
919 * buffer.c (PER_BUFFER_SYMBOL): Move from buffer.h.
920 (clone_per_buffer_values): Only adjust markers into the current buffer.
921 (reset_buffer_local_variables): PER_BUFFER_IDX is never -2.
922 (Fbuffer_local_value, set_buffer_internal_1)
923 (swap_out_buffer_local_variables):
924 Adapt to the new symbol value structure.
925 (DEFVAR_PER_BUFFER): Allocate a Lisp_Buffer_Objfwd object.
926 (defvar_per_buffer): Take a new arg for the fwd object.
927 (buffer_lisp_local_variables): Return a proper alist (different fix
928 for bug#4138).
929 * alloc.c (Fmake_symbol): Use SET_SYMBOL_VAL.
930 (Fgarbage_collect): Don't handle buffer_defaults specially.
931 (mark_object): Handle new symbol value structure rather than the old
932 special Lisp_Misc_* objects.
933 (gc_sweep) <symbols>: Free also the buffer-local-value objects.
934 * term.c (set_tty_color_mode):
935 * bidi.c (bidi_initialize): Don't access the ->value field directly.
936 * buffer.h (PER_BUFFER_VAR_OFFSET): Don't bother with
937 a buffer_local_flags.
938 * print.c (print_object): Get rid of impossible forwarding objects.
939
fd3998ff
EZ
9402010-04-19 Eli Zaretskii <eliz@gnu.org>
941
942 * bidi.c (bidi_get_type, bidi_get_category)
943 (bidi_at_paragraph_end, bidi_resolve_weak, bidi_resolve_neutral)
ce5b453a
SM
944 (bidi_type_of_next_char, bidi_level_of_next_char):
945 Declare static. Use `INLINE' rather than `inline'.
fd3998ff 946
e42cd1a7
JB
9472010-04-19 Juanma Barranquero <lekktu@gmail.com>
948
949 * dired.c (Ffile_attributes): Fix typo in docstring.
950
6e104790 9512010-04-19 Adrian Robert <Adrian.B.Robert@gmail.com>
79353a53
AR
952
953 * nsmenu.m (EmacsDialog-runDialogAt:): Declare ret as
954 NSInteger (Bug#5811).
955
6e104790 9562010-04-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
658b9b93
YM
957
958 * s/darwin.h (PTY_ITERATION, PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF)
959 (PTY_OPEN): New defines. Use openpty (Bug#726, Bug#5819).
960
6e104790 9612010-04-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16009a0e
YM
962
963 * frame.h (FRAME_LINE_TO_PIXEL_Y): Add missing parenthesis.
964
6e104790
SM
9652010-04-19 Chong Yidong <cyd@stupidchicken.com>
966
967 * xdisp.c (prepare_menu_bars): Don't call ns_set_doc_edited for
968 terminal frames (Bug#5837).
969
37dcfea0
EZ
9702010-04-19 Eli Zaretskii <eliz@gnu.org>
971
d1da276f
EZ
972 * .gdbinit (xsubchartable): New command.
973
37dcfea0
EZ
9742010-04-19 Eli Zaretskii <eliz@gnu.org>
975
976 * xdisp.c (display_line): Don't write beyond the last glyph row in
9166b0f3 977 the desired matrix. Fixes a crash in "emacs -nw" (bug#5972), see
37dcfea0
EZ
978 http://lists.gnu.org/archive/html/emacs-devel/2010-04/msg00075.html
979 and
980 http://lists.gnu.org/archive/html/emacs-devel/2010-04/msg00213.html
981
e9515805
SM
9822010-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
983
984 * alloc.c (Fpurecopy): Hash-cons if requested.
985 (syms_of_alloc): Update purify-flag docstring.
986
22aa44a8
JD
9872010-04-18 Jan Djärv <jan.h.d@swipnet.se>
988
989 * gtkutil.c (xg_set_geometry): Set size in geometry string also.
990 (x_wm_set_size_hint): Set USER_POS in hint_flags (Bug#5968).
991
ebb5722e
EZ
9922010-04-17 Eli Zaretskii <eliz@gnu.org>
993
994 Fix a crash when an NSM character is inserted at BEGV.
995
996 * bidi.c (bidi_init_it): Fix initialization of bidi_it->prev.
997 (bidi_resolve_weak): Don't use prev.type_after_w1 if it is
998 NEUTRAL_B or UNKNOWN_BT.
999
0f4442ef
EZ
10002010-04-16 Eli Zaretskii <eliz@gnu.org>
1001
1002 * xdisp.c (set_cursor_from_row): Don't consider possibility of
1003 other rows with cursor unless they are different from this row and
1004 this row is part of a continued line. (Bug#5943)
1005
7d4e45f8
DN
10062010-04-16 Dan Nicolaescu <dann@ics.uci.edu>
1007
1008 * s/freebsd.h: Restore osreldate.h include.
1009 Suggested by Naohiro Aota.
1010
5ba5ec85
J
10112010-04-16 Jan Djärv <jan.h.d@swipnet.se>
1012
1013 * xmenu.c (apply_systemfont_to_menu): *childs was incorrectly used.
1014
20af301d
CY
10152010-04-16 Ken Brown <kbrown@cornell.edu> (tiny change)
1016
1017 * s/cygwin.h: Avoid linking against static libgcc.
1018
a4b000fb
JL
10192010-04-15 Juri Linkov <juri@jurta.org>
1020
1021 * window.c: Add Qscroll_command.
1022 Remove Vscroll_preserve_screen_position_commands.
1023 (window_scroll_pixel_based, window_scroll_line_based): Check the
1024 `scroll-command' property on the last command instead of searching
1025 the last command in Vscroll_preserve_screen_position_commands.
1026 (syms_of_window): Initialize and staticpro `Qscroll_command'.
1027 Put Qscroll_command property on Qscroll_up and Qscroll_down.
1028 (scroll-preserve-screen-position): Doc fix.
1029 (Vscroll_preserve_screen_position_commands): Remove variable.
1030
bc319ba4
DN
10312010-04-15 Dan Nicolaescu <dann@ics.uci.edu>
1032
6bb24457
DN
1033 * xdisp.c (message): Do not use NO_ARG_ARRAY.
1034
19d4c244
DN
10352010-04-14 Dan Nicolaescu <dann@ics.uci.edu>
1036
1037 Reduce cpp use in Makefile.in.
1038 * Makefile.in (DBUS_CFLAGS, DBUS_LIBS, GCONF_CFLAGS, GCONF_LIBS)
1039 (LIBSOUND, CFLAGS_SOUND, RSVG_LIBS, RSVG_CFLAGS, INTERVALS_H)
1040 (GETLOADAVG_LIBS, RUN_TEMACS): Move to the autoconf section.
1041 (ORDINARY_LINK): Remove, defined in src/s/gnu.h.
1042 (CRT0_COMPILE): Remove, inline it in the only user.
1043
32129746
JL
10442010-04-14 Juri Linkov <juri@jurta.org>
1045
1046 * window.c (keys_of_window): Rebind `C-v' from `scroll-up' to
1047 `scroll-up-command' and `M-v' from `scroll-down' to
1048 `scroll-down-command'.
1049
9013a7f8
JL
10502010-04-14 Juri Linkov <juri@jurta.org>
1051
1052 * window.c (Vscroll_preserve_screen_position_commands): New variable
1053 with the default value as the list of Qscroll_down and Qscroll_up.
1054 (window_scroll_pixel_based, window_scroll_line_based): Search the
1055 last command in the list Vscroll_preserve_screen_position_commands
1056 instead of comparing with Qscroll_up and Qscroll_down.
1057
4bef8d26
JD
10582010-04-13 Jan Djärv <jan.h.d@swipnet.se>
1059
92848133
JD
1060 * gtkutil.c (xg_set_geometry): Set geometry for PPosition also.
1061 (x_wm_set_size_hint): Dont set position flags, gtk_window_parse_geometry
1062 does that.
1063
4bef8d26
JD
1064 * xfns.c (Fx_create_frame, x_create_tip_frame): Set default border width
1065 to zero.
1066
58b963f7
SM
10672010-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
1068
84164a0d
SM
1069 * term.c (init_tty): Move common text outside of #ifdef TERMINFO.
1070
2b0a91e7
SM
1071 Try to solve the problem of spurious EOF chars in long lines of text
1072 sent to interactive subprocesses.
1073 * sysdep.c (child_setup_tty): Do not enable ICANON any more.
1074 (system_process_attributes): Remove unused var `ttotal'.
1075 * process.c (send_process): Don't bother breaking long line with EOF
1076 chars when talking to ttys any more.
1077 (wait_reading_process_output): Output a warning when called in such
1078 a way that it could block without being interruptible.
1079
58b963f7
SM
1080 Try to detect file modification within the same second.
1081 * buffer.h (struct buffer): New field modtime_size.
1082 * buffer.c (reset_buffer): Initialize it.
1083 * fileio.c (Finsert_file_contents, Fwrite_region): Set it.
1084 (Fverify_visited_file_modtime): Check it.
1085 (Fclear_visited_file_modtime, Fset_visited_file_modtime): Clear it.
1086 (Fset_visited_file_modtime): Set (or clear) it.
1087
01f5787b
SM
10882010-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
1089
1090 * process.c (status_notify): Remove unused var `ro'.
1091
83725342
JD
10922010-04-12 Jan Djärv <jan.h.d@swipnet.se>
1093
1094 * xfns.c (select_visual): Don't call error if XGetVisualInfo returns
1095 more than one visual (Bug#5938).
1096
b9465836
DN
10972010-04-12 Dan Nicolaescu <dann@ics.uci.edu>
1098
50426a04
JB
1099 * Makefile.in (C_SWITCH_SYSTEM,C_SWITCH_MACHINE,C_SWITCH_X_SITE):
1100 Undefine.
b9465836 1101
8d9c8ece
DN
11022010-04-11 Dan Nicolaescu <dann@ics.uci.edu>
1103
b1f52161
DN
1104 Remove C_SWITCH_SYSTEM_TEMACS.
1105 * s/darwin.h (C_SWITCH_SYSTEM_TEMACS): Remove.
1106 (malloc, realloc, free): Use emacs, not temacs for conditional
1107 definition.
1108
1109 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Remove.
1110 (ALL_CFLAGS): Do not use C_SWITCH_SYSTEM_TEMACS.
1111
8d9c8ece
DN
1112 Use autoconf, not cpp for some variables.
1113 * Makefile.in (C_SWITCH_SYSTEM, C_SWITCH_MACHINE)
1114 (C_SWITCH_X_SITE): Define using autoconf, not cpp.
1115 (ALL_CFLAGS): Use them as make variables.
1116 (really-lwlib, really-oldXMenu): Do not pass them.
1117
1ecb2d3f
JD
11182010-04-11 Jan Djärv <jan.h.d@swipnet.se>
1119
1120 * xmenu.c (apply_systemfont_to_dialog): New.
1121 (create_and_show_dialog): Call apply_systemfont_to_dialog if HAVE_XFT.
1122
3a4fa2f2
SM
11232010-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
1124
97e53006
SM
1125 * process.c (exec_sentinel): Preserve current-buffer.
1126
3a4fa2f2
SM
1127 * process.c (read_process_output): Move the save-current-buffer to
1128 apply to both the filter and the non-filter branches.
1129
88df7221
DN
11302010-04-10 Dan Nicolaescu <dann@ics.uci.edu>
1131
1132 * s/msdos.h (UNEXEC): New definition.
1133
5634ff85
YM
11342010-04-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1135
6eff5c3d
YM
1136 * dispextern.h (TRY_WINDOW_CHECK_MARGINS)
1137 (TRY_WINDOW_IGNORE_FONTS_CHANGE): New defines.
1138
1139 * xdisp.c (try_window): Change arg from CHECK_MARGINS to FLAGS.
1140 Don't abort with fonts change if TRY_WINDOW_IGNORE_FONTS_CHANGE is
1141 set in FLAGS. Callers with non-zero CHECK_MARGINS changed to use
1142 TRY_WINDOW_CHECK_MARGINS.
1143
1144 * xfns.c (Fx_show_tip): Undo last change. Call try_window with
5b253e9c
YM
1145 TRY_WINDOW_IGNORE_FONTS_CHANGE (Bug#2423). Subtract last glyph's
1146 width only when it is for padding.
5634ff85 1147
b13aef54
J
11482010-04-09 Jan Djärv <jan.h.d@swipnet.se>
1149
1150 * xfns.c (Fx_show_tip): Call try_window in a loop until
1151 fonts_changed_p is zero (Bug#2423).
1152
21d28484
EZ
11532010-04-08 Eli Zaretskii <eliz@gnu.org>
1154
1155 * xdisp.c (set_cursor_from_row): Don't dereference glyphs beyond
1156 the end of TEXT_AREA. (Bug#5856)
1157
0269ef77
JD
11582010-04-08 Jan Djärv <jan.h.d@swipnet.se>
1159
1160 * xsettings.c (XSETTINGS_FONT_NAME): Move XSETTINGS_FONT_NAME out of
1161 HAVE_GCONF.
1162
5930fe97
EZ
11632010-04-08 Eli Zaretskii <eliz@gnu.org>
1164
1165 * bidi.c (bidi_resolve_weak): Use prev.type_after_w1, instead of
1166 prev.orig_type, for resolving type of NSM. (Bug#5858)
1167
99852628
JD
11682010-04-08 Jan Djärv <jan.h.d@swipnet.se>
1169
1170 * xsettings.c (current_font, SYSTEM_FONT, XSETTINGS_FONT_NAME): New.
1171 (parse_xft_settings): Also check for XSETTINGS_FONT_NAME and save that
1172 in current_font.
1173 (init_gconf): Read value of SYSTEM_FONT and save it in current_font.
50426a04
JB
1174 (Ffont_get_system_normal_font, xsettings_get_system_normal_font):
1175 New functions.
1176 (syms_of_xsettings): Initialize current_font.
1177 defsubr Sfont_get_system_normal_font.
99852628
JD
1178
1179 * xsettings.h (Ffont_get_system_normal_font,
1180 xsettings_get_system_normal_font): Declare.
1181
1182 * xfns.c (extern xlwmenu_default_font): Remove.
1183 (Fx_create_frame): Remove setting of xlwmenu_default_font, moved
1184 to xlwmenu.c.
1185
1186 * menu.c (digest_single_submenu): If USE_LUCID and HAVE_XFT, encode
1187 menu items in UTF-8.
1188
1189 * xmenu.c: include xsettings.h and xlwmenu.h if USE_LUCID.
1190 (apply_systemfont_to_menu): New function.
1191 (set_frame_menubar, create_and_show_popup_menu): Call
1192 apply_systemfont_to_menu.
1193
7fc874c4
J
11942010-04-07 Jan Djärv <jan.h.d@swipnet.se>
1195
1196 * frame.h (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Don't use
1197 FRAME_LINE_TO_PIXEL_Y.
1198
1199 * xterm.c (x_set_window_size_1): Don't add border_width/height to
1200 pixelwidth/height.
1201
863bf481
DN
12022010-04-07 Dan Nicolaescu <dann@ics.uci.edu>
1203
5e5a3b92
DN
1204 Simplify code for HP machines.
1205 * m/hp800.h (LOAD_AVE_TYPE, LOAD_AVE_CVT, NO_REMAP): Do not define
1206 for GNU_LINUX, not needed.
1207 (UNEXEC, NEED_BSDTTY): Move definitions...
1208 * s/hpux10-20.h (UNEXEC, NEED_BSDTTY): ... here.
1209
863bf481
DN
1210 * m/iris4d.h (UNEXEC): Move definition ...
1211 * s/irix6-5.h (UNEXEC): ... here.
1212
3e6bec3b
JD
12132010-04-04 Jan Djärv <jan.h.d@swipnet.se>
1214
1215 * xfns.c (set_machine_and_pid_properties): New function.
1216 (Fx_create_frame): Call set_machine_and_pid_properties.
1217
2912322b
SM
12182010-04-03 Eli Zaretskii <eliz@gnu.org>
1219
1502b819
EZ
1220 * bidi.c (bidi_resolve_explicit, bidi_level_of_next_char): Check
1221 bidi_it->bytepos against ZV_BYTE instead of bidi_it->ch against
1222 BIDI_EOB. Fixes infloop with vertical cursor motion at ZV.
1223
2912322b
SM
1224 * w32fns.c (x_create_tip_frame): Copy `parms' before we modify it
1225 in this function. (Bug#5703)
1226
12272010-04-03 Chong Yidong <cyd@stupidchicken.com>
1228
1229 * nsterm.h: Fix last change.
1230
c435b432
DN
12312010-04-03 Dan Nicolaescu <dann@ics.uci.edu>
1232
a568f507
DN
1233 * m/intel386.h (NO_REMAP): Move definition ...
1234 * s/msdos.h (NO_REMAP): ... here.
1235
4cd9f6c2
DN
1236 * m/vax.h (CRT0_DUMMIES): Remove, unused.
1237
c435b432
DN
1238 * ecrt0.c: Remove MSDOS, m68k and __sparc__ conditionals, file not
1239 used on those platforms.
1240
42a2c622
DN
12412010-04-02 Dan Nicolaescu <dann@ics.uci.edu>
1242
1243 Remove extern errno declarations.
1244 * xterm.c:
1245 * xrdb.c:
1246 * w32term.c:
1247 * unexec.c:
1248 * unexaix.c:
1249 * sysdep.c:
1250 * process.c:
1251 * lread.c:
1252 * keyboard.c:
1253 * floatfns.c:
1254 * filelock.c:
1255 * fileio.c:
1256 * emacs.c (main):
1257 * ecrt0.c:
1258 * dispnew.c:
1259 * callproc.c:
1260 * buffer.c: Remove errno extern declarations.
1261 * s/netbsd.h (NEED_ERRNO): Remove.
1262
8224f93d
DN
12632010-04-01 Dan Nicolaescu <dann@ics.uci.edu>
1264
1265 Remove all uses of LIBX11_SYSTEM.
1266 * Makefile.in (LIBX11_SYSTEM): Remove.
1267 * s/msdos.h (LIBX11_SYSTEM): Do not define, define LIBS_SYSTEM
1268 instead.
1269
814062c7
EZ
12702010-04-01 Eli Zaretskii <eliz@gnu.org>
1271
ed68db4d
EZ
1272 Remove support for DJGPP v1.x (bug#5813).
1273
1274 * w16select.c (__dpmi_int): Remove DJGPP v1.x compatibility.
8224f93d
DN
1275 * s/msdos.h:
1276 * unexec.c (make_hdr, copy_text_and_data):
1277 * sysdep.c (wait_for_termination, sys_subshell):
ed68db4d 1278 * msdos.c (dos_set_window_size, msdos_set_cursor_shape)
52f4d8d5
EZ
1279 (IT_set_terminal_modes, __write, _rename, gethostname)
1280 (gettimeofday, alarm, fork, kill, dos_ttraw, dos_ttcooked)
1281 (run_msdos_command, abort): Remove DJGPP v1.x code and tests of
1282 the value of __DJGPP__.
ed68db4d
EZ
1283 (nice, pause, sigsetmask, sigblock): Remove DJGPP v1.x
1284 compatibility code.
8224f93d
DN
1285 * lread.c:
1286 * gmalloc.c (memalign):
1287 * fileio.c (Fcopy_file, check_executable, Ffile_modes):
1288 * emacs.c (main):
1289 * dosfns.c (init_dosfns):
ed68db4d
EZ
1290 * dired.c (file_name_completion_stat): Remove tests of __DJGPP__.
1291
52f4d8d5
EZ
12922010-04-01 Eli Zaretskii <eliz@gnu.org>
1293
814062c7
EZ
1294 * xdisp.c (set_cursor_from_row): Fix cursor positioning when the
1295 string with `cursor' property comes from an `after-string'
1296 overlay. (Bug#5816)
1297
0dc2e11d
GM
12982010-04-01 Glenn Morris <rgm@gnu.org>
1299
1300 * Makefile.in (LIBTIFF, LIBJPEG, LIBPNG, LIBGIF, LIBXPM, XFT_LIBS):
1301 Define as Makefile variables.
1302 (LIBX): Use above variables rather than directly using autoconf.
1303
1d29df59
DN
13042010-03-31 Dan Nicolaescu <dann@ics.uci.edu>
1305
1306 Clean up BSD_SYSTEM use.
1307 * xterm.c:
1308 * process.c:
1309 * emacs.c: Use HAVE_SYS_IOCTL_H instead of BSD_SYSTEM as a guard
1310 for including <sys/ioctl.h>.
1311 * sysdep.c (wait_without_blocking): Remove BSD_SYSTEM case, this
1312 code is only used for MSDOS.
1313
1546c559
JL
13142010-03-31 Juri Linkov <juri@jurta.org>
1315
1316 * image.c: Add `Qextension_data'.
1317 (syms_of_image): Initialize and staticpro `Qextension_data'.
1318 (Fimage_metadata): Rename from `Fimage_extension_data'.
1319 (gif_load): Put GIF extension data to the property
1320 `Qextension_data'.
1321
b8a1d5a1
CY
13222010-04-05 Chong Yidong <cyd@stupidchicken.com>
1323
1324 * xdisp.c (prepare_menu_bars): Don't call ns_set_doc_edited for
1325 terminal frames (Bug#5837).
1326
6521c534
CY
13272010-03-31 Chong Yidong <cyd@stupidchicken.com>
1328
1329 * nsfns.m (ns_set_doc_edited): Remove unused arg OLDVAL.
1330 * nsterm.h: Fix prototype.
1331
52c30783
EZ
13322010-03-31 Eli Zaretskii <eliz@gnu.org>
1333
1334 * xdisp.c (highlight_trailing_whitespace): Support highlight of
1335 trailing whitespace in right-to-left rows.
1336
855a0da7
SM
13372010-03-31 Stefan Monnier <monnier@iro.umontreal.ca>
1338
1339 Get rid of the direct_output optimizations.
1340 * keyboard.c (nonundocount): Remove extern declaration.
1341 (command_loop_1): Remove brittle optimisation for cheap and
1342 common operations.
1343 * xdisp.c (redisplay_internal): Don't bother checking
1344 redisplay_performed_directly_p any more.
1345 * sysdep.c (init_sys_modes): Don't call direct_output_forward_char
1346 any more.
1347 * dispnew.c (redisplay_performed_directly_p)
1348 (direct_output_for_insert, direct_output_forward_char):
1349 * dispextern.h (redisplay_performed_directly_p)
1350 (direct_output_for_insert, direct_output_forward_char): Remove.
1351 * cmds.c (nonundocount): Make it static.
1352
85738751 13532010-03-31 Bernhard Herzog <bh@intevation.de> (tiny change)
a6d676d9
CY
1354
1355 * menu.c (Fx_popup_menu): Use last_event_timestamp (Bug#4930).
1356
85738751 13572010-03-31 Jan Djärv <jan.h.d@swipnet.se>
67fee863
JD
1358
1359 * xdisp.c (note_mouse_highlight): Don't do highlight if pointer is
1360 invisible (Bug#5766).
1361
85738751 13622010-03-31 Adrian Robert <adrian.b.robert@gmail.com>
9ae6e189 1363
855a0da7
SM
1364 * xdisp.c (x_consider_frame_title, update_window_cursor):
1365 Remove HAVE_NS conditionals.
194d44e7 1366 (prepare_menu_bars) [HAVE_NS]: Call ns_set_doc_edited.
9ae6e189
CY
1367
1368 * nsfns.m (x_implicitly_set_name): If frame-title-format is t, use
1369 filename for the title.
1370 (ns_set_doc_edited): Do nothing if the selected window is a
1371 minibuffer window.
1372
1373 * nsterm.h: Add prototypes for ns_set_name_as_filename and
1374 ns_set_doc_edited.
1375
1376 * nsterm.m: Remove unneeded prototype.
1377
85738751 13782010-03-31 Glenn Morris <rgm@gnu.org>
25c72475
GM
1379
1380 * Makefile.in (SOME_MACHINE_OBJECTS): Ensure dbus stuff is always
1381 in the DOC file. (Bug#5336)
1382
85738751 13832010-03-31 Chong Yidong <cyd@stupidchicken.com>
f79a01db
CY
1384
1385 * xdisp.c (pos_visible_p): Revert 2008-01-25 change (Bug#5730).
1386
75d1428c
SM
13872010-03-31 Stefan Monnier <monnier@iro.umontreal.ca>
1388
1389 * window.c (keys_of_window): Remove redundant/overridden bindings.
1390
82043cfb
EZ
13912010-03-30 Eli Zaretskii <eliz@gnu.org>
1392
1393 * xdisp.c (BUFFER_POS_REACHED_P, move_it_in_display_line_to):
1394 Restore original behavior when the iterator is not bidi_p.
1395
b5dd0ae7
DN
13962010-03-30 Dan Nicolaescu <dann@ics.uci.edu>
1397
1398 * xdisp.c (syms_of_xdisp): Use intern_c_string instead of intern.
1399
bd924a5d
EZ
14002010-03-30 Eli Zaretskii <eliz@gnu.org>
1401
1402 * bidi.c (bidi_cache_iterator_state): Invalidate the cache if we
1403 are outside the range of cached character positions.
1404
3580374b
JB
14052010-03-30 Juanma Barranquero <lekktu@gmail.com>
1406
1407 * makefile.w32-in ($(BLD)/bidi.$(O)): Add dependency on w32gui.h.
1408
a7b02820
EZ
14092010-03-30 Eli Zaretskii <eliz@gnu.org>
1410
1411 Initial support for bidirectional editing.
1412
1413 * Makefile.in (obj): Include bidi.o.
1414 (bidi.o): New target.
1415
1416 * makefile.w32-in (OBJ1): Add $(BLD)/bidi.$(O).
1417 ($(BLD)/bidi.$(O)): New target.
1418
1419 * bidi.c: New file.
1420
1421 * buffer.h (struct buffer): New members bidi_display_reordering
1422 and bidi_paragraph_direction.
1423
1424 * buffer.c (init_buffer_once): Initialize bidi_display_reordering
1425 and bidi_paragraph_direction.
1426 (syms_of_buffer): Declare Lisp variables bidi-display-reordering
1427 and bidi-paragraph-direction.
1428 (Fbuffer_swap_text): Swap the values of
1429 bidi_display_reordering and bidi_paragraph_direction.
1430
1431 * dispextern.h (BIDI_MAXLEVEL, BIDI_AT_BASE_LEVEL): New macros.
1432 (bidi_type_t, bidi_dir_t): New types.
1433 (bidi_saved_info, bidi_stack, bidi_it): New structures.
1434 (struct it): New members bidi_p, bidi_it, paragraph_embedding,
1435 prev_stop, base_level_stop, and eol_pos.
1436 (bidi_init_it, bidi_get_next_char_visually): New prototypes.
1437 (IT_STACK_SIZE): Enlarge to 5.
1438 (struct glyph_row): New member reversed_p.
1439 <string_buffer_position>: Update prototype.
1440 (PRODUCE_GLYPHS): Set the reversed_p flag in the iterator's
1441 glyph_row if bidi_it.paragraph_dir == R2L.
1442 (struct glyph): New members resolved_level and bidi_type.
1443
1444 * dispnew.c (direct_output_forward_char): Give up if we need bidi
1445 processing or buffer's direction is right-to-left.
1446 (prepare_desired_row): Preserve the reversed_p flag.
1447 (row_equal_p): Compare the reversed_p attributes as well.
1448
1449 * xdisp.c (init_iterator): Initialize it->bidi_p. Call
1450 bidi_init_it and set it->paragraph_embedding from the current
1451 buffer's value of bidi_paragraph_direction.
1452 (reseat_1): Initialize bidi_it.first_elt.
1453 (set_iterator_to_next, next_element_from_buffer): Use the value of
1454 paragraph_embedding to determine the paragraph direction.
1455 (set_iterator_to_next): Under bidi reordering, call
1456 bidi_get_next_char_visually. Call bidi_paragraph_init if the
1457 new_paragraph flag is set in the bidi iterator.
1458 (next_element_from_buffer): If bidi_it.first_elt is set,
1459 initialize paragraph direction and find the first character to
1460 display in the visual order. If reseated to a middle of a line,
1461 prime the bidi iterator starting at the line's beginning. Handle
1462 the situation where we overstepped stop_charpos due to
1463 non-linearity of the bidi iteration. Likewise for when we back up
1464 beyond the previous stop_charpos. When moving across stop_charpos,
1465 record it in prev_stop.
1466 (display_line): Set row->end and it->start for the next row to the
1467 next character in logical order. Always extend reversed_p rows to
1468 the end of line, even if they end at ZV. Copy the reversed_p flag
1469 to the next glyph row. Keep calling set_cursor_from_row for
1470 bidi-reordered rows even if we already have a possible candidate
1471 for cursor position. Set row_end after all the row's glyphs have
1472 been produced, by looping over the glyphs. Record the position
1473 after EOL in it->eol_pos, and use it to set end_pos of the last
1474 row produced for a continued line.
1475 <Qright_to_left, Qleft_to_right>: New variables.
1476 (syms_of_xdisp): Initialize and staticpro them.
1477 (string_buffer_position_lim): New function.
1478 (string_buffer_position): Most of code moved to
1479 string_buffer_position_lim. Last argument and return value are
1480 now EMACS_INT; all callers changed.
1481 (set_cursor_from_row): Rewritten to support bidirectional text and
1482 reversed glyph rows.
1483 (text_outside_line_unchanged_p, try_window_id): Disable
1484 optimizations if we are reordering bidirectional text and the
1485 paragraph direction can be affected by the change.
1486 (append_glyph, append_composite_glyph)
1487 (produce_image_glyph, append_stretch_glyph): Set the
1488 resolved_level and bidi_type members of each glyph.
1489 (append_glyph): If the glyph row is reversed, prepend the glyph
1490 rather than appending it.
1491 (handle_stop_backwards): New function.
1492 (reseat_1, pop_it, push_it): Set prev_stop and base_level_stop.
1493 (reseat): call handle_stop_backwards to recompute prev_stop and
1494 base_level_stop for the new position.
1495 (handle_invisible_prop): Under bidi iteration, skip invisible text
1496 using bidi_get_next_char_visually. If we are `reseat'ed, init the
1497 paragraph direction. Update IT->prev_stop after skipping
1498 invisible text.
1499 (move_it_in_display_line_to): New variables prev_method
1500 and prev_pos. Compare for strict equality in
1501 BUFFER_POS_REACHED_P.
1502 (try_cursor_movement): Examine all the candidate rows that occlude
1503 point, to return the best match. If rows are bidi-reordered
1504 and point moved backwards, back up to the row that is not a
1505 continuation line, and start looking for a suitable row from
1506 there.
1507
1508 * term.c (append_glyph): Reverse glyphs by pre-pending them,
1509 rather than appending, if the glyph_row's reversed_p flag is set.
1510 Set the resolved_level and bidi_type members of each glyph.
1511
1512 * .gdbinit (pbiditype): New command.
1513 (pgx): Use it to display bidi level and type of the glyph.
1514 (pitx): Display some bidi information about the iterator.
1515 (prowlims, pmtxrows): New commands.
1516
32a8894e
DN
15172010-03-30 Dan Nicolaescu <dann@ics.uci.edu>
1518
1519 Remove all uses of C_DEBUG_SWITCH and LIBS_DEBUG.
1520 * s/usg5-4.h (LIBS_DEBUG):
1521 * s/irix6-5.h (C_DEBUG_SWITCH):
1522 * s/gnu-linux.h (LIBS_DEBUG):
1523 * s/darwin.h (LIBS_DEBUG):
1524 * s/bsd-common.h (LIBS_DEBUG):
1525 * s/aix4-2.h (LIBS_DEBUG, C_DEBUG_SWITCH):
1526 * m/iris4d.h (LIBS_DEBUG):
1527 * m/hp800.h (LIBS_DEBUG): Remove definitions.
1528
1529 * Makefile.in (LIBES): Remove reference to LIBS_DEBUG.
1530 (LIBS_DEBUG): Remove definition.
1531
649dbf36
CY
15322010-03-27 Chong Yidong <cyd@stupidchicken.com>
1533
1534 * process.c (Fmake_network_process): Don't apply Bug#5173 fix for
1535 Windows.
1536
cad4261f
YM
15372010-03-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1538
1539 * process.c (Fmake_network_process): Don't call turn_on_atimers around
1540 `connect' (Bug#5723).
1541
cd591dbc
HE
15422010-03-25 Helmut Eller <eller.helmut@gmail.com>
1543
1544 * process.c (Fmake_network_process): Call `select' for interrupted
1545 `connect' rather than creating new socket (Bug#5173).
1546
e867cb5d 15472010-03-24 Jan Djärv <jan.h.d@swipnet.se>
93318cbd
JD
1548
1549 * frame.c (x_get_arg): Handle RES_TYPE_BOOLEAN_NUMBER (bug #5736).
1550
1551 * xfns.c (Fx_create_frame): Make menuBar a RES_TYPE_BOOLEAN_NUMBER.
1552
1553 * dispextern.h (resource_types): RES_TYPE_BOOLEAN_NUMBER is new.
1554
e867cb5d 15552010-03-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
ad13a3ee
YM
1556
1557 * xfns.c (Fx_create_frame) [USE_LUCID]: Add BLOCK_INPUT around
1558 XLoadQueryFont.
1559
e867cb5d 15602010-03-24 Kenichi Handa <handa@m17n.org>
fbdc1721
KH
1561
1562 * coding.c (decode_coding_ccl): Fix previous change for the
1563 multibyte case.
fb608df3
KH
1564 (encode_coding_ccl): Don't setup ccl program here. Fix for the
1565 case that the output buffer is fullfilled.
1566 (encode_coding): Setup ccl program here.
fbdc1721 1567
e867cb5d 15682010-03-24 Andreas Politz <politza@fh-trier.de> (tiny change)
35cd7cd6
CY
1569
1570 * editfns.c (Fformat): Account for string precision when computing
1571 field width (Bug#5710).
1572
5845f0ed
DN
15732010-03-23 Dan Nicolaescu <dann@ics.uci.edu>
1574
814fb708
DN
1575 * s/gnu-linux.h (LIBS_SYSTEM): Remove, same as default.
1576
5845f0ed
DN
1577 Simplify LIBS_MACHINE definitions.
1578 * m/hp800.h (LIBS_MACHINE): Remove, same as default.
1579 * m/iris4d.h (LIBS_MACHINE): Likewise.
1580 * m/ibmrs6000.h (LIBS_MACHINE): Rename to LIBS_SYSTEM and move ...
1581 * s/aix4-2.h (LIBS_SYSTEM): ... here.
38e3487c 1582 * s/netbsd.h: Remove commented out code.
5845f0ed 1583
b7064064
DN
15842010-03-22 Dan Nicolaescu <dann@ics.uci.edu>
1585
df7734b2
DN
1586 Remove dead code dealing with POSIX_SIGNALS.
1587 * atimer.c (set_alarm): Remove dead code, all USG systems define
1588 POSIX_SIGNALS.
1589 * data.c (arith_error): Likewise.
1590 * keyboard.c (input_available_signal, handle_user_signal)
1591 (interrupt_signal): Likewise.
1592 * process.c (sigchld_handler): Likewise.
1593 (create_process): Remove if 0 code. Remove HPUX conditional when
1594 !defined (POSIX_SIGNALS), it cannot be true.
1595 * syssignal.h: Remove USG5_4 and USG conditionals when
1596 !POSIX_SIGNALS, they cannot be true.
1597
b7064064
DN
1598 * keyboard.c (Fset_input_interrupt_mode): Remove code depending on
1599 NO_SOCK_SIGIO, not used anymore.
1600
55da5ee3
DN
16012010-03-21 Dan Nicolaescu <dann@ics.uci.edu>
1602
0be96e3a
DN
1603 * m/vax.h (BSD_SYSTEM, BSD4_2): Remove conditionals, we only
1604 support vax on BSDs.
1605
55da5ee3
DN
1606 * m/ibmrs6000.h (ORDINARY_LINK): Move definition ...
1607 * s/aix4-2.h (ORDINARY_LINK): ... here.
1608
c0282183
AS
16092010-03-21 Andreas Schwab <schwab@linux-m68k.org>
1610
82c3d67a
AS
1611 * Makefile.in (abs_builddir): Define.
1612 (bootstrap_exe): Use it.
1613 (VPATH): Use $(srcdir) instead of @srcdir@.
c0282183 1614
3613edce
SM
16152010-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
1616
1617 * Makefile.in (bootstrap_exe): Use an absolute name.
1618
7f110ddc
DN
16192010-03-20 Dan Nicolaescu <dann@ics.uci.edu>
1620
22e87574
DN
1621 Remove support for old GNU/Linux using libc version 5.
1622 * m/alpha.h (LINUX_SBRK_BUG): Remove definition.
1623 * emacs.c (main): Remove code depending on LINUX_SBRK_BUG.
1624
05a670e6
DN
1625 Consolidate redundant definitions in s/bsd-common.h.
1626 * s/bsd-common.h (BSD4_2, TABDLY, TAB3, HAVE_TERMIOS, NO_TERMIO)
1627 (LIBS_DEBUG, SYSV_SYSTEM_DIR, UNEXEC, NARROWPROTO, BSD_PGRPS)
1628 (LDAV_SYMBOL, KERNEL_FILE): Define (or undefine) here instead of
1629 doing it in all files that include this one.
1630 * s/gnu.h (BSD4_2, TABDLY, TAB3, HAVE_TERMIOS, NO_TERMIO)
1631 (LIBS_DEBUG, SYSV_SYSTEM_DIR, UNEXEC, NARROWPROTO, BSD_PGRPS)
1632 (LDAV_SYMBOL, KERNEL_FILE): Remove.
1633 * s/freebsd.h (BSD4_2, TABDLY, TAB3, HAVE_TERMIOS, NO_TERMIO)
1634 (LIBS_DEBUG, SYSV_SYSTEM_DIR, UNEXEC, NARROWPROTO, BSD_PGRPS)
1635 (LDAV_SYMBOL, KERNEL_FILE): Remove.
1636 * s/netbsd.h (BSD4_2, TABDLY, TAB3, HAVE_TERMIOS, NO_TERMIO)
1637 (LIBS_DEBUG, SYSV_SYSTEM_DIR, UNEXEC, NARROWPROTO, BSD_PGRPS)
1638 (LDAV_SYMBOL, KERNEL_FILE): Remove.
1639
2968f561
DN
1640 Consolidate redundant definitions.
1641 * s/usg5-4.h (sigsetmask, PTY_TTY_NAME_SPRINTF): Do not define,
1642 it's undefined in all files that include this one.
1643 (POSIX_SIGNALS): Define here instead of doing it in all files that
1644 include this one.
1645 * s/irix6-5.h (sigsetmask, PTY_TTY_NAME_SPRINTF): Do not undef.
1646 (POSIX_SIGNALS): Do not define.
1647 * s/sol2-6.h (sigsetmask, PTY_TTY_NAME_SPRINTF): Do not undef.
1648 (POSIX_SIGNALS): Do not define.
1649 * s/unixware.h (sigsetmask, PTY_TTY_NAME_SPRINTF): Do not undef.
1650 (POSIX_SIGNALS): Do not define.
1651
15d25dc0
DN
1652 Remove support for old UNIX System V systems.
1653 * s/unixware.h: Add the contents of s/usg-5-4-2.h.
1654 * s/usg-5-4-2.h: Remove.
1655
07e339e4
DN
1656 Remove support for Solaris on PPC and for old versions.
1657 * s/sol2-6.h: Add the contents of s/sol-2.3.h, s/sol-2.4.h, s/sol-2.5.h.
1658 (LD_SWITCH_SYSTEM, USE_MMAP_FOR_BUFFERS): Remove #defines/#undef
1659 that cancel each other.
1660 * s/sol2-3.h:
1661 * s/sol2-4.h:
1662 * s/sol2-5.h: Remove.
1663 * m/ibmrs6000.h: Remove code for USG5_4, this file is only used on AIX.
1664 (NO_REMAP): Remove, unused.
1665 (UNEXEC): Move definition ...
1666 * s/aix4-2.h (UNEXEC): ... here.
1667
7f110ddc
DN
1668 * s/openbsd.h: Remove support for non-ELF and for systems that do
1669 not support shared libraries.
1670 * s/netbsd.h:
1671 * s/freebsd.h: Likewise.
1672
605f35cd
DN
16732010-03-20 Dan Nicolaescu <dann@ics.uci.edu>
1674
1675 Remove non-working support for lynxos 3.0.
1676 * s/lynxos.h: Remove file.
1677
1678 * unexec.c (unexec, adjust_lnnoptrs): Do not depend on
1679 COFF_BSD_SYMBOLS, nothing defines it anymore.
1680
aed71cf4
DN
16812010-03-20 Dan Nicolaescu <dann@ics.uci.edu>
1682
1683 Remove obsolete uses of HAVE_SHM.
1684 * emacs.c (standard_args):
1685 (Fdump_emacs):
1686 (syms_of_emacs): Remove code depending on HAVE_SHM.
1687
1688 * alloc.c: Remove HAVE_SHM dependent definition.
1689
1690 * Makefile.in (RUN_TEMACS): Do not depend on HAVE_SHM.
1691
aded53ff
GM
16922010-03-18 Glenn Morris <rgm@gnu.org>
1693
17284745
GM
1694 * emacs.c (USAGE4): Hard-code bug address.
1695 (REPORT_EMACS_BUG_ADDRESS, REPORT_EMACS_BUG_PRETEST_ADDRESS): Remove.
1696 (bug_reporting_address): Remove.
1697 (main): Don't call bug_reporting_address.
1698
aded53ff
GM
1699 * Makefile.in (XFT_LIBS, LIBXPM, LIBJPEG, LIBPNG, LIBTIFF, LIBGIF)
1700 (LIBGPM, LIBRESOLV): Set using autoconf rather than cpp.
1701
303500aa
CY
17022010-03-15 Chong Yidong <cyd@stupidchicken.com>
1703
1704 * xfns.c (Fx_create_frame):
1705 * frame.c (Vdefault_frame_scroll_bars): Put non-GTK X scroll-bars
1706 on left.
1707
cef3058f
CY
17082010-03-13 Andreas Politz <politza@fh-trier.de> (tiny change)
1709
1710 * editfns.c (Fformat): Account for string precision when computing
1711 field width (Bug#5710).
1712
a647d59d
CY
17132010-03-12 Chong Yidong <cyd@stupidchicken.com>
1714
4fa42018
CY
1715 * xfns.c (Fx_create_frame): Set default to Qright.
1716
a647d59d
CY
1717 * frame.c (Vdefault_frame_scroll_bars): Set default to Qright for
1718 all window systems.
1719
6da23aaa
EZ
17202010-03-12 Eli Zaretskii <eliz@gnu.org>
1721
a96f6398 1722 These changes remove termcap.c from the build on Posix platforms.
83d02def 1723 * Makefile.in (termcapobj): Move termcap.o from here...
6da23aaa
EZ
1724 (MSDOS_OBJ): ...to here.
1725 (termcapobj) [!LIBS_TERMCAP]: Remove specialized value, as it is
1726 now identical to when LIBS_TERMCAP is defined.
1727
1728 * term.c: Remove (ifdef'ed away) inclusion of termcap.h.
1729
1730 * cm.c: Remove (ifdef'ed away) inclusion of termcap.h.
1731
a96f6398 1732 * config.in: Regenerated. (See top-level ChangeLog.)
6da23aaa 1733
288f9fc0
CY
17342010-03-10 Chong Yidong <cyd@stupidchicken.com>
1735
1736 * Branch for 23.2.
1737
d48cd3f4
SM
17382010-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
1739
1740 Cleanup setup of gl_state in various parts of the code.
1741 * syntax.h (SETUP_BUFFER_SYNTAX_TABLE): New macro.
1742 (SETUP_SYNTAX_TABLE, SETUP_SYNTAX_TABLE_FOR_OBJECT):
1743 * syntax.c (find_defun_start, Fchar_syntax, Fmatching_paren)
1744 (skip_chars):
1745 * regex.c (regex_compile): Use it.
1746 (re_compile_pattern): Don't set gl_state.current_syntax_table since
1747 it's now set in regex_compile when/if we need it.
1748
618db430
SM
17492010-03-05 Stefan Monnier <monnier@iro.umontreal.ca>
1750
c0335e02
SM
1751 Make it possible to C-g in a tight bytecode loop again (bug#5680).
1752 * lisp.h (ELSE_PENDING_SIGNALS): New macro.
1753 (QUIT): Use it to consolidate code and remove redundancy.
1754 * bytecode.c (BYTE_CODE_QUIT): Use it as well.
1755
254c06a8
SM
1756 * regex.c (regex_compile): Setup gl_state as well.
1757
618db430
SM
1758 * syntax.c (skip_chars): Setup gl_state (bug#3823).
1759 (in_classes): Use CONSP before XCAR/XCDR.
1760
233f0c9f
CY
17612010-03-03 Chong Yidong <cyd@stupidchicken.com>
1762
1763 * keymap.c (Fwhere_is_internal): Use Fequal to compare
1764 definitions, so that keyboard macros are correctly handled
1765 (Bug#5481).
1766
75f80e63
EZ
17672010-03-02 Eli Zaretskii <eliz@gnu.org>
1768
1769 * coding.c (decode_coding_emacs_mule): Fixup pointers to buffer
1770 text that could be relocated inside the call to emacs_mule_char.
1771 (emacs_mule_char): Use CODING_DECODE_CHAR instead of DECODE_CHAR.
1772 (CODING_DECODE_CHAR): Add a comment describing its purpose.
1773
dcfb9bc4
KH
17742010-03-02 Kenichi Handa <handa@m17n.org>
1775
fc9a17bc
KH
1776 * character.c (parse_str_as_multibyte): Fix handling of the
1777 multibyte form of raw-bytes.
1778 (str_as_multibyte): Likewise.
1779
dcfb9bc4
KH
1780 * buffer.c (Fset_buffer_multibyte): Fix handling of the multibyte
1781 form of raw-bytes.
1782
412c01b6
CY
17832010-02-28 Chong Yidong <cyd@stupidchicken.com>
1784
1785 * charset.c (load_charset_map_from_file)
1786 (load_charset_map_from_vector): Zero out allocated
1787 charset_map_entries before using them.
1788
df7e1ea0
AS
17892010-02-27 Andreas Schwab <schwab@linux-m68k.org>
1790
1791 * w32uniscribe.c (uniscribe_check_otf): Fix length check.
1792
fe69a722
CY
17932010-02-27 Chong Yidong <cyd@stupidchicken.com>
1794
4ed28cf4
CY
1795 * font.c (font_parse_fcname): Recognize "Book", "Condensed",
1796 "Medium", and "Semi-Condensed" keywords in GTK names (Bug#5646).
fe69a722 1797
7379cfce
KH
17982010-02-26 Kenichi Handa <handa@m17n.org>
1799
f88cc4d6
KH
1800 * ftfont.c (ftfont_get_open_type_spec): Fix parsing of otf_spec.
1801
7379cfce
KH
1802 * xdisp.c (reseat_to_string): Fix previous change.
1803
cf2fdcfb
CY
18042010-02-26 David Reitter <david.reitter@gmail.com>
1805
1806 * nsfont.m (nsfont_draw): ns_antialias_text should be a
1807 Lisp_Object (Bug#4736).
1808
cc6c7c75
KH
18092010-02-25 Kenichi Handa <handa@m17n.org>
1810
1811 * xdisp.c (reseat_to_string): Fix previous change (bug#5609).
1812
32e737d7
JD
18132010-02-24 Jan Djärv <jan.h.d@swipnet.se>
1814
1815 * xterm.c (XTflash): Move declarations before statements.
1816
1817 * gtkutil.c (xg_get_gdk_display): Remove (unused).
1818 (xg_get_pixbuf_from_pix_and_mask, xg_create_frame_widgets)
1819 (xg_toggle_notify_cb, xg_set_toolkit_scroll_bar_thumb)
1820 (xg_create_tool_bar): Remove unused variables.
1821 (x_wm_set_size_hint): Move declarations before statements.
1822 (xg_create_frame_widgets): Remove variable grav,
1823
676cae9f
CY
18242010-02-21 Chong Yidong <cyd@stupidchicken.com>
1825
1826 * m/arm.h: Define the LIB_GCC flag to be -lgcc_s (Bug#5518).
1827
886cc2b8
SM
18282010-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
1829
1830 * term.c (fatal): Add a final \n if needed (bug#5596).
1831
ddb2d8e2
CY
18322010-02-18 Chong Yidong <cyd@stupidchicken.com>
1833
1834 * nsterm.m (ns_ring_bell): Revert last change (Bug#5569).
1835
2a4f8d3d
GM
18362010-02-18 Glenn Morris <rgm@gnu.org>
1837
1838 * callint.c (Finteractive): Doc fix.
1839
ebaf11b6
KH
18402010-02-18 Kazuhiro Ito <kzhr@d1.dion.ne.jp> (tiny change)
1841
886cc2b8
SM
1842 * coding.c (record_conversion_result):
1843 Handle CODING_RESULT_INSUFFICIENT_DST.
ebaf11b6
KH
1844 (decode_coding_object): Record CODING_RESULT_INSUFFICIENT_MEM on
1845 memory allocation error.
1846
d0396581
KH
18472010-02-17 Kenichi Handa <handa@m17n.org>
1848
886cc2b8
SM
1849 * coding.c (decode_coding_ccl): Don't setup ccl program here.
1850 Fix for the case that the output buffer is fullfilled.
d0396581
KH
1851 (decode_coding): Setup ccl program here. Keep looping when the
1852 decoder stopped because the output buffer is
1853 fullfilled (bug#5534).
1854
1855 * ccl.c (ccl_driver): Never reset ic to CCL_HEADER_MAIN.
1856
98599f74
JD
18572010-02-13 Jan Djärv <jan.h.d@swipnet.se>
1858
471e4f04 1859 * xterm.c (x_clear_frame_area): Call gtk_widget_queue_draw if USE_GTK,
98599f74 1860 bug #5571.
886cc2b8 1861 (XTflash): Use Gdk-routines if USE_GTK so scroll bars don't get
471e4f04 1862 overdrawn.
98599f74 1863
182659ae
JD
18642010-02-10 Jan Djärv <jan.h.d@swipnet.se>
1865
1866 * xsmfns.c (x_session_initialize): Move initialization of ice_fd and
1867 doing_interact here.
1868 (ice_connection_closed): New function.
1869 (x_session_check_input, smc_die_CB, ice_io_error_handler)
1870 (ice_conn_watch_CB, x_session_close): Call ice_connection_closed.
1871 (x_session_check_input): Call IceCloseConnection if IceProcessMessages
1872 returns I/O error.
1873 (ice_conn_watch_CB): Call add_keyboard_wait_descriptor on ice_fd,
1874 bug #5512.
1875
9be32c4e 18762010-02-08 Francis Devereux <francis@devrx.org> (tiny change)
14a225f9
CY
1877
1878 * nsfont.m (nsfont_open): The system's value for the font descent
1879 is negative, so round it down to avoid clipping.
1880
a2f3eb19
CY
18812010-02-06 Chong Yidong <cyd@stupidchicken.com>
1882
1883 * charset.c (load_charset_map_from_file)
1884 (load_charset_map_from_vector): Fix last change to use SAFE_ALLOCA
953d248c 1885 instead of xmalloc (Bug#5526). Suggested by Vivek Dasmohapatra.
a2f3eb19 1886
3088147c
CY
18872010-02-05 Chong Yidong <cyd@stupidchicken.com>
1888
1889 * charset.c (load_charset_map_from_file): Allocate large
1890 charset_map_entries structure on the heap rather than the stack.
1891 (Bug#5526).
1892
b57d9029
KH
18932010-01-31 Kenichi Handa <handa@m17n.org>
1894
1895 * font.c (font_parse_xlfd): If FONT is a font-entity and pixel
115e4fd3 1896 size in NAME is invalid, return -1 (Bug#5396).
b57d9029 1897
c67d885b
CY
18982010-01-31 Chong Yidong <cyd@stupidchicken.com>
1899
1900 * nsterm.m (ns_defined_color): Block input. Suggested by Mike
1901 <deactivated@gmail.com> (Bug#3605).
1902
8fab2362
CY
19032010-01-31 David De La Harpe Golden <david@harpegolden.net>
1904
1905 * fileio.c (Frename_file): Correctly rename symlinks to
1906 directories (Bug#5496).
1907
cb2a62f2
CY
19082010-01-31 Filipe Cabecinhas <filcab@gmail.com> (tiny change)
1909
1910 * nsterm.m (ns_ring_bell): Handle visible bell like X.
1911
944c7a26
AS
19122010-01-30 Andreas Schwab <schwab@linux-m68k.org>
1913
1914 * character.h (CHAR_PRINTABLE_P): Reparenthesize to avoid warning.
1915
c024ac08
CY
19162010-01-29 Chong Yidong <cyd@stupidchicken.com>
1917
1918 * frame.c (DEFAULT_ROWS): Change default to 35.
1919
1920 * xfns.c (x_default_font_parameter): Change default XFT font to
1921 monospace-10 (Bug#3643).
1922
af93af83
EZ
19232010-01-29 Eli Zaretskii <eliz@gnu.org>
1924
1925 * w32inevt.c (key_event): Remove unnecessary comparison of
1926 event->uChar.AsciiChar with 128.
1927
ca0eb708
CY
19282010-01-28 Chong Yidong <cyd@stupidchicken.com>
1929
b242dbfc
CY
1930 * fileio.c (Frename_file): Fix last change (Bug#5487).
1931
ca0eb708
CY
1932 * m/mips.h: Remove DATA_START. Suggested by Dan Nicolaescu.
1933
1934 * m/alpha.h: Don't define DATA_START on NetBSD (Bug#4629).
1935
45d45af5
JD
19362010-01-28 Jan Djärv <jan.h.d@swipnet.se>
1937
1938 * xfns.c (Fx_create_frame): Remove window size matching code from
1939 2010-01-15.
1940 (x_get_current_desktop, x_get_desktop_workarea): Remove
1941
7e233730
JR
19422010-01-27 Jason Rumney <jasonr@gnu.org>
1943
1944 * w32inevt.c (w32_kbd_patch_key): Save the unicode character.
a292592c 1945 (key_event): Use unicode for characters 128 and higher (Bug#4567).
7e233730 1946
86e893e3
KH
19472010-01-27 Kenichi Handa <handa@m17n.org>
1948
1949 * regex.c (analyse_first): Fix setting of fastmap for unibyte
c8b96b2a 1950 pattern string (Bug#4209).
86e893e3 1951
8719abec
CY
19522010-01-27 David De La Harpe Golden <david@harpegolden.net>
1953
1954 * fileio.c (Frename_file): Call copy-directory and
1955 delete-directory for directories, in order to handle cross-device
1956 renaming (Bug#3353).
1957
844794c8
JD
19582010-01-25 Jan Djärv <jan.h.d@swipnet.se>
1959
aa3e13b5 1960 * xfns.c (Fx_create_frame): If frame height is too big, try
ac146f82 1961 sizes 24 and 10. Bug #3643.
844794c8 1962
bd4b5750
SM
19632010-01-24 Stefan Monnier <monnier@iro.umontreal.ca>
1964
8dc1adf6 1965 Try and fix bug#788, hopefully for real this time.
bd4b5750
SM
1966 * keymap.c (shadow_lookup): Add `remap' arg.
1967 (describe_map, describe_vector): Update calls to shadow_lookup.
1968 (Fwhere_is_internal): Fix up handling of `remapped_sequences' and
1969 `remapped' so this flag is applicable to `sequence'. Be careful to
8dc1adf6
SM
1970 perform remapping during shadow_lookup check of remapped_sequences.
1971
285d07e2
CY
19722010-01-24 Eric Bélanger <snowmaniscool@gmail.com> (tiny change)
1973
1974 * image.c (png_load): Use png_sig_cmp instead of the obsolete
1975 png_check_sig, which has been removed in libpng 1.4.
1976
c6d09b8d
CY
19772010-01-23 Giorgos Keramidas <keramida@ceid.upatras.gr> (tiny change)
1978
1979 * filelock.c: Include utmp.h only when HAVE_UTMP_H (FreeBSD 9.x
1980 lacks this header file).
1981
3d782998
YM
19822010-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1983
1984 * xdisp.c (draw_glyphs): Update `start' for left_overwritten case
1985 as in Emacs 22.
1986
2aff7c53
YM
19872010-01-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1988
1989 * lisp.h (make_pure_string): String pointer arg now points to const.
1990
1991 * alloc.c (find_string_data_in_pure, make_pure_string): String pointer
1992 args now point to const.
1993
74327f7a
EZ
19942010-01-22 Eli Zaretskii <eliz@gnu.org>
1995
1996 * lread.c (Fload): Don't treat files without .elc extension as
1997 byte-compiled if they are ``magic'', i.e. `openp' returned -2 for
1998 them. (bug#5303)
1999
4d1e6632
KH
20002010-01-20 Kenichi Handa <handa@m17n.org>
2001
2002 * coding.c (consume_chars): If ! multibyte and the encoder is ccl,
2003 treat the source as actual byte sequence.
2004
1fdede8f
AM
20052010-01-19 Alan Mackenzie <acm@muc.de>
2006
2007 Fix spurious before-change-functions invocation from (insert ?\n).
194d44e7 2008 * textprop.c (set_text_properties): Rename parameter
1fdede8f
AM
2009 `signal_after_change_p' to `coherent_change_p', and make the
2010 invocation of `modify_region' conditional on it.
2011
67477f30
JD
20122010-01-19 Jan Djärv <jan.h.d@swipnet.se>
2013
2014 * xsettings.c (apply_xft_settings): Save settings in Vxft_settings
2015 for debug purpose.
2016 (syms_of_xsettings): Declare xft-settings.
2017
244b023e
CY
20182010-01-18 Chong Yidong <cyd@stupidchicken.com>
2019
2020 * editfns.c (Fcurrent_time_string): Doc fix (Bug#5408).
2021
617364fe
CY
20222010-01-16 Stefan Monnier <monnier@iro.umontreal.ca>
2023
2024 * xterm.c (event_handler_gdk): Block input (Bug#5037).
2025
4fe22cdf
CY
20262010-01-16 Chong Yidong <cyd@stupidchicken.com>
2027
2028 * emacs.c (standard_args): Adjust arg priorities to reflect how
2029 they are processed in startup.el.
2030
e118d2be
AS
20312010-01-16 Andreas Schwab <schwab@linux-m68k.org>
2032
2033 * Makefile.in (lisp, shortlisp): Update.
2034
523ae620
SM
20352010-01-16 Stefan Monnier <monnier@iro.umontreal.ca>
2036
2037 * xterm.c (x_term_init): Instead of inhibiting GC while running Lisp
2038 code, link the new kboard into all_kboard before running Lisp code,
2039 and protect the new terminal with GCPRO (Bug#5365).
2040 (x_term_init): Remove unused var `atom'.
2041 (x_delete_display, x_delete_terminal): Remove unused var `i'.
2042
f0d13888
JD
20432010-01-15 Jan Djärv <jan.h.d@swipnet.se>
2044
2045 * xfns.c (x_get_current_desktop, x_get_desktop_workarea): New functions.
2046 (Fx_create_frame): Call x_get_current_desktop and x_get_desktop_workarea
2047 to find out usable size of the desktop. Don't make frames larger than
ac146f82 2048 this. Bug #3643.
f0d13888 2049
cc320f07
KH
20502010-01-15 Kenichi Handa <handa@m17n.org>
2051
2052 * xdisp.c (CHAR_COMPOSED_P): New arg END_CHARPOS. Callers changed.
2053
7ffdf101
CY
20542010-01-15 Chong Yidong <cyd@stupidchicken.com>
2055
2056 * nsterm.m (Qnone): Define.
2057
2058 * nsfns.m (Qnone): Move definition to nsterm.m.
2059
d12bd917
KH
20602010-01-14 Kenichi Handa <handa@m17n.org>
2061
2062 * coding.c (detect_coding_iso_2022): Fix handling of euc-xx coding
2063 systems.
2064
d9a7c140
KH
20652010-01-14 Kenichi Handa <handa@m17n.org>
2066
2067 Make auto-composition work on all buffers even if they are
2068 fundamental mode.
2069
2070 * composite.c (Vauto_composition_mode): New variable.
2071 (composition_compute_stop_pos): Check Vauto_composition_mode
2072 instead of Vauto_composition_function.
2073 (composition_adjust_point, Ffind_composition_internal): Likewise.
2074 (syms_of_composite): Declare Lisp variable
2075 "auto-composition-mode" here.
2076
63286bb2
CY
20772010-01-13 Chong Yidong <cyd@stupidchicken.com>
2078
2079 * xterm.c (x_term_init): Avoid garbage-collecting the new terminal
2080 during call to vendor-specific-keysyms (Bug#5365).
2081
c2623ee7
YM
20822010-01-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2083
2084 * keyboard.c (input_available_signal) [SYNC_INPUT]:
2085 Call SIGNAL_THREAD_CHECK (Bug#5333).
2086
2087 * atimer.c (alarm_signal_handler) [!SYNC_INPUT]:
2088 Call SIGNAL_THREAD_CHECK.
2089
0b5397c2
SM
20902010-01-13 Stefan Monnier <monnier@iro.umontreal.ca>
2091
2092 Try to fix bug#5314. This is probably not the final word, tho.
2093 * buffer.c (Fset_buffer_modified_p): Try and be careful not to modify
2094 recent-auto-save-p as a side-effect.
2095 * buffer.h (BUF_AUTOSAVE_MODIFF): New macro.
2096 * buffer.c (Fkill_buffer, reset_buffer):
2097 * editfns.c (Fsubst_char_in_region):
2098 * fileio.c (Finsert_file_contents, Fdo_auto_save)
2099 (Fset_buffer_auto_saved, Frecent_auto_save_p): Use it.
2100
dc954cb2
KH
21012010-01-13 Kenichi Handa <handa@m17n.org>
2102
2103 Display buffer name, etc. in mode line by composing correctly.
2104
2105 * xdisp.c (reseat_to_string): Call composition_compute_stop_pos if
2106 STRING is not nil.
0b5397c2 2107 (display_mode_element): Adjust for the change of
dc954cb2
KH
2108 decode_mode_spec and display_line.
2109 (decode_mode_spec): Change arg MULTIBYTE to STRING.
2110 (display_string): Handle the case that STRING is non-null and
2111 LISP_STRING is not nil.
2112
0b5397c2
SM
2113 * xterm.c (x_draw_composite_glyph_string_foreground):
2114 Pay attention to s->face->overstrike.
dc954cb2
KH
2115
2116 * composite.c (composition_reseat_it): Don't check PT if STRING is
2117 non nil.
2118
4a00eaca
YM
21192010-01-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2120
2121 * keyboard.c (read_char): Don't apply previous change when current
2122 buffer is unchanged by command execution.
2123
60abb287
JD
21242010-01-12 Jan Djärv <jan.h.d@swipnet.se>
2125
2126 * keyboard.c (read_char): Return after executing from special map.
2127
893db5bc
GM
21282010-01-12 Glenn Morris <rgm@gnu.org>
2129
2130 * emacs.c (REPORT_EMACS_BUG_PRETEST_ADDRESS): Set it to
2131 bug-gnu-emacs rather than emacs-pretest-bug.
2132
4d03ece0
CY
21332010-01-11 Chong Yidong <cyd@stupidchicken.com>
2134
2135 * nsterm.m (syms_of_nsterm): Initialize Qcontrol etc. before
2136 initializing the Lisp variables that depend on them.
2137
1df47e38
YM
21382010-01-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2139
2140 * xfns.c (x_set_menu_bar_lines) [!USE_X_TOOLKIT && !USE_GTK]:
2141 Clear areas that will not be updated after change of menu bar lines.
2142 Clear the menu bar window's current matrix when the window gets empty.
2143
2f1c6384
CY
21442010-01-09 Chong Yidong <cyd@stupidchicken.com>
2145
e398c61c
CY
2146 * intervals.h, textprop.c (extend_property_ranges): Return value
2147 and args changed. Discard properties that begin at or after the
2148 new end (Bug#5306).
2149
2150 * editfns.c (Fformat): Caller changed.
2151
e5a29a10
CY
2152 * nsterm.m (ns_set_default_prefs): Delete function.
2153 (syms_of_nsterm): Initialize ns_command_modifier,
2154 ns_control_modifier, ns_function_modifier, ns_antialias_text, and
2155 ns_antialias_threshold here, not in ns_term_init (Bug#4113).
2156
2f1c6384
CY
2157 * xdisp.c (pos_visible_p): Check for invisible text at the correct
2158 position (Bug#4040).
2159
d427a9fa
EZ
21602010-01-09 Eli Zaretskii <eliz@gnu.org>
2161
2162 * editfns.c (Ffloat_time): Doc fix.
2163
21b9df2f
JD
21642010-01-09 Jan Djärv <jan.h.d@swipnet.se>
2165
2166 * xfns.c (Fx_create_frame): Don't create frame larger than display
2167 by default bug#3643.
2168
4b00d3b1
YM
21692010-01-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2170
2171 * frame.h (FRAME_TOP_MARGIN_HEIGHT): New macro.
2172 (FRAME_LINE_TO_PIXEL_Y, FRAME_PIXEL_Y_TO_LINE): Take account of pseudo
2173 windows above internal border.
2174
2175 * window.h (WINDOW_MENU_BAR_P, WINDOW_TOOL_BAR_P): New macros.
2176 (WINDOW_TOP_EDGE_Y, WINDOW_BOTTOM_EDGE_Y): Take account of pseudo
2177 windows above internal border.
2178
2179 * xdisp.c (get_glyph_string_clip_rects, init_glyph_string): Don't treat
2180 tool bar windows specially.
2181
2182 * xfns.c (x_set_tool_bar_lines): Take account of menu bar height.
2183
2184 * xterm.c (x_after_update_window_line): Don't treat tool bar windows
2185 specially.
2186 (XTflash): Take account of menu bar height.
2187
2188 * w32term.c (x_after_update_window_line): Don't treat tool bar windows
2189 specially.
2190
5075d853
JD
21912010-01-08 Jan Djärv <jan.h.d@swipnet.se>
2192
ac146f82 2193 * dispnew.c (change_frame_size_1): newwidth == FRAME_COLS (f) must
5075d853
JD
2194 also be true before we can return early (bug #5339).
2195
474217c8
CY
21962010-01-06 David Reitter <david.reitter@gmail.com>
2197
2198 * nsfns.m (ns_get_screen): Rewrite, returning NULL for non-NS.
2199 (Fns_display_usable_bounds): Rewrite, computing bounds properly
2200 (Bug#3233).
2201
c0e6d47d
JD
22022010-01-06 Jan Djärv <jan.h.d@swipnet.se>
2203
d0cf45b7
JD
2204 * font.c (font_open_entity): Enable chache and call cached_font_ok
2205 for the driver if defined.
2206 (QCuser_spec): New symbol.
2207 (font_spec_from_name): Save name as user-spec.
2208 (font_load_for_lface): Keep user-spec instead of name.
2209 (font_open_by_name): Save name as user-spec.
2210 (syms_of_font): Initialize QCuser_spec.
b7f8e4f5 2211 (font_clear_prop): Clear name if it exists in font (bug#5157).
d0cf45b7
JD
2212
2213 * xftfont.c (xftfont_open): Call xftfont_add_rendering_parameters.
2214 (xftfont_add_rendering_parameters, xftfont_cached_font_ok): New.
2215 (syms_of_xftfont): Initialize xftfont_driver.cached_font_ok.
2216
2217 * font.h (struct font_driver): Add cached_font_ok.
2218
c0e6d47d
JD
2219 * xterm.c (x_clear_frame): Queue draw for scroll bars.
2220
7c583cd8
JD
22212010-01-05 Jan Djärv <jan.h.d@swipnet.se>
2222
2223 * xterm.c (x_new_font): Move code for setting rows/cols before
2224 resizing ...
ac146f82 2225 (x_set_window_size): ... to here. Bug #2568.
7c583cd8
JD
2226
2227 * gtkutil.c (xg_clear_under_internal_border): New function.
0b5397c2
SM
2228 (xg_frame_resized, xg_frame_set_char_size):
2229 Call xg_clear_under_internal_border.
7c583cd8 2230 (xg_update_scrollbar_pos): Clear under old scroll bar position.
69e2f185 2231
03f77f0a
CY
22322010-01-05 Chong Yidong <cyd@stupidchicken.com>
2233
2234 * keyboard.c (read_key_sequence): Catch keyboard switch after
2235 making a new tty frame (Bug#5095).
2236
2a1ef5be
KH
22372010-01-05 Kenichi Handa <handa@m17n.org>
2238
2239 * fontset.c (fontset_find_font): Fix getting the frame pointer.
2240
e3eb1dae
SM
22412010-01-04 Stefan Monnier <monnier@iro.umontreal.ca>
2242
2243 * dbusbind.c (xd_remove_watch): Avoid trying to convert a void* to
2244 Lisp_Object, preferring to convert a lisp_Object to a void* instead.
2245 (Fdbus_init_bus): Use XHASH to get a scalar value from a Lisp_Object.
2246
777013f2
MA
22472010-01-03 Michael Albinus <michael.albinus@gmx.de>
2248
2249 * dbusbind.c (xd_add_watch): Improve debug message.
2250 (xd_remove_watch): Improve debug message. If DATA is the session
2251 bus, unset D-Bus session environment.
2252 (Fdbus_init_bus): Pass the bus as argument to
2253 dbus_connection_set_watch_functions. (Bug#5283)
7c583cd8 2254
8932b1c2
CY
22552010-01-01 Chong Yidong <cyd@stupidchicken.com>
2256
87231e2c
CY
2257 * nsterm.m (ns_get_color): Fix buffer overflow (Bug#4763).
2258
4801c5fa
CY
2259 * lread.c (syms_of_lread): Make it clearer that these are the
2260 names of loaded files (Bug#5068).
2261
8932b1c2
CY
2262 * eval.c (run_hook_with_args): Handle the case where the global
2263 value has the obsolete single-function form (Bug#5026).
2264
11e3c684
CY
22652009-12-27 Chong Yidong <cyd@stupidchicken.com>
2266
2267 * minibuf.c (Fall_completions): Minor optimization.
2268
5b28ce35
EZ
22692009-12-26 Eli Zaretskii <eliz@gnu.org>
2270
5ce6e4f4
JB
2271 * .gdbinit (pgx): Fix display of composite glyphs.
2272 Display cmp.from and cmp.to as well.
2273 (pitx): Fix last change.
5b28ce35 2274
bcffff46
KH
22752009-12-25 Kenichi Handa <handa@m17n.org>
2276
2277 * composite.h (composition_adjust_point): Update prototype.
2278
2279 * composite.c (composition_reseat_it): Don't make a composition
2280 spanning over point.
2281 (CHAR_COMPOSABLE_P): Treat U+200C (ZWNJ) and U+200D (ZWJ) as
2282 composable characters.
2283 (composition_adjust_point): New arg NEW_PT. Callers changed.
2284
2285 * keyboard.c (command_loop_1): Force redisplay if the last point
2286 was within a composition.
2287 (adjust_point_for_property): Don't adjust point for automatic
2288 composition when called after buffer modification.
2289
3f670e9a
EZ
22902009-12-19 Eli Zaretskii <eliz@gnu.org>
2291
5ce6e4f4
JB
2292 * .gdbinit (pitx): Don't use enum names, use their values.
2293 Remove reference to non-existing value GET_FROM_COMPOSITION.
be996d82
EZ
2294 (pgx): Don't use enum names, use their values.
2295 (pitmethod): New helper command.
2296 (pitx): Use it to display iteration method.
2297 (pgrowit): New command.
2298
ad903955
EZ
2299 * makefile.w32-in ($(BLD)/cmds.$(O)): Depend on frame.h.
2300
3f670e9a
EZ
2301 Update dependencies in Makefile.in.
2302
2303 * Makefile.in (alloc.o): Depend on termhooks.h.
2304 (atimer.o): Depend on blockinput.h.
2305 (buffer.o): Depend on indent.h, keyboard.h, coding.h, keymap.h,
2306 and frame.h.
2307 (callint.o): Depend on systime.h, coding.h, and composite.h.
2308 (callproc.o): Depend on buffer.h.
2309 (casefiddle.o): Don't depend on charset.h.
2310 (casetab.o): Depend on character.h.
2311 (ccl.o): Depend on composite.h.
2312 (chartab.o): Depend on ccl.h.
2313 (cm.o): Depend on dispextern.h.
2314 (cmds.o): Depend on systime.h, coding.h, frame.h, and composite.h.
2315 (coding.o): Don't depend on $(INTERVALS_H).
2316 (composite.o): Don't depend on dispextern.h explicitly (it's in
2317 $(INTERVALS_H)). Depend on ccl.h.
2318 (data.o): Depend on systime.h, coding.h, composite.h,
2319 dispextern.h, font.h, and ccl.h.
2320 (dired.o): Depend on composite.h.
2321 (dispnew.o): Depend on coding.h. Don't depend explicitly on
2322 composite.h (it's in $(INTERVALS_H)).
2323 (doc.o): Depend on systime.h, coding.h, and composite.h.
2324 (editfns.o): Don't depend explicitly on dispextern.h.
2325 (emacs.o): Depend on frame.h and coding.h.
2326 (eval.o): Depend on coding.h, composite.h, and xterm.h.
2327 (fileio.o): Depend on frame.h and commands.h. Don't depend
2328 explicitly on dispextern.h.
2329 (filelock.o): Don't depend on epaths.h and charset.h. Depend on
2330 composite.h.
2331 (fns.o): Don't depend on termhooks.h.
2332 (font.o): Depend on buffer.h, composite.h, fontset.h, and xterm.h.
2333 (fontset.o): Depend on blockinput.h, atimer.h, systime.h,
2334 coding.h, $(INTERVALS_H), window.h, xterm.h.
2335 (frame.o): Depend on coding.h, composite.h, termhooks.h, and ccl.h.
2336 (fringe.o): Depend on blockinput.h, atimer.h, and systime.h.
2337 (ftfont.o): Depend on blockinput.h, atimer.h, systime.h, coding.h,
2338 fontset.h, ccl.h, and ftfont.h.
2339 (ftxfont.o): Depend on atimer.h, systime.h, fontset.h, and ccl.h.
2340 (gtkutil.o): Depend on dispextern.h and composite.h.
2341 (image.o): Depend on epaths.h, character.h, coding.h, composite.h,
2342 termhooks.h, and ccl.h.
2343 (indent.o): Depend on systime.h, coding.h, and $(INTERVALS_H).
2344 (intervals.o): Depend on systime.h and coding.h.
2345 (keyboard.o): Depend on composite.h and coding.h.
2346 (keymap.o): Depend on coding.h and frame.h.
2347 (lread.o): Depend on systime.h, frame.h, blockinput.h, and atimer.h.
2348 (macros.o): Depend on systime.h, coding.h, and composite.h.
2349 (menu.o): Depend on systime.h, coding.h, composite.h, window.h,
2350 and atimer.h.
2351 (minibuf.o): Depend on systime.h and coding.h. Don't depend on
2352 dispextern.h explicitly.
0b5397c2
SM
2353 (print.o): Depend on termhooks.h, coding.h, and ccl.h.
2354 Don't depend explicitly on dispextern.h and composite.h.
3f670e9a
EZ
2355 (process.o): Depend on character.h, xgselect.h, and sysselect.h.
2356 (regex.o): Don't depend on charset.h.
2357 (scroll.o): Depend on systime.h, coding.h, composite.h, and window.h.
2358 (search.o): Don't depend explicitly on composite.h.
2359 (sound.o): Depend on atimer.h and systime.h.
2360 (syntax.o): Don't depend explicitly on composite.h.
2361 (sysdep.o): Depend on coding.h and composite.h.
2362 (term.o): Depend on xterm.h and buffer.h.
2363 (terminal.o): Depend on dispextern.h, composite.h, and systime.h.
2364 (textprop.o): Don't depend on dispextern.h explicitly.
2365 (undo.o): Depend on dispextern.h.
2366 (window.o): Depend on coding.h and termhooks.h. Don't depend on
2367 dispextern.h and composite.h explicitly.
2368 (xdisp.o): Depend on ccl.h.
2369 (xfaces.o): Depend on coding.h and ccl.h.
2370 (xfns.o): Depend on $(INTERVALS_H) and ccl.h.
2371 (xfont.o): Depend on atimer.h, systime.h, fontset.h, and ccl.h.
2372 (xftfont.o): Depend on atimer.h, systime.h, fontset.h, ccl.h, and
2373 ftfont.h.
2374 (xgselect.o): New dependency.
2375 (xmenu.o): Depend on composite.h, keymap.h, and sysselect.h.
2376 (xselect.o): Depend on keyboard.h, coding.h, and composite.h.
2377 (xsettings.o): Depend on dispextern.h, keyboard.h, systime.h,
2378 coding.h, composite.h, blockinput.h, atimer.h, and termopts.h.
2379 (xsmfns.o): Depend on frame.h and dispextern.h.
2380 (xterm.o): Depend on intervals.h, keymap.h, xgselect.h, and
2381 sysselect.h.
2382
7a6f7fea
AS
23832009-12-19 Andreas Schwab <schwab@linux-m68k.org>
2384
2385 * font.c (Fclear_font_cache): Pass correct cache argument to
2386 font_clear_cache.
2387
f4c21026
AS
23882009-12-16 Andreas Schwab <schwab@linux-m68k.org>
2389
2390 * Makefile.in (prefix-args${EXEEXT}): Don't compile prefix-args.c
2391 twice.
2392
f7ab0997
CY
23932009-12-15 Chong Yidong <cyd@stupidchicken.com>
2394
2395 * xdisp.c (decode_mode_spec): Inhibit garbage collection when
2396 calling file-remote-p. Reported by Jim Meyering.
2397
fa8e045a
MA
23982009-12-15 Michael Albinus <michael.albinus@gmx.de>
2399
2400 * dbusbind.c (xd_retrieve_arg): Reorder declarations in order to
777013f2 2401 avoid compiler warnings. (Bug #5217)
fa8e045a 2402
a63dba42
KH
24032009-12-14 Kenichi Handa <handa@m17n.org>
2404
2405 * coding.c (decode_coding_iso_2022): Ignore ISO_CODE_SS2_7 (0x19)
2406 in 8-bit encoding.
2407
5ce6e4f4 24082009-12-13 Pat Thoyts <patthoyts@users.sourceforge.net> (tiny change)
36acb2a7
JD
2409
2410 * xfns.c (x_create_tip_frame): Set the extended window manager hint for
2411 tooltip windows.
2412
223e5fc6
JD
24132009-12-13 Jan Djärv <jan.h.d@swipnet.se>
2414
36acb2a7
JD
2415 * xterm.h (struct x_display_info): Add Xatom_net_window_type_tooltip and
2416 Xatom_net_window_type.
2417
2418 * xterm.c (x_term_init): Initialize Xatom_net_window_type_tooltip and
2419 Xatom_net_window_type.
2420
b8f00677
JD
2421 * xterm.c (my_log_handler): New function.
2422 (x_term_init): Set my_log_handler as log handler during gtk_init
5ce6e4f4 2423 so we can filter out buggy messages. (Bug #5120).
b8f00677 2424
e5f0bc9a
JD
2425 * xterm.c (xg_scroll_callback): Parameter list changed,
2426 use parameter GtkScrollType to determine scroll/line/page.
2427 Only allow dragging if a button < 4 is grabbed (bug #5177).
2428 (xg_end_scroll_callback): New function.
2429 (x_create_toolkit_scroll_bar): Pass xg_end_scroll_callback to
2430 xg_create_scroll_bar.
2431
2432 * gtkutil.c (xg_gtk_scroll_destroy): Remove XG_LAST_SB_DATA handling.
2433 (scroll_end_callback): Remove.
2434 (xg_create_scroll_bar): Add parameter end_callback, bind it to
2435 button-release-event. Replace value-changed event with change-value,
2436 bug #5177,
2437 (xg_event_is_for_scrollbar): Only return true if button is less than 4,
2438 bug #5177.
2439
2440 * gtkutil.h (XG_LAST_SB_DATA): Remove.
2441 (xg_create_scroll_bar): Add GCallback end_callback.
2442
223e5fc6
JD
2443 * xftfont.c (QClcdfilter): New variable.
2444 (xftfont_open): Parse constant names for RGBA, HINT_STYLE and LCDFILTER.
2445 (syms_of_xftfont): Initialize QClcdfilter.
2446
3c055b77
JD
24472009-12-12 Jan Djärv <jan.h.d@swipnet.se>
2448
2449 * xsettings.c (struct xsettings): Add member seen.
2450 (parse_xft_settings): Update member seen with what we have read.
ba68c0b0 2451 Return non-zero if Xft-settings have been parsed, 0 otherwise.
3c055b77
JD
2452 (apply_xft_settings): Only update Xft settings with what member seen
2453 indicates as new.
2454
05fe33ff
EZ
24552009-12-12 Eli Zaretskii <eliz@gnu.org>
2456
2457 * dispextern.h (struct text_pos): Use EMACS_INT;
2458 (struct glyph): Use EMACS_INT for charpos.
2459 (struct it): Use EMACS_INT for stop_charpos, end_charpos,
2460 region_beg_charpos, region_end_charpos,
2461 redisplay_end_trigger_charpos, and also for
2462 iterator_stack_entry.end_charpos and
2463 iterator_stack_entry.stop_charpos.
2464
e8d7886a
JD
24652009-12-12 Jan Djärv <jan.h.d@swipnet.se>
2466
5ce6e4f4 2467 * gtkutil.c (scroll_end_callback): New function (bug #5177).
e8d7886a
JD
2468 (xg_create_scroll_bar): Call scroll_end_callback on button release
2469 event (bug #5177).
2470 (xg_event_is_for_scrollbar): != replaced with ==.
2471
d0db2ec8
KH
24722009-12-12 Kenichi Handa <handa@m17n.org>
2473
2474 * ftfont.c (struct ftfont_info): New member matrix.
2475 (ftfont_open): Setup xftfont_info->matrix.
2476 (MFLTFontFT): New member matrix.
2477 (FLOOR, CEIL, ROUND): New macros.
2478 (ftfont_get_metrics): Handle matrix transformation.
2479 (ftfont_shape_by_flt): New arg matrix. Callers changed.
2480
2481 * xftfont.c (struct xftfont_info): New member matrix.
2482 (xftfont_open): Setup xftfont_info->matrix.
2483
24842009-12-10 Kenichi Handa <handa@m17n.org>
2485
2486 * xdisp.c (append_space_for_newline): Consider face-remapping.
2487
2cc7b62f
AS
24882009-12-09 Andreas Schwab <schwab@linux-m68k.org>
2489
b87dd913
AS
2490 * xsettings.c: Include "keyboard.h".
2491
eba5eb94
AS
2492 * gtkutil.c (xg_tool_bar_proxy_help_callback): Fix missing return.
2493
2cc7b62f
AS
2494 Fix implicit function declarations.
2495 * cmds.c: Include "frame.h".
2496 * frame.c: Include "font.h" also if !HAVE_WINDOW_SYSTEM.
2497 * frame.h: Move declaration of delete_frame outside of
2498 HAVE_WINDOW_SYSTEM.
2499
a4ef73c8
CY
25002009-12-09 Ken Brown <kbrown@cornell.edu> (tiny change)
2501
2502 * s/cygwin.h (G_SLICE_ALWAYS_MALLOC): New variable.
2503
2504 * emacs.c (main): Set the G_SLICE environment variable for Cygwin
2505 GTK builds.
2506
944a300c
AS
25072009-12-07 Andreas Schwab <schwab@linux-m68k.org>
2508
2509 * unexelf.c (unexec): Don't search for .data twice.
2510
022eef62
CY
25112009-12-05 Chong Yidong <cyd@stupidchicken.com>
2512
426ac949
CY
2513 * xdisp.c (push_display_prop): Don't set avoid_cursor_p. Return 0
2514 if push failed.
2515 (handle_line_prefix): Set avoid_cursor_p here. Check return value
2516 of push_display_prop (Bug#5000).
2517
022eef62
CY
2518 * xfaces.c (Fx_family_fonts): Handle 2009-07-14 change to return
2519 value of font_list_entities (Bug#5085).
2520
be95bee9
JB
25212009-12-04 Juanma Barranquero <lekktu@gmail.com>
2522
2523 Fix `string-to-number' to deal consistently with integers and floats.
2524 * lread.c (isfloat_string): New argument ignore_trailing to accept all
2525 trailing characters, not just whitespace.
2526 (read1): Pass new arg 0 to keep old behavior.
2527 * data.c (Fstring_to_number): Pass 1 to isfloat_string to ignore
2528 trailing chars, as it is already done for integers. Doc fixes.
2529 * lisp.h (isfloat_string): Add new arg to declaration of isfloat_string.
2530
24c2d7ce
EZ
25312009-12-04 Eli Zaretskii <eliz@gnu.org>
2532
0b5397c2
SM
2533 * dispextern.h (enum prop_idx) <AUTO_COMPOSED_PROP_IDX>:
2534 Delete unused enumeration value.
24c2d7ce 2535
7e694795
EZ
25362009-12-03 Eli Zaretskii <eliz@gnu.org>
2537
2538 * Makefile.in (lisp, shortlisp): Replace indian.el with indian.elc.
2539
84b31826
SM
25402009-12-03 Daniel Hackney <dan@haxney.org> (tiny change)
2541
2542 * process.c (Fmake_network_process): Fix up the tests for
2543 "connectionless socket", so they DTRT for seqpacket sockets as well.
2544
f00c449b
SM
25452009-12-03 Stefan Monnier <monnier@iro.umontreal.ca>
2546
2547 * process.c (Qseqpacket): New symbol.
2548 (HAVE_SEQPACKET): New macro.
2549 (Fmake_network_process): Accept new :type `seqpacket'.
2550 (init_process): Add `seqpacket' feature when applicable.
2551 (syms_of_process): Initialize Qseqpacket.
2552
8096a0ff
YM
25532009-12-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2554
2555 * font.c (font_load_for_lface, font_open_by_name): Don't store name
2556 if entity is Qnil.
2557
3e0de07f
SM
25582009-11-30 Stefan Monnier <monnier@iro.umontreal.ca>
2559
2560 * print.c (print_preprocess): Preprocess the key_and_value table of
2561 hashtables, even tho they're "hidden" (bug#5082).
2562
abeafb2a
JD
25632009-11-29 Jan Djärv <jan.h.d@swipnet.se>
2564
2565 * frame.c (frame_make_pointer_invisible)
2566 (frame_make_pointer_visible): Declare f before statements.
2567
4bf47195
EZ
25682009-11-28 Eli Zaretskii <eliz@gnu.org>
2569
2570 * Makefile.in [!AUTO_DEPEND]: Remove outdated comment about
2571 omitted dependencies on lisp.h.
2572
c525b3f2
JD
25732009-11-27 Jan Djärv <jan.h.d@swipnet.se>
2574
ece2d4ed
JD
2575 * xftfont.c (xftfont_end_for_frame): Just return if dpyinfo->display
2576 is NULL.
2577
2578 * xterm.c (x_delete_terminal): Set dpyinfo->display to NULL.
2579
2580 * frame.c (frame_make_pointer_invisible)
3e0de07f 2581 (frame_make_pointer_visible): Just return if there isn't any selected
ece2d4ed
JD
2582 frame.
2583
c525b3f2
JD
2584 * search.c (simple_search): Remove warning by making *p const.
2585
2f00e299
DN
25862009-11-26 Dan Nicolaescu <dann@ics.uci.edu>
2587
2588 * xdisp.c (power_letter): Remove duplicate const.
2589
084b049b
JD
25902009-11-25 Jan Djärv <jan.h.d@swipnet.se>
2591
a1fadc6f
JD
2592 * term.c (delete_tty): Remove check for last terminal (bug#4970).
2593
5ce6e4f4 2594 * xsettings.c: Revert changes from 2009-11-23. Just use Xft
084b049b
JD
2595 defaults (bug #5025).
2596
28259cac
SM
25972009-11-24 Stefan Monnier <monnier@iro.umontreal.ca>
2598
2599 * insdel.c (adjust_markers_for_delete): Move it in the
2600 right direction! (bug#4803)
2601
e8e14166
YM
26022009-11-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2603
2604 * font.c (font_open_entity): Don't use ASET if font_object is Qnil.
2605
2606 * xterm.c (x_new_font): Update f->scroll_bar_actual_width.
2607
86677b58
GM
26082009-11-24 Glenn Morris <rgm@gnu.org>
2609
2610 * frame.c (focus-follows-mouse): Mention mouse-autoselect-window.
2611
581e51e8
JD
26122009-11-23 Jan Djärv <jan.h.d@swipnet.se>
2613
cfc86c7a
JD
2614 * Makefile.in: Must create deps for ecrt0.o in its rule.
2615
581e51e8
JD
2616 * xfns.c (Fx_select_font): Try to convert Fontconfig name to Gtk name
2617 because that is what Gtk+ font dialog understands.
2618
2619 * font.c (font_make_object, Fcopy_font_spec): Use Fcopy_alist instead
2620 of Fcopy_sequence.
2621 (font_open_by_name): Put name given into QCname for font-object returned.
2622
2623 * frame.c (x_set_font): Save original font name as frame parameter
2624 font-parameter.
2625
2626 * xsettings.c (set_default_xft_settings): New function.
2627 (init_xfd_settings): Call set_default_xft_settings if no XSETTINGS window
2628 is found.
2629
8b264ecb
AS
26302009-11-22 Andreas Schwab <schwab@linux-m68k.org>
2631
2632 * search.c (simple_search): Avoid CHAR_TO_BYTE in inner loop when
2633 searching backwards through multibyte buffer.
2634
872870b2
JD
26352009-11-21 Jan Djärv <jan.h.d@swipnet.se>
2636
2637 * xterm.c: #include xgselect.h.
2638 (x_initialize): Call xgselect_initialize.
2639
2640 * xsettings.c (something_changedCB): C++ comments => C comments.
2641 (init_gconf): Do not deal with any GLib file descriptors, xg_select
2642 does that now.
2643
2644 * gtkutil.c (xg_timer, xg_process_timeouts, xg_start_timer)
2645 (xg_stop_timer, menu_grab_callback_cnt, menu_grab_callback)
2646 (scroll_bar_button_cb): Remove.
5ce6e4f4 2647 (create_menus): C++ comments => C comments. Don't bind grab-notify
872870b2
JD
2648 event.
2649 (xg_create_scroll_bar): Don't bind button-press-event and
2650 button-release-event.
2651
2652 * process.c: Include xgselect.h if defined (USE_GTK) ||
2653 defined (HAVE_GCONF).
2654 (wait_reading_process_output): Call xg_select for the same condition.
2655
2656 * xgselect.c (xg_select): New function to better integrate with
2657 GLib/Gtk event handling. Needed if GConf daemon dies/restarts.
2658
2659 * xgselect.h: New file, declare xg_select, xgselect_initialize.
2660
2661 * Makefile.in (XOBJ): Add xgselect.o.
2662
62a6e103
AS
26632009-11-21 Andreas Schwab <schwab@linux-m68k.org>
2664
0b5397c2
SM
2665 * character.h (STRING_CHAR, STRING_CHAR_AND_LENGTH):
2666 Remove ignored second argument. All callers changed.
62a6e103
AS
2667 * regex.c (STRING_CHAR, STRING_CHAR_AND_LENGTH, RE_STRING_CHAR)
2668 (RE_STRING_CHAR_AND_LENGTH): Likewise.
2669 * xdisp.c (string_char_and_length): Likewise.
2670
b0ca0f33
DN
26712009-11-21 Dan Nicolaescu <dann@ics.uci.edu>
2672
2673 * xterm.c (x_new_font):
2674 * print.c (print_object):
2675 * cmds.c (Fself_insert_command): Move declarations before statements.
2676
dd5a6279
CY
26772009-11-20 Ken Brown <kbrown@cornell.edu> (tiny change)
2678
2679 * s/cygwin.h: Remove unneeded linker flags.
2680
4a8e097d
JD
26812009-11-20 Jan Djärv <jan.h.d@swipnet.se>
2682
0d1d0d26
JD
2683 * xfns.c (x_default_font_parameter): Call xsettings_get_system_font.
2684
2685 * xsettings.h: Declare xsettings_get_system_font.
2686
2687 * xsettings.c (xsettings_get_system_font): New function.
2688 (init_gconf): No use initiating gconf unless we have Xft also.
2689 (syms_of_xsettings): Only provide system-font-setting if HAVE_XFT and
2690 HAVE_GCONF.
2691
4a8e097d
JD
2692 * gtkutil.c (xg_modify_menubar_widgets): If menubar is totally empty
2693 add a blank entry so it doesn't collapse into nothing.
2694
8ab1650e
SM
26952009-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
2696
2697 * lread.c (Funintern): Comment out last change.
2698
82c602f0
RS
26992009-11-19 Richard Stallman <rms@gnu.org>
2700
2701 * lread.c (Funintern): Error if symbol is t or nil.
2702
87e32266
SM
27032009-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
2704
2705 * insdel.c (make_gap_larger): Don't make as many assumptions about the
2706 representation of Lisp integers.
2707 Reported by MJ Chan <mjchan.inbox@gmail.com>.
2708
1b9ac145
AS
27092009-11-17 Andreas Schwab <schwab@linux-m68k.org>
2710
2711 * lisp.h: Remove declaration of Ffont_get_system_font.
2712 * xfns.c: Move include of "xsettings.h".
2713 * xsettings.h: Use EXFUN to declare Ffont_get_system_font.
2714
dfb3c4c6
JD
27152009-11-17 Jan Djärv <jan.h.d@swipnet.se>
2716
87e32266
SM
2717 * xsettings.c (something_changedCB, Ffont_get_system_font):
2718 Check use_system_font.
dfb3c4c6
JD
2719 (syms_of_xsettings): DEFVAR font-use-system-font.
2720
9370c1d8
AS
27212009-11-17 Andreas Schwab <schwab@linux-m68k.org>
2722
25fe851a
AS
2723 * xfns.c (x_default_font_parameter): Remove dead assignment.
2724
9370c1d8
AS
2725 * lisp.h (Fbyteorder, init_font, Ffont_get_system_font): Declare.
2726
637fa988
JD
27272009-11-17 Jan Djärv <jan.h.d@swipnet.se>
2728
87e32266 2729 * xftfont.c (xftfont_fix_match): Older versions of fontconfig do
21050de1 2730 not have FC_LCD_*. #define them if not there.
a6eb20d8 2731
87e32266 2732 * xsettings.c (parse_xft_settings, apply_xft_settings): Ditto.
a6eb20d8 2733
637fa988
JD
2734 * xterm.h (struct x_display_info): Add atoms and Window for xsettings.
2735
2736 * xterm.c (handle_one_xevent): Call xft_settings_event for
2737 ClientMessage, PropertyNotify and DestroyNotify.
2738 (x_term_init): If we have XFT, get DPI from Xft.dpi.
2739 Call xsettings_initialize.
2740
2741 * xftfont.c (xftfont_fix_match): New function.
2742 (xftfont_open): Call XftDefaultSubstitute before XftFontMatch.
2743 Call xftfont_fix_match after XftFontMatch.
2744
2745 * xfont.c (xfont_driver): Initialize all members.
2746
87e32266
SM
2747 * xfns.c (x_default_font_parameter):
2748 Try font from Ffont_get_system_font.
637fa988
JD
2749 Do not get font from x_default_parameter if we got one from
2750 Ffont_get_system_font.
87e32266 2751 (Fx_select_font): Get the defaut font name from :name of FRAME_FONT(f).
637fa988
JD
2752
2753 * w32font.c (w32font_driver): Initialize all members.
2754
2755 * termhooks.h (enum event_kind): CONFIG_CHANGED_EVENT is new.
2756
2757 * lisp.h: Declare syms_of_xsettings.
2758
87e32266
SM
2759 * keyboard.c (kbd_buffer_get_event, make_lispy_event):
2760 Handle CONFIG_CHANGED_EVENT.
637fa988
JD
2761
2762 * ftfont.c (ftfont_filter_properties): New function.
2763
2764 * frame.c (x_set_font): Remove unused variable lval.
2765
87e32266 2766 * font.h (struct font_driver): Add filter_properties.
637fa988
JD
2767
2768 * font.c (font_put_extra): Don't return if val is nil, it means
2769 boolean option is off.
2770 (font_parse_fcname): Collect all extra properties in extra_props
2771 and call filter_properties for all drivers with extra_props and
2772 font as parameter.
87e32266
SM
2773 (font_open_entity): Do not use cache, it does not pick up new
2774 fontconfig settings like hinting.
637fa988
JD
2775 (font_load_for_lface): If spec had a name in it, store it in entity.
2776
2777 * emacs.c (main): Call syms_of_xsettings
2778
2779 * config.in: HAVE_GCONF is new.
2780
2781 * Makefile.in (GCONF_CFLAGS, GCONF_LIBS): New variables for HAVE_GCONF.
2782 xsettings.o is new.
2783
5a942932
KH
27842009-11-17 Kenichi Handa <handa@m17n.org>
2785
2786 * xdisp.c (x_produce_glyphs): Consider face-remapping when falling
2787 back to the default font in case that no suitable font is found.
2788
b7c7a4d1
SM
27892009-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
2790
2791 * menu.c (Fx_popup_menu) [HAVE_NS]: Use generic code for window edge.
2792 Suggested by Chad Brown <yandros@mit.edu>.
2793 (push_menu_item): Use MENU_ITEMS_ITEM_* names.
2794
072f1e39
JD
27952009-11-16 Jan Djärv <jan.h.d@swipnet.se>
2796
2797 * xmenu.c (x_menu_wait_for_event): Call XFlush before select.
2798
5d1e70a2
AS
27992009-11-14 Andreas Schwab <schwab@linux-m68k.org>
2800
87e32266 2801 * Makefile.in: Ignore errors from mkdir when creating deps directory.
5d1e70a2 2802
a53cfbe5
JD
28032009-11-14 Jan Djärv <jan.h.d@swipnet.se>
2804
473a99b7
JD
2805 * gtkutil.c (xg_update_frame_menubar): Do nothing if menubar already
2806 has a parent.
2807
a53cfbe5 2808 * Makefile.in: If AUTO_DEPEND is defined, make gcc generate
5ce6e4f4 2809 dependency files in deps/. Include those files into Makefile.
a53cfbe5
JD
2810
2811 * config.in: Generated (AUTO_DEPEND).
2812
f04bb9b2
MA
28132009-11-13 Michael Albinus <michael.albinus@gmx.de>
2814
b7c7a4d1 2815 * dbusbind.c (Vdbus_registered_objects_table): Rename from
f04bb9b2
MA
2816 Vdbus_registered_functions_table, because it contains also
2817 properties. Fix docstring.
b7c7a4d1 2818 (Fdbus_call_method, Fdbus_call_method_asynchronously): Fix docstring.
f04bb9b2 2819
8f11f7ec
SM
28202009-11-13 Stefan Monnier <monnier@iro.umontreal.ca>
2821
2822 * alloc.c (mark_object): Don't reprocess marked strings.
2823 Check vector's markbit earlier. Adjust calls to mark_vectorlike.
2824 (mark_vectorlike, mark_char_table): Assume the object is unmarked.
2825
8a605fe8
KH
28262009-11-13 Kenichi Handa <handa@m17n.org>
2827
8f11f7ec 2828 * category.c (word_boundary_p): Adjust for the change of the
8a605fe8
KH
2829 semantics of Vword_combining_categories.
2830 (Vword_combining_categories): Describe the slight change of the
2831 semantics.
2832
241c4680
EZ
28332009-11-13 Eli Zaretskii <eliz@gnu.org>
2834
2835 * menu.c (Fx_popup_menu): Call Fx_hide_tip only if HAVE_WINDOW_SYSTEM.
2836
2837 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Revert last change.
2838
5d58e44c
SM
28392009-11-12 Stefan Monnier <monnier@iro.umontreal.ca>
2840
2841 * xdisp.c (syms_of_xdisp): Fix typo in last change.
2842
5e13f9d3
JB
28432009-11-12 Juanma Barranquero <lekktu@gmail.com>
2844
2845 * makefile.w32-in: Update dependencies; add dependencies to lisp.h.
2846
cf54c754
DR
28472009-11-11 David Reitter <david.reitter@gmail.com>
2848
2849 * menu.c (Fx_popup_menu): Remove left-over debugging code and rename
2850 variables to fix 2009-11-09 change.
2851
a4ada374
DN
28522009-11-11 Dan Nicolaescu <dann@ics.uci.edu>
2853
91433552
DN
2854 * process.c (ifflag_def): Make flag_sym constant.
2855 (Fnetwork_interface_info): Use a constant pointer.
2856 (ifflag_table):
2857 * xfns.c (cursor_bits):
2858 * xdisp.c (power_letter):
2859 * termcap.c (speeds, esctab):
2860 * sysdep.c (baud_convert):
2861 * keyboard.c (lispy_accent_codes, modifier_names):
2862 * image.c (xbm_format, xpm_format, pbm_format, png_format)
2863 (jpeg_format, tiff_format, gif_format, svg_format)
2864 (interlace_start, interlace_increment, gs_format):
2865 * gtkutil.c (separator_names):
2866 * fringe.c (swap_nibble):
2867 * fns.c (base64_value_to_char, base64_char_to_value):
2868 * fileio.c (make_temp_name_tbl):
2869 * coding.c (suffixes): Make constant.
2870
f4265f6c
DN
2871 * frame.c (make_initial_frame):
2872 * buffer.c (init_buffer_once): Use make_pure_c_string instead of
2873 build_string.
2874 * alloc.c (syms_of_alloc): Build Vmemory_signal_data in pure memory.
2875
04420943
DN
2876 * s/freebsd.h:
2877 * s/netbsd.h: Remove code referring to non-existent file: unexsunos4.o.
2878
0a5d24ae
DN
2879 * Makefile.in: Add dependencies to lisp.h. Remove dependencies
2880 for non-existent files: unexmips.c, unexnext.c, abbrev.c, malloc.c.
2881
a4ada374
DN
2882 * xfns.c (syms_of_xfns): Use make_pure_string instead of build_string.
2883 * xterm.c (syms_of_xterm):
2884 * xfaces.c (syms_of_xfaces):
2885 * xdisp.c (syms_of_xdisp):
2886 * lread.c (syms_of_lread):
2887 * keyboard.c (syms_of_keyboard): Use make_pure_c_string instead of
2888 build_string.
91433552 2889
a4ada374
DN
2890 * doc.c (Fsnarf_documentation): Purecopy Vbuild_files.
2891
af98fc7f
SM
28922009-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
2893
8ab1650e 2894 * fns.c (Fplist_get): Merge the active and the commented out code.
af98fc7f 2895
e90292a9
JD
28962009-11-10 Jan Djärv <jan.h.d@swipnet.se>
2897
2898 * keyboard.h: Declare timer_check.
2899
2900 * keyboard.c (timer_check_2): New function that does what the old
2901 timer_check did.
2902 (timer_check): Call timer_check_2 until -1 or a non-zero time is
2903 returned, i.e. don't return -1 with timers pending.
2904
2905 * process.c: Remove extern declaration of timer_check.
2906
2907 * xmenu.c (x_menu_wait_for_event): Remove code that did a timeout
2908 even if timer_check returned -1.
2909
af98fc7f
SM
2910 * gtkutil.c (xg_dialog_response_cb): Data is now a struct
2911 xg_dialog_data.
e90292a9
JD
2912 (pop_down_dialog): Destroy widget (if any), cancel timer and unref
2913 the event loop.
2914 (xg_maybe_add_timer, xg_dialog_run): New functions (bug #4574).
2915 (xg_get_file_name, xg_get_font_name): Call xg_dialog_run (bug #4574).
2916 Destroy the dialog after xg_dialog_run.
2917
045b83c0
SM
29182009-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
2919
2920 * menu.c (Fx_popup_menu) [HAVE_NS]: Remove unused vars.
2921
1fb99a3a
JD
29222009-11-10 Jan Djärv <jan.h.d@swipnet.se>
2923
2924 * xmenu.c (xmenu_show): Must not be static after 2009-11-09 changes.
2925
04e452cb
JB
29262009-11-09 Juanma Barranquero <lekktu@gmail.com>
2927
2928 * menu.c [HAVE_NTGUI]: Declare current_popup_menu.
2929
ef7417fd
SM
29302009-11-09 Stefan Monnier <monnier@iro.umontreal.ca>
2931
2932 * menu.c (Fx_popup_menu): Consolidate versions from xmenu.c,
2933 w32menu.c, and nsmenu.m.
2934 Simplify the obsolete case where position is nil.
2935 (cleanup_popup_menu): New function, moved from nsmenu.m.
2936 (struct skp): Remove slot `notreal'.
2937 (single_keymap_panes, keymap_panes): Remove arg `notreal' and
2938 adjust callers.
2939 (single_menu_item): Adjust call to parse_menu_item.
2940 (syms_of_menu): Defsubr x-popup-menu.
2941 * menu.h (Vmenu_updating_frame): Consolidate declarations from *menu.c.
2942 (keymap_panes): Don't export any more.
2943 (mouse_position_for_popup, w32_menu_show, ns_menu_show)
2944 (xmenu_show): Declare.
2945 * keyboard.c (parse_menu_item): Remove arg `notreal'.
2946 (menu_bar_item, read_char_minibuf_menu_prompt): Adjust callers.
2947 * keyboard.h (parse_menu_item): Update declaration.
2948 * xmenu.c (Fx_popup_menu): Remove.
2949 (syms_of_xmenu): Don't defsubr x-popup-menu.
2950 * w32menu.c (Fx_popup_menu): Remove.
2951 (syms_of_w32menu): Don't defsubr x-popup-menu.
2952 * nsmenu.m (cleanup_popup_menu): Remove.
2953 (ns_menu_show): Rename from ns_popup_menu and remove all the code
2954 moved to menu.c's Fx_popup_menu.
2955 (Fx_popup_menu): Remove.
2956 (syms_of_nsmenu): Don't defsubr x-popup-menu, and don't initialize
2957 menu_items (it's done in menu.c already).
2958
424d6179
SM
29592009-11-08 Stefan Monnier <monnier@iro.umontreal.ca>
2960
2961 * keyboard.c (parse_menu_item): Handle `notreal' a bit earlier.
2962 Use `tem' less. Make sure KEYEQ holds a string or nil (bug#4879).
2963
c0df13a6 29642009-11-08 Chong Yidong <cyd@stupidchicken.com>
a20903d0
CY
2965
2966 * xmenu.c (Fx_popup_menu): Extract event timestamp. Pass it to
c0df13a6 2967 xmenu_show. Hide any tooltip before opening a menu.
a20903d0
CY
2968 (xmenu_show): New arg. Pass it to create_and_show_popup_menu.
2969 (create_and_show_popup_menu): New arg. Pass it to gtk_menu_popup.
2970
2de9f71c
SM
29712009-11-06 Stefan Monnier <monnier@iro.umontreal.ca>
2972
2973 Let integers use up 2 tags to give them one extra bit and thus double
2974 their range.
2975 * lisp.h (USE_2_TAGS_FOR_INTS): New macro.
2976 (LISP_INT_TAG, case_Lisp_Int, LISP_STRING_TAG, LISP_INT_TAG_P):
2977 New macros.
2978 (enum Lisp_Type): Use them. Give explicit values.
2979 (Lisp_Type_Limit): Remove.
2980 (XINT, XUINT, make_number) [!USE_LISP_UNION_TYPE]:
2981 (MOST_NEGATIVE_FIXNUM, MOST_POSITIVE_FIXNUM, INTMASK):
2982 Pay attention to USE_2_TAGS_FOR_INTS.
2983 (INTEGERP): Use LISP_INT_TAG_P.
2984 * fns.c (internal_equal): Simplify the default case.
2985 (sxhash): Use case_Lisp_Int.
2986 * data.c (wrong_type_argument): Don't check against Lisp_Type_Limit
2987 any more.
2988 (Ftype_of): Use case_Lisp_Int.
2989 (store_symval_forwarding): Take into account the fact that Ints can
2990 now have more than one tag.
2991 * buffer.c (syms_of_buffer): Use LISP_INT_TAG.
2992 buffer_slot_type_mismatch):
2993 * xfaces.c (face_attr_equal_p):
2994 * print.c (print_object):
2995 * alloc.c (mark_maybe_object, mark_object, survives_gc_p):
2996 Use case_Lisp_Int.
2997
323637a2
EZ
29982009-11-06 Eli Zaretskii <eliz@gnu.org>
2999
7ac65b38
EZ
3000 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce by further 30K.
3001
323637a2
EZ
3002 * alloc.c (make_pure_c_string): Fix last change to avoid compiler
3003 warning.
3004
e511451f
JD
30052009-11-06 Jan Djärv <jan.h.d@swipnet.se>
3006
3007 * gtkutil.c (xg_event_is_for_scrollbar): New function (bug#4870).
3008
3009 * gtkutil.h: Declare xg_event_is_for_scrollbar (bug#4870).
3010
3011 * xterm.c (handle_one_xevent): Call xg_event_is_for_scrollbar for
3012 ButtonPressRelease and MotionNotify (bug#4870).
3013
5e2327cf
DN
30142009-11-06 Dan Nicolaescu <dann@ics.uci.edu>
3015
5adc433e
DN
3016 * keymap.c (syms_of_keymap): Construct exclude_keys in pure memory.
3017
d67b4f80
DN
3018 * xterm.c (syms_of_xterm):
3019 * xselect.c (syms_of_xselect):
3020 * xmenu.c (syms_of_xmenu):
3021 * xfns.c (syms_of_xfns):
3022 * xfaces.c (syms_of_xfaces):
3023 * xdisp.c (syms_of_xdisp):
3024 * window.c (syms_of_window):
3025 * w32fns.c (syms_of_w32fns):
3026 * undo.c (syms_of_undo):
3027 * textprop.c (syms_of_textprop):
3028 * terminal.c (syms_of_terminal):
3029 * syntax.c (syms_of_syntax):
3030 * sound.c (syms_of_sound):
3031 * search.c (syms_of_search):
3032 * print.c (syms_of_print):
3033 * minibuf.c (syms_of_minibuf):
3034 * macros.c (syms_of_macros):
3035 * keymap.c (syms_of_keymap, initial_define_key)
3036 (initial_define_lispy_key):
3037 * keyboard.c (syms_of_keyboard):
3038 * insdel.c (syms_of_insdel):
3039 * image.c (syms_of_image):
3040 * fringe.c (syms_of_fringe):
3041 * frame.c (syms_of_frame):
3042 * fontset.c (syms_of_fontset):
3043 * fns.c (syms_of_fns):
3044 * fns.c (syms_of_fns):
3045 * fileio.c (syms_of_fileio):
3046 * fileio.c (syms_of_fileio):
3047 * eval.c (syms_of_eval):
3048 * doc.c (syms_of_doc):
3049 * dispnew.c (syms_of_display):
3050 * dired.c (syms_of_dired):
3051 * dbusbind.c (syms_of_dbusbind):
3052 * data.c (syms_of_data):
3053 * composite.c (syms_of_composite):
3054 * coding.c (syms_of_coding):
3055 * cmds.c (syms_of_cmds):
3056 * charset.c (define_charset_internal, syms_of_character):
3057 * ccl.c (syms_of_ccl):
3058 * category.c (syms_of_category, init_category_once):
3059 * casetab.c (syms_of_casetab):
3060 * casefiddle.c (syms_of_casefiddle):
3061 * callint.c (syms_of_callint):
3062 * bytecode.c (syms_of_bytecode):
3063 * buffer.c (keys_of_buffer, syms_of_buffer):
3064 * alloc.c (syms_of_alloc):
3065 * process.c (syms_of_process, init_process):
3066 * lread.c (syms_of_lread, init_obarray):
3067 * font.c (build_style_table):
3068 * emacs.c (syms_of_emacs, main): Replace calls to intern with
3069 intern_c_string, calls to make_pure_string with
3070 make_pure_c_string. Use pure_cons instead of Fcons.
3071
5e2327cf
DN
3072 * process.c (socket_options): Make it const.
3073 (set_socket_option, init_process): Use a const pointer.
3074
3075 * lread.c (intern_c_string): New function.
3076 (defvar_kboard, defvar_lisp, defvar_lisp_nopro, defvar_bool)
3077 (defvar_int): Uset it. Make the name const char*.
3078
3079 * lisp.h (defvar_kboard, defvar_lisp, defvar_lisp_nopro, defvar_bool)
3080 (defvar_int): Update prototypes.
3081 (DEFUN, EXFUN): Support for prototypes is now required.
3082 (intern_c_string): New prototype.
3083 (struct Lisp_Subr): Make symbol_name constant.
3084
3085 * font.c (struct table_entry): Remove unused member. Make NAMES
3086 constant.
3087 (weight_table, slant_table, width_table): Make constant.
3088
3089 * emacs.c (struct standard_args): Make name and longname constant.
3090
3091 * character.h (DEFSYM): Use intern_c_string.
3092
a56eaaef
DN
30932009-11-06 Stefan Monnier <monnier@iro.umontreal.ca>
3094
3095 * alloc.c (make_pure_c_string): New function.
3096
3097 * eval.c (Fautoload): Purecopy all arguments.
3098
f6a07420
KH
30992009-11-05 Kenichi Handa <handa@m17n.org>
3100
3101 * fileio.c (Finsert_file_contents): Be sure set coding-system of
3102 the buffer in case of replace.
3103
5d28d4b1
DN
31042009-11-04 Dan Nicolaescu <dann@ics.uci.edu>
3105
3106 * puresize.h (BASE_PURESIZE): Increase to 1620000.
3107
b349d111
SM
31082009-11-03 Stefan Monnier <monnier@iro.umontreal.ca>
3109
d528b1ce
SM
3110 * editfns.c (save_restriction_restore): Update the (pt/begv/vz)_markers
3111 when applicable (bug#4851).
3112
b349d111
SM
3113 * lisp.h: Make USE_LSB_TAG work with USE_LISP_UNION_TYPE.
3114 (P_): Support for prototypes is now required.
3115
c38eb027
CY
31162009-10-31 Chong Yidong <cyd@stupidchicken.com>
3117
3118 * frame.c (Fmake_frame_invisible, Fframe_visible_p): Doc fix
3119 (Bug#4827).
3120
0405f8d9
EZ
31212009-10-30 Eli Zaretskii <eliz@gnu.org>
3122
d528b1ce 3123 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Redefine to waste less pure space.
0405f8d9 3124
ca0a881a
DN
31252009-10-30 Dan Nicolaescu <dann@ics.uci.edu>
3126
3127 * puresize.h (BASE_PURESIZE): Increase to 1470000.
3128
d528b1ce
SM
3129 * lread.c (Fload): Purecopy the file name when building
3130 Vpreloaded_file_list.
ca0a881a 3131
47e0e0e4
JR
31322009-10-29 Jason Rumney <jasonr@wanchan.jasonrumney.net>
3133
3134 * w32fns.c (syms_of_w32fns): Change default value of
3135 w32-scroll-lock-modifier to nil. (Bug#2827)
3136
057bce6f
JB
31372009-10-26 Juanma Barranquero <lekktu@gmail.com>
3138
782a943e 3139 * minibuf.c (Fall_completions): Fix typos in docstring.
057bce6f 3140
242bc74c
AS
31412009-10-26 Andreas Schwab <schwab@redhat.com>
3142
3143 * puresize.h (PURESIZE_RATIO): Increase back to 10/6.
3144
522d013a
JB
31452009-10-26 Juanma Barranquero <lekktu@gmail.com>
3146
3147 * window.c (grow_mini_window): Comment out "delta >= 0" assertion.
3148 For delta < 0, skip check that only makes sense when the mini-window
3149 is going to be enlarged. (Bug#4534)
3150
18060980
CY
31512009-10-25 Chong Yidong <cyd@stupidchicken.com>
3152
3153 * keyboard.c (read_char_x_menu_prompt): Don't demand a prompt
3154 string in menu maps (Bug#4471).
3155
fec8f0fe
CY
31562009-10-24 Chong Yidong <cyd@stupidchicken.com>
3157
3158 * nsfns.m (ns_set_name, ns_set_name_as_filename): Don't call
3159 FRAME_NS_VIEW on terminal frames (Bug#4765).
3160
10d66ec0
AS
31612009-10-24 Andreas Schwab <schwab@linux-m68k.org>
3162
1cae01f7
AS
3163 * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_INTnn and
3164 DBUS_TYPE_UINTnn separately to get proper sign extension.
3165
58a12889
AS
3166 * dired.c (Ffile_attributes): Simplify now that FIXNUM_OVERFLOW_P
3167 can properly handle unsigned types.
d528b1ce 3168 (make_uid, make_gid): Remove.
58a12889 3169
987c9327
AS
3170 * lisp.h (FIXNUM_OVERFLOW_P): Fix last change to handle unsigned
3171 types again.
3172
522d013a 3173 * sysdep.c (procfs_ttyname): Fix sprintf format to match argument type.
10d66ec0
AS
3174 (system_process_attributes): Likewise.
3175
905a9ed3
DN
31762009-10-24 Dan Nicolaescu <dann@ics.uci.edu>
3177
3178 * keymap.c (Fmake_sparse_keymap): Purecopy the name.
3179
3180 * eval.c (Fautoload): Purecopy the filename. Simplify.
3181
3182 * category.c (Fdefine_category): Purecopy docstring.
3183
a599b3e8
AS
31842009-10-23 Andreas Schwab <schwab@linux-m68k.org>
3185
7b792fc9
AS
3186 * lisp.h (FIXNUM_OVERFLOW_P): Remove cast to avoid overflow.
3187
a599b3e8
AS
3188 * puresize.h (PURESIZE_RATIO): Decrease to 11/7.
3189
b35ac83e
CY
31902009-10-23 Chong Yidong <cyd@stupidchicken.com>
3191
3192 * window.c (Fwindow_edges, Fwindow_pixel_edges)
3193 (Fwindow_inside_edges, Fwindow_inside_pixel_edges): Doc fix
3194 (Bug#4775).
3195
e8903e00
SM
31962009-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
3197
3198 * fileio.c (syms_of_fileio): Initialize Vdirectory_sep_char.
3199 (init_fileio_once):
3200 * lisp.h (init_fileio_once): Remove.
3201 * emacs.c (main): Don't call init_fileio_once.
3202
8f43cbf3
DN
32032009-10-23 Dan Nicolaescu <dann@ics.uci.edu>
3204
3205 * puresize.h (BASE_PURESIZE): Increase to 1430000.
3206
26898943
AS
32072009-10-21 Andreas Schwab <schwab@linux-m68k.org>
3208
3209 * doprnt.c (doprnt): Fix overflow check.
3210
5c646d5a
JD
32112009-10-21 Jan Djärv <jan.h.d@swipnet.se>
3212
3132a7ea
JD
3213 * xterm.c (x_term_init): Remove XSynchronize call done for debugging.
3214
5c646d5a
JD
3215 * xterm.h (x_wait_for_event): Declare it.
3216
3217 * xterm.c (pending_event_wait): New variable.
3218 (handle_one_xevent): Set pending_event_wait.eventtype to 0 if we
3219 see pending_event_wait.eventtype.
3220 (handle_one_xevent): Don't change gravity when parent changes.
d528b1ce
SM
3221 (x_new_font): Call change_frame_size with new rows/columns before we
3222 try to resize the frame.
5c646d5a 3223 (x_wait_for_event): New function.
d528b1ce
SM
3224 (x_set_window_size_1): Don't change gravity unless change_gravity
3225 is set.
5c646d5a
JD
3226 Call XResizeWindow with FRAME_OUTER_WINDOW. If we are visible,
3227 don't change frame size, instead wait for the ConfigureNotify.
3228 (x_set_window_size): Call x_set_window_size_1 for USE_X_TOOLKIT also.
3229 (x_wm_set_size_hint): Remove ifdefs for USE_X_TOOLKIT.
3230 (x_initialize): Initialize pending_event_wait.
3231
3232 * xmenu.c (set_frame_menubar): Add internal border width to menu bar
3233 size.
3234
3235 * widget.c (EmacsFrameSetValues): Add comment.
3236 (EmacsFrameSetCharSize): Just call x_set_window_size.
3237
3238 * gtkutil.c (xg_frame_set_char_size): Flush events and call
3239 x_wait_for_event.
d528b1ce 3240 (flush_and_sync): Remove again.
5c646d5a
JD
3241 (xg_get_font_name): Suggest monospace if no previous font is known.
3242
e9c1637d
SM
32432009-10-20 Stefan Monnier <monnier@iro.umontreal.ca>
3244
3245 * character.c (char_resolve_modifier_mask): Don't resolve meta to the
46be764e 3246 8th bit, since that only made sense in the ASCII world (bug#4751).
e9c1637d 3247
5a72cccb
YM
32482009-10-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3249
3250 * xterm.c (XTread_socket) [!USE_GTK && HAVE_X_I18N]: Don't quit
3251 processing pending events when event is filtered for input method.
ab04798f 3252 (Bug#3681)
5a72cccb 3253
2629aa37
JB
32542009-10-20 Juanma Barranquero <lekktu@gmail.com>
3255
3256 * fns.c: Add #endif accidentally removed in previous change.
3257
c3417a74
DN
32582009-10-19 Dan Nicolaescu <dann@ics.uci.edu>
3259
3260 * fns.c: Remove code for unsupported system: MAC_OS.
3261 * image.c: Likewise. Include setjmp.h.
3262
9685cef2
JD
32632009-10-19 Jan Djärv <jan.h.d@swipnet.se>
3264
3265 * xterm.c (x_create_toolkit_scroll_bar): Don't allocate color for
3266 pixel -1 (bug #4742).
3267
d7306fe6
DN
32682009-10-19 Dan Nicolaescu <dann@ics.uci.edu>
3269
019d2c4c
DN
3270 * process.c (create_pty): Remove conditionals for no longer
3271 supported systems: UNIPLUS and RTU.
3272
ee6bacd4
DN
3273 * xterm.c:
3274 * xfns.c: Remove always true condition: XtSpecificationRelease >= 5.
3275
d7306fe6
DN
3276 * alloc.c: Do not define struct catchtag.
3277 * eval.c: Move struct catchtag definition ...
3278 * lisp.h: ... here.
3279
3280 * image.c: Move png.h #include earlier to avoid warnings.
3281
3282 * xterm.c:
3283 * xsmfns.c:
3284 * xselect.c:
3285 * xrdb.c:
3286 * xmenu.c:
3287 * xftfont.c:
3288 * xfont.c:
3289 * xfns.c:
3290 * xfaces.c:
3291 * xdisp.c:
3292 * window.c:
3293 * widget.c:
3294 * w32xfns.c:
3295 * w32uniscribe.c:
3296 * w32term.c:
3297 * w32select.c:
3298 * w32reg.c:
3299 * w32proc.c:
3300 * w32menu.c:
3301 * w32inevt.c:
3302 * w32heap.c:
3303 * w32font.c:
3304 * w32fns.c:
3305 * w32console.c:
3306 * w32.c:
3307 * w16select.c:
3308 * vm-limit.c:
3309 * unexsol.c:
3310 * unexec.c:
3311 * unexcw.c:
3312 * unexaix.c:
3313 * undo.c:
3314 * tparam.c:
3315 * textprop.c:
3316 * terminfo.c:
3317 * terminal.c:
3318 * termcap.c:
3319 * term.c:
3320 * syntax.c:
3321 * sound.c:
3322 * sheap.c:
3323 * search.c:
3324 * scroll.c:
3325 * region-cache.c:
3326 * regex.c:
3327 * ralloc.c:
3328 * process.c:
3329 * print.c:
b024548b
DN
3330 * nsterm.m:
3331 * nsselect.m:
3332 * nsmenu.m:
3333 * nsimage.m:
3334 * nsfont.m:
3335 * nsfns.m:
d7306fe6
DN
3336 * msdos.c:
3337 * minibuf.c:
3338 * menu.c:
3339 * marker.c:
3340 * macros.c:
3341 * keymap.c:
3342 * keyboard.c:
3343 * intervals.c:
3344 * insdel.c:
3345 * indent.c:
3346 * gtkutil.c:
3347 * ftxfont.c:
3348 * ftfont.c:
3349 * fringe.c:
3350 * frame.c:
3351 * fontset.c:
3352 * font.c:
3353 * fns.c:
3354 * floatfns.c:
3355 * filelock.c:
3356 * fileio.c:
3357 * emacs.c:
3358 * editfns.c:
3359 * dosfns.c:
3360 * doprnt.c:
3361 * doc.c:
3362 * dispnew.c:
3363 * dired.c:
3364 * dbusbind.c:
3365 * data.c:
3366 * composite.c:
3367 * coding.c:
3368 * cmds.c:
3369 * cm.c:
3370 * chartab.c:
3371 * charset.c:
3372 * character.c:
3373 * ccl.c:
3374 * category.c:
3375 * casetab.c:
3376 * casefiddle.c:
3377 * callproc.c:
3378 * callint.c:
3379 * bytecode.c:
3380 * buffer.c:
3381 * atimer.c: Include setjmp.h. (Bug#4643)
3382
fd5f21e6
SM
33832009-10-18 Stefan Monnier <monnier@iro.umontreal.ca>
3384
4c0354d7
SM
3385 Remove leftover table unibyte_to_multibyte_table.
3386 * character.c (unibyte_to_multibyte_table): Remove.
3387 (Funibyte_char_to_multibyte): Use MAKE_CHAR_MULTIBYTE.
3388 * charset.c (init_charset_once): Don't init unibyte_to_multibyte_table.
3389 * character.h (UNIBYTE_TO_CHAR): New macro.
3390 (MAKE_CHAR_MULTIBYTE): Use it.
3391 (unibyte_to_multibyte_table, unibyte_char_to_multibyte): Remove.
3392 * xdisp.c (get_next_display_element): USE ASCII_CHAR_P.
3393 (message_dolog, set_message_1):
3394 * search.c (Freplace_match):
3395 * editfns.c (Fcompare_buffer_substrings):
3396 * fns.c (Fcompare_strings): Use MAKE_CHAR_MULTIBYTE.
3397 (concat):
3398 * insdel.c (copy_text, count_size_as_multibyte):
3399 Use ASCII_CHAR_P and BYTE8_TO_CHAR.
3400 * term.c (produce_glyphs):
3401 * syntax.c (skip_chars): Use BYTE8_TO_CHAR.
3402 * regex.c (RE_CHAR_TO_MULTIBYTE):
3403 * cmds.c (internal_self_insert):
3404 * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use UNIBYTE_TO_CHAR.
3405
fd5f21e6
SM
3406 * cmds.c (internal_self_insert): `c' is already in "multibyte" form.
3407
4418646e
DN
34082009-10-17 Dan Nicolaescu <dann@ics.uci.edu>
3409
3410 * puresize.h (BASE_PURESIZE): Increase to 1310000.
3411
35f5c1d2
JB
34122009-10-16 Juanma Barranquero <lekktu@gmail.com>
3413
3414 * buffer.c (Fbuffer_name): Doc fix. (Bug#4728)
3415
a0cd8f6b
AR
34162009-10-15 Adrian Robert <Adrian.B.Robert@gmail.com>
3417
3418 * nsterm.h (NS_HAVE_NSINTEGER): Back out and augment with CGFloat,
3419 still needed under Tiger.
3420
3421 * nsterm.m (EmacsView-conversationIdentifier): Arg is long.
3422
3423 * m/amdx86-64.h: Don't set LIB_STANDARD and START_FILES under
3424 __Apple__.
3425
3426 * m/intel386.h: Remove DARWIN_OS/_LP64 special case.
3427
01a8d3fa
KH
34282009-10-15 Kenichi Handa <handa@m17n.org>
3429
3430 * print.c (print_object): Escape a symbol like "2E10" too.
3431
bf6c75c9 34322009-10-11 Adrian Robert <Adrian.B.Robert@gmail.com>
6e4780c5
JB
3433
3434 Cleanups and changes for 64-bit compile under Snow Leopard.
3435 Based on suggestions by Erik Charlebois.
bf6c75c9
AR
3436
3437 * nsfns.m (xw-color-values): Use CGFloat where appropriate.
3438
c5959062 3439 * nsfont.m (ns_char_width): Replace deprecated call.
bf6c75c9
AR
3440 (ns_findfonts, nsfont_list_family): Use long format in printf, and
3441 cast argument.
3442 (nsfont_open): Use ns_char_width() everywhere.
d528b1ce 3443 (ns_uni_to_glyphs, NSGlyphStorage): Use NS[U]Integer where appropriate.
bf6c75c9
AR
3444
3445 * nsgui.h (NSPoint, NSSize) [!__OBJC__]: Define and use CGFloat.
3446
3447 * nsimage.m (EmacsImage-setXBMColor:,-getPixelAtX:Y:): Use CGFloat
3448 where appropriate.
3449
3450 * nsmenu.m (EmacsMenu-addItemWithWidgetValue:): Use NSInteger
3451 where appropriate.
6e4780c5
JB
3452 (EmacsToolbar-addDisplayItemWithImage:idx:helpText:enabled:):
3453 Use stringWithUTF8String.
bf6c75c9
AR
3454 (EmacsDialogPanel-initWithContentRect:styleMask:): Fix signature.
3455
6e4780c5
JB
3456 * nsterm.h (EmacsView, EmacsMenu, EmacsToolbar, EmacsTooltip):
3457 Add formal protocol mention to inheritance.
bf6c75c9
AR
3458 [NS_HAVE_NSINTEGER]: Drop conditional and contents.
3459
6e4780c5
JB
3460 * nsterm.m (ns_color_to_lisp): Use CGFloat where appropriate.
3461 Fix printf format.
bf6c75c9
AR
3462 (ns_query_color): Use CGFloat where appropriate.
3463 (EmacsView<NSTextInput>, EmacsScroller): Fix method signatures.
ac146f82 3464 (EmacsScroller-mouseDown:): Use long format in printf, and cast
bf6c75c9
AR
3465 argument.
3466
3d87f118
AR
3467 * config.in (NS_HAVE_NSINTEGER): Drop.
3468
a95c8102
AR
3469 * dbusbind.c (dbus-method-return-internal)
3470 (dbus-method-error-internal): Use long format in printf, and cast
3471 argument.
3472
3473 * font.c (font_unparse_xlfd, font_unparse_fcname): Use long format
3474 in printf, and cast argument.
3475
6873acca 3476 * process.c (list_processes_1): Use long format in printf, and
a95c8102
AR
3477 cast argument.
3478
9ec6f100
GM
34792009-10-11 Glenn Morris <rgm@gnu.org>
3480
3481 * frame.c (Fframe_pixel_height): Doc fix. (Bug#4535)
3482
5be883cd
JD
34832009-10-08 Jan Djärv <jan.h.d@swipnet.se>
3484
3485 * gtkutil.c (create_menus): Call gtk_widget_set_size_request for
3486 menu bar with a small width so it doesn't enlarge the frame.
3487
d7a39b51
JB
34882009-10-08 Juanma Barranquero <lekktu@gmail.com>
3489
3490 * fontset.c (Fset_fontset_font): Fix typos in error messages.
3491
0c2b6f8e
GM
34922009-10-06 Glenn Morris <rgm@gnu.org>
3493
3494 * Makefile.in (emacs${EXEEXT}): Remove direct dependence on
3495 SOME_MACHINE_LISP (this enters indirectly via DOC).
3496
e02131a2
EZ
34972009-10-05 Eli Zaretskii <eliz@gnu.org>
3498
3499 * dired.c (Ffile_attributes): Doc fix. (Bug#4638)
3500
b4744254
EZ
35012009-10-04 Eli Zaretskii <eliz@gnu.org>
3502
3503 * xdisp.c (syms_of_xdisp) <unibyte-display-via-language-environment>:
3504 Doc fix.
3505
dbf64827
JB
35062009-10-03 Martin Rudalics <rudalics@gmx.at>
3507
3508 * window.c (Fdelete_window): Check WINDOW argument. (Bug#4618)
3509
e9a0aef8
MA
35102009-10-02 Michael Albinus <michael.albinus@gmx.de>
3511
d528b1ce 3512 * lisp.h (Qdelete_directory_internal): Remove, because it is not
e9a0aef8
MA
3513 used anymore outside fileio.c.
3514
3515 * w32fns.c (Fsystem_move_file_to_trash): Use delete-directory.
3516
64eb2b56
JB
35172009-10-01 Juanma Barranquero <lekktu@gmail.com>
3518
3519 * lisp.h (Qdelete_directory_internal):
3520 Declare, instead of Qdelete_directory.
3521
3522 * w32fns.c (Fsystem_move_file_to_trash): Use it.
3523
9d28c33e
SM
35242009-10-01 Stefan Monnier <monnier@iro.umontreal.ca>
3525
3526 * eval.c (Fcalled_interactively_p): Add `kind' argument.
3527
9d8f3bd9
MA
35282009-10-01 Michael Albinus <michael.albinus@gmx.de>
3529
9d28c33e 3530 * fileio.c (Fdelete_directory_internal): Rename from
9d8f3bd9
MA
3531 Fdelete_directory. It is not a command anymore. It has no file
3532 name handler.
3533
9694740b
SM
35342009-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
3535
3536 * xdisp.c (get_next_display_element): Use an enum in last change.
3537
748e162f
KH
35382009-09-28 Kenichi Handa <handa@m17n.org>
3539
9694740b 3540 * xdisp.c (get_next_display_element): Pay attention to
748e162f
KH
3541 unibyte_display_via_language_environment in handling
3542 Vnobreak_char_display.
3543
17efd58d
AR
35442009-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
3545
3546 * nsterm.h (ns_app_name): New extern variable.
3547
3548 * nsterm.m (ns_app_name): New variable.
3549 (ns_term_init): Set and use it.
3550 (ns_term_shutdown): Use it.
3551
3552 * nsmenu.m (ns_update_menubar): Use ns_app_name. Sync with xmenu.c.
3553 (EmacsMenu-clear:, ns_popup_dialog): Use ns_app_name.
3554
3555 * nsfns.m (ns_set_name_iconic, ns_set_name)
3556 (ns_set_name_as_filename, x-create-frame, ns-get-resource)
3557 (ns-set-resource): Use ns_app_name instead of NSProcessInfo call.
3558
9694740b
SM
3559 * menu.c (find_and_return_menu_selection) [HAVE_NS]:
3560 Remove double-casting in client_data comparison.
31c2d412 3561
3208cb35
YM
35622009-09-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3563
3564 * keyboard.c (make_lispy_event): Remember last wheel direction.
3565 (syms_of_keyboard) <wheel_syms>: Compute array size at compile time.
3566
b7d552d6
GM
35672009-09-26 Glenn Morris <rgm@gnu.org>
3568
3569 * Makefile.in (MSDOS_SUPPORT) [MSDOS]: Remove unneeded '/' in
3570 internal.elc. Add term/pc-win.elc.
3571 (WINDOW_SUPPORT) [HAVE_X_WINDOWS]: Add term/common-win.elc and
3572 term/x-win.elc.
3573 (WINNT_SUPPORT) [WINDOWSNT]: Add term/common-win.elc and
3574 term/w32-win.elc.
3575 (NS_SUPPORT): New.
3576 (lisp): Add NS_SUPPORT.
3577 (SOME_MACHINE_LISP): Add term/w32-win.elc and emacs-lisp/easymenu.elc.
3578
4ff670a8
DR
35792009-09-25 David Reitter <david.reitter@gmail.com>
3580
3581 * nsmenu.m (EmacsMenu-clear): Recognize application menu
3582 on Mac OS X 10.6+ (bug#4513).
3583
feabfb6c
JB
35842009-09-24 Juanma Barranquero <lekktu@gmail.com>
3585
3586 * frame.c (xrdb_get_resource): Return nil for empty string resources;
d528b1ce
SM
3587 some parts of Emacs code (like font selection) don't grok them.
3588 See http://lists.gnu.org/archive/html/emacs-devel/2009-09/msg00528.html
feabfb6c 3589
de59072a
AS
35902009-09-24 Andreas Schwab <schwab@redhat.com>
3591
3592 * coding.c (decode_coding_iso_2022): Fix operator precedence.
3593
a489517b
JB
35942009-09-24 Juanma Barranquero <lekktu@gmail.com>
3595
3596 * dired.c (Fdirectory_files): Fix typo in docstring.
3597
0592970c
AR
35982009-09-23 Adrian Robert <Adrian.B.Robert@gmail.com>
3599
3600 * nsterm.m (EV_TIMESTAMP, x_set_window_size)
3601 (EmacsApp-application:openFiles:): Remove GNUstep conditionals.
3602 (EmacsScroller-setPosition:portion:whole:): Remove -display call
3603 under GNUstep.
3604 (EmacsView-initFrameFromEmacs:): Set autoresizing mask.
3605
3606 * nsfont.m (ns_glyph_metrics): Remove GNUstep conditional for
3607 glyph advancement.
3608
48e8a88b
AR
36092009-09-22 Adrian Robert <Adrian.B.Robert@gmail.com>
3610
3611 * nsterm.m (CGContextSetFontRenderingMode): Drop declaration.
b3aac06a 3612 (EmacsScroller-mouseDown:): Use SCROLL_BAR_FIRST_DELAY.
48e8a88b
AR
3613
3614 * nsmenu.m (EmacsMenu-menuNeedsUpdate): Ignore if frame has been
3615 deleted (bug #4492).
3616
e14f0a78
AR
3617 * nsfont.m (Vns_reg_to_script): New lisp variable.
3618 (syms_of_nsfont): Declare it.
3619 (ns_registry_to_script): New function.
3620 (ns_get_req_script): Call it.
3621 (ns_findfonts): Don't give up on non-unicode registry.
3622
3623 * font.c (DEFAULT_ENCODING) [HAVE_NS]: Remove special case.
3624
5b650faa
SM
36252009-09-20 Tom Tromey <tromey@redhat.com>
3626
3627 * eval.c (find_handler_clause): Make stack-trace-on-error work in
3628 batch mode (bug#4228).
3629
a489517b 36302009-09-18 Rob Christie <robchristie@gmail.com> (tiny change)
0bae4e09
AR
3631
3632 * nsmenu.m (EmacsMenu-parseKeyEquiv:): Parse key equivalent more
a489517b 3633 carefully. (Bug #4339)
0bae4e09 3634
fcfe06f3
CY
36352009-09-18 Chong Yidong <cyd@stupidchicken.com>
3636
d798ba87 3637 * syntax.c (Fchar_syntax): Minor doc fix (Bug#4400).
fcfe06f3 3638
31642728
AR
36392009-09-18 Adrian Robert <Adrian.B.Robert@gmail.com>
3640
3641 * emacs.c (inhibit_x_resources): Update doc string for NS.
3642 (main) [HAVE_NS]: Don't process --no-init-file option. Remove
cff11156 3643 legacy code for -NXHost. Fix error printf in daemon case.
31642728
AR
3644
3645 * nsterm.h (ns_no_defaults): Remove.
3646
3647 * nsterm.m (ns_no_defaults): Remove.
3648 (ns_term_init): Switch ns_no_defaults -> inhibit_x_resources.
3649 (ns_use_qd_smoothing): Remove legacy variable.
6516d10a
AR
3650 (EmacsView-windowShouldZoom:): Set frame left_pos, top_pos and
3651 don't update the NSWindow itself.
3652 (EmacsView-windowWillUseStandardFrame:defaultFrame:): Improve
a489517b 3653 state detection and store user rect ourselves. (Bug #3581)
31642728
AR
3654
3655 * nsfont.m (nsfont_draw) [NS_IMPL_COCOA]: Don't use
3656 ns_use_qd_smoothing.
3657
3658 * nsfns.m (x_get_string_resource): Ape just-previous changes to other
3659 platform versions. Drop support for emacs-20-style face specs.
8aad0aea 3660 (x-close-connection): Drop PSFlush() under OS X.
a489517b 3661 (x-focus-frame): Activate the app first. (Bug #4180)
31642728 3662
8686ac71
JB
36632009-09-17 Juanma Barranquero <lekktu@gmail.com>
3664
3665 * emacs.c (inhibit_x_resources): New variable.
3666 (main) [HAVE_NS]: Don't process --quick command line option.
3667 (syms_of_emacs) <inhibit-x-resources>: DEFVAR_BOOL it.
3668
3669 * lisp.h (inhibit_x_resources): Declare it extern.
3670
3671 * w32reg.c (x_get_string_resource):
3672 * xrdb.c (x_get_string_resource): Obey inhibit_x_resources.
3673
e227ba05
EZ
36742009-09-17 Eli Zaretskii <eliz@gnu.org>
3675
362654a6
JB
3676 * Makefile.in (MSDOS_SUPPORT, SOME_MACHINE_LISP):
3677 Add lisp/term/internal.elc.
e227ba05 3678
742d40e8
SM
36792009-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
3680
3681 * frame.c (x_get_resource_string): Re-add for non-toolkit builds
3682 (bug#4461).
3683
005bd5a2
DN
36842009-09-17 Dan Nicolaescu <dann@ics.uci.edu>
3685
3686 * puresize.h (BASE_PURESIZE): Increase to 1290000.
3687
3688 * Makefile.in (OTHER_FILES): Define using autoconf, not cpp.
3689 (OBJECTS_MACHINE): Remove, unused.
3690
f9af9719
SM
36912009-09-16 Stefan Monnier <monnier@iro.umontreal.ca>
3692
3693 * frame.c (x_get_resource_string): Remove unused.
3694
0307c7d2
JD
36952009-09-15 Jan Djärv <jan.h.d@swipnet.se>
3696
3697 * xterm.c (x_new_font): Call change_frame_size before calling
3698 x_set_window_size, in case frame size won't change.
3699
3700 * frame.c (x_set_font): Remove dead code.
3701
428b13d6
SM
37022009-09-15 Stefan Monnier <monnier@iro.umontreal.ca>
3703
3704 * lread.c (Fload): Also run do-after-load-evaluation while dumping.
3705
5766c380
SM
37062009-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
3707
3708 * lread.c (Fload): Don't output a message after loading an obsolete
3709 package any more (done in Lisp now).
3710
2fd0161b
CY
37112009-09-12 Chong Yidong <cyd@stupidchicken.com>
3712
3713 * fns.c (syms_of_fns): Doc fix (Bug#4227).
3714
bc5e75b6
SM
37152009-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
3716
3717 * keymap.c (Fwhere_is_internal): Use nconc2.
3718
c31c985e
AM
37192009-09-11 Alan Mackenzie <acm@muc.de>
3720
3721 * dispnew.c (Fsend_string_to_terminal): Amend doc string to cover
3722 batch mode.
3723
78012bd2
AS
37242009-09-11 Andreas Schwab <schwab@linux-m68k.org>
3725
3726 * xdisp.c (display_mode_element): Detect cycles.
3727
9d889332
SM
37282009-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
3729
3730 * keymap.c (where_is_internal): Don't erroneously return nil right after
3731 filling the cache.
3732 (where_is_internal_1): Fix up typo.
3733
7ab5d780
GM
37342009-09-11 Glenn Morris <rgm@gnu.org>
3735
3736 * frame.c (Fx_parse_geometry): Unify the X and NS versions so that they
3737 share a common doc-string.
3738
5238a749
SM
37392009-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
3740
66d77eda
SM
3741 * keymap.c (get_keymap): Return the actual keymap symbol rather than
3742 t for autoloaded keymaps when autoloading is not allowed (bug#4393).
3743
5238a749
SM
3744 * keymap.c (QCadvertised_binding): New constant.
3745 (syms_of_keymap): Initialize it.
3746 (Fwhere_is_internal): Try and use bindings from :advertised-binding
3747 if applicable.
3748
19f48442
SM
37492009-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
3750
50d4ba39
SM
3751 * keyboard.c (Qmenu_alias, Vdefine_key_rebound_commands): Remove.
3752 (parse_menu_item): Streamline since bindings are recomputed all the
3753 time anyway. Don't bother checking Vdefine_key_rebound_commands any
3754 more and don't support lmenu's menu-alias any more either.
3755
a88a5372
SM
3756 * keymap.c (where_is_internal_data): Make noindirect a boolean.
3757 (where_is_internal): Strip it down to only traverse the keymaps.
3758 Move the cache handling from Fwhere_is_internal to here.
3759 (Fwhere_is_internal): Move the handling of remapping and the choice of
3760 the best binding from where_is_internal to here.
3761 Unify the cached/noncached paths, so remapping is also handled
3762 correctly when the cache is used, and so the cache can be used to
3763 speed up remap-handling when applicable.
3764 Give preference to non-remapped bindings.
3765 * doc.c (Fsubstitute_command_keys): Let Fwhere_is_internal's prefer
3766 non-remapped bindings.
3767 * keyboard.c (parse_menu_item): Let Fwhere_is_internal handle
3768 command remapping.
3769
19f48442
SM
3770 * xdisp.c (display_mode_element): Move list length limit from 50 to
3771 5000 (see thread starting with <xbaik5174uqu.fsf@cam.ac.uk>).
3772
599498c3 37732009-09-09 Adrian Robert <Adrian.B.Robert@gmail.com>
c1905ca3
AR
3774
3775 * nsfont.m (ns_get_family): Don't force first letter to uppercase.
3776
f9b7b5ac
SM
37772009-09-09 Stefan Monnier <monnier@iro.umontreal.ca>
3778
a53af587
JB
3779 * xdisp.c (Vtruncate_partial_width_windows): Improve docstring.
3780 (Bug#4334)
3781
f9b7b5ac
SM
3782 * keymap.c (where_is_internal): Filter out shadowed remappings.
3783 Assume that where_is_internal returns unshadowed bindings to simplify
3784 the code and get rid of the gotos. Use ASIZE.
3785
04f4b72d
JD
37862009-09-04 Jan Djärv <jan.h.d@swipnet.se>
3787
4da146f2
JD
3788 * xterm.c (x_focus_changed): If we get a focusout and pointer
3789 is invisible, make it visible.
3790
04f4b72d
JD
3791 * xterm.h: Remove condition for declaration of
3792 x_*_window_to_frame.
3793
7cef7ce3
SM
37942009-09-03 Stefan Monnier <monnier@iro.umontreal.ca>
3795
3796 * dispnew.c (Fsend_string_to_terminal): Make it work again on the
3797 initial terminal as well.
3798
a54fa5b7
JD
37992009-09-02 Jan Djärv <jan.h.d@swipnet.se>
3800
3801 * xterm.h: Rename x_non_menubar_window_to_frame to
7cef7ce3 3802 x_menubar_window_to_frame.
a54fa5b7 3803
50426a04 3804 * xterm.c: Remove declarations also in xterm.h.
a54fa5b7
JD
3805 (XTmouse_position): Do not return valid positions
3806 for clicks in the menubar and the toolbar for Gtk+.
3807
3808 * xfns.c (x_any_window_to_frame): Assume less about Gtk+ internals,
3809 if the widget for the event has the same top level as a frame,
3810 return the frame.
3811 (x_menubar_window_to_frame): Detect menu bar even with Gtk+
3812 internal windows, bug #4122.
3813 (x_non_menubar_window_to_frame): Remove.
3814
5a021dd0
GM
38152009-09-02 Glenn Morris <rgm@gnu.org>
3816
3817 * buffer.c (default-major-mode): Move most of the doc from here...
3818 (major-mode): ... to here.
3819
548fe2f3
NR
38202009-08-30 Nick Roberts <nickrob@snap.net.nz>
3821
3822 * process.c (wait_reading_process_output): Keep the descriptor
3823 when pty is used by a non-child process, e.g., in I/O buffer of
3824 GDB this allows inferior to be restarted.
3825
e0840eef
EZ
38262009-08-29 Eli Zaretskii <eliz@gnu.org>
3827
3828 * xdisp.c (redisplay_internal): Remove redundant test and collapse
3829 both branches into one.
3830
82e98df4
SM
38312009-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
3832
3833 * emacs.c (USAGE1): Remove --(no-)multibyte, --(no-)unibyte.
3834 (main): Use enable-multibyte-characters rather than
3835 default-enable-multibyte-characters. Output a warning message when
3836 running a unibyte session.
3837
890617cb
YM
38382009-08-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3839
3840 * unexmacosx.c (print_load_command_name) [LC_DYLD_INFO]: Add cases
3841 LC_DYLD_INFO and LC_DYLD_INFO_ONLY.
3842 (copy_data_segment): Also copy __program_vars section.
3843 (copy_dyld_info) [LC_DYLD_INFO]: New function.
3844 (dump_it) [LC_DYLD_INFO]: Use it.
3845
3846 * s/darwin.h [temacs]: Undef HAVE_POSIX_MEMALIGN.
3847
e7adeadc
EZ
38482009-08-28 Eli Zaretskii <eliz@gnu.org>
3849
3850 * makefile.w32-in ($(BLD)/doc.$(O)): Depend on buildobj.h, not on
3851 $(SRC)/buildobj.h.
3852 (buildobj.h): Renamed from $(SRC)/buildobj.h.
3853 (make-buildobj-CMD, make-buildobj-SH): Create buildobj.h, not
3854 $(SRC)/buildobj.h.
3855 (clean): Add buildobj.h.
3856
3ed8bbdc
TZ
38572009-08-28 Teodor Zlatanov <tzz@lifelogs.com>
3858
3859 * print.c (print_object): Set escapeflag to 1 when printing
3860 hashtable keys and values.
3861
155a6764
SM
38622009-08-27 Stefan Monnier <monnier@iro.umontreal.ca>
3863
3864 * lread.c (read_integer): Use doubles (and potentially return a float
3865 number) as we do in string-to-number.
3866 (read1): Use strtol to read integers, signal errors on strtol's
3867 overflow and use floats if strtol's output is too large for
3868 Elisp integers.
3869
877610de
EZ
38702009-08-27 Eli Zaretskii <eliz@gnu.org>
3871
3872 * makefile.w32-in ($(SRC)/buildobj.h, make-buildobj-CMD)
3873 (make-buildobj-SH): Fix last change.
3874 (SRC): Move to before where it's first used.
3875
ef73e7be
KH
38762009-08-27 Kenichi Handa <handa@m17n.org>
3877
550c8289
KH
3878 * process.c (send_process): Use encode_coding_object instead of
3879 encode_coding_string to perform eol-conversion even if the string
3880 is unibyte.
3881
60afa08d
KH
3882 * coding.c (encode_coding_utf_16): Fix checking of a Unicode
3883 character.
3884
ef73e7be 3885 * cmds.c (Fself_insert_command): Avoid unnecessay
8a0b709a 3886 unibyte->multibyte conversion. (Bug#4240) (Bug#4037)
ef73e7be 3887
7b3a82d7
DN
38882009-08-26 Dan Nicolaescu <dann@ics.uci.edu>
3889
5654bf63
DN
3890 * callproc.c (Fcall_process): Remove always true #if.
3891
7b3a82d7
DN
3892 * lisp.h: Replace #if 0 code for checking with text pointing to
3893 the --enable-checking configure flag.
3894
3895 * emacs.c (main): Mention the --enable-profiling configure flag
3896 instead of using CFLAGS.
3897
878bde49
KR
38982009-08-26 Ken Raeburn <raeburn@raeburn.org>
3899
3900 * Makefile.in (buildobj.h): New target.
3901 (doc.o): Depend on it.
3902 (temacs${EXEEXT}): Don't generate buildobj.lst.
3903 (mostlyclean): Delete buildobj.h, not buildobj.lst.
3904 * makefile.w32-in ($(SRC)/buildobj.h): New target.
3905 ($(BLD)/doc.$(O)): Depend on it.
3906 (make-buildobj-CMD, make-buildobj-SH): New targets. (Syntax help
3907 provided by Eli Zaretskii.)
3908 ($(TEMACS)): Don't generate buildobj.lst.
3909 * doc.c: Include buildobj.h.
3910 (buildobj): New static variable.
3911 (Fsnarf_documentation): Use it, instead of opening and reading
3912 buildobj.lst.
3913
1574224c
MA
39142009-08-25 Michael Albinus <michael.albinus@gmx.de>
3915
3916 * dbusbind.c (Fdbus_call_method)
3917 (Fdbus_call_method_asynchronously): Use English numeric format for
3918 timeout values in doc string.
3919
d9da2f45
KH
39202009-08-25 Kenichi Handa <handa@m17n.org>
3921
ef73e7be
KH
3922 * alloc.c (mark_char_table): New function.
3923 (mark_object): Use mark_char_table for a char-table.
3924
d9da2f45
KH
3925 * lisp.h (CHAR_TABLE_REF_ASCII): New macro.
3926 (CHAR_TABLE_REF): Use it.
3927
c8edcc01
KR
39282009-08-23 Ken Raeburn <raeburn@raeburn.org>
3929
3930 * Makefile.in (emacs${EXEEXT}) [CANNOT_DUMP]: Set EMACSLOADPATH
3931 before invoking the newly build emacs to check for load-path
3932 shadowing.
3933
7763401b
GM
39342009-08-22 Glenn Morris <rgm@gnu.org>
3935
3936 * Makefile.in (bootstrap_exe): New variable.
3937 (.el.elc, ${lispsource}loaddefs.el, bootstrap-emacs${EXEEXT}):
3938 Use ${bootstrap_exe}.
3939
729eadda
EZ
39402009-08-22 Eli Zaretskii <eliz@gnu.org>
3941
3942 * coding.h (encode_coding_string): Don't encode unibyte strings.
3943 (Bug#4047)
3944
eb4c6ace
MA
39452009-08-22 Michael Albinus <michael.albinus@gmx.de>
3946
3947 * config.in (HAVE_DBUS_WATCH_GET_UNIX_FD): Add.
3948
3949 * dbusbind.c (XD_WITH_DBUS_WATCH_GET_UNIX_FD): Remove. It was
3950 intended as hotfix only.
3951 (xd_add_watch, xd_remove_watch): Use HAVE_DBUS_WATCH_GET_UNIX_FD.
3952
36e34d1b
AR
39532009-08-21 Adrian Robert <Adrian.B.Robert@gmail.com>
3954
3955 * nsterm.m (ns_get_color): Update documentation properly for last
3956 change, and clean up loose ends in the code left by it. Fix
3957 longstanding bug with 16-bit hex parsing, and add support for
3958 yet another X11 format (rgb:r/g/b) for compatibility.
3959 * nsfns.m (EmacsDialogPanel-runDialogAt): Add declaration of
3960 timer_check() to avoid crash on Leopard/PPC. Bug #2154.
3961
f983eb8a
SM
39622009-08-21 Stefan Monnier <monnier@iro.umontreal.ca>
3963
3964 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 500 for js.el.
3965
3f56d3c6
MA
39662009-08-20 Michael Albinus <michael.albinus@gmx.de>
3967
3968 * dbusbind.c (XD_WITH_DBUS_WATCH_GET_UNIX_FD): New macro.
3969 (xd_add_watch, xd_remove_watch): Use it. Print debug messages.
3970 (xd_initialize, xd_pending_messages): Check, whether
3971 $DBUS_SESSION_BUS_ADDRESS is set.
3972
fb641d68
YM
39732009-08-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3974
3975 * nsfns.m (Fxw_color_values): Return 3-element list. Doc fix.
3976
3977 * nsterm.m (ns_get_color): Remove incompatible color formats again.
3978
cf59a374
GM
39792009-08-20 Glenn Morris <rgm@gnu.org>
3980
3981 * emacs.c (system-type): Doc fix.
3982
1373f3be
SM
39832009-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
3984
3985 * keyboard.c (syms_of_keyboard): Default to 5 buttons, which should be
3986 enough for the most common situations. Avoid SET_SYMBOL_VALUE.
3987
058ed861
MA
39882009-08-18 Michael Albinus <michael.albinus@gmx.de>
3989
1373f3be
SM
3990 * dbusbind.c (xd_add_watch, xd_remove_watch, Fdbus_init_bus):
3991 New functions.
058ed861
MA
3992 (xd_initialize): Revert change from 2009-08-16.
3993
563a866e 39942009-08-18 Kenichi Handa <handa@m17n.org>
5fc05db0
KH
3995
3996 * fontset.c (Ffontset_font): If a nil element is found in a
563a866e 3997 font-group vector, return nil.
5fc05db0 3998
e42bdf01
CY
39992009-08-17 Chong Yidong <cyd@stupidchicken.com>
4000
4001 * process.c (status_notify): Don't perform redisplay.
4002 (Fdelete_process, list_processes_1, process_send_signal):
4003 Expliticly perform redisplay.
4004 (wait_reading_process_output): Always check process status, but
4005 don't perform redisplay unless DO_DISPLAY is non-zero (Bug#2930).
4006
4230ab74
KR
40072009-08-17 Ken Raeburn <raeburn@raeburn.org>
4008
1373f3be 4009 * lisp.h (XFLOAT_DATA): Produce an rvalue by adding 0 to the value.
f601cdf3
KR
4010 (XFLOAT_INIT): New macro for storing a float value.
4011 * alloc.c (make_float, make_pure_float): Use XFLOAT_INIT.
4012 * fns.c (sxhash): Copy out the value of a float in order to
4013 examine its bytes.
4014 * dbusbind.c (xd_append_arg): Likewise.
4015
4230ab74
KR
4016 * emacs.c (main): Don't call syms_of_data twice.
4017
a0645cdd
MA
40182009-08-16 Michael Albinus <michael.albinus@gmx.de>
4019
4020 * dbusbind.c (xd_initialize): Add connection file descriptor to
4021 input_wait_mask, in order to let select() detect, whether a new
4022 message has been arrived.
ca4f31ea 4023 (Fdbus_call_method_asynchronously): Allow nil HANDLER.
a0645cdd 4024
485db0ba
MA
40252009-08-15 Michael Albinus <michael.albinus@gmx.de>
4026
1373f3be
SM
4027 * dbusbind.c (xd_get_dispatch_status, xd_pending_messages):
4028 New functions.
485db0ba
MA
4029
4030 * lisp.h (xd_pending_messages): Declare.
4031
4032 * keyboard.c (readable_events): Call xd_pending_messages.
4033
b5b98ff4
CY
40342009-08-15 Chong Yidong <cyd@stupidchicken.com>
4035
1373f3be 4036 * eval.c (Fcalled_interactively_p, Finteractive_p): Doc fix (Bug#3936).
84b17ab0 4037
f8354c6e
CY
4038 * xdisp.c (pop_it): Don't pop into a display vector (Bug#4131).
4039
b5b98ff4
CY
4040 * buffer.c (set_buffer_internal_1)
4041 (swap_out_buffer_local_variables): Check for unbound local
4042 variables (Bug#4138).
4043
8b9fc636
EZ
40442009-08-14 Eli Zaretskii <eliz@gnu.org>
4045
4046 * process.c (create_pty): Fix last change.
4047
ce959360
CY
40482009-08-13 Chong Yidong <cyd@stupidchicken.com>
4049
4050 * image.c (xbm_read_bitmap_data): New arg inhibit_image_error.
4051 (xbm_load_image): Caller changed.
64b807c9 4052 (xbm_file_p): Avoid signalling an image_error (Bug#4107).
ce959360 4053
c7baf7e9
NR
40542009-08-13 Nick Roberts <nickrob@snap.net.nz>
4055
4056 * process.c (create_pty): New function.
4057 (Fstart_process): Use it to allow Emacs to just associate a pty
4058 with the buffer. See associated change in gdb-mi.el.
4059 (list_processes_1): Deal with no program name.
4060 (start_process_unwind): Use pid == -2 to mean no process.
4061
1ac9108a
SM
40622009-08-12 Stefan Monnier <monnier@iro.umontreal.ca>
4063
4064 * cmds.c (nonundocount): New global variable.
4065 (keys_of_cmds): Initialize it.
4066 (Fself_insert_command): Use it to combine upto 20 sequential chars
4067 into a single undo entry, just like the Qself_insert_command code in
4068 keyboard.c does.
4069 Call frame_make_pointer_invisible, also like the Qself_insert_command
4070 code in keyboard.c does.
4071 * keyboard.c (command_loop_1): Use the new global nonundocount rather
4072 than its own local replacement for it.
4073
e267324c
KR
40742009-08-10 Ken Raeburn <raeburn@raeburn.org>
4075
1ac9108a 4076 * fns.c (concat): Don't re-set string length to its current value.
77437343 4077
1ac9108a
SM
4078 * coding.h (decode_coding_string, encode_coding_string):
4079 Use SBYTES macro.
f0bed503 4080
1ac9108a 4081 * doprnt.c (doprnt_lisp): Delete unused function.
e267324c
KR
4082 (doprnt): Merge with doprnt1, discarding lispstrings code.
4083 * lisp.h (doprnt_lisp): Don't declare.
4084
416e006d
JL
40852009-08-07 Juri Linkov <juri@jurta.org>
4086
4087 * puresize.h (BASE_PURESIZE): Increase to 1270000.
4088
6f7d5780
DN
40892009-08-07 Dan Nicolaescu <dann@ics.uci.edu>
4090
4091 * print.c (syms_of_print): Undo previous change.
4092
f19a0f5b
TZ
40932009-08-05 Teodor Zlatanov <tzz@lifelogs.com>
4094
4095 * lread.c (read1, syms_of_lread): Read hashtables back from the
4096 readable format.
4097
4098 * print.c (print_preprocess, print_object): Print hashtables fully
4099 and readably.
4100 (syms_of_print): Provide 'hashtable-print-readable.
4101
b9173dc2
AR
41022009-08-02 Adrian Robert <Adrian.B.Robert@gmail.com>
4103
4104 * nsfont.m (ns_descriptor_to_entity): Handle case when descriptor has
4105 no family set.
4106 (nsfont_open): Handle case when entity has no family.
4107
1586503c
AR
41082009-07-29 Adrian Robert <Adrian.B.Robert@gmail.com>
4109
4110 * nsfont.m (ns_findfonts): Fix 2009-07-24 change to return only one
4111 element, not a list, for match case.
4112
087048cd
KH
41132009-07-28 Kenichi Handa <handa@m17n.org>
4114
4115 * font.c (font_parse_xlfd): Check DPI and AVGWIDTH properties more
4116 rigidly.
4117
4118 * xfont.c (xfont_list_pattern): Don't ignore the return value of
4119 font_parse_xlfd. Check font properties more rigidly.
4120
780c2506
DN
41212009-07-27 Dan Nicolaescu <dann@ics.uci.edu>
4122
31fd7c5c
JB
4123 * s/netbsd.h (SIGNALS_VIA_CHARACTERS): Remove, already defined in
4124 bsd-common.h.
780c2506 4125
a8c0cc18
KH
41262009-07-27 Kenichi Handa <handa@m17n.org>
4127
4128 * xfaces.c (face_with_height): Call font_clear_prop.
4129
4fbe2306
CY
41302009-07-26 Chong Yidong <cyd@stupidchicken.com>
4131
111d9af3
CY
4132 * dispnew.c (init_display): Use Qx, Qw32, and Qns.
4133
4134 * xterm.c (x_term_init): Use Qx.
4135
4fbe2306
CY
4136 * nsfont.m (nsfont_draw): Revert 2009-07-15 change.
4137
1ac9108a 4138 * nsterm.m (ns_maybe_dumpglyphs_background): Revert 2009-07-15 change.
4fbe2306
CY
4139 (ns_get_color): Revert 2009-07-16 change.
4140
beb0b7f9
EZ
41412009-07-25 Eli Zaretskii <eliz@gnu.org>
4142
4143 * lread.c (syms_of_lread) <force_load_messages>: New variable.
1ac9108a 4144 (Fload): Use it to force load messages, even if NOMESSAGES is non-nil.
beb0b7f9 4145
2baf5e76
KR
41462009-07-25 Ken Raeburn <raeburn@raeburn.org>
4147
1ac9108a
SM
4148 * coding.h (decode_coding_string, encode_coding_string):
4149 Use SCHARS macro.
8890e5f5 4150
2baf5e76 4151 * lread.c: Rewrite 2009-07-21 changes.
1ac9108a 4152 (load_depth): Delete.
2baf5e76
KR
4153 (Qload_in_progress): New variable.
4154 (load_unwind): Don't reference load_depth or load_in_progress.
4155 (Fload): Likewise; specbind Qload_in_progress instead.
4156 (init_lread): Don't initialize load_depth.
4157 (syms_of_lread): Initialize and protect Qload_in_progress.
4158
1395c6f5
AR
41592009-07-24 Adrian Robert <Adrian.B.Robert@gmail.com>
4160
4161 * nsfont.m (ns_findfonts): Correctly return fallback in match case.
4162
4e2f36cf
AR
41632009-07-23 Yavor Doganov <yavor@gnu.org>
4164
4165 * nsfont.m (NSFontDescriptor.h): Explicitly include under GNUstep.
4166
5dd9a6f7
AR
41672009-07-23 Adrian Robert <Adrian.B.Robert@gmail.com>
4168
4169 * nsterm.m (EmacsView-keyUp:): Only act when running under Tiger.
7f6ad209
AR
4170 Bugs 3792, 3720, 2402.
4171 (ns_lookup_indexed_color): Check for bad index.
4172 (ns_index_color): Init unused slot to 0.
4173 (ns_dumpglyphs_box_or_relief): Replace useless xassert with an if().
4174 Bug 3714, possibly 3082.
5dd9a6f7 4175
c902b920
JR
41762009-07-22 Jason Rumney <jasonr@gnu.org>
4177
1ac9108a
SM
4178 * w32fns.c (w32_wnd_proc) [WM_IME_STARTCOMPOSITION]:
4179 Position IME window at cursor (Bug#2570).
c902b920
JR
4180 (w32_wnd_proc) [WM_IME_CHAR]: Release context when finished.
4181 (globals_of_w32fns): Dynamically load functions required above.
4182
4183 * w32term.c (w32_draw_window_cursor): Send message to reposition
4184 any IME window.
4185
090101cf
CY
41862009-07-21 Chong Yidong <cyd@stupidchicken.com>
4187
4188 * fileio.c: Revert 2009-07-16 changes.
4189 (Vauto_save_include_big_deletions): New variable.
4190 (Fdo_auto_save): Disable auto-save only if
4191 auto-save-include-big-deletions is nil.
4192
e6583e3d
CY
41932009-07-21 Chong Yidong <cyd@stupidchicken.com>
4194
4195 * xdisp.c (move_it_to): For continued lines ending in a tab, take
4196 the overflowed pixels into account (Bug#3879).
4197
ece435a5
KR
41982009-07-21 Ken Raeburn <raeburn@raeburn.org>
4199
4200 * lread.c (load_depth): New variable.
4201 (Fload, load_unwind, init_lread): Set it to the load recursion
4202 depth; set load_in_progress as a simple boolean based on the
4203 current load_depth. (Bug#3892)
4204
40b2d973
AR
42052009-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
4206
4207 * nsfont.m (ns_has_attribute): Remove.
4208 (ns_findfonts, nsfont_open): Use ns_attribute_fvalue() instead.
4209
10be7e0d
JL
42102009-07-18 Juri Linkov <juri@jurta.org>
4211
4212 * process.c (Fset_process_query_on_exit_flag): Mention killing
4213 a buffer in docstring.
4214
fa055055
KH
42152009-07-17 Kenichi Handa <handa@m17n.org>
4216
4217 * casetab.c (shuffle): Fix the logic of setting up the cycle.
4218
042f7b69
YM
42192009-07-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4220
4221 * nsfns.m (Fns_set_alpha): Remove function.
4222 (syms_of_nsfns): Don't defsubr it.
4223
4224 * nsterm.m (ns_get_color): Remove incompatible color formats.
4225 (ns_color_to_lisp): Generate #rrggbb color format string.
4226
4be941e3
RS
42272009-07-16 Richard Stallman <rms@gnu.org>
4228
4229 * fileio.c (Fwrite_region, Fdo_auto_save): Handle save_length = -2.
4230 (Fset_buffer_auto_saved): Handle save_length = -2.
4231
4e6b227d
CY
42322009-07-16 Chong Yidong <cyd@stupidchicken.com>
4233
4234 * xterm.c (Qx_gtk_map_stock): New var.
4235
4236 * gtkutil.c (update_frame_tool_bar): Use Qx_gtk_map_stock instead
4237 of calling intern each time.
4238
a1856973
YM
42392009-07-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4240
4241 * nsfont.m (nsfont_draw): Remove code for stippling, which actually
4242 does tiling.
4243
4244 * nsterm.m (ns_maybe_dumpglyphs_background): Likewise.
4245
497e54d8
KH
42462009-07-14 Kenichi Handa <handa@m17n.org>
4247
72d36834
KH
4248 * font.c (font_vconcat_entity_vectors): New function.
4249 (struct font_sort_data): New member font_driver_preference.
4250 (font_compare): Check font_driver_preference.
4251 (font_sort_entities): The format of the first argument changed.
4252 (font_delete_unmatched): Likewise.
4253 (font_list_entities): The return type changed.
4254 (font_select_entity): The format of the second argument changed.
1ac9108a
SM
4255 (font_find_for_lface): Adjuste for the above changes.
4256 Don't suppress the checking of C even if the repertory supports it.
4257 (Flist_fonts): Adjust for the above changes.
72d36834 4258
1ac9108a
SM
4259 * ftfont.c (ftfont_spec_pattern): New arg langname. Change caller.
4260 (ftfont_list): Adjust for the change of ftfont_spec_pattern.
497e54d8
KH
4261 Reject a font who has adstyle property that is different from a
4262 langname derived from registry property.
1ac9108a 4263 (ftfont_match): Adjust for the change of ftfont_spec_pattern.
497e54d8 4264
b6046155
EZ
42652009-07-13 Eli Zaretskii <eliz@gnu.org>
4266
4267 * dired.c (directory_files_internal) [WINDOWSNT]: Don't make a
4268 local copy of dirfilename.
4269
fb6b6049
KH
42702009-07-13 Kenichi Handa <handa@m17n.org>
4271
e2402a5e
KH
4272 * chartab.c (sub_char_table_ref_and_range): Fix the range check
4273 against max_char.
4274
fb6b6049
KH
4275 * cmds.c (internal_self_insert): Check sym by SYMBOLP before
4276 calling XSYMBOL (sym).
4277
65156807
EZ
42782009-07-11 Eli Zaretskii <eliz@gnu.org>
4279
1ac9108a
SM
4280 * dired.c (directory_files_internal_w32_unwind) [WINDOWSNT]:
4281 New function.
4282 (directory_files_internal) [WINDOWSNT]:
4283 Bind w32-get-true-file-attributes to either t or nil, depending whether
65156807
EZ
4284 the filesystem of the directory is fast or slow.
4285
4286 * w32.c (logon_network_drive): Don't assume PATH is an absolute
4287 file name.
4288 (is_slow_fs): New function.
4289 (stat): Use it to determine whether to issue more system calls to
4290 get accurate file attributes, when w32-get-true-file-attributes is
4291 `local'.
4292
e0ab5fcf
JD
42932009-07-10 Jan Djärv <jan.h.d@swipnet.se>
4294
4295 * xfns.c (Fx_select_font): Remember last font selected in
31fd7c5c 4296 x_last_font_name and use that the next time. Also try the frame
e0ab5fcf
JD
4297 parameter font-parameter as default to the font dialog.
4298
784ceded
KH
42992009-07-10 Kenichi Handa <handa@m17n.org>
4300
4301 * xftfont.c (xftfont_open): Fix typo: FC_RGBA->FC_HINT_STYLE.
4302
fb8edc0b
EZ
43032009-07-09 Eli Zaretskii <eliz@gnu.org>
4304
1ac9108a 4305 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
017dab84 4306
fb8edc0b
EZ
4307 * w32.c (stat): Treat UNC file names as residing on remote
4308 drives. (Bug#3542)
4309
635c75b1
KH
43102009-07-09 Kenichi Handa <handa@m17n.org>
4311
4312 * fontset.c (fontset_find_font): Fix previous change.
4313
c1d5ce94
MA
43142009-07-08 Michael Albinus <michael.albinus@gmx.de>
4315
4316 * dbusbind.c (xd_initialize, Fdbus_call_method, xd_read_message)
4317 (Fdbus_register_signal, Fdbus_register_method): Cleanup memory of
4318 error flag.
4319
edb61b39
KH
43202009-07-08 Kenichi Handa <handa@m17n.org>
4321
374bf7e4
KH
4322 * fontset.c (fontset_find_font): Fix the logic of handling
4323 charset_matched.
4324 (font_for_char): Delete unused var.
4325 (generate_ascii_font_name): Delete it.
4326
edb61b39
KH
4327 * coding.h (JIS_TO_SJIS2): Fix the code range check.
4328
4329 * coding.c (detect_coding_sjis): Handle shift_jis-2004 correctly.
4330 (encode_coding_sjis): Fix the code range check.
4331
0f3f018c
CY
43322009-07-07 Chong Yidong <cyd@stupidchicken.com>
4333
4334 * fileio.c (Fsubstitute_in_file_name, Ffile_name_directory)
4335 (Fexpand_file_name): Copy string data properly (Bug#3772).
4336
fcaf6f3a
JD
43372009-07-07 Jan Djärv <jan.h.d@swipnet.se>
4338
4339 * xterm.c (handle_one_xevent): Only call x_check_fullscreen on the
4340 first MapNotify.
4341
6809ca75
KH
43422009-07-07 Kenichi Handa <handa@m17n.org>
4343
4344 * character.h (unibyte_has_multibyte_table): Delete extern.
4345 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): Delete it.
4346
4347 * charset.c (Fset_charset_priority): Update charset_unibyte.
4348 (syms_of_charset): Initialize charset_unibyte.
4349
4350 * character.c (unibyte_has_multibyte_table): Delete it.
4351 (multibyte_char_to_unibyte): Use CHAR_TO_BYTE8 instead of checking
4352 charset_unibyte.
4353 (multibyte_char_to_unibyte_safe): Likewise.
4354 (Funibyte_char_to_multibyte): Don't check charset_unibyte.
4355
1ac9108a 4356 * xdisp.c (get_next_display_element): Decode it->c by charset_unibyte.
6809ca75
KH
4357 (x_produce_glyphs): Likewise.
4358
4359 * .gdbinit (xcharset): Fix the treating $arg0.
4360
ad9e2d54
EZ
43612009-07-04 Eli Zaretskii <eliz@gnu.org>
4362
4363 Emulation of `getloadavg' on MS-Windows.
50426a04 4364 * w32.c: Include float.h.
ad9e2d54
EZ
4365 (g_b_init_get_native_system_info, g_b_init_get_system_times)
4366 (GetNativeSystemInfo_Proc, GetSystemTimes_Proc): Declare.
4367 (get_native_system_info, get_system_times): New functions.
4368 (buf_next, buf_prev, sample_system_load, getavg): New subroutines.
4369 (getloadavg): Rewrite using GetSystemTimes and GetNativeSystemInfo.
4370 (globals_of_w32): Initialize g_b_init_get_native_system_info,
4371 g_b_init_get_system_times, and num_of_processors.
4372
0a3472c7
JR
43732009-07-03 Jason Rumney <jasonr@gnu.org>
4374
4375 * w32term.c (w32_initialize): Use standard types.
4376
80904120
EZ
43772009-07-03 Eli Zaretskii <eliz@gnu.org>
4378
4379 * dired.c (Ffile_attributes): Decode user and group names by the
4380 locale's encoding. (Bug#3443)
4381
6978862d
DN
43822009-07-03 Dan Nicolaescu <dann@ics.uci.edu>
4383
f8d23104
DN
4384 * sysdep.c (sys_suspend): Remove USG_JOBCTRL #ifdef, unused.
4385 (mkdir): Remove MKDIR_PROTOTYPE #ifdef, unused.
4386
4387 * callproc.c (child_setup): Use #else instead of a separate #ifdef.
4388
4389 * term.c (init_tty): Remove spurious #ifdef.
4390
6978862d
DN
4391 * m/mips.h: Mention this file is also used for netbsd.
4392 * m/pmax.h: Remove file.
4393
e044e4fc
JD
43942009-07-03 Jan Djärv <jan.h.d@swipnet.se>
4395
4396 * xterm.h (struct x_display_info): Add invisible_cursor.
4397 (struct x_output): Add current_cursor.
4398
4399 * xterm.c (XTtoggle_invisible_pointer): New function.
4400 (x_define_frame_cursor): Don't define cursor if invisible or the
4401 same as before. Set current_cursor.
4402 (x_create_terminal): Set toggle_invisible_pointer_hook.
4403
4404 * xfns.c (make_invisible_cursor): New function.
4405 (x_set_mouse_color): Call make_invisible_cursor.
4406 Set current_cursor.
4407 (x_window): Set current_cursor.
4408
4409 * termhooks.h (struct terminal): Add toggle_invisible_pointer_hook.
4410
4411 * keyboard.c (command_loop_1): Call frame_make_pointer_invisible after
4412 inserting a character.
4413 (read_avail_input): Call frame_make_pointer_visible.
4414
4415 * frame.c (Vmake_pointer_invisible): New variable.
1ac9108a
SM
4416 (frame_make_pointer_invisible, frame_make_pointer_visible):
4417 New functions.
e044e4fc
JD
4418 (syms_of_frame): DEFVAR make-pointer-invisible, initialize to Qt.
4419
4420 * frame.h: Declare frame_make_pointer_invisible and
4421 frame_make_pointer_visible.
4422 (struct frame): Add pointer_invisible.
4423
574c8efa
JD
44242009-07-02 Jan Djärv <jan.h.d@swipnet.se>
4425
7b507248
JD
4426 * gtkutil.c (xg_frame_set_char_size): Do set width/height if the
4427 frame isn't visible.
4428 (xg_frame_resized): If width/height is -1, get size of window
4429 from X server.
4430
4431 * xterm.c (handle_one_xevent): Call xg_frame_resized for USE_GTK
4432 for MapNotify.
4433
835bdaa7 4434 * gtkutil.c (xg_frame_set_char_size): Do not set pixel width/height
31fd7c5c 4435 here or call change_frame_size. Just call flush_and_sync.
1ac9108a 4436 (flush_and_sync): Reintroduce.
574c8efa 4437
3f1c6666 44382009-07-01 Jan Djärv <jan.h.d@swipnet.se>
69b16610 4439
31fd7c5c 4440 * xterm.h (struct x_display_info): Add Xatom_net_wm_state_sticky.
acd51077
JD
4441
4442 * xterm.c (x_handle_net_wm_state): Also look for sticky.
4443 (x_term_init): Initialize Xatom_net_wm_state_sticky.
4444
4445 * frame.h: Declare Qsticky.
4446
cad9ef74
JD
4447 * w32fns.c (w32_frame_parm_handlers): Set 0 for sticky.
4448
4449 * nsfns.m (ns_frame_parm_handlers): Ditto.
4450
4451 * frame.c: Declare Qsticky.
4452 (frame_parms): Add sticky.
4453
4454 * xfns.c (x_frame_parm_handlers): Let x_set_sticky handle sticky.
4455
4456 * xterm.h: Declare x_set_sticky.
4457
4458 * xterm.c (x_set_sticky): New function.
4459
69b16610
JD
4460 * gtkutil.c (xg_tool_bar_proxy_help_callback): New function.
4461 (xg_tool_bar_menu_proxy): Attach enter/leave events to
4462 xg_tool_bar_proxy_help_callback.
3f1c6666
JD
4463
4464 * emacs.c (USAGE3, standard_args): Add -mm and --maximized.
4465
4466 * frame.c: Qmaximized is new.
4467 (x_set_frame_parameters): Do not handle fullscreen specially.
4468 Only set width and height if explicitly set.
4469 (x_set_fullscreen): Handle Qmaximized.
4470 (x_set_font, x_figure_window_size): Do not handle fullscreen specially.
4471 (syms_of_frame): Initialize Qmaximized.
4472
1ac9108a
SM
4473 * frame.h (fullscreen_type): Add FULLSCREEN_MAXIMIZED.
4474 Declare Qfullwidth, Qfullheight, Qfullboth, Qmaximized.
3f1c6666
JD
4475
4476 * xterm.c (handle_one_xevent): Remove call to x_check_fullscreen
31fd7c5c
JB
4477 for Expose event. Add call to x_check_fullscreen for MapNotify event.
4478 Remove all code w.r.t. fullscreen from ConfigureNotify event. Do not
3f1c6666
JD
4479 set gravity to NorthWestGravity when USE_GTK.
4480 (set_wm_state): New function.
31fd7c5c 4481 (do_ewmh_fullscreen): Use set_wm_state. Also handle FULLSCREEN_MAXIMIZED.
3f1c6666
JD
4482 (x_handle_net_wm_state): Handle FULLSCREEN_MAXIMIZED.
4483 (x_check_fullscreen): Simplify so we only handle EMWH type of fullscreen
31fd7c5c 4484 or the case when no window manager is running. That means remove calls
3f1c6666
JD
4485 to x_real_positions and x_fullscreen_adjust.
4486
4487 * gtkutil.c (flush_and_sync, x_wm_size_hint_off): Remove.
4488 (xg_frame_set_char_size): Remove calls to x_wm_size_hint_off and
4489 flush_and_sync.
4490 (xg_height_changed): New function.
4491 (xg_create_frame_widgets): Remove call to gtk_widget_set_size_request
1ac9108a
SM
4492 and gtk_window_set_policy. Set frame gravity after parsing the
4493 geometry string.
3f1c6666
JD
4494 (xg_update_frame_menubar, free_frame_menubar)
4495 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
4496 (update_frame_tool_bar, free_frame_tool_bar): Call xg_height_changed.
4497 Remove calls to xg_frame_set_char_size.
4498
fd503d99
KH
44992009-07-01 Kenichi Handa <handa@m17n.org>
4500
4501 * keyboard.c (decode_keyboard_code): New function.
4502 (tty_read_avail_input): Decode the input bytes if necessary.
4503
1ac9108a
SM
4504 * coding.c (setup_coding_system):
4505 Initialize coding->carryover_bytes to 0.
fd503d99
KH
4506 (Fset_keyboard_coding_system_internal): If CODING-SYSTEM is nil,
4507 use Qno_conversion.
4508
24ed93fb
YM
45092009-07-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4510
4511 * Makefile.in (SOME_MACHINE_LISP): Add ../lisp/term/common-win.elc.
4512
99061dfc
CY
45132009-06-30 Chong Yidong <cyd@stupidchicken.com>
4514
1ac9108a 4515 * xftfont.c (xftfont_open): Avoid passing NULL argument to XftLockFace.
99061dfc 4516
ff90fbde
JR
45172009-06-30 Jason Rumney <jasonr@gnu.org>
4518
4519 * w32term.c (w32_initialize): Use GetModuleHandle for library that
4520 is already loaded.
4521 Set user model ID if supported (bug#1849).
4522
5f445726
JM
45232009-06-29 Jim Meyering <meyering@redhat.com>
4524
4525 Remove useless if-before-xfree test.
4526 * nsfont.m (nsfont_close): Remove useless test.
4527 * term.c (delete_tty): Likewise.
4528 * w32.c (system_process_attributes): Likewise.
4529 * w32font.c (w32font_close): Likewise.
4530 * xfaces.c (x_free_gc): Likewise.
4531 * xselect.c (buffer): Likewise.
4532
b9607587
AS
45332009-06-28 Andreas Schwab <schwab@linux-m68k.org>
4534
4535 * process.c (send_process): Keep decoded string in a local
4536 variable and protect it from GC. (Bug#3521)
4537
89ba96f4
EZ
45382009-06-28 Eli Zaretskii <eliz@gnu.org>
4539
4540 * term.c (create_tty_output) [MSDOS]: #ifdef away.
4541 (tty_free_frame_resources) [MSDOS]: Add a DOS-specific version.
4542
098a1589
CY
45432009-06-28 Chong Yidong <cyd@stupidchicken.com>
4544
485422be
CY
4545 * xdisp.c (start_display, handle_face_prop)
4546 (move_it_vertically_backward, cursor_row_fully_visible_p)
1ac9108a
SM
4547 (redisplay_window, try_window_id, produce_image_glyph):
4548 Delete some #ifdef-ed out code chunks that are now obsolete.
485422be 4549
098a1589
CY
4550 * xterm.c (x_update_window_begin, x_new_focus_frame)
4551 (x_scroll_bar_handle_click, handle_one_xevent)
4552 (handle_one_xevent, XTread_socket, x_focus_on_frame)
4553 (x_make_frame_visible, x_make_frame_invisible)
4554 (x_wm_set_icon_pixmap, x_initialize): Delete some #ifdef-ed out
4555 code chunks that are now obsolete.
4556
78c38319
MA
45572009-06-28 Michael Albinus <michael.albinus@gmx.de>
4558
4559 * dbusbind.c (XD_SYMBOL_TO_DBUS_TYPE): Convert macro into function
4560 xd_symbol_to_dbus_type. With Solaris 2.11, it was said to compile
4561 for hours, when optimzation is enabled.
4562 (xd_signature, xd_append_arg, xd_retrieve_arg, xd_initialize)
4563 (xd_read_message): Make them static.
4564
4189ed40
CY
45652009-06-27 Chuck Blake <cblake@pdos.csail.mit.edu> (tiny change)
4566
4567 * term.c (turn_on_face): Allow simultaneously bold and dim
4568 terminal faces (Bug#3530).
4569
cd9b5e16
CY
45702009-06-27 Chong Yidong <cyd@stupidchicken.com>
4571
4e23bedb
CY
4572 * frame.c (x_get_arg): Check if dpyinfo is non-NULL.
4573
cd9b5e16
CY
4574 * xdisp.c (mouse_face_from_buffer_pos): Fix detection of
4575 truncation glyphs (Bug#3686).
4576
07cc3c35
GM
45772009-06-27 Glenn Morris <rgm@gnu.org>
4578
4579 * m/pmax.h: Restore file, with only netbsd portions.
4580
31fd7c5c 45812009-06-26 David Reitter <david.reitter@gmail.com>
25c5550f 4582
cd9b5e16 4583 * nsterm.m (keydown): Avoid infinite loop.
25c5550f 4584
42d4a64f
KH
45852009-06-26 Peter Jolly <peter@jollys.org> (tiny change)
4586
4587 * ftfont.c (get_adstyle_property): Call font_intern_prop with 1 as
4588 the arg FORCE_SYMBOL.
4589
930fe55b 45902009-06-25 Kenichi Handa <handa@m17n.org>
a71ccf3a
KH
4591
4592 * fontset.c (fontset_find_font): When a usable rfont_def is found
4593 in a fallback font-group, make it the first element of the group.
4594
57ebc3fd
CY
45952009-06-24 Chong Yidong <cyd@stupidchicken.com>
4596
4597 * emacs-icon.h: Always define gnu_xpm_bits on GTK (bug#3671).
4598
f084f942
KH
45992009-06-24 Kenichi Handa <handa@m17n.org>
4600
4601 * fontset.c (fontset_get_font_group): Return 0 if no font-group is
4602 set for C.
4603 (fontset_font): Record the availability of a font for C both in
4604 the realized fontsets of the current one and the default one.
4605
2f686c87
DN
46062009-06-23 Dan Nicolaescu <dann@ics.uci.edu>
4607
4608 * sysdep.c (child_setup_tty): Remove SIGNALS_VIA_CHARACTERS
4609 conditional, it is always defined on AIX.
4610
666e158e
MB
46112009-06-23 Miles Bader <miles@gnu.org>
4612
4613 * window.c (Vrecenter_redisplay): New variable.
4614 (syms_of_window): Initialize it.
4615 (Qtty): New extern declaration.
4616 (Frecenter): Only do redisplay if Vrecenter_redisplay requests it.
4617
c6da7cd2
JM
46182009-06-23 Jim Meyering <meyering@redhat.com>
4619
1ac9108a
SM
4620 * src/ftfont.c (setup_otf_gstring, ftfont_shape_by_flt):
4621 Use xmalloc and xrealloc (not malloc and realloc), so subsequent heap
632c2030 4622 pointer dereferences are guaranteed to be valid.
c6da7cd2 4623
678dca3d
KH
46242009-06-23 Kenichi Handa <handa@m17n.org>
4625
74d75424
KH
4626 * emacs.c (main): Call init_font ().
4627
4628 * font.h (Vfont_log): Extern it.
4629 (FONT_ADD_LOG, FONT_DEFERRED_LOG): New macros.
4630
4631 * font.c (font_sort_entities, font_list_entities)
4632 (font_matching_entity, font_open_entity)
4633 (font_close_object): Change font_add_log to FONT_ADD_LOG.
4634 (Vfont_log): Delete static.
4635 (font_log_env_checked): Delete this variable.
4636 (font_add_log): Don't check font_log_env_checked.
4637 (font_deferred_log): Check Vfont_log.
4638 (init_font): New function.
4639
678dca3d
KH
4640 * ftfont.c: Change font_add_log to FONT_ADD_LOG.
4641
4642 * w32font.c: Change font_add_log to FONT_ADD_LOG.
4643
4644 * w32uniscribe.c: Change font_add_log to FONT_ADD_LOG.
4645
4646 * xfont.c: Change font_add_log to FONT_ADD_LOG.
4647
4648 * fontset.c (fontset_font): Call FONT_DEFERRED_LOG.
4649 (face_for_char): Don't call font_deferred_log here.
4650 (font_for_char): Likewise.
4651
8a668709
CY
46522009-06-22 Chong Yidong <cyd@stupidchicken.com>
4653
9a01ee33
CY
4654 * w32term.c (x_draw_glyph_string): Use the glyph string's width
4655 rather than its background_width for drawing the overline and
4656 underline (Bug#489).
4657
4658 * xterm.c (x_draw_glyph_string): Use the glyph string's width
4659 rather than its background_width for drawing the overline and
4660 underline (Bug#489).
ec7c9926
CY
4661 (xg_default_icon_file): New variable.
4662 (syms_of_xterm): Initialize it to the Emacs SVG icon file.
4663 (x_bitmap_icon): Under GTK, use xg_default_icon_file.
9a01ee33 4664
8a668709
CY
4665 * xdisp.c (Qbefore_string, Qafter_string): Add externs.
4666 (load_overlay_strings): Remove externs.
4667 (fast_find_position): Function deleted.
4668 (mouse_face_from_buffer_pos): New function, based on
4669 fast_find_position. Correctly handle before-strings,
4670 display-strings, and after-strings (Bug#1220).
4671 (note_mouse_highlight): Use mouse_face_from_buffer_pos.
4672
4d4c02d8
CY
46732009-06-21 Chong Yidong <cyd@stupidchicken.com>
4674
1ac9108a 4675 * xdisp.c (IT_DISPLAYING_WHITESPACE): Define for !HAVE_WINDOW_SYSTEM.
4d4c02d8
CY
4676 (move_it_in_display_line_to, move_it_in_display_line_to)
4677 (display_line): Remove #ifdef HAVE_WINDOW_SYSTEM.
4678
70243478
CY
46792009-06-21 Chong Yidong <cyd@stupidchicken.com>
4680
4681 * Branch for 23.1.
4682
13087e59
JR
46832009-06-21 Jason Rumney <jasonr@gnu.org>
4684
4685 * w32term.c (keyboard_codepage): New static variable.
4686 (w32_read_socket) [WM_INPUTLANGCHANGE]: Update it.
4687 (w32_read_socket) [WM_CHAR]: Use it to decode character
4688 input (bug#3237).
4689 (w32_initialize): Initialize it.
4690 (codepage_for_locale): New function.
4691
4735b74e
KR
46922009-06-20 Ken Raeburn <raeburn@raeburn.org>
4693
4694 * process.c (status_message): Pass Faset index argument as a lisp
4695 object, so as to work with USE_LISP_UNION_TYPE.
4696
0e727afa
YM
46972009-06-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4698
4699 * coding.c (Ffind_coding_systems_region_internal):
4700 Cache checked characters.
4701
cf299835
KH
47022009-06-18 Kenichi Handa <handa@m17n.org>
4703
1ac9108a 4704 * coding.c (decode_coding_iso_2022): Check MSB of bytes more rigidly.
cf299835 4705
90f20d94
AS
47062009-06-18 Andreas Schwab <aschwab@redhat.com>
4707
4708 * xdisp.c (redisplay_internal): Check that the frame is still
4709 live after redisplay of its windows.
4710 (redisplay_windows): Check that the window is still live.
4711
7f1faf1c
KH
47122009-06-17 Andreas Schwab <schwab@linux-m68k.org>
4713
4714 * coding.c (detect_coding_utf_16): Fix previous change.
4715
cc13543e
KH
47162009-06-16 Kenichi Handa <handa@m17n.org>
4717
4718 * coding.c (detect_coding_utf_16): Fix the logic of rejecting
4719 UTF-16 by checking the dispersion of Eth and Oth bytes.
4720
977b85f4
AS
47212009-06-15 Andreas Schwab <schwab@linux-m68k.org>
4722
4723 * coding.c (detect_coding_utf_16): Fix typo counting odd bytes.
4724
66bd43d1
KH
47252009-06-15 Kenichi Handa <handa@m17n.org>
4726
4727 * process.c (status_message): Fix previous change. Be sure to
4728 decode a localized string.
4729
cb5ca9c5
YM
47302009-06-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4731
4732 * xterm.c (x_delete_terminal): Put previous change in #if 0 and
4733 add comment explaining why.
4734
ec7709ba 47352009-06-14 Sidney Markowitz <sidney@sidney.com>
5ee6f629 4736
ec7709ba 4737 * nsmenu.m (EmacsTooltip: setText): Set height of tooltip.
5ee6f629 4738
4b7f335c
AR
47392009-06-14 Adrian Robert <Adrian.B.Robert@gmail.com>
4740
4741 * nsfont.m (ns_attribute_value): Remove.
4742 (ns_attribute_fvalue): Incorporate code from ns_attribute_value.
4743 (ns_has_attribute): Shrink the normal range.
4744 (ns_findfonts): Don't worry about requested spec in determining
4745 need for synthItal.
e41820ee 4746 (ns_get_covering_families): Retain scriptToFamilies.
4b7f335c 4747
73b26103
SZ
47482009-06-14 Seiji Zenitani <zenitani@mac.com>
4749
4750 * xdisp.c [USE_MAC_TOOLBAR]: Remove obsolete definition for Mac Carbon.
4751
5753e4da
KH
47522009-06-11 Kenichi Handa <handa@m17n.org>
4753
4754 * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
4755 overhang for the static composition case.
4756
3561b671
KH
47572009-06-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4758
5753e4da
KH
4759 * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
4760 overhang for the automatic composition case.
4761
3561b671
KH
4762 * xterm.c (x_compute_glyph_string_overhangs): Handle the automatic
4763 composition case.
4764
852bbd41
CY
47652009-06-10 Chong Yidong <cyd@stupidchicken.com>
4766
4767 * xdisp.c (get_next_display_element): When handling wrap-prefix
4768 and line-prefix, treat \n as a control character (bug#3502).
4769
9903d1e6
KH
47702009-06-10 Kenichi Handa <handa@m17n.org>
4771
4772 * font.c (font_parse_family_registry): Fix for one-char foundry.
4773 (font_sort_entities): Initialize prefer_prop[FONT_AVGWIDTH_INDEX].
4774
0bcbaaaa
CY
47752009-06-09 Dmitry Dzhus <dima@sphinx.net.ru> (tiny change)
4776
4777 * process.c (status_message): Fix handling of multibyte signal
4778 string (Bug#3499).
4779
40aa3f13
JM
47802009-06-09 Jim Meyering <meyering@redhat.com>
4781
1f80c7e2
CY
4782 * xfaces.c (Fx_load_color_file): Avoid array bounds error if the
4783 color name is missing.
40aa3f13 4784
72d51285
KH
47852009-06-09 Kenichi Handa <handa@m17n.org>
4786
4787 * charset.c (Fmap_charset_chars): In docstring, state clearly that
4788 FROM-CODE and TO-CODE are codepoints of CHARSET.
4789
c1d04d84
AR
47902009-06-08 Adrian Robert <Adrian.B.Robert@gmail.com>
4791
4792 * nsterm.m (ns_use_system_highlight_color): Drop, unused.
4793
47942009-06-08 Adrian Robert <Adrian.B.Robert@gmail.com>
4795
4796 Changes to support :script/:lang/:otf in NS font driver.
4797 * nsfont.m (nsfont_escape_name, nsfont_unescape_name)
4798 (nsfont_get_family, nsfont_char_width): Rename to ns_ prefix to
4799 indicate not part of font driver interface, and change callers.
4800 (ns_get_family): Remove pointless null check.
4801 (nsfont_spec_to_traits, nsfont_fmember_to_entity): Replace with
4802 ns_spec_to_descriptor, ns_descriptor_to_entity.
4803 (nsfont_trait_distance, nsfont_make_fontset_for_font): Remove.
4804 (ns_attribute_value, ns_attribute_fvalue, ns_has_attribute)
4805 (ns_spec_to_descriptor, ns_descriptor_to_entity)
4806 (ns_charset_covers, ns_lang_to_script, ns_otf_to_script)
4807 (ns_get_req_script, ns_accumulate_script_ranges)
4808 (ns_script_to_charset, ns_get_covering_families, ns_findfonts):
4809 New functions.
4810 (nsfont_list, nsfont_match): Use ns_findfonts.
4811 (nsfont_open): Use font descriptor instead of traits.
4812 (nsfont_draw): Handle "automatic" (lookup-table) compositions.
4813 (dump_glyphstring): Rename to ns_dump_glyphstring.
4814
c7eb9816
AR
4815 * nsterm.h (dump_glyphstring): Rename to ns_dump_glyphstring.
4816
c1d04d84
AR
4817 * nsfns.m (Fns_popup_font_panel): Use shared font manager.
4818
4819 * fontset.c (fontset_from_font): Remove NS-specific code.
4820
ec7709ba 48212009-06-08 Peter Jones <pjones@pmade.com> (tiny change)
c1d04d84
AR
4822
4823 * nsterm.m (ns_draw_window_cursor): Respect cursor_type for
4824 nonactive windows.
4825
31fd7c5c 48262009-06-08 Felix Mueller <felix@enqueue.eu> (tiny change)
c1d04d84 4827
1ac9108a 4828 * nsterm.m (ns_init_paths): Append path separator to INFOPATH variable.
c1d04d84 4829
68852c13 48302009-06-08 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
e7777236
AR
4831
4832 * keyboard.c (kbd_buffer_get_event): Null-check used_mouse_menu.
4833
6756cd1d
CY
48342009-06-07 Chong Yidong <cyd@stupidchicken.com>
4835
4836 * xdisp.c (move_it_in_display_line_to): On text-only terminals,
4837 account for the overflowing of newlines into the last glyph on the
4838 display line (Bug#3482).
4839
28bf482a
DR
48402009-06-05 David Reitter <david.reitter@gmail.com>
4841
ec7709ba
JB
4842 * nsselect.m (Fx_own_selection_internal, Fx_selection_exists_p)
4843 (Fx_selection_owner_p): Rename from Fns_own_selection_internal,
28bf482a
DR
4844 Fns_selection_exists_p, Fns_selection_owner_p.
4845
fdb55376
JR
48462009-06-03 Jason Rumney <jasonr@gnu.org>
4847
4848 * w32fns.c (x_create_tip_frame): Use the uniscribe font backend if
4849 available. (Bug#3379)
4850
05129fbe
KH
48512009-05-29 Kenichi Handa <handa@m17n.org>
4852
1ac9108a
SM
4853 * coding.c (get_translation_table):
4854 Check Venable_character_translation.
05129fbe 4855
ec7709ba 48562009-05-26 David Reitter <david.reitter@gmail.com>
15891144 4857
ec7709ba
JB
4858 * nsterm.m (ns_raise_frame): Only raise frame if visible.
4859 (x_make_frame_visible): Move frame to front rather than calling
15891144 4860 ns_raise_frame().
ec7709ba 4861 (keyDown:): Do not swallow events that aren't re-sent if frame
15891144 4862 isn't key window.
ec7709ba 4863 (drawRect:): Do not set visibility/iconified flags because
15891144
DR
4864 drawRect may be called by NSView even if the frame is hidden.
4865
ec7709ba
JB
4866 * nsfns.m (Fx_create_frame): Follow other ports in
4867 determining visibility; default to t. Ensure async_visible is set.
15891144 4868
21f73755
EZ
48692009-05-23 Eli Zaretskii <eliz@gnu.org>
4870
4871 * dired.c (Ffile_attributes): Doc fix.
4872
34001e41
CY
48732009-05-22 Chong Yidong <cyd@stupidchicken.com>
4874
4875 * m/mips.h [GNU_LINUX]: Don't define DATA_START (Bug#2685).
4876
46306a17
SM
48772009-05-21 Stefan Monnier <monnier@iro.umontreal.ca>
4878
4879 * xfont.c (xfont_list_pattern): Don't initialize xfont_scripts_cache
4880 and xfont_scratch_props.
4881 (syms_of_xfont): Do it here instead.
4882 (xfont_find_ccl_program): Delete, unused.
4883 (xfont_open): Delete unused var `i'.
4884
ef6e0694
KH
48852009-05-21 Kenichi Handa <handa@m17n.org>
4886
4887 * fontset.c (Qlatin): Don't make it static.
4888
46306a17
SM
4889 * xfont.c (xfont_chars_supported, xfont_supported_scripts):
4890 New functions.
ef6e0694
KH
4891 (xfont_scripts_cache, xfont_scratch_props): New variables.
4892 (Qlatin, Vscalable_fonts_allowed): Extern it.
46306a17
SM
4893 (xfont_list_pattern): Argument changed. Callers changed.
4894 Check Vscalable_fonts_allowed. Check the support of a script.
ef6e0694
KH
4895 (xfont_list): Don't reject a font spec with :script property.
4896 (xfont_has_char): Fix setting of encoding.
4897 (syms_of_xfont): Staticpro and initialize xfont_scripts_cache and
4898 xfont_scratch_props.
4899
49002009-05-19 Kenichi Handa <handa@m17n.org>
4901
46306a17 4902 * font.c (font_sort_entities): Rename from font_sort_entites.
ef6e0694
KH
4903 Callers changed.
4904
49052009-05-18 Kenichi Handa <handa@m17n.org>
4906
4907 * font.c (font_find_for_lface): Copy SPEC's FONT_TYPE too.
4908
ac71ced7
SM
49092009-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
4910
4911 * frame.c (do_switch_frame) [NS_IMPL_COCOA]: Don't raise any window.
4912 (delete_frame) [NS_IMPL_COCOA]: Instead, do it here.
4913
1c6d1051
YM
49142009-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4915
4916 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase here.
4917 (x_delete_terminal): Dissociate resource database from display and
4918 then call XrmDestroyDatabase before closing display.
4919
9b9b779c
AR
49202009-05-18 Adrian Robert <Adrian.B.Robert@gmail.com>
4921
4922 * nsterm.m (ns_read_socket): Remove unused variable.
1564e649
AR
4923 * frame.c (do_switch_frame): Under NS_IMPL_COCOA section, check
4924 whether selected frame is viable before raising it (based on patch
4925 by David Reitter), and improve commentary.
4926 * nsfont.m (nsfont_make_fontset_for_font): Avoid a compiler warning.
9b9b779c 4927
cccd42d5
KH
49282009-05-15 Kenichi Handa <handa@m17n.org>
4929
4930 * font.c (Ffont_spec): Check arguments.
4931
337fbd17
CY
49322009-05-14 Chong Yidong <cyd@stupidchicken.com>
4933
4934 * xfaces.c (tty_supports_face_attributes_p): Recognize unspecified
4935 weight when testing attributes (Bug#3282).
4936
47a6002f
JD
49372009-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4938
4939 * gtkutil.c (xg_frame_set_char_size): Set frame pixel width/height to
4940 what we expect to get in the next ConfigureNotify event.
4941
9cb363db
YM
4942 * xftfont.c (xftfont_open): Make sure that Xrender extension is added
4943 before Xft one (Bug#1696).
4944
b9126609
CY
49452009-05-07 David Reitter <david.reitter@gmail.com>
4946
4947 * nsfns.m (Fx_display_planes): Compute bitplanes using
4948 NSBitsPerPixelFromDepth (Bug#3207).
4949
27a69fd9
CY
49502009-05-10 Chong Yidong <cyd@stupidchicken.com>
4951
4952 * editfns.c (Ftranspose_regions): Doc fix (Bug#3248).
4953
00f37552
TTN
49542009-05-10 Ulrich Mueller <ulm@gentoo.org>
4955
4956 * s/gnu-linux.h: Make GCPROs and UNGCPRO no-ops also on SuperH.
4957
2d82a920
DR
49582009-05-07 David Reitter <david.reitter@gmail.com>
4959
ec7709ba
JB
4960 * nsterm.m (ns_dumpglyphs_stretch, ns_dumpglyphs_image):
4961 Respect mouse face background.
2d82a920 4962
46b0d52d
DR
49632009-05-07 David Reitter <david.reitter@gmail.com>
4964
ec7709ba
JB
4965 * nsterm.m (note_mouse_movement, ns_frame_up_to_date):
4966 Mouse movement/highlight: bracket drawing operations
46b0d52d
DR
4967 in ns_update_begin and ns_update_end.
4968
ce1b23bb
SM
49692009-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
4970
5996e1b7
SM
4971 * nsfns.m (ns_get_screen): Rewrite.
4972 Don't presume selected-frame is of type `ns'.
4973
ba98e3a0
SM
4974 * font.c (font_update_drivers): Sanity fallback to avoid disabling
4975 all drivers.
4976
ce1b23bb
SM
4977 * nsterm.m (-windowDidResize:): Avoid inf-loop under GNUStep.
4978
bcda200f
YM
49792009-05-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4980
4981 * keyboard.h (add_user_signal): Fix typo in extern.
4982
4983 * lisp.h (add_user_signal): Remove extern.
4984
4985 * unexelf.c (unexec): Consider a section to precede the .bss section
4986 if its addresses overlap that of .bss.
4987 (unexec) [NS_IMPL_GNUSTEP]: Copy ObjC-related data from old file
4988 instead of dumping process.
4989
864660a2
SM
49902009-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
4991
4992 * keyboard.c (syms_of_keyboard): Staticpro pending_funcalls.
4993
50da4e56
SM
49942009-05-04 Stefan Monnier <monnier@iro.umontreal.ca>
4995
4996 * Makefile.in (ctagsfiles1, ctagsfiles2): Include ObjC files in TAGS.
4997
51520a1a
DN
49982009-05-02 Dan Nicolaescu <dann@ics.uci.edu>
4999
5000 * xterm.c (x_handle_net_wm_state): Move declaration of lval before
5001 any statements.
5002
409ea3a1
AS
50032009-05-02 Andreas Schwab <schwab@linux-m68k.org>
5004
59c4c60f
AS
5005 * process.c (read_process_output): Make sure the current buffer is
5006 always restored.
5007
409ea3a1
AS
5008 * coding.c (record_conversion_result): Don't modify
5009 Vlast_code_conversion_error for successful result.
5010 (alloc_destination): Don't clobber conversion result. (Bug#1650)
5011
56f00ed2
KH
50122009-05-01 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
5013
5014 * charset.c (load_charset): Reformat X==Y==Z to (X==Y)==Z.
896b1cc9 5015 (load_charset_map): Remove unnecessary code.
56f00ed2 5016
4491c9d2
DR
50172009-04-30 David Reitter <david.reitter@gmail.com>
5018
35f5b128 5019 * nsterm.m (convert_ns_to_X_keysym): Define function keys f16
4491c9d2
DR
5020 through f24.
5021
6970f632
CY
50222009-04-30 Chong Yidong <cyd@stupidchicken.com>
5023
5024 * xfaces.c (face_at_buffer_position): New arg base_face_id.
5025
5026 * xdisp.c (handle_face_prop): Pass base_face_id of iterator to
5027 face_at_buffer_position.
5028 (face_before_or_after_it_pos, get_next_display_element)
5029 (note_mouse_highlight): Update face_at_buffer_position call.
5030
5031 * term.c (term_mouse_highlight):
5032 * msdos.c (IT_note_mouse_highlight):
5033 * fontset.c (Finternal_char_font):
35f5b128 5034 * font.c (font_at, font_range): Update face_at_buffer_position call.
6970f632
CY
5035
5036 * dispextern.h (face_at_buffer_position): Update prototype.
5037
0c616f63
KH
50382009-04-30 Kenichi Handa <handa@m17n.org>
5039
35f5b128 5040 * fontset.c (fontset_find_font): Check if rfont_def is Qnil or not.
0c616f63 5041
ad3aaf33
AS
50422009-04-29 Andreas Schwab <schwab@linux-m68k.org>
5043
5044 * callproc.c (Fcall_process): Fix GC protection. Make sure
5045 current buffer is always restored.
5046
c3c963a0
YM
50472009-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5048
5049 * atimer.c (init_atimer): Also clear stopped_atimers.
5050
5051 * keyboard.c (init_keyboard) [POLL_FOR_INPUT]: Reset poll_timer.
5052
7e3386cb
YM
5053 * process.c (create_process): Clean up merger residues of
5054 2008-07-17 change.
5055
91f68422
CY
50562009-04-29 Ulrich Mueller <ulm@gentoo.org>
5057
5058 * lread.c (Vread_circle): New variable.
5059 (read1): Disable recursive read if Vread_circle is nil.
5060
24b34550
KH
50612009-04-29 Kenichi Handa <handa@m17n.org>
5062
5063 * fontset.h (set_default_ascii_font): Delete extern.
5064
5065 * fontset.c (set_default_ascii_font): Delete this unused function.
5066
5067 * frame.c (x_set_font): When ARG is a font-object, check if the
5068 font-object matches with the ASCII font-spec of the frame's
9c358bda 5069 fontset. If not, create a new fontset for the frame. (Bug #3075)
24b34550 5070
77bf07e1
AS
50712009-04-28 Andreas Schwab <schwab@linux-m68k.org>
5072
5073 * fns.c (Flocale_info): Protect vector from GC during decoding.
5074
5075 * process.c (Fstart_process): Protect argv strings from GC during
5076 encoding.
5077
2c55aacf
AS
50782009-04-27 Andreas Schwab <schwab@linux-m68k.org>
5079
5080 * sysdep.c: Include <ctype.h>.
5081
b892d3c9
DR
50822009-04-27 David Reitter <david.reitter@gmail.com>
5083
35f5b128 5084 * nsfont.m (nsfont_open): Remove unused variable shrink.
b892d3c9
DR
5085 Remove commented-out code.
5086
9d0644c4
JB
50872009-04-26 Johan Bockgård <bojohan@gnu.org>
5088
5089 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
5090
b7053016
JR
50912009-04-25 Jason Rumney <jasonr@gnu.org>
5092
5093 * w32font.c (clear_cached_metrics): Remove, unused since 2008-08-02.
5094
4e8231f3
YM
50952009-04-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5096
5097 * fringe.c (init_fringe_bitmap) [HAVE_X_WINDOWS && WORDS_BIG_ENDIAN]:
5098 Swap bytes in short integer if fringe bitmap width > 8.
5099
493dcf2c
KH
51002009-04-23 Kenichi Handa <handa@m17n.org>
5101
5102 * xfaces.c (Fx_list_fonts): If a font size is specified in
5103 PATTERN, set it in returned scalable fonts.
5104
401e9e57
CY
51052009-04-22 Chong Yidong <cyd@stupidchicken.com>
5106
708e05dc
CY
5107 * keyboard.c (Fset_input_meta_mode): Doc fix.
5108
5109 * dispnew.c (Fsend_string_to_terminal): Doc fix.
5110
1ac9108a 5111 * data.c (Fterminal_local_value, Fset_terminal_local_value): Doc fixes.
708e05dc
CY
5112
5113 * coding.c (Fterminal_coding_system): Doc fix.
5114
5115 * xfns.c (Fx_display_grayscale_p, Fx_display_pixel_width)
5116 (Fx_display_pixel_height, Fx_display_planes)
5117 (Fx_display_color_cells, Fx_server_max_request_size)
5118 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
5119 (Fx_display_mm_height, Fx_display_mm_width)
5120 (Fx_display_backing_store, Fx_display_visual_class)
1ac9108a
SM
5121 (Fx_display_save_under, Fx_close_connection, Fx_synchronize):
5122 Doc fixes, replacing "terminal id" with "terminal object".
708e05dc
CY
5123 (check_x_display_info): Handle terminal objects instead of
5124 terminal ids.
5125
401e9e57
CY
5126 * term.c (Ftty_display_color_p, Ftty_display_color_cells)
5127 (Ftty_type, Fcontrolling_tty_p, Ftty_no_underline, Fsuspend_tty)
1ac9108a
SM
5128 (Fresume_tty, Vsuspend_tty_functions, Vresume_tty_functions):
5129 Doc fixes, replacing "terminal id" with "terminal object".
401e9e57 5130
df80c7f0
KH
51312009-04-21 Kenichi Handa <handa@m17n.org>
5132
5a8f12af 5133 * font.c (font_load_for_lface): Cancel previous change (bug#2994).
c0a6070d 5134 (font_score): Check AVGWIDTH too.
908567ef 5135
df80c7f0
KH
5136 * coding.c (decode_coding_utf_16): Reduce charbuf_end for the
5137 worst case.
1ac9108a
SM
5138 (decode_coding_sjis, decode_coding_big5, decode_coding_charset)
5139 (decode_coding_emacs_mule, decode_coding_iso_2022): Likewise.
df80c7f0 5140
705af33f
JR
51412009-04-19 Jason Rumney <jasonr@gnu.org>
5142
5143 The following changes fix Bug#3005 for wide glyphs on each platform,
b71ac3dd 5144 without reintroducing Bug#1258 for stretch glyphs.
705af33f
JR
5145
5146 * xterm.c (x_draw_bar_cursor): Limit cursor width differently for
5147 BAR_CURSOR and HBAR_CURSOR. Calculate width of HBAR_CURSOR using
5148 get_phys_cursor_geometry.
5149
b71ac3dd 5150 * w32term.c (x_draw_bar_cursor): Limit cursor width differently
705af33f
JR
5151 for BAR_CURSOR and HBAR_CURSOR. Calculate width of HBAR_CURSOR
5152 using get_phys_cursor_geometry.
5153
5154 * nsterm.m (ns_draw_window_cursor): HBAR_CURSOR width already
5155 correctly calculated.
5156
dc2933eb
JD
51572009-04-19 Jan Djärv <jan.h.d@swipnet.se>
5158
1ac9108a
SM
5159 * gtkutil.c (xg_tool_bar_menu_proxy, update_frame_tool_bar):
5160 Use G_CALLBACK instead of GTK_SIGNAL_FUNC which is deprecated.
dc2933eb
JD
5161 (xg_initialize): Use g_type_class_ref instead of gtk_type_class which
5162 is deprecated.
5163
973e7849
AS
51642009-04-18 Andreas Schwab <schwab@linux-m68k.org>
5165
5166 * font.c (font_put_frame_data): Use xfree instead of free.
5167
314d66f4
JB
51682009-04-17 Juanma Barranquero <lekktu@gmail.com>
5169
5170 * w32font.c (Qja, Qko): Remove declarations.
5171 (syms_of_w32font): Don't DEFSYM them.
5172
cf702558
CY
51732009-04-17 Chong Yidong <cyd@stupidchicken.com>
5174
5175 * font.c (Qja, Qko): Move definitions here from ftfont.c.
5176
5177 * font.h (Qja, Qko): Extern them.
5178
5179 * ftfont.c (Qja, Qko): Remove declarations.
5180
5181 * xfont.c (Qja, Qko): Remove declarations.
5182
b50504f5
KH
51832009-04-17 Kenichi Handa <handa@m17n.org>
5184
bde25748
KH
5185 * editfns.c (Ftranslate_region_internal): Use Fconcat to make a
5186 string from a vector to handle Latin-1 characters correctly.
5187
b50504f5
KH
5188 * ftfont.c (ftfont_pattern_entity): Return a newly allocated
5189 entity even if the cache hits.
5190
f4646fff
AS
51912009-04-16 Andreas Schwab <schwab@linux-m68k.org>
5192
5193 * search.c (boyer_moore): Use zero as marker value for a possible
6340c70e 5194 match instead of depending on overflow behavior. (Bug#2844)
f4646fff 5195
e7deaab0
AS
5196 * search.c: Use EMACS_INT for buffer positions. Add prototypes.
5197 * lisp.h: Adjust prototypes.
5198
0a0e7d49
CY
51992009-04-16 Chong Yidong <cyd@stupidchicken.com>
5200
5201 * keyboard.c (adjust_point_for_property): Disable 2009-02-12
5202 change (Bug#3003).
5203
3c908a57
KH
52042009-04-16 Kenichi Handa <handa@m17n.org>
5205
1ac9108a 5206 * xfont.c (xfont_has_char): Special handling of `ja' and `ko' adstyle.
bd0af90d
KH
5207
5208 * xftfont.c (xftfont_has_char): Special handling of `ja' and `ko'
5209 adstyle.
5210
5211 * ftfont.c (Qja, Qko): Don't make them static.
5212 (enum ftfont_cache_for): New enum.
5213 (fc_charset_table): Undo the previous change.
5214 (ftfont_get_latin1_charset): Delete it.
1ac9108a
SM
5215 (ftfont_pattern_entity): Check cache by ftfont_lookup_cache.
5216 Set FONT_SIZE_INDEX of the entity to 0 for a scalable font. For a
bd0af90d
KH
5217 non-scarable font, try to get AVERAGE_WIDTH.
5218 (ftfont_lookup_cache): Argument FOR-FACE is changed to CACHE_FOR.
5219 Change ft_face_cache from a list of a hash-table. Don't check
5220 `ja' and `ko' adstyle here.
5221 (ftfont_get_fc_charset): Call ftfont_lookup_cache with
5222 FTFONT_CACHE_FOR_CHARET.
5223 (ftfont_get_charset): Undo the previous change.
1ac9108a 5224 (ftfont_open): Call ftfont_lookup_cache with FTFONT_CACHE_FOR_FACE.
bd0af90d
KH
5225 (ftfont_close): Likewise.
5226 (ftfont_has_char): Special handling of `ja' and `ko' adstyle.
5227
5228 * font.c (font_sort_entites): Change the meaning of the arg
5229 BEST-ONLY. Don't optimize for VEC of lenght 1.
5230 (font_select_entity): Just return the value of font_sort_entites.
5231
5232 * xfaces.c (merge_face_vectors): Reflect font properties in
5233 to[LFACE_FONT_INDEX] to the other face attributes. Don't call
5234 font_clear_prop if a face attribute doesn't change.
5235
3c908a57
KH
5236 * charset.h (charset_ksc5601): Extern it.
5237
5238 * charset.c (charset_ksc5601): New variable.
5239 (Fdefine_charset_internal): Set charset_ksc5601.
5240 (init_charset_once): Initialize charset_ksc5601 to -1.
5241
d65859c3
DN
52422009-04-15 Dan Nicolaescu <dann@ics.uci.edu>
5243
5244 * fileio.c (history_delete_duplicates): Remove unused declaration.
5245
5246 * callint.c (history_delete_duplicates): New declaration.
5247 (Fcall_interactively): Remove command history duplicates when
5248 history_delete_duplicates is true.
5249
3ba010e5
EZ
52502009-04-14 Eli Zaretskii <eliz@gnu.org>
5251
5252 * buffer.c (syms_of_buffer) <line-spacing>: Doc fix.
5253
06f19b91
KH
52542009-04-14 Kenichi Handa <handa@m17n.org>
5255
5256 * font.c (Ffont_info): Fix docstring. Fix the second element of
5257 the returned value (bug#2949).
5258
2cce8bfc
CY
52592009-04-14 Chong Yidong <cyd@stupidchicken.com>
5260
5261 * xdisp.c (Vwrap_prefix, Vline_prefix): Reflow docstrings.
5262
d156542d
KH
52632009-04-14 Kenichi Handa <handa@m17n.org>
5264
5265 * xfont.c (xfont_has_char): The font has C if C is ASCII and the
5266 encoding charset is ascii_compatible.
5267
5268 * charset.c (Fdefine_charset_internal): Make charset
5269 ascii-compatible if the method is CHARSET_METHOD_OFFSET, the
5270 code_offset is 0, and covers all ASCII characters.
5271
86fa089e
SM
52722009-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
5273
5274 * nsselect.m (symbol_to_nsstring, clean_local_selection_data)
5275 (ns_string_to_pasteboard_internal):
5276 * nsmenu.m (process_dialog):
5277 * nsimage.m (ns_load_image): Use SDATA and ASET where appropriate.
5278 * nsfont.m (nsfont_open): Use XHASH to make it compile with LISP_UNION.
5279 * lisp.h (Fx_load_color_file): Declare.
5280
a8a3728b
KH
52812009-04-13 Kenichi Handa <handa@m17n.org>
5282
1ac9108a 5283 * font.c (font_delete_unmatched): Preserve the order of list elements.
a8a3728b
KH
5284 (font_select_entity): Suppress the code to optimize for the same
5285 kind of fonts.
5286 (font_load_for_lface): Get a font that supports at least ASCII
5287 characters.
5288
5289 * ftfont.c (Qja, Qko): New variables.
5290 (fc_charset_table): Delete uniquifier data for iso8859-1.
5291 (ftfont_get_latin1_charset): New function.
5292 (get_adstyle_property): New function.
5293 (ftfont_pattern_entity): Set FONT_ADSTYLE_INDEX of entity for
5294 bitmap fonts.
5295 (ftfont_lookup_cache): Handle the case that KEY is a font-entity.
5296 Delete iso-8859-1 range from the charset of fonts whose adstyle is
5297 `ko' or `ja'.
5298 (ftfont_get_fc_charset): Call ftfont_lookup_cache with ENTITY.
1ac9108a 5299 (ftfont_get_charset): For iso8859-1, call ftfont_get_latin1_charset.
a8a3728b
KH
5300 (ftfont_list): Don't refuse a font spec with non-nil `adstyle'
5301 property.
5302 (ftfont_open): Call ftfont_lookup_cache with ENTITY.
5303 (syms_of_ftfont): DEFSYM Qja and Qko.
5304
483670b5
KH
53052009-04-09 Kenichi Handa <handa@m17n.org>
5306
12b55765
KH
5307 * charset.c (map_charset_chars): For a charset of `superset'
5308 method, fix calculation of code range.
5309
483670b5
KH
5310 * font.c (font_put_extra): If VAL is nil, delete the slot for PROP
5311 from the list of extra properties.
5312 (font_clear_prop): Be sure to delete `:name' font property.
5313
57d3b93b
KH
53142009-04-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5315
b4b2c2ca
YM
5316 * dispnew.c (redraw_overlapping_rows): Fix detection of
5317 overlapping for topmost and bottommost rows.
5318
1ac9108a 5319 * ftfont.c (ftfont_text_extents): Fix calculation of metrics->descent.
57d3b93b 5320
472c3609
JR
53212009-04-06 Jason Rumney <jasonr@gnu.org>
5322
5323 * frame.c (x_set_font): Avoid C99 mid-block variable declaration.
5324
ab193662
KH
53252009-04-06 Kenichi Handa <handa@m17n.org>
5326
5327 * ftxfont.c (ftxfont_draw_backgrond): Fix args to XFillRectangle.
5328
5329 * xftfont.c (xftfont_open): Fix setting font->underline_thickness.
5330
0c26f026
KH
53312009-04-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5332
5333 * ftfont.c (ftfont_open): Fix checking of the return value of
5334 FT_Load_Char. Fix setting font->underline_thickness.
5335
e173bbce
CY
53362009-04-04 Chong Yidong <cyd@stupidchicken.com>
5337
5338 * terminal.c (Fterminal_name, Fdelete_terminal, Fterminal_name)
5339 (Fterminal_parameters, Fterminal_parameter)
5340 (Fset_terminal_parameter): In doc string, refer to terminal
5341 objects rather than terminal ids.
5342
693a2698
EZ
53432009-04-04 Eli Zaretskii <eliz@gnu.org>
5344
5345 * dosfns.c (system_process_attributes) [SYSTEM_MALLOC]: Don't call
5346 ret_lim_data. (Bug#2867)
5347
d5221487
CY
53482009-04-03 Chong Yidong <cyd@stupidchicken.com>
5349
5350 * term.c (produce_stretch_glyph): Reduce width of stretch glyphs
5351 so they don't get wider than the window, matching 2006-01-23
5352 change to the partner function in xdisp.c (Bug#2800).
5353
223509a3
KH
53542009-04-03 Kenichi Handa <handa@m17n.org>
5355
5356 * print.c (print_object): Make each lowest sub_char_table start a
5357 new line (Bug#2866).
5358
74fcd0b1
KH
53592009-04-02 Kenichi Handa <handa@m17n.org>
5360
5361 * fontset.c (fontset_font): Record no-font when a fontset
5362 explicitly tells not to try another font-specs.
5363
c542407d
SM
53642009-03-30 Pierre Poissinger <pierre.poissinger@gmail.com> (tiny change)
5365
5366 * charset.c (map_charset_for_dump): Add missing UNGCPRO.
5367
e3869731
KH
53682009-03-30 Kenichi Handa <handa@m17n.org>
5369
d8d2f142
KH
5370 * fontset.c (fontset_from_font): Specify only registry in a
5371 font-spec for all characters supported by that registry.
5372
e3869731
KH
5373 * ftfont.c: Fix previous change. Define ftfont_variation_glyphs
5374 even if HAVE_M17N_FLT is not defined.
5375
5da5f805
CY
53762009-03-29 Sebastian Rose <sebastian_rose@gmx.de> (tiny change)
5377
5378 * ftfont.c: Conditionalize prototyping and use of
5379 ftfont_variation_glyphs.
5380
ab226c50
SM
53812009-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
5382
9628fed7
SM
5383 * frame.c (delete_frame): Work around compiler bug.
5384
5385 * editfns.c (general_insert_function): Adjust to insdel.c changes.
5386 * insdel.c (prepare_to_modify_buffer, signal_before_change):
5387 Some more EMACS_INT.
5388 * lisp.h (copy_text, count_size_as_multibyte): Fix last change.
5389
5390 * xdisp.c (dump_glyph): Fix typo.
5391
ae19ba7c
SM
5392 * insdel.c (move_gap, move_gap_both, gap_left, gap_right)
5393 (adjust_markers_gap_motion, adjust_markers_for_delete)
5394 (adjust_markers_for_insert, adjust_point)
5395 (adjust_markers_for_replace, make_gap_larger, make_gap_smaller)
5396 (make_gap, copy_text, count_size_as_multibyte, insert)
5397 (insert_and_inherit, insert_before_markers)
5398 (insert_before_markers_and_inherit, insert_1)
5399 (count_combining_before, count_combining_after, insert_1_both)
5400 (insert_from_string, insert_from_string_before_markers)
5401 (insert_from_string_1, insert_from_gap, insert_from_buffer)
5402 (insert_from_buffer_1, adjust_after_replace)
5403 (adjust_after_replace_noundo, adjust_after_insert, replace_range)
5404 (replace_range_2, del_range, del_range_1, del_range_byte)
5405 (del_range_both, del_range_2, modify_region)
5406 (prepare_to_modify_buffer, signal_before_change)
5407 (signal_after_change, Fcombine_after_change_execute): Use EMACS_INT
5408 for buffer positions and sizes.
5409 * lisp.h: Adjust prototypes accordingly.
5410
5411 * fileio.c (adjust_markers_for_delete): Move declaration to lisp.h.
5412 (non_regular_inserted, non_regular_nbytes, read_non_regular)
5413 (Finsert_file_contents): Use EMACS_INT for buffer positions.
5414
ab226c50
SM
5415 * fileio.c (Finsert_file_contents): Don't limit size to INT_MAX/4.
5416
46dfb8fb
JD
54172009-03-27 Jan Djärv <jan.h.d@swipnet.se>
5418
5419 * frame.c (x_set_font): If the fullscreen property is non-nil, adjust
5420 lines and columns so we keep the same pixel height and width.
5421
5422 * xterm.c (handle_one_xevent): Call x_handle_net_wm_state if
5423 the property _NET_WM_STATE has changed.
46dfb8fb
JD
5424 (x_handle_net_wm_state): New function to update frame parameter
5425 fullscreen.
5426 (x_term_init): Initialize atoms for _NET_WM_STATE.
5427
5428 * xterm.h (struct x_display_info): Add atoms for _NET_WM_STATE.
5429
d347e494
SM
54302009-03-27 Kevin Ryde <user42@zip.com.au>
5431
5432 * keyboard.c (tty_read_avail_input): Don't treat a -1 return from
5433 Gpm_GetEvent as an error that justifies closing the filedescriptor.
5434 * term.c (close_gpm): Get the filedescriptor as a (new) parameter.
5435 (Fgpm_mouse_stop): Pass that new parameter.
5436 * termhooks.h (close_gpm): Adjust prototype.
5437
84db11d6
SM
54382009-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
5439
c95a5008
SM
5440 * lisp.h (Fx_focus_frame): Declare.
5441
84db11d6
SM
5442 * callint.c (Fcall_interactively): For '^' just delegate the work to
5443 handle-shift-selection.
5444 (syms_of_callint): Move declaration of shift-select-mode to simple.el.
5445
0a1958d6
CY
54462009-03-24 Chong Yidong <cyd@stupidchicken.com>
5447
0bfdff23
CY
5448 * editfns.c (Ffloat_time): Doc fix (Bug#2768).
5449
0a1958d6
CY
5450 * data.c (Qinteractive_form): New variable.
5451 (Finteractive_form): Use it.
5452
5453 * eval.c (Fcommandp): Use Qinteractive_form.
5454
58aec0d6
JR
54552009-03-24 Jason Rumney <jasonr@gnu.org>
5456
5457 * fileio.c (Fsubstitute_in_file_name): Always work on a copy.
5458 Calculate total size precisely. Decode environment variables
5459 before substituting. (Bug#38)
5460
553dd618
KH
54612009-03-24 Kenichi Handa <handa@m17n.org>
5462
5463 * font.c (find_font_encoding): Return Qnil for unsupported
639239cf 5464 encoding (Bug#2722).
553dd618 5465
c39ea606
JD
54662009-03-23 Jan Djärv <jan.h.d@swipnet.se>
5467
5468 * gtkutil.c (xg_display_open): Assign a value to gdpy_def, check
5469 that gdpy is set.
5470
bc9b2b5e
AM
54712009-03-22 Alan Mackenzie <acm@muc.de>
5472
5473 * callint.c (Finteractive): Clarify the doc string - even
5474 promptless elements need \n separators.
5475
9f995a76
JR
54762009-03-22 Jason Rumney <jasonr@gnu.org>
5477
5478 * w32term.c (syms_of_w32term): Doc fix for
5479 x-use-underline-position-properties.
5480
22749e9a
EZ
54812009-03-21 Eli Zaretskii <eliz@gnu.org>
5482
5483 * w32.c (getpwuid): Change argument type to unsigned.
5484 (struct w32_id): Change type of `rid' member to unsigned.
5485 (w32_cached_id, w32_add_to_cache, get_name_and_id): Change type of
5486 argument ID to unsigned. All callers changed.
5487 (getuid, geteuid, getgid, getegid): Change return type to unsigned.
5488
e00553bf
EZ
54892009-03-20 Eli Zaretskii <eliz@gnu.org>
5490
5491 * editfns.c (Fuser_uid, Fuser_real_uid): If UID as EMACS_INT is
5492 negative, produce a float value.
5493
5494 * dired.c (make_uid, make_gid): New functions.
5495 (Ffile_attributes): Use them to avoid negative UID and GID.
5496
f761d6b6
JB
54972009-03-20 Juanma Barranquero <lekktu@gmail.com>
5498
5499 * keyboard.c (Fcurrent_idle_time): Reflow docstring.
5500 (syms_of_keyboard) <command-hook-internal, input-method-function>:
5501 Fix typos in docstrings.
5502
d507f8d7
KH
55032009-03-19 Kenichi Handa <handa@m17n.org>
5504
5505 * fontset.c (Fset_fontset_font): When a spec of ASCII font is
f761d6b6
JB
5506 changed, use font_load_for_lface to get a new font object.
5507 Call free_realized_fontset after handling ASCII font change.
d507f8d7
KH
5508
5509 * frame.c (x_set_font): Handle the case that ARG is a cons.
5510
c68845e0
GM
55112009-03-19 Glenn Morris <rgm@gnu.org>
5512
5513 * fileio.c (Fsubstitute_in_file_name): Doc fix.
5514
bfa49dd1
CY
55152009-03-19 Chong Yidong <cyd@stupidchicken.com>
5516
5517 * indent.c (Fvertical_motion): Undo 2005-01-19 change (Bug#2694).
5518
8458d4c1
KH
55192009-03-19 Kenichi Handa <handa@m17n.org>
5520
5521 * charset.c (load_charset_map_from_file): When a mapfile can't be
5522 loaded, signal an error.
5523
78e7d1fe
EZ
55242009-03-18 Eli Zaretskii <eliz@gnu.org>
5525
5526 * dired.c (Ffile_attributes): Make sure UID and GID are always
5527 positive, even if the value is too large for a positive EMACS_INT.
5528 Doc fix.
5529
5530 * editfns.c (Fuser_login_name): Support float arguments. Doc fix.
5531
5da9fdfa
YM
55322009-03-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5533
5534 * xmenu.c (xdialog_show): Move Fredisplay call ...
5535 (Fx_popup_dialog): ... here.
5536
7519c40d
SM
55372009-03-18 Stefan Monnier <monnier@iro.umontreal.ca>
5538
5539 * dired.c (file_name_completion): Disable the first optimization just
5540 installed, since it is not implemented correctly.
5541
2cd298e2
SM
55422009-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
5543
5544 * dired.c (file_name_completion): Check completion-ignored-extensions
c95a5008 5545 only if the entry can affect bestmatch.
2cd298e2
SM
5546 Stop the search early, as Ftry_completion already does.
5547
48d37adf
CY
55482009-03-17 Chong Yidong <cyd@stupidchicken.com>
5549
e10c9c93 5550 * minibuf.c (Vminibuffer_completion_confirm): Doc fix.
48d37adf 5551
9286b16a
CY
55522009-03-15 Chong Yidong <cyd@stupidchicken.com>
5553
5554 * keyboard.c (parse_menu_item): Don't display remappings as menu
5555 equivalent bindings (Bug#788).
5556
f7b146dc
JR
55572009-03-15 Jason Rumney <jasonr@gnu.org>
5558
5559 * w32term.h (WM_EMACS_PAINT): New message.
5560 * w32term.c (w32_read_socket): Use it instead of WM_PAINT.
5561 * w32fns.c (w32_wnd_proc): Change WM_PAINT to WM_EMACS_PAINT
5562 before passing to lisp thread. (Bug#950)
5563
f761d6b6 55642009-03-14 David Reitter <david.reitter@gmail.com>
c6c62e78 5565
d93f9575
CY
5566 * nsterm.m (ns_shutdown_properly, -terminate): Remove global state
5567 variable as it was never reset.
5568 (ns_term_init): Remove initialization of Lisp-settable defaults
5569 and ns_expand_space.
5570 (-setPanelFromDefaultValues): Remove ns_expand_space.
5571 (-showPreferencesWindow): Send new KEY_NS_SHOW_PREFS key.
5572 * nsfont.m (nsfont_open): Remove ns_expand_space, assume -0.5
c6c62e78
DR
5573 i.e. no additional spacing, similar to Carbon port.
5574
d93f9575
CY
5575 * nsterm.h: Define KEY_NS_SHOW_PREFS key.
5576 * nsfns.m (ns-popup-prefs-panel): Remove.
c6c62e78 5577
305018ec
JD
55782009-03-14 Jan Djärv <jan.h.d@swipnet.se>
5579
5580 * sound.c (alsa_configure): Remove call to deprecated
5581 snd_pcm_sw_params_set_xfer_align.
5582
f761d6b6 55832009-03-14 Stephen Berman <stephen.berman@gmx.net>
4a02423f
JD
5584
5585 * gtkutil.c (xg_tool_bar_callback): Set focus back to the frame
5586 after clicking in a detached tool bar.
5587 (xg_tool_bar_proxy_callback): Remove call to Fx_focus_frame.
5588
46e722a9
SM
55892009-03-13 Stefan Monnier <monnier@iro.umontreal.ca>
5590
348db3dd
SM
5591 * fontset.c (fontset_from_font, Ffontset_info): YAILOM (Yet another
5592 int/Lisp_Object mixup).
46e722a9 5593
a3d16f39
KH
55942009-03-13 Kenichi Handa <handa@m17n.org>
5595
5596 * fontset.c (Ffontset_info, check_fontset_name): New arg frame.
fe24f56a 5597 Handle NAME nil and t correctly. Callers changed.
a3d16f39
KH
5598 (font_def_arg, add_arg, from_arg, to_arg): Delete them.
5599 (set_fontset_font): Change ARG to a vector. Handle range_list in
5600 ARG correctly.
5601 (Fset_fontset_font): Fix the case that TARGET is both a script
fe24f56a 5602 name and charset name. Adjust the arg to set_fontset_font for
a3d16f39
KH
5603 the above change.
5604 (fontset_from_font): Fix previous change.
fe24f56a 5605 (Ffontset_info): Adjust for the 2008-07-09 change of fontset
a3d16f39
KH
5606 entry. If FONTSET is the default fontset, don't set the extra
5607 slot of the returning char-table.
5608
b066e6b6
JB
56092009-03-12 Juanma Barranquero <lekktu@gmail.com>
5610
5611 * nsfns.m (Fx_close_connection): Doc fix.
5612 (Fns_do_applescript): Reflow docstring.
5613 (Fns_hide_others, Fns_hide_emacs, Fns_convert_utf8_nfd_to_nfc)
5614 (Fx_display_pixel_width, Fx_display_pixel_height)
5615 (Fns_display_usable_bounds, Fx_display_planes, Fx_show_tip):
5616 Fix typos in docstrings.
5617 (Fns_set_alpha): Fix typos in error messages.
5618
d472514e 56192009-03-12 David Reitter <david.reitter@gmail.com>
d6220c13 5620
d472514e 5621 * termhooks.h [HAVE_NS]: Define NS_NONKEY_EVENT to be used for
d6220c13
DR
5622 non-key system events on NS. Formerly, NON_ASCII_KEYSTROKE_EVENT
5623 were used for such events.
5624
d472514e
JB
5625 * nsterm.m (newFrame, openFile, fulfillService, changeFont)
5626 (toggleToolbar, performDragOperation, runHelp): Use it.
d6220c13 5627
d472514e 5628 * keyboard.c (parse_menu_item) [HAVE_NS]: Treat new event like
d6220c13
DR
5629 NON_ASCII_KEYSTROKE_EVENT, but set used_mouse_menu.
5630
fb930676
KH
56312009-03-11 Kenichi Handa <handa@m17n.org>
5632
ff85581a
KH
5633 * font.h (font_open_by_spec): Extern it.
5634
c50b7e98
KH
5635 * font.c (font_open_by_spec): New function.
5636 (font_open_by_name): Use font_open_by_spec.
5637
fb930676
KH
5638 * frame.c (x_set_font): When ARG is a font-object, don't alter the
5639 fontset of the frame.
5640
5641 * fontset.c (Fset_fontset_font): When a font for ASCII is changed,
5642 modify the default font of frames that use this fontset.
5643 (num_auto_fontsets): New variable.
5644 (fontset_from_font): Use num_auto_fontsets to decide a fontset
5645 name. Be sure to set FONTSET_ASCII to the correct font name.
5646 (update_auto_fontset_alist): New function.
5647
df4e8455
JB
56482009-03-11 Juanma Barranquero <lekktu@gmail.com>
5649
5650 * makefile.w32-in: Update dependencies.
5651
0a375797
AR
56522009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
5653
5654 * nsfns.m (syms_of_nsfns): Remove Qbuffered.
5655
61313fa3
SM
56562009-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
5657
5658 * buffer.c (Fswitch_to_buffer): Revert part of 2008-10-21's change.
5659
b55103fb
CY
56602009-03-10 Chong Yidong <cyd@stupidchicken.com>
5661
5662 * lread.c (Feval_buffer): Doc fix.
5663
dde2559c
KH
56642009-03-09 Kenichi Handa <handa@m17n.org>
5665
5666 * charset.c (Qfile_name_handler_alist): Extern it.
5667 (load_charset_map_from_file): Temporarily bind
5668 `file-name-handler-alist' to nil while calling openp. (Bug#2435)
5669
df4e8455 56702009-03-06 Aaron Ecay <aaronecay@gmail.com> (tiny change)
340e08a4 5671
47f588bb
GM
5672 * nsterm.m (ns_draw_vertical_window_border): Draw 1 pixel wide,
5673 not two, and use NSRectFill instead of NSDrawGroove. (Bug#2352)
340e08a4 5674
4ddf94bd
AR
56752009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
5676
4c9bdfc2
AR
5677 * nsterm.m: Include <signal.h> for SIGTERM used in ns_term_shutdown.
5678 (x_set_window_size): Change back to calculated method of setting
5679 toolbar height under Cocoa. (Bug#2546)
4ddf94bd
AR
5680 (EmacsView-windowWillUseStandardFrame:defaultFrame:): New method.
5681 (EmacsView-drawRect:): Completely shortcircuit if ns_in_resize.
5682
fe41ae9e
AR
5683 * nsfns.m (ns_appkit_version_int): Fix typo in the version macro.
5684
4c9bdfc2
AR
5685 * nsmenu.m (EmacsMenu-addItemWithWidgetValue:): Don't add
5686 accelerator in parens under GNUstep.
5687
825d0875
KH
56882009-03-06 Kenichi Handa <handa@m17n.org>
5689
5690 These changes are to detect incorrect composition sequence without
f3b3be74 5691 looking ahead the source. (Bug#2370)
825d0875
KH
5692
5693 * coding.h: Include "composite.h".
5694 (enum compisition_state): New enum.
5695 (struct compisition_status): New struct.
5696 (struct iso_2022_spec): New member cmp_status.
5697 (struct emacs_mule_spec): New struct.
5698 (struct coding_system): New members ctext_extended_segment_len and
5699 embedded_utf_8. Change the union member
5700 spec.emacs_mule_full_support to spec.emacs_mule.
5701
5702 * coding.c (CODING_ISO_CMP_STATUS): New macro.
5703 (CODING_ISO_EXTSEGMENT_LEN, CODING_ISO_EMBEDDED_UTF_8): New macros.
98a326f7 5704 (MAX_ANNOTATION_LENGTH): Define to 5.
825d0875
KH
5705 (ADD_COMPOSITION_DATA): New arg nbytes.
5706 (emacs_mule_char): New arg cmp_status.
5707 (DECODE_EMACS_MULE_COMPOSITION_CHAR): Delete it.
5708 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): New arg c.
5709 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New arg c.
5710 (DECODE_EMACS_MULE_21_COMPOSITION): Delete the arg c.
5711 (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Likewise.
5712 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Likewise.
5713 (DECODE_EMACS_MULE_COMPOSITION_START): New macro.
5714 (EMACS_MULE_COMPOSITION_END): New macro.
5715 (emacs_mule_finish_composition): New function.
5716 (EMACS_MULE_MAYBE_FINISH_COMPOSITION): New macro.
5717 (decode_coding_emacs_mule): Avoid long looking ahead while
5718 handling composition.
5719 (DECODE_COMPOSITION_RULE): Argument changed to rule and nbytes.
5720 (ENCODE_COMPOSITION_RULE): New macro.
5721 (finish_composition): New function.
5722 (MAYBE_FINISH_COMPOSITION): Call finish_composition.
5723 (DECODE_COMPOSITION_START): New implementation.
5724 (DECODE_COMPOSITION_END): Likewise.
5725 (STORE_COMPOSITION_RULE): New macro.
5726 (decode_coding_iso_2022): Avoid long looking ahead while handling
5727 composition, CTEXT extended segment, and embedded UTF-8.
5728 (setup_coding_system): For a coding of type iso-2022, reset
5729 CODING_ISO_EXTSEGMENT_LEN (coding) and
5730 CODING_ISO_EMBEDDED_UTF_8 (coding).
5731 (get_translation): Delete arguments last_block, from_nchars,
5732 to_nchars. Callers changed.
5733 (produce_chars): Don't modify charbuf. Adjusted for the change of
5734 get_translation.
98a326f7 5735 (produce_composition): Adjust for the new annotation sequence.
825d0875 5736 (handle_composition_annotation): Likewise.
98a326f7 5737 (consume_chars): Adjust for the change of get_translation.
825d0875 5738
ccbc4452
AR
57392009-03-05 Adrian Robert <Adrian.B.Robert@gmail.com>
5740
4ddf94bd 5741 * nsterm.m (ns_select): Shortcircuit if reentrant call. (Bug#2564)
ccbc4452 5742
988a7ddb
KH
57432009-03-05 Kenichi Handa <handa@m17n.org>
5744
5745 * font.c (font_select_entity): New function.
5746 (font_find_for_lface): Use font_select_entity to select a font.
5747
5748 * fontset.c (fontset_find_font): If a font found without
a8a3728b 5749 restricting to the characters C doesn't support C, try to find a
988a7ddb
KH
5750 font with C restriction.
5751
98a326f7 57522009-03-04 Nikolaj Schumacher <me@nschum.de>
2f462d73 5753
be1bce46 5754 * nsfont.m (nsfont_draw): Compare ns_antialias_text against lisp value.
2f462d73 5755
10ea2b82
JR
57562009-03-04 Jason Rumney <jasonr@gnu.org>
5757
2c93b248 5758 * w32fns.c (w32_wnd_proc): Only ignore IME messages for the
4891ba1d 5759 characters that have already been read. (Bug#2569)
2c93b248 5760
10ea2b82
JR
5761 * image.c (xbm_read_bitmap_data, png_load, svg_load_image):
5762 Log an error message if check_image_size failed.
5763 (xpm_load_image, pbm_load, jpeg_load, tiff_load, gif_load)
4891ba1d 5764 (gs_load): Mention max-image-size in size error message. (Bug#2560)
10ea2b82 5765
71a0c011
EZ
57662009-03-02 Eli Zaretskii <eliz@gnu.org>
5767
5768 * callproc.c (Fcall_process): Bind inhibit-modification-hooks to t
5769 when decoding process output.
5770
2f63bba8
RS
57712009-03-01 Richard M Stallman <rms@gnu.org>
5772
5773 * m/mips.h (DATA_SEG_BITS, XUINT, XSET): Definitions disabled.
5774
5775 * emacs.c (gdb_data_seg_bits) [USE_LSB_TAG]: Make it 0.
5776
0a9564cb
EZ
57772009-02-28 Eli Zaretskii <eliz@gnu.org>
5778
5779 * coding.c (decode_coding_utf_8, decode_coding_utf_16)
5780 (decode_coding_emacs_mule, decode_coding_iso_2022)
5781 (encode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
5782 (decode_coding_raw_text, decode_coding_charset)
5783 (setup_coding_system, decode_eol, decode_coding, consume_chars):
5784 Honor inhibit-eol-conversion. (Bug #2186)
5785
449148b3
JR
57862009-02-28 Jason Rumney <jasonr@gnu.org>
5787
5788 * coding.c (detect_coding_charset): If not checking latin extra,
5789 fail on characters between 0x80 and 0xA0. (Bug#2354)
5790
a4aee864
EZ
57912009-02-28 Eli Zaretskii <eliz@gnu.org>
5792
5793 * coding.c (detect_coding_charset): Fix change from 2008-10-21.
2a1573ff 5794 Also, check iso-latin-*, not only iso-8859-*. (Bug#2497)
a4aee864 5795
d88bee5a
GM
57962009-02-27 Glenn Morris <rgm@gnu.org>
5797
5798 * callint.c (Finteractive): Doc fix.
5799
a808f22d
KH
58002009-02-27 Kenichi Handa <handa@m17n.org>
5801
5802 * lread.c (read_escape): Signal an error for invalid \UXXXXXXXX.
5803
caf8d60c
CY
58042009-02-27 Chong Yidong <cyd@stupidchicken.com>
5805
5806 * font.c (font_style_to_value): Set value for unknown symbols to
5807 100 instead of 255.
b61137ea
CY
5808 (weight_table, slant_table, width_table): Treat "unspecified" as
5809 the default value.
caf8d60c 5810
1a0de25c
JB
58112009-02-26 Juanma Barranquero <lekktu@gmail.com>
5812
5813 * fileio.c (Fnext_read_file_uses_dialog_p): Fix typo in docstring.
5814
8fc45744
JB
58152009-02-25 Juanma Barranquero <lekktu@gmail.com>
5816
107bd7d1
JB
5817 * lread.c (Fload): Stop checking Vloads_in_progress and signal
5818 error as soon as a recursive load is detected.
8fc45744 5819
f097e223
AR
58202009-02-24 Adrian Robert <Adrian.B.Robert@gmail.com>
5821
5822 * nsterm.m (ns_ring_bell): Convert rect to window coordinates
5823 before caching.
5824
8810a12f
KH
58252009-02-24 Kenichi Handa <handa@m17n.org>
5826
5827 * fontset.c (fontset_find_font): Fix the condition for checking
5828 unavailable font.
5829
2c7d1565
GM
58302009-02-24 Glenn Morris <rgm@gnu.org>
5831
5832 * xfaces.c (Finternal_set_font_selection_order): Remove leading
5833 whitespace that confuses documentation.
5834
a20878b6
MB
58352009-02-23 Miles Bader <miles@gnu.org>
5836
5837 * process.c (Flist_system_processes, Fprocess_attributes)
5838 (syms_of_process): Rename `system-process-attributes' to
5839 `process-attributes'.
5840
b3b58c01
AS
58412009-02-22 Andreas Schwab <schwab@linux-m68k.org>
5842
1b3b981b
AS
5843 * coding.h (struct coding_system): Make safe_charsets a pointer to
5844 unsigned char.
5845 * coding.c (CODING_ISO_REQUEST): Check for safe_charsets content
5846 being 255.
5847 (SAFE_CHARSET_P): Likewise.
5848 (setup_iso_safe_charsets): Properly setup safe_charsets.
5849 (Fdefine_coding_system_internal): Likewise.
5850 (setup_coding_system): Likewise. Remove unneeded casts.
5851 (detect_coding_iso_2022): Compare Viso_2022_charset_list with
5852 CODING_ATTR_CHARSET_LIST, not CODING_ATTR_SAFE_CHARSETS. Remove
5853 unneeded casts.
5854
b3b58c01
AS
5855 * insdel.c (del_range_2): Don't modify gap contents when called
5856 from decode_coding_object. (Bug#1809)
5857
0b6f228c
CY
58582009-02-21 Chong Yidong <cyd@stupidchicken.com>
5859
5860 * data.c (syms_of_data): Define Qfont_spec, Qfont_entity, and
5861 Qfont_object.
5862 (Ftype_of): Recognize font objects.
5863
5864 * lisp.h: Define Qfont_spec, Qfont_entity, Qfont_object extern.
5865
5866 * font.c (Qfont_spec, Qfont_entity, Qfont_object): Definitions
5867 moved to data.c.
5868
52f8870b
AR
58692009-02-20 Adrian Robert <Adrian.B.Robert@gmail.com>
5870
5871 * nsterm.m (x_make_frame_invisible): Unset async_visible,
5872 async_iconified. Based on a patch by Christian Lynbech
5873 <christian.lynbech@tieto.com>.
5874 (EmacsView-windowDidMiniaturize:): Unset async_visible.
5875
7087d5e9
GM
58762009-02-20 Glenn Morris <rgm@gnu.org>
5877
5878 * syntax.c (Fskip_chars_forward): Fix doc typo.
5879
41d2ceef
CY
58802009-02-20 Chong Yidong <cyd@stupidchicken.com>
5881
5882 * keymap.c (Fkeymap_parent): Doc fix (Bug#2391).
5883
1a3b7ca6
CY
58842009-02-19 Chong Yidong <cyd@stupidchicken.com>
5885
5886 * xfns.c (Fx_create_frame): Give Xft driver a higher priority.
5887
73cce38d
KH
58882009-02-19 Kenichi Handa <handa@m17n.org>
5889
5890 * coding.c (detect_coding): Preserve coding->mode.
2bc550cb 5891 Don't overflow coding->carryover. (Bug#2370)
73cce38d 5892
a51092ee
DN
58932009-02-18 Dan Nicolaescu <dann@ics.uci.edu>
5894
5895 * m/ibmrs6000.h (ADDR_CORRECT): Restore, removed by mistake on 2008-07-23.
5896
c423ecca
KH
58972009-02-18 Kenichi Handa <handa@m17n.org>
5898
5899 * font.c (font_check_otf_features): Fix handling of `nil' element.
5900 (Ffont_spec): Describe :lang and :otf in the docstring.
5901
4c1958f4
AS
59022009-02-16 Andreas Schwab <schwab@suse.de>
5903
5904 * coding.c (Fcheck_coding_systems_region): Fix test for unibyte
5905 string.
5906
5704f39a
KH
59072009-02-16 Kenichi Handa <handa@m17n.org>
5908
5909 * coding.c (Fcheck_coding_systems_region): Fix typo; Qt -> Qnil.
a057d86a 5910 (Bug#1723)
5704f39a 5911
8f0085aa
CY
59122009-02-14 Chong Yidong <cyd@stupidchicken.com>
5913
a057d86a 5914 * dispextern.h (struct iterator_stack_entry): New line_wrap member.
8f0085aa
CY
5915
5916 * xdisp.c (push_it, pop_it): Save and restore line_wrap.
5917 (handle_line_prefix): Suppress wrapping of wrap prefixes.
5918
aff01dd9
EZ
59192009-02-14 Eli Zaretskii <eliz@gnu.org>
5920
5921 * msdos.c (MAX_SCREEN_BUF): New macro.
5922 (IT_write_glyphs): Make screen_buf[] always be MAX_SCREEN_BUF-long.
5923 Encode the entire run of glyphs sharing the same face, instead of
5924 doing that one glyph at a time (fixes a bug with displaying
5925 double-size characters).
5926
ba301db3
AR
59272009-02-13 Adrian Robert <Adrian.B.Robert@gmail.com>
5928
5929 * nsfns.m (ns-read-file-name): BLOCK_INPUT while showing dialog.
5930
5931 * nsmenu.m (pop_down_menu): Check popup_activated_flag.
5932 (ns_popup_dialog, EmacsDialogPanel-runDialogAt:): Let
a057d86a 5933 pop_down_menu do the cleanup work as it is always called. (Bug#2154)
ba301db3
AR
5934
5935 * nsfont.m (nsfont_make_fontset_for_font): For now, don't try to
a057d86a 5936 set fontset font for "mathematical-" sub-scripts. (Bug #2218)
ba301db3 5937
51d861de
SM
59382009-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
5939
ac146f82 5940 * keyboard.c (adjust_point_for_property): Allow stopping between two
51d861de
SM
5941 invisible areas.
5942
7fed8996
JR
59432009-02-12 Jason Rumney <jasonr@gnu.org>
5944
631ea4fb
JR
5945 * w32font.c (check_face_name): Check for fake helv. (Bug#2275)
5946 (add_font_entity_to_list): Call check_face_name even when family
5947 is unspecified.
5948
cb4a3e42
JR
5949 * w32term.c (x_display_pixel_height, x_display_pixel_width):
5950 Release DC when finished. Use NULL window to refer to desktop.
631ea4fb 5951 (w32_term_init): Use NULL window to refer to desktop. (Bug#460)
cb4a3e42 5952
7fed8996 5953 * w32font.c (add_font_entity_to_list): Fix check for substituted
631ea4fb 5954 raster fonts. (Bug#2219)
7fed8996 5955
895416e3
KH
59562009-02-12 Kenichi Handa <handa@m17n.org>
5957
5958 * composite.c (MAX_AUTO_COMPOSITION_LOOKBACK): New macro.
5959 (composition_gstring_width): Fix handling of LGLYPH_YOFF.
5960 (autocmp_chars): Use fast_looking_at. Don't compose more
1dacf998 5961 characters than MAX_COMPOSITION_COMPONENTS.
895416e3
KH
5962 (find_automatic_composition): While looking forward and backward,
5963 check static composition. Fix where to stop looking forward.
5964 (composition_adjust_point): Fix checking of static composition.
5965 (Fcomposition_get_gstring): Pay attention to
1dacf998 5966 MAX_COMPOSITION_COMPONENTS.
895416e3
KH
5967
5968 * lisp.h (fast_looking_at): Extern it.
5969
5970 * search.c (fast_looking_at): New function.
5971
51d861de 5972 * term.c (encode_terminal_code): Adjust for the change of
895416e3
KH
5973 <struct glyph>.u.cmp.to.
5974 (append_composite_glyph): Likewise.
5975
51d861de 5976 * xdisp.c (fill_gstring_glyph_string): Adjust for the change of
895416e3
KH
5977 <struct glyph>.u.cmp.to. Check if the glyph belongs to the same
5978 composition.
51d861de 5979 (append_composite_glyph): Adjust for the change of
895416e3
KH
5980 <strcut glyph>.u.cmp.to.
5981
8510724d
JB
59822009-02-11 Juanma Barranquero <lekktu@gmail.com>
5983
5984 * casetab.c (init_casetab_once):
5985 * coding.c (ALLOC_CONVERSION_WORK_AREA):
5986 * font.c (font_update_lface):
5987 * fontset.c (Fnew_fontset):
5988 * ftfont.c (ftfont_drive_otf):
5989 * xfont.c (xfont_open):
5990 * xftfont.c (xftfont_get_xft_draw): Remove spurious semicolons.
5991
294fa707
SM
59922009-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
5993
5994 * fileio.c (Fwrite_region): !NILP -> CONSP.
5995
b5bfebec
AS
59962009-02-10 Andreas Schwab <schwab@suse.de>
5997
5998 * process.c (send_process): Properly relocate pointer into data
adab88bd 5999 when using encoded data. (Bug#2272)
b5bfebec 6000
cb84a2be
KH
60012009-02-08 ARISAWA Akihiro <ari@mbf.sphere.ne.jp>
6002
6003 * coding.c (detect_coding_charset): Fix previous change.
6004
89e09428
JR
60052009-02-08 Jason Rumney <jasonr@gnu.org>
6006
6007 * w32fns.c (w32_hide_hourglass): Handle case where frame
adab88bd 6008 disappeared while hourglass was displayed. (Bug #2193)
89e09428 6009
4470a277
AS
60102009-02-07 Andreas Schwab <schwab@suse.de>
6011
6012 * unexelf.c (unexec): Fix error message.
6013
3175b12a
AR
60142009-02-07 Adrian Robert <Adrian.B.Robert@gmail.com>
6015
6016 * nsterm.m (EmacsApp-sendEvent:): Defer NSApplicationDefined event
adab88bd 6017 when modal window is active. (Bug #2152)
3175b12a
AR
6018 (applicationShouldTerminate:): Remove now-unneeded while loop
6019 around NSRunAlertPanel.
6020
6021 * nsmenu.m (popupSession): New file-global variable.
6022 (pop_down_menu): End the popupSession before closing dialog.
6023 (ns_popup_dialog): BLOCK_INPUT around dialog presentation.
6024 (EmacsDialogPanel-runDialogAt:): Don't place window (superfluous),
6025 don't query NSApp for events (just sleep instead).
6026
8434d0b8
EZ
60272009-02-07 Eli Zaretskii <eliz@gnu.org>
6028
51d861de
SM
6029 * coding.c (syms_of_coding) <translation-table-for-input>:
6030 Modify doc string to discourage use for character code unification.
8434d0b8 6031
aa82edfd
CY
60322009-02-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6033
6034 * atimer.c (run_timers): Update pending_atimers.
6035
2d283c7c
CY
60362009-02-06 Chong Yidong <cyd@stupidchicken.com>
6037
eb306cab
CY
6038 * image.c (svg_load_image): Fix last change.
6039
2d283c7c
CY
6040 * xfns.c (Fx_create_frame): Signal an error if no font is
6041 found (Bug#2147).
6042
4d8e170e
JB
60432009-02-05 Juanma Barranquero <lekktu@gmail.com>
6044
6045 * character.c (syms_of_character) <script-representative-chars>:
6046 Fix typo in docstring.
6047
c96169a0
AR
60482009-02-04 Adrian Robert <Adrian.B.Robert@gmail.com>
6049
6050 * nsmenu.m (pop_down_menu): New function.
6051 (ns_popup_dialog): Call it on unwind.
6052 (EmacsDialogPanel-runDialogAt:): Check popup_activated_flag and
6053 call timer_check() (Bug#2154).
6054 (EmacsMenu-menuNeedsUpdate:): Don't call ns_update_menu if
6055 handling_signal is set.
6056 (EmacsMenu-fillWithWidgetValue:): Set submenu title.
6057
31fd7c5c 6058 * config.in: Get rid of COCOA_EXPERIMENTAL_CTRL_G.
c96169a0
AR
6059
6060 * s/darwin.h: Same and NO_SOCK_SIGIO as well.
6061
6062 * nsterm.m (ns_read_socket): Same and don't set handling_signal.
6063
51d861de
SM
6064 * keyboard.c (poll_for_input_1, handle_async_input):
6065 Set handling_signal under HAVE_NS.
c96169a0 6066
aacd8ba1
GM
60672009-02-04 Glenn Morris <rgm@gnu.org>
6068
6069 * fileio.c (Fwrite_region): Doc fix (mention annotate-functions).
6070
4cb75c4b
KH
60712009-02-04 Kenichi Handa <handa@m17n.org>
6072
6073 * Makefile.in (composite.o): Depends on frame.h and termhooks.h.
6074
6075 * charset.c (Fchar_charset): New optional arg restriction.
6076
6077 * coding.h (coding_system_charset_list): Extern it.
6078
6079 * coding.c (coding_system_charset_list): New function.
6080
6081 * composite.c: Include coding.h and termhooks.h.
6082 (composition_gstring_p): Fix for the terminal case.
6083 (composition_gstring_width): Likewise.
6084 (fill_gstring_body): Likewise.
6085 (autocmp_chars): For terminal, call Fcomposition_get_gstring with
6086 the frame.
6087 (composition_compute_stop_pos): Adjust cmp_it->stop_pos if point
6088 is within a composition.
867d4bb3 6089 (Fcomposition_get_gstring): Fix the terminal case.
4cb75c4b
KH
6090
6091 * term.c (encode_terminal_code): Fix handling of composition.
6092 (produce_composite_glyph): For static composition, get pixel_width
6093 from struct composition.
6094
826ba17e
AS
60952009-02-02 Andreas Schwab <schwab@suse.de>
6096
6097 * unexelf.c (unexec): Handle unaligned bss offset.
6098
8ad093db
AR
60992009-02-01 Adrian Robert <Adrian.B.Robert@gmail.com>
6100
6101 * nsterm.m (ns_read_socket): Copy 2009-01-29 and 2009-01-30
6102 XT,w32read_socket changes to ns_read_socket.
d0a76a6e 6103
8ad093db
AR
6104 * keyboard.c (handle_interrupt): Don't call
6105 quit_throw_to_read_char() under NS.
d0a76a6e 6106
8ad093db
AR
6107 * blockinput.h: Remove NS-specific code.
6108
4d18a7a2
DN
61092009-01-30 Dan Nicolaescu <dann@ics.uci.edu>
6110
db878925
DN
6111 * dispnew.c (window_change_signal): Don't try to get the size of a
6112 suspended tty frame.
6113 * term.c (Fresume_tty): Resize if the size has changed while the
6114 tty was suspended.
6115
4d18a7a2
DN
6116 * alloc.c (mark_stack): Properly conditionalize previous change.
6117
8984df7c
JB
61182009-01-30 Juanma Barranquero <lekktu@gmail.com>
6119
6120 * w32inevt.c (w32_console_read_socket) [SYNC_INPUT]:
6121 * w32term.c (w32_read_socket) [SYNC_INPUT]:
6122 Remove; this code is not used on Windows.
6123
75f4f1ac
EZ
61242009-01-30 Eli Zaretskii <eliz@gnu.org>
6125
6126 * coding.c (detect_eol, decode_eol): Handle text with DOS-style
6127 EOLs that also has stray ^M characters.
6128
07a1e794
JB
61292009-01-30 Juanma Barranquero <lekktu@gmail.com>
6130
6131 * atimer.c (run_timers, alarm_signal_handler):
6132 * keyboard.c (pending_signals, handle_async_input, init_keyboard):
6133 * w32inevt.c (w32_console_read_socket):
6134 * w32term.c (w32_read_socket):
6135 * xterm.c (XTread_socket): Use "#ifdef SYNC_INPUT" where appropriate.
6136
a8b11cc9
CY
61372009-01-30 Chong Yidong <cyd@stupidchicken.com>
6138
6139 * callproc.c (Vtemp_file_name_pattern): Remove DEFVAR_LISP.
6140 Initialize it as a relative filename pattern.
6141 (init_callproc): Don't initialize Vtemp_file_name_pattern here.
6142 (Fcall_process_region): Simplify temp file creation using
6143 temporary-file-directory.
6144
c279587b
EZ
61452009-01-29 Eli Zaretskii <eliz@gnu.org>
6146
6147 * msdos.c: Rename pending_signals to msdos_pending_signals.
6148 (sig_suspender, sigprocmask): Adjust.
6149
a8fe3242
CY
61502009-01-29 Chong Yidong <cyd@stupidchicken.com>
6151
6152 * keyboard.c (pending_signals): New var.
6153 (poll_for_input, input_available_signal, init_keyboard): Set it.
6154 (process_pending_signals): New function.
6155
6156 * lisp.h (QUIT): Check pending_signals instead of
6157 interrupt_input_pending. Use process_pending_signals.
6158
51d861de 6159 * atimer.c (run_timers, alarm_signal_handler): Update pending_signals.
a8fe3242 6160
51d861de 6161 * process.c (wait_reading_process_output): Use process_pending_signals.
a8fe3242
CY
6162
6163 * sysdep.c (emacs_write): Use process_pending_signals.
6164
6165 * xterm.c (XTread_socket): Update pending_signals.
6166
6167 * w32term.c (w32_read_socket): Update pending_signals.
6168
6169 * w32inevt.c (w32_console_read_socket): Update pending_signals.
6170
6570a1c4
KH
61712009-01-29 Kenichi Handa <handa@m17n.org>
6172
6173 * xftfont.c (xftfont_has_char): New function.
6174 (syms_of_xftfont): Register xftfont_has_char in xftfont_driver.
6175
d72a4afa
AR
61762009-01-29 Adrian Robert <Adrian.B.Robert@gmail.com>
6177
6178 * nsterm.h (EmacsPrefsController.cursorBlinkSlider): Only define
6179 under GNUstep.
6180 (ns_query_color): New declaration.
6181
6182 * nsterm.m (ns_confirm_quit): New variable.
6183 (ns_set_default_prefs, syms_of_nsterm, ns_term_init): Initialize it.
6184 (EmacsApp-applicationShouldTerminate:): Use it.
6185 (EmacsPrefsController): Let user set it.
6186 (ns_query_color): New function.
6187 (ns_defined_color): Use it.
6188 (ns_initialize): Drop.
6189 (ns_term_init): Add two lines from ns_initialize(), and set
6190 input_interrupt_mode to nil.
6191
6192 * image.c (svg_load_image): Don't right-shift background RGB when
6af84d77 6193 obtained from FRAME_BACKGROUND_PIXEL. Under HAVE_NS use ns_query_color.
d72a4afa 6194
9fe78804
KH
61952009-01-28 Kenichi Handa <handa@m17n.org>
6196
6197 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
f088b054
KH
6198 (fontset_get_font_group): Remember that no font-group is specified
6199 for C.
9fe78804 6200
fa57de36
CY
62012009-01-27 Chong Yidong <cyd@stupidchicken.com>
6202
930600e9
CY
6203 * fns.c (concat): Check for string overflow (bug#1787).
6204
fa57de36
CY
6205 * undo.c (undo_limit, undo_strong_limit, Vundo_outer_limit):
6206 Quadruple undo limits (bug#1501).
6207
7179ce7b
KH
62082009-01-27 Kenichi Handa <handa@m17n.org>
6209
6210 * ftfont.c (ftfont_has_char): If the arg FONT is a font-object,
6211 directly use GT_Get_Char_index.
6212
6213 * xftfont.c (struct xftfont_info): New member `index'.
6214
6215 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
51d861de 6216 (Ffontset_font): Adjust for the change of fontset entry.
7179ce7b 6217
5be8fcc0
CY
62182009-01-26 Kenichi Handa <handa@m17n.org>
6219
6220 * fontset.c (fontset_find_font): Fix handling of non-cons return
6221 value of fontset_get_font_group.
6222 (fontset_font): Revert last change.
6223
19ae3e61
JR
62242009-01-26 Jason Rumney <jasonr@gnu.org>
6225
6226 * w32font.c (w32font_list_internal): Return quickly if registry is
6227 unknown. Simplify final return.
6228 (add_font_entity_to_list): Break complex logic down into more
6229 manageable chunks. Move unknown registry check to
6230 w32font_list_internal.
6231
8612b71a
AR
62322009-01-25 Adrian Robert <Adrian.B.Robert@gmail.com>
6233
6234 Changes to remove Feval calls from GUI under NS.
6235
d8038940
JB
6236 * nsterm.h: Move KEY_NS_... definitions here from nsterm.m.
6237 Add NS_TOGGLE_TOOLBAR, NS_PUT_WORKING_TEXT, NS_UNPUT_WORKING_TEXT.
8612b71a
AR
6238 Remove NS_INSERT_WORKING_TEXT, NS_DELETE_WORKING_TEXT.
6239
6240 * nsterm.m: Move KEY_NS_... definitions to nsterm.h.
6241 (EmacsView-toggleToolbar:): Use KEY_NS_TOGGLE_TOOLBAR.
6242 (EmacsView-setMarkedText:,-deleteWorkingText:): Use NS_TEXT_EVENT
6243 instead of NON_ASCII_KEYSTROKE_EVENT.
6244 (EmacsApp-terminate:): Use KEY_NS_POWER_OFF instead of Feval.
6245 (EmacsApp-applicationShouldTerminate:): Query user.
6246 (EmacsPreferencesController-runHelp:): Use KEY_NS_INFO_PREFS
6247 instead of Feval.
6248
6249 * termhooks.h (NS_TEXT_EVENT): New event type under HAVE_NS.
6250
6251 * keyboard.c (kbd_buffer_get_event): Check for it.
6252 (keys_of_keyboard): Define lispy keys for
6253 ns-put/unput-working-text.
6254
6255 * nsmenu.m (ns_popup_dialog): Resync window setting with X and W32
6256 versions.
6257 (EmacsDialog-runDialogAt:): Use NSModalPanelRunLoopMode.
6258
6288ae55
CY
62592009-01-25 Chong Yidong <cyd@stupidchicken.com>
6260
6261 * dispnew.c (buffer_posn_from_coords): Use Fset_buffer instead of
64cc3cf6 6262 setting current_buffer directly. (Bug#2044)
6288ae55 6263
289e7f8f
CY
62642009-01-24 Chong Yidong <cyd@stupidchicken.com>
6265
5ce87308 6266 * fontset.c (fontset_font): If we know there is no font, don't do
d8038940 6267 any work. (Bug#1952, bug#1990).
5ce87308 6268
64cc3cf6 6269 * font.c (font_parse_xlfd): Handle patterns of length < 2. (Bug#1802)
289e7f8f 6270
b3243e6f
AR
62712009-01-23 Adrian Robert <Adrian.B.Robert@gmail.com>
6272
6273 * emacs.c (main): Do fork+exec under --daemon in Cocoa.
d900b2af
AR
6274 (ns_no_defaults): New declaration.
6275 (main): Use it.
e0d2e69a 6276
d900b2af 6277 * nsterm.h (ns_no_defaults): New declaration.
e0d2e69a 6278
d900b2af 6279 * nsfns.m (x_get_string_resource): Don't read when ns_no_defaults.
e0d2e69a 6280
d900b2af
AR
6281 * nsterm.m (ns_no_defaults): New variable.
6282 (ns_initialize): Don't read defaults when ns_no_defaults.
6283 (EmacsView-readSelectionFromPasteboard:)
6284 (writeSelectionToPasteboard:types:): New stubbed-out methods for
d8038940 6285 NSServicesRequests protocol. (Bug#1435)
27521ca6
AR
6286 (ns_dumpglyphs_stretch): New function.
6287 (ns_draw_glyph_string): Use it, parallel Yamamoto Mitsuharu change
d8038940 6288 of 2008-11-15 to other terms. (Bug#615)
b3243e6f 6289
e0d2e69a
AR
6290 * nsimage.m (setPixmapData:): Set to ignore image DPI.
6291
3ac71f5d
CY
62922009-01-23 Giorgos Keramidas <keramida@freebsd.org> (tiny change)
6293
6294 * alloc.c (mark_stack): Use "flushw" instead of "ta 3" assembly
6295 call for Sparc64.
6296
3fe53a83
AR
62972009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
6298
6299 * nsfns.m:
6300 * nsgui.h:
6301 * nsmenu.m:
6302 * nsselect.m:
6303 * nsterm.h:
6304 * nsterm.m: Remove '23' comments that indicated code added during
6305 update from emacs-20 -> emacs-23.
6306
10f87c6f 63072009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
a3b53a85
AR
6308
6309 * nsterm.m (EmavsView-keyDown:): Treat nil as Qnone for
3a88a825 6310 ns_alternate_modifier. (Bug#1217)
a3b53a85 6311
c7cef62d
AR
6312 * nsmenu.m (EmacsMenu-parseKeyEquiv:, addItemWithWidgetValue:):
6313 Display all shortcuts, including those w/o super modifier.
6314
575fb8bd
AR
6315 * nsfns.m (ns-read-file-name): Fix typo in assignment statement.
6316
918b848b
CY
63172009-01-22 Chong Yidong <cyd@stupidchicken.com>
6318
6319 * fileio.c (Vwrite_region_post_annotation_function)
6320 (Vwrite_region_annotation_buffers): New vars.
6321 (build_annotations_unwind): Just reset
6322 Vwrite_region_annotation_buffers.
6323 (Fwrite_region): Initialize Vwrite_region_annotation_buffers.
6324 Call write-region-post-annotation-function.
6325 (build_annotations): Add to Vwrite_region_annotation_buffers if
6326 buffer changes.
6327
a39e2539
AR
63282009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
6329
6330 * nsterm.h (EmacsApp-setAppleMenu:): Conditionalize more correctly on
6331 Tiger.
51d861de
SM
6332 * nsfns.m (ns_do_applescript):
6333 Conditionalize typeUTF16ExternalRepresentation on Tiger.
a39e2539 6334
35ed44db
AR
63352009-01-21 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
6336
6337 * nsterm.m (EV_TRAILER): Always use emacsframe for frame_or_window.
6338
cbe0b5bf
AR
63392009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
6340
6341 * nsmenu.m (NSMENUPROFILE): Change #if style.
4c7077c3 6342
6049d3a0
AR
6343 * nsterm.h (EmacsPrefsController): Add -setPanelFromDefaultValues.
6344
6345 * nsterm.m (x_set_frame_alpha): Add prototype.
a9b4df69
AR
6346 (ns_fake_keydown, EmacsView-keyUp:): New variable and function to
6347 handle Ctrl-tab. (Bug#1841)
6348 (ns_get_color): Use unsigned long long for scanned hex string value.
6349 (ns_term_shutdown): Abort on non SIGTERM signals.
e889fa06 6350 (EmacsPrefsController-setDefaultFont:,-setColors:): Raise the frame.
b71ac3dd 6351 (EmacsPrefsController-setPanelFromDefaultValues): New function.
3a88a825 6352 (EmacsPrefsController-resetToDefaults:): Use it. (Bug#1801)
35ed44db 6353 (ns_font_to_xlfd, ns_fontname_to_xlfd): Remove, unused.
d3810c21 6354 (ns_defined_color): Fix settings of the XColor variable fields:
3a88a825 6355 red,green,blue scale to 2-byte, pixel's parts to 1-byte. (Bug#1663)
cbe0b5bf 6356
d3810c21 6357 * nsimage.m (EmacsImage+allocInitFromFile:): Set to ignore image
3a88a825 6358 DPI. (Bug#1316)
d3810c21
AR
6359 (EmacsImage-setPixelAtX:Y:toRed:green:blue:alpha:): Fix color
6360 values in onTiger section.
4c7077c3 6361
e301e634
CY
63622009-01-19 Chong Yidong <cyd@stupidchicken.com>
6363
7f82490b
CY
6364 * xfaces.c (Finternal_set_lisp_face_attribute, Fx_list_fonts):
6365 Check return value of font_spec_from_name.
64cc3cf6 6366 (Fx_list_fonts): Doc fix. (Bug#1951)
7f82490b
CY
6367
6368 * font.c (font_spec_from_name): Return Qnil if font name could not
6369 be parsed.
6370 (font_parse_name): Treat a `?' character as part of an XLFD.
6371
e301e634
CY
6372 * fns.c (Fsubstring): Doc fix.
6373
1c0db158
KH
63742009-01-19 Kenichi Handa <handa@m17n.org>
6375
51d861de 6376 * ftfont.c (ftfont_lookup_cache): Check the return value of FcFontList.
1c0db158
KH
6377 (ftfont_list): Likewise.
6378
acf20901
JB
63792009-01-18 Juanma Barranquero <lekktu@gmail.com>
6380
fff4e459
JB
6381 * dbusbind.c (Fdbus_register_signal):
6382 * process.c (conv_sockaddr_to_lisp):
6383 * w32fns.c (Fw32_battery_status): Use empty_unibyte_string.
6384
acf20901
JB
6385 * callproc.c (Fgetenv_internal): Doc fix.
6386
e7abcdfb
CY
63872009-01-16 Chong Yidong <cyd@stupidchicken.com>
6388
6389 * xfns.c (x_make_gc): Don't allocate stipple member for gc_values;
6390 it is not even used.
6391
b60861e6
GM
63922009-01-16 Glenn Morris <rgm@gnu.org>
6393
6394 * font.c (Ffont_variation_glyphs): Silence compiler.
6395
8db52afe
JB
63962009-01-15 Juanma Barranquero <lekktu@gmail.com>
6397
6398 * sound.c (SOUND_WARNING): Use _snprintf, for MSVC compatibility.
6399 Reported by David Robinow <drobinow@gmail.com>.
6400
4cddb209
KH
64012009-01-15 Kenichi Handa <handa@m17n.org>
6402
51d861de 6403 * coding.c (detect_coding_system): Fix handling of null_byte_found.
4cddb209 6404
f247f67b
JR
64052009-01-14 Jason Rumney <jasonr@gnu.org>
6406
6407 * frame.c (x_set_font): Always store a font to the font parameter,
fff4e459 6408 never a fontset. (Bug#1562)
f247f67b 6409
f56a4450
KH
64102009-01-14 Kenichi Handa <handa@m17n.org>
6411
6412 * coding.c (TWO_MORE_BYTES): New macro.
fff4e459 6413 (detect_coding_utf_16): Use TWO_MORE_BYTES instead of ONE_MORE_BYTE.
f56a4450 6414
4e99855e
CY
64152009-01-13 Chong Yidong <cyd@stupidchicken.com>
6416
6417 * font.c (font_clear_prop): If clearing the family, clear the font
6418 width index too.
6419
fff4e459 6420 * xfaces.c (Finternal_set_lisp_face_attribute): Revert last change.
4e99855e 6421
24f01470
JB
64222009-01-12 Juanma Barranquero <lekktu@gmail.com>
6423
6424 * sound.c [WINDOWSNT] (SOUND_WARNING): New macro.
6425 (do_play_sound): Use it. Don't pass a hardcoded buffer size to mci
6426 functions, use sizeof.
6427
a41240a3
MR
64282009-01-12 Martin Rudalics <rudalics@gmx.at>
6429
6430 * keyboard.c (read_char): Fix case where last_nonmenu_event
6431 returned a bad value with submenus. (Bug#447)
6432
944636b8
CY
64332009-01-12 Chong Yidong <cyd@stupidchicken.com>
6434
6435 * xfaces.c (Finternal_set_lisp_face_attribute): If setting the
6436 family, clear the font width index too.
6437
0dad7c6f
JR
64382009-01-11 Jason Rumney <jasonr@gnu.org>
6439
6440 * keyboard.c (cmd_error_internal): Exit when errors occur before
6441 frame creation and not in daemon mode. (Bug#1836)
6442
7c2363af
CY
64432009-01-10 Chong Yidong <cyd@stupidchicken.com>
6444
6445 * xdisp.c (pos_visible_p): When iterator stops on the last glyph
6446 of a display vector, backtrack.
6447 (try_window_reusing_current_matrix): Check glyph type before
6448 referencing charpos member.
6449
97b1b294
EZ
64502009-01-10 Eli Zaretskii <eliz@gnu.org>
6451
6452 Fix Bug #876:
6453
6454 * coding.c (inhibit_null_byte_detection): New variable.
6455 (detect_coding, detect_coding_system): Don't pay attention to null
6456 bytes if inhibit_null_byte_detection is non-zero.
51d861de 6457 (syms_of_coding) <inhibit-null-byte-detection>: Declare and document.
97b1b294
EZ
6458 <inhibit-iso-escape-detection>: Doc fix.
6459
4624b6e3
JR
64602009-01-09 Jason Rumney <jasonr@gnu.org>
6461
6462 * w32font.c (add_font_entity_to_list): Don't report unknown
fff4e459 6463 Windows charset as any unrecognized registry. (Bug#1548)
4624b6e3
JR
6464 Only report Unicode Plane 2 fonts as unicode-sip.
6465
323b840c
CY
64662009-01-09 Chong Yidong <cyd@stupidchicken.com>
6467
51d861de
SM
6468 * xfaces.c (Fx_font_family_list): Delete function.
6469 Move compatibility version to faces.el.
323b840c 6470
51d861de 6471 * font.c (Ffont_family_list): Return a list of strings, not symbols.
323b840c 6472
eba7400d
MR
64732009-01-09 Martin Rudalics <rudalics@gmx.at>
6474
6475 * frame.c (x_set_frame_parameters): Remember requested value for
6476 fullscreen before it's reset by the parameter handler.
6477
4b09796d
GM
64782009-01-09 Glenn Morris <rgm@gnu.org>
6479
6480 * keyboard.c (last_command_char): For clarity, rename to...
46e722a9 6481 (last_command_event): ... and update all users.
4b09796d
GM
6482 (last_input_char): For clarity, rename to...
6483 (last_input_event): ... and update all users.
6484 (last-command-char, last-input-char): Move to subr.el as aliases.
6485 * cmds.c, commands.h: Update for last_command_char rename.
6486
14ccea62
CY
64872009-01-08 Chong Yidong <cyd@stupidchicken.com>
6488
51d861de 6489 * font.c (font_open_for_lface): Handle unspecified height attribute.
14ccea62 6490
5f004711
JR
64912009-01-08 Jason Rumney <jasonr@gnu.org>
6492
6493 * w32fns.c (Vx_pointer_shape, Vx_nontext_pointer_shape)
6494 (Vx_mode_pointer_shape, Vx_window_horizontal_drag_shape)
6495 (Vx_hourglass_pointer_shape, Vx_sensitive_text_pointer_shape):
6496 Don't declare.
fff4e459 6497 (syms_of_w32fns): Don't define x-pointer-shape variable. (Bug#1485)
5f004711
JR
6498 (x_create_tip_frame) [GLYPH_DEBUG]: Enable image debugging code.
6499
b71f6f73
KH
65002009-01-07 Kenichi Handa <handa@m17n.org>
6501
50b06221 6502 * fileio.c (Finsert_file_contents): In the case of replace,
f56a4450 6503 remember the coding system used for decoding in
50b06221
KH
6504 coding_system (Bug#1039).
6505
b71f6f73 6506 * coding.c (decode_coding_utf_8): Check byte_after_cr before
79a97217 6507 breaking the loop. (Bug#870)
b71f6f73
KH
6508 (decode_coding_utf_16, decode_coding_emacs_mule)
6509 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
6510 (decode_coding_charset): Likewise.
6511
56f668f7
MR
65122009-01-05 Martin Rudalics <rudalics@gmx.at>
6513
6514 * frame.c (x_set_frame_parameters): Make sure height (width) get
6515 applied when fullwidth (fullheight) is set. (Bug#1522)
6516
5da9424d
JB
65172009-01-04 Juanma Barranquero <lekktu@gmail.com>
6518
6519 * w32.c: Use 64-bit arithmetic to do FILETIME conversions. (Bug#1766)
6520 (utc_base): Declare as ULONGLONG, not long double.
6521 (convert_time_raw): Delete.
6522 (FILETIME_TO_U64, U64_TO_LISP_TIME): New macros.
6523 (initialize_utc_base): New function.
6524 (convert_time): Use FILETIME_TO_U64, initialize_utc_base.
6525 (convert_from_time_t): Use initialize_utc_base; compute result with
6526 64-bit arithmetic.
6527 (process_times): Use FILETIME_TO_U64, U64_TO_LISP_TIME.
6528
c4605e09
EZ
65292009-01-03 Eli Zaretskii <eliz@gnu.org>
6530
9acef61c 6531 * process.c (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess)
c4605e09
EZ
6532 (Qttname, Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime)
6533 (Qcutime, Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs)
6534 (Quser, Qgroup, Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime)
6535 [!subprocesses]: Define.
6536 (syms_of_process) [!subprocesses]: Intern and staticpro them.
6537 (Flist_system_processes, Fsystem_process_attributes)
6538 [!subprocesses]: Call list_system_processes and
6539 system_process_attributes instead of returning Qnil.
6540
9acef61c
JB
6541 * dosfns.c (system_process_attributes, list_system_processes):
6542 New functions.
c4605e09
EZ
6543
6544 * vm-limit.c (ret_lim_data) [MSDOS]: New function.
6545
6546 * sysdep.c (list_system_processes, system_process_attributes) [MSDOS]:
6547 Don't use the default (no-op) implementation.
6548
8b7d0a16
JR
65492009-01-03 Jason Rumney <jasonr@gnu.org>
6550
a6d46bc1
JR
6551 * keyboard.c (parse_modifiers_uncached): Wheel events are
6552 clicks (bug#687).
6553
8b7d0a16
JR
6554 * w32term.c (x_query_colors, x_query_color): New functions.
6555
6556 * image.c (x_to_xcolors, png_load): Eliminate W32 specific code.
6557 (svg_load_image): Cast returned pointers from dynamically loaded
6558 functions. Eliminate W32 specific code.
6559
bfe11752
DN
65602009-01-02 Dan Nicolaescu <dann@ics.uci.edu>
6561
89e2438a
DN
6562 * nsfns.m (x_set_foreground_color, x_set_background_color)
6563 (x_set_cursor_color, x_set_icon_name, x_explicitly_set_name)
6564 (x_set_title, x_set_icon_type, x_set_cursor_type): Rename to use
6565 x_ prefix instead of ns_. Update references.
6566 (syms_of_nsfns): Add a FIXME comment.
6567
6568 * nsterm.m (x_set_cursor_type): New prototype.
6569 (setValuesFromPanel): Use it instead of the old ns_ prefixed name.
6570
bfe11752
DN
6571 * sysdep.c (system_process_attributes): Provide Qtime and Qctime
6572 for Solaris instead of incorrectly providing Qutime and Qcutime.
6573
031da700
EZ
65742009-01-02 Eli Zaretskii <eliz@gnu.org>
6575
6576 * w32.c (process_times): Compute sum of utime and stime.
6577 (system_process_attributes): Add Qtime to the alist.
6578
6579 * sysdep.c (system_process_attributes): Compute Qtime and Qctime
6580 and add them to the alist.
6581
6582 * process.c (top level) <Qtime, Qctime>: New variables.
6583 (syms_of_process): staticpro them.
6584 (Fsystem_process_attributes): Add their documentation to the doc
6585 string.
6586
6587 * process.h: Declare Qtime and Qctime.
6588
df23bf08
JR
65892009-01-02 Jason Rumney <jasonr@gnu.org>
6590
9acef61c 6591 * image.c (Qgobject): New symbol.
df23bf08
JR
6592 (syms_of_image): Initialize it.
6593 (init_svg_functions): Load some functions from gobject library.
6594
5bbdf7aa
DN
65952009-01-01 Dan Nicolaescu <dann@ics.uci.edu>
6596
6597 * frame.c (make_terminal_frame): Remove redundant code and useless
6598 block.
6599
63136da6
AS
66002009-01-01 Andreas Schwab <schwab@suse.de>
6601
6602 * process.c (conv_sockaddr_to_lisp): Add workaround for
6603 getsockname bug on BSD.
6604
9ef69046
CY
66052009-01-01 Chong Yidong <cyd@stupidchicken.com>
6606
d6fafbe0
CY
6607 * xfns.c (x_create_tip_frame): Set border width of the X window.
6608
51d861de 6609 * xfaces.c (Finternal_set_lisp_face_attribute): Improve error message.
9ef69046 6610
f9c34147
JR
66112009-01-01 Jason Rumney <jasonr@gnu.org>
6612
9acef61c 6613 * w32term.c (x_new_font): Return font object, not fontset. (Bug#119)
f9c34147
JR
6614 Don't block input, as per earlier xterm.c changes.
6615
f5497e45
AR
66162008-12-31 Adrian Robert <Adrian.B.Robert@gmail.com>
6617
6618 * nsfns.m (ns_appkit_version_str): Rename from ns_appkit_version.
6619 (ns_appkit_version_int): New function.
6620 (x-server-version): Use ns_appkit_version_int and follow 21+
6621 convention of returning 3 integers.
6622
c19cab20
KH
66232008-12-30 Kenichi Handa <handa@m17n.org>
6624
6625 * character.h (CHAR_VARIATION_SELECTOR_P): New macro.
6626 (CHAR_SURROGATE_PAIR_P): New macro.
6627
6628 * font.h (struct font_driver): New member get_variation_glyphs.
6629
9acef61c 6630 * font.c (font_range): Don't require a font for a variation selector.
c19cab20
KH
6631 (Ffont_variation_glyphs): New function.
6632 (syms_of_font): Defsubr it.
6633
6634 * ftfont.c (ftfont_driver): Set the member get_variation_glyphs to
6635 ftfont_variation_glyphs.
6636 (setup_otf_gstring): New function.
6637 (ftfont_drive_otf): Use it.
6638 (ftfont_shape_by_flt): Handle variation selector.
6639 (ftfont_variation_glyphs): New function.
6640
28cd591f
MR
66412008-12-30 Martin Rudalics <rudalics@gmx.at>
6642
6643 * frame.c (Vemacs_iconified): Remove.
6644
7f714baf
JR
66452008-12-30 Jason Rumney <jasonr@gnu.org>
6646
6647 * frame.c (store_frame_param, x_get_arg): Enable newer code on
9acef61c 6648 WINDOWSNT too, as related changes have already been synced. (Bug#117)
7f714baf 6649
9d2d22ab
CY
66502008-12-30 Chong Yidong <cyd@stupidchicken.com>
6651
6652 * indent.c (Fvertical_motion): Don't advance iterator if we have
6653 reseated to the desired position.
6654
6655 * xdisp.c (move_it_to): Handle GET_FROM_STRETCH method when
6656 checking for pos match.
6657
545312c2
KH
66582008-12-30 Kenichi Handa <handa@m17n.org>
6659
1ede3eb6
KH
6660 * insdel.c (copy_text): To convert a non-ASCII char to unibyte,
6661 just get the low 8-bit of the code.
6662
545312c2
KH
6663 * font.c (font_intern_prop): Validate str as multibyte.
6664
bd7bbf29
DN
66652008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
6666
31e0750e
DN
6667 * dispextern.h (struct face): Move lface and hash from the middle
6668 of bitfields.
6669
bd7bbf29
DN
6670 * Makefile.in (INTERVALS_H): Rename from INTERVAL_SRC, update all users.
6671
b5672e7c
DN
66722008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
6673
6674 * Makefile.in (INTERVAL_SRC): Also depend on dispextern.h.
6675 (coding.o, dispnew.o, keymap.o, msdos.o): Depend on INTERVAL_SRC
6676 instead of intervals.h.
6677
d704470f
AS
66782008-12-26 Andreas Schwab <schwab@suse.de>
6679
6680 * keymap.c (map_keymap_char_table_item): Make a copy of KEY if it is a
6681 cons.
6682
54b33868
MR
66832008-12-26 Martin Rudalics <rudalics@gmx.at>
6684
6685 * textprop.c (Qminibuffer_prompt): New variable.
6686 (syms_of_textprop): Initialize it.
6687 * callint.c (Fcall_interactively): For `c', `k', and `K' prompt
6688 in minibuffer-prompt face. (Bug#1662)
6689
40b615d6
JR
66902008-12-25 Jason Rumney <jasonr@gnu.org>
6691
6692 * buffer.c (Fbuffer_swap_text): Use POINTER_TYPE.
6693
baae5c2d
JR
66942008-12-24 Jason Rumney <jasonr@gnu.org>
6695
6696 * ralloc.c (r_alloc_reset_variable): New function.
6697
6698 * buffer.c (Fbuffer_swap_text) [REL_ALLOC]: Reset ralloc's internal
9acef61c 6699 record of what points where. (Bug#716)
baae5c2d 6700
a9051c88
DN
67012008-12-22 Dan Nicolaescu <dann@ics.uci.edu>
6702
6703 * minibuf.c (read_minibuf): Follow the non-interactive case when
6704 running as a daemon, before detaching.
6705
8b146312
AS
67062008-12-22 Andreas Schwab <schwab@suse.de>
6707
6708 * buffer.c (init_buffer): Use realloc instead of xrealloc.
6709 * gtkutil.c (free_widget_value): Use xfree instead of free.
6710
56f2de10
MR
67112008-12-22 Martin Rudalics <rudalics@gmx.at>
6712
6713 * frame.c (delete_frame): New function derived from
6714 Fdelete_frame to handle Qnoelisp value for FORCE argument.
6715 Delete last frame iff FORCE equals Qnoelisp. (Bug#1450)
6716 (Fdelete_frame): Call delete_frame. Remove line from doc-string
6717 saying that FORCE non-nil doesn't run `delete-frame-functions'.
6718 * frame.h: Extern delete_frame.
6719 * window.c (window_loop):
6720 * terminal.c (delete_terminal):
6721 * xterm.c (x_connection_closed):
6722 * xfns.c (Fx_hide_tip):
9acef61c 6723 * w32fns.c (Fx_hide_tip): Call delete_frame instead of Fdelete_frame.
56f2de10 6724
1fc200d6
JR
67252008-12-21 Jason Rumney <jasonr@gnu.org>
6726
6727 * w32uniscribe.c (uniscribe_encode_char): Return FONT_INVALID_CHAR
6728 when character maps to .notdef character.
6729
5e252df2
SM
67302008-12-21 Stefan Monnier <monnier@iro.umontreal.ca>
6731
6732 * keyboard.c (cmd_error_internal): Don't exit in daemon mode, bug#1310.
6733
99b72cc4
JR
67342008-12-20 Jason Rumney <jasonr@gnu.org>
6735
6736 * frame.c (Fmake_terminal_frame): Raise an error when called from
9acef61c 6737 a graphical frame on Windows. (Bug#1325)
99b72cc4 6738
acc49a52
JD
67392008-12-20 Jan Djärv <jan.h.d@swipnet.se>
6740
6741 * frame.c (Fdelete_frame): Set f->menu_bar_vector to Qnil.
6742
6ea15123
CY
67432008-12-20 Chong Yidong <cyd@stupidchicken.com>
6744
6745 * minibuf.c (Fread_buffer): Doc fix.
6746
b2dab6c8
JR
67472008-12-20 Jason Rumney <jasonr@gnu.org>
6748
54ea0c87 6749 * fileio.c (Fexpand_file_name): Do not allow ../ to go beyond the
9acef61c 6750 server name in UNC paths. (Bug#719)
54ea0c87 6751
b2dab6c8 6752 * coding.c (decode_coding): Clear chars_at_source flag when using
9acef61c 6753 charbuf. (Bug#1035)
b2dab6c8 6754
6d1921be
DN
67552008-12-19 Daniel Engeler <engeler@gmail.com>
6756
6757 * sysdep.c (serial_configure): Fix typo.
6758
53934c98
DN
67592008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
6760
6761 * sysdep.c: Include alloca.h.
f4f634e8
DN
6762 (system_process_attributes): Add implementation for Solaris.
6763
6764 * s/sol2-10.h (HAVE_PROCFS, _STRUCTURED_PROC): New defines.
53934c98 6765
06e111a6
DN
67662008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
6767
6768 Reorganize implementation of Flist_system_processes and
6769 Fsystem_process_attributes. No functional changes.
6770 * process.c: Don't #include pwd.h, grp.h and limits.h.
6771 (Flist_system_processes): Just call list_system_processes.
6772 (Fsystem_process_attributes): Just call system_process_attributes.
6773 (procfs_list_system_processes, time_from_jiffies)
6774 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
6775 (procfs_get_total_memory, procfs_system_process_attributes): Move ...
6776
6777 * sysdep.c: ... here. Include pwd.h, grp.h and limits.h.
6778 (list_system_processes): Rename from
6779 procfs_list_system_processes. Enclose in #ifdef HAVE_PROCFS.
6780 Provide a do nothing implementation.
6781 (system_process_attributes): Rename from
6782 procfs_list_system_processes.
6783 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
9acef61c 6784 (procfs_get_total_memory): Enclose in #ifdef GNU_LINUX.
06e111a6
DN
6785
6786 * w32.c (list_system_processes): Rename from
6787 w32_list_system_processes.
6788 (system_process_attributes): Rename from
6789 w32_system_process_attributes.
6790
6791 * s/gnu-linux.h (LISTPROC, PROCATTR): Remove.
6792
6793 * process.h (w32_list_system_processes)
6794 (w32_system_process_attributes): Remove.
362654a6
JB
6795 (list_system_processes, system_process_attributes):
6796 New prototypes.
06e111a6 6797
6a705b23
KH
67982008-12-19 Kenichi Handa <handa@m17n.org>
6799
6800 * xfont.c (xfont_decode_coding_xlfd): New function.
6801 (xfont_encode_coding_xlfd): New function.
6802 (xfont_list_pattern): Decode XLFD by iso-8859-1.
6803 (xfont_list): Decode and encode XLFD by iso-8859-1.
6804 (xfont_match): Likewise.
6805 (xfont_list_family): Likewise.
6806 (xfont_open): Likewise.
6807
d66c0241 6808 * ftfont.c (ftfont_open): Generate a multibyte string if given
6a705b23
KH
6809 names are utf-8.
6810
d66c0241 6811 * xftfont.c (xftfont_open): Generate a multibyte string if given
6a705b23
KH
6812 names are utf-8.
6813
5a130941
JD
68142008-12-18 Jan Djärv <jan.h.d@swipnet.se>
6815
6816 * gtkutil.c (xg_frame_resized): Remove check if rows/columns have
6817 changed.
bfd20325
JD
6818 (xg_tool_bar_proxy_callback): Put focus on the frame after we have
6819 clicked on a detached tool bar button.
5a130941 6820
fd95644b
DN
68212008-12-18 Dan Nicolaescu <dann@ics.uci.edu>
6822
6823 * emacs.c (main): Print and error and exit when no data is read
6824 from the pipe.
6825
e6eee6ae
JR
68262008-12-17 Jason Rumney <jasonr@gnu.org>
6827
6828 * w32font.c (w32font_has_char): Always return -1.
6829
a35dd56b
KH
68302008-12-16 Kenichi Handa <handa@m17n.org>
6831
6832 * font.c (font_open_entity): Fix previous change.
6833
0e3635c2
DN
68342008-12-16 Dan Nicolaescu <dann@ics.uci.edu>
6835
6836 * process.c: Include <limits.h>.
6837
d4835507 68382008-12-16 Chetan Pandya <pandyacus@sbcglobal.net> (tiny change)
b5356c39
CY
6839
6840 * font.c (font_update_drivers): Fix mistake in reconstructing the
6841 driver list.
6842
68432008-12-16 Chong Yidong <cyd@stupidchicken.com>
6844
6845 * font.c (font_clear_cache): Fix format of font cache data.
6846
e2cbc401
CY
68472008-12-15 Chong Yidong <cyd@stupidchicken.com>
6848
6849 * xftfont.c (xftfont_open): Free Xft font pattern if
6850 XftFontOpenPattern fails.
6851
6852 * xterm.c (x_free_frame_resources): Remove extraneous call to
6853 free_frame_faces.
6854
b131d535
CY
68552008-12-13 Chong Yidong <cyd@stupidchicken.com>
6856
6857 * xterm.c (x_delete_display): Move xim_close_dpy call to
6858 x_delete_terminal.
6859 (x_delete_terminal): Call xim_close_dpy.
6860
e6df5336
JR
68612008-12-13 Jason Rumney <jasonr@gnu.org>
6862
6863 * w32font.c (intern_font_name): New function.
6864 (add_font_name_to_list, w32_enumfont_pattern_entity): Use it.
6865 (w32font_open_internal, Fx_select_font): Decode font name.
6866 (fill_in_logfont, list_all_matching_fonts): Encode font name.
6867
6868 * w32font.h (intern_font_name): Declare new function.
6869
6870 * w32uniscribe.c (add_opentype_font_name_to_list):
6871 Use intern_font_name.
6872
20d68145
CY
68732008-12-13 Chong Yidong <cyd@stupidchicken.com>
6874
9f2554de
CY
6875 * frame.c (Fdelete_frame): Call free_font_driver_list.
6876
3d9bec9a
CY
6877 * font.c (free_font_driver_list): Implement missing function.
6878
20d68145
CY
6879 * w32term.c (w32_term_init): Don't initialize the image cache
6880 here; it will be done in init_frame_faces.
6881
6882 * xterm.h (struct xim_inst_t): Definition moved from xterm.c.
6883 (struct x_display_info): Remove unused member null_pixel. New
6884 member xim_callback_data.
6885
6886 * xterm.c (struct xim_inst_t): Definition moved to xterm.h.
6887 (xim_initialize): Save pointer to callback function data.
6888 (xim_close_dpy): Free callback function data. Call XCloseIM,
6889 reverting 2008-11-04 change by David Smith.
6890 (x_term_init): Don't initialize the image cache here; it will be
6891 done in init_frame_faces. Remove ancient "null_pixel" cruft.
6892 (x_delete_display): Free x_dnd_atoms member.
6893
96f9306b
KH
68942008-12-13 Kenichi Handa <handa@m17n.org>
6895
6dec9044
JB
6896 * font.c (font_rescale_ratio): Moved from xfaces.c.
6897 Argument type changed. Handle a font-spec too.
96f9306b 6898 (font_score): Check Vface_font_rescale_alist.
6dec9044 6899 (font_open_entity): Likewise. (Bug#1547)
96f9306b
KH
6900
6901 * xfaces.c (font_rescale_ratio): Moved to font.c.
6902
8d5b4964
CY
69032008-12-13 Chong Yidong <cyd@stupidchicken.com>
6904
6905 * xfns.c (Fx_wm_set_size_hint): Check if the frame is an X frame.
6906
e6df5336
JR
69072008-12-12 Jason Rumney <jasonr@gnu.org>
6908
6909 * w32fns.c (x_display_info_for_name, Fx_open_connection): Set
6910 Vwindow_system_version to the real w32 major version.
6911
97c6058a
DN
69122008-12-12 Dan Nicolaescu <dann@ics.uci.edu>
6913
6914 * term.c (init_tty): Move setting the terminal name before the
6915 potential user: maybe_fatal.
6916
ec4e88d7
CY
69172008-12-11 Chong Yidong <cyd@stupidchicken.com>
6918
d4835507
JB
6919 * term.c (tty_free_frame_resources): Renamed from delete_tty_output;
6920 all callers changed. Call free_frame_faces to free the face cache.
ec4e88d7 6921
b4233ec9
JR
69222008-12-11 Jason Rumney <jasonr@gnu.org>
6923
8ec71e23 6924 * w32font.c (fill_in_logfont): Don't assume symbol script means
9acef61c 6925 SYMBOL_CHARSET. (Bug#547)
8ec71e23 6926
b4233ec9 6927 * w32uniscribe.c (uniscribe_encode_char): Increase glyph buffer
9acef61c 6928 size for surrogates. (Bug#1096, bug#872)
b4233ec9 6929
011a0143
JB
69302008-12-11 Juanma Barranquero <lekktu@gmail.com>
6931
6932 * w32proc.c (Fw32_get_locale_info): Decode long form of locale name.
6933
3c309f34
JB
69342008-12-11 Juanma Barranquero <lekktu@gmail.com>
6935
6936 * process.c (Fsystem_process_attributes, syms_of_process):
6937 Fix typo in name of Ssystem_process_attributes.
6938 Reported by Ulrich Mueller <ulm@kph.uni-mainz.de>.
6939
fedc6ab5
JB
69402008-12-11 Juanma Barranquero <lekktu@gmail.com>
6941
6942 * syntax.c (Fmodify_syntax_entry): Doc fix.
6943
ba3de0e8
JB
69442008-12-10 Juanma Barranquero <lekktu@gmail.com>
6945
6946 * font.c (Ffont_spec): Move usage to end of docstring.
6947
174f1c74
JR
69482008-12-10 Jason Rumney <jasonr@gnu.org>
6949
6950 * w32font.c (Qcham): New symbol.
6951 (font_supported_scripts): Add cham, and comments for other new
6952 scripts in bitfield from OpenType spec.
9d32f818
JR
6953 (add_font_entity_to_list): Limit unicode-sip fonts to those that
6954 contain characters beyond the bmp.
174f1c74 6955
7b649478
KH
69562008-12-10 Kenichi Handa <handa@m17n.org>
6957
6958 * ftfont.c (fc_charset_table): Add "unicode-sip".
2ae37cf0 6959 (ftfont_spec_pattern): Lookup fc_charset_table for the registry
7b649478
KH
6960 Qunicode_sip.
6961
2133e2d1
JB
69622008-12-10 Juanma Barranquero <lekktu@gmail.com>
6963
6964 * coding.c (QCdefault_char): Rename from QCdefalut_char.
6965 (Fcoding_system_put): Use QCdefault_char.
6966 (syms_of_coding): Set QCdefault_char, not QCdefalut_char.
6967
9af886ee
CY
69682008-12-09 Chong Yidong <cyd@stupidchicken.com>
6969
74d819eb
CY
6970 * xftfont.c (syms_of_xftfont): Fix typo.
6971
4ccfa1c0 6972 * buffer.c (Fbuffer_swap_text): Signal error if swapping a dead buffer.
9af886ee 6973
7c19d3ae
DN
69742008-12-08 Dan Nicolaescu <dann@ics.uci.edu>
6975
6976 * emacs.c (main): Close daemon_pipe on exec.
6977
567826bb
CY
69782008-12-08 Chong Yidong <cyd@stupidchicken.com>
6979
6980 * termchar.h (struct tty): New members termcap_term_buffer and
6981 termcap_strings_buffer.
6982
6983 * term.c (encode_terminal_code): Free any previous memory blocks
4ccfa1c0 6984 before calling xmalloc for encode_terminal_src or encode_terminal_dst.
567826bb
CY
6985 (maybe_fatal): Buffer argument deleted. Don't free buffer here.
6986 All callers changed.
6987 (init_tty): Store termcap data and string buffers in new struct
6988 tty members termcap_term_buffer and termcap_strings_buffer.
6989 (delete_tty): Free them.
4ccfa1c0 6990 (syms_of_term): Initialize encode_terminal_src and encode_terminal_dst.
567826bb 6991
aa96c42b
SZ
69922008-12-07 Seiji Zenitani <zenitani@mac.com>
6993
6994 * nsfns.m (ns_set_background_color): Remove code duplication.
4ccfa1c0 6995 It was a substitute for face-transparency on OS X 10.3.
aa96c42b 6996
b7e1d896
CY
69972008-12-06 Chong Yidong <cyd@stupidchicken.com>
6998
6999 * coding.c (make_conversion_work_buffer): Disable buffer
7000 modification hooks in the work buffer.
7001
b5ec91a5
EZ
70022008-12-05 Eli Zaretskii <eliz@gnu.org>
7003
7004 * process.c (procfs_system_process_attributes): If `nread' has a
7005 negative value, assign zero to it.
7006
a5d2a52b
CY
70072008-12-05 Chong Yidong <cyd@stupidchicken.com>
7008
68c5540b 7009 * eval.c (Vdebug_on_error): Doc fix.
a5d2a52b 7010
7bf1bb21
KH
70112008-12-05 Kenichi Handa <handa@m17n.org>
7012
7013 * ftfont.c (ftfont_shape_by_flt): Use "combining" flt if the
7014 second character is a combining character.
7015
2fdc7d00
EZ
70162008-12-05 Eli Zaretskii <eliz@gnu.org>
7017
7018 * process.c (procfs_system_process_attributes): Don't use cmd,
7019 cmdsize, and q without initializing them first.
7020
bf6bfba8
JR
70212008-12-04 Jason Rumney <jasonr@gnu.org>
7022
7023 * w32font.c (w32font_draw): Initialize orig_clip before getting
7024 it, and delete it when finished.
7025
a3b1a468
DN
70262008-12-04 Dan Nicolaescu <dann@ics.uci.edu>
7027
7028 * keyboard.c (kbd_buffer_get_event): Follow the non-interactive
7029 case when running as a daemon before detaching.
7030
8b8be8eb
JB
70312008-12-03 Juanma Barranquero <lekktu@gmail.com>
7032
805f2638 7033 * w32.c (init_environment): Don't unload library shell32.dll.
8b8be8eb 7034
b1bde622
KH
70352008-12-03 Kenichi Handa <handa@m17n.org>
7036
e500c47d
KH
7037 * font.c (font_at): Set `multibyte' at first.
7038
ca516334
KH
7039 * coding.c (decode_coding_charset): Check type of an element of
7040 vector VALIDS.
7bf1bb21 7041 (encode_coding_emacs_mule): Be sure to set `code'.
ca516334 7042
4ccfa1c0 7043 * fontset.c (face_for_char): Handle invalid charset property correctly.
b1bde622
KH
7044 (font_for_char): Likewise.
7045
1e5ecd37
CY
70462008-12-03 Chong Yidong <cyd@stupidchicken.com>
7047
d5b01609 7048 * font.c (Fopen_font): Compute pixel size correctly.
ba207571
CY
7049 (font_update_lface): Handle fonts with corrupted size specs,
7050 i.e. non-int and non-float.
d5b01609 7051
11e3a6e4 7052 * ftfont.c (ftfont_match): Initialize entity variable.
9a48c8cb 7053 (ftfont_resolve_generic_family): Avoid using uninitialized var.
8adb3a3b 7054 (ftfont_list_family): Initialize list var earlier.
11e3a6e4 7055
ab06788b
CY
7056 * xselect.c (Fx_get_cut_buffer_internal): Fix memory leak.
7057
1e5ecd37 7058 * xterm.c (x_draw_glyph_string): Fall back on
0cff82ab 7059 underline_minimum_offset for underline position.
1e5ecd37 7060
63c125ab
DN
70612008-12-03 Dan Nicolaescu <dann@ics.uci.edu>
7062
7063 * keyboard.c (read_char_help_form_unwind): Specify the type for ARG.
7064
7065 * character.c (c_string_width): Specify the type for LEN.
7066
3a8406e1
KH
70672008-12-03 Kenichi Handa <handa@m17n.org>
7068
4ccfa1c0 7069 * coding.c (decode_coding_utf_16): Initialize consumed_chars_base to 0.
453b38f0 7070 (decode_coding_utf_8): Likewise.
4ccfa1c0 7071 (detect_coding_system): Initialize utf_16_le_eol to -1, val to Qnil.
4533845d 7072 (produce_chars): Initialize consumed_chars to 0.
3a8406e1 7073
651df7d9
CY
70742008-12-02 Chong Yidong <cyd@stupidchicken.com>
7075
7076 * keyboard.c (make_lispy_position): Only use PT if the selected
7077 window is current.
7078
1f625c6c
AS
70792008-12-02 Andreas Schwab <schwab@suse.de>
7080
f7741ce9
AS
7081 * font.c (font_unparse_fcname): Fix use of uninitialized variable.
7082
1f625c6c
AS
7083 * doprnt.c (doprnt1): Fix size of charbuf.
7084
92bc2678
CY
70852008-12-02 Chong Yidong <cyd@stupidchicken.com>
7086
7087 * keyboard.c (timer_check): Revert last change.
7088
93b9e8cc
JB
70892008-12-02 Juanma Barranquero <lekktu@gmail.com>
7090
7091 * makefile.w32-in ($(BLD)/w32console.$(O)): Fix silly, silly typo.
7092
fd7a37d5
JB
70932008-12-01 Juanma Barranquero <lekktu@gmail.com>
7094
7095 * makefile.w32-in: Update dependencies.
7096 (CONFIG_H): Add $(EMACS_ROOT)/nt/inc/sys/time.h.
7097
c115043b
AS
70982008-12-01 Andreas Schwab <schwab@suse.de>
7099
7100 * font.c (register_font_driver): Use xmalloc.
7101 (font_put_frame_data): Likewise.
7102
f5668d2a
CY
71032008-12-01 Chong Yidong <cyd@stupidchicken.com>
7104
860d96be
CY
7105 * xfaces.c (realize_x_face): Make abort condition clearer.
7106
f5668d2a
CY
7107 * gtkutil.c (update_frame_tool_bar): Initialize variable.
7108
379c17e7
CY
71092008-11-30 Chong Yidong <cyd@stupidchicken.com>
7110
7111 * keyboard.c (timer_check): After a timer runs, ensure that the
7112 selected window's buffer is current.
7113
35f36d65
JB
71142008-11-30 Juanma Barranquero <lekktu@gmail.com>
7115
f952c61c
JB
7116 * makefile.w32-in ($(BLD)/abbrev.$(O)): Remove.
7117 It was accidentally restored by the Unicode merge.
7118
35f36d65
JB
7119 * w32proc.c (Fw32_get_locale_info): Fix typo in docstring.
7120
b23077df
JB
71212008-11-29 Juanma Barranquero <lekktu@gmail.com>
7122
7123 * w32proc.c: Include "coding.h".
7124 (Fw32_short_file_name): Encode filename passed to Windows API.
7125 (Fw32_long_file_name): Encode filename passed to Windows API and
7126 decode back the result. (Bug#1433)
7127
b8ebe9dd
KH
71282008-11-29 Kenichi Handa <handa@m17n.org>
7129
8cc53f96
KH
7130 * charset.h (CHAR_CHARSET_P): Check if the encoder is loaded or
7131 not before accessing it.
7132
b8ebe9dd
KH
7133 * charset.c (Fdefine_charset_internal): After calculating
7134 min_char, max_char, and fastmap, copy the charset structure again.
7135 (encode_char): Fix the previous change.
7136
59bc82c0
SZ
71372008-11-28 Seiji Zenitani <zenitani@mac.com>
7138
7139 * frame.c (x_set_alpha) [NS_IMPL_COCOA]: Call x_set_frame_alpha.
7140
7141 * nsfns.m (ns_frame_parm_handlers): Set alpha handler.
7142
7143 * nsterm.m (x_set_frame_alpha): New function.
7144
32247e3d
EZ
71452008-11-27 Eli Zaretskii <eliz@gnu.org>
7146
7147 * xfaces.c (Fx_font_family_list, syms_of_xfaces): Fix last change.
7148
b003e5ff
JB
71492008-11-27 Juanma Barranquero <lekktu@gmail.com>
7150
7151 * w32font.c (add_font_entity_to_list): Pass the right LOGFONT
7152 pointer to check_face_name.
7153
708550f5
KH
71542008-11-27 Kenichi Handa <handa@m17n.org>
7155
7156 * category.h (SET_CATEGORY_SET): Call set_category_set.
7157 (set_category_set): Extern it.
7158
7159 * category.c (hash_get_category_set): New function.
7160 (Fmodify_category_entry): Adjusted for the change of
7161 char_table_ref_and_range. Call hash_get_category_set to get a
7162 category set to store in the table.
7163
7164 * character.h (MAYBE_UNIFY_CHAR): Call maybe_unify_char instead of
7165 Funify_charset.
7166
2ae37cf0 7167 * charset.h (enum charset_method): Delete CHARSET_METHOD_MAP_DEFERRED.
708550f5
KH
7168 (DECODE_CHAR): Check if the decoder vector is ready.
7169 (ENCODE_CHAR): Check if the encoder char-table is ready.
7170 (maybe_unify_char): Extern it.
7171
7172 * charset.c (Vchar_unified_charset_table): Delete it.
7173 (inhibit_load_charset_map): New variable.
7174 (temp_charset_work): New variable.
7175 (SET_TEMP_CHARSET_WORK_ENCODER, GET_TEMP_CHARSET_WORK_ENCODER)
7176 (SET_TEMP_CHARSET_WORK_DECODER, GET_TEMP_CHARSET_WORK_DECODER):
7177 New macros.
7178 (load_charset_map): Meaning of control_flag changed. If
7179 inhibit_load_charset_map is nonzero, setup a table in
7180 temp_charset_work.
7181 (load_charset): New argument control_flag.
7182 (map_charset_for_dump): New function.
7183 (map_charset_chars): If inhibit_load_charset_map is nonzero, use
7184 map_charset_for_dump.
7185 (Fdefine_charset_internal): If the charset method is MAP, load
7186 mapping tables by calling load_charset.
7187 (Funify_charset): Don't load a mapping table but directly set
7188 Vchar_unify_table.
7189 (maybe_unify_char): New function.
7190 (decode_char): Don't handle the deleted method MAP_DEFERRED.
7191 Handle the case of inhibit_load_charset_map being nonzero.
7192 (encode_char): Don't handle the deleted method MAP_DEFERRED.
7193 Handle the case of inhibit_load_charset_map being nonzero.
7194 (Fclear_charset_maps): Just free temp_charset_work.
7195 (syms_of_charset): Make `inhibit-load-charset-map' a Lisp
7196 variable.
7197
7198 * chartab.c (sub_char_table_ref_and_range): Adjusted for the
7199 change of char_table_ref_and_range.
7200 (char_table_ref_and_range): Change the meaning of argument FROM
7201 and TO. Now the caller must provide initial values for *FROM
7202 and *TO.
7203
7204 * fontset.c (fontset_add): Adjusted for the change of
7205 char_table_ref_and_range.
7206 (fontset_get_font_group): Likewise.
7207 (Ffontset_info): Likewise.
7208
7209 * keymap.c (describe_vector): Adjusted for the change of
7210 char_table_ref_and_range. For char-table, put boundary between
7211 non-ASCII and 8-bit characters.
7212
7213 * print.c (print_object): For bool-vector, delete unnecessary
7214 check of ASCII_BYTE_P.
7215
9196133b
JR
72162008-11-26 Jason Rumney <jasonr@gnu.org>
7217
7218 * w32font.c (w32font_open_internal): Don't include external
9acef61c 7219 leading in font height. (Bug#879)
9196133b 7220
9f688acf
GM
72212008-11-26 Glenn Morris <rgm@gnu.org>
7222
7223 * xfaces.c (Fx_font_family_list): Replace lisp/term/pc-win.el
7224 redefinition with ifdef. (Bug#1383)
7225
90d19aff
AR
72262008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
7227
7228 * nsterm.m (ns_get_color): Handle long hex strings (fixes bug #1044).
7229
4ccfa1c0 72302008-11-24 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
90d19aff
AR
7231
7232 * nsterm.m (-otherMouseDown:, -otherMouseUp:, -otherMouseDragged):
7233 New EmacsView methods.
7234 (EV_UDMODIFIERS, EV_BUTTON): Add OtherMouse constants.
7235 Fixes bug #1048,1357,1414.
7236
72372008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
7238
7239 Fix bug #1362.
7240 * image.c (x_clear_image_1): Do not free background under HAVE_NS, it
7241 is not an indexed color.
7242 * nsterm.m (free_indexed_color): Add argument checking.
7243 * nsfns.m: Move config.h to before system includes (advised by Dan N.).
7244
e7d5ecb3
CY
72452008-11-24 Chong Yidong <cyd@stupidchicken.com>
7246
7247 * minibuf.c (Fcompleting_read, Vminibuffer_completion_confirm):
7248 Document confirm-after-completion value for
7249 minibuffer-completion-confirm.
7250
c285743c
JR
72512008-11-24 Jason Rumney <jasonr@gnu.org>
7252
7253 * w32font.c (check_face_name): Use xstrcasecmp. Avoid compiler
7254 warning.
7255
b0857706
JR
72562008-11-23 Jason Rumney <jasonr@gnu.org>
7257
7258 * w32uniscribe.c (uniscribe_encode_char): Ensure context is
7259 restored before returning.
7260
7261 * w32font.c (check_face_name): New function.
7262 (add_font_entity_to_list): Use it to filter out common substituted
9acef61c 7263 fonts. (Bug#642)
b0857706 7264
ee50ff07
MR
72652008-11-22 Martin Rudalics <rudalics@gmx.at>
7266
7267 * buffer.c (Fswitch_to_buffer): Reword and mention new option
7268 confirm-nonexistent-file-or-buffer in doc-string.
7269
b8ff72fa
SM
72702008-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
7271
7272 * buffer.c (Fbuffer_swap_text): Remove redundant marker manipulation.
7273 Fix copy/paste typo. Add checks.
7274
cee53ed4
KH
72752008-11-21 Kenichi Handa <handa@m17n.org>
7276
7277 * coding.c (detect_coding_iso_2022): Reject invalid composition
7278 sequence.
7279 (DECODE_COMPOSITION_START): If the current source is the last
7280 block, and the current composition doesn't end, regard this
7281 sequence as invalid.
7282 (decode_coding_iso_2022): Handle invalid composition sequence.
7283
f6ef1e65
MR
72842008-11-20 Martin Rudalics <rudalics@gmx.at>
7285
7286 * window.c (coordinates_in_window): Don't return
7287 ON_VERTICAL_BORDER for the rightmost position of a mode/header
7288 line when the window is not the rightmost one. (Bug#1372)
7289
e08b1705
MR
72902008-11-16 Ben North <ben@redfrontdoor.org> (tiny change)
7291
7292 * buffer.c (syms_of_buffer): Fix doc-string of cursor-type.
7293
ad98e89f
EZ
72942008-11-15 Eli Zaretskii <eliz@gnu.org>
7295
7296 * msdos.c (run_msdos_command): Don't call dos_ttcooked, dos_ttraw,
7297 and bright_bg if noninteractive is non-zero.
7298
fb098a4b
CY
72992008-11-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7300
7301 * xterm.c (x_draw_glyph_string): For stretch glyphs, don't call
7302 x_draw_glyph_string_background.
7303
7304 * w32term.c (x_draw_glyph_string): Likewise.
7305
ce952b6e
CY
73062008-11-15 Chong Yidong <cyd@stupidchicken.com>
7307
7308 * xterm.c (x_draw_glyph_string): Stop drawing the background of
7309 the next glyph string once past the overhang width.
7310
7311 * nsterm.m (ns_draw_glyph_string): Likewise.
7312
7313 * w32term.c (x_draw_glyph_string): Likewise.
7314
26ea7079
CY
73152008-11-14 Fabrice Popineau <fabrice.popineau@supelec.fr> (tiny change)
7316
7317 * fileio.c (Finsert_file_contents): Decrement specpdl_ptr to avoid
7318 double file close.
7319
1c33c906
MR
73202008-11-14 Martin Rudalics <rudalics@gmx.at>
7321
7322 * window.c (window_loop): In DELETE_BUFFER_WINDOWS case, reset
7323 dedicated status of window before attempting to display another
7324 buffer in it.
7325
8fc29035
JB
73262008-11-14 Juanma Barranquero <lekktu@gmail.com>
7327
7328 * msdos.c (Fmsdos_long_file_names):
7329 (syms_of_msdos) <dos-unsupported-char-glyph>:
7330 * dosfns.c (Fint86): Fix typos in docstrings.
7331
55fb4286
EZ
73322008-11-14 Eli Zaretskii <eliz@gnu.org>
7333
7334 * makefile.w32-in (OBJ1, WIN32OBJ): Fix whitespace.
7335
3fda0315
KY
73362008-11-14 Katsumi Yamaoka <yamaoka@jpl.org>
7337
7338 * puresize.h (BASE_PURESIZE): Increase to 1260000.
7339
7e849c17
CY
73402008-11-12 Michal Nazarewicz <mina86@tlen.pl> (tiny change)
7341
7342 * frame.c (x_set_alpha): Set alpha to -1 if nil given.
7343
7344 * frame.h: Negative alpha means "don't touch".
7345
7346 * w32term.c (x_set_frame_alpha): Do nothing if alpha is negative.
7347
7348 * xterm.c (x_set_frame_alpha): Do nothing if alpha is negative.
7349
b9fd67bd
DN
73502008-11-12 Dan Nicolaescu <dann@ics.uci.edu>
7351
7352 * hftctl.c:
7353 * chpdef.h:
7354 * acldef.h: Remove files used only for systems no longer supported.
7355
7356 * Makefile.in: Fix .o alphabetical ordering.
7357 (hftctl.o): Remove dependency, file removed.
7358 (keymap.o, print.o): Depend on charset.h.
7359
d5998e03
KH
73602008-11-10 Kenichi Handa <handa@m17n.org>
7361
2ae37cf0 7362 * character.c (Fget_byte): Fix and make it faster for unibyte target.
d5998e03 7363
be70e183
CY
73642008-11-08 Chong Yidong <cyd@stupidchicken.com>
7365
7366 * dired.c (file_name_completion): If completion_ignore_case is
7367 enabled, ignore case when checking completion-regexp-list.
7368
7cf94eac
EZ
73692008-11-08 Eli Zaretskii <eliz@gnu.org>
7370
7371 * vm-limit.c (get_lim_data): Fix last change.
7372
ee107a89
KH
73732008-11-08 Kenichi Handa <handa@m17n.org>
7374
7375 * character.c (Fget_byte): New function.
7376 (syms_of_character): Defsubr Fget_byte.
7377
5fd15622
CY
73782008-11-07 Chong Yidong <cyd@stupidchicken.com>
7379
7380 * xdisp.c (try_window_reusing_current_matrix): Ensure that window
7381 cursor position is valid after scrolling.
7382
13d62fad
JB
73832008-11-06 Juanma Barranquero <lekktu@gmail.com>
7384
7385 * fns.c (Frandom): Rename arg N to LIMIT to match the docs; doc fix.
7386
a1dd2936
GM
73872008-11-06 Glenn Morris <rgm@gnu.org>
7388
7389 * xterm.c (handle_one_xevent): Don't let popup menus cause
7390 mouse-autoselect-window related window switching. (Bug#1261)
7391
860cd236
CY
73922008-11-04 David Smith <davidsmith@acm.org> (tiny change)
7393
7394 * xterm.c (xim_close_dpy): Avoid double-free on X11R6 XIM.
7395
653a3150
AS
73962008-11-04 Andreas Schwab <schwab@suse.de>
7397
7398 * xfns.c (Fx_wm_set_size_hint): Add missing return value.
7399
870f5cac
CY
74002008-11-03 Chong Yidong <cyd@stupidchicken.com>
7401
7402 * xfns.c (Fx_wm_set_size_hint): New function.
7403
1e02f3cb
MR
74042008-11-03 Martin Rudalics <rudalics@gmx.at>
7405
7406 * textprop.c (Fprevious_single_char_property_change): Return 0
7407 when there's no change in a string. (Bug#1301)
7408
e630dfc6
MR
74092008-11-02 Martin Rudalics <rudalics@gmx.at>
7410
7411 * frame.c (do_switch_frame): New argument NORECORD passed to
7412 Fselect_window.
7413 (Fselect_frame): New argument NORECORD passed to
7414 do_switch_frame.
7415 (Fset_frame_selected_window): New argument NORECORD passed to
7416 Fselect_frame.
7417 (Fhandle_switch_frame, Fdelete_frame): Handle NORECORD argument
7418 in call of do_switch_frame.
7419 (Fset_mouse_position, Fset_mouse_pixel_position, Fraise_frame):
7420 Handle NORECORD argument in call of Fselect_frame.
7421 * lisp.h (do_switch_frame, Fselect_frame)
7422 (Fset_frame_selected_window): Adjust declarations.
7423 * window.c (select_frame_norecord): New function.
7424 (run_window_configuration_change_hook): Use it and call
7425 Fselect_frame with NORECORD set.
7426 (Fselect_window): Pass NORECORD to Fselect_frame.
7427 (Fset_window_configuration): Handle NORECORD argument in call of
7428 do_switch_frame.
7429 * minibuf.c (choose_minibuf_frame): Handle NORECORD in call of
7430 Fset_frame_selected_window.
7431 * keyboard.c (command_loop_1): Handle NORECORD in call of
7432 Fselect_frame (currently ifdefd).
7433
9020b223
GM
74342008-11-02 Ulrich Mueller <ulm@kph.uni-mainz.de>
7435
7436 * emacs.c (USAGE2): Untabify.
7437
793ffee8
SM
74382008-11-01 Stefan Monnier <monnier@iro.umontreal.ca>
7439
7440 * composite.c (fill_gstring_header): Fix copy/paste typo.
7441
ab6d1131
MR
74422008-10-31 Martin Rudalics <rudalics@gmx.at>
7443
7444 * window.c (Fnext_window, Fprevious_window): Rewrite doc-string.
7445 (Fother_window): Rename argument and rewrite doc-string.
7446 (select_window_norecord): Fix return value. (Bug#1276)
7447
601a9cf1
JB
74482008-10-30 Juanma Barranquero <lekktu@gmail.com>
7449
7450 * w32fns.c (x_create_tip_frame): Prevent default foreground color for
7451 new frames overriding foreground for tooltips. Based on similar patch
7452 from Martin Rudalics <rudalics@gmx.at>. (Bug#1032)
7453
813b0652
CY
74542008-10-29 Chong Yidong <cyd@stupidchicken.com>
7455
7456 * emacs.c (Fdaemon_initialized): Initialize nfd.
7457
4414f58f
MR
74582008-10-29 Martin Rudalics <rudalics@gmx.at>
7459
7460 * window.c (Fwindow_height, Fdelete_window, set_window_buffer)
7461 (Fwindow_text_height): Clarify doc-strings.
7462 * xdisp.c (syms_of_xdisp): Mention set-window-buffer in
7463 doc-string of window-scroll-functions.
7464
ecdcaa09
RS
74652008-10-28 Reiner Steib <Reiner.Steib@gmx.de>
7466
7467 * category.c (syms_of_category): Fix typo in docstring.
7468
23fe745a
JB
74692008-10-28 Juanma Barranquero <lekktu@gmail.com>
7470
7471 * window.c (Fwindowp, Fwindow_live_p, Fwindow_minibuffer_p)
7472 (Fcoordinates_in_window_p, Fscroll_left, Fscroll_right):
7473 Fix typos in docstrings.
7474
ff808935
DN
74752008-10-28 Dan Nicolaescu <dann@ics.uci.edu>
7476
7477 * emacs.c (daemon_pipe): Make non-static.
7478 (IS_DAEMON): Move definition ...
7479 * lisp.h (IS_DAEMON): ... here.
7480 (daemon_pipe): Declare.
7481 (is_daemon): Remove.
7482 * dispnew.c (init_display): Use IS_DAEMON.
7483
fc012771
SM
74842008-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
7485
7486 * xdisp.c (pos_visible_p, redisplay_internal, message3_nolog)
7487 (message2_nolog): Check FRAME_INITIAL_P instead of noninteractively.
7488
7489 * emacs.c (is_daemon): Remove.
7490 (main): Don't set is_daemon.
7491 (IS_DAEMON): New macro.
7492 (Fdaemonp, Fdaemon_initialized): Use it.
601a9cf1 7493 (Fdaemon_initialized): Write a char into the pipe to make sure the
fc012771
SM
7494 parent exits.
7495 (syms_of_emacs): Explicitly initialize daemon_pipe[1].
7496
d8bdbe6f
CY
74972008-10-27 Chong Yidong <cyd@stupidchicken.com>
7498
d1a072bf
CY
7499 * nsterm.m (ns_draw_window_cursor): When hbar cursor is on
7500 over-sized glyph, draw it with the default glyph width.
7501
e2e325aa
CY
7502 * w32term.c (x_draw_bar_cursor): When hbar cursor is on over-sized
7503 glyph, draw it with the default glyph width.
7504
7505 * xterm.c (x_draw_bar_cursor): When hbar cursor is on over-sized
7506 glyph, draw it with the default glyph width.
7507
d8bdbe6f
CY
7508 * xdisp.c (try_scrolling): When computing the distance from the
7509 scroll margin to PT, try moving some distance past the window
7510 bottom before giving up.
7511
7bfac547
MR
75122008-10-27 Martin Rudalics <rudalics@gmx.at>
7513
7514 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p)
7515 (Fset_window_buffer): Explain in doc-string that a window can be
7516 "strongly" dedicated to its buffer.
7517
4ff029f6
DN
75182008-10-27 Dan Nicolaescu <dann@ics.uci.edu>
7519
7520 * emacs.c (daemon_name): New variable.
7521 (main): Deal with --daemon=SERVER_NAME.
7522 (Fdaemonp): Return a name if one was passed to --daemon.
7523
5790ef40
DN
75242008-10-26 Romain Francoise <romain@orebokech.com>
7525
f9bd0df9 7526 * emacs.c (daemon_pipe): New variable.
5790ef40
DN
7527 (main): Create a pipe before forking, make the parent exit only after
7528 the child has closed its end of the pipe. Move closing the
7529 descriptors ...
7530 (Fdaemon_initialized): ... here. New function.
7531
f5385255
SM
75322008-10-26 Stefan Monnier <monnier@iro.umontreal.ca>
7533
4d632321
SM
7534 * chartab.c (Foptimize_char_table): Make sure `ascii' doesn't point to
7535 the previous unoptimized table.
7536
f5385255
SM
7537 * window.c (Fset_window_buffer): Undo 2008-10-18 change to re-instate
7538 the distinction between non-nil and non-t value of `dedicated'.
7539
6c56a0f3
CY
75402008-10-25 Chong Yidong <cyd@stupidchicken.com>
7541
7542 * keyboard.c (read_char_minibuf_menu_prompt): Ensure that
f5385255 7543 read_char_minibuf_menu_text is large enough to hold the menu string.
6c56a0f3 7544
fec89261
MR
75452008-10-25 Martin Rudalics <rudalics@gmx.at>
7546
7547 * window.c (Fget_buffer_window, Fdelete_windows_on)
7548 (Freplace_buffer_in_windows): Make buffer argument optional and
7549 rename to buffer_or_name.
7550
34fcddd0
CY
75512008-10-24 Chong Yidong <cyd@stupidchicken.com>
7552
f5385255
SM
7553 * xdisp.c (handle_single_display_spec, handle_display_prop):
7554 Undo 2005-05-16 change.
34fcddd0
CY
7555 (handle_stop): Pop iterator if it's loaded with an empty string.
7556 (get_overlay_strings_1): Don't save iterator if it's loaded with
7557 an empty string (bug#1201).
7558
064766f2
KH
75592008-10-24 Kenichi Handa <handa@m17n.org>
7560
7561 * ftfont.c (ftfont_otf_features): Fix previous change.
7562 (ftfont_otf_capability): Check FeatureList.FeatureCount before
7563 calling ftfont_otf_features.
7564
f9bd0df9 75652008-10-24 Kenichi Handa <handa@m17n.org>
064766f2
KH
7566
7567 * font.c (font_match_p): Fix for the case that a vector of
7568 characters is in script-representative-chars.
7569
1dae9197
MA
75702008-10-24 Michael Albinus <michael.albinus@gmx.de>
7571
7572 * dbusbind.c (xd_in_read_queued_messages): New variable.
f5385255 7573 (XD_SIGNAL1, XD_SIGNAL2, XD_SIGNAL3): New macros. Throw Qdbus_error.
1dae9197
MA
7574 (xd_read_queued_messages): Catch Qdbus_error from the macros.
7575 (all): Replace xsignal1, xsignal2, xsignal3 by the respective
777013f2 7576 macro. (Bug#1186)
1dae9197 7577
f9bd0df9 75782008-10-23 Ali Bahrami <ali_gnu@emvision.com> (tiny change)
9b3362b8
DN
7579
7580 * s/sol2-10.h: New file.
7581
878a4584
JB
75822008-10-23 Juanma Barranquero <lekktu@gmail.com>
7583
7584 * xdisp.c (fill_glyph_string): Fix typo in source (though the
7585 poor beast has survived 9+ years and the jump from xterm.c!).
7586
cd265ca6
MR
75872008-10-23 Martin Rudalics <rudalics@gmx.at>
7588
7589 * buffer.c (Fget_buffer_create): Rename arg to buffer_or_name.
7590 Reword doc-string.
f5385255 7591 (Fbury_buffer): In doc-string say what happens to the buffer's window.
cd265ca6 7592
472a4dc9
JB
75932008-10-23 Juanma Barranquero <lekktu@gmail.com>
7594
7595 * character.c (syms_of_character) <script-representative-chars>:
7596 <unicode-category-table>: Doc fixes.
7597
159bd5a2
NF
75982008-10-23 Noah Friedman <friedman@splode.com>
7599
7600 * coding.c (make_conversion_work_buffer): Check that
7601 Vcode_conversion_reused_workbuf is a live buffer, otherwise call
7602 Fget_buffer_create.
7603
49f9c344
KH
76042008-10-23 Kenichi Handa <handa@m17n.org>
7605
7606 * font.c (font_add_log): Check the values of extra properties.
7607
12bb3111
MR
76082008-10-22 Martin Rudalics <rudalics@gmx.at>
7609
7610 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
7611 Reword doc-string.
7612 (Fset_window_parameter): Use NILP.
7613 (Fscroll_up, Fscroll_down, Fminibuffer_selected_window)
f5385255 7614 (Frecenter): Use "selected" instead of "current" window in doc-strings.
12bb3111 7615
bbeb4e99
JB
76162008-10-22 Juanma Barranquero <lekktu@gmail.com>
7617
7618 * xdisp.c (next_element_from_buffer): Remove bogus xassert condition.
7619
76202008-10-22 Adrian Robert <Adrian.B.Robert@gmail.com>
cb83c00b
AR
7621
7622 * nsfns.m (ns_appkit_version): New function.
7623 (x-server-version): Use it.
7624 (syms_of_nsfns): Define ns-version-string here, not nsterm.m.
7625 (x-server-vendor): Don't check_ns().
7626
7627 * nsterm.m (syms_of_nsterm): Drop ns-version-string.
7628
a9b555d3
JB
76292008-10-22 Juanma Barranquero <lekktu@gmail.com>
7630
7631 * w32fns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert.
7632 Copied from 2005-02-03 change to xfns.c by Kim F. Storm.
7633
4626499f
KH
76342008-10-22 Kenichi Handa <handa@m17n.org>
7635
e3681952
KH
7636 * syntax.c (scan_words): Call word_boundary_p instead of comparing
7637 scripts.
7638
4626499f
KH
7639 * category.c (word_boundary_p): Check scripts instead of charset.
7640 Handle nil value in word-separating-categories and
7641 word-combining-categories.
7642 (syms_of_category): Fix docstrings of word-separating-categories
7643 and word-combining-categories.
7644
1560f91a
EZ
76452008-10-21 Eli Zaretskii <eliz@gnu.org>
7646
7647 * coding.c (Fencode_coding_region, Fdecode_coding_region)
7648 (Fdecode_coding_string, Fencode_coding_string): Doc fix.
7649
f4668441
MR
76502008-10-21 Martin Rudalics <rudalics@gmx.at>
7651
7652 * buffer.c (Fget_buffer, Fbury_buffer, switch_to_buffer_1):
7653 Rename arg "buffer" to "buffer_or_name".
7654 (Fkill_buffer): Rename arg "buffer" to "buffer_or_name" and make
7655 it optional.
7656 (no_switch_window): Remove since the return value is not used.
a9b555d3 7657 (Fswitch_to_buffer): Rename arg "buffer" to "buffer_or_name".
f4668441
MR
7658 Consider window as dedicated when Fwindow_dedicated_p returns a
7659 non-nil value.
7660 * lisp.h: Remove prototype for no_switch_window.
7661
fd75ddb2
JD
76622008-10-21 Jan Djärv <jan.h.d@swipnet.se>
7663
7664 * emacs.c (main): Unconditionally set PER_LINUX32 and exec
2ae37cf0 7665 temacs when dumping if HAVE_PERSONALITY_LINUX32 is defined.
fd75ddb2 7666
07295713
KH
76672008-10-21 Kenichi Handa <handa@m17n.org>
7668
7669 * coding.c (detect_coding_charset): For iso-8859-* coding systems,
7670 check Vlatin_extra_code_table.
7671
712adc82
EZ
76722008-10-20 Eli Zaretskii <eliz@gnu.org>
7673
7674 * fileio.c (Fset_file_modes): Doc fix.
7675
f549eb0b
MA
76762008-10-19 Michael Albinus <michael.albinus@gmx.de>
7677
7678 * dbusbind.c (XD_OBJECT_TO_DBUS_TYPE): Handle simple type symbols
7679 in arrays.
7680
aac0c6e3
MR
76812008-10-19 Martin Rudalics <rudalics@gmx.at>
7682
7683 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
7684 Mention kill-buffer in doc-string.
7685 (Fset_window_buffer): Reinsert tem check removed in last commit.
7686 (Fenlarge_window, Fshrink_window): Have argument names and
7687 doc-string follow Elisp manual more closely.
7688
76892008-10-18 Eli Zaretskii <eliz@gnu.org>
7690
7691 * fileio.c (Fset_file_modes): Doc fix.
7692
76932008-10-18 Martin Rudalics <rudalics@gmx.at>
7694
7695 * window.c (Fwindow_width, Fset_window_start)
7696 (Fwindow_parameters, Fwindow_parameter, Fset_window_parameter)
f5385255
SM
7697 (Fdelete_windows_on, Freplace_buffer_in_windows):
7698 Make doc-strings follow code and Elisp manual more closely.
aac0c6e3
MR
7699 (Fwindow_dedicated_p): Make window argument optional.
7700 (Fset_window_dedicated_p): Rename argument "arg" to "flag".
7701 (Fset_window_buffer): Respect any non-nil dedicated value for
7702 window. Rename "buffer" argument to "buffer_or_name".
7703
77042008-10-18 Ulrich Mueller <ulm@gentoo.org>
7705
7706 * m/sh3.h: New file, machine description for SuperH.
7707
77082008-10-17 Martin Rudalics <rudalics@gmx.at>
7709
7710 * window.c (Fsplit_window): Rename arg horflag to horizontal.
7711
77122008-10-17 Kenichi Handa <handa@m17n.org>
7713
7714 * ftfont.c (ftfont_otf_features): Fix indexing
7715 gsub_gpos->FeatureList.Feature. Check the validity of indices.
7716
77172008-10-16 Magnus Henoch <mange@freemail.hu>
7718
7719 * dbusbind.c (Fdbus_call_method): Unbreak usage line.
7720 (Fdbus_call_method_asynchronously): Ditto.
7721 This change makes C-h f display the argument list.
7722
77232008-10-16 Chong Yidong <cyd@stupidchicken.com>
7724
7725 * fileio.c (Fexpand_file_name): Doc fix.
7726
7727 * xfaces.c (Finternal_set_lisp_face_attribute): Make null values
7728 of :foreground and :background equivalent to unspecified (20.x
7729 compatibility).
7730
77312008-10-15 Eli Zaretskii <eliz@gnu.org>
7732
7733 * buffer.c (syms_of_buffer): Doc fix.
7734
77352008-10-14 Kenichi Handa <handa@m17n.org>
7736
7737 * font.c (font_clear_prop): When clearing font width, clear the
7738 average width field too.
7739
77402008-10-12 Andreas Schwab <schwab@suse.de>
7741
7742 * ftfont.c (ftfont_shape_by_flt): Make static.
7743 * ftfont.h (ftfont_shape_by_flt): Don't declare.
7744
7745 * font.c: Don't include <m17n-flt.h>.
7746
77472008-10-10 Eli Zaretskii <eliz@gnu.org>
7748
7749 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Decrease to 10000.
7750
77512008-10-09 Eli Zaretskii <eliz@gnu.org>
7752
7753 * frame.c (make_terminal_frame) [MSDOS]: Remove unused #ifdef'ed
7754 away code.
7755
77562008-10-09 Chong Yidong <cyd@stupidchicken.com>
7757
7758 * dispnew.c (update_text_area): Avoid looping due to large glyph
7759 overhangs (bug#1070).
7760
77612008-10-09 Kenichi Handa <handa@m17n.org>
7762
7763 * fontset.c (face_for_char): If face->fontset is negative, just
7764 return ascii_face.
7765
f5385255
SM
7766 * font.c (font_delete_unmatched): Fix previous change.
7767 Don't reject an entity if DPI and AVGWIDTH of an entity are 0.
aac0c6e3
MR
7768
77692008-10-09 Martin Rudalics <rudalics@gmx.at>
7770
7771 * frame.c (Fraise_frame): On text-only terminals select frame in
7772 order to make it visible. (Bug#1061)
7773
77742008-10-08 Chong Yidong <cyd@stupidchicken.com>
7775
7776 * fontset.c (fontset_find_font): Check frame validity.
7777
77782008-10-07 Chong Yidong <cyd@stupidchicken.com>
7779
a9b555d3 7780 * gtkutil.c (xg_display_open): Reset default display if none exists.
aac0c6e3
MR
7781 (xg_display_close): Allow Emacs to close all displays (bug#985).
7782
77832008-10-06 Andreas Schwab <schwab@suse.de>
7784
f5385255 7785 * sysdep.c (sys_signal): Always set SA_RESTART when noninteractively.
aac0c6e3
MR
7786
77872008-10-06 Chong Yidong <cyd@stupidchicken.com>
7788
f5385255 7789 * emacs.c (Vbefore_init_time, Vafter_init_time): Move from startup.el.
aac0c6e3 7790
a9b555d3 7791 * lisp.h (Vbefore_init_time, Vafter_init_time): Declare.
aac0c6e3
MR
7792
7793 * gtkutil.c (x_wm_set_size_hint): Return immediately if called
7794 during initialization.
7795
77962008-10-04 Eli Zaretskii <eliz@gnu.org>
7797
7798 * xdisp.c (redisplay_internal): If frame switched, redisplay the
7799 whole thing on MSDOS frames as well as on a TTY.
7800
7801 * dispnew.c (update_frame): Flush termscript for MSDOS frames as
7802 well as for TTY.
7803 (Fopen_termscript): Allow opening a termscript on MSDOS frames as
7804 well as on a TTY.
7805
7806 * sysdep.c (init_sys_modes): Set FRAME_GARBAGED_P for MSDOS frames
7807 as well as for TTY.
7808
7809 * systime.h (EMACS_TIME_CMP): Cast EMACS_SECS values to `long'.
7810
7811 * dispnew.c (change_frame_size_1): Set FrameRows and FrameCols for
7812 MSDOS frames as well.
7813
78142008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
7815
7816 * image.c (x_clear_image_1): Under NS, call ns_free_indexed_color with
7817 correct arguments.
b71ac3dd 7818 * menu.c (find_and_return_menu_selection): Add cast.
aac0c6e3
MR
7819
78202008-10-03 Glenn Morris <rgm@gnu.org>
7821
7822 * emacs.c (USAGE1): Add --daemon.
7823
78242008-10-02 Eli Zaretskii <eliz@gnu.org>
7825
7826 * process.c (procfs_system_process_attributes): Multiply `pcpu' by
7827 100, so it's in percents as advertised.
7828
78292008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
7830
7831 * nsterm.h (ns_cursor_types, ns_output.desired_cursor_color)
7832 (ns_output.current_cursor, ns_output.desired_cursor)
7833 (ns_output.last_inactive, FRAME_CURSOR, FRAME_NEW_CURSOR)
7834 (FRAME_NEW_CURSOR_COLOR): Remove.
7835
7836 * nsfns.m (ns_set_cursor_color): Use FRAME_CURSOR_COLOR.
a9b555d3 7837 (ns_lisp_to_cursor_type, ns_cursor_type_to_lisp): Use core Emacs
aac0c6e3
MR
7838 enumeration (HOLLOW_BOX_CURSOR, etc.).
7839
7840 * nsterm.m (ns_frame_rehighlight): Remove commented code.
7841 (draw_window_cursor): Simplify code.
f5385255
SM
7842 (EmacsView-windowDidBecomeKey:,-windowDidResignKey:):
7843 Don't change cursor type. In latter, call rehighlight instead of doing
aac0c6e3 7844 updates manually.
a9b555d3
JB
7845 (EmacsPrefsController-setPanelFromValues,-setValuesFromPanel):
7846 Use core Emacs cursor types.
aac0c6e3 7847
b8ff72fa 7848 * xdisp.c (draw_glyphs): Don't call notice_overwritten_cursor under NS.
aac0c6e3
MR
7849
78502008-10-02 Martin Rudalics <rudalics@gmx.at>
7851
7852 * process.c (Faccept_process_output): Fix doc-string.
7853
78542008-10-02 Dan Nicolaescu <dann@ics.uci.edu>
7855
7856 * gmalloc.c (__sbrk): Also define for uClibc.
7857
7858 * s/gnu-linux.h (GNU_LIBRARY_PENDING_OUTPUT_COUNT): Add definition
7859 for uClibc.
7860
78612008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
7862
7863 * nsfont.m (nsfont_spec_to_traits): Use UnXX masks only for non-normal
7864 styles.
7865 (nsfont_open): Reenable the cache.
7866
78672008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
7868
7869 * font.c (font_matching_entity): Reflect ATTRS in font selection.
7870 (font_find_for_lface) [HAVE_NS]: Don't ignore case.
7871
78722008-09-30 Stefan Monnier <monnier@iro.umontreal.ca>
7873
7874 * dispnew.c (Fsend_string_to_terminal): Don't try to send a string to
7875 a suspended terminal.
7876
78772008-09-30 Michael Albinus <michael.albinus@gmx.de>
7878
7879 * dbusbind.c (xd_signature): Use strcat instead of sprintf.
7880
78812008-09-30 Eli Zaretskii <eliz@gnu.org>
7882
7883 * Makefile.in (MSDOS_SUPPORT): Remove ccl.elc and codepage.elc.
7884
78852008-09-30 Chong Yidong <cyd@stupidchicken.com>
7886
7887 * xdisp.c (move_it_to): Don't advance the iterator if the last tab
7888 in a continued line coincides with a line beginning.
7889
78902008-09-29 Adrian Robert <Adrian.B.Robert@gmail.com>
7891
7892 * nsfont.m (nsfont_trait_distance): Fix bug.
7893 (nsfont_list): Return a list rather than a vector (syncs with Handa
7894 changes of 2008-05-14).
7895 (nsfont_open): Improve logging.
7896
78972008-09-29 Andreas Schwab <schwab@suse.de>
7898
7899 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
7900
79012008-09-28 Martin Rudalics <rudalics@gmx.at>
7902
7903 * character.c (Fchar_resolve_modifiers): Rewrite Elisp function
7904 name as char-resolve-modifiers.
7905 Reported by: Markus Triska <markus.triska@gmx.at>
7906
79072008-09-28 Dan Nicolaescu <dann@ics.uci.edu>
7908
7909 * dispnew.c (init_display): Return earlier when running as a daemon.
7910
79112008-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
7912
7913 * nsfont.m (nsfont_draw): Fix up composition rendering (cmp_from, ...).
7914
79152008-09-27 Eli Zaretskii <eliz@gnu.org>
7916
7917 * composite.c (Fcomposition_get_gstring)
7918 (Fcompose_region_internal, Fcompose_string_internal)
7919 (Ffind_composition_internal): Doc fix.
7920 (syms_of_composite) <compose-chars-after-function>: Doc fix.
7921 (syms_of_composite) <auto-composition-function>: Doc fix.
7922 (syms_of_composite) <composition-function-table>: Doc fix.
7923
79242008-09-25 Chong Yidong <cyd@stupidchicken.com>
7925
7926 * search.c (wordify): New argument for lax word-ends.
7927 (Fword_search_forward_lax, Fword_search_backward_lax): New funs.
7928
79292008-09-24 Dan Nicolaescu <dann@ics.uci.edu>
7930
7931 * lisp.h (is_daemon): Declare.
7932 * dispnew.c (init_display): Do not try to initialize the terminal
7933 when running as a daemon.
7934
79352008-09-22 Chong Yidong <cyd@stupidchicken.com>
7936
7937 * nsfns.m (compute_tip_xy): Use x_display_pixel_width and
7938 x_display_pixel_height.
7939
79402008-09-22 Martin Rudalics <rudalics@gmx.at>
7941
7942 * undo.c (record_point): Don't call Fundo_boundary for first
7943 change. (Bug#731)
7944
79452008-09-22 Juanma Barranquero <lekktu@gmail.com>
7946
7947 * emacs.c (Fdaemonp): Doc fix.
7948
79492008-09-22 Dan Nicolaescu <dann@ics.uci.edu>
7950
7951 * emacs.c (main): Place #ifdef in the proper place.
7952
79532008-09-21 Dan Nicolaescu <dann@ics.uci.edu>
7954
7955 * emacs.c (standard_args): Add --daemon.
7956 (main): Disconnect from the terminal when --daemon is passed.
7957 (is_daemon): New variable.
7958 (Fdaemonp): New function.
7959 (syms_of_emacs): Defsubr it.
7960
79612008-09-20 Chong Yidong <cyd@stupidchicken.com>
7962
7963 * xdisp.c (get_next_display_element): Handle string display
7964 correctly when checking for the end of a box run.
7965
79662008-09-20 Glenn Morris <rgm@gnu.org>
7967
7968 * fileio.c (Qdelete_by_moving_to_trash): New Lisp_Object.
7969 (syms_of_fileio): Add Qdelete_by_moving_to_trash.
7970 (Frename_file): Avoid copying to trash if a rename involves
7971 a delete. (Bug#964).
7972
79732008-09-20 Eli Zaretskii <eliz@gnu.org>
7974
7975 * keyboard.c (Fset_quit_char, Fset_input_meta_mode)
7976 (Fset_output_flow_control, Fcurrent_input_mode): Support MSDOS
7977 frames as well as termcap frames.
7978 (handle_interrupt): Remove "#ifndef MSDOS" around the call to
7979 get_named_tty.
7980
79812008-09-19 Eli Zaretskii <eliz@gnu.org>
7982
7983 * process.c (procfs_system_process_attributes): Fix cmdline in
7984 case /proc/PID/cmdline is empty.
7985
7986 * xterm.c (x_wm_set_size_hint): Use x_display_pixel_width and
7987 x_display_pixel_height.
7988
79892008-09-19 Juanma Barranquero <lekktu@gmail.com>
7990
7991 * frame.c (x_fullscreen_adjust): Declare var as Display_Info.
7992
7993 * w32fns.c (Fx_display_pixel_width, Fx_display_pixel_height)
7994 (compute_tip_xy): Use x_display_pixel_width, x_display_pixel_height.
7995
79962008-09-19 Dan Nicolaescu <dann@ics.uci.edu>
7997
7998 * dispextern.h (struct it): Move line_wrap away from the middle of
7999 bitfields. Move voffset in struct iterator_stack_entry after the
8000 bitfields. Move tab_width near after another short.
8001
80022008-09-18 Dan Nicolaescu <dann@ics.uci.edu>
8003
8004 * frame.h (struct frame): Move alpha from the middle of bitfields.
8005
8006 * window.h (struct window): Move frozen_window_start_p after the
8007 rest of the bitfields to reduce padding.
8008
80092008-09-18 Chong Yidong <cyd@stupidchicken.com>
8010
8011 * xterm.h (x_display_info): Remove `height' and `width' members.
8012
8013 * nsterm.h (ns_display_info): Remove `height' and `width' members.
8014
8015 * w32term.h (w32_display_info): Remove `height', `width',
8016 `height_in', and `width_in' members.
8017
b8ff72fa
SM
8018 * xterm.c (x_display_pixel_height, x_display_pixel_width):
8019 New functions.
aac0c6e3
MR
8020 (x_calc_absolute_position): Use them.
8021 (x_term_init): Omit removed `height' and `width' members.
8022
b8ff72fa
SM
8023 * w32term.c (x_display_pixel_height, x_display_pixel_width):
8024 New functions.
aac0c6e3
MR
8025 (w32_read_socket, x_calc_absolute_position): Use them.
8026 (w32_initialize_display_info, w32_term_init): Omit removed members
8027 of w32_display_info.
8028
b8ff72fa
SM
8029 * nsterm.m (x_display_pixel_height, x_display_pixel_width):
8030 New functions.
8031 (ns_initialize_display_info): Omit removed members of ns_display_info.
aac0c6e3 8032
b8ff72fa
SM
8033 * xterm.c (x_display_pixel_height, x_display_pixel_width):
8034 New functions.
aac0c6e3
MR
8035 (x_calc_absolute_position): Use them.
8036 (x_term_init): Omit removed `height' and `width' members.
8037
8038 * xfns.c (Fx_display_pixel_width, Fx_display_pixel_height)
b8ff72fa
SM
8039 (compute_tip_xy):
8040 * frame.c (x_fullscreen_adjust):
aac0c6e3
MR
8041 * xmenu.c (menu_position_func): Use x_display_pixel_height and
8042 x_display_pixel_width.
8043
80442008-09-18 Kenichi Handa <handa@m17n.org>
8045
8046 * composite.c (fill_gstring_header): Don't check FROM and TO here.
8047 (composition_compute_stop_pos): Fix handling of static composition.
8048 (Fcomposition_get_gstring): Check FROM and TO at first.
8049
80502008-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
8051
46e722a9 8052 * composite.c (Fcomposition_get_gstring): Yet another int/Lisp_Object
aac0c6e3
MR
8053 mixup (YAILOM).
8054
80552008-09-17 Chong Yidong <cyd@stupidchicken.com>
8056
8057 * indent.c (Fvertical_motion): Use position reported by iterator
8058 instead of PT for determining screen motion (bug#943).
8059
80602008-09-17 Romain Francoise <romain@orebokech.com>
8061
8062 * composite.c (composition_adjust_point): Fix int/EMACS_INT mixup.
8063
80642008-09-17 Kenichi Handa <handa@m17n.org>
8065
8066 * ftfont.c (ftfont_shape_by_flt): Downcase family name.
8067
8068 * composite.c (Fcomposition_get_gstring): Make bigger gstring_work
8069 if necessary.
8070
80712008-09-16 Kenichi Handa <handa@m17n.org>
8072
8073 * coding.c (make_conversion_work_buffer): Avoid calling
8074 Fget_buffer_create if it is not necessary.
8075
80762008-09-15 Martin Rudalics <rudalics@gmx.at>
8077
8078 * window.c (Fselect_window): Don't update window_select_count and
8079 use_time when norecord is not nil.
8080
80812008-09-14 Kenichi Handa <handa@m17n.org>
8082
8083 * fileio.c (Finsert_file_contents): Delete incorrect decrement of
8084 specpdl_ptr.
8085
80862008-09-12 Kenichi Handa <handa@m17n.org>
8087
8088 * indent.c (scan_for_column): Don't handle automatic composition
8089 if the current buffer is not associated with a window.
8090
8091 * composite.c (composition_reseat_it): If the current buffer is
8092 not associated with a window, ignore the automatic composition.
8093 (find_automatic_composition): Likewise.
8094
80952008-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
8096
8097 * term.c (close_gpm): New fun extracted from Fgpm_mouse_stop.
8098 (Fgpm_mouse_stop): Use it.
8099 * termhooks.h (close_gpm): Declare.
8100 * keyboard.c (tty_read_avail_input): Forcefully close the gpm
8101 connection if Gpm_GetEvent fails.
8102
8103 * window.c (set_window_buffer): Always preserve current-buffer.
8104
81052008-09-12 Glenn Morris <rgm@gnu.org>
8106
8107 * charset.c (init_charset): Warn if etc/charsets not found. (Bug#909)
8108
81092008-09-11 Glenn Morris <rgm@gnu.org>
8110
8111 * charset.c (charset-map-path): Doc fix.
8112
81132008-09-10 Kenichi Handa <handa@m17n.org>
8114
8115 * xdisp.c (handle_composition_prop): Set it->cmp_it.ch to -1.
8116
8117 * font.c (Ffont_shape_gstring): Make glyphs of non-nil adjustment
8118 compose a grapheme cluster with the preceding base glyph.
8119
8120 * composite.c (composition_compute_stop_pos): Fix previous change.
8121 Reset cmp_it->id to -1 at first.
8122
81232008-09-10 Glenn Morris <rgm@gnu.org>
8124
8125 * Makefile.in (character.o, chartab.o): Fix config.h typo.
8126
81272008-09-09 Chong Yidong <cyd@stupidchicken.com>
8128
8129 * keyboard.c (read_key_sequence): Reapply translation maps when
8130 switching keyboards.
8131
81322008-09-09 Kenichi Handa <handa@m17n.org>
8133
8134 * ftfont.c (ftfont_shape_by_flt): Use "combining" FLT for ASCII
8135 characters.
8136
8137 * composite.c (FORWARD_CHAR): Fix calculation
8138 of (POSITION).pos_byte.
8139 (composition_compute_stop_pos): Limit the search of composition to
8140 at most 500 characters ahead. If we reach the limit or find a
8141 newline, set cmp_it->ch to -2 and return 0.
8142 (composition_reseat_it): Handle the case that cmp_it->ch is -2.
8143
81442008-09-08 Kenichi Handa <handa@m17n.org>
8145
8146 * indent.c (Fvertical_motion): Be sure to set
8147 it_overshoot_expected if it.cmp_it.id is non-negative.
8148
81492008-09-07 Andreas Schwab <schwab@suse.de>
8150
8151 * callproc.c (Fcall_process): Don't hold references to string data
8152 across garbage collection. Move initialisation of new_argv down
8153 to avoid compiler bug.
8154
81552008-09-07 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
8156
8157 * process.c (Fsystem_process_attributes): Doc fix.
8158
81592008-09-07 Chong Yidong <cyd@stupidchicken.com>
8160
8161 * callproc.c (Fcall_process): Canonicalize current directory name.
8162
8163 * xdisp.c (move_it_to): When moving by vpos, ensure that the
8164 iterator advances to the next line if the current line ends in a
8165 continued tab.
8166
81672008-09-07 Teodor Zlatanov <tzz@lifelogs.com>
8168
8169 * nsfont.m (nsfont_draw): Fix the references to missing gidx data
8170 member to point to cmp_from.
8171
8172 * xdisp.c: Doc fix for references to gidx data member.
8173
81742008-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
8175
8176 * buffer.c (Fbuffer_swap_text): Reset window->point markers.
8177
81782008-09-07 Kenichi Handa <handa@m17n.org>
8179
8180 * composite.c (FORWARD_CHAR): Check STOP after
8181 incrementing (POSITION).pos.
8182
81832008-09-06 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
8184
8185 * process.c (Fsystem_process_attributes): Doc fix.
8186
81872008-09-06 Chong Yidong <cyd@stupidchicken.com>
8188
8189 * keyboard.c (Ftop_level): Doc fix.
8190
81912008-09-06 Eli Zaretskii <eliz@gnu.org>
8192
8193 * xmenu.c (xmenu_show) [!HAVE_X_WINDOWS]: If frame has a
8194 minibuffer, don't let lower part of menu invade the echo area.
8195
8196 * msdos.c (IT_menu_display): Use STRING_CHAR_ADVANCE instead of a
8197 "char *q" to access menu text and advance through it. Revert the
8198 change that displayed ">" instead of ASCII character 0x10.
8199
82002008-09-05 Eli Zaretskii <eliz@gnu.org>
8201
8202 * menu.c (single_menu_item) [!HAVE_BOXES]: Enable emulation of
8203 toggle boxes and radio buttons on MS-DOS as well.
8204
82052008-09-05 Kenichi Handa <handa@m17n.org>
8206
8207 * composite.c (autocmp_chars): Check lookback count.
8208 (composition_compute_stop_pos): Set cmp_it->lookback.
8209 (composition_reseat_it): Check lookback count.
8210 (struct position_record): New struct.
8211 (FORWARD_CHAR, BACKWARD_CHAR, CHAR_COMPOSABLE_P): New macros.
8212 (find_automatic_composition): New function.
8213 (composition_adjust_point): Use find_automatic_composition.
8214
8215 * dispextern.h (struct composition_it): New member lookback.
8216
82172008-09-02 Chong Yidong <cyd@stupidchicken.com>
8218
8219 * indent.c (Fvertical_motion): Don't call move_it_by_lines again
8220 if moving by a single line.
8221
82222008-09-02 Andreas Schwab <schwab@suse.de>
8223
8224 * xterm.c (x_delete_display): Fix merge error.
8225
8226 * fileio.c (Fexpand_file_name): Remove unused variables.
8227
82282008-09-02 Eli Zaretskii <eliz@gnu.org>
8229
8230 * fileio.c (Fexpand_file_name): Copy argument `name' into local
8231 storage on all platforms, not just on DOS_NT.
8232
82332008-09-02 Jason Rumney <jasonr@gnu.org>
8234
b8ff72fa
SM
8235 * w32menu.c (Fx_popup_menu, Fx_popup_dialog, w32_menu_show):
8236 Ensure mouse is not grabbed after menu is finished.
aac0c6e3
MR
8237
82382008-09-01 Chong Yidong <cyd@stupidchicken.com>
8239
8240 * xfaces.c (Finternal_set_alternative_font_family_alist)
8241 (Finternal_set_alternative_font_registry_alist): Properly copy
8242 entire alist structure.
8243
82442008-09-01 Kenichi Handa <handa@m17n.org>
8245
d66c0241 8246 * ftfont.c (ftfont_spec_pattern): Don't create a charset if the
aac0c6e3 8247 representative chars of the script is a vector.
d66c0241
JB
8248 (ftfont_list): Handle the case where the representative chars of
8249 the script is a vector.
aac0c6e3
MR
8250
8251 * character.c (syms_of_character): Docstring of
8252 script-representative-chars fixed.
8253
82542008-08-31 Eli Zaretskii <eliz@gnu.org>
8255
8256 * msdos.c (BUILD_CHAR_GLYPH): New macro.
8257 (IT_menu_display): Use it instead of SET_CHAR_GLYPH to construct
8258 the menu. Allocate larger buffer for `text', to account for
8259 possible ^C characters.
8260
82612008-08-31 Martin Rudalics <rudalics@gmx.at>
8262
8263 * xdisp.c (prepare_menu_bars): Don't call
8264 Vwindow_size_change_functions with arg Qt.
8265
82662008-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
8267
8268 * font.h (font_range):
8269 * fileio.c (report_file_error):
46e722a9
SM
8270 * composite.c (composition_update_it): Yet another int/Lisp_Object
8271 mixup (YAILOM).
aac0c6e3
MR
8272
82732008-08-30 Glenn Morris <rgm@gnu.org>
8274
8275 * data.c (Fmake_variable_frame_local): Doc fix.
8276
8277 * frame.c (Fmodify_frame_parameters): Doc fix.
8278
82792008-08-30 Eli Zaretskii <eliz@gnu.org>
8280
8281 * w32.c (init_user_info): Allocate buf[] with xmalloc using the size
8282 needed by GetTokenInformation.
8283 (w32_system_process_attributes): Check return values of all system
8284 APIs.
8285
8286 * msdos.c (IT_display_cursor): Write "CURSOR ON/OFF" to termscript
8287 only when the state changes.
8288 (IT_update_begin, IT_update_end): Add termscript trace.
8289
8290 * w16select.c (Fw16_set_clipboard_data): Don't encode text if
8291 clipboard is unavailable. Set dst to NULL if it doesn't point to
8292 malloc'ed data.
8293 (Fw16_get_clipboard_data): Initialize htext to NULL, to avoid
8294 passing random values to xfree.
8295
8296 * dispnew.c (init_display): Set `tty's association in frame's
b8ff72fa 8297 parameters alist to the name of the terminal device, if that is known.
aac0c6e3
MR
8298
82992008-08-29 Jason Rumney <jasonr@gnu.org>
8300
8301 * w32uniscribe.c (uniscribe_check_otf): Don't fallback on DFLT script.
8302
83032008-08-29 Eli Zaretskii <eliz@gnu.org>
8304
8305 * composite.c (fill_gstring_body): Avoid compiler warnings.
8306
8307 * font.c (font_fill_lglyph_metrics): Use EMACS_INT in
8308 LGLYPH_SET_CODE to avoid compiler warnings.
8309
2ae37cf0 8310 * makefile.w32-in ($(BLD)/w32uniscribe.$(O)): Depend on composite.h.
aac0c6e3
MR
8311
8312 * composite.h (LGLYPH_SET_CODE): Cast `val' to EMACS_INT.
8313
8314 * w32uniscribe.c (uniscribe_shape): Shut up compiler warning in
8315 LGLYPH_SET_CODE.
8316
83172008-08-29 Kenichi Handa <handa@m17n.org>
8318
8319 * fileio.c (report_file_error): Don't downcase the first character
8320 of errstring if it is still unibyte.
8321
83222008-08-29 Kenichi Handa <handa@m17n.org>
8323
8324 These changes are to re-implement the automatic composition so
8325 that it doesn't use text properties.
8326
8327 * Makefile.in (ftfont.o): Depend on composite.h.
8328 (composite.o): Depend dispextern.h, font.h, frame, and window.h.
8329
8330 * character.h (Vunicode_category_table): Extern it.
8331
8332 * character.c (Vunicode_category_table): New variable.
8333 (syms_of_character): DEFVAR_LISP Vunicode_category_table.
8334
8335 * chartab.c (optimize_sub_char_table): Perform more greedy
8336 optimization.
8337
b8ff72fa
SM
8338 * composite.h (enum composition_method):
8339 Delete COMPOSITION_WITH_GLYPH_STRING.
aac0c6e3
MR
8340 (COMPOSITION_METHOD): Don't check COMPOSITION_WITH_GLYPH_STRING.
8341 (Vcomposition_function_table): Extern it.
8342 (LGSTRING_XXX, LGLYPH_XXX): Macros moved from font.h.
8343 (composition_gstring_put_cache, composition_gstring_from_id)
8344 (composition_gstring_p, composition_gstring_width)
8345 (composition_compute_stop_pos, composition_reseat_it)
8346 (composition_update_it, composition_adjust_point): Extern them.
8347 (Fcomposition_get_gstring): EXFUN it.
8348
d66c0241 8349 * composite.c: Include window.h, frame.h, dispextern.h, font.h.
aac0c6e3
MR
8350 (Vcomposition_function_table)
8351 (get_composition_id): Don't handle COMPOSITION_WITH_GLYPH_STRING.
b8ff72fa
SM
8352 (gstring_hash_table, gstring_work, gstring_work_headers):
8353 New variables.
aac0c6e3
MR
8354 (gstring_lookup_cache, composition_gstring_put_cache)
8355 (composition_gstring_from_id, composition_gstring_p)
8356 (composition_gstring_width, fill_gstring_header)
8357 (fill_gstring_body, autocmp_chars, composition_compute_stop_pos)
8358 (composition_reseat_it, composition_update_it)
b8ff72fa 8359 (composition_adjust_point, Fcomposition_get_gstring): New functions.
aac0c6e3
MR
8360 (syms_of_composite): Initialize gstring_hash_table, gstrint_work,
8361 and gstring_work_headers. DEFVAR_LISP composition-function-table.
8362 Defsubr compostion_get_gstring.
8363
8364 * dispextern.h (struct glyph): New union u.cmp. Delete the member
8365 cmp_id.
8366 (struct glyph_string): Delete the member gidx. New members
8367 cmp_id, cmp_from, and cmp_to.
8368 (enum it_method): Delete GET_FROM_COMPOSITION.
8369 (struct composition_it): New struct.
8370 (struct it): New member cmp_it, and iterator_stack_entry.cmp_it.
8371 Delete c, len, cmp_id, cmp_len in u.comp.
8372
8373 * font.h (enum lgstring_indices): Delete it.
b8ff72fa 8374 (LGSTRING_XXX, LGLYPH_XXX): Move these macros to composite.h.
aac0c6e3 8375 (enum lglyph_indices): Likewise.
b8ff72fa 8376 (font_range): Adjust extern.
aac0c6e3
MR
8377 (font_fill_lglyph_metrics): Extern it.
8378
8379 * font.c (QCf): New variable.
8380 (check_gstring): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
8381 (font_prepare_composition): Delete this function.
8382 (font_range): Type and arguments changed.
8383 (Ffont_make_gstring, Ffont_fill_gstring): Delete them.
8384 (font_fill_lglyph_metrics): New function.
b8ff72fa 8385 (Ffont_shape_text): Rename to Ffont_shape_gstring and change arguments.
aac0c6e3 8386 (syms_of_font): DEFSYM QCf. Delete defsubr for
b8ff72fa
SM
8387 Sfont_make_gstring, Sfont_fill_gstring, Sfont_shape_text.
8388 Defsubr Sfont_shape_gstring.
aac0c6e3
MR
8389
8390 * fontset.h (font_for_char): Extern it.
8391
8392 * fontset.c (font_for_char): New function.
8393
8394 * ftfont.c: Include composite.h.
8395 (ftfont_resolve_generic_family): Add langset "en" to pattern.
b8ff72fa 8396 (ftfont_shape_by_flt): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
aac0c6e3
MR
8397
8398 * indent.c: Include composite.h and dispextern.h.
8399 (check_composition): Delete this function.
8400 (scan_for_column): Handle composition by
8401 composition_compute_stop_pos, composition_reseat_it, and
8402 composition_update_it.
8403 (compute_motion): Likewise.
8404 (Fvertical_motion): Fix checking of composition.
8405
8406 * keyboard.c (adjust_point_for_property): Check composition by
8407 composition_adjust_point.
8408
b8ff72fa 8409 * nsterm.m (ns_draw_glyph_string): Adjust for the change of
aac0c6e3
MR
8410 struct glyph_string.
8411
b8ff72fa
SM
8412 * term.c (encode_terminal_code): Adjust for the change of struct glyph.
8413 (append_composite_glyph): Adjust for the change of struct it and
aac0c6e3
MR
8414 struct glyph.
8415 (produce_composite_glyph): Likewise.
8416
b8ff72fa
SM
8417 * w32term.c (x_draw_composite_glyph_string_foreground):
8418 Adjust for the change of struct glyph_string.
aac0c6e3
MR
8419 (x_draw_glyph_string): Likewise.
8420
8421 * w32uniscribe.c (struct uniscribe_font_info): Include composite.h.
8422 (uniscribe_shape): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
8423
8424 * xdisp.c: Include font.h.
8425 (it_props): Delete the entry for Qauto_composed.
8426 (init_iterator): Initialize it->cmp_it.id to -1.
8427 (compute_stop_pos): Call composition_compute_stop_pos.
b8ff72fa 8428 (face_before_or_after_it_pos): Adjust for the change of struct it.
aac0c6e3
MR
8429 (handle_auto_composed_prop): Delete it.
8430 (handle_composition_prop): Handle only static composition.
8431 (next_overlay_string): Remove it->method == GET_FROM_COMPOSITION
8432 from xassert. Initialize it->cmp_it.stop_pos.
b8ff72fa 8433 (push_it): Adjust for the change of struct it.
aac0c6e3
MR
8434 (pop_it): Likewise.
8435 (get_next_element): Delete next_element_from_composition.
8436 (CHAR_COMPOSED_P): New macro.
8437 (get_next_display_element): For automatic composition, get a face
8438 from the font in the glyph-string.
8439 (set_iterator_to_next): For GET_FROM_BUFFER and GET_FROM_STRING,
b8ff72fa 8440 check composition by it->cmp_it.id. Delete GET_FROM_COMPOSITION case.
aac0c6e3
MR
8441 (next_element_from_string): Check if the character at the current
8442 position is composed by CHAR_COMPOSED_P.
8443 (next_element_from_buffer): Likewise.
d66c0241
JB
8444 (next_element_from_composition): Adjust for the change of struct it.
8445 Update it->cmp_it.
b8ff72fa
SM
8446 (dump_glyph): Adjust for the change of struct glyph.
8447 (fill_composite_glyph_string): Adjust for the change of struct
aac0c6e3
MR
8448 it and struct glyph. Don't handle automatic composition here.
8449 (fill_gstring_glyph_string): New function.
8450 (x_get_glyph_overhangs): Handle automatic composition.
b8ff72fa 8451 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the change of struct glyph.
aac0c6e3
MR
8452 (BUILD_GSTRING_GLYPH_STRING): New macro.
8453 (BUILD_GLYPH_STRINGS): Call BUILD_GSTRING_GLYPH_STRING for
8454 automatic composition.
b8ff72fa 8455 (append_composite_glyph): Adjust for the change of struct it and
aac0c6e3 8456 struct glyph.
b8ff72fa 8457 (x_produce_glyphs): Adjust for the change of struct it.
aac0c6e3 8458
b8ff72fa 8459 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
aac0c6e3
MR
8460 the change of struct glyph_string.
8461 (x_draw_glyph_string): Likewise.
8462
84632008-08-29 Glenn Morris <rgm@gnu.org>
8464
8465 * buffer.c (word-wrap): Doc fix.
8466 * xdisp.c (truncate-partial-width-windows): Doc fix.
8467 Increase default to 50.
8468
84692008-08-29 Chong Yidong <cyd@stupidchicken.com>
8470
8471 * xdisp.c (update_tool_bar_unwind): New function.
8472 (update_tool_bar): Temporarily set selected frame before building
8473 tool-bar items.
8474
84752008-08-28 Michael Albinus <michael.albinus@gmx.de>
8476
8477 * dbusbind.c (XD_ERROR, XD_DEBUG_MESSAGE): Use strncpy and
8478 snprintf, respectively.
8479 (xd_append_arg): Convert strings with Fstring_make_unibyte.
8480
84812008-08-28 Chong Yidong <cyd@stupidchicken.com>
8482
8483 * Makefile.in: Revert (undocumented) 2008-08-20 change adding
8484 LDFLAGS to GNUstep CC invocation.
8485
84862008-08-27 Chong Yidong <cyd@stupidchicken.com>
8487
8488 * indent.c (Fvertical_motion): Revert last change. Handle the
8489 general case where we are moving forward, and PT spans multiple
8490 screen lines.
8491
8492 * eval.c (find_handler_clause): Temporarily increase
8493 max-lisp-eval-depth while printing the backtrace buffer, to
8494 guarantee that help-mode code can run.
8495
84962008-08-27 Eli Zaretskii <eliz@gnu.org>
8497
8498 * msdos.c (Fmsdos_remember_default_colors): Don't reverse frame
8499 colors under -rv.
8500 (IT_set_frame_parameters): Don't swap foreground and background
8501 colors if `(reverse . t)' is present in the frame properties.
8502 (internal_terminal_init): Call init_frame_faces only for the
8503 initial frame.
8504
85052008-08-27 Andreas Schwab <schwab@suse.de>
8506
8507 * dired.c (Ffile_attributes): Avoid compiler warning in bitshift.
8508
85092008-08-27 Andreas Schwab <schwab@suse.de>
8510
8511 * search.c (search_buffer): Set char_base to zero only at the end.
8512
85132008-08-27 Kenichi Handa <handa@m17n.org>
8514
b8ff72fa 8515 * fileio.c (report_file_error): Fix handling of multibyte error string.
aac0c6e3
MR
8516
85172008-08-27 Andreas Seltenreich <seltenreich@gmx.de>
8518
8519 * xterm.c (x_term_init): Temporarily hide the partially
8520 initialized terminal while calling vendor-specific-keysyms.
8521
85222008-08-26 Eli Zaretskii <eliz@gnu.org>
8523
8524 * msdos.c (internal_terminal_init): Most initializations done only
8525 once, especially initial_screen_colors[] and termscript open.
8526
85272008-08-26 Chong Yidong <cyd@stupidchicken.com>
8528
8529 * eval.c (Fcondition_case): Doc fix.
8530
8531 * widgetprv.h (EmacsFramePart): Change font member to the new font
8532 struct.
8533
8534 * widget.c: Include character.h and font.h for XSETFONT.
8535 (setup_frame_gcs): Compute X font id from font struct, just once.
8536
85372008-08-26 Eli Zaretskii <eliz@gnu.org>
8538
8539 * term.c (get_named_tty): Fix last change.
8540
85412008-08-26 Chong Yidong <cyd@stupidchicken.com>
8542
8543 * indent.c (Fvertical_motion): If moving forward starting from a
b8ff72fa 8544 multi-line string, move the iterator to the last line of that string.
aac0c6e3
MR
8545
85462008-08-25 Eli Zaretskii <eliz@gnu.org>
8547
8548 * frame.c (do_switch_frame): Mark previously displayed frame as
8549 obscured for FRAME_MSDOS_P frames as well.
8550
85512008-08-24 Eli Zaretskii <eliz@gnu.org>
8552
8553 * frame.c (make_terminal_frame): Initialize f->terminal,
8554 f->terminal->reference_count, and scroll bars on MS-DOS as well.
8555 Set the top frame to newly created frame.
8556 (Fmake_terminal_frame): Reuse the_only_display_info.
8557
8558 * vm-limit.c (get_lim_data) [MSDOS]: Use alternative methods of
8559 estimating available memory.
8560
b97439ce 85612008-08-23 David Reitter <david.reitter@gmail.com>
aac0c6e3
MR
8562
8563 * nsterm.m (ns_draw_window_cursor): Don't call
8564 NSDisableScreenUpdates and NSEnableScreenUpdates on
8565 non-NS_IMPL_COCOA systems.
8566
85672008-08-23 Andreas Schwab <schwab@suse.de>
8568
8569 * process.c (procfs_system_process_attributes): Fix use of
8570 uninitialized variables.
8571
85722008-08-23 Eli Zaretskii <eliz@gnu.org>
8573
8574 * emacs.c (main) [MSDOS]: Call syms_of_xmenu.
8575
8576 * dispnew.c (init_display): Remove MS-DOS specific conditions for
8577 calling tty-set-up-initial-frame-faces.
8578
b8ff72fa
SM
8579 * xmenu.c (Fx_popup_dialog, Fx_popup_menu, xmenu_show):
8580 Allow MSDOS frames along with X frames.
aac0c6e3
MR
8581
8582 * termhooks.h (TERMINAL_ACTIVE_P): Handle output_msdos_raw in
8583 addition to output_termcap.
8584
8585 * xdisp.c (redisplay_internal) [MSDOS]: Don't call set_tty_color_mode.
8586
8587 * termchar.h (FRAME_TTY): Support output_msdos_raw.
8588 (struct tty_display_info) [MSDOS]: Add fields related to mouse
8589 highlight.
8590
8591 * process.c [!subprocesses]: Define QCname.
8592 (syms_of_process): Intern and staticpro it.
8593
8594 * w16select.c (Fw16_set_clipboard_data, Fw16_get_clipboard_data):
b8ff72fa
SM
8595 Adjust for changes in encoding/decoding routines.
8596 Use encode_coding_object and decode_coding_object instead of
aac0c6e3
MR
8597 encode_coding and decode_coding.
8598
b8ff72fa 8599 * sysdep.c (init_sys_modes): Call dos_ttraw with tty_out as argument.
aac0c6e3
MR
8600
8601 * dosfns.c: Include frame.h before termhooks.h.
8602 (dos_cleanup): Use CURTTY ()->termscript instead of a global
8603 variable termscript.
8604
8605 * s/msdos.h (USER_FULL_NAME): Define.
8606 (SYSTEM_PURESIZE_EXTRA): Bump up to 100K.
8607
8608 * editfns.c (USER_FULL_NAME): Define to pw->pw_gecos if undefined.
8609 (Fuser_full_name): Use USER_FULL_NAME instead of a literal
8610 pw->pw_gecos.
8611
8612 * keyboard.c (handle_interrupt) [MSDOS]: Call cursor_to with
8613 SELECTED_FRAME as additional (1st) argument.
8614 (tty_read_avail_input): Handle output_msdos_raw in
8615 addition to output_termcap.
8616
8617 * msdos.c: Include frame.h before termhooks.h.
8618 (mouse_on, mouse_off, mouse_moveto, mouse_init)
8619 (msdos_set_cursor_shape, IT_set_face, IT_write_glyphs)
8620 (show_mouse_face, IT_clear_end_of_line, IT_clear_screen)
8621 (IT_clear_to_end, IT_cursor_to, IT_display_cursor, IT_cmgoto)
8622 (IT_set_terminal_modes, IT_reset_terminal_modes)
8623 (IT_set_frame_parameters): Use tty->termscript instead of a global
8624 variable termscript.
8625 (IT_write_glyphs): Use tty->terminal->terminal_coding instead of a
8626 global variable terminal_coding. Don't refer to
8627 Vnonascii_translation_table.
8628 (internal_terminal_init): Set Vwindow_system in current_kboard.
8629 Don't use TTY_CHAR_INS_DEL_OK. Set Vinitial_window_system.
8630 Announce date and time of session start, if termscript is open.
8631 Don't zero out the_only_display_info (it is done in
b8ff72fa
SM
8632 term.c:init_tty). Open termscript only of not already open.
8633 Log "SCREEN SAVED" here, instead of IT_set_terminal_modes. Init mouse
aac0c6e3
MR
8634 here instead of dos_ttraw. Don't initialize display if this is an
8635 initial tty. Don't set FRAME_FONT.
8636 (Vwindow_system_version): Bump to 23.
8637 (dos_ttraw): Accept a TTY argument; all callers fixed. If mouse
8638 is available, set up mouse_position_hook.
8639 (dos_ttraw, IT_set_terminal_modes): If called with initial
8640 terminal, do nothing.
8641 (IT_set_frame_parameters): Handle the Qtty_type frame
8642 parameter by calling internal_terminal_init.
8643 (dos_set_window_size, show_mouse_face)
8644 (clear_mouse_face, IT_note_mode_line_highlight)
8645 (IT_note_mouse_highlight, IT_update_begin, IT_frame_up_to_date)
8646 (dos_rawgetc): Use tty_display_info instead of x_display_info.
8647 (initialize_msdos_display): New function.
8648 (IT_cursor_to, IT_clear_to_end, IT_clear_screen)
8649 (IT_clear_end_of_line, IT_insert_glyphs, IT_write_glyphs)
8650 (IT_delete_glyphs, IT_ring_bell, IT_reset_terminal_modes)
8651 (IT_set_terminal_modes, IT_set_terminal_window, IT_update_begin):
b8ff72fa 8652 Accept additional argument: a pointer to a frame. Update all callers.
aac0c6e3
MR
8653 (request_sigio, unrequest_sigio): Don't define, now defined on
8654 sysdep.c.
8655 (IT_write_glyphs): Rewrite to use encode_terminal_code.
8656
8657 * term.c [MSDOS]: Include msdos.h.
8658 (init_tty) [MSDOS]: Reuse most of WINDOWSNT branch. Change cpp
8659 conditional to DOS_NT. Allow only one call to this function in a
8660 session. Don't allocate a new struct tty_display_info; instead,
8661 reuse the_only_display_info. Call get_tty_size to get screen
8662 dimensions. Call init_baud_rate to set bad_rate.
8663 (dissociate_if_controlling_tty) [MSDOS]: Ifdef away function body.
8664 (Fsuspend_tty) [MSDOS]: Don't close input and output.
b8ff72fa 8665 (Fresume_tty) [MSDOS]: Don't reopen the TTY; instead, use stdin/stdout.
aac0c6e3
MR
8666 (get_tty_terminal, get_named_tty, Ftty_type)
8667 (Fcontrolling_tty_p): Handle output_msdos_raw in addition to
8668 output_termcap.
b8ff72fa
SM
8669 (Fresume_tty, Fsuspend_tty, init_tty, delete_tty):
8670 Call add_keyboard_wait_descriptor and delete_keyboard_wait_descriptor
2ae37cf0 8671 only when subprocesses are supported.
aac0c6e3
MR
8672
8673 * frame.c (make_terminal_frame) [MSDOS]: Adjust initialization of
8674 f->output_data.x.
8675 (Fmake_terminal_frame) [MSDOS]: Don't allow creation of new
8676 terminal devices.
8677
5582fbc7 8678 * msdos.h: Remove definition of struct x_display_info and struct
aac0c6e3
MR
8679 x_output.
8680 (FRAME_FONT): Use output_data.tty.
8681 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL): Don't define.
b8ff72fa
SM
8682 (struct x_display_info): Rename from display_info. Update all users in
8683 msdos.c.
aac0c6e3 8684 (struct x_output): Remove background_pixel and foreground_pixel.
b8ff72fa 8685 (the_only_display_info): Rename from the_only_x_display.
aac0c6e3
MR
8686 (dos_ttraw): Update prototype.
8687
8688 * Makefile.in (MSDOS_OBJ): Add xmenu.o.
8689 (SOME_MACHINE_LISP): Add ../lisp/term/pc-win.elc.
8690
86912008-08-23 Jason Rumney <jasonr@gnu.org>
8692
8693 * image.c (enum tiff_keyword_index, tiff_format): Add :index keyword.
8694 (fn_TIFFSetDirectory): New library function used.
8695 (init_tiff_functions) [HAVE_NTGUI]: Initialize it.
8696 (tiff_load): Use :index to select among multiple images. Set count
8697 property when multiple images exist.
8698 (gif_format): Use :index, not :image.
8699
87002008-08-23 Chong Yidong <cyd@stupidchicken.com>
8701
8702 * xdisp.c (try_scrolling): Check INT_MAX instead of
8703 MOST_POSITIVE_FIXNUM for maximum integer value. Include limits.h
8704 to obtain INT_MAX.
8705
87062008-08-21 İsmail Dönmez <ismail@namtrac.org> (tiny change)
8707
8708 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase on GTK+.
8709
87102008-08-21 Christian Faulhammer <opfer@gentoo.org> (tiny change)
8711
8712 * Makefile.in (temacs${EXEEXT}): On GNUstep, link to appropriate
8713 GNUstep library location.
8714
87152008-08-21 Chong Yidong <cyd@stupidchicken.com>
8716
8717 * xfaces.c (x_update_menu_appearance): Check validity of menu font
8718 before using it.
8719
8720 * puresize.h (BASE_PURESIZE): Increase to 1250000.
8721
87222008-08-20 Adrian Robert <Adrian.B.Robert@gmail.com>
8723
8724 * nsfns.m (ns-read-file-name): Add casts to avoid warning.
8725 (ns-convert-utf8-nfd-to-nfc): Warn if cannot execute correctly.
8726 * nsfont.m (nsfont_draw): Compare indexed colors to 0, not nil.
8727 * nsterm.h (EmacsView-unlockFocusNeedsFlush:): Add declaration.
8728 (EmacsApp-cursor_blink_handler): Remove declaration.
8729 * nsterm.m (ns_draw_glyph_string): Update first conditional body to
8730 match 01 Feb 2008 changes in xterm.c.
8731 (ns_read_socket): Add cast to avoid warning.
8732 (EmacsApp-application:openFiles:): Don't call replyToOpenOrPrint: on
8733 GNUstep.
8734
87352008-08-20 Chong Yidong <cyd@stupidchicken.com>
8736
8737 * xselect.c (x_get_foreign_selection): Return nil if desired
8738 selection could not be obtained, instead of signalling an error.
8739
87402008-08-20 David Reitter <david.reitter@gmail.com>
8741
8742 * nsfns.m (ns_lisp_to_cursor_type): Replace with generic xfns.c.
8743 * nsterm.m: Remove ns-specific code for cursor blinking.
8744 (ns_draw_window_cursor): Clear cursor properly rather than
8745 redrawing the area. Respect width of bar cursors.
8746 These changes enable the use of generic blink-cursor-mode and
8747 generic cursor types in NS and support smooth cursor movements (do
8748 not blink off after command).
8749 * xdisp.c (get_phys_cursor_geometry): Redraw wider rectangle on
8750 Nextstep, too.
8751
87522008-08-19 Kenichi Handa <handa@m17n.org>
8753
8754 * font.c (Vfont_log_deferred): New variable.
8755 (font_add_log): Check Vfont_log_deferred.
8756 (font_deferred_log): New function.
8757
8758 * font.h (font_deferred_log): Extern it.
8759
8760 * fontset.c (reorder_font_vector): Use encoding charset of fonts
8761 for sorting.
8762 (face_for_char): Use deferred log.
8763
87642008-08-18 Kenichi Handa <handa@m17n.org>
8765
8766 * fontset.c (face_for_char): Add font log.
8767
8768 * font.c (font_add_log): Add the font properties :script, :lang,
8769 and :otf in the log.
8770
87712008-08-17 Chong Yidong <cyd@stupidchicken.com>
8772
8773 * xdisp.c: Remove dead code.
8774 (handle_invisible_prop, next_overlay_string): Defer call to
8775 setup_for_ellipsis.
8776 (handle_stop, set_iterator_to_next): Call setup_for_ellipsis.
8777
87782008-08-15 Chong Yidong <cyd@stupidchicken.com>
8779
8780 * xfaces.c (lookup_derived_face): Properly handle possible zero
8781 return value of get_lface_attributes.
8782 (merge_faces): Don't tell lookup_derived_face to signal an error
8783 if face is not found.
8784
8785 * dired.c (Fdirectory_files): Doc fix.
8786
8787 * process.c (make_process): Initialize kill_without_query struct
8788 member.
8789
87902008-08-15 Eli Zaretskii <eliz@gnu.org>
8791
8792 * w32.c (w32_system_process_attributes) [_MSC_VER < 1300]:
8793 Alternative calculation of totphys for Visual Studio 6.
8794
8795 * w32fns.c [_MSC_VER && _MSC_VER < 1300]: Declare HMONITOR.
8796
8797 * w32.c (_MEMORY_STATUS_EX, MEMORY_STATUS_EX, LPMEMORY_STATUS_EX):
8798 Rename from _MEMORYSTATUSEX, MEMORYSTATUSEX, LPMEMORYSTATUSEX.
8799 All users changed.
8800 (stat): Only root directory passed to GetDriveType. Allow RAM
8801 disk as well as local fixed disk when w32-get-true-file-attributes
8802 is set to `local'.
8803 (CopySid_Proc, EqualSid_Proc, GetLengthSid_Proc): New typedefs.
8804 (equal_sid, get_length_sid, copy_sid): New wrapper functions.
8805 (w32_cached_id, w32_add_to_cache): New functions.
8806 (get_name_and_id): Look account names in the cache before calling
8807 lookup_account_sid.
8808 (g_b_init_get_length_sid, g_b_init_equal_sid, g_b_init_copy_sid):
8809 New initialization flags.
8810 (globals_of_w32): Initialize them to zero.
8811 (w32_system_process_attributes): Use w32_cached_id and
8812 w32_add_to_cache.
8813
88142008-08-14 Lawrence Mitchell <wence@gmx.li>
8815
8816 * lread.c (Fread_char, Fread_char_exclusive): If no character
8817 event is read before timeout is reached, return nil, rather than
8818 converting to a number.
8819
88202008-08-14 Chong Yidong <cyd@stupidchicken.com>
8821
8822 * fns.c (use_dialog_box): Doc fix.
8823
8824 * s/darwin.h: Undefine HAVE_RES_INIT, which appears to be harmful
8825 on OS X.
8826
88272008-08-13 Chong Yidong <cyd@stupidchicken.com>
8828
8829 * frame.c (Qns_parse_geometry): New var.
8830 (Fx_parse_geometry): For HAVE_NS, call ns-parse-geometry.
8831
88322008-08-11 Chong Yidong <cyd@stupidchicken.com>
8833
8834 * xdisp.c (x_produce_glyphs): Handle the case when font has no
8835 space character in calculating tabs.
8836
88372008-08-11 Dan Nicolaescu <dann@ics.uci.edu>
8838
8839 * Makefile.in (bootstrap-emacs): Use ln -f in the CANNOT_DUMP case.
8840
88412008-08-10 Glenn Morris <rgm@gnu.org>
8842
8843 * process.c (procfs_system_process_attributes): Use EMACS_INTs to
8844 silence gcc "limited range of data type" warnings in some
8845 make_fixnum_or_float calls.
8846
88472008-08-09 Eli Zaretskii <eliz@gnu.org>
8848
8849 * w32.c (w32_system_process_attributes): If the process does not
8850 exist, return nil.
8851
8852 * w32.c: Include thelp32.h, psapi.h and coding.h.
8853 (_MEMORYSTATUSEX, _PROCESS_MEMORY_COUNTERS_EX): New struct
8854 declarations.
8855 (CreateToolhelp32Snapshot_Proc, Process32First_Proc)
8856 (Process32Next_Proc): New typedefs.
8857 (g_b_init_create_toolhelp32_snapshot, g_b_init_process32_first)
8858 (g_b_init_process32_next, g_b_init_open_thread_token)
8859 (g_b_init_impersonate_self, g_b_init_revert_to_self)
8860 (g_b_init_get_process_memory_info, g_b_init_global_memory_status)
8861 (g_b_init_get_process_working_set_size)
8862 (g_b_init_global_memory_status_ex): New static variables.
8863 (globals_of_w32): Initialize them.
8864 (create_toolhelp32_snapshot, process32_first, process32_next)
8865 (open_thread_token, impersonate_self, revert_to_self)
8866 (get_process_memory_info, get_process_working_set_size)
8867 (global_memory_status, global_memory_status_ex): New wrapper
8868 functions.
8869 (w32_list_system_processes, w32_system_process_attributes)
8870 (enable_privilege, restore_privilege, ltime, process_times):
8871 New functions.
8872 (convert_time_raw): New function.
8873 (convert_time): Remove conversion of FILETIME into time in 100
8874 nsec units, call convert_time_raw instead.
8875
8876 * process.h (w32_list_system_processes, w32_system_process_attributes):
8877 Add prototypes.
8878 (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess, Qttname)
8879 (Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime, Qcutime)
8880 (Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs, Quser, Qgroup)
8881 (Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime): Add extern declarations.
8882
8883 * process.c (Fsystem_process_attributes): Doc fix.
8884
88852008-08-08 Chong Yidong <cyd@stupidchicken.com>
8886
8887 * xdisp.c (move_it_to): When stopping at a charpos, check if that's
8888 a continued multi-char glyph; if so, advance to the actual glyph.
8889
88902008-08-07 Dan Nicolaescu <dann@ics.uci.edu>
8891
8892 * s/darwin.h (OTHER_FILES): Do not define here, defined in config.in.
8893
8894 * Makefile.in (ALL_OBJC_CFLAGS): New variable.
8895 (.m.o): Use it.
8896 * config.in: Regenerate.
8897
88982008-08-07 Chong Yidong <cyd@stupidchicken.com>
8899
8900 * xdisp.c (redisplay_window): Revert last change.
8901 (try_window): Check bottom scroll margin too.
8902
89032008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
8904
8905 * config.in: Regenerate.
8906
8907 * Makefile.in (emacs): Remove ifndef NS conditional for 'emacs
8908 -list-load-path-shadows'.
8909 (nsgui.h): Reduce number of things depending on it.
8910
89112008-08-06 Chong Yidong <cyd@stupidchicken.com>
8912
8913 * xdisp.c (try_scrolling): Use iterator to find the scroll margin,
8914 instead of window-end which does the wrong thing at eob.
8915 (try_cursor_movement): Minor optimization.
8916 (redisplay_window): If scroll margin is defined, don't assume
8917 window doesn't need scrolling.
8918
89192008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
8920
8921 * config.in: Regenerate.
8922
8923 * Makefile.in: Move nsXXX.m dependencies into big alphabetical list.
8924 (mostlyclean): Don't delete *.d under NS.
8925
8926 * nsterm.h (NS_HAVE_INTEGER): Change to NS_HAVE_NSINTEGER.
8927
89282008-08-06 Kenichi Handa <handa@m17n.org>
8929
8930 * xfont.c (xfont_list_family): Return a list of symbols, not strings.
8931
89322008-08-06 Andreas Schwab <schwab@suse.de>
8933
8934 * config.in: Regenerate.
8935
89362008-08-05 Chong Yidong <cyd@stupidchicken.com>
8937
8938 * xdisp.c (redisplay_window): Don't enforce scroll-margin when
8939 forcing a window start.
8940
8941 * fileio.c (Vauto_save_list_file_name): Move here from file.el.
8942 (auto_save_1): Update modtime when auto-save-list-file-name is on.
8943
89442008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
8945
8946 * emacs.c (main): Under NS, set working dir to HOME when get a "psn"
8947 argument.
8948
89492008-08-05 Juanma Barranquero <lekktu@gmail.com>
8950
8951 * buffer.c (syms_of_buffer) <scroll-up-aggressively>:
8952 <scroll-down-aggressively, before-change-functions>:
8953 <after-change-functions>: Reflow docstrings.
8954
89552008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
4e2af782 8956 Ken Raeburn <raeburn@gnu.org>
aac0c6e3
MR
8957
8958 Dock menu customization, based on a patch by Ken Raeburn, plus some
8959 other fixes.
8960 * nsmenu.m (dockMenu): New variable.
8961 (EmacsDialog -clicked:): Fix mistake in change of 2008-07-17.
8962
8963 * nsterm.h (dockMenu): Declare.
8964
8965 * nsterm.m (KEY_NS_NEW_FRAME): New definition.
8966 (ns_term_init): Initialize dockMenu.
8967 (EmacsApp -newFrame:, -applicationDockMenu:): New methods.
8968 (EmacsView -windowShouldClose:): Don't behave specially if <= 1 frame
8969 left.
8970
8971 * lisp.h (LSB_TAG): Use on DARWIN_OS, not NS_IMPL_COCOA.
8972
89732008-08-04 Chong Yidong <cyd@stupidchicken.com>
8974
8975 * nsterm.h: Test directly for NS_HAVE_INTEGER before defining it.
8976
8977 * config.in: Regenerate.
8978
89792008-08-04 Seiji Zenitani <zenitani@mac.com>
8980
8981 * nsfns.m (x-create-frame): Set the frame parameter alpha to nil.
8982
89832008-08-04 Chong Yidong <cyd@stupidchicken.com>
8984
8985 * nsterm.h (find_and_call_menu_selection): Fix prototype.
8986
89872008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
8988
8989 * emacs.c (main: unexec_init_emacs_zone): Call if on DARWIN_OS.
8990
8991 * keyboard.h: Comment an #endif.
8992
8993 * lisp.h (have_menus_p): Adjust comment.
8994
8995 * menu.c (find_and_return_menu_selection): Fix comparison with
8996 client_data.
8997
8998 * nsmenu.m (popup_activated_flag): New variable.
8999 (popup_activated): New function.
9000 (menu-or-popup-active-p): New exported lisp definition.
9001 (ns_popup_menu): Set popup_activated_flag. Call discard_menu_items()
9002 when popup done.
9003 (ns_popup_dialog): Set popup_activated_flag.
9004
9005 * nsterm.m (EmacsView -conversationIdentifier): Use NSInteger
9006 version for GNUstep (handled by conditional typedef in nsterm.m).
9007 (ns_get_color): Remove special-casing for "darkblue", "dark blue" (now
9008 in rgb.txt).
9009
9010 * process.c (init_process): Use DARWIN_OS, not DARWIN.
9011
9012 * sysselect.h: Conditionalize init_process undef on DARWIN_OS.
9013
9014 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): Do it also under NS.
9015
9016 * xdisp.c (redisplay_internal, note_mouse_highlight): Under NS,
9017 shortcircuit if popup_activated like GTK and X toolkit.
9018
9019 * m/inter386.h: Change DARWIN to DARWIN_OS.
9020
9021 * s/darwin.h: Add #define DARWIN_OS. Get rid of C_SWITCH_SYSTEM def.
9022 Change LIBS_MACGUI to LIBS_NSGUI. Move temacs-conditionalized defs
9023 closer to C_SWITCH_SYSTEM_TEMACS so usage is understood. Expand
9024 comment on NO_SOCK_SIGIO.
9025
90262008-08-03 Chong Yidong <cyd@stupidchicken.com>
9027
9028 * nsterm.m (windowDidResize): Remove stopModal call.
9029
90302008-08-03 Andreas Schwab <schwab@suse.de>
9031
9032 * vm-limit.c (get_lim_data) [HAVE_GETRLIMIT && RLIMIT_AS]: Define.
9033 (check_memory_limits): Don't handle HAVE_GETRLIMIT here.
9034
90352008-08-02 Chong Yidong <cyd@stupidchicken.com>
9036
9037 * vm-limit.c (check_memory_limits): Don't use getrlimit on cygwin.
9038 Don't use uninitialized pointer variable when using getrlimit.
9039
90402008-08-02 Jason Rumney <jasonr@gnu.org>
9041
9042 * w32font.c (compute_metrics): Don't mess with glyph_idx setting here.
9043
90442008-08-02 Eli Zaretskii <eliz@gnu.org>
9045
9046 * alloc.c (NSTATICS): Bump to 0x640.
9047
9048 * s/gnu-linux.h (HAVE_PROCFS, LISTPROC, PROCATTR): New defines.
9049
9050 * lisp.h: Add prototype for directory_files_internal.
9051
9052 * process.c (Fsystem_processes_list, Fsystem_process_attributes):
9053 New functions.
9054 (syms_of_process): Defsubr them. Add initializations for various
9055 Q* symbols used in procfs_system_process_attributes.
9056 (procfs_list_system_processes, procfs_system_process_attributes)
9057 [HAVE_PROCFS]: New functions.
9058 (time_from_jiffies, ltime_from_jiffies, get_up_time, procfs_ttyname)
9059 (procfs_get_total_memory): New functions.
9060
90612008-08-01 Juanma Barranquero <lekktu@gmail.com>
9062
9063 * xfaces.c (Fx_load_color_file): Fix previous change;
9064 it is #ifdef WINDOWSNT, not WINDOWS_NT.
9065
90662008-08-01 Michael Albinus <michael.albinus@gmx.de>
9067
9068 * dbusbind.c (xd_read_message): Handle D-Bus error messages.
9069
90702008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
9071
9072 * nsterm.h (NSInteger, NSUInteger): Add defines for non-Leopard.
9073
90742008-08-01 Chong Yidong <cyd@stupidchicken.com>
9075
9076 * nsfns.m (ns_frame_parm_handlers): Add empty entry for x_set_alpha.
9077
9078 * nsterm.m (EmacsApp -application:openFiles:): GNUstep does not
9079 define NSApplicationDelegateReplySuccess.
9080 (EmacsView -converstationIdentifier): Use long instead of
9081 NSInteger for GNUstep, since it doesn't have NSInteger.
9082
9083 * xmenu.c: Revert last change.
9084
9085 * keyboard.h: Fix last change.
9086
90872008-08-01 Juanma Barranquero <lekktu@gmail.com>
9088
9089 * xfaces.c (x-load-color-file): Use RGB() instead of manually shifting
9090 on Windows.
9091
90922008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
9093
9094 Warning clearing and clean-up in NS port.
9095 * keyboard.h (xmalloc_widget_value, digest_single_submenu):
9096 Add prototypes.
9097 * nsgui.h (FACE_DEFAULT): Remove, unused.
9098 (XGCValues): Change colors to unsigned long.
9099 * nsterm.h (EmacsApp): Add declaration of all methods implemented in
9100 nsterm.m.
9101 (EmacsMenu -addItemWithWidgetValue:): Change to use NSMenuItem class.
9102 (ns_list_fonts): Remove, unused.
9103 (ns_font_to_xlfd, ns_fontname_to_xlfd): Drop prototypes.
9104 * nsfns.m (interpret_services_menu): Use NSMenuItem class.
9105 * nsfont.m (nsfont_open): Fix cast error in glyphs,metrics alloc.
9106 (nsfont_draw): Compare face colors to 0, not nil.
9107 * nsmenu.m (struct widget_value): Drop unneeded declaration.
9108 (EmacsMenu -addItemWithWidgetValue:, -fillWithWidgetValue:)
9109 (-addSubmenuWithTitle:): Use NSMenuItem class.
9110 (ns_popup_menu): Use NO, not NULL, for enabled setting.
9111 * nsterm.m (ns_draw_glyph_string): Don't compare font to ~0.
9112 (ns_clip_to_row): Make gc arg a BOOL.
9113 (ns_draw_fringe_bitmap, ns_draw_window_cursor): Use YES, NO in
9114 ns_clip_to_row() call.
9115 (ns_draw_glyph_string): Drop face comparison to ~0 (no longer
9116 used). Cast FRAME_FONT assignments.
9117 (ns_read_socket): Cast call to EmacsApp-fulfillService:withArg:.
9118 (ns_string_to_lispmod): Change arg to const char.
9119 (ns_term_init): Use NSMenuItem class.
9120 (EmacsApp -openFile:): Move to different section of file.
9121 (EmacsApp -application:openFiles:): Don't return a value, call
9122 -replyToOpenOrPrint:.
9123 (EmacsView -keyDown:): Fix up cast.
9124 (EmacsView -converstationIdentifier): Use NSInteger instead of long.
9125 (EmacsView -menuDown:): Cast tag in call to
9126 find_and_call_menu_selection().
9127 (ns_list_fonts): Remove, unused.
9128 (ns_font_to_xlfd): Make static. Cast result of UTF8String.
9129 (ns_fontname_to_xlfd): Make static.
9130 * w32menu.c (xmalloc_widget_value, digest_single_submenu):
9131 Remove prototypes (now in keyboard.h).
9132 (next_menubar_widget_id): Remove, unused.
9133 * xmenu.c (xmalloc_widget_value, digest_single_submenu):
9134 Remove prototypes (now in keyboard.h).
9135 * xfaces.c (ns_list_fonts, w32_list_fonts): Remove, unused.
9136
91372008-08-01 Dan Nicolaescu <dann@ics.uci.edu>
9138
9139 * Makefile.in (dispnew.o, gtkutil.o, sound.o, atimer.o)
9140 (floatfns.o): Depend on syssignal.h.
9141 (term.o): Depend on syssignal.h, systty.h, and $(INTERVAL_SRC).
9142
9143 * systty.h: Fix previous change that removed BSD_TERMIOS.
9144 Add comments to #ifdefs.
9145
91462008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
9147
9148 * w32fns.c (w32-load-color-file): Remove.
9149 (x-open-connection): Use renamed Fx_load_color_file.
9150 * xfaces.c (x-load-color-file): Add.
9151 * nsterm.m (ns_initialize): Load colors from etc/rgb.txt instead of
9152 Emacs.clr.
9153 (hide_hourglass): BLOCK_INPUT before UNBLOCK.
9154
91552008-07-31 Michael Albinus <michael.albinus@gmx.de>
9156
9157 * dbusbind.c (Fdbus_call_method_asynchronously)
9158 (Fdbus_method_error_internal): New defuns.
9159 (xd_read_message): Handle also reply messages.
9160 (Vdbus_registered_functions_table): Extend docstring.
9161
91622008-07-31 Juanma Barranquero <lekktu@gmail.com>
9163
9164 * keyboard.c (gobble_input): Fix previous change.
9165
91662008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
9167
9168 * bitmaps/README:
9169 * xfns.c:
9170 * termcap.c:
9171 * term.c:
9172 * syswait.h:
9173 * systty.h:
9174 * systime.h:
9175 * syssignal.h:
9176 * sysdep.c:
9177 * process.h:
9178 * process.c:
9179 * print.c:
9180 * ndir.h:
9181 * lread.c:
9182 * keyboard.c:
9183 * getpagesize.h:
9184 * floatfns.c:
9185 * fileio.c:
9186 * emacs.c:
9187 * doc.c:
9188 * dispnew.c:
9189 * dired.c:
9190 * data.c:
9191 * callproc.c:
9192 * buffer.c:
9193 * README:
9194 * Makefile.in:
9195 * s/template.h:
9196 * s/msdos.h:
9197 * m/vax.h: Remove VMS support.
9198 * s/vms.h:
9199 * vlimit.h:
9200 * uaf.h:
9201 * temacs.opt:
9202 * param.h:
9203 * ioctl.h: Remove file.
9204
92052008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
9206
9207 * s/ms-w32.h (MULTI_KBOARD): Remove.
9208 * xterm.c:
9209 * xselect.c:
9210 * xfns.c:
9211 * window.c:
9212 * w32term.c:
9213 * w32fns.c:
9214 * terminal.c:
9215 * termhooks.h:
9216 * term.c:
9217 * sysdep.c:
9218 * keyboard.h:
9219 * keyboard.c:
9220 * frame.h:
9221 * frame.c:
9222 * frame.c: Remove references to MULTI_KBOARD, it is now the default.
9223 * config.in: Regenerate.
9224
92252008-07-30 Jason Rumney <jasonr@gnu.org>
9226
9227 * w32font.h (struct w32font_info): Use unicode version of textmetrics.
9228
9229 * w32font.c (w32font_encode_char): Leave as unicode if in range.
9230 (w32font_open_internal): Get unicode version of textmetrics.
9231 Don't enable or disable glyph indices here.
9232 (w32font_open): Disable use of glyph indices.
9233
9234 * w32uniscribe.c (uniscribe_open): Enable use of glyph indices.
9235
92362008-07-30 Chong Yidong <cyd@stupidchicken.com>
9237
9238 * minibuf.c (Vread_buffer_function): Doc fix.
9239
92402008-07-30 John Paul Wallington <jpw@pobox.com>
9241
9242 * minibuf.c (read_buffer_completion_ignore_case): New var.
9243 (Fread_buffer): Use it.
9244
92452008-07-30 Dan Nicolaescu <dann@ics.uci.edu>
9246
9247 * systty.h (sensemode): Remove empty #if. Remove reference to
9248 BSD_TERMIOS, unused.
9249
9250 * sysdep.c: Remove reference to DGUX.
9251 (closedir): Remove reference to BROKEN_CLOSEDIR, unused.
9252
9253 * config.in: Regenerate.
9254
92552008-07-30 Jason Rumney <jasonr@gnu.org>
9256
9257 * w32uniscribe.c (uniscribe_encode_char): Fix glyph buffer size.
9258
92592008-07-29 Jason Rumney <jasonr@gnu.org>
9260
9261 * w32uniscribe.c (uniscribe_shape): Avoid using context if cache
9262 is populated.
9263 (uniscribe_encode_char): Always use uniscribe.
9264 Avoid using context if cache is populated.
9265
92662008-07-29 Jan Djärv <jan.h.d@swipnet.se>
9267
9268 * xmenu.c (Fx_menu_bar_open_internal): Use activate_item signal to
9269 open menu.
9270
9271 * gtkutil.c (menu_nav_ended): Remove.
9272 (create_menus): Remove signal connect for menu_nav_ended.
9273
92742008-07-28 Chong Yidong <cyd@stupidchicken.com>
9275
9276 * xdisp.c (redisplay_window): Check return value of
9277 compute_window_start_on_continuation_line before forcing a window
9278 start.
9279
92802008-07-28 Jason Rumney <jasonr@gnu.org>
9281
9282 * w32font.c (w32font_text_extents): Use w32_metric_cache consistently.
9283
9284 * w32term.c (w32_enable_unicode_output, cleartype_active):
9285 Remove obsolete display options.
9286 (x_draw_glyph_string_background): Don't use old cleartype_active
9287 workaround.
9288 (w32_initialize): Remove cleartype_active initialization.
9289 (syms_of_w32term): Remove w32_enable_unicode_output initialization.
9290
92912008-07-28 Andreas Schwab <schwab@suse.de>
9292
9293 * lisp.h (init_weak_hash_tables, syms_of_font)
9294 (xd_read_queued_messages, syms_of_dbusbind): Declare.
9295 (remove_hash_entry): Don't declare.
9296 * eval.c (maybe_call_debugger): Make static and move before use.
9297 * gtkutil.c: Include <X11/Xft/Xft.h> if HAVE_XFT.
9298 * xdisp.c: Include "gtkutil.h" if USE_GTK.
9299 * xterm.h (x_set_frame_alpha): Declare.
9300
93012008-07-28 Jan Djärv <jan.h.d@swipnet.se>
9302
9303 * gtkutil.c (menu_nav_ended): Revert change from 2008-07-24.
9304 (create_menus): Connect selection-done to menu_nav_ended.
9305
93062008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
9307
9308 * nsfns.m (x-create-frame): Add copy of parms argument to beginning.
9309 Set Vx_resource_name to a fallback. Replace read of 'buffered'
9310 parameter with read of 'alpha' one.
9311 (Qns_frame_parameter): Remove.
5582fbc7 9312 * nsselect.m (selection-coding-system)
aac0c6e3
MR
9313 (next-selection-coding-system, Vselection_coding_system)
9314 (Vnext_selection_coding_system): Drop.
9315
93162008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
9317
9318 * nsfns.m (do-applescript, do_applescript): Rename to
9319 ns-do-applescript, ns_do_applescript, and move within file.
9320
93212008-07-27 Dan Nicolaescu <dann@ics.uci.edu>
9322
9323 Remove support for Mac Carbon.
9324 * mactoolbox.c:
9325 * macterm.h:
9326 * macterm.c:
9327 * macselect.c:
9328 * macmenu.c:
9329 * macgui.h:
9330 * macfns.c:
9331 * mac.c: Remove file.
9332 * s/darwin.h:
9333 * m/intel386.h:
9334 * xfaces.c:
9335 * xdisp.c:
9336 * window.c:
9337 * tparam.c:
9338 * termhooks.h:
9339 * termcap.c:
9340 * term.c:
9341 * syssignal.h:
9342 * sysselect.h:
9343 * sysdep.c:
9344 * process.c:
9345 * lread.c:
9346 * lisp.h:
9347 * keyboard.c:
9348 * image.c:
9349 * fringe.c:
9350 * frame.h:
9351 * frame.c:
9352 * fontset.c:
9353 * font.h:
9354 * font.c:
9355 * fns.c:
9356 * fileio.c:
9357 * emacs.c:
9358 * dispnew.c:
9359 * dispextern.h:
9360 * config.in:
9361 * atimer.c:
2ae37cf0 9362 * Makefile.in: Remove code for Carbon.
aac0c6e3 9363
f0131492 93642008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
aac0c6e3
MR
9365
9366 * macterm.c (XDrawLine) [USE_MAC_IMAGE_IO]: Remove spurious return.
9367
93682008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9369
9370 * macterm.h (kCGBitmapByteOrder32Host): New define for
9371 non-universal SDKs.
9372
9373 * image.c (mac_create_cg_image_from_image, image_load_image_io)
9374 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
9375
9376 * macterm.c (XDrawLine, XCreatePixmapFromBitmapData)
9377 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
9378
93792008-07-26 David Robinow <drobinow@gmail.com> (tiny change)
9380
9381 * w32inevt.c: Include dispextern.h.
9382
93832008-07-26 Andreas Schwab <schwab@suse.de>
9384
9385 * print.c (print_object): Fix off-by-one in last change.
9386
93872008-07-25 Juanma Barranquero <lekktu@gmail.com>
9388
9389 * term.c (syms_of_term): Don't initialize default_orig_pair,
9390 default_set_foreground and default_set_background on Windows.
9391
93922008-07-25 Jason Rumney <jasonr@gnu.org>
9393
9394 * w32uniscribe.c (uniscribe_shape): Pass NULL for control arg to
9395 ScriptItemize. Clean up return value checking. Remove unused
9396 variables.
9397 (uniscribe_encode_char): Encode non-BMP characters with uniscribe
9398 shaping engine.
9399
9400 * w32font.c (w32font_has_char): Handle the case where we can't
9401 determine the script for a character.
9402
94032008-07-25 Chong Yidong <cyd@stupidchicken.com>
9404
9405 * term.c (syms_of_term): Initialize default_orig_pair,
9406 default_set_foreground, and default_set_background.
9407
9408 * getloadavg.c (nl): Rename to name_list to avoid ncurses.h
9409 clash (bug#86).
9410 (getloadavg): Callers changed.
9411
9412 * image.c (svg_load_image): Fix last change.
9413 (svg_load_image): Use rsvg_handle_get_dimensions to check that
9414 image size is valid. Use g_object_unref instead of deprecated
9415 rsvg_handle_free to free rsvg handle.
9416 (x_from_xcolors): Don't initialize pixmap (silence compiler).
9417
94182008-07-25 Jason Rumney <jasonr@gnu.org>
9419
9420 * w32font.c (w32font_encode_char): Encode characters outside BMP as
9421 surrogates before looking up glyph index.
9422 (w32font_text_extents): Encode as surrogates if falling back to
9423 functions that need UTF-16 wide chars.
9424
9425 * w32uniscribe.c (uniscribe_encode_char): Encode characters outside
9426 BMP as surrogates before looking up glyph index.
9427
94282008-07-25 Chong Yidong <cyd@stupidchicken.com>
9429
9430 * image.c (svg_load_image): Check for failure in return value of
9431 rsvg_handle_get_pixbuf. Free rsvg handle when done.
9432
94332008-07-25 Jason Rumney <jasonr@gnu.org>
9434
9435 * w32font.c (Fx_select_font): Reverse sense of second arg.
9436
94372008-07-24 Stefan Monnier <monnier@iro.umontreal.ca>
9438
9439 * syntax.c (struct lisp_parse_state, char_quoted, inc_bytepos)
9440 (dec_bytepos, find_defun_start): Use EMACS_INT for buffer positions.
9441
9442 * puresize.h (PURESIZE_CHECKING_RATIO): New macro.
9443 (PURESIZE): Use it.
9444
94452008-07-24 Dan Nicolaescu <dann@ics.uci.edu>
9446
9447 * m/amdx86-64.h (HAVE_LIB64_DIR): Consolidate ifdefs.
9448 * m/alpha.h (TEXT_END):
9449 * m/ibmrs6000.h (TEXT_END):
9450 * m/macppc.h (TEXT_END):
9451 * s/darwin.h (TEXT_END):
9452 * s/msdos.h (TEXT_END): Remove, unused.
9453 * s/gnu-linux.h (BSD_PGRPS): Add a comment.
9454 * s/cygwin.h: Remove comment.
9455
9456 * ecrt0.c (NODOT_GLOBAL_START): Remove code, unused.
9457 (DOT_GLOBAL_START): Remove conditional, redundant for CRT0_DUMMIES.
9458 * m/intel386.h (DOT_GLOBAL_START):
9459 * m/vax.h (DOT_GLOBAL_START): Remove, redundant with CRT0_DUMMIES.
9460 (USG): Remove, file not used on USG platforms.
9461
9462 * Makefile.in (HAVE_X11): Remove empty #else.
9463
94642008-07-24 Andreas Schwab <schwab@suse.de>
9465
9466 * fileio.c (Finsert_file_contents): Properly adjust undo list
9467 after format conversion.
9468
94692008-07-24 Jan Djärv <jan.h.d@swipnet.se>
9470
9471 * gtkutil.c (xg_get_font_name): Cast w to GTK_FONT_SELECTION_DIALOG.
9472 (menu_nav_ended): Remove.
9473 (create_menus): Remove signal connect for menu_nav_ended.
9474 (xg_update_menubar): Also take deactivate_cb as parameter, pass it to
9475 create_menus.
9476 (xg_modify_menubar_widgets): Pass deactivate_cb to xg_update_menubar.
9477
94782008-07-23 Jason Rumney <jasonr@gnu.org>
9479
9480 * w32font.c (w32_enumfont_pattern_entity): Return height consistent
9481 with opened font.
9482 (w32font_open): Set font type to gdi.
9483
9484 * w32uniscribe.c (uniscribe_open): Set font type to uniscribe.
9485
94862008-07-23 Dan Nicolaescu <dann@ics.uci.edu>
9487
9488 * s/usg5-4.h (ADDR_CORRECT): Remove, unused.
9489 * unexaix.c (ADDR_CORRECT): Remove conditional, the only user
9490 defines it.
9491 * unexec.c (ADDR_CORRECT): Define unconditionally.
9492
9493 * m/ibmrs6000.h (C_SWITCH_MACHINE): Remove.
9494
9495 * unexec.c: Remove code depending on !COFF and USG, the file is
9496 not used for such systems.
9497
9498 * s/netbsd.h (A_TEXT_OFFSET, A_TEXT_SEEK):
9499 * s/freebsd.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, unused.
9500 (LD_SWITCH_SYSTEM_1): Remove, update users.
9501
9502 * s/darwin.h (DATA_END):
9503 * m/intel386.h (DATA_END):
9504 * m/ibmrs6000.h (DATA_END):
9505 * m/alpha.h (DATA_END): Remove, unused.
9506
9507 * config.in: Regenerate.
9508 * s/ms-w32.h (subprocesses): Define unconditionally.
9509 * s/template.h (subprocesses): Update comment.
9510 * s/vms.h (subprocesses):
9511 * s/usg5-4.h (subprocesses):
9512 * s/hpux10-20.h (subprocesses):
9513 * s/gnu-linux.h (subprocesses):
9514 * s/cygwin.h (subprocesses):
9515 * s/bsd-common.h (subprocesses):
9516 * s/aix4-2.h (subprocesses):
9517 * s/darwin.h (subprocesses): Do not define, defined by default now.
9518
9519 * Makefile.in (C_SWITCH_SITE, LD_SWITCH_SITE): Remove, unused.
9520 Remove all references.
9521 (temacs): Add GNUstep specific ld flags.
9522
9523 * nsterm.m (syms_of_nsterm): Provide ns, not ns-windowing,
9524 similarly to what X does.
9525
95262008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
9527
9528 * nsfns.m (x-list-fonts): Remove.
9529 (syms_of_nsfns): Drop the x-list-fonts declaration.
9530 * nsterm.m: Get rid of remaining "//" comments.
9531
95322008-07-22 Chong Yidong <cyd@stupidchicken.com>
9533
9534 * xselect.c (Fx_rotate_cut_buffers_internal): Doc fix.
9535
9536 * nsselect.m (Fns_selection_exists_p, Fns_selection_owner_p)
9537 (Fx_get_selection_internal, Fns_rotate_cut_buffers_internal)
9538 (Fns_own_selection_internal, Fx_disown_selection_internal)
9539 (Fns_get_cut_buffer_internal, Fns_store_cut_buffer_internal):
9540
9541 * nsmenu.m (Fns_reset_menu, Fx_popup_menu): Change to use 'doc: /*
9542 ... */' style of docstrings. Doc fixes.
9543
95442008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
9545
9546 * terminfo.c (UP, BC, PC): Undo previous change.
9547
9548 * nsfns.m: Rename ns prefixed functions/variables to the
9549 corresponding x versions. Update references.
9550
95512008-07-22 Stefan Monnier <monnier@iro.umontreal.ca>
9552
9553 * syntax.c (char_quoted): Check "charpos > beg" before decrementing.
9554
95552008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
9556
9557 * nsfns.m (x_set_menu_bar_lines, x_set_tool_bar_lines):
9558 Remove forwarding functions.
9559 (ns_set_menu_bar_lines): Rename to x_set_menu_bar_lines, make
9560 non-static.
9561 (ns_set_tool_bar_lines): Rename to x_set_tool_bar_lines, make
9562 non-static.
9563 (ns_frame_parm_handlers): Use the new names.
9564 (syms_of_nsfns): Move to the end of file.
9565
9566 * nsterm.m (syms_of_nsterm): Move to the end of file.
9567
9568 * dispnew.c (init_display): Remove code for X10.
9569
95702008-07-22 Jason Rumney <jasonr@gnu.org>
9571
9572 * w32proc.c (Fw32_long_file_name): Don't append dir separator to
9573 bare drive.
9574
95752008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
9576
9577 * nsterm.m (syms_of_nsterm): Remove debugging println.
9578
95792008-07-22 David Reitter <david.reitter@gmail.com>
9580
9581 * nsfns.m (do_applescript, F_do_applescript): NS version of the
9582 Carbon implementation of the same functionality: execute arbitrary
9583 AppleScript code.
9584
95852008-07-21 Adrian Robert <Adrian.B.Robert@gmail.com>
9586
9587 * nsfns.m (Fx_create_frame, Fx_read_file_name, Fx_get_resource)
9588 (Fx_set_resource, Fx_set_alpha, Fx_server_max_request_size)
9589 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
9590 (Fx_display_mm_height, Fx_display_mm_width)
9591 (Fx_display_backing_store, Fx_display_visual_class)
9592 (Fx_display_save_under, Fx_open_connection)
9593 (Fx_close_connection, Fx_hide_emacs, Fx_font_name)
9594 (Fx_list_colors, Fx_perform_service, Fx_color_defined_p)
9595 (Fx_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
9596 (Fx_display_pixel_width, Fx_display_pixel_height)
9597 (Fx_display_usable_bounds, Fx_display_planes)
9598 (Fx_display_color_cells, Vns_icon_type_alist): Change to use 'doc: /*
9599 ... */' style of docstrings.
9600
96012008-07-21 Dan Nicolaescu <dann@ics.uci.edu>
9602
9603 * m/mips.h (LOAD_AVE_TYPE, LOAD_AVE_CVT): Do not define, not used
9604 on this platform.
9605 (mips):
9606 * m/iris4d.h (mips): Do not define.
9607 * sysdep.c (init_sys_modes): Use __mips__ instead of mips.
9608
9609 * m/ibmrs6000.h (LD_SWITCH_SITE): Remove.
9610
9611 * image.c:
9612 * nsfns.m:
9613 * nsselect.m:
9614 * nsterm.h:
9615 * nsterm.m: Rename ns prefixed functions/variables to the
9616 corresponding x versions. Update references.
9617
9618 * m/ibms390x.h (NO_REMAP): Do not undefine.
9619
9620 * m/amdx86-64.h: Use SOLARIS2 instead of sun.
9621
96222008-07-21 Chong Yidong <cyd@stupidchicken.com>
9623
9624 * nsfns.m: Change NS to Nextstep in docstrings and error messages.
9625 (Fns_create_frame, Fns_read_file_name, Fns_get_resource)
9626 (Fns_set_resource, Fns_set_alpha, Fns_server_max_request_size)
9627 (Fns_server_vendor, Fns_server_version, Fns_display_screens)
9628 (Fns_display_mm_height, Fns_display_mm_width)
9629 (Fns_display_backing_store, Fns_display_visual_class)
9630 (Fns_display_save_under, Fns_open_connection)
9631 (Fns_close_connection, Fns_hide_emacs, Fns_font_name)
9632 (Fns_list_colors, Fns_perform_service, Fns_color_defined_p)
9633 (Fns_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
9634 (Fns_display_pixel_width, Fns_display_pixel_height)
9635 (Fns_display_usable_bounds, Fx_display_planes)
9636 (Fns_display_color_cells, Vns_icon_type_alist): Doc fixes.
9637
96382008-07-21 Ami Fischman <ami@fischman.org> (tiny change)
9639
9640 * print.c (print_object): Check print_depth before searching for
9641 circularities.
9642
96432008-07-21 Michael Albinus <michael.albinus@gmx.de>
9644
9645 * dbusbind.c (Fdbus_register_signal): Use sprintf + strcat instead
9646 only sprintf.
9647
96482008-07-21 Kenichi Handa <handa@m17n.org>
9649
9650 * ftfont.c (adjust_anchor): Check if DeltaValue is not NULL.
9651
96522008-07-20 Andreas Schwab <schwab@suse.de>
9653
9654 * syntax.c (find_start_pos, find_start_value)
9655 (find_start_value_byte, find_start_begv, find_defun_start)
9656 (back_comment, scan_sexps_forward): Use EMACS_INT for buffer positions.
9657
96582008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
9659
9660 * s/sol2-3.h: Insert contents of s/sol2.h.
9661 (LD_SWITCH_SYSTEM): Remove redundant definition.
9662 * s/sol2.h: Remove, unused.
9663
96642008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
9665
9666 * nsterm.m (ns_get_color): Recognize HSB,AHSB be synonyms for HSV,AHSV.
9667
96682008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
9669
9670 * Makefile.in (ns_appdir): Fix typo in find command.
9671
96722008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
9673
9674 * m/intel386.h (NO_REMAP): Do no define for USG, not used.
9675
9676 * s/usg5-4.h (LIBS_SYSTEM): Remove, system for which this was
9677 added not supported anymore.
9678
9679 * s/usg5-4-2.h (LIBS_SYSTEM):
9680 * s/sol2.h (LIBS_SYSTEM): Do not undefine.
9681
9682 * s/netbsd.h (GETPGRP_NO_ARG, N_TRELOFF):
9683 * s/lynxos.h (GETPGRP_NO_ARG):
9684 * s/hpux10-20.h (NO_SIOCTL_H):
9685 * s/gnu.h (GETPGRP_NO_ARG):
9686 * s/gnu-linux.h (NO_SIOCTL_H):
9687 * s/freebsd.h (GETPGRP_NO_ARG, N_TRELOFF):
9688 * s/cygwin.h (GETPGRP_NO_ARG):
9689 * s/irix6-5.h (LIBS_SYSTEM, GETPGRP_NO_ARG): Remove, unused.
9690 (C_DEBUG_SWITCH): Remove duplicate definition.
9691
9692 * m/ibms390.h: Remove boilerplate comments.
9693
9694 * sysdep.c (closedir): Use SOLARIS2 instead of sun && USG5_4.
9695
9696 * process.c (HAVE_SERIAL): Consolidate ifdefs.
9697 (wait_reading_process_output): Remove code for SunOS, platform not
9698 supported anymore. Use SOLARIS2 instead of sun.
9699
97002008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
9701
9702 * font.c (font_open_by_name): Under NS, default lface height to zero.
9703 (font_open_for_lface): Under NS, set size based on frame fontsize.
9704 * nsterm.m (EmacsView-changeFont:): Remove some commented code.
9705 * frame.c (x_set_frame_parameters): Remove HAVE_NS ifdef.
9706
97072008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
9708
9709 * nsterm.m (ns_antialias_text, ns_use_qd_smoothing)
9710 (ns_use_system_highlight_color): Switch these from DEFVAR_BOOL to
9711 DEFVAR_LISP and change all code accordingly to use Qt/Qnil instead of
9712 YES/NO.
9713 * nsterm.h (prevUseHighlightColor): Make a Lisp_Object.
9714 * nsfont.m (nsfont_draw): Treat ns_use_qd_smoothing as Lisp_Object.
9715 * Makefile.in (clean): Clear out build destination dir.
9716
97172008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
9718
9719 * Makefile.in (nsgui.h-related dependencies): Remove abbrev, xfns,
9720 xterm, xselect.
9721 * lisp.h: Remove declaration of hash_remove.
9722 * nsgui.h: Remove redefinitions of hash_remove.
9723 * fns.c (hash_remove): Rename to hash_remove_from_table.
9724
97252008-07-19 Seiji Zenitani <zenitani@mac.com>
9726
9727 * nsfont.m (nsfont_fmember_to_entity, nsfont_make_fontset_for_font):
9728 strdup() the family UTF8String before modifying it.
9729
97302008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
9731
9732 * nsterm.m (ns_maybe_dumpglyphs_background): Compare result from
9733 NS_FACE_BACKGROUND with 0 instead of nil.
9734 * nsfont.m (nsfont_draw): Same.
9735
97362008-07-19 Chong Yidong <cyd@stupidchicken.com>
9737
9738 * nsfns.m (ns_set_background_color): Fix crash.
9739
97402008-07-18 Chong Yidong <cyd@stupidchicken.com>
9741
9742 * Makefile.in (SOME_MACHINE_LISP): Remove ns-carbon-compat.elc.
9743
97442008-07-18 Dan Nicolaescu <dann@ics.uci.edu>
9745
9746 * puresize.h (BASE_PURESIZE): Increase to 1240000.
9747
97482008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9749
9750 * gtkutil.c: Include <config.h> instead of "config.h".
9751
9752 * lisp.h (Foverlay_buffer): Add EXFUN.
9753
9754 * process.c (create_process) [!WINDOWSNT && FD_CLOEXEC]: Wait for
9755 child process to complete child_setup. Undo 2005-09-21 change.
9756
9757 * s/darwin.h: Mention setsid after vfork.
9758
97592008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9760
9761 * Makefile.in (frame.o, keyboard.o, xdisp.o, xfaces.o):
9762 Depend on macgui.h.
9763
9764 * macfns.c (Fx_server_version): Don't use gestaltSystemVersionMajor,
9765 gestaltSystemVersionMinor, or gestaltSystemVersionBugFix.
9766
9767 * macterm.c (keycode_to_xkeysym_table): Add entries for f17, f18,
9768 and f19.
9769 [MAC_OSX] (fn_keycode_to_keycode_table): Likewise.
9770
9771 * macterm.h (gestaltSystemVersionMajor, gestaltSystemVersionMinor)
9772 (gestaltSystemVersionBugFix) [MAC_OS_X_VERSION_MAX_ALLOWED < 1040]:
9773 Remove enumerators.
9774
9775 * mactoolbox.c [USE_MAC_TSM] (mac_handle_text_input_event):
9776 Check if FACE_FROM_ID returns NULL.
9777
97782008-07-17 David Robinow <drobinow@gmail.com> (tiny change)
9779
9780 * w32inevt.c (change_frame_size): Remove extern declaration.
9781 (resize_event, maybe_generate_resize_event): Pass SAFE arg to
9782 change_frame_size.
9783
97842008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
9785
9786 * getloadavg.c: Revert last change (2008-07-15).
9787
97882008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
9789
9790 * Makefile.in: Replace emacsapp, emacsbindir, emacsappsrc variables
362654a6 9791 set here with ns_appdir, ns_appresdir, ns_appbindir, ns_appsrc set
aac0c6e3
MR
9792 from configure.
9793
97942008-07-17 Dan Nicolaescu <dann@ics.uci.edu>
9795
9796 * s/sol2.h:
9797 * s/sol2-4.h: Reorganize conditionals.
9798
9799 * ecrt0.c: Remove code depending on m68000, not used anymore.
9800
9801 * fns.c (hash_remove): Make static.
9802 * lisp.h (hash_remove): Don't prototype.
9803
9804 * m/ibmrs6000.h:
9805 * m/ibms390x.h:
9806 * m/macppc.h: Remove boilerplate comments.
9807
9808 * m/sparc.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, only used on
9809 Solaris, which does not need them.
9810
9811 * m/vax.h: Remove comments about unsupported systems.
9812
9813 * s/darwin.h: Reorganize ifdefs.
9814
98152008-07-17 Andreas Schwab <schwab@suse.de>
9816
9817 * s/cygwin.h (LIB_STANDARD_LIBSRC): Don't define.
9818
98192008-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
9820
9821 Use SDATA. Follow coding convention of placing operators at
9822 beginning of next line rather than end of previous line, and placing
9823 spaces around infix operators.
9824
9825 * Makefile.in: Undef LIB_STANDARD before defining it to silence warning
9826 in case it was defined already.
9827 USE @GNUSTEP_MAKEFILES@ rather than envvars.
9828 * nsterm.m (ns_term_init): Pass Qt and Qnil rather than YES/NO to
9829 ns_default.
9830 (applicationShouldTerminate, setValuesFromPanel): Use EQ to compare
9831 Lisp_Objects.
9832 * nsterm.h (Fx_display_grayscale_p, Fx_display_planes)
9833 (ns_defined_color, ns_color_to_lisp): Declare.
9834 * nsselect.m (ns_handle_selection_request, ns_handle_selection_clear)
9835 (Fns_own_selection_internal): Make the big ugly hack more explicit, so
9836 it's accepted even with USE_LISP_UNION_TYPE.
9837 * nsmenu.m (ns_update_menubar): Use EQ to compare Lisp_Objects.
9838 (update_frame_tool_bar): Remove apparently obsolete tests for
9839 non-integerness of f->tool_bar_lines.
9840 (windowShouldClose, addButton, clicked, runDialogAt): Make the big ugly
9841 hack more explicit, so it's accepted even with USE_LISP_UNION_TYPE.
9842 * nsfont.m (nsfont_driver): Use just 0 rather than an invalid cast.
9843 (nsfont_open): Don't confuse NULL for Qnil.
9844 * nsfns.m (ns_implicitly_set_icon_type): Use EQ to compare Lisp_Objects.
9845 * menu.h (find_and_call_menu_selection):
9846 * menu.c (find_and_call_menu_selection): Use just int for vector size.
9847 (find_and_return_menu_selection): Always return something.
9848 * frame.h: Include dispextern.h for Display_Info.
9849 (display_x_get_resource): Declare.
9850
98512008-07-16 Adrian Robert <Adrian.B.Robert@gmail.com>
9852
9853 * syntax.c: Remove stdio.h include accidentally introduced in
9854 Emacs.app commit.
9855 * Makefile.in: Change GNUSTEP to NS_IMPL_GNUSTEP, COCOA to
9856 NS_IMPL_COCOA.
9857 * keyboard.c (handle_async_input, input_available_signal): Remove
9858 BSD4_1 conditional code, introduced accidentally in Emacs.app commit.
9859
98602008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
9861
9862 * nsterm.m (lisp_to_mod): Use parse_solitary_modifier instead.
9863 (ns_lisp_to_color): Don't mess with internal Lisp data fields.
9864 (ns_term_init, ns_term_shutdown, initFrameFromEmacs, ns_list_fonts):
9865 Use SDATA.
9866
9867 * keymap.c: Remove all NS-specific code.
9868 (where_is_preferred_modifier, Vwhere_is_preferred_modifier): New vars.
9869 (preferred_sequence_p): Rename from ascii_sequence_p; pay attention to
9870 where_is_preferred_modifier, return a different value depending on how
9871 preferred is the binding.
9872 (where_is_internal): Adjust accordingly.
9873 (Fwhere_is_internal): Refresh where_is_preferred_modifier.
9874 Adjust to new preferred_sequence_p.
9875 (syms_of_keymap): Declare `where-is-preferred-modifier'.
9876 * keyboard.c (parse_solitary_modifier): Not static any more.
9877 * keyboard.h (parse_solitary_modifier): Declare.
9878
98792008-07-16 Andreas Schwab <schwab@suse.de>
9880
9881 * Makefile.in (SOME_MACHINE_LISP): Remove easy-mmode, fix spelling
9882 of easymenu.
9883
98842008-07-16 Chong Yidong <cyd@stupidchicken.com>
9885
9886 * xdisp.c (move_it_in_display_line): Account for word wrap, so
9887 that we don't move off the line.
9888
98892008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
9890
9891 * keyboard.c (Qsuper): Remove.
9892 (parse_menu_item): Don't call where_is_internal specially for NS.
9893
98942008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
9895
9896 * s/gnu-linux.h: Remove boilerplate comments.
9897
9898 * m/alpha.h (__ELF__): Consolidate conditions.
9899
9900 * m/m68k.h (linux): Use GNU_LINUX instead.
9901 Remove boilerplate comments.
9902
9903 * m/intel386.h: Undo refactoring from previous change.
9904 (LIB_STANDARD): All systems that define USG define LIB_STANDARD
9905 too, remove dead code.
9906 (linux): Use GNU_LINUX instead.
9907
99082008-07-16 Jason Rumney <jasonr@gnu.org>
9909
9910 * w32gui.h: Repeat 26 June changes lost by last change.
9911
99122008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
9913
9914 * systty.h: Remove code for Aix on 386, unsupported platform.
9915
9916 * s/ms-w32.h: Remove boilerplate comments.
9917 (fcloseall, fgetchar, flushall, fputchar, getw, putw): Remove, unused.
9918
9919 * s/gnu-linux.h (TERM): Remove support.
9920 (HAVE_SYSVIPC): Remove, unused.
9921 (A_TEXT_OFFSET, A_TEXT_SEEK, ADJUST_EXEC_HEADER): Remove, not used
9922 for this system.
9923
9924 * process.c: Remove support for IRIS, unused.
9925 Remove support for TERM, not relevant anymore.
9926
9927 * unexalpha.c (DEFAULT_ENTRY_ADDRESS): Remove, replace the only
9928 used with the definition.
9929
9930 * s/aix4-2.h (static): Do not undef.
9931
9932 * m/ibmrs6000.h: Remove code depending on USG5_4, this file is
9933 only used on Aix.
9934 (HAVE_SYSVIPC): Remove, unused.
9935
9936 * m/hp800.h (CANNOT_DUMP): Do not undef.
9937
9938 * m/alpha.h: Fix comment.
9939
9940 * s/usg5-4.h (HAVE_SYSVIPC): Remove, unused.
9941 (USG_SHARED_LIBRARIES): Remove, only used in unexec.c which is not
9942 used by this configuration.
9943 * emacs.c: Remove code depending on USG_SHARED_LIBRARIES.
9944 * unexec.c: Remove code depending on HPUX and
9945 USG_SHARED_LIBRARIES, not used with this file. Remove code
9946 depending on IRIS, unused. Remove if 0-ed code.
9947
9948 * s/template.h: Remove comments about static.
9949
9950 * sysdep.c: Remove code depending on NEED_PTEM_H, unused.
9951 Remove if 0-ed code.
9952 (baud_convert): Don't depend on BAUD_CONVERT, all definitions the
9953 were the same as the default.
9954 * s/vms.h (BAUD_CONVERT): Remove, same as the default.
9955 Remove boilerplate comments.
9956 * s/hpux10-20.h (BAUD_CONVERT): Remove, same as the default.
9957 (HAVE_SYSVIPC): Remove, unused.
9958 (LD_SWITCH_SYSTEM_TEMACS): Simplify, hp9000s700 not supported anymore.
9959
9960 * m/ia64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
9961 Remove boilerplate comments.
9962 * m/amdx86-64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
9963 Remove boilerplate comments.
9964 * m/ibms390x.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
9965 Remove boilerplate comments.
9966 * lisp.h (PNTR_COMPARISON_TYPE): Define it unconditionally.
9967
9968 * m/intel386.h (DATA_SEG_BITS): Remove definitions, only used on
9969 USG systems which do not use DATA_SEG_BITS.
9970 Refactor code. Remove boilerplate comments.
9971
9972 * m/ibms390.h:
9973 * m/m68k.h:
9974 * s/bsd-common.h:
9975 * s/cygwin.h:
9976 * s/darwin.h:
9977 * s/freebsd.h:
9978 * s/gnu.h:
9979 * s/msdos.h: Remove boilerplate comments.
9980
9981 * m/iris4d.h: Remove boilerplate comments and code for systems that
6873acca 9982 do not use this file.
aac0c6e3
MR
9983 (IRIS_4D): Remove, unused.
9984
9985 * m/mips.h: Remove boilerplate comments and code for systems that
6873acca 9986 do not use this file.
aac0c6e3
MR
9987 (SIGN_EXTEND_CHAR):
9988 * m/arm.h (SIGN_EXTEND_CHAR): Remove, unused.
9989 * unexmips.c: Remove file, unused.
9990
9991 * editfns.c (Fuser_full_name): Replace the only use of
9992 USER_FULL_NAME with its value.
9993 * config.in: Regenerate.
9994
99952008-07-16 David Reitter <david.reitter@gmail.com>
9996
9997 * Makefile.in: Add ns-win, ns-carbon-compat, easy-mmode and
9998 easy-menu to SOME_MACHINE_LISP for the new NeXTstep port.
9999
100002008-07-16 Glenn Morris <rgm@gnu.org>
10001
10002 * emacs.c (system-type): Doc fix.
10003
100042008-07-15 Stefan Monnier <monnier@iro.umontreal.ca>
10005
10006 * keyboard.c (parse_menu_item): Don't use cachelist, even under NS.
10007 If the cache doesn't work, let's fix it, rather than work around it.
10008
100092008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
10010
10011 * Makefile.in: Correct additions for nsfont.o in last commit.
10012 * nsfont.m: New file (forgot last commit).
10013
100142008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
10015
10016 * callproc.c (set_initial_environment): Initialize
10017 Vprocess_environment under CANNOT_DUMP (fixes crash when
10018 batch-compiling for bootstrap).
10019
100202008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
4e2af782 10021 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
aac0c6e3
MR
10022
10023 (make_initial_frame): Call init_frame_faces(f) in CANNOT_DUMP case --
10024 fix crash due to different init order.
10025
100262008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
10027
10028 Changes and additions for NeXTstep windowing system (Cocoa and
10029 GNUstep) support.
10030
10031 * Makefile.in:
10032 * config.in: Support defines and build commands for NS port.
10033 * blockinput.h (BLOCK_INPUT, UNBLOCK_INPUT, TOTALLY_UNBLOCK_INPUT)
10034 (UNBLOCK_INPUT_TO): Don't use under NS unless EXPERIMENTAL_CONTROL_G.
10035 * dispextern.h: Include nsgui.h and add needed typedefs under NS
10036 windowing.
10037 (struct face): Add synth_ital field.
10038 * dispnew.c: Include nsterm.h when compiling under NS windowing.
10039 (init_display): Initialize Vinitial_window_system to "ns" when so
10040 compiled.
10041 * emacs.c: Include GSConfig.h when compiling under GNUstep.
10042 (display_arg): Use under NS.
10043 (main): Under NS, allocate autorelease pool and handle command line
10044 args. Move syms_of_xmenu() call under #ifdef HAVE_X_WINDOWS.
10045 (standard_args): Add NS-specific args.
10046 (shut_down_emacs): Shut down NS terminal if compiled under NS.
10047 * font.c (DEFAULT_ENCODING): New variable.
10048 (font_find_for_lface): Use it.
10049 (syms_of_font): Load syms_of_nsfont under NS.
10050 * font.h: Declare nsfont_driver when compiled under NS.
10051 * fontset.c: When compiling under NS, include nsterm.h.
10052 (fontset_from_font): Autoconstruct fontset under NS.
10053 * frame.c (various): Under NS, include nsterm.h, add Qns window system
10054 symbol, document and use it.
10055 (do_switch_frame): When for_deletion under Cocoa, add
10056 Fraise_frame(Qnil).
10057 (x_set_frame_parameters): Ensure font attribute changes are picked up.
10058 (x_get_arg): Allow "yes" and "no" as boolean values.
10059 (syms_of_frame): Declare Qns. Init Vdefault_frame_scroll_bars to
10060 Qright under Cocoa.
10061 (focus-follows-mouse): Default to 0 under NS.
10062 * frame.h (enum output_method): Add output_ns.
10063 (external_tool_bar, external_menu_bar, FRAME_EXTERNAL_TOOLBAR)
10064 (FRAME_EXTERNAL_MENU_BAR): Use under NS.
10065 (FRAME_WINDOW_P): NS-specific definition.
10066 * fringe.c (max_used_fringe_bitmap): Make public.
10067 * getloadavg.c (mach/mach.h): Include it under NeXT descendant OS's.
10068 (getloadavg): Use NeXT code under descendant OS's.
10069 * image.c (includes and header section, x_create_bitmap_from_data)
10070 (x_create_bitmap_from_file, free_bitmap_record, image_background)
10071 (image_background_transparent, x_clear_image_1)
10072 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
10073 (Create_Pixmap_From_Bitmap_Data, xpm_load_image, lookup_rgb_color)
10074 (x_to_xcolors, x_from_xcolors, x_disable_image)
10075 (x_build_heuristic_mask, syms_of_image): Add NS support parallel to
10076 other GUIs, including XPM support using code originally written for
10077 Carbon GUI.
10078 (png_load, jpeg_load, tiff_load, gif_load): Add implementations
10079 using NS API.
10080 (image_ascent): Use font metrics macros instead of direct struct field
10081 access.
10082 * keyboard.c (includes): Add nsterm.h when compiling under NS.
10083 (kbd_buffer_get_event): Handle NS as other GUI windowing systems.
10084 Also, handle NS as GTK for menu bar purposes.
10085 (make_lispy_event): Handle NS as other GUI windowing systems, and as X
10086 toolkit where they differ.
10087 (parse_menu_item): Prefer keybindings using 'super' modifier. Also,
10088 use cachelist, still needed under NS.
10089 * keyboard.h (ENCODE_MENU_STRING, XtPointer, Boolean): Handle as NTGUI.
10090 (struct widget_value): Define it here for menu.c.
10091 * keymap.c (includes): Include modifier internals.
10092 (lisp_to_mod, modifier_sequence_p): New functions, compiled only under
10093 NS.
10094 (where_is_internal, Fwhere_is_internal): When compiled under NS, add
10095 support for preferring sequences using certain modifiers, specified by
10096 the FIRSTONLY argument.
10097 * lisp.h (hash_remove): Rename to avoid name clash when compiling
10098 under NS GNUstep implementation.
10099 (USE_LSB_TAG): Use it under Cocoa when compiling under NS.
10100 * lread.c (init_lread): Treat NS as HAVE_CARBON for turn_off_warning.
10101 * menu.c: Include nsterm.h under NS.
10102 (single_menu_item, parse_single_submenu, xmalloc_widget_value)
10103 (free_menubar_widget_tree_value, update_submenu_strings)
10104 (find_and_call_menu_selection): Treat NS as X and NT.
10105 (find_and_return_menu_selection): New function, used for popup menus.
10106 * nsgui.h:
10107 * nsterm.h:
10108 * nsfns.m:
10109 * nsimage.m:
10110 * nsmenu.m:
10111 * nsselect.m:
10112 * nsterm.m: New files.
10113 * process.c (wait_reading_process_output): Under NS, call ns_select()
10114 instead of plain select().
10115 * syntax.c (char_quoted): Under NS, avoid a crash when called near
10116 beginning of buffer.
10117 * sysselect.h (init_process): Rename when compiling under Cocoa to
10118 avoid name conflict.
10119 * termhooks.h (display_info): Add ns_display_info to union.
10120 * terminal.c (Fterminal_live_p): Add ns to terminal types.
10121 * terminfo.c (UP, BC, PC): Don't declare when compiling under NS in
10122 COCOA environment.
10123 * unexnext.c: Update to work with mach API on Mac OS X, and to use new
10124 unexec() signature. (Note, this will dump, but the resulting file
10125 crashes; unexosx is used instead; keeping around for reference and
10126 possible aid in getting dump working under GNUstep.)
10127 * w32gui.h (button_type, widget_value): Remove definitions (now in
10128 keyboard.h).
10129 * window.c: Include nsterm.h when compiling under NS.
10130 * xdisp.c (includes): Include nsterm.h when compiling under NS.
10131 (set_frame_menubar, update_menu_bar, display_menu_bar): Handle NS as
10132 other GUI windowing systems.
10133 (update_tool_bar, redisplay_tool_bar, redisplay_window): Handle NS as
10134 GTK.
10135 (x_consider_frame_title): Under NS, set icon type and frame
10136 modified-state indicator; use ns_set_name_as_filename() when using
10137 formatted title.
10138 (update_window_cursor): Make public when compiling under NS.
10139 (display_hourglass_p, syms_of_xdisp, hourglass_shown_p)
10140 (hourglass_atimer, Vhourglass_delay
10141 * xfaces.c (header section, init_frame_faces, clear_font_table)
10142 (defined_color, unload_color, x_face_list_fonts)
10143 (prepare_face_for_display): Add NS support parallel to other GUIs.
10144 Emulate GCs like other non-X GUIs.
10145 (split_font_name): Don't lowercase font name under NS.
10146 (merge_face_ref, Finternal_set_lisp_face_attribute): Support stippling
10147 under NS.
10148 * s/darwin.h: Add support for compilation under NS.
10149
101502008-07-15 Jason Rumney <jasonr@gnu.org>
10151
10152 * w32fns.c (Fx_create_frame): Remove duplicate unwind_protect.
10153 (w32_show_hourglass): Rename from show_hourglass.
10154 (w32_hide_hourglass): Rename from hide_hourglass.
10155 (DEFAULT_HOURGLASS_DELAY): Revert from last change.
10156 (Vhourglass_delay): Declare extern.
10157 (hourglass_started): Remove.
10158
10159 * xdisp.c (Vhourglass_delay): Remove static.
10160 (hourglass_started, start_hourglass, cancel_hourglass):
10161 Don't include these versions on WINDOWSNT.
10162
101632008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
10164
10165 * dispextern.h (hourglass_shown_p, hourglass_atimer): New extern
10166 variables (formerly in xfns.c).
10167 (show_hourglass, hide_hourglass): New prototypes (same).
10168 * xdisp.c (display_hourglass_p, hourglass_shown_p, hourglass_atimer)
10169 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY): New variables (formerly
10170 in xfns.c).
10171 (syms_of_xdisp): Declare/initialize display-hourglass,
10172 hourglass-delay. Initialize hourglass_atimer, hourglass_shown_p.
10173 (hourglass_started, start_hourglass, cancel_hourglass): New functions,
10174 formerly in xfns.c.
10175 * xfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
10176 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
10177 (start_hourglass, cancel_hourglass): Remove.
10178 (show_hourglass, hide_hourglass): Remove prototypes and static
10179 modifiers.
10180 (syms_of_xfns): Remove display-hourglass, hourglass-delay,
10181 hourglass_atimer, hourglass_shown_p declaration/initialization.
10182 * macfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
10183 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
10184 (start_hourglass, cancel_hourglass): Remove.
10185 (show_hourglass, hide_hourglass): Remove prototypes and static
10186 modifiers.
10187 (syms_of_macfns): Remove display-hourglass, hourglass-delay,
10188 hourglass_atimer, hourglass_shown_p declaration/initialization.
10189 * w32fns.c (display_hourglass_p, Vhourglass_delay)
10190 (DEFAULT_HOURGLASS_DELAY): Remove.
10191 (syms_of_w32fns): Remove display-hourglass, hourglass-delay,
10192 hourglass_shown_p declaration/initialization.
10193
101942008-07-14 Jason Rumney <jasonr@gnu.org>
10195
10196 * w32fns.c (w32_get_arg): Remove wrapper function.
10197 (w32_createwindow, x_icon, x_create_tip_frame): Use x_get_arg
10198 directly.
10199 (Fx_create_frame): Sync with xfns.c. Use x_get_arg directly.
10200
102012008-07-14 Kenichi Handa <handa@m17n.org>
10202
10203 * xfont.c (xfont_open): Add workaround for X's bug.
10204
102052008-07-14 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
10206
10207 * fontset.c: Include <stdio.h> unconditionally.
10208
102092008-07-13 Michael Albinus <michael.albinus@gmx.de>
10210
10211 * dbusbind.c (Fdbus_register_signal): Allow also signal arguments
10212 for filtering.
10213
102142008-07-13 Dan Nicolaescu <dann@ics.uci.edu>
10215
10216 * s/vms.h: Use __GNUC__ instead of _GNUC_.
10217
10218 * m/macppc.h:
10219 * m/alpha.h: Use GNU_LINUX instead of LINUX. Reorganize conditionals.
10220
10221 * m/ibms390x.h (XINT, XUINT): Don't define, same as the default
10222 (SPECIAL_EMACS_INT):
10223 * m/ia64.h (SPECIAL_EMACS_INT):
10224 * m/amdx86-64.h (SPECIAL_EMACS_INT):
10225 * s/gnu.h (NLIST_STRUCT):
10226 * s/aix4-2.h (X11R5_INHIBIT_I18N):
10227 * s/gnu-linux.h (LINUX):
10228 * s/msdos.h (HAVE_FACES):
10229 * s/ms-w32.h (HAVE_FACES): Don't define, unused.
10230
10231 * systty.h:
10232 * sysdep.c (setup_pty): Don't depend on SYSV_PTYS, it is not used
10233 anymore.
10234
102352008-07-12 Dan Nicolaescu <dann@ics.uci.edu>
10236
10237 * syswait.h: Remove old if 0 code. Do not define WAITTYPE, it was
10238 always defined as int.
10239
10240 * s/netbsd.h (HAVE_UNION_WAIT, HAVE_WAIT_HEADER, WAIT_USE_INT):
10241 * s/gnu.h (HAVE_WAIT_HEADER, WAIT_USE_INT, HAVE_UNION_WAIT):
10242 * s/gnu-linux.h (HAVE_WAIT_HEADER):
10243 * s/freebsd.h (HAVE_WAIT_HEADER):
10244 * s/bsd-common.h (HAVE_UNION_WAIT):
10245 * s/aix4-2.h (HAVE_WAIT_HEADER):
10246 * m/mips.h (HAVE_UNION_WAIT):
10247 * s/usg5-4.h (HAVE_WAIT_HEADER, WAITTYPE): Do not define, not used.
10248 (COFF, static): Do not define, they are undefined later in the file.
10249
10250 * process.c (update_status): Don't use a union.
10251 (status_convert):
10252 (sigchld_handler): Use int instead of WAITTYPE.
10253
102542008-07-12 Chong Yidong <cyd@stupidchicken.com>
10255
10256 * indent.c (Fvertical_motion): Restore hscroll before moving to
10257 goal column.
10258
102592008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
10260
10261 * lisp.h: Remove left over code.
10262
102632008-07-11 Andreas Schwab <schwab@suse.de>
10264
10265 * lisp.h: Fix logic in last change.
10266
10267 * menu.h: New file.
10268 * menu.c: Include it.
10269 * xmenu.c: Likewise.
10270 * Makefile.in: Update dependencies.
10271
102722008-07-11 Kenichi Handa <handa@m17n.org>
10273
10274 * fontset.c (fontset_from_font): Cancel the previous change.
10275
102762008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
10277
10278 * lisp.h:
10279 * w32heap.c:
10280 * emacs.c:
10281 * alloc.c: Replace all references of NO_UNION_TYPE with
10282 USE_LISP_UNION_TYPE.
10283
10284 * m/xtensa.h (NO_UNION_TYPE):
10285 * m/vax.h (NO_UNION_TYPE):
10286 * m/template.h (NO_UNION_TYPE):
10287 * m/sparc.h (NO_UNION_TYPE):
10288 * m/mips.h (NO_UNION_TYPE):
10289 * m/macppc.h (NO_UNION_TYPE):
10290 * m/m68k.h (NO_UNION_TYPE):
10291 * m/iris4d.h (NO_UNION_TYPE):
10292 * m/intel386.h (NO_UNION_TYPE):
10293 * m/ibms390x.h (NO_UNION_TYPE):
10294 * m/ibms390.h (NO_UNION_TYPE):
10295 * m/ibmrs6000.h (NO_UNION_TYPE):
10296 * m/ia64.h (NO_UNION_TYPE):
10297 * m/hp800.h (NO_UNION_TYPE):
10298 * m/arm.h (NO_UNION_TYPE):
10299 * m/amdx86-64.h (NO_UNION_TYPE):
10300 * m/alpha.h (NO_UNION_TYPE): Remove definition, all platform were
10301 defining it the same.
10302
103032008-07-10 Chong Yidong <cyd@stupidchicken.com>
10304
10305 * xdisp.c (move_it_to): Backtrack if past the edge of a wrapped line.
10306
103072008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
10308
10309 * fileio.c:
50426a04 10310 * sysdep.c:
aac0c6e3
MR
10311 * systty.h:
10312 * m/ibmrs6000.h:
10313 * m/iris4d.h:
10314 * s/aix4-2.h:
10315 * s/freebsd.h:
10316 * s/gnu-linux.h:
10317 * s/hpux10-20.h:
10318 * s/hpux11.h:
10319 * s/netbsd.h:
10320 * s/sol2-3.h:
10321 * s/sol2-4.h:
10322 * s/sol2.h:
10323 * s/usg5-4.h:
10324 * s/vms.h: Remove references to unused variables.
10325
103262008-07-10 Andreas Schwab <schwab@suse.de>
10327
10328 * ftfont.c (ftfont_resolve_generic_family): Remove foundry from
10329 pattern before matching the generic family.
10330
103312008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
10332
10333 * unexec.c:
10334 * s/vms.h:
10335 * s/usg5-4-2.h:
10336 * s/sol2-5.h:
10337 * s/freebsd.h:
10338 * s/darwin.h: Remove dead code.
10339
10340 * m/template.h:
10341 * m/sparc.h:
10342 * m/mips.h:
10343 * m/m68k.h:
10344 * m/iris4d.h:
10345 * m/intel386.h:
10346 * m/ibms390x.h:
10347 * m/ibms390.h:
10348 * m/ia64.h:
10349 * m/hp800.h:
10350 * m/arm.h:
10351 * m/amdx86-64.h: Remove dead code and references to unused
10352 and compiler defined symbols.
10353
10354 * unexmips.c:
10355 * unexelf.c: Remove references to desupported systems.
10356
10357 * m/powermac.h: Remove file, it is now identical to m/macppc.h.
10358
10359 * m/powermac.h: Remove boilerplate comments.
10360 (NO_REMAP): Remove unused definition.
10361
10362 * m/macppc.h (UNEXEC, NO_TERMIO): Don't define, the s/ files
10363 define them.
10364
103652008-07-10 Kenichi Handa <handa@m17n.org>
10366
10367 * xfont.c (xfont_open): Log the reason of failure.
10368
103692008-07-09 Stefan Monnier <monnier@iro.umontreal.ca>
10370
10371 * fontset.c (fontset_get_font_group):
10372 * font.c (font_check_otf): Specify argument types.
10373
103742008-07-09 Kenichi Handa <handa@m17n.org>
10375
10376 * coding.c (detect_coding_utf_8): Set detect_info->found only when
10377 non-ASCII char is found.
10378
10379 * fontset.c (fontset_compare_rfontdef): Fix plus/minus.
10380 (reorder_font_vector): Change the arg preferred_family to font.
10381 Prefer the spec matching with font.
10382 (fontset_get_font_group): New function.
10383 (fontset_find_font): Change the format of an element of a realized
10384 fontset. Use fontset_get_font_group.
10385 (fontset_font): Try the current fontset, the default fontset, the
10386 fallbacks of the current fontset, and the fallbacks of the default
10387 fontset in this order.
10388 (face_for_char): Delete the shortcut to use the current font.
10389 (fontset_from_font): Don't set fonts for Latin in the fontset.
10390
10391 * font.h (font_make_object, font_match_p): Adjust prototypes.
10392
10393 * ftfont.h [FT_BDF_H]: Include FT_BDF_H.
10394
10395 * font.c (font_make_object): New arg entity and pixelsize.
10396 (font_check_otf_features, font_check_otf): New functions.
10397 (font_match_p): Check :lang, :script, and :otf properties.
10398
10399 * xfont.c (xfont_open): Adjust it for the change of
10400 font_make_object.
10401 (xfont_text_extents): Fix initial setting of metrics.
10402
10403 * ftfont.c (struct ftfont_info): New member index, delete member
10404 fc_charset_idx. Make the member order compatible with struct
10405 xftfont_info.
10406 (fc_charset_table): Change charset names to registry names.
10407 (ftfont_pattern_entity): Delete the args registry and
10408 fc_charset_idx. Change the value of :font-entity property
10409 to (FONTNAME . INDEX). Always set :registry property to
10410 `iso10646-1'.
10411 (struct ftfont_cache_data): New struct.
10412 (ftfont_lookup_cache): New arg for_face.
10413 (ftfont_get_fc_charset, ftfont_get_otf): New functions.
10414 (ftfont_driver): Set the member otf_capability.
10415 (ftfont_get_charset): Adjust it for the change of
10416 fc_charset_table.
10417 (OTF_TAG_SYM): New macro.
10418 (ftfont_spec_pattern): Delete the arg fc_charset_idx. Adjust it
10419 for the change of fc_charset_table.
10420 (ftfont_list): Adjust it for the change of ftfont_spec_pattern and
10421 ftfont_pattern_entity. Add FC_INDEX to objset.
10422 (ftfont_match): Adjust it for the change of ftfont_spec_pattern
10423 and ftfont_pattern_entity.
10424 (ftfont_open): Adjust it for the change of ftfont_lookup_cache,
10425 font_make_object, struct ftfont_info.
10426 (ftfont_has_char): Use ftfont_get_fc_charset.
10427 (ftfont_otf_features, ftfont_otf_capability): New functions.
10428 (ftfont_shape): Use ftfont_get_otf.
10429 (ftfont_text_extents): Fix initial setting of metrics.
10430
10431 * xftfont.c (struct xftfont_info): New member ft_size. Make the
10432 member order compatible with struct ftfont_info.
10433 (xftfont_open): Add FC_CHARSET to the pattern. Set
10434 xftfont_info->ft_size. Don't unlock the face. Check BDF
10435 properties if appropriate.
10436 (xftfont_close): Unlock the face.
10437 (xftfont_anchor_point, xftfont_shape): Deleted.
10438 (syms_of_xftfont): Don't set members anchor_point and shape of
10439 xftfont_driver.
10440
10441 * w32uniscribe.c (uniscribe_open): Adjust it for the change of
10442 font_make_object.
10443
10444 * w32font.c (w32font_open): Adjust it for the change of
10445 font_make_object.
10446 (w32font_open_internal): Don't set properties of font_object here.
10447
104482008-07-08 Chong Yidong <cyd@stupidchicken.com>
10449
10450 * macfns.c (x_create_tip_frame):
10451 * w32fns.c (x_create_tip_frame):
10452 * xfns.c (x_create_tip_frame): Pass parameter argument to
10453 face-set-after-frame-default.
10454
10455 * xfaces.c (Finternal_merge_in_global_face): Save merged
10456 attributes for the default face back into the face vector.
10457
104582008-07-08 Andreas Schwab <schwab@suse.de>
10459
10460 * fontset.h: Declare fontset_from_font. Don't declare
10461 new_fontset_from_font and fontset_from_font_name.
10462 * xterm.c: Include "fontset.h".
10463 * Makefile.in (xterm.o): Update dependencies.
10464
104652008-07-08 Glenn Morris <rgm@gnu.org>
10466
10467 * m/sparc.h: Define __sparc__ rather than sparc. (Bug#507.)
10468 * alloc.c, ecrt0.c: Use __sparc__ rather than sparc.
10469
104702008-07-07 Chong Yidong <cyd@stupidchicken.com>
10471
10472 * frame.c (Qinhibit_face_set_after_frame_default): Var deleted.
10473 (x_set_frame_parameters): Don't bind it.
10474
104752008-07-07 Juanma Barranquero <lekktu@gmail.com>
10476
10477 * w32fns.c (map_w32_filename): Declare extern.
10478
104792008-07-07 Jason Rumney <jasonr@gnu.org>
10480
10481 * w32term.c (WS_EX_LAYERED): Define if not already.
10482
104832008-07-06 Chong Yidong <cyd@stupidchicken.com>
10484
10485 * xfaces.c (set_font_frame_param): Don't try to set the font
10486 parameter if it is still unspecified in the lface.
10487
104882008-07-05 Chong Yidong <cyd@stupidchicken.com>
10489
10490 * xfaces.c (Finternal_merge_in_global_face): Don't realize default
10491 face if it didn't already exist.
10492
10493 * xdisp.c (try_window_id): Give up if word-wrapping is on.
10494
104952008-07-05 Andreas Schwab <schwab@suse.de>
10496
10497 * xdisp.c (get_it_property): Move out of HAVE_WINDOW_SYSTEM section.
10498
104992008-07-05 Chong Yidong <cyd@stupidchicken.com>
10500
10501 * xdisp.c (IT_OVERFLOW_NEWLINE_INTO_FRINGE): Turn it off if
10502 word-wrapping.
10503 (IT_DISPLAYING_WHITESPACE): New macro.
10504 (move_it_in_display_line_to): Handle MOVE_TO_X requests properly
10505 when word-wrapping. Simplify word-wrapping logic. Use correct
10506 pixel positions when saving copies of the iterator.
10507 (display_line): Use proper wrap point if the last character on a
10508 line was preceded by whitespace.
10509
105102008-07-04 Stefan Monnier <monnier@iro.umontreal.ca>
10511
10512 * Makefile.in (${etc}DOC): Depend on ${lisp} rather than ${shortlisp}.
10513
105142008-07-04 Kenichi Handa <handa@m17n.org>
10515
10516 * fns.c (Fstring_to_unibyte): Delete the arg ACCEPT-LATIN-1.
10517
10518 * lisp.h: EXFUN adjusted for the change of Fstring_to_unibyte.
10519
105202008-07-02 Jason Rumney <jasonr@gnu.org>
10521
10522 * xfns.c (syms_of_xfns): Only define x-select-font when both
2ae37cf0 10523 HAVE_FREETYPE and USE_GTK.
aac0c6e3
MR
10524
10525 * xdisp.c (next_element_from_display_vector): Move assignment out
10526 of if statement.
10527
105282008-07-02 Toru Tsuneyoshi <t_tuneyosi@hotmail.com>
10529
10530 * lisp.h (Qdelete_file, Qdelete_directory): Declare extern.
10531
10532 * fileio.c (delete_by_moving_to_trash, Qmove_file_to_trash): New vars.
10533 (syms_of_fileio): Initialize and export them.
10534 (Fdelete_directory, Fdelete_file): Optionally delete via trash.
10535
10536 * w32fns.c (FOF_NO_CONNECTED_ELEMENTS): Define if not already.
10537 (Fsystem_move_file_to_trash): New function.
10538 (syms_of_w32fns): Export it to lisp.
10539
105402008-07-01 Jason Rumney <jasonr@gnu.org>
10541
10542 * w32font.c (w32font_text_extents): Don't count overhang as part
10543 of width.
10544
105452008-06-30 Miles Bader <miles@gnu.org>
10546
10547 * dispextern.h (struct glyph, struct it, struct iterator_stack_entry):
10548 Add `avoid_cursor_p' field.
10549
10550 * xdisp.c (push_it, pop_it): Save/restore avoid_cursor_p field.
10551 (set_cursor_from_row): Skip glyphs with avoid_cursor_p set.
10552 (append_glyph, append_composite_glyph, produce_image_glyph)
10553 (append_stretch_glyph): Initialize avoid_cursor_p.
10554 (get_it_property): Rename from `get_line_height_property'.
10555 (x_produce_glyphs): Use get_it_property.
10556 (handle_line_prefix, push_display_prop): New functions.
10557 (display_line, move_it_in_display_line_to): Handle line/wrap prefixes.
10558 (Vwrap_prefix, Qwrap_prefix, Vline_prefix, Qline_prefix):
10559 New variables.
10560 (syms_of_xdisp): Initialize them.
10561
105622008-06-30 Kenichi Handa <handa@m17n.org>
10563
10564 * xftfont.c (xftfont_open): Don't call FcConfigSubstitute and
10565 XftDefaultSubstitute (they are called in XftFontMatch).
10566 (xftfont_open): Fix args to ftfont_font_format.
10567
10568 * ftfont.c (fc_charset_table): New member lang.
10569 (ftfont_resolve_generic_family): New arg pattern.
60612c8f 10570 (ftfont_spec_pattern): Check fc_charset_table[]->lang.
aac0c6e3
MR
10571 (ftfont_list): Call ftfont_resolve_generic_family with `pattern'.
10572 (ftfont_open): Fix args to ftfont_font_format.
10573 (ftfont_font_format): New arg filename.
10574
105752008-06-30 Chong Yidong <cyd@stupidchicken.com>
10576
10577 * xfaces.c (Finternal_merge_in_global_face): If default face was
10578 modified, realize it again. Update the font face attribute.
10579
105802008-06-29 Jason Rumney <jasonr@gnu.org>
10581
10582 * w32term.c (x_set_frame_alpha): Fix logic.
10583
105842008-06-29 Kenichi Handa <handa@m17n.org>
10585
10586 * fontset.c (Finternal_char_font): Return font-object instead of
10587 font-name.
10588
10589 * composite.c (get_composition_id): Fix the width calculation for TAB.
10590
105912008-06-29 Stefan Monnier <monnier@iro.umontreal.ca>
10592
10593 * indent.c (Fvertical_motion): Properly handle float column arg.
10594
105952008-06-28 Jason Rumney <jasonr@gnu.org>
10596
10597 * w32term.c (pfnGetFontUnicodeRanges): Remove unused function pointer.
10598 (pfnSetLayeredWindowAttributes): New function pointer.
10599 (w32_initialize): Initialize it when supported.
10600 (x_set_frame_alpha): New function.
10601
10602 * w32fns.c (Fx_create_frame): Initialize frame parameter `alpha'.
10603 (w32_frame_parm_handlers): Set alpha handler.
10604
10605 * frame.c (x_set_alpha) [HAVE_NTGUI]: Call x_set_frame_alpha.
10606
106072008-06-27 Jason Rumney <jasonr@gnu.org>
10608
10609 * w32fns.c (x_to_w32_font, w32_to_x_font, x_to_w32_weight)
10610 (w32_to_x_weight, w32_to_all_x_charsets): Remove obsolete functions.
10611 (w32_to_x_charset, x_to_w32_charset)
10612 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
10613 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
10614 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
10615 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
10616 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
10617 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
10618 (Qw32_charset_mac, Vw32_charset_info_alist): Move to w32font.c.
10619 (Qw32_charset_unicode): Remove.
10620 (syms_of_w32fns): Update for above changes.
10621
10622 * w32font.c (w32_to_x_charset, x_to_w32_charset)
10623 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
10624 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
10625 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
10626 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
10627 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
10628 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
10629 (Qw32_charset_mac, Vw32_charset_info_alist): Move from w32fns.c.
10630 (syms_of_w32font): Update for above changes.
10631
106322008-06-27 Dan Nicolaescu <dann@ics.uci.edu>
10633
10634 * s/usg5-4.h: Fix previous change: keep the correct branch of a
10635 removed #if.
10636 (USG_SHARED_LIBRARIES): Remove duplicate definition.
10637
106382008-06-26 Juanma Barranquero <lekktu@gmail.com>
4e2af782 10639 Eli Zaretskii <eliz@gnu.org>
aac0c6e3
MR
10640
10641 * makefile.w32-in (LOCAL_FLAGS):
10642 Don't include WINDOWSNT, DOS_NT and _UCHAR_T.
10643
10644 * sysdep.c (_spawnlp, _getpid):
10645 Declare with explicit _cdecl instead of _CRTAPI1.
10646
10647 * editfns.c (Fget_internal_run_time):
10648 Check for WINDOWSNT with #ifdef, not #if.
10649
106502008-06-26 Jason Rumney <jasonr@gnu.org>
10651
10652 * w32font.h (FONT_HANDLE, FONT_TEXTMETRIC): New macros.
10653
10654 * w32term.c (x_draw_glyph_string_foreground)
10655 (x_draw_composite_glyph_string_foreground): Sync with xterm.c.
10656 Use FONT_HANDLE macro.
10657 (x_draw_glyph_string): Use FONT_TEXTMETRIC macro.
10658
10659 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
10660 (uniscribe_encode_char): Use FONT_HANDLE macro.
10661
10662 * w32font.c (Fx_select_font): Use FONT_HANDLE macro.
10663 (w32font_text_extents): Use precast w32_font.
10664 (w32font_close): Free cached metrics.
10665 (w32font_open_internal): Allocate space for name on stack.
10666
106672008-06-26 Chong Yidong <cyd@stupidchicken.com>
10668
10669 * xdisp.c (extend_face_to_end_of_line): Fix last change.
10670
106712008-06-26 Jason Rumney <jasonr@gnu.org>
10672
10673 * w32term.h (FONT_AVG_WIDTH): Remove obsolete macro.
10674 (CP_8BIT, CP_UNICODE, CP_UNKNOWN): Remove obsolete constants.
10675
106762008-06-26 Juanma Barranquero <lekktu@gmail.com>
10677
10678 * Makefile.in (SOME_MACHINE_OBJECTS): Remove w32bdf.o.
10679
106802008-06-26 Jason Rumney <jasonr@gnu.org>
10681
10682 * w32bdf.c, w32bdf.h: Remove obsolete files.
10683
10684 * makefile.w32-in: Remove refs to w32bdf.h and w32bdf.c.
10685
10686 * w32gui.h: Don't include w32bdf.h.
10687 (XCharStruct, enum w32_char_font_type, W32FontStruct):
10688 Remove obsolete font support.
10689
10690 * w32font.h (struct w32font_info): Remove compat_w32_font.
10691 Add hfont member.
10692 (FONT_COMPAT): Remove obsolete macro.
10693
10694 * w32font.c (w32font_close): Remove compat code. Delete hfont member.
10695 (w32font_encode_char, w32font_text_extents): Use new hfont member.
10696 (w32font_open_internal): Remove compat code. Set new hfont member.
10697 (Fx_select_font): Use new hfont member.
10698
10699 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
10700 (uniscribe_encode_char): Use new hfont member.
10701
10702 * w32term.c (x_draw_glyph_string_foreground)
10703 (x_draw_composite_glyph_string_foreground): Use new hfont member.
10704 (x_draw_glyph_string): Use metrics in w32font_info.
10705
107062008-06-26 Kenichi Handa <handa@m17n.org>
10707
10708 * xdisp.c (handle_auto_composed_prop): Fix for the terminal case.
10709
107102008-06-26 Dan Nicolaescu <dann@ics.uci.edu>
10711
10712 * unexnext.c:
10713 * m/ews4800.h:
10714 * m/hp9000s300.h:
10715 * m/ibm370aix.h:
10716 * m/mips-siemens.h:
10717 * m/ncr386.h:
10718 * m/next.h:
10719 * m/pmax.h:
10720 * m/powerpcle.h:
10721 * m/tandem-s2.h:
10722 * s/386bsd.h:
10723 * s/bsd386.h:
10724 * s/bsd4-1.h:
10725 * s/bsd4-2.h:
10726 * s/bsdos2-1.h:
10727 * s/bsdos2.h:
10728 * s/bsdos3.h:
10729 * s/bsdos4.h:
10730 * s/nextstep.h:
10731 * s/ultrix4-3.h:
10732 * s/usg5-0.h:
10733 * s/usg5-2-2.h:
10734 * s/usg5-2.h:
10735 * s/usg5-4-3.h:
10736 * s/ux4800.h:
10737 * s/uxpds.h:
10738 * s/uxpv.h: Remove support for obsolete systems.
10739 * s/hpux.h, s/hpux10.h, s/hpux8.h, s/hpux9.h, s/hpux9shr.h:
8f3a3ac2 10740 Remove, insert contents in s/hpux10-20.h.
aac0c6e3
MR
10741 * s/aix3-1.h, s/aix3-2-5.h, s/aix3-2.h, s/aix4-1.h, s/aix4.h:
10742 Remove, insert contents in s/aix4-2.h.
10743 * s/usg5-3.h: Remove, insert contents in s/usg5-4.h.
10744 * s/bsd4-3.h: Rename to ...
10745 * s/bsd-common.h: ... this.
10746 * data.c:
10747 * doc.c:
10748 * ecrt0.c:
10749 * emacs.c:
10750 * fileio.c:
10751 * floatfns.c:
10752 * keyboard.c:
10753 * mem-limits.h:
10754 * print.c:
10755 * process.c:
10756 * sysdep.c:
10757 * syssignal.h:
10758 * systty.h:
10759 * syswait.h:
10760 * term.c:
10761 * unexec.c:
10762 * unexelf.c:
10763 * unexhp9k800.c:
10764 * m/hp800.h:
10765 * m/ibmrs6000.h:
10766 * m/mips.h:
10767 * m/vax.h:
10768 * s/darwin.h:
10769 * s/freebsd.h:
10770 * s/gnu.h:
10771 * s/ms-w32.h:
10772 * s/msdos.h:
10773 * s/netbsd.h:
10774 * s/template.h: Remove references to obsolete variables.
10775
10776 * Makefile.in: Add dependencies for all unexec files.
10777 (admindir): Remove unused variable.
10778 (UNEXEC_SRC): Remove references.
10779
107802008-06-25 Chong Yidong <cyd@stupidchicken.com>
10781
10782 * xfns.c (x_default_font_parameter): If Xft is available, first
10783 try Monospace-12 for the default font.
10784
107852008-06-25 Jason Rumney <jasonr@gnu.org>
10786
10787 * xdisp.c (get_glyph_face_and_encoding): Encode invalid glyphs as 0.
10788
107892008-06-25 Stefan Monnier <monnier@iro.umontreal.ca>
10790
10791 * bytecode.c (Fbyte_code): Disable debugging code that doesn't compile.
10792
10793 * buffer.c (syms_of_buffer): Remove default-word-wrap.
10794
107952008-06-25 Juanma Barranquero <lekktu@gmail.com>
10796
10797 * xdisp.c (syms_of_xdisp) <truncate-partial-width-windows>: Doc fix.
10798 <scroll-conservatively>: Fix typo in docstring.
10799
10800 * xselect.c (Fx_send_client_event): Doc fix.
10801
108022008-06-25 Kenichi Handa <handa@m17n.org>
10803
10804 * xfaces.c (Fx_list_fonts): Call Flist_fonts with the arg PREFER.
10805
10806 * font.c (font_parse_fcname): Remove unused variables.
10807 (font_sort_entites): Delete the arg SPEC. Caller changed.
10808 Fix for the case of ! best_only.
10809 (font_delete_unmatched): Check DPI and AVGWIDTH too.
10810
10811 * lisp.h (Fstring_to_unibyte): EXFUN it.
10812
10813 * character.h (str_to_unibyte): Extern it.
10814
10815 * character.c (str_to_unibyte): New function.
10816
10817 * fns.c (Fstring_to_unibyte): New function.
10818 (syms_of_fns): Defsubr it.
10819
108202008-06-24 Kenichi Handa <handa@m17n.org>
10821
10822 * font.c (font_score): Even if the PIXEL_SIZE is the same, check
10823 DPI too.
10824 (font_sort_entites): Setup prefer_prop[FONT_DPI_INDEX] too.
10825
108262008-06-24 Andreas Schwab <schwab@suse.de>
10827
10828 * Makefile.in (${lispsource}loaddefs.el): Rename from
10829 ../lisp/loaddefs.el.
10830 (bootstrap-clean): Do what distclean does but don't remove
10831 Makefile.
10832 (distclean): Depend on bootstrap-clean and remove Makefile.
10833
108342008-06-24 Chong Yidong <cyd@stupidchicken.com>
10835
10836 * buffer.h (struct buffer): New member word_wrap.
10837
10838 * buffer.c (syms_of_buffer): New variables default-word-wrap and
10839 word-wrap.
10840 (init_buffer_once): Initialize them.
10841
10842 * dispextern.h (struct it): Replace bool truncate_lines_p with a
10843 line_wrap enum possessing three possible values.
10844
10845 * termopts.h: Replace truncate_partial_width_windows with
10846 Vtruncate_partial_width_windows.
10847
10848 * dispnew.c (direct_output_for_insert): Avoid direct output when
10849 inserting a space with word wrap on.
10850
10851 * indent.c (compute_motion): Obey integer values of
10852 truncate-partial-width-windows.
10853
10854 * xdisp.c (Vtruncate_partial_width_windows): New Lisp_Object,
10855 replacing truncate_partial_width_windows.
10856 (init_iterator): If Vtruncate_partial_width_windows is an integer,
10857 truncate only if the window width is below that integer.
10858 (start_display, resize_mini_window, produce_stretch_glyph)
10859 (display_string, move_it_in_display_line_to): Use line_wrap.
10860 (back_to_previous_visible_line_start, reseat_1): Reset
10861 string_from_display_prop_p.
10862 (display_line): Extend default face to end of line when wrapping.
10863
108642008-06-24 Kim F. Storm <storm@cua.dk>
10865
10866 * xdisp.c (display_line, move_it_in_display_line_to): Add ability
10867 to wrap continued lines at word boundaries.
10868
108692008-06-24 Jason Rumney <jasonr@gnu.org>
10870
10871 * font.c (Ffont_face_attributes): Multiply pixel size before point
10872 conversion to avoid multiplying rounding error.
10873
108742008-06-23 Jason Rumney <jasonr@gnu.org>
10875
10876 * w32term.c (x_draw_glyph_string_background)
10877 (x_draw_glyph_string): Remove old bdf font code.
10878
10879 * w32term.h (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): Remove.
10880
108812008-06-22 Kenichi Handa <handa@m17n.org>
10882
10883 * font.c (font_find_for_lface): Try the adstyle specified in
10884 the property of LFACE_FONT of LFACE (if any).
10885
108862008-06-21 Seiji Zenitani <zenitani@mac.com>
4e2af782 10887 Ryo Yoshitake <ryo@shiftmode.net>
aac0c6e3
MR
10888
10889 * xterm.c (x_set_frame_alpha): Add x_catch_errors for bug#437.
10890
108912008-06-22 Stefan Monnier <monnier@iro.umontreal.ca>
10892
10893 * Makefile.in (${lisp} ${SOME_MACHINE_LISP}, ../lisp/loaddefs.el):
10894 Use $(BOOTSTRAPEMACS) rather than witness-emacs.
10895 (bootstrap-emacs${EXEEXT}): Merge witness-emacs into it.
10896 (witness-emacs): Remove.
10897 (lisp, shortlisp): Move loaddefs.el earlier.
10898 (mostlyclean): Forget about witness-emacs.
10899
109002008-06-22 Glenn Morris <rgm@gnu.org>
10901
10902 * Makefile.in (witness-emacs): Depend on temacs${EXEEXT}.
10903 (.SUFFIXES): Declare .el.elc as a suffix rule, for non-GNU makes.
10904
109052008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
10906
10907 * Makefile.in (PRECOMP): Remove.
10908 (${lisp} ${SOME_MACHINE_LISP}): Remove pseudo dependency on PRECOMP.
10909 (witness-emacs): Run `compile-first'.
10910 (.el.elc): Use the new compile-onefile target.
10911
109122008-06-21 Kenichi Handa <handa@m17n.org>
10913
10914 * xftfont.c (xftfont_open): Handle QCembolden only when
10915 FC_EMBOLDEN is defined.
10916
109172008-06-21 Andreas Schwab <schwab@suse.de>
10918
10919 * Makefile.in (witness-emacs): Use ../lisp, not $(lispsource).
10920 (.el.elc): Likewise.
10921
109222008-06-21 Miles Bader <miles@gnu.org>
10923
10924 * Makefile.in (../lisp/loaddefs.el): Build autoloads in the lisp
10925 build dir, not the lisp source dir.
10926
109272008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
10928
10929 * Makefile.in (emacs${EXEEXT}): Link the new emacs to bootstrap-emacs.
10930 (bootstrapclean): Remove.
10931 (.el.elc): New rule.
10932 (PRECOMP): New var.
10933 (../lisp/subdirs.el): Remove.
10934 (bootstrap-emacs${EXEEXT}): Remove subdirs.el and charpro.el dependency.
10935 (witness-emacs): New target.
10936 (mostlyclean): Remove witness-emacs as well.
10937 (../lisp/loaddefs.el, ${lisp} ${SOME_MACHINE_LISP}):
10938 Add witness-emacs dependency.
10939
109402008-06-20 Chong Yidong <cyd@stupidchicken.com>
10941
10942 * font.c (Ffont_face_attributes): Omit key-attribute pairs not
10943 defined by the font.
10944
109452008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
10946
10947 * Makefile.in (emacs${EXEEXT}): Depend on the machine-specific files.
10948 (bootstrap-clean): New target that keeps TAGS around.
10949 (../lisp/subdirs.el, ../lisp/loaddefs.el): New targets.
10950 (bootstrap-emacs${EXEEXT}): Depend on subdirs.el.
10951
109522008-06-20 Jason Rumney <jasonr@gnu.org>
10953
10954 * w32fns.c, w32term.c, w32term.h, w32gui.h [OLD_FONT]:
10955 Remove obsolete font code.
10956
10957 * w32font.c (font_matches_spec): Use csb bitfield from font signature
10958 to determine language support.
10959
109602008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
10961
10962 * sysdep.c (cfsetspeed): New fun extracted from the code.
10963 (cfmakeraw): Move before first use.
10964
109652008-06-20 Angelo Graziosi <angelo.graziosi@alice.it> (tiny change)
10966
10967 * sysdep.c (cfmakeraw): Provide fallback implementation.
10968 (serial_configure): Provide fallback implementation of cfsetspeed.
10969
109702008-06-20 Kenichi Handa <handa@m17n.org>
10971
10972 * xftfont.c (xftfont_open): Add FOUNDRY, SPACING, DPI, SCALABLE to
10973 the pattern.
10974
10975 * fontset.c (fontset_from_font): Copy font_spec before changing
10976 the elements.
10977
10978 * xfns.c (x_default_font_parameter): Try "monospace-12" too.
10979
109802008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
10981
10982 * w32fns.c, xfns.c (x_default_font_parameter): Only set `font-param'
10983 for explicit `font' parameters.
10984
10985 * frame.c (x_set_font): Remove unexplained call to fix inf-recursion.
10986
109872008-06-19 Kenichi Handa <handa@m17n.org>
10988
10989 * frame.c: Include <ctype.h>.
10990 (x_set_font_backend): Allow spacing characters in the X resource
10991 for FontBackend.
10992
109932008-06-19 Stefan Monnier <monnier@iro.umontreal.ca>
10994
10995 * w32fns.c, xfns.c (Qfont_param): New var.
10996 (syms_of_w32fns): Initialize it.
10997 (x_default_font_parameter): Record explicit `font' into
10998 `font-parameter'.
10999
110002008-06-18 Kenichi Handa <handa@m17n.org>
11001
11002 * font.c (font_parse_xlfd): Fix previous change.
11003 (font_parse_fcname): Don't use :fc-unknown-spec.
11004 (FRAME_X_DISPLAY_INFO): Be sure to have at least 1 pixel height.
11005 (Fcopy_font_spec): Preserve the order of elements in FONT_EXTRA.
11006 (font_add_log): Prepend the driver name to the resulting fonts.
11007
11008 * ftfont.c (ftfont_pattern_entity): New arg extra. Caller changed.
11009 (ftfont_spec_pattern): Don't check QCfc_unknown_spec and QCname.
11010 (ftfont_list) [FC_FONTFORMAT]: Include FC_FONTFORMAT in objset.
11011
11012 * xftfont.c (QChinting , QCautohint, QChintstyle, QCrgba)
11013 (QCembolden): New variables.
11014 (syms_of_xftfont): DEFSYM them.
11015 (xftfont_open): Call XftFontMatch. Don't trust the result of
11016 XftTextExtents8 if the pixel_size is less than 5.
11017
110182008-06-18 Andreas Schwab <schwab@suse.de>
11019
11020 * font.c (Ffont_face_attributes): Only define if HAVE_WINDOW_SYSTEM.
11021 (syms_of_font): Only defsubr if HAVE_WINDOW_SYSTEM.
11022
110232008-06-18 Jason Rumney <jasonr@gnu.org>
11024
11025 * w32font.c (w32font_list, w32font_match): Add logging.
11026
11027 * w32uniscribe.c (uniscribe_list, uniscribe_match): Add logging.
11028
110292008-06-17 Chong Yidong <cyd@stupidchicken.com>
11030
11031 * font.c (font_parse_fcname): Store divider characters for
11032 unknown-spec list. For known key symbols, intern using correct
11033 symbol name.
11034
110352008-06-17 Kenichi Handa <handa@m17n.org>
11036
11037 * xfaces.c (realize_default_face): If the frame is not on window
11038 system, set the fontset of face to nil.
11039
110402008-06-17 Naohiro Aota <nao.aota@gmail.com> (tiny change)
11041
11042 * fontset.c (fontset_pattern_regexp): Escape some reg-expr characters.
11043
110442008-06-16 Juanma Barranquero <lekktu@gmail.com>
11045
11046 * dispextern.h (lookup_non_ascii_face, split_font_name_into_vector)
11047 (build_font_name_from_vector): Delete externs.
11048
11049 * xfaces.c (struct font_name): Don't declare.
11050
110512008-06-16 Stefan Monnier <monnier@iro.umontreal.ca>
11052
11053 * font.c (font_unparse_gtkname): Use EQ to compare Lisp_Objects.
11054
110552008-06-16 Chong Yidong <cyd@stupidchicken.com>
11056
11057 * font.c (font_parse_fcname): Fix handling of unknown-spec string.
11058
110592008-06-16 Juanma Barranquero <lekktu@gmail.com>
11060
11061 * font.c (Ffont_spec): Fix usage in docstring.
11062 (Ffont_face_attributes): Doc fix.
11063
110642008-06-16 Andreas Schwab <schwab@suse.de>
11065
11066 * font.c (Ffont_face_attributes): Fix definition.
11067
110682008-06-16 Jason Rumney <jasonr@gnu.org>
11069
11070 * font.h (font_style_symbolic_from_value): Remove.
11071
11072 * font.c (font_style_symbolic_from_value): Remove.
11073 (font_style_symbolic): Revert to pre 2008-06-13 version.
11074
11075 * w32font.c (w32_to_fc_weight): New function.
11076 (w32font_full_name, logfont_to_fcname): Use it.
11077
110782008-06-16 Kenichi Handa <handa@m17n.org>
11079
11080 * font.c (font_check_object): Delete it.
11081 (font_clear_cache): Check if a font-object is alive.
11082 (font_open_entity): Likewise. Set FONT_OBJLST_INDEX of a
11083 font-object to nil.
11084 (font_close_object): Don't check FONT_CLOSE_OBJECT.
11085 (font_at): Don't call font_check_object.
11086 (Ffont_get): Return a symbol for :weight, :slant, and :width.
11087
110882008-06-16 Katsumi Yamaoka <yamaoka@jpl.org>
11089
11090 * puresize.h (BASE_PURESIZE): Increase to 1230000.
11091
110922008-06-16 Chong Yidong <cyd@stupidchicken.com>
11093
11094 * font.c (font_parse_fcname): Correctly parse KEY=VAL values.
11095
110962008-06-15 Chong Yidong <cyd@stupidchicken.com>
11097
11098 * font.c (font_parse_fcname): Only one decimal point.
11099 (font_unparse_fcname): Handle data in family and foundry indices
11100 as symbols, not strings.
11101 (font_unparse_gtkname, Ffont_face_attributes): New functions.
11102
11103 * xfns.c (Fx_select_font): Give GTK font dialog the default font name.
11104
11105 * font.h (font_unparse_gtkname): Add prototype.
11106
111072008-06-15 Naohiro Aota <nao.aota@gmail.com> (tiny change)
11108
11109 * fontset.c (fontset_pattern_regexp): Escape `+' characters in pattern.
11110
111112008-06-15 Andreas Schwab <schwab@suse.de>
11112
11113 * font.c (font_update_drivers): Fix crash when no drivers match.
11114
111152008-06-15 Stefan Monnier <monnier@iro.umontreal.ca>
11116
11117 * xfns.c (Fx_create_frame): internal-border-width default to 0 for Gtk.
11118 * gtkutil.c (xg_create_frame_widgets): Don't set internal_border_width.
11119
111202008-06-14 Stefan Monnier <monnier@iro.umontreal.ca>
11121
11122 * xdisp.c (syms_of_xdisp): Default underline-minimum-offset to 1.
11123
111242008-06-13 Stefan Monnier <monnier@iro.umontreal.ca>
11125
11126 * process.c (Fserial_process_configure, Fprocess_send_eof):
11127 Use EQ to compare Lisp_Objects.
11128
111292008-06-13 Jason Rumney <jasonr@gnu.org>
11130
11131 * w32fns.c (Fw32_select_font): Remove old font API function.
11132
11133 * w32font.c (logfont_to_fcname): New function.
11134 (Fx_select_font): New font dialog function compatible with
11135 GTK/fontconfig version.
11136
11137 * font.c (font_style_symbolic_from_value): New function.
11138 (font_style_symbolic): Use it.
11139
11140 * font.h (font_style_symbolic_from_value): Declare new function.
11141
111422008-06-13 Juanma Barranquero <lekktu@gmail.com>
11143
11144 * font.c (syms_of_font) <font-weight-table, font-slant-table>:
11145 <font-width-table>: Fix typos in docstrings.
11146
111472008-06-13 Daniel Engeler <engeler@gmail.com>
11148
11149 These changes add serial port access.
11150 * process.c: Add HAVE_SERIAL.
11151 (Fdelete_process, Fprocess_status, Fset_process_buffer)
11152 (Fset_process_filter, Fset_process_sentinel, Fprocess_contact)
11153 (list_processes_1, select_wrapper, Fstop_process)
11154 (Fcontinue_process, Fprocess_send_eof, kill_buffer_processes)
11155 (status_notify): Modify to handle serial processes.
11156 [HAVE_SERIAL] (Fserial_process_configure)
11157 [HAVE_SERIAL] (make_serial_process_unwind, Fmake_serial_process):
11158 New functions.
11159 * process.h (struct Lisp_Process): Add `type'.
11160 * sysdep.c [HAVE_TERMIOS] (serial_open, serial_configure):
11161 New functions.
11162 * w32.c (_sys_read_ahead, sys_read, sys_write): Modify to handle
11163 serial ports.
b71ac3dd 11164 (serial_open, serial_configure): New functions.
aac0c6e3
MR
11165 * w32.h: Add FILE_SERIAL.
11166 (struct _child_process): Add ovl_read, ovl_write.
11167
111682008-06-13 Kenichi Handa <handa@m17n.org>
11169
11170 * dispextern.h (enum lface_attribute_index): New member
11171 LFACE_FOUNDRY_INDEX.
11172
11173 * font.c (font_score): Delete arg alternate_families. Check only
11174 weight, slant, width, and size. Ignore the difference of alias
11175 style symbols.
11176 (font_sort_entites): Adjust for the above change. Reflect the
11177 order of font-driver to scores.
11178 (font_list_entities): Don't check alternate_familes here.
11179 (font_clear_prop): Handle foundry.
11180 (font_update_lface): Don't parse "foundry-family" form here.
11181 Handle FONT_FOUNDRY_INDEX.
11182 (font_find_for_lface): Likewise. Handle alternate families here.
11183 If registry is nil, try iso8859-1 and ascii-0.
11184 (font_open_for_lface): Pay attention to size in ENTITY.
11185 (font_open_by_name): Simplify by calling font_load_for_lface.
11186 (free_font_driver_list): Delete it.
11187 (font_update_drivers): Preserve the order of backends.
11188 (syms_of_font): Setting of sort_shift_bits adjusted for the change
11189 of font_score and font_sort_entites.
11190 (font_update_sort_order): Likewise.
11191
11192 * xfaces.c (LFACE_FOUNDRY): New macro.
11193 (check_lface_attrs): Check foundry.
11194 (set_lface_from_font): Don't parse "FOUNDRY-FAMILY" form.
11195 (merge_face_vectors): Check foundry.
11196 (merge_face_ref): Likewise.
11197 (Finternal_set_lisp_face_attribute): Likewise.
11198 (x_update_menu_appearance): Likewise.
11199 (Finternal_get_lisp_face_attribute): Likewise.
11200 (lface_hash): Likewise.
11201 (lface_same_font_attributes_p): Likewise.
11202 (x_supports_face_attributes_p): Likewise.
11203 (tty_supports_face_attributes_p): Likewise.
11204 (Finternal_set_alternative_font_family_alist): Intern strings.
11205 (Finternal_set_alternative_font_registry_alist): Downcase strings.
11206 (realize_default_face): Set LFACE_FOUNDRY (lface).
11207
11208 * xfns.c (Fx_create_frame, x_create_tip_frame): Register X
11209 font-driver at first.
11210
11211 * ftfont.c (ftfont_font_format) [! FC_FONTFORMAT]: Declare "int len;".
11212
112132008-06-12 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
11214
11215 * lread.c (Fload): Use xfree, not free on saved_doc_string.
11216
112172008-06-12 Jim Meyering <meyering@redhat.com>
11218
11219 Make unexec_free handle NULL the same way free does.
11220 * unexmacosx.c (unexec_free): Ignore a NULL argument.
11221
112222008-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
11223
11224 * character.h (CHAR_TO_BYTE_SAFE): New macro.
11225 * character.c (Fmultibyte_char_to_unibyte): Obey the docstring.
11226 * regex.c (RE_CHAR_TO_UNIBYTE): Use the new macro.
11227 (WEAK_ALIAS): Simplify.
11228 * syntax.c (skip_chars): Don't mark non-byte chars in the fastmap
11229 when searching a unibyte buffer.
11230
112312008-06-12 Chong Yidong <cyd@stupidchicken.com>
11232
11233 * xfns.c (Fx_select_font): Rename from x-font-dialog.
11234
112352008-06-12 Juanma Barranquero <lekktu@gmail.com>
11236
11237 * w32font.c: Include ctype.h.
11238
112392008-06-11 Jason Rumney <jasonr@gnu.org>
11240
11241 * w32font.c (w32font_encode_char): Detect missing glyphs that are
11242 misreported as space.
11243 (add_font_entity_to_list): Support unicode-bmp and unicode-sip
11244 as aliases for registry iso10646-1.
11245
112462008-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
11247
11248 * buffer.c (clone_per_buffer_values): Skip `name'.
11249
112502008-06-11 Chong Yidong <cyd@stupidchicken.com>
11251
11252 * font.c (font_parse_fcname): Fix last change; accept decimal
11253 points in font size.
11254
112552008-06-10 Jason Rumney <jasonr@gnu.org>
11256
11257 * w32uniscribe.c (add_opentype_font_name_to_list):
11258 Skip non unicode fonts.
11259
112602008-06-10 Chong Yidong <cyd@stupidchicken.com>
11261
11262 * xfns.c (Fx_font_dialog): New function.
11263
11264 * gtkutil.c (xg_dialog_response_cb): Rename from
11265 xg_file_response_callback.
11266 (pop_down_dialog): Rename from pop_down_file_dialog.
11267 (xg_get_file_name): Callers changed.
11268 (xg_get_font_name): New function.
11269
11270 * gtkutil.h (xg_get_font_name): Insert prototype.
11271
112722008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
11273
11274 * xdisp.c (underline_minimum_offset): Rename from xterm.c's
11275 x_underline_minimum_display_offset.
11276 (syms_of_xdisp): Declare it here rather than in xterm.c.
11277 * dispextern.h (underline_minimum_offset): Declare it.
11278 * w32term.c (x_draw_glyph_string): Use it.
11279 * xterm.c (x_underline_minimum_display_offset): Move to xdisp.c.
11280 (syms_of_xterm): Don't declare it any more.
11281 (x_draw_glyph_string): Adjust to the new name.
11282
8719abec 112832008-06-10 David De La Harpe Golden <david@harpegolden.net>
aac0c6e3
MR
11284
11285 * xterm.c (x_underline_minimum_display_offset): New var.
11286 (x_draw_glyph_string): Use it.
11287 (syms_of_xterm): Declare it.
11288
112892008-06-10 Chong Yidong <cyd@stupidchicken.com>
11290
11291 * font.c (font_parse_fcname): Accept GTK-style font names too.
11292
112932008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
11294
11295 * dired.c (file_name_completion): Don't return t if the match is exact
11296 but with different capitalization.
11297 * minibuf.c (Ftry_completion): Simplify.
11298
11299 * window.c (Vwindow_point_insertion_type): New var.
11300 (set_window_buffer): Use it.
11301 (syms_of_window): Init and export it to Lisp.
11302
113032008-06-10 Kenichi Handa <handa@m17n.org>
11304
11305 * font.h (font_intern_prop): Prototype adjusted.
11306
11307 * font.c (font_intern_prop): New arg force_symbol.
11308 (font_parse_xlfd, font_parse_fcname, font_parse_family_registry):
11309 Adjust for the change of font_intern_prop.
11310
11311 * ftfont.c (ftfont_pattern_entity):
11312 * w32font.c (add_font_name_to_list, w32_enumfont_pattern_entity)
11313 (w32_registry):
11314 * w32uniscribe.c (add_opentype_font_name_to_list): Adjust for
11315 the change of font_intern_prop.
11316
113172008-06-09 Juanma Barranquero <lekktu@gmail.com>
11318
11319 * w32menu.c (digest_single_submenu): Declare extern.
11320
113212008-06-09 Jason Rumney <jasonr@gnu.org>
11322
11323 * w32term.c (x_make_frame_visible): Use alternate restore flags.
11324
11325 * w32menu.c (Fx_popup_menu): Unwind protect while building menu.
11326 (parse_single_submenu): Remove.
11327 (digest_single_submenu): Remove.
11328 (syms_of_w32menu): Don't initialise variables that have moved
11329 to menu.c.
11330 (set_frame_menubar): Sync with version in xmenu.c.
11331 (w32_menu_show): Sync with xmenu_show in xmenu.c.
11332
11333 * menu.c (single_keymap_panes, push_menu_pane, push_menu_item):
11334 Make static again.
11335
113362008-06-09 Jason Rumney <jasonr@gnu.org>
11337
11338 Changes to w32 files related to the move of common menu code
11339 to menu.c on 2008-06-08 by Chong Yidong.
11340
11341 * menu.c [HAVE_NTGUI]: Include w32term.h, move widget related
11342 defs to w32gui.h.
11343 (single_keymap_panes, push_menu_item, push_menu_pane):
11344 Make globally visible.
11345
11346 * w32menu.c (enum button_type, widget_value, local_heap, local_alloc)
11347 (local_free, malloc_widget_value, free_widget_value)
11348 (MENU_ITEMS_ITEM_NAME, MENU_ITEMS_ITEM_ENABLE, MENU_ITEMS_ITEM_VALUE)
11349 (MENU_ITEMS_ITEM_EQUIV_KEY, MENU_ITEMS_ITEM_DEFINITION)
11350 (MENU_ITEMS_ITEM_TYPE, MENU_ITEMS_ITEM_SELECTED, MENU_ITEMS_ITEM_HELP)
11351 (MENU_ITEMS_ITEM_LENGTH, enum menu_item_idx): Remove defs.
11352 (menu_items, menu_items_allocated, menu_items_used)
11353 (menu_items_n_panes, menu_items_submenu_depth): Remove global vars.
11354 (init_menu_items, finish_menu_items, discard_menu_items)
11355 (grow_menu_items, push_submenu_start, push_submenu_end)
11356 (push_left_right_boundary, push_menu_pane, push_menu_item)
11357 (keymap_panes, single_keymap_panes, list_of_panes, list_of_items)
11358 (free_menubar_widget_tree_value, parse_single_submenu)
11359 (update_submenu_strings): Remove functions.
11360 (xmalloc_widget_value): Remove and declare extern.
11361
11362 * makefile.w32-in ($(SRC)/menu.$(O)): New target.
11363 (OBJ1): Build it.
11364
11365 * w32gui.h (widget_value, XtPointer, Boolean, enum button_type)
11366 (local_heap, local_alloc, local_free, malloc_widget_value)
11367 (free_widget_value): Define here.
11368
113692008-06-09 Kenichi Handa <handa@m17n.org>
11370
11371 * font.h (Qascii_0): Extern it.
11372
11373 * font.c (Qascii_0): New variable.
11374 (syms_of_font): DEFSYM it.
11375 (font_open_by_name): If the registry "iso8859-1" fails, try also
11376 "ascii-0".
11377
11378 * ftfont.c (ftfont_spec_pattern): Accept the registry `ascii-0'.
11379
113802008-06-08 Kenichi Handa <handa@m17n.org>
11381
11382 * .gdbinit (xfont): New command.
11383
113842008-06-08 Andreas Schwab <schwab@suse.de>
11385
11386 * menu.c [HAVE_X_WINDOWS]: Include "xterm.h".
11387 * Makefile.in (menu.o): Update dependencies.
11388
11389 * Makefile.in (obj): Always add menu.o.
11390 * emacs.c (main): Always call syms_of_menu.
11391 * keyboard.h: Remove extra #ifdef HAVE_X_WINDOW.
11392
113932008-06-08 Chong Yidong <cyd@stupidchicken.com>
11394
11395 * Makefile.in: Compile menu.c.
11396
11397 * lisp.h: Declare syms_of_menu.
11398
11399 * emacs.c (main): Call syms_of_menu.
11400
11401 * keyboard.h: Relocate platform-independent menu definitions from
11402 xmenu.c.
11403
11404 * menu.c: New file. Relocate platform-independent menu
11405 definitions from xmenu.c. Suggested by Adrian Robert.
11406
11407 * xmenu.c: Remove platform-independent menu definitions.
11408 (menu_items menu_items_inuse, menu_items_allocated)
11409 (menu_items_used, menu_items_n_panes)
11410 (menu_items_submenu_depth): Move to keyboard.h.
11411 (init_menu_items, finish_menu_items, unuse_menu_items)
11412 (discard_menu_items, restore_menu_items, save_menu_items)
11413 (grow_menu_items, push_submenu_start, push_submenu_end)
11414 (push_left_right_boundary, push_menu_pane, push_menu_item)
11415 (keymap_panes, single_keymap_panes, single_menu_item)
11416 (list_of_panes, list_of_items, find_and_call_menu_selection)
11417 (xmalloc_widget_value, free_menubar_widget_value_tree)
11418 (parse_single_submenu, digest_single_submenu)
11419 (update_submenu_strings): Move to menu.c.
11420
114212008-06-07 Stefan Monnier <monnier@iro.umontreal.ca>
11422
11423 * dispnew.c (Flast_nonminibuf_frame): Handle the NULL case.
11424
114252008-06-06 Miles Bader <miles@gnu.org>
11426
11427 * xdisp.c (x_produce_glyphs): Calculate tab width based on current
11428 face, not frame default.
11429
114302008-06-05 Martin Rudalics <rudalics@gmx.at>
11431
11432 * window.c (pop_up_windows, pop_up_frames)
11433 (display_buffer_reuse_frames, Vpop_up_frame_function)
11434 (Vdisplay_buffer_function, Veven_window_heights)
11435 (Vspecial_display_buffer_names, Vspecial_display_regexps)
11436 (Vspecial_display_function, Vsame_window_buffer_names)
11437 (Vsame_window_regexps, split_height_threshold)
11438 (Vsplit_window_preferred_function): Move those vars to window.el.
11439 (display_buffer_1, Fspecial_display_p, Fsame_window_p)
11440 (Fdisplay_buffer): Move those functions to window.el.
11441 (syms_of_window): Remove corresponding declarations.
11442 (display_buffer): New function.
11443 (temp_output_buffer_show, Fother_window_for_scrolling): Use it.
11444 * dispnew.c (Flast_nonminibuf_frame): New function.
11445 * buffer.c (Fpop_to_buffer): Move to window.el.
11446
114472008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
11448
11449 * data.c (set_internal): Fix up call to let_shadows_buffer_binding_p.
11450
114512008-06-05 Kenichi Handa <handa@m17n.org>
11452
11453 * coding.c (detect_coding): Fix previous change.
11454 (detect_coding_system): Likewise.
11455
114562008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
11457
11458 * character.h (MAKE_CHAR_MULTIBYTE): Check the arg is a (uni)byte.
11459
11460 * keymap.c (Vminibuffer_local_filename_must_match_map):
11461 Rename from Vminibuffer_local_must_match_filename_map.
11462 (syms_of_keymap):
11463 * minibuf.c (Fcompleting_read): Adjust accordingly.
11464 * commands.h: Rename declaration as well.
11465
114662008-06-05 Kenichi Handa <handa@m17n.org>
11467
11468 * font.c (Ffont_spec): Don't use font_parse_family_registry for
11469 family name.
11470 (Ffont_put): Likewise.
11471
11472 * fontset.c (fontset_find_font): Call font_open_for_lface with the
11473 current font-spec.
11474
11475 * xfont.c (xfont_list): Don't set registry to iso8859-1 even if it
11476 is unspecified.
11477
11478 * xfaces.c (realize_x_face): If the font-related face attributes
11479 are the same as those of default face, realize a new fontset from
11480 default->fontset.
11481 (Fx_family_fonts): Use font_parse_family_registry instead of Ffont_put.
11482
114832008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
11484
11485 * xdisp.c (move_it_in_display_line_to): Improve the type of its args.
11486 (move_it_in_display_line): New wrapper.
11487
11488 * window.c (window_scroll_pixel_based_preserve_x)
11489 (window_scroll_preserve_hpos, window_scroll_preserve_vpos): New vars.
11490 (window_scroll_pixel_based, window_scroll_line_based):
11491 Use them to preserve column positions.
11492 (syms_of_window): Initialize them.
11493
11494 * indent.c (Fvertical_motion): Extend first arg to allow passing an
11495 (HPOS . VPOS) pair.
11496
11497 * dispextern.h (move_it_in_display_line): Declare.
11498
114992008-06-05 Juanma Barranquero <lekktu@gmail.com>
11500
11501 * window.c (Fwindow_parameter): Return VALUE, not (PARAMETER . VALUE).
11502 (Fwindow_parameters): Return copy of parameter alist. Doc fix.
11503 (Fset_window_parameter): Return VALUE, not parameter alist. Doc fix.
11504
115052008-06-04 Juanma Barranquero <lekktu@gmail.com>
11506
11507 * window.c (Fset_window_parameter): Doc fix.
11508 (Fwindow_parameters, Fwindow_parameter): Remove redundant check.
11509
115102008-06-04 Joakim Verona <joakim@verona.se>
11511
11512 * window.h (struct window): Add new member window_parameters.
11513
11514 * window.c (Fwindow_parameters, Fwindow_parameter)
11515 (Fset_window_parameter): New defuns.
11516 (syms_of_window): Defsubr the new defuns.
11517 (make_window): Initialize window_parameters to nil.
11518
115192008-06-04 John Paul Wallington <jpw@pobox.com>
11520
11521 * eval.c (Fdefmacro): Doc fix.
11522
115232008-06-04 Kenichi Handa <handa@m17n.org>
11524
11525 * coding.c (detect_coding): Fix handling of coding->head_ascii.
11526 Be sure to call setup_coding_system when we find a proper coding system.
11527 (detect_coding_system): Fix handling of coding->head_ascii.
11528
115292008-06-03 Andreas Schwab <schwab@suse.de>
11530
11531 * font.c (font_prop_validate_spacing): Fix last change.
11532
115332008-06-03 Kenichi Handa <handa@m17n.org>
11534
11535 * font.c (font_prop_validate_spacing): Handle uppercase symbols.
11536 (font_parse_fcname): Fix handling of unknown key.
11537
11538 * xfont.c (xfont_list): Try an alias.
11539
11540 * charset.c (char_charset): Return NULL if the arg charset_list is
11541 specified and C doesn't belong to any of them.
11542
115432008-06-02 Chip Coldwell <coldwell@redhat.com>
11544
11545 * font.c (font_pixel_size): Don't take cdr of an integer.
11546
115472008-06-02 Jim Meyering <meyering@redhat.com>
11548
11549 Make "xfree (NULL)" a no-op; remove useless if-before-xfree.
11550 * alloc.c (xfree): Return right away for a NULL arg.
11551 * lread.c (nosuffix): Remove now-useless if-before-xfree tests.
11552 * gtkutil.c (xg_gtk_scroll_destroy): Likewise.
11553 * mac.c (create_apple_event_from_event_ref): Likewise.
11554 (create_apple_event_from_drag_ref, cfstring_create_normalized):
11555 Likewise.
11556 * doprnt.c (doprnt1): Likewise.
11557 * frame.c (frame): Likewise.
11558 * keyboard.c (wipe_kboard): Likewise.
11559 * macterm.c (x_free_frame_resources, xlfdpat_destroy, XFreePixmap)
11560 (init_font_name_table, mac_unload_font, x_delete_display): Likewise.
11561 * term.c (tty_default_color_capabilities, maybe_fatal)
11562 (delete_tty): Likewise.
11563 * w16select.c (string): Likewise.
11564 * w32.c (w32_get_resource, SET_ENV_BUF_SIZE): Likewise.
11565 * w32bdf.c (w32_free_bdf_font): Likewise.
11566 * w32fns.c (w32_unload_font): Likewise.
11567 * w32font.c (w32font_close): Likewise.
11568 * window.c (size_window): Likewise.
11569 * xselect.c (receive_incremental_selection): Likewise.
11570 * xterm.c (x_free_frame_resources, x_delete_display): Likewise.
11571 * mactoolbox.c (create_apple_event_from_drag_ref): Likewise.
11572 * w32.c (stat): Likewise.
11573
11574 Remove useless if-before-free tests.
11575 * editfns.c (Fset_time_zone_rule): Likewise.
11576 * lread.c (nosuffix): Likewise.
11577 * ralloc.c (get_bloc): Likewise.
11578 * regex.c (reg_free): Likewise.
11579 * xftfont.c (xftfont_open, xftfont_close): Likewise.
11580 * xrdb.c (get_user_app, get_environ_db, x_load_resources): Likewise.
11581 * xsmfns.c (smc_save_yourself_CB): Likewise.
11582
115832008-06-02 Kenichi Handa <handa@m17n.org>
11584
11585 * font.c (font_find_for_lface): Handle float font size.
11586 (font_open_for_lface): Likewise.
11587
11588 * xfaces.c (x_supports_face_attributes_p): Check face->font before
11589 comparing the properties.
11590
115912008-06-01 Jason Rumney <jasonr@gnu.org>
11592
11593 * w32font.c (w32_enumfont_pattern_entity): Use requested registry.
11594 Treat iso10646-1 and Windows DEFAULT_CHARSET specially.
11595 Duplicate iso8859-1 fonts as iso10646-1 if no registry specified.
11596 Don't add empty script list.
11597 (w32_registry): Only map DEFAULT_CHARSET to iso10646-1 here.
11598
115992008-06-01 Dan Nicolaescu <dann@ics.uci.edu>
11600
11601 * Makefile.in (dot, dotdot): Remove, update users.
11602 ".." has been used elsewhere in the file for a long time.
11603 (LIBXT_STATIC): Remove conditional based on unused variable.
11604
116052008-06-01 Miles Bader <miles@gnu.org>
11606
11607 * xfaces.c (Vface_remapping_alist): New variable.
11608 (syms_of_xfaces): Initialize it.
11609 (enum named_merge_point_kind): New type.
11610 (struct named_merge_point): Add `named_merge_point_kind' field.
11611 (push_named_merge_point): Make cycle detection respect different
11612 named-merge-point kinds.
11613 (lface_from_face_name_no_resolve): Rename from `lface_from_face_name'.
11614 Remove face-name alias resolution.
11615 (lface_from_face_name): New definition using
11616 `lface_from_face_name_no_resolve'.
11617 (get_lface_attributes_no_remap): Rename from `get_lface_attributes'.
11618 Call lface_from_face_name_no_resolve instead of lface_from_face_name.
11619 (get_lface_attributes): New definition that layers face-remapping on
11620 top of get_lface_attributes_no_remap. New arg `named_merge_points'.
11621 (lookup_basic_face): New function.
11622 (lookup_derived_face): Pass new last arg to `get_lface_attributes'.
11623 (realize_named_face): Call `get_lface_attributes_no_remap' instead of
11624 `get_lface_attributes'.
11625 (face_at_buffer_position): Use `lookup_basic_face' to lookup
11626 DEFAULT_FACE_ID if necessary. When optimizing the default-face case,
11627 return default_face's face-id instead of the constant DEFAULT_FACE_ID.
11628
11629 * xdisp.c (init_iterator): Pass base_face_id through
11630 `lookup_basic_face' when we actually use it as a face-id.
11631 (handle_single_display_prop): Use `lookup_basic_face' to lookup
11632 DEFAULT_FACE_ID.
11633
11634 * fontset.c (Finternal_char_font): Use `lookup_basic_face' to
11635 lookup the initial face-id.
11636
11637 * dispextern.h (lookup_basic_face, Vface_remapping_alist): New decls.
11638
116392008-06-01 Juanma Barranquero <lekktu@gmail.com>
11640
11641 * textprop.c (syms_of_textprop) <text-property-default-nonsticky>:
11642 (Fremove_text_properties): Fix typos in docstrings.
11643
116442008-05-31 Kenichi Handa <handa@m17n.org>
11645
11646 * font.c (font_list_entities): Fix the car part of data to be
11647 stored in the cache.
11648
11649 * ftfont.c (ftfont_font_format): Don't use strcasestr.
11650
116512008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
11652
11653 * chartab.c (Foptimize_char_table, optimize_sub_char_table):
11654 Add a `test' argument so another predicate than `equal' can be used.
11655 (map_sub_char_table): Use `eq' rather than `equal' to merge ranges.
11656 (map_char_table): Remove unused vars `c' and `i'.
11657 * lisp.h (Foptimize_char_table): Adjust declaration.
11658 * charset.c (Fclear_charset_maps): Adjust call to Foptimize_char_table.
11659
116602008-05-30 Kenichi Handa <handa@m17n.org>
11661
11662 * font.c (Ffont_info): Define only if HAVE_WINDOW_SYSTEM is defined.
11663 (syms_of_font): Defsubr Sfont_info only if HAVE_WINDOW_SYSTEM is
11664 defined.
11665
116662008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
11667
11668 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
11669 (Fmake_variable_frame_local): Disallow mixing buffer-local and
11670 frame-local settings for the same variable.
11671
116722008-05-30 Kenichi Handa <handa@m17n.org>
11673
11674 * fontset.c (Ffont_info): Move to font.c.
11675 (syms_of_fontset): Delete defsubr of Sfont_info.
11676
11677 * font.c (font_style_to_value, font_score): Delete casting of the
11678 args to xstcasecmp.
11679 (register_font_driver): Increment num_font_drivers only when
11680 registering the driver globally.
11681 (Ffont_info): Move from fontset.c. Handle a font object too.
11682 (syms_of_font): Defsubr Sfont_info.
11683
116842008-05-29 Kenichi Handa <handa@m17n.org>
11685
11686 * coding.h (enum define_coding_utf8_arg_index): New enum.
11687 (enum coding_attr_index): Change coding_attr_utf_16_bom to
11688 coding_attr_utf_bom.
11689 (enum utf_bom_type): Rename from utf_16_bom_type.
11690 (struct utf_16_spec): Adjust for the above change.
11691 (struct coding_system): Add utf_8_bom in `spec' union.
11692
11693 * coding.c (CODING_UTF_8_BOM): New macro.
11694 (enum coding_category): Delete coding_category_utf_8, add
11695 coding_category_utf_8_auto, coding_category_utf_8_nosig, and
11696 coding_category_utf_8_sig.
11697 (CATEGORY_MASK_UTF_8): Delete it.
11698 (CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG)
11699 (CATEGORY_MASK_UTF_8_SIG): New macros.
11700 (CATEGORY_MASK_ANY): Delete CATEGORY_MASK_UTF_8, add
11701 CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG, and
11702 CATEGORY_MASK_UTF_8_SIG.
11703 (CATEGORY_MASK_UTF_8): New macro.
11704 (UTF_BOM, UTF_8_BOM_1, UTF_8_BOM_2, UTF_8_BOM_3): New macros.
11705 (detect_coding_utf_8): Check BOM.
11706 (decode_coding_utf_8, encode_coding_utf_8): Handle BOM.
11707 (decode_coding_utf_16): Adjust for the change of enum utf_bom_type.
11708 (encode_coding_utf_16): Likewise.
11709 (setup_coding_system): Likewise. Set CODING_UTF_8_BOM (coding).
11710 (detect_coding, detect_coding_system): Handle utf-8-auto.
11711 (Fdefine_coding_system_internal): Handle `bom' property for utf-8.
11712 (syms_of_coding): Fix setting up of Vcoding_category_table.
11713
117142008-05-29 Stefan Monnier <monnier@iro.umontreal.ca>
11715
11716 * process.c (Faccept_process_output): If `millisec' is non-nil,
11717 `seconds' default to 0.
11718 (wait_reading_process_output): Also return non-nil if we read output
11719 from a non-running process.
11720
117212008-05-29 Jason Rumney <jasonr@gnu.org>
11722
11723 * w32font.c (w32font_open_internal): Prefer truetype fonts unless
11724 `raster' specified.
11725 (add_font_entity_to_list): Allow non-opentype truetype fonts back
11726 in the uniscribe backend, but disallow any font that has no
11727 unicode subrange support.
11728
117292008-05-29 Juanma Barranquero <lekktu@gmail.com>
11730
11731 * xfaces.c (Fx_list_fonts, Finternal_copy_lisp_face):
11732 Fix typos in docstrings.
11733
117342008-05-29 Kenichi Handa <handa@m17n.org>
11735
11736 * xfaces.c (Fx_list_fonts): Make it return a list of font names.
11737 (Fx_family_fonts): Set frame correctly.
11738
117392008-05-28 Jason Rumney <jasonr@gnu.org>
11740
11741 * w32term.c (x_draw_glyph_string): Use clipmask if specified.
11742
117432008-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
11744
11745 * fileio.c (Fwrite_region): Delay the defaulting to beg&z to after
11746 calling build_annotations.
11747
117482008-05-28 Juanma Barranquero <lekktu@gmail.com>
11749
11750 * coding.c (Fdecode_coding_region, Fencode_coding_region)
11751 (Fencode_coding_string):
11752 (syms_of_coding) <coding-system-for-read, coding-system-for-write>:
11753 <latin-extra-code-table>: Fix typos in docstrings.
11754 (syms_of_coding) <coding-system-alist>: Doc fix.
11755 (syms_of_coding) <translation-table-for-input>: Reflow docstring.
11756
117572008-05-28 Kenichi Handa <handa@m17n.org>
11758
11759 * fontset.c (Ffont_info): Don't call font_close_object.
11760
11761 * font.c (font_parse_family_registry): Use Ffont_put to validate
11762 foundry and family.
11763 (font_delete_unmatched): Don't check spacing.
11764 (font_list_entities): Add spacing to the spec to list fonts.
11765
11766 * ftfont.c (ftfont_spec_pattern): Don't set FC_SPACING to pattern.
11767 (ftfont_list): Check spacing here. Don't include FC_CHARSET in objset.
11768
11769 * coding.c (encode_coding_raw_text): Fix previous change.
11770 (encode_coding_object): When the dst_object is a buffer and is
11771 different from src_object, move gap to PT.
11772
117732008-05-27 Chong Yidong <cyd@stupidchicken.com>
11774
11775 * xterm.c (x_draw_glyph_string): If a clipmask is specified, use it.
11776
117772008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
11778
11779 * coding.c (encode_coding_raw_text): Set coding->produced_char for
11780 all branches. Compute it differently.
11781
11782 * xdisp.c [!HAVE_WINDOW_SYSTEM]: Include font.h for --without-x.
11783
117842008-05-27 Juanma Barranquero <lekktu@gmail.com>
11785
11786 * w32font.c (compute_metrics): Rewrite an "else { if () ... else ... }"
11787 into "else if () ... else ...".
11788
117892008-05-27 Jason Rumney <jasonr@gnu.org>
11790
11791 * w32font.c (w32font_open_internal): Determine if glyph indices
11792 are likely to work here.
11793
117942008-05-27 Chong Yidong <cyd@stupidchicken.com>
11795
11796 * xdisp.c (draw_glyphs): If mouse-highlighting is on, attempt to
11797 draw overlap glyphs with appropriate highlighting.
11798
117992008-05-27 Kenichi Handa <handa@m17n.org>
11800
11801 * xfont.c (xfont_open): Fix calculation of font->average_width.
11802
118032008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
11804
11805 * casefiddle.c (casify_object): Try to guess better whether the
11806 argument is a byte or a char.
11807
118082008-05-26 Andreas Schwab <schwab@suse.de>
11809
11810 * xselect.c (x_reply_selection_request): Properly handle format == 32.
11811 Always send multiples of format size.
11812
11813 * xterm.c (x_set_frame_alpha): Fix type mismatch.
11814
118152008-05-26 Jason Rumney <jasonr@gnu.org>
11816
11817 * w32font.c (w32font_text_extents): Zero whole metrics struct first.
11818 (compute_metrics): Don't set failure if we just cleared the cache.
11819 (w32_weight_table): Remove unused variable.
11820 (w32_enumfont_pattern_entity): Use FONT_SPACING_CHARCELL for
11821 backwards compatibility.
11822
118232008-05-25 Kenichi Handa <handa@m17n.org>
11824
11825 * w32term.c (x_draw_glyph_string):
11826 * xterm.c (x_draw_glyph_string): Fix calculation of underline position.
11827
11828 * xfaces.c: Delete unused function prototypes.
11829 (xstrlwr, font_frame): Delete them.
11830 (clear_face_cache): Delete unused variable.
11831
11832 * xftfont.c (xftfont_open): Delete unused variable.
11833 If underline_thickness is not 1, adjust underline_position.
11834
11835 * ftxfont.c (ftxfont_open): Delete unused variable.
11836
11837 * fontset.c (face_for_char): Optimize for the case of no charset
11838 property.
11839
11840 * font.c (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE)
11841 (check_gstring, check_otf_features, otf_list, otf_tag_symbol)
11842 (otf_open, font_otf_capability, generate_otf_features)
11843 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
11844 Comment out by surrounding "#if 0" and "#endif" for the moment.
11845 (Ffont_drive_otf, Ffont_otf_alternates): Likewise.
11846 (syms_of_font): Codes for accessing above commented out.
11847
118482008-05-24 Eli Zaretskii <eliz@gnu.org>
11849
11850 * w32proc.c: Include dispextern.h.
11851
11852 * w32.c: Include dispextern.h.
11853
118542008-05-23 Juanma Barranquero <lekktu@gmail.com>
11855
11856 * charset.c (Fencode_char, Fsplit_char): Doc fixes.
11857 (Fget_unused_iso_final_char, Fdecode_char, Fiso_charset):
11858 Fix typos in docstrings.
11859
118602008-05-23 Jason Rumney <jasonr@gnu.org>
11861
11862 * xsmfns.c: Remove includes that are already included by config.h.
11863
118642008-05-23 Kenichi Handa <handa@m17n.org>
11865
11866 * charset.c (Qemacs, charset_emacs): New variables.
11867 (char_charset): Fix for non-Unicode characters.
11868 (syms_of_charset): Define charset_emacs.
11869
11870 * w32term.c (x_draw_glyph_string): Be sure to update
11871 s->underline_thickness and s->underline_position. Be sure to draw
11872 underline within the current line area.
11873
11874 * xterm.c (x_draw_glyph_string): Be sure to update
11875 s->underline_thickness and s->underline_position. Be sure to draw
11876 underline within the current line area.
11877
11878 * fontset.c: Delete unused variables and add casting for char *
11879 throughout the file.
11880 (fontset_font): Try the fallback fonts of the current fontset
11881 before consulting the default fontset.
11882
11883 * ftfont.c (ftfont_spec_pattern): Free charset if necessary.
11884
11885 * xfont.c (xfont_list_pattern): Free names returned from XListFonts.
11886
118872008-05-22 Jason Rumney <jasonr@gnu.org>
11888
11889 * font.c: Don't include strings.h.
11890
11891 * dispextern.h, xfaces.c (xstrcasecmp): Rename from xstricmp.
11892
11893 * dosfns.c, fileio.c, font.c, fontset.c, image.c, macfns.c:
11894 * macterm.c, process.c, w32.c, w32fns.c, w32proc.c, xfaces.c:
11895 * xfns.c, xfont.c: All callers of stricmp and strcasecmp changed
11896 to call xstrcasecmp.
11897
11898 * xfont.c (xfont_list_pattern, compare_font_names): Use xstrcasecmp.
11899
11900 * fontset.c (fs_query_fontset): Use xstrcasecmp.
11901
11902 * font.c (font_style_to_value, font_score): Use xstrcasecmp.
11903
11904 * dosfns.c (msdos_stdcolor_idx): Use xstrcasecmp.
11905
119062008-05-22 Kenichi Handa <handa@m17n.org>
11907
11908 * puresize.h (BASE_PURESIZE): Increase to 1220000.
11909
11910 * font.c (font_prop_validate_style): Adjust for the format
11911 change of font_style_table.
11912
11913 * w32font.c (w32font_open_internal): Call Ffont_xlfd_name with
11914 two args.
11915
11916 * xfaces.c (x_update_menu_appearance): Call Ffont_xlfd_name with
11917 two args.
11918
119192008-05-22 Stefan Monnier <monnier@iro.umontreal.ca>
11920
11921 * minibuf.c (keys_of_minibuf): Delete.
11922 * lisp.h (keys_of_minibuf): Delete.
11923 * emacs.c (main): Don't call keys_of_minibuf.
11924
119252008-05-22 Kenichi Handa <handa@m17n.org>
11926
11927 * ftfont.c (ftfont_resolve_generic_family): Rename from
11928 ftfont_list_generic_family. Return a single family for each
11929 generic family.
11930 (ftfont_spec_pattern): Add FC_FAMILY to pattern.
11931 (ftfont_list): Adjust for the change of ftfont_resolve_generic_family.
11932 Call font_add_log.
11933 (ftfont_match): Call font_add_log.
11934
11935 * font.h (Ffont_xlfd_name): EXFUN adjusted.
11936 (FONT_DEBUG): Define it.
11937 (font_add_log): Extern it.
11938 (font_assert): Rename from xassert.
11939
11940 * xfont.c (xfont_get_pcm): Change xassert to font_assert.
11941 (xfont_list_family): Call font_add_log.
11942 (xfont_match): Likewise.
11943 (memq_no_quit): Delete.
11944
11945 * fontset.c (fontset_from_font, Ffontset_info): Add the 2nd arg in
11946 call of Ffont_xlfd_name.
11947
11948 * xfaces.c (struct table_entry, slant_table, weight_table)
11949 (swidth_table): Move to font.c.
11950
11951 * font.c: Checking of FONT_DEBUG is moved to font.h. All calls of
11952 xassert are changed to font_assert. Delete many unused variables.
11953 (Vfont_weight_table, Vfont_slant_table, Vfont_width_table):
11954 New variables.
11955 (struct table_entry): Move from xfaces.c and modified.
11956 (weight_table, slant_table, width_table): Move from xfaces.c and
11957 contents adjusted for the change of struct table_entry.
11958 (font_style_to_value, font_style_symbolic): Adjust for the
11959 format change of font_style_table.
11960 (font_parse_family_registry): Don't overwrite existing foundry and
11961 family of font_spec.
11962 (font_score): Fix calculation of diff for sizes.
11963 (font_sort_entites): Call font_add_log.
11964 (font_delete_unmatched): Return a newly created list.
11965 (font_list_entities): Fix previous change. Call font_add_log.
11966 (font_matching_entity, font_open_entity, font_close_entity):
11967 Call font_add_log.
11968 (Ffont_xlfd_name): New arg FOLD-WILDCARDS.
11969 (Finternal_set_font_style_table): Delete.
11970 (BUILD_STYLE_TABLE): New macro.
11971 (build_style_table): New function.
11972 (Vfont_log, font_log_env_checked): New variables.
11973 (font_add_log): New function.
11974 (syms_of_font): Delete defsubr Sinternal_set_font_style_table.
11975 Declare Lisp variables "font-weight-table", "font-slant-table",
11976 "font-width-table", and "font-log". Initialize font_style_table.
11977
119782008-05-21 Dan Nicolaescu <dann@ics.uci.edu>
11979
11980 * xterm.c (x_set_frame_alpha): Move declarations before statements.
11981
119822008-05-21 Seiji Zenitani <zenitani@mac.com>
4e2af782 11983 Ryo Yoshitake <ryo@shiftmode.net>
aac0c6e3
MR
11984
11985 * frame.c (Qalpha): Add a new frame parameter `alpha'.
11986 (Vframe_alpha_lower_limit): New variable.
11987 (x_set_alpha): New function.
11988
11989 * frame.h (Qalpha, Vframe_parameter_lower_limit): Export them.
11990
11991 * xfns.c (x-create-frame, Qalpha):
11992 Initialize the frame parameter `alpha'.
11993 * xterm.c (OPAQUE, OPACITY): New.
11994 (x_set_frame_alpha): New function.
11995 (frame_highlight, frame_unhighlight): Call x_set_frame_alpha.
11996
11997 * macfns.c (mac_frame_parm_handlers): A null handler for x_set_alpha.
11998 * w32fns.c (w32_frame_parm_handlers): Likewise.
11999
120002008-05-20 Jason Rumney <jasonr@gnu.org>
12001
12002 * w32font.c (add_font_entity_to_list): Don't add non-opentype
12003 truetype fonts to opentype list.
12004
120052008-05-20 Juanma Barranquero <lekktu@gmail.com>
12006
12007 * fontset.c (Ffontset_info): Doc fix.
12008 (syms_of_fontset) <font-encoding-charset-alist, use-default-ascent>:
12009 <ignore-relative-composition>: Fix typos in docstrings.
12010
12011 * font.c (syms-of-font) <font-encoding-alist>:
12012 (Ffontp, Ffont_make_gstring): Fix typos in docstrings.
12013 (Flist_fonts, Ffont_family_list, Ffont_fill_gstring, Fquery_font)
12014 (Ffont_otf_alternates): Doc fixes.
12015
120162008-05-20 Kenichi Handa <handa@m17n.org>
12017
12018 * Makefile.in (FONTSRC): Delete it. Change all $(FONTSRC) to
12019 font.h through out the file.
12020 (FONT_DRIVERS): Rename from FONTOBJ.
12021 (obj): Change $(FONTOBJ) to $(FONT_DRIVERS). Add font.o.
12022 (SOME_MACHINE_OBJECTS): Change $(FONTOBJ) to $(FONT_DRIVERS).
12023
12024 * emacs.c (main): Call syms_of_font unconditionally.
12025
12026 * font.h (find_font_encoding): Extern it.
12027
12028 * font.c (Vfont_encoding_alist, find_font_encoding): Move from
12029 fontset.c.
194d44e7 12030 (font_pixel_size) [! HAVE_WINDOW_SYSTEM]: Return 1.
aac0c6e3
MR
12031 (font_open_entity): Update FRAME_X_DISPLAY_INFO (f)->n_fonts,
12032 FRAME_SMALLEST_CHAR_WIDTH (f), and FRAME_SMALLEST_FONT_HEIGHT (f)
12033 only when HAVE_WINDOW_SYSTEM is defined.
12034 (font_close_object): Update FRAME_X_DISPLAY_INFO (f)->n_fonts only
12035 when HAVE_WINDOW_SYSTEM is defined.
12036
12037 * fontset.c (Vfont_encoding_alist, find_font_encoding): Move to font.c.
12038 (syms_of_fontset): Move declaration of font-encoding-alist to font.c.
12039
12040 * xfaces.c: Include font.h unconditionally.
12041 (merge_face_ref, merge_face_vectors)
12042 (Finternal_set_lisp_face_attribute): Cancel the previous change.
12043
120442008-05-20 Stefan Monnier <monnier@iro.umontreal.ca>
12045
12046 * xdisp.c (select_frame_for_redisplay): Adjust for last change to
12047 indirect_variable.
12048 * eval.c (lisp_indirect_variable): New fun.
12049 (Fuser_variable_p): Use it.
12050
120512008-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
12052
12053 * lisp.h (indirect_variable):
12054 * data.c (indirect_variable, let_shadows_buffer_binding_p):
12055 Use Lisp_Symbol pointers rather than Lisp_Object.
12056 Adjust callers.
12057 * buffer.c (buffer_slot_type_mismatch): Use wrong-type-argument.
12058 To this end, change calling-convention.
12059
12060 * minibuf.c (Finternal_complete_buffer): Only strip out hidden buffers
12061 if some non-hidden buffers are selected by string&pred.
12062
120632008-05-19 Chong Yidong <cyd@stupidchicken.com>
12064
12065 * process.c (wait_reading_process_output): Always check status
12066 when in batch mode.
12067
120682008-05-19 Kenichi Handa <handa@m17n.org>
12069
12070 * font.c (font_list_entities): Fix handling of cache.
12071 (font_matching_entity): Likewise.
12072
12073 * ftfont.c (cs_iso8859_1): Delete.
12074 (ft_face_cache): New variable.
12075 (struct ftfont_info): New member fc_charset_idx.
12076 (ftfont_build_basic_charsets): Delete.
12077 (fc_charset_table): New variable.
12078 (ftfont_pattern_entity): New arg fc_charset_idx. Store (FILENAME
12079 . FC_CHARSET_IDX) as :font-entity property in the font entity.
12080 Callers changed.
12081 (ftfont_lookup_cache, ftfont_get_charset): New functions.
12082 (ftfont_spec_pattern): New argument fc_charset_idx.
12083 Check registry more rigidly. Change callers.
12084 (ftfont_open, ftfont_close, ftfont_has_char): Adjust for the
12085 change of :font-entity property of the font.
12086
12087 * xftfont.c (xftfont_open): Adjust for the change of :font-entity
12088 property of the font.
12089
120902008-05-18 Juanma Barranquero <lekktu@gmail.com>
12091
12092 * coding.c (Fcoding_system_p): Rename argument to match docstring.
12093 (Funencodable_char_position, Fcheck_coding_systems_region)
12094 (Fdecode_coding_string, Fencode_coding_string): Fix typos in docstrings.
12095 (Fdetect_coding_region, Fdetect_coding_string, Fencode_coding_region)
12096 (Ffind_operation_coding_system, Fset_coding_system_priority)
12097 (Fcoding_system_eol_type): Doc fixes.
12098
120992008-05-17 Glenn Morris <rgm@gnu.org>
12100
12101 * sysdep.c (child_setup_tty): Handle systems with NLDLY, without FFDLY.
12102
121032008-05-16 Eli Zaretskii <eliz@gnu.org>
12104
12105 * dired.c (Ffile_attributes): Shut up GCC warnings about st_uid
12106 and st_gid.
12107
12108 * frame.c (Fdelete_frame): Don't call font_update_drivers if
12109 HAVE_WINDOW_SYSTEM is not defined.
12110
12111 * xfaces.c (merge_face_ref, merge_face_vectors)
12112 (Finternal_set_lisp_face_attribute): Use FONT_*_INDEX only when
12113 HAVE_WINDOW_SYSTEM is defined.
12114 (Fface_font): Fix non-HAVE_WINDOW_SYSTEM case.
12115
121162008-05-16 Stefan Monnier <monnier@iro.umontreal.ca>
12117
12118 * keyboard.c (parse_menu_item): Do not cache key shortcut any more.
12119
121202008-05-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12121
12122 * macterm.c (x_draw_relief_rect): Remove unused variable `dpy'.
12123
121242008-05-15 Kenichi Handa <handa@m17n.org>
12125
12126 * font.c (font_find_for_lface): Reflect LFACE_FONT in the font
12127 preference.
12128
121292008-05-15 Glenn Morris <rgm@gnu.org>
12130
12131 * emacs.c (USAGE1, standard_args): Remove -disable-font-backend.
12132
121332008-05-15 Chong Yidong <cyd@stupidchicken.com>
12134
12135 * fns.c (init_fns): Don't initialize weak_hash_tables here.
12136 (init_weak_hash_tables): New fun. Initialize weak_hash_tables.
12137
12138 * alloc.c (init_alloc_once): Call init_weak_hash_tables.
12139
121402008-05-15 Kenichi Handa <handa@m17n.org>
12141
12142 * ftfont.c (ftfont_list): Downcase family name to check generic
12143 families.
12144
12145 * xfaces.c (Finternal_set_lisp_face_attribute): Be sure to make a
12146 font-spec for QCfont value.
12147
12148 * fontset.c (Fnew_fontset): Call font_unparse_xlfd with 256-byte
12149 buffer. Check the return value of it.
12150
121512008-05-14 Jason Rumney <jasonr@gnu.org>
12152
12153 * w32term.c (w32_get_glyph_overhangs): Remove.
12154 (w32_redisplay_interface): Use x_get_glyph_overhangs instead.
12155
121562008-05-14 Kenichi Handa <handa@m17n.org>
12157
12158 * font.c (font_prop_validate): Make nil a valid value.
12159 (font_clear_cache): Check if the cached vector of entities is nil
12160 or not.
12161
121622008-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12163
12164 * emacs.c (main_thread): Conditionalize on
12165 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
12166 (main) [FORWARD_SIGNAL_TO_MAIN_THREAD]: Initialize it.
12167
12168 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): New define.
12169 (main_thread, SIGNAL_THREAD_CHECK): Conditionalize on
12170 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
12171
121722008-05-14 Kenichi Handa <handa@m17n.org>
12173
12174 * coding.c (detect_coding_iso_2022): Ignore a coding category that
12175 has no corresponding coding system.
12176
121772008-05-14 Jason Rumney <jasonr@gnu.org>
12178
12179 * font.h (struct font) [WINDOWSNT]: Remove codepage member.
12180
12181 * w32font.h (w32font_open_internal): Update declaration.
12182
12183 * w32font.c (w32font_open_internal): Change last argument from
12184 w32font_info struct to font object. Fill in font object from
12185 font_entity. Get Outline metrics if possible. Use them to
12186 calculate underline position and thickness. Use xlfd name as name
12187 property. Don't set codepage.
12188 (w32font_open): Pass font_object to w32font_open_internal. Don't
12189 update dpyinfo->smallest_font_height and dpyinfo->smallest_char_width.
12190 (w32font_draw): Use s->font.
12191 (clear_cached_metrics): Don't clear non-existent blocks.
12192
12193 * w32term.c (w32_compute_glyph_string_overhangs): Don't compute if
12194 font was not found.
12195 (x_draw_glyph_string): Use underline position and thickness from font.
12196
12197 * w32uniscribe.c (uniscribe_open): Pass font_object to
12198 w32font_open_internal.
12199
122002008-05-14 Kenichi Handa <handa@m17n.org>
12201
12202 These changes are to delete all legacy font-handling codes, and
12203 make Emacs use only font-backends.
12204
12205 * Makefile.in: Delete USE_FONT_BACKEND conditionals.
12206 (frame.o, image.o, print.o): Depend on $(FONTSRC).
12207
12208 * makefile.w32-in (WIN32OBJ): Add w32reg.$(O), remove w32bdf.$(O).
12209
12210 * charset.h (Vcharset_non_preferred_head)
12211 (Vcurrent_iso639_language): Extern them.
12212
12213 * charset.c (Vcharset_non_preferred_head): New variable.
12214 (Vcurrent_iso639_language): New variable.
12215 (syms_of_charset): Declare it as a Lisp variable.
12216 (char_charset): Don't check non preferred charsets. As a last
12217 resort, return charset_unicode.
12218 (Fset_charset_priority): Update Vcharset_non_preferred_head.
12219
12220 * composite.c: Throughout the file, delete all USE_FONT_BACKEND
12221 conditionals. Don't check enable_font_backend. Delete all codes
12222 used only when USE_FONT_BACKEND is not defined.
12223
12224 * dispextern.h (struct glyph_string): Change type of `font' to
12225 `struct font *'.
12226 (struct glyph_string): New member underline_position and
12227 underline_thickness.
12228 (enum lface_attribute_index): Remove LFACE_AVGWIDTH_INDEX.
12229 (struct face): Change type of `font' to `struct font *'. Remove
12230 members `font_name', `font_info_id'.
12231 (per_char_metric, encode_char): Delete externs.
12232 (calc_pixel_width_or_height): Adjust the prototype.
12233
12234 * emacs.c (enable_font_backend): Delete extern.
12235 (main): Don't set enable_font_backend. Don't check the command
12236 line argument "-disable-font-backend".
12237
12238 * font.h (Qfont_spec, Qfont_entity, Qfont_object): Extern them.
12239 (enum font_property_index): New members FONT_DPI_INDEX,
12240 FONT_SPACING_INDEX, FONT_AVGWIDTH_INDEX, FONT_NAME_INDEX,
12241 FONT_FULLNAME_INDEX, FONT_FILE_INDEX, FONT_FORMAT_INDEX,
12242 FONT_OBJECT_MAX. Delete FONT_FRAME_INDEX.
12243 (FONT_WEIGHT_NUMERIC, FONT_SLANT_NUMERIC, FONT_WIDTH_NUMERIC)
12244 (FONT_WEIGHT_SYMBOLIC, FONT_SLANT_SYMBOLIC, FONT_WIDTH_SYMBOLIC)
12245 (FONT_WEIGHT_FOR_FACE, FONT_SLANT_FOR_FACE, FONT_WIDTH_FOR_FACE)
12246 (FONT_WEIGHT_NAME_NUMERIC, FONT_SLANT_NAME_NUMERIC)
12247 (FONT_WIDTH_NAME_NUMERIC, FONT_SET_STYLE): New macros.
12248 (struct font_spec, struct font_entity): New structs.
12249 (FONT_ENCODING_NOT_DECIDED): Moved from fontset.h.
12250 (struct font): Many members from old "struct font_info" moved to
12251 here. Members font and entity deleted.
12252 (FONT_SPEC_P, FONT_ENTITY_P, FONT_OBJECT_P, FONTP): Modified for
12253 the new font-related objects.
12254 (CHECK_FONT_SPEC, CHECK_FONT_ENTITY, CHECK_FONT_OBJECT)
12255 (CHECK_FONT_GET_OBJECT): Likewise.
12256 (XFONT_SPEC, XFONT_ENTITY, XFONT_OBJECT, XSETFONT): New macros.
12257 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved from font.h.
12258 (struct font_driver): New members case_sensitive anc check. Type
12259 of the member list and open changed.
12260 (enable_font_backend, font_symbolic_weight, font_symbolic_slant)
12261 (font_symbolic_width, font_find_object, font_get_spec)
12262 (font_set_lface_from_name): Delete extern.
12263 (Fcopy_font_spec, Fmerge_font_spec, Ffont_family_list): New EXFUNs.
12264
12265 * font.c: Include <strings.h>.
12266 (enable_font_backend): Delete it.
12267 (Qfont_spec, Qfont_entity, Qfont_object): New variables.
12268 (CHECK_VALIDATE_FONT_SPEC): Delete it.
12269 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved to font.h.
12270 (null_string): Delete it.
12271 (null_vector): Make it static.
12272 (font_family_alist): Delete it.
12273 (Qnormal): Extern it.
12274 (QCextra, QClanguage): Delete it.
12275 (QClang, QCavgwidth, QCfont_entity, QCfc_unknown_spec): New variables.
12276 (font_make_spec, font_make_entity, font_make_object)
12277 (font_intern_prop): Renamed from intern_downcase. Don't downcase
12278 the string. Callers changed.
12279 (font_pixel_size): Adjusted for the format change of font-related
12280 objects.
12281 (prop_name_to_numeric, prop_numeric_to_name): Delete them.
12282 (font_style_to_value, font_style_symbolic): New function.
12283 (build_font_family_alist): Delete it.
12284 (font_registry_charsets): Use Fassoc_string instead of
12285 assq_no_quit.
12286 (font_prop_validate_symbol): Don't return null_string.
12287 (font_prop_validate_style): Adjusted for the change of
12288 style-related values in a font vector.
12289 (font_property_table): Delete entries for QClanguage and
12290 QCantialias, add entries for QCavgwidth.
12291 (get_font_prop_index): Delete the 2nd argument FROM.
12292 (font_prop_validate): Arguments changed.
12293 (font_put_extra): Adjusted for the change of font-related objects.
12294 (font_expand_wildcards, font_parse_xlfd, font_unparse_xlfd)
12295 (font_parse_fcname, font_unparse_fcname)
12296 (font_prepare_composition): Likewise.
12297 (font_parse_family_registry): Renamed from font_merge_old_spec.
12298 (otf_open): Delete the 1st arg entity.
12299 (font_otf_capability): Adjusted for the above change.
12300 (font_score): New arg alternate_families. Adjusted for the change
12301 of font-related objects.
12302 (font_sort_entites): New arg best_only.
12303 (font_symbolic_weight, font_symbolic_slant, font_symbolic_width):
12304 Delete them.
12305 (font_match_p): Check alternate families.
12306 (font_find_object): Delete it.
12307 (font_check_object): New function.
12308 (font_clear_cache): Adjusted for the change of font-related objects.
12309 (font_delete_unmatched): New arg.
12310 (font_list_entities): Call font_driver->list with a spec that
12311 doesn't specify style-related properties.
12312 (font_matching_entity): Arguments changed. Caller changed.
12313 (font_open_entity): Adjusted for the change of font-related objects.
12314 (font_close_object, font_has_char, font_encode_char)
12315 (font_get_name, font_get_spec): Likewise.
12316 (font_spec_from_name, font_clear_prop, font_update_lface):
12317 New functions.
12318 (font_find_for_lface, font_open_for_lface, font_load_for_lface)
12319 (font_prepare_for_face, font_done_for_face, font_open_by_name)
12320 (font_at): Adjusted for the change of font-related objects.
12321 (font_range): New function.
12322 (Ffontp, Ffont_spec, Ffont_get, Ffont_put, Flist_fonts)
12323 (Ffont_xlfd_name): Adjusted for the change of font-related objects.
12324 (Fcopy_font_spec, Fmerge_font_spec): New function.
12325 (Ffont_family_list): Renamed from list-families.
12326 (Finternal_set_font_style_table): Arguments changed.
12327 (Ffont_fill_gstring, Ffont_shape_text, Fopen_font)
12328 (Ffont_drive_otf, Fquery_font, Ffont_match_p): Adjusted for the
12329 change of font-related objects.
12330 (syms_of_font): Delete "ifdef USE_FONT_BACKEND". DEFSYM new symbols.
12331
12332 * fontset.h (struct font_info): Delete it. Most members go to
12333 struct font.
12334 (FONT_ENCODING_NOT_DECIDED): Moved to font.h.
12335 (enum FONT_SPEC_INDEX): Delete it.
12336 (font_info, list_fonts_func, load_font_func, query_font_func)
12337 (set_frame_fontset_func, find_ccl_program_func)
12338 (get_font_repertory_func, new_fontset_from_font_name): Delete
12339 externs.
12340 (fontset_from_font_name): Extern it.
12341 (FS_LOAD_FONT, FONT_INFO_ID, FONT_INFO_FROM_ID)
12342 (FONT_INFO_FROM_FACE): Deleted.
12343 (face_for_font): Adjust prototype.
12344
12345 * fontset.c: Throughout the file, delete all USE_FONT_BACKEND
12346 conditionals. Don't check enable_font_backend. Delete all codes
12347 used only when USE_FONT_BACKEND is not defined.
12348 (get_font_info_func, list_font_func, load_font_func)
12349 (query_font_func, set_frame_fontset_func, find_ccl_program_func)
12350 (get_font_repertory_func): Delete them.
12351 (FONTSET_SPEC, FONT_DEF_NEW, FONT_DEF_SPEC, FONT_DEF_ENCODING)
12352 (FONT_DEF_REPERTORY, RFONT_DEF_FACE, RFONT_DEF_SET_FACE)
12353 (RFONT_DEF_FONT_DEF, RFONT_DEF_SPEC, RFONT_DEF_REPERTORY)
12354 (RFONT_DEF_OBJECT, RFONT_DEF_SET_OBJECT, RFONT_DEF_SCORE)
12355 (RFONT_DEF_SET_SCORE, RFONT_DEF_NEW): New macros.
12356 (fontset_compare_rfontdef): New function.
12357 (reorder_font_vector): Remove the argument CHARSET-ID. Sort
12358 rfont-defs by qsort. Adjusted for the change of font-group vector.
12359 (load_font_get_repertory): Deleted.
12360 (fontset_find_font): Use new macros to ref/set elements of
12361 font-def and rfont-def.
12362 (fontset_font): Fix the timing of remembering that no font for C.
12363 (free_face_fontset): Do nothing if the face has no fontset.
12364 (face_suitable_for_char_p): Use new macros to ref/set elements of
12365 rfont-def.
12366 (face_for_char): Likewise. Call face_for_char with font_object.
12367 (fs_load_font): Delete. Delete #pragma surrounding it.
12368 (fs_query_fontset): Use strcasecmp instead of strcmp.
12369 (generate_ascii_font_name): Adjusted for the format change of
12370 font-spec.
12371 (Fset_fontset_font): Likewise. Use new macros to set elements of
12372 font-def.
12373 (Fnew_fontset): Use font_unparse_xlfd to generate
12374 FONTSET_ASCII (fontset).
12375 (new_fontset_from_font_name): Deleted.
12376 (fontset_from_font): Renamed from new_fontset_from_font. Check if
12377 a fontset is already created for the font. FIx updating of
12378 Vfontset_alias_alist.
12379 (fontset_ascii_font): Deleted.
12380 (Ffont_info): Adjusted for the format change of font-spec.
12381 (Finternal_char_font): Likewise.
12382 (Ffontset_info): Likewise.
12383 (syms_of_fontset): Don't check load_font_func.
12384
12385 * fns.c (internal_equal): Handle PREV_FONT.
12386
12387 * frame.h: Delete USE_FONT_BACKEND conditional.
12388
12389 * frame.c: Throughout the file, delete all USE_FONT_BACKEND
12390 conditionals. Don't check enable_font_backend. Delete all codes
12391 used only when USE_FONT_BACKEND is not defined.
12392 (x_set_font): Call x_new_font, not x_new_fontset2.
12393 (x_set_font_backend): Use FRAME_FONT macro to check if a font is
12394 already set for the frame.
12395
12396 * ftfont.c (ftfont_pattern_entity): Argument FRAME removed. Make
12397 a font-entity by font_make_entity. Use font_intern_prop instead
12398 of intern_downcase. Use FONT_SET_STYLE to set a style-related
12399 font property. If a font is scalable, set avgwidth property to 0.
12400 Set font-entity property by font_put_extra.
12401 (ftfont_list_generic_family): Argument SPEC and REGISTRY removed.
12402 (ffont_driver): Adjusted for the change of struct font_driver.
12403 (ftfont_spec_pattern): New function.
12404 (ftfont_list): Return a list, not vector.
12405 (ftfont_match): Use ftfont_spec_pattern to get a pattern.
12406 (ftfont_list_family): Don't downcase names.
12407 (ftfont_free_entity): Deleted.
12408 (ftfont_open): Return a font-object. Adjusted for the change of
12409 struct font. Get underline_thickness and underline_position from
12410 font property. Don't update dpyinfo->smallest_font_height and
12411 dpyinfo->smallest_char_width.
12412 (ftfont_close): Don't free `struct font'.
12413 (ftfont_has_char): Adjusted for the format change of font-entity.
12414 (ftfont_encode_char, ftfont_text_extents): Likewise.
12415
12416 * ftxfont.c (ftxfont_list): Return a list, not vector.
12417 (ftxfont_open): Return a font-object. Adjusted for the change of
12418 struct font. Get underline_thickness and underline_position from
12419 font property. Don't update dpyinfo->smallest_font_height and
12420 dpyinfo->smallest_char_width.
12421 (ftxfont_close): Don't decrease FRAME_X_DISPLAY_INFO (f)->n_fonts.
12422 (ftxfont_draw): Adjusted for the change of struct font.
12423
12424 * image.c (image_ascent): Don't include "charset.h". Include
12425 "character.h" and "font.h".
12426
12427 * lisp.h (enum pvec_type): New member PREV_FONT.
12428 (Fassoc_string): EXFUN it.
12429
12430 * print.c: Include font.h.
12431 (print_object): Handle font-related objects.
12432
12433 * xdisp.c: Throughout the file, delete all USE_FONT_BACKEND
12434 conditionals. Don't check enable_font_backend. Delete all codes
12435 used only when USE_FONT_BACKEND is not defined.
12436 (handle_auto_composed_prop): Do nothing if it->f is not on a
12437 window system. Check how many following characters can be
12438 displayed by the same font.
12439 (calc_pixel_width_or_height): Type of the 4th arg is changed to
12440 'struct font *'.
12441 (get_char_face_and_encoding): Assign the whole encoding task to
12442 the `encode-char' method of a font driver.
12443 (fill_composite_glyph_string): Adjusted for the change of `struct
12444 face' and `struct glyph_string'.
12445 (fill_glyph_string): Likewise.
12446 (get_per_char_metric): Arguments changed.
12447 (x_get_glyph_overhangs): Adjusted for the change of `struct face'
12448 and `struct glyph_string'.
12449 (produce_stretch_glyph, calc_line_height_property)
12450 (x_produce_glyphs): Likewise.
12451
12452 * xfaces.c: Throughout the file, delete all USE_FONT_BACKEND
12453 conditionals. Don't check enable_font_backend. Delete all codes
12454 used only when USE_FONT_BACKEND is not defined. Use
12455 FONT_XXX_NAME_NUMERIC instead of face_numeric_xxx.
12456 (QCfoundry, QCadstyle, QCregistry, QCspacing, QCsize, QCavgwidth)
12457 (Qp): Extern them.
12458 (clear_font_table, load_face_font, xlfd_lookup_field_contents):
12459 Deleted.
12460 (struct font_name): Deleted.
12461 (xlfd_numeric_value, xlfd_symbolic_value): Deleted.
12462 (compare_fonts_by_sort_order): New function.
12463 (xlfd_numeric_slant, xlfd_symbolic_slant, xlfd_numeric_weight)
12464 (xlfd_symbolic_weight, xlfd_numeric_swidth, xlfd_symbolic_swidth):
12465 Deleted.
12466 (Fx_family_fonts): Use font_list_entities, and sort fonts by
12467 compare_fonts_by_sort_order.
12468 (Fx_font_family_list): Call Ffont_family_list.
12469 (face_numeric_value, face_numeric_weight, face_numeric_slant)
12470 (face_numeric_swidth, face_symbolic_value, face_symbolic_weight)
12471 (face_symbolic_slant, face_symbolic_swidth)
12472 (split_font_name_into_vector, build_font_name_from_vector)
12473 (xlfd_fixed_p, xlfd_point_size, pixel_point_size)
12474 (font_rescale_ratio, split_font_name, build_font_name)
12475 (free_font_names, sort_fonts, x_face_list_fonts)
12476 (face_font_available_p, sorted_font_list, cmp_font_names)
12477 (font_list_1, concat_font_list, font_list, remove_duplicates):
12478 Deleted.
12479 (Fx_list_fonts): Use Ffont_list.
12480 (LFACE_AVGWIDTH): Deleted.
12481 (check_lface_attrs): Don't check LFACE_AVGWIDTH. Check LFACE_FONT
12482 by FONTP.
12483 (lface_fully_specified_p): Don't check LFACE_AVGWIDTH.
12484 (set_lface_from_font_name): Delete it.
12485 (set_lface_from_font): Renamed from
12486 set_lface_from_font_and_fontset. Caller changed. Don't set
12487 LFACE_AVGWIDTH. Use FONT_XXX_FOR_FACE to get a symbol suitable
12488 for face.
12489 (merge_face_vectors): Copy font-spec if necessary.
12490 Clear properties of the font-spec if necessary.
12491 (merge_face_ref): Clear properties of the font-spec if necessary.
12492 (Finternal_set_lisp_face_attribute): Likewise.
12493 (set_font_frame_param): Use font_load_for_lface to load a
12494 font-object, and call Fmodify_frame_parameters with it.
12495 (x_update_menu_appearance): Don't check LFACE_AVGWIDTH. Get XLFD
12496 font name by Ffont_xlfd_name.
12497 (Finternal_lisp_face_attribute_values): Don't check QCweight,
12498 QCslant, and QCwidth.
12499 (Fface_font): Get a font name from font->props[FONT_NAME_INDEX].
12500 (lface_same_font_attributes_p): Don't check LFACE_AVGWIDTH.
12501 Compare fonts by EQ.
12502 (lookup_non_ascii_face): Deleted.
12503 (face_for_font): The 2nd argument changed.
12504 (x_supports_face_attributes_p): Don't check LFACE_AVGWIDTH.
12505 Check atomic font properties by case insensitive.
12506 (realize_non_ascii_face): Set face->overstrike correctly.
12507 (realize_x_face): Likewise. Check if LFACE_FONT is a font_object.
12508 (dump_realized_face): Get font name from
12509 font->props[FONT_NAME_INDEX]. Don't print font_info_id.
12510
12511 * xfns.c: Throughout the file, delete all USE_FONT_BACKEND
12512 conditionals. Don't check enable_font_backend. Delete all codes
12513 used only when USE_FONT_BACKEND is not defined.
12514 (xic_create_xfontset): Original code deleted and renamed from
12515 xic_create_xfontset2. Use FRAME_FONT, not FRAME_FONT_OBJECT.
12516 (x_make_gc): Don't set GCFont in GCs.
12517 (Fx_create_frame) [USE_LUCID]: Set xlwmenu_default_font to a font
12518 opened by "fixed".
12519 (syms_of_xfns): Don't set get_font_info_func, load_font_func,
12520 find_ccl_program_func, query_font_func, set_frame_fontset_func,
12521 get_font_repertory_func.
12522
12523 * xfont.c: Include <stdlib.h> and "ccl.h".
12524 (struct xfont_info): New structure.
12525 (xfont_query_font): Deleted.
12526 (xfont_find_ccl_program): Renamed from x_find_ccl_program and
12527 moved from xterm.c.
12528 (xfont_driver): Adjusted for the change of struct font_driver.
12529 (compare_font_names): New function.
12530 (xfont_list_pattern): Sort font names case insensitively. Make
12531 font_entity by calling font_make_entity. Avoid auto-scaled fonts.
12532 (xfont_list): Return a list, not vector.
12533 (xfont_match): If the font doesn't have QCname property, generate
12534 a name from the other font properties.
12535 (xfont_open): Return a font-object. Adjusted for the change of
12536 struct font. Get underline_thickness and underline_position from
12537 font property. Don't update dpyinfo->smallest_font_height and
12538 dpyinfo->smallest_char_width.
12539 (xfont_close): Don't free struct font.
12540 (xfont_prepare_face): Adjusted for the change of struct font.
12541 (xfont_done_face): Deleted.
12542 (xfont_has_char): Adjusted for the change of struct font.
12543 (xfont_encode_char, xfont_draw): Likewise.
12544 (xfont_check): New function.
12545
12546 * xftfont.c (xftfont_list): Adjusted for the change of `list'
12547 callback function.
12548 (xftfont_match): Adjusted for the format change of font-entity.
12549 (xftfont_open): Adjusted for the format change of font-entity and
12550 font-object. Adjusted for the change of struct font. Return a
12551 font-object. Don't update dpyinfo->smallest_font_height and
12552 dpyinfo->smallest_char_width.
12553 (xftfont_close): Block input while calling XftFontClose.
12554 (xftfont_prepare_face): Don't block input while calling
12555 xftfont_get_colors. Adjusted for the change of struct font.
12556 (xftfont_shape): Return value of error case fixed.
12557
12558 * xrdb.c (x_load_resources): Don't setup a fontset resource.
12559
12560 * xterm.h: Throughout the file, delete all USE_FONT_BACKEND
12561 conditionals.
12562 (FONT_WIDTH): Return (f)->max_width.
12563 (struct x_display_info): Delete member `font'.
12564 (x_list_fonts, x_get_font_info, x_load_font, x_query_font)
12565 (x_find_ccl_program, x_get_font_repertory): Delete externs.
12566 (struct x_output): Change type of `font' to `struct font *'.
12567
12568 * xterm.c: Throughout the file, delete all USE_FONT_BACKEND
12569 conditionals. Don't check enable_font_backend. Delete all codes
12570 used only when USE_FONT_BACKEND is not defined. Don't include ccl.h.
12571 (x_per_char_metric, x_encode_char): Deleted.
12572 (x_set_cursor_gc, x_set_mouse_face_gc): Don't set GCFont.
12573 (x_compute_glyph_string_overhangs): Adjusted for the change of
12574 `struct face'.
12575 (x_draw_glyph_string_foreground)
12576 (x_draw_composite_glyph_string_foreground): Likewise.
12577 (x_draw_glyph_string): Likewise. Use font->underline_position and
12578 font->underline_thickness.
12579 (x_new_font): Renamed from x_new_fontset2.
12580 (x_new_fontset, x_get_font_info, x_list_fonts): Deleted.
12581 (x_check_font): Call `check' method of a font driver.
12582 (x_font_min_bounds, x_compute_min_glyph_bounds, x_load_font)
12583 (x_query_font, x_get_font_repertory): Deleted.
12584 (x_find_ccl_program): Renamed and moved to xfont.c.
12585 (x_redisplay_interface): Adjusted for the change of `struct
12586 redisplay_interface'.
12587
12588 * w32fns.c: Throughout the file, delete all USE_FONT_BACKEND
12589 conditionals. Don't check enable_font_backend. Delete all codes
12590 used only when USE_FONT_BACKEND is not defined. Surround non-used
12591 code by "#ifdef OLD_FONT" and "endif".
12592 (Fw32_select_font): Use FONT_COMPAT to get old font structure.
12593
12594 * w32font.h (struct w32font_info): New member.
12595 (FONT_COMPAT): New macro.
12596 (w32font_open_internal): Prototype adjusted.
12597
12598 * w32gui.h (XGCValues): Surround `XFontStruct *font' by "if
12599 OLD_FONT" and "endif".
12600
12601 * w32font.c: Throughout the file, delete all USE_FONT_BACKEND
12602 conditionals. Don't check enable_font_backend. Delete all codes
12603 used only when USE_FONT_BACKEND is not defined.
12604 (w32font_open): Return a font-object. Make a font-object by
12605 font_make_object. Adjusted for the change of struct w32font_info.
12606 (w32font_close): Don't free struct font. Adjusted for the change
12607 of struct w32font_info.
12608 (w32font_encode_char, w32font_text_extents, w32font_draw):
12609 Adjusted for the change of struct w32font_info.
12610 (w32font_draw): Likewise.
12611 (w32font_list_internal): Return a list, not vector.
12612 (w32font_open_internal): Change the 4th arg to font-object.
12613 Adjusted for the change of struct w32font_info and font-object format.
12614 (add_font_name_to_list): Don't downcase names.
12615 (w32_enumfont_pattern_entity): Make a font-entity by
12616 font_make_entity. Adjusted for the format change of font-entity.
12617 Use FONT_SET_STYLE to set a style-related font property. If a
12618 font is scalable, set avgwidth property to 0. Set font-entity
12619 property by font_put_extra.
12620 (font_matches_spec): Adjusted for the format change of font-entity.
12621 (w32_weight_table, w32_decode_weight): New variables.
12622 (w32_encode_weight): New function.
12623 (fill_in_logfont): Adjusted for the format change of font-spec.
12624 (w32font_full_name): Use FONT_WEIGHT_SYMBOLIC to get a symbol
12625 weight value.
12626 (w32font_driver): Adjusted for the change of struct font_driver.
12627
12628 * w32term.h: Throughout the file, delete all USE_FONT_BACKEND
12629 conditionals. Don't check enable_font_backend. Surround non-used
12630 code by "#ifdef OLD_FONT" and "endif".
12631 (FONT_WIDTH, FONT_HEIGHT, FONT_BASE, FONT_DESCENT)
12632 (FONT_AVG_WIDTH): Adjusted for the change of struct font.
12633
12634 * w32term.c: Throughout the file, delete all USE_FONT_BACKEND
12635 conditionals. Don't check enable_font_backend. Delete all codes
12636 used only when USE_FONT_BACKEND is not defined. Surround non-used
12637 code by "#ifdef OLD_FONT" and "endif".
12638
12639 * w32uniscribe.c: Delete USE_FONT_BACKEND conditional.
12640 (uniscribe_open): Return value changed to font-object.
12641 Adjusted for the format change of font-object.
12642 (uniscribe_otf_capability): Adjusted for the change of struct font.
12643 (add_opentype_font_name_to_list): Don't downcase names.
12644 (uniscribe_font_driver): Adjusted for the change of struct
12645 font_driver.
12646
126472008-05-13 Chong Yidong <cyd@stupidchicken.com>
12648
12649 * dispnew.c (update_frame_1): Check if tty output is still valid
12650 before flushing it.
12651
126522008-05-13 Jan Djärv <jan.h.d@swipnet.se>
12653
12654 * xterm.c (handle_one_xevent): Don't pass buttons higher than 3
12655 to Gtk+ menus.
12656
126572008-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
12658
12659 * dired.c (file_name_completion): Tweak the code so as to always do it
12660 in a single pass. Tighten the scope of some variables.
12661
12662 * dired.c (Qdefault_directory): New var.
12663 (file_name_completion): Use it instead of Fexpand_file_name.
12664 (syms_of_dired): Initialize it.
12665
126662008-05-12 Stefan Monnier <monnier@iro.umontreal.ca>
12667
12668 * fileio.c (double_dollars): Remove dead code.
12669
126702008-05-10 Eli Zaretskii <eliz@gnu.org>
12671
12672 * dired.c (Ffile_attributes, Fdirectory_files_and_attributes):
12673 Mention w32-get-true-file-attributes in doc string.
12674
12675 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
12676
126772008-05-09 Glenn Morris <rgm@gnu.org>
12678
12679 * fileio.c (Fread_file_name): Remove reference to insdef, deleted
12680 2008-04-23.
12681
126822008-05-09 Eli Zaretskii <eliz@gnu.org>
12683
12684 Support for reporting owner and group of each file on MS-Windows:
12685 * dired.c (stat_uname, stat_gname): New functions, with special
12686 implementation for w32.
12687 (Ffile_attributes): Use them instead of getpwuid and getgrgid.
12688
12689 * w32.c: Rename the_passwd_* to dflt_passwd_*.
12690 (dflt_group_name): New static variable.
12691 (dflt_group): Rename from the_group.
12692 (init_user_info): Init dflt_group fields. Get user's group name
12693 from LookupAccountSid.
12694 (g_b_init_get_file_security, g_b_init_get_security_descriptor_owner)
12695 (g_b_init_get_security_descriptor_group, g_b_init_is_valid_sid):
12696 New initialization states.
12697 (globals_of_w32): Initialize them to zero. Initialize the default
12698 group name to "None".
12699 (GetFileSecurity_Name): New global var, the name of the function
12700 to call for GetFileSecurity.
12701 (GetFileSecurity_Proc, GetSecurityDescriptorOwner_Proc)
12702 (GetSecurityDescriptorGroup_Proc, IsValidSid_Proc): New typedefs.
12703 (get_file_security, get_security_descriptor_owner)
12704 (get_security_descriptor_group, is_valid_sid)
12705 (get_file_security_desc, get_rid, get_name_and_id)
12706 (get_file_owner_and_group): New functions.
12707 (stat): Use get_file_security_desc and get_file_owner_and_group to
12708 report the owner and primary group of each file. Don't ignore the
12709 high 32 bits of file's size, now that st_size is 64-bit wide.
12710 Fix test when to get true file attributes.
12711 (init_user_info): Use get_rid instead of equivalent inline code.
12712 (fstat): Don't ignore the high 32 bits of file's size.
12713
127142008-05-09 Chong Yidong <cyd@stupidchicken.com>
12715
12716 * image.c (png_load): Use correct bit-depth for setting background
12717 color.
12718
127192008-05-08 Eli Zaretskii <eliz@gnu.org>
12720
12721 * Makefile.in (lisp, shortlisp): Rename epa-file-hook.elc to
12722 epa-hook.elc.
12723
127242008-05-08 Juanma Barranquero <lekktu@gmail.com>
12725
12726 * font.c (Ffont_match_p): Don't use `iff' in docstring.
12727
127282008-05-07 Dan Nicolaescu <dann@ics.uci.edu>
12729
12730 * macfns.c (Fx_create_frame): Make a copy of frame parameters
12731 because the original parameters are in pure storage now.
12732 (mac_window): Remove unused params. Update callers.
12733
127342008-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
12735
12736 * lread.c (substitute_object_recurse): Use lower-level primitives.
12737 Don't signal errors when traversing sub-char-tables.
12738 Don't loop over all the possible characters when traversing char-tables.
12739
12740 * print.c (print_preprocess): Add sub-char-tables to the print-table,
12741 just like we do in print.c.
12742
127432008-05-05 Stefan Monnier <monnier@iro.umontreal.ca>
12744
12745 * minibuf.c (Ftry_completion): Remove code left over from when we used
12746 scmp instead of Fcompare_strings.
12747
127482008-05-04 Juanma Barranquero <lekktu@gmail.com>
12749
12750 * w32fns.c (Fw32_battery_status): Fix computation of %t (h:min) format.
12751
127522008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12753
12754 * image.c [USE_MAC_IMAGE_IO] (image_load_image_io):
12755 Create bitmap context in native byte order.
12756
12757 * macterm.c (XDrawLine)
12758 (XCreatePixmapFromBitmapData) [USE_MAC_IMAGE_IO]: Create bitmap
12759 context in native byte order.
12760
127612008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12762
12763 * config.in: Regenerate.
12764
12765 * image.c (PIX_MASK_DRAW, PIX_MASK_RETAIN) [USE_MAC_IMAGE_IO]:
12766 New definitions for Image I/O support.
12767 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
12768 (mac_create_cg_image_from_image, x_create_x_image_and_pixmap)
12769 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
12770 (mac_data_provider_release_data, image_load_image_io)
12771 [USE_MAC_IMAGE_IO]: New functions.
12772 (CGImageCreateWithPNGDataProviderProcType) [MAC_OSX]: Remove typedef.
12773 (MyCGImageCreateWithPNGDataProvider) [MAC_OSX]: Remove variable.
12774 (init_image_func_pointer) [MAC_OSX]: Remove function.
12775 (image_load_quartz2d) [MAC_OSX]: Check availability of
12776 CGImageCreateWithPNGDataProvider at compile time.
12777 Use lowercase `false' for boolean constant.
12778 (png_load, jpeg_load, tiff_load, gif_load) [USE_MAC_IMAGE_IO]:
12779 Use image_load_image_io.
12780 (png_load) [!USE_MAC_IMAGE_IO && MAC_OSX]:
12781 Don't check MyCGImageCreateWithPNGDataProvider.
12782 (init_image) [MAC_OSX && TARGET_API_MAC_CARBON]:
12783 Don't call init_image_func_pointer.
12784
12785 * macgui.h (Pixmap) [USE_MAC_IMAGE_IO]: New definition for Image I/O.
12786
12787 * macterm.c (mac_cg_color_space_rgb) [USE_CG_DRAWING]:
12788 Make variable non-static.
12789 (XDrawLine, XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
12790 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
12791
12792 * macterm.h (ARGB_TO_ULONG, ALPHA_FROM_ULONG): New macros.
12793 (RED_FROM_ULONG): Mask off higher bits.
12794 (mac_cg_color_space_rgb) [USE_MAC_IMAGE_IO]: New extern.
12795
12796 * s/darwin.h [HAVE_CARBON && HAVE_AVAILABILITYMACROS_H]:
12797 Include AvailabilityMacros.h.
12798 (USE_MAC_IMAGE_IO, LIBS_IMAGE) [HAVE_CARBON]: New defines.
12799 (LIBS_CARBON) [HAVE_CARBON]: Use LIBS_IMAGE.
12800
128012008-05-03 Stefan Monnier <monnier@iro.umontreal.ca>
12802
12803 * chartab.c (Fset_char_table_range): If range is t, really set all
12804 chars to that value.
12805
128062008-05-03 Eli Zaretskii <eliz@gnu.org>
12807
12808 * dired.c (Ffile_attributes): Don't allow the device number become
12809 negative.
12810
128112008-05-02 Daiki Ueno <ueno@unixuser.org>
12812
12813 * Makefile.in (lisp, shortlisp): Add epa-file-hook.elc.
12814
128152008-05-02 Juri Linkov <juri@jurta.org>
12816
12817 * minibuf.c (Fread_from_minibuffer, Fread_string, Fread_command)
12818 (Fread_variable, Fread_buffer, Fcompleting_read): Document the
12819 DEFAULT argument as a list of default values in docstrings.
12820
128212008-05-01 Chong Yidong <cyd@stupidchicken.com>
12822
12823 * puresize.h (BASE_PURESIZE): Increase to 1210000.
12824
128252008-05-01 Martin Rudalics <rudalics@gmx.at>
12826
12827 * dispnew.c (change_frame_size_1): Preserve small windows when
12828 shrinking frames by calling set_window_height|width with third
12829 arg 2.
12830
12831 * window.h (struct window): Replace field too_small_ok by field
12832 resize_proportionally.
12833
12834 * window.c (make_window): Initialize resize_proportionally.
12835 (enlarge_window): Temporarily set resize_proportionally to make
12836 sure that shrink_windows does scale the window proportionally.
12837 (shrink_windows): When window has resize_proportionally set try
12838 to shrink it proportionally by stealing from other windows.
12839 (struct saved_window, Fset_window_configuration)
12840 (compare_window_configurations): Handle resize_proportionally.
12841 (WINDOW_TOTAL_SIZE): New macro.
12842 (window_min_size, shrink_windows, size_window): Use it.
12843 (check_min_window_sizes): Remove. Invalid values of
12844 window-min-height|width are handled by window_min_size_2 now.
12845 (size_window, Fsplit_window, enlarge_window)
12846 (adjust_window_trailing_edge, grow_mini_window): Don't call
12847 check_min_window_sizes.
12848 (window_min_size_2, window_min_size_1, window_min_size):
12849 New argument safe_p for retrieving "safe" minimum sizes.
12850 (Fdisplay_buffer, Fsplit_window, enlarge_window)
12851 (adjust_window_trailing_edge, grow_mini_window):
12852 Adjust arguments of window_min_size... functions.
12853 (shrink_windows): Argument min_size removed. New argument
12854 safe_p allows shrinking windows to their safe minimum sizes.
12855 Calculate minimum size and decide whether a window shall be
12856 deleted for each window individually.
12857 (size_window): When nodelete_p equals 2, tell shrink_windows to
12858 delete windows only if their new minimum size is no more safe.
12859 (shrink_window_lowest_first): Call window_min_size_1 to make
12860 sure to preserve modeline of bottom-most window when resizing
12861 the minibuffer.
12862 (Fset_window_configuration, Fcurrent_window_configuration)
12863 (compare_window_configurations): Do not handle
12864 window-min-height|width any more.
12865 (syms_of_window): Clarify window-min-height|width doc-strings.
12866
128672008-04-30 Stefan Monnier <monnier@iro.umontreal.ca>
12868
12869 * dired.c (file_name_completion): Fix up the encoding/decoding issue
12870 some more. Copy some of the code from Ftry_completions.
12871 Remove special case code that dates back to initial revision when the
12872 slash was only added when necessary and that can't trigger nowadays.
12873
128742008-04-27 Kenichi Handa <handa@m17n.org>
12875
12876 * font.c (font_prop_validate): Signal `error' instead of `font'.
12877
128782008-04-29 Jason Rumney <jasonr@gnu.org>
12879
12880 * w32fns.c (Fw32_battery_status): New defun.
12881 (syms_of_w32fns): Defsubr it.
12882
128832008-04-28 Andreas Schwab <schwab@suse.de>
12884
12885 * dired.c (file_name_completion): Fix another mixing of encoded
12886 and decoded names.
12887
128882008-04-28 Juanma Barranquero <lekktu@gmail.com>
12889
12890 * w32fns.c (Fw32_define_rgb_color): Fix typo in docstring.
12891
128922008-04-27 Juanma Barranquero <lekktu@gmail.com>
12893
12894 * fringe.c (Fdefine_fringe_bitmap): Doc fix.
12895
128962008-04-27 Andreas Schwab <schwab@suse.de>
12897
12898 * dired.c (file_name_completion): Fix inappropriate mixing of
12899 encoded and decoded names.
12900
12901 * xterm.c (XTread_socket): Fix use of uninitialized variable.
12902
12903 * puresize.h (BASE_PURESIZE): Increase to 1200000.
12904
129052008-04-26 Eli Zaretskii <eliz@gnu.org>
12906
12907 * dired.c (Ffile_attributes) [WINDOWSNT]: Undo change from
12908 2008-03-31, it's not needed anymore with `struct stat' definition
12909 on nt/inc/sys/stat.h. Undo changes from 2007-01-12 and 2007-01-13
12910 for the same reasons.
12911
129122008-04-25 Dennis Gilmore <ausil@fedoraproject.org> (tiny change)
12913
12914 * m/sparc.h: Additional redefinitions for GNU/Linux.
12915
129162008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12917
12918 * macterm.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: New variable.
12919 (syms_of_macterm) [USE_MAC_TSM]: Defvar it.
12920 (Qmouse_drag_overlay) [MAC_OSX]: New variable.
12921 (syms_of_macterm) [MAC_OSX]: Intern and staticpro it.
12922 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
12923 (mac_ax_selected_text_range) [MAC_OSX]: New functions.
12924 (mac_ax_number_of_characters) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
12925 Likewise.
12926
12927 * mactoolbox.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: Add extern.
12928 (fast_find_position, x_y_to_hpos_vpos, mac_ax_selected_text_range)
12929 (mac_ax_number_of_characters): Add externs.
12930 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
12931 [USE_MAC_TSM]: Likewise.
12932 (mac_handle_text_input_event) [MAC_OSX]:
12933 Handle kEventTextInputOffsetToPos for no active input area case.
12934 Handle kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
12935 (mac_handle_document_access_event)
12936 [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: New function.
12937 (install_application_handler) [MAC_OSX]: Register handlers for
12938 kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
12939 (install_application_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
12940 Register mac_handle_document_access_event.
12941
12942 * xdisp.c (x_y_to_hpos_vpos, fast_find_position) [HAVE_CARBON]:
12943 Make functions non-static.
12944
129452008-04-23 Stefan Monnier <monnier@iro.umontreal.ca>
12946
12947 * fileio.c (Vread_file_name_function, Vread_file_name_predicate)
12948 (read_file_name_completion_ignore_case, insert_default_directory)
12949 (Qdefault_directory): Move to minibuffer.el.
12950 (Fread_file_name): Call the new `read-file-name' instead.
12951
129522008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12953
12954 * mac.c (create_apple_event) [TARGET_API_MAC_CARBON]:
12955 Make function non-static.
12956 (create_apple_event_from_event_ref) [TARGET_API_MAC_CARBON]:
12957 Remove function.
12958 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
12959 Move to mactoolbox.c.
12960 (mac_event_parameters_to_lisp) [TARGET_API_MAC_CARBON]: New function.
12961
12962 * macgui.h (CGFloat) [!CGFLOAT_DEFINED]: New typedef.
12963 (mac_rect_make): New macro.
12964
12965 * macterm.c (mac_draw_image_string_atsui) [MAC_OSX]: Use CGFloat
12966 instead of float.
12967 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
12968 (init_cg_color, mac_draw_line, mac_draw_cg_image, XSetForeground)
12969 (XSetBackground) [USE_CG_DRAWING]: Likewise.
12970 (mac_draw_image_string_atsui) [MAC_OSX]: Use mac_rect_make instead of
12971 CGRectMake.
12972 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
12973 (mac_erase_rectangle, mac_draw_cg_image, mac_fill_rectangle)
12974 (mac_set_clip_rectangles) [USE_CG_DRAWING]: Likewise.
12975 (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
12976 instead of WindowRef in argument type.
12977 (XCreatePixmap) [!MAC_OS8]: Don't call SetPortWindowPort.
12978 (mac_invert_rectangle): Use CGContextSetBlendMode if available.
12979 (mac_set_clip_rectangles, mac_reset_clip_rectangles): Take argument F
12980 instead of DISPLAY. All uses changed.
12981 (mac_handle_size_change): Don't call SET_FRAME_GARBAGED.
12982 (x_calc_absolute_position): Simplify so as not to use
12983 FRAME_PIXEL_WIDTH/FRAME_PIXEL_HEIGHT.
12984
12985 * macterm.h (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
12986 instead of WindowRef in argument type.
12987 (create_apple_event_from_event_ref, create_apple_event_from_drag_ref)
12988 [TARGET_API_MAC_CARBON]: Remove externs.
12989 (create_apple_event, mac_event_parameters_to_lisp)
12990 [TARGET_API_MAC_CARBON]: Add externs.
12991
12992 * mactoolbox.c (Vmac_ts_script_language_on_focus)
12993 (saved_ts_script_language_on_focus) [USE_MAC_TSM]: Remove externs.
12994 (XTread_socket) [USE_MAC_TOOLBAR]: Select window if its structure part
12995 is clicked.
12996 (x_activate_menubar): Remove extern for saved_menu_event_location.
12997 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
12998 Move from mac.c.
12999
130002008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13001
13002 * alloc.c [!SYSTEM_MALLOC && !SYNC_INPUT] (uninterrupt_malloc)
13003 [HAVE_GTK_AND_PTHREAD && !DOUG_LEA_MALLOC]: Don't use recursive mutex.
13004
130052008-04-23 Jason Rumney <jasonr@gnu.org>
13006
13007 * w32.c (stat): When Vw32_get_true_file_attributes is Qlocal, get
13008 attributes only for local files.
13009
13010 * w32proc.c (syms_of_ntproc): Change Vw32_get_true_file attributes
13011 default to Qlocal.
13012
130132008-04-22 Juri Linkov <juri@jurta.org>
13014
13015 * buffer.c (Fswitch_to_buffer): Change interactive spec to call
13016 read-buffer-to-switch instead of using the letter "B".
13017
130182008-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
13019
13020 * fileio.c (Qdefault_directory): New variable.
13021 (Fread_file_name): Use it to pass `dir' to the completion functions.
13022
130232008-04-20 Chong Yidong <cyd@stupidchicken.com>
13024
13025 * xdisp.c (pos_visible_p): Check if iterator stops on a display string.
13026
130272008-04-19 Stefan Monnier <monnier@iro.umontreal.ca>
13028
13029 * keyboard.c (Vpre_help_message): Remove.
13030 (show_help_echo): Remove default C code.
13031
13032 * dired.c (directory_files_internal, file_name_completion):
13033 Only call ENCODE_FILE if the string is indeed decoded.
13034
130352008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
13036
13037 * Makefile.in (TOOLKIT_DEFINES): Remove.
13038 (LIBW): Use a bit less #if, remove left over OPEN_LOOK stuff.
13039
130402008-04-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13041
13042 * Makefile.in (MAC_OBJ): Add mactoolbox.o.
13043 (mactoolbox.o): New target.
13044
13045 * mac.c [MAC_OSX] (select_and_poll_event, sys_select):
13046 Use mac_run_loop_run_once instead of CFRunLoopRunInMode.
13047
13048 * macfns.c (x_set_background_color, mac_window, x_create_tip_frame):
13049 Use mac_set_frame_window_background instead of XSetWindowBackground.
13050 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]:
13051 Use mac_is_window_toolbar_visible instead of IsWindowToolbarVisible.
13052 (x_set_name_internal) [TARGET_API_MAC_CARBON]: Use mac_set_window_title
13053 instead of SetWindowTitleWithCFString.
13054 (mac_update_proxy_icon) [TARGET_API_MAC_CARBON]: Remove BLOCK_INPUT.
13055 Move function to mactoolbox.c.
13056 (mac_update_title_bar) [TARGET_API_MAC_CARBON]:
13057 Use mac_set_window_modified instead of SetWindowModified.
13058 Add BLOCK_INPUT around mac_set_window_modified/mac_update_proxy_icon.
13059 (mac_window, x_create_tip_frame): Use mac_create_frame_window.
13060 (Fx_focus_frame): Use mac_front_non_floating_window instead of
13061 FrontNonFloatingWindow. Use mac_activate_window instead of
13062 ActivateWindow. Use mac_active_non_floating_window instead of
13063 ActiveNonFloatingWindow.
13064 (show_hourglass, hide_hourglass) [TARGET_API_MAC_CARBON]:
13065 Use mac_show_hourglass and mac_hide_hourglass.
13066 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use mac_get_global_mouse
13067 instead of GetGlobalMouse.
13068 (Fx_show_tip): Use mac_move_window/mac_size_window/mac_show_window
13069 instead of MoveWindow/SizeWindow/ShowWindow, respectively.
13070 Use mac_bring_window_to_front instead of BringToFront.
13071 (Qfile_name_history) [TARGET_API_MAC_CARBON]: Move extern to
13072 mactoolbox.c.
13073 (Fx_file_dialog) [TARGET_API_MAC_CARBON]: Move function body to
13074 mac_file_dialog in mactoolbox.c. Use mac_file_dialog.
13075 (mac_nav_event_callback) [TARGET_API_MAC_CARBON]: Move function to
13076 mactoolbox.c.
13077
13078 * macgui.h [!HAVE_CARBON]: Include Quickdraw.h instead of QuickDraw.h.
13079 (XtPointer): Move typedef from macmenu.c.
13080 (enum button_type): Move enum from macmenu.c.
13081 (widget_value): Move typedef from macmenu.c.
13082 (M_APPLE, I_ABOUT, EXTRA_STACK_ALLOC, ARGV_STRING_LIST_ID)
13083 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
13084 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
13085 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
13086 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
13087 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
13088 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
13089 (DIALOG_ICON_TOP_MARGIN): Move defines from macmenu.c.
13090 (Selection): Move typedef from macselect.c.
13091 (RAM_TOO_LARGE_ALERT_ID, ABOUT_ALERT_ID) [MAC_OS8]: Move defines from
13092 macterm.c.
13093 (mac_set_window_title, mac_set_window_modified, mac_is_window_visible)
13094 (mac_is_window_collapsed, mac_bring_window_to_front)
13095 (mac_send_window_behind, mac_hide_window, mac_show_window)
13096 (mac_collapse_window, mac_front_non_floating_window)
13097 (mac_active_non_floating_window, mac_activate_window)
13098 (mac_move_window_structure, mac_move_window, mac_size_window)
13099 (mac_get_global_mouse, mac_is_window_toolbar_visible): New defines.
13100
13101 * macmenu.c [!TARGET_API_MAC_CARBON]: Move includes to mactoolbox.c.
13102 (enum mac_menu_kind): Move enum to mactoolbox.c.
13103 (min_menu_id): Move variable to mactoolbox.c.
13104 (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]: Likewise.
13105 (DIALOG_WINDOW_RESOURCE): Move define to mactoolbox.c.
13106 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
13107 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
13108 [TARGET_API_MAC_CARBON]: Likewise.
13109 (XtPointer): Move typedef to macgui.h.
13110 (enum button_type): Move enum to macgui.h.
13111 (widget_value): Move typedef to macgui.h.
13112 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
13113 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
13114 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
13115 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
13116 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
13117 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
13118 (DIALOG_ICON_TOP_MARGIN): Move defines to macgui.h.
13119 (popup_activated_flag): Make variable non-static.
13120 (x_activate_menubar, install_menu_quit_handler, pop_down_menu)
13121 (add_menu_item, fill_menu, dispose_menus):
13122 Move functions to mactoolbox.c.
13123 (restore_show_help_function, menu_target_item_handler)
13124 (install_menu_target_item_handler, mac_handle_dialog_event)
13125 (install_dialog_event_handler, pop_down_dialog, create_and_show_dialog)
13126 [TARGET_API_MAC_CARBON]: Likewise.
13127 (menu_quit_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: Likewise.
13128 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
13129 (find_and_call_menu_selection, name_is_separator): Make function
13130 non-static.
13131 (Vshow_help_function, timer_check) [TARGET_API_MAC_CARBON]: Move extern
13132 to mactoolbox.c.
13133 (set_frame_menubar): Don't call install_menu_quit_handler.
13134 (menu_item_selection): New variable.
13135 (mac_menu_show): Use create_and_show_popup_menu.
13136 (create_and_show_dialog) [TARGET_API_MAC_CARBON]: Don't return
13137 selection but set variable menu_item_selection. All uses changed.
13138 (mac_fill_menubar): Rename from fill_menubar. All uses changed.
13139 Call install_menu_quit_handler. Move to mactoolbox.c.
13140
13141 * macselect.c [!TARGET_API_MAC_CARBON]: Don't include Scrap.h.
13142 (Selection): Move typedef to macgui.h.
13143 (Vselection_converter_alist, Qmac_scrap_name, Qmac_ostype)
13144 (Vmac_apple_event_map, Qmac_apple_event_class, Qmac_apple_event_id):
13145 Make variables non-static.
13146 (Vmac_dnd_known_types) [TARGET_API_MAC_CARBON]: Likewise.
13147 (mac_handle_apple_event, cleanup_all_suspended_apple_events):
13148 Make functions non-static.
13149 (Vmac_service_selection) [MAC_OSX]: Likewise.
13150 (mac_get_selection_from_symbol, get_flavor_type_from_symbol)
13151 (mac_valid_selection_target_p, mac_clear_selection)
13152 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
13153 (mac_put_selection_value, mac_selection_has_target_p)
13154 (mac_get_selection_value, mac_get_selection_target_list)
13155 (init_apple_event_handler, install_drag_handler, remove_drag_handler):
13156 Move functions to mactoolbox.c.
13157 (mac_do_track_drag, mac_do_receive_drag) [TARGET_API_MAC_CARBON]:
13158 Likewise.
13159 (copy_scrap_flavor_data, mac_handle_service_event)
13160 (install_service_handler) [MAC_OSX]: Likewise.
13161 (syms_of_macselect) <Vmac_dnd_known_types>:
13162 Use mac_dnd_default_known_types.
13163
13164 * macterm.h (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y):
13165 Move to mactoolbox.c.
13166 (HOURGLASS_WIDTH, HOURGLASS_HEIGHT): Change to 15.
13167 (Fx_selection_owner_p): Add EXFUN.
13168 (install_window_handler, remove_window_handler, XSetWindowBackground):
13169 Remove externs.
13170 (do_apple_menu) [!TARGET_API_MAC_CARBON]: Likewise.
13171 (mac_prepare_for_quickdraw) [USE_CG_DRAWING]: Likewise.
13172 (x_raise_frame, x_lower_frame, mac_alert_sound_play)
13173 (install_application_handler, mac_get_frame_bounds, mac_get_frame_mouse)
13174 (mac_convert_frame_point_to_global, mac_set_frame_window_background)
13175 (mac_update_begin mac_update_end, mac_frame_up_to_date, x_flush)
13176 (mac_create_frame_window, mac_dispose_frame_window, mac_begin_clip)
13177 (mac_end_clip, mac_create_scroll_bar, mac_dispose_scroll_bar)
13178 (mac_set_scroll_bar_bounds, mac_redraw_scroll_bar, mac_fill_menubar)
13179 (create_and_show_popup_menu, mac_get_selection_from_symbol)
13180 (mac_valid_selection_target_p, mac_clear_selection)
13181 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
13182 (mac_put_selection_value, mac_selection_has_target_p)
13183 (mac_get_selection_value, mac_get_selection_target_list): Add externs.
13184 (mac_update_proxy_icon, mac_show_hourglass, mac_hide_hourglass)
13185 (mac_reposition_hourglass, mac_file_dialog, create_and_show_dialog)
13186 (mac_dnd_default_known_types) [TARGET_API_MAC_CARBON]: Likewise.
13187 (mac_run_loop_run_once) [MAC_OSX]: Likewise.
13188 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
13189 (mac_begin_cg_clip, mac_end_cg_clip) [USE_CG_DRAWING]: Likewise.
13190 (x_set_toolkit_scroll_bar_thumb) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
13191 (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
13192
13193 * mactoolbox.c: New file.
13194
131952008-04-18 Jason Rumney <jasonr@gnu.org>
13196
13197 * dired.c (Ffile_attributes) [WINDOWSNT]: Cast uid and gid to unsigned.
13198
131992008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
13200
13201 * character.c (Fmultibyte_char_to_unibyte):
13202 Return latin1 chars unchanged.
13203
13204 * fileio.c (Fexpand_file_name): Refine last fix so `nm' is only
13205 relocated if it points to `name'.
13206
132072008-04-17 Kenichi Handa <handa@m17n.org>
13208
13209 * data.c (Faset): Allow setting a multibyte character in an
13210 ASCII-only unibyte string.
13211
13212 * lisp.h (STRING_SET_MULTIBYTE): New macro.
13213
132142008-04-16 Stefan Monnier <monnier@iro.umontreal.ca>
13215
13216 * Makefile.in: Don't use HAVE_GTK and don't -DUSE_GTK since it's now
13217 done in config.h.
13218
132192008-04-16 Juanma Barranquero <lekktu@gmail.com>
13220
13221 * character.c (Fchar_bytes, Fchar_width, Fstring_width)
13222 (Fchar_direction): Add usage in the docstring.
13223
132242008-04-15 Chong Yidong <cyd@stupidchicken.com>
13225
13226 * keyboard.c (read_key_sequence): Remove always-true checks.
13227
132282008-04-14 Jason Rumney <jasonr@gnu.org>
13229
13230 * w32font.c (w32font_open_internal): Set max_bounds.descent in
13231 compatibility struct, for better underline positioning.
13232
132332008-04-13 David Hansen <david.hansen@gmx.net>
13234
13235 * dbusbind.c (dbus-get-unique-name): Remove extra copying of name
13236 string.
13237
132382008-04-12 Dan Nicolaescu <dann@ics.uci.edu>
13239
13240 * m/hp800.h (XUINT, XSET): Remove.
13241
132422008-04-12 Juanma Barranquero <lekktu@gmail.com>
13243
13244 * fileio.c (Fexpand_file_name): Add declaration for `p' missing in
13245 previous change.
13246
132472008-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
13248
13249 * fileio.c (Fexpand_file_name): Tighten the scope of `p' and `o' vars.
13250 Relocate `nm' after calling DECODE_FILE, in case the GC was run.
13251
132522008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
13253
13254 * keymap.h (map_keymap_canonical): Declare.
13255 * xmenu.c (single_keymap_panes): Use it.
13256
132572008-04-11 Glenn Morris <rgm@gnu.org>
13258
13259 * eval.c (Fdefvaralias): If the alias is bound and the target is not,
13260 set the target's value to that of the alias.
13261
132622008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
13263
13264 * term.c (set_tty_color_mode): Left over typo.
13265
132662008-04-10 Michael Albinus <michael.albinus@gmx.de>
13267
13268 * fileio.c (Fmake_symbolic_link): Surround code by #ifdef S_IFLNK
13269 only after check for file name handler functions. Signal, when
13270 native functionality is not supported.
13271 (syms_of_fileio): Declare it unconditionally.
13272
132732008-04-10 Jason Rumney <jasonr@gnu.org>
13274
13275 * w32menu.c (is_simple_dialog, simple_dialog_show): New functions.
13276 (Fx_popup_dialog): Handle simple yes/no questions as dialogs.
13277
13278 * w32.c (logon_network_drive): Also logon to remote drives that
13279 are mapped to drive letters.
13280
132812008-04-10 Glenn Morris <rgm@gnu.org>
13282
13283 * xdisp.c (truncate-partial-width-windows): Doc fix.
13284
132852008-04-10 Stefan Monnier <monnier@iro.umontreal.ca>
13286
13287 * fileio.c (read_file_name_cleanup, Fread_file_name_internal):
13288 Move functions to minibuffer.el.
13289 (syms_of_fileio): Don't declare them.
13290
132912008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
13292
13293 * minibuf.c (Vcompletion_auto_help): Move to minibuffer.el.
13294 (syms_of_minibuf): Remove its initialization.
13295
13296 * minibuf.c (temp_echo_area_glyphs): Remove unused function.
13297
132982008-04-09 Juanma Barranquero <lekktu@gmail.com>
13299
13300 * editfns.c (Ffield_string_no_properties): Fix typo in docstring.
13301
133022008-04-09 Jason Rumney <jasonr@gnu.org>
13303
13304 * makefile.w32-in (distclean): Delete makefile too.
13305 (maintainer-clean): New target.
13306
13307 * xdisp.c (redisplay_internal) [!WINDOWSNT]: Conditionalize last change.
13308
13309 * w32term.c (w32_compute_glyph_string_overhangs): Compute overhangs
13310 for new font backend and composite cases.
13311
133122008-04-09 Jan Djärv <jan.h.d@swipnet.se>
13313
13314 * atimer.c (alarm_signal_handler): Call run_timers if not SYNC_INPUT.
13315 Most of the code moved to run_timers.
13316 (do_pending_atimers): Call run_timers.
13317 (run_timers): New function.
13318
13319 * sysdep.c (emacs_write): If SYNC_INPUT and pending_atimers,
13320 run atimers.
13321
13322 * process.c (wait_reading_process_output): The same as above.
13323
133242008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
13325
13326 * minibuf.c (last_exact_completion): Remove variable.
13327 (Fdelete_minibuffer_contents, do_completion, Fminibuffer_complete)
13328 (complete_and_exit_1, complete_and_exit_2)
13329 (Fminibuffer_complete_and_exit, Fminibuffer_complete_word)
13330 (Fdisplay_completion_list, display_completion_list_1)
13331 (Fminibuffer_completion_help, Fself_insert_and_exit)
13332 (Fexit_minibuffer, Fminibuffer_message): Move functions to
13333 minibuffer.el.
13334 (syms_of_minibuf): Remove corresponding initializations.
13335
13336 * keyboard.c (Qdeactivate_mark): New var.
13337 (command_loop_1): Use it to call `deactivate-mark'.
13338 (syms_of_keyboard): Initialize it.
13339
13340 * xdisp.c (redisplay_internal): Reset tty's color_mode when switching
13341 to another frame.
13342 * frame.c (do_switch_frame): Refine the top_frame/async_visible code.
13343 Don't call set_tty_color_mode.
13344 (store_frame_param): Reset previous_frame rather than call
13345 set_tty_color_mode.
13346 * term.c (set_tty_color_mode): Rewrite.
13347 * dispextern.h (set_tty_color_mode): New type.
13348 * termchar.h (struct tty_display_info): Add `previous_color_mode'.
13349
133502008-04-08 Stefan Monnier <monnier@iro.umontreal.ca>
13351
13352 * keymap.c (access_keymap): Remove the value 2 for t_ok which was used
13353 for generic chars, which do not exist any more in emacs-unicode.
13354
133552008-04-08 Michael Albinus <michael.albinus@gmx.de>
13356
13357 * coding.c (detect_coding_emacs_mule)
13358 (Ffind_operation_coding_system): Fix typo.
13359
133602008-04-08 Jason Rumney <jasonr@gnu.org>
13361
13362 * w32uniscribe.c (SNAME): Extract only symbol name.
13363
13364 * w32font.h (struct w32_metric_cache): New struct.
13365 (w32font_info): Use it.
13366 (W32METRIC_NO_ATTEMPT, W32METRIC_SUCCESS, W32METRIC_FAIL)
13367 (CACHE_BLOCKSIZE): New constants.
13368
13369 * w32font.c (Qja, Qko, Qzh): New symbols.
13370 (syms_of_w32font): Initialise them.
13371 (font_matches_spec): Use them to filter by language.
13372 (recompute_cached_metrics): Remove function.
13373 (compute_metrics, clear_cached_metrics): New functions.
13374 (w32font_encode_char): Use them to manage metric cache.
13375 (w32font_text_extents): Cache metrics for all glyphs on demand.
13376 Delay converting glyph indices to WORD until needed.
13377 (w32font_open_internal): Initialize metric cache to empty.
13378 (registry_to_w32_charset): Charset should always be a symbol.
13379 (fill_in_logfont, list_all_matching_fonts): Family should
13380 always be a symbol.
13381
133822008-04-06 Jason Rumney <jasonr@gnu.org>
13383
13384 * w32uniscribe.c (uniscribe_shape): Increase items buffer size.
13385 Give up if glyph indices not supported. Use uniscribe obtained
13386 ABC widths for individual metrics. Map glyph clusters back to
13387 characters using fClusterStart flag. Return number of glyphs
13388 produced, not chars processed.
13389 (uniscribe_shape): Map char at FROM to current glyph.
13390
133912008-04-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13392
13393 * macmenu.c (fill_menu) [TARGET_API_MAC_CARBON]:
13394 Use SetMenuItemHierarchicalMenu.
13395
133962008-04-05 Jason Rumney <jasonr@gnu.org>
13397
13398 * image.c (pbm_load): Allow color values up to 65535.
13399 Throw an error if max_color_idx is outside the supported range.
13400 Report an error when image size is invalid.
13401 Read two bytes at a time when raw images have max_color_idx above 255.
13402
134032008-04-05 Eli Zaretskii <eliz@gnu.org>
13404
13405 * w32.c (readdir): If FindFirstFile/FindNextFile return in
13406 cFileName a file name that includes `?' characters, use the 8+3
13407 alias in cAlternateFileName instead.
13408
134092008-04-05 Kenichi Handa <handa@ni.aist.go.jp>
13410
13411 * ccl.c (ccl_driver): If ccl->quit_silently is nonzero, don't
13412 append "CCL: Quitted" when the CCL program is quitted.
13413 (setup_ccl_program): Initialize ccl->quit_silently to zero.
13414
13415 * ccl.h (struct ccl_program): New member quit_silently.
13416
134172008-04-05 Chong Yidong <cyd@stupidchicken.com>
13418
13419 * search.c (compile_pattern_1): Treat non-nil and non-string of
13420 search-spaces-regexp as nil.
13421
13422 * minibuf.c (Fassoc_string): Tweak docstring.
13423
134242008-04-05 Eli Zaretskii <eliz@gnu.org>
13425
13426 * dired.c (Ffile_attributes): Support inode numbers wider than 32
13427 bits. Remove ugly WINDOWSNT-specific kludge introduced on
13428 2008-03-14 to force inode be positive.
13429
13430 * w32.c (sys_chown, stat, fstat): Use S_* constants instead of
13431 _S_* ones, since we now use our own sys/stat.h.
13432 (stat, fstat): Don't mangle the inode number.
13433 (init_user_info): Don't restrict UID and GID to 0-60000 range.
13434
134352008-04-04 Stefan Monnier <monnier@iro.umontreal.ca>
13436
13437 * frame.h (struct frame): Give one more bit to `visible' since we use
13438 values larger than 1 to indicate obscured frames on ttys.
13439
13440 * keymap.c (Qkeymap_canonicalize): New var.
13441 (Fmap_keymap_internal): New fun.
13442 (describe_map): Use keymap-canonicalize.
13443
13444 * undo.c (last_boundary_buffer, last_boundary_position): New vars.
13445 (Fundo_boundary): Set them.
13446 (syms_of_undo): Initialize them.
13447 (record_point): Use them instead of last_point_position*.
13448 (last_undo_buffer): Change type.
13449
134502008-04-04 Jason Rumney <jasonr@gnu.org>
13451
13452 * w32font.c (w32font_text_extents): Use font's ascent and descent.
13453 (recompute_cached_metrics): Don't set ascent and descent per char.
13454
13455 * w32uniscribe.c (uniscribe_check_otf): Fix last change.
13456 (uniscribe_check_otf): Add GC protection before consing.
13457 Rearrange loop for counting features.
13458
134592008-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
13460
13461 * insdel.c (insert_from_buffer_1): Don't compare bytes in destination
13462 buffer with byte-size of source buffer.
13463
134642008-04-03 Chong Yidong <cyd@stupidchicken.com>
13465
13466 * callint.c (Fcall_interactively): Handle temporary region even
13467 when shift-select-mode is off.
13468
134692008-04-03 Jason Rumney <jasonr@gnu.org>
13470
13471 * w32uniscribe.c (uniscribe_check_otf): Sanity check otf_spec.
13472
134732008-04-03 Kenichi Handa <handa@m17n.org>
13474
13475 * coding.c (CATEGORY_MASK_ANY): Add CATEGORY_MASK_UTF_16_AUTO.
13476 (CATEGORY_MASK_UTF_16): Likewise.
13477 (detect_coding_utf_16): Add heuristics to reject utf-16 for a
13478 binary file.
13479 (detect_coding): Add null-byte detection for a binary file.
13480 (detect_coding_system): Likewise.
13481
134822008-04-03 Jason Rumney <jasonr@gnu.org>
13483
13484 * w32uniscribe.c: New file.
13485
13486 * font.h (uniscribe_font_driver) [WINDOWSNT]: Declare for w32fns.c.
13487
13488 * w32font.h (uniscribe_check_otf): Declare for w32font.c.
13489
13490 * w32font.c (Qbalinese, Qbuginese, Qbuhid, Qcuneiform, Qcypriot)
13491 (Qdeseret, Qglagolitic, Qgothic, Qhanunoo, Qkharoshthi)
13492 (Qlimbu, Qlinear_b, Qold_italic, Qold_persian, Qosmanya)
13493 (Qphags_pa, Qphoenician, Qshavian, Qsyloti_nagri)
13494 (Qtagalog, Qtagbanwa, Qtai_le, Qtifinagh, Qugaritic)
13495 (Qphonetic): New symbols.
13496 (syms_of_w32font): Initialize them.
13497 (font_supported_scripts): Use them.
13498 (w32font_list_family): List all charsets.
13499 (w32font_text_extents, recompute_cached_metrics): Fix metric
13500 calculations.
13501 (w32_enumfont_pattern_entity): Make full_type a DWORD.
13502 Give opentype fonts their own format.
13503 (font_matches_spec): New arguments backend and logfont.
13504 Handle :otf spec for uniscribe backend.
13505 (add_font_entity_to_list): Match truetype fonts in uniscribe backend.
13506 (fill_in_logfont): Use DEFAULT_CHARSET when charset not supplied.
13507
13508 * w32fns.c (Fx_create_frame): Conditionally register uniscribe
13509 font backend.
13510 (globals_of_w32fns): Initialize uniscribe font backend.
13511
13512 * makefile.w32-in (CONFIG_H): New variable. Use it to clean up
13513 dependencies.
13514 (w32uniscribe.$(O)): New file to build.
13515 (FONT_OBJ): Include w32uniscribe.$(O).
13516 (LIBS): Add uniscribe libraries.
13517
13518 * ftfont.c (ftfont_get_open_type_spec): Check spec->script, not val.
13519
135202008-04-02 Chong Yidong <cyd@stupidchicken.com>
13521
13522 * callint.c (Vshift_select_mode): New var.
13523 (Finteractive): Document new ^ spec.
13524 (Fcall_interactively): Call handle-shift-selection if the ^ spec
13525 is present.
13526
13527 * keyboard.c (Vthis_command_keys_shift_translated): New var.
13528 (command_loop_1): Avoid running the direct display versions of
13529 forward-char and backward-char if shift-selection may occur.
13530 (read_key_sequence): Set Vthis_command_keys_shift_translated if
13531 shift-translation takes place.
13532
13533 * buffer.c (Vtransient_mark_mode): Move docstring to simple.el to
13534 avoid clobbering by define-minor-mode.
13535
13536 * cmds.c (Fforward_char, Fbackward_char, Fforward_line)
13537 (Fbeginning_of_line, Fend_of_line): Add ^ interactive spec.
13538
13539 * syntax.c (Fforward_word): Add ^ interactive spec.
13540
13541 * window.c (Fscroll_up, Fscroll_down, Fscroll_left)
13542 (Fscroll_right): Add ^ interactive spec.
13543
135442008-04-01 Stefan Monnier <monnier@iro.umontreal.ca>
13545
13546 * xdisp.c (try_window_id): Don't forget to reset delta_bytes.
13547
13548 * casefiddle.c (casify_object): Fix up int/EMACS_INT mixup.
13549
13550 * charset.c (Funibyte_charset, Fset_unibyte_charset): Remove.
13551
135522008-03-31 Juri Linkov <juri@jurta.org>
13553
13554 * window.c (Fdisplay_buffer): Reinitialize `tem' to nil.
13555
135562008-03-30 Jan Djärv <jan.h.d@swipnet.se>
13557
13558 * gtkutil.c (xg_set_geometry): Fix indentation.
13559 (xg_resize_outer_widget): Remove.
13560 (x_wm_size_hint_off): Fix indentation.
13561 (xg_frame_set_char_size): Call flush_and_sync after
13562 gtk_window_resize.
13563 (x_wm_set_size_hint): Pass NULL as geometry window to
13564 gtk_window_set_geometry_hints due to Gtk+ bug nr 68668.
13565 Add menu bar and tool bar height to base height.
13566 (xg_update_frame_menubar, free_frame_menubar)
13567 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
13568 (update_frame_tool_bar, free_frame_tool_bar):
13569 Change xg_resize_outer_widget to xg_frame_set_char_size.
13570
135712008-03-30 Michael Albinus <michael.albinus@gmx.de>
13572
13573 * dbusbind.c (QCdbus_timeout): New D-Bus internal symbol.
13574 (Fdbus_call_method): New parameter TIMEOUT.
13575 (dbus-send-signal): Optimize UNGCPRO call.
13576
135772008-03-29 Juri Linkov <juri@jurta.org>
13578
13579 * window.c (Fdisplay_buffer): Move call to
13580 Vsplit_window_preferred_function out of conditions that check
13581 if window is eligible for vertical splitting.
13582 When Vsplit_window_preferred_function is non-nil, call it and use
13583 its non-nil return value as window. Otherwise, continue doing
13584 vertical splitting using Fsplit_window with arg horflag=nil.
13585 (syms_of_window) <Vsplit_window_preferred_function>: Change the
13586 default value from `split-window' to nil.
13587
135882008-03-29 Juri Linkov <juri@jurta.org>
13589
13590 * callint.c (Fcall_interactively): Revert 2008-03-16 change
13591 for interactive code letters 'b' and 'B'.
13592
135932008-03-29 Eli Zaretskii <eliz@gnu.org>
13594
13595 * fileio.c (Fexpand_file_name): Convert the value of $HOME to a
13596 multibyte string.
13597
135982008-03-29 Stefan Monnier <monnier@iro.umontreal.ca>
13599
13600 * keyboard.c (pending_funcalls): New var.
13601 (timer_check): Run it.
13602 (syms_of_keyboard): Initialize it.
13603 * terminal.c (Qrun_hook_with_args, Qdelete_terminal_functions)
13604 (Vdelete_terminal_functions): New vars.
13605 (syms_of_terminal): Initialize them.
13606 (Fdelete_terminal): Run delete-terminal-functions.
13607 * xdisp.c (safe_eval): Rewrite.
13608 (safe_call2): New fun.
13609 * frame.c (Qdelete_frame_functions): New var.
13610 (syms_of_frame): Initialize it.
13611 (Fdelete_frame): Use it and use safe_call2 and pending_funcalls.
13612 * lisp.h (safe_call2, pending_funcalls): Declare.
13613
136142008-03-28 Andreas Schwab <schwab@suse.de>
13615
13616 * indent.c (Fmove_to_column): Move declaration before statements.
13617
136182008-03-27 Stefan Monnier <monnier@iro.umontreal.ca>
13619
13620 * frame.h (enum fullscreen_type): Give it a name. Move it before use.
13621 (struct frame): Use bit fields for boolean vars.
13622
13623 * process.c (server_accept_connection): Simplify naming.
13624 (emacs_get_tty_pgrp): Use SDATA.
13625
13626 * coding.c (decode_coding_object): Fix last change.
13627
136282008-03-27 Jason Rumney <jasonr@gnu.org>
13629
13630 * w32fns.c (start_hourglass): Suppress hourglass on tty frames.
13631
136322008-03-27 Kenichi Handa <handa@ni.aist.go.jp>
13633
13634 * charset.c (Fdefine_charset_internal): Change the way of
13635 registering charsets in Vcharset_order_list.
13636 (syms_of_charset): Make the charset `eight-bit' supplementary.
13637
136382008-03-26 Alexandre Oliva <aoliva@redhat.com> (tiny change)
13639
13640 * regex.c (EXTEND_BUFFER): Change order of pointer addition
13641 operations, to avoid having the difference between pointers
13642 overflow.
13643
136442008-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
13645
13646 * indent.c (check_display_width): New fun.
13647 (scan_for_column): Use it.
13648
13649 * data.c (syms_of_data): Mark most-positive-fixnum and
13650 most-negative-fixnum as constants.
13651
13652 * xdisp.c (redisplay_internal): Reset selected_frame earlier.
13653
13654 * indent.c (scan_for_column): Extract from current_column_1.
13655 Merge with the same code from Fmove_to_column.
13656 (current_column_1, Fmove_to_column): Use it.
13657
136582008-03-25 Stefan Monnier <monnier@iro.umontreal.ca>
13659
13660 * keymap.c (map_keymap_internal): New fun.
13661 (map_keymap): Use it.
13662 (Fmap_keymap_internal): New fun.
13663 (Fmap_keymap): Remove left-out test from before make_save_value.
13664
13665 * keymap.c (Fmap_keymap): Use `map-keymap-sorted.
13666
13667 * frame.c (Fmodify_frame_parameters, x_set_frame_parameters):
13668 Use XCAR/XCDR.
13669
13670 * process.h (struct Lisp_Process): Remove filter_multibyte.
13671 * process.c (QCfilter_multibyte): Remove.
13672 (setup_process_coding_systems): Don't use filter_multibyte.
13673 (Fstart_process, Fmake_network_process): Don't set filter_multibyte.
13674 (read_process_output): Don't adjust multibyteness to filter_multibyte.
13675 (Fset_process_filter_multibyte): Change the coding-system to
13676 approximate the previous behavior.
13677 (Fprocess_filter_multibyte_p): Get the multibyteness straight from the
13678 coding-system.
13679
13680 * coding.c (decode_coding_object): When not decoding into a buffer,
13681 obey the coding system's preference of (uni|multi)byte.
13682
136832008-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
13684
13685 * casefiddle.c (casify_object): Avoid pathological N^2 worst case if
13686 every char is changed and has a different byte-length.
13687 (Fupcase_word, Fdowncase_word, Fcapitalize_word, operate_on_word):
13688 Fix int -> EMACS_INT.
13689
136902008-03-23 David Hansen <david.hansen@gmx.net>
13691
13692 * dbusbind.c (xd_read_message): Remove extra copying of message
13693 strings. Check for NULL `interface' or `member'.
13694
136952008-03-22 Eli Zaretskii <eliz@gnu.org>
13696
13697 * w32.c (readdir): If FindFirstFile/FindNextFile return in
13698 cFileName a file name that includes `?' characters, use the 8+3
13699 alias in cAlternateFileName instead.
13700
137012008-03-21 Stefan Monnier <monnier@iro.umontreal.ca>
13702
13703 * buffer.c (enlarge_buffer_text): Fix int -> EMACS_INT.
13704
137052008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
13706
13707 * intervals.c (temp_set_point, temp_set_point_both): Use EMACS_INT.
13708 (set_point, set_point_both): Use EMACS_INT. Remove `buffer' arg,
13709 work on current_buffer only instead (that was already the case
13710 for some of the code anyway).
13711 * buffer.h (set_point, set_point_both): Remove buffer arg, use long int.
13712 (temp_set_point, temp_set_point_both): Use EMACS_INT.
13713 (SET_PT, SET_PT_BOTH): Adjust.
13714 * intervals.h (set_point, temp_set_point, set_point_both)
13715 (temp_set_point_both): Remove redundant declarations.
13716
137172008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
13718
13719 * fileio.c (Finsert_file_contents):
13720 * lread.c (Feval_buffer): Use BUF_TEMP_SET_PT.
13721 * buffer.h (BUF_SET_PT): Remove. set_point_both doesn't work right
13722 when buffer != current_buffer anyway.
13723
137242008-03-20 Andreas Schwab <schwab@suse.de>
13725
13726 * callint.c (Fcall_interactively) [case 'B']: Use other-buffer
13727 as default.
13728
137292008-03-19 Jason Rumney <jasonr@gnu.org>
13730
13731 * w32fns.c (hourglass_timer, hourglass_hwnd): New variables.
13732 (syms_of_w32fns): Initialize them.
13733 (HOURGLASS_ID): New constant.
13734 (x_window_to_frame): Don't check hourglass_window.
13735 (w32_wnd_proc) <WM_TIMER>: Handle hourglass_timer.
13736 (w32_wnd_proc) <WM_EXITMENULOOP>: Set pending hourglass cursor.
13737 (w32_wnd_proc) <WM_SETCURSOR>: Set the hourglass or current cursor.
13738 (w32_wnd_proc) <WM_EMACS_SETCURSOR>: Set frame's current_cursor.
13739 Only change the cursor if hourglass is not active.
13740 (Fx_create_frame): Initialize frame's current_cursor.
13741 (hourglass_atimer): Remove.
13742 (hourglass_started): New function.
13743 (start_hourglass, cancel_hourglass, hide_hourglass): Adapt to w32.
13744 (show_hourglass): Adapt to w32, changing argument to frame.
13745
13746 * w32term.h (struct w32_output): Remove hourglass_window.
13747 Add current_cursor.
13748
13749 * eval.c (call_debugger, Fsignal):
13750 * keyboard.c (recursive_edit_1, cmd_error, Ftop_level)
13751 (command_loop_1, Fread_key_sequence, Fread_key_sequence_vector)
13752 (Fexecute_extended_command, cancel_hourglass_unwind):
13753 * minibuf.c (read_minibuf):
13754 * fns.c (Fy_or_n_p): Enable hourglass when HAVE_WINDOW_SYSTEM.
13755
137562008-03-19 Stefan Monnier <monnier@iro.umontreal.ca>
13757
13758 * window.c (run_funs): New fun.
13759 (run_window_configuration_change_hook): Use it to run the buffer-local
13760 and the global part of the hook.
13761
13762 * xdisp.c (format_mode_line_unwind_data): Add window argument.
13763 (unwind_format_mode_line): Restore selected window.
13764 (x_consider_frame_title, Fformat_mode_line): Set selected window.
13765
137662008-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
13767
13768 * editfns.c (Fchar_equal): Check they are valid characters.
13769
13770 * buffer.h (Fbuffer_list): Declare (for use in callint.c).
13771
137722008-03-17 Andreas Schwab <schwab@suse.de>
13773
13774 * regex.c (re_match_2_internal): Properly match raw 8-bit bytes
13775 against a charset.
13776
13777 * lisp.h (Fbuffer_list): Declare.
13778
137792008-03-17 Jan Djärv <jan.h.d@swipnet.se>
d6c952f8 13780
aac0c6e3
MR
13781 * gtkutil.c (free_frame_tool_bar): Only call gtk_container_remove if
13782 handlebox_widget is != 0.
13783
137842008-03-16 Juri Linkov <juri@jurta.org>
13785
13786 * callint.c (Fcall_interactively): For interactive code letters
13787 'b' and 'B' put the buffer list into the list of default "future"
13788 values of the minibuffer.
13789
137902008-03-16 Andreas Schwab <schwab@suse.de>
13791
13792 * keyboard.c (read_key_sequence): Fix downcasing of letters with
13793 modifiers.
13794
13795 * regex.c (re_match_2_internal): Correct matching of a charset
13796 against latin-1 characters.
13797
137982008-03-16 Kenichi Handa <handa@m17n.org>
13799
13800 * coding.c (CHAR_STRING_ADVANCE_NO_UNIFY)
13801 (STRING_CHAR_ADVANCE_NO_UNIFY): New macros.
13802 (coding_alloc_by_making_gap): Fix the way to preserve data in the gap.
13803 (alloc_destination): Fix the 2nd arg to coding_alloc_by_making_gap.
13804 (encode_coding_utf_8): Use CHAR_STRING_ADVANCE_NO_UNIFY instead of
13805 CHAR_STRING_ADVANCE.
13806 (produce_chars): Fix for the case that the source and the
13807 destination are the same buffer. Use CHAR_STRING_ADVANCE_NO_UNIFY
13808 instead of CHAR_STRING_ADVANCE.
13809 (consume_chars): Use STRING_CHAR_ADVANCE_NO_UNIFY instead of
13810 STRING_CHAR_ADVANCE.
13811
138122008-03-15 Andreas Schwab <schwab@suse.de>
13813
13814 * regex.c (re_match_2_internal): Correct matching of eight bit
13815 characters in unibyte strings.
13816
138172008-03-15 Martin Rudalics <rudalics@gmx.at>
13818
13819 * buffer.c (overlays_in, Foverlays_in): Include empty overlays
13820 at end of range when it coincides with the end of the buffer.
13821
138222008-03-14 Eli Zaretskii <eliz@gnu.org>
13823
13824 * dired.c (Ffile_attributes) [WINDOWSNT]: Force inode be positive.
13825
13826 * w32fns.c (globals_of_w32fns, Fx_create_frame): Fix last change.
13827
138282008-03-14 Jason Rumney <jasonr@gnu.org>
13829
13830 * editfns.c (initial_tz): New variable.
13831 (syms_of_editfns): Initialize it.
13832 (Fset_time_zone_rule): Set it when first called.
13833 Use it when TZSTRING is nil.
13834
13835 * w32fns.c (MONITOR_DEFAULT_TO_NEAREST, struct MONITOR_INFO)
13836 (MonitorFromPoint_Proc, GetMonitorInfo_Proc): New definitions.
13837 (monitor_from_point_fn, get_monitor_info_fn): New globals.
13838 (globals_of_w32fns): Initialize them.
13839 (compute_tip_xy): Use them to position tooltips.
13840
138412008-03-14 Glenn Morris <rgm@gnu.org>
13842
13843 * emacs.c (main): Revert previous change.
13844 (standard_args): Revert -internal-script back to -scriptload,
13845 and remove the long-option form.
13846
138472008-03-13 Glenn Morris <rgm@gnu.org>
13848
13849 * emacs.c (main, standard_args): Rename -scriptload to -internal-script.
13850 Remove option -enable-font-backend.
13851
138522008-03-12 Stefan Monnier <monnier@iro.umontreal.ca>
13853
13854 * buffer.c (Fswitch_to_buffer): Fall back on pop-to-buffer.
13855
138562008-03-11 Jan Djärv <jan.h.d@swipnet.se>
13857
13858 * xterm.c (x_connection_closed): For GTK: If this is the last
13859 terminal just exit without closing the display.
13860
138612008-03-11 Jason Rumney <jasonr@gnu.org>
13862
13863 * w32font.c (w32font_full_name): Use floor to round.
13864
f0131492 138652008-03-10 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
aac0c6e3
MR
13866
13867 * sound.c (alsa_configure): Declare vol at beginning of block.
13868
13869 * fontset.c (Ffontset_info): Remove extra semicolon.
13870
138712008-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
13872
13873 * fileio.c (Fsubstitute_in_file_name): Fix up computation of maximum
13874 size of resulting string.
13875
138762008-03-10 Jason Rumney <jasonr@gnu.org>
13877
13878 * dispnew.c (adjust_glyph_matrix): Initialize window_height.
13879
138802008-03-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13881
13882 * xdisp.c (handle_single_display_spec): Undo 2007-10-16 changes.
13883 Don't pretend as if characters with display property haven't been
13884 consumed for string-replacing-string case.
13885
138862008-03-08 Kim F. Storm <storm@cua.dk>
13887
13888 * xdisp.c (GET_NEXT_DISPLAY_ELEMENT): New macro.
13889 (get_next_display_element, next_element_from_string)
13890 (next_element_from_ellipsis, next_element_from_buffer): Use it.
13891
138922008-03-08 Andreas Schwab <schwab@suse.de>
13893
13894 * process.h (struct Lisp_Process): Declare bit fields as unsigned.
13895
138962008-03-06 Jason Rumney <jasonr@gnu.org>
13897
13898 * w32font.c (w32_registry): Take font_type argument. Use ANSI
13899 when charset not specified. Only translate ANSI to unicode when
13900 font_type is truetype.
13901 (w32font_coverage_ok): New function.
13902 (add_font_entity_to_list): Use it to filter unsuitable fonts.
13903
139042008-03-05 Kenichi Handa <handa@ni.aist.go.jp>
13905
13906 * lread.c (Fread_char): Resolve modifiers.
13907 (Fread_char_exclusive): Likewise.
13908
13909 * character.c (char_resolve_modifier_mask): New function.
13910 (char_string): Use char_resolve_modifier_mask.
13911 (Fchar_resolve_modifiers): New function.
13912 (syms_of_character): Declare Fchar_resolve_modifiers as Lisp
13913 function.
13914
139152008-03-04 Jason Rumney <jasonr@gnu.org>
13916
13917 * makefile.w32-in: Always include w32font.c in the build.
13918 * w32font.c: Wrap in USE_FONT_BACKEND conditional.
13919
139202008-03-04 Andreas Schwab <schwab@suse.de>
13921
13922 * Makefile.in (clean): Remove emacs-*.*.* instead of emacs-*.
13923 (versionclean): Likewise.
13924
139252008-03-04 Juanma Barranquero <lekktu@gmail.com>
13926
13927 * .cvsignore: Add oo.
13928
139292008-03-03 Andreas Schwab <schwab@suse.de>
13930
13931 * coding.c (decode_coding_object): Inhibit gap shrinking while
13932 decoding in place.
13933
139342008-03-03 Dan Nicolaescu <dann@ics.uci.edu>
13935
13936 * w32term.c: Remove unused include "gnu.h".
13937 * makefile.w32-in (w32term.o): Don't depend on gnu.h.
13938
13939 * gnu.h: Rename to ...
13940 * emacs-icon.h: ... this.
13941 * xterm.c: Use emacs-icon.h instead of gnu.h.
13942 * Makefile (xterm.o): Depend on emacs-icon.h, not gnu.h.
13943
139442008-03-03 Juanma Barranquero <lekktu@gmail.com>
13945
13946 * w32font.c: Include math.h.
13947
139482008-03-03 Jason Rumney <jasonr@gnu.org>
13949
13950 * w32font.c (recompute_cached_metrics): Change font arg to w32font_info.
13951 Compute options separately.
13952 (w32font_open_internal): Set glyph_idx before caching metrics.
13953
13954 * w32font.h (NTM_PS_OPENTYPE, NTM_TT_OPENTYPE, NTM_TYPE1):
13955 Define if system headers don't.
13956 (struct w32font_info): Enlarge ascii_metrics. Add glyph_idx.
13957 (w32font_encode_char): Don't declare here.
13958
13959 * w32font.c (Quniscribe, QCformat): New symbols.
13960 (syms_of_w32font): Define them.
13961 (w32font_has_char): Indicate uncertainty.
13962 (w32font_encode_char): Encode as glyph point. Make static.
13963 (recompute_cached_metrics): New function.
13964 (w32font_open_internal): Use it. Set font to use glyph points
13965 initially. Set format based on type of font.
13966 (w32font_text_extents, w32font_draw): Optionally use glyph points.
13967 (w32_enumfont_pattern_entity): Accept backend arg. Set type based
13968 on it. Set format based on information available here.
13969 (add_font_entity_to_list): Identify backend based on opentype_only.
13970
139712008-03-02 Andreas Schwab <schwab@suse.de>
13972
13973 * ftfont.c (ftfont_pattern_entity): Fix aliasing violations.
13974
13975 * coding.c (decode_coding_big5, produce_chars):
13976 Fix typos in last change.
13977
139782008-03-02 Kentaro Ohkouchi <nanasess@fsm.ne.jp>
13979
13980 * gnu.h: New icon.
13981
139822008-03-02 Kenichi Handa <handa@m17n.org>
13983
13984 * coding.c (decode_coding_utf_8): When eol-type of CODING is
13985 `dos', don't decode '\r' if that is the last in the source.
13986 (decode_coding_utf_16, decode_coding_emacs_mule)
13987 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
13988 (decode_coding_raw_text, decode_coding_charset): Likewise.
13989 (produce_chars): Don't decode EOL here. Use EMACS_INT.
13990
139912008-03-01 Jason Rumney <jasonr@gnu.org>
13992
13993 * w32font.c (w32font_full_name): Report point size for scalable fonts.
13994
139952008-03-01 Kim F. Storm <storm@cua.dk>
13996
13997 * dispextern.h (CHAR_GLYPH_SPACE_P): Check for default face.
13998
139992008-03-01 Jason Rumney <jasonr@gnu.org>
14000
14001 * w32font.c (w32font_full_name): New function.
14002 (w32font_open_internal): Use it.
14003
140042008-03-01 Kim F. Storm <storm@cua.dk>
14005
14006 * dispnew.c (line_draw_cost): Fix invalid glyph check.
14007
140082008-03-01 Jason Rumney <jasonr@gnu.org>
14009
14010 * font.c (font_unparse_fcname): Increase len when style is a symbol.
14011
140122008-03-01 Jan Djärv <jan.h.d@swipnet.se>
14013
14014 * xterm.c (handle_one_xevent): For Gtk+ and ConfigureNotify, call
14015 xg_frame_resized when the event is for the edit widget.
14016
14017 * gtkutil.h (xg_frame_resized): Renamed from xg_resize_widgets.
14018
14019 * gtkutil.c (xg_resize_outer_widget): Only do one of set_geometry or
14020 set_char_size.
14021 (xg_frame_resized): Renamed from xg_resize_widgets. Remove all
14022 operations on widgets here. Just set frame size if needed.
14023 (flush_and_sync, x_wm_size_hint_off, xg_pack_tool_bar): New functions.
14024 (xg_frame_set_char_size): Call x_wm_size_hint_off before resizing.
14025 (x_wm_set_size_hint): Set size hints on the edit widget only, not
14026 the whole frame.
14027 (xg_create_tool_bar): Move attachment of the tool bar to
14028 xg_pack_tool_bar. Do not attach the tool bar if there are no items.
14029 (free_frame_tool_bar): Remove call to SET_FRAME_GARBAGED.
14030
140312008-03-01 Jason Rumney <jasonr@gnu.org>
14032
14033 * w32fns.c (w32_msg_pump): Disable debug code.
14034
140352008-03-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14036
14037 * m/intel386.h [MAC_OSX || DARWIN]: Define NO_ARG_ARRAY if _LP64.
14038
140392008-02-29 Chong Yidong <cyd@stupidchicken.com>
14040
14041 * xdisp.c (next_overlay_string): Don't set
14042 overlay_strings_at_end_processed_p if we're currently reading from
14043 a display string.
14044
140452008-02-29 Stefan Monnier <monnier@iro.umontreal.ca>
14046
14047 * xdisp.c (get_overlay_strings_1): Fix typo.
14048
140492008-02-29 Chong Yidong <cyd@stupidchicken.com>
14050
14051 * xdisp.c (get_overlay_strings_1): Add missing argument type.
14052
140532008-02-28 Kenichi Handa <handa@ni.aist.go.jp>
14054
14055 * ftfont.c (ftfont_match): Explicitly set pixelsize in pattern.
14056
14057 * xdisp.c (display_mode_element): Cancel the previous change.
14058 (decode_mode_spec): Likewise.
14059 (handle_auto_composed_prop): Don't make composition if it->string
14060 is a string.
14061
140622008-02-27 Kim F. Storm <storm@cua.dk>
14063
14064 * lisp.h (GLYPH): Change type from int to struct with separate char
14065 and face_id members.
14066 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Delete macros.
14067 (GLYPH_CHAR, GLYPH_FACE): Remove slow versions with frame arg.
14068 (FAST_GLYPH_CHAR, FAST_GLYPH_FACE): Rename macros to ...
14069 (GLYPH_CHAR, GLYPH_FACE): ... these. Change users.
14070 (FAST_MAKE_GLYPH, MAKE_GLYPH): Remove. Rewrite users to use ...
14071 (SET_GLYPH, SET_GLYPH_CHAR, SET_GLYPH_FACE): ... these macros instead.
14072 (GLYPH_CODE_CHAR, GLYPH_CODE_FACE, GLYPH_CODE_P)
14073 (GLYPH_CODE_CHAR_VALID_P, SET_GLYPH_FROM_GLYPH_CODE): New macros to
14074 handle new Lisp glyph code encoding, either an integer or a cons.
14075
14076 * disptab.h (GLYPH_SIMPLE_P): Rewrite.
14077 (GLYPH_ALIAS): Delete.
14078 (GLYPH_ALIAS_P, GLYPH_FOLLOW_ALIASES): Rewrite.
14079 (GLYPH_LENGTH, GLYPH_STRING): Use GLYPH_CHAR.
14080 (GLYPH_FROM_CHAR): Replace macro by ...
14081 (SET_GLYPH_FROM_CHAR): ... this macro. Change users.
14082
14083 * dispextern.h (CHAR_GLYPH_SPACE_P): Simplify.
14084 (GLYPH_FROM_CHAR_GLYPH): Replace macro by ...
14085 (SET_GLYPH_FROM_CHAR_GLYPH): ... this macro. Change users.
14086 (GLYPH_INVALID_P): New macro.
14087 (spec_glyph_lookup_face): Update prototype.
14088
14089 * dispnew.c (line_draw_cost): Adapt to new glyph type.
14090 (build_frame_matrix_from_leaf_window): Adapt to new glyph type and
14091 new glyph code encoding.
14092 (spec_glyph_lookup_face): No return value; update passed glyph instead.
14093 (init_display): Use SET_CHAR_GLYPH to initialize space_glyph.
14094
14095 * xdisp.c (get_next_display_element, next_element_from_display_vector):
14096 Adapt to new glyph type and new glyph code encoding.
14097
14098 * term.c (encode_terminal_code, produce_special_glyphs): Likewise.
14099
14100 * indent.c (current_column, current_column_1, Fmove_to_column)
14101 (compute_motion): Adapt to new glyph code encoding.
14102
14103 * msdos.c (IT_write_glyphs): Adapt to new glyph type.
14104
141052008-02-27 Chong Yidong <cyd@stupidchicken.com>
14106
14107 * process.c (wait_reading_process_output): Check for window
14108 changes caused by timers.
14109 Suggested by Johan Bockgård.
14110
141112008-02-27 Glenn Morris <rgm@gnu.org>
14112
14113 * emacs.c (USAGE1): Add `--disable-font-backend'.
14114
141152008-02-27 Stefan Monnier <monnier@iro.umontreal.ca>
14116
14117 * fileio.c (Finsert_file_contents): Don't reset undo_list if no change
14118 is made to the buffer.
14119
141202008-02-26 Stefan Monnier <monnier@iro.umontreal.ca>
14121
14122 * dispextern.h (face_at_buffer_position, face_for_overlay_string)
14123 (face_at_string_position):
14124 * xfaces.c (face_at_buffer_position, face_for_overlay_string)
14125 (face_at_string_position):
14126 * xdisp.c (display_string, next_overlay_change):
14127 * buffer.h (overlays_at):
14128 * buffer.c (overlays_at): Use EMACS_INT for buffer positions.
14129 Update callers.
14130
141312008-02-26 Chong Yidong <cyd@stupidchicken.com>
14132
14133 * editfns.c (Fformat): Doc fix.
14134
141352008-02-26 Juanma Barranquero <lekktu@gmail.com>
14136
14137 * font.c (Ffont_spec, Ffont_at): Fix typos in docstrings.
14138 (Ffont_put, Flist_families, Ffont_fill_gstring, Ffont_drive_otf)
14139 (Ffont_otf_alternates, Fquery_font): Doc fixes.
14140
141412008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
14142
14143 * buffer.c (Fbuffer_swap_text): New function.
14144 (syms_of_buffer): Defsubr it.
14145
141462008-02-25 Chong Yidong <cyd@stupidchicken.com>
14147
14148 * keyboard.c (command_loop_1): Revert 2006-10-09 change.
14149
141502008-02-25 Jason Rumney <jasonr@gnu.org>
14151
14152 * w32font.c (w32font_draw): Draw one character at a time when padding.
14153
141542008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
14155
14156 * window.c (Fdelete_window, Fadjust_window_trailing_edge):
14157 Handle a nil arg. Use run_window_configuration_change_hook.
14158 (delete_window, adjust_window_trailing_edge): Don't handle nil any more.
14159 (Fenlarge_window, Fshrink_window, Fset_window_configuration):
14160 Use run_window_configuration_change_hook.
14161
141622008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
14163
14164 * xdisp.c (x_produce_glyphs): For a visible glyph, assure at least
14165 1-pixel width.
14166
141672008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
14168
14169 * xdisp.c (fill_glyph_string): Pay attention to glyph->padding_p.
14170 (append_glyph): Set glyph->pixel_width and glyph->padding_p to 1
14171 if the glyph in the font is zero pixel with.
14172
14173 * dispextern.h (struct glyph_string): New member padding_p.
14174
14175 * w32font.c (w32font_draw): Pay attention to s->padding_p.
14176
14177 * ftxfont.c (ftxfont_draw): Pay attention to s->padding_p.
14178
14179 * xfont.c (xfont_draw): Pay attention to s->padding_p.
14180
14181 * xftfont.c (xftfont_draw): Pay attention to s->padding_p.
14182
14183 * font.c: If the font driver doesn't have `shape' function, return Qnil.
14184
141852008-02-25 Jason Rumney <jasonr@gnu.org>
14186
14187 * w32fns.c (enum_font_cb2): Don't use raster fonts for Unicode.
14188
141892008-02-24 Stefan Monnier <monnier@iro.umontreal.ca>
14190
14191 Allow fine-grained image-cache flushing.
14192 * dispextern.h (struct image): Add `dependencies' field.
14193 (clear_image_caches): Change arg to Lisp_Object.
14194 * image.c (make_image): Initialize `dependencies' field.
14195 (clear_image_cache): Change arg to allow fine-grained flushing.
14196 Perform the flush even if image-cache-eviction-delay is nil.
14197 (clear_image_caches): Change arg to Lisp_Object.
14198 (Fclear_image_cache): Expand meaning of the argument.
14199 (mark_image): Mark `dependencies' field.
14200 * xfaces.c (clear_face_cache): Adapt arg to call to clear_image_caches.
14201 (lface_hash): Use XHASH rather than XFASTINT.
14202 (face_at_buffer_position): Fix int -> EMACS_INT position.
14203 * xdisp.c (next_overlay_change): Fix int -> EMACS_INT position.
14204 (select_frame_for_redisplay): Remove code duplication.
14205 (redisplay_internal): Adapt arg to call to clear_image_caches.
14206
142072008-02-24 Dan Nicolaescu <dann@ics.uci.edu>
14208
14209 * s/vms4-0.h:
14210 * s/vms4-2.h:
14211 * s/vms4-4.h:
14212 * s/vms5-5.h: Remove, unused.
14213
14214 * s/irix5-2.h:
14215 * s/irix6-0.h:
14216 * s/riscos5.h:
14217 * s/mach-bsd4-3.h:
14218 * m/mips4.h: Remove files for obsolete systems.
14219
14220 * Makefile.in:
14221 * filelock.c:
14222 * unexmips.c:
14223 * m/hp9000s300.h:
14224 * m/iris4d.h:
14225 * s/aix3-1.h:
14226 * s/hpux.h:
14227 * s/msdos.h:
14228 * s/usg5-0.h:
14229 * s/usg5-2-2.h:
14230 * s/usg5-2.h:
14231 * s/usg5-3.h: Remove references to obsolete variables.
14232
14233 * s/irix5-0.h: Remove, move all the contents ...
14234 * s/irix6-5.h: ... here. Simplify.
14235 * config.in: Regenerate.
14236
142372008-02-24 Jason Rumney <jasonr@gnu.org>
14238
14239 * w32term.c (x_draw_glyph_string_background): Clear the background
14240 manually when cleartype is in use.
14241 (x_draw_glyph_string_foreground): Draw text transparently when
14242 cleartype is in use.
14243
14244 * w32font.c (w32font_text_extents): Avoid getting HDC and selecting
14245 a font into it unless we have to.
14246
142472008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
14248
14249 * intervals.h (INT_LISPLIKE): Remove. It may misfire.
14250 (NULL_INTERVAL_P, SET_INTERVAL_PARENT): Don't use it.
d6c952f8 14251
aac0c6e3
MR
142522008-02-18 Jason Rumney <jasonr@gnu.org>
14253
14254 * w32fns.c (Fw32_shell_execute): Encode parameters.
14255
142562008-02-09 Eli Zaretskii <eliz@gnu.org>
14257
14258 * fileio.c (syms_of_fileio) <insert-default-directory>: Doc fix.
14259
142602008-02-05 Juanma Barranquero <lekktu@gmail.com>
14261
14262 * unexhp9k800.c (read_header): Replace `legal' with `valid'.
14263
142642008-02-24 Ulrich Neumerkel <ulrich@complang.tuwien.ac.at> (tiny change)
14265
14266 * xterm.c (x_set_offset): Don't change the gravity if
14267 CHANGE_GRAVITY is -1.
14268
142692008-02-23 Chong Yidong <cyd@stupidchicken.com>
14270
14271 * fileio.c (auto_save_error_occurred): New var.
14272 (auto_save_error): Set it.
14273 (Fdo_auto_save): Don't overwrite the error message if an auto-save
14274 error occurred.
14275
142762008-02-23 Eli Zaretskii <eliz@gnu.org>
14277
14278 * w32.c (globals_of_w32): Add initializations for
14279 g_b_init_get_sid_sub_authority and
14280 g_b_init_get_sid_sub_authority_count.
14281
142822008-02-22 Stefan Monnier <monnier@iro.umontreal.ca>
14283
14284 * font.c (font_match_xlfd, font_check_xlfd_parse): New funs.
14285 (font_parse_xlfd): Use them for sanity check.
14286 (Finternal_set_font_style_table): Make sure the table is bijective.
14287
14288 Consolidate the image_cache to the terminal struct.
14289 * termhooks.h (P_): Remove redundant def.
14290 (struct terminal): New field `image_cache'.
14291 * frame.h (FRAME_IMAGE_CACHE): New macro. Use it everywhere in place
14292 of FRAME_X_IMAGE_CACHE.
14293 * xterm.h (struct x_display_info): Remove image_cache field.
14294 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
14295 * w32term.h (struct w32_display_info): Remove image_cache field.
14296 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
14297 * macterm.h (struct mac_display_info): Remove image_cache field.
14298 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
14299 * xterm.c (x_term_init):
14300 * w32term.c (w32_term_init):
14301 * macterm.c (mac_term_init): Set the image_cache in the terminal.
14302 * dispextern.h (clear_image_cache, forall_images_in_image_cache):
14303 Remove declarations.
14304 (clear_image_caches, mark_image_cache): New declarations.
14305 * xfaces.c (clear_face_cache):
14306 * xdisp.c (redisplay_internal): Use clear_image_caches.
14307 * image.c (clear_image_cache): Don't check that a frame is on
14308 a window-system before checking if it shares the same cache.
14309 (clear_image_caches): New function.
14310 (Fclear_image_cache): Use it.
14311 (mark_image): Move from allo.c.
14312 (mark_image_cache): Move from alloc.c and forall_images_in_image_cache.
14313 * alloc.c (mark_image, mark_image_cache): Move to image.c.
14314 (mark_object): Don't call mark_image_cache for frames.
14315 (mark_terminals): Call mark_image_cache.
14316
14317 * lisp.h (Fdelete_terminal): Declare.
14318
14319 * charset.h (CHECK_CHARSET, CHECK_CHARSET_GET_ID)
14320 (CHECK_CHARSET_GET_ATTR): Don't use the inexistent return value of
14321 wrong_type_argument.
14322
143232008-02-22 Kenichi Handa <handa@ni.aist.go.jp>
14324
14325 * Makefile.in (lisp): Remove devanagari.el, kannada.el,
14326 malayalam.el, and tamil.el. Add sinhala.el.
14327
143282008-02-21 Stefan Monnier <monnier@iro.umontreal.ca>
14329
14330 * xterm.c (x_connection_closed): Consolidate identical tests.
14331 (x_delete_terminal): Don't crash if called via x_connection_closed.
14332
143332008-02-21 Kenichi Handa <handa@ni.aist.go.jp>
14334
14335 * xdisp.c (decode_mode_spec): New arg string.
14336 (display_mode_element): Adjust for the above change.
14337
143382008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
14339
14340 * callint.c (Fcall_interactively): Use AREF.
14341
143422008-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
14343
14344 * font.c (font_unparse_xlfd): Don't ignore integer pixel size specs.
14345
143462008-02-18 Jan Djärv <jan.h.d@swipnet.se>
14347
14348 * xfns.c (Fx_show_tip): Set string to " " if empty.
14349
143502008-02-17 Dan Nicolaescu <dann@ics.uci.edu>
14351
14352 * callint.c (syms_of_callint): Initialize Vmark_even_if_inactive
14353 with Qt.
14354
143552008-02-17 Kenichi Handa <handa@m17n.org>
14356
14357 * ftfont.c (ftfont_shape): Return Lispy number.
14358
14359 * xfaces.c (prepare_face_for_display): Use display_info->font->fid
14360 for GCs.
14361 (Finternal_set_font_selection_order): Call font_update_sort_order
14362 only when enable_font_backend is set.
14363 (realize_x_face): Set face->font_info to that of default face only
14364 when enable_font_backend is set.
14365
14366 * xdisp.c (handle_composition_prop): Set it->c to the fist
14367 character of the composed region.
14368 (fill_composite_glyph_string): Set base_face->font_info to
14369 s->font_info. Get a face for ascii from base_face->ascii_face.
14370 (BUILD_COMPOSITE_GLYPH_STRING): Call fill_composite_glyph_string
14371 with a face already decided.
14372 (x_produce_glyphs): Be sure to set it->ascent and it->descent to
14373 non-negative.
14374 (x_produce_glyphs): If the composition method is ..._WITH_GLYPH_STRING,
14375 call font_prepare_composition unconditionally.
14376
14377 * xfns.c (x_make_gc): Use the default font id of the frame for GCs.
14378
14379 * xterm.h (struct x_display_info): New member font.
14380
14381 * xterm.c (x_set_cursor_gc): Use display_info->font->fid for GCs.
14382 (x_set_mouse_face_gc, x_new_font): Likewise.
14383 (x_term_init): Setup display_info->font.
14384 (x_delete_terminal): Free display_info->font.
14385
14386 * xfont.c (xfont_draw): Use BLOCK_INPUT and UNBLOCK_INPUT.
14387
14388 * ftxfont.c (ftxfont_default_fid): Delete it.
14389 (ftxfont_open): Set xfont->fid to 0.
14390 (ftxfont_end_for_frame): Clear data specific to the frame and the
14391 font-driver.
14392
14393 * xftfont.c (xftfont_default_fid): Delete it.
14394 (xftfont_open): Set xfont->fid to 0.
14395
14396 * fontset.c (FONTSET_OBJLIST): New macro.
14397 (fontset_find_font): Update font-object list of the fontset.
14398 (free_realized_fontset): New function.
14399 (free_face_fontset): Call free_realized_fontset.
14400 (Ffont_info): Call font_close_object only when enable_font_backend
14401 is set.
14402
14403 * font.c [HAVE_X_WINDOWS]: Include xterm.h.
14404 [HAVE_NTGUI]: Include w32term.h.
14405 [MAC_OS]: Include macterm.ch.
14406 (font_otf_ValueRecord): Use make_number.
14407 (font_finish_cache): Fix handling of reference count.
14408 (font_clear_cache): Update num_fonts.
14409 (font_open_entity): Update smallest_char_width and
14410 smallest_font_height of the frame.
14411 (font_close_object): Update num_fonts.
14412 (Fclear_font_cache): Fix finding the target cache data.
14413
144142008-02-16 Glenn Morris <rgm@gnu.org>
14415
14416 * fontset.c (Finternal_char_font): Fix compilation warning.
14417
144182008-02-16 Eli Zaretskii <eliz@gnu.org>
14419
14420 * w32.c (init_user_info): Use TOKEN_USER and TOKEN_PRIMARY_GROUP
14421 instead of char arrays. Enlarge the size of array passed to
14422 get_token_information.
14423
14424 * font.c (Ffont_fill_gstring, Fget_font_glyphs): Fix compilation
14425 warnings.
14426
144272008-02-15 Dan Nicolaescu <dann@ics.uci.edu>
14428
14429 * .gdbinit: Don't set `args', it breaks gdb --args.
14430
144312008-02-14 Stefan Monnier <monnier@iro.umontreal.ca>
14432
14433 * fileio.c (Finsert_file_contents): Adjust offsets when replacing
14434 within a narrowed buffer.
14435
144362008-02-14 Kenichi Handa <handa@ni.aist.go.jp>
14437
14438 * coding.c (decode_coding_object, encode_coding_object):
14439 Preserve Vdeactivate_mark. Delete unnecessary call of Fcurrent_buffer.
14440
144412008-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
14442
14443 * coding.c (coding_set_destination): Use BEG_BYTE rather than
14444 hardcoding 1.
14445 (detect_coding_system):
14446 * lisp.h (detect_coding_system, chars_in_text, multibyte_chars_in_text)
14447 (string_char_to_byte, string_byte_to_char, insert_from_gap):
14448 * insdel.c (insert_from_gap):
14449 * fns.c (string_char_byte_cache_charpos, string_char_byte_cache_bytepos)
14450 (string_char_to_byte, string_byte_to_char, string_make_multibyte)
14451 (string_to_multibyte):
14452 * character.c (chars_in_text, multibyte_chars_in_text):
14453 * fileio.c (Finsert_file_contents): Use EMACS_INT for buffer positions.
14454
14455 * character.h (FETCH_STRING_CHAR_ADVANCE)
14456 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE)
14457 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA and SREF.
14458 (DEC_POS, BUF_DEC_POS): Use BEG_BYTE rather than hardcoding 1.
14459
14460 * casefiddle.c (casify_region): Only call after-change and composition
14461 functions on the part of the region that was changed.
14462
14463 * keyboard.c (read_avail_input):
14464 * frame.c (Fdelete_frame): Call Fdelete_terminal.
14465
144662008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
14467
14468 * buffer.c (clone_per_buffer_values, reset_buffer_local_variables)
14469 (Fbuffer_local_value, Fbuffer_local_variables): Don't forget undo_list.
14470
144712008-02-11 Juanma Barranquero <lekktu@gmail.com>
14472
14473 * w32menu.c (push_submenu_start, push_submenu_end)
14474 (push_left_right_boundary, push_menu_pane, push_menu_item):
14475 * keyboard.c (read_key_sequence): Don't pass args with side effects
14476 to AREF, it fails when compiling with -DENABLE_CHECKING.
14477
144782008-02-11 Kenichi Handa <handa@ni.aist.go.jp>
14479
14480 * Makefile.in (${lispsource}international/charprop.el):
14481 Delete this target.
14482
14483 * search.c (boyer_moore): Fix incorrect synching of the trunk and
14484 emacs-unicode-2.
14485
144862008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
14487
14488 * terminal.c (Fdelete_terminal): Clean up the `force' path.
14489
144902008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
14491
14492 * frame.c (Qnoelisp): New symbol.
14493 (syms_of_frame): Initialize it.
14494 (Fdelete_frame): Use it to distinguish a mere `force' passed from some
14495 harmless Elisp code, from a strong `force' from x_connection_closed.
14496 * frame.h (Qnoelisp): Declare.
14497 * xterm.c (x_connection_closed): Pass `noelisp'.
14498
14499 * lisp.h (struct Lisp_Misc_Any, struct Lisp_Marker)
14500 (struct Lisp_Overlay, struct Lisp_Kboard_Objfwd)
14501 (struct Lisp_Save_Value, struct Lisp_Free): Use enum Lisp_Misc_Type
14502 rather than `int' for the type of `type'.
14503
145042008-02-10 Dan Nicolaescu <dann@ics.uci.edu>
14505
14506 * s/gnu-linux.h: Remove support for non-ELF and linux-1.x.
14507
14508 * Makefile.in (GNUC): Remove support for gcc-1.x.
14509
145102008-02-10 Richard Stallman <rms@gnu.org>
14511
14512 * lisp.h (ASET): Use AREF, not ASLOT.
14513
145142008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
14515
14516 * lisp.h (ASET): Check bounds.
14517
145182008-02-10 Glenn Morris <rgm@gnu.org>
14519
14520 * buffer.c (mode-name): Doc fix.
14521
145222008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
14523
14524 * Makefile.in:
14525 * emacs.c:
14526 * gmalloc.c:
14527 * keyboard.c:
14528 * lisp.h:
14529 * m/ibm370aix.h:
14530 * process.c:
14531 * regex.c:
14532 * s/hpux.h:
14533 * sysdep.c:
14534 * sysselect.h:
14535 * systty.h:
14536 * unexec.c:
14537 * w32term.c:
14538 * xsmfns.c:
14539 * xterm.c: Remove code that deals with obsolete variables.
14540
14541 * s/msdos.h (DONT_NEED_ENVIRON): Don't define.
14542
14543 * ecrt0.c: Replace the DONT_NEED_ENVIRON test with MSDOS test,
14544 nothing else needs it anymore.
14545
145462008-02-09 Eli Zaretskii <eliz@gnu.org>
14547
14548 * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use unibyte_to_multibyte_table
14549 instead of unibyte_char_to_multibyte.
14550
145512008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
14552
14553 * s/gnu-linux.h: Remove commented out code.
14554
14555 * unexec.c: Remove references to obsolete variable COFF_ENCAPSULATE.
14556
14557 * Makefile.in: Update what RMS says about using autoconf.
14558 (C_COMPILER, COFF_ENCAPSULATE, MAKE_PARALLEL): Remove obsolete variable.
14559 (C_SWITCH_MACHINE_1, C_SWITCH_SYSTEM_1, C_SWITCH_SITE_1)
14560 (C_SWITCH_X_SITE_1, C_SWITCH_X_MACHINE_1)
14561 (C_SWITCH_X_SYSTEM_1): Move invariant code outside conditional.
14562
145632008-02-08 Stefan Monnier <monnier@iro.umontreal.ca>
14564
14565 * keymap.c (Fkey_description): Move side effect outside of macro call.
14566
14567 * xfaces.c (Finternal_make_lisp_face):
14568 * keyboard.c (add_command_key, parse_menu_item): Use ASET.
14569
14570 * fontset.c (free_face_fontset): Use FONTSET_FROM_ID.
14571 (syms_of_fontset): Use ASET.
14572
14573 * fns.c (concat): Move side effect outside of macro call.
14574 (hash_clear): Use ASET.
14575
145762008-02-08 Richard Stallman <rms@gnu.org>
14577
14578 * frame.c (Fdelete_frame): If FORCE, don't call hooks.
14579 If FORCE, and frame has a surrogate minibuffer for another frame,
14580 delete the other frame first.
14581
145822008-02-07 Timo Savola <timo.savola@iki.fi>
14583
14584 * xterm.c (x_detect_focus_change): Handle embed client message.
14585 (handle_one_xevent): Ditto.
14586 (handle_one_xevent): If embedded and we get a button press/release,
14587 request focus.
14588 (xembed_set_info, xembed_send_message): New functions.
14589 (x_make_frame_visible): Call xembed_set_info if embedded.
14590 (x_make_frame_invisible): Call xembed_set_info if embedded.
14591 (x_term_init): Initialize Xatom_XEMBED.
14592 (x_make_frame_visible): Check for FRAME_X_EMBEDDED_P also.
14593 (x_iconify_frame): Ditto.
14594
14595 * xterm.h (struct x_display_info): Add AtomXatom_XEMBED.
14596 (enum xembed_info, enum xembed_message, enum xembed_focus)
14597 (enum xembed_modifier, enum xembed_accelerator): New.
14598 (xembed_set_info, xembed_send_message): Declare.
14599 (FRAME_X_EMBEDDED_P): New.
14600
14601 * gtkutil.c (xg_create_frame_widgets): If frame is embedded, call
14602 gtk_plug_new.
14603
14604 * xfns.c (Fx_create_frame): Do not override the explicitly set parent
14605 window ID of a frame.
14606 (x_window): Reparent frame if embedded.
14607 (Fx_create_frame): Don't set border width if embedded.
14608
14609 * emacs.c (USAGE3): Add --parent-id.
14610 (standard_args): Ditto.
14611
146122008-02-07 Jan Djärv <jan.h.d@swipnet.se>
14613
14614 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): Use "do...while (0)".
14615
146162008-02-07 Jim Meyering <meyering@redhat.com>
14617
14618 Use "do...while (0)", not "if (1)...else" in macro definitions.
14619 The latter provokes a warning from gcc about the empty else, when
14620 followed by ";". Also, without that trailing semicolon, it would
14621 silently swallow up any following statement.
14622 * syntax.h (SETUP_SYNTAX_TABLE)
14623 (SETUP_SYNTAX_TABLE_FOR_OBJECT): Likewise.
14624 * buffer.h (DECODE_POSITION): Likewise.
14625 * character.h (FETCH_STRING_CHAR_ADVANCE): Likewise.
14626 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): Likewise.
14627 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Likewise.
14628 (FETCH_CHAR_ADVANCE): Likewise.
14629 (FETCH_CHAR_ADVANCE_NO_CHECK): Likewise.
14630
146312008-02-07 Jim Meyering <meyering@redhat.com>
14632
14633 * lread.c [lint]: Don't include <sys/inode.h>.
14634
146352008-02-07 Stefan Monnier <monnier@iro.umontreal.ca>
14636
14637 * xselect.c (x_handle_dnd_message):
14638 * xmenu.c (digest_single_submenu, xmenu_show):
14639 * xdisp.c (with_echo_area_buffer_unwind_data)
14640 (format_mode_line_unwind_data, unwind_format_mode_line)
14641 (display_menu_bar):
14642 * eval.c (Ffetch_bytecode):
14643 * doc.c (store_function_docstring):
14644 * ccl.c (resolve_symbol_ccl_program, ccl_get_compiled_code)
14645 (Fccl_execute, Fccl_execute_on_string, Fregister_code_conversion_map):
14646 * buffer.c (add_overlay_mod_hooklist): Use ASET.
14647
146482008-02-07 Kenichi Handa <handa@m17n.org>
14649
14650 * ftxfont.c (ftxfont_open): Don't set
14651 dpyinfo->smallest_font_height and dpyinfo->smallest_char_width to 0.
14652
14653 * ftfont.c (ftfont_open): Fix previous change.
14654
146552008-02-06 Jason Rumney <jasonr@gnu.org>
14656
14657 * w32font.c (w32font_text_extents): Fill in lbearing metric.
14658 Use cached metrics for ASCII characters.
14659 (w32font_open_internal): Don't set font's owning_frame.
14660 Cache metrics for ASCII characters.
14661
14662 * w32font.h (struct w32font_info): Add ascii_metrics.
14663 Remove owning_frame.
14664
146652008-02-06 Kenichi Handa <handa@ni.aist.go.jp>
14666
14667 * xdisp.c (x_produce_glyphs): Don't set it->ascent and it->descent
14668 to negative value.
14669
14670 * ftxfont.c (ftxfont_draw): Use s->font_info, not face->font_info.
14671
14672 * ftfont.c (ftfont_open): Fix calculation of font->font.average_width.
14673
14674 * charset.c (syms_of_charset): Set QCtest and Qeq.
14675
146762008-02-06 Stefan Monnier <monnier@iro.umontreal.ca>
14677
14678 * process.c (Fstart_process):
14679 * callproc.c (Fcall_process): Handle the case where
14680 Funhandled_file_name_directory returns nil.
14681
14682 * font.h (enum lgstring_indices, enum lglyph_indices): New enums.
14683 (LGSTRING_SLOT, LGSTRING_SET_SLOT): New macros.
14684 * font.c (check_gstring): Use them and AREF to access the vector before
14685 we know it's really a gstring.
14686 (Ffont_shape_text): Fix typo.
46e722a9 14687 (Ffont_shape_text, Ffont_otf_alternates): Fix up int/Lisp_Object mixups.
aac0c6e3
MR
14688
14689 * composite.h (Fcompose_region_internal, Fcompose_string_internal):
14690 Declare.
14691
14692 * chartab.c (make_sub_char_table): Remove noop-yet-incorrect statement.
14693
146942008-02-05 Jason Rumney <jasonr@gnu.org>
14695
14696 * w32font.c (w32font_open_internal): Fill min_width with tmAveCharWidth.
14697 Set smallest_font_height and smallest_char_width in display info.
14698
146992008-02-05 Kenichi Handa <handa@ni.aist.go.jp>
14700
14701 * coding.c (decode_eol): Pay attention to coding->dst_multibyte.
14702
147032008-02-05 Miles Bader <miles@gnu.org>
14704
14705 * xfaces.c (get_lface_attributes, merge_named_face)
14706 (lookup_named_face, lookup_derived_face, realize_named_face):
14707 Revert 2008-02-01 change by cyd@stupidchicken.com.
14708
147092008-02-04 Kenichi Handa <handa@ni.aist.go.jp>
14710
14711 * fontset.c (Ffontset_info): Handle the case of inhibitting the
14712 fallback fonts.
14713 (Ffontset_info) [USE_FONT_BACKEND]: Fix getting of opened font names.
14714
147152008-02-04 Jason Rumney <jasonr@gnu.org>
14716
14717 * w32font.c (w32font_open_internal): Use font_unparse_fcname to
14718 set full_name.
14719 (w32font_open_internal): Use xmalloc, xrealloc, xfree.
14720
147212008-02-03 Jason Rumney <jasonr@gnu.org>
14722
14723 * makefile.w32-in (OBJ1): Include font.o here.
14724 (FONTOBJ) [USE_FONTBACKEND]: Instead of here.
14725
147262008-02-02 Jason Rumney <jasonr@gnu.org>
14727
14728 * makefile.w32-in (temacs): Bump EMHEAP to 21.
14729
147302008-02-01 Jason Rumney <jasonr@gnu.org>
14731
14732 * s/cygwin.h: Define VIRT_ADDR_VARIES.
14733
14734 * puresize.h [VIRT_ADDR_VARIES]: Don't include CYGWIN in condition.
14735
147362008-02-01 Andreas Schwab <schwab@suse.de>
14737
14738 * Makefile.in (shortlisp, lisp): Update for rename of
14739 ../lisp/language/myanmar.el.
14740
147412008-02-01 Chong Yidong <cyd@stupidchicken.com>
14742
14743 * xfaces.c (get_lface_attributes): Delete function.
14744 (merge_named_face, lookup_named_face, lookup_derived_face)
14745 (realize_named_face): Call lface_from_face_name directly, and use
14746 the fact that merge_face_vectors does not alter its FROM argument.
14747
147482008-02-01 Jason Rumney <jasonr@gnu.org>
14749
14750 * w32term.c (w32_read_socket) <WM_CHAR>: Decode non-Unicode
14751 input in the default locale. Handle non-Unicode multibyte input.
14752
147532008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14754
14755 * fontset.c (reorder_font_vector): Exclude nil elements from the
14756 font group. Don't try multiple fonts.
14757 (fontset_font): Adjust for the above change.
14758 (Finternal_char_font): Return nil if the found font doesn't
14759 contain the character ch.
14760
14761 * Makefile.in (lisp, shortlisp): Add cham.el.
14762
147632008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14764
14765 * font.h (FONTP): Make it return 1 also for a font-object.
14766
14767 * .gdbinit (xfontset): New function.
14768
14769 * font.c (font_find_for_lface): Check if the character C is
14770 supported or not only for the first font.
14771
14772 * fontset.c (reorder_font_vector): Fix typo.
14773 (fontset_find_font): Don't add a font-spec specifying a script.
14774 Use 0 (not Qt) for the indication of empty font-group. Change the
14775 format of RFONT-DEF. Return Qt if no font in the font-group
14776 support the character.
14777 (fontset_font): Adjust for the above change. If no font was
14778 found the character, remember that.
14779 (face_for_char): Adjust for the change of RFONT-DEF.
14780 (Fset_fontset_font): Allow nil for FONT-SPEC to explicitly specify
14781 no font for the target.
14782 (Finternal_char_font): Adjust for the change of RFONT-DEF.
14783
147842008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14785
14786 * font.c (font_load_for_face): Handle the case that the font in
14787 face->lface is a string.
14788
147892008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14790
14791 * xfaces.c (set_lface_from_font_and_fontset): Set the fontname in lface.
14792
147932008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14794
14795 * xfaces.c (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]:
14796 Fix previous change. If the frame is not on a window system,
14797 signal an error.
14798
147992008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14800
14801 * coding.c (decode_coding_object, encode_coding_object): Adjust
14802 marker positions after conversion.
14803
14804 * lisp.h (struct Lisp_Marker): New member need_adjustment.
14805
148062008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14807
14808 * font.c (font_find_for_lface): Fix the handling of the return
14809 value of font_has_char.
14810 (Ffont_shape_text): Fix previous change.
14811
14812 * fontset.c (FONTSET_REF_AND_RANGE): Delete it.
14813 (fontset_ref_and_range): Delete it.
14814 (fontset_find_font): Call char_table_ref_and_range instead of
14815 FONTSET_REF_AND_RANGE.
14816 (make_fontset): Don't setup font groups of Latin here.
14817 (Fset_fontset_font): Don't overwrite the setting of FONTSET_ASCII.
14818 (new_fontset_from_font): Make the specified font the default for
14819 all Latin characters.
14820
148212008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14822
14823 * xfaces.c (Finternal_set_lisp_face_attribute): Check if the frame
14824 is on a window system before accessing the fontset of the frame.
14825
148262008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14827
14828 * Makefile.in (lisp, shortlisp): Add kherm.el and myanmar.el.
14829
14830 * ftfont.c (ftfont_driver): Set ftfont_shape in ftfont_driver only
14831 when both HAVE_M17N_FLT and HAVE_LIBOTF are defined.
14832
14833 * font.c (Ffont_shape_text): If the font driver doesn't have a
14834 shaper function, make zero-width glyphs to have at least one-pixel
14835 width. Fix setting of `to' field of glyphs.
14836
148372008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14838
14839 * ftfont.c (ftfont_drive_otf): Fix setting of FROM and TO slots of
14840 glyphs.
14841
14842 * font.h (struct font_driver): Improve docstring of member `shape'.
14843
148442008-02-01 Kenichi Handa <handa@m17n.org>
14845
14846 * composite.c (syms_of_composite): Fix docstring of
14847 auto-composition-function.
14848
14849 * font.h (LGLYPH_SIZE): New macro.
14850
14851 * font.c (Ffont_fill_gstring): Stop filling when a character not
14852 supported by the font is found.
14853 (Ffont_shape_text): When a shape callback function returns nil,
14854 try at most two more times with larger gstring.
14855 (Ffont_at): Fix getting of w. Call font_at with correct 5th argument.
14856
14857 * xdisp.c (handle_auto_composed_prop): Change the argument to
14858 auto-composition-function.
14859
14860 * ftfont.c (ftfont_encode_char): Use the macro FONT_INVALID_CODE.
14861 (ftfont_shape_by_flt): If an element of lgstring is nil, make a
14862 Lispy glyph and store it in the lgstring.
14863
14864 * xfont.c (xfont_encode_char): Use the macro FONT_INVALID_CODE.
14865
14866 * xftfont.c (xftfont_encode_char): Use the macro FONT_INVALID_CODE.
14867
148682008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14869
14870 * font.c (Ffont_shape_text): Avoid unnecessary composition.
14871
14872 * fontset.c (Vfont_encoding_charset_alist): New variable.
14873 (syms_of_fontset): DEFVAR it.
14874 (reorder_font_vector, fontset_find_font): Optimize for the case of
14875 no need of reordering.
14876 (face_for_char): Map the charset property by
14877 Vfont_encoding_charset_alist.
14878
148792008-02-01 Jason Rumney <jasonr@gnu.org>
14880
14881 * w32font.c (logfonts_match): Don't check adstyle here.
14882 (font_matches_spec): Check here against physical font instead.
14883 (add_font_entity_to_list): Avoid some substitutions.
14884
14885 * font.c (font_parse_fcname): Default weight and slant to normal.
14886 (font_score): Prefer normal fonts if weight or slant unspecified.
14887 (font_score) [WINDOWSNT]: Scale weight difference down to closer
14888 match freetype scores.
14889
148902008-02-01 Jason Rumney <jasonr@gnu.org>
14891
14892 * w32font.c (w32font_text_extents): Don't use the frame stored in the
14893 font, as it may have been deleted.
14894 (w32_enumfont_pattern_entity): Map generic family to adstyle using
14895 most common hyphenless variation.
14896 (logfonts_match): Check generic family.
14897 (font_matches_spec): Don't check generic family here.
14898 (fill_in_logfont): Set generic family based on adstyle.
14899
14900 * w32font.h (w32font_get_cache): Update declaration.
14901
149022008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14903
14904 * ftfont.c (ftfont_get_cache): Adjust the argument type.
14905
14906 * frame.c (x_set_font_backend): Don't call Fclear_font_cache.
14907 If none of the new drivers are available, call font_update_drivers
14908 with the old drivers.
14909
14910 * w32font.c (w32font_get_cache): Adjust the argument type.
14911
14912 * xfont.c (xfont_get_cache): Adjust the argument type.
14913
14914 * font.h (struct font_driver): Change argument type of get_cache.
14915
14916 * xftfont.c (xftfont_start_for_frame): Delete prototype.
14917
14918 * font.c (Ffont_get): Fix arguments to Fassoc.
14919 (font_prepare_cache, font_finish_cache, font_get_cache): New functions.
14920 (font_clear_cache): New function.
14921 (font_list_entities, font_matching_entity): Use font_get_cache.
14922 (font_update_drivers): Call font_clear_cache when finishing a driver.
14923
14924 * fontset.c (fontset_find_font): Fix previous change.
14925
149262008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14927
14928 * xterm.c (x_check_font) [USE_FONT_BACKEND]: Don't access
14929 dpyinfo->font_table.
14930 (x_delete_display) [USE_FONT_BACKEND]: Likewise.
14931 (x_delete_terminal) [USE_FONT_BACKEND]: Likewise.
14932
14933 * font.c (font_at): Handle the case that the arg C is negative.
14934 Handle the unibyte case.
14935 (Ffont_at): Call font_at with the arg C -1.
14936
14937 * xdisp.c (handle_auto_composed_prop): Don't get a character at
14938 the position here, and call font_at with the arg C -1.
14939 Don't check the range of the existing composition at the point.
14940
149412008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14942
14943 * fontset.c (fontset_add): New args charset_id and family.
14944 Change caller.
14945 (load_font_get_repertory, fontset_find_font): Assume that
14946 font_spec is always a font-spec object.
14947 (Fset_fontset_font): Always store a font-spec object in a fontset.
14948
14949 * xdisp.c (handle_auto_composed_prop): Use Fget_text_property
14950 instead of get_property_and_range.
14951
149522008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14953
14954 * xftfont.c (struct xftfont_info): Delete the member ft_face.
14955 (xftfont_open): Don't keep locking face.
14956 (xftfont_close): Don't unlock face.
14957 (xftfont_anchor_point, xftfont_shape): Lock and unlock face.
14958
14959 * fontset.c (fontset_find_font): Don't prefer a font of
14960 supplementary charset.
14961
149622008-02-01 Kenichi Handa <handa@m17n.org>
14963
14964 * ftfont.c (struct OpenTypeSpec): Rename members script_tag to
14965 script, langsys_tag to langsys, new member script.
14966 (OTF_TAG_STR): Terminate by '\0'.
867d4bb3 14967 (ftfont_get_open_type_spec): If :otf prop is spec, limit the
aac0c6e3
MR
14968 listing to the script specified in that property. Fix arg to
14969 OTF_check_features.
14970
149712008-02-01 Jason Rumney <jasonr@gnu.org>
14972
14973 * w32font.h: New file.
14974
14975 * w32font.c: Include it.
14976 (struct w32font_info): Add owning_frame field. Move to w32font.h.
14977 (w32font_open): Set owning_frame.
14978 (w32font_text_extents): Use owning_frame.
14979 (struct font_callback_data): Add opentype_only field.
14980 (add_font_entity_to_list): Use it to filter fonts.
14981 Don't check against full name.
14982 (w32font_list_internal): New function.
14983 (w32font_list): Use it.
14984 (w32font_match_internal): New function.
14985 (w32font_match): Use it.
14986 (w32font_open_internal): New function.
14987 (w32font_open): Use it.
14988 (w32font_get_cache, w32font_close, w32font_has_char)
14989 (w32font_encode_char, w32font_text_extents, w32font_draw):
14990 Make non-static.
14991
14992 * makefile.w32-in (w32font.o): Depend on w32font.h.
14993
149942008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14995
14996 * charset.c (Fdefine_charset_internal): Record a supplementary
14997 charset at the tail of Vcharset_order_list.
14998
14999 * font.c (Ffont_shape_text): Fix the return value.
15000
15001 * ftfont.c (OTF_SYM_TAG, OTF_TAG_STR): Fix argument names.
15002
15003 * xdisp.c (handle_auto_composed_prop): Fix previous change.
15004
150052008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15006
15007 * ftfont.c (struct OpenTypeSpec): New struct.
15008 (OTF_SYM_TAG, OTF_TAG_STR): New macros.
15009 (ftfont_get_open_type_spec): New function.
15010 (ftfont_list) [HAVE_LIBOTF]: Check otf-spec property.
15011
15012 * lread.c (read1): Redo the previous change with checking Vpurify_flag.
15013
150142008-02-01 Jason Rumney <jasonr@gnu.org>
15015
15016 * w32font.c (add_font_entity_to_list): Compare only the beginning
15017 of full name.
15018
150192008-02-01 Kenichi Handa <handa@m17n.org>
15020
15021 * xdisp.c (handle_auto_composed_prop): Simplify the code.
15022 Never return HANDLED_RECOMPUTE_PROPS.
15023
150242008-02-01 Kenichi Handa <handa@m17n.org>
15025
15026 * font.c (font_gstring_produce): Delete it.
15027
15028 * composite.h (COMPOSITION_METHOD):
15029 Handle COMPOSITION_WITH_GLYPH_STRING.
15030
150312008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15032
15033 * xfont.c (Qx): Delete.
15034 (syms_of_xfont): Don't initialize Qx.
15035
15036 * composite.h (enum composition_method):
15037 Define COMPOSITION_WITH_GLYPH_STRING unconditionally.
15038
150392008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15040
15041 * xfaces.c [HAVE_WINDOW_SYSTEM]: Include "font.h" unconditionally.
15042 (choose_face_font): Accept new form of font-spec.
15043
15044 * frame.h (font_driver_list): Declare it unconditionally.
15045 (struct frame): Define members font_driver_list and font_data_list
15046 unconditionally.
15047
15048 * fontset.c: Include "font.h" unconditionally.
15049 (generate_ascii_font_name): Use font_parse_xlfd and font_unparse_xlfd.
15050 (Fset_fontset_font): Accept a font-spec object.
15051
15052 * font.c (font_unparse_xlfd): If pixel_size is zero, make the
15053 PIXEL_SIZE part a wild card.
15054
15055 * dispextern.h (struct glyph_string): Define members clip and
15056 num_clips unconditionally.
15057 (struct face): Define members font_info and extra unconditionally.
15058
15059 * ftfont.c (ftfont_open): Set members maybe_otf and otf of
15060 ftfont_info only when HAVE_LIBOTF is defined.
15061
150622008-02-01 Andreas Schwab <schwab@suse.de>
15063
15064 * xdisp.c (back_to_previous_visible_line_start): Fix type of beg
15065 and end.
15066
150672008-02-01 Jason Rumney <jasonr@gnu.org>
15068
15069 * w32font.c (w32font_driver): Add new fields.
15070
150712008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15072
15073 * Makefile.in (ALL_CFLAGS): Add @M17N_FLT_CFLAGS@.
15074 (FONTSRC, FONTOBJ) [HAVE_WINDOW_SYSTEM]: Set them unconditionally.
15075 (LIBES): Add @M17N_FLT_CFLAGS@.
15076
15077 * composite.c (compose_text): Don't treat the new style
15078 composition specially.
15079
15080 * emacs.c (main): Call syms_of_font unconditionally.
15081
15082 * font.h (FONT_ENTITY_NOT_LOADABLE)
15083 (FONT_ENTITY_SET_NOT_LOADABLE): New macros.
15084 (LGSTRING_XXXX, LGLYPH_XXX): Adjust for the change of lispy gstring.
15085 (struct font_driver): New member shape.
15086 (font_registry_charsets): Extern it.
15087 (font_find_for_lface, font_prepare_composition): Adjust prototype.
15088 (font_otf_capability, font_drive_otf): Delete their externs.
15089
15090 * font.c [HAVE_M17N_FLT]: Include <m17n-flt.h>.
15091 (font_charset_alist, font_registry_charsets): Move from xfont.c
15092 and rename.
15093 (font_prop_validate_otf): New function.
15094 (font_property_table): Register it for QCotf.
15095 (DEVICE_DELTA, adjust_anchor, REPLACEMENT_CHARACTER)
15096 (font_drive_otf): Delete.
15097 (font_prepare_composition): New arg F. Adjust for the change of
15098 lispy gstring.
15099 (font_find_for_lface): New arg C.
15100 (font_load_for_face): Adjust for the change of font_find_for_lface.
15101 (Ffont_make_gstring, Ffont_fill_gstring): Adjust for the change of
15102 lispy gstring.
15103 (Ffont_shape_text): New function.
15104 (Fopen_font): If the font size is not given, use 12-pixel.
15105 (Ffont_at): New arg STRING.
15106 (syms_of_font): Initalize font_charset_alist.
15107 Declare Ffont_shape_text as a Lisp function. Call syms_of_XXfont
15108 conditionally.
15109
15110 * fontset.c (fontset_find_font) [USE_FONT_BACKEND]: Try multiple
15111 fonts of the same font-spec. Change the format of RFONT-DEF.
15112 (face_for_char, make_fontset_for_ascii_face, Finternal_char_font):
15113 Adjust for the change of RFONT-DEF.
15114 (Fset_fontset_font) [USE_FONT_BACKEND]: Handle new format of font-spec.
15115
15116 * ftfont.h: New file.
15117
15118 * ftfont.c: Don't include Freetype headers. Include "ftfont.h".
15119 (struct ftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
15120 (ftfont_open) [HAVE_LIBOTF]: Initialize the above members.
15121 (ftfont_driver) [HAVE_LIBOTF, HAVE_M17N_FLT]: Don't set
15122 font_otf_capability and font_drive_otf, set ftfont_shape.
15123 (ftfont_list): Adjust for the change of :otf property value.
15124 (struct MFLTFontFT) [HAVE_LIBOTF, HAVE_M17N_FLT]: New struct.
15125 (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_check_otf)
15126 (adjust_anchor, ftfont_drive_otf, ftfont_shape_by_flt)
15127 (ftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
15128 (DEVICE_DELTA) [HAVE_LIBOTF, HAVE_M17N_FLT]: New macro.
15129 (otf_gstring, gstring, m17n_flt_initialized): New variables.
15130
15131 * w32term.c (x_draw_composite_glyph_string_foreground):
15132 Adjust for the change of lispy gstring.
15133
15134 * xdisp.c (handle_composition_prop): Adjust for the change of
15135 lispy gstring. Call a function for auto-composition with the
15136 third arg it->window.
15137 (fill_composite_glyph_string): Adjust for the change of lispy string.
15138 (x_produce_glyphs): Adjust for the change of font_prepare_compositionl.
15139
15140 * xfaces.c (set_font_frame_param): Adjust for the change of
15141 font_find_for_lface.
15142
15143 * xfont.c (x_font_charset_alist): Move to font.c and rename.
15144 (xfont_registry_charsets): Likewise. Change caller.
15145 (syms_of_xfont): Don't handle x_font_charset_alist.
15146
15147 * xftfont.c: Include "ftfont.h".
15148 (struct xftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
15149 (xftfont_open) [HAVE_LIBOTF]: Initialize the above members.
15150 (xftfont_close) [HAVE_LIBOTF]: Close otf.
15151 (xftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
15152 (syms_of_xftfont) [HAVE_LIBOTF, HAVE_M17N_FLT]:
15153 Set xftfont_driver.shape to xftfont_shape.
15154
15155 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
15156 the change of lispy gstring.
15157
151582008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15159
15160 * ftxfont.c (ftxfont_end_for_frame): Fix array indexing error.
15161
151622008-02-01 Jason Rumney <jasonr@gnu.org>
15163
15164 * w32font.c (w32font_draw): Fill background manually.
15165
151662008-02-01 Jason Rumney <jasonr@gnu.org>
15167
15168 * font.c (Qfontp): Remove unused symbol.
15169 (QCantialias): New symbol.
15170 (syms_of_font): Define it.
15171 (font_property_table): Set a validator for QCantialias.
15172
15173 * w32font.c (CLEARTYPE_QUALITY, CLEARTYPE_NATURAL_QUALITY):
15174 Define if not already.
15175 (QCfamily): Share with xfaces.c.
15176 (Qstandard, Qsubpixel, Qnatural): New symbols.
15177 (syms_of_w32font): Define them. Don't define QCfamily here.
15178 (w32_antialias_type, lispy_antialias_type): New functions.
15179 (w32_enumfont_pattern_entity): New arg requested_font.
15180 Set antialias parameter if non-default was requested.
15181 (fill_in_logfont): Fill in lfQuality if :antialias specified.
15182
151832008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15184
15185 * lread.c (read1): Undo the previous change.
15186
151872008-02-01 CHENG Gao <chenggao@gmail.com> (tiny change)
15188
15189 * frame.c (Fdelete_frame): Call font_update_drivers only when
15190 USE_FONT_BACKEND is defined.
15191
151922008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15193
15194 * font.h (struct font_bitmap): New member bits_per_pixel.
15195 (struct font_driver): New members start_for_frame and end_for_frame.
15196 (struct font_data_list): New struct.
15197 (font_put_frame_data, font_get_frame_data): Extern them.
15198
15199 * frame.h (struct frame): New member font_data_list.
15200
15201 * font.c (font_update_drivers): Call driver->start_for_frame and
15202 driver->end_for_frame at proper timings.
15203 (font_put_frame_data, font_get_frame_data): New functions.
15204 (Ffont_spec): Add usage in the docstring.
15205
15206 * frame.c (make_frame): Initialize f->font_data_list to NULL.
15207 (Fdelete_frame): Call font_update_drivers.
15208
15209 * xftfont.c (struct xftface_info): Delete the member xft_draw.
15210 (xftfont_prepare_face, xftfont_done_face): Adjust for the above change.
15211 (xftfont_get_xft_draw): New function.
15212 (xftfont_draw): Get XftDraw by xftfont_get_xft_draw.
15213 (xftfont_end_for_frame): New function.
15214 (syms_of_xftfont): Set xftfont_driver.end_for_frame.
15215
15216 * ftxfont.c (ftxfont_get_gcs): Rename from ftxfont_create_gcs.
15217 Change argument. Cache GCs in the per-frame data.
15218 (struct ftxfont_frame_data): New struct.
15219 (ftxfont_draw_bitmap): New arg gc_fore and flush.
15220 (ftxfont_prepare_face, ftxfont_done_face): Delete them.
15221 (ftxfont_draw): Get GCs by ftxfont_get_gcs. Reflect s->clip in GCs.
15222 (ftxfont_end_for_frame): New function.
15223 (syms_of_ftxfont): Set ftxfont_driver.end_for_frame.
15224
15225 * ftfont.c (ftfont_get_bitmap): Set bitmap->bits_per_pixel.
15226
152272008-02-01 Kenichi Handa <handa@m17n.org>
15228
15229 * xselect.c (Vselection_coding_system)
15230 (Vnext_selection_coding_system): Delete them.
15231 (syms_of_xselect): Don't declare selection-coding-system and
15232 next-selection-coding-system. They are declared in select.el.
15233
152342008-02-01 Jason Rumney <jasonr@gnu.org>
15235
15236 * w32term.h (WM_UNICHAR, UNICODE_NOCHAR): Define if not already.
15237
15238 * w32fns.c: Include imm.h.
15239 (get_composition_string_fn, get_ime_context_fn): New optional
15240 system functions.
15241 (globals_of_w32fns): Load them from imm32.dll.
15242 (ignore_ime_char): New flag.
15243 (w32_wnd_proc): Handle WM_UNICHAR, WM_IME_CHAR and
15244 WM_IME_ENDCOMPOSITION messages.
15245
15246 * w32term.c (w32_read_socket) [WM_UNICHAR]: Handle as
15247 MULTIBYTE_CHAR_KEYSTROKE_EVENT.
15248
152492008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15250
15251 * lread.c (READCHAR): Call readchar with the 2nd arg NULL.
15252 (READCHAR_REPORT_MULTIBYTE): New macro.
15253 (readchar): New 2nd arg MULTIBYTE.
15254 (read1): Use READCHAR_REPORT_MULTIBYTE for the first read.
15255 Make symbol's name multibyte according to the multibyteness of the
15256 source.
15257
152582008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15259
15260 * xfaces.c (face_for_overlay_string): Call lookup_face with
15261 correct arguments (fix of synching with the trunk).
15262
152632008-02-01 Kenichi Handa <handa@m17n.org>
15264
15265 * font.c (font_prop_validate_symbol, font_prop_validate_style)
15266 (font_prop_validate_non_neg, font_prop_validate_spacing):
15267 Delete argument prop_index.
15268 (font_property_table): Change arguments to validater. Change Callers.
15269 (font_lispy_object): Delete.
15270 (font_at): Use font_find_object instead fo font_lispy_object.
15271
152722008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15273
15274 * fileio.c (Fexpand_file_name): Adjust multibyteness of directory
15275 and file names.
15276
152772008-02-01 Jason Rumney <jasonr@gnu.org>
15278
15279 * w32font.c (add_font_name_to_list): Avoid vertical fonts.
15280 (font_matches_spec): Remove debug output.
15281 (add_font_entity_to_list): Avoid using substituted fonts.
15282
152832008-02-01 Jason Rumney <jasonr@gnu.org>
15284
15285 * doc.c (Fsnarf_documentation):
15286 * Makefile.in (temacs${EXEEXT}, mostlyclean): Undo last change.
15287
152882008-02-01 Miles Bader <miles@gnu.org>
15289
15290 * dispextern.h (struct glyph_row): Only define "clip" field if
15291 HAVE_WINDOW_SYSTEM is defined.
15292
152932008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
15294
15295 Fix up multi-tty merge.
15296
15297 * xterm.c (handle_one_xevent): Remove duplicate code and fix up nesting
15298 and indentation.
15299
15300 * xfaces.c (free_realized_face, clear_face_gcs):
15301 Include font_done_for_face in the input_blocked section, just in case.
15302
15303 * xdisp.c (decode_mode_spec): Use terminal-local coding systems.
15304 (get_char_face_and_encoding): Undo last change and remove the *other*
15305 duplicate definition (i.e. keep the one that's better scoped and that
15306 includes code for the font-backend).
15307
15308 * terminal.c (create_terminal): Default keyboard_coding to
15309 `no-conversion' and terminal_coding to `undecided'.
15310
15311 * lread.c (read1): Use XSETPVECTYPE to set a pseudovector's tag.
15312
15313 * fontset.c (free_realized_fontsets): Check that the table entry does
15314 contain a fontset before trying to compare it to `base'.
15315
15316 * emacs.c (main): Move syms_of_data, syms_of_fileio, syms_of_alloc,
15317 syms_of_charset, and syms_of_coding earlier because init_window_once
15318 now needs Vcoding_system_hash_table to be setup.
15319
15320 * coding.h (default_buffer_file_coding): Remove.
15321
15322 * coding.c (default_buffer_file_coding): Remove.
15323 (Fterminal_coding_system, Fkeyboard_coding_system): Use ->id rather
15324 than ->symbol, and use the terminal-local coding system.
15325 (syms_of_coding): Don't setup the coding-systems that are not
15326 terminal-local.
15327 (Fdefine_coding_system_internal): Use XCAR/XCDR.
15328
15329 * chartab.c (Fmake_char_table, make_sub_char_table, copy_char_table):
15330 Use XSETPVECTYPE now that XSETCHAR_TABLE doesn't set the tag anymore.
15331
15332 * alloc.c (Fmake_char_table, make_sub_char_table): Remove. They're now
15333 in chartab.c and were re-added here by mistake.
15334 (Fpurecopy): Use XSETPVECTYPE after copying a COMPILED pseudovector.
15335
15336 * doc.c (Fsnarf_documentation):
15337 * Makefile.in (temacs${EXEEXT}, mostlyclean): Move buildobj.lst from
15338 src to etc.
15339
15340 * ChangeLog.10: Add mistakenly removed entry.
15341
153422008-02-01 Dan Nicolaescu <dann@ics.uci.edu>
15343
15344 * Makefile.in (fringe.o, minibuf.o): Fix dependencies.
15345
153462008-02-01 Miles Bader <miles@gnu.org>
15347
15348 * xdisp.c (get_char_face_and_encoding): Remove extraneous definition.
15349 Add extra args to FACE_FOR_CHAR.
15350
153512008-02-01 Kenichi Handa <handa@m17n.org>
15352
15353 * keymap.c (where_is_internal_1): If key is a cons, store the copy
15354 in sequence.
15355
15356 * chartab.c (map_sub_char_table, map_char_table): If the range
15357 contains just one character, call the function with that character
15358 even if the depth is not 3.
15359
153602008-02-01 Jason Rumney <jasonr@gnu.org>
15361
15362 * w32font.c (w32font_text_extents): Calculate metrics for the
15363 whole string.
15364
153652008-02-01 Jason Rumney <jasonr@gnu.org>
15366
15367 * w32xfns.c (get_next_msg): Consolidate WM_PAINT messages.
15368
153692008-02-01 Jason Rumney <jasonr@gnu.org>
15370
15371 * w32term.c (x_set_glyph_string_clipping): Use
15372 get_glyph_string_clip_rects.
15373 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
15374 Adjust for the change of struct glyph_string.
15375
15376 * w32font.c (w32font_draw): Do clipping here.
15377
153782008-02-01 Kenichi Handa <handa@m17n.org>
15379
15380 * xftfont.c (xftfont_draw): Adjust for the change of struct
15381 glyph_string.
15382
15383 * xterm.c (x_set_glyph_string_clipping): Use
15384 get_glyph_string_clip_rects.
15385 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
15386 Adjust for the change of struct glyph_string.
15387
15388 * xdisp.c (get_glyph_string_clip_rects): Reflect s->row->clip to
15389 the resulting clip(s}.
15390 (expose_overlaps): Add arg r. Change callers. Set it to
15391 row->clip temporarily.
15392 (expose_window): Redraw rows overlapping the exposed area.
15393
15394 * dispextern.h (struct glyph_row): New member clip.
15395 (struct glyph_string): Delete members clip_x, clip_y, clip_width,
15396 clip_height, new member clip, and num_clips.
15397
153982008-02-01 Kenichi Handa <handa@m17n.org>
15399
15400 * data.c (Fchar_or_string_p): Fix docstring.
15401
154022008-02-01 Kenichi Handa <handa@m17n.org>
15403
15404 * xftfont.c (xftfont_draw): If s->font_info != s->face->font_info,
15405 create a temporary XftDraw object.
15406
154072008-02-01 Kenichi Handa <handa@m17n.org>
15408
15409 * font.c (Ffontp): Fix docstring.
15410
15411 * coding.c (detect_coding_iso_2022): Don't treat SI/SO codes as a
15412 strong evidence of ISO-2022.
15413
154142008-02-01 Kenichi Handa <handa@m17n.org>
15415
15416 * abbrev.c (abbrev_check_chars): Use CHAR_TABLE_REF, not
15417 SYNTAX_ENTRY_FOLLOW_PARENT.
15418
154192008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
15420
15421 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and change
15422 its type.
15423 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
15424 Update to the new type of weak_hash_tables and next_weak.
15425
15426 * lisp.h (struct Lisp_Hash_Table): Change next_weak from Lisp_Object to
15427 a plain C pointer to Lisp_Hash_Table.
15428
15429 * lisp.h (XGCTYPE, GC_HASH_TABLE_P, GC_NILP, GC_NUMBERP, GC_NATNUMP)
15430 (GC_INTEGERP, GC_SYMBOLP, GC_MISCP, GC_VECTORLIKEP, GC_STRINGP)
15431 (GC_CONSP, GC_FLOATP, GC_VECTORP, GC_OVERLAYP, GC_MARKERP)
15432 (GC_INTFWDP, GC_BOOLFWDP, GC_OBJFWDP, GC_BUFFER_OBJFWDP)
15433 (GC_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP)
15434 (GC_KBOARD_OBJFWDP, GC_PSEUDOVECTORP, GC_WINDOW_CONFIGURATIONP)
15435 (GC_PROCESSP, GC_WINDOWP, GC_SUBRP, GC_COMPILEDP, GC_BUFFERP)
15436 (GC_SUB_CHAR_TABLE_P, GC_CHAR_TABLE_P, GC_BOOL_VECTOR_P, GC_FRAMEP)
15437 (GC_EQ): Remove since they've been identical to their non-GC_
15438 alter-egos ever since the markbit was eradicated.
15439
15440 * alloc.c:
15441 * buffer.c:
15442 * buffer.h:
15443 * data.c:
15444 * fileio.c:
15445 * filelock.c:
15446 * fns.c:
15447 * frame.h:
15448 * lisp.h:
15449 * macterm.c:
15450 * print.c:
15451 * process.c:
15452 * w32fns.c:
15453 * w32menu.c:
15454 * w32term.c:
15455 * xfns.c:
15456 * xmenu.c:
15457 * xterm.c: Replace uses of GC_* macros with the non-GC_ versions.
15458
154592008-02-01 Kenichi Handa <handa@m17n.org>
15460
15461 * chartab.c (map_sub_char_table): Make it work for the top-level
15462 char-table. Fix handling of parent char-table.
15463 (map_char_table): Adjust for the above change.
15464
154652008-02-01 Jason Rumney <jasonr@gnu.org>
15466
15467 * w32font.c (Qgdi): Rename from Qw32.
15468
154692008-02-01 Jason Rumney <jasonr@gnu.org>
15470
15471 * w32bdf.c (get_quoted_string): Make function static.
15472
154732008-02-01 Kenichi Handa <handa@m17n.org>
15474
15475 * xftfont.c (xftfont_open): If one of font's ASCII glyph has
15476 bigger ascent and descent than those of the font, use them as
15477 font's ascent and descent.
15478
154792008-02-01 Kenichi Handa <handa@m17n.org>
15480
15481 * Makefile.in (${lispsource}international/charprop.el): Move this
15482 target within "#ifdef HAVE_UNIDATA" and "#endif".
15483
154842008-02-01 Kenichi Handa <handa@m17n.org>
15485
15486 * Makefile.in (lisp): Add ${lispsource}language/tai-viet.el.
15487 (shortlisp): Add ../lisp/language/tai-viet.el.
15488
154892008-02-01 Ulrich Mueller <ulm@gentoo.org>
15490
15491 * Makefile.in (${lispsource}international/charprop.el): Depend on
15492 temacs${EXEEXT}.
15493
154942008-02-01 Jason Rumney <jasonr@gnu.org>
15495
15496 * w32font.c (w32font_close): Delete the GDI font object.
15497
15498 * w32menu.c: Include character.h.
15499
15500 * w32proc.c: Likewise.
15501
15502 * w32select.c: Likewise.
15503
15504 * makefile.w32-in (w32proc.o): Depend on character.h.
15505
155062008-02-01 Jason Rumney <jasonr@gnu.org>
15507
15508 * w32fns.c (syms_of_w32fns): Use DEFSYM macro.
15509
15510 * w32menu.c (syms_of_w32menu): Likewise.
15511
15512 * w32proc.c (syms_of_ntproc): Likewise.
15513
15514 * w32select.c (syms_of_w32select): Likewise.
15515
15516 * w32term.c (syms_of_w32term): Likewise.
15517
155182008-02-01 Jason Rumney <jasonr@gnu.org>
15519
15520 * w32font.c (w32font_draw): Delete brush after using it.
15521
155222008-02-01 Jason Rumney <jasonr@gnu.org>
15523
15524 * w32font.c (w32font_open): Don't set font_idx.
15525 (w32font_text_extents): Try GetTextExtentPoint32W before defaulting
15526 to font settings.
15527 (w32font_draw): Fill background explicitly.
15528
155292008-02-01 Jason Rumney <jasonr@gnu.org>
15530
15531 * w32term.c (w32_initialize): Don't call w32font_initialize.
15532
15533 * w32font.c (w32font_info): Remove subranges.
15534 (QCsubranges, Qmodern, Qswiss, Qroman): Remove.
15535 (QCfamily, Qmonospace, Qsans_serif, Qmono, Qsans, Qsans__serif)
15536 (Qraster, Qoutline, Qlatin, Qgreek, Qcoptic, Qcyrillic, Qarmenian)
15537 (Qhebrew, Qarabic, Qsyriac, Qnko, Qthaana, Qdevanagari, Qbengali)
15538 (Qgurmukhi, Qgujarati, Qoriya, Qtamil, Qtelugu, Qkannada)
15539 (Qmalayalam, Qsinhala, Qthai, Qlao, Qtibetan, Qmyanmar, Qgeorgian)
15540 (Qhangul, Qethiopic, Qcherokee, Qcanadian_aboriginal, Qogham)
15541 (Qrunic, Qkhmer, Qmongolian, Qsymbol, Qbraille, Qhan)
15542 (Qideographic_description, Qcjk_misc, Qkana, Qbopomofo, Qkanbun)
15543 (Qyi, Qbyzantine_musical_symbol, Qmusical_symbol, Qmathematical):
15544 New symbols.
15545 (font_callback_data): New struct.
15546 (w32font_list, w32font_match): Use it.
15547 (w32font_open): Don't populate subranges.
15548 (w32font_has_char): Use script Lisp symbols, not subrange bitmask.
15549 (w32font_encode_char): Always return unicode code-point as-is.
15550 (w32font_text_extents): Supply a transformation matrix to
15551 GetGlyphOutline. Never look up by glyph index. Avoid looping
15552 twice. Use unicode version of GetTexExtentPoint32 instead of
15553 glyph index version.
15554 (set_fonts_frame): Remove.
15555 (w32_enumfont_pattern_entity): Add frame parameter, use it to
15556 set frame parameter. Use backward compatible fake foundries.
15557 Save generic family in extra slot under QCfamily. Make width slot
15558 constant. Save QCspacing value. Save list of scripts instead of
15559 binary subranges.
15560 (w32_generic_family, logfonts_match, font_matches_spec): New functions.
15561 (add_font_entity_to_list): Use font_callback_data struct. Filter
15562 unwanted fonts.
15563 (add_one_font_entity_to_list): Use font_callback_data struct.
15564 (w32_registry): Default to iso10646_1.
15565 (fill_in_logfont): Use dpi from extra slot. Don't bother with
15566 string font registries. Don't fill in font name if it is a generic
15567 family name, fill family instead. Use spacing, family and script
15568 extra info to fill pitch, family and charset fields.
15569 (list_all_matching_fonts): Use font_callback_data struct.
15570 (unicode_range_for_char): Remove.
15571 (font_supported_scripts): New function.
15572 (w32font_initialize): Remove.
15573 (syms_of_w32font): Update which symbols are defined.
15574
155752008-02-01 Jason Rumney <jasonr@gnu.org>
15576
15577 * font.c (font_pixel_size): Reverse assq_no_quit args.
15578
15579 * w32term.h (FONT_WIDTH): Report max width, not average.
15580 (FONT_MAX_WIDTH): Remove.
15581 (FONT_AVG_WIDTH): New macro.
15582
15583 * xfaces.c (Fx_list_fonts) [WINDOWSNT]: Remove Windows only
15584 redefinition of FONT_WIDTH.
15585
15586 * w32term.c (x_font_min_bounds): Use FONT_AVG_WIDTH.
15587 (w32_cache_char_metrics): Use FONT_WIDTH.
15588
15589 * w32fns.c (w32_load_system_font, w32_list_fonts): Use FONT_AVG_WIDTH.
15590
155912008-02-01 Jason Rumney <jasonr@gnu.org>
15592
15593 * w32font.c (w32font_open): Make lfHeight negative.
15594
15595 * w32fns.c (x_default_font_parameter): Use new style font name.
15596 (Fx_create_frame, x_create_tip_frame): Initialize resx and resy.
15597
155982008-02-01 Jason Rumney <jasonr@gnu.org>
15599
15600 * w32font.c (QCsubranges): New symbol.
15601 (w32font_open, w32font_has_char): Get subranges from subproperty
15602 of extra.
15603 (w32_enumfont_pattern_entity): Set subranges as subproperty of extra.
15604 (syms_of_w32font): Define :subranges symbol.
15605
15606 * font.c (font_put_extra): Expose externally.
15607
15608 * font.h (font_put_extra): Move declaration from font.c.
15609
15610 * font.c (Ffont_get): Use font driver to determine otf capability.
15611 (adjust_anchor): Check if driver defines anchor_point before using.
15612
15613 * w32font.c (w32font_open): Handle size, height and pixel_size better.
15614 (w32font_draw): Use options.
15615 (w32_enumfont_pattern_entity): Set size to 0 for scalable fonts.
15616 Fix detection of truetype fonts.
15617 (registry_to_w32_charset): Handle charsets other than iso8859-1
15618 expressed as lisp symbols.
15619 (w32_registry): Express charset as lisp symbol.
15620 (fill_in_logfont): Reverse pixel and point height logic.
15621 Don't set width here. Set quality to default.
15622
15623 * w32fns.c (w32_load_system_font): Fix detecting FIXED_PITCH fonts.
15624 (x_to_w32_font): Fill in lfPitchAndFamily correctly.
15625
15626 * xterm.c (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
15627 Remove redundant loop and allocation.
15628
15629 * makefile.w32-in (font.o, w32font.o): New objects.
15630 (fontset.o, xdisp.o, xfaces.o, w32fns.o, w32term.o): Depend on font.h.
15631 (FONTOBJ): New group of objects conditioned on USE_FONT_BACKEND.
15632
15633 * xdisp.c (fill_composite_glyph_string): Make the first arg to
15634 STORE_XCHARB a valid l-value.
15635
15636 * w32term.c (w32_native_per_char_metric): Swap width and rbearing
15637 calculations for non-Truetype fonts.
15638 (x_draw_glyph_string): Sync with xterm.c.
15639 (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
15640 Remove redundant code.
15641 (w32_initialize) [USE_FONT_BACKEND]: Call w32font_initialize.
15642
15643 * w32term.h (w32_output_data) [USE_FONT_BACKEND]: Add fontp member.
15644 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro from xterm.h.
15645
15646 * w32fns.c [USE_FONT_BACKEND]: Port font backend changes from xfns.c.
15647 (x_to_w32_charset, w32_to_x_charset): Expose externally.
15648
15649 * w32font.c: New file for w32 font backend.
15650
156512008-02-01 Kenichi Handa <handa@m17n.org>
15652
15653 * term.c: Don't include "buffer.h" twice.
15654
156552008-02-01 Kenichi Handa <handa@m17n.org>
15656
15657 * character.c (Funibyte_string): New function.
15658 (syms_of_character): Defsubr it.
15659
156602008-02-01 Jason Rumney <jasonr@gnu.org>
15661
15662 * w32term.c [USE_FONT_BACKEND]:
15663 (x_get_font_repertory, note_mouse_movement, x_set_mouse_face_gc)
15664 (x_set_glyph_string_clipping, x_set_glyph_string_clipping_exactly)
15665 (x_draw_glyph_string, x_draw_glyph_string_foreground)
15666 (x_draw_composite_glyph_string_foreground, x_new_fontset2)
15667 (x_free_frame_resources): Sync with xterm.c.
15668
156692008-02-01 Andreas Schwab <schwab@suse.de>
15670
15671 * lread.c (read1): Use CHAR_TABLE_STANDARD_SLOTS to validate
15672 char-table size.
15673
156742008-02-01 Kenichi Handa <handa@m17n.org>
15675
15676 * font.c (check_otf_features): Define it regardless of HAVE_LIBOTF.
15677
156782008-02-01 Kenichi Handa <handa@m17n.org>
15679
15680 * ftfont.c (ftfont_driver): Delete font_otf_gsub and
15681 font_otf_gpos, add font_drive_otf.
15682
15683 * fontset.c (fontset_find_font): Pay attention to font size
15684 specified for a font.
15685 (reorder_font_vector): Check contents of font_def.
15686
15687 * font.c (struct otf_list): Delete it.
15688 (otf_list): Make it a lisp variable.
15689 (otf_open): Use lispy otf_list.
15690 (generate_otf_features): Rename from parse_gsub_gpos_spec.
15691 (check_otf_features): New function.
15692 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
15693 New functions.
15694 (font_drive_otf): New function merging font_otf_gsub and
15695 font_otf_gpos.
15696 (font_open_for_lface): New arg spec. Change argument order.
15697 (font_load_for_face): Adjust for the change of font_open_for_lface.
15698 (Ffont_drive_otf): New function merging Ffont_otf_gsub and
15699 Ffont_otf_gpos.
15700 (syms_of_font): Staticpro otf_list. Delete defsubr of
15701 Sfont_otf_gsub and Sfont_otf_gpos. Defsubr Sfont_drive_otf.
15702
15703 * xfaces.c (set_font_frame_param): Adjust for the change of
15704 font_open_for_lface.
15705
15706 * font.h (font_open_for_lface): Adjust prototype.
15707 (struct font_driver): Delete members otf_gsub and otf_gpos, add
15708 member otf_drive.
15709 (font_otf_gsub, font_otf_gpos): Delete externs.
15710 (font_drive_otf): Extern it.
15711
157122008-02-01 Kenichi Handa <handa@m17n.org>
15713
15714 * font.c (font_at): If the window W is not on a window system,
15715 return Qnil.
15716
15717 * coding.c (produce_chars, encode_coding): Don't call
15718 insert_from_gap if no characters to produce.
15719
157202008-02-01 Kenichi Handa <handa@m17n.org>
15721
15722 * fontset.c (free_realized_fontsets): Avoid unnecessary call of
15723 Fclear_face_cache.
15724
15725 * xfaces.c (face_for_font): Check also face->font==font->font.font.
15726
157272008-02-01 Miles Bader <miles@gnu.org>
15728
15729 * emacs.c (main): Change default value of `enable_font_backend' to 1.
15730 Parse "--disable-font-backend" option.
15731 (standard_args): Add "--disable-font-backend" option.
15732
157332008-02-01 Kenichi Handa <handa@m17n.org>
15734
15735 * fontset.c (fontset_find_font): New function.
15736 (fontset_font): Use fontset_find_font.
15737 (make_fontset_for_ascii_face): Don't set face ID in rfont_def.
15738 Register the specified font for all Latin characters.
15739 (new_fontset_from_font): Register the specified font for all Latin
15740 characters.
15741 (dump_fontset): For a realized fontset, include the base fontset
15742 name in the returned vector.
15743
157442008-02-01 Kenichi Handa <handa@m17n.org>
15745
15746 * character.h (CHAR_STRING): Cast C to unsigned on calling
15747 char_string.
15748
15749 * character.c (char_string): Type of arg C changed to unsigned.
15750 Signal an error if C is an invalid character code.
15751
15752 * editfns.c (general_insert_function, Fchar_to_string):
15753 Use CHARACTERP, not INTEGERP.
15754
157552008-02-01 Kenichi Handa <handa@m17n.org>
15756
15757 * character.h (MIN_MULTIBYTE_LEADING_CODE)
15758 (MAX_MULTIBYTE_LEADING_CODE): New macros.
15759
15760 * regex.c (analyse_first): Fix for multibyte characters in "case
15761 charset:" and "case categoryspec:".
15762
157632008-02-01 Andreas Schwab <schwab@suse.de>
15764
15765 * Makefile.in (LIBES): Move standard libraries to the end.
15766
157672008-02-01 Kenichi Handa <handa@m17n.org>
15768
15769 * alloc.c (Fgarbage_collect): If nextb->text->inhibit_shrinking is
15770 nonzero, don't shrink the buffer nextb.
15771
15772 * buffer.h (struct buffer_text): New member inhibit_shrinking.
15773
15774 * coding.c (coding_alloc_by_making_gap): New arg offset.
15775 (alloc_destination): Call coding_alloc_by_making_gap with the arg
15776 offset.
15777 (decode_coding_iso_2022): Update coding->safe_charsets.
15778 (decode_coding_gap): Temporarily set
15779 current_buffer->text->inhibit_shrinking to 1.
15780
157812008-02-01 Kenichi Handa <handa@m17n.org>
15782
15783 * xterm.c (x_draw_composite_glyph_string_foreground): Fix
15784 indexing into elements of s->cmp and s->char2b.
15785
157862008-02-01 Juanma Barranquero <lekktu@gmail.com>
15787
15788 * regex.c (RE_STRING_CHAR_AND_LENGTH) [! emacs]: Add missing arg `len'.
15789
157902008-02-01 Kenichi Handa <handa@m17n.org>
15791
15792 * regex.c (GET_CHAR_BEFORE_2, GET_CHAR_AFTER): Check the variable
15793 target_multibyte instead of multibyte.
15794 (re_match_2_internal): Call bcmp_translate with target_multibyte.
15795 (bcmp_translate): Change the argument name from multibyte to
15796 target_multibyte.
15797
157982008-02-01 Kenichi Handa <handa@m17n.org>
15799
15800 These changes are to compile a regexp into a pattern that can be
15801 used both for multibyte and unibyte targets.
15802
15803 * Makefile.in (search.o): Depend on charset.h.
15804
15805 * character.c (multibyte_char_to_unibyte_safe): New function.
15806
15807 * search.c: Include "charset.h".
15808 (compile_pattern_1): Delete argument multibyte. Don't set
15809 cp->buf.target_multibyte here. Set cp->buf.charset_unibyte.
15810 (compile_pattern): Don't compare cp->buf.target_multibyte.
15811 Compare cp->buf.charset_unibyte.
15812 (compile_pattern): Set cp->buf.target_multibyte.
15813
15814 * lisp.h (multibyte_char_to_unibyte_safe): Extern it.
15815
15816 * regex.h (struct re_pattern_buffer): New member charset_unibyte.
15817
15818 * regex.c (RE_STRING_CHAR, RE_STRING_CHAR_AND_LENGTH): New arg
15819 multibyte. Change callers.
15820 (RE_CHAR_TO_MULTIBYTE, RE_CHAR_TO_UNIBYTE): New macros.
15821 (MAKE_CHAR_MULTIBYTE, MAKE_CHAR_UNIBYTE): Delete. Change callers
15822 to use RE_CHAR_TO_MULTIBYTE and RE_CHAR_TO_UNIBYTE, respectively.
15823 (SETUP_ASCII_RANGE, SETUP_UNIBYTE_RANGE): New macros.
15824 (SETUP_MULTIBYTE_RANGE): Generate a more compact range_table.
15825 (regex_compile): Make the compiled pattern usable both for
15826 multibyte and unibyte targets.
15827 (analyse_first): Make the fastmap usable both for multibyte and
15828 unibyte targets.
15829 (TRANSLATE_VIA_MULTIBYTE): Delete.
15830 (re_match_2_internal): Pay attention to the case that the
15831 multibyteness of bufp and target may be different.
15832
158332008-02-01 Kenichi Handa <handa@m17n.org>
15834
15835 * xdisp.c (x_produce_glyphs): When a font is not found, make the
15836 empty box occupy at least one column width.
15837
158382008-02-01 Miles Bader <miles@gnu.org>
15839
15840 * Makefile.in: Remove redundant HAVE_XFT clause.
15841
158422008-02-01 Kenichi Handa <handa@m17n.org>
15843
15844 * xrdb.c (x_load_resources): Setup the default fontSet X resource.
15845
158462008-02-01 Kenichi Handa <handa@m17n.org>
15847
15848 * fontset.c (Finternal_char_font): Fix for the case of POSITION
15849 being nil.
15850
158512008-02-01 Kenichi Handa <handa@m17n.org>
15852
15853 * xftfont.c (xftfont_open): Call FcConfigSubstitute.
15854
158552008-02-01 Kenichi Handa <handa@m17n.org>
15856
15857 * xftfont.c (xftfont_open): Don't enable antialias explicitly.
15858
158592008-02-01 Kenichi Handa <handa@m17n.org>
15860
15861 * search.c (simple_search): Fix previous change.
15862
158632008-02-01 Kenichi Handa <handa@m17n.org>
15864
15865 * xftfont.c (ftfont_font_format): Extern declaration.
15866
15867 * frame.c (x_set_font): Fix the second arg to fs_query_fontset.
15868
15869 * xfont.c (xfont_driver): Initialize ftfont_driver.type by 0.
15870 (xfont_list): Don't directly use Lisp_Object as an operand of &&.
15871
15872 * ftfont.c (ftfont_driver): Initialize ftfont_driver.type by 0.
15873 (ftfont_font_format): Fix previous change.
15874
15875 * font.h (Ffont_xlfd_name): EXFUN it.
15876
15877 * font.c (font_parse_xlfd): Fix the array size of `f'.
15878 (register_font_driver): Use EQ to compare driver->type.
15879
15880 * xfns.c (xic_create_xfontset2) [USE_FONT_BACKEND]: New function.
15881 (create_frame_xic) [USE_FONT_BACKEND]: Call xic_create_xfontset2.
15882 (xic_set_xfontset) [USE_FONT_BACKEND]: Likewise.
15883
158842008-02-01 Kenichi Handa <handa@m17n.org>
15885
15886 * ftfont.c (ftfont_pattern_entity, ftfont_list_generic_family)
15887 (ftfont_list, ftfont_font_format): Check if FC_FONTFORMAT is defined.
15888
158892008-02-01 Kenichi Handa <handa@m17n.org>
15890
15891 * xfont.c (xfont_open): Set font->format.
15892
15893 * xftfont.c (xftfont_open): Set font->format.
15894
15895 * ftfont.c (ftfont_pattern_entity): Add fontformat in a pattern.
15896 (ftfont_list): Include FC_FONTFORMAT in FcObject.
15897 (ftfont_open): Set font->format.
15898 (ftfont_font_format): New function.
15899
15900 * font.h (struct font): New member format.
15901
15902 * font.c (Qopentype): New variable.
15903 (syms_of_font): Defsym it.
15904 (Fquery_font): Change the format of the last element of the return
15905 value.
15906
159072008-02-01 Kenichi Handa <handa@m17n.org>
15908
15909 * xfns.c (xic_create_xfontset): Try the default fontset name as a
15910 last resort.
15911
159122008-02-01 Kenichi Handa <handa@m17n.org>
15913
15914 * coding.c (detect_coding_charset): Fix detection of multi-byte
15915 charset.
15916
159172008-02-01 Bob Halley <halley@play-bow.org> (tiny change)
15918
15919 * ccl.c (ccl_driver): If DST is NULL, set ccl->produced to 0.
15920
159212008-02-01 Kenichi Handa <handa@m17n.org>
15922
15923 * xdisp.c (get_next_display_element): Set it->face_id for the
15924 first component of a composition.
15925 (x_produce_glyphs): Check if the font is changed or not for composition.
15926
159272008-02-01 Kenichi Handa <handa@m17n.org>
15928
15929 * fontset.c (Qlatin): New variable.
15930 (syms_of_fontset): Define it as a lisp symbol.
15931 (Fset_fontset_font): If TARGET is `latin', use FONT_SPEC for ASCII.
15932
159332008-02-01 Kenichi Handa <handa@m17n.org>
15934
15935 * font.c (font_unparse_fcname): Pay attention to the case that
15936 some of font property is a null string.
15937
159382008-02-01 Kenichi Handa <handa@m17n.org>
15939
15940 * term.c: Include "composite.h".
15941 (encode_terminal_code): Output all components of composition.
15942 Check the size of encode_terminal_src.
15943 (produce_glyphs): For composition, call produce_composite_glyph.
15944 (append_composite_glyph, produce_composite_glyph): New functions.
15945
15946 * xdisp.c (x_produce_glyphs): In handling composition, if a font
15947 is not found, get font_info from the current ascii face.
15948
159492008-02-01 Kenichi Handa <handa@m17n.org>
15950
15951 * fileio.c (Finsert_file_contents): On replacing, temporarily bind
15952 buffer-file-name to Qnil before calling insert_from_buffer.
15953
15954 * font.c (font_unparse_fcname): Pay attention to the case that
15955 foundry is a null string.
15956
159572008-02-01 Kenichi Handa <handa@m17n.org>
15958
15959 * ftfont.c (ftfont_list): Allow registry "unicode-sip".
15960
15961 * font.c (Qunicode_sip): New variable.
15962 (syms_of_font): Declare it as a Lisp symbol.
15963
15964 * font.h (Qunicode_sip): Extern it.
15965
159662008-02-01 Kenichi Handa <handa@m17n.org>
15967
15968 * composite.c (get_composition_id): Pay attention to TAB component.
15969
15970 * xterm.c (x_draw_composite_glyph_string_foreground): Don't draw
15971 TAB. Adjust for the change of s->char2b which always points to
15972 the first element of allocated memory.
15973
15974 * xftfont.c (xftfont_text_extents): Fix calculation of descent value.
15975
15976 * xdisp.c (handle_composition_prop): Set it->c to the first
15977 non-TAB component.
15978 (fill_composite_glyph_string): Change argument.
15979 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the above change.
15980 (x_produce_glyphs): Fix handling of left/right padding.
15981
159822008-02-01 Kenichi Handa <handa@m17n.org>
15983
15984 * coding.c (detect_coding_system): Fix for handling off
15985 inhibit_iso_escape_detection. Fix for the case that no coding
15986 system is defined for a specific coding category.
15987
159882008-02-01 Kenichi Handa <handa@m17n.org>
15989
15990 * font.c (font_matching_entity): Delete unused local var.
15991
15992 * xftfont.c (xftfont_open): Call XftDefaultSubstitute before
15993 opening a font.
15994
15995 * fileio.c (Finsert_file_contents): On recovering a file, assume
15996 Unix-like eol.
15997 (choose_write_coding_system): On auto-saving a file, force
15998 Unix-like eol.
15999
16000 * coding.c (setup_coding_system): Fix setting of
16001 coding->common_flags based on eol_type.
16002 (coding_inherit_eol_type): If PARENT is not nil, be sure to
16003 inherit from it.
16004
160052008-02-01 Kenichi Handa <handa@m17n.org>
16006
16007 * alloc.c (NSTATICS): Increas to 0x600.
16008
160092008-02-01 Kenichi Handa <handa@m17n.org>
16010
16011 * ftfont.c (ftfont_driver): Set ftfont_driver.match to ftfont_match.
16012 (ftfont_list): Don't check :name property.
16013 (ftfont_match): New function.
16014 (ftfont_pattern_entity): If the pattern doesn't contain
16015 FC_SPACING, don't assume FC_MONO.
16016
16017 * font.h (struct font_driver): New member `match'.
16018 (font_update_drivers): Adjust prototype.
16019
16020 * font.c (font_parse_fcname, font_parse_name): Don't change :name
16021 property of FONT.
16022 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE, check_gstring): Define
16023 them unconditionally.
16024 (font_matching_entity): New function.
16025 (font_open_by_name): Try font_matching_entity if exact match is
16026 not found.
16027 (font_update_drivers): Delete the arg FONT. Return a list of
16028 actually used backends. Don't free faces, font caches here.
16029 Don't store data in frame parameters. Don't call x_set_font.
16030 (Ffont_spec): Store :name property as is.
16031 (Ffont_get): Check HAVE_LIBOTF before calling font_otf_capability.
16032 (Ffont_otf_gsub): Call font->driver->otf_gsub instead of font_otf_gsub.
16033 (Ffont_otf_gpos): Call font->driver->otf_gpos instead of font_otf_gpos.
16034 (Ffont_otf_alternates): Check if the driver has otf_gsub function.
16035 Call font->driver->otf_gsub instead of font_otf_gsub.
16036
16037 * frame.c (x_set_font_backend): Do more works that were done in
16038 font_update_drivers before.
16039
16040 * xfont.c (xfont_match): New function.
16041 (xfont_driver): Set xfont_driver.match to xfont_match.
16042 (xfont_draw): Set font in GC if necessary.
16043
16044 * ftxfont.c (ftxfont_match): New function.
16045 (syms_of_ftxfont): Set ftxfont_driver.match to ftxfont_match.
16046
16047 * xftfont.c (xftfont_match): New function.
16048 (syms_of_xftfont): Set xftfont_driver.match to xftfont_match.
16049
160502008-02-01 Kenichi Handa <handa@m17n.org>
16051
16052 * font.h (struct font): New member scalable.
16053 (struct font_driver): New arg ALTERANTE_SUBST to otf_gsub.
16054 (font_otf_gsub): Adjust prototype.
16055
16056 * font.c (font_otf_capability): Fix handling of the default langsys.
16057 (parse_gsub_gpos_spec): Change type to void. New arg nbytes.
16058 Check the contents of SPEC.
16059 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE): New macros.
16060 (check_gstring): New function.
16061 (REPLACEMENT_CHARACTER): New macro.
16062 (font_otf_gsub): New arg alternate_subst. Be sure to set all
16063 glyph codes of GSTRING.
16064 (font_otf_gpos): Be sure to set all glyph codes of GSTRING.
16065 (font_prepare_composition): Set cmp->glyph_len.
16066 (font_open_entity): Set font->scalable.
16067 (Ffont_get): Handle :otf property.
16068 (Ffont_otf_gsub, Ffont_otf_gpos, Ffont_otf_alternates): New
16069 functions.
16070 (Fquery_font): Use font->font.full_name.
16071 (syms_of_font): Defsubr Sfont_otf_gsub, Sfont_otf_gpos, and
16072 Sfont_otf_alternates.
16073
16074 * ftfont.c (ftfont_open): Set font->font.full_name and
16075 font->font.name properly. Fix calculation of font->font.height
16076 and font->min_width.
16077
16078 * ftxfont.c (ftxfont_create_gcs): New function.
16079 (ftxfont_draw_bitmap): Fix arg to ftfont_driver.get_bitmap.
16080 (ftxfont_draw_backgrond): Fix filling region.
16081 (ftxfont_default_fid): New function.
16082 (ftxfont_open): Set xfont->fid to the return value of
16083 ftxfont_default_fid.
16084 (ftxfont_prepare_face): Use ftxfont_create_gcs to create GCs.
16085 (ftxfont_done_face): Free only GCs that are created by
16086 ftxfont_create_gcs.
16087 (ftxfont_draw): If face->gc != s->gc, create proper GCs.
16088
16089 * xterm.c (x_set_glyph_string_clipping_exactly) [USE_FONT_BACKEND]:
16090 Clip to src->width, etc (not src->clip_XXX).
16091
16092 * xfns.c (x_create_tip_frame) [USE_FONT_BACKEND]: Handle
16093 FontBackend frame parameter.
16094
160952008-02-01 Kenichi Handa <handa@m17n.org>
16096
16097 * font.h (struct font_driver_list): New member `on'.
16098 (Fclear_font_cache): EXFUN it.
16099 (font_update_drivers): Extern it.
16100
16101 * font.c (font_unparse_fcname): Fix typo (swidth->width).
16102 (font_list_entities): Check driver_list->on.
16103 (register_font_driver): Initalize `on' member to 0.
16104 (font_update_drivers): New function.
16105 (Fclear_font_cache): Check driver_list->on.
16106
16107 * frame.h (Qfont_backend): Extern it.
16108 (x_set_font_backend): Extern it.
16109
16110 * frame.c (Qfont_backend): New variable.
16111 (frame_parms): New element for font-backend.
16112 (x_set_font_backend): New function.
16113
16114 * xfns.c (Fx_create_frame) [USE_FONT_BACKEND]: Handle
16115 FontBackend frame parameter.
16116 (x_frame_parm_handlers) [USE_FONT_BACKEND]: New element
16117 x_set_font_backend.
16118
16119 * xfont.c (xfont_list): Don't try listing by :name property if the
16120 name is not for XLFD.
16121
161222008-02-01 Kenichi Handa <handa@m17n.org>
16123
16124 * font.h (LGLYPH_FROM, LGLYPH_TO, LGLYPH_SET_FROM)
16125 (LGLYPH_SET_TO): New macros.
16126 (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WADJUST): Check if adjustment
16127 element of G is vector or not.
16128 (font_at): Extern it.
16129
16130 * font.c: Include window.h.
16131 (font_lispy_object): New function.
16132 (font_prepare_composition): Check LGLYPH_FORM (g) to detect the
16133 end of valid glyph.
16134 (font_close_object): Fix getting (struct font *).
16135 (font_at): New function.
16136 (Ffont_get): If FONT is a font-object, get entity from it.
16137 (Ffont_make_gstring): Initialize elements of glyphs with nil.
16138 (Ffont_fill_gstring): Use macro LGSTRING_XXX and LGLYPH_XXX. Fix
16139 range check.
16140 (Ffont_at): New function.
16141 (syms_of_font): Defsubr Sfont_at.
16142
16143 * xdisp.c (it_props): Move the entry for Qauto_composed to just
16144 before the entry for Qcomposition.
16145 (handle_auto_composed_prop): Call auto-composition-function with 4 args.
16146 (handle_composition_prop) [USE_FONT_BACKEND]: Set it->face_id from
16147 the font in gstring.
16148 (fill_composite_glyph_string) [USE_FONT_BACKEND]: Check
16149 LGLYPH_FORM (g) to detect the end of valid glyph.
16150 (x_produce_glyphs) [USE_FONT_BACKEND]: Don't update it->face_id if
16151 we are composing with gstring.
16152
16153 * xterm.c (x_draw_composite_glyph_string_foreground) [USE_FONT_BACKEND]:
16154 Check if adjustment is vector or not.
16155
16156 * Makefile.in (font.o): Make it depends on window.h.
16157
161582008-02-01 Kenichi Handa <handa@m17n.org>
16159
16160 * xterm.c (x_draw_composite_glyph_string_foreground): Check if
16161 adjustment is vector or not.
16162
161632008-02-01 Miles Bader <miles@gnu.org>
16164
16165 * character.h (CHECK_CHARACTER): Redefine in terms of CHECK_TYPE.
16166
161672008-02-01 Kenichi Handa <handa@m17n.org>
16168
16169 * font.h (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WIDTH, LGLYPH_WADJUST)
16170 (LGLYPH_SET_WIDTH): Adjusted for the change of LGLYPH format.
16171 (LGLYPH_ADJUSTMENT, LGLYPH_SET_ADJUSTMENT): New macros.
16172
16173 * font.c (font_merge_old_spec): Treat '*' in foundry as a wild card.
16174 (DEVICE_DELTA): Fix typo.
16175 (font_otf_gpos, font_prepare_compositio): Adjust for the change of
16176 LGLYPH format.
16177
16178 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
16179 the change of LGLYPH format.
16180
161812008-02-01 Kenichi Handa <handa@m17n.org>
16182
16183 * ftfont.c (ftfont_list): Fix typo.
16184 (ftfont_build_basic_charsets): Don't include letters with diacritics.
16185
161862008-02-01 Jan Djärv <jan.h.d@swipnet.se>
16187
16188 * xfaces.c (realize_non_ascii_face): Set face->extra to NULL.
16189
16190 * xftfont.c (xftfont_done_face): Call XftDrawDestroy only if
16191 xftface_info is non-NULL.
16192
161932008-02-01 Jan Djärv <jan.h.d@swipnet.se>
16194
16195 * ftfont.c (ftfont_list): Move misplaced #endif.
16196
161972008-02-01 Kenichi Handa <handa@m17n.org>
16198
16199 * ftfont.c (ftfont_list): Pay attention to the case that
16200 FC_CAPABILITY is not defined.
16201
162022008-02-01 Kenichi Handa <handa@m17n.org>
16203
16204 * xftfont.c (xftfont_open): Set charset related members to -1.
16205
16206 * ftfont.c (ftfont_list): Handle QCotf property. Fix handling of
16207 QCname.
16208 (ftfont_open): Set charset related members to -1.
16209
16210 * fontset.c (Votf_script_alist): New variable.
16211 (syms_of_fontset): Initialize it.
16212 (fontset_font): Delete unused variable.
16213
16214 * fontset.h (Votf_script_alist): Extern it.
16215
16216 * font.c (font_find_for_lface): Optimize code.
16217
16218 * font.h (font_close_object, font_merge_old_spec): Extern them.
16219
162202008-02-01 Kenichi Handa <handa@m17n.org>
16221
16222 * font.c (QCscalable, Qc, Qm, Qp, Qd): New variables.
16223 (syms_of_font): Initialize them.
16224 (font_pixel_size): Allow float value in dpi.
16225 (font_prop_validate_type): Delete.
16226 (font_prop_validate_symbol, font_prop_validate_style): Change argument.
16227 Change caller.
16228 (font_prop_validate_non_neg): Rename from font_prop_validate_size.
16229 (font_prop_validate_extra): Delete.
16230 (font_prop_validate_spacing): New function.
16231 (font_property_table): Add elements for all known properties.
16232 (get_font_prop_index): Rename from check_font_prop_name. New
16233 argument FROM. Change caller.
16234 (font_prop_validate): Validate all known properties.
16235 (font_put_extra): Delete argument force. Change caller.
16236 (font_expand_wildcards): Make it static. Fix the way of shrinking
16237 the possible range.
16238 (font_parse_xlfd): Delete argument merge. Fix handling of RESX,
16239 RESY, SPACING, and AVGWIDTH. Don't validate property values here.
16240 Change caller.
16241 (font_unparse_xlfd): Handle dpi, spacing, and scalable properties.
16242 (font_parse_fcname): Delete argument merge. Fix parsing of point
16243 size. Don't validate properties values here. Change caller.
16244 (font_unparse_fcname): Handle dpi, spacing, and scalable properties.
16245 (font_open_by_name): Delete unused variable.
16246 (Ffont_spec): Likewise. Validate property values.
16247 (Ffont_match_p): New function.
16248
16249 * font.h (QCscalable): Extern it.
16250 (font_parse_xlfd, font_parse_fcname): Adjust prototype.
16251
16252 * ftfont.c (ftfont_list): Handle properties dpi, spacing, and scalable.
16253
16254 * xfont.c (xfont_query_font): Adjust for the change of font_parse_xlfd.
16255 (xfont_list_pattern): New function.
16256 (xfont_list): Use xfont_list_pattern.
16257
162582008-02-01 Kenichi Handa <handa@m17n.org>
16259
16260 * font.h (Flist_fonts): EXFUN it.
16261
162622008-02-01 Jason Rumney <jasonr@gnu.org>
16263
16264 * w32term.c (w32_initialize): Add back smoothing_type and
16265 smoothing_enabled definitions.
16266
162672008-02-01 Kenichi Handa <handa@m17n.org>
16268
16269 * xterm.c (x_draw_glyph_string) [USE_FONT_BACKEND]: Check
16270 s->face->font on determining underline position.
16271
162722008-02-01 Kenichi Handa <handa@m17n.org>
16273
16274 * font.c (font_parse_xlfd): Fix generating of CHARSET_REGISTRY field.
16275 (font_has_char): Accept font-object too.
16276 (font_find_for_lface): Try at first with a size specified in face.
16277
162782008-02-01 Kenichi Handa <handa@m17n.org>
16279
16280 * frame.c (x_set_font) [USE_FONT_BACKEND]: Fix argument to
16281 font_open_by_name.
16282
162832008-02-01 Kenichi Handa <handa@m17n.org>
16284
16285 * font.h (QCspacing, QCdpi): Extern them.
16286 (enum font_spacing): New enum.
16287 (FONT_PIXEL_SIZE_QUANTUM): New macro.
16288
16289 * font.c (POINT_TO_PIXEL): Don't divide POINT by 10.
16290 (QCspacing, QCdpi): New variables.
16291 (syms_of_font): Initialize them.
16292 (font_pixel_size): New function.
16293 (font_put_extra): New function.
16294 (font_parse_xlfd): Fix handling of font size. Add QCdpi property
16295 in FONT_EXTRA.
16296 (font_parse_fcname): Handle enumerated values (e.g. bold).
16297 Fix handling font size. Add QCname property that contains only
16298 unknown properties.
16299 (font_score): Change argument. Change caller. Pay attention to
16300 FONT_PIXEL_SIZE_QUANTUM.
16301 (font_sort_entites, font_list_entities, font_find_for_lface)
16302 (font_open_for_lface, font_open_by_name): Fix handling of font size.
16303 (Ffont_spec): Add QCname property that contains only unknown properties.
16304
16305 * ftfont.c (ftfont_list): Use assq_no_quit, not Fassq. Don't
16306 include weight in listing pattern, instead check weight of each
16307 listed font. Don't include scalable in pattern. Pay attention to
16308 FONT_PIXEL_SIZE_QUANTUM.
16309
163102008-02-01 Kenichi Handa <handa@m17n.org>
16311
16312 * font.c (font_parse_fcname): Fix parsing of point-size.
16313 (font_unparse_fcname): Produce symbolic names for style properties.
16314 (font_list_entities): Handle float size correctly.
16315 (font_open_by_name): Prefer `normal' property values if the name
16316 doesn't specify them.
16317
16318 * fontset.c (Finternal_char_font): Use font_get_name, not
16319 Ffont_xlfd_name.
16320
16321 * ftfont.c (ftfont_pattern_entity): Use the numeric value 100 for
16322 FC_WEIGHT_REGULAR. Exclude FC_SIZE and FC_PIXEL_SIZE from listing
16323 pattern. Don't force scalable.
16324
16325 * xftfont.c (xftfont_open): For generating a name, start from
16326 96-byte buffer.
16327
163282008-02-01 Jan Djärv <jan.h.d@swipnet.se>
16329
16330 * frame.h (x_new_fontset2): Fix prototype.
16331
163322008-02-01 Kenichi Handa <handa@m17n.org>
16333
16334 * font.h (struct font_driver): Delete member parse_name.
16335 (font_match_p, font_get_spec, font_parse_fcname)
16336 (font_unparse_fcname): Extern them.
16337 (font_get_name): Adjust prototype.
16338
16339 * font.c (XLFD_SMALLNUM_MASK): Delete this macro.
16340 (XLFD_LARGENUM_MASK): Delete XLFD_ENCODING_MASK from it.
16341 (font_expand_wildcards): Fix handling ENCODING field. Avoid
16342 unnecessary checks for weight, slant, and swidth.
16343 (font_parse_fcname): New function.
16344 (font_unparse_fcname): New function.
16345 (font_parse_name): New function.
16346 (font_match_p): New function.
16347 (font_get_name): Change return value to Lisp string.
16348 (font_get_spec): New function.
16349 (Qunspecified, Qignore_defface): Don't extern them.
16350 (font_find_for_lface): Assume that LFACE is fully specified.
16351 (font_load_for_face): If lface[LFACE_FONT_INDEX] is an font
16352 object, use it for FACE.
16353 (font_open_by_name): Call Ffont_spec with QCname prop. Don't call
16354 driver->parse_name.
16355 (Ffont_spec): Call font_parse_name, not font_parse_xlfd.
16356
16357 * fontset.h (new_fontset_from_font) [USE_FONT_BACKEND]: Adjust
16358 prototype.
16359
16360 * fontset.c (new_fontset_from_font) [USE_FONT_BACKEND]: Delete
16361 argument F. Don't call Fnew_fontset. Instead, directly call
16362 make_fontset.
16363
16364 * frame.h (x_new_fontset2) [USE_FONT_BACKEND]: Adjust prototype.
16365
16366 * frame.c (x_set_font) [USE_FONT_BACKEND]: Adjust for the change
16367 of x_new_fontset2.
16368
16369 * ftfont.c (Qmonospace, Qsans_serif, Qserif, Qmono, Qsans)
16370 (Qsans__serif): New variables.
16371 (ftfont_generic_family_list): New variable.
16372 (syms_of_ftfont): Initialize the above variables.
16373 (ftfont_pattern_entity): Delete argument NAME.
16374 (ftfont_list_generic_family): New function.
16375 (ftfont_parse_name): Delete this function.
16376 (ftfont_list): Try generic family only when FcFontList found no font.
16377 (ftfont_list_family): Fix args to FcObjectSetBuild.
16378
16379 * xfaces.c (check_lface_attrs) [USE_FONT_BACKEND]: Accept font
16380 object in attrs[LFACE_FONT_INDEX].
16381 (set_lface_from_font_name): Cancel all changes for font-backend.
16382 (set_lface_from_font_and_fontset) [USE_FONT_BACKEND]: New
16383 function.
16384 (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]: Accept a
16385 font object in QCfont attribute.
16386 (set_font_frame_param) [USE_FONT_BACKEND]: Likewise.
16387 (realize_default_face) [USE_FONT_BACKEND]: Call
16388 set_lface_from_font_and_fontset.
16389
16390 * xfns.c (x_default_font_parameter) [USE_FONT_BACKEND]: Try also
16391 "fixed", and signal error here if no suitable font was found.
16392
16393 * xfont.c (xfont_parse_name): Delete this function.
16394
16395 * xftfont.c (xftfont_open): Change coding style of error
16396 handling. Generate fontconfig's fontname pattern.
16397
16398 * xterm.h (struct x_output) [USE_FONT_BACKEND]: New member fontp.
16399 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro.
16400
16401 * xterm.c (x_new_fontset2) [USE_FONT_BACKEND]: Change arguments.
16402 Both args FONTSET and FONT_OBJECT must be existing ones.
16403
164042008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16405
16406 * macterm.c (mac_set_unicode_keystroke_event): Don't use MAKE_CHAR.
16407
164082008-02-01 Kenichi Handa <handa@m17n.org>
16409
16410 * xfont.c (xfont_open, xfont_encode_char): Fix typo.
16411
16412 * font.h (struct font): Fix typo.
16413
16414 * font.c (enum xlfd_field_index): Rename XLFD_XXX_SIZE_INDEX to
16415 XLFD_XXX_INDEX.
16416 (enum xlfd_field_mask): New enum.
16417 (intern_font_field): Changed argument. Change caller. If digits
16418 are followed by non-digits, return a symbol.
16419 (font_expand_wildcards): New function.
16420 (font_parse_xlfd): Fix wildcard handling.
16421 (Ffont_spec): If :name is specified, reflect the info in the other
16422 properties.
16423
16424 * ftfont.c (ftfont_pattern_entity): Fix typo.
16425 (ftfont_list): Enforce FC_LANG in PATTERN to cancel the effect of
16426 locale.
16427
164282008-02-01 Kenichi Handa <handa@m17n.org>
16429
16430 * font.h (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Extern them.
16431
16432 * font.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move from ftfont.c.
16433 (font_unparse_xlfd): Fix argument type declaration. Append "*" if
16434 registry doesn't specify encoding part.
16435 (font_find_for_lface): Pay attention to LFACE_FONT_INDEX.
16436 (font_open_by_name): At first try parsing the name.
16437 (syms_of_font): Declare Qiso8859_1, Qiso10646_1, and Qunicode_bmp
16438 as Lisp symbols.
16439
16440 * fontset.c (reorder_font_vector): Pay attention to the case that
16441 the 3rd element of font_def is nil.
16442 (fontset_font): For the default fontset, append one more fontset
16443 elements for a script-based font specification. Don't add script
16444 attribute on finding a font.
16445 (new_fontset_from_font): Unconditionally set FONTSET_ASCII to the
16446 font name.
16447 (fontset_ascii_font): If a font can't be opened, return nil.
16448
16449 * ftfont.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move to font.c.
16450 (ftfont_pattern_entity): New function.
16451 (ftfont_get_cache): Assume that freetype_font_cache is already
16452 initialized.
16453 (ftfont_list): Handle the case that a file is specified in font
16454 name. Use ftfont_pattern_entity to generate entities.
16455 (ftfont_has_char): Check if the pattern contains FC_CHARSET.
16456 (syms_of_ftfont): Initialize freetype_font_cache.
16457
16458 * xftfont.c (xftfont_open): Make the font name fontconfig's
16459 style. Add BLOCK_INPUT and UNBLOCK_INPUT.
16460 (xftfont_close): Free font->font.name if not NULL.
16461
16462 * xfont.c (xfont_list): If script is specified for a font, return
16463 null_vector.
16464 (xfont_list_family): Declare argument type.
16465
16466 * xfaces.c (set_lface_from_font_name): If a font doesn't have a
16467 name, set LFACE_FONT (lface) to nil.
16468
16469 * xterm.c (x_new_fontset2): If an ASCII font couldn't be loaded,
16470 return Qnil.
16471
164722008-02-01 Kenichi Handa <handa@m17n.org>
16473
16474 * emacs.c (main): Check -enable-font-backend arg after the check of -nl.
16475 (standard_args): Add "-enable-font-backend".
16476
164772008-02-01 Kenichi Handa <handa@m17n.org>
16478
16479 * xftfont.c (xftfont_default_fid): Set fid_known to 1.
16480 (struct xftdraw_list, xftdraw_list): Delete them.
16481 (register_xftdraw, check_xftdraw): Delete them.
16482 (xftfont_prepare_face): Don't call register_xftdraw.
16483 (xftfont_done_face): Don't call check_xftdraw.
16484 (xftfont_draw): Get background color only when with_background is
16485 nonzero.
16486
16487 * xfont.c (xfont_encode_char): Fix calculation of char2b.
16488
164892008-02-01 Kenichi Handa <handa@m17n.org>
16490
16491 These changes are for the new font handling codes.
16492
16493 * Makefile.in (ALL_CFLAGS): Add @FREETYPE_CFLAGS@,
16494 @FONTCONFIG_CFLAGS@, and @LIBOTF_CFLAGS@.
16495 (LIB_X11_LIB): If HAVE_XFT is defined, set to @XFT_LIBS@.
16496 (FONTSRC, FONTOBJ): New variables.
16497 (obj): Add $(FONTOBJ).
16498 (SOME_MACHINE_OBJECTS): Lib_X11_Lib.
16499 (LIBES): Add @FREETYPE_LIBS@, @FONTCONFIG_LIBS@, and
16500 @LIBOTF_LIBS@.
16501 (font.o, ftfont.o, xfont.o, xftfont.o, ftxfont.o): New targets.
16502 (fontset.o, xdisp.o, xfaces.o, xfns.o, xterm.o): Depend on $(FONTSRC).
16503
16504 * font.h, font.c, xfont.c, ftfont.c, xftfont.c, ftxfont.c: New files.
16505
16506 * character.h (Vscript_representative_chars): Extern it.
16507
16508 * character.c (Vscript_representative_chars): New variable.
16509 (syms_of_character): Declare it as a Lisp variable.
16510
16511 * composite.c (get_composition_id) [USE_FONT_BACKEND]: If
16512 enable_font_backend is nonzero, accept the composition method
16513 COMPOSITION_WITH_GLYPH_STRING.
16514
16515 * composite.h (enum composition_method) [USE_FONT_BACKEND]: New
16516 enumeration COMPOSITION_WITH_GLYPH_STRING.
16517
16518 * dispextern.h (struct glyph_string) [USE_FONT_BACKEND]: New
16519 members clip_x, clip_y, clip_width, and clip_height.
16520 (struct face) [USE_FONT_BACKEND]: New members font_info and extra.
16521
16522 * emacs.c (main) [USE_FONT_BACKEND]: Handle arg
16523 --enable-font-backend. Call syms_of_font.
16524
16525 * fns.c (assoc_no_quit): New function.
16526
16527 * fontset.h (FONT_INFO_FROM_FACE): New macro.
16528 (face_for_font, new_fontset_from_font)
16529 (fontset_ascii_font) [USE_FONT_BACKEND]: Extern them.
16530
16531 * fontset.c [USE_FONT_BACKEND]: Include "font.h".
16532 (fontset_font, fontset_ascii, face_for_char)
16533 (make_fontset_for_ascii_face, Ffont_info)
16534 (Finternal_char_font) [USE_FONT_BACKEND]: If enable_font_backend
16535 is nonzero, use font-backend mechanism.
16536 (find_font_encoding): Make it non-static.
16537 (new_fontset_from_font, fontset_ascii_font) [USE_FONT_BACKEND]:
16538 New functions.
16539
16540 * frame.h (struct frame): New members resx and resy.
16541 (struct frame) [USE_FONT_BACKEND]: New member font_driver_list.
16542 (x_new_fontset2) [USE_FONT_BACKEND]: Extern it.
16543
16544 * frame.c [USE_FONT_BACKEND]: Include "font.h".
16545 (make_frame, x_set_font) [USE_FONT_BACKEND]: Use font-backend mechanism.
16546
16547 * lisp.h (assoc_no_quit): Extern it.
16548
16549 * xdisp.c: If USE_FONT_BACKEND is defined, include "font.h".
16550 Through out the file, use FONT_INFO_FROM_FACE instead of
16551 FONT_INFO_FROM_ID, use get_per_char_metric instead of
16552 rif->per_char_metric.
16553 (handle_composition_prop) [USE_FONT_BACKEND]: If the composition
16554 method is COMPOSITION_WITH_GLYPH_STRING, just set it->c to ' '.
16555 (get_glyph_face_and_encoding, fill_composite_glyph_string)
16556 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
16557 (x_produce_glyphs) [USE_FONT_BACKEND]: If enable_font_backend is
16558 nonzero, use font-backend mechanism.
16559 (get_per_char_metric): New function.
16560
16561 * xfaces.c [USE_FONT_BACKEND]: Include "font.h".
16562 (set_lface_from_font_name)
16563 (set_font_frame_param, free_realized_face)
16564 (prepare_face_for_display, clear_face_gcs)
16565 (Finternal_set_font_selection_order, realize_x_face)
16566 [USE_FONT_BACKEND]: If enable_font_backend is nonzero, use
16567 font-backend mechanism.
16568 (clear_face_cache) [USE_FONT_BACKEND]: Don't call clear_font_table.
16569 (load_face_font) [USE_FONT_BACKEND]: Abort.
16570 (face_symbolic_value, face_symbolic_weight, face_symbolic_slant)
16571 (face_symbolic_swidth, face_for_font) [USE_FONT_BACKEND]: New functions.
16572
16573 * xfns.c [USE_FONT_BACKEND]: Include "font.h".
16574 (x_default_font_parameter) [USE_FONT_BACKEND]: New function.
16575 (Fx_create_frame) [USE_FONT_BACKEND]: If enable_font_backend is
16576 nonzero, register all available font drivers. Call
16577 x_default_font_parameter for deciding a font.
16578 (x_create_tip_frame) [USE_FONT_BACKEND]: Likewise.
16579
16580 * xterm.c [USE_FONT_BACKEND]: Include "font.h".
16581 (x_set_mouse_face_gc, x_set_glyph_string_clipping)
16582 (x_set_glyph_string_clipping_exactly)
16583 (x_compute_glyph_string_overhangs)
16584 (x_draw_glyph_string_foreground)
16585 (x_draw_composite_glyph_string_foreground, x_draw_glyph_string)
16586 (x_free_frame_resources) [USE_FONT_BACKEND]: If
16587 enable_font_backend is nonzero, use font-backend mechanism.
16588 (x_new_fontset2) [USE_FONT_BACKEND]: New function.
16589
165902008-02-01 Kenichi Handa <handa@m17n.org>
16591
16592 * coding.c (coding_inherit_eol_type): If PARENT is nil, inherit from
16593 system_eol_type.
16594 (syms_of_coding): Initialize system_eol_type.
16595
16596 * process.c (Fset_process_coding_system): Inherit system's eol
16597 format if necessary.
16598
165992008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16600
16601 * macgui.h (USE_ATSUI): Don't enable on emacs-unicode-2 branch.
16602
166032008-02-01 Kenichi Handa <handa@m17n.org>
16604
16605 * coding.c (decode_eol): Pay attention to buffer relocation in
16606 del_range_2.
16607 (decode_coding): Call decode_eol before restoring undo_list.
16608
166092008-02-01 Kenichi Handa <handa@m17n.org>
16610
16611 * charset.c (Fdefine_charset_internal): Fix setting of
16612 emacs_mule_bytes.
16613
166142008-02-01 Kenichi Handa <handa@m17n.org>
16615
16616 * keyboard.c (read_char): Check if C is a character or not before
16617 looking up Vkeyboard_translate_table.
16618
166192008-02-01 Kenichi Handa <handa@m17n.org>
16620
16621 * coding.c (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Fix
16622 condition to terminate the loop.
16623
166242008-02-01 Kenichi Handa <handa@m17n.org>
16625
16626 * coding.c (produce_composition): Compare charbuf[i] instead of
16627 args[i] against 0.
16628 (Fterminal_coding_system): Use EQ to compare Lisp objects.
16629
166302008-02-01 Kenichi Handa <handa@m17n.org>
16631
16632 * coding.c (DECODE_COMPOSITION_START): If the source is short, set
16633 coding->result to CODING_RESULT_INSUFFICIENT_SRC.
16634 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK after the call of
16635 detect_coding.
16636 (emacs_mule_char): Handle old style (Emacs 20) component character
16637 of a composition.
16638 (DECODE_EMACS_MULE_COMPOSITION_RULE_20)
16639 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Fix parsing a
16640 composition rule.
16641 (decode_coding_emacs_mule): Handle invalid bytes correctly.
16642
166432008-02-01 Kenichi Handa <handa@m17n.org>
16644
16645 * coding.c (encode_coding_ccl): Allocate destination dynamically
16646 when necessary.
16647
166482008-02-01 Kenichi Handa <handa@m17n.org>
16649
16650 * ccl.c (Fccl_execute_on_string): Fix the condition of terminating
16651 the loop. When quitted, show a proper error message.
16652
166532008-02-01 Kenichi Handa <handa@m17n.org>
16654
16655 * xterm.c (x_set_glyph_string_clipping_exactly): Set
16656 src->clip_head and src->clip_tail temporarily instead of src->hl.
16657
16658 * ccl.c (CCL_WRITE_STRING): Handle a flag bit for multibyte
16659 character sequence.
16660 (Fccl_execute_on_string): Use ASET, not XSET.
16661
166622008-02-01 Kenichi Handa <handa@m17n.org>
16663
16664 * search.c (search_buffer): Fix handling of "\\" in a trivial regexp.
16665
166662008-02-01 Kenichi Handa <handa@m17n.org>
16667
16668 * coding.c (decode_coding): Fix the condition of terminating the
16669 decoding loop.
16670
166712008-02-01 Kenichi Handa <handa@m17n.org>
16672
16673 * data.c (Faset): On setting a character bigger than 255 in a
16674 unibyte string, signal an error instead of make the string multibyte.
16675
166762008-02-01 Kenichi Handa <handa@m17n.org>
16677
16678 * charset.c (map_charset_chars): Fix for ascii-compatible charset
16679 made by a mapping table.
16680
166812008-02-01 Kenichi Handa <handa@m17n.org>
16682
16683 * xdisp.c (fill_composite_glyph_string): Check s->face is NULL or
16684 not.
16685 (BUILD_COMPOSITE_GLYPH_STRING): If C is TAB, set s->face to NULL.
16686 (x_produce_glyphs): If CH is TAB, set cmp->offsets properly.
16687
16688 * xterm.c (x_draw_composite_glyph_string_foreground): Check
16689 s->face is NULL or not.
16690
166912008-02-01 Kenichi Handa <handa@m17n.org>
16692
16693 * xterm.c (x_set_glyph_string_clipping_exactly): New function.
16694 (x_draw_glyph_string): Fix drawing of right_overhang and
16695 left_overhang around/on cursor.
16696
16697 * xdisp.c (draw_glyphs): Fix inclusion of right_overwriting glyphs.
16698
166992008-02-01 Kenichi Handa <handa@m17n.org>
16700
16701 * xdisp.c (x_produce_glyphs): Handle composition with TAB.
16702
167032008-02-01 Kenichi Handa <handa@m17n.org>
16704
16705 * coding.c (Fdefine_coding_system_internal)
16706 (Fdefine_coding_system_alias): Avoid a duplicated element in
16707 Vcoding_system_alist.
16708
167092008-02-01 Kenichi Handa <handa@m17n.org>
16710
16711 * xterm.c (handle_one_xevent): Handle keysyms 0x1000000..0x10000FF.
16712
16713 * coding.c (Qcoding_system_define_form): New variable.
16714 (syms_of_coding): Intern and staticpro it.
16715 (Fcoding_system_p): Check Qcoding_system_define_form.
16716 (Fcheck_coding_system): Try to autoload the definition of CODING-SYSTEM.
16717
16718 * coding.h (CODING_SYSTEM_P): If ID is not available, call
16719 Fcoding_system_p.
16720 (CHECK_CODING_SYSTEM): If ID is not available, call
16721 Fcheck_coding_system.
16722 (CHECK_CODING_SYSTEM_GET_SPEC, CHECK_CODING_SYSTEM_GET_ID):
16723 Try also Fcheck_coding_system.
16724
167252008-02-01 Kenichi Handa <handa@m17n.org>
16726
16727 * coding.c (code_conversion_restore): GCPRO arg.
16728
167292008-02-01 Kenichi Handa <handa@m17n.org>
16730
16731 * character.c (lisp_string_width): Check multibyteness of STRING.
16732
167332008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16734
16735 * macterm.c (mac_encode_char): Call ccl_driver with the last arg
16736 Qnil. Use JIS_TO_SJIS instead of ENCODE_SJIS.
16737 (decode_mac_font_name): Use decode_coding_c_string instead of
16738 decode_coding.
16739 (x_load_font): Initialize fontp->fontset to -1. Set
16740 fontp->encoding_type.
16741
167422008-02-01 Kenichi Handa <handa@m17n.org>
16743
16744 * search.c (search_buffer): Give up BM search on case-fold-search
16745 if one of a target character has a case-equivalence of different
16746 byte length even if that target charcter is an ASCII.
16747 (simple_search): Fix calculation of byte length of matched text.
16748 (boyer_moore): Fix handling of case-equivalent multibyte characters.
16749
167502008-02-01 Kenichi Handa <handa@m17n.org>
16751
16752 * coding.c (decode_coding): Fix handling of invalid bytes.
16753
167542008-02-01 Kenichi Handa <handa@m17n.org>
16755
16756 * xterm.c (handle_one_xevent): Handle keysyms directly mapped to
16757 Unicode characters.
16758
167592008-02-01 Kenichi Handa <handa@m17n.org>
16760
16761 * coding.c (encode_coding_object): If a pre-write-conversion
16762 function makes a new buffer, kill it.
16763
167642008-02-01 Kenichi Handa <handa@m17n.org>
16765
16766 * coding.c (QCascii_compatible_p): New variable.
16767 (syms_of_coding): Initialize it.
16768 (ONE_MORE_BYTE, ONE_MORE_BYTE_NO_CHECK): Decrement `src' before
16769 calling string_char.
16770 (record_conversion_result): Add `default:' case.
16771 (coding_charset_list): Delete unused variable `coding_type'.
16772 (Fdefine_coding_system_internal): Add `ascii-compatible-p'
16773 property in the plist of the coding system.
16774 (Fcoding_system_put): Check QCascii_compatible_p.
16775
167762008-02-01 Miles Bader <miles@gnu.org>
16777
16778 * xfaces.c (Finternal_lisp_face_equal_p): Restore previously
16779 removed calculation of frame `f', as it's now used.
16780
167812008-02-01 Kenichi Handa <handa@m17n.org>
16782
16783 * Makefile.in (RUN_TEMACS): Include "-nl" if HAVE_SHM is defined.
16784 (emacs${EXEEXT}): Run $(RUN_TEMACS) unconditionally.
16785 (UNIDATA): New variable.
16786 (${lispsource}international/charprop.el): Depends on ${UNIDATA}.
16787 (bootstrap-emacs${EXEEXT}): Depends on charprop.el. Run
16788 $(RUN_TEMACS) unconditionally.
16789
167902008-02-01 Kenichi Handa <handa@m17n.org>
16791
16792 * Makefile.in (temacs${EXEEXT}): Build charprop.el if necessary.
16793 (admindir): New variable.
16794 ($(lispsource)international/charprop.el): New target.
16795
167962008-02-01 Miles Bader <miles@gnu.org>
16797
16798 * character.c (chars-in-region): Remove obsolete function.
16799 (syms_of_character): Remove its initialization.
16800
168012008-02-01 Benjamin Riefenstahl <b.riefenstahl@turtle-trading.net>
16802
16803 * w32select.c (validate_coding_system)
16804 (setup_windows_coding_system): New functions.
16805 (convert_to_handle_as_coded, Fw32_get_clipboard_data): Use
16806 setup_windows_coding_system.
16807 (setup_config, Fw32_get_clipboard_data): Use
16808 validate_coding_system.
16809 (Fx_selection_exists): Move call to setup_config to a place
16810 where signals are allowed.
16811
16812 * lisp.h (Fcoding_system_base, Fcoding_system_eol_type)
16813 (Fcheck_coding_system): Add declarations.
16814
168152008-02-01 Kenichi Handa <handa@m17n.org>
16816
16817 * charset.c (load_charset_map_from_vector): Fix for the first iteration.
16818
168192008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16820
16821 * macfns.c (Fx_create_frame, x_create_tip_frame): Pass Lisp
16822 string as the second argument for x_new_fontset.
16823
168242008-02-01 Kenichi Handa <handa@m17n.org>
16825
16826 * coding.c (decode_coding_object): Use safe_call1 instead of call1.
16827 (encode_coding_object): Use safe_call instead of call2.
16828
168292008-02-01 Kenichi Handa <handa@m17n.org>
16830
16831 * fontset.c (Fset_fontset_font): Check family element of a given vector.
16832
16833 * Makefile.in (lisp): Include charprop.el.
16834
168352008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16836
16837 * macfns.c (Fx_create_frame, x_create_tip_frame): Fix crash.
16838 Not sure if it's unnecessary.
16839
168402008-02-01 Steven Tamm <steventamm@mac.com>
16841
16842 * macfns.c (Fx_create_frame, x_create_tip_frame): ifdef'd out
16843 some possibly unnecessary fontset checking code that crashed
16844 when creating a new frame.
16845
168462008-02-01 Kenichi Handa <handa@m17n.org>
16847
16848 * xfaces.c (merge_faces): Fix argument to lookup_derived_face and
16849 lookup_face.
16850
16851 * xdisp.c (Fformat_mode_line): Fix argument to lookup_named_face.
16852
16853 * fringe.c (draw_fringe_bitmap_1): Fix argument to lookup_named_face.
16854
168552008-02-01 Kenichi Handa <handa@m17n.org>
16856
16857 * coding.c: Cancel the change done in HEAD on 2008-02-01.
16858 (coding_charset_list): New function.
16859
16860 * coding.h (coding_charset_list): Extern it.
16861
168622008-02-01 Kenichi Handa <handa@m17n.org>
16863
16864 * fontset.c (Fset_fontset_font): Call find_font_encoding with
16865 concatenation of family and registry.
16866
168672008-02-01 Kenichi Handa <handa@m17n.org>
16868
16869 * character.h (BYTE8_STRING): Fix typo.
16870
16871 * editfns.c (Ftranslate_region_internal): Don't convert unibyte
16872 string to multibyte (sync to HEAD).
16873
16874 * casefiddle.c (casify_region): Handle changes in byte-length
16875 using replace_range_2 (sync to HEAD).
16876
168772008-02-01 Andreas Schwab <schwab@suse.de>
16878
16879 * chartab.c (map_char_table): GCPRO table and arg.
16880
168812008-02-01 Kenichi Handa <handa@m17n.org>
16882
16883 * syntax.c (skip_syntaxes): Return lispy 0 (not nil) if point is
16884 already at limit.
16885
168862008-02-01 Kenichi Handa <handa@m17n.org>
16887
16888 * fontset.c (fs_load_font): Use fast_string_match_ignore_case
16889 instead of fast_c_string_match_ignore_case.
16890 (find_font_encoding): Change argument to Lisp_Object. Use
16891 fast_string_match_ignore_case instead of
16892 fast_c_string_match_ignore_case. Change caller.
16893
168942008-02-01 Kenichi Handa <handa@m17n.org>
16895
16896 * xdisp.c (get_next_display_element): In unibyte case, decide to
16897 display in octal form by checking a character by
16898 UNIBYTE_CHAR_HAS_MULTIBYTE_P.
16899
16900 * charset.c (Fset_unibyte_charset): Setup unibyte_has_multibyte_table.
16901
16902 * character.c (unibyte_has_multibyte_table): New variable.
16903
16904 * character.h (unibyte_has_multibyte_table): Extern it.
16905 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): New macro.
16906
169072008-02-01 Kenichi Handa <handa@m17n.org>
16908
16909 * coding.c (encode_coding_iso_2022): Fix handling of charset
16910 annotation.
16911
169122008-02-01 Kenichi Handa <handa@m17n.org>
16913
16914 * coding.c (setup_coding_system): If coding_system is nil, use
16915 Qundecided.
16916 (Fterminal_coding_system): Return nil if terminal coding system is
16917 `undecided'.
16918 (syms_of_coding): Define coding-system `undecided' here. Setup
16919 terminal_coding as `undecided'.
16920
169212008-02-01 Kenichi Handa <handa@m17n.org>
16922
16923 * xdisp.c (message_dolog, set_message_1): Call
16924 unibyte_char_to_multibyte with arg type int.
16925
16926 * lread.c (read1): Fix reading of a char-table.
16927
16928 * print.c (print_object): Include sub char-table in circularities
16929 detection.
16930
169312008-02-01 Kenichi Handa <handa@m17n.org>
16932
16933 * keymap.c (where_is_internal_2): Fix for the case that KEY is a cons.
16934 Append the found sequences in car of ARGS instead of prepending.
16935
169362008-02-01 Kenichi Handa <handa@m17n.org>
16937
16938 * fileio.c (report_file_error): Make a unibyte string from
16939 strerror (errorno).
16940 (Fsubstitute_in_file_name): Fix the arg to
16941 unibyte_char_to_multibyte. It is evaluated twice.
16942
169432008-02-01 Kenichi Handa <handa@m17n.org>
16944
16945 * charset.h (CHAR_CHARSET): Shortcut for ASCII case.
16946
169472008-02-01 Kenichi Handa <handa@m17n.org>
16948
16949 * coding.c (detect_coding_utf_16): Don't set detect_info->found if
16950 BOM is not found.
16951 (detect_coding, detect_coding_system): Optimization for ISO-2022
16952 when no 8-bit data is found.
16953
169542008-02-01 Jason Rumney <jasonr@gnu.org>
16955
16956 * w32fns.c (x_to_w32_font): Update to use new coding struct.
16957
169582008-02-01 Kenichi Handa <handa@m17n.org>
16959
16960 * charset.c (Fdeclare_equiv_charset, Fiso_charset): Fix handing of
16961 CHARS.
16962
169632008-02-01 Steven Tamm <steventamm@mac.com>
16964
16965 * macterm.c (mac_encode_char): Add charset argument and update
16966 to use encoding_type.
16967 (x_new_font, x_new_fontset): Merge in changes from xterm.c;
16968 switch to pure fontset.
16969 (decode_mac_font_name): Temporarily remove decoding.
16970 (x_font_name_to_mac_font_name): Temporarily remove encoding.
16971 (x_load_font): Temporarily remove encoding.
16972
169732008-02-01 Kenichi Handa <handa@m17n.org>
16974
16975 * xfaces.c (Fface_font): If frame is not on a window system,
16976 ignore CHARACTER arg. If HAVE_WINDOW_SYSTEM is not defined, don't
16977 refer to face->font.
16978 (split_font_name_into_vector, build_font_name_from_vector)
16979 (lookup_non_ascii_face, realize_non_ascii_face): Define them only
16980 when HAVE_WINDOW_SYSTEM is defined.
16981
169822008-02-01 Kenichi Handa <handa@m17n.org>
16983
16984 * xdisp.c (BUILD_GLYPH_STRINGS): Check if s is NULL.
16985 (x_produce_glyphs): Fix setting of members of cmp in case
16986 cmp->glyph_len is zero.
16987
16988 * fontset.c (Fset_fontset_font): Fix docstring.
16989 (Ffontset_info): Make it backward compatible. New arg ALL.
16990
169912008-02-01 Kim F. Storm <storm@cua.dk>
16992
16993 * process.c (read_process_output): Grow decoding_buf when needed;
16994 this could cause a crash in allocate_string and compact_small_strings.
16995
169962008-02-01 Kenichi Handa <handa@m17n.org>
16997
16998 * fileio.c (WRITE_BUF_SIZE): Delete this macro.
16999
170002008-02-01 Kenichi Handa <handa@m17n.org>
17001
17002 * coding.c (setup_coding_system): Set coding->common_flags
17003 correctly for raw-text.
17004 (consume_chars): On encoding unibyte text by raw-text, don't check
17005 multibyte form.
17006 (encode_coding): On encoding by raw-text, never use translation tables.
17007
17008 * fileio.c (e_write): Short cut for the case of no encoding.
17009
170102008-02-01 Kenichi Handa <handa@m17n.org>
17011
17012 * coding.c (detect_coding, detect_coding_system): Delete unused
17013 variables.
17014
170152008-02-01 Kenichi Handa <handa@m17n.org>
17016
17017 * coding.c (encode_coding_utf_8): Fix handling of raw-byte char.
17018 (consume_chars): Fix handling of 8-bit bytes in unibyte source.
17019
170202008-02-01 Kenichi Handa <handa@m17n.org>
17021
17022 * coding.c (Ffind_coding_systems_region_internal): Include
17023 raw-text and no-conversion in the result.
17024
170252008-02-01 Kenichi Handa <handa@m17n.org>
17026
17027 * fontset.c (find_font_encoding): Return `ascii' for unknown encoding.
17028 (load_font_get_repertory): Delete unnecessary check of ENCODING of
17029 FONT_DEF.
17030 (font_def_arg, add_arg, from_arg, to_arg): New args.
17031 (set_fontset_font): Change argument.
17032 (Fset_fontset_font): Fix for the case that TARGET is a script
17033 name and charset name.
17034 (new_fontset_from_font_name): Fix argument to Fnew_fontset.
17035
170362008-02-01 Kenichi Handa <handa@m17n.org>
17037
17038 * fontset.c (fontset_font): Rename from fontset_face. Change return
17039 value.
17040 (face_suitable_for_char_p, face_for_char): Adjust for the change
17041 of fontset_font.
17042 (make_fontset_for_ascii_face): Fix setting of the fontset element
17043 for ASCII.
17044 (Finternal_char_font): Use fontset_font instead of FACE_FOR_CHAR
17045 to get a font name.
17046 (Ffontset_info): Adjust for the change of fontset_font.
17047
17048 * coding.c (emacs_mule_char): Check invalid code more rigidly.
17049
17050 * character.h (LEADING_CODE_LATIN_1_MIN)
17051 (LEADING_CODE_LATIN_1_MAX): Delete these macros.
17052
170532008-02-01 Kenichi Handa <handa@m17n.org>
17054
17055 * editfns.c (check_translation): New function.
17056 (Ftranslate_region_internal): Handle M:N mapping.
17057
170582008-02-01 Kenichi Handa <handa@m17n.org>
17059
17060 * xfaces.c (xlfd_point_size): Set font->numeric[XLFD_PIXEL_SIZE].
17061
170622008-02-01 Kenichi Handa <handa@m17n.org>
17063
17064 * coding.c (DECODE_DESIGNATION): Set chars_96 to -1 instead of
17065 goto invalid_code.
17066 (decode_coding_iso_2022): Fix handling of invalid designation.
17067
17068 * fileio.c (Finsert_file_contents): Be sure to call unbind_to
17069 after calling code_conversion_save.
17070
170712008-02-01 Kenichi Handa <handa@m17n.org>
17072
17073 * xdisp.c (handle_auto_composed_prop): Fix Lisp_Object/int mixup.
17074
17075 * print.c (print_prune_string_charset): Fix Lisp_Object/int mixup.
17076
17077 * fontset.c: Include "intervals.h".
17078 (fontset_face): Fix comparing of Lisp_Objects.
17079 (free_face_fontset, new_fontset_from_font_name): Fix
17080 Lisp_Object/int mixup.
17081
17082 * editfns.c (Ftranslate_region_internal): Fix Lisp_Object/int mixup.
17083
17084 * coding.c: Add many prototypes for static functions.
17085 (get_translation_table): Allow max_lookup to be NULL.
17086 (decode_coding, Ffind_coding_systems_region_internal)
17087 (Funencodable_char_position, Fcheck_coding_systems_region): Call
17088 get_translation_table with max_lookup NULL.
17089
170902008-02-01 Kenichi Handa <handa@m17n.org>
17091
17092 * coding.c (get_translation_table): Declare it as Lisp_Object.
17093 (LOOKUP_TRANSLATION_TABLE): New macro.
17094 (produce_chars, consume_chars): Use LOOKUP_TRANSLATION_TABLE
17095 instead of CHAR_TABLE_REF.
17096
170972008-02-01 Kenichi Handa <handa@m17n.org>
17098
17099 * coding.c (MAX_ANNOTATION_LENGTH): Adjust for the change of
17100 annotation data format.
17101 (ADD_ANNOTATION_DATA, ADD_COMPOSITION_DATA, ADD_CHARSET_DATA):
17102 Change arguments FROM and TO to single argument NCHARS. Change caller.
17103 (decode_coding_utf_8, decode_coding_utf_16, decode_coding_emacs_mule)
17104 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
17105 (decode_coding_ccl, decode_coding_charset): Pay attention to
17106 coding->charbuf_used.
17107 (get_translation): New function.
17108 (produce_chars): New arguments translation_table and last_block.
17109 Translate characters here. Return number of carryover chars.
17110 Change caller.
17111 (produce_composition): New argument pos. Change caller.
17112 Adjust for the change of annotation data format.
17113 (produce_charset, produce_annotation): Likewise.
17114 (decode_coding, encode_coding): Don't call translate_chars.
17115 (consume_chars): New arg translation_table. Change caller.
17116 (translate_chars): Delete.
17117 (syms_of_coding): Make translation-table's number of extra slots 2.
17118
171192008-02-01 Kenichi Handa <handa@m17n.org>
17120
17121 * search.c (simple_search): Fix setting this_pos_byte in backward
17122 search.
17123
17124 * coding.c (detect_coding_emacs_mule): Fix counting of encoded
17125 byte sequence.
17126 (detect_coding_ccl): Fix setting of the variable valids.
17127
171282008-02-01 Kenichi Handa <handa@m17n.org>
17129
17130 * xterm.c (x_list_fonts): Fix the detection of an auto-scaled font.
17131
17132 * coding.c (decode_coding_utf_16): Fix handling of surrogate pair.
17133
17134 * editfns.c (Ftranslate_region_internal): Rename from
17135 Ftranslate_region. Accept a char-table in TABLE.
17136 (syms_of_editfns): Defsubr Stranslate_region_internal.
17137
17138 * xfaces.c (set_lface_from_font_name): If a font is specified for
17139 a frame, generate a fontset from the font.
17140 (build_scalable_font_name): If the scalable font is requested for
17141 a specific size, don't change that size.
17142 (try_font_list): Try a scalable font also in the case that a
17143 pattern string is specified.
17144
171452008-02-01 Kenichi Handa <handa@m17n.org>
17146
17147 * xfaces.c (Fface_font): New optional arg CHARACTER.
17148
171492008-02-01 Kenichi Handa <handa@m17n.org>
17150
17151 * charset.h (CHARSET_OFFSET): New macro.
17152
171532008-02-01 Kenichi Handa <handa@m17n.org>
17154
17155 * xterm.c (x_get_font_repertory): Fix for non-Unicode-bmp charset.
17156
17157 * fontset.c (fontset_face): Handle the case that repertory is a
17158 char-table.
17159 (find_font_encoding): Return nil for unknown encoding.
17160 (Fset_fontset_font): Ignore a font of unknown encoding.
17161
171622008-02-01 Kenichi Handa <handa@m17n.org>
17163
17164 * keymap.c (describe_vector): Handle default value of a char table.
17165
17166 * fontset.c (fontset_face): Handle fallback fonts correctly.
17167 (Ffontset_info): Return infomation about fallback fonts.
17168
171692008-02-01 Kenichi Handa <handa@m17n.org>
17170
17171 * fontset.c (FONTSET_DEFAULT): New macro.
17172 (FONTSET_ADD, fontset_add): Handle the case that range is nil.
17173 (Fset_fontset_font): Change the 2nd arg name to TARGET, and handle
17174 the case that it is nil.
17175 (dump_fontset): Call FONTSET_DEFAULT, not FONTSET_FALLBACK.
17176 (syms_of_fontset): Set char-table-extra-slots property of fontset to 9.
17177
17178 * charset.h (CHAR_CHARSET_P): Fix for the case that the method is
17179 subset or superset.
17180
171812008-02-01 Kenichi Handa <handa@m17n.org>
17182
17183 * emacs.c (main): Call init_charset after syms_of_XXX.
17184
17185 * charset.c (Vcharset_map_directory): Delete.
17186 (Vcharset_map_path): New variable.
17187 (load_charset_map_from_file): Use Vcharset_map_path instead.
17188 (init_charset): Initialize Vcharset_map_path.
17189 (syms_of_charset): Delete declaration of "charset-map-directory",
17190 add declaration of "charset-map-path".
17191
171922008-02-01 Kenichi Handa <handa@m17n.org>
17193
17194 * fns.c (string_char_to_byte, string_byte_to_char): Optimize for
17195 ASCII only string.
17196
17197 * fileio.c (Finsert_file_contents): Avoid detecting a code twice.
17198
17199 * coding.c (detect_coding_iso_2022): Fix handling of SS2 and SS3.
17200 (detect_coding, detect_coding_system): Treat '\0' as normal ASCII byte.
17201
172022008-02-01 Kenichi Handa <handa@m17n.org>
17203
17204 * coding.h (SJIS_TO_JIS2, JIS_TO_SJIS2): New macros.
17205
17206 * coding.c (QCmnemonic, QCdefalut_char)
17207 (QCdecode_translation_table, QCencode_translation_table)
17208 (QCpost_read_conversion, QCpre_write_conversion): New variables.
17209 (get_translation_table): Return a list of translation tables if
17210 necessary.
17211 (decode_coding): Call get_translation_table with ENCODEP 0.
17212 (char_encodable_p): If translation_table is non-nil, always call
17213 translate_char.
17214 (Fdefine_coding_system_internal): Accept list of translation
17215 tables as :encode-translation-table and :decode-translation-table.
17216 (Fcoding_system_put): New function.
17217 (syms_of_coding): Declare new symbols. Defsubr
17218 Scoding_system_put.
17219 (decode_coding_sjis, encode_coding_sjis): Handle 4th charset,
17220 typically JISX0212.
17221
17222 * charset.c (map_charset_chars): Fix arg to map_charset_chars in
17223 when the charset is superset type.
17224
17225 * character.c (translate_char): Accept list of translation tables.
17226
172272008-02-01 Kenichi Handa <handa@m17n.org>
17228
17229 * coding.h (enum coding_attr_index): New member coding_attr_trans_tbl.
17230 (CODING_ATTR_TRANS_TBL): New macro.
17231
17232 * coding.c (get_translation_table): New function.
17233 (translate_chars): Fix the bug of skipping annotation data.
17234 (decode_coding, encode_coding): Utilize get_translation_table.
17235 (char_encodable_p, Funencodable_char_position): Translate char if
17236 necessary.
17237 (Ffind_coding_systems_region_internal)
17238 (Fcheck_coding_systems_region): Setup translation table for encode
17239 in a coding system attribute vector in advance.
17240 (Fdefine_coding_system_internal): Allow a symbol as translation
17241 table. For shift-jis type coding system, allow 4th charset.
17242
172432008-02-01 Kenichi Handa <handa@m17n.org>
17244
17245 * coding.c (decode_coding_sjis): Check the first byte rigidly.
17246
17247 * xdisp.c (get_next_display_element): Pass -1 as POS to
17248 FACE_FOR_CHAR if displaying a C-string.
17249
172502008-02-01 Kenichi Handa <handa@m17n.org>
17251
17252 * composite.c (get_composition_id): Handle xoff and yoff in a
17253 composition rule.
17254
17255 * composite.h (COMPOSITION_DECODE_RULE): New arg xoff and yoff.
17256 (struct composition): New member lbearing and rbearing.
17257
17258 * xdisp.c (move_it_to): Optimize for the case (op & MOVE_TO_Y).
17259 (x_get_glyph_overhangs): Handle a composition glyph.
17260 (x_produce_glyphs): Setup lbearing and rbreaing for a composition glyph.
17261
17262 * xterm.c (x_compute_glyph_string_overhangs): Handle also a
17263 composition glyph.
17264
172652008-02-01 Kenichi Handa <handa@m17n.org>
17266
17267 * print.c: Include charset.h.
17268 (Vprint_charset_text_property): New variable.
17269 (Qdefault): Extern it.
17270 (PRINT_STRING_NON_CHARSET_FOUND)
17271 (PRINT_STRING_UNSAFE_CHARSET_FOUND): New macros.
17272 (print_check_string_result): New variable.
17273 (print_check_string_charset_prop): New function.
17274 (print_prune_charset_plist): New variable.
17275 (print_prune_string_charset): New function.
17276 (print_object): Call print_prune_string_charset if
17277 Vprint_charset_text_property is not t.
17278 (print_interval): Print nothing if interval->plist is nil.
17279 (syms_of_print): Declare Vprint_charset_text_property as a lisp
17280 variable. Init and staticpro print_prune_charset_plist.
17281
172822008-02-01 Kenichi Handa <handa@m17n.org>
17283
17284 * fontset.c (new_fontset_from_font_name): Use the specified font
17285 for all characters in the new fontset.
17286
17287 * macterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
17288 OBJECT args.
17289
17290 * xdisp.c (x_produce_glyphs): Call FACE_FOR_CHAR with POS and
17291 OBJECT args for composition too.
17292
17293 * w32term.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
17294 OBJECT args.
17295
172962008-02-01 Kenichi Handa <handa@m17n.org>
17297
17298 * dispextern.h (FACE_FOR_CHAR): New args POS and OBJECT.
17299
17300 * fontset.c (reorder_font_vector): Adjust for the change of
17301 FONT_DEF format.
17302 (fontset_face): New arg id. Change caller.
17303 (face_for_char): New args pos and object.
17304 (make_fontset_for_ascii_face): Adjust for the change of FONT_DEF format.
17305 (fs_query_fontset): Check NAME by Fassoc too.
17306 (Fset_fontset_font): Allow non-XLFD font name.
17307 (Ffontset_info): Adjust for the change of FONT_DEF format.
17308
17309 * fontset.h (face_for_char): Adjust prototype.
17310
17311 * xdisp.c (face_before_or_after_it_pos, get_next_display_element)
17312 (append_space, extend_face_to_end_of_line)
17313 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
17314 (x_produce_glyphs): Call FACE_FOR_CHAR with POS and OBJECT args.
17315
17316 * xfaces.c (compute_char_face): Call FACE_FOR_CHAR with
17317 POS and OBJECT args.
17318
17319 * xterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with
17320 POS and OBJECT args.
17321
173222008-02-01 Jason Rumney <jasonr@gnu.org>
17323
17324 * w32select.c (Fw32_set_clipboard_data): Avoid potential realloc
17325 of GlobalAlloc'ed memory.
17326
173272008-02-01 Kenichi Handa <handa@m17n.org>
17328
17329 * ccl.c (Fccl_execute_on_string): Fix the condition of loop.
17330
17331 * charset.h (charset_table_used): Delete extern.
17332
17333 * charset.c (charset_table_used): Make it static.
17334 (map_charset_chars): Fix args to c_function with.
17335
17336 * chartab.c (map_sub_char_table_for_charset): Fix args to
17337 c_function with.
17338
17339 * coding.h (enum coding_result_code): Delete
17340 CODING_RESULT_INSUFFICIENT_CMP, add CODING_RESULT_INVALID_SRC.
17341
17342 * coding.c (Qinsufficient_source, Qinconsistent_eol)
17343 (Qinvalid_source, Qinterrupted, Qinsufficient_memory): New variables.
17344 (Vlast_code_conversion_error): New variables.
17345 (syms_of_coding): DEFSYM or DEFVAR_LISP them.
17346 (ONE_MORE_BYTE): Record error if any instead of signaling an
17347 error. If non-ASCII multibyte char is found, return the negative
17348 value of the code. All callers changed to check it.
17349 (ONE_MORE_BYTE_NO_CHECK): Likewise.
17350 (record_conversion_result): New function. Change all codes setting
17351 coding->result to call this function.
17352 (detect_coding_utf_8, decode_coding_utf_8)
17353 (detect_coding_emacs_mule, detect_coding_sji, detect_coding_big5):
17354 Don't use the local variable incomplete.
17355 (emacs_mule_char): Change the second arg to `const'.
17356 (decode_coding): Fix of flushing out unprocessed data.
17357 (make_conversion_work_buffer): Fix making of a work buffer.
17358 (decode_coding_object): Return coding->dst_object.
17359
17360 * fontset.c (set_fontset_font): Fix args.
17361
17362 * lisp.h (CHARACTERBITS): Define as 22.
17363
17364 * process.c (send_process): Be sure to set coding->src_multibyte.
17365
17366 * xdisp.c (handle_auto_composed_prop): Fix setting of limit.
17367
173682008-02-01 Kenichi Handa <handa@m17n.org>
17369
17370 * xdisp.c (handle_auto_composed_prop): Give limit to
17371 Fnext_single_char_property_change.
17372
173732008-02-01 Kenichi Handa <handa@m17n.org>
17374
17375 * composite.c (syms_of_composite): Don't make the composition hash
17376 table weak.
17377
17378 * fontset.c (Fset_fontset_font): Fix docstring.
17379
17380 * lisp.h (detect_coding_system): Adjust prototype.
17381
17382 * fileio.c (kill_workbuf_unwind): Delete this function.
17383 (Finsert_file_contents): Adjust the call of detect_coding_system.
17384 Get conversion_buffer by code_conversion_save. Use the macro
17385 CODING_MAY_REQUIRE_DECODING. After decoding, update
17386 coding_system.
17387
17388 * coding.h (make_conversion_work_buffer): Delete extern.
17389 (code_conversion_save): Extern it.
17390
17391 * coding.c (enum iso_code_class_type): Delete ISO_carriage_return.
17392 (CODING_GET_INFO): Delete argument eol_type. Change callers.
17393 (decode_coding_utf_8): Don't do eol converion.
17394 (detect_coding_utf_16): Check coding->src_chars, not
17395 coding->src_bytes. Add heuristics for those that have no signature.
17396 (decode_coding_emacs_mule, decode_coding_iso_2022)
17397 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
17398 Don't do eol converion.
17399 (adjust_coding_eol_type): Return a new coding system.
17400 (detect_coding): Don't detect eol. Fix for utf-16 detection.
17401 (decode_eol): In case of CRLF->LF conversion, use del_range_2 on
17402 each change.
17403 (decode_coding): Pay attention to undo_list. Do eol conversion for
17404 all types of coding-systems (if necessary).
17405 (Vcode_conversion_work_buf_list): Delete it.
17406 (Vcode_conversion_reused_workbuf): Rename from
17407 Vcode_conversion_reused_work_buf.
17408 (Vcode_conversion_workbuf_name): New variable.
17409 (reused_workbuf_in_use): New variable.
17410 (make_conversion_work_buffer): Delete the arg DEPTH.
17411 (code_conversion_restore): Change argument to cons.
17412 (code_conversion_save): Delete the argument BUFFER. Change callers.
17413 (detect_coding_system): New argument src_chars. Change callers.
17414 Fix for utf-16 detection.
17415 (init_coding_once): Don't use ISO_carriage_return.
17416 (syms_of_coding): Initialize Vcode_conversion_workbuf_name and
17417 reused_workbuf_in_use.
17418
174192008-02-01 Kenichi Handa <handa@m17n.org>
17420
17421 * keymap.c (store_in_keymap): Pay attention to the case that idx
17422 is a cons specifying a character range.
17423
174242008-02-01 Kenichi Handa <handa@m17n.org>
17425
17426 * xdisp.c (handle_auto_composed_prop): Fix the case of returning
17427 HANDLED_RECOMPUTE_PROPS.
17428
17429 * coding.c (Fdefine_coding_system_internal): Fix checking of
17430 ascii compatibility.
17431
174322008-02-01 Kenichi Handa <handa@m17n.org>
17433
17434 * charset.c (find_charsets_in_text): Delete unused locale variable.
17435 (Fset_charset_priority): Update Vemacs_mule_charset_list too.
17436
17437 * coding.c (encode_coding_emacs_mule): Emit bytes with MSB.
17438 Resync charset_list to Vemacs_mule_charset_list.
17439
17440 * keymap.c (store_in_keymap): Pay attention to the case that idx
17441 is a cons specifying a character range.
17442
174432008-02-01 Kenichi Handa <handa@m17n.org>
17444
17445 * composite.c (update_compositions): Bind inhibit-read-only, etc
17446 to t before calling remove-list-of-text-properties.
17447
17448 * print.c (print_object): Always print ASCII chars as is.
17449
174502008-02-01 Kenichi Handa <handa@m17n.org>
17451
17452 * keymap.c (Fdefine_key): Fix handling of Lucid style event type list.
17453
17454 * fns.c (Fmapconcat, Fmapcar, Fmapc): Signal an error if SEQUENCE
17455 is a char table.
17456
174572008-02-01 Kenichi Handa <handa@m17n.org>
17458
17459 * syntax.c (skip_chars): Be sure to alloca char_ranges when necessary.
17460
174612008-02-01 Kenichi Handa <handa@m17n.org>
17462
17463 * xfaces.c (set_lface_from_font_name): Fix for the case that
17464 FONTNAME is not fontset name.
17465
174662008-02-01 Kenichi Handa <handa@m17n.org>
17467
17468 * fns.c (base64_encode_1): Fix previous change.
17469
174702008-02-01 Kenichi Handa <handa@m17n.org>
17471
17472 * fontset.c (set_fontset_font): New function.
17473 (Fset_fontset_font): If a font is specified for a charset, use
17474 map_charset_chars to store the font spec in a fontset.
17475
174762008-02-01 Kenichi Handa <handa@m17n.org>
17477
17478 * fontset.c (fontset_face): Create a fallback fontset on demand.
17479 (make_fontset): Don't create a fallback fontset here.
17480 (free_face_fontset): Free a fallback fontset (if any) too.
17481 (n_auto_fontsets): Delete this variable.
17482 (auto_fontset_alist): New variable.
17483 (new_fontset_from_font_name): Check auto_fontset_alist.
17484 (dump_fontset) [FONTSET_DEBUG]: Fully re-written.
17485 (Ffontset_list_all) [FONTSET_DEBUG]: New function.
17486 (syms_of_fontset): Initialize and staticpro auto_fontset_alist.
17487 Defsubr Sfontset_list_all.
17488
174892008-02-01 Kenichi Handa <handa@m17n.org>
17490
17491 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
17492
174932008-02-01 Kenichi Handa <handa@m17n.org>
17494
17495 * fontset.c (Fnew_fontset): Check NAME more rigidly.
17496
174972008-02-01 Kenichi Handa <handa@m17n.org>
17498
17499 * editfns.c (Fgoto_char): Fix docstring.
17500
175012008-02-01 Kenichi Handa <handa@m17n.org>
17502
17503 * insdel.c (insert_from_gap): Adjust intervals correctly.
17504
175052008-02-01 Jason Rumney <jasonr@gnu.org>
17506
17507 * w32term.c (GLYPHSET, WCRANGE): Define if system headers don't.
17508 (pfnGetFontUnicodeRanges): New dynamically loaded function.
17509 (w32_initialize): Try to load it.
17510 (x_get_font_repertory): Use it if available.
17511 (w32_encode_char): Add shortcut for unicode output.
17512
17513 * w32fns.c (w32_load_system_font): Default charset to -1.
17514 (x_to_w32_charset): Match all fonts for unicode.
17515 (w32_to_x_charset): New parameter matching. Don't return partial
17516 or wildcard charsets.
17517 (w32_to_all_x_charsets): Don't return partial or wildcard charsets.
17518 (w32_codepage_for_font): Return CP_UNICODE for unicode.
17519 (w32_to_x_font): Match charset to real charset.
17520 (enum_font_cb2): Always list unicode versions.
17521
17522 * makefile.w32-in (temacs): Increase EMHEAP.
17523
175242008-02-01 Jason Rumney <jasonr@gnu.org>
17525
17526 * w32term.c (w32_encode_char): New charset parameter.
17527 font_info.encoding becomes encoding_type.
17528 (x_get_font_repertory): New function. Warning: stub only!
17529 (x_new_font): Return quickly if font already set.
17530 (x_new_fontset): fontsetname parameter is Lisp_Object.
17531 Use new fs_query_fontset. Try new_fontset_from_font_name.
17532 Use fontset_name for return value.
17533
17534 * w32term.h: Declare x_get_font_repertory.
17535
17536 * w32select.c (Fw32_set_clipboard_data): Use string_x_string_p in
17537 place of find_charset_in_text. Use encode_coding_object in place
17538 of encode_coding.
17539 (Fw32_get_clipboard_data): Use decode_coding_c_string in place of
17540 decode_coding.
17541
17542 * w32fns.c (Fx_create_frame, x_create_tip_frame): Use new version
17543 of x_new_fontset.
17544 (w32_load_system_font): Initialize charset as unicode.
17545 font_info.encoding becomes encoding_type.
17546 (w32_to_x_font): Use decode_coding_c_string in place of decode_coding.
17547 (x_to_w32_font): Use encode_coding_object in place of encode_coding.
17548 (syms_of_w32fns): Set get_font_repertory_func.
17549
17550 * w32console.c: Include character.h. Use terminal_encode_buffer
17551 from term.c.
17552 (write_glyphs): Use new version of encode_terminal_code. Use
17553 encode_coding_object in place of encode_coding.
17554
17555 * w32bdf.c (w32_load_bdf_font): Clear font_info before filling.
17556 encoding becomes encoding_type.
17557
17558 * term.c (terminal_encode_buffer): Make externally visible.
17559
17560 * makefile.w32-in: Add character.h dependancies.
17561 (character.o, chartab.o): New targets.
17562
175632008-02-01 Kenichi Handa <handa@m17n.org>
17564
17565 * fileio.c (Finsert_file_contents) [DOS_NT]: Use the macro
17566 CODING_ID_EOL_TYPE.
17567
175682008-02-01 Andreas Schwab <schwab@suse.de>
17569
17570 * coding.c (produce_chars): Revert last change.
17571
175722008-02-01 Kenichi Handa <handa@m17n.org>
17573
17574 * charset.h (charset_unicode): Extern it.
17575
17576 * charset.c (string_xstring_p): Check by (C >= 0x100).
17577 (find_charsets_in_text): Change format of the arc CHARSETS. New
17578 arg MULTIBYTE.
17579 (Ffind_charset_region, Ffind_charset_string): Adjust for the
17580 change of find_charsets_in_text.
17581 (Fsplit_char): Fix doc. Never return unknown.
17582
17583 * chartab.c (char_table_translate): Use CHARACTERP, not INTEGERP.
17584
17585 * coding.c (Fdefine_coding_system_alias): Update
17586 Vcoding_system_list.
17587
17588 * fontset.c (load_font_get_repertory): Pay attention to the case
17589 that ENCODING of a font is specified by a char-table.
17590
17591 * xterm.c (x_get_font_repertory): Handle the case that the
17592 encoding of font is other than Unicode.
17593
175942008-02-01 Kenichi Handa <handa@m17n.org>
17595
17596 * term.c (encode_terminal_code): Don't handle glyph-table. Check
17597 if a character is encodable by the terminal coding system. If
17598 not, produces proper number of `?'s. Update
17599 terminal_encode_buffer and terminal_encode_buf_size if necessary.
17600 (produce_glyphs): Check by CHAR_BYTE8_P, not SINGLE_BYTE_CHAR_P.
17601
176022008-02-01 Kenichi Handa <handa@m17n.org>
17603
17604 * term.c (terminal_encode_buffer, terminal_encode_buf_size): New
17605 variables.
17606 (encode_terminal_code): Change argument. Encode multiple
17607 characters at once. Store the result of encoding in
17608 terminal_encode_buffer.
17609 (write_glyphs, insert_glyphs): Adjust for the change of
17610 encode_terminal_code.
17611 (term_init): Initialize terminal_encode_buffer and
17612 terminal_encode_buf_size.
17613
17614 * coding.c (consume_chars): If coding->src_object is nil, don't
17615 check annotation.
17616
176172008-02-01 Kenichi Handa <handa@m17n.org>
17618
17619 * character.c (char_string): Use ASCII_CHAR_P instead of
17620 SINGLE_BYTE_CHAR_P.
17621
176222008-02-01 Kenichi Handa <handa@m17n.org>
17623
17624 * xdisp.c (handle_auto_composed_prop): Check if the last
17625 characters of auto-composed region is newly composed with the
17626 following characters.
17627 (handle_composition_prop): Fix checking of point being inside
17628 composition.
17629
176302008-02-01 Kenichi Handa <handa@m17n.org>
17631
17632 * fns.c (concat): Don't change multibyteness of the result by
17633 concatenating an 8-bit character.
17634
17635 * data.c (Faset): Check newelt by CHECK_CHARACTER. Don't change
17636 multibyteness of the result when newelt is an 8-bit character.
17637
176382008-02-01 Dave Love <fx@gnu.org>
17639
17640 * xmenu.c (find_and_call_menu_selection): Make menu_bar_items_used
17641 EMACS_INT.
17642
17643 * xfns.c (DefaultDepthOfScreen, x_encode_text): Remove unused vars.
17644
17645 * xfaces.c (face_numeric_value): Declare dim size_t.
17646 (Finternal_lisp_face_equal_p): Remove unused f.
17647
17648 * xdisp.c (BUILD_CHAR_GLYPH_STRINGS, display_and_set_cursor)
17649 (MATRIX_ROW): Remove unused vars.
17650 (draw_glyphs, x_insert_glyphs, fast_find_position)
17651 (fast_find_position, fast_find_string_pos): Use EMACS_INT for
17652 byte/char counts.
17653
17654 * regex.c (regex_compile): Remove unused var.
17655
17656 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
17657
17658 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
17659 (Faccessible_keymaps, where_is_internal): Remove unused vars.
17660
17661 * keyboard.c (cancel_hourglass_unwind): Return Qnil.
17662
17663 * frame.c (frame_name_fnn_p): Make len EMACS_INT.
17664
17665 * fileio.c (Fwrite_region): Remove unused var.
17666
17667 * dispnew.c (adjust_frame_glyphs_for_frame_redisplay)
17668 (adjust_frame_glyphs_for_window_redisplay): Remove unused ch_dim.
17669
17670 * composite.c (Fremove_list_of_text_properties): Declare.
17671
17672 * coding.c (inhibit_pre_post_conversion): Remove (unused).
17673 (alloc_destination, produce_chars): Use EMACS_INT for byte/char counts.
17674 (coding_inherit_eol_type): Remove unused attrs.
17675 (detect_coding): Cast arg of detect_eol.
17676
17677 * charset.c (syms_of_charset): Remove unused var p.
17678 (find_charsets_in_text, Ffind_charset_region): Use EMACS_INT for
17679 byte/char counts.
17680
17681 * casetab.c (set_case_table): Remove unused var.
17682
17683 * window.c (Fdisplay_buffer, Fframe_selected_window): Remove
17684 unused vars.
17685
176862008-02-01 Dave Love <fx@gnu.org>
17687
17688 * xterm.c (x_bitmap_mask): Declare.
17689
176902008-02-01 Dave Love <fx@gnu.org>
17691
17692 * xterm.c (x_term_init): Fix type error.
17693
17694 * lisp.h: Add Funibyte_char_to_multibyte.
17695
17696 * coding.c (Fread_coding_system): Fix arg of XSETSTRING.
17697 (Fset_coding_system_priority): Doc fix.
17698
17699 * ccl.c (ccl_driver): Fix arg of CHARACTERP.
17700
17701 * indent.c (check_composition): Make start and end EMACS_INT.
17702
17703 * character.c (lisp_string_width): Make ignore and end EMACS_INT.
17704
17705 * xdisp.c (handle_composition_prop, check_point_in_composition):
17706 Make buffer positions EMACS_INT.
17707
17708 * composite.c (find_composition, run_composition_function)
17709 (update_compositions, Ffind_composition_internal): Make buffer
17710 positions EMACS_INT.
17711
17712 * composite.h (find_composition, update_compositions): Make
17713 position args EMACS_INT.
17714
17715 * keyboard.c (adjust_point_for_property): Make beg and end EMACS_INT.
17716
17717 * intervals.c (get_property_and_range):
17718 * intervals.h (get_property_and_range): Make start and end EMACS_INT.
17719
17720 * unexalpha.c: Don't include varargs.h.
17721
177222008-02-01 Dave Love <fx@gnu.org>
17723
17724 * coding.h (ENCODE_UTF_8): New.
17725
17726 * Makefile.in (gtkutil.o): Depend on coding.h.
17727
17728 * coding.c (Fset_coding_system_priority): Doc fix.
17729
177302008-02-01 Kenichi Handa <handa@m17n.org>
17731
17732 * fileio.c (Finsert_file_contents): Call setup_coding_system in
17733 the case of auto saving.
17734
177352008-02-01 Andreas Schwab <schwab@suse.de>
17736
17737 * chartab.c (map_char_table, map_char_table_for_charset): Protect
17738 `range' from GC.
17739
177402008-02-01 Kenichi Handa <handa@m17n.org>
17741
17742 * coding.c (decode_coding_sjis): Check bytes more rigidly.
17743
177442008-02-01 Kenichi Handa <handa@m17n.org>
17745
17746 * fileio.c (choose_write_coding_system): Return a decided coding system.
17747 (Fwrite_region): Set Vlast_coding_system_used to the return value
17748 of choose_write_coding_system.
17749
177502008-02-01 Kenichi Handa <handa@m17n.org>
17751
17752 * charset.c (Fset_charset_priority): Pay attention to duplicated
17753 arguments.
17754
17755 * coding.c (QCcategory): New variable.
17756 (syms_of_coding): Defsym it. Set all elements of
17757 Vcoding_category_table and their symbol values.
17758 (Fset_coding_system_priority): Doc fix. Update symbol qvalues of
17759 coding-category-XXX, and coding-category-list.
17760 (Fdefine_coding_system_internal): Add category in the plist.
17761
177622008-02-01 Kenichi Handa <handa@m17n.org>
17763
17764 * callproc.c (Fcall_process): Handle carryover correctly.
17765
17766 * coding.c (decode_coding_iso_2022): Fix handling of invalid bytes.
17767 (raw_text_coding_system): Check NILP (coding_system).
17768 (coding_inherit_eol_type): Check NILP (coding_system) and
17769 NILP (parent).
17770 (consume_chars): Fix for the case of raw-text.
17771
17772 * process.c (read_process_output): Handle carryover correctly.
17773
177742008-02-01 Dave Love <fx@gnu.org>
17775
17776 * regex.c (re_search_2): Fix last change.
17777
177782008-02-01 Kenichi Handa <handa@m17n.org>
17779
17780 * regex.c (GET_CHAR_BEFORE_2): Check multibyte, not
17781 target_multibyte. Even in a unibyte case, return a converted
17782 multibyte char.
17783 (GET_CHAR_AFTER): New macro.
17784 (PATFETCH): Translate via multibyte char.
17785 (HANDLE_UNIBYTE_RANGE): Delete this macro.
17786 (SETUP_MULTIBYTE_RANGE): New macro.
17787 (regex_compile): Setup compiled code so that its multibyteness
17788 matches that of a target. Fix the handling of "[X-YZ]" using
17789 SETUP_MULTIBYTE_RANGE.
17790 (analyse_first) <charset>: For filling fastmap for all multibyte
17791 characters, don't check by BASE_LEADING_CODE_P.
17792 (re_search_2): Don't check RE_TARGET_MULTIBYTE_P (bufp). It is
17793 the same as RE_MULTIBYTE_P (bufp) now.
17794 (mutually_exclusive_p): Check by (! multibyte || IS_REAL_ASCII (c)).
17795 (TARGET_CHAR_AND_LENGTH): Delete this macro.
17796 (TRANSLATE_VIA_MULTIBYTE): New macro.
17797 (re_match_2_internal): Don't check RE_TARGET_MULTIBYTE_P (bufp).
17798 It is the same as RE_MULTIBYTE_P (bufp) now.
17799 <exactn>: Translate via multibyte.
17800 <anychar>: Fetch a character by RE_STRING_CHAR_AND_LENGTH. Don't
17801 translate it.
17802 <charset, charset_not>: Fetch a character by
17803 RE_STRING_CHAR_AND_LENGTH. Translate via multibyte.
17804 <duplicate>: Call bcmp_translate with the last arg `multibyte'.
17805 <wordbound, notwordbound, wordbeg, wordend, syntaxspec,
17806 notsyntaxspec, categoryspec, notcategoryspec> Fetch a character
17807 by GET_CHAR_AFTER.
17808 (bcmp_translate): Likewise.
17809
17810 * search.c (compile_pattern): Check the member target_multibyte,
17811 not the member multibyte of buf.
17812
17813 * lread.c (read1): While reading a string, set force_singlebyte
17814 and force_multibyte correctly.
17815
17816 * charset.c (Fset_unibyte_charset, init_charset_once): Fix setting
17817 up of unibyte_to_multibyte_table.
17818
178192008-02-01 Kenichi Handa <handa@m17n.org>
17820
17821 * coding.c (setup_coding_system): If coding has
17822 post-read-conversion or pre-write-conversion, set
17823 CODING_REQUIRE_DECODING_MASK and CODING_REQUIRE_ENCODING_MASK
17824 respectively.
17825 (decode_coding_gap): Run post-read-conversion if any.
17826
17827 * fileio.c (Finsert_file_contents): Even if we read into a
17828 unibyte buffer, check if we must decode the result or not.
17829
178302008-02-01 Kenichi Handa <handa@m17n.org>
17831
17832 * coding.c (make_conversion_work_buffer): Change the work buffer
17833 name to the same one as that of Emacs 21.
17834
178352008-02-01 Kenichi Handa <handa@m17n.org>
17836
17837 * coding.h (make_conversion_work_buffer): Adjust prototype.
17838 (code_conversion_restore): Don't extern it.
17839
17840 * coding.c (detected_mask): Delete unused variable.
17841 (decode_coding_iso_2022): Pay attention to the byte sequence of
17842 CTEXT extended segment, and retain those bytes as is.
17843 (decode_coding_ccl): Delete unused variable `valids'.
17844 (setup_coding_system): Delete unused variable `category'.
17845 (consume_chars): Delete unused variable `category'. Make it work
17846 for non-multibyte case.
17847 (make_conversion_work_buffer): Change argument.
17848 (saved_coding): Delete unused variable.
17849 (code_conversion_restore): Don't check saved_coding->destination.
17850 (code_conversion_save): New function.
17851 (decode_coding_gap, encode_coding_gap): Call code_conversion_save
17852 instead of record_unwind_protect.
17853 (decode_coding_object, encode_coding_object): Likewise. Recover PT.
17854 (detect_coding_system): Delete unused variable `mask'.
17855 (Fdefine_coding_system_internal): Delete unused variable id.
17856
17857 * fileio.c (kill_workbuf_unwind): New function.
17858 (Finsert_file_contents): On replacing, call
17859 make_conversion_work_buffer with correct args, and call
17860 record_unwind_protect with the first arg kill_workbuf_unwind.
17861
17862 * lisp.h (Fgenerate_new_buffer_name): EXFUN it.
17863
178642008-02-01 Kenichi Handa <handa@m17n.org>
17865
17866 * fontset.c (BASE_FONTSET_P): Check FONTSET_BASE, not FONTSET_NAME.
17867 (fontset_add): Fix for the case that TO is less than TO1.
17868 (Ffontset_info): Don't use fallback fontset on checking the
17869 default fontset.
17870 (dump_fontset): New function for debugging.
17871
17872 * coding.c (Fdefine_coding_system_internal): Fix for the case that
17873 coding_type is Qcharset.
17874
178752008-02-01 Kenichi Handa <handa@m17n.org>
17876
17877 * chartab.c (map_sub_char_table): New argument DEFAULT_VAL.
17878 (map_char_table): Don't inherit the value from the parent on
17879 initializing VAL. Adjust for the above change.
17880
178812008-02-01 Kenichi Handa <handa@m17n.org>
17882
17883 * coding.c (Qsignature, Qendian): Delete these variables.
17884 (syms_of_coding): Don't initialize them.
17885 (CATEGORY_MASK_UTF_16_AUTO): New macro.
17886 (detect_coding_utf_16): Add CATEGORY_MASK_UTF_16_AUTO in
17887 detect_info->found.
17888 (decode_coding_utf_16): Don't detect BOM here.
17889 (encode_coding_utf_16): Produce BOM if CODING_UTF_16_BOM (coding)
17890 is NOT utf_16_without_bom.
17891 (setup_coding_system): For a coding system of type utf-16, check
17892 if the attribute :endian is Qbig or not (not nil or not), and set
17893 CODING_REQUIRE_DETECTION_MASK if BOM detection is required.
17894 (detect_coding): If coding type is utf-16 and BOM detection is
17895 required, detect it.
17896 (Fdefine_coding_system_internal): For a coding system of type
17897 utf-16, check if the attribute :endian is Qbig or not (not nil or not).
17898
178992008-02-01 Kenichi Handa <handa@m17n.org>
17900
17901 * coding.c (coding_set_source): Fix for the case that the current
17902 buffer is different from coding->src_object.
17903 (decode_coding_object): Don't use the conversion work buffer if
17904 DST_OBJECT is a buffer.
17905
179062008-02-01 Dave Love <fx@gnu.org>
17907
17908 * lread.c (read_emacs_mule_char) [len==2]: Index
17909 emacs_mule_charset correctly.
17910
179112008-02-01 Dave Love <fx@gnu.org>
17912
17913 * coding.c (Qbig5, Vbig5_coding_system, CATEGORY_MASK_BIG5)
17914 (detect_coding_big5, decode_coding_big5, encode_coding_big5)
17915 (Fdecode_big5_char, Fencode_big5_char): Delete. (Big5 no longer
17916 treated specially.)
17917 (setup_coding_system, coding_category, CATEGORY_MASK_ANY)
17918 (detected_mask): Remove Big5 bits.
17919
179202008-02-01 Kenichi Handa <handa@m17n.org>
17921
17922 The following changes are to make the font rescaling facility
17923 compatible with Emacs 21.
17924
17925 * xfaces.c (Vface_font_rescale_alist): Rename from
17926 Vface_resizing_fonts.
17927 (struct font_name): Rename member resizing_ratio to rescale_ratio.
17928 (font_rescale_ratio): Rename from font_resizing_ratio.
17929 (split_font_name): Set font->rescale_ratio.
17930 (better_font_p): Pay attention to font->rescale_ratio.
17931 (build_scalable_font_name): Likewise. Change RESX, and RESY
17932 fields.
17933 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
17934
179352008-02-01 Kenichi Handa <handa@m17n.org>
17936
17937 * coding.c (Qutf_16_be_nosig, Qutf_16_be, Qutf_16_le_nosig)
17938 (Qutf_16_le): Remove these variables.
17939 (syms_of_coding): Don't DEFSYM them.
17940 (decode_coding_utf_16): Fix handling of BOM.
17941 (encode_coding_utf_16): Fix handling of BOM.
17942
179432008-02-01 Kenichi Handa <handa@m17n.org>
17944
17945 * fileio.c (Finsert_file_contents): On replacing, before decoding
17946 the file into the work buffer, set point of the work buffer to the end.
17947
179482008-02-01 Dave Love <fx@gnu.org>
17949
17950 * coding.c (Fcheck_coding_systems_region): Fix type errors.
17951
179522008-02-01 Dave Love <fx@gnu.org>
17953
17954 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
17955 and fix C types.
17956
179572008-02-01 Kenichi Handa <handa@m17n.org>
17958
17959 * xdisp.c (SKIP_GLYPHS): New macro.
17960 (set_cursor_from_row): Pay attention to string display properties.
17961
17962 * category.c (copy_category_entry): Fix for the case that RANGE
17963 is an integer.
17964
17965 * xterm.c (x_encode_char): Call ccl_driver with the last arg Qnil.
17966
17967 * w32term.c (w32_encode_char): Call ccl_driver with the last arg Qnil.
17968
179692008-02-01 Kenichi Handa <handa@m17n.org>
17970
17971 * charset.c (Fcharset_id_internal): New function.
17972 (syms_of_charset): Defsubr it.
17973
17974 * coding.c (decode_coding_ccl, encode_coding_ccl): Call ccl_driver
17975 with the last arg charset_list acquired from coding.
17976 (Fdefine_coding_system_internal): For ccl-based coding system, fix
17977 the attribute coding_attr_ccl_valids.
17978
17979 * coding.h (enum define_coding_ccl_arg_index): Set the first
17980 member coding_arg_ccl_decoder to coding_arg_max.
17981
17982 * ccl.h (ccl_driver): Adjust prototype.
17983
17984 * ccl.c (CCL_DECODE_CHAR, CCL_ENCODE_CHAR): New macros.
17985 (ccl_driver): New arg CHARSET_LIST. Use the above macros instead
60612c8f 17986 of DECODE_CHAR, ENCODE_CHAR, CHAR_CHARSET.
aac0c6e3
MR
17987 (Fccl_execute, Fccl_execute_on_string): Call ccl_driver with the
17988 last arg Qnil.
17989
179902008-02-01 Kenichi Handa <handa@m17n.org>
17991
17992 * charset.h (ENCODE_CHAR): If the method is SUBSET or SUPERSET,
17993 call encode_char.
17994
17995 * charset.c (encode_char): Fix handling of methods SUBSET and SUPERSET.
17996
179972008-02-01 Dave Love <fx@gnu.org>
17998
17999 * composite.c (syms_of_composite): Make composition_hash_table weak.
18000
180012008-02-01 Kenichi Handa <handa@m17n.org>
18002
18003 * dispextern.h (check_face_attributes, generate_ascii_font_name)
18004 (font_name_registry): Don't extern them.
18005 (split_font_name_into_vector, build_font_name_from_vector): Extern them.
18006
18007 * fontset.h (Qfontset): Don't extern it.
18008 (new_fontset_from_font_name): Extern it.
18009
18010 * fontset.c: Give 8 extra slots to fontset objects.
18011 (Qfontset_info): New variable.
18012 (syms_of_fontset): Defsym it.
18013 (FONTSET_FALLBACK): New macro.
18014 (fontset_face): Try also the default fontset.
18015 (make_fontset): Realize a fallback fontset from the default fontset.
18016 (generate_ascii_font_name): Move from xfaces.c. Rewritten by
18017 using split_font_name_into_vector and build_font_name_from_vector.
18018 (Fset_fontset_font): Access the elements of font_spec by enum
18019 FONT_SPEC_INDEX. If font_spec is a string, extract the registry
18020 name by using split_font_name_into_vector.
18021 (Fnew_fontset): If no ASCII font is specified in FONTLIST,
18022 generate a proper font name from the fontset name. Update
18023 Vfontset_alias_alist.
18024 (n_auto_fontsets): New variable.
18025 (new_fontset_from_font_name): New function.
18026 (Ffont_info): Store the information about fonts generated from the
18027 default fontset in the first extra slot of the returned char-table.
18028
18029 * xfaces.c (generate_ascii_font_name): Move to fontset.c.
18030 (font_name_registry): Delete function.
18031 (split_font_name_into_vector): New function.
18032 (build_font_name_from_vector): New function.
18033 (font_list): The argument REGISTRY is now a list of registry names.
18034 (choose_face_font): If we are choosing an ASCII font, and ATTRS
18035 specifies an explicit font name, return the name as is. Make a
18036 list of registy names.
18037
18038 * xfns.c (x_set_font, x_create_tip_frame): Adjust for the change
18039 of x_new_fontset.
18040 (Fx_create_frame): Don't call x_new_fontset here. Just use
18041 x_list_fonts to check the existence of fonts.
18042
18043 * xterm.h (x_new_fontset): Adjust prototype.
18044
18045 * xterm.c (x_new_fontset): Change the arg FONTSETNAME to Lisp
18046 string. Use new_fontset_from_font_name to create a fontset from a
18047 font name.
18048
180492008-02-01 Kenichi Handa <handa@m17n.org>
18050
18051 * syntax.c (Vfind_word_boundary_function_table): New name for
18052 Vnext_word_boundary_function_table.
18053 (find-word-boundary-function-table): New name for
18054 next-word-boundary-function-table.
18055
180562008-02-01 Dave Love <fx@gnu.org>
18057
18058 * Makefile.in: Fix some dependencies.
18059
18060 * keymap.c (Fapropos_internal): Don't gcpro apropos_predicate but
18061 set it to nil before returning.
18062
18063 * composite.c (update_compositions): Fix type error.
18064
18065 * syntax.c (skip_chars, skip_syntaxes): Fix type errors.
18066
180672008-02-01 Kenichi Handa <handa@m17n.org>
18068
18069 * xterm.c (x_new_font): Optimize for the case that the font is
18070 already set for the frame.
18071
180722008-02-01 Kenichi Handa <handa@m17n.org>
18073
18074 * chartab.c (char_table_ascii): Check if the char table contents
18075 is sub-char-table or not.
18076 (char_table_set, char_table_set_range): Fix argument to
18077 char_table_ascii.
18078
18079 * coding.c (CATEGORY_MASK_RAW_TEXT): New macro.
18080 (detect_coding_utf_8, detect_coding_utf_16)
18081 (detect_coding_emacs_mule, detect_coding_iso_2022)
18082 (detect_coding_sjis, detect_coding_big5)
18083 (detect_coding_ccl, detect_coding_charset): Change argument MASK
18084 to DETECT_INFO. Update DETECT_INFO and return 1 if the byte
18085 sequence is valid in this coding system. Change callers.
18086 (MAX_ANNOTATION_LENGTH): New macro.
18087 (ADD_ANNOTATION_DATA): New macro.
18088 (ADD_COMPOSITION_DATA): Change argument. Change callers. Call
18089 ADD_ANNOTATION_DATA. Change the format of annotation data.
18090 (ADD_CHARSET_DATA): New macro.
18091 (emacs_mule_char): New argument ID. Change callers.
18092 (decode_coding_emacs_mule, decode_coding_iso_2022)
18093 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
18094 Produce charset annotation data in coding->charbuf.
18095 (encode_coding_emacs_mule, encode_coding_iso_2022): Pay attention
18096 to charset annotation data in coding->charbuf.
18097 (setup_coding_system): Add CODING_ANNOTATE_CHARSET_MASK
18098 coding->common_flags if the coding system is iso-2022 based and
18099 uses designation.
18100 (produce_composition): Adjust for the new annotation data format.
18101 (produce_charset): New function.
18102 (produce_annotation): Handle charset annotation.
18103 (handle_composition_annotation, handle_charset_annotation): New
18104 functions.
18105 (consume_chars): Handle charset annotation. Utilize the above two
18106 functions.
18107 (encode_coding_object): If SRC_OBJECT and DST_OBJECT are the same
18108 buffer, get the deleted text as a string and set
18109 coding->src_object to that string.
18110 (detect_coding, detect_coding_system): Use the new struct
18111 coding_detection_info.
18112
18113 * coding.h (struct coding_detection_info): New structure.
18114 (struct coding_system): Adjust prototype of the member `detector'.
18115 (CODING_ANNOTATE_CHARSET_MASK): New macro.
18116
181172008-02-01 Kenichi Handa <handa@m17n.org>
18118
18119 * insdel.c (insert_from_gap): Fix argument to offset_intervals.
18120
181212008-02-01 Dave Love <fx@gnu.org>
18122
18123 * keymap.c (apropos_predicate, apropos_accumulate): Declare static.
18124 (Fapropos_internal): Don't gcpro apropos_accumulate. Set result
18125 to new local and nullify apropos_accumulate before returning.
18126 (syms_of_keymap): Staticpro and initialize apropos_accumulate.
18127
181282008-02-01 Kenichi Handa <handa@m17n.org>
18129
18130 * charset.c (Fdefine_charset_internal): Setup charset.fast_map
18131 correctly.
e3eea1fc 18132
aac0c6e3
MR
181332008-02-01 Dave Love <fx@gnu.org>
18134
18135 * fns.c (Flanginfo): Call synchronize_system_time_locale.
18136
181372008-02-01 Kenichi Handa <handa@m17n.org>
18138
18139 The following changes are to make character composition happen
18140 automatically on displaying.
18141
18142 * Makefile.in (lisp, shortlisp): Add composite.elc.
18143
18144 * composite.h (Qauto_composed, Vauto_composition_function)
18145 (Qauto_composition_function): Extern them.
18146
18147 * composite.c (Vcomposition_function_table)
18148 (Qcomposition_function_table): Delete variables.
18149 (Qauto_composed, Vauto_composition_function)
18150 (Qauto_composition_function): New variables.
18151 (run_composition_function): Don't call
18152 compose-chars-after-function.
18153 (update_compositions): Clear `auto-composed' text property.
18154 (compose_chars_in_text): Delete this function.
18155 (syms_of_composite): Staticpro Qauto_composed and
18156 Qauto_composition_function. Declare Vauto_composition_function as
18157 a Lisp variable.
18158
18159 * dispextern.h (enum prop_idx): Add member AUTO_COMPOSED_PROP_IDX.
18160
18161 * xdisp.c (it_props): Add an entry for Qauto_composed.
18162 (handle_auto_composed_prop): New function.
18163
18164 * xselect.c (selection_data_to_lisp_data): Don't call
18165 compose_chars_in_text.
18166
181672008-02-01 Dave Love <fx@gnu.org>
18168
18169 * keyboard.c (read_char): Modify checking around use of
18170 Vkeyboard_translate_table.
18171
18172 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
18173 and fix C types.
18174
181752008-02-01 Kenichi Handa <handa@m17n.org>
18176
18177 * coding.c (decode_coding_utf_8, decode_coding_emacs_mule)
18178 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
18179 (decode_coding_charset, produce_chars): When eol_type is Qdos, handle
18180 the case that the last byte is '\r' correctly.
18181 (decode_coding): Flush out the unprocessed data correctly.
18182 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK bit of coding->mode.
18183
181842008-02-01 Dave Love <fx@gnu.org>
18185
18186 * xterm.c (XTread_socket): Fix changes for defined keysyms.
18187 Add XK_ISO... case.
18188 (xaw_scroll_callback): Revert last change.
18189
181902008-02-01 Kenichi Handa <handa@m17n.org>
18191
18192 * charset.c (Fset_charset_priority): Update Viso_2022_charset_list.
18193
181942008-02-01 Kenichi Handa <handa@m17n.org>
18195
18196 * xfaces.c (Vface_resizing_fonts): New variable.
18197 (struct font_name): New member `resizing_ratio'.
18198 (font_resizing_ratio): New function.
18199 (split_font_name): Set font->resizing_ratio.
18200 (better_font_p): Pay attention to font->resizing_ratio.
18201 (build_scalable_font_name): Likewise. Don't change POINT_SIZE,
18202 RESX, and RESY fields.
18203 (try_alternative_families): Try scalable fonts if
18204 Vscalable_fonts_allowed is not Qt.
18205 (syms_of_xfaces): Declare Vface_resizing_fonts as a Lisp variable.
18206
182072008-02-01 Dave Love <fx@gnu.org>
18208
18209 * xterm.c (xaw_scroll_callback): Cast correctly.
18210
182112008-02-01 Dave Love <fx@gnu.org>
18212
18213 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extend.
18214 (lispy_kana_keys): Comment out.
18215 (make_lispy_event) [XK_kana_A]: Comment out.
18216
18217 * xterm.c (xaw_scroll_callback): Cast call_data.
18218 (XTread_socket): Deal with ASCII keysyms.
18219 (syms_of_xterm) <Vx_keysym_table>: Fix args of make_hash_table.
18220
182212008-02-01 Dave Love <fx@gnu.org>
18222
18223 * xterm.c (Vx_keysym_table): New.
18224 (syms_of_xterm): Initialize it.
18225 (XTread_socket): Use it.
18226 From head: Eliminate incorrect optimization that tried to avoid
18227 decoding the output of X*LookupString.
18228 (x_get_font_repertory): Delete charset declaration.
18229
182302008-02-01 Kenichi Handa <handa@m17n.org>
18231
18232 * coding.c (detect_coding_charset): If only ASCII bytes are found,
18233 return 0.
18234 (Fdefine_coding_system_internal): Setup
18235 CODING_ATTR_ASCII_COMPAT (attrs) correctly.
18236
182372008-02-01 Dave Love <fx@gnu.org>
18238
18239 * coding.c (Fcheck_coding_system): Doc fix.
18240
18241 * editfns.c (Finsert_byte): Return a proper value.
18242
182432008-02-01 Kenichi Handa <handa@m17n.org>
18244
18245 * coding.c (decode_coding): Fix args to translate_chars. Pay
18246 attention to Vstandard_translation_table_for_decode.
18247 (encode_coding): Fix args to translate_chars. Pay attention to
18248 Vstandard_translation_table_for_encode.
18249
18250 * data.c (Faset): Check NEWELT by ASCII_CHAR_P, not by
18251 SINGLE_BYTE_CHAR_P.
18252
18253 * editfns.c (general_insert_function): Check VAL by ASCII_CHAR_P,
18254 not by SINGLE_BYTE_CHAR_P.
18255
18256 * fns.c (concat): Check CH by ASCII_CHAR_P, not by
18257 SINGLE_BYTE_CHAR_P.
18258
18259 * insdel.c (copy_text): Check C by ASCII_CHAR_P, not by
18260 SINGLE_BYTE_CHAR_P.
18261
18262 * keymap.c (Ftext_char_description): Check C by ASCII_CHAR_P, not
18263 by SINGLE_BYTE_CHAR_P.
18264
18265 * search.c (Freplace_match): Check C by ASCII_CHAR_P, not by
18266 SINGLE_BYTE_CHAR_P.
18267
182682008-02-01 Dave Love <fx@gnu.org>
18269
18270 * fns.c (Fstring_as_multibyte, Fstring_to_multibyte): Doc fix.
18271
182722008-02-01 Dave Love <fx@gnu.org>
18273
18274 * fns.c (Flanginfo): Fix typo.
18275
18276 * unexelf.c (unexec): Make last change conditional on Irix 6.5.
18277
182782008-02-01 Kenichi Handa <handa@m17n.org>
18279
18280 * coding.c (detect_coding_utf_8, detect_coding_utf_16)
18281 (detect_coding_emacs_mule, detect_coding_iso_2022)
18282 (detect_coding_sjis, detect_coding_big5, detect_coding_ccl): Check
18283 incomplete byte sequence. Don't update *mask when correctly detected.
18284 (decode_coding_sjis): Fix decoding of katakana-jisx0201.
18285 (detect_eol): Delete the argument CODING, and add the argument CATEGORY.
18286 (detect_coding, detect_coding_system): Adjust for the changes above.
18287
182882008-02-01 Kenichi Handa <handa@m17n.org>
18289
18290 * character.c (char_string): Rename from
18291 char_string_with_unification. Pay attention to CHAR_MODIFIER_MASK.
18292 (string_char): Rename from string_char.
18293
18294 * character.h (CHAR_STRING, CHAR_STRING_ADVANCE): Call char_string
18295 if C is greater than MAX_3_BYTE_CHAR.
18296 (STRING_CHAR, STRING_CHAR_AND_LENGTH, STRING_CHAR_ADVANCE): Call
18297 string_char instead of string_char_with_unification.
18298
182992008-02-01 Dave Love <fx@gnu.org>
18300
18301 * coding.c (decode_coding_utf_8): Treat surrogates as invalid.
18302
183032008-02-01 Kenichi Handa <handa@m17n.org>
18304
18305 * keymap.c (push_key_description): Pay attention to force_multibyte.
18306
18307 * regex.c (re_search_2): Fix for the case of unibyte buffer.
18308
183092008-02-01 Dave Love <fx@gnu.org>
18310
18311 * charset.c (define_charset_internal): Rename `supprementary'.
18312
18313 * Makefile.in (lisp, shortlisp): Remove latin-N.
18314
183152008-02-01 Dave Love <fx@gnu.org>
18316
18317 * xfns.c (x_window, x_window): Use use_xim.
18318
18319 * xterm.c (use_xim): Initialize.
18320 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
18321 (x_term_init): Maybe set use_xim.
18322
18323 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
18324
183252008-02-01 Kenichi Handa <handa@m17n.org>
18326
18327 * search.c (search_buffer): Fix case-fold-search of multibyte
18328 characters.
18329 (boyer_moore): Rename the last argument to char_high_bits.
18330
183312008-02-01 Kenichi Handa <handa@m17n.org>
18332
18333 * xdisp.c (display_string): Fix for the case of zero width glyph.
18334
18335 * xfns.c (x_set_font): Change the error message of the case that
18336 x_new_fontset returns Qt.
18337
18338 * xfaces.c (set_lface_from_font_name): Reject the default fontset.
18339 (Finternal_set_lisp_face_attribute): Use signal_error for the
18340 error of invalid fontset.
18341
18342 * xterm.c (x_new_fontset): If FONTSETNAME specifies the default
18343 fontset, return Qt.
18344
183452008-02-01 Dave Love <fx@gnu.org>
18346
18347 * unexelf.c (unexec): Make .got handling not SGI-specific.
18348
18349 * syntax.c (syms_of_syntax) <multibyte-syntax-as-symbol>: Doc fix.
18350
18351 * regex.c: Use `ifdef HAVE_ALLOCA_H', not `if HAVE_ALLOCA_H'.
18352
18353 * keyboard.c (read_key_sequence): Fix type error.
18354
18355 * buffer.c (Fset_buffer_multibyte, Fset_buffer_multibyte): Fix
18356 type error.
18357
18358 * fontset.c (fontset_add): Return Lisp_Object.
18359
183602008-02-01 Dave Love <fx@gnu.org>
18361
18362 * charset.h (charset_ordered_list_tick): Declare extern.
18363
183642008-02-01 Kenichi Handa <handa@m17n.org>
18365
18366 The following changes (and some of 2008-02-01 changes of mine) are
18367 for handling syntax, category, and case conversion for unibyte
18368 characters by converting them to multibyte on the fly. With these
18369 changes, we don't have to setup syntax and case tables for unibyte
18370 characters in each language environment.
18371
18372 * abbrev.c (Fexpand_abbrev): Convert a unibyte character to
18373 multibyte if necessary.
18374
18375 * bytecode.c (Fbyte_code): Likewise.
18376
18377 * character.h (LEADING_CODE_LATIN_1_MIN)
18378 (LEADING_CODE_LATIN_1_MAX): New macros.
18379 (unibyte_to_multibyte_table): Extern it.
18380 (unibyte_char_to_multibyte): New macro.
18381 (MAKE_CHAR_MULTIBYTE): Use unibyte_to_multibyte_table.
18382 (CHAR_LEADING_CODE): New macro.
18383 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): New macro.
18384
18385 * character.c (unibyte_to_multibyte_table): New variable.
18386 (unibyte_char_to_multibyte): Move to character.h and define as macro.
18387 (multibyte_char_to_unibyte): If C is an eight-bit character,
18388 convert it to the corresponding byte value.
18389
18390 * charset.c (Fset_unibyte_charset): If the dimension of CHARSET is
18391 not 1, signals an error. Update the elements of
18392 unibyte_to_multibyte_table.
18393 (init_charset_once): Initialize unibyte_to_multibyte_table.
18394 (syms_of_charset): Define the charset `iso-8859-1'.
18395
18396 * cmds.c (internal_self_insert): In a multibyte buffer, insert C
18397 as is without converting it to unibyte. In a unibyte buffer,
18398 convert C to multibyte before checking the syntax.
18399
18400 * lisp.h (unibyte_char_to_multibyte): Delete extern.
18401
18402 * minibuf.c (Fminibuffer_complete_word): Use the macro
18403 FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE.
18404
18405 * regex.h (struct re_pattern_buffer): New member target_multibyte.
18406
18407 * regex.c (RE_TARGET_MULTIBYTE_P): New macro.
18408 (GET_CHAR_BEFORE_2): Check target_multibyte, not multibyte. If
18409 that is zero, convert an eight-bit char to multibyte.
18410 (MAKE_CHAR_MULTIBYTE, CHAR_LEADING_CODE): New dummy new macros for
18411 non-emacs case.
18412 (PATFETCH): Convert an eight-bit char to multibyte.
18413 (HANDLE_UNIBYTE_RANGE): New macro.
18414 (regex_compile): Setup the compiled pattern for multibyte chars
18415 even if the given regex string is unibyte. Use PATFETCH_RAW
18416 instead of PATFETCH in many places. To handle `charset'
18417 specification of unibyte, call HANDLE_UNIBYTE_RANGE. Use bitmap
18418 only for ASCII chars.
18419 (analyse_first) <exactn>: Simplify because the compiled pattern
18420 is multibyte.
18421 <charset_not>: Setup fastmap from bitmap only for ASCII chars.
18422 <charset>: Use CHAR_LEADING_CODE to get leading codes.
18423 <categoryspec>: If multibyte, setup fastmap only for ASCII chars here.
18424 (re_compile_fastmap) [emacs]: Call analyse_first with the arg
18425 multibyte always 1.
18426 (re_search_2): In emacs, set the locale variable multibyte to 1,
18427 otherwise to 0. New local variable target_multibyte. Check it
18428 to decide the multibyteness of STR1 and STR2. If
18429 target_multibyte is zero, convert unibyte chars to multibyte
18430 before translating and checking fastmap.
18431 (TARGET_CHAR_AND_LENGTH): New macro.
18432 (re_match_2_internal): In emacs, set the locale variable multibyte
18433 to 1, otherwise to 0. New local variable target_multibyte. Check
18434 it to decide the multibyteness of STR1 and STR2. Use
18435 TARGET_CHAR_AND_LENGTH to fetch a character from D.
18436 <charset, charset_not>: If multibyte is nonzero, check fastmap
18437 only for ASCII chars. Call bcmp_translate with
18438 target_multibyte, not with multibyte.
18439 <begline>: Declare the local variable C as `unsigned'.
18440 (bcmp_translate): Change the last arg name to target_multibyte.
18441
18442 * search.c (compile_pattern_1): Don't adjust the multibyteness of
18443 the regexp pattern and the matching target. Set cp->buf.multibyte
18444 to the multibyteness of the regexp pattern. Set
18445 cp->but.target_multibyte to the multibyteness of the matching target.
18446 (wordify): Use FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE instead of
18447 FETCH_STRING_CHAR_ADVANCE.
18448 (Freplace_match): Convert unibyte chars to multibyte.
18449
18450 * syntax.c (char_quoted, back_comment, scan_words)
18451 (Fforward_comment, scan_lists, Fbackward_prefix_chars)
18452 (scan_sexps_forward): Use FETCH_CHAR_AS_MULTIBYTE to convert
18453 unibyte chars to multibyte.
18454 (skip_chars): Delete the arg syntaxp, and move the code for
18455 handling syntaxes to skip_syntaxes. Change callers.
18456 Fix the case that the multibyteness of STRING and the current
18457 buffer doesn't match.
18458 (skip_syntaxes): New function.
18459 (SYNTAX_WITH_MULTIBYTE_CHECK): Check C by ASCII_CHAR_P, not by
18460 SINGLE_BYTE_CHAR_P.
18461
184622008-02-01 Kenichi Handa <handa@m17n.org>
18463
18464 * xfaces.c (QCfontset): New variable.
18465 (LFACE_FONTSET): New macro.
18466 (check_lface_attrs): Check also LFACE_FONTSET_INDEX.
18467 (set_lface_from_font_name): Setup LFACE_FONTSET (lface).
18468 (Finternal_set_lisp_face_attribute)
18469 (Finternal_get_lisp_face_attribute): Handle QCfontset.
18470 (lface_same_font_attributes_p): Fix checking of LFACE_FONT_INDEX,
18471 check also LFACE_FONTSET_INDEX.
18472 (face_fontset): Check attrs[LFACE_FONTSET_INDEX], not
18473 attrs[LFACE_FONT_INDEX].
18474 (syms_of_xfaces): Intern and staticpro QCfontset.
18475
18476 * dispextern.h (enum lface_attribute_index): New member
18477 LFACE_FONTSET_INDEX.
18478
18479 * fns.c (base64_encode_1): Handle eight-bit chars correctly.
18480
184812008-02-01 Kenichi Handa <handa@m17n.org>
18482
18483 * coding.c (coding_set_destination): Fix coding->destination for
18484 the case converting a region.
18485 (encode_coding_utf_8): Encode eight-bit chars as single byte.
18486 (encode_coding_object): Fix coding->dst_pos and
18487 coding->dst_pos_byte for the case converting a region.
18488
18489 * insdel.c (insert_from_gap): Make it work even if PT != GTP.
18490
18491 * character.h (BYTE8_STRING): New macro.
18492
18493 * fns.c (base64_decode_1): Insert eight-bit chars correctly.
18494
184952008-02-01 Kenichi Handa <handa@m17n.org>
18496
18497 * xdisp.c (get_next_display_element): Don't display unibyte 8-bit
18498 characters by octal form.
18499
18500 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
18501
18502 * buffer.h (_fetch_multibyte_char_len): Delete extern.
18503 (FETCH_MULTIBYTE_CHAR, BUF_FETCH_MULTIBYTE_CHAR): Don't use
18504 _fetch_multibyte_char_len.
18505 (FETCH_CHAR_AS_MULTIBYTE): New macro.
18506
18507 * casetab.c (set_canon, set_identity, shuffle): Simplify.
18508
18509 * casefiddle.c (casify_object): Simplify. Handle the case that
18510 the case conversion change the byte length.
18511 (casify_region): Likewise.
18512
18513 * character.h (MAKE_CHAR_UNIBYTE, MAKE_CHAR_MULTIBYTE): New macros.
18514
18515 * character.c (_fetch_multibyte_char_len): Delete this variable.
18516 (syms_of_character): Setup Vprintable_chars.
18517
18518 * editfns.c (Fchar_equal): Fix for the unibyte case.
18519 (Finsert_byte): New function.
18520 (syms_of_editfns): Defsubr it.
18521
18522 * keyboard.c (read_key_sequence): Use ~CHAR_MODIFIER_MASK instead
18523 of direct code 0x3ffff.
18524
18525 * search.c (Freplace_match): Fix for the unibyte case.
18526
185272008-02-01 Kenichi Handa <handa@m17n.org>
18528
18529 * lread.c (safe_to_load_p): Fix the logic.
18530
18531 * syntax.c (scan_words): Don't treat characters belonging to
18532 different scripts as constituting a word.
18533
18534 * editfns.c (Fformat): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
18535
18536 * fontset.c (Fset_fontset_font): Treat `ascii' as charset, not script.
18537
18538 * emacs.c (main): In the case of --unibyte, instead of aborting on
18539 finding non-empty buffer, make it unibyte.
18540
185412008-02-01 Kenichi Handa <handa@m17n.org>
18542
18543 * xterm.c (x_new_fontset): Call `create-fontset-from-ascii-font'
18544 to create a fontset.
18545
185462008-02-01 Dave Love <fx@gnu.org>
18547
18548 * character.c (Funibyte_char_to_multibyte): Doc fix.
18549
18550 * xfns.c [HAVE_STDLIB_H]: Fix last change.
18551
185522008-02-01 Kenichi Handa <handa@m17n.org>
18553
18554 * fontset.c (fontset_add): Make the type `int'.
18555 (fontset_id_valid_p): Define it if FONTSET_DEBUG is defined.
18556
18557 * character.c (unibyte_char_to_multibyte)
18558 (multibyte_char_to_unibyte, Funibyte_char_to_multibyte): Refer to
18559 charset_unibyte, not charset_primary.
18560
18561 * charset.h (charset_unibyte): Extern it instead of charset_primary.
18562
18563 * charset.c (charset_unibyte): Rename from charset_primary.
18564 (Funibyte_charset): Rename from Fprimary_charset.
18565 (Fset_unibyte_charset): Rename from Fset_primary_charset.
18566 (syms_of_charset): Adjust for the above changes.
18567
18568 * w32term.c (x_produce_glyphs): Use ASCII_CHAR_P, not
18569 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
18570 it->multibyte_p is zero.
18571
18572 * lisp.h (nonascii_insert_offset, Vnonascii_translation_table):
18573 Delete extern.
18574
185752008-02-01 Kenichi Handa <handa@m17n.org>
18576
18577 * coding.c (Fdefine_coding_system_internal): Fix category setting
18578 for a coding system of type iso-2022.
18579
185802008-02-01 Kenichi Handa <handa@m17n.org>
18581
18582 * fontset.h (FS_LOAD_FONT): Call fs_load_font with the arg CHARSET -1.
18583
185842008-02-01 Kenichi Handa <handa@m17n.org>
18585
18586 * syntax.c (Vnext_word_boundary_function_table): New variable.
18587 (next-word-boundary-function-table): Declare it as a Lisp variable
18588 in syms_of_syntax.
18589 (scan_words): Call functions in Vnext_word_boundary_function_table
18590 if any.
18591
18592 * xterm.c (x_load_font): Initialize fontp->fontset to -1.
18593
18594 * fontset.c (fs_load_font): If fontp->charset is not negative,
18595 return fontp without setting its members.
18596
185972008-02-01 Dave Love <fx@gnu.org>
18598
18599 * xfns.c [HAVE_STDLIB_H]: Change logic (instead of fixing typo).
18600
18601 * m/sparc.h (HAVE_ALLOCA): Delete.
18602
18603 * s/irix6-5.h: Don't include strings.h.
18604 (bcopy, bzero, bcmp): Don't undef.
18605
18606 * s/irix6-0.h (bcopy, bzero, bcmp): Don't undef.
18607
18608 * s/usg5-4.h (NO_SIOCTL_H): Don't define.
18609 (TIOCSIGSEND): Don't test IRIX6.
18610 (bcopy, bzero, bcmp): Define conditionally.
18611
186122008-02-01 Kenichi Handa <handa@m17n.org>
18613
18614 * buffer.c (Qas, Qmake, Qto): New variables.
18615 (Fset_buffer_multibyte): New optional arg METHOD. Change caller.
18616 (syms_of_buffer): Intern and staticpro Qas, Qmake, and Qto.
18617
18618 * callproc.c (Fcall_process): Don't call insert_1_both directly if
18619 we are inserting a process output into a multibyte buffer.
18620
18621 * character.h (CHAR_TO_BYTE8): If C is not eight-bit char, call
18622 multibyte_char_to_unibyte.
18623
18624 * character.c (Funibyte_char_to_multibyte): If C can't be decoded
18625 by the primary charset, make it eight-bit char.
18626 (Fmultibyte_char_to_unibyte): Call CHAR_TO_BYTE8.
18627
18628 * charset.c (charset_eight_bit, Qeight_bit_control): New variables.
18629 (charset_8_bit__control, charset_8_bit_graphic)
18630 (Qeight_bit_control, Qeight_bit_graphic): Delete these variables.
18631 (define_charset_internal): New function.
18632 (syms_of_charset): Call define_charset_internal for pre-defined
18633 charsets.
18634
18635 * charset.h (charset_8_bit): Extern it.
18636
18637 * coding.c (make_conversion_work_buffer): Adjust for the change
18638 of Fset_buffer_multibyte.
18639 (encode_coding_raw_text): Increment p0 in the loop.
18640
18641 * lisp.h (Fset_buffer_multibyte): Adjust prototype.
18642
18643 * xdisp.c (setup_echo_area_for_printing, set_message_1): Adjust
18644 for the change of Fset_buffer_multibyte.
18645
18646 * fns.c (Fstring_to_multibyte): New function.
18647 (syms_of_fns): Declare Fstring_to_multibyte as Lisp subroutine.
18648
186492008-02-01 Dave Love <fx@gnu.org>
18650
18651 * xfns.c (x_put_x_image): Declare args.
18652
18653 * xfaces.c (font_name_registry, choose_face_font): Delete unused vars.
18654 (try_font_list): Declare an arg.
18655
18656 * xdisp.c (message2_nolog, set_message): Declare an arg.
18657
18658 * terminfo.c (tparam): Declare an arg. Use P_ to declare tparm.
18659
18660 * syntax.c (scan_sexps_forward): Declare an arg.
18661
18662 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
18663 Declare an arg.
18664
18665 * lisp.h (Fnew_fontset): Declare.
18666
18667 * keymap.c (push_key_description): Call CHARACTERP correctly.
18668
18669 * fontset.c (fontset_add): Declare args. Call make_number correctly.
18670 (face_for_char): Delete unused vars.
18671 (Fset_fontset_font): Doc fix. Delete unused vars.
18672
18673 * doc.c (Fsubstitute_command_keys): Delete unused vars.
18674
18675 * composite.c (update_compositions): Declare arg.
18676
18677 * cm.c (calccost, cmgoto): Declare args.
18678
18679 * charset.c: Remove `emacs' conditional. Doc fixes.
18680 (map_char_table_for_charset): Declare.
18681
18682 * character.c (syms_of_character) <translation-table-vector>: Doc fix.
18683
18684 * ccl.c: Remove `emacs' conditional.
18685
186862008-02-01 Kenichi Handa <handa@m17n.org>
18687
18688 The following changes are to allow specifying multiple font
18689 patterns for a character range (specified by script or charset).
18690
18691 * Makefile.in (abbrev.o): Depend on syntax.h.
18692 (xfaces.o): Depend on charset.h.
18693
18694 * alloc.c (Fmake_string): Use ASCII_CHAR_P, not
18695 SINGLE_BYTE_CHAR_P.
18696
18697 * ccl.c (Fccl_execute_on_string): Add `const' to local variables.
18698
18699 * character.h (Vchar_script_table): Extern it.
18700
18701 * character.c (Vscript_alist): Delete.
18702 (Vchar_script_table, Qchar_script_table): New variable.
18703 (syms_of_character): Declare Vchar_script_table as a lisp variable
18704 and initialize it.
18705
18706 * chartab.c (Fmake_char_table): Doc fix. If PURPOSE doesn't
18707 have property char-table-extra-slots, make no extra slot.
18708
18709 * dispextern.h (struct face): Delete member `charset'.
18710 (FACE_SUITABLE_FOR_CHAR_P, FACE_FOR): Use ASCII_CHAR_P, not
18711 SINGLE_BYTE_CHAR_P.
18712 (choose_face_font, lookup_non_ascii_face, font_name_registry):
18713 Add prototypes.
18714 (lookup_face, lookup_named_face, lookup_derived_face): Fix prototype.
18715 (generate_ascii_font_name): Rename from generate_ascii_font.
18716
18717 * fontset.h (get_font_repertory_func): New prototype.
18718 (make_fontset_for_ascii_face, fs_load_font): Fix prototypes.
18719 (FS_LOAD_FONT): Call fs_load_font with the 3rd arg charset_ascii.
18720
18721 * fontset.c (Qprepend, Qappend): New variables.
18722 (FONTSET_CHARSET_ALIST, FONTSET_FACE_ALIST): Delete.
18723 (FONTSET_NOFONT_FACE, FONTSET_REPERTORY): New macros.
18724 (FONTSET_REF): Optimize if FONTSET is Vdefault_fontset.
18725 (FONTSET_REF_AND_RANGE, FONTSET_ADD): New macros.
18726 (fontset_ref_and_range, fontset_add, reorder_font_vector)
18727 (load_font_get_repertory): New functions.
18728 (fontset_set): Delete.
18729 (fontset_face): New arg FACE. Return face ID, not face.
18730 Complete re-write to handle new fontset structure. Change caller.
18731 (free_face_fontset): Use ASET istead of AREF (X) = Y.
18732 (face_for_char): Don't call lookup_face.
18733 (make_fontset_for_ascii_face): New arg FACE.
18734 (fs_load_font): New arg CHARSET_ID. Don't check
18735 Vfont_encoding_alist here.
18736 (find_font_encoding): New function.
18737 (list_fontsets): Use STRINGP, not ! NILP.
18738 (accumulate_script_ranges): New function.
18739 (Fset_fontset_font, Fnew_fontset, Ffontset_info): Completely
18740 re-written to handle new fontset structure.
18741 (Ffontset_font): Return a copy of element.
18742 (syms_of_fontset): Define symbols Qprepend and Qappend. Fix
18743 docstring of font-encoding-alist.
18744
18745 * lisp.h (CHAR_TABLE_REF): Remove unnecessary check (IDX >= 0).
18746 (Fset_fotset_font): Fix arguments to 5.
18747
18748 * msdos.c (XMenuActivate): Adjust for the change of lookup_derived_face.
18749
18750 * xdisp.c (message_dolog, set_message_1, extend_face_to_end_of_line):
18751 Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
18752 (highlight_trailing_whitespace): Adjust for the change of
18753 lookup_named_face.
18754
18755 * xfaces.c: Include charset.h.
18756 (load_face_font): Delete argument C. Change caller.
18757 (generate_ascii_font_name): Rename from generate_ascii_font.
18758 (font_name_registry): New function.
18759 (cache_face): Store ascii faces before non-ascii faces in buckets.
18760 (lookup_face): Delete arguments C and BASE_FACE. Change caller.
18761 Lookup only ascii faces.
18762 (lookup_non_ascii_face): New function.
18763 (lookup_named_face): Delete argument C. Change caller.
18764 (lookup_derived_face): Delete argument C. Change caller.
18765 (try_font_list): New arg PATTERN. Change caller. If PATTERN is
18766 a string, just call font_list with it.
18767 (choose_face_font): Delete arguments FACE and C. New arg
18768 FONT_SPEC. Change caller.
18769 (realize_face, realize_x_face): Delete arguments C and BASE_FACE.
18770 Change caller.
18771 (realize_non_ascii_face): New function.
18772 (realize_x_face): Call load_face_font here.
18773 (realize_tty_face): Delete argument C. Change caller.
18774 (compute_char_face): If CH is not ascii, call FACE_FOR_CHAR to
18775 get a face ID.
18776 (dump_realized_face): Don't print charset of FACE.
18777
18778 * xfns.c (x_set_font): Always call x_new_fontset and
18779 store_frame_parameter.
18780 (Fx_create_frame): Call x_new_fontset, not x_new_font.
18781 (syms_of_xfns): Set get_font_repertory_func to x_get_font_repertory.
18782
18783 * xterm.h (x_get_font_repertory): Extern it.
18784
18785 * xterm.c (x_produce_glyphs): Use ASCII_CHAR_P, not
18786 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
18787 it->multibyte_p is zero.
18788 (XTread_socket): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
18789 (x_new_fontset): If FONTSETNAME doesn't match any existing
18790 fontsets, create a new one.
18791 (x_get_font_repertory): New function.
18792
187932008-02-01 Kenichi Handa <handa@m17n.org>
18794
18795 * coding.c (Ffind_coding_systems_region_internal): Detect an
18796 ASCII only string correctly.
18797
18798 * lread.c (Fload): Don't load with Qload_force_doc_strings t if
18799 version is 0.
18800
188012008-02-01 Kenichi Handa <handa@m17n.org>
18802
18803 * lread.c: Include "coding.h".
18804 (Qget_emacs_mule_file_char, Qload_force_doc_strings)
18805 (load_each_byte, unread_char): New variables.
18806 (readchar_backlog): Delete.
18807 (readchar): Return a character unless load_each_byte is nonzero.
18808 Handle the case that readcharfun is Qget_emacs_mule_file_char or a
18809 cons. If unread_char is not -1, simply return it.
18810 (unreadchar): Handle the case that readcharfun is
18811 Qget_emacs_mule_file_char or a cons. Set unread_char if necessary.
18812 (read_multibyte): Delete.
18813 (readbyte_for_lambda, readbyte_from_file, readbyte_from_string)
18814 (read_emacs_mule_char): New functions.
18815 (Fload): Even if the file doesn't have the extension ".elc", if
18816 safe_to_load_p returns a positive version number, assume that the
18817 file contains bytecompiled code. If the version is less than 22,
18818 load the file while decoding multibyte sequences by emacs-mule.
18819 (readevalloop): Don't use readchar_backlog.
18820 (Fread): Likewise. Pay attention to the case that STREAM is a cons.
18821 (Fread_from_string): Pay attention to the case that STREAM is a cons.
18822 (read_escape): Delete the arg BYTEREP.
18823 (read1): Set load_each_byte to 1 temporarily while handling
18824 #@NUMBER. Don't call read_multibyte.
18825 (read_vector): Call Fread with a cons. If readcharfun is
18826 Qget_emacs_mule_file_char, decode the read string by emacs-mule.
18827 (read_list): If doc_reference is 2, make the cdr part string as unibyte.
18828 (syms_of_lread): Intern and staticpro Qget_emacs_mule_file_char
18829 and Qload_force_doc_strings.
18830
188312008-02-01 Kenichi Handa <handa@m17n.org>
18832
18833 * xdisp.c (face_before_or_after_it_pos): Call
18834 FETCH_MULTIBYTE_CHAR with byte postion, not char position.
18835
188362008-02-01 Kenichi Handa <handa@m17n.org>
18837
18838 * character.h (TRAILING_CODE_P): New macro.
18839 (MAYBE_UNIFY_CHAR): Adjust for the change of Funify_charset.
18840 (string_char_with_unification): Fix prototype.
18841 (Vscript_alist): Extern it.
18842
18843 * character.c (Vscript_alist): New variable.
18844 (string_char_with_unification, str_as_unibyte)
18845 (string_escape_byte8): Add `const' to local variables.
18846 (syms_of_character): Declare script-alist as a Lisp variable.
18847
18848 * charset.h (Vcharset_ordered_list): Extern it.
18849 (charset_ordered_list_tick): Extern it.
18850 (EMACS_MULE_LEADING_CODE_PRIVATE_11)
18851 (EMACS_MULE_LEADING_CODE_PRIVATE_12)
18852 (EMACS_MULE_LEADING_CODE_PRIVATE_21)
18853 (EMACS_MULE_LEADING_CODE_PRIVATE_22): New macros.
18854 (Funify_charset): Adjust for the change of Funify_charset.
18855
18856 * charset.c (charset_ordered_list_tick): New variable.
18857 (Fdefine_charset_internal): Increment charset_ordered_list_tick.
18858 (Funify_charset): New optional arg DEUNIFY. If it is non-nil,
18859 deunify intead of unify a charset.
18860 (string_xstring_p): Add `const' to local variables.
18861 (find_charsets_in_text): Add `const' to arguments and local variables.
18862 (encode_char): Adjust for the change of Funify_charset. Fix
18863 detecting of invalid code.
18864 (Fset_charset_priority): Increment charset_ordered_list_tick.
18865 (Fmap_charset_chars): Fix handling of default value for FROM_CODE
18866 and TO_CODE.
18867
18868 * coding.c (LEADING_CODE_PRIVATE_11, LEADING_CODE_PRIVATE_12)
18869 (LEADING_CODE_PRIVATE_21, LEADING_CODE_PRIVATE_22): Delete macros.
18870 Changed callers to use EMACS_MULE_LEADING_CODE_PRIVATE_11, etc.
18871 (decode_coding_ccl, consume_chars)
18872 (Ffind_coding_systems_region_internal)
18873 (Fcheck_coding_systems_region): Add `const' to local variables.
18874
18875 * print.c (print_object): Use octal form for printing the
18876 contents of a bool vector.
18877
188782008-02-01 Dave Love <fx@gnu.org>
18879
18880 * lread.c (Fload) <!load_dangerous_libraries>: Don't leak fd.
18881 <version == 20>: Refuse to load.
18882
188832008-02-01 Dave Love <fx@gnu.org>
18884
18885 * fns.c: Move coding.h.
18886 (Qcodeset, Qdays, Qmonths): New.
18887 (concat): Use CHARACTERP instead of INTEGERP.
18888 (Flocale_codeset): Delete.
18889 (Flanginfo): New function.
18890 (syms_of_fns): Change accordingly.
18891
18892 * coding.c (adjust_coding_eol_type): Fix eol_type/eol_seen mixup.
18893
188942008-02-01 Dave Love <fx@gnu.org>
18895
18896 * casetab.c (init_casetab_once, init_casetab_once): Fix
18897 CHAR_TABLE_SET call.
18898
18899 * category.c (Fmodify_category_entry): Fix CATEGORY_MEMBER call.
18900
18901 * character.c (syms_of_character): Fix CHAR_TABLE_SET call.
18902
18903 * charset.c (Fmap_charset_chars): Check args. Convert Lisp types.
18904 (load_charset_map, Fdeclare_equiv_charset, Fencode_char)
18905 (Fset_charset_priority, syms_of_charset): Convert Lisp types.
18906
18907 * charset.h (CHECK_CHARSET_GET_ID): Use XINT on AREF result.
18908
18909 * coding.c (ENCODE_DESIGNATION, decode_eol)
18910 (make_conversion_work_buffer, code_conversion_restore)
18911 (Fdefine_coding_system_internal): Convert Lisp types.
18912 (code_conversion_restore): Use EQ, not ==.
18913 (Fencode_coding_string): Fix code_convert_string call.
18914
18915 * coding.h (code_convert_region): Fix prototype.
18916
18917 * dispextern.h (redraw_frame, redraw_garbaged_frames): Remove.
18918
18919 * fontset.c (fontset_ref, fontset_set, fs_load_font)
18920 (Ffontset_info): Convert Lisp types.
18921
18922 * syntax.h (SYNTAX_ENTRY_INT): Don't use make_number.
18923
18924 * xterm.c (note_mouse_movement): Fix call of window_from_coordinates.
18925
18926 * xdisp.c (display_mode_element): Fix call of Fset_text_properties.
18927
18928 * chartab.c: Include "...h", not <...h> in some cases.
18929
18930 * callproc.c (Fcall_process): Remove unused variables.
18931
189322008-02-01 Dave Love <fx@gnu.org>
18933
18934 * coding.c (Fset_coding_system_priority): Allow null arg list.
18935
189362008-02-01 Dave Love <fx@gnu.org>
18937
18938 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
18939 (Fself_insert_and_exit): Use CHARACTERP.
18940
18941 * callproc.c (Fcall_process): Remove unused vars.
18942
18943 * xterm.c (XTread_socket): Add extra dead keysyms.
18944
18945 * xdisp.c (decode_mode_spec_coding): Use CHARACTERP.
18946
18947 * dispextern.h: Remove prototypes for redraw_frame,
18948 redraw_garbaged_frames.
18949
18950 * cmds.c (Fself_insert_command): Use CHARACTERP.
18951
18952 * chartab.c (make_sub_char_table): Remove unused var.
18953 (Fset_char_table_default, Fmap_char_table): Doc fix.
18954
18955 * keymap.c (access_keymap): Remove generic char code.
18956 (push_key_description): Use CHARACTERP.
18957
189582008-02-01 Dave Love <fx@gnu.org>
18959
18960 * charset.c: Doc fixes.
18961 (Funify_charset): Extra checking.
18962
189632008-02-01 Dave Love <fx@gnu.org>
18964
18965 * lread.c: Remove some unused variables.
18966 (safe_to_load_p): If safe, return the magic number version byte.
18967 (Fload): Maybe use load-with-code-conversion.
18968
189692008-02-01 Kenichi Handa <handa@m17n.org>
18970
18971 * category.c (Fmodify_category_entry): Don't modify the contents
18972 of category_set for characters out of the range. Avoid
18973 unnecessary modification.
18974
18975 * character.h (MAYBE_UNIFY_CHAR): Adjust for the change of
18976 Vchar_unify_table. The default value of the table is now nil.
18977
18978 * character.c (syms_of_character): Setup Vchar_width_table for
18979 eight-bit-control and raw-byte chars.
18980
18981 * charset.h (enum define_charset_arg_index): Delete
18982 charset_arg_parents and add charset_arg_subset and
18983 charset_arg_superset.
18984 (enum charset_attr_index): Delete charset_parents and add
18985 charset_subset and charset_superset.
18986 (enum charset_method): Delete CHARSET_METHOD_INHERIT and add
18987 CHARSET_METHOD_SUBSET and CHARSET_METHOD_SUPERSET.
18988 (CHARSET_ATTR_PARENTS, CHARSET_PARENTS): Delete.
18989 (CHARSET_ATTR_SUBSET, CHARSET_ATTR_SUPERSET, CHARSET_SUBSET)
18990 (CHARSET_SUPERSET): New macros.
18991 (charset_work): Extern it.
18992 (ENCODE_CHAR): Use charset_work.
18993 (CHAR_CHARSET_P): Adjust for the change of encoder format.
18994 (map_charset_chars): Extern it.
18995
18996 * charset.c (load_charset_map): Set the default value of encoder
18997 and deunifier char-tables to nil.
18998 (map_charset_chars): Change argument. Change callers. Use
18999 map_char_table_for_charset instead of map_char_table.
19000 (Fmap_charset_chars): New optional args from_code and to_code.
19001 (Fdefine_charset_internal): Adjust for the change of
19002 `define-charset' (:parents -> :subset or :superset).
19003 (charset_work): New variable.
19004 (encode_char, syms_of_charset): Adjust for the change of
19005 Fdefine_charset_internal.
19006 (Ffind_charset_string): Setup the vector `charsets' correctly.
19007
19008 * chartab.c (sub_char_table_ref_and_range): New arg default. Fix
19009 the previous change.
19010 (char_table_ref_and_range): Adjust for the above change.
19011 (map_sub_char_table_for_charset): New function.
19012 (map_char_table_for_charset): New function.
19013
19014 * keymap.c (describe_vector): Handle a char-table directly here.
19015 (describe_char_table): Delete.
19016
19017 * lisp.h (map_charset_chars): Delete.
19018
190192008-02-01 Dave Love <fx@gnu.org>
19020
19021 * fns.c (count_combining): Comment out (unused).
19022 (Flocale_codeset): New.
19023 (syms_of_fns): Defsubr it.
19024
19025 * config.in (HAVE_PTY_H, HAVE_SIZE_T, HAVE_LANGINFO_CODESET): New.
19026 (size_t): Remove.
19027
190282008-02-01 Dave Love <fx@gnu.org>
19029
19030 * Makefile.in (chartab.o): Depend on charset.h.
19031
190322008-02-01 Kenichi Handa <handa@m17n.org>
19033
19034 * character.c (syms_of_character): Set the default value of
19035 Vprintable_chars to Qnil.
19036
190372008-02-01 Dave Love <fx@gnu.org>
19038
19039 * Makefile.in (lisp, shortlisp): Change indian.elc to indian.el.
19040
190412008-02-01 Kenichi Handa <handa@m17n.org>
19042
19043 * charset.c (load_charset_map): Handle the case that from < to
19044 correctly.
19045
19046 * coding.c (encode_coding_emacs_mule, encode_coding_iso_2022)
19047 (encode_coding_sjis, encode_coding_big5, encode_coding_charset):
19048 Pay attention to raw-8-bit chars.
19049
190502008-02-01 Kenichi Handa <handa@m17n.org>
19051
19052 * Makefile.in (lisp, shortlisp): Change chinese.elc to chinese.el.
19053 It is not bytecompiled now.
19054
19055 * charset.c (charset_jisx0201_roman, charset_jisx0208_1978)
19056 (charset_jisx0208): New variables.
19057 (Fdefine_charset_internal): Setup them if appropriate.
19058 (init_charset_once): Initialize them to -1.
19059
19060 * charset.h (charset_jisx0201_roman, charset_jisx0208_1978)
19061 (charset_jisx0208): Extern them.
19062
19063 * coding.c (CODING_ISO_FLAG_USE_ROMAN): New macro.
19064 (CODING_ISO_FLAG_USE_OLDJIS): New macro.
19065 (CODING_ISO_FLAG_FULL_SUPPORT): Change macro definition.
19066 (setup_iso_safe_charsets): Fix arguments to Fassq.
19067 (DECODE_DESIGNATION, ENCODE_ISO_CHARACTER_DIMENSION1)
19068 (ENCODE_ISO_CHARACTER_DIMENSION2): Pay attention to
19069 CODING_ISO_FLAG_USE_ROMAN and CODING_ISO_FLAG_USE_OLDJIS.
19070 (encode_coding_iso_2022): Change the 1st arg to
19071 ENCODE_ISO_CHARACTER to a variable.
19072
190732008-02-01 Kenichi Handa <handa@m17n.org>
19074
19075 * charset.h (enum define_charset_arg_index): New enums
19076 charset_arg_min_code and charset_arg_max_code.
19077 (struct charset): New member char_index_offset.
19078
19079 * charset.c (CODE_POINT_TO_INDEX, INDEX_TO_CODE_POINT):
19080 Take charset->char_index_offset into account.
19081 (Fdefine_charset_internal): Handle args[charset_arg_min_code] and
19082 args[charset_arg_max_code]. Setup charset.char_index_offset.
19083 (syms_of_charset): Fix args to Fdefine_charset_internal.
19084
190852008-02-01 Dave Love <fx@gnu.org>
19086
19087 * coding.c (decode_coding_utf_8): Reject overlong sequences.
19088
190892008-02-01 Dave Love <fx@gnu.org>
19090
19091 * coding.c: Doc fixes.
19092 (Fcoding_system_aliases): Fix return value.
19093 (Qmac): Remove (duplicated) definition.
19094
190952008-02-01 Dave Love <fx@gnu.org>
19096
362654a6
JB
19097 * charset.c (Fcharset_priority_list, Fset_charset_priority):
19098 New functions.
aac0c6e3
MR
19099
19100 * character.c (Fstring): Doc fix.
19101
19102 * charset.c (Fdefine_charset_alias): Update Vcharset_list.
19103
362654a6 19104 * fontset.c (Ffontset_info): Doc fix. Return charset names, not ids.
aac0c6e3
MR
19105 (font-encoding-alist): Doc fix.
19106
191072008-02-01 Dave Love <fx@gnu.org>
19108
19109 * term.c (costs_set): Declare static, non-initialized for pcc.
19110 (encode_terminal_code): Remove unused var.
19111
19112 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
19113 for K&R.
19114
19115 * xterm.c (xlwmenu_window_p): Fix prototype for K&R.
19116
19117 * coding.c (setup_iso_safe_charsets): Fix arg decl for K&R.
19118 (suffixes): Move out of make_subsidiaries for K&R.
19119
19120 * charset.c (map_charset_chars): Fix c_function declaration for K&R.
19121
19122 * lisp.h (DEFUN) [!PROTOTYPES]: Remove spurious `args'.
19123
191242008-02-01 Dave Love <fx@gnu.org>
19125
19126 * data.c (Fchar_or_string_p): Doc fix. Use CHARACTERP.
19127
19128 * category.c (Fmodify_category_entry): Doc fix. Remove unused vars.
19129
191302008-02-01 Yong Lu <lyongu@asia-infonet.com>
19131
19132 * charset.c (Fdefine_charset_internal): Fix argument to bzero.
19133
19134 * coding.c (decode_coding_charset): Workaround for the bug of GCC 2.96.
19135
191362008-02-01 Kenichi Handa <handa@m17n.org>
19137
19138 * Makefile.in (lisp, shortlisp): Change cyrillic.elc to cyrillic.el,
19139 vietnamese.elc to vietnamese.el. They are not bytecompiled now.
19140
191412008-02-01 Kenichi Handa <handa@m17n.org>
19142
19143 * coding.c (decode_coding_charset): Adjust for the change of
19144 Fdefine_coding_system_internal.
19145 (Fdefine_coding_system_internal): For a coding system of
19146 `charset' type, store a list of charset IDs in
19147 `charset_attr_charset_valids' element of coding attributes.
19148
191492008-02-01 Kenichi Handa <handa@m17n.org>
19150
19151 * coding.c (ONE_MORE_BYTE_NO_CHECK): Increment consumed_chars.
19152 (emacs_mule_char): New arg src. Delete arg `composition'. Change
19153 caller. Handle 2-byte and 3-byte charsets correctly.
19154 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): Rename from
19155 DECODE_EMACS_MULE_COMPOSITION_RULE. Change caller.
19156 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New macro.
19157 (DECODE_EMACS_MULE_21_COMPOSITION): Call
19158 DECODE_EMACS_MULE_COMPOSITION_RULE_21. Produce correct annotation
19159 sequence.
19160 (decode_coding_emacs_mule): Handle composition correctly. Rewind
19161 `src' and `consumed_chars' correctly before calling emacs_mule_char.
19162 (DECODE_COMPOSITION_START): Correctly handle the case of altchar
19163 and alt&rule composition.
19164 (decode_coding_iso_2022): Handle composition correctly.
19165 (init_coding_once): Setup emacs_mule_bytes for private charsets.
19166
19167 * charset.c (Fdefine_charset_internal): Fix bug for the case of
19168 re-defining a charset. If the charset has :emacs-mule-id, setup
19169 emacs_mule_bytes.
19170 (Fmake_char): If CODE1 is nil, use the minimum code of the charset.
19171
191722008-02-01 Kenichi Handa <handa@m17n.org>
19173
19174 * coding.c (encode_coding_iso_2022, encode_coding_sjis)
19175 (encode_coding_big5, encode_coding_charset): If coding requires safe
19176 encoding, produce a character specified by
19177 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
19178
191792008-02-01 Dave Love <fx@gnu.org>
19180
19181 * xterm.c (XSetIMValues): Declare.
19182
19183 * process.c: Conditionally include sys/wait.h, pty.h.
19184
19185 * print.c (print_object): Fix print format for 64-bit systems.
19186
19187 * keyboard.c (modify_event_symbol): Fix print format for 64-bit systems.
19188
19189 * buffer.c (emacs_strerror): Declare.
19190
19191 * fontset.c (Fclear_face_cache): Declare.
19192 (accumulate_font_info): Comment-out (unused).
19193 (face_for_char, Fset_fontset_font, Ffontset_info): Remove unused
19194 variables.
19195
19196 * character.h (string_escape_byte8): Declare.
19197
19198 * charset.c (load_charset_map, load_charset_map_from_file): Remove
19199 unused vars.
19200 (Fdefine_charset_internal, Fsplit_char, syms_of_charset)
19201 (Fmap_charset_chars): Doc fix.
19202
19203 * coding.c (Vchar_coding_system_table, Qchar_coding_system): Remove.
19204 (Fset_coding_system_priority, Fset_coding_system_priority)
19205 (Fdefine_coding_system_internal): Doc fix.
19206
192072008-02-01 Dave Love <fx@gnu.org>
19208
19209 * s/osf5-0.h (C_SWITCH_SYSTEM) [!__GNUC__]: Remove -nointrinsics.
19210
192112008-02-01 Kenichi Handa <handa@m17n.org>
19212
19213 * character.c (string_escape_byte8): Make multibyte string with
19214 correct size.
19215
19216 * charset.c (Fmake_char): Delete unnecessary code.
19217
192182008-02-01 Kenichi Handa <handa@m17n.org>
19219
19220 * xfns.c (x_encode_text): Allocate coding.destination here, and
19221 call encode_coding_object with dst_object Qnil.
19222
19223 * buffer.c (Fset_buffer_multibyte): Convert 8-bit bytes to
19224 multibyte form correctly.
19225
19226 * fontset.c (fs_load_font): Check fontp->full_name (not fontname)
19227 against Vfont_encoding_alist.
19228
19229 * coding.c (Fdecode_sjis_char): Fix typo (0x7F->0xFF). Fix the
19230 handling of charset list.
19231 (encode_coding_iso_2022): Setup coding->safe_charsets in advance.
19232 (decode_coding_object): Move point to coding->dst_pos before
19233 calling post-read-conversion function.
19234 (encode_coding_object): Give correct arguments to
19235 pre-write-conversion. Ignore the return value of
19236 pre-write-conversion function. Pay attention to the case that
19237 pre-write-conversion changes the current buffer. If dst_object is
19238 Qt, even if coding->src_bytes is zero, allocate at least one byte
19239 to coding->destination.
19240
19241 * coding.h (JIS_TO_SJIS): Fix typo (j1->s1, j2->s2).
19242
19243 * charset.c (Fmake_char): Make it more backward compatible.
19244 (Fmap_charset_chars): Fix docstring.
19245
192462008-02-01 Dave Love <fx@gnu.org>
19247
19248 * coding.c: Doc fixes.
19249 (Fdefine_coding_system_alias): Use names, not symbols, in
19250 coding-system-alist.
19251
192522008-02-01 Kenichi Handa <handa@m17n.org>
19253
19254 * fontset.c (free_realized_fontsets): Call Fclear_face_cache instead
19255 of calling free_realized_face.
19256
192572008-02-01 Yong Lu <lyongu@asia-infonet.com>
19258
19259 * charset.c (read_hex): Don't treat SPC as a comment starter.
19260 (decode_char): If CODE_POINT_TO_INDEX returns -1, always return -1.
19261 (Fdecode_char): Fix typo.
19262
192632008-02-01 Kenichi Handa <handa@m17n.org>
19264
19265 * charset.h (struct charset): New member `code_space_mask'.
19266
19267 * coding.c (coding_set_source): Delete the local variable beg_byte.
19268 (encode_coding_charset, Fdefine_coding_system_internal):
19269 Delete the local variable charset.
19270 (Fdefine_coding_system_internal): Setup
19271 attrs[coding_attr_charset_valids] correctly.
19272
19273 * charset.c (CODE_POINT_TO_INDEX): Utilize `code_space_mask'
19274 member to check if CODE is valid or not.
19275 (Fdefine_charset_internal): Initialize `code_space_mask' member.
19276 (encode_char): Before calling CODE_POINT_TO_INDEX, check if CODE
19277 is within the range of charset->min_code and carset->max_code.
19278
192792008-02-01 Dave Love <fx@gnu.org>
19280
19281 * syntax.h (syntax_temp) [!__GNUC__]: Declare.
19282
19283 * dispextern.h (generate_ascii_font): Fix return type.
19284
19285 * xfaces.c (generate_ascii_font): Fix arg declaration.
19286
19287 * coding.c (coding_inherit_eol_type)
19288 (Fset_terminal_coding_system_internal)
19289 (Fset_safe_terminal_coding_system_internal): Fix arg declarations.
19290
192912008-02-01 Kenichi Handa <handa@m17n.org>
19292
19293 * coding.c (decode_coding_charset, encode_coding_charset): Handle
19294 multiple charsets correctly.
19295
192962008-02-01 Kenichi Handa <handa@m17n.org>
19297
19298 * search.c (boyer_moore): Fix handling of multibyte character
19299 translation.
19300
19301 * xdisp.c (display_mode_element): When the variable `elt' is
19302 changed, update `this' and `lisp_string'.
19303
193042008-02-01 Kenichi Handa <handa@m17n.org>
19305
19306 * buffer.c (Fset_buffer_multibyte): Fix 8-bit char handling.
19307
19308 * callproc.c (Fcall_process): Be sure to give the current buffer
19309 to decode_coding_c_string. Update PT and PT_BYTE after the insertion.
19310
19311 * charset.c (struct charset_map_entries): New struct.
19312 (load_charset_map): Rename from parse_charset_map. New args
19313 entries and n_entries. Change caller.
19314 (load_charset_map_from_file): Rename from load_charset_map.
19315 Change caller. New arg control_flag. Call load_charset_map at
19316 the tail.
19317 (load_charset_map_from_vector): New function.
19318 (Fdefine_charset_internal): Setup charset.compact_codes_p.
19319 (encode_char): If the charset is compact, change a character index
19320 to a code point.
19321
19322 * coding.c (coding_alloc_by_making_gap): Check the case that the
19323 source and destination are the same correctly.
19324 (decode_coding_raw_text): Set coding->consumed_char and
19325 coding->consumed to 0.
19326 (produce_chars): If coding->chars_at_source is nonzero, update
19327 coding->consumed_char and coding->consumed before calling
19328 alloc_destination.
19329 (Fdefine_coding_system_alias): Register ALIAS in
19330 Vcoding_system_alist.
19331 (syms_of_coding): Define `no-conversion' coding system at the tail.
19332
19333 * fileio.c (Finsert_file_contents): Set coding_system instead of
19334 val. If the current buffer is multibyte, always call
19335 decode_coding_gap.
19336
19337 * xfaces.c (try_font_list): Give higher priority to fontset's
19338 family than face's family.
19339
193402008-02-01 Kenichi Handa <handa@m17n.org>
19341
19342 * callproc.c (Fcall_process): Be sure to give the current buffer
19343 to decode_coding_c_string.
19344
19345 * xfaces.c (try_font_list): Give a family specified in a fontset
19346 higher priority than a family specified in a face.
19347
193482008-02-01 Kenichi Handa <handa@m17n.org>
19349
19350 * fileio.c (Finsert_file_contents): Fix calculation of `inserted'.
19351 Fix arguments to insert_from_buffer.
19352
19353 * xdisp.c (display_mode_element): Fix calculation of `bytepos'.
19354
193552008-02-01 Kenichi Handa <handa@m17n.org>
19356
19357 * coding.c (produce_chars): Set the variable `multibytep' correctly.
19358 (decode_coding_gap): Set coding->dst_multibyte correctly.
19359
193602008-02-01 Kenichi Handa <handa@m17n.org>
19361
19362 * coding.c (encode_coding_utf_8): Initialize produced_chars to 0.
19363 (decode_coding_utf_16): Fix converting high and low bytes to code-point.
19364 (encode_coding_utf_16): Substitute coding->default_char for
19365 non-Unicode characters.
19366 (decode_coding): Don't call record_insert here.
19367 (setup_coding_system): Initialize `surrogate' of
19368 coding->spec.utf_16 to 0.
19369 (EMIT_ONE_BYTE): Fix for multibyte case.
19370
19371 * insdel.c (insert_from_gap): Call record_insert.
19372
193732008-02-01 Kenichi Handa <handa@m17n.org>
19374
19375 * casefiddle.c (casify_region): Fix multibyte case.
19376
19377 * character.c (c_string_width): Add return type `int'.
19378 (char_string_with_unification): Delete arg ADVANCED.
19379
19380 * character.h (CHAR_VALID_P): Don't call CHARACTERP.
19381 (CHAR_STRING): Adjust for the change of char_string_with_unification.
19382 (CHAR_STRING_ADVANCE): Make it do-while statement.
19383
19384 * chartab.c (sub_char_table_set_range): Optimize for the case
19385 DEPTH == 3. Add workaround code for a GCC optimization bug.
19386
19387 * charset.c (parse_charset_map): Remove an unused variable.
19388
19389 * coding.c: Delete unused variables.
19390
19391 * fileio.c (Finsert_file_contents): Set coding_system to Qnil
19392 earlier. If inserted is zero and the coding system doesn't
19393 require flushing, don't call decode_coding_gap.
19394
19395 * syntax.h (SET_RAW_SYNTAX_ENTRY): Don't call make_number.
19396
193972008-02-01 Kenichi Handa <handa@m17n.org>
19398
19399 The following changes are for using Unicode as an internal
19400 character model, and use UTF-8 format for buffer/string
19401 representation.
19402
19403 * .gdbinit (xchartable): Adjust for the change of char table structure.
19404 (xsubchartable, xcoding, xcharset, xcurbuf): New commands.
19405
19406 * Makefile.in (obj): Add character.o and chartab.o.
19407 (lisp, shortlisp): Remove utf-8.elc.
19408 (*.o): For many files, change dependency on charset.h to
19409 character.h, and add dependency on character.h.
19410 (character.o, chartab.o): New targets.
19411
19412 * abbrev.c, bytecode.c, casefiddle.c, cmds.c, dispnew.c, doc.c:
19413 * doprnt.c, dosfns.c, frame.c, marker.c, minibuf.c, msdos.c:
19414 * w16select.c, w32bdf.c, w32console.c: Include "character.h" instead
19415 of "charset.h".
19416
19417 * dired.c, filelock.c: Include "character.h".
19418
19419 * alloc.c: Include "character.h" instead of "charset.h".
19420 (Fmake_char_table, make_sub_char_table): Move to chartab.c.
19421 (syms_of_alloc): Remove defsubr for Smake_char_table.
19422
19423 * buffer.c: Include "character.h" instead of "charset.h", don't
19424 include "coding.h".
19425 (Fset_buffer_multibyte): Adjust for UTF-8.
19426
19427 * buffer.h: EXFUN Fbuffer_live_p.
19428
19429 * callproc.c: Include "character.h" instead of "charset.h".
19430 (Fcall_process): Big change for the new code-conversion APIs.
19431
19432 * casetab.c: Include "character.h" instead of "charset.h".
19433 (set_canon, set_identity, shuffle): Adjust for the new
19434 map_char_table spec.
19435 (init_casetab_once): Call CHAR_TABLE_SET instead of directly
19436 accessing the char table structure.
19437
19438 * chartab.c: New file that implements char table.
19439
19440 * category.c: Include "character.h".
19441 (copy_category_entry): New function.
19442 (copy_category_table): Call map_char_table and copy_category_entry.
19443 (Fmake_category_table): Initialize all top-level slots.
19444 (char_category_set): New function.
19445 (modify_lower_category_set): Delete.
19446 (Fmodify_category_entry): Call char_table_ref_and_range.
19447
19448 * category.h (CATEGORY_SET): Just call char_category_set.
19449
19450 * ccl.c: Include "character.h".
19451 (Qccl, Qcclp): New variables.
19452 (CCL_WRITE_CHAR): Alway treat the arg CH as a character even if
19453 it's less than 256.
19454 (CCL_WRITE_MULTIBYTE_CHAR): Delete.
19455 (CCL_WRITE_STRING, CCL_READ_CHAR): Adjust for the change of SRC
19456 and DST type.
19457 (ccl_driver): Change types of argument, adjust code accordingly.
19458 (Fccl_execute, Fccl_execute_on_string): Adjust for the change of
19459 ccl_driver.
19460 (syms_of_ccl): Intern and staticpro Qccl and Qcclp.
19461
19462 * ccl.h (struct ccl_program): Delete members eol_type and multibyte.
19463 New members src_multibyte, dst_multibyte, consumed, and produced.
19464 (struct ccl_spec): Delete members decoder and encoder. New member ccl.
19465 (CODING_SPEC_CCL_PROGRAM): New macro.
19466 (ccl_driver): Update prototype.
19467 (Qccl, Qcclp, Fccl_program_p): Extern them.
19468 (CHECK_CCL_PROGRAM): New macro.
19469
19470 * character.c, character.h, chartab.c: New files.
19471
19472 * charset.c: Mostly re-written. Move character and multibyte sequence
19473 handling codes to character.c.
19474
19475 * charset.h: Mostly re-written. Move character and multibyte sequence
19476 handling codes to character.h.
19477
19478 * coding.c, coding.h: Mostly re-written.
19479
19480 * composite.c: Include "character.h" instead of "charset.h".
19481 (CHAR_WIDTH): Move to character.h.
19482 (HASH_KEY, HASH_VALUE): Delete.
19483
19484 * composite.h (enum composition_method): Change order of enumeration
19485 symbols.
19486
19487 * data.c: Include "character.h" instead of "charset.h".
19488 (Faref): Call CHAR_TABLE_REF for a char table.
19489 (Faset): Call CHAR_TABLE_SET for a char table.
19490
19491 * dispextern.h (free_realized_face, check_face_attribytes)
19492 (generate_ascii_font): Extern them.
19493 (free_realized_multibyte_face): Delete extern.
19494
19495 * disptab.h (DISP_CHAR_VECTOR): Adjust for the change of char
19496 table structure.
19497
19498 * editfns.c: Include "character.h" instead of "charset.h".
19499 (Fchar_to_string): Always call CHAR_STRING.
19500
19501 * emacs.c (main): Call init_charset_once, init_charset,
19502 syms_of_chartab, and syms_of_character.
19503
19504 * fileio.c: Include "character.h" instead of "charset.h".
19505 (Finsert_file_contents): Big change for the new code-conversion API.
19506 (choose_write_coding_system, Fwrite_region): Likewise.
19507 (build_annotations_2): Delete.
19508 (e_write): Big change for the new code-conversion API.
19509
19510 * fns.c: Include "character.h" instead of "charset.h".
19511 (copy_sub_char_table): Move to chartab.c.
19512 (Fcopy_sequence): Call copy_char_table for a char table.
19513 (concat): Delete codes calling count_multibyte.
19514 (string_char_to_byte, string_byte_to_char): Adjust for the new
19515 multibyte form.
19516 (internal_equal): Adjust for the change of char table structure.
19517 (Fchar_table_subtype, Fchar_table_parent, Fset_char_table_parent)
19518 (Fchar_table_extra_slot, Fset_char_table_extra_slot)
19519 (Fchar_table_range, Fset_char_table_range, Fset_char_table_default)
19520 (char_table_translate, optimize_sub_char_table)
19521 (Foptimize_char_table, map_char_table, Fmap_char_table): Move to
19522 chartab.c.
19523 (char_table_ref_and_index): Delete.
19524 (HASH_KEY, HASH_VALUE): Move to lisp.h.
19525 (Fmd5): Call preferred_coding_system instead of accessing
19526 Vcoding_category_list. Adjust for the new code-conversion API.
19527 (syms_of_fns): Move defsubr for char table related functions to
19528 chartab.c.
19529
19530 * fontset.c: Mostly re-written.
19531
19532 * fontset.h (struct font_info): Change type of the member encoding_type.
19533 (enum FONT_SPEC_INDEX): New enum.
19534 (fontset_font_pattern, fs_load_font): Update prototype.
19535 (FS_LOAD_FONT): Adjust for the change of fs_load_font.
19536
19537 * indent.c: Include "character.h" instead of "charset.h".
19538 (MULTIBYTE_BYTES_WIDTH): Call CHAR_WIDTH instead of WIDTH_BY_CHAR_HEAD.
19539
19540 * insdel.c: Include "character.h" instead of "charset.h".
19541 (copy_text): Don't refer to Vnonascii_translation_table.
19542 (insert_from_gap): New function.
19543
19544 * keyboard.c: Include "character.h" instead of "charset.h".
19545 (command_loop_1): Never call direct_output_forward_char before
19546 a non-ASCII character.
19547 (read_char): If Vkeyboard_translate_table is a char table, always
19548 translate a character.
19549
19550 * keymap.c: Include "character.h".
19551 (store_in_keymap): Handle the case that IDX is a cons.
19552 (Fdefine_key): Handle the case that KEY is a cons and the car part
19553 is also a cons (range).
19554 (push_key_description): Adjust for the new character code.
19555 (describe_vector): Call describe_char_table for a char table.
19556 (describe_char_table): New function.
19557
19558 * keymap.h (describe_char_table): Extern it.
19559
19560 * lisp.h (enum pvec_type): New member PVEC_SUB_CHAR_TABLE.
19561 (XSUB_CHAR_TABLE, XSETSUB_CHAR_TABLE): New macros.
19562 (CHAR_TABLE_ORDINARY_SLOTS, CHAR_TABLE_SINGLE_BYTE_SLOTS)
19563 (SUB_CHAR_TABLE_ORDINARY_SLOTS, SUB_CHAR_TABLE_STANDARD_SLOTS):
19564 Delete.
19565 (CHAR_TABLE_REF, CHAR_TABLE_SET): Adjust for the new char table
19566 structure.
19567 (CHAR_TABLE_TRANSLATE): Just call char_table_translate.
19568 (CHARTAB_SIZE_BITS_0, CHARTAB_SIZE_BITS_1, CHARTAB_SIZE_BITS_2)
19569 (CHARTAB_SIZE_BITS_3): New macros.
19570 (chartab_size): Extern it.
19571 (struct Lisp_Char_Table): Re-design.
19572 (struct Lisp_Sub_Char_Table): New structure.
19573 (HASH_KEY, HASH_VALUE): Move from fns.c.
19574 (CHARACTERBITS): Define as 22.
19575 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Adjust for the above change.
19576 (SUB_CHAR_TABLE_P): Check PVEC_CHAR_TABLE.
19577 (GC_SUB_CHAR_TABLE_P): New macro.
19578 (Fencode_coding_string, Fdecode_coding_string): Update EXFUN.
19579 (code_convert_string_norecord): Deleted extern.
19580 (init_character_once, syms_of_character, init_charset)
19581 (syms_of_composite, Qeq, Fmakehash, insert_from_gap): Extern them.
19582
19583 * lread.c: Include "character.h".
19584 (read_multibyte): New arg NBYTES.
19585 (read_escape): Change the meaning of returned *BYTEREP.
19586 (to_multibyte): Delete.
19587 (read1): Adjust the handling of char table and string.
19588
19589 * print.c: Include "character.h" instead of "charset.h".
19590 (print_string): Convert 8-bit raw bytes to octal form by
19591 string_escape_byte8.
19592 (print_object): Adjust for the new multibyte form. Print 8-bit
19593 raw bytes always in octal form. Handle sub char table correctly.
19594
19595 * process.c: Include "character.h" instead of "charset.h".
19596 (read_process_output, send_process): Adjust for the new
19597 code-conversion API.
19598
19599 * puresize.h (BASE_PURESIZE): Increase.
19600
19601 * regex.c: Include "character.h" instead of "charset.h".
19602 (BYTE8_TO_CHAR, CHAR_BYTE8_P) [not emacs]: New dummy macros.
19603 (regex_compile): Accept a range whose starting and ending
19604 character have different leading bytes.
19605 (analyse_first): Adjust for the above change.
19606
19607 * search.c: Include "character.h" instead of "charset.h".
19608 (search_buffer, boyer_moore): Adjust for the new multibyte form.
19609 (Freplace_match): Adjust for the change of multibyte_char_to_unibyte.
19610
19611 * syntax.c: Include "character.h" instead of "charset.h".
19612 (syntax_parent_lookup): Delete.
19613 (Fmodify_syntax_entry): Accept a cons as CHAR.
19614 (skip_chars): Adjust for the new multibyte form.
19615 (init_syntax_once): Call char_table_set_range instead of directly
19616 accessing the structure of a char table.
19617
19618 * syntax.h (SET_RAW_SYNTAX_ENTRY): Call CHAR_TABLE_SET.
19619 (SYNTAX_ENTRY_FOLLOW_PARENT): Delete macro.
19620 (SET_RAW_SYNTAX_ENTRY_RANGE): New macro.
19621 (SYNTAX_ENTRY_INT): Call CHAR_TABLE_REF.
19622
19623 * term.c: Include "buffer.h" and "character.h".
19624 (encode_terminal_code, write_glyphs): Adjust for the new
19625 code-conversion API.
19626 (produce_glyphs): Call CHAR_WIDTH instead of CHARSET_WIDTH.
19627
19628 * w32term.c (x_new_font): Adjust for the change of FS_LOAD_FONT.
19629
19630 * xdisp.c: Include "character.h".
19631 (get_next_display_element): Adjust for the new multibyte form.
19632 (disp_char_vector): Adjust for the new char table structure.
19633 (decode_mode_spec_coding): Adjust for the new structure of
19634 coding system.
19635 (decode_mode_spec): Adjust for the new code-conversion API.
19636
19637 * xfaces.c: Include "character.h" instead of "charset.h".
19638 (load_face_font): Adjust for the change of choose_face_font and
19639 FS_LOAD_FONT.
19640 (generate_ascii_font): New function.
19641 (set_lface_from_font_name): Adjust for the change of FS_LOAD_FONT.
19642 (set_font_frame_param): Adjust for the change of choose_face_font.
19643 (free_realized_face): Make it public.
19644 (free_realized_faces_for_fontset): Rename from
19645 free_realized_multibyte_face. Free also faces realized for ASCII.
19646 (choose_face_font): Change arguments. Adjust for the change of
19647 fontset_font_pattern and FS_LOAD_FONT.
19648
19649 * xfns.c: Include "character.h".
19650 (x_encode_text): Adjust for the new code-conversion API.
19651
19652 * xselect.c: Don't include "charset.h".
19653 (selection_data_to_lisp_data): Adjust for the new code conversion API.
19654
19655 * xterm.c: Include "character.h".
19656 (x_encode_char): New argument CHARSET. Change caller.
19657 (x_get_char_face_and_encoding, x_get_glyph_face_and_encoding):
19658 Call ENCODE_CHAR instead of SPLIT_CHAR.
19659 (x_produce_glyphs): Don't check Vnonascii_translation_table Call
19660 CHAR_WIDTH instead of CHARSET_WIDTH.
19661 (XTread_socket): Adjust for the new code-conversion API.
19662 (x_new_font): Adjust for the change of FS_LOAD_FONT.
19663 (x_load_font): Adjust for the change of struct font.
19664
196652008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
19666
19667 * xfaces.c (face_at_buffer_position): Remove unused vars.
19668
196692008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
19670
19671 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR):
19672 Fix overflow checking.
19673
196742008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
19675
19676 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR, ccl_driver):
19677 Cancel previous change.
19678
196792008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
19680
19681 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when
19682 ccl->eight_bit_control. Fix check for buffer overflow.
19683 (CCL_WRITE_MULTIBYTE_CHAR): Fix check for buffer overflow.
19684 (ccl_driver): Initialize extra_bytes to 0.
19685
196862008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
19687
19688 * keyboard.c (make_ctrl_char): If C is a multibyte character, just
19689 return it ORed with ctrl_modifier.
19690
196912008-01-29 Miles Bader <miles@gnu.org>
19692
19693 * macterm.c (XTset_vertical_scroll_bar): Fix merge mistake.
19694
196952008-01-28 Jason Rumney <jasonr@gnu.org>
19696
19697 * w32.c (stat): Don't double check for networked drive.
19698
196992008-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
19700
19701 * window.c (run_window_configuration_change_hook): New function.
19702 Code extracted from set_window_buffer. Set the selected frame.
19703 (set_window_buffer): Use it.
19704 * window.h (run_window_configuration_change_hook): Declare.
19705 * dispnew.c (change_frame_size_1): Use it instead of set-window-buffer.
19706
19707 * keyboard.c (read_char): Yet another int/Lisp_Object mixup (YAILOM).
19708
197092008-01-27 Dan Nicolaescu <dann@ics.uci.edu>
19710
19711 * Makefile.in: Remove references to unused macros.
19712
197132008-01-26 Eli Zaretskii <eliz@gnu.org>
19714
19715 * w32.c (g_b_init_get_sid_sub_authority)
19716 (g_b_init_get_sid_sub_authority_count): New static variables.
19717 (GetSidSubAuthority_Proc, GetSidSubAuthorityCount_Proc): New typedefs.
19718 (get_sid_sub_authority, get_sid_sub_authority_count): New functions.
19719 (init_user_info): Use them to retrieve uid and gid.
19720 Use 500/513, the Windows defaults, as Administrator's uid/gid.
19721 (fstat): Use pw_uid and pw_gid from the_passwd structure for
19722 st_uid and st_gid of the file.
19723
197242008-01-26 Jason Rumney <jasonr@gnu.org>
19725
19726 * w32.c (logon_network_drive): New function.
19727 (stat): Use it.
19728
197292008-01-26 Chong Yidong <cyd@stupidchicken.com>
19730
19731 * xdisp.c (pos_visible_p): Handle the case where charpos falls on
19732 invisible text covered with an ellipsis.
19733
197342008-01-25 Richard Stallman <rms@gnu.org>
19735
19736 * xdisp.c (redisplay_window): Run Qwindow_text_change_functions and
19737 jump back to beginning. Move some other initializations after that.
19738 (Qwindow_text_change_functions, Vwindow_text_change_functions):
19739 New variables.
19740 (syms_of_xdisp): Init them.
19741
19742 * keyboard.c (read_char): Restore echo_message_buffer after redisplay.
19743
19744 * buffer.c (reset_buffer_local_variables):
19745 Implement `permanent-local-hook'.
19746 (Qpermanent_local_hook): New variable.
19747 (syms_of_buffer): Init and staticpro it.
19748
197492008-01-25 Michael Albinus <michael.albinus@gmx.de>
19750
19751 * dbusbind.c (xd_retrieve_arg): Pacify GCC on x86_64 GNU/Linux.
19752
197532008-01-25 Thien-Thi Nguyen <ttn@gnuvola.org>
19754
19755 * fns.c (Fclrhash): Return TABLE.
19756
197572008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19758
19759 * macterm.c (x_scroll_bar_create): Initialize bar->redraw_needed_p.
19760 (XTset_vertical_scroll_bar): Redraw scroll bar if bar->redraw_needed_p
19761 is set even without positional changes.
19762 (x_scroll_bar_clear): Set bar->redraw_needed_p.
19763
19764 * macterm.h (struct scroll_bar): New member `redraw_needed_p'.
19765
197662008-01-23 Jason Rumney <jasonr@gnu.org>
19767
19768 * xterm.c (handle_one_xevent): Revert to counting chars not bytes.
19769
19770 * w32term.c (w32_read_socket) <WM_CHAR>: Decode characters outside
19771 the unicode range available in MULE by locale-coding-system.
19772 Improve dbcs lead byte detection. Set event timestamp and modifiers
19773 earlier.
19774
197752008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19776
19777 * mac.c (mac_emacs_pid) [MAC_OSX]: New variable.
19778 [MAC_OSX] (init_mac_osx_environment): Initialize it.
19779 [MAC_OSX] (mac_try_close_socket) [SELECT_USE_CFSOCKET]: Return 0
19780 when used on child processes.
19781
197822008-01-21 Michael Albinus <michael.albinus@gmx.de>
19783
19784 * dbusbind.c (Fdbus_method_return_internal): Rename from
19785 Fdbus_method_return.
19786 (Fdbus_unregister_object): Move to dbus.el.
19787 (Fdbus_call_method, Fdbus_method_return_internal)
19788 (Fdbus_send_signal): Improve debug messages.
19789
197902008-01-20 Martin Rudalics <rudalics@gmx.at>
19791
19792 * undo.c (undo_inhibit_record_point): New variable.
19793 (syms_of_undo): Initialize it.
19794 (record_point): Don't record point when undo_inhibit_record_point
19795 is set.
19796
197972008-01-19 Stefan Monnier <monnier@iro.umontreal.ca>
19798
19799 * process.c (list_processes_1): Don't use SCHARS on a nil buffer name.
19800
19801 * xdisp.c (Qauto_hscroll_mode): New var.
19802 (syms_of_xdisp): Initialize it.
19803 (hscroll_window_tree): Use it to lookup `auto-hscroll-mode' in each
19804 window's buffer.
19805 (hscroll_windows): Don't check automatic_hscrolling_p here.
19806
19807 * window.c (set_window_buffer): Don't unnecessarily reset hscroll and
19808 vscroll if we're setting window-buffer to the value it already has.
19809
198102008-01-18 Dan Nicolaescu <dann@ics.uci.edu>
19811
19812 * m/intel386.h: Remove references to XENIX.
19813
198142008-01-17 Andreas Schwab <schwab@suse.de>
19815
19816 * m/amdx86-64.h (START_FILES, LIB_STANDARD): Use HAVE_LIB64_DIR
19817 instead of HAVE_X86_64_LIB64_DIR.
19818 * m/ibms390x.h (START_FILES, LIB_STANDARD): Likewise.
19819
198202008-01-17 Glenn Morris <rgm@gnu.org>
19821
19822 * m/ibms390x.h (START_FILES, LIB_STANDARD): Adjust value according
19823 to HAVE_X86_64_LIB64_DIR.
19824
198252008-01-16 Dan Nicolaescu <dann@ics.uci.edu>
19826
19827 * s/irix3-3.h:
19828 * s/irix4-0.h:
19829 * s/386-ix.h:
19830 * s/domain.h:
19831 * s/hpux9-x11r4.h:
19832 * s/hpux9shxr4.h: Remove files for systems no longer supported.
19833
19834 * sysdep.c: Remove code containing references to symbols defined
19835 by unsupported systems.
19836
198372008-01-16 Glenn Morris <rgm@gnu.org>
19838
19839 * coding.c (select-safe-coding-system-function): Doc fix.
19840
198412008-01-15 Glenn Morris <rgm@gnu.org>
19842
19843 * config.in: Revert 2008-01-13 change: this is a generated file.
19844
198452008-01-13 Tom Tromey <tromey@redhat.com>
19846
19847 * lisp.h: Fix typo.
19848
198492008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
19850
19851 * m/sequent-ptx.h:
19852 * m/sequent.h:
19853 * s/ptx.h:
19854 * s/ptx4-2.h:
19855 * s/ptx4.h: Remove files for systems no longer supported.
19856
19857 * callproc.c (Fcall_process): Fix previous change.
19858
198592008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
19860
19861 * unexsunos4.c: Remove file, system not supported anymore.
19862
19863 * m/mips.h:
19864 * m/intel386.h:
19865 * callproc.c:
19866 * config.in:
19867 * ecrt0.c:
19868 * emacs.c:
19869 * fileio.c:
19870 * frame.c:
19871 * getpagesize.h:
19872 * keyboard.c:
19873 * lread.c:
19874 * process.c:
19875 * puresize.h:
19876 * sysdep.c:
19877 * systty.h:
19878 * syswait.h:
19879 * unexec.c:
19880 * xdisp.c:
19881 * alloc.c: Remove code containing references to symbols defined by
19882 unsupported systems.
19883
198842008-01-11 Kenichi Handa <handa@ni.aist.go.jp>
19885
19886 * coding.c (detect_coding_mask): Fix previous change.
19887
198882008-01-09 Kenichi Handa <handa@ni.aist.go.jp>
19889
19890 * coding.c (detect_coding_iso2022): New arg
19891 latin_extra_code_state. Allow Latin extra codes only
19892 when *latin_extra_code_state is nonzero.
19893 (detect_coding_mask): If there is a NULL byte, detect the encoding
19894 as UTF-16 or binary. If Latin extra codes exist, detect the
19895 encoding as ISO-2022 only when there's no other proper encoding is
19896 found.
19897
198982008-01-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19899
19900 * frame.c (Fmake_terminal_frame): Use #ifdef MAC_OS8 instead of
19901 #ifdef MAC_OS.
19902
199032008-01-08 Richard Stallman <rms@gnu.org>
19904
19905 * fileio.c (Ffile_name_directory, Fexpand_file_name): Doc fixes.
19906
199072008-01-06 Nick Roberts <nickrob@snap.net.nz>
19908
19909 * keyboard.c (parse_menu_item): Don't enclose key bindings on
19910 menu bar in parentheses.
19911
199122008-01-06 Dan Nicolaescu <dann@ics.uci.edu>
19913
19914 * m/7300.h:
19915 * m/acorn.h:
19916 * m/alliant-2800.h:
19917 * m/alliant.h:
19918 * m/alliant1.h:
19919 * m/alliant4.h:
19920 * m/altos.h:
19921 * m/amdahl.h:
19922 * m/apollo.h:
19923 * m/att3b.h:
19924 * m/aviion-intel.h:
19925 * m/aviion.h:
19926 * m/celerity.h:
19927 * m/clipper.h:
19928 * m/cnvrgnt.h:
19929 * m/convex.h:
19930 * m/cydra5.h:
19931 * m/delta88k.h:
19932 * m/dpx2.h:
19933 * m/dual.h:
19934 * m/elxsi.h:
19935 * m/f301.h:
19936 * m/gould-np1.h:
19937 * m/gould.h:
19938 * m/i860.h:
19939 * m/ibmps2-aix.h:
19940 * m/ibmrt-aix.h:
19941 * m/ibmrt.h:
19942 * m/irist.h:
19943 * m/is386.h:
19944 * m/isi-ov.h:
19945 * m/mega68.h:
19946 * m/mg1.h:
19947 * m/news-r6.h:
19948 * m/news-risc.h:
19949 * m/news.h:
19950 * m/nh3000.h:
19951 * m/nh4000.h:
19952 * m/ns16000.h:
19953 * m/ns32000.h:
19954 * m/nu.h:
19955 * m/orion.h:
19956 * m/orion105.h:
19957 * m/paragon.h:
19958 * m/pfa50.h:
19959 * m/plexus.h:
19960 * m/pyramid.h:
19961 * m/pyrmips.h:
19962 * m/sh3el.h:
19963 * m/sps7.h:
19964 * m/sr2k.h:
19965 * m/stride.h:
19966 * m/sun1.h:
19967 * m/sun2.h:
19968 * m/sun3-68881.h:
19969 * m/sun3-fpa.h:
19970 * m/sun3-soft.h:
19971 * m/sun3.h:
19972 * m/sun386.h:
19973 * m/symmetry.h:
19974 * m/tad68k.h:
19975 * m/tahoe.h:
19976 * m/targon31.h:
19977 * m/tek4300.h:
19978 * m/tekxd88.h:
19979 * m/tower32.h:
19980 * m/tower32v3.h:
19981 * m/ustation.h:
19982 * m/wicat.h:
19983 * m/xps100.h:
19984 * s/cxux.h:
19985 * s/cxux7.h:
19986 * s/dgux.h:
19987 * s/dgux4.h:
19988 * s/dgux5-4-3.h:
19989 * s/dgux5-4r2.h:
19990 * s/esix.h:
19991 * s/esix5r4.h:
19992 * s/hiuxmpp.h:
19993 * s/hiuxwe2.h:
19994 * s/iris3-5.h:
19995 * s/iris3-6.h:
19996 * s/isc2-2.h:
19997 * s/isc3-0.h:
19998 * s/isc4-0.h:
19999 * s/isc4-1.h:
20000 * s/newsos5.h:
20001 * s/newsos6.h:
20002 * s/osf1.h:
20003 * s/osf5-0.h:
20004 * s/riscix1-1.h:
20005 * s/riscix12.h:
20006 * s/sco4.h:
20007 * s/sco5.h:
20008 * s/sunos4-0.h:
20009 * s/sunos4-1.h:
20010 * s/sunos413.h:
20011 * s/sunos4shr.h:
20012 * s/umax.h:
20013 * s/unipl5-2.h:
20014 * s/xenix.h:
20015 * cxux-crt0.s:
20016 * unexapollo.c:
20017 * unexconvex.c:
20018 * unexenix.c:
20019 * unexsni.c: Remove files for systems no longer supported.
20020
20021 * m/intel386.h: Remove references to unsupported systems.
20022
20023 * w32.c (get_emacs_configuration): Remove reference to i860.
20024
20025 * sysdep.c: Remove dead code.
20026
200272008-01-05 Dan Nicolaescu <dann@ics.uci.edu>
20028
20029 * s/rtu.h:
20030 * m/masscomp.h: Remove files. Platform is obsolete.
20031
200322008-01-04 Michael Albinus <michael.albinus@gmx.de>
20033
20034 * dbusbind.c (Fdbus_method_return): New function.
20035 (xd_read_message): Add the serial number to the event.
20036 (Fdbus_register_method): Activate the function.
20037
200382008-01-03 Stefan Monnier <monnier@iro.umontreal.ca>
20039
20040 * keyboard.c (read_key_sequence): Fix typo.
20041
200422008-01-03 Michael Albinus <michael.albinus@gmx.de>
20043
20044 * dbusbind.c (all): Replace XCAR by CAR_SAFE and XCDR by CDR_SAFE.
20045 (xd_signature, xd_append_arg): Handle element type detection for
20046 empty arrays.
20047 (Fdbus_call_method, Fdbus_send_signal): Undo type casting for
20048 SDATA () calls; this must be solved more general.
20049 (Fdbus_register_signal): Use SBYTES instead of strlen.
20050
200512008-01-03 Magnus Henoch <magnus@zemdatav>
20052
20053 * dbusbind.c (xd_append_arg): Use unsigned char instead of
20054 unsigned int for byte values (necessary for big-endian platform).
20055 (Fdbus_call_method): Handle the case of no returned arguments.
20056
200572007-12-31 Tom Tromey <tromey@redhat.com> (tiny change)
20058
20059 * dbusbind.c (xd_read_message): Use non-static input_event struct.
20060
200612007-12-31 Magnus Henoch <mange@freemail.hu>
20062
20063 * dbusbind.c (xd_signature): Signature of variant is just "v".
20064
200652007-12-30 Michael Albinus <michael.albinus@gmx.de>
20066
20067 * dbusbind.c: Fix several errors and compiler warnings.
20068 Reported by Tom Tromey <tromey@redhat.com>.
20069 (XD_ERROR, XD_DEBUG_MESSAGE)
20070 (XD_DEBUG_VALID_LISP_OBJECT_P): Wrap code with "do ... while (0)".
20071 (xd_append_arg): Part for basic D-Bus types rewritten.
20072 (xd_retrieve_arg): Split implementation of DBUS_TYPE_BYTE and
20073 DBUS_TYPE_(U)INT16. Don't call XD_DEBUG_MESSAGE with "%f" if not
20074 appropriate.
20075 (xd_read_message): Return Qnil. Don't signal an error; it is not
20076 useful during event reading.
20077 (Fdbus_register_signal): Signal an error if the check for
20078 FUNCTIONP fails.
20079 (Fdbus_register_method): New function. The implementation is not
20080 complete, the call of the function signals an error therefore.
20081 (Fdbus_unregister_object): New function, renamed from
20082 Fdbus_unregister_signal. The initial check signals an error, if
20083 the object is not well formed.
20084
200852007-12-30 Richard Stallman <rms@gnu.org>
20086
20087 * textprop.c (get_char_property_and_overlay):
20088 Signal error if POSITION is out of range in a buffer.
20089
200902007-12-29 Martin Rudalics <rudalics@gmx.at>
20091
20092 * w32fns.c (Fx_create_frame): Make copy of frame parameters
20093 because the original parameters are in pure storage now.
20094
200952007-12-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20096
20097 * xdisp.c (phys_cursor_in_rect_p): Check if cursor is in fringe area.
20098
200992007-12-22 Eli Zaretskii <eliz@gnu.org>
20100
20101 * callint.c (syms_of_callint) <command-history>: Add reference to
20102 history-length in the doc string.
20103
201042007-12-17 Jason Rumney <jasonr@gnu.org>
20105
20106 * w32fns.c (w32_wnd_proc) <WM_KEYDOWN>: Cast char to unsigned
20107 before passing as wParam.
20108
201092007-12-22 Michael Albinus <michael.albinus@gmx.de>
20110
20111 * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_BYTE,
20112 DBUS_TYPE_INT16, DBUS_TYPE_UINT16, DBUS_TYPE_INT64,
20113 DBUS_TYPE_UINT64, DBUS_TYPE_DOUBLE and DBUS_TYPE_SIGNATURE.
20114 Return float when DBUS_TYPE_INT32 or DBUS_TYPE_UINT32 do not fit
20115 as number.
20116 (Fdbus_call_method): Fix docstring.
20117
201182007-12-21 Michael Albinus <michael.albinus@gmx.de>
20119
20120 * dbusbind.c (XD_BASIC_DBUS_TYPE, XD_DBUS_TYPE_P, XD_NEXT_VALUE):
20121 New macros.
20122 (XD_SYMBOL_TO_DBUS_TYPE): Rename from XD_LISP_SYMBOL_TO_DBUS_TYPE.
20123 (XD_OBJECT_TO_DBUS_TYPE): Rename from XD_LISP_OBJECT_TO_DBUS_TYPE.
20124 Simplify.
20125 (xd_signature): New function.
20126 (xd_append_arg): Compute also signatures. Major rewrite.
20127 (xd_retrieve_arg): Make debug messages friendly.
20128 (Fdbus_call_method, Fdbus_send_signal): Extend docstring.
20129 Check for signatures of arguments.
20130
201312007-12-19 Michael Albinus <michael.albinus@gmx.de>
20132
20133 * dbusbind.c (QCdbus_type_byte, QCdbus_type_boolean)
20134 (QCdbus_type_int16, QCdbus_type_uint16, QCdbus_type_int32)
20135 (QCdbus_type_uint32, QCdbus_type_int64, QCdbus_type_uint64)
20136 (QCdbus_type_double, QCdbus_type_string, QCdbus_type_object_path)
20137 (QCdbus_type_signature, QCdbus_type_array, QCdbus_type_variant)
20138 (QCdbus_type_struct, QCdbus_type_dict_entry): New D-Bus type symbols.
20139 (XD_LISP_SYMBOL_TO_DBUS_TYPE): New macro.
20140 (XD_LISP_OBJECT_TO_DBUS_TYPE): Add compound types.
20141 (xd_retrieve_value): Remove. Functionality included in ...
20142 (xd_append_arg): New function.
20143 (Fdbus_call_method, Fdbus_send_signal): Apply it.
20144
201452007-12-16 Michael Albinus <michael.albinus@gmx.de>
20146
20147 * dbusbind.c (top): Include <stdio.h>.
20148 (Fdbus_call_method, Fdbus_send_signal): Apply type cast in
20149 dbus_message_new_method_call and dbus_message_new_signal.
20150 (Fdbus_register_signal): Rename unique_name to uname.
20151 Check handler for FUNCTIONP instead of CHECK_SYMBOL. Handle case of
20152 non-existing unique name. Fix typos in matching rule. Return an
20153 object which is useful in Fdbus_unregister_signal.
20154 (Fdbus_unregister_signal): Reimplementation, in order to remove
20155 only the corresponding entry.
20156 (Vdbus_registered_functions_table): Change the order of entries.
20157 Apply these changes in xd_read_message and Fdbus_register_signal.
20158
201592007-12-16 Andreas Schwab <schwab@suse.de>
20160
20161 * fileio.c (Finsert_file_contents): Fix overflow check to not
20162 depend on undefined integer overflow.
20163
201642007-12-14 Jason Rumney <jasonr@gnu.org>
20165
20166 * w32term.c (w32_read_socket): Use MULTIBYTE_CHAR_KEYSTROKE_EVENT
20167 for characters above 127.
20168
201692007-12-13 Jason Rumney <jasonr@gnu.org>
20170
20171 * w32fns.c (w32_wnd_proc, Fw32_reconstruct_hot_key): Range check
20172 before dereferencing array.
20173 (lookup_vk_code): Remove zero comparison.
20174
201752007-12-14 Michael Albinus <michael.albinus@gmx.de>
20176
20177 * dbusbind.c (xd_retrieve_value, xd_retrieve_arg)
20178 (Fdbus_call_method, Fdbus_send_signal, xd_read_message):
20179 Use `unsigned int' instead of `uint'.
20180 (xd_read_message, Fdbus_register_signal): Split expressions into
20181 multiple lines before operators "&&" and "||", according to the
20182 GNU Coding Standards.
20183
201842007-12-14 Eli Zaretskii <eliz@gnu.org>
20185
20186 * dispextern.h (WINDOWS_NT): Fix incorrect spelling of WINDOWSNT.
20187
201882007-12-12 Juri Linkov <juri@jurta.org>
20189
20190 * buffer.c (Frename_buffer): In interactive spec replace
20191 `read-buffer' with `read-string' that uses `buffer-name-history'
20192 as history, and the current buffer's name as default.
20193
201942007-12-10 Stefan Monnier <monnier@iro.umontreal.ca>
20195
20196 * keyboard.c (Fcommand_execute): Call Qcall_interactively instead of
20197 manipulating the backtrace manually.
20198 (make_lispy_event): Merge the ASCII and MULTIBYTE cases.
20199 (struct backtrace, backtrace_list): Remove.
20200 (command_loop_1): Remove dead var `no_direct'.
20201
20202 * buffer.c (reset_buffer_local_variables): If permanent_too is 0, also
20203 preserve non-built-in buffer-local variables.
20204 (Fkill_all_local_variables): Don't re-create&re-set permanent
20205 buffer-local variables.
20206
202072007-12-09 Juri Linkov <juri@jurta.org>
20208
20209 * buffer.c (Frename_buffer): Change interactive spec from "s" to
20210 Lisp code that uses `read-buffer' with current buffer as default.
20211
202122007-12-08 Michael Albinus <michael.albinus@gmx.de>
20213
20214 * dbusbind.c (xd_read_message): Generate an event for every
20215 registered handler. There might be several handlers registered
20216 for the same signal.
20217 (Fdbus_register_signal): Don't overwrite a registration for the
20218 same signal. Add a new registration if handlers are different.
20219 (Vdbus_registered_functions_table): Rework doc string.
20220
202212007-12-07 Michael Albinus <michael.albinus@gmx.de>
20222
20223 * dbusbind.c (Fdbus_get_unique_name, xd_read_message)
20224 (Fdbus_register_signal): Use DBUS_MAXIMUM_NAME_LENGTH and
20225 DBUS_MAXIMUM_MATCH_RULE_LENGTH for string lengths.
20226 (Fdbus_call_method, Fdbus_send_signal, Fdbus_register_signal):
20227 Unify argument lists.
20228 (xd_read_message, Fdbus_register_signal): Reorder and extend event
20229 arguments and hash table keys. Use unique name for service.
20230 (Fdbus_unregister_signal): Remove checks.
20231 (Vdbus_registered_functions_table): Fix doc string.
20232
202332007-12-05 Magnus Henoch <mange@freemail.hu>
20234
20235 * process.c (make_process): Initialize pty_flag to 0.
20236
202372007-12-05 Jason Rumney <jasonr@gnu.org>
20238
20239 * image.c (xbm_load) [WINDOWSNT]: Shuffle the bits of directly
20240 specified XBMs.
20241
202422007-12-05 Richard Stallman <rms@gnu.org>
20243
20244 * xdisp.c (syms_of_xdisp) <scroll-conservatively>: Doc fix.
20245
202462007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20247
20248 * mac.c (cfsockets_for_select) [MAC_OSX && SELECT_USE_CFSOCKET]:
20249 New variable.
20250 (mac_try_close_socket) [MAC_OSX]: New function.
20251 [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]:
20252 Update cfsockets_for_select. Replace invalid CFRunLoop source.
20253
20254 * sysdep.c (emacs_close) [MAC_OSX && HAVE_CARBON]:
20255 Use mac_try_close_socket.
20256
202572007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20258
20259 * unexmacosx.c (unrelocate): New argument BASE. Use it instead of
20260 reloc_base.
20261 (copy_dysymtab): Compute relocation base here.
20262 (rebase_reloc_address) [__ppc64__]: New function.
20263 (copy_dysymtab) [__ppc64__]: Use it if relocation base needs to be
20264 changed.
20265
202662007-12-05 Jason Rumney <jasonr@gnu.org>
20267
20268 * w32proc.c (sys_spawnve): Quote args with wildcards.
20269
202702007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20271
20272 * unexmacosx.c (copy_data_segment): Also copy __gcc_except_tab and
20273 __objc_* sections.
20274 (unrelocate) [_LP64]: Set relocation base to address of data segment.
20275
202762007-12-05 Michael Albinus <michael.albinus@gmx.de>
20277
20278 * dbusbind.c (xd_read_message): Return value is a Lisp_Object.
20279 Move check for Vdbus_registered_functions_table to
20280 xd_read_queued_messages.
20281 (xd_read_queued_messages): Protect xd_read_message calls by
20282 internal_condition_case_1.
20283
202842007-12-04 Michael Albinus <michael.albinus@gmx.de>
20285
20286 * dbusbind.c (QCdbus_system_bus, QCdbus_session_bus): Rename from
20287 Qdbus_system_bus and Qdbus_session_bus, respectively.
20288 (Vdbus_intern_symbols): Remove.
20289 (Vdbus_registered_functions_table): New hash table.
20290 (XD_SYMBOL_INTERN_SYMBOL): Remove.
20291 (xd_read_message, Fdbus_register_signal, Fdbus_unregister_signal):
20292 Rewrite in order to manage registered functions by hash table
20293 Vdbus_registered_functions_table.
20294
202952007-12-03 Jan Djärv <jan.h.d@swipnet.se>
20296
20297 * xterm.c: Update URL to Window Manager Specification in comment.
20298
202992007-12-02 Michael Albinus <michael.albinus@gmx.de>
20300
20301 * config.in (HAVE_DBUS): Add.
20302
20303 * Makefile.in (HAVE_DBUS): Add D-Bus definitions if defined.
20304 (ALL_CFLAGS): Add ${DBUS_CFLAGS}.
20305 (obj): Add $(DBUS_OBJ).
20306 (LIBES): Add $(DBUS_LIBS).
20307 (dbusbind.o): New target.
20308
20309 * dbusbind.c: New file.
20310
20311 * emacs.c (main): Call syms_of_dbusbind when HAVE_DBUS is defined.
20312
20313 * keyboard.c: All D-Bus related code is wrapped by "#ifdef HAVE_DBUS".
20314 (Qdbus_event): New Lisp symbol.
20315 (kbd_buffer_get_event, make_lispy_event): Handle DBUS_EVENT.
20316 (gobble_input): Call xd_read_queued_messages, reading D-Bus messages.
b97439ce 20317 (keys_of_keyboard): Define dbus-event.
aac0c6e3
MR
20318
20319 * termhooks.h (event_kind): Add DBUS_EVENT when HAVE_DBUS is defined.
20320
203212007-12-01 Richard Stallman <rms@gnu.org>
20322
20323 * search.c (syms_of_search) <inhibit-changing-match-data>: Doc fix.
20324
203252007-11-30 Jason Rumney <jasonr@gnu.org>
20326
20327 * w32console.c (w32con_ins_del_lines, scroll_line): Clip to window.
20328 (w32con_reset_terminal_modes): Clear screen buffer.
20329 (w32_face_attributes): Don't use color indexes that are out of range.
20330 Only reverse the default colors.
20331
20332 * xfaces.c (map_tty_color, tty_color_name): Remove special case for
20333 WINDOWSNT.
20334
20335 * w32console.c, w32term.h (vga_stdcolor_name): Remove.
20336
203372007-11-29 Jason Rumney <jasonr@gnu.org>
20338
20339 * w32console.c: Leave HAVE_WINDOW_SYSTEM defined.
20340 (w32_face_attributes): Use Vtty_defined_color_alist to determine
20341 if the terminal colors are initialized.
20342 (unspecified_fg, unspecified_bg): Remove unused declarations.
20343
203442007-11-29 Andreas Schwab <schwab@suse.de>
20345
20346 * keyboard.c (apply_modifiers): Fix typo.
20347
203482007-11-29 Richard Stallman <rms@gnu.org>
20349
20350 * keymap.c (Fcurrent_local_map): Doc fix.
20351
203522007-11-28 Petr Salinger <Petr.Salinger@seznam.cz> (tiny change)
20353
20354 * s/gnu-kfreebsd.h: New file.
20355
203562007-11-28 Stefan Monnier <monnier@iro.umontreal.ca>
20357
20358 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer):
20359 Don't cast redundantly.
20360
20361 * keyboard.c (KEY_TO_CHAR): New macro.
20362 (parse_modifiers, apply_modifiers): Accept integer arguments.
20363 (read_key_sequence): Use them to unify the "shift->unshift" mapping
20364 for chars and symbol keys.
20365 After doing such remapping, apply function-key-map again.
20366
203672007-11-27 Dan Nicolaescu <dann@ics.uci.edu>
20368
20369 * Makefile.in (SOME_MACHINE_LISP): Remove VMS files, they are not
20370 compiled anymore.
20371
203722007-11-26 Andreas Schwab <schwab@suse.de>
20373
20374 * process.c (list_processes_1): Fix indentation level of the
20375 command column.
20376
203772007-11-23 Andreas Schwab <schwab@suse.de>
20378
20379 * editfns.c (Fformat): Handle %c specially since it requires the
20380 argument to be of type int.
20381
203822007-11-23 Markus Triska <markus.triska@gmx.at>
20383
20384 * emacs.c (main): Call init_editfns before init_process, since
20385 init_process sets Vprocess_connection_type depending on OS release.
20386
203872007-11-22 Stefan Monnier <monnier@iro.umontreal.ca>
20388
20389 * data.c (do_symval_forwarding): Use same code as in find_symbol_value.
20390 (find_symbol_value): Use do_symval_forwarding.
20391
20392 * data.c (set_internal): Set the value in the `cons-cell' (for
20393 Buffer_Local_values) not only for frame-local variables.
20394
203952007-11-22 Andreas Schwab <schwab@suse.de>
20396
20397 * data.c (Fnumber_to_string): Add cast when passing EMACS_INT
20398 values to sprintf.
20399 * keymap.c (Fsingle_key_description): Likewise.
20400 * print.c (print_object): Likewise.
20401
204022007-11-22 Jan Djärv <jan.h.d@swipnet.se>
20403
20404 * gtkutil.c (update_frame_tool_bar): Don't call x-gtk-map-stock if
20405 file for image is nil.
20406
204072007-11-22 Dan Nicolaescu <dann@ics.uci.edu>
20408
20409 * term.c: Include stdarg.h.
20410 (fatal): Implement using varargs.
20411 * lisp.h (fatal): Add argument types. (Restore 2005-09-30 change).
20412
204132007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
20414
20415 * lisp.h (struct Lisp_Buffer_Objfwd): Add a `slottype' field.
20416 * data.c (store_symval_forwarding): Get type from buffer_objfwd.
20417 Update call to buffer_slot_type_mismatch.
20418 * buffer.h (buffer_local_types, PER_BUFFER_TYPE): Remove.
20419 (buffer_slot_type_mismatch): Update.
20420 * buffer.c (buffer_local_types): Remove.
20421 (buffer_slot_type_mismatch): Get the symbol and type as arguments.
20422 (defvar_per_buffer): Set the type in the buffer_objfwd.
20423
204242007-11-21 Jason Rumney <jasonr@gnu.org>
20425
20426 * w32bdf.c (w32_init_bdf_font, w32_BDF_to_x_font):
20427 CreateFileMapping returns NULL on failure.
20428
204292007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
20430
20431 * search.c (Fset_match_data): Remove the `evaporate' feature.
20432 (unwind_set_match_data): Don't use the `evaporate' feature.
20433
204342007-11-21 Jason Rumney <jasonr@gnu.org>
20435
20436 * dispnew.c (init_display) [WINDOWSNT]: Hardcode terminal_type.
20437
20438 * w32console.c (w32con_write_glyphs): Remove unused variables.
20439
204402007-11-20 Dan Nicolaescu <dann@ics.uci.edu>
20441
20442 * macterm.c (mac_term_init): Call add_keyboard_wait_descriptor.
20443
20444 * s/darwin.h (MULTI_KBOARD): Remove.
20445
20446 * macfns.c (x_create_tip_frame, Fx_create_frame)
20447 (x_create_tip_frame): Don't deal with MULTI_KBOARD.
20448
204492007-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
20450
20451 * buffer.c (Fbuffer_local_value): Remove redundant test.
20452 (swap_out_buffer_local_variables): Swap out binding in `buffer' rather
20453 than in `current-buffer' to match the comment.
20454 Do the swap using swap_in_global_binding.
20455
20456 * data.c (store_symval_forwarding, set_internal):
20457 * eval.c (specbind): Remove dead code.
20458
20459 * coding.c (detect_coding, Fupdate_coding_systems_internal):
20460 * fns.c (Fmd5): Use find_symbol_value rather than SYMBOL_VALUE
20461 Since we do not want to see internal Lisp_*fwd objects here.
20462
204632007-11-18 Jan Djärv <jan.h.d@swipnet.se>
20464
20465 * sysdep.c (init_system_name): Use getaddrinfo if available.
20466
20467 * xterm.c (x_scroll_bar_set_handle, x_scroll_bar_handle_click)
20468 (x_scroll_bar_note_movement): start, end, with, height in struct
20469 scroll_bar are integers and not Lisp_Object, so remove XINT for them.
20470
204712007-11-17 Dan Nicolaescu <dann@ics.uci.edu>
20472
20473 * puresize.h (BASE_PURESIZE): Increase to 1190000.
20474
204752007-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
20476
20477 * buffer.h (struct buffer): Move `undo_list' back to before `name'.
20478 This undoes Richard's change of 14-Oct-2002.
20479
20480 * alloc.c (allocate_other_vector):
20481 * lisp.h (allocate_other_vector): Remove.
20482
20483 * window.c (struct save_window_data): Move non-lisp data to the end
20484 and make it `int' rather than Lisp_Object.
20485 (Fcurrent_window_configuration): Use ALLOCATE_PSEUDOVECTOR.
20486 Done wrap/unwrap integer values.
20487 (Fset_window_configuration, compare_window_configurations):
20488 Update use of fields to their new types.
20489
20490 * xterm.h (struct scroll_bar): Only use Lisp_Object for lisp data.
20491 Turn integer fields into `int'. Merge x_window_low and x_window_high.
20492 (SCROLL_BAR_PACK, SCROLL_BAR_UNPACK, SCROLL_BAR_X_WINDOW)
20493 (SET_SCROLL_BAR_X_WINDOW): Remove.
20494 (SCROLL_BAR_X_WIDGET, SET_SCROLL_BAR_X_WIDGET):
20495 Access the new x_window field directly.
20496 * xterm.c (x_scroll_bar_create): Use a pseudovector.
20497 Don't wrap/unwrap integers into Lisp_Objects.
20498 (XTset_vertical_scroll_bar, x_scroll_bar_handle_click)
20499 (x_scroll_bar_report_motion):
20500 Don't wrap/unwrap integers into Lisp_Objects.
20501 (x_term_init): Use SDATA.
20502 (x_window_to_scroll_bar, x_create_toolkit_scroll_bar)
20503 (x_scroll_bar_set_handle, x_scroll_bar_remove)
20504 (XTset_vertical_scroll_bar, x_scroll_bar_expose)
20505 (x_scroll_bar_report_motion, x_scroll_bar_clear):
20506 * xfns.c (x_set_background_color):
20507 * gtkutil.c (xg_create_scroll_bar, xg_set_toolkit_scroll_bar_thumb):
20508 Access the new x_window field directly.
20509
20510 * alloc.c (ALLOCATE_PSEUDOVECTOR): Move to lisp.h.
20511 (allocate_pseudovector): Make non-static.
20512
20513 * lisp.h (enum pvec_type): New tag PVEC_OTHER.
20514 (allocate_pseudovector): Declare.
20515 (ALLOCATE_PSEUDOVECTOR): Move from alloc.c.
20516
205172007-11-15 Andreas Schwab <schwab@suse.de>
20518
20519 * editfns.c (Fformat): Correctly format EMACS_INT values.
20520 Also take precision into account when formatting an integer.
20521
20522 * keyboard.c (Fevent_symbol_parse_modifiers): Fix declaration.
20523
205242007-11-15 Stefan Monnier <monnier@iro.umontreal.ca>
20525
20526 * keyboard.c (Fevent_symbol_parse_modifiers): New function.
20527 (syms_of_keyboard): Defsubr it.
20528
20529 * data.c (swap_in_global_binding): Fix longstanding bug where
20530 store_symval_forwarding was not called with the right second argument,
20531 thus causing objfwd-ing from being dropped.
20532
205332007-11-14 Juanma Barranquero <lekktu@gmail.com>
20534
20535 * macfns.c (Fx_create_frame, Fx_display_pixel_width)
20536 (Fx_display_pixel_height, Fx_display_planes)
20537 (Fx_display_color_cells, Fx_server_max_request_size)
20538 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
20539 (Fx_display_visual_class, Fx_display_save_under):
20540 * w32fns.c (Fx_create_frame, Fx_display_pixel_width)
20541 (Fx_display_pixel_height, Fx_display_planes)
20542 (Fx_display_color_cells, Fx_server_max_request_size)
20543 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
20544 (Fx_display_mm_height, Fx_display_mm_width)
20545 (Fx_display_backing_store, Fx_display_visual_class)
20546 (Fw32_select_font, Fx_display_save_under):
20547 * xfns.c (Fx_create_frame, Fx_display_pixel_width)
20548 (Fx_display_pixel_height, Fx_display_planes)
20549 (Fx_display_color_cells, Fx_server_max_request_size)
20550 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
20551 (Fx_display_save_under): Fix typos in docstrings.
20552
205532007-11-14 Juanma Barranquero <lekktu@gmail.com>
20554
20555 * w32fns.c (Fw32_registered_hot_keys): Don't return the nil values
20556 corresponding to deleted entries; they are an implementation detail.
20557 (gray_bitmap_width, gray_bitmap_height, gray_bitmap_bits):
20558 Remove variables.
20559 (w32_pass_extra_mouse_buttons_to_system, w32_strict_fontnames)
20560 (w32_pass_multimedia_buttons_to_system, w32_strict_painting)
20561 (Vw32_charset_info_alist, w32_to_x_color, w32_init_class)
20562 (w32_createscrollbar, w32_createwindow, my_post_msg, w32_get_modifiers)
20563 (w32_grabbed_keys, cancel_all_deferred_msgs): Make static.
20564 (Fw32_define_rgb_color, Fw32_load_color_file)
20565 (syms_of_w32fns) <w32-pass-multimedia-buttons-to-system>:
20566 Fix typos in docstrings.
20567 (Fx_server_version): Reflow docstring.
20568 (Fw32_shell_execute): Doc fixes.
20569
205702007-11-13 Juanma Barranquero <lekktu@gmail.com>
20571
20572 * w32fns.c (Fw32_register_hot_key): Don't try to register hot key
20573 if w32_parse_hot_key returned nil.
20574
205752007-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
20576
20577 * xdisp.c (load_overlay_strings): Fix copy&paste typo.
20578
205792007-11-09 Jason Rumney <jasonr@gnu.org>
d6c952f8 20580
aac0c6e3
MR
20581 * s/ms-w32.c (USE_TOOLKIT_SCROLL_BARS): Define.
20582
20583 * w32term.c (w32_scroll_bar_handle_click): Use SCROLL_BAR_CLICK_EVENT.
20584
20585 * keyboard.c (discard_mouse_events, make_lispy_event) [WINDOWSNT]:
20586 Remove W32_SCROLL_BAR_CLICK_EVENT.
20587
20588 * termhooks.h (enum event_kind) [WINDOWSNT]: Likewise.
20589 Add MULTIMEDIA_KEY_EVENT.
20590
20591 * keyboard.c (lispy_function_keys) [WINDOWSNT]: Add more keys.
20592 (lispy_multimedia_keys) [WINDOWSNT]: New array.
20593 (make_lispy_event) [WINDOWSNT]: Use it to translate
20594 MULTIMEDIA_KEY_EVENT.
20595
20596 * w32term.h (WM_APPCOMMAND): Define if not already.
20597 (GET_APPCOMMAND_LPARAM): Likewise.
20598
20599 * w32term.c (w32_read_socket): Generate MULTIMEDIA_KEY_EVENT from
20600 WM_APPCOMMAND.
20601
20602 * w32fns.c (w32_pass_multimedia_buttons_to_system): New user option.
20603 (syms_of_w32fns): Export and initialize it.
20604 (w32_wnd_proc): Pass WM_APPCOMMAND on to w32_read_socket.
20605
206062007-11-09 Chong Yidong <cyd@stupidchicken.com>
20607
20608 * dispextern.h (struct it): Don't define OVERLAY_STRING_CHUNK_SIZE
20609 twice.
20610
20611 * xdisp.c (handle_face_prop): Fix last change.
20612
206132007-11-09 Richard Stallman <rms@gnu.org>
20614
20615 * xdisp.c (handle_face_prop): Test for strings that came from overlays,
20616 not just for after-strings and before-strings.
20617 Call face_for_overlay_string and pass the overlay to it.
20618 (handle_display_prop): Determine whether property came from an overlay.
20619 Pass OVERLAY arg to handle_single_display_spec.
20620 (handle_single_display_spec): New arg OVERLAY sets it->from_overlay.
20621 (load_overlay_strings): Fill in it->string_overlays.
20622 (get_overlay_strings_1, push_it, pop_it): Handle it->from_overlays.
20623
20624 * xfaces.c (face_for_overlay_string): Function renamed from
20625 face_at_buffer_position_no_overlays, and add arg OVERLAY.
20626
20627 * dispextern.h (struct it): New elt string_overlays.
20628 New elt from_overlay, also in stack.
20629 Rearrange a few elements.
20630 (face_for_overlay_string): Decl renamed from
20631 face_at_buffer_position_no_overlays, and add argument.
20632
206332007-11-09 Richard Stallman <rms@gnu.org>
20634
20635 * xdisp.c (handle_face_prop): Use face_at_buffer_position_no_overlays
20636 to get the base face for an overlay string.
20637
20638 * dispextern.h (face_at_buffer_position_no_overlays): Add decl.
20639
20640 * xfaces.c (face_at_buffer_position_no_overlays): New function.
20641
20642 * xdisp.c (handle_stop): Move some code out of loop.
20643
206442007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20645
20646 * macfns.c [USE_ATSUI] (Fmac_atsu_font_face_attributes):
20647 Fix conversion from Lisp object to ATSUFontID.
20648
206492007-11-09 Jason Rumney <jasonr@gnu.org>
20650
20651 * xdisp.c (Fformat_mode_line): Do nothing when noninteractive.
20652
206532007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20654
20655 * unexmacosx.c (unexec_regions_recorder, unexec_regions_merge):
20656 Don't assume regions are aligned to page boundary.
20657 (print_load_command_name): Add LC_UUID if defined.
20658
206592007-11-09 Richard Stallman <rms@gnu.org>
20660
20661 * emacs.c (syms_of_emacs) <installation-directory>: Reflow docstring.
20662
206632007-11-07 Jason Rumney <jasonr@gnu.org>
20664
20665 * s/windows95.h: Remove.
20666
206672007-11-06 Jan Djärv <jan.h.d@swipnet.se>
20668
20669 * gtkutil.c (xg_tool_bar_menu_proxy): Handle GTK_IMAGE_ICON_NAME and
20670 abort with a message on unhandled store_type values.
20671
206722007-11-01 Jan Djärv <jan.h.d@swipnet.se>
20673
20674 * xterm.c, xfns.c, xselect.c, xterm.h, s/msdos.h, s/sco4.h, s/sco5.h:
20675 Remove HAVE_X11R5 and HAVE_X11R4.
20676
206772007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
20678
20679 * Makefile.in: Remove references to sunfns.c and sunfns.o.
20680
206812007-11-01 Johan Bockgård <bojohan@gnu.org>
20682
20683 * macterm.c, w32term.c, xterm.c (x_draw_stretch_glyph_string):
20684 Don't set s->stippled_p here, since it has already been set by
20685 x_set_glyph_string_gc from x_draw_glyph_string.
20686
206872007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
20688
20689 * sunfns.c: Remove file.
20690
20691 * m/sun386.h:
20692 * m/sun2.h:
20693 * m/sparc.h: Remove Sun windows code.
20694
206952007-10-31 Stefan Monnier <monnier@iro.umontreal.ca>
20696
20697 * keyboard.c (syms_of_keyboard): Initialize the initial_kboard.
20698 (init_keyboard): Set current_kboard's window-system to nil.
20699 (tty_read_avail_input): Typo.
20700 * frame.c (make_initial_frame): Don't initialize the initial_kboard.
20701
207022007-10-31 Dan Nicolaescu <dann@ics.uci.edu>
20703
20704 * s/usg5-4.h:
20705 * s/usg5-3.h:
20706 * s/ptx.h:
20707 * m/is386.h:
20708 * m/ibmps2-aix.h:
20709 * Makefile.in: Remove all mentions of X10.
20710
20711 * dispnew.c (syms_of_display): Don't mention version 10.
20712
207132007-10-28 Juanma Barranquero <lekktu@gmail.com>
20714
20715 * makefile.w32-in (OBJ1): Remove abbrev.$(O).
20716 ($(BLD)/abbrev.$(O)): Remove.
20717
207182007-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
20719
20720 Rewrite abbrev.c in Elisp.
20721 * image.c (Qcount): Don't declare as extern.
20722 (syms_of_image): Initialize and staticpro `Qcount'.
20723 * puresize.h (BASE_PURESIZE): Increase for the new abbrev.el functions.
20724 * emacs.c (main): Don't call syms_of_abbrev.
20725 * Makefile.in (obj): Remove abbrev.o.
20726 (abbrev.o): Remove.
20727 * abbrev.c: Remove.
20728
207292007-10-26 Martin Rudalics <rudalics@gmx.at>
20730
20731 * window.c (window_min_size_2): Don't count header-line.
20732
207332007-10-26 Dan Nicolaescu <dann@ics.uci.edu>
20734
20735 * frame.h (struct frame): Move all bit fields after the first bit
20736 field to take advantage of the available space. Group all the
20737 chars together to reduce wasted space due to padding.
20738
207392007-10-26 Juanma Barranquero <lekktu@gmail.com>
20740
20741 * minibuf.c (Fread_minibuffer, Feval_minibuffer): Reflow docstrings.
20742
20743 * alloc.c (spare_memory, stack_copy, stack_copy_size, ignore_warnings)
20744 (Vdead, dont_register_blocks, staticvec, staticidx, interval_block)
20745 (n_interval_blocks, init_strings, check_string_bytes, check_sblock)
20746 (init_float, free_float, n_cons_blocks, init_cons, all_vectors)
20747 (n_vectors, symbol_block, symbol_block_index, symbol_free_list)
20748 (n_symbol_blocks, init_symbol, marker_block, marker_free_list)
20749 (n_marker_blocks, init_marker, valid_pointer_p, make_pure_float)
20750 (last_marked, mark_object_loop_halt): Make static.
20751
20752 * frame.c (syms_of_frame) <delete-frame-functions>:
20753 Fix typo in docstring.
20754
207552007-10-25 Juanma Barranquero <lekktu@gmail.com>
20756
20757 * w32.c (init_environment): Fix tiny memory leak.
20758 (w32_get_resource): Remove unused variable `ok'.
20759
207602007-10-25 Stefan Monnier <monnier@iro.umontreal.ca>
20761
20762 Make `window-system' into a keyboard-local variable (rather than
20763 frame-local as done originally by multi-tty).
20764
20765 * keyboard.h (struct kboard): Add Vwindow_system.
20766 * keyboard.c (init_kboard): Set a default for Vwindow_system.
20767 (mark_kboards): Mark Vwindow_system.
20768
20769 * dispnew.c (syms_of_display) <window-system>: Declare terminal-local.
20770 (init_display): Don't set the obsolete `window-system' frame-param.
20771
20772 * xterm.c (x_term_init):
20773 * w32term.c (w32_create_terminal):
20774 * term.c (init_tty): Set Vwindow_system.
20775 * macterm.c (mac_create_terminal): Set a keyboard (missing piece of the
20776 multi-tty merge maybe?), copied from w32term.c. Set Vwindow_system.
20777
20778 * xfns.c (Fx_create_frame, x_create_tip_frame):
20779 * w32fns.c (Fx_create_frame, x_create_tip_frame):
20780 * macfns.c (Fx_create_frame):
20781 Don't set the obsolete `window-system' frame-param.
20782
20783 * frame.h (Qwindow_system): Remove.
20784 * frame.c (Qwindow_system): Remove. In `syms_of_frame' as well.
20785 (Fmake_terminal_frame): Don't set obsolete `window-system' frame-param.
20786
207872007-10-24 Richard Stallman <rms@gnu.org>
20788
20789 * frame.c (x_figure_window_size): For fullscreen case,
20790 set USPosition | PPosition without clobbering rest of window_prompting.
20791
20792 * keyboard.c (Fcurrent_idle_time): Doc fix.
20793
20794 * print.c (Fwith_output_to_temp_buffer): Doc fix.
20795
207962007-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
20797
20798 * process.c (unwind_request_sigio): Only define if __ultrix__.
20799
20800 * callproc.c (child_setup): Remove spurious *.
20801
20802 * lisp.h (Fget_text_property): Declare.
20803 (have_menus_p): Declare it here rather than in sys-dep header files.
20804 * macterm.h (have_menus_p):
20805 * msdos.h (have_menus_p):
20806 * xterm.h (have_menus_p): Remove.
20807
20808 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
20809 (Fmake_variable_frame_local): Just check the variable's const-ness
20810 rather than checking nil or t.
20811
208122007-10-22 Jason Rumney <jasonr@gnu.org>
20813
20814 * w32fns.c: Include math.h.
20815 (w32_abort): Declaration moved to nt/config.nt.
20816
20817 * s/ms-w32.h (HAVE_STDLIB_H): Define.
20818 (abort): Redefinition moved to nt/config.nt.
20819
20820 * m/windowsnt.h: Remove.
20821
208222007-10-22 Juanma Barranquero <lekktu@gmail.com>
20823
20824 * emacs.c (Fdump_emacs): Fix typo in message.
20825 (syms_of_emacs) <kill-emacs-hook>: Fix typo in docstring.
20826 <installation-directory>: Reflow docstring.
20827
208282007-10-22 Juri Linkov <juri@jurta.org>
20829
20830 * minibuf.c: Allow minibuffer default to be a list of default values.
20831 With empty input use the first element of this list as returned default.
20832 (string_to_object)
20833 (read_minibuf_noninteractive): If defalt is cons, set val to its car.
20834 (read_minibuf): If defalt is cons, set histstring to its car.
20835 (Fread_string): If default_value is cons, set val to its car.
20836 (Fread_buffer): If def is cons, use its car.
20837 (Fcompleting_read): If defalt is cons, set val to its car.
20838
208392007-10-21 Michael Albinus <michael.albinus@gmx.de>
20840
20841 * fileio.c (Fcopy_file): Call file name handler with preserve_uid_gid.
20842
208432007-10-20 Juanma Barranquero <lekktu@gmail.com>
20844
20845 * doc.c (Fdocumentation): Check for advice in all cases.
20846
208472007-10-19 Chong Yidong <cyd@stupidchicken.com>
20848
20849 * Makefile.in [HAVE_LIBRESOLV]: Add -lresolv to linker flags.
20850
208512007-10-19 Richard Stallman <rms@gnu.org>
20852
20853 * doc.c (Fdocumentation): Check for and handle an advised function.
20854
208552007-10-19 Juanma Barranquero <lekktu@gmail.com>
20856
20857 * process.c (Fset_process_filter): Doc fix.
20858
208592007-10-18 Stefan Monnier <monnier@iro.umontreal.ca>
20860
20861 * keyboard.c (read_key_sequence): Undo a change introduced by multi-tty
20862 which caused key-translation-map to applied repeatedly (thus breaking
20863 double-mode).
20864
208652007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
20866
20867 * xselect.c (x_own_selection, x_handle_selection_clear)
20868 (x_clear_frame_selections):
20869 * w32menu.c (list_of_panes, list_of_items):
20870 * w32fns.c (w32_color_map_lookup, Fx_create_frame, Fx_display_list):
20871 * textprop.c (validate_plist, interval_has_all_properties)
20872 (interval_has_some_properties, interval_has_some_properties_list)
20873 (add_properties, text_property_list):
20874 * process.c (Fget_buffer_process, list_processes_1, status_notify):
20875 * minibuf.c (Fassoc_string):
20876 * macselect.c (x_own_selection, x_clear_frame_selections)
20877 (Fx_disown_selection_internal):
20878 * keymap.c (Fcommand_remapping, where_is_internal, describe_map_tree):
20879 Use CONSP rather than !NILP and XC[AD]R rather than Fc[ad]r.
20880
208812007-10-17 Chong Yidong <cyd@stupidchicken.com>
20882
20883 * process.c: Link to libs for calling res_init() if available.
20884 (Fmake_network_process): Call res_init() before getaddrinfo or
20885 gethostbyname, if possible.
20886
208872007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
20888
20889 * lread.c (read1): Set pvectype for char_tables.
20890
20891 * lisp.h (XMISCANY, XMARKER, XINTFWD, XBOOLFWD, XOBJFWD, XOVERLAY)
20892 (XBUFFER_OBJFWD, XBUFFER_LOCAL_VALUE, XKBOARD_OBJFWD, XSAVE_VALUE):
20893 Add type checks.
20894 (SOME_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP): Remove.
20895
20896 * alloc.c (free_misc): Use XMISCTYPE.
20897 (live_misc_p, gc_sweep): Use Lisp_Misc_Any.
20898
208992007-10-17 Glenn Morris <rgm@gnu.org>
20900
20901 * minibuf.c (Qcompletion_ignore_case): New Lisp_Object.
20902 (syms_of_minibuf): Add Qcompletion_ignore_case.
20903 * dired.c (Qcompletion_ignore_case): Change to external.
20904 (syms_of_dired) [VMS]: Remove Qcompletion_ignore_case.
20905 * fileio.c (Qcompletion_ignore_case): New external Lisp_Object.
20906 (Fread_file_name): Use it rather than intern'ing.
20907
20908 * coding.c (Qcompletion_ignore_case): New external Lisp_Object.
20909 (Fread_coding_system): Ignore case of user input.
20910
209112007-10-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20912
20913 * xdisp.c (handle_display_prop): Ignore display specs after
20914 replacing one when string text is being replaced.
20915 (handle_single_display_spec): Pretend as if characters with display
20916 property haven't been consumed only when buffer text is being replaced.
20917
209182007-10-16 Stefan Monnier <monnier@iro.umontreal.ca>
20919
20920 * xfns.c (Fx_create_frame, Fx_display_list):
20921 * window.c (window_fixed_size_p, enlarge_window)
20922 (shrink_window_lowest_first):
20923 * macterm.c (init_font_name_table):
20924 * macfns.c (Fx_create_frame, Fx_display_list):
20925 * lread.c (close_load_descs):
20926 * keyboard.c (read_char_x_menu_prompt):
20927 * fns.c (Fmember, Fmemql, Fdelete, Fset_char_table_parent):
20928 * coding.c (code_convert_region_unwind): Test the type of an object
20929 rather than just !NILP before extracting data from it.
20930
20931 * alloc.c (Fpurecopy): Set the pvec tag on pseudo vectors.
20932
20933 * lisp.h (enum Lisp_Misc_Type): Del Lisp_Misc_Some_Buffer_Local_Value.
20934 (XMISCANY): New macro.
20935 (XMISCTYPE): Use it.
20936 (struct Lisp_Misc_Any): New type.
20937 (union Lisp_Misc): Use it.
20938 (struct Lisp_Buffer_Local_Value): Add `local_if_set' bit.
20939 * data.c (Fboundp, store_symval_forwarding, swap_in_global_binding)
20940 (find_symbol_value, set_internal, default_value, Fset_default)
20941 (Fmake_variable_buffer_local, Fmake_local_variable)
20942 (Fkill_local_variable, Fmake_variable_frame_local, Flocal_variable_p)
20943 (Flocal_variable_if_set_p, Fvariable_binding_locus):
20944 The SOME_BUFFER_LOCAL_VALUEP distinction is replaced by local_if_set.
20945 * alloc.c (allocate_buffer): Set the size and tag.
20946 (allocate_misc, mark_maybe_object, mark_object, survives_gc_p):
20947 Use XMISCANY.
20948 (die): Follow the GNU convention for error messages.
20949 * print.c (print_object): SOME_BUFFER_LOCAL_VALUEP -> local_if_set.
20950 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Don't set the
20951 tag any more.
20952 (set_buffer_internal_1):
20953 * frame.c (store_frame_param):
20954 * eval.c (specbind):
20955 * xdisp.c (select_frame_for_redisplay): Drop SOME_BUFFER_LOCAL_VALUEP.
20956
20957 * doc.c (Fsnarf_documentation): Simplify.
20958
209592007-10-14 Juanma Barranquero <lekktu@gmail.com>
20960
20961 * w32term.c (w32_font_is_double_byte, my_create_scrollbar): Make static.
20962 (syms_of_w32term) <w32-enable-unicode-output>: Fix typo in docstring.
20963
209642007-10-14 Stefan Monnier <monnier@iro.umontreal.ca>
20965
20966 * buffer.c (Fmake_indirect_buffer): Set the buffer's tag.
20967
209682007-10-14 Juanma Barranquero <lekktu@gmail.com>
20969
20970 * eval.c (do_autoload): Don't save autoloads.
20971
20972 * data.c (Ffset): Save autoload of the function being set.
20973
209742007-10-07 John Paul Wallington <jpw@pobox.com>
20975
20976 * xfns.c (x_create_tip_frame): Set the `display-type' frame
20977 parameter before setting up faces.
20978
209792007-10-13 Eli Zaretskii <eliz@gnu.org>
20980
20981 * ccl.c (Fregister_code_conversion_map):
20982 * keyboard.c (append_tool_bar_item): Reformat last change.
20983
20984 * lisp.h (eabs): Rename from `abs'. All callers changed.
20985
209862007-10-05 Dmitry Antipov <dmantipov@yandex.ru>
20987
20988 * buffer.c (add_overlay_mod_hooklist):
20989 * ccl.c (Fregister_ccl_program, Fregister_code_conversion_map):
20990 * fontset.c (make_fontset):
20991 * keyboard.c (GROW_RAW_KEYBUF, menu_bar_items, menu_bar_item)
20992 (append_tool_bar_item):
20993 * macmenu.c (grow_menu_items):
20994 * w32menu.c (grow_menu_items):
20995 * xmenu.c (grow_menu_items): Use larger_vector.
20996
209972007-10-13 Eli Zaretskii <eliz@gnu.org>
20998
20999 * msdos.c (dos_rawgetc): Undo last change (there's no ``leaving
21000 selected frame'' on MSDOS).
21001
210022007-10-12 Martin Rudalics <rudalics@gmx.at>
21003
21004 * frame.c (Qexplicit_name): New variable.
21005 (x_report_frame_params): Report it in parameter alist.
21006 (syms_of_frame): Intern and staticpro it.
21007
210082007-10-10 Patrick Mahan <mahan@mahan.org> (tiny change)
21009
21010 * macfns.c (x_create_tip_frame): Set terminal for frame.
21011
210122007-10-10 Stefan Monnier <monnier@iro.umontreal.ca>
21013
21014 * frame.c (Qenvironment): Remove.
21015 (syms_of_frame) <Qenvironment>: Don't initialize.
21016 (Fdelete_frame): Don't treat the `environment' param specially.
21017 * frame.h (Qenvironment): Don't declare.
21018 * callproc.c (set_initial_environment): Don't set unused frame param.
21019
21020 * frame.c (Fframe_with_environment): Remove.
21021 (syms_of_frame) <Sframe_with_environment>: Don't declare.
21022
21023 * lisp.h (Fframe_with_environment): Don't declare.
21024
210252007-10-10 Juanma Barranquero <lekktu@gmail.com>
21026
21027 * indent.c (indent_tabs_mode, last_known_column)
21028 (last_known_column_modified): Make static.
21029 (syms_of_indent) <indent-tabs-mode>: Remove redundant info in docstring.
21030
210312007-10-10 Katsumi Yamaoka <yamaoka@jpl.org>
21032
21033 * puresize.h (BASE_PURESIZE): Increase to 1170000.
21034
210352007-10-09 Jason Rumney <jasonr@gnu.org>
21036
21037 * w32term.c (x_set_window_size): Disable code that attempts to tell
21038 Lisp code about a size change before it actually happens.
21039
210402007-10-09 Richard Stallman <rms@gnu.org>
21041
21042 * xdisp.c (handle_invisible_prop): After setting up an ellipsis,
21043 return HANDLED_RETURN.
21044
210452007-10-08 Martin Rudalics <rudalics@gmx.at>
21046
21047 * keyboard.c (kbd_buffer_get_event): Break loop waiting for input
21048 when there's an unread command event.
21049
21050 * frame.c (focus_follows_mouse): Move here from frame.el to allow
21051 window autoselection act appropriately when leaving selected frame.
21052 (syms_of_frame): Initialize focus_follows_mouse.
21053 * frame.h (focus_follows_mouse): Extern it.
21054 * macterm.c (XTread_socket): When focus_follows_mouse is nil
21055 make SELECT_WINDOW_EVENT only if we don't leave the selected frame.
21056 * msdos.c (dos_rawgetc): Likewise.
21057 * w32term.c (w32_read_socket): Likewise.
21058 * xterm.c (handle_one_xevent): Likewise.
21059 * xdisp.c (syms_of_xdisp): In doc-string of
21060 mouse-autoselect-window mention focus-follows-mouse.
21061
210622007-10-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21063
21064 * macterm.c (mac_load_query_font): Fix missing return value.
21065 [USE_CG_DRAWING] (mac_define_fringe_bitmap, mac_destroy_fringe_bitmap):
21066 Add BLOCK_INPUT.
21067
210682007-10-08 Richard Stallman <rms@gnu.org>
21069
21070 * xdisp.c (get_window_cursor_type): Implement documented behavior
21071 for cursor-in-non-selected-windows = t.
21072
210732007-10-08 Jason Rumney <jasonr@gnu.org>
21074
21075 * w32.c (w32_get_resource): Always close registry keys.
21076
210772007-10-08 Jason Rumney <jasonr@gnu.org>
21078
21079 * makefile.w32-in (LIBS): Add COMCTL32.
21080
21081 * w32fns.c (globals_of_w32fns): Init common controls.
21082
210832007-10-08 Richard Stallman <rms@gnu.org>
21084
21085 * image.c (our_memory_buffer): Rename from omfib_buffer.
21086
210872007-10-08 Richard Stallman <rms@gnu.org>
21088
21089 * buffer.c (Foverlays_at): Doc fix.
21090
210912007-10-08 Stefan Monnier <monnier@iro.umontreal.ca>
21092
21093 * fns.c (Fplist_put): Preserve uneven tail data.
21094
210952007-10-08 Peter O'Gorman <bug-gnu-emacs@mlists.thewrittenword.com> (tiny change)
21096
21097 * termhooks.h (enum event_kind): Remove trailing comma.
21098
21099 * frame.h (enum): Remove trailing comma.
21100
211012007-10-08 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
21102
21103 * w32proc.c (delete_child): Don't terminate threads of zombies.
21104
211052007-10-08 Martin Rudalics <rudalics@gmx.at>
21106
21107 * keyboard.h (struct kboard): New elt Vlast_repeatable_command.
21108
21109 * keyboard.c (syms_of_keyboard): Set up new Lisp variable
21110 last-repeatable-command.
21111 (init_kboard): Initialize Vlast_repeatable_command.
21112 (command_loop_1): Set it to real_this_command unless that was
21113 bound to an input event.
21114 (mark_kboards): Mark it.
21115
211162007-10-08 Richard Stallman <rms@gnu.org>
21117
21118 * eval.c (condition-case): Doc fix.
21119
211202007-10-08 Masatake YAMATO <jet@gyve.org>
21121
21122 * xfaces.c (tty_supports_face_attributes_p): Fix code
21123 for LFACE_INVERSE_INDEX and LFACE_BACKGROUND_INDEX; code
21124 was copied and not edited.
21125
211262007-10-09 Stefan Monnier <monnier@iro.umontreal.ca>
21127
21128 Add new `input-decode-map' keymap and use it for terminal
21129 escape sequences.
21130 * keyboard.h (struct kboard): Add Vinput_decode_map.
21131 Remove Vlocal_key_translation_map.
21132 * keyboard.c (read_key_sequence): Add support for input-decode-map.
21133 (init_kboard): Init input-decode-map.
21134 Replace local-key-translation-map back with key-translation-map.
21135 (syms_of_keyboard): Declare input-decode-map.
21136 Remove local-key-translation-map. Update docstrings.
21137 (mark_kboards): Mark Vinput_decode_map.
21138 Don't mark Vlocal_key_translation_map.
21139 * keymap.c (Fdescribe_buffer_bindings): Describe input-decode-map.
21140 Replace local-key-translation-map back with key-translation-map.
21141 * term.c (term_get_fkeys_1, CONDITIONAL_REASSIGN):
21142 Bind in input-decode-map rather than function-key-map.
21143
21144 * lisp.h (XSETPSEUDOVECTOR): Don't set the tag anymore.
21145 This was made redundant by the previous introduction of XSETPVECTYPE.
21146
211472007-10-09 Richard Stallman <rms@gnu.org>
21148
21149 * image.c (free_bitmap_record): Rename from Free_Bitmap_Record.
21150
211512007-09-29 Richard Stallman <rms@gnu.org>
21152
21153 * eval.c (internal_condition_case_2, internal_condition_case_1)
21154 (internal_condition_case): Reenable abort if x_catching_errors ()
21155 to see if that really happens and why.
21156
211572007-10-06 Andreas Schwab <schwab@suse.de>
21158
21159 * fileio.c (Fwrite_region): Ignore EINVAL error from fsync.
21160
211612007-10-04 Juanma Barranquero <lekktu@gmail.com>
21162
21163 * image.c (syms_of_image) <image-types>: Fix typo in docstring.
21164
211652007-10-03 Stefan Monnier <monnier@iro.umontreal.ca>
21166
21167 * frame.h (struct frame): Don't try to GC-mark menu_bar_items_used.
21168
211692007-10-02 Stefan Monnier <monnier@iro.umontreal.ca>
21170
21171 * window.h (struct window):
21172 * window.c (struct save_window_data, struct saved_window):
21173 * termhooks.h (struct terminal):
21174 * process.h (struct Lisp_Process):
21175 * frame.h (struct frame):
21176 * buffer.h (struct buffer):
21177 * lisp.h (struct Lisp_Vector, struct Lisp_Char_Table)
21178 (struct Lisp_Bool_Vector, struct Lisp_Subr, struct Lisp_Hash_Table):
21179 The size field of (pseudo)vectors is now unsigned.
21180 (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Simplify accordingly.
21181
21182 * lisp.h (struct Lisp_Hash_Table): Move non-traced elements at the end.
21183 Turn `count' into an integer.
21184
21185 * fns.c (make_hash_table, hash_put, hash_remove, hash_clear)
21186 (sweep_weak_table, sweep_weak_hash_tables, Fhash_table_count):
21187 * print.c (print_object) <HASH_TABLE_P>: `count' is an int.
21188 * alloc.c (allocate_hash_table): Use ALLOCATE_PSEUDOVECTOR.
21189 (mark_object) <HASH_TABLE_P>: Use mark_vectorlike.
21190
21191 * alloc.c (allocate_pseudovector): New fun.
21192 (ALLOCATE_PSEUDOVECTOR): New macro.
21193 (allocate_window, allocate_terminal, allocate_frame)
21194 (allocate_process): Use it.
21195 (mark_vectorlike): New function.
21196 (mark_object) <FRAMEP, WINDOWP, BOOL_VECTOR_P, VECTORP>: Use it.
21197 (mark_terminals): Use it.
21198 (Fmake_bool_vector, Fmake_char_table, make_sub_char_table)
21199 (Fmake_byte_code): Use XSETPVECTYPE.
21200
21201 * frame.c (Fframe_parameters): Minor simplification.
21202
21203 * insdel.c (adjust_markers_for_insert): Generalize assertion checks.
21204
21205 * marker.c (Fmarker_buffer): Make test for odd case into a failure.
21206
21207 * buffer.c (Fget_buffer_create, init_buffer_once):
21208 * lread.c (defsubr):
21209 * window.c (Fcurrent_window_configuration): Use XSETPVECTYPE.
21210
21211 * lisp.h (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Don't let them be
21212 defined differently in the m/*.h files.
21213 (XCHAR_TABLE, XBOOL_VECTOR): Add assertion checking.
21214 (XSETPVECTYPE): New macro.
21215 (XSETPSEUDOVECTOR): Use it.
21216
21217 * buffer.c (syms_of_buffer) <local-abbrev-table>: Move from abbrev.c.
21218 (DEFVAR_PER_BUFFER, defvar_per_buffer): Move from lisp.h and lread.c.
21219
21220 * lisp.h (defvar_per_buffer, DEFVAR_PER_BUFFER):
21221 * lread.c (defvar_per_buffer):
21222 * abbrev.c (syms_of_abbrev) <local-abbrev-tabl>: Move to buffer.c.
21223
21224 * window.c (candidate_window_p): Only consider as visible frames that
21225 are on the same terminal.
21226
21227 * m/ibms390x.h (MARKBIT): Remove unused macro.
21228
212292007-10-01 Juanma Barranquero <lekktu@gmail.com>
21230
21231 * lread.c (Fload): Fix typo in docstring.
21232
212332007-10-01 Michaël Cadilhac <michael@cadilhac.name>
21234
21235 * floatfns.c (Fexpt): Manually check for overflows, so that a power
21236 of a non-zero value can't yield zero.
21237
212382007-09-29 Stefan Monnier <monnier@iro.umontreal.ca>
21239
21240 * term.c (term_clear_mouse_face, term_mouse_highlight)
21241 (tty_write_glyphs_with_face): Only define is HAVE_GPM.
21242
21243 * print.c (safe_debug_print): Use XHASH.
21244
21245 * lisp.h (DECL_ALIGN, USE_LSB_TAG): Move logic to before definition of
21246 Lisp elements such as tags.
21247 (XHASH): New macro.
21248 (EQ): Use it.
21249 (SREF, SSET, STRING_COPYIN): Use SDATA.
21250 (VOID_TO_LISP, CVOID_TO_LISP, LISP_TO_VOID, LISP_TO_CVOID): Remove.
21251
21252 * alloc.c (mark_terminal): Remove left-over declaration.
21253 (enum mem_type): Replace all vector subtypes -> MEM_TYPE_VECTORLIKE.
21254 (allocate_vectorlike): Remove type argument. Adjust callers.
21255 (live_vector_p, mark_maybe_pointer, valid_lisp_object_p):
21256 Only handle the one remaining MEM_TYPE_VECTORLIKE.
21257
21258 * alloc.c (MALLOC_BLOCK_INPUT, MALLOC_UNBLOCK_INPUT): New macros
21259 to avoid unnecessary BLOCK_INPUTs when SYNC_INPUT is used.
21260 (xmalloc, xrealloc, xfree, lisp_malloc, lisp_free, lisp_align_malloc)
21261 (lisp_align_free, make_interval, allocate_string, allocate_string_data)
21262 (make_float, Fcons, allocate_vectorlike, Fmake_symbol, allocate_misc):
21263 Use them.
21264
21265 * xfaces.c (load_face_font, free_realized_face, clear_face_gcs):
21266 Don't let signal handlers run when a GC is freed but not yet NULL'ed.
21267 (x_free_gc): Remove BLOCK_INPUT since it's now redundant.
21268
212692007-09-28 Dan Nicolaescu <dann@ics.uci.edu>
21270
21271 * Makefile.in (lisp, shortlisp): Delete server.elc, it is not
21272 loaded by default.
21273
212742007-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
21275
21276 * term.c (Fgpm_mouse_start): Don't signal an error if already activated
21277 on this tty.
21278 (Fgpm_mouse_stop): Only deactivate if it was activated on this tty.
21279
21280 * term.c (mouse_face_window): Rename from Qmouse_face_window.
21281 Update all users.
21282 (handle_one_term_event): Use Gpm_DrawPointer.
21283 (Fgpm_mouse_start): Rename from Fterm_open_connection.
21284 Signal errors instead of returning nil. Always return nil.
21285 (Fgpm_mouse_stop): Rename from Fterm_close_connection.
21286 Make it a noop if gpm-mouse was not activated.
21287 (syms_of_term): Update names.
21288
212892007-09-27 Stefan Monnier <monnier@iro.umontreal.ca>
21290
21291 * sysdep.c (narrow_foreground_group, widen_foreground_group): Static.
21292 (init_sys_modes): Check that gpm_tty is the current tty.
21293
21294 * alloc.c (allocate_terminal): Set the vector size to only count the
21295 lisp fields. Initialize those to nil.
21296 (mark_object): Don't treat terminals specially.
21297 (mark_terminal): Remove.
21298 (mark_terminals): Use mark_object instead.
21299
21300 * termhooks.h (struct terminal): Move all Lisp_Object fields traced by
21301 the GC to the beginning.
21302
21303 * indent.h:
21304 * indent.c: Use EMACS_INT for ints coming from Elisp data.
21305
21306 * indent.c (Fmove_to_column): Use EMACS_INT for buffer positions.
21307
213082007-09-25 Jason Rumney <jasonr@gnu.org>
21309
21310 * frame.c (make_terminal_frame): Remove special case for WINDOWSNT.
21311
21312 * w32console.c (create_w32cons_output): Remove.
21313
21314 * term.c (init_tty): Call init_sys_modes on WINDOWSNT also.
21315
21316 * sysdep.c (init_sys_modes): Use set_terminal_modes_hook.
21317 (reset_sys_modes): Use reset_terminal_modes_hook.
21318
213192007-09-24 Stefan Monnier <monnier@iro.umontreal.ca>
21320
21321 * eval.c (do_autoload): Don't output any message.
21322
213232007-09-24 Juri Linkov <juri@jurta.org>
21324
21325 * emacs.c (standard_args): Change priority of "--no-splash"
21326 from 40 to 3. Add "--no-desktop" with the same priority.
21327
213282007-09-23 Dmitry Antipov <dmantipov@yandex.ru>
21329
21330 * alloc.c (gc_sweep): Check cons cell mark bits word by word
21331 and optimize the case where they are all 1.
21332
213332007-09-23 Johannes Weiner <hannes@saeurebad.de>
21334
21335 * lisp.h (abs): Define if not defined.
21336 * keyboard.c, sound.c, w32term.c, xfaces.c, xterm.c:
21337 Don't define `abs', since it's defined in lisp.h.
21338
213392007-09-22 Eli Zaretskii <eliz@gnu.org>
21340
21341 * term.c (DEV_TTY): New macro. Provide a definition for MS-Windows.
21342 (FRAME_TERMCAP_P) [WINDOWSNT]: Don't define to zero.
21343 (Fcontrolling_tty_p, Fresume_tty, dissociate_if_controlling_tty)
21344 (init_tty): Use DEV_TTY instead of "/dev/tty".
21345 [WINDOWSNT]: No need to protect from NAME arg being null.
21346
213472007-09-21 Dan Nicolaescu <dann@ics.uci.edu>
21348
21349 * term.c (Fsuspend_tty): Run suspend-tty-functions before cleaning
21350 up the tty state.
21351
213522007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
21353
21354 * termhooks.h (term_gpm): Delete. Use gpm_tty's NULLness instead.
21355 (gpm_tty): Change its type.
21356 * term.c (term_gpm): Delete. Use gpm_tty's NULLness instead.
21357 (gpm_tty): Change its type and initialize it.
21358 (Fterm_open_connection): Check the frame is indeed a tty.
21359 Use the new gpm_tty.
21360 (Fterm_close_connection): Use the new gpm_tty.
21361 * keyboard.c (tty_read_avail_input): Use the new gpm_tty.
21362 * sysdep.c (init_sys_modes): term_gpm -> gpm_tty.
21363
213642007-09-21 Juanma Barranquero <lekktu@gmail.com>
21365
21366 * w32term.c (x_draw_glyph_string): Use strike_through_color, not
21367 underline_color, to draw strike-through.
21368
213692007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
21370
21371 * lisp.h (allocate_terminal): Declare.
21372
21373 * window.c (candidate_window_p): Consider frames that are being placed
21374 by the user as somewhere between visible and iconified.
21375 (window_loop): Prefer windows on the current frame.
21376 (Fselect_window): Move the use of select-frame to the beginning so we
21377 can just delegate all the work (it'll call us back anyway).
21378
21379 * frame.c (Qdisplay_environment_variable):
21380 * frame.h (Qdisplay_environment_variable): Delete.
21381
21382 * .gdbinit (xbacktrace): Print the arg's address rather than the value
21383 of the first arg, since that value may be a union.
21384
21385 * callproc.c (child_setup, getenv_internal): Use the frame's `display'
21386 parameter rather than Qdisplay_environment_variable. If all else
21387 fails, look for DISPLAY in initial-environment.
21388
213892007-09-21 Glenn Morris <rgm@gnu.org>
21390
21391 * Makefile.in (emacstool): Remove target.
21392 (lisp, shortlisp): Remove termdev.elc.
21393
213942007-09-21 Markus Triska <markus.triska@gmx.at>
21395
21396 * xterm.c (x_delete_display): Compile session management conditionally.
21397
213982007-09-20 Stefan Monnier <monnier@iro.umontreal.ca>
21399
21400 * callproc.c (getenv_internal_1): New function.
21401 (getenv_internal): Use it.
21402 (Fgetenv_internal): Use it. Accept an env-list as optional arg.
21403
21404 * terminal.c (get_terminal): Don't accept ints to represent terminals.
21405 (Fterminal_name, Fterminal_parameters, Fterminal_parameter)
21406 (Fset_terminal_parameter): Work with dead terminals as well.
21407 (Fmodify_terminal_parameters): Remove.
21408
21409 * terminal.c (get_terminal): Handle terminals.
21410 Make sure the terminal returned is live.
21411 (create_terminal): Use allocate_terminal.
21412 (mark_terminals): Move to alloc.c.
21413 (delete_terminal): Use terminal->name as liveness status.
21414 NULL out fields after freeing their contents.
21415 Don't deallocate the object.
21416 (Fframe_terminal): Use FRAME_TERMINAL. Return the terminal object
21417 rather than an int.
21418 (Fterminal_live_p): Accept non-integer arguments.
21419 (Fterminal_list): Return terminal objects rather than an ints.
21420
21421 * alloc.c (enum mem_type): New member for `terminal' objects.
21422 (allocate_terminal): New function.
21423 (mark_maybe_pointer, valid_lisp_object_p, mark_object):
21424 Handle terminals.
21425 (mark_terminal): New fun.
21426 (mark_terminals): Move from terminal.c.
21427
21428 * term.c (get_tty_terminal): Don't treat output_initial specially.
21429 (Fsuspend_tty, Fresume_tty): Use terminal objects rather than ints.
21430 (delete_tty): Use terminal->name as liveness status.
21431
21432 * termhooks.h (struct terminal): Make it into a pseudovector.
21433 Remove `deleted' replaced by checking `name's nullness.
21434
21435 * print.c (print_object): Handle terminals.
21436
21437 * lisp.h (enum pvec_type): New `terminal' pseudovector.
21438 (XTERMINAL, XSETTERMINAL, TERMINALP, GC_TERMINALP): New macros.
21439
21440 * frame.c (make_terminal_frame):
21441 * keyboard.c (tty_read_avail_input):
21442 * w32term.c (x_delete_terminal):
21443 * xfns.c (Fx_create_frame, x_create_tip_frame):
21444 * xterm.c (x_delete_terminal): Use terminal->name as liveness status.
21445
214462007-09-20 Glenn Morris <rgm@gnu.org>
21447
21448 * process.c (Fmake_network_process): Doc fix.
21449
214502007-09-19 Jason Rumney <jasonr@gnu.org>
21451
21452 * dispextern.h (w32_init_fringe, mac_init_fringe): Declare rif argument.
21453
214542007-09-19 Michaël Cadilhac <michael@cadilhac.name>
21455
21456 * coding.c (detect_eol_type, detect_eol_type_in_2_octet_form):
21457 Fix a C warning regarding variable constness.
21458
21459 * xterm.c (handle_one_xevent): Fix a C warning.
21460
214612007-09-18 Jason Rumney <jasonr@gnu.org>
21462
21463 * w32fns.c (Fx_focus_frame): Rename from Fw32_focus_frame.
21464
214652007-09-17 Jan Djärv <jan.h.d@swipnet.se>
21466
21467 * gtkutil.c (gdpy_def): New variable.
21468 (xg_initialize): Initialize gdpy_def.
21469 (xg_display_close): If no other display exists, set gdpy_def to a
21470 new connection.
21471
214722007-09-16 Jan Djärv <jan.h.d@swipnet.se>
21473
21474 * gtkutil.c (xg_get_image_for_pixmap): Always create a GdkPixbuf
21475 when we have no file name for the icon.
21476 (xg_tool_bar_expose_callback): Remove.
21477 (xg_create_tool_bar): Don't connect expose signal to
21478 xg_tool_bar_expose_callback.
21479 (xg_get_file_with_chooser): Move GCPRO1 after declarations.
21480
214812007-09-16 Andreas Schwab <schwab@suse.de>
21482
21483 * alloc.c (reset_malloc_hooks): Set the hooks to the previous
21484 values instead of zapping them.
21485
214862007-09-14 Glenn Morris <rgm@gnu.org>
21487
21488 * fringe.c (init_fringe_bitmap) <swap_nibble>: Move to file scope.
21489 * gtkutil.c (xg_separator_p) <separator_names>: Move to file scope.
21490 * image.c (our_memory_fill_input_buffer) <buffer>: Move to file
21491 scope and rename to omfib_buffer for clarity.
21492 (gif_load) <interlace_start, interlace_increment>: Move to file scope.
21493
214942007-09-14 Kenichi Handa <handa@m17n.org>
21495
21496 * xterm.c (handle_one_xevent): Skip decoding if nbytes is zero.
21497
214982007-09-13 Jason Rumney <jasonr@gnu.org>
21499
21500 * fringe.c (w32_init_fringe, mac_init_fringe): Add rif argument.
21501
21502 * w32term.c (w32_term_init): Pass rif to w32_init_fringe.
21503
21504 * macterm.c (mac_initialize): Don't call mac_init_fringe here.
21505 (mac_term_init): Call here instead, passing rif.
21506
215072007-09-13 Glenn Morris <rgm@gnu.org>
21508
21509 * s/hpux.h: No longer define `static' as nothing.
21510
215112007-09-13 Johan Bockgård <bojohan@gnu.org>
21512
21513 * callint.c (Fcall_interactively): Remove unused var `fun'.
21514
215152007-09-12 Romain Francoise <romain@orebokech.com>
21516
21517 * window.c (prefer_window_split_horizontally, display_buffer):
21518 Revert 2007-09-08 change.
21519
215202007-09-12 Glenn Morris <rgm@gnu.org>
21521
21522 * alloca.c: Remove file.
21523 * Makefile.in (alloca): Do not undef.
21524 (allocaobj, alloca.o): Remove.
21525 (otherobj): Remove allocaobj.
21526 * keyboard.c (command_loop_1): Remove #ifdef C_ALLOCA block.
21527 * regex.c (C_ALLOCA): Remove all references and code that was only
21528 used when this was defined.
21529 * search.c (boyer_moore): Remove #ifdef C_ALLOCA block.
21530 * xmenu.c (xmenu_show): Remove #ifdef C_ALLOCA block.
21531 * m/ibms390x.h, m/sh3el.h (C_ALLOCA): Remove references to this.
21532
21533 * Makefile.in (SOURCES, unlock, relock): Delete.
21534
21535 * gtkutil.c (cnt): Rename to menu_grab_callback_cnt for clarity.
21536 (menu_grab_callback): All uses changed.
21537
21538 * xselect.c (cnt): Rename to x_reply_selection_request_cnt for clarity.
21539 (x_reply_selection_request): All uses changed.
21540
215412007-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
21542
21543 * lread.c (load_warn_old_style_backquotes): Change message to look
21544 better when it appears in the middle of byte-compiler messages.
21545
215462007-09-10 Dan Nicolaescu <dann@ics.uci.edu>
21547
21548 * s/darwin.h (MULTI_KBOARD): Only define for Carbon.
21549
21550 * xterm.c (x_create_terminal): Add comment.
21551
21552 * term.c (clear_tty_hooks, set_tty_hooks): Add comments.
21553
215542007-09-10 Richard Stallman <rms@gnu.org>
21555
21556 * xterm.c (x_term_init): Give error if can't open DISPLAY_NAME.
21557
215582007-09-10 Michaël Cadilhac <michael@cadilhac.name>
21559
21560 * lisp.h (struct Lisp_Subr): Rename `prompt' field to `intspec'.
21561 (DEFUN): Document `intspec', use it instead of `prompt'.
21562
21563 * eval.c (Fcommandp): Change `->prompt' to `->intspec'.
21564
21565 * data.c (Finteractive_form): If the interactive specification starts
21566 with a `(', use it as a Lisp form.
21567
21568 * fileio.c (Fset_file_modes): Add an interactive spec that reads a file
21569 name and file modes.
21570
21571 * callint.c (Fcall_interactively): Comment fixes.
21572
215732007-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
21574
21575 * callint.c (Fcall_interactively): Use Finteractive_form also for subrs
21576 and compiled functions.
21577
215782007-09-08 Fredrik Axelsson <f.axelsson@gmail.com>
21579
21580 * window.c (prefer_window_split_horizontally): New variable.
21581 (display_buffer): Consider splitting window horizontally depending
21582 on prefer_window_split_horizontally.
21583
215842007-09-08 Eli Zaretskii <eliz@gnu.org>
21585
21586 * sysdep.c [WINDOWSNT]: Don't include sysselect.h.
21587
215882007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
21589
21590 * s/cygwin.h (GC_MARK_STACK): Enable conservative stack marking.
21591
21592 * frame.c (x_set_frame_parameters): Check number is positive before
21593 using XFASTINT.
21594
21595 * window.c (freeze_window_start): Don't presume selected_window holds
21596 a window object.
21597 (Fdisplay_buffer): Remove `register' since `buffer' needs to be gcpro'd.
21598
215992007-09-07 Angelo Graziosi <Angelo.Graziosi@roma1.infn.it> (tiny change)
21600
21601 * term.c (dissociate_if_controlling_tty): Call setsid on CYGWIN.
21602
216032007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
21604
21605 * window.c (Vsplit_window_preferred_function): New var.
21606 (Fdisplay_buffer): Use it.
21607 (syms_of_window): Export, and initialize it.
21608
216092007-09-06 Pixel <pixel@mandriva.com> (tiny change)
21610
21611 * image.c (gif_load): Fix bug: Handle nonexistent colormap.
21612
216132007-09-06 Glenn Morris <rgm@gnu.org>
21614
21615 * gtkutil.c (menu_grab_callback) <cnt>:
21616 * xselect.c (x_reply_selection_request) <cnt>: Move static
21617 variable to file scope.
21618
216192007-09-06 Stefan Monnier <monnier@iro.umontreal.ca>
21620
21621 * xdisp.c (redisplay_internal): Make sure Elisp code always sees
21622 consistent values of selected_frame and selected_window.
21623
216242007-09-04 Jason Rumney <jasonr@gnu.org>
21625
21626 * w32console.c (initialize_w32_display): Zero unused hooks.
21627
216282007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
21629
21630 * term.c (Vsuspend_tty_functions, Vresume_tty_functions)
21631 (syms_of_term, Fsuspend_tty, Fresume_tty): Undo previous change.
21632
216332007-09-04 Jason Rumney <jasonr@gnu.org>
21634
21635 * term.c (init_tty) [WINDOWSNT]: Add hooks that are not accessible
21636 in w32console.c. Set up input. Remove XXX comments that have been
21637 confirmed as correct.
21638
21639 * s/ms-w32.h (MULTI_KBOARD): Define.
21640
21641 * w32console.c (one_and_only_w32cons): Remove.
21642 (initialize_w32_display): Take terminal argument.
21643
21644 * term.c (init_tty) [WINDOWSNT]: Pass terminal to
21645 initialize_w32_display.
21646 (init_tty) [MULTI_KBOARD]: Include this code on WINDOWSNT too.
21647
21648 * termhooks.h (enum event_kind) <HORIZ_WHEEL_EVENT>: New event.
21649
21650 * keyboard.c (discard_mouse_events): Discard it.
21651 (make_lispy_event): Translate it to a lisp event.
21652 (lispy_wheel_names): Add wheel-left and right events.
21653 (syms_of_keyboard): Enlarge wheel_syms.
21654
21655 * w32fns.c (w32_wnd_proc) <WM_DROPFILES>: Merge with WM_MOUSEWHEEL.
21656 <WM_MOUSEHWHEEL>: Pass new system message to lisp.
21657
21658 * w32term.h (WM_MOUSEHWHEEL): Define if system headers don't.
21659
21660 * w32term.c (construct_mouse_wheel): Make HORIZ_WHEEL_EVENT
21661 from WM_MOUSEHWHEEL.
21662 (w32_read_socket) <WM_MOUSEHWHEEL>: Treat as WM_MOUSEWHEEL.
21663
21664 * w32fns.c (x_create_tip_frame) [MULTI_KBOARD]: Get keyboard from
21665 terminal.
21666
21667 * w32term.c (w32_create_terminal) [MULTI_KBOARD]: Create a new
21668 keyboard for the terminal.
21669
216702007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
21671
21672 * term.c (Vsuspend_tty_hook): Rename from Vsuspend_tty_functions.
21673 (Vresume_tty_hook): Rename from Vresume_tty_functions.
21674 (syms_of_term): Rename suspend-tty-functions to suspend-tty-hook
21675 and resume-tty-function to resume-tty-hook.
21676 (Fsuspend_tty, Fresume_tty): Use new names.
21677
216782007-09-02 Jan Djärv <jan.h.d@swipnet.se>
21679
21680 * gtkutil.c (update_frame_tool_bar): Handle stock name as a named icon
21681 if it starts with "n:".
21682
216832007-08-31 Jan Djärv <jan.h.d@swipnet.se>
21684
21685 * gtkutil.c (update_frame_tool_bar): Initialize wbutton to NULL.
21686
216872007-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
21688
21689 * frame.h:
21690 * frame.c (Qterm_environment_variable): Remove.
21691 (syms_of_frame): Don't init and staticpro it.
21692
21693 * callproc.c (getenv_internal): Remove special case for $TERM.
21694
21695 * callproc.c (Vinitial_environment): New variable.
21696 (set_initial_environment): Initialize it.
21697 (syms_of_callproc): Declare it.
21698 (child_setup): Don't mess with TERM via Qterm_environment_variable; the
21699 TERM under which a process runs is never related to the TERM in which
21700 Emacs is running.
21701
217022007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
21703
21704 * config.in (HAVE_WINDOW_SYSTEM): Don't undef MULTI_KBOARD here...
21705 * s/darwin.h: ... do it here.
21706
217072007-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
21708
21709 * lisp.h (set_initial_environment): Rename from set_global_environment.
21710
21711 * Makefile.in (${etc}DOC): Re-add a ${EXEEXT} which seems to have been
21712 removed by mistake on the multi-tty branch.
21713
21714 * frame.c (make_terminal_frame): Yet Another Int/Lisp_Object Mixup.
21715 (Fmodify_frame_parameters): Return a value.
21716
21717 * image.c (png_load): Comment-out var only used in commented-out code.
21718
21719 * term.c (mark_ttys): Don't bother checking top_frame (incorrectly)
21720 before passing it to mark_object.
21721
21722 * xfaces.c (internal_resolve_face_name): Return a value.
21723 (internal_resolve_face_name, resolve_face_name_error): Comment out.
21724
21725 * xfns.c (check_x_display_info): Yet Another Int/Lisp_Object Mixup.
21726 (x_icon): Comment-out var only used in commented-out code.
21727
217282007-08-29 Romain Francoise <romain@orebokech.com>
21729
21730 * keyboard.c (Fset_input_mode): Don't call `Fset_quit_char' if
21731 QUIT hasn't been provided.
21732
217332007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
21734
21735 * callproc.c (child_setup, getenv_internal): Use the
21736 display-environment-variable and term-environment-variable frame params.
21737 (set_initial_environment): Initialise Vprocess_environment.
21738
21739 * config.in: Disable multi-keyboard support on a mac.
21740
21741 * frame.c (Qterm_environment_variable)
21742 (Qdisplay_environment_variable): New variables.
21743 (syms_of_frame): Intern and staticpro them.
21744 (Fmake_terminal_frame): Disable output method test.
21745
21746 * frame.h: Declare them here.
21747
21748 * macfns.c (x_set_mouse_color): Get rif from the frame.
21749 (x_set_tool_bar_lines): Don't use updating_frame.
21750 (mac_window): Add 2 new parameters for consistency with other systems.
21751 (Fx_create_frame): Fix doc string. Rename the parameter. Set the
21752 frame parameters following what is done in X11 and w32. Don't use
21753 FRAME_MAC_DISPLAY_INFO.
21754 (Fx_open_connection, start_hourglass): Remove window-system check.
21755 (x_create_tip_frame): Get the keyboard from the terminal.
21756
21757 * macmenu.c: Reorder includes.
21758 (Fx_popup_menu): Use terminal specific mouse_position_hook.
21759
21760 * macterm.c (XTset_terminal_modes, XTreset_terminal_modes): Add a
21761 terminal parameter.
21762 (x_clear_frame): Add a frame parameter.
21763 (note_mouse_movement): Get rif from the frame.
21764 (mac_term_init): Initialize the terminal.
21765 (mac_initialize): Make static and move terminal initialization ...
21766 (mac_create_terminal): ... to this new function.
21767
21768 * macterm.h (struct mac_display_info): Add terminal.
21769 (mac_initialize): Delete declaration.
21770
21771 * puresize.h (BASE_PURESIZE): Increase base value to 1164000.
21772
21773 * sysdep.c: Comment out text after #endif.
21774
21775 * term.c (init_tty): Only use terminal->kboard when MULTI_KBOARD
21776 is defined. Better initialize ttys in windows. Use terminal
21777 specific mouse_position_hook.
21778
21779 * termhooks.h (union display_info): Add mac_display_info.
21780
21781 * w32fns.c (Fx_create_frame): Use kboard from the terminal.
21782 Set the default minibuffer frame, window_system and the rest of the
21783 frame parameters following what is done in X11.
21784
21785 * w32term.c (w32_initialize): Make static.
21786
21787 * xselect.c (x_handle_selection_clear): Only access
21788 terminal->kboard when MULTI_KBOARD is defined.
21789
21790 * s/darwin.h (SYSTEM_PURESIZE_EXTRA): Define here.
21791 (SYSTEM_PURESIZE_EXTRA): Only define on Carbon.
21792
217932007-08-29 Jason Rumney <jasonr@gnu.org>
21794
21795 * frame.c (Fdelete_frame): Only get kboard when MULTI_KBOARD defined.
21796 (make_terminal_frame) [WINDOWSNT]: Initialize terminal.
21797
21798 * fringe.c (w32_init_fringe w32_reset_fringes) [HAVE_NTGUI]:
21799 (mac_init_fringe) [MAC_OS]: Get rif from selected_frame.
21800
21801 * keyboard.c (restore_kboard_configuration): Only define when
21802 MULTI_KBOARD defined.
21803
21804 * makefile.w32-in: Update dependancies from Makefile.in.
21805 (OBJ1): Add terminal.$(O)
21806
21807 * term.c (dissociate_if_controlling_tty) [WINDOWSNT]:
21808 Don't define function body.
21809 (init_tty) [WINDOWSNT]: Use selected_frame for initializing.
21810
21811 * termhooks.h (display_info) [WINDOWSNT]: Add w32.
21812
21813 * w32.c (request_sigio, unrequest_sigio): Remove.
21814
21815 * w32console.c (w32con_move_cursor, w32con_clear_to_end)
21816 (w32con_clear_frame, w32con_clear_end_of_line)
21817 (w32con_ins_del_lines, w32con_insert_glyphs, w32con_write_glyphs)
21818 (w32con_delete_glyphs, w32con_set_terminal_window)
21819 (scroll_line, w32_sys_ring_bell): Add frame arg.
21820 (w32con_set_terminal_modes, w32con_reset_terminal_modes):
21821 Add terminal arg.
21822 (PICK_FRAME): Remove.
21823 (w32con_write_glyphs): Use frame specific terminal coding.
21824 (one_and_only_w32cons): New global variable.
21825 (initialize_w32_display): Use it for storing hooks.
21826 (create_w32cons_output): New function.
21827
21828 * w32inevt.c, w32inevt.h (w32_console_read_socket): Make first
21829 arg a frame.
21830
21831 * w32fns.c (x_create_tip_frame): Set terminal and ref count.
21832 Set window_system.
21833 (x_set_tool_bar_lines): Don't use updating_frame.
21834 (Fx_create_frame): Set terminal and ref count.
21835 (Fx_open_connection): Remove window-system check.
21836
21837 * w32menu.c (Fx_popup_menu): Use terminal specific mouse_position_hook.
21838
21839 * w32term.c (w32_term_init): Call add_keyboard_wait_descriptor.
21840 (w32_set_terminal_modes, w32_reset_terminal_modes): Add terminal arg.
21841 (x_clear_frame, x_delete_glyphs, w32_ring_bell, x_ins_del_lines):
21842 Add frame arg.
21843 (x_delete_terminal, w32_create_terminal): New functions.
21844 (w32_term_init): Create a terminal.
21845 (w32_initialize): Move terminal specific initialization to
21846 w32_create_terminal.
21847
21848 * w32term.h (x_output): Remove foreground_pixel and background_pixel.
21849 (w32_clear_rect, w32_clear_area): Use background from frame.
21850 (w32_display_info): Add terminal.
21851 (w32_sys_ring_bell, x_delete_display): Declare here.
21852
21853 * xdisp.c (display_menu_bar) [HAVE_NTGUI]: Check frame type.
21854
21855 * s/ms-w32.h (SYSTEM_PURESIZE_EXTRA): Bump to 50k.
21856
218572007-08-29 Kalle Olavi Niemitalo <kon@iki.fi> (tiny change)
21858
21859 * keyboard.c (interrupt_signal, handle_interrupt, Fset_quit_char):
21860 Fix get_named_tty calls for the controlling tty.
21861
218622007-08-29 ARISAWA Akihiro <ari@mbf.ocn.ne.jp> (tiny change)
21863
194d44e7 21864 * term.c (dissociate_if_controlling_tty) [USG]: Fix parse error.
aac0c6e3
MR
21865
218662007-08-29 Yoshiaki Kasahara <kasahara@nc.kyushu-u.ac.jp> (tiny change)
21867
21868 * term.c (tty_insert_glyphs): Add missing first parameter.
21869
218702007-08-29 Károly Lőrentey <karoly@lorentey.hu>
21871
21872 * buffer.c (Fbuffer_list, Fbury_buffer):
21873 Take frame->buried_buffer_list into account.
21874
21875 * cm.c (current_tty): New variable, for cmputc().
21876 (cmputc): Use it.
21877 (cmcheckmagic): Add tty parameter, look up terminal streams there.
21878 (calccost): Add tty parameter. Use emacs_tputs() instead of tputs().
21879 (cmgoto): Add tty parameter. Pass it on to calccost().
21880 Use emacs_tputs() instead of tputs().
21881
21882 * cm.h (emacs_tputs): New macro to set current_tty, and then call
21883 tputs().
21884 (current_tty): New variable, for cmputc().
21885 (cmcheckmagic, cmputc, cmgoto): Add prototypes.
21886
21887 * eval.c (unwind_to_catch): Don't call x_fully_uncatch_errors.
21888 (internal_condition_case, internal_condition_case_1)
21889 (internal_condition_case_2): Don't abort when x_catching_errors.
21890
21891 * fns.c (Fyes_or_no_p): Don't try to open an X dialog on tty terminals.
21892 (Fy_or_n_p): Likewise. Use temporarily_switch_to_single_kboard to
21893 prevent crashes caused by bogus longjmps in read_char.
21894
21895 * keymap.h (Fset_keymap_parent): Add EXFUN.
21896
21897 * macterm.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL)
21898 * w32term.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
21899 Remove redundant definition.
21900
21901 * macfns.c (x_set_mouse_color, x_make_gc):
21902 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
21903
21904 * w32term.c (x_free_frame_resources):
21905 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
21906 (w32_initialize): Use the accessor macros for terminal characteristics.
21907
21908 * macterm.c (mac_initialize): Use Fset_input_interrupt_mode.
21909 Use the accessor macros for terminal characteristics.
21910 * msdos.c (internal_terminal_init): Use the accessor macros for
21911 terminal characteristics.
21912 (ScreenVisualBell, internal_terminal_init):
21913 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
21914
21915 * termopts.h (no_redraw_on_reenter): Declare.
21916
21917 * alloc.c (emacs_blocked_malloc): Disable mallopt call.
21918 (mark_terminals, mark_ttys): Declare.
21919 (Fgarbage_collect): Call them.
21920 (mark_object): Mark buried_buffer_list.
21921
21922 * prefix-args.c: Include stdlib.h for exit.
21923
21924 * syssignal.h: Add comment.
21925
21926 * indent.c: Include stdio.h.
21927
21928 * window.h (Vinitial_window_system): Declare.
21929 (Vwindow_system): Delete declaration.
21930
21931 * fontset.c (Finternal_char_font): Use FRAME_RIF.
21932
21933 * image.c (lookup_image): Don't initialize `c' until the xasserts
21934 have been run.
21935
21936 * gtkutil.c (xg_create_frame_widgets): Use FRAME_BACKGROUND_PIXEL and
21937 FRAME_FOREGROUND_PIXEL.
21938
21939 * print.c (print_preprocess): Don't lose print_depth levels while
21940 iterating.
21941
21942 * widget.c (update_from_various_frame_slots):
21943 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
21944
21945 * window.c (set_window_buffer): Don't call clear_mouse_face on tty
21946 frames.
21947 (window_internal_height): Remove bogus make_number call.
21948 (init_window_once): Call make_terminal_frame with two zero parameters.
21949
21950 * fileio.c (Fread_file_name): Update comment.
21951
21952 * callint.c (Fcall_interactively):
21953 Use temporarily_switch_to_single_kboard instead of single_kboard_state.
21954 Make sure it is correctly unwound.
21955
21956 * xsmfns.c (x_session_close): New function.
21957
21958 * coding.h (terminal_coding, safe_terminal_coding, keyboard_coding):
21959 Delete declarations.
21960
21961 * xterm.h: Remove declaration for x_fully_uncatch_errors.
21962 (x_output): Remove background_pixel and foreground_pixel fields.
21963 (x_display_info): Add new field TERMINAL. Remove KBOARD field.
21964 (x_delete_device, x_session_close): Declare.
21965
21966 * lread.c: Include setjmp.h. Update declaration of `read_char'.
21967 (read_filtered_event): Call `read_char' with a local
21968 `wrong_kboard_jmpbuf'.
21969
21970 * minibuf.c (read_minibuf): Call temporarily_switch_to_single_kboard.
21971 Don't call single_kboard_state. Use FRAME_RIF.
21972
21973 * process.c (Fmake_network_process): Don't unrequest_sigio on modern
21974 systems.
21975
21976 * lisp.h (set_process_environment): Rename to `set_global_environment'.
21977 (Fframe_with_environment, Fset_input_meta_mode)
21978 (Fset_quit_char): EXFUN.
21979 (x_create_device, tty_output, terminal, tty_display_info): Declare.
21980 (init_sys_modes, reset_sys_modes): Update prototypes.
21981 (init_all_sys_modes, reset_all_sys_modes): New prototypes.
21982
21983 * keyboard.h (struct kboard): Add new fields Vlocal_function_key_map,
21984 Vlocal_key_translation_map, and Vkeyboard_translate_table.
21985 (Vfunction_key_map, Vkeyboard_translate_table, single_kboard_state):
21986 Delete declarations.
21987 (Vfunction_key_map, Vkey_translation_map, push_kboard, pop_kboard)
21988 (temporarily_switch_to_single_kboard, tty_read_avail_input):
21989 New declarations.
21990
21991 * emacs.c (main): Don't call init_sys_modes(), the new term_init()
21992 already does that during init_display(). Call syms_of_keymap
21993 before syms_of_keyboard. Call `syms_of_terminal'.
21994 Call set_initial_environment, not set_process_environment.
21995 (shut_down_emacs): Call reset_all_sys_modes() instead of
21996 reset_sys_modes().
21997
21998 * xfaces.c (x_free_gc): Protect xassert with GLYPH_DEBUG.
21999 (internal_resolve_face_name, resolve_face_name_error): New functions.
22000 (resolve_face_name): Protect against loops and errors thrown by Fget.
22001 (realize_default_face): Don't use FRAME_FONT unless frame is an X frame.
22002 (Ftty_supports_face_attributes_p): Update tty_capable_p call.
22003
22004 * scroll.c: Replace CURTTY() with local variables throughout the
22005 file (where applicable).
22006 (calculate_scrolling, calculate_direct_scrolling)
22007 (scrolling_1, scroll_cost): Use the accessor macros for terminal
22008 characteristics.
22009
22010 * keymap.c (Vfunction_key_map): Remove.
22011 (Fdescribe_buffer_bindings): Update references to Vfunction_key_map.
22012 (syms_of_keymap): Remove DEFVAR for Vfunction_key_map.
22013 (Vkey_translation_map): Remove.
22014 (syms_of_keymap): Remove DEFVAR for key-translation-map.
22015 (Fdescribe_buffer_bindings)
22016 (read_key_sequence, init_kboard, syms_of_keyboard, mark_kboards):
22017 Update for terminal-local key-translation-map.
22018
22019 * Makefile.in (callproc.o): Update dependencies.
22020 (lisp, shortlisp): Add termdev.elc.
22021 (obj): Add terminal.o.
22022 (terminal.o): Add dependencies.
22023 [HAVE_CARBON]: Make terminal.o depend on macgui.h.
22024 (data.o, fns.o): Add termhooks.h dependency.
22025 (SOME_MACHINE_LISP): Add dnd.elc.
22026 (minibuf.o): Fix typo.
22027 Update dependencies.
22028
22029 * data.c (do_symval_forwarding, store_symval_forwarding)
22030 (find_symbol_value): Use the selected frame's keyboard, not
22031 current_kboard.
22032
22033 * .gdbinit (init_sys_modes): Use Vinitial_window_system instead of
22034 Vwindow_system.
22035
22036 * xmenu.c (Fx_menu_bar_open) [USE_X_TOOLKIT, USE_GTK]: Rename from
22037 Fmenu_bar_open.
22038 (syms_of_xmenu): Update defsubr.
22039 (mouse_position_for_popup, Fx_popup_menu)
22040 (Fx_popup_dialog, x_activate_menubar, update_frame_menubar)
22041 (set_frame_menubar, free_frame_menubar)
b97439ce 22042 (create_and_show_popup_menu, xmenu_show)
aac0c6e3
MR
22043 (create_and_show_dialog, xdialog_show, xmenu_show): Abort if not
22044 an X frame.
22045
22046 * xselect.c (x_own_selection): Abort if not an X frame.
22047 (some_frame_on_display): Check if it is an X frame.
22048 (x_handle_selection_clear): Deal with MULTI_KBOARD.
22049
22050 * coding.c: Include frame.h and termhooks.h.
22051 (terminal_coding, keyboard_coding): Delete.
22052 (Fset_terminal_coding_system_internal)
22053 (Fset_keyboard_coding_system_internal)
22054 (Fkeyboard_coding_system)
22055 (Fterminal_coding_system): Add a terminal parameter.
22056 Get terminal_coding from the terminal.
22057 (init_coding_once): Don't call setup_coding_system here.
22058
22059 * dispextern.h (set_scroll_region, turn_off_insert)
22060 (turn_off_highlight, background_highlight, clear_end_of_line_raw)
22061 (tty_clear_end_of_line, tty_setup_colors)
22062 (delete_tty, updating_frame)
22063 (produce_special_glyphs, produce_glyphs, write_glyphs)
22064 (insert_glyphs): Remove.
22065 (raw_cursor_to, clear_to_end, tty_turn_off_insert)
22066 (tty_turn_off_highlight, get_tty_size): Add declaration.
22067 (tabs_safe_p, init_baud_rate, get_tty_terminal): Update prototypes.
22068
22069 * frame.h (enum output_method): Add output_initial.
22070 (struct x_output): Delete.
22071 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
22072 Access foreground_pixel and background_pixel directly from the frame.
22073 (tty_display): Delete.
22074 (struct frame): Add buried_buffer_list, foreground_pixel,
22075 background_pixel and terminal. Delete kboard.
22076 (union output_data): Add tty.
22077 (FRAME_KBOARD): Get the kboard from the terminal.
22078 (FRAME_INITIAL_P): New macro.
22079 (Qtty, Qtty_type, Qterminal, Qterminal_live_p, Qenvironment)
22080 (Qterm_environment_variable, Qdisplay_environment_variable)
22081 (make_terminal_frame, Qburied_buffer_list, Qwindow_system):
22082 New declarations.
22083
22084 * termchar.h (tty_output, tty_display_info): New structures.
22085 (tty_list): Declare.
22086 (FRAME_TTY, CURTTY): New macros.
22087 (must_write_spaces, min_padding_speed, fast_clear_end_of_line)
22088 (line_ins_del_ok, char_ins_del_ok, scroll_region_ok)
22089 (scroll_region_cost, memory_below_frame, fast_clear_end_of_line)
22090 (dont_calculate_costs, no_redraw_on_reenter): Remove declarations.
22091
22092 * callproc.c: Include frame.h and termhooks.h, for terminal
22093 parameters.
22094 (add_env): New function.
22095 (child_setup): Use it.
22096 (child_setup, getenv_internal): Handle the new Vprocess_environment.
22097 (getenv_internal): Fix get_terminal_param call.
22098 (Fgetenv_internal, egetenv): Update doc.
22099 (syms_of_callproc): Initialize Vprocess_environment to nil.
22100 Register and initialize them. Remove obsolete defvars. Update doc
22101 strings.
22102 (child_setup): Handle Vlocal_environment_variables.
22103 (getenv_internal): Add terminal parameter.
22104 Handle Vlocal_environment_variables.
22105 (Fgetenv_internal): Add terminal parameter.
22106 (child_setup, getenv_internal, Fgetenv_internal): Store the local
22107 environment in a frame (not terminal) parameter. Update doc strings.
22108 (set_initial_environment): Rename from set_global_environment.
22109 Store Emacs environment in initial frame parameter.
22110
22111 * xdisp.c (redisplay_internal): Update references to
22112 `previous_terminal_frame'.
22113 (display_mode_line, Fformat_mode_line): Replace calls to
22114 `push_frame_kboard' with `push_kboard'.
22115 (get_glyph_string_clip_rects): Add extra parentheses and
22116 braces to prevent compiler warnings.
22117 (calc_pixel_width_or_height): Add xassert to check that the
22118 frame is alive. Don't call `lookup_image' on a termcap frame.
22119 (message2_nolog, message3_nolog, redisplay_internal)
22120 (set_vertical_scroll_bar, redisplay_window, check_x_display_info)
22121 (x_set_scroll_bar_foreground, x_set_scroll_bar_background)
22122 (Fx_create_frame, Fxw_display_color_p, Fx_display_grayscale_p)
22123 (Fx_display_pixel_width, Fx_display_pixel_height)
22124 (Fx_display_planes, Fx_display_color_cells)
22125 (Fx_server_max_request_size, Fx_server_vendor, Fx_server_version)
22126 (Fx_display_screens, Fx_display_mm_height, Fx_display_mm_width)
22127 (Fx_display_backing_store, Fx_display_visual_class)
22128 (Fx_display_save_under, Fx_close_connection, x_create_tip_frame):
22129 Use FRAME_TERMINAL_P, FRAME_WINDOW_P, FRAME_TTY and FRAME_RIF.
22130
22131 * xfns.c (x_set_foreground_color x_set_background_color)
22132 (x_set_mouse_color, x_set_cursor_color, x_make_gc):
22133 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
22134 (Fx_create_frame, x_create_tip_frame, build_string, x_window)
22135 (Fx_create_frame, x_create_tip_frame): Don't create frames on a
22136 terminal that is being deleted.
22137 (Fx_create_frame): Use `store_frame_param' to set `window-system'
22138 frame parameter, and make sure it overrides any user-supplied setting.
22139 (Fx_close_connection, Fx_synchronize): Unify argument names with
22140 the rest of the DEFUNs.
22141
22142 * dispnew.c (Fsend_string_to_terminal): Update call to
22143 `get_tty_terminal'.
22144 (Fredraw_frame, Fsend_string_to_terminal)
22145 (Fsend_string_to_terminal, init_display): Use FRAME_RIF,
22146 FRAME_TERMCAP_P and FRAME_TTY.
22147 (window_change_signal): Don't believe width/height values that are
22148 impossibly small.
22149 (Vinitial_window_system): Rename from Vwindow_system.
22150 (termscript, Wcm, rif): Delete.
22151
22152 * termhooks.h (struct terminal): New struct containing the
22153 previously global text display hooks and new members NAME,
22154 DELETED and PARAM_ALIST.
22155 (FRAME_TERMINAL, TERMINAL_TERMINAL_CODING)
22156 (TERMINAL_KEYBOARD_CODING, TERMINAL_ACTIVE_P, FRAME_WINDOW_P)
22157 (FRAME_RIF): New macros.
22158 (get_terminal_param, get_device): New declarations.
22159 (termscript): Delete declaration.
22160
22161 * xterm.c (x_initialize): Use Fset_input_interrupt_mode.
22162 (XTflash, x_free_frame_resources, x_scroll_bar_create)
22163 (x_scroll_bar_set_handle): Use FRAME_BACKGROUND_PIXEL and
22164 FRAME_FOREGROUND_PIXEL.
22165 (x_fully_uncatch_errors): Disable definition.
22166 (x_scroll_bar_expose): Fix reference to foreground pixel.
22167 (XTread_socket): Disable loop on all X displays.
22168 (x_delete_terminal): Don't set terminal->deleted and let
22169 delete_terminal delete the frames on the terminal.
22170 (x_delete_display): Doc update to reflect changes in
22171 delete_terminal.
22172 (x_display_info) <terminal>: Move member earlier in the struct.
22173 (deleting_tty): Remove old variable.
22174 (Fsuspend_tty): Call clear_tty_hooks.
22175 (Fresume_tty, init_tty): Call set_tty_hooks.
22176 (Ftty_display_color_p, Ftty_display_color_cells): Don't throw
22177 errors on X frames.
22178 (x_catch_errors_unwind): Abort if x_error_message is NULL.
22179 (handle_one_xevent): Initialize `f' to NULL.
22180 (x_delete_terminal, x_create_terminal): New functions.
22181 (XTset_terminal_modes, XTreset_terminal_modes)
22182 (XTread_socket, x_connection_closed, x_term_init)
22183 (x_term_init, x_delete_display): Add terminal parameter.
22184 (x_term_init) [!HAVE_GTK_MULTIDISPLAY]: Refuse to create secondary
22185 X connections.
22186
22187 * frame.c: Include termchar.h.
22188 (Qterminal, Qterminal_live_p, Qburied_buffer_list, Qtty, Qtty_type)
22189 (Qwindow_system, Qenvironment, Qterm_environment_variable)
22190 (Qdisplay_environment_variable): New vars.
22191 (Fframep): Deal with output_initial.
22192 (Fframe-live-p): Doc fix.
22193 (Fwindow-system): New function.
22194 (x_set_screen_gamma, store_frame_param): Fix compilation errors.
22195 (make_terminal_frame): Don't create frames on a terminal that is
22196 being deleted. Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
22197 (store_frame_param): Check for found_for_frame before calling XFRAME.
22198 (Fmake_terminal_frame): Handle NULL tty names correctly.
22199 (syms_of_frame): Enhance doc string of `default-frame-alist'.
22200 (Fdelete_frame): Remove unused variable `count'. Don't allow other
22201 frames to refer to a deleted frame in their 'environment parameter.
22202 (Fframe_with_environment): New function.
22203 (syms_of_frame): Defsubr it. Initialize and staticpro Qenvironment.
22204 (get_future_frame_param): New function.
22205 (Fmake_terminal_frame): Use it.
22206 (x_set_frame_parameters, x_set_screen_gamma): Use FRAME_RIF.
22207
22208 * sysdep.c (init_sys_modes, reset_sys_modes): Update for renames.
22209 * sysdep.c (reset_sys_modes): Update for renames.
22210
22211 * keyboard.c (tty_read_avail_input): New function.
22212 (Fset_input_interrupt_mode, Fset_output_flow_control): New functions.
22213 (syms_of_keyboard): Defsubr them.
22214 (Fset_input_meta_mode, Fset_quit_char): New functions.
22215 (Fset_input_mode): Split to above functions.
22216 (read_char_minibuf_menu_prompt): Add wrong_kboard_jmpbuf
22217 parameter. Use it in call to `read_char'.
22218 (read_char): Declare. Update call to `read_char_minibuf_menu_prompt'.
22219 Set wrong_kboard_jmpbuf correctly in recursive calls.
22220 Use current_kboard to access Vkeyboard_translate_table.
22221 Enhance comment before extra longjmp to wrong_kboard_jmpbuf.
22222 Add wrong_kboard_jmpbuf parameter to allow for recursive calls.
22223 Update longjmp invocations. Remember the original current_kboard,
22224 and longjmp to `wrong_kboard_jmpbuf' when a filter, timer or sentinel
22225 changes it. Comment out unnecessary calls to
22226 `record_single_kboard_state' and `any_kboard_state'.
22227 Update recursive calls.
22228 (wrong_kboard_jmpbuf): Remove global variable.
22229 (read_key_sequence): Remove unused variable wrong_kboard_jmpbuf.
22230 Handle deleted interrupted_kboards correctly; that is a legal
22231 case. Add `wrong_kboard_jmpbuf' local variable. Update setjmp
22232 and read_char calls. Abort if interrupted_kboard died in read_char.
22233 (any_kboard_state, single_kboard_state)
22234 (push_frame_kboard): Remove function.
22235 (pop_kboard): Switch out of single_kboard mode if the kboard has
22236 been deleted. Remove unused variable. Help debugging by not
22237 changing current_kboard unnecessarily. Set current_kboard to the
22238 kboard of the selected frame when the stored kboard object has
22239 been deleted before pop_kboard.
22240 (temporarily_switch_to_single_kboard): Change first parameter to a
22241 frame pointer. Throw an error when caller wants to change kboards
22242 while in single_kboard mode. Don't push_kboard if we weren't in
22243 single kboard state. Don't pop_kboard if we popped into any
22244 kboard state.
22245 (restore_kboard_configuration): Abort if pop_kboard changed the
22246 kboard in single_kboard mode. Call pop_kboard only after setting
22247 up single_kboard mode.
22248 (Frecursive_edit): Switch to single_kboard mode only in nested
22249 command loops.
22250 (cmd_error, command_loop, command_loop_1, timer_check):
22251 Comment out unnecessary call to `any_kboard_state' and
22252 `record_single_kboard_state'.
22253 (delete_kboard): Exit single_kboard mode if we have just deleted
22254 that kboard. Use FRAME_KBOARD.
22255 (interrupt_signal): Use `Fkill_emacs' to exit Emacs, not
22256 `fatal_error_signal'.
22257 (record_single_kboard_state): Don't push_kboard if we weren't in
22258 single kboard state. Don't pop_kboard if we popped into any
22259 kboard state.
22260 (push_frame_kboard): Rename to push_kboard.
22261 (kbd_buffer_get_event): Use FRAME_TERMINAL.
22262 (read_avail_input): Read input from all terminals.
22263 (mark_kboards): Also mark Vkeyboard_translate_table.
22264 (kbd_buffer_store_event_hold): Simplify condition.
22265 (read_key_sequence): Reinitialize fkey and keytran at each replay.
22266 (Vkeyboard_translate_table): Move to struct kboard.
22267 (init_kboard): Initialize Vkeyboard_translate_table.
22268 (syms_of_keyboard): Use DEFVAR_KBOARD to define
22269 Vkeyboard_translate_table. Update doc strings. Update docs of
22270 local-function-key-map and function-key-map.
22271
22272 * terminal.c: New file.
22273
22274 * term.c: Include errno.h.
22275 (Vring_bell_function, device_list, initial_device)
22276 (next_device_id, ring_bell, update_begin, update_end)
22277 (set_terminal_window, cursor_to, raw_cursor_to)
22278 (clear_to_end, clear_frame, clear_end_of_line)
22279 (write_glyphs, insert_glyphs, delete_glyphs, ins_del_lines)
22280 (Fdisplay_name, create_device, delete_device): Move to terminal.c.
22281 (syms_of_term): Move their initialization to terminal.c.
22282 (get_tty_terminal, Fdisplay_tty_type, Ftty_display_color_p)
22283 (Ftty_display_color_cells)
22284 (Ftty_no_underline, Fsuspend_tty, Fresume_tty, create_tty_output)
22285 (clear_tty_hooks, set_tty_hooks)
22286 (init_tty, maybe_fatal): New functions.
22287 (Ftty_type): Return nil if terminal is not on a tty instead of
22288 throwing an error. Doc update.
22289 (syms_of_term) <Vsuspend_tty_functions, Vresume_tty_functions>:
22290 Doc update. Initialize new subrs and variables.
22291 (delete_tty): Use terminal->deleted.
22292 (tty_set_terminal_modes): Rename from set_terminal_modes.
22293 (tty_reset_terminal_modes): Rename from reset_terminal_modes.
22294 (set_scroll_region): Rename to `tty_set_scroll_region'.
22295 (turn_on_insert): Rename to `tty_turn_on_insert'.
22296 (turn_off_insert): Rename to `tty_turn_off_insert'.
22297 (turn_off_highlight): Rename to `tty_turn_off_highlight'.
22298 (turn_on_highlight): Rename to `tty_turn_on_highlight'.
22299 (toggle_highligh): Rename to `tty_toggle_highlight'.
22300 (background_highlight): Rename to `tty_background_highlight'.
22301 (highlight_if_desired): Rename to `tty_highlight_if_desired'.
22302 (tty_ring_bell, tty_update_end, tty_set_terminal_window)
22303 (tty_set_scroll_region, tty_background_highlight)
22304 (tty_cursor_to, tty_raw_cursor_to, tty_clear_to_end)
22305 (tty_clear_frame, tty_clear_end_of_line, tty_write_glyphs)
22306 (tty_insert_glyphs, tty_delete_glyphs, tty_ins_del_lines)
22307 (term_get_fkeys, tty_setup_colors, dissociate_if_controlling_tty):
22308 Add static modifier.
22309 (tty_reset_terminal_modes, tty_set_terminal_window)
22310 (tty_set_scroll_region, tty_background_highlight)
22311 (tty_highlight_if_desired, tty_cursor_to)
22312 (tty_raw_cursor_to, tty_clear_to_end, tty_clear_frame)
22313 (tty_clear_end_of_line, tty_write_glyphs, tty_insert_glyphs)
22314 (tty_delete_glyphs, tty_ins_del_lines, turn_on_face): Update for
22315 renames.
22316
223172007-08-28 Jan Djärv <jan.h.d@swipnet.se>
22318
22319 * keyboard.c: Qrtl is new.
22320 (parse_tool_bar_item): Handle :rtl keyword.
22321 (syms_of_keyboard): Intern :rtl keyword.
22322
22323 * dispextern.h (enum tool_bar_item_idx): Add TOOL_BAR_ITEM_RTL_IMAGE.
22324
22325 * gtkutil.c (xg_tool_bar_expose_callback): Just do SET_FRAME_GARBAGED
22326 so no Lisp code is executed.
22327 (file_for_image, find_rtl_image): New functions.
22328 (xg_get_image_for_pixmap): Use file_for_image.
22329 (update_frame_tool_bar): If direction is RTL, use RTL image if
22330 defined. Use Gtk stock images if defined.
22331
223322007-08-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22333
22334 * macterm.c (x_draw_composite_glyph_string_foreground): Draw rectangle
22335 for nonexistent or zero-width glyph in composition glyph.
22336
223372007-08-25 Stefan Monnier <monnier@iro.umontreal.ca>
22338
22339 * m/amdx86-64.h: Redirect to intel386.h if compiling for i386.
22340
22341 * xdisp.c (Finvisible_p): New function.
22342 (syms_of_xdisp): defsubr it.
22343
223442007-08-24 Juanma Barranquero <lekktu@gmail.com>
22345
22346 * image.c (syms_of_image) <image-library-alist, cross-disabled-images>:
22347 Doc fixes.
22348
223492007-08-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22350
22351 * mac.c [MAC_OSX] (select_and_poll_event, sys_select): Fix last changes.
22352
223532007-08-24 Martin Rudalics <rudalics@gmx.at>
22354
22355 * fileio.c (Finsert_file_contents): Consult CHARS_MODIFF to tell
22356 whether decoding has modified buffer contents.
22357
223582007-08-24 Jason Rumney <jasonr@gnu.org>
22359
22360 * image.c [HAVE_NTGUI]: Define dynamic loaded functions for SVG.
22361 (Qgdk_pixbuf, Qglib) [HAVE_NTGUI]: New symbols.
22362 (syms_of_image) [HAVE_NTGUI]: Intern and staticpro them.
22363 (init_svg_functions) [HAVE_NTGUI]: New function.
22364 (fn_g_type_init, fn_g_object_unref, fn_g_error_free): New #defines.
22365 (svg_load_image): Use them.
22366 (svg_load_image) [HAVE_NTGUI]: Implement background.
22367
223682007-08-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22369
22370 * Makefile.in (RSVG_LIBS, RSVG_CFLAGS): New variables.
22371 (ALL_CFLAGS): Use ${RSVG_CFLAGS} instead of @RSVG_CFLAGS@.
22372 (LIBX): Remove @RSVG_LIBS@.
22373 (LIBES): Add $(RSVG_LIBS).
22374
22375 * image.c (svg_load_image): Blend with specified background if exists.
22376 Use IMAGE_BACKGROUND. Add Mac OS Support.
22377
22378 * mac.c (wakeup_from_rne_enabled_p) [MAC_OSX]: Remove variable.
22379 (ENABLE_WAKEUP_FROM_RNE, DISABLE_WAKEUP_FROM_RNE) [MAC_OSX]:
22380 Remove macros.
22381 [MAC_OSX] (socket_callback): Do nothing.
22382 [MAC_OSX] (select_and_poll_event): Use CFRunLoopRunInMode instead of
22383 ReceiveNextEvent.
22384 [MAC_OSX] (sys_select): Likewise. Don't set context as argument to
22385 socket_callback.
22386 (mac_wakeup_from_rne) [MAC_OSX]: Do nothing.
22387
223882007-08-22 Glenn Morris <rgm@gnu.org>
22389
22390 * image.c (x_find_image_file): Search in etc/images/ rather than etc/.
22391
223922007-08-22 Paul Pogonyshev <pogonyshev@gmx.net>
22393
22394 * Makefile.in (ALL_CFLAGS, LIBX): Add RSVG_LIBS.
22395
22396 * image.c: Add support for SVG images. Some additional comments
22397 by Joakim Verona <joakim@verona.se>. When HAVE_RSVG is defined:
22398 (svg_image_p): New function to test for SVG image.
22399 (svg_load): New function to load SVG image.
22400 (svg_load_image): New function, helper for svg_load.
22401 (Qsvg): New Lisp_object.
22402 (svg_keyword_index): New enum.
22403 (svg_format): New static `image_keyword' struct.
22404 (svg_type): New static `image_type' struct.
22405 (librsvg/rsvg.h): Include it.
22406
224072007-08-23 Stefan Monnier <monnier@iro.umontreal.ca>
22408
22409 * lread.c (load_warn_old_style_backquotes): Fix up array size typo.
22410
224112007-08-22 Stefan Monnier <monnier@iro.umontreal.ca>
22412
22413 * lread.c (Qold_style_backquotes): New var.
22414 (syms_of_lread): Init and staticpro it.
22415 (load_warn_old_style_backquotes): New fun.
22416 (Fload): Use them to warn about old style backquotes.
22417 (end_of_file_error, Fload): Remove unused vars.
22418
22419 * lisp.h (Fclear_face_cache, Fx_send_client_event): Declare.
22420
22421 * lread.c (Vold_style_backquotes): New var.
22422 (syms_of_lread): Init and export it to Elisp.
22423 (read1): Set it when we find an old-style (back)quote.
22424
224252007-08-22 Jason Rumney <jasonr@gnu.org>
22426
22427 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): Add missing NULL terminator.
22428
224292007-08-22 Katsumi Yamaoka <yamaoka@jpl.org>
22430
22431 * puresize.h (BASE_PURESIZE): Increase to 1140000.
22432
224332007-08-19 Richard Stallman <rms@gnu.org>
22434
22435 * eval.c (Ffunction, Fquote): Signal error if not 1 argument.
22436
224372007-08-19 Andreas Schwab <schwab@suse.de>
22438
22439 * alloc.c (pure): Round PURESIZE up.
22440
224412007-08-17 Jan Djärv <jan.h.d@swipnet.se>
22442
22443 * xterm.c (handle_one_xevent): Remove check that mouse click is in
22444 active frame.
22445
224462007-08-16 Richard Stallman <rms@gnu.org>
22447
22448 * eval.c (Fcommandp): Add parens to clarify.
22449
22450 * minibuf.c (Fall_completions): Use enum for type of table.
22451
22452 * emacs.c (USAGE2): Improve text.
22453
224542007-08-15 Philippe Waroquiers <philippe.waroquiers@eurocontrol.int>
22455
22456 * term.c (tty_default_color_capabilities): Declare static
22457 variables in file scope, to avoid HPUX compiler problem.
22458
224592007-08-13 Jan Djärv <jan.h.d@swipnet.se>
22460
22461 * gtkutil.c (update_frame_tool_bar): Use -1 as index
22462 to gtk_toolbar_insert.
22463
224642007-08-13 Stefan Monnier <monnier@iro.umontreal.ca>
22465
22466 * fileio.c (Finsert_file_contents): Yet Another Int/Lisp_Object Mixup.
22467
22468 * insdel.c (reset_var_on_error): New fun.
22469 (signal_before_change, signal_after_change):
22470 Use it to reset (after|before)-change-functions to nil in case of error.
22471 Bind inhibit-modification-hooks to t.
22472 Don't bind (after|before)-change-functions to nil while they run.
22473
224742007-08-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22475
22476 * xterm.c (x_draw_image_glyph_string): Adjust stipple origin when
22477 filling pixmap with stippled background.
22478
224792007-08-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22480
22481 * macterm.c [TARGET_API_MAC_CARBON] (mac_handle_window_event):
22482 Don't use invisible frame as parent window for repositioning.
22483
224842007-08-10 Stefan Monnier <monnier@iro.umontreal.ca>
22485
22486 * print.c (new_backquote_output): Rename from old_backquote_output.
22487 (print): Inverse its logic (according to its name) so as to match the
22488 behavior of new_backquote_flag in lread.c.
22489
224902007-08-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22491
22492 * gmalloc.c (posix_memalign): New function.
22493
22494 * macterm.c (frame_highlight, frame_unhighlight): Don't call
22495 ActivateControl/DeactivateControl here.
22496 [USE_MAC_TOOLBAR] (free_frame_tool_bar): Suppress animation when
22497 frame-notice-user-settings is non-nil.
22498 [USE_MAC_FONT_PANEL] (mac_handle_font_event): Also record parameter
22499 for kEventParamFMFontStyle.
22500 [TARGET_API_MAC_CARBON] (mac_handle_keyboard_event): Don't check
22501 mac_pass_command_to_system and mac_pass_control_to_system here.
22502 (XTread_socket): Call ActivateControl/DeactivateControl here.
22503 (XTread_socket) [TARGET_API_MAC_CARBON]:
22504 Check mac_pass_command_to_system and mac_pass_control_to_system here.
22505 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Add further workaround
22506 for window repositioning.
22507
225082007-08-08 Glenn Morris <rgm@gnu.org>
22509
22510 * Replace `iff' in doc-strings and comments.
22511
225122007-08-07 Chong Yidong <cyd@stupidchicken.com>
22513
22514 * xdisp.c (move_it_by_lines): Remove incorrect optimization.
22515
225162007-08-07 Martin Rudalics <rudalics@gmx.at>
22517
22518 * fileio.c (Finsert_file_contents): Run format-decode and
22519 after_insert_file_functions on entire buffer when REPLACE is
22520 non-nil and inhibit modification_hooks and point_motion_hooks.
22521 For consistency, run after_insert_file_functions iff something
22522 got inserted. Move signal_after_change and update_compositions
22523 after code running after_insert_file_functions. Make sure that
22524 undo_list doesn't record intermediate steps of the decoding process.
22525
225262007-08-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22527
22528 * emacs.c (main)
22529 [HAVE_GTK_AND_PTHREAD && !SYSTEM_MALLOC && !DOUG_LEA_MALLOC]:
22530 Call malloc_enable_thread on interactive startup.
22531
22532 * gmalloc.c (_malloc_thread_enabled_p) [USE_PTHREAD]: New variable.
22533 (LOCK, UNLOCK, LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS)
22534 [USE_PTHREAD]: Conditionalize with it.
22535 (malloc_atfork_handler_prepare, malloc_atfork_handler_parent)
22536 (malloc_atfork_handler_child, malloc_enable_thread) [USE_PTHREAD]:
22537 New functions.
22538
225392007-08-06 Chong Yidong <cyd@stupidchicken.com>
22540
22541 * xdisp.c (redisplay_window): When restoring original buffer
22542 position, make sure it is still valid.
22543
22544 * image.c (png_load): Ignore png-supplied background color.
22545
225462007-08-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22547
22548 * mac.c [TARGET_API_MAC_CARBON] (cfdate_to_lisp): Obtain microsec value.
22549 Use kCFAbsoluteTimeIntervalSince1970.
22550
22551 * macmenu.c (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]:
22552 New variable.
22553 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Set it if dialog
22554 event loop should be quit.
22555 [TARGET_API_MAC_CARBON] (create_and_show_dialog) [!MAC_OSX]:
22556 Quit dialog event loop if quit_dialog_event_loop is set.
22557
22558 * macselect.c [!TARGET_API_MAC_CARBON]: Include Scrap.h.
22559 (Selection): New typedef. Use instead of ScrapRef.
22560 (mac_get_selection_from_symbol): Rename from get_scrap_from_symbol.
22561 (mac_valid_selection_target_p): Rename from valid_scrap_target_type_p.
22562 (mac_clear_selection): Rename from clear_scrap.
22563 (get_flavor_type_from_symbol): New argument SEL and subsume function of
22564 scrap_has_target_type. All uses changed.
22565 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
22566 (mac_selection_has_target_p): New functions.
22567 (mac_put_selection_value): Rename from put_scrap_string.
22568 (mac_get_selection_value): Rename from get_scrap_string.
22569 (mac_get_selection_target_list): Rename from get_scrap_target_type_list.
22570 (put_scrap_private_timestamp, scrap_has_target_type)
22571 (get_scrap_private_timestamp): Remove functions.
22572 (SCRAP_FLAVOR_TYPE_EMACS_TIMESTAMP): Remove define.
22573 (x_own_selection, x_get_local_selection):
22574 Use mac_valid_selection_value_p.
22575 (x_own_selection): Don't use put_scrap_private_timestamp.
22576 Record OWNERSHIP-INFO into Vselection_alist instead.
22577 (x_get_local_selection): Don't check type if request is local.
22578 (Fx_selection_owner_p): Don't use get_scrap_private_timestamp.
22579 Detect ownership change with OWNERSHIP-INFO in Vselection_alist instead.
22580
225812007-08-04 Jan Djärv <jan.h.d@swipnet.se>
22582
22583 * gtkutil.c (xg_tool_bar_callback): Generate two TOOL_BAR_EVENT:s,
22584 add comment explaining why.
22585
225862007-08-03 Richard Stallman <rms@gnu.org>
22587
22588 * fileio.c (Fvisited_file_modtime): Use make_time.
22589
225902007-08-01 Ryo Yoshitake <ryo@shiftmode.net> (tiny change)
22591
22592 * mac.c (init_mac_osx_environment): Adjust load-path on self-contained
22593 build.
22594
225952007-07-31 Stefan Monnier <monnier@iro.umontreal.ca>
22596
22597 * gtkutil.c (xg_tool_bar_callback): Generate a single TOOL_BAR_EVENT.
22598
225992007-07-30 Katsumi Yamaoka <yamaoka@jpl.org>
22600
22601 * puresize.h (BASE_PURESIZE): Increase to 1130000.
22602
226032007-07-30 Richard Stallman <rms@gnu.org>
22604
22605 * lread.c (readevalloop, read1): Treat NBSP as whitespace.
22606
226072007-07-29 Jan Djärv <jan.h.d@swipnet.se>
22608
22609 * gmalloc.c (__malloc_initialize): Remove pthread_once. Not needed.
22610
226112007-07-28 Nick Roberts <nickrob@snap.net.nz>
22612
22613 * xdisp.c (decode_mode_spec): Use '@' instead of 'R' to test for
22614 remote default-directory.
22615
22616 * buffer.c (mode-line-format): Update doc string.
22617
226182007-07-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22619
22620 * w32term.c (w32_draw_fringe_bitmap): Extend fringe background to
22621 scroll bar gap.
22622 (x_scroll_bar_create): Set bar->fringe_extended_p.
22623 (w32_set_vertical_scroll_bar): Put leftmost/rightmost scroll bars
22624 on frame edge. Check fringe background extension. Don't clear
22625 extended fringe background area.
22626
22627 * w32term.h (struct scroll_bar): New member fringe_extended_p.
22628 (w32_fill_area): Enclose multiple statements with do ... while (0).
22629
22630 * xterm.c (x_draw_fringe_bitmap) [USE_TOOLKIT_SCROLL_BARS]:
22631 Extend fringe background to scroll bar gap.
22632 (x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS]:
22633 Set bar->fringe_extended_p.
22634 (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
22635 Put leftmost/rightmost scroll bars on frame edge. Check fringe
22636 background extension. Don't clear extended fringe background area.
22637
22638 * xterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
22639 New member fringe_extended_p.
22640
226412007-07-25 Glenn Morris <rgm@gnu.org>
22642
22643 * Relicense all FSF files to GPLv3 or later.
22644
22645 * COPYING: Switch to GPLv3.
22646
226472007-07-25 Stefan Monnier <monnier@iro.umontreal.ca>
22648
22649 * eval.c (Fcommandp): Pay attention to the `interactive-form' property.
22650
22651 * data.c (Finteractive_form): Check for the presence of an
22652 `interactive-form' symbol property more thoroughly.
22653
22654 * data.c (Finteractive_form): Use an `interactive-form' property if
22655 present, analogous to the function-documentation property.
22656
226572007-07-24 Jason Rumney <jasonr@gnu.org>
22658
22659 * w32fns.c (x_real_positions): Get real position from OS instead of
22660 calculating it.
22661
226622007-07-23 Jason Rumney <jasonr@gnu.org>
22663
22664 * filelock.c (current_lock_owner): Allow for @ sign in username.
22665
226662007-07-22 Nick Roberts <nickrob@snap.net.nz>
22667
22668 * xdisp.c (decode_mode_spec): Add case 'R' for to test for
22669 remote default-directory.
22670
22671 * buffer.c (mode-line-format): Describe above case in doc string.
22672
226732007-07-20 Eli Zaretskii <eliz@gnu.org>
22674
22675 * w32proc.c (IMAGE_NT_OPTIONAL_HDR32_MAGIC, IMAGE_OPTIONAL_HEADER32):
22676 Define if not defined.
22677
226782007-07-18 Jason Rumney <jasonr@gnu.org>
22679
22680 * w32proc.c (w32_executable_type): Handle 64 bit executables.
22681
226822007-07-18 Richard Stallman <rms@gnu.org>
22683
22684 * data.c (Fsetq_default): Doc fix.
22685
22686 * eval.c (Fsetq): Doc fix.
22687
226882007-07-18 Juanma Barranquero <lekktu@gmail.com>
22689
22690 * coding.c (Ffind_operation_coding_system):
22691 * eval.c (For, Fand): Doc fixes.
22692 Reported by Johan Bockgård.
22693
226942007-07-18 Jan Djärv <jan.h.d@swipnet.se>
22695
22696 * xfns.c (Fx_focus_frame): Call x_ewmh_activate_frame.
22697
22698 * xterm.h: Declare x_ewmh_activate_frame.
22699
22700 * xterm.c (x_ewmh_activate_frame): New function.
22701 (XTframe_raise_lower): Move code to x_ewmh_activate_frame.
22702
227032007-07-17 Martin Rudalics <rudalics@gmx.at>
22704
22705 * window.c (Fdisplay_buffer): If largest or LRU window is the
22706 only window, split it even if it is not eligible for splitting.
22707 This restores the original behavior broken by the 2007-07-15
22708 change.
22709
227102007-07-17 Glenn Morris <rgm@gnu.org>
22711
22712 * abbrev.c (abbrev_check_chars): New function.
22713 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
22714 Call abbrev_check_chars to check abbrev characters are word
22715 constituents. Doc fix.
22716
227172007-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
22718
22719 * process.c (Fstart_process, Fmake_network_process)
22720 (read_process_output): Fix up last changes.
22721
227222007-07-16 Eli Zaretskii <eliz@gnu.org>
22723
22724 * makefile.w32-in (clean): Don't delete *~.
22725
227262007-07-16 Andreas Schwab <schwab@suse.de>
22727
22728 * window.c (Fdisplay_buffer): Use NILP.
22729 (Fset_window_scroll_bars): Likewise.
22730
227312007-07-15 Martin Rudalics <rudalics@gmx.at>
22732
22733 * window.c (window_min_size_2): New function.
22734 (window_min_size_1, size_window, Fdisplay_buffer)
22735 (Fsplit_window, adjust_window_trailing_edge): Use it to avoid
22736 windows without mode- or header-lines when window-min-height is
22737 too small.
22738 (size_window): Reset nodelete_p after testing it, following an
22739 earlier note by Kim F. Storm.
22740 (display_buffer): Do not set split_height_threshold to twice the
22741 value of window_min_height to avoid changing the value of a
22742 customizable variable. Rather explicitly check whether the
22743 height of the window that shall be splitted is at least as large
22744 as split_height_threshold.
22745 (Fwindow_full_width_p): New defun.
22746 (syms_of_window): Defsubr it.
22747
22748 * window.h: Add EXFUN for Fwindow_full_width_p.
22749
227502007-07-14 Jason Rumney <jasonr@gnu.org>
22751
22752 * process.c [WINDOWSNT]: Don't undefine AF_INET6.
22753
227542007-07-14 Richard Stallman <rms@gnu.org>
22755
22756 * eval.c (maybe_call_debugger): New function.
22757 (find_handler_clause): Use maybe_call_debugger.
22758 Call it when the handler says `debug'.
22759 Eliminate DEBUGGER_VALUE_PTR.
22760 (Fsignal): Eliminate debugger_value.
22761 (Qdebug): New variable.
22762 (syms_of_eval): Initialize it.
22763
227642007-07-14 Juanma Barranquero <lekktu@gmail.com>
22765
22766 * eval.c (Fprogn):
22767 * keyboard.c (Ftrack_mouse):
22768 * print.c (Fwith_output_to_temp_buffer):
22769 * window.c (Fsave_window_excursion): Doc fix.
22770
227712007-07-13 Stefan Monnier <monnier@iro.umontreal.ca>
22772
22773 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 400.
22774
227752007-07-12 Stefan Monnier <monnier@iro.umontreal.ca>
22776
22777 * process.h (struct Lisp_Process): Turn slots infd, outfd,
22778 kill_without_query, pty_flag, tick, update_tick, decoding_carryover,
22779 inherit_coding_system_flag, filter_multibyte, adaptive_read_buffering,
22780 read_output_delay, and read_output_skip from Lisp_Objects to ints.
22781 Remove unused encoding_carryover.
22782 * process.c: Adjust all functions accordingly.
22783
227842007-07-12 Richard Stallman <rms@gnu.org>
22785
22786 * term.c: Include unistd.h only if HAVE_UNISTD_H.
22787
227882007-07-11 Jason Rumney <jasonr@gnu.org>
22789
22790 * makefile.w32-in (LIBS): Include OLE32.
22791
22792 * w32fns.c (w32_msg_pump) <WM_EMACS_CREATEWINDOW>: Initialize COM.
22793 (w32_msg_pump) <WM_DESTROY>: Uninitialize COM.
22794
227952007-07-11 Stefan Monnier <monnier@iro.umontreal.ca>
22796
22797 * lisp.h (struct Lisp_Hash_Table): Turn next_weak into a bare pointer.
22798 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and turned
22799 from a Lisp_Object into a bare pointer.
22800 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
22801 Adjust the code correspondingly.
22802
22803 * alloc.c (emacs_blocked_free): Remove unused var `bytes_used_now'.
22804
22805 * term.c: Include unistd.h for ttyname, used in handle_one_term_event.
22806 (term_show_mouse_face): Remove unused var `j'.
22807 (handle_one_term_event): Remove unused vars `i' and `j'.
22808 Don't cast return value of ttyname since it's not necessary.
22809
228102007-07-10 Stefan Monnier <monnier@iro.umontreal.ca>
22811
22812 * alloc.c (mark_maybe_pointer): Enforce mult-of-8 alignment when using
22813 USE_LSB_TAG. Suggested by Dmitry Antipov <dmantipov@yandex.ru>.
22814
22815 * fns.c (map_char_table): Use an array of int for `indices' rather than
22816 an array of Lisp_Objects (which are only ever integers anyway).
22817 (Fmap_char_table): Update caller.
22818 * lisp.h: Update prototype.
22819 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap):
22820 * fontset.c (Ffontset_info):
22821 * casetab.c (set_case_table): Update callers.
22822
22823 * editfns.c (Ftranspose_regions): Use EMACS_INT for positions.
22824
22825 * keymap.c (struct accessible_keymaps_data)
22826 (struct where_is_internal_data): New structures.
22827 (accessible_keymaps_1, where_is_internal_1): Use them to change
22828 interface to adhere to the one used by map_keymap.
22829 (Faccessible_keymaps, where_is_internal): Use map_keymap.
22830 (accessible_keymaps_char_table, where_is_internal_2): Remove.
22831
22832 * keymap.h (map_keymap_function_t): More informative prototype.
22833
228342007-07-10 Guanpeng Xu <herberteuler@hotmail.com>
22835
22836 * search.c (Vinhibit_changing_match_data, search_regs_1): New vars.
22837 (looking_at_1): Don't change search_regs and last_thing_searched
22838 if `inhibit-changing-match-data' is non-nil.
22839 (string_match_1, search_buffer, set_search_regs): Likewise.
22840 (syms_of_search): Add Lisp level definition for
22841 `inhibit-changing-match-data' and set it to nil.
22842 (boyer_moore): If `inhibit-changing-match-data' is non-nil, compute
22843 start and end of the match, instead of using values in search_regs.
22844
228452007-07-01 Stefan Monnier <monnier@iro.umontreal.ca>
22846
22847 * minibuf.c (Fcompleting_read): New value `confirm-only'
22848 for `require-match'.
22849
228502007-06-28 Stefan Monnier <monnier@iro.umontreal.ca>
22851
22852 * fileio.c (Fdo_auto_save): Revert last patch installed unwillingly as
22853 part of the 2007-06-27 change to syms_of_fileio.
22854
228552007-06-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22856
22857 * macterm.c [USE_MAC_TSM] (mac_handle_text_input_event):
22858 Check WINDOWP before using XWINDOW. Consolidate return statements.
22859
228602007-06-27 Richard Stallman <rms@gnu.org>
22861
22862 * fileio.c (syms_of_fileio) <after-insert-file-functions>: Doc fix.
22863
228642007-06-27 Juanma Barranquero <lekktu@gmail.com>
22865
22866 * buffer.c (syms_of_buffer) <selective-display>: Fix typo in docstring.
22867
228682007-06-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22869
22870 * gmalloc.c [HAVE_GTK_AND_PTHREAD]: Check this after including config.h.
22871 (_aligned_blocks_mutex) [USE_PTHREAD]: New variable.
22872 (LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS): New macros.
22873 (_free_internal, memalign): Use them.
22874 (_malloc_mutex, _aligned_blocks_mutex) [USE_PTHREAD]:
22875 Initialize to PTHREAD_MUTEX_INITIALIZER.
22876 (malloc_initialize_1) [USE_PTHREAD]: Don't use recursive mutex.
22877 (morecore_nolock): Rename from morecore. All uses changed.
22878 Use only nolock versions of internal allocation functions.
22879 (_malloc_internal_nolock, _realloc_internal_nolock)
22880 (_free_internal_nolock): New functions created from
22881 _malloc_internal, _realloc_internal, and _free_internal.
22882 (_malloc_internal, _realloc_internal, _free_internal): Use them.
22883 Copy hook value to automatic variable before its use.
22884 (memalign): Copy hook value to automatic variable before its use.
22885
228862007-06-26 Kenichi Handa <handa@m17n.org>
22887
22888 * coding.c (Ffind_operation_coding_system): Docstring improved.
22889 (syms_of_coding): Docstring of `file-coding-system-alist' improved.
22890
228912007-06-25 David Kastrup <dak@gnu.org>
22892
22893 * keymap.c (Fcurrent_active_maps): Add `position' argument.
22894 (Fwhere_is_internal): Adjust call to `current-active-maps' to
22895 cater for additional parameter.
22896
22897 * keymap.h: Adjust number of parameters to `current-active-maps'.
22898
22899 * doc.c (Fsubstitute_command_keys): Adjust call of
22900 `current-active-maps'.
22901
229022007-06-25 David Kastrup <dak@gnu.org>
22903
22904 * callint.c (Fcall_interactively): Make the parsing of interactive
22905 specs somewhat more readable.
22906
229072007-06-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22908
22909 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe background
22910 to scroll bar gap also when bitmap fills fringe. Draw only foreground
22911 if extended background has already been filled.
22912
229132007-06-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22914
22915 * macgui.h (USE_CG_DRAWING): Don't require USE_ATSUI.
22916 (USE_MAC_TOOLBAR): Require USE_CG_DRAWING.
22917
22918 * macmenu.c (mac_dialog_modal_filter, Fx_popup_dialog) [MAC_OSX]:
22919 Put special treatment for Fmessage_box, Fyes_or_no_p, and Fy_or_n_p
22920 in #if 0 as it is not compatible with y-or-n-p-with-timeout.
22921 (timer_check) [TARGET_API_MAC_CARBON]: Add extern.
22922 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Use QuitEventLoop
22923 instead of QuitAppModalLoopForWindow. Consolidate QuitEventLoop calls.
22924 (pop_down_dialog) [TARGET_API_MAC_CARBON]: New function.
22925 [TARGET_API_MAC_CARBON] (create_and_show_dialog): Use it for unwind.
22926 Run timers during dialog popup.
22927 (Fmenu_or_popup_active_p) [TARGET_API_MAC_CARBON]: Use popup_activated.
22928
229292007-06-21 Jason Rumney <jasonr@gnu.org>
22930
22931 * image.c (convert_mono_to_color_image): Swap fore and background.
22932
229332007-06-20 Jason Rumney <jasonr@gnu.org>
22934
22935 * w32bdf.c (w32_BDF_to_x_font): Unmap memory when finished.
22936 (w32_free_bdf_font): Unmap memory not handle.
22937
229382007-06-20 Sam Steingold <sds@gnu.org>
22939
22940 * gmalloc.c (__morecore): Fix the declaration to comply with the
22941 definition.
22942
229432007-06-20 Juanma Barranquero <lekktu@gmail.com>
22944
22945 * w32term.c (w32_delete_display): Remove leftover declaration.
22946 (w32_define_cursor, w32_initialize): Make static.
22947
22948 * w32.c (_wsa_errlist): Fix typo in error message.
22949 (init_environment): Ignore any environment variable from the
22950 registry having a null value.
22951
229522007-06-20 Glenn Morris <rgm@gnu.org>
22953
22954 * Makefile.in (LIBGIF): Default to -lgif.
22955
229562007-06-17 Jason Rumney <jasonr@gnu.org>
22957
22958 * w32menu.c (add_menu_item): Don't use multibyte string functions on
22959 unicode strings.
22960
229612007-06-16 Juanma Barranquero <lekktu@gmail.com>
22962
22963 * xdisp.c (syms_of_xdisp) <auto-resize-tool-bars>:
22964 Fix typo in docstring.
22965
229662007-06-16 Eli Zaretskii <eliz@gnu.org>
22967
22968 * w32menu.c (add_menu_item): Escape `&' characters in menu items
22969 and their keybindings.
22970
229712007-06-15 Chong Yidong <cyd@stupidchicken.com>
22972
22973 * composite.c (update_compositions): Fix last fix.
22974
229752007-06-14 Jason Rumney <jasonr@gnu.org>
22976
22977 * w32.c (get_process_times_fn): New function pointer.
22978 (globals_of_w32): Intialize it if present in kernel32.dll.
22979 (w32_get_internal_run_time): New function.
22980
22981 * editfns.c (Fget_internal_run_time) [WINDOWSNT]: Use it.
22982
229832007-06-14 Kenichi Handa <handa@etlken.m17n.org>
22984
22985 * composite.c (update_compositions): Check the validness of
22986 compositions.
22987
229882007-06-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22989
22990 * frame.h (struct frame) [MAC_OS]: New member external_tool_bar.
22991 (FRAME_EXTERNAL_TOOL_BAR) [MAC_OS]: Use it.
22992
22993 * macfns.c (mac_window) [USE_MAC_TOOLBAR]: Set toolbar_win_gravity.
22994 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]: Set FRAME_EXTERNAL_TOOL_BAR.
22995
22996 * macgui.h (USE_MAC_TOOLBAR): New define.
22997
22998 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
22999 Return immediately unless popup is activated.
23000
23001 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe
23002 background to scroll bar gap.
23003 (x_scroll_bar_create) [MAC_OSX]: Set bar->fringe_extended_p.
23004 (XTset_vertical_scroll_bar) [MAC_OSX]: Put leftmost/rightmost
23005 scroll bars on frame edge. Check fringe background extension.
23006 Don't clear extended fringe background area.
23007 (TOOLBAR_IDENTIFIER, TOOLBAR_ICON_ITEM_IDENTIFIER)
23008 (TOOLBAR_ITEM_COMMAND_ID_OFFSET, TOOLBAR_ITEM_COMMAND_ID_P)
23009 (TOOLBAR_ITEM_COMMAND_ID_VALUE, TOOLBAR_ITEM_MAKE_COMMAND_ID):
23010 [USE_MAC_TOOLBAR]: New macros.
23011 (mac_move_window_with_gravity, mac_get_window_origin_with_gravity)
23012 (mac_handle_toolbar_event, mac_image_spec_to_cg_image)
23013 (mac_create_frame_tool_bar, update_frame_tool_bar, free_frame_tool_bar)
23014 (mac_tool_bar_note_mouse_movement, mac_handle_toolbar_command_event)
23015 [USE_MAC_TOOLBAR]: New functions.
23016 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Reposition window
23017 manually if previous repositioning has failed.
23018 (mac_handle_keyboard_event): Use precomputed event kind.
23019 (XTread_socket) [USE_MAC_TOOLBAR]: Handle click in structure region
23020 as tool bar item click. Handle mouse movement over tool bar items.
23021
23022 * macterm.h (struct mac_output) [USE_MAC_TOOLBAR]: New member
23023 toolbar_win_gravity.
23024 (struct scroll_bar) [MAC_OSX]: New member fringe_extended_p.
23025 (update_frame_tool_bar, free_frame_tool_bar) [USE_MAC_TOOLBAR]:
23026 Add externs.
23027
23028 * xdisp.c (update_tool_bar, redisplay_tool_bar, redisplay_window)
23029 [USE_MAC_TOOLBAR]: Sync with GTK+ tool bar display.
23030
230312007-06-14 Chong Yidong <cyd@stupidchicken.com>
23032
23033 * image.c (search_image_cache): Remove unused variable.
23034
230352007-06-13 Chong Yidong <cyd@stupidchicken.com>
23036
23037 * xfns.c, xmenu.c: Link to xaw3d if available.
23038
230392007-06-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23040
23041 * dispextern.h (struct image) [HAVE_WINDOW_SYSTEM]: New members
23042 frame_foreground and frame_background.
23043
23044 * image.c (lookup_image): Save frame foreground and background colors.
23045 (search_image_cache): Check if saved and current frame colors match.
23046
230472007-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
23048
23049 * regex.c (regex_compile): Remove the `regnum' counter.
23050 Use bufp->re_nsub instead. Add support for \(?N:RE\).
23051
230522007-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
23053
23054 * term.c: Include intervals.h to declare Fget_text_property.
23055
230562007-06-10 Jason Rumney <jasonr@gnu.org>
23057
23058 * w32fns.c (Fx_file_dialog): Take size from struct not pointer.
23059
230602007-06-08 Juanma Barranquero <lekktu@gmail.com>
23061
23062 * callint.c (Fcall_interactively):
23063 * editfns.c (Fdelete_and_extract_region):
23064 * fileio.c (Fread_file_name):
23065 * fns.c (Fmapconcat):
23066 * keyboard.c (cmd_error_internal):
23067 * keymap.c (Fkey_description):
23068 * lread.c (openp):
23069 * minibuf.c (read_minibuf):
23070 * search.c (wordify):
23071 * sunfns.c (sel_read):
23072 * xdisp.c (Fformat_mode_line, syms_of_xdisp):
23073 * xfns.c (x_default_scroll_bar_color_parameter):
23074 * xmenu.c (menu_help_callback):
23075 * xselect.c (Fx_get_atom_name):
23076 * xterm.c (x_term_init): Use empty_unibyte_string.
23077
230782007-06-08 Dmitry Antipov <dmantipov@yandex.ru> (tiny change)
23079
23080 * alloc.c (init_strings): Initialize canonical empty strings.
23081 (make_uninit_string, make_uninit_multibyte_string): Return appropriate
23082 canonical empty string when the requested size is 0.
23083
23084 * emacs.c (empty_unibyte_string): Rename from empty_string.
23085 (empty_multibyte_string): New canonical empty string.
23086 (syms_of_emacs): Don't initialize empty_string.
23087
23088 * lisp.h (STRING_SET_UNIBYTE): Return the canonical empty unibyte
23089 string, if appropriate.
23090 (empty_unibyte_string, empty_multibyte_string): New externs.
23091 (empty_string): Remove extern.
23092
23093 * lread.c (syms_of_lread): Use empty_unibyte_string.
23094
230952007-06-07 Jason Rumney <jasonr@gnu.org>
23096
23097 * s/ms-w32.h: Don't define HAVE_TZNAME.
23098
23099 * editfns.c (Fcurrent_time_zone): Remove hack for Japanese Windows.
23100
231012007-06-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23102
23103 * mac.c (xrm_get_preference_database): Remove BLOCK_INPUT.
23104
23105 * macfns.c (mac_get_window_bounds): Move extern to macterm.h.
23106 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use GetGlobalMouse.
23107
23108 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
23109 Don't call next handler.
23110 [TARGET_API_MAC_CARBON] (install_menu_target_item_handler):
23111 Remove argument. Install handler to application.
23112 (set_frame_menubar): Don't change deep_p.
23113 (mac_menu_show): Use FRAME_OUTER_TO_INNER_DIFF_X and
23114 FRAME_OUTER_TO_INNER_DIFF_Y.
23115 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
23116 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
23117 [HAVE_DIALOGS]: New macros.
23118 [HAVE_DIALOGS] (mac_handle_dialog_event, create_and_show_dialog):
23119 Use them.
23120 (fill_menubar) [TARGET_API_MAC_CARBON]: Use CFString.
23121
23122 * macselect.c [MAC_OSX] (install_service_handler): Rename from
23123 init_service_handler. All callers changed. Return OSStatus value.
23124
23125 * macterm.c (mac_begin_cg_clip): New arg F. Call SetPortWindowPort.
23126 All callers changed so as not to call SetPortWindowPort.
23127 (mac_begin_cg_clip) [USE_CG_DRAWING]: Call mac_prepare_for_quickdraw.
23128 (mac_draw_image_string_atsui) [USE_ATSUI]: New function created from
23129 mac_draw_string_common.
23130 (mac_draw_image_string_qd): Likewise.
23131 (mac_draw_string_common): Use them. Add INLINE.
23132 (XTmouse_position, x_scroll_bar_report_motion) [TARGET_API_MAC_CARBON]:
23133 Use FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y, and
23134 GetGlobalMouse.
23135 (x_set_mouse_pixel_position) [MAC_OSX]: Use FRAME_OUTER_TO_INNER_DIFF_X
23136 and FRAME_OUTER_TO_INNER_DIFF_Y.
23137 [TARGET_API_MAC_CARBON] (mac_handle_mouse_event): Likewise.
23138 [USE_MAC_TSM] (mac_handle_text_input_event): Likewise.
23139 (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Move code for
23140 repositioning window to mac_handle_window_event.
23141 (x_make_frame_invisible) [TARGET_API_MAC_CARBON]: Move code for
23142 saving window location to mac_handle_window_event
23143 [USE_MAC_FONT_PANEL] (mac_show_hide_font_panel): Install handler here.
23144 (install_menu_target_item_handler): Remove argument in extern.
23145 [TARGET_API_MAC_CARBON] (mac_event_to_emacs_modifiers):
23146 Also accept command events.
23147 (do_keystroke): New function created from XTread_socket.
23148 (init_command_handler): Remove functions.
23149 [TARGET_API_MAC_CARBON] (mac_handle_window_event): Reposition window
23150 and save window location by kEventWindowShowing and kEventWindowHiding
23151 handlers here. Don't call next handler for window state change and
23152 focus events.
23153 (mac_handle_application_event, mac_handle_keyboard_event)
23154 [TARGET_API_MAC_CARBON]: New functions.
23155 (install_window_handler) [TARGET_API_MAC_CARBON]: Register handlers for
23156 kEventWindowShowing and kEventWindowHiding events. Move installation
23157 of mouse, font, text input and menu target item handlers to
23158 install_application_handler.
23159 (install_application_handler) [TARGET_API_MAC_CARBON]: New function.
23160 (mac_handle_cg_display_reconfig) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
23161 New function.
23162 (init_dm_notification_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
23163 Register it.
23164 (XTread_socket) [TARGET_API_MAC_CARBON]:
23165 Consolidate SendEventToEventTarget calls.
23166 Use FRAME_OUTER_TO_INNER_DIFF_X and FRAME_OUTER_TO_INNER_DIFF_Y.
23167 Move application activation handler to mac_handle_application_event.
23168 Move keyboard handler to mac_handle_keyboard_event.
23169 (XTread_socket) [!TARGET_API_MAC_CARBON]: Use do_keystroke.
23170 (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
23171 init_command_handler. Call install_application_handler.
23172
23173 * macterm.h (mac_get_window_bounds): Move extern from macfns.c.
23174 (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y): New macros.
23175
231762007-06-07 Glenn Morris <rgm@gnu.org>
23177
23178 * emacs.c (main): Use `emacs-copyright' in --version output.
23179
231802007-06-06 Chong Yidong <cyd@stupidchicken.com>
23181
23182 * image.c (xpm_load): Remove spurious call to xpm_init_color_cache.
23183
231842007-06-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23185
23186 * macfns.c (mac_window): Replace WindowPtr with WindowRef.
23187
23188 * macgui.h: Replace WindowPtr with WindowRef.
23189
23190 * macmenu.c: Replace MenuHandle and GetMenuHandle with MenuRef and
23191 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
23192 Replace ControlHandle with ControlRef.
23193 (install_menu_quit_handler): Rename arg MENU_HANDLE to ROOT_MENU.
23194
23195 * macterm.c: Replace MenuHandle and GetMenuHandle with MenuRef and
23196 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
23197 Replace ControlHandle with ControlRef.
23198 (USE_CARBON_EVENTS): Remove. Use TARGET_API_MAC_CARBON instead.
23199 [MAC_OS8] (do_get_menus): Rename variable `menu_handle' to `menu'.
23200
23201 * macterm.h (struct scroll_bar): Rename member control_handle_low
23202 and control_handle_high to control_ref_low and control_ref_high.
23203 All uses changed.
23204 (SCROLL_BAR_CONTROL_REF, SET_SCROLL_BAR_CONTROL_REF): Rename from
23205 SCROLL_BAR_CONTROL_HANDLE and SET_SCROLL_BAR_CONTROL_HANDLE,
23206 respectively. All uses changed.
23207 (XCreatePixmap, XCreatePixmapFromBitmapData, XSetWindowBackground)
23208 (install_window_handler, remove_window_handler): Replace WindowPtr
23209 with WindowRef in externs.
23210
232112007-06-05 Juanma Barranquero <lekktu@gmail.com>
23212
23213 * xfaces.c (Finternal_lisp_face_p): Signal error for face alias loops.
23214
232152007-06-03 Nick Roberts <nickrob@snap.net.nz>
23216
23217 * keyboard.c (discard_mouse_events): Add GPM_CLICK_EVENT case.
23218
23219 * frame.c (Fmouse_position, Fmouse_pixel_position):
23220 Condition on HAVE_GPM too.
23221
23222 * term.c (term_mouse_highlight): Remove unused variables.
23223 (Fterm_open_connection): Set gpm_zerobased to 1.
23224 (term_mouse_movement, term_mouse_click, handle_one_term_event):
23225 Use zero based co-ordinates.
23226 (handle_one_term_event): Report a drag as mouse movement too.
23227
23228 * Makefile.in (MOUSE_SUPPORT): Define for HAVE_GPM.
23229
232302007-06-03 Chong Yidong <cyd@stupidchicken.com>
23231
23232 * image.c (search_image_cache): New function. Require background
23233 color match if background color is unspecified in the image spec.
23234 (uncache_image, lookup_image): Use it.
23235
232362007-06-01 Juanma Barranquero <lekktu@gmail.com>
23237
23238 * window.c (Fshrink_window): Reflow docstring.
23239
232402007-06-02 Chong Yidong <cyd@stupidchicken.com>
23241
23242 * Version 22.1 released.
23243
232442007-06-01 Richard Stallman <rms@gnu.org>
23245
23246 * xfns.c (x_encode_text): Add GCPRO.
23247
232482007-06-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23249
23250 * xfns.c (x_set_name_internal): Save encoded name before
23251 x_encode_text in case string data is relocated.
23252
232532007-05-31 Richard Stallman <rms@gnu.org>
23254
23255 * buffer.c (syms_of_buffer): Doc fix.
23256
232572007-05-30 Nick Roberts <nickrob@snap.net.nz>
23258
23259 * sysdep.c (init_sys_modes): Add rather than replace with
23260 O_NONBLOCK.
23261
23262 * frame.c [HAVE_GPM] (Fset_mouse_pixel_position): Add call to
23263 term_mouse_moveto.
23264
23265 * termhooks.h (term_mouse_moveto): New extern.
23266
23267 * term.c (mouse_face_window): Rename...
23268 (Qmouse_face_window): ...to this.
23269 (term_show_mouse_face, term_clear_mouse_face)
23270 (term_mouse_highlight): Use Qmouse_face_window.
23271 (term_mouse_moveto): New function.
23272 (term_mouse_position): Make it work.
23273 (syms_of_term): Uncomment assignment to mouse_position_hook.
23274 Staticpro Qmouse_face_window.
23275
232762007-05-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23277
23278 * xdisp.c (redisplay_internal): Bind inhibit-point-motion-hooks to t
23279 around current_column call.
23280
232812007-05-26 Dan Nicolaescu <dann@ics.uci.edu>
23282
23283 * xfaces.c (syms_of_xfaces): Delete stray semicolon.
23284 * xdisp.c (next_element_from_buffer):
23285 * window.c (delete_window):
23286 * term.c (term_mouse_highlight):
23287 * msdos.c (getdefdir):
23288 * macterm.c (mac_create_bitmap_from_bitmap_data)
23289 (init_font_name_table):
23290 * fns.c (Fsxhash):
23291 * data.c (Fmake_local_variable):
23292 * ccl.c (ccl_driver): Likewise.
23293
232942007-05-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23295
23296 * macterm.c [USE_CARBON_EVENTS] (mac_handle_window_event):
23297 Call mac_wakeup_from_rne on window size change.
23298
232992007-05-25 Chong Yidong <cyd@stupidchicken.com>
23300
23301 * image.c (uncache_image): Fix typo.
23302
233032007-05-23 Johannes Weiner <hannes@saeurebad.de> (tiny change)
23304
23305 * keyboard.c (make_lispy_movement): Condition on HAVE_GPM too.
23306
233072007-05-22 Richard Stallman <rms@gnu.org>
23308
23309 * xterm.c (x_connection_closed): Remove NO_RETURN.
23310
233112007-05-22 Martin Rudalics <rudalics@gmx.at>
23312
23313 * syntax.c (scan_words): Fix arg to UPDATE_SYNTAX_TABLE_BACKWARD.
23314
233152007-05-21 Chong Yidong <cyd@stupidchicken.com>
23316
23317 * image.c (uncache_image): New function.
23318 (Fimage_refresh): New function.
23319
233202007-05-20 Jan Djärv <jan.h.d@swipnet.se>
23321
23322 * Makefile.in: Move GPM check outside HAVE_X_WINDOWS.
23323
233242007-05-20 Nick Roberts <nickrob@snap.net.nz>
23325
23326 * config.in, keyboard.c, Makefile.in, sysdep.c, term.c,
23327 * termhooks.h: Use HAVE_GPM instead of HAVE_GPM_H.
23328
233292007-05-20 Nick Roberts <nickrob@snap.net.nz>
23330
23331 * keyboard.c (make_lispy_event): Make case GPM_CLICK_EVENT
23332 conditional on [HAVE_GPM_H].
23333
233342007-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
23335
23336 * syntax.c (skip_chars): Update syntax-table only after we checked that
23337 the new location is valid.
23338
233392007-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23340
23341 * macterm.c (x_calc_absolute_position): Add BLOCK_INPUT around
23342 mac_get_window_bounds.
23343
233442007-05-20 Nick Roberts <nickrob@snap.net.nz>
23345
23346 * Makefile.in (LIBGPM): Allow it to be set from configure.
23347 If set then link Emacs with it.
23348
23349 * config.in: Regenerate.
23350
23351 * lisp.h (add_gpm_wait_descriptor, delete_gpm_wait_descriptor):
23352 New externs.
23353
23354 * termhooks.h [HAVE_GPM_H] (enum event_kind): Add GPM_CLICK_EVENT.
23355 Include gpm.h.
23356 (handle_one_term_event, term_gpm): New externs.
23357
23358 * sysdep.c [HAVE_GPM_H] (init_sys_modes): Make gpm_fd nonblocking
23359 and allow it to be interrupted by SIGIO.
23360
23361 * process.c (gpm_wait_mask, max_gpm_desc): New variables.
23362 (wait_reading_process_output): Wait on gpm_fd too.
23363 (add_gpm_wait_descriptor, delete_gpm_wait_descriptor)): New functions.
23364 (add_gpm_wait_descriptor_called_flag): New variable.
23365 (delete_keyboard_wait_descriptor): Check gpm_wait_mask.
23366
23367 * keyboard.c [HAVE_GPM_H] (Qmouse_fixup_help_message)
23368 (make_lispy_movement, tracking_off, Ftrack_mouse, some_mouse_moved)
23369 (show_help_echo, readable_events, kbd_buffer_get_event, init_keyboard):
23370 Extend HAVE_MOUSE ifdefs to HAVE_GPM_H.
23371 (make_lispy_event): Add case GPM_CLICK_EVENT.
23372 (read_avail_input): Handle mouse input.
23373
23374 * term.c (write_glyphs_with_face): New function.
23375 [HAVE_GPM_H]: Include buffer.h, sys/fcntl.h.
23376 (mouse_face_beg_row, mouse_face_beg_col, mouse_face_end_row)
23377 (mouse_face_end_col, mouse_face_past_end, mouse_face_window)
23378 (mouse_face_face_id, term_gpm, pos_x, pos_y)
23379 (last_mouse_x, last_mouse_y): New variables.
23380 (term_show_mouse_face, term_clear_mouse_face, fast_find_position)
23381 (term_mouse_highlight, term_mouse_movement, term_mouse_position)
23382 (term_mouse_click, handle_one_term_event, Fterm_open_connection)
23383 (Fterm_close_connection): New functions.
23384 (term_init): Initialise mouse_face_window.
23385
233862007-05-19 Chong Yidong <cyd@stupidchicken.com>
23387
23388 * xdisp.c (redisplay_window): If first window line is a
23389 continuation line, recompute the new window start instead of
23390 recentering.
23391
233922007-05-18 Glenn Morris <rgm@gnu.org>
23393
23394 * m/alpha.h (ORDINARY_LINK): No longer define on OpenBSD.
23395 Suggested by Alfred M. Szmidt <ams@gnu.org>.
23396
233972007-05-17 Glenn Morris <rgm@gnu.org>
23398
23399 * m/macppc.h (ORDINARY_LINK): No longer define on OpenBSD.
23400
234012007-05-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23402
23403 * macterm.c [USE_CARBON_EVENTS] (mac_convert_event_ref): Also convert
23404 dead key repeat and up events.
23405
234062007-05-14 Chong Yidong <cyd@stupidchicken.com>
23407
23408 * image.c (pbm_load): Check image size for monochrome pbm.
23409
234102007-05-13 Chong Yidong <cyd@stupidchicken.com>
23411
23412 * xterm.c (XTread_socket): Revert last change.
23413
234142007-05-12 Chong Yidong <cyd@stupidchicken.com>
23415
23416 * image.c (pbm_load): Correctly check image size for greyscale pbm.
23417
23418 * xterm.c (XTread_socket): Yet Another Uncaught X Error Crash (YAUXEC).
23419
234202007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
23421
23422 * editfns.c (Ftranspose_regions): Yet another int/Lisp_Object
23423 mixup (YAILOM).
23424
234252007-05-07 Andreas Schwab <schwab@suse.de>
23426
23427 * keymap.c (Flookup_key): Fix typo in last change.
23428
234292007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
23430
23431 * keymap.c (Fdefine_key, Flookup_key): Only do the 0x80->meta_modifier
23432 mapping for unibyte strings.
23433
234342007-05-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23435
23436 * macmenu.c (mac_dialog_show): Apply 2007-04-27 change for xmenu.c.
23437 (Fx_popup_dialog) [MAC_OSX]: Likewise.
23438
234392007-04-29 Richard Stallman <rms@gnu.org>
23440
23441 * insdel.c (replace_range): For undo, record insertion first.
23442
234432007-04-29 Andreas Schwab <schwab@suse.de>
23444
23445 * lisp.h (VECSIZE): Use OFFSETOF.
23446
234472007-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23448
23449 * xdisp.c (try_window_reusing_current_matrix): Fix number of
23450 disabled lines.
23451
234522007-04-28 Richard Stallman <rms@gnu.org>
23453
23454 * lread.c (read_escape): In a string, \s is always space.
23455
234562007-04-27 Jan Djärv <jan.h.d@swipnet.se>
23457
23458 * xmenu.c (xdialog_show): Call Fredisplay before showing the dialog.
23459
23460 * gtkutil.c (xg_update_menubar, create_menus): Create empty
23461 submenu for menu bar items.
23462
23463See ChangeLog.10 for earlier changes.
23464
23465;; Local Variables:
23466;; coding: utf-8
23467;; add-log-time-zone-rule: t
aac0c6e3
MR
23468;; End:
23469
e3eb1dae 23470 Copyright (C) 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
aac0c6e3
MR
23471
23472 This file is part of GNU Emacs.
23473
23474 GNU Emacs is free software: you can redistribute it and/or modify
23475 it under the terms of the GNU General Public License as published by
23476 the Free Software Foundation, either version 3 of the License, or
23477 (at your option) any later version.
23478
23479 GNU Emacs is distributed in the hope that it will be useful,
23480 but WITHOUT ANY WARRANTY; without even the implied warranty of
23481 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
23482 GNU General Public License for more details.
23483
23484 You should have received a copy of the GNU General Public License
23485 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
23486
23487;; arch-tag: dfb6ad96-1550-4905-9e53-d2059ee84c40