Run kill-emacs when exiting for display closed or SIGTERM/HUP.
[bpt/emacs.git] / src / ChangeLog
CommitLineData
f63d0028
JD
12010-05-02 Jan Djärv <jan.h.d@swipnet.se>
2
3 * xsmfns.c (CHDIR_OPT): New define.
4 (smc_save_yourself_CB): Add CHDIR_OPT to options to use when
5 restarting emacs.
6
7 * xterm.c (x_connection_closed): Call Fkill_emacs instead of
8 shut_down_emacs.
9
10 * emacs.c (USAGE1): Mention --chdir.
11 (main): Handle --chdir.
12 (standard_args): Add --chdir.
13 (fatal_error_signal): Call Fkill_emacs for SIGTERM and SIGHUP (Bug
14 #5552).
15
e4814a9f
DN
162010-05-01 Dan Nicolaescu <dann@ics.uci.edu>
17
cd03c74a
DN
18 Remove LD_SWITCH_MACHINE.
19 * Makefile.in (LD_SWITCH_MACHINE): Remove definition, unused.
20 (TEMACS_LDFLAGS): Do not use LD_SWITCH_MACHINE.
21
c3a398a1
DN
22 Clean up IRIX code.
23 * m/iris4d.h (TERMINFO, FIRST_PTY_LETTER): Move definitions ...
24 * s/irix6-5.h (TERMINFO, FIRST_PTY_LETTER): ... here.
25
87e7285c
DN
26 Clean up AIX code.
27 * m/ibmrs6000.inp: Remove file, unused.
28 * m/ibmrs6000.h (IBMR2AIX): Remove, unused.
29 (LD_SWITCH_MACHINE): Rename to LD_SWITCH_SYSTEM_TEMACS, and move
30 definition ...
31 * s/aix4-2.h (LD_SWITCH_SYSTEM_TEMACS): ... here.
32
e4814a9f
DN
33 * sysdep.c (child_setup_tty, init_sys_modes): Remove !IBMR2AIX code, unused.
34
59ca28de
EZ
352010-05-01 Eli Zaretskii <eliz@gnu.org>
36
197daef4
EZ
37 Emulate POSIX_SIGNALS on MS-Windows.
38
39 * s/ms-w32.h (POSIX_SIGNALS, struct sigaction, SIG_BLOCK)
40 (SIG_SETMASK, SIG_UNBLOCK): Define.
d6dae14b
EZ
41
42 * sysdep.c (sys_signal) [WINDOWSNT]: #ifdef away.
43 (wait_for_termination) [WINDOWSNT]: Move MS-Windows specific code
44 from non-POSIX_SIGNALS section to POSIX_SIGNALS section.
45
197daef4
EZ
46 * w32.c (sigemptyset, sigaddset, sigfillset, sigprocmask): New
47 stubs.
48
af7c7572
EZ
49 Miscellaneous fixes of bidi display.
50
59ca28de
EZ
51 * xdisp.c (find_row_end): New function, refactored from display_line.
52 (display_line): Use it.
017ea819
EZ
53 (extend_face_to_end_of_line): In almost-filled rows, extend only
54 if the row is R2L and not continued.
166e930d 55 (display_line): Fix prepending of truncation glyphs to R2L rows.
af7c7572 56 Preserve overlay and string info in row->end.
166e930d
EZ
57 (insert_left_trunc_glyphs): Support addition of left truncation
58 glyphs to R2L rows.
b47e0dcf 59 (set_cursor_from_row): Don't place cursor on the vertical border
af7c7572
EZ
60 glyph between adjacent windows. Fix a crash when a display string
61 is continued to the next line. Don't return zero if cursor was
62 found by `cursor' property of a display string.
b47e0dcf
EZ
63 (try_cursor_movement): Don't assume that row->end == (row+1)->start,
64 test for that explicitly.
59ca28de 65
7acac9f4
GM
662010-05-01 Glenn Morris <rgm@gnu.org>
67
68 * Makefile.in (gmallocobj, rallocobj, vmlimitobj): Initialize to null,
69 for clarity.
70 (OTHER_OBJ): Remove.
71 (PRE_ALLOC_OBJ, POST_ALLOC_OBJ): New, set by configure.
72 (otherobj): Use PRE_ALLOC_OBJ, POST_ALLOC_OBJ rather than OTHER_OBJ.
73
45841e65
KK
742010-05-01 Karel Klíč <kklic@redhat.com>
75
76 * fileio.c (Ffile_selinux_context): Context functions may return null.
77
afc61943
DN
782010-04-30 Dan Nicolaescu <dann@ics.uci.edu>
79
80 * s/gnu.h (POSIX_SIGNALS):
81 (START_FILES): New definitions.
82
5a1bb006
GM
832010-04-30 Glenn Morris <rgm@gnu.org>
84
85 * Makefile.in (vmlimitobj) [!SYSTEM_MALLOC]: New variable. (Bug#6065)
86 (OTHER_OBJ): Define as a separate variable, for clarity.
87
210af043
J
882010-04-30 Jan Djärv <jan.h.d@swipnet.se>
89
90 * xsettings.c: include limits.h and update file comment.
91
0a7df391
GM
922010-04-30 Glenn Morris <rgm@gnu.org>
93
d5096f16
GM
94 * Makefile.in (OLDXMENU, LIBXMENU) [HAVE_MENUS]:
95 Set with configure, not cpp.
96 (LIBW): Remove, replace with $TOOLKIT_LIBW.
97
7eb1ac33
GM
98 * Makefile.in (mallocobj): Remove.
99 (otherobj): Simplify using @OTHER_OBJ@.
100
517d086b
GM
101 * Makefile.in (dispnew.o, frame.o, fringe.o, font.o, fontset.o)
102 (keyboard.o, window.o, xdisp.o, xfaces.o, menu.o):
103 Don't bother making nsgui.h dependency platform-specific.
104
0a7df391
GM
105 * Makefile.in (nsfns.o): Remove duplicate nsgui.h dependency.
106
d6d23852
SM
1072010-04-29 Stefan Monnier <monnier@iro.umontreal.ca>
108
d2630aef
SM
109 * process.c (read_process_output, exec_sentinel): Don't burp if the
110 sentinel/filter kills the current buffer (bug#6060).
111
f9dddf52 112 Fix wrong-docstring problem introduced with hash-consing. (Bug#6008)
d6d23852
SM
113 * eval.c (Fautoload): Set doc to a unique number rather than to 0.
114 Remove unused var `args'.
115 * lisp.h (XSETCARFASTINT, XSETCDRFASTINT): Remove.
116 (LOADHIST_ATTACH): Wrap with do...while to avoid surprises for callers.
117 * doc.c (store_function_docstring): Use XSETCAR.
118
f1e3642a
GM
1192010-04-28 Glenn Morris <rgm@gnu.org>
120
faf535f8
GM
121 * Makefile.in (BASE_WINDOW_SUPPORT, X_WINDOW_SUPPORT): New variables.
122 (WINDOW_SUPPORT) [HAVE_WINDOW_SYSTEM]: Use them.
123
c40f9449
GM
124 * Makefile.in (CYGWIN_OBJ): Set with configure, not cpp.
125
658f86ca
GM
126 * Makefile.in (GPM_MOUSE_SUPPORT): New, set by configure.
127 (MOUSE_SUPPORT) [!HAVE_MOUSE]: Use $GPM_MOUSE_SUPPORT.
128
bc0b5f61
GM
129 * Makefile.in (FONT_OBJ): New, set by configure.
130 (FONT_DRIVERS): Use $FONT_OBJ.
131
294c50a0
GM
132 * Makefile.in (LIBXMU): Set with configure, not cpp.
133 * s/aix4-2.h (LIBXMU):
134 * s/hpux10-20.h (LIBXMU):
135 Remove definition, now set in configure.
136
e6ec4e99
GM
137 * Makefile.in (NS_OBJ, NS_SUPPORT): Set with configure, not cpp.
138
f1e3642a
GM
139 * m/amdx86-64.h [i386]: Move this test to configure.in.
140
c6ea2936
GM
1412010-04-27 Glenn Morris <rgm@gnu.org>
142
8fdac2c3
GM
143 * Makefile.in (LIBXTR6): Set with configure, not cpp.
144 * s/unixware.h (NEED_LIBW): Remove definition.
145
986fb647
GM
146 * Makefile.in (LUCID_LIBW, MOTIF_LIBW): Remove, replacing by...
147 (TOOLKIT_LIBW): New, set by configure.
148 (@X_TOOLKIT_TYPE@): No longer define it.
149
c6ea2936
GM
150 * Makefile.in (LIBXP): Remove, since included in MOTIF_LIBW.
151 (MOTIF_LIBW): Set with configure, not cpp.
152 * s/aix4-2.h (LIB_MOTIF):
153 * s/gnu-linux.h (LIB_MOTIF):
154 * s/unixware.h (LIB_MOTIF): Move to configure.in.
155
aaa36002
DN
1562010-04-27 Dan Nicolaescu <dann@ics.uci.edu>
157
158 Reduce CPP usage.
159 * Makefile.in (LIB_X11_LIB): Remove, inline in the only user.
160 (obj): Use autoconf for unexec instead of cpp.
ed6281b0
DN
161 (C_SWITCH_SYSTEM, C_SWITCH_MACHINE, C_SWITCH_X_SITE): Remove
162 definitions and undefs. Inline definitions in the only user.
163 (ALL_CFLAGS): Substitute C_SWITCH_X_SYSTEM using autoconf.
aaa36002 164
b678dd8b
GM
1652010-04-27 Glenn Morris <rgm@gnu.org>
166
76cda504
GM
167 * m/amdx86-64.h (START_FILES, LIB_STANDARD): Change the logic around,
168 since the defaults (set by the system file) are fine in most cases.
169 [GNU_LINUX, __OpenBSD__, __NetBSD__, __APPLE__]: Remove sections.
170 * m/ibms390x.h (START_FILES, LIB_STANDARD):
171 * m/macppc.h (START_FILES, LIB_STANDARD) [GNU_LINUX]:
172 * m/sparc.h (START_FILES, LIB_STANDARD) [__linux__]:
173 Remove definitions, since they are set correctly in s/gnu-linux.h.
174 * s/freebsd.h (START_FILES, LIB_STANDARD):
175 * s/gnu-linux.h (START_FILES, LIB_STANDARD):
176 * s/hpux10-20.h (START_FILES):
177 * s/netbsd.h (START_FILES, LIB_STANDARD, START_FILES_1, END_FILES_1):
178 Use $CRT_DIR in place of fixed /usr/lib, /lib directories.
179
b678dd8b
GM
180 * Makefile.in (LIBXP, LUCID_LIBW, WIDGET_OBJ): Set via configure.
181 (MOTIF_LIBW): Use $LIBXP.
182 (otherobj): Use $WIDGET_OBJ.
183
9452ded1
DN
1842010-04-26 Dan Nicolaescu <dann@ics.uci.edu>
185
7e10844c
DN
186 * Makefile.in (LIBS_MACHINE): Remove, unused.
187
9452ded1
DN
188 Use autoconf instead of cpp for LIB_MATH.
189 * s/darwin.h (LIB_MATH): Do not define here, move to configure.
190 * s/cygwin.h (LIB_MATH): Likewise.
191 * Makefile.in (LIB_MATH): Do not define with cpp.
192 (LIBES): Use autoconf for LIB_MATH.
193
fcebfc6a
KH
1942010-04-26 Kenichi Handa <handa@m17n.org>
195
196 * composite.c (Ffind_composition_internal): Fix the return value
197 for an automatic composition.
198
39e2ad1b
DN
1992010-04-25 Dan Nicolaescu <dann@ics.uci.edu>
200
201 Remove all NO_ARG_ARRAY uses.
202 * fns.c (concat2, concat3, nconc2):
203 * eval.c (apply1, call1, call2, call3, call4, call5, call6)
204 (call7): Remove NO_ARG_ARRAY usage, assume it's always true.
205 * m/xtensa.h (NO_ARG_ARRAY):
206 * m/template.h (NO_ARG_ARRAY):
207 * m/sparc.h (NO_ARG_ARRAY):
208 * m/sh3.h (NO_ARG_ARRAY):
209 * m/mips.h (NO_ARG_ARRAY):
210 * m/macppc.h (NO_ARG_ARRAY):
211 * m/iris4d.h (NO_ARG_ARRAY):
212 * m/intel386.h (NO_ARG_ARRAY):
213 * m/ibms390x.h (NO_ARG_ARRAY):
214 * m/ibms390.h (NO_ARG_ARRAY):
215 * m/ibmrs6000.h (NO_ARG_ARRAY):
216 * m/ia64.h (NO_ARG_ARRAY):
217 * m/hp800.h (NO_ARG_ARRAY):
218 * m/arm.h (NO_ARG_ARRAY):
219 * m/amdx86-64.h (NO_ARG_ARRAY):
220 * m/alpha.h (NO_ARG_ARRAY): Remove definition.
221
adf4f59c
EZ
2222010-04-25 Eli Zaretskii <eliz@gnu.org>
223
6bdf5d65
EZ
224 * xdisp.c (display_line): Don't assume 2nd call to
225 get_next_display_element cannot return zero. (Bug#6030)
f538fcec
EZ
226 (iterate_out_of_display_property): New function, body from pop_it.
227 (pop_it): Use it.
adf4f59c 228
dfbbda83
GM
2292010-04-24 Glenn Morris <rgm@gnu.org>
230
231 * m/amdx86-64.h (START_FILES, LIB_STANDARD) [__OpenBSD__]:
232 For clarity, revert to using fixed /usr/lib rather than $CRT_DIR.
233 (START_FILES, LIB_STANDARD) [__FreeBSD__]: Merge into the generic case,
234 since CRT_DIR defaults to /usr/lib. Suggested by Dan Nicolaescu.
235
2d4018aa
EZ
2362010-04-24 Eli Zaretskii <eliz@gnu.org>
237
a49884a6
EZ
238 * xdisp.c (display_line): Use `reseat' instead of `reseat_1', and
239 use `get_next_display_element' and `set_iterator_to_next' to
240 advance to the next character, when looking for the character that
241 begins the next row.
242
76db6fcc 243 * .gdbinit: Add a "set Fmake_symbol" line to force GDB to load the
2d4018aa
EZ
244 definition of "struct Lisp_Symbol".
245
70eab5c1
GM
2462010-04-24 Glenn Morris <rgm@gnu.org>
247
248 * Makefile.in (CRT_DIR): New variable, set by configure.
249 * m/amdx86-64.h, m/ibms390x.h (START_FILES, LIB_STANDARD):
250 Use $CRT_DIR rather than HAVE_LIB64_DIR. (Bug#5655)
251
1ad4cc3d
DN
2522010-04-23 Dan Nicolaescu <dann@ics.uci.edu>
253
e769f484
DN
254 * Makefile.in: Remove C_SWITCH_X_MACHINE, unused.
255
4196ff33
DN
256 * s/cygwin.h (LIBS_DEBUG): Remove, unused.
257
879b0ee4
DN
258 Remove redundant flags.
259 * s/freebsd.h (C_SWITCH_SYSTEM):
260 * s/hpux10-20.h (C_SWITCH_X_SYSTEM, LD_SWITCH_X_DEFAULT):
261 * s/netbsd.h (C_SWITCH_SYSTEM):
262 * s/openbsd.h (LD_SWITCH_X_DEFAULT): Remove, configure takes care
263 of these.
264
03cbbcb8
DN
265 Simplify m/intel386.h.
266 * m/intel386.h (CRT0_DUMMIES): Remove, inline value in the only
267 user: ecrt0.c.
268 (SOLARIS2): Remove LOAD_AVE_TYPE, LOAD_AVE_CVT, LIBS_MACHINE, unused.
269 (USG5_4): Move LOAD_AVE_TYPE, LOAD_AVE_CVT, FSCALE definitions to
270 the only user: s/unixware.h.
271 * ecrt0.c: Remove #ifndef static. Inline CRT0_DUMMIES definition
272 from m/intel386.h.
273 * s/unixware.h (LOAD_AVE_TYPE, LOAD_AVE_CVT, FSCALE): Definitions
274 moved here from m/intel386.h.
275
1ad4cc3d
DN
276 * m/mips.h: Remove #if 0 code.
277
8785b888
EZ
2782010-04-23 Eli Zaretskii <eliz@gnu.org>
279
728588cc
EZ
280 Fix display of composed characters from L2R scripts in bidi buffers.
281 * xdisp.c (set_iterator_to_next, next_element_from_composition):
282 After advancing IT past the composition, resync the bidi iterator
283 with IT's position. (Bug#5977)
284
a63f80b4
DN
2852010-04-23 Dan Nicolaescu <dann@ics.uci.edu>
286
287 * Makefile.in (LD_SWITCH_MACHINE_TEMACS): Remove, unused.
288 (TEMACS_LDFLAGS): Don't use LD_SWITCH_SYSTEM_TEMACS.
289
ff5dec5c
SM
2902010-04-23 Stefan Monnier <monnier@iro.umontreal.ca>
291
292 * gtkutil.c: Include xsettings.h for Ftool_bar_get_system_style.
293
8785b888
EZ
2942010-04-23 Eli Zaretskii <eliz@gnu.org>
295
58ccf243 296 Support `display' text properties and overlay strings in bidi buffers.
8785b888
EZ
297 * xdisp.c (pop_it): When the stack is popped after displaying
298 from a string, bidi-iterate to exit from the text portion covered
299 by the `display' property or overlay. (Bug#5988, bug#5920)
300
feeb1604
DN
3012010-04-23 Dan Nicolaescu <dann@ics.uci.edu>
302
8e324eb6
DN
303 * m/macppc.h (LD_SWITCH_SYSTEM_TEMACS): Remove #undef.
304 (LD_SWITCH_MACHINE_TEMACS): Remove, configure sets nocombreloc.
305
809fcaba
DN
306 * s/netbsd.h (LD_SWITCH_SYSTEM_TEMACS): Remove, configure sets nocombreloc.
307 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Remove.
308
ed710380
DN
309 Simplify STARTFILES definition.
310 * s/hpux10-20.h (START_FILES): Explicitly define here instead of
311 relying on Makefile.in to define it.
312 * s/cygwin.h (START_FILES): Likewise.
313 * Makefile.in (STARTFILES): Remove conditional code, not needed anymore.
314
feeb1604
DN
315 Clean up Solaris code.
316 * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS, C_SWITCH_X_SYSTEM)
317 (LIB_MOTIF): Remove, configure takes care of this.
318 (NOT_USING_MOTIF): Remove, unused.
319 * xrdb.c: Remove #if 0-ed #include.
320 (SYSV): Remove conditional for old SysV.
321 * sysdep.c (closedir): Remove conditional code for Solaris,
322 Solaris has closedir.
323
a0d0b563
JD
3242010-04-22 Jan Djärv <jan.h.d@swipnet.se>
325
326 * xsettings.c (read_and_apply_settings): Check if current_font is
327 NULL before strcmp (Bug#6001).
328
56bae7c7
DN
3292010-04-21 Dan Nicolaescu <dann@ics.uci.edu>
330
331 Clean up HP-UX files.
332 * m/hp800.h (NO_REMAP, VIRT_ADDR_VARIES, DATA_SEG_BITS)
333 (DATA_START, TEXT_START, LOAD_AVE_TYPE, LOAD_AVE_CVT)
334 (LDAV_SYMBOL, index, rindex): Move definitions only used in HP-UX ...
335 * s/hpux10-20.h: ... to the only user, here.
336
372b7a95
EZ
3372010-04-21 Eli Zaretskii <eliz@gnu.org>
338
339 * bidi.c (bidi_find_paragraph_start, bidi_at_paragraph_end): Don't
340 use buffer-local values of paragraph-start and paragraph-separate.
341 <paragraph_start_re, paragraph_separate_re>: Rename from
342 fallback_paragraph_start_re and fallback_paragraph_separate_re.
343 (Bug#5992)
344
f904c0f9
JD
3452010-04-21 Jan Djärv <jan.h.d@swipnet.se>
346
347 * xsettings.c: Qmonospace_font_name, Qtool_bar_style and
348 current_tool_bar_style are new.
349 (store_config_changed_event): Rename from store_font_changed_event.
350 (XSETTINGS_TOOL_BAR_STYLE): New define.
351 (SEEN_FONT, SEEN_TB_STYLE): New enum values.
352 (struct xsettings): Add font and tb_style, set xft stuff inside #ifdef
353 HAVE_XFT.
354 (something_changedCB): store_font_changed_event is now
355 store_config_changed_event
356 (parse_settings): Rename from parse_xft_settings. Read
357 non-xft xsettings outside #ifdef HAVE_XFT.
358 (read_settings): Renamed from read_xft_settings.
359 (apply_xft_settings): Take current settings as parameter. Do not
360 call read_(xft)_settings.
361 (read_and_apply_settings): New function.
362 (xft_settings_event): Do non-xft stuff out of HAVE_XFT. Call
363 read_and_apply_settings if there are settings to be read.
364 (init_xsettings): Renamed from init_xfd_settings.
365 Call read_and_apply_settings unconditionally.
366 (xsettings_initialize): Call init_xsettings.
367 (Ftool_bar_get_system_style): New function.
368 (syms_of_xsettings): Define Qmonospace_font_name and
369 Qtool_bar_style. Initialize current_tool_bar_style to nil.
f9dddf52 370 defsubr Stool_bar_get_system_style. Fprovide on
f904c0f9 371 dynamic-setting.
31a01b90 372 Move misplaced HAVE_GCONF
f904c0f9
JD
373
374 * xsettings.h (Ftool_bar_get_system_style): Declare.
375
376 * xdisp.c: Vtool_bar_style, tool_bar_max_label_size,
377 Qtext, Qboth, Qboth_horiz are new.
378 (syms_of_xdisp): Intern Qtext, Qboth, Qboth_horiz, DEFVAR
379 Vtool_bar_style, tool_bar_max_label_size.
380
381 * lisp.h: Extern declare Qtext, Qboth, Qboth_horiz.
382
383 * keyboard.c: QClabel is new.
384 (parse_tool_bar_item): Take out QClabel from tool bar items.
385 Try to construct a label if ther is no QClabel.
386 (syms_of_keyboard): Intern :label as QClabel.
387
388 * dispextern.h (tool_bar_item_idx): TOOL_BAR_ITEM_LABEL is new.
389 (Vtool_bar_style, tool_bar_max_label_size, DEFAULT_TOOL_BAR_LABEL_SIZE):
390 New.
391
392 * Makefile.in (SOME_MACHINE_LISP): font-setting.el renamed to
393 dynamic-setting.el.
394
395 * gtkutil.c (xg_tool_bar_menu_proxy): Handle label in tool bar item.
396 (xg_make_tool_item, xg_show_toolbar_item): New function.
397 (update_frame_tool_bar): Take label from TOOL_BAR_ITEM_LABEL.
398 Call xg_make_tool_item to make a tool bar item.
399 Call xg_show_toolbar_item. Use wtoolbar instead of x->toolbar_widget.
400
401 * xterm.c (x_draw_image_relief): Take Vtool_bar_button_margin
402 into account for toolbars.
403
c632dfda
JD
4042010-04-21 Jan Djärv <jan.h.d@swipnet.se>
405
406 * data.c (make_blv): Declarations before code (Bug#5993).
407
10efe302
GM
4082010-04-21 Glenn Morris <rgm@gnu.org>
409
410 * Makefile.in (DBUS_OBJ, GTK_OBJ, XMENU_OBJ, XOBJ):
411 Define using autoconf, not cpp.
412 (LIBXSM): New variable, set by autoconf.
413 (LIBXT): Use $LIBXSM.
414
4285ac5a
DN
4152010-04-21 Dan Nicolaescu <local_user@dannlt>
416
3ec759e7
DN
417 Remove NOMULTIPLEJOBS, unused.
418 * s/template.h (NOMULTIPLEJOBS):
419 * s/msdos.h (NOMULTIPLEJOBS): Remove, unused.
420
4285ac5a
DN
421 Simplify LD_SWITCH_SYSTEM_TEMACS usage.
422 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS):
423 * s/gnu-linux.h (LD_SWITCH_SYSTEM_TEMACS): Remove, configure
424 detects -znocombreloc and passes it to the linker
425 * s/hpux10-20.h (LD_SWITCH_SYSTEM_TEMACS): Remove, empty.
426
2807228d
GM
4272010-04-21 Glenn Morris <rgm@gnu.org>
428
429 * Makefile.in (LIBSELINUX_LIBS): Move out of #ifdef.
430
574c05e2
KK
4312010-04-21 Karel Klíč <kklic@redhat.com>
432
433 * Makefile.in (LIBSELINUX_LIBS): New.
434 (LIBES): Add $LIBSELINUX_LIBS.
435 * eval.c, lisp.h (call7): New function.
436 * fileio.c [HAVE_LIBSELINUX]: Include selinux headers.
437 (Ffile_selinux_context, Fset_file_selinux_context):
438 New functions.
439 (Fcopy_file): New parameter preserve-selinux-context.
440 (Frename_file): Preserve selinux context when renaming by copy-file.
441
91eac4bb
JB
4422010-04-21 Juanma Barranquero <lekktu@gmail.com>
443 Eli Zaretskii <eliz@gnu.org>
444
50426a04
JB
445 Don't depend on cm.c or termcap.c on Windows, use stubs.
446 * makefile.w32-in (OBJ1): Remove cm.$(O) and termcap.$(O).
447 ($(BLD)/cm.$(O), $(BLD)/termcap.$(O)): Remove.
448 * w32console.c (current_tty, cost): New vars; lifted from cm.c.
449 (evalcost, cmputc, cmcheckmagic, cmcostinit, cmgoto, Wcm_clear)
450 (sys_tputs, sys_tgetstr): New stubs.
451 * s/ms-w32.h (chcheckmagic, cmcostinit, cmgoto, cmputc, Wcm_clear)
452 (tputs, tgetstr): New; define to sys_*.
91eac4bb 453
938efb77
JB
4542010-04-20 Juanma Barranquero <lekktu@gmail.com>
455
456 * buffer.c (syms_of_buffer) <bidi-display-reordering>: Doc fix.
457
b4bf28b7
SM
4582010-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
459
8b1e1112
SM
460 * data.c (Fmake_variable_buffer_local, Fmake_local_variable):
461 Just signal a warning rather than an error when inside a let.
462 (Fmake_variable_frame_local): Add the same test.
463
933ac235
SM
464 * font.c (syms_of_font): Make the style table vars read-only.
465
b4bf28b7
SM
466 * buffer.h (struct buffer): Remove unused var `direction_reversed'.
467 * buffer.c (init_buffer_once, syms_of_buffer): Remove its initialization.
468
469 * bidi.c (bidi_initialize): Simplify fallback_paragraph_*_re init.
470
93d68d0c
EZ
4712010-04-20 Eli Zaretskii <eliz@gnu.org>
472
473 Fix R2L paragraph display on TTY.
474
475 * xdisp.c (unproduce_glyphs): New function.
476 (display_line): Use it when produced glyphs are discarded from R2L
477 glyph rows.
478 (append_composite_glyph): In R2L rows, prepend the glyph rather
479 than appending it.
480
481 * term.c (append_composite_glyph): In R2L rows, prepend the glyph
482 rather than append it. Set up the resolved_level and bidi_type
483 attributes of the appended glyph.
283ccc18
EZ
484 (produce_special_glyphs): Mirror the backslash continuation
485 character in R2L lines.
93d68d0c 486
283ccc18 487 Implement display of R2L paragraphs in GUI sessions.
26cdf528 488
283ccc18
EZ
489 * xdisp.c [HAVE_WINDOW_SYSTEM]: Add prototype for
490 append_stretch_glyph.
491 (set_cursor_from_row) <cursor_x>: Remove unused variable. Fix
492 off-by-one error in computing x at end of text in the row.
493 (append_stretch_glyph): In reversed row, prepend the glyph rather
494 than append it. Set resolved_level and bidi_type of the glyph.
495 (extend_face_to_end_of_line): If the row is reversed, prepend a
496 stretch glyph whose width is such that the rightmost glyph will be
497 drawn at the right margin of the window. Fix off-by-one error on
498 TTY frames in testing whether a line needs face extension. Fix
499 face extension at ZV. If this is the last glyph row, use
500 DEFAULT_FACE_ID, to avoid painting the rest of the window with the
501 region face.
502 (set_cursor_from_row, display_line): Use
26cdf528
EZ
503 MATRIX_ROW_CONTINUATION_LINE_P instead of testing value of
504 row->continuation_lines_width.
283ccc18
EZ
505 (next_element_from_buffer): Don't call bidi_paragraph_init if we
506 are at ZV. Fixes a crash when reseated to ZV by
507 try_window_reusing_current_matrix.
45903529
EZ
508 (display_and_set_cursor, erase_phys_cursor): Handle negative HPOS,
509 which happens with R2L glyph rows. Fixes a crash when inserting a
510 character at end of an R2L line.
283ccc18
EZ
511 (set_cursor_from_row): Don't be fooled by truncated rows: don't
512 treat them as having zero-width characters. Improve comments.
513 Don't reverse pos_before and pos_after for reversed glyph rows.
514 Set cursor.x to negative value when the cursor might be on the
515 left fringe.
516 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): For R2L lines, consider the
517 left fringe, not the right one.
f951a506
EZ
518 (notice_overwritten_cursor, draw_phys_cursor_glyph)
519 (erase_phys_cursor): For reversed cursor_row, support cursor on
520 the left fringe.
521
283ccc18
EZ
522 * fringe.c (update_window_fringes): For R2L rows, swap the bitmaps
523 of continuation indicators on the fringes.
524 (draw_fringe_bitmap): For reversed glyph rows, allow cursor on the
525 left fringe.
526
f951a506
EZ
527 * w32term.c (w32_draw_window_cursor): For reversed glyph rows,
528 draw cursor on the left fringe.
529
530 * xterm.c (x_draw_window_cursor): For reversed glyph rows, draw
531 cursor on the left fringe.
532
f951a506
EZ
533 * dispnew.c (update_text_area): Handle reversed desired rows when
534 the cursor is on the left fringe.
535 (set_window_cursor_after_update): Limit cursor's hpos by -1 from
536 below, not by 0, for when the cursor is on the left fringe.
537
3bb49aaf
JD
5382010-04-20 Jan Djärv <jan.h.d@swipnet.se>
539
540 * gtkutil.c (xg_event_is_for_scrollbar): Check if grabbed
541 widget is a scrollbar.
542
c0be27fd
KH
5432010-04-20 Kenichi Handa <handa@m17n.org>
544
545 * charset.c (char_charset): Consider Vcharset_non_preferred_head
546 only when the arg CHARSET_LIST is nil.
547
ce5b453a
SM
5482010-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
549
550 Make variable forwarding explicit rather the using special values.
551 Basically, this makes the structure of buffer-local values and object
552 forwarding explicit in the type of Lisp_Symbols rather than use
553 special Lisp_Objects for that. This tends to lead to slightly more
554 verbose code, but is more C-like, simpler, and makes it easier to make
555 sure we handled all cases, among other things by letting the compiler
556 help us check it.
557 * lisp.h (enum Lisp_Misc_Type, union Lisp_Misc):
558 Removing forwarding objects.
559 (enum Lisp_Fwd_Type, enum symbol_redirect, union Lisp_Fwd): New types.
560 (struct Lisp_Symbol): Make the various forms of variable-forwarding
561 explicit rather than hiding them inside Lisp_Object "values".
562 (XFWDTYPE): New macro.
563 (XINTFWD, XBOOLFWD, XOBJFWD, XKBOARD_OBJFWD): Redefine.
564 (XBUFFER_LOCAL_VALUE): Remove.
565 (SYMBOL_VAL, SYMBOL_ALIAS, SYMBOL_BLV, SYMBOL_FWD, SET_SYMBOL_VAL)
566 (SET_SYMBOL_ALIAS, SET_SYMBOL_BLV, SET_SYMBOL_FWD): New macros.
567 (SYMBOL_VALUE, SET_SYMBOL_VALUE): Remove.
568 (struct Lisp_Intfwd, struct Lisp_Boolfwd, struct Lisp_Objfwd)
569 (struct Lisp_Buffer_Objfwd, struct Lisp_Kboard_Objfwd):
570 Remove the Lisp_Misc_* header.
571 (struct Lisp_Buffer_Local_Value): Redefine.
572 (BLV_FOUND, SET_BLV_FOUND, BLV_VALUE, SET_BLV_VALUE): New macros.
573 (struct Lisp_Misc_Any): Add filler to get the right size.
574 (struct Lisp_Free): Use struct Lisp_Misc_Any rather than struct
575 Lisp_Intfwd.
576 (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL, DEFVAR_INT)
577 (DEFVAR_KBOARD): Allocate a forwarding object.
578 * data.c (do_blv_forwarding, store_blv_forwarding): New macros.
579 (let_shadows_global_binding_p): New function.
580 (union Lisp_Val_Fwd): New type.
581 (make_blv): New function.
582 (swap_in_symval_forwarding, indirect_variable, do_symval_forwarding)
583 (store_symval_forwarding, swap_in_global_binding, Fboundp)
584 (swap_in_symval_forwarding, find_symbol_value, Fset)
585 (let_shadows_buffer_binding_p, set_internal, default_value)
586 (Fset_default, Fmake_variable_buffer_local, Fmake_local_variable)
587 (Fkill_local_variable, Fmake_variable_frame_local)
588 (Flocal_variable_p, Flocal_variable_if_set_p)
589 (Fvariable_binding_locus):
590 * xdisp.c (select_frame_for_redisplay):
591 * lread.c (Fintern, Funintern, init_obarray, defvar_int)
592 (defvar_bool, defvar_lisp_nopro, defvar_lisp, defvar_kboard):
593 * frame.c (store_frame_param):
594 * eval.c (Fdefvaralias, Fuser_variable_p, specbind, unbind_to):
595 * bytecode.c (Fbyte_code) <varref, varset>: Adapt to the new symbol
596 value structure.
597 * buffer.c (PER_BUFFER_SYMBOL): Move from buffer.h.
598 (clone_per_buffer_values): Only adjust markers into the current buffer.
599 (reset_buffer_local_variables): PER_BUFFER_IDX is never -2.
600 (Fbuffer_local_value, set_buffer_internal_1)
601 (swap_out_buffer_local_variables):
602 Adapt to the new symbol value structure.
603 (DEFVAR_PER_BUFFER): Allocate a Lisp_Buffer_Objfwd object.
604 (defvar_per_buffer): Take a new arg for the fwd object.
605 (buffer_lisp_local_variables): Return a proper alist (different fix
606 for bug#4138).
607 * alloc.c (Fmake_symbol): Use SET_SYMBOL_VAL.
608 (Fgarbage_collect): Don't handle buffer_defaults specially.
609 (mark_object): Handle new symbol value structure rather than the old
610 special Lisp_Misc_* objects.
611 (gc_sweep) <symbols>: Free also the buffer-local-value objects.
612 * term.c (set_tty_color_mode):
613 * bidi.c (bidi_initialize): Don't access the ->value field directly.
614 * buffer.h (PER_BUFFER_VAR_OFFSET): Don't bother with
615 a buffer_local_flags.
616 * print.c (print_object): Get rid of impossible forwarding objects.
617
fd3998ff
EZ
6182010-04-19 Eli Zaretskii <eliz@gnu.org>
619
620 * bidi.c (bidi_get_type, bidi_get_category)
621 (bidi_at_paragraph_end, bidi_resolve_weak, bidi_resolve_neutral)
ce5b453a
SM
622 (bidi_type_of_next_char, bidi_level_of_next_char):
623 Declare static. Use `INLINE' rather than `inline'.
fd3998ff 624
e42cd1a7
JB
6252010-04-19 Juanma Barranquero <lekktu@gmail.com>
626
627 * dired.c (Ffile_attributes): Fix typo in docstring.
628
6e104790 6292010-04-19 Adrian Robert <Adrian.B.Robert@gmail.com>
79353a53
AR
630
631 * nsmenu.m (EmacsDialog-runDialogAt:): Declare ret as
632 NSInteger (Bug#5811).
633
6e104790 6342010-04-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
658b9b93
YM
635
636 * s/darwin.h (PTY_ITERATION, PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF)
637 (PTY_OPEN): New defines. Use openpty (Bug#726, Bug#5819).
638
6e104790 6392010-04-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16009a0e
YM
640
641 * frame.h (FRAME_LINE_TO_PIXEL_Y): Add missing parenthesis.
642
6e104790
SM
6432010-04-19 Chong Yidong <cyd@stupidchicken.com>
644
645 * xdisp.c (prepare_menu_bars): Don't call ns_set_doc_edited for
646 terminal frames (Bug#5837).
647
37dcfea0
EZ
6482010-04-19 Eli Zaretskii <eliz@gnu.org>
649
d1da276f
EZ
650 * .gdbinit (xsubchartable): New command.
651
37dcfea0
EZ
6522010-04-19 Eli Zaretskii <eliz@gnu.org>
653
654 * xdisp.c (display_line): Don't write beyond the last glyph row in
9166b0f3 655 the desired matrix. Fixes a crash in "emacs -nw" (bug#5972), see
37dcfea0
EZ
656 http://lists.gnu.org/archive/html/emacs-devel/2010-04/msg00075.html
657 and
658 http://lists.gnu.org/archive/html/emacs-devel/2010-04/msg00213.html
659
e9515805
SM
6602010-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
661
662 * alloc.c (Fpurecopy): Hash-cons if requested.
663 (syms_of_alloc): Update purify-flag docstring.
664
22aa44a8
JD
6652010-04-18 Jan Djärv <jan.h.d@swipnet.se>
666
667 * gtkutil.c (xg_set_geometry): Set size in geometry string also.
668 (x_wm_set_size_hint): Set USER_POS in hint_flags (Bug#5968).
669
ebb5722e
EZ
6702010-04-17 Eli Zaretskii <eliz@gnu.org>
671
672 Fix a crash when an NSM character is inserted at BEGV.
673
674 * bidi.c (bidi_init_it): Fix initialization of bidi_it->prev.
675 (bidi_resolve_weak): Don't use prev.type_after_w1 if it is
676 NEUTRAL_B or UNKNOWN_BT.
677
0f4442ef
EZ
6782010-04-16 Eli Zaretskii <eliz@gnu.org>
679
680 * xdisp.c (set_cursor_from_row): Don't consider possibility of
681 other rows with cursor unless they are different from this row and
682 this row is part of a continued line. (Bug#5943)
683
7d4e45f8
DN
6842010-04-16 Dan Nicolaescu <dann@ics.uci.edu>
685
686 * s/freebsd.h: Restore osreldate.h include.
687 Suggested by Naohiro Aota.
688
5ba5ec85
J
6892010-04-16 Jan Djärv <jan.h.d@swipnet.se>
690
691 * xmenu.c (apply_systemfont_to_menu): *childs was incorrectly used.
692
20af301d
CY
6932010-04-16 Ken Brown <kbrown@cornell.edu> (tiny change)
694
695 * s/cygwin.h: Avoid linking against static libgcc.
696
a4b000fb
JL
6972010-04-15 Juri Linkov <juri@jurta.org>
698
699 * window.c: Add Qscroll_command.
700 Remove Vscroll_preserve_screen_position_commands.
701 (window_scroll_pixel_based, window_scroll_line_based): Check the
702 `scroll-command' property on the last command instead of searching
703 the last command in Vscroll_preserve_screen_position_commands.
704 (syms_of_window): Initialize and staticpro `Qscroll_command'.
705 Put Qscroll_command property on Qscroll_up and Qscroll_down.
706 (scroll-preserve-screen-position): Doc fix.
707 (Vscroll_preserve_screen_position_commands): Remove variable.
708
bc319ba4
DN
7092010-04-15 Dan Nicolaescu <dann@ics.uci.edu>
710
6bb24457
DN
711 * xdisp.c (message): Do not use NO_ARG_ARRAY.
712
19d4c244
DN
7132010-04-14 Dan Nicolaescu <dann@ics.uci.edu>
714
715 Reduce cpp use in Makefile.in.
716 * Makefile.in (DBUS_CFLAGS, DBUS_LIBS, GCONF_CFLAGS, GCONF_LIBS)
717 (LIBSOUND, CFLAGS_SOUND, RSVG_LIBS, RSVG_CFLAGS, INTERVALS_H)
718 (GETLOADAVG_LIBS, RUN_TEMACS): Move to the autoconf section.
719 (ORDINARY_LINK): Remove, defined in src/s/gnu.h.
720 (CRT0_COMPILE): Remove, inline it in the only user.
721
32129746
JL
7222010-04-14 Juri Linkov <juri@jurta.org>
723
724 * window.c (keys_of_window): Rebind `C-v' from `scroll-up' to
725 `scroll-up-command' and `M-v' from `scroll-down' to
726 `scroll-down-command'.
727
9013a7f8
JL
7282010-04-14 Juri Linkov <juri@jurta.org>
729
730 * window.c (Vscroll_preserve_screen_position_commands): New variable
731 with the default value as the list of Qscroll_down and Qscroll_up.
732 (window_scroll_pixel_based, window_scroll_line_based): Search the
733 last command in the list Vscroll_preserve_screen_position_commands
734 instead of comparing with Qscroll_up and Qscroll_down.
735
4bef8d26
JD
7362010-04-13 Jan Djärv <jan.h.d@swipnet.se>
737
92848133
JD
738 * gtkutil.c (xg_set_geometry): Set geometry for PPosition also.
739 (x_wm_set_size_hint): Dont set position flags, gtk_window_parse_geometry
740 does that.
741
4bef8d26
JD
742 * xfns.c (Fx_create_frame, x_create_tip_frame): Set default border width
743 to zero.
744
58b963f7
SM
7452010-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
746
84164a0d
SM
747 * term.c (init_tty): Move common text outside of #ifdef TERMINFO.
748
2b0a91e7
SM
749 Try to solve the problem of spurious EOF chars in long lines of text
750 sent to interactive subprocesses.
751 * sysdep.c (child_setup_tty): Do not enable ICANON any more.
752 (system_process_attributes): Remove unused var `ttotal'.
753 * process.c (send_process): Don't bother breaking long line with EOF
754 chars when talking to ttys any more.
755 (wait_reading_process_output): Output a warning when called in such
756 a way that it could block without being interruptible.
757
58b963f7
SM
758 Try to detect file modification within the same second.
759 * buffer.h (struct buffer): New field modtime_size.
760 * buffer.c (reset_buffer): Initialize it.
761 * fileio.c (Finsert_file_contents, Fwrite_region): Set it.
762 (Fverify_visited_file_modtime): Check it.
763 (Fclear_visited_file_modtime, Fset_visited_file_modtime): Clear it.
764 (Fset_visited_file_modtime): Set (or clear) it.
765
01f5787b
SM
7662010-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
767
768 * process.c (status_notify): Remove unused var `ro'.
769
83725342
JD
7702010-04-12 Jan Djärv <jan.h.d@swipnet.se>
771
772 * xfns.c (select_visual): Don't call error if XGetVisualInfo returns
773 more than one visual (Bug#5938).
774
b9465836
DN
7752010-04-12 Dan Nicolaescu <dann@ics.uci.edu>
776
50426a04
JB
777 * Makefile.in (C_SWITCH_SYSTEM,C_SWITCH_MACHINE,C_SWITCH_X_SITE):
778 Undefine.
b9465836 779
8d9c8ece
DN
7802010-04-11 Dan Nicolaescu <dann@ics.uci.edu>
781
b1f52161
DN
782 Remove C_SWITCH_SYSTEM_TEMACS.
783 * s/darwin.h (C_SWITCH_SYSTEM_TEMACS): Remove.
784 (malloc, realloc, free): Use emacs, not temacs for conditional
785 definition.
786
787 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Remove.
788 (ALL_CFLAGS): Do not use C_SWITCH_SYSTEM_TEMACS.
789
8d9c8ece
DN
790 Use autoconf, not cpp for some variables.
791 * Makefile.in (C_SWITCH_SYSTEM, C_SWITCH_MACHINE)
792 (C_SWITCH_X_SITE): Define using autoconf, not cpp.
793 (ALL_CFLAGS): Use them as make variables.
794 (really-lwlib, really-oldXMenu): Do not pass them.
795
1ecb2d3f
JD
7962010-04-11 Jan Djärv <jan.h.d@swipnet.se>
797
798 * xmenu.c (apply_systemfont_to_dialog): New.
799 (create_and_show_dialog): Call apply_systemfont_to_dialog if HAVE_XFT.
800
3a4fa2f2
SM
8012010-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
802
97e53006
SM
803 * process.c (exec_sentinel): Preserve current-buffer.
804
3a4fa2f2
SM
805 * process.c (read_process_output): Move the save-current-buffer to
806 apply to both the filter and the non-filter branches.
807
88df7221
DN
8082010-04-10 Dan Nicolaescu <dann@ics.uci.edu>
809
810 * s/msdos.h (UNEXEC): New definition.
811
5634ff85
YM
8122010-04-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
813
6eff5c3d
YM
814 * dispextern.h (TRY_WINDOW_CHECK_MARGINS)
815 (TRY_WINDOW_IGNORE_FONTS_CHANGE): New defines.
816
817 * xdisp.c (try_window): Change arg from CHECK_MARGINS to FLAGS.
818 Don't abort with fonts change if TRY_WINDOW_IGNORE_FONTS_CHANGE is
819 set in FLAGS. Callers with non-zero CHECK_MARGINS changed to use
820 TRY_WINDOW_CHECK_MARGINS.
821
822 * xfns.c (Fx_show_tip): Undo last change. Call try_window with
5b253e9c
YM
823 TRY_WINDOW_IGNORE_FONTS_CHANGE (Bug#2423). Subtract last glyph's
824 width only when it is for padding.
5634ff85 825
b13aef54
J
8262010-04-09 Jan Djärv <jan.h.d@swipnet.se>
827
828 * xfns.c (Fx_show_tip): Call try_window in a loop until
829 fonts_changed_p is zero (Bug#2423).
830
21d28484
EZ
8312010-04-08 Eli Zaretskii <eliz@gnu.org>
832
833 * xdisp.c (set_cursor_from_row): Don't dereference glyphs beyond
834 the end of TEXT_AREA. (Bug#5856)
835
0269ef77
JD
8362010-04-08 Jan Djärv <jan.h.d@swipnet.se>
837
838 * xsettings.c (XSETTINGS_FONT_NAME): Move XSETTINGS_FONT_NAME out of
839 HAVE_GCONF.
840
5930fe97
EZ
8412010-04-08 Eli Zaretskii <eliz@gnu.org>
842
843 * bidi.c (bidi_resolve_weak): Use prev.type_after_w1, instead of
844 prev.orig_type, for resolving type of NSM. (Bug#5858)
845
99852628
JD
8462010-04-08 Jan Djärv <jan.h.d@swipnet.se>
847
848 * xsettings.c (current_font, SYSTEM_FONT, XSETTINGS_FONT_NAME): New.
849 (parse_xft_settings): Also check for XSETTINGS_FONT_NAME and save that
850 in current_font.
851 (init_gconf): Read value of SYSTEM_FONT and save it in current_font.
50426a04
JB
852 (Ffont_get_system_normal_font, xsettings_get_system_normal_font):
853 New functions.
854 (syms_of_xsettings): Initialize current_font.
855 defsubr Sfont_get_system_normal_font.
99852628
JD
856
857 * xsettings.h (Ffont_get_system_normal_font,
858 xsettings_get_system_normal_font): Declare.
859
860 * xfns.c (extern xlwmenu_default_font): Remove.
861 (Fx_create_frame): Remove setting of xlwmenu_default_font, moved
862 to xlwmenu.c.
863
864 * menu.c (digest_single_submenu): If USE_LUCID and HAVE_XFT, encode
865 menu items in UTF-8.
866
867 * xmenu.c: include xsettings.h and xlwmenu.h if USE_LUCID.
868 (apply_systemfont_to_menu): New function.
869 (set_frame_menubar, create_and_show_popup_menu): Call
870 apply_systemfont_to_menu.
871
7fc874c4
J
8722010-04-07 Jan Djärv <jan.h.d@swipnet.se>
873
874 * frame.h (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Don't use
875 FRAME_LINE_TO_PIXEL_Y.
876
877 * xterm.c (x_set_window_size_1): Don't add border_width/height to
878 pixelwidth/height.
879
863bf481
DN
8802010-04-07 Dan Nicolaescu <dann@ics.uci.edu>
881
5e5a3b92
DN
882 Simplify code for HP machines.
883 * m/hp800.h (LOAD_AVE_TYPE, LOAD_AVE_CVT, NO_REMAP): Do not define
884 for GNU_LINUX, not needed.
885 (UNEXEC, NEED_BSDTTY): Move definitions...
886 * s/hpux10-20.h (UNEXEC, NEED_BSDTTY): ... here.
887
863bf481
DN
888 * m/iris4d.h (UNEXEC): Move definition ...
889 * s/irix6-5.h (UNEXEC): ... here.
890
3e6bec3b
JD
8912010-04-04 Jan Djärv <jan.h.d@swipnet.se>
892
893 * xfns.c (set_machine_and_pid_properties): New function.
894 (Fx_create_frame): Call set_machine_and_pid_properties.
895
2912322b
SM
8962010-04-03 Eli Zaretskii <eliz@gnu.org>
897
1502b819
EZ
898 * bidi.c (bidi_resolve_explicit, bidi_level_of_next_char): Check
899 bidi_it->bytepos against ZV_BYTE instead of bidi_it->ch against
900 BIDI_EOB. Fixes infloop with vertical cursor motion at ZV.
901
2912322b
SM
902 * w32fns.c (x_create_tip_frame): Copy `parms' before we modify it
903 in this function. (Bug#5703)
904
9052010-04-03 Chong Yidong <cyd@stupidchicken.com>
906
907 * nsterm.h: Fix last change.
908
c435b432
DN
9092010-04-03 Dan Nicolaescu <dann@ics.uci.edu>
910
a568f507
DN
911 * m/intel386.h (NO_REMAP): Move definition ...
912 * s/msdos.h (NO_REMAP): ... here.
913
4cd9f6c2
DN
914 * m/vax.h (CRT0_DUMMIES): Remove, unused.
915
c435b432
DN
916 * ecrt0.c: Remove MSDOS, m68k and __sparc__ conditionals, file not
917 used on those platforms.
918
42a2c622
DN
9192010-04-02 Dan Nicolaescu <dann@ics.uci.edu>
920
921 Remove extern errno declarations.
922 * xterm.c:
923 * xrdb.c:
924 * w32term.c:
925 * unexec.c:
926 * unexaix.c:
927 * sysdep.c:
928 * process.c:
929 * lread.c:
930 * keyboard.c:
931 * floatfns.c:
932 * filelock.c:
933 * fileio.c:
934 * emacs.c (main):
935 * ecrt0.c:
936 * dispnew.c:
937 * callproc.c:
938 * buffer.c: Remove errno extern declarations.
939 * s/netbsd.h (NEED_ERRNO): Remove.
940
8224f93d
DN
9412010-04-01 Dan Nicolaescu <dann@ics.uci.edu>
942
943 Remove all uses of LIBX11_SYSTEM.
944 * Makefile.in (LIBX11_SYSTEM): Remove.
945 * s/msdos.h (LIBX11_SYSTEM): Do not define, define LIBS_SYSTEM
946 instead.
947
814062c7
EZ
9482010-04-01 Eli Zaretskii <eliz@gnu.org>
949
ed68db4d
EZ
950 Remove support for DJGPP v1.x (bug#5813).
951
952 * w16select.c (__dpmi_int): Remove DJGPP v1.x compatibility.
8224f93d
DN
953 * s/msdos.h:
954 * unexec.c (make_hdr, copy_text_and_data):
955 * sysdep.c (wait_for_termination, sys_subshell):
ed68db4d 956 * msdos.c (dos_set_window_size, msdos_set_cursor_shape)
52f4d8d5
EZ
957 (IT_set_terminal_modes, __write, _rename, gethostname)
958 (gettimeofday, alarm, fork, kill, dos_ttraw, dos_ttcooked)
959 (run_msdos_command, abort): Remove DJGPP v1.x code and tests of
960 the value of __DJGPP__.
ed68db4d
EZ
961 (nice, pause, sigsetmask, sigblock): Remove DJGPP v1.x
962 compatibility code.
8224f93d
DN
963 * lread.c:
964 * gmalloc.c (memalign):
965 * fileio.c (Fcopy_file, check_executable, Ffile_modes):
966 * emacs.c (main):
967 * dosfns.c (init_dosfns):
ed68db4d
EZ
968 * dired.c (file_name_completion_stat): Remove tests of __DJGPP__.
969
52f4d8d5
EZ
9702010-04-01 Eli Zaretskii <eliz@gnu.org>
971
814062c7
EZ
972 * xdisp.c (set_cursor_from_row): Fix cursor positioning when the
973 string with `cursor' property comes from an `after-string'
974 overlay. (Bug#5816)
975
0dc2e11d
GM
9762010-04-01 Glenn Morris <rgm@gnu.org>
977
978 * Makefile.in (LIBTIFF, LIBJPEG, LIBPNG, LIBGIF, LIBXPM, XFT_LIBS):
979 Define as Makefile variables.
980 (LIBX): Use above variables rather than directly using autoconf.
981
1d29df59
DN
9822010-03-31 Dan Nicolaescu <dann@ics.uci.edu>
983
984 Clean up BSD_SYSTEM use.
985 * xterm.c:
986 * process.c:
987 * emacs.c: Use HAVE_SYS_IOCTL_H instead of BSD_SYSTEM as a guard
988 for including <sys/ioctl.h>.
989 * sysdep.c (wait_without_blocking): Remove BSD_SYSTEM case, this
990 code is only used for MSDOS.
991
1546c559
JL
9922010-03-31 Juri Linkov <juri@jurta.org>
993
994 * image.c: Add `Qextension_data'.
995 (syms_of_image): Initialize and staticpro `Qextension_data'.
996 (Fimage_metadata): Rename from `Fimage_extension_data'.
997 (gif_load): Put GIF extension data to the property
998 `Qextension_data'.
999
b8a1d5a1
CY
10002010-04-05 Chong Yidong <cyd@stupidchicken.com>
1001
1002 * xdisp.c (prepare_menu_bars): Don't call ns_set_doc_edited for
1003 terminal frames (Bug#5837).
1004
6521c534
CY
10052010-03-31 Chong Yidong <cyd@stupidchicken.com>
1006
1007 * nsfns.m (ns_set_doc_edited): Remove unused arg OLDVAL.
1008 * nsterm.h: Fix prototype.
1009
52c30783
EZ
10102010-03-31 Eli Zaretskii <eliz@gnu.org>
1011
1012 * xdisp.c (highlight_trailing_whitespace): Support highlight of
1013 trailing whitespace in right-to-left rows.
1014
855a0da7
SM
10152010-03-31 Stefan Monnier <monnier@iro.umontreal.ca>
1016
1017 Get rid of the direct_output optimizations.
1018 * keyboard.c (nonundocount): Remove extern declaration.
1019 (command_loop_1): Remove brittle optimisation for cheap and
1020 common operations.
1021 * xdisp.c (redisplay_internal): Don't bother checking
1022 redisplay_performed_directly_p any more.
1023 * sysdep.c (init_sys_modes): Don't call direct_output_forward_char
1024 any more.
1025 * dispnew.c (redisplay_performed_directly_p)
1026 (direct_output_for_insert, direct_output_forward_char):
1027 * dispextern.h (redisplay_performed_directly_p)
1028 (direct_output_for_insert, direct_output_forward_char): Remove.
1029 * cmds.c (nonundocount): Make it static.
1030
85738751 10312010-03-31 Bernhard Herzog <bh@intevation.de> (tiny change)
a6d676d9
CY
1032
1033 * menu.c (Fx_popup_menu): Use last_event_timestamp (Bug#4930).
1034
85738751 10352010-03-31 Jan Djärv <jan.h.d@swipnet.se>
67fee863
JD
1036
1037 * xdisp.c (note_mouse_highlight): Don't do highlight if pointer is
1038 invisible (Bug#5766).
1039
85738751 10402010-03-31 Adrian Robert <adrian.b.robert@gmail.com>
9ae6e189 1041
855a0da7
SM
1042 * xdisp.c (x_consider_frame_title, update_window_cursor):
1043 Remove HAVE_NS conditionals.
194d44e7 1044 (prepare_menu_bars) [HAVE_NS]: Call ns_set_doc_edited.
9ae6e189
CY
1045
1046 * nsfns.m (x_implicitly_set_name): If frame-title-format is t, use
1047 filename for the title.
1048 (ns_set_doc_edited): Do nothing if the selected window is a
1049 minibuffer window.
1050
1051 * nsterm.h: Add prototypes for ns_set_name_as_filename and
1052 ns_set_doc_edited.
1053
1054 * nsterm.m: Remove unneeded prototype.
1055
85738751 10562010-03-31 Glenn Morris <rgm@gnu.org>
25c72475
GM
1057
1058 * Makefile.in (SOME_MACHINE_OBJECTS): Ensure dbus stuff is always
1059 in the DOC file. (Bug#5336)
1060
85738751 10612010-03-31 Chong Yidong <cyd@stupidchicken.com>
f79a01db
CY
1062
1063 * xdisp.c (pos_visible_p): Revert 2008-01-25 change (Bug#5730).
1064
75d1428c
SM
10652010-03-31 Stefan Monnier <monnier@iro.umontreal.ca>
1066
1067 * window.c (keys_of_window): Remove redundant/overridden bindings.
1068
82043cfb
EZ
10692010-03-30 Eli Zaretskii <eliz@gnu.org>
1070
1071 * xdisp.c (BUFFER_POS_REACHED_P, move_it_in_display_line_to):
1072 Restore original behavior when the iterator is not bidi_p.
1073
b5dd0ae7
DN
10742010-03-30 Dan Nicolaescu <dann@ics.uci.edu>
1075
1076 * xdisp.c (syms_of_xdisp): Use intern_c_string instead of intern.
1077
bd924a5d
EZ
10782010-03-30 Eli Zaretskii <eliz@gnu.org>
1079
1080 * bidi.c (bidi_cache_iterator_state): Invalidate the cache if we
1081 are outside the range of cached character positions.
1082
3580374b
JB
10832010-03-30 Juanma Barranquero <lekktu@gmail.com>
1084
1085 * makefile.w32-in ($(BLD)/bidi.$(O)): Add dependency on w32gui.h.
1086
a7b02820
EZ
10872010-03-30 Eli Zaretskii <eliz@gnu.org>
1088
1089 Initial support for bidirectional editing.
1090
1091 * Makefile.in (obj): Include bidi.o.
1092 (bidi.o): New target.
1093
1094 * makefile.w32-in (OBJ1): Add $(BLD)/bidi.$(O).
1095 ($(BLD)/bidi.$(O)): New target.
1096
1097 * bidi.c: New file.
1098
1099 * buffer.h (struct buffer): New members bidi_display_reordering
1100 and bidi_paragraph_direction.
1101
1102 * buffer.c (init_buffer_once): Initialize bidi_display_reordering
1103 and bidi_paragraph_direction.
1104 (syms_of_buffer): Declare Lisp variables bidi-display-reordering
1105 and bidi-paragraph-direction.
1106 (Fbuffer_swap_text): Swap the values of
1107 bidi_display_reordering and bidi_paragraph_direction.
1108
1109 * dispextern.h (BIDI_MAXLEVEL, BIDI_AT_BASE_LEVEL): New macros.
1110 (bidi_type_t, bidi_dir_t): New types.
1111 (bidi_saved_info, bidi_stack, bidi_it): New structures.
1112 (struct it): New members bidi_p, bidi_it, paragraph_embedding,
1113 prev_stop, base_level_stop, and eol_pos.
1114 (bidi_init_it, bidi_get_next_char_visually): New prototypes.
1115 (IT_STACK_SIZE): Enlarge to 5.
1116 (struct glyph_row): New member reversed_p.
1117 <string_buffer_position>: Update prototype.
1118 (PRODUCE_GLYPHS): Set the reversed_p flag in the iterator's
1119 glyph_row if bidi_it.paragraph_dir == R2L.
1120 (struct glyph): New members resolved_level and bidi_type.
1121
1122 * dispnew.c (direct_output_forward_char): Give up if we need bidi
1123 processing or buffer's direction is right-to-left.
1124 (prepare_desired_row): Preserve the reversed_p flag.
1125 (row_equal_p): Compare the reversed_p attributes as well.
1126
1127 * xdisp.c (init_iterator): Initialize it->bidi_p. Call
1128 bidi_init_it and set it->paragraph_embedding from the current
1129 buffer's value of bidi_paragraph_direction.
1130 (reseat_1): Initialize bidi_it.first_elt.
1131 (set_iterator_to_next, next_element_from_buffer): Use the value of
1132 paragraph_embedding to determine the paragraph direction.
1133 (set_iterator_to_next): Under bidi reordering, call
1134 bidi_get_next_char_visually. Call bidi_paragraph_init if the
1135 new_paragraph flag is set in the bidi iterator.
1136 (next_element_from_buffer): If bidi_it.first_elt is set,
1137 initialize paragraph direction and find the first character to
1138 display in the visual order. If reseated to a middle of a line,
1139 prime the bidi iterator starting at the line's beginning. Handle
1140 the situation where we overstepped stop_charpos due to
1141 non-linearity of the bidi iteration. Likewise for when we back up
1142 beyond the previous stop_charpos. When moving across stop_charpos,
1143 record it in prev_stop.
1144 (display_line): Set row->end and it->start for the next row to the
1145 next character in logical order. Always extend reversed_p rows to
1146 the end of line, even if they end at ZV. Copy the reversed_p flag
1147 to the next glyph row. Keep calling set_cursor_from_row for
1148 bidi-reordered rows even if we already have a possible candidate
1149 for cursor position. Set row_end after all the row's glyphs have
1150 been produced, by looping over the glyphs. Record the position
1151 after EOL in it->eol_pos, and use it to set end_pos of the last
1152 row produced for a continued line.
1153 <Qright_to_left, Qleft_to_right>: New variables.
1154 (syms_of_xdisp): Initialize and staticpro them.
1155 (string_buffer_position_lim): New function.
1156 (string_buffer_position): Most of code moved to
1157 string_buffer_position_lim. Last argument and return value are
1158 now EMACS_INT; all callers changed.
1159 (set_cursor_from_row): Rewritten to support bidirectional text and
1160 reversed glyph rows.
1161 (text_outside_line_unchanged_p, try_window_id): Disable
1162 optimizations if we are reordering bidirectional text and the
1163 paragraph direction can be affected by the change.
1164 (append_glyph, append_composite_glyph)
1165 (produce_image_glyph, append_stretch_glyph): Set the
1166 resolved_level and bidi_type members of each glyph.
1167 (append_glyph): If the glyph row is reversed, prepend the glyph
1168 rather than appending it.
1169 (handle_stop_backwards): New function.
1170 (reseat_1, pop_it, push_it): Set prev_stop and base_level_stop.
1171 (reseat): call handle_stop_backwards to recompute prev_stop and
1172 base_level_stop for the new position.
1173 (handle_invisible_prop): Under bidi iteration, skip invisible text
1174 using bidi_get_next_char_visually. If we are `reseat'ed, init the
1175 paragraph direction. Update IT->prev_stop after skipping
1176 invisible text.
1177 (move_it_in_display_line_to): New variables prev_method
1178 and prev_pos. Compare for strict equality in
1179 BUFFER_POS_REACHED_P.
1180 (try_cursor_movement): Examine all the candidate rows that occlude
1181 point, to return the best match. If rows are bidi-reordered
1182 and point moved backwards, back up to the row that is not a
1183 continuation line, and start looking for a suitable row from
1184 there.
1185
1186 * term.c (append_glyph): Reverse glyphs by pre-pending them,
1187 rather than appending, if the glyph_row's reversed_p flag is set.
1188 Set the resolved_level and bidi_type members of each glyph.
1189
1190 * .gdbinit (pbiditype): New command.
1191 (pgx): Use it to display bidi level and type of the glyph.
1192 (pitx): Display some bidi information about the iterator.
1193 (prowlims, pmtxrows): New commands.
1194
32a8894e
DN
11952010-03-30 Dan Nicolaescu <dann@ics.uci.edu>
1196
1197 Remove all uses of C_DEBUG_SWITCH and LIBS_DEBUG.
1198 * s/usg5-4.h (LIBS_DEBUG):
1199 * s/irix6-5.h (C_DEBUG_SWITCH):
1200 * s/gnu-linux.h (LIBS_DEBUG):
1201 * s/darwin.h (LIBS_DEBUG):
1202 * s/bsd-common.h (LIBS_DEBUG):
1203 * s/aix4-2.h (LIBS_DEBUG, C_DEBUG_SWITCH):
1204 * m/iris4d.h (LIBS_DEBUG):
1205 * m/hp800.h (LIBS_DEBUG): Remove definitions.
1206
1207 * Makefile.in (LIBES): Remove reference to LIBS_DEBUG.
1208 (LIBS_DEBUG): Remove definition.
1209
649dbf36
CY
12102010-03-27 Chong Yidong <cyd@stupidchicken.com>
1211
1212 * process.c (Fmake_network_process): Don't apply Bug#5173 fix for
1213 Windows.
1214
cad4261f
YM
12152010-03-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1216
1217 * process.c (Fmake_network_process): Don't call turn_on_atimers around
1218 `connect' (Bug#5723).
1219
cd591dbc
HE
12202010-03-25 Helmut Eller <eller.helmut@gmail.com>
1221
1222 * process.c (Fmake_network_process): Call `select' for interrupted
1223 `connect' rather than creating new socket (Bug#5173).
1224
e867cb5d 12252010-03-24 Jan Djärv <jan.h.d@swipnet.se>
93318cbd
JD
1226
1227 * frame.c (x_get_arg): Handle RES_TYPE_BOOLEAN_NUMBER (bug #5736).
1228
1229 * xfns.c (Fx_create_frame): Make menuBar a RES_TYPE_BOOLEAN_NUMBER.
1230
1231 * dispextern.h (resource_types): RES_TYPE_BOOLEAN_NUMBER is new.
1232
e867cb5d 12332010-03-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
ad13a3ee
YM
1234
1235 * xfns.c (Fx_create_frame) [USE_LUCID]: Add BLOCK_INPUT around
1236 XLoadQueryFont.
1237
e867cb5d 12382010-03-24 Kenichi Handa <handa@m17n.org>
fbdc1721
KH
1239
1240 * coding.c (decode_coding_ccl): Fix previous change for the
1241 multibyte case.
fb608df3
KH
1242 (encode_coding_ccl): Don't setup ccl program here. Fix for the
1243 case that the output buffer is fullfilled.
1244 (encode_coding): Setup ccl program here.
fbdc1721 1245
e867cb5d 12462010-03-24 Andreas Politz <politza@fh-trier.de> (tiny change)
35cd7cd6
CY
1247
1248 * editfns.c (Fformat): Account for string precision when computing
1249 field width (Bug#5710).
1250
5845f0ed
DN
12512010-03-23 Dan Nicolaescu <dann@ics.uci.edu>
1252
814fb708
DN
1253 * s/gnu-linux.h (LIBS_SYSTEM): Remove, same as default.
1254
5845f0ed
DN
1255 Simplify LIBS_MACHINE definitions.
1256 * m/hp800.h (LIBS_MACHINE): Remove, same as default.
1257 * m/iris4d.h (LIBS_MACHINE): Likewise.
1258 * m/ibmrs6000.h (LIBS_MACHINE): Rename to LIBS_SYSTEM and move ...
1259 * s/aix4-2.h (LIBS_SYSTEM): ... here.
38e3487c 1260 * s/netbsd.h: Remove commented out code.
5845f0ed 1261
b7064064
DN
12622010-03-22 Dan Nicolaescu <dann@ics.uci.edu>
1263
df7734b2
DN
1264 Remove dead code dealing with POSIX_SIGNALS.
1265 * atimer.c (set_alarm): Remove dead code, all USG systems define
1266 POSIX_SIGNALS.
1267 * data.c (arith_error): Likewise.
1268 * keyboard.c (input_available_signal, handle_user_signal)
1269 (interrupt_signal): Likewise.
1270 * process.c (sigchld_handler): Likewise.
1271 (create_process): Remove if 0 code. Remove HPUX conditional when
1272 !defined (POSIX_SIGNALS), it cannot be true.
1273 * syssignal.h: Remove USG5_4 and USG conditionals when
1274 !POSIX_SIGNALS, they cannot be true.
1275
b7064064
DN
1276 * keyboard.c (Fset_input_interrupt_mode): Remove code depending on
1277 NO_SOCK_SIGIO, not used anymore.
1278
55da5ee3
DN
12792010-03-21 Dan Nicolaescu <dann@ics.uci.edu>
1280
0be96e3a
DN
1281 * m/vax.h (BSD_SYSTEM, BSD4_2): Remove conditionals, we only
1282 support vax on BSDs.
1283
55da5ee3
DN
1284 * m/ibmrs6000.h (ORDINARY_LINK): Move definition ...
1285 * s/aix4-2.h (ORDINARY_LINK): ... here.
1286
c0282183
AS
12872010-03-21 Andreas Schwab <schwab@linux-m68k.org>
1288
82c3d67a
AS
1289 * Makefile.in (abs_builddir): Define.
1290 (bootstrap_exe): Use it.
1291 (VPATH): Use $(srcdir) instead of @srcdir@.
c0282183 1292
3613edce
SM
12932010-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
1294
1295 * Makefile.in (bootstrap_exe): Use an absolute name.
1296
7f110ddc
DN
12972010-03-20 Dan Nicolaescu <dann@ics.uci.edu>
1298
22e87574
DN
1299 Remove support for old GNU/Linux using libc version 5.
1300 * m/alpha.h (LINUX_SBRK_BUG): Remove definition.
1301 * emacs.c (main): Remove code depending on LINUX_SBRK_BUG.
1302
05a670e6
DN
1303 Consolidate redundant definitions in s/bsd-common.h.
1304 * s/bsd-common.h (BSD4_2, TABDLY, TAB3, HAVE_TERMIOS, NO_TERMIO)
1305 (LIBS_DEBUG, SYSV_SYSTEM_DIR, UNEXEC, NARROWPROTO, BSD_PGRPS)
1306 (LDAV_SYMBOL, KERNEL_FILE): Define (or undefine) here instead of
1307 doing it in all files that include this one.
1308 * s/gnu.h (BSD4_2, TABDLY, TAB3, HAVE_TERMIOS, NO_TERMIO)
1309 (LIBS_DEBUG, SYSV_SYSTEM_DIR, UNEXEC, NARROWPROTO, BSD_PGRPS)
1310 (LDAV_SYMBOL, KERNEL_FILE): Remove.
1311 * s/freebsd.h (BSD4_2, TABDLY, TAB3, HAVE_TERMIOS, NO_TERMIO)
1312 (LIBS_DEBUG, SYSV_SYSTEM_DIR, UNEXEC, NARROWPROTO, BSD_PGRPS)
1313 (LDAV_SYMBOL, KERNEL_FILE): Remove.
1314 * s/netbsd.h (BSD4_2, TABDLY, TAB3, HAVE_TERMIOS, NO_TERMIO)
1315 (LIBS_DEBUG, SYSV_SYSTEM_DIR, UNEXEC, NARROWPROTO, BSD_PGRPS)
1316 (LDAV_SYMBOL, KERNEL_FILE): Remove.
1317
2968f561
DN
1318 Consolidate redundant definitions.
1319 * s/usg5-4.h (sigsetmask, PTY_TTY_NAME_SPRINTF): Do not define,
1320 it's undefined in all files that include this one.
1321 (POSIX_SIGNALS): Define here instead of doing it in all files that
1322 include this one.
1323 * s/irix6-5.h (sigsetmask, PTY_TTY_NAME_SPRINTF): Do not undef.
1324 (POSIX_SIGNALS): Do not define.
1325 * s/sol2-6.h (sigsetmask, PTY_TTY_NAME_SPRINTF): Do not undef.
1326 (POSIX_SIGNALS): Do not define.
1327 * s/unixware.h (sigsetmask, PTY_TTY_NAME_SPRINTF): Do not undef.
1328 (POSIX_SIGNALS): Do not define.
1329
15d25dc0
DN
1330 Remove support for old UNIX System V systems.
1331 * s/unixware.h: Add the contents of s/usg-5-4-2.h.
1332 * s/usg-5-4-2.h: Remove.
1333
07e339e4
DN
1334 Remove support for Solaris on PPC and for old versions.
1335 * s/sol2-6.h: Add the contents of s/sol-2.3.h, s/sol-2.4.h, s/sol-2.5.h.
1336 (LD_SWITCH_SYSTEM, USE_MMAP_FOR_BUFFERS): Remove #defines/#undef
1337 that cancel each other.
1338 * s/sol2-3.h:
1339 * s/sol2-4.h:
1340 * s/sol2-5.h: Remove.
1341 * m/ibmrs6000.h: Remove code for USG5_4, this file is only used on AIX.
1342 (NO_REMAP): Remove, unused.
1343 (UNEXEC): Move definition ...
1344 * s/aix4-2.h (UNEXEC): ... here.
1345
7f110ddc
DN
1346 * s/openbsd.h: Remove support for non-ELF and for systems that do
1347 not support shared libraries.
1348 * s/netbsd.h:
1349 * s/freebsd.h: Likewise.
1350
605f35cd
DN
13512010-03-20 Dan Nicolaescu <dann@ics.uci.edu>
1352
1353 Remove non-working support for lynxos 3.0.
1354 * s/lynxos.h: Remove file.
1355
1356 * unexec.c (unexec, adjust_lnnoptrs): Do not depend on
1357 COFF_BSD_SYMBOLS, nothing defines it anymore.
1358
aed71cf4
DN
13592010-03-20 Dan Nicolaescu <dann@ics.uci.edu>
1360
1361 Remove obsolete uses of HAVE_SHM.
1362 * emacs.c (standard_args):
1363 (Fdump_emacs):
1364 (syms_of_emacs): Remove code depending on HAVE_SHM.
1365
1366 * alloc.c: Remove HAVE_SHM dependent definition.
1367
1368 * Makefile.in (RUN_TEMACS): Do not depend on HAVE_SHM.
1369
aded53ff
GM
13702010-03-18 Glenn Morris <rgm@gnu.org>
1371
17284745
GM
1372 * emacs.c (USAGE4): Hard-code bug address.
1373 (REPORT_EMACS_BUG_ADDRESS, REPORT_EMACS_BUG_PRETEST_ADDRESS): Remove.
1374 (bug_reporting_address): Remove.
1375 (main): Don't call bug_reporting_address.
1376
aded53ff
GM
1377 * Makefile.in (XFT_LIBS, LIBXPM, LIBJPEG, LIBPNG, LIBTIFF, LIBGIF)
1378 (LIBGPM, LIBRESOLV): Set using autoconf rather than cpp.
1379
303500aa
CY
13802010-03-15 Chong Yidong <cyd@stupidchicken.com>
1381
1382 * xfns.c (Fx_create_frame):
1383 * frame.c (Vdefault_frame_scroll_bars): Put non-GTK X scroll-bars
1384 on left.
1385
cef3058f
CY
13862010-03-13 Andreas Politz <politza@fh-trier.de> (tiny change)
1387
1388 * editfns.c (Fformat): Account for string precision when computing
1389 field width (Bug#5710).
1390
a647d59d
CY
13912010-03-12 Chong Yidong <cyd@stupidchicken.com>
1392
4fa42018
CY
1393 * xfns.c (Fx_create_frame): Set default to Qright.
1394
a647d59d
CY
1395 * frame.c (Vdefault_frame_scroll_bars): Set default to Qright for
1396 all window systems.
1397
6da23aaa
EZ
13982010-03-12 Eli Zaretskii <eliz@gnu.org>
1399
a96f6398 1400 These changes remove termcap.c from the build on Posix platforms.
83d02def 1401 * Makefile.in (termcapobj): Move termcap.o from here...
6da23aaa
EZ
1402 (MSDOS_OBJ): ...to here.
1403 (termcapobj) [!LIBS_TERMCAP]: Remove specialized value, as it is
1404 now identical to when LIBS_TERMCAP is defined.
1405
1406 * term.c: Remove (ifdef'ed away) inclusion of termcap.h.
1407
1408 * cm.c: Remove (ifdef'ed away) inclusion of termcap.h.
1409
a96f6398 1410 * config.in: Regenerated. (See top-level ChangeLog.)
6da23aaa 1411
288f9fc0
CY
14122010-03-10 Chong Yidong <cyd@stupidchicken.com>
1413
1414 * Branch for 23.2.
1415
d48cd3f4
SM
14162010-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
1417
1418 Cleanup setup of gl_state in various parts of the code.
1419 * syntax.h (SETUP_BUFFER_SYNTAX_TABLE): New macro.
1420 (SETUP_SYNTAX_TABLE, SETUP_SYNTAX_TABLE_FOR_OBJECT):
1421 * syntax.c (find_defun_start, Fchar_syntax, Fmatching_paren)
1422 (skip_chars):
1423 * regex.c (regex_compile): Use it.
1424 (re_compile_pattern): Don't set gl_state.current_syntax_table since
1425 it's now set in regex_compile when/if we need it.
1426
618db430
SM
14272010-03-05 Stefan Monnier <monnier@iro.umontreal.ca>
1428
c0335e02
SM
1429 Make it possible to C-g in a tight bytecode loop again (bug#5680).
1430 * lisp.h (ELSE_PENDING_SIGNALS): New macro.
1431 (QUIT): Use it to consolidate code and remove redundancy.
1432 * bytecode.c (BYTE_CODE_QUIT): Use it as well.
1433
254c06a8
SM
1434 * regex.c (regex_compile): Setup gl_state as well.
1435
618db430
SM
1436 * syntax.c (skip_chars): Setup gl_state (bug#3823).
1437 (in_classes): Use CONSP before XCAR/XCDR.
1438
233f0c9f
CY
14392010-03-03 Chong Yidong <cyd@stupidchicken.com>
1440
1441 * keymap.c (Fwhere_is_internal): Use Fequal to compare
1442 definitions, so that keyboard macros are correctly handled
1443 (Bug#5481).
1444
75f80e63
EZ
14452010-03-02 Eli Zaretskii <eliz@gnu.org>
1446
1447 * coding.c (decode_coding_emacs_mule): Fixup pointers to buffer
1448 text that could be relocated inside the call to emacs_mule_char.
1449 (emacs_mule_char): Use CODING_DECODE_CHAR instead of DECODE_CHAR.
1450 (CODING_DECODE_CHAR): Add a comment describing its purpose.
1451
dcfb9bc4
KH
14522010-03-02 Kenichi Handa <handa@m17n.org>
1453
fc9a17bc
KH
1454 * character.c (parse_str_as_multibyte): Fix handling of the
1455 multibyte form of raw-bytes.
1456 (str_as_multibyte): Likewise.
1457
dcfb9bc4
KH
1458 * buffer.c (Fset_buffer_multibyte): Fix handling of the multibyte
1459 form of raw-bytes.
1460
412c01b6
CY
14612010-02-28 Chong Yidong <cyd@stupidchicken.com>
1462
1463 * charset.c (load_charset_map_from_file)
1464 (load_charset_map_from_vector): Zero out allocated
1465 charset_map_entries before using them.
1466
df7e1ea0
AS
14672010-02-27 Andreas Schwab <schwab@linux-m68k.org>
1468
1469 * w32uniscribe.c (uniscribe_check_otf): Fix length check.
1470
fe69a722
CY
14712010-02-27 Chong Yidong <cyd@stupidchicken.com>
1472
4ed28cf4
CY
1473 * font.c (font_parse_fcname): Recognize "Book", "Condensed",
1474 "Medium", and "Semi-Condensed" keywords in GTK names (Bug#5646).
fe69a722 1475
7379cfce
KH
14762010-02-26 Kenichi Handa <handa@m17n.org>
1477
f88cc4d6
KH
1478 * ftfont.c (ftfont_get_open_type_spec): Fix parsing of otf_spec.
1479
7379cfce
KH
1480 * xdisp.c (reseat_to_string): Fix previous change.
1481
cf2fdcfb
CY
14822010-02-26 David Reitter <david.reitter@gmail.com>
1483
1484 * nsfont.m (nsfont_draw): ns_antialias_text should be a
1485 Lisp_Object (Bug#4736).
1486
cc6c7c75
KH
14872010-02-25 Kenichi Handa <handa@m17n.org>
1488
1489 * xdisp.c (reseat_to_string): Fix previous change (bug#5609).
1490
32e737d7
JD
14912010-02-24 Jan Djärv <jan.h.d@swipnet.se>
1492
1493 * xterm.c (XTflash): Move declarations before statements.
1494
1495 * gtkutil.c (xg_get_gdk_display): Remove (unused).
1496 (xg_get_pixbuf_from_pix_and_mask, xg_create_frame_widgets)
1497 (xg_toggle_notify_cb, xg_set_toolkit_scroll_bar_thumb)
1498 (xg_create_tool_bar): Remove unused variables.
1499 (x_wm_set_size_hint): Move declarations before statements.
1500 (xg_create_frame_widgets): Remove variable grav,
1501
676cae9f
CY
15022010-02-21 Chong Yidong <cyd@stupidchicken.com>
1503
1504 * m/arm.h: Define the LIB_GCC flag to be -lgcc_s (Bug#5518).
1505
886cc2b8
SM
15062010-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
1507
1508 * term.c (fatal): Add a final \n if needed (bug#5596).
1509
ddb2d8e2
CY
15102010-02-18 Chong Yidong <cyd@stupidchicken.com>
1511
1512 * nsterm.m (ns_ring_bell): Revert last change (Bug#5569).
1513
2a4f8d3d
GM
15142010-02-18 Glenn Morris <rgm@gnu.org>
1515
1516 * callint.c (Finteractive): Doc fix.
1517
ebaf11b6
KH
15182010-02-18 Kazuhiro Ito <kzhr@d1.dion.ne.jp> (tiny change)
1519
886cc2b8
SM
1520 * coding.c (record_conversion_result):
1521 Handle CODING_RESULT_INSUFFICIENT_DST.
ebaf11b6
KH
1522 (decode_coding_object): Record CODING_RESULT_INSUFFICIENT_MEM on
1523 memory allocation error.
1524
d0396581
KH
15252010-02-17 Kenichi Handa <handa@m17n.org>
1526
886cc2b8
SM
1527 * coding.c (decode_coding_ccl): Don't setup ccl program here.
1528 Fix for the case that the output buffer is fullfilled.
d0396581
KH
1529 (decode_coding): Setup ccl program here. Keep looping when the
1530 decoder stopped because the output buffer is
1531 fullfilled (bug#5534).
1532
1533 * ccl.c (ccl_driver): Never reset ic to CCL_HEADER_MAIN.
1534
98599f74
JD
15352010-02-13 Jan Djärv <jan.h.d@swipnet.se>
1536
471e4f04 1537 * xterm.c (x_clear_frame_area): Call gtk_widget_queue_draw if USE_GTK,
98599f74 1538 bug #5571.
886cc2b8 1539 (XTflash): Use Gdk-routines if USE_GTK so scroll bars don't get
471e4f04 1540 overdrawn.
98599f74 1541
182659ae
JD
15422010-02-10 Jan Djärv <jan.h.d@swipnet.se>
1543
1544 * xsmfns.c (x_session_initialize): Move initialization of ice_fd and
1545 doing_interact here.
1546 (ice_connection_closed): New function.
1547 (x_session_check_input, smc_die_CB, ice_io_error_handler)
1548 (ice_conn_watch_CB, x_session_close): Call ice_connection_closed.
1549 (x_session_check_input): Call IceCloseConnection if IceProcessMessages
1550 returns I/O error.
1551 (ice_conn_watch_CB): Call add_keyboard_wait_descriptor on ice_fd,
1552 bug #5512.
1553
9be32c4e 15542010-02-08 Francis Devereux <francis@devrx.org> (tiny change)
14a225f9
CY
1555
1556 * nsfont.m (nsfont_open): The system's value for the font descent
1557 is negative, so round it down to avoid clipping.
1558
a2f3eb19
CY
15592010-02-06 Chong Yidong <cyd@stupidchicken.com>
1560
1561 * charset.c (load_charset_map_from_file)
1562 (load_charset_map_from_vector): Fix last change to use SAFE_ALLOCA
953d248c 1563 instead of xmalloc (Bug#5526). Suggested by Vivek Dasmohapatra.
a2f3eb19 1564
3088147c
CY
15652010-02-05 Chong Yidong <cyd@stupidchicken.com>
1566
1567 * charset.c (load_charset_map_from_file): Allocate large
1568 charset_map_entries structure on the heap rather than the stack.
1569 (Bug#5526).
1570
b57d9029
KH
15712010-01-31 Kenichi Handa <handa@m17n.org>
1572
1573 * font.c (font_parse_xlfd): If FONT is a font-entity and pixel
115e4fd3 1574 size in NAME is invalid, return -1 (Bug#5396).
b57d9029 1575
c67d885b
CY
15762010-01-31 Chong Yidong <cyd@stupidchicken.com>
1577
1578 * nsterm.m (ns_defined_color): Block input. Suggested by Mike
1579 <deactivated@gmail.com> (Bug#3605).
1580
8fab2362
CY
15812010-01-31 David De La Harpe Golden <david@harpegolden.net>
1582
1583 * fileio.c (Frename_file): Correctly rename symlinks to
1584 directories (Bug#5496).
1585
cb2a62f2
CY
15862010-01-31 Filipe Cabecinhas <filcab@gmail.com> (tiny change)
1587
1588 * nsterm.m (ns_ring_bell): Handle visible bell like X.
1589
944c7a26
AS
15902010-01-30 Andreas Schwab <schwab@linux-m68k.org>
1591
1592 * character.h (CHAR_PRINTABLE_P): Reparenthesize to avoid warning.
1593
c024ac08
CY
15942010-01-29 Chong Yidong <cyd@stupidchicken.com>
1595
1596 * frame.c (DEFAULT_ROWS): Change default to 35.
1597
1598 * xfns.c (x_default_font_parameter): Change default XFT font to
1599 monospace-10 (Bug#3643).
1600
af93af83
EZ
16012010-01-29 Eli Zaretskii <eliz@gnu.org>
1602
1603 * w32inevt.c (key_event): Remove unnecessary comparison of
1604 event->uChar.AsciiChar with 128.
1605
ca0eb708
CY
16062010-01-28 Chong Yidong <cyd@stupidchicken.com>
1607
b242dbfc
CY
1608 * fileio.c (Frename_file): Fix last change (Bug#5487).
1609
ca0eb708
CY
1610 * m/mips.h: Remove DATA_START. Suggested by Dan Nicolaescu.
1611
1612 * m/alpha.h: Don't define DATA_START on NetBSD (Bug#4629).
1613
45d45af5
JD
16142010-01-28 Jan Djärv <jan.h.d@swipnet.se>
1615
1616 * xfns.c (Fx_create_frame): Remove window size matching code from
1617 2010-01-15.
1618 (x_get_current_desktop, x_get_desktop_workarea): Remove
1619
7e233730
JR
16202010-01-27 Jason Rumney <jasonr@gnu.org>
1621
1622 * w32inevt.c (w32_kbd_patch_key): Save the unicode character.
a292592c 1623 (key_event): Use unicode for characters 128 and higher (Bug#4567).
7e233730 1624
86e893e3
KH
16252010-01-27 Kenichi Handa <handa@m17n.org>
1626
1627 * regex.c (analyse_first): Fix setting of fastmap for unibyte
c8b96b2a 1628 pattern string (Bug#4209).
86e893e3 1629
8719abec
CY
16302010-01-27 David De La Harpe Golden <david@harpegolden.net>
1631
1632 * fileio.c (Frename_file): Call copy-directory and
1633 delete-directory for directories, in order to handle cross-device
1634 renaming (Bug#3353).
1635
844794c8
JD
16362010-01-25 Jan Djärv <jan.h.d@swipnet.se>
1637
aa3e13b5 1638 * xfns.c (Fx_create_frame): If frame height is too big, try
ac146f82 1639 sizes 24 and 10. Bug #3643.
844794c8 1640
bd4b5750
SM
16412010-01-24 Stefan Monnier <monnier@iro.umontreal.ca>
1642
8dc1adf6 1643 Try and fix bug#788, hopefully for real this time.
bd4b5750
SM
1644 * keymap.c (shadow_lookup): Add `remap' arg.
1645 (describe_map, describe_vector): Update calls to shadow_lookup.
1646 (Fwhere_is_internal): Fix up handling of `remapped_sequences' and
1647 `remapped' so this flag is applicable to `sequence'. Be careful to
8dc1adf6
SM
1648 perform remapping during shadow_lookup check of remapped_sequences.
1649
285d07e2
CY
16502010-01-24 Eric Bélanger <snowmaniscool@gmail.com> (tiny change)
1651
1652 * image.c (png_load): Use png_sig_cmp instead of the obsolete
1653 png_check_sig, which has been removed in libpng 1.4.
1654
c6d09b8d
CY
16552010-01-23 Giorgos Keramidas <keramida@ceid.upatras.gr> (tiny change)
1656
1657 * filelock.c: Include utmp.h only when HAVE_UTMP_H (FreeBSD 9.x
1658 lacks this header file).
1659
3d782998
YM
16602010-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1661
1662 * xdisp.c (draw_glyphs): Update `start' for left_overwritten case
1663 as in Emacs 22.
1664
2aff7c53
YM
16652010-01-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1666
1667 * lisp.h (make_pure_string): String pointer arg now points to const.
1668
1669 * alloc.c (find_string_data_in_pure, make_pure_string): String pointer
1670 args now point to const.
1671
74327f7a
EZ
16722010-01-22 Eli Zaretskii <eliz@gnu.org>
1673
1674 * lread.c (Fload): Don't treat files without .elc extension as
1675 byte-compiled if they are ``magic'', i.e. `openp' returned -2 for
1676 them. (bug#5303)
1677
4d1e6632
KH
16782010-01-20 Kenichi Handa <handa@m17n.org>
1679
1680 * coding.c (consume_chars): If ! multibyte and the encoder is ccl,
1681 treat the source as actual byte sequence.
1682
1fdede8f
AM
16832010-01-19 Alan Mackenzie <acm@muc.de>
1684
1685 Fix spurious before-change-functions invocation from (insert ?\n).
194d44e7 1686 * textprop.c (set_text_properties): Rename parameter
1fdede8f
AM
1687 `signal_after_change_p' to `coherent_change_p', and make the
1688 invocation of `modify_region' conditional on it.
1689
67477f30
JD
16902010-01-19 Jan Djärv <jan.h.d@swipnet.se>
1691
1692 * xsettings.c (apply_xft_settings): Save settings in Vxft_settings
1693 for debug purpose.
1694 (syms_of_xsettings): Declare xft-settings.
1695
244b023e
CY
16962010-01-18 Chong Yidong <cyd@stupidchicken.com>
1697
1698 * editfns.c (Fcurrent_time_string): Doc fix (Bug#5408).
1699
617364fe
CY
17002010-01-16 Stefan Monnier <monnier@iro.umontreal.ca>
1701
1702 * xterm.c (event_handler_gdk): Block input (Bug#5037).
1703
4fe22cdf
CY
17042010-01-16 Chong Yidong <cyd@stupidchicken.com>
1705
1706 * emacs.c (standard_args): Adjust arg priorities to reflect how
1707 they are processed in startup.el.
1708
e118d2be
AS
17092010-01-16 Andreas Schwab <schwab@linux-m68k.org>
1710
1711 * Makefile.in (lisp, shortlisp): Update.
1712
523ae620
SM
17132010-01-16 Stefan Monnier <monnier@iro.umontreal.ca>
1714
1715 * xterm.c (x_term_init): Instead of inhibiting GC while running Lisp
1716 code, link the new kboard into all_kboard before running Lisp code,
1717 and protect the new terminal with GCPRO (Bug#5365).
1718 (x_term_init): Remove unused var `atom'.
1719 (x_delete_display, x_delete_terminal): Remove unused var `i'.
1720
f0d13888
JD
17212010-01-15 Jan Djärv <jan.h.d@swipnet.se>
1722
1723 * xfns.c (x_get_current_desktop, x_get_desktop_workarea): New functions.
1724 (Fx_create_frame): Call x_get_current_desktop and x_get_desktop_workarea
1725 to find out usable size of the desktop. Don't make frames larger than
ac146f82 1726 this. Bug #3643.
f0d13888 1727
cc320f07
KH
17282010-01-15 Kenichi Handa <handa@m17n.org>
1729
1730 * xdisp.c (CHAR_COMPOSED_P): New arg END_CHARPOS. Callers changed.
1731
7ffdf101
CY
17322010-01-15 Chong Yidong <cyd@stupidchicken.com>
1733
1734 * nsterm.m (Qnone): Define.
1735
1736 * nsfns.m (Qnone): Move definition to nsterm.m.
1737
d12bd917
KH
17382010-01-14 Kenichi Handa <handa@m17n.org>
1739
1740 * coding.c (detect_coding_iso_2022): Fix handling of euc-xx coding
1741 systems.
1742
d9a7c140
KH
17432010-01-14 Kenichi Handa <handa@m17n.org>
1744
1745 Make auto-composition work on all buffers even if they are
1746 fundamental mode.
1747
1748 * composite.c (Vauto_composition_mode): New variable.
1749 (composition_compute_stop_pos): Check Vauto_composition_mode
1750 instead of Vauto_composition_function.
1751 (composition_adjust_point, Ffind_composition_internal): Likewise.
1752 (syms_of_composite): Declare Lisp variable
1753 "auto-composition-mode" here.
1754
63286bb2
CY
17552010-01-13 Chong Yidong <cyd@stupidchicken.com>
1756
1757 * xterm.c (x_term_init): Avoid garbage-collecting the new terminal
1758 during call to vendor-specific-keysyms (Bug#5365).
1759
c2623ee7
YM
17602010-01-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1761
1762 * keyboard.c (input_available_signal) [SYNC_INPUT]:
1763 Call SIGNAL_THREAD_CHECK (Bug#5333).
1764
1765 * atimer.c (alarm_signal_handler) [!SYNC_INPUT]:
1766 Call SIGNAL_THREAD_CHECK.
1767
0b5397c2
SM
17682010-01-13 Stefan Monnier <monnier@iro.umontreal.ca>
1769
1770 Try to fix bug#5314. This is probably not the final word, tho.
1771 * buffer.c (Fset_buffer_modified_p): Try and be careful not to modify
1772 recent-auto-save-p as a side-effect.
1773 * buffer.h (BUF_AUTOSAVE_MODIFF): New macro.
1774 * buffer.c (Fkill_buffer, reset_buffer):
1775 * editfns.c (Fsubst_char_in_region):
1776 * fileio.c (Finsert_file_contents, Fdo_auto_save)
1777 (Fset_buffer_auto_saved, Frecent_auto_save_p): Use it.
1778
dc954cb2
KH
17792010-01-13 Kenichi Handa <handa@m17n.org>
1780
1781 Display buffer name, etc. in mode line by composing correctly.
1782
1783 * xdisp.c (reseat_to_string): Call composition_compute_stop_pos if
1784 STRING is not nil.
0b5397c2 1785 (display_mode_element): Adjust for the change of
dc954cb2
KH
1786 decode_mode_spec and display_line.
1787 (decode_mode_spec): Change arg MULTIBYTE to STRING.
1788 (display_string): Handle the case that STRING is non-null and
1789 LISP_STRING is not nil.
1790
0b5397c2
SM
1791 * xterm.c (x_draw_composite_glyph_string_foreground):
1792 Pay attention to s->face->overstrike.
dc954cb2
KH
1793
1794 * composite.c (composition_reseat_it): Don't check PT if STRING is
1795 non nil.
1796
4a00eaca
YM
17972010-01-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1798
1799 * keyboard.c (read_char): Don't apply previous change when current
1800 buffer is unchanged by command execution.
1801
60abb287
JD
18022010-01-12 Jan Djärv <jan.h.d@swipnet.se>
1803
1804 * keyboard.c (read_char): Return after executing from special map.
1805
893db5bc
GM
18062010-01-12 Glenn Morris <rgm@gnu.org>
1807
1808 * emacs.c (REPORT_EMACS_BUG_PRETEST_ADDRESS): Set it to
1809 bug-gnu-emacs rather than emacs-pretest-bug.
1810
4d03ece0
CY
18112010-01-11 Chong Yidong <cyd@stupidchicken.com>
1812
1813 * nsterm.m (syms_of_nsterm): Initialize Qcontrol etc. before
1814 initializing the Lisp variables that depend on them.
1815
1df47e38
YM
18162010-01-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1817
1818 * xfns.c (x_set_menu_bar_lines) [!USE_X_TOOLKIT && !USE_GTK]:
1819 Clear areas that will not be updated after change of menu bar lines.
1820 Clear the menu bar window's current matrix when the window gets empty.
1821
2f1c6384
CY
18222010-01-09 Chong Yidong <cyd@stupidchicken.com>
1823
e398c61c
CY
1824 * intervals.h, textprop.c (extend_property_ranges): Return value
1825 and args changed. Discard properties that begin at or after the
1826 new end (Bug#5306).
1827
1828 * editfns.c (Fformat): Caller changed.
1829
e5a29a10
CY
1830 * nsterm.m (ns_set_default_prefs): Delete function.
1831 (syms_of_nsterm): Initialize ns_command_modifier,
1832 ns_control_modifier, ns_function_modifier, ns_antialias_text, and
1833 ns_antialias_threshold here, not in ns_term_init (Bug#4113).
1834
2f1c6384
CY
1835 * xdisp.c (pos_visible_p): Check for invisible text at the correct
1836 position (Bug#4040).
1837
d427a9fa
EZ
18382010-01-09 Eli Zaretskii <eliz@gnu.org>
1839
1840 * editfns.c (Ffloat_time): Doc fix.
1841
21b9df2f
JD
18422010-01-09 Jan Djärv <jan.h.d@swipnet.se>
1843
1844 * xfns.c (Fx_create_frame): Don't create frame larger than display
1845 by default bug#3643.
1846
4b00d3b1
YM
18472010-01-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1848
1849 * frame.h (FRAME_TOP_MARGIN_HEIGHT): New macro.
1850 (FRAME_LINE_TO_PIXEL_Y, FRAME_PIXEL_Y_TO_LINE): Take account of pseudo
1851 windows above internal border.
1852
1853 * window.h (WINDOW_MENU_BAR_P, WINDOW_TOOL_BAR_P): New macros.
1854 (WINDOW_TOP_EDGE_Y, WINDOW_BOTTOM_EDGE_Y): Take account of pseudo
1855 windows above internal border.
1856
1857 * xdisp.c (get_glyph_string_clip_rects, init_glyph_string): Don't treat
1858 tool bar windows specially.
1859
1860 * xfns.c (x_set_tool_bar_lines): Take account of menu bar height.
1861
1862 * xterm.c (x_after_update_window_line): Don't treat tool bar windows
1863 specially.
1864 (XTflash): Take account of menu bar height.
1865
1866 * w32term.c (x_after_update_window_line): Don't treat tool bar windows
1867 specially.
1868
5075d853
JD
18692010-01-08 Jan Djärv <jan.h.d@swipnet.se>
1870
ac146f82 1871 * dispnew.c (change_frame_size_1): newwidth == FRAME_COLS (f) must
5075d853
JD
1872 also be true before we can return early (bug #5339).
1873
474217c8
CY
18742010-01-06 David Reitter <david.reitter@gmail.com>
1875
1876 * nsfns.m (ns_get_screen): Rewrite, returning NULL for non-NS.
1877 (Fns_display_usable_bounds): Rewrite, computing bounds properly
1878 (Bug#3233).
1879
c0e6d47d
JD
18802010-01-06 Jan Djärv <jan.h.d@swipnet.se>
1881
d0cf45b7
JD
1882 * font.c (font_open_entity): Enable chache and call cached_font_ok
1883 for the driver if defined.
1884 (QCuser_spec): New symbol.
1885 (font_spec_from_name): Save name as user-spec.
1886 (font_load_for_lface): Keep user-spec instead of name.
1887 (font_open_by_name): Save name as user-spec.
1888 (syms_of_font): Initialize QCuser_spec.
b7f8e4f5 1889 (font_clear_prop): Clear name if it exists in font (bug#5157).
d0cf45b7
JD
1890
1891 * xftfont.c (xftfont_open): Call xftfont_add_rendering_parameters.
1892 (xftfont_add_rendering_parameters, xftfont_cached_font_ok): New.
1893 (syms_of_xftfont): Initialize xftfont_driver.cached_font_ok.
1894
1895 * font.h (struct font_driver): Add cached_font_ok.
1896
c0e6d47d
JD
1897 * xterm.c (x_clear_frame): Queue draw for scroll bars.
1898
7c583cd8
JD
18992010-01-05 Jan Djärv <jan.h.d@swipnet.se>
1900
1901 * xterm.c (x_new_font): Move code for setting rows/cols before
1902 resizing ...
ac146f82 1903 (x_set_window_size): ... to here. Bug #2568.
7c583cd8
JD
1904
1905 * gtkutil.c (xg_clear_under_internal_border): New function.
0b5397c2
SM
1906 (xg_frame_resized, xg_frame_set_char_size):
1907 Call xg_clear_under_internal_border.
7c583cd8 1908 (xg_update_scrollbar_pos): Clear under old scroll bar position.
69e2f185 1909
03f77f0a
CY
19102010-01-05 Chong Yidong <cyd@stupidchicken.com>
1911
1912 * keyboard.c (read_key_sequence): Catch keyboard switch after
1913 making a new tty frame (Bug#5095).
1914
2a1ef5be
KH
19152010-01-05 Kenichi Handa <handa@m17n.org>
1916
1917 * fontset.c (fontset_find_font): Fix getting the frame pointer.
1918
e3eb1dae
SM
19192010-01-04 Stefan Monnier <monnier@iro.umontreal.ca>
1920
1921 * dbusbind.c (xd_remove_watch): Avoid trying to convert a void* to
1922 Lisp_Object, preferring to convert a lisp_Object to a void* instead.
1923 (Fdbus_init_bus): Use XHASH to get a scalar value from a Lisp_Object.
1924
777013f2
MA
19252010-01-03 Michael Albinus <michael.albinus@gmx.de>
1926
1927 * dbusbind.c (xd_add_watch): Improve debug message.
1928 (xd_remove_watch): Improve debug message. If DATA is the session
1929 bus, unset D-Bus session environment.
1930 (Fdbus_init_bus): Pass the bus as argument to
1931 dbus_connection_set_watch_functions. (Bug#5283)
7c583cd8 1932
8932b1c2
CY
19332010-01-01 Chong Yidong <cyd@stupidchicken.com>
1934
87231e2c
CY
1935 * nsterm.m (ns_get_color): Fix buffer overflow (Bug#4763).
1936
4801c5fa
CY
1937 * lread.c (syms_of_lread): Make it clearer that these are the
1938 names of loaded files (Bug#5068).
1939
8932b1c2
CY
1940 * eval.c (run_hook_with_args): Handle the case where the global
1941 value has the obsolete single-function form (Bug#5026).
1942
11e3c684
CY
19432009-12-27 Chong Yidong <cyd@stupidchicken.com>
1944
1945 * minibuf.c (Fall_completions): Minor optimization.
1946
5b28ce35
EZ
19472009-12-26 Eli Zaretskii <eliz@gnu.org>
1948
5ce6e4f4
JB
1949 * .gdbinit (pgx): Fix display of composite glyphs.
1950 Display cmp.from and cmp.to as well.
1951 (pitx): Fix last change.
5b28ce35 1952
bcffff46
KH
19532009-12-25 Kenichi Handa <handa@m17n.org>
1954
1955 * composite.h (composition_adjust_point): Update prototype.
1956
1957 * composite.c (composition_reseat_it): Don't make a composition
1958 spanning over point.
1959 (CHAR_COMPOSABLE_P): Treat U+200C (ZWNJ) and U+200D (ZWJ) as
1960 composable characters.
1961 (composition_adjust_point): New arg NEW_PT. Callers changed.
1962
1963 * keyboard.c (command_loop_1): Force redisplay if the last point
1964 was within a composition.
1965 (adjust_point_for_property): Don't adjust point for automatic
1966 composition when called after buffer modification.
1967
3f670e9a
EZ
19682009-12-19 Eli Zaretskii <eliz@gnu.org>
1969
5ce6e4f4
JB
1970 * .gdbinit (pitx): Don't use enum names, use their values.
1971 Remove reference to non-existing value GET_FROM_COMPOSITION.
be996d82
EZ
1972 (pgx): Don't use enum names, use their values.
1973 (pitmethod): New helper command.
1974 (pitx): Use it to display iteration method.
1975 (pgrowit): New command.
1976
ad903955
EZ
1977 * makefile.w32-in ($(BLD)/cmds.$(O)): Depend on frame.h.
1978
3f670e9a
EZ
1979 Update dependencies in Makefile.in.
1980
1981 * Makefile.in (alloc.o): Depend on termhooks.h.
1982 (atimer.o): Depend on blockinput.h.
1983 (buffer.o): Depend on indent.h, keyboard.h, coding.h, keymap.h,
1984 and frame.h.
1985 (callint.o): Depend on systime.h, coding.h, and composite.h.
1986 (callproc.o): Depend on buffer.h.
1987 (casefiddle.o): Don't depend on charset.h.
1988 (casetab.o): Depend on character.h.
1989 (ccl.o): Depend on composite.h.
1990 (chartab.o): Depend on ccl.h.
1991 (cm.o): Depend on dispextern.h.
1992 (cmds.o): Depend on systime.h, coding.h, frame.h, and composite.h.
1993 (coding.o): Don't depend on $(INTERVALS_H).
1994 (composite.o): Don't depend on dispextern.h explicitly (it's in
1995 $(INTERVALS_H)). Depend on ccl.h.
1996 (data.o): Depend on systime.h, coding.h, composite.h,
1997 dispextern.h, font.h, and ccl.h.
1998 (dired.o): Depend on composite.h.
1999 (dispnew.o): Depend on coding.h. Don't depend explicitly on
2000 composite.h (it's in $(INTERVALS_H)).
2001 (doc.o): Depend on systime.h, coding.h, and composite.h.
2002 (editfns.o): Don't depend explicitly on dispextern.h.
2003 (emacs.o): Depend on frame.h and coding.h.
2004 (eval.o): Depend on coding.h, composite.h, and xterm.h.
2005 (fileio.o): Depend on frame.h and commands.h. Don't depend
2006 explicitly on dispextern.h.
2007 (filelock.o): Don't depend on epaths.h and charset.h. Depend on
2008 composite.h.
2009 (fns.o): Don't depend on termhooks.h.
2010 (font.o): Depend on buffer.h, composite.h, fontset.h, and xterm.h.
2011 (fontset.o): Depend on blockinput.h, atimer.h, systime.h,
2012 coding.h, $(INTERVALS_H), window.h, xterm.h.
2013 (frame.o): Depend on coding.h, composite.h, termhooks.h, and ccl.h.
2014 (fringe.o): Depend on blockinput.h, atimer.h, and systime.h.
2015 (ftfont.o): Depend on blockinput.h, atimer.h, systime.h, coding.h,
2016 fontset.h, ccl.h, and ftfont.h.
2017 (ftxfont.o): Depend on atimer.h, systime.h, fontset.h, and ccl.h.
2018 (gtkutil.o): Depend on dispextern.h and composite.h.
2019 (image.o): Depend on epaths.h, character.h, coding.h, composite.h,
2020 termhooks.h, and ccl.h.
2021 (indent.o): Depend on systime.h, coding.h, and $(INTERVALS_H).
2022 (intervals.o): Depend on systime.h and coding.h.
2023 (keyboard.o): Depend on composite.h and coding.h.
2024 (keymap.o): Depend on coding.h and frame.h.
2025 (lread.o): Depend on systime.h, frame.h, blockinput.h, and atimer.h.
2026 (macros.o): Depend on systime.h, coding.h, and composite.h.
2027 (menu.o): Depend on systime.h, coding.h, composite.h, window.h,
2028 and atimer.h.
2029 (minibuf.o): Depend on systime.h and coding.h. Don't depend on
2030 dispextern.h explicitly.
0b5397c2
SM
2031 (print.o): Depend on termhooks.h, coding.h, and ccl.h.
2032 Don't depend explicitly on dispextern.h and composite.h.
3f670e9a
EZ
2033 (process.o): Depend on character.h, xgselect.h, and sysselect.h.
2034 (regex.o): Don't depend on charset.h.
2035 (scroll.o): Depend on systime.h, coding.h, composite.h, and window.h.
2036 (search.o): Don't depend explicitly on composite.h.
2037 (sound.o): Depend on atimer.h and systime.h.
2038 (syntax.o): Don't depend explicitly on composite.h.
2039 (sysdep.o): Depend on coding.h and composite.h.
2040 (term.o): Depend on xterm.h and buffer.h.
2041 (terminal.o): Depend on dispextern.h, composite.h, and systime.h.
2042 (textprop.o): Don't depend on dispextern.h explicitly.
2043 (undo.o): Depend on dispextern.h.
2044 (window.o): Depend on coding.h and termhooks.h. Don't depend on
2045 dispextern.h and composite.h explicitly.
2046 (xdisp.o): Depend on ccl.h.
2047 (xfaces.o): Depend on coding.h and ccl.h.
2048 (xfns.o): Depend on $(INTERVALS_H) and ccl.h.
2049 (xfont.o): Depend on atimer.h, systime.h, fontset.h, and ccl.h.
2050 (xftfont.o): Depend on atimer.h, systime.h, fontset.h, ccl.h, and
2051 ftfont.h.
2052 (xgselect.o): New dependency.
2053 (xmenu.o): Depend on composite.h, keymap.h, and sysselect.h.
2054 (xselect.o): Depend on keyboard.h, coding.h, and composite.h.
2055 (xsettings.o): Depend on dispextern.h, keyboard.h, systime.h,
2056 coding.h, composite.h, blockinput.h, atimer.h, and termopts.h.
2057 (xsmfns.o): Depend on frame.h and dispextern.h.
2058 (xterm.o): Depend on intervals.h, keymap.h, xgselect.h, and
2059 sysselect.h.
2060
7a6f7fea
AS
20612009-12-19 Andreas Schwab <schwab@linux-m68k.org>
2062
2063 * font.c (Fclear_font_cache): Pass correct cache argument to
2064 font_clear_cache.
2065
f4c21026
AS
20662009-12-16 Andreas Schwab <schwab@linux-m68k.org>
2067
2068 * Makefile.in (prefix-args${EXEEXT}): Don't compile prefix-args.c
2069 twice.
2070
f7ab0997
CY
20712009-12-15 Chong Yidong <cyd@stupidchicken.com>
2072
2073 * xdisp.c (decode_mode_spec): Inhibit garbage collection when
2074 calling file-remote-p. Reported by Jim Meyering.
2075
fa8e045a
MA
20762009-12-15 Michael Albinus <michael.albinus@gmx.de>
2077
2078 * dbusbind.c (xd_retrieve_arg): Reorder declarations in order to
777013f2 2079 avoid compiler warnings. (Bug #5217)
fa8e045a 2080
a63dba42
KH
20812009-12-14 Kenichi Handa <handa@m17n.org>
2082
2083 * coding.c (decode_coding_iso_2022): Ignore ISO_CODE_SS2_7 (0x19)
2084 in 8-bit encoding.
2085
5ce6e4f4 20862009-12-13 Pat Thoyts <patthoyts@users.sourceforge.net> (tiny change)
36acb2a7
JD
2087
2088 * xfns.c (x_create_tip_frame): Set the extended window manager hint for
2089 tooltip windows.
2090
223e5fc6
JD
20912009-12-13 Jan Djärv <jan.h.d@swipnet.se>
2092
36acb2a7
JD
2093 * xterm.h (struct x_display_info): Add Xatom_net_window_type_tooltip and
2094 Xatom_net_window_type.
2095
2096 * xterm.c (x_term_init): Initialize Xatom_net_window_type_tooltip and
2097 Xatom_net_window_type.
2098
b8f00677
JD
2099 * xterm.c (my_log_handler): New function.
2100 (x_term_init): Set my_log_handler as log handler during gtk_init
5ce6e4f4 2101 so we can filter out buggy messages. (Bug #5120).
b8f00677 2102
e5f0bc9a
JD
2103 * xterm.c (xg_scroll_callback): Parameter list changed,
2104 use parameter GtkScrollType to determine scroll/line/page.
2105 Only allow dragging if a button < 4 is grabbed (bug #5177).
2106 (xg_end_scroll_callback): New function.
2107 (x_create_toolkit_scroll_bar): Pass xg_end_scroll_callback to
2108 xg_create_scroll_bar.
2109
2110 * gtkutil.c (xg_gtk_scroll_destroy): Remove XG_LAST_SB_DATA handling.
2111 (scroll_end_callback): Remove.
2112 (xg_create_scroll_bar): Add parameter end_callback, bind it to
2113 button-release-event. Replace value-changed event with change-value,
2114 bug #5177,
2115 (xg_event_is_for_scrollbar): Only return true if button is less than 4,
2116 bug #5177.
2117
2118 * gtkutil.h (XG_LAST_SB_DATA): Remove.
2119 (xg_create_scroll_bar): Add GCallback end_callback.
2120
223e5fc6
JD
2121 * xftfont.c (QClcdfilter): New variable.
2122 (xftfont_open): Parse constant names for RGBA, HINT_STYLE and LCDFILTER.
2123 (syms_of_xftfont): Initialize QClcdfilter.
2124
3c055b77
JD
21252009-12-12 Jan Djärv <jan.h.d@swipnet.se>
2126
2127 * xsettings.c (struct xsettings): Add member seen.
2128 (parse_xft_settings): Update member seen with what we have read.
ba68c0b0 2129 Return non-zero if Xft-settings have been parsed, 0 otherwise.
3c055b77
JD
2130 (apply_xft_settings): Only update Xft settings with what member seen
2131 indicates as new.
2132
05fe33ff
EZ
21332009-12-12 Eli Zaretskii <eliz@gnu.org>
2134
2135 * dispextern.h (struct text_pos): Use EMACS_INT;
2136 (struct glyph): Use EMACS_INT for charpos.
2137 (struct it): Use EMACS_INT for stop_charpos, end_charpos,
2138 region_beg_charpos, region_end_charpos,
2139 redisplay_end_trigger_charpos, and also for
2140 iterator_stack_entry.end_charpos and
2141 iterator_stack_entry.stop_charpos.
2142
e8d7886a
JD
21432009-12-12 Jan Djärv <jan.h.d@swipnet.se>
2144
5ce6e4f4 2145 * gtkutil.c (scroll_end_callback): New function (bug #5177).
e8d7886a
JD
2146 (xg_create_scroll_bar): Call scroll_end_callback on button release
2147 event (bug #5177).
2148 (xg_event_is_for_scrollbar): != replaced with ==.
2149
d0db2ec8
KH
21502009-12-12 Kenichi Handa <handa@m17n.org>
2151
2152 * ftfont.c (struct ftfont_info): New member matrix.
2153 (ftfont_open): Setup xftfont_info->matrix.
2154 (MFLTFontFT): New member matrix.
2155 (FLOOR, CEIL, ROUND): New macros.
2156 (ftfont_get_metrics): Handle matrix transformation.
2157 (ftfont_shape_by_flt): New arg matrix. Callers changed.
2158
2159 * xftfont.c (struct xftfont_info): New member matrix.
2160 (xftfont_open): Setup xftfont_info->matrix.
2161
21622009-12-10 Kenichi Handa <handa@m17n.org>
2163
2164 * xdisp.c (append_space_for_newline): Consider face-remapping.
2165
2cc7b62f
AS
21662009-12-09 Andreas Schwab <schwab@linux-m68k.org>
2167
b87dd913
AS
2168 * xsettings.c: Include "keyboard.h".
2169
eba5eb94
AS
2170 * gtkutil.c (xg_tool_bar_proxy_help_callback): Fix missing return.
2171
2cc7b62f
AS
2172 Fix implicit function declarations.
2173 * cmds.c: Include "frame.h".
2174 * frame.c: Include "font.h" also if !HAVE_WINDOW_SYSTEM.
2175 * frame.h: Move declaration of delete_frame outside of
2176 HAVE_WINDOW_SYSTEM.
2177
a4ef73c8
CY
21782009-12-09 Ken Brown <kbrown@cornell.edu> (tiny change)
2179
2180 * s/cygwin.h (G_SLICE_ALWAYS_MALLOC): New variable.
2181
2182 * emacs.c (main): Set the G_SLICE environment variable for Cygwin
2183 GTK builds.
2184
944a300c
AS
21852009-12-07 Andreas Schwab <schwab@linux-m68k.org>
2186
2187 * unexelf.c (unexec): Don't search for .data twice.
2188
022eef62
CY
21892009-12-05 Chong Yidong <cyd@stupidchicken.com>
2190
426ac949
CY
2191 * xdisp.c (push_display_prop): Don't set avoid_cursor_p. Return 0
2192 if push failed.
2193 (handle_line_prefix): Set avoid_cursor_p here. Check return value
2194 of push_display_prop (Bug#5000).
2195
022eef62
CY
2196 * xfaces.c (Fx_family_fonts): Handle 2009-07-14 change to return
2197 value of font_list_entities (Bug#5085).
2198
be95bee9
JB
21992009-12-04 Juanma Barranquero <lekktu@gmail.com>
2200
2201 Fix `string-to-number' to deal consistently with integers and floats.
2202 * lread.c (isfloat_string): New argument ignore_trailing to accept all
2203 trailing characters, not just whitespace.
2204 (read1): Pass new arg 0 to keep old behavior.
2205 * data.c (Fstring_to_number): Pass 1 to isfloat_string to ignore
2206 trailing chars, as it is already done for integers. Doc fixes.
2207 * lisp.h (isfloat_string): Add new arg to declaration of isfloat_string.
2208
24c2d7ce
EZ
22092009-12-04 Eli Zaretskii <eliz@gnu.org>
2210
0b5397c2
SM
2211 * dispextern.h (enum prop_idx) <AUTO_COMPOSED_PROP_IDX>:
2212 Delete unused enumeration value.
24c2d7ce 2213
7e694795
EZ
22142009-12-03 Eli Zaretskii <eliz@gnu.org>
2215
2216 * Makefile.in (lisp, shortlisp): Replace indian.el with indian.elc.
2217
84b31826
SM
22182009-12-03 Daniel Hackney <dan@haxney.org> (tiny change)
2219
2220 * process.c (Fmake_network_process): Fix up the tests for
2221 "connectionless socket", so they DTRT for seqpacket sockets as well.
2222
f00c449b
SM
22232009-12-03 Stefan Monnier <monnier@iro.umontreal.ca>
2224
2225 * process.c (Qseqpacket): New symbol.
2226 (HAVE_SEQPACKET): New macro.
2227 (Fmake_network_process): Accept new :type `seqpacket'.
2228 (init_process): Add `seqpacket' feature when applicable.
2229 (syms_of_process): Initialize Qseqpacket.
2230
8096a0ff
YM
22312009-12-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2232
2233 * font.c (font_load_for_lface, font_open_by_name): Don't store name
2234 if entity is Qnil.
2235
3e0de07f
SM
22362009-11-30 Stefan Monnier <monnier@iro.umontreal.ca>
2237
2238 * print.c (print_preprocess): Preprocess the key_and_value table of
2239 hashtables, even tho they're "hidden" (bug#5082).
2240
abeafb2a
JD
22412009-11-29 Jan Djärv <jan.h.d@swipnet.se>
2242
2243 * frame.c (frame_make_pointer_invisible)
2244 (frame_make_pointer_visible): Declare f before statements.
2245
4bf47195
EZ
22462009-11-28 Eli Zaretskii <eliz@gnu.org>
2247
2248 * Makefile.in [!AUTO_DEPEND]: Remove outdated comment about
2249 omitted dependencies on lisp.h.
2250
c525b3f2
JD
22512009-11-27 Jan Djärv <jan.h.d@swipnet.se>
2252
ece2d4ed
JD
2253 * xftfont.c (xftfont_end_for_frame): Just return if dpyinfo->display
2254 is NULL.
2255
2256 * xterm.c (x_delete_terminal): Set dpyinfo->display to NULL.
2257
2258 * frame.c (frame_make_pointer_invisible)
3e0de07f 2259 (frame_make_pointer_visible): Just return if there isn't any selected
ece2d4ed
JD
2260 frame.
2261
c525b3f2
JD
2262 * search.c (simple_search): Remove warning by making *p const.
2263
2f00e299
DN
22642009-11-26 Dan Nicolaescu <dann@ics.uci.edu>
2265
2266 * xdisp.c (power_letter): Remove duplicate const.
2267
084b049b
JD
22682009-11-25 Jan Djärv <jan.h.d@swipnet.se>
2269
a1fadc6f
JD
2270 * term.c (delete_tty): Remove check for last terminal (bug#4970).
2271
5ce6e4f4 2272 * xsettings.c: Revert changes from 2009-11-23. Just use Xft
084b049b
JD
2273 defaults (bug #5025).
2274
28259cac
SM
22752009-11-24 Stefan Monnier <monnier@iro.umontreal.ca>
2276
2277 * insdel.c (adjust_markers_for_delete): Move it in the
2278 right direction! (bug#4803)
2279
e8e14166
YM
22802009-11-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2281
2282 * font.c (font_open_entity): Don't use ASET if font_object is Qnil.
2283
2284 * xterm.c (x_new_font): Update f->scroll_bar_actual_width.
2285
86677b58
GM
22862009-11-24 Glenn Morris <rgm@gnu.org>
2287
2288 * frame.c (focus-follows-mouse): Mention mouse-autoselect-window.
2289
581e51e8
JD
22902009-11-23 Jan Djärv <jan.h.d@swipnet.se>
2291
cfc86c7a
JD
2292 * Makefile.in: Must create deps for ecrt0.o in its rule.
2293
581e51e8
JD
2294 * xfns.c (Fx_select_font): Try to convert Fontconfig name to Gtk name
2295 because that is what Gtk+ font dialog understands.
2296
2297 * font.c (font_make_object, Fcopy_font_spec): Use Fcopy_alist instead
2298 of Fcopy_sequence.
2299 (font_open_by_name): Put name given into QCname for font-object returned.
2300
2301 * frame.c (x_set_font): Save original font name as frame parameter
2302 font-parameter.
2303
2304 * xsettings.c (set_default_xft_settings): New function.
2305 (init_xfd_settings): Call set_default_xft_settings if no XSETTINGS window
2306 is found.
2307
8b264ecb
AS
23082009-11-22 Andreas Schwab <schwab@linux-m68k.org>
2309
2310 * search.c (simple_search): Avoid CHAR_TO_BYTE in inner loop when
2311 searching backwards through multibyte buffer.
2312
872870b2
JD
23132009-11-21 Jan Djärv <jan.h.d@swipnet.se>
2314
2315 * xterm.c: #include xgselect.h.
2316 (x_initialize): Call xgselect_initialize.
2317
2318 * xsettings.c (something_changedCB): C++ comments => C comments.
2319 (init_gconf): Do not deal with any GLib file descriptors, xg_select
2320 does that now.
2321
2322 * gtkutil.c (xg_timer, xg_process_timeouts, xg_start_timer)
2323 (xg_stop_timer, menu_grab_callback_cnt, menu_grab_callback)
2324 (scroll_bar_button_cb): Remove.
5ce6e4f4 2325 (create_menus): C++ comments => C comments. Don't bind grab-notify
872870b2
JD
2326 event.
2327 (xg_create_scroll_bar): Don't bind button-press-event and
2328 button-release-event.
2329
2330 * process.c: Include xgselect.h if defined (USE_GTK) ||
2331 defined (HAVE_GCONF).
2332 (wait_reading_process_output): Call xg_select for the same condition.
2333
2334 * xgselect.c (xg_select): New function to better integrate with
2335 GLib/Gtk event handling. Needed if GConf daemon dies/restarts.
2336
2337 * xgselect.h: New file, declare xg_select, xgselect_initialize.
2338
2339 * Makefile.in (XOBJ): Add xgselect.o.
2340
62a6e103
AS
23412009-11-21 Andreas Schwab <schwab@linux-m68k.org>
2342
0b5397c2
SM
2343 * character.h (STRING_CHAR, STRING_CHAR_AND_LENGTH):
2344 Remove ignored second argument. All callers changed.
62a6e103
AS
2345 * regex.c (STRING_CHAR, STRING_CHAR_AND_LENGTH, RE_STRING_CHAR)
2346 (RE_STRING_CHAR_AND_LENGTH): Likewise.
2347 * xdisp.c (string_char_and_length): Likewise.
2348
b0ca0f33
DN
23492009-11-21 Dan Nicolaescu <dann@ics.uci.edu>
2350
2351 * xterm.c (x_new_font):
2352 * print.c (print_object):
2353 * cmds.c (Fself_insert_command): Move declarations before statements.
2354
dd5a6279
CY
23552009-11-20 Ken Brown <kbrown@cornell.edu> (tiny change)
2356
2357 * s/cygwin.h: Remove unneeded linker flags.
2358
4a8e097d
JD
23592009-11-20 Jan Djärv <jan.h.d@swipnet.se>
2360
0d1d0d26
JD
2361 * xfns.c (x_default_font_parameter): Call xsettings_get_system_font.
2362
2363 * xsettings.h: Declare xsettings_get_system_font.
2364
2365 * xsettings.c (xsettings_get_system_font): New function.
2366 (init_gconf): No use initiating gconf unless we have Xft also.
2367 (syms_of_xsettings): Only provide system-font-setting if HAVE_XFT and
2368 HAVE_GCONF.
2369
4a8e097d
JD
2370 * gtkutil.c (xg_modify_menubar_widgets): If menubar is totally empty
2371 add a blank entry so it doesn't collapse into nothing.
2372
8ab1650e
SM
23732009-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
2374
2375 * lread.c (Funintern): Comment out last change.
2376
82c602f0
RS
23772009-11-19 Richard Stallman <rms@gnu.org>
2378
2379 * lread.c (Funintern): Error if symbol is t or nil.
2380
87e32266
SM
23812009-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
2382
2383 * insdel.c (make_gap_larger): Don't make as many assumptions about the
2384 representation of Lisp integers.
2385 Reported by MJ Chan <mjchan.inbox@gmail.com>.
2386
1b9ac145
AS
23872009-11-17 Andreas Schwab <schwab@linux-m68k.org>
2388
2389 * lisp.h: Remove declaration of Ffont_get_system_font.
2390 * xfns.c: Move include of "xsettings.h".
2391 * xsettings.h: Use EXFUN to declare Ffont_get_system_font.
2392
dfb3c4c6
JD
23932009-11-17 Jan Djärv <jan.h.d@swipnet.se>
2394
87e32266
SM
2395 * xsettings.c (something_changedCB, Ffont_get_system_font):
2396 Check use_system_font.
dfb3c4c6
JD
2397 (syms_of_xsettings): DEFVAR font-use-system-font.
2398
9370c1d8
AS
23992009-11-17 Andreas Schwab <schwab@linux-m68k.org>
2400
25fe851a
AS
2401 * xfns.c (x_default_font_parameter): Remove dead assignment.
2402
9370c1d8
AS
2403 * lisp.h (Fbyteorder, init_font, Ffont_get_system_font): Declare.
2404
637fa988
JD
24052009-11-17 Jan Djärv <jan.h.d@swipnet.se>
2406
87e32266 2407 * xftfont.c (xftfont_fix_match): Older versions of fontconfig do
21050de1 2408 not have FC_LCD_*. #define them if not there.
a6eb20d8 2409
87e32266 2410 * xsettings.c (parse_xft_settings, apply_xft_settings): Ditto.
a6eb20d8 2411
637fa988
JD
2412 * xterm.h (struct x_display_info): Add atoms and Window for xsettings.
2413
2414 * xterm.c (handle_one_xevent): Call xft_settings_event for
2415 ClientMessage, PropertyNotify and DestroyNotify.
2416 (x_term_init): If we have XFT, get DPI from Xft.dpi.
2417 Call xsettings_initialize.
2418
2419 * xftfont.c (xftfont_fix_match): New function.
2420 (xftfont_open): Call XftDefaultSubstitute before XftFontMatch.
2421 Call xftfont_fix_match after XftFontMatch.
2422
2423 * xfont.c (xfont_driver): Initialize all members.
2424
87e32266
SM
2425 * xfns.c (x_default_font_parameter):
2426 Try font from Ffont_get_system_font.
637fa988
JD
2427 Do not get font from x_default_parameter if we got one from
2428 Ffont_get_system_font.
87e32266 2429 (Fx_select_font): Get the defaut font name from :name of FRAME_FONT(f).
637fa988
JD
2430
2431 * w32font.c (w32font_driver): Initialize all members.
2432
2433 * termhooks.h (enum event_kind): CONFIG_CHANGED_EVENT is new.
2434
2435 * lisp.h: Declare syms_of_xsettings.
2436
87e32266
SM
2437 * keyboard.c (kbd_buffer_get_event, make_lispy_event):
2438 Handle CONFIG_CHANGED_EVENT.
637fa988
JD
2439
2440 * ftfont.c (ftfont_filter_properties): New function.
2441
2442 * frame.c (x_set_font): Remove unused variable lval.
2443
87e32266 2444 * font.h (struct font_driver): Add filter_properties.
637fa988
JD
2445
2446 * font.c (font_put_extra): Don't return if val is nil, it means
2447 boolean option is off.
2448 (font_parse_fcname): Collect all extra properties in extra_props
2449 and call filter_properties for all drivers with extra_props and
2450 font as parameter.
87e32266
SM
2451 (font_open_entity): Do not use cache, it does not pick up new
2452 fontconfig settings like hinting.
637fa988
JD
2453 (font_load_for_lface): If spec had a name in it, store it in entity.
2454
2455 * emacs.c (main): Call syms_of_xsettings
2456
2457 * config.in: HAVE_GCONF is new.
2458
2459 * Makefile.in (GCONF_CFLAGS, GCONF_LIBS): New variables for HAVE_GCONF.
2460 xsettings.o is new.
2461
5a942932
KH
24622009-11-17 Kenichi Handa <handa@m17n.org>
2463
2464 * xdisp.c (x_produce_glyphs): Consider face-remapping when falling
2465 back to the default font in case that no suitable font is found.
2466
b7c7a4d1
SM
24672009-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
2468
2469 * menu.c (Fx_popup_menu) [HAVE_NS]: Use generic code for window edge.
2470 Suggested by Chad Brown <yandros@mit.edu>.
2471 (push_menu_item): Use MENU_ITEMS_ITEM_* names.
2472
072f1e39
JD
24732009-11-16 Jan Djärv <jan.h.d@swipnet.se>
2474
2475 * xmenu.c (x_menu_wait_for_event): Call XFlush before select.
2476
5d1e70a2
AS
24772009-11-14 Andreas Schwab <schwab@linux-m68k.org>
2478
87e32266 2479 * Makefile.in: Ignore errors from mkdir when creating deps directory.
5d1e70a2 2480
a53cfbe5
JD
24812009-11-14 Jan Djärv <jan.h.d@swipnet.se>
2482
473a99b7
JD
2483 * gtkutil.c (xg_update_frame_menubar): Do nothing if menubar already
2484 has a parent.
2485
a53cfbe5 2486 * Makefile.in: If AUTO_DEPEND is defined, make gcc generate
5ce6e4f4 2487 dependency files in deps/. Include those files into Makefile.
a53cfbe5
JD
2488
2489 * config.in: Generated (AUTO_DEPEND).
2490
f04bb9b2
MA
24912009-11-13 Michael Albinus <michael.albinus@gmx.de>
2492
b7c7a4d1 2493 * dbusbind.c (Vdbus_registered_objects_table): Rename from
f04bb9b2
MA
2494 Vdbus_registered_functions_table, because it contains also
2495 properties. Fix docstring.
b7c7a4d1 2496 (Fdbus_call_method, Fdbus_call_method_asynchronously): Fix docstring.
f04bb9b2 2497
8f11f7ec
SM
24982009-11-13 Stefan Monnier <monnier@iro.umontreal.ca>
2499
2500 * alloc.c (mark_object): Don't reprocess marked strings.
2501 Check vector's markbit earlier. Adjust calls to mark_vectorlike.
2502 (mark_vectorlike, mark_char_table): Assume the object is unmarked.
2503
8a605fe8
KH
25042009-11-13 Kenichi Handa <handa@m17n.org>
2505
8f11f7ec 2506 * category.c (word_boundary_p): Adjust for the change of the
8a605fe8
KH
2507 semantics of Vword_combining_categories.
2508 (Vword_combining_categories): Describe the slight change of the
2509 semantics.
2510
241c4680
EZ
25112009-11-13 Eli Zaretskii <eliz@gnu.org>
2512
2513 * menu.c (Fx_popup_menu): Call Fx_hide_tip only if HAVE_WINDOW_SYSTEM.
2514
2515 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Revert last change.
2516
5d58e44c
SM
25172009-11-12 Stefan Monnier <monnier@iro.umontreal.ca>
2518
2519 * xdisp.c (syms_of_xdisp): Fix typo in last change.
2520
5e13f9d3
JB
25212009-11-12 Juanma Barranquero <lekktu@gmail.com>
2522
2523 * makefile.w32-in: Update dependencies; add dependencies to lisp.h.
2524
cf54c754
DR
25252009-11-11 David Reitter <david.reitter@gmail.com>
2526
2527 * menu.c (Fx_popup_menu): Remove left-over debugging code and rename
2528 variables to fix 2009-11-09 change.
2529
a4ada374
DN
25302009-11-11 Dan Nicolaescu <dann@ics.uci.edu>
2531
91433552
DN
2532 * process.c (ifflag_def): Make flag_sym constant.
2533 (Fnetwork_interface_info): Use a constant pointer.
2534 (ifflag_table):
2535 * xfns.c (cursor_bits):
2536 * xdisp.c (power_letter):
2537 * termcap.c (speeds, esctab):
2538 * sysdep.c (baud_convert):
2539 * keyboard.c (lispy_accent_codes, modifier_names):
2540 * image.c (xbm_format, xpm_format, pbm_format, png_format)
2541 (jpeg_format, tiff_format, gif_format, svg_format)
2542 (interlace_start, interlace_increment, gs_format):
2543 * gtkutil.c (separator_names):
2544 * fringe.c (swap_nibble):
2545 * fns.c (base64_value_to_char, base64_char_to_value):
2546 * fileio.c (make_temp_name_tbl):
2547 * coding.c (suffixes): Make constant.
2548
f4265f6c
DN
2549 * frame.c (make_initial_frame):
2550 * buffer.c (init_buffer_once): Use make_pure_c_string instead of
2551 build_string.
2552 * alloc.c (syms_of_alloc): Build Vmemory_signal_data in pure memory.
2553
04420943
DN
2554 * s/freebsd.h:
2555 * s/netbsd.h: Remove code referring to non-existent file: unexsunos4.o.
2556
0a5d24ae
DN
2557 * Makefile.in: Add dependencies to lisp.h. Remove dependencies
2558 for non-existent files: unexmips.c, unexnext.c, abbrev.c, malloc.c.
2559
a4ada374
DN
2560 * xfns.c (syms_of_xfns): Use make_pure_string instead of build_string.
2561 * xterm.c (syms_of_xterm):
2562 * xfaces.c (syms_of_xfaces):
2563 * xdisp.c (syms_of_xdisp):
2564 * lread.c (syms_of_lread):
2565 * keyboard.c (syms_of_keyboard): Use make_pure_c_string instead of
2566 build_string.
91433552 2567
a4ada374
DN
2568 * doc.c (Fsnarf_documentation): Purecopy Vbuild_files.
2569
af98fc7f
SM
25702009-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
2571
8ab1650e 2572 * fns.c (Fplist_get): Merge the active and the commented out code.
af98fc7f 2573
e90292a9
JD
25742009-11-10 Jan Djärv <jan.h.d@swipnet.se>
2575
2576 * keyboard.h: Declare timer_check.
2577
2578 * keyboard.c (timer_check_2): New function that does what the old
2579 timer_check did.
2580 (timer_check): Call timer_check_2 until -1 or a non-zero time is
2581 returned, i.e. don't return -1 with timers pending.
2582
2583 * process.c: Remove extern declaration of timer_check.
2584
2585 * xmenu.c (x_menu_wait_for_event): Remove code that did a timeout
2586 even if timer_check returned -1.
2587
af98fc7f
SM
2588 * gtkutil.c (xg_dialog_response_cb): Data is now a struct
2589 xg_dialog_data.
e90292a9
JD
2590 (pop_down_dialog): Destroy widget (if any), cancel timer and unref
2591 the event loop.
2592 (xg_maybe_add_timer, xg_dialog_run): New functions (bug #4574).
2593 (xg_get_file_name, xg_get_font_name): Call xg_dialog_run (bug #4574).
2594 Destroy the dialog after xg_dialog_run.
2595
045b83c0
SM
25962009-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
2597
2598 * menu.c (Fx_popup_menu) [HAVE_NS]: Remove unused vars.
2599
1fb99a3a
JD
26002009-11-10 Jan Djärv <jan.h.d@swipnet.se>
2601
2602 * xmenu.c (xmenu_show): Must not be static after 2009-11-09 changes.
2603
04e452cb
JB
26042009-11-09 Juanma Barranquero <lekktu@gmail.com>
2605
2606 * menu.c [HAVE_NTGUI]: Declare current_popup_menu.
2607
ef7417fd
SM
26082009-11-09 Stefan Monnier <monnier@iro.umontreal.ca>
2609
2610 * menu.c (Fx_popup_menu): Consolidate versions from xmenu.c,
2611 w32menu.c, and nsmenu.m.
2612 Simplify the obsolete case where position is nil.
2613 (cleanup_popup_menu): New function, moved from nsmenu.m.
2614 (struct skp): Remove slot `notreal'.
2615 (single_keymap_panes, keymap_panes): Remove arg `notreal' and
2616 adjust callers.
2617 (single_menu_item): Adjust call to parse_menu_item.
2618 (syms_of_menu): Defsubr x-popup-menu.
2619 * menu.h (Vmenu_updating_frame): Consolidate declarations from *menu.c.
2620 (keymap_panes): Don't export any more.
2621 (mouse_position_for_popup, w32_menu_show, ns_menu_show)
2622 (xmenu_show): Declare.
2623 * keyboard.c (parse_menu_item): Remove arg `notreal'.
2624 (menu_bar_item, read_char_minibuf_menu_prompt): Adjust callers.
2625 * keyboard.h (parse_menu_item): Update declaration.
2626 * xmenu.c (Fx_popup_menu): Remove.
2627 (syms_of_xmenu): Don't defsubr x-popup-menu.
2628 * w32menu.c (Fx_popup_menu): Remove.
2629 (syms_of_w32menu): Don't defsubr x-popup-menu.
2630 * nsmenu.m (cleanup_popup_menu): Remove.
2631 (ns_menu_show): Rename from ns_popup_menu and remove all the code
2632 moved to menu.c's Fx_popup_menu.
2633 (Fx_popup_menu): Remove.
2634 (syms_of_nsmenu): Don't defsubr x-popup-menu, and don't initialize
2635 menu_items (it's done in menu.c already).
2636
424d6179
SM
26372009-11-08 Stefan Monnier <monnier@iro.umontreal.ca>
2638
2639 * keyboard.c (parse_menu_item): Handle `notreal' a bit earlier.
2640 Use `tem' less. Make sure KEYEQ holds a string or nil (bug#4879).
2641
c0df13a6 26422009-11-08 Chong Yidong <cyd@stupidchicken.com>
a20903d0
CY
2643
2644 * xmenu.c (Fx_popup_menu): Extract event timestamp. Pass it to
c0df13a6 2645 xmenu_show. Hide any tooltip before opening a menu.
a20903d0
CY
2646 (xmenu_show): New arg. Pass it to create_and_show_popup_menu.
2647 (create_and_show_popup_menu): New arg. Pass it to gtk_menu_popup.
2648
2de9f71c
SM
26492009-11-06 Stefan Monnier <monnier@iro.umontreal.ca>
2650
2651 Let integers use up 2 tags to give them one extra bit and thus double
2652 their range.
2653 * lisp.h (USE_2_TAGS_FOR_INTS): New macro.
2654 (LISP_INT_TAG, case_Lisp_Int, LISP_STRING_TAG, LISP_INT_TAG_P):
2655 New macros.
2656 (enum Lisp_Type): Use them. Give explicit values.
2657 (Lisp_Type_Limit): Remove.
2658 (XINT, XUINT, make_number) [!USE_LISP_UNION_TYPE]:
2659 (MOST_NEGATIVE_FIXNUM, MOST_POSITIVE_FIXNUM, INTMASK):
2660 Pay attention to USE_2_TAGS_FOR_INTS.
2661 (INTEGERP): Use LISP_INT_TAG_P.
2662 * fns.c (internal_equal): Simplify the default case.
2663 (sxhash): Use case_Lisp_Int.
2664 * data.c (wrong_type_argument): Don't check against Lisp_Type_Limit
2665 any more.
2666 (Ftype_of): Use case_Lisp_Int.
2667 (store_symval_forwarding): Take into account the fact that Ints can
2668 now have more than one tag.
2669 * buffer.c (syms_of_buffer): Use LISP_INT_TAG.
2670 buffer_slot_type_mismatch):
2671 * xfaces.c (face_attr_equal_p):
2672 * print.c (print_object):
2673 * alloc.c (mark_maybe_object, mark_object, survives_gc_p):
2674 Use case_Lisp_Int.
2675
323637a2
EZ
26762009-11-06 Eli Zaretskii <eliz@gnu.org>
2677
7ac65b38
EZ
2678 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce by further 30K.
2679
323637a2
EZ
2680 * alloc.c (make_pure_c_string): Fix last change to avoid compiler
2681 warning.
2682
e511451f
JD
26832009-11-06 Jan Djärv <jan.h.d@swipnet.se>
2684
2685 * gtkutil.c (xg_event_is_for_scrollbar): New function (bug#4870).
2686
2687 * gtkutil.h: Declare xg_event_is_for_scrollbar (bug#4870).
2688
2689 * xterm.c (handle_one_xevent): Call xg_event_is_for_scrollbar for
2690 ButtonPressRelease and MotionNotify (bug#4870).
2691
5e2327cf
DN
26922009-11-06 Dan Nicolaescu <dann@ics.uci.edu>
2693
5adc433e
DN
2694 * keymap.c (syms_of_keymap): Construct exclude_keys in pure memory.
2695
d67b4f80
DN
2696 * xterm.c (syms_of_xterm):
2697 * xselect.c (syms_of_xselect):
2698 * xmenu.c (syms_of_xmenu):
2699 * xfns.c (syms_of_xfns):
2700 * xfaces.c (syms_of_xfaces):
2701 * xdisp.c (syms_of_xdisp):
2702 * window.c (syms_of_window):
2703 * w32fns.c (syms_of_w32fns):
2704 * undo.c (syms_of_undo):
2705 * textprop.c (syms_of_textprop):
2706 * terminal.c (syms_of_terminal):
2707 * syntax.c (syms_of_syntax):
2708 * sound.c (syms_of_sound):
2709 * search.c (syms_of_search):
2710 * print.c (syms_of_print):
2711 * minibuf.c (syms_of_minibuf):
2712 * macros.c (syms_of_macros):
2713 * keymap.c (syms_of_keymap, initial_define_key)
2714 (initial_define_lispy_key):
2715 * keyboard.c (syms_of_keyboard):
2716 * insdel.c (syms_of_insdel):
2717 * image.c (syms_of_image):
2718 * fringe.c (syms_of_fringe):
2719 * frame.c (syms_of_frame):
2720 * fontset.c (syms_of_fontset):
2721 * fns.c (syms_of_fns):
2722 * fns.c (syms_of_fns):
2723 * fileio.c (syms_of_fileio):
2724 * fileio.c (syms_of_fileio):
2725 * eval.c (syms_of_eval):
2726 * doc.c (syms_of_doc):
2727 * dispnew.c (syms_of_display):
2728 * dired.c (syms_of_dired):
2729 * dbusbind.c (syms_of_dbusbind):
2730 * data.c (syms_of_data):
2731 * composite.c (syms_of_composite):
2732 * coding.c (syms_of_coding):
2733 * cmds.c (syms_of_cmds):
2734 * charset.c (define_charset_internal, syms_of_character):
2735 * ccl.c (syms_of_ccl):
2736 * category.c (syms_of_category, init_category_once):
2737 * casetab.c (syms_of_casetab):
2738 * casefiddle.c (syms_of_casefiddle):
2739 * callint.c (syms_of_callint):
2740 * bytecode.c (syms_of_bytecode):
2741 * buffer.c (keys_of_buffer, syms_of_buffer):
2742 * alloc.c (syms_of_alloc):
2743 * process.c (syms_of_process, init_process):
2744 * lread.c (syms_of_lread, init_obarray):
2745 * font.c (build_style_table):
2746 * emacs.c (syms_of_emacs, main): Replace calls to intern with
2747 intern_c_string, calls to make_pure_string with
2748 make_pure_c_string. Use pure_cons instead of Fcons.
2749
5e2327cf
DN
2750 * process.c (socket_options): Make it const.
2751 (set_socket_option, init_process): Use a const pointer.
2752
2753 * lread.c (intern_c_string): New function.
2754 (defvar_kboard, defvar_lisp, defvar_lisp_nopro, defvar_bool)
2755 (defvar_int): Uset it. Make the name const char*.
2756
2757 * lisp.h (defvar_kboard, defvar_lisp, defvar_lisp_nopro, defvar_bool)
2758 (defvar_int): Update prototypes.
2759 (DEFUN, EXFUN): Support for prototypes is now required.
2760 (intern_c_string): New prototype.
2761 (struct Lisp_Subr): Make symbol_name constant.
2762
2763 * font.c (struct table_entry): Remove unused member. Make NAMES
2764 constant.
2765 (weight_table, slant_table, width_table): Make constant.
2766
2767 * emacs.c (struct standard_args): Make name and longname constant.
2768
2769 * character.h (DEFSYM): Use intern_c_string.
2770
a56eaaef
DN
27712009-11-06 Stefan Monnier <monnier@iro.umontreal.ca>
2772
2773 * alloc.c (make_pure_c_string): New function.
2774
2775 * eval.c (Fautoload): Purecopy all arguments.
2776
f6a07420
KH
27772009-11-05 Kenichi Handa <handa@m17n.org>
2778
2779 * fileio.c (Finsert_file_contents): Be sure set coding-system of
2780 the buffer in case of replace.
2781
5d28d4b1
DN
27822009-11-04 Dan Nicolaescu <dann@ics.uci.edu>
2783
2784 * puresize.h (BASE_PURESIZE): Increase to 1620000.
2785
b349d111
SM
27862009-11-03 Stefan Monnier <monnier@iro.umontreal.ca>
2787
d528b1ce
SM
2788 * editfns.c (save_restriction_restore): Update the (pt/begv/vz)_markers
2789 when applicable (bug#4851).
2790
b349d111
SM
2791 * lisp.h: Make USE_LSB_TAG work with USE_LISP_UNION_TYPE.
2792 (P_): Support for prototypes is now required.
2793
c38eb027
CY
27942009-10-31 Chong Yidong <cyd@stupidchicken.com>
2795
2796 * frame.c (Fmake_frame_invisible, Fframe_visible_p): Doc fix
2797 (Bug#4827).
2798
0405f8d9
EZ
27992009-10-30 Eli Zaretskii <eliz@gnu.org>
2800
d528b1ce 2801 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Redefine to waste less pure space.
0405f8d9 2802
ca0a881a
DN
28032009-10-30 Dan Nicolaescu <dann@ics.uci.edu>
2804
2805 * puresize.h (BASE_PURESIZE): Increase to 1470000.
2806
d528b1ce
SM
2807 * lread.c (Fload): Purecopy the file name when building
2808 Vpreloaded_file_list.
ca0a881a 2809
47e0e0e4
JR
28102009-10-29 Jason Rumney <jasonr@wanchan.jasonrumney.net>
2811
2812 * w32fns.c (syms_of_w32fns): Change default value of
2813 w32-scroll-lock-modifier to nil. (Bug#2827)
2814
057bce6f
JB
28152009-10-26 Juanma Barranquero <lekktu@gmail.com>
2816
782a943e 2817 * minibuf.c (Fall_completions): Fix typos in docstring.
057bce6f 2818
242bc74c
AS
28192009-10-26 Andreas Schwab <schwab@redhat.com>
2820
2821 * puresize.h (PURESIZE_RATIO): Increase back to 10/6.
2822
522d013a
JB
28232009-10-26 Juanma Barranquero <lekktu@gmail.com>
2824
2825 * window.c (grow_mini_window): Comment out "delta >= 0" assertion.
2826 For delta < 0, skip check that only makes sense when the mini-window
2827 is going to be enlarged. (Bug#4534)
2828
18060980
CY
28292009-10-25 Chong Yidong <cyd@stupidchicken.com>
2830
2831 * keyboard.c (read_char_x_menu_prompt): Don't demand a prompt
2832 string in menu maps (Bug#4471).
2833
fec8f0fe
CY
28342009-10-24 Chong Yidong <cyd@stupidchicken.com>
2835
2836 * nsfns.m (ns_set_name, ns_set_name_as_filename): Don't call
2837 FRAME_NS_VIEW on terminal frames (Bug#4765).
2838
10d66ec0
AS
28392009-10-24 Andreas Schwab <schwab@linux-m68k.org>
2840
1cae01f7
AS
2841 * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_INTnn and
2842 DBUS_TYPE_UINTnn separately to get proper sign extension.
2843
58a12889
AS
2844 * dired.c (Ffile_attributes): Simplify now that FIXNUM_OVERFLOW_P
2845 can properly handle unsigned types.
d528b1ce 2846 (make_uid, make_gid): Remove.
58a12889 2847
987c9327
AS
2848 * lisp.h (FIXNUM_OVERFLOW_P): Fix last change to handle unsigned
2849 types again.
2850
522d013a 2851 * sysdep.c (procfs_ttyname): Fix sprintf format to match argument type.
10d66ec0
AS
2852 (system_process_attributes): Likewise.
2853
905a9ed3
DN
28542009-10-24 Dan Nicolaescu <dann@ics.uci.edu>
2855
2856 * keymap.c (Fmake_sparse_keymap): Purecopy the name.
2857
2858 * eval.c (Fautoload): Purecopy the filename. Simplify.
2859
2860 * category.c (Fdefine_category): Purecopy docstring.
2861
a599b3e8
AS
28622009-10-23 Andreas Schwab <schwab@linux-m68k.org>
2863
7b792fc9
AS
2864 * lisp.h (FIXNUM_OVERFLOW_P): Remove cast to avoid overflow.
2865
a599b3e8
AS
2866 * puresize.h (PURESIZE_RATIO): Decrease to 11/7.
2867
b35ac83e
CY
28682009-10-23 Chong Yidong <cyd@stupidchicken.com>
2869
2870 * window.c (Fwindow_edges, Fwindow_pixel_edges)
2871 (Fwindow_inside_edges, Fwindow_inside_pixel_edges): Doc fix
2872 (Bug#4775).
2873
e8903e00
SM
28742009-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
2875
2876 * fileio.c (syms_of_fileio): Initialize Vdirectory_sep_char.
2877 (init_fileio_once):
2878 * lisp.h (init_fileio_once): Remove.
2879 * emacs.c (main): Don't call init_fileio_once.
2880
8f43cbf3
DN
28812009-10-23 Dan Nicolaescu <dann@ics.uci.edu>
2882
2883 * puresize.h (BASE_PURESIZE): Increase to 1430000.
2884
26898943
AS
28852009-10-21 Andreas Schwab <schwab@linux-m68k.org>
2886
2887 * doprnt.c (doprnt): Fix overflow check.
2888
5c646d5a
JD
28892009-10-21 Jan Djärv <jan.h.d@swipnet.se>
2890
3132a7ea
JD
2891 * xterm.c (x_term_init): Remove XSynchronize call done for debugging.
2892
5c646d5a
JD
2893 * xterm.h (x_wait_for_event): Declare it.
2894
2895 * xterm.c (pending_event_wait): New variable.
2896 (handle_one_xevent): Set pending_event_wait.eventtype to 0 if we
2897 see pending_event_wait.eventtype.
2898 (handle_one_xevent): Don't change gravity when parent changes.
d528b1ce
SM
2899 (x_new_font): Call change_frame_size with new rows/columns before we
2900 try to resize the frame.
5c646d5a 2901 (x_wait_for_event): New function.
d528b1ce
SM
2902 (x_set_window_size_1): Don't change gravity unless change_gravity
2903 is set.
5c646d5a
JD
2904 Call XResizeWindow with FRAME_OUTER_WINDOW. If we are visible,
2905 don't change frame size, instead wait for the ConfigureNotify.
2906 (x_set_window_size): Call x_set_window_size_1 for USE_X_TOOLKIT also.
2907 (x_wm_set_size_hint): Remove ifdefs for USE_X_TOOLKIT.
2908 (x_initialize): Initialize pending_event_wait.
2909
2910 * xmenu.c (set_frame_menubar): Add internal border width to menu bar
2911 size.
2912
2913 * widget.c (EmacsFrameSetValues): Add comment.
2914 (EmacsFrameSetCharSize): Just call x_set_window_size.
2915
2916 * gtkutil.c (xg_frame_set_char_size): Flush events and call
2917 x_wait_for_event.
d528b1ce 2918 (flush_and_sync): Remove again.
5c646d5a
JD
2919 (xg_get_font_name): Suggest monospace if no previous font is known.
2920
e9c1637d
SM
29212009-10-20 Stefan Monnier <monnier@iro.umontreal.ca>
2922
2923 * character.c (char_resolve_modifier_mask): Don't resolve meta to the
46be764e 2924 8th bit, since that only made sense in the ASCII world (bug#4751).
e9c1637d 2925
5a72cccb
YM
29262009-10-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2927
2928 * xterm.c (XTread_socket) [!USE_GTK && HAVE_X_I18N]: Don't quit
2929 processing pending events when event is filtered for input method.
ab04798f 2930 (Bug#3681)
5a72cccb 2931
2629aa37
JB
29322009-10-20 Juanma Barranquero <lekktu@gmail.com>
2933
2934 * fns.c: Add #endif accidentally removed in previous change.
2935
c3417a74
DN
29362009-10-19 Dan Nicolaescu <dann@ics.uci.edu>
2937
2938 * fns.c: Remove code for unsupported system: MAC_OS.
2939 * image.c: Likewise. Include setjmp.h.
2940
9685cef2
JD
29412009-10-19 Jan Djärv <jan.h.d@swipnet.se>
2942
2943 * xterm.c (x_create_toolkit_scroll_bar): Don't allocate color for
2944 pixel -1 (bug #4742).
2945
d7306fe6
DN
29462009-10-19 Dan Nicolaescu <dann@ics.uci.edu>
2947
019d2c4c
DN
2948 * process.c (create_pty): Remove conditionals for no longer
2949 supported systems: UNIPLUS and RTU.
2950
ee6bacd4
DN
2951 * xterm.c:
2952 * xfns.c: Remove always true condition: XtSpecificationRelease >= 5.
2953
d7306fe6
DN
2954 * alloc.c: Do not define struct catchtag.
2955 * eval.c: Move struct catchtag definition ...
2956 * lisp.h: ... here.
2957
2958 * image.c: Move png.h #include earlier to avoid warnings.
2959
2960 * xterm.c:
2961 * xsmfns.c:
2962 * xselect.c:
2963 * xrdb.c:
2964 * xmenu.c:
2965 * xftfont.c:
2966 * xfont.c:
2967 * xfns.c:
2968 * xfaces.c:
2969 * xdisp.c:
2970 * window.c:
2971 * widget.c:
2972 * w32xfns.c:
2973 * w32uniscribe.c:
2974 * w32term.c:
2975 * w32select.c:
2976 * w32reg.c:
2977 * w32proc.c:
2978 * w32menu.c:
2979 * w32inevt.c:
2980 * w32heap.c:
2981 * w32font.c:
2982 * w32fns.c:
2983 * w32console.c:
2984 * w32.c:
2985 * w16select.c:
2986 * vm-limit.c:
2987 * unexsol.c:
2988 * unexec.c:
2989 * unexcw.c:
2990 * unexaix.c:
2991 * undo.c:
2992 * tparam.c:
2993 * textprop.c:
2994 * terminfo.c:
2995 * terminal.c:
2996 * termcap.c:
2997 * term.c:
2998 * syntax.c:
2999 * sound.c:
3000 * sheap.c:
3001 * search.c:
3002 * scroll.c:
3003 * region-cache.c:
3004 * regex.c:
3005 * ralloc.c:
3006 * process.c:
3007 * print.c:
b024548b
DN
3008 * nsterm.m:
3009 * nsselect.m:
3010 * nsmenu.m:
3011 * nsimage.m:
3012 * nsfont.m:
3013 * nsfns.m:
d7306fe6
DN
3014 * msdos.c:
3015 * minibuf.c:
3016 * menu.c:
3017 * marker.c:
3018 * macros.c:
3019 * keymap.c:
3020 * keyboard.c:
3021 * intervals.c:
3022 * insdel.c:
3023 * indent.c:
3024 * gtkutil.c:
3025 * ftxfont.c:
3026 * ftfont.c:
3027 * fringe.c:
3028 * frame.c:
3029 * fontset.c:
3030 * font.c:
3031 * fns.c:
3032 * floatfns.c:
3033 * filelock.c:
3034 * fileio.c:
3035 * emacs.c:
3036 * editfns.c:
3037 * dosfns.c:
3038 * doprnt.c:
3039 * doc.c:
3040 * dispnew.c:
3041 * dired.c:
3042 * dbusbind.c:
3043 * data.c:
3044 * composite.c:
3045 * coding.c:
3046 * cmds.c:
3047 * cm.c:
3048 * chartab.c:
3049 * charset.c:
3050 * character.c:
3051 * ccl.c:
3052 * category.c:
3053 * casetab.c:
3054 * casefiddle.c:
3055 * callproc.c:
3056 * callint.c:
3057 * bytecode.c:
3058 * buffer.c:
3059 * atimer.c: Include setjmp.h. (Bug#4643)
3060
fd5f21e6
SM
30612009-10-18 Stefan Monnier <monnier@iro.umontreal.ca>
3062
4c0354d7
SM
3063 Remove leftover table unibyte_to_multibyte_table.
3064 * character.c (unibyte_to_multibyte_table): Remove.
3065 (Funibyte_char_to_multibyte): Use MAKE_CHAR_MULTIBYTE.
3066 * charset.c (init_charset_once): Don't init unibyte_to_multibyte_table.
3067 * character.h (UNIBYTE_TO_CHAR): New macro.
3068 (MAKE_CHAR_MULTIBYTE): Use it.
3069 (unibyte_to_multibyte_table, unibyte_char_to_multibyte): Remove.
3070 * xdisp.c (get_next_display_element): USE ASCII_CHAR_P.
3071 (message_dolog, set_message_1):
3072 * search.c (Freplace_match):
3073 * editfns.c (Fcompare_buffer_substrings):
3074 * fns.c (Fcompare_strings): Use MAKE_CHAR_MULTIBYTE.
3075 (concat):
3076 * insdel.c (copy_text, count_size_as_multibyte):
3077 Use ASCII_CHAR_P and BYTE8_TO_CHAR.
3078 * term.c (produce_glyphs):
3079 * syntax.c (skip_chars): Use BYTE8_TO_CHAR.
3080 * regex.c (RE_CHAR_TO_MULTIBYTE):
3081 * cmds.c (internal_self_insert):
3082 * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use UNIBYTE_TO_CHAR.
3083
fd5f21e6
SM
3084 * cmds.c (internal_self_insert): `c' is already in "multibyte" form.
3085
4418646e
DN
30862009-10-17 Dan Nicolaescu <dann@ics.uci.edu>
3087
3088 * puresize.h (BASE_PURESIZE): Increase to 1310000.
3089
35f5c1d2
JB
30902009-10-16 Juanma Barranquero <lekktu@gmail.com>
3091
3092 * buffer.c (Fbuffer_name): Doc fix. (Bug#4728)
3093
a0cd8f6b
AR
30942009-10-15 Adrian Robert <Adrian.B.Robert@gmail.com>
3095
3096 * nsterm.h (NS_HAVE_NSINTEGER): Back out and augment with CGFloat,
3097 still needed under Tiger.
3098
3099 * nsterm.m (EmacsView-conversationIdentifier): Arg is long.
3100
3101 * m/amdx86-64.h: Don't set LIB_STANDARD and START_FILES under
3102 __Apple__.
3103
3104 * m/intel386.h: Remove DARWIN_OS/_LP64 special case.
3105
01a8d3fa
KH
31062009-10-15 Kenichi Handa <handa@m17n.org>
3107
3108 * print.c (print_object): Escape a symbol like "2E10" too.
3109
bf6c75c9 31102009-10-11 Adrian Robert <Adrian.B.Robert@gmail.com>
6e4780c5
JB
3111
3112 Cleanups and changes for 64-bit compile under Snow Leopard.
3113 Based on suggestions by Erik Charlebois.
bf6c75c9
AR
3114
3115 * nsfns.m (xw-color-values): Use CGFloat where appropriate.
3116
c5959062 3117 * nsfont.m (ns_char_width): Replace deprecated call.
bf6c75c9
AR
3118 (ns_findfonts, nsfont_list_family): Use long format in printf, and
3119 cast argument.
3120 (nsfont_open): Use ns_char_width() everywhere.
d528b1ce 3121 (ns_uni_to_glyphs, NSGlyphStorage): Use NS[U]Integer where appropriate.
bf6c75c9
AR
3122
3123 * nsgui.h (NSPoint, NSSize) [!__OBJC__]: Define and use CGFloat.
3124
3125 * nsimage.m (EmacsImage-setXBMColor:,-getPixelAtX:Y:): Use CGFloat
3126 where appropriate.
3127
3128 * nsmenu.m (EmacsMenu-addItemWithWidgetValue:): Use NSInteger
3129 where appropriate.
6e4780c5
JB
3130 (EmacsToolbar-addDisplayItemWithImage:idx:helpText:enabled:):
3131 Use stringWithUTF8String.
bf6c75c9
AR
3132 (EmacsDialogPanel-initWithContentRect:styleMask:): Fix signature.
3133
6e4780c5
JB
3134 * nsterm.h (EmacsView, EmacsMenu, EmacsToolbar, EmacsTooltip):
3135 Add formal protocol mention to inheritance.
bf6c75c9
AR
3136 [NS_HAVE_NSINTEGER]: Drop conditional and contents.
3137
6e4780c5
JB
3138 * nsterm.m (ns_color_to_lisp): Use CGFloat where appropriate.
3139 Fix printf format.
bf6c75c9
AR
3140 (ns_query_color): Use CGFloat where appropriate.
3141 (EmacsView<NSTextInput>, EmacsScroller): Fix method signatures.
ac146f82 3142 (EmacsScroller-mouseDown:): Use long format in printf, and cast
bf6c75c9
AR
3143 argument.
3144
3d87f118
AR
3145 * config.in (NS_HAVE_NSINTEGER): Drop.
3146
a95c8102
AR
3147 * dbusbind.c (dbus-method-return-internal)
3148 (dbus-method-error-internal): Use long format in printf, and cast
3149 argument.
3150
3151 * font.c (font_unparse_xlfd, font_unparse_fcname): Use long format
3152 in printf, and cast argument.
3153
6873acca 3154 * process.c (list_processes_1): Use long format in printf, and
a95c8102
AR
3155 cast argument.
3156
9ec6f100
GM
31572009-10-11 Glenn Morris <rgm@gnu.org>
3158
3159 * frame.c (Fframe_pixel_height): Doc fix. (Bug#4535)
3160
5be883cd
JD
31612009-10-08 Jan Djärv <jan.h.d@swipnet.se>
3162
3163 * gtkutil.c (create_menus): Call gtk_widget_set_size_request for
3164 menu bar with a small width so it doesn't enlarge the frame.
3165
d7a39b51
JB
31662009-10-08 Juanma Barranquero <lekktu@gmail.com>
3167
3168 * fontset.c (Fset_fontset_font): Fix typos in error messages.
3169
0c2b6f8e
GM
31702009-10-06 Glenn Morris <rgm@gnu.org>
3171
3172 * Makefile.in (emacs${EXEEXT}): Remove direct dependence on
3173 SOME_MACHINE_LISP (this enters indirectly via DOC).
3174
e02131a2
EZ
31752009-10-05 Eli Zaretskii <eliz@gnu.org>
3176
3177 * dired.c (Ffile_attributes): Doc fix. (Bug#4638)
3178
b4744254
EZ
31792009-10-04 Eli Zaretskii <eliz@gnu.org>
3180
3181 * xdisp.c (syms_of_xdisp) <unibyte-display-via-language-environment>:
3182 Doc fix.
3183
dbf64827
JB
31842009-10-03 Martin Rudalics <rudalics@gmx.at>
3185
3186 * window.c (Fdelete_window): Check WINDOW argument. (Bug#4618)
3187
e9a0aef8
MA
31882009-10-02 Michael Albinus <michael.albinus@gmx.de>
3189
d528b1ce 3190 * lisp.h (Qdelete_directory_internal): Remove, because it is not
e9a0aef8
MA
3191 used anymore outside fileio.c.
3192
3193 * w32fns.c (Fsystem_move_file_to_trash): Use delete-directory.
3194
64eb2b56
JB
31952009-10-01 Juanma Barranquero <lekktu@gmail.com>
3196
3197 * lisp.h (Qdelete_directory_internal):
3198 Declare, instead of Qdelete_directory.
3199
3200 * w32fns.c (Fsystem_move_file_to_trash): Use it.
3201
9d28c33e
SM
32022009-10-01 Stefan Monnier <monnier@iro.umontreal.ca>
3203
3204 * eval.c (Fcalled_interactively_p): Add `kind' argument.
3205
9d8f3bd9
MA
32062009-10-01 Michael Albinus <michael.albinus@gmx.de>
3207
9d28c33e 3208 * fileio.c (Fdelete_directory_internal): Rename from
9d8f3bd9
MA
3209 Fdelete_directory. It is not a command anymore. It has no file
3210 name handler.
3211
9694740b
SM
32122009-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
3213
3214 * xdisp.c (get_next_display_element): Use an enum in last change.
3215
748e162f
KH
32162009-09-28 Kenichi Handa <handa@m17n.org>
3217
9694740b 3218 * xdisp.c (get_next_display_element): Pay attention to
748e162f
KH
3219 unibyte_display_via_language_environment in handling
3220 Vnobreak_char_display.
3221
17efd58d
AR
32222009-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
3223
3224 * nsterm.h (ns_app_name): New extern variable.
3225
3226 * nsterm.m (ns_app_name): New variable.
3227 (ns_term_init): Set and use it.
3228 (ns_term_shutdown): Use it.
3229
3230 * nsmenu.m (ns_update_menubar): Use ns_app_name. Sync with xmenu.c.
3231 (EmacsMenu-clear:, ns_popup_dialog): Use ns_app_name.
3232
3233 * nsfns.m (ns_set_name_iconic, ns_set_name)
3234 (ns_set_name_as_filename, x-create-frame, ns-get-resource)
3235 (ns-set-resource): Use ns_app_name instead of NSProcessInfo call.
3236
9694740b
SM
3237 * menu.c (find_and_return_menu_selection) [HAVE_NS]:
3238 Remove double-casting in client_data comparison.
31c2d412 3239
3208cb35
YM
32402009-09-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3241
3242 * keyboard.c (make_lispy_event): Remember last wheel direction.
3243 (syms_of_keyboard) <wheel_syms>: Compute array size at compile time.
3244
b7d552d6
GM
32452009-09-26 Glenn Morris <rgm@gnu.org>
3246
3247 * Makefile.in (MSDOS_SUPPORT) [MSDOS]: Remove unneeded '/' in
3248 internal.elc. Add term/pc-win.elc.
3249 (WINDOW_SUPPORT) [HAVE_X_WINDOWS]: Add term/common-win.elc and
3250 term/x-win.elc.
3251 (WINNT_SUPPORT) [WINDOWSNT]: Add term/common-win.elc and
3252 term/w32-win.elc.
3253 (NS_SUPPORT): New.
3254 (lisp): Add NS_SUPPORT.
3255 (SOME_MACHINE_LISP): Add term/w32-win.elc and emacs-lisp/easymenu.elc.
3256
4ff670a8
DR
32572009-09-25 David Reitter <david.reitter@gmail.com>
3258
3259 * nsmenu.m (EmacsMenu-clear): Recognize application menu
3260 on Mac OS X 10.6+ (bug#4513).
3261
feabfb6c
JB
32622009-09-24 Juanma Barranquero <lekktu@gmail.com>
3263
3264 * frame.c (xrdb_get_resource): Return nil for empty string resources;
d528b1ce
SM
3265 some parts of Emacs code (like font selection) don't grok them.
3266 See http://lists.gnu.org/archive/html/emacs-devel/2009-09/msg00528.html
feabfb6c 3267
de59072a
AS
32682009-09-24 Andreas Schwab <schwab@redhat.com>
3269
3270 * coding.c (decode_coding_iso_2022): Fix operator precedence.
3271
a489517b
JB
32722009-09-24 Juanma Barranquero <lekktu@gmail.com>
3273
3274 * dired.c (Fdirectory_files): Fix typo in docstring.
3275
0592970c
AR
32762009-09-23 Adrian Robert <Adrian.B.Robert@gmail.com>
3277
3278 * nsterm.m (EV_TIMESTAMP, x_set_window_size)
3279 (EmacsApp-application:openFiles:): Remove GNUstep conditionals.
3280 (EmacsScroller-setPosition:portion:whole:): Remove -display call
3281 under GNUstep.
3282 (EmacsView-initFrameFromEmacs:): Set autoresizing mask.
3283
3284 * nsfont.m (ns_glyph_metrics): Remove GNUstep conditional for
3285 glyph advancement.
3286
48e8a88b
AR
32872009-09-22 Adrian Robert <Adrian.B.Robert@gmail.com>
3288
3289 * nsterm.m (CGContextSetFontRenderingMode): Drop declaration.
b3aac06a 3290 (EmacsScroller-mouseDown:): Use SCROLL_BAR_FIRST_DELAY.
48e8a88b
AR
3291
3292 * nsmenu.m (EmacsMenu-menuNeedsUpdate): Ignore if frame has been
3293 deleted (bug #4492).
3294
e14f0a78
AR
3295 * nsfont.m (Vns_reg_to_script): New lisp variable.
3296 (syms_of_nsfont): Declare it.
3297 (ns_registry_to_script): New function.
3298 (ns_get_req_script): Call it.
3299 (ns_findfonts): Don't give up on non-unicode registry.
3300
3301 * font.c (DEFAULT_ENCODING) [HAVE_NS]: Remove special case.
3302
5b650faa
SM
33032009-09-20 Tom Tromey <tromey@redhat.com>
3304
3305 * eval.c (find_handler_clause): Make stack-trace-on-error work in
3306 batch mode (bug#4228).
3307
a489517b 33082009-09-18 Rob Christie <robchristie@gmail.com> (tiny change)
0bae4e09
AR
3309
3310 * nsmenu.m (EmacsMenu-parseKeyEquiv:): Parse key equivalent more
a489517b 3311 carefully. (Bug #4339)
0bae4e09 3312
fcfe06f3
CY
33132009-09-18 Chong Yidong <cyd@stupidchicken.com>
3314
d798ba87 3315 * syntax.c (Fchar_syntax): Minor doc fix (Bug#4400).
fcfe06f3 3316
31642728
AR
33172009-09-18 Adrian Robert <Adrian.B.Robert@gmail.com>
3318
3319 * emacs.c (inhibit_x_resources): Update doc string for NS.
3320 (main) [HAVE_NS]: Don't process --no-init-file option. Remove
cff11156 3321 legacy code for -NXHost. Fix error printf in daemon case.
31642728
AR
3322
3323 * nsterm.h (ns_no_defaults): Remove.
3324
3325 * nsterm.m (ns_no_defaults): Remove.
3326 (ns_term_init): Switch ns_no_defaults -> inhibit_x_resources.
3327 (ns_use_qd_smoothing): Remove legacy variable.
6516d10a
AR
3328 (EmacsView-windowShouldZoom:): Set frame left_pos, top_pos and
3329 don't update the NSWindow itself.
3330 (EmacsView-windowWillUseStandardFrame:defaultFrame:): Improve
a489517b 3331 state detection and store user rect ourselves. (Bug #3581)
31642728
AR
3332
3333 * nsfont.m (nsfont_draw) [NS_IMPL_COCOA]: Don't use
3334 ns_use_qd_smoothing.
3335
3336 * nsfns.m (x_get_string_resource): Ape just-previous changes to other
3337 platform versions. Drop support for emacs-20-style face specs.
8aad0aea 3338 (x-close-connection): Drop PSFlush() under OS X.
a489517b 3339 (x-focus-frame): Activate the app first. (Bug #4180)
31642728 3340
8686ac71
JB
33412009-09-17 Juanma Barranquero <lekktu@gmail.com>
3342
3343 * emacs.c (inhibit_x_resources): New variable.
3344 (main) [HAVE_NS]: Don't process --quick command line option.
3345 (syms_of_emacs) <inhibit-x-resources>: DEFVAR_BOOL it.
3346
3347 * lisp.h (inhibit_x_resources): Declare it extern.
3348
3349 * w32reg.c (x_get_string_resource):
3350 * xrdb.c (x_get_string_resource): Obey inhibit_x_resources.
3351
e227ba05
EZ
33522009-09-17 Eli Zaretskii <eliz@gnu.org>
3353
362654a6
JB
3354 * Makefile.in (MSDOS_SUPPORT, SOME_MACHINE_LISP):
3355 Add lisp/term/internal.elc.
e227ba05 3356
742d40e8
SM
33572009-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
3358
3359 * frame.c (x_get_resource_string): Re-add for non-toolkit builds
3360 (bug#4461).
3361
005bd5a2
DN
33622009-09-17 Dan Nicolaescu <dann@ics.uci.edu>
3363
3364 * puresize.h (BASE_PURESIZE): Increase to 1290000.
3365
3366 * Makefile.in (OTHER_FILES): Define using autoconf, not cpp.
3367 (OBJECTS_MACHINE): Remove, unused.
3368
f9af9719
SM
33692009-09-16 Stefan Monnier <monnier@iro.umontreal.ca>
3370
3371 * frame.c (x_get_resource_string): Remove unused.
3372
0307c7d2
JD
33732009-09-15 Jan Djärv <jan.h.d@swipnet.se>
3374
3375 * xterm.c (x_new_font): Call change_frame_size before calling
3376 x_set_window_size, in case frame size won't change.
3377
3378 * frame.c (x_set_font): Remove dead code.
3379
428b13d6
SM
33802009-09-15 Stefan Monnier <monnier@iro.umontreal.ca>
3381
3382 * lread.c (Fload): Also run do-after-load-evaluation while dumping.
3383
5766c380
SM
33842009-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
3385
3386 * lread.c (Fload): Don't output a message after loading an obsolete
3387 package any more (done in Lisp now).
3388
2fd0161b
CY
33892009-09-12 Chong Yidong <cyd@stupidchicken.com>
3390
3391 * fns.c (syms_of_fns): Doc fix (Bug#4227).
3392
bc5e75b6
SM
33932009-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
3394
3395 * keymap.c (Fwhere_is_internal): Use nconc2.
3396
c31c985e
AM
33972009-09-11 Alan Mackenzie <acm@muc.de>
3398
3399 * dispnew.c (Fsend_string_to_terminal): Amend doc string to cover
3400 batch mode.
3401
78012bd2
AS
34022009-09-11 Andreas Schwab <schwab@linux-m68k.org>
3403
3404 * xdisp.c (display_mode_element): Detect cycles.
3405
9d889332
SM
34062009-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
3407
3408 * keymap.c (where_is_internal): Don't erroneously return nil right after
3409 filling the cache.
3410 (where_is_internal_1): Fix up typo.
3411
7ab5d780
GM
34122009-09-11 Glenn Morris <rgm@gnu.org>
3413
3414 * frame.c (Fx_parse_geometry): Unify the X and NS versions so that they
3415 share a common doc-string.
3416
5238a749
SM
34172009-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
3418
66d77eda
SM
3419 * keymap.c (get_keymap): Return the actual keymap symbol rather than
3420 t for autoloaded keymaps when autoloading is not allowed (bug#4393).
3421
5238a749
SM
3422 * keymap.c (QCadvertised_binding): New constant.
3423 (syms_of_keymap): Initialize it.
3424 (Fwhere_is_internal): Try and use bindings from :advertised-binding
3425 if applicable.
3426
19f48442
SM
34272009-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
3428
50d4ba39
SM
3429 * keyboard.c (Qmenu_alias, Vdefine_key_rebound_commands): Remove.
3430 (parse_menu_item): Streamline since bindings are recomputed all the
3431 time anyway. Don't bother checking Vdefine_key_rebound_commands any
3432 more and don't support lmenu's menu-alias any more either.
3433
a88a5372
SM
3434 * keymap.c (where_is_internal_data): Make noindirect a boolean.
3435 (where_is_internal): Strip it down to only traverse the keymaps.
3436 Move the cache handling from Fwhere_is_internal to here.
3437 (Fwhere_is_internal): Move the handling of remapping and the choice of
3438 the best binding from where_is_internal to here.
3439 Unify the cached/noncached paths, so remapping is also handled
3440 correctly when the cache is used, and so the cache can be used to
3441 speed up remap-handling when applicable.
3442 Give preference to non-remapped bindings.
3443 * doc.c (Fsubstitute_command_keys): Let Fwhere_is_internal's prefer
3444 non-remapped bindings.
3445 * keyboard.c (parse_menu_item): Let Fwhere_is_internal handle
3446 command remapping.
3447
19f48442
SM
3448 * xdisp.c (display_mode_element): Move list length limit from 50 to
3449 5000 (see thread starting with <xbaik5174uqu.fsf@cam.ac.uk>).
3450
599498c3 34512009-09-09 Adrian Robert <Adrian.B.Robert@gmail.com>
c1905ca3
AR
3452
3453 * nsfont.m (ns_get_family): Don't force first letter to uppercase.
3454
f9b7b5ac
SM
34552009-09-09 Stefan Monnier <monnier@iro.umontreal.ca>
3456
a53af587
JB
3457 * xdisp.c (Vtruncate_partial_width_windows): Improve docstring.
3458 (Bug#4334)
3459
f9b7b5ac
SM
3460 * keymap.c (where_is_internal): Filter out shadowed remappings.
3461 Assume that where_is_internal returns unshadowed bindings to simplify
3462 the code and get rid of the gotos. Use ASIZE.
3463
04f4b72d
JD
34642009-09-04 Jan Djärv <jan.h.d@swipnet.se>
3465
4da146f2
JD
3466 * xterm.c (x_focus_changed): If we get a focusout and pointer
3467 is invisible, make it visible.
3468
04f4b72d
JD
3469 * xterm.h: Remove condition for declaration of
3470 x_*_window_to_frame.
3471
7cef7ce3
SM
34722009-09-03 Stefan Monnier <monnier@iro.umontreal.ca>
3473
3474 * dispnew.c (Fsend_string_to_terminal): Make it work again on the
3475 initial terminal as well.
3476
a54fa5b7
JD
34772009-09-02 Jan Djärv <jan.h.d@swipnet.se>
3478
3479 * xterm.h: Rename x_non_menubar_window_to_frame to
7cef7ce3 3480 x_menubar_window_to_frame.
a54fa5b7 3481
50426a04 3482 * xterm.c: Remove declarations also in xterm.h.
a54fa5b7
JD
3483 (XTmouse_position): Do not return valid positions
3484 for clicks in the menubar and the toolbar for Gtk+.
3485
3486 * xfns.c (x_any_window_to_frame): Assume less about Gtk+ internals,
3487 if the widget for the event has the same top level as a frame,
3488 return the frame.
3489 (x_menubar_window_to_frame): Detect menu bar even with Gtk+
3490 internal windows, bug #4122.
3491 (x_non_menubar_window_to_frame): Remove.
3492
5a021dd0
GM
34932009-09-02 Glenn Morris <rgm@gnu.org>
3494
3495 * buffer.c (default-major-mode): Move most of the doc from here...
3496 (major-mode): ... to here.
3497
548fe2f3
NR
34982009-08-30 Nick Roberts <nickrob@snap.net.nz>
3499
3500 * process.c (wait_reading_process_output): Keep the descriptor
3501 when pty is used by a non-child process, e.g., in I/O buffer of
3502 GDB this allows inferior to be restarted.
3503
e0840eef
EZ
35042009-08-29 Eli Zaretskii <eliz@gnu.org>
3505
3506 * xdisp.c (redisplay_internal): Remove redundant test and collapse
3507 both branches into one.
3508
82e98df4
SM
35092009-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
3510
3511 * emacs.c (USAGE1): Remove --(no-)multibyte, --(no-)unibyte.
3512 (main): Use enable-multibyte-characters rather than
3513 default-enable-multibyte-characters. Output a warning message when
3514 running a unibyte session.
3515
890617cb
YM
35162009-08-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3517
3518 * unexmacosx.c (print_load_command_name) [LC_DYLD_INFO]: Add cases
3519 LC_DYLD_INFO and LC_DYLD_INFO_ONLY.
3520 (copy_data_segment): Also copy __program_vars section.
3521 (copy_dyld_info) [LC_DYLD_INFO]: New function.
3522 (dump_it) [LC_DYLD_INFO]: Use it.
3523
3524 * s/darwin.h [temacs]: Undef HAVE_POSIX_MEMALIGN.
3525
e7adeadc
EZ
35262009-08-28 Eli Zaretskii <eliz@gnu.org>
3527
3528 * makefile.w32-in ($(BLD)/doc.$(O)): Depend on buildobj.h, not on
3529 $(SRC)/buildobj.h.
3530 (buildobj.h): Renamed from $(SRC)/buildobj.h.
3531 (make-buildobj-CMD, make-buildobj-SH): Create buildobj.h, not
3532 $(SRC)/buildobj.h.
3533 (clean): Add buildobj.h.
3534
3ed8bbdc
TZ
35352009-08-28 Teodor Zlatanov <tzz@lifelogs.com>
3536
3537 * print.c (print_object): Set escapeflag to 1 when printing
3538 hashtable keys and values.
3539
155a6764
SM
35402009-08-27 Stefan Monnier <monnier@iro.umontreal.ca>
3541
3542 * lread.c (read_integer): Use doubles (and potentially return a float
3543 number) as we do in string-to-number.
3544 (read1): Use strtol to read integers, signal errors on strtol's
3545 overflow and use floats if strtol's output is too large for
3546 Elisp integers.
3547
877610de
EZ
35482009-08-27 Eli Zaretskii <eliz@gnu.org>
3549
3550 * makefile.w32-in ($(SRC)/buildobj.h, make-buildobj-CMD)
3551 (make-buildobj-SH): Fix last change.
3552 (SRC): Move to before where it's first used.
3553
ef73e7be
KH
35542009-08-27 Kenichi Handa <handa@m17n.org>
3555
550c8289
KH
3556 * process.c (send_process): Use encode_coding_object instead of
3557 encode_coding_string to perform eol-conversion even if the string
3558 is unibyte.
3559
60afa08d
KH
3560 * coding.c (encode_coding_utf_16): Fix checking of a Unicode
3561 character.
3562
ef73e7be 3563 * cmds.c (Fself_insert_command): Avoid unnecessay
8a0b709a 3564 unibyte->multibyte conversion. (Bug#4240) (Bug#4037)
ef73e7be 3565
7b3a82d7
DN
35662009-08-26 Dan Nicolaescu <dann@ics.uci.edu>
3567
5654bf63
DN
3568 * callproc.c (Fcall_process): Remove always true #if.
3569
7b3a82d7
DN
3570 * lisp.h: Replace #if 0 code for checking with text pointing to
3571 the --enable-checking configure flag.
3572
3573 * emacs.c (main): Mention the --enable-profiling configure flag
3574 instead of using CFLAGS.
3575
878bde49
KR
35762009-08-26 Ken Raeburn <raeburn@raeburn.org>
3577
3578 * Makefile.in (buildobj.h): New target.
3579 (doc.o): Depend on it.
3580 (temacs${EXEEXT}): Don't generate buildobj.lst.
3581 (mostlyclean): Delete buildobj.h, not buildobj.lst.
3582 * makefile.w32-in ($(SRC)/buildobj.h): New target.
3583 ($(BLD)/doc.$(O)): Depend on it.
3584 (make-buildobj-CMD, make-buildobj-SH): New targets. (Syntax help
3585 provided by Eli Zaretskii.)
3586 ($(TEMACS)): Don't generate buildobj.lst.
3587 * doc.c: Include buildobj.h.
3588 (buildobj): New static variable.
3589 (Fsnarf_documentation): Use it, instead of opening and reading
3590 buildobj.lst.
3591
1574224c
MA
35922009-08-25 Michael Albinus <michael.albinus@gmx.de>
3593
3594 * dbusbind.c (Fdbus_call_method)
3595 (Fdbus_call_method_asynchronously): Use English numeric format for
3596 timeout values in doc string.
3597
d9da2f45
KH
35982009-08-25 Kenichi Handa <handa@m17n.org>
3599
ef73e7be
KH
3600 * alloc.c (mark_char_table): New function.
3601 (mark_object): Use mark_char_table for a char-table.
3602
d9da2f45
KH
3603 * lisp.h (CHAR_TABLE_REF_ASCII): New macro.
3604 (CHAR_TABLE_REF): Use it.
3605
c8edcc01
KR
36062009-08-23 Ken Raeburn <raeburn@raeburn.org>
3607
3608 * Makefile.in (emacs${EXEEXT}) [CANNOT_DUMP]: Set EMACSLOADPATH
3609 before invoking the newly build emacs to check for load-path
3610 shadowing.
3611
7763401b
GM
36122009-08-22 Glenn Morris <rgm@gnu.org>
3613
3614 * Makefile.in (bootstrap_exe): New variable.
3615 (.el.elc, ${lispsource}loaddefs.el, bootstrap-emacs${EXEEXT}):
3616 Use ${bootstrap_exe}.
3617
729eadda
EZ
36182009-08-22 Eli Zaretskii <eliz@gnu.org>
3619
3620 * coding.h (encode_coding_string): Don't encode unibyte strings.
3621 (Bug#4047)
3622
eb4c6ace
MA
36232009-08-22 Michael Albinus <michael.albinus@gmx.de>
3624
3625 * config.in (HAVE_DBUS_WATCH_GET_UNIX_FD): Add.
3626
3627 * dbusbind.c (XD_WITH_DBUS_WATCH_GET_UNIX_FD): Remove. It was
3628 intended as hotfix only.
3629 (xd_add_watch, xd_remove_watch): Use HAVE_DBUS_WATCH_GET_UNIX_FD.
3630
36e34d1b
AR
36312009-08-21 Adrian Robert <Adrian.B.Robert@gmail.com>
3632
3633 * nsterm.m (ns_get_color): Update documentation properly for last
3634 change, and clean up loose ends in the code left by it. Fix
3635 longstanding bug with 16-bit hex parsing, and add support for
3636 yet another X11 format (rgb:r/g/b) for compatibility.
3637 * nsfns.m (EmacsDialogPanel-runDialogAt): Add declaration of
3638 timer_check() to avoid crash on Leopard/PPC. Bug #2154.
3639
f983eb8a
SM
36402009-08-21 Stefan Monnier <monnier@iro.umontreal.ca>
3641
3642 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 500 for js.el.
3643
3f56d3c6
MA
36442009-08-20 Michael Albinus <michael.albinus@gmx.de>
3645
3646 * dbusbind.c (XD_WITH_DBUS_WATCH_GET_UNIX_FD): New macro.
3647 (xd_add_watch, xd_remove_watch): Use it. Print debug messages.
3648 (xd_initialize, xd_pending_messages): Check, whether
3649 $DBUS_SESSION_BUS_ADDRESS is set.
3650
fb641d68
YM
36512009-08-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3652
3653 * nsfns.m (Fxw_color_values): Return 3-element list. Doc fix.
3654
3655 * nsterm.m (ns_get_color): Remove incompatible color formats again.
3656
cf59a374
GM
36572009-08-20 Glenn Morris <rgm@gnu.org>
3658
3659 * emacs.c (system-type): Doc fix.
3660
1373f3be
SM
36612009-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
3662
3663 * keyboard.c (syms_of_keyboard): Default to 5 buttons, which should be
3664 enough for the most common situations. Avoid SET_SYMBOL_VALUE.
3665
058ed861
MA
36662009-08-18 Michael Albinus <michael.albinus@gmx.de>
3667
1373f3be
SM
3668 * dbusbind.c (xd_add_watch, xd_remove_watch, Fdbus_init_bus):
3669 New functions.
058ed861
MA
3670 (xd_initialize): Revert change from 2009-08-16.
3671
563a866e 36722009-08-18 Kenichi Handa <handa@m17n.org>
5fc05db0
KH
3673
3674 * fontset.c (Ffontset_font): If a nil element is found in a
563a866e 3675 font-group vector, return nil.
5fc05db0 3676
e42bdf01
CY
36772009-08-17 Chong Yidong <cyd@stupidchicken.com>
3678
3679 * process.c (status_notify): Don't perform redisplay.
3680 (Fdelete_process, list_processes_1, process_send_signal):
3681 Expliticly perform redisplay.
3682 (wait_reading_process_output): Always check process status, but
3683 don't perform redisplay unless DO_DISPLAY is non-zero (Bug#2930).
3684
4230ab74
KR
36852009-08-17 Ken Raeburn <raeburn@raeburn.org>
3686
1373f3be 3687 * lisp.h (XFLOAT_DATA): Produce an rvalue by adding 0 to the value.
f601cdf3
KR
3688 (XFLOAT_INIT): New macro for storing a float value.
3689 * alloc.c (make_float, make_pure_float): Use XFLOAT_INIT.
3690 * fns.c (sxhash): Copy out the value of a float in order to
3691 examine its bytes.
3692 * dbusbind.c (xd_append_arg): Likewise.
3693
4230ab74
KR
3694 * emacs.c (main): Don't call syms_of_data twice.
3695
a0645cdd
MA
36962009-08-16 Michael Albinus <michael.albinus@gmx.de>
3697
3698 * dbusbind.c (xd_initialize): Add connection file descriptor to
3699 input_wait_mask, in order to let select() detect, whether a new
3700 message has been arrived.
ca4f31ea 3701 (Fdbus_call_method_asynchronously): Allow nil HANDLER.
a0645cdd 3702
485db0ba
MA
37032009-08-15 Michael Albinus <michael.albinus@gmx.de>
3704
1373f3be
SM
3705 * dbusbind.c (xd_get_dispatch_status, xd_pending_messages):
3706 New functions.
485db0ba
MA
3707
3708 * lisp.h (xd_pending_messages): Declare.
3709
3710 * keyboard.c (readable_events): Call xd_pending_messages.
3711
b5b98ff4
CY
37122009-08-15 Chong Yidong <cyd@stupidchicken.com>
3713
1373f3be 3714 * eval.c (Fcalled_interactively_p, Finteractive_p): Doc fix (Bug#3936).
84b17ab0 3715
f8354c6e
CY
3716 * xdisp.c (pop_it): Don't pop into a display vector (Bug#4131).
3717
b5b98ff4
CY
3718 * buffer.c (set_buffer_internal_1)
3719 (swap_out_buffer_local_variables): Check for unbound local
3720 variables (Bug#4138).
3721
8b9fc636
EZ
37222009-08-14 Eli Zaretskii <eliz@gnu.org>
3723
3724 * process.c (create_pty): Fix last change.
3725
ce959360
CY
37262009-08-13 Chong Yidong <cyd@stupidchicken.com>
3727
3728 * image.c (xbm_read_bitmap_data): New arg inhibit_image_error.
3729 (xbm_load_image): Caller changed.
64b807c9 3730 (xbm_file_p): Avoid signalling an image_error (Bug#4107).
ce959360 3731
c7baf7e9
NR
37322009-08-13 Nick Roberts <nickrob@snap.net.nz>
3733
3734 * process.c (create_pty): New function.
3735 (Fstart_process): Use it to allow Emacs to just associate a pty
3736 with the buffer. See associated change in gdb-mi.el.
3737 (list_processes_1): Deal with no program name.
3738 (start_process_unwind): Use pid == -2 to mean no process.
3739
1ac9108a
SM
37402009-08-12 Stefan Monnier <monnier@iro.umontreal.ca>
3741
3742 * cmds.c (nonundocount): New global variable.
3743 (keys_of_cmds): Initialize it.
3744 (Fself_insert_command): Use it to combine upto 20 sequential chars
3745 into a single undo entry, just like the Qself_insert_command code in
3746 keyboard.c does.
3747 Call frame_make_pointer_invisible, also like the Qself_insert_command
3748 code in keyboard.c does.
3749 * keyboard.c (command_loop_1): Use the new global nonundocount rather
3750 than its own local replacement for it.
3751
e267324c
KR
37522009-08-10 Ken Raeburn <raeburn@raeburn.org>
3753
1ac9108a 3754 * fns.c (concat): Don't re-set string length to its current value.
77437343 3755
1ac9108a
SM
3756 * coding.h (decode_coding_string, encode_coding_string):
3757 Use SBYTES macro.
f0bed503 3758
1ac9108a 3759 * doprnt.c (doprnt_lisp): Delete unused function.
e267324c
KR
3760 (doprnt): Merge with doprnt1, discarding lispstrings code.
3761 * lisp.h (doprnt_lisp): Don't declare.
3762
416e006d
JL
37632009-08-07 Juri Linkov <juri@jurta.org>
3764
3765 * puresize.h (BASE_PURESIZE): Increase to 1270000.
3766
6f7d5780
DN
37672009-08-07 Dan Nicolaescu <dann@ics.uci.edu>
3768
3769 * print.c (syms_of_print): Undo previous change.
3770
f19a0f5b
TZ
37712009-08-05 Teodor Zlatanov <tzz@lifelogs.com>
3772
3773 * lread.c (read1, syms_of_lread): Read hashtables back from the
3774 readable format.
3775
3776 * print.c (print_preprocess, print_object): Print hashtables fully
3777 and readably.
3778 (syms_of_print): Provide 'hashtable-print-readable.
3779
b9173dc2
AR
37802009-08-02 Adrian Robert <Adrian.B.Robert@gmail.com>
3781
3782 * nsfont.m (ns_descriptor_to_entity): Handle case when descriptor has
3783 no family set.
3784 (nsfont_open): Handle case when entity has no family.
3785
1586503c
AR
37862009-07-29 Adrian Robert <Adrian.B.Robert@gmail.com>
3787
3788 * nsfont.m (ns_findfonts): Fix 2009-07-24 change to return only one
3789 element, not a list, for match case.
3790
087048cd
KH
37912009-07-28 Kenichi Handa <handa@m17n.org>
3792
3793 * font.c (font_parse_xlfd): Check DPI and AVGWIDTH properties more
3794 rigidly.
3795
3796 * xfont.c (xfont_list_pattern): Don't ignore the return value of
3797 font_parse_xlfd. Check font properties more rigidly.
3798
780c2506
DN
37992009-07-27 Dan Nicolaescu <dann@ics.uci.edu>
3800
31fd7c5c
JB
3801 * s/netbsd.h (SIGNALS_VIA_CHARACTERS): Remove, already defined in
3802 bsd-common.h.
780c2506 3803
a8c0cc18
KH
38042009-07-27 Kenichi Handa <handa@m17n.org>
3805
3806 * xfaces.c (face_with_height): Call font_clear_prop.
3807
4fbe2306
CY
38082009-07-26 Chong Yidong <cyd@stupidchicken.com>
3809
111d9af3
CY
3810 * dispnew.c (init_display): Use Qx, Qw32, and Qns.
3811
3812 * xterm.c (x_term_init): Use Qx.
3813
4fbe2306
CY
3814 * nsfont.m (nsfont_draw): Revert 2009-07-15 change.
3815
1ac9108a 3816 * nsterm.m (ns_maybe_dumpglyphs_background): Revert 2009-07-15 change.
4fbe2306
CY
3817 (ns_get_color): Revert 2009-07-16 change.
3818
beb0b7f9
EZ
38192009-07-25 Eli Zaretskii <eliz@gnu.org>
3820
3821 * lread.c (syms_of_lread) <force_load_messages>: New variable.
1ac9108a 3822 (Fload): Use it to force load messages, even if NOMESSAGES is non-nil.
beb0b7f9 3823
2baf5e76
KR
38242009-07-25 Ken Raeburn <raeburn@raeburn.org>
3825
1ac9108a
SM
3826 * coding.h (decode_coding_string, encode_coding_string):
3827 Use SCHARS macro.
8890e5f5 3828
2baf5e76 3829 * lread.c: Rewrite 2009-07-21 changes.
1ac9108a 3830 (load_depth): Delete.
2baf5e76
KR
3831 (Qload_in_progress): New variable.
3832 (load_unwind): Don't reference load_depth or load_in_progress.
3833 (Fload): Likewise; specbind Qload_in_progress instead.
3834 (init_lread): Don't initialize load_depth.
3835 (syms_of_lread): Initialize and protect Qload_in_progress.
3836
1395c6f5
AR
38372009-07-24 Adrian Robert <Adrian.B.Robert@gmail.com>
3838
3839 * nsfont.m (ns_findfonts): Correctly return fallback in match case.
3840
4e2f36cf
AR
38412009-07-23 Yavor Doganov <yavor@gnu.org>
3842
3843 * nsfont.m (NSFontDescriptor.h): Explicitly include under GNUstep.
3844
5dd9a6f7
AR
38452009-07-23 Adrian Robert <Adrian.B.Robert@gmail.com>
3846
3847 * nsterm.m (EmacsView-keyUp:): Only act when running under Tiger.
7f6ad209
AR
3848 Bugs 3792, 3720, 2402.
3849 (ns_lookup_indexed_color): Check for bad index.
3850 (ns_index_color): Init unused slot to 0.
3851 (ns_dumpglyphs_box_or_relief): Replace useless xassert with an if().
3852 Bug 3714, possibly 3082.
5dd9a6f7 3853
c902b920
JR
38542009-07-22 Jason Rumney <jasonr@gnu.org>
3855
1ac9108a
SM
3856 * w32fns.c (w32_wnd_proc) [WM_IME_STARTCOMPOSITION]:
3857 Position IME window at cursor (Bug#2570).
c902b920
JR
3858 (w32_wnd_proc) [WM_IME_CHAR]: Release context when finished.
3859 (globals_of_w32fns): Dynamically load functions required above.
3860
3861 * w32term.c (w32_draw_window_cursor): Send message to reposition
3862 any IME window.
3863
090101cf
CY
38642009-07-21 Chong Yidong <cyd@stupidchicken.com>
3865
3866 * fileio.c: Revert 2009-07-16 changes.
3867 (Vauto_save_include_big_deletions): New variable.
3868 (Fdo_auto_save): Disable auto-save only if
3869 auto-save-include-big-deletions is nil.
3870
e6583e3d
CY
38712009-07-21 Chong Yidong <cyd@stupidchicken.com>
3872
3873 * xdisp.c (move_it_to): For continued lines ending in a tab, take
3874 the overflowed pixels into account (Bug#3879).
3875
ece435a5
KR
38762009-07-21 Ken Raeburn <raeburn@raeburn.org>
3877
3878 * lread.c (load_depth): New variable.
3879 (Fload, load_unwind, init_lread): Set it to the load recursion
3880 depth; set load_in_progress as a simple boolean based on the
3881 current load_depth. (Bug#3892)
3882
40b2d973
AR
38832009-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
3884
3885 * nsfont.m (ns_has_attribute): Remove.
3886 (ns_findfonts, nsfont_open): Use ns_attribute_fvalue() instead.
3887
10be7e0d
JL
38882009-07-18 Juri Linkov <juri@jurta.org>
3889
3890 * process.c (Fset_process_query_on_exit_flag): Mention killing
3891 a buffer in docstring.
3892
fa055055
KH
38932009-07-17 Kenichi Handa <handa@m17n.org>
3894
3895 * casetab.c (shuffle): Fix the logic of setting up the cycle.
3896
042f7b69
YM
38972009-07-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3898
3899 * nsfns.m (Fns_set_alpha): Remove function.
3900 (syms_of_nsfns): Don't defsubr it.
3901
3902 * nsterm.m (ns_get_color): Remove incompatible color formats.
3903 (ns_color_to_lisp): Generate #rrggbb color format string.
3904
4be941e3
RS
39052009-07-16 Richard Stallman <rms@gnu.org>
3906
3907 * fileio.c (Fwrite_region, Fdo_auto_save): Handle save_length = -2.
3908 (Fset_buffer_auto_saved): Handle save_length = -2.
3909
4e6b227d
CY
39102009-07-16 Chong Yidong <cyd@stupidchicken.com>
3911
3912 * xterm.c (Qx_gtk_map_stock): New var.
3913
3914 * gtkutil.c (update_frame_tool_bar): Use Qx_gtk_map_stock instead
3915 of calling intern each time.
3916
a1856973
YM
39172009-07-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3918
3919 * nsfont.m (nsfont_draw): Remove code for stippling, which actually
3920 does tiling.
3921
3922 * nsterm.m (ns_maybe_dumpglyphs_background): Likewise.
3923
497e54d8
KH
39242009-07-14 Kenichi Handa <handa@m17n.org>
3925
72d36834
KH
3926 * font.c (font_vconcat_entity_vectors): New function.
3927 (struct font_sort_data): New member font_driver_preference.
3928 (font_compare): Check font_driver_preference.
3929 (font_sort_entities): The format of the first argument changed.
3930 (font_delete_unmatched): Likewise.
3931 (font_list_entities): The return type changed.
3932 (font_select_entity): The format of the second argument changed.
1ac9108a
SM
3933 (font_find_for_lface): Adjuste for the above changes.
3934 Don't suppress the checking of C even if the repertory supports it.
3935 (Flist_fonts): Adjust for the above changes.
72d36834 3936
1ac9108a
SM
3937 * ftfont.c (ftfont_spec_pattern): New arg langname. Change caller.
3938 (ftfont_list): Adjust for the change of ftfont_spec_pattern.
497e54d8
KH
3939 Reject a font who has adstyle property that is different from a
3940 langname derived from registry property.
1ac9108a 3941 (ftfont_match): Adjust for the change of ftfont_spec_pattern.
497e54d8 3942
b6046155
EZ
39432009-07-13 Eli Zaretskii <eliz@gnu.org>
3944
3945 * dired.c (directory_files_internal) [WINDOWSNT]: Don't make a
3946 local copy of dirfilename.
3947
fb6b6049
KH
39482009-07-13 Kenichi Handa <handa@m17n.org>
3949
e2402a5e
KH
3950 * chartab.c (sub_char_table_ref_and_range): Fix the range check
3951 against max_char.
3952
fb6b6049
KH
3953 * cmds.c (internal_self_insert): Check sym by SYMBOLP before
3954 calling XSYMBOL (sym).
3955
65156807
EZ
39562009-07-11 Eli Zaretskii <eliz@gnu.org>
3957
1ac9108a
SM
3958 * dired.c (directory_files_internal_w32_unwind) [WINDOWSNT]:
3959 New function.
3960 (directory_files_internal) [WINDOWSNT]:
3961 Bind w32-get-true-file-attributes to either t or nil, depending whether
65156807
EZ
3962 the filesystem of the directory is fast or slow.
3963
3964 * w32.c (logon_network_drive): Don't assume PATH is an absolute
3965 file name.
3966 (is_slow_fs): New function.
3967 (stat): Use it to determine whether to issue more system calls to
3968 get accurate file attributes, when w32-get-true-file-attributes is
3969 `local'.
3970
e0ab5fcf
JD
39712009-07-10 Jan Djärv <jan.h.d@swipnet.se>
3972
3973 * xfns.c (Fx_select_font): Remember last font selected in
31fd7c5c 3974 x_last_font_name and use that the next time. Also try the frame
e0ab5fcf
JD
3975 parameter font-parameter as default to the font dialog.
3976
784ceded
KH
39772009-07-10 Kenichi Handa <handa@m17n.org>
3978
3979 * xftfont.c (xftfont_open): Fix typo: FC_RGBA->FC_HINT_STYLE.
3980
fb8edc0b
EZ
39812009-07-09 Eli Zaretskii <eliz@gnu.org>
3982
1ac9108a 3983 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
017dab84 3984
fb8edc0b
EZ
3985 * w32.c (stat): Treat UNC file names as residing on remote
3986 drives. (Bug#3542)
3987
635c75b1
KH
39882009-07-09 Kenichi Handa <handa@m17n.org>
3989
3990 * fontset.c (fontset_find_font): Fix previous change.
3991
c1d5ce94
MA
39922009-07-08 Michael Albinus <michael.albinus@gmx.de>
3993
3994 * dbusbind.c (xd_initialize, Fdbus_call_method, xd_read_message)
3995 (Fdbus_register_signal, Fdbus_register_method): Cleanup memory of
3996 error flag.
3997
edb61b39
KH
39982009-07-08 Kenichi Handa <handa@m17n.org>
3999
374bf7e4
KH
4000 * fontset.c (fontset_find_font): Fix the logic of handling
4001 charset_matched.
4002 (font_for_char): Delete unused var.
4003 (generate_ascii_font_name): Delete it.
4004
edb61b39
KH
4005 * coding.h (JIS_TO_SJIS2): Fix the code range check.
4006
4007 * coding.c (detect_coding_sjis): Handle shift_jis-2004 correctly.
4008 (encode_coding_sjis): Fix the code range check.
4009
0f3f018c
CY
40102009-07-07 Chong Yidong <cyd@stupidchicken.com>
4011
4012 * fileio.c (Fsubstitute_in_file_name, Ffile_name_directory)
4013 (Fexpand_file_name): Copy string data properly (Bug#3772).
4014
fcaf6f3a
JD
40152009-07-07 Jan Djärv <jan.h.d@swipnet.se>
4016
4017 * xterm.c (handle_one_xevent): Only call x_check_fullscreen on the
4018 first MapNotify.
4019
6809ca75
KH
40202009-07-07 Kenichi Handa <handa@m17n.org>
4021
4022 * character.h (unibyte_has_multibyte_table): Delete extern.
4023 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): Delete it.
4024
4025 * charset.c (Fset_charset_priority): Update charset_unibyte.
4026 (syms_of_charset): Initialize charset_unibyte.
4027
4028 * character.c (unibyte_has_multibyte_table): Delete it.
4029 (multibyte_char_to_unibyte): Use CHAR_TO_BYTE8 instead of checking
4030 charset_unibyte.
4031 (multibyte_char_to_unibyte_safe): Likewise.
4032 (Funibyte_char_to_multibyte): Don't check charset_unibyte.
4033
1ac9108a 4034 * xdisp.c (get_next_display_element): Decode it->c by charset_unibyte.
6809ca75
KH
4035 (x_produce_glyphs): Likewise.
4036
4037 * .gdbinit (xcharset): Fix the treating $arg0.
4038
ad9e2d54
EZ
40392009-07-04 Eli Zaretskii <eliz@gnu.org>
4040
4041 Emulation of `getloadavg' on MS-Windows.
50426a04 4042 * w32.c: Include float.h.
ad9e2d54
EZ
4043 (g_b_init_get_native_system_info, g_b_init_get_system_times)
4044 (GetNativeSystemInfo_Proc, GetSystemTimes_Proc): Declare.
4045 (get_native_system_info, get_system_times): New functions.
4046 (buf_next, buf_prev, sample_system_load, getavg): New subroutines.
4047 (getloadavg): Rewrite using GetSystemTimes and GetNativeSystemInfo.
4048 (globals_of_w32): Initialize g_b_init_get_native_system_info,
4049 g_b_init_get_system_times, and num_of_processors.
4050
0a3472c7
JR
40512009-07-03 Jason Rumney <jasonr@gnu.org>
4052
4053 * w32term.c (w32_initialize): Use standard types.
4054
80904120
EZ
40552009-07-03 Eli Zaretskii <eliz@gnu.org>
4056
4057 * dired.c (Ffile_attributes): Decode user and group names by the
4058 locale's encoding. (Bug#3443)
4059
6978862d
DN
40602009-07-03 Dan Nicolaescu <dann@ics.uci.edu>
4061
f8d23104
DN
4062 * sysdep.c (sys_suspend): Remove USG_JOBCTRL #ifdef, unused.
4063 (mkdir): Remove MKDIR_PROTOTYPE #ifdef, unused.
4064
4065 * callproc.c (child_setup): Use #else instead of a separate #ifdef.
4066
4067 * term.c (init_tty): Remove spurious #ifdef.
4068
6978862d
DN
4069 * m/mips.h: Mention this file is also used for netbsd.
4070 * m/pmax.h: Remove file.
4071
e044e4fc
JD
40722009-07-03 Jan Djärv <jan.h.d@swipnet.se>
4073
4074 * xterm.h (struct x_display_info): Add invisible_cursor.
4075 (struct x_output): Add current_cursor.
4076
4077 * xterm.c (XTtoggle_invisible_pointer): New function.
4078 (x_define_frame_cursor): Don't define cursor if invisible or the
4079 same as before. Set current_cursor.
4080 (x_create_terminal): Set toggle_invisible_pointer_hook.
4081
4082 * xfns.c (make_invisible_cursor): New function.
4083 (x_set_mouse_color): Call make_invisible_cursor.
4084 Set current_cursor.
4085 (x_window): Set current_cursor.
4086
4087 * termhooks.h (struct terminal): Add toggle_invisible_pointer_hook.
4088
4089 * keyboard.c (command_loop_1): Call frame_make_pointer_invisible after
4090 inserting a character.
4091 (read_avail_input): Call frame_make_pointer_visible.
4092
4093 * frame.c (Vmake_pointer_invisible): New variable.
1ac9108a
SM
4094 (frame_make_pointer_invisible, frame_make_pointer_visible):
4095 New functions.
e044e4fc
JD
4096 (syms_of_frame): DEFVAR make-pointer-invisible, initialize to Qt.
4097
4098 * frame.h: Declare frame_make_pointer_invisible and
4099 frame_make_pointer_visible.
4100 (struct frame): Add pointer_invisible.
4101
574c8efa
JD
41022009-07-02 Jan Djärv <jan.h.d@swipnet.se>
4103
7b507248
JD
4104 * gtkutil.c (xg_frame_set_char_size): Do set width/height if the
4105 frame isn't visible.
4106 (xg_frame_resized): If width/height is -1, get size of window
4107 from X server.
4108
4109 * xterm.c (handle_one_xevent): Call xg_frame_resized for USE_GTK
4110 for MapNotify.
4111
835bdaa7 4112 * gtkutil.c (xg_frame_set_char_size): Do not set pixel width/height
31fd7c5c 4113 here or call change_frame_size. Just call flush_and_sync.
1ac9108a 4114 (flush_and_sync): Reintroduce.
574c8efa 4115
3f1c6666 41162009-07-01 Jan Djärv <jan.h.d@swipnet.se>
69b16610 4117
31fd7c5c 4118 * xterm.h (struct x_display_info): Add Xatom_net_wm_state_sticky.
acd51077
JD
4119
4120 * xterm.c (x_handle_net_wm_state): Also look for sticky.
4121 (x_term_init): Initialize Xatom_net_wm_state_sticky.
4122
4123 * frame.h: Declare Qsticky.
4124
cad9ef74
JD
4125 * w32fns.c (w32_frame_parm_handlers): Set 0 for sticky.
4126
4127 * nsfns.m (ns_frame_parm_handlers): Ditto.
4128
4129 * frame.c: Declare Qsticky.
4130 (frame_parms): Add sticky.
4131
4132 * xfns.c (x_frame_parm_handlers): Let x_set_sticky handle sticky.
4133
4134 * xterm.h: Declare x_set_sticky.
4135
4136 * xterm.c (x_set_sticky): New function.
4137
69b16610
JD
4138 * gtkutil.c (xg_tool_bar_proxy_help_callback): New function.
4139 (xg_tool_bar_menu_proxy): Attach enter/leave events to
4140 xg_tool_bar_proxy_help_callback.
3f1c6666
JD
4141
4142 * emacs.c (USAGE3, standard_args): Add -mm and --maximized.
4143
4144 * frame.c: Qmaximized is new.
4145 (x_set_frame_parameters): Do not handle fullscreen specially.
4146 Only set width and height if explicitly set.
4147 (x_set_fullscreen): Handle Qmaximized.
4148 (x_set_font, x_figure_window_size): Do not handle fullscreen specially.
4149 (syms_of_frame): Initialize Qmaximized.
4150
1ac9108a
SM
4151 * frame.h (fullscreen_type): Add FULLSCREEN_MAXIMIZED.
4152 Declare Qfullwidth, Qfullheight, Qfullboth, Qmaximized.
3f1c6666
JD
4153
4154 * xterm.c (handle_one_xevent): Remove call to x_check_fullscreen
31fd7c5c
JB
4155 for Expose event. Add call to x_check_fullscreen for MapNotify event.
4156 Remove all code w.r.t. fullscreen from ConfigureNotify event. Do not
3f1c6666
JD
4157 set gravity to NorthWestGravity when USE_GTK.
4158 (set_wm_state): New function.
31fd7c5c 4159 (do_ewmh_fullscreen): Use set_wm_state. Also handle FULLSCREEN_MAXIMIZED.
3f1c6666
JD
4160 (x_handle_net_wm_state): Handle FULLSCREEN_MAXIMIZED.
4161 (x_check_fullscreen): Simplify so we only handle EMWH type of fullscreen
31fd7c5c 4162 or the case when no window manager is running. That means remove calls
3f1c6666
JD
4163 to x_real_positions and x_fullscreen_adjust.
4164
4165 * gtkutil.c (flush_and_sync, x_wm_size_hint_off): Remove.
4166 (xg_frame_set_char_size): Remove calls to x_wm_size_hint_off and
4167 flush_and_sync.
4168 (xg_height_changed): New function.
4169 (xg_create_frame_widgets): Remove call to gtk_widget_set_size_request
1ac9108a
SM
4170 and gtk_window_set_policy. Set frame gravity after parsing the
4171 geometry string.
3f1c6666
JD
4172 (xg_update_frame_menubar, free_frame_menubar)
4173 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
4174 (update_frame_tool_bar, free_frame_tool_bar): Call xg_height_changed.
4175 Remove calls to xg_frame_set_char_size.
4176
fd503d99
KH
41772009-07-01 Kenichi Handa <handa@m17n.org>
4178
4179 * keyboard.c (decode_keyboard_code): New function.
4180 (tty_read_avail_input): Decode the input bytes if necessary.
4181
1ac9108a
SM
4182 * coding.c (setup_coding_system):
4183 Initialize coding->carryover_bytes to 0.
fd503d99
KH
4184 (Fset_keyboard_coding_system_internal): If CODING-SYSTEM is nil,
4185 use Qno_conversion.
4186
24ed93fb
YM
41872009-07-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4188
4189 * Makefile.in (SOME_MACHINE_LISP): Add ../lisp/term/common-win.elc.
4190
99061dfc
CY
41912009-06-30 Chong Yidong <cyd@stupidchicken.com>
4192
1ac9108a 4193 * xftfont.c (xftfont_open): Avoid passing NULL argument to XftLockFace.
99061dfc 4194
ff90fbde
JR
41952009-06-30 Jason Rumney <jasonr@gnu.org>
4196
4197 * w32term.c (w32_initialize): Use GetModuleHandle for library that
4198 is already loaded.
4199 Set user model ID if supported (bug#1849).
4200
5f445726
JM
42012009-06-29 Jim Meyering <meyering@redhat.com>
4202
4203 Remove useless if-before-xfree test.
4204 * nsfont.m (nsfont_close): Remove useless test.
4205 * term.c (delete_tty): Likewise.
4206 * w32.c (system_process_attributes): Likewise.
4207 * w32font.c (w32font_close): Likewise.
4208 * xfaces.c (x_free_gc): Likewise.
4209 * xselect.c (buffer): Likewise.
4210
b9607587
AS
42112009-06-28 Andreas Schwab <schwab@linux-m68k.org>
4212
4213 * process.c (send_process): Keep decoded string in a local
4214 variable and protect it from GC. (Bug#3521)
4215
89ba96f4
EZ
42162009-06-28 Eli Zaretskii <eliz@gnu.org>
4217
4218 * term.c (create_tty_output) [MSDOS]: #ifdef away.
4219 (tty_free_frame_resources) [MSDOS]: Add a DOS-specific version.
4220
098a1589
CY
42212009-06-28 Chong Yidong <cyd@stupidchicken.com>
4222
485422be
CY
4223 * xdisp.c (start_display, handle_face_prop)
4224 (move_it_vertically_backward, cursor_row_fully_visible_p)
1ac9108a
SM
4225 (redisplay_window, try_window_id, produce_image_glyph):
4226 Delete some #ifdef-ed out code chunks that are now obsolete.
485422be 4227
098a1589
CY
4228 * xterm.c (x_update_window_begin, x_new_focus_frame)
4229 (x_scroll_bar_handle_click, handle_one_xevent)
4230 (handle_one_xevent, XTread_socket, x_focus_on_frame)
4231 (x_make_frame_visible, x_make_frame_invisible)
4232 (x_wm_set_icon_pixmap, x_initialize): Delete some #ifdef-ed out
4233 code chunks that are now obsolete.
4234
78c38319
MA
42352009-06-28 Michael Albinus <michael.albinus@gmx.de>
4236
4237 * dbusbind.c (XD_SYMBOL_TO_DBUS_TYPE): Convert macro into function
4238 xd_symbol_to_dbus_type. With Solaris 2.11, it was said to compile
4239 for hours, when optimzation is enabled.
4240 (xd_signature, xd_append_arg, xd_retrieve_arg, xd_initialize)
4241 (xd_read_message): Make them static.
4242
4189ed40
CY
42432009-06-27 Chuck Blake <cblake@pdos.csail.mit.edu> (tiny change)
4244
4245 * term.c (turn_on_face): Allow simultaneously bold and dim
4246 terminal faces (Bug#3530).
4247
cd9b5e16
CY
42482009-06-27 Chong Yidong <cyd@stupidchicken.com>
4249
4e23bedb
CY
4250 * frame.c (x_get_arg): Check if dpyinfo is non-NULL.
4251
cd9b5e16
CY
4252 * xdisp.c (mouse_face_from_buffer_pos): Fix detection of
4253 truncation glyphs (Bug#3686).
4254
07cc3c35
GM
42552009-06-27 Glenn Morris <rgm@gnu.org>
4256
4257 * m/pmax.h: Restore file, with only netbsd portions.
4258
31fd7c5c 42592009-06-26 David Reitter <david.reitter@gmail.com>
25c5550f 4260
cd9b5e16 4261 * nsterm.m (keydown): Avoid infinite loop.
25c5550f 4262
42d4a64f
KH
42632009-06-26 Peter Jolly <peter@jollys.org> (tiny change)
4264
4265 * ftfont.c (get_adstyle_property): Call font_intern_prop with 1 as
4266 the arg FORCE_SYMBOL.
4267
930fe55b 42682009-06-25 Kenichi Handa <handa@m17n.org>
a71ccf3a
KH
4269
4270 * fontset.c (fontset_find_font): When a usable rfont_def is found
4271 in a fallback font-group, make it the first element of the group.
4272
57ebc3fd
CY
42732009-06-24 Chong Yidong <cyd@stupidchicken.com>
4274
4275 * emacs-icon.h: Always define gnu_xpm_bits on GTK (bug#3671).
4276
f084f942
KH
42772009-06-24 Kenichi Handa <handa@m17n.org>
4278
4279 * fontset.c (fontset_get_font_group): Return 0 if no font-group is
4280 set for C.
4281 (fontset_font): Record the availability of a font for C both in
4282 the realized fontsets of the current one and the default one.
4283
2f686c87
DN
42842009-06-23 Dan Nicolaescu <dann@ics.uci.edu>
4285
4286 * sysdep.c (child_setup_tty): Remove SIGNALS_VIA_CHARACTERS
4287 conditional, it is always defined on AIX.
4288
666e158e
MB
42892009-06-23 Miles Bader <miles@gnu.org>
4290
4291 * window.c (Vrecenter_redisplay): New variable.
4292 (syms_of_window): Initialize it.
4293 (Qtty): New extern declaration.
4294 (Frecenter): Only do redisplay if Vrecenter_redisplay requests it.
4295
c6da7cd2
JM
42962009-06-23 Jim Meyering <meyering@redhat.com>
4297
1ac9108a
SM
4298 * src/ftfont.c (setup_otf_gstring, ftfont_shape_by_flt):
4299 Use xmalloc and xrealloc (not malloc and realloc), so subsequent heap
632c2030 4300 pointer dereferences are guaranteed to be valid.
c6da7cd2 4301
678dca3d
KH
43022009-06-23 Kenichi Handa <handa@m17n.org>
4303
74d75424
KH
4304 * emacs.c (main): Call init_font ().
4305
4306 * font.h (Vfont_log): Extern it.
4307 (FONT_ADD_LOG, FONT_DEFERRED_LOG): New macros.
4308
4309 * font.c (font_sort_entities, font_list_entities)
4310 (font_matching_entity, font_open_entity)
4311 (font_close_object): Change font_add_log to FONT_ADD_LOG.
4312 (Vfont_log): Delete static.
4313 (font_log_env_checked): Delete this variable.
4314 (font_add_log): Don't check font_log_env_checked.
4315 (font_deferred_log): Check Vfont_log.
4316 (init_font): New function.
4317
678dca3d
KH
4318 * ftfont.c: Change font_add_log to FONT_ADD_LOG.
4319
4320 * w32font.c: Change font_add_log to FONT_ADD_LOG.
4321
4322 * w32uniscribe.c: Change font_add_log to FONT_ADD_LOG.
4323
4324 * xfont.c: Change font_add_log to FONT_ADD_LOG.
4325
4326 * fontset.c (fontset_font): Call FONT_DEFERRED_LOG.
4327 (face_for_char): Don't call font_deferred_log here.
4328 (font_for_char): Likewise.
4329
8a668709
CY
43302009-06-22 Chong Yidong <cyd@stupidchicken.com>
4331
9a01ee33
CY
4332 * w32term.c (x_draw_glyph_string): Use the glyph string's width
4333 rather than its background_width for drawing the overline and
4334 underline (Bug#489).
4335
4336 * xterm.c (x_draw_glyph_string): Use the glyph string's width
4337 rather than its background_width for drawing the overline and
4338 underline (Bug#489).
ec7c9926
CY
4339 (xg_default_icon_file): New variable.
4340 (syms_of_xterm): Initialize it to the Emacs SVG icon file.
4341 (x_bitmap_icon): Under GTK, use xg_default_icon_file.
9a01ee33 4342
8a668709
CY
4343 * xdisp.c (Qbefore_string, Qafter_string): Add externs.
4344 (load_overlay_strings): Remove externs.
4345 (fast_find_position): Function deleted.
4346 (mouse_face_from_buffer_pos): New function, based on
4347 fast_find_position. Correctly handle before-strings,
4348 display-strings, and after-strings (Bug#1220).
4349 (note_mouse_highlight): Use mouse_face_from_buffer_pos.
4350
4d4c02d8
CY
43512009-06-21 Chong Yidong <cyd@stupidchicken.com>
4352
1ac9108a 4353 * xdisp.c (IT_DISPLAYING_WHITESPACE): Define for !HAVE_WINDOW_SYSTEM.
4d4c02d8
CY
4354 (move_it_in_display_line_to, move_it_in_display_line_to)
4355 (display_line): Remove #ifdef HAVE_WINDOW_SYSTEM.
4356
70243478
CY
43572009-06-21 Chong Yidong <cyd@stupidchicken.com>
4358
4359 * Branch for 23.1.
4360
13087e59
JR
43612009-06-21 Jason Rumney <jasonr@gnu.org>
4362
4363 * w32term.c (keyboard_codepage): New static variable.
4364 (w32_read_socket) [WM_INPUTLANGCHANGE]: Update it.
4365 (w32_read_socket) [WM_CHAR]: Use it to decode character
4366 input (bug#3237).
4367 (w32_initialize): Initialize it.
4368 (codepage_for_locale): New function.
4369
4735b74e
KR
43702009-06-20 Ken Raeburn <raeburn@raeburn.org>
4371
4372 * process.c (status_message): Pass Faset index argument as a lisp
4373 object, so as to work with USE_LISP_UNION_TYPE.
4374
0e727afa
YM
43752009-06-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4376
4377 * coding.c (Ffind_coding_systems_region_internal):
4378 Cache checked characters.
4379
cf299835
KH
43802009-06-18 Kenichi Handa <handa@m17n.org>
4381
1ac9108a 4382 * coding.c (decode_coding_iso_2022): Check MSB of bytes more rigidly.
cf299835 4383
90f20d94
AS
43842009-06-18 Andreas Schwab <aschwab@redhat.com>
4385
4386 * xdisp.c (redisplay_internal): Check that the frame is still
4387 live after redisplay of its windows.
4388 (redisplay_windows): Check that the window is still live.
4389
7f1faf1c
KH
43902009-06-17 Andreas Schwab <schwab@linux-m68k.org>
4391
4392 * coding.c (detect_coding_utf_16): Fix previous change.
4393
cc13543e
KH
43942009-06-16 Kenichi Handa <handa@m17n.org>
4395
4396 * coding.c (detect_coding_utf_16): Fix the logic of rejecting
4397 UTF-16 by checking the dispersion of Eth and Oth bytes.
4398
977b85f4
AS
43992009-06-15 Andreas Schwab <schwab@linux-m68k.org>
4400
4401 * coding.c (detect_coding_utf_16): Fix typo counting odd bytes.
4402
66bd43d1
KH
44032009-06-15 Kenichi Handa <handa@m17n.org>
4404
4405 * process.c (status_message): Fix previous change. Be sure to
4406 decode a localized string.
4407
cb5ca9c5
YM
44082009-06-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4409
4410 * xterm.c (x_delete_terminal): Put previous change in #if 0 and
4411 add comment explaining why.
4412
ec7709ba 44132009-06-14 Sidney Markowitz <sidney@sidney.com>
5ee6f629 4414
ec7709ba 4415 * nsmenu.m (EmacsTooltip: setText): Set height of tooltip.
5ee6f629 4416
4b7f335c
AR
44172009-06-14 Adrian Robert <Adrian.B.Robert@gmail.com>
4418
4419 * nsfont.m (ns_attribute_value): Remove.
4420 (ns_attribute_fvalue): Incorporate code from ns_attribute_value.
4421 (ns_has_attribute): Shrink the normal range.
4422 (ns_findfonts): Don't worry about requested spec in determining
4423 need for synthItal.
e41820ee 4424 (ns_get_covering_families): Retain scriptToFamilies.
4b7f335c 4425
73b26103
SZ
44262009-06-14 Seiji Zenitani <zenitani@mac.com>
4427
4428 * xdisp.c [USE_MAC_TOOLBAR]: Remove obsolete definition for Mac Carbon.
4429
5753e4da
KH
44302009-06-11 Kenichi Handa <handa@m17n.org>
4431
4432 * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
4433 overhang for the static composition case.
4434
3561b671
KH
44352009-06-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4436
5753e4da
KH
4437 * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
4438 overhang for the automatic composition case.
4439
3561b671
KH
4440 * xterm.c (x_compute_glyph_string_overhangs): Handle the automatic
4441 composition case.
4442
852bbd41
CY
44432009-06-10 Chong Yidong <cyd@stupidchicken.com>
4444
4445 * xdisp.c (get_next_display_element): When handling wrap-prefix
4446 and line-prefix, treat \n as a control character (bug#3502).
4447
9903d1e6
KH
44482009-06-10 Kenichi Handa <handa@m17n.org>
4449
4450 * font.c (font_parse_family_registry): Fix for one-char foundry.
4451 (font_sort_entities): Initialize prefer_prop[FONT_AVGWIDTH_INDEX].
4452
0bcbaaaa
CY
44532009-06-09 Dmitry Dzhus <dima@sphinx.net.ru> (tiny change)
4454
4455 * process.c (status_message): Fix handling of multibyte signal
4456 string (Bug#3499).
4457
40aa3f13
JM
44582009-06-09 Jim Meyering <meyering@redhat.com>
4459
1f80c7e2
CY
4460 * xfaces.c (Fx_load_color_file): Avoid array bounds error if the
4461 color name is missing.
40aa3f13 4462
72d51285
KH
44632009-06-09 Kenichi Handa <handa@m17n.org>
4464
4465 * charset.c (Fmap_charset_chars): In docstring, state clearly that
4466 FROM-CODE and TO-CODE are codepoints of CHARSET.
4467
c1d04d84
AR
44682009-06-08 Adrian Robert <Adrian.B.Robert@gmail.com>
4469
4470 * nsterm.m (ns_use_system_highlight_color): Drop, unused.
4471
44722009-06-08 Adrian Robert <Adrian.B.Robert@gmail.com>
4473
4474 Changes to support :script/:lang/:otf in NS font driver.
4475 * nsfont.m (nsfont_escape_name, nsfont_unescape_name)
4476 (nsfont_get_family, nsfont_char_width): Rename to ns_ prefix to
4477 indicate not part of font driver interface, and change callers.
4478 (ns_get_family): Remove pointless null check.
4479 (nsfont_spec_to_traits, nsfont_fmember_to_entity): Replace with
4480 ns_spec_to_descriptor, ns_descriptor_to_entity.
4481 (nsfont_trait_distance, nsfont_make_fontset_for_font): Remove.
4482 (ns_attribute_value, ns_attribute_fvalue, ns_has_attribute)
4483 (ns_spec_to_descriptor, ns_descriptor_to_entity)
4484 (ns_charset_covers, ns_lang_to_script, ns_otf_to_script)
4485 (ns_get_req_script, ns_accumulate_script_ranges)
4486 (ns_script_to_charset, ns_get_covering_families, ns_findfonts):
4487 New functions.
4488 (nsfont_list, nsfont_match): Use ns_findfonts.
4489 (nsfont_open): Use font descriptor instead of traits.
4490 (nsfont_draw): Handle "automatic" (lookup-table) compositions.
4491 (dump_glyphstring): Rename to ns_dump_glyphstring.
4492
c7eb9816
AR
4493 * nsterm.h (dump_glyphstring): Rename to ns_dump_glyphstring.
4494
c1d04d84
AR
4495 * nsfns.m (Fns_popup_font_panel): Use shared font manager.
4496
4497 * fontset.c (fontset_from_font): Remove NS-specific code.
4498
ec7709ba 44992009-06-08 Peter Jones <pjones@pmade.com> (tiny change)
c1d04d84
AR
4500
4501 * nsterm.m (ns_draw_window_cursor): Respect cursor_type for
4502 nonactive windows.
4503
31fd7c5c 45042009-06-08 Felix Mueller <felix@enqueue.eu> (tiny change)
c1d04d84 4505
1ac9108a 4506 * nsterm.m (ns_init_paths): Append path separator to INFOPATH variable.
c1d04d84 4507
68852c13 45082009-06-08 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
e7777236
AR
4509
4510 * keyboard.c (kbd_buffer_get_event): Null-check used_mouse_menu.
4511
6756cd1d
CY
45122009-06-07 Chong Yidong <cyd@stupidchicken.com>
4513
4514 * xdisp.c (move_it_in_display_line_to): On text-only terminals,
4515 account for the overflowing of newlines into the last glyph on the
4516 display line (Bug#3482).
4517
28bf482a
DR
45182009-06-05 David Reitter <david.reitter@gmail.com>
4519
ec7709ba
JB
4520 * nsselect.m (Fx_own_selection_internal, Fx_selection_exists_p)
4521 (Fx_selection_owner_p): Rename from Fns_own_selection_internal,
28bf482a
DR
4522 Fns_selection_exists_p, Fns_selection_owner_p.
4523
fdb55376
JR
45242009-06-03 Jason Rumney <jasonr@gnu.org>
4525
4526 * w32fns.c (x_create_tip_frame): Use the uniscribe font backend if
4527 available. (Bug#3379)
4528
05129fbe
KH
45292009-05-29 Kenichi Handa <handa@m17n.org>
4530
1ac9108a
SM
4531 * coding.c (get_translation_table):
4532 Check Venable_character_translation.
05129fbe 4533
ec7709ba 45342009-05-26 David Reitter <david.reitter@gmail.com>
15891144 4535
ec7709ba
JB
4536 * nsterm.m (ns_raise_frame): Only raise frame if visible.
4537 (x_make_frame_visible): Move frame to front rather than calling
15891144 4538 ns_raise_frame().
ec7709ba 4539 (keyDown:): Do not swallow events that aren't re-sent if frame
15891144 4540 isn't key window.
ec7709ba 4541 (drawRect:): Do not set visibility/iconified flags because
15891144
DR
4542 drawRect may be called by NSView even if the frame is hidden.
4543
ec7709ba
JB
4544 * nsfns.m (Fx_create_frame): Follow other ports in
4545 determining visibility; default to t. Ensure async_visible is set.
15891144 4546
21f73755
EZ
45472009-05-23 Eli Zaretskii <eliz@gnu.org>
4548
4549 * dired.c (Ffile_attributes): Doc fix.
4550
34001e41
CY
45512009-05-22 Chong Yidong <cyd@stupidchicken.com>
4552
4553 * m/mips.h [GNU_LINUX]: Don't define DATA_START (Bug#2685).
4554
46306a17
SM
45552009-05-21 Stefan Monnier <monnier@iro.umontreal.ca>
4556
4557 * xfont.c (xfont_list_pattern): Don't initialize xfont_scripts_cache
4558 and xfont_scratch_props.
4559 (syms_of_xfont): Do it here instead.
4560 (xfont_find_ccl_program): Delete, unused.
4561 (xfont_open): Delete unused var `i'.
4562
ef6e0694
KH
45632009-05-21 Kenichi Handa <handa@m17n.org>
4564
4565 * fontset.c (Qlatin): Don't make it static.
4566
46306a17
SM
4567 * xfont.c (xfont_chars_supported, xfont_supported_scripts):
4568 New functions.
ef6e0694
KH
4569 (xfont_scripts_cache, xfont_scratch_props): New variables.
4570 (Qlatin, Vscalable_fonts_allowed): Extern it.
46306a17
SM
4571 (xfont_list_pattern): Argument changed. Callers changed.
4572 Check Vscalable_fonts_allowed. Check the support of a script.
ef6e0694
KH
4573 (xfont_list): Don't reject a font spec with :script property.
4574 (xfont_has_char): Fix setting of encoding.
4575 (syms_of_xfont): Staticpro and initialize xfont_scripts_cache and
4576 xfont_scratch_props.
4577
45782009-05-19 Kenichi Handa <handa@m17n.org>
4579
46306a17 4580 * font.c (font_sort_entities): Rename from font_sort_entites.
ef6e0694
KH
4581 Callers changed.
4582
45832009-05-18 Kenichi Handa <handa@m17n.org>
4584
4585 * font.c (font_find_for_lface): Copy SPEC's FONT_TYPE too.
4586
ac71ced7
SM
45872009-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
4588
4589 * frame.c (do_switch_frame) [NS_IMPL_COCOA]: Don't raise any window.
4590 (delete_frame) [NS_IMPL_COCOA]: Instead, do it here.
4591
1c6d1051
YM
45922009-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4593
4594 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase here.
4595 (x_delete_terminal): Dissociate resource database from display and
4596 then call XrmDestroyDatabase before closing display.
4597
9b9b779c
AR
45982009-05-18 Adrian Robert <Adrian.B.Robert@gmail.com>
4599
4600 * nsterm.m (ns_read_socket): Remove unused variable.
1564e649
AR
4601 * frame.c (do_switch_frame): Under NS_IMPL_COCOA section, check
4602 whether selected frame is viable before raising it (based on patch
4603 by David Reitter), and improve commentary.
4604 * nsfont.m (nsfont_make_fontset_for_font): Avoid a compiler warning.
9b9b779c 4605
cccd42d5
KH
46062009-05-15 Kenichi Handa <handa@m17n.org>
4607
4608 * font.c (Ffont_spec): Check arguments.
4609
337fbd17
CY
46102009-05-14 Chong Yidong <cyd@stupidchicken.com>
4611
4612 * xfaces.c (tty_supports_face_attributes_p): Recognize unspecified
4613 weight when testing attributes (Bug#3282).
4614
47a6002f
JD
46152009-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4616
4617 * gtkutil.c (xg_frame_set_char_size): Set frame pixel width/height to
4618 what we expect to get in the next ConfigureNotify event.
4619
9cb363db
YM
4620 * xftfont.c (xftfont_open): Make sure that Xrender extension is added
4621 before Xft one (Bug#1696).
4622
b9126609
CY
46232009-05-07 David Reitter <david.reitter@gmail.com>
4624
4625 * nsfns.m (Fx_display_planes): Compute bitplanes using
4626 NSBitsPerPixelFromDepth (Bug#3207).
4627
27a69fd9
CY
46282009-05-10 Chong Yidong <cyd@stupidchicken.com>
4629
4630 * editfns.c (Ftranspose_regions): Doc fix (Bug#3248).
4631
00f37552
TTN
46322009-05-10 Ulrich Mueller <ulm@gentoo.org>
4633
4634 * s/gnu-linux.h: Make GCPROs and UNGCPRO no-ops also on SuperH.
4635
2d82a920
DR
46362009-05-07 David Reitter <david.reitter@gmail.com>
4637
ec7709ba
JB
4638 * nsterm.m (ns_dumpglyphs_stretch, ns_dumpglyphs_image):
4639 Respect mouse face background.
2d82a920 4640
46b0d52d
DR
46412009-05-07 David Reitter <david.reitter@gmail.com>
4642
ec7709ba
JB
4643 * nsterm.m (note_mouse_movement, ns_frame_up_to_date):
4644 Mouse movement/highlight: bracket drawing operations
46b0d52d
DR
4645 in ns_update_begin and ns_update_end.
4646
ce1b23bb
SM
46472009-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
4648
5996e1b7
SM
4649 * nsfns.m (ns_get_screen): Rewrite.
4650 Don't presume selected-frame is of type `ns'.
4651
ba98e3a0
SM
4652 * font.c (font_update_drivers): Sanity fallback to avoid disabling
4653 all drivers.
4654
ce1b23bb
SM
4655 * nsterm.m (-windowDidResize:): Avoid inf-loop under GNUStep.
4656
bcda200f
YM
46572009-05-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4658
4659 * keyboard.h (add_user_signal): Fix typo in extern.
4660
4661 * lisp.h (add_user_signal): Remove extern.
4662
4663 * unexelf.c (unexec): Consider a section to precede the .bss section
4664 if its addresses overlap that of .bss.
4665 (unexec) [NS_IMPL_GNUSTEP]: Copy ObjC-related data from old file
4666 instead of dumping process.
4667
864660a2
SM
46682009-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
4669
4670 * keyboard.c (syms_of_keyboard): Staticpro pending_funcalls.
4671
50da4e56
SM
46722009-05-04 Stefan Monnier <monnier@iro.umontreal.ca>
4673
4674 * Makefile.in (ctagsfiles1, ctagsfiles2): Include ObjC files in TAGS.
4675
51520a1a
DN
46762009-05-02 Dan Nicolaescu <dann@ics.uci.edu>
4677
4678 * xterm.c (x_handle_net_wm_state): Move declaration of lval before
4679 any statements.
4680
409ea3a1
AS
46812009-05-02 Andreas Schwab <schwab@linux-m68k.org>
4682
59c4c60f
AS
4683 * process.c (read_process_output): Make sure the current buffer is
4684 always restored.
4685
409ea3a1
AS
4686 * coding.c (record_conversion_result): Don't modify
4687 Vlast_code_conversion_error for successful result.
4688 (alloc_destination): Don't clobber conversion result. (Bug#1650)
4689
56f00ed2
KH
46902009-05-01 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
4691
4692 * charset.c (load_charset): Reformat X==Y==Z to (X==Y)==Z.
896b1cc9 4693 (load_charset_map): Remove unnecessary code.
56f00ed2 4694
4491c9d2
DR
46952009-04-30 David Reitter <david.reitter@gmail.com>
4696
35f5b128 4697 * nsterm.m (convert_ns_to_X_keysym): Define function keys f16
4491c9d2
DR
4698 through f24.
4699
6970f632
CY
47002009-04-30 Chong Yidong <cyd@stupidchicken.com>
4701
4702 * xfaces.c (face_at_buffer_position): New arg base_face_id.
4703
4704 * xdisp.c (handle_face_prop): Pass base_face_id of iterator to
4705 face_at_buffer_position.
4706 (face_before_or_after_it_pos, get_next_display_element)
4707 (note_mouse_highlight): Update face_at_buffer_position call.
4708
4709 * term.c (term_mouse_highlight):
4710 * msdos.c (IT_note_mouse_highlight):
4711 * fontset.c (Finternal_char_font):
35f5b128 4712 * font.c (font_at, font_range): Update face_at_buffer_position call.
6970f632
CY
4713
4714 * dispextern.h (face_at_buffer_position): Update prototype.
4715
0c616f63
KH
47162009-04-30 Kenichi Handa <handa@m17n.org>
4717
35f5b128 4718 * fontset.c (fontset_find_font): Check if rfont_def is Qnil or not.
0c616f63 4719
ad3aaf33
AS
47202009-04-29 Andreas Schwab <schwab@linux-m68k.org>
4721
4722 * callproc.c (Fcall_process): Fix GC protection. Make sure
4723 current buffer is always restored.
4724
c3c963a0
YM
47252009-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4726
4727 * atimer.c (init_atimer): Also clear stopped_atimers.
4728
4729 * keyboard.c (init_keyboard) [POLL_FOR_INPUT]: Reset poll_timer.
4730
7e3386cb
YM
4731 * process.c (create_process): Clean up merger residues of
4732 2008-07-17 change.
4733
91f68422
CY
47342009-04-29 Ulrich Mueller <ulm@gentoo.org>
4735
4736 * lread.c (Vread_circle): New variable.
4737 (read1): Disable recursive read if Vread_circle is nil.
4738
24b34550
KH
47392009-04-29 Kenichi Handa <handa@m17n.org>
4740
4741 * fontset.h (set_default_ascii_font): Delete extern.
4742
4743 * fontset.c (set_default_ascii_font): Delete this unused function.
4744
4745 * frame.c (x_set_font): When ARG is a font-object, check if the
4746 font-object matches with the ASCII font-spec of the frame's
9c358bda 4747 fontset. If not, create a new fontset for the frame. (Bug #3075)
24b34550 4748
77bf07e1
AS
47492009-04-28 Andreas Schwab <schwab@linux-m68k.org>
4750
4751 * fns.c (Flocale_info): Protect vector from GC during decoding.
4752
4753 * process.c (Fstart_process): Protect argv strings from GC during
4754 encoding.
4755
2c55aacf
AS
47562009-04-27 Andreas Schwab <schwab@linux-m68k.org>
4757
4758 * sysdep.c: Include <ctype.h>.
4759
b892d3c9
DR
47602009-04-27 David Reitter <david.reitter@gmail.com>
4761
35f5b128 4762 * nsfont.m (nsfont_open): Remove unused variable shrink.
b892d3c9
DR
4763 Remove commented-out code.
4764
9d0644c4
JB
47652009-04-26 Johan Bockgård <bojohan@gnu.org>
4766
4767 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
4768
b7053016
JR
47692009-04-25 Jason Rumney <jasonr@gnu.org>
4770
4771 * w32font.c (clear_cached_metrics): Remove, unused since 2008-08-02.
4772
4e8231f3
YM
47732009-04-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4774
4775 * fringe.c (init_fringe_bitmap) [HAVE_X_WINDOWS && WORDS_BIG_ENDIAN]:
4776 Swap bytes in short integer if fringe bitmap width > 8.
4777
493dcf2c
KH
47782009-04-23 Kenichi Handa <handa@m17n.org>
4779
4780 * xfaces.c (Fx_list_fonts): If a font size is specified in
4781 PATTERN, set it in returned scalable fonts.
4782
401e9e57
CY
47832009-04-22 Chong Yidong <cyd@stupidchicken.com>
4784
708e05dc
CY
4785 * keyboard.c (Fset_input_meta_mode): Doc fix.
4786
4787 * dispnew.c (Fsend_string_to_terminal): Doc fix.
4788
1ac9108a 4789 * data.c (Fterminal_local_value, Fset_terminal_local_value): Doc fixes.
708e05dc
CY
4790
4791 * coding.c (Fterminal_coding_system): Doc fix.
4792
4793 * xfns.c (Fx_display_grayscale_p, Fx_display_pixel_width)
4794 (Fx_display_pixel_height, Fx_display_planes)
4795 (Fx_display_color_cells, Fx_server_max_request_size)
4796 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
4797 (Fx_display_mm_height, Fx_display_mm_width)
4798 (Fx_display_backing_store, Fx_display_visual_class)
1ac9108a
SM
4799 (Fx_display_save_under, Fx_close_connection, Fx_synchronize):
4800 Doc fixes, replacing "terminal id" with "terminal object".
708e05dc
CY
4801 (check_x_display_info): Handle terminal objects instead of
4802 terminal ids.
4803
401e9e57
CY
4804 * term.c (Ftty_display_color_p, Ftty_display_color_cells)
4805 (Ftty_type, Fcontrolling_tty_p, Ftty_no_underline, Fsuspend_tty)
1ac9108a
SM
4806 (Fresume_tty, Vsuspend_tty_functions, Vresume_tty_functions):
4807 Doc fixes, replacing "terminal id" with "terminal object".
401e9e57 4808
df80c7f0
KH
48092009-04-21 Kenichi Handa <handa@m17n.org>
4810
5a8f12af 4811 * font.c (font_load_for_lface): Cancel previous change (bug#2994).
c0a6070d 4812 (font_score): Check AVGWIDTH too.
908567ef 4813
df80c7f0
KH
4814 * coding.c (decode_coding_utf_16): Reduce charbuf_end for the
4815 worst case.
1ac9108a
SM
4816 (decode_coding_sjis, decode_coding_big5, decode_coding_charset)
4817 (decode_coding_emacs_mule, decode_coding_iso_2022): Likewise.
df80c7f0 4818
705af33f
JR
48192009-04-19 Jason Rumney <jasonr@gnu.org>
4820
4821 The following changes fix Bug#3005 for wide glyphs on each platform,
b71ac3dd 4822 without reintroducing Bug#1258 for stretch glyphs.
705af33f
JR
4823
4824 * xterm.c (x_draw_bar_cursor): Limit cursor width differently for
4825 BAR_CURSOR and HBAR_CURSOR. Calculate width of HBAR_CURSOR using
4826 get_phys_cursor_geometry.
4827
b71ac3dd 4828 * w32term.c (x_draw_bar_cursor): Limit cursor width differently
705af33f
JR
4829 for BAR_CURSOR and HBAR_CURSOR. Calculate width of HBAR_CURSOR
4830 using get_phys_cursor_geometry.
4831
4832 * nsterm.m (ns_draw_window_cursor): HBAR_CURSOR width already
4833 correctly calculated.
4834
dc2933eb
JD
48352009-04-19 Jan Djärv <jan.h.d@swipnet.se>
4836
1ac9108a
SM
4837 * gtkutil.c (xg_tool_bar_menu_proxy, update_frame_tool_bar):
4838 Use G_CALLBACK instead of GTK_SIGNAL_FUNC which is deprecated.
dc2933eb
JD
4839 (xg_initialize): Use g_type_class_ref instead of gtk_type_class which
4840 is deprecated.
4841
973e7849
AS
48422009-04-18 Andreas Schwab <schwab@linux-m68k.org>
4843
4844 * font.c (font_put_frame_data): Use xfree instead of free.
4845
314d66f4
JB
48462009-04-17 Juanma Barranquero <lekktu@gmail.com>
4847
4848 * w32font.c (Qja, Qko): Remove declarations.
4849 (syms_of_w32font): Don't DEFSYM them.
4850
cf702558
CY
48512009-04-17 Chong Yidong <cyd@stupidchicken.com>
4852
4853 * font.c (Qja, Qko): Move definitions here from ftfont.c.
4854
4855 * font.h (Qja, Qko): Extern them.
4856
4857 * ftfont.c (Qja, Qko): Remove declarations.
4858
4859 * xfont.c (Qja, Qko): Remove declarations.
4860
b50504f5
KH
48612009-04-17 Kenichi Handa <handa@m17n.org>
4862
bde25748
KH
4863 * editfns.c (Ftranslate_region_internal): Use Fconcat to make a
4864 string from a vector to handle Latin-1 characters correctly.
4865
b50504f5
KH
4866 * ftfont.c (ftfont_pattern_entity): Return a newly allocated
4867 entity even if the cache hits.
4868
f4646fff
AS
48692009-04-16 Andreas Schwab <schwab@linux-m68k.org>
4870
4871 * search.c (boyer_moore): Use zero as marker value for a possible
6340c70e 4872 match instead of depending on overflow behavior. (Bug#2844)
f4646fff 4873
e7deaab0
AS
4874 * search.c: Use EMACS_INT for buffer positions. Add prototypes.
4875 * lisp.h: Adjust prototypes.
4876
0a0e7d49
CY
48772009-04-16 Chong Yidong <cyd@stupidchicken.com>
4878
4879 * keyboard.c (adjust_point_for_property): Disable 2009-02-12
4880 change (Bug#3003).
4881
3c908a57
KH
48822009-04-16 Kenichi Handa <handa@m17n.org>
4883
1ac9108a 4884 * xfont.c (xfont_has_char): Special handling of `ja' and `ko' adstyle.
bd0af90d
KH
4885
4886 * xftfont.c (xftfont_has_char): Special handling of `ja' and `ko'
4887 adstyle.
4888
4889 * ftfont.c (Qja, Qko): Don't make them static.
4890 (enum ftfont_cache_for): New enum.
4891 (fc_charset_table): Undo the previous change.
4892 (ftfont_get_latin1_charset): Delete it.
1ac9108a
SM
4893 (ftfont_pattern_entity): Check cache by ftfont_lookup_cache.
4894 Set FONT_SIZE_INDEX of the entity to 0 for a scalable font. For a
bd0af90d
KH
4895 non-scarable font, try to get AVERAGE_WIDTH.
4896 (ftfont_lookup_cache): Argument FOR-FACE is changed to CACHE_FOR.
4897 Change ft_face_cache from a list of a hash-table. Don't check
4898 `ja' and `ko' adstyle here.
4899 (ftfont_get_fc_charset): Call ftfont_lookup_cache with
4900 FTFONT_CACHE_FOR_CHARET.
4901 (ftfont_get_charset): Undo the previous change.
1ac9108a 4902 (ftfont_open): Call ftfont_lookup_cache with FTFONT_CACHE_FOR_FACE.
bd0af90d
KH
4903 (ftfont_close): Likewise.
4904 (ftfont_has_char): Special handling of `ja' and `ko' adstyle.
4905
4906 * font.c (font_sort_entites): Change the meaning of the arg
4907 BEST-ONLY. Don't optimize for VEC of lenght 1.
4908 (font_select_entity): Just return the value of font_sort_entites.
4909
4910 * xfaces.c (merge_face_vectors): Reflect font properties in
4911 to[LFACE_FONT_INDEX] to the other face attributes. Don't call
4912 font_clear_prop if a face attribute doesn't change.
4913
3c908a57
KH
4914 * charset.h (charset_ksc5601): Extern it.
4915
4916 * charset.c (charset_ksc5601): New variable.
4917 (Fdefine_charset_internal): Set charset_ksc5601.
4918 (init_charset_once): Initialize charset_ksc5601 to -1.
4919
d65859c3
DN
49202009-04-15 Dan Nicolaescu <dann@ics.uci.edu>
4921
4922 * fileio.c (history_delete_duplicates): Remove unused declaration.
4923
4924 * callint.c (history_delete_duplicates): New declaration.
4925 (Fcall_interactively): Remove command history duplicates when
4926 history_delete_duplicates is true.
4927
3ba010e5
EZ
49282009-04-14 Eli Zaretskii <eliz@gnu.org>
4929
4930 * buffer.c (syms_of_buffer) <line-spacing>: Doc fix.
4931
06f19b91
KH
49322009-04-14 Kenichi Handa <handa@m17n.org>
4933
4934 * font.c (Ffont_info): Fix docstring. Fix the second element of
4935 the returned value (bug#2949).
4936
2cce8bfc
CY
49372009-04-14 Chong Yidong <cyd@stupidchicken.com>
4938
4939 * xdisp.c (Vwrap_prefix, Vline_prefix): Reflow docstrings.
4940
d156542d
KH
49412009-04-14 Kenichi Handa <handa@m17n.org>
4942
4943 * xfont.c (xfont_has_char): The font has C if C is ASCII and the
4944 encoding charset is ascii_compatible.
4945
4946 * charset.c (Fdefine_charset_internal): Make charset
4947 ascii-compatible if the method is CHARSET_METHOD_OFFSET, the
4948 code_offset is 0, and covers all ASCII characters.
4949
86fa089e
SM
49502009-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
4951
4952 * nsselect.m (symbol_to_nsstring, clean_local_selection_data)
4953 (ns_string_to_pasteboard_internal):
4954 * nsmenu.m (process_dialog):
4955 * nsimage.m (ns_load_image): Use SDATA and ASET where appropriate.
4956 * nsfont.m (nsfont_open): Use XHASH to make it compile with LISP_UNION.
4957 * lisp.h (Fx_load_color_file): Declare.
4958
a8a3728b
KH
49592009-04-13 Kenichi Handa <handa@m17n.org>
4960
1ac9108a 4961 * font.c (font_delete_unmatched): Preserve the order of list elements.
a8a3728b
KH
4962 (font_select_entity): Suppress the code to optimize for the same
4963 kind of fonts.
4964 (font_load_for_lface): Get a font that supports at least ASCII
4965 characters.
4966
4967 * ftfont.c (Qja, Qko): New variables.
4968 (fc_charset_table): Delete uniquifier data for iso8859-1.
4969 (ftfont_get_latin1_charset): New function.
4970 (get_adstyle_property): New function.
4971 (ftfont_pattern_entity): Set FONT_ADSTYLE_INDEX of entity for
4972 bitmap fonts.
4973 (ftfont_lookup_cache): Handle the case that KEY is a font-entity.
4974 Delete iso-8859-1 range from the charset of fonts whose adstyle is
4975 `ko' or `ja'.
4976 (ftfont_get_fc_charset): Call ftfont_lookup_cache with ENTITY.
1ac9108a 4977 (ftfont_get_charset): For iso8859-1, call ftfont_get_latin1_charset.
a8a3728b
KH
4978 (ftfont_list): Don't refuse a font spec with non-nil `adstyle'
4979 property.
4980 (ftfont_open): Call ftfont_lookup_cache with ENTITY.
4981 (syms_of_ftfont): DEFSYM Qja and Qko.
4982
483670b5
KH
49832009-04-09 Kenichi Handa <handa@m17n.org>
4984
12b55765
KH
4985 * charset.c (map_charset_chars): For a charset of `superset'
4986 method, fix calculation of code range.
4987
483670b5
KH
4988 * font.c (font_put_extra): If VAL is nil, delete the slot for PROP
4989 from the list of extra properties.
4990 (font_clear_prop): Be sure to delete `:name' font property.
4991
57d3b93b
KH
49922009-04-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4993
b4b2c2ca
YM
4994 * dispnew.c (redraw_overlapping_rows): Fix detection of
4995 overlapping for topmost and bottommost rows.
4996
1ac9108a 4997 * ftfont.c (ftfont_text_extents): Fix calculation of metrics->descent.
57d3b93b 4998
472c3609
JR
49992009-04-06 Jason Rumney <jasonr@gnu.org>
5000
5001 * frame.c (x_set_font): Avoid C99 mid-block variable declaration.
5002
ab193662
KH
50032009-04-06 Kenichi Handa <handa@m17n.org>
5004
5005 * ftxfont.c (ftxfont_draw_backgrond): Fix args to XFillRectangle.
5006
5007 * xftfont.c (xftfont_open): Fix setting font->underline_thickness.
5008
0c26f026
KH
50092009-04-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5010
5011 * ftfont.c (ftfont_open): Fix checking of the return value of
5012 FT_Load_Char. Fix setting font->underline_thickness.
5013
e173bbce
CY
50142009-04-04 Chong Yidong <cyd@stupidchicken.com>
5015
5016 * terminal.c (Fterminal_name, Fdelete_terminal, Fterminal_name)
5017 (Fterminal_parameters, Fterminal_parameter)
5018 (Fset_terminal_parameter): In doc string, refer to terminal
5019 objects rather than terminal ids.
5020
693a2698
EZ
50212009-04-04 Eli Zaretskii <eliz@gnu.org>
5022
5023 * dosfns.c (system_process_attributes) [SYSTEM_MALLOC]: Don't call
5024 ret_lim_data. (Bug#2867)
5025
d5221487
CY
50262009-04-03 Chong Yidong <cyd@stupidchicken.com>
5027
5028 * term.c (produce_stretch_glyph): Reduce width of stretch glyphs
5029 so they don't get wider than the window, matching 2006-01-23
5030 change to the partner function in xdisp.c (Bug#2800).
5031
223509a3
KH
50322009-04-03 Kenichi Handa <handa@m17n.org>
5033
5034 * print.c (print_object): Make each lowest sub_char_table start a
5035 new line (Bug#2866).
5036
74fcd0b1
KH
50372009-04-02 Kenichi Handa <handa@m17n.org>
5038
5039 * fontset.c (fontset_font): Record no-font when a fontset
5040 explicitly tells not to try another font-specs.
5041
c542407d
SM
50422009-03-30 Pierre Poissinger <pierre.poissinger@gmail.com> (tiny change)
5043
5044 * charset.c (map_charset_for_dump): Add missing UNGCPRO.
5045
e3869731
KH
50462009-03-30 Kenichi Handa <handa@m17n.org>
5047
d8d2f142
KH
5048 * fontset.c (fontset_from_font): Specify only registry in a
5049 font-spec for all characters supported by that registry.
5050
e3869731
KH
5051 * ftfont.c: Fix previous change. Define ftfont_variation_glyphs
5052 even if HAVE_M17N_FLT is not defined.
5053
5da5f805
CY
50542009-03-29 Sebastian Rose <sebastian_rose@gmx.de> (tiny change)
5055
5056 * ftfont.c: Conditionalize prototyping and use of
5057 ftfont_variation_glyphs.
5058
ab226c50
SM
50592009-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
5060
9628fed7
SM
5061 * frame.c (delete_frame): Work around compiler bug.
5062
5063 * editfns.c (general_insert_function): Adjust to insdel.c changes.
5064 * insdel.c (prepare_to_modify_buffer, signal_before_change):
5065 Some more EMACS_INT.
5066 * lisp.h (copy_text, count_size_as_multibyte): Fix last change.
5067
5068 * xdisp.c (dump_glyph): Fix typo.
5069
ae19ba7c
SM
5070 * insdel.c (move_gap, move_gap_both, gap_left, gap_right)
5071 (adjust_markers_gap_motion, adjust_markers_for_delete)
5072 (adjust_markers_for_insert, adjust_point)
5073 (adjust_markers_for_replace, make_gap_larger, make_gap_smaller)
5074 (make_gap, copy_text, count_size_as_multibyte, insert)
5075 (insert_and_inherit, insert_before_markers)
5076 (insert_before_markers_and_inherit, insert_1)
5077 (count_combining_before, count_combining_after, insert_1_both)
5078 (insert_from_string, insert_from_string_before_markers)
5079 (insert_from_string_1, insert_from_gap, insert_from_buffer)
5080 (insert_from_buffer_1, adjust_after_replace)
5081 (adjust_after_replace_noundo, adjust_after_insert, replace_range)
5082 (replace_range_2, del_range, del_range_1, del_range_byte)
5083 (del_range_both, del_range_2, modify_region)
5084 (prepare_to_modify_buffer, signal_before_change)
5085 (signal_after_change, Fcombine_after_change_execute): Use EMACS_INT
5086 for buffer positions and sizes.
5087 * lisp.h: Adjust prototypes accordingly.
5088
5089 * fileio.c (adjust_markers_for_delete): Move declaration to lisp.h.
5090 (non_regular_inserted, non_regular_nbytes, read_non_regular)
5091 (Finsert_file_contents): Use EMACS_INT for buffer positions.
5092
ab226c50
SM
5093 * fileio.c (Finsert_file_contents): Don't limit size to INT_MAX/4.
5094
46dfb8fb
JD
50952009-03-27 Jan Djärv <jan.h.d@swipnet.se>
5096
5097 * frame.c (x_set_font): If the fullscreen property is non-nil, adjust
5098 lines and columns so we keep the same pixel height and width.
5099
5100 * xterm.c (handle_one_xevent): Call x_handle_net_wm_state if
5101 the property _NET_WM_STATE has changed.
46dfb8fb
JD
5102 (x_handle_net_wm_state): New function to update frame parameter
5103 fullscreen.
5104 (x_term_init): Initialize atoms for _NET_WM_STATE.
5105
5106 * xterm.h (struct x_display_info): Add atoms for _NET_WM_STATE.
5107
d347e494
SM
51082009-03-27 Kevin Ryde <user42@zip.com.au>
5109
5110 * keyboard.c (tty_read_avail_input): Don't treat a -1 return from
5111 Gpm_GetEvent as an error that justifies closing the filedescriptor.
5112 * term.c (close_gpm): Get the filedescriptor as a (new) parameter.
5113 (Fgpm_mouse_stop): Pass that new parameter.
5114 * termhooks.h (close_gpm): Adjust prototype.
5115
84db11d6
SM
51162009-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
5117
c95a5008
SM
5118 * lisp.h (Fx_focus_frame): Declare.
5119
84db11d6
SM
5120 * callint.c (Fcall_interactively): For '^' just delegate the work to
5121 handle-shift-selection.
5122 (syms_of_callint): Move declaration of shift-select-mode to simple.el.
5123
0a1958d6
CY
51242009-03-24 Chong Yidong <cyd@stupidchicken.com>
5125
0bfdff23
CY
5126 * editfns.c (Ffloat_time): Doc fix (Bug#2768).
5127
0a1958d6
CY
5128 * data.c (Qinteractive_form): New variable.
5129 (Finteractive_form): Use it.
5130
5131 * eval.c (Fcommandp): Use Qinteractive_form.
5132
58aec0d6
JR
51332009-03-24 Jason Rumney <jasonr@gnu.org>
5134
5135 * fileio.c (Fsubstitute_in_file_name): Always work on a copy.
5136 Calculate total size precisely. Decode environment variables
5137 before substituting. (Bug#38)
5138
553dd618
KH
51392009-03-24 Kenichi Handa <handa@m17n.org>
5140
5141 * font.c (find_font_encoding): Return Qnil for unsupported
639239cf 5142 encoding (Bug#2722).
553dd618 5143
c39ea606
JD
51442009-03-23 Jan Djärv <jan.h.d@swipnet.se>
5145
5146 * gtkutil.c (xg_display_open): Assign a value to gdpy_def, check
5147 that gdpy is set.
5148
bc9b2b5e
AM
51492009-03-22 Alan Mackenzie <acm@muc.de>
5150
5151 * callint.c (Finteractive): Clarify the doc string - even
5152 promptless elements need \n separators.
5153
9f995a76
JR
51542009-03-22 Jason Rumney <jasonr@gnu.org>
5155
5156 * w32term.c (syms_of_w32term): Doc fix for
5157 x-use-underline-position-properties.
5158
22749e9a
EZ
51592009-03-21 Eli Zaretskii <eliz@gnu.org>
5160
5161 * w32.c (getpwuid): Change argument type to unsigned.
5162 (struct w32_id): Change type of `rid' member to unsigned.
5163 (w32_cached_id, w32_add_to_cache, get_name_and_id): Change type of
5164 argument ID to unsigned. All callers changed.
5165 (getuid, geteuid, getgid, getegid): Change return type to unsigned.
5166
e00553bf
EZ
51672009-03-20 Eli Zaretskii <eliz@gnu.org>
5168
5169 * editfns.c (Fuser_uid, Fuser_real_uid): If UID as EMACS_INT is
5170 negative, produce a float value.
5171
5172 * dired.c (make_uid, make_gid): New functions.
5173 (Ffile_attributes): Use them to avoid negative UID and GID.
5174
f761d6b6
JB
51752009-03-20 Juanma Barranquero <lekktu@gmail.com>
5176
5177 * keyboard.c (Fcurrent_idle_time): Reflow docstring.
5178 (syms_of_keyboard) <command-hook-internal, input-method-function>:
5179 Fix typos in docstrings.
5180
d507f8d7
KH
51812009-03-19 Kenichi Handa <handa@m17n.org>
5182
5183 * fontset.c (Fset_fontset_font): When a spec of ASCII font is
f761d6b6
JB
5184 changed, use font_load_for_lface to get a new font object.
5185 Call free_realized_fontset after handling ASCII font change.
d507f8d7
KH
5186
5187 * frame.c (x_set_font): Handle the case that ARG is a cons.
5188
c68845e0
GM
51892009-03-19 Glenn Morris <rgm@gnu.org>
5190
5191 * fileio.c (Fsubstitute_in_file_name): Doc fix.
5192
bfa49dd1
CY
51932009-03-19 Chong Yidong <cyd@stupidchicken.com>
5194
5195 * indent.c (Fvertical_motion): Undo 2005-01-19 change (Bug#2694).
5196
8458d4c1
KH
51972009-03-19 Kenichi Handa <handa@m17n.org>
5198
5199 * charset.c (load_charset_map_from_file): When a mapfile can't be
5200 loaded, signal an error.
5201
78e7d1fe
EZ
52022009-03-18 Eli Zaretskii <eliz@gnu.org>
5203
5204 * dired.c (Ffile_attributes): Make sure UID and GID are always
5205 positive, even if the value is too large for a positive EMACS_INT.
5206 Doc fix.
5207
5208 * editfns.c (Fuser_login_name): Support float arguments. Doc fix.
5209
5da9fdfa
YM
52102009-03-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5211
5212 * xmenu.c (xdialog_show): Move Fredisplay call ...
5213 (Fx_popup_dialog): ... here.
5214
7519c40d
SM
52152009-03-18 Stefan Monnier <monnier@iro.umontreal.ca>
5216
5217 * dired.c (file_name_completion): Disable the first optimization just
5218 installed, since it is not implemented correctly.
5219
2cd298e2
SM
52202009-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
5221
5222 * dired.c (file_name_completion): Check completion-ignored-extensions
c95a5008 5223 only if the entry can affect bestmatch.
2cd298e2
SM
5224 Stop the search early, as Ftry_completion already does.
5225
48d37adf
CY
52262009-03-17 Chong Yidong <cyd@stupidchicken.com>
5227
e10c9c93 5228 * minibuf.c (Vminibuffer_completion_confirm): Doc fix.
48d37adf 5229
9286b16a
CY
52302009-03-15 Chong Yidong <cyd@stupidchicken.com>
5231
5232 * keyboard.c (parse_menu_item): Don't display remappings as menu
5233 equivalent bindings (Bug#788).
5234
f7b146dc
JR
52352009-03-15 Jason Rumney <jasonr@gnu.org>
5236
5237 * w32term.h (WM_EMACS_PAINT): New message.
5238 * w32term.c (w32_read_socket): Use it instead of WM_PAINT.
5239 * w32fns.c (w32_wnd_proc): Change WM_PAINT to WM_EMACS_PAINT
5240 before passing to lisp thread. (Bug#950)
5241
f761d6b6 52422009-03-14 David Reitter <david.reitter@gmail.com>
c6c62e78 5243
d93f9575
CY
5244 * nsterm.m (ns_shutdown_properly, -terminate): Remove global state
5245 variable as it was never reset.
5246 (ns_term_init): Remove initialization of Lisp-settable defaults
5247 and ns_expand_space.
5248 (-setPanelFromDefaultValues): Remove ns_expand_space.
5249 (-showPreferencesWindow): Send new KEY_NS_SHOW_PREFS key.
5250 * nsfont.m (nsfont_open): Remove ns_expand_space, assume -0.5
c6c62e78
DR
5251 i.e. no additional spacing, similar to Carbon port.
5252
d93f9575
CY
5253 * nsterm.h: Define KEY_NS_SHOW_PREFS key.
5254 * nsfns.m (ns-popup-prefs-panel): Remove.
c6c62e78 5255
305018ec
JD
52562009-03-14 Jan Djärv <jan.h.d@swipnet.se>
5257
5258 * sound.c (alsa_configure): Remove call to deprecated
5259 snd_pcm_sw_params_set_xfer_align.
5260
f761d6b6 52612009-03-14 Stephen Berman <stephen.berman@gmx.net>
4a02423f
JD
5262
5263 * gtkutil.c (xg_tool_bar_callback): Set focus back to the frame
5264 after clicking in a detached tool bar.
5265 (xg_tool_bar_proxy_callback): Remove call to Fx_focus_frame.
5266
46e722a9
SM
52672009-03-13 Stefan Monnier <monnier@iro.umontreal.ca>
5268
348db3dd
SM
5269 * fontset.c (fontset_from_font, Ffontset_info): YAILOM (Yet another
5270 int/Lisp_Object mixup).
46e722a9 5271
a3d16f39
KH
52722009-03-13 Kenichi Handa <handa@m17n.org>
5273
5274 * fontset.c (Ffontset_info, check_fontset_name): New arg frame.
fe24f56a 5275 Handle NAME nil and t correctly. Callers changed.
a3d16f39
KH
5276 (font_def_arg, add_arg, from_arg, to_arg): Delete them.
5277 (set_fontset_font): Change ARG to a vector. Handle range_list in
5278 ARG correctly.
5279 (Fset_fontset_font): Fix the case that TARGET is both a script
fe24f56a 5280 name and charset name. Adjust the arg to set_fontset_font for
a3d16f39
KH
5281 the above change.
5282 (fontset_from_font): Fix previous change.
fe24f56a 5283 (Ffontset_info): Adjust for the 2008-07-09 change of fontset
a3d16f39
KH
5284 entry. If FONTSET is the default fontset, don't set the extra
5285 slot of the returning char-table.
5286
b066e6b6
JB
52872009-03-12 Juanma Barranquero <lekktu@gmail.com>
5288
5289 * nsfns.m (Fx_close_connection): Doc fix.
5290 (Fns_do_applescript): Reflow docstring.
5291 (Fns_hide_others, Fns_hide_emacs, Fns_convert_utf8_nfd_to_nfc)
5292 (Fx_display_pixel_width, Fx_display_pixel_height)
5293 (Fns_display_usable_bounds, Fx_display_planes, Fx_show_tip):
5294 Fix typos in docstrings.
5295 (Fns_set_alpha): Fix typos in error messages.
5296
d472514e 52972009-03-12 David Reitter <david.reitter@gmail.com>
d6220c13 5298
d472514e 5299 * termhooks.h [HAVE_NS]: Define NS_NONKEY_EVENT to be used for
d6220c13
DR
5300 non-key system events on NS. Formerly, NON_ASCII_KEYSTROKE_EVENT
5301 were used for such events.
5302
d472514e
JB
5303 * nsterm.m (newFrame, openFile, fulfillService, changeFont)
5304 (toggleToolbar, performDragOperation, runHelp): Use it.
d6220c13 5305
d472514e 5306 * keyboard.c (parse_menu_item) [HAVE_NS]: Treat new event like
d6220c13
DR
5307 NON_ASCII_KEYSTROKE_EVENT, but set used_mouse_menu.
5308
fb930676
KH
53092009-03-11 Kenichi Handa <handa@m17n.org>
5310
ff85581a
KH
5311 * font.h (font_open_by_spec): Extern it.
5312
c50b7e98
KH
5313 * font.c (font_open_by_spec): New function.
5314 (font_open_by_name): Use font_open_by_spec.
5315
fb930676
KH
5316 * frame.c (x_set_font): When ARG is a font-object, don't alter the
5317 fontset of the frame.
5318
5319 * fontset.c (Fset_fontset_font): When a font for ASCII is changed,
5320 modify the default font of frames that use this fontset.
5321 (num_auto_fontsets): New variable.
5322 (fontset_from_font): Use num_auto_fontsets to decide a fontset
5323 name. Be sure to set FONTSET_ASCII to the correct font name.
5324 (update_auto_fontset_alist): New function.
5325
df4e8455
JB
53262009-03-11 Juanma Barranquero <lekktu@gmail.com>
5327
5328 * makefile.w32-in: Update dependencies.
5329
0a375797
AR
53302009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
5331
5332 * nsfns.m (syms_of_nsfns): Remove Qbuffered.
5333
61313fa3
SM
53342009-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
5335
5336 * buffer.c (Fswitch_to_buffer): Revert part of 2008-10-21's change.
5337
b55103fb
CY
53382009-03-10 Chong Yidong <cyd@stupidchicken.com>
5339
5340 * lread.c (Feval_buffer): Doc fix.
5341
dde2559c
KH
53422009-03-09 Kenichi Handa <handa@m17n.org>
5343
5344 * charset.c (Qfile_name_handler_alist): Extern it.
5345 (load_charset_map_from_file): Temporarily bind
5346 `file-name-handler-alist' to nil while calling openp. (Bug#2435)
5347
df4e8455 53482009-03-06 Aaron Ecay <aaronecay@gmail.com> (tiny change)
340e08a4 5349
47f588bb
GM
5350 * nsterm.m (ns_draw_vertical_window_border): Draw 1 pixel wide,
5351 not two, and use NSRectFill instead of NSDrawGroove. (Bug#2352)
340e08a4 5352
4ddf94bd
AR
53532009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
5354
4c9bdfc2
AR
5355 * nsterm.m: Include <signal.h> for SIGTERM used in ns_term_shutdown.
5356 (x_set_window_size): Change back to calculated method of setting
5357 toolbar height under Cocoa. (Bug#2546)
4ddf94bd
AR
5358 (EmacsView-windowWillUseStandardFrame:defaultFrame:): New method.
5359 (EmacsView-drawRect:): Completely shortcircuit if ns_in_resize.
5360
fe41ae9e
AR
5361 * nsfns.m (ns_appkit_version_int): Fix typo in the version macro.
5362
4c9bdfc2
AR
5363 * nsmenu.m (EmacsMenu-addItemWithWidgetValue:): Don't add
5364 accelerator in parens under GNUstep.
5365
825d0875
KH
53662009-03-06 Kenichi Handa <handa@m17n.org>
5367
5368 These changes are to detect incorrect composition sequence without
f3b3be74 5369 looking ahead the source. (Bug#2370)
825d0875
KH
5370
5371 * coding.h: Include "composite.h".
5372 (enum compisition_state): New enum.
5373 (struct compisition_status): New struct.
5374 (struct iso_2022_spec): New member cmp_status.
5375 (struct emacs_mule_spec): New struct.
5376 (struct coding_system): New members ctext_extended_segment_len and
5377 embedded_utf_8. Change the union member
5378 spec.emacs_mule_full_support to spec.emacs_mule.
5379
5380 * coding.c (CODING_ISO_CMP_STATUS): New macro.
5381 (CODING_ISO_EXTSEGMENT_LEN, CODING_ISO_EMBEDDED_UTF_8): New macros.
98a326f7 5382 (MAX_ANNOTATION_LENGTH): Define to 5.
825d0875
KH
5383 (ADD_COMPOSITION_DATA): New arg nbytes.
5384 (emacs_mule_char): New arg cmp_status.
5385 (DECODE_EMACS_MULE_COMPOSITION_CHAR): Delete it.
5386 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): New arg c.
5387 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New arg c.
5388 (DECODE_EMACS_MULE_21_COMPOSITION): Delete the arg c.
5389 (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Likewise.
5390 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Likewise.
5391 (DECODE_EMACS_MULE_COMPOSITION_START): New macro.
5392 (EMACS_MULE_COMPOSITION_END): New macro.
5393 (emacs_mule_finish_composition): New function.
5394 (EMACS_MULE_MAYBE_FINISH_COMPOSITION): New macro.
5395 (decode_coding_emacs_mule): Avoid long looking ahead while
5396 handling composition.
5397 (DECODE_COMPOSITION_RULE): Argument changed to rule and nbytes.
5398 (ENCODE_COMPOSITION_RULE): New macro.
5399 (finish_composition): New function.
5400 (MAYBE_FINISH_COMPOSITION): Call finish_composition.
5401 (DECODE_COMPOSITION_START): New implementation.
5402 (DECODE_COMPOSITION_END): Likewise.
5403 (STORE_COMPOSITION_RULE): New macro.
5404 (decode_coding_iso_2022): Avoid long looking ahead while handling
5405 composition, CTEXT extended segment, and embedded UTF-8.
5406 (setup_coding_system): For a coding of type iso-2022, reset
5407 CODING_ISO_EXTSEGMENT_LEN (coding) and
5408 CODING_ISO_EMBEDDED_UTF_8 (coding).
5409 (get_translation): Delete arguments last_block, from_nchars,
5410 to_nchars. Callers changed.
5411 (produce_chars): Don't modify charbuf. Adjusted for the change of
5412 get_translation.
98a326f7 5413 (produce_composition): Adjust for the new annotation sequence.
825d0875 5414 (handle_composition_annotation): Likewise.
98a326f7 5415 (consume_chars): Adjust for the change of get_translation.
825d0875 5416
ccbc4452
AR
54172009-03-05 Adrian Robert <Adrian.B.Robert@gmail.com>
5418
4ddf94bd 5419 * nsterm.m (ns_select): Shortcircuit if reentrant call. (Bug#2564)
ccbc4452 5420
988a7ddb
KH
54212009-03-05 Kenichi Handa <handa@m17n.org>
5422
5423 * font.c (font_select_entity): New function.
5424 (font_find_for_lface): Use font_select_entity to select a font.
5425
5426 * fontset.c (fontset_find_font): If a font found without
a8a3728b 5427 restricting to the characters C doesn't support C, try to find a
988a7ddb
KH
5428 font with C restriction.
5429
98a326f7 54302009-03-04 Nikolaj Schumacher <me@nschum.de>
2f462d73 5431
be1bce46 5432 * nsfont.m (nsfont_draw): Compare ns_antialias_text against lisp value.
2f462d73 5433
10ea2b82
JR
54342009-03-04 Jason Rumney <jasonr@gnu.org>
5435
2c93b248 5436 * w32fns.c (w32_wnd_proc): Only ignore IME messages for the
4891ba1d 5437 characters that have already been read. (Bug#2569)
2c93b248 5438
10ea2b82
JR
5439 * image.c (xbm_read_bitmap_data, png_load, svg_load_image):
5440 Log an error message if check_image_size failed.
5441 (xpm_load_image, pbm_load, jpeg_load, tiff_load, gif_load)
4891ba1d 5442 (gs_load): Mention max-image-size in size error message. (Bug#2560)
10ea2b82 5443
71a0c011
EZ
54442009-03-02 Eli Zaretskii <eliz@gnu.org>
5445
5446 * callproc.c (Fcall_process): Bind inhibit-modification-hooks to t
5447 when decoding process output.
5448
2f63bba8
RS
54492009-03-01 Richard M Stallman <rms@gnu.org>
5450
5451 * m/mips.h (DATA_SEG_BITS, XUINT, XSET): Definitions disabled.
5452
5453 * emacs.c (gdb_data_seg_bits) [USE_LSB_TAG]: Make it 0.
5454
0a9564cb
EZ
54552009-02-28 Eli Zaretskii <eliz@gnu.org>
5456
5457 * coding.c (decode_coding_utf_8, decode_coding_utf_16)
5458 (decode_coding_emacs_mule, decode_coding_iso_2022)
5459 (encode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
5460 (decode_coding_raw_text, decode_coding_charset)
5461 (setup_coding_system, decode_eol, decode_coding, consume_chars):
5462 Honor inhibit-eol-conversion. (Bug #2186)
5463
449148b3
JR
54642009-02-28 Jason Rumney <jasonr@gnu.org>
5465
5466 * coding.c (detect_coding_charset): If not checking latin extra,
5467 fail on characters between 0x80 and 0xA0. (Bug#2354)
5468
a4aee864
EZ
54692009-02-28 Eli Zaretskii <eliz@gnu.org>
5470
5471 * coding.c (detect_coding_charset): Fix change from 2008-10-21.
2a1573ff 5472 Also, check iso-latin-*, not only iso-8859-*. (Bug#2497)
a4aee864 5473
d88bee5a
GM
54742009-02-27 Glenn Morris <rgm@gnu.org>
5475
5476 * callint.c (Finteractive): Doc fix.
5477
a808f22d
KH
54782009-02-27 Kenichi Handa <handa@m17n.org>
5479
5480 * lread.c (read_escape): Signal an error for invalid \UXXXXXXXX.
5481
caf8d60c
CY
54822009-02-27 Chong Yidong <cyd@stupidchicken.com>
5483
5484 * font.c (font_style_to_value): Set value for unknown symbols to
5485 100 instead of 255.
b61137ea
CY
5486 (weight_table, slant_table, width_table): Treat "unspecified" as
5487 the default value.
caf8d60c 5488
1a0de25c
JB
54892009-02-26 Juanma Barranquero <lekktu@gmail.com>
5490
5491 * fileio.c (Fnext_read_file_uses_dialog_p): Fix typo in docstring.
5492
8fc45744
JB
54932009-02-25 Juanma Barranquero <lekktu@gmail.com>
5494
107bd7d1
JB
5495 * lread.c (Fload): Stop checking Vloads_in_progress and signal
5496 error as soon as a recursive load is detected.
8fc45744 5497
f097e223
AR
54982009-02-24 Adrian Robert <Adrian.B.Robert@gmail.com>
5499
5500 * nsterm.m (ns_ring_bell): Convert rect to window coordinates
5501 before caching.
5502
8810a12f
KH
55032009-02-24 Kenichi Handa <handa@m17n.org>
5504
5505 * fontset.c (fontset_find_font): Fix the condition for checking
5506 unavailable font.
5507
2c7d1565
GM
55082009-02-24 Glenn Morris <rgm@gnu.org>
5509
5510 * xfaces.c (Finternal_set_font_selection_order): Remove leading
5511 whitespace that confuses documentation.
5512
a20878b6
MB
55132009-02-23 Miles Bader <miles@gnu.org>
5514
5515 * process.c (Flist_system_processes, Fprocess_attributes)
5516 (syms_of_process): Rename `system-process-attributes' to
5517 `process-attributes'.
5518
b3b58c01
AS
55192009-02-22 Andreas Schwab <schwab@linux-m68k.org>
5520
1b3b981b
AS
5521 * coding.h (struct coding_system): Make safe_charsets a pointer to
5522 unsigned char.
5523 * coding.c (CODING_ISO_REQUEST): Check for safe_charsets content
5524 being 255.
5525 (SAFE_CHARSET_P): Likewise.
5526 (setup_iso_safe_charsets): Properly setup safe_charsets.
5527 (Fdefine_coding_system_internal): Likewise.
5528 (setup_coding_system): Likewise. Remove unneeded casts.
5529 (detect_coding_iso_2022): Compare Viso_2022_charset_list with
5530 CODING_ATTR_CHARSET_LIST, not CODING_ATTR_SAFE_CHARSETS. Remove
5531 unneeded casts.
5532
b3b58c01
AS
5533 * insdel.c (del_range_2): Don't modify gap contents when called
5534 from decode_coding_object. (Bug#1809)
5535
0b6f228c
CY
55362009-02-21 Chong Yidong <cyd@stupidchicken.com>
5537
5538 * data.c (syms_of_data): Define Qfont_spec, Qfont_entity, and
5539 Qfont_object.
5540 (Ftype_of): Recognize font objects.
5541
5542 * lisp.h: Define Qfont_spec, Qfont_entity, Qfont_object extern.
5543
5544 * font.c (Qfont_spec, Qfont_entity, Qfont_object): Definitions
5545 moved to data.c.
5546
52f8870b
AR
55472009-02-20 Adrian Robert <Adrian.B.Robert@gmail.com>
5548
5549 * nsterm.m (x_make_frame_invisible): Unset async_visible,
5550 async_iconified. Based on a patch by Christian Lynbech
5551 <christian.lynbech@tieto.com>.
5552 (EmacsView-windowDidMiniaturize:): Unset async_visible.
5553
7087d5e9
GM
55542009-02-20 Glenn Morris <rgm@gnu.org>
5555
5556 * syntax.c (Fskip_chars_forward): Fix doc typo.
5557
41d2ceef
CY
55582009-02-20 Chong Yidong <cyd@stupidchicken.com>
5559
5560 * keymap.c (Fkeymap_parent): Doc fix (Bug#2391).
5561
1a3b7ca6
CY
55622009-02-19 Chong Yidong <cyd@stupidchicken.com>
5563
5564 * xfns.c (Fx_create_frame): Give Xft driver a higher priority.
5565
73cce38d
KH
55662009-02-19 Kenichi Handa <handa@m17n.org>
5567
5568 * coding.c (detect_coding): Preserve coding->mode.
2bc550cb 5569 Don't overflow coding->carryover. (Bug#2370)
73cce38d 5570
a51092ee
DN
55712009-02-18 Dan Nicolaescu <dann@ics.uci.edu>
5572
5573 * m/ibmrs6000.h (ADDR_CORRECT): Restore, removed by mistake on 2008-07-23.
5574
c423ecca
KH
55752009-02-18 Kenichi Handa <handa@m17n.org>
5576
5577 * font.c (font_check_otf_features): Fix handling of `nil' element.
5578 (Ffont_spec): Describe :lang and :otf in the docstring.
5579
4c1958f4
AS
55802009-02-16 Andreas Schwab <schwab@suse.de>
5581
5582 * coding.c (Fcheck_coding_systems_region): Fix test for unibyte
5583 string.
5584
5704f39a
KH
55852009-02-16 Kenichi Handa <handa@m17n.org>
5586
5587 * coding.c (Fcheck_coding_systems_region): Fix typo; Qt -> Qnil.
a057d86a 5588 (Bug#1723)
5704f39a 5589
8f0085aa
CY
55902009-02-14 Chong Yidong <cyd@stupidchicken.com>
5591
a057d86a 5592 * dispextern.h (struct iterator_stack_entry): New line_wrap member.
8f0085aa
CY
5593
5594 * xdisp.c (push_it, pop_it): Save and restore line_wrap.
5595 (handle_line_prefix): Suppress wrapping of wrap prefixes.
5596
aff01dd9
EZ
55972009-02-14 Eli Zaretskii <eliz@gnu.org>
5598
5599 * msdos.c (MAX_SCREEN_BUF): New macro.
5600 (IT_write_glyphs): Make screen_buf[] always be MAX_SCREEN_BUF-long.
5601 Encode the entire run of glyphs sharing the same face, instead of
5602 doing that one glyph at a time (fixes a bug with displaying
5603 double-size characters).
5604
ba301db3
AR
56052009-02-13 Adrian Robert <Adrian.B.Robert@gmail.com>
5606
5607 * nsfns.m (ns-read-file-name): BLOCK_INPUT while showing dialog.
5608
5609 * nsmenu.m (pop_down_menu): Check popup_activated_flag.
5610 (ns_popup_dialog, EmacsDialogPanel-runDialogAt:): Let
a057d86a 5611 pop_down_menu do the cleanup work as it is always called. (Bug#2154)
ba301db3
AR
5612
5613 * nsfont.m (nsfont_make_fontset_for_font): For now, don't try to
a057d86a 5614 set fontset font for "mathematical-" sub-scripts. (Bug #2218)
ba301db3 5615
51d861de
SM
56162009-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
5617
ac146f82 5618 * keyboard.c (adjust_point_for_property): Allow stopping between two
51d861de
SM
5619 invisible areas.
5620
7fed8996
JR
56212009-02-12 Jason Rumney <jasonr@gnu.org>
5622
631ea4fb
JR
5623 * w32font.c (check_face_name): Check for fake helv. (Bug#2275)
5624 (add_font_entity_to_list): Call check_face_name even when family
5625 is unspecified.
5626
cb4a3e42
JR
5627 * w32term.c (x_display_pixel_height, x_display_pixel_width):
5628 Release DC when finished. Use NULL window to refer to desktop.
631ea4fb 5629 (w32_term_init): Use NULL window to refer to desktop. (Bug#460)
cb4a3e42 5630
7fed8996 5631 * w32font.c (add_font_entity_to_list): Fix check for substituted
631ea4fb 5632 raster fonts. (Bug#2219)
7fed8996 5633
895416e3
KH
56342009-02-12 Kenichi Handa <handa@m17n.org>
5635
5636 * composite.c (MAX_AUTO_COMPOSITION_LOOKBACK): New macro.
5637 (composition_gstring_width): Fix handling of LGLYPH_YOFF.
5638 (autocmp_chars): Use fast_looking_at. Don't compose more
1dacf998 5639 characters than MAX_COMPOSITION_COMPONENTS.
895416e3
KH
5640 (find_automatic_composition): While looking forward and backward,
5641 check static composition. Fix where to stop looking forward.
5642 (composition_adjust_point): Fix checking of static composition.
5643 (Fcomposition_get_gstring): Pay attention to
1dacf998 5644 MAX_COMPOSITION_COMPONENTS.
895416e3
KH
5645
5646 * lisp.h (fast_looking_at): Extern it.
5647
5648 * search.c (fast_looking_at): New function.
5649
51d861de 5650 * term.c (encode_terminal_code): Adjust for the change of
895416e3
KH
5651 <struct glyph>.u.cmp.to.
5652 (append_composite_glyph): Likewise.
5653
51d861de 5654 * xdisp.c (fill_gstring_glyph_string): Adjust for the change of
895416e3
KH
5655 <struct glyph>.u.cmp.to. Check if the glyph belongs to the same
5656 composition.
51d861de 5657 (append_composite_glyph): Adjust for the change of
895416e3
KH
5658 <strcut glyph>.u.cmp.to.
5659
8510724d
JB
56602009-02-11 Juanma Barranquero <lekktu@gmail.com>
5661
5662 * casetab.c (init_casetab_once):
5663 * coding.c (ALLOC_CONVERSION_WORK_AREA):
5664 * font.c (font_update_lface):
5665 * fontset.c (Fnew_fontset):
5666 * ftfont.c (ftfont_drive_otf):
5667 * xfont.c (xfont_open):
5668 * xftfont.c (xftfont_get_xft_draw): Remove spurious semicolons.
5669
294fa707
SM
56702009-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
5671
5672 * fileio.c (Fwrite_region): !NILP -> CONSP.
5673
b5bfebec
AS
56742009-02-10 Andreas Schwab <schwab@suse.de>
5675
5676 * process.c (send_process): Properly relocate pointer into data
adab88bd 5677 when using encoded data. (Bug#2272)
b5bfebec 5678
cb84a2be
KH
56792009-02-08 ARISAWA Akihiro <ari@mbf.sphere.ne.jp>
5680
5681 * coding.c (detect_coding_charset): Fix previous change.
5682
89e09428
JR
56832009-02-08 Jason Rumney <jasonr@gnu.org>
5684
5685 * w32fns.c (w32_hide_hourglass): Handle case where frame
adab88bd 5686 disappeared while hourglass was displayed. (Bug #2193)
89e09428 5687
4470a277
AS
56882009-02-07 Andreas Schwab <schwab@suse.de>
5689
5690 * unexelf.c (unexec): Fix error message.
5691
3175b12a
AR
56922009-02-07 Adrian Robert <Adrian.B.Robert@gmail.com>
5693
5694 * nsterm.m (EmacsApp-sendEvent:): Defer NSApplicationDefined event
adab88bd 5695 when modal window is active. (Bug #2152)
3175b12a
AR
5696 (applicationShouldTerminate:): Remove now-unneeded while loop
5697 around NSRunAlertPanel.
5698
5699 * nsmenu.m (popupSession): New file-global variable.
5700 (pop_down_menu): End the popupSession before closing dialog.
5701 (ns_popup_dialog): BLOCK_INPUT around dialog presentation.
5702 (EmacsDialogPanel-runDialogAt:): Don't place window (superfluous),
5703 don't query NSApp for events (just sleep instead).
5704
8434d0b8
EZ
57052009-02-07 Eli Zaretskii <eliz@gnu.org>
5706
51d861de
SM
5707 * coding.c (syms_of_coding) <translation-table-for-input>:
5708 Modify doc string to discourage use for character code unification.
8434d0b8 5709
aa82edfd
CY
57102009-02-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5711
5712 * atimer.c (run_timers): Update pending_atimers.
5713
2d283c7c
CY
57142009-02-06 Chong Yidong <cyd@stupidchicken.com>
5715
eb306cab
CY
5716 * image.c (svg_load_image): Fix last change.
5717
2d283c7c
CY
5718 * xfns.c (Fx_create_frame): Signal an error if no font is
5719 found (Bug#2147).
5720
4d8e170e
JB
57212009-02-05 Juanma Barranquero <lekktu@gmail.com>
5722
5723 * character.c (syms_of_character) <script-representative-chars>:
5724 Fix typo in docstring.
5725
c96169a0
AR
57262009-02-04 Adrian Robert <Adrian.B.Robert@gmail.com>
5727
5728 * nsmenu.m (pop_down_menu): New function.
5729 (ns_popup_dialog): Call it on unwind.
5730 (EmacsDialogPanel-runDialogAt:): Check popup_activated_flag and
5731 call timer_check() (Bug#2154).
5732 (EmacsMenu-menuNeedsUpdate:): Don't call ns_update_menu if
5733 handling_signal is set.
5734 (EmacsMenu-fillWithWidgetValue:): Set submenu title.
5735
31fd7c5c 5736 * config.in: Get rid of COCOA_EXPERIMENTAL_CTRL_G.
c96169a0
AR
5737
5738 * s/darwin.h: Same and NO_SOCK_SIGIO as well.
5739
5740 * nsterm.m (ns_read_socket): Same and don't set handling_signal.
5741
51d861de
SM
5742 * keyboard.c (poll_for_input_1, handle_async_input):
5743 Set handling_signal under HAVE_NS.
c96169a0 5744
aacd8ba1
GM
57452009-02-04 Glenn Morris <rgm@gnu.org>
5746
5747 * fileio.c (Fwrite_region): Doc fix (mention annotate-functions).
5748
4cb75c4b
KH
57492009-02-04 Kenichi Handa <handa@m17n.org>
5750
5751 * Makefile.in (composite.o): Depends on frame.h and termhooks.h.
5752
5753 * charset.c (Fchar_charset): New optional arg restriction.
5754
5755 * coding.h (coding_system_charset_list): Extern it.
5756
5757 * coding.c (coding_system_charset_list): New function.
5758
5759 * composite.c: Include coding.h and termhooks.h.
5760 (composition_gstring_p): Fix for the terminal case.
5761 (composition_gstring_width): Likewise.
5762 (fill_gstring_body): Likewise.
5763 (autocmp_chars): For terminal, call Fcomposition_get_gstring with
5764 the frame.
5765 (composition_compute_stop_pos): Adjust cmp_it->stop_pos if point
5766 is within a composition.
867d4bb3 5767 (Fcomposition_get_gstring): Fix the terminal case.
4cb75c4b
KH
5768
5769 * term.c (encode_terminal_code): Fix handling of composition.
5770 (produce_composite_glyph): For static composition, get pixel_width
5771 from struct composition.
5772
826ba17e
AS
57732009-02-02 Andreas Schwab <schwab@suse.de>
5774
5775 * unexelf.c (unexec): Handle unaligned bss offset.
5776
8ad093db
AR
57772009-02-01 Adrian Robert <Adrian.B.Robert@gmail.com>
5778
5779 * nsterm.m (ns_read_socket): Copy 2009-01-29 and 2009-01-30
5780 XT,w32read_socket changes to ns_read_socket.
d0a76a6e 5781
8ad093db
AR
5782 * keyboard.c (handle_interrupt): Don't call
5783 quit_throw_to_read_char() under NS.
d0a76a6e 5784
8ad093db
AR
5785 * blockinput.h: Remove NS-specific code.
5786
4d18a7a2
DN
57872009-01-30 Dan Nicolaescu <dann@ics.uci.edu>
5788
db878925
DN
5789 * dispnew.c (window_change_signal): Don't try to get the size of a
5790 suspended tty frame.
5791 * term.c (Fresume_tty): Resize if the size has changed while the
5792 tty was suspended.
5793
4d18a7a2
DN
5794 * alloc.c (mark_stack): Properly conditionalize previous change.
5795
8984df7c
JB
57962009-01-30 Juanma Barranquero <lekktu@gmail.com>
5797
5798 * w32inevt.c (w32_console_read_socket) [SYNC_INPUT]:
5799 * w32term.c (w32_read_socket) [SYNC_INPUT]:
5800 Remove; this code is not used on Windows.
5801
75f4f1ac
EZ
58022009-01-30 Eli Zaretskii <eliz@gnu.org>
5803
5804 * coding.c (detect_eol, decode_eol): Handle text with DOS-style
5805 EOLs that also has stray ^M characters.
5806
07a1e794
JB
58072009-01-30 Juanma Barranquero <lekktu@gmail.com>
5808
5809 * atimer.c (run_timers, alarm_signal_handler):
5810 * keyboard.c (pending_signals, handle_async_input, init_keyboard):
5811 * w32inevt.c (w32_console_read_socket):
5812 * w32term.c (w32_read_socket):
5813 * xterm.c (XTread_socket): Use "#ifdef SYNC_INPUT" where appropriate.
5814
a8b11cc9
CY
58152009-01-30 Chong Yidong <cyd@stupidchicken.com>
5816
5817 * callproc.c (Vtemp_file_name_pattern): Remove DEFVAR_LISP.
5818 Initialize it as a relative filename pattern.
5819 (init_callproc): Don't initialize Vtemp_file_name_pattern here.
5820 (Fcall_process_region): Simplify temp file creation using
5821 temporary-file-directory.
5822
c279587b
EZ
58232009-01-29 Eli Zaretskii <eliz@gnu.org>
5824
5825 * msdos.c: Rename pending_signals to msdos_pending_signals.
5826 (sig_suspender, sigprocmask): Adjust.
5827
a8fe3242
CY
58282009-01-29 Chong Yidong <cyd@stupidchicken.com>
5829
5830 * keyboard.c (pending_signals): New var.
5831 (poll_for_input, input_available_signal, init_keyboard): Set it.
5832 (process_pending_signals): New function.
5833
5834 * lisp.h (QUIT): Check pending_signals instead of
5835 interrupt_input_pending. Use process_pending_signals.
5836
51d861de 5837 * atimer.c (run_timers, alarm_signal_handler): Update pending_signals.
a8fe3242 5838
51d861de 5839 * process.c (wait_reading_process_output): Use process_pending_signals.
a8fe3242
CY
5840
5841 * sysdep.c (emacs_write): Use process_pending_signals.
5842
5843 * xterm.c (XTread_socket): Update pending_signals.
5844
5845 * w32term.c (w32_read_socket): Update pending_signals.
5846
5847 * w32inevt.c (w32_console_read_socket): Update pending_signals.
5848
6570a1c4
KH
58492009-01-29 Kenichi Handa <handa@m17n.org>
5850
5851 * xftfont.c (xftfont_has_char): New function.
5852 (syms_of_xftfont): Register xftfont_has_char in xftfont_driver.
5853
d72a4afa
AR
58542009-01-29 Adrian Robert <Adrian.B.Robert@gmail.com>
5855
5856 * nsterm.h (EmacsPrefsController.cursorBlinkSlider): Only define
5857 under GNUstep.
5858 (ns_query_color): New declaration.
5859
5860 * nsterm.m (ns_confirm_quit): New variable.
5861 (ns_set_default_prefs, syms_of_nsterm, ns_term_init): Initialize it.
5862 (EmacsApp-applicationShouldTerminate:): Use it.
5863 (EmacsPrefsController): Let user set it.
5864 (ns_query_color): New function.
5865 (ns_defined_color): Use it.
5866 (ns_initialize): Drop.
5867 (ns_term_init): Add two lines from ns_initialize(), and set
5868 input_interrupt_mode to nil.
5869
5870 * image.c (svg_load_image): Don't right-shift background RGB when
6af84d77 5871 obtained from FRAME_BACKGROUND_PIXEL. Under HAVE_NS use ns_query_color.
d72a4afa 5872
9fe78804
KH
58732009-01-28 Kenichi Handa <handa@m17n.org>
5874
5875 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
f088b054
KH
5876 (fontset_get_font_group): Remember that no font-group is specified
5877 for C.
9fe78804 5878
fa57de36
CY
58792009-01-27 Chong Yidong <cyd@stupidchicken.com>
5880
930600e9
CY
5881 * fns.c (concat): Check for string overflow (bug#1787).
5882
fa57de36
CY
5883 * undo.c (undo_limit, undo_strong_limit, Vundo_outer_limit):
5884 Quadruple undo limits (bug#1501).
5885
7179ce7b
KH
58862009-01-27 Kenichi Handa <handa@m17n.org>
5887
5888 * ftfont.c (ftfont_has_char): If the arg FONT is a font-object,
5889 directly use GT_Get_Char_index.
5890
5891 * xftfont.c (struct xftfont_info): New member `index'.
5892
5893 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
51d861de 5894 (Ffontset_font): Adjust for the change of fontset entry.
7179ce7b 5895
5be8fcc0
CY
58962009-01-26 Kenichi Handa <handa@m17n.org>
5897
5898 * fontset.c (fontset_find_font): Fix handling of non-cons return
5899 value of fontset_get_font_group.
5900 (fontset_font): Revert last change.
5901
19ae3e61
JR
59022009-01-26 Jason Rumney <jasonr@gnu.org>
5903
5904 * w32font.c (w32font_list_internal): Return quickly if registry is
5905 unknown. Simplify final return.
5906 (add_font_entity_to_list): Break complex logic down into more
5907 manageable chunks. Move unknown registry check to
5908 w32font_list_internal.
5909
8612b71a
AR
59102009-01-25 Adrian Robert <Adrian.B.Robert@gmail.com>
5911
5912 Changes to remove Feval calls from GUI under NS.
5913
d8038940
JB
5914 * nsterm.h: Move KEY_NS_... definitions here from nsterm.m.
5915 Add NS_TOGGLE_TOOLBAR, NS_PUT_WORKING_TEXT, NS_UNPUT_WORKING_TEXT.
8612b71a
AR
5916 Remove NS_INSERT_WORKING_TEXT, NS_DELETE_WORKING_TEXT.
5917
5918 * nsterm.m: Move KEY_NS_... definitions to nsterm.h.
5919 (EmacsView-toggleToolbar:): Use KEY_NS_TOGGLE_TOOLBAR.
5920 (EmacsView-setMarkedText:,-deleteWorkingText:): Use NS_TEXT_EVENT
5921 instead of NON_ASCII_KEYSTROKE_EVENT.
5922 (EmacsApp-terminate:): Use KEY_NS_POWER_OFF instead of Feval.
5923 (EmacsApp-applicationShouldTerminate:): Query user.
5924 (EmacsPreferencesController-runHelp:): Use KEY_NS_INFO_PREFS
5925 instead of Feval.
5926
5927 * termhooks.h (NS_TEXT_EVENT): New event type under HAVE_NS.
5928
5929 * keyboard.c (kbd_buffer_get_event): Check for it.
5930 (keys_of_keyboard): Define lispy keys for
5931 ns-put/unput-working-text.
5932
5933 * nsmenu.m (ns_popup_dialog): Resync window setting with X and W32
5934 versions.
5935 (EmacsDialog-runDialogAt:): Use NSModalPanelRunLoopMode.
5936
6288ae55
CY
59372009-01-25 Chong Yidong <cyd@stupidchicken.com>
5938
5939 * dispnew.c (buffer_posn_from_coords): Use Fset_buffer instead of
64cc3cf6 5940 setting current_buffer directly. (Bug#2044)
6288ae55 5941
289e7f8f
CY
59422009-01-24 Chong Yidong <cyd@stupidchicken.com>
5943
5ce87308 5944 * fontset.c (fontset_font): If we know there is no font, don't do
d8038940 5945 any work. (Bug#1952, bug#1990).
5ce87308 5946
64cc3cf6 5947 * font.c (font_parse_xlfd): Handle patterns of length < 2. (Bug#1802)
289e7f8f 5948
b3243e6f
AR
59492009-01-23 Adrian Robert <Adrian.B.Robert@gmail.com>
5950
5951 * emacs.c (main): Do fork+exec under --daemon in Cocoa.
d900b2af
AR
5952 (ns_no_defaults): New declaration.
5953 (main): Use it.
e0d2e69a 5954
d900b2af 5955 * nsterm.h (ns_no_defaults): New declaration.
e0d2e69a 5956
d900b2af 5957 * nsfns.m (x_get_string_resource): Don't read when ns_no_defaults.
e0d2e69a 5958
d900b2af
AR
5959 * nsterm.m (ns_no_defaults): New variable.
5960 (ns_initialize): Don't read defaults when ns_no_defaults.
5961 (EmacsView-readSelectionFromPasteboard:)
5962 (writeSelectionToPasteboard:types:): New stubbed-out methods for
d8038940 5963 NSServicesRequests protocol. (Bug#1435)
27521ca6
AR
5964 (ns_dumpglyphs_stretch): New function.
5965 (ns_draw_glyph_string): Use it, parallel Yamamoto Mitsuharu change
d8038940 5966 of 2008-11-15 to other terms. (Bug#615)
b3243e6f 5967
e0d2e69a
AR
5968 * nsimage.m (setPixmapData:): Set to ignore image DPI.
5969
3ac71f5d
CY
59702009-01-23 Giorgos Keramidas <keramida@freebsd.org> (tiny change)
5971
5972 * alloc.c (mark_stack): Use "flushw" instead of "ta 3" assembly
5973 call for Sparc64.
5974
3fe53a83
AR
59752009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
5976
5977 * nsfns.m:
5978 * nsgui.h:
5979 * nsmenu.m:
5980 * nsselect.m:
5981 * nsterm.h:
5982 * nsterm.m: Remove '23' comments that indicated code added during
5983 update from emacs-20 -> emacs-23.
5984
10f87c6f 59852009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
a3b53a85
AR
5986
5987 * nsterm.m (EmavsView-keyDown:): Treat nil as Qnone for
3a88a825 5988 ns_alternate_modifier. (Bug#1217)
a3b53a85 5989
c7cef62d
AR
5990 * nsmenu.m (EmacsMenu-parseKeyEquiv:, addItemWithWidgetValue:):
5991 Display all shortcuts, including those w/o super modifier.
5992
575fb8bd
AR
5993 * nsfns.m (ns-read-file-name): Fix typo in assignment statement.
5994
918b848b
CY
59952009-01-22 Chong Yidong <cyd@stupidchicken.com>
5996
5997 * fileio.c (Vwrite_region_post_annotation_function)
5998 (Vwrite_region_annotation_buffers): New vars.
5999 (build_annotations_unwind): Just reset
6000 Vwrite_region_annotation_buffers.
6001 (Fwrite_region): Initialize Vwrite_region_annotation_buffers.
6002 Call write-region-post-annotation-function.
6003 (build_annotations): Add to Vwrite_region_annotation_buffers if
6004 buffer changes.
6005
a39e2539
AR
60062009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
6007
6008 * nsterm.h (EmacsApp-setAppleMenu:): Conditionalize more correctly on
6009 Tiger.
51d861de
SM
6010 * nsfns.m (ns_do_applescript):
6011 Conditionalize typeUTF16ExternalRepresentation on Tiger.
a39e2539 6012
35ed44db
AR
60132009-01-21 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
6014
6015 * nsterm.m (EV_TRAILER): Always use emacsframe for frame_or_window.
6016
cbe0b5bf
AR
60172009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
6018
6019 * nsmenu.m (NSMENUPROFILE): Change #if style.
4c7077c3 6020
6049d3a0
AR
6021 * nsterm.h (EmacsPrefsController): Add -setPanelFromDefaultValues.
6022
6023 * nsterm.m (x_set_frame_alpha): Add prototype.
a9b4df69
AR
6024 (ns_fake_keydown, EmacsView-keyUp:): New variable and function to
6025 handle Ctrl-tab. (Bug#1841)
6026 (ns_get_color): Use unsigned long long for scanned hex string value.
6027 (ns_term_shutdown): Abort on non SIGTERM signals.
e889fa06 6028 (EmacsPrefsController-setDefaultFont:,-setColors:): Raise the frame.
b71ac3dd 6029 (EmacsPrefsController-setPanelFromDefaultValues): New function.
3a88a825 6030 (EmacsPrefsController-resetToDefaults:): Use it. (Bug#1801)
35ed44db 6031 (ns_font_to_xlfd, ns_fontname_to_xlfd): Remove, unused.
d3810c21 6032 (ns_defined_color): Fix settings of the XColor variable fields:
3a88a825 6033 red,green,blue scale to 2-byte, pixel's parts to 1-byte. (Bug#1663)
cbe0b5bf 6034
d3810c21 6035 * nsimage.m (EmacsImage+allocInitFromFile:): Set to ignore image
3a88a825 6036 DPI. (Bug#1316)
d3810c21
AR
6037 (EmacsImage-setPixelAtX:Y:toRed:green:blue:alpha:): Fix color
6038 values in onTiger section.
4c7077c3 6039
e301e634
CY
60402009-01-19 Chong Yidong <cyd@stupidchicken.com>
6041
7f82490b
CY
6042 * xfaces.c (Finternal_set_lisp_face_attribute, Fx_list_fonts):
6043 Check return value of font_spec_from_name.
64cc3cf6 6044 (Fx_list_fonts): Doc fix. (Bug#1951)
7f82490b
CY
6045
6046 * font.c (font_spec_from_name): Return Qnil if font name could not
6047 be parsed.
6048 (font_parse_name): Treat a `?' character as part of an XLFD.
6049
e301e634
CY
6050 * fns.c (Fsubstring): Doc fix.
6051
1c0db158
KH
60522009-01-19 Kenichi Handa <handa@m17n.org>
6053
51d861de 6054 * ftfont.c (ftfont_lookup_cache): Check the return value of FcFontList.
1c0db158
KH
6055 (ftfont_list): Likewise.
6056
acf20901
JB
60572009-01-18 Juanma Barranquero <lekktu@gmail.com>
6058
fff4e459
JB
6059 * dbusbind.c (Fdbus_register_signal):
6060 * process.c (conv_sockaddr_to_lisp):
6061 * w32fns.c (Fw32_battery_status): Use empty_unibyte_string.
6062
acf20901
JB
6063 * callproc.c (Fgetenv_internal): Doc fix.
6064
e7abcdfb
CY
60652009-01-16 Chong Yidong <cyd@stupidchicken.com>
6066
6067 * xfns.c (x_make_gc): Don't allocate stipple member for gc_values;
6068 it is not even used.
6069
b60861e6
GM
60702009-01-16 Glenn Morris <rgm@gnu.org>
6071
6072 * font.c (Ffont_variation_glyphs): Silence compiler.
6073
8db52afe
JB
60742009-01-15 Juanma Barranquero <lekktu@gmail.com>
6075
6076 * sound.c (SOUND_WARNING): Use _snprintf, for MSVC compatibility.
6077 Reported by David Robinow <drobinow@gmail.com>.
6078
4cddb209
KH
60792009-01-15 Kenichi Handa <handa@m17n.org>
6080
51d861de 6081 * coding.c (detect_coding_system): Fix handling of null_byte_found.
4cddb209 6082
f247f67b
JR
60832009-01-14 Jason Rumney <jasonr@gnu.org>
6084
6085 * frame.c (x_set_font): Always store a font to the font parameter,
fff4e459 6086 never a fontset. (Bug#1562)
f247f67b 6087
f56a4450
KH
60882009-01-14 Kenichi Handa <handa@m17n.org>
6089
6090 * coding.c (TWO_MORE_BYTES): New macro.
fff4e459 6091 (detect_coding_utf_16): Use TWO_MORE_BYTES instead of ONE_MORE_BYTE.
f56a4450 6092
4e99855e
CY
60932009-01-13 Chong Yidong <cyd@stupidchicken.com>
6094
6095 * font.c (font_clear_prop): If clearing the family, clear the font
6096 width index too.
6097
fff4e459 6098 * xfaces.c (Finternal_set_lisp_face_attribute): Revert last change.
4e99855e 6099
24f01470
JB
61002009-01-12 Juanma Barranquero <lekktu@gmail.com>
6101
6102 * sound.c [WINDOWSNT] (SOUND_WARNING): New macro.
6103 (do_play_sound): Use it. Don't pass a hardcoded buffer size to mci
6104 functions, use sizeof.
6105
a41240a3
MR
61062009-01-12 Martin Rudalics <rudalics@gmx.at>
6107
6108 * keyboard.c (read_char): Fix case where last_nonmenu_event
6109 returned a bad value with submenus. (Bug#447)
6110
944636b8
CY
61112009-01-12 Chong Yidong <cyd@stupidchicken.com>
6112
6113 * xfaces.c (Finternal_set_lisp_face_attribute): If setting the
6114 family, clear the font width index too.
6115
0dad7c6f
JR
61162009-01-11 Jason Rumney <jasonr@gnu.org>
6117
6118 * keyboard.c (cmd_error_internal): Exit when errors occur before
6119 frame creation and not in daemon mode. (Bug#1836)
6120
7c2363af
CY
61212009-01-10 Chong Yidong <cyd@stupidchicken.com>
6122
6123 * xdisp.c (pos_visible_p): When iterator stops on the last glyph
6124 of a display vector, backtrack.
6125 (try_window_reusing_current_matrix): Check glyph type before
6126 referencing charpos member.
6127
97b1b294
EZ
61282009-01-10 Eli Zaretskii <eliz@gnu.org>
6129
6130 Fix Bug #876:
6131
6132 * coding.c (inhibit_null_byte_detection): New variable.
6133 (detect_coding, detect_coding_system): Don't pay attention to null
6134 bytes if inhibit_null_byte_detection is non-zero.
51d861de 6135 (syms_of_coding) <inhibit-null-byte-detection>: Declare and document.
97b1b294
EZ
6136 <inhibit-iso-escape-detection>: Doc fix.
6137
4624b6e3
JR
61382009-01-09 Jason Rumney <jasonr@gnu.org>
6139
6140 * w32font.c (add_font_entity_to_list): Don't report unknown
fff4e459 6141 Windows charset as any unrecognized registry. (Bug#1548)
4624b6e3
JR
6142 Only report Unicode Plane 2 fonts as unicode-sip.
6143
323b840c
CY
61442009-01-09 Chong Yidong <cyd@stupidchicken.com>
6145
51d861de
SM
6146 * xfaces.c (Fx_font_family_list): Delete function.
6147 Move compatibility version to faces.el.
323b840c 6148
51d861de 6149 * font.c (Ffont_family_list): Return a list of strings, not symbols.
323b840c 6150
eba7400d
MR
61512009-01-09 Martin Rudalics <rudalics@gmx.at>
6152
6153 * frame.c (x_set_frame_parameters): Remember requested value for
6154 fullscreen before it's reset by the parameter handler.
6155
4b09796d
GM
61562009-01-09 Glenn Morris <rgm@gnu.org>
6157
6158 * keyboard.c (last_command_char): For clarity, rename to...
46e722a9 6159 (last_command_event): ... and update all users.
4b09796d
GM
6160 (last_input_char): For clarity, rename to...
6161 (last_input_event): ... and update all users.
6162 (last-command-char, last-input-char): Move to subr.el as aliases.
6163 * cmds.c, commands.h: Update for last_command_char rename.
6164
14ccea62
CY
61652009-01-08 Chong Yidong <cyd@stupidchicken.com>
6166
51d861de 6167 * font.c (font_open_for_lface): Handle unspecified height attribute.
14ccea62 6168
5f004711
JR
61692009-01-08 Jason Rumney <jasonr@gnu.org>
6170
6171 * w32fns.c (Vx_pointer_shape, Vx_nontext_pointer_shape)
6172 (Vx_mode_pointer_shape, Vx_window_horizontal_drag_shape)
6173 (Vx_hourglass_pointer_shape, Vx_sensitive_text_pointer_shape):
6174 Don't declare.
fff4e459 6175 (syms_of_w32fns): Don't define x-pointer-shape variable. (Bug#1485)
5f004711
JR
6176 (x_create_tip_frame) [GLYPH_DEBUG]: Enable image debugging code.
6177
b71f6f73
KH
61782009-01-07 Kenichi Handa <handa@m17n.org>
6179
50b06221 6180 * fileio.c (Finsert_file_contents): In the case of replace,
f56a4450 6181 remember the coding system used for decoding in
50b06221
KH
6182 coding_system (Bug#1039).
6183
b71f6f73 6184 * coding.c (decode_coding_utf_8): Check byte_after_cr before
79a97217 6185 breaking the loop. (Bug#870)
b71f6f73
KH
6186 (decode_coding_utf_16, decode_coding_emacs_mule)
6187 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
6188 (decode_coding_charset): Likewise.
6189
56f668f7
MR
61902009-01-05 Martin Rudalics <rudalics@gmx.at>
6191
6192 * frame.c (x_set_frame_parameters): Make sure height (width) get
6193 applied when fullwidth (fullheight) is set. (Bug#1522)
6194
5da9424d
JB
61952009-01-04 Juanma Barranquero <lekktu@gmail.com>
6196
6197 * w32.c: Use 64-bit arithmetic to do FILETIME conversions. (Bug#1766)
6198 (utc_base): Declare as ULONGLONG, not long double.
6199 (convert_time_raw): Delete.
6200 (FILETIME_TO_U64, U64_TO_LISP_TIME): New macros.
6201 (initialize_utc_base): New function.
6202 (convert_time): Use FILETIME_TO_U64, initialize_utc_base.
6203 (convert_from_time_t): Use initialize_utc_base; compute result with
6204 64-bit arithmetic.
6205 (process_times): Use FILETIME_TO_U64, U64_TO_LISP_TIME.
6206
c4605e09
EZ
62072009-01-03 Eli Zaretskii <eliz@gnu.org>
6208
9acef61c 6209 * process.c (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess)
c4605e09
EZ
6210 (Qttname, Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime)
6211 (Qcutime, Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs)
6212 (Quser, Qgroup, Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime)
6213 [!subprocesses]: Define.
6214 (syms_of_process) [!subprocesses]: Intern and staticpro them.
6215 (Flist_system_processes, Fsystem_process_attributes)
6216 [!subprocesses]: Call list_system_processes and
6217 system_process_attributes instead of returning Qnil.
6218
9acef61c
JB
6219 * dosfns.c (system_process_attributes, list_system_processes):
6220 New functions.
c4605e09
EZ
6221
6222 * vm-limit.c (ret_lim_data) [MSDOS]: New function.
6223
6224 * sysdep.c (list_system_processes, system_process_attributes) [MSDOS]:
6225 Don't use the default (no-op) implementation.
6226
8b7d0a16
JR
62272009-01-03 Jason Rumney <jasonr@gnu.org>
6228
a6d46bc1
JR
6229 * keyboard.c (parse_modifiers_uncached): Wheel events are
6230 clicks (bug#687).
6231
8b7d0a16
JR
6232 * w32term.c (x_query_colors, x_query_color): New functions.
6233
6234 * image.c (x_to_xcolors, png_load): Eliminate W32 specific code.
6235 (svg_load_image): Cast returned pointers from dynamically loaded
6236 functions. Eliminate W32 specific code.
6237
bfe11752
DN
62382009-01-02 Dan Nicolaescu <dann@ics.uci.edu>
6239
89e2438a
DN
6240 * nsfns.m (x_set_foreground_color, x_set_background_color)
6241 (x_set_cursor_color, x_set_icon_name, x_explicitly_set_name)
6242 (x_set_title, x_set_icon_type, x_set_cursor_type): Rename to use
6243 x_ prefix instead of ns_. Update references.
6244 (syms_of_nsfns): Add a FIXME comment.
6245
6246 * nsterm.m (x_set_cursor_type): New prototype.
6247 (setValuesFromPanel): Use it instead of the old ns_ prefixed name.
6248
bfe11752
DN
6249 * sysdep.c (system_process_attributes): Provide Qtime and Qctime
6250 for Solaris instead of incorrectly providing Qutime and Qcutime.
6251
031da700
EZ
62522009-01-02 Eli Zaretskii <eliz@gnu.org>
6253
6254 * w32.c (process_times): Compute sum of utime and stime.
6255 (system_process_attributes): Add Qtime to the alist.
6256
6257 * sysdep.c (system_process_attributes): Compute Qtime and Qctime
6258 and add them to the alist.
6259
6260 * process.c (top level) <Qtime, Qctime>: New variables.
6261 (syms_of_process): staticpro them.
6262 (Fsystem_process_attributes): Add their documentation to the doc
6263 string.
6264
6265 * process.h: Declare Qtime and Qctime.
6266
df23bf08
JR
62672009-01-02 Jason Rumney <jasonr@gnu.org>
6268
9acef61c 6269 * image.c (Qgobject): New symbol.
df23bf08
JR
6270 (syms_of_image): Initialize it.
6271 (init_svg_functions): Load some functions from gobject library.
6272
5bbdf7aa
DN
62732009-01-01 Dan Nicolaescu <dann@ics.uci.edu>
6274
6275 * frame.c (make_terminal_frame): Remove redundant code and useless
6276 block.
6277
63136da6
AS
62782009-01-01 Andreas Schwab <schwab@suse.de>
6279
6280 * process.c (conv_sockaddr_to_lisp): Add workaround for
6281 getsockname bug on BSD.
6282
9ef69046
CY
62832009-01-01 Chong Yidong <cyd@stupidchicken.com>
6284
d6fafbe0
CY
6285 * xfns.c (x_create_tip_frame): Set border width of the X window.
6286
51d861de 6287 * xfaces.c (Finternal_set_lisp_face_attribute): Improve error message.
9ef69046 6288
f9c34147
JR
62892009-01-01 Jason Rumney <jasonr@gnu.org>
6290
9acef61c 6291 * w32term.c (x_new_font): Return font object, not fontset. (Bug#119)
f9c34147
JR
6292 Don't block input, as per earlier xterm.c changes.
6293
f5497e45
AR
62942008-12-31 Adrian Robert <Adrian.B.Robert@gmail.com>
6295
6296 * nsfns.m (ns_appkit_version_str): Rename from ns_appkit_version.
6297 (ns_appkit_version_int): New function.
6298 (x-server-version): Use ns_appkit_version_int and follow 21+
6299 convention of returning 3 integers.
6300
c19cab20
KH
63012008-12-30 Kenichi Handa <handa@m17n.org>
6302
6303 * character.h (CHAR_VARIATION_SELECTOR_P): New macro.
6304 (CHAR_SURROGATE_PAIR_P): New macro.
6305
6306 * font.h (struct font_driver): New member get_variation_glyphs.
6307
9acef61c 6308 * font.c (font_range): Don't require a font for a variation selector.
c19cab20
KH
6309 (Ffont_variation_glyphs): New function.
6310 (syms_of_font): Defsubr it.
6311
6312 * ftfont.c (ftfont_driver): Set the member get_variation_glyphs to
6313 ftfont_variation_glyphs.
6314 (setup_otf_gstring): New function.
6315 (ftfont_drive_otf): Use it.
6316 (ftfont_shape_by_flt): Handle variation selector.
6317 (ftfont_variation_glyphs): New function.
6318
28cd591f
MR
63192008-12-30 Martin Rudalics <rudalics@gmx.at>
6320
6321 * frame.c (Vemacs_iconified): Remove.
6322
7f714baf
JR
63232008-12-30 Jason Rumney <jasonr@gnu.org>
6324
6325 * frame.c (store_frame_param, x_get_arg): Enable newer code on
9acef61c 6326 WINDOWSNT too, as related changes have already been synced. (Bug#117)
7f714baf 6327
9d2d22ab
CY
63282008-12-30 Chong Yidong <cyd@stupidchicken.com>
6329
6330 * indent.c (Fvertical_motion): Don't advance iterator if we have
6331 reseated to the desired position.
6332
6333 * xdisp.c (move_it_to): Handle GET_FROM_STRETCH method when
6334 checking for pos match.
6335
545312c2
KH
63362008-12-30 Kenichi Handa <handa@m17n.org>
6337
1ede3eb6
KH
6338 * insdel.c (copy_text): To convert a non-ASCII char to unibyte,
6339 just get the low 8-bit of the code.
6340
545312c2
KH
6341 * font.c (font_intern_prop): Validate str as multibyte.
6342
bd7bbf29
DN
63432008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
6344
31e0750e
DN
6345 * dispextern.h (struct face): Move lface and hash from the middle
6346 of bitfields.
6347
bd7bbf29
DN
6348 * Makefile.in (INTERVALS_H): Rename from INTERVAL_SRC, update all users.
6349
b5672e7c
DN
63502008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
6351
6352 * Makefile.in (INTERVAL_SRC): Also depend on dispextern.h.
6353 (coding.o, dispnew.o, keymap.o, msdos.o): Depend on INTERVAL_SRC
6354 instead of intervals.h.
6355
d704470f
AS
63562008-12-26 Andreas Schwab <schwab@suse.de>
6357
6358 * keymap.c (map_keymap_char_table_item): Make a copy of KEY if it is a
6359 cons.
6360
54b33868
MR
63612008-12-26 Martin Rudalics <rudalics@gmx.at>
6362
6363 * textprop.c (Qminibuffer_prompt): New variable.
6364 (syms_of_textprop): Initialize it.
6365 * callint.c (Fcall_interactively): For `c', `k', and `K' prompt
6366 in minibuffer-prompt face. (Bug#1662)
6367
40b615d6
JR
63682008-12-25 Jason Rumney <jasonr@gnu.org>
6369
6370 * buffer.c (Fbuffer_swap_text): Use POINTER_TYPE.
6371
baae5c2d
JR
63722008-12-24 Jason Rumney <jasonr@gnu.org>
6373
6374 * ralloc.c (r_alloc_reset_variable): New function.
6375
6376 * buffer.c (Fbuffer_swap_text) [REL_ALLOC]: Reset ralloc's internal
9acef61c 6377 record of what points where. (Bug#716)
baae5c2d 6378
a9051c88
DN
63792008-12-22 Dan Nicolaescu <dann@ics.uci.edu>
6380
6381 * minibuf.c (read_minibuf): Follow the non-interactive case when
6382 running as a daemon, before detaching.
6383
8b146312
AS
63842008-12-22 Andreas Schwab <schwab@suse.de>
6385
6386 * buffer.c (init_buffer): Use realloc instead of xrealloc.
6387 * gtkutil.c (free_widget_value): Use xfree instead of free.
6388
56f2de10
MR
63892008-12-22 Martin Rudalics <rudalics@gmx.at>
6390
6391 * frame.c (delete_frame): New function derived from
6392 Fdelete_frame to handle Qnoelisp value for FORCE argument.
6393 Delete last frame iff FORCE equals Qnoelisp. (Bug#1450)
6394 (Fdelete_frame): Call delete_frame. Remove line from doc-string
6395 saying that FORCE non-nil doesn't run `delete-frame-functions'.
6396 * frame.h: Extern delete_frame.
6397 * window.c (window_loop):
6398 * terminal.c (delete_terminal):
6399 * xterm.c (x_connection_closed):
6400 * xfns.c (Fx_hide_tip):
9acef61c 6401 * w32fns.c (Fx_hide_tip): Call delete_frame instead of Fdelete_frame.
56f2de10 6402
1fc200d6
JR
64032008-12-21 Jason Rumney <jasonr@gnu.org>
6404
6405 * w32uniscribe.c (uniscribe_encode_char): Return FONT_INVALID_CHAR
6406 when character maps to .notdef character.
6407
5e252df2
SM
64082008-12-21 Stefan Monnier <monnier@iro.umontreal.ca>
6409
6410 * keyboard.c (cmd_error_internal): Don't exit in daemon mode, bug#1310.
6411
99b72cc4
JR
64122008-12-20 Jason Rumney <jasonr@gnu.org>
6413
6414 * frame.c (Fmake_terminal_frame): Raise an error when called from
9acef61c 6415 a graphical frame on Windows. (Bug#1325)
99b72cc4 6416
acc49a52
JD
64172008-12-20 Jan Djärv <jan.h.d@swipnet.se>
6418
6419 * frame.c (Fdelete_frame): Set f->menu_bar_vector to Qnil.
6420
6ea15123
CY
64212008-12-20 Chong Yidong <cyd@stupidchicken.com>
6422
6423 * minibuf.c (Fread_buffer): Doc fix.
6424
b2dab6c8
JR
64252008-12-20 Jason Rumney <jasonr@gnu.org>
6426
54ea0c87 6427 * fileio.c (Fexpand_file_name): Do not allow ../ to go beyond the
9acef61c 6428 server name in UNC paths. (Bug#719)
54ea0c87 6429
b2dab6c8 6430 * coding.c (decode_coding): Clear chars_at_source flag when using
9acef61c 6431 charbuf. (Bug#1035)
b2dab6c8 6432
6d1921be
DN
64332008-12-19 Daniel Engeler <engeler@gmail.com>
6434
6435 * sysdep.c (serial_configure): Fix typo.
6436
53934c98
DN
64372008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
6438
6439 * sysdep.c: Include alloca.h.
f4f634e8
DN
6440 (system_process_attributes): Add implementation for Solaris.
6441
6442 * s/sol2-10.h (HAVE_PROCFS, _STRUCTURED_PROC): New defines.
53934c98 6443
06e111a6
DN
64442008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
6445
6446 Reorganize implementation of Flist_system_processes and
6447 Fsystem_process_attributes. No functional changes.
6448 * process.c: Don't #include pwd.h, grp.h and limits.h.
6449 (Flist_system_processes): Just call list_system_processes.
6450 (Fsystem_process_attributes): Just call system_process_attributes.
6451 (procfs_list_system_processes, time_from_jiffies)
6452 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
6453 (procfs_get_total_memory, procfs_system_process_attributes): Move ...
6454
6455 * sysdep.c: ... here. Include pwd.h, grp.h and limits.h.
6456 (list_system_processes): Rename from
6457 procfs_list_system_processes. Enclose in #ifdef HAVE_PROCFS.
6458 Provide a do nothing implementation.
6459 (system_process_attributes): Rename from
6460 procfs_list_system_processes.
6461 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
9acef61c 6462 (procfs_get_total_memory): Enclose in #ifdef GNU_LINUX.
06e111a6
DN
6463
6464 * w32.c (list_system_processes): Rename from
6465 w32_list_system_processes.
6466 (system_process_attributes): Rename from
6467 w32_system_process_attributes.
6468
6469 * s/gnu-linux.h (LISTPROC, PROCATTR): Remove.
6470
6471 * process.h (w32_list_system_processes)
6472 (w32_system_process_attributes): Remove.
362654a6
JB
6473 (list_system_processes, system_process_attributes):
6474 New prototypes.
06e111a6 6475
6a705b23
KH
64762008-12-19 Kenichi Handa <handa@m17n.org>
6477
6478 * xfont.c (xfont_decode_coding_xlfd): New function.
6479 (xfont_encode_coding_xlfd): New function.
6480 (xfont_list_pattern): Decode XLFD by iso-8859-1.
6481 (xfont_list): Decode and encode XLFD by iso-8859-1.
6482 (xfont_match): Likewise.
6483 (xfont_list_family): Likewise.
6484 (xfont_open): Likewise.
6485
d66c0241 6486 * ftfont.c (ftfont_open): Generate a multibyte string if given
6a705b23
KH
6487 names are utf-8.
6488
d66c0241 6489 * xftfont.c (xftfont_open): Generate a multibyte string if given
6a705b23
KH
6490 names are utf-8.
6491
5a130941
JD
64922008-12-18 Jan Djärv <jan.h.d@swipnet.se>
6493
6494 * gtkutil.c (xg_frame_resized): Remove check if rows/columns have
6495 changed.
bfd20325
JD
6496 (xg_tool_bar_proxy_callback): Put focus on the frame after we have
6497 clicked on a detached tool bar button.
5a130941 6498
fd95644b
DN
64992008-12-18 Dan Nicolaescu <dann@ics.uci.edu>
6500
6501 * emacs.c (main): Print and error and exit when no data is read
6502 from the pipe.
6503
e6eee6ae
JR
65042008-12-17 Jason Rumney <jasonr@gnu.org>
6505
6506 * w32font.c (w32font_has_char): Always return -1.
6507
a35dd56b
KH
65082008-12-16 Kenichi Handa <handa@m17n.org>
6509
6510 * font.c (font_open_entity): Fix previous change.
6511
0e3635c2
DN
65122008-12-16 Dan Nicolaescu <dann@ics.uci.edu>
6513
6514 * process.c: Include <limits.h>.
6515
d4835507 65162008-12-16 Chetan Pandya <pandyacus@sbcglobal.net> (tiny change)
b5356c39
CY
6517
6518 * font.c (font_update_drivers): Fix mistake in reconstructing the
6519 driver list.
6520
65212008-12-16 Chong Yidong <cyd@stupidchicken.com>
6522
6523 * font.c (font_clear_cache): Fix format of font cache data.
6524
e2cbc401
CY
65252008-12-15 Chong Yidong <cyd@stupidchicken.com>
6526
6527 * xftfont.c (xftfont_open): Free Xft font pattern if
6528 XftFontOpenPattern fails.
6529
6530 * xterm.c (x_free_frame_resources): Remove extraneous call to
6531 free_frame_faces.
6532
b131d535
CY
65332008-12-13 Chong Yidong <cyd@stupidchicken.com>
6534
6535 * xterm.c (x_delete_display): Move xim_close_dpy call to
6536 x_delete_terminal.
6537 (x_delete_terminal): Call xim_close_dpy.
6538
e6df5336
JR
65392008-12-13 Jason Rumney <jasonr@gnu.org>
6540
6541 * w32font.c (intern_font_name): New function.
6542 (add_font_name_to_list, w32_enumfont_pattern_entity): Use it.
6543 (w32font_open_internal, Fx_select_font): Decode font name.
6544 (fill_in_logfont, list_all_matching_fonts): Encode font name.
6545
6546 * w32font.h (intern_font_name): Declare new function.
6547
6548 * w32uniscribe.c (add_opentype_font_name_to_list):
6549 Use intern_font_name.
6550
20d68145
CY
65512008-12-13 Chong Yidong <cyd@stupidchicken.com>
6552
9f2554de
CY
6553 * frame.c (Fdelete_frame): Call free_font_driver_list.
6554
3d9bec9a
CY
6555 * font.c (free_font_driver_list): Implement missing function.
6556
20d68145
CY
6557 * w32term.c (w32_term_init): Don't initialize the image cache
6558 here; it will be done in init_frame_faces.
6559
6560 * xterm.h (struct xim_inst_t): Definition moved from xterm.c.
6561 (struct x_display_info): Remove unused member null_pixel. New
6562 member xim_callback_data.
6563
6564 * xterm.c (struct xim_inst_t): Definition moved to xterm.h.
6565 (xim_initialize): Save pointer to callback function data.
6566 (xim_close_dpy): Free callback function data. Call XCloseIM,
6567 reverting 2008-11-04 change by David Smith.
6568 (x_term_init): Don't initialize the image cache here; it will be
6569 done in init_frame_faces. Remove ancient "null_pixel" cruft.
6570 (x_delete_display): Free x_dnd_atoms member.
6571
96f9306b
KH
65722008-12-13 Kenichi Handa <handa@m17n.org>
6573
6dec9044
JB
6574 * font.c (font_rescale_ratio): Moved from xfaces.c.
6575 Argument type changed. Handle a font-spec too.
96f9306b 6576 (font_score): Check Vface_font_rescale_alist.
6dec9044 6577 (font_open_entity): Likewise. (Bug#1547)
96f9306b
KH
6578
6579 * xfaces.c (font_rescale_ratio): Moved to font.c.
6580
8d5b4964
CY
65812008-12-13 Chong Yidong <cyd@stupidchicken.com>
6582
6583 * xfns.c (Fx_wm_set_size_hint): Check if the frame is an X frame.
6584
e6df5336
JR
65852008-12-12 Jason Rumney <jasonr@gnu.org>
6586
6587 * w32fns.c (x_display_info_for_name, Fx_open_connection): Set
6588 Vwindow_system_version to the real w32 major version.
6589
97c6058a
DN
65902008-12-12 Dan Nicolaescu <dann@ics.uci.edu>
6591
6592 * term.c (init_tty): Move setting the terminal name before the
6593 potential user: maybe_fatal.
6594
ec4e88d7
CY
65952008-12-11 Chong Yidong <cyd@stupidchicken.com>
6596
d4835507
JB
6597 * term.c (tty_free_frame_resources): Renamed from delete_tty_output;
6598 all callers changed. Call free_frame_faces to free the face cache.
ec4e88d7 6599
b4233ec9
JR
66002008-12-11 Jason Rumney <jasonr@gnu.org>
6601
8ec71e23 6602 * w32font.c (fill_in_logfont): Don't assume symbol script means
9acef61c 6603 SYMBOL_CHARSET. (Bug#547)
8ec71e23 6604
b4233ec9 6605 * w32uniscribe.c (uniscribe_encode_char): Increase glyph buffer
9acef61c 6606 size for surrogates. (Bug#1096, bug#872)
b4233ec9 6607
011a0143
JB
66082008-12-11 Juanma Barranquero <lekktu@gmail.com>
6609
6610 * w32proc.c (Fw32_get_locale_info): Decode long form of locale name.
6611
3c309f34
JB
66122008-12-11 Juanma Barranquero <lekktu@gmail.com>
6613
6614 * process.c (Fsystem_process_attributes, syms_of_process):
6615 Fix typo in name of Ssystem_process_attributes.
6616 Reported by Ulrich Mueller <ulm@kph.uni-mainz.de>.
6617
fedc6ab5
JB
66182008-12-11 Juanma Barranquero <lekktu@gmail.com>
6619
6620 * syntax.c (Fmodify_syntax_entry): Doc fix.
6621
ba3de0e8
JB
66222008-12-10 Juanma Barranquero <lekktu@gmail.com>
6623
6624 * font.c (Ffont_spec): Move usage to end of docstring.
6625
174f1c74
JR
66262008-12-10 Jason Rumney <jasonr@gnu.org>
6627
6628 * w32font.c (Qcham): New symbol.
6629 (font_supported_scripts): Add cham, and comments for other new
6630 scripts in bitfield from OpenType spec.
9d32f818
JR
6631 (add_font_entity_to_list): Limit unicode-sip fonts to those that
6632 contain characters beyond the bmp.
174f1c74 6633
7b649478
KH
66342008-12-10 Kenichi Handa <handa@m17n.org>
6635
6636 * ftfont.c (fc_charset_table): Add "unicode-sip".
2ae37cf0 6637 (ftfont_spec_pattern): Lookup fc_charset_table for the registry
7b649478
KH
6638 Qunicode_sip.
6639
2133e2d1
JB
66402008-12-10 Juanma Barranquero <lekktu@gmail.com>
6641
6642 * coding.c (QCdefault_char): Rename from QCdefalut_char.
6643 (Fcoding_system_put): Use QCdefault_char.
6644 (syms_of_coding): Set QCdefault_char, not QCdefalut_char.
6645
9af886ee
CY
66462008-12-09 Chong Yidong <cyd@stupidchicken.com>
6647
74d819eb
CY
6648 * xftfont.c (syms_of_xftfont): Fix typo.
6649
4ccfa1c0 6650 * buffer.c (Fbuffer_swap_text): Signal error if swapping a dead buffer.
9af886ee 6651
7c19d3ae
DN
66522008-12-08 Dan Nicolaescu <dann@ics.uci.edu>
6653
6654 * emacs.c (main): Close daemon_pipe on exec.
6655
567826bb
CY
66562008-12-08 Chong Yidong <cyd@stupidchicken.com>
6657
6658 * termchar.h (struct tty): New members termcap_term_buffer and
6659 termcap_strings_buffer.
6660
6661 * term.c (encode_terminal_code): Free any previous memory blocks
4ccfa1c0 6662 before calling xmalloc for encode_terminal_src or encode_terminal_dst.
567826bb
CY
6663 (maybe_fatal): Buffer argument deleted. Don't free buffer here.
6664 All callers changed.
6665 (init_tty): Store termcap data and string buffers in new struct
6666 tty members termcap_term_buffer and termcap_strings_buffer.
6667 (delete_tty): Free them.
4ccfa1c0 6668 (syms_of_term): Initialize encode_terminal_src and encode_terminal_dst.
567826bb 6669
aa96c42b
SZ
66702008-12-07 Seiji Zenitani <zenitani@mac.com>
6671
6672 * nsfns.m (ns_set_background_color): Remove code duplication.
4ccfa1c0 6673 It was a substitute for face-transparency on OS X 10.3.
aa96c42b 6674
b7e1d896
CY
66752008-12-06 Chong Yidong <cyd@stupidchicken.com>
6676
6677 * coding.c (make_conversion_work_buffer): Disable buffer
6678 modification hooks in the work buffer.
6679
b5ec91a5
EZ
66802008-12-05 Eli Zaretskii <eliz@gnu.org>
6681
6682 * process.c (procfs_system_process_attributes): If `nread' has a
6683 negative value, assign zero to it.
6684
a5d2a52b
CY
66852008-12-05 Chong Yidong <cyd@stupidchicken.com>
6686
68c5540b 6687 * eval.c (Vdebug_on_error): Doc fix.
a5d2a52b 6688
7bf1bb21
KH
66892008-12-05 Kenichi Handa <handa@m17n.org>
6690
6691 * ftfont.c (ftfont_shape_by_flt): Use "combining" flt if the
6692 second character is a combining character.
6693
2fdc7d00
EZ
66942008-12-05 Eli Zaretskii <eliz@gnu.org>
6695
6696 * process.c (procfs_system_process_attributes): Don't use cmd,
6697 cmdsize, and q without initializing them first.
6698
bf6bfba8
JR
66992008-12-04 Jason Rumney <jasonr@gnu.org>
6700
6701 * w32font.c (w32font_draw): Initialize orig_clip before getting
6702 it, and delete it when finished.
6703
a3b1a468
DN
67042008-12-04 Dan Nicolaescu <dann@ics.uci.edu>
6705
6706 * keyboard.c (kbd_buffer_get_event): Follow the non-interactive
6707 case when running as a daemon before detaching.
6708
8b8be8eb
JB
67092008-12-03 Juanma Barranquero <lekktu@gmail.com>
6710
805f2638 6711 * w32.c (init_environment): Don't unload library shell32.dll.
8b8be8eb 6712
b1bde622
KH
67132008-12-03 Kenichi Handa <handa@m17n.org>
6714
e500c47d
KH
6715 * font.c (font_at): Set `multibyte' at first.
6716
ca516334
KH
6717 * coding.c (decode_coding_charset): Check type of an element of
6718 vector VALIDS.
7bf1bb21 6719 (encode_coding_emacs_mule): Be sure to set `code'.
ca516334 6720
4ccfa1c0 6721 * fontset.c (face_for_char): Handle invalid charset property correctly.
b1bde622
KH
6722 (font_for_char): Likewise.
6723
1e5ecd37
CY
67242008-12-03 Chong Yidong <cyd@stupidchicken.com>
6725
d5b01609 6726 * font.c (Fopen_font): Compute pixel size correctly.
ba207571
CY
6727 (font_update_lface): Handle fonts with corrupted size specs,
6728 i.e. non-int and non-float.
d5b01609 6729
11e3a6e4 6730 * ftfont.c (ftfont_match): Initialize entity variable.
9a48c8cb 6731 (ftfont_resolve_generic_family): Avoid using uninitialized var.
8adb3a3b 6732 (ftfont_list_family): Initialize list var earlier.
11e3a6e4 6733
ab06788b
CY
6734 * xselect.c (Fx_get_cut_buffer_internal): Fix memory leak.
6735
1e5ecd37 6736 * xterm.c (x_draw_glyph_string): Fall back on
0cff82ab 6737 underline_minimum_offset for underline position.
1e5ecd37 6738
63c125ab
DN
67392008-12-03 Dan Nicolaescu <dann@ics.uci.edu>
6740
6741 * keyboard.c (read_char_help_form_unwind): Specify the type for ARG.
6742
6743 * character.c (c_string_width): Specify the type for LEN.
6744
3a8406e1
KH
67452008-12-03 Kenichi Handa <handa@m17n.org>
6746
4ccfa1c0 6747 * coding.c (decode_coding_utf_16): Initialize consumed_chars_base to 0.
453b38f0 6748 (decode_coding_utf_8): Likewise.
4ccfa1c0 6749 (detect_coding_system): Initialize utf_16_le_eol to -1, val to Qnil.
4533845d 6750 (produce_chars): Initialize consumed_chars to 0.
3a8406e1 6751
651df7d9
CY
67522008-12-02 Chong Yidong <cyd@stupidchicken.com>
6753
6754 * keyboard.c (make_lispy_position): Only use PT if the selected
6755 window is current.
6756
1f625c6c
AS
67572008-12-02 Andreas Schwab <schwab@suse.de>
6758
f7741ce9
AS
6759 * font.c (font_unparse_fcname): Fix use of uninitialized variable.
6760
1f625c6c
AS
6761 * doprnt.c (doprnt1): Fix size of charbuf.
6762
92bc2678
CY
67632008-12-02 Chong Yidong <cyd@stupidchicken.com>
6764
6765 * keyboard.c (timer_check): Revert last change.
6766
93b9e8cc
JB
67672008-12-02 Juanma Barranquero <lekktu@gmail.com>
6768
6769 * makefile.w32-in ($(BLD)/w32console.$(O)): Fix silly, silly typo.
6770
fd7a37d5
JB
67712008-12-01 Juanma Barranquero <lekktu@gmail.com>
6772
6773 * makefile.w32-in: Update dependencies.
6774 (CONFIG_H): Add $(EMACS_ROOT)/nt/inc/sys/time.h.
6775
c115043b
AS
67762008-12-01 Andreas Schwab <schwab@suse.de>
6777
6778 * font.c (register_font_driver): Use xmalloc.
6779 (font_put_frame_data): Likewise.
6780
f5668d2a
CY
67812008-12-01 Chong Yidong <cyd@stupidchicken.com>
6782
860d96be
CY
6783 * xfaces.c (realize_x_face): Make abort condition clearer.
6784
f5668d2a
CY
6785 * gtkutil.c (update_frame_tool_bar): Initialize variable.
6786
379c17e7
CY
67872008-11-30 Chong Yidong <cyd@stupidchicken.com>
6788
6789 * keyboard.c (timer_check): After a timer runs, ensure that the
6790 selected window's buffer is current.
6791
35f36d65
JB
67922008-11-30 Juanma Barranquero <lekktu@gmail.com>
6793
f952c61c
JB
6794 * makefile.w32-in ($(BLD)/abbrev.$(O)): Remove.
6795 It was accidentally restored by the Unicode merge.
6796
35f36d65
JB
6797 * w32proc.c (Fw32_get_locale_info): Fix typo in docstring.
6798
b23077df
JB
67992008-11-29 Juanma Barranquero <lekktu@gmail.com>
6800
6801 * w32proc.c: Include "coding.h".
6802 (Fw32_short_file_name): Encode filename passed to Windows API.
6803 (Fw32_long_file_name): Encode filename passed to Windows API and
6804 decode back the result. (Bug#1433)
6805
b8ebe9dd
KH
68062008-11-29 Kenichi Handa <handa@m17n.org>
6807
8cc53f96
KH
6808 * charset.h (CHAR_CHARSET_P): Check if the encoder is loaded or
6809 not before accessing it.
6810
b8ebe9dd
KH
6811 * charset.c (Fdefine_charset_internal): After calculating
6812 min_char, max_char, and fastmap, copy the charset structure again.
6813 (encode_char): Fix the previous change.
6814
59bc82c0
SZ
68152008-11-28 Seiji Zenitani <zenitani@mac.com>
6816
6817 * frame.c (x_set_alpha) [NS_IMPL_COCOA]: Call x_set_frame_alpha.
6818
6819 * nsfns.m (ns_frame_parm_handlers): Set alpha handler.
6820
6821 * nsterm.m (x_set_frame_alpha): New function.
6822
32247e3d
EZ
68232008-11-27 Eli Zaretskii <eliz@gnu.org>
6824
6825 * xfaces.c (Fx_font_family_list, syms_of_xfaces): Fix last change.
6826
b003e5ff
JB
68272008-11-27 Juanma Barranquero <lekktu@gmail.com>
6828
6829 * w32font.c (add_font_entity_to_list): Pass the right LOGFONT
6830 pointer to check_face_name.
6831
708550f5
KH
68322008-11-27 Kenichi Handa <handa@m17n.org>
6833
6834 * category.h (SET_CATEGORY_SET): Call set_category_set.
6835 (set_category_set): Extern it.
6836
6837 * category.c (hash_get_category_set): New function.
6838 (Fmodify_category_entry): Adjusted for the change of
6839 char_table_ref_and_range. Call hash_get_category_set to get a
6840 category set to store in the table.
6841
6842 * character.h (MAYBE_UNIFY_CHAR): Call maybe_unify_char instead of
6843 Funify_charset.
6844
2ae37cf0 6845 * charset.h (enum charset_method): Delete CHARSET_METHOD_MAP_DEFERRED.
708550f5
KH
6846 (DECODE_CHAR): Check if the decoder vector is ready.
6847 (ENCODE_CHAR): Check if the encoder char-table is ready.
6848 (maybe_unify_char): Extern it.
6849
6850 * charset.c (Vchar_unified_charset_table): Delete it.
6851 (inhibit_load_charset_map): New variable.
6852 (temp_charset_work): New variable.
6853 (SET_TEMP_CHARSET_WORK_ENCODER, GET_TEMP_CHARSET_WORK_ENCODER)
6854 (SET_TEMP_CHARSET_WORK_DECODER, GET_TEMP_CHARSET_WORK_DECODER):
6855 New macros.
6856 (load_charset_map): Meaning of control_flag changed. If
6857 inhibit_load_charset_map is nonzero, setup a table in
6858 temp_charset_work.
6859 (load_charset): New argument control_flag.
6860 (map_charset_for_dump): New function.
6861 (map_charset_chars): If inhibit_load_charset_map is nonzero, use
6862 map_charset_for_dump.
6863 (Fdefine_charset_internal): If the charset method is MAP, load
6864 mapping tables by calling load_charset.
6865 (Funify_charset): Don't load a mapping table but directly set
6866 Vchar_unify_table.
6867 (maybe_unify_char): New function.
6868 (decode_char): Don't handle the deleted method MAP_DEFERRED.
6869 Handle the case of inhibit_load_charset_map being nonzero.
6870 (encode_char): Don't handle the deleted method MAP_DEFERRED.
6871 Handle the case of inhibit_load_charset_map being nonzero.
6872 (Fclear_charset_maps): Just free temp_charset_work.
6873 (syms_of_charset): Make `inhibit-load-charset-map' a Lisp
6874 variable.
6875
6876 * chartab.c (sub_char_table_ref_and_range): Adjusted for the
6877 change of char_table_ref_and_range.
6878 (char_table_ref_and_range): Change the meaning of argument FROM
6879 and TO. Now the caller must provide initial values for *FROM
6880 and *TO.
6881
6882 * fontset.c (fontset_add): Adjusted for the change of
6883 char_table_ref_and_range.
6884 (fontset_get_font_group): Likewise.
6885 (Ffontset_info): Likewise.
6886
6887 * keymap.c (describe_vector): Adjusted for the change of
6888 char_table_ref_and_range. For char-table, put boundary between
6889 non-ASCII and 8-bit characters.
6890
6891 * print.c (print_object): For bool-vector, delete unnecessary
6892 check of ASCII_BYTE_P.
6893
9196133b
JR
68942008-11-26 Jason Rumney <jasonr@gnu.org>
6895
6896 * w32font.c (w32font_open_internal): Don't include external
9acef61c 6897 leading in font height. (Bug#879)
9196133b 6898
9f688acf
GM
68992008-11-26 Glenn Morris <rgm@gnu.org>
6900
6901 * xfaces.c (Fx_font_family_list): Replace lisp/term/pc-win.el
6902 redefinition with ifdef. (Bug#1383)
6903
90d19aff
AR
69042008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
6905
6906 * nsterm.m (ns_get_color): Handle long hex strings (fixes bug #1044).
6907
4ccfa1c0 69082008-11-24 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
90d19aff
AR
6909
6910 * nsterm.m (-otherMouseDown:, -otherMouseUp:, -otherMouseDragged):
6911 New EmacsView methods.
6912 (EV_UDMODIFIERS, EV_BUTTON): Add OtherMouse constants.
6913 Fixes bug #1048,1357,1414.
6914
69152008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
6916
6917 Fix bug #1362.
6918 * image.c (x_clear_image_1): Do not free background under HAVE_NS, it
6919 is not an indexed color.
6920 * nsterm.m (free_indexed_color): Add argument checking.
6921 * nsfns.m: Move config.h to before system includes (advised by Dan N.).
6922
e7d5ecb3
CY
69232008-11-24 Chong Yidong <cyd@stupidchicken.com>
6924
6925 * minibuf.c (Fcompleting_read, Vminibuffer_completion_confirm):
6926 Document confirm-after-completion value for
6927 minibuffer-completion-confirm.
6928
c285743c
JR
69292008-11-24 Jason Rumney <jasonr@gnu.org>
6930
6931 * w32font.c (check_face_name): Use xstrcasecmp. Avoid compiler
6932 warning.
6933
b0857706
JR
69342008-11-23 Jason Rumney <jasonr@gnu.org>
6935
6936 * w32uniscribe.c (uniscribe_encode_char): Ensure context is
6937 restored before returning.
6938
6939 * w32font.c (check_face_name): New function.
6940 (add_font_entity_to_list): Use it to filter out common substituted
9acef61c 6941 fonts. (Bug#642)
b0857706 6942
ee50ff07
MR
69432008-11-22 Martin Rudalics <rudalics@gmx.at>
6944
6945 * buffer.c (Fswitch_to_buffer): Reword and mention new option
6946 confirm-nonexistent-file-or-buffer in doc-string.
6947
b8ff72fa
SM
69482008-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
6949
6950 * buffer.c (Fbuffer_swap_text): Remove redundant marker manipulation.
6951 Fix copy/paste typo. Add checks.
6952
cee53ed4
KH
69532008-11-21 Kenichi Handa <handa@m17n.org>
6954
6955 * coding.c (detect_coding_iso_2022): Reject invalid composition
6956 sequence.
6957 (DECODE_COMPOSITION_START): If the current source is the last
6958 block, and the current composition doesn't end, regard this
6959 sequence as invalid.
6960 (decode_coding_iso_2022): Handle invalid composition sequence.
6961
f6ef1e65
MR
69622008-11-20 Martin Rudalics <rudalics@gmx.at>
6963
6964 * window.c (coordinates_in_window): Don't return
6965 ON_VERTICAL_BORDER for the rightmost position of a mode/header
6966 line when the window is not the rightmost one. (Bug#1372)
6967
e08b1705
MR
69682008-11-16 Ben North <ben@redfrontdoor.org> (tiny change)
6969
6970 * buffer.c (syms_of_buffer): Fix doc-string of cursor-type.
6971
ad98e89f
EZ
69722008-11-15 Eli Zaretskii <eliz@gnu.org>
6973
6974 * msdos.c (run_msdos_command): Don't call dos_ttcooked, dos_ttraw,
6975 and bright_bg if noninteractive is non-zero.
6976
fb098a4b
CY
69772008-11-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6978
6979 * xterm.c (x_draw_glyph_string): For stretch glyphs, don't call
6980 x_draw_glyph_string_background.
6981
6982 * w32term.c (x_draw_glyph_string): Likewise.
6983
ce952b6e
CY
69842008-11-15 Chong Yidong <cyd@stupidchicken.com>
6985
6986 * xterm.c (x_draw_glyph_string): Stop drawing the background of
6987 the next glyph string once past the overhang width.
6988
6989 * nsterm.m (ns_draw_glyph_string): Likewise.
6990
6991 * w32term.c (x_draw_glyph_string): Likewise.
6992
26ea7079
CY
69932008-11-14 Fabrice Popineau <fabrice.popineau@supelec.fr> (tiny change)
6994
6995 * fileio.c (Finsert_file_contents): Decrement specpdl_ptr to avoid
6996 double file close.
6997
1c33c906
MR
69982008-11-14 Martin Rudalics <rudalics@gmx.at>
6999
7000 * window.c (window_loop): In DELETE_BUFFER_WINDOWS case, reset
7001 dedicated status of window before attempting to display another
7002 buffer in it.
7003
8fc29035
JB
70042008-11-14 Juanma Barranquero <lekktu@gmail.com>
7005
7006 * msdos.c (Fmsdos_long_file_names):
7007 (syms_of_msdos) <dos-unsupported-char-glyph>:
7008 * dosfns.c (Fint86): Fix typos in docstrings.
7009
55fb4286
EZ
70102008-11-14 Eli Zaretskii <eliz@gnu.org>
7011
7012 * makefile.w32-in (OBJ1, WIN32OBJ): Fix whitespace.
7013
3fda0315
KY
70142008-11-14 Katsumi Yamaoka <yamaoka@jpl.org>
7015
7016 * puresize.h (BASE_PURESIZE): Increase to 1260000.
7017
7e849c17
CY
70182008-11-12 Michal Nazarewicz <mina86@tlen.pl> (tiny change)
7019
7020 * frame.c (x_set_alpha): Set alpha to -1 if nil given.
7021
7022 * frame.h: Negative alpha means "don't touch".
7023
7024 * w32term.c (x_set_frame_alpha): Do nothing if alpha is negative.
7025
7026 * xterm.c (x_set_frame_alpha): Do nothing if alpha is negative.
7027
b9fd67bd
DN
70282008-11-12 Dan Nicolaescu <dann@ics.uci.edu>
7029
7030 * hftctl.c:
7031 * chpdef.h:
7032 * acldef.h: Remove files used only for systems no longer supported.
7033
7034 * Makefile.in: Fix .o alphabetical ordering.
7035 (hftctl.o): Remove dependency, file removed.
7036 (keymap.o, print.o): Depend on charset.h.
7037
d5998e03
KH
70382008-11-10 Kenichi Handa <handa@m17n.org>
7039
2ae37cf0 7040 * character.c (Fget_byte): Fix and make it faster for unibyte target.
d5998e03 7041
be70e183
CY
70422008-11-08 Chong Yidong <cyd@stupidchicken.com>
7043
7044 * dired.c (file_name_completion): If completion_ignore_case is
7045 enabled, ignore case when checking completion-regexp-list.
7046
7cf94eac
EZ
70472008-11-08 Eli Zaretskii <eliz@gnu.org>
7048
7049 * vm-limit.c (get_lim_data): Fix last change.
7050
ee107a89
KH
70512008-11-08 Kenichi Handa <handa@m17n.org>
7052
7053 * character.c (Fget_byte): New function.
7054 (syms_of_character): Defsubr Fget_byte.
7055
5fd15622
CY
70562008-11-07 Chong Yidong <cyd@stupidchicken.com>
7057
7058 * xdisp.c (try_window_reusing_current_matrix): Ensure that window
7059 cursor position is valid after scrolling.
7060
13d62fad
JB
70612008-11-06 Juanma Barranquero <lekktu@gmail.com>
7062
7063 * fns.c (Frandom): Rename arg N to LIMIT to match the docs; doc fix.
7064
a1dd2936
GM
70652008-11-06 Glenn Morris <rgm@gnu.org>
7066
7067 * xterm.c (handle_one_xevent): Don't let popup menus cause
7068 mouse-autoselect-window related window switching. (Bug#1261)
7069
860cd236
CY
70702008-11-04 David Smith <davidsmith@acm.org> (tiny change)
7071
7072 * xterm.c (xim_close_dpy): Avoid double-free on X11R6 XIM.
7073
653a3150
AS
70742008-11-04 Andreas Schwab <schwab@suse.de>
7075
7076 * xfns.c (Fx_wm_set_size_hint): Add missing return value.
7077
870f5cac
CY
70782008-11-03 Chong Yidong <cyd@stupidchicken.com>
7079
7080 * xfns.c (Fx_wm_set_size_hint): New function.
7081
1e02f3cb
MR
70822008-11-03 Martin Rudalics <rudalics@gmx.at>
7083
7084 * textprop.c (Fprevious_single_char_property_change): Return 0
7085 when there's no change in a string. (Bug#1301)
7086
e630dfc6
MR
70872008-11-02 Martin Rudalics <rudalics@gmx.at>
7088
7089 * frame.c (do_switch_frame): New argument NORECORD passed to
7090 Fselect_window.
7091 (Fselect_frame): New argument NORECORD passed to
7092 do_switch_frame.
7093 (Fset_frame_selected_window): New argument NORECORD passed to
7094 Fselect_frame.
7095 (Fhandle_switch_frame, Fdelete_frame): Handle NORECORD argument
7096 in call of do_switch_frame.
7097 (Fset_mouse_position, Fset_mouse_pixel_position, Fraise_frame):
7098 Handle NORECORD argument in call of Fselect_frame.
7099 * lisp.h (do_switch_frame, Fselect_frame)
7100 (Fset_frame_selected_window): Adjust declarations.
7101 * window.c (select_frame_norecord): New function.
7102 (run_window_configuration_change_hook): Use it and call
7103 Fselect_frame with NORECORD set.
7104 (Fselect_window): Pass NORECORD to Fselect_frame.
7105 (Fset_window_configuration): Handle NORECORD argument in call of
7106 do_switch_frame.
7107 * minibuf.c (choose_minibuf_frame): Handle NORECORD in call of
7108 Fset_frame_selected_window.
7109 * keyboard.c (command_loop_1): Handle NORECORD in call of
7110 Fselect_frame (currently ifdefd).
7111
9020b223
GM
71122008-11-02 Ulrich Mueller <ulm@kph.uni-mainz.de>
7113
7114 * emacs.c (USAGE2): Untabify.
7115
793ffee8
SM
71162008-11-01 Stefan Monnier <monnier@iro.umontreal.ca>
7117
7118 * composite.c (fill_gstring_header): Fix copy/paste typo.
7119
ab6d1131
MR
71202008-10-31 Martin Rudalics <rudalics@gmx.at>
7121
7122 * window.c (Fnext_window, Fprevious_window): Rewrite doc-string.
7123 (Fother_window): Rename argument and rewrite doc-string.
7124 (select_window_norecord): Fix return value. (Bug#1276)
7125
601a9cf1
JB
71262008-10-30 Juanma Barranquero <lekktu@gmail.com>
7127
7128 * w32fns.c (x_create_tip_frame): Prevent default foreground color for
7129 new frames overriding foreground for tooltips. Based on similar patch
7130 from Martin Rudalics <rudalics@gmx.at>. (Bug#1032)
7131
813b0652
CY
71322008-10-29 Chong Yidong <cyd@stupidchicken.com>
7133
7134 * emacs.c (Fdaemon_initialized): Initialize nfd.
7135
4414f58f
MR
71362008-10-29 Martin Rudalics <rudalics@gmx.at>
7137
7138 * window.c (Fwindow_height, Fdelete_window, set_window_buffer)
7139 (Fwindow_text_height): Clarify doc-strings.
7140 * xdisp.c (syms_of_xdisp): Mention set-window-buffer in
7141 doc-string of window-scroll-functions.
7142
ecdcaa09
RS
71432008-10-28 Reiner Steib <Reiner.Steib@gmx.de>
7144
7145 * category.c (syms_of_category): Fix typo in docstring.
7146
23fe745a
JB
71472008-10-28 Juanma Barranquero <lekktu@gmail.com>
7148
7149 * window.c (Fwindowp, Fwindow_live_p, Fwindow_minibuffer_p)
7150 (Fcoordinates_in_window_p, Fscroll_left, Fscroll_right):
7151 Fix typos in docstrings.
7152
ff808935
DN
71532008-10-28 Dan Nicolaescu <dann@ics.uci.edu>
7154
7155 * emacs.c (daemon_pipe): Make non-static.
7156 (IS_DAEMON): Move definition ...
7157 * lisp.h (IS_DAEMON): ... here.
7158 (daemon_pipe): Declare.
7159 (is_daemon): Remove.
7160 * dispnew.c (init_display): Use IS_DAEMON.
7161
fc012771
SM
71622008-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
7163
7164 * xdisp.c (pos_visible_p, redisplay_internal, message3_nolog)
7165 (message2_nolog): Check FRAME_INITIAL_P instead of noninteractively.
7166
7167 * emacs.c (is_daemon): Remove.
7168 (main): Don't set is_daemon.
7169 (IS_DAEMON): New macro.
7170 (Fdaemonp, Fdaemon_initialized): Use it.
601a9cf1 7171 (Fdaemon_initialized): Write a char into the pipe to make sure the
fc012771
SM
7172 parent exits.
7173 (syms_of_emacs): Explicitly initialize daemon_pipe[1].
7174
d8bdbe6f
CY
71752008-10-27 Chong Yidong <cyd@stupidchicken.com>
7176
d1a072bf
CY
7177 * nsterm.m (ns_draw_window_cursor): When hbar cursor is on
7178 over-sized glyph, draw it with the default glyph width.
7179
e2e325aa
CY
7180 * w32term.c (x_draw_bar_cursor): When hbar cursor is on over-sized
7181 glyph, draw it with the default glyph width.
7182
7183 * xterm.c (x_draw_bar_cursor): When hbar cursor is on over-sized
7184 glyph, draw it with the default glyph width.
7185
d8bdbe6f
CY
7186 * xdisp.c (try_scrolling): When computing the distance from the
7187 scroll margin to PT, try moving some distance past the window
7188 bottom before giving up.
7189
7bfac547
MR
71902008-10-27 Martin Rudalics <rudalics@gmx.at>
7191
7192 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p)
7193 (Fset_window_buffer): Explain in doc-string that a window can be
7194 "strongly" dedicated to its buffer.
7195
4ff029f6
DN
71962008-10-27 Dan Nicolaescu <dann@ics.uci.edu>
7197
7198 * emacs.c (daemon_name): New variable.
7199 (main): Deal with --daemon=SERVER_NAME.
7200 (Fdaemonp): Return a name if one was passed to --daemon.
7201
5790ef40
DN
72022008-10-26 Romain Francoise <romain@orebokech.com>
7203
f9bd0df9 7204 * emacs.c (daemon_pipe): New variable.
5790ef40
DN
7205 (main): Create a pipe before forking, make the parent exit only after
7206 the child has closed its end of the pipe. Move closing the
7207 descriptors ...
7208 (Fdaemon_initialized): ... here. New function.
7209
f5385255
SM
72102008-10-26 Stefan Monnier <monnier@iro.umontreal.ca>
7211
4d632321
SM
7212 * chartab.c (Foptimize_char_table): Make sure `ascii' doesn't point to
7213 the previous unoptimized table.
7214
f5385255
SM
7215 * window.c (Fset_window_buffer): Undo 2008-10-18 change to re-instate
7216 the distinction between non-nil and non-t value of `dedicated'.
7217
6c56a0f3
CY
72182008-10-25 Chong Yidong <cyd@stupidchicken.com>
7219
7220 * keyboard.c (read_char_minibuf_menu_prompt): Ensure that
f5385255 7221 read_char_minibuf_menu_text is large enough to hold the menu string.
6c56a0f3 7222
fec89261
MR
72232008-10-25 Martin Rudalics <rudalics@gmx.at>
7224
7225 * window.c (Fget_buffer_window, Fdelete_windows_on)
7226 (Freplace_buffer_in_windows): Make buffer argument optional and
7227 rename to buffer_or_name.
7228
34fcddd0
CY
72292008-10-24 Chong Yidong <cyd@stupidchicken.com>
7230
f5385255
SM
7231 * xdisp.c (handle_single_display_spec, handle_display_prop):
7232 Undo 2005-05-16 change.
34fcddd0
CY
7233 (handle_stop): Pop iterator if it's loaded with an empty string.
7234 (get_overlay_strings_1): Don't save iterator if it's loaded with
7235 an empty string (bug#1201).
7236
064766f2
KH
72372008-10-24 Kenichi Handa <handa@m17n.org>
7238
7239 * ftfont.c (ftfont_otf_features): Fix previous change.
7240 (ftfont_otf_capability): Check FeatureList.FeatureCount before
7241 calling ftfont_otf_features.
7242
f9bd0df9 72432008-10-24 Kenichi Handa <handa@m17n.org>
064766f2
KH
7244
7245 * font.c (font_match_p): Fix for the case that a vector of
7246 characters is in script-representative-chars.
7247
1dae9197
MA
72482008-10-24 Michael Albinus <michael.albinus@gmx.de>
7249
7250 * dbusbind.c (xd_in_read_queued_messages): New variable.
f5385255 7251 (XD_SIGNAL1, XD_SIGNAL2, XD_SIGNAL3): New macros. Throw Qdbus_error.
1dae9197
MA
7252 (xd_read_queued_messages): Catch Qdbus_error from the macros.
7253 (all): Replace xsignal1, xsignal2, xsignal3 by the respective
777013f2 7254 macro. (Bug#1186)
1dae9197 7255
f9bd0df9 72562008-10-23 Ali Bahrami <ali_gnu@emvision.com> (tiny change)
9b3362b8
DN
7257
7258 * s/sol2-10.h: New file.
7259
878a4584
JB
72602008-10-23 Juanma Barranquero <lekktu@gmail.com>
7261
7262 * xdisp.c (fill_glyph_string): Fix typo in source (though the
7263 poor beast has survived 9+ years and the jump from xterm.c!).
7264
cd265ca6
MR
72652008-10-23 Martin Rudalics <rudalics@gmx.at>
7266
7267 * buffer.c (Fget_buffer_create): Rename arg to buffer_or_name.
7268 Reword doc-string.
f5385255 7269 (Fbury_buffer): In doc-string say what happens to the buffer's window.
cd265ca6 7270
472a4dc9
JB
72712008-10-23 Juanma Barranquero <lekktu@gmail.com>
7272
7273 * character.c (syms_of_character) <script-representative-chars>:
7274 <unicode-category-table>: Doc fixes.
7275
159bd5a2
NF
72762008-10-23 Noah Friedman <friedman@splode.com>
7277
7278 * coding.c (make_conversion_work_buffer): Check that
7279 Vcode_conversion_reused_workbuf is a live buffer, otherwise call
7280 Fget_buffer_create.
7281
49f9c344
KH
72822008-10-23 Kenichi Handa <handa@m17n.org>
7283
7284 * font.c (font_add_log): Check the values of extra properties.
7285
12bb3111
MR
72862008-10-22 Martin Rudalics <rudalics@gmx.at>
7287
7288 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
7289 Reword doc-string.
7290 (Fset_window_parameter): Use NILP.
7291 (Fscroll_up, Fscroll_down, Fminibuffer_selected_window)
f5385255 7292 (Frecenter): Use "selected" instead of "current" window in doc-strings.
12bb3111 7293
bbeb4e99
JB
72942008-10-22 Juanma Barranquero <lekktu@gmail.com>
7295
7296 * xdisp.c (next_element_from_buffer): Remove bogus xassert condition.
7297
72982008-10-22 Adrian Robert <Adrian.B.Robert@gmail.com>
cb83c00b
AR
7299
7300 * nsfns.m (ns_appkit_version): New function.
7301 (x-server-version): Use it.
7302 (syms_of_nsfns): Define ns-version-string here, not nsterm.m.
7303 (x-server-vendor): Don't check_ns().
7304
7305 * nsterm.m (syms_of_nsterm): Drop ns-version-string.
7306
a9b555d3
JB
73072008-10-22 Juanma Barranquero <lekktu@gmail.com>
7308
7309 * w32fns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert.
7310 Copied from 2005-02-03 change to xfns.c by Kim F. Storm.
7311
4626499f
KH
73122008-10-22 Kenichi Handa <handa@m17n.org>
7313
e3681952
KH
7314 * syntax.c (scan_words): Call word_boundary_p instead of comparing
7315 scripts.
7316
4626499f
KH
7317 * category.c (word_boundary_p): Check scripts instead of charset.
7318 Handle nil value in word-separating-categories and
7319 word-combining-categories.
7320 (syms_of_category): Fix docstrings of word-separating-categories
7321 and word-combining-categories.
7322
1560f91a
EZ
73232008-10-21 Eli Zaretskii <eliz@gnu.org>
7324
7325 * coding.c (Fencode_coding_region, Fdecode_coding_region)
7326 (Fdecode_coding_string, Fencode_coding_string): Doc fix.
7327
f4668441
MR
73282008-10-21 Martin Rudalics <rudalics@gmx.at>
7329
7330 * buffer.c (Fget_buffer, Fbury_buffer, switch_to_buffer_1):
7331 Rename arg "buffer" to "buffer_or_name".
7332 (Fkill_buffer): Rename arg "buffer" to "buffer_or_name" and make
7333 it optional.
7334 (no_switch_window): Remove since the return value is not used.
a9b555d3 7335 (Fswitch_to_buffer): Rename arg "buffer" to "buffer_or_name".
f4668441
MR
7336 Consider window as dedicated when Fwindow_dedicated_p returns a
7337 non-nil value.
7338 * lisp.h: Remove prototype for no_switch_window.
7339
fd75ddb2
JD
73402008-10-21 Jan Djärv <jan.h.d@swipnet.se>
7341
7342 * emacs.c (main): Unconditionally set PER_LINUX32 and exec
2ae37cf0 7343 temacs when dumping if HAVE_PERSONALITY_LINUX32 is defined.
fd75ddb2 7344
07295713
KH
73452008-10-21 Kenichi Handa <handa@m17n.org>
7346
7347 * coding.c (detect_coding_charset): For iso-8859-* coding systems,
7348 check Vlatin_extra_code_table.
7349
712adc82
EZ
73502008-10-20 Eli Zaretskii <eliz@gnu.org>
7351
7352 * fileio.c (Fset_file_modes): Doc fix.
7353
f549eb0b
MA
73542008-10-19 Michael Albinus <michael.albinus@gmx.de>
7355
7356 * dbusbind.c (XD_OBJECT_TO_DBUS_TYPE): Handle simple type symbols
7357 in arrays.
7358
aac0c6e3
MR
73592008-10-19 Martin Rudalics <rudalics@gmx.at>
7360
7361 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
7362 Mention kill-buffer in doc-string.
7363 (Fset_window_buffer): Reinsert tem check removed in last commit.
7364 (Fenlarge_window, Fshrink_window): Have argument names and
7365 doc-string follow Elisp manual more closely.
7366
73672008-10-18 Eli Zaretskii <eliz@gnu.org>
7368
7369 * fileio.c (Fset_file_modes): Doc fix.
7370
73712008-10-18 Martin Rudalics <rudalics@gmx.at>
7372
7373 * window.c (Fwindow_width, Fset_window_start)
7374 (Fwindow_parameters, Fwindow_parameter, Fset_window_parameter)
f5385255
SM
7375 (Fdelete_windows_on, Freplace_buffer_in_windows):
7376 Make doc-strings follow code and Elisp manual more closely.
aac0c6e3
MR
7377 (Fwindow_dedicated_p): Make window argument optional.
7378 (Fset_window_dedicated_p): Rename argument "arg" to "flag".
7379 (Fset_window_buffer): Respect any non-nil dedicated value for
7380 window. Rename "buffer" argument to "buffer_or_name".
7381
73822008-10-18 Ulrich Mueller <ulm@gentoo.org>
7383
7384 * m/sh3.h: New file, machine description for SuperH.
7385
73862008-10-17 Martin Rudalics <rudalics@gmx.at>
7387
7388 * window.c (Fsplit_window): Rename arg horflag to horizontal.
7389
73902008-10-17 Kenichi Handa <handa@m17n.org>
7391
7392 * ftfont.c (ftfont_otf_features): Fix indexing
7393 gsub_gpos->FeatureList.Feature. Check the validity of indices.
7394
73952008-10-16 Magnus Henoch <mange@freemail.hu>
7396
7397 * dbusbind.c (Fdbus_call_method): Unbreak usage line.
7398 (Fdbus_call_method_asynchronously): Ditto.
7399 This change makes C-h f display the argument list.
7400
74012008-10-16 Chong Yidong <cyd@stupidchicken.com>
7402
7403 * fileio.c (Fexpand_file_name): Doc fix.
7404
7405 * xfaces.c (Finternal_set_lisp_face_attribute): Make null values
7406 of :foreground and :background equivalent to unspecified (20.x
7407 compatibility).
7408
74092008-10-15 Eli Zaretskii <eliz@gnu.org>
7410
7411 * buffer.c (syms_of_buffer): Doc fix.
7412
74132008-10-14 Kenichi Handa <handa@m17n.org>
7414
7415 * font.c (font_clear_prop): When clearing font width, clear the
7416 average width field too.
7417
74182008-10-12 Andreas Schwab <schwab@suse.de>
7419
7420 * ftfont.c (ftfont_shape_by_flt): Make static.
7421 * ftfont.h (ftfont_shape_by_flt): Don't declare.
7422
7423 * font.c: Don't include <m17n-flt.h>.
7424
74252008-10-10 Eli Zaretskii <eliz@gnu.org>
7426
7427 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Decrease to 10000.
7428
74292008-10-09 Eli Zaretskii <eliz@gnu.org>
7430
7431 * frame.c (make_terminal_frame) [MSDOS]: Remove unused #ifdef'ed
7432 away code.
7433
74342008-10-09 Chong Yidong <cyd@stupidchicken.com>
7435
7436 * dispnew.c (update_text_area): Avoid looping due to large glyph
7437 overhangs (bug#1070).
7438
74392008-10-09 Kenichi Handa <handa@m17n.org>
7440
7441 * fontset.c (face_for_char): If face->fontset is negative, just
7442 return ascii_face.
7443
f5385255
SM
7444 * font.c (font_delete_unmatched): Fix previous change.
7445 Don't reject an entity if DPI and AVGWIDTH of an entity are 0.
aac0c6e3
MR
7446
74472008-10-09 Martin Rudalics <rudalics@gmx.at>
7448
7449 * frame.c (Fraise_frame): On text-only terminals select frame in
7450 order to make it visible. (Bug#1061)
7451
74522008-10-08 Chong Yidong <cyd@stupidchicken.com>
7453
7454 * fontset.c (fontset_find_font): Check frame validity.
7455
74562008-10-07 Chong Yidong <cyd@stupidchicken.com>
7457
a9b555d3 7458 * gtkutil.c (xg_display_open): Reset default display if none exists.
aac0c6e3
MR
7459 (xg_display_close): Allow Emacs to close all displays (bug#985).
7460
74612008-10-06 Andreas Schwab <schwab@suse.de>
7462
f5385255 7463 * sysdep.c (sys_signal): Always set SA_RESTART when noninteractively.
aac0c6e3
MR
7464
74652008-10-06 Chong Yidong <cyd@stupidchicken.com>
7466
f5385255 7467 * emacs.c (Vbefore_init_time, Vafter_init_time): Move from startup.el.
aac0c6e3 7468
a9b555d3 7469 * lisp.h (Vbefore_init_time, Vafter_init_time): Declare.
aac0c6e3
MR
7470
7471 * gtkutil.c (x_wm_set_size_hint): Return immediately if called
7472 during initialization.
7473
74742008-10-04 Eli Zaretskii <eliz@gnu.org>
7475
7476 * xdisp.c (redisplay_internal): If frame switched, redisplay the
7477 whole thing on MSDOS frames as well as on a TTY.
7478
7479 * dispnew.c (update_frame): Flush termscript for MSDOS frames as
7480 well as for TTY.
7481 (Fopen_termscript): Allow opening a termscript on MSDOS frames as
7482 well as on a TTY.
7483
7484 * sysdep.c (init_sys_modes): Set FRAME_GARBAGED_P for MSDOS frames
7485 as well as for TTY.
7486
7487 * systime.h (EMACS_TIME_CMP): Cast EMACS_SECS values to `long'.
7488
7489 * dispnew.c (change_frame_size_1): Set FrameRows and FrameCols for
7490 MSDOS frames as well.
7491
74922008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
7493
7494 * image.c (x_clear_image_1): Under NS, call ns_free_indexed_color with
7495 correct arguments.
b71ac3dd 7496 * menu.c (find_and_return_menu_selection): Add cast.
aac0c6e3
MR
7497
74982008-10-03 Glenn Morris <rgm@gnu.org>
7499
7500 * emacs.c (USAGE1): Add --daemon.
7501
75022008-10-02 Eli Zaretskii <eliz@gnu.org>
7503
7504 * process.c (procfs_system_process_attributes): Multiply `pcpu' by
7505 100, so it's in percents as advertised.
7506
75072008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
7508
7509 * nsterm.h (ns_cursor_types, ns_output.desired_cursor_color)
7510 (ns_output.current_cursor, ns_output.desired_cursor)
7511 (ns_output.last_inactive, FRAME_CURSOR, FRAME_NEW_CURSOR)
7512 (FRAME_NEW_CURSOR_COLOR): Remove.
7513
7514 * nsfns.m (ns_set_cursor_color): Use FRAME_CURSOR_COLOR.
a9b555d3 7515 (ns_lisp_to_cursor_type, ns_cursor_type_to_lisp): Use core Emacs
aac0c6e3
MR
7516 enumeration (HOLLOW_BOX_CURSOR, etc.).
7517
7518 * nsterm.m (ns_frame_rehighlight): Remove commented code.
7519 (draw_window_cursor): Simplify code.
f5385255
SM
7520 (EmacsView-windowDidBecomeKey:,-windowDidResignKey:):
7521 Don't change cursor type. In latter, call rehighlight instead of doing
aac0c6e3 7522 updates manually.
a9b555d3
JB
7523 (EmacsPrefsController-setPanelFromValues,-setValuesFromPanel):
7524 Use core Emacs cursor types.
aac0c6e3 7525
b8ff72fa 7526 * xdisp.c (draw_glyphs): Don't call notice_overwritten_cursor under NS.
aac0c6e3
MR
7527
75282008-10-02 Martin Rudalics <rudalics@gmx.at>
7529
7530 * process.c (Faccept_process_output): Fix doc-string.
7531
75322008-10-02 Dan Nicolaescu <dann@ics.uci.edu>
7533
7534 * gmalloc.c (__sbrk): Also define for uClibc.
7535
7536 * s/gnu-linux.h (GNU_LIBRARY_PENDING_OUTPUT_COUNT): Add definition
7537 for uClibc.
7538
75392008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
7540
7541 * nsfont.m (nsfont_spec_to_traits): Use UnXX masks only for non-normal
7542 styles.
7543 (nsfont_open): Reenable the cache.
7544
75452008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
7546
7547 * font.c (font_matching_entity): Reflect ATTRS in font selection.
7548 (font_find_for_lface) [HAVE_NS]: Don't ignore case.
7549
75502008-09-30 Stefan Monnier <monnier@iro.umontreal.ca>
7551
7552 * dispnew.c (Fsend_string_to_terminal): Don't try to send a string to
7553 a suspended terminal.
7554
75552008-09-30 Michael Albinus <michael.albinus@gmx.de>
7556
7557 * dbusbind.c (xd_signature): Use strcat instead of sprintf.
7558
75592008-09-30 Eli Zaretskii <eliz@gnu.org>
7560
7561 * Makefile.in (MSDOS_SUPPORT): Remove ccl.elc and codepage.elc.
7562
75632008-09-30 Chong Yidong <cyd@stupidchicken.com>
7564
7565 * xdisp.c (move_it_to): Don't advance the iterator if the last tab
7566 in a continued line coincides with a line beginning.
7567
75682008-09-29 Adrian Robert <Adrian.B.Robert@gmail.com>
7569
7570 * nsfont.m (nsfont_trait_distance): Fix bug.
7571 (nsfont_list): Return a list rather than a vector (syncs with Handa
7572 changes of 2008-05-14).
7573 (nsfont_open): Improve logging.
7574
75752008-09-29 Andreas Schwab <schwab@suse.de>
7576
7577 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
7578
75792008-09-28 Martin Rudalics <rudalics@gmx.at>
7580
7581 * character.c (Fchar_resolve_modifiers): Rewrite Elisp function
7582 name as char-resolve-modifiers.
7583 Reported by: Markus Triska <markus.triska@gmx.at>
7584
75852008-09-28 Dan Nicolaescu <dann@ics.uci.edu>
7586
7587 * dispnew.c (init_display): Return earlier when running as a daemon.
7588
75892008-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
7590
7591 * nsfont.m (nsfont_draw): Fix up composition rendering (cmp_from, ...).
7592
75932008-09-27 Eli Zaretskii <eliz@gnu.org>
7594
7595 * composite.c (Fcomposition_get_gstring)
7596 (Fcompose_region_internal, Fcompose_string_internal)
7597 (Ffind_composition_internal): Doc fix.
7598 (syms_of_composite) <compose-chars-after-function>: Doc fix.
7599 (syms_of_composite) <auto-composition-function>: Doc fix.
7600 (syms_of_composite) <composition-function-table>: Doc fix.
7601
76022008-09-25 Chong Yidong <cyd@stupidchicken.com>
7603
7604 * search.c (wordify): New argument for lax word-ends.
7605 (Fword_search_forward_lax, Fword_search_backward_lax): New funs.
7606
76072008-09-24 Dan Nicolaescu <dann@ics.uci.edu>
7608
7609 * lisp.h (is_daemon): Declare.
7610 * dispnew.c (init_display): Do not try to initialize the terminal
7611 when running as a daemon.
7612
76132008-09-22 Chong Yidong <cyd@stupidchicken.com>
7614
7615 * nsfns.m (compute_tip_xy): Use x_display_pixel_width and
7616 x_display_pixel_height.
7617
76182008-09-22 Martin Rudalics <rudalics@gmx.at>
7619
7620 * undo.c (record_point): Don't call Fundo_boundary for first
7621 change. (Bug#731)
7622
76232008-09-22 Juanma Barranquero <lekktu@gmail.com>
7624
7625 * emacs.c (Fdaemonp): Doc fix.
7626
76272008-09-22 Dan Nicolaescu <dann@ics.uci.edu>
7628
7629 * emacs.c (main): Place #ifdef in the proper place.
7630
76312008-09-21 Dan Nicolaescu <dann@ics.uci.edu>
7632
7633 * emacs.c (standard_args): Add --daemon.
7634 (main): Disconnect from the terminal when --daemon is passed.
7635 (is_daemon): New variable.
7636 (Fdaemonp): New function.
7637 (syms_of_emacs): Defsubr it.
7638
76392008-09-20 Chong Yidong <cyd@stupidchicken.com>
7640
7641 * xdisp.c (get_next_display_element): Handle string display
7642 correctly when checking for the end of a box run.
7643
76442008-09-20 Glenn Morris <rgm@gnu.org>
7645
7646 * fileio.c (Qdelete_by_moving_to_trash): New Lisp_Object.
7647 (syms_of_fileio): Add Qdelete_by_moving_to_trash.
7648 (Frename_file): Avoid copying to trash if a rename involves
7649 a delete. (Bug#964).
7650
76512008-09-20 Eli Zaretskii <eliz@gnu.org>
7652
7653 * keyboard.c (Fset_quit_char, Fset_input_meta_mode)
7654 (Fset_output_flow_control, Fcurrent_input_mode): Support MSDOS
7655 frames as well as termcap frames.
7656 (handle_interrupt): Remove "#ifndef MSDOS" around the call to
7657 get_named_tty.
7658
76592008-09-19 Eli Zaretskii <eliz@gnu.org>
7660
7661 * process.c (procfs_system_process_attributes): Fix cmdline in
7662 case /proc/PID/cmdline is empty.
7663
7664 * xterm.c (x_wm_set_size_hint): Use x_display_pixel_width and
7665 x_display_pixel_height.
7666
76672008-09-19 Juanma Barranquero <lekktu@gmail.com>
7668
7669 * frame.c (x_fullscreen_adjust): Declare var as Display_Info.
7670
7671 * w32fns.c (Fx_display_pixel_width, Fx_display_pixel_height)
7672 (compute_tip_xy): Use x_display_pixel_width, x_display_pixel_height.
7673
76742008-09-19 Dan Nicolaescu <dann@ics.uci.edu>
7675
7676 * dispextern.h (struct it): Move line_wrap away from the middle of
7677 bitfields. Move voffset in struct iterator_stack_entry after the
7678 bitfields. Move tab_width near after another short.
7679
76802008-09-18 Dan Nicolaescu <dann@ics.uci.edu>
7681
7682 * frame.h (struct frame): Move alpha from the middle of bitfields.
7683
7684 * window.h (struct window): Move frozen_window_start_p after the
7685 rest of the bitfields to reduce padding.
7686
76872008-09-18 Chong Yidong <cyd@stupidchicken.com>
7688
7689 * xterm.h (x_display_info): Remove `height' and `width' members.
7690
7691 * nsterm.h (ns_display_info): Remove `height' and `width' members.
7692
7693 * w32term.h (w32_display_info): Remove `height', `width',
7694 `height_in', and `width_in' members.
7695
b8ff72fa
SM
7696 * xterm.c (x_display_pixel_height, x_display_pixel_width):
7697 New functions.
aac0c6e3
MR
7698 (x_calc_absolute_position): Use them.
7699 (x_term_init): Omit removed `height' and `width' members.
7700
b8ff72fa
SM
7701 * w32term.c (x_display_pixel_height, x_display_pixel_width):
7702 New functions.
aac0c6e3
MR
7703 (w32_read_socket, x_calc_absolute_position): Use them.
7704 (w32_initialize_display_info, w32_term_init): Omit removed members
7705 of w32_display_info.
7706
b8ff72fa
SM
7707 * nsterm.m (x_display_pixel_height, x_display_pixel_width):
7708 New functions.
7709 (ns_initialize_display_info): Omit removed members of ns_display_info.
aac0c6e3 7710
b8ff72fa
SM
7711 * xterm.c (x_display_pixel_height, x_display_pixel_width):
7712 New functions.
aac0c6e3
MR
7713 (x_calc_absolute_position): Use them.
7714 (x_term_init): Omit removed `height' and `width' members.
7715
7716 * xfns.c (Fx_display_pixel_width, Fx_display_pixel_height)
b8ff72fa
SM
7717 (compute_tip_xy):
7718 * frame.c (x_fullscreen_adjust):
aac0c6e3
MR
7719 * xmenu.c (menu_position_func): Use x_display_pixel_height and
7720 x_display_pixel_width.
7721
77222008-09-18 Kenichi Handa <handa@m17n.org>
7723
7724 * composite.c (fill_gstring_header): Don't check FROM and TO here.
7725 (composition_compute_stop_pos): Fix handling of static composition.
7726 (Fcomposition_get_gstring): Check FROM and TO at first.
7727
77282008-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
7729
46e722a9 7730 * composite.c (Fcomposition_get_gstring): Yet another int/Lisp_Object
aac0c6e3
MR
7731 mixup (YAILOM).
7732
77332008-09-17 Chong Yidong <cyd@stupidchicken.com>
7734
7735 * indent.c (Fvertical_motion): Use position reported by iterator
7736 instead of PT for determining screen motion (bug#943).
7737
77382008-09-17 Romain Francoise <romain@orebokech.com>
7739
7740 * composite.c (composition_adjust_point): Fix int/EMACS_INT mixup.
7741
77422008-09-17 Kenichi Handa <handa@m17n.org>
7743
7744 * ftfont.c (ftfont_shape_by_flt): Downcase family name.
7745
7746 * composite.c (Fcomposition_get_gstring): Make bigger gstring_work
7747 if necessary.
7748
77492008-09-16 Kenichi Handa <handa@m17n.org>
7750
7751 * coding.c (make_conversion_work_buffer): Avoid calling
7752 Fget_buffer_create if it is not necessary.
7753
77542008-09-15 Martin Rudalics <rudalics@gmx.at>
7755
7756 * window.c (Fselect_window): Don't update window_select_count and
7757 use_time when norecord is not nil.
7758
77592008-09-14 Kenichi Handa <handa@m17n.org>
7760
7761 * fileio.c (Finsert_file_contents): Delete incorrect decrement of
7762 specpdl_ptr.
7763
77642008-09-12 Kenichi Handa <handa@m17n.org>
7765
7766 * indent.c (scan_for_column): Don't handle automatic composition
7767 if the current buffer is not associated with a window.
7768
7769 * composite.c (composition_reseat_it): If the current buffer is
7770 not associated with a window, ignore the automatic composition.
7771 (find_automatic_composition): Likewise.
7772
77732008-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
7774
7775 * term.c (close_gpm): New fun extracted from Fgpm_mouse_stop.
7776 (Fgpm_mouse_stop): Use it.
7777 * termhooks.h (close_gpm): Declare.
7778 * keyboard.c (tty_read_avail_input): Forcefully close the gpm
7779 connection if Gpm_GetEvent fails.
7780
7781 * window.c (set_window_buffer): Always preserve current-buffer.
7782
77832008-09-12 Glenn Morris <rgm@gnu.org>
7784
7785 * charset.c (init_charset): Warn if etc/charsets not found. (Bug#909)
7786
77872008-09-11 Glenn Morris <rgm@gnu.org>
7788
7789 * charset.c (charset-map-path): Doc fix.
7790
77912008-09-10 Kenichi Handa <handa@m17n.org>
7792
7793 * xdisp.c (handle_composition_prop): Set it->cmp_it.ch to -1.
7794
7795 * font.c (Ffont_shape_gstring): Make glyphs of non-nil adjustment
7796 compose a grapheme cluster with the preceding base glyph.
7797
7798 * composite.c (composition_compute_stop_pos): Fix previous change.
7799 Reset cmp_it->id to -1 at first.
7800
78012008-09-10 Glenn Morris <rgm@gnu.org>
7802
7803 * Makefile.in (character.o, chartab.o): Fix config.h typo.
7804
78052008-09-09 Chong Yidong <cyd@stupidchicken.com>
7806
7807 * keyboard.c (read_key_sequence): Reapply translation maps when
7808 switching keyboards.
7809
78102008-09-09 Kenichi Handa <handa@m17n.org>
7811
7812 * ftfont.c (ftfont_shape_by_flt): Use "combining" FLT for ASCII
7813 characters.
7814
7815 * composite.c (FORWARD_CHAR): Fix calculation
7816 of (POSITION).pos_byte.
7817 (composition_compute_stop_pos): Limit the search of composition to
7818 at most 500 characters ahead. If we reach the limit or find a
7819 newline, set cmp_it->ch to -2 and return 0.
7820 (composition_reseat_it): Handle the case that cmp_it->ch is -2.
7821
78222008-09-08 Kenichi Handa <handa@m17n.org>
7823
7824 * indent.c (Fvertical_motion): Be sure to set
7825 it_overshoot_expected if it.cmp_it.id is non-negative.
7826
78272008-09-07 Andreas Schwab <schwab@suse.de>
7828
7829 * callproc.c (Fcall_process): Don't hold references to string data
7830 across garbage collection. Move initialisation of new_argv down
7831 to avoid compiler bug.
7832
78332008-09-07 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
7834
7835 * process.c (Fsystem_process_attributes): Doc fix.
7836
78372008-09-07 Chong Yidong <cyd@stupidchicken.com>
7838
7839 * callproc.c (Fcall_process): Canonicalize current directory name.
7840
7841 * xdisp.c (move_it_to): When moving by vpos, ensure that the
7842 iterator advances to the next line if the current line ends in a
7843 continued tab.
7844
78452008-09-07 Teodor Zlatanov <tzz@lifelogs.com>
7846
7847 * nsfont.m (nsfont_draw): Fix the references to missing gidx data
7848 member to point to cmp_from.
7849
7850 * xdisp.c: Doc fix for references to gidx data member.
7851
78522008-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
7853
7854 * buffer.c (Fbuffer_swap_text): Reset window->point markers.
7855
78562008-09-07 Kenichi Handa <handa@m17n.org>
7857
7858 * composite.c (FORWARD_CHAR): Check STOP after
7859 incrementing (POSITION).pos.
7860
78612008-09-06 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
7862
7863 * process.c (Fsystem_process_attributes): Doc fix.
7864
78652008-09-06 Chong Yidong <cyd@stupidchicken.com>
7866
7867 * keyboard.c (Ftop_level): Doc fix.
7868
78692008-09-06 Eli Zaretskii <eliz@gnu.org>
7870
7871 * xmenu.c (xmenu_show) [!HAVE_X_WINDOWS]: If frame has a
7872 minibuffer, don't let lower part of menu invade the echo area.
7873
7874 * msdos.c (IT_menu_display): Use STRING_CHAR_ADVANCE instead of a
7875 "char *q" to access menu text and advance through it. Revert the
7876 change that displayed ">" instead of ASCII character 0x10.
7877
78782008-09-05 Eli Zaretskii <eliz@gnu.org>
7879
7880 * menu.c (single_menu_item) [!HAVE_BOXES]: Enable emulation of
7881 toggle boxes and radio buttons on MS-DOS as well.
7882
78832008-09-05 Kenichi Handa <handa@m17n.org>
7884
7885 * composite.c (autocmp_chars): Check lookback count.
7886 (composition_compute_stop_pos): Set cmp_it->lookback.
7887 (composition_reseat_it): Check lookback count.
7888 (struct position_record): New struct.
7889 (FORWARD_CHAR, BACKWARD_CHAR, CHAR_COMPOSABLE_P): New macros.
7890 (find_automatic_composition): New function.
7891 (composition_adjust_point): Use find_automatic_composition.
7892
7893 * dispextern.h (struct composition_it): New member lookback.
7894
78952008-09-02 Chong Yidong <cyd@stupidchicken.com>
7896
7897 * indent.c (Fvertical_motion): Don't call move_it_by_lines again
7898 if moving by a single line.
7899
79002008-09-02 Andreas Schwab <schwab@suse.de>
7901
7902 * xterm.c (x_delete_display): Fix merge error.
7903
7904 * fileio.c (Fexpand_file_name): Remove unused variables.
7905
79062008-09-02 Eli Zaretskii <eliz@gnu.org>
7907
7908 * fileio.c (Fexpand_file_name): Copy argument `name' into local
7909 storage on all platforms, not just on DOS_NT.
7910
79112008-09-02 Jason Rumney <jasonr@gnu.org>
7912
b8ff72fa
SM
7913 * w32menu.c (Fx_popup_menu, Fx_popup_dialog, w32_menu_show):
7914 Ensure mouse is not grabbed after menu is finished.
aac0c6e3
MR
7915
79162008-09-01 Chong Yidong <cyd@stupidchicken.com>
7917
7918 * xfaces.c (Finternal_set_alternative_font_family_alist)
7919 (Finternal_set_alternative_font_registry_alist): Properly copy
7920 entire alist structure.
7921
79222008-09-01 Kenichi Handa <handa@m17n.org>
7923
d66c0241 7924 * ftfont.c (ftfont_spec_pattern): Don't create a charset if the
aac0c6e3 7925 representative chars of the script is a vector.
d66c0241
JB
7926 (ftfont_list): Handle the case where the representative chars of
7927 the script is a vector.
aac0c6e3
MR
7928
7929 * character.c (syms_of_character): Docstring of
7930 script-representative-chars fixed.
7931
79322008-08-31 Eli Zaretskii <eliz@gnu.org>
7933
7934 * msdos.c (BUILD_CHAR_GLYPH): New macro.
7935 (IT_menu_display): Use it instead of SET_CHAR_GLYPH to construct
7936 the menu. Allocate larger buffer for `text', to account for
7937 possible ^C characters.
7938
79392008-08-31 Martin Rudalics <rudalics@gmx.at>
7940
7941 * xdisp.c (prepare_menu_bars): Don't call
7942 Vwindow_size_change_functions with arg Qt.
7943
79442008-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
7945
7946 * font.h (font_range):
7947 * fileio.c (report_file_error):
46e722a9
SM
7948 * composite.c (composition_update_it): Yet another int/Lisp_Object
7949 mixup (YAILOM).
aac0c6e3
MR
7950
79512008-08-30 Glenn Morris <rgm@gnu.org>
7952
7953 * data.c (Fmake_variable_frame_local): Doc fix.
7954
7955 * frame.c (Fmodify_frame_parameters): Doc fix.
7956
79572008-08-30 Eli Zaretskii <eliz@gnu.org>
7958
7959 * w32.c (init_user_info): Allocate buf[] with xmalloc using the size
7960 needed by GetTokenInformation.
7961 (w32_system_process_attributes): Check return values of all system
7962 APIs.
7963
7964 * msdos.c (IT_display_cursor): Write "CURSOR ON/OFF" to termscript
7965 only when the state changes.
7966 (IT_update_begin, IT_update_end): Add termscript trace.
7967
7968 * w16select.c (Fw16_set_clipboard_data): Don't encode text if
7969 clipboard is unavailable. Set dst to NULL if it doesn't point to
7970 malloc'ed data.
7971 (Fw16_get_clipboard_data): Initialize htext to NULL, to avoid
7972 passing random values to xfree.
7973
7974 * dispnew.c (init_display): Set `tty's association in frame's
b8ff72fa 7975 parameters alist to the name of the terminal device, if that is known.
aac0c6e3
MR
7976
79772008-08-29 Jason Rumney <jasonr@gnu.org>
7978
7979 * w32uniscribe.c (uniscribe_check_otf): Don't fallback on DFLT script.
7980
79812008-08-29 Eli Zaretskii <eliz@gnu.org>
7982
7983 * composite.c (fill_gstring_body): Avoid compiler warnings.
7984
7985 * font.c (font_fill_lglyph_metrics): Use EMACS_INT in
7986 LGLYPH_SET_CODE to avoid compiler warnings.
7987
2ae37cf0 7988 * makefile.w32-in ($(BLD)/w32uniscribe.$(O)): Depend on composite.h.
aac0c6e3
MR
7989
7990 * composite.h (LGLYPH_SET_CODE): Cast `val' to EMACS_INT.
7991
7992 * w32uniscribe.c (uniscribe_shape): Shut up compiler warning in
7993 LGLYPH_SET_CODE.
7994
79952008-08-29 Kenichi Handa <handa@m17n.org>
7996
7997 * fileio.c (report_file_error): Don't downcase the first character
7998 of errstring if it is still unibyte.
7999
80002008-08-29 Kenichi Handa <handa@m17n.org>
8001
8002 These changes are to re-implement the automatic composition so
8003 that it doesn't use text properties.
8004
8005 * Makefile.in (ftfont.o): Depend on composite.h.
8006 (composite.o): Depend dispextern.h, font.h, frame, and window.h.
8007
8008 * character.h (Vunicode_category_table): Extern it.
8009
8010 * character.c (Vunicode_category_table): New variable.
8011 (syms_of_character): DEFVAR_LISP Vunicode_category_table.
8012
8013 * chartab.c (optimize_sub_char_table): Perform more greedy
8014 optimization.
8015
b8ff72fa
SM
8016 * composite.h (enum composition_method):
8017 Delete COMPOSITION_WITH_GLYPH_STRING.
aac0c6e3
MR
8018 (COMPOSITION_METHOD): Don't check COMPOSITION_WITH_GLYPH_STRING.
8019 (Vcomposition_function_table): Extern it.
8020 (LGSTRING_XXX, LGLYPH_XXX): Macros moved from font.h.
8021 (composition_gstring_put_cache, composition_gstring_from_id)
8022 (composition_gstring_p, composition_gstring_width)
8023 (composition_compute_stop_pos, composition_reseat_it)
8024 (composition_update_it, composition_adjust_point): Extern them.
8025 (Fcomposition_get_gstring): EXFUN it.
8026
d66c0241 8027 * composite.c: Include window.h, frame.h, dispextern.h, font.h.
aac0c6e3
MR
8028 (Vcomposition_function_table)
8029 (get_composition_id): Don't handle COMPOSITION_WITH_GLYPH_STRING.
b8ff72fa
SM
8030 (gstring_hash_table, gstring_work, gstring_work_headers):
8031 New variables.
aac0c6e3
MR
8032 (gstring_lookup_cache, composition_gstring_put_cache)
8033 (composition_gstring_from_id, composition_gstring_p)
8034 (composition_gstring_width, fill_gstring_header)
8035 (fill_gstring_body, autocmp_chars, composition_compute_stop_pos)
8036 (composition_reseat_it, composition_update_it)
b8ff72fa 8037 (composition_adjust_point, Fcomposition_get_gstring): New functions.
aac0c6e3
MR
8038 (syms_of_composite): Initialize gstring_hash_table, gstrint_work,
8039 and gstring_work_headers. DEFVAR_LISP composition-function-table.
8040 Defsubr compostion_get_gstring.
8041
8042 * dispextern.h (struct glyph): New union u.cmp. Delete the member
8043 cmp_id.
8044 (struct glyph_string): Delete the member gidx. New members
8045 cmp_id, cmp_from, and cmp_to.
8046 (enum it_method): Delete GET_FROM_COMPOSITION.
8047 (struct composition_it): New struct.
8048 (struct it): New member cmp_it, and iterator_stack_entry.cmp_it.
8049 Delete c, len, cmp_id, cmp_len in u.comp.
8050
8051 * font.h (enum lgstring_indices): Delete it.
b8ff72fa 8052 (LGSTRING_XXX, LGLYPH_XXX): Move these macros to composite.h.
aac0c6e3 8053 (enum lglyph_indices): Likewise.
b8ff72fa 8054 (font_range): Adjust extern.
aac0c6e3
MR
8055 (font_fill_lglyph_metrics): Extern it.
8056
8057 * font.c (QCf): New variable.
8058 (check_gstring): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
8059 (font_prepare_composition): Delete this function.
8060 (font_range): Type and arguments changed.
8061 (Ffont_make_gstring, Ffont_fill_gstring): Delete them.
8062 (font_fill_lglyph_metrics): New function.
b8ff72fa 8063 (Ffont_shape_text): Rename to Ffont_shape_gstring and change arguments.
aac0c6e3 8064 (syms_of_font): DEFSYM QCf. Delete defsubr for
b8ff72fa
SM
8065 Sfont_make_gstring, Sfont_fill_gstring, Sfont_shape_text.
8066 Defsubr Sfont_shape_gstring.
aac0c6e3
MR
8067
8068 * fontset.h (font_for_char): Extern it.
8069
8070 * fontset.c (font_for_char): New function.
8071
8072 * ftfont.c: Include composite.h.
8073 (ftfont_resolve_generic_family): Add langset "en" to pattern.
b8ff72fa 8074 (ftfont_shape_by_flt): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
aac0c6e3
MR
8075
8076 * indent.c: Include composite.h and dispextern.h.
8077 (check_composition): Delete this function.
8078 (scan_for_column): Handle composition by
8079 composition_compute_stop_pos, composition_reseat_it, and
8080 composition_update_it.
8081 (compute_motion): Likewise.
8082 (Fvertical_motion): Fix checking of composition.
8083
8084 * keyboard.c (adjust_point_for_property): Check composition by
8085 composition_adjust_point.
8086
b8ff72fa 8087 * nsterm.m (ns_draw_glyph_string): Adjust for the change of
aac0c6e3
MR
8088 struct glyph_string.
8089
b8ff72fa
SM
8090 * term.c (encode_terminal_code): Adjust for the change of struct glyph.
8091 (append_composite_glyph): Adjust for the change of struct it and
aac0c6e3
MR
8092 struct glyph.
8093 (produce_composite_glyph): Likewise.
8094
b8ff72fa
SM
8095 * w32term.c (x_draw_composite_glyph_string_foreground):
8096 Adjust for the change of struct glyph_string.
aac0c6e3
MR
8097 (x_draw_glyph_string): Likewise.
8098
8099 * w32uniscribe.c (struct uniscribe_font_info): Include composite.h.
8100 (uniscribe_shape): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
8101
8102 * xdisp.c: Include font.h.
8103 (it_props): Delete the entry for Qauto_composed.
8104 (init_iterator): Initialize it->cmp_it.id to -1.
8105 (compute_stop_pos): Call composition_compute_stop_pos.
b8ff72fa 8106 (face_before_or_after_it_pos): Adjust for the change of struct it.
aac0c6e3
MR
8107 (handle_auto_composed_prop): Delete it.
8108 (handle_composition_prop): Handle only static composition.
8109 (next_overlay_string): Remove it->method == GET_FROM_COMPOSITION
8110 from xassert. Initialize it->cmp_it.stop_pos.
b8ff72fa 8111 (push_it): Adjust for the change of struct it.
aac0c6e3
MR
8112 (pop_it): Likewise.
8113 (get_next_element): Delete next_element_from_composition.
8114 (CHAR_COMPOSED_P): New macro.
8115 (get_next_display_element): For automatic composition, get a face
8116 from the font in the glyph-string.
8117 (set_iterator_to_next): For GET_FROM_BUFFER and GET_FROM_STRING,
b8ff72fa 8118 check composition by it->cmp_it.id. Delete GET_FROM_COMPOSITION case.
aac0c6e3
MR
8119 (next_element_from_string): Check if the character at the current
8120 position is composed by CHAR_COMPOSED_P.
8121 (next_element_from_buffer): Likewise.
d66c0241
JB
8122 (next_element_from_composition): Adjust for the change of struct it.
8123 Update it->cmp_it.
b8ff72fa
SM
8124 (dump_glyph): Adjust for the change of struct glyph.
8125 (fill_composite_glyph_string): Adjust for the change of struct
aac0c6e3
MR
8126 it and struct glyph. Don't handle automatic composition here.
8127 (fill_gstring_glyph_string): New function.
8128 (x_get_glyph_overhangs): Handle automatic composition.
b8ff72fa 8129 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the change of struct glyph.
aac0c6e3
MR
8130 (BUILD_GSTRING_GLYPH_STRING): New macro.
8131 (BUILD_GLYPH_STRINGS): Call BUILD_GSTRING_GLYPH_STRING for
8132 automatic composition.
b8ff72fa 8133 (append_composite_glyph): Adjust for the change of struct it and
aac0c6e3 8134 struct glyph.
b8ff72fa 8135 (x_produce_glyphs): Adjust for the change of struct it.
aac0c6e3 8136
b8ff72fa 8137 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
aac0c6e3
MR
8138 the change of struct glyph_string.
8139 (x_draw_glyph_string): Likewise.
8140
81412008-08-29 Glenn Morris <rgm@gnu.org>
8142
8143 * buffer.c (word-wrap): Doc fix.
8144 * xdisp.c (truncate-partial-width-windows): Doc fix.
8145 Increase default to 50.
8146
81472008-08-29 Chong Yidong <cyd@stupidchicken.com>
8148
8149 * xdisp.c (update_tool_bar_unwind): New function.
8150 (update_tool_bar): Temporarily set selected frame before building
8151 tool-bar items.
8152
81532008-08-28 Michael Albinus <michael.albinus@gmx.de>
8154
8155 * dbusbind.c (XD_ERROR, XD_DEBUG_MESSAGE): Use strncpy and
8156 snprintf, respectively.
8157 (xd_append_arg): Convert strings with Fstring_make_unibyte.
8158
81592008-08-28 Chong Yidong <cyd@stupidchicken.com>
8160
8161 * Makefile.in: Revert (undocumented) 2008-08-20 change adding
8162 LDFLAGS to GNUstep CC invocation.
8163
81642008-08-27 Chong Yidong <cyd@stupidchicken.com>
8165
8166 * indent.c (Fvertical_motion): Revert last change. Handle the
8167 general case where we are moving forward, and PT spans multiple
8168 screen lines.
8169
8170 * eval.c (find_handler_clause): Temporarily increase
8171 max-lisp-eval-depth while printing the backtrace buffer, to
8172 guarantee that help-mode code can run.
8173
81742008-08-27 Eli Zaretskii <eliz@gnu.org>
8175
8176 * msdos.c (Fmsdos_remember_default_colors): Don't reverse frame
8177 colors under -rv.
8178 (IT_set_frame_parameters): Don't swap foreground and background
8179 colors if `(reverse . t)' is present in the frame properties.
8180 (internal_terminal_init): Call init_frame_faces only for the
8181 initial frame.
8182
81832008-08-27 Andreas Schwab <schwab@suse.de>
8184
8185 * dired.c (Ffile_attributes): Avoid compiler warning in bitshift.
8186
81872008-08-27 Andreas Schwab <schwab@suse.de>
8188
8189 * search.c (search_buffer): Set char_base to zero only at the end.
8190
81912008-08-27 Kenichi Handa <handa@m17n.org>
8192
b8ff72fa 8193 * fileio.c (report_file_error): Fix handling of multibyte error string.
aac0c6e3
MR
8194
81952008-08-27 Andreas Seltenreich <seltenreich@gmx.de>
8196
8197 * xterm.c (x_term_init): Temporarily hide the partially
8198 initialized terminal while calling vendor-specific-keysyms.
8199
82002008-08-26 Eli Zaretskii <eliz@gnu.org>
8201
8202 * msdos.c (internal_terminal_init): Most initializations done only
8203 once, especially initial_screen_colors[] and termscript open.
8204
82052008-08-26 Chong Yidong <cyd@stupidchicken.com>
8206
8207 * eval.c (Fcondition_case): Doc fix.
8208
8209 * widgetprv.h (EmacsFramePart): Change font member to the new font
8210 struct.
8211
8212 * widget.c: Include character.h and font.h for XSETFONT.
8213 (setup_frame_gcs): Compute X font id from font struct, just once.
8214
82152008-08-26 Eli Zaretskii <eliz@gnu.org>
8216
8217 * term.c (get_named_tty): Fix last change.
8218
82192008-08-26 Chong Yidong <cyd@stupidchicken.com>
8220
8221 * indent.c (Fvertical_motion): If moving forward starting from a
b8ff72fa 8222 multi-line string, move the iterator to the last line of that string.
aac0c6e3
MR
8223
82242008-08-25 Eli Zaretskii <eliz@gnu.org>
8225
8226 * frame.c (do_switch_frame): Mark previously displayed frame as
8227 obscured for FRAME_MSDOS_P frames as well.
8228
82292008-08-24 Eli Zaretskii <eliz@gnu.org>
8230
8231 * frame.c (make_terminal_frame): Initialize f->terminal,
8232 f->terminal->reference_count, and scroll bars on MS-DOS as well.
8233 Set the top frame to newly created frame.
8234 (Fmake_terminal_frame): Reuse the_only_display_info.
8235
8236 * vm-limit.c (get_lim_data) [MSDOS]: Use alternative methods of
8237 estimating available memory.
8238
b97439ce 82392008-08-23 David Reitter <david.reitter@gmail.com>
aac0c6e3
MR
8240
8241 * nsterm.m (ns_draw_window_cursor): Don't call
8242 NSDisableScreenUpdates and NSEnableScreenUpdates on
8243 non-NS_IMPL_COCOA systems.
8244
82452008-08-23 Andreas Schwab <schwab@suse.de>
8246
8247 * process.c (procfs_system_process_attributes): Fix use of
8248 uninitialized variables.
8249
82502008-08-23 Eli Zaretskii <eliz@gnu.org>
8251
8252 * emacs.c (main) [MSDOS]: Call syms_of_xmenu.
8253
8254 * dispnew.c (init_display): Remove MS-DOS specific conditions for
8255 calling tty-set-up-initial-frame-faces.
8256
b8ff72fa
SM
8257 * xmenu.c (Fx_popup_dialog, Fx_popup_menu, xmenu_show):
8258 Allow MSDOS frames along with X frames.
aac0c6e3
MR
8259
8260 * termhooks.h (TERMINAL_ACTIVE_P): Handle output_msdos_raw in
8261 addition to output_termcap.
8262
8263 * xdisp.c (redisplay_internal) [MSDOS]: Don't call set_tty_color_mode.
8264
8265 * termchar.h (FRAME_TTY): Support output_msdos_raw.
8266 (struct tty_display_info) [MSDOS]: Add fields related to mouse
8267 highlight.
8268
8269 * process.c [!subprocesses]: Define QCname.
8270 (syms_of_process): Intern and staticpro it.
8271
8272 * w16select.c (Fw16_set_clipboard_data, Fw16_get_clipboard_data):
b8ff72fa
SM
8273 Adjust for changes in encoding/decoding routines.
8274 Use encode_coding_object and decode_coding_object instead of
aac0c6e3
MR
8275 encode_coding and decode_coding.
8276
b8ff72fa 8277 * sysdep.c (init_sys_modes): Call dos_ttraw with tty_out as argument.
aac0c6e3
MR
8278
8279 * dosfns.c: Include frame.h before termhooks.h.
8280 (dos_cleanup): Use CURTTY ()->termscript instead of a global
8281 variable termscript.
8282
8283 * s/msdos.h (USER_FULL_NAME): Define.
8284 (SYSTEM_PURESIZE_EXTRA): Bump up to 100K.
8285
8286 * editfns.c (USER_FULL_NAME): Define to pw->pw_gecos if undefined.
8287 (Fuser_full_name): Use USER_FULL_NAME instead of a literal
8288 pw->pw_gecos.
8289
8290 * keyboard.c (handle_interrupt) [MSDOS]: Call cursor_to with
8291 SELECTED_FRAME as additional (1st) argument.
8292 (tty_read_avail_input): Handle output_msdos_raw in
8293 addition to output_termcap.
8294
8295 * msdos.c: Include frame.h before termhooks.h.
8296 (mouse_on, mouse_off, mouse_moveto, mouse_init)
8297 (msdos_set_cursor_shape, IT_set_face, IT_write_glyphs)
8298 (show_mouse_face, IT_clear_end_of_line, IT_clear_screen)
8299 (IT_clear_to_end, IT_cursor_to, IT_display_cursor, IT_cmgoto)
8300 (IT_set_terminal_modes, IT_reset_terminal_modes)
8301 (IT_set_frame_parameters): Use tty->termscript instead of a global
8302 variable termscript.
8303 (IT_write_glyphs): Use tty->terminal->terminal_coding instead of a
8304 global variable terminal_coding. Don't refer to
8305 Vnonascii_translation_table.
8306 (internal_terminal_init): Set Vwindow_system in current_kboard.
8307 Don't use TTY_CHAR_INS_DEL_OK. Set Vinitial_window_system.
8308 Announce date and time of session start, if termscript is open.
8309 Don't zero out the_only_display_info (it is done in
b8ff72fa
SM
8310 term.c:init_tty). Open termscript only of not already open.
8311 Log "SCREEN SAVED" here, instead of IT_set_terminal_modes. Init mouse
aac0c6e3
MR
8312 here instead of dos_ttraw. Don't initialize display if this is an
8313 initial tty. Don't set FRAME_FONT.
8314 (Vwindow_system_version): Bump to 23.
8315 (dos_ttraw): Accept a TTY argument; all callers fixed. If mouse
8316 is available, set up mouse_position_hook.
8317 (dos_ttraw, IT_set_terminal_modes): If called with initial
8318 terminal, do nothing.
8319 (IT_set_frame_parameters): Handle the Qtty_type frame
8320 parameter by calling internal_terminal_init.
8321 (dos_set_window_size, show_mouse_face)
8322 (clear_mouse_face, IT_note_mode_line_highlight)
8323 (IT_note_mouse_highlight, IT_update_begin, IT_frame_up_to_date)
8324 (dos_rawgetc): Use tty_display_info instead of x_display_info.
8325 (initialize_msdos_display): New function.
8326 (IT_cursor_to, IT_clear_to_end, IT_clear_screen)
8327 (IT_clear_end_of_line, IT_insert_glyphs, IT_write_glyphs)
8328 (IT_delete_glyphs, IT_ring_bell, IT_reset_terminal_modes)
8329 (IT_set_terminal_modes, IT_set_terminal_window, IT_update_begin):
b8ff72fa 8330 Accept additional argument: a pointer to a frame. Update all callers.
aac0c6e3
MR
8331 (request_sigio, unrequest_sigio): Don't define, now defined on
8332 sysdep.c.
8333 (IT_write_glyphs): Rewrite to use encode_terminal_code.
8334
8335 * term.c [MSDOS]: Include msdos.h.
8336 (init_tty) [MSDOS]: Reuse most of WINDOWSNT branch. Change cpp
8337 conditional to DOS_NT. Allow only one call to this function in a
8338 session. Don't allocate a new struct tty_display_info; instead,
8339 reuse the_only_display_info. Call get_tty_size to get screen
8340 dimensions. Call init_baud_rate to set bad_rate.
8341 (dissociate_if_controlling_tty) [MSDOS]: Ifdef away function body.
8342 (Fsuspend_tty) [MSDOS]: Don't close input and output.
b8ff72fa 8343 (Fresume_tty) [MSDOS]: Don't reopen the TTY; instead, use stdin/stdout.
aac0c6e3
MR
8344 (get_tty_terminal, get_named_tty, Ftty_type)
8345 (Fcontrolling_tty_p): Handle output_msdos_raw in addition to
8346 output_termcap.
b8ff72fa
SM
8347 (Fresume_tty, Fsuspend_tty, init_tty, delete_tty):
8348 Call add_keyboard_wait_descriptor and delete_keyboard_wait_descriptor
2ae37cf0 8349 only when subprocesses are supported.
aac0c6e3
MR
8350
8351 * frame.c (make_terminal_frame) [MSDOS]: Adjust initialization of
8352 f->output_data.x.
8353 (Fmake_terminal_frame) [MSDOS]: Don't allow creation of new
8354 terminal devices.
8355
5582fbc7 8356 * msdos.h: Remove definition of struct x_display_info and struct
aac0c6e3
MR
8357 x_output.
8358 (FRAME_FONT): Use output_data.tty.
8359 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL): Don't define.
b8ff72fa
SM
8360 (struct x_display_info): Rename from display_info. Update all users in
8361 msdos.c.
aac0c6e3 8362 (struct x_output): Remove background_pixel and foreground_pixel.
b8ff72fa 8363 (the_only_display_info): Rename from the_only_x_display.
aac0c6e3
MR
8364 (dos_ttraw): Update prototype.
8365
8366 * Makefile.in (MSDOS_OBJ): Add xmenu.o.
8367 (SOME_MACHINE_LISP): Add ../lisp/term/pc-win.elc.
8368
83692008-08-23 Jason Rumney <jasonr@gnu.org>
8370
8371 * image.c (enum tiff_keyword_index, tiff_format): Add :index keyword.
8372 (fn_TIFFSetDirectory): New library function used.
8373 (init_tiff_functions) [HAVE_NTGUI]: Initialize it.
8374 (tiff_load): Use :index to select among multiple images. Set count
8375 property when multiple images exist.
8376 (gif_format): Use :index, not :image.
8377
83782008-08-23 Chong Yidong <cyd@stupidchicken.com>
8379
8380 * xdisp.c (try_scrolling): Check INT_MAX instead of
8381 MOST_POSITIVE_FIXNUM for maximum integer value. Include limits.h
8382 to obtain INT_MAX.
8383
83842008-08-21 İsmail Dönmez <ismail@namtrac.org> (tiny change)
8385
8386 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase on GTK+.
8387
83882008-08-21 Christian Faulhammer <opfer@gentoo.org> (tiny change)
8389
8390 * Makefile.in (temacs${EXEEXT}): On GNUstep, link to appropriate
8391 GNUstep library location.
8392
83932008-08-21 Chong Yidong <cyd@stupidchicken.com>
8394
8395 * xfaces.c (x_update_menu_appearance): Check validity of menu font
8396 before using it.
8397
8398 * puresize.h (BASE_PURESIZE): Increase to 1250000.
8399
84002008-08-20 Adrian Robert <Adrian.B.Robert@gmail.com>
8401
8402 * nsfns.m (ns-read-file-name): Add casts to avoid warning.
8403 (ns-convert-utf8-nfd-to-nfc): Warn if cannot execute correctly.
8404 * nsfont.m (nsfont_draw): Compare indexed colors to 0, not nil.
8405 * nsterm.h (EmacsView-unlockFocusNeedsFlush:): Add declaration.
8406 (EmacsApp-cursor_blink_handler): Remove declaration.
8407 * nsterm.m (ns_draw_glyph_string): Update first conditional body to
8408 match 01 Feb 2008 changes in xterm.c.
8409 (ns_read_socket): Add cast to avoid warning.
8410 (EmacsApp-application:openFiles:): Don't call replyToOpenOrPrint: on
8411 GNUstep.
8412
84132008-08-20 Chong Yidong <cyd@stupidchicken.com>
8414
8415 * xselect.c (x_get_foreign_selection): Return nil if desired
8416 selection could not be obtained, instead of signalling an error.
8417
84182008-08-20 David Reitter <david.reitter@gmail.com>
8419
8420 * nsfns.m (ns_lisp_to_cursor_type): Replace with generic xfns.c.
8421 * nsterm.m: Remove ns-specific code for cursor blinking.
8422 (ns_draw_window_cursor): Clear cursor properly rather than
8423 redrawing the area. Respect width of bar cursors.
8424 These changes enable the use of generic blink-cursor-mode and
8425 generic cursor types in NS and support smooth cursor movements (do
8426 not blink off after command).
8427 * xdisp.c (get_phys_cursor_geometry): Redraw wider rectangle on
8428 Nextstep, too.
8429
84302008-08-19 Kenichi Handa <handa@m17n.org>
8431
8432 * font.c (Vfont_log_deferred): New variable.
8433 (font_add_log): Check Vfont_log_deferred.
8434 (font_deferred_log): New function.
8435
8436 * font.h (font_deferred_log): Extern it.
8437
8438 * fontset.c (reorder_font_vector): Use encoding charset of fonts
8439 for sorting.
8440 (face_for_char): Use deferred log.
8441
84422008-08-18 Kenichi Handa <handa@m17n.org>
8443
8444 * fontset.c (face_for_char): Add font log.
8445
8446 * font.c (font_add_log): Add the font properties :script, :lang,
8447 and :otf in the log.
8448
84492008-08-17 Chong Yidong <cyd@stupidchicken.com>
8450
8451 * xdisp.c: Remove dead code.
8452 (handle_invisible_prop, next_overlay_string): Defer call to
8453 setup_for_ellipsis.
8454 (handle_stop, set_iterator_to_next): Call setup_for_ellipsis.
8455
84562008-08-15 Chong Yidong <cyd@stupidchicken.com>
8457
8458 * xfaces.c (lookup_derived_face): Properly handle possible zero
8459 return value of get_lface_attributes.
8460 (merge_faces): Don't tell lookup_derived_face to signal an error
8461 if face is not found.
8462
8463 * dired.c (Fdirectory_files): Doc fix.
8464
8465 * process.c (make_process): Initialize kill_without_query struct
8466 member.
8467
84682008-08-15 Eli Zaretskii <eliz@gnu.org>
8469
8470 * w32.c (w32_system_process_attributes) [_MSC_VER < 1300]:
8471 Alternative calculation of totphys for Visual Studio 6.
8472
8473 * w32fns.c [_MSC_VER && _MSC_VER < 1300]: Declare HMONITOR.
8474
8475 * w32.c (_MEMORY_STATUS_EX, MEMORY_STATUS_EX, LPMEMORY_STATUS_EX):
8476 Rename from _MEMORYSTATUSEX, MEMORYSTATUSEX, LPMEMORYSTATUSEX.
8477 All users changed.
8478 (stat): Only root directory passed to GetDriveType. Allow RAM
8479 disk as well as local fixed disk when w32-get-true-file-attributes
8480 is set to `local'.
8481 (CopySid_Proc, EqualSid_Proc, GetLengthSid_Proc): New typedefs.
8482 (equal_sid, get_length_sid, copy_sid): New wrapper functions.
8483 (w32_cached_id, w32_add_to_cache): New functions.
8484 (get_name_and_id): Look account names in the cache before calling
8485 lookup_account_sid.
8486 (g_b_init_get_length_sid, g_b_init_equal_sid, g_b_init_copy_sid):
8487 New initialization flags.
8488 (globals_of_w32): Initialize them to zero.
8489 (w32_system_process_attributes): Use w32_cached_id and
8490 w32_add_to_cache.
8491
84922008-08-14 Lawrence Mitchell <wence@gmx.li>
8493
8494 * lread.c (Fread_char, Fread_char_exclusive): If no character
8495 event is read before timeout is reached, return nil, rather than
8496 converting to a number.
8497
84982008-08-14 Chong Yidong <cyd@stupidchicken.com>
8499
8500 * fns.c (use_dialog_box): Doc fix.
8501
8502 * s/darwin.h: Undefine HAVE_RES_INIT, which appears to be harmful
8503 on OS X.
8504
85052008-08-13 Chong Yidong <cyd@stupidchicken.com>
8506
8507 * frame.c (Qns_parse_geometry): New var.
8508 (Fx_parse_geometry): For HAVE_NS, call ns-parse-geometry.
8509
85102008-08-11 Chong Yidong <cyd@stupidchicken.com>
8511
8512 * xdisp.c (x_produce_glyphs): Handle the case when font has no
8513 space character in calculating tabs.
8514
85152008-08-11 Dan Nicolaescu <dann@ics.uci.edu>
8516
8517 * Makefile.in (bootstrap-emacs): Use ln -f in the CANNOT_DUMP case.
8518
85192008-08-10 Glenn Morris <rgm@gnu.org>
8520
8521 * process.c (procfs_system_process_attributes): Use EMACS_INTs to
8522 silence gcc "limited range of data type" warnings in some
8523 make_fixnum_or_float calls.
8524
85252008-08-09 Eli Zaretskii <eliz@gnu.org>
8526
8527 * w32.c (w32_system_process_attributes): If the process does not
8528 exist, return nil.
8529
8530 * w32.c: Include thelp32.h, psapi.h and coding.h.
8531 (_MEMORYSTATUSEX, _PROCESS_MEMORY_COUNTERS_EX): New struct
8532 declarations.
8533 (CreateToolhelp32Snapshot_Proc, Process32First_Proc)
8534 (Process32Next_Proc): New typedefs.
8535 (g_b_init_create_toolhelp32_snapshot, g_b_init_process32_first)
8536 (g_b_init_process32_next, g_b_init_open_thread_token)
8537 (g_b_init_impersonate_self, g_b_init_revert_to_self)
8538 (g_b_init_get_process_memory_info, g_b_init_global_memory_status)
8539 (g_b_init_get_process_working_set_size)
8540 (g_b_init_global_memory_status_ex): New static variables.
8541 (globals_of_w32): Initialize them.
8542 (create_toolhelp32_snapshot, process32_first, process32_next)
8543 (open_thread_token, impersonate_self, revert_to_self)
8544 (get_process_memory_info, get_process_working_set_size)
8545 (global_memory_status, global_memory_status_ex): New wrapper
8546 functions.
8547 (w32_list_system_processes, w32_system_process_attributes)
8548 (enable_privilege, restore_privilege, ltime, process_times):
8549 New functions.
8550 (convert_time_raw): New function.
8551 (convert_time): Remove conversion of FILETIME into time in 100
8552 nsec units, call convert_time_raw instead.
8553
8554 * process.h (w32_list_system_processes, w32_system_process_attributes):
8555 Add prototypes.
8556 (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess, Qttname)
8557 (Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime, Qcutime)
8558 (Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs, Quser, Qgroup)
8559 (Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime): Add extern declarations.
8560
8561 * process.c (Fsystem_process_attributes): Doc fix.
8562
85632008-08-08 Chong Yidong <cyd@stupidchicken.com>
8564
8565 * xdisp.c (move_it_to): When stopping at a charpos, check if that's
8566 a continued multi-char glyph; if so, advance to the actual glyph.
8567
85682008-08-07 Dan Nicolaescu <dann@ics.uci.edu>
8569
8570 * s/darwin.h (OTHER_FILES): Do not define here, defined in config.in.
8571
8572 * Makefile.in (ALL_OBJC_CFLAGS): New variable.
8573 (.m.o): Use it.
8574 * config.in: Regenerate.
8575
85762008-08-07 Chong Yidong <cyd@stupidchicken.com>
8577
8578 * xdisp.c (redisplay_window): Revert last change.
8579 (try_window): Check bottom scroll margin too.
8580
85812008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
8582
8583 * config.in: Regenerate.
8584
8585 * Makefile.in (emacs): Remove ifndef NS conditional for 'emacs
8586 -list-load-path-shadows'.
8587 (nsgui.h): Reduce number of things depending on it.
8588
85892008-08-06 Chong Yidong <cyd@stupidchicken.com>
8590
8591 * xdisp.c (try_scrolling): Use iterator to find the scroll margin,
8592 instead of window-end which does the wrong thing at eob.
8593 (try_cursor_movement): Minor optimization.
8594 (redisplay_window): If scroll margin is defined, don't assume
8595 window doesn't need scrolling.
8596
85972008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
8598
8599 * config.in: Regenerate.
8600
8601 * Makefile.in: Move nsXXX.m dependencies into big alphabetical list.
8602 (mostlyclean): Don't delete *.d under NS.
8603
8604 * nsterm.h (NS_HAVE_INTEGER): Change to NS_HAVE_NSINTEGER.
8605
86062008-08-06 Kenichi Handa <handa@m17n.org>
8607
8608 * xfont.c (xfont_list_family): Return a list of symbols, not strings.
8609
86102008-08-06 Andreas Schwab <schwab@suse.de>
8611
8612 * config.in: Regenerate.
8613
86142008-08-05 Chong Yidong <cyd@stupidchicken.com>
8615
8616 * xdisp.c (redisplay_window): Don't enforce scroll-margin when
8617 forcing a window start.
8618
8619 * fileio.c (Vauto_save_list_file_name): Move here from file.el.
8620 (auto_save_1): Update modtime when auto-save-list-file-name is on.
8621
86222008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
8623
8624 * emacs.c (main): Under NS, set working dir to HOME when get a "psn"
8625 argument.
8626
86272008-08-05 Juanma Barranquero <lekktu@gmail.com>
8628
8629 * buffer.c (syms_of_buffer) <scroll-up-aggressively>:
8630 <scroll-down-aggressively, before-change-functions>:
8631 <after-change-functions>: Reflow docstrings.
8632
86332008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
8634 Ken Raeburn <raeburn@gnu.org>
8635
8636 Dock menu customization, based on a patch by Ken Raeburn, plus some
8637 other fixes.
8638 * nsmenu.m (dockMenu): New variable.
8639 (EmacsDialog -clicked:): Fix mistake in change of 2008-07-17.
8640
8641 * nsterm.h (dockMenu): Declare.
8642
8643 * nsterm.m (KEY_NS_NEW_FRAME): New definition.
8644 (ns_term_init): Initialize dockMenu.
8645 (EmacsApp -newFrame:, -applicationDockMenu:): New methods.
8646 (EmacsView -windowShouldClose:): Don't behave specially if <= 1 frame
8647 left.
8648
8649 * lisp.h (LSB_TAG): Use on DARWIN_OS, not NS_IMPL_COCOA.
8650
86512008-08-04 Chong Yidong <cyd@stupidchicken.com>
8652
8653 * nsterm.h: Test directly for NS_HAVE_INTEGER before defining it.
8654
8655 * config.in: Regenerate.
8656
86572008-08-04 Seiji Zenitani <zenitani@mac.com>
8658
8659 * nsfns.m (x-create-frame): Set the frame parameter alpha to nil.
8660
86612008-08-04 Chong Yidong <cyd@stupidchicken.com>
8662
8663 * nsterm.h (find_and_call_menu_selection): Fix prototype.
8664
86652008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
8666
8667 * emacs.c (main: unexec_init_emacs_zone): Call if on DARWIN_OS.
8668
8669 * keyboard.h: Comment an #endif.
8670
8671 * lisp.h (have_menus_p): Adjust comment.
8672
8673 * menu.c (find_and_return_menu_selection): Fix comparison with
8674 client_data.
8675
8676 * nsmenu.m (popup_activated_flag): New variable.
8677 (popup_activated): New function.
8678 (menu-or-popup-active-p): New exported lisp definition.
8679 (ns_popup_menu): Set popup_activated_flag. Call discard_menu_items()
8680 when popup done.
8681 (ns_popup_dialog): Set popup_activated_flag.
8682
8683 * nsterm.m (EmacsView -conversationIdentifier): Use NSInteger
8684 version for GNUstep (handled by conditional typedef in nsterm.m).
8685 (ns_get_color): Remove special-casing for "darkblue", "dark blue" (now
8686 in rgb.txt).
8687
8688 * process.c (init_process): Use DARWIN_OS, not DARWIN.
8689
8690 * sysselect.h: Conditionalize init_process undef on DARWIN_OS.
8691
8692 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): Do it also under NS.
8693
8694 * xdisp.c (redisplay_internal, note_mouse_highlight): Under NS,
8695 shortcircuit if popup_activated like GTK and X toolkit.
8696
8697 * m/inter386.h: Change DARWIN to DARWIN_OS.
8698
8699 * s/darwin.h: Add #define DARWIN_OS. Get rid of C_SWITCH_SYSTEM def.
8700 Change LIBS_MACGUI to LIBS_NSGUI. Move temacs-conditionalized defs
8701 closer to C_SWITCH_SYSTEM_TEMACS so usage is understood. Expand
8702 comment on NO_SOCK_SIGIO.
8703
87042008-08-03 Chong Yidong <cyd@stupidchicken.com>
8705
8706 * nsterm.m (windowDidResize): Remove stopModal call.
8707
87082008-08-03 Andreas Schwab <schwab@suse.de>
8709
8710 * vm-limit.c (get_lim_data) [HAVE_GETRLIMIT && RLIMIT_AS]: Define.
8711 (check_memory_limits): Don't handle HAVE_GETRLIMIT here.
8712
87132008-08-02 Chong Yidong <cyd@stupidchicken.com>
8714
8715 * vm-limit.c (check_memory_limits): Don't use getrlimit on cygwin.
8716 Don't use uninitialized pointer variable when using getrlimit.
8717
87182008-08-02 Jason Rumney <jasonr@gnu.org>
8719
8720 * w32font.c (compute_metrics): Don't mess with glyph_idx setting here.
8721
87222008-08-02 Eli Zaretskii <eliz@gnu.org>
8723
8724 * alloc.c (NSTATICS): Bump to 0x640.
8725
8726 * s/gnu-linux.h (HAVE_PROCFS, LISTPROC, PROCATTR): New defines.
8727
8728 * lisp.h: Add prototype for directory_files_internal.
8729
8730 * process.c (Fsystem_processes_list, Fsystem_process_attributes):
8731 New functions.
8732 (syms_of_process): Defsubr them. Add initializations for various
8733 Q* symbols used in procfs_system_process_attributes.
8734 (procfs_list_system_processes, procfs_system_process_attributes)
8735 [HAVE_PROCFS]: New functions.
8736 (time_from_jiffies, ltime_from_jiffies, get_up_time, procfs_ttyname)
8737 (procfs_get_total_memory): New functions.
8738
87392008-08-01 Juanma Barranquero <lekktu@gmail.com>
8740
8741 * xfaces.c (Fx_load_color_file): Fix previous change;
8742 it is #ifdef WINDOWSNT, not WINDOWS_NT.
8743
87442008-08-01 Michael Albinus <michael.albinus@gmx.de>
8745
8746 * dbusbind.c (xd_read_message): Handle D-Bus error messages.
8747
87482008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
8749
8750 * nsterm.h (NSInteger, NSUInteger): Add defines for non-Leopard.
8751
87522008-08-01 Chong Yidong <cyd@stupidchicken.com>
8753
8754 * nsfns.m (ns_frame_parm_handlers): Add empty entry for x_set_alpha.
8755
8756 * nsterm.m (EmacsApp -application:openFiles:): GNUstep does not
8757 define NSApplicationDelegateReplySuccess.
8758 (EmacsView -converstationIdentifier): Use long instead of
8759 NSInteger for GNUstep, since it doesn't have NSInteger.
8760
8761 * xmenu.c: Revert last change.
8762
8763 * keyboard.h: Fix last change.
8764
87652008-08-01 Juanma Barranquero <lekktu@gmail.com>
8766
8767 * xfaces.c (x-load-color-file): Use RGB() instead of manually shifting
8768 on Windows.
8769
87702008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
8771
8772 Warning clearing and clean-up in NS port.
8773 * keyboard.h (xmalloc_widget_value, digest_single_submenu):
8774 Add prototypes.
8775 * nsgui.h (FACE_DEFAULT): Remove, unused.
8776 (XGCValues): Change colors to unsigned long.
8777 * nsterm.h (EmacsApp): Add declaration of all methods implemented in
8778 nsterm.m.
8779 (EmacsMenu -addItemWithWidgetValue:): Change to use NSMenuItem class.
8780 (ns_list_fonts): Remove, unused.
8781 (ns_font_to_xlfd, ns_fontname_to_xlfd): Drop prototypes.
8782 * nsfns.m (interpret_services_menu): Use NSMenuItem class.
8783 * nsfont.m (nsfont_open): Fix cast error in glyphs,metrics alloc.
8784 (nsfont_draw): Compare face colors to 0, not nil.
8785 * nsmenu.m (struct widget_value): Drop unneeded declaration.
8786 (EmacsMenu -addItemWithWidgetValue:, -fillWithWidgetValue:)
8787 (-addSubmenuWithTitle:): Use NSMenuItem class.
8788 (ns_popup_menu): Use NO, not NULL, for enabled setting.
8789 * nsterm.m (ns_draw_glyph_string): Don't compare font to ~0.
8790 (ns_clip_to_row): Make gc arg a BOOL.
8791 (ns_draw_fringe_bitmap, ns_draw_window_cursor): Use YES, NO in
8792 ns_clip_to_row() call.
8793 (ns_draw_glyph_string): Drop face comparison to ~0 (no longer
8794 used). Cast FRAME_FONT assignments.
8795 (ns_read_socket): Cast call to EmacsApp-fulfillService:withArg:.
8796 (ns_string_to_lispmod): Change arg to const char.
8797 (ns_term_init): Use NSMenuItem class.
8798 (EmacsApp -openFile:): Move to different section of file.
8799 (EmacsApp -application:openFiles:): Don't return a value, call
8800 -replyToOpenOrPrint:.
8801 (EmacsView -keyDown:): Fix up cast.
8802 (EmacsView -converstationIdentifier): Use NSInteger instead of long.
8803 (EmacsView -menuDown:): Cast tag in call to
8804 find_and_call_menu_selection().
8805 (ns_list_fonts): Remove, unused.
8806 (ns_font_to_xlfd): Make static. Cast result of UTF8String.
8807 (ns_fontname_to_xlfd): Make static.
8808 * w32menu.c (xmalloc_widget_value, digest_single_submenu):
8809 Remove prototypes (now in keyboard.h).
8810 (next_menubar_widget_id): Remove, unused.
8811 * xmenu.c (xmalloc_widget_value, digest_single_submenu):
8812 Remove prototypes (now in keyboard.h).
8813 * xfaces.c (ns_list_fonts, w32_list_fonts): Remove, unused.
8814
88152008-08-01 Dan Nicolaescu <dann@ics.uci.edu>
8816
8817 * Makefile.in (dispnew.o, gtkutil.o, sound.o, atimer.o)
8818 (floatfns.o): Depend on syssignal.h.
8819 (term.o): Depend on syssignal.h, systty.h, and $(INTERVAL_SRC).
8820
8821 * systty.h: Fix previous change that removed BSD_TERMIOS.
8822 Add comments to #ifdefs.
8823
88242008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
8825
8826 * w32fns.c (w32-load-color-file): Remove.
8827 (x-open-connection): Use renamed Fx_load_color_file.
8828 * xfaces.c (x-load-color-file): Add.
8829 * nsterm.m (ns_initialize): Load colors from etc/rgb.txt instead of
8830 Emacs.clr.
8831 (hide_hourglass): BLOCK_INPUT before UNBLOCK.
8832
88332008-07-31 Michael Albinus <michael.albinus@gmx.de>
8834
8835 * dbusbind.c (Fdbus_call_method_asynchronously)
8836 (Fdbus_method_error_internal): New defuns.
8837 (xd_read_message): Handle also reply messages.
8838 (Vdbus_registered_functions_table): Extend docstring.
8839
88402008-07-31 Juanma Barranquero <lekktu@gmail.com>
8841
8842 * keyboard.c (gobble_input): Fix previous change.
8843
88442008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
8845
8846 * bitmaps/README:
8847 * xfns.c:
8848 * termcap.c:
8849 * term.c:
8850 * syswait.h:
8851 * systty.h:
8852 * systime.h:
8853 * syssignal.h:
8854 * sysdep.c:
8855 * process.h:
8856 * process.c:
8857 * print.c:
8858 * ndir.h:
8859 * lread.c:
8860 * keyboard.c:
8861 * getpagesize.h:
8862 * floatfns.c:
8863 * fileio.c:
8864 * emacs.c:
8865 * doc.c:
8866 * dispnew.c:
8867 * dired.c:
8868 * data.c:
8869 * callproc.c:
8870 * buffer.c:
8871 * README:
8872 * Makefile.in:
8873 * s/template.h:
8874 * s/msdos.h:
8875 * m/vax.h: Remove VMS support.
8876 * s/vms.h:
8877 * vlimit.h:
8878 * uaf.h:
8879 * temacs.opt:
8880 * param.h:
8881 * ioctl.h: Remove file.
8882
88832008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
8884
8885 * s/ms-w32.h (MULTI_KBOARD): Remove.
8886 * xterm.c:
8887 * xselect.c:
8888 * xfns.c:
8889 * window.c:
8890 * w32term.c:
8891 * w32fns.c:
8892 * terminal.c:
8893 * termhooks.h:
8894 * term.c:
8895 * sysdep.c:
8896 * keyboard.h:
8897 * keyboard.c:
8898 * frame.h:
8899 * frame.c:
8900 * frame.c: Remove references to MULTI_KBOARD, it is now the default.
8901 * config.in: Regenerate.
8902
89032008-07-30 Jason Rumney <jasonr@gnu.org>
8904
8905 * w32font.h (struct w32font_info): Use unicode version of textmetrics.
8906
8907 * w32font.c (w32font_encode_char): Leave as unicode if in range.
8908 (w32font_open_internal): Get unicode version of textmetrics.
8909 Don't enable or disable glyph indices here.
8910 (w32font_open): Disable use of glyph indices.
8911
8912 * w32uniscribe.c (uniscribe_open): Enable use of glyph indices.
8913
89142008-07-30 Chong Yidong <cyd@stupidchicken.com>
8915
8916 * minibuf.c (Vread_buffer_function): Doc fix.
8917
89182008-07-30 John Paul Wallington <jpw@pobox.com>
8919
8920 * minibuf.c (read_buffer_completion_ignore_case): New var.
8921 (Fread_buffer): Use it.
8922
89232008-07-30 Dan Nicolaescu <dann@ics.uci.edu>
8924
8925 * systty.h (sensemode): Remove empty #if. Remove reference to
8926 BSD_TERMIOS, unused.
8927
8928 * sysdep.c: Remove reference to DGUX.
8929 (closedir): Remove reference to BROKEN_CLOSEDIR, unused.
8930
8931 * config.in: Regenerate.
8932
89332008-07-30 Jason Rumney <jasonr@gnu.org>
8934
8935 * w32uniscribe.c (uniscribe_encode_char): Fix glyph buffer size.
8936
89372008-07-29 Jason Rumney <jasonr@gnu.org>
8938
8939 * w32uniscribe.c (uniscribe_shape): Avoid using context if cache
8940 is populated.
8941 (uniscribe_encode_char): Always use uniscribe.
8942 Avoid using context if cache is populated.
8943
89442008-07-29 Jan Djärv <jan.h.d@swipnet.se>
8945
8946 * xmenu.c (Fx_menu_bar_open_internal): Use activate_item signal to
8947 open menu.
8948
8949 * gtkutil.c (menu_nav_ended): Remove.
8950 (create_menus): Remove signal connect for menu_nav_ended.
8951
89522008-07-28 Chong Yidong <cyd@stupidchicken.com>
8953
8954 * xdisp.c (redisplay_window): Check return value of
8955 compute_window_start_on_continuation_line before forcing a window
8956 start.
8957
89582008-07-28 Jason Rumney <jasonr@gnu.org>
8959
8960 * w32font.c (w32font_text_extents): Use w32_metric_cache consistently.
8961
8962 * w32term.c (w32_enable_unicode_output, cleartype_active):
8963 Remove obsolete display options.
8964 (x_draw_glyph_string_background): Don't use old cleartype_active
8965 workaround.
8966 (w32_initialize): Remove cleartype_active initialization.
8967 (syms_of_w32term): Remove w32_enable_unicode_output initialization.
8968
89692008-07-28 Andreas Schwab <schwab@suse.de>
8970
8971 * lisp.h (init_weak_hash_tables, syms_of_font)
8972 (xd_read_queued_messages, syms_of_dbusbind): Declare.
8973 (remove_hash_entry): Don't declare.
8974 * eval.c (maybe_call_debugger): Make static and move before use.
8975 * gtkutil.c: Include <X11/Xft/Xft.h> if HAVE_XFT.
8976 * xdisp.c: Include "gtkutil.h" if USE_GTK.
8977 * xterm.h (x_set_frame_alpha): Declare.
8978
89792008-07-28 Jan Djärv <jan.h.d@swipnet.se>
8980
8981 * gtkutil.c (menu_nav_ended): Revert change from 2008-07-24.
8982 (create_menus): Connect selection-done to menu_nav_ended.
8983
89842008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
8985
8986 * nsfns.m (x-create-frame): Add copy of parms argument to beginning.
8987 Set Vx_resource_name to a fallback. Replace read of 'buffered'
8988 parameter with read of 'alpha' one.
8989 (Qns_frame_parameter): Remove.
5582fbc7 8990 * nsselect.m (selection-coding-system)
aac0c6e3
MR
8991 (next-selection-coding-system, Vselection_coding_system)
8992 (Vnext_selection_coding_system): Drop.
8993
89942008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
8995
8996 * nsfns.m (do-applescript, do_applescript): Rename to
8997 ns-do-applescript, ns_do_applescript, and move within file.
8998
89992008-07-27 Dan Nicolaescu <dann@ics.uci.edu>
9000
9001 Remove support for Mac Carbon.
9002 * mactoolbox.c:
9003 * macterm.h:
9004 * macterm.c:
9005 * macselect.c:
9006 * macmenu.c:
9007 * macgui.h:
9008 * macfns.c:
9009 * mac.c: Remove file.
9010 * s/darwin.h:
9011 * m/intel386.h:
9012 * xfaces.c:
9013 * xdisp.c:
9014 * window.c:
9015 * tparam.c:
9016 * termhooks.h:
9017 * termcap.c:
9018 * term.c:
9019 * syssignal.h:
9020 * sysselect.h:
9021 * sysdep.c:
9022 * process.c:
9023 * lread.c:
9024 * lisp.h:
9025 * keyboard.c:
9026 * image.c:
9027 * fringe.c:
9028 * frame.h:
9029 * frame.c:
9030 * fontset.c:
9031 * font.h:
9032 * font.c:
9033 * fns.c:
9034 * fileio.c:
9035 * emacs.c:
9036 * dispnew.c:
9037 * dispextern.h:
9038 * config.in:
9039 * atimer.c:
2ae37cf0 9040 * Makefile.in: Remove code for Carbon.
aac0c6e3 9041
f0131492 90422008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
aac0c6e3
MR
9043
9044 * macterm.c (XDrawLine) [USE_MAC_IMAGE_IO]: Remove spurious return.
9045
90462008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9047
9048 * macterm.h (kCGBitmapByteOrder32Host): New define for
9049 non-universal SDKs.
9050
9051 * image.c (mac_create_cg_image_from_image, image_load_image_io)
9052 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
9053
9054 * macterm.c (XDrawLine, XCreatePixmapFromBitmapData)
9055 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
9056
90572008-07-26 David Robinow <drobinow@gmail.com> (tiny change)
9058
9059 * w32inevt.c: Include dispextern.h.
9060
90612008-07-26 Andreas Schwab <schwab@suse.de>
9062
9063 * print.c (print_object): Fix off-by-one in last change.
9064
90652008-07-25 Juanma Barranquero <lekktu@gmail.com>
9066
9067 * term.c (syms_of_term): Don't initialize default_orig_pair,
9068 default_set_foreground and default_set_background on Windows.
9069
90702008-07-25 Jason Rumney <jasonr@gnu.org>
9071
9072 * w32uniscribe.c (uniscribe_shape): Pass NULL for control arg to
9073 ScriptItemize. Clean up return value checking. Remove unused
9074 variables.
9075 (uniscribe_encode_char): Encode non-BMP characters with uniscribe
9076 shaping engine.
9077
9078 * w32font.c (w32font_has_char): Handle the case where we can't
9079 determine the script for a character.
9080
90812008-07-25 Chong Yidong <cyd@stupidchicken.com>
9082
9083 * term.c (syms_of_term): Initialize default_orig_pair,
9084 default_set_foreground, and default_set_background.
9085
9086 * getloadavg.c (nl): Rename to name_list to avoid ncurses.h
9087 clash (bug#86).
9088 (getloadavg): Callers changed.
9089
9090 * image.c (svg_load_image): Fix last change.
9091 (svg_load_image): Use rsvg_handle_get_dimensions to check that
9092 image size is valid. Use g_object_unref instead of deprecated
9093 rsvg_handle_free to free rsvg handle.
9094 (x_from_xcolors): Don't initialize pixmap (silence compiler).
9095
90962008-07-25 Jason Rumney <jasonr@gnu.org>
9097
9098 * w32font.c (w32font_encode_char): Encode characters outside BMP as
9099 surrogates before looking up glyph index.
9100 (w32font_text_extents): Encode as surrogates if falling back to
9101 functions that need UTF-16 wide chars.
9102
9103 * w32uniscribe.c (uniscribe_encode_char): Encode characters outside
9104 BMP as surrogates before looking up glyph index.
9105
91062008-07-25 Chong Yidong <cyd@stupidchicken.com>
9107
9108 * image.c (svg_load_image): Check for failure in return value of
9109 rsvg_handle_get_pixbuf. Free rsvg handle when done.
9110
91112008-07-25 Jason Rumney <jasonr@gnu.org>
9112
9113 * w32font.c (Fx_select_font): Reverse sense of second arg.
9114
91152008-07-24 Stefan Monnier <monnier@iro.umontreal.ca>
9116
9117 * syntax.c (struct lisp_parse_state, char_quoted, inc_bytepos)
9118 (dec_bytepos, find_defun_start): Use EMACS_INT for buffer positions.
9119
9120 * puresize.h (PURESIZE_CHECKING_RATIO): New macro.
9121 (PURESIZE): Use it.
9122
91232008-07-24 Dan Nicolaescu <dann@ics.uci.edu>
9124
9125 * m/amdx86-64.h (HAVE_LIB64_DIR): Consolidate ifdefs.
9126 * m/alpha.h (TEXT_END):
9127 * m/ibmrs6000.h (TEXT_END):
9128 * m/macppc.h (TEXT_END):
9129 * s/darwin.h (TEXT_END):
9130 * s/msdos.h (TEXT_END): Remove, unused.
9131 * s/gnu-linux.h (BSD_PGRPS): Add a comment.
9132 * s/cygwin.h: Remove comment.
9133
9134 * ecrt0.c (NODOT_GLOBAL_START): Remove code, unused.
9135 (DOT_GLOBAL_START): Remove conditional, redundant for CRT0_DUMMIES.
9136 * m/intel386.h (DOT_GLOBAL_START):
9137 * m/vax.h (DOT_GLOBAL_START): Remove, redundant with CRT0_DUMMIES.
9138 (USG): Remove, file not used on USG platforms.
9139
9140 * Makefile.in (HAVE_X11): Remove empty #else.
9141
91422008-07-24 Andreas Schwab <schwab@suse.de>
9143
9144 * fileio.c (Finsert_file_contents): Properly adjust undo list
9145 after format conversion.
9146
91472008-07-24 Jan Djärv <jan.h.d@swipnet.se>
9148
9149 * gtkutil.c (xg_get_font_name): Cast w to GTK_FONT_SELECTION_DIALOG.
9150 (menu_nav_ended): Remove.
9151 (create_menus): Remove signal connect for menu_nav_ended.
9152 (xg_update_menubar): Also take deactivate_cb as parameter, pass it to
9153 create_menus.
9154 (xg_modify_menubar_widgets): Pass deactivate_cb to xg_update_menubar.
9155
91562008-07-23 Jason Rumney <jasonr@gnu.org>
9157
9158 * w32font.c (w32_enumfont_pattern_entity): Return height consistent
9159 with opened font.
9160 (w32font_open): Set font type to gdi.
9161
9162 * w32uniscribe.c (uniscribe_open): Set font type to uniscribe.
9163
91642008-07-23 Dan Nicolaescu <dann@ics.uci.edu>
9165
9166 * s/usg5-4.h (ADDR_CORRECT): Remove, unused.
9167 * unexaix.c (ADDR_CORRECT): Remove conditional, the only user
9168 defines it.
9169 * unexec.c (ADDR_CORRECT): Define unconditionally.
9170
9171 * m/ibmrs6000.h (C_SWITCH_MACHINE): Remove.
9172
9173 * unexec.c: Remove code depending on !COFF and USG, the file is
9174 not used for such systems.
9175
9176 * s/netbsd.h (A_TEXT_OFFSET, A_TEXT_SEEK):
9177 * s/freebsd.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, unused.
9178 (LD_SWITCH_SYSTEM_1): Remove, update users.
9179
9180 * s/darwin.h (DATA_END):
9181 * m/intel386.h (DATA_END):
9182 * m/ibmrs6000.h (DATA_END):
9183 * m/alpha.h (DATA_END): Remove, unused.
9184
9185 * config.in: Regenerate.
9186 * s/ms-w32.h (subprocesses): Define unconditionally.
9187 * s/template.h (subprocesses): Update comment.
9188 * s/vms.h (subprocesses):
9189 * s/usg5-4.h (subprocesses):
9190 * s/hpux10-20.h (subprocesses):
9191 * s/gnu-linux.h (subprocesses):
9192 * s/cygwin.h (subprocesses):
9193 * s/bsd-common.h (subprocesses):
9194 * s/aix4-2.h (subprocesses):
9195 * s/darwin.h (subprocesses): Do not define, defined by default now.
9196
9197 * Makefile.in (C_SWITCH_SITE, LD_SWITCH_SITE): Remove, unused.
9198 Remove all references.
9199 (temacs): Add GNUstep specific ld flags.
9200
9201 * nsterm.m (syms_of_nsterm): Provide ns, not ns-windowing,
9202 similarly to what X does.
9203
92042008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
9205
9206 * nsfns.m (x-list-fonts): Remove.
9207 (syms_of_nsfns): Drop the x-list-fonts declaration.
9208 * nsterm.m: Get rid of remaining "//" comments.
9209
92102008-07-22 Chong Yidong <cyd@stupidchicken.com>
9211
9212 * xselect.c (Fx_rotate_cut_buffers_internal): Doc fix.
9213
9214 * nsselect.m (Fns_selection_exists_p, Fns_selection_owner_p)
9215 (Fx_get_selection_internal, Fns_rotate_cut_buffers_internal)
9216 (Fns_own_selection_internal, Fx_disown_selection_internal)
9217 (Fns_get_cut_buffer_internal, Fns_store_cut_buffer_internal):
9218
9219 * nsmenu.m (Fns_reset_menu, Fx_popup_menu): Change to use 'doc: /*
9220 ... */' style of docstrings. Doc fixes.
9221
92222008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
9223
9224 * terminfo.c (UP, BC, PC): Undo previous change.
9225
9226 * nsfns.m: Rename ns prefixed functions/variables to the
9227 corresponding x versions. Update references.
9228
92292008-07-22 Stefan Monnier <monnier@iro.umontreal.ca>
9230
9231 * syntax.c (char_quoted): Check "charpos > beg" before decrementing.
9232
92332008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
9234
9235 * nsfns.m (x_set_menu_bar_lines, x_set_tool_bar_lines):
9236 Remove forwarding functions.
9237 (ns_set_menu_bar_lines): Rename to x_set_menu_bar_lines, make
9238 non-static.
9239 (ns_set_tool_bar_lines): Rename to x_set_tool_bar_lines, make
9240 non-static.
9241 (ns_frame_parm_handlers): Use the new names.
9242 (syms_of_nsfns): Move to the end of file.
9243
9244 * nsterm.m (syms_of_nsterm): Move to the end of file.
9245
9246 * dispnew.c (init_display): Remove code for X10.
9247
92482008-07-22 Jason Rumney <jasonr@gnu.org>
9249
9250 * w32proc.c (Fw32_long_file_name): Don't append dir separator to
9251 bare drive.
9252
92532008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
9254
9255 * nsterm.m (syms_of_nsterm): Remove debugging println.
9256
92572008-07-22 David Reitter <david.reitter@gmail.com>
9258
9259 * nsfns.m (do_applescript, F_do_applescript): NS version of the
9260 Carbon implementation of the same functionality: execute arbitrary
9261 AppleScript code.
9262
92632008-07-21 Adrian Robert <Adrian.B.Robert@gmail.com>
9264
9265 * nsfns.m (Fx_create_frame, Fx_read_file_name, Fx_get_resource)
9266 (Fx_set_resource, Fx_set_alpha, Fx_server_max_request_size)
9267 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
9268 (Fx_display_mm_height, Fx_display_mm_width)
9269 (Fx_display_backing_store, Fx_display_visual_class)
9270 (Fx_display_save_under, Fx_open_connection)
9271 (Fx_close_connection, Fx_hide_emacs, Fx_font_name)
9272 (Fx_list_colors, Fx_perform_service, Fx_color_defined_p)
9273 (Fx_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
9274 (Fx_display_pixel_width, Fx_display_pixel_height)
9275 (Fx_display_usable_bounds, Fx_display_planes)
9276 (Fx_display_color_cells, Vns_icon_type_alist): Change to use 'doc: /*
9277 ... */' style of docstrings.
9278
92792008-07-21 Dan Nicolaescu <dann@ics.uci.edu>
9280
9281 * m/mips.h (LOAD_AVE_TYPE, LOAD_AVE_CVT): Do not define, not used
9282 on this platform.
9283 (mips):
9284 * m/iris4d.h (mips): Do not define.
9285 * sysdep.c (init_sys_modes): Use __mips__ instead of mips.
9286
9287 * m/ibmrs6000.h (LD_SWITCH_SITE): Remove.
9288
9289 * image.c:
9290 * nsfns.m:
9291 * nsselect.m:
9292 * nsterm.h:
9293 * nsterm.m: Rename ns prefixed functions/variables to the
9294 corresponding x versions. Update references.
9295
9296 * m/ibms390x.h (NO_REMAP): Do not undefine.
9297
9298 * m/amdx86-64.h: Use SOLARIS2 instead of sun.
9299
93002008-07-21 Chong Yidong <cyd@stupidchicken.com>
9301
9302 * nsfns.m: Change NS to Nextstep in docstrings and error messages.
9303 (Fns_create_frame, Fns_read_file_name, Fns_get_resource)
9304 (Fns_set_resource, Fns_set_alpha, Fns_server_max_request_size)
9305 (Fns_server_vendor, Fns_server_version, Fns_display_screens)
9306 (Fns_display_mm_height, Fns_display_mm_width)
9307 (Fns_display_backing_store, Fns_display_visual_class)
9308 (Fns_display_save_under, Fns_open_connection)
9309 (Fns_close_connection, Fns_hide_emacs, Fns_font_name)
9310 (Fns_list_colors, Fns_perform_service, Fns_color_defined_p)
9311 (Fns_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
9312 (Fns_display_pixel_width, Fns_display_pixel_height)
9313 (Fns_display_usable_bounds, Fx_display_planes)
9314 (Fns_display_color_cells, Vns_icon_type_alist): Doc fixes.
9315
93162008-07-21 Ami Fischman <ami@fischman.org> (tiny change)
9317
9318 * print.c (print_object): Check print_depth before searching for
9319 circularities.
9320
93212008-07-21 Michael Albinus <michael.albinus@gmx.de>
9322
9323 * dbusbind.c (Fdbus_register_signal): Use sprintf + strcat instead
9324 only sprintf.
9325
93262008-07-21 Kenichi Handa <handa@m17n.org>
9327
9328 * ftfont.c (adjust_anchor): Check if DeltaValue is not NULL.
9329
93302008-07-20 Andreas Schwab <schwab@suse.de>
9331
9332 * syntax.c (find_start_pos, find_start_value)
9333 (find_start_value_byte, find_start_begv, find_defun_start)
9334 (back_comment, scan_sexps_forward): Use EMACS_INT for buffer positions.
9335
93362008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
9337
9338 * s/sol2-3.h: Insert contents of s/sol2.h.
9339 (LD_SWITCH_SYSTEM): Remove redundant definition.
9340 * s/sol2.h: Remove, unused.
9341
93422008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
9343
9344 * nsterm.m (ns_get_color): Recognize HSB,AHSB be synonyms for HSV,AHSV.
9345
93462008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
9347
9348 * Makefile.in (ns_appdir): Fix typo in find command.
9349
93502008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
9351
9352 * m/intel386.h (NO_REMAP): Do no define for USG, not used.
9353
9354 * s/usg5-4.h (LIBS_SYSTEM): Remove, system for which this was
9355 added not supported anymore.
9356
9357 * s/usg5-4-2.h (LIBS_SYSTEM):
9358 * s/sol2.h (LIBS_SYSTEM): Do not undefine.
9359
9360 * s/netbsd.h (GETPGRP_NO_ARG, N_TRELOFF):
9361 * s/lynxos.h (GETPGRP_NO_ARG):
9362 * s/hpux10-20.h (NO_SIOCTL_H):
9363 * s/gnu.h (GETPGRP_NO_ARG):
9364 * s/gnu-linux.h (NO_SIOCTL_H):
9365 * s/freebsd.h (GETPGRP_NO_ARG, N_TRELOFF):
9366 * s/cygwin.h (GETPGRP_NO_ARG):
9367 * s/irix6-5.h (LIBS_SYSTEM, GETPGRP_NO_ARG): Remove, unused.
9368 (C_DEBUG_SWITCH): Remove duplicate definition.
9369
9370 * m/ibms390.h: Remove boilerplate comments.
9371
9372 * sysdep.c (closedir): Use SOLARIS2 instead of sun && USG5_4.
9373
9374 * process.c (HAVE_SERIAL): Consolidate ifdefs.
9375 (wait_reading_process_output): Remove code for SunOS, platform not
9376 supported anymore. Use SOLARIS2 instead of sun.
9377
93782008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
9379
9380 * font.c (font_open_by_name): Under NS, default lface height to zero.
9381 (font_open_for_lface): Under NS, set size based on frame fontsize.
9382 * nsterm.m (EmacsView-changeFont:): Remove some commented code.
9383 * frame.c (x_set_frame_parameters): Remove HAVE_NS ifdef.
9384
93852008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
9386
9387 * nsterm.m (ns_antialias_text, ns_use_qd_smoothing)
9388 (ns_use_system_highlight_color): Switch these from DEFVAR_BOOL to
9389 DEFVAR_LISP and change all code accordingly to use Qt/Qnil instead of
9390 YES/NO.
9391 * nsterm.h (prevUseHighlightColor): Make a Lisp_Object.
9392 * nsfont.m (nsfont_draw): Treat ns_use_qd_smoothing as Lisp_Object.
9393 * Makefile.in (clean): Clear out build destination dir.
9394
93952008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
9396
9397 * Makefile.in (nsgui.h-related dependencies): Remove abbrev, xfns,
9398 xterm, xselect.
9399 * lisp.h: Remove declaration of hash_remove.
9400 * nsgui.h: Remove redefinitions of hash_remove.
9401 * fns.c (hash_remove): Rename to hash_remove_from_table.
9402
94032008-07-19 Seiji Zenitani <zenitani@mac.com>
9404
9405 * nsfont.m (nsfont_fmember_to_entity, nsfont_make_fontset_for_font):
9406 strdup() the family UTF8String before modifying it.
9407
94082008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
9409
9410 * nsterm.m (ns_maybe_dumpglyphs_background): Compare result from
9411 NS_FACE_BACKGROUND with 0 instead of nil.
9412 * nsfont.m (nsfont_draw): Same.
9413
94142008-07-19 Chong Yidong <cyd@stupidchicken.com>
9415
9416 * nsfns.m (ns_set_background_color): Fix crash.
9417
94182008-07-18 Chong Yidong <cyd@stupidchicken.com>
9419
9420 * Makefile.in (SOME_MACHINE_LISP): Remove ns-carbon-compat.elc.
9421
94222008-07-18 Dan Nicolaescu <dann@ics.uci.edu>
9423
9424 * puresize.h (BASE_PURESIZE): Increase to 1240000.
9425
94262008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9427
9428 * gtkutil.c: Include <config.h> instead of "config.h".
9429
9430 * lisp.h (Foverlay_buffer): Add EXFUN.
9431
9432 * process.c (create_process) [!WINDOWSNT && FD_CLOEXEC]: Wait for
9433 child process to complete child_setup. Undo 2005-09-21 change.
9434
9435 * s/darwin.h: Mention setsid after vfork.
9436
94372008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9438
9439 * Makefile.in (frame.o, keyboard.o, xdisp.o, xfaces.o):
9440 Depend on macgui.h.
9441
9442 * macfns.c (Fx_server_version): Don't use gestaltSystemVersionMajor,
9443 gestaltSystemVersionMinor, or gestaltSystemVersionBugFix.
9444
9445 * macterm.c (keycode_to_xkeysym_table): Add entries for f17, f18,
9446 and f19.
9447 [MAC_OSX] (fn_keycode_to_keycode_table): Likewise.
9448
9449 * macterm.h (gestaltSystemVersionMajor, gestaltSystemVersionMinor)
9450 (gestaltSystemVersionBugFix) [MAC_OS_X_VERSION_MAX_ALLOWED < 1040]:
9451 Remove enumerators.
9452
9453 * mactoolbox.c [USE_MAC_TSM] (mac_handle_text_input_event):
9454 Check if FACE_FROM_ID returns NULL.
9455
94562008-07-17 David Robinow <drobinow@gmail.com> (tiny change)
9457
9458 * w32inevt.c (change_frame_size): Remove extern declaration.
9459 (resize_event, maybe_generate_resize_event): Pass SAFE arg to
9460 change_frame_size.
9461
94622008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
9463
9464 * getloadavg.c: Revert last change (2008-07-15).
9465
94662008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
9467
9468 * Makefile.in: Replace emacsapp, emacsbindir, emacsappsrc variables
362654a6 9469 set here with ns_appdir, ns_appresdir, ns_appbindir, ns_appsrc set
aac0c6e3
MR
9470 from configure.
9471
94722008-07-17 Dan Nicolaescu <dann@ics.uci.edu>
9473
9474 * s/sol2.h:
9475 * s/sol2-4.h: Reorganize conditionals.
9476
9477 * ecrt0.c: Remove code depending on m68000, not used anymore.
9478
9479 * fns.c (hash_remove): Make static.
9480 * lisp.h (hash_remove): Don't prototype.
9481
9482 * m/ibmrs6000.h:
9483 * m/ibms390x.h:
9484 * m/macppc.h: Remove boilerplate comments.
9485
9486 * m/sparc.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, only used on
9487 Solaris, which does not need them.
9488
9489 * m/vax.h: Remove comments about unsupported systems.
9490
9491 * s/darwin.h: Reorganize ifdefs.
9492
94932008-07-17 Andreas Schwab <schwab@suse.de>
9494
9495 * s/cygwin.h (LIB_STANDARD_LIBSRC): Don't define.
9496
94972008-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
9498
9499 Use SDATA. Follow coding convention of placing operators at
9500 beginning of next line rather than end of previous line, and placing
9501 spaces around infix operators.
9502
9503 * Makefile.in: Undef LIB_STANDARD before defining it to silence warning
9504 in case it was defined already.
9505 USE @GNUSTEP_MAKEFILES@ rather than envvars.
9506 * nsterm.m (ns_term_init): Pass Qt and Qnil rather than YES/NO to
9507 ns_default.
9508 (applicationShouldTerminate, setValuesFromPanel): Use EQ to compare
9509 Lisp_Objects.
9510 * nsterm.h (Fx_display_grayscale_p, Fx_display_planes)
9511 (ns_defined_color, ns_color_to_lisp): Declare.
9512 * nsselect.m (ns_handle_selection_request, ns_handle_selection_clear)
9513 (Fns_own_selection_internal): Make the big ugly hack more explicit, so
9514 it's accepted even with USE_LISP_UNION_TYPE.
9515 * nsmenu.m (ns_update_menubar): Use EQ to compare Lisp_Objects.
9516 (update_frame_tool_bar): Remove apparently obsolete tests for
9517 non-integerness of f->tool_bar_lines.
9518 (windowShouldClose, addButton, clicked, runDialogAt): Make the big ugly
9519 hack more explicit, so it's accepted even with USE_LISP_UNION_TYPE.
9520 * nsfont.m (nsfont_driver): Use just 0 rather than an invalid cast.
9521 (nsfont_open): Don't confuse NULL for Qnil.
9522 * nsfns.m (ns_implicitly_set_icon_type): Use EQ to compare Lisp_Objects.
9523 * menu.h (find_and_call_menu_selection):
9524 * menu.c (find_and_call_menu_selection): Use just int for vector size.
9525 (find_and_return_menu_selection): Always return something.
9526 * frame.h: Include dispextern.h for Display_Info.
9527 (display_x_get_resource): Declare.
9528
95292008-07-16 Adrian Robert <Adrian.B.Robert@gmail.com>
9530
9531 * syntax.c: Remove stdio.h include accidentally introduced in
9532 Emacs.app commit.
9533 * Makefile.in: Change GNUSTEP to NS_IMPL_GNUSTEP, COCOA to
9534 NS_IMPL_COCOA.
9535 * keyboard.c (handle_async_input, input_available_signal): Remove
9536 BSD4_1 conditional code, introduced accidentally in Emacs.app commit.
9537
95382008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
9539
9540 * nsterm.m (lisp_to_mod): Use parse_solitary_modifier instead.
9541 (ns_lisp_to_color): Don't mess with internal Lisp data fields.
9542 (ns_term_init, ns_term_shutdown, initFrameFromEmacs, ns_list_fonts):
9543 Use SDATA.
9544
9545 * keymap.c: Remove all NS-specific code.
9546 (where_is_preferred_modifier, Vwhere_is_preferred_modifier): New vars.
9547 (preferred_sequence_p): Rename from ascii_sequence_p; pay attention to
9548 where_is_preferred_modifier, return a different value depending on how
9549 preferred is the binding.
9550 (where_is_internal): Adjust accordingly.
9551 (Fwhere_is_internal): Refresh where_is_preferred_modifier.
9552 Adjust to new preferred_sequence_p.
9553 (syms_of_keymap): Declare `where-is-preferred-modifier'.
9554 * keyboard.c (parse_solitary_modifier): Not static any more.
9555 * keyboard.h (parse_solitary_modifier): Declare.
9556
95572008-07-16 Andreas Schwab <schwab@suse.de>
9558
9559 * Makefile.in (SOME_MACHINE_LISP): Remove easy-mmode, fix spelling
9560 of easymenu.
9561
95622008-07-16 Chong Yidong <cyd@stupidchicken.com>
9563
9564 * xdisp.c (move_it_in_display_line): Account for word wrap, so
9565 that we don't move off the line.
9566
95672008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
9568
9569 * keyboard.c (Qsuper): Remove.
9570 (parse_menu_item): Don't call where_is_internal specially for NS.
9571
95722008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
9573
9574 * s/gnu-linux.h: Remove boilerplate comments.
9575
9576 * m/alpha.h (__ELF__): Consolidate conditions.
9577
9578 * m/m68k.h (linux): Use GNU_LINUX instead.
9579 Remove boilerplate comments.
9580
9581 * m/intel386.h: Undo refactoring from previous change.
9582 (LIB_STANDARD): All systems that define USG define LIB_STANDARD
9583 too, remove dead code.
9584 (linux): Use GNU_LINUX instead.
9585
95862008-07-16 Jason Rumney <jasonr@gnu.org>
9587
9588 * w32gui.h: Repeat 26 June changes lost by last change.
9589
95902008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
9591
9592 * systty.h: Remove code for Aix on 386, unsupported platform.
9593
9594 * s/ms-w32.h: Remove boilerplate comments.
9595 (fcloseall, fgetchar, flushall, fputchar, getw, putw): Remove, unused.
9596
9597 * s/gnu-linux.h (TERM): Remove support.
9598 (HAVE_SYSVIPC): Remove, unused.
9599 (A_TEXT_OFFSET, A_TEXT_SEEK, ADJUST_EXEC_HEADER): Remove, not used
9600 for this system.
9601
9602 * process.c: Remove support for IRIS, unused.
9603 Remove support for TERM, not relevant anymore.
9604
9605 * unexalpha.c (DEFAULT_ENTRY_ADDRESS): Remove, replace the only
9606 used with the definition.
9607
9608 * s/aix4-2.h (static): Do not undef.
9609
9610 * m/ibmrs6000.h: Remove code depending on USG5_4, this file is
9611 only used on Aix.
9612 (HAVE_SYSVIPC): Remove, unused.
9613
9614 * m/hp800.h (CANNOT_DUMP): Do not undef.
9615
9616 * m/alpha.h: Fix comment.
9617
9618 * s/usg5-4.h (HAVE_SYSVIPC): Remove, unused.
9619 (USG_SHARED_LIBRARIES): Remove, only used in unexec.c which is not
9620 used by this configuration.
9621 * emacs.c: Remove code depending on USG_SHARED_LIBRARIES.
9622 * unexec.c: Remove code depending on HPUX and
9623 USG_SHARED_LIBRARIES, not used with this file. Remove code
9624 depending on IRIS, unused. Remove if 0-ed code.
9625
9626 * s/template.h: Remove comments about static.
9627
9628 * sysdep.c: Remove code depending on NEED_PTEM_H, unused.
9629 Remove if 0-ed code.
9630 (baud_convert): Don't depend on BAUD_CONVERT, all definitions the
9631 were the same as the default.
9632 * s/vms.h (BAUD_CONVERT): Remove, same as the default.
9633 Remove boilerplate comments.
9634 * s/hpux10-20.h (BAUD_CONVERT): Remove, same as the default.
9635 (HAVE_SYSVIPC): Remove, unused.
9636 (LD_SWITCH_SYSTEM_TEMACS): Simplify, hp9000s700 not supported anymore.
9637
9638 * m/ia64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
9639 Remove boilerplate comments.
9640 * m/amdx86-64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
9641 Remove boilerplate comments.
9642 * m/ibms390x.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
9643 Remove boilerplate comments.
9644 * lisp.h (PNTR_COMPARISON_TYPE): Define it unconditionally.
9645
9646 * m/intel386.h (DATA_SEG_BITS): Remove definitions, only used on
9647 USG systems which do not use DATA_SEG_BITS.
9648 Refactor code. Remove boilerplate comments.
9649
9650 * m/ibms390.h:
9651 * m/m68k.h:
9652 * s/bsd-common.h:
9653 * s/cygwin.h:
9654 * s/darwin.h:
9655 * s/freebsd.h:
9656 * s/gnu.h:
9657 * s/msdos.h: Remove boilerplate comments.
9658
9659 * m/iris4d.h: Remove boilerplate comments and code for systems that
6873acca 9660 do not use this file.
aac0c6e3
MR
9661 (IRIS_4D): Remove, unused.
9662
9663 * m/mips.h: Remove boilerplate comments and code for systems that
6873acca 9664 do not use this file.
aac0c6e3
MR
9665 (SIGN_EXTEND_CHAR):
9666 * m/arm.h (SIGN_EXTEND_CHAR): Remove, unused.
9667 * unexmips.c: Remove file, unused.
9668
9669 * editfns.c (Fuser_full_name): Replace the only use of
9670 USER_FULL_NAME with its value.
9671 * config.in: Regenerate.
9672
96732008-07-16 David Reitter <david.reitter@gmail.com>
9674
9675 * Makefile.in: Add ns-win, ns-carbon-compat, easy-mmode and
9676 easy-menu to SOME_MACHINE_LISP for the new NeXTstep port.
9677
96782008-07-16 Glenn Morris <rgm@gnu.org>
9679
9680 * emacs.c (system-type): Doc fix.
9681
96822008-07-15 Stefan Monnier <monnier@iro.umontreal.ca>
9683
9684 * keyboard.c (parse_menu_item): Don't use cachelist, even under NS.
9685 If the cache doesn't work, let's fix it, rather than work around it.
9686
96872008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
9688
9689 * Makefile.in: Correct additions for nsfont.o in last commit.
9690 * nsfont.m: New file (forgot last commit).
9691
96922008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
9693
9694 * callproc.c (set_initial_environment): Initialize
9695 Vprocess_environment under CANNOT_DUMP (fixes crash when
9696 batch-compiling for bootstrap).
9697
96982008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
9699 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9700
9701 (make_initial_frame): Call init_frame_faces(f) in CANNOT_DUMP case --
9702 fix crash due to different init order.
9703
97042008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
9705
9706 Changes and additions for NeXTstep windowing system (Cocoa and
9707 GNUstep) support.
9708
9709 * Makefile.in:
9710 * config.in: Support defines and build commands for NS port.
9711 * blockinput.h (BLOCK_INPUT, UNBLOCK_INPUT, TOTALLY_UNBLOCK_INPUT)
9712 (UNBLOCK_INPUT_TO): Don't use under NS unless EXPERIMENTAL_CONTROL_G.
9713 * dispextern.h: Include nsgui.h and add needed typedefs under NS
9714 windowing.
9715 (struct face): Add synth_ital field.
9716 * dispnew.c: Include nsterm.h when compiling under NS windowing.
9717 (init_display): Initialize Vinitial_window_system to "ns" when so
9718 compiled.
9719 * emacs.c: Include GSConfig.h when compiling under GNUstep.
9720 (display_arg): Use under NS.
9721 (main): Under NS, allocate autorelease pool and handle command line
9722 args. Move syms_of_xmenu() call under #ifdef HAVE_X_WINDOWS.
9723 (standard_args): Add NS-specific args.
9724 (shut_down_emacs): Shut down NS terminal if compiled under NS.
9725 * font.c (DEFAULT_ENCODING): New variable.
9726 (font_find_for_lface): Use it.
9727 (syms_of_font): Load syms_of_nsfont under NS.
9728 * font.h: Declare nsfont_driver when compiled under NS.
9729 * fontset.c: When compiling under NS, include nsterm.h.
9730 (fontset_from_font): Autoconstruct fontset under NS.
9731 * frame.c (various): Under NS, include nsterm.h, add Qns window system
9732 symbol, document and use it.
9733 (do_switch_frame): When for_deletion under Cocoa, add
9734 Fraise_frame(Qnil).
9735 (x_set_frame_parameters): Ensure font attribute changes are picked up.
9736 (x_get_arg): Allow "yes" and "no" as boolean values.
9737 (syms_of_frame): Declare Qns. Init Vdefault_frame_scroll_bars to
9738 Qright under Cocoa.
9739 (focus-follows-mouse): Default to 0 under NS.
9740 * frame.h (enum output_method): Add output_ns.
9741 (external_tool_bar, external_menu_bar, FRAME_EXTERNAL_TOOLBAR)
9742 (FRAME_EXTERNAL_MENU_BAR): Use under NS.
9743 (FRAME_WINDOW_P): NS-specific definition.
9744 * fringe.c (max_used_fringe_bitmap): Make public.
9745 * getloadavg.c (mach/mach.h): Include it under NeXT descendant OS's.
9746 (getloadavg): Use NeXT code under descendant OS's.
9747 * image.c (includes and header section, x_create_bitmap_from_data)
9748 (x_create_bitmap_from_file, free_bitmap_record, image_background)
9749 (image_background_transparent, x_clear_image_1)
9750 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
9751 (Create_Pixmap_From_Bitmap_Data, xpm_load_image, lookup_rgb_color)
9752 (x_to_xcolors, x_from_xcolors, x_disable_image)
9753 (x_build_heuristic_mask, syms_of_image): Add NS support parallel to
9754 other GUIs, including XPM support using code originally written for
9755 Carbon GUI.
9756 (png_load, jpeg_load, tiff_load, gif_load): Add implementations
9757 using NS API.
9758 (image_ascent): Use font metrics macros instead of direct struct field
9759 access.
9760 * keyboard.c (includes): Add nsterm.h when compiling under NS.
9761 (kbd_buffer_get_event): Handle NS as other GUI windowing systems.
9762 Also, handle NS as GTK for menu bar purposes.
9763 (make_lispy_event): Handle NS as other GUI windowing systems, and as X
9764 toolkit where they differ.
9765 (parse_menu_item): Prefer keybindings using 'super' modifier. Also,
9766 use cachelist, still needed under NS.
9767 * keyboard.h (ENCODE_MENU_STRING, XtPointer, Boolean): Handle as NTGUI.
9768 (struct widget_value): Define it here for menu.c.
9769 * keymap.c (includes): Include modifier internals.
9770 (lisp_to_mod, modifier_sequence_p): New functions, compiled only under
9771 NS.
9772 (where_is_internal, Fwhere_is_internal): When compiled under NS, add
9773 support for preferring sequences using certain modifiers, specified by
9774 the FIRSTONLY argument.
9775 * lisp.h (hash_remove): Rename to avoid name clash when compiling
9776 under NS GNUstep implementation.
9777 (USE_LSB_TAG): Use it under Cocoa when compiling under NS.
9778 * lread.c (init_lread): Treat NS as HAVE_CARBON for turn_off_warning.
9779 * menu.c: Include nsterm.h under NS.
9780 (single_menu_item, parse_single_submenu, xmalloc_widget_value)
9781 (free_menubar_widget_tree_value, update_submenu_strings)
9782 (find_and_call_menu_selection): Treat NS as X and NT.
9783 (find_and_return_menu_selection): New function, used for popup menus.
9784 * nsgui.h:
9785 * nsterm.h:
9786 * nsfns.m:
9787 * nsimage.m:
9788 * nsmenu.m:
9789 * nsselect.m:
9790 * nsterm.m: New files.
9791 * process.c (wait_reading_process_output): Under NS, call ns_select()
9792 instead of plain select().
9793 * syntax.c (char_quoted): Under NS, avoid a crash when called near
9794 beginning of buffer.
9795 * sysselect.h (init_process): Rename when compiling under Cocoa to
9796 avoid name conflict.
9797 * termhooks.h (display_info): Add ns_display_info to union.
9798 * terminal.c (Fterminal_live_p): Add ns to terminal types.
9799 * terminfo.c (UP, BC, PC): Don't declare when compiling under NS in
9800 COCOA environment.
9801 * unexnext.c: Update to work with mach API on Mac OS X, and to use new
9802 unexec() signature. (Note, this will dump, but the resulting file
9803 crashes; unexosx is used instead; keeping around for reference and
9804 possible aid in getting dump working under GNUstep.)
9805 * w32gui.h (button_type, widget_value): Remove definitions (now in
9806 keyboard.h).
9807 * window.c: Include nsterm.h when compiling under NS.
9808 * xdisp.c (includes): Include nsterm.h when compiling under NS.
9809 (set_frame_menubar, update_menu_bar, display_menu_bar): Handle NS as
9810 other GUI windowing systems.
9811 (update_tool_bar, redisplay_tool_bar, redisplay_window): Handle NS as
9812 GTK.
9813 (x_consider_frame_title): Under NS, set icon type and frame
9814 modified-state indicator; use ns_set_name_as_filename() when using
9815 formatted title.
9816 (update_window_cursor): Make public when compiling under NS.
9817 (display_hourglass_p, syms_of_xdisp, hourglass_shown_p)
9818 (hourglass_atimer, Vhourglass_delay
9819 * xfaces.c (header section, init_frame_faces, clear_font_table)
9820 (defined_color, unload_color, x_face_list_fonts)
9821 (prepare_face_for_display): Add NS support parallel to other GUIs.
9822 Emulate GCs like other non-X GUIs.
9823 (split_font_name): Don't lowercase font name under NS.
9824 (merge_face_ref, Finternal_set_lisp_face_attribute): Support stippling
9825 under NS.
9826 * s/darwin.h: Add support for compilation under NS.
9827
98282008-07-15 Jason Rumney <jasonr@gnu.org>
9829
9830 * w32fns.c (Fx_create_frame): Remove duplicate unwind_protect.
9831 (w32_show_hourglass): Rename from show_hourglass.
9832 (w32_hide_hourglass): Rename from hide_hourglass.
9833 (DEFAULT_HOURGLASS_DELAY): Revert from last change.
9834 (Vhourglass_delay): Declare extern.
9835 (hourglass_started): Remove.
9836
9837 * xdisp.c (Vhourglass_delay): Remove static.
9838 (hourglass_started, start_hourglass, cancel_hourglass):
9839 Don't include these versions on WINDOWSNT.
9840
98412008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
9842
9843 * dispextern.h (hourglass_shown_p, hourglass_atimer): New extern
9844 variables (formerly in xfns.c).
9845 (show_hourglass, hide_hourglass): New prototypes (same).
9846 * xdisp.c (display_hourglass_p, hourglass_shown_p, hourglass_atimer)
9847 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY): New variables (formerly
9848 in xfns.c).
9849 (syms_of_xdisp): Declare/initialize display-hourglass,
9850 hourglass-delay. Initialize hourglass_atimer, hourglass_shown_p.
9851 (hourglass_started, start_hourglass, cancel_hourglass): New functions,
9852 formerly in xfns.c.
9853 * xfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
9854 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
9855 (start_hourglass, cancel_hourglass): Remove.
9856 (show_hourglass, hide_hourglass): Remove prototypes and static
9857 modifiers.
9858 (syms_of_xfns): Remove display-hourglass, hourglass-delay,
9859 hourglass_atimer, hourglass_shown_p declaration/initialization.
9860 * macfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
9861 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
9862 (start_hourglass, cancel_hourglass): Remove.
9863 (show_hourglass, hide_hourglass): Remove prototypes and static
9864 modifiers.
9865 (syms_of_macfns): Remove display-hourglass, hourglass-delay,
9866 hourglass_atimer, hourglass_shown_p declaration/initialization.
9867 * w32fns.c (display_hourglass_p, Vhourglass_delay)
9868 (DEFAULT_HOURGLASS_DELAY): Remove.
9869 (syms_of_w32fns): Remove display-hourglass, hourglass-delay,
9870 hourglass_shown_p declaration/initialization.
9871
98722008-07-14 Jason Rumney <jasonr@gnu.org>
9873
9874 * w32fns.c (w32_get_arg): Remove wrapper function.
9875 (w32_createwindow, x_icon, x_create_tip_frame): Use x_get_arg
9876 directly.
9877 (Fx_create_frame): Sync with xfns.c. Use x_get_arg directly.
9878
98792008-07-14 Kenichi Handa <handa@m17n.org>
9880
9881 * xfont.c (xfont_open): Add workaround for X's bug.
9882
98832008-07-14 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
9884
9885 * fontset.c: Include <stdio.h> unconditionally.
9886
98872008-07-13 Michael Albinus <michael.albinus@gmx.de>
9888
9889 * dbusbind.c (Fdbus_register_signal): Allow also signal arguments
9890 for filtering.
9891
98922008-07-13 Dan Nicolaescu <dann@ics.uci.edu>
9893
9894 * s/vms.h: Use __GNUC__ instead of _GNUC_.
9895
9896 * m/macppc.h:
9897 * m/alpha.h: Use GNU_LINUX instead of LINUX. Reorganize conditionals.
9898
9899 * m/ibms390x.h (XINT, XUINT): Don't define, same as the default
9900 (SPECIAL_EMACS_INT):
9901 * m/ia64.h (SPECIAL_EMACS_INT):
9902 * m/amdx86-64.h (SPECIAL_EMACS_INT):
9903 * s/gnu.h (NLIST_STRUCT):
9904 * s/aix4-2.h (X11R5_INHIBIT_I18N):
9905 * s/gnu-linux.h (LINUX):
9906 * s/msdos.h (HAVE_FACES):
9907 * s/ms-w32.h (HAVE_FACES): Don't define, unused.
9908
9909 * systty.h:
9910 * sysdep.c (setup_pty): Don't depend on SYSV_PTYS, it is not used
9911 anymore.
9912
99132008-07-12 Dan Nicolaescu <dann@ics.uci.edu>
9914
9915 * syswait.h: Remove old if 0 code. Do not define WAITTYPE, it was
9916 always defined as int.
9917
9918 * s/netbsd.h (HAVE_UNION_WAIT, HAVE_WAIT_HEADER, WAIT_USE_INT):
9919 * s/gnu.h (HAVE_WAIT_HEADER, WAIT_USE_INT, HAVE_UNION_WAIT):
9920 * s/gnu-linux.h (HAVE_WAIT_HEADER):
9921 * s/freebsd.h (HAVE_WAIT_HEADER):
9922 * s/bsd-common.h (HAVE_UNION_WAIT):
9923 * s/aix4-2.h (HAVE_WAIT_HEADER):
9924 * m/mips.h (HAVE_UNION_WAIT):
9925 * s/usg5-4.h (HAVE_WAIT_HEADER, WAITTYPE): Do not define, not used.
9926 (COFF, static): Do not define, they are undefined later in the file.
9927
9928 * process.c (update_status): Don't use a union.
9929 (status_convert):
9930 (sigchld_handler): Use int instead of WAITTYPE.
9931
99322008-07-12 Chong Yidong <cyd@stupidchicken.com>
9933
9934 * indent.c (Fvertical_motion): Restore hscroll before moving to
9935 goal column.
9936
99372008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
9938
9939 * lisp.h: Remove left over code.
9940
99412008-07-11 Andreas Schwab <schwab@suse.de>
9942
9943 * lisp.h: Fix logic in last change.
9944
9945 * menu.h: New file.
9946 * menu.c: Include it.
9947 * xmenu.c: Likewise.
9948 * Makefile.in: Update dependencies.
9949
99502008-07-11 Kenichi Handa <handa@m17n.org>
9951
9952 * fontset.c (fontset_from_font): Cancel the previous change.
9953
99542008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
9955
9956 * lisp.h:
9957 * w32heap.c:
9958 * emacs.c:
9959 * alloc.c: Replace all references of NO_UNION_TYPE with
9960 USE_LISP_UNION_TYPE.
9961
9962 * m/xtensa.h (NO_UNION_TYPE):
9963 * m/vax.h (NO_UNION_TYPE):
9964 * m/template.h (NO_UNION_TYPE):
9965 * m/sparc.h (NO_UNION_TYPE):
9966 * m/mips.h (NO_UNION_TYPE):
9967 * m/macppc.h (NO_UNION_TYPE):
9968 * m/m68k.h (NO_UNION_TYPE):
9969 * m/iris4d.h (NO_UNION_TYPE):
9970 * m/intel386.h (NO_UNION_TYPE):
9971 * m/ibms390x.h (NO_UNION_TYPE):
9972 * m/ibms390.h (NO_UNION_TYPE):
9973 * m/ibmrs6000.h (NO_UNION_TYPE):
9974 * m/ia64.h (NO_UNION_TYPE):
9975 * m/hp800.h (NO_UNION_TYPE):
9976 * m/arm.h (NO_UNION_TYPE):
9977 * m/amdx86-64.h (NO_UNION_TYPE):
9978 * m/alpha.h (NO_UNION_TYPE): Remove definition, all platform were
9979 defining it the same.
9980
99812008-07-10 Chong Yidong <cyd@stupidchicken.com>
9982
9983 * xdisp.c (move_it_to): Backtrack if past the edge of a wrapped line.
9984
99852008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
9986
9987 * fileio.c:
50426a04 9988 * sysdep.c:
aac0c6e3
MR
9989 * systty.h:
9990 * m/ibmrs6000.h:
9991 * m/iris4d.h:
9992 * s/aix4-2.h:
9993 * s/freebsd.h:
9994 * s/gnu-linux.h:
9995 * s/hpux10-20.h:
9996 * s/hpux11.h:
9997 * s/netbsd.h:
9998 * s/sol2-3.h:
9999 * s/sol2-4.h:
10000 * s/sol2.h:
10001 * s/usg5-4.h:
10002 * s/vms.h: Remove references to unused variables.
10003
100042008-07-10 Andreas Schwab <schwab@suse.de>
10005
10006 * ftfont.c (ftfont_resolve_generic_family): Remove foundry from
10007 pattern before matching the generic family.
10008
100092008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
10010
10011 * unexec.c:
10012 * s/vms.h:
10013 * s/usg5-4-2.h:
10014 * s/sol2-5.h:
10015 * s/freebsd.h:
10016 * s/darwin.h: Remove dead code.
10017
10018 * m/template.h:
10019 * m/sparc.h:
10020 * m/mips.h:
10021 * m/m68k.h:
10022 * m/iris4d.h:
10023 * m/intel386.h:
10024 * m/ibms390x.h:
10025 * m/ibms390.h:
10026 * m/ia64.h:
10027 * m/hp800.h:
10028 * m/arm.h:
10029 * m/amdx86-64.h: Remove dead code and references to unused
10030 and compiler defined symbols.
10031
10032 * unexmips.c:
10033 * unexelf.c: Remove references to desupported systems.
10034
10035 * m/powermac.h: Remove file, it is now identical to m/macppc.h.
10036
10037 * m/powermac.h: Remove boilerplate comments.
10038 (NO_REMAP): Remove unused definition.
10039
10040 * m/macppc.h (UNEXEC, NO_TERMIO): Don't define, the s/ files
10041 define them.
10042
100432008-07-10 Kenichi Handa <handa@m17n.org>
10044
10045 * xfont.c (xfont_open): Log the reason of failure.
10046
100472008-07-09 Stefan Monnier <monnier@iro.umontreal.ca>
10048
10049 * fontset.c (fontset_get_font_group):
10050 * font.c (font_check_otf): Specify argument types.
10051
100522008-07-09 Kenichi Handa <handa@m17n.org>
10053
10054 * coding.c (detect_coding_utf_8): Set detect_info->found only when
10055 non-ASCII char is found.
10056
10057 * fontset.c (fontset_compare_rfontdef): Fix plus/minus.
10058 (reorder_font_vector): Change the arg preferred_family to font.
10059 Prefer the spec matching with font.
10060 (fontset_get_font_group): New function.
10061 (fontset_find_font): Change the format of an element of a realized
10062 fontset. Use fontset_get_font_group.
10063 (fontset_font): Try the current fontset, the default fontset, the
10064 fallbacks of the current fontset, and the fallbacks of the default
10065 fontset in this order.
10066 (face_for_char): Delete the shortcut to use the current font.
10067 (fontset_from_font): Don't set fonts for Latin in the fontset.
10068
10069 * font.h (font_make_object, font_match_p): Adjust prototypes.
10070
10071 * ftfont.h [FT_BDF_H]: Include FT_BDF_H.
10072
10073 * font.c (font_make_object): New arg entity and pixelsize.
10074 (font_check_otf_features, font_check_otf): New functions.
10075 (font_match_p): Check :lang, :script, and :otf properties.
10076
10077 * xfont.c (xfont_open): Adjust it for the change of
10078 font_make_object.
10079 (xfont_text_extents): Fix initial setting of metrics.
10080
10081 * ftfont.c (struct ftfont_info): New member index, delete member
10082 fc_charset_idx. Make the member order compatible with struct
10083 xftfont_info.
10084 (fc_charset_table): Change charset names to registry names.
10085 (ftfont_pattern_entity): Delete the args registry and
10086 fc_charset_idx. Change the value of :font-entity property
10087 to (FONTNAME . INDEX). Always set :registry property to
10088 `iso10646-1'.
10089 (struct ftfont_cache_data): New struct.
10090 (ftfont_lookup_cache): New arg for_face.
10091 (ftfont_get_fc_charset, ftfont_get_otf): New functions.
10092 (ftfont_driver): Set the member otf_capability.
10093 (ftfont_get_charset): Adjust it for the change of
10094 fc_charset_table.
10095 (OTF_TAG_SYM): New macro.
10096 (ftfont_spec_pattern): Delete the arg fc_charset_idx. Adjust it
10097 for the change of fc_charset_table.
10098 (ftfont_list): Adjust it for the change of ftfont_spec_pattern and
10099 ftfont_pattern_entity. Add FC_INDEX to objset.
10100 (ftfont_match): Adjust it for the change of ftfont_spec_pattern
10101 and ftfont_pattern_entity.
10102 (ftfont_open): Adjust it for the change of ftfont_lookup_cache,
10103 font_make_object, struct ftfont_info.
10104 (ftfont_has_char): Use ftfont_get_fc_charset.
10105 (ftfont_otf_features, ftfont_otf_capability): New functions.
10106 (ftfont_shape): Use ftfont_get_otf.
10107 (ftfont_text_extents): Fix initial setting of metrics.
10108
10109 * xftfont.c (struct xftfont_info): New member ft_size. Make the
10110 member order compatible with struct ftfont_info.
10111 (xftfont_open): Add FC_CHARSET to the pattern. Set
10112 xftfont_info->ft_size. Don't unlock the face. Check BDF
10113 properties if appropriate.
10114 (xftfont_close): Unlock the face.
10115 (xftfont_anchor_point, xftfont_shape): Deleted.
10116 (syms_of_xftfont): Don't set members anchor_point and shape of
10117 xftfont_driver.
10118
10119 * w32uniscribe.c (uniscribe_open): Adjust it for the change of
10120 font_make_object.
10121
10122 * w32font.c (w32font_open): Adjust it for the change of
10123 font_make_object.
10124 (w32font_open_internal): Don't set properties of font_object here.
10125
101262008-07-08 Chong Yidong <cyd@stupidchicken.com>
10127
10128 * macfns.c (x_create_tip_frame):
10129 * w32fns.c (x_create_tip_frame):
10130 * xfns.c (x_create_tip_frame): Pass parameter argument to
10131 face-set-after-frame-default.
10132
10133 * xfaces.c (Finternal_merge_in_global_face): Save merged
10134 attributes for the default face back into the face vector.
10135
101362008-07-08 Andreas Schwab <schwab@suse.de>
10137
10138 * fontset.h: Declare fontset_from_font. Don't declare
10139 new_fontset_from_font and fontset_from_font_name.
10140 * xterm.c: Include "fontset.h".
10141 * Makefile.in (xterm.o): Update dependencies.
10142
101432008-07-08 Glenn Morris <rgm@gnu.org>
10144
10145 * m/sparc.h: Define __sparc__ rather than sparc. (Bug#507.)
10146 * alloc.c, ecrt0.c: Use __sparc__ rather than sparc.
10147
101482008-07-07 Chong Yidong <cyd@stupidchicken.com>
10149
10150 * frame.c (Qinhibit_face_set_after_frame_default): Var deleted.
10151 (x_set_frame_parameters): Don't bind it.
10152
101532008-07-07 Juanma Barranquero <lekktu@gmail.com>
10154
10155 * w32fns.c (map_w32_filename): Declare extern.
10156
101572008-07-07 Jason Rumney <jasonr@gnu.org>
10158
10159 * w32term.c (WS_EX_LAYERED): Define if not already.
10160
101612008-07-06 Chong Yidong <cyd@stupidchicken.com>
10162
10163 * xfaces.c (set_font_frame_param): Don't try to set the font
10164 parameter if it is still unspecified in the lface.
10165
101662008-07-05 Chong Yidong <cyd@stupidchicken.com>
10167
10168 * xfaces.c (Finternal_merge_in_global_face): Don't realize default
10169 face if it didn't already exist.
10170
10171 * xdisp.c (try_window_id): Give up if word-wrapping is on.
10172
101732008-07-05 Andreas Schwab <schwab@suse.de>
10174
10175 * xdisp.c (get_it_property): Move out of HAVE_WINDOW_SYSTEM section.
10176
101772008-07-05 Chong Yidong <cyd@stupidchicken.com>
10178
10179 * xdisp.c (IT_OVERFLOW_NEWLINE_INTO_FRINGE): Turn it off if
10180 word-wrapping.
10181 (IT_DISPLAYING_WHITESPACE): New macro.
10182 (move_it_in_display_line_to): Handle MOVE_TO_X requests properly
10183 when word-wrapping. Simplify word-wrapping logic. Use correct
10184 pixel positions when saving copies of the iterator.
10185 (display_line): Use proper wrap point if the last character on a
10186 line was preceded by whitespace.
10187
101882008-07-04 Stefan Monnier <monnier@iro.umontreal.ca>
10189
10190 * Makefile.in (${etc}DOC): Depend on ${lisp} rather than ${shortlisp}.
10191
101922008-07-04 Kenichi Handa <handa@m17n.org>
10193
10194 * fns.c (Fstring_to_unibyte): Delete the arg ACCEPT-LATIN-1.
10195
10196 * lisp.h: EXFUN adjusted for the change of Fstring_to_unibyte.
10197
101982008-07-02 Jason Rumney <jasonr@gnu.org>
10199
10200 * xfns.c (syms_of_xfns): Only define x-select-font when both
2ae37cf0 10201 HAVE_FREETYPE and USE_GTK.
aac0c6e3
MR
10202
10203 * xdisp.c (next_element_from_display_vector): Move assignment out
10204 of if statement.
10205
102062008-07-02 Toru Tsuneyoshi <t_tuneyosi@hotmail.com>
10207
10208 * lisp.h (Qdelete_file, Qdelete_directory): Declare extern.
10209
10210 * fileio.c (delete_by_moving_to_trash, Qmove_file_to_trash): New vars.
10211 (syms_of_fileio): Initialize and export them.
10212 (Fdelete_directory, Fdelete_file): Optionally delete via trash.
10213
10214 * w32fns.c (FOF_NO_CONNECTED_ELEMENTS): Define if not already.
10215 (Fsystem_move_file_to_trash): New function.
10216 (syms_of_w32fns): Export it to lisp.
10217
102182008-07-01 Jason Rumney <jasonr@gnu.org>
10219
10220 * w32font.c (w32font_text_extents): Don't count overhang as part
10221 of width.
10222
102232008-06-30 Miles Bader <miles@gnu.org>
10224
10225 * dispextern.h (struct glyph, struct it, struct iterator_stack_entry):
10226 Add `avoid_cursor_p' field.
10227
10228 * xdisp.c (push_it, pop_it): Save/restore avoid_cursor_p field.
10229 (set_cursor_from_row): Skip glyphs with avoid_cursor_p set.
10230 (append_glyph, append_composite_glyph, produce_image_glyph)
10231 (append_stretch_glyph): Initialize avoid_cursor_p.
10232 (get_it_property): Rename from `get_line_height_property'.
10233 (x_produce_glyphs): Use get_it_property.
10234 (handle_line_prefix, push_display_prop): New functions.
10235 (display_line, move_it_in_display_line_to): Handle line/wrap prefixes.
10236 (Vwrap_prefix, Qwrap_prefix, Vline_prefix, Qline_prefix):
10237 New variables.
10238 (syms_of_xdisp): Initialize them.
10239
102402008-06-30 Kenichi Handa <handa@m17n.org>
10241
10242 * xftfont.c (xftfont_open): Don't call FcConfigSubstitute and
10243 XftDefaultSubstitute (they are called in XftFontMatch).
10244 (xftfont_open): Fix args to ftfont_font_format.
10245
10246 * ftfont.c (fc_charset_table): New member lang.
10247 (ftfont_resolve_generic_family): New arg pattern.
60612c8f 10248 (ftfont_spec_pattern): Check fc_charset_table[]->lang.
aac0c6e3
MR
10249 (ftfont_list): Call ftfont_resolve_generic_family with `pattern'.
10250 (ftfont_open): Fix args to ftfont_font_format.
10251 (ftfont_font_format): New arg filename.
10252
102532008-06-30 Chong Yidong <cyd@stupidchicken.com>
10254
10255 * xfaces.c (Finternal_merge_in_global_face): If default face was
10256 modified, realize it again. Update the font face attribute.
10257
102582008-06-29 Jason Rumney <jasonr@gnu.org>
10259
10260 * w32term.c (x_set_frame_alpha): Fix logic.
10261
102622008-06-29 Kenichi Handa <handa@m17n.org>
10263
10264 * fontset.c (Finternal_char_font): Return font-object instead of
10265 font-name.
10266
10267 * composite.c (get_composition_id): Fix the width calculation for TAB.
10268
102692008-06-29 Stefan Monnier <monnier@iro.umontreal.ca>
10270
10271 * indent.c (Fvertical_motion): Properly handle float column arg.
10272
102732008-06-28 Jason Rumney <jasonr@gnu.org>
10274
10275 * w32term.c (pfnGetFontUnicodeRanges): Remove unused function pointer.
10276 (pfnSetLayeredWindowAttributes): New function pointer.
10277 (w32_initialize): Initialize it when supported.
10278 (x_set_frame_alpha): New function.
10279
10280 * w32fns.c (Fx_create_frame): Initialize frame parameter `alpha'.
10281 (w32_frame_parm_handlers): Set alpha handler.
10282
10283 * frame.c (x_set_alpha) [HAVE_NTGUI]: Call x_set_frame_alpha.
10284
102852008-06-27 Jason Rumney <jasonr@gnu.org>
10286
10287 * w32fns.c (x_to_w32_font, w32_to_x_font, x_to_w32_weight)
10288 (w32_to_x_weight, w32_to_all_x_charsets): Remove obsolete functions.
10289 (w32_to_x_charset, x_to_w32_charset)
10290 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
10291 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
10292 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
10293 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
10294 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
10295 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
10296 (Qw32_charset_mac, Vw32_charset_info_alist): Move to w32font.c.
10297 (Qw32_charset_unicode): Remove.
10298 (syms_of_w32fns): Update for above changes.
10299
10300 * w32font.c (w32_to_x_charset, x_to_w32_charset)
10301 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
10302 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
10303 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
10304 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
10305 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
10306 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
10307 (Qw32_charset_mac, Vw32_charset_info_alist): Move from w32fns.c.
10308 (syms_of_w32font): Update for above changes.
10309
103102008-06-27 Dan Nicolaescu <dann@ics.uci.edu>
10311
10312 * s/usg5-4.h: Fix previous change: keep the correct branch of a
10313 removed #if.
10314 (USG_SHARED_LIBRARIES): Remove duplicate definition.
10315
103162008-06-26 Juanma Barranquero <lekktu@gmail.com>
10317 Eli Zaretskii <eliz@gnu.org>
10318
10319 * makefile.w32-in (LOCAL_FLAGS):
10320 Don't include WINDOWSNT, DOS_NT and _UCHAR_T.
10321
10322 * sysdep.c (_spawnlp, _getpid):
10323 Declare with explicit _cdecl instead of _CRTAPI1.
10324
10325 * editfns.c (Fget_internal_run_time):
10326 Check for WINDOWSNT with #ifdef, not #if.
10327
103282008-06-26 Jason Rumney <jasonr@gnu.org>
10329
10330 * w32font.h (FONT_HANDLE, FONT_TEXTMETRIC): New macros.
10331
10332 * w32term.c (x_draw_glyph_string_foreground)
10333 (x_draw_composite_glyph_string_foreground): Sync with xterm.c.
10334 Use FONT_HANDLE macro.
10335 (x_draw_glyph_string): Use FONT_TEXTMETRIC macro.
10336
10337 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
10338 (uniscribe_encode_char): Use FONT_HANDLE macro.
10339
10340 * w32font.c (Fx_select_font): Use FONT_HANDLE macro.
10341 (w32font_text_extents): Use precast w32_font.
10342 (w32font_close): Free cached metrics.
10343 (w32font_open_internal): Allocate space for name on stack.
10344
103452008-06-26 Chong Yidong <cyd@stupidchicken.com>
10346
10347 * xdisp.c (extend_face_to_end_of_line): Fix last change.
10348
103492008-06-26 Jason Rumney <jasonr@gnu.org>
10350
10351 * w32term.h (FONT_AVG_WIDTH): Remove obsolete macro.
10352 (CP_8BIT, CP_UNICODE, CP_UNKNOWN): Remove obsolete constants.
10353
103542008-06-26 Juanma Barranquero <lekktu@gmail.com>
10355
10356 * Makefile.in (SOME_MACHINE_OBJECTS): Remove w32bdf.o.
10357
103582008-06-26 Jason Rumney <jasonr@gnu.org>
10359
10360 * w32bdf.c, w32bdf.h: Remove obsolete files.
10361
10362 * makefile.w32-in: Remove refs to w32bdf.h and w32bdf.c.
10363
10364 * w32gui.h: Don't include w32bdf.h.
10365 (XCharStruct, enum w32_char_font_type, W32FontStruct):
10366 Remove obsolete font support.
10367
10368 * w32font.h (struct w32font_info): Remove compat_w32_font.
10369 Add hfont member.
10370 (FONT_COMPAT): Remove obsolete macro.
10371
10372 * w32font.c (w32font_close): Remove compat code. Delete hfont member.
10373 (w32font_encode_char, w32font_text_extents): Use new hfont member.
10374 (w32font_open_internal): Remove compat code. Set new hfont member.
10375 (Fx_select_font): Use new hfont member.
10376
10377 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
10378 (uniscribe_encode_char): Use new hfont member.
10379
10380 * w32term.c (x_draw_glyph_string_foreground)
10381 (x_draw_composite_glyph_string_foreground): Use new hfont member.
10382 (x_draw_glyph_string): Use metrics in w32font_info.
10383
103842008-06-26 Kenichi Handa <handa@m17n.org>
10385
10386 * xdisp.c (handle_auto_composed_prop): Fix for the terminal case.
10387
103882008-06-26 Dan Nicolaescu <dann@ics.uci.edu>
10389
10390 * unexnext.c:
10391 * m/ews4800.h:
10392 * m/hp9000s300.h:
10393 * m/ibm370aix.h:
10394 * m/mips-siemens.h:
10395 * m/ncr386.h:
10396 * m/next.h:
10397 * m/pmax.h:
10398 * m/powerpcle.h:
10399 * m/tandem-s2.h:
10400 * s/386bsd.h:
10401 * s/bsd386.h:
10402 * s/bsd4-1.h:
10403 * s/bsd4-2.h:
10404 * s/bsdos2-1.h:
10405 * s/bsdos2.h:
10406 * s/bsdos3.h:
10407 * s/bsdos4.h:
10408 * s/nextstep.h:
10409 * s/ultrix4-3.h:
10410 * s/usg5-0.h:
10411 * s/usg5-2-2.h:
10412 * s/usg5-2.h:
10413 * s/usg5-4-3.h:
10414 * s/ux4800.h:
10415 * s/uxpds.h:
10416 * s/uxpv.h: Remove support for obsolete systems.
10417 * s/hpux.h, s/hpux10.h, s/hpux8.h, s/hpux9.h, s/hpux9shr.h:
8f3a3ac2 10418 Remove, insert contents in s/hpux10-20.h.
aac0c6e3
MR
10419 * s/aix3-1.h, s/aix3-2-5.h, s/aix3-2.h, s/aix4-1.h, s/aix4.h:
10420 Remove, insert contents in s/aix4-2.h.
10421 * s/usg5-3.h: Remove, insert contents in s/usg5-4.h.
10422 * s/bsd4-3.h: Rename to ...
10423 * s/bsd-common.h: ... this.
10424 * data.c:
10425 * doc.c:
10426 * ecrt0.c:
10427 * emacs.c:
10428 * fileio.c:
10429 * floatfns.c:
10430 * keyboard.c:
10431 * mem-limits.h:
10432 * print.c:
10433 * process.c:
10434 * sysdep.c:
10435 * syssignal.h:
10436 * systty.h:
10437 * syswait.h:
10438 * term.c:
10439 * unexec.c:
10440 * unexelf.c:
10441 * unexhp9k800.c:
10442 * m/hp800.h:
10443 * m/ibmrs6000.h:
10444 * m/mips.h:
10445 * m/vax.h:
10446 * s/darwin.h:
10447 * s/freebsd.h:
10448 * s/gnu.h:
10449 * s/ms-w32.h:
10450 * s/msdos.h:
10451 * s/netbsd.h:
10452 * s/template.h: Remove references to obsolete variables.
10453
10454 * Makefile.in: Add dependencies for all unexec files.
10455 (admindir): Remove unused variable.
10456 (UNEXEC_SRC): Remove references.
10457
104582008-06-25 Chong Yidong <cyd@stupidchicken.com>
10459
10460 * xfns.c (x_default_font_parameter): If Xft is available, first
10461 try Monospace-12 for the default font.
10462
104632008-06-25 Jason Rumney <jasonr@gnu.org>
10464
10465 * xdisp.c (get_glyph_face_and_encoding): Encode invalid glyphs as 0.
10466
104672008-06-25 Stefan Monnier <monnier@iro.umontreal.ca>
10468
10469 * bytecode.c (Fbyte_code): Disable debugging code that doesn't compile.
10470
10471 * buffer.c (syms_of_buffer): Remove default-word-wrap.
10472
104732008-06-25 Juanma Barranquero <lekktu@gmail.com>
10474
10475 * xdisp.c (syms_of_xdisp) <truncate-partial-width-windows>: Doc fix.
10476 <scroll-conservatively>: Fix typo in docstring.
10477
10478 * xselect.c (Fx_send_client_event): Doc fix.
10479
104802008-06-25 Kenichi Handa <handa@m17n.org>
10481
10482 * xfaces.c (Fx_list_fonts): Call Flist_fonts with the arg PREFER.
10483
10484 * font.c (font_parse_fcname): Remove unused variables.
10485 (font_sort_entites): Delete the arg SPEC. Caller changed.
10486 Fix for the case of ! best_only.
10487 (font_delete_unmatched): Check DPI and AVGWIDTH too.
10488
10489 * lisp.h (Fstring_to_unibyte): EXFUN it.
10490
10491 * character.h (str_to_unibyte): Extern it.
10492
10493 * character.c (str_to_unibyte): New function.
10494
10495 * fns.c (Fstring_to_unibyte): New function.
10496 (syms_of_fns): Defsubr it.
10497
104982008-06-24 Kenichi Handa <handa@m17n.org>
10499
10500 * font.c (font_score): Even if the PIXEL_SIZE is the same, check
10501 DPI too.
10502 (font_sort_entites): Setup prefer_prop[FONT_DPI_INDEX] too.
10503
105042008-06-24 Andreas Schwab <schwab@suse.de>
10505
10506 * Makefile.in (${lispsource}loaddefs.el): Rename from
10507 ../lisp/loaddefs.el.
10508 (bootstrap-clean): Do what distclean does but don't remove
10509 Makefile.
10510 (distclean): Depend on bootstrap-clean and remove Makefile.
10511
105122008-06-24 Chong Yidong <cyd@stupidchicken.com>
10513
10514 * buffer.h (struct buffer): New member word_wrap.
10515
10516 * buffer.c (syms_of_buffer): New variables default-word-wrap and
10517 word-wrap.
10518 (init_buffer_once): Initialize them.
10519
10520 * dispextern.h (struct it): Replace bool truncate_lines_p with a
10521 line_wrap enum possessing three possible values.
10522
10523 * termopts.h: Replace truncate_partial_width_windows with
10524 Vtruncate_partial_width_windows.
10525
10526 * dispnew.c (direct_output_for_insert): Avoid direct output when
10527 inserting a space with word wrap on.
10528
10529 * indent.c (compute_motion): Obey integer values of
10530 truncate-partial-width-windows.
10531
10532 * xdisp.c (Vtruncate_partial_width_windows): New Lisp_Object,
10533 replacing truncate_partial_width_windows.
10534 (init_iterator): If Vtruncate_partial_width_windows is an integer,
10535 truncate only if the window width is below that integer.
10536 (start_display, resize_mini_window, produce_stretch_glyph)
10537 (display_string, move_it_in_display_line_to): Use line_wrap.
10538 (back_to_previous_visible_line_start, reseat_1): Reset
10539 string_from_display_prop_p.
10540 (display_line): Extend default face to end of line when wrapping.
10541
105422008-06-24 Kim F. Storm <storm@cua.dk>
10543
10544 * xdisp.c (display_line, move_it_in_display_line_to): Add ability
10545 to wrap continued lines at word boundaries.
10546
105472008-06-24 Jason Rumney <jasonr@gnu.org>
10548
10549 * font.c (Ffont_face_attributes): Multiply pixel size before point
10550 conversion to avoid multiplying rounding error.
10551
105522008-06-23 Jason Rumney <jasonr@gnu.org>
10553
10554 * w32term.c (x_draw_glyph_string_background)
10555 (x_draw_glyph_string): Remove old bdf font code.
10556
10557 * w32term.h (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): Remove.
10558
105592008-06-22 Kenichi Handa <handa@m17n.org>
10560
10561 * font.c (font_find_for_lface): Try the adstyle specified in
10562 the property of LFACE_FONT of LFACE (if any).
10563
105642008-06-21 Seiji Zenitani <zenitani@mac.com>
10565 Ryo Yoshitake <ryo@shiftmode.net>
10566
10567 * xterm.c (x_set_frame_alpha): Add x_catch_errors for bug#437.
10568
105692008-06-22 Stefan Monnier <monnier@iro.umontreal.ca>
10570
10571 * Makefile.in (${lisp} ${SOME_MACHINE_LISP}, ../lisp/loaddefs.el):
10572 Use $(BOOTSTRAPEMACS) rather than witness-emacs.
10573 (bootstrap-emacs${EXEEXT}): Merge witness-emacs into it.
10574 (witness-emacs): Remove.
10575 (lisp, shortlisp): Move loaddefs.el earlier.
10576 (mostlyclean): Forget about witness-emacs.
10577
105782008-06-22 Glenn Morris <rgm@gnu.org>
10579
10580 * Makefile.in (witness-emacs): Depend on temacs${EXEEXT}.
10581 (.SUFFIXES): Declare .el.elc as a suffix rule, for non-GNU makes.
10582
105832008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
10584
10585 * Makefile.in (PRECOMP): Remove.
10586 (${lisp} ${SOME_MACHINE_LISP}): Remove pseudo dependency on PRECOMP.
10587 (witness-emacs): Run `compile-first'.
10588 (.el.elc): Use the new compile-onefile target.
10589
105902008-06-21 Kenichi Handa <handa@m17n.org>
10591
10592 * xftfont.c (xftfont_open): Handle QCembolden only when
10593 FC_EMBOLDEN is defined.
10594
105952008-06-21 Andreas Schwab <schwab@suse.de>
10596
10597 * Makefile.in (witness-emacs): Use ../lisp, not $(lispsource).
10598 (.el.elc): Likewise.
10599
106002008-06-21 Miles Bader <miles@gnu.org>
10601
10602 * Makefile.in (../lisp/loaddefs.el): Build autoloads in the lisp
10603 build dir, not the lisp source dir.
10604
106052008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
10606
10607 * Makefile.in (emacs${EXEEXT}): Link the new emacs to bootstrap-emacs.
10608 (bootstrapclean): Remove.
10609 (.el.elc): New rule.
10610 (PRECOMP): New var.
10611 (../lisp/subdirs.el): Remove.
10612 (bootstrap-emacs${EXEEXT}): Remove subdirs.el and charpro.el dependency.
10613 (witness-emacs): New target.
10614 (mostlyclean): Remove witness-emacs as well.
10615 (../lisp/loaddefs.el, ${lisp} ${SOME_MACHINE_LISP}):
10616 Add witness-emacs dependency.
10617
106182008-06-20 Chong Yidong <cyd@stupidchicken.com>
10619
10620 * font.c (Ffont_face_attributes): Omit key-attribute pairs not
10621 defined by the font.
10622
106232008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
10624
10625 * Makefile.in (emacs${EXEEXT}): Depend on the machine-specific files.
10626 (bootstrap-clean): New target that keeps TAGS around.
10627 (../lisp/subdirs.el, ../lisp/loaddefs.el): New targets.
10628 (bootstrap-emacs${EXEEXT}): Depend on subdirs.el.
10629
106302008-06-20 Jason Rumney <jasonr@gnu.org>
10631
10632 * w32fns.c, w32term.c, w32term.h, w32gui.h [OLD_FONT]:
10633 Remove obsolete font code.
10634
10635 * w32font.c (font_matches_spec): Use csb bitfield from font signature
10636 to determine language support.
10637
106382008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
10639
10640 * sysdep.c (cfsetspeed): New fun extracted from the code.
10641 (cfmakeraw): Move before first use.
10642
106432008-06-20 Angelo Graziosi <angelo.graziosi@alice.it> (tiny change)
10644
10645 * sysdep.c (cfmakeraw): Provide fallback implementation.
10646 (serial_configure): Provide fallback implementation of cfsetspeed.
10647
106482008-06-20 Kenichi Handa <handa@m17n.org>
10649
10650 * xftfont.c (xftfont_open): Add FOUNDRY, SPACING, DPI, SCALABLE to
10651 the pattern.
10652
10653 * fontset.c (fontset_from_font): Copy font_spec before changing
10654 the elements.
10655
10656 * xfns.c (x_default_font_parameter): Try "monospace-12" too.
10657
106582008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
10659
10660 * w32fns.c, xfns.c (x_default_font_parameter): Only set `font-param'
10661 for explicit `font' parameters.
10662
10663 * frame.c (x_set_font): Remove unexplained call to fix inf-recursion.
10664
106652008-06-19 Kenichi Handa <handa@m17n.org>
10666
10667 * frame.c: Include <ctype.h>.
10668 (x_set_font_backend): Allow spacing characters in the X resource
10669 for FontBackend.
10670
106712008-06-19 Stefan Monnier <monnier@iro.umontreal.ca>
10672
10673 * w32fns.c, xfns.c (Qfont_param): New var.
10674 (syms_of_w32fns): Initialize it.
10675 (x_default_font_parameter): Record explicit `font' into
10676 `font-parameter'.
10677
106782008-06-18 Kenichi Handa <handa@m17n.org>
10679
10680 * font.c (font_parse_xlfd): Fix previous change.
10681 (font_parse_fcname): Don't use :fc-unknown-spec.
10682 (FRAME_X_DISPLAY_INFO): Be sure to have at least 1 pixel height.
10683 (Fcopy_font_spec): Preserve the order of elements in FONT_EXTRA.
10684 (font_add_log): Prepend the driver name to the resulting fonts.
10685
10686 * ftfont.c (ftfont_pattern_entity): New arg extra. Caller changed.
10687 (ftfont_spec_pattern): Don't check QCfc_unknown_spec and QCname.
10688 (ftfont_list) [FC_FONTFORMAT]: Include FC_FONTFORMAT in objset.
10689
10690 * xftfont.c (QChinting , QCautohint, QChintstyle, QCrgba)
10691 (QCembolden): New variables.
10692 (syms_of_xftfont): DEFSYM them.
10693 (xftfont_open): Call XftFontMatch. Don't trust the result of
10694 XftTextExtents8 if the pixel_size is less than 5.
10695
106962008-06-18 Andreas Schwab <schwab@suse.de>
10697
10698 * font.c (Ffont_face_attributes): Only define if HAVE_WINDOW_SYSTEM.
10699 (syms_of_font): Only defsubr if HAVE_WINDOW_SYSTEM.
10700
107012008-06-18 Jason Rumney <jasonr@gnu.org>
10702
10703 * w32font.c (w32font_list, w32font_match): Add logging.
10704
10705 * w32uniscribe.c (uniscribe_list, uniscribe_match): Add logging.
10706
107072008-06-17 Chong Yidong <cyd@stupidchicken.com>
10708
10709 * font.c (font_parse_fcname): Store divider characters for
10710 unknown-spec list. For known key symbols, intern using correct
10711 symbol name.
10712
107132008-06-17 Kenichi Handa <handa@m17n.org>
10714
10715 * xfaces.c (realize_default_face): If the frame is not on window
10716 system, set the fontset of face to nil.
10717
107182008-06-17 Naohiro Aota <nao.aota@gmail.com> (tiny change)
10719
10720 * fontset.c (fontset_pattern_regexp): Escape some reg-expr characters.
10721
107222008-06-16 Juanma Barranquero <lekktu@gmail.com>
10723
10724 * dispextern.h (lookup_non_ascii_face, split_font_name_into_vector)
10725 (build_font_name_from_vector): Delete externs.
10726
10727 * xfaces.c (struct font_name): Don't declare.
10728
107292008-06-16 Stefan Monnier <monnier@iro.umontreal.ca>
10730
10731 * font.c (font_unparse_gtkname): Use EQ to compare Lisp_Objects.
10732
107332008-06-16 Chong Yidong <cyd@stupidchicken.com>
10734
10735 * font.c (font_parse_fcname): Fix handling of unknown-spec string.
10736
107372008-06-16 Juanma Barranquero <lekktu@gmail.com>
10738
10739 * font.c (Ffont_spec): Fix usage in docstring.
10740 (Ffont_face_attributes): Doc fix.
10741
107422008-06-16 Andreas Schwab <schwab@suse.de>
10743
10744 * font.c (Ffont_face_attributes): Fix definition.
10745
107462008-06-16 Jason Rumney <jasonr@gnu.org>
10747
10748 * font.h (font_style_symbolic_from_value): Remove.
10749
10750 * font.c (font_style_symbolic_from_value): Remove.
10751 (font_style_symbolic): Revert to pre 2008-06-13 version.
10752
10753 * w32font.c (w32_to_fc_weight): New function.
10754 (w32font_full_name, logfont_to_fcname): Use it.
10755
107562008-06-16 Kenichi Handa <handa@m17n.org>
10757
10758 * font.c (font_check_object): Delete it.
10759 (font_clear_cache): Check if a font-object is alive.
10760 (font_open_entity): Likewise. Set FONT_OBJLST_INDEX of a
10761 font-object to nil.
10762 (font_close_object): Don't check FONT_CLOSE_OBJECT.
10763 (font_at): Don't call font_check_object.
10764 (Ffont_get): Return a symbol for :weight, :slant, and :width.
10765
107662008-06-16 Katsumi Yamaoka <yamaoka@jpl.org>
10767
10768 * puresize.h (BASE_PURESIZE): Increase to 1230000.
10769
107702008-06-16 Chong Yidong <cyd@stupidchicken.com>
10771
10772 * font.c (font_parse_fcname): Correctly parse KEY=VAL values.
10773
107742008-06-15 Chong Yidong <cyd@stupidchicken.com>
10775
10776 * font.c (font_parse_fcname): Only one decimal point.
10777 (font_unparse_fcname): Handle data in family and foundry indices
10778 as symbols, not strings.
10779 (font_unparse_gtkname, Ffont_face_attributes): New functions.
10780
10781 * xfns.c (Fx_select_font): Give GTK font dialog the default font name.
10782
10783 * font.h (font_unparse_gtkname): Add prototype.
10784
107852008-06-15 Naohiro Aota <nao.aota@gmail.com> (tiny change)
10786
10787 * fontset.c (fontset_pattern_regexp): Escape `+' characters in pattern.
10788
107892008-06-15 Andreas Schwab <schwab@suse.de>
10790
10791 * font.c (font_update_drivers): Fix crash when no drivers match.
10792
107932008-06-15 Stefan Monnier <monnier@iro.umontreal.ca>
10794
10795 * xfns.c (Fx_create_frame): internal-border-width default to 0 for Gtk.
10796 * gtkutil.c (xg_create_frame_widgets): Don't set internal_border_width.
10797
107982008-06-14 Stefan Monnier <monnier@iro.umontreal.ca>
10799
10800 * xdisp.c (syms_of_xdisp): Default underline-minimum-offset to 1.
10801
108022008-06-13 Stefan Monnier <monnier@iro.umontreal.ca>
10803
10804 * process.c (Fserial_process_configure, Fprocess_send_eof):
10805 Use EQ to compare Lisp_Objects.
10806
108072008-06-13 Jason Rumney <jasonr@gnu.org>
10808
10809 * w32fns.c (Fw32_select_font): Remove old font API function.
10810
10811 * w32font.c (logfont_to_fcname): New function.
10812 (Fx_select_font): New font dialog function compatible with
10813 GTK/fontconfig version.
10814
10815 * font.c (font_style_symbolic_from_value): New function.
10816 (font_style_symbolic): Use it.
10817
10818 * font.h (font_style_symbolic_from_value): Declare new function.
10819
108202008-06-13 Juanma Barranquero <lekktu@gmail.com>
10821
10822 * font.c (syms_of_font) <font-weight-table, font-slant-table>:
10823 <font-width-table>: Fix typos in docstrings.
10824
108252008-06-13 Daniel Engeler <engeler@gmail.com>
10826
10827 These changes add serial port access.
10828 * process.c: Add HAVE_SERIAL.
10829 (Fdelete_process, Fprocess_status, Fset_process_buffer)
10830 (Fset_process_filter, Fset_process_sentinel, Fprocess_contact)
10831 (list_processes_1, select_wrapper, Fstop_process)
10832 (Fcontinue_process, Fprocess_send_eof, kill_buffer_processes)
10833 (status_notify): Modify to handle serial processes.
10834 [HAVE_SERIAL] (Fserial_process_configure)
10835 [HAVE_SERIAL] (make_serial_process_unwind, Fmake_serial_process):
10836 New functions.
10837 * process.h (struct Lisp_Process): Add `type'.
10838 * sysdep.c [HAVE_TERMIOS] (serial_open, serial_configure):
10839 New functions.
10840 * w32.c (_sys_read_ahead, sys_read, sys_write): Modify to handle
10841 serial ports.
b71ac3dd 10842 (serial_open, serial_configure): New functions.
aac0c6e3
MR
10843 * w32.h: Add FILE_SERIAL.
10844 (struct _child_process): Add ovl_read, ovl_write.
10845
108462008-06-13 Kenichi Handa <handa@m17n.org>
10847
10848 * dispextern.h (enum lface_attribute_index): New member
10849 LFACE_FOUNDRY_INDEX.
10850
10851 * font.c (font_score): Delete arg alternate_families. Check only
10852 weight, slant, width, and size. Ignore the difference of alias
10853 style symbols.
10854 (font_sort_entites): Adjust for the above change. Reflect the
10855 order of font-driver to scores.
10856 (font_list_entities): Don't check alternate_familes here.
10857 (font_clear_prop): Handle foundry.
10858 (font_update_lface): Don't parse "foundry-family" form here.
10859 Handle FONT_FOUNDRY_INDEX.
10860 (font_find_for_lface): Likewise. Handle alternate families here.
10861 If registry is nil, try iso8859-1 and ascii-0.
10862 (font_open_for_lface): Pay attention to size in ENTITY.
10863 (font_open_by_name): Simplify by calling font_load_for_lface.
10864 (free_font_driver_list): Delete it.
10865 (font_update_drivers): Preserve the order of backends.
10866 (syms_of_font): Setting of sort_shift_bits adjusted for the change
10867 of font_score and font_sort_entites.
10868 (font_update_sort_order): Likewise.
10869
10870 * xfaces.c (LFACE_FOUNDRY): New macro.
10871 (check_lface_attrs): Check foundry.
10872 (set_lface_from_font): Don't parse "FOUNDRY-FAMILY" form.
10873 (merge_face_vectors): Check foundry.
10874 (merge_face_ref): Likewise.
10875 (Finternal_set_lisp_face_attribute): Likewise.
10876 (x_update_menu_appearance): Likewise.
10877 (Finternal_get_lisp_face_attribute): Likewise.
10878 (lface_hash): Likewise.
10879 (lface_same_font_attributes_p): Likewise.
10880 (x_supports_face_attributes_p): Likewise.
10881 (tty_supports_face_attributes_p): Likewise.
10882 (Finternal_set_alternative_font_family_alist): Intern strings.
10883 (Finternal_set_alternative_font_registry_alist): Downcase strings.
10884 (realize_default_face): Set LFACE_FOUNDRY (lface).
10885
10886 * xfns.c (Fx_create_frame, x_create_tip_frame): Register X
10887 font-driver at first.
10888
10889 * ftfont.c (ftfont_font_format) [! FC_FONTFORMAT]: Declare "int len;".
10890
108912008-06-12 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
10892
10893 * lread.c (Fload): Use xfree, not free on saved_doc_string.
10894
108952008-06-12 Jim Meyering <meyering@redhat.com>
10896
10897 Make unexec_free handle NULL the same way free does.
10898 * unexmacosx.c (unexec_free): Ignore a NULL argument.
10899
109002008-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
10901
10902 * character.h (CHAR_TO_BYTE_SAFE): New macro.
10903 * character.c (Fmultibyte_char_to_unibyte): Obey the docstring.
10904 * regex.c (RE_CHAR_TO_UNIBYTE): Use the new macro.
10905 (WEAK_ALIAS): Simplify.
10906 * syntax.c (skip_chars): Don't mark non-byte chars in the fastmap
10907 when searching a unibyte buffer.
10908
109092008-06-12 Chong Yidong <cyd@stupidchicken.com>
10910
10911 * xfns.c (Fx_select_font): Rename from x-font-dialog.
10912
109132008-06-12 Juanma Barranquero <lekktu@gmail.com>
10914
10915 * w32font.c: Include ctype.h.
10916
109172008-06-11 Jason Rumney <jasonr@gnu.org>
10918
10919 * w32font.c (w32font_encode_char): Detect missing glyphs that are
10920 misreported as space.
10921 (add_font_entity_to_list): Support unicode-bmp and unicode-sip
10922 as aliases for registry iso10646-1.
10923
109242008-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
10925
10926 * buffer.c (clone_per_buffer_values): Skip `name'.
10927
109282008-06-11 Chong Yidong <cyd@stupidchicken.com>
10929
10930 * font.c (font_parse_fcname): Fix last change; accept decimal
10931 points in font size.
10932
109332008-06-10 Jason Rumney <jasonr@gnu.org>
10934
10935 * w32uniscribe.c (add_opentype_font_name_to_list):
10936 Skip non unicode fonts.
10937
109382008-06-10 Chong Yidong <cyd@stupidchicken.com>
10939
10940 * xfns.c (Fx_font_dialog): New function.
10941
10942 * gtkutil.c (xg_dialog_response_cb): Rename from
10943 xg_file_response_callback.
10944 (pop_down_dialog): Rename from pop_down_file_dialog.
10945 (xg_get_file_name): Callers changed.
10946 (xg_get_font_name): New function.
10947
10948 * gtkutil.h (xg_get_font_name): Insert prototype.
10949
109502008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
10951
10952 * xdisp.c (underline_minimum_offset): Rename from xterm.c's
10953 x_underline_minimum_display_offset.
10954 (syms_of_xdisp): Declare it here rather than in xterm.c.
10955 * dispextern.h (underline_minimum_offset): Declare it.
10956 * w32term.c (x_draw_glyph_string): Use it.
10957 * xterm.c (x_underline_minimum_display_offset): Move to xdisp.c.
10958 (syms_of_xterm): Don't declare it any more.
10959 (x_draw_glyph_string): Adjust to the new name.
10960
8719abec 109612008-06-10 David De La Harpe Golden <david@harpegolden.net>
aac0c6e3
MR
10962
10963 * xterm.c (x_underline_minimum_display_offset): New var.
10964 (x_draw_glyph_string): Use it.
10965 (syms_of_xterm): Declare it.
10966
109672008-06-10 Chong Yidong <cyd@stupidchicken.com>
10968
10969 * font.c (font_parse_fcname): Accept GTK-style font names too.
10970
109712008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
10972
10973 * dired.c (file_name_completion): Don't return t if the match is exact
10974 but with different capitalization.
10975 * minibuf.c (Ftry_completion): Simplify.
10976
10977 * window.c (Vwindow_point_insertion_type): New var.
10978 (set_window_buffer): Use it.
10979 (syms_of_window): Init and export it to Lisp.
10980
109812008-06-10 Kenichi Handa <handa@m17n.org>
10982
10983 * font.h (font_intern_prop): Prototype adjusted.
10984
10985 * font.c (font_intern_prop): New arg force_symbol.
10986 (font_parse_xlfd, font_parse_fcname, font_parse_family_registry):
10987 Adjust for the change of font_intern_prop.
10988
10989 * ftfont.c (ftfont_pattern_entity):
10990 * w32font.c (add_font_name_to_list, w32_enumfont_pattern_entity)
10991 (w32_registry):
10992 * w32uniscribe.c (add_opentype_font_name_to_list): Adjust for
10993 the change of font_intern_prop.
10994
109952008-06-09 Juanma Barranquero <lekktu@gmail.com>
10996
10997 * w32menu.c (digest_single_submenu): Declare extern.
10998
109992008-06-09 Jason Rumney <jasonr@gnu.org>
11000
11001 * w32term.c (x_make_frame_visible): Use alternate restore flags.
11002
11003 * w32menu.c (Fx_popup_menu): Unwind protect while building menu.
11004 (parse_single_submenu): Remove.
11005 (digest_single_submenu): Remove.
11006 (syms_of_w32menu): Don't initialise variables that have moved
11007 to menu.c.
11008 (set_frame_menubar): Sync with version in xmenu.c.
11009 (w32_menu_show): Sync with xmenu_show in xmenu.c.
11010
11011 * menu.c (single_keymap_panes, push_menu_pane, push_menu_item):
11012 Make static again.
11013
110142008-06-09 Jason Rumney <jasonr@gnu.org>
11015
11016 Changes to w32 files related to the move of common menu code
11017 to menu.c on 2008-06-08 by Chong Yidong.
11018
11019 * menu.c [HAVE_NTGUI]: Include w32term.h, move widget related
11020 defs to w32gui.h.
11021 (single_keymap_panes, push_menu_item, push_menu_pane):
11022 Make globally visible.
11023
11024 * w32menu.c (enum button_type, widget_value, local_heap, local_alloc)
11025 (local_free, malloc_widget_value, free_widget_value)
11026 (MENU_ITEMS_ITEM_NAME, MENU_ITEMS_ITEM_ENABLE, MENU_ITEMS_ITEM_VALUE)
11027 (MENU_ITEMS_ITEM_EQUIV_KEY, MENU_ITEMS_ITEM_DEFINITION)
11028 (MENU_ITEMS_ITEM_TYPE, MENU_ITEMS_ITEM_SELECTED, MENU_ITEMS_ITEM_HELP)
11029 (MENU_ITEMS_ITEM_LENGTH, enum menu_item_idx): Remove defs.
11030 (menu_items, menu_items_allocated, menu_items_used)
11031 (menu_items_n_panes, menu_items_submenu_depth): Remove global vars.
11032 (init_menu_items, finish_menu_items, discard_menu_items)
11033 (grow_menu_items, push_submenu_start, push_submenu_end)
11034 (push_left_right_boundary, push_menu_pane, push_menu_item)
11035 (keymap_panes, single_keymap_panes, list_of_panes, list_of_items)
11036 (free_menubar_widget_tree_value, parse_single_submenu)
11037 (update_submenu_strings): Remove functions.
11038 (xmalloc_widget_value): Remove and declare extern.
11039
11040 * makefile.w32-in ($(SRC)/menu.$(O)): New target.
11041 (OBJ1): Build it.
11042
11043 * w32gui.h (widget_value, XtPointer, Boolean, enum button_type)
11044 (local_heap, local_alloc, local_free, malloc_widget_value)
11045 (free_widget_value): Define here.
11046
110472008-06-09 Kenichi Handa <handa@m17n.org>
11048
11049 * font.h (Qascii_0): Extern it.
11050
11051 * font.c (Qascii_0): New variable.
11052 (syms_of_font): DEFSYM it.
11053 (font_open_by_name): If the registry "iso8859-1" fails, try also
11054 "ascii-0".
11055
11056 * ftfont.c (ftfont_spec_pattern): Accept the registry `ascii-0'.
11057
110582008-06-08 Kenichi Handa <handa@m17n.org>
11059
11060 * .gdbinit (xfont): New command.
11061
110622008-06-08 Andreas Schwab <schwab@suse.de>
11063
11064 * menu.c [HAVE_X_WINDOWS]: Include "xterm.h".
11065 * Makefile.in (menu.o): Update dependencies.
11066
11067 * Makefile.in (obj): Always add menu.o.
11068 * emacs.c (main): Always call syms_of_menu.
11069 * keyboard.h: Remove extra #ifdef HAVE_X_WINDOW.
11070
110712008-06-08 Chong Yidong <cyd@stupidchicken.com>
11072
11073 * Makefile.in: Compile menu.c.
11074
11075 * lisp.h: Declare syms_of_menu.
11076
11077 * emacs.c (main): Call syms_of_menu.
11078
11079 * keyboard.h: Relocate platform-independent menu definitions from
11080 xmenu.c.
11081
11082 * menu.c: New file. Relocate platform-independent menu
11083 definitions from xmenu.c. Suggested by Adrian Robert.
11084
11085 * xmenu.c: Remove platform-independent menu definitions.
11086 (menu_items menu_items_inuse, menu_items_allocated)
11087 (menu_items_used, menu_items_n_panes)
11088 (menu_items_submenu_depth): Move to keyboard.h.
11089 (init_menu_items, finish_menu_items, unuse_menu_items)
11090 (discard_menu_items, restore_menu_items, save_menu_items)
11091 (grow_menu_items, push_submenu_start, push_submenu_end)
11092 (push_left_right_boundary, push_menu_pane, push_menu_item)
11093 (keymap_panes, single_keymap_panes, single_menu_item)
11094 (list_of_panes, list_of_items, find_and_call_menu_selection)
11095 (xmalloc_widget_value, free_menubar_widget_value_tree)
11096 (parse_single_submenu, digest_single_submenu)
11097 (update_submenu_strings): Move to menu.c.
11098
110992008-06-07 Stefan Monnier <monnier@iro.umontreal.ca>
11100
11101 * dispnew.c (Flast_nonminibuf_frame): Handle the NULL case.
11102
111032008-06-06 Miles Bader <miles@gnu.org>
11104
11105 * xdisp.c (x_produce_glyphs): Calculate tab width based on current
11106 face, not frame default.
11107
111082008-06-05 Martin Rudalics <rudalics@gmx.at>
11109
11110 * window.c (pop_up_windows, pop_up_frames)
11111 (display_buffer_reuse_frames, Vpop_up_frame_function)
11112 (Vdisplay_buffer_function, Veven_window_heights)
11113 (Vspecial_display_buffer_names, Vspecial_display_regexps)
11114 (Vspecial_display_function, Vsame_window_buffer_names)
11115 (Vsame_window_regexps, split_height_threshold)
11116 (Vsplit_window_preferred_function): Move those vars to window.el.
11117 (display_buffer_1, Fspecial_display_p, Fsame_window_p)
11118 (Fdisplay_buffer): Move those functions to window.el.
11119 (syms_of_window): Remove corresponding declarations.
11120 (display_buffer): New function.
11121 (temp_output_buffer_show, Fother_window_for_scrolling): Use it.
11122 * dispnew.c (Flast_nonminibuf_frame): New function.
11123 * buffer.c (Fpop_to_buffer): Move to window.el.
11124
111252008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
11126
11127 * data.c (set_internal): Fix up call to let_shadows_buffer_binding_p.
11128
111292008-06-05 Kenichi Handa <handa@m17n.org>
11130
11131 * coding.c (detect_coding): Fix previous change.
11132 (detect_coding_system): Likewise.
11133
111342008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
11135
11136 * character.h (MAKE_CHAR_MULTIBYTE): Check the arg is a (uni)byte.
11137
11138 * keymap.c (Vminibuffer_local_filename_must_match_map):
11139 Rename from Vminibuffer_local_must_match_filename_map.
11140 (syms_of_keymap):
11141 * minibuf.c (Fcompleting_read): Adjust accordingly.
11142 * commands.h: Rename declaration as well.
11143
111442008-06-05 Kenichi Handa <handa@m17n.org>
11145
11146 * font.c (Ffont_spec): Don't use font_parse_family_registry for
11147 family name.
11148 (Ffont_put): Likewise.
11149
11150 * fontset.c (fontset_find_font): Call font_open_for_lface with the
11151 current font-spec.
11152
11153 * xfont.c (xfont_list): Don't set registry to iso8859-1 even if it
11154 is unspecified.
11155
11156 * xfaces.c (realize_x_face): If the font-related face attributes
11157 are the same as those of default face, realize a new fontset from
11158 default->fontset.
11159 (Fx_family_fonts): Use font_parse_family_registry instead of Ffont_put.
11160
111612008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
11162
11163 * xdisp.c (move_it_in_display_line_to): Improve the type of its args.
11164 (move_it_in_display_line): New wrapper.
11165
11166 * window.c (window_scroll_pixel_based_preserve_x)
11167 (window_scroll_preserve_hpos, window_scroll_preserve_vpos): New vars.
11168 (window_scroll_pixel_based, window_scroll_line_based):
11169 Use them to preserve column positions.
11170 (syms_of_window): Initialize them.
11171
11172 * indent.c (Fvertical_motion): Extend first arg to allow passing an
11173 (HPOS . VPOS) pair.
11174
11175 * dispextern.h (move_it_in_display_line): Declare.
11176
111772008-06-05 Juanma Barranquero <lekktu@gmail.com>
11178
11179 * window.c (Fwindow_parameter): Return VALUE, not (PARAMETER . VALUE).
11180 (Fwindow_parameters): Return copy of parameter alist. Doc fix.
11181 (Fset_window_parameter): Return VALUE, not parameter alist. Doc fix.
11182
111832008-06-04 Juanma Barranquero <lekktu@gmail.com>
11184
11185 * window.c (Fset_window_parameter): Doc fix.
11186 (Fwindow_parameters, Fwindow_parameter): Remove redundant check.
11187
111882008-06-04 Joakim Verona <joakim@verona.se>
11189
11190 * window.h (struct window): Add new member window_parameters.
11191
11192 * window.c (Fwindow_parameters, Fwindow_parameter)
11193 (Fset_window_parameter): New defuns.
11194 (syms_of_window): Defsubr the new defuns.
11195 (make_window): Initialize window_parameters to nil.
11196
111972008-06-04 John Paul Wallington <jpw@pobox.com>
11198
11199 * eval.c (Fdefmacro): Doc fix.
11200
112012008-06-04 Kenichi Handa <handa@m17n.org>
11202
11203 * coding.c (detect_coding): Fix handling of coding->head_ascii.
11204 Be sure to call setup_coding_system when we find a proper coding system.
11205 (detect_coding_system): Fix handling of coding->head_ascii.
11206
112072008-06-03 Andreas Schwab <schwab@suse.de>
11208
11209 * font.c (font_prop_validate_spacing): Fix last change.
11210
112112008-06-03 Kenichi Handa <handa@m17n.org>
11212
11213 * font.c (font_prop_validate_spacing): Handle uppercase symbols.
11214 (font_parse_fcname): Fix handling of unknown key.
11215
11216 * xfont.c (xfont_list): Try an alias.
11217
11218 * charset.c (char_charset): Return NULL if the arg charset_list is
11219 specified and C doesn't belong to any of them.
11220
112212008-06-02 Chip Coldwell <coldwell@redhat.com>
11222
11223 * font.c (font_pixel_size): Don't take cdr of an integer.
11224
112252008-06-02 Jim Meyering <meyering@redhat.com>
11226
11227 Make "xfree (NULL)" a no-op; remove useless if-before-xfree.
11228 * alloc.c (xfree): Return right away for a NULL arg.
11229 * lread.c (nosuffix): Remove now-useless if-before-xfree tests.
11230 * gtkutil.c (xg_gtk_scroll_destroy): Likewise.
11231 * mac.c (create_apple_event_from_event_ref): Likewise.
11232 (create_apple_event_from_drag_ref, cfstring_create_normalized):
11233 Likewise.
11234 * doprnt.c (doprnt1): Likewise.
11235 * frame.c (frame): Likewise.
11236 * keyboard.c (wipe_kboard): Likewise.
11237 * macterm.c (x_free_frame_resources, xlfdpat_destroy, XFreePixmap)
11238 (init_font_name_table, mac_unload_font, x_delete_display): Likewise.
11239 * term.c (tty_default_color_capabilities, maybe_fatal)
11240 (delete_tty): Likewise.
11241 * w16select.c (string): Likewise.
11242 * w32.c (w32_get_resource, SET_ENV_BUF_SIZE): Likewise.
11243 * w32bdf.c (w32_free_bdf_font): Likewise.
11244 * w32fns.c (w32_unload_font): Likewise.
11245 * w32font.c (w32font_close): Likewise.
11246 * window.c (size_window): Likewise.
11247 * xselect.c (receive_incremental_selection): Likewise.
11248 * xterm.c (x_free_frame_resources, x_delete_display): Likewise.
11249 * mactoolbox.c (create_apple_event_from_drag_ref): Likewise.
11250 * w32.c (stat): Likewise.
11251
11252 Remove useless if-before-free tests.
11253 * editfns.c (Fset_time_zone_rule): Likewise.
11254 * lread.c (nosuffix): Likewise.
11255 * ralloc.c (get_bloc): Likewise.
11256 * regex.c (reg_free): Likewise.
11257 * xftfont.c (xftfont_open, xftfont_close): Likewise.
11258 * xrdb.c (get_user_app, get_environ_db, x_load_resources): Likewise.
11259 * xsmfns.c (smc_save_yourself_CB): Likewise.
11260
112612008-06-02 Kenichi Handa <handa@m17n.org>
11262
11263 * font.c (font_find_for_lface): Handle float font size.
11264 (font_open_for_lface): Likewise.
11265
11266 * xfaces.c (x_supports_face_attributes_p): Check face->font before
11267 comparing the properties.
11268
112692008-06-01 Jason Rumney <jasonr@gnu.org>
11270
11271 * w32font.c (w32_enumfont_pattern_entity): Use requested registry.
11272 Treat iso10646-1 and Windows DEFAULT_CHARSET specially.
11273 Duplicate iso8859-1 fonts as iso10646-1 if no registry specified.
11274 Don't add empty script list.
11275 (w32_registry): Only map DEFAULT_CHARSET to iso10646-1 here.
11276
112772008-06-01 Dan Nicolaescu <dann@ics.uci.edu>
11278
11279 * Makefile.in (dot, dotdot): Remove, update users.
11280 ".." has been used elsewhere in the file for a long time.
11281 (LIBXT_STATIC): Remove conditional based on unused variable.
11282
112832008-06-01 Miles Bader <miles@gnu.org>
11284
11285 * xfaces.c (Vface_remapping_alist): New variable.
11286 (syms_of_xfaces): Initialize it.
11287 (enum named_merge_point_kind): New type.
11288 (struct named_merge_point): Add `named_merge_point_kind' field.
11289 (push_named_merge_point): Make cycle detection respect different
11290 named-merge-point kinds.
11291 (lface_from_face_name_no_resolve): Rename from `lface_from_face_name'.
11292 Remove face-name alias resolution.
11293 (lface_from_face_name): New definition using
11294 `lface_from_face_name_no_resolve'.
11295 (get_lface_attributes_no_remap): Rename from `get_lface_attributes'.
11296 Call lface_from_face_name_no_resolve instead of lface_from_face_name.
11297 (get_lface_attributes): New definition that layers face-remapping on
11298 top of get_lface_attributes_no_remap. New arg `named_merge_points'.
11299 (lookup_basic_face): New function.
11300 (lookup_derived_face): Pass new last arg to `get_lface_attributes'.
11301 (realize_named_face): Call `get_lface_attributes_no_remap' instead of
11302 `get_lface_attributes'.
11303 (face_at_buffer_position): Use `lookup_basic_face' to lookup
11304 DEFAULT_FACE_ID if necessary. When optimizing the default-face case,
11305 return default_face's face-id instead of the constant DEFAULT_FACE_ID.
11306
11307 * xdisp.c (init_iterator): Pass base_face_id through
11308 `lookup_basic_face' when we actually use it as a face-id.
11309 (handle_single_display_prop): Use `lookup_basic_face' to lookup
11310 DEFAULT_FACE_ID.
11311
11312 * fontset.c (Finternal_char_font): Use `lookup_basic_face' to
11313 lookup the initial face-id.
11314
11315 * dispextern.h (lookup_basic_face, Vface_remapping_alist): New decls.
11316
113172008-06-01 Juanma Barranquero <lekktu@gmail.com>
11318
11319 * textprop.c (syms_of_textprop) <text-property-default-nonsticky>:
11320 (Fremove_text_properties): Fix typos in docstrings.
11321
113222008-05-31 Kenichi Handa <handa@m17n.org>
11323
11324 * font.c (font_list_entities): Fix the car part of data to be
11325 stored in the cache.
11326
11327 * ftfont.c (ftfont_font_format): Don't use strcasestr.
11328
113292008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
11330
11331 * chartab.c (Foptimize_char_table, optimize_sub_char_table):
11332 Add a `test' argument so another predicate than `equal' can be used.
11333 (map_sub_char_table): Use `eq' rather than `equal' to merge ranges.
11334 (map_char_table): Remove unused vars `c' and `i'.
11335 * lisp.h (Foptimize_char_table): Adjust declaration.
11336 * charset.c (Fclear_charset_maps): Adjust call to Foptimize_char_table.
11337
113382008-05-30 Kenichi Handa <handa@m17n.org>
11339
11340 * font.c (Ffont_info): Define only if HAVE_WINDOW_SYSTEM is defined.
11341 (syms_of_font): Defsubr Sfont_info only if HAVE_WINDOW_SYSTEM is
11342 defined.
11343
113442008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
11345
11346 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
11347 (Fmake_variable_frame_local): Disallow mixing buffer-local and
11348 frame-local settings for the same variable.
11349
113502008-05-30 Kenichi Handa <handa@m17n.org>
11351
11352 * fontset.c (Ffont_info): Move to font.c.
11353 (syms_of_fontset): Delete defsubr of Sfont_info.
11354
11355 * font.c (font_style_to_value, font_score): Delete casting of the
11356 args to xstcasecmp.
11357 (register_font_driver): Increment num_font_drivers only when
11358 registering the driver globally.
11359 (Ffont_info): Move from fontset.c. Handle a font object too.
11360 (syms_of_font): Defsubr Sfont_info.
11361
113622008-05-29 Kenichi Handa <handa@m17n.org>
11363
11364 * coding.h (enum define_coding_utf8_arg_index): New enum.
11365 (enum coding_attr_index): Change coding_attr_utf_16_bom to
11366 coding_attr_utf_bom.
11367 (enum utf_bom_type): Rename from utf_16_bom_type.
11368 (struct utf_16_spec): Adjust for the above change.
11369 (struct coding_system): Add utf_8_bom in `spec' union.
11370
11371 * coding.c (CODING_UTF_8_BOM): New macro.
11372 (enum coding_category): Delete coding_category_utf_8, add
11373 coding_category_utf_8_auto, coding_category_utf_8_nosig, and
11374 coding_category_utf_8_sig.
11375 (CATEGORY_MASK_UTF_8): Delete it.
11376 (CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG)
11377 (CATEGORY_MASK_UTF_8_SIG): New macros.
11378 (CATEGORY_MASK_ANY): Delete CATEGORY_MASK_UTF_8, add
11379 CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG, and
11380 CATEGORY_MASK_UTF_8_SIG.
11381 (CATEGORY_MASK_UTF_8): New macro.
11382 (UTF_BOM, UTF_8_BOM_1, UTF_8_BOM_2, UTF_8_BOM_3): New macros.
11383 (detect_coding_utf_8): Check BOM.
11384 (decode_coding_utf_8, encode_coding_utf_8): Handle BOM.
11385 (decode_coding_utf_16): Adjust for the change of enum utf_bom_type.
11386 (encode_coding_utf_16): Likewise.
11387 (setup_coding_system): Likewise. Set CODING_UTF_8_BOM (coding).
11388 (detect_coding, detect_coding_system): Handle utf-8-auto.
11389 (Fdefine_coding_system_internal): Handle `bom' property for utf-8.
11390 (syms_of_coding): Fix setting up of Vcoding_category_table.
11391
113922008-05-29 Stefan Monnier <monnier@iro.umontreal.ca>
11393
11394 * process.c (Faccept_process_output): If `millisec' is non-nil,
11395 `seconds' default to 0.
11396 (wait_reading_process_output): Also return non-nil if we read output
11397 from a non-running process.
11398
113992008-05-29 Jason Rumney <jasonr@gnu.org>
11400
11401 * w32font.c (w32font_open_internal): Prefer truetype fonts unless
11402 `raster' specified.
11403 (add_font_entity_to_list): Allow non-opentype truetype fonts back
11404 in the uniscribe backend, but disallow any font that has no
11405 unicode subrange support.
11406
114072008-05-29 Juanma Barranquero <lekktu@gmail.com>
11408
11409 * xfaces.c (Fx_list_fonts, Finternal_copy_lisp_face):
11410 Fix typos in docstrings.
11411
114122008-05-29 Kenichi Handa <handa@m17n.org>
11413
11414 * xfaces.c (Fx_list_fonts): Make it return a list of font names.
11415 (Fx_family_fonts): Set frame correctly.
11416
114172008-05-28 Jason Rumney <jasonr@gnu.org>
11418
11419 * w32term.c (x_draw_glyph_string): Use clipmask if specified.
11420
114212008-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
11422
11423 * fileio.c (Fwrite_region): Delay the defaulting to beg&z to after
11424 calling build_annotations.
11425
114262008-05-28 Juanma Barranquero <lekktu@gmail.com>
11427
11428 * coding.c (Fdecode_coding_region, Fencode_coding_region)
11429 (Fencode_coding_string):
11430 (syms_of_coding) <coding-system-for-read, coding-system-for-write>:
11431 <latin-extra-code-table>: Fix typos in docstrings.
11432 (syms_of_coding) <coding-system-alist>: Doc fix.
11433 (syms_of_coding) <translation-table-for-input>: Reflow docstring.
11434
114352008-05-28 Kenichi Handa <handa@m17n.org>
11436
11437 * fontset.c (Ffont_info): Don't call font_close_object.
11438
11439 * font.c (font_parse_family_registry): Use Ffont_put to validate
11440 foundry and family.
11441 (font_delete_unmatched): Don't check spacing.
11442 (font_list_entities): Add spacing to the spec to list fonts.
11443
11444 * ftfont.c (ftfont_spec_pattern): Don't set FC_SPACING to pattern.
11445 (ftfont_list): Check spacing here. Don't include FC_CHARSET in objset.
11446
11447 * coding.c (encode_coding_raw_text): Fix previous change.
11448 (encode_coding_object): When the dst_object is a buffer and is
11449 different from src_object, move gap to PT.
11450
114512008-05-27 Chong Yidong <cyd@stupidchicken.com>
11452
11453 * xterm.c (x_draw_glyph_string): If a clipmask is specified, use it.
11454
114552008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
11456
11457 * coding.c (encode_coding_raw_text): Set coding->produced_char for
11458 all branches. Compute it differently.
11459
11460 * xdisp.c [!HAVE_WINDOW_SYSTEM]: Include font.h for --without-x.
11461
114622008-05-27 Juanma Barranquero <lekktu@gmail.com>
11463
11464 * w32font.c (compute_metrics): Rewrite an "else { if () ... else ... }"
11465 into "else if () ... else ...".
11466
114672008-05-27 Jason Rumney <jasonr@gnu.org>
11468
11469 * w32font.c (w32font_open_internal): Determine if glyph indices
11470 are likely to work here.
11471
114722008-05-27 Chong Yidong <cyd@stupidchicken.com>
11473
11474 * xdisp.c (draw_glyphs): If mouse-highlighting is on, attempt to
11475 draw overlap glyphs with appropriate highlighting.
11476
114772008-05-27 Kenichi Handa <handa@m17n.org>
11478
11479 * xfont.c (xfont_open): Fix calculation of font->average_width.
11480
114812008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
11482
11483 * casefiddle.c (casify_object): Try to guess better whether the
11484 argument is a byte or a char.
11485
114862008-05-26 Andreas Schwab <schwab@suse.de>
11487
11488 * xselect.c (x_reply_selection_request): Properly handle format == 32.
11489 Always send multiples of format size.
11490
11491 * xterm.c (x_set_frame_alpha): Fix type mismatch.
11492
114932008-05-26 Jason Rumney <jasonr@gnu.org>
11494
11495 * w32font.c (w32font_text_extents): Zero whole metrics struct first.
11496 (compute_metrics): Don't set failure if we just cleared the cache.
11497 (w32_weight_table): Remove unused variable.
11498 (w32_enumfont_pattern_entity): Use FONT_SPACING_CHARCELL for
11499 backwards compatibility.
11500
115012008-05-25 Kenichi Handa <handa@m17n.org>
11502
11503 * w32term.c (x_draw_glyph_string):
11504 * xterm.c (x_draw_glyph_string): Fix calculation of underline position.
11505
11506 * xfaces.c: Delete unused function prototypes.
11507 (xstrlwr, font_frame): Delete them.
11508 (clear_face_cache): Delete unused variable.
11509
11510 * xftfont.c (xftfont_open): Delete unused variable.
11511 If underline_thickness is not 1, adjust underline_position.
11512
11513 * ftxfont.c (ftxfont_open): Delete unused variable.
11514
11515 * fontset.c (face_for_char): Optimize for the case of no charset
11516 property.
11517
11518 * font.c (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE)
11519 (check_gstring, check_otf_features, otf_list, otf_tag_symbol)
11520 (otf_open, font_otf_capability, generate_otf_features)
11521 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
11522 Comment out by surrounding "#if 0" and "#endif" for the moment.
11523 (Ffont_drive_otf, Ffont_otf_alternates): Likewise.
11524 (syms_of_font): Codes for accessing above commented out.
11525
115262008-05-24 Eli Zaretskii <eliz@gnu.org>
11527
11528 * w32proc.c: Include dispextern.h.
11529
11530 * w32.c: Include dispextern.h.
11531
115322008-05-23 Juanma Barranquero <lekktu@gmail.com>
11533
11534 * charset.c (Fencode_char, Fsplit_char): Doc fixes.
11535 (Fget_unused_iso_final_char, Fdecode_char, Fiso_charset):
11536 Fix typos in docstrings.
11537
115382008-05-23 Jason Rumney <jasonr@gnu.org>
11539
11540 * xsmfns.c: Remove includes that are already included by config.h.
11541
115422008-05-23 Kenichi Handa <handa@m17n.org>
11543
11544 * charset.c (Qemacs, charset_emacs): New variables.
11545 (char_charset): Fix for non-Unicode characters.
11546 (syms_of_charset): Define charset_emacs.
11547
11548 * w32term.c (x_draw_glyph_string): Be sure to update
11549 s->underline_thickness and s->underline_position. Be sure to draw
11550 underline within the current line area.
11551
11552 * xterm.c (x_draw_glyph_string): Be sure to update
11553 s->underline_thickness and s->underline_position. Be sure to draw
11554 underline within the current line area.
11555
11556 * fontset.c: Delete unused variables and add casting for char *
11557 throughout the file.
11558 (fontset_font): Try the fallback fonts of the current fontset
11559 before consulting the default fontset.
11560
11561 * ftfont.c (ftfont_spec_pattern): Free charset if necessary.
11562
11563 * xfont.c (xfont_list_pattern): Free names returned from XListFonts.
11564
115652008-05-22 Jason Rumney <jasonr@gnu.org>
11566
11567 * font.c: Don't include strings.h.
11568
11569 * dispextern.h, xfaces.c (xstrcasecmp): Rename from xstricmp.
11570
11571 * dosfns.c, fileio.c, font.c, fontset.c, image.c, macfns.c:
11572 * macterm.c, process.c, w32.c, w32fns.c, w32proc.c, xfaces.c:
11573 * xfns.c, xfont.c: All callers of stricmp and strcasecmp changed
11574 to call xstrcasecmp.
11575
11576 * xfont.c (xfont_list_pattern, compare_font_names): Use xstrcasecmp.
11577
11578 * fontset.c (fs_query_fontset): Use xstrcasecmp.
11579
11580 * font.c (font_style_to_value, font_score): Use xstrcasecmp.
11581
11582 * dosfns.c (msdos_stdcolor_idx): Use xstrcasecmp.
11583
115842008-05-22 Kenichi Handa <handa@m17n.org>
11585
11586 * puresize.h (BASE_PURESIZE): Increase to 1220000.
11587
11588 * font.c (font_prop_validate_style): Adjust for the format
11589 change of font_style_table.
11590
11591 * w32font.c (w32font_open_internal): Call Ffont_xlfd_name with
11592 two args.
11593
11594 * xfaces.c (x_update_menu_appearance): Call Ffont_xlfd_name with
11595 two args.
11596
115972008-05-22 Stefan Monnier <monnier@iro.umontreal.ca>
11598
11599 * minibuf.c (keys_of_minibuf): Delete.
11600 * lisp.h (keys_of_minibuf): Delete.
11601 * emacs.c (main): Don't call keys_of_minibuf.
11602
116032008-05-22 Kenichi Handa <handa@m17n.org>
11604
11605 * ftfont.c (ftfont_resolve_generic_family): Rename from
11606 ftfont_list_generic_family. Return a single family for each
11607 generic family.
11608 (ftfont_spec_pattern): Add FC_FAMILY to pattern.
11609 (ftfont_list): Adjust for the change of ftfont_resolve_generic_family.
11610 Call font_add_log.
11611 (ftfont_match): Call font_add_log.
11612
11613 * font.h (Ffont_xlfd_name): EXFUN adjusted.
11614 (FONT_DEBUG): Define it.
11615 (font_add_log): Extern it.
11616 (font_assert): Rename from xassert.
11617
11618 * xfont.c (xfont_get_pcm): Change xassert to font_assert.
11619 (xfont_list_family): Call font_add_log.
11620 (xfont_match): Likewise.
11621 (memq_no_quit): Delete.
11622
11623 * fontset.c (fontset_from_font, Ffontset_info): Add the 2nd arg in
11624 call of Ffont_xlfd_name.
11625
11626 * xfaces.c (struct table_entry, slant_table, weight_table)
11627 (swidth_table): Move to font.c.
11628
11629 * font.c: Checking of FONT_DEBUG is moved to font.h. All calls of
11630 xassert are changed to font_assert. Delete many unused variables.
11631 (Vfont_weight_table, Vfont_slant_table, Vfont_width_table):
11632 New variables.
11633 (struct table_entry): Move from xfaces.c and modified.
11634 (weight_table, slant_table, width_table): Move from xfaces.c and
11635 contents adjusted for the change of struct table_entry.
11636 (font_style_to_value, font_style_symbolic): Adjust for the
11637 format change of font_style_table.
11638 (font_parse_family_registry): Don't overwrite existing foundry and
11639 family of font_spec.
11640 (font_score): Fix calculation of diff for sizes.
11641 (font_sort_entites): Call font_add_log.
11642 (font_delete_unmatched): Return a newly created list.
11643 (font_list_entities): Fix previous change. Call font_add_log.
11644 (font_matching_entity, font_open_entity, font_close_entity):
11645 Call font_add_log.
11646 (Ffont_xlfd_name): New arg FOLD-WILDCARDS.
11647 (Finternal_set_font_style_table): Delete.
11648 (BUILD_STYLE_TABLE): New macro.
11649 (build_style_table): New function.
11650 (Vfont_log, font_log_env_checked): New variables.
11651 (font_add_log): New function.
11652 (syms_of_font): Delete defsubr Sinternal_set_font_style_table.
11653 Declare Lisp variables "font-weight-table", "font-slant-table",
11654 "font-width-table", and "font-log". Initialize font_style_table.
11655
116562008-05-21 Dan Nicolaescu <dann@ics.uci.edu>
11657
11658 * xterm.c (x_set_frame_alpha): Move declarations before statements.
11659
116602008-05-21 Seiji Zenitani <zenitani@mac.com>
11661 Ryo Yoshitake <ryo@shiftmode.net>
11662
11663 * frame.c (Qalpha): Add a new frame parameter `alpha'.
11664 (Vframe_alpha_lower_limit): New variable.
11665 (x_set_alpha): New function.
11666
11667 * frame.h (Qalpha, Vframe_parameter_lower_limit): Export them.
11668
11669 * xfns.c (x-create-frame, Qalpha):
11670 Initialize the frame parameter `alpha'.
11671 * xterm.c (OPAQUE, OPACITY): New.
11672 (x_set_frame_alpha): New function.
11673 (frame_highlight, frame_unhighlight): Call x_set_frame_alpha.
11674
11675 * macfns.c (mac_frame_parm_handlers): A null handler for x_set_alpha.
11676 * w32fns.c (w32_frame_parm_handlers): Likewise.
11677
116782008-05-20 Jason Rumney <jasonr@gnu.org>
11679
11680 * w32font.c (add_font_entity_to_list): Don't add non-opentype
11681 truetype fonts to opentype list.
11682
116832008-05-20 Juanma Barranquero <lekktu@gmail.com>
11684
11685 * fontset.c (Ffontset_info): Doc fix.
11686 (syms_of_fontset) <font-encoding-charset-alist, use-default-ascent>:
11687 <ignore-relative-composition>: Fix typos in docstrings.
11688
11689 * font.c (syms-of-font) <font-encoding-alist>:
11690 (Ffontp, Ffont_make_gstring): Fix typos in docstrings.
11691 (Flist_fonts, Ffont_family_list, Ffont_fill_gstring, Fquery_font)
11692 (Ffont_otf_alternates): Doc fixes.
11693
116942008-05-20 Kenichi Handa <handa@m17n.org>
11695
11696 * Makefile.in (FONTSRC): Delete it. Change all $(FONTSRC) to
11697 font.h through out the file.
11698 (FONT_DRIVERS): Rename from FONTOBJ.
11699 (obj): Change $(FONTOBJ) to $(FONT_DRIVERS). Add font.o.
11700 (SOME_MACHINE_OBJECTS): Change $(FONTOBJ) to $(FONT_DRIVERS).
11701
11702 * emacs.c (main): Call syms_of_font unconditionally.
11703
11704 * font.h (find_font_encoding): Extern it.
11705
11706 * font.c (Vfont_encoding_alist, find_font_encoding): Move from
11707 fontset.c.
194d44e7 11708 (font_pixel_size) [! HAVE_WINDOW_SYSTEM]: Return 1.
aac0c6e3
MR
11709 (font_open_entity): Update FRAME_X_DISPLAY_INFO (f)->n_fonts,
11710 FRAME_SMALLEST_CHAR_WIDTH (f), and FRAME_SMALLEST_FONT_HEIGHT (f)
11711 only when HAVE_WINDOW_SYSTEM is defined.
11712 (font_close_object): Update FRAME_X_DISPLAY_INFO (f)->n_fonts only
11713 when HAVE_WINDOW_SYSTEM is defined.
11714
11715 * fontset.c (Vfont_encoding_alist, find_font_encoding): Move to font.c.
11716 (syms_of_fontset): Move declaration of font-encoding-alist to font.c.
11717
11718 * xfaces.c: Include font.h unconditionally.
11719 (merge_face_ref, merge_face_vectors)
11720 (Finternal_set_lisp_face_attribute): Cancel the previous change.
11721
117222008-05-20 Stefan Monnier <monnier@iro.umontreal.ca>
11723
11724 * xdisp.c (select_frame_for_redisplay): Adjust for last change to
11725 indirect_variable.
11726 * eval.c (lisp_indirect_variable): New fun.
11727 (Fuser_variable_p): Use it.
11728
117292008-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
11730
11731 * lisp.h (indirect_variable):
11732 * data.c (indirect_variable, let_shadows_buffer_binding_p):
11733 Use Lisp_Symbol pointers rather than Lisp_Object.
11734 Adjust callers.
11735 * buffer.c (buffer_slot_type_mismatch): Use wrong-type-argument.
11736 To this end, change calling-convention.
11737
11738 * minibuf.c (Finternal_complete_buffer): Only strip out hidden buffers
11739 if some non-hidden buffers are selected by string&pred.
11740
117412008-05-19 Chong Yidong <cyd@stupidchicken.com>
11742
11743 * process.c (wait_reading_process_output): Always check status
11744 when in batch mode.
11745
117462008-05-19 Kenichi Handa <handa@m17n.org>
11747
11748 * font.c (font_list_entities): Fix handling of cache.
11749 (font_matching_entity): Likewise.
11750
11751 * ftfont.c (cs_iso8859_1): Delete.
11752 (ft_face_cache): New variable.
11753 (struct ftfont_info): New member fc_charset_idx.
11754 (ftfont_build_basic_charsets): Delete.
11755 (fc_charset_table): New variable.
11756 (ftfont_pattern_entity): New arg fc_charset_idx. Store (FILENAME
11757 . FC_CHARSET_IDX) as :font-entity property in the font entity.
11758 Callers changed.
11759 (ftfont_lookup_cache, ftfont_get_charset): New functions.
11760 (ftfont_spec_pattern): New argument fc_charset_idx.
11761 Check registry more rigidly. Change callers.
11762 (ftfont_open, ftfont_close, ftfont_has_char): Adjust for the
11763 change of :font-entity property of the font.
11764
11765 * xftfont.c (xftfont_open): Adjust for the change of :font-entity
11766 property of the font.
11767
117682008-05-18 Juanma Barranquero <lekktu@gmail.com>
11769
11770 * coding.c (Fcoding_system_p): Rename argument to match docstring.
11771 (Funencodable_char_position, Fcheck_coding_systems_region)
11772 (Fdecode_coding_string, Fencode_coding_string): Fix typos in docstrings.
11773 (Fdetect_coding_region, Fdetect_coding_string, Fencode_coding_region)
11774 (Ffind_operation_coding_system, Fset_coding_system_priority)
11775 (Fcoding_system_eol_type): Doc fixes.
11776
117772008-05-17 Glenn Morris <rgm@gnu.org>
11778
11779 * sysdep.c (child_setup_tty): Handle systems with NLDLY, without FFDLY.
11780
117812008-05-16 Eli Zaretskii <eliz@gnu.org>
11782
11783 * dired.c (Ffile_attributes): Shut up GCC warnings about st_uid
11784 and st_gid.
11785
11786 * frame.c (Fdelete_frame): Don't call font_update_drivers if
11787 HAVE_WINDOW_SYSTEM is not defined.
11788
11789 * xfaces.c (merge_face_ref, merge_face_vectors)
11790 (Finternal_set_lisp_face_attribute): Use FONT_*_INDEX only when
11791 HAVE_WINDOW_SYSTEM is defined.
11792 (Fface_font): Fix non-HAVE_WINDOW_SYSTEM case.
11793
117942008-05-16 Stefan Monnier <monnier@iro.umontreal.ca>
11795
11796 * keyboard.c (parse_menu_item): Do not cache key shortcut any more.
11797
117982008-05-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11799
11800 * macterm.c (x_draw_relief_rect): Remove unused variable `dpy'.
11801
118022008-05-15 Kenichi Handa <handa@m17n.org>
11803
11804 * font.c (font_find_for_lface): Reflect LFACE_FONT in the font
11805 preference.
11806
118072008-05-15 Glenn Morris <rgm@gnu.org>
11808
11809 * emacs.c (USAGE1, standard_args): Remove -disable-font-backend.
11810
118112008-05-15 Chong Yidong <cyd@stupidchicken.com>
11812
11813 * fns.c (init_fns): Don't initialize weak_hash_tables here.
11814 (init_weak_hash_tables): New fun. Initialize weak_hash_tables.
11815
11816 * alloc.c (init_alloc_once): Call init_weak_hash_tables.
11817
118182008-05-15 Kenichi Handa <handa@m17n.org>
11819
11820 * ftfont.c (ftfont_list): Downcase family name to check generic
11821 families.
11822
11823 * xfaces.c (Finternal_set_lisp_face_attribute): Be sure to make a
11824 font-spec for QCfont value.
11825
11826 * fontset.c (Fnew_fontset): Call font_unparse_xlfd with 256-byte
11827 buffer. Check the return value of it.
11828
118292008-05-14 Jason Rumney <jasonr@gnu.org>
11830
11831 * w32term.c (w32_get_glyph_overhangs): Remove.
11832 (w32_redisplay_interface): Use x_get_glyph_overhangs instead.
11833
118342008-05-14 Kenichi Handa <handa@m17n.org>
11835
11836 * font.c (font_prop_validate): Make nil a valid value.
11837 (font_clear_cache): Check if the cached vector of entities is nil
11838 or not.
11839
118402008-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11841
11842 * emacs.c (main_thread): Conditionalize on
11843 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
11844 (main) [FORWARD_SIGNAL_TO_MAIN_THREAD]: Initialize it.
11845
11846 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): New define.
11847 (main_thread, SIGNAL_THREAD_CHECK): Conditionalize on
11848 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
11849
118502008-05-14 Kenichi Handa <handa@m17n.org>
11851
11852 * coding.c (detect_coding_iso_2022): Ignore a coding category that
11853 has no corresponding coding system.
11854
118552008-05-14 Jason Rumney <jasonr@gnu.org>
11856
11857 * font.h (struct font) [WINDOWSNT]: Remove codepage member.
11858
11859 * w32font.h (w32font_open_internal): Update declaration.
11860
11861 * w32font.c (w32font_open_internal): Change last argument from
11862 w32font_info struct to font object. Fill in font object from
11863 font_entity. Get Outline metrics if possible. Use them to
11864 calculate underline position and thickness. Use xlfd name as name
11865 property. Don't set codepage.
11866 (w32font_open): Pass font_object to w32font_open_internal. Don't
11867 update dpyinfo->smallest_font_height and dpyinfo->smallest_char_width.
11868 (w32font_draw): Use s->font.
11869 (clear_cached_metrics): Don't clear non-existent blocks.
11870
11871 * w32term.c (w32_compute_glyph_string_overhangs): Don't compute if
11872 font was not found.
11873 (x_draw_glyph_string): Use underline position and thickness from font.
11874
11875 * w32uniscribe.c (uniscribe_open): Pass font_object to
11876 w32font_open_internal.
11877
118782008-05-14 Kenichi Handa <handa@m17n.org>
11879
11880 These changes are to delete all legacy font-handling codes, and
11881 make Emacs use only font-backends.
11882
11883 * Makefile.in: Delete USE_FONT_BACKEND conditionals.
11884 (frame.o, image.o, print.o): Depend on $(FONTSRC).
11885
11886 * makefile.w32-in (WIN32OBJ): Add w32reg.$(O), remove w32bdf.$(O).
11887
11888 * charset.h (Vcharset_non_preferred_head)
11889 (Vcurrent_iso639_language): Extern them.
11890
11891 * charset.c (Vcharset_non_preferred_head): New variable.
11892 (Vcurrent_iso639_language): New variable.
11893 (syms_of_charset): Declare it as a Lisp variable.
11894 (char_charset): Don't check non preferred charsets. As a last
11895 resort, return charset_unicode.
11896 (Fset_charset_priority): Update Vcharset_non_preferred_head.
11897
11898 * composite.c: Throughout the file, delete all USE_FONT_BACKEND
11899 conditionals. Don't check enable_font_backend. Delete all codes
11900 used only when USE_FONT_BACKEND is not defined.
11901
11902 * dispextern.h (struct glyph_string): Change type of `font' to
11903 `struct font *'.
11904 (struct glyph_string): New member underline_position and
11905 underline_thickness.
11906 (enum lface_attribute_index): Remove LFACE_AVGWIDTH_INDEX.
11907 (struct face): Change type of `font' to `struct font *'. Remove
11908 members `font_name', `font_info_id'.
11909 (per_char_metric, encode_char): Delete externs.
11910 (calc_pixel_width_or_height): Adjust the prototype.
11911
11912 * emacs.c (enable_font_backend): Delete extern.
11913 (main): Don't set enable_font_backend. Don't check the command
11914 line argument "-disable-font-backend".
11915
11916 * font.h (Qfont_spec, Qfont_entity, Qfont_object): Extern them.
11917 (enum font_property_index): New members FONT_DPI_INDEX,
11918 FONT_SPACING_INDEX, FONT_AVGWIDTH_INDEX, FONT_NAME_INDEX,
11919 FONT_FULLNAME_INDEX, FONT_FILE_INDEX, FONT_FORMAT_INDEX,
11920 FONT_OBJECT_MAX. Delete FONT_FRAME_INDEX.
11921 (FONT_WEIGHT_NUMERIC, FONT_SLANT_NUMERIC, FONT_WIDTH_NUMERIC)
11922 (FONT_WEIGHT_SYMBOLIC, FONT_SLANT_SYMBOLIC, FONT_WIDTH_SYMBOLIC)
11923 (FONT_WEIGHT_FOR_FACE, FONT_SLANT_FOR_FACE, FONT_WIDTH_FOR_FACE)
11924 (FONT_WEIGHT_NAME_NUMERIC, FONT_SLANT_NAME_NUMERIC)
11925 (FONT_WIDTH_NAME_NUMERIC, FONT_SET_STYLE): New macros.
11926 (struct font_spec, struct font_entity): New structs.
11927 (FONT_ENCODING_NOT_DECIDED): Moved from fontset.h.
11928 (struct font): Many members from old "struct font_info" moved to
11929 here. Members font and entity deleted.
11930 (FONT_SPEC_P, FONT_ENTITY_P, FONT_OBJECT_P, FONTP): Modified for
11931 the new font-related objects.
11932 (CHECK_FONT_SPEC, CHECK_FONT_ENTITY, CHECK_FONT_OBJECT)
11933 (CHECK_FONT_GET_OBJECT): Likewise.
11934 (XFONT_SPEC, XFONT_ENTITY, XFONT_OBJECT, XSETFONT): New macros.
11935 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved from font.h.
11936 (struct font_driver): New members case_sensitive anc check. Type
11937 of the member list and open changed.
11938 (enable_font_backend, font_symbolic_weight, font_symbolic_slant)
11939 (font_symbolic_width, font_find_object, font_get_spec)
11940 (font_set_lface_from_name): Delete extern.
11941 (Fcopy_font_spec, Fmerge_font_spec, Ffont_family_list): New EXFUNs.
11942
11943 * font.c: Include <strings.h>.
11944 (enable_font_backend): Delete it.
11945 (Qfont_spec, Qfont_entity, Qfont_object): New variables.
11946 (CHECK_VALIDATE_FONT_SPEC): Delete it.
11947 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved to font.h.
11948 (null_string): Delete it.
11949 (null_vector): Make it static.
11950 (font_family_alist): Delete it.
11951 (Qnormal): Extern it.
11952 (QCextra, QClanguage): Delete it.
11953 (QClang, QCavgwidth, QCfont_entity, QCfc_unknown_spec): New variables.
11954 (font_make_spec, font_make_entity, font_make_object)
11955 (font_intern_prop): Renamed from intern_downcase. Don't downcase
11956 the string. Callers changed.
11957 (font_pixel_size): Adjusted for the format change of font-related
11958 objects.
11959 (prop_name_to_numeric, prop_numeric_to_name): Delete them.
11960 (font_style_to_value, font_style_symbolic): New function.
11961 (build_font_family_alist): Delete it.
11962 (font_registry_charsets): Use Fassoc_string instead of
11963 assq_no_quit.
11964 (font_prop_validate_symbol): Don't return null_string.
11965 (font_prop_validate_style): Adjusted for the change of
11966 style-related values in a font vector.
11967 (font_property_table): Delete entries for QClanguage and
11968 QCantialias, add entries for QCavgwidth.
11969 (get_font_prop_index): Delete the 2nd argument FROM.
11970 (font_prop_validate): Arguments changed.
11971 (font_put_extra): Adjusted for the change of font-related objects.
11972 (font_expand_wildcards, font_parse_xlfd, font_unparse_xlfd)
11973 (font_parse_fcname, font_unparse_fcname)
11974 (font_prepare_composition): Likewise.
11975 (font_parse_family_registry): Renamed from font_merge_old_spec.
11976 (otf_open): Delete the 1st arg entity.
11977 (font_otf_capability): Adjusted for the above change.
11978 (font_score): New arg alternate_families. Adjusted for the change
11979 of font-related objects.
11980 (font_sort_entites): New arg best_only.
11981 (font_symbolic_weight, font_symbolic_slant, font_symbolic_width):
11982 Delete them.
11983 (font_match_p): Check alternate families.
11984 (font_find_object): Delete it.
11985 (font_check_object): New function.
11986 (font_clear_cache): Adjusted for the change of font-related objects.
11987 (font_delete_unmatched): New arg.
11988 (font_list_entities): Call font_driver->list with a spec that
11989 doesn't specify style-related properties.
11990 (font_matching_entity): Arguments changed. Caller changed.
11991 (font_open_entity): Adjusted for the change of font-related objects.
11992 (font_close_object, font_has_char, font_encode_char)
11993 (font_get_name, font_get_spec): Likewise.
11994 (font_spec_from_name, font_clear_prop, font_update_lface):
11995 New functions.
11996 (font_find_for_lface, font_open_for_lface, font_load_for_lface)
11997 (font_prepare_for_face, font_done_for_face, font_open_by_name)
11998 (font_at): Adjusted for the change of font-related objects.
11999 (font_range): New function.
12000 (Ffontp, Ffont_spec, Ffont_get, Ffont_put, Flist_fonts)
12001 (Ffont_xlfd_name): Adjusted for the change of font-related objects.
12002 (Fcopy_font_spec, Fmerge_font_spec): New function.
12003 (Ffont_family_list): Renamed from list-families.
12004 (Finternal_set_font_style_table): Arguments changed.
12005 (Ffont_fill_gstring, Ffont_shape_text, Fopen_font)
12006 (Ffont_drive_otf, Fquery_font, Ffont_match_p): Adjusted for the
12007 change of font-related objects.
12008 (syms_of_font): Delete "ifdef USE_FONT_BACKEND". DEFSYM new symbols.
12009
12010 * fontset.h (struct font_info): Delete it. Most members go to
12011 struct font.
12012 (FONT_ENCODING_NOT_DECIDED): Moved to font.h.
12013 (enum FONT_SPEC_INDEX): Delete it.
12014 (font_info, list_fonts_func, load_font_func, query_font_func)
12015 (set_frame_fontset_func, find_ccl_program_func)
12016 (get_font_repertory_func, new_fontset_from_font_name): Delete
12017 externs.
12018 (fontset_from_font_name): Extern it.
12019 (FS_LOAD_FONT, FONT_INFO_ID, FONT_INFO_FROM_ID)
12020 (FONT_INFO_FROM_FACE): Deleted.
12021 (face_for_font): Adjust prototype.
12022
12023 * fontset.c: Throughout the file, delete all USE_FONT_BACKEND
12024 conditionals. Don't check enable_font_backend. Delete all codes
12025 used only when USE_FONT_BACKEND is not defined.
12026 (get_font_info_func, list_font_func, load_font_func)
12027 (query_font_func, set_frame_fontset_func, find_ccl_program_func)
12028 (get_font_repertory_func): Delete them.
12029 (FONTSET_SPEC, FONT_DEF_NEW, FONT_DEF_SPEC, FONT_DEF_ENCODING)
12030 (FONT_DEF_REPERTORY, RFONT_DEF_FACE, RFONT_DEF_SET_FACE)
12031 (RFONT_DEF_FONT_DEF, RFONT_DEF_SPEC, RFONT_DEF_REPERTORY)
12032 (RFONT_DEF_OBJECT, RFONT_DEF_SET_OBJECT, RFONT_DEF_SCORE)
12033 (RFONT_DEF_SET_SCORE, RFONT_DEF_NEW): New macros.
12034 (fontset_compare_rfontdef): New function.
12035 (reorder_font_vector): Remove the argument CHARSET-ID. Sort
12036 rfont-defs by qsort. Adjusted for the change of font-group vector.
12037 (load_font_get_repertory): Deleted.
12038 (fontset_find_font): Use new macros to ref/set elements of
12039 font-def and rfont-def.
12040 (fontset_font): Fix the timing of remembering that no font for C.
12041 (free_face_fontset): Do nothing if the face has no fontset.
12042 (face_suitable_for_char_p): Use new macros to ref/set elements of
12043 rfont-def.
12044 (face_for_char): Likewise. Call face_for_char with font_object.
12045 (fs_load_font): Delete. Delete #pragma surrounding it.
12046 (fs_query_fontset): Use strcasecmp instead of strcmp.
12047 (generate_ascii_font_name): Adjusted for the format change of
12048 font-spec.
12049 (Fset_fontset_font): Likewise. Use new macros to set elements of
12050 font-def.
12051 (Fnew_fontset): Use font_unparse_xlfd to generate
12052 FONTSET_ASCII (fontset).
12053 (new_fontset_from_font_name): Deleted.
12054 (fontset_from_font): Renamed from new_fontset_from_font. Check if
12055 a fontset is already created for the font. FIx updating of
12056 Vfontset_alias_alist.
12057 (fontset_ascii_font): Deleted.
12058 (Ffont_info): Adjusted for the format change of font-spec.
12059 (Finternal_char_font): Likewise.
12060 (Ffontset_info): Likewise.
12061 (syms_of_fontset): Don't check load_font_func.
12062
12063 * fns.c (internal_equal): Handle PREV_FONT.
12064
12065 * frame.h: Delete USE_FONT_BACKEND conditional.
12066
12067 * frame.c: Throughout the file, delete all USE_FONT_BACKEND
12068 conditionals. Don't check enable_font_backend. Delete all codes
12069 used only when USE_FONT_BACKEND is not defined.
12070 (x_set_font): Call x_new_font, not x_new_fontset2.
12071 (x_set_font_backend): Use FRAME_FONT macro to check if a font is
12072 already set for the frame.
12073
12074 * ftfont.c (ftfont_pattern_entity): Argument FRAME removed. Make
12075 a font-entity by font_make_entity. Use font_intern_prop instead
12076 of intern_downcase. Use FONT_SET_STYLE to set a style-related
12077 font property. If a font is scalable, set avgwidth property to 0.
12078 Set font-entity property by font_put_extra.
12079 (ftfont_list_generic_family): Argument SPEC and REGISTRY removed.
12080 (ffont_driver): Adjusted for the change of struct font_driver.
12081 (ftfont_spec_pattern): New function.
12082 (ftfont_list): Return a list, not vector.
12083 (ftfont_match): Use ftfont_spec_pattern to get a pattern.
12084 (ftfont_list_family): Don't downcase names.
12085 (ftfont_free_entity): Deleted.
12086 (ftfont_open): Return a font-object. Adjusted for the change of
12087 struct font. Get underline_thickness and underline_position from
12088 font property. Don't update dpyinfo->smallest_font_height and
12089 dpyinfo->smallest_char_width.
12090 (ftfont_close): Don't free `struct font'.
12091 (ftfont_has_char): Adjusted for the format change of font-entity.
12092 (ftfont_encode_char, ftfont_text_extents): Likewise.
12093
12094 * ftxfont.c (ftxfont_list): Return a list, not vector.
12095 (ftxfont_open): Return a font-object. Adjusted for the change of
12096 struct font. Get underline_thickness and underline_position from
12097 font property. Don't update dpyinfo->smallest_font_height and
12098 dpyinfo->smallest_char_width.
12099 (ftxfont_close): Don't decrease FRAME_X_DISPLAY_INFO (f)->n_fonts.
12100 (ftxfont_draw): Adjusted for the change of struct font.
12101
12102 * image.c (image_ascent): Don't include "charset.h". Include
12103 "character.h" and "font.h".
12104
12105 * lisp.h (enum pvec_type): New member PREV_FONT.
12106 (Fassoc_string): EXFUN it.
12107
12108 * print.c: Include font.h.
12109 (print_object): Handle font-related objects.
12110
12111 * xdisp.c: Throughout the file, delete all USE_FONT_BACKEND
12112 conditionals. Don't check enable_font_backend. Delete all codes
12113 used only when USE_FONT_BACKEND is not defined.
12114 (handle_auto_composed_prop): Do nothing if it->f is not on a
12115 window system. Check how many following characters can be
12116 displayed by the same font.
12117 (calc_pixel_width_or_height): Type of the 4th arg is changed to
12118 'struct font *'.
12119 (get_char_face_and_encoding): Assign the whole encoding task to
12120 the `encode-char' method of a font driver.
12121 (fill_composite_glyph_string): Adjusted for the change of `struct
12122 face' and `struct glyph_string'.
12123 (fill_glyph_string): Likewise.
12124 (get_per_char_metric): Arguments changed.
12125 (x_get_glyph_overhangs): Adjusted for the change of `struct face'
12126 and `struct glyph_string'.
12127 (produce_stretch_glyph, calc_line_height_property)
12128 (x_produce_glyphs): Likewise.
12129
12130 * xfaces.c: Throughout the file, delete all USE_FONT_BACKEND
12131 conditionals. Don't check enable_font_backend. Delete all codes
12132 used only when USE_FONT_BACKEND is not defined. Use
12133 FONT_XXX_NAME_NUMERIC instead of face_numeric_xxx.
12134 (QCfoundry, QCadstyle, QCregistry, QCspacing, QCsize, QCavgwidth)
12135 (Qp): Extern them.
12136 (clear_font_table, load_face_font, xlfd_lookup_field_contents):
12137 Deleted.
12138 (struct font_name): Deleted.
12139 (xlfd_numeric_value, xlfd_symbolic_value): Deleted.
12140 (compare_fonts_by_sort_order): New function.
12141 (xlfd_numeric_slant, xlfd_symbolic_slant, xlfd_numeric_weight)
12142 (xlfd_symbolic_weight, xlfd_numeric_swidth, xlfd_symbolic_swidth):
12143 Deleted.
12144 (Fx_family_fonts): Use font_list_entities, and sort fonts by
12145 compare_fonts_by_sort_order.
12146 (Fx_font_family_list): Call Ffont_family_list.
12147 (face_numeric_value, face_numeric_weight, face_numeric_slant)
12148 (face_numeric_swidth, face_symbolic_value, face_symbolic_weight)
12149 (face_symbolic_slant, face_symbolic_swidth)
12150 (split_font_name_into_vector, build_font_name_from_vector)
12151 (xlfd_fixed_p, xlfd_point_size, pixel_point_size)
12152 (font_rescale_ratio, split_font_name, build_font_name)
12153 (free_font_names, sort_fonts, x_face_list_fonts)
12154 (face_font_available_p, sorted_font_list, cmp_font_names)
12155 (font_list_1, concat_font_list, font_list, remove_duplicates):
12156 Deleted.
12157 (Fx_list_fonts): Use Ffont_list.
12158 (LFACE_AVGWIDTH): Deleted.
12159 (check_lface_attrs): Don't check LFACE_AVGWIDTH. Check LFACE_FONT
12160 by FONTP.
12161 (lface_fully_specified_p): Don't check LFACE_AVGWIDTH.
12162 (set_lface_from_font_name): Delete it.
12163 (set_lface_from_font): Renamed from
12164 set_lface_from_font_and_fontset. Caller changed. Don't set
12165 LFACE_AVGWIDTH. Use FONT_XXX_FOR_FACE to get a symbol suitable
12166 for face.
12167 (merge_face_vectors): Copy font-spec if necessary.
12168 Clear properties of the font-spec if necessary.
12169 (merge_face_ref): Clear properties of the font-spec if necessary.
12170 (Finternal_set_lisp_face_attribute): Likewise.
12171 (set_font_frame_param): Use font_load_for_lface to load a
12172 font-object, and call Fmodify_frame_parameters with it.
12173 (x_update_menu_appearance): Don't check LFACE_AVGWIDTH. Get XLFD
12174 font name by Ffont_xlfd_name.
12175 (Finternal_lisp_face_attribute_values): Don't check QCweight,
12176 QCslant, and QCwidth.
12177 (Fface_font): Get a font name from font->props[FONT_NAME_INDEX].
12178 (lface_same_font_attributes_p): Don't check LFACE_AVGWIDTH.
12179 Compare fonts by EQ.
12180 (lookup_non_ascii_face): Deleted.
12181 (face_for_font): The 2nd argument changed.
12182 (x_supports_face_attributes_p): Don't check LFACE_AVGWIDTH.
12183 Check atomic font properties by case insensitive.
12184 (realize_non_ascii_face): Set face->overstrike correctly.
12185 (realize_x_face): Likewise. Check if LFACE_FONT is a font_object.
12186 (dump_realized_face): Get font name from
12187 font->props[FONT_NAME_INDEX]. Don't print font_info_id.
12188
12189 * xfns.c: Throughout the file, delete all USE_FONT_BACKEND
12190 conditionals. Don't check enable_font_backend. Delete all codes
12191 used only when USE_FONT_BACKEND is not defined.
12192 (xic_create_xfontset): Original code deleted and renamed from
12193 xic_create_xfontset2. Use FRAME_FONT, not FRAME_FONT_OBJECT.
12194 (x_make_gc): Don't set GCFont in GCs.
12195 (Fx_create_frame) [USE_LUCID]: Set xlwmenu_default_font to a font
12196 opened by "fixed".
12197 (syms_of_xfns): Don't set get_font_info_func, load_font_func,
12198 find_ccl_program_func, query_font_func, set_frame_fontset_func,
12199 get_font_repertory_func.
12200
12201 * xfont.c: Include <stdlib.h> and "ccl.h".
12202 (struct xfont_info): New structure.
12203 (xfont_query_font): Deleted.
12204 (xfont_find_ccl_program): Renamed from x_find_ccl_program and
12205 moved from xterm.c.
12206 (xfont_driver): Adjusted for the change of struct font_driver.
12207 (compare_font_names): New function.
12208 (xfont_list_pattern): Sort font names case insensitively. Make
12209 font_entity by calling font_make_entity. Avoid auto-scaled fonts.
12210 (xfont_list): Return a list, not vector.
12211 (xfont_match): If the font doesn't have QCname property, generate
12212 a name from the other font properties.
12213 (xfont_open): Return a font-object. Adjusted for the change of
12214 struct font. Get underline_thickness and underline_position from
12215 font property. Don't update dpyinfo->smallest_font_height and
12216 dpyinfo->smallest_char_width.
12217 (xfont_close): Don't free struct font.
12218 (xfont_prepare_face): Adjusted for the change of struct font.
12219 (xfont_done_face): Deleted.
12220 (xfont_has_char): Adjusted for the change of struct font.
12221 (xfont_encode_char, xfont_draw): Likewise.
12222 (xfont_check): New function.
12223
12224 * xftfont.c (xftfont_list): Adjusted for the change of `list'
12225 callback function.
12226 (xftfont_match): Adjusted for the format change of font-entity.
12227 (xftfont_open): Adjusted for the format change of font-entity and
12228 font-object. Adjusted for the change of struct font. Return a
12229 font-object. Don't update dpyinfo->smallest_font_height and
12230 dpyinfo->smallest_char_width.
12231 (xftfont_close): Block input while calling XftFontClose.
12232 (xftfont_prepare_face): Don't block input while calling
12233 xftfont_get_colors. Adjusted for the change of struct font.
12234 (xftfont_shape): Return value of error case fixed.
12235
12236 * xrdb.c (x_load_resources): Don't setup a fontset resource.
12237
12238 * xterm.h: Throughout the file, delete all USE_FONT_BACKEND
12239 conditionals.
12240 (FONT_WIDTH): Return (f)->max_width.
12241 (struct x_display_info): Delete member `font'.
12242 (x_list_fonts, x_get_font_info, x_load_font, x_query_font)
12243 (x_find_ccl_program, x_get_font_repertory): Delete externs.
12244 (struct x_output): Change type of `font' to `struct font *'.
12245
12246 * xterm.c: Throughout the file, delete all USE_FONT_BACKEND
12247 conditionals. Don't check enable_font_backend. Delete all codes
12248 used only when USE_FONT_BACKEND is not defined. Don't include ccl.h.
12249 (x_per_char_metric, x_encode_char): Deleted.
12250 (x_set_cursor_gc, x_set_mouse_face_gc): Don't set GCFont.
12251 (x_compute_glyph_string_overhangs): Adjusted for the change of
12252 `struct face'.
12253 (x_draw_glyph_string_foreground)
12254 (x_draw_composite_glyph_string_foreground): Likewise.
12255 (x_draw_glyph_string): Likewise. Use font->underline_position and
12256 font->underline_thickness.
12257 (x_new_font): Renamed from x_new_fontset2.
12258 (x_new_fontset, x_get_font_info, x_list_fonts): Deleted.
12259 (x_check_font): Call `check' method of a font driver.
12260 (x_font_min_bounds, x_compute_min_glyph_bounds, x_load_font)
12261 (x_query_font, x_get_font_repertory): Deleted.
12262 (x_find_ccl_program): Renamed and moved to xfont.c.
12263 (x_redisplay_interface): Adjusted for the change of `struct
12264 redisplay_interface'.
12265
12266 * w32fns.c: Throughout the file, delete all USE_FONT_BACKEND
12267 conditionals. Don't check enable_font_backend. Delete all codes
12268 used only when USE_FONT_BACKEND is not defined. Surround non-used
12269 code by "#ifdef OLD_FONT" and "endif".
12270 (Fw32_select_font): Use FONT_COMPAT to get old font structure.
12271
12272 * w32font.h (struct w32font_info): New member.
12273 (FONT_COMPAT): New macro.
12274 (w32font_open_internal): Prototype adjusted.
12275
12276 * w32gui.h (XGCValues): Surround `XFontStruct *font' by "if
12277 OLD_FONT" and "endif".
12278
12279 * w32font.c: Throughout the file, delete all USE_FONT_BACKEND
12280 conditionals. Don't check enable_font_backend. Delete all codes
12281 used only when USE_FONT_BACKEND is not defined.
12282 (w32font_open): Return a font-object. Make a font-object by
12283 font_make_object. Adjusted for the change of struct w32font_info.
12284 (w32font_close): Don't free struct font. Adjusted for the change
12285 of struct w32font_info.
12286 (w32font_encode_char, w32font_text_extents, w32font_draw):
12287 Adjusted for the change of struct w32font_info.
12288 (w32font_draw): Likewise.
12289 (w32font_list_internal): Return a list, not vector.
12290 (w32font_open_internal): Change the 4th arg to font-object.
12291 Adjusted for the change of struct w32font_info and font-object format.
12292 (add_font_name_to_list): Don't downcase names.
12293 (w32_enumfont_pattern_entity): Make a font-entity by
12294 font_make_entity. Adjusted for the format change of font-entity.
12295 Use FONT_SET_STYLE to set a style-related font property. If a
12296 font is scalable, set avgwidth property to 0. Set font-entity
12297 property by font_put_extra.
12298 (font_matches_spec): Adjusted for the format change of font-entity.
12299 (w32_weight_table, w32_decode_weight): New variables.
12300 (w32_encode_weight): New function.
12301 (fill_in_logfont): Adjusted for the format change of font-spec.
12302 (w32font_full_name): Use FONT_WEIGHT_SYMBOLIC to get a symbol
12303 weight value.
12304 (w32font_driver): Adjusted for the change of struct font_driver.
12305
12306 * w32term.h: Throughout the file, delete all USE_FONT_BACKEND
12307 conditionals. Don't check enable_font_backend. Surround non-used
12308 code by "#ifdef OLD_FONT" and "endif".
12309 (FONT_WIDTH, FONT_HEIGHT, FONT_BASE, FONT_DESCENT)
12310 (FONT_AVG_WIDTH): Adjusted for the change of struct font.
12311
12312 * w32term.c: Throughout the file, delete all USE_FONT_BACKEND
12313 conditionals. Don't check enable_font_backend. Delete all codes
12314 used only when USE_FONT_BACKEND is not defined. Surround non-used
12315 code by "#ifdef OLD_FONT" and "endif".
12316
12317 * w32uniscribe.c: Delete USE_FONT_BACKEND conditional.
12318 (uniscribe_open): Return value changed to font-object.
12319 Adjusted for the format change of font-object.
12320 (uniscribe_otf_capability): Adjusted for the change of struct font.
12321 (add_opentype_font_name_to_list): Don't downcase names.
12322 (uniscribe_font_driver): Adjusted for the change of struct
12323 font_driver.
12324
123252008-05-13 Chong Yidong <cyd@stupidchicken.com>
12326
12327 * dispnew.c (update_frame_1): Check if tty output is still valid
12328 before flushing it.
12329
123302008-05-13 Jan Djärv <jan.h.d@swipnet.se>
12331
12332 * xterm.c (handle_one_xevent): Don't pass buttons higher than 3
12333 to Gtk+ menus.
12334
123352008-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
12336
12337 * dired.c (file_name_completion): Tweak the code so as to always do it
12338 in a single pass. Tighten the scope of some variables.
12339
12340 * dired.c (Qdefault_directory): New var.
12341 (file_name_completion): Use it instead of Fexpand_file_name.
12342 (syms_of_dired): Initialize it.
12343
123442008-05-12 Stefan Monnier <monnier@iro.umontreal.ca>
12345
12346 * fileio.c (double_dollars): Remove dead code.
12347
123482008-05-10 Eli Zaretskii <eliz@gnu.org>
12349
12350 * dired.c (Ffile_attributes, Fdirectory_files_and_attributes):
12351 Mention w32-get-true-file-attributes in doc string.
12352
12353 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
12354
123552008-05-09 Glenn Morris <rgm@gnu.org>
12356
12357 * fileio.c (Fread_file_name): Remove reference to insdef, deleted
12358 2008-04-23.
12359
123602008-05-09 Eli Zaretskii <eliz@gnu.org>
12361
12362 Support for reporting owner and group of each file on MS-Windows:
12363 * dired.c (stat_uname, stat_gname): New functions, with special
12364 implementation for w32.
12365 (Ffile_attributes): Use them instead of getpwuid and getgrgid.
12366
12367 * w32.c: Rename the_passwd_* to dflt_passwd_*.
12368 (dflt_group_name): New static variable.
12369 (dflt_group): Rename from the_group.
12370 (init_user_info): Init dflt_group fields. Get user's group name
12371 from LookupAccountSid.
12372 (g_b_init_get_file_security, g_b_init_get_security_descriptor_owner)
12373 (g_b_init_get_security_descriptor_group, g_b_init_is_valid_sid):
12374 New initialization states.
12375 (globals_of_w32): Initialize them to zero. Initialize the default
12376 group name to "None".
12377 (GetFileSecurity_Name): New global var, the name of the function
12378 to call for GetFileSecurity.
12379 (GetFileSecurity_Proc, GetSecurityDescriptorOwner_Proc)
12380 (GetSecurityDescriptorGroup_Proc, IsValidSid_Proc): New typedefs.
12381 (get_file_security, get_security_descriptor_owner)
12382 (get_security_descriptor_group, is_valid_sid)
12383 (get_file_security_desc, get_rid, get_name_and_id)
12384 (get_file_owner_and_group): New functions.
12385 (stat): Use get_file_security_desc and get_file_owner_and_group to
12386 report the owner and primary group of each file. Don't ignore the
12387 high 32 bits of file's size, now that st_size is 64-bit wide.
12388 Fix test when to get true file attributes.
12389 (init_user_info): Use get_rid instead of equivalent inline code.
12390 (fstat): Don't ignore the high 32 bits of file's size.
12391
123922008-05-09 Chong Yidong <cyd@stupidchicken.com>
12393
12394 * image.c (png_load): Use correct bit-depth for setting background
12395 color.
12396
123972008-05-08 Eli Zaretskii <eliz@gnu.org>
12398
12399 * Makefile.in (lisp, shortlisp): Rename epa-file-hook.elc to
12400 epa-hook.elc.
12401
124022008-05-08 Juanma Barranquero <lekktu@gmail.com>
12403
12404 * font.c (Ffont_match_p): Don't use `iff' in docstring.
12405
124062008-05-07 Dan Nicolaescu <dann@ics.uci.edu>
12407
12408 * macfns.c (Fx_create_frame): Make a copy of frame parameters
12409 because the original parameters are in pure storage now.
12410 (mac_window): Remove unused params. Update callers.
12411
124122008-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
12413
12414 * lread.c (substitute_object_recurse): Use lower-level primitives.
12415 Don't signal errors when traversing sub-char-tables.
12416 Don't loop over all the possible characters when traversing char-tables.
12417
12418 * print.c (print_preprocess): Add sub-char-tables to the print-table,
12419 just like we do in print.c.
12420
124212008-05-05 Stefan Monnier <monnier@iro.umontreal.ca>
12422
12423 * minibuf.c (Ftry_completion): Remove code left over from when we used
12424 scmp instead of Fcompare_strings.
12425
124262008-05-04 Juanma Barranquero <lekktu@gmail.com>
12427
12428 * w32fns.c (Fw32_battery_status): Fix computation of %t (h:min) format.
12429
124302008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12431
12432 * image.c [USE_MAC_IMAGE_IO] (image_load_image_io):
12433 Create bitmap context in native byte order.
12434
12435 * macterm.c (XDrawLine)
12436 (XCreatePixmapFromBitmapData) [USE_MAC_IMAGE_IO]: Create bitmap
12437 context in native byte order.
12438
124392008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12440
12441 * config.in: Regenerate.
12442
12443 * image.c (PIX_MASK_DRAW, PIX_MASK_RETAIN) [USE_MAC_IMAGE_IO]:
12444 New definitions for Image I/O support.
12445 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
12446 (mac_create_cg_image_from_image, x_create_x_image_and_pixmap)
12447 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
12448 (mac_data_provider_release_data, image_load_image_io)
12449 [USE_MAC_IMAGE_IO]: New functions.
12450 (CGImageCreateWithPNGDataProviderProcType) [MAC_OSX]: Remove typedef.
12451 (MyCGImageCreateWithPNGDataProvider) [MAC_OSX]: Remove variable.
12452 (init_image_func_pointer) [MAC_OSX]: Remove function.
12453 (image_load_quartz2d) [MAC_OSX]: Check availability of
12454 CGImageCreateWithPNGDataProvider at compile time.
12455 Use lowercase `false' for boolean constant.
12456 (png_load, jpeg_load, tiff_load, gif_load) [USE_MAC_IMAGE_IO]:
12457 Use image_load_image_io.
12458 (png_load) [!USE_MAC_IMAGE_IO && MAC_OSX]:
12459 Don't check MyCGImageCreateWithPNGDataProvider.
12460 (init_image) [MAC_OSX && TARGET_API_MAC_CARBON]:
12461 Don't call init_image_func_pointer.
12462
12463 * macgui.h (Pixmap) [USE_MAC_IMAGE_IO]: New definition for Image I/O.
12464
12465 * macterm.c (mac_cg_color_space_rgb) [USE_CG_DRAWING]:
12466 Make variable non-static.
12467 (XDrawLine, XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
12468 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
12469
12470 * macterm.h (ARGB_TO_ULONG, ALPHA_FROM_ULONG): New macros.
12471 (RED_FROM_ULONG): Mask off higher bits.
12472 (mac_cg_color_space_rgb) [USE_MAC_IMAGE_IO]: New extern.
12473
12474 * s/darwin.h [HAVE_CARBON && HAVE_AVAILABILITYMACROS_H]:
12475 Include AvailabilityMacros.h.
12476 (USE_MAC_IMAGE_IO, LIBS_IMAGE) [HAVE_CARBON]: New defines.
12477 (LIBS_CARBON) [HAVE_CARBON]: Use LIBS_IMAGE.
12478
124792008-05-03 Stefan Monnier <monnier@iro.umontreal.ca>
12480
12481 * chartab.c (Fset_char_table_range): If range is t, really set all
12482 chars to that value.
12483
124842008-05-03 Eli Zaretskii <eliz@gnu.org>
12485
12486 * dired.c (Ffile_attributes): Don't allow the device number become
12487 negative.
12488
124892008-05-02 Daiki Ueno <ueno@unixuser.org>
12490
12491 * Makefile.in (lisp, shortlisp): Add epa-file-hook.elc.
12492
124932008-05-02 Juri Linkov <juri@jurta.org>
12494
12495 * minibuf.c (Fread_from_minibuffer, Fread_string, Fread_command)
12496 (Fread_variable, Fread_buffer, Fcompleting_read): Document the
12497 DEFAULT argument as a list of default values in docstrings.
12498
124992008-05-01 Chong Yidong <cyd@stupidchicken.com>
12500
12501 * puresize.h (BASE_PURESIZE): Increase to 1210000.
12502
125032008-05-01 Martin Rudalics <rudalics@gmx.at>
12504
12505 * dispnew.c (change_frame_size_1): Preserve small windows when
12506 shrinking frames by calling set_window_height|width with third
12507 arg 2.
12508
12509 * window.h (struct window): Replace field too_small_ok by field
12510 resize_proportionally.
12511
12512 * window.c (make_window): Initialize resize_proportionally.
12513 (enlarge_window): Temporarily set resize_proportionally to make
12514 sure that shrink_windows does scale the window proportionally.
12515 (shrink_windows): When window has resize_proportionally set try
12516 to shrink it proportionally by stealing from other windows.
12517 (struct saved_window, Fset_window_configuration)
12518 (compare_window_configurations): Handle resize_proportionally.
12519 (WINDOW_TOTAL_SIZE): New macro.
12520 (window_min_size, shrink_windows, size_window): Use it.
12521 (check_min_window_sizes): Remove. Invalid values of
12522 window-min-height|width are handled by window_min_size_2 now.
12523 (size_window, Fsplit_window, enlarge_window)
12524 (adjust_window_trailing_edge, grow_mini_window): Don't call
12525 check_min_window_sizes.
12526 (window_min_size_2, window_min_size_1, window_min_size):
12527 New argument safe_p for retrieving "safe" minimum sizes.
12528 (Fdisplay_buffer, Fsplit_window, enlarge_window)
12529 (adjust_window_trailing_edge, grow_mini_window):
12530 Adjust arguments of window_min_size... functions.
12531 (shrink_windows): Argument min_size removed. New argument
12532 safe_p allows shrinking windows to their safe minimum sizes.
12533 Calculate minimum size and decide whether a window shall be
12534 deleted for each window individually.
12535 (size_window): When nodelete_p equals 2, tell shrink_windows to
12536 delete windows only if their new minimum size is no more safe.
12537 (shrink_window_lowest_first): Call window_min_size_1 to make
12538 sure to preserve modeline of bottom-most window when resizing
12539 the minibuffer.
12540 (Fset_window_configuration, Fcurrent_window_configuration)
12541 (compare_window_configurations): Do not handle
12542 window-min-height|width any more.
12543 (syms_of_window): Clarify window-min-height|width doc-strings.
12544
125452008-04-30 Stefan Monnier <monnier@iro.umontreal.ca>
12546
12547 * dired.c (file_name_completion): Fix up the encoding/decoding issue
12548 some more. Copy some of the code from Ftry_completions.
12549 Remove special case code that dates back to initial revision when the
12550 slash was only added when necessary and that can't trigger nowadays.
12551
125522008-04-27 Kenichi Handa <handa@m17n.org>
12553
12554 * font.c (font_prop_validate): Signal `error' instead of `font'.
12555
125562008-04-29 Jason Rumney <jasonr@gnu.org>
12557
12558 * w32fns.c (Fw32_battery_status): New defun.
12559 (syms_of_w32fns): Defsubr it.
12560
125612008-04-28 Andreas Schwab <schwab@suse.de>
12562
12563 * dired.c (file_name_completion): Fix another mixing of encoded
12564 and decoded names.
12565
125662008-04-28 Juanma Barranquero <lekktu@gmail.com>
12567
12568 * w32fns.c (Fw32_define_rgb_color): Fix typo in docstring.
12569
125702008-04-27 Juanma Barranquero <lekktu@gmail.com>
12571
12572 * fringe.c (Fdefine_fringe_bitmap): Doc fix.
12573
125742008-04-27 Andreas Schwab <schwab@suse.de>
12575
12576 * dired.c (file_name_completion): Fix inappropriate mixing of
12577 encoded and decoded names.
12578
12579 * xterm.c (XTread_socket): Fix use of uninitialized variable.
12580
12581 * puresize.h (BASE_PURESIZE): Increase to 1200000.
12582
125832008-04-26 Eli Zaretskii <eliz@gnu.org>
12584
12585 * dired.c (Ffile_attributes) [WINDOWSNT]: Undo change from
12586 2008-03-31, it's not needed anymore with `struct stat' definition
12587 on nt/inc/sys/stat.h. Undo changes from 2007-01-12 and 2007-01-13
12588 for the same reasons.
12589
125902008-04-25 Dennis Gilmore <ausil@fedoraproject.org> (tiny change)
12591
12592 * m/sparc.h: Additional redefinitions for GNU/Linux.
12593
125942008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12595
12596 * macterm.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: New variable.
12597 (syms_of_macterm) [USE_MAC_TSM]: Defvar it.
12598 (Qmouse_drag_overlay) [MAC_OSX]: New variable.
12599 (syms_of_macterm) [MAC_OSX]: Intern and staticpro it.
12600 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
12601 (mac_ax_selected_text_range) [MAC_OSX]: New functions.
12602 (mac_ax_number_of_characters) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
12603 Likewise.
12604
12605 * mactoolbox.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: Add extern.
12606 (fast_find_position, x_y_to_hpos_vpos, mac_ax_selected_text_range)
12607 (mac_ax_number_of_characters): Add externs.
12608 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
12609 [USE_MAC_TSM]: Likewise.
12610 (mac_handle_text_input_event) [MAC_OSX]:
12611 Handle kEventTextInputOffsetToPos for no active input area case.
12612 Handle kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
12613 (mac_handle_document_access_event)
12614 [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: New function.
12615 (install_application_handler) [MAC_OSX]: Register handlers for
12616 kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
12617 (install_application_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
12618 Register mac_handle_document_access_event.
12619
12620 * xdisp.c (x_y_to_hpos_vpos, fast_find_position) [HAVE_CARBON]:
12621 Make functions non-static.
12622
126232008-04-23 Stefan Monnier <monnier@iro.umontreal.ca>
12624
12625 * fileio.c (Vread_file_name_function, Vread_file_name_predicate)
12626 (read_file_name_completion_ignore_case, insert_default_directory)
12627 (Qdefault_directory): Move to minibuffer.el.
12628 (Fread_file_name): Call the new `read-file-name' instead.
12629
126302008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12631
12632 * mac.c (create_apple_event) [TARGET_API_MAC_CARBON]:
12633 Make function non-static.
12634 (create_apple_event_from_event_ref) [TARGET_API_MAC_CARBON]:
12635 Remove function.
12636 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
12637 Move to mactoolbox.c.
12638 (mac_event_parameters_to_lisp) [TARGET_API_MAC_CARBON]: New function.
12639
12640 * macgui.h (CGFloat) [!CGFLOAT_DEFINED]: New typedef.
12641 (mac_rect_make): New macro.
12642
12643 * macterm.c (mac_draw_image_string_atsui) [MAC_OSX]: Use CGFloat
12644 instead of float.
12645 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
12646 (init_cg_color, mac_draw_line, mac_draw_cg_image, XSetForeground)
12647 (XSetBackground) [USE_CG_DRAWING]: Likewise.
12648 (mac_draw_image_string_atsui) [MAC_OSX]: Use mac_rect_make instead of
12649 CGRectMake.
12650 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
12651 (mac_erase_rectangle, mac_draw_cg_image, mac_fill_rectangle)
12652 (mac_set_clip_rectangles) [USE_CG_DRAWING]: Likewise.
12653 (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
12654 instead of WindowRef in argument type.
12655 (XCreatePixmap) [!MAC_OS8]: Don't call SetPortWindowPort.
12656 (mac_invert_rectangle): Use CGContextSetBlendMode if available.
12657 (mac_set_clip_rectangles, mac_reset_clip_rectangles): Take argument F
12658 instead of DISPLAY. All uses changed.
12659 (mac_handle_size_change): Don't call SET_FRAME_GARBAGED.
12660 (x_calc_absolute_position): Simplify so as not to use
12661 FRAME_PIXEL_WIDTH/FRAME_PIXEL_HEIGHT.
12662
12663 * macterm.h (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
12664 instead of WindowRef in argument type.
12665 (create_apple_event_from_event_ref, create_apple_event_from_drag_ref)
12666 [TARGET_API_MAC_CARBON]: Remove externs.
12667 (create_apple_event, mac_event_parameters_to_lisp)
12668 [TARGET_API_MAC_CARBON]: Add externs.
12669
12670 * mactoolbox.c (Vmac_ts_script_language_on_focus)
12671 (saved_ts_script_language_on_focus) [USE_MAC_TSM]: Remove externs.
12672 (XTread_socket) [USE_MAC_TOOLBAR]: Select window if its structure part
12673 is clicked.
12674 (x_activate_menubar): Remove extern for saved_menu_event_location.
12675 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
12676 Move from mac.c.
12677
126782008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12679
12680 * alloc.c [!SYSTEM_MALLOC && !SYNC_INPUT] (uninterrupt_malloc)
12681 [HAVE_GTK_AND_PTHREAD && !DOUG_LEA_MALLOC]: Don't use recursive mutex.
12682
126832008-04-23 Jason Rumney <jasonr@gnu.org>
12684
12685 * w32.c (stat): When Vw32_get_true_file_attributes is Qlocal, get
12686 attributes only for local files.
12687
12688 * w32proc.c (syms_of_ntproc): Change Vw32_get_true_file attributes
12689 default to Qlocal.
12690
126912008-04-22 Juri Linkov <juri@jurta.org>
12692
12693 * buffer.c (Fswitch_to_buffer): Change interactive spec to call
12694 read-buffer-to-switch instead of using the letter "B".
12695
126962008-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
12697
12698 * fileio.c (Qdefault_directory): New variable.
12699 (Fread_file_name): Use it to pass `dir' to the completion functions.
12700
127012008-04-20 Chong Yidong <cyd@stupidchicken.com>
12702
12703 * xdisp.c (pos_visible_p): Check if iterator stops on a display string.
12704
127052008-04-19 Stefan Monnier <monnier@iro.umontreal.ca>
12706
12707 * keyboard.c (Vpre_help_message): Remove.
12708 (show_help_echo): Remove default C code.
12709
12710 * dired.c (directory_files_internal, file_name_completion):
12711 Only call ENCODE_FILE if the string is indeed decoded.
12712
127132008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
12714
12715 * Makefile.in (TOOLKIT_DEFINES): Remove.
12716 (LIBW): Use a bit less #if, remove left over OPEN_LOOK stuff.
12717
127182008-04-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12719
12720 * Makefile.in (MAC_OBJ): Add mactoolbox.o.
12721 (mactoolbox.o): New target.
12722
12723 * mac.c [MAC_OSX] (select_and_poll_event, sys_select):
12724 Use mac_run_loop_run_once instead of CFRunLoopRunInMode.
12725
12726 * macfns.c (x_set_background_color, mac_window, x_create_tip_frame):
12727 Use mac_set_frame_window_background instead of XSetWindowBackground.
12728 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]:
12729 Use mac_is_window_toolbar_visible instead of IsWindowToolbarVisible.
12730 (x_set_name_internal) [TARGET_API_MAC_CARBON]: Use mac_set_window_title
12731 instead of SetWindowTitleWithCFString.
12732 (mac_update_proxy_icon) [TARGET_API_MAC_CARBON]: Remove BLOCK_INPUT.
12733 Move function to mactoolbox.c.
12734 (mac_update_title_bar) [TARGET_API_MAC_CARBON]:
12735 Use mac_set_window_modified instead of SetWindowModified.
12736 Add BLOCK_INPUT around mac_set_window_modified/mac_update_proxy_icon.
12737 (mac_window, x_create_tip_frame): Use mac_create_frame_window.
12738 (Fx_focus_frame): Use mac_front_non_floating_window instead of
12739 FrontNonFloatingWindow. Use mac_activate_window instead of
12740 ActivateWindow. Use mac_active_non_floating_window instead of
12741 ActiveNonFloatingWindow.
12742 (show_hourglass, hide_hourglass) [TARGET_API_MAC_CARBON]:
12743 Use mac_show_hourglass and mac_hide_hourglass.
12744 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use mac_get_global_mouse
12745 instead of GetGlobalMouse.
12746 (Fx_show_tip): Use mac_move_window/mac_size_window/mac_show_window
12747 instead of MoveWindow/SizeWindow/ShowWindow, respectively.
12748 Use mac_bring_window_to_front instead of BringToFront.
12749 (Qfile_name_history) [TARGET_API_MAC_CARBON]: Move extern to
12750 mactoolbox.c.
12751 (Fx_file_dialog) [TARGET_API_MAC_CARBON]: Move function body to
12752 mac_file_dialog in mactoolbox.c. Use mac_file_dialog.
12753 (mac_nav_event_callback) [TARGET_API_MAC_CARBON]: Move function to
12754 mactoolbox.c.
12755
12756 * macgui.h [!HAVE_CARBON]: Include Quickdraw.h instead of QuickDraw.h.
12757 (XtPointer): Move typedef from macmenu.c.
12758 (enum button_type): Move enum from macmenu.c.
12759 (widget_value): Move typedef from macmenu.c.
12760 (M_APPLE, I_ABOUT, EXTRA_STACK_ALLOC, ARGV_STRING_LIST_ID)
12761 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
12762 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
12763 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
12764 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
12765 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
12766 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
12767 (DIALOG_ICON_TOP_MARGIN): Move defines from macmenu.c.
12768 (Selection): Move typedef from macselect.c.
12769 (RAM_TOO_LARGE_ALERT_ID, ABOUT_ALERT_ID) [MAC_OS8]: Move defines from
12770 macterm.c.
12771 (mac_set_window_title, mac_set_window_modified, mac_is_window_visible)
12772 (mac_is_window_collapsed, mac_bring_window_to_front)
12773 (mac_send_window_behind, mac_hide_window, mac_show_window)
12774 (mac_collapse_window, mac_front_non_floating_window)
12775 (mac_active_non_floating_window, mac_activate_window)
12776 (mac_move_window_structure, mac_move_window, mac_size_window)
12777 (mac_get_global_mouse, mac_is_window_toolbar_visible): New defines.
12778
12779 * macmenu.c [!TARGET_API_MAC_CARBON]: Move includes to mactoolbox.c.
12780 (enum mac_menu_kind): Move enum to mactoolbox.c.
12781 (min_menu_id): Move variable to mactoolbox.c.
12782 (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]: Likewise.
12783 (DIALOG_WINDOW_RESOURCE): Move define to mactoolbox.c.
12784 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
12785 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
12786 [TARGET_API_MAC_CARBON]: Likewise.
12787 (XtPointer): Move typedef to macgui.h.
12788 (enum button_type): Move enum to macgui.h.
12789 (widget_value): Move typedef to macgui.h.
12790 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
12791 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
12792 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
12793 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
12794 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
12795 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
12796 (DIALOG_ICON_TOP_MARGIN): Move defines to macgui.h.
12797 (popup_activated_flag): Make variable non-static.
12798 (x_activate_menubar, install_menu_quit_handler, pop_down_menu)
12799 (add_menu_item, fill_menu, dispose_menus):
12800 Move functions to mactoolbox.c.
12801 (restore_show_help_function, menu_target_item_handler)
12802 (install_menu_target_item_handler, mac_handle_dialog_event)
12803 (install_dialog_event_handler, pop_down_dialog, create_and_show_dialog)
12804 [TARGET_API_MAC_CARBON]: Likewise.
12805 (menu_quit_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: Likewise.
12806 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
12807 (find_and_call_menu_selection, name_is_separator): Make function
12808 non-static.
12809 (Vshow_help_function, timer_check) [TARGET_API_MAC_CARBON]: Move extern
12810 to mactoolbox.c.
12811 (set_frame_menubar): Don't call install_menu_quit_handler.
12812 (menu_item_selection): New variable.
12813 (mac_menu_show): Use create_and_show_popup_menu.
12814 (create_and_show_dialog) [TARGET_API_MAC_CARBON]: Don't return
12815 selection but set variable menu_item_selection. All uses changed.
12816 (mac_fill_menubar): Rename from fill_menubar. All uses changed.
12817 Call install_menu_quit_handler. Move to mactoolbox.c.
12818
12819 * macselect.c [!TARGET_API_MAC_CARBON]: Don't include Scrap.h.
12820 (Selection): Move typedef to macgui.h.
12821 (Vselection_converter_alist, Qmac_scrap_name, Qmac_ostype)
12822 (Vmac_apple_event_map, Qmac_apple_event_class, Qmac_apple_event_id):
12823 Make variables non-static.
12824 (Vmac_dnd_known_types) [TARGET_API_MAC_CARBON]: Likewise.
12825 (mac_handle_apple_event, cleanup_all_suspended_apple_events):
12826 Make functions non-static.
12827 (Vmac_service_selection) [MAC_OSX]: Likewise.
12828 (mac_get_selection_from_symbol, get_flavor_type_from_symbol)
12829 (mac_valid_selection_target_p, mac_clear_selection)
12830 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
12831 (mac_put_selection_value, mac_selection_has_target_p)
12832 (mac_get_selection_value, mac_get_selection_target_list)
12833 (init_apple_event_handler, install_drag_handler, remove_drag_handler):
12834 Move functions to mactoolbox.c.
12835 (mac_do_track_drag, mac_do_receive_drag) [TARGET_API_MAC_CARBON]:
12836 Likewise.
12837 (copy_scrap_flavor_data, mac_handle_service_event)
12838 (install_service_handler) [MAC_OSX]: Likewise.
12839 (syms_of_macselect) <Vmac_dnd_known_types>:
12840 Use mac_dnd_default_known_types.
12841
12842 * macterm.h (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y):
12843 Move to mactoolbox.c.
12844 (HOURGLASS_WIDTH, HOURGLASS_HEIGHT): Change to 15.
12845 (Fx_selection_owner_p): Add EXFUN.
12846 (install_window_handler, remove_window_handler, XSetWindowBackground):
12847 Remove externs.
12848 (do_apple_menu) [!TARGET_API_MAC_CARBON]: Likewise.
12849 (mac_prepare_for_quickdraw) [USE_CG_DRAWING]: Likewise.
12850 (x_raise_frame, x_lower_frame, mac_alert_sound_play)
12851 (install_application_handler, mac_get_frame_bounds, mac_get_frame_mouse)
12852 (mac_convert_frame_point_to_global, mac_set_frame_window_background)
12853 (mac_update_begin mac_update_end, mac_frame_up_to_date, x_flush)
12854 (mac_create_frame_window, mac_dispose_frame_window, mac_begin_clip)
12855 (mac_end_clip, mac_create_scroll_bar, mac_dispose_scroll_bar)
12856 (mac_set_scroll_bar_bounds, mac_redraw_scroll_bar, mac_fill_menubar)
12857 (create_and_show_popup_menu, mac_get_selection_from_symbol)
12858 (mac_valid_selection_target_p, mac_clear_selection)
12859 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
12860 (mac_put_selection_value, mac_selection_has_target_p)
12861 (mac_get_selection_value, mac_get_selection_target_list): Add externs.
12862 (mac_update_proxy_icon, mac_show_hourglass, mac_hide_hourglass)
12863 (mac_reposition_hourglass, mac_file_dialog, create_and_show_dialog)
12864 (mac_dnd_default_known_types) [TARGET_API_MAC_CARBON]: Likewise.
12865 (mac_run_loop_run_once) [MAC_OSX]: Likewise.
12866 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
12867 (mac_begin_cg_clip, mac_end_cg_clip) [USE_CG_DRAWING]: Likewise.
12868 (x_set_toolkit_scroll_bar_thumb) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
12869 (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
12870
12871 * mactoolbox.c: New file.
12872
128732008-04-18 Jason Rumney <jasonr@gnu.org>
12874
12875 * dired.c (Ffile_attributes) [WINDOWSNT]: Cast uid and gid to unsigned.
12876
128772008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
12878
12879 * character.c (Fmultibyte_char_to_unibyte):
12880 Return latin1 chars unchanged.
12881
12882 * fileio.c (Fexpand_file_name): Refine last fix so `nm' is only
12883 relocated if it points to `name'.
12884
128852008-04-17 Kenichi Handa <handa@m17n.org>
12886
12887 * data.c (Faset): Allow setting a multibyte character in an
12888 ASCII-only unibyte string.
12889
12890 * lisp.h (STRING_SET_MULTIBYTE): New macro.
12891
128922008-04-16 Stefan Monnier <monnier@iro.umontreal.ca>
12893
12894 * Makefile.in: Don't use HAVE_GTK and don't -DUSE_GTK since it's now
12895 done in config.h.
12896
128972008-04-16 Juanma Barranquero <lekktu@gmail.com>
12898
12899 * character.c (Fchar_bytes, Fchar_width, Fstring_width)
12900 (Fchar_direction): Add usage in the docstring.
12901
129022008-04-15 Chong Yidong <cyd@stupidchicken.com>
12903
12904 * keyboard.c (read_key_sequence): Remove always-true checks.
12905
129062008-04-14 Jason Rumney <jasonr@gnu.org>
12907
12908 * w32font.c (w32font_open_internal): Set max_bounds.descent in
12909 compatibility struct, for better underline positioning.
12910
129112008-04-13 David Hansen <david.hansen@gmx.net>
12912
12913 * dbusbind.c (dbus-get-unique-name): Remove extra copying of name
12914 string.
12915
129162008-04-12 Dan Nicolaescu <dann@ics.uci.edu>
12917
12918 * m/hp800.h (XUINT, XSET): Remove.
12919
129202008-04-12 Juanma Barranquero <lekktu@gmail.com>
12921
12922 * fileio.c (Fexpand_file_name): Add declaration for `p' missing in
12923 previous change.
12924
129252008-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
12926
12927 * fileio.c (Fexpand_file_name): Tighten the scope of `p' and `o' vars.
12928 Relocate `nm' after calling DECODE_FILE, in case the GC was run.
12929
129302008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
12931
12932 * keymap.h (map_keymap_canonical): Declare.
12933 * xmenu.c (single_keymap_panes): Use it.
12934
129352008-04-11 Glenn Morris <rgm@gnu.org>
12936
12937 * eval.c (Fdefvaralias): If the alias is bound and the target is not,
12938 set the target's value to that of the alias.
12939
129402008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
12941
12942 * term.c (set_tty_color_mode): Left over typo.
12943
129442008-04-10 Michael Albinus <michael.albinus@gmx.de>
12945
12946 * fileio.c (Fmake_symbolic_link): Surround code by #ifdef S_IFLNK
12947 only after check for file name handler functions. Signal, when
12948 native functionality is not supported.
12949 (syms_of_fileio): Declare it unconditionally.
12950
129512008-04-10 Jason Rumney <jasonr@gnu.org>
12952
12953 * w32menu.c (is_simple_dialog, simple_dialog_show): New functions.
12954 (Fx_popup_dialog): Handle simple yes/no questions as dialogs.
12955
12956 * w32.c (logon_network_drive): Also logon to remote drives that
12957 are mapped to drive letters.
12958
129592008-04-10 Glenn Morris <rgm@gnu.org>
12960
12961 * xdisp.c (truncate-partial-width-windows): Doc fix.
12962
129632008-04-10 Stefan Monnier <monnier@iro.umontreal.ca>
12964
12965 * fileio.c (read_file_name_cleanup, Fread_file_name_internal):
12966 Move functions to minibuffer.el.
12967 (syms_of_fileio): Don't declare them.
12968
129692008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
12970
12971 * minibuf.c (Vcompletion_auto_help): Move to minibuffer.el.
12972 (syms_of_minibuf): Remove its initialization.
12973
12974 * minibuf.c (temp_echo_area_glyphs): Remove unused function.
12975
129762008-04-09 Juanma Barranquero <lekktu@gmail.com>
12977
12978 * editfns.c (Ffield_string_no_properties): Fix typo in docstring.
12979
129802008-04-09 Jason Rumney <jasonr@gnu.org>
12981
12982 * makefile.w32-in (distclean): Delete makefile too.
12983 (maintainer-clean): New target.
12984
12985 * xdisp.c (redisplay_internal) [!WINDOWSNT]: Conditionalize last change.
12986
12987 * w32term.c (w32_compute_glyph_string_overhangs): Compute overhangs
12988 for new font backend and composite cases.
12989
129902008-04-09 Jan Djärv <jan.h.d@swipnet.se>
12991
12992 * atimer.c (alarm_signal_handler): Call run_timers if not SYNC_INPUT.
12993 Most of the code moved to run_timers.
12994 (do_pending_atimers): Call run_timers.
12995 (run_timers): New function.
12996
12997 * sysdep.c (emacs_write): If SYNC_INPUT and pending_atimers,
12998 run atimers.
12999
13000 * process.c (wait_reading_process_output): The same as above.
13001
130022008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
13003
13004 * minibuf.c (last_exact_completion): Remove variable.
13005 (Fdelete_minibuffer_contents, do_completion, Fminibuffer_complete)
13006 (complete_and_exit_1, complete_and_exit_2)
13007 (Fminibuffer_complete_and_exit, Fminibuffer_complete_word)
13008 (Fdisplay_completion_list, display_completion_list_1)
13009 (Fminibuffer_completion_help, Fself_insert_and_exit)
13010 (Fexit_minibuffer, Fminibuffer_message): Move functions to
13011 minibuffer.el.
13012 (syms_of_minibuf): Remove corresponding initializations.
13013
13014 * keyboard.c (Qdeactivate_mark): New var.
13015 (command_loop_1): Use it to call `deactivate-mark'.
13016 (syms_of_keyboard): Initialize it.
13017
13018 * xdisp.c (redisplay_internal): Reset tty's color_mode when switching
13019 to another frame.
13020 * frame.c (do_switch_frame): Refine the top_frame/async_visible code.
13021 Don't call set_tty_color_mode.
13022 (store_frame_param): Reset previous_frame rather than call
13023 set_tty_color_mode.
13024 * term.c (set_tty_color_mode): Rewrite.
13025 * dispextern.h (set_tty_color_mode): New type.
13026 * termchar.h (struct tty_display_info): Add `previous_color_mode'.
13027
130282008-04-08 Stefan Monnier <monnier@iro.umontreal.ca>
13029
13030 * keymap.c (access_keymap): Remove the value 2 for t_ok which was used
13031 for generic chars, which do not exist any more in emacs-unicode.
13032
130332008-04-08 Michael Albinus <michael.albinus@gmx.de>
13034
13035 * coding.c (detect_coding_emacs_mule)
13036 (Ffind_operation_coding_system): Fix typo.
13037
130382008-04-08 Jason Rumney <jasonr@gnu.org>
13039
13040 * w32uniscribe.c (SNAME): Extract only symbol name.
13041
13042 * w32font.h (struct w32_metric_cache): New struct.
13043 (w32font_info): Use it.
13044 (W32METRIC_NO_ATTEMPT, W32METRIC_SUCCESS, W32METRIC_FAIL)
13045 (CACHE_BLOCKSIZE): New constants.
13046
13047 * w32font.c (Qja, Qko, Qzh): New symbols.
13048 (syms_of_w32font): Initialise them.
13049 (font_matches_spec): Use them to filter by language.
13050 (recompute_cached_metrics): Remove function.
13051 (compute_metrics, clear_cached_metrics): New functions.
13052 (w32font_encode_char): Use them to manage metric cache.
13053 (w32font_text_extents): Cache metrics for all glyphs on demand.
13054 Delay converting glyph indices to WORD until needed.
13055 (w32font_open_internal): Initialize metric cache to empty.
13056 (registry_to_w32_charset): Charset should always be a symbol.
13057 (fill_in_logfont, list_all_matching_fonts): Family should
13058 always be a symbol.
13059
130602008-04-06 Jason Rumney <jasonr@gnu.org>
13061
13062 * w32uniscribe.c (uniscribe_shape): Increase items buffer size.
13063 Give up if glyph indices not supported. Use uniscribe obtained
13064 ABC widths for individual metrics. Map glyph clusters back to
13065 characters using fClusterStart flag. Return number of glyphs
13066 produced, not chars processed.
13067 (uniscribe_shape): Map char at FROM to current glyph.
13068
130692008-04-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13070
13071 * macmenu.c (fill_menu) [TARGET_API_MAC_CARBON]:
13072 Use SetMenuItemHierarchicalMenu.
13073
130742008-04-05 Jason Rumney <jasonr@gnu.org>
13075
13076 * image.c (pbm_load): Allow color values up to 65535.
13077 Throw an error if max_color_idx is outside the supported range.
13078 Report an error when image size is invalid.
13079 Read two bytes at a time when raw images have max_color_idx above 255.
13080
130812008-04-05 Eli Zaretskii <eliz@gnu.org>
13082
13083 * w32.c (readdir): If FindFirstFile/FindNextFile return in
13084 cFileName a file name that includes `?' characters, use the 8+3
13085 alias in cAlternateFileName instead.
13086
130872008-04-05 Kenichi Handa <handa@ni.aist.go.jp>
13088
13089 * ccl.c (ccl_driver): If ccl->quit_silently is nonzero, don't
13090 append "CCL: Quitted" when the CCL program is quitted.
13091 (setup_ccl_program): Initialize ccl->quit_silently to zero.
13092
13093 * ccl.h (struct ccl_program): New member quit_silently.
13094
130952008-04-05 Chong Yidong <cyd@stupidchicken.com>
13096
13097 * search.c (compile_pattern_1): Treat non-nil and non-string of
13098 search-spaces-regexp as nil.
13099
13100 * minibuf.c (Fassoc_string): Tweak docstring.
13101
131022008-04-05 Eli Zaretskii <eliz@gnu.org>
13103
13104 * dired.c (Ffile_attributes): Support inode numbers wider than 32
13105 bits. Remove ugly WINDOWSNT-specific kludge introduced on
13106 2008-03-14 to force inode be positive.
13107
13108 * w32.c (sys_chown, stat, fstat): Use S_* constants instead of
13109 _S_* ones, since we now use our own sys/stat.h.
13110 (stat, fstat): Don't mangle the inode number.
13111 (init_user_info): Don't restrict UID and GID to 0-60000 range.
13112
131132008-04-04 Stefan Monnier <monnier@iro.umontreal.ca>
13114
13115 * frame.h (struct frame): Give one more bit to `visible' since we use
13116 values larger than 1 to indicate obscured frames on ttys.
13117
13118 * keymap.c (Qkeymap_canonicalize): New var.
13119 (Fmap_keymap_internal): New fun.
13120 (describe_map): Use keymap-canonicalize.
13121
13122 * undo.c (last_boundary_buffer, last_boundary_position): New vars.
13123 (Fundo_boundary): Set them.
13124 (syms_of_undo): Initialize them.
13125 (record_point): Use them instead of last_point_position*.
13126 (last_undo_buffer): Change type.
13127
131282008-04-04 Jason Rumney <jasonr@gnu.org>
13129
13130 * w32font.c (w32font_text_extents): Use font's ascent and descent.
13131 (recompute_cached_metrics): Don't set ascent and descent per char.
13132
13133 * w32uniscribe.c (uniscribe_check_otf): Fix last change.
13134 (uniscribe_check_otf): Add GC protection before consing.
13135 Rearrange loop for counting features.
13136
131372008-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
13138
13139 * insdel.c (insert_from_buffer_1): Don't compare bytes in destination
13140 buffer with byte-size of source buffer.
13141
131422008-04-03 Chong Yidong <cyd@stupidchicken.com>
13143
13144 * callint.c (Fcall_interactively): Handle temporary region even
13145 when shift-select-mode is off.
13146
131472008-04-03 Jason Rumney <jasonr@gnu.org>
13148
13149 * w32uniscribe.c (uniscribe_check_otf): Sanity check otf_spec.
13150
131512008-04-03 Kenichi Handa <handa@m17n.org>
13152
13153 * coding.c (CATEGORY_MASK_ANY): Add CATEGORY_MASK_UTF_16_AUTO.
13154 (CATEGORY_MASK_UTF_16): Likewise.
13155 (detect_coding_utf_16): Add heuristics to reject utf-16 for a
13156 binary file.
13157 (detect_coding): Add null-byte detection for a binary file.
13158 (detect_coding_system): Likewise.
13159
131602008-04-03 Jason Rumney <jasonr@gnu.org>
13161
13162 * w32uniscribe.c: New file.
13163
13164 * font.h (uniscribe_font_driver) [WINDOWSNT]: Declare for w32fns.c.
13165
13166 * w32font.h (uniscribe_check_otf): Declare for w32font.c.
13167
13168 * w32font.c (Qbalinese, Qbuginese, Qbuhid, Qcuneiform, Qcypriot)
13169 (Qdeseret, Qglagolitic, Qgothic, Qhanunoo, Qkharoshthi)
13170 (Qlimbu, Qlinear_b, Qold_italic, Qold_persian, Qosmanya)
13171 (Qphags_pa, Qphoenician, Qshavian, Qsyloti_nagri)
13172 (Qtagalog, Qtagbanwa, Qtai_le, Qtifinagh, Qugaritic)
13173 (Qphonetic): New symbols.
13174 (syms_of_w32font): Initialize them.
13175 (font_supported_scripts): Use them.
13176 (w32font_list_family): List all charsets.
13177 (w32font_text_extents, recompute_cached_metrics): Fix metric
13178 calculations.
13179 (w32_enumfont_pattern_entity): Make full_type a DWORD.
13180 Give opentype fonts their own format.
13181 (font_matches_spec): New arguments backend and logfont.
13182 Handle :otf spec for uniscribe backend.
13183 (add_font_entity_to_list): Match truetype fonts in uniscribe backend.
13184 (fill_in_logfont): Use DEFAULT_CHARSET when charset not supplied.
13185
13186 * w32fns.c (Fx_create_frame): Conditionally register uniscribe
13187 font backend.
13188 (globals_of_w32fns): Initialize uniscribe font backend.
13189
13190 * makefile.w32-in (CONFIG_H): New variable. Use it to clean up
13191 dependencies.
13192 (w32uniscribe.$(O)): New file to build.
13193 (FONT_OBJ): Include w32uniscribe.$(O).
13194 (LIBS): Add uniscribe libraries.
13195
13196 * ftfont.c (ftfont_get_open_type_spec): Check spec->script, not val.
13197
131982008-04-02 Chong Yidong <cyd@stupidchicken.com>
13199
13200 * callint.c (Vshift_select_mode): New var.
13201 (Finteractive): Document new ^ spec.
13202 (Fcall_interactively): Call handle-shift-selection if the ^ spec
13203 is present.
13204
13205 * keyboard.c (Vthis_command_keys_shift_translated): New var.
13206 (command_loop_1): Avoid running the direct display versions of
13207 forward-char and backward-char if shift-selection may occur.
13208 (read_key_sequence): Set Vthis_command_keys_shift_translated if
13209 shift-translation takes place.
13210
13211 * buffer.c (Vtransient_mark_mode): Move docstring to simple.el to
13212 avoid clobbering by define-minor-mode.
13213
13214 * cmds.c (Fforward_char, Fbackward_char, Fforward_line)
13215 (Fbeginning_of_line, Fend_of_line): Add ^ interactive spec.
13216
13217 * syntax.c (Fforward_word): Add ^ interactive spec.
13218
13219 * window.c (Fscroll_up, Fscroll_down, Fscroll_left)
13220 (Fscroll_right): Add ^ interactive spec.
13221
132222008-04-01 Stefan Monnier <monnier@iro.umontreal.ca>
13223
13224 * xdisp.c (try_window_id): Don't forget to reset delta_bytes.
13225
13226 * casefiddle.c (casify_object): Fix up int/EMACS_INT mixup.
13227
13228 * charset.c (Funibyte_charset, Fset_unibyte_charset): Remove.
13229
132302008-03-31 Juri Linkov <juri@jurta.org>
13231
13232 * window.c (Fdisplay_buffer): Reinitialize `tem' to nil.
13233
132342008-03-30 Jan Djärv <jan.h.d@swipnet.se>
13235
13236 * gtkutil.c (xg_set_geometry): Fix indentation.
13237 (xg_resize_outer_widget): Remove.
13238 (x_wm_size_hint_off): Fix indentation.
13239 (xg_frame_set_char_size): Call flush_and_sync after
13240 gtk_window_resize.
13241 (x_wm_set_size_hint): Pass NULL as geometry window to
13242 gtk_window_set_geometry_hints due to Gtk+ bug nr 68668.
13243 Add menu bar and tool bar height to base height.
13244 (xg_update_frame_menubar, free_frame_menubar)
13245 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
13246 (update_frame_tool_bar, free_frame_tool_bar):
13247 Change xg_resize_outer_widget to xg_frame_set_char_size.
13248
132492008-03-30 Michael Albinus <michael.albinus@gmx.de>
13250
13251 * dbusbind.c (QCdbus_timeout): New D-Bus internal symbol.
13252 (Fdbus_call_method): New parameter TIMEOUT.
13253 (dbus-send-signal): Optimize UNGCPRO call.
13254
132552008-03-29 Juri Linkov <juri@jurta.org>
13256
13257 * window.c (Fdisplay_buffer): Move call to
13258 Vsplit_window_preferred_function out of conditions that check
13259 if window is eligible for vertical splitting.
13260 When Vsplit_window_preferred_function is non-nil, call it and use
13261 its non-nil return value as window. Otherwise, continue doing
13262 vertical splitting using Fsplit_window with arg horflag=nil.
13263 (syms_of_window) <Vsplit_window_preferred_function>: Change the
13264 default value from `split-window' to nil.
13265
132662008-03-29 Juri Linkov <juri@jurta.org>
13267
13268 * callint.c (Fcall_interactively): Revert 2008-03-16 change
13269 for interactive code letters 'b' and 'B'.
13270
132712008-03-29 Eli Zaretskii <eliz@gnu.org>
13272
13273 * fileio.c (Fexpand_file_name): Convert the value of $HOME to a
13274 multibyte string.
13275
132762008-03-29 Stefan Monnier <monnier@iro.umontreal.ca>
13277
13278 * keyboard.c (pending_funcalls): New var.
13279 (timer_check): Run it.
13280 (syms_of_keyboard): Initialize it.
13281 * terminal.c (Qrun_hook_with_args, Qdelete_terminal_functions)
13282 (Vdelete_terminal_functions): New vars.
13283 (syms_of_terminal): Initialize them.
13284 (Fdelete_terminal): Run delete-terminal-functions.
13285 * xdisp.c (safe_eval): Rewrite.
13286 (safe_call2): New fun.
13287 * frame.c (Qdelete_frame_functions): New var.
13288 (syms_of_frame): Initialize it.
13289 (Fdelete_frame): Use it and use safe_call2 and pending_funcalls.
13290 * lisp.h (safe_call2, pending_funcalls): Declare.
13291
132922008-03-28 Andreas Schwab <schwab@suse.de>
13293
13294 * indent.c (Fmove_to_column): Move declaration before statements.
13295
132962008-03-27 Stefan Monnier <monnier@iro.umontreal.ca>
13297
13298 * frame.h (enum fullscreen_type): Give it a name. Move it before use.
13299 (struct frame): Use bit fields for boolean vars.
13300
13301 * process.c (server_accept_connection): Simplify naming.
13302 (emacs_get_tty_pgrp): Use SDATA.
13303
13304 * coding.c (decode_coding_object): Fix last change.
13305
133062008-03-27 Jason Rumney <jasonr@gnu.org>
13307
13308 * w32fns.c (start_hourglass): Suppress hourglass on tty frames.
13309
133102008-03-27 Kenichi Handa <handa@ni.aist.go.jp>
13311
13312 * charset.c (Fdefine_charset_internal): Change the way of
13313 registering charsets in Vcharset_order_list.
13314 (syms_of_charset): Make the charset `eight-bit' supplementary.
13315
133162008-03-26 Alexandre Oliva <aoliva@redhat.com> (tiny change)
13317
13318 * regex.c (EXTEND_BUFFER): Change order of pointer addition
13319 operations, to avoid having the difference between pointers
13320 overflow.
13321
133222008-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
13323
13324 * indent.c (check_display_width): New fun.
13325 (scan_for_column): Use it.
13326
13327 * data.c (syms_of_data): Mark most-positive-fixnum and
13328 most-negative-fixnum as constants.
13329
13330 * xdisp.c (redisplay_internal): Reset selected_frame earlier.
13331
13332 * indent.c (scan_for_column): Extract from current_column_1.
13333 Merge with the same code from Fmove_to_column.
13334 (current_column_1, Fmove_to_column): Use it.
13335
133362008-03-25 Stefan Monnier <monnier@iro.umontreal.ca>
13337
13338 * keymap.c (map_keymap_internal): New fun.
13339 (map_keymap): Use it.
13340 (Fmap_keymap_internal): New fun.
13341 (Fmap_keymap): Remove left-out test from before make_save_value.
13342
13343 * keymap.c (Fmap_keymap): Use `map-keymap-sorted.
13344
13345 * frame.c (Fmodify_frame_parameters, x_set_frame_parameters):
13346 Use XCAR/XCDR.
13347
13348 * process.h (struct Lisp_Process): Remove filter_multibyte.
13349 * process.c (QCfilter_multibyte): Remove.
13350 (setup_process_coding_systems): Don't use filter_multibyte.
13351 (Fstart_process, Fmake_network_process): Don't set filter_multibyte.
13352 (read_process_output): Don't adjust multibyteness to filter_multibyte.
13353 (Fset_process_filter_multibyte): Change the coding-system to
13354 approximate the previous behavior.
13355 (Fprocess_filter_multibyte_p): Get the multibyteness straight from the
13356 coding-system.
13357
13358 * coding.c (decode_coding_object): When not decoding into a buffer,
13359 obey the coding system's preference of (uni|multi)byte.
13360
133612008-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
13362
13363 * casefiddle.c (casify_object): Avoid pathological N^2 worst case if
13364 every char is changed and has a different byte-length.
13365 (Fupcase_word, Fdowncase_word, Fcapitalize_word, operate_on_word):
13366 Fix int -> EMACS_INT.
13367
133682008-03-23 David Hansen <david.hansen@gmx.net>
13369
13370 * dbusbind.c (xd_read_message): Remove extra copying of message
13371 strings. Check for NULL `interface' or `member'.
13372
133732008-03-22 Eli Zaretskii <eliz@gnu.org>
13374
13375 * w32.c (readdir): If FindFirstFile/FindNextFile return in
13376 cFileName a file name that includes `?' characters, use the 8+3
13377 alias in cAlternateFileName instead.
13378
133792008-03-21 Stefan Monnier <monnier@iro.umontreal.ca>
13380
13381 * buffer.c (enlarge_buffer_text): Fix int -> EMACS_INT.
13382
133832008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
13384
13385 * intervals.c (temp_set_point, temp_set_point_both): Use EMACS_INT.
13386 (set_point, set_point_both): Use EMACS_INT. Remove `buffer' arg,
13387 work on current_buffer only instead (that was already the case
13388 for some of the code anyway).
13389 * buffer.h (set_point, set_point_both): Remove buffer arg, use long int.
13390 (temp_set_point, temp_set_point_both): Use EMACS_INT.
13391 (SET_PT, SET_PT_BOTH): Adjust.
13392 * intervals.h (set_point, temp_set_point, set_point_both)
13393 (temp_set_point_both): Remove redundant declarations.
13394
133952008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
13396
13397 * fileio.c (Finsert_file_contents):
13398 * lread.c (Feval_buffer): Use BUF_TEMP_SET_PT.
13399 * buffer.h (BUF_SET_PT): Remove. set_point_both doesn't work right
13400 when buffer != current_buffer anyway.
13401
134022008-03-20 Andreas Schwab <schwab@suse.de>
13403
13404 * callint.c (Fcall_interactively) [case 'B']: Use other-buffer
13405 as default.
13406
134072008-03-19 Jason Rumney <jasonr@gnu.org>
13408
13409 * w32fns.c (hourglass_timer, hourglass_hwnd): New variables.
13410 (syms_of_w32fns): Initialize them.
13411 (HOURGLASS_ID): New constant.
13412 (x_window_to_frame): Don't check hourglass_window.
13413 (w32_wnd_proc) <WM_TIMER>: Handle hourglass_timer.
13414 (w32_wnd_proc) <WM_EXITMENULOOP>: Set pending hourglass cursor.
13415 (w32_wnd_proc) <WM_SETCURSOR>: Set the hourglass or current cursor.
13416 (w32_wnd_proc) <WM_EMACS_SETCURSOR>: Set frame's current_cursor.
13417 Only change the cursor if hourglass is not active.
13418 (Fx_create_frame): Initialize frame's current_cursor.
13419 (hourglass_atimer): Remove.
13420 (hourglass_started): New function.
13421 (start_hourglass, cancel_hourglass, hide_hourglass): Adapt to w32.
13422 (show_hourglass): Adapt to w32, changing argument to frame.
13423
13424 * w32term.h (struct w32_output): Remove hourglass_window.
13425 Add current_cursor.
13426
13427 * eval.c (call_debugger, Fsignal):
13428 * keyboard.c (recursive_edit_1, cmd_error, Ftop_level)
13429 (command_loop_1, Fread_key_sequence, Fread_key_sequence_vector)
13430 (Fexecute_extended_command, cancel_hourglass_unwind):
13431 * minibuf.c (read_minibuf):
13432 * fns.c (Fy_or_n_p): Enable hourglass when HAVE_WINDOW_SYSTEM.
13433
134342008-03-19 Stefan Monnier <monnier@iro.umontreal.ca>
13435
13436 * window.c (run_funs): New fun.
13437 (run_window_configuration_change_hook): Use it to run the buffer-local
13438 and the global part of the hook.
13439
13440 * xdisp.c (format_mode_line_unwind_data): Add window argument.
13441 (unwind_format_mode_line): Restore selected window.
13442 (x_consider_frame_title, Fformat_mode_line): Set selected window.
13443
134442008-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
13445
13446 * editfns.c (Fchar_equal): Check they are valid characters.
13447
13448 * buffer.h (Fbuffer_list): Declare (for use in callint.c).
13449
134502008-03-17 Andreas Schwab <schwab@suse.de>
13451
13452 * regex.c (re_match_2_internal): Properly match raw 8-bit bytes
13453 against a charset.
13454
13455 * lisp.h (Fbuffer_list): Declare.
13456
134572008-03-17 Jan Djärv <jan.h.d@swipnet.se>
d6c952f8 13458
aac0c6e3
MR
13459 * gtkutil.c (free_frame_tool_bar): Only call gtk_container_remove if
13460 handlebox_widget is != 0.
13461
134622008-03-16 Juri Linkov <juri@jurta.org>
13463
13464 * callint.c (Fcall_interactively): For interactive code letters
13465 'b' and 'B' put the buffer list into the list of default "future"
13466 values of the minibuffer.
13467
134682008-03-16 Andreas Schwab <schwab@suse.de>
13469
13470 * keyboard.c (read_key_sequence): Fix downcasing of letters with
13471 modifiers.
13472
13473 * regex.c (re_match_2_internal): Correct matching of a charset
13474 against latin-1 characters.
13475
134762008-03-16 Kenichi Handa <handa@m17n.org>
13477
13478 * coding.c (CHAR_STRING_ADVANCE_NO_UNIFY)
13479 (STRING_CHAR_ADVANCE_NO_UNIFY): New macros.
13480 (coding_alloc_by_making_gap): Fix the way to preserve data in the gap.
13481 (alloc_destination): Fix the 2nd arg to coding_alloc_by_making_gap.
13482 (encode_coding_utf_8): Use CHAR_STRING_ADVANCE_NO_UNIFY instead of
13483 CHAR_STRING_ADVANCE.
13484 (produce_chars): Fix for the case that the source and the
13485 destination are the same buffer. Use CHAR_STRING_ADVANCE_NO_UNIFY
13486 instead of CHAR_STRING_ADVANCE.
13487 (consume_chars): Use STRING_CHAR_ADVANCE_NO_UNIFY instead of
13488 STRING_CHAR_ADVANCE.
13489
134902008-03-15 Andreas Schwab <schwab@suse.de>
13491
13492 * regex.c (re_match_2_internal): Correct matching of eight bit
13493 characters in unibyte strings.
13494
134952008-03-15 Martin Rudalics <rudalics@gmx.at>
13496
13497 * buffer.c (overlays_in, Foverlays_in): Include empty overlays
13498 at end of range when it coincides with the end of the buffer.
13499
135002008-03-14 Eli Zaretskii <eliz@gnu.org>
13501
13502 * dired.c (Ffile_attributes) [WINDOWSNT]: Force inode be positive.
13503
13504 * w32fns.c (globals_of_w32fns, Fx_create_frame): Fix last change.
13505
135062008-03-14 Jason Rumney <jasonr@gnu.org>
13507
13508 * editfns.c (initial_tz): New variable.
13509 (syms_of_editfns): Initialize it.
13510 (Fset_time_zone_rule): Set it when first called.
13511 Use it when TZSTRING is nil.
13512
13513 * w32fns.c (MONITOR_DEFAULT_TO_NEAREST, struct MONITOR_INFO)
13514 (MonitorFromPoint_Proc, GetMonitorInfo_Proc): New definitions.
13515 (monitor_from_point_fn, get_monitor_info_fn): New globals.
13516 (globals_of_w32fns): Initialize them.
13517 (compute_tip_xy): Use them to position tooltips.
13518
135192008-03-14 Glenn Morris <rgm@gnu.org>
13520
13521 * emacs.c (main): Revert previous change.
13522 (standard_args): Revert -internal-script back to -scriptload,
13523 and remove the long-option form.
13524
135252008-03-13 Glenn Morris <rgm@gnu.org>
13526
13527 * emacs.c (main, standard_args): Rename -scriptload to -internal-script.
13528 Remove option -enable-font-backend.
13529
135302008-03-12 Stefan Monnier <monnier@iro.umontreal.ca>
13531
13532 * buffer.c (Fswitch_to_buffer): Fall back on pop-to-buffer.
13533
135342008-03-11 Jan Djärv <jan.h.d@swipnet.se>
13535
13536 * xterm.c (x_connection_closed): For GTK: If this is the last
13537 terminal just exit without closing the display.
13538
135392008-03-11 Jason Rumney <jasonr@gnu.org>
13540
13541 * w32font.c (w32font_full_name): Use floor to round.
13542
f0131492 135432008-03-10 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
aac0c6e3
MR
13544
13545 * sound.c (alsa_configure): Declare vol at beginning of block.
13546
13547 * fontset.c (Ffontset_info): Remove extra semicolon.
13548
135492008-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
13550
13551 * fileio.c (Fsubstitute_in_file_name): Fix up computation of maximum
13552 size of resulting string.
13553
135542008-03-10 Jason Rumney <jasonr@gnu.org>
13555
13556 * dispnew.c (adjust_glyph_matrix): Initialize window_height.
13557
135582008-03-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13559
13560 * xdisp.c (handle_single_display_spec): Undo 2007-10-16 changes.
13561 Don't pretend as if characters with display property haven't been
13562 consumed for string-replacing-string case.
13563
135642008-03-08 Kim F. Storm <storm@cua.dk>
13565
13566 * xdisp.c (GET_NEXT_DISPLAY_ELEMENT): New macro.
13567 (get_next_display_element, next_element_from_string)
13568 (next_element_from_ellipsis, next_element_from_buffer): Use it.
13569
135702008-03-08 Andreas Schwab <schwab@suse.de>
13571
13572 * process.h (struct Lisp_Process): Declare bit fields as unsigned.
13573
135742008-03-06 Jason Rumney <jasonr@gnu.org>
13575
13576 * w32font.c (w32_registry): Take font_type argument. Use ANSI
13577 when charset not specified. Only translate ANSI to unicode when
13578 font_type is truetype.
13579 (w32font_coverage_ok): New function.
13580 (add_font_entity_to_list): Use it to filter unsuitable fonts.
13581
135822008-03-05 Kenichi Handa <handa@ni.aist.go.jp>
13583
13584 * lread.c (Fread_char): Resolve modifiers.
13585 (Fread_char_exclusive): Likewise.
13586
13587 * character.c (char_resolve_modifier_mask): New function.
13588 (char_string): Use char_resolve_modifier_mask.
13589 (Fchar_resolve_modifiers): New function.
13590 (syms_of_character): Declare Fchar_resolve_modifiers as Lisp
13591 function.
13592
135932008-03-04 Jason Rumney <jasonr@gnu.org>
13594
13595 * makefile.w32-in: Always include w32font.c in the build.
13596 * w32font.c: Wrap in USE_FONT_BACKEND conditional.
13597
135982008-03-04 Andreas Schwab <schwab@suse.de>
13599
13600 * Makefile.in (clean): Remove emacs-*.*.* instead of emacs-*.
13601 (versionclean): Likewise.
13602
136032008-03-04 Juanma Barranquero <lekktu@gmail.com>
13604
13605 * .cvsignore: Add oo.
13606
136072008-03-03 Andreas Schwab <schwab@suse.de>
13608
13609 * coding.c (decode_coding_object): Inhibit gap shrinking while
13610 decoding in place.
13611
136122008-03-03 Dan Nicolaescu <dann@ics.uci.edu>
13613
13614 * w32term.c: Remove unused include "gnu.h".
13615 * makefile.w32-in (w32term.o): Don't depend on gnu.h.
13616
13617 * gnu.h: Rename to ...
13618 * emacs-icon.h: ... this.
13619 * xterm.c: Use emacs-icon.h instead of gnu.h.
13620 * Makefile (xterm.o): Depend on emacs-icon.h, not gnu.h.
13621
136222008-03-03 Juanma Barranquero <lekktu@gmail.com>
13623
13624 * w32font.c: Include math.h.
13625
136262008-03-03 Jason Rumney <jasonr@gnu.org>
13627
13628 * w32font.c (recompute_cached_metrics): Change font arg to w32font_info.
13629 Compute options separately.
13630 (w32font_open_internal): Set glyph_idx before caching metrics.
13631
13632 * w32font.h (NTM_PS_OPENTYPE, NTM_TT_OPENTYPE, NTM_TYPE1):
13633 Define if system headers don't.
13634 (struct w32font_info): Enlarge ascii_metrics. Add glyph_idx.
13635 (w32font_encode_char): Don't declare here.
13636
13637 * w32font.c (Quniscribe, QCformat): New symbols.
13638 (syms_of_w32font): Define them.
13639 (w32font_has_char): Indicate uncertainty.
13640 (w32font_encode_char): Encode as glyph point. Make static.
13641 (recompute_cached_metrics): New function.
13642 (w32font_open_internal): Use it. Set font to use glyph points
13643 initially. Set format based on type of font.
13644 (w32font_text_extents, w32font_draw): Optionally use glyph points.
13645 (w32_enumfont_pattern_entity): Accept backend arg. Set type based
13646 on it. Set format based on information available here.
13647 (add_font_entity_to_list): Identify backend based on opentype_only.
13648
136492008-03-02 Andreas Schwab <schwab@suse.de>
13650
13651 * ftfont.c (ftfont_pattern_entity): Fix aliasing violations.
13652
13653 * coding.c (decode_coding_big5, produce_chars):
13654 Fix typos in last change.
13655
136562008-03-02 Kentaro Ohkouchi <nanasess@fsm.ne.jp>
13657
13658 * gnu.h: New icon.
13659
136602008-03-02 Kenichi Handa <handa@m17n.org>
13661
13662 * coding.c (decode_coding_utf_8): When eol-type of CODING is
13663 `dos', don't decode '\r' if that is the last in the source.
13664 (decode_coding_utf_16, decode_coding_emacs_mule)
13665 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
13666 (decode_coding_raw_text, decode_coding_charset): Likewise.
13667 (produce_chars): Don't decode EOL here. Use EMACS_INT.
13668
136692008-03-01 Jason Rumney <jasonr@gnu.org>
13670
13671 * w32font.c (w32font_full_name): Report point size for scalable fonts.
13672
136732008-03-01 Kim F. Storm <storm@cua.dk>
13674
13675 * dispextern.h (CHAR_GLYPH_SPACE_P): Check for default face.
13676
136772008-03-01 Jason Rumney <jasonr@gnu.org>
13678
13679 * w32font.c (w32font_full_name): New function.
13680 (w32font_open_internal): Use it.
13681
136822008-03-01 Kim F. Storm <storm@cua.dk>
13683
13684 * dispnew.c (line_draw_cost): Fix invalid glyph check.
13685
136862008-03-01 Jason Rumney <jasonr@gnu.org>
13687
13688 * font.c (font_unparse_fcname): Increase len when style is a symbol.
13689
136902008-03-01 Jan Djärv <jan.h.d@swipnet.se>
13691
13692 * xterm.c (handle_one_xevent): For Gtk+ and ConfigureNotify, call
13693 xg_frame_resized when the event is for the edit widget.
13694
13695 * gtkutil.h (xg_frame_resized): Renamed from xg_resize_widgets.
13696
13697 * gtkutil.c (xg_resize_outer_widget): Only do one of set_geometry or
13698 set_char_size.
13699 (xg_frame_resized): Renamed from xg_resize_widgets. Remove all
13700 operations on widgets here. Just set frame size if needed.
13701 (flush_and_sync, x_wm_size_hint_off, xg_pack_tool_bar): New functions.
13702 (xg_frame_set_char_size): Call x_wm_size_hint_off before resizing.
13703 (x_wm_set_size_hint): Set size hints on the edit widget only, not
13704 the whole frame.
13705 (xg_create_tool_bar): Move attachment of the tool bar to
13706 xg_pack_tool_bar. Do not attach the tool bar if there are no items.
13707 (free_frame_tool_bar): Remove call to SET_FRAME_GARBAGED.
13708
137092008-03-01 Jason Rumney <jasonr@gnu.org>
13710
13711 * w32fns.c (w32_msg_pump): Disable debug code.
13712
137132008-03-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13714
13715 * m/intel386.h [MAC_OSX || DARWIN]: Define NO_ARG_ARRAY if _LP64.
13716
137172008-02-29 Chong Yidong <cyd@stupidchicken.com>
13718
13719 * xdisp.c (next_overlay_string): Don't set
13720 overlay_strings_at_end_processed_p if we're currently reading from
13721 a display string.
13722
137232008-02-29 Stefan Monnier <monnier@iro.umontreal.ca>
13724
13725 * xdisp.c (get_overlay_strings_1): Fix typo.
13726
137272008-02-29 Chong Yidong <cyd@stupidchicken.com>
13728
13729 * xdisp.c (get_overlay_strings_1): Add missing argument type.
13730
137312008-02-28 Kenichi Handa <handa@ni.aist.go.jp>
13732
13733 * ftfont.c (ftfont_match): Explicitly set pixelsize in pattern.
13734
13735 * xdisp.c (display_mode_element): Cancel the previous change.
13736 (decode_mode_spec): Likewise.
13737 (handle_auto_composed_prop): Don't make composition if it->string
13738 is a string.
13739
137402008-02-27 Kim F. Storm <storm@cua.dk>
13741
13742 * lisp.h (GLYPH): Change type from int to struct with separate char
13743 and face_id members.
13744 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Delete macros.
13745 (GLYPH_CHAR, GLYPH_FACE): Remove slow versions with frame arg.
13746 (FAST_GLYPH_CHAR, FAST_GLYPH_FACE): Rename macros to ...
13747 (GLYPH_CHAR, GLYPH_FACE): ... these. Change users.
13748 (FAST_MAKE_GLYPH, MAKE_GLYPH): Remove. Rewrite users to use ...
13749 (SET_GLYPH, SET_GLYPH_CHAR, SET_GLYPH_FACE): ... these macros instead.
13750 (GLYPH_CODE_CHAR, GLYPH_CODE_FACE, GLYPH_CODE_P)
13751 (GLYPH_CODE_CHAR_VALID_P, SET_GLYPH_FROM_GLYPH_CODE): New macros to
13752 handle new Lisp glyph code encoding, either an integer or a cons.
13753
13754 * disptab.h (GLYPH_SIMPLE_P): Rewrite.
13755 (GLYPH_ALIAS): Delete.
13756 (GLYPH_ALIAS_P, GLYPH_FOLLOW_ALIASES): Rewrite.
13757 (GLYPH_LENGTH, GLYPH_STRING): Use GLYPH_CHAR.
13758 (GLYPH_FROM_CHAR): Replace macro by ...
13759 (SET_GLYPH_FROM_CHAR): ... this macro. Change users.
13760
13761 * dispextern.h (CHAR_GLYPH_SPACE_P): Simplify.
13762 (GLYPH_FROM_CHAR_GLYPH): Replace macro by ...
13763 (SET_GLYPH_FROM_CHAR_GLYPH): ... this macro. Change users.
13764 (GLYPH_INVALID_P): New macro.
13765 (spec_glyph_lookup_face): Update prototype.
13766
13767 * dispnew.c (line_draw_cost): Adapt to new glyph type.
13768 (build_frame_matrix_from_leaf_window): Adapt to new glyph type and
13769 new glyph code encoding.
13770 (spec_glyph_lookup_face): No return value; update passed glyph instead.
13771 (init_display): Use SET_CHAR_GLYPH to initialize space_glyph.
13772
13773 * xdisp.c (get_next_display_element, next_element_from_display_vector):
13774 Adapt to new glyph type and new glyph code encoding.
13775
13776 * term.c (encode_terminal_code, produce_special_glyphs): Likewise.
13777
13778 * indent.c (current_column, current_column_1, Fmove_to_column)
13779 (compute_motion): Adapt to new glyph code encoding.
13780
13781 * msdos.c (IT_write_glyphs): Adapt to new glyph type.
13782
137832008-02-27 Chong Yidong <cyd@stupidchicken.com>
13784
13785 * process.c (wait_reading_process_output): Check for window
13786 changes caused by timers.
13787 Suggested by Johan Bockgård.
13788
137892008-02-27 Glenn Morris <rgm@gnu.org>
13790
13791 * emacs.c (USAGE1): Add `--disable-font-backend'.
13792
137932008-02-27 Stefan Monnier <monnier@iro.umontreal.ca>
13794
13795 * fileio.c (Finsert_file_contents): Don't reset undo_list if no change
13796 is made to the buffer.
13797
137982008-02-26 Stefan Monnier <monnier@iro.umontreal.ca>
13799
13800 * dispextern.h (face_at_buffer_position, face_for_overlay_string)
13801 (face_at_string_position):
13802 * xfaces.c (face_at_buffer_position, face_for_overlay_string)
13803 (face_at_string_position):
13804 * xdisp.c (display_string, next_overlay_change):
13805 * buffer.h (overlays_at):
13806 * buffer.c (overlays_at): Use EMACS_INT for buffer positions.
13807 Update callers.
13808
138092008-02-26 Chong Yidong <cyd@stupidchicken.com>
13810
13811 * editfns.c (Fformat): Doc fix.
13812
138132008-02-26 Juanma Barranquero <lekktu@gmail.com>
13814
13815 * font.c (Ffont_spec, Ffont_at): Fix typos in docstrings.
13816 (Ffont_put, Flist_families, Ffont_fill_gstring, Ffont_drive_otf)
13817 (Ffont_otf_alternates, Fquery_font): Doc fixes.
13818
138192008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
13820
13821 * buffer.c (Fbuffer_swap_text): New function.
13822 (syms_of_buffer): Defsubr it.
13823
138242008-02-25 Chong Yidong <cyd@stupidchicken.com>
13825
13826 * keyboard.c (command_loop_1): Revert 2006-10-09 change.
13827
138282008-02-25 Jason Rumney <jasonr@gnu.org>
13829
13830 * w32font.c (w32font_draw): Draw one character at a time when padding.
13831
138322008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
13833
13834 * window.c (Fdelete_window, Fadjust_window_trailing_edge):
13835 Handle a nil arg. Use run_window_configuration_change_hook.
13836 (delete_window, adjust_window_trailing_edge): Don't handle nil any more.
13837 (Fenlarge_window, Fshrink_window, Fset_window_configuration):
13838 Use run_window_configuration_change_hook.
13839
138402008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
13841
13842 * xdisp.c (x_produce_glyphs): For a visible glyph, assure at least
13843 1-pixel width.
13844
138452008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
13846
13847 * xdisp.c (fill_glyph_string): Pay attention to glyph->padding_p.
13848 (append_glyph): Set glyph->pixel_width and glyph->padding_p to 1
13849 if the glyph in the font is zero pixel with.
13850
13851 * dispextern.h (struct glyph_string): New member padding_p.
13852
13853 * w32font.c (w32font_draw): Pay attention to s->padding_p.
13854
13855 * ftxfont.c (ftxfont_draw): Pay attention to s->padding_p.
13856
13857 * xfont.c (xfont_draw): Pay attention to s->padding_p.
13858
13859 * xftfont.c (xftfont_draw): Pay attention to s->padding_p.
13860
13861 * font.c: If the font driver doesn't have `shape' function, return Qnil.
13862
138632008-02-25 Jason Rumney <jasonr@gnu.org>
13864
13865 * w32fns.c (enum_font_cb2): Don't use raster fonts for Unicode.
13866
138672008-02-24 Stefan Monnier <monnier@iro.umontreal.ca>
13868
13869 Allow fine-grained image-cache flushing.
13870 * dispextern.h (struct image): Add `dependencies' field.
13871 (clear_image_caches): Change arg to Lisp_Object.
13872 * image.c (make_image): Initialize `dependencies' field.
13873 (clear_image_cache): Change arg to allow fine-grained flushing.
13874 Perform the flush even if image-cache-eviction-delay is nil.
13875 (clear_image_caches): Change arg to Lisp_Object.
13876 (Fclear_image_cache): Expand meaning of the argument.
13877 (mark_image): Mark `dependencies' field.
13878 * xfaces.c (clear_face_cache): Adapt arg to call to clear_image_caches.
13879 (lface_hash): Use XHASH rather than XFASTINT.
13880 (face_at_buffer_position): Fix int -> EMACS_INT position.
13881 * xdisp.c (next_overlay_change): Fix int -> EMACS_INT position.
13882 (select_frame_for_redisplay): Remove code duplication.
13883 (redisplay_internal): Adapt arg to call to clear_image_caches.
13884
138852008-02-24 Dan Nicolaescu <dann@ics.uci.edu>
13886
13887 * s/vms4-0.h:
13888 * s/vms4-2.h:
13889 * s/vms4-4.h:
13890 * s/vms5-5.h: Remove, unused.
13891
13892 * s/irix5-2.h:
13893 * s/irix6-0.h:
13894 * s/riscos5.h:
13895 * s/mach-bsd4-3.h:
13896 * m/mips4.h: Remove files for obsolete systems.
13897
13898 * Makefile.in:
13899 * filelock.c:
13900 * unexmips.c:
13901 * m/hp9000s300.h:
13902 * m/iris4d.h:
13903 * s/aix3-1.h:
13904 * s/hpux.h:
13905 * s/msdos.h:
13906 * s/usg5-0.h:
13907 * s/usg5-2-2.h:
13908 * s/usg5-2.h:
13909 * s/usg5-3.h: Remove references to obsolete variables.
13910
13911 * s/irix5-0.h: Remove, move all the contents ...
13912 * s/irix6-5.h: ... here. Simplify.
13913 * config.in: Regenerate.
13914
139152008-02-24 Jason Rumney <jasonr@gnu.org>
13916
13917 * w32term.c (x_draw_glyph_string_background): Clear the background
13918 manually when cleartype is in use.
13919 (x_draw_glyph_string_foreground): Draw text transparently when
13920 cleartype is in use.
13921
13922 * w32font.c (w32font_text_extents): Avoid getting HDC and selecting
13923 a font into it unless we have to.
13924
139252008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
13926
13927 * intervals.h (INT_LISPLIKE): Remove. It may misfire.
13928 (NULL_INTERVAL_P, SET_INTERVAL_PARENT): Don't use it.
d6c952f8 13929
aac0c6e3
MR
139302008-02-18 Jason Rumney <jasonr@gnu.org>
13931
13932 * w32fns.c (Fw32_shell_execute): Encode parameters.
13933
139342008-02-09 Eli Zaretskii <eliz@gnu.org>
13935
13936 * fileio.c (syms_of_fileio) <insert-default-directory>: Doc fix.
13937
139382008-02-05 Juanma Barranquero <lekktu@gmail.com>
13939
13940 * unexhp9k800.c (read_header): Replace `legal' with `valid'.
13941
139422008-02-24 Ulrich Neumerkel <ulrich@complang.tuwien.ac.at> (tiny change)
13943
13944 * xterm.c (x_set_offset): Don't change the gravity if
13945 CHANGE_GRAVITY is -1.
13946
139472008-02-23 Chong Yidong <cyd@stupidchicken.com>
13948
13949 * fileio.c (auto_save_error_occurred): New var.
13950 (auto_save_error): Set it.
13951 (Fdo_auto_save): Don't overwrite the error message if an auto-save
13952 error occurred.
13953
139542008-02-23 Eli Zaretskii <eliz@gnu.org>
13955
13956 * w32.c (globals_of_w32): Add initializations for
13957 g_b_init_get_sid_sub_authority and
13958 g_b_init_get_sid_sub_authority_count.
13959
139602008-02-22 Stefan Monnier <monnier@iro.umontreal.ca>
13961
13962 * font.c (font_match_xlfd, font_check_xlfd_parse): New funs.
13963 (font_parse_xlfd): Use them for sanity check.
13964 (Finternal_set_font_style_table): Make sure the table is bijective.
13965
13966 Consolidate the image_cache to the terminal struct.
13967 * termhooks.h (P_): Remove redundant def.
13968 (struct terminal): New field `image_cache'.
13969 * frame.h (FRAME_IMAGE_CACHE): New macro. Use it everywhere in place
13970 of FRAME_X_IMAGE_CACHE.
13971 * xterm.h (struct x_display_info): Remove image_cache field.
13972 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
13973 * w32term.h (struct w32_display_info): Remove image_cache field.
13974 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
13975 * macterm.h (struct mac_display_info): Remove image_cache field.
13976 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
13977 * xterm.c (x_term_init):
13978 * w32term.c (w32_term_init):
13979 * macterm.c (mac_term_init): Set the image_cache in the terminal.
13980 * dispextern.h (clear_image_cache, forall_images_in_image_cache):
13981 Remove declarations.
13982 (clear_image_caches, mark_image_cache): New declarations.
13983 * xfaces.c (clear_face_cache):
13984 * xdisp.c (redisplay_internal): Use clear_image_caches.
13985 * image.c (clear_image_cache): Don't check that a frame is on
13986 a window-system before checking if it shares the same cache.
13987 (clear_image_caches): New function.
13988 (Fclear_image_cache): Use it.
13989 (mark_image): Move from allo.c.
13990 (mark_image_cache): Move from alloc.c and forall_images_in_image_cache.
13991 * alloc.c (mark_image, mark_image_cache): Move to image.c.
13992 (mark_object): Don't call mark_image_cache for frames.
13993 (mark_terminals): Call mark_image_cache.
13994
13995 * lisp.h (Fdelete_terminal): Declare.
13996
13997 * charset.h (CHECK_CHARSET, CHECK_CHARSET_GET_ID)
13998 (CHECK_CHARSET_GET_ATTR): Don't use the inexistent return value of
13999 wrong_type_argument.
14000
140012008-02-22 Kenichi Handa <handa@ni.aist.go.jp>
14002
14003 * Makefile.in (lisp): Remove devanagari.el, kannada.el,
14004 malayalam.el, and tamil.el. Add sinhala.el.
14005
140062008-02-21 Stefan Monnier <monnier@iro.umontreal.ca>
14007
14008 * xterm.c (x_connection_closed): Consolidate identical tests.
14009 (x_delete_terminal): Don't crash if called via x_connection_closed.
14010
140112008-02-21 Kenichi Handa <handa@ni.aist.go.jp>
14012
14013 * xdisp.c (decode_mode_spec): New arg string.
14014 (display_mode_element): Adjust for the above change.
14015
140162008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
14017
14018 * callint.c (Fcall_interactively): Use AREF.
14019
140202008-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
14021
14022 * font.c (font_unparse_xlfd): Don't ignore integer pixel size specs.
14023
140242008-02-18 Jan Djärv <jan.h.d@swipnet.se>
14025
14026 * xfns.c (Fx_show_tip): Set string to " " if empty.
14027
140282008-02-17 Dan Nicolaescu <dann@ics.uci.edu>
14029
14030 * callint.c (syms_of_callint): Initialize Vmark_even_if_inactive
14031 with Qt.
14032
140332008-02-17 Kenichi Handa <handa@m17n.org>
14034
14035 * ftfont.c (ftfont_shape): Return Lispy number.
14036
14037 * xfaces.c (prepare_face_for_display): Use display_info->font->fid
14038 for GCs.
14039 (Finternal_set_font_selection_order): Call font_update_sort_order
14040 only when enable_font_backend is set.
14041 (realize_x_face): Set face->font_info to that of default face only
14042 when enable_font_backend is set.
14043
14044 * xdisp.c (handle_composition_prop): Set it->c to the fist
14045 character of the composed region.
14046 (fill_composite_glyph_string): Set base_face->font_info to
14047 s->font_info. Get a face for ascii from base_face->ascii_face.
14048 (BUILD_COMPOSITE_GLYPH_STRING): Call fill_composite_glyph_string
14049 with a face already decided.
14050 (x_produce_glyphs): Be sure to set it->ascent and it->descent to
14051 non-negative.
14052 (x_produce_glyphs): If the composition method is ..._WITH_GLYPH_STRING,
14053 call font_prepare_composition unconditionally.
14054
14055 * xfns.c (x_make_gc): Use the default font id of the frame for GCs.
14056
14057 * xterm.h (struct x_display_info): New member font.
14058
14059 * xterm.c (x_set_cursor_gc): Use display_info->font->fid for GCs.
14060 (x_set_mouse_face_gc, x_new_font): Likewise.
14061 (x_term_init): Setup display_info->font.
14062 (x_delete_terminal): Free display_info->font.
14063
14064 * xfont.c (xfont_draw): Use BLOCK_INPUT and UNBLOCK_INPUT.
14065
14066 * ftxfont.c (ftxfont_default_fid): Delete it.
14067 (ftxfont_open): Set xfont->fid to 0.
14068 (ftxfont_end_for_frame): Clear data specific to the frame and the
14069 font-driver.
14070
14071 * xftfont.c (xftfont_default_fid): Delete it.
14072 (xftfont_open): Set xfont->fid to 0.
14073
14074 * fontset.c (FONTSET_OBJLIST): New macro.
14075 (fontset_find_font): Update font-object list of the fontset.
14076 (free_realized_fontset): New function.
14077 (free_face_fontset): Call free_realized_fontset.
14078 (Ffont_info): Call font_close_object only when enable_font_backend
14079 is set.
14080
14081 * font.c [HAVE_X_WINDOWS]: Include xterm.h.
14082 [HAVE_NTGUI]: Include w32term.h.
14083 [MAC_OS]: Include macterm.ch.
14084 (font_otf_ValueRecord): Use make_number.
14085 (font_finish_cache): Fix handling of reference count.
14086 (font_clear_cache): Update num_fonts.
14087 (font_open_entity): Update smallest_char_width and
14088 smallest_font_height of the frame.
14089 (font_close_object): Update num_fonts.
14090 (Fclear_font_cache): Fix finding the target cache data.
14091
140922008-02-16 Glenn Morris <rgm@gnu.org>
14093
14094 * fontset.c (Finternal_char_font): Fix compilation warning.
14095
140962008-02-16 Eli Zaretskii <eliz@gnu.org>
14097
14098 * w32.c (init_user_info): Use TOKEN_USER and TOKEN_PRIMARY_GROUP
14099 instead of char arrays. Enlarge the size of array passed to
14100 get_token_information.
14101
14102 * font.c (Ffont_fill_gstring, Fget_font_glyphs): Fix compilation
14103 warnings.
14104
141052008-02-15 Dan Nicolaescu <dann@ics.uci.edu>
14106
14107 * .gdbinit: Don't set `args', it breaks gdb --args.
14108
141092008-02-14 Stefan Monnier <monnier@iro.umontreal.ca>
14110
14111 * fileio.c (Finsert_file_contents): Adjust offsets when replacing
14112 within a narrowed buffer.
14113
141142008-02-14 Kenichi Handa <handa@ni.aist.go.jp>
14115
14116 * coding.c (decode_coding_object, encode_coding_object):
14117 Preserve Vdeactivate_mark. Delete unnecessary call of Fcurrent_buffer.
14118
141192008-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
14120
14121 * coding.c (coding_set_destination): Use BEG_BYTE rather than
14122 hardcoding 1.
14123 (detect_coding_system):
14124 * lisp.h (detect_coding_system, chars_in_text, multibyte_chars_in_text)
14125 (string_char_to_byte, string_byte_to_char, insert_from_gap):
14126 * insdel.c (insert_from_gap):
14127 * fns.c (string_char_byte_cache_charpos, string_char_byte_cache_bytepos)
14128 (string_char_to_byte, string_byte_to_char, string_make_multibyte)
14129 (string_to_multibyte):
14130 * character.c (chars_in_text, multibyte_chars_in_text):
14131 * fileio.c (Finsert_file_contents): Use EMACS_INT for buffer positions.
14132
14133 * character.h (FETCH_STRING_CHAR_ADVANCE)
14134 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE)
14135 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA and SREF.
14136 (DEC_POS, BUF_DEC_POS): Use BEG_BYTE rather than hardcoding 1.
14137
14138 * casefiddle.c (casify_region): Only call after-change and composition
14139 functions on the part of the region that was changed.
14140
14141 * keyboard.c (read_avail_input):
14142 * frame.c (Fdelete_frame): Call Fdelete_terminal.
14143
141442008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
14145
14146 * buffer.c (clone_per_buffer_values, reset_buffer_local_variables)
14147 (Fbuffer_local_value, Fbuffer_local_variables): Don't forget undo_list.
14148
141492008-02-11 Juanma Barranquero <lekktu@gmail.com>
14150
14151 * w32menu.c (push_submenu_start, push_submenu_end)
14152 (push_left_right_boundary, push_menu_pane, push_menu_item):
14153 * keyboard.c (read_key_sequence): Don't pass args with side effects
14154 to AREF, it fails when compiling with -DENABLE_CHECKING.
14155
141562008-02-11 Kenichi Handa <handa@ni.aist.go.jp>
14157
14158 * Makefile.in (${lispsource}international/charprop.el):
14159 Delete this target.
14160
14161 * search.c (boyer_moore): Fix incorrect synching of the trunk and
14162 emacs-unicode-2.
14163
141642008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
14165
14166 * terminal.c (Fdelete_terminal): Clean up the `force' path.
14167
141682008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
14169
14170 * frame.c (Qnoelisp): New symbol.
14171 (syms_of_frame): Initialize it.
14172 (Fdelete_frame): Use it to distinguish a mere `force' passed from some
14173 harmless Elisp code, from a strong `force' from x_connection_closed.
14174 * frame.h (Qnoelisp): Declare.
14175 * xterm.c (x_connection_closed): Pass `noelisp'.
14176
14177 * lisp.h (struct Lisp_Misc_Any, struct Lisp_Marker)
14178 (struct Lisp_Overlay, struct Lisp_Kboard_Objfwd)
14179 (struct Lisp_Save_Value, struct Lisp_Free): Use enum Lisp_Misc_Type
14180 rather than `int' for the type of `type'.
14181
141822008-02-10 Dan Nicolaescu <dann@ics.uci.edu>
14183
14184 * s/gnu-linux.h: Remove support for non-ELF and linux-1.x.
14185
14186 * Makefile.in (GNUC): Remove support for gcc-1.x.
14187
141882008-02-10 Richard Stallman <rms@gnu.org>
14189
14190 * lisp.h (ASET): Use AREF, not ASLOT.
14191
141922008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
14193
14194 * lisp.h (ASET): Check bounds.
14195
141962008-02-10 Glenn Morris <rgm@gnu.org>
14197
14198 * buffer.c (mode-name): Doc fix.
14199
142002008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
14201
14202 * Makefile.in:
14203 * emacs.c:
14204 * gmalloc.c:
14205 * keyboard.c:
14206 * lisp.h:
14207 * m/ibm370aix.h:
14208 * process.c:
14209 * regex.c:
14210 * s/hpux.h:
14211 * sysdep.c:
14212 * sysselect.h:
14213 * systty.h:
14214 * unexec.c:
14215 * w32term.c:
14216 * xsmfns.c:
14217 * xterm.c: Remove code that deals with obsolete variables.
14218
14219 * s/msdos.h (DONT_NEED_ENVIRON): Don't define.
14220
14221 * ecrt0.c: Replace the DONT_NEED_ENVIRON test with MSDOS test,
14222 nothing else needs it anymore.
14223
142242008-02-09 Eli Zaretskii <eliz@gnu.org>
14225
14226 * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use unibyte_to_multibyte_table
14227 instead of unibyte_char_to_multibyte.
14228
142292008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
14230
14231 * s/gnu-linux.h: Remove commented out code.
14232
14233 * unexec.c: Remove references to obsolete variable COFF_ENCAPSULATE.
14234
14235 * Makefile.in: Update what RMS says about using autoconf.
14236 (C_COMPILER, COFF_ENCAPSULATE, MAKE_PARALLEL): Remove obsolete variable.
14237 (C_SWITCH_MACHINE_1, C_SWITCH_SYSTEM_1, C_SWITCH_SITE_1)
14238 (C_SWITCH_X_SITE_1, C_SWITCH_X_MACHINE_1)
14239 (C_SWITCH_X_SYSTEM_1): Move invariant code outside conditional.
14240
142412008-02-08 Stefan Monnier <monnier@iro.umontreal.ca>
14242
14243 * keymap.c (Fkey_description): Move side effect outside of macro call.
14244
14245 * xfaces.c (Finternal_make_lisp_face):
14246 * keyboard.c (add_command_key, parse_menu_item): Use ASET.
14247
14248 * fontset.c (free_face_fontset): Use FONTSET_FROM_ID.
14249 (syms_of_fontset): Use ASET.
14250
14251 * fns.c (concat): Move side effect outside of macro call.
14252 (hash_clear): Use ASET.
14253
142542008-02-08 Richard Stallman <rms@gnu.org>
14255
14256 * frame.c (Fdelete_frame): If FORCE, don't call hooks.
14257 If FORCE, and frame has a surrogate minibuffer for another frame,
14258 delete the other frame first.
14259
142602008-02-07 Timo Savola <timo.savola@iki.fi>
14261
14262 * xterm.c (x_detect_focus_change): Handle embed client message.
14263 (handle_one_xevent): Ditto.
14264 (handle_one_xevent): If embedded and we get a button press/release,
14265 request focus.
14266 (xembed_set_info, xembed_send_message): New functions.
14267 (x_make_frame_visible): Call xembed_set_info if embedded.
14268 (x_make_frame_invisible): Call xembed_set_info if embedded.
14269 (x_term_init): Initialize Xatom_XEMBED.
14270 (x_make_frame_visible): Check for FRAME_X_EMBEDDED_P also.
14271 (x_iconify_frame): Ditto.
14272
14273 * xterm.h (struct x_display_info): Add AtomXatom_XEMBED.
14274 (enum xembed_info, enum xembed_message, enum xembed_focus)
14275 (enum xembed_modifier, enum xembed_accelerator): New.
14276 (xembed_set_info, xembed_send_message): Declare.
14277 (FRAME_X_EMBEDDED_P): New.
14278
14279 * gtkutil.c (xg_create_frame_widgets): If frame is embedded, call
14280 gtk_plug_new.
14281
14282 * xfns.c (Fx_create_frame): Do not override the explicitly set parent
14283 window ID of a frame.
14284 (x_window): Reparent frame if embedded.
14285 (Fx_create_frame): Don't set border width if embedded.
14286
14287 * emacs.c (USAGE3): Add --parent-id.
14288 (standard_args): Ditto.
14289
142902008-02-07 Jan Djärv <jan.h.d@swipnet.se>
14291
14292 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): Use "do...while (0)".
14293
142942008-02-07 Jim Meyering <meyering@redhat.com>
14295
14296 Use "do...while (0)", not "if (1)...else" in macro definitions.
14297 The latter provokes a warning from gcc about the empty else, when
14298 followed by ";". Also, without that trailing semicolon, it would
14299 silently swallow up any following statement.
14300 * syntax.h (SETUP_SYNTAX_TABLE)
14301 (SETUP_SYNTAX_TABLE_FOR_OBJECT): Likewise.
14302 * buffer.h (DECODE_POSITION): Likewise.
14303 * character.h (FETCH_STRING_CHAR_ADVANCE): Likewise.
14304 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): Likewise.
14305 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Likewise.
14306 (FETCH_CHAR_ADVANCE): Likewise.
14307 (FETCH_CHAR_ADVANCE_NO_CHECK): Likewise.
14308
143092008-02-07 Jim Meyering <meyering@redhat.com>
14310
14311 * lread.c [lint]: Don't include <sys/inode.h>.
14312
143132008-02-07 Stefan Monnier <monnier@iro.umontreal.ca>
14314
14315 * xselect.c (x_handle_dnd_message):
14316 * xmenu.c (digest_single_submenu, xmenu_show):
14317 * xdisp.c (with_echo_area_buffer_unwind_data)
14318 (format_mode_line_unwind_data, unwind_format_mode_line)
14319 (display_menu_bar):
14320 * eval.c (Ffetch_bytecode):
14321 * doc.c (store_function_docstring):
14322 * ccl.c (resolve_symbol_ccl_program, ccl_get_compiled_code)
14323 (Fccl_execute, Fccl_execute_on_string, Fregister_code_conversion_map):
14324 * buffer.c (add_overlay_mod_hooklist): Use ASET.
14325
143262008-02-07 Kenichi Handa <handa@m17n.org>
14327
14328 * ftxfont.c (ftxfont_open): Don't set
14329 dpyinfo->smallest_font_height and dpyinfo->smallest_char_width to 0.
14330
14331 * ftfont.c (ftfont_open): Fix previous change.
14332
143332008-02-06 Jason Rumney <jasonr@gnu.org>
14334
14335 * w32font.c (w32font_text_extents): Fill in lbearing metric.
14336 Use cached metrics for ASCII characters.
14337 (w32font_open_internal): Don't set font's owning_frame.
14338 Cache metrics for ASCII characters.
14339
14340 * w32font.h (struct w32font_info): Add ascii_metrics.
14341 Remove owning_frame.
14342
143432008-02-06 Kenichi Handa <handa@ni.aist.go.jp>
14344
14345 * xdisp.c (x_produce_glyphs): Don't set it->ascent and it->descent
14346 to negative value.
14347
14348 * ftxfont.c (ftxfont_draw): Use s->font_info, not face->font_info.
14349
14350 * ftfont.c (ftfont_open): Fix calculation of font->font.average_width.
14351
14352 * charset.c (syms_of_charset): Set QCtest and Qeq.
14353
143542008-02-06 Stefan Monnier <monnier@iro.umontreal.ca>
14355
14356 * process.c (Fstart_process):
14357 * callproc.c (Fcall_process): Handle the case where
14358 Funhandled_file_name_directory returns nil.
14359
14360 * font.h (enum lgstring_indices, enum lglyph_indices): New enums.
14361 (LGSTRING_SLOT, LGSTRING_SET_SLOT): New macros.
14362 * font.c (check_gstring): Use them and AREF to access the vector before
14363 we know it's really a gstring.
14364 (Ffont_shape_text): Fix typo.
46e722a9 14365 (Ffont_shape_text, Ffont_otf_alternates): Fix up int/Lisp_Object mixups.
aac0c6e3
MR
14366
14367 * composite.h (Fcompose_region_internal, Fcompose_string_internal):
14368 Declare.
14369
14370 * chartab.c (make_sub_char_table): Remove noop-yet-incorrect statement.
14371
143722008-02-05 Jason Rumney <jasonr@gnu.org>
14373
14374 * w32font.c (w32font_open_internal): Fill min_width with tmAveCharWidth.
14375 Set smallest_font_height and smallest_char_width in display info.
14376
143772008-02-05 Kenichi Handa <handa@ni.aist.go.jp>
14378
14379 * coding.c (decode_eol): Pay attention to coding->dst_multibyte.
14380
143812008-02-05 Miles Bader <miles@gnu.org>
14382
14383 * xfaces.c (get_lface_attributes, merge_named_face)
14384 (lookup_named_face, lookup_derived_face, realize_named_face):
14385 Revert 2008-02-01 change by cyd@stupidchicken.com.
14386
143872008-02-04 Kenichi Handa <handa@ni.aist.go.jp>
14388
14389 * fontset.c (Ffontset_info): Handle the case of inhibitting the
14390 fallback fonts.
14391 (Ffontset_info) [USE_FONT_BACKEND]: Fix getting of opened font names.
14392
143932008-02-04 Jason Rumney <jasonr@gnu.org>
14394
14395 * w32font.c (w32font_open_internal): Use font_unparse_fcname to
14396 set full_name.
14397 (w32font_open_internal): Use xmalloc, xrealloc, xfree.
14398
143992008-02-03 Jason Rumney <jasonr@gnu.org>
14400
14401 * makefile.w32-in (OBJ1): Include font.o here.
14402 (FONTOBJ) [USE_FONTBACKEND]: Instead of here.
14403
144042008-02-02 Jason Rumney <jasonr@gnu.org>
14405
14406 * makefile.w32-in (temacs): Bump EMHEAP to 21.
14407
144082008-02-01 Jason Rumney <jasonr@gnu.org>
14409
14410 * s/cygwin.h: Define VIRT_ADDR_VARIES.
14411
14412 * puresize.h [VIRT_ADDR_VARIES]: Don't include CYGWIN in condition.
14413
144142008-02-01 Andreas Schwab <schwab@suse.de>
14415
14416 * Makefile.in (shortlisp, lisp): Update for rename of
14417 ../lisp/language/myanmar.el.
14418
144192008-02-01 Chong Yidong <cyd@stupidchicken.com>
14420
14421 * xfaces.c (get_lface_attributes): Delete function.
14422 (merge_named_face, lookup_named_face, lookup_derived_face)
14423 (realize_named_face): Call lface_from_face_name directly, and use
14424 the fact that merge_face_vectors does not alter its FROM argument.
14425
144262008-02-01 Jason Rumney <jasonr@gnu.org>
14427
14428 * w32term.c (w32_read_socket) <WM_CHAR>: Decode non-Unicode
14429 input in the default locale. Handle non-Unicode multibyte input.
14430
144312008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14432
14433 * fontset.c (reorder_font_vector): Exclude nil elements from the
14434 font group. Don't try multiple fonts.
14435 (fontset_font): Adjust for the above change.
14436 (Finternal_char_font): Return nil if the found font doesn't
14437 contain the character ch.
14438
14439 * Makefile.in (lisp, shortlisp): Add cham.el.
14440
144412008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14442
14443 * font.h (FONTP): Make it return 1 also for a font-object.
14444
14445 * .gdbinit (xfontset): New function.
14446
14447 * font.c (font_find_for_lface): Check if the character C is
14448 supported or not only for the first font.
14449
14450 * fontset.c (reorder_font_vector): Fix typo.
14451 (fontset_find_font): Don't add a font-spec specifying a script.
14452 Use 0 (not Qt) for the indication of empty font-group. Change the
14453 format of RFONT-DEF. Return Qt if no font in the font-group
14454 support the character.
14455 (fontset_font): Adjust for the above change. If no font was
14456 found the character, remember that.
14457 (face_for_char): Adjust for the change of RFONT-DEF.
14458 (Fset_fontset_font): Allow nil for FONT-SPEC to explicitly specify
14459 no font for the target.
14460 (Finternal_char_font): Adjust for the change of RFONT-DEF.
14461
144622008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14463
14464 * font.c (font_load_for_face): Handle the case that the font in
14465 face->lface is a string.
14466
144672008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14468
14469 * xfaces.c (set_lface_from_font_and_fontset): Set the fontname in lface.
14470
144712008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14472
14473 * xfaces.c (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]:
14474 Fix previous change. If the frame is not on a window system,
14475 signal an error.
14476
144772008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14478
14479 * coding.c (decode_coding_object, encode_coding_object): Adjust
14480 marker positions after conversion.
14481
14482 * lisp.h (struct Lisp_Marker): New member need_adjustment.
14483
144842008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14485
14486 * font.c (font_find_for_lface): Fix the handling of the return
14487 value of font_has_char.
14488 (Ffont_shape_text): Fix previous change.
14489
14490 * fontset.c (FONTSET_REF_AND_RANGE): Delete it.
14491 (fontset_ref_and_range): Delete it.
14492 (fontset_find_font): Call char_table_ref_and_range instead of
14493 FONTSET_REF_AND_RANGE.
14494 (make_fontset): Don't setup font groups of Latin here.
14495 (Fset_fontset_font): Don't overwrite the setting of FONTSET_ASCII.
14496 (new_fontset_from_font): Make the specified font the default for
14497 all Latin characters.
14498
144992008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14500
14501 * xfaces.c (Finternal_set_lisp_face_attribute): Check if the frame
14502 is on a window system before accessing the fontset of the frame.
14503
145042008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14505
14506 * Makefile.in (lisp, shortlisp): Add kherm.el and myanmar.el.
14507
14508 * ftfont.c (ftfont_driver): Set ftfont_shape in ftfont_driver only
14509 when both HAVE_M17N_FLT and HAVE_LIBOTF are defined.
14510
14511 * font.c (Ffont_shape_text): If the font driver doesn't have a
14512 shaper function, make zero-width glyphs to have at least one-pixel
14513 width. Fix setting of `to' field of glyphs.
14514
145152008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14516
14517 * ftfont.c (ftfont_drive_otf): Fix setting of FROM and TO slots of
14518 glyphs.
14519
14520 * font.h (struct font_driver): Improve docstring of member `shape'.
14521
145222008-02-01 Kenichi Handa <handa@m17n.org>
14523
14524 * composite.c (syms_of_composite): Fix docstring of
14525 auto-composition-function.
14526
14527 * font.h (LGLYPH_SIZE): New macro.
14528
14529 * font.c (Ffont_fill_gstring): Stop filling when a character not
14530 supported by the font is found.
14531 (Ffont_shape_text): When a shape callback function returns nil,
14532 try at most two more times with larger gstring.
14533 (Ffont_at): Fix getting of w. Call font_at with correct 5th argument.
14534
14535 * xdisp.c (handle_auto_composed_prop): Change the argument to
14536 auto-composition-function.
14537
14538 * ftfont.c (ftfont_encode_char): Use the macro FONT_INVALID_CODE.
14539 (ftfont_shape_by_flt): If an element of lgstring is nil, make a
14540 Lispy glyph and store it in the lgstring.
14541
14542 * xfont.c (xfont_encode_char): Use the macro FONT_INVALID_CODE.
14543
14544 * xftfont.c (xftfont_encode_char): Use the macro FONT_INVALID_CODE.
14545
145462008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14547
14548 * font.c (Ffont_shape_text): Avoid unnecessary composition.
14549
14550 * fontset.c (Vfont_encoding_charset_alist): New variable.
14551 (syms_of_fontset): DEFVAR it.
14552 (reorder_font_vector, fontset_find_font): Optimize for the case of
14553 no need of reordering.
14554 (face_for_char): Map the charset property by
14555 Vfont_encoding_charset_alist.
14556
145572008-02-01 Jason Rumney <jasonr@gnu.org>
14558
14559 * w32font.c (logfonts_match): Don't check adstyle here.
14560 (font_matches_spec): Check here against physical font instead.
14561 (add_font_entity_to_list): Avoid some substitutions.
14562
14563 * font.c (font_parse_fcname): Default weight and slant to normal.
14564 (font_score): Prefer normal fonts if weight or slant unspecified.
14565 (font_score) [WINDOWSNT]: Scale weight difference down to closer
14566 match freetype scores.
14567
145682008-02-01 Jason Rumney <jasonr@gnu.org>
14569
14570 * w32font.c (w32font_text_extents): Don't use the frame stored in the
14571 font, as it may have been deleted.
14572 (w32_enumfont_pattern_entity): Map generic family to adstyle using
14573 most common hyphenless variation.
14574 (logfonts_match): Check generic family.
14575 (font_matches_spec): Don't check generic family here.
14576 (fill_in_logfont): Set generic family based on adstyle.
14577
14578 * w32font.h (w32font_get_cache): Update declaration.
14579
145802008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14581
14582 * ftfont.c (ftfont_get_cache): Adjust the argument type.
14583
14584 * frame.c (x_set_font_backend): Don't call Fclear_font_cache.
14585 If none of the new drivers are available, call font_update_drivers
14586 with the old drivers.
14587
14588 * w32font.c (w32font_get_cache): Adjust the argument type.
14589
14590 * xfont.c (xfont_get_cache): Adjust the argument type.
14591
14592 * font.h (struct font_driver): Change argument type of get_cache.
14593
14594 * xftfont.c (xftfont_start_for_frame): Delete prototype.
14595
14596 * font.c (Ffont_get): Fix arguments to Fassoc.
14597 (font_prepare_cache, font_finish_cache, font_get_cache): New functions.
14598 (font_clear_cache): New function.
14599 (font_list_entities, font_matching_entity): Use font_get_cache.
14600 (font_update_drivers): Call font_clear_cache when finishing a driver.
14601
14602 * fontset.c (fontset_find_font): Fix previous change.
14603
146042008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14605
14606 * xterm.c (x_check_font) [USE_FONT_BACKEND]: Don't access
14607 dpyinfo->font_table.
14608 (x_delete_display) [USE_FONT_BACKEND]: Likewise.
14609 (x_delete_terminal) [USE_FONT_BACKEND]: Likewise.
14610
14611 * font.c (font_at): Handle the case that the arg C is negative.
14612 Handle the unibyte case.
14613 (Ffont_at): Call font_at with the arg C -1.
14614
14615 * xdisp.c (handle_auto_composed_prop): Don't get a character at
14616 the position here, and call font_at with the arg C -1.
14617 Don't check the range of the existing composition at the point.
14618
146192008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14620
14621 * fontset.c (fontset_add): New args charset_id and family.
14622 Change caller.
14623 (load_font_get_repertory, fontset_find_font): Assume that
14624 font_spec is always a font-spec object.
14625 (Fset_fontset_font): Always store a font-spec object in a fontset.
14626
14627 * xdisp.c (handle_auto_composed_prop): Use Fget_text_property
14628 instead of get_property_and_range.
14629
146302008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14631
14632 * xftfont.c (struct xftfont_info): Delete the member ft_face.
14633 (xftfont_open): Don't keep locking face.
14634 (xftfont_close): Don't unlock face.
14635 (xftfont_anchor_point, xftfont_shape): Lock and unlock face.
14636
14637 * fontset.c (fontset_find_font): Don't prefer a font of
14638 supplementary charset.
14639
146402008-02-01 Kenichi Handa <handa@m17n.org>
14641
14642 * ftfont.c (struct OpenTypeSpec): Rename members script_tag to
14643 script, langsys_tag to langsys, new member script.
14644 (OTF_TAG_STR): Terminate by '\0'.
867d4bb3 14645 (ftfont_get_open_type_spec): If :otf prop is spec, limit the
aac0c6e3
MR
14646 listing to the script specified in that property. Fix arg to
14647 OTF_check_features.
14648
146492008-02-01 Jason Rumney <jasonr@gnu.org>
14650
14651 * w32font.h: New file.
14652
14653 * w32font.c: Include it.
14654 (struct w32font_info): Add owning_frame field. Move to w32font.h.
14655 (w32font_open): Set owning_frame.
14656 (w32font_text_extents): Use owning_frame.
14657 (struct font_callback_data): Add opentype_only field.
14658 (add_font_entity_to_list): Use it to filter fonts.
14659 Don't check against full name.
14660 (w32font_list_internal): New function.
14661 (w32font_list): Use it.
14662 (w32font_match_internal): New function.
14663 (w32font_match): Use it.
14664 (w32font_open_internal): New function.
14665 (w32font_open): Use it.
14666 (w32font_get_cache, w32font_close, w32font_has_char)
14667 (w32font_encode_char, w32font_text_extents, w32font_draw):
14668 Make non-static.
14669
14670 * makefile.w32-in (w32font.o): Depend on w32font.h.
14671
146722008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14673
14674 * charset.c (Fdefine_charset_internal): Record a supplementary
14675 charset at the tail of Vcharset_order_list.
14676
14677 * font.c (Ffont_shape_text): Fix the return value.
14678
14679 * ftfont.c (OTF_SYM_TAG, OTF_TAG_STR): Fix argument names.
14680
14681 * xdisp.c (handle_auto_composed_prop): Fix previous change.
14682
146832008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14684
14685 * ftfont.c (struct OpenTypeSpec): New struct.
14686 (OTF_SYM_TAG, OTF_TAG_STR): New macros.
14687 (ftfont_get_open_type_spec): New function.
14688 (ftfont_list) [HAVE_LIBOTF]: Check otf-spec property.
14689
14690 * lread.c (read1): Redo the previous change with checking Vpurify_flag.
14691
146922008-02-01 Jason Rumney <jasonr@gnu.org>
14693
14694 * w32font.c (add_font_entity_to_list): Compare only the beginning
14695 of full name.
14696
146972008-02-01 Kenichi Handa <handa@m17n.org>
14698
14699 * xdisp.c (handle_auto_composed_prop): Simplify the code.
14700 Never return HANDLED_RECOMPUTE_PROPS.
14701
147022008-02-01 Kenichi Handa <handa@m17n.org>
14703
14704 * font.c (font_gstring_produce): Delete it.
14705
14706 * composite.h (COMPOSITION_METHOD):
14707 Handle COMPOSITION_WITH_GLYPH_STRING.
14708
147092008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14710
14711 * xfont.c (Qx): Delete.
14712 (syms_of_xfont): Don't initialize Qx.
14713
14714 * composite.h (enum composition_method):
14715 Define COMPOSITION_WITH_GLYPH_STRING unconditionally.
14716
147172008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14718
14719 * xfaces.c [HAVE_WINDOW_SYSTEM]: Include "font.h" unconditionally.
14720 (choose_face_font): Accept new form of font-spec.
14721
14722 * frame.h (font_driver_list): Declare it unconditionally.
14723 (struct frame): Define members font_driver_list and font_data_list
14724 unconditionally.
14725
14726 * fontset.c: Include "font.h" unconditionally.
14727 (generate_ascii_font_name): Use font_parse_xlfd and font_unparse_xlfd.
14728 (Fset_fontset_font): Accept a font-spec object.
14729
14730 * font.c (font_unparse_xlfd): If pixel_size is zero, make the
14731 PIXEL_SIZE part a wild card.
14732
14733 * dispextern.h (struct glyph_string): Define members clip and
14734 num_clips unconditionally.
14735 (struct face): Define members font_info and extra unconditionally.
14736
14737 * ftfont.c (ftfont_open): Set members maybe_otf and otf of
14738 ftfont_info only when HAVE_LIBOTF is defined.
14739
147402008-02-01 Andreas Schwab <schwab@suse.de>
14741
14742 * xdisp.c (back_to_previous_visible_line_start): Fix type of beg
14743 and end.
14744
147452008-02-01 Jason Rumney <jasonr@gnu.org>
14746
14747 * w32font.c (w32font_driver): Add new fields.
14748
147492008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14750
14751 * Makefile.in (ALL_CFLAGS): Add @M17N_FLT_CFLAGS@.
14752 (FONTSRC, FONTOBJ) [HAVE_WINDOW_SYSTEM]: Set them unconditionally.
14753 (LIBES): Add @M17N_FLT_CFLAGS@.
14754
14755 * composite.c (compose_text): Don't treat the new style
14756 composition specially.
14757
14758 * emacs.c (main): Call syms_of_font unconditionally.
14759
14760 * font.h (FONT_ENTITY_NOT_LOADABLE)
14761 (FONT_ENTITY_SET_NOT_LOADABLE): New macros.
14762 (LGSTRING_XXXX, LGLYPH_XXX): Adjust for the change of lispy gstring.
14763 (struct font_driver): New member shape.
14764 (font_registry_charsets): Extern it.
14765 (font_find_for_lface, font_prepare_composition): Adjust prototype.
14766 (font_otf_capability, font_drive_otf): Delete their externs.
14767
14768 * font.c [HAVE_M17N_FLT]: Include <m17n-flt.h>.
14769 (font_charset_alist, font_registry_charsets): Move from xfont.c
14770 and rename.
14771 (font_prop_validate_otf): New function.
14772 (font_property_table): Register it for QCotf.
14773 (DEVICE_DELTA, adjust_anchor, REPLACEMENT_CHARACTER)
14774 (font_drive_otf): Delete.
14775 (font_prepare_composition): New arg F. Adjust for the change of
14776 lispy gstring.
14777 (font_find_for_lface): New arg C.
14778 (font_load_for_face): Adjust for the change of font_find_for_lface.
14779 (Ffont_make_gstring, Ffont_fill_gstring): Adjust for the change of
14780 lispy gstring.
14781 (Ffont_shape_text): New function.
14782 (Fopen_font): If the font size is not given, use 12-pixel.
14783 (Ffont_at): New arg STRING.
14784 (syms_of_font): Initalize font_charset_alist.
14785 Declare Ffont_shape_text as a Lisp function. Call syms_of_XXfont
14786 conditionally.
14787
14788 * fontset.c (fontset_find_font) [USE_FONT_BACKEND]: Try multiple
14789 fonts of the same font-spec. Change the format of RFONT-DEF.
14790 (face_for_char, make_fontset_for_ascii_face, Finternal_char_font):
14791 Adjust for the change of RFONT-DEF.
14792 (Fset_fontset_font) [USE_FONT_BACKEND]: Handle new format of font-spec.
14793
14794 * ftfont.h: New file.
14795
14796 * ftfont.c: Don't include Freetype headers. Include "ftfont.h".
14797 (struct ftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
14798 (ftfont_open) [HAVE_LIBOTF]: Initialize the above members.
14799 (ftfont_driver) [HAVE_LIBOTF, HAVE_M17N_FLT]: Don't set
14800 font_otf_capability and font_drive_otf, set ftfont_shape.
14801 (ftfont_list): Adjust for the change of :otf property value.
14802 (struct MFLTFontFT) [HAVE_LIBOTF, HAVE_M17N_FLT]: New struct.
14803 (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_check_otf)
14804 (adjust_anchor, ftfont_drive_otf, ftfont_shape_by_flt)
14805 (ftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
14806 (DEVICE_DELTA) [HAVE_LIBOTF, HAVE_M17N_FLT]: New macro.
14807 (otf_gstring, gstring, m17n_flt_initialized): New variables.
14808
14809 * w32term.c (x_draw_composite_glyph_string_foreground):
14810 Adjust for the change of lispy gstring.
14811
14812 * xdisp.c (handle_composition_prop): Adjust for the change of
14813 lispy gstring. Call a function for auto-composition with the
14814 third arg it->window.
14815 (fill_composite_glyph_string): Adjust for the change of lispy string.
14816 (x_produce_glyphs): Adjust for the change of font_prepare_compositionl.
14817
14818 * xfaces.c (set_font_frame_param): Adjust for the change of
14819 font_find_for_lface.
14820
14821 * xfont.c (x_font_charset_alist): Move to font.c and rename.
14822 (xfont_registry_charsets): Likewise. Change caller.
14823 (syms_of_xfont): Don't handle x_font_charset_alist.
14824
14825 * xftfont.c: Include "ftfont.h".
14826 (struct xftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
14827 (xftfont_open) [HAVE_LIBOTF]: Initialize the above members.
14828 (xftfont_close) [HAVE_LIBOTF]: Close otf.
14829 (xftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
14830 (syms_of_xftfont) [HAVE_LIBOTF, HAVE_M17N_FLT]:
14831 Set xftfont_driver.shape to xftfont_shape.
14832
14833 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
14834 the change of lispy gstring.
14835
148362008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14837
14838 * ftxfont.c (ftxfont_end_for_frame): Fix array indexing error.
14839
148402008-02-01 Jason Rumney <jasonr@gnu.org>
14841
14842 * w32font.c (w32font_draw): Fill background manually.
14843
148442008-02-01 Jason Rumney <jasonr@gnu.org>
14845
14846 * font.c (Qfontp): Remove unused symbol.
14847 (QCantialias): New symbol.
14848 (syms_of_font): Define it.
14849 (font_property_table): Set a validator for QCantialias.
14850
14851 * w32font.c (CLEARTYPE_QUALITY, CLEARTYPE_NATURAL_QUALITY):
14852 Define if not already.
14853 (QCfamily): Share with xfaces.c.
14854 (Qstandard, Qsubpixel, Qnatural): New symbols.
14855 (syms_of_w32font): Define them. Don't define QCfamily here.
14856 (w32_antialias_type, lispy_antialias_type): New functions.
14857 (w32_enumfont_pattern_entity): New arg requested_font.
14858 Set antialias parameter if non-default was requested.
14859 (fill_in_logfont): Fill in lfQuality if :antialias specified.
14860
148612008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14862
14863 * lread.c (read1): Undo the previous change.
14864
148652008-02-01 CHENG Gao <chenggao@gmail.com> (tiny change)
14866
14867 * frame.c (Fdelete_frame): Call font_update_drivers only when
14868 USE_FONT_BACKEND is defined.
14869
148702008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14871
14872 * font.h (struct font_bitmap): New member bits_per_pixel.
14873 (struct font_driver): New members start_for_frame and end_for_frame.
14874 (struct font_data_list): New struct.
14875 (font_put_frame_data, font_get_frame_data): Extern them.
14876
14877 * frame.h (struct frame): New member font_data_list.
14878
14879 * font.c (font_update_drivers): Call driver->start_for_frame and
14880 driver->end_for_frame at proper timings.
14881 (font_put_frame_data, font_get_frame_data): New functions.
14882 (Ffont_spec): Add usage in the docstring.
14883
14884 * frame.c (make_frame): Initialize f->font_data_list to NULL.
14885 (Fdelete_frame): Call font_update_drivers.
14886
14887 * xftfont.c (struct xftface_info): Delete the member xft_draw.
14888 (xftfont_prepare_face, xftfont_done_face): Adjust for the above change.
14889 (xftfont_get_xft_draw): New function.
14890 (xftfont_draw): Get XftDraw by xftfont_get_xft_draw.
14891 (xftfont_end_for_frame): New function.
14892 (syms_of_xftfont): Set xftfont_driver.end_for_frame.
14893
14894 * ftxfont.c (ftxfont_get_gcs): Rename from ftxfont_create_gcs.
14895 Change argument. Cache GCs in the per-frame data.
14896 (struct ftxfont_frame_data): New struct.
14897 (ftxfont_draw_bitmap): New arg gc_fore and flush.
14898 (ftxfont_prepare_face, ftxfont_done_face): Delete them.
14899 (ftxfont_draw): Get GCs by ftxfont_get_gcs. Reflect s->clip in GCs.
14900 (ftxfont_end_for_frame): New function.
14901 (syms_of_ftxfont): Set ftxfont_driver.end_for_frame.
14902
14903 * ftfont.c (ftfont_get_bitmap): Set bitmap->bits_per_pixel.
14904
149052008-02-01 Kenichi Handa <handa@m17n.org>
14906
14907 * xselect.c (Vselection_coding_system)
14908 (Vnext_selection_coding_system): Delete them.
14909 (syms_of_xselect): Don't declare selection-coding-system and
14910 next-selection-coding-system. They are declared in select.el.
14911
149122008-02-01 Jason Rumney <jasonr@gnu.org>
14913
14914 * w32term.h (WM_UNICHAR, UNICODE_NOCHAR): Define if not already.
14915
14916 * w32fns.c: Include imm.h.
14917 (get_composition_string_fn, get_ime_context_fn): New optional
14918 system functions.
14919 (globals_of_w32fns): Load them from imm32.dll.
14920 (ignore_ime_char): New flag.
14921 (w32_wnd_proc): Handle WM_UNICHAR, WM_IME_CHAR and
14922 WM_IME_ENDCOMPOSITION messages.
14923
14924 * w32term.c (w32_read_socket) [WM_UNICHAR]: Handle as
14925 MULTIBYTE_CHAR_KEYSTROKE_EVENT.
14926
149272008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14928
14929 * lread.c (READCHAR): Call readchar with the 2nd arg NULL.
14930 (READCHAR_REPORT_MULTIBYTE): New macro.
14931 (readchar): New 2nd arg MULTIBYTE.
14932 (read1): Use READCHAR_REPORT_MULTIBYTE for the first read.
14933 Make symbol's name multibyte according to the multibyteness of the
14934 source.
14935
149362008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14937
14938 * xfaces.c (face_for_overlay_string): Call lookup_face with
14939 correct arguments (fix of synching with the trunk).
14940
149412008-02-01 Kenichi Handa <handa@m17n.org>
14942
14943 * font.c (font_prop_validate_symbol, font_prop_validate_style)
14944 (font_prop_validate_non_neg, font_prop_validate_spacing):
14945 Delete argument prop_index.
14946 (font_property_table): Change arguments to validater. Change Callers.
14947 (font_lispy_object): Delete.
14948 (font_at): Use font_find_object instead fo font_lispy_object.
14949
149502008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14951
14952 * fileio.c (Fexpand_file_name): Adjust multibyteness of directory
14953 and file names.
14954
149552008-02-01 Jason Rumney <jasonr@gnu.org>
14956
14957 * w32font.c (add_font_name_to_list): Avoid vertical fonts.
14958 (font_matches_spec): Remove debug output.
14959 (add_font_entity_to_list): Avoid using substituted fonts.
14960
149612008-02-01 Jason Rumney <jasonr@gnu.org>
14962
14963 * doc.c (Fsnarf_documentation):
14964 * Makefile.in (temacs${EXEEXT}, mostlyclean): Undo last change.
14965
149662008-02-01 Miles Bader <miles@gnu.org>
14967
14968 * dispextern.h (struct glyph_row): Only define "clip" field if
14969 HAVE_WINDOW_SYSTEM is defined.
14970
149712008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
14972
14973 Fix up multi-tty merge.
14974
14975 * xterm.c (handle_one_xevent): Remove duplicate code and fix up nesting
14976 and indentation.
14977
14978 * xfaces.c (free_realized_face, clear_face_gcs):
14979 Include font_done_for_face in the input_blocked section, just in case.
14980
14981 * xdisp.c (decode_mode_spec): Use terminal-local coding systems.
14982 (get_char_face_and_encoding): Undo last change and remove the *other*
14983 duplicate definition (i.e. keep the one that's better scoped and that
14984 includes code for the font-backend).
14985
14986 * terminal.c (create_terminal): Default keyboard_coding to
14987 `no-conversion' and terminal_coding to `undecided'.
14988
14989 * lread.c (read1): Use XSETPVECTYPE to set a pseudovector's tag.
14990
14991 * fontset.c (free_realized_fontsets): Check that the table entry does
14992 contain a fontset before trying to compare it to `base'.
14993
14994 * emacs.c (main): Move syms_of_data, syms_of_fileio, syms_of_alloc,
14995 syms_of_charset, and syms_of_coding earlier because init_window_once
14996 now needs Vcoding_system_hash_table to be setup.
14997
14998 * coding.h (default_buffer_file_coding): Remove.
14999
15000 * coding.c (default_buffer_file_coding): Remove.
15001 (Fterminal_coding_system, Fkeyboard_coding_system): Use ->id rather
15002 than ->symbol, and use the terminal-local coding system.
15003 (syms_of_coding): Don't setup the coding-systems that are not
15004 terminal-local.
15005 (Fdefine_coding_system_internal): Use XCAR/XCDR.
15006
15007 * chartab.c (Fmake_char_table, make_sub_char_table, copy_char_table):
15008 Use XSETPVECTYPE now that XSETCHAR_TABLE doesn't set the tag anymore.
15009
15010 * alloc.c (Fmake_char_table, make_sub_char_table): Remove. They're now
15011 in chartab.c and were re-added here by mistake.
15012 (Fpurecopy): Use XSETPVECTYPE after copying a COMPILED pseudovector.
15013
15014 * doc.c (Fsnarf_documentation):
15015 * Makefile.in (temacs${EXEEXT}, mostlyclean): Move buildobj.lst from
15016 src to etc.
15017
15018 * ChangeLog.10: Add mistakenly removed entry.
15019
150202008-02-01 Dan Nicolaescu <dann@ics.uci.edu>
15021
15022 * Makefile.in (fringe.o, minibuf.o): Fix dependencies.
15023
150242008-02-01 Miles Bader <miles@gnu.org>
15025
15026 * xdisp.c (get_char_face_and_encoding): Remove extraneous definition.
15027 Add extra args to FACE_FOR_CHAR.
15028
150292008-02-01 Kenichi Handa <handa@m17n.org>
15030
15031 * keymap.c (where_is_internal_1): If key is a cons, store the copy
15032 in sequence.
15033
15034 * chartab.c (map_sub_char_table, map_char_table): If the range
15035 contains just one character, call the function with that character
15036 even if the depth is not 3.
15037
150382008-02-01 Jason Rumney <jasonr@gnu.org>
15039
15040 * w32font.c (w32font_text_extents): Calculate metrics for the
15041 whole string.
15042
150432008-02-01 Jason Rumney <jasonr@gnu.org>
15044
15045 * w32xfns.c (get_next_msg): Consolidate WM_PAINT messages.
15046
150472008-02-01 Jason Rumney <jasonr@gnu.org>
15048
15049 * w32term.c (x_set_glyph_string_clipping): Use
15050 get_glyph_string_clip_rects.
15051 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
15052 Adjust for the change of struct glyph_string.
15053
15054 * w32font.c (w32font_draw): Do clipping here.
15055
150562008-02-01 Kenichi Handa <handa@m17n.org>
15057
15058 * xftfont.c (xftfont_draw): Adjust for the change of struct
15059 glyph_string.
15060
15061 * xterm.c (x_set_glyph_string_clipping): Use
15062 get_glyph_string_clip_rects.
15063 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
15064 Adjust for the change of struct glyph_string.
15065
15066 * xdisp.c (get_glyph_string_clip_rects): Reflect s->row->clip to
15067 the resulting clip(s}.
15068 (expose_overlaps): Add arg r. Change callers. Set it to
15069 row->clip temporarily.
15070 (expose_window): Redraw rows overlapping the exposed area.
15071
15072 * dispextern.h (struct glyph_row): New member clip.
15073 (struct glyph_string): Delete members clip_x, clip_y, clip_width,
15074 clip_height, new member clip, and num_clips.
15075
150762008-02-01 Kenichi Handa <handa@m17n.org>
15077
15078 * data.c (Fchar_or_string_p): Fix docstring.
15079
150802008-02-01 Kenichi Handa <handa@m17n.org>
15081
15082 * xftfont.c (xftfont_draw): If s->font_info != s->face->font_info,
15083 create a temporary XftDraw object.
15084
150852008-02-01 Kenichi Handa <handa@m17n.org>
15086
15087 * font.c (Ffontp): Fix docstring.
15088
15089 * coding.c (detect_coding_iso_2022): Don't treat SI/SO codes as a
15090 strong evidence of ISO-2022.
15091
150922008-02-01 Kenichi Handa <handa@m17n.org>
15093
15094 * abbrev.c (abbrev_check_chars): Use CHAR_TABLE_REF, not
15095 SYNTAX_ENTRY_FOLLOW_PARENT.
15096
150972008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
15098
15099 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and change
15100 its type.
15101 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
15102 Update to the new type of weak_hash_tables and next_weak.
15103
15104 * lisp.h (struct Lisp_Hash_Table): Change next_weak from Lisp_Object to
15105 a plain C pointer to Lisp_Hash_Table.
15106
15107 * lisp.h (XGCTYPE, GC_HASH_TABLE_P, GC_NILP, GC_NUMBERP, GC_NATNUMP)
15108 (GC_INTEGERP, GC_SYMBOLP, GC_MISCP, GC_VECTORLIKEP, GC_STRINGP)
15109 (GC_CONSP, GC_FLOATP, GC_VECTORP, GC_OVERLAYP, GC_MARKERP)
15110 (GC_INTFWDP, GC_BOOLFWDP, GC_OBJFWDP, GC_BUFFER_OBJFWDP)
15111 (GC_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP)
15112 (GC_KBOARD_OBJFWDP, GC_PSEUDOVECTORP, GC_WINDOW_CONFIGURATIONP)
15113 (GC_PROCESSP, GC_WINDOWP, GC_SUBRP, GC_COMPILEDP, GC_BUFFERP)
15114 (GC_SUB_CHAR_TABLE_P, GC_CHAR_TABLE_P, GC_BOOL_VECTOR_P, GC_FRAMEP)
15115 (GC_EQ): Remove since they've been identical to their non-GC_
15116 alter-egos ever since the markbit was eradicated.
15117
15118 * alloc.c:
15119 * buffer.c:
15120 * buffer.h:
15121 * data.c:
15122 * fileio.c:
15123 * filelock.c:
15124 * fns.c:
15125 * frame.h:
15126 * lisp.h:
15127 * macterm.c:
15128 * print.c:
15129 * process.c:
15130 * w32fns.c:
15131 * w32menu.c:
15132 * w32term.c:
15133 * xfns.c:
15134 * xmenu.c:
15135 * xterm.c: Replace uses of GC_* macros with the non-GC_ versions.
15136
151372008-02-01 Kenichi Handa <handa@m17n.org>
15138
15139 * chartab.c (map_sub_char_table): Make it work for the top-level
15140 char-table. Fix handling of parent char-table.
15141 (map_char_table): Adjust for the above change.
15142
151432008-02-01 Jason Rumney <jasonr@gnu.org>
15144
15145 * w32font.c (Qgdi): Rename from Qw32.
15146
151472008-02-01 Jason Rumney <jasonr@gnu.org>
15148
15149 * w32bdf.c (get_quoted_string): Make function static.
15150
151512008-02-01 Kenichi Handa <handa@m17n.org>
15152
15153 * xftfont.c (xftfont_open): If one of font's ASCII glyph has
15154 bigger ascent and descent than those of the font, use them as
15155 font's ascent and descent.
15156
151572008-02-01 Kenichi Handa <handa@m17n.org>
15158
15159 * Makefile.in (${lispsource}international/charprop.el): Move this
15160 target within "#ifdef HAVE_UNIDATA" and "#endif".
15161
151622008-02-01 Kenichi Handa <handa@m17n.org>
15163
15164 * Makefile.in (lisp): Add ${lispsource}language/tai-viet.el.
15165 (shortlisp): Add ../lisp/language/tai-viet.el.
15166
151672008-02-01 Ulrich Mueller <ulm@gentoo.org>
15168
15169 * Makefile.in (${lispsource}international/charprop.el): Depend on
15170 temacs${EXEEXT}.
15171
151722008-02-01 Jason Rumney <jasonr@gnu.org>
15173
15174 * w32font.c (w32font_close): Delete the GDI font object.
15175
15176 * w32menu.c: Include character.h.
15177
15178 * w32proc.c: Likewise.
15179
15180 * w32select.c: Likewise.
15181
15182 * makefile.w32-in (w32proc.o): Depend on character.h.
15183
151842008-02-01 Jason Rumney <jasonr@gnu.org>
15185
15186 * w32fns.c (syms_of_w32fns): Use DEFSYM macro.
15187
15188 * w32menu.c (syms_of_w32menu): Likewise.
15189
15190 * w32proc.c (syms_of_ntproc): Likewise.
15191
15192 * w32select.c (syms_of_w32select): Likewise.
15193
15194 * w32term.c (syms_of_w32term): Likewise.
15195
151962008-02-01 Jason Rumney <jasonr@gnu.org>
15197
15198 * w32font.c (w32font_draw): Delete brush after using it.
15199
152002008-02-01 Jason Rumney <jasonr@gnu.org>
15201
15202 * w32font.c (w32font_open): Don't set font_idx.
15203 (w32font_text_extents): Try GetTextExtentPoint32W before defaulting
15204 to font settings.
15205 (w32font_draw): Fill background explicitly.
15206
152072008-02-01 Jason Rumney <jasonr@gnu.org>
15208
15209 * w32term.c (w32_initialize): Don't call w32font_initialize.
15210
15211 * w32font.c (w32font_info): Remove subranges.
15212 (QCsubranges, Qmodern, Qswiss, Qroman): Remove.
15213 (QCfamily, Qmonospace, Qsans_serif, Qmono, Qsans, Qsans__serif)
15214 (Qraster, Qoutline, Qlatin, Qgreek, Qcoptic, Qcyrillic, Qarmenian)
15215 (Qhebrew, Qarabic, Qsyriac, Qnko, Qthaana, Qdevanagari, Qbengali)
15216 (Qgurmukhi, Qgujarati, Qoriya, Qtamil, Qtelugu, Qkannada)
15217 (Qmalayalam, Qsinhala, Qthai, Qlao, Qtibetan, Qmyanmar, Qgeorgian)
15218 (Qhangul, Qethiopic, Qcherokee, Qcanadian_aboriginal, Qogham)
15219 (Qrunic, Qkhmer, Qmongolian, Qsymbol, Qbraille, Qhan)
15220 (Qideographic_description, Qcjk_misc, Qkana, Qbopomofo, Qkanbun)
15221 (Qyi, Qbyzantine_musical_symbol, Qmusical_symbol, Qmathematical):
15222 New symbols.
15223 (font_callback_data): New struct.
15224 (w32font_list, w32font_match): Use it.
15225 (w32font_open): Don't populate subranges.
15226 (w32font_has_char): Use script Lisp symbols, not subrange bitmask.
15227 (w32font_encode_char): Always return unicode code-point as-is.
15228 (w32font_text_extents): Supply a transformation matrix to
15229 GetGlyphOutline. Never look up by glyph index. Avoid looping
15230 twice. Use unicode version of GetTexExtentPoint32 instead of
15231 glyph index version.
15232 (set_fonts_frame): Remove.
15233 (w32_enumfont_pattern_entity): Add frame parameter, use it to
15234 set frame parameter. Use backward compatible fake foundries.
15235 Save generic family in extra slot under QCfamily. Make width slot
15236 constant. Save QCspacing value. Save list of scripts instead of
15237 binary subranges.
15238 (w32_generic_family, logfonts_match, font_matches_spec): New functions.
15239 (add_font_entity_to_list): Use font_callback_data struct. Filter
15240 unwanted fonts.
15241 (add_one_font_entity_to_list): Use font_callback_data struct.
15242 (w32_registry): Default to iso10646_1.
15243 (fill_in_logfont): Use dpi from extra slot. Don't bother with
15244 string font registries. Don't fill in font name if it is a generic
15245 family name, fill family instead. Use spacing, family and script
15246 extra info to fill pitch, family and charset fields.
15247 (list_all_matching_fonts): Use font_callback_data struct.
15248 (unicode_range_for_char): Remove.
15249 (font_supported_scripts): New function.
15250 (w32font_initialize): Remove.
15251 (syms_of_w32font): Update which symbols are defined.
15252
152532008-02-01 Jason Rumney <jasonr@gnu.org>
15254
15255 * font.c (font_pixel_size): Reverse assq_no_quit args.
15256
15257 * w32term.h (FONT_WIDTH): Report max width, not average.
15258 (FONT_MAX_WIDTH): Remove.
15259 (FONT_AVG_WIDTH): New macro.
15260
15261 * xfaces.c (Fx_list_fonts) [WINDOWSNT]: Remove Windows only
15262 redefinition of FONT_WIDTH.
15263
15264 * w32term.c (x_font_min_bounds): Use FONT_AVG_WIDTH.
15265 (w32_cache_char_metrics): Use FONT_WIDTH.
15266
15267 * w32fns.c (w32_load_system_font, w32_list_fonts): Use FONT_AVG_WIDTH.
15268
152692008-02-01 Jason Rumney <jasonr@gnu.org>
15270
15271 * w32font.c (w32font_open): Make lfHeight negative.
15272
15273 * w32fns.c (x_default_font_parameter): Use new style font name.
15274 (Fx_create_frame, x_create_tip_frame): Initialize resx and resy.
15275
152762008-02-01 Jason Rumney <jasonr@gnu.org>
15277
15278 * w32font.c (QCsubranges): New symbol.
15279 (w32font_open, w32font_has_char): Get subranges from subproperty
15280 of extra.
15281 (w32_enumfont_pattern_entity): Set subranges as subproperty of extra.
15282 (syms_of_w32font): Define :subranges symbol.
15283
15284 * font.c (font_put_extra): Expose externally.
15285
15286 * font.h (font_put_extra): Move declaration from font.c.
15287
15288 * font.c (Ffont_get): Use font driver to determine otf capability.
15289 (adjust_anchor): Check if driver defines anchor_point before using.
15290
15291 * w32font.c (w32font_open): Handle size, height and pixel_size better.
15292 (w32font_draw): Use options.
15293 (w32_enumfont_pattern_entity): Set size to 0 for scalable fonts.
15294 Fix detection of truetype fonts.
15295 (registry_to_w32_charset): Handle charsets other than iso8859-1
15296 expressed as lisp symbols.
15297 (w32_registry): Express charset as lisp symbol.
15298 (fill_in_logfont): Reverse pixel and point height logic.
15299 Don't set width here. Set quality to default.
15300
15301 * w32fns.c (w32_load_system_font): Fix detecting FIXED_PITCH fonts.
15302 (x_to_w32_font): Fill in lfPitchAndFamily correctly.
15303
15304 * xterm.c (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
15305 Remove redundant loop and allocation.
15306
15307 * makefile.w32-in (font.o, w32font.o): New objects.
15308 (fontset.o, xdisp.o, xfaces.o, w32fns.o, w32term.o): Depend on font.h.
15309 (FONTOBJ): New group of objects conditioned on USE_FONT_BACKEND.
15310
15311 * xdisp.c (fill_composite_glyph_string): Make the first arg to
15312 STORE_XCHARB a valid l-value.
15313
15314 * w32term.c (w32_native_per_char_metric): Swap width and rbearing
15315 calculations for non-Truetype fonts.
15316 (x_draw_glyph_string): Sync with xterm.c.
15317 (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
15318 Remove redundant code.
15319 (w32_initialize) [USE_FONT_BACKEND]: Call w32font_initialize.
15320
15321 * w32term.h (w32_output_data) [USE_FONT_BACKEND]: Add fontp member.
15322 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro from xterm.h.
15323
15324 * w32fns.c [USE_FONT_BACKEND]: Port font backend changes from xfns.c.
15325 (x_to_w32_charset, w32_to_x_charset): Expose externally.
15326
15327 * w32font.c: New file for w32 font backend.
15328
153292008-02-01 Kenichi Handa <handa@m17n.org>
15330
15331 * term.c: Don't include "buffer.h" twice.
15332
153332008-02-01 Kenichi Handa <handa@m17n.org>
15334
15335 * character.c (Funibyte_string): New function.
15336 (syms_of_character): Defsubr it.
15337
153382008-02-01 Jason Rumney <jasonr@gnu.org>
15339
15340 * w32term.c [USE_FONT_BACKEND]:
15341 (x_get_font_repertory, note_mouse_movement, x_set_mouse_face_gc)
15342 (x_set_glyph_string_clipping, x_set_glyph_string_clipping_exactly)
15343 (x_draw_glyph_string, x_draw_glyph_string_foreground)
15344 (x_draw_composite_glyph_string_foreground, x_new_fontset2)
15345 (x_free_frame_resources): Sync with xterm.c.
15346
153472008-02-01 Andreas Schwab <schwab@suse.de>
15348
15349 * lread.c (read1): Use CHAR_TABLE_STANDARD_SLOTS to validate
15350 char-table size.
15351
153522008-02-01 Kenichi Handa <handa@m17n.org>
15353
15354 * font.c (check_otf_features): Define it regardless of HAVE_LIBOTF.
15355
153562008-02-01 Kenichi Handa <handa@m17n.org>
15357
15358 * ftfont.c (ftfont_driver): Delete font_otf_gsub and
15359 font_otf_gpos, add font_drive_otf.
15360
15361 * fontset.c (fontset_find_font): Pay attention to font size
15362 specified for a font.
15363 (reorder_font_vector): Check contents of font_def.
15364
15365 * font.c (struct otf_list): Delete it.
15366 (otf_list): Make it a lisp variable.
15367 (otf_open): Use lispy otf_list.
15368 (generate_otf_features): Rename from parse_gsub_gpos_spec.
15369 (check_otf_features): New function.
15370 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
15371 New functions.
15372 (font_drive_otf): New function merging font_otf_gsub and
15373 font_otf_gpos.
15374 (font_open_for_lface): New arg spec. Change argument order.
15375 (font_load_for_face): Adjust for the change of font_open_for_lface.
15376 (Ffont_drive_otf): New function merging Ffont_otf_gsub and
15377 Ffont_otf_gpos.
15378 (syms_of_font): Staticpro otf_list. Delete defsubr of
15379 Sfont_otf_gsub and Sfont_otf_gpos. Defsubr Sfont_drive_otf.
15380
15381 * xfaces.c (set_font_frame_param): Adjust for the change of
15382 font_open_for_lface.
15383
15384 * font.h (font_open_for_lface): Adjust prototype.
15385 (struct font_driver): Delete members otf_gsub and otf_gpos, add
15386 member otf_drive.
15387 (font_otf_gsub, font_otf_gpos): Delete externs.
15388 (font_drive_otf): Extern it.
15389
153902008-02-01 Kenichi Handa <handa@m17n.org>
15391
15392 * font.c (font_at): If the window W is not on a window system,
15393 return Qnil.
15394
15395 * coding.c (produce_chars, encode_coding): Don't call
15396 insert_from_gap if no characters to produce.
15397
153982008-02-01 Kenichi Handa <handa@m17n.org>
15399
15400 * fontset.c (free_realized_fontsets): Avoid unnecessary call of
15401 Fclear_face_cache.
15402
15403 * xfaces.c (face_for_font): Check also face->font==font->font.font.
15404
154052008-02-01 Miles Bader <miles@gnu.org>
15406
15407 * emacs.c (main): Change default value of `enable_font_backend' to 1.
15408 Parse "--disable-font-backend" option.
15409 (standard_args): Add "--disable-font-backend" option.
15410
154112008-02-01 Kenichi Handa <handa@m17n.org>
15412
15413 * fontset.c (fontset_find_font): New function.
15414 (fontset_font): Use fontset_find_font.
15415 (make_fontset_for_ascii_face): Don't set face ID in rfont_def.
15416 Register the specified font for all Latin characters.
15417 (new_fontset_from_font): Register the specified font for all Latin
15418 characters.
15419 (dump_fontset): For a realized fontset, include the base fontset
15420 name in the returned vector.
15421
154222008-02-01 Kenichi Handa <handa@m17n.org>
15423
15424 * character.h (CHAR_STRING): Cast C to unsigned on calling
15425 char_string.
15426
15427 * character.c (char_string): Type of arg C changed to unsigned.
15428 Signal an error if C is an invalid character code.
15429
15430 * editfns.c (general_insert_function, Fchar_to_string):
15431 Use CHARACTERP, not INTEGERP.
15432
154332008-02-01 Kenichi Handa <handa@m17n.org>
15434
15435 * character.h (MIN_MULTIBYTE_LEADING_CODE)
15436 (MAX_MULTIBYTE_LEADING_CODE): New macros.
15437
15438 * regex.c (analyse_first): Fix for multibyte characters in "case
15439 charset:" and "case categoryspec:".
15440
154412008-02-01 Andreas Schwab <schwab@suse.de>
15442
15443 * Makefile.in (LIBES): Move standard libraries to the end.
15444
154452008-02-01 Kenichi Handa <handa@m17n.org>
15446
15447 * alloc.c (Fgarbage_collect): If nextb->text->inhibit_shrinking is
15448 nonzero, don't shrink the buffer nextb.
15449
15450 * buffer.h (struct buffer_text): New member inhibit_shrinking.
15451
15452 * coding.c (coding_alloc_by_making_gap): New arg offset.
15453 (alloc_destination): Call coding_alloc_by_making_gap with the arg
15454 offset.
15455 (decode_coding_iso_2022): Update coding->safe_charsets.
15456 (decode_coding_gap): Temporarily set
15457 current_buffer->text->inhibit_shrinking to 1.
15458
154592008-02-01 Kenichi Handa <handa@m17n.org>
15460
15461 * xterm.c (x_draw_composite_glyph_string_foreground): Fix
15462 indexing into elements of s->cmp and s->char2b.
15463
154642008-02-01 Juanma Barranquero <lekktu@gmail.com>
15465
15466 * regex.c (RE_STRING_CHAR_AND_LENGTH) [! emacs]: Add missing arg `len'.
15467
154682008-02-01 Kenichi Handa <handa@m17n.org>
15469
15470 * regex.c (GET_CHAR_BEFORE_2, GET_CHAR_AFTER): Check the variable
15471 target_multibyte instead of multibyte.
15472 (re_match_2_internal): Call bcmp_translate with target_multibyte.
15473 (bcmp_translate): Change the argument name from multibyte to
15474 target_multibyte.
15475
154762008-02-01 Kenichi Handa <handa@m17n.org>
15477
15478 These changes are to compile a regexp into a pattern that can be
15479 used both for multibyte and unibyte targets.
15480
15481 * Makefile.in (search.o): Depend on charset.h.
15482
15483 * character.c (multibyte_char_to_unibyte_safe): New function.
15484
15485 * search.c: Include "charset.h".
15486 (compile_pattern_1): Delete argument multibyte. Don't set
15487 cp->buf.target_multibyte here. Set cp->buf.charset_unibyte.
15488 (compile_pattern): Don't compare cp->buf.target_multibyte.
15489 Compare cp->buf.charset_unibyte.
15490 (compile_pattern): Set cp->buf.target_multibyte.
15491
15492 * lisp.h (multibyte_char_to_unibyte_safe): Extern it.
15493
15494 * regex.h (struct re_pattern_buffer): New member charset_unibyte.
15495
15496 * regex.c (RE_STRING_CHAR, RE_STRING_CHAR_AND_LENGTH): New arg
15497 multibyte. Change callers.
15498 (RE_CHAR_TO_MULTIBYTE, RE_CHAR_TO_UNIBYTE): New macros.
15499 (MAKE_CHAR_MULTIBYTE, MAKE_CHAR_UNIBYTE): Delete. Change callers
15500 to use RE_CHAR_TO_MULTIBYTE and RE_CHAR_TO_UNIBYTE, respectively.
15501 (SETUP_ASCII_RANGE, SETUP_UNIBYTE_RANGE): New macros.
15502 (SETUP_MULTIBYTE_RANGE): Generate a more compact range_table.
15503 (regex_compile): Make the compiled pattern usable both for
15504 multibyte and unibyte targets.
15505 (analyse_first): Make the fastmap usable both for multibyte and
15506 unibyte targets.
15507 (TRANSLATE_VIA_MULTIBYTE): Delete.
15508 (re_match_2_internal): Pay attention to the case that the
15509 multibyteness of bufp and target may be different.
15510
155112008-02-01 Kenichi Handa <handa@m17n.org>
15512
15513 * xdisp.c (x_produce_glyphs): When a font is not found, make the
15514 empty box occupy at least one column width.
15515
155162008-02-01 Miles Bader <miles@gnu.org>
15517
15518 * Makefile.in: Remove redundant HAVE_XFT clause.
15519
155202008-02-01 Kenichi Handa <handa@m17n.org>
15521
15522 * xrdb.c (x_load_resources): Setup the default fontSet X resource.
15523
155242008-02-01 Kenichi Handa <handa@m17n.org>
15525
15526 * fontset.c (Finternal_char_font): Fix for the case of POSITION
15527 being nil.
15528
155292008-02-01 Kenichi Handa <handa@m17n.org>
15530
15531 * xftfont.c (xftfont_open): Call FcConfigSubstitute.
15532
155332008-02-01 Kenichi Handa <handa@m17n.org>
15534
15535 * xftfont.c (xftfont_open): Don't enable antialias explicitly.
15536
155372008-02-01 Kenichi Handa <handa@m17n.org>
15538
15539 * search.c (simple_search): Fix previous change.
15540
155412008-02-01 Kenichi Handa <handa@m17n.org>
15542
15543 * xftfont.c (ftfont_font_format): Extern declaration.
15544
15545 * frame.c (x_set_font): Fix the second arg to fs_query_fontset.
15546
15547 * xfont.c (xfont_driver): Initialize ftfont_driver.type by 0.
15548 (xfont_list): Don't directly use Lisp_Object as an operand of &&.
15549
15550 * ftfont.c (ftfont_driver): Initialize ftfont_driver.type by 0.
15551 (ftfont_font_format): Fix previous change.
15552
15553 * font.h (Ffont_xlfd_name): EXFUN it.
15554
15555 * font.c (font_parse_xlfd): Fix the array size of `f'.
15556 (register_font_driver): Use EQ to compare driver->type.
15557
15558 * xfns.c (xic_create_xfontset2) [USE_FONT_BACKEND]: New function.
15559 (create_frame_xic) [USE_FONT_BACKEND]: Call xic_create_xfontset2.
15560 (xic_set_xfontset) [USE_FONT_BACKEND]: Likewise.
15561
155622008-02-01 Kenichi Handa <handa@m17n.org>
15563
15564 * ftfont.c (ftfont_pattern_entity, ftfont_list_generic_family)
15565 (ftfont_list, ftfont_font_format): Check if FC_FONTFORMAT is defined.
15566
155672008-02-01 Kenichi Handa <handa@m17n.org>
15568
15569 * xfont.c (xfont_open): Set font->format.
15570
15571 * xftfont.c (xftfont_open): Set font->format.
15572
15573 * ftfont.c (ftfont_pattern_entity): Add fontformat in a pattern.
15574 (ftfont_list): Include FC_FONTFORMAT in FcObject.
15575 (ftfont_open): Set font->format.
15576 (ftfont_font_format): New function.
15577
15578 * font.h (struct font): New member format.
15579
15580 * font.c (Qopentype): New variable.
15581 (syms_of_font): Defsym it.
15582 (Fquery_font): Change the format of the last element of the return
15583 value.
15584
155852008-02-01 Kenichi Handa <handa@m17n.org>
15586
15587 * xfns.c (xic_create_xfontset): Try the default fontset name as a
15588 last resort.
15589
155902008-02-01 Kenichi Handa <handa@m17n.org>
15591
15592 * coding.c (detect_coding_charset): Fix detection of multi-byte
15593 charset.
15594
155952008-02-01 Bob Halley <halley@play-bow.org> (tiny change)
15596
15597 * ccl.c (ccl_driver): If DST is NULL, set ccl->produced to 0.
15598
155992008-02-01 Kenichi Handa <handa@m17n.org>
15600
15601 * xdisp.c (get_next_display_element): Set it->face_id for the
15602 first component of a composition.
15603 (x_produce_glyphs): Check if the font is changed or not for composition.
15604
156052008-02-01 Kenichi Handa <handa@m17n.org>
15606
15607 * fontset.c (Qlatin): New variable.
15608 (syms_of_fontset): Define it as a lisp symbol.
15609 (Fset_fontset_font): If TARGET is `latin', use FONT_SPEC for ASCII.
15610
156112008-02-01 Kenichi Handa <handa@m17n.org>
15612
15613 * font.c (font_unparse_fcname): Pay attention to the case that
15614 some of font property is a null string.
15615
156162008-02-01 Kenichi Handa <handa@m17n.org>
15617
15618 * term.c: Include "composite.h".
15619 (encode_terminal_code): Output all components of composition.
15620 Check the size of encode_terminal_src.
15621 (produce_glyphs): For composition, call produce_composite_glyph.
15622 (append_composite_glyph, produce_composite_glyph): New functions.
15623
15624 * xdisp.c (x_produce_glyphs): In handling composition, if a font
15625 is not found, get font_info from the current ascii face.
15626
156272008-02-01 Kenichi Handa <handa@m17n.org>
15628
15629 * fileio.c (Finsert_file_contents): On replacing, temporarily bind
15630 buffer-file-name to Qnil before calling insert_from_buffer.
15631
15632 * font.c (font_unparse_fcname): Pay attention to the case that
15633 foundry is a null string.
15634
156352008-02-01 Kenichi Handa <handa@m17n.org>
15636
15637 * ftfont.c (ftfont_list): Allow registry "unicode-sip".
15638
15639 * font.c (Qunicode_sip): New variable.
15640 (syms_of_font): Declare it as a Lisp symbol.
15641
15642 * font.h (Qunicode_sip): Extern it.
15643
156442008-02-01 Kenichi Handa <handa@m17n.org>
15645
15646 * composite.c (get_composition_id): Pay attention to TAB component.
15647
15648 * xterm.c (x_draw_composite_glyph_string_foreground): Don't draw
15649 TAB. Adjust for the change of s->char2b which always points to
15650 the first element of allocated memory.
15651
15652 * xftfont.c (xftfont_text_extents): Fix calculation of descent value.
15653
15654 * xdisp.c (handle_composition_prop): Set it->c to the first
15655 non-TAB component.
15656 (fill_composite_glyph_string): Change argument.
15657 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the above change.
15658 (x_produce_glyphs): Fix handling of left/right padding.
15659
156602008-02-01 Kenichi Handa <handa@m17n.org>
15661
15662 * coding.c (detect_coding_system): Fix for handling off
15663 inhibit_iso_escape_detection. Fix for the case that no coding
15664 system is defined for a specific coding category.
15665
156662008-02-01 Kenichi Handa <handa@m17n.org>
15667
15668 * font.c (font_matching_entity): Delete unused local var.
15669
15670 * xftfont.c (xftfont_open): Call XftDefaultSubstitute before
15671 opening a font.
15672
15673 * fileio.c (Finsert_file_contents): On recovering a file, assume
15674 Unix-like eol.
15675 (choose_write_coding_system): On auto-saving a file, force
15676 Unix-like eol.
15677
15678 * coding.c (setup_coding_system): Fix setting of
15679 coding->common_flags based on eol_type.
15680 (coding_inherit_eol_type): If PARENT is not nil, be sure to
15681 inherit from it.
15682
156832008-02-01 Kenichi Handa <handa@m17n.org>
15684
15685 * alloc.c (NSTATICS): Increas to 0x600.
15686
156872008-02-01 Kenichi Handa <handa@m17n.org>
15688
15689 * ftfont.c (ftfont_driver): Set ftfont_driver.match to ftfont_match.
15690 (ftfont_list): Don't check :name property.
15691 (ftfont_match): New function.
15692 (ftfont_pattern_entity): If the pattern doesn't contain
15693 FC_SPACING, don't assume FC_MONO.
15694
15695 * font.h (struct font_driver): New member `match'.
15696 (font_update_drivers): Adjust prototype.
15697
15698 * font.c (font_parse_fcname, font_parse_name): Don't change :name
15699 property of FONT.
15700 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE, check_gstring): Define
15701 them unconditionally.
15702 (font_matching_entity): New function.
15703 (font_open_by_name): Try font_matching_entity if exact match is
15704 not found.
15705 (font_update_drivers): Delete the arg FONT. Return a list of
15706 actually used backends. Don't free faces, font caches here.
15707 Don't store data in frame parameters. Don't call x_set_font.
15708 (Ffont_spec): Store :name property as is.
15709 (Ffont_get): Check HAVE_LIBOTF before calling font_otf_capability.
15710 (Ffont_otf_gsub): Call font->driver->otf_gsub instead of font_otf_gsub.
15711 (Ffont_otf_gpos): Call font->driver->otf_gpos instead of font_otf_gpos.
15712 (Ffont_otf_alternates): Check if the driver has otf_gsub function.
15713 Call font->driver->otf_gsub instead of font_otf_gsub.
15714
15715 * frame.c (x_set_font_backend): Do more works that were done in
15716 font_update_drivers before.
15717
15718 * xfont.c (xfont_match): New function.
15719 (xfont_driver): Set xfont_driver.match to xfont_match.
15720 (xfont_draw): Set font in GC if necessary.
15721
15722 * ftxfont.c (ftxfont_match): New function.
15723 (syms_of_ftxfont): Set ftxfont_driver.match to ftxfont_match.
15724
15725 * xftfont.c (xftfont_match): New function.
15726 (syms_of_xftfont): Set xftfont_driver.match to xftfont_match.
15727
157282008-02-01 Kenichi Handa <handa@m17n.org>
15729
15730 * font.h (struct font): New member scalable.
15731 (struct font_driver): New arg ALTERANTE_SUBST to otf_gsub.
15732 (font_otf_gsub): Adjust prototype.
15733
15734 * font.c (font_otf_capability): Fix handling of the default langsys.
15735 (parse_gsub_gpos_spec): Change type to void. New arg nbytes.
15736 Check the contents of SPEC.
15737 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE): New macros.
15738 (check_gstring): New function.
15739 (REPLACEMENT_CHARACTER): New macro.
15740 (font_otf_gsub): New arg alternate_subst. Be sure to set all
15741 glyph codes of GSTRING.
15742 (font_otf_gpos): Be sure to set all glyph codes of GSTRING.
15743 (font_prepare_composition): Set cmp->glyph_len.
15744 (font_open_entity): Set font->scalable.
15745 (Ffont_get): Handle :otf property.
15746 (Ffont_otf_gsub, Ffont_otf_gpos, Ffont_otf_alternates): New
15747 functions.
15748 (Fquery_font): Use font->font.full_name.
15749 (syms_of_font): Defsubr Sfont_otf_gsub, Sfont_otf_gpos, and
15750 Sfont_otf_alternates.
15751
15752 * ftfont.c (ftfont_open): Set font->font.full_name and
15753 font->font.name properly. Fix calculation of font->font.height
15754 and font->min_width.
15755
15756 * ftxfont.c (ftxfont_create_gcs): New function.
15757 (ftxfont_draw_bitmap): Fix arg to ftfont_driver.get_bitmap.
15758 (ftxfont_draw_backgrond): Fix filling region.
15759 (ftxfont_default_fid): New function.
15760 (ftxfont_open): Set xfont->fid to the return value of
15761 ftxfont_default_fid.
15762 (ftxfont_prepare_face): Use ftxfont_create_gcs to create GCs.
15763 (ftxfont_done_face): Free only GCs that are created by
15764 ftxfont_create_gcs.
15765 (ftxfont_draw): If face->gc != s->gc, create proper GCs.
15766
15767 * xterm.c (x_set_glyph_string_clipping_exactly) [USE_FONT_BACKEND]:
15768 Clip to src->width, etc (not src->clip_XXX).
15769
15770 * xfns.c (x_create_tip_frame) [USE_FONT_BACKEND]: Handle
15771 FontBackend frame parameter.
15772
157732008-02-01 Kenichi Handa <handa@m17n.org>
15774
15775 * font.h (struct font_driver_list): New member `on'.
15776 (Fclear_font_cache): EXFUN it.
15777 (font_update_drivers): Extern it.
15778
15779 * font.c (font_unparse_fcname): Fix typo (swidth->width).
15780 (font_list_entities): Check driver_list->on.
15781 (register_font_driver): Initalize `on' member to 0.
15782 (font_update_drivers): New function.
15783 (Fclear_font_cache): Check driver_list->on.
15784
15785 * frame.h (Qfont_backend): Extern it.
15786 (x_set_font_backend): Extern it.
15787
15788 * frame.c (Qfont_backend): New variable.
15789 (frame_parms): New element for font-backend.
15790 (x_set_font_backend): New function.
15791
15792 * xfns.c (Fx_create_frame) [USE_FONT_BACKEND]: Handle
15793 FontBackend frame parameter.
15794 (x_frame_parm_handlers) [USE_FONT_BACKEND]: New element
15795 x_set_font_backend.
15796
15797 * xfont.c (xfont_list): Don't try listing by :name property if the
15798 name is not for XLFD.
15799
158002008-02-01 Kenichi Handa <handa@m17n.org>
15801
15802 * font.h (LGLYPH_FROM, LGLYPH_TO, LGLYPH_SET_FROM)
15803 (LGLYPH_SET_TO): New macros.
15804 (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WADJUST): Check if adjustment
15805 element of G is vector or not.
15806 (font_at): Extern it.
15807
15808 * font.c: Include window.h.
15809 (font_lispy_object): New function.
15810 (font_prepare_composition): Check LGLYPH_FORM (g) to detect the
15811 end of valid glyph.
15812 (font_close_object): Fix getting (struct font *).
15813 (font_at): New function.
15814 (Ffont_get): If FONT is a font-object, get entity from it.
15815 (Ffont_make_gstring): Initialize elements of glyphs with nil.
15816 (Ffont_fill_gstring): Use macro LGSTRING_XXX and LGLYPH_XXX. Fix
15817 range check.
15818 (Ffont_at): New function.
15819 (syms_of_font): Defsubr Sfont_at.
15820
15821 * xdisp.c (it_props): Move the entry for Qauto_composed to just
15822 before the entry for Qcomposition.
15823 (handle_auto_composed_prop): Call auto-composition-function with 4 args.
15824 (handle_composition_prop) [USE_FONT_BACKEND]: Set it->face_id from
15825 the font in gstring.
15826 (fill_composite_glyph_string) [USE_FONT_BACKEND]: Check
15827 LGLYPH_FORM (g) to detect the end of valid glyph.
15828 (x_produce_glyphs) [USE_FONT_BACKEND]: Don't update it->face_id if
15829 we are composing with gstring.
15830
15831 * xterm.c (x_draw_composite_glyph_string_foreground) [USE_FONT_BACKEND]:
15832 Check if adjustment is vector or not.
15833
15834 * Makefile.in (font.o): Make it depends on window.h.
15835
158362008-02-01 Kenichi Handa <handa@m17n.org>
15837
15838 * xterm.c (x_draw_composite_glyph_string_foreground): Check if
15839 adjustment is vector or not.
15840
158412008-02-01 Miles Bader <miles@gnu.org>
15842
15843 * character.h (CHECK_CHARACTER): Redefine in terms of CHECK_TYPE.
15844
158452008-02-01 Kenichi Handa <handa@m17n.org>
15846
15847 * font.h (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WIDTH, LGLYPH_WADJUST)
15848 (LGLYPH_SET_WIDTH): Adjusted for the change of LGLYPH format.
15849 (LGLYPH_ADJUSTMENT, LGLYPH_SET_ADJUSTMENT): New macros.
15850
15851 * font.c (font_merge_old_spec): Treat '*' in foundry as a wild card.
15852 (DEVICE_DELTA): Fix typo.
15853 (font_otf_gpos, font_prepare_compositio): Adjust for the change of
15854 LGLYPH format.
15855
15856 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
15857 the change of LGLYPH format.
15858
158592008-02-01 Kenichi Handa <handa@m17n.org>
15860
15861 * ftfont.c (ftfont_list): Fix typo.
15862 (ftfont_build_basic_charsets): Don't include letters with diacritics.
15863
158642008-02-01 Jan Djärv <jan.h.d@swipnet.se>
15865
15866 * xfaces.c (realize_non_ascii_face): Set face->extra to NULL.
15867
15868 * xftfont.c (xftfont_done_face): Call XftDrawDestroy only if
15869 xftface_info is non-NULL.
15870
158712008-02-01 Jan Djärv <jan.h.d@swipnet.se>
15872
15873 * ftfont.c (ftfont_list): Move misplaced #endif.
15874
158752008-02-01 Kenichi Handa <handa@m17n.org>
15876
15877 * ftfont.c (ftfont_list): Pay attention to the case that
15878 FC_CAPABILITY is not defined.
15879
158802008-02-01 Kenichi Handa <handa@m17n.org>
15881
15882 * xftfont.c (xftfont_open): Set charset related members to -1.
15883
15884 * ftfont.c (ftfont_list): Handle QCotf property. Fix handling of
15885 QCname.
15886 (ftfont_open): Set charset related members to -1.
15887
15888 * fontset.c (Votf_script_alist): New variable.
15889 (syms_of_fontset): Initialize it.
15890 (fontset_font): Delete unused variable.
15891
15892 * fontset.h (Votf_script_alist): Extern it.
15893
15894 * font.c (font_find_for_lface): Optimize code.
15895
15896 * font.h (font_close_object, font_merge_old_spec): Extern them.
15897
158982008-02-01 Kenichi Handa <handa@m17n.org>
15899
15900 * font.c (QCscalable, Qc, Qm, Qp, Qd): New variables.
15901 (syms_of_font): Initialize them.
15902 (font_pixel_size): Allow float value in dpi.
15903 (font_prop_validate_type): Delete.
15904 (font_prop_validate_symbol, font_prop_validate_style): Change argument.
15905 Change caller.
15906 (font_prop_validate_non_neg): Rename from font_prop_validate_size.
15907 (font_prop_validate_extra): Delete.
15908 (font_prop_validate_spacing): New function.
15909 (font_property_table): Add elements for all known properties.
15910 (get_font_prop_index): Rename from check_font_prop_name. New
15911 argument FROM. Change caller.
15912 (font_prop_validate): Validate all known properties.
15913 (font_put_extra): Delete argument force. Change caller.
15914 (font_expand_wildcards): Make it static. Fix the way of shrinking
15915 the possible range.
15916 (font_parse_xlfd): Delete argument merge. Fix handling of RESX,
15917 RESY, SPACING, and AVGWIDTH. Don't validate property values here.
15918 Change caller.
15919 (font_unparse_xlfd): Handle dpi, spacing, and scalable properties.
15920 (font_parse_fcname): Delete argument merge. Fix parsing of point
15921 size. Don't validate properties values here. Change caller.
15922 (font_unparse_fcname): Handle dpi, spacing, and scalable properties.
15923 (font_open_by_name): Delete unused variable.
15924 (Ffont_spec): Likewise. Validate property values.
15925 (Ffont_match_p): New function.
15926
15927 * font.h (QCscalable): Extern it.
15928 (font_parse_xlfd, font_parse_fcname): Adjust prototype.
15929
15930 * ftfont.c (ftfont_list): Handle properties dpi, spacing, and scalable.
15931
15932 * xfont.c (xfont_query_font): Adjust for the change of font_parse_xlfd.
15933 (xfont_list_pattern): New function.
15934 (xfont_list): Use xfont_list_pattern.
15935
159362008-02-01 Kenichi Handa <handa@m17n.org>
15937
15938 * font.h (Flist_fonts): EXFUN it.
15939
159402008-02-01 Jason Rumney <jasonr@gnu.org>
15941
15942 * w32term.c (w32_initialize): Add back smoothing_type and
15943 smoothing_enabled definitions.
15944
159452008-02-01 Kenichi Handa <handa@m17n.org>
15946
15947 * xterm.c (x_draw_glyph_string) [USE_FONT_BACKEND]: Check
15948 s->face->font on determining underline position.
15949
159502008-02-01 Kenichi Handa <handa@m17n.org>
15951
15952 * font.c (font_parse_xlfd): Fix generating of CHARSET_REGISTRY field.
15953 (font_has_char): Accept font-object too.
15954 (font_find_for_lface): Try at first with a size specified in face.
15955
159562008-02-01 Kenichi Handa <handa@m17n.org>
15957
15958 * frame.c (x_set_font) [USE_FONT_BACKEND]: Fix argument to
15959 font_open_by_name.
15960
159612008-02-01 Kenichi Handa <handa@m17n.org>
15962
15963 * font.h (QCspacing, QCdpi): Extern them.
15964 (enum font_spacing): New enum.
15965 (FONT_PIXEL_SIZE_QUANTUM): New macro.
15966
15967 * font.c (POINT_TO_PIXEL): Don't divide POINT by 10.
15968 (QCspacing, QCdpi): New variables.
15969 (syms_of_font): Initialize them.
15970 (font_pixel_size): New function.
15971 (font_put_extra): New function.
15972 (font_parse_xlfd): Fix handling of font size. Add QCdpi property
15973 in FONT_EXTRA.
15974 (font_parse_fcname): Handle enumerated values (e.g. bold).
15975 Fix handling font size. Add QCname property that contains only
15976 unknown properties.
15977 (font_score): Change argument. Change caller. Pay attention to
15978 FONT_PIXEL_SIZE_QUANTUM.
15979 (font_sort_entites, font_list_entities, font_find_for_lface)
15980 (font_open_for_lface, font_open_by_name): Fix handling of font size.
15981 (Ffont_spec): Add QCname property that contains only unknown properties.
15982
15983 * ftfont.c (ftfont_list): Use assq_no_quit, not Fassq. Don't
15984 include weight in listing pattern, instead check weight of each
15985 listed font. Don't include scalable in pattern. Pay attention to
15986 FONT_PIXEL_SIZE_QUANTUM.
15987
159882008-02-01 Kenichi Handa <handa@m17n.org>
15989
15990 * font.c (font_parse_fcname): Fix parsing of point-size.
15991 (font_unparse_fcname): Produce symbolic names for style properties.
15992 (font_list_entities): Handle float size correctly.
15993 (font_open_by_name): Prefer `normal' property values if the name
15994 doesn't specify them.
15995
15996 * fontset.c (Finternal_char_font): Use font_get_name, not
15997 Ffont_xlfd_name.
15998
15999 * ftfont.c (ftfont_pattern_entity): Use the numeric value 100 for
16000 FC_WEIGHT_REGULAR. Exclude FC_SIZE and FC_PIXEL_SIZE from listing
16001 pattern. Don't force scalable.
16002
16003 * xftfont.c (xftfont_open): For generating a name, start from
16004 96-byte buffer.
16005
160062008-02-01 Jan Djärv <jan.h.d@swipnet.se>
16007
16008 * frame.h (x_new_fontset2): Fix prototype.
16009
160102008-02-01 Kenichi Handa <handa@m17n.org>
16011
16012 * font.h (struct font_driver): Delete member parse_name.
16013 (font_match_p, font_get_spec, font_parse_fcname)
16014 (font_unparse_fcname): Extern them.
16015 (font_get_name): Adjust prototype.
16016
16017 * font.c (XLFD_SMALLNUM_MASK): Delete this macro.
16018 (XLFD_LARGENUM_MASK): Delete XLFD_ENCODING_MASK from it.
16019 (font_expand_wildcards): Fix handling ENCODING field. Avoid
16020 unnecessary checks for weight, slant, and swidth.
16021 (font_parse_fcname): New function.
16022 (font_unparse_fcname): New function.
16023 (font_parse_name): New function.
16024 (font_match_p): New function.
16025 (font_get_name): Change return value to Lisp string.
16026 (font_get_spec): New function.
16027 (Qunspecified, Qignore_defface): Don't extern them.
16028 (font_find_for_lface): Assume that LFACE is fully specified.
16029 (font_load_for_face): If lface[LFACE_FONT_INDEX] is an font
16030 object, use it for FACE.
16031 (font_open_by_name): Call Ffont_spec with QCname prop. Don't call
16032 driver->parse_name.
16033 (Ffont_spec): Call font_parse_name, not font_parse_xlfd.
16034
16035 * fontset.h (new_fontset_from_font) [USE_FONT_BACKEND]: Adjust
16036 prototype.
16037
16038 * fontset.c (new_fontset_from_font) [USE_FONT_BACKEND]: Delete
16039 argument F. Don't call Fnew_fontset. Instead, directly call
16040 make_fontset.
16041
16042 * frame.h (x_new_fontset2) [USE_FONT_BACKEND]: Adjust prototype.
16043
16044 * frame.c (x_set_font) [USE_FONT_BACKEND]: Adjust for the change
16045 of x_new_fontset2.
16046
16047 * ftfont.c (Qmonospace, Qsans_serif, Qserif, Qmono, Qsans)
16048 (Qsans__serif): New variables.
16049 (ftfont_generic_family_list): New variable.
16050 (syms_of_ftfont): Initialize the above variables.
16051 (ftfont_pattern_entity): Delete argument NAME.
16052 (ftfont_list_generic_family): New function.
16053 (ftfont_parse_name): Delete this function.
16054 (ftfont_list): Try generic family only when FcFontList found no font.
16055 (ftfont_list_family): Fix args to FcObjectSetBuild.
16056
16057 * xfaces.c (check_lface_attrs) [USE_FONT_BACKEND]: Accept font
16058 object in attrs[LFACE_FONT_INDEX].
16059 (set_lface_from_font_name): Cancel all changes for font-backend.
16060 (set_lface_from_font_and_fontset) [USE_FONT_BACKEND]: New
16061 function.
16062 (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]: Accept a
16063 font object in QCfont attribute.
16064 (set_font_frame_param) [USE_FONT_BACKEND]: Likewise.
16065 (realize_default_face) [USE_FONT_BACKEND]: Call
16066 set_lface_from_font_and_fontset.
16067
16068 * xfns.c (x_default_font_parameter) [USE_FONT_BACKEND]: Try also
16069 "fixed", and signal error here if no suitable font was found.
16070
16071 * xfont.c (xfont_parse_name): Delete this function.
16072
16073 * xftfont.c (xftfont_open): Change coding style of error
16074 handling. Generate fontconfig's fontname pattern.
16075
16076 * xterm.h (struct x_output) [USE_FONT_BACKEND]: New member fontp.
16077 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro.
16078
16079 * xterm.c (x_new_fontset2) [USE_FONT_BACKEND]: Change arguments.
16080 Both args FONTSET and FONT_OBJECT must be existing ones.
16081
160822008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16083
16084 * macterm.c (mac_set_unicode_keystroke_event): Don't use MAKE_CHAR.
16085
160862008-02-01 Kenichi Handa <handa@m17n.org>
16087
16088 * xfont.c (xfont_open, xfont_encode_char): Fix typo.
16089
16090 * font.h (struct font): Fix typo.
16091
16092 * font.c (enum xlfd_field_index): Rename XLFD_XXX_SIZE_INDEX to
16093 XLFD_XXX_INDEX.
16094 (enum xlfd_field_mask): New enum.
16095 (intern_font_field): Changed argument. Change caller. If digits
16096 are followed by non-digits, return a symbol.
16097 (font_expand_wildcards): New function.
16098 (font_parse_xlfd): Fix wildcard handling.
16099 (Ffont_spec): If :name is specified, reflect the info in the other
16100 properties.
16101
16102 * ftfont.c (ftfont_pattern_entity): Fix typo.
16103 (ftfont_list): Enforce FC_LANG in PATTERN to cancel the effect of
16104 locale.
16105
161062008-02-01 Kenichi Handa <handa@m17n.org>
16107
16108 * font.h (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Extern them.
16109
16110 * font.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move from ftfont.c.
16111 (font_unparse_xlfd): Fix argument type declaration. Append "*" if
16112 registry doesn't specify encoding part.
16113 (font_find_for_lface): Pay attention to LFACE_FONT_INDEX.
16114 (font_open_by_name): At first try parsing the name.
16115 (syms_of_font): Declare Qiso8859_1, Qiso10646_1, and Qunicode_bmp
16116 as Lisp symbols.
16117
16118 * fontset.c (reorder_font_vector): Pay attention to the case that
16119 the 3rd element of font_def is nil.
16120 (fontset_font): For the default fontset, append one more fontset
16121 elements for a script-based font specification. Don't add script
16122 attribute on finding a font.
16123 (new_fontset_from_font): Unconditionally set FONTSET_ASCII to the
16124 font name.
16125 (fontset_ascii_font): If a font can't be opened, return nil.
16126
16127 * ftfont.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move to font.c.
16128 (ftfont_pattern_entity): New function.
16129 (ftfont_get_cache): Assume that freetype_font_cache is already
16130 initialized.
16131 (ftfont_list): Handle the case that a file is specified in font
16132 name. Use ftfont_pattern_entity to generate entities.
16133 (ftfont_has_char): Check if the pattern contains FC_CHARSET.
16134 (syms_of_ftfont): Initialize freetype_font_cache.
16135
16136 * xftfont.c (xftfont_open): Make the font name fontconfig's
16137 style. Add BLOCK_INPUT and UNBLOCK_INPUT.
16138 (xftfont_close): Free font->font.name if not NULL.
16139
16140 * xfont.c (xfont_list): If script is specified for a font, return
16141 null_vector.
16142 (xfont_list_family): Declare argument type.
16143
16144 * xfaces.c (set_lface_from_font_name): If a font doesn't have a
16145 name, set LFACE_FONT (lface) to nil.
16146
16147 * xterm.c (x_new_fontset2): If an ASCII font couldn't be loaded,
16148 return Qnil.
16149
161502008-02-01 Kenichi Handa <handa@m17n.org>
16151
16152 * emacs.c (main): Check -enable-font-backend arg after the check of -nl.
16153 (standard_args): Add "-enable-font-backend".
16154
161552008-02-01 Kenichi Handa <handa@m17n.org>
16156
16157 * xftfont.c (xftfont_default_fid): Set fid_known to 1.
16158 (struct xftdraw_list, xftdraw_list): Delete them.
16159 (register_xftdraw, check_xftdraw): Delete them.
16160 (xftfont_prepare_face): Don't call register_xftdraw.
16161 (xftfont_done_face): Don't call check_xftdraw.
16162 (xftfont_draw): Get background color only when with_background is
16163 nonzero.
16164
16165 * xfont.c (xfont_encode_char): Fix calculation of char2b.
16166
161672008-02-01 Kenichi Handa <handa@m17n.org>
16168
16169 These changes are for the new font handling codes.
16170
16171 * Makefile.in (ALL_CFLAGS): Add @FREETYPE_CFLAGS@,
16172 @FONTCONFIG_CFLAGS@, and @LIBOTF_CFLAGS@.
16173 (LIB_X11_LIB): If HAVE_XFT is defined, set to @XFT_LIBS@.
16174 (FONTSRC, FONTOBJ): New variables.
16175 (obj): Add $(FONTOBJ).
16176 (SOME_MACHINE_OBJECTS): Lib_X11_Lib.
16177 (LIBES): Add @FREETYPE_LIBS@, @FONTCONFIG_LIBS@, and
16178 @LIBOTF_LIBS@.
16179 (font.o, ftfont.o, xfont.o, xftfont.o, ftxfont.o): New targets.
16180 (fontset.o, xdisp.o, xfaces.o, xfns.o, xterm.o): Depend on $(FONTSRC).
16181
16182 * font.h, font.c, xfont.c, ftfont.c, xftfont.c, ftxfont.c: New files.
16183
16184 * character.h (Vscript_representative_chars): Extern it.
16185
16186 * character.c (Vscript_representative_chars): New variable.
16187 (syms_of_character): Declare it as a Lisp variable.
16188
16189 * composite.c (get_composition_id) [USE_FONT_BACKEND]: If
16190 enable_font_backend is nonzero, accept the composition method
16191 COMPOSITION_WITH_GLYPH_STRING.
16192
16193 * composite.h (enum composition_method) [USE_FONT_BACKEND]: New
16194 enumeration COMPOSITION_WITH_GLYPH_STRING.
16195
16196 * dispextern.h (struct glyph_string) [USE_FONT_BACKEND]: New
16197 members clip_x, clip_y, clip_width, and clip_height.
16198 (struct face) [USE_FONT_BACKEND]: New members font_info and extra.
16199
16200 * emacs.c (main) [USE_FONT_BACKEND]: Handle arg
16201 --enable-font-backend. Call syms_of_font.
16202
16203 * fns.c (assoc_no_quit): New function.
16204
16205 * fontset.h (FONT_INFO_FROM_FACE): New macro.
16206 (face_for_font, new_fontset_from_font)
16207 (fontset_ascii_font) [USE_FONT_BACKEND]: Extern them.
16208
16209 * fontset.c [USE_FONT_BACKEND]: Include "font.h".
16210 (fontset_font, fontset_ascii, face_for_char)
16211 (make_fontset_for_ascii_face, Ffont_info)
16212 (Finternal_char_font) [USE_FONT_BACKEND]: If enable_font_backend
16213 is nonzero, use font-backend mechanism.
16214 (find_font_encoding): Make it non-static.
16215 (new_fontset_from_font, fontset_ascii_font) [USE_FONT_BACKEND]:
16216 New functions.
16217
16218 * frame.h (struct frame): New members resx and resy.
16219 (struct frame) [USE_FONT_BACKEND]: New member font_driver_list.
16220 (x_new_fontset2) [USE_FONT_BACKEND]: Extern it.
16221
16222 * frame.c [USE_FONT_BACKEND]: Include "font.h".
16223 (make_frame, x_set_font) [USE_FONT_BACKEND]: Use font-backend mechanism.
16224
16225 * lisp.h (assoc_no_quit): Extern it.
16226
16227 * xdisp.c: If USE_FONT_BACKEND is defined, include "font.h".
16228 Through out the file, use FONT_INFO_FROM_FACE instead of
16229 FONT_INFO_FROM_ID, use get_per_char_metric instead of
16230 rif->per_char_metric.
16231 (handle_composition_prop) [USE_FONT_BACKEND]: If the composition
16232 method is COMPOSITION_WITH_GLYPH_STRING, just set it->c to ' '.
16233 (get_glyph_face_and_encoding, fill_composite_glyph_string)
16234 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
16235 (x_produce_glyphs) [USE_FONT_BACKEND]: If enable_font_backend is
16236 nonzero, use font-backend mechanism.
16237 (get_per_char_metric): New function.
16238
16239 * xfaces.c [USE_FONT_BACKEND]: Include "font.h".
16240 (set_lface_from_font_name)
16241 (set_font_frame_param, free_realized_face)
16242 (prepare_face_for_display, clear_face_gcs)
16243 (Finternal_set_font_selection_order, realize_x_face)
16244 [USE_FONT_BACKEND]: If enable_font_backend is nonzero, use
16245 font-backend mechanism.
16246 (clear_face_cache) [USE_FONT_BACKEND]: Don't call clear_font_table.
16247 (load_face_font) [USE_FONT_BACKEND]: Abort.
16248 (face_symbolic_value, face_symbolic_weight, face_symbolic_slant)
16249 (face_symbolic_swidth, face_for_font) [USE_FONT_BACKEND]: New functions.
16250
16251 * xfns.c [USE_FONT_BACKEND]: Include "font.h".
16252 (x_default_font_parameter) [USE_FONT_BACKEND]: New function.
16253 (Fx_create_frame) [USE_FONT_BACKEND]: If enable_font_backend is
16254 nonzero, register all available font drivers. Call
16255 x_default_font_parameter for deciding a font.
16256 (x_create_tip_frame) [USE_FONT_BACKEND]: Likewise.
16257
16258 * xterm.c [USE_FONT_BACKEND]: Include "font.h".
16259 (x_set_mouse_face_gc, x_set_glyph_string_clipping)
16260 (x_set_glyph_string_clipping_exactly)
16261 (x_compute_glyph_string_overhangs)
16262 (x_draw_glyph_string_foreground)
16263 (x_draw_composite_glyph_string_foreground, x_draw_glyph_string)
16264 (x_free_frame_resources) [USE_FONT_BACKEND]: If
16265 enable_font_backend is nonzero, use font-backend mechanism.
16266 (x_new_fontset2) [USE_FONT_BACKEND]: New function.
16267
162682008-02-01 Kenichi Handa <handa@m17n.org>
16269
16270 * coding.c (coding_inherit_eol_type): If PARENT is nil, inherit from
16271 system_eol_type.
16272 (syms_of_coding): Initialize system_eol_type.
16273
16274 * process.c (Fset_process_coding_system): Inherit system's eol
16275 format if necessary.
16276
162772008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16278
16279 * macgui.h (USE_ATSUI): Don't enable on emacs-unicode-2 branch.
16280
162812008-02-01 Kenichi Handa <handa@m17n.org>
16282
16283 * coding.c (decode_eol): Pay attention to buffer relocation in
16284 del_range_2.
16285 (decode_coding): Call decode_eol before restoring undo_list.
16286
162872008-02-01 Kenichi Handa <handa@m17n.org>
16288
16289 * charset.c (Fdefine_charset_internal): Fix setting of
16290 emacs_mule_bytes.
16291
162922008-02-01 Kenichi Handa <handa@m17n.org>
16293
16294 * keyboard.c (read_char): Check if C is a character or not before
16295 looking up Vkeyboard_translate_table.
16296
162972008-02-01 Kenichi Handa <handa@m17n.org>
16298
16299 * coding.c (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Fix
16300 condition to terminate the loop.
16301
163022008-02-01 Kenichi Handa <handa@m17n.org>
16303
16304 * coding.c (produce_composition): Compare charbuf[i] instead of
16305 args[i] against 0.
16306 (Fterminal_coding_system): Use EQ to compare Lisp objects.
16307
163082008-02-01 Kenichi Handa <handa@m17n.org>
16309
16310 * coding.c (DECODE_COMPOSITION_START): If the source is short, set
16311 coding->result to CODING_RESULT_INSUFFICIENT_SRC.
16312 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK after the call of
16313 detect_coding.
16314 (emacs_mule_char): Handle old style (Emacs 20) component character
16315 of a composition.
16316 (DECODE_EMACS_MULE_COMPOSITION_RULE_20)
16317 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Fix parsing a
16318 composition rule.
16319 (decode_coding_emacs_mule): Handle invalid bytes correctly.
16320
163212008-02-01 Kenichi Handa <handa@m17n.org>
16322
16323 * coding.c (encode_coding_ccl): Allocate destination dynamically
16324 when necessary.
16325
163262008-02-01 Kenichi Handa <handa@m17n.org>
16327
16328 * ccl.c (Fccl_execute_on_string): Fix the condition of terminating
16329 the loop. When quitted, show a proper error message.
16330
163312008-02-01 Kenichi Handa <handa@m17n.org>
16332
16333 * xterm.c (x_set_glyph_string_clipping_exactly): Set
16334 src->clip_head and src->clip_tail temporarily instead of src->hl.
16335
16336 * ccl.c (CCL_WRITE_STRING): Handle a flag bit for multibyte
16337 character sequence.
16338 (Fccl_execute_on_string): Use ASET, not XSET.
16339
163402008-02-01 Kenichi Handa <handa@m17n.org>
16341
16342 * search.c (search_buffer): Fix handling of "\\" in a trivial regexp.
16343
163442008-02-01 Kenichi Handa <handa@m17n.org>
16345
16346 * coding.c (decode_coding): Fix the condition of terminating the
16347 decoding loop.
16348
163492008-02-01 Kenichi Handa <handa@m17n.org>
16350
16351 * data.c (Faset): On setting a character bigger than 255 in a
16352 unibyte string, signal an error instead of make the string multibyte.
16353
163542008-02-01 Kenichi Handa <handa@m17n.org>
16355
16356 * charset.c (map_charset_chars): Fix for ascii-compatible charset
16357 made by a mapping table.
16358
163592008-02-01 Kenichi Handa <handa@m17n.org>
16360
16361 * xdisp.c (fill_composite_glyph_string): Check s->face is NULL or
16362 not.
16363 (BUILD_COMPOSITE_GLYPH_STRING): If C is TAB, set s->face to NULL.
16364 (x_produce_glyphs): If CH is TAB, set cmp->offsets properly.
16365
16366 * xterm.c (x_draw_composite_glyph_string_foreground): Check
16367 s->face is NULL or not.
16368
163692008-02-01 Kenichi Handa <handa@m17n.org>
16370
16371 * xterm.c (x_set_glyph_string_clipping_exactly): New function.
16372 (x_draw_glyph_string): Fix drawing of right_overhang and
16373 left_overhang around/on cursor.
16374
16375 * xdisp.c (draw_glyphs): Fix inclusion of right_overwriting glyphs.
16376
163772008-02-01 Kenichi Handa <handa@m17n.org>
16378
16379 * xdisp.c (x_produce_glyphs): Handle composition with TAB.
16380
163812008-02-01 Kenichi Handa <handa@m17n.org>
16382
16383 * coding.c (Fdefine_coding_system_internal)
16384 (Fdefine_coding_system_alias): Avoid a duplicated element in
16385 Vcoding_system_alist.
16386
163872008-02-01 Kenichi Handa <handa@m17n.org>
16388
16389 * xterm.c (handle_one_xevent): Handle keysyms 0x1000000..0x10000FF.
16390
16391 * coding.c (Qcoding_system_define_form): New variable.
16392 (syms_of_coding): Intern and staticpro it.
16393 (Fcoding_system_p): Check Qcoding_system_define_form.
16394 (Fcheck_coding_system): Try to autoload the definition of CODING-SYSTEM.
16395
16396 * coding.h (CODING_SYSTEM_P): If ID is not available, call
16397 Fcoding_system_p.
16398 (CHECK_CODING_SYSTEM): If ID is not available, call
16399 Fcheck_coding_system.
16400 (CHECK_CODING_SYSTEM_GET_SPEC, CHECK_CODING_SYSTEM_GET_ID):
16401 Try also Fcheck_coding_system.
16402
164032008-02-01 Kenichi Handa <handa@m17n.org>
16404
16405 * coding.c (code_conversion_restore): GCPRO arg.
16406
164072008-02-01 Kenichi Handa <handa@m17n.org>
16408
16409 * character.c (lisp_string_width): Check multibyteness of STRING.
16410
164112008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16412
16413 * macterm.c (mac_encode_char): Call ccl_driver with the last arg
16414 Qnil. Use JIS_TO_SJIS instead of ENCODE_SJIS.
16415 (decode_mac_font_name): Use decode_coding_c_string instead of
16416 decode_coding.
16417 (x_load_font): Initialize fontp->fontset to -1. Set
16418 fontp->encoding_type.
16419
164202008-02-01 Kenichi Handa <handa@m17n.org>
16421
16422 * search.c (search_buffer): Give up BM search on case-fold-search
16423 if one of a target character has a case-equivalence of different
16424 byte length even if that target charcter is an ASCII.
16425 (simple_search): Fix calculation of byte length of matched text.
16426 (boyer_moore): Fix handling of case-equivalent multibyte characters.
16427
164282008-02-01 Kenichi Handa <handa@m17n.org>
16429
16430 * coding.c (decode_coding): Fix handling of invalid bytes.
16431
164322008-02-01 Kenichi Handa <handa@m17n.org>
16433
16434 * xterm.c (handle_one_xevent): Handle keysyms directly mapped to
16435 Unicode characters.
16436
164372008-02-01 Kenichi Handa <handa@m17n.org>
16438
16439 * coding.c (encode_coding_object): If a pre-write-conversion
16440 function makes a new buffer, kill it.
16441
164422008-02-01 Kenichi Handa <handa@m17n.org>
16443
16444 * coding.c (QCascii_compatible_p): New variable.
16445 (syms_of_coding): Initialize it.
16446 (ONE_MORE_BYTE, ONE_MORE_BYTE_NO_CHECK): Decrement `src' before
16447 calling string_char.
16448 (record_conversion_result): Add `default:' case.
16449 (coding_charset_list): Delete unused variable `coding_type'.
16450 (Fdefine_coding_system_internal): Add `ascii-compatible-p'
16451 property in the plist of the coding system.
16452 (Fcoding_system_put): Check QCascii_compatible_p.
16453
164542008-02-01 Miles Bader <miles@gnu.org>
16455
16456 * xfaces.c (Finternal_lisp_face_equal_p): Restore previously
16457 removed calculation of frame `f', as it's now used.
16458
164592008-02-01 Kenichi Handa <handa@m17n.org>
16460
16461 * Makefile.in (RUN_TEMACS): Include "-nl" if HAVE_SHM is defined.
16462 (emacs${EXEEXT}): Run $(RUN_TEMACS) unconditionally.
16463 (UNIDATA): New variable.
16464 (${lispsource}international/charprop.el): Depends on ${UNIDATA}.
16465 (bootstrap-emacs${EXEEXT}): Depends on charprop.el. Run
16466 $(RUN_TEMACS) unconditionally.
16467
164682008-02-01 Kenichi Handa <handa@m17n.org>
16469
16470 * Makefile.in (temacs${EXEEXT}): Build charprop.el if necessary.
16471 (admindir): New variable.
16472 ($(lispsource)international/charprop.el): New target.
16473
164742008-02-01 Miles Bader <miles@gnu.org>
16475
16476 * character.c (chars-in-region): Remove obsolete function.
16477 (syms_of_character): Remove its initialization.
16478
164792008-02-01 Benjamin Riefenstahl <b.riefenstahl@turtle-trading.net>
16480
16481 * w32select.c (validate_coding_system)
16482 (setup_windows_coding_system): New functions.
16483 (convert_to_handle_as_coded, Fw32_get_clipboard_data): Use
16484 setup_windows_coding_system.
16485 (setup_config, Fw32_get_clipboard_data): Use
16486 validate_coding_system.
16487 (Fx_selection_exists): Move call to setup_config to a place
16488 where signals are allowed.
16489
16490 * lisp.h (Fcoding_system_base, Fcoding_system_eol_type)
16491 (Fcheck_coding_system): Add declarations.
16492
164932008-02-01 Kenichi Handa <handa@m17n.org>
16494
16495 * charset.c (load_charset_map_from_vector): Fix for the first iteration.
16496
164972008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16498
16499 * macfns.c (Fx_create_frame, x_create_tip_frame): Pass Lisp
16500 string as the second argument for x_new_fontset.
16501
165022008-02-01 Kenichi Handa <handa@m17n.org>
16503
16504 * coding.c (decode_coding_object): Use safe_call1 instead of call1.
16505 (encode_coding_object): Use safe_call instead of call2.
16506
165072008-02-01 Kenichi Handa <handa@m17n.org>
16508
16509 * fontset.c (Fset_fontset_font): Check family element of a given vector.
16510
16511 * Makefile.in (lisp): Include charprop.el.
16512
165132008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16514
16515 * macfns.c (Fx_create_frame, x_create_tip_frame): Fix crash.
16516 Not sure if it's unnecessary.
16517
165182008-02-01 Steven Tamm <steventamm@mac.com>
16519
16520 * macfns.c (Fx_create_frame, x_create_tip_frame): ifdef'd out
16521 some possibly unnecessary fontset checking code that crashed
16522 when creating a new frame.
16523
165242008-02-01 Kenichi Handa <handa@m17n.org>
16525
16526 * xfaces.c (merge_faces): Fix argument to lookup_derived_face and
16527 lookup_face.
16528
16529 * xdisp.c (Fformat_mode_line): Fix argument to lookup_named_face.
16530
16531 * fringe.c (draw_fringe_bitmap_1): Fix argument to lookup_named_face.
16532
165332008-02-01 Kenichi Handa <handa@m17n.org>
16534
16535 * coding.c: Cancel the change done in HEAD on 2008-02-01.
16536 (coding_charset_list): New function.
16537
16538 * coding.h (coding_charset_list): Extern it.
16539
165402008-02-01 Kenichi Handa <handa@m17n.org>
16541
16542 * fontset.c (Fset_fontset_font): Call find_font_encoding with
16543 concatenation of family and registry.
16544
165452008-02-01 Kenichi Handa <handa@m17n.org>
16546
16547 * character.h (BYTE8_STRING): Fix typo.
16548
16549 * editfns.c (Ftranslate_region_internal): Don't convert unibyte
16550 string to multibyte (sync to HEAD).
16551
16552 * casefiddle.c (casify_region): Handle changes in byte-length
16553 using replace_range_2 (sync to HEAD).
16554
165552008-02-01 Andreas Schwab <schwab@suse.de>
16556
16557 * chartab.c (map_char_table): GCPRO table and arg.
16558
165592008-02-01 Kenichi Handa <handa@m17n.org>
16560
16561 * syntax.c (skip_syntaxes): Return lispy 0 (not nil) if point is
16562 already at limit.
16563
165642008-02-01 Kenichi Handa <handa@m17n.org>
16565
16566 * fontset.c (fs_load_font): Use fast_string_match_ignore_case
16567 instead of fast_c_string_match_ignore_case.
16568 (find_font_encoding): Change argument to Lisp_Object. Use
16569 fast_string_match_ignore_case instead of
16570 fast_c_string_match_ignore_case. Change caller.
16571
165722008-02-01 Kenichi Handa <handa@m17n.org>
16573
16574 * xdisp.c (get_next_display_element): In unibyte case, decide to
16575 display in octal form by checking a character by
16576 UNIBYTE_CHAR_HAS_MULTIBYTE_P.
16577
16578 * charset.c (Fset_unibyte_charset): Setup unibyte_has_multibyte_table.
16579
16580 * character.c (unibyte_has_multibyte_table): New variable.
16581
16582 * character.h (unibyte_has_multibyte_table): Extern it.
16583 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): New macro.
16584
165852008-02-01 Kenichi Handa <handa@m17n.org>
16586
16587 * coding.c (encode_coding_iso_2022): Fix handling of charset
16588 annotation.
16589
165902008-02-01 Kenichi Handa <handa@m17n.org>
16591
16592 * coding.c (setup_coding_system): If coding_system is nil, use
16593 Qundecided.
16594 (Fterminal_coding_system): Return nil if terminal coding system is
16595 `undecided'.
16596 (syms_of_coding): Define coding-system `undecided' here. Setup
16597 terminal_coding as `undecided'.
16598
165992008-02-01 Kenichi Handa <handa@m17n.org>
16600
16601 * xdisp.c (message_dolog, set_message_1): Call
16602 unibyte_char_to_multibyte with arg type int.
16603
16604 * lread.c (read1): Fix reading of a char-table.
16605
16606 * print.c (print_object): Include sub char-table in circularities
16607 detection.
16608
166092008-02-01 Kenichi Handa <handa@m17n.org>
16610
16611 * keymap.c (where_is_internal_2): Fix for the case that KEY is a cons.
16612 Append the found sequences in car of ARGS instead of prepending.
16613
166142008-02-01 Kenichi Handa <handa@m17n.org>
16615
16616 * fileio.c (report_file_error): Make a unibyte string from
16617 strerror (errorno).
16618 (Fsubstitute_in_file_name): Fix the arg to
16619 unibyte_char_to_multibyte. It is evaluated twice.
16620
166212008-02-01 Kenichi Handa <handa@m17n.org>
16622
16623 * charset.h (CHAR_CHARSET): Shortcut for ASCII case.
16624
166252008-02-01 Kenichi Handa <handa@m17n.org>
16626
16627 * coding.c (detect_coding_utf_16): Don't set detect_info->found if
16628 BOM is not found.
16629 (detect_coding, detect_coding_system): Optimization for ISO-2022
16630 when no 8-bit data is found.
16631
166322008-02-01 Jason Rumney <jasonr@gnu.org>
16633
16634 * w32fns.c (x_to_w32_font): Update to use new coding struct.
16635
166362008-02-01 Kenichi Handa <handa@m17n.org>
16637
16638 * charset.c (Fdeclare_equiv_charset, Fiso_charset): Fix handing of
16639 CHARS.
16640
166412008-02-01 Steven Tamm <steventamm@mac.com>
16642
16643 * macterm.c (mac_encode_char): Add charset argument and update
16644 to use encoding_type.
16645 (x_new_font, x_new_fontset): Merge in changes from xterm.c;
16646 switch to pure fontset.
16647 (decode_mac_font_name): Temporarily remove decoding.
16648 (x_font_name_to_mac_font_name): Temporarily remove encoding.
16649 (x_load_font): Temporarily remove encoding.
16650
166512008-02-01 Kenichi Handa <handa@m17n.org>
16652
16653 * xfaces.c (Fface_font): If frame is not on a window system,
16654 ignore CHARACTER arg. If HAVE_WINDOW_SYSTEM is not defined, don't
16655 refer to face->font.
16656 (split_font_name_into_vector, build_font_name_from_vector)
16657 (lookup_non_ascii_face, realize_non_ascii_face): Define them only
16658 when HAVE_WINDOW_SYSTEM is defined.
16659
166602008-02-01 Kenichi Handa <handa@m17n.org>
16661
16662 * xdisp.c (BUILD_GLYPH_STRINGS): Check if s is NULL.
16663 (x_produce_glyphs): Fix setting of members of cmp in case
16664 cmp->glyph_len is zero.
16665
16666 * fontset.c (Fset_fontset_font): Fix docstring.
16667 (Ffontset_info): Make it backward compatible. New arg ALL.
16668
166692008-02-01 Kim F. Storm <storm@cua.dk>
16670
16671 * process.c (read_process_output): Grow decoding_buf when needed;
16672 this could cause a crash in allocate_string and compact_small_strings.
16673
166742008-02-01 Kenichi Handa <handa@m17n.org>
16675
16676 * fileio.c (WRITE_BUF_SIZE): Delete this macro.
16677
166782008-02-01 Kenichi Handa <handa@m17n.org>
16679
16680 * coding.c (setup_coding_system): Set coding->common_flags
16681 correctly for raw-text.
16682 (consume_chars): On encoding unibyte text by raw-text, don't check
16683 multibyte form.
16684 (encode_coding): On encoding by raw-text, never use translation tables.
16685
16686 * fileio.c (e_write): Short cut for the case of no encoding.
16687
166882008-02-01 Kenichi Handa <handa@m17n.org>
16689
16690 * coding.c (detect_coding, detect_coding_system): Delete unused
16691 variables.
16692
166932008-02-01 Kenichi Handa <handa@m17n.org>
16694
16695 * coding.c (encode_coding_utf_8): Fix handling of raw-byte char.
16696 (consume_chars): Fix handling of 8-bit bytes in unibyte source.
16697
166982008-02-01 Kenichi Handa <handa@m17n.org>
16699
16700 * coding.c (Ffind_coding_systems_region_internal): Include
16701 raw-text and no-conversion in the result.
16702
167032008-02-01 Kenichi Handa <handa@m17n.org>
16704
16705 * fontset.c (find_font_encoding): Return `ascii' for unknown encoding.
16706 (load_font_get_repertory): Delete unnecessary check of ENCODING of
16707 FONT_DEF.
16708 (font_def_arg, add_arg, from_arg, to_arg): New args.
16709 (set_fontset_font): Change argument.
16710 (Fset_fontset_font): Fix for the case that TARGET is a script
16711 name and charset name.
16712 (new_fontset_from_font_name): Fix argument to Fnew_fontset.
16713
167142008-02-01 Kenichi Handa <handa@m17n.org>
16715
16716 * fontset.c (fontset_font): Rename from fontset_face. Change return
16717 value.
16718 (face_suitable_for_char_p, face_for_char): Adjust for the change
16719 of fontset_font.
16720 (make_fontset_for_ascii_face): Fix setting of the fontset element
16721 for ASCII.
16722 (Finternal_char_font): Use fontset_font instead of FACE_FOR_CHAR
16723 to get a font name.
16724 (Ffontset_info): Adjust for the change of fontset_font.
16725
16726 * coding.c (emacs_mule_char): Check invalid code more rigidly.
16727
16728 * character.h (LEADING_CODE_LATIN_1_MIN)
16729 (LEADING_CODE_LATIN_1_MAX): Delete these macros.
16730
167312008-02-01 Kenichi Handa <handa@m17n.org>
16732
16733 * editfns.c (check_translation): New function.
16734 (Ftranslate_region_internal): Handle M:N mapping.
16735
167362008-02-01 Kenichi Handa <handa@m17n.org>
16737
16738 * xfaces.c (xlfd_point_size): Set font->numeric[XLFD_PIXEL_SIZE].
16739
167402008-02-01 Kenichi Handa <handa@m17n.org>
16741
16742 * coding.c (DECODE_DESIGNATION): Set chars_96 to -1 instead of
16743 goto invalid_code.
16744 (decode_coding_iso_2022): Fix handling of invalid designation.
16745
16746 * fileio.c (Finsert_file_contents): Be sure to call unbind_to
16747 after calling code_conversion_save.
16748
167492008-02-01 Kenichi Handa <handa@m17n.org>
16750
16751 * xdisp.c (handle_auto_composed_prop): Fix Lisp_Object/int mixup.
16752
16753 * print.c (print_prune_string_charset): Fix Lisp_Object/int mixup.
16754
16755 * fontset.c: Include "intervals.h".
16756 (fontset_face): Fix comparing of Lisp_Objects.
16757 (free_face_fontset, new_fontset_from_font_name): Fix
16758 Lisp_Object/int mixup.
16759
16760 * editfns.c (Ftranslate_region_internal): Fix Lisp_Object/int mixup.
16761
16762 * coding.c: Add many prototypes for static functions.
16763 (get_translation_table): Allow max_lookup to be NULL.
16764 (decode_coding, Ffind_coding_systems_region_internal)
16765 (Funencodable_char_position, Fcheck_coding_systems_region): Call
16766 get_translation_table with max_lookup NULL.
16767
167682008-02-01 Kenichi Handa <handa@m17n.org>
16769
16770 * coding.c (get_translation_table): Declare it as Lisp_Object.
16771 (LOOKUP_TRANSLATION_TABLE): New macro.
16772 (produce_chars, consume_chars): Use LOOKUP_TRANSLATION_TABLE
16773 instead of CHAR_TABLE_REF.
16774
167752008-02-01 Kenichi Handa <handa@m17n.org>
16776
16777 * coding.c (MAX_ANNOTATION_LENGTH): Adjust for the change of
16778 annotation data format.
16779 (ADD_ANNOTATION_DATA, ADD_COMPOSITION_DATA, ADD_CHARSET_DATA):
16780 Change arguments FROM and TO to single argument NCHARS. Change caller.
16781 (decode_coding_utf_8, decode_coding_utf_16, decode_coding_emacs_mule)
16782 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
16783 (decode_coding_ccl, decode_coding_charset): Pay attention to
16784 coding->charbuf_used.
16785 (get_translation): New function.
16786 (produce_chars): New arguments translation_table and last_block.
16787 Translate characters here. Return number of carryover chars.
16788 Change caller.
16789 (produce_composition): New argument pos. Change caller.
16790 Adjust for the change of annotation data format.
16791 (produce_charset, produce_annotation): Likewise.
16792 (decode_coding, encode_coding): Don't call translate_chars.
16793 (consume_chars): New arg translation_table. Change caller.
16794 (translate_chars): Delete.
16795 (syms_of_coding): Make translation-table's number of extra slots 2.
16796
167972008-02-01 Kenichi Handa <handa@m17n.org>
16798
16799 * search.c (simple_search): Fix setting this_pos_byte in backward
16800 search.
16801
16802 * coding.c (detect_coding_emacs_mule): Fix counting of encoded
16803 byte sequence.
16804 (detect_coding_ccl): Fix setting of the variable valids.
16805
168062008-02-01 Kenichi Handa <handa@m17n.org>
16807
16808 * xterm.c (x_list_fonts): Fix the detection of an auto-scaled font.
16809
16810 * coding.c (decode_coding_utf_16): Fix handling of surrogate pair.
16811
16812 * editfns.c (Ftranslate_region_internal): Rename from
16813 Ftranslate_region. Accept a char-table in TABLE.
16814 (syms_of_editfns): Defsubr Stranslate_region_internal.
16815
16816 * xfaces.c (set_lface_from_font_name): If a font is specified for
16817 a frame, generate a fontset from the font.
16818 (build_scalable_font_name): If the scalable font is requested for
16819 a specific size, don't change that size.
16820 (try_font_list): Try a scalable font also in the case that a
16821 pattern string is specified.
16822
168232008-02-01 Kenichi Handa <handa@m17n.org>
16824
16825 * xfaces.c (Fface_font): New optional arg CHARACTER.
16826
168272008-02-01 Kenichi Handa <handa@m17n.org>
16828
16829 * charset.h (CHARSET_OFFSET): New macro.
16830
168312008-02-01 Kenichi Handa <handa@m17n.org>
16832
16833 * xterm.c (x_get_font_repertory): Fix for non-Unicode-bmp charset.
16834
16835 * fontset.c (fontset_face): Handle the case that repertory is a
16836 char-table.
16837 (find_font_encoding): Return nil for unknown encoding.
16838 (Fset_fontset_font): Ignore a font of unknown encoding.
16839
168402008-02-01 Kenichi Handa <handa@m17n.org>
16841
16842 * keymap.c (describe_vector): Handle default value of a char table.
16843
16844 * fontset.c (fontset_face): Handle fallback fonts correctly.
16845 (Ffontset_info): Return infomation about fallback fonts.
16846
168472008-02-01 Kenichi Handa <handa@m17n.org>
16848
16849 * fontset.c (FONTSET_DEFAULT): New macro.
16850 (FONTSET_ADD, fontset_add): Handle the case that range is nil.
16851 (Fset_fontset_font): Change the 2nd arg name to TARGET, and handle
16852 the case that it is nil.
16853 (dump_fontset): Call FONTSET_DEFAULT, not FONTSET_FALLBACK.
16854 (syms_of_fontset): Set char-table-extra-slots property of fontset to 9.
16855
16856 * charset.h (CHAR_CHARSET_P): Fix for the case that the method is
16857 subset or superset.
16858
168592008-02-01 Kenichi Handa <handa@m17n.org>
16860
16861 * emacs.c (main): Call init_charset after syms_of_XXX.
16862
16863 * charset.c (Vcharset_map_directory): Delete.
16864 (Vcharset_map_path): New variable.
16865 (load_charset_map_from_file): Use Vcharset_map_path instead.
16866 (init_charset): Initialize Vcharset_map_path.
16867 (syms_of_charset): Delete declaration of "charset-map-directory",
16868 add declaration of "charset-map-path".
16869
168702008-02-01 Kenichi Handa <handa@m17n.org>
16871
16872 * fns.c (string_char_to_byte, string_byte_to_char): Optimize for
16873 ASCII only string.
16874
16875 * fileio.c (Finsert_file_contents): Avoid detecting a code twice.
16876
16877 * coding.c (detect_coding_iso_2022): Fix handling of SS2 and SS3.
16878 (detect_coding, detect_coding_system): Treat '\0' as normal ASCII byte.
16879
168802008-02-01 Kenichi Handa <handa@m17n.org>
16881
16882 * coding.h (SJIS_TO_JIS2, JIS_TO_SJIS2): New macros.
16883
16884 * coding.c (QCmnemonic, QCdefalut_char)
16885 (QCdecode_translation_table, QCencode_translation_table)
16886 (QCpost_read_conversion, QCpre_write_conversion): New variables.
16887 (get_translation_table): Return a list of translation tables if
16888 necessary.
16889 (decode_coding): Call get_translation_table with ENCODEP 0.
16890 (char_encodable_p): If translation_table is non-nil, always call
16891 translate_char.
16892 (Fdefine_coding_system_internal): Accept list of translation
16893 tables as :encode-translation-table and :decode-translation-table.
16894 (Fcoding_system_put): New function.
16895 (syms_of_coding): Declare new symbols. Defsubr
16896 Scoding_system_put.
16897 (decode_coding_sjis, encode_coding_sjis): Handle 4th charset,
16898 typically JISX0212.
16899
16900 * charset.c (map_charset_chars): Fix arg to map_charset_chars in
16901 when the charset is superset type.
16902
16903 * character.c (translate_char): Accept list of translation tables.
16904
169052008-02-01 Kenichi Handa <handa@m17n.org>
16906
16907 * coding.h (enum coding_attr_index): New member coding_attr_trans_tbl.
16908 (CODING_ATTR_TRANS_TBL): New macro.
16909
16910 * coding.c (get_translation_table): New function.
16911 (translate_chars): Fix the bug of skipping annotation data.
16912 (decode_coding, encode_coding): Utilize get_translation_table.
16913 (char_encodable_p, Funencodable_char_position): Translate char if
16914 necessary.
16915 (Ffind_coding_systems_region_internal)
16916 (Fcheck_coding_systems_region): Setup translation table for encode
16917 in a coding system attribute vector in advance.
16918 (Fdefine_coding_system_internal): Allow a symbol as translation
16919 table. For shift-jis type coding system, allow 4th charset.
16920
169212008-02-01 Kenichi Handa <handa@m17n.org>
16922
16923 * coding.c (decode_coding_sjis): Check the first byte rigidly.
16924
16925 * xdisp.c (get_next_display_element): Pass -1 as POS to
16926 FACE_FOR_CHAR if displaying a C-string.
16927
169282008-02-01 Kenichi Handa <handa@m17n.org>
16929
16930 * composite.c (get_composition_id): Handle xoff and yoff in a
16931 composition rule.
16932
16933 * composite.h (COMPOSITION_DECODE_RULE): New arg xoff and yoff.
16934 (struct composition): New member lbearing and rbearing.
16935
16936 * xdisp.c (move_it_to): Optimize for the case (op & MOVE_TO_Y).
16937 (x_get_glyph_overhangs): Handle a composition glyph.
16938 (x_produce_glyphs): Setup lbearing and rbreaing for a composition glyph.
16939
16940 * xterm.c (x_compute_glyph_string_overhangs): Handle also a
16941 composition glyph.
16942
169432008-02-01 Kenichi Handa <handa@m17n.org>
16944
16945 * print.c: Include charset.h.
16946 (Vprint_charset_text_property): New variable.
16947 (Qdefault): Extern it.
16948 (PRINT_STRING_NON_CHARSET_FOUND)
16949 (PRINT_STRING_UNSAFE_CHARSET_FOUND): New macros.
16950 (print_check_string_result): New variable.
16951 (print_check_string_charset_prop): New function.
16952 (print_prune_charset_plist): New variable.
16953 (print_prune_string_charset): New function.
16954 (print_object): Call print_prune_string_charset if
16955 Vprint_charset_text_property is not t.
16956 (print_interval): Print nothing if interval->plist is nil.
16957 (syms_of_print): Declare Vprint_charset_text_property as a lisp
16958 variable. Init and staticpro print_prune_charset_plist.
16959
169602008-02-01 Kenichi Handa <handa@m17n.org>
16961
16962 * fontset.c (new_fontset_from_font_name): Use the specified font
16963 for all characters in the new fontset.
16964
16965 * macterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
16966 OBJECT args.
16967
16968 * xdisp.c (x_produce_glyphs): Call FACE_FOR_CHAR with POS and
16969 OBJECT args for composition too.
16970
16971 * w32term.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
16972 OBJECT args.
16973
169742008-02-01 Kenichi Handa <handa@m17n.org>
16975
16976 * dispextern.h (FACE_FOR_CHAR): New args POS and OBJECT.
16977
16978 * fontset.c (reorder_font_vector): Adjust for the change of
16979 FONT_DEF format.
16980 (fontset_face): New arg id. Change caller.
16981 (face_for_char): New args pos and object.
16982 (make_fontset_for_ascii_face): Adjust for the change of FONT_DEF format.
16983 (fs_query_fontset): Check NAME by Fassoc too.
16984 (Fset_fontset_font): Allow non-XLFD font name.
16985 (Ffontset_info): Adjust for the change of FONT_DEF format.
16986
16987 * fontset.h (face_for_char): Adjust prototype.
16988
16989 * xdisp.c (face_before_or_after_it_pos, get_next_display_element)
16990 (append_space, extend_face_to_end_of_line)
16991 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
16992 (x_produce_glyphs): Call FACE_FOR_CHAR with POS and OBJECT args.
16993
16994 * xfaces.c (compute_char_face): Call FACE_FOR_CHAR with
16995 POS and OBJECT args.
16996
16997 * xterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with
16998 POS and OBJECT args.
16999
170002008-02-01 Jason Rumney <jasonr@gnu.org>
17001
17002 * w32select.c (Fw32_set_clipboard_data): Avoid potential realloc
17003 of GlobalAlloc'ed memory.
17004
170052008-02-01 Kenichi Handa <handa@m17n.org>
17006
17007 * ccl.c (Fccl_execute_on_string): Fix the condition of loop.
17008
17009 * charset.h (charset_table_used): Delete extern.
17010
17011 * charset.c (charset_table_used): Make it static.
17012 (map_charset_chars): Fix args to c_function with.
17013
17014 * chartab.c (map_sub_char_table_for_charset): Fix args to
17015 c_function with.
17016
17017 * coding.h (enum coding_result_code): Delete
17018 CODING_RESULT_INSUFFICIENT_CMP, add CODING_RESULT_INVALID_SRC.
17019
17020 * coding.c (Qinsufficient_source, Qinconsistent_eol)
17021 (Qinvalid_source, Qinterrupted, Qinsufficient_memory): New variables.
17022 (Vlast_code_conversion_error): New variables.
17023 (syms_of_coding): DEFSYM or DEFVAR_LISP them.
17024 (ONE_MORE_BYTE): Record error if any instead of signaling an
17025 error. If non-ASCII multibyte char is found, return the negative
17026 value of the code. All callers changed to check it.
17027 (ONE_MORE_BYTE_NO_CHECK): Likewise.
17028 (record_conversion_result): New function. Change all codes setting
17029 coding->result to call this function.
17030 (detect_coding_utf_8, decode_coding_utf_8)
17031 (detect_coding_emacs_mule, detect_coding_sji, detect_coding_big5):
17032 Don't use the local variable incomplete.
17033 (emacs_mule_char): Change the second arg to `const'.
17034 (decode_coding): Fix of flushing out unprocessed data.
17035 (make_conversion_work_buffer): Fix making of a work buffer.
17036 (decode_coding_object): Return coding->dst_object.
17037
17038 * fontset.c (set_fontset_font): Fix args.
17039
17040 * lisp.h (CHARACTERBITS): Define as 22.
17041
17042 * process.c (send_process): Be sure to set coding->src_multibyte.
17043
17044 * xdisp.c (handle_auto_composed_prop): Fix setting of limit.
17045
170462008-02-01 Kenichi Handa <handa@m17n.org>
17047
17048 * xdisp.c (handle_auto_composed_prop): Give limit to
17049 Fnext_single_char_property_change.
17050
170512008-02-01 Kenichi Handa <handa@m17n.org>
17052
17053 * composite.c (syms_of_composite): Don't make the composition hash
17054 table weak.
17055
17056 * fontset.c (Fset_fontset_font): Fix docstring.
17057
17058 * lisp.h (detect_coding_system): Adjust prototype.
17059
17060 * fileio.c (kill_workbuf_unwind): Delete this function.
17061 (Finsert_file_contents): Adjust the call of detect_coding_system.
17062 Get conversion_buffer by code_conversion_save. Use the macro
17063 CODING_MAY_REQUIRE_DECODING. After decoding, update
17064 coding_system.
17065
17066 * coding.h (make_conversion_work_buffer): Delete extern.
17067 (code_conversion_save): Extern it.
17068
17069 * coding.c (enum iso_code_class_type): Delete ISO_carriage_return.
17070 (CODING_GET_INFO): Delete argument eol_type. Change callers.
17071 (decode_coding_utf_8): Don't do eol converion.
17072 (detect_coding_utf_16): Check coding->src_chars, not
17073 coding->src_bytes. Add heuristics for those that have no signature.
17074 (decode_coding_emacs_mule, decode_coding_iso_2022)
17075 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
17076 Don't do eol converion.
17077 (adjust_coding_eol_type): Return a new coding system.
17078 (detect_coding): Don't detect eol. Fix for utf-16 detection.
17079 (decode_eol): In case of CRLF->LF conversion, use del_range_2 on
17080 each change.
17081 (decode_coding): Pay attention to undo_list. Do eol conversion for
17082 all types of coding-systems (if necessary).
17083 (Vcode_conversion_work_buf_list): Delete it.
17084 (Vcode_conversion_reused_workbuf): Rename from
17085 Vcode_conversion_reused_work_buf.
17086 (Vcode_conversion_workbuf_name): New variable.
17087 (reused_workbuf_in_use): New variable.
17088 (make_conversion_work_buffer): Delete the arg DEPTH.
17089 (code_conversion_restore): Change argument to cons.
17090 (code_conversion_save): Delete the argument BUFFER. Change callers.
17091 (detect_coding_system): New argument src_chars. Change callers.
17092 Fix for utf-16 detection.
17093 (init_coding_once): Don't use ISO_carriage_return.
17094 (syms_of_coding): Initialize Vcode_conversion_workbuf_name and
17095 reused_workbuf_in_use.
17096
170972008-02-01 Kenichi Handa <handa@m17n.org>
17098
17099 * keymap.c (store_in_keymap): Pay attention to the case that idx
17100 is a cons specifying a character range.
17101
171022008-02-01 Kenichi Handa <handa@m17n.org>
17103
17104 * xdisp.c (handle_auto_composed_prop): Fix the case of returning
17105 HANDLED_RECOMPUTE_PROPS.
17106
17107 * coding.c (Fdefine_coding_system_internal): Fix checking of
17108 ascii compatibility.
17109
171102008-02-01 Kenichi Handa <handa@m17n.org>
17111
17112 * charset.c (find_charsets_in_text): Delete unused locale variable.
17113 (Fset_charset_priority): Update Vemacs_mule_charset_list too.
17114
17115 * coding.c (encode_coding_emacs_mule): Emit bytes with MSB.
17116 Resync charset_list to Vemacs_mule_charset_list.
17117
17118 * keymap.c (store_in_keymap): Pay attention to the case that idx
17119 is a cons specifying a character range.
17120
171212008-02-01 Kenichi Handa <handa@m17n.org>
17122
17123 * composite.c (update_compositions): Bind inhibit-read-only, etc
17124 to t before calling remove-list-of-text-properties.
17125
17126 * print.c (print_object): Always print ASCII chars as is.
17127
171282008-02-01 Kenichi Handa <handa@m17n.org>
17129
17130 * keymap.c (Fdefine_key): Fix handling of Lucid style event type list.
17131
17132 * fns.c (Fmapconcat, Fmapcar, Fmapc): Signal an error if SEQUENCE
17133 is a char table.
17134
171352008-02-01 Kenichi Handa <handa@m17n.org>
17136
17137 * syntax.c (skip_chars): Be sure to alloca char_ranges when necessary.
17138
171392008-02-01 Kenichi Handa <handa@m17n.org>
17140
17141 * xfaces.c (set_lface_from_font_name): Fix for the case that
17142 FONTNAME is not fontset name.
17143
171442008-02-01 Kenichi Handa <handa@m17n.org>
17145
17146 * fns.c (base64_encode_1): Fix previous change.
17147
171482008-02-01 Kenichi Handa <handa@m17n.org>
17149
17150 * fontset.c (set_fontset_font): New function.
17151 (Fset_fontset_font): If a font is specified for a charset, use
17152 map_charset_chars to store the font spec in a fontset.
17153
171542008-02-01 Kenichi Handa <handa@m17n.org>
17155
17156 * fontset.c (fontset_face): Create a fallback fontset on demand.
17157 (make_fontset): Don't create a fallback fontset here.
17158 (free_face_fontset): Free a fallback fontset (if any) too.
17159 (n_auto_fontsets): Delete this variable.
17160 (auto_fontset_alist): New variable.
17161 (new_fontset_from_font_name): Check auto_fontset_alist.
17162 (dump_fontset) [FONTSET_DEBUG]: Fully re-written.
17163 (Ffontset_list_all) [FONTSET_DEBUG]: New function.
17164 (syms_of_fontset): Initialize and staticpro auto_fontset_alist.
17165 Defsubr Sfontset_list_all.
17166
171672008-02-01 Kenichi Handa <handa@m17n.org>
17168
17169 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
17170
171712008-02-01 Kenichi Handa <handa@m17n.org>
17172
17173 * fontset.c (Fnew_fontset): Check NAME more rigidly.
17174
171752008-02-01 Kenichi Handa <handa@m17n.org>
17176
17177 * editfns.c (Fgoto_char): Fix docstring.
17178
171792008-02-01 Kenichi Handa <handa@m17n.org>
17180
17181 * insdel.c (insert_from_gap): Adjust intervals correctly.
17182
171832008-02-01 Jason Rumney <jasonr@gnu.org>
17184
17185 * w32term.c (GLYPHSET, WCRANGE): Define if system headers don't.
17186 (pfnGetFontUnicodeRanges): New dynamically loaded function.
17187 (w32_initialize): Try to load it.
17188 (x_get_font_repertory): Use it if available.
17189 (w32_encode_char): Add shortcut for unicode output.
17190
17191 * w32fns.c (w32_load_system_font): Default charset to -1.
17192 (x_to_w32_charset): Match all fonts for unicode.
17193 (w32_to_x_charset): New parameter matching. Don't return partial
17194 or wildcard charsets.
17195 (w32_to_all_x_charsets): Don't return partial or wildcard charsets.
17196 (w32_codepage_for_font): Return CP_UNICODE for unicode.
17197 (w32_to_x_font): Match charset to real charset.
17198 (enum_font_cb2): Always list unicode versions.
17199
17200 * makefile.w32-in (temacs): Increase EMHEAP.
17201
172022008-02-01 Jason Rumney <jasonr@gnu.org>
17203
17204 * w32term.c (w32_encode_char): New charset parameter.
17205 font_info.encoding becomes encoding_type.
17206 (x_get_font_repertory): New function. Warning: stub only!
17207 (x_new_font): Return quickly if font already set.
17208 (x_new_fontset): fontsetname parameter is Lisp_Object.
17209 Use new fs_query_fontset. Try new_fontset_from_font_name.
17210 Use fontset_name for return value.
17211
17212 * w32term.h: Declare x_get_font_repertory.
17213
17214 * w32select.c (Fw32_set_clipboard_data): Use string_x_string_p in
17215 place of find_charset_in_text. Use encode_coding_object in place
17216 of encode_coding.
17217 (Fw32_get_clipboard_data): Use decode_coding_c_string in place of
17218 decode_coding.
17219
17220 * w32fns.c (Fx_create_frame, x_create_tip_frame): Use new version
17221 of x_new_fontset.
17222 (w32_load_system_font): Initialize charset as unicode.
17223 font_info.encoding becomes encoding_type.
17224 (w32_to_x_font): Use decode_coding_c_string in place of decode_coding.
17225 (x_to_w32_font): Use encode_coding_object in place of encode_coding.
17226 (syms_of_w32fns): Set get_font_repertory_func.
17227
17228 * w32console.c: Include character.h. Use terminal_encode_buffer
17229 from term.c.
17230 (write_glyphs): Use new version of encode_terminal_code. Use
17231 encode_coding_object in place of encode_coding.
17232
17233 * w32bdf.c (w32_load_bdf_font): Clear font_info before filling.
17234 encoding becomes encoding_type.
17235
17236 * term.c (terminal_encode_buffer): Make externally visible.
17237
17238 * makefile.w32-in: Add character.h dependancies.
17239 (character.o, chartab.o): New targets.
17240
172412008-02-01 Kenichi Handa <handa@m17n.org>
17242
17243 * fileio.c (Finsert_file_contents) [DOS_NT]: Use the macro
17244 CODING_ID_EOL_TYPE.
17245
172462008-02-01 Andreas Schwab <schwab@suse.de>
17247
17248 * coding.c (produce_chars): Revert last change.
17249
172502008-02-01 Kenichi Handa <handa@m17n.org>
17251
17252 * charset.h (charset_unicode): Extern it.
17253
17254 * charset.c (string_xstring_p): Check by (C >= 0x100).
17255 (find_charsets_in_text): Change format of the arc CHARSETS. New
17256 arg MULTIBYTE.
17257 (Ffind_charset_region, Ffind_charset_string): Adjust for the
17258 change of find_charsets_in_text.
17259 (Fsplit_char): Fix doc. Never return unknown.
17260
17261 * chartab.c (char_table_translate): Use CHARACTERP, not INTEGERP.
17262
17263 * coding.c (Fdefine_coding_system_alias): Update
17264 Vcoding_system_list.
17265
17266 * fontset.c (load_font_get_repertory): Pay attention to the case
17267 that ENCODING of a font is specified by a char-table.
17268
17269 * xterm.c (x_get_font_repertory): Handle the case that the
17270 encoding of font is other than Unicode.
17271
172722008-02-01 Kenichi Handa <handa@m17n.org>
17273
17274 * term.c (encode_terminal_code): Don't handle glyph-table. Check
17275 if a character is encodable by the terminal coding system. If
17276 not, produces proper number of `?'s. Update
17277 terminal_encode_buffer and terminal_encode_buf_size if necessary.
17278 (produce_glyphs): Check by CHAR_BYTE8_P, not SINGLE_BYTE_CHAR_P.
17279
172802008-02-01 Kenichi Handa <handa@m17n.org>
17281
17282 * term.c (terminal_encode_buffer, terminal_encode_buf_size): New
17283 variables.
17284 (encode_terminal_code): Change argument. Encode multiple
17285 characters at once. Store the result of encoding in
17286 terminal_encode_buffer.
17287 (write_glyphs, insert_glyphs): Adjust for the change of
17288 encode_terminal_code.
17289 (term_init): Initialize terminal_encode_buffer and
17290 terminal_encode_buf_size.
17291
17292 * coding.c (consume_chars): If coding->src_object is nil, don't
17293 check annotation.
17294
172952008-02-01 Kenichi Handa <handa@m17n.org>
17296
17297 * character.c (char_string): Use ASCII_CHAR_P instead of
17298 SINGLE_BYTE_CHAR_P.
17299
173002008-02-01 Kenichi Handa <handa@m17n.org>
17301
17302 * xdisp.c (handle_auto_composed_prop): Check if the last
17303 characters of auto-composed region is newly composed with the
17304 following characters.
17305 (handle_composition_prop): Fix checking of point being inside
17306 composition.
17307
173082008-02-01 Kenichi Handa <handa@m17n.org>
17309
17310 * fns.c (concat): Don't change multibyteness of the result by
17311 concatenating an 8-bit character.
17312
17313 * data.c (Faset): Check newelt by CHECK_CHARACTER. Don't change
17314 multibyteness of the result when newelt is an 8-bit character.
17315
173162008-02-01 Dave Love <fx@gnu.org>
17317
17318 * xmenu.c (find_and_call_menu_selection): Make menu_bar_items_used
17319 EMACS_INT.
17320
17321 * xfns.c (DefaultDepthOfScreen, x_encode_text): Remove unused vars.
17322
17323 * xfaces.c (face_numeric_value): Declare dim size_t.
17324 (Finternal_lisp_face_equal_p): Remove unused f.
17325
17326 * xdisp.c (BUILD_CHAR_GLYPH_STRINGS, display_and_set_cursor)
17327 (MATRIX_ROW): Remove unused vars.
17328 (draw_glyphs, x_insert_glyphs, fast_find_position)
17329 (fast_find_position, fast_find_string_pos): Use EMACS_INT for
17330 byte/char counts.
17331
17332 * regex.c (regex_compile): Remove unused var.
17333
17334 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
17335
17336 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
17337 (Faccessible_keymaps, where_is_internal): Remove unused vars.
17338
17339 * keyboard.c (cancel_hourglass_unwind): Return Qnil.
17340
17341 * frame.c (frame_name_fnn_p): Make len EMACS_INT.
17342
17343 * fileio.c (Fwrite_region): Remove unused var.
17344
17345 * dispnew.c (adjust_frame_glyphs_for_frame_redisplay)
17346 (adjust_frame_glyphs_for_window_redisplay): Remove unused ch_dim.
17347
17348 * composite.c (Fremove_list_of_text_properties): Declare.
17349
17350 * coding.c (inhibit_pre_post_conversion): Remove (unused).
17351 (alloc_destination, produce_chars): Use EMACS_INT for byte/char counts.
17352 (coding_inherit_eol_type): Remove unused attrs.
17353 (detect_coding): Cast arg of detect_eol.
17354
17355 * charset.c (syms_of_charset): Remove unused var p.
17356 (find_charsets_in_text, Ffind_charset_region): Use EMACS_INT for
17357 byte/char counts.
17358
17359 * casetab.c (set_case_table): Remove unused var.
17360
17361 * window.c (Fdisplay_buffer, Fframe_selected_window): Remove
17362 unused vars.
17363
173642008-02-01 Dave Love <fx@gnu.org>
17365
17366 * xterm.c (x_bitmap_mask): Declare.
17367
173682008-02-01 Dave Love <fx@gnu.org>
17369
17370 * xterm.c (x_term_init): Fix type error.
17371
17372 * lisp.h: Add Funibyte_char_to_multibyte.
17373
17374 * coding.c (Fread_coding_system): Fix arg of XSETSTRING.
17375 (Fset_coding_system_priority): Doc fix.
17376
17377 * ccl.c (ccl_driver): Fix arg of CHARACTERP.
17378
17379 * indent.c (check_composition): Make start and end EMACS_INT.
17380
17381 * character.c (lisp_string_width): Make ignore and end EMACS_INT.
17382
17383 * xdisp.c (handle_composition_prop, check_point_in_composition):
17384 Make buffer positions EMACS_INT.
17385
17386 * composite.c (find_composition, run_composition_function)
17387 (update_compositions, Ffind_composition_internal): Make buffer
17388 positions EMACS_INT.
17389
17390 * composite.h (find_composition, update_compositions): Make
17391 position args EMACS_INT.
17392
17393 * keyboard.c (adjust_point_for_property): Make beg and end EMACS_INT.
17394
17395 * intervals.c (get_property_and_range):
17396 * intervals.h (get_property_and_range): Make start and end EMACS_INT.
17397
17398 * unexalpha.c: Don't include varargs.h.
17399
174002008-02-01 Dave Love <fx@gnu.org>
17401
17402 * coding.h (ENCODE_UTF_8): New.
17403
17404 * Makefile.in (gtkutil.o): Depend on coding.h.
17405
17406 * coding.c (Fset_coding_system_priority): Doc fix.
17407
174082008-02-01 Kenichi Handa <handa@m17n.org>
17409
17410 * fileio.c (Finsert_file_contents): Call setup_coding_system in
17411 the case of auto saving.
17412
174132008-02-01 Andreas Schwab <schwab@suse.de>
17414
17415 * chartab.c (map_char_table, map_char_table_for_charset): Protect
17416 `range' from GC.
17417
174182008-02-01 Kenichi Handa <handa@m17n.org>
17419
17420 * coding.c (decode_coding_sjis): Check bytes more rigidly.
17421
174222008-02-01 Kenichi Handa <handa@m17n.org>
17423
17424 * fileio.c (choose_write_coding_system): Return a decided coding system.
17425 (Fwrite_region): Set Vlast_coding_system_used to the return value
17426 of choose_write_coding_system.
17427
174282008-02-01 Kenichi Handa <handa@m17n.org>
17429
17430 * charset.c (Fset_charset_priority): Pay attention to duplicated
17431 arguments.
17432
17433 * coding.c (QCcategory): New variable.
17434 (syms_of_coding): Defsym it. Set all elements of
17435 Vcoding_category_table and their symbol values.
17436 (Fset_coding_system_priority): Doc fix. Update symbol qvalues of
17437 coding-category-XXX, and coding-category-list.
17438 (Fdefine_coding_system_internal): Add category in the plist.
17439
174402008-02-01 Kenichi Handa <handa@m17n.org>
17441
17442 * callproc.c (Fcall_process): Handle carryover correctly.
17443
17444 * coding.c (decode_coding_iso_2022): Fix handling of invalid bytes.
17445 (raw_text_coding_system): Check NILP (coding_system).
17446 (coding_inherit_eol_type): Check NILP (coding_system) and
17447 NILP (parent).
17448 (consume_chars): Fix for the case of raw-text.
17449
17450 * process.c (read_process_output): Handle carryover correctly.
17451
174522008-02-01 Dave Love <fx@gnu.org>
17453
17454 * regex.c (re_search_2): Fix last change.
17455
174562008-02-01 Kenichi Handa <handa@m17n.org>
17457
17458 * regex.c (GET_CHAR_BEFORE_2): Check multibyte, not
17459 target_multibyte. Even in a unibyte case, return a converted
17460 multibyte char.
17461 (GET_CHAR_AFTER): New macro.
17462 (PATFETCH): Translate via multibyte char.
17463 (HANDLE_UNIBYTE_RANGE): Delete this macro.
17464 (SETUP_MULTIBYTE_RANGE): New macro.
17465 (regex_compile): Setup compiled code so that its multibyteness
17466 matches that of a target. Fix the handling of "[X-YZ]" using
17467 SETUP_MULTIBYTE_RANGE.
17468 (analyse_first) <charset>: For filling fastmap for all multibyte
17469 characters, don't check by BASE_LEADING_CODE_P.
17470 (re_search_2): Don't check RE_TARGET_MULTIBYTE_P (bufp). It is
17471 the same as RE_MULTIBYTE_P (bufp) now.
17472 (mutually_exclusive_p): Check by (! multibyte || IS_REAL_ASCII (c)).
17473 (TARGET_CHAR_AND_LENGTH): Delete this macro.
17474 (TRANSLATE_VIA_MULTIBYTE): New macro.
17475 (re_match_2_internal): Don't check RE_TARGET_MULTIBYTE_P (bufp).
17476 It is the same as RE_MULTIBYTE_P (bufp) now.
17477 <exactn>: Translate via multibyte.
17478 <anychar>: Fetch a character by RE_STRING_CHAR_AND_LENGTH. Don't
17479 translate it.
17480 <charset, charset_not>: Fetch a character by
17481 RE_STRING_CHAR_AND_LENGTH. Translate via multibyte.
17482 <duplicate>: Call bcmp_translate with the last arg `multibyte'.
17483 <wordbound, notwordbound, wordbeg, wordend, syntaxspec,
17484 notsyntaxspec, categoryspec, notcategoryspec> Fetch a character
17485 by GET_CHAR_AFTER.
17486 (bcmp_translate): Likewise.
17487
17488 * search.c (compile_pattern): Check the member target_multibyte,
17489 not the member multibyte of buf.
17490
17491 * lread.c (read1): While reading a string, set force_singlebyte
17492 and force_multibyte correctly.
17493
17494 * charset.c (Fset_unibyte_charset, init_charset_once): Fix setting
17495 up of unibyte_to_multibyte_table.
17496
174972008-02-01 Kenichi Handa <handa@m17n.org>
17498
17499 * coding.c (setup_coding_system): If coding has
17500 post-read-conversion or pre-write-conversion, set
17501 CODING_REQUIRE_DECODING_MASK and CODING_REQUIRE_ENCODING_MASK
17502 respectively.
17503 (decode_coding_gap): Run post-read-conversion if any.
17504
17505 * fileio.c (Finsert_file_contents): Even if we read into a
17506 unibyte buffer, check if we must decode the result or not.
17507
175082008-02-01 Kenichi Handa <handa@m17n.org>
17509
17510 * coding.c (make_conversion_work_buffer): Change the work buffer
17511 name to the same one as that of Emacs 21.
17512
175132008-02-01 Kenichi Handa <handa@m17n.org>
17514
17515 * coding.h (make_conversion_work_buffer): Adjust prototype.
17516 (code_conversion_restore): Don't extern it.
17517
17518 * coding.c (detected_mask): Delete unused variable.
17519 (decode_coding_iso_2022): Pay attention to the byte sequence of
17520 CTEXT extended segment, and retain those bytes as is.
17521 (decode_coding_ccl): Delete unused variable `valids'.
17522 (setup_coding_system): Delete unused variable `category'.
17523 (consume_chars): Delete unused variable `category'. Make it work
17524 for non-multibyte case.
17525 (make_conversion_work_buffer): Change argument.
17526 (saved_coding): Delete unused variable.
17527 (code_conversion_restore): Don't check saved_coding->destination.
17528 (code_conversion_save): New function.
17529 (decode_coding_gap, encode_coding_gap): Call code_conversion_save
17530 instead of record_unwind_protect.
17531 (decode_coding_object, encode_coding_object): Likewise. Recover PT.
17532 (detect_coding_system): Delete unused variable `mask'.
17533 (Fdefine_coding_system_internal): Delete unused variable id.
17534
17535 * fileio.c (kill_workbuf_unwind): New function.
17536 (Finsert_file_contents): On replacing, call
17537 make_conversion_work_buffer with correct args, and call
17538 record_unwind_protect with the first arg kill_workbuf_unwind.
17539
17540 * lisp.h (Fgenerate_new_buffer_name): EXFUN it.
17541
175422008-02-01 Kenichi Handa <handa@m17n.org>
17543
17544 * fontset.c (BASE_FONTSET_P): Check FONTSET_BASE, not FONTSET_NAME.
17545 (fontset_add): Fix for the case that TO is less than TO1.
17546 (Ffontset_info): Don't use fallback fontset on checking the
17547 default fontset.
17548 (dump_fontset): New function for debugging.
17549
17550 * coding.c (Fdefine_coding_system_internal): Fix for the case that
17551 coding_type is Qcharset.
17552
175532008-02-01 Kenichi Handa <handa@m17n.org>
17554
17555 * chartab.c (map_sub_char_table): New argument DEFAULT_VAL.
17556 (map_char_table): Don't inherit the value from the parent on
17557 initializing VAL. Adjust for the above change.
17558
175592008-02-01 Kenichi Handa <handa@m17n.org>
17560
17561 * coding.c (Qsignature, Qendian): Delete these variables.
17562 (syms_of_coding): Don't initialize them.
17563 (CATEGORY_MASK_UTF_16_AUTO): New macro.
17564 (detect_coding_utf_16): Add CATEGORY_MASK_UTF_16_AUTO in
17565 detect_info->found.
17566 (decode_coding_utf_16): Don't detect BOM here.
17567 (encode_coding_utf_16): Produce BOM if CODING_UTF_16_BOM (coding)
17568 is NOT utf_16_without_bom.
17569 (setup_coding_system): For a coding system of type utf-16, check
17570 if the attribute :endian is Qbig or not (not nil or not), and set
17571 CODING_REQUIRE_DETECTION_MASK if BOM detection is required.
17572 (detect_coding): If coding type is utf-16 and BOM detection is
17573 required, detect it.
17574 (Fdefine_coding_system_internal): For a coding system of type
17575 utf-16, check if the attribute :endian is Qbig or not (not nil or not).
17576
175772008-02-01 Kenichi Handa <handa@m17n.org>
17578
17579 * coding.c (coding_set_source): Fix for the case that the current
17580 buffer is different from coding->src_object.
17581 (decode_coding_object): Don't use the conversion work buffer if
17582 DST_OBJECT is a buffer.
17583
175842008-02-01 Dave Love <fx@gnu.org>
17585
17586 * lread.c (read_emacs_mule_char) [len==2]: Index
17587 emacs_mule_charset correctly.
17588
175892008-02-01 Dave Love <fx@gnu.org>
17590
17591 * coding.c (Qbig5, Vbig5_coding_system, CATEGORY_MASK_BIG5)
17592 (detect_coding_big5, decode_coding_big5, encode_coding_big5)
17593 (Fdecode_big5_char, Fencode_big5_char): Delete. (Big5 no longer
17594 treated specially.)
17595 (setup_coding_system, coding_category, CATEGORY_MASK_ANY)
17596 (detected_mask): Remove Big5 bits.
17597
175982008-02-01 Kenichi Handa <handa@m17n.org>
17599
17600 The following changes are to make the font rescaling facility
17601 compatible with Emacs 21.
17602
17603 * xfaces.c (Vface_font_rescale_alist): Rename from
17604 Vface_resizing_fonts.
17605 (struct font_name): Rename member resizing_ratio to rescale_ratio.
17606 (font_rescale_ratio): Rename from font_resizing_ratio.
17607 (split_font_name): Set font->rescale_ratio.
17608 (better_font_p): Pay attention to font->rescale_ratio.
17609 (build_scalable_font_name): Likewise. Change RESX, and RESY
17610 fields.
17611 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
17612
176132008-02-01 Kenichi Handa <handa@m17n.org>
17614
17615 * coding.c (Qutf_16_be_nosig, Qutf_16_be, Qutf_16_le_nosig)
17616 (Qutf_16_le): Remove these variables.
17617 (syms_of_coding): Don't DEFSYM them.
17618 (decode_coding_utf_16): Fix handling of BOM.
17619 (encode_coding_utf_16): Fix handling of BOM.
17620
176212008-02-01 Kenichi Handa <handa@m17n.org>
17622
17623 * fileio.c (Finsert_file_contents): On replacing, before decoding
17624 the file into the work buffer, set point of the work buffer to the end.
17625
176262008-02-01 Dave Love <fx@gnu.org>
17627
17628 * coding.c (Fcheck_coding_systems_region): Fix type errors.
17629
176302008-02-01 Dave Love <fx@gnu.org>
17631
17632 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
17633 and fix C types.
17634
176352008-02-01 Kenichi Handa <handa@m17n.org>
17636
17637 * xdisp.c (SKIP_GLYPHS): New macro.
17638 (set_cursor_from_row): Pay attention to string display properties.
17639
17640 * category.c (copy_category_entry): Fix for the case that RANGE
17641 is an integer.
17642
17643 * xterm.c (x_encode_char): Call ccl_driver with the last arg Qnil.
17644
17645 * w32term.c (w32_encode_char): Call ccl_driver with the last arg Qnil.
17646
176472008-02-01 Kenichi Handa <handa@m17n.org>
17648
17649 * charset.c (Fcharset_id_internal): New function.
17650 (syms_of_charset): Defsubr it.
17651
17652 * coding.c (decode_coding_ccl, encode_coding_ccl): Call ccl_driver
17653 with the last arg charset_list acquired from coding.
17654 (Fdefine_coding_system_internal): For ccl-based coding system, fix
17655 the attribute coding_attr_ccl_valids.
17656
17657 * coding.h (enum define_coding_ccl_arg_index): Set the first
17658 member coding_arg_ccl_decoder to coding_arg_max.
17659
17660 * ccl.h (ccl_driver): Adjust prototype.
17661
17662 * ccl.c (CCL_DECODE_CHAR, CCL_ENCODE_CHAR): New macros.
17663 (ccl_driver): New arg CHARSET_LIST. Use the above macros instead
60612c8f 17664 of DECODE_CHAR, ENCODE_CHAR, CHAR_CHARSET.
aac0c6e3
MR
17665 (Fccl_execute, Fccl_execute_on_string): Call ccl_driver with the
17666 last arg Qnil.
17667
176682008-02-01 Kenichi Handa <handa@m17n.org>
17669
17670 * charset.h (ENCODE_CHAR): If the method is SUBSET or SUPERSET,
17671 call encode_char.
17672
17673 * charset.c (encode_char): Fix handling of methods SUBSET and SUPERSET.
17674
176752008-02-01 Dave Love <fx@gnu.org>
17676
17677 * composite.c (syms_of_composite): Make composition_hash_table weak.
17678
176792008-02-01 Kenichi Handa <handa@m17n.org>
17680
17681 * dispextern.h (check_face_attributes, generate_ascii_font_name)
17682 (font_name_registry): Don't extern them.
17683 (split_font_name_into_vector, build_font_name_from_vector): Extern them.
17684
17685 * fontset.h (Qfontset): Don't extern it.
17686 (new_fontset_from_font_name): Extern it.
17687
17688 * fontset.c: Give 8 extra slots to fontset objects.
17689 (Qfontset_info): New variable.
17690 (syms_of_fontset): Defsym it.
17691 (FONTSET_FALLBACK): New macro.
17692 (fontset_face): Try also the default fontset.
17693 (make_fontset): Realize a fallback fontset from the default fontset.
17694 (generate_ascii_font_name): Move from xfaces.c. Rewritten by
17695 using split_font_name_into_vector and build_font_name_from_vector.
17696 (Fset_fontset_font): Access the elements of font_spec by enum
17697 FONT_SPEC_INDEX. If font_spec is a string, extract the registry
17698 name by using split_font_name_into_vector.
17699 (Fnew_fontset): If no ASCII font is specified in FONTLIST,
17700 generate a proper font name from the fontset name. Update
17701 Vfontset_alias_alist.
17702 (n_auto_fontsets): New variable.
17703 (new_fontset_from_font_name): New function.
17704 (Ffont_info): Store the information about fonts generated from the
17705 default fontset in the first extra slot of the returned char-table.
17706
17707 * xfaces.c (generate_ascii_font_name): Move to fontset.c.
17708 (font_name_registry): Delete function.
17709 (split_font_name_into_vector): New function.
17710 (build_font_name_from_vector): New function.
17711 (font_list): The argument REGISTRY is now a list of registry names.
17712 (choose_face_font): If we are choosing an ASCII font, and ATTRS
17713 specifies an explicit font name, return the name as is. Make a
17714 list of registy names.
17715
17716 * xfns.c (x_set_font, x_create_tip_frame): Adjust for the change
17717 of x_new_fontset.
17718 (Fx_create_frame): Don't call x_new_fontset here. Just use
17719 x_list_fonts to check the existence of fonts.
17720
17721 * xterm.h (x_new_fontset): Adjust prototype.
17722
17723 * xterm.c (x_new_fontset): Change the arg FONTSETNAME to Lisp
17724 string. Use new_fontset_from_font_name to create a fontset from a
17725 font name.
17726
177272008-02-01 Kenichi Handa <handa@m17n.org>
17728
17729 * syntax.c (Vfind_word_boundary_function_table): New name for
17730 Vnext_word_boundary_function_table.
17731 (find-word-boundary-function-table): New name for
17732 next-word-boundary-function-table.
17733
177342008-02-01 Dave Love <fx@gnu.org>
17735
17736 * Makefile.in: Fix some dependencies.
17737
17738 * keymap.c (Fapropos_internal): Don't gcpro apropos_predicate but
17739 set it to nil before returning.
17740
17741 * composite.c (update_compositions): Fix type error.
17742
17743 * syntax.c (skip_chars, skip_syntaxes): Fix type errors.
17744
177452008-02-01 Kenichi Handa <handa@m17n.org>
17746
17747 * xterm.c (x_new_font): Optimize for the case that the font is
17748 already set for the frame.
17749
177502008-02-01 Kenichi Handa <handa@m17n.org>
17751
17752 * chartab.c (char_table_ascii): Check if the char table contents
17753 is sub-char-table or not.
17754 (char_table_set, char_table_set_range): Fix argument to
17755 char_table_ascii.
17756
17757 * coding.c (CATEGORY_MASK_RAW_TEXT): New macro.
17758 (detect_coding_utf_8, detect_coding_utf_16)
17759 (detect_coding_emacs_mule, detect_coding_iso_2022)
17760 (detect_coding_sjis, detect_coding_big5)
17761 (detect_coding_ccl, detect_coding_charset): Change argument MASK
17762 to DETECT_INFO. Update DETECT_INFO and return 1 if the byte
17763 sequence is valid in this coding system. Change callers.
17764 (MAX_ANNOTATION_LENGTH): New macro.
17765 (ADD_ANNOTATION_DATA): New macro.
17766 (ADD_COMPOSITION_DATA): Change argument. Change callers. Call
17767 ADD_ANNOTATION_DATA. Change the format of annotation data.
17768 (ADD_CHARSET_DATA): New macro.
17769 (emacs_mule_char): New argument ID. Change callers.
17770 (decode_coding_emacs_mule, decode_coding_iso_2022)
17771 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
17772 Produce charset annotation data in coding->charbuf.
17773 (encode_coding_emacs_mule, encode_coding_iso_2022): Pay attention
17774 to charset annotation data in coding->charbuf.
17775 (setup_coding_system): Add CODING_ANNOTATE_CHARSET_MASK
17776 coding->common_flags if the coding system is iso-2022 based and
17777 uses designation.
17778 (produce_composition): Adjust for the new annotation data format.
17779 (produce_charset): New function.
17780 (produce_annotation): Handle charset annotation.
17781 (handle_composition_annotation, handle_charset_annotation): New
17782 functions.
17783 (consume_chars): Handle charset annotation. Utilize the above two
17784 functions.
17785 (encode_coding_object): If SRC_OBJECT and DST_OBJECT are the same
17786 buffer, get the deleted text as a string and set
17787 coding->src_object to that string.
17788 (detect_coding, detect_coding_system): Use the new struct
17789 coding_detection_info.
17790
17791 * coding.h (struct coding_detection_info): New structure.
17792 (struct coding_system): Adjust prototype of the member `detector'.
17793 (CODING_ANNOTATE_CHARSET_MASK): New macro.
17794
177952008-02-01 Kenichi Handa <handa@m17n.org>
17796
17797 * insdel.c (insert_from_gap): Fix argument to offset_intervals.
17798
177992008-02-01 Dave Love <fx@gnu.org>
17800
17801 * keymap.c (apropos_predicate, apropos_accumulate): Declare static.
17802 (Fapropos_internal): Don't gcpro apropos_accumulate. Set result
17803 to new local and nullify apropos_accumulate before returning.
17804 (syms_of_keymap): Staticpro and initialize apropos_accumulate.
17805
178062008-02-01 Kenichi Handa <handa@m17n.org>
17807
17808 * charset.c (Fdefine_charset_internal): Setup charset.fast_map
17809 correctly.
e3eea1fc 17810
aac0c6e3
MR
178112008-02-01 Dave Love <fx@gnu.org>
17812
17813 * fns.c (Flanginfo): Call synchronize_system_time_locale.
17814
178152008-02-01 Kenichi Handa <handa@m17n.org>
17816
17817 The following changes are to make character composition happen
17818 automatically on displaying.
17819
17820 * Makefile.in (lisp, shortlisp): Add composite.elc.
17821
17822 * composite.h (Qauto_composed, Vauto_composition_function)
17823 (Qauto_composition_function): Extern them.
17824
17825 * composite.c (Vcomposition_function_table)
17826 (Qcomposition_function_table): Delete variables.
17827 (Qauto_composed, Vauto_composition_function)
17828 (Qauto_composition_function): New variables.
17829 (run_composition_function): Don't call
17830 compose-chars-after-function.
17831 (update_compositions): Clear `auto-composed' text property.
17832 (compose_chars_in_text): Delete this function.
17833 (syms_of_composite): Staticpro Qauto_composed and
17834 Qauto_composition_function. Declare Vauto_composition_function as
17835 a Lisp variable.
17836
17837 * dispextern.h (enum prop_idx): Add member AUTO_COMPOSED_PROP_IDX.
17838
17839 * xdisp.c (it_props): Add an entry for Qauto_composed.
17840 (handle_auto_composed_prop): New function.
17841
17842 * xselect.c (selection_data_to_lisp_data): Don't call
17843 compose_chars_in_text.
17844
178452008-02-01 Dave Love <fx@gnu.org>
17846
17847 * keyboard.c (read_char): Modify checking around use of
17848 Vkeyboard_translate_table.
17849
17850 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
17851 and fix C types.
17852
178532008-02-01 Kenichi Handa <handa@m17n.org>
17854
17855 * coding.c (decode_coding_utf_8, decode_coding_emacs_mule)
17856 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
17857 (decode_coding_charset, produce_chars): When eol_type is Qdos, handle
17858 the case that the last byte is '\r' correctly.
17859 (decode_coding): Flush out the unprocessed data correctly.
17860 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK bit of coding->mode.
17861
178622008-02-01 Dave Love <fx@gnu.org>
17863
17864 * xterm.c (XTread_socket): Fix changes for defined keysyms.
17865 Add XK_ISO... case.
17866 (xaw_scroll_callback): Revert last change.
17867
178682008-02-01 Kenichi Handa <handa@m17n.org>
17869
17870 * charset.c (Fset_charset_priority): Update Viso_2022_charset_list.
17871
178722008-02-01 Kenichi Handa <handa@m17n.org>
17873
17874 * xfaces.c (Vface_resizing_fonts): New variable.
17875 (struct font_name): New member `resizing_ratio'.
17876 (font_resizing_ratio): New function.
17877 (split_font_name): Set font->resizing_ratio.
17878 (better_font_p): Pay attention to font->resizing_ratio.
17879 (build_scalable_font_name): Likewise. Don't change POINT_SIZE,
17880 RESX, and RESY fields.
17881 (try_alternative_families): Try scalable fonts if
17882 Vscalable_fonts_allowed is not Qt.
17883 (syms_of_xfaces): Declare Vface_resizing_fonts as a Lisp variable.
17884
178852008-02-01 Dave Love <fx@gnu.org>
17886
17887 * xterm.c (xaw_scroll_callback): Cast correctly.
17888
178892008-02-01 Dave Love <fx@gnu.org>
17890
17891 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extend.
17892 (lispy_kana_keys): Comment out.
17893 (make_lispy_event) [XK_kana_A]: Comment out.
17894
17895 * xterm.c (xaw_scroll_callback): Cast call_data.
17896 (XTread_socket): Deal with ASCII keysyms.
17897 (syms_of_xterm) <Vx_keysym_table>: Fix args of make_hash_table.
17898
178992008-02-01 Dave Love <fx@gnu.org>
17900
17901 * xterm.c (Vx_keysym_table): New.
17902 (syms_of_xterm): Initialize it.
17903 (XTread_socket): Use it.
17904 From head: Eliminate incorrect optimization that tried to avoid
17905 decoding the output of X*LookupString.
17906 (x_get_font_repertory): Delete charset declaration.
17907
179082008-02-01 Kenichi Handa <handa@m17n.org>
17909
17910 * coding.c (detect_coding_charset): If only ASCII bytes are found,
17911 return 0.
17912 (Fdefine_coding_system_internal): Setup
17913 CODING_ATTR_ASCII_COMPAT (attrs) correctly.
17914
179152008-02-01 Dave Love <fx@gnu.org>
17916
17917 * coding.c (Fcheck_coding_system): Doc fix.
17918
17919 * editfns.c (Finsert_byte): Return a proper value.
17920
179212008-02-01 Kenichi Handa <handa@m17n.org>
17922
17923 * coding.c (decode_coding): Fix args to translate_chars. Pay
17924 attention to Vstandard_translation_table_for_decode.
17925 (encode_coding): Fix args to translate_chars. Pay attention to
17926 Vstandard_translation_table_for_encode.
17927
17928 * data.c (Faset): Check NEWELT by ASCII_CHAR_P, not by
17929 SINGLE_BYTE_CHAR_P.
17930
17931 * editfns.c (general_insert_function): Check VAL by ASCII_CHAR_P,
17932 not by SINGLE_BYTE_CHAR_P.
17933
17934 * fns.c (concat): Check CH by ASCII_CHAR_P, not by
17935 SINGLE_BYTE_CHAR_P.
17936
17937 * insdel.c (copy_text): Check C by ASCII_CHAR_P, not by
17938 SINGLE_BYTE_CHAR_P.
17939
17940 * keymap.c (Ftext_char_description): Check C by ASCII_CHAR_P, not
17941 by SINGLE_BYTE_CHAR_P.
17942
17943 * search.c (Freplace_match): Check C by ASCII_CHAR_P, not by
17944 SINGLE_BYTE_CHAR_P.
17945
179462008-02-01 Dave Love <fx@gnu.org>
17947
17948 * fns.c (Fstring_as_multibyte, Fstring_to_multibyte): Doc fix.
17949
179502008-02-01 Dave Love <fx@gnu.org>
17951
17952 * fns.c (Flanginfo): Fix typo.
17953
17954 * unexelf.c (unexec): Make last change conditional on Irix 6.5.
17955
179562008-02-01 Kenichi Handa <handa@m17n.org>
17957
17958 * coding.c (detect_coding_utf_8, detect_coding_utf_16)
17959 (detect_coding_emacs_mule, detect_coding_iso_2022)
17960 (detect_coding_sjis, detect_coding_big5, detect_coding_ccl): Check
17961 incomplete byte sequence. Don't update *mask when correctly detected.
17962 (decode_coding_sjis): Fix decoding of katakana-jisx0201.
17963 (detect_eol): Delete the argument CODING, and add the argument CATEGORY.
17964 (detect_coding, detect_coding_system): Adjust for the changes above.
17965
179662008-02-01 Kenichi Handa <handa@m17n.org>
17967
17968 * character.c (char_string): Rename from
17969 char_string_with_unification. Pay attention to CHAR_MODIFIER_MASK.
17970 (string_char): Rename from string_char.
17971
17972 * character.h (CHAR_STRING, CHAR_STRING_ADVANCE): Call char_string
17973 if C is greater than MAX_3_BYTE_CHAR.
17974 (STRING_CHAR, STRING_CHAR_AND_LENGTH, STRING_CHAR_ADVANCE): Call
17975 string_char instead of string_char_with_unification.
17976
179772008-02-01 Dave Love <fx@gnu.org>
17978
17979 * coding.c (decode_coding_utf_8): Treat surrogates as invalid.
17980
179812008-02-01 Kenichi Handa <handa@m17n.org>
17982
17983 * keymap.c (push_key_description): Pay attention to force_multibyte.
17984
17985 * regex.c (re_search_2): Fix for the case of unibyte buffer.
17986
179872008-02-01 Dave Love <fx@gnu.org>
17988
17989 * charset.c (define_charset_internal): Rename `supprementary'.
17990
17991 * Makefile.in (lisp, shortlisp): Remove latin-N.
17992
179932008-02-01 Dave Love <fx@gnu.org>
17994
17995 * xfns.c (x_window, x_window): Use use_xim.
17996
17997 * xterm.c (use_xim): Initialize.
17998 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
17999 (x_term_init): Maybe set use_xim.
18000
18001 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
18002
180032008-02-01 Kenichi Handa <handa@m17n.org>
18004
18005 * search.c (search_buffer): Fix case-fold-search of multibyte
18006 characters.
18007 (boyer_moore): Rename the last argument to char_high_bits.
18008
180092008-02-01 Kenichi Handa <handa@m17n.org>
18010
18011 * xdisp.c (display_string): Fix for the case of zero width glyph.
18012
18013 * xfns.c (x_set_font): Change the error message of the case that
18014 x_new_fontset returns Qt.
18015
18016 * xfaces.c (set_lface_from_font_name): Reject the default fontset.
18017 (Finternal_set_lisp_face_attribute): Use signal_error for the
18018 error of invalid fontset.
18019
18020 * xterm.c (x_new_fontset): If FONTSETNAME specifies the default
18021 fontset, return Qt.
18022
180232008-02-01 Dave Love <fx@gnu.org>
18024
18025 * unexelf.c (unexec): Make .got handling not SGI-specific.
18026
18027 * syntax.c (syms_of_syntax) <multibyte-syntax-as-symbol>: Doc fix.
18028
18029 * regex.c: Use `ifdef HAVE_ALLOCA_H', not `if HAVE_ALLOCA_H'.
18030
18031 * keyboard.c (read_key_sequence): Fix type error.
18032
18033 * buffer.c (Fset_buffer_multibyte, Fset_buffer_multibyte): Fix
18034 type error.
18035
18036 * fontset.c (fontset_add): Return Lisp_Object.
18037
180382008-02-01 Dave Love <fx@gnu.org>
18039
18040 * charset.h (charset_ordered_list_tick): Declare extern.
18041
180422008-02-01 Kenichi Handa <handa@m17n.org>
18043
18044 The following changes (and some of 2008-02-01 changes of mine) are
18045 for handling syntax, category, and case conversion for unibyte
18046 characters by converting them to multibyte on the fly. With these
18047 changes, we don't have to setup syntax and case tables for unibyte
18048 characters in each language environment.
18049
18050 * abbrev.c (Fexpand_abbrev): Convert a unibyte character to
18051 multibyte if necessary.
18052
18053 * bytecode.c (Fbyte_code): Likewise.
18054
18055 * character.h (LEADING_CODE_LATIN_1_MIN)
18056 (LEADING_CODE_LATIN_1_MAX): New macros.
18057 (unibyte_to_multibyte_table): Extern it.
18058 (unibyte_char_to_multibyte): New macro.
18059 (MAKE_CHAR_MULTIBYTE): Use unibyte_to_multibyte_table.
18060 (CHAR_LEADING_CODE): New macro.
18061 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): New macro.
18062
18063 * character.c (unibyte_to_multibyte_table): New variable.
18064 (unibyte_char_to_multibyte): Move to character.h and define as macro.
18065 (multibyte_char_to_unibyte): If C is an eight-bit character,
18066 convert it to the corresponding byte value.
18067
18068 * charset.c (Fset_unibyte_charset): If the dimension of CHARSET is
18069 not 1, signals an error. Update the elements of
18070 unibyte_to_multibyte_table.
18071 (init_charset_once): Initialize unibyte_to_multibyte_table.
18072 (syms_of_charset): Define the charset `iso-8859-1'.
18073
18074 * cmds.c (internal_self_insert): In a multibyte buffer, insert C
18075 as is without converting it to unibyte. In a unibyte buffer,
18076 convert C to multibyte before checking the syntax.
18077
18078 * lisp.h (unibyte_char_to_multibyte): Delete extern.
18079
18080 * minibuf.c (Fminibuffer_complete_word): Use the macro
18081 FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE.
18082
18083 * regex.h (struct re_pattern_buffer): New member target_multibyte.
18084
18085 * regex.c (RE_TARGET_MULTIBYTE_P): New macro.
18086 (GET_CHAR_BEFORE_2): Check target_multibyte, not multibyte. If
18087 that is zero, convert an eight-bit char to multibyte.
18088 (MAKE_CHAR_MULTIBYTE, CHAR_LEADING_CODE): New dummy new macros for
18089 non-emacs case.
18090 (PATFETCH): Convert an eight-bit char to multibyte.
18091 (HANDLE_UNIBYTE_RANGE): New macro.
18092 (regex_compile): Setup the compiled pattern for multibyte chars
18093 even if the given regex string is unibyte. Use PATFETCH_RAW
18094 instead of PATFETCH in many places. To handle `charset'
18095 specification of unibyte, call HANDLE_UNIBYTE_RANGE. Use bitmap
18096 only for ASCII chars.
18097 (analyse_first) <exactn>: Simplify because the compiled pattern
18098 is multibyte.
18099 <charset_not>: Setup fastmap from bitmap only for ASCII chars.
18100 <charset>: Use CHAR_LEADING_CODE to get leading codes.
18101 <categoryspec>: If multibyte, setup fastmap only for ASCII chars here.
18102 (re_compile_fastmap) [emacs]: Call analyse_first with the arg
18103 multibyte always 1.
18104 (re_search_2): In emacs, set the locale variable multibyte to 1,
18105 otherwise to 0. New local variable target_multibyte. Check it
18106 to decide the multibyteness of STR1 and STR2. If
18107 target_multibyte is zero, convert unibyte chars to multibyte
18108 before translating and checking fastmap.
18109 (TARGET_CHAR_AND_LENGTH): New macro.
18110 (re_match_2_internal): In emacs, set the locale variable multibyte
18111 to 1, otherwise to 0. New local variable target_multibyte. Check
18112 it to decide the multibyteness of STR1 and STR2. Use
18113 TARGET_CHAR_AND_LENGTH to fetch a character from D.
18114 <charset, charset_not>: If multibyte is nonzero, check fastmap
18115 only for ASCII chars. Call bcmp_translate with
18116 target_multibyte, not with multibyte.
18117 <begline>: Declare the local variable C as `unsigned'.
18118 (bcmp_translate): Change the last arg name to target_multibyte.
18119
18120 * search.c (compile_pattern_1): Don't adjust the multibyteness of
18121 the regexp pattern and the matching target. Set cp->buf.multibyte
18122 to the multibyteness of the regexp pattern. Set
18123 cp->but.target_multibyte to the multibyteness of the matching target.
18124 (wordify): Use FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE instead of
18125 FETCH_STRING_CHAR_ADVANCE.
18126 (Freplace_match): Convert unibyte chars to multibyte.
18127
18128 * syntax.c (char_quoted, back_comment, scan_words)
18129 (Fforward_comment, scan_lists, Fbackward_prefix_chars)
18130 (scan_sexps_forward): Use FETCH_CHAR_AS_MULTIBYTE to convert
18131 unibyte chars to multibyte.
18132 (skip_chars): Delete the arg syntaxp, and move the code for
18133 handling syntaxes to skip_syntaxes. Change callers.
18134 Fix the case that the multibyteness of STRING and the current
18135 buffer doesn't match.
18136 (skip_syntaxes): New function.
18137 (SYNTAX_WITH_MULTIBYTE_CHECK): Check C by ASCII_CHAR_P, not by
18138 SINGLE_BYTE_CHAR_P.
18139
181402008-02-01 Kenichi Handa <handa@m17n.org>
18141
18142 * xfaces.c (QCfontset): New variable.
18143 (LFACE_FONTSET): New macro.
18144 (check_lface_attrs): Check also LFACE_FONTSET_INDEX.
18145 (set_lface_from_font_name): Setup LFACE_FONTSET (lface).
18146 (Finternal_set_lisp_face_attribute)
18147 (Finternal_get_lisp_face_attribute): Handle QCfontset.
18148 (lface_same_font_attributes_p): Fix checking of LFACE_FONT_INDEX,
18149 check also LFACE_FONTSET_INDEX.
18150 (face_fontset): Check attrs[LFACE_FONTSET_INDEX], not
18151 attrs[LFACE_FONT_INDEX].
18152 (syms_of_xfaces): Intern and staticpro QCfontset.
18153
18154 * dispextern.h (enum lface_attribute_index): New member
18155 LFACE_FONTSET_INDEX.
18156
18157 * fns.c (base64_encode_1): Handle eight-bit chars correctly.
18158
181592008-02-01 Kenichi Handa <handa@m17n.org>
18160
18161 * coding.c (coding_set_destination): Fix coding->destination for
18162 the case converting a region.
18163 (encode_coding_utf_8): Encode eight-bit chars as single byte.
18164 (encode_coding_object): Fix coding->dst_pos and
18165 coding->dst_pos_byte for the case converting a region.
18166
18167 * insdel.c (insert_from_gap): Make it work even if PT != GTP.
18168
18169 * character.h (BYTE8_STRING): New macro.
18170
18171 * fns.c (base64_decode_1): Insert eight-bit chars correctly.
18172
181732008-02-01 Kenichi Handa <handa@m17n.org>
18174
18175 * xdisp.c (get_next_display_element): Don't display unibyte 8-bit
18176 characters by octal form.
18177
18178 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
18179
18180 * buffer.h (_fetch_multibyte_char_len): Delete extern.
18181 (FETCH_MULTIBYTE_CHAR, BUF_FETCH_MULTIBYTE_CHAR): Don't use
18182 _fetch_multibyte_char_len.
18183 (FETCH_CHAR_AS_MULTIBYTE): New macro.
18184
18185 * casetab.c (set_canon, set_identity, shuffle): Simplify.
18186
18187 * casefiddle.c (casify_object): Simplify. Handle the case that
18188 the case conversion change the byte length.
18189 (casify_region): Likewise.
18190
18191 * character.h (MAKE_CHAR_UNIBYTE, MAKE_CHAR_MULTIBYTE): New macros.
18192
18193 * character.c (_fetch_multibyte_char_len): Delete this variable.
18194 (syms_of_character): Setup Vprintable_chars.
18195
18196 * editfns.c (Fchar_equal): Fix for the unibyte case.
18197 (Finsert_byte): New function.
18198 (syms_of_editfns): Defsubr it.
18199
18200 * keyboard.c (read_key_sequence): Use ~CHAR_MODIFIER_MASK instead
18201 of direct code 0x3ffff.
18202
18203 * search.c (Freplace_match): Fix for the unibyte case.
18204
182052008-02-01 Kenichi Handa <handa@m17n.org>
18206
18207 * lread.c (safe_to_load_p): Fix the logic.
18208
18209 * syntax.c (scan_words): Don't treat characters belonging to
18210 different scripts as constituting a word.
18211
18212 * editfns.c (Fformat): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
18213
18214 * fontset.c (Fset_fontset_font): Treat `ascii' as charset, not script.
18215
18216 * emacs.c (main): In the case of --unibyte, instead of aborting on
18217 finding non-empty buffer, make it unibyte.
18218
182192008-02-01 Kenichi Handa <handa@m17n.org>
18220
18221 * xterm.c (x_new_fontset): Call `create-fontset-from-ascii-font'
18222 to create a fontset.
18223
182242008-02-01 Dave Love <fx@gnu.org>
18225
18226 * character.c (Funibyte_char_to_multibyte): Doc fix.
18227
18228 * xfns.c [HAVE_STDLIB_H]: Fix last change.
18229
182302008-02-01 Kenichi Handa <handa@m17n.org>
18231
18232 * fontset.c (fontset_add): Make the type `int'.
18233 (fontset_id_valid_p): Define it if FONTSET_DEBUG is defined.
18234
18235 * character.c (unibyte_char_to_multibyte)
18236 (multibyte_char_to_unibyte, Funibyte_char_to_multibyte): Refer to
18237 charset_unibyte, not charset_primary.
18238
18239 * charset.h (charset_unibyte): Extern it instead of charset_primary.
18240
18241 * charset.c (charset_unibyte): Rename from charset_primary.
18242 (Funibyte_charset): Rename from Fprimary_charset.
18243 (Fset_unibyte_charset): Rename from Fset_primary_charset.
18244 (syms_of_charset): Adjust for the above changes.
18245
18246 * w32term.c (x_produce_glyphs): Use ASCII_CHAR_P, not
18247 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
18248 it->multibyte_p is zero.
18249
18250 * lisp.h (nonascii_insert_offset, Vnonascii_translation_table):
18251 Delete extern.
18252
182532008-02-01 Kenichi Handa <handa@m17n.org>
18254
18255 * coding.c (Fdefine_coding_system_internal): Fix category setting
18256 for a coding system of type iso-2022.
18257
182582008-02-01 Kenichi Handa <handa@m17n.org>
18259
18260 * fontset.h (FS_LOAD_FONT): Call fs_load_font with the arg CHARSET -1.
18261
182622008-02-01 Kenichi Handa <handa@m17n.org>
18263
18264 * syntax.c (Vnext_word_boundary_function_table): New variable.
18265 (next-word-boundary-function-table): Declare it as a Lisp variable
18266 in syms_of_syntax.
18267 (scan_words): Call functions in Vnext_word_boundary_function_table
18268 if any.
18269
18270 * xterm.c (x_load_font): Initialize fontp->fontset to -1.
18271
18272 * fontset.c (fs_load_font): If fontp->charset is not negative,
18273 return fontp without setting its members.
18274
182752008-02-01 Dave Love <fx@gnu.org>
18276
18277 * xfns.c [HAVE_STDLIB_H]: Change logic (instead of fixing typo).
18278
18279 * m/sparc.h (HAVE_ALLOCA): Delete.
18280
18281 * s/irix6-5.h: Don't include strings.h.
18282 (bcopy, bzero, bcmp): Don't undef.
18283
18284 * s/irix6-0.h (bcopy, bzero, bcmp): Don't undef.
18285
18286 * s/usg5-4.h (NO_SIOCTL_H): Don't define.
18287 (TIOCSIGSEND): Don't test IRIX6.
18288 (bcopy, bzero, bcmp): Define conditionally.
18289
182902008-02-01 Kenichi Handa <handa@m17n.org>
18291
18292 * buffer.c (Qas, Qmake, Qto): New variables.
18293 (Fset_buffer_multibyte): New optional arg METHOD. Change caller.
18294 (syms_of_buffer): Intern and staticpro Qas, Qmake, and Qto.
18295
18296 * callproc.c (Fcall_process): Don't call insert_1_both directly if
18297 we are inserting a process output into a multibyte buffer.
18298
18299 * character.h (CHAR_TO_BYTE8): If C is not eight-bit char, call
18300 multibyte_char_to_unibyte.
18301
18302 * character.c (Funibyte_char_to_multibyte): If C can't be decoded
18303 by the primary charset, make it eight-bit char.
18304 (Fmultibyte_char_to_unibyte): Call CHAR_TO_BYTE8.
18305
18306 * charset.c (charset_eight_bit, Qeight_bit_control): New variables.
18307 (charset_8_bit__control, charset_8_bit_graphic)
18308 (Qeight_bit_control, Qeight_bit_graphic): Delete these variables.
18309 (define_charset_internal): New function.
18310 (syms_of_charset): Call define_charset_internal for pre-defined
18311 charsets.
18312
18313 * charset.h (charset_8_bit): Extern it.
18314
18315 * coding.c (make_conversion_work_buffer): Adjust for the change
18316 of Fset_buffer_multibyte.
18317 (encode_coding_raw_text): Increment p0 in the loop.
18318
18319 * lisp.h (Fset_buffer_multibyte): Adjust prototype.
18320
18321 * xdisp.c (setup_echo_area_for_printing, set_message_1): Adjust
18322 for the change of Fset_buffer_multibyte.
18323
18324 * fns.c (Fstring_to_multibyte): New function.
18325 (syms_of_fns): Declare Fstring_to_multibyte as Lisp subroutine.
18326
183272008-02-01 Dave Love <fx@gnu.org>
18328
18329 * xfns.c (x_put_x_image): Declare args.
18330
18331 * xfaces.c (font_name_registry, choose_face_font): Delete unused vars.
18332 (try_font_list): Declare an arg.
18333
18334 * xdisp.c (message2_nolog, set_message): Declare an arg.
18335
18336 * terminfo.c (tparam): Declare an arg. Use P_ to declare tparm.
18337
18338 * syntax.c (scan_sexps_forward): Declare an arg.
18339
18340 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
18341 Declare an arg.
18342
18343 * lisp.h (Fnew_fontset): Declare.
18344
18345 * keymap.c (push_key_description): Call CHARACTERP correctly.
18346
18347 * fontset.c (fontset_add): Declare args. Call make_number correctly.
18348 (face_for_char): Delete unused vars.
18349 (Fset_fontset_font): Doc fix. Delete unused vars.
18350
18351 * doc.c (Fsubstitute_command_keys): Delete unused vars.
18352
18353 * composite.c (update_compositions): Declare arg.
18354
18355 * cm.c (calccost, cmgoto): Declare args.
18356
18357 * charset.c: Remove `emacs' conditional. Doc fixes.
18358 (map_char_table_for_charset): Declare.
18359
18360 * character.c (syms_of_character) <translation-table-vector>: Doc fix.
18361
18362 * ccl.c: Remove `emacs' conditional.
18363
183642008-02-01 Kenichi Handa <handa@m17n.org>
18365
18366 The following changes are to allow specifying multiple font
18367 patterns for a character range (specified by script or charset).
18368
18369 * Makefile.in (abbrev.o): Depend on syntax.h.
18370 (xfaces.o): Depend on charset.h.
18371
18372 * alloc.c (Fmake_string): Use ASCII_CHAR_P, not
18373 SINGLE_BYTE_CHAR_P.
18374
18375 * ccl.c (Fccl_execute_on_string): Add `const' to local variables.
18376
18377 * character.h (Vchar_script_table): Extern it.
18378
18379 * character.c (Vscript_alist): Delete.
18380 (Vchar_script_table, Qchar_script_table): New variable.
18381 (syms_of_character): Declare Vchar_script_table as a lisp variable
18382 and initialize it.
18383
18384 * chartab.c (Fmake_char_table): Doc fix. If PURPOSE doesn't
18385 have property char-table-extra-slots, make no extra slot.
18386
18387 * dispextern.h (struct face): Delete member `charset'.
18388 (FACE_SUITABLE_FOR_CHAR_P, FACE_FOR): Use ASCII_CHAR_P, not
18389 SINGLE_BYTE_CHAR_P.
18390 (choose_face_font, lookup_non_ascii_face, font_name_registry):
18391 Add prototypes.
18392 (lookup_face, lookup_named_face, lookup_derived_face): Fix prototype.
18393 (generate_ascii_font_name): Rename from generate_ascii_font.
18394
18395 * fontset.h (get_font_repertory_func): New prototype.
18396 (make_fontset_for_ascii_face, fs_load_font): Fix prototypes.
18397 (FS_LOAD_FONT): Call fs_load_font with the 3rd arg charset_ascii.
18398
18399 * fontset.c (Qprepend, Qappend): New variables.
18400 (FONTSET_CHARSET_ALIST, FONTSET_FACE_ALIST): Delete.
18401 (FONTSET_NOFONT_FACE, FONTSET_REPERTORY): New macros.
18402 (FONTSET_REF): Optimize if FONTSET is Vdefault_fontset.
18403 (FONTSET_REF_AND_RANGE, FONTSET_ADD): New macros.
18404 (fontset_ref_and_range, fontset_add, reorder_font_vector)
18405 (load_font_get_repertory): New functions.
18406 (fontset_set): Delete.
18407 (fontset_face): New arg FACE. Return face ID, not face.
18408 Complete re-write to handle new fontset structure. Change caller.
18409 (free_face_fontset): Use ASET istead of AREF (X) = Y.
18410 (face_for_char): Don't call lookup_face.
18411 (make_fontset_for_ascii_face): New arg FACE.
18412 (fs_load_font): New arg CHARSET_ID. Don't check
18413 Vfont_encoding_alist here.
18414 (find_font_encoding): New function.
18415 (list_fontsets): Use STRINGP, not ! NILP.
18416 (accumulate_script_ranges): New function.
18417 (Fset_fontset_font, Fnew_fontset, Ffontset_info): Completely
18418 re-written to handle new fontset structure.
18419 (Ffontset_font): Return a copy of element.
18420 (syms_of_fontset): Define symbols Qprepend and Qappend. Fix
18421 docstring of font-encoding-alist.
18422
18423 * lisp.h (CHAR_TABLE_REF): Remove unnecessary check (IDX >= 0).
18424 (Fset_fotset_font): Fix arguments to 5.
18425
18426 * msdos.c (XMenuActivate): Adjust for the change of lookup_derived_face.
18427
18428 * xdisp.c (message_dolog, set_message_1, extend_face_to_end_of_line):
18429 Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
18430 (highlight_trailing_whitespace): Adjust for the change of
18431 lookup_named_face.
18432
18433 * xfaces.c: Include charset.h.
18434 (load_face_font): Delete argument C. Change caller.
18435 (generate_ascii_font_name): Rename from generate_ascii_font.
18436 (font_name_registry): New function.
18437 (cache_face): Store ascii faces before non-ascii faces in buckets.
18438 (lookup_face): Delete arguments C and BASE_FACE. Change caller.
18439 Lookup only ascii faces.
18440 (lookup_non_ascii_face): New function.
18441 (lookup_named_face): Delete argument C. Change caller.
18442 (lookup_derived_face): Delete argument C. Change caller.
18443 (try_font_list): New arg PATTERN. Change caller. If PATTERN is
18444 a string, just call font_list with it.
18445 (choose_face_font): Delete arguments FACE and C. New arg
18446 FONT_SPEC. Change caller.
18447 (realize_face, realize_x_face): Delete arguments C and BASE_FACE.
18448 Change caller.
18449 (realize_non_ascii_face): New function.
18450 (realize_x_face): Call load_face_font here.
18451 (realize_tty_face): Delete argument C. Change caller.
18452 (compute_char_face): If CH is not ascii, call FACE_FOR_CHAR to
18453 get a face ID.
18454 (dump_realized_face): Don't print charset of FACE.
18455
18456 * xfns.c (x_set_font): Always call x_new_fontset and
18457 store_frame_parameter.
18458 (Fx_create_frame): Call x_new_fontset, not x_new_font.
18459 (syms_of_xfns): Set get_font_repertory_func to x_get_font_repertory.
18460
18461 * xterm.h (x_get_font_repertory): Extern it.
18462
18463 * xterm.c (x_produce_glyphs): Use ASCII_CHAR_P, not
18464 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
18465 it->multibyte_p is zero.
18466 (XTread_socket): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
18467 (x_new_fontset): If FONTSETNAME doesn't match any existing
18468 fontsets, create a new one.
18469 (x_get_font_repertory): New function.
18470
184712008-02-01 Kenichi Handa <handa@m17n.org>
18472
18473 * coding.c (Ffind_coding_systems_region_internal): Detect an
18474 ASCII only string correctly.
18475
18476 * lread.c (Fload): Don't load with Qload_force_doc_strings t if
18477 version is 0.
18478
184792008-02-01 Kenichi Handa <handa@m17n.org>
18480
18481 * lread.c: Include "coding.h".
18482 (Qget_emacs_mule_file_char, Qload_force_doc_strings)
18483 (load_each_byte, unread_char): New variables.
18484 (readchar_backlog): Delete.
18485 (readchar): Return a character unless load_each_byte is nonzero.
18486 Handle the case that readcharfun is Qget_emacs_mule_file_char or a
18487 cons. If unread_char is not -1, simply return it.
18488 (unreadchar): Handle the case that readcharfun is
18489 Qget_emacs_mule_file_char or a cons. Set unread_char if necessary.
18490 (read_multibyte): Delete.
18491 (readbyte_for_lambda, readbyte_from_file, readbyte_from_string)
18492 (read_emacs_mule_char): New functions.
18493 (Fload): Even if the file doesn't have the extension ".elc", if
18494 safe_to_load_p returns a positive version number, assume that the
18495 file contains bytecompiled code. If the version is less than 22,
18496 load the file while decoding multibyte sequences by emacs-mule.
18497 (readevalloop): Don't use readchar_backlog.
18498 (Fread): Likewise. Pay attention to the case that STREAM is a cons.
18499 (Fread_from_string): Pay attention to the case that STREAM is a cons.
18500 (read_escape): Delete the arg BYTEREP.
18501 (read1): Set load_each_byte to 1 temporarily while handling
18502 #@NUMBER. Don't call read_multibyte.
18503 (read_vector): Call Fread with a cons. If readcharfun is
18504 Qget_emacs_mule_file_char, decode the read string by emacs-mule.
18505 (read_list): If doc_reference is 2, make the cdr part string as unibyte.
18506 (syms_of_lread): Intern and staticpro Qget_emacs_mule_file_char
18507 and Qload_force_doc_strings.
18508
185092008-02-01 Kenichi Handa <handa@m17n.org>
18510
18511 * xdisp.c (face_before_or_after_it_pos): Call
18512 FETCH_MULTIBYTE_CHAR with byte postion, not char position.
18513
185142008-02-01 Kenichi Handa <handa@m17n.org>
18515
18516 * character.h (TRAILING_CODE_P): New macro.
18517 (MAYBE_UNIFY_CHAR): Adjust for the change of Funify_charset.
18518 (string_char_with_unification): Fix prototype.
18519 (Vscript_alist): Extern it.
18520
18521 * character.c (Vscript_alist): New variable.
18522 (string_char_with_unification, str_as_unibyte)
18523 (string_escape_byte8): Add `const' to local variables.
18524 (syms_of_character): Declare script-alist as a Lisp variable.
18525
18526 * charset.h (Vcharset_ordered_list): Extern it.
18527 (charset_ordered_list_tick): Extern it.
18528 (EMACS_MULE_LEADING_CODE_PRIVATE_11)
18529 (EMACS_MULE_LEADING_CODE_PRIVATE_12)
18530 (EMACS_MULE_LEADING_CODE_PRIVATE_21)
18531 (EMACS_MULE_LEADING_CODE_PRIVATE_22): New macros.
18532 (Funify_charset): Adjust for the change of Funify_charset.
18533
18534 * charset.c (charset_ordered_list_tick): New variable.
18535 (Fdefine_charset_internal): Increment charset_ordered_list_tick.
18536 (Funify_charset): New optional arg DEUNIFY. If it is non-nil,
18537 deunify intead of unify a charset.
18538 (string_xstring_p): Add `const' to local variables.
18539 (find_charsets_in_text): Add `const' to arguments and local variables.
18540 (encode_char): Adjust for the change of Funify_charset. Fix
18541 detecting of invalid code.
18542 (Fset_charset_priority): Increment charset_ordered_list_tick.
18543 (Fmap_charset_chars): Fix handling of default value for FROM_CODE
18544 and TO_CODE.
18545
18546 * coding.c (LEADING_CODE_PRIVATE_11, LEADING_CODE_PRIVATE_12)
18547 (LEADING_CODE_PRIVATE_21, LEADING_CODE_PRIVATE_22): Delete macros.
18548 Changed callers to use EMACS_MULE_LEADING_CODE_PRIVATE_11, etc.
18549 (decode_coding_ccl, consume_chars)
18550 (Ffind_coding_systems_region_internal)
18551 (Fcheck_coding_systems_region): Add `const' to local variables.
18552
18553 * print.c (print_object): Use octal form for printing the
18554 contents of a bool vector.
18555
185562008-02-01 Dave Love <fx@gnu.org>
18557
18558 * lread.c (Fload) <!load_dangerous_libraries>: Don't leak fd.
18559 <version == 20>: Refuse to load.
18560
185612008-02-01 Dave Love <fx@gnu.org>
18562
18563 * fns.c: Move coding.h.
18564 (Qcodeset, Qdays, Qmonths): New.
18565 (concat): Use CHARACTERP instead of INTEGERP.
18566 (Flocale_codeset): Delete.
18567 (Flanginfo): New function.
18568 (syms_of_fns): Change accordingly.
18569
18570 * coding.c (adjust_coding_eol_type): Fix eol_type/eol_seen mixup.
18571
185722008-02-01 Dave Love <fx@gnu.org>
18573
18574 * casetab.c (init_casetab_once, init_casetab_once): Fix
18575 CHAR_TABLE_SET call.
18576
18577 * category.c (Fmodify_category_entry): Fix CATEGORY_MEMBER call.
18578
18579 * character.c (syms_of_character): Fix CHAR_TABLE_SET call.
18580
18581 * charset.c (Fmap_charset_chars): Check args. Convert Lisp types.
18582 (load_charset_map, Fdeclare_equiv_charset, Fencode_char)
18583 (Fset_charset_priority, syms_of_charset): Convert Lisp types.
18584
18585 * charset.h (CHECK_CHARSET_GET_ID): Use XINT on AREF result.
18586
18587 * coding.c (ENCODE_DESIGNATION, decode_eol)
18588 (make_conversion_work_buffer, code_conversion_restore)
18589 (Fdefine_coding_system_internal): Convert Lisp types.
18590 (code_conversion_restore): Use EQ, not ==.
18591 (Fencode_coding_string): Fix code_convert_string call.
18592
18593 * coding.h (code_convert_region): Fix prototype.
18594
18595 * dispextern.h (redraw_frame, redraw_garbaged_frames): Remove.
18596
18597 * fontset.c (fontset_ref, fontset_set, fs_load_font)
18598 (Ffontset_info): Convert Lisp types.
18599
18600 * syntax.h (SYNTAX_ENTRY_INT): Don't use make_number.
18601
18602 * xterm.c (note_mouse_movement): Fix call of window_from_coordinates.
18603
18604 * xdisp.c (display_mode_element): Fix call of Fset_text_properties.
18605
18606 * chartab.c: Include "...h", not <...h> in some cases.
18607
18608 * callproc.c (Fcall_process): Remove unused variables.
18609
186102008-02-01 Dave Love <fx@gnu.org>
18611
18612 * coding.c (Fset_coding_system_priority): Allow null arg list.
18613
186142008-02-01 Dave Love <fx@gnu.org>
18615
18616 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
18617 (Fself_insert_and_exit): Use CHARACTERP.
18618
18619 * callproc.c (Fcall_process): Remove unused vars.
18620
18621 * xterm.c (XTread_socket): Add extra dead keysyms.
18622
18623 * xdisp.c (decode_mode_spec_coding): Use CHARACTERP.
18624
18625 * dispextern.h: Remove prototypes for redraw_frame,
18626 redraw_garbaged_frames.
18627
18628 * cmds.c (Fself_insert_command): Use CHARACTERP.
18629
18630 * chartab.c (make_sub_char_table): Remove unused var.
18631 (Fset_char_table_default, Fmap_char_table): Doc fix.
18632
18633 * keymap.c (access_keymap): Remove generic char code.
18634 (push_key_description): Use CHARACTERP.
18635
186362008-02-01 Dave Love <fx@gnu.org>
18637
18638 * charset.c: Doc fixes.
18639 (Funify_charset): Extra checking.
18640
186412008-02-01 Dave Love <fx@gnu.org>
18642
18643 * lread.c: Remove some unused variables.
18644 (safe_to_load_p): If safe, return the magic number version byte.
18645 (Fload): Maybe use load-with-code-conversion.
18646
186472008-02-01 Kenichi Handa <handa@m17n.org>
18648
18649 * category.c (Fmodify_category_entry): Don't modify the contents
18650 of category_set for characters out of the range. Avoid
18651 unnecessary modification.
18652
18653 * character.h (MAYBE_UNIFY_CHAR): Adjust for the change of
18654 Vchar_unify_table. The default value of the table is now nil.
18655
18656 * character.c (syms_of_character): Setup Vchar_width_table for
18657 eight-bit-control and raw-byte chars.
18658
18659 * charset.h (enum define_charset_arg_index): Delete
18660 charset_arg_parents and add charset_arg_subset and
18661 charset_arg_superset.
18662 (enum charset_attr_index): Delete charset_parents and add
18663 charset_subset and charset_superset.
18664 (enum charset_method): Delete CHARSET_METHOD_INHERIT and add
18665 CHARSET_METHOD_SUBSET and CHARSET_METHOD_SUPERSET.
18666 (CHARSET_ATTR_PARENTS, CHARSET_PARENTS): Delete.
18667 (CHARSET_ATTR_SUBSET, CHARSET_ATTR_SUPERSET, CHARSET_SUBSET)
18668 (CHARSET_SUPERSET): New macros.
18669 (charset_work): Extern it.
18670 (ENCODE_CHAR): Use charset_work.
18671 (CHAR_CHARSET_P): Adjust for the change of encoder format.
18672 (map_charset_chars): Extern it.
18673
18674 * charset.c (load_charset_map): Set the default value of encoder
18675 and deunifier char-tables to nil.
18676 (map_charset_chars): Change argument. Change callers. Use
18677 map_char_table_for_charset instead of map_char_table.
18678 (Fmap_charset_chars): New optional args from_code and to_code.
18679 (Fdefine_charset_internal): Adjust for the change of
18680 `define-charset' (:parents -> :subset or :superset).
18681 (charset_work): New variable.
18682 (encode_char, syms_of_charset): Adjust for the change of
18683 Fdefine_charset_internal.
18684 (Ffind_charset_string): Setup the vector `charsets' correctly.
18685
18686 * chartab.c (sub_char_table_ref_and_range): New arg default. Fix
18687 the previous change.
18688 (char_table_ref_and_range): Adjust for the above change.
18689 (map_sub_char_table_for_charset): New function.
18690 (map_char_table_for_charset): New function.
18691
18692 * keymap.c (describe_vector): Handle a char-table directly here.
18693 (describe_char_table): Delete.
18694
18695 * lisp.h (map_charset_chars): Delete.
18696
186972008-02-01 Dave Love <fx@gnu.org>
18698
18699 * fns.c (count_combining): Comment out (unused).
18700 (Flocale_codeset): New.
18701 (syms_of_fns): Defsubr it.
18702
18703 * config.in (HAVE_PTY_H, HAVE_SIZE_T, HAVE_LANGINFO_CODESET): New.
18704 (size_t): Remove.
18705
187062008-02-01 Dave Love <fx@gnu.org>
18707
18708 * Makefile.in (chartab.o): Depend on charset.h.
18709
187102008-02-01 Kenichi Handa <handa@m17n.org>
18711
18712 * character.c (syms_of_character): Set the default value of
18713 Vprintable_chars to Qnil.
18714
187152008-02-01 Dave Love <fx@gnu.org>
18716
18717 * Makefile.in (lisp, shortlisp): Change indian.elc to indian.el.
18718
187192008-02-01 Kenichi Handa <handa@m17n.org>
18720
18721 * charset.c (load_charset_map): Handle the case that from < to
18722 correctly.
18723
18724 * coding.c (encode_coding_emacs_mule, encode_coding_iso_2022)
18725 (encode_coding_sjis, encode_coding_big5, encode_coding_charset):
18726 Pay attention to raw-8-bit chars.
18727
187282008-02-01 Kenichi Handa <handa@m17n.org>
18729
18730 * Makefile.in (lisp, shortlisp): Change chinese.elc to chinese.el.
18731 It is not bytecompiled now.
18732
18733 * charset.c (charset_jisx0201_roman, charset_jisx0208_1978)
18734 (charset_jisx0208): New variables.
18735 (Fdefine_charset_internal): Setup them if appropriate.
18736 (init_charset_once): Initialize them to -1.
18737
18738 * charset.h (charset_jisx0201_roman, charset_jisx0208_1978)
18739 (charset_jisx0208): Extern them.
18740
18741 * coding.c (CODING_ISO_FLAG_USE_ROMAN): New macro.
18742 (CODING_ISO_FLAG_USE_OLDJIS): New macro.
18743 (CODING_ISO_FLAG_FULL_SUPPORT): Change macro definition.
18744 (setup_iso_safe_charsets): Fix arguments to Fassq.
18745 (DECODE_DESIGNATION, ENCODE_ISO_CHARACTER_DIMENSION1)
18746 (ENCODE_ISO_CHARACTER_DIMENSION2): Pay attention to
18747 CODING_ISO_FLAG_USE_ROMAN and CODING_ISO_FLAG_USE_OLDJIS.
18748 (encode_coding_iso_2022): Change the 1st arg to
18749 ENCODE_ISO_CHARACTER to a variable.
18750
187512008-02-01 Kenichi Handa <handa@m17n.org>
18752
18753 * charset.h (enum define_charset_arg_index): New enums
18754 charset_arg_min_code and charset_arg_max_code.
18755 (struct charset): New member char_index_offset.
18756
18757 * charset.c (CODE_POINT_TO_INDEX, INDEX_TO_CODE_POINT):
18758 Take charset->char_index_offset into account.
18759 (Fdefine_charset_internal): Handle args[charset_arg_min_code] and
18760 args[charset_arg_max_code]. Setup charset.char_index_offset.
18761 (syms_of_charset): Fix args to Fdefine_charset_internal.
18762
187632008-02-01 Dave Love <fx@gnu.org>
18764
18765 * coding.c (decode_coding_utf_8): Reject overlong sequences.
18766
187672008-02-01 Dave Love <fx@gnu.org>
18768
18769 * coding.c: Doc fixes.
18770 (Fcoding_system_aliases): Fix return value.
18771 (Qmac): Remove (duplicated) definition.
18772
187732008-02-01 Dave Love <fx@gnu.org>
18774
362654a6
JB
18775 * charset.c (Fcharset_priority_list, Fset_charset_priority):
18776 New functions.
aac0c6e3
MR
18777
18778 * character.c (Fstring): Doc fix.
18779
18780 * charset.c (Fdefine_charset_alias): Update Vcharset_list.
18781
362654a6 18782 * fontset.c (Ffontset_info): Doc fix. Return charset names, not ids.
aac0c6e3
MR
18783 (font-encoding-alist): Doc fix.
18784
187852008-02-01 Dave Love <fx@gnu.org>
18786
18787 * term.c (costs_set): Declare static, non-initialized for pcc.
18788 (encode_terminal_code): Remove unused var.
18789
18790 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
18791 for K&R.
18792
18793 * xterm.c (xlwmenu_window_p): Fix prototype for K&R.
18794
18795 * coding.c (setup_iso_safe_charsets): Fix arg decl for K&R.
18796 (suffixes): Move out of make_subsidiaries for K&R.
18797
18798 * charset.c (map_charset_chars): Fix c_function declaration for K&R.
18799
18800 * lisp.h (DEFUN) [!PROTOTYPES]: Remove spurious `args'.
18801
188022008-02-01 Dave Love <fx@gnu.org>
18803
18804 * data.c (Fchar_or_string_p): Doc fix. Use CHARACTERP.
18805
18806 * category.c (Fmodify_category_entry): Doc fix. Remove unused vars.
18807
188082008-02-01 Yong Lu <lyongu@asia-infonet.com>
18809
18810 * charset.c (Fdefine_charset_internal): Fix argument to bzero.
18811
18812 * coding.c (decode_coding_charset): Workaround for the bug of GCC 2.96.
18813
188142008-02-01 Kenichi Handa <handa@m17n.org>
18815
18816 * Makefile.in (lisp, shortlisp): Change cyrillic.elc to cyrillic.el,
18817 vietnamese.elc to vietnamese.el. They are not bytecompiled now.
18818
188192008-02-01 Kenichi Handa <handa@m17n.org>
18820
18821 * coding.c (decode_coding_charset): Adjust for the change of
18822 Fdefine_coding_system_internal.
18823 (Fdefine_coding_system_internal): For a coding system of
18824 `charset' type, store a list of charset IDs in
18825 `charset_attr_charset_valids' element of coding attributes.
18826
188272008-02-01 Kenichi Handa <handa@m17n.org>
18828
18829 * coding.c (ONE_MORE_BYTE_NO_CHECK): Increment consumed_chars.
18830 (emacs_mule_char): New arg src. Delete arg `composition'. Change
18831 caller. Handle 2-byte and 3-byte charsets correctly.
18832 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): Rename from
18833 DECODE_EMACS_MULE_COMPOSITION_RULE. Change caller.
18834 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New macro.
18835 (DECODE_EMACS_MULE_21_COMPOSITION): Call
18836 DECODE_EMACS_MULE_COMPOSITION_RULE_21. Produce correct annotation
18837 sequence.
18838 (decode_coding_emacs_mule): Handle composition correctly. Rewind
18839 `src' and `consumed_chars' correctly before calling emacs_mule_char.
18840 (DECODE_COMPOSITION_START): Correctly handle the case of altchar
18841 and alt&rule composition.
18842 (decode_coding_iso_2022): Handle composition correctly.
18843 (init_coding_once): Setup emacs_mule_bytes for private charsets.
18844
18845 * charset.c (Fdefine_charset_internal): Fix bug for the case of
18846 re-defining a charset. If the charset has :emacs-mule-id, setup
18847 emacs_mule_bytes.
18848 (Fmake_char): If CODE1 is nil, use the minimum code of the charset.
18849
188502008-02-01 Kenichi Handa <handa@m17n.org>
18851
18852 * coding.c (encode_coding_iso_2022, encode_coding_sjis)
18853 (encode_coding_big5, encode_coding_charset): If coding requires safe
18854 encoding, produce a character specified by
18855 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
18856
188572008-02-01 Dave Love <fx@gnu.org>
18858
18859 * xterm.c (XSetIMValues): Declare.
18860
18861 * process.c: Conditionally include sys/wait.h, pty.h.
18862
18863 * print.c (print_object): Fix print format for 64-bit systems.
18864
18865 * keyboard.c (modify_event_symbol): Fix print format for 64-bit systems.
18866
18867 * buffer.c (emacs_strerror): Declare.
18868
18869 * fontset.c (Fclear_face_cache): Declare.
18870 (accumulate_font_info): Comment-out (unused).
18871 (face_for_char, Fset_fontset_font, Ffontset_info): Remove unused
18872 variables.
18873
18874 * character.h (string_escape_byte8): Declare.
18875
18876 * charset.c (load_charset_map, load_charset_map_from_file): Remove
18877 unused vars.
18878 (Fdefine_charset_internal, Fsplit_char, syms_of_charset)
18879 (Fmap_charset_chars): Doc fix.
18880
18881 * coding.c (Vchar_coding_system_table, Qchar_coding_system): Remove.
18882 (Fset_coding_system_priority, Fset_coding_system_priority)
18883 (Fdefine_coding_system_internal): Doc fix.
18884
188852008-02-01 Dave Love <fx@gnu.org>
18886
18887 * s/osf5-0.h (C_SWITCH_SYSTEM) [!__GNUC__]: Remove -nointrinsics.
18888
188892008-02-01 Kenichi Handa <handa@m17n.org>
18890
18891 * character.c (string_escape_byte8): Make multibyte string with
18892 correct size.
18893
18894 * charset.c (Fmake_char): Delete unnecessary code.
18895
188962008-02-01 Kenichi Handa <handa@m17n.org>
18897
18898 * xfns.c (x_encode_text): Allocate coding.destination here, and
18899 call encode_coding_object with dst_object Qnil.
18900
18901 * buffer.c (Fset_buffer_multibyte): Convert 8-bit bytes to
18902 multibyte form correctly.
18903
18904 * fontset.c (fs_load_font): Check fontp->full_name (not fontname)
18905 against Vfont_encoding_alist.
18906
18907 * coding.c (Fdecode_sjis_char): Fix typo (0x7F->0xFF). Fix the
18908 handling of charset list.
18909 (encode_coding_iso_2022): Setup coding->safe_charsets in advance.
18910 (decode_coding_object): Move point to coding->dst_pos before
18911 calling post-read-conversion function.
18912 (encode_coding_object): Give correct arguments to
18913 pre-write-conversion. Ignore the return value of
18914 pre-write-conversion function. Pay attention to the case that
18915 pre-write-conversion changes the current buffer. If dst_object is
18916 Qt, even if coding->src_bytes is zero, allocate at least one byte
18917 to coding->destination.
18918
18919 * coding.h (JIS_TO_SJIS): Fix typo (j1->s1, j2->s2).
18920
18921 * charset.c (Fmake_char): Make it more backward compatible.
18922 (Fmap_charset_chars): Fix docstring.
18923
189242008-02-01 Dave Love <fx@gnu.org>
18925
18926 * coding.c: Doc fixes.
18927 (Fdefine_coding_system_alias): Use names, not symbols, in
18928 coding-system-alist.
18929
189302008-02-01 Kenichi Handa <handa@m17n.org>
18931
18932 * fontset.c (free_realized_fontsets): Call Fclear_face_cache instead
18933 of calling free_realized_face.
18934
189352008-02-01 Yong Lu <lyongu@asia-infonet.com>
18936
18937 * charset.c (read_hex): Don't treat SPC as a comment starter.
18938 (decode_char): If CODE_POINT_TO_INDEX returns -1, always return -1.
18939 (Fdecode_char): Fix typo.
18940
189412008-02-01 Kenichi Handa <handa@m17n.org>
18942
18943 * charset.h (struct charset): New member `code_space_mask'.
18944
18945 * coding.c (coding_set_source): Delete the local variable beg_byte.
18946 (encode_coding_charset, Fdefine_coding_system_internal):
18947 Delete the local variable charset.
18948 (Fdefine_coding_system_internal): Setup
18949 attrs[coding_attr_charset_valids] correctly.
18950
18951 * charset.c (CODE_POINT_TO_INDEX): Utilize `code_space_mask'
18952 member to check if CODE is valid or not.
18953 (Fdefine_charset_internal): Initialize `code_space_mask' member.
18954 (encode_char): Before calling CODE_POINT_TO_INDEX, check if CODE
18955 is within the range of charset->min_code and carset->max_code.
18956
189572008-02-01 Dave Love <fx@gnu.org>
18958
18959 * syntax.h (syntax_temp) [!__GNUC__]: Declare.
18960
18961 * dispextern.h (generate_ascii_font): Fix return type.
18962
18963 * xfaces.c (generate_ascii_font): Fix arg declaration.
18964
18965 * coding.c (coding_inherit_eol_type)
18966 (Fset_terminal_coding_system_internal)
18967 (Fset_safe_terminal_coding_system_internal): Fix arg declarations.
18968
189692008-02-01 Kenichi Handa <handa@m17n.org>
18970
18971 * coding.c (decode_coding_charset, encode_coding_charset): Handle
18972 multiple charsets correctly.
18973
189742008-02-01 Kenichi Handa <handa@m17n.org>
18975
18976 * search.c (boyer_moore): Fix handling of multibyte character
18977 translation.
18978
18979 * xdisp.c (display_mode_element): When the variable `elt' is
18980 changed, update `this' and `lisp_string'.
18981
189822008-02-01 Kenichi Handa <handa@m17n.org>
18983
18984 * buffer.c (Fset_buffer_multibyte): Fix 8-bit char handling.
18985
18986 * callproc.c (Fcall_process): Be sure to give the current buffer
18987 to decode_coding_c_string. Update PT and PT_BYTE after the insertion.
18988
18989 * charset.c (struct charset_map_entries): New struct.
18990 (load_charset_map): Rename from parse_charset_map. New args
18991 entries and n_entries. Change caller.
18992 (load_charset_map_from_file): Rename from load_charset_map.
18993 Change caller. New arg control_flag. Call load_charset_map at
18994 the tail.
18995 (load_charset_map_from_vector): New function.
18996 (Fdefine_charset_internal): Setup charset.compact_codes_p.
18997 (encode_char): If the charset is compact, change a character index
18998 to a code point.
18999
19000 * coding.c (coding_alloc_by_making_gap): Check the case that the
19001 source and destination are the same correctly.
19002 (decode_coding_raw_text): Set coding->consumed_char and
19003 coding->consumed to 0.
19004 (produce_chars): If coding->chars_at_source is nonzero, update
19005 coding->consumed_char and coding->consumed before calling
19006 alloc_destination.
19007 (Fdefine_coding_system_alias): Register ALIAS in
19008 Vcoding_system_alist.
19009 (syms_of_coding): Define `no-conversion' coding system at the tail.
19010
19011 * fileio.c (Finsert_file_contents): Set coding_system instead of
19012 val. If the current buffer is multibyte, always call
19013 decode_coding_gap.
19014
19015 * xfaces.c (try_font_list): Give higher priority to fontset's
19016 family than face's family.
19017
190182008-02-01 Kenichi Handa <handa@m17n.org>
19019
19020 * callproc.c (Fcall_process): Be sure to give the current buffer
19021 to decode_coding_c_string.
19022
19023 * xfaces.c (try_font_list): Give a family specified in a fontset
19024 higher priority than a family specified in a face.
19025
190262008-02-01 Kenichi Handa <handa@m17n.org>
19027
19028 * fileio.c (Finsert_file_contents): Fix calculation of `inserted'.
19029 Fix arguments to insert_from_buffer.
19030
19031 * xdisp.c (display_mode_element): Fix calculation of `bytepos'.
19032
190332008-02-01 Kenichi Handa <handa@m17n.org>
19034
19035 * coding.c (produce_chars): Set the variable `multibytep' correctly.
19036 (decode_coding_gap): Set coding->dst_multibyte correctly.
19037
190382008-02-01 Kenichi Handa <handa@m17n.org>
19039
19040 * coding.c (encode_coding_utf_8): Initialize produced_chars to 0.
19041 (decode_coding_utf_16): Fix converting high and low bytes to code-point.
19042 (encode_coding_utf_16): Substitute coding->default_char for
19043 non-Unicode characters.
19044 (decode_coding): Don't call record_insert here.
19045 (setup_coding_system): Initialize `surrogate' of
19046 coding->spec.utf_16 to 0.
19047 (EMIT_ONE_BYTE): Fix for multibyte case.
19048
19049 * insdel.c (insert_from_gap): Call record_insert.
19050
190512008-02-01 Kenichi Handa <handa@m17n.org>
19052
19053 * casefiddle.c (casify_region): Fix multibyte case.
19054
19055 * character.c (c_string_width): Add return type `int'.
19056 (char_string_with_unification): Delete arg ADVANCED.
19057
19058 * character.h (CHAR_VALID_P): Don't call CHARACTERP.
19059 (CHAR_STRING): Adjust for the change of char_string_with_unification.
19060 (CHAR_STRING_ADVANCE): Make it do-while statement.
19061
19062 * chartab.c (sub_char_table_set_range): Optimize for the case
19063 DEPTH == 3. Add workaround code for a GCC optimization bug.
19064
19065 * charset.c (parse_charset_map): Remove an unused variable.
19066
19067 * coding.c: Delete unused variables.
19068
19069 * fileio.c (Finsert_file_contents): Set coding_system to Qnil
19070 earlier. If inserted is zero and the coding system doesn't
19071 require flushing, don't call decode_coding_gap.
19072
19073 * syntax.h (SET_RAW_SYNTAX_ENTRY): Don't call make_number.
19074
190752008-02-01 Kenichi Handa <handa@m17n.org>
19076
19077 The following changes are for using Unicode as an internal
19078 character model, and use UTF-8 format for buffer/string
19079 representation.
19080
19081 * .gdbinit (xchartable): Adjust for the change of char table structure.
19082 (xsubchartable, xcoding, xcharset, xcurbuf): New commands.
19083
19084 * Makefile.in (obj): Add character.o and chartab.o.
19085 (lisp, shortlisp): Remove utf-8.elc.
19086 (*.o): For many files, change dependency on charset.h to
19087 character.h, and add dependency on character.h.
19088 (character.o, chartab.o): New targets.
19089
19090 * abbrev.c, bytecode.c, casefiddle.c, cmds.c, dispnew.c, doc.c:
19091 * doprnt.c, dosfns.c, frame.c, marker.c, minibuf.c, msdos.c:
19092 * w16select.c, w32bdf.c, w32console.c: Include "character.h" instead
19093 of "charset.h".
19094
19095 * dired.c, filelock.c: Include "character.h".
19096
19097 * alloc.c: Include "character.h" instead of "charset.h".
19098 (Fmake_char_table, make_sub_char_table): Move to chartab.c.
19099 (syms_of_alloc): Remove defsubr for Smake_char_table.
19100
19101 * buffer.c: Include "character.h" instead of "charset.h", don't
19102 include "coding.h".
19103 (Fset_buffer_multibyte): Adjust for UTF-8.
19104
19105 * buffer.h: EXFUN Fbuffer_live_p.
19106
19107 * callproc.c: Include "character.h" instead of "charset.h".
19108 (Fcall_process): Big change for the new code-conversion APIs.
19109
19110 * casetab.c: Include "character.h" instead of "charset.h".
19111 (set_canon, set_identity, shuffle): Adjust for the new
19112 map_char_table spec.
19113 (init_casetab_once): Call CHAR_TABLE_SET instead of directly
19114 accessing the char table structure.
19115
19116 * chartab.c: New file that implements char table.
19117
19118 * category.c: Include "character.h".
19119 (copy_category_entry): New function.
19120 (copy_category_table): Call map_char_table and copy_category_entry.
19121 (Fmake_category_table): Initialize all top-level slots.
19122 (char_category_set): New function.
19123 (modify_lower_category_set): Delete.
19124 (Fmodify_category_entry): Call char_table_ref_and_range.
19125
19126 * category.h (CATEGORY_SET): Just call char_category_set.
19127
19128 * ccl.c: Include "character.h".
19129 (Qccl, Qcclp): New variables.
19130 (CCL_WRITE_CHAR): Alway treat the arg CH as a character even if
19131 it's less than 256.
19132 (CCL_WRITE_MULTIBYTE_CHAR): Delete.
19133 (CCL_WRITE_STRING, CCL_READ_CHAR): Adjust for the change of SRC
19134 and DST type.
19135 (ccl_driver): Change types of argument, adjust code accordingly.
19136 (Fccl_execute, Fccl_execute_on_string): Adjust for the change of
19137 ccl_driver.
19138 (syms_of_ccl): Intern and staticpro Qccl and Qcclp.
19139
19140 * ccl.h (struct ccl_program): Delete members eol_type and multibyte.
19141 New members src_multibyte, dst_multibyte, consumed, and produced.
19142 (struct ccl_spec): Delete members decoder and encoder. New member ccl.
19143 (CODING_SPEC_CCL_PROGRAM): New macro.
19144 (ccl_driver): Update prototype.
19145 (Qccl, Qcclp, Fccl_program_p): Extern them.
19146 (CHECK_CCL_PROGRAM): New macro.
19147
19148 * character.c, character.h, chartab.c: New files.
19149
19150 * charset.c: Mostly re-written. Move character and multibyte sequence
19151 handling codes to character.c.
19152
19153 * charset.h: Mostly re-written. Move character and multibyte sequence
19154 handling codes to character.h.
19155
19156 * coding.c, coding.h: Mostly re-written.
19157
19158 * composite.c: Include "character.h" instead of "charset.h".
19159 (CHAR_WIDTH): Move to character.h.
19160 (HASH_KEY, HASH_VALUE): Delete.
19161
19162 * composite.h (enum composition_method): Change order of enumeration
19163 symbols.
19164
19165 * data.c: Include "character.h" instead of "charset.h".
19166 (Faref): Call CHAR_TABLE_REF for a char table.
19167 (Faset): Call CHAR_TABLE_SET for a char table.
19168
19169 * dispextern.h (free_realized_face, check_face_attribytes)
19170 (generate_ascii_font): Extern them.
19171 (free_realized_multibyte_face): Delete extern.
19172
19173 * disptab.h (DISP_CHAR_VECTOR): Adjust for the change of char
19174 table structure.
19175
19176 * editfns.c: Include "character.h" instead of "charset.h".
19177 (Fchar_to_string): Always call CHAR_STRING.
19178
19179 * emacs.c (main): Call init_charset_once, init_charset,
19180 syms_of_chartab, and syms_of_character.
19181
19182 * fileio.c: Include "character.h" instead of "charset.h".
19183 (Finsert_file_contents): Big change for the new code-conversion API.
19184 (choose_write_coding_system, Fwrite_region): Likewise.
19185 (build_annotations_2): Delete.
19186 (e_write): Big change for the new code-conversion API.
19187
19188 * fns.c: Include "character.h" instead of "charset.h".
19189 (copy_sub_char_table): Move to chartab.c.
19190 (Fcopy_sequence): Call copy_char_table for a char table.
19191 (concat): Delete codes calling count_multibyte.
19192 (string_char_to_byte, string_byte_to_char): Adjust for the new
19193 multibyte form.
19194 (internal_equal): Adjust for the change of char table structure.
19195 (Fchar_table_subtype, Fchar_table_parent, Fset_char_table_parent)
19196 (Fchar_table_extra_slot, Fset_char_table_extra_slot)
19197 (Fchar_table_range, Fset_char_table_range, Fset_char_table_default)
19198 (char_table_translate, optimize_sub_char_table)
19199 (Foptimize_char_table, map_char_table, Fmap_char_table): Move to
19200 chartab.c.
19201 (char_table_ref_and_index): Delete.
19202 (HASH_KEY, HASH_VALUE): Move to lisp.h.
19203 (Fmd5): Call preferred_coding_system instead of accessing
19204 Vcoding_category_list. Adjust for the new code-conversion API.
19205 (syms_of_fns): Move defsubr for char table related functions to
19206 chartab.c.
19207
19208 * fontset.c: Mostly re-written.
19209
19210 * fontset.h (struct font_info): Change type of the member encoding_type.
19211 (enum FONT_SPEC_INDEX): New enum.
19212 (fontset_font_pattern, fs_load_font): Update prototype.
19213 (FS_LOAD_FONT): Adjust for the change of fs_load_font.
19214
19215 * indent.c: Include "character.h" instead of "charset.h".
19216 (MULTIBYTE_BYTES_WIDTH): Call CHAR_WIDTH instead of WIDTH_BY_CHAR_HEAD.
19217
19218 * insdel.c: Include "character.h" instead of "charset.h".
19219 (copy_text): Don't refer to Vnonascii_translation_table.
19220 (insert_from_gap): New function.
19221
19222 * keyboard.c: Include "character.h" instead of "charset.h".
19223 (command_loop_1): Never call direct_output_forward_char before
19224 a non-ASCII character.
19225 (read_char): If Vkeyboard_translate_table is a char table, always
19226 translate a character.
19227
19228 * keymap.c: Include "character.h".
19229 (store_in_keymap): Handle the case that IDX is a cons.
19230 (Fdefine_key): Handle the case that KEY is a cons and the car part
19231 is also a cons (range).
19232 (push_key_description): Adjust for the new character code.
19233 (describe_vector): Call describe_char_table for a char table.
19234 (describe_char_table): New function.
19235
19236 * keymap.h (describe_char_table): Extern it.
19237
19238 * lisp.h (enum pvec_type): New member PVEC_SUB_CHAR_TABLE.
19239 (XSUB_CHAR_TABLE, XSETSUB_CHAR_TABLE): New macros.
19240 (CHAR_TABLE_ORDINARY_SLOTS, CHAR_TABLE_SINGLE_BYTE_SLOTS)
19241 (SUB_CHAR_TABLE_ORDINARY_SLOTS, SUB_CHAR_TABLE_STANDARD_SLOTS):
19242 Delete.
19243 (CHAR_TABLE_REF, CHAR_TABLE_SET): Adjust for the new char table
19244 structure.
19245 (CHAR_TABLE_TRANSLATE): Just call char_table_translate.
19246 (CHARTAB_SIZE_BITS_0, CHARTAB_SIZE_BITS_1, CHARTAB_SIZE_BITS_2)
19247 (CHARTAB_SIZE_BITS_3): New macros.
19248 (chartab_size): Extern it.
19249 (struct Lisp_Char_Table): Re-design.
19250 (struct Lisp_Sub_Char_Table): New structure.
19251 (HASH_KEY, HASH_VALUE): Move from fns.c.
19252 (CHARACTERBITS): Define as 22.
19253 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Adjust for the above change.
19254 (SUB_CHAR_TABLE_P): Check PVEC_CHAR_TABLE.
19255 (GC_SUB_CHAR_TABLE_P): New macro.
19256 (Fencode_coding_string, Fdecode_coding_string): Update EXFUN.
19257 (code_convert_string_norecord): Deleted extern.
19258 (init_character_once, syms_of_character, init_charset)
19259 (syms_of_composite, Qeq, Fmakehash, insert_from_gap): Extern them.
19260
19261 * lread.c: Include "character.h".
19262 (read_multibyte): New arg NBYTES.
19263 (read_escape): Change the meaning of returned *BYTEREP.
19264 (to_multibyte): Delete.
19265 (read1): Adjust the handling of char table and string.
19266
19267 * print.c: Include "character.h" instead of "charset.h".
19268 (print_string): Convert 8-bit raw bytes to octal form by
19269 string_escape_byte8.
19270 (print_object): Adjust for the new multibyte form. Print 8-bit
19271 raw bytes always in octal form. Handle sub char table correctly.
19272
19273 * process.c: Include "character.h" instead of "charset.h".
19274 (read_process_output, send_process): Adjust for the new
19275 code-conversion API.
19276
19277 * puresize.h (BASE_PURESIZE): Increase.
19278
19279 * regex.c: Include "character.h" instead of "charset.h".
19280 (BYTE8_TO_CHAR, CHAR_BYTE8_P) [not emacs]: New dummy macros.
19281 (regex_compile): Accept a range whose starting and ending
19282 character have different leading bytes.
19283 (analyse_first): Adjust for the above change.
19284
19285 * search.c: Include "character.h" instead of "charset.h".
19286 (search_buffer, boyer_moore): Adjust for the new multibyte form.
19287 (Freplace_match): Adjust for the change of multibyte_char_to_unibyte.
19288
19289 * syntax.c: Include "character.h" instead of "charset.h".
19290 (syntax_parent_lookup): Delete.
19291 (Fmodify_syntax_entry): Accept a cons as CHAR.
19292 (skip_chars): Adjust for the new multibyte form.
19293 (init_syntax_once): Call char_table_set_range instead of directly
19294 accessing the structure of a char table.
19295
19296 * syntax.h (SET_RAW_SYNTAX_ENTRY): Call CHAR_TABLE_SET.
19297 (SYNTAX_ENTRY_FOLLOW_PARENT): Delete macro.
19298 (SET_RAW_SYNTAX_ENTRY_RANGE): New macro.
19299 (SYNTAX_ENTRY_INT): Call CHAR_TABLE_REF.
19300
19301 * term.c: Include "buffer.h" and "character.h".
19302 (encode_terminal_code, write_glyphs): Adjust for the new
19303 code-conversion API.
19304 (produce_glyphs): Call CHAR_WIDTH instead of CHARSET_WIDTH.
19305
19306 * w32term.c (x_new_font): Adjust for the change of FS_LOAD_FONT.
19307
19308 * xdisp.c: Include "character.h".
19309 (get_next_display_element): Adjust for the new multibyte form.
19310 (disp_char_vector): Adjust for the new char table structure.
19311 (decode_mode_spec_coding): Adjust for the new structure of
19312 coding system.
19313 (decode_mode_spec): Adjust for the new code-conversion API.
19314
19315 * xfaces.c: Include "character.h" instead of "charset.h".
19316 (load_face_font): Adjust for the change of choose_face_font and
19317 FS_LOAD_FONT.
19318 (generate_ascii_font): New function.
19319 (set_lface_from_font_name): Adjust for the change of FS_LOAD_FONT.
19320 (set_font_frame_param): Adjust for the change of choose_face_font.
19321 (free_realized_face): Make it public.
19322 (free_realized_faces_for_fontset): Rename from
19323 free_realized_multibyte_face. Free also faces realized for ASCII.
19324 (choose_face_font): Change arguments. Adjust for the change of
19325 fontset_font_pattern and FS_LOAD_FONT.
19326
19327 * xfns.c: Include "character.h".
19328 (x_encode_text): Adjust for the new code-conversion API.
19329
19330 * xselect.c: Don't include "charset.h".
19331 (selection_data_to_lisp_data): Adjust for the new code conversion API.
19332
19333 * xterm.c: Include "character.h".
19334 (x_encode_char): New argument CHARSET. Change caller.
19335 (x_get_char_face_and_encoding, x_get_glyph_face_and_encoding):
19336 Call ENCODE_CHAR instead of SPLIT_CHAR.
19337 (x_produce_glyphs): Don't check Vnonascii_translation_table Call
19338 CHAR_WIDTH instead of CHARSET_WIDTH.
19339 (XTread_socket): Adjust for the new code-conversion API.
19340 (x_new_font): Adjust for the change of FS_LOAD_FONT.
19341 (x_load_font): Adjust for the change of struct font.
19342
193432008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
19344
19345 * xfaces.c (face_at_buffer_position): Remove unused vars.
19346
193472008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
19348
19349 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR):
19350 Fix overflow checking.
19351
193522008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
19353
19354 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR, ccl_driver):
19355 Cancel previous change.
19356
193572008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
19358
19359 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when
19360 ccl->eight_bit_control. Fix check for buffer overflow.
19361 (CCL_WRITE_MULTIBYTE_CHAR): Fix check for buffer overflow.
19362 (ccl_driver): Initialize extra_bytes to 0.
19363
193642008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
19365
19366 * keyboard.c (make_ctrl_char): If C is a multibyte character, just
19367 return it ORed with ctrl_modifier.
19368
193692008-01-29 Miles Bader <miles@gnu.org>
19370
19371 * macterm.c (XTset_vertical_scroll_bar): Fix merge mistake.
19372
193732008-01-28 Jason Rumney <jasonr@gnu.org>
19374
19375 * w32.c (stat): Don't double check for networked drive.
19376
193772008-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
19378
19379 * window.c (run_window_configuration_change_hook): New function.
19380 Code extracted from set_window_buffer. Set the selected frame.
19381 (set_window_buffer): Use it.
19382 * window.h (run_window_configuration_change_hook): Declare.
19383 * dispnew.c (change_frame_size_1): Use it instead of set-window-buffer.
19384
19385 * keyboard.c (read_char): Yet another int/Lisp_Object mixup (YAILOM).
19386
193872008-01-27 Dan Nicolaescu <dann@ics.uci.edu>
19388
19389 * Makefile.in: Remove references to unused macros.
19390
193912008-01-26 Eli Zaretskii <eliz@gnu.org>
19392
19393 * w32.c (g_b_init_get_sid_sub_authority)
19394 (g_b_init_get_sid_sub_authority_count): New static variables.
19395 (GetSidSubAuthority_Proc, GetSidSubAuthorityCount_Proc): New typedefs.
19396 (get_sid_sub_authority, get_sid_sub_authority_count): New functions.
19397 (init_user_info): Use them to retrieve uid and gid.
19398 Use 500/513, the Windows defaults, as Administrator's uid/gid.
19399 (fstat): Use pw_uid and pw_gid from the_passwd structure for
19400 st_uid and st_gid of the file.
19401
194022008-01-26 Jason Rumney <jasonr@gnu.org>
19403
19404 * w32.c (logon_network_drive): New function.
19405 (stat): Use it.
19406
194072008-01-26 Chong Yidong <cyd@stupidchicken.com>
19408
19409 * xdisp.c (pos_visible_p): Handle the case where charpos falls on
19410 invisible text covered with an ellipsis.
19411
194122008-01-25 Richard Stallman <rms@gnu.org>
19413
19414 * xdisp.c (redisplay_window): Run Qwindow_text_change_functions and
19415 jump back to beginning. Move some other initializations after that.
19416 (Qwindow_text_change_functions, Vwindow_text_change_functions):
19417 New variables.
19418 (syms_of_xdisp): Init them.
19419
19420 * keyboard.c (read_char): Restore echo_message_buffer after redisplay.
19421
19422 * buffer.c (reset_buffer_local_variables):
19423 Implement `permanent-local-hook'.
19424 (Qpermanent_local_hook): New variable.
19425 (syms_of_buffer): Init and staticpro it.
19426
194272008-01-25 Michael Albinus <michael.albinus@gmx.de>
19428
19429 * dbusbind.c (xd_retrieve_arg): Pacify GCC on x86_64 GNU/Linux.
19430
194312008-01-25 Thien-Thi Nguyen <ttn@gnuvola.org>
19432
19433 * fns.c (Fclrhash): Return TABLE.
19434
194352008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19436
19437 * macterm.c (x_scroll_bar_create): Initialize bar->redraw_needed_p.
19438 (XTset_vertical_scroll_bar): Redraw scroll bar if bar->redraw_needed_p
19439 is set even without positional changes.
19440 (x_scroll_bar_clear): Set bar->redraw_needed_p.
19441
19442 * macterm.h (struct scroll_bar): New member `redraw_needed_p'.
19443
194442008-01-23 Jason Rumney <jasonr@gnu.org>
19445
19446 * xterm.c (handle_one_xevent): Revert to counting chars not bytes.
19447
19448 * w32term.c (w32_read_socket) <WM_CHAR>: Decode characters outside
19449 the unicode range available in MULE by locale-coding-system.
19450 Improve dbcs lead byte detection. Set event timestamp and modifiers
19451 earlier.
19452
194532008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19454
19455 * mac.c (mac_emacs_pid) [MAC_OSX]: New variable.
19456 [MAC_OSX] (init_mac_osx_environment): Initialize it.
19457 [MAC_OSX] (mac_try_close_socket) [SELECT_USE_CFSOCKET]: Return 0
19458 when used on child processes.
19459
194602008-01-21 Michael Albinus <michael.albinus@gmx.de>
19461
19462 * dbusbind.c (Fdbus_method_return_internal): Rename from
19463 Fdbus_method_return.
19464 (Fdbus_unregister_object): Move to dbus.el.
19465 (Fdbus_call_method, Fdbus_method_return_internal)
19466 (Fdbus_send_signal): Improve debug messages.
19467
194682008-01-20 Martin Rudalics <rudalics@gmx.at>
19469
19470 * undo.c (undo_inhibit_record_point): New variable.
19471 (syms_of_undo): Initialize it.
19472 (record_point): Don't record point when undo_inhibit_record_point
19473 is set.
19474
194752008-01-19 Stefan Monnier <monnier@iro.umontreal.ca>
19476
19477 * process.c (list_processes_1): Don't use SCHARS on a nil buffer name.
19478
19479 * xdisp.c (Qauto_hscroll_mode): New var.
19480 (syms_of_xdisp): Initialize it.
19481 (hscroll_window_tree): Use it to lookup `auto-hscroll-mode' in each
19482 window's buffer.
19483 (hscroll_windows): Don't check automatic_hscrolling_p here.
19484
19485 * window.c (set_window_buffer): Don't unnecessarily reset hscroll and
19486 vscroll if we're setting window-buffer to the value it already has.
19487
194882008-01-18 Dan Nicolaescu <dann@ics.uci.edu>
19489
19490 * m/intel386.h: Remove references to XENIX.
19491
194922008-01-17 Andreas Schwab <schwab@suse.de>
19493
19494 * m/amdx86-64.h (START_FILES, LIB_STANDARD): Use HAVE_LIB64_DIR
19495 instead of HAVE_X86_64_LIB64_DIR.
19496 * m/ibms390x.h (START_FILES, LIB_STANDARD): Likewise.
19497
194982008-01-17 Glenn Morris <rgm@gnu.org>
19499
19500 * m/ibms390x.h (START_FILES, LIB_STANDARD): Adjust value according
19501 to HAVE_X86_64_LIB64_DIR.
19502
195032008-01-16 Dan Nicolaescu <dann@ics.uci.edu>
19504
19505 * s/irix3-3.h:
19506 * s/irix4-0.h:
19507 * s/386-ix.h:
19508 * s/domain.h:
19509 * s/hpux9-x11r4.h:
19510 * s/hpux9shxr4.h: Remove files for systems no longer supported.
19511
19512 * sysdep.c: Remove code containing references to symbols defined
19513 by unsupported systems.
19514
195152008-01-16 Glenn Morris <rgm@gnu.org>
19516
19517 * coding.c (select-safe-coding-system-function): Doc fix.
19518
195192008-01-15 Glenn Morris <rgm@gnu.org>
19520
19521 * config.in: Revert 2008-01-13 change: this is a generated file.
19522
195232008-01-13 Tom Tromey <tromey@redhat.com>
19524
19525 * lisp.h: Fix typo.
19526
195272008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
19528
19529 * m/sequent-ptx.h:
19530 * m/sequent.h:
19531 * s/ptx.h:
19532 * s/ptx4-2.h:
19533 * s/ptx4.h: Remove files for systems no longer supported.
19534
19535 * callproc.c (Fcall_process): Fix previous change.
19536
195372008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
19538
19539 * unexsunos4.c: Remove file, system not supported anymore.
19540
19541 * m/mips.h:
19542 * m/intel386.h:
19543 * callproc.c:
19544 * config.in:
19545 * ecrt0.c:
19546 * emacs.c:
19547 * fileio.c:
19548 * frame.c:
19549 * getpagesize.h:
19550 * keyboard.c:
19551 * lread.c:
19552 * process.c:
19553 * puresize.h:
19554 * sysdep.c:
19555 * systty.h:
19556 * syswait.h:
19557 * unexec.c:
19558 * xdisp.c:
19559 * alloc.c: Remove code containing references to symbols defined by
19560 unsupported systems.
19561
195622008-01-11 Kenichi Handa <handa@ni.aist.go.jp>
19563
19564 * coding.c (detect_coding_mask): Fix previous change.
19565
195662008-01-09 Kenichi Handa <handa@ni.aist.go.jp>
19567
19568 * coding.c (detect_coding_iso2022): New arg
19569 latin_extra_code_state. Allow Latin extra codes only
19570 when *latin_extra_code_state is nonzero.
19571 (detect_coding_mask): If there is a NULL byte, detect the encoding
19572 as UTF-16 or binary. If Latin extra codes exist, detect the
19573 encoding as ISO-2022 only when there's no other proper encoding is
19574 found.
19575
195762008-01-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19577
19578 * frame.c (Fmake_terminal_frame): Use #ifdef MAC_OS8 instead of
19579 #ifdef MAC_OS.
19580
195812008-01-08 Richard Stallman <rms@gnu.org>
19582
19583 * fileio.c (Ffile_name_directory, Fexpand_file_name): Doc fixes.
19584
195852008-01-06 Nick Roberts <nickrob@snap.net.nz>
19586
19587 * keyboard.c (parse_menu_item): Don't enclose key bindings on
19588 menu bar in parentheses.
19589
195902008-01-06 Dan Nicolaescu <dann@ics.uci.edu>
19591
19592 * m/7300.h:
19593 * m/acorn.h:
19594 * m/alliant-2800.h:
19595 * m/alliant.h:
19596 * m/alliant1.h:
19597 * m/alliant4.h:
19598 * m/altos.h:
19599 * m/amdahl.h:
19600 * m/apollo.h:
19601 * m/att3b.h:
19602 * m/aviion-intel.h:
19603 * m/aviion.h:
19604 * m/celerity.h:
19605 * m/clipper.h:
19606 * m/cnvrgnt.h:
19607 * m/convex.h:
19608 * m/cydra5.h:
19609 * m/delta88k.h:
19610 * m/dpx2.h:
19611 * m/dual.h:
19612 * m/elxsi.h:
19613 * m/f301.h:
19614 * m/gould-np1.h:
19615 * m/gould.h:
19616 * m/i860.h:
19617 * m/ibmps2-aix.h:
19618 * m/ibmrt-aix.h:
19619 * m/ibmrt.h:
19620 * m/irist.h:
19621 * m/is386.h:
19622 * m/isi-ov.h:
19623 * m/mega68.h:
19624 * m/mg1.h:
19625 * m/news-r6.h:
19626 * m/news-risc.h:
19627 * m/news.h:
19628 * m/nh3000.h:
19629 * m/nh4000.h:
19630 * m/ns16000.h:
19631 * m/ns32000.h:
19632 * m/nu.h:
19633 * m/orion.h:
19634 * m/orion105.h:
19635 * m/paragon.h:
19636 * m/pfa50.h:
19637 * m/plexus.h:
19638 * m/pyramid.h:
19639 * m/pyrmips.h:
19640 * m/sh3el.h:
19641 * m/sps7.h:
19642 * m/sr2k.h:
19643 * m/stride.h:
19644 * m/sun1.h:
19645 * m/sun2.h:
19646 * m/sun3-68881.h:
19647 * m/sun3-fpa.h:
19648 * m/sun3-soft.h:
19649 * m/sun3.h:
19650 * m/sun386.h:
19651 * m/symmetry.h:
19652 * m/tad68k.h:
19653 * m/tahoe.h:
19654 * m/targon31.h:
19655 * m/tek4300.h:
19656 * m/tekxd88.h:
19657 * m/tower32.h:
19658 * m/tower32v3.h:
19659 * m/ustation.h:
19660 * m/wicat.h:
19661 * m/xps100.h:
19662 * s/cxux.h:
19663 * s/cxux7.h:
19664 * s/dgux.h:
19665 * s/dgux4.h:
19666 * s/dgux5-4-3.h:
19667 * s/dgux5-4r2.h:
19668 * s/esix.h:
19669 * s/esix5r4.h:
19670 * s/hiuxmpp.h:
19671 * s/hiuxwe2.h:
19672 * s/iris3-5.h:
19673 * s/iris3-6.h:
19674 * s/isc2-2.h:
19675 * s/isc3-0.h:
19676 * s/isc4-0.h:
19677 * s/isc4-1.h:
19678 * s/newsos5.h:
19679 * s/newsos6.h:
19680 * s/osf1.h:
19681 * s/osf5-0.h:
19682 * s/riscix1-1.h:
19683 * s/riscix12.h:
19684 * s/sco4.h:
19685 * s/sco5.h:
19686 * s/sunos4-0.h:
19687 * s/sunos4-1.h:
19688 * s/sunos413.h:
19689 * s/sunos4shr.h:
19690 * s/umax.h:
19691 * s/unipl5-2.h:
19692 * s/xenix.h:
19693 * cxux-crt0.s:
19694 * unexapollo.c:
19695 * unexconvex.c:
19696 * unexenix.c:
19697 * unexsni.c: Remove files for systems no longer supported.
19698
19699 * m/intel386.h: Remove references to unsupported systems.
19700
19701 * w32.c (get_emacs_configuration): Remove reference to i860.
19702
19703 * sysdep.c: Remove dead code.
19704
197052008-01-05 Dan Nicolaescu <dann@ics.uci.edu>
19706
19707 * s/rtu.h:
19708 * m/masscomp.h: Remove files. Platform is obsolete.
19709
197102008-01-04 Michael Albinus <michael.albinus@gmx.de>
19711
19712 * dbusbind.c (Fdbus_method_return): New function.
19713 (xd_read_message): Add the serial number to the event.
19714 (Fdbus_register_method): Activate the function.
19715
197162008-01-03 Stefan Monnier <monnier@iro.umontreal.ca>
19717
19718 * keyboard.c (read_key_sequence): Fix typo.
19719
197202008-01-03 Michael Albinus <michael.albinus@gmx.de>
19721
19722 * dbusbind.c (all): Replace XCAR by CAR_SAFE and XCDR by CDR_SAFE.
19723 (xd_signature, xd_append_arg): Handle element type detection for
19724 empty arrays.
19725 (Fdbus_call_method, Fdbus_send_signal): Undo type casting for
19726 SDATA () calls; this must be solved more general.
19727 (Fdbus_register_signal): Use SBYTES instead of strlen.
19728
197292008-01-03 Magnus Henoch <magnus@zemdatav>
19730
19731 * dbusbind.c (xd_append_arg): Use unsigned char instead of
19732 unsigned int for byte values (necessary for big-endian platform).
19733 (Fdbus_call_method): Handle the case of no returned arguments.
19734
197352007-12-31 Tom Tromey <tromey@redhat.com> (tiny change)
19736
19737 * dbusbind.c (xd_read_message): Use non-static input_event struct.
19738
197392007-12-31 Magnus Henoch <mange@freemail.hu>
19740
19741 * dbusbind.c (xd_signature): Signature of variant is just "v".
19742
197432007-12-30 Michael Albinus <michael.albinus@gmx.de>
19744
19745 * dbusbind.c: Fix several errors and compiler warnings.
19746 Reported by Tom Tromey <tromey@redhat.com>.
19747 (XD_ERROR, XD_DEBUG_MESSAGE)
19748 (XD_DEBUG_VALID_LISP_OBJECT_P): Wrap code with "do ... while (0)".
19749 (xd_append_arg): Part for basic D-Bus types rewritten.
19750 (xd_retrieve_arg): Split implementation of DBUS_TYPE_BYTE and
19751 DBUS_TYPE_(U)INT16. Don't call XD_DEBUG_MESSAGE with "%f" if not
19752 appropriate.
19753 (xd_read_message): Return Qnil. Don't signal an error; it is not
19754 useful during event reading.
19755 (Fdbus_register_signal): Signal an error if the check for
19756 FUNCTIONP fails.
19757 (Fdbus_register_method): New function. The implementation is not
19758 complete, the call of the function signals an error therefore.
19759 (Fdbus_unregister_object): New function, renamed from
19760 Fdbus_unregister_signal. The initial check signals an error, if
19761 the object is not well formed.
19762
197632007-12-30 Richard Stallman <rms@gnu.org>
19764
19765 * textprop.c (get_char_property_and_overlay):
19766 Signal error if POSITION is out of range in a buffer.
19767
197682007-12-29 Martin Rudalics <rudalics@gmx.at>
19769
19770 * w32fns.c (Fx_create_frame): Make copy of frame parameters
19771 because the original parameters are in pure storage now.
19772
197732007-12-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19774
19775 * xdisp.c (phys_cursor_in_rect_p): Check if cursor is in fringe area.
19776
197772007-12-22 Eli Zaretskii <eliz@gnu.org>
19778
19779 * callint.c (syms_of_callint) <command-history>: Add reference to
19780 history-length in the doc string.
19781
197822007-12-17 Jason Rumney <jasonr@gnu.org>
19783
19784 * w32fns.c (w32_wnd_proc) <WM_KEYDOWN>: Cast char to unsigned
19785 before passing as wParam.
19786
197872007-12-22 Michael Albinus <michael.albinus@gmx.de>
19788
19789 * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_BYTE,
19790 DBUS_TYPE_INT16, DBUS_TYPE_UINT16, DBUS_TYPE_INT64,
19791 DBUS_TYPE_UINT64, DBUS_TYPE_DOUBLE and DBUS_TYPE_SIGNATURE.
19792 Return float when DBUS_TYPE_INT32 or DBUS_TYPE_UINT32 do not fit
19793 as number.
19794 (Fdbus_call_method): Fix docstring.
19795
197962007-12-21 Michael Albinus <michael.albinus@gmx.de>
19797
19798 * dbusbind.c (XD_BASIC_DBUS_TYPE, XD_DBUS_TYPE_P, XD_NEXT_VALUE):
19799 New macros.
19800 (XD_SYMBOL_TO_DBUS_TYPE): Rename from XD_LISP_SYMBOL_TO_DBUS_TYPE.
19801 (XD_OBJECT_TO_DBUS_TYPE): Rename from XD_LISP_OBJECT_TO_DBUS_TYPE.
19802 Simplify.
19803 (xd_signature): New function.
19804 (xd_append_arg): Compute also signatures. Major rewrite.
19805 (xd_retrieve_arg): Make debug messages friendly.
19806 (Fdbus_call_method, Fdbus_send_signal): Extend docstring.
19807 Check for signatures of arguments.
19808
198092007-12-19 Michael Albinus <michael.albinus@gmx.de>
19810
19811 * dbusbind.c (QCdbus_type_byte, QCdbus_type_boolean)
19812 (QCdbus_type_int16, QCdbus_type_uint16, QCdbus_type_int32)
19813 (QCdbus_type_uint32, QCdbus_type_int64, QCdbus_type_uint64)
19814 (QCdbus_type_double, QCdbus_type_string, QCdbus_type_object_path)
19815 (QCdbus_type_signature, QCdbus_type_array, QCdbus_type_variant)
19816 (QCdbus_type_struct, QCdbus_type_dict_entry): New D-Bus type symbols.
19817 (XD_LISP_SYMBOL_TO_DBUS_TYPE): New macro.
19818 (XD_LISP_OBJECT_TO_DBUS_TYPE): Add compound types.
19819 (xd_retrieve_value): Remove. Functionality included in ...
19820 (xd_append_arg): New function.
19821 (Fdbus_call_method, Fdbus_send_signal): Apply it.
19822
198232007-12-16 Michael Albinus <michael.albinus@gmx.de>
19824
19825 * dbusbind.c (top): Include <stdio.h>.
19826 (Fdbus_call_method, Fdbus_send_signal): Apply type cast in
19827 dbus_message_new_method_call and dbus_message_new_signal.
19828 (Fdbus_register_signal): Rename unique_name to uname.
19829 Check handler for FUNCTIONP instead of CHECK_SYMBOL. Handle case of
19830 non-existing unique name. Fix typos in matching rule. Return an
19831 object which is useful in Fdbus_unregister_signal.
19832 (Fdbus_unregister_signal): Reimplementation, in order to remove
19833 only the corresponding entry.
19834 (Vdbus_registered_functions_table): Change the order of entries.
19835 Apply these changes in xd_read_message and Fdbus_register_signal.
19836
198372007-12-16 Andreas Schwab <schwab@suse.de>
19838
19839 * fileio.c (Finsert_file_contents): Fix overflow check to not
19840 depend on undefined integer overflow.
19841
198422007-12-14 Jason Rumney <jasonr@gnu.org>
19843
19844 * w32term.c (w32_read_socket): Use MULTIBYTE_CHAR_KEYSTROKE_EVENT
19845 for characters above 127.
19846
198472007-12-13 Jason Rumney <jasonr@gnu.org>
19848
19849 * w32fns.c (w32_wnd_proc, Fw32_reconstruct_hot_key): Range check
19850 before dereferencing array.
19851 (lookup_vk_code): Remove zero comparison.
19852
198532007-12-14 Michael Albinus <michael.albinus@gmx.de>
19854
19855 * dbusbind.c (xd_retrieve_value, xd_retrieve_arg)
19856 (Fdbus_call_method, Fdbus_send_signal, xd_read_message):
19857 Use `unsigned int' instead of `uint'.
19858 (xd_read_message, Fdbus_register_signal): Split expressions into
19859 multiple lines before operators "&&" and "||", according to the
19860 GNU Coding Standards.
19861
198622007-12-14 Eli Zaretskii <eliz@gnu.org>
19863
19864 * dispextern.h (WINDOWS_NT): Fix incorrect spelling of WINDOWSNT.
19865
198662007-12-12 Juri Linkov <juri@jurta.org>
19867
19868 * buffer.c (Frename_buffer): In interactive spec replace
19869 `read-buffer' with `read-string' that uses `buffer-name-history'
19870 as history, and the current buffer's name as default.
19871
198722007-12-10 Stefan Monnier <monnier@iro.umontreal.ca>
19873
19874 * keyboard.c (Fcommand_execute): Call Qcall_interactively instead of
19875 manipulating the backtrace manually.
19876 (make_lispy_event): Merge the ASCII and MULTIBYTE cases.
19877 (struct backtrace, backtrace_list): Remove.
19878 (command_loop_1): Remove dead var `no_direct'.
19879
19880 * buffer.c (reset_buffer_local_variables): If permanent_too is 0, also
19881 preserve non-built-in buffer-local variables.
19882 (Fkill_all_local_variables): Don't re-create&re-set permanent
19883 buffer-local variables.
19884
198852007-12-09 Juri Linkov <juri@jurta.org>
19886
19887 * buffer.c (Frename_buffer): Change interactive spec from "s" to
19888 Lisp code that uses `read-buffer' with current buffer as default.
19889
198902007-12-08 Michael Albinus <michael.albinus@gmx.de>
19891
19892 * dbusbind.c (xd_read_message): Generate an event for every
19893 registered handler. There might be several handlers registered
19894 for the same signal.
19895 (Fdbus_register_signal): Don't overwrite a registration for the
19896 same signal. Add a new registration if handlers are different.
19897 (Vdbus_registered_functions_table): Rework doc string.
19898
198992007-12-07 Michael Albinus <michael.albinus@gmx.de>
19900
19901 * dbusbind.c (Fdbus_get_unique_name, xd_read_message)
19902 (Fdbus_register_signal): Use DBUS_MAXIMUM_NAME_LENGTH and
19903 DBUS_MAXIMUM_MATCH_RULE_LENGTH for string lengths.
19904 (Fdbus_call_method, Fdbus_send_signal, Fdbus_register_signal):
19905 Unify argument lists.
19906 (xd_read_message, Fdbus_register_signal): Reorder and extend event
19907 arguments and hash table keys. Use unique name for service.
19908 (Fdbus_unregister_signal): Remove checks.
19909 (Vdbus_registered_functions_table): Fix doc string.
19910
199112007-12-05 Magnus Henoch <mange@freemail.hu>
19912
19913 * process.c (make_process): Initialize pty_flag to 0.
19914
199152007-12-05 Jason Rumney <jasonr@gnu.org>
19916
19917 * image.c (xbm_load) [WINDOWSNT]: Shuffle the bits of directly
19918 specified XBMs.
19919
199202007-12-05 Richard Stallman <rms@gnu.org>
19921
19922 * xdisp.c (syms_of_xdisp) <scroll-conservatively>: Doc fix.
19923
199242007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19925
19926 * mac.c (cfsockets_for_select) [MAC_OSX && SELECT_USE_CFSOCKET]:
19927 New variable.
19928 (mac_try_close_socket) [MAC_OSX]: New function.
19929 [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]:
19930 Update cfsockets_for_select. Replace invalid CFRunLoop source.
19931
19932 * sysdep.c (emacs_close) [MAC_OSX && HAVE_CARBON]:
19933 Use mac_try_close_socket.
19934
199352007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19936
19937 * unexmacosx.c (unrelocate): New argument BASE. Use it instead of
19938 reloc_base.
19939 (copy_dysymtab): Compute relocation base here.
19940 (rebase_reloc_address) [__ppc64__]: New function.
19941 (copy_dysymtab) [__ppc64__]: Use it if relocation base needs to be
19942 changed.
19943
199442007-12-05 Jason Rumney <jasonr@gnu.org>
19945
19946 * w32proc.c (sys_spawnve): Quote args with wildcards.
19947
199482007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19949
19950 * unexmacosx.c (copy_data_segment): Also copy __gcc_except_tab and
19951 __objc_* sections.
19952 (unrelocate) [_LP64]: Set relocation base to address of data segment.
19953
199542007-12-05 Michael Albinus <michael.albinus@gmx.de>
19955
19956 * dbusbind.c (xd_read_message): Return value is a Lisp_Object.
19957 Move check for Vdbus_registered_functions_table to
19958 xd_read_queued_messages.
19959 (xd_read_queued_messages): Protect xd_read_message calls by
19960 internal_condition_case_1.
19961
199622007-12-04 Michael Albinus <michael.albinus@gmx.de>
19963
19964 * dbusbind.c (QCdbus_system_bus, QCdbus_session_bus): Rename from
19965 Qdbus_system_bus and Qdbus_session_bus, respectively.
19966 (Vdbus_intern_symbols): Remove.
19967 (Vdbus_registered_functions_table): New hash table.
19968 (XD_SYMBOL_INTERN_SYMBOL): Remove.
19969 (xd_read_message, Fdbus_register_signal, Fdbus_unregister_signal):
19970 Rewrite in order to manage registered functions by hash table
19971 Vdbus_registered_functions_table.
19972
199732007-12-03 Jan Djärv <jan.h.d@swipnet.se>
19974
19975 * xterm.c: Update URL to Window Manager Specification in comment.
19976
199772007-12-02 Michael Albinus <michael.albinus@gmx.de>
19978
19979 * config.in (HAVE_DBUS): Add.
19980
19981 * Makefile.in (HAVE_DBUS): Add D-Bus definitions if defined.
19982 (ALL_CFLAGS): Add ${DBUS_CFLAGS}.
19983 (obj): Add $(DBUS_OBJ).
19984 (LIBES): Add $(DBUS_LIBS).
19985 (dbusbind.o): New target.
19986
19987 * dbusbind.c: New file.
19988
19989 * emacs.c (main): Call syms_of_dbusbind when HAVE_DBUS is defined.
19990
19991 * keyboard.c: All D-Bus related code is wrapped by "#ifdef HAVE_DBUS".
19992 (Qdbus_event): New Lisp symbol.
19993 (kbd_buffer_get_event, make_lispy_event): Handle DBUS_EVENT.
19994 (gobble_input): Call xd_read_queued_messages, reading D-Bus messages.
b97439ce 19995 (keys_of_keyboard): Define dbus-event.
aac0c6e3
MR
19996
19997 * termhooks.h (event_kind): Add DBUS_EVENT when HAVE_DBUS is defined.
19998
199992007-12-01 Richard Stallman <rms@gnu.org>
20000
20001 * search.c (syms_of_search) <inhibit-changing-match-data>: Doc fix.
20002
200032007-11-30 Jason Rumney <jasonr@gnu.org>
20004
20005 * w32console.c (w32con_ins_del_lines, scroll_line): Clip to window.
20006 (w32con_reset_terminal_modes): Clear screen buffer.
20007 (w32_face_attributes): Don't use color indexes that are out of range.
20008 Only reverse the default colors.
20009
20010 * xfaces.c (map_tty_color, tty_color_name): Remove special case for
20011 WINDOWSNT.
20012
20013 * w32console.c, w32term.h (vga_stdcolor_name): Remove.
20014
200152007-11-29 Jason Rumney <jasonr@gnu.org>
20016
20017 * w32console.c: Leave HAVE_WINDOW_SYSTEM defined.
20018 (w32_face_attributes): Use Vtty_defined_color_alist to determine
20019 if the terminal colors are initialized.
20020 (unspecified_fg, unspecified_bg): Remove unused declarations.
20021
200222007-11-29 Andreas Schwab <schwab@suse.de>
20023
20024 * keyboard.c (apply_modifiers): Fix typo.
20025
200262007-11-29 Richard Stallman <rms@gnu.org>
20027
20028 * keymap.c (Fcurrent_local_map): Doc fix.
20029
200302007-11-28 Petr Salinger <Petr.Salinger@seznam.cz> (tiny change)
20031
20032 * s/gnu-kfreebsd.h: New file.
20033
200342007-11-28 Stefan Monnier <monnier@iro.umontreal.ca>
20035
20036 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer):
20037 Don't cast redundantly.
20038
20039 * keyboard.c (KEY_TO_CHAR): New macro.
20040 (parse_modifiers, apply_modifiers): Accept integer arguments.
20041 (read_key_sequence): Use them to unify the "shift->unshift" mapping
20042 for chars and symbol keys.
20043 After doing such remapping, apply function-key-map again.
20044
200452007-11-27 Dan Nicolaescu <dann@ics.uci.edu>
20046
20047 * Makefile.in (SOME_MACHINE_LISP): Remove VMS files, they are not
20048 compiled anymore.
20049
200502007-11-26 Andreas Schwab <schwab@suse.de>
20051
20052 * process.c (list_processes_1): Fix indentation level of the
20053 command column.
20054
200552007-11-23 Andreas Schwab <schwab@suse.de>
20056
20057 * editfns.c (Fformat): Handle %c specially since it requires the
20058 argument to be of type int.
20059
200602007-11-23 Markus Triska <markus.triska@gmx.at>
20061
20062 * emacs.c (main): Call init_editfns before init_process, since
20063 init_process sets Vprocess_connection_type depending on OS release.
20064
200652007-11-22 Stefan Monnier <monnier@iro.umontreal.ca>
20066
20067 * data.c (do_symval_forwarding): Use same code as in find_symbol_value.
20068 (find_symbol_value): Use do_symval_forwarding.
20069
20070 * data.c (set_internal): Set the value in the `cons-cell' (for
20071 Buffer_Local_values) not only for frame-local variables.
20072
200732007-11-22 Andreas Schwab <schwab@suse.de>
20074
20075 * data.c (Fnumber_to_string): Add cast when passing EMACS_INT
20076 values to sprintf.
20077 * keymap.c (Fsingle_key_description): Likewise.
20078 * print.c (print_object): Likewise.
20079
200802007-11-22 Jan Djärv <jan.h.d@swipnet.se>
20081
20082 * gtkutil.c (update_frame_tool_bar): Don't call x-gtk-map-stock if
20083 file for image is nil.
20084
200852007-11-22 Dan Nicolaescu <dann@ics.uci.edu>
20086
20087 * term.c: Include stdarg.h.
20088 (fatal): Implement using varargs.
20089 * lisp.h (fatal): Add argument types. (Restore 2005-09-30 change).
20090
200912007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
20092
20093 * lisp.h (struct Lisp_Buffer_Objfwd): Add a `slottype' field.
20094 * data.c (store_symval_forwarding): Get type from buffer_objfwd.
20095 Update call to buffer_slot_type_mismatch.
20096 * buffer.h (buffer_local_types, PER_BUFFER_TYPE): Remove.
20097 (buffer_slot_type_mismatch): Update.
20098 * buffer.c (buffer_local_types): Remove.
20099 (buffer_slot_type_mismatch): Get the symbol and type as arguments.
20100 (defvar_per_buffer): Set the type in the buffer_objfwd.
20101
201022007-11-21 Jason Rumney <jasonr@gnu.org>
20103
20104 * w32bdf.c (w32_init_bdf_font, w32_BDF_to_x_font):
20105 CreateFileMapping returns NULL on failure.
20106
201072007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
20108
20109 * search.c (Fset_match_data): Remove the `evaporate' feature.
20110 (unwind_set_match_data): Don't use the `evaporate' feature.
20111
201122007-11-21 Jason Rumney <jasonr@gnu.org>
20113
20114 * dispnew.c (init_display) [WINDOWSNT]: Hardcode terminal_type.
20115
20116 * w32console.c (w32con_write_glyphs): Remove unused variables.
20117
201182007-11-20 Dan Nicolaescu <dann@ics.uci.edu>
20119
20120 * macterm.c (mac_term_init): Call add_keyboard_wait_descriptor.
20121
20122 * s/darwin.h (MULTI_KBOARD): Remove.
20123
20124 * macfns.c (x_create_tip_frame, Fx_create_frame)
20125 (x_create_tip_frame): Don't deal with MULTI_KBOARD.
20126
201272007-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
20128
20129 * buffer.c (Fbuffer_local_value): Remove redundant test.
20130 (swap_out_buffer_local_variables): Swap out binding in `buffer' rather
20131 than in `current-buffer' to match the comment.
20132 Do the swap using swap_in_global_binding.
20133
20134 * data.c (store_symval_forwarding, set_internal):
20135 * eval.c (specbind): Remove dead code.
20136
20137 * coding.c (detect_coding, Fupdate_coding_systems_internal):
20138 * fns.c (Fmd5): Use find_symbol_value rather than SYMBOL_VALUE
20139 Since we do not want to see internal Lisp_*fwd objects here.
20140
201412007-11-18 Jan Djärv <jan.h.d@swipnet.se>
20142
20143 * sysdep.c (init_system_name): Use getaddrinfo if available.
20144
20145 * xterm.c (x_scroll_bar_set_handle, x_scroll_bar_handle_click)
20146 (x_scroll_bar_note_movement): start, end, with, height in struct
20147 scroll_bar are integers and not Lisp_Object, so remove XINT for them.
20148
201492007-11-17 Dan Nicolaescu <dann@ics.uci.edu>
20150
20151 * puresize.h (BASE_PURESIZE): Increase to 1190000.
20152
201532007-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
20154
20155 * buffer.h (struct buffer): Move `undo_list' back to before `name'.
20156 This undoes Richard's change of 14-Oct-2002.
20157
20158 * alloc.c (allocate_other_vector):
20159 * lisp.h (allocate_other_vector): Remove.
20160
20161 * window.c (struct save_window_data): Move non-lisp data to the end
20162 and make it `int' rather than Lisp_Object.
20163 (Fcurrent_window_configuration): Use ALLOCATE_PSEUDOVECTOR.
20164 Done wrap/unwrap integer values.
20165 (Fset_window_configuration, compare_window_configurations):
20166 Update use of fields to their new types.
20167
20168 * xterm.h (struct scroll_bar): Only use Lisp_Object for lisp data.
20169 Turn integer fields into `int'. Merge x_window_low and x_window_high.
20170 (SCROLL_BAR_PACK, SCROLL_BAR_UNPACK, SCROLL_BAR_X_WINDOW)
20171 (SET_SCROLL_BAR_X_WINDOW): Remove.
20172 (SCROLL_BAR_X_WIDGET, SET_SCROLL_BAR_X_WIDGET):
20173 Access the new x_window field directly.
20174 * xterm.c (x_scroll_bar_create): Use a pseudovector.
20175 Don't wrap/unwrap integers into Lisp_Objects.
20176 (XTset_vertical_scroll_bar, x_scroll_bar_handle_click)
20177 (x_scroll_bar_report_motion):
20178 Don't wrap/unwrap integers into Lisp_Objects.
20179 (x_term_init): Use SDATA.
20180 (x_window_to_scroll_bar, x_create_toolkit_scroll_bar)
20181 (x_scroll_bar_set_handle, x_scroll_bar_remove)
20182 (XTset_vertical_scroll_bar, x_scroll_bar_expose)
20183 (x_scroll_bar_report_motion, x_scroll_bar_clear):
20184 * xfns.c (x_set_background_color):
20185 * gtkutil.c (xg_create_scroll_bar, xg_set_toolkit_scroll_bar_thumb):
20186 Access the new x_window field directly.
20187
20188 * alloc.c (ALLOCATE_PSEUDOVECTOR): Move to lisp.h.
20189 (allocate_pseudovector): Make non-static.
20190
20191 * lisp.h (enum pvec_type): New tag PVEC_OTHER.
20192 (allocate_pseudovector): Declare.
20193 (ALLOCATE_PSEUDOVECTOR): Move from alloc.c.
20194
201952007-11-15 Andreas Schwab <schwab@suse.de>
20196
20197 * editfns.c (Fformat): Correctly format EMACS_INT values.
20198 Also take precision into account when formatting an integer.
20199
20200 * keyboard.c (Fevent_symbol_parse_modifiers): Fix declaration.
20201
202022007-11-15 Stefan Monnier <monnier@iro.umontreal.ca>
20203
20204 * keyboard.c (Fevent_symbol_parse_modifiers): New function.
20205 (syms_of_keyboard): Defsubr it.
20206
20207 * data.c (swap_in_global_binding): Fix longstanding bug where
20208 store_symval_forwarding was not called with the right second argument,
20209 thus causing objfwd-ing from being dropped.
20210
202112007-11-14 Juanma Barranquero <lekktu@gmail.com>
20212
20213 * macfns.c (Fx_create_frame, Fx_display_pixel_width)
20214 (Fx_display_pixel_height, Fx_display_planes)
20215 (Fx_display_color_cells, Fx_server_max_request_size)
20216 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
20217 (Fx_display_visual_class, Fx_display_save_under):
20218 * w32fns.c (Fx_create_frame, Fx_display_pixel_width)
20219 (Fx_display_pixel_height, Fx_display_planes)
20220 (Fx_display_color_cells, Fx_server_max_request_size)
20221 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
20222 (Fx_display_mm_height, Fx_display_mm_width)
20223 (Fx_display_backing_store, Fx_display_visual_class)
20224 (Fw32_select_font, Fx_display_save_under):
20225 * xfns.c (Fx_create_frame, Fx_display_pixel_width)
20226 (Fx_display_pixel_height, Fx_display_planes)
20227 (Fx_display_color_cells, Fx_server_max_request_size)
20228 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
20229 (Fx_display_save_under): Fix typos in docstrings.
20230
202312007-11-14 Juanma Barranquero <lekktu@gmail.com>
20232
20233 * w32fns.c (Fw32_registered_hot_keys): Don't return the nil values
20234 corresponding to deleted entries; they are an implementation detail.
20235 (gray_bitmap_width, gray_bitmap_height, gray_bitmap_bits):
20236 Remove variables.
20237 (w32_pass_extra_mouse_buttons_to_system, w32_strict_fontnames)
20238 (w32_pass_multimedia_buttons_to_system, w32_strict_painting)
20239 (Vw32_charset_info_alist, w32_to_x_color, w32_init_class)
20240 (w32_createscrollbar, w32_createwindow, my_post_msg, w32_get_modifiers)
20241 (w32_grabbed_keys, cancel_all_deferred_msgs): Make static.
20242 (Fw32_define_rgb_color, Fw32_load_color_file)
20243 (syms_of_w32fns) <w32-pass-multimedia-buttons-to-system>:
20244 Fix typos in docstrings.
20245 (Fx_server_version): Reflow docstring.
20246 (Fw32_shell_execute): Doc fixes.
20247
202482007-11-13 Juanma Barranquero <lekktu@gmail.com>
20249
20250 * w32fns.c (Fw32_register_hot_key): Don't try to register hot key
20251 if w32_parse_hot_key returned nil.
20252
202532007-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
20254
20255 * xdisp.c (load_overlay_strings): Fix copy&paste typo.
20256
202572007-11-09 Jason Rumney <jasonr@gnu.org>
d6c952f8 20258
aac0c6e3
MR
20259 * s/ms-w32.c (USE_TOOLKIT_SCROLL_BARS): Define.
20260
20261 * w32term.c (w32_scroll_bar_handle_click): Use SCROLL_BAR_CLICK_EVENT.
20262
20263 * keyboard.c (discard_mouse_events, make_lispy_event) [WINDOWSNT]:
20264 Remove W32_SCROLL_BAR_CLICK_EVENT.
20265
20266 * termhooks.h (enum event_kind) [WINDOWSNT]: Likewise.
20267 Add MULTIMEDIA_KEY_EVENT.
20268
20269 * keyboard.c (lispy_function_keys) [WINDOWSNT]: Add more keys.
20270 (lispy_multimedia_keys) [WINDOWSNT]: New array.
20271 (make_lispy_event) [WINDOWSNT]: Use it to translate
20272 MULTIMEDIA_KEY_EVENT.
20273
20274 * w32term.h (WM_APPCOMMAND): Define if not already.
20275 (GET_APPCOMMAND_LPARAM): Likewise.
20276
20277 * w32term.c (w32_read_socket): Generate MULTIMEDIA_KEY_EVENT from
20278 WM_APPCOMMAND.
20279
20280 * w32fns.c (w32_pass_multimedia_buttons_to_system): New user option.
20281 (syms_of_w32fns): Export and initialize it.
20282 (w32_wnd_proc): Pass WM_APPCOMMAND on to w32_read_socket.
20283
202842007-11-09 Chong Yidong <cyd@stupidchicken.com>
20285
20286 * dispextern.h (struct it): Don't define OVERLAY_STRING_CHUNK_SIZE
20287 twice.
20288
20289 * xdisp.c (handle_face_prop): Fix last change.
20290
202912007-11-09 Richard Stallman <rms@gnu.org>
20292
20293 * xdisp.c (handle_face_prop): Test for strings that came from overlays,
20294 not just for after-strings and before-strings.
20295 Call face_for_overlay_string and pass the overlay to it.
20296 (handle_display_prop): Determine whether property came from an overlay.
20297 Pass OVERLAY arg to handle_single_display_spec.
20298 (handle_single_display_spec): New arg OVERLAY sets it->from_overlay.
20299 (load_overlay_strings): Fill in it->string_overlays.
20300 (get_overlay_strings_1, push_it, pop_it): Handle it->from_overlays.
20301
20302 * xfaces.c (face_for_overlay_string): Function renamed from
20303 face_at_buffer_position_no_overlays, and add arg OVERLAY.
20304
20305 * dispextern.h (struct it): New elt string_overlays.
20306 New elt from_overlay, also in stack.
20307 Rearrange a few elements.
20308 (face_for_overlay_string): Decl renamed from
20309 face_at_buffer_position_no_overlays, and add argument.
20310
203112007-11-09 Richard Stallman <rms@gnu.org>
20312
20313 * xdisp.c (handle_face_prop): Use face_at_buffer_position_no_overlays
20314 to get the base face for an overlay string.
20315
20316 * dispextern.h (face_at_buffer_position_no_overlays): Add decl.
20317
20318 * xfaces.c (face_at_buffer_position_no_overlays): New function.
20319
20320 * xdisp.c (handle_stop): Move some code out of loop.
20321
203222007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20323
20324 * macfns.c [USE_ATSUI] (Fmac_atsu_font_face_attributes):
20325 Fix conversion from Lisp object to ATSUFontID.
20326
203272007-11-09 Jason Rumney <jasonr@gnu.org>
20328
20329 * xdisp.c (Fformat_mode_line): Do nothing when noninteractive.
20330
203312007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20332
20333 * unexmacosx.c (unexec_regions_recorder, unexec_regions_merge):
20334 Don't assume regions are aligned to page boundary.
20335 (print_load_command_name): Add LC_UUID if defined.
20336
203372007-11-09 Richard Stallman <rms@gnu.org>
20338
20339 * emacs.c (syms_of_emacs) <installation-directory>: Reflow docstring.
20340
203412007-11-07 Jason Rumney <jasonr@gnu.org>
20342
20343 * s/windows95.h: Remove.
20344
203452007-11-06 Jan Djärv <jan.h.d@swipnet.se>
20346
20347 * gtkutil.c (xg_tool_bar_menu_proxy): Handle GTK_IMAGE_ICON_NAME and
20348 abort with a message on unhandled store_type values.
20349
203502007-11-01 Jan Djärv <jan.h.d@swipnet.se>
20351
20352 * xterm.c, xfns.c, xselect.c, xterm.h, s/msdos.h, s/sco4.h, s/sco5.h:
20353 Remove HAVE_X11R5 and HAVE_X11R4.
20354
203552007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
20356
20357 * Makefile.in: Remove references to sunfns.c and sunfns.o.
20358
203592007-11-01 Johan Bockgård <bojohan@gnu.org>
20360
20361 * macterm.c, w32term.c, xterm.c (x_draw_stretch_glyph_string):
20362 Don't set s->stippled_p here, since it has already been set by
20363 x_set_glyph_string_gc from x_draw_glyph_string.
20364
203652007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
20366
20367 * sunfns.c: Remove file.
20368
20369 * m/sun386.h:
20370 * m/sun2.h:
20371 * m/sparc.h: Remove Sun windows code.
20372
203732007-10-31 Stefan Monnier <monnier@iro.umontreal.ca>
20374
20375 * keyboard.c (syms_of_keyboard): Initialize the initial_kboard.
20376 (init_keyboard): Set current_kboard's window-system to nil.
20377 (tty_read_avail_input): Typo.
20378 * frame.c (make_initial_frame): Don't initialize the initial_kboard.
20379
203802007-10-31 Dan Nicolaescu <dann@ics.uci.edu>
20381
20382 * s/usg5-4.h:
20383 * s/usg5-3.h:
20384 * s/ptx.h:
20385 * m/is386.h:
20386 * m/ibmps2-aix.h:
20387 * Makefile.in: Remove all mentions of X10.
20388
20389 * dispnew.c (syms_of_display): Don't mention version 10.
20390
203912007-10-28 Juanma Barranquero <lekktu@gmail.com>
20392
20393 * makefile.w32-in (OBJ1): Remove abbrev.$(O).
20394 ($(BLD)/abbrev.$(O)): Remove.
20395
203962007-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
20397
20398 Rewrite abbrev.c in Elisp.
20399 * image.c (Qcount): Don't declare as extern.
20400 (syms_of_image): Initialize and staticpro `Qcount'.
20401 * puresize.h (BASE_PURESIZE): Increase for the new abbrev.el functions.
20402 * emacs.c (main): Don't call syms_of_abbrev.
20403 * Makefile.in (obj): Remove abbrev.o.
20404 (abbrev.o): Remove.
20405 * abbrev.c: Remove.
20406
204072007-10-26 Martin Rudalics <rudalics@gmx.at>
20408
20409 * window.c (window_min_size_2): Don't count header-line.
20410
204112007-10-26 Dan Nicolaescu <dann@ics.uci.edu>
20412
20413 * frame.h (struct frame): Move all bit fields after the first bit
20414 field to take advantage of the available space. Group all the
20415 chars together to reduce wasted space due to padding.
20416
204172007-10-26 Juanma Barranquero <lekktu@gmail.com>
20418
20419 * minibuf.c (Fread_minibuffer, Feval_minibuffer): Reflow docstrings.
20420
20421 * alloc.c (spare_memory, stack_copy, stack_copy_size, ignore_warnings)
20422 (Vdead, dont_register_blocks, staticvec, staticidx, interval_block)
20423 (n_interval_blocks, init_strings, check_string_bytes, check_sblock)
20424 (init_float, free_float, n_cons_blocks, init_cons, all_vectors)
20425 (n_vectors, symbol_block, symbol_block_index, symbol_free_list)
20426 (n_symbol_blocks, init_symbol, marker_block, marker_free_list)
20427 (n_marker_blocks, init_marker, valid_pointer_p, make_pure_float)
20428 (last_marked, mark_object_loop_halt): Make static.
20429
20430 * frame.c (syms_of_frame) <delete-frame-functions>:
20431 Fix typo in docstring.
20432
204332007-10-25 Juanma Barranquero <lekktu@gmail.com>
20434
20435 * w32.c (init_environment): Fix tiny memory leak.
20436 (w32_get_resource): Remove unused variable `ok'.
20437
204382007-10-25 Stefan Monnier <monnier@iro.umontreal.ca>
20439
20440 Make `window-system' into a keyboard-local variable (rather than
20441 frame-local as done originally by multi-tty).
20442
20443 * keyboard.h (struct kboard): Add Vwindow_system.
20444 * keyboard.c (init_kboard): Set a default for Vwindow_system.
20445 (mark_kboards): Mark Vwindow_system.
20446
20447 * dispnew.c (syms_of_display) <window-system>: Declare terminal-local.
20448 (init_display): Don't set the obsolete `window-system' frame-param.
20449
20450 * xterm.c (x_term_init):
20451 * w32term.c (w32_create_terminal):
20452 * term.c (init_tty): Set Vwindow_system.
20453 * macterm.c (mac_create_terminal): Set a keyboard (missing piece of the
20454 multi-tty merge maybe?), copied from w32term.c. Set Vwindow_system.
20455
20456 * xfns.c (Fx_create_frame, x_create_tip_frame):
20457 * w32fns.c (Fx_create_frame, x_create_tip_frame):
20458 * macfns.c (Fx_create_frame):
20459 Don't set the obsolete `window-system' frame-param.
20460
20461 * frame.h (Qwindow_system): Remove.
20462 * frame.c (Qwindow_system): Remove. In `syms_of_frame' as well.
20463 (Fmake_terminal_frame): Don't set obsolete `window-system' frame-param.
20464
204652007-10-24 Richard Stallman <rms@gnu.org>
20466
20467 * frame.c (x_figure_window_size): For fullscreen case,
20468 set USPosition | PPosition without clobbering rest of window_prompting.
20469
20470 * keyboard.c (Fcurrent_idle_time): Doc fix.
20471
20472 * print.c (Fwith_output_to_temp_buffer): Doc fix.
20473
204742007-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
20475
20476 * process.c (unwind_request_sigio): Only define if __ultrix__.
20477
20478 * callproc.c (child_setup): Remove spurious *.
20479
20480 * lisp.h (Fget_text_property): Declare.
20481 (have_menus_p): Declare it here rather than in sys-dep header files.
20482 * macterm.h (have_menus_p):
20483 * msdos.h (have_menus_p):
20484 * xterm.h (have_menus_p): Remove.
20485
20486 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
20487 (Fmake_variable_frame_local): Just check the variable's const-ness
20488 rather than checking nil or t.
20489
204902007-10-22 Jason Rumney <jasonr@gnu.org>
20491
20492 * w32fns.c: Include math.h.
20493 (w32_abort): Declaration moved to nt/config.nt.
20494
20495 * s/ms-w32.h (HAVE_STDLIB_H): Define.
20496 (abort): Redefinition moved to nt/config.nt.
20497
20498 * m/windowsnt.h: Remove.
20499
205002007-10-22 Juanma Barranquero <lekktu@gmail.com>
20501
20502 * emacs.c (Fdump_emacs): Fix typo in message.
20503 (syms_of_emacs) <kill-emacs-hook>: Fix typo in docstring.
20504 <installation-directory>: Reflow docstring.
20505
205062007-10-22 Juri Linkov <juri@jurta.org>
20507
20508 * minibuf.c: Allow minibuffer default to be a list of default values.
20509 With empty input use the first element of this list as returned default.
20510 (string_to_object)
20511 (read_minibuf_noninteractive): If defalt is cons, set val to its car.
20512 (read_minibuf): If defalt is cons, set histstring to its car.
20513 (Fread_string): If default_value is cons, set val to its car.
20514 (Fread_buffer): If def is cons, use its car.
20515 (Fcompleting_read): If defalt is cons, set val to its car.
20516
205172007-10-21 Michael Albinus <michael.albinus@gmx.de>
20518
20519 * fileio.c (Fcopy_file): Call file name handler with preserve_uid_gid.
20520
205212007-10-20 Juanma Barranquero <lekktu@gmail.com>
20522
20523 * doc.c (Fdocumentation): Check for advice in all cases.
20524
205252007-10-19 Chong Yidong <cyd@stupidchicken.com>
20526
20527 * Makefile.in [HAVE_LIBRESOLV]: Add -lresolv to linker flags.
20528
205292007-10-19 Richard Stallman <rms@gnu.org>
20530
20531 * doc.c (Fdocumentation): Check for and handle an advised function.
20532
205332007-10-19 Juanma Barranquero <lekktu@gmail.com>
20534
20535 * process.c (Fset_process_filter): Doc fix.
20536
205372007-10-18 Stefan Monnier <monnier@iro.umontreal.ca>
20538
20539 * keyboard.c (read_key_sequence): Undo a change introduced by multi-tty
20540 which caused key-translation-map to applied repeatedly (thus breaking
20541 double-mode).
20542
205432007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
20544
20545 * xselect.c (x_own_selection, x_handle_selection_clear)
20546 (x_clear_frame_selections):
20547 * w32menu.c (list_of_panes, list_of_items):
20548 * w32fns.c (w32_color_map_lookup, Fx_create_frame, Fx_display_list):
20549 * textprop.c (validate_plist, interval_has_all_properties)
20550 (interval_has_some_properties, interval_has_some_properties_list)
20551 (add_properties, text_property_list):
20552 * process.c (Fget_buffer_process, list_processes_1, status_notify):
20553 * minibuf.c (Fassoc_string):
20554 * macselect.c (x_own_selection, x_clear_frame_selections)
20555 (Fx_disown_selection_internal):
20556 * keymap.c (Fcommand_remapping, where_is_internal, describe_map_tree):
20557 Use CONSP rather than !NILP and XC[AD]R rather than Fc[ad]r.
20558
205592007-10-17 Chong Yidong <cyd@stupidchicken.com>
20560
20561 * process.c: Link to libs for calling res_init() if available.
20562 (Fmake_network_process): Call res_init() before getaddrinfo or
20563 gethostbyname, if possible.
20564
205652007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
20566
20567 * lread.c (read1): Set pvectype for char_tables.
20568
20569 * lisp.h (XMISCANY, XMARKER, XINTFWD, XBOOLFWD, XOBJFWD, XOVERLAY)
20570 (XBUFFER_OBJFWD, XBUFFER_LOCAL_VALUE, XKBOARD_OBJFWD, XSAVE_VALUE):
20571 Add type checks.
20572 (SOME_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP): Remove.
20573
20574 * alloc.c (free_misc): Use XMISCTYPE.
20575 (live_misc_p, gc_sweep): Use Lisp_Misc_Any.
20576
205772007-10-17 Glenn Morris <rgm@gnu.org>
20578
20579 * minibuf.c (Qcompletion_ignore_case): New Lisp_Object.
20580 (syms_of_minibuf): Add Qcompletion_ignore_case.
20581 * dired.c (Qcompletion_ignore_case): Change to external.
20582 (syms_of_dired) [VMS]: Remove Qcompletion_ignore_case.
20583 * fileio.c (Qcompletion_ignore_case): New external Lisp_Object.
20584 (Fread_file_name): Use it rather than intern'ing.
20585
20586 * coding.c (Qcompletion_ignore_case): New external Lisp_Object.
20587 (Fread_coding_system): Ignore case of user input.
20588
205892007-10-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20590
20591 * xdisp.c (handle_display_prop): Ignore display specs after
20592 replacing one when string text is being replaced.
20593 (handle_single_display_spec): Pretend as if characters with display
20594 property haven't been consumed only when buffer text is being replaced.
20595
205962007-10-16 Stefan Monnier <monnier@iro.umontreal.ca>
20597
20598 * xfns.c (Fx_create_frame, Fx_display_list):
20599 * window.c (window_fixed_size_p, enlarge_window)
20600 (shrink_window_lowest_first):
20601 * macterm.c (init_font_name_table):
20602 * macfns.c (Fx_create_frame, Fx_display_list):
20603 * lread.c (close_load_descs):
20604 * keyboard.c (read_char_x_menu_prompt):
20605 * fns.c (Fmember, Fmemql, Fdelete, Fset_char_table_parent):
20606 * coding.c (code_convert_region_unwind): Test the type of an object
20607 rather than just !NILP before extracting data from it.
20608
20609 * alloc.c (Fpurecopy): Set the pvec tag on pseudo vectors.
20610
20611 * lisp.h (enum Lisp_Misc_Type): Del Lisp_Misc_Some_Buffer_Local_Value.
20612 (XMISCANY): New macro.
20613 (XMISCTYPE): Use it.
20614 (struct Lisp_Misc_Any): New type.
20615 (union Lisp_Misc): Use it.
20616 (struct Lisp_Buffer_Local_Value): Add `local_if_set' bit.
20617 * data.c (Fboundp, store_symval_forwarding, swap_in_global_binding)
20618 (find_symbol_value, set_internal, default_value, Fset_default)
20619 (Fmake_variable_buffer_local, Fmake_local_variable)
20620 (Fkill_local_variable, Fmake_variable_frame_local, Flocal_variable_p)
20621 (Flocal_variable_if_set_p, Fvariable_binding_locus):
20622 The SOME_BUFFER_LOCAL_VALUEP distinction is replaced by local_if_set.
20623 * alloc.c (allocate_buffer): Set the size and tag.
20624 (allocate_misc, mark_maybe_object, mark_object, survives_gc_p):
20625 Use XMISCANY.
20626 (die): Follow the GNU convention for error messages.
20627 * print.c (print_object): SOME_BUFFER_LOCAL_VALUEP -> local_if_set.
20628 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Don't set the
20629 tag any more.
20630 (set_buffer_internal_1):
20631 * frame.c (store_frame_param):
20632 * eval.c (specbind):
20633 * xdisp.c (select_frame_for_redisplay): Drop SOME_BUFFER_LOCAL_VALUEP.
20634
20635 * doc.c (Fsnarf_documentation): Simplify.
20636
206372007-10-14 Juanma Barranquero <lekktu@gmail.com>
20638
20639 * w32term.c (w32_font_is_double_byte, my_create_scrollbar): Make static.
20640 (syms_of_w32term) <w32-enable-unicode-output>: Fix typo in docstring.
20641
206422007-10-14 Stefan Monnier <monnier@iro.umontreal.ca>
20643
20644 * buffer.c (Fmake_indirect_buffer): Set the buffer's tag.
20645
206462007-10-14 Juanma Barranquero <lekktu@gmail.com>
20647
20648 * eval.c (do_autoload): Don't save autoloads.
20649
20650 * data.c (Ffset): Save autoload of the function being set.
20651
206522007-10-07 John Paul Wallington <jpw@pobox.com>
20653
20654 * xfns.c (x_create_tip_frame): Set the `display-type' frame
20655 parameter before setting up faces.
20656
206572007-10-13 Eli Zaretskii <eliz@gnu.org>
20658
20659 * ccl.c (Fregister_code_conversion_map):
20660 * keyboard.c (append_tool_bar_item): Reformat last change.
20661
20662 * lisp.h (eabs): Rename from `abs'. All callers changed.
20663
206642007-10-05 Dmitry Antipov <dmantipov@yandex.ru>
20665
20666 * buffer.c (add_overlay_mod_hooklist):
20667 * ccl.c (Fregister_ccl_program, Fregister_code_conversion_map):
20668 * fontset.c (make_fontset):
20669 * keyboard.c (GROW_RAW_KEYBUF, menu_bar_items, menu_bar_item)
20670 (append_tool_bar_item):
20671 * macmenu.c (grow_menu_items):
20672 * w32menu.c (grow_menu_items):
20673 * xmenu.c (grow_menu_items): Use larger_vector.
20674
206752007-10-13 Eli Zaretskii <eliz@gnu.org>
20676
20677 * msdos.c (dos_rawgetc): Undo last change (there's no ``leaving
20678 selected frame'' on MSDOS).
20679
206802007-10-12 Martin Rudalics <rudalics@gmx.at>
20681
20682 * frame.c (Qexplicit_name): New variable.
20683 (x_report_frame_params): Report it in parameter alist.
20684 (syms_of_frame): Intern and staticpro it.
20685
206862007-10-10 Patrick Mahan <mahan@mahan.org> (tiny change)
20687
20688 * macfns.c (x_create_tip_frame): Set terminal for frame.
20689
206902007-10-10 Stefan Monnier <monnier@iro.umontreal.ca>
20691
20692 * frame.c (Qenvironment): Remove.
20693 (syms_of_frame) <Qenvironment>: Don't initialize.
20694 (Fdelete_frame): Don't treat the `environment' param specially.
20695 * frame.h (Qenvironment): Don't declare.
20696 * callproc.c (set_initial_environment): Don't set unused frame param.
20697
20698 * frame.c (Fframe_with_environment): Remove.
20699 (syms_of_frame) <Sframe_with_environment>: Don't declare.
20700
20701 * lisp.h (Fframe_with_environment): Don't declare.
20702
207032007-10-10 Juanma Barranquero <lekktu@gmail.com>
20704
20705 * indent.c (indent_tabs_mode, last_known_column)
20706 (last_known_column_modified): Make static.
20707 (syms_of_indent) <indent-tabs-mode>: Remove redundant info in docstring.
20708
207092007-10-10 Katsumi Yamaoka <yamaoka@jpl.org>
20710
20711 * puresize.h (BASE_PURESIZE): Increase to 1170000.
20712
207132007-10-09 Jason Rumney <jasonr@gnu.org>
20714
20715 * w32term.c (x_set_window_size): Disable code that attempts to tell
20716 Lisp code about a size change before it actually happens.
20717
207182007-10-09 Richard Stallman <rms@gnu.org>
20719
20720 * xdisp.c (handle_invisible_prop): After setting up an ellipsis,
20721 return HANDLED_RETURN.
20722
207232007-10-08 Martin Rudalics <rudalics@gmx.at>
20724
20725 * keyboard.c (kbd_buffer_get_event): Break loop waiting for input
20726 when there's an unread command event.
20727
20728 * frame.c (focus_follows_mouse): Move here from frame.el to allow
20729 window autoselection act appropriately when leaving selected frame.
20730 (syms_of_frame): Initialize focus_follows_mouse.
20731 * frame.h (focus_follows_mouse): Extern it.
20732 * macterm.c (XTread_socket): When focus_follows_mouse is nil
20733 make SELECT_WINDOW_EVENT only if we don't leave the selected frame.
20734 * msdos.c (dos_rawgetc): Likewise.
20735 * w32term.c (w32_read_socket): Likewise.
20736 * xterm.c (handle_one_xevent): Likewise.
20737 * xdisp.c (syms_of_xdisp): In doc-string of
20738 mouse-autoselect-window mention focus-follows-mouse.
20739
207402007-10-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20741
20742 * macterm.c (mac_load_query_font): Fix missing return value.
20743 [USE_CG_DRAWING] (mac_define_fringe_bitmap, mac_destroy_fringe_bitmap):
20744 Add BLOCK_INPUT.
20745
207462007-10-08 Richard Stallman <rms@gnu.org>
20747
20748 * xdisp.c (get_window_cursor_type): Implement documented behavior
20749 for cursor-in-non-selected-windows = t.
20750
207512007-10-08 Jason Rumney <jasonr@gnu.org>
20752
20753 * w32.c (w32_get_resource): Always close registry keys.
20754
207552007-10-08 Jason Rumney <jasonr@gnu.org>
20756
20757 * makefile.w32-in (LIBS): Add COMCTL32.
20758
20759 * w32fns.c (globals_of_w32fns): Init common controls.
20760
207612007-10-08 Richard Stallman <rms@gnu.org>
20762
20763 * image.c (our_memory_buffer): Rename from omfib_buffer.
20764
207652007-10-08 Richard Stallman <rms@gnu.org>
20766
20767 * buffer.c (Foverlays_at): Doc fix.
20768
207692007-10-08 Stefan Monnier <monnier@iro.umontreal.ca>
20770
20771 * fns.c (Fplist_put): Preserve uneven tail data.
20772
207732007-10-08 Peter O'Gorman <bug-gnu-emacs@mlists.thewrittenword.com> (tiny change)
20774
20775 * termhooks.h (enum event_kind): Remove trailing comma.
20776
20777 * frame.h (enum): Remove trailing comma.
20778
207792007-10-08 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
20780
20781 * w32proc.c (delete_child): Don't terminate threads of zombies.
20782
207832007-10-08 Martin Rudalics <rudalics@gmx.at>
20784
20785 * keyboard.h (struct kboard): New elt Vlast_repeatable_command.
20786
20787 * keyboard.c (syms_of_keyboard): Set up new Lisp variable
20788 last-repeatable-command.
20789 (init_kboard): Initialize Vlast_repeatable_command.
20790 (command_loop_1): Set it to real_this_command unless that was
20791 bound to an input event.
20792 (mark_kboards): Mark it.
20793
207942007-10-08 Richard Stallman <rms@gnu.org>
20795
20796 * eval.c (condition-case): Doc fix.
20797
207982007-10-08 Masatake YAMATO <jet@gyve.org>
20799
20800 * xfaces.c (tty_supports_face_attributes_p): Fix code
20801 for LFACE_INVERSE_INDEX and LFACE_BACKGROUND_INDEX; code
20802 was copied and not edited.
20803
208042007-10-09 Stefan Monnier <monnier@iro.umontreal.ca>
20805
20806 Add new `input-decode-map' keymap and use it for terminal
20807 escape sequences.
20808 * keyboard.h (struct kboard): Add Vinput_decode_map.
20809 Remove Vlocal_key_translation_map.
20810 * keyboard.c (read_key_sequence): Add support for input-decode-map.
20811 (init_kboard): Init input-decode-map.
20812 Replace local-key-translation-map back with key-translation-map.
20813 (syms_of_keyboard): Declare input-decode-map.
20814 Remove local-key-translation-map. Update docstrings.
20815 (mark_kboards): Mark Vinput_decode_map.
20816 Don't mark Vlocal_key_translation_map.
20817 * keymap.c (Fdescribe_buffer_bindings): Describe input-decode-map.
20818 Replace local-key-translation-map back with key-translation-map.
20819 * term.c (term_get_fkeys_1, CONDITIONAL_REASSIGN):
20820 Bind in input-decode-map rather than function-key-map.
20821
20822 * lisp.h (XSETPSEUDOVECTOR): Don't set the tag anymore.
20823 This was made redundant by the previous introduction of XSETPVECTYPE.
20824
208252007-10-09 Richard Stallman <rms@gnu.org>
20826
20827 * image.c (free_bitmap_record): Rename from Free_Bitmap_Record.
20828
208292007-09-29 Richard Stallman <rms@gnu.org>
20830
20831 * eval.c (internal_condition_case_2, internal_condition_case_1)
20832 (internal_condition_case): Reenable abort if x_catching_errors ()
20833 to see if that really happens and why.
20834
208352007-10-06 Andreas Schwab <schwab@suse.de>
20836
20837 * fileio.c (Fwrite_region): Ignore EINVAL error from fsync.
20838
208392007-10-04 Juanma Barranquero <lekktu@gmail.com>
20840
20841 * image.c (syms_of_image) <image-types>: Fix typo in docstring.
20842
208432007-10-03 Stefan Monnier <monnier@iro.umontreal.ca>
20844
20845 * frame.h (struct frame): Don't try to GC-mark menu_bar_items_used.
20846
208472007-10-02 Stefan Monnier <monnier@iro.umontreal.ca>
20848
20849 * window.h (struct window):
20850 * window.c (struct save_window_data, struct saved_window):
20851 * termhooks.h (struct terminal):
20852 * process.h (struct Lisp_Process):
20853 * frame.h (struct frame):
20854 * buffer.h (struct buffer):
20855 * lisp.h (struct Lisp_Vector, struct Lisp_Char_Table)
20856 (struct Lisp_Bool_Vector, struct Lisp_Subr, struct Lisp_Hash_Table):
20857 The size field of (pseudo)vectors is now unsigned.
20858 (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Simplify accordingly.
20859
20860 * lisp.h (struct Lisp_Hash_Table): Move non-traced elements at the end.
20861 Turn `count' into an integer.
20862
20863 * fns.c (make_hash_table, hash_put, hash_remove, hash_clear)
20864 (sweep_weak_table, sweep_weak_hash_tables, Fhash_table_count):
20865 * print.c (print_object) <HASH_TABLE_P>: `count' is an int.
20866 * alloc.c (allocate_hash_table): Use ALLOCATE_PSEUDOVECTOR.
20867 (mark_object) <HASH_TABLE_P>: Use mark_vectorlike.
20868
20869 * alloc.c (allocate_pseudovector): New fun.
20870 (ALLOCATE_PSEUDOVECTOR): New macro.
20871 (allocate_window, allocate_terminal, allocate_frame)
20872 (allocate_process): Use it.
20873 (mark_vectorlike): New function.
20874 (mark_object) <FRAMEP, WINDOWP, BOOL_VECTOR_P, VECTORP>: Use it.
20875 (mark_terminals): Use it.
20876 (Fmake_bool_vector, Fmake_char_table, make_sub_char_table)
20877 (Fmake_byte_code): Use XSETPVECTYPE.
20878
20879 * frame.c (Fframe_parameters): Minor simplification.
20880
20881 * insdel.c (adjust_markers_for_insert): Generalize assertion checks.
20882
20883 * marker.c (Fmarker_buffer): Make test for odd case into a failure.
20884
20885 * buffer.c (Fget_buffer_create, init_buffer_once):
20886 * lread.c (defsubr):
20887 * window.c (Fcurrent_window_configuration): Use XSETPVECTYPE.
20888
20889 * lisp.h (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Don't let them be
20890 defined differently in the m/*.h files.
20891 (XCHAR_TABLE, XBOOL_VECTOR): Add assertion checking.
20892 (XSETPVECTYPE): New macro.
20893 (XSETPSEUDOVECTOR): Use it.
20894
20895 * buffer.c (syms_of_buffer) <local-abbrev-table>: Move from abbrev.c.
20896 (DEFVAR_PER_BUFFER, defvar_per_buffer): Move from lisp.h and lread.c.
20897
20898 * lisp.h (defvar_per_buffer, DEFVAR_PER_BUFFER):
20899 * lread.c (defvar_per_buffer):
20900 * abbrev.c (syms_of_abbrev) <local-abbrev-tabl>: Move to buffer.c.
20901
20902 * window.c (candidate_window_p): Only consider as visible frames that
20903 are on the same terminal.
20904
20905 * m/ibms390x.h (MARKBIT): Remove unused macro.
20906
209072007-10-01 Juanma Barranquero <lekktu@gmail.com>
20908
20909 * lread.c (Fload): Fix typo in docstring.
20910
209112007-10-01 Michaël Cadilhac <michael@cadilhac.name>
20912
20913 * floatfns.c (Fexpt): Manually check for overflows, so that a power
20914 of a non-zero value can't yield zero.
20915
209162007-09-29 Stefan Monnier <monnier@iro.umontreal.ca>
20917
20918 * term.c (term_clear_mouse_face, term_mouse_highlight)
20919 (tty_write_glyphs_with_face): Only define is HAVE_GPM.
20920
20921 * print.c (safe_debug_print): Use XHASH.
20922
20923 * lisp.h (DECL_ALIGN, USE_LSB_TAG): Move logic to before definition of
20924 Lisp elements such as tags.
20925 (XHASH): New macro.
20926 (EQ): Use it.
20927 (SREF, SSET, STRING_COPYIN): Use SDATA.
20928 (VOID_TO_LISP, CVOID_TO_LISP, LISP_TO_VOID, LISP_TO_CVOID): Remove.
20929
20930 * alloc.c (mark_terminal): Remove left-over declaration.
20931 (enum mem_type): Replace all vector subtypes -> MEM_TYPE_VECTORLIKE.
20932 (allocate_vectorlike): Remove type argument. Adjust callers.
20933 (live_vector_p, mark_maybe_pointer, valid_lisp_object_p):
20934 Only handle the one remaining MEM_TYPE_VECTORLIKE.
20935
20936 * alloc.c (MALLOC_BLOCK_INPUT, MALLOC_UNBLOCK_INPUT): New macros
20937 to avoid unnecessary BLOCK_INPUTs when SYNC_INPUT is used.
20938 (xmalloc, xrealloc, xfree, lisp_malloc, lisp_free, lisp_align_malloc)
20939 (lisp_align_free, make_interval, allocate_string, allocate_string_data)
20940 (make_float, Fcons, allocate_vectorlike, Fmake_symbol, allocate_misc):
20941 Use them.
20942
20943 * xfaces.c (load_face_font, free_realized_face, clear_face_gcs):
20944 Don't let signal handlers run when a GC is freed but not yet NULL'ed.
20945 (x_free_gc): Remove BLOCK_INPUT since it's now redundant.
20946
209472007-09-28 Dan Nicolaescu <dann@ics.uci.edu>
20948
20949 * Makefile.in (lisp, shortlisp): Delete server.elc, it is not
20950 loaded by default.
20951
209522007-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
20953
20954 * term.c (Fgpm_mouse_start): Don't signal an error if already activated
20955 on this tty.
20956 (Fgpm_mouse_stop): Only deactivate if it was activated on this tty.
20957
20958 * term.c (mouse_face_window): Rename from Qmouse_face_window.
20959 Update all users.
20960 (handle_one_term_event): Use Gpm_DrawPointer.
20961 (Fgpm_mouse_start): Rename from Fterm_open_connection.
20962 Signal errors instead of returning nil. Always return nil.
20963 (Fgpm_mouse_stop): Rename from Fterm_close_connection.
20964 Make it a noop if gpm-mouse was not activated.
20965 (syms_of_term): Update names.
20966
209672007-09-27 Stefan Monnier <monnier@iro.umontreal.ca>
20968
20969 * sysdep.c (narrow_foreground_group, widen_foreground_group): Static.
20970 (init_sys_modes): Check that gpm_tty is the current tty.
20971
20972 * alloc.c (allocate_terminal): Set the vector size to only count the
20973 lisp fields. Initialize those to nil.
20974 (mark_object): Don't treat terminals specially.
20975 (mark_terminal): Remove.
20976 (mark_terminals): Use mark_object instead.
20977
20978 * termhooks.h (struct terminal): Move all Lisp_Object fields traced by
20979 the GC to the beginning.
20980
20981 * indent.h:
20982 * indent.c: Use EMACS_INT for ints coming from Elisp data.
20983
20984 * indent.c (Fmove_to_column): Use EMACS_INT for buffer positions.
20985
209862007-09-25 Jason Rumney <jasonr@gnu.org>
20987
20988 * frame.c (make_terminal_frame): Remove special case for WINDOWSNT.
20989
20990 * w32console.c (create_w32cons_output): Remove.
20991
20992 * term.c (init_tty): Call init_sys_modes on WINDOWSNT also.
20993
20994 * sysdep.c (init_sys_modes): Use set_terminal_modes_hook.
20995 (reset_sys_modes): Use reset_terminal_modes_hook.
20996
209972007-09-24 Stefan Monnier <monnier@iro.umontreal.ca>
20998
20999 * eval.c (do_autoload): Don't output any message.
21000
210012007-09-24 Juri Linkov <juri@jurta.org>
21002
21003 * emacs.c (standard_args): Change priority of "--no-splash"
21004 from 40 to 3. Add "--no-desktop" with the same priority.
21005
210062007-09-23 Dmitry Antipov <dmantipov@yandex.ru>
21007
21008 * alloc.c (gc_sweep): Check cons cell mark bits word by word
21009 and optimize the case where they are all 1.
21010
210112007-09-23 Johannes Weiner <hannes@saeurebad.de>
21012
21013 * lisp.h (abs): Define if not defined.
21014 * keyboard.c, sound.c, w32term.c, xfaces.c, xterm.c:
21015 Don't define `abs', since it's defined in lisp.h.
21016
210172007-09-22 Eli Zaretskii <eliz@gnu.org>
21018
21019 * term.c (DEV_TTY): New macro. Provide a definition for MS-Windows.
21020 (FRAME_TERMCAP_P) [WINDOWSNT]: Don't define to zero.
21021 (Fcontrolling_tty_p, Fresume_tty, dissociate_if_controlling_tty)
21022 (init_tty): Use DEV_TTY instead of "/dev/tty".
21023 [WINDOWSNT]: No need to protect from NAME arg being null.
21024
210252007-09-21 Dan Nicolaescu <dann@ics.uci.edu>
21026
21027 * term.c (Fsuspend_tty): Run suspend-tty-functions before cleaning
21028 up the tty state.
21029
210302007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
21031
21032 * termhooks.h (term_gpm): Delete. Use gpm_tty's NULLness instead.
21033 (gpm_tty): Change its type.
21034 * term.c (term_gpm): Delete. Use gpm_tty's NULLness instead.
21035 (gpm_tty): Change its type and initialize it.
21036 (Fterm_open_connection): Check the frame is indeed a tty.
21037 Use the new gpm_tty.
21038 (Fterm_close_connection): Use the new gpm_tty.
21039 * keyboard.c (tty_read_avail_input): Use the new gpm_tty.
21040 * sysdep.c (init_sys_modes): term_gpm -> gpm_tty.
21041
210422007-09-21 Juanma Barranquero <lekktu@gmail.com>
21043
21044 * w32term.c (x_draw_glyph_string): Use strike_through_color, not
21045 underline_color, to draw strike-through.
21046
210472007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
21048
21049 * lisp.h (allocate_terminal): Declare.
21050
21051 * window.c (candidate_window_p): Consider frames that are being placed
21052 by the user as somewhere between visible and iconified.
21053 (window_loop): Prefer windows on the current frame.
21054 (Fselect_window): Move the use of select-frame to the beginning so we
21055 can just delegate all the work (it'll call us back anyway).
21056
21057 * frame.c (Qdisplay_environment_variable):
21058 * frame.h (Qdisplay_environment_variable): Delete.
21059
21060 * .gdbinit (xbacktrace): Print the arg's address rather than the value
21061 of the first arg, since that value may be a union.
21062
21063 * callproc.c (child_setup, getenv_internal): Use the frame's `display'
21064 parameter rather than Qdisplay_environment_variable. If all else
21065 fails, look for DISPLAY in initial-environment.
21066
210672007-09-21 Glenn Morris <rgm@gnu.org>
21068
21069 * Makefile.in (emacstool): Remove target.
21070 (lisp, shortlisp): Remove termdev.elc.
21071
210722007-09-21 Markus Triska <markus.triska@gmx.at>
21073
21074 * xterm.c (x_delete_display): Compile session management conditionally.
21075
210762007-09-20 Stefan Monnier <monnier@iro.umontreal.ca>
21077
21078 * callproc.c (getenv_internal_1): New function.
21079 (getenv_internal): Use it.
21080 (Fgetenv_internal): Use it. Accept an env-list as optional arg.
21081
21082 * terminal.c (get_terminal): Don't accept ints to represent terminals.
21083 (Fterminal_name, Fterminal_parameters, Fterminal_parameter)
21084 (Fset_terminal_parameter): Work with dead terminals as well.
21085 (Fmodify_terminal_parameters): Remove.
21086
21087 * terminal.c (get_terminal): Handle terminals.
21088 Make sure the terminal returned is live.
21089 (create_terminal): Use allocate_terminal.
21090 (mark_terminals): Move to alloc.c.
21091 (delete_terminal): Use terminal->name as liveness status.
21092 NULL out fields after freeing their contents.
21093 Don't deallocate the object.
21094 (Fframe_terminal): Use FRAME_TERMINAL. Return the terminal object
21095 rather than an int.
21096 (Fterminal_live_p): Accept non-integer arguments.
21097 (Fterminal_list): Return terminal objects rather than an ints.
21098
21099 * alloc.c (enum mem_type): New member for `terminal' objects.
21100 (allocate_terminal): New function.
21101 (mark_maybe_pointer, valid_lisp_object_p, mark_object):
21102 Handle terminals.
21103 (mark_terminal): New fun.
21104 (mark_terminals): Move from terminal.c.
21105
21106 * term.c (get_tty_terminal): Don't treat output_initial specially.
21107 (Fsuspend_tty, Fresume_tty): Use terminal objects rather than ints.
21108 (delete_tty): Use terminal->name as liveness status.
21109
21110 * termhooks.h (struct terminal): Make it into a pseudovector.
21111 Remove `deleted' replaced by checking `name's nullness.
21112
21113 * print.c (print_object): Handle terminals.
21114
21115 * lisp.h (enum pvec_type): New `terminal' pseudovector.
21116 (XTERMINAL, XSETTERMINAL, TERMINALP, GC_TERMINALP): New macros.
21117
21118 * frame.c (make_terminal_frame):
21119 * keyboard.c (tty_read_avail_input):
21120 * w32term.c (x_delete_terminal):
21121 * xfns.c (Fx_create_frame, x_create_tip_frame):
21122 * xterm.c (x_delete_terminal): Use terminal->name as liveness status.
21123
211242007-09-20 Glenn Morris <rgm@gnu.org>
21125
21126 * process.c (Fmake_network_process): Doc fix.
21127
211282007-09-19 Jason Rumney <jasonr@gnu.org>
21129
21130 * dispextern.h (w32_init_fringe, mac_init_fringe): Declare rif argument.
21131
211322007-09-19 Michaël Cadilhac <michael@cadilhac.name>
21133
21134 * coding.c (detect_eol_type, detect_eol_type_in_2_octet_form):
21135 Fix a C warning regarding variable constness.
21136
21137 * xterm.c (handle_one_xevent): Fix a C warning.
21138
211392007-09-18 Jason Rumney <jasonr@gnu.org>
21140
21141 * w32fns.c (Fx_focus_frame): Rename from Fw32_focus_frame.
21142
211432007-09-17 Jan Djärv <jan.h.d@swipnet.se>
21144
21145 * gtkutil.c (gdpy_def): New variable.
21146 (xg_initialize): Initialize gdpy_def.
21147 (xg_display_close): If no other display exists, set gdpy_def to a
21148 new connection.
21149
211502007-09-16 Jan Djärv <jan.h.d@swipnet.se>
21151
21152 * gtkutil.c (xg_get_image_for_pixmap): Always create a GdkPixbuf
21153 when we have no file name for the icon.
21154 (xg_tool_bar_expose_callback): Remove.
21155 (xg_create_tool_bar): Don't connect expose signal to
21156 xg_tool_bar_expose_callback.
21157 (xg_get_file_with_chooser): Move GCPRO1 after declarations.
21158
211592007-09-16 Andreas Schwab <schwab@suse.de>
21160
21161 * alloc.c (reset_malloc_hooks): Set the hooks to the previous
21162 values instead of zapping them.
21163
211642007-09-14 Glenn Morris <rgm@gnu.org>
21165
21166 * fringe.c (init_fringe_bitmap) <swap_nibble>: Move to file scope.
21167 * gtkutil.c (xg_separator_p) <separator_names>: Move to file scope.
21168 * image.c (our_memory_fill_input_buffer) <buffer>: Move to file
21169 scope and rename to omfib_buffer for clarity.
21170 (gif_load) <interlace_start, interlace_increment>: Move to file scope.
21171
211722007-09-14 Kenichi Handa <handa@m17n.org>
21173
21174 * xterm.c (handle_one_xevent): Skip decoding if nbytes is zero.
21175
211762007-09-13 Jason Rumney <jasonr@gnu.org>
21177
21178 * fringe.c (w32_init_fringe, mac_init_fringe): Add rif argument.
21179
21180 * w32term.c (w32_term_init): Pass rif to w32_init_fringe.
21181
21182 * macterm.c (mac_initialize): Don't call mac_init_fringe here.
21183 (mac_term_init): Call here instead, passing rif.
21184
211852007-09-13 Glenn Morris <rgm@gnu.org>
21186
21187 * s/hpux.h: No longer define `static' as nothing.
21188
211892007-09-13 Johan Bockgård <bojohan@gnu.org>
21190
21191 * callint.c (Fcall_interactively): Remove unused var `fun'.
21192
211932007-09-12 Romain Francoise <romain@orebokech.com>
21194
21195 * window.c (prefer_window_split_horizontally, display_buffer):
21196 Revert 2007-09-08 change.
21197
211982007-09-12 Glenn Morris <rgm@gnu.org>
21199
21200 * alloca.c: Remove file.
21201 * Makefile.in (alloca): Do not undef.
21202 (allocaobj, alloca.o): Remove.
21203 (otherobj): Remove allocaobj.
21204 * keyboard.c (command_loop_1): Remove #ifdef C_ALLOCA block.
21205 * regex.c (C_ALLOCA): Remove all references and code that was only
21206 used when this was defined.
21207 * search.c (boyer_moore): Remove #ifdef C_ALLOCA block.
21208 * xmenu.c (xmenu_show): Remove #ifdef C_ALLOCA block.
21209 * m/ibms390x.h, m/sh3el.h (C_ALLOCA): Remove references to this.
21210
21211 * Makefile.in (SOURCES, unlock, relock): Delete.
21212
21213 * gtkutil.c (cnt): Rename to menu_grab_callback_cnt for clarity.
21214 (menu_grab_callback): All uses changed.
21215
21216 * xselect.c (cnt): Rename to x_reply_selection_request_cnt for clarity.
21217 (x_reply_selection_request): All uses changed.
21218
212192007-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
21220
21221 * lread.c (load_warn_old_style_backquotes): Change message to look
21222 better when it appears in the middle of byte-compiler messages.
21223
212242007-09-10 Dan Nicolaescu <dann@ics.uci.edu>
21225
21226 * s/darwin.h (MULTI_KBOARD): Only define for Carbon.
21227
21228 * xterm.c (x_create_terminal): Add comment.
21229
21230 * term.c (clear_tty_hooks, set_tty_hooks): Add comments.
21231
212322007-09-10 Richard Stallman <rms@gnu.org>
21233
21234 * xterm.c (x_term_init): Give error if can't open DISPLAY_NAME.
21235
212362007-09-10 Michaël Cadilhac <michael@cadilhac.name>
21237
21238 * lisp.h (struct Lisp_Subr): Rename `prompt' field to `intspec'.
21239 (DEFUN): Document `intspec', use it instead of `prompt'.
21240
21241 * eval.c (Fcommandp): Change `->prompt' to `->intspec'.
21242
21243 * data.c (Finteractive_form): If the interactive specification starts
21244 with a `(', use it as a Lisp form.
21245
21246 * fileio.c (Fset_file_modes): Add an interactive spec that reads a file
21247 name and file modes.
21248
21249 * callint.c (Fcall_interactively): Comment fixes.
21250
212512007-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
21252
21253 * callint.c (Fcall_interactively): Use Finteractive_form also for subrs
21254 and compiled functions.
21255
212562007-09-08 Fredrik Axelsson <f.axelsson@gmail.com>
21257
21258 * window.c (prefer_window_split_horizontally): New variable.
21259 (display_buffer): Consider splitting window horizontally depending
21260 on prefer_window_split_horizontally.
21261
212622007-09-08 Eli Zaretskii <eliz@gnu.org>
21263
21264 * sysdep.c [WINDOWSNT]: Don't include sysselect.h.
21265
212662007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
21267
21268 * s/cygwin.h (GC_MARK_STACK): Enable conservative stack marking.
21269
21270 * frame.c (x_set_frame_parameters): Check number is positive before
21271 using XFASTINT.
21272
21273 * window.c (freeze_window_start): Don't presume selected_window holds
21274 a window object.
21275 (Fdisplay_buffer): Remove `register' since `buffer' needs to be gcpro'd.
21276
212772007-09-07 Angelo Graziosi <Angelo.Graziosi@roma1.infn.it> (tiny change)
21278
21279 * term.c (dissociate_if_controlling_tty): Call setsid on CYGWIN.
21280
212812007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
21282
21283 * window.c (Vsplit_window_preferred_function): New var.
21284 (Fdisplay_buffer): Use it.
21285 (syms_of_window): Export, and initialize it.
21286
212872007-09-06 Pixel <pixel@mandriva.com> (tiny change)
21288
21289 * image.c (gif_load): Fix bug: Handle nonexistent colormap.
21290
212912007-09-06 Glenn Morris <rgm@gnu.org>
21292
21293 * gtkutil.c (menu_grab_callback) <cnt>:
21294 * xselect.c (x_reply_selection_request) <cnt>: Move static
21295 variable to file scope.
21296
212972007-09-06 Stefan Monnier <monnier@iro.umontreal.ca>
21298
21299 * xdisp.c (redisplay_internal): Make sure Elisp code always sees
21300 consistent values of selected_frame and selected_window.
21301
213022007-09-04 Jason Rumney <jasonr@gnu.org>
21303
21304 * w32console.c (initialize_w32_display): Zero unused hooks.
21305
213062007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
21307
21308 * term.c (Vsuspend_tty_functions, Vresume_tty_functions)
21309 (syms_of_term, Fsuspend_tty, Fresume_tty): Undo previous change.
21310
213112007-09-04 Jason Rumney <jasonr@gnu.org>
21312
21313 * term.c (init_tty) [WINDOWSNT]: Add hooks that are not accessible
21314 in w32console.c. Set up input. Remove XXX comments that have been
21315 confirmed as correct.
21316
21317 * s/ms-w32.h (MULTI_KBOARD): Define.
21318
21319 * w32console.c (one_and_only_w32cons): Remove.
21320 (initialize_w32_display): Take terminal argument.
21321
21322 * term.c (init_tty) [WINDOWSNT]: Pass terminal to
21323 initialize_w32_display.
21324 (init_tty) [MULTI_KBOARD]: Include this code on WINDOWSNT too.
21325
21326 * termhooks.h (enum event_kind) <HORIZ_WHEEL_EVENT>: New event.
21327
21328 * keyboard.c (discard_mouse_events): Discard it.
21329 (make_lispy_event): Translate it to a lisp event.
21330 (lispy_wheel_names): Add wheel-left and right events.
21331 (syms_of_keyboard): Enlarge wheel_syms.
21332
21333 * w32fns.c (w32_wnd_proc) <WM_DROPFILES>: Merge with WM_MOUSEWHEEL.
21334 <WM_MOUSEHWHEEL>: Pass new system message to lisp.
21335
21336 * w32term.h (WM_MOUSEHWHEEL): Define if system headers don't.
21337
21338 * w32term.c (construct_mouse_wheel): Make HORIZ_WHEEL_EVENT
21339 from WM_MOUSEHWHEEL.
21340 (w32_read_socket) <WM_MOUSEHWHEEL>: Treat as WM_MOUSEWHEEL.
21341
21342 * w32fns.c (x_create_tip_frame) [MULTI_KBOARD]: Get keyboard from
21343 terminal.
21344
21345 * w32term.c (w32_create_terminal) [MULTI_KBOARD]: Create a new
21346 keyboard for the terminal.
21347
213482007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
21349
21350 * term.c (Vsuspend_tty_hook): Rename from Vsuspend_tty_functions.
21351 (Vresume_tty_hook): Rename from Vresume_tty_functions.
21352 (syms_of_term): Rename suspend-tty-functions to suspend-tty-hook
21353 and resume-tty-function to resume-tty-hook.
21354 (Fsuspend_tty, Fresume_tty): Use new names.
21355
213562007-09-02 Jan Djärv <jan.h.d@swipnet.se>
21357
21358 * gtkutil.c (update_frame_tool_bar): Handle stock name as a named icon
21359 if it starts with "n:".
21360
213612007-08-31 Jan Djärv <jan.h.d@swipnet.se>
21362
21363 * gtkutil.c (update_frame_tool_bar): Initialize wbutton to NULL.
21364
213652007-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
21366
21367 * frame.h:
21368 * frame.c (Qterm_environment_variable): Remove.
21369 (syms_of_frame): Don't init and staticpro it.
21370
21371 * callproc.c (getenv_internal): Remove special case for $TERM.
21372
21373 * callproc.c (Vinitial_environment): New variable.
21374 (set_initial_environment): Initialize it.
21375 (syms_of_callproc): Declare it.
21376 (child_setup): Don't mess with TERM via Qterm_environment_variable; the
21377 TERM under which a process runs is never related to the TERM in which
21378 Emacs is running.
21379
213802007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
21381
21382 * config.in (HAVE_WINDOW_SYSTEM): Don't undef MULTI_KBOARD here...
21383 * s/darwin.h: ... do it here.
21384
213852007-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
21386
21387 * lisp.h (set_initial_environment): Rename from set_global_environment.
21388
21389 * Makefile.in (${etc}DOC): Re-add a ${EXEEXT} which seems to have been
21390 removed by mistake on the multi-tty branch.
21391
21392 * frame.c (make_terminal_frame): Yet Another Int/Lisp_Object Mixup.
21393 (Fmodify_frame_parameters): Return a value.
21394
21395 * image.c (png_load): Comment-out var only used in commented-out code.
21396
21397 * term.c (mark_ttys): Don't bother checking top_frame (incorrectly)
21398 before passing it to mark_object.
21399
21400 * xfaces.c (internal_resolve_face_name): Return a value.
21401 (internal_resolve_face_name, resolve_face_name_error): Comment out.
21402
21403 * xfns.c (check_x_display_info): Yet Another Int/Lisp_Object Mixup.
21404 (x_icon): Comment-out var only used in commented-out code.
21405
214062007-08-29 Romain Francoise <romain@orebokech.com>
21407
21408 * keyboard.c (Fset_input_mode): Don't call `Fset_quit_char' if
21409 QUIT hasn't been provided.
21410
214112007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
21412
21413 * callproc.c (child_setup, getenv_internal): Use the
21414 display-environment-variable and term-environment-variable frame params.
21415 (set_initial_environment): Initialise Vprocess_environment.
21416
21417 * config.in: Disable multi-keyboard support on a mac.
21418
21419 * frame.c (Qterm_environment_variable)
21420 (Qdisplay_environment_variable): New variables.
21421 (syms_of_frame): Intern and staticpro them.
21422 (Fmake_terminal_frame): Disable output method test.
21423
21424 * frame.h: Declare them here.
21425
21426 * macfns.c (x_set_mouse_color): Get rif from the frame.
21427 (x_set_tool_bar_lines): Don't use updating_frame.
21428 (mac_window): Add 2 new parameters for consistency with other systems.
21429 (Fx_create_frame): Fix doc string. Rename the parameter. Set the
21430 frame parameters following what is done in X11 and w32. Don't use
21431 FRAME_MAC_DISPLAY_INFO.
21432 (Fx_open_connection, start_hourglass): Remove window-system check.
21433 (x_create_tip_frame): Get the keyboard from the terminal.
21434
21435 * macmenu.c: Reorder includes.
21436 (Fx_popup_menu): Use terminal specific mouse_position_hook.
21437
21438 * macterm.c (XTset_terminal_modes, XTreset_terminal_modes): Add a
21439 terminal parameter.
21440 (x_clear_frame): Add a frame parameter.
21441 (note_mouse_movement): Get rif from the frame.
21442 (mac_term_init): Initialize the terminal.
21443 (mac_initialize): Make static and move terminal initialization ...
21444 (mac_create_terminal): ... to this new function.
21445
21446 * macterm.h (struct mac_display_info): Add terminal.
21447 (mac_initialize): Delete declaration.
21448
21449 * puresize.h (BASE_PURESIZE): Increase base value to 1164000.
21450
21451 * sysdep.c: Comment out text after #endif.
21452
21453 * term.c (init_tty): Only use terminal->kboard when MULTI_KBOARD
21454 is defined. Better initialize ttys in windows. Use terminal
21455 specific mouse_position_hook.
21456
21457 * termhooks.h (union display_info): Add mac_display_info.
21458
21459 * w32fns.c (Fx_create_frame): Use kboard from the terminal.
21460 Set the default minibuffer frame, window_system and the rest of the
21461 frame parameters following what is done in X11.
21462
21463 * w32term.c (w32_initialize): Make static.
21464
21465 * xselect.c (x_handle_selection_clear): Only access
21466 terminal->kboard when MULTI_KBOARD is defined.
21467
21468 * s/darwin.h (SYSTEM_PURESIZE_EXTRA): Define here.
21469 (SYSTEM_PURESIZE_EXTRA): Only define on Carbon.
21470
214712007-08-29 Jason Rumney <jasonr@gnu.org>
21472
21473 * frame.c (Fdelete_frame): Only get kboard when MULTI_KBOARD defined.
21474 (make_terminal_frame) [WINDOWSNT]: Initialize terminal.
21475
21476 * fringe.c (w32_init_fringe w32_reset_fringes) [HAVE_NTGUI]:
21477 (mac_init_fringe) [MAC_OS]: Get rif from selected_frame.
21478
21479 * keyboard.c (restore_kboard_configuration): Only define when
21480 MULTI_KBOARD defined.
21481
21482 * makefile.w32-in: Update dependancies from Makefile.in.
21483 (OBJ1): Add terminal.$(O)
21484
21485 * term.c (dissociate_if_controlling_tty) [WINDOWSNT]:
21486 Don't define function body.
21487 (init_tty) [WINDOWSNT]: Use selected_frame for initializing.
21488
21489 * termhooks.h (display_info) [WINDOWSNT]: Add w32.
21490
21491 * w32.c (request_sigio, unrequest_sigio): Remove.
21492
21493 * w32console.c (w32con_move_cursor, w32con_clear_to_end)
21494 (w32con_clear_frame, w32con_clear_end_of_line)
21495 (w32con_ins_del_lines, w32con_insert_glyphs, w32con_write_glyphs)
21496 (w32con_delete_glyphs, w32con_set_terminal_window)
21497 (scroll_line, w32_sys_ring_bell): Add frame arg.
21498 (w32con_set_terminal_modes, w32con_reset_terminal_modes):
21499 Add terminal arg.
21500 (PICK_FRAME): Remove.
21501 (w32con_write_glyphs): Use frame specific terminal coding.
21502 (one_and_only_w32cons): New global variable.
21503 (initialize_w32_display): Use it for storing hooks.
21504 (create_w32cons_output): New function.
21505
21506 * w32inevt.c, w32inevt.h (w32_console_read_socket): Make first
21507 arg a frame.
21508
21509 * w32fns.c (x_create_tip_frame): Set terminal and ref count.
21510 Set window_system.
21511 (x_set_tool_bar_lines): Don't use updating_frame.
21512 (Fx_create_frame): Set terminal and ref count.
21513 (Fx_open_connection): Remove window-system check.
21514
21515 * w32menu.c (Fx_popup_menu): Use terminal specific mouse_position_hook.
21516
21517 * w32term.c (w32_term_init): Call add_keyboard_wait_descriptor.
21518 (w32_set_terminal_modes, w32_reset_terminal_modes): Add terminal arg.
21519 (x_clear_frame, x_delete_glyphs, w32_ring_bell, x_ins_del_lines):
21520 Add frame arg.
21521 (x_delete_terminal, w32_create_terminal): New functions.
21522 (w32_term_init): Create a terminal.
21523 (w32_initialize): Move terminal specific initialization to
21524 w32_create_terminal.
21525
21526 * w32term.h (x_output): Remove foreground_pixel and background_pixel.
21527 (w32_clear_rect, w32_clear_area): Use background from frame.
21528 (w32_display_info): Add terminal.
21529 (w32_sys_ring_bell, x_delete_display): Declare here.
21530
21531 * xdisp.c (display_menu_bar) [HAVE_NTGUI]: Check frame type.
21532
21533 * s/ms-w32.h (SYSTEM_PURESIZE_EXTRA): Bump to 50k.
21534
215352007-08-29 Kalle Olavi Niemitalo <kon@iki.fi> (tiny change)
21536
21537 * keyboard.c (interrupt_signal, handle_interrupt, Fset_quit_char):
21538 Fix get_named_tty calls for the controlling tty.
21539
215402007-08-29 ARISAWA Akihiro <ari@mbf.ocn.ne.jp> (tiny change)
21541
194d44e7 21542 * term.c (dissociate_if_controlling_tty) [USG]: Fix parse error.
aac0c6e3
MR
21543
215442007-08-29 Yoshiaki Kasahara <kasahara@nc.kyushu-u.ac.jp> (tiny change)
21545
21546 * term.c (tty_insert_glyphs): Add missing first parameter.
21547
215482007-08-29 Károly Lőrentey <karoly@lorentey.hu>
21549
21550 * buffer.c (Fbuffer_list, Fbury_buffer):
21551 Take frame->buried_buffer_list into account.
21552
21553 * cm.c (current_tty): New variable, for cmputc().
21554 (cmputc): Use it.
21555 (cmcheckmagic): Add tty parameter, look up terminal streams there.
21556 (calccost): Add tty parameter. Use emacs_tputs() instead of tputs().
21557 (cmgoto): Add tty parameter. Pass it on to calccost().
21558 Use emacs_tputs() instead of tputs().
21559
21560 * cm.h (emacs_tputs): New macro to set current_tty, and then call
21561 tputs().
21562 (current_tty): New variable, for cmputc().
21563 (cmcheckmagic, cmputc, cmgoto): Add prototypes.
21564
21565 * eval.c (unwind_to_catch): Don't call x_fully_uncatch_errors.
21566 (internal_condition_case, internal_condition_case_1)
21567 (internal_condition_case_2): Don't abort when x_catching_errors.
21568
21569 * fns.c (Fyes_or_no_p): Don't try to open an X dialog on tty terminals.
21570 (Fy_or_n_p): Likewise. Use temporarily_switch_to_single_kboard to
21571 prevent crashes caused by bogus longjmps in read_char.
21572
21573 * keymap.h (Fset_keymap_parent): Add EXFUN.
21574
21575 * macterm.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL)
21576 * w32term.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
21577 Remove redundant definition.
21578
21579 * macfns.c (x_set_mouse_color, x_make_gc):
21580 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
21581
21582 * w32term.c (x_free_frame_resources):
21583 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
21584 (w32_initialize): Use the accessor macros for terminal characteristics.
21585
21586 * macterm.c (mac_initialize): Use Fset_input_interrupt_mode.
21587 Use the accessor macros for terminal characteristics.
21588 * msdos.c (internal_terminal_init): Use the accessor macros for
21589 terminal characteristics.
21590 (ScreenVisualBell, internal_terminal_init):
21591 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
21592
21593 * termopts.h (no_redraw_on_reenter): Declare.
21594
21595 * alloc.c (emacs_blocked_malloc): Disable mallopt call.
21596 (mark_terminals, mark_ttys): Declare.
21597 (Fgarbage_collect): Call them.
21598 (mark_object): Mark buried_buffer_list.
21599
21600 * prefix-args.c: Include stdlib.h for exit.
21601
21602 * syssignal.h: Add comment.
21603
21604 * indent.c: Include stdio.h.
21605
21606 * window.h (Vinitial_window_system): Declare.
21607 (Vwindow_system): Delete declaration.
21608
21609 * fontset.c (Finternal_char_font): Use FRAME_RIF.
21610
21611 * image.c (lookup_image): Don't initialize `c' until the xasserts
21612 have been run.
21613
21614 * gtkutil.c (xg_create_frame_widgets): Use FRAME_BACKGROUND_PIXEL and
21615 FRAME_FOREGROUND_PIXEL.
21616
21617 * print.c (print_preprocess): Don't lose print_depth levels while
21618 iterating.
21619
21620 * widget.c (update_from_various_frame_slots):
21621 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
21622
21623 * window.c (set_window_buffer): Don't call clear_mouse_face on tty
21624 frames.
21625 (window_internal_height): Remove bogus make_number call.
21626 (init_window_once): Call make_terminal_frame with two zero parameters.
21627
21628 * fileio.c (Fread_file_name): Update comment.
21629
21630 * callint.c (Fcall_interactively):
21631 Use temporarily_switch_to_single_kboard instead of single_kboard_state.
21632 Make sure it is correctly unwound.
21633
21634 * xsmfns.c (x_session_close): New function.
21635
21636 * coding.h (terminal_coding, safe_terminal_coding, keyboard_coding):
21637 Delete declarations.
21638
21639 * xterm.h: Remove declaration for x_fully_uncatch_errors.
21640 (x_output): Remove background_pixel and foreground_pixel fields.
21641 (x_display_info): Add new field TERMINAL. Remove KBOARD field.
21642 (x_delete_device, x_session_close): Declare.
21643
21644 * lread.c: Include setjmp.h. Update declaration of `read_char'.
21645 (read_filtered_event): Call `read_char' with a local
21646 `wrong_kboard_jmpbuf'.
21647
21648 * minibuf.c (read_minibuf): Call temporarily_switch_to_single_kboard.
21649 Don't call single_kboard_state. Use FRAME_RIF.
21650
21651 * process.c (Fmake_network_process): Don't unrequest_sigio on modern
21652 systems.
21653
21654 * lisp.h (set_process_environment): Rename to `set_global_environment'.
21655 (Fframe_with_environment, Fset_input_meta_mode)
21656 (Fset_quit_char): EXFUN.
21657 (x_create_device, tty_output, terminal, tty_display_info): Declare.
21658 (init_sys_modes, reset_sys_modes): Update prototypes.
21659 (init_all_sys_modes, reset_all_sys_modes): New prototypes.
21660
21661 * keyboard.h (struct kboard): Add new fields Vlocal_function_key_map,
21662 Vlocal_key_translation_map, and Vkeyboard_translate_table.
21663 (Vfunction_key_map, Vkeyboard_translate_table, single_kboard_state):
21664 Delete declarations.
21665 (Vfunction_key_map, Vkey_translation_map, push_kboard, pop_kboard)
21666 (temporarily_switch_to_single_kboard, tty_read_avail_input):
21667 New declarations.
21668
21669 * emacs.c (main): Don't call init_sys_modes(), the new term_init()
21670 already does that during init_display(). Call syms_of_keymap
21671 before syms_of_keyboard. Call `syms_of_terminal'.
21672 Call set_initial_environment, not set_process_environment.
21673 (shut_down_emacs): Call reset_all_sys_modes() instead of
21674 reset_sys_modes().
21675
21676 * xfaces.c (x_free_gc): Protect xassert with GLYPH_DEBUG.
21677 (internal_resolve_face_name, resolve_face_name_error): New functions.
21678 (resolve_face_name): Protect against loops and errors thrown by Fget.
21679 (realize_default_face): Don't use FRAME_FONT unless frame is an X frame.
21680 (Ftty_supports_face_attributes_p): Update tty_capable_p call.
21681
21682 * scroll.c: Replace CURTTY() with local variables throughout the
21683 file (where applicable).
21684 (calculate_scrolling, calculate_direct_scrolling)
21685 (scrolling_1, scroll_cost): Use the accessor macros for terminal
21686 characteristics.
21687
21688 * keymap.c (Vfunction_key_map): Remove.
21689 (Fdescribe_buffer_bindings): Update references to Vfunction_key_map.
21690 (syms_of_keymap): Remove DEFVAR for Vfunction_key_map.
21691 (Vkey_translation_map): Remove.
21692 (syms_of_keymap): Remove DEFVAR for key-translation-map.
21693 (Fdescribe_buffer_bindings)
21694 (read_key_sequence, init_kboard, syms_of_keyboard, mark_kboards):
21695 Update for terminal-local key-translation-map.
21696
21697 * Makefile.in (callproc.o): Update dependencies.
21698 (lisp, shortlisp): Add termdev.elc.
21699 (obj): Add terminal.o.
21700 (terminal.o): Add dependencies.
21701 [HAVE_CARBON]: Make terminal.o depend on macgui.h.
21702 (data.o, fns.o): Add termhooks.h dependency.
21703 (SOME_MACHINE_LISP): Add dnd.elc.
21704 (minibuf.o): Fix typo.
21705 Update dependencies.
21706
21707 * data.c (do_symval_forwarding, store_symval_forwarding)
21708 (find_symbol_value): Use the selected frame's keyboard, not
21709 current_kboard.
21710
21711 * .gdbinit (init_sys_modes): Use Vinitial_window_system instead of
21712 Vwindow_system.
21713
21714 * xmenu.c (Fx_menu_bar_open) [USE_X_TOOLKIT, USE_GTK]: Rename from
21715 Fmenu_bar_open.
21716 (syms_of_xmenu): Update defsubr.
21717 (mouse_position_for_popup, Fx_popup_menu)
21718 (Fx_popup_dialog, x_activate_menubar, update_frame_menubar)
21719 (set_frame_menubar, free_frame_menubar)
b97439ce 21720 (create_and_show_popup_menu, xmenu_show)
aac0c6e3
MR
21721 (create_and_show_dialog, xdialog_show, xmenu_show): Abort if not
21722 an X frame.
21723
21724 * xselect.c (x_own_selection): Abort if not an X frame.
21725 (some_frame_on_display): Check if it is an X frame.
21726 (x_handle_selection_clear): Deal with MULTI_KBOARD.
21727
21728 * coding.c: Include frame.h and termhooks.h.
21729 (terminal_coding, keyboard_coding): Delete.
21730 (Fset_terminal_coding_system_internal)
21731 (Fset_keyboard_coding_system_internal)
21732 (Fkeyboard_coding_system)
21733 (Fterminal_coding_system): Add a terminal parameter.
21734 Get terminal_coding from the terminal.
21735 (init_coding_once): Don't call setup_coding_system here.
21736
21737 * dispextern.h (set_scroll_region, turn_off_insert)
21738 (turn_off_highlight, background_highlight, clear_end_of_line_raw)
21739 (tty_clear_end_of_line, tty_setup_colors)
21740 (delete_tty, updating_frame)
21741 (produce_special_glyphs, produce_glyphs, write_glyphs)
21742 (insert_glyphs): Remove.
21743 (raw_cursor_to, clear_to_end, tty_turn_off_insert)
21744 (tty_turn_off_highlight, get_tty_size): Add declaration.
21745 (tabs_safe_p, init_baud_rate, get_tty_terminal): Update prototypes.
21746
21747 * frame.h (enum output_method): Add output_initial.
21748 (struct x_output): Delete.
21749 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
21750 Access foreground_pixel and background_pixel directly from the frame.
21751 (tty_display): Delete.
21752 (struct frame): Add buried_buffer_list, foreground_pixel,
21753 background_pixel and terminal. Delete kboard.
21754 (union output_data): Add tty.
21755 (FRAME_KBOARD): Get the kboard from the terminal.
21756 (FRAME_INITIAL_P): New macro.
21757 (Qtty, Qtty_type, Qterminal, Qterminal_live_p, Qenvironment)
21758 (Qterm_environment_variable, Qdisplay_environment_variable)
21759 (make_terminal_frame, Qburied_buffer_list, Qwindow_system):
21760 New declarations.
21761
21762 * termchar.h (tty_output, tty_display_info): New structures.
21763 (tty_list): Declare.
21764 (FRAME_TTY, CURTTY): New macros.
21765 (must_write_spaces, min_padding_speed, fast_clear_end_of_line)
21766 (line_ins_del_ok, char_ins_del_ok, scroll_region_ok)
21767 (scroll_region_cost, memory_below_frame, fast_clear_end_of_line)
21768 (dont_calculate_costs, no_redraw_on_reenter): Remove declarations.
21769
21770 * callproc.c: Include frame.h and termhooks.h, for terminal
21771 parameters.
21772 (add_env): New function.
21773 (child_setup): Use it.
21774 (child_setup, getenv_internal): Handle the new Vprocess_environment.
21775 (getenv_internal): Fix get_terminal_param call.
21776 (Fgetenv_internal, egetenv): Update doc.
21777 (syms_of_callproc): Initialize Vprocess_environment to nil.
21778 Register and initialize them. Remove obsolete defvars. Update doc
21779 strings.
21780 (child_setup): Handle Vlocal_environment_variables.
21781 (getenv_internal): Add terminal parameter.
21782 Handle Vlocal_environment_variables.
21783 (Fgetenv_internal): Add terminal parameter.
21784 (child_setup, getenv_internal, Fgetenv_internal): Store the local
21785 environment in a frame (not terminal) parameter. Update doc strings.
21786 (set_initial_environment): Rename from set_global_environment.
21787 Store Emacs environment in initial frame parameter.
21788
21789 * xdisp.c (redisplay_internal): Update references to
21790 `previous_terminal_frame'.
21791 (display_mode_line, Fformat_mode_line): Replace calls to
21792 `push_frame_kboard' with `push_kboard'.
21793 (get_glyph_string_clip_rects): Add extra parentheses and
21794 braces to prevent compiler warnings.
21795 (calc_pixel_width_or_height): Add xassert to check that the
21796 frame is alive. Don't call `lookup_image' on a termcap frame.
21797 (message2_nolog, message3_nolog, redisplay_internal)
21798 (set_vertical_scroll_bar, redisplay_window, check_x_display_info)
21799 (x_set_scroll_bar_foreground, x_set_scroll_bar_background)
21800 (Fx_create_frame, Fxw_display_color_p, Fx_display_grayscale_p)
21801 (Fx_display_pixel_width, Fx_display_pixel_height)
21802 (Fx_display_planes, Fx_display_color_cells)
21803 (Fx_server_max_request_size, Fx_server_vendor, Fx_server_version)
21804 (Fx_display_screens, Fx_display_mm_height, Fx_display_mm_width)
21805 (Fx_display_backing_store, Fx_display_visual_class)
21806 (Fx_display_save_under, Fx_close_connection, x_create_tip_frame):
21807 Use FRAME_TERMINAL_P, FRAME_WINDOW_P, FRAME_TTY and FRAME_RIF.
21808
21809 * xfns.c (x_set_foreground_color x_set_background_color)
21810 (x_set_mouse_color, x_set_cursor_color, x_make_gc):
21811 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
21812 (Fx_create_frame, x_create_tip_frame, build_string, x_window)
21813 (Fx_create_frame, x_create_tip_frame): Don't create frames on a
21814 terminal that is being deleted.
21815 (Fx_create_frame): Use `store_frame_param' to set `window-system'
21816 frame parameter, and make sure it overrides any user-supplied setting.
21817 (Fx_close_connection, Fx_synchronize): Unify argument names with
21818 the rest of the DEFUNs.
21819
21820 * dispnew.c (Fsend_string_to_terminal): Update call to
21821 `get_tty_terminal'.
21822 (Fredraw_frame, Fsend_string_to_terminal)
21823 (Fsend_string_to_terminal, init_display): Use FRAME_RIF,
21824 FRAME_TERMCAP_P and FRAME_TTY.
21825 (window_change_signal): Don't believe width/height values that are
21826 impossibly small.
21827 (Vinitial_window_system): Rename from Vwindow_system.
21828 (termscript, Wcm, rif): Delete.
21829
21830 * termhooks.h (struct terminal): New struct containing the
21831 previously global text display hooks and new members NAME,
21832 DELETED and PARAM_ALIST.
21833 (FRAME_TERMINAL, TERMINAL_TERMINAL_CODING)
21834 (TERMINAL_KEYBOARD_CODING, TERMINAL_ACTIVE_P, FRAME_WINDOW_P)
21835 (FRAME_RIF): New macros.
21836 (get_terminal_param, get_device): New declarations.
21837 (termscript): Delete declaration.
21838
21839 * xterm.c (x_initialize): Use Fset_input_interrupt_mode.
21840 (XTflash, x_free_frame_resources, x_scroll_bar_create)
21841 (x_scroll_bar_set_handle): Use FRAME_BACKGROUND_PIXEL and
21842 FRAME_FOREGROUND_PIXEL.
21843 (x_fully_uncatch_errors): Disable definition.
21844 (x_scroll_bar_expose): Fix reference to foreground pixel.
21845 (XTread_socket): Disable loop on all X displays.
21846 (x_delete_terminal): Don't set terminal->deleted and let
21847 delete_terminal delete the frames on the terminal.
21848 (x_delete_display): Doc update to reflect changes in
21849 delete_terminal.
21850 (x_display_info) <terminal>: Move member earlier in the struct.
21851 (deleting_tty): Remove old variable.
21852 (Fsuspend_tty): Call clear_tty_hooks.
21853 (Fresume_tty, init_tty): Call set_tty_hooks.
21854 (Ftty_display_color_p, Ftty_display_color_cells): Don't throw
21855 errors on X frames.
21856 (x_catch_errors_unwind): Abort if x_error_message is NULL.
21857 (handle_one_xevent): Initialize `f' to NULL.
21858 (x_delete_terminal, x_create_terminal): New functions.
21859 (XTset_terminal_modes, XTreset_terminal_modes)
21860 (XTread_socket, x_connection_closed, x_term_init)
21861 (x_term_init, x_delete_display): Add terminal parameter.
21862 (x_term_init) [!HAVE_GTK_MULTIDISPLAY]: Refuse to create secondary
21863 X connections.
21864
21865 * frame.c: Include termchar.h.
21866 (Qterminal, Qterminal_live_p, Qburied_buffer_list, Qtty, Qtty_type)
21867 (Qwindow_system, Qenvironment, Qterm_environment_variable)
21868 (Qdisplay_environment_variable): New vars.
21869 (Fframep): Deal with output_initial.
21870 (Fframe-live-p): Doc fix.
21871 (Fwindow-system): New function.
21872 (x_set_screen_gamma, store_frame_param): Fix compilation errors.
21873 (make_terminal_frame): Don't create frames on a terminal that is
21874 being deleted. Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
21875 (store_frame_param): Check for found_for_frame before calling XFRAME.
21876 (Fmake_terminal_frame): Handle NULL tty names correctly.
21877 (syms_of_frame): Enhance doc string of `default-frame-alist'.
21878 (Fdelete_frame): Remove unused variable `count'. Don't allow other
21879 frames to refer to a deleted frame in their 'environment parameter.
21880 (Fframe_with_environment): New function.
21881 (syms_of_frame): Defsubr it. Initialize and staticpro Qenvironment.
21882 (get_future_frame_param): New function.
21883 (Fmake_terminal_frame): Use it.
21884 (x_set_frame_parameters, x_set_screen_gamma): Use FRAME_RIF.
21885
21886 * sysdep.c (init_sys_modes, reset_sys_modes): Update for renames.
21887 * sysdep.c (reset_sys_modes): Update for renames.
21888
21889 * keyboard.c (tty_read_avail_input): New function.
21890 (Fset_input_interrupt_mode, Fset_output_flow_control): New functions.
21891 (syms_of_keyboard): Defsubr them.
21892 (Fset_input_meta_mode, Fset_quit_char): New functions.
21893 (Fset_input_mode): Split to above functions.
21894 (read_char_minibuf_menu_prompt): Add wrong_kboard_jmpbuf
21895 parameter. Use it in call to `read_char'.
21896 (read_char): Declare. Update call to `read_char_minibuf_menu_prompt'.
21897 Set wrong_kboard_jmpbuf correctly in recursive calls.
21898 Use current_kboard to access Vkeyboard_translate_table.
21899 Enhance comment before extra longjmp to wrong_kboard_jmpbuf.
21900 Add wrong_kboard_jmpbuf parameter to allow for recursive calls.
21901 Update longjmp invocations. Remember the original current_kboard,
21902 and longjmp to `wrong_kboard_jmpbuf' when a filter, timer or sentinel
21903 changes it. Comment out unnecessary calls to
21904 `record_single_kboard_state' and `any_kboard_state'.
21905 Update recursive calls.
21906 (wrong_kboard_jmpbuf): Remove global variable.
21907 (read_key_sequence): Remove unused variable wrong_kboard_jmpbuf.
21908 Handle deleted interrupted_kboards correctly; that is a legal
21909 case. Add `wrong_kboard_jmpbuf' local variable. Update setjmp
21910 and read_char calls. Abort if interrupted_kboard died in read_char.
21911 (any_kboard_state, single_kboard_state)
21912 (push_frame_kboard): Remove function.
21913 (pop_kboard): Switch out of single_kboard mode if the kboard has
21914 been deleted. Remove unused variable. Help debugging by not
21915 changing current_kboard unnecessarily. Set current_kboard to the
21916 kboard of the selected frame when the stored kboard object has
21917 been deleted before pop_kboard.
21918 (temporarily_switch_to_single_kboard): Change first parameter to a
21919 frame pointer. Throw an error when caller wants to change kboards
21920 while in single_kboard mode. Don't push_kboard if we weren't in
21921 single kboard state. Don't pop_kboard if we popped into any
21922 kboard state.
21923 (restore_kboard_configuration): Abort if pop_kboard changed the
21924 kboard in single_kboard mode. Call pop_kboard only after setting
21925 up single_kboard mode.
21926 (Frecursive_edit): Switch to single_kboard mode only in nested
21927 command loops.
21928 (cmd_error, command_loop, command_loop_1, timer_check):
21929 Comment out unnecessary call to `any_kboard_state' and
21930 `record_single_kboard_state'.
21931 (delete_kboard): Exit single_kboard mode if we have just deleted
21932 that kboard. Use FRAME_KBOARD.
21933 (interrupt_signal): Use `Fkill_emacs' to exit Emacs, not
21934 `fatal_error_signal'.
21935 (record_single_kboard_state): Don't push_kboard if we weren't in
21936 single kboard state. Don't pop_kboard if we popped into any
21937 kboard state.
21938 (push_frame_kboard): Rename to push_kboard.
21939 (kbd_buffer_get_event): Use FRAME_TERMINAL.
21940 (read_avail_input): Read input from all terminals.
21941 (mark_kboards): Also mark Vkeyboard_translate_table.
21942 (kbd_buffer_store_event_hold): Simplify condition.
21943 (read_key_sequence): Reinitialize fkey and keytran at each replay.
21944 (Vkeyboard_translate_table): Move to struct kboard.
21945 (init_kboard): Initialize Vkeyboard_translate_table.
21946 (syms_of_keyboard): Use DEFVAR_KBOARD to define
21947 Vkeyboard_translate_table. Update doc strings. Update docs of
21948 local-function-key-map and function-key-map.
21949
21950 * terminal.c: New file.
21951
21952 * term.c: Include errno.h.
21953 (Vring_bell_function, device_list, initial_device)
21954 (next_device_id, ring_bell, update_begin, update_end)
21955 (set_terminal_window, cursor_to, raw_cursor_to)
21956 (clear_to_end, clear_frame, clear_end_of_line)
21957 (write_glyphs, insert_glyphs, delete_glyphs, ins_del_lines)
21958 (Fdisplay_name, create_device, delete_device): Move to terminal.c.
21959 (syms_of_term): Move their initialization to terminal.c.
21960 (get_tty_terminal, Fdisplay_tty_type, Ftty_display_color_p)
21961 (Ftty_display_color_cells)
21962 (Ftty_no_underline, Fsuspend_tty, Fresume_tty, create_tty_output)
21963 (clear_tty_hooks, set_tty_hooks)
21964 (init_tty, maybe_fatal): New functions.
21965 (Ftty_type): Return nil if terminal is not on a tty instead of
21966 throwing an error. Doc update.
21967 (syms_of_term) <Vsuspend_tty_functions, Vresume_tty_functions>:
21968 Doc update. Initialize new subrs and variables.
21969 (delete_tty): Use terminal->deleted.
21970 (tty_set_terminal_modes): Rename from set_terminal_modes.
21971 (tty_reset_terminal_modes): Rename from reset_terminal_modes.
21972 (set_scroll_region): Rename to `tty_set_scroll_region'.
21973 (turn_on_insert): Rename to `tty_turn_on_insert'.
21974 (turn_off_insert): Rename to `tty_turn_off_insert'.
21975 (turn_off_highlight): Rename to `tty_turn_off_highlight'.
21976 (turn_on_highlight): Rename to `tty_turn_on_highlight'.
21977 (toggle_highligh): Rename to `tty_toggle_highlight'.
21978 (background_highlight): Rename to `tty_background_highlight'.
21979 (highlight_if_desired): Rename to `tty_highlight_if_desired'.
21980 (tty_ring_bell, tty_update_end, tty_set_terminal_window)
21981 (tty_set_scroll_region, tty_background_highlight)
21982 (tty_cursor_to, tty_raw_cursor_to, tty_clear_to_end)
21983 (tty_clear_frame, tty_clear_end_of_line, tty_write_glyphs)
21984 (tty_insert_glyphs, tty_delete_glyphs, tty_ins_del_lines)
21985 (term_get_fkeys, tty_setup_colors, dissociate_if_controlling_tty):
21986 Add static modifier.
21987 (tty_reset_terminal_modes, tty_set_terminal_window)
21988 (tty_set_scroll_region, tty_background_highlight)
21989 (tty_highlight_if_desired, tty_cursor_to)
21990 (tty_raw_cursor_to, tty_clear_to_end, tty_clear_frame)
21991 (tty_clear_end_of_line, tty_write_glyphs, tty_insert_glyphs)
21992 (tty_delete_glyphs, tty_ins_del_lines, turn_on_face): Update for
21993 renames.
21994
219952007-08-28 Jan Djärv <jan.h.d@swipnet.se>
21996
21997 * keyboard.c: Qrtl is new.
21998 (parse_tool_bar_item): Handle :rtl keyword.
21999 (syms_of_keyboard): Intern :rtl keyword.
22000
22001 * dispextern.h (enum tool_bar_item_idx): Add TOOL_BAR_ITEM_RTL_IMAGE.
22002
22003 * gtkutil.c (xg_tool_bar_expose_callback): Just do SET_FRAME_GARBAGED
22004 so no Lisp code is executed.
22005 (file_for_image, find_rtl_image): New functions.
22006 (xg_get_image_for_pixmap): Use file_for_image.
22007 (update_frame_tool_bar): If direction is RTL, use RTL image if
22008 defined. Use Gtk stock images if defined.
22009
220102007-08-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22011
22012 * macterm.c (x_draw_composite_glyph_string_foreground): Draw rectangle
22013 for nonexistent or zero-width glyph in composition glyph.
22014
220152007-08-25 Stefan Monnier <monnier@iro.umontreal.ca>
22016
22017 * m/amdx86-64.h: Redirect to intel386.h if compiling for i386.
22018
22019 * xdisp.c (Finvisible_p): New function.
22020 (syms_of_xdisp): defsubr it.
22021
220222007-08-24 Juanma Barranquero <lekktu@gmail.com>
22023
22024 * image.c (syms_of_image) <image-library-alist, cross-disabled-images>:
22025 Doc fixes.
22026
220272007-08-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22028
22029 * mac.c [MAC_OSX] (select_and_poll_event, sys_select): Fix last changes.
22030
220312007-08-24 Martin Rudalics <rudalics@gmx.at>
22032
22033 * fileio.c (Finsert_file_contents): Consult CHARS_MODIFF to tell
22034 whether decoding has modified buffer contents.
22035
220362007-08-24 Jason Rumney <jasonr@gnu.org>
22037
22038 * image.c [HAVE_NTGUI]: Define dynamic loaded functions for SVG.
22039 (Qgdk_pixbuf, Qglib) [HAVE_NTGUI]: New symbols.
22040 (syms_of_image) [HAVE_NTGUI]: Intern and staticpro them.
22041 (init_svg_functions) [HAVE_NTGUI]: New function.
22042 (fn_g_type_init, fn_g_object_unref, fn_g_error_free): New #defines.
22043 (svg_load_image): Use them.
22044 (svg_load_image) [HAVE_NTGUI]: Implement background.
22045
220462007-08-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22047
22048 * Makefile.in (RSVG_LIBS, RSVG_CFLAGS): New variables.
22049 (ALL_CFLAGS): Use ${RSVG_CFLAGS} instead of @RSVG_CFLAGS@.
22050 (LIBX): Remove @RSVG_LIBS@.
22051 (LIBES): Add $(RSVG_LIBS).
22052
22053 * image.c (svg_load_image): Blend with specified background if exists.
22054 Use IMAGE_BACKGROUND. Add Mac OS Support.
22055
22056 * mac.c (wakeup_from_rne_enabled_p) [MAC_OSX]: Remove variable.
22057 (ENABLE_WAKEUP_FROM_RNE, DISABLE_WAKEUP_FROM_RNE) [MAC_OSX]:
22058 Remove macros.
22059 [MAC_OSX] (socket_callback): Do nothing.
22060 [MAC_OSX] (select_and_poll_event): Use CFRunLoopRunInMode instead of
22061 ReceiveNextEvent.
22062 [MAC_OSX] (sys_select): Likewise. Don't set context as argument to
22063 socket_callback.
22064 (mac_wakeup_from_rne) [MAC_OSX]: Do nothing.
22065
220662007-08-22 Glenn Morris <rgm@gnu.org>
22067
22068 * image.c (x_find_image_file): Search in etc/images/ rather than etc/.
22069
220702007-08-22 Paul Pogonyshev <pogonyshev@gmx.net>
22071
22072 * Makefile.in (ALL_CFLAGS, LIBX): Add RSVG_LIBS.
22073
22074 * image.c: Add support for SVG images. Some additional comments
22075 by Joakim Verona <joakim@verona.se>. When HAVE_RSVG is defined:
22076 (svg_image_p): New function to test for SVG image.
22077 (svg_load): New function to load SVG image.
22078 (svg_load_image): New function, helper for svg_load.
22079 (Qsvg): New Lisp_object.
22080 (svg_keyword_index): New enum.
22081 (svg_format): New static `image_keyword' struct.
22082 (svg_type): New static `image_type' struct.
22083 (librsvg/rsvg.h): Include it.
22084
220852007-08-23 Stefan Monnier <monnier@iro.umontreal.ca>
22086
22087 * lread.c (load_warn_old_style_backquotes): Fix up array size typo.
22088
220892007-08-22 Stefan Monnier <monnier@iro.umontreal.ca>
22090
22091 * lread.c (Qold_style_backquotes): New var.
22092 (syms_of_lread): Init and staticpro it.
22093 (load_warn_old_style_backquotes): New fun.
22094 (Fload): Use them to warn about old style backquotes.
22095 (end_of_file_error, Fload): Remove unused vars.
22096
22097 * lisp.h (Fclear_face_cache, Fx_send_client_event): Declare.
22098
22099 * lread.c (Vold_style_backquotes): New var.
22100 (syms_of_lread): Init and export it to Elisp.
22101 (read1): Set it when we find an old-style (back)quote.
22102
221032007-08-22 Jason Rumney <jasonr@gnu.org>
22104
22105 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): Add missing NULL terminator.
22106
221072007-08-22 Katsumi Yamaoka <yamaoka@jpl.org>
22108
22109 * puresize.h (BASE_PURESIZE): Increase to 1140000.
22110
221112007-08-19 Richard Stallman <rms@gnu.org>
22112
22113 * eval.c (Ffunction, Fquote): Signal error if not 1 argument.
22114
221152007-08-19 Andreas Schwab <schwab@suse.de>
22116
22117 * alloc.c (pure): Round PURESIZE up.
22118
221192007-08-17 Jan Djärv <jan.h.d@swipnet.se>
22120
22121 * xterm.c (handle_one_xevent): Remove check that mouse click is in
22122 active frame.
22123
221242007-08-16 Richard Stallman <rms@gnu.org>
22125
22126 * eval.c (Fcommandp): Add parens to clarify.
22127
22128 * minibuf.c (Fall_completions): Use enum for type of table.
22129
22130 * emacs.c (USAGE2): Improve text.
22131
221322007-08-15 Philippe Waroquiers <philippe.waroquiers@eurocontrol.int>
22133
22134 * term.c (tty_default_color_capabilities): Declare static
22135 variables in file scope, to avoid HPUX compiler problem.
22136
221372007-08-13 Jan Djärv <jan.h.d@swipnet.se>
22138
22139 * gtkutil.c (update_frame_tool_bar): Use -1 as index
22140 to gtk_toolbar_insert.
22141
221422007-08-13 Stefan Monnier <monnier@iro.umontreal.ca>
22143
22144 * fileio.c (Finsert_file_contents): Yet Another Int/Lisp_Object Mixup.
22145
22146 * insdel.c (reset_var_on_error): New fun.
22147 (signal_before_change, signal_after_change):
22148 Use it to reset (after|before)-change-functions to nil in case of error.
22149 Bind inhibit-modification-hooks to t.
22150 Don't bind (after|before)-change-functions to nil while they run.
22151
221522007-08-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22153
22154 * xterm.c (x_draw_image_glyph_string): Adjust stipple origin when
22155 filling pixmap with stippled background.
22156
221572007-08-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22158
22159 * macterm.c [TARGET_API_MAC_CARBON] (mac_handle_window_event):
22160 Don't use invisible frame as parent window for repositioning.
22161
221622007-08-10 Stefan Monnier <monnier@iro.umontreal.ca>
22163
22164 * print.c (new_backquote_output): Rename from old_backquote_output.
22165 (print): Inverse its logic (according to its name) so as to match the
22166 behavior of new_backquote_flag in lread.c.
22167
221682007-08-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22169
22170 * gmalloc.c (posix_memalign): New function.
22171
22172 * macterm.c (frame_highlight, frame_unhighlight): Don't call
22173 ActivateControl/DeactivateControl here.
22174 [USE_MAC_TOOLBAR] (free_frame_tool_bar): Suppress animation when
22175 frame-notice-user-settings is non-nil.
22176 [USE_MAC_FONT_PANEL] (mac_handle_font_event): Also record parameter
22177 for kEventParamFMFontStyle.
22178 [TARGET_API_MAC_CARBON] (mac_handle_keyboard_event): Don't check
22179 mac_pass_command_to_system and mac_pass_control_to_system here.
22180 (XTread_socket): Call ActivateControl/DeactivateControl here.
22181 (XTread_socket) [TARGET_API_MAC_CARBON]:
22182 Check mac_pass_command_to_system and mac_pass_control_to_system here.
22183 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Add further workaround
22184 for window repositioning.
22185
221862007-08-08 Glenn Morris <rgm@gnu.org>
22187
22188 * Replace `iff' in doc-strings and comments.
22189
221902007-08-07 Chong Yidong <cyd@stupidchicken.com>
22191
22192 * xdisp.c (move_it_by_lines): Remove incorrect optimization.
22193
221942007-08-07 Martin Rudalics <rudalics@gmx.at>
22195
22196 * fileio.c (Finsert_file_contents): Run format-decode and
22197 after_insert_file_functions on entire buffer when REPLACE is
22198 non-nil and inhibit modification_hooks and point_motion_hooks.
22199 For consistency, run after_insert_file_functions iff something
22200 got inserted. Move signal_after_change and update_compositions
22201 after code running after_insert_file_functions. Make sure that
22202 undo_list doesn't record intermediate steps of the decoding process.
22203
222042007-08-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22205
22206 * emacs.c (main)
22207 [HAVE_GTK_AND_PTHREAD && !SYSTEM_MALLOC && !DOUG_LEA_MALLOC]:
22208 Call malloc_enable_thread on interactive startup.
22209
22210 * gmalloc.c (_malloc_thread_enabled_p) [USE_PTHREAD]: New variable.
22211 (LOCK, UNLOCK, LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS)
22212 [USE_PTHREAD]: Conditionalize with it.
22213 (malloc_atfork_handler_prepare, malloc_atfork_handler_parent)
22214 (malloc_atfork_handler_child, malloc_enable_thread) [USE_PTHREAD]:
22215 New functions.
22216
222172007-08-06 Chong Yidong <cyd@stupidchicken.com>
22218
22219 * xdisp.c (redisplay_window): When restoring original buffer
22220 position, make sure it is still valid.
22221
22222 * image.c (png_load): Ignore png-supplied background color.
22223
222242007-08-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22225
22226 * mac.c [TARGET_API_MAC_CARBON] (cfdate_to_lisp): Obtain microsec value.
22227 Use kCFAbsoluteTimeIntervalSince1970.
22228
22229 * macmenu.c (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]:
22230 New variable.
22231 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Set it if dialog
22232 event loop should be quit.
22233 [TARGET_API_MAC_CARBON] (create_and_show_dialog) [!MAC_OSX]:
22234 Quit dialog event loop if quit_dialog_event_loop is set.
22235
22236 * macselect.c [!TARGET_API_MAC_CARBON]: Include Scrap.h.
22237 (Selection): New typedef. Use instead of ScrapRef.
22238 (mac_get_selection_from_symbol): Rename from get_scrap_from_symbol.
22239 (mac_valid_selection_target_p): Rename from valid_scrap_target_type_p.
22240 (mac_clear_selection): Rename from clear_scrap.
22241 (get_flavor_type_from_symbol): New argument SEL and subsume function of
22242 scrap_has_target_type. All uses changed.
22243 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
22244 (mac_selection_has_target_p): New functions.
22245 (mac_put_selection_value): Rename from put_scrap_string.
22246 (mac_get_selection_value): Rename from get_scrap_string.
22247 (mac_get_selection_target_list): Rename from get_scrap_target_type_list.
22248 (put_scrap_private_timestamp, scrap_has_target_type)
22249 (get_scrap_private_timestamp): Remove functions.
22250 (SCRAP_FLAVOR_TYPE_EMACS_TIMESTAMP): Remove define.
22251 (x_own_selection, x_get_local_selection):
22252 Use mac_valid_selection_value_p.
22253 (x_own_selection): Don't use put_scrap_private_timestamp.
22254 Record OWNERSHIP-INFO into Vselection_alist instead.
22255 (x_get_local_selection): Don't check type if request is local.
22256 (Fx_selection_owner_p): Don't use get_scrap_private_timestamp.
22257 Detect ownership change with OWNERSHIP-INFO in Vselection_alist instead.
22258
222592007-08-04 Jan Djärv <jan.h.d@swipnet.se>
22260
22261 * gtkutil.c (xg_tool_bar_callback): Generate two TOOL_BAR_EVENT:s,
22262 add comment explaining why.
22263
222642007-08-03 Richard Stallman <rms@gnu.org>
22265
22266 * fileio.c (Fvisited_file_modtime): Use make_time.
22267
222682007-08-01 Ryo Yoshitake <ryo@shiftmode.net> (tiny change)
22269
22270 * mac.c (init_mac_osx_environment): Adjust load-path on self-contained
22271 build.
22272
222732007-07-31 Stefan Monnier <monnier@iro.umontreal.ca>
22274
22275 * gtkutil.c (xg_tool_bar_callback): Generate a single TOOL_BAR_EVENT.
22276
222772007-07-30 Katsumi Yamaoka <yamaoka@jpl.org>
22278
22279 * puresize.h (BASE_PURESIZE): Increase to 1130000.
22280
222812007-07-30 Richard Stallman <rms@gnu.org>
22282
22283 * lread.c (readevalloop, read1): Treat NBSP as whitespace.
22284
222852007-07-29 Jan Djärv <jan.h.d@swipnet.se>
22286
22287 * gmalloc.c (__malloc_initialize): Remove pthread_once. Not needed.
22288
222892007-07-28 Nick Roberts <nickrob@snap.net.nz>
22290
22291 * xdisp.c (decode_mode_spec): Use '@' instead of 'R' to test for
22292 remote default-directory.
22293
22294 * buffer.c (mode-line-format): Update doc string.
22295
222962007-07-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22297
22298 * w32term.c (w32_draw_fringe_bitmap): Extend fringe background to
22299 scroll bar gap.
22300 (x_scroll_bar_create): Set bar->fringe_extended_p.
22301 (w32_set_vertical_scroll_bar): Put leftmost/rightmost scroll bars
22302 on frame edge. Check fringe background extension. Don't clear
22303 extended fringe background area.
22304
22305 * w32term.h (struct scroll_bar): New member fringe_extended_p.
22306 (w32_fill_area): Enclose multiple statements with do ... while (0).
22307
22308 * xterm.c (x_draw_fringe_bitmap) [USE_TOOLKIT_SCROLL_BARS]:
22309 Extend fringe background to scroll bar gap.
22310 (x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS]:
22311 Set bar->fringe_extended_p.
22312 (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
22313 Put leftmost/rightmost scroll bars on frame edge. Check fringe
22314 background extension. Don't clear extended fringe background area.
22315
22316 * xterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
22317 New member fringe_extended_p.
22318
223192007-07-25 Glenn Morris <rgm@gnu.org>
22320
22321 * Relicense all FSF files to GPLv3 or later.
22322
22323 * COPYING: Switch to GPLv3.
22324
223252007-07-25 Stefan Monnier <monnier@iro.umontreal.ca>
22326
22327 * eval.c (Fcommandp): Pay attention to the `interactive-form' property.
22328
22329 * data.c (Finteractive_form): Check for the presence of an
22330 `interactive-form' symbol property more thoroughly.
22331
22332 * data.c (Finteractive_form): Use an `interactive-form' property if
22333 present, analogous to the function-documentation property.
22334
223352007-07-24 Jason Rumney <jasonr@gnu.org>
22336
22337 * w32fns.c (x_real_positions): Get real position from OS instead of
22338 calculating it.
22339
223402007-07-23 Jason Rumney <jasonr@gnu.org>
22341
22342 * filelock.c (current_lock_owner): Allow for @ sign in username.
22343
223442007-07-22 Nick Roberts <nickrob@snap.net.nz>
22345
22346 * xdisp.c (decode_mode_spec): Add case 'R' for to test for
22347 remote default-directory.
22348
22349 * buffer.c (mode-line-format): Describe above case in doc string.
22350
223512007-07-20 Eli Zaretskii <eliz@gnu.org>
22352
22353 * w32proc.c (IMAGE_NT_OPTIONAL_HDR32_MAGIC, IMAGE_OPTIONAL_HEADER32):
22354 Define if not defined.
22355
223562007-07-18 Jason Rumney <jasonr@gnu.org>
22357
22358 * w32proc.c (w32_executable_type): Handle 64 bit executables.
22359
223602007-07-18 Richard Stallman <rms@gnu.org>
22361
22362 * data.c (Fsetq_default): Doc fix.
22363
22364 * eval.c (Fsetq): Doc fix.
22365
223662007-07-18 Juanma Barranquero <lekktu@gmail.com>
22367
22368 * coding.c (Ffind_operation_coding_system):
22369 * eval.c (For, Fand): Doc fixes.
22370 Reported by Johan Bockgård.
22371
223722007-07-18 Jan Djärv <jan.h.d@swipnet.se>
22373
22374 * xfns.c (Fx_focus_frame): Call x_ewmh_activate_frame.
22375
22376 * xterm.h: Declare x_ewmh_activate_frame.
22377
22378 * xterm.c (x_ewmh_activate_frame): New function.
22379 (XTframe_raise_lower): Move code to x_ewmh_activate_frame.
22380
223812007-07-17 Martin Rudalics <rudalics@gmx.at>
22382
22383 * window.c (Fdisplay_buffer): If largest or LRU window is the
22384 only window, split it even if it is not eligible for splitting.
22385 This restores the original behavior broken by the 2007-07-15
22386 change.
22387
223882007-07-17 Glenn Morris <rgm@gnu.org>
22389
22390 * abbrev.c (abbrev_check_chars): New function.
22391 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
22392 Call abbrev_check_chars to check abbrev characters are word
22393 constituents. Doc fix.
22394
223952007-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
22396
22397 * process.c (Fstart_process, Fmake_network_process)
22398 (read_process_output): Fix up last changes.
22399
224002007-07-16 Eli Zaretskii <eliz@gnu.org>
22401
22402 * makefile.w32-in (clean): Don't delete *~.
22403
224042007-07-16 Andreas Schwab <schwab@suse.de>
22405
22406 * window.c (Fdisplay_buffer): Use NILP.
22407 (Fset_window_scroll_bars): Likewise.
22408
224092007-07-15 Martin Rudalics <rudalics@gmx.at>
22410
22411 * window.c (window_min_size_2): New function.
22412 (window_min_size_1, size_window, Fdisplay_buffer)
22413 (Fsplit_window, adjust_window_trailing_edge): Use it to avoid
22414 windows without mode- or header-lines when window-min-height is
22415 too small.
22416 (size_window): Reset nodelete_p after testing it, following an
22417 earlier note by Kim F. Storm.
22418 (display_buffer): Do not set split_height_threshold to twice the
22419 value of window_min_height to avoid changing the value of a
22420 customizable variable. Rather explicitly check whether the
22421 height of the window that shall be splitted is at least as large
22422 as split_height_threshold.
22423 (Fwindow_full_width_p): New defun.
22424 (syms_of_window): Defsubr it.
22425
22426 * window.h: Add EXFUN for Fwindow_full_width_p.
22427
224282007-07-14 Jason Rumney <jasonr@gnu.org>
22429
22430 * process.c [WINDOWSNT]: Don't undefine AF_INET6.
22431
224322007-07-14 Richard Stallman <rms@gnu.org>
22433
22434 * eval.c (maybe_call_debugger): New function.
22435 (find_handler_clause): Use maybe_call_debugger.
22436 Call it when the handler says `debug'.
22437 Eliminate DEBUGGER_VALUE_PTR.
22438 (Fsignal): Eliminate debugger_value.
22439 (Qdebug): New variable.
22440 (syms_of_eval): Initialize it.
22441
224422007-07-14 Juanma Barranquero <lekktu@gmail.com>
22443
22444 * eval.c (Fprogn):
22445 * keyboard.c (Ftrack_mouse):
22446 * print.c (Fwith_output_to_temp_buffer):
22447 * window.c (Fsave_window_excursion): Doc fix.
22448
224492007-07-13 Stefan Monnier <monnier@iro.umontreal.ca>
22450
22451 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 400.
22452
224532007-07-12 Stefan Monnier <monnier@iro.umontreal.ca>
22454
22455 * process.h (struct Lisp_Process): Turn slots infd, outfd,
22456 kill_without_query, pty_flag, tick, update_tick, decoding_carryover,
22457 inherit_coding_system_flag, filter_multibyte, adaptive_read_buffering,
22458 read_output_delay, and read_output_skip from Lisp_Objects to ints.
22459 Remove unused encoding_carryover.
22460 * process.c: Adjust all functions accordingly.
22461
224622007-07-12 Richard Stallman <rms@gnu.org>
22463
22464 * term.c: Include unistd.h only if HAVE_UNISTD_H.
22465
224662007-07-11 Jason Rumney <jasonr@gnu.org>
22467
22468 * makefile.w32-in (LIBS): Include OLE32.
22469
22470 * w32fns.c (w32_msg_pump) <WM_EMACS_CREATEWINDOW>: Initialize COM.
22471 (w32_msg_pump) <WM_DESTROY>: Uninitialize COM.
22472
224732007-07-11 Stefan Monnier <monnier@iro.umontreal.ca>
22474
22475 * lisp.h (struct Lisp_Hash_Table): Turn next_weak into a bare pointer.
22476 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and turned
22477 from a Lisp_Object into a bare pointer.
22478 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
22479 Adjust the code correspondingly.
22480
22481 * alloc.c (emacs_blocked_free): Remove unused var `bytes_used_now'.
22482
22483 * term.c: Include unistd.h for ttyname, used in handle_one_term_event.
22484 (term_show_mouse_face): Remove unused var `j'.
22485 (handle_one_term_event): Remove unused vars `i' and `j'.
22486 Don't cast return value of ttyname since it's not necessary.
22487
224882007-07-10 Stefan Monnier <monnier@iro.umontreal.ca>
22489
22490 * alloc.c (mark_maybe_pointer): Enforce mult-of-8 alignment when using
22491 USE_LSB_TAG. Suggested by Dmitry Antipov <dmantipov@yandex.ru>.
22492
22493 * fns.c (map_char_table): Use an array of int for `indices' rather than
22494 an array of Lisp_Objects (which are only ever integers anyway).
22495 (Fmap_char_table): Update caller.
22496 * lisp.h: Update prototype.
22497 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap):
22498 * fontset.c (Ffontset_info):
22499 * casetab.c (set_case_table): Update callers.
22500
22501 * editfns.c (Ftranspose_regions): Use EMACS_INT for positions.
22502
22503 * keymap.c (struct accessible_keymaps_data)
22504 (struct where_is_internal_data): New structures.
22505 (accessible_keymaps_1, where_is_internal_1): Use them to change
22506 interface to adhere to the one used by map_keymap.
22507 (Faccessible_keymaps, where_is_internal): Use map_keymap.
22508 (accessible_keymaps_char_table, where_is_internal_2): Remove.
22509
22510 * keymap.h (map_keymap_function_t): More informative prototype.
22511
225122007-07-10 Guanpeng Xu <herberteuler@hotmail.com>
22513
22514 * search.c (Vinhibit_changing_match_data, search_regs_1): New vars.
22515 (looking_at_1): Don't change search_regs and last_thing_searched
22516 if `inhibit-changing-match-data' is non-nil.
22517 (string_match_1, search_buffer, set_search_regs): Likewise.
22518 (syms_of_search): Add Lisp level definition for
22519 `inhibit-changing-match-data' and set it to nil.
22520 (boyer_moore): If `inhibit-changing-match-data' is non-nil, compute
22521 start and end of the match, instead of using values in search_regs.
22522
225232007-07-01 Stefan Monnier <monnier@iro.umontreal.ca>
22524
22525 * minibuf.c (Fcompleting_read): New value `confirm-only'
22526 for `require-match'.
22527
225282007-06-28 Stefan Monnier <monnier@iro.umontreal.ca>
22529
22530 * fileio.c (Fdo_auto_save): Revert last patch installed unwillingly as
22531 part of the 2007-06-27 change to syms_of_fileio.
22532
225332007-06-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22534
22535 * macterm.c [USE_MAC_TSM] (mac_handle_text_input_event):
22536 Check WINDOWP before using XWINDOW. Consolidate return statements.
22537
225382007-06-27 Richard Stallman <rms@gnu.org>
22539
22540 * fileio.c (syms_of_fileio) <after-insert-file-functions>: Doc fix.
22541
225422007-06-27 Juanma Barranquero <lekktu@gmail.com>
22543
22544 * buffer.c (syms_of_buffer) <selective-display>: Fix typo in docstring.
22545
225462007-06-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22547
22548 * gmalloc.c [HAVE_GTK_AND_PTHREAD]: Check this after including config.h.
22549 (_aligned_blocks_mutex) [USE_PTHREAD]: New variable.
22550 (LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS): New macros.
22551 (_free_internal, memalign): Use them.
22552 (_malloc_mutex, _aligned_blocks_mutex) [USE_PTHREAD]:
22553 Initialize to PTHREAD_MUTEX_INITIALIZER.
22554 (malloc_initialize_1) [USE_PTHREAD]: Don't use recursive mutex.
22555 (morecore_nolock): Rename from morecore. All uses changed.
22556 Use only nolock versions of internal allocation functions.
22557 (_malloc_internal_nolock, _realloc_internal_nolock)
22558 (_free_internal_nolock): New functions created from
22559 _malloc_internal, _realloc_internal, and _free_internal.
22560 (_malloc_internal, _realloc_internal, _free_internal): Use them.
22561 Copy hook value to automatic variable before its use.
22562 (memalign): Copy hook value to automatic variable before its use.
22563
225642007-06-26 Kenichi Handa <handa@m17n.org>
22565
22566 * coding.c (Ffind_operation_coding_system): Docstring improved.
22567 (syms_of_coding): Docstring of `file-coding-system-alist' improved.
22568
225692007-06-25 David Kastrup <dak@gnu.org>
22570
22571 * keymap.c (Fcurrent_active_maps): Add `position' argument.
22572 (Fwhere_is_internal): Adjust call to `current-active-maps' to
22573 cater for additional parameter.
22574
22575 * keymap.h: Adjust number of parameters to `current-active-maps'.
22576
22577 * doc.c (Fsubstitute_command_keys): Adjust call of
22578 `current-active-maps'.
22579
225802007-06-25 David Kastrup <dak@gnu.org>
22581
22582 * callint.c (Fcall_interactively): Make the parsing of interactive
22583 specs somewhat more readable.
22584
225852007-06-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22586
22587 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe background
22588 to scroll bar gap also when bitmap fills fringe. Draw only foreground
22589 if extended background has already been filled.
22590
225912007-06-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22592
22593 * macgui.h (USE_CG_DRAWING): Don't require USE_ATSUI.
22594 (USE_MAC_TOOLBAR): Require USE_CG_DRAWING.
22595
22596 * macmenu.c (mac_dialog_modal_filter, Fx_popup_dialog) [MAC_OSX]:
22597 Put special treatment for Fmessage_box, Fyes_or_no_p, and Fy_or_n_p
22598 in #if 0 as it is not compatible with y-or-n-p-with-timeout.
22599 (timer_check) [TARGET_API_MAC_CARBON]: Add extern.
22600 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Use QuitEventLoop
22601 instead of QuitAppModalLoopForWindow. Consolidate QuitEventLoop calls.
22602 (pop_down_dialog) [TARGET_API_MAC_CARBON]: New function.
22603 [TARGET_API_MAC_CARBON] (create_and_show_dialog): Use it for unwind.
22604 Run timers during dialog popup.
22605 (Fmenu_or_popup_active_p) [TARGET_API_MAC_CARBON]: Use popup_activated.
22606
226072007-06-21 Jason Rumney <jasonr@gnu.org>
22608
22609 * image.c (convert_mono_to_color_image): Swap fore and background.
22610
226112007-06-20 Jason Rumney <jasonr@gnu.org>
22612
22613 * w32bdf.c (w32_BDF_to_x_font): Unmap memory when finished.
22614 (w32_free_bdf_font): Unmap memory not handle.
22615
226162007-06-20 Sam Steingold <sds@gnu.org>
22617
22618 * gmalloc.c (__morecore): Fix the declaration to comply with the
22619 definition.
22620
226212007-06-20 Juanma Barranquero <lekktu@gmail.com>
22622
22623 * w32term.c (w32_delete_display): Remove leftover declaration.
22624 (w32_define_cursor, w32_initialize): Make static.
22625
22626 * w32.c (_wsa_errlist): Fix typo in error message.
22627 (init_environment): Ignore any environment variable from the
22628 registry having a null value.
22629
226302007-06-20 Glenn Morris <rgm@gnu.org>
22631
22632 * Makefile.in (LIBGIF): Default to -lgif.
22633
226342007-06-17 Jason Rumney <jasonr@gnu.org>
22635
22636 * w32menu.c (add_menu_item): Don't use multibyte string functions on
22637 unicode strings.
22638
226392007-06-16 Juanma Barranquero <lekktu@gmail.com>
22640
22641 * xdisp.c (syms_of_xdisp) <auto-resize-tool-bars>:
22642 Fix typo in docstring.
22643
226442007-06-16 Eli Zaretskii <eliz@gnu.org>
22645
22646 * w32menu.c (add_menu_item): Escape `&' characters in menu items
22647 and their keybindings.
22648
226492007-06-15 Chong Yidong <cyd@stupidchicken.com>
22650
22651 * composite.c (update_compositions): Fix last fix.
22652
226532007-06-14 Jason Rumney <jasonr@gnu.org>
22654
22655 * w32.c (get_process_times_fn): New function pointer.
22656 (globals_of_w32): Intialize it if present in kernel32.dll.
22657 (w32_get_internal_run_time): New function.
22658
22659 * editfns.c (Fget_internal_run_time) [WINDOWSNT]: Use it.
22660
226612007-06-14 Kenichi Handa <handa@etlken.m17n.org>
22662
22663 * composite.c (update_compositions): Check the validness of
22664 compositions.
22665
226662007-06-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22667
22668 * frame.h (struct frame) [MAC_OS]: New member external_tool_bar.
22669 (FRAME_EXTERNAL_TOOL_BAR) [MAC_OS]: Use it.
22670
22671 * macfns.c (mac_window) [USE_MAC_TOOLBAR]: Set toolbar_win_gravity.
22672 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]: Set FRAME_EXTERNAL_TOOL_BAR.
22673
22674 * macgui.h (USE_MAC_TOOLBAR): New define.
22675
22676 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
22677 Return immediately unless popup is activated.
22678
22679 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe
22680 background to scroll bar gap.
22681 (x_scroll_bar_create) [MAC_OSX]: Set bar->fringe_extended_p.
22682 (XTset_vertical_scroll_bar) [MAC_OSX]: Put leftmost/rightmost
22683 scroll bars on frame edge. Check fringe background extension.
22684 Don't clear extended fringe background area.
22685 (TOOLBAR_IDENTIFIER, TOOLBAR_ICON_ITEM_IDENTIFIER)
22686 (TOOLBAR_ITEM_COMMAND_ID_OFFSET, TOOLBAR_ITEM_COMMAND_ID_P)
22687 (TOOLBAR_ITEM_COMMAND_ID_VALUE, TOOLBAR_ITEM_MAKE_COMMAND_ID):
22688 [USE_MAC_TOOLBAR]: New macros.
22689 (mac_move_window_with_gravity, mac_get_window_origin_with_gravity)
22690 (mac_handle_toolbar_event, mac_image_spec_to_cg_image)
22691 (mac_create_frame_tool_bar, update_frame_tool_bar, free_frame_tool_bar)
22692 (mac_tool_bar_note_mouse_movement, mac_handle_toolbar_command_event)
22693 [USE_MAC_TOOLBAR]: New functions.
22694 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Reposition window
22695 manually if previous repositioning has failed.
22696 (mac_handle_keyboard_event): Use precomputed event kind.
22697 (XTread_socket) [USE_MAC_TOOLBAR]: Handle click in structure region
22698 as tool bar item click. Handle mouse movement over tool bar items.
22699
22700 * macterm.h (struct mac_output) [USE_MAC_TOOLBAR]: New member
22701 toolbar_win_gravity.
22702 (struct scroll_bar) [MAC_OSX]: New member fringe_extended_p.
22703 (update_frame_tool_bar, free_frame_tool_bar) [USE_MAC_TOOLBAR]:
22704 Add externs.
22705
22706 * xdisp.c (update_tool_bar, redisplay_tool_bar, redisplay_window)
22707 [USE_MAC_TOOLBAR]: Sync with GTK+ tool bar display.
22708
227092007-06-14 Chong Yidong <cyd@stupidchicken.com>
22710
22711 * image.c (search_image_cache): Remove unused variable.
22712
227132007-06-13 Chong Yidong <cyd@stupidchicken.com>
22714
22715 * xfns.c, xmenu.c: Link to xaw3d if available.
22716
227172007-06-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22718
22719 * dispextern.h (struct image) [HAVE_WINDOW_SYSTEM]: New members
22720 frame_foreground and frame_background.
22721
22722 * image.c (lookup_image): Save frame foreground and background colors.
22723 (search_image_cache): Check if saved and current frame colors match.
22724
227252007-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
22726
22727 * regex.c (regex_compile): Remove the `regnum' counter.
22728 Use bufp->re_nsub instead. Add support for \(?N:RE\).
22729
227302007-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
22731
22732 * term.c: Include intervals.h to declare Fget_text_property.
22733
227342007-06-10 Jason Rumney <jasonr@gnu.org>
22735
22736 * w32fns.c (Fx_file_dialog): Take size from struct not pointer.
22737
227382007-06-08 Juanma Barranquero <lekktu@gmail.com>
22739
22740 * callint.c (Fcall_interactively):
22741 * editfns.c (Fdelete_and_extract_region):
22742 * fileio.c (Fread_file_name):
22743 * fns.c (Fmapconcat):
22744 * keyboard.c (cmd_error_internal):
22745 * keymap.c (Fkey_description):
22746 * lread.c (openp):
22747 * minibuf.c (read_minibuf):
22748 * search.c (wordify):
22749 * sunfns.c (sel_read):
22750 * xdisp.c (Fformat_mode_line, syms_of_xdisp):
22751 * xfns.c (x_default_scroll_bar_color_parameter):
22752 * xmenu.c (menu_help_callback):
22753 * xselect.c (Fx_get_atom_name):
22754 * xterm.c (x_term_init): Use empty_unibyte_string.
22755
227562007-06-08 Dmitry Antipov <dmantipov@yandex.ru> (tiny change)
22757
22758 * alloc.c (init_strings): Initialize canonical empty strings.
22759 (make_uninit_string, make_uninit_multibyte_string): Return appropriate
22760 canonical empty string when the requested size is 0.
22761
22762 * emacs.c (empty_unibyte_string): Rename from empty_string.
22763 (empty_multibyte_string): New canonical empty string.
22764 (syms_of_emacs): Don't initialize empty_string.
22765
22766 * lisp.h (STRING_SET_UNIBYTE): Return the canonical empty unibyte
22767 string, if appropriate.
22768 (empty_unibyte_string, empty_multibyte_string): New externs.
22769 (empty_string): Remove extern.
22770
22771 * lread.c (syms_of_lread): Use empty_unibyte_string.
22772
227732007-06-07 Jason Rumney <jasonr@gnu.org>
22774
22775 * s/ms-w32.h: Don't define HAVE_TZNAME.
22776
22777 * editfns.c (Fcurrent_time_zone): Remove hack for Japanese Windows.
22778
227792007-06-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22780
22781 * mac.c (xrm_get_preference_database): Remove BLOCK_INPUT.
22782
22783 * macfns.c (mac_get_window_bounds): Move extern to macterm.h.
22784 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use GetGlobalMouse.
22785
22786 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
22787 Don't call next handler.
22788 [TARGET_API_MAC_CARBON] (install_menu_target_item_handler):
22789 Remove argument. Install handler to application.
22790 (set_frame_menubar): Don't change deep_p.
22791 (mac_menu_show): Use FRAME_OUTER_TO_INNER_DIFF_X and
22792 FRAME_OUTER_TO_INNER_DIFF_Y.
22793 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
22794 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
22795 [HAVE_DIALOGS]: New macros.
22796 [HAVE_DIALOGS] (mac_handle_dialog_event, create_and_show_dialog):
22797 Use them.
22798 (fill_menubar) [TARGET_API_MAC_CARBON]: Use CFString.
22799
22800 * macselect.c [MAC_OSX] (install_service_handler): Rename from
22801 init_service_handler. All callers changed. Return OSStatus value.
22802
22803 * macterm.c (mac_begin_cg_clip): New arg F. Call SetPortWindowPort.
22804 All callers changed so as not to call SetPortWindowPort.
22805 (mac_begin_cg_clip) [USE_CG_DRAWING]: Call mac_prepare_for_quickdraw.
22806 (mac_draw_image_string_atsui) [USE_ATSUI]: New function created from
22807 mac_draw_string_common.
22808 (mac_draw_image_string_qd): Likewise.
22809 (mac_draw_string_common): Use them. Add INLINE.
22810 (XTmouse_position, x_scroll_bar_report_motion) [TARGET_API_MAC_CARBON]:
22811 Use FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y, and
22812 GetGlobalMouse.
22813 (x_set_mouse_pixel_position) [MAC_OSX]: Use FRAME_OUTER_TO_INNER_DIFF_X
22814 and FRAME_OUTER_TO_INNER_DIFF_Y.
22815 [TARGET_API_MAC_CARBON] (mac_handle_mouse_event): Likewise.
22816 [USE_MAC_TSM] (mac_handle_text_input_event): Likewise.
22817 (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Move code for
22818 repositioning window to mac_handle_window_event.
22819 (x_make_frame_invisible) [TARGET_API_MAC_CARBON]: Move code for
22820 saving window location to mac_handle_window_event
22821 [USE_MAC_FONT_PANEL] (mac_show_hide_font_panel): Install handler here.
22822 (install_menu_target_item_handler): Remove argument in extern.
22823 [TARGET_API_MAC_CARBON] (mac_event_to_emacs_modifiers):
22824 Also accept command events.
22825 (do_keystroke): New function created from XTread_socket.
22826 (init_command_handler): Remove functions.
22827 [TARGET_API_MAC_CARBON] (mac_handle_window_event): Reposition window
22828 and save window location by kEventWindowShowing and kEventWindowHiding
22829 handlers here. Don't call next handler for window state change and
22830 focus events.
22831 (mac_handle_application_event, mac_handle_keyboard_event)
22832 [TARGET_API_MAC_CARBON]: New functions.
22833 (install_window_handler) [TARGET_API_MAC_CARBON]: Register handlers for
22834 kEventWindowShowing and kEventWindowHiding events. Move installation
22835 of mouse, font, text input and menu target item handlers to
22836 install_application_handler.
22837 (install_application_handler) [TARGET_API_MAC_CARBON]: New function.
22838 (mac_handle_cg_display_reconfig) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
22839 New function.
22840 (init_dm_notification_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
22841 Register it.
22842 (XTread_socket) [TARGET_API_MAC_CARBON]:
22843 Consolidate SendEventToEventTarget calls.
22844 Use FRAME_OUTER_TO_INNER_DIFF_X and FRAME_OUTER_TO_INNER_DIFF_Y.
22845 Move application activation handler to mac_handle_application_event.
22846 Move keyboard handler to mac_handle_keyboard_event.
22847 (XTread_socket) [!TARGET_API_MAC_CARBON]: Use do_keystroke.
22848 (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
22849 init_command_handler. Call install_application_handler.
22850
22851 * macterm.h (mac_get_window_bounds): Move extern from macfns.c.
22852 (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y): New macros.
22853
228542007-06-07 Glenn Morris <rgm@gnu.org>
22855
22856 * emacs.c (main): Use `emacs-copyright' in --version output.
22857
228582007-06-06 Chong Yidong <cyd@stupidchicken.com>
22859
22860 * image.c (xpm_load): Remove spurious call to xpm_init_color_cache.
22861
228622007-06-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22863
22864 * macfns.c (mac_window): Replace WindowPtr with WindowRef.
22865
22866 * macgui.h: Replace WindowPtr with WindowRef.
22867
22868 * macmenu.c: Replace MenuHandle and GetMenuHandle with MenuRef and
22869 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
22870 Replace ControlHandle with ControlRef.
22871 (install_menu_quit_handler): Rename arg MENU_HANDLE to ROOT_MENU.
22872
22873 * macterm.c: Replace MenuHandle and GetMenuHandle with MenuRef and
22874 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
22875 Replace ControlHandle with ControlRef.
22876 (USE_CARBON_EVENTS): Remove. Use TARGET_API_MAC_CARBON instead.
22877 [MAC_OS8] (do_get_menus): Rename variable `menu_handle' to `menu'.
22878
22879 * macterm.h (struct scroll_bar): Rename member control_handle_low
22880 and control_handle_high to control_ref_low and control_ref_high.
22881 All uses changed.
22882 (SCROLL_BAR_CONTROL_REF, SET_SCROLL_BAR_CONTROL_REF): Rename from
22883 SCROLL_BAR_CONTROL_HANDLE and SET_SCROLL_BAR_CONTROL_HANDLE,
22884 respectively. All uses changed.
22885 (XCreatePixmap, XCreatePixmapFromBitmapData, XSetWindowBackground)
22886 (install_window_handler, remove_window_handler): Replace WindowPtr
22887 with WindowRef in externs.
22888
228892007-06-05 Juanma Barranquero <lekktu@gmail.com>
22890
22891 * xfaces.c (Finternal_lisp_face_p): Signal error for face alias loops.
22892
228932007-06-03 Nick Roberts <nickrob@snap.net.nz>
22894
22895 * keyboard.c (discard_mouse_events): Add GPM_CLICK_EVENT case.
22896
22897 * frame.c (Fmouse_position, Fmouse_pixel_position):
22898 Condition on HAVE_GPM too.
22899
22900 * term.c (term_mouse_highlight): Remove unused variables.
22901 (Fterm_open_connection): Set gpm_zerobased to 1.
22902 (term_mouse_movement, term_mouse_click, handle_one_term_event):
22903 Use zero based co-ordinates.
22904 (handle_one_term_event): Report a drag as mouse movement too.
22905
22906 * Makefile.in (MOUSE_SUPPORT): Define for HAVE_GPM.
22907
229082007-06-03 Chong Yidong <cyd@stupidchicken.com>
22909
22910 * image.c (search_image_cache): New function. Require background
22911 color match if background color is unspecified in the image spec.
22912 (uncache_image, lookup_image): Use it.
22913
229142007-06-01 Juanma Barranquero <lekktu@gmail.com>
22915
22916 * window.c (Fshrink_window): Reflow docstring.
22917
229182007-06-02 Chong Yidong <cyd@stupidchicken.com>
22919
22920 * Version 22.1 released.
22921
229222007-06-01 Richard Stallman <rms@gnu.org>
22923
22924 * xfns.c (x_encode_text): Add GCPRO.
22925
229262007-06-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22927
22928 * xfns.c (x_set_name_internal): Save encoded name before
22929 x_encode_text in case string data is relocated.
22930
229312007-05-31 Richard Stallman <rms@gnu.org>
22932
22933 * buffer.c (syms_of_buffer): Doc fix.
22934
229352007-05-30 Nick Roberts <nickrob@snap.net.nz>
22936
22937 * sysdep.c (init_sys_modes): Add rather than replace with
22938 O_NONBLOCK.
22939
22940 * frame.c [HAVE_GPM] (Fset_mouse_pixel_position): Add call to
22941 term_mouse_moveto.
22942
22943 * termhooks.h (term_mouse_moveto): New extern.
22944
22945 * term.c (mouse_face_window): Rename...
22946 (Qmouse_face_window): ...to this.
22947 (term_show_mouse_face, term_clear_mouse_face)
22948 (term_mouse_highlight): Use Qmouse_face_window.
22949 (term_mouse_moveto): New function.
22950 (term_mouse_position): Make it work.
22951 (syms_of_term): Uncomment assignment to mouse_position_hook.
22952 Staticpro Qmouse_face_window.
22953
229542007-05-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22955
22956 * xdisp.c (redisplay_internal): Bind inhibit-point-motion-hooks to t
22957 around current_column call.
22958
229592007-05-26 Dan Nicolaescu <dann@ics.uci.edu>
22960
22961 * xfaces.c (syms_of_xfaces): Delete stray semicolon.
22962 * xdisp.c (next_element_from_buffer):
22963 * window.c (delete_window):
22964 * term.c (term_mouse_highlight):
22965 * msdos.c (getdefdir):
22966 * macterm.c (mac_create_bitmap_from_bitmap_data)
22967 (init_font_name_table):
22968 * fns.c (Fsxhash):
22969 * data.c (Fmake_local_variable):
22970 * ccl.c (ccl_driver): Likewise.
22971
229722007-05-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22973
22974 * macterm.c [USE_CARBON_EVENTS] (mac_handle_window_event):
22975 Call mac_wakeup_from_rne on window size change.
22976
229772007-05-25 Chong Yidong <cyd@stupidchicken.com>
22978
22979 * image.c (uncache_image): Fix typo.
22980
229812007-05-23 Johannes Weiner <hannes@saeurebad.de> (tiny change)
22982
22983 * keyboard.c (make_lispy_movement): Condition on HAVE_GPM too.
22984
229852007-05-22 Richard Stallman <rms@gnu.org>
22986
22987 * xterm.c (x_connection_closed): Remove NO_RETURN.
22988
229892007-05-22 Martin Rudalics <rudalics@gmx.at>
22990
22991 * syntax.c (scan_words): Fix arg to UPDATE_SYNTAX_TABLE_BACKWARD.
22992
229932007-05-21 Chong Yidong <cyd@stupidchicken.com>
22994
22995 * image.c (uncache_image): New function.
22996 (Fimage_refresh): New function.
22997
229982007-05-20 Jan Djärv <jan.h.d@swipnet.se>
22999
23000 * Makefile.in: Move GPM check outside HAVE_X_WINDOWS.
23001
230022007-05-20 Nick Roberts <nickrob@snap.net.nz>
23003
23004 * config.in, keyboard.c, Makefile.in, sysdep.c, term.c,
23005 * termhooks.h: Use HAVE_GPM instead of HAVE_GPM_H.
23006
230072007-05-20 Nick Roberts <nickrob@snap.net.nz>
23008
23009 * keyboard.c (make_lispy_event): Make case GPM_CLICK_EVENT
23010 conditional on [HAVE_GPM_H].
23011
230122007-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
23013
23014 * syntax.c (skip_chars): Update syntax-table only after we checked that
23015 the new location is valid.
23016
230172007-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23018
23019 * macterm.c (x_calc_absolute_position): Add BLOCK_INPUT around
23020 mac_get_window_bounds.
23021
230222007-05-20 Nick Roberts <nickrob@snap.net.nz>
23023
23024 * Makefile.in (LIBGPM): Allow it to be set from configure.
23025 If set then link Emacs with it.
23026
23027 * config.in: Regenerate.
23028
23029 * lisp.h (add_gpm_wait_descriptor, delete_gpm_wait_descriptor):
23030 New externs.
23031
23032 * termhooks.h [HAVE_GPM_H] (enum event_kind): Add GPM_CLICK_EVENT.
23033 Include gpm.h.
23034 (handle_one_term_event, term_gpm): New externs.
23035
23036 * sysdep.c [HAVE_GPM_H] (init_sys_modes): Make gpm_fd nonblocking
23037 and allow it to be interrupted by SIGIO.
23038
23039 * process.c (gpm_wait_mask, max_gpm_desc): New variables.
23040 (wait_reading_process_output): Wait on gpm_fd too.
23041 (add_gpm_wait_descriptor, delete_gpm_wait_descriptor)): New functions.
23042 (add_gpm_wait_descriptor_called_flag): New variable.
23043 (delete_keyboard_wait_descriptor): Check gpm_wait_mask.
23044
23045 * keyboard.c [HAVE_GPM_H] (Qmouse_fixup_help_message)
23046 (make_lispy_movement, tracking_off, Ftrack_mouse, some_mouse_moved)
23047 (show_help_echo, readable_events, kbd_buffer_get_event, init_keyboard):
23048 Extend HAVE_MOUSE ifdefs to HAVE_GPM_H.
23049 (make_lispy_event): Add case GPM_CLICK_EVENT.
23050 (read_avail_input): Handle mouse input.
23051
23052 * term.c (write_glyphs_with_face): New function.
23053 [HAVE_GPM_H]: Include buffer.h, sys/fcntl.h.
23054 (mouse_face_beg_row, mouse_face_beg_col, mouse_face_end_row)
23055 (mouse_face_end_col, mouse_face_past_end, mouse_face_window)
23056 (mouse_face_face_id, term_gpm, pos_x, pos_y)
23057 (last_mouse_x, last_mouse_y): New variables.
23058 (term_show_mouse_face, term_clear_mouse_face, fast_find_position)
23059 (term_mouse_highlight, term_mouse_movement, term_mouse_position)
23060 (term_mouse_click, handle_one_term_event, Fterm_open_connection)
23061 (Fterm_close_connection): New functions.
23062 (term_init): Initialise mouse_face_window.
23063
230642007-05-19 Chong Yidong <cyd@stupidchicken.com>
23065
23066 * xdisp.c (redisplay_window): If first window line is a
23067 continuation line, recompute the new window start instead of
23068 recentering.
23069
230702007-05-18 Glenn Morris <rgm@gnu.org>
23071
23072 * m/alpha.h (ORDINARY_LINK): No longer define on OpenBSD.
23073 Suggested by Alfred M. Szmidt <ams@gnu.org>.
23074
230752007-05-17 Glenn Morris <rgm@gnu.org>
23076
23077 * m/macppc.h (ORDINARY_LINK): No longer define on OpenBSD.
23078
230792007-05-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23080
23081 * macterm.c [USE_CARBON_EVENTS] (mac_convert_event_ref): Also convert
23082 dead key repeat and up events.
23083
230842007-05-14 Chong Yidong <cyd@stupidchicken.com>
23085
23086 * image.c (pbm_load): Check image size for monochrome pbm.
23087
230882007-05-13 Chong Yidong <cyd@stupidchicken.com>
23089
23090 * xterm.c (XTread_socket): Revert last change.
23091
230922007-05-12 Chong Yidong <cyd@stupidchicken.com>
23093
23094 * image.c (pbm_load): Correctly check image size for greyscale pbm.
23095
23096 * xterm.c (XTread_socket): Yet Another Uncaught X Error Crash (YAUXEC).
23097
230982007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
23099
23100 * editfns.c (Ftranspose_regions): Yet another int/Lisp_Object
23101 mixup (YAILOM).
23102
231032007-05-07 Andreas Schwab <schwab@suse.de>
23104
23105 * keymap.c (Flookup_key): Fix typo in last change.
23106
231072007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
23108
23109 * keymap.c (Fdefine_key, Flookup_key): Only do the 0x80->meta_modifier
23110 mapping for unibyte strings.
23111
231122007-05-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23113
23114 * macmenu.c (mac_dialog_show): Apply 2007-04-27 change for xmenu.c.
23115 (Fx_popup_dialog) [MAC_OSX]: Likewise.
23116
231172007-04-29 Richard Stallman <rms@gnu.org>
23118
23119 * insdel.c (replace_range): For undo, record insertion first.
23120
231212007-04-29 Andreas Schwab <schwab@suse.de>
23122
23123 * lisp.h (VECSIZE): Use OFFSETOF.
23124
231252007-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23126
23127 * xdisp.c (try_window_reusing_current_matrix): Fix number of
23128 disabled lines.
23129
231302007-04-28 Richard Stallman <rms@gnu.org>
23131
23132 * lread.c (read_escape): In a string, \s is always space.
23133
231342007-04-27 Jan Djärv <jan.h.d@swipnet.se>
23135
23136 * xmenu.c (xdialog_show): Call Fredisplay before showing the dialog.
23137
23138 * gtkutil.c (xg_update_menubar, create_menus): Create empty
23139 submenu for menu bar items.
23140
23141See ChangeLog.10 for earlier changes.
23142
23143;; Local Variables:
23144;; coding: utf-8
23145;; add-log-time-zone-rule: t
aac0c6e3
MR
23146;; End:
23147
e3eb1dae 23148 Copyright (C) 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
aac0c6e3
MR
23149
23150 This file is part of GNU Emacs.
23151
23152 GNU Emacs is free software: you can redistribute it and/or modify
23153 it under the terms of the GNU General Public License as published by
23154 the Free Software Foundation, either version 3 of the License, or
23155 (at your option) any later version.
23156
23157 GNU Emacs is distributed in the hope that it will be useful,
23158 but WITHOUT ANY WARRANTY; without even the implied warranty of
23159 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
23160 GNU General Public License for more details.
23161
23162 You should have received a copy of the GNU General Public License
23163 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
23164
23165;; arch-tag: dfb6ad96-1550-4905-9e53-d2059ee84c40