Remove obsolete pre-unicode2 macros.
[bpt/emacs.git] / src / ChangeLog
CommitLineData
aa3830c4
JB
12010-06-03 Juanma Barranquero <lekktu@gmail.com>
2
3 Remove obsolete pre-unicode2 macros.
4 * character.h (MULTIBYTE_FORM_LENGTH, PARSE_MULTIBYTE_SEQ): Remove.
5 * composite.c (composition_reseat_it):
6 * data.c (Faset):
7 * fns.c (Ffillarray):
8 * regex.c (re_search_2): Use BYTES_BY_CHAR_HEAD.
9 [!emacs] (BYTES_BY_CHAR_HEAD): Define instead of MULTIBYTE_FORM_LENGTH.
10
d234d13e
JL
112010-06-03 Juri Linkov <juri@jurta.org>
12
13 * buffer.c (Fother_buffer): Add CHECK_FRAME.
14 (Fswitch_to_buffer): Remove unused variable `err'.
15
0d4bcf4d
GM
162010-06-03 Glenn Morris <rgm@gnu.org>
17
e23dc1e2
GM
18 * m/template.h (NO_SOCK_SIGIO): Remove, no longer used.
19
05b09564
GM
20 * m/hp800.h (alloca) [__NetBSD__ && __GNUC__]: No need to define it,
21 now that AH_BOTTOM does it.
22
824e2978
GM
23 * m/hp800.h (HAVE_ALLOCA):
24 * m/ibms390x.h (HAVE_ALLOCA): Do not define, no longer needed.
25
0d4bcf4d
GM
26 * m/ia64.h, s/gnu-linux.h, s/gnu.h, s/netbsd.h, s/usg5-4.h:
27 Remove NOT_C_CODE tests, it is always true now.
28
c55d2abf
DN
292010-06-02 Dan Nicolaescu <dann@ics.uci.edu>
30
08a494a3
DN
31 Fix config.h includes.
32 * xsettings.c:
33 * xgselect.c:
34 * nsterm.m:
35 * nsselect.m:
36 * nsimage.m:
37 * nsfont.m:
38 * nsfns.m:
39 * dbusbind.c: Use #include <config.h> instead of "config.h" as all
40 other files do.
41
75934b1d
DN
42 * gmalloc.c: Remove BROKEN_PROTOTYPES reference, unused.
43
9f32a766
DN
44 * s/sol2-6.h: Remove obsolete comments.
45
c55d2abf
DN
46 Remove unnecessary alloca.h includes.
47 * keymap.c: Do not include alloca.h, config.h does that.
48 * sysdep.c: Likewise. Do not define fwrite, not used.
49
06ac62b4
SM
502010-06-01 Stefan Monnier <monnier@iro.umontreal.ca>
51
52 * sysdep.c (child_setup_tty): Move the non-canonical initialization to
53 the HAVE_TERMIO where it belongs (bug#6149).
54
1ab8293c
SM
552010-05-31 Stefan Monnier <monnier@iro.umontreal.ca>
56
57 * keymap.c (Fwhere_is_internal): Fix handling of remapping (in thread
58 of bug#6305).
59
6dcfd253
EZ
602010-05-30 Eli Zaretskii <eliz@gnu.org>
61
62 * bidi.c (bidi_move_to_visually_next): Make sure the sentinel
63 state is always cached (bug#6306).
64
6d26bbb2
EZ
652010-05-29 Eli Zaretskii <eliz@gnu.org>
66
06fa4a23
EZ
67 Fix cursor motion in bidi-reordered continued lines.
68 * xdisp.c (try_cursor_movement): Backup to non-continuation line
69 only after finding point's row. Fix the logic. Rewrite the loop
6d26bbb2
EZ
70 over continuation lines in bidi-reordered buffers. Return
71 CURSOR_MOVEMENT_MUST_SCROLL upon failure to find a suitable row,
72 rather than CURSOR_MOVEMENT_CANNOT_BE_USED.
73
f5783df3
MA
742010-05-28 Michael Albinus <michael.albinus@gmx.de>
75
76 * fileio.c (Fdelete_file): Pass TRASH arg to handler call.
77
7d56b2dd
KH
782010-05-28 Kenichi Handa <handa@m17n.org>
79
80 * font.c (font_delete_unmatched): Check Vface_ignored_fonts.
81 Don't sheck SPEC if it is nil.
82 (font_list_entities): Call font_delete_unmatched if
b925d231 83 Vface_ignored_fonts is non-nil. (Bug#6287)
7d56b2dd 84
e58d4ff7
GM
852010-05-28 Glenn Morris <rgm@gnu.org>
86
87 * Makefile.in (LIBES): Remove $LOADLIBES, it is never set.
88
f1a5d776
CY
892010-05-27 Chong Yidong <cyd@stupidchicken.com>
90
91 * fileio.c (Fdelete_file): Change meaning of optional arg to mean
92 whether to trash.
93 (internal_delete_file, Frename_file): Callers changed.
94 (delete_by_moving_to_trash): Doc fix.
95 (Fdelete_directory_internal): Don't move to trash.
96
97 * callproc.c (delete_temp_file):
98 * buffer.c (Fkill_buffer): Callers changed.
99
100 * lisp.h: Update prototype.
101
f44a59e6
CY
1022010-05-27 Chong Yidong <cyd@stupidchicken.com>
103
104 * xdisp.c (redisplay_window): After redisplay, check if point is
105 still valid before setting it (Bug#6177).
106
81ac4f35
GM
1072010-05-27 Glenn Morris <rgm@gnu.org>
108
109 * Makefile.in, autodeps.mk, deps.mk, ns.mk:
110 Convert comments to Makefile format.
111
112 * Makefile.in (bootstrap-clean): No more Makefile.c.
113
ccd89fb3
GM
1142010-05-26 Glenn Morris <rgm@gnu.org>
115
90278cb6
GM
116 * Makefile.in (YMF_PASS_LDFLAGS): Remove.
117 (temacs${EXEEXT}): Use PRE_EDIT_LDFLAGS, POST_EDIT_LDFLAGS.
118
ccd89fb3
GM
119 * Makefile.in (NS_IMPL_GNUSTEP_INC, NS_IMPL_GNUSTEP_TEMACS_LDFLAGS):
120 Remove.
121 (TEMACS_LDFLAGS): Do not use NS_IMPL_GNUSTEP_TEMACS_LDFLAGS.
122
b7050583
KH
1232010-05-26 Kenichi Handa <handa@m17n.org>
124
125 * composite.c (composition_compute_stop_pos): Fix condition for
126 backward scanning.
127
e5458003
GM
1282010-05-25 Glenn Morris <rgm@gnu.org>
129
c345fe90
GM
130 * Makefile.in (@NS_IMPL_GNUSTEP_INC@, NS_IMPL_GNUSTEP_TEMACS_LDFLAGS):
131 Move before TEMACS_LDFLAGS.
132 (TEMACS_LDFLAGS): Use $NS_IMPL_GNUSTEP_TEMACS_LDFLAGS.
133 (temacs${EXEEXT}): Do not use $NS_IMPL_GNUSTEP_TEMACS_LDFLAGS.
134
2e0689ab
GM
135 * Makefile.in (NOT_C_CODE): No longer define.
136 (config.h): No longer include.
137
8009a5e8
GM
138 * Makefile.in (LD_SWITCH_SYSTEM_TEMACS): Move definition after some
139 variables it may reference.
140
e5458003
GM
141 * Makefile.in (LD_SWITCH_SYSTEM_EXTRA): Remove.
142 (TEMACS_LDFLAGS): Remove LD_SWITCH_SYSTEM_EXTRA.
143
10f72a37
KH
1442010-05-25 Kenichi Handa <handa@m17n.org>
145
146 * dispextern.h (struct composition_it): New members rule_idx and
147 charpos.
148
149 * xdisp.c (set_iterator_to_next): While scanning backward, assume
150 that the character positions of IT point the last character of the
151 current grapheme cluster.
152 (next_element_from_composition): Don't change character positions
153 of IT.
154 (append_composite_glyph): Set glyph->charpos to
155 it->cmp_it.charpos.
156
157 * composite.c (autocmp_chars): Change the first argument to RULE,
158 and try composition with RULE only.
159 (composition_compute_stop_pos): Record the index number of the
160 composition rule in CMP_IT->rule_idx.
161 (composition_reseat_it): Call autocmp_chars repeatedly until the
162 correct rule of the composition is found.
163 (composition_update_it): Set CMP_IT->charpos. Assume the CHARPOS
164 is at the last character of the current grapheme cluster when
165 CMP_IT->reversed_p is nonzero.
166
171eda53 1672010-05-24 Stefan Monnier <monnier@iro.umontreal.ca>
f5b416d2 168
171eda53
SM
169 * editfns.c (Fbyte_to_string): New function.
170
66a9f7f4
SM
1712010-05-24 Stefan Monnier <monnier@iro.umontreal.ca>
172
173 * process.c (Fmake_network_process): Set :host to nil if it's not used.
174 Suggested by Masatake YAMATO <yamato@redhat.com>.
175
d8c315d1
EZ
1762010-05-23 Eli Zaretskii <eliz@gnu.org>
177
171eda53 178 * dispextern.h (init_iterator): Sync prototype with changed definition.
d8c315d1 179
f5b416d2 1802010-05-20 enami tsugutomo <tsugutomo.enami@jp.sony.com>
181
182 * s/netbsd.h: If terminfo is found, use it in preference to
183 termcap. (Bug#6190) [Backport from trunk]
184
0416466c
EZ
1852010-05-19 Eli Zaretskii <eliz@gnu.org>
186
11117830 187 Redesign and reimplement bidi-aware edge positions of glyph rows.
d36fe237
EZ
188
189 * dispextern.h (struct glyph_row): New members minpos and maxpos.
190 (MATRIX_ROW_START_CHARPOS, MATRIX_ROW_START_BYTEPOS)
191 (MATRIX_ROW_END_CHARPOS, MATRIX_ROW_END_BYTEPOS): Reference minpos
192 and maxpos members instead of start.pos and end.pos, respectively.
193
194 * xdisp.c (display_line): Compare IT_CHARPOS with the position in
195 row->start.pos, rather than with MATRIX_ROW_START_CHARPOS.
196 (cursor_row_p): Use row->end.pos rather than MATRIX_ROW_END_CHARPOS.
66a9f7f4
SM
197 (try_window_reusing_current_matrix, try_window_id):
198 Use ROW->minpos rather than ROW->start.pos.
d36fe237
EZ
199 (init_from_display_pos, init_iterator): Use EMACS_INT for
200 character and byte positions.
66a9f7f4 201 (find_row_edges): Rename from find_row_end. Accept additional
d36fe237
EZ
202 arguments for minimum and maximum buffer positions seen by
203 display_line for this row. Don't use iterator to find the
204 position following the maximum one; instead, increment the
11117830
EZ
205 position found by display_line directly. Fix logic; eol_pos
206 should be tested before the rest. Handle the case of characters
207 delivered from display vector (bug#6036). Fix tests related to
208 it->method. Handle the truncated_on_right_p rows.
209 (RECORD_MAX_MIN_POS): New macro.
210 (display_line): Use it to record the minimum and maximum buffer
211 positions for glyphs in the row being assembled. Record the
212 position of the newline that terminates the line. If word wrap is
213 in effect, restore minimum and maximum positions seen up to the
214 wrap point, when iterator returns to it.
215 (try_window_reusing_current_matrix): Give up if in bidi-reordered
216 row and cursor not already at point. Restore original pre-bidi
217 code for unidirectional buffers.
d36fe237
EZ
218
219 * dispnew.c (increment_row_positions, check_matrix_invariants):
220 Increment and check row->start.pos and row->end.pos, in addition
221 to MATRIX_ROW_START_CHARPOS and MATRIX_ROW_END_CHARPOS.
222
11117830
EZ
223 * .gdbinit (prowlims): Display row->minpos and row->maxpos.
224 Display truncated_on_left_p and truncated_on_right_p flags.
225 Formatting fixes.
226 (pmtxrows): Display the ordinal number of each row. Don't display
227 rows beyond the last one.
228
229 * bidi.c (bidi_cache_iterator_state): Don't zero out new_paragraph:
230 it is not copied by bidi_copy_it.
231
6e83d800
EZ
2322010-05-22 Eli Zaretskii <eliz@gnu.org>
233
234 * w32.c (sys_write): Break writes into chunks smaller than 32MB.
235 (Bug#6237)
236
110683ad
CY
2372010-05-22 Chong Yidong <cyd@stupidchicken.com>
238
239 * image.c (Fimage_flush): Rename from image-refresh.
240
98fe5161
CY
2412010-05-21 Chong Yidong <cyd@stupidchicken.com>
242
243 * xdisp.c (redisplay_internal): Clear caches even if redisplaying
244 just one window.
245
246 * image.c (Vimage_cache_eviction_delay): Decrease to 300.
247 (clear_image_cache): If the number of cached images is unusually
248 large, decrease the cache eviction delay (Bug#6230).
249
e8752c66
GM
2502010-05-21 Glenn Morris <rgm@gnu.org>
251
66dbf213
GM
252 * Makefile.in (${ns_appdir}, ${ns_appbindir}Emacs, ns-app):
253 Move these rules to ns.mk.
254 * ns.mk: New file.
255
04384b2d
GM
256 * Makefile.in (../src/$(OLDXMENU), $(OLDXMENU)): Always define rules.
257
e8752c66
GM
258 * Makefile.in (CANNOT_DUMP): New, set by configure.
259 (emacs${EXEEXT}, bootstrap-emacs${EXEEXT}): Use $CANNOT_DUMP.
260
2e2bbddb
JL
2612010-05-20 Juri Linkov <juri@jurta.org>
262
263 * fileio.c (Fdelete_file): Change interative spec to use
264 `read-file-name' like in `find-file-read-args' where the default
265 value is `default-directory' instead of `buffer-file-name'.
266 http://lists.gnu.org/archive/html/emacs-devel/2010-05/msg00533.html
267
31c4aaf6
KR
2682010-05-20 Kevin Ryde <user42@zip.com.au>
269
270 * keyboard.c (Vlast_command, Vkeyboard_translate_table)
271 (Voverriding_terminal_local_map, Vsystem_key_alist)
272 (Vlocal_function_key_map): Fix manual link in docstring (Bug#6224).
273
9d5cf9b6
GM
2742010-05-20 Glenn Morris <rgm@gnu.org>
275
276 * Makefile.in (DEPDIR): New constant.
277 (DEPFLAGS): Set with configure, not cpp.
278 (MKDEPDIR): New, set by configure.
279 (.c.o, .m.o, ecrt0.o): Use $MKDEPDIR.
280 (clean): Use $DEPDIR.
281 (deps_frag): Include from configure.
282 Move static/dynamic dependency stuff to deps.mk/autodeps.mk.
283 * deps.mk, autodeps.mk: New files, extracted from Makefile.in.
284
ead6f8f5
EZ
285 * bidi.c (bidi_cache_shrink, bidi_cache_iterator_state): Fix
286 reallocation of the cache. (Bug#6210)
287
7f34aec3
GM
2882010-05-19 Glenn Morris <rgm@gnu.org>
289
d494e8f2
GM
290 * s/msdos.h (ORDINARY_LINK): Move to sed2v2.inp.
291
c1d0dcfd
GM
292 * Makefile.in (LD, YMF_PASS_LDFLAGS): Set with configure, not cpp.
293 (GNULIB_VAR): Remove.
294 (LIBES): Use LIB_GCC instead of GNULIB_VAR.
295
296 * m/ibms390x.h (LINKER):
297 * m/macppc.h (LINKER) [GNU_LINUX]:
298 * s/aix4-2.h (ORDINARY_LINK):
299 * s/cygwin.h (LINKER):
300 * s/darwin.h (ORDINARY_LINK):
301 * s/gnu.h (ORDINARY_LINK):
302 * s/netbsd.h (LINKER):
303 * s/usg5-4.h (ORDINARY_LINK):
304 Move to configure.
305
7f34aec3
GM
306 * s/aix4-2.h (LINKER): Remove; this file sets ORDINARY_LINK.
307
754790b6
CY
3082010-05-18 Chong Yidong <cyd@stupidchicken.com>
309
310 * character.c (Fstring, Funibyte_string): Use SAFE_ALLOCA to
311 prevent stack overflow if number of arguments is too large
312 (Bug#6214).
313
161e44d1
JB
3142010-05-18 Juanma Barranquero <lekktu@gmail.com>
315
316 * charset.c (load_charset_map_from_file): Don't call close after fclose.
317
be4ff9da
GM
3182010-05-18 Glenn Morris <rgm@gnu.org>
319
9539dc5d
GM
320 * s/gnu-linux.h: Combine two conditionals.
321
322 * Makefile.in (otherobj): Include $(VMLIMIT_OBJ) separately from
6665f4c5
GM
323 $(POST_ALLOC_OBJ).
324
40dc6bf4
GM
325 * Makefile.in (RALLOC_OBJ): New, set by configure.
326 (rallocobj): Replace with the previous variable.
327 (otherobj): Use $RALLOC_OBJ.
328
329 * s/gnu.h (REL_ALLOC) [DOUG_LEA_MALLOC]:
330 * s/gnu-linux.h (REL_ALLOC) [DOUG_LEA_MALLOC]: Move undef to configure.
331
be4ff9da
GM
332 * Makefile.in (GMALLOC_OBJ, VMLIMIT_OBJ): New, set by configure.
333 (gmallocobj, vmlimitobj): Replace with previous two variables.
334 (otherobj): Use $GMALLOC_OBJ, $VMLIMIT_OBJ.
335
16455a85
GM
3362010-05-17 Glenn Morris <rgm@gnu.org>
337
338 * Makefile.in (OLDXMENU_DEPS): New, set by configure.
339 (stamp-oldxmenu): Use $OLDXMENU_DEPS.
340
5fdb7468
GM
3412010-05-16 Glenn Morris <rgm@gnu.org>
342
7ca1f3f9
GM
343 * Makefile.in (${ns_appbindir}Emacs, ns-app): Always define these rules.
344
7541dad5
GM
345 * Makefile.in (clean): Get rid of HAVE_NS conditional.
346
da53fab9
GM
347 * Makefile.in (ns_appdir, ns_appbindir): Now configure adds the
348 trailing "/".
349
b02a6645
GM
350 * Makefile.in (TEMACS_LDFLAGS2): New, set by configure.
351 (temacs${EXEEXT}): Combine the NS_IMPL_GNUSTEP case with the default.
352
8877ca0f
GM
353 * Makefile.in (GNUSTEP_SYSTEM_LIBRARIES): Remove, unused.
354 (NS_IMPL_GNUSTEP_TEMACS_LDFLAGS): New, set by configure.
355 (LD) [NS_IMPL_GNUSTEP]: Set to $(CC) -rdynamic.
356 (temacs${EXEEXT}): Remove $LOCALCPP, never defined or referenced.
357 Make most of the NS_IMPL_GNUSTEP case the same as the default case.
358
5fdb7468
GM
359 * Makefile.in (temacs${EXEEXT}) [!NS_IMPL_GNUSTEP]:
360 Remove ${STARTFLAGS}, nothing ever sets it.
361
95adb4b1
DN
3622010-05-16 Dan Nicolaescu <dann@ics.uci.edu>
363
364 * m/ia64.h (UNEXEC): Remove, set in s/*.h.
365
676b6304
GM
3662010-05-16 Glenn Morris <rgm@gnu.org>
367
9beab9ce
GM
368 * Makefile.in (LIBX_BASE): Always define.
369
8a95f0e7
GM
370 * Makefile.in (LIBX_OTHER): Move out of cpp section.
371
676b6304
GM
372 * Makefile.in (LIBXT): Always define.
373
6e546d18
GM
3742010-05-15 Glenn Morris <rgm@gnu.org>
375
4235ca47 376 * Makefile.in (OLDXMENU, LIBXMENU, LIBX_OTHER): Always define.
02d4ac0e 377
6e546d18
GM
378 * Makefile.in (FONT_DRIVERS): Remove, replace with $FONT_OBJ.
379 (obj, SOME_MACHINE_OBJECTS): Use $FONT_OBJ.
380
8c5ff6dd
KR
3812010-05-15 Ken Raeburn <raeburn@raeburn.org>
382
560bb7ae 383 * lisp.h (XFLOAT_DATA): Use "0?x:x" to generate an rvalue. (Bug#5916)
52766425
KR
384 (LISP_MAKE_RVALUE) [!USE_LISP_UNION_TYPE && !__GNUC__]: Likewise.
385
8b4eb796
KR
386 * emacs.c (main): Initialize initial-environment and
387 process-environment before generating from env, not after.
388
8c5ff6dd
KR
389 Handle --version reasonably in CANNOT_DUMP configuration.
390 * emacs.c (emacs_version, emacs_copyright): New string variables.
391 (Vemacs_version, Vemacs_copyright): New Lisp_Object variables.
392 (syms_of_emacs): Defvar them, and initialize them from the C
393 string variables.
394 (main): If initialization hasn't been done, print initial version
395 info from the C strings, instead of starting an interactive session.
396
dbd3f723
EZ
3972010-05-15 Eli Zaretskii <eliz@gnu.org>
398
d20e1419
EZ
399 * bidi.c (bidi_paragraph_init): Don't leave alone garbage values
400 of bidi_it->paragraph_dir. Call bidi_initialize if needed.
2e9abc3d
EZ
401 (bidi_paragraph_init): Remove redundant assertion that we are at
402 the beginning of a line after call to bidi_find_paragraph_start.
d20e1419
EZ
403
404 * xdisp.c (Fcurrent_bidi_paragraph_direction): New function.
405 (syms_of_xdisp): Defsubr it.
406
d36fe237
EZ
407 * cmds.c (Fforward_char, Fbackward_char): Doc fix.
408
dbd3f723
EZ
409 * Makefile.in: Fix MSDOS-related comments.
410
02be533b
GM
4112010-05-15 Glenn Morris <rgm@gnu.org>
412
1a82cca9
GM
413 * Makefile.in (OLDXMENU_TARGET): New, set by configure.
414 (really-lwlib, really-oldXMenu): Always define.
415 ($OLDXMENU): Depend on $OLDXMENU_TARGET.
416
3df7b338
GM
417 * Makefile.in: Simplify cpp conditional.
418
2b5f541b
GM
419 * Makefile.in (${ns_appdir}): Simplify using umask.
420
02be533b
GM
421 * Makefile.in (${ns_appdir}): Remove references to CVS-related files.
422
4e2db1fe
SM
4232010-05-14 Stefan Monnier <monnier@iro.umontreal.ca>
424
425 * eval.c (specbind): Remove left-over duplicate test.
426 Disallow let-binding frame-local vars. Add comment.
427
4b292a22
EZ
4282010-05-14 Eli Zaretskii <eliz@gnu.org>
429
2fe72643 430 Make the cache of bidi iterator states dynamically allocated.
1edbd309 431 * bidi.c (bidi_cache_shrink): New function.
2fe72643
EZ
432 (bidi_init_it): Call it.
433 (bidi_cache_iterator_state): Enlarge the cache if needed.
434
4e2db1fe 435 * bidi.c (bidi_move_to_visually_next): Rename from
4b292a22
EZ
436 bidi_get_next_char_visually. All callers changed.
437
82ebc97b
KH
4382010-05-14 Kenichi Handa <handa@m17n.org>
439
440 * dispextern.h (struct composition_it): New member reversed_p.
441
442 * composite.c (composition_compute_stop_pos): Search backward if
443 ENDPOS < CHARPOS.
444 (composition_reseat_it): Handle the case that ENDPOS < CHARPOS.
445 Set CMP_IT->reversed_p.
b4b6e17e 446 (composition_update_it): Pay attention to CMP_IT->reversed_p.
82ebc97b 447
4e2db1fe
SM
448 * xdisp.c (set_iterator_to_next):
449 Call composition_compute_stop_pos with negative ENDPOS if we are
82ebc97b
KH
450 scanning backward. Call composition_compute_stop_pos if scan
451 direction is changed.
452 (next_element_from_buffer): Call composition_compute_stop_pos with
453 negative ENDPOS if we are scanning backward.
454 (next_element_from_composition): Pay attention to
455 IT->cmp_it.reversed_p.
456
0e5d7800
KH
4572010-05-14 Kenichi Handa <handa@m17n.org>
458
560bb7ae 459 * font.c (font_range): Return the range for the font found at first.
0e5d7800 460
cb027b32
GM
4612010-05-14 Glenn Morris <rgm@gnu.org>
462
177b0288
GM
463 * Makefile.in (ns_appdir, ns_appbindir, ns_appsrc): Always define.
464
fbc00890
GM
465 * Makefile.in (mktime, X11, register): Move undefs to configure.
466
f14d1dfd
GM
467 * Makefile.in (MSDOS_OBJ): Default to empty, let msdos scripts set it.
468 (MSDOS_X_OBJ): New variable.
469 (MSDOS_SUPPORT_REAL): New constant.
470 (MSDOS_SUPPORT): Set as a variable, not with cpp.
471 (obj): Use MSDOS_X_OBJ.
472 (lisp): Use MSDOS_SUPPORT as a variable.
473
11842bd8
GM
474 * Makefile.in (REAL_MOUSE_SUPPORT): New constant.
475 (GPM_MOUSE_SUPPORT): Now it's a constant.
476 (MOUSE_SUPPORT, TOOLTIP_SUPPORT, WINDOW_SUPPORT): Set with configure,
477 not cpp.
478
489d31a4 479 * Makefile.in (@NS_IMPL_GNUSTEP_INC@): Use in place of #ifdef.
845612ac 480 (ns_appresdir): Remove, unused.
e20f1f07 481
489d31a4
GM
482 * Makefile.in (SHELL): Move outside cpp section.
483
cb027b32
GM
484 * s/netbsd.h (AMPERSAND_FULL_NAME): Remove (defined in AH_BOTTOM).
485
5a903aa9
GM
4862010-05-13 Glenn Morris <rgm@gnu.org>
487
3369c79f
GM
488 * Makefile.in (FONT_DRIVERS): Place with other HAVE_X_WINDOWS stuff.
489 (TOOLTIP_SUPPORT): Place with other HAVE_WINDOW_SYSTEM stuff.
490
d5e982a6
GM
491 * Makefile.in (FONT_DRIVERS): If HAVE_X_WINDOWS is defined,
492 HAVE_WINDOW_SYSTEM must be too.
493
6192e163
GM
494 * Makefile.in (WINNT_SUPPORT): Remove, nt build does not use this file.
495 (lisp): Remove WINNT_SUPPORT.
496
472c5d6b
GM
497 * Makefile.in (OLDXMENU, LIBXMENU) [!HAVE_MENUS]:
498 Let configure set these variables (to empty) in this case as well.
499
0116466b
GM
500 * Makefile.in (LD_SWITCH_X_SITE): Define as a variable, not via cpp.
501 (LIBX_BASE): Use $LD_SWITCH_X_SITE.
502
5a903aa9
GM
503 * Makefile.in (C_SWITCH_X_SYSTEM, C_SWITCH_X_SITE, LIB_STANDARD)
504 (LIB_MATH, FONTCONFIG_CFLAGS, FONTCONFIG_LIBS, FREETYPE_CFLAGS)
505 (FREETYPE_LIBS, LIBOTF_CFLAGS, LIBOTF_LIBS, M17N_FLT_CFLAGS)
506 (M17N_FLT_LIBS, GNU_OBJC_CFLAGS, GNUSTEP_SYSTEM_LIBRARIES, LIBGPM)
507 (LIBRESOLV, UNEXEC_OBJ): For clarity, define variables to hold
c0a2b70a 508 the values output by configure.
5a903aa9
GM
509 (ALL_CFLAGS, obj, LIBES, temacs${EXEEXT}): Use the above variables.
510
1a0d7c06
GM
5112010-05-12 Glenn Morris <rgm@gnu.org>
512
b5457f14
GM
513 * Makefile.in (YMF_PASS_LDFLAGS, LD, LINKER): Simplify the logic.
514 (LINKER_WAS_SPECIFIED): Remove.
515
1a0d7c06
GM
516 * Makefile.in (LIB_GCC): Set using configure, not cpp.
517 (GNULIB_VAR) [!ORDINARY_LINK]: Always set to $LIB_GCC.
518 * m/arm.h (LIB_GCC) [GNU_LINUX]:
519 * s/cygwin.h (LIB_GCC):
520 * s/freebsd.h (LIB_GCC):
521 * s/gnu-linux.h (LIB_GCC):
522 * s/msdos.h (LIB_GCC):
523 * s/netbsd.h (LIB_GCC):
524 Move to configure.
525
3ffd4615 5262010-05-11 Karel Klic <kklic@redhat.com>
c90ca7b7
KH
527
528 * ftfont.c: Fix incorrect parentheses of #if condition for
529 definining M17N_FLT_USE_NEW_FEATURE.
530
acddf8ae
GM
5312010-05-11 Glenn Morris <rgm@gnu.org>
532
533 * Makefile.in (LIBS_SYSTEM) [MSDOS]: Do not reset.
534 * s/msdos.h (MSDOS_LIBS_SYSTEM): Remove.
535
ae5e04fa
EZ
5362010-05-10 Eli Zaretskii <eliz@gnu.org>
537
538 * xdisp.c (init_iterator): Don't turn on bidi reordering in
539 unibyte buffers. See
540 http://lists.gnu.org/archive/html/emacs-devel/2010-05/msg00263.html.
541
7490175b
GM
5422010-05-10 Glenn Morris <rgm@gnu.org>
543
97efb629
GM
544 * Makefile.in (LIBS_SYSTEM): Set using configure, not cpp.
545 (LIBS_SYSTEM) [MSDOS]: Reset with MSDOS_LIBS_SYSTEM.
546 (LIBES): Use LIBS_SYSTEM as a variable.
547 * s/msdos.h (LIBS_SYSTEM): Rename to MSDOS_LIBS_SYSTEM. Always define.
548 * s/aix4-2.h (LIBS_SYSTEM):
549 * s/freebsd.h (LIBS_SYSTEM):
550 * s/hpux10-20.h (LIBS_SYSTEM):
551 * s/sol2-6.h (LIBS_SYSTEM):
552 * s/unixware.h (LIBS_SYSTEM):
553 Move to configure.
554
7490175b
GM
555 * s/aix4-2.h (MAIL_USE_LOCKF):
556 * s/bsd-common.h (MAIL_USE_FLOCK):
557 * s/darwin.h (MAIL_USE_FLOCK):
558 * s/gnu-linux.h (MAIL_USE_FLOCK):
559 * s/irix6-5.h (MAIL_USE_FLOCK):
560 * s/template.h (MAIL_USE_FLOCK):
561 Move to configure.
562
0235128c 5632010-05-08 Chong Yidong <cyd@stupidchicken.com>
61a808e8
CY
564
565 * Version 23.2 released.
566
0235128c 5672010-05-08 Andreas Schwab <schwab@linux-m68k.org>
5dcde606
AS
568
569 * composite.c (autocmp_chars): Save point as marker before calling
570 auto-composition-function (Bug#5984).
571
572 * lisp.h (restore_point_unwind): Add prototype.
573
574 * fileio.c (restore_point_unwind): Remove static attribute.
575
0235128c 5762010-05-08 Kenichi Handa <handa@m17n.org>
c4170e32
KH
577
578 * ftfont.c (M17N_FLT_USE_NEW_FEATURE): Define it if we can use the
579 new feature of libotf and m17n-flt.
0235128c
SM
580 (ftfont_check_otf) [M17N_FLT_USE_NEW_FEATURE]:
581 Call OTF_check_features even if no specific feature is given.
c4170e32
KH
582 (PACK_OTF_TAG) [M17N_FLT_USE_NEW_FEATURE]: New macro.
583 (ftfont_drive_otf) [M17N_FLT_USE_NEW_FEATURE]: Handle the case
584 that OUT is NULL. Use OTF_drive_gsub_with_log and
585 OTF_drive_gpos_with_log instead of OTF_drive_gsub and
586 OTF_drive_gpos.
587 (ftfont_try_otf) [M17N_FLT_USE_NEW_FEATURE]: New function.
0235128c
SM
588 (ftfont_shape_by_flt) [M17N_FLT_USE_NEW_FEATURE]:
589 Setup mflt_enable_new_feature and mflt_try_otf.
590
4721152c
J
5912010-05-08 Jan Djärv <jan.h.d@swipnet.se>
592
593 * xsettings.c (Ftool_bar_get_system_style): Correct comment.
594
595 * gtkutil.c (xg_pack_tool_bar): Change show_all to show for handle
596 box and toolbar (Bug #6139).
597 (xg_create_tool_bar): Remove comment (Bug #6139).
598 (xg_make_tool_item): Remove gtk_widget_show_all (Bug #6139).
599 (xg_show_toolbar_item): Add gtk_widget_show for weventbox (Bug #6139).
600
ee0a16cf
JB
6012010-05-08 Juanma Barranquero <lekktu@gmail.com>
602
603 * makefile.w32-in ($(BLD)/eval.$(O), $(BLD)/w32fns.$(O)):
604 Update dependencies.
605
96d79611
EZ
6062010-05-08 Eli Zaretskii <eliz@gnu.org>
607
608 * fringe.c (update_window_fringes): Set up truncation bitmaps for
609 R2L lines.
610
40c17879
GM
6112010-05-08 Glenn Morris <rgm@gnu.org>
612
7b42b29f
GM
613 * Makefile.in (THIS_IS_MAKEFILE): Remove, unused.
614
40c17879
GM
615 * Makefile.in (LIBS_TERMCAP): Set with configure, not cpp.
616 (TERMCAP_OBJ): New, set by configure, replacing termcapobj.
617 (termcapobj): Replace with TERMCAP_OBJ.
618 (otherobj): Use $TERMCAP_OBJ instead of $termcapobj.
619 (LIBES): Use LIBS_TERMCAP as a variable.
620
621 * s/freebsd.h (osreldate.h): No longer include, since this file
622 does not use __FreeBSD_version any more.
623
624 * s/aix4-2.h (TERMINFO):
625 * s/cygwin.h (TERMINFO):
626 * s/darwin.h (TERMINFO, LIBS_TERMCAP) [HAVE_LIBNCURSES]:
627 * s/freebsd.h (TERMINFO, LIBS_TERMCAP):
628 * s/gnu-linux.h (TERMINFO, LIBS_TERMCAP) [HAVE_LIBNCURSES]:
629 * s/gnu.h (TERMINFO, LIBS_TERMCAP) [HAVE_LIBNCURSES]:
630 * s/hpux10-20.h (TERMINFO, LIBS_TERMCAP):
631 * s/irix6-5.h (TERMINFO):
632 * s/netbsd.h (LIBS_TERMCAP):
633 * s/openbsd.h (TERMINFO, LIBS_TERMCAP):
634 * s/sol2-6.h (LIBS_TERMCAP) [!TERMINFO]:
635 * s/usg5-4.h (TERMINFO):
636 Move to configure.
637
94b612ad
SM
6382010-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
639
640 * eval.c (unbind_to): Don't unbind a local binding into the global
641 binding when the local binding disappeared. Inversely, don't unbind
642 a global binding into a newly created local binding.
643 * data.c (set_internal): Make its `buf' arg into a `where' arg so we
644 can specify the frame to use, when applicable. Adjust callers.
645
15e12598
VB
6462010-05-07 Vincent Belaïche <vincent.belaiche@gmail.com>
647 Stefan Monnier <monnier@iro.umontreal.ca>
648
649 * floatfns.c (Fisnan, Fcopysign, Ffrexp, Fldexp): New functions.
650
f724825e
EZ
6512010-05-07 Eli Zaretskii <eliz@gnu.org>
652
5cba3209
EZ
653 * w32fns.c: Include w32.h.
654 (Fw32_shell_execute): Decode the error message before passing it
655 to `error'. (Bug#6126)
656
d16bdfc3
EZ
657 * msdos.c (dos_set_window_size):
658 * w16select.c (Fx_selection_exists_p): Use `Fsymbol_value (foo)'
659 instead of `XSYMBOL (foo)->value'.
660
59d93e87
EZ
6612010-05-07 Eli Zaretskii <eliz@gnu.org>
662
9fdec8bc
EZ
663 Fix the MS-DOS build, broken by autoconfiscation.
664
665 * Makefile.in: Don't use Make-style comments past the "start of
666 cpp stuff" line.
667 (MSDOS_OBJ): Remove xmenu.o (it is now defined by XMENU_OBJ).
668
669 * s/msdos.h (UNEXEC): Don't define (@unexec@ in Makefile.in is
670 edited directly by msdos/sed1v2.inp).
f724825e 671
2f86b22b
GM
6722010-05-07 Glenn Morris <rgm@gnu.org>
673
674 * Makefile.in (LD_SWITCH_SYSTEM): Set with configure, not cpp.
675 (LD_SWITCH_SYSTEM_EXTRA): New variable, set by configure.
676 (TEMACS_LDFLAGS): Use $LD_SWITCH_SYSTEM and $LD_SWITCH_SYSTEM_EXTRA,
677 move out of cpp section.
678 * s/freebsd.h (LD_SWITCH_SYSTEM):
679 * s/gnu-linux.h (LD_SWITCH_SYSTEM):
680 * s/netbsd.h (LD_SWITCH_SYSTEM):
681 * s/openbsd.h (LD_SWITCH_SYSTEM): Move to configure.in.
682
49ebbd65
DN
6832010-05-07 Dan Nicolaescu <dann@ics.uci.edu>
684
685 Define LIB_STANDARD and START_FILES using autoconf.
686 * s/usg5-4.h (LIB_STANDARD):
687 * s/netbsd.h (START_FILES):
688 * s/irix6-5.h (LIB_STANDARD):
689 * s/hpux10-20.h (LIB_STANDARD, START_FILES):
690 * s/gnu-linux.h (START_FILES, LIB_STANDARD):
691 * s/freebsd.h (START_FILES):
692 * s/darwin.h (START_FILES):
693 * s/cygwin.h (START_FILES):
694 * s/aix4-2.h (LIB_STANDARD):
695 * m/ibmrs6000.h (START_FILES): Remove, move logic to configure.in.
696 * Makefile.in (STARTFILES): Rename to START_FILES, define using
697 autoconf, not cpp.
698
d43c06d6
DN
6992010-05-06 Dan Nicolaescu <dann@ics.uci.edu>
700
28823648
DN
701 Remove NEED_BSDTTY and NEED_UNISTD_H.
702 * s/hpux10-20.h (NEED_BSDTTY): Remove.
703 * s/aix4-2.h (NEED_UNISTD_H): Remove.
704 * systty.h: Simplify conditionals for including <sys/bsdtty.h>,
705 <sys/ptyio.h> and <unistd.h>.
706
aca00430
DN
707 * emacs.c (main): Remove NO_DIR_LIBRARY conditional, unused.
708
d43c06d6
DN
709 * Makefile.in (STARTFILES): Conditionally define to make the usage clear.
710 * s/gnu.h (START_FILES): Remove empty definition.
711
3e56b11d
JD
7122010-05-06 Jan Djärv <jan.h.d@swipnet.se>
713
714 * xterm.c (x_draw_image_relief): Move declaration of extra to beginning.
715
e3cf0cde
GM
7162010-05-06 Glenn Morris <rgm@gnu.org>
717
718 * Makefile.in (CPP, LN_S): Remove unused variables.
719
774b9a60
SM
7202010-05-05 Stefan Monnier <monnier@iro.umontreal.ca>
721
722 * syntax.c (Fchar_syntax): Check the arg is a character (bug#6080).
723
4ab92842
LM
7242010-05-05 Lawrence Mitchell <wence@gmx.li>
725
726 * m/sparc.h: Fix typo in earlier change.
727
178f2507
SM
7282010-05-04 Stefan Monnier <monnier@iro.umontreal.ca>
729
730 Misc tweaks.
731 * eval.c (Fdefvaralias): Remove unintended nested if.
732 (internal_condition_case_2, internal_condition_case_n): Use ANSI type.
733
80f00217 7342010-05-04 Bernhard Herzog <bh@intevation.de> (tiny change)
991be6d4
JD
735
736 * xsmfns.c (smc_save_yourself_CB): strlen(client_id) => strlen(cwd).
737
ef03a4e6
DN
7382010-05-04 Dan Nicolaescu <dann@ics.uci.edu>
739
58eb6cf0
DN
740 Remove BSD_PGRPS.
741 * s/bsd-common.h (BSD_PGRPS): Remove undef.
742 * s/gnu-linux.h (BSD_PGRPS): Remove.
743 * term.c (dissociate_if_controlling_tty):
744 * sysdep.c (narrow_foreground_group, widen_foreground_group)
745 (init_sys_modes, reset_sys_modes):
746 * emacs.c (main):
747 * callproc.c (Fcall_process, child_setup): Remove code depending
748 on BSD_PGRPS.
749
ef03a4e6
DN
750 Remove POSIX_SIGNALS.
751 * s/usg5-4.h (POSIX_SIGNALS):
752 * s/netbsd.h (POSIX_SIGNALS):
753 * s/msdos.h (POSIX_SIGNALS):
754 * s/ms-w32.h (POSIX_SIGNALS):
755 * s/hpux11.h (POSIX_SIGNALS):
756 * s/gnu.h (POSIX_SIGNALS):
757 * s/gnu-linux.h (POSIX_SIGNALS):
758 * s/freebsd.h (POSIX_SIGNALS):
759 * s/darwin.h (POSIX_SIGNALS):
760 * s/cygwin.h (POSIX_SIGNALS):
761 * s/aix4-2.h (POSIX_SIGNALS): Remove definition.
762 * s/unixware.h:
763 * s/sol2-6.h: Remove comments on POSIX_SIGNALS.
764 * process.c (create_process):
765 * syssignal.h:
766 * sysdep.c (wait_for_termination, init_signals):
767 * process.c (create_process):
768 * msdos.c: POSIX_SIGNALS is always defined on all platforms,
769 remove all code that assumes the contrary.
770
49628785
GM
7712010-05-04 Glenn Morris <rgm@gnu.org>
772
27a2cdfc
GM
773 * s/gnu-linux.h (LD_SWITCH_SYSTEM): Use LD_SWITCH_X_SITE_AUX as a shell
774 variable.
775 * s/netbsd.h (LD_SWITCH_SYSTEM_tmp): Remove.
776 (LD_SWITCH_SYSTEM): Use $LD_SWITCH_X_SITE_AUX_RPATH.
777 * s/openbsd.h (LD_SWITCH_SYSTEM_tmp): Remove.
778 (LD_SWITCH_SYSTEM): Use $LD_SWITCH_X_SITE_AUX_RPATH instead of
779 LD_SWITCH_SYSTEM_tmp.
780 * Makefile.in (LD_SWITCH_X_SITE_AUX, LD_SWITCH_X_SITE_AUX_RPATH):
781 New variables, set by configure.
782
eb21eab5
GM
783 * s/aix4-2.h (LD_SWITCH_SYSTEM_TEMACS): Move to configure.in.
784 * s/darwin.h (HEADERPAD_EXTRA, LIBS_NSGUI): Remove.
785 (LD_SWITCH_SYSTEM_TEMACS): Move to configure.in.
786 * Makefile.in (LD_SWITCH_SYSTEM_TEMACS): New variable, set by configure.
787 (TEMACS_LDFLAGS): Use $LD_SWITCH_SYSTEM_TEMACS.
788
49628785
GM
789 * s/aix4-2.h (C_SWITCH_SYSTEM):
790 * m/alpha.h (C_SWITCH_MACHINE):
791 Move to configure.in.
792 * Makefile.in (C_SWITCH_MACHINE, C_SWITCH_SYSTEM):
793 New variables, set by configure.
794 (ALL_CFLAGS): Use $C_SWITCH_MACHINE and $C_SWITCH_SYSTEM in place of
795 $c_switch_machine and $c_switch_system.
796
7dff330b
DN
7972010-05-04 Dan Nicolaescu <dann@ics.uci.edu>
798
799 * s/hpux10-20.h (LIB_STANDARD): New definition.
800 * Makefile.in (ORDINARY_LINK): Remove setting LIB_STANDARD based
801 on it, not used anymore.
802
53967e09
CY
8032010-05-03 Chong Yidong <cyd@stupidchicken.com>
804
805 * eval.c (internal_condition_case_n): Rename from
806 internal_condition_case_2.
807 (internal_condition_case_2): New function.
808
809 * xdisp.c (safe_call): Use internal_condition_case_n.
810
811 * fileio.c (Fdelete_file, internal_delete_file): New arg FORCE.
812 (internal_delete_file, Frename_file): Callers changed.
813
814 * buffer.c (Fkill_buffer):
815 * callproc.c (delete_temp_file): Callers changed (Bug#6070).
816
817 * lisp.h: Update prototypes.
818
3dee6fdb
GM
8192010-05-03 Glenn Morris <rgm@gnu.org>
820
821 * Makefile.in (LIBX_EXTRA, LIBX_BASE): New variables.
822 (LIBXT_OTHER, LIBX_OTHER): New, set by configure.
823 (LIBXT): Set with configure, not cpp.
824 (LIBX): Remove.
825 (LIBES): Replace $LIBX with $LIBX_BASE and $LIBX_OTHER.
826
a101e0fb
DN
8272010-05-02 Dan Nicolaescu <dann@ics.uci.edu>
828
829 * m/amdx86-64.h (START_FILES, LIB_STANDARD): Remove.
830 The FreeBSD is not needed, the default works, Solaris version is
831 not needed, and the remaining case is not supported by configure.
832
f63d0028
JD
8332010-05-02 Jan Djärv <jan.h.d@swipnet.se>
834
835 * xsmfns.c (CHDIR_OPT): New define.
836 (smc_save_yourself_CB): Add CHDIR_OPT to options to use when
837 restarting emacs.
838
839 * xterm.c (x_connection_closed): Call Fkill_emacs instead of
840 shut_down_emacs.
841
842 * emacs.c (USAGE1): Mention --chdir.
843 (main): Handle --chdir.
844 (standard_args): Add --chdir.
845 (fatal_error_signal): Call Fkill_emacs for SIGTERM and SIGHUP (Bug
846 #5552).
847
e4814a9f
DN
8482010-05-01 Dan Nicolaescu <dann@ics.uci.edu>
849
cd03c74a
DN
850 Remove LD_SWITCH_MACHINE.
851 * Makefile.in (LD_SWITCH_MACHINE): Remove definition, unused.
852 (TEMACS_LDFLAGS): Do not use LD_SWITCH_MACHINE.
853
c3a398a1
DN
854 Clean up IRIX code.
855 * m/iris4d.h (TERMINFO, FIRST_PTY_LETTER): Move definitions ...
856 * s/irix6-5.h (TERMINFO, FIRST_PTY_LETTER): ... here.
857
87e7285c
DN
858 Clean up AIX code.
859 * m/ibmrs6000.inp: Remove file, unused.
860 * m/ibmrs6000.h (IBMR2AIX): Remove, unused.
861 (LD_SWITCH_MACHINE): Rename to LD_SWITCH_SYSTEM_TEMACS, and move
862 definition ...
863 * s/aix4-2.h (LD_SWITCH_SYSTEM_TEMACS): ... here.
864
80f00217
JB
865 * sysdep.c (child_setup_tty, init_sys_modes): Remove !IBMR2AIX code,
866 unused.
e4814a9f 867
59ca28de
EZ
8682010-05-01 Eli Zaretskii <eliz@gnu.org>
869
197daef4
EZ
870 Emulate POSIX_SIGNALS on MS-Windows.
871
872 * s/ms-w32.h (POSIX_SIGNALS, struct sigaction, SIG_BLOCK)
873 (SIG_SETMASK, SIG_UNBLOCK): Define.
d6dae14b
EZ
874
875 * sysdep.c (sys_signal) [WINDOWSNT]: #ifdef away.
876 (wait_for_termination) [WINDOWSNT]: Move MS-Windows specific code
877 from non-POSIX_SIGNALS section to POSIX_SIGNALS section.
878
80f00217
JB
879 * w32.c (sigemptyset, sigaddset, sigfillset, sigprocmask):
880 New stubs.
197daef4 881
af7c7572
EZ
882 Miscellaneous fixes of bidi display.
883
59ca28de
EZ
884 * xdisp.c (find_row_end): New function, refactored from display_line.
885 (display_line): Use it.
017ea819
EZ
886 (extend_face_to_end_of_line): In almost-filled rows, extend only
887 if the row is R2L and not continued.
166e930d 888 (display_line): Fix prepending of truncation glyphs to R2L rows.
af7c7572 889 Preserve overlay and string info in row->end.
166e930d
EZ
890 (insert_left_trunc_glyphs): Support addition of left truncation
891 glyphs to R2L rows.
b47e0dcf 892 (set_cursor_from_row): Don't place cursor on the vertical border
af7c7572
EZ
893 glyph between adjacent windows. Fix a crash when a display string
894 is continued to the next line. Don't return zero if cursor was
895 found by `cursor' property of a display string.
b47e0dcf
EZ
896 (try_cursor_movement): Don't assume that row->end == (row+1)->start,
897 test for that explicitly.
59ca28de 898
7acac9f4
GM
8992010-05-01 Glenn Morris <rgm@gnu.org>
900
901 * Makefile.in (gmallocobj, rallocobj, vmlimitobj): Initialize to null,
902 for clarity.
903 (OTHER_OBJ): Remove.
904 (PRE_ALLOC_OBJ, POST_ALLOC_OBJ): New, set by configure.
905 (otherobj): Use PRE_ALLOC_OBJ, POST_ALLOC_OBJ rather than OTHER_OBJ.
906
45841e65
KK
9072010-05-01 Karel Klíč <kklic@redhat.com>
908
909 * fileio.c (Ffile_selinux_context): Context functions may return null.
910
afc61943
DN
9112010-04-30 Dan Nicolaescu <dann@ics.uci.edu>
912
80f00217 913 * s/gnu.h (POSIX_SIGNALS, START_FILES): New definitions.
afc61943 914
5a1bb006
GM
9152010-04-30 Glenn Morris <rgm@gnu.org>
916
917 * Makefile.in (vmlimitobj) [!SYSTEM_MALLOC]: New variable. (Bug#6065)
918 (OTHER_OBJ): Define as a separate variable, for clarity.
919
210af043
J
9202010-04-30 Jan Djärv <jan.h.d@swipnet.se>
921
922 * xsettings.c: include limits.h and update file comment.
923
0a7df391
GM
9242010-04-30 Glenn Morris <rgm@gnu.org>
925
d5096f16
GM
926 * Makefile.in (OLDXMENU, LIBXMENU) [HAVE_MENUS]:
927 Set with configure, not cpp.
928 (LIBW): Remove, replace with $TOOLKIT_LIBW.
929
7eb1ac33
GM
930 * Makefile.in (mallocobj): Remove.
931 (otherobj): Simplify using @OTHER_OBJ@.
932
517d086b
GM
933 * Makefile.in (dispnew.o, frame.o, fringe.o, font.o, fontset.o)
934 (keyboard.o, window.o, xdisp.o, xfaces.o, menu.o):
935 Don't bother making nsgui.h dependency platform-specific.
936
0a7df391
GM
937 * Makefile.in (nsfns.o): Remove duplicate nsgui.h dependency.
938
d6d23852
SM
9392010-04-29 Stefan Monnier <monnier@iro.umontreal.ca>
940
d2630aef
SM
941 * process.c (read_process_output, exec_sentinel): Don't burp if the
942 sentinel/filter kills the current buffer (bug#6060).
943
f9dddf52 944 Fix wrong-docstring problem introduced with hash-consing. (Bug#6008)
d6d23852
SM
945 * eval.c (Fautoload): Set doc to a unique number rather than to 0.
946 Remove unused var `args'.
947 * lisp.h (XSETCARFASTINT, XSETCDRFASTINT): Remove.
948 (LOADHIST_ATTACH): Wrap with do...while to avoid surprises for callers.
949 * doc.c (store_function_docstring): Use XSETCAR.
950
f1e3642a
GM
9512010-04-28 Glenn Morris <rgm@gnu.org>
952
faf535f8
GM
953 * Makefile.in (BASE_WINDOW_SUPPORT, X_WINDOW_SUPPORT): New variables.
954 (WINDOW_SUPPORT) [HAVE_WINDOW_SYSTEM]: Use them.
955
c40f9449
GM
956 * Makefile.in (CYGWIN_OBJ): Set with configure, not cpp.
957
658f86ca
GM
958 * Makefile.in (GPM_MOUSE_SUPPORT): New, set by configure.
959 (MOUSE_SUPPORT) [!HAVE_MOUSE]: Use $GPM_MOUSE_SUPPORT.
960
bc0b5f61
GM
961 * Makefile.in (FONT_OBJ): New, set by configure.
962 (FONT_DRIVERS): Use $FONT_OBJ.
963
294c50a0
GM
964 * Makefile.in (LIBXMU): Set with configure, not cpp.
965 * s/aix4-2.h (LIBXMU):
966 * s/hpux10-20.h (LIBXMU):
967 Remove definition, now set in configure.
968
e6ec4e99
GM
969 * Makefile.in (NS_OBJ, NS_SUPPORT): Set with configure, not cpp.
970
f1e3642a
GM
971 * m/amdx86-64.h [i386]: Move this test to configure.in.
972
c6ea2936
GM
9732010-04-27 Glenn Morris <rgm@gnu.org>
974
8fdac2c3
GM
975 * Makefile.in (LIBXTR6): Set with configure, not cpp.
976 * s/unixware.h (NEED_LIBW): Remove definition.
977
986fb647
GM
978 * Makefile.in (LUCID_LIBW, MOTIF_LIBW): Remove, replacing by...
979 (TOOLKIT_LIBW): New, set by configure.
980 (@X_TOOLKIT_TYPE@): No longer define it.
981
c6ea2936
GM
982 * Makefile.in (LIBXP): Remove, since included in MOTIF_LIBW.
983 (MOTIF_LIBW): Set with configure, not cpp.
984 * s/aix4-2.h (LIB_MOTIF):
985 * s/gnu-linux.h (LIB_MOTIF):
986 * s/unixware.h (LIB_MOTIF): Move to configure.in.
987
aaa36002
DN
9882010-04-27 Dan Nicolaescu <dann@ics.uci.edu>
989
990 Reduce CPP usage.
991 * Makefile.in (LIB_X11_LIB): Remove, inline in the only user.
992 (obj): Use autoconf for unexec instead of cpp.
ed6281b0
DN
993 (C_SWITCH_SYSTEM, C_SWITCH_MACHINE, C_SWITCH_X_SITE): Remove
994 definitions and undefs. Inline definitions in the only user.
995 (ALL_CFLAGS): Substitute C_SWITCH_X_SYSTEM using autoconf.
aaa36002 996
b678dd8b
GM
9972010-04-27 Glenn Morris <rgm@gnu.org>
998
76cda504
GM
999 * m/amdx86-64.h (START_FILES, LIB_STANDARD): Change the logic around,
1000 since the defaults (set by the system file) are fine in most cases.
1001 [GNU_LINUX, __OpenBSD__, __NetBSD__, __APPLE__]: Remove sections.
1002 * m/ibms390x.h (START_FILES, LIB_STANDARD):
1003 * m/macppc.h (START_FILES, LIB_STANDARD) [GNU_LINUX]:
1004 * m/sparc.h (START_FILES, LIB_STANDARD) [__linux__]:
1005 Remove definitions, since they are set correctly in s/gnu-linux.h.
1006 * s/freebsd.h (START_FILES, LIB_STANDARD):
1007 * s/gnu-linux.h (START_FILES, LIB_STANDARD):
1008 * s/hpux10-20.h (START_FILES):
1009 * s/netbsd.h (START_FILES, LIB_STANDARD, START_FILES_1, END_FILES_1):
1010 Use $CRT_DIR in place of fixed /usr/lib, /lib directories.
1011
b678dd8b
GM
1012 * Makefile.in (LIBXP, LUCID_LIBW, WIDGET_OBJ): Set via configure.
1013 (MOTIF_LIBW): Use $LIBXP.
1014 (otherobj): Use $WIDGET_OBJ.
1015
9452ded1
DN
10162010-04-26 Dan Nicolaescu <dann@ics.uci.edu>
1017
7e10844c
DN
1018 * Makefile.in (LIBS_MACHINE): Remove, unused.
1019
9452ded1
DN
1020 Use autoconf instead of cpp for LIB_MATH.
1021 * s/darwin.h (LIB_MATH): Do not define here, move to configure.
1022 * s/cygwin.h (LIB_MATH): Likewise.
1023 * Makefile.in (LIB_MATH): Do not define with cpp.
1024 (LIBES): Use autoconf for LIB_MATH.
1025
fcebfc6a
KH
10262010-04-26 Kenichi Handa <handa@m17n.org>
1027
1028 * composite.c (Ffind_composition_internal): Fix the return value
1029 for an automatic composition.
1030
39e2ad1b
DN
10312010-04-25 Dan Nicolaescu <dann@ics.uci.edu>
1032
1033 Remove all NO_ARG_ARRAY uses.
1034 * fns.c (concat2, concat3, nconc2):
1035 * eval.c (apply1, call1, call2, call3, call4, call5, call6)
1036 (call7): Remove NO_ARG_ARRAY usage, assume it's always true.
1037 * m/xtensa.h (NO_ARG_ARRAY):
1038 * m/template.h (NO_ARG_ARRAY):
1039 * m/sparc.h (NO_ARG_ARRAY):
1040 * m/sh3.h (NO_ARG_ARRAY):
1041 * m/mips.h (NO_ARG_ARRAY):
1042 * m/macppc.h (NO_ARG_ARRAY):
1043 * m/iris4d.h (NO_ARG_ARRAY):
1044 * m/intel386.h (NO_ARG_ARRAY):
1045 * m/ibms390x.h (NO_ARG_ARRAY):
1046 * m/ibms390.h (NO_ARG_ARRAY):
1047 * m/ibmrs6000.h (NO_ARG_ARRAY):
1048 * m/ia64.h (NO_ARG_ARRAY):
1049 * m/hp800.h (NO_ARG_ARRAY):
1050 * m/arm.h (NO_ARG_ARRAY):
1051 * m/amdx86-64.h (NO_ARG_ARRAY):
1052 * m/alpha.h (NO_ARG_ARRAY): Remove definition.
1053
adf4f59c
EZ
10542010-04-25 Eli Zaretskii <eliz@gnu.org>
1055
6bdf5d65
EZ
1056 * xdisp.c (display_line): Don't assume 2nd call to
1057 get_next_display_element cannot return zero. (Bug#6030)
f538fcec
EZ
1058 (iterate_out_of_display_property): New function, body from pop_it.
1059 (pop_it): Use it.
adf4f59c 1060
dfbbda83
GM
10612010-04-24 Glenn Morris <rgm@gnu.org>
1062
1063 * m/amdx86-64.h (START_FILES, LIB_STANDARD) [__OpenBSD__]:
1064 For clarity, revert to using fixed /usr/lib rather than $CRT_DIR.
1065 (START_FILES, LIB_STANDARD) [__FreeBSD__]: Merge into the generic case,
1066 since CRT_DIR defaults to /usr/lib. Suggested by Dan Nicolaescu.
1067
2d4018aa
EZ
10682010-04-24 Eli Zaretskii <eliz@gnu.org>
1069
a49884a6
EZ
1070 * xdisp.c (display_line): Use `reseat' instead of `reseat_1', and
1071 use `get_next_display_element' and `set_iterator_to_next' to
1072 advance to the next character, when looking for the character that
1073 begins the next row.
1074
76db6fcc 1075 * .gdbinit: Add a "set Fmake_symbol" line to force GDB to load the
2d4018aa
EZ
1076 definition of "struct Lisp_Symbol".
1077
70eab5c1
GM
10782010-04-24 Glenn Morris <rgm@gnu.org>
1079
1080 * Makefile.in (CRT_DIR): New variable, set by configure.
1081 * m/amdx86-64.h, m/ibms390x.h (START_FILES, LIB_STANDARD):
1082 Use $CRT_DIR rather than HAVE_LIB64_DIR. (Bug#5655)
1083
1ad4cc3d
DN
10842010-04-23 Dan Nicolaescu <dann@ics.uci.edu>
1085
e769f484
DN
1086 * Makefile.in: Remove C_SWITCH_X_MACHINE, unused.
1087
4196ff33
DN
1088 * s/cygwin.h (LIBS_DEBUG): Remove, unused.
1089
879b0ee4
DN
1090 Remove redundant flags.
1091 * s/freebsd.h (C_SWITCH_SYSTEM):
1092 * s/hpux10-20.h (C_SWITCH_X_SYSTEM, LD_SWITCH_X_DEFAULT):
1093 * s/netbsd.h (C_SWITCH_SYSTEM):
1094 * s/openbsd.h (LD_SWITCH_X_DEFAULT): Remove, configure takes care
1095 of these.
1096
03cbbcb8
DN
1097 Simplify m/intel386.h.
1098 * m/intel386.h (CRT0_DUMMIES): Remove, inline value in the only
1099 user: ecrt0.c.
1100 (SOLARIS2): Remove LOAD_AVE_TYPE, LOAD_AVE_CVT, LIBS_MACHINE, unused.
1101 (USG5_4): Move LOAD_AVE_TYPE, LOAD_AVE_CVT, FSCALE definitions to
1102 the only user: s/unixware.h.
1103 * ecrt0.c: Remove #ifndef static. Inline CRT0_DUMMIES definition
1104 from m/intel386.h.
1105 * s/unixware.h (LOAD_AVE_TYPE, LOAD_AVE_CVT, FSCALE): Definitions
1106 moved here from m/intel386.h.
1107
1ad4cc3d
DN
1108 * m/mips.h: Remove #if 0 code.
1109
8785b888
EZ
11102010-04-23 Eli Zaretskii <eliz@gnu.org>
1111
728588cc
EZ
1112 Fix display of composed characters from L2R scripts in bidi buffers.
1113 * xdisp.c (set_iterator_to_next, next_element_from_composition):
1114 After advancing IT past the composition, resync the bidi iterator
1115 with IT's position. (Bug#5977)
1116
a63f80b4
DN
11172010-04-23 Dan Nicolaescu <dann@ics.uci.edu>
1118
1119 * Makefile.in (LD_SWITCH_MACHINE_TEMACS): Remove, unused.
1120 (TEMACS_LDFLAGS): Don't use LD_SWITCH_SYSTEM_TEMACS.
1121
ff5dec5c
SM
11222010-04-23 Stefan Monnier <monnier@iro.umontreal.ca>
1123
1124 * gtkutil.c: Include xsettings.h for Ftool_bar_get_system_style.
1125
8785b888
EZ
11262010-04-23 Eli Zaretskii <eliz@gnu.org>
1127
58ccf243 1128 Support `display' text properties and overlay strings in bidi buffers.
8785b888
EZ
1129 * xdisp.c (pop_it): When the stack is popped after displaying
1130 from a string, bidi-iterate to exit from the text portion covered
1131 by the `display' property or overlay. (Bug#5988, bug#5920)
1132
feeb1604
DN
11332010-04-23 Dan Nicolaescu <dann@ics.uci.edu>
1134
8e324eb6
DN
1135 * m/macppc.h (LD_SWITCH_SYSTEM_TEMACS): Remove #undef.
1136 (LD_SWITCH_MACHINE_TEMACS): Remove, configure sets nocombreloc.
1137
809fcaba
DN
1138 * s/netbsd.h (LD_SWITCH_SYSTEM_TEMACS): Remove, configure sets nocombreloc.
1139 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Remove.
1140
ed710380
DN
1141 Simplify STARTFILES definition.
1142 * s/hpux10-20.h (START_FILES): Explicitly define here instead of
1143 relying on Makefile.in to define it.
1144 * s/cygwin.h (START_FILES): Likewise.
1145 * Makefile.in (STARTFILES): Remove conditional code, not needed anymore.
1146
feeb1604
DN
1147 Clean up Solaris code.
1148 * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS, C_SWITCH_X_SYSTEM)
1149 (LIB_MOTIF): Remove, configure takes care of this.
1150 (NOT_USING_MOTIF): Remove, unused.
1151 * xrdb.c: Remove #if 0-ed #include.
1152 (SYSV): Remove conditional for old SysV.
1153 * sysdep.c (closedir): Remove conditional code for Solaris,
1154 Solaris has closedir.
1155
a0d0b563
JD
11562010-04-22 Jan Djärv <jan.h.d@swipnet.se>
1157
1158 * xsettings.c (read_and_apply_settings): Check if current_font is
1159 NULL before strcmp (Bug#6001).
1160
56bae7c7
DN
11612010-04-21 Dan Nicolaescu <dann@ics.uci.edu>
1162
1163 Clean up HP-UX files.
1164 * m/hp800.h (NO_REMAP, VIRT_ADDR_VARIES, DATA_SEG_BITS)
1165 (DATA_START, TEXT_START, LOAD_AVE_TYPE, LOAD_AVE_CVT)
1166 (LDAV_SYMBOL, index, rindex): Move definitions only used in HP-UX ...
1167 * s/hpux10-20.h: ... to the only user, here.
1168
372b7a95
EZ
11692010-04-21 Eli Zaretskii <eliz@gnu.org>
1170
1171 * bidi.c (bidi_find_paragraph_start, bidi_at_paragraph_end): Don't
1172 use buffer-local values of paragraph-start and paragraph-separate.
1173 <paragraph_start_re, paragraph_separate_re>: Rename from
1174 fallback_paragraph_start_re and fallback_paragraph_separate_re.
1175 (Bug#5992)
1176
f904c0f9
JD
11772010-04-21 Jan Djärv <jan.h.d@swipnet.se>
1178
1179 * xsettings.c: Qmonospace_font_name, Qtool_bar_style and
1180 current_tool_bar_style are new.
1181 (store_config_changed_event): Rename from store_font_changed_event.
1182 (XSETTINGS_TOOL_BAR_STYLE): New define.
1183 (SEEN_FONT, SEEN_TB_STYLE): New enum values.
1184 (struct xsettings): Add font and tb_style, set xft stuff inside #ifdef
1185 HAVE_XFT.
1186 (something_changedCB): store_font_changed_event is now
1187 store_config_changed_event
1188 (parse_settings): Rename from parse_xft_settings. Read
1189 non-xft xsettings outside #ifdef HAVE_XFT.
1190 (read_settings): Renamed from read_xft_settings.
1191 (apply_xft_settings): Take current settings as parameter. Do not
1192 call read_(xft)_settings.
1193 (read_and_apply_settings): New function.
1194 (xft_settings_event): Do non-xft stuff out of HAVE_XFT. Call
1195 read_and_apply_settings if there are settings to be read.
1196 (init_xsettings): Renamed from init_xfd_settings.
1197 Call read_and_apply_settings unconditionally.
1198 (xsettings_initialize): Call init_xsettings.
1199 (Ftool_bar_get_system_style): New function.
1200 (syms_of_xsettings): Define Qmonospace_font_name and
1201 Qtool_bar_style. Initialize current_tool_bar_style to nil.
f9dddf52 1202 defsubr Stool_bar_get_system_style. Fprovide on
f904c0f9 1203 dynamic-setting.
31a01b90 1204 Move misplaced HAVE_GCONF
f904c0f9
JD
1205
1206 * xsettings.h (Ftool_bar_get_system_style): Declare.
1207
1208 * xdisp.c: Vtool_bar_style, tool_bar_max_label_size,
1209 Qtext, Qboth, Qboth_horiz are new.
1210 (syms_of_xdisp): Intern Qtext, Qboth, Qboth_horiz, DEFVAR
1211 Vtool_bar_style, tool_bar_max_label_size.
1212
1213 * lisp.h: Extern declare Qtext, Qboth, Qboth_horiz.
1214
1215 * keyboard.c: QClabel is new.
1216 (parse_tool_bar_item): Take out QClabel from tool bar items.
1217 Try to construct a label if ther is no QClabel.
1218 (syms_of_keyboard): Intern :label as QClabel.
1219
1220 * dispextern.h (tool_bar_item_idx): TOOL_BAR_ITEM_LABEL is new.
1221 (Vtool_bar_style, tool_bar_max_label_size, DEFAULT_TOOL_BAR_LABEL_SIZE):
1222 New.
1223
1224 * Makefile.in (SOME_MACHINE_LISP): font-setting.el renamed to
1225 dynamic-setting.el.
1226
1227 * gtkutil.c (xg_tool_bar_menu_proxy): Handle label in tool bar item.
1228 (xg_make_tool_item, xg_show_toolbar_item): New function.
1229 (update_frame_tool_bar): Take label from TOOL_BAR_ITEM_LABEL.
1230 Call xg_make_tool_item to make a tool bar item.
1231 Call xg_show_toolbar_item. Use wtoolbar instead of x->toolbar_widget.
1232
1233 * xterm.c (x_draw_image_relief): Take Vtool_bar_button_margin
1234 into account for toolbars.
1235
c632dfda
JD
12362010-04-21 Jan Djärv <jan.h.d@swipnet.se>
1237
1238 * data.c (make_blv): Declarations before code (Bug#5993).
1239
10efe302
GM
12402010-04-21 Glenn Morris <rgm@gnu.org>
1241
1242 * Makefile.in (DBUS_OBJ, GTK_OBJ, XMENU_OBJ, XOBJ):
1243 Define using autoconf, not cpp.
1244 (LIBXSM): New variable, set by autoconf.
1245 (LIBXT): Use $LIBXSM.
1246
4285ac5a
DN
12472010-04-21 Dan Nicolaescu <local_user@dannlt>
1248
3ec759e7
DN
1249 Remove NOMULTIPLEJOBS, unused.
1250 * s/template.h (NOMULTIPLEJOBS):
1251 * s/msdos.h (NOMULTIPLEJOBS): Remove, unused.
1252
4285ac5a
DN
1253 Simplify LD_SWITCH_SYSTEM_TEMACS usage.
1254 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS):
1255 * s/gnu-linux.h (LD_SWITCH_SYSTEM_TEMACS): Remove, configure
1256 detects -znocombreloc and passes it to the linker
1257 * s/hpux10-20.h (LD_SWITCH_SYSTEM_TEMACS): Remove, empty.
1258
2807228d
GM
12592010-04-21 Glenn Morris <rgm@gnu.org>
1260
1261 * Makefile.in (LIBSELINUX_LIBS): Move out of #ifdef.
1262
574c05e2
KK
12632010-04-21 Karel Klíč <kklic@redhat.com>
1264
1265 * Makefile.in (LIBSELINUX_LIBS): New.
1266 (LIBES): Add $LIBSELINUX_LIBS.
1267 * eval.c, lisp.h (call7): New function.
1268 * fileio.c [HAVE_LIBSELINUX]: Include selinux headers.
1269 (Ffile_selinux_context, Fset_file_selinux_context):
1270 New functions.
1271 (Fcopy_file): New parameter preserve-selinux-context.
1272 (Frename_file): Preserve selinux context when renaming by copy-file.
1273
91eac4bb 12742010-04-21 Juanma Barranquero <lekktu@gmail.com>
4e2af782 1275 Eli Zaretskii <eliz@gnu.org>
91eac4bb 1276
50426a04
JB
1277 Don't depend on cm.c or termcap.c on Windows, use stubs.
1278 * makefile.w32-in (OBJ1): Remove cm.$(O) and termcap.$(O).
1279 ($(BLD)/cm.$(O), $(BLD)/termcap.$(O)): Remove.
1280 * w32console.c (current_tty, cost): New vars; lifted from cm.c.
1281 (evalcost, cmputc, cmcheckmagic, cmcostinit, cmgoto, Wcm_clear)
1282 (sys_tputs, sys_tgetstr): New stubs.
1283 * s/ms-w32.h (chcheckmagic, cmcostinit, cmgoto, cmputc, Wcm_clear)
1284 (tputs, tgetstr): New; define to sys_*.
91eac4bb 1285
938efb77
JB
12862010-04-20 Juanma Barranquero <lekktu@gmail.com>
1287
1288 * buffer.c (syms_of_buffer) <bidi-display-reordering>: Doc fix.
1289
b4bf28b7
SM
12902010-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
1291
8b1e1112
SM
1292 * data.c (Fmake_variable_buffer_local, Fmake_local_variable):
1293 Just signal a warning rather than an error when inside a let.
1294 (Fmake_variable_frame_local): Add the same test.
1295
933ac235
SM
1296 * font.c (syms_of_font): Make the style table vars read-only.
1297
b4bf28b7
SM
1298 * buffer.h (struct buffer): Remove unused var `direction_reversed'.
1299 * buffer.c (init_buffer_once, syms_of_buffer): Remove its initialization.
1300
1301 * bidi.c (bidi_initialize): Simplify fallback_paragraph_*_re init.
1302
93d68d0c
EZ
13032010-04-20 Eli Zaretskii <eliz@gnu.org>
1304
1305 Fix R2L paragraph display on TTY.
1306
1307 * xdisp.c (unproduce_glyphs): New function.
1308 (display_line): Use it when produced glyphs are discarded from R2L
1309 glyph rows.
1310 (append_composite_glyph): In R2L rows, prepend the glyph rather
1311 than appending it.
1312
1313 * term.c (append_composite_glyph): In R2L rows, prepend the glyph
1314 rather than append it. Set up the resolved_level and bidi_type
1315 attributes of the appended glyph.
283ccc18
EZ
1316 (produce_special_glyphs): Mirror the backslash continuation
1317 character in R2L lines.
93d68d0c 1318
283ccc18 1319 Implement display of R2L paragraphs in GUI sessions.
26cdf528 1320
283ccc18
EZ
1321 * xdisp.c [HAVE_WINDOW_SYSTEM]: Add prototype for
1322 append_stretch_glyph.
1323 (set_cursor_from_row) <cursor_x>: Remove unused variable. Fix
1324 off-by-one error in computing x at end of text in the row.
1325 (append_stretch_glyph): In reversed row, prepend the glyph rather
1326 than append it. Set resolved_level and bidi_type of the glyph.
1327 (extend_face_to_end_of_line): If the row is reversed, prepend a
1328 stretch glyph whose width is such that the rightmost glyph will be
1329 drawn at the right margin of the window. Fix off-by-one error on
1330 TTY frames in testing whether a line needs face extension. Fix
1331 face extension at ZV. If this is the last glyph row, use
1332 DEFAULT_FACE_ID, to avoid painting the rest of the window with the
1333 region face.
1334 (set_cursor_from_row, display_line): Use
26cdf528
EZ
1335 MATRIX_ROW_CONTINUATION_LINE_P instead of testing value of
1336 row->continuation_lines_width.
283ccc18
EZ
1337 (next_element_from_buffer): Don't call bidi_paragraph_init if we
1338 are at ZV. Fixes a crash when reseated to ZV by
1339 try_window_reusing_current_matrix.
45903529
EZ
1340 (display_and_set_cursor, erase_phys_cursor): Handle negative HPOS,
1341 which happens with R2L glyph rows. Fixes a crash when inserting a
1342 character at end of an R2L line.
283ccc18
EZ
1343 (set_cursor_from_row): Don't be fooled by truncated rows: don't
1344 treat them as having zero-width characters. Improve comments.
1345 Don't reverse pos_before and pos_after for reversed glyph rows.
1346 Set cursor.x to negative value when the cursor might be on the
1347 left fringe.
1348 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): For R2L lines, consider the
1349 left fringe, not the right one.
f951a506
EZ
1350 (notice_overwritten_cursor, draw_phys_cursor_glyph)
1351 (erase_phys_cursor): For reversed cursor_row, support cursor on
1352 the left fringe.
1353
283ccc18
EZ
1354 * fringe.c (update_window_fringes): For R2L rows, swap the bitmaps
1355 of continuation indicators on the fringes.
1356 (draw_fringe_bitmap): For reversed glyph rows, allow cursor on the
1357 left fringe.
1358
f951a506
EZ
1359 * w32term.c (w32_draw_window_cursor): For reversed glyph rows,
1360 draw cursor on the left fringe.
1361
1362 * xterm.c (x_draw_window_cursor): For reversed glyph rows, draw
1363 cursor on the left fringe.
1364
f951a506
EZ
1365 * dispnew.c (update_text_area): Handle reversed desired rows when
1366 the cursor is on the left fringe.
1367 (set_window_cursor_after_update): Limit cursor's hpos by -1 from
1368 below, not by 0, for when the cursor is on the left fringe.
1369
3bb49aaf
JD
13702010-04-20 Jan Djärv <jan.h.d@swipnet.se>
1371
1372 * gtkutil.c (xg_event_is_for_scrollbar): Check if grabbed
1373 widget is a scrollbar.
1374
c0be27fd
KH
13752010-04-20 Kenichi Handa <handa@m17n.org>
1376
1377 * charset.c (char_charset): Consider Vcharset_non_preferred_head
1378 only when the arg CHARSET_LIST is nil.
1379
ce5b453a
SM
13802010-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
1381
1382 Make variable forwarding explicit rather the using special values.
1383 Basically, this makes the structure of buffer-local values and object
1384 forwarding explicit in the type of Lisp_Symbols rather than use
1385 special Lisp_Objects for that. This tends to lead to slightly more
1386 verbose code, but is more C-like, simpler, and makes it easier to make
1387 sure we handled all cases, among other things by letting the compiler
1388 help us check it.
1389 * lisp.h (enum Lisp_Misc_Type, union Lisp_Misc):
1390 Removing forwarding objects.
1391 (enum Lisp_Fwd_Type, enum symbol_redirect, union Lisp_Fwd): New types.
1392 (struct Lisp_Symbol): Make the various forms of variable-forwarding
1393 explicit rather than hiding them inside Lisp_Object "values".
1394 (XFWDTYPE): New macro.
1395 (XINTFWD, XBOOLFWD, XOBJFWD, XKBOARD_OBJFWD): Redefine.
1396 (XBUFFER_LOCAL_VALUE): Remove.
1397 (SYMBOL_VAL, SYMBOL_ALIAS, SYMBOL_BLV, SYMBOL_FWD, SET_SYMBOL_VAL)
1398 (SET_SYMBOL_ALIAS, SET_SYMBOL_BLV, SET_SYMBOL_FWD): New macros.
1399 (SYMBOL_VALUE, SET_SYMBOL_VALUE): Remove.
1400 (struct Lisp_Intfwd, struct Lisp_Boolfwd, struct Lisp_Objfwd)
1401 (struct Lisp_Buffer_Objfwd, struct Lisp_Kboard_Objfwd):
1402 Remove the Lisp_Misc_* header.
1403 (struct Lisp_Buffer_Local_Value): Redefine.
1404 (BLV_FOUND, SET_BLV_FOUND, BLV_VALUE, SET_BLV_VALUE): New macros.
1405 (struct Lisp_Misc_Any): Add filler to get the right size.
1406 (struct Lisp_Free): Use struct Lisp_Misc_Any rather than struct
1407 Lisp_Intfwd.
1408 (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL, DEFVAR_INT)
1409 (DEFVAR_KBOARD): Allocate a forwarding object.
1410 * data.c (do_blv_forwarding, store_blv_forwarding): New macros.
1411 (let_shadows_global_binding_p): New function.
1412 (union Lisp_Val_Fwd): New type.
1413 (make_blv): New function.
1414 (swap_in_symval_forwarding, indirect_variable, do_symval_forwarding)
1415 (store_symval_forwarding, swap_in_global_binding, Fboundp)
1416 (swap_in_symval_forwarding, find_symbol_value, Fset)
1417 (let_shadows_buffer_binding_p, set_internal, default_value)
1418 (Fset_default, Fmake_variable_buffer_local, Fmake_local_variable)
1419 (Fkill_local_variable, Fmake_variable_frame_local)
1420 (Flocal_variable_p, Flocal_variable_if_set_p)
1421 (Fvariable_binding_locus):
1422 * xdisp.c (select_frame_for_redisplay):
1423 * lread.c (Fintern, Funintern, init_obarray, defvar_int)
1424 (defvar_bool, defvar_lisp_nopro, defvar_lisp, defvar_kboard):
1425 * frame.c (store_frame_param):
1426 * eval.c (Fdefvaralias, Fuser_variable_p, specbind, unbind_to):
1427 * bytecode.c (Fbyte_code) <varref, varset>: Adapt to the new symbol
1428 value structure.
1429 * buffer.c (PER_BUFFER_SYMBOL): Move from buffer.h.
1430 (clone_per_buffer_values): Only adjust markers into the current buffer.
1431 (reset_buffer_local_variables): PER_BUFFER_IDX is never -2.
1432 (Fbuffer_local_value, set_buffer_internal_1)
1433 (swap_out_buffer_local_variables):
1434 Adapt to the new symbol value structure.
1435 (DEFVAR_PER_BUFFER): Allocate a Lisp_Buffer_Objfwd object.
1436 (defvar_per_buffer): Take a new arg for the fwd object.
1437 (buffer_lisp_local_variables): Return a proper alist (different fix
1438 for bug#4138).
1439 * alloc.c (Fmake_symbol): Use SET_SYMBOL_VAL.
1440 (Fgarbage_collect): Don't handle buffer_defaults specially.
1441 (mark_object): Handle new symbol value structure rather than the old
1442 special Lisp_Misc_* objects.
1443 (gc_sweep) <symbols>: Free also the buffer-local-value objects.
1444 * term.c (set_tty_color_mode):
1445 * bidi.c (bidi_initialize): Don't access the ->value field directly.
1446 * buffer.h (PER_BUFFER_VAR_OFFSET): Don't bother with
1447 a buffer_local_flags.
1448 * print.c (print_object): Get rid of impossible forwarding objects.
1449
fd3998ff
EZ
14502010-04-19 Eli Zaretskii <eliz@gnu.org>
1451
1452 * bidi.c (bidi_get_type, bidi_get_category)
1453 (bidi_at_paragraph_end, bidi_resolve_weak, bidi_resolve_neutral)
ce5b453a
SM
1454 (bidi_type_of_next_char, bidi_level_of_next_char):
1455 Declare static. Use `INLINE' rather than `inline'.
fd3998ff 1456
e42cd1a7
JB
14572010-04-19 Juanma Barranquero <lekktu@gmail.com>
1458
1459 * dired.c (Ffile_attributes): Fix typo in docstring.
1460
6e104790 14612010-04-19 Adrian Robert <Adrian.B.Robert@gmail.com>
79353a53
AR
1462
1463 * nsmenu.m (EmacsDialog-runDialogAt:): Declare ret as
1464 NSInteger (Bug#5811).
1465
6e104790 14662010-04-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
658b9b93
YM
1467
1468 * s/darwin.h (PTY_ITERATION, PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF)
1469 (PTY_OPEN): New defines. Use openpty (Bug#726, Bug#5819).
1470
6e104790 14712010-04-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16009a0e
YM
1472
1473 * frame.h (FRAME_LINE_TO_PIXEL_Y): Add missing parenthesis.
1474
6e104790
SM
14752010-04-19 Chong Yidong <cyd@stupidchicken.com>
1476
1477 * xdisp.c (prepare_menu_bars): Don't call ns_set_doc_edited for
1478 terminal frames (Bug#5837).
1479
37dcfea0
EZ
14802010-04-19 Eli Zaretskii <eliz@gnu.org>
1481
d1da276f
EZ
1482 * .gdbinit (xsubchartable): New command.
1483
37dcfea0
EZ
14842010-04-19 Eli Zaretskii <eliz@gnu.org>
1485
1486 * xdisp.c (display_line): Don't write beyond the last glyph row in
9166b0f3 1487 the desired matrix. Fixes a crash in "emacs -nw" (bug#5972), see
37dcfea0
EZ
1488 http://lists.gnu.org/archive/html/emacs-devel/2010-04/msg00075.html
1489 and
1490 http://lists.gnu.org/archive/html/emacs-devel/2010-04/msg00213.html
1491
e9515805
SM
14922010-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
1493
1494 * alloc.c (Fpurecopy): Hash-cons if requested.
1495 (syms_of_alloc): Update purify-flag docstring.
1496
22aa44a8
JD
14972010-04-18 Jan Djärv <jan.h.d@swipnet.se>
1498
1499 * gtkutil.c (xg_set_geometry): Set size in geometry string also.
1500 (x_wm_set_size_hint): Set USER_POS in hint_flags (Bug#5968).
1501
ebb5722e
EZ
15022010-04-17 Eli Zaretskii <eliz@gnu.org>
1503
1504 Fix a crash when an NSM character is inserted at BEGV.
1505
1506 * bidi.c (bidi_init_it): Fix initialization of bidi_it->prev.
1507 (bidi_resolve_weak): Don't use prev.type_after_w1 if it is
1508 NEUTRAL_B or UNKNOWN_BT.
1509
0f4442ef
EZ
15102010-04-16 Eli Zaretskii <eliz@gnu.org>
1511
1512 * xdisp.c (set_cursor_from_row): Don't consider possibility of
1513 other rows with cursor unless they are different from this row and
1514 this row is part of a continued line. (Bug#5943)
1515
7d4e45f8
DN
15162010-04-16 Dan Nicolaescu <dann@ics.uci.edu>
1517
1518 * s/freebsd.h: Restore osreldate.h include.
1519 Suggested by Naohiro Aota.
1520
5ba5ec85
J
15212010-04-16 Jan Djärv <jan.h.d@swipnet.se>
1522
1523 * xmenu.c (apply_systemfont_to_menu): *childs was incorrectly used.
1524
20af301d
CY
15252010-04-16 Ken Brown <kbrown@cornell.edu> (tiny change)
1526
1527 * s/cygwin.h: Avoid linking against static libgcc.
1528
a4b000fb
JL
15292010-04-15 Juri Linkov <juri@jurta.org>
1530
1531 * window.c: Add Qscroll_command.
1532 Remove Vscroll_preserve_screen_position_commands.
1533 (window_scroll_pixel_based, window_scroll_line_based): Check the
1534 `scroll-command' property on the last command instead of searching
1535 the last command in Vscroll_preserve_screen_position_commands.
1536 (syms_of_window): Initialize and staticpro `Qscroll_command'.
1537 Put Qscroll_command property on Qscroll_up and Qscroll_down.
1538 (scroll-preserve-screen-position): Doc fix.
1539 (Vscroll_preserve_screen_position_commands): Remove variable.
1540
bc319ba4
DN
15412010-04-15 Dan Nicolaescu <dann@ics.uci.edu>
1542
6bb24457
DN
1543 * xdisp.c (message): Do not use NO_ARG_ARRAY.
1544
19d4c244
DN
15452010-04-14 Dan Nicolaescu <dann@ics.uci.edu>
1546
1547 Reduce cpp use in Makefile.in.
1548 * Makefile.in (DBUS_CFLAGS, DBUS_LIBS, GCONF_CFLAGS, GCONF_LIBS)
1549 (LIBSOUND, CFLAGS_SOUND, RSVG_LIBS, RSVG_CFLAGS, INTERVALS_H)
1550 (GETLOADAVG_LIBS, RUN_TEMACS): Move to the autoconf section.
1551 (ORDINARY_LINK): Remove, defined in src/s/gnu.h.
1552 (CRT0_COMPILE): Remove, inline it in the only user.
1553
32129746
JL
15542010-04-14 Juri Linkov <juri@jurta.org>
1555
1556 * window.c (keys_of_window): Rebind `C-v' from `scroll-up' to
1557 `scroll-up-command' and `M-v' from `scroll-down' to
1558 `scroll-down-command'.
1559
9013a7f8
JL
15602010-04-14 Juri Linkov <juri@jurta.org>
1561
1562 * window.c (Vscroll_preserve_screen_position_commands): New variable
1563 with the default value as the list of Qscroll_down and Qscroll_up.
1564 (window_scroll_pixel_based, window_scroll_line_based): Search the
1565 last command in the list Vscroll_preserve_screen_position_commands
1566 instead of comparing with Qscroll_up and Qscroll_down.
1567
4bef8d26
JD
15682010-04-13 Jan Djärv <jan.h.d@swipnet.se>
1569
92848133
JD
1570 * gtkutil.c (xg_set_geometry): Set geometry for PPosition also.
1571 (x_wm_set_size_hint): Dont set position flags, gtk_window_parse_geometry
1572 does that.
1573
4bef8d26
JD
1574 * xfns.c (Fx_create_frame, x_create_tip_frame): Set default border width
1575 to zero.
1576
58b963f7
SM
15772010-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
1578
84164a0d
SM
1579 * term.c (init_tty): Move common text outside of #ifdef TERMINFO.
1580
2b0a91e7
SM
1581 Try to solve the problem of spurious EOF chars in long lines of text
1582 sent to interactive subprocesses.
1583 * sysdep.c (child_setup_tty): Do not enable ICANON any more.
1584 (system_process_attributes): Remove unused var `ttotal'.
1585 * process.c (send_process): Don't bother breaking long line with EOF
1586 chars when talking to ttys any more.
1587 (wait_reading_process_output): Output a warning when called in such
1588 a way that it could block without being interruptible.
1589
58b963f7
SM
1590 Try to detect file modification within the same second.
1591 * buffer.h (struct buffer): New field modtime_size.
1592 * buffer.c (reset_buffer): Initialize it.
1593 * fileio.c (Finsert_file_contents, Fwrite_region): Set it.
1594 (Fverify_visited_file_modtime): Check it.
1595 (Fclear_visited_file_modtime, Fset_visited_file_modtime): Clear it.
1596 (Fset_visited_file_modtime): Set (or clear) it.
1597
01f5787b
SM
15982010-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
1599
1600 * process.c (status_notify): Remove unused var `ro'.
1601
83725342
JD
16022010-04-12 Jan Djärv <jan.h.d@swipnet.se>
1603
1604 * xfns.c (select_visual): Don't call error if XGetVisualInfo returns
1605 more than one visual (Bug#5938).
1606
b9465836
DN
16072010-04-12 Dan Nicolaescu <dann@ics.uci.edu>
1608
50426a04
JB
1609 * Makefile.in (C_SWITCH_SYSTEM,C_SWITCH_MACHINE,C_SWITCH_X_SITE):
1610 Undefine.
b9465836 1611
8d9c8ece
DN
16122010-04-11 Dan Nicolaescu <dann@ics.uci.edu>
1613
b1f52161
DN
1614 Remove C_SWITCH_SYSTEM_TEMACS.
1615 * s/darwin.h (C_SWITCH_SYSTEM_TEMACS): Remove.
1616 (malloc, realloc, free): Use emacs, not temacs for conditional
1617 definition.
1618
1619 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Remove.
1620 (ALL_CFLAGS): Do not use C_SWITCH_SYSTEM_TEMACS.
1621
8d9c8ece
DN
1622 Use autoconf, not cpp for some variables.
1623 * Makefile.in (C_SWITCH_SYSTEM, C_SWITCH_MACHINE)
1624 (C_SWITCH_X_SITE): Define using autoconf, not cpp.
1625 (ALL_CFLAGS): Use them as make variables.
1626 (really-lwlib, really-oldXMenu): Do not pass them.
1627
1ecb2d3f
JD
16282010-04-11 Jan Djärv <jan.h.d@swipnet.se>
1629
1630 * xmenu.c (apply_systemfont_to_dialog): New.
1631 (create_and_show_dialog): Call apply_systemfont_to_dialog if HAVE_XFT.
1632
3a4fa2f2
SM
16332010-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
1634
97e53006
SM
1635 * process.c (exec_sentinel): Preserve current-buffer.
1636
3a4fa2f2
SM
1637 * process.c (read_process_output): Move the save-current-buffer to
1638 apply to both the filter and the non-filter branches.
1639
88df7221
DN
16402010-04-10 Dan Nicolaescu <dann@ics.uci.edu>
1641
1642 * s/msdos.h (UNEXEC): New definition.
1643
5634ff85
YM
16442010-04-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1645
6eff5c3d
YM
1646 * dispextern.h (TRY_WINDOW_CHECK_MARGINS)
1647 (TRY_WINDOW_IGNORE_FONTS_CHANGE): New defines.
1648
1649 * xdisp.c (try_window): Change arg from CHECK_MARGINS to FLAGS.
1650 Don't abort with fonts change if TRY_WINDOW_IGNORE_FONTS_CHANGE is
1651 set in FLAGS. Callers with non-zero CHECK_MARGINS changed to use
1652 TRY_WINDOW_CHECK_MARGINS.
1653
1654 * xfns.c (Fx_show_tip): Undo last change. Call try_window with
5b253e9c
YM
1655 TRY_WINDOW_IGNORE_FONTS_CHANGE (Bug#2423). Subtract last glyph's
1656 width only when it is for padding.
5634ff85 1657
b13aef54
J
16582010-04-09 Jan Djärv <jan.h.d@swipnet.se>
1659
1660 * xfns.c (Fx_show_tip): Call try_window in a loop until
1661 fonts_changed_p is zero (Bug#2423).
1662
21d28484
EZ
16632010-04-08 Eli Zaretskii <eliz@gnu.org>
1664
1665 * xdisp.c (set_cursor_from_row): Don't dereference glyphs beyond
1666 the end of TEXT_AREA. (Bug#5856)
1667
0269ef77
JD
16682010-04-08 Jan Djärv <jan.h.d@swipnet.se>
1669
1670 * xsettings.c (XSETTINGS_FONT_NAME): Move XSETTINGS_FONT_NAME out of
1671 HAVE_GCONF.
1672
5930fe97
EZ
16732010-04-08 Eli Zaretskii <eliz@gnu.org>
1674
1675 * bidi.c (bidi_resolve_weak): Use prev.type_after_w1, instead of
1676 prev.orig_type, for resolving type of NSM. (Bug#5858)
1677
99852628
JD
16782010-04-08 Jan Djärv <jan.h.d@swipnet.se>
1679
1680 * xsettings.c (current_font, SYSTEM_FONT, XSETTINGS_FONT_NAME): New.
1681 (parse_xft_settings): Also check for XSETTINGS_FONT_NAME and save that
1682 in current_font.
1683 (init_gconf): Read value of SYSTEM_FONT and save it in current_font.
50426a04
JB
1684 (Ffont_get_system_normal_font, xsettings_get_system_normal_font):
1685 New functions.
1686 (syms_of_xsettings): Initialize current_font.
1687 defsubr Sfont_get_system_normal_font.
99852628
JD
1688
1689 * xsettings.h (Ffont_get_system_normal_font,
1690 xsettings_get_system_normal_font): Declare.
1691
1692 * xfns.c (extern xlwmenu_default_font): Remove.
1693 (Fx_create_frame): Remove setting of xlwmenu_default_font, moved
1694 to xlwmenu.c.
1695
1696 * menu.c (digest_single_submenu): If USE_LUCID and HAVE_XFT, encode
1697 menu items in UTF-8.
1698
1699 * xmenu.c: include xsettings.h and xlwmenu.h if USE_LUCID.
1700 (apply_systemfont_to_menu): New function.
1701 (set_frame_menubar, create_and_show_popup_menu): Call
1702 apply_systemfont_to_menu.
1703
7fc874c4
J
17042010-04-07 Jan Djärv <jan.h.d@swipnet.se>
1705
1706 * frame.h (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Don't use
1707 FRAME_LINE_TO_PIXEL_Y.
1708
1709 * xterm.c (x_set_window_size_1): Don't add border_width/height to
1710 pixelwidth/height.
1711
863bf481
DN
17122010-04-07 Dan Nicolaescu <dann@ics.uci.edu>
1713
5e5a3b92
DN
1714 Simplify code for HP machines.
1715 * m/hp800.h (LOAD_AVE_TYPE, LOAD_AVE_CVT, NO_REMAP): Do not define
1716 for GNU_LINUX, not needed.
1717 (UNEXEC, NEED_BSDTTY): Move definitions...
1718 * s/hpux10-20.h (UNEXEC, NEED_BSDTTY): ... here.
1719
863bf481
DN
1720 * m/iris4d.h (UNEXEC): Move definition ...
1721 * s/irix6-5.h (UNEXEC): ... here.
1722
3e6bec3b
JD
17232010-04-04 Jan Djärv <jan.h.d@swipnet.se>
1724
1725 * xfns.c (set_machine_and_pid_properties): New function.
1726 (Fx_create_frame): Call set_machine_and_pid_properties.
1727
2912322b
SM
17282010-04-03 Eli Zaretskii <eliz@gnu.org>
1729
1502b819
EZ
1730 * bidi.c (bidi_resolve_explicit, bidi_level_of_next_char): Check
1731 bidi_it->bytepos against ZV_BYTE instead of bidi_it->ch against
1732 BIDI_EOB. Fixes infloop with vertical cursor motion at ZV.
1733
2912322b
SM
1734 * w32fns.c (x_create_tip_frame): Copy `parms' before we modify it
1735 in this function. (Bug#5703)
1736
17372010-04-03 Chong Yidong <cyd@stupidchicken.com>
1738
1739 * nsterm.h: Fix last change.
1740
c435b432
DN
17412010-04-03 Dan Nicolaescu <dann@ics.uci.edu>
1742
a568f507
DN
1743 * m/intel386.h (NO_REMAP): Move definition ...
1744 * s/msdos.h (NO_REMAP): ... here.
1745
4cd9f6c2
DN
1746 * m/vax.h (CRT0_DUMMIES): Remove, unused.
1747
c435b432
DN
1748 * ecrt0.c: Remove MSDOS, m68k and __sparc__ conditionals, file not
1749 used on those platforms.
1750
42a2c622
DN
17512010-04-02 Dan Nicolaescu <dann@ics.uci.edu>
1752
1753 Remove extern errno declarations.
1754 * xterm.c:
1755 * xrdb.c:
1756 * w32term.c:
1757 * unexec.c:
1758 * unexaix.c:
1759 * sysdep.c:
1760 * process.c:
1761 * lread.c:
1762 * keyboard.c:
1763 * floatfns.c:
1764 * filelock.c:
1765 * fileio.c:
1766 * emacs.c (main):
1767 * ecrt0.c:
1768 * dispnew.c:
1769 * callproc.c:
1770 * buffer.c: Remove errno extern declarations.
1771 * s/netbsd.h (NEED_ERRNO): Remove.
1772
8224f93d
DN
17732010-04-01 Dan Nicolaescu <dann@ics.uci.edu>
1774
1775 Remove all uses of LIBX11_SYSTEM.
1776 * Makefile.in (LIBX11_SYSTEM): Remove.
1777 * s/msdos.h (LIBX11_SYSTEM): Do not define, define LIBS_SYSTEM
1778 instead.
1779
814062c7
EZ
17802010-04-01 Eli Zaretskii <eliz@gnu.org>
1781
ed68db4d
EZ
1782 Remove support for DJGPP v1.x (bug#5813).
1783
1784 * w16select.c (__dpmi_int): Remove DJGPP v1.x compatibility.
8224f93d
DN
1785 * s/msdos.h:
1786 * unexec.c (make_hdr, copy_text_and_data):
1787 * sysdep.c (wait_for_termination, sys_subshell):
ed68db4d 1788 * msdos.c (dos_set_window_size, msdos_set_cursor_shape)
52f4d8d5
EZ
1789 (IT_set_terminal_modes, __write, _rename, gethostname)
1790 (gettimeofday, alarm, fork, kill, dos_ttraw, dos_ttcooked)
1791 (run_msdos_command, abort): Remove DJGPP v1.x code and tests of
1792 the value of __DJGPP__.
ed68db4d
EZ
1793 (nice, pause, sigsetmask, sigblock): Remove DJGPP v1.x
1794 compatibility code.
8224f93d
DN
1795 * lread.c:
1796 * gmalloc.c (memalign):
1797 * fileio.c (Fcopy_file, check_executable, Ffile_modes):
1798 * emacs.c (main):
1799 * dosfns.c (init_dosfns):
ed68db4d
EZ
1800 * dired.c (file_name_completion_stat): Remove tests of __DJGPP__.
1801
52f4d8d5
EZ
18022010-04-01 Eli Zaretskii <eliz@gnu.org>
1803
814062c7
EZ
1804 * xdisp.c (set_cursor_from_row): Fix cursor positioning when the
1805 string with `cursor' property comes from an `after-string'
1806 overlay. (Bug#5816)
1807
0dc2e11d
GM
18082010-04-01 Glenn Morris <rgm@gnu.org>
1809
1810 * Makefile.in (LIBTIFF, LIBJPEG, LIBPNG, LIBGIF, LIBXPM, XFT_LIBS):
1811 Define as Makefile variables.
1812 (LIBX): Use above variables rather than directly using autoconf.
1813
1d29df59
DN
18142010-03-31 Dan Nicolaescu <dann@ics.uci.edu>
1815
1816 Clean up BSD_SYSTEM use.
1817 * xterm.c:
1818 * process.c:
1819 * emacs.c: Use HAVE_SYS_IOCTL_H instead of BSD_SYSTEM as a guard
1820 for including <sys/ioctl.h>.
1821 * sysdep.c (wait_without_blocking): Remove BSD_SYSTEM case, this
1822 code is only used for MSDOS.
1823
1546c559
JL
18242010-03-31 Juri Linkov <juri@jurta.org>
1825
1826 * image.c: Add `Qextension_data'.
1827 (syms_of_image): Initialize and staticpro `Qextension_data'.
1828 (Fimage_metadata): Rename from `Fimage_extension_data'.
1829 (gif_load): Put GIF extension data to the property
1830 `Qextension_data'.
1831
b8a1d5a1
CY
18322010-04-05 Chong Yidong <cyd@stupidchicken.com>
1833
1834 * xdisp.c (prepare_menu_bars): Don't call ns_set_doc_edited for
1835 terminal frames (Bug#5837).
1836
6521c534
CY
18372010-03-31 Chong Yidong <cyd@stupidchicken.com>
1838
1839 * nsfns.m (ns_set_doc_edited): Remove unused arg OLDVAL.
1840 * nsterm.h: Fix prototype.
1841
52c30783
EZ
18422010-03-31 Eli Zaretskii <eliz@gnu.org>
1843
1844 * xdisp.c (highlight_trailing_whitespace): Support highlight of
1845 trailing whitespace in right-to-left rows.
1846
855a0da7
SM
18472010-03-31 Stefan Monnier <monnier@iro.umontreal.ca>
1848
1849 Get rid of the direct_output optimizations.
1850 * keyboard.c (nonundocount): Remove extern declaration.
1851 (command_loop_1): Remove brittle optimisation for cheap and
1852 common operations.
1853 * xdisp.c (redisplay_internal): Don't bother checking
1854 redisplay_performed_directly_p any more.
1855 * sysdep.c (init_sys_modes): Don't call direct_output_forward_char
1856 any more.
1857 * dispnew.c (redisplay_performed_directly_p)
1858 (direct_output_for_insert, direct_output_forward_char):
1859 * dispextern.h (redisplay_performed_directly_p)
1860 (direct_output_for_insert, direct_output_forward_char): Remove.
1861 * cmds.c (nonundocount): Make it static.
1862
85738751 18632010-03-31 Bernhard Herzog <bh@intevation.de> (tiny change)
a6d676d9
CY
1864
1865 * menu.c (Fx_popup_menu): Use last_event_timestamp (Bug#4930).
1866
85738751 18672010-03-31 Jan Djärv <jan.h.d@swipnet.se>
67fee863
JD
1868
1869 * xdisp.c (note_mouse_highlight): Don't do highlight if pointer is
1870 invisible (Bug#5766).
1871
85738751 18722010-03-31 Adrian Robert <adrian.b.robert@gmail.com>
9ae6e189 1873
855a0da7
SM
1874 * xdisp.c (x_consider_frame_title, update_window_cursor):
1875 Remove HAVE_NS conditionals.
194d44e7 1876 (prepare_menu_bars) [HAVE_NS]: Call ns_set_doc_edited.
9ae6e189
CY
1877
1878 * nsfns.m (x_implicitly_set_name): If frame-title-format is t, use
1879 filename for the title.
1880 (ns_set_doc_edited): Do nothing if the selected window is a
1881 minibuffer window.
1882
1883 * nsterm.h: Add prototypes for ns_set_name_as_filename and
1884 ns_set_doc_edited.
1885
1886 * nsterm.m: Remove unneeded prototype.
1887
85738751 18882010-03-31 Glenn Morris <rgm@gnu.org>
25c72475
GM
1889
1890 * Makefile.in (SOME_MACHINE_OBJECTS): Ensure dbus stuff is always
1891 in the DOC file. (Bug#5336)
1892
85738751 18932010-03-31 Chong Yidong <cyd@stupidchicken.com>
f79a01db
CY
1894
1895 * xdisp.c (pos_visible_p): Revert 2008-01-25 change (Bug#5730).
1896
75d1428c
SM
18972010-03-31 Stefan Monnier <monnier@iro.umontreal.ca>
1898
1899 * window.c (keys_of_window): Remove redundant/overridden bindings.
1900
82043cfb
EZ
19012010-03-30 Eli Zaretskii <eliz@gnu.org>
1902
1903 * xdisp.c (BUFFER_POS_REACHED_P, move_it_in_display_line_to):
1904 Restore original behavior when the iterator is not bidi_p.
1905
b5dd0ae7
DN
19062010-03-30 Dan Nicolaescu <dann@ics.uci.edu>
1907
1908 * xdisp.c (syms_of_xdisp): Use intern_c_string instead of intern.
1909
bd924a5d
EZ
19102010-03-30 Eli Zaretskii <eliz@gnu.org>
1911
1912 * bidi.c (bidi_cache_iterator_state): Invalidate the cache if we
1913 are outside the range of cached character positions.
1914
3580374b
JB
19152010-03-30 Juanma Barranquero <lekktu@gmail.com>
1916
1917 * makefile.w32-in ($(BLD)/bidi.$(O)): Add dependency on w32gui.h.
1918
a7b02820
EZ
19192010-03-30 Eli Zaretskii <eliz@gnu.org>
1920
1921 Initial support for bidirectional editing.
1922
1923 * Makefile.in (obj): Include bidi.o.
1924 (bidi.o): New target.
1925
1926 * makefile.w32-in (OBJ1): Add $(BLD)/bidi.$(O).
1927 ($(BLD)/bidi.$(O)): New target.
1928
1929 * bidi.c: New file.
1930
1931 * buffer.h (struct buffer): New members bidi_display_reordering
1932 and bidi_paragraph_direction.
1933
1934 * buffer.c (init_buffer_once): Initialize bidi_display_reordering
1935 and bidi_paragraph_direction.
1936 (syms_of_buffer): Declare Lisp variables bidi-display-reordering
1937 and bidi-paragraph-direction.
1938 (Fbuffer_swap_text): Swap the values of
1939 bidi_display_reordering and bidi_paragraph_direction.
1940
1941 * dispextern.h (BIDI_MAXLEVEL, BIDI_AT_BASE_LEVEL): New macros.
1942 (bidi_type_t, bidi_dir_t): New types.
1943 (bidi_saved_info, bidi_stack, bidi_it): New structures.
1944 (struct it): New members bidi_p, bidi_it, paragraph_embedding,
1945 prev_stop, base_level_stop, and eol_pos.
1946 (bidi_init_it, bidi_get_next_char_visually): New prototypes.
1947 (IT_STACK_SIZE): Enlarge to 5.
1948 (struct glyph_row): New member reversed_p.
1949 <string_buffer_position>: Update prototype.
1950 (PRODUCE_GLYPHS): Set the reversed_p flag in the iterator's
1951 glyph_row if bidi_it.paragraph_dir == R2L.
1952 (struct glyph): New members resolved_level and bidi_type.
1953
1954 * dispnew.c (direct_output_forward_char): Give up if we need bidi
1955 processing or buffer's direction is right-to-left.
1956 (prepare_desired_row): Preserve the reversed_p flag.
1957 (row_equal_p): Compare the reversed_p attributes as well.
1958
1959 * xdisp.c (init_iterator): Initialize it->bidi_p. Call
1960 bidi_init_it and set it->paragraph_embedding from the current
1961 buffer's value of bidi_paragraph_direction.
1962 (reseat_1): Initialize bidi_it.first_elt.
1963 (set_iterator_to_next, next_element_from_buffer): Use the value of
1964 paragraph_embedding to determine the paragraph direction.
1965 (set_iterator_to_next): Under bidi reordering, call
1966 bidi_get_next_char_visually. Call bidi_paragraph_init if the
1967 new_paragraph flag is set in the bidi iterator.
1968 (next_element_from_buffer): If bidi_it.first_elt is set,
1969 initialize paragraph direction and find the first character to
1970 display in the visual order. If reseated to a middle of a line,
1971 prime the bidi iterator starting at the line's beginning. Handle
1972 the situation where we overstepped stop_charpos due to
1973 non-linearity of the bidi iteration. Likewise for when we back up
1974 beyond the previous stop_charpos. When moving across stop_charpos,
1975 record it in prev_stop.
1976 (display_line): Set row->end and it->start for the next row to the
1977 next character in logical order. Always extend reversed_p rows to
1978 the end of line, even if they end at ZV. Copy the reversed_p flag
1979 to the next glyph row. Keep calling set_cursor_from_row for
1980 bidi-reordered rows even if we already have a possible candidate
1981 for cursor position. Set row_end after all the row's glyphs have
1982 been produced, by looping over the glyphs. Record the position
1983 after EOL in it->eol_pos, and use it to set end_pos of the last
1984 row produced for a continued line.
1985 <Qright_to_left, Qleft_to_right>: New variables.
1986 (syms_of_xdisp): Initialize and staticpro them.
1987 (string_buffer_position_lim): New function.
1988 (string_buffer_position): Most of code moved to
1989 string_buffer_position_lim. Last argument and return value are
1990 now EMACS_INT; all callers changed.
1991 (set_cursor_from_row): Rewritten to support bidirectional text and
1992 reversed glyph rows.
1993 (text_outside_line_unchanged_p, try_window_id): Disable
1994 optimizations if we are reordering bidirectional text and the
1995 paragraph direction can be affected by the change.
1996 (append_glyph, append_composite_glyph)
1997 (produce_image_glyph, append_stretch_glyph): Set the
1998 resolved_level and bidi_type members of each glyph.
1999 (append_glyph): If the glyph row is reversed, prepend the glyph
2000 rather than appending it.
2001 (handle_stop_backwards): New function.
2002 (reseat_1, pop_it, push_it): Set prev_stop and base_level_stop.
2003 (reseat): call handle_stop_backwards to recompute prev_stop and
2004 base_level_stop for the new position.
2005 (handle_invisible_prop): Under bidi iteration, skip invisible text
2006 using bidi_get_next_char_visually. If we are `reseat'ed, init the
2007 paragraph direction. Update IT->prev_stop after skipping
2008 invisible text.
2009 (move_it_in_display_line_to): New variables prev_method
2010 and prev_pos. Compare for strict equality in
2011 BUFFER_POS_REACHED_P.
2012 (try_cursor_movement): Examine all the candidate rows that occlude
2013 point, to return the best match. If rows are bidi-reordered
2014 and point moved backwards, back up to the row that is not a
2015 continuation line, and start looking for a suitable row from
2016 there.
2017
2018 * term.c (append_glyph): Reverse glyphs by pre-pending them,
2019 rather than appending, if the glyph_row's reversed_p flag is set.
2020 Set the resolved_level and bidi_type members of each glyph.
2021
2022 * .gdbinit (pbiditype): New command.
2023 (pgx): Use it to display bidi level and type of the glyph.
2024 (pitx): Display some bidi information about the iterator.
2025 (prowlims, pmtxrows): New commands.
2026
32a8894e
DN
20272010-03-30 Dan Nicolaescu <dann@ics.uci.edu>
2028
2029 Remove all uses of C_DEBUG_SWITCH and LIBS_DEBUG.
2030 * s/usg5-4.h (LIBS_DEBUG):
2031 * s/irix6-5.h (C_DEBUG_SWITCH):
2032 * s/gnu-linux.h (LIBS_DEBUG):
2033 * s/darwin.h (LIBS_DEBUG):
2034 * s/bsd-common.h (LIBS_DEBUG):
2035 * s/aix4-2.h (LIBS_DEBUG, C_DEBUG_SWITCH):
2036 * m/iris4d.h (LIBS_DEBUG):
2037 * m/hp800.h (LIBS_DEBUG): Remove definitions.
2038
2039 * Makefile.in (LIBES): Remove reference to LIBS_DEBUG.
2040 (LIBS_DEBUG): Remove definition.
2041
649dbf36
CY
20422010-03-27 Chong Yidong <cyd@stupidchicken.com>
2043
2044 * process.c (Fmake_network_process): Don't apply Bug#5173 fix for
2045 Windows.
2046
cad4261f
YM
20472010-03-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2048
2049 * process.c (Fmake_network_process): Don't call turn_on_atimers around
2050 `connect' (Bug#5723).
2051
cd591dbc
HE
20522010-03-25 Helmut Eller <eller.helmut@gmail.com>
2053
2054 * process.c (Fmake_network_process): Call `select' for interrupted
2055 `connect' rather than creating new socket (Bug#5173).
2056
e867cb5d 20572010-03-24 Jan Djärv <jan.h.d@swipnet.se>
93318cbd
JD
2058
2059 * frame.c (x_get_arg): Handle RES_TYPE_BOOLEAN_NUMBER (bug #5736).
2060
2061 * xfns.c (Fx_create_frame): Make menuBar a RES_TYPE_BOOLEAN_NUMBER.
2062
2063 * dispextern.h (resource_types): RES_TYPE_BOOLEAN_NUMBER is new.
2064
e867cb5d 20652010-03-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
ad13a3ee
YM
2066
2067 * xfns.c (Fx_create_frame) [USE_LUCID]: Add BLOCK_INPUT around
2068 XLoadQueryFont.
2069
e867cb5d 20702010-03-24 Kenichi Handa <handa@m17n.org>
fbdc1721
KH
2071
2072 * coding.c (decode_coding_ccl): Fix previous change for the
2073 multibyte case.
fb608df3
KH
2074 (encode_coding_ccl): Don't setup ccl program here. Fix for the
2075 case that the output buffer is fullfilled.
2076 (encode_coding): Setup ccl program here.
fbdc1721 2077
e867cb5d 20782010-03-24 Andreas Politz <politza@fh-trier.de> (tiny change)
35cd7cd6
CY
2079
2080 * editfns.c (Fformat): Account for string precision when computing
2081 field width (Bug#5710).
2082
5845f0ed
DN
20832010-03-23 Dan Nicolaescu <dann@ics.uci.edu>
2084
814fb708
DN
2085 * s/gnu-linux.h (LIBS_SYSTEM): Remove, same as default.
2086
5845f0ed
DN
2087 Simplify LIBS_MACHINE definitions.
2088 * m/hp800.h (LIBS_MACHINE): Remove, same as default.
2089 * m/iris4d.h (LIBS_MACHINE): Likewise.
2090 * m/ibmrs6000.h (LIBS_MACHINE): Rename to LIBS_SYSTEM and move ...
2091 * s/aix4-2.h (LIBS_SYSTEM): ... here.
38e3487c 2092 * s/netbsd.h: Remove commented out code.
5845f0ed 2093
b7064064
DN
20942010-03-22 Dan Nicolaescu <dann@ics.uci.edu>
2095
df7734b2
DN
2096 Remove dead code dealing with POSIX_SIGNALS.
2097 * atimer.c (set_alarm): Remove dead code, all USG systems define
2098 POSIX_SIGNALS.
2099 * data.c (arith_error): Likewise.
2100 * keyboard.c (input_available_signal, handle_user_signal)
2101 (interrupt_signal): Likewise.
2102 * process.c (sigchld_handler): Likewise.
2103 (create_process): Remove if 0 code. Remove HPUX conditional when
2104 !defined (POSIX_SIGNALS), it cannot be true.
2105 * syssignal.h: Remove USG5_4 and USG conditionals when
2106 !POSIX_SIGNALS, they cannot be true.
2107
b7064064
DN
2108 * keyboard.c (Fset_input_interrupt_mode): Remove code depending on
2109 NO_SOCK_SIGIO, not used anymore.
2110
55da5ee3
DN
21112010-03-21 Dan Nicolaescu <dann@ics.uci.edu>
2112
0be96e3a
DN
2113 * m/vax.h (BSD_SYSTEM, BSD4_2): Remove conditionals, we only
2114 support vax on BSDs.
2115
55da5ee3
DN
2116 * m/ibmrs6000.h (ORDINARY_LINK): Move definition ...
2117 * s/aix4-2.h (ORDINARY_LINK): ... here.
2118
c0282183
AS
21192010-03-21 Andreas Schwab <schwab@linux-m68k.org>
2120
82c3d67a
AS
2121 * Makefile.in (abs_builddir): Define.
2122 (bootstrap_exe): Use it.
2123 (VPATH): Use $(srcdir) instead of @srcdir@.
c0282183 2124
3613edce
SM
21252010-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
2126
2127 * Makefile.in (bootstrap_exe): Use an absolute name.
2128
7f110ddc
DN
21292010-03-20 Dan Nicolaescu <dann@ics.uci.edu>
2130
22e87574
DN
2131 Remove support for old GNU/Linux using libc version 5.
2132 * m/alpha.h (LINUX_SBRK_BUG): Remove definition.
2133 * emacs.c (main): Remove code depending on LINUX_SBRK_BUG.
2134
05a670e6
DN
2135 Consolidate redundant definitions in s/bsd-common.h.
2136 * s/bsd-common.h (BSD4_2, TABDLY, TAB3, HAVE_TERMIOS, NO_TERMIO)
2137 (LIBS_DEBUG, SYSV_SYSTEM_DIR, UNEXEC, NARROWPROTO, BSD_PGRPS)
2138 (LDAV_SYMBOL, KERNEL_FILE): Define (or undefine) here instead of
2139 doing it in all files that include this one.
2140 * s/gnu.h (BSD4_2, TABDLY, TAB3, HAVE_TERMIOS, NO_TERMIO)
2141 (LIBS_DEBUG, SYSV_SYSTEM_DIR, UNEXEC, NARROWPROTO, BSD_PGRPS)
2142 (LDAV_SYMBOL, KERNEL_FILE): Remove.
2143 * s/freebsd.h (BSD4_2, TABDLY, TAB3, HAVE_TERMIOS, NO_TERMIO)
2144 (LIBS_DEBUG, SYSV_SYSTEM_DIR, UNEXEC, NARROWPROTO, BSD_PGRPS)
2145 (LDAV_SYMBOL, KERNEL_FILE): Remove.
2146 * s/netbsd.h (BSD4_2, TABDLY, TAB3, HAVE_TERMIOS, NO_TERMIO)
2147 (LIBS_DEBUG, SYSV_SYSTEM_DIR, UNEXEC, NARROWPROTO, BSD_PGRPS)
2148 (LDAV_SYMBOL, KERNEL_FILE): Remove.
2149
2968f561
DN
2150 Consolidate redundant definitions.
2151 * s/usg5-4.h (sigsetmask, PTY_TTY_NAME_SPRINTF): Do not define,
2152 it's undefined in all files that include this one.
2153 (POSIX_SIGNALS): Define here instead of doing it in all files that
2154 include this one.
2155 * s/irix6-5.h (sigsetmask, PTY_TTY_NAME_SPRINTF): Do not undef.
2156 (POSIX_SIGNALS): Do not define.
2157 * s/sol2-6.h (sigsetmask, PTY_TTY_NAME_SPRINTF): Do not undef.
2158 (POSIX_SIGNALS): Do not define.
2159 * s/unixware.h (sigsetmask, PTY_TTY_NAME_SPRINTF): Do not undef.
2160 (POSIX_SIGNALS): Do not define.
2161
15d25dc0
DN
2162 Remove support for old UNIX System V systems.
2163 * s/unixware.h: Add the contents of s/usg-5-4-2.h.
2164 * s/usg-5-4-2.h: Remove.
2165
07e339e4
DN
2166 Remove support for Solaris on PPC and for old versions.
2167 * s/sol2-6.h: Add the contents of s/sol-2.3.h, s/sol-2.4.h, s/sol-2.5.h.
2168 (LD_SWITCH_SYSTEM, USE_MMAP_FOR_BUFFERS): Remove #defines/#undef
2169 that cancel each other.
2170 * s/sol2-3.h:
2171 * s/sol2-4.h:
2172 * s/sol2-5.h: Remove.
2173 * m/ibmrs6000.h: Remove code for USG5_4, this file is only used on AIX.
2174 (NO_REMAP): Remove, unused.
2175 (UNEXEC): Move definition ...
2176 * s/aix4-2.h (UNEXEC): ... here.
2177
7f110ddc
DN
2178 * s/openbsd.h: Remove support for non-ELF and for systems that do
2179 not support shared libraries.
2180 * s/netbsd.h:
2181 * s/freebsd.h: Likewise.
2182
605f35cd
DN
21832010-03-20 Dan Nicolaescu <dann@ics.uci.edu>
2184
2185 Remove non-working support for lynxos 3.0.
2186 * s/lynxos.h: Remove file.
2187
2188 * unexec.c (unexec, adjust_lnnoptrs): Do not depend on
2189 COFF_BSD_SYMBOLS, nothing defines it anymore.
2190
aed71cf4
DN
21912010-03-20 Dan Nicolaescu <dann@ics.uci.edu>
2192
2193 Remove obsolete uses of HAVE_SHM.
2194 * emacs.c (standard_args):
2195 (Fdump_emacs):
2196 (syms_of_emacs): Remove code depending on HAVE_SHM.
2197
2198 * alloc.c: Remove HAVE_SHM dependent definition.
2199
2200 * Makefile.in (RUN_TEMACS): Do not depend on HAVE_SHM.
2201
aded53ff
GM
22022010-03-18 Glenn Morris <rgm@gnu.org>
2203
17284745
GM
2204 * emacs.c (USAGE4): Hard-code bug address.
2205 (REPORT_EMACS_BUG_ADDRESS, REPORT_EMACS_BUG_PRETEST_ADDRESS): Remove.
2206 (bug_reporting_address): Remove.
2207 (main): Don't call bug_reporting_address.
2208
aded53ff
GM
2209 * Makefile.in (XFT_LIBS, LIBXPM, LIBJPEG, LIBPNG, LIBTIFF, LIBGIF)
2210 (LIBGPM, LIBRESOLV): Set using autoconf rather than cpp.
2211
303500aa
CY
22122010-03-15 Chong Yidong <cyd@stupidchicken.com>
2213
2214 * xfns.c (Fx_create_frame):
2215 * frame.c (Vdefault_frame_scroll_bars): Put non-GTK X scroll-bars
2216 on left.
2217
cef3058f
CY
22182010-03-13 Andreas Politz <politza@fh-trier.de> (tiny change)
2219
2220 * editfns.c (Fformat): Account for string precision when computing
2221 field width (Bug#5710).
2222
a647d59d
CY
22232010-03-12 Chong Yidong <cyd@stupidchicken.com>
2224
4fa42018
CY
2225 * xfns.c (Fx_create_frame): Set default to Qright.
2226
a647d59d
CY
2227 * frame.c (Vdefault_frame_scroll_bars): Set default to Qright for
2228 all window systems.
2229
6da23aaa
EZ
22302010-03-12 Eli Zaretskii <eliz@gnu.org>
2231
a96f6398 2232 These changes remove termcap.c from the build on Posix platforms.
83d02def 2233 * Makefile.in (termcapobj): Move termcap.o from here...
6da23aaa
EZ
2234 (MSDOS_OBJ): ...to here.
2235 (termcapobj) [!LIBS_TERMCAP]: Remove specialized value, as it is
2236 now identical to when LIBS_TERMCAP is defined.
2237
2238 * term.c: Remove (ifdef'ed away) inclusion of termcap.h.
2239
2240 * cm.c: Remove (ifdef'ed away) inclusion of termcap.h.
2241
a96f6398 2242 * config.in: Regenerated. (See top-level ChangeLog.)
6da23aaa 2243
288f9fc0
CY
22442010-03-10 Chong Yidong <cyd@stupidchicken.com>
2245
2246 * Branch for 23.2.
2247
d48cd3f4
SM
22482010-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
2249
2250 Cleanup setup of gl_state in various parts of the code.
2251 * syntax.h (SETUP_BUFFER_SYNTAX_TABLE): New macro.
2252 (SETUP_SYNTAX_TABLE, SETUP_SYNTAX_TABLE_FOR_OBJECT):
2253 * syntax.c (find_defun_start, Fchar_syntax, Fmatching_paren)
2254 (skip_chars):
2255 * regex.c (regex_compile): Use it.
2256 (re_compile_pattern): Don't set gl_state.current_syntax_table since
2257 it's now set in regex_compile when/if we need it.
2258
618db430
SM
22592010-03-05 Stefan Monnier <monnier@iro.umontreal.ca>
2260
c0335e02
SM
2261 Make it possible to C-g in a tight bytecode loop again (bug#5680).
2262 * lisp.h (ELSE_PENDING_SIGNALS): New macro.
2263 (QUIT): Use it to consolidate code and remove redundancy.
2264 * bytecode.c (BYTE_CODE_QUIT): Use it as well.
2265
254c06a8
SM
2266 * regex.c (regex_compile): Setup gl_state as well.
2267
618db430
SM
2268 * syntax.c (skip_chars): Setup gl_state (bug#3823).
2269 (in_classes): Use CONSP before XCAR/XCDR.
2270
233f0c9f
CY
22712010-03-03 Chong Yidong <cyd@stupidchicken.com>
2272
2273 * keymap.c (Fwhere_is_internal): Use Fequal to compare
2274 definitions, so that keyboard macros are correctly handled
2275 (Bug#5481).
2276
75f80e63
EZ
22772010-03-02 Eli Zaretskii <eliz@gnu.org>
2278
2279 * coding.c (decode_coding_emacs_mule): Fixup pointers to buffer
2280 text that could be relocated inside the call to emacs_mule_char.
2281 (emacs_mule_char): Use CODING_DECODE_CHAR instead of DECODE_CHAR.
2282 (CODING_DECODE_CHAR): Add a comment describing its purpose.
2283
dcfb9bc4
KH
22842010-03-02 Kenichi Handa <handa@m17n.org>
2285
fc9a17bc
KH
2286 * character.c (parse_str_as_multibyte): Fix handling of the
2287 multibyte form of raw-bytes.
2288 (str_as_multibyte): Likewise.
2289
dcfb9bc4
KH
2290 * buffer.c (Fset_buffer_multibyte): Fix handling of the multibyte
2291 form of raw-bytes.
2292
412c01b6
CY
22932010-02-28 Chong Yidong <cyd@stupidchicken.com>
2294
2295 * charset.c (load_charset_map_from_file)
2296 (load_charset_map_from_vector): Zero out allocated
2297 charset_map_entries before using them.
2298
df7e1ea0
AS
22992010-02-27 Andreas Schwab <schwab@linux-m68k.org>
2300
2301 * w32uniscribe.c (uniscribe_check_otf): Fix length check.
2302
fe69a722
CY
23032010-02-27 Chong Yidong <cyd@stupidchicken.com>
2304
4ed28cf4
CY
2305 * font.c (font_parse_fcname): Recognize "Book", "Condensed",
2306 "Medium", and "Semi-Condensed" keywords in GTK names (Bug#5646).
fe69a722 2307
7379cfce
KH
23082010-02-26 Kenichi Handa <handa@m17n.org>
2309
f88cc4d6
KH
2310 * ftfont.c (ftfont_get_open_type_spec): Fix parsing of otf_spec.
2311
7379cfce
KH
2312 * xdisp.c (reseat_to_string): Fix previous change.
2313
cf2fdcfb
CY
23142010-02-26 David Reitter <david.reitter@gmail.com>
2315
2316 * nsfont.m (nsfont_draw): ns_antialias_text should be a
2317 Lisp_Object (Bug#4736).
2318
cc6c7c75
KH
23192010-02-25 Kenichi Handa <handa@m17n.org>
2320
2321 * xdisp.c (reseat_to_string): Fix previous change (bug#5609).
2322
32e737d7
JD
23232010-02-24 Jan Djärv <jan.h.d@swipnet.se>
2324
2325 * xterm.c (XTflash): Move declarations before statements.
2326
2327 * gtkutil.c (xg_get_gdk_display): Remove (unused).
2328 (xg_get_pixbuf_from_pix_and_mask, xg_create_frame_widgets)
2329 (xg_toggle_notify_cb, xg_set_toolkit_scroll_bar_thumb)
2330 (xg_create_tool_bar): Remove unused variables.
2331 (x_wm_set_size_hint): Move declarations before statements.
a73f9c9d 2332 (xg_create_frame_widgets): Remove variable grav.
32e737d7 2333
676cae9f
CY
23342010-02-21 Chong Yidong <cyd@stupidchicken.com>
2335
2336 * m/arm.h: Define the LIB_GCC flag to be -lgcc_s (Bug#5518).
2337
886cc2b8
SM
23382010-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
2339
2340 * term.c (fatal): Add a final \n if needed (bug#5596).
2341
ddb2d8e2
CY
23422010-02-18 Chong Yidong <cyd@stupidchicken.com>
2343
2344 * nsterm.m (ns_ring_bell): Revert last change (Bug#5569).
2345
2a4f8d3d
GM
23462010-02-18 Glenn Morris <rgm@gnu.org>
2347
2348 * callint.c (Finteractive): Doc fix.
2349
ebaf11b6
KH
23502010-02-18 Kazuhiro Ito <kzhr@d1.dion.ne.jp> (tiny change)
2351
886cc2b8
SM
2352 * coding.c (record_conversion_result):
2353 Handle CODING_RESULT_INSUFFICIENT_DST.
ebaf11b6
KH
2354 (decode_coding_object): Record CODING_RESULT_INSUFFICIENT_MEM on
2355 memory allocation error.
2356
d0396581
KH
23572010-02-17 Kenichi Handa <handa@m17n.org>
2358
886cc2b8
SM
2359 * coding.c (decode_coding_ccl): Don't setup ccl program here.
2360 Fix for the case that the output buffer is fullfilled.
d0396581
KH
2361 (decode_coding): Setup ccl program here. Keep looping when the
2362 decoder stopped because the output buffer is
2363 fullfilled (bug#5534).
2364
2365 * ccl.c (ccl_driver): Never reset ic to CCL_HEADER_MAIN.
2366
98599f74
JD
23672010-02-13 Jan Djärv <jan.h.d@swipnet.se>
2368
471e4f04 2369 * xterm.c (x_clear_frame_area): Call gtk_widget_queue_draw if USE_GTK,
98599f74 2370 bug #5571.
886cc2b8 2371 (XTflash): Use Gdk-routines if USE_GTK so scroll bars don't get
471e4f04 2372 overdrawn.
98599f74 2373
182659ae
JD
23742010-02-10 Jan Djärv <jan.h.d@swipnet.se>
2375
2376 * xsmfns.c (x_session_initialize): Move initialization of ice_fd and
2377 doing_interact here.
2378 (ice_connection_closed): New function.
2379 (x_session_check_input, smc_die_CB, ice_io_error_handler)
2380 (ice_conn_watch_CB, x_session_close): Call ice_connection_closed.
2381 (x_session_check_input): Call IceCloseConnection if IceProcessMessages
2382 returns I/O error.
2383 (ice_conn_watch_CB): Call add_keyboard_wait_descriptor on ice_fd,
2384 bug #5512.
2385
9be32c4e 23862010-02-08 Francis Devereux <francis@devrx.org> (tiny change)
14a225f9
CY
2387
2388 * nsfont.m (nsfont_open): The system's value for the font descent
2389 is negative, so round it down to avoid clipping.
2390
a2f3eb19
CY
23912010-02-06 Chong Yidong <cyd@stupidchicken.com>
2392
2393 * charset.c (load_charset_map_from_file)
2394 (load_charset_map_from_vector): Fix last change to use SAFE_ALLOCA
953d248c 2395 instead of xmalloc (Bug#5526). Suggested by Vivek Dasmohapatra.
a2f3eb19 2396
3088147c
CY
23972010-02-05 Chong Yidong <cyd@stupidchicken.com>
2398
2399 * charset.c (load_charset_map_from_file): Allocate large
2400 charset_map_entries structure on the heap rather than the stack.
2401 (Bug#5526).
2402
b57d9029
KH
24032010-01-31 Kenichi Handa <handa@m17n.org>
2404
2405 * font.c (font_parse_xlfd): If FONT is a font-entity and pixel
115e4fd3 2406 size in NAME is invalid, return -1 (Bug#5396).
b57d9029 2407
c67d885b
CY
24082010-01-31 Chong Yidong <cyd@stupidchicken.com>
2409
2410 * nsterm.m (ns_defined_color): Block input. Suggested by Mike
2411 <deactivated@gmail.com> (Bug#3605).
2412
8fab2362
CY
24132010-01-31 David De La Harpe Golden <david@harpegolden.net>
2414
2415 * fileio.c (Frename_file): Correctly rename symlinks to
2416 directories (Bug#5496).
2417
cb2a62f2
CY
24182010-01-31 Filipe Cabecinhas <filcab@gmail.com> (tiny change)
2419
2420 * nsterm.m (ns_ring_bell): Handle visible bell like X.
2421
944c7a26
AS
24222010-01-30 Andreas Schwab <schwab@linux-m68k.org>
2423
2424 * character.h (CHAR_PRINTABLE_P): Reparenthesize to avoid warning.
2425
c024ac08
CY
24262010-01-29 Chong Yidong <cyd@stupidchicken.com>
2427
2428 * frame.c (DEFAULT_ROWS): Change default to 35.
2429
2430 * xfns.c (x_default_font_parameter): Change default XFT font to
2431 monospace-10 (Bug#3643).
2432
af93af83
EZ
24332010-01-29 Eli Zaretskii <eliz@gnu.org>
2434
2435 * w32inevt.c (key_event): Remove unnecessary comparison of
2436 event->uChar.AsciiChar with 128.
2437
ca0eb708
CY
24382010-01-28 Chong Yidong <cyd@stupidchicken.com>
2439
b242dbfc
CY
2440 * fileio.c (Frename_file): Fix last change (Bug#5487).
2441
ca0eb708
CY
2442 * m/mips.h: Remove DATA_START. Suggested by Dan Nicolaescu.
2443
2444 * m/alpha.h: Don't define DATA_START on NetBSD (Bug#4629).
2445
45d45af5
JD
24462010-01-28 Jan Djärv <jan.h.d@swipnet.se>
2447
2448 * xfns.c (Fx_create_frame): Remove window size matching code from
2449 2010-01-15.
a73f9c9d 2450 (x_get_current_desktop, x_get_desktop_workarea): Remove.
45d45af5 2451
7e233730
JR
24522010-01-27 Jason Rumney <jasonr@gnu.org>
2453
2454 * w32inevt.c (w32_kbd_patch_key): Save the unicode character.
a292592c 2455 (key_event): Use unicode for characters 128 and higher (Bug#4567).
7e233730 2456
86e893e3
KH
24572010-01-27 Kenichi Handa <handa@m17n.org>
2458
2459 * regex.c (analyse_first): Fix setting of fastmap for unibyte
c8b96b2a 2460 pattern string (Bug#4209).
86e893e3 2461
8719abec
CY
24622010-01-27 David De La Harpe Golden <david@harpegolden.net>
2463
2464 * fileio.c (Frename_file): Call copy-directory and
2465 delete-directory for directories, in order to handle cross-device
2466 renaming (Bug#3353).
2467
844794c8
JD
24682010-01-25 Jan Djärv <jan.h.d@swipnet.se>
2469
aa3e13b5 2470 * xfns.c (Fx_create_frame): If frame height is too big, try
ac146f82 2471 sizes 24 and 10. Bug #3643.
844794c8 2472
bd4b5750
SM
24732010-01-24 Stefan Monnier <monnier@iro.umontreal.ca>
2474
8dc1adf6 2475 Try and fix bug#788, hopefully for real this time.
bd4b5750
SM
2476 * keymap.c (shadow_lookup): Add `remap' arg.
2477 (describe_map, describe_vector): Update calls to shadow_lookup.
2478 (Fwhere_is_internal): Fix up handling of `remapped_sequences' and
2479 `remapped' so this flag is applicable to `sequence'. Be careful to
8dc1adf6
SM
2480 perform remapping during shadow_lookup check of remapped_sequences.
2481
285d07e2
CY
24822010-01-24 Eric Bélanger <snowmaniscool@gmail.com> (tiny change)
2483
2484 * image.c (png_load): Use png_sig_cmp instead of the obsolete
2485 png_check_sig, which has been removed in libpng 1.4.
2486
c6d09b8d
CY
24872010-01-23 Giorgos Keramidas <keramida@ceid.upatras.gr> (tiny change)
2488
2489 * filelock.c: Include utmp.h only when HAVE_UTMP_H (FreeBSD 9.x
2490 lacks this header file).
2491
3d782998
YM
24922010-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2493
2494 * xdisp.c (draw_glyphs): Update `start' for left_overwritten case
2495 as in Emacs 22.
2496
2aff7c53
YM
24972010-01-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2498
2499 * lisp.h (make_pure_string): String pointer arg now points to const.
2500
2501 * alloc.c (find_string_data_in_pure, make_pure_string): String pointer
2502 args now point to const.
2503
74327f7a
EZ
25042010-01-22 Eli Zaretskii <eliz@gnu.org>
2505
2506 * lread.c (Fload): Don't treat files without .elc extension as
2507 byte-compiled if they are ``magic'', i.e. `openp' returned -2 for
2508 them. (bug#5303)
2509
4d1e6632
KH
25102010-01-20 Kenichi Handa <handa@m17n.org>
2511
2512 * coding.c (consume_chars): If ! multibyte and the encoder is ccl,
2513 treat the source as actual byte sequence.
2514
1fdede8f
AM
25152010-01-19 Alan Mackenzie <acm@muc.de>
2516
2517 Fix spurious before-change-functions invocation from (insert ?\n).
194d44e7 2518 * textprop.c (set_text_properties): Rename parameter
1fdede8f
AM
2519 `signal_after_change_p' to `coherent_change_p', and make the
2520 invocation of `modify_region' conditional on it.
2521
67477f30
JD
25222010-01-19 Jan Djärv <jan.h.d@swipnet.se>
2523
2524 * xsettings.c (apply_xft_settings): Save settings in Vxft_settings
2525 for debug purpose.
2526 (syms_of_xsettings): Declare xft-settings.
2527
244b023e
CY
25282010-01-18 Chong Yidong <cyd@stupidchicken.com>
2529
2530 * editfns.c (Fcurrent_time_string): Doc fix (Bug#5408).
2531
617364fe
CY
25322010-01-16 Stefan Monnier <monnier@iro.umontreal.ca>
2533
2534 * xterm.c (event_handler_gdk): Block input (Bug#5037).
2535
4fe22cdf
CY
25362010-01-16 Chong Yidong <cyd@stupidchicken.com>
2537
2538 * emacs.c (standard_args): Adjust arg priorities to reflect how
2539 they are processed in startup.el.
2540
e118d2be
AS
25412010-01-16 Andreas Schwab <schwab@linux-m68k.org>
2542
2543 * Makefile.in (lisp, shortlisp): Update.
2544
523ae620
SM
25452010-01-16 Stefan Monnier <monnier@iro.umontreal.ca>
2546
2547 * xterm.c (x_term_init): Instead of inhibiting GC while running Lisp
2548 code, link the new kboard into all_kboard before running Lisp code,
2549 and protect the new terminal with GCPRO (Bug#5365).
2550 (x_term_init): Remove unused var `atom'.
2551 (x_delete_display, x_delete_terminal): Remove unused var `i'.
2552
f0d13888
JD
25532010-01-15 Jan Djärv <jan.h.d@swipnet.se>
2554
2555 * xfns.c (x_get_current_desktop, x_get_desktop_workarea): New functions.
2556 (Fx_create_frame): Call x_get_current_desktop and x_get_desktop_workarea
2557 to find out usable size of the desktop. Don't make frames larger than
ac146f82 2558 this. Bug #3643.
f0d13888 2559
cc320f07
KH
25602010-01-15 Kenichi Handa <handa@m17n.org>
2561
2562 * xdisp.c (CHAR_COMPOSED_P): New arg END_CHARPOS. Callers changed.
2563
7ffdf101
CY
25642010-01-15 Chong Yidong <cyd@stupidchicken.com>
2565
2566 * nsterm.m (Qnone): Define.
2567
2568 * nsfns.m (Qnone): Move definition to nsterm.m.
2569
d12bd917
KH
25702010-01-14 Kenichi Handa <handa@m17n.org>
2571
2572 * coding.c (detect_coding_iso_2022): Fix handling of euc-xx coding
2573 systems.
2574
d9a7c140
KH
25752010-01-14 Kenichi Handa <handa@m17n.org>
2576
2577 Make auto-composition work on all buffers even if they are
2578 fundamental mode.
2579
2580 * composite.c (Vauto_composition_mode): New variable.
2581 (composition_compute_stop_pos): Check Vauto_composition_mode
2582 instead of Vauto_composition_function.
2583 (composition_adjust_point, Ffind_composition_internal): Likewise.
2584 (syms_of_composite): Declare Lisp variable
2585 "auto-composition-mode" here.
2586
63286bb2
CY
25872010-01-13 Chong Yidong <cyd@stupidchicken.com>
2588
2589 * xterm.c (x_term_init): Avoid garbage-collecting the new terminal
2590 during call to vendor-specific-keysyms (Bug#5365).
2591
c2623ee7
YM
25922010-01-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2593
2594 * keyboard.c (input_available_signal) [SYNC_INPUT]:
2595 Call SIGNAL_THREAD_CHECK (Bug#5333).
2596
2597 * atimer.c (alarm_signal_handler) [!SYNC_INPUT]:
2598 Call SIGNAL_THREAD_CHECK.
2599
0b5397c2
SM
26002010-01-13 Stefan Monnier <monnier@iro.umontreal.ca>
2601
2602 Try to fix bug#5314. This is probably not the final word, tho.
2603 * buffer.c (Fset_buffer_modified_p): Try and be careful not to modify
2604 recent-auto-save-p as a side-effect.
2605 * buffer.h (BUF_AUTOSAVE_MODIFF): New macro.
2606 * buffer.c (Fkill_buffer, reset_buffer):
2607 * editfns.c (Fsubst_char_in_region):
2608 * fileio.c (Finsert_file_contents, Fdo_auto_save)
2609 (Fset_buffer_auto_saved, Frecent_auto_save_p): Use it.
2610
dc954cb2
KH
26112010-01-13 Kenichi Handa <handa@m17n.org>
2612
2613 Display buffer name, etc. in mode line by composing correctly.
2614
2615 * xdisp.c (reseat_to_string): Call composition_compute_stop_pos if
2616 STRING is not nil.
0b5397c2 2617 (display_mode_element): Adjust for the change of
dc954cb2
KH
2618 decode_mode_spec and display_line.
2619 (decode_mode_spec): Change arg MULTIBYTE to STRING.
2620 (display_string): Handle the case that STRING is non-null and
2621 LISP_STRING is not nil.
2622
0b5397c2
SM
2623 * xterm.c (x_draw_composite_glyph_string_foreground):
2624 Pay attention to s->face->overstrike.
dc954cb2
KH
2625
2626 * composite.c (composition_reseat_it): Don't check PT if STRING is
2627 non nil.
2628
4a00eaca
YM
26292010-01-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2630
2631 * keyboard.c (read_char): Don't apply previous change when current
2632 buffer is unchanged by command execution.
2633
60abb287
JD
26342010-01-12 Jan Djärv <jan.h.d@swipnet.se>
2635
2636 * keyboard.c (read_char): Return after executing from special map.
2637
893db5bc
GM
26382010-01-12 Glenn Morris <rgm@gnu.org>
2639
2640 * emacs.c (REPORT_EMACS_BUG_PRETEST_ADDRESS): Set it to
2641 bug-gnu-emacs rather than emacs-pretest-bug.
2642
4d03ece0
CY
26432010-01-11 Chong Yidong <cyd@stupidchicken.com>
2644
2645 * nsterm.m (syms_of_nsterm): Initialize Qcontrol etc. before
2646 initializing the Lisp variables that depend on them.
2647
1df47e38
YM
26482010-01-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2649
2650 * xfns.c (x_set_menu_bar_lines) [!USE_X_TOOLKIT && !USE_GTK]:
2651 Clear areas that will not be updated after change of menu bar lines.
2652 Clear the menu bar window's current matrix when the window gets empty.
2653
2f1c6384
CY
26542010-01-09 Chong Yidong <cyd@stupidchicken.com>
2655
e398c61c
CY
2656 * intervals.h, textprop.c (extend_property_ranges): Return value
2657 and args changed. Discard properties that begin at or after the
2658 new end (Bug#5306).
2659
2660 * editfns.c (Fformat): Caller changed.
2661
e5a29a10
CY
2662 * nsterm.m (ns_set_default_prefs): Delete function.
2663 (syms_of_nsterm): Initialize ns_command_modifier,
2664 ns_control_modifier, ns_function_modifier, ns_antialias_text, and
2665 ns_antialias_threshold here, not in ns_term_init (Bug#4113).
2666
2f1c6384
CY
2667 * xdisp.c (pos_visible_p): Check for invisible text at the correct
2668 position (Bug#4040).
2669
d427a9fa
EZ
26702010-01-09 Eli Zaretskii <eliz@gnu.org>
2671
2672 * editfns.c (Ffloat_time): Doc fix.
2673
21b9df2f
JD
26742010-01-09 Jan Djärv <jan.h.d@swipnet.se>
2675
2676 * xfns.c (Fx_create_frame): Don't create frame larger than display
2677 by default bug#3643.
2678
4b00d3b1
YM
26792010-01-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2680
2681 * frame.h (FRAME_TOP_MARGIN_HEIGHT): New macro.
2682 (FRAME_LINE_TO_PIXEL_Y, FRAME_PIXEL_Y_TO_LINE): Take account of pseudo
2683 windows above internal border.
2684
2685 * window.h (WINDOW_MENU_BAR_P, WINDOW_TOOL_BAR_P): New macros.
2686 (WINDOW_TOP_EDGE_Y, WINDOW_BOTTOM_EDGE_Y): Take account of pseudo
2687 windows above internal border.
2688
2689 * xdisp.c (get_glyph_string_clip_rects, init_glyph_string): Don't treat
2690 tool bar windows specially.
2691
2692 * xfns.c (x_set_tool_bar_lines): Take account of menu bar height.
2693
2694 * xterm.c (x_after_update_window_line): Don't treat tool bar windows
2695 specially.
2696 (XTflash): Take account of menu bar height.
2697
2698 * w32term.c (x_after_update_window_line): Don't treat tool bar windows
2699 specially.
2700
5075d853
JD
27012010-01-08 Jan Djärv <jan.h.d@swipnet.se>
2702
ac146f82 2703 * dispnew.c (change_frame_size_1): newwidth == FRAME_COLS (f) must
5075d853
JD
2704 also be true before we can return early (bug #5339).
2705
474217c8
CY
27062010-01-06 David Reitter <david.reitter@gmail.com>
2707
2708 * nsfns.m (ns_get_screen): Rewrite, returning NULL for non-NS.
2709 (Fns_display_usable_bounds): Rewrite, computing bounds properly
2710 (Bug#3233).
2711
c0e6d47d
JD
27122010-01-06 Jan Djärv <jan.h.d@swipnet.se>
2713
d0cf45b7
JD
2714 * font.c (font_open_entity): Enable chache and call cached_font_ok
2715 for the driver if defined.
2716 (QCuser_spec): New symbol.
2717 (font_spec_from_name): Save name as user-spec.
2718 (font_load_for_lface): Keep user-spec instead of name.
2719 (font_open_by_name): Save name as user-spec.
2720 (syms_of_font): Initialize QCuser_spec.
b7f8e4f5 2721 (font_clear_prop): Clear name if it exists in font (bug#5157).
d0cf45b7
JD
2722
2723 * xftfont.c (xftfont_open): Call xftfont_add_rendering_parameters.
2724 (xftfont_add_rendering_parameters, xftfont_cached_font_ok): New.
2725 (syms_of_xftfont): Initialize xftfont_driver.cached_font_ok.
2726
2727 * font.h (struct font_driver): Add cached_font_ok.
2728
c0e6d47d
JD
2729 * xterm.c (x_clear_frame): Queue draw for scroll bars.
2730
7c583cd8
JD
27312010-01-05 Jan Djärv <jan.h.d@swipnet.se>
2732
2733 * xterm.c (x_new_font): Move code for setting rows/cols before
2734 resizing ...
ac146f82 2735 (x_set_window_size): ... to here. Bug #2568.
7c583cd8
JD
2736
2737 * gtkutil.c (xg_clear_under_internal_border): New function.
0b5397c2
SM
2738 (xg_frame_resized, xg_frame_set_char_size):
2739 Call xg_clear_under_internal_border.
7c583cd8 2740 (xg_update_scrollbar_pos): Clear under old scroll bar position.
69e2f185 2741
03f77f0a
CY
27422010-01-05 Chong Yidong <cyd@stupidchicken.com>
2743
2744 * keyboard.c (read_key_sequence): Catch keyboard switch after
2745 making a new tty frame (Bug#5095).
2746
2a1ef5be
KH
27472010-01-05 Kenichi Handa <handa@m17n.org>
2748
2749 * fontset.c (fontset_find_font): Fix getting the frame pointer.
2750
e3eb1dae
SM
27512010-01-04 Stefan Monnier <monnier@iro.umontreal.ca>
2752
2753 * dbusbind.c (xd_remove_watch): Avoid trying to convert a void* to
2754 Lisp_Object, preferring to convert a lisp_Object to a void* instead.
2755 (Fdbus_init_bus): Use XHASH to get a scalar value from a Lisp_Object.
2756
777013f2
MA
27572010-01-03 Michael Albinus <michael.albinus@gmx.de>
2758
2759 * dbusbind.c (xd_add_watch): Improve debug message.
2760 (xd_remove_watch): Improve debug message. If DATA is the session
2761 bus, unset D-Bus session environment.
2762 (Fdbus_init_bus): Pass the bus as argument to
2763 dbus_connection_set_watch_functions. (Bug#5283)
7c583cd8 2764
8932b1c2
CY
27652010-01-01 Chong Yidong <cyd@stupidchicken.com>
2766
87231e2c
CY
2767 * nsterm.m (ns_get_color): Fix buffer overflow (Bug#4763).
2768
4801c5fa
CY
2769 * lread.c (syms_of_lread): Make it clearer that these are the
2770 names of loaded files (Bug#5068).
2771
8932b1c2
CY
2772 * eval.c (run_hook_with_args): Handle the case where the global
2773 value has the obsolete single-function form (Bug#5026).
2774
11e3c684
CY
27752009-12-27 Chong Yidong <cyd@stupidchicken.com>
2776
2777 * minibuf.c (Fall_completions): Minor optimization.
2778
5b28ce35
EZ
27792009-12-26 Eli Zaretskii <eliz@gnu.org>
2780
5ce6e4f4
JB
2781 * .gdbinit (pgx): Fix display of composite glyphs.
2782 Display cmp.from and cmp.to as well.
2783 (pitx): Fix last change.
5b28ce35 2784
bcffff46
KH
27852009-12-25 Kenichi Handa <handa@m17n.org>
2786
2787 * composite.h (composition_adjust_point): Update prototype.
2788
2789 * composite.c (composition_reseat_it): Don't make a composition
2790 spanning over point.
2791 (CHAR_COMPOSABLE_P): Treat U+200C (ZWNJ) and U+200D (ZWJ) as
2792 composable characters.
2793 (composition_adjust_point): New arg NEW_PT. Callers changed.
2794
2795 * keyboard.c (command_loop_1): Force redisplay if the last point
2796 was within a composition.
2797 (adjust_point_for_property): Don't adjust point for automatic
2798 composition when called after buffer modification.
2799
3f670e9a
EZ
28002009-12-19 Eli Zaretskii <eliz@gnu.org>
2801
5ce6e4f4
JB
2802 * .gdbinit (pitx): Don't use enum names, use their values.
2803 Remove reference to non-existing value GET_FROM_COMPOSITION.
be996d82
EZ
2804 (pgx): Don't use enum names, use their values.
2805 (pitmethod): New helper command.
2806 (pitx): Use it to display iteration method.
2807 (pgrowit): New command.
2808
ad903955
EZ
2809 * makefile.w32-in ($(BLD)/cmds.$(O)): Depend on frame.h.
2810
3f670e9a
EZ
2811 Update dependencies in Makefile.in.
2812
2813 * Makefile.in (alloc.o): Depend on termhooks.h.
2814 (atimer.o): Depend on blockinput.h.
2815 (buffer.o): Depend on indent.h, keyboard.h, coding.h, keymap.h,
2816 and frame.h.
2817 (callint.o): Depend on systime.h, coding.h, and composite.h.
2818 (callproc.o): Depend on buffer.h.
2819 (casefiddle.o): Don't depend on charset.h.
2820 (casetab.o): Depend on character.h.
2821 (ccl.o): Depend on composite.h.
2822 (chartab.o): Depend on ccl.h.
2823 (cm.o): Depend on dispextern.h.
2824 (cmds.o): Depend on systime.h, coding.h, frame.h, and composite.h.
2825 (coding.o): Don't depend on $(INTERVALS_H).
2826 (composite.o): Don't depend on dispextern.h explicitly (it's in
2827 $(INTERVALS_H)). Depend on ccl.h.
2828 (data.o): Depend on systime.h, coding.h, composite.h,
2829 dispextern.h, font.h, and ccl.h.
2830 (dired.o): Depend on composite.h.
2831 (dispnew.o): Depend on coding.h. Don't depend explicitly on
2832 composite.h (it's in $(INTERVALS_H)).
2833 (doc.o): Depend on systime.h, coding.h, and composite.h.
2834 (editfns.o): Don't depend explicitly on dispextern.h.
2835 (emacs.o): Depend on frame.h and coding.h.
2836 (eval.o): Depend on coding.h, composite.h, and xterm.h.
2837 (fileio.o): Depend on frame.h and commands.h. Don't depend
2838 explicitly on dispextern.h.
2839 (filelock.o): Don't depend on epaths.h and charset.h. Depend on
2840 composite.h.
2841 (fns.o): Don't depend on termhooks.h.
2842 (font.o): Depend on buffer.h, composite.h, fontset.h, and xterm.h.
2843 (fontset.o): Depend on blockinput.h, atimer.h, systime.h,
2844 coding.h, $(INTERVALS_H), window.h, xterm.h.
2845 (frame.o): Depend on coding.h, composite.h, termhooks.h, and ccl.h.
2846 (fringe.o): Depend on blockinput.h, atimer.h, and systime.h.
2847 (ftfont.o): Depend on blockinput.h, atimer.h, systime.h, coding.h,
2848 fontset.h, ccl.h, and ftfont.h.
2849 (ftxfont.o): Depend on atimer.h, systime.h, fontset.h, and ccl.h.
2850 (gtkutil.o): Depend on dispextern.h and composite.h.
2851 (image.o): Depend on epaths.h, character.h, coding.h, composite.h,
2852 termhooks.h, and ccl.h.
2853 (indent.o): Depend on systime.h, coding.h, and $(INTERVALS_H).
2854 (intervals.o): Depend on systime.h and coding.h.
2855 (keyboard.o): Depend on composite.h and coding.h.
2856 (keymap.o): Depend on coding.h and frame.h.
2857 (lread.o): Depend on systime.h, frame.h, blockinput.h, and atimer.h.
2858 (macros.o): Depend on systime.h, coding.h, and composite.h.
2859 (menu.o): Depend on systime.h, coding.h, composite.h, window.h,
2860 and atimer.h.
2861 (minibuf.o): Depend on systime.h and coding.h. Don't depend on
2862 dispextern.h explicitly.
0b5397c2
SM
2863 (print.o): Depend on termhooks.h, coding.h, and ccl.h.
2864 Don't depend explicitly on dispextern.h and composite.h.
3f670e9a
EZ
2865 (process.o): Depend on character.h, xgselect.h, and sysselect.h.
2866 (regex.o): Don't depend on charset.h.
2867 (scroll.o): Depend on systime.h, coding.h, composite.h, and window.h.
2868 (search.o): Don't depend explicitly on composite.h.
2869 (sound.o): Depend on atimer.h and systime.h.
2870 (syntax.o): Don't depend explicitly on composite.h.
2871 (sysdep.o): Depend on coding.h and composite.h.
2872 (term.o): Depend on xterm.h and buffer.h.
2873 (terminal.o): Depend on dispextern.h, composite.h, and systime.h.
2874 (textprop.o): Don't depend on dispextern.h explicitly.
2875 (undo.o): Depend on dispextern.h.
2876 (window.o): Depend on coding.h and termhooks.h. Don't depend on
2877 dispextern.h and composite.h explicitly.
2878 (xdisp.o): Depend on ccl.h.
2879 (xfaces.o): Depend on coding.h and ccl.h.
2880 (xfns.o): Depend on $(INTERVALS_H) and ccl.h.
2881 (xfont.o): Depend on atimer.h, systime.h, fontset.h, and ccl.h.
2882 (xftfont.o): Depend on atimer.h, systime.h, fontset.h, ccl.h, and
2883 ftfont.h.
2884 (xgselect.o): New dependency.
2885 (xmenu.o): Depend on composite.h, keymap.h, and sysselect.h.
2886 (xselect.o): Depend on keyboard.h, coding.h, and composite.h.
2887 (xsettings.o): Depend on dispextern.h, keyboard.h, systime.h,
2888 coding.h, composite.h, blockinput.h, atimer.h, and termopts.h.
2889 (xsmfns.o): Depend on frame.h and dispextern.h.
2890 (xterm.o): Depend on intervals.h, keymap.h, xgselect.h, and
2891 sysselect.h.
2892
7a6f7fea
AS
28932009-12-19 Andreas Schwab <schwab@linux-m68k.org>
2894
2895 * font.c (Fclear_font_cache): Pass correct cache argument to
2896 font_clear_cache.
2897
f4c21026
AS
28982009-12-16 Andreas Schwab <schwab@linux-m68k.org>
2899
2900 * Makefile.in (prefix-args${EXEEXT}): Don't compile prefix-args.c
2901 twice.
2902
f7ab0997
CY
29032009-12-15 Chong Yidong <cyd@stupidchicken.com>
2904
2905 * xdisp.c (decode_mode_spec): Inhibit garbage collection when
2906 calling file-remote-p. Reported by Jim Meyering.
2907
fa8e045a
MA
29082009-12-15 Michael Albinus <michael.albinus@gmx.de>
2909
2910 * dbusbind.c (xd_retrieve_arg): Reorder declarations in order to
777013f2 2911 avoid compiler warnings. (Bug #5217)
fa8e045a 2912
a63dba42
KH
29132009-12-14 Kenichi Handa <handa@m17n.org>
2914
2915 * coding.c (decode_coding_iso_2022): Ignore ISO_CODE_SS2_7 (0x19)
2916 in 8-bit encoding.
2917
5ce6e4f4 29182009-12-13 Pat Thoyts <patthoyts@users.sourceforge.net> (tiny change)
36acb2a7
JD
2919
2920 * xfns.c (x_create_tip_frame): Set the extended window manager hint for
2921 tooltip windows.
2922
223e5fc6
JD
29232009-12-13 Jan Djärv <jan.h.d@swipnet.se>
2924
36acb2a7
JD
2925 * xterm.h (struct x_display_info): Add Xatom_net_window_type_tooltip and
2926 Xatom_net_window_type.
2927
2928 * xterm.c (x_term_init): Initialize Xatom_net_window_type_tooltip and
2929 Xatom_net_window_type.
2930
b8f00677
JD
2931 * xterm.c (my_log_handler): New function.
2932 (x_term_init): Set my_log_handler as log handler during gtk_init
5ce6e4f4 2933 so we can filter out buggy messages. (Bug #5120).
b8f00677 2934
e5f0bc9a
JD
2935 * xterm.c (xg_scroll_callback): Parameter list changed,
2936 use parameter GtkScrollType to determine scroll/line/page.
2937 Only allow dragging if a button < 4 is grabbed (bug #5177).
2938 (xg_end_scroll_callback): New function.
2939 (x_create_toolkit_scroll_bar): Pass xg_end_scroll_callback to
2940 xg_create_scroll_bar.
2941
2942 * gtkutil.c (xg_gtk_scroll_destroy): Remove XG_LAST_SB_DATA handling.
2943 (scroll_end_callback): Remove.
2944 (xg_create_scroll_bar): Add parameter end_callback, bind it to
2945 button-release-event. Replace value-changed event with change-value,
2946 bug #5177,
2947 (xg_event_is_for_scrollbar): Only return true if button is less than 4,
2948 bug #5177.
2949
2950 * gtkutil.h (XG_LAST_SB_DATA): Remove.
2951 (xg_create_scroll_bar): Add GCallback end_callback.
2952
223e5fc6
JD
2953 * xftfont.c (QClcdfilter): New variable.
2954 (xftfont_open): Parse constant names for RGBA, HINT_STYLE and LCDFILTER.
2955 (syms_of_xftfont): Initialize QClcdfilter.
2956
3c055b77
JD
29572009-12-12 Jan Djärv <jan.h.d@swipnet.se>
2958
2959 * xsettings.c (struct xsettings): Add member seen.
2960 (parse_xft_settings): Update member seen with what we have read.
ba68c0b0 2961 Return non-zero if Xft-settings have been parsed, 0 otherwise.
3c055b77
JD
2962 (apply_xft_settings): Only update Xft settings with what member seen
2963 indicates as new.
2964
05fe33ff
EZ
29652009-12-12 Eli Zaretskii <eliz@gnu.org>
2966
2967 * dispextern.h (struct text_pos): Use EMACS_INT;
2968 (struct glyph): Use EMACS_INT for charpos.
2969 (struct it): Use EMACS_INT for stop_charpos, end_charpos,
2970 region_beg_charpos, region_end_charpos,
2971 redisplay_end_trigger_charpos, and also for
2972 iterator_stack_entry.end_charpos and
2973 iterator_stack_entry.stop_charpos.
2974
e8d7886a
JD
29752009-12-12 Jan Djärv <jan.h.d@swipnet.se>
2976
5ce6e4f4 2977 * gtkutil.c (scroll_end_callback): New function (bug #5177).
e8d7886a
JD
2978 (xg_create_scroll_bar): Call scroll_end_callback on button release
2979 event (bug #5177).
2980 (xg_event_is_for_scrollbar): != replaced with ==.
2981
d0db2ec8
KH
29822009-12-12 Kenichi Handa <handa@m17n.org>
2983
2984 * ftfont.c (struct ftfont_info): New member matrix.
2985 (ftfont_open): Setup xftfont_info->matrix.
2986 (MFLTFontFT): New member matrix.
2987 (FLOOR, CEIL, ROUND): New macros.
2988 (ftfont_get_metrics): Handle matrix transformation.
2989 (ftfont_shape_by_flt): New arg matrix. Callers changed.
2990
2991 * xftfont.c (struct xftfont_info): New member matrix.
2992 (xftfont_open): Setup xftfont_info->matrix.
2993
29942009-12-10 Kenichi Handa <handa@m17n.org>
2995
2996 * xdisp.c (append_space_for_newline): Consider face-remapping.
2997
2cc7b62f
AS
29982009-12-09 Andreas Schwab <schwab@linux-m68k.org>
2999
b87dd913
AS
3000 * xsettings.c: Include "keyboard.h".
3001
eba5eb94
AS
3002 * gtkutil.c (xg_tool_bar_proxy_help_callback): Fix missing return.
3003
2cc7b62f
AS
3004 Fix implicit function declarations.
3005 * cmds.c: Include "frame.h".
3006 * frame.c: Include "font.h" also if !HAVE_WINDOW_SYSTEM.
3007 * frame.h: Move declaration of delete_frame outside of
3008 HAVE_WINDOW_SYSTEM.
3009
a4ef73c8
CY
30102009-12-09 Ken Brown <kbrown@cornell.edu> (tiny change)
3011
3012 * s/cygwin.h (G_SLICE_ALWAYS_MALLOC): New variable.
3013
3014 * emacs.c (main): Set the G_SLICE environment variable for Cygwin
3015 GTK builds.
3016
944a300c
AS
30172009-12-07 Andreas Schwab <schwab@linux-m68k.org>
3018
3019 * unexelf.c (unexec): Don't search for .data twice.
3020
022eef62
CY
30212009-12-05 Chong Yidong <cyd@stupidchicken.com>
3022
426ac949
CY
3023 * xdisp.c (push_display_prop): Don't set avoid_cursor_p. Return 0
3024 if push failed.
3025 (handle_line_prefix): Set avoid_cursor_p here. Check return value
3026 of push_display_prop (Bug#5000).
3027
022eef62
CY
3028 * xfaces.c (Fx_family_fonts): Handle 2009-07-14 change to return
3029 value of font_list_entities (Bug#5085).
3030
be95bee9
JB
30312009-12-04 Juanma Barranquero <lekktu@gmail.com>
3032
3033 Fix `string-to-number' to deal consistently with integers and floats.
3034 * lread.c (isfloat_string): New argument ignore_trailing to accept all
3035 trailing characters, not just whitespace.
3036 (read1): Pass new arg 0 to keep old behavior.
3037 * data.c (Fstring_to_number): Pass 1 to isfloat_string to ignore
3038 trailing chars, as it is already done for integers. Doc fixes.
3039 * lisp.h (isfloat_string): Add new arg to declaration of isfloat_string.
3040
24c2d7ce
EZ
30412009-12-04 Eli Zaretskii <eliz@gnu.org>
3042
0b5397c2
SM
3043 * dispextern.h (enum prop_idx) <AUTO_COMPOSED_PROP_IDX>:
3044 Delete unused enumeration value.
24c2d7ce 3045
7e694795
EZ
30462009-12-03 Eli Zaretskii <eliz@gnu.org>
3047
3048 * Makefile.in (lisp, shortlisp): Replace indian.el with indian.elc.
3049
84b31826
SM
30502009-12-03 Daniel Hackney <dan@haxney.org> (tiny change)
3051
3052 * process.c (Fmake_network_process): Fix up the tests for
3053 "connectionless socket", so they DTRT for seqpacket sockets as well.
3054
f00c449b
SM
30552009-12-03 Stefan Monnier <monnier@iro.umontreal.ca>
3056
3057 * process.c (Qseqpacket): New symbol.
3058 (HAVE_SEQPACKET): New macro.
3059 (Fmake_network_process): Accept new :type `seqpacket'.
3060 (init_process): Add `seqpacket' feature when applicable.
3061 (syms_of_process): Initialize Qseqpacket.
3062
8096a0ff
YM
30632009-12-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3064
3065 * font.c (font_load_for_lface, font_open_by_name): Don't store name
3066 if entity is Qnil.
3067
3e0de07f
SM
30682009-11-30 Stefan Monnier <monnier@iro.umontreal.ca>
3069
3070 * print.c (print_preprocess): Preprocess the key_and_value table of
3071 hashtables, even tho they're "hidden" (bug#5082).
3072
abeafb2a
JD
30732009-11-29 Jan Djärv <jan.h.d@swipnet.se>
3074
3075 * frame.c (frame_make_pointer_invisible)
3076 (frame_make_pointer_visible): Declare f before statements.
3077
4bf47195
EZ
30782009-11-28 Eli Zaretskii <eliz@gnu.org>
3079
3080 * Makefile.in [!AUTO_DEPEND]: Remove outdated comment about
3081 omitted dependencies on lisp.h.
3082
c525b3f2
JD
30832009-11-27 Jan Djärv <jan.h.d@swipnet.se>
3084
ece2d4ed
JD
3085 * xftfont.c (xftfont_end_for_frame): Just return if dpyinfo->display
3086 is NULL.
3087
3088 * xterm.c (x_delete_terminal): Set dpyinfo->display to NULL.
3089
3090 * frame.c (frame_make_pointer_invisible)
3e0de07f 3091 (frame_make_pointer_visible): Just return if there isn't any selected
ece2d4ed
JD
3092 frame.
3093
c525b3f2
JD
3094 * search.c (simple_search): Remove warning by making *p const.
3095
2f00e299
DN
30962009-11-26 Dan Nicolaescu <dann@ics.uci.edu>
3097
3098 * xdisp.c (power_letter): Remove duplicate const.
3099
084b049b
JD
31002009-11-25 Jan Djärv <jan.h.d@swipnet.se>
3101
a1fadc6f
JD
3102 * term.c (delete_tty): Remove check for last terminal (bug#4970).
3103
5ce6e4f4 3104 * xsettings.c: Revert changes from 2009-11-23. Just use Xft
084b049b
JD
3105 defaults (bug #5025).
3106
28259cac
SM
31072009-11-24 Stefan Monnier <monnier@iro.umontreal.ca>
3108
3109 * insdel.c (adjust_markers_for_delete): Move it in the
3110 right direction! (bug#4803)
3111
e8e14166
YM
31122009-11-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3113
3114 * font.c (font_open_entity): Don't use ASET if font_object is Qnil.
3115
3116 * xterm.c (x_new_font): Update f->scroll_bar_actual_width.
3117
86677b58
GM
31182009-11-24 Glenn Morris <rgm@gnu.org>
3119
3120 * frame.c (focus-follows-mouse): Mention mouse-autoselect-window.
3121
581e51e8
JD
31222009-11-23 Jan Djärv <jan.h.d@swipnet.se>
3123
cfc86c7a
JD
3124 * Makefile.in: Must create deps for ecrt0.o in its rule.
3125
581e51e8
JD
3126 * xfns.c (Fx_select_font): Try to convert Fontconfig name to Gtk name
3127 because that is what Gtk+ font dialog understands.
3128
3129 * font.c (font_make_object, Fcopy_font_spec): Use Fcopy_alist instead
3130 of Fcopy_sequence.
3131 (font_open_by_name): Put name given into QCname for font-object returned.
3132
3133 * frame.c (x_set_font): Save original font name as frame parameter
3134 font-parameter.
3135
3136 * xsettings.c (set_default_xft_settings): New function.
3137 (init_xfd_settings): Call set_default_xft_settings if no XSETTINGS window
3138 is found.
3139
8b264ecb
AS
31402009-11-22 Andreas Schwab <schwab@linux-m68k.org>
3141
3142 * search.c (simple_search): Avoid CHAR_TO_BYTE in inner loop when
3143 searching backwards through multibyte buffer.
3144
872870b2
JD
31452009-11-21 Jan Djärv <jan.h.d@swipnet.se>
3146
3147 * xterm.c: #include xgselect.h.
3148 (x_initialize): Call xgselect_initialize.
3149
3150 * xsettings.c (something_changedCB): C++ comments => C comments.
3151 (init_gconf): Do not deal with any GLib file descriptors, xg_select
3152 does that now.
3153
3154 * gtkutil.c (xg_timer, xg_process_timeouts, xg_start_timer)
3155 (xg_stop_timer, menu_grab_callback_cnt, menu_grab_callback)
3156 (scroll_bar_button_cb): Remove.
5ce6e4f4 3157 (create_menus): C++ comments => C comments. Don't bind grab-notify
872870b2
JD
3158 event.
3159 (xg_create_scroll_bar): Don't bind button-press-event and
3160 button-release-event.
3161
3162 * process.c: Include xgselect.h if defined (USE_GTK) ||
3163 defined (HAVE_GCONF).
3164 (wait_reading_process_output): Call xg_select for the same condition.
3165
3166 * xgselect.c (xg_select): New function to better integrate with
3167 GLib/Gtk event handling. Needed if GConf daemon dies/restarts.
3168
3169 * xgselect.h: New file, declare xg_select, xgselect_initialize.
3170
3171 * Makefile.in (XOBJ): Add xgselect.o.
3172
62a6e103
AS
31732009-11-21 Andreas Schwab <schwab@linux-m68k.org>
3174
0b5397c2
SM
3175 * character.h (STRING_CHAR, STRING_CHAR_AND_LENGTH):
3176 Remove ignored second argument. All callers changed.
62a6e103
AS
3177 * regex.c (STRING_CHAR, STRING_CHAR_AND_LENGTH, RE_STRING_CHAR)
3178 (RE_STRING_CHAR_AND_LENGTH): Likewise.
3179 * xdisp.c (string_char_and_length): Likewise.
3180
b0ca0f33
DN
31812009-11-21 Dan Nicolaescu <dann@ics.uci.edu>
3182
3183 * xterm.c (x_new_font):
3184 * print.c (print_object):
3185 * cmds.c (Fself_insert_command): Move declarations before statements.
3186
dd5a6279
CY
31872009-11-20 Ken Brown <kbrown@cornell.edu> (tiny change)
3188
3189 * s/cygwin.h: Remove unneeded linker flags.
3190
4a8e097d
JD
31912009-11-20 Jan Djärv <jan.h.d@swipnet.se>
3192
0d1d0d26
JD
3193 * xfns.c (x_default_font_parameter): Call xsettings_get_system_font.
3194
3195 * xsettings.h: Declare xsettings_get_system_font.
3196
3197 * xsettings.c (xsettings_get_system_font): New function.
3198 (init_gconf): No use initiating gconf unless we have Xft also.
3199 (syms_of_xsettings): Only provide system-font-setting if HAVE_XFT and
3200 HAVE_GCONF.
3201
4a8e097d
JD
3202 * gtkutil.c (xg_modify_menubar_widgets): If menubar is totally empty
3203 add a blank entry so it doesn't collapse into nothing.
3204
8ab1650e
SM
32052009-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
3206
3207 * lread.c (Funintern): Comment out last change.
3208
82c602f0
RS
32092009-11-19 Richard Stallman <rms@gnu.org>
3210
3211 * lread.c (Funintern): Error if symbol is t or nil.
3212
87e32266
SM
32132009-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
3214
3215 * insdel.c (make_gap_larger): Don't make as many assumptions about the
3216 representation of Lisp integers.
3217 Reported by MJ Chan <mjchan.inbox@gmail.com>.
3218
1b9ac145
AS
32192009-11-17 Andreas Schwab <schwab@linux-m68k.org>
3220
3221 * lisp.h: Remove declaration of Ffont_get_system_font.
3222 * xfns.c: Move include of "xsettings.h".
3223 * xsettings.h: Use EXFUN to declare Ffont_get_system_font.
3224
dfb3c4c6
JD
32252009-11-17 Jan Djärv <jan.h.d@swipnet.se>
3226
87e32266
SM
3227 * xsettings.c (something_changedCB, Ffont_get_system_font):
3228 Check use_system_font.
dfb3c4c6
JD
3229 (syms_of_xsettings): DEFVAR font-use-system-font.
3230
9370c1d8
AS
32312009-11-17 Andreas Schwab <schwab@linux-m68k.org>
3232
25fe851a
AS
3233 * xfns.c (x_default_font_parameter): Remove dead assignment.
3234
9370c1d8
AS
3235 * lisp.h (Fbyteorder, init_font, Ffont_get_system_font): Declare.
3236
637fa988
JD
32372009-11-17 Jan Djärv <jan.h.d@swipnet.se>
3238
87e32266 3239 * xftfont.c (xftfont_fix_match): Older versions of fontconfig do
21050de1 3240 not have FC_LCD_*. #define them if not there.
a6eb20d8 3241
87e32266 3242 * xsettings.c (parse_xft_settings, apply_xft_settings): Ditto.
a6eb20d8 3243
637fa988
JD
3244 * xterm.h (struct x_display_info): Add atoms and Window for xsettings.
3245
3246 * xterm.c (handle_one_xevent): Call xft_settings_event for
3247 ClientMessage, PropertyNotify and DestroyNotify.
3248 (x_term_init): If we have XFT, get DPI from Xft.dpi.
3249 Call xsettings_initialize.
3250
3251 * xftfont.c (xftfont_fix_match): New function.
3252 (xftfont_open): Call XftDefaultSubstitute before XftFontMatch.
3253 Call xftfont_fix_match after XftFontMatch.
3254
3255 * xfont.c (xfont_driver): Initialize all members.
3256
87e32266
SM
3257 * xfns.c (x_default_font_parameter):
3258 Try font from Ffont_get_system_font.
637fa988
JD
3259 Do not get font from x_default_parameter if we got one from
3260 Ffont_get_system_font.
87e32266 3261 (Fx_select_font): Get the defaut font name from :name of FRAME_FONT(f).
637fa988
JD
3262
3263 * w32font.c (w32font_driver): Initialize all members.
3264
3265 * termhooks.h (enum event_kind): CONFIG_CHANGED_EVENT is new.
3266
3267 * lisp.h: Declare syms_of_xsettings.
3268
87e32266
SM
3269 * keyboard.c (kbd_buffer_get_event, make_lispy_event):
3270 Handle CONFIG_CHANGED_EVENT.
637fa988
JD
3271
3272 * ftfont.c (ftfont_filter_properties): New function.
3273
3274 * frame.c (x_set_font): Remove unused variable lval.
3275
87e32266 3276 * font.h (struct font_driver): Add filter_properties.
637fa988
JD
3277
3278 * font.c (font_put_extra): Don't return if val is nil, it means
3279 boolean option is off.
3280 (font_parse_fcname): Collect all extra properties in extra_props
3281 and call filter_properties for all drivers with extra_props and
3282 font as parameter.
87e32266
SM
3283 (font_open_entity): Do not use cache, it does not pick up new
3284 fontconfig settings like hinting.
637fa988
JD
3285 (font_load_for_lface): If spec had a name in it, store it in entity.
3286
a73f9c9d 3287 * emacs.c (main): Call syms_of_xsettings.
637fa988
JD
3288
3289 * config.in: HAVE_GCONF is new.
3290
3291 * Makefile.in (GCONF_CFLAGS, GCONF_LIBS): New variables for HAVE_GCONF.
3292 xsettings.o is new.
3293
5a942932
KH
32942009-11-17 Kenichi Handa <handa@m17n.org>
3295
3296 * xdisp.c (x_produce_glyphs): Consider face-remapping when falling
3297 back to the default font in case that no suitable font is found.
3298
b7c7a4d1
SM
32992009-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
3300
3301 * menu.c (Fx_popup_menu) [HAVE_NS]: Use generic code for window edge.
3302 Suggested by Chad Brown <yandros@mit.edu>.
3303 (push_menu_item): Use MENU_ITEMS_ITEM_* names.
3304
072f1e39
JD
33052009-11-16 Jan Djärv <jan.h.d@swipnet.se>
3306
3307 * xmenu.c (x_menu_wait_for_event): Call XFlush before select.
3308
5d1e70a2
AS
33092009-11-14 Andreas Schwab <schwab@linux-m68k.org>
3310
87e32266 3311 * Makefile.in: Ignore errors from mkdir when creating deps directory.
5d1e70a2 3312
a53cfbe5
JD
33132009-11-14 Jan Djärv <jan.h.d@swipnet.se>
3314
473a99b7
JD
3315 * gtkutil.c (xg_update_frame_menubar): Do nothing if menubar already
3316 has a parent.
3317
a53cfbe5 3318 * Makefile.in: If AUTO_DEPEND is defined, make gcc generate
5ce6e4f4 3319 dependency files in deps/. Include those files into Makefile.
a53cfbe5
JD
3320
3321 * config.in: Generated (AUTO_DEPEND).
3322
f04bb9b2
MA
33232009-11-13 Michael Albinus <michael.albinus@gmx.de>
3324
b7c7a4d1 3325 * dbusbind.c (Vdbus_registered_objects_table): Rename from
f04bb9b2
MA
3326 Vdbus_registered_functions_table, because it contains also
3327 properties. Fix docstring.
b7c7a4d1 3328 (Fdbus_call_method, Fdbus_call_method_asynchronously): Fix docstring.
f04bb9b2 3329
8f11f7ec
SM
33302009-11-13 Stefan Monnier <monnier@iro.umontreal.ca>
3331
3332 * alloc.c (mark_object): Don't reprocess marked strings.
3333 Check vector's markbit earlier. Adjust calls to mark_vectorlike.
3334 (mark_vectorlike, mark_char_table): Assume the object is unmarked.
3335
8a605fe8
KH
33362009-11-13 Kenichi Handa <handa@m17n.org>
3337
8f11f7ec 3338 * category.c (word_boundary_p): Adjust for the change of the
8a605fe8
KH
3339 semantics of Vword_combining_categories.
3340 (Vword_combining_categories): Describe the slight change of the
3341 semantics.
3342
241c4680
EZ
33432009-11-13 Eli Zaretskii <eliz@gnu.org>
3344
3345 * menu.c (Fx_popup_menu): Call Fx_hide_tip only if HAVE_WINDOW_SYSTEM.
3346
3347 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Revert last change.
3348
5d58e44c
SM
33492009-11-12 Stefan Monnier <monnier@iro.umontreal.ca>
3350
3351 * xdisp.c (syms_of_xdisp): Fix typo in last change.
3352
5e13f9d3
JB
33532009-11-12 Juanma Barranquero <lekktu@gmail.com>
3354
3355 * makefile.w32-in: Update dependencies; add dependencies to lisp.h.
3356
cf54c754
DR
33572009-11-11 David Reitter <david.reitter@gmail.com>
3358
3359 * menu.c (Fx_popup_menu): Remove left-over debugging code and rename
3360 variables to fix 2009-11-09 change.
3361
a4ada374
DN
33622009-11-11 Dan Nicolaescu <dann@ics.uci.edu>
3363
91433552
DN
3364 * process.c (ifflag_def): Make flag_sym constant.
3365 (Fnetwork_interface_info): Use a constant pointer.
3366 (ifflag_table):
3367 * xfns.c (cursor_bits):
3368 * xdisp.c (power_letter):
3369 * termcap.c (speeds, esctab):
3370 * sysdep.c (baud_convert):
3371 * keyboard.c (lispy_accent_codes, modifier_names):
3372 * image.c (xbm_format, xpm_format, pbm_format, png_format)
3373 (jpeg_format, tiff_format, gif_format, svg_format)
3374 (interlace_start, interlace_increment, gs_format):
3375 * gtkutil.c (separator_names):
3376 * fringe.c (swap_nibble):
3377 * fns.c (base64_value_to_char, base64_char_to_value):
3378 * fileio.c (make_temp_name_tbl):
3379 * coding.c (suffixes): Make constant.
3380
f4265f6c
DN
3381 * frame.c (make_initial_frame):
3382 * buffer.c (init_buffer_once): Use make_pure_c_string instead of
3383 build_string.
3384 * alloc.c (syms_of_alloc): Build Vmemory_signal_data in pure memory.
3385
04420943
DN
3386 * s/freebsd.h:
3387 * s/netbsd.h: Remove code referring to non-existent file: unexsunos4.o.
3388
0a5d24ae
DN
3389 * Makefile.in: Add dependencies to lisp.h. Remove dependencies
3390 for non-existent files: unexmips.c, unexnext.c, abbrev.c, malloc.c.
3391
a4ada374
DN
3392 * xfns.c (syms_of_xfns): Use make_pure_string instead of build_string.
3393 * xterm.c (syms_of_xterm):
3394 * xfaces.c (syms_of_xfaces):
3395 * xdisp.c (syms_of_xdisp):
3396 * lread.c (syms_of_lread):
3397 * keyboard.c (syms_of_keyboard): Use make_pure_c_string instead of
3398 build_string.
91433552 3399
a4ada374
DN
3400 * doc.c (Fsnarf_documentation): Purecopy Vbuild_files.
3401
af98fc7f
SM
34022009-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
3403
8ab1650e 3404 * fns.c (Fplist_get): Merge the active and the commented out code.
af98fc7f 3405
e90292a9
JD
34062009-11-10 Jan Djärv <jan.h.d@swipnet.se>
3407
3408 * keyboard.h: Declare timer_check.
3409
3410 * keyboard.c (timer_check_2): New function that does what the old
3411 timer_check did.
3412 (timer_check): Call timer_check_2 until -1 or a non-zero time is
3413 returned, i.e. don't return -1 with timers pending.
3414
3415 * process.c: Remove extern declaration of timer_check.
3416
3417 * xmenu.c (x_menu_wait_for_event): Remove code that did a timeout
3418 even if timer_check returned -1.
3419
af98fc7f
SM
3420 * gtkutil.c (xg_dialog_response_cb): Data is now a struct
3421 xg_dialog_data.
e90292a9
JD
3422 (pop_down_dialog): Destroy widget (if any), cancel timer and unref
3423 the event loop.
3424 (xg_maybe_add_timer, xg_dialog_run): New functions (bug #4574).
3425 (xg_get_file_name, xg_get_font_name): Call xg_dialog_run (bug #4574).
3426 Destroy the dialog after xg_dialog_run.
3427
045b83c0
SM
34282009-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
3429
3430 * menu.c (Fx_popup_menu) [HAVE_NS]: Remove unused vars.
3431
1fb99a3a
JD
34322009-11-10 Jan Djärv <jan.h.d@swipnet.se>
3433
3434 * xmenu.c (xmenu_show): Must not be static after 2009-11-09 changes.
3435
04e452cb
JB
34362009-11-09 Juanma Barranquero <lekktu@gmail.com>
3437
3438 * menu.c [HAVE_NTGUI]: Declare current_popup_menu.
3439
ef7417fd
SM
34402009-11-09 Stefan Monnier <monnier@iro.umontreal.ca>
3441
3442 * menu.c (Fx_popup_menu): Consolidate versions from xmenu.c,
3443 w32menu.c, and nsmenu.m.
3444 Simplify the obsolete case where position is nil.
3445 (cleanup_popup_menu): New function, moved from nsmenu.m.
3446 (struct skp): Remove slot `notreal'.
3447 (single_keymap_panes, keymap_panes): Remove arg `notreal' and
3448 adjust callers.
3449 (single_menu_item): Adjust call to parse_menu_item.
3450 (syms_of_menu): Defsubr x-popup-menu.
3451 * menu.h (Vmenu_updating_frame): Consolidate declarations from *menu.c.
3452 (keymap_panes): Don't export any more.
3453 (mouse_position_for_popup, w32_menu_show, ns_menu_show)
3454 (xmenu_show): Declare.
3455 * keyboard.c (parse_menu_item): Remove arg `notreal'.
3456 (menu_bar_item, read_char_minibuf_menu_prompt): Adjust callers.
3457 * keyboard.h (parse_menu_item): Update declaration.
3458 * xmenu.c (Fx_popup_menu): Remove.
3459 (syms_of_xmenu): Don't defsubr x-popup-menu.
3460 * w32menu.c (Fx_popup_menu): Remove.
3461 (syms_of_w32menu): Don't defsubr x-popup-menu.
3462 * nsmenu.m (cleanup_popup_menu): Remove.
3463 (ns_menu_show): Rename from ns_popup_menu and remove all the code
3464 moved to menu.c's Fx_popup_menu.
3465 (Fx_popup_menu): Remove.
3466 (syms_of_nsmenu): Don't defsubr x-popup-menu, and don't initialize
3467 menu_items (it's done in menu.c already).
3468
424d6179
SM
34692009-11-08 Stefan Monnier <monnier@iro.umontreal.ca>
3470
3471 * keyboard.c (parse_menu_item): Handle `notreal' a bit earlier.
3472 Use `tem' less. Make sure KEYEQ holds a string or nil (bug#4879).
3473
c0df13a6 34742009-11-08 Chong Yidong <cyd@stupidchicken.com>
a20903d0
CY
3475
3476 * xmenu.c (Fx_popup_menu): Extract event timestamp. Pass it to
c0df13a6 3477 xmenu_show. Hide any tooltip before opening a menu.
a20903d0
CY
3478 (xmenu_show): New arg. Pass it to create_and_show_popup_menu.
3479 (create_and_show_popup_menu): New arg. Pass it to gtk_menu_popup.
3480
2de9f71c
SM
34812009-11-06 Stefan Monnier <monnier@iro.umontreal.ca>
3482
3483 Let integers use up 2 tags to give them one extra bit and thus double
3484 their range.
3485 * lisp.h (USE_2_TAGS_FOR_INTS): New macro.
3486 (LISP_INT_TAG, case_Lisp_Int, LISP_STRING_TAG, LISP_INT_TAG_P):
3487 New macros.
3488 (enum Lisp_Type): Use them. Give explicit values.
3489 (Lisp_Type_Limit): Remove.
3490 (XINT, XUINT, make_number) [!USE_LISP_UNION_TYPE]:
3491 (MOST_NEGATIVE_FIXNUM, MOST_POSITIVE_FIXNUM, INTMASK):
3492 Pay attention to USE_2_TAGS_FOR_INTS.
3493 (INTEGERP): Use LISP_INT_TAG_P.
3494 * fns.c (internal_equal): Simplify the default case.
3495 (sxhash): Use case_Lisp_Int.
3496 * data.c (wrong_type_argument): Don't check against Lisp_Type_Limit
3497 any more.
3498 (Ftype_of): Use case_Lisp_Int.
3499 (store_symval_forwarding): Take into account the fact that Ints can
3500 now have more than one tag.
3501 * buffer.c (syms_of_buffer): Use LISP_INT_TAG.
3502 buffer_slot_type_mismatch):
3503 * xfaces.c (face_attr_equal_p):
3504 * print.c (print_object):
3505 * alloc.c (mark_maybe_object, mark_object, survives_gc_p):
3506 Use case_Lisp_Int.
3507
323637a2
EZ
35082009-11-06 Eli Zaretskii <eliz@gnu.org>
3509
7ac65b38
EZ
3510 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce by further 30K.
3511
323637a2
EZ
3512 * alloc.c (make_pure_c_string): Fix last change to avoid compiler
3513 warning.
3514
e511451f
JD
35152009-11-06 Jan Djärv <jan.h.d@swipnet.se>
3516
3517 * gtkutil.c (xg_event_is_for_scrollbar): New function (bug#4870).
3518
3519 * gtkutil.h: Declare xg_event_is_for_scrollbar (bug#4870).
3520
3521 * xterm.c (handle_one_xevent): Call xg_event_is_for_scrollbar for
3522 ButtonPressRelease and MotionNotify (bug#4870).
3523
5e2327cf
DN
35242009-11-06 Dan Nicolaescu <dann@ics.uci.edu>
3525
5adc433e
DN
3526 * keymap.c (syms_of_keymap): Construct exclude_keys in pure memory.
3527
d67b4f80
DN
3528 * xterm.c (syms_of_xterm):
3529 * xselect.c (syms_of_xselect):
3530 * xmenu.c (syms_of_xmenu):
3531 * xfns.c (syms_of_xfns):
3532 * xfaces.c (syms_of_xfaces):
3533 * xdisp.c (syms_of_xdisp):
3534 * window.c (syms_of_window):
3535 * w32fns.c (syms_of_w32fns):
3536 * undo.c (syms_of_undo):
3537 * textprop.c (syms_of_textprop):
3538 * terminal.c (syms_of_terminal):
3539 * syntax.c (syms_of_syntax):
3540 * sound.c (syms_of_sound):
3541 * search.c (syms_of_search):
3542 * print.c (syms_of_print):
3543 * minibuf.c (syms_of_minibuf):
3544 * macros.c (syms_of_macros):
3545 * keymap.c (syms_of_keymap, initial_define_key)
3546 (initial_define_lispy_key):
3547 * keyboard.c (syms_of_keyboard):
3548 * insdel.c (syms_of_insdel):
3549 * image.c (syms_of_image):
3550 * fringe.c (syms_of_fringe):
3551 * frame.c (syms_of_frame):
3552 * fontset.c (syms_of_fontset):
3553 * fns.c (syms_of_fns):
3554 * fns.c (syms_of_fns):
3555 * fileio.c (syms_of_fileio):
3556 * fileio.c (syms_of_fileio):
3557 * eval.c (syms_of_eval):
3558 * doc.c (syms_of_doc):
3559 * dispnew.c (syms_of_display):
3560 * dired.c (syms_of_dired):
3561 * dbusbind.c (syms_of_dbusbind):
3562 * data.c (syms_of_data):
3563 * composite.c (syms_of_composite):
3564 * coding.c (syms_of_coding):
3565 * cmds.c (syms_of_cmds):
3566 * charset.c (define_charset_internal, syms_of_character):
3567 * ccl.c (syms_of_ccl):
3568 * category.c (syms_of_category, init_category_once):
3569 * casetab.c (syms_of_casetab):
3570 * casefiddle.c (syms_of_casefiddle):
3571 * callint.c (syms_of_callint):
3572 * bytecode.c (syms_of_bytecode):
3573 * buffer.c (keys_of_buffer, syms_of_buffer):
3574 * alloc.c (syms_of_alloc):
3575 * process.c (syms_of_process, init_process):
3576 * lread.c (syms_of_lread, init_obarray):
3577 * font.c (build_style_table):
3578 * emacs.c (syms_of_emacs, main): Replace calls to intern with
3579 intern_c_string, calls to make_pure_string with
3580 make_pure_c_string. Use pure_cons instead of Fcons.
3581
5e2327cf
DN
3582 * process.c (socket_options): Make it const.
3583 (set_socket_option, init_process): Use a const pointer.
3584
3585 * lread.c (intern_c_string): New function.
3586 (defvar_kboard, defvar_lisp, defvar_lisp_nopro, defvar_bool)
3587 (defvar_int): Uset it. Make the name const char*.
3588
3589 * lisp.h (defvar_kboard, defvar_lisp, defvar_lisp_nopro, defvar_bool)
3590 (defvar_int): Update prototypes.
3591 (DEFUN, EXFUN): Support for prototypes is now required.
3592 (intern_c_string): New prototype.
3593 (struct Lisp_Subr): Make symbol_name constant.
3594
3595 * font.c (struct table_entry): Remove unused member. Make NAMES
3596 constant.
3597 (weight_table, slant_table, width_table): Make constant.
3598
3599 * emacs.c (struct standard_args): Make name and longname constant.
3600
3601 * character.h (DEFSYM): Use intern_c_string.
3602
a56eaaef
DN
36032009-11-06 Stefan Monnier <monnier@iro.umontreal.ca>
3604
3605 * alloc.c (make_pure_c_string): New function.
3606
3607 * eval.c (Fautoload): Purecopy all arguments.
3608
f6a07420
KH
36092009-11-05 Kenichi Handa <handa@m17n.org>
3610
3611 * fileio.c (Finsert_file_contents): Be sure set coding-system of
3612 the buffer in case of replace.
3613
5d28d4b1
DN
36142009-11-04 Dan Nicolaescu <dann@ics.uci.edu>
3615
3616 * puresize.h (BASE_PURESIZE): Increase to 1620000.
3617
b349d111
SM
36182009-11-03 Stefan Monnier <monnier@iro.umontreal.ca>
3619
d528b1ce
SM
3620 * editfns.c (save_restriction_restore): Update the (pt/begv/vz)_markers
3621 when applicable (bug#4851).
3622
b349d111
SM
3623 * lisp.h: Make USE_LSB_TAG work with USE_LISP_UNION_TYPE.
3624 (P_): Support for prototypes is now required.
3625
c38eb027
CY
36262009-10-31 Chong Yidong <cyd@stupidchicken.com>
3627
3628 * frame.c (Fmake_frame_invisible, Fframe_visible_p): Doc fix
3629 (Bug#4827).
3630
0405f8d9
EZ
36312009-10-30 Eli Zaretskii <eliz@gnu.org>
3632
d528b1ce 3633 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Redefine to waste less pure space.
0405f8d9 3634
ca0a881a
DN
36352009-10-30 Dan Nicolaescu <dann@ics.uci.edu>
3636
3637 * puresize.h (BASE_PURESIZE): Increase to 1470000.
3638
d528b1ce
SM
3639 * lread.c (Fload): Purecopy the file name when building
3640 Vpreloaded_file_list.
ca0a881a 3641
47e0e0e4
JR
36422009-10-29 Jason Rumney <jasonr@wanchan.jasonrumney.net>
3643
3644 * w32fns.c (syms_of_w32fns): Change default value of
3645 w32-scroll-lock-modifier to nil. (Bug#2827)
3646
057bce6f
JB
36472009-10-26 Juanma Barranquero <lekktu@gmail.com>
3648
782a943e 3649 * minibuf.c (Fall_completions): Fix typos in docstring.
057bce6f 3650
242bc74c
AS
36512009-10-26 Andreas Schwab <schwab@redhat.com>
3652
3653 * puresize.h (PURESIZE_RATIO): Increase back to 10/6.
3654
522d013a
JB
36552009-10-26 Juanma Barranquero <lekktu@gmail.com>
3656
3657 * window.c (grow_mini_window): Comment out "delta >= 0" assertion.
3658 For delta < 0, skip check that only makes sense when the mini-window
3659 is going to be enlarged. (Bug#4534)
3660
18060980
CY
36612009-10-25 Chong Yidong <cyd@stupidchicken.com>
3662
3663 * keyboard.c (read_char_x_menu_prompt): Don't demand a prompt
3664 string in menu maps (Bug#4471).
3665
fec8f0fe
CY
36662009-10-24 Chong Yidong <cyd@stupidchicken.com>
3667
3668 * nsfns.m (ns_set_name, ns_set_name_as_filename): Don't call
3669 FRAME_NS_VIEW on terminal frames (Bug#4765).
3670
10d66ec0
AS
36712009-10-24 Andreas Schwab <schwab@linux-m68k.org>
3672
1cae01f7
AS
3673 * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_INTnn and
3674 DBUS_TYPE_UINTnn separately to get proper sign extension.
3675
58a12889
AS
3676 * dired.c (Ffile_attributes): Simplify now that FIXNUM_OVERFLOW_P
3677 can properly handle unsigned types.
d528b1ce 3678 (make_uid, make_gid): Remove.
58a12889 3679
987c9327
AS
3680 * lisp.h (FIXNUM_OVERFLOW_P): Fix last change to handle unsigned
3681 types again.
3682
522d013a 3683 * sysdep.c (procfs_ttyname): Fix sprintf format to match argument type.
10d66ec0
AS
3684 (system_process_attributes): Likewise.
3685
905a9ed3
DN
36862009-10-24 Dan Nicolaescu <dann@ics.uci.edu>
3687
3688 * keymap.c (Fmake_sparse_keymap): Purecopy the name.
3689
3690 * eval.c (Fautoload): Purecopy the filename. Simplify.
3691
3692 * category.c (Fdefine_category): Purecopy docstring.
3693
a599b3e8
AS
36942009-10-23 Andreas Schwab <schwab@linux-m68k.org>
3695
7b792fc9
AS
3696 * lisp.h (FIXNUM_OVERFLOW_P): Remove cast to avoid overflow.
3697
a599b3e8
AS
3698 * puresize.h (PURESIZE_RATIO): Decrease to 11/7.
3699
b35ac83e
CY
37002009-10-23 Chong Yidong <cyd@stupidchicken.com>
3701
3702 * window.c (Fwindow_edges, Fwindow_pixel_edges)
3703 (Fwindow_inside_edges, Fwindow_inside_pixel_edges): Doc fix
3704 (Bug#4775).
3705
e8903e00
SM
37062009-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
3707
3708 * fileio.c (syms_of_fileio): Initialize Vdirectory_sep_char.
3709 (init_fileio_once):
3710 * lisp.h (init_fileio_once): Remove.
3711 * emacs.c (main): Don't call init_fileio_once.
3712
8f43cbf3
DN
37132009-10-23 Dan Nicolaescu <dann@ics.uci.edu>
3714
3715 * puresize.h (BASE_PURESIZE): Increase to 1430000.
3716
26898943
AS
37172009-10-21 Andreas Schwab <schwab@linux-m68k.org>
3718
3719 * doprnt.c (doprnt): Fix overflow check.
3720
5c646d5a
JD
37212009-10-21 Jan Djärv <jan.h.d@swipnet.se>
3722
3132a7ea
JD
3723 * xterm.c (x_term_init): Remove XSynchronize call done for debugging.
3724
5c646d5a
JD
3725 * xterm.h (x_wait_for_event): Declare it.
3726
3727 * xterm.c (pending_event_wait): New variable.
3728 (handle_one_xevent): Set pending_event_wait.eventtype to 0 if we
3729 see pending_event_wait.eventtype.
3730 (handle_one_xevent): Don't change gravity when parent changes.
d528b1ce
SM
3731 (x_new_font): Call change_frame_size with new rows/columns before we
3732 try to resize the frame.
5c646d5a 3733 (x_wait_for_event): New function.
d528b1ce
SM
3734 (x_set_window_size_1): Don't change gravity unless change_gravity
3735 is set.
5c646d5a
JD
3736 Call XResizeWindow with FRAME_OUTER_WINDOW. If we are visible,
3737 don't change frame size, instead wait for the ConfigureNotify.
3738 (x_set_window_size): Call x_set_window_size_1 for USE_X_TOOLKIT also.
3739 (x_wm_set_size_hint): Remove ifdefs for USE_X_TOOLKIT.
3740 (x_initialize): Initialize pending_event_wait.
3741
3742 * xmenu.c (set_frame_menubar): Add internal border width to menu bar
3743 size.
3744
3745 * widget.c (EmacsFrameSetValues): Add comment.
3746 (EmacsFrameSetCharSize): Just call x_set_window_size.
3747
3748 * gtkutil.c (xg_frame_set_char_size): Flush events and call
3749 x_wait_for_event.
d528b1ce 3750 (flush_and_sync): Remove again.
5c646d5a
JD
3751 (xg_get_font_name): Suggest monospace if no previous font is known.
3752
e9c1637d
SM
37532009-10-20 Stefan Monnier <monnier@iro.umontreal.ca>
3754
3755 * character.c (char_resolve_modifier_mask): Don't resolve meta to the
46be764e 3756 8th bit, since that only made sense in the ASCII world (bug#4751).
e9c1637d 3757
5a72cccb
YM
37582009-10-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3759
3760 * xterm.c (XTread_socket) [!USE_GTK && HAVE_X_I18N]: Don't quit
3761 processing pending events when event is filtered for input method.
ab04798f 3762 (Bug#3681)
5a72cccb 3763
2629aa37
JB
37642009-10-20 Juanma Barranquero <lekktu@gmail.com>
3765
3766 * fns.c: Add #endif accidentally removed in previous change.
3767
c3417a74
DN
37682009-10-19 Dan Nicolaescu <dann@ics.uci.edu>
3769
3770 * fns.c: Remove code for unsupported system: MAC_OS.
3771 * image.c: Likewise. Include setjmp.h.
3772
9685cef2
JD
37732009-10-19 Jan Djärv <jan.h.d@swipnet.se>
3774
3775 * xterm.c (x_create_toolkit_scroll_bar): Don't allocate color for
3776 pixel -1 (bug #4742).
3777
d7306fe6
DN
37782009-10-19 Dan Nicolaescu <dann@ics.uci.edu>
3779
019d2c4c
DN
3780 * process.c (create_pty): Remove conditionals for no longer
3781 supported systems: UNIPLUS and RTU.
3782
ee6bacd4
DN
3783 * xterm.c:
3784 * xfns.c: Remove always true condition: XtSpecificationRelease >= 5.
3785
d7306fe6
DN
3786 * alloc.c: Do not define struct catchtag.
3787 * eval.c: Move struct catchtag definition ...
3788 * lisp.h: ... here.
3789
3790 * image.c: Move png.h #include earlier to avoid warnings.
3791
3792 * xterm.c:
3793 * xsmfns.c:
3794 * xselect.c:
3795 * xrdb.c:
3796 * xmenu.c:
3797 * xftfont.c:
3798 * xfont.c:
3799 * xfns.c:
3800 * xfaces.c:
3801 * xdisp.c:
3802 * window.c:
3803 * widget.c:
3804 * w32xfns.c:
3805 * w32uniscribe.c:
3806 * w32term.c:
3807 * w32select.c:
3808 * w32reg.c:
3809 * w32proc.c:
3810 * w32menu.c:
3811 * w32inevt.c:
3812 * w32heap.c:
3813 * w32font.c:
3814 * w32fns.c:
3815 * w32console.c:
3816 * w32.c:
3817 * w16select.c:
3818 * vm-limit.c:
3819 * unexsol.c:
3820 * unexec.c:
3821 * unexcw.c:
3822 * unexaix.c:
3823 * undo.c:
3824 * tparam.c:
3825 * textprop.c:
3826 * terminfo.c:
3827 * terminal.c:
3828 * termcap.c:
3829 * term.c:
3830 * syntax.c:
3831 * sound.c:
3832 * sheap.c:
3833 * search.c:
3834 * scroll.c:
3835 * region-cache.c:
3836 * regex.c:
3837 * ralloc.c:
3838 * process.c:
3839 * print.c:
b024548b
DN
3840 * nsterm.m:
3841 * nsselect.m:
3842 * nsmenu.m:
3843 * nsimage.m:
3844 * nsfont.m:
3845 * nsfns.m:
d7306fe6
DN
3846 * msdos.c:
3847 * minibuf.c:
3848 * menu.c:
3849 * marker.c:
3850 * macros.c:
3851 * keymap.c:
3852 * keyboard.c:
3853 * intervals.c:
3854 * insdel.c:
3855 * indent.c:
3856 * gtkutil.c:
3857 * ftxfont.c:
3858 * ftfont.c:
3859 * fringe.c:
3860 * frame.c:
3861 * fontset.c:
3862 * font.c:
3863 * fns.c:
3864 * floatfns.c:
3865 * filelock.c:
3866 * fileio.c:
3867 * emacs.c:
3868 * editfns.c:
3869 * dosfns.c:
3870 * doprnt.c:
3871 * doc.c:
3872 * dispnew.c:
3873 * dired.c:
3874 * dbusbind.c:
3875 * data.c:
3876 * composite.c:
3877 * coding.c:
3878 * cmds.c:
3879 * cm.c:
3880 * chartab.c:
3881 * charset.c:
3882 * character.c:
3883 * ccl.c:
3884 * category.c:
3885 * casetab.c:
3886 * casefiddle.c:
3887 * callproc.c:
3888 * callint.c:
3889 * bytecode.c:
3890 * buffer.c:
3891 * atimer.c: Include setjmp.h. (Bug#4643)
3892
fd5f21e6
SM
38932009-10-18 Stefan Monnier <monnier@iro.umontreal.ca>
3894
4c0354d7
SM
3895 Remove leftover table unibyte_to_multibyte_table.
3896 * character.c (unibyte_to_multibyte_table): Remove.
3897 (Funibyte_char_to_multibyte): Use MAKE_CHAR_MULTIBYTE.
3898 * charset.c (init_charset_once): Don't init unibyte_to_multibyte_table.
3899 * character.h (UNIBYTE_TO_CHAR): New macro.
3900 (MAKE_CHAR_MULTIBYTE): Use it.
3901 (unibyte_to_multibyte_table, unibyte_char_to_multibyte): Remove.
3902 * xdisp.c (get_next_display_element): USE ASCII_CHAR_P.
3903 (message_dolog, set_message_1):
3904 * search.c (Freplace_match):
3905 * editfns.c (Fcompare_buffer_substrings):
3906 * fns.c (Fcompare_strings): Use MAKE_CHAR_MULTIBYTE.
3907 (concat):
3908 * insdel.c (copy_text, count_size_as_multibyte):
3909 Use ASCII_CHAR_P and BYTE8_TO_CHAR.
3910 * term.c (produce_glyphs):
3911 * syntax.c (skip_chars): Use BYTE8_TO_CHAR.
3912 * regex.c (RE_CHAR_TO_MULTIBYTE):
3913 * cmds.c (internal_self_insert):
3914 * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use UNIBYTE_TO_CHAR.
3915
fd5f21e6
SM
3916 * cmds.c (internal_self_insert): `c' is already in "multibyte" form.
3917
4418646e
DN
39182009-10-17 Dan Nicolaescu <dann@ics.uci.edu>
3919
3920 * puresize.h (BASE_PURESIZE): Increase to 1310000.
3921
35f5c1d2
JB
39222009-10-16 Juanma Barranquero <lekktu@gmail.com>
3923
3924 * buffer.c (Fbuffer_name): Doc fix. (Bug#4728)
3925
a0cd8f6b
AR
39262009-10-15 Adrian Robert <Adrian.B.Robert@gmail.com>
3927
3928 * nsterm.h (NS_HAVE_NSINTEGER): Back out and augment with CGFloat,
3929 still needed under Tiger.
3930
3931 * nsterm.m (EmacsView-conversationIdentifier): Arg is long.
3932
3933 * m/amdx86-64.h: Don't set LIB_STANDARD and START_FILES under
3934 __Apple__.
3935
3936 * m/intel386.h: Remove DARWIN_OS/_LP64 special case.
3937
01a8d3fa
KH
39382009-10-15 Kenichi Handa <handa@m17n.org>
3939
3940 * print.c (print_object): Escape a symbol like "2E10" too.
3941
bf6c75c9 39422009-10-11 Adrian Robert <Adrian.B.Robert@gmail.com>
6e4780c5
JB
3943
3944 Cleanups and changes for 64-bit compile under Snow Leopard.
3945 Based on suggestions by Erik Charlebois.
bf6c75c9
AR
3946
3947 * nsfns.m (xw-color-values): Use CGFloat where appropriate.
3948
c5959062 3949 * nsfont.m (ns_char_width): Replace deprecated call.
bf6c75c9
AR
3950 (ns_findfonts, nsfont_list_family): Use long format in printf, and
3951 cast argument.
3952 (nsfont_open): Use ns_char_width() everywhere.
d528b1ce 3953 (ns_uni_to_glyphs, NSGlyphStorage): Use NS[U]Integer where appropriate.
bf6c75c9
AR
3954
3955 * nsgui.h (NSPoint, NSSize) [!__OBJC__]: Define and use CGFloat.
3956
3957 * nsimage.m (EmacsImage-setXBMColor:,-getPixelAtX:Y:): Use CGFloat
3958 where appropriate.
3959
3960 * nsmenu.m (EmacsMenu-addItemWithWidgetValue:): Use NSInteger
3961 where appropriate.
6e4780c5
JB
3962 (EmacsToolbar-addDisplayItemWithImage:idx:helpText:enabled:):
3963 Use stringWithUTF8String.
bf6c75c9
AR
3964 (EmacsDialogPanel-initWithContentRect:styleMask:): Fix signature.
3965
6e4780c5
JB
3966 * nsterm.h (EmacsView, EmacsMenu, EmacsToolbar, EmacsTooltip):
3967 Add formal protocol mention to inheritance.
bf6c75c9
AR
3968 [NS_HAVE_NSINTEGER]: Drop conditional and contents.
3969
6e4780c5
JB
3970 * nsterm.m (ns_color_to_lisp): Use CGFloat where appropriate.
3971 Fix printf format.
bf6c75c9
AR
3972 (ns_query_color): Use CGFloat where appropriate.
3973 (EmacsView<NSTextInput>, EmacsScroller): Fix method signatures.
ac146f82 3974 (EmacsScroller-mouseDown:): Use long format in printf, and cast
bf6c75c9
AR
3975 argument.
3976
3d87f118
AR
3977 * config.in (NS_HAVE_NSINTEGER): Drop.
3978
a95c8102
AR
3979 * dbusbind.c (dbus-method-return-internal)
3980 (dbus-method-error-internal): Use long format in printf, and cast
3981 argument.
3982
3983 * font.c (font_unparse_xlfd, font_unparse_fcname): Use long format
3984 in printf, and cast argument.
3985
6873acca 3986 * process.c (list_processes_1): Use long format in printf, and
a95c8102
AR
3987 cast argument.
3988
9ec6f100
GM
39892009-10-11 Glenn Morris <rgm@gnu.org>
3990
3991 * frame.c (Fframe_pixel_height): Doc fix. (Bug#4535)
3992
5be883cd
JD
39932009-10-08 Jan Djärv <jan.h.d@swipnet.se>
3994
3995 * gtkutil.c (create_menus): Call gtk_widget_set_size_request for
3996 menu bar with a small width so it doesn't enlarge the frame.
3997
d7a39b51
JB
39982009-10-08 Juanma Barranquero <lekktu@gmail.com>
3999
4000 * fontset.c (Fset_fontset_font): Fix typos in error messages.
4001
0c2b6f8e
GM
40022009-10-06 Glenn Morris <rgm@gnu.org>
4003
4004 * Makefile.in (emacs${EXEEXT}): Remove direct dependence on
4005 SOME_MACHINE_LISP (this enters indirectly via DOC).
4006
e02131a2
EZ
40072009-10-05 Eli Zaretskii <eliz@gnu.org>
4008
4009 * dired.c (Ffile_attributes): Doc fix. (Bug#4638)
4010
b4744254
EZ
40112009-10-04 Eli Zaretskii <eliz@gnu.org>
4012
4013 * xdisp.c (syms_of_xdisp) <unibyte-display-via-language-environment>:
4014 Doc fix.
4015
dbf64827
JB
40162009-10-03 Martin Rudalics <rudalics@gmx.at>
4017
4018 * window.c (Fdelete_window): Check WINDOW argument. (Bug#4618)
4019
e9a0aef8
MA
40202009-10-02 Michael Albinus <michael.albinus@gmx.de>
4021
d528b1ce 4022 * lisp.h (Qdelete_directory_internal): Remove, because it is not
e9a0aef8
MA
4023 used anymore outside fileio.c.
4024
4025 * w32fns.c (Fsystem_move_file_to_trash): Use delete-directory.
4026
64eb2b56
JB
40272009-10-01 Juanma Barranquero <lekktu@gmail.com>
4028
4029 * lisp.h (Qdelete_directory_internal):
4030 Declare, instead of Qdelete_directory.
4031
4032 * w32fns.c (Fsystem_move_file_to_trash): Use it.
4033
9d28c33e
SM
40342009-10-01 Stefan Monnier <monnier@iro.umontreal.ca>
4035
4036 * eval.c (Fcalled_interactively_p): Add `kind' argument.
4037
9d8f3bd9
MA
40382009-10-01 Michael Albinus <michael.albinus@gmx.de>
4039
9d28c33e 4040 * fileio.c (Fdelete_directory_internal): Rename from
9d8f3bd9
MA
4041 Fdelete_directory. It is not a command anymore. It has no file
4042 name handler.
4043
9694740b
SM
40442009-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
4045
4046 * xdisp.c (get_next_display_element): Use an enum in last change.
4047
748e162f
KH
40482009-09-28 Kenichi Handa <handa@m17n.org>
4049
9694740b 4050 * xdisp.c (get_next_display_element): Pay attention to
748e162f
KH
4051 unibyte_display_via_language_environment in handling
4052 Vnobreak_char_display.
4053
17efd58d
AR
40542009-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
4055
4056 * nsterm.h (ns_app_name): New extern variable.
4057
4058 * nsterm.m (ns_app_name): New variable.
4059 (ns_term_init): Set and use it.
4060 (ns_term_shutdown): Use it.
4061
4062 * nsmenu.m (ns_update_menubar): Use ns_app_name. Sync with xmenu.c.
4063 (EmacsMenu-clear:, ns_popup_dialog): Use ns_app_name.
4064
4065 * nsfns.m (ns_set_name_iconic, ns_set_name)
4066 (ns_set_name_as_filename, x-create-frame, ns-get-resource)
4067 (ns-set-resource): Use ns_app_name instead of NSProcessInfo call.
4068
9694740b
SM
4069 * menu.c (find_and_return_menu_selection) [HAVE_NS]:
4070 Remove double-casting in client_data comparison.
31c2d412 4071
3208cb35
YM
40722009-09-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4073
4074 * keyboard.c (make_lispy_event): Remember last wheel direction.
4075 (syms_of_keyboard) <wheel_syms>: Compute array size at compile time.
4076
b7d552d6
GM
40772009-09-26 Glenn Morris <rgm@gnu.org>
4078
4079 * Makefile.in (MSDOS_SUPPORT) [MSDOS]: Remove unneeded '/' in
4080 internal.elc. Add term/pc-win.elc.
4081 (WINDOW_SUPPORT) [HAVE_X_WINDOWS]: Add term/common-win.elc and
4082 term/x-win.elc.
4083 (WINNT_SUPPORT) [WINDOWSNT]: Add term/common-win.elc and
4084 term/w32-win.elc.
4085 (NS_SUPPORT): New.
4086 (lisp): Add NS_SUPPORT.
4087 (SOME_MACHINE_LISP): Add term/w32-win.elc and emacs-lisp/easymenu.elc.
4088
4ff670a8
DR
40892009-09-25 David Reitter <david.reitter@gmail.com>
4090
4091 * nsmenu.m (EmacsMenu-clear): Recognize application menu
4092 on Mac OS X 10.6+ (bug#4513).
4093
feabfb6c
JB
40942009-09-24 Juanma Barranquero <lekktu@gmail.com>
4095
4096 * frame.c (xrdb_get_resource): Return nil for empty string resources;
d528b1ce
SM
4097 some parts of Emacs code (like font selection) don't grok them.
4098 See http://lists.gnu.org/archive/html/emacs-devel/2009-09/msg00528.html
feabfb6c 4099
de59072a
AS
41002009-09-24 Andreas Schwab <schwab@redhat.com>
4101
4102 * coding.c (decode_coding_iso_2022): Fix operator precedence.
4103
a489517b
JB
41042009-09-24 Juanma Barranquero <lekktu@gmail.com>
4105
4106 * dired.c (Fdirectory_files): Fix typo in docstring.
4107
0592970c
AR
41082009-09-23 Adrian Robert <Adrian.B.Robert@gmail.com>
4109
4110 * nsterm.m (EV_TIMESTAMP, x_set_window_size)
4111 (EmacsApp-application:openFiles:): Remove GNUstep conditionals.
4112 (EmacsScroller-setPosition:portion:whole:): Remove -display call
4113 under GNUstep.
4114 (EmacsView-initFrameFromEmacs:): Set autoresizing mask.
4115
4116 * nsfont.m (ns_glyph_metrics): Remove GNUstep conditional for
4117 glyph advancement.
4118
48e8a88b
AR
41192009-09-22 Adrian Robert <Adrian.B.Robert@gmail.com>
4120
4121 * nsterm.m (CGContextSetFontRenderingMode): Drop declaration.
b3aac06a 4122 (EmacsScroller-mouseDown:): Use SCROLL_BAR_FIRST_DELAY.
48e8a88b
AR
4123
4124 * nsmenu.m (EmacsMenu-menuNeedsUpdate): Ignore if frame has been
4125 deleted (bug #4492).
4126
e14f0a78
AR
4127 * nsfont.m (Vns_reg_to_script): New lisp variable.
4128 (syms_of_nsfont): Declare it.
4129 (ns_registry_to_script): New function.
4130 (ns_get_req_script): Call it.
4131 (ns_findfonts): Don't give up on non-unicode registry.
4132
4133 * font.c (DEFAULT_ENCODING) [HAVE_NS]: Remove special case.
4134
5b650faa
SM
41352009-09-20 Tom Tromey <tromey@redhat.com>
4136
4137 * eval.c (find_handler_clause): Make stack-trace-on-error work in
4138 batch mode (bug#4228).
4139
a489517b 41402009-09-18 Rob Christie <robchristie@gmail.com> (tiny change)
0bae4e09
AR
4141
4142 * nsmenu.m (EmacsMenu-parseKeyEquiv:): Parse key equivalent more
a489517b 4143 carefully. (Bug #4339)
0bae4e09 4144
fcfe06f3
CY
41452009-09-18 Chong Yidong <cyd@stupidchicken.com>
4146
d798ba87 4147 * syntax.c (Fchar_syntax): Minor doc fix (Bug#4400).
fcfe06f3 4148
31642728
AR
41492009-09-18 Adrian Robert <Adrian.B.Robert@gmail.com>
4150
4151 * emacs.c (inhibit_x_resources): Update doc string for NS.
4152 (main) [HAVE_NS]: Don't process --no-init-file option. Remove
cff11156 4153 legacy code for -NXHost. Fix error printf in daemon case.
31642728
AR
4154
4155 * nsterm.h (ns_no_defaults): Remove.
4156
4157 * nsterm.m (ns_no_defaults): Remove.
4158 (ns_term_init): Switch ns_no_defaults -> inhibit_x_resources.
4159 (ns_use_qd_smoothing): Remove legacy variable.
6516d10a
AR
4160 (EmacsView-windowShouldZoom:): Set frame left_pos, top_pos and
4161 don't update the NSWindow itself.
4162 (EmacsView-windowWillUseStandardFrame:defaultFrame:): Improve
a489517b 4163 state detection and store user rect ourselves. (Bug #3581)
31642728
AR
4164
4165 * nsfont.m (nsfont_draw) [NS_IMPL_COCOA]: Don't use
4166 ns_use_qd_smoothing.
4167
4168 * nsfns.m (x_get_string_resource): Ape just-previous changes to other
4169 platform versions. Drop support for emacs-20-style face specs.
8aad0aea 4170 (x-close-connection): Drop PSFlush() under OS X.
a489517b 4171 (x-focus-frame): Activate the app first. (Bug #4180)
31642728 4172
8686ac71
JB
41732009-09-17 Juanma Barranquero <lekktu@gmail.com>
4174
4175 * emacs.c (inhibit_x_resources): New variable.
4176 (main) [HAVE_NS]: Don't process --quick command line option.
4177 (syms_of_emacs) <inhibit-x-resources>: DEFVAR_BOOL it.
4178
4179 * lisp.h (inhibit_x_resources): Declare it extern.
4180
4181 * w32reg.c (x_get_string_resource):
4182 * xrdb.c (x_get_string_resource): Obey inhibit_x_resources.
4183
e227ba05
EZ
41842009-09-17 Eli Zaretskii <eliz@gnu.org>
4185
362654a6
JB
4186 * Makefile.in (MSDOS_SUPPORT, SOME_MACHINE_LISP):
4187 Add lisp/term/internal.elc.
e227ba05 4188
742d40e8
SM
41892009-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
4190
4191 * frame.c (x_get_resource_string): Re-add for non-toolkit builds
4192 (bug#4461).
4193
005bd5a2
DN
41942009-09-17 Dan Nicolaescu <dann@ics.uci.edu>
4195
4196 * puresize.h (BASE_PURESIZE): Increase to 1290000.
4197
4198 * Makefile.in (OTHER_FILES): Define using autoconf, not cpp.
4199 (OBJECTS_MACHINE): Remove, unused.
4200
f9af9719
SM
42012009-09-16 Stefan Monnier <monnier@iro.umontreal.ca>
4202
4203 * frame.c (x_get_resource_string): Remove unused.
4204
0307c7d2
JD
42052009-09-15 Jan Djärv <jan.h.d@swipnet.se>
4206
4207 * xterm.c (x_new_font): Call change_frame_size before calling
4208 x_set_window_size, in case frame size won't change.
4209
4210 * frame.c (x_set_font): Remove dead code.
4211
428b13d6
SM
42122009-09-15 Stefan Monnier <monnier@iro.umontreal.ca>
4213
4214 * lread.c (Fload): Also run do-after-load-evaluation while dumping.
4215
5766c380
SM
42162009-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
4217
4218 * lread.c (Fload): Don't output a message after loading an obsolete
4219 package any more (done in Lisp now).
4220
2fd0161b
CY
42212009-09-12 Chong Yidong <cyd@stupidchicken.com>
4222
4223 * fns.c (syms_of_fns): Doc fix (Bug#4227).
4224
bc5e75b6
SM
42252009-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
4226
4227 * keymap.c (Fwhere_is_internal): Use nconc2.
4228
c31c985e
AM
42292009-09-11 Alan Mackenzie <acm@muc.de>
4230
4231 * dispnew.c (Fsend_string_to_terminal): Amend doc string to cover
4232 batch mode.
4233
78012bd2
AS
42342009-09-11 Andreas Schwab <schwab@linux-m68k.org>
4235
4236 * xdisp.c (display_mode_element): Detect cycles.
4237
9d889332
SM
42382009-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
4239
4240 * keymap.c (where_is_internal): Don't erroneously return nil right after
4241 filling the cache.
4242 (where_is_internal_1): Fix up typo.
4243
7ab5d780
GM
42442009-09-11 Glenn Morris <rgm@gnu.org>
4245
4246 * frame.c (Fx_parse_geometry): Unify the X and NS versions so that they
4247 share a common doc-string.
4248
5238a749
SM
42492009-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
4250
66d77eda
SM
4251 * keymap.c (get_keymap): Return the actual keymap symbol rather than
4252 t for autoloaded keymaps when autoloading is not allowed (bug#4393).
4253
5238a749
SM
4254 * keymap.c (QCadvertised_binding): New constant.
4255 (syms_of_keymap): Initialize it.
4256 (Fwhere_is_internal): Try and use bindings from :advertised-binding
4257 if applicable.
4258
19f48442
SM
42592009-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
4260
50d4ba39
SM
4261 * keyboard.c (Qmenu_alias, Vdefine_key_rebound_commands): Remove.
4262 (parse_menu_item): Streamline since bindings are recomputed all the
4263 time anyway. Don't bother checking Vdefine_key_rebound_commands any
4264 more and don't support lmenu's menu-alias any more either.
4265
a88a5372
SM
4266 * keymap.c (where_is_internal_data): Make noindirect a boolean.
4267 (where_is_internal): Strip it down to only traverse the keymaps.
4268 Move the cache handling from Fwhere_is_internal to here.
4269 (Fwhere_is_internal): Move the handling of remapping and the choice of
4270 the best binding from where_is_internal to here.
4271 Unify the cached/noncached paths, so remapping is also handled
4272 correctly when the cache is used, and so the cache can be used to
4273 speed up remap-handling when applicable.
4274 Give preference to non-remapped bindings.
4275 * doc.c (Fsubstitute_command_keys): Let Fwhere_is_internal's prefer
4276 non-remapped bindings.
4277 * keyboard.c (parse_menu_item): Let Fwhere_is_internal handle
4278 command remapping.
4279
19f48442
SM
4280 * xdisp.c (display_mode_element): Move list length limit from 50 to
4281 5000 (see thread starting with <xbaik5174uqu.fsf@cam.ac.uk>).
4282
599498c3 42832009-09-09 Adrian Robert <Adrian.B.Robert@gmail.com>
c1905ca3
AR
4284
4285 * nsfont.m (ns_get_family): Don't force first letter to uppercase.
4286
f9b7b5ac
SM
42872009-09-09 Stefan Monnier <monnier@iro.umontreal.ca>
4288
a53af587
JB
4289 * xdisp.c (Vtruncate_partial_width_windows): Improve docstring.
4290 (Bug#4334)
4291
f9b7b5ac
SM
4292 * keymap.c (where_is_internal): Filter out shadowed remappings.
4293 Assume that where_is_internal returns unshadowed bindings to simplify
4294 the code and get rid of the gotos. Use ASIZE.
4295
04f4b72d
JD
42962009-09-04 Jan Djärv <jan.h.d@swipnet.se>
4297
4da146f2
JD
4298 * xterm.c (x_focus_changed): If we get a focusout and pointer
4299 is invisible, make it visible.
4300
04f4b72d
JD
4301 * xterm.h: Remove condition for declaration of
4302 x_*_window_to_frame.
4303
7cef7ce3
SM
43042009-09-03 Stefan Monnier <monnier@iro.umontreal.ca>
4305
4306 * dispnew.c (Fsend_string_to_terminal): Make it work again on the
4307 initial terminal as well.
4308
a54fa5b7
JD
43092009-09-02 Jan Djärv <jan.h.d@swipnet.se>
4310
4311 * xterm.h: Rename x_non_menubar_window_to_frame to
7cef7ce3 4312 x_menubar_window_to_frame.
a54fa5b7 4313
50426a04 4314 * xterm.c: Remove declarations also in xterm.h.
a54fa5b7
JD
4315 (XTmouse_position): Do not return valid positions
4316 for clicks in the menubar and the toolbar for Gtk+.
4317
4318 * xfns.c (x_any_window_to_frame): Assume less about Gtk+ internals,
4319 if the widget for the event has the same top level as a frame,
4320 return the frame.
4321 (x_menubar_window_to_frame): Detect menu bar even with Gtk+
4322 internal windows, bug #4122.
4323 (x_non_menubar_window_to_frame): Remove.
4324
5a021dd0
GM
43252009-09-02 Glenn Morris <rgm@gnu.org>
4326
4327 * buffer.c (default-major-mode): Move most of the doc from here...
4328 (major-mode): ... to here.
4329
548fe2f3
NR
43302009-08-30 Nick Roberts <nickrob@snap.net.nz>
4331
4332 * process.c (wait_reading_process_output): Keep the descriptor
4333 when pty is used by a non-child process, e.g., in I/O buffer of
4334 GDB this allows inferior to be restarted.
4335
e0840eef
EZ
43362009-08-29 Eli Zaretskii <eliz@gnu.org>
4337
4338 * xdisp.c (redisplay_internal): Remove redundant test and collapse
4339 both branches into one.
4340
82e98df4
SM
43412009-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
4342
4343 * emacs.c (USAGE1): Remove --(no-)multibyte, --(no-)unibyte.
4344 (main): Use enable-multibyte-characters rather than
4345 default-enable-multibyte-characters. Output a warning message when
4346 running a unibyte session.
4347
890617cb
YM
43482009-08-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4349
4350 * unexmacosx.c (print_load_command_name) [LC_DYLD_INFO]: Add cases
4351 LC_DYLD_INFO and LC_DYLD_INFO_ONLY.
4352 (copy_data_segment): Also copy __program_vars section.
4353 (copy_dyld_info) [LC_DYLD_INFO]: New function.
4354 (dump_it) [LC_DYLD_INFO]: Use it.
4355
4356 * s/darwin.h [temacs]: Undef HAVE_POSIX_MEMALIGN.
4357
e7adeadc
EZ
43582009-08-28 Eli Zaretskii <eliz@gnu.org>
4359
4360 * makefile.w32-in ($(BLD)/doc.$(O)): Depend on buildobj.h, not on
4361 $(SRC)/buildobj.h.
4362 (buildobj.h): Renamed from $(SRC)/buildobj.h.
4363 (make-buildobj-CMD, make-buildobj-SH): Create buildobj.h, not
4364 $(SRC)/buildobj.h.
4365 (clean): Add buildobj.h.
4366
3ed8bbdc
TZ
43672009-08-28 Teodor Zlatanov <tzz@lifelogs.com>
4368
4369 * print.c (print_object): Set escapeflag to 1 when printing
4370 hashtable keys and values.
4371
155a6764
SM
43722009-08-27 Stefan Monnier <monnier@iro.umontreal.ca>
4373
4374 * lread.c (read_integer): Use doubles (and potentially return a float
4375 number) as we do in string-to-number.
4376 (read1): Use strtol to read integers, signal errors on strtol's
4377 overflow and use floats if strtol's output is too large for
4378 Elisp integers.
4379
877610de
EZ
43802009-08-27 Eli Zaretskii <eliz@gnu.org>
4381
4382 * makefile.w32-in ($(SRC)/buildobj.h, make-buildobj-CMD)
4383 (make-buildobj-SH): Fix last change.
4384 (SRC): Move to before where it's first used.
4385
ef73e7be
KH
43862009-08-27 Kenichi Handa <handa@m17n.org>
4387
550c8289
KH
4388 * process.c (send_process): Use encode_coding_object instead of
4389 encode_coding_string to perform eol-conversion even if the string
4390 is unibyte.
4391
60afa08d
KH
4392 * coding.c (encode_coding_utf_16): Fix checking of a Unicode
4393 character.
4394
ef73e7be 4395 * cmds.c (Fself_insert_command): Avoid unnecessay
8a0b709a 4396 unibyte->multibyte conversion. (Bug#4240) (Bug#4037)
ef73e7be 4397
7b3a82d7
DN
43982009-08-26 Dan Nicolaescu <dann@ics.uci.edu>
4399
5654bf63
DN
4400 * callproc.c (Fcall_process): Remove always true #if.
4401
7b3a82d7
DN
4402 * lisp.h: Replace #if 0 code for checking with text pointing to
4403 the --enable-checking configure flag.
4404
4405 * emacs.c (main): Mention the --enable-profiling configure flag
4406 instead of using CFLAGS.
4407
878bde49
KR
44082009-08-26 Ken Raeburn <raeburn@raeburn.org>
4409
4410 * Makefile.in (buildobj.h): New target.
4411 (doc.o): Depend on it.
4412 (temacs${EXEEXT}): Don't generate buildobj.lst.
4413 (mostlyclean): Delete buildobj.h, not buildobj.lst.
4414 * makefile.w32-in ($(SRC)/buildobj.h): New target.
4415 ($(BLD)/doc.$(O)): Depend on it.
4416 (make-buildobj-CMD, make-buildobj-SH): New targets. (Syntax help
4417 provided by Eli Zaretskii.)
4418 ($(TEMACS)): Don't generate buildobj.lst.
4419 * doc.c: Include buildobj.h.
4420 (buildobj): New static variable.
4421 (Fsnarf_documentation): Use it, instead of opening and reading
4422 buildobj.lst.
4423
1574224c
MA
44242009-08-25 Michael Albinus <michael.albinus@gmx.de>
4425
4426 * dbusbind.c (Fdbus_call_method)
4427 (Fdbus_call_method_asynchronously): Use English numeric format for
4428 timeout values in doc string.
4429
d9da2f45
KH
44302009-08-25 Kenichi Handa <handa@m17n.org>
4431
ef73e7be
KH
4432 * alloc.c (mark_char_table): New function.
4433 (mark_object): Use mark_char_table for a char-table.
4434
d9da2f45
KH
4435 * lisp.h (CHAR_TABLE_REF_ASCII): New macro.
4436 (CHAR_TABLE_REF): Use it.
4437
c8edcc01
KR
44382009-08-23 Ken Raeburn <raeburn@raeburn.org>
4439
4440 * Makefile.in (emacs${EXEEXT}) [CANNOT_DUMP]: Set EMACSLOADPATH
4441 before invoking the newly build emacs to check for load-path
4442 shadowing.
4443
7763401b
GM
44442009-08-22 Glenn Morris <rgm@gnu.org>
4445
4446 * Makefile.in (bootstrap_exe): New variable.
4447 (.el.elc, ${lispsource}loaddefs.el, bootstrap-emacs${EXEEXT}):
4448 Use ${bootstrap_exe}.
4449
729eadda
EZ
44502009-08-22 Eli Zaretskii <eliz@gnu.org>
4451
4452 * coding.h (encode_coding_string): Don't encode unibyte strings.
4453 (Bug#4047)
4454
eb4c6ace
MA
44552009-08-22 Michael Albinus <michael.albinus@gmx.de>
4456
4457 * config.in (HAVE_DBUS_WATCH_GET_UNIX_FD): Add.
4458
4459 * dbusbind.c (XD_WITH_DBUS_WATCH_GET_UNIX_FD): Remove. It was
4460 intended as hotfix only.
4461 (xd_add_watch, xd_remove_watch): Use HAVE_DBUS_WATCH_GET_UNIX_FD.
4462
36e34d1b
AR
44632009-08-21 Adrian Robert <Adrian.B.Robert@gmail.com>
4464
4465 * nsterm.m (ns_get_color): Update documentation properly for last
4466 change, and clean up loose ends in the code left by it. Fix
4467 longstanding bug with 16-bit hex parsing, and add support for
4468 yet another X11 format (rgb:r/g/b) for compatibility.
4469 * nsfns.m (EmacsDialogPanel-runDialogAt): Add declaration of
4470 timer_check() to avoid crash on Leopard/PPC. Bug #2154.
4471
f983eb8a
SM
44722009-08-21 Stefan Monnier <monnier@iro.umontreal.ca>
4473
4474 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 500 for js.el.
4475
3f56d3c6
MA
44762009-08-20 Michael Albinus <michael.albinus@gmx.de>
4477
4478 * dbusbind.c (XD_WITH_DBUS_WATCH_GET_UNIX_FD): New macro.
4479 (xd_add_watch, xd_remove_watch): Use it. Print debug messages.
4480 (xd_initialize, xd_pending_messages): Check, whether
4481 $DBUS_SESSION_BUS_ADDRESS is set.
4482
fb641d68
YM
44832009-08-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4484
4485 * nsfns.m (Fxw_color_values): Return 3-element list. Doc fix.
4486
4487 * nsterm.m (ns_get_color): Remove incompatible color formats again.
4488
cf59a374
GM
44892009-08-20 Glenn Morris <rgm@gnu.org>
4490
4491 * emacs.c (system-type): Doc fix.
4492
1373f3be
SM
44932009-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
4494
4495 * keyboard.c (syms_of_keyboard): Default to 5 buttons, which should be
4496 enough for the most common situations. Avoid SET_SYMBOL_VALUE.
4497
058ed861
MA
44982009-08-18 Michael Albinus <michael.albinus@gmx.de>
4499
1373f3be
SM
4500 * dbusbind.c (xd_add_watch, xd_remove_watch, Fdbus_init_bus):
4501 New functions.
058ed861
MA
4502 (xd_initialize): Revert change from 2009-08-16.
4503
563a866e 45042009-08-18 Kenichi Handa <handa@m17n.org>
5fc05db0
KH
4505
4506 * fontset.c (Ffontset_font): If a nil element is found in a
563a866e 4507 font-group vector, return nil.
5fc05db0 4508
e42bdf01
CY
45092009-08-17 Chong Yidong <cyd@stupidchicken.com>
4510
4511 * process.c (status_notify): Don't perform redisplay.
4512 (Fdelete_process, list_processes_1, process_send_signal):
4513 Expliticly perform redisplay.
4514 (wait_reading_process_output): Always check process status, but
4515 don't perform redisplay unless DO_DISPLAY is non-zero (Bug#2930).
4516
4230ab74
KR
45172009-08-17 Ken Raeburn <raeburn@raeburn.org>
4518
1373f3be 4519 * lisp.h (XFLOAT_DATA): Produce an rvalue by adding 0 to the value.
f601cdf3
KR
4520 (XFLOAT_INIT): New macro for storing a float value.
4521 * alloc.c (make_float, make_pure_float): Use XFLOAT_INIT.
4522 * fns.c (sxhash): Copy out the value of a float in order to
4523 examine its bytes.
4524 * dbusbind.c (xd_append_arg): Likewise.
4525
4230ab74
KR
4526 * emacs.c (main): Don't call syms_of_data twice.
4527
a0645cdd
MA
45282009-08-16 Michael Albinus <michael.albinus@gmx.de>
4529
4530 * dbusbind.c (xd_initialize): Add connection file descriptor to
4531 input_wait_mask, in order to let select() detect, whether a new
4532 message has been arrived.
ca4f31ea 4533 (Fdbus_call_method_asynchronously): Allow nil HANDLER.
a0645cdd 4534
485db0ba
MA
45352009-08-15 Michael Albinus <michael.albinus@gmx.de>
4536
1373f3be
SM
4537 * dbusbind.c (xd_get_dispatch_status, xd_pending_messages):
4538 New functions.
485db0ba
MA
4539
4540 * lisp.h (xd_pending_messages): Declare.
4541
4542 * keyboard.c (readable_events): Call xd_pending_messages.
4543
b5b98ff4
CY
45442009-08-15 Chong Yidong <cyd@stupidchicken.com>
4545
1373f3be 4546 * eval.c (Fcalled_interactively_p, Finteractive_p): Doc fix (Bug#3936).
84b17ab0 4547
f8354c6e
CY
4548 * xdisp.c (pop_it): Don't pop into a display vector (Bug#4131).
4549
b5b98ff4
CY
4550 * buffer.c (set_buffer_internal_1)
4551 (swap_out_buffer_local_variables): Check for unbound local
4552 variables (Bug#4138).
4553
8b9fc636
EZ
45542009-08-14 Eli Zaretskii <eliz@gnu.org>
4555
4556 * process.c (create_pty): Fix last change.
4557
ce959360
CY
45582009-08-13 Chong Yidong <cyd@stupidchicken.com>
4559
4560 * image.c (xbm_read_bitmap_data): New arg inhibit_image_error.
4561 (xbm_load_image): Caller changed.
64b807c9 4562 (xbm_file_p): Avoid signalling an image_error (Bug#4107).
ce959360 4563
c7baf7e9
NR
45642009-08-13 Nick Roberts <nickrob@snap.net.nz>
4565
4566 * process.c (create_pty): New function.
4567 (Fstart_process): Use it to allow Emacs to just associate a pty
4568 with the buffer. See associated change in gdb-mi.el.
4569 (list_processes_1): Deal with no program name.
4570 (start_process_unwind): Use pid == -2 to mean no process.
4571
1ac9108a
SM
45722009-08-12 Stefan Monnier <monnier@iro.umontreal.ca>
4573
4574 * cmds.c (nonundocount): New global variable.
4575 (keys_of_cmds): Initialize it.
4576 (Fself_insert_command): Use it to combine upto 20 sequential chars
4577 into a single undo entry, just like the Qself_insert_command code in
4578 keyboard.c does.
4579 Call frame_make_pointer_invisible, also like the Qself_insert_command
4580 code in keyboard.c does.
4581 * keyboard.c (command_loop_1): Use the new global nonundocount rather
4582 than its own local replacement for it.
4583
e267324c
KR
45842009-08-10 Ken Raeburn <raeburn@raeburn.org>
4585
1ac9108a 4586 * fns.c (concat): Don't re-set string length to its current value.
77437343 4587
1ac9108a
SM
4588 * coding.h (decode_coding_string, encode_coding_string):
4589 Use SBYTES macro.
f0bed503 4590
1ac9108a 4591 * doprnt.c (doprnt_lisp): Delete unused function.
e267324c
KR
4592 (doprnt): Merge with doprnt1, discarding lispstrings code.
4593 * lisp.h (doprnt_lisp): Don't declare.
4594
416e006d
JL
45952009-08-07 Juri Linkov <juri@jurta.org>
4596
4597 * puresize.h (BASE_PURESIZE): Increase to 1270000.
4598
6f7d5780
DN
45992009-08-07 Dan Nicolaescu <dann@ics.uci.edu>
4600
4601 * print.c (syms_of_print): Undo previous change.
4602
f19a0f5b
TZ
46032009-08-05 Teodor Zlatanov <tzz@lifelogs.com>
4604
4605 * lread.c (read1, syms_of_lread): Read hashtables back from the
4606 readable format.
4607
4608 * print.c (print_preprocess, print_object): Print hashtables fully
4609 and readably.
4610 (syms_of_print): Provide 'hashtable-print-readable.
4611
b9173dc2
AR
46122009-08-02 Adrian Robert <Adrian.B.Robert@gmail.com>
4613
4614 * nsfont.m (ns_descriptor_to_entity): Handle case when descriptor has
4615 no family set.
4616 (nsfont_open): Handle case when entity has no family.
4617
1586503c
AR
46182009-07-29 Adrian Robert <Adrian.B.Robert@gmail.com>
4619
4620 * nsfont.m (ns_findfonts): Fix 2009-07-24 change to return only one
4621 element, not a list, for match case.
4622
087048cd
KH
46232009-07-28 Kenichi Handa <handa@m17n.org>
4624
4625 * font.c (font_parse_xlfd): Check DPI and AVGWIDTH properties more
4626 rigidly.
4627
4628 * xfont.c (xfont_list_pattern): Don't ignore the return value of
4629 font_parse_xlfd. Check font properties more rigidly.
4630
780c2506
DN
46312009-07-27 Dan Nicolaescu <dann@ics.uci.edu>
4632
31fd7c5c
JB
4633 * s/netbsd.h (SIGNALS_VIA_CHARACTERS): Remove, already defined in
4634 bsd-common.h.
780c2506 4635
a8c0cc18
KH
46362009-07-27 Kenichi Handa <handa@m17n.org>
4637
4638 * xfaces.c (face_with_height): Call font_clear_prop.
4639
4fbe2306
CY
46402009-07-26 Chong Yidong <cyd@stupidchicken.com>
4641
111d9af3
CY
4642 * dispnew.c (init_display): Use Qx, Qw32, and Qns.
4643
4644 * xterm.c (x_term_init): Use Qx.
4645
4fbe2306
CY
4646 * nsfont.m (nsfont_draw): Revert 2009-07-15 change.
4647
1ac9108a 4648 * nsterm.m (ns_maybe_dumpglyphs_background): Revert 2009-07-15 change.
4fbe2306
CY
4649 (ns_get_color): Revert 2009-07-16 change.
4650
beb0b7f9
EZ
46512009-07-25 Eli Zaretskii <eliz@gnu.org>
4652
4653 * lread.c (syms_of_lread) <force_load_messages>: New variable.
1ac9108a 4654 (Fload): Use it to force load messages, even if NOMESSAGES is non-nil.
beb0b7f9 4655
2baf5e76
KR
46562009-07-25 Ken Raeburn <raeburn@raeburn.org>
4657
1ac9108a
SM
4658 * coding.h (decode_coding_string, encode_coding_string):
4659 Use SCHARS macro.
8890e5f5 4660
2baf5e76 4661 * lread.c: Rewrite 2009-07-21 changes.
1ac9108a 4662 (load_depth): Delete.
2baf5e76
KR
4663 (Qload_in_progress): New variable.
4664 (load_unwind): Don't reference load_depth or load_in_progress.
4665 (Fload): Likewise; specbind Qload_in_progress instead.
4666 (init_lread): Don't initialize load_depth.
4667 (syms_of_lread): Initialize and protect Qload_in_progress.
4668
1395c6f5
AR
46692009-07-24 Adrian Robert <Adrian.B.Robert@gmail.com>
4670
4671 * nsfont.m (ns_findfonts): Correctly return fallback in match case.
4672
4e2f36cf
AR
46732009-07-23 Yavor Doganov <yavor@gnu.org>
4674
4675 * nsfont.m (NSFontDescriptor.h): Explicitly include under GNUstep.
4676
5dd9a6f7
AR
46772009-07-23 Adrian Robert <Adrian.B.Robert@gmail.com>
4678
4679 * nsterm.m (EmacsView-keyUp:): Only act when running under Tiger.
7f6ad209
AR
4680 Bugs 3792, 3720, 2402.
4681 (ns_lookup_indexed_color): Check for bad index.
4682 (ns_index_color): Init unused slot to 0.
4683 (ns_dumpglyphs_box_or_relief): Replace useless xassert with an if().
4684 Bug 3714, possibly 3082.
5dd9a6f7 4685
c902b920
JR
46862009-07-22 Jason Rumney <jasonr@gnu.org>
4687
1ac9108a
SM
4688 * w32fns.c (w32_wnd_proc) [WM_IME_STARTCOMPOSITION]:
4689 Position IME window at cursor (Bug#2570).
c902b920
JR
4690 (w32_wnd_proc) [WM_IME_CHAR]: Release context when finished.
4691 (globals_of_w32fns): Dynamically load functions required above.
4692
4693 * w32term.c (w32_draw_window_cursor): Send message to reposition
4694 any IME window.
4695
090101cf
CY
46962009-07-21 Chong Yidong <cyd@stupidchicken.com>
4697
4698 * fileio.c: Revert 2009-07-16 changes.
4699 (Vauto_save_include_big_deletions): New variable.
4700 (Fdo_auto_save): Disable auto-save only if
4701 auto-save-include-big-deletions is nil.
4702
e6583e3d
CY
47032009-07-21 Chong Yidong <cyd@stupidchicken.com>
4704
4705 * xdisp.c (move_it_to): For continued lines ending in a tab, take
4706 the overflowed pixels into account (Bug#3879).
4707
ece435a5
KR
47082009-07-21 Ken Raeburn <raeburn@raeburn.org>
4709
4710 * lread.c (load_depth): New variable.
4711 (Fload, load_unwind, init_lread): Set it to the load recursion
4712 depth; set load_in_progress as a simple boolean based on the
4713 current load_depth. (Bug#3892)
4714
40b2d973
AR
47152009-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
4716
4717 * nsfont.m (ns_has_attribute): Remove.
4718 (ns_findfonts, nsfont_open): Use ns_attribute_fvalue() instead.
4719
10be7e0d
JL
47202009-07-18 Juri Linkov <juri@jurta.org>
4721
4722 * process.c (Fset_process_query_on_exit_flag): Mention killing
4723 a buffer in docstring.
4724
fa055055
KH
47252009-07-17 Kenichi Handa <handa@m17n.org>
4726
4727 * casetab.c (shuffle): Fix the logic of setting up the cycle.
4728
042f7b69
YM
47292009-07-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4730
4731 * nsfns.m (Fns_set_alpha): Remove function.
4732 (syms_of_nsfns): Don't defsubr it.
4733
4734 * nsterm.m (ns_get_color): Remove incompatible color formats.
4735 (ns_color_to_lisp): Generate #rrggbb color format string.
4736
4be941e3
RS
47372009-07-16 Richard Stallman <rms@gnu.org>
4738
4739 * fileio.c (Fwrite_region, Fdo_auto_save): Handle save_length = -2.
4740 (Fset_buffer_auto_saved): Handle save_length = -2.
4741
4e6b227d
CY
47422009-07-16 Chong Yidong <cyd@stupidchicken.com>
4743
4744 * xterm.c (Qx_gtk_map_stock): New var.
4745
4746 * gtkutil.c (update_frame_tool_bar): Use Qx_gtk_map_stock instead
4747 of calling intern each time.
4748
a1856973
YM
47492009-07-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4750
4751 * nsfont.m (nsfont_draw): Remove code for stippling, which actually
4752 does tiling.
4753
4754 * nsterm.m (ns_maybe_dumpglyphs_background): Likewise.
4755
497e54d8
KH
47562009-07-14 Kenichi Handa <handa@m17n.org>
4757
72d36834
KH
4758 * font.c (font_vconcat_entity_vectors): New function.
4759 (struct font_sort_data): New member font_driver_preference.
4760 (font_compare): Check font_driver_preference.
4761 (font_sort_entities): The format of the first argument changed.
4762 (font_delete_unmatched): Likewise.
4763 (font_list_entities): The return type changed.
4764 (font_select_entity): The format of the second argument changed.
1ac9108a
SM
4765 (font_find_for_lface): Adjuste for the above changes.
4766 Don't suppress the checking of C even if the repertory supports it.
4767 (Flist_fonts): Adjust for the above changes.
72d36834 4768
1ac9108a
SM
4769 * ftfont.c (ftfont_spec_pattern): New arg langname. Change caller.
4770 (ftfont_list): Adjust for the change of ftfont_spec_pattern.
497e54d8
KH
4771 Reject a font who has adstyle property that is different from a
4772 langname derived from registry property.
1ac9108a 4773 (ftfont_match): Adjust for the change of ftfont_spec_pattern.
497e54d8 4774
b6046155
EZ
47752009-07-13 Eli Zaretskii <eliz@gnu.org>
4776
4777 * dired.c (directory_files_internal) [WINDOWSNT]: Don't make a
4778 local copy of dirfilename.
4779
fb6b6049
KH
47802009-07-13 Kenichi Handa <handa@m17n.org>
4781
e2402a5e
KH
4782 * chartab.c (sub_char_table_ref_and_range): Fix the range check
4783 against max_char.
4784
fb6b6049
KH
4785 * cmds.c (internal_self_insert): Check sym by SYMBOLP before
4786 calling XSYMBOL (sym).
4787
65156807
EZ
47882009-07-11 Eli Zaretskii <eliz@gnu.org>
4789
1ac9108a
SM
4790 * dired.c (directory_files_internal_w32_unwind) [WINDOWSNT]:
4791 New function.
4792 (directory_files_internal) [WINDOWSNT]:
4793 Bind w32-get-true-file-attributes to either t or nil, depending whether
65156807
EZ
4794 the filesystem of the directory is fast or slow.
4795
4796 * w32.c (logon_network_drive): Don't assume PATH is an absolute
4797 file name.
4798 (is_slow_fs): New function.
4799 (stat): Use it to determine whether to issue more system calls to
4800 get accurate file attributes, when w32-get-true-file-attributes is
4801 `local'.
4802
e0ab5fcf
JD
48032009-07-10 Jan Djärv <jan.h.d@swipnet.se>
4804
4805 * xfns.c (Fx_select_font): Remember last font selected in
31fd7c5c 4806 x_last_font_name and use that the next time. Also try the frame
e0ab5fcf
JD
4807 parameter font-parameter as default to the font dialog.
4808
784ceded
KH
48092009-07-10 Kenichi Handa <handa@m17n.org>
4810
4811 * xftfont.c (xftfont_open): Fix typo: FC_RGBA->FC_HINT_STYLE.
4812
fb8edc0b
EZ
48132009-07-09 Eli Zaretskii <eliz@gnu.org>
4814
1ac9108a 4815 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
017dab84 4816
fb8edc0b
EZ
4817 * w32.c (stat): Treat UNC file names as residing on remote
4818 drives. (Bug#3542)
4819
635c75b1
KH
48202009-07-09 Kenichi Handa <handa@m17n.org>
4821
4822 * fontset.c (fontset_find_font): Fix previous change.
4823
c1d5ce94
MA
48242009-07-08 Michael Albinus <michael.albinus@gmx.de>
4825
4826 * dbusbind.c (xd_initialize, Fdbus_call_method, xd_read_message)
4827 (Fdbus_register_signal, Fdbus_register_method): Cleanup memory of
4828 error flag.
4829
edb61b39
KH
48302009-07-08 Kenichi Handa <handa@m17n.org>
4831
374bf7e4
KH
4832 * fontset.c (fontset_find_font): Fix the logic of handling
4833 charset_matched.
4834 (font_for_char): Delete unused var.
4835 (generate_ascii_font_name): Delete it.
4836
edb61b39
KH
4837 * coding.h (JIS_TO_SJIS2): Fix the code range check.
4838
4839 * coding.c (detect_coding_sjis): Handle shift_jis-2004 correctly.
4840 (encode_coding_sjis): Fix the code range check.
4841
0f3f018c
CY
48422009-07-07 Chong Yidong <cyd@stupidchicken.com>
4843
4844 * fileio.c (Fsubstitute_in_file_name, Ffile_name_directory)
4845 (Fexpand_file_name): Copy string data properly (Bug#3772).
4846
fcaf6f3a
JD
48472009-07-07 Jan Djärv <jan.h.d@swipnet.se>
4848
4849 * xterm.c (handle_one_xevent): Only call x_check_fullscreen on the
4850 first MapNotify.
4851
6809ca75
KH
48522009-07-07 Kenichi Handa <handa@m17n.org>
4853
4854 * character.h (unibyte_has_multibyte_table): Delete extern.
4855 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): Delete it.
4856
4857 * charset.c (Fset_charset_priority): Update charset_unibyte.
4858 (syms_of_charset): Initialize charset_unibyte.
4859
4860 * character.c (unibyte_has_multibyte_table): Delete it.
4861 (multibyte_char_to_unibyte): Use CHAR_TO_BYTE8 instead of checking
4862 charset_unibyte.
4863 (multibyte_char_to_unibyte_safe): Likewise.
4864 (Funibyte_char_to_multibyte): Don't check charset_unibyte.
4865
1ac9108a 4866 * xdisp.c (get_next_display_element): Decode it->c by charset_unibyte.
6809ca75
KH
4867 (x_produce_glyphs): Likewise.
4868
4869 * .gdbinit (xcharset): Fix the treating $arg0.
4870
ad9e2d54
EZ
48712009-07-04 Eli Zaretskii <eliz@gnu.org>
4872
4873 Emulation of `getloadavg' on MS-Windows.
50426a04 4874 * w32.c: Include float.h.
ad9e2d54
EZ
4875 (g_b_init_get_native_system_info, g_b_init_get_system_times)
4876 (GetNativeSystemInfo_Proc, GetSystemTimes_Proc): Declare.
4877 (get_native_system_info, get_system_times): New functions.
4878 (buf_next, buf_prev, sample_system_load, getavg): New subroutines.
4879 (getloadavg): Rewrite using GetSystemTimes and GetNativeSystemInfo.
4880 (globals_of_w32): Initialize g_b_init_get_native_system_info,
4881 g_b_init_get_system_times, and num_of_processors.
4882
0a3472c7
JR
48832009-07-03 Jason Rumney <jasonr@gnu.org>
4884
4885 * w32term.c (w32_initialize): Use standard types.
4886
80904120
EZ
48872009-07-03 Eli Zaretskii <eliz@gnu.org>
4888
4889 * dired.c (Ffile_attributes): Decode user and group names by the
4890 locale's encoding. (Bug#3443)
4891
6978862d
DN
48922009-07-03 Dan Nicolaescu <dann@ics.uci.edu>
4893
f8d23104
DN
4894 * sysdep.c (sys_suspend): Remove USG_JOBCTRL #ifdef, unused.
4895 (mkdir): Remove MKDIR_PROTOTYPE #ifdef, unused.
4896
4897 * callproc.c (child_setup): Use #else instead of a separate #ifdef.
4898
4899 * term.c (init_tty): Remove spurious #ifdef.
4900
6978862d
DN
4901 * m/mips.h: Mention this file is also used for netbsd.
4902 * m/pmax.h: Remove file.
4903
e044e4fc
JD
49042009-07-03 Jan Djärv <jan.h.d@swipnet.se>
4905
4906 * xterm.h (struct x_display_info): Add invisible_cursor.
4907 (struct x_output): Add current_cursor.
4908
4909 * xterm.c (XTtoggle_invisible_pointer): New function.
4910 (x_define_frame_cursor): Don't define cursor if invisible or the
4911 same as before. Set current_cursor.
4912 (x_create_terminal): Set toggle_invisible_pointer_hook.
4913
4914 * xfns.c (make_invisible_cursor): New function.
4915 (x_set_mouse_color): Call make_invisible_cursor.
4916 Set current_cursor.
4917 (x_window): Set current_cursor.
4918
4919 * termhooks.h (struct terminal): Add toggle_invisible_pointer_hook.
4920
4921 * keyboard.c (command_loop_1): Call frame_make_pointer_invisible after
4922 inserting a character.
4923 (read_avail_input): Call frame_make_pointer_visible.
4924
4925 * frame.c (Vmake_pointer_invisible): New variable.
1ac9108a
SM
4926 (frame_make_pointer_invisible, frame_make_pointer_visible):
4927 New functions.
e044e4fc
JD
4928 (syms_of_frame): DEFVAR make-pointer-invisible, initialize to Qt.
4929
4930 * frame.h: Declare frame_make_pointer_invisible and
4931 frame_make_pointer_visible.
4932 (struct frame): Add pointer_invisible.
4933
574c8efa
JD
49342009-07-02 Jan Djärv <jan.h.d@swipnet.se>
4935
7b507248
JD
4936 * gtkutil.c (xg_frame_set_char_size): Do set width/height if the
4937 frame isn't visible.
4938 (xg_frame_resized): If width/height is -1, get size of window
4939 from X server.
4940
4941 * xterm.c (handle_one_xevent): Call xg_frame_resized for USE_GTK
4942 for MapNotify.
4943
835bdaa7 4944 * gtkutil.c (xg_frame_set_char_size): Do not set pixel width/height
31fd7c5c 4945 here or call change_frame_size. Just call flush_and_sync.
1ac9108a 4946 (flush_and_sync): Reintroduce.
574c8efa 4947
3f1c6666 49482009-07-01 Jan Djärv <jan.h.d@swipnet.se>
69b16610 4949
31fd7c5c 4950 * xterm.h (struct x_display_info): Add Xatom_net_wm_state_sticky.
acd51077
JD
4951
4952 * xterm.c (x_handle_net_wm_state): Also look for sticky.
4953 (x_term_init): Initialize Xatom_net_wm_state_sticky.
4954
4955 * frame.h: Declare Qsticky.
4956
cad9ef74
JD
4957 * w32fns.c (w32_frame_parm_handlers): Set 0 for sticky.
4958
4959 * nsfns.m (ns_frame_parm_handlers): Ditto.
4960
4961 * frame.c: Declare Qsticky.
4962 (frame_parms): Add sticky.
4963
4964 * xfns.c (x_frame_parm_handlers): Let x_set_sticky handle sticky.
4965
4966 * xterm.h: Declare x_set_sticky.
4967
4968 * xterm.c (x_set_sticky): New function.
4969
69b16610
JD
4970 * gtkutil.c (xg_tool_bar_proxy_help_callback): New function.
4971 (xg_tool_bar_menu_proxy): Attach enter/leave events to
4972 xg_tool_bar_proxy_help_callback.
3f1c6666
JD
4973
4974 * emacs.c (USAGE3, standard_args): Add -mm and --maximized.
4975
4976 * frame.c: Qmaximized is new.
4977 (x_set_frame_parameters): Do not handle fullscreen specially.
4978 Only set width and height if explicitly set.
4979 (x_set_fullscreen): Handle Qmaximized.
4980 (x_set_font, x_figure_window_size): Do not handle fullscreen specially.
4981 (syms_of_frame): Initialize Qmaximized.
4982
1ac9108a
SM
4983 * frame.h (fullscreen_type): Add FULLSCREEN_MAXIMIZED.
4984 Declare Qfullwidth, Qfullheight, Qfullboth, Qmaximized.
3f1c6666
JD
4985
4986 * xterm.c (handle_one_xevent): Remove call to x_check_fullscreen
31fd7c5c
JB
4987 for Expose event. Add call to x_check_fullscreen for MapNotify event.
4988 Remove all code w.r.t. fullscreen from ConfigureNotify event. Do not
3f1c6666
JD
4989 set gravity to NorthWestGravity when USE_GTK.
4990 (set_wm_state): New function.
31fd7c5c 4991 (do_ewmh_fullscreen): Use set_wm_state. Also handle FULLSCREEN_MAXIMIZED.
3f1c6666
JD
4992 (x_handle_net_wm_state): Handle FULLSCREEN_MAXIMIZED.
4993 (x_check_fullscreen): Simplify so we only handle EMWH type of fullscreen
31fd7c5c 4994 or the case when no window manager is running. That means remove calls
3f1c6666
JD
4995 to x_real_positions and x_fullscreen_adjust.
4996
4997 * gtkutil.c (flush_and_sync, x_wm_size_hint_off): Remove.
4998 (xg_frame_set_char_size): Remove calls to x_wm_size_hint_off and
4999 flush_and_sync.
5000 (xg_height_changed): New function.
5001 (xg_create_frame_widgets): Remove call to gtk_widget_set_size_request
1ac9108a
SM
5002 and gtk_window_set_policy. Set frame gravity after parsing the
5003 geometry string.
3f1c6666
JD
5004 (xg_update_frame_menubar, free_frame_menubar)
5005 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
5006 (update_frame_tool_bar, free_frame_tool_bar): Call xg_height_changed.
5007 Remove calls to xg_frame_set_char_size.
5008
fd503d99
KH
50092009-07-01 Kenichi Handa <handa@m17n.org>
5010
5011 * keyboard.c (decode_keyboard_code): New function.
5012 (tty_read_avail_input): Decode the input bytes if necessary.
5013
1ac9108a
SM
5014 * coding.c (setup_coding_system):
5015 Initialize coding->carryover_bytes to 0.
fd503d99
KH
5016 (Fset_keyboard_coding_system_internal): If CODING-SYSTEM is nil,
5017 use Qno_conversion.
5018
24ed93fb
YM
50192009-07-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5020
5021 * Makefile.in (SOME_MACHINE_LISP): Add ../lisp/term/common-win.elc.
5022
99061dfc
CY
50232009-06-30 Chong Yidong <cyd@stupidchicken.com>
5024
1ac9108a 5025 * xftfont.c (xftfont_open): Avoid passing NULL argument to XftLockFace.
99061dfc 5026
ff90fbde
JR
50272009-06-30 Jason Rumney <jasonr@gnu.org>
5028
5029 * w32term.c (w32_initialize): Use GetModuleHandle for library that
5030 is already loaded.
5031 Set user model ID if supported (bug#1849).
5032
5f445726
JM
50332009-06-29 Jim Meyering <meyering@redhat.com>
5034
5035 Remove useless if-before-xfree test.
5036 * nsfont.m (nsfont_close): Remove useless test.
5037 * term.c (delete_tty): Likewise.
5038 * w32.c (system_process_attributes): Likewise.
5039 * w32font.c (w32font_close): Likewise.
5040 * xfaces.c (x_free_gc): Likewise.
5041 * xselect.c (buffer): Likewise.
5042
b9607587
AS
50432009-06-28 Andreas Schwab <schwab@linux-m68k.org>
5044
5045 * process.c (send_process): Keep decoded string in a local
5046 variable and protect it from GC. (Bug#3521)
5047
89ba96f4
EZ
50482009-06-28 Eli Zaretskii <eliz@gnu.org>
5049
5050 * term.c (create_tty_output) [MSDOS]: #ifdef away.
5051 (tty_free_frame_resources) [MSDOS]: Add a DOS-specific version.
5052
098a1589
CY
50532009-06-28 Chong Yidong <cyd@stupidchicken.com>
5054
485422be
CY
5055 * xdisp.c (start_display, handle_face_prop)
5056 (move_it_vertically_backward, cursor_row_fully_visible_p)
1ac9108a
SM
5057 (redisplay_window, try_window_id, produce_image_glyph):
5058 Delete some #ifdef-ed out code chunks that are now obsolete.
485422be 5059
098a1589
CY
5060 * xterm.c (x_update_window_begin, x_new_focus_frame)
5061 (x_scroll_bar_handle_click, handle_one_xevent)
5062 (handle_one_xevent, XTread_socket, x_focus_on_frame)
5063 (x_make_frame_visible, x_make_frame_invisible)
5064 (x_wm_set_icon_pixmap, x_initialize): Delete some #ifdef-ed out
5065 code chunks that are now obsolete.
5066
78c38319
MA
50672009-06-28 Michael Albinus <michael.albinus@gmx.de>
5068
5069 * dbusbind.c (XD_SYMBOL_TO_DBUS_TYPE): Convert macro into function
5070 xd_symbol_to_dbus_type. With Solaris 2.11, it was said to compile
5071 for hours, when optimzation is enabled.
5072 (xd_signature, xd_append_arg, xd_retrieve_arg, xd_initialize)
5073 (xd_read_message): Make them static.
5074
4189ed40
CY
50752009-06-27 Chuck Blake <cblake@pdos.csail.mit.edu> (tiny change)
5076
5077 * term.c (turn_on_face): Allow simultaneously bold and dim
5078 terminal faces (Bug#3530).
5079
cd9b5e16
CY
50802009-06-27 Chong Yidong <cyd@stupidchicken.com>
5081
4e23bedb
CY
5082 * frame.c (x_get_arg): Check if dpyinfo is non-NULL.
5083
cd9b5e16
CY
5084 * xdisp.c (mouse_face_from_buffer_pos): Fix detection of
5085 truncation glyphs (Bug#3686).
5086
07cc3c35
GM
50872009-06-27 Glenn Morris <rgm@gnu.org>
5088
5089 * m/pmax.h: Restore file, with only netbsd portions.
5090
31fd7c5c 50912009-06-26 David Reitter <david.reitter@gmail.com>
25c5550f 5092
cd9b5e16 5093 * nsterm.m (keydown): Avoid infinite loop.
25c5550f 5094
42d4a64f
KH
50952009-06-26 Peter Jolly <peter@jollys.org> (tiny change)
5096
5097 * ftfont.c (get_adstyle_property): Call font_intern_prop with 1 as
5098 the arg FORCE_SYMBOL.
5099
930fe55b 51002009-06-25 Kenichi Handa <handa@m17n.org>
a71ccf3a
KH
5101
5102 * fontset.c (fontset_find_font): When a usable rfont_def is found
5103 in a fallback font-group, make it the first element of the group.
5104
57ebc3fd
CY
51052009-06-24 Chong Yidong <cyd@stupidchicken.com>
5106
5107 * emacs-icon.h: Always define gnu_xpm_bits on GTK (bug#3671).
5108
f084f942
KH
51092009-06-24 Kenichi Handa <handa@m17n.org>
5110
5111 * fontset.c (fontset_get_font_group): Return 0 if no font-group is
5112 set for C.
5113 (fontset_font): Record the availability of a font for C both in
5114 the realized fontsets of the current one and the default one.
5115
2f686c87
DN
51162009-06-23 Dan Nicolaescu <dann@ics.uci.edu>
5117
5118 * sysdep.c (child_setup_tty): Remove SIGNALS_VIA_CHARACTERS
5119 conditional, it is always defined on AIX.
5120
666e158e
MB
51212009-06-23 Miles Bader <miles@gnu.org>
5122
5123 * window.c (Vrecenter_redisplay): New variable.
5124 (syms_of_window): Initialize it.
5125 (Qtty): New extern declaration.
5126 (Frecenter): Only do redisplay if Vrecenter_redisplay requests it.
5127
c6da7cd2
JM
51282009-06-23 Jim Meyering <meyering@redhat.com>
5129
1ac9108a
SM
5130 * src/ftfont.c (setup_otf_gstring, ftfont_shape_by_flt):
5131 Use xmalloc and xrealloc (not malloc and realloc), so subsequent heap
632c2030 5132 pointer dereferences are guaranteed to be valid.
c6da7cd2 5133
678dca3d
KH
51342009-06-23 Kenichi Handa <handa@m17n.org>
5135
74d75424
KH
5136 * emacs.c (main): Call init_font ().
5137
5138 * font.h (Vfont_log): Extern it.
5139 (FONT_ADD_LOG, FONT_DEFERRED_LOG): New macros.
5140
5141 * font.c (font_sort_entities, font_list_entities)
5142 (font_matching_entity, font_open_entity)
5143 (font_close_object): Change font_add_log to FONT_ADD_LOG.
5144 (Vfont_log): Delete static.
5145 (font_log_env_checked): Delete this variable.
5146 (font_add_log): Don't check font_log_env_checked.
5147 (font_deferred_log): Check Vfont_log.
5148 (init_font): New function.
5149
678dca3d
KH
5150 * ftfont.c: Change font_add_log to FONT_ADD_LOG.
5151
5152 * w32font.c: Change font_add_log to FONT_ADD_LOG.
5153
5154 * w32uniscribe.c: Change font_add_log to FONT_ADD_LOG.
5155
5156 * xfont.c: Change font_add_log to FONT_ADD_LOG.
5157
5158 * fontset.c (fontset_font): Call FONT_DEFERRED_LOG.
5159 (face_for_char): Don't call font_deferred_log here.
5160 (font_for_char): Likewise.
5161
8a668709
CY
51622009-06-22 Chong Yidong <cyd@stupidchicken.com>
5163
9a01ee33
CY
5164 * w32term.c (x_draw_glyph_string): Use the glyph string's width
5165 rather than its background_width for drawing the overline and
5166 underline (Bug#489).
5167
5168 * xterm.c (x_draw_glyph_string): Use the glyph string's width
5169 rather than its background_width for drawing the overline and
5170 underline (Bug#489).
ec7c9926
CY
5171 (xg_default_icon_file): New variable.
5172 (syms_of_xterm): Initialize it to the Emacs SVG icon file.
5173 (x_bitmap_icon): Under GTK, use xg_default_icon_file.
9a01ee33 5174
8a668709
CY
5175 * xdisp.c (Qbefore_string, Qafter_string): Add externs.
5176 (load_overlay_strings): Remove externs.
5177 (fast_find_position): Function deleted.
5178 (mouse_face_from_buffer_pos): New function, based on
5179 fast_find_position. Correctly handle before-strings,
5180 display-strings, and after-strings (Bug#1220).
5181 (note_mouse_highlight): Use mouse_face_from_buffer_pos.
5182
4d4c02d8
CY
51832009-06-21 Chong Yidong <cyd@stupidchicken.com>
5184
1ac9108a 5185 * xdisp.c (IT_DISPLAYING_WHITESPACE): Define for !HAVE_WINDOW_SYSTEM.
4d4c02d8
CY
5186 (move_it_in_display_line_to, move_it_in_display_line_to)
5187 (display_line): Remove #ifdef HAVE_WINDOW_SYSTEM.
5188
70243478
CY
51892009-06-21 Chong Yidong <cyd@stupidchicken.com>
5190
5191 * Branch for 23.1.
5192
13087e59
JR
51932009-06-21 Jason Rumney <jasonr@gnu.org>
5194
5195 * w32term.c (keyboard_codepage): New static variable.
5196 (w32_read_socket) [WM_INPUTLANGCHANGE]: Update it.
5197 (w32_read_socket) [WM_CHAR]: Use it to decode character
5198 input (bug#3237).
5199 (w32_initialize): Initialize it.
5200 (codepage_for_locale): New function.
5201
4735b74e
KR
52022009-06-20 Ken Raeburn <raeburn@raeburn.org>
5203
5204 * process.c (status_message): Pass Faset index argument as a lisp
5205 object, so as to work with USE_LISP_UNION_TYPE.
5206
0e727afa
YM
52072009-06-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5208
5209 * coding.c (Ffind_coding_systems_region_internal):
5210 Cache checked characters.
5211
cf299835
KH
52122009-06-18 Kenichi Handa <handa@m17n.org>
5213
1ac9108a 5214 * coding.c (decode_coding_iso_2022): Check MSB of bytes more rigidly.
cf299835 5215
90f20d94
AS
52162009-06-18 Andreas Schwab <aschwab@redhat.com>
5217
5218 * xdisp.c (redisplay_internal): Check that the frame is still
5219 live after redisplay of its windows.
5220 (redisplay_windows): Check that the window is still live.
5221
7f1faf1c
KH
52222009-06-17 Andreas Schwab <schwab@linux-m68k.org>
5223
5224 * coding.c (detect_coding_utf_16): Fix previous change.
5225
cc13543e
KH
52262009-06-16 Kenichi Handa <handa@m17n.org>
5227
5228 * coding.c (detect_coding_utf_16): Fix the logic of rejecting
5229 UTF-16 by checking the dispersion of Eth and Oth bytes.
5230
977b85f4
AS
52312009-06-15 Andreas Schwab <schwab@linux-m68k.org>
5232
5233 * coding.c (detect_coding_utf_16): Fix typo counting odd bytes.
5234
66bd43d1
KH
52352009-06-15 Kenichi Handa <handa@m17n.org>
5236
5237 * process.c (status_message): Fix previous change. Be sure to
5238 decode a localized string.
5239
cb5ca9c5
YM
52402009-06-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5241
5242 * xterm.c (x_delete_terminal): Put previous change in #if 0 and
5243 add comment explaining why.
5244
ec7709ba 52452009-06-14 Sidney Markowitz <sidney@sidney.com>
5ee6f629 5246
ec7709ba 5247 * nsmenu.m (EmacsTooltip: setText): Set height of tooltip.
5ee6f629 5248
4b7f335c
AR
52492009-06-14 Adrian Robert <Adrian.B.Robert@gmail.com>
5250
5251 * nsfont.m (ns_attribute_value): Remove.
5252 (ns_attribute_fvalue): Incorporate code from ns_attribute_value.
5253 (ns_has_attribute): Shrink the normal range.
5254 (ns_findfonts): Don't worry about requested spec in determining
5255 need for synthItal.
e41820ee 5256 (ns_get_covering_families): Retain scriptToFamilies.
4b7f335c 5257
73b26103
SZ
52582009-06-14 Seiji Zenitani <zenitani@mac.com>
5259
5260 * xdisp.c [USE_MAC_TOOLBAR]: Remove obsolete definition for Mac Carbon.
5261
5753e4da
KH
52622009-06-11 Kenichi Handa <handa@m17n.org>
5263
5264 * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
5265 overhang for the static composition case.
5266
3561b671
KH
52672009-06-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5268
5753e4da
KH
5269 * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
5270 overhang for the automatic composition case.
5271
3561b671
KH
5272 * xterm.c (x_compute_glyph_string_overhangs): Handle the automatic
5273 composition case.
5274
852bbd41
CY
52752009-06-10 Chong Yidong <cyd@stupidchicken.com>
5276
5277 * xdisp.c (get_next_display_element): When handling wrap-prefix
5278 and line-prefix, treat \n as a control character (bug#3502).
5279
9903d1e6
KH
52802009-06-10 Kenichi Handa <handa@m17n.org>
5281
5282 * font.c (font_parse_family_registry): Fix for one-char foundry.
5283 (font_sort_entities): Initialize prefer_prop[FONT_AVGWIDTH_INDEX].
5284
0bcbaaaa
CY
52852009-06-09 Dmitry Dzhus <dima@sphinx.net.ru> (tiny change)
5286
5287 * process.c (status_message): Fix handling of multibyte signal
5288 string (Bug#3499).
5289
40aa3f13
JM
52902009-06-09 Jim Meyering <meyering@redhat.com>
5291
1f80c7e2
CY
5292 * xfaces.c (Fx_load_color_file): Avoid array bounds error if the
5293 color name is missing.
40aa3f13 5294
72d51285
KH
52952009-06-09 Kenichi Handa <handa@m17n.org>
5296
5297 * charset.c (Fmap_charset_chars): In docstring, state clearly that
5298 FROM-CODE and TO-CODE are codepoints of CHARSET.
5299
c1d04d84
AR
53002009-06-08 Adrian Robert <Adrian.B.Robert@gmail.com>
5301
5302 * nsterm.m (ns_use_system_highlight_color): Drop, unused.
5303
53042009-06-08 Adrian Robert <Adrian.B.Robert@gmail.com>
5305
5306 Changes to support :script/:lang/:otf in NS font driver.
5307 * nsfont.m (nsfont_escape_name, nsfont_unescape_name)
5308 (nsfont_get_family, nsfont_char_width): Rename to ns_ prefix to
5309 indicate not part of font driver interface, and change callers.
5310 (ns_get_family): Remove pointless null check.
5311 (nsfont_spec_to_traits, nsfont_fmember_to_entity): Replace with
5312 ns_spec_to_descriptor, ns_descriptor_to_entity.
5313 (nsfont_trait_distance, nsfont_make_fontset_for_font): Remove.
5314 (ns_attribute_value, ns_attribute_fvalue, ns_has_attribute)
5315 (ns_spec_to_descriptor, ns_descriptor_to_entity)
5316 (ns_charset_covers, ns_lang_to_script, ns_otf_to_script)
5317 (ns_get_req_script, ns_accumulate_script_ranges)
5318 (ns_script_to_charset, ns_get_covering_families, ns_findfonts):
5319 New functions.
5320 (nsfont_list, nsfont_match): Use ns_findfonts.
5321 (nsfont_open): Use font descriptor instead of traits.
5322 (nsfont_draw): Handle "automatic" (lookup-table) compositions.
5323 (dump_glyphstring): Rename to ns_dump_glyphstring.
5324
c7eb9816
AR
5325 * nsterm.h (dump_glyphstring): Rename to ns_dump_glyphstring.
5326
c1d04d84
AR
5327 * nsfns.m (Fns_popup_font_panel): Use shared font manager.
5328
5329 * fontset.c (fontset_from_font): Remove NS-specific code.
5330
ec7709ba 53312009-06-08 Peter Jones <pjones@pmade.com> (tiny change)
c1d04d84
AR
5332
5333 * nsterm.m (ns_draw_window_cursor): Respect cursor_type for
5334 nonactive windows.
5335
31fd7c5c 53362009-06-08 Felix Mueller <felix@enqueue.eu> (tiny change)
c1d04d84 5337
1ac9108a 5338 * nsterm.m (ns_init_paths): Append path separator to INFOPATH variable.
c1d04d84 5339
68852c13 53402009-06-08 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
e7777236
AR
5341
5342 * keyboard.c (kbd_buffer_get_event): Null-check used_mouse_menu.
5343
6756cd1d
CY
53442009-06-07 Chong Yidong <cyd@stupidchicken.com>
5345
5346 * xdisp.c (move_it_in_display_line_to): On text-only terminals,
5347 account for the overflowing of newlines into the last glyph on the
5348 display line (Bug#3482).
5349
28bf482a
DR
53502009-06-05 David Reitter <david.reitter@gmail.com>
5351
ec7709ba
JB
5352 * nsselect.m (Fx_own_selection_internal, Fx_selection_exists_p)
5353 (Fx_selection_owner_p): Rename from Fns_own_selection_internal,
28bf482a
DR
5354 Fns_selection_exists_p, Fns_selection_owner_p.
5355
fdb55376
JR
53562009-06-03 Jason Rumney <jasonr@gnu.org>
5357
5358 * w32fns.c (x_create_tip_frame): Use the uniscribe font backend if
5359 available. (Bug#3379)
5360
05129fbe
KH
53612009-05-29 Kenichi Handa <handa@m17n.org>
5362
1ac9108a
SM
5363 * coding.c (get_translation_table):
5364 Check Venable_character_translation.
05129fbe 5365
ec7709ba 53662009-05-26 David Reitter <david.reitter@gmail.com>
15891144 5367
ec7709ba
JB
5368 * nsterm.m (ns_raise_frame): Only raise frame if visible.
5369 (x_make_frame_visible): Move frame to front rather than calling
15891144 5370 ns_raise_frame().
ec7709ba 5371 (keyDown:): Do not swallow events that aren't re-sent if frame
15891144 5372 isn't key window.
ec7709ba 5373 (drawRect:): Do not set visibility/iconified flags because
15891144
DR
5374 drawRect may be called by NSView even if the frame is hidden.
5375
ec7709ba
JB
5376 * nsfns.m (Fx_create_frame): Follow other ports in
5377 determining visibility; default to t. Ensure async_visible is set.
15891144 5378
21f73755
EZ
53792009-05-23 Eli Zaretskii <eliz@gnu.org>
5380
5381 * dired.c (Ffile_attributes): Doc fix.
5382
34001e41
CY
53832009-05-22 Chong Yidong <cyd@stupidchicken.com>
5384
5385 * m/mips.h [GNU_LINUX]: Don't define DATA_START (Bug#2685).
5386
46306a17
SM
53872009-05-21 Stefan Monnier <monnier@iro.umontreal.ca>
5388
5389 * xfont.c (xfont_list_pattern): Don't initialize xfont_scripts_cache
5390 and xfont_scratch_props.
5391 (syms_of_xfont): Do it here instead.
5392 (xfont_find_ccl_program): Delete, unused.
5393 (xfont_open): Delete unused var `i'.
5394
ef6e0694
KH
53952009-05-21 Kenichi Handa <handa@m17n.org>
5396
5397 * fontset.c (Qlatin): Don't make it static.
5398
46306a17
SM
5399 * xfont.c (xfont_chars_supported, xfont_supported_scripts):
5400 New functions.
ef6e0694
KH
5401 (xfont_scripts_cache, xfont_scratch_props): New variables.
5402 (Qlatin, Vscalable_fonts_allowed): Extern it.
46306a17
SM
5403 (xfont_list_pattern): Argument changed. Callers changed.
5404 Check Vscalable_fonts_allowed. Check the support of a script.
ef6e0694
KH
5405 (xfont_list): Don't reject a font spec with :script property.
5406 (xfont_has_char): Fix setting of encoding.
5407 (syms_of_xfont): Staticpro and initialize xfont_scripts_cache and
5408 xfont_scratch_props.
5409
54102009-05-19 Kenichi Handa <handa@m17n.org>
5411
46306a17 5412 * font.c (font_sort_entities): Rename from font_sort_entites.
ef6e0694
KH
5413 Callers changed.
5414
54152009-05-18 Kenichi Handa <handa@m17n.org>
5416
5417 * font.c (font_find_for_lface): Copy SPEC's FONT_TYPE too.
5418
ac71ced7
SM
54192009-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
5420
5421 * frame.c (do_switch_frame) [NS_IMPL_COCOA]: Don't raise any window.
5422 (delete_frame) [NS_IMPL_COCOA]: Instead, do it here.
5423
1c6d1051
YM
54242009-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5425
5426 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase here.
5427 (x_delete_terminal): Dissociate resource database from display and
5428 then call XrmDestroyDatabase before closing display.
5429
9b9b779c
AR
54302009-05-18 Adrian Robert <Adrian.B.Robert@gmail.com>
5431
5432 * nsterm.m (ns_read_socket): Remove unused variable.
1564e649
AR
5433 * frame.c (do_switch_frame): Under NS_IMPL_COCOA section, check
5434 whether selected frame is viable before raising it (based on patch
5435 by David Reitter), and improve commentary.
5436 * nsfont.m (nsfont_make_fontset_for_font): Avoid a compiler warning.
9b9b779c 5437
cccd42d5
KH
54382009-05-15 Kenichi Handa <handa@m17n.org>
5439
5440 * font.c (Ffont_spec): Check arguments.
5441
337fbd17
CY
54422009-05-14 Chong Yidong <cyd@stupidchicken.com>
5443
5444 * xfaces.c (tty_supports_face_attributes_p): Recognize unspecified
5445 weight when testing attributes (Bug#3282).
5446
47a6002f
JD
54472009-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5448
5449 * gtkutil.c (xg_frame_set_char_size): Set frame pixel width/height to
5450 what we expect to get in the next ConfigureNotify event.
5451
9cb363db
YM
5452 * xftfont.c (xftfont_open): Make sure that Xrender extension is added
5453 before Xft one (Bug#1696).
5454
b9126609
CY
54552009-05-07 David Reitter <david.reitter@gmail.com>
5456
5457 * nsfns.m (Fx_display_planes): Compute bitplanes using
5458 NSBitsPerPixelFromDepth (Bug#3207).
5459
27a69fd9
CY
54602009-05-10 Chong Yidong <cyd@stupidchicken.com>
5461
5462 * editfns.c (Ftranspose_regions): Doc fix (Bug#3248).
5463
00f37552
TTN
54642009-05-10 Ulrich Mueller <ulm@gentoo.org>
5465
5466 * s/gnu-linux.h: Make GCPROs and UNGCPRO no-ops also on SuperH.
5467
2d82a920
DR
54682009-05-07 David Reitter <david.reitter@gmail.com>
5469
ec7709ba
JB
5470 * nsterm.m (ns_dumpglyphs_stretch, ns_dumpglyphs_image):
5471 Respect mouse face background.
2d82a920 5472
46b0d52d
DR
54732009-05-07 David Reitter <david.reitter@gmail.com>
5474
ec7709ba
JB
5475 * nsterm.m (note_mouse_movement, ns_frame_up_to_date):
5476 Mouse movement/highlight: bracket drawing operations
46b0d52d
DR
5477 in ns_update_begin and ns_update_end.
5478
ce1b23bb
SM
54792009-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
5480
5996e1b7
SM
5481 * nsfns.m (ns_get_screen): Rewrite.
5482 Don't presume selected-frame is of type `ns'.
5483
ba98e3a0
SM
5484 * font.c (font_update_drivers): Sanity fallback to avoid disabling
5485 all drivers.
5486
ce1b23bb
SM
5487 * nsterm.m (-windowDidResize:): Avoid inf-loop under GNUStep.
5488
bcda200f
YM
54892009-05-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5490
5491 * keyboard.h (add_user_signal): Fix typo in extern.
5492
5493 * lisp.h (add_user_signal): Remove extern.
5494
5495 * unexelf.c (unexec): Consider a section to precede the .bss section
5496 if its addresses overlap that of .bss.
5497 (unexec) [NS_IMPL_GNUSTEP]: Copy ObjC-related data from old file
5498 instead of dumping process.
5499
864660a2
SM
55002009-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
5501
5502 * keyboard.c (syms_of_keyboard): Staticpro pending_funcalls.
5503
50da4e56
SM
55042009-05-04 Stefan Monnier <monnier@iro.umontreal.ca>
5505
5506 * Makefile.in (ctagsfiles1, ctagsfiles2): Include ObjC files in TAGS.
5507
51520a1a
DN
55082009-05-02 Dan Nicolaescu <dann@ics.uci.edu>
5509
5510 * xterm.c (x_handle_net_wm_state): Move declaration of lval before
5511 any statements.
5512
409ea3a1
AS
55132009-05-02 Andreas Schwab <schwab@linux-m68k.org>
5514
59c4c60f
AS
5515 * process.c (read_process_output): Make sure the current buffer is
5516 always restored.
5517
409ea3a1
AS
5518 * coding.c (record_conversion_result): Don't modify
5519 Vlast_code_conversion_error for successful result.
5520 (alloc_destination): Don't clobber conversion result. (Bug#1650)
5521
56f00ed2
KH
55222009-05-01 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
5523
5524 * charset.c (load_charset): Reformat X==Y==Z to (X==Y)==Z.
896b1cc9 5525 (load_charset_map): Remove unnecessary code.
56f00ed2 5526
4491c9d2
DR
55272009-04-30 David Reitter <david.reitter@gmail.com>
5528
35f5b128 5529 * nsterm.m (convert_ns_to_X_keysym): Define function keys f16
4491c9d2
DR
5530 through f24.
5531
6970f632
CY
55322009-04-30 Chong Yidong <cyd@stupidchicken.com>
5533
5534 * xfaces.c (face_at_buffer_position): New arg base_face_id.
5535
5536 * xdisp.c (handle_face_prop): Pass base_face_id of iterator to
5537 face_at_buffer_position.
5538 (face_before_or_after_it_pos, get_next_display_element)
5539 (note_mouse_highlight): Update face_at_buffer_position call.
5540
5541 * term.c (term_mouse_highlight):
5542 * msdos.c (IT_note_mouse_highlight):
5543 * fontset.c (Finternal_char_font):
35f5b128 5544 * font.c (font_at, font_range): Update face_at_buffer_position call.
6970f632
CY
5545
5546 * dispextern.h (face_at_buffer_position): Update prototype.
5547
0c616f63
KH
55482009-04-30 Kenichi Handa <handa@m17n.org>
5549
35f5b128 5550 * fontset.c (fontset_find_font): Check if rfont_def is Qnil or not.
0c616f63 5551
ad3aaf33
AS
55522009-04-29 Andreas Schwab <schwab@linux-m68k.org>
5553
5554 * callproc.c (Fcall_process): Fix GC protection. Make sure
5555 current buffer is always restored.
5556
c3c963a0
YM
55572009-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5558
5559 * atimer.c (init_atimer): Also clear stopped_atimers.
5560
5561 * keyboard.c (init_keyboard) [POLL_FOR_INPUT]: Reset poll_timer.
5562
7e3386cb
YM
5563 * process.c (create_process): Clean up merger residues of
5564 2008-07-17 change.
5565
91f68422
CY
55662009-04-29 Ulrich Mueller <ulm@gentoo.org>
5567
5568 * lread.c (Vread_circle): New variable.
5569 (read1): Disable recursive read if Vread_circle is nil.
5570
24b34550
KH
55712009-04-29 Kenichi Handa <handa@m17n.org>
5572
5573 * fontset.h (set_default_ascii_font): Delete extern.
5574
5575 * fontset.c (set_default_ascii_font): Delete this unused function.
5576
5577 * frame.c (x_set_font): When ARG is a font-object, check if the
5578 font-object matches with the ASCII font-spec of the frame's
9c358bda 5579 fontset. If not, create a new fontset for the frame. (Bug #3075)
24b34550 5580
77bf07e1
AS
55812009-04-28 Andreas Schwab <schwab@linux-m68k.org>
5582
5583 * fns.c (Flocale_info): Protect vector from GC during decoding.
5584
5585 * process.c (Fstart_process): Protect argv strings from GC during
5586 encoding.
5587
2c55aacf
AS
55882009-04-27 Andreas Schwab <schwab@linux-m68k.org>
5589
5590 * sysdep.c: Include <ctype.h>.
5591
b892d3c9
DR
55922009-04-27 David Reitter <david.reitter@gmail.com>
5593
35f5b128 5594 * nsfont.m (nsfont_open): Remove unused variable shrink.
b892d3c9
DR
5595 Remove commented-out code.
5596
9d0644c4
JB
55972009-04-26 Johan Bockgård <bojohan@gnu.org>
5598
5599 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
5600
b7053016
JR
56012009-04-25 Jason Rumney <jasonr@gnu.org>
5602
5603 * w32font.c (clear_cached_metrics): Remove, unused since 2008-08-02.
5604
4e8231f3
YM
56052009-04-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5606
5607 * fringe.c (init_fringe_bitmap) [HAVE_X_WINDOWS && WORDS_BIG_ENDIAN]:
5608 Swap bytes in short integer if fringe bitmap width > 8.
5609
493dcf2c
KH
56102009-04-23 Kenichi Handa <handa@m17n.org>
5611
5612 * xfaces.c (Fx_list_fonts): If a font size is specified in
5613 PATTERN, set it in returned scalable fonts.
5614
401e9e57
CY
56152009-04-22 Chong Yidong <cyd@stupidchicken.com>
5616
708e05dc
CY
5617 * keyboard.c (Fset_input_meta_mode): Doc fix.
5618
5619 * dispnew.c (Fsend_string_to_terminal): Doc fix.
5620
1ac9108a 5621 * data.c (Fterminal_local_value, Fset_terminal_local_value): Doc fixes.
708e05dc
CY
5622
5623 * coding.c (Fterminal_coding_system): Doc fix.
5624
5625 * xfns.c (Fx_display_grayscale_p, Fx_display_pixel_width)
5626 (Fx_display_pixel_height, Fx_display_planes)
5627 (Fx_display_color_cells, Fx_server_max_request_size)
5628 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
5629 (Fx_display_mm_height, Fx_display_mm_width)
5630 (Fx_display_backing_store, Fx_display_visual_class)
1ac9108a
SM
5631 (Fx_display_save_under, Fx_close_connection, Fx_synchronize):
5632 Doc fixes, replacing "terminal id" with "terminal object".
708e05dc
CY
5633 (check_x_display_info): Handle terminal objects instead of
5634 terminal ids.
5635
401e9e57
CY
5636 * term.c (Ftty_display_color_p, Ftty_display_color_cells)
5637 (Ftty_type, Fcontrolling_tty_p, Ftty_no_underline, Fsuspend_tty)
1ac9108a
SM
5638 (Fresume_tty, Vsuspend_tty_functions, Vresume_tty_functions):
5639 Doc fixes, replacing "terminal id" with "terminal object".
401e9e57 5640
df80c7f0
KH
56412009-04-21 Kenichi Handa <handa@m17n.org>
5642
5a8f12af 5643 * font.c (font_load_for_lface): Cancel previous change (bug#2994).
c0a6070d 5644 (font_score): Check AVGWIDTH too.
908567ef 5645
df80c7f0
KH
5646 * coding.c (decode_coding_utf_16): Reduce charbuf_end for the
5647 worst case.
1ac9108a
SM
5648 (decode_coding_sjis, decode_coding_big5, decode_coding_charset)
5649 (decode_coding_emacs_mule, decode_coding_iso_2022): Likewise.
df80c7f0 5650
705af33f
JR
56512009-04-19 Jason Rumney <jasonr@gnu.org>
5652
5653 The following changes fix Bug#3005 for wide glyphs on each platform,
b71ac3dd 5654 without reintroducing Bug#1258 for stretch glyphs.
705af33f
JR
5655
5656 * xterm.c (x_draw_bar_cursor): Limit cursor width differently for
5657 BAR_CURSOR and HBAR_CURSOR. Calculate width of HBAR_CURSOR using
5658 get_phys_cursor_geometry.
5659
b71ac3dd 5660 * w32term.c (x_draw_bar_cursor): Limit cursor width differently
705af33f
JR
5661 for BAR_CURSOR and HBAR_CURSOR. Calculate width of HBAR_CURSOR
5662 using get_phys_cursor_geometry.
5663
5664 * nsterm.m (ns_draw_window_cursor): HBAR_CURSOR width already
5665 correctly calculated.
5666
dc2933eb
JD
56672009-04-19 Jan Djärv <jan.h.d@swipnet.se>
5668
1ac9108a
SM
5669 * gtkutil.c (xg_tool_bar_menu_proxy, update_frame_tool_bar):
5670 Use G_CALLBACK instead of GTK_SIGNAL_FUNC which is deprecated.
dc2933eb
JD
5671 (xg_initialize): Use g_type_class_ref instead of gtk_type_class which
5672 is deprecated.
5673
973e7849
AS
56742009-04-18 Andreas Schwab <schwab@linux-m68k.org>
5675
5676 * font.c (font_put_frame_data): Use xfree instead of free.
5677
314d66f4
JB
56782009-04-17 Juanma Barranquero <lekktu@gmail.com>
5679
5680 * w32font.c (Qja, Qko): Remove declarations.
5681 (syms_of_w32font): Don't DEFSYM them.
5682
cf702558
CY
56832009-04-17 Chong Yidong <cyd@stupidchicken.com>
5684
5685 * font.c (Qja, Qko): Move definitions here from ftfont.c.
5686
5687 * font.h (Qja, Qko): Extern them.
5688
5689 * ftfont.c (Qja, Qko): Remove declarations.
5690
5691 * xfont.c (Qja, Qko): Remove declarations.
5692
b50504f5
KH
56932009-04-17 Kenichi Handa <handa@m17n.org>
5694
bde25748
KH
5695 * editfns.c (Ftranslate_region_internal): Use Fconcat to make a
5696 string from a vector to handle Latin-1 characters correctly.
5697
b50504f5
KH
5698 * ftfont.c (ftfont_pattern_entity): Return a newly allocated
5699 entity even if the cache hits.
5700
f4646fff
AS
57012009-04-16 Andreas Schwab <schwab@linux-m68k.org>
5702
5703 * search.c (boyer_moore): Use zero as marker value for a possible
6340c70e 5704 match instead of depending on overflow behavior. (Bug#2844)
f4646fff 5705
e7deaab0
AS
5706 * search.c: Use EMACS_INT for buffer positions. Add prototypes.
5707 * lisp.h: Adjust prototypes.
5708
0a0e7d49
CY
57092009-04-16 Chong Yidong <cyd@stupidchicken.com>
5710
5711 * keyboard.c (adjust_point_for_property): Disable 2009-02-12
5712 change (Bug#3003).
5713
3c908a57
KH
57142009-04-16 Kenichi Handa <handa@m17n.org>
5715
1ac9108a 5716 * xfont.c (xfont_has_char): Special handling of `ja' and `ko' adstyle.
bd0af90d
KH
5717
5718 * xftfont.c (xftfont_has_char): Special handling of `ja' and `ko'
5719 adstyle.
5720
5721 * ftfont.c (Qja, Qko): Don't make them static.
5722 (enum ftfont_cache_for): New enum.
5723 (fc_charset_table): Undo the previous change.
5724 (ftfont_get_latin1_charset): Delete it.
1ac9108a
SM
5725 (ftfont_pattern_entity): Check cache by ftfont_lookup_cache.
5726 Set FONT_SIZE_INDEX of the entity to 0 for a scalable font. For a
bd0af90d
KH
5727 non-scarable font, try to get AVERAGE_WIDTH.
5728 (ftfont_lookup_cache): Argument FOR-FACE is changed to CACHE_FOR.
5729 Change ft_face_cache from a list of a hash-table. Don't check
5730 `ja' and `ko' adstyle here.
5731 (ftfont_get_fc_charset): Call ftfont_lookup_cache with
5732 FTFONT_CACHE_FOR_CHARET.
5733 (ftfont_get_charset): Undo the previous change.
1ac9108a 5734 (ftfont_open): Call ftfont_lookup_cache with FTFONT_CACHE_FOR_FACE.
bd0af90d
KH
5735 (ftfont_close): Likewise.
5736 (ftfont_has_char): Special handling of `ja' and `ko' adstyle.
5737
5738 * font.c (font_sort_entites): Change the meaning of the arg
5739 BEST-ONLY. Don't optimize for VEC of lenght 1.
5740 (font_select_entity): Just return the value of font_sort_entites.
5741
5742 * xfaces.c (merge_face_vectors): Reflect font properties in
5743 to[LFACE_FONT_INDEX] to the other face attributes. Don't call
5744 font_clear_prop if a face attribute doesn't change.
5745
3c908a57
KH
5746 * charset.h (charset_ksc5601): Extern it.
5747
5748 * charset.c (charset_ksc5601): New variable.
5749 (Fdefine_charset_internal): Set charset_ksc5601.
5750 (init_charset_once): Initialize charset_ksc5601 to -1.
5751
d65859c3
DN
57522009-04-15 Dan Nicolaescu <dann@ics.uci.edu>
5753
5754 * fileio.c (history_delete_duplicates): Remove unused declaration.
5755
5756 * callint.c (history_delete_duplicates): New declaration.
5757 (Fcall_interactively): Remove command history duplicates when
5758 history_delete_duplicates is true.
5759
3ba010e5
EZ
57602009-04-14 Eli Zaretskii <eliz@gnu.org>
5761
5762 * buffer.c (syms_of_buffer) <line-spacing>: Doc fix.
5763
06f19b91
KH
57642009-04-14 Kenichi Handa <handa@m17n.org>
5765
5766 * font.c (Ffont_info): Fix docstring. Fix the second element of
5767 the returned value (bug#2949).
5768
2cce8bfc
CY
57692009-04-14 Chong Yidong <cyd@stupidchicken.com>
5770
5771 * xdisp.c (Vwrap_prefix, Vline_prefix): Reflow docstrings.
5772
d156542d
KH
57732009-04-14 Kenichi Handa <handa@m17n.org>
5774
5775 * xfont.c (xfont_has_char): The font has C if C is ASCII and the
5776 encoding charset is ascii_compatible.
5777
5778 * charset.c (Fdefine_charset_internal): Make charset
5779 ascii-compatible if the method is CHARSET_METHOD_OFFSET, the
5780 code_offset is 0, and covers all ASCII characters.
5781
86fa089e
SM
57822009-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
5783
5784 * nsselect.m (symbol_to_nsstring, clean_local_selection_data)
5785 (ns_string_to_pasteboard_internal):
5786 * nsmenu.m (process_dialog):
5787 * nsimage.m (ns_load_image): Use SDATA and ASET where appropriate.
5788 * nsfont.m (nsfont_open): Use XHASH to make it compile with LISP_UNION.
5789 * lisp.h (Fx_load_color_file): Declare.
5790
a8a3728b
KH
57912009-04-13 Kenichi Handa <handa@m17n.org>
5792
1ac9108a 5793 * font.c (font_delete_unmatched): Preserve the order of list elements.
a8a3728b
KH
5794 (font_select_entity): Suppress the code to optimize for the same
5795 kind of fonts.
5796 (font_load_for_lface): Get a font that supports at least ASCII
5797 characters.
5798
5799 * ftfont.c (Qja, Qko): New variables.
5800 (fc_charset_table): Delete uniquifier data for iso8859-1.
5801 (ftfont_get_latin1_charset): New function.
5802 (get_adstyle_property): New function.
5803 (ftfont_pattern_entity): Set FONT_ADSTYLE_INDEX of entity for
5804 bitmap fonts.
5805 (ftfont_lookup_cache): Handle the case that KEY is a font-entity.
5806 Delete iso-8859-1 range from the charset of fonts whose adstyle is
5807 `ko' or `ja'.
5808 (ftfont_get_fc_charset): Call ftfont_lookup_cache with ENTITY.
1ac9108a 5809 (ftfont_get_charset): For iso8859-1, call ftfont_get_latin1_charset.
a8a3728b
KH
5810 (ftfont_list): Don't refuse a font spec with non-nil `adstyle'
5811 property.
5812 (ftfont_open): Call ftfont_lookup_cache with ENTITY.
5813 (syms_of_ftfont): DEFSYM Qja and Qko.
5814
483670b5
KH
58152009-04-09 Kenichi Handa <handa@m17n.org>
5816
12b55765
KH
5817 * charset.c (map_charset_chars): For a charset of `superset'
5818 method, fix calculation of code range.
5819
483670b5
KH
5820 * font.c (font_put_extra): If VAL is nil, delete the slot for PROP
5821 from the list of extra properties.
5822 (font_clear_prop): Be sure to delete `:name' font property.
5823
57d3b93b
KH
58242009-04-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5825
b4b2c2ca
YM
5826 * dispnew.c (redraw_overlapping_rows): Fix detection of
5827 overlapping for topmost and bottommost rows.
5828
1ac9108a 5829 * ftfont.c (ftfont_text_extents): Fix calculation of metrics->descent.
57d3b93b 5830
472c3609
JR
58312009-04-06 Jason Rumney <jasonr@gnu.org>
5832
5833 * frame.c (x_set_font): Avoid C99 mid-block variable declaration.
5834
ab193662
KH
58352009-04-06 Kenichi Handa <handa@m17n.org>
5836
5837 * ftxfont.c (ftxfont_draw_backgrond): Fix args to XFillRectangle.
5838
5839 * xftfont.c (xftfont_open): Fix setting font->underline_thickness.
5840
0c26f026
KH
58412009-04-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5842
5843 * ftfont.c (ftfont_open): Fix checking of the return value of
5844 FT_Load_Char. Fix setting font->underline_thickness.
5845
e173bbce
CY
58462009-04-04 Chong Yidong <cyd@stupidchicken.com>
5847
5848 * terminal.c (Fterminal_name, Fdelete_terminal, Fterminal_name)
5849 (Fterminal_parameters, Fterminal_parameter)
5850 (Fset_terminal_parameter): In doc string, refer to terminal
5851 objects rather than terminal ids.
5852
693a2698
EZ
58532009-04-04 Eli Zaretskii <eliz@gnu.org>
5854
5855 * dosfns.c (system_process_attributes) [SYSTEM_MALLOC]: Don't call
5856 ret_lim_data. (Bug#2867)
5857
d5221487
CY
58582009-04-03 Chong Yidong <cyd@stupidchicken.com>
5859
5860 * term.c (produce_stretch_glyph): Reduce width of stretch glyphs
5861 so they don't get wider than the window, matching 2006-01-23
5862 change to the partner function in xdisp.c (Bug#2800).
5863
223509a3
KH
58642009-04-03 Kenichi Handa <handa@m17n.org>
5865
5866 * print.c (print_object): Make each lowest sub_char_table start a
5867 new line (Bug#2866).
5868
74fcd0b1
KH
58692009-04-02 Kenichi Handa <handa@m17n.org>
5870
5871 * fontset.c (fontset_font): Record no-font when a fontset
5872 explicitly tells not to try another font-specs.
5873
c542407d
SM
58742009-03-30 Pierre Poissinger <pierre.poissinger@gmail.com> (tiny change)
5875
5876 * charset.c (map_charset_for_dump): Add missing UNGCPRO.
5877
e3869731
KH
58782009-03-30 Kenichi Handa <handa@m17n.org>
5879
d8d2f142
KH
5880 * fontset.c (fontset_from_font): Specify only registry in a
5881 font-spec for all characters supported by that registry.
5882
e3869731
KH
5883 * ftfont.c: Fix previous change. Define ftfont_variation_glyphs
5884 even if HAVE_M17N_FLT is not defined.
5885
5da5f805
CY
58862009-03-29 Sebastian Rose <sebastian_rose@gmx.de> (tiny change)
5887
5888 * ftfont.c: Conditionalize prototyping and use of
5889 ftfont_variation_glyphs.
5890
ab226c50
SM
58912009-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
5892
9628fed7
SM
5893 * frame.c (delete_frame): Work around compiler bug.
5894
5895 * editfns.c (general_insert_function): Adjust to insdel.c changes.
5896 * insdel.c (prepare_to_modify_buffer, signal_before_change):
5897 Some more EMACS_INT.
5898 * lisp.h (copy_text, count_size_as_multibyte): Fix last change.
5899
5900 * xdisp.c (dump_glyph): Fix typo.
5901
ae19ba7c
SM
5902 * insdel.c (move_gap, move_gap_both, gap_left, gap_right)
5903 (adjust_markers_gap_motion, adjust_markers_for_delete)
5904 (adjust_markers_for_insert, adjust_point)
5905 (adjust_markers_for_replace, make_gap_larger, make_gap_smaller)
5906 (make_gap, copy_text, count_size_as_multibyte, insert)
5907 (insert_and_inherit, insert_before_markers)
5908 (insert_before_markers_and_inherit, insert_1)
5909 (count_combining_before, count_combining_after, insert_1_both)
5910 (insert_from_string, insert_from_string_before_markers)
5911 (insert_from_string_1, insert_from_gap, insert_from_buffer)
5912 (insert_from_buffer_1, adjust_after_replace)
5913 (adjust_after_replace_noundo, adjust_after_insert, replace_range)
5914 (replace_range_2, del_range, del_range_1, del_range_byte)
5915 (del_range_both, del_range_2, modify_region)
5916 (prepare_to_modify_buffer, signal_before_change)
5917 (signal_after_change, Fcombine_after_change_execute): Use EMACS_INT
5918 for buffer positions and sizes.
5919 * lisp.h: Adjust prototypes accordingly.
5920
5921 * fileio.c (adjust_markers_for_delete): Move declaration to lisp.h.
5922 (non_regular_inserted, non_regular_nbytes, read_non_regular)
5923 (Finsert_file_contents): Use EMACS_INT for buffer positions.
5924
ab226c50
SM
5925 * fileio.c (Finsert_file_contents): Don't limit size to INT_MAX/4.
5926
46dfb8fb
JD
59272009-03-27 Jan Djärv <jan.h.d@swipnet.se>
5928
5929 * frame.c (x_set_font): If the fullscreen property is non-nil, adjust
5930 lines and columns so we keep the same pixel height and width.
5931
5932 * xterm.c (handle_one_xevent): Call x_handle_net_wm_state if
5933 the property _NET_WM_STATE has changed.
46dfb8fb
JD
5934 (x_handle_net_wm_state): New function to update frame parameter
5935 fullscreen.
5936 (x_term_init): Initialize atoms for _NET_WM_STATE.
5937
5938 * xterm.h (struct x_display_info): Add atoms for _NET_WM_STATE.
5939
d347e494
SM
59402009-03-27 Kevin Ryde <user42@zip.com.au>
5941
5942 * keyboard.c (tty_read_avail_input): Don't treat a -1 return from
5943 Gpm_GetEvent as an error that justifies closing the filedescriptor.
5944 * term.c (close_gpm): Get the filedescriptor as a (new) parameter.
5945 (Fgpm_mouse_stop): Pass that new parameter.
5946 * termhooks.h (close_gpm): Adjust prototype.
5947
84db11d6
SM
59482009-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
5949
c95a5008
SM
5950 * lisp.h (Fx_focus_frame): Declare.
5951
84db11d6
SM
5952 * callint.c (Fcall_interactively): For '^' just delegate the work to
5953 handle-shift-selection.
5954 (syms_of_callint): Move declaration of shift-select-mode to simple.el.
5955
0a1958d6
CY
59562009-03-24 Chong Yidong <cyd@stupidchicken.com>
5957
0bfdff23
CY
5958 * editfns.c (Ffloat_time): Doc fix (Bug#2768).
5959
0a1958d6
CY
5960 * data.c (Qinteractive_form): New variable.
5961 (Finteractive_form): Use it.
5962
5963 * eval.c (Fcommandp): Use Qinteractive_form.
5964
58aec0d6
JR
59652009-03-24 Jason Rumney <jasonr@gnu.org>
5966
5967 * fileio.c (Fsubstitute_in_file_name): Always work on a copy.
5968 Calculate total size precisely. Decode environment variables
5969 before substituting. (Bug#38)
5970
553dd618
KH
59712009-03-24 Kenichi Handa <handa@m17n.org>
5972
5973 * font.c (find_font_encoding): Return Qnil for unsupported
639239cf 5974 encoding (Bug#2722).
553dd618 5975
c39ea606
JD
59762009-03-23 Jan Djärv <jan.h.d@swipnet.se>
5977
5978 * gtkutil.c (xg_display_open): Assign a value to gdpy_def, check
5979 that gdpy is set.
5980
bc9b2b5e
AM
59812009-03-22 Alan Mackenzie <acm@muc.de>
5982
5983 * callint.c (Finteractive): Clarify the doc string - even
5984 promptless elements need \n separators.
5985
9f995a76
JR
59862009-03-22 Jason Rumney <jasonr@gnu.org>
5987
5988 * w32term.c (syms_of_w32term): Doc fix for
5989 x-use-underline-position-properties.
5990
22749e9a
EZ
59912009-03-21 Eli Zaretskii <eliz@gnu.org>
5992
5993 * w32.c (getpwuid): Change argument type to unsigned.
5994 (struct w32_id): Change type of `rid' member to unsigned.
5995 (w32_cached_id, w32_add_to_cache, get_name_and_id): Change type of
5996 argument ID to unsigned. All callers changed.
5997 (getuid, geteuid, getgid, getegid): Change return type to unsigned.
5998
e00553bf
EZ
59992009-03-20 Eli Zaretskii <eliz@gnu.org>
6000
6001 * editfns.c (Fuser_uid, Fuser_real_uid): If UID as EMACS_INT is
6002 negative, produce a float value.
6003
6004 * dired.c (make_uid, make_gid): New functions.
6005 (Ffile_attributes): Use them to avoid negative UID and GID.
6006
f761d6b6
JB
60072009-03-20 Juanma Barranquero <lekktu@gmail.com>
6008
6009 * keyboard.c (Fcurrent_idle_time): Reflow docstring.
6010 (syms_of_keyboard) <command-hook-internal, input-method-function>:
6011 Fix typos in docstrings.
6012
d507f8d7
KH
60132009-03-19 Kenichi Handa <handa@m17n.org>
6014
6015 * fontset.c (Fset_fontset_font): When a spec of ASCII font is
f761d6b6
JB
6016 changed, use font_load_for_lface to get a new font object.
6017 Call free_realized_fontset after handling ASCII font change.
d507f8d7
KH
6018
6019 * frame.c (x_set_font): Handle the case that ARG is a cons.
6020
c68845e0
GM
60212009-03-19 Glenn Morris <rgm@gnu.org>
6022
6023 * fileio.c (Fsubstitute_in_file_name): Doc fix.
6024
bfa49dd1
CY
60252009-03-19 Chong Yidong <cyd@stupidchicken.com>
6026
6027 * indent.c (Fvertical_motion): Undo 2005-01-19 change (Bug#2694).
6028
8458d4c1
KH
60292009-03-19 Kenichi Handa <handa@m17n.org>
6030
6031 * charset.c (load_charset_map_from_file): When a mapfile can't be
6032 loaded, signal an error.
6033
78e7d1fe
EZ
60342009-03-18 Eli Zaretskii <eliz@gnu.org>
6035
6036 * dired.c (Ffile_attributes): Make sure UID and GID are always
6037 positive, even if the value is too large for a positive EMACS_INT.
6038 Doc fix.
6039
6040 * editfns.c (Fuser_login_name): Support float arguments. Doc fix.
6041
5da9fdfa
YM
60422009-03-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6043
6044 * xmenu.c (xdialog_show): Move Fredisplay call ...
6045 (Fx_popup_dialog): ... here.
6046
7519c40d
SM
60472009-03-18 Stefan Monnier <monnier@iro.umontreal.ca>
6048
6049 * dired.c (file_name_completion): Disable the first optimization just
6050 installed, since it is not implemented correctly.
6051
2cd298e2
SM
60522009-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
6053
6054 * dired.c (file_name_completion): Check completion-ignored-extensions
c95a5008 6055 only if the entry can affect bestmatch.
2cd298e2
SM
6056 Stop the search early, as Ftry_completion already does.
6057
48d37adf
CY
60582009-03-17 Chong Yidong <cyd@stupidchicken.com>
6059
e10c9c93 6060 * minibuf.c (Vminibuffer_completion_confirm): Doc fix.
48d37adf 6061
9286b16a
CY
60622009-03-15 Chong Yidong <cyd@stupidchicken.com>
6063
6064 * keyboard.c (parse_menu_item): Don't display remappings as menu
6065 equivalent bindings (Bug#788).
6066
f7b146dc
JR
60672009-03-15 Jason Rumney <jasonr@gnu.org>
6068
6069 * w32term.h (WM_EMACS_PAINT): New message.
6070 * w32term.c (w32_read_socket): Use it instead of WM_PAINT.
6071 * w32fns.c (w32_wnd_proc): Change WM_PAINT to WM_EMACS_PAINT
6072 before passing to lisp thread. (Bug#950)
6073
f761d6b6 60742009-03-14 David Reitter <david.reitter@gmail.com>
c6c62e78 6075
d93f9575
CY
6076 * nsterm.m (ns_shutdown_properly, -terminate): Remove global state
6077 variable as it was never reset.
6078 (ns_term_init): Remove initialization of Lisp-settable defaults
6079 and ns_expand_space.
6080 (-setPanelFromDefaultValues): Remove ns_expand_space.
6081 (-showPreferencesWindow): Send new KEY_NS_SHOW_PREFS key.
6082 * nsfont.m (nsfont_open): Remove ns_expand_space, assume -0.5
c6c62e78
DR
6083 i.e. no additional spacing, similar to Carbon port.
6084
d93f9575
CY
6085 * nsterm.h: Define KEY_NS_SHOW_PREFS key.
6086 * nsfns.m (ns-popup-prefs-panel): Remove.
c6c62e78 6087
305018ec
JD
60882009-03-14 Jan Djärv <jan.h.d@swipnet.se>
6089
6090 * sound.c (alsa_configure): Remove call to deprecated
6091 snd_pcm_sw_params_set_xfer_align.
6092
f761d6b6 60932009-03-14 Stephen Berman <stephen.berman@gmx.net>
4a02423f
JD
6094
6095 * gtkutil.c (xg_tool_bar_callback): Set focus back to the frame
6096 after clicking in a detached tool bar.
6097 (xg_tool_bar_proxy_callback): Remove call to Fx_focus_frame.
6098
46e722a9
SM
60992009-03-13 Stefan Monnier <monnier@iro.umontreal.ca>
6100
348db3dd
SM
6101 * fontset.c (fontset_from_font, Ffontset_info): YAILOM (Yet another
6102 int/Lisp_Object mixup).
46e722a9 6103
a3d16f39
KH
61042009-03-13 Kenichi Handa <handa@m17n.org>
6105
6106 * fontset.c (Ffontset_info, check_fontset_name): New arg frame.
fe24f56a 6107 Handle NAME nil and t correctly. Callers changed.
a3d16f39
KH
6108 (font_def_arg, add_arg, from_arg, to_arg): Delete them.
6109 (set_fontset_font): Change ARG to a vector. Handle range_list in
6110 ARG correctly.
6111 (Fset_fontset_font): Fix the case that TARGET is both a script
fe24f56a 6112 name and charset name. Adjust the arg to set_fontset_font for
a3d16f39
KH
6113 the above change.
6114 (fontset_from_font): Fix previous change.
fe24f56a 6115 (Ffontset_info): Adjust for the 2008-07-09 change of fontset
a3d16f39
KH
6116 entry. If FONTSET is the default fontset, don't set the extra
6117 slot of the returning char-table.
6118
b066e6b6
JB
61192009-03-12 Juanma Barranquero <lekktu@gmail.com>
6120
6121 * nsfns.m (Fx_close_connection): Doc fix.
6122 (Fns_do_applescript): Reflow docstring.
6123 (Fns_hide_others, Fns_hide_emacs, Fns_convert_utf8_nfd_to_nfc)
6124 (Fx_display_pixel_width, Fx_display_pixel_height)
6125 (Fns_display_usable_bounds, Fx_display_planes, Fx_show_tip):
6126 Fix typos in docstrings.
6127 (Fns_set_alpha): Fix typos in error messages.
6128
d472514e 61292009-03-12 David Reitter <david.reitter@gmail.com>
d6220c13 6130
d472514e 6131 * termhooks.h [HAVE_NS]: Define NS_NONKEY_EVENT to be used for
d6220c13
DR
6132 non-key system events on NS. Formerly, NON_ASCII_KEYSTROKE_EVENT
6133 were used for such events.
6134
d472514e
JB
6135 * nsterm.m (newFrame, openFile, fulfillService, changeFont)
6136 (toggleToolbar, performDragOperation, runHelp): Use it.
d6220c13 6137
d472514e 6138 * keyboard.c (parse_menu_item) [HAVE_NS]: Treat new event like
d6220c13
DR
6139 NON_ASCII_KEYSTROKE_EVENT, but set used_mouse_menu.
6140
fb930676
KH
61412009-03-11 Kenichi Handa <handa@m17n.org>
6142
ff85581a
KH
6143 * font.h (font_open_by_spec): Extern it.
6144
c50b7e98
KH
6145 * font.c (font_open_by_spec): New function.
6146 (font_open_by_name): Use font_open_by_spec.
6147
fb930676
KH
6148 * frame.c (x_set_font): When ARG is a font-object, don't alter the
6149 fontset of the frame.
6150
6151 * fontset.c (Fset_fontset_font): When a font for ASCII is changed,
6152 modify the default font of frames that use this fontset.
6153 (num_auto_fontsets): New variable.
6154 (fontset_from_font): Use num_auto_fontsets to decide a fontset
6155 name. Be sure to set FONTSET_ASCII to the correct font name.
6156 (update_auto_fontset_alist): New function.
6157
df4e8455
JB
61582009-03-11 Juanma Barranquero <lekktu@gmail.com>
6159
6160 * makefile.w32-in: Update dependencies.
6161
0a375797
AR
61622009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
6163
6164 * nsfns.m (syms_of_nsfns): Remove Qbuffered.
6165
61313fa3
SM
61662009-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
6167
6168 * buffer.c (Fswitch_to_buffer): Revert part of 2008-10-21's change.
6169
b55103fb
CY
61702009-03-10 Chong Yidong <cyd@stupidchicken.com>
6171
6172 * lread.c (Feval_buffer): Doc fix.
6173
dde2559c
KH
61742009-03-09 Kenichi Handa <handa@m17n.org>
6175
6176 * charset.c (Qfile_name_handler_alist): Extern it.
6177 (load_charset_map_from_file): Temporarily bind
6178 `file-name-handler-alist' to nil while calling openp. (Bug#2435)
6179
df4e8455 61802009-03-06 Aaron Ecay <aaronecay@gmail.com> (tiny change)
340e08a4 6181
47f588bb
GM
6182 * nsterm.m (ns_draw_vertical_window_border): Draw 1 pixel wide,
6183 not two, and use NSRectFill instead of NSDrawGroove. (Bug#2352)
340e08a4 6184
4ddf94bd
AR
61852009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
6186
4c9bdfc2
AR
6187 * nsterm.m: Include <signal.h> for SIGTERM used in ns_term_shutdown.
6188 (x_set_window_size): Change back to calculated method of setting
6189 toolbar height under Cocoa. (Bug#2546)
4ddf94bd
AR
6190 (EmacsView-windowWillUseStandardFrame:defaultFrame:): New method.
6191 (EmacsView-drawRect:): Completely shortcircuit if ns_in_resize.
6192
fe41ae9e
AR
6193 * nsfns.m (ns_appkit_version_int): Fix typo in the version macro.
6194
4c9bdfc2
AR
6195 * nsmenu.m (EmacsMenu-addItemWithWidgetValue:): Don't add
6196 accelerator in parens under GNUstep.
6197
825d0875
KH
61982009-03-06 Kenichi Handa <handa@m17n.org>
6199
6200 These changes are to detect incorrect composition sequence without
f3b3be74 6201 looking ahead the source. (Bug#2370)
825d0875
KH
6202
6203 * coding.h: Include "composite.h".
6204 (enum compisition_state): New enum.
6205 (struct compisition_status): New struct.
6206 (struct iso_2022_spec): New member cmp_status.
6207 (struct emacs_mule_spec): New struct.
6208 (struct coding_system): New members ctext_extended_segment_len and
6209 embedded_utf_8. Change the union member
6210 spec.emacs_mule_full_support to spec.emacs_mule.
6211
6212 * coding.c (CODING_ISO_CMP_STATUS): New macro.
6213 (CODING_ISO_EXTSEGMENT_LEN, CODING_ISO_EMBEDDED_UTF_8): New macros.
98a326f7 6214 (MAX_ANNOTATION_LENGTH): Define to 5.
825d0875
KH
6215 (ADD_COMPOSITION_DATA): New arg nbytes.
6216 (emacs_mule_char): New arg cmp_status.
6217 (DECODE_EMACS_MULE_COMPOSITION_CHAR): Delete it.
6218 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): New arg c.
6219 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New arg c.
6220 (DECODE_EMACS_MULE_21_COMPOSITION): Delete the arg c.
6221 (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Likewise.
6222 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Likewise.
6223 (DECODE_EMACS_MULE_COMPOSITION_START): New macro.
6224 (EMACS_MULE_COMPOSITION_END): New macro.
6225 (emacs_mule_finish_composition): New function.
6226 (EMACS_MULE_MAYBE_FINISH_COMPOSITION): New macro.
6227 (decode_coding_emacs_mule): Avoid long looking ahead while
6228 handling composition.
6229 (DECODE_COMPOSITION_RULE): Argument changed to rule and nbytes.
6230 (ENCODE_COMPOSITION_RULE): New macro.
6231 (finish_composition): New function.
6232 (MAYBE_FINISH_COMPOSITION): Call finish_composition.
6233 (DECODE_COMPOSITION_START): New implementation.
6234 (DECODE_COMPOSITION_END): Likewise.
6235 (STORE_COMPOSITION_RULE): New macro.
6236 (decode_coding_iso_2022): Avoid long looking ahead while handling
6237 composition, CTEXT extended segment, and embedded UTF-8.
6238 (setup_coding_system): For a coding of type iso-2022, reset
6239 CODING_ISO_EXTSEGMENT_LEN (coding) and
6240 CODING_ISO_EMBEDDED_UTF_8 (coding).
6241 (get_translation): Delete arguments last_block, from_nchars,
6242 to_nchars. Callers changed.
6243 (produce_chars): Don't modify charbuf. Adjusted for the change of
6244 get_translation.
98a326f7 6245 (produce_composition): Adjust for the new annotation sequence.
825d0875 6246 (handle_composition_annotation): Likewise.
98a326f7 6247 (consume_chars): Adjust for the change of get_translation.
825d0875 6248
ccbc4452
AR
62492009-03-05 Adrian Robert <Adrian.B.Robert@gmail.com>
6250
4ddf94bd 6251 * nsterm.m (ns_select): Shortcircuit if reentrant call. (Bug#2564)
ccbc4452 6252
988a7ddb
KH
62532009-03-05 Kenichi Handa <handa@m17n.org>
6254
6255 * font.c (font_select_entity): New function.
6256 (font_find_for_lface): Use font_select_entity to select a font.
6257
6258 * fontset.c (fontset_find_font): If a font found without
a8a3728b 6259 restricting to the characters C doesn't support C, try to find a
988a7ddb
KH
6260 font with C restriction.
6261
98a326f7 62622009-03-04 Nikolaj Schumacher <me@nschum.de>
2f462d73 6263
be1bce46 6264 * nsfont.m (nsfont_draw): Compare ns_antialias_text against lisp value.
2f462d73 6265
10ea2b82
JR
62662009-03-04 Jason Rumney <jasonr@gnu.org>
6267
2c93b248 6268 * w32fns.c (w32_wnd_proc): Only ignore IME messages for the
4891ba1d 6269 characters that have already been read. (Bug#2569)
2c93b248 6270
10ea2b82
JR
6271 * image.c (xbm_read_bitmap_data, png_load, svg_load_image):
6272 Log an error message if check_image_size failed.
6273 (xpm_load_image, pbm_load, jpeg_load, tiff_load, gif_load)
4891ba1d 6274 (gs_load): Mention max-image-size in size error message. (Bug#2560)
10ea2b82 6275
71a0c011
EZ
62762009-03-02 Eli Zaretskii <eliz@gnu.org>
6277
6278 * callproc.c (Fcall_process): Bind inhibit-modification-hooks to t
6279 when decoding process output.
6280
2f63bba8
RS
62812009-03-01 Richard M Stallman <rms@gnu.org>
6282
6283 * m/mips.h (DATA_SEG_BITS, XUINT, XSET): Definitions disabled.
6284
6285 * emacs.c (gdb_data_seg_bits) [USE_LSB_TAG]: Make it 0.
6286
0a9564cb
EZ
62872009-02-28 Eli Zaretskii <eliz@gnu.org>
6288
6289 * coding.c (decode_coding_utf_8, decode_coding_utf_16)
6290 (decode_coding_emacs_mule, decode_coding_iso_2022)
6291 (encode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
6292 (decode_coding_raw_text, decode_coding_charset)
6293 (setup_coding_system, decode_eol, decode_coding, consume_chars):
6294 Honor inhibit-eol-conversion. (Bug #2186)
6295
449148b3
JR
62962009-02-28 Jason Rumney <jasonr@gnu.org>
6297
6298 * coding.c (detect_coding_charset): If not checking latin extra,
6299 fail on characters between 0x80 and 0xA0. (Bug#2354)
6300
a4aee864
EZ
63012009-02-28 Eli Zaretskii <eliz@gnu.org>
6302
6303 * coding.c (detect_coding_charset): Fix change from 2008-10-21.
2a1573ff 6304 Also, check iso-latin-*, not only iso-8859-*. (Bug#2497)
a4aee864 6305
d88bee5a
GM
63062009-02-27 Glenn Morris <rgm@gnu.org>
6307
6308 * callint.c (Finteractive): Doc fix.
6309
a808f22d
KH
63102009-02-27 Kenichi Handa <handa@m17n.org>
6311
6312 * lread.c (read_escape): Signal an error for invalid \UXXXXXXXX.
6313
caf8d60c
CY
63142009-02-27 Chong Yidong <cyd@stupidchicken.com>
6315
6316 * font.c (font_style_to_value): Set value for unknown symbols to
6317 100 instead of 255.
b61137ea
CY
6318 (weight_table, slant_table, width_table): Treat "unspecified" as
6319 the default value.
caf8d60c 6320
1a0de25c
JB
63212009-02-26 Juanma Barranquero <lekktu@gmail.com>
6322
6323 * fileio.c (Fnext_read_file_uses_dialog_p): Fix typo in docstring.
6324
8fc45744
JB
63252009-02-25 Juanma Barranquero <lekktu@gmail.com>
6326
107bd7d1
JB
6327 * lread.c (Fload): Stop checking Vloads_in_progress and signal
6328 error as soon as a recursive load is detected.
8fc45744 6329
f097e223
AR
63302009-02-24 Adrian Robert <Adrian.B.Robert@gmail.com>
6331
6332 * nsterm.m (ns_ring_bell): Convert rect to window coordinates
6333 before caching.
6334
8810a12f
KH
63352009-02-24 Kenichi Handa <handa@m17n.org>
6336
6337 * fontset.c (fontset_find_font): Fix the condition for checking
6338 unavailable font.
6339
2c7d1565
GM
63402009-02-24 Glenn Morris <rgm@gnu.org>
6341
6342 * xfaces.c (Finternal_set_font_selection_order): Remove leading
6343 whitespace that confuses documentation.
6344
a20878b6
MB
63452009-02-23 Miles Bader <miles@gnu.org>
6346
6347 * process.c (Flist_system_processes, Fprocess_attributes)
6348 (syms_of_process): Rename `system-process-attributes' to
6349 `process-attributes'.
6350
b3b58c01
AS
63512009-02-22 Andreas Schwab <schwab@linux-m68k.org>
6352
1b3b981b
AS
6353 * coding.h (struct coding_system): Make safe_charsets a pointer to
6354 unsigned char.
6355 * coding.c (CODING_ISO_REQUEST): Check for safe_charsets content
6356 being 255.
6357 (SAFE_CHARSET_P): Likewise.
6358 (setup_iso_safe_charsets): Properly setup safe_charsets.
6359 (Fdefine_coding_system_internal): Likewise.
6360 (setup_coding_system): Likewise. Remove unneeded casts.
6361 (detect_coding_iso_2022): Compare Viso_2022_charset_list with
6362 CODING_ATTR_CHARSET_LIST, not CODING_ATTR_SAFE_CHARSETS. Remove
6363 unneeded casts.
6364
b3b58c01
AS
6365 * insdel.c (del_range_2): Don't modify gap contents when called
6366 from decode_coding_object. (Bug#1809)
6367
0b6f228c
CY
63682009-02-21 Chong Yidong <cyd@stupidchicken.com>
6369
6370 * data.c (syms_of_data): Define Qfont_spec, Qfont_entity, and
6371 Qfont_object.
6372 (Ftype_of): Recognize font objects.
6373
6374 * lisp.h: Define Qfont_spec, Qfont_entity, Qfont_object extern.
6375
6376 * font.c (Qfont_spec, Qfont_entity, Qfont_object): Definitions
6377 moved to data.c.
6378
52f8870b
AR
63792009-02-20 Adrian Robert <Adrian.B.Robert@gmail.com>
6380
6381 * nsterm.m (x_make_frame_invisible): Unset async_visible,
6382 async_iconified. Based on a patch by Christian Lynbech
6383 <christian.lynbech@tieto.com>.
6384 (EmacsView-windowDidMiniaturize:): Unset async_visible.
6385
7087d5e9
GM
63862009-02-20 Glenn Morris <rgm@gnu.org>
6387
6388 * syntax.c (Fskip_chars_forward): Fix doc typo.
6389
41d2ceef
CY
63902009-02-20 Chong Yidong <cyd@stupidchicken.com>
6391
6392 * keymap.c (Fkeymap_parent): Doc fix (Bug#2391).
6393
1a3b7ca6
CY
63942009-02-19 Chong Yidong <cyd@stupidchicken.com>
6395
6396 * xfns.c (Fx_create_frame): Give Xft driver a higher priority.
6397
73cce38d
KH
63982009-02-19 Kenichi Handa <handa@m17n.org>
6399
6400 * coding.c (detect_coding): Preserve coding->mode.
2bc550cb 6401 Don't overflow coding->carryover. (Bug#2370)
73cce38d 6402
a51092ee
DN
64032009-02-18 Dan Nicolaescu <dann@ics.uci.edu>
6404
6405 * m/ibmrs6000.h (ADDR_CORRECT): Restore, removed by mistake on 2008-07-23.
6406
c423ecca
KH
64072009-02-18 Kenichi Handa <handa@m17n.org>
6408
6409 * font.c (font_check_otf_features): Fix handling of `nil' element.
6410 (Ffont_spec): Describe :lang and :otf in the docstring.
6411
4c1958f4
AS
64122009-02-16 Andreas Schwab <schwab@suse.de>
6413
6414 * coding.c (Fcheck_coding_systems_region): Fix test for unibyte
6415 string.
6416
5704f39a
KH
64172009-02-16 Kenichi Handa <handa@m17n.org>
6418
6419 * coding.c (Fcheck_coding_systems_region): Fix typo; Qt -> Qnil.
a057d86a 6420 (Bug#1723)
5704f39a 6421
8f0085aa
CY
64222009-02-14 Chong Yidong <cyd@stupidchicken.com>
6423
a057d86a 6424 * dispextern.h (struct iterator_stack_entry): New line_wrap member.
8f0085aa
CY
6425
6426 * xdisp.c (push_it, pop_it): Save and restore line_wrap.
6427 (handle_line_prefix): Suppress wrapping of wrap prefixes.
6428
aff01dd9
EZ
64292009-02-14 Eli Zaretskii <eliz@gnu.org>
6430
6431 * msdos.c (MAX_SCREEN_BUF): New macro.
6432 (IT_write_glyphs): Make screen_buf[] always be MAX_SCREEN_BUF-long.
6433 Encode the entire run of glyphs sharing the same face, instead of
6434 doing that one glyph at a time (fixes a bug with displaying
6435 double-size characters).
6436
ba301db3
AR
64372009-02-13 Adrian Robert <Adrian.B.Robert@gmail.com>
6438
6439 * nsfns.m (ns-read-file-name): BLOCK_INPUT while showing dialog.
6440
6441 * nsmenu.m (pop_down_menu): Check popup_activated_flag.
6442 (ns_popup_dialog, EmacsDialogPanel-runDialogAt:): Let
a057d86a 6443 pop_down_menu do the cleanup work as it is always called. (Bug#2154)
ba301db3
AR
6444
6445 * nsfont.m (nsfont_make_fontset_for_font): For now, don't try to
a057d86a 6446 set fontset font for "mathematical-" sub-scripts. (Bug #2218)
ba301db3 6447
51d861de
SM
64482009-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
6449
ac146f82 6450 * keyboard.c (adjust_point_for_property): Allow stopping between two
51d861de
SM
6451 invisible areas.
6452
7fed8996
JR
64532009-02-12 Jason Rumney <jasonr@gnu.org>
6454
631ea4fb
JR
6455 * w32font.c (check_face_name): Check for fake helv. (Bug#2275)
6456 (add_font_entity_to_list): Call check_face_name even when family
6457 is unspecified.
6458
cb4a3e42
JR
6459 * w32term.c (x_display_pixel_height, x_display_pixel_width):
6460 Release DC when finished. Use NULL window to refer to desktop.
631ea4fb 6461 (w32_term_init): Use NULL window to refer to desktop. (Bug#460)
cb4a3e42 6462
7fed8996 6463 * w32font.c (add_font_entity_to_list): Fix check for substituted
631ea4fb 6464 raster fonts. (Bug#2219)
7fed8996 6465
895416e3
KH
64662009-02-12 Kenichi Handa <handa@m17n.org>
6467
6468 * composite.c (MAX_AUTO_COMPOSITION_LOOKBACK): New macro.
6469 (composition_gstring_width): Fix handling of LGLYPH_YOFF.
6470 (autocmp_chars): Use fast_looking_at. Don't compose more
1dacf998 6471 characters than MAX_COMPOSITION_COMPONENTS.
895416e3
KH
6472 (find_automatic_composition): While looking forward and backward,
6473 check static composition. Fix where to stop looking forward.
6474 (composition_adjust_point): Fix checking of static composition.
6475 (Fcomposition_get_gstring): Pay attention to
1dacf998 6476 MAX_COMPOSITION_COMPONENTS.
895416e3
KH
6477
6478 * lisp.h (fast_looking_at): Extern it.
6479
6480 * search.c (fast_looking_at): New function.
6481
51d861de 6482 * term.c (encode_terminal_code): Adjust for the change of
895416e3
KH
6483 <struct glyph>.u.cmp.to.
6484 (append_composite_glyph): Likewise.
6485
51d861de 6486 * xdisp.c (fill_gstring_glyph_string): Adjust for the change of
895416e3
KH
6487 <struct glyph>.u.cmp.to. Check if the glyph belongs to the same
6488 composition.
51d861de 6489 (append_composite_glyph): Adjust for the change of
895416e3
KH
6490 <strcut glyph>.u.cmp.to.
6491
8510724d
JB
64922009-02-11 Juanma Barranquero <lekktu@gmail.com>
6493
6494 * casetab.c (init_casetab_once):
6495 * coding.c (ALLOC_CONVERSION_WORK_AREA):
6496 * font.c (font_update_lface):
6497 * fontset.c (Fnew_fontset):
6498 * ftfont.c (ftfont_drive_otf):
6499 * xfont.c (xfont_open):
6500 * xftfont.c (xftfont_get_xft_draw): Remove spurious semicolons.
6501
294fa707
SM
65022009-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
6503
6504 * fileio.c (Fwrite_region): !NILP -> CONSP.
6505
b5bfebec
AS
65062009-02-10 Andreas Schwab <schwab@suse.de>
6507
6508 * process.c (send_process): Properly relocate pointer into data
adab88bd 6509 when using encoded data. (Bug#2272)
b5bfebec 6510
cb84a2be
KH
65112009-02-08 ARISAWA Akihiro <ari@mbf.sphere.ne.jp>
6512
6513 * coding.c (detect_coding_charset): Fix previous change.
6514
89e09428
JR
65152009-02-08 Jason Rumney <jasonr@gnu.org>
6516
6517 * w32fns.c (w32_hide_hourglass): Handle case where frame
adab88bd 6518 disappeared while hourglass was displayed. (Bug #2193)
89e09428 6519
4470a277
AS
65202009-02-07 Andreas Schwab <schwab@suse.de>
6521
6522 * unexelf.c (unexec): Fix error message.
6523
3175b12a
AR
65242009-02-07 Adrian Robert <Adrian.B.Robert@gmail.com>
6525
6526 * nsterm.m (EmacsApp-sendEvent:): Defer NSApplicationDefined event
adab88bd 6527 when modal window is active. (Bug #2152)
3175b12a
AR
6528 (applicationShouldTerminate:): Remove now-unneeded while loop
6529 around NSRunAlertPanel.
6530
6531 * nsmenu.m (popupSession): New file-global variable.
6532 (pop_down_menu): End the popupSession before closing dialog.
6533 (ns_popup_dialog): BLOCK_INPUT around dialog presentation.
6534 (EmacsDialogPanel-runDialogAt:): Don't place window (superfluous),
6535 don't query NSApp for events (just sleep instead).
6536
8434d0b8
EZ
65372009-02-07 Eli Zaretskii <eliz@gnu.org>
6538
51d861de
SM
6539 * coding.c (syms_of_coding) <translation-table-for-input>:
6540 Modify doc string to discourage use for character code unification.
8434d0b8 6541
aa82edfd
CY
65422009-02-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6543
6544 * atimer.c (run_timers): Update pending_atimers.
6545
2d283c7c
CY
65462009-02-06 Chong Yidong <cyd@stupidchicken.com>
6547
eb306cab
CY
6548 * image.c (svg_load_image): Fix last change.
6549
2d283c7c
CY
6550 * xfns.c (Fx_create_frame): Signal an error if no font is
6551 found (Bug#2147).
6552
4d8e170e
JB
65532009-02-05 Juanma Barranquero <lekktu@gmail.com>
6554
6555 * character.c (syms_of_character) <script-representative-chars>:
6556 Fix typo in docstring.
6557
c96169a0
AR
65582009-02-04 Adrian Robert <Adrian.B.Robert@gmail.com>
6559
6560 * nsmenu.m (pop_down_menu): New function.
6561 (ns_popup_dialog): Call it on unwind.
6562 (EmacsDialogPanel-runDialogAt:): Check popup_activated_flag and
6563 call timer_check() (Bug#2154).
6564 (EmacsMenu-menuNeedsUpdate:): Don't call ns_update_menu if
6565 handling_signal is set.
6566 (EmacsMenu-fillWithWidgetValue:): Set submenu title.
6567
31fd7c5c 6568 * config.in: Get rid of COCOA_EXPERIMENTAL_CTRL_G.
c96169a0
AR
6569
6570 * s/darwin.h: Same and NO_SOCK_SIGIO as well.
6571
6572 * nsterm.m (ns_read_socket): Same and don't set handling_signal.
6573
51d861de
SM
6574 * keyboard.c (poll_for_input_1, handle_async_input):
6575 Set handling_signal under HAVE_NS.
c96169a0 6576
aacd8ba1
GM
65772009-02-04 Glenn Morris <rgm@gnu.org>
6578
6579 * fileio.c (Fwrite_region): Doc fix (mention annotate-functions).
6580
4cb75c4b
KH
65812009-02-04 Kenichi Handa <handa@m17n.org>
6582
6583 * Makefile.in (composite.o): Depends on frame.h and termhooks.h.
6584
6585 * charset.c (Fchar_charset): New optional arg restriction.
6586
6587 * coding.h (coding_system_charset_list): Extern it.
6588
6589 * coding.c (coding_system_charset_list): New function.
6590
6591 * composite.c: Include coding.h and termhooks.h.
6592 (composition_gstring_p): Fix for the terminal case.
6593 (composition_gstring_width): Likewise.
6594 (fill_gstring_body): Likewise.
6595 (autocmp_chars): For terminal, call Fcomposition_get_gstring with
6596 the frame.
6597 (composition_compute_stop_pos): Adjust cmp_it->stop_pos if point
6598 is within a composition.
867d4bb3 6599 (Fcomposition_get_gstring): Fix the terminal case.
4cb75c4b
KH
6600
6601 * term.c (encode_terminal_code): Fix handling of composition.
6602 (produce_composite_glyph): For static composition, get pixel_width
6603 from struct composition.
6604
826ba17e
AS
66052009-02-02 Andreas Schwab <schwab@suse.de>
6606
6607 * unexelf.c (unexec): Handle unaligned bss offset.
6608
8ad093db
AR
66092009-02-01 Adrian Robert <Adrian.B.Robert@gmail.com>
6610
6611 * nsterm.m (ns_read_socket): Copy 2009-01-29 and 2009-01-30
6612 XT,w32read_socket changes to ns_read_socket.
d0a76a6e 6613
8ad093db
AR
6614 * keyboard.c (handle_interrupt): Don't call
6615 quit_throw_to_read_char() under NS.
d0a76a6e 6616
8ad093db
AR
6617 * blockinput.h: Remove NS-specific code.
6618
4d18a7a2
DN
66192009-01-30 Dan Nicolaescu <dann@ics.uci.edu>
6620
db878925
DN
6621 * dispnew.c (window_change_signal): Don't try to get the size of a
6622 suspended tty frame.
6623 * term.c (Fresume_tty): Resize if the size has changed while the
6624 tty was suspended.
6625
4d18a7a2
DN
6626 * alloc.c (mark_stack): Properly conditionalize previous change.
6627
8984df7c
JB
66282009-01-30 Juanma Barranquero <lekktu@gmail.com>
6629
6630 * w32inevt.c (w32_console_read_socket) [SYNC_INPUT]:
6631 * w32term.c (w32_read_socket) [SYNC_INPUT]:
6632 Remove; this code is not used on Windows.
6633
75f4f1ac
EZ
66342009-01-30 Eli Zaretskii <eliz@gnu.org>
6635
6636 * coding.c (detect_eol, decode_eol): Handle text with DOS-style
6637 EOLs that also has stray ^M characters.
6638
07a1e794
JB
66392009-01-30 Juanma Barranquero <lekktu@gmail.com>
6640
6641 * atimer.c (run_timers, alarm_signal_handler):
6642 * keyboard.c (pending_signals, handle_async_input, init_keyboard):
6643 * w32inevt.c (w32_console_read_socket):
6644 * w32term.c (w32_read_socket):
6645 * xterm.c (XTread_socket): Use "#ifdef SYNC_INPUT" where appropriate.
6646
a8b11cc9
CY
66472009-01-30 Chong Yidong <cyd@stupidchicken.com>
6648
6649 * callproc.c (Vtemp_file_name_pattern): Remove DEFVAR_LISP.
6650 Initialize it as a relative filename pattern.
6651 (init_callproc): Don't initialize Vtemp_file_name_pattern here.
6652 (Fcall_process_region): Simplify temp file creation using
6653 temporary-file-directory.
6654
c279587b
EZ
66552009-01-29 Eli Zaretskii <eliz@gnu.org>
6656
6657 * msdos.c: Rename pending_signals to msdos_pending_signals.
6658 (sig_suspender, sigprocmask): Adjust.
6659
a8fe3242
CY
66602009-01-29 Chong Yidong <cyd@stupidchicken.com>
6661
6662 * keyboard.c (pending_signals): New var.
6663 (poll_for_input, input_available_signal, init_keyboard): Set it.
6664 (process_pending_signals): New function.
6665
6666 * lisp.h (QUIT): Check pending_signals instead of
6667 interrupt_input_pending. Use process_pending_signals.
6668
51d861de 6669 * atimer.c (run_timers, alarm_signal_handler): Update pending_signals.
a8fe3242 6670
51d861de 6671 * process.c (wait_reading_process_output): Use process_pending_signals.
a8fe3242
CY
6672
6673 * sysdep.c (emacs_write): Use process_pending_signals.
6674
6675 * xterm.c (XTread_socket): Update pending_signals.
6676
6677 * w32term.c (w32_read_socket): Update pending_signals.
6678
6679 * w32inevt.c (w32_console_read_socket): Update pending_signals.
6680
6570a1c4
KH
66812009-01-29 Kenichi Handa <handa@m17n.org>
6682
6683 * xftfont.c (xftfont_has_char): New function.
6684 (syms_of_xftfont): Register xftfont_has_char in xftfont_driver.
6685
d72a4afa
AR
66862009-01-29 Adrian Robert <Adrian.B.Robert@gmail.com>
6687
6688 * nsterm.h (EmacsPrefsController.cursorBlinkSlider): Only define
6689 under GNUstep.
6690 (ns_query_color): New declaration.
6691
6692 * nsterm.m (ns_confirm_quit): New variable.
6693 (ns_set_default_prefs, syms_of_nsterm, ns_term_init): Initialize it.
6694 (EmacsApp-applicationShouldTerminate:): Use it.
6695 (EmacsPrefsController): Let user set it.
6696 (ns_query_color): New function.
6697 (ns_defined_color): Use it.
6698 (ns_initialize): Drop.
6699 (ns_term_init): Add two lines from ns_initialize(), and set
6700 input_interrupt_mode to nil.
6701
6702 * image.c (svg_load_image): Don't right-shift background RGB when
6af84d77 6703 obtained from FRAME_BACKGROUND_PIXEL. Under HAVE_NS use ns_query_color.
d72a4afa 6704
9fe78804
KH
67052009-01-28 Kenichi Handa <handa@m17n.org>
6706
6707 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
f088b054
KH
6708 (fontset_get_font_group): Remember that no font-group is specified
6709 for C.
9fe78804 6710
fa57de36
CY
67112009-01-27 Chong Yidong <cyd@stupidchicken.com>
6712
930600e9
CY
6713 * fns.c (concat): Check for string overflow (bug#1787).
6714
fa57de36
CY
6715 * undo.c (undo_limit, undo_strong_limit, Vundo_outer_limit):
6716 Quadruple undo limits (bug#1501).
6717
7179ce7b
KH
67182009-01-27 Kenichi Handa <handa@m17n.org>
6719
6720 * ftfont.c (ftfont_has_char): If the arg FONT is a font-object,
6721 directly use GT_Get_Char_index.
6722
6723 * xftfont.c (struct xftfont_info): New member `index'.
6724
6725 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
51d861de 6726 (Ffontset_font): Adjust for the change of fontset entry.
7179ce7b 6727
5be8fcc0
CY
67282009-01-26 Kenichi Handa <handa@m17n.org>
6729
6730 * fontset.c (fontset_find_font): Fix handling of non-cons return
6731 value of fontset_get_font_group.
6732 (fontset_font): Revert last change.
6733
19ae3e61
JR
67342009-01-26 Jason Rumney <jasonr@gnu.org>
6735
6736 * w32font.c (w32font_list_internal): Return quickly if registry is
6737 unknown. Simplify final return.
6738 (add_font_entity_to_list): Break complex logic down into more
6739 manageable chunks. Move unknown registry check to
6740 w32font_list_internal.
6741
8612b71a
AR
67422009-01-25 Adrian Robert <Adrian.B.Robert@gmail.com>
6743
6744 Changes to remove Feval calls from GUI under NS.
6745
d8038940
JB
6746 * nsterm.h: Move KEY_NS_... definitions here from nsterm.m.
6747 Add NS_TOGGLE_TOOLBAR, NS_PUT_WORKING_TEXT, NS_UNPUT_WORKING_TEXT.
8612b71a
AR
6748 Remove NS_INSERT_WORKING_TEXT, NS_DELETE_WORKING_TEXT.
6749
6750 * nsterm.m: Move KEY_NS_... definitions to nsterm.h.
6751 (EmacsView-toggleToolbar:): Use KEY_NS_TOGGLE_TOOLBAR.
6752 (EmacsView-setMarkedText:,-deleteWorkingText:): Use NS_TEXT_EVENT
6753 instead of NON_ASCII_KEYSTROKE_EVENT.
6754 (EmacsApp-terminate:): Use KEY_NS_POWER_OFF instead of Feval.
6755 (EmacsApp-applicationShouldTerminate:): Query user.
6756 (EmacsPreferencesController-runHelp:): Use KEY_NS_INFO_PREFS
6757 instead of Feval.
6758
6759 * termhooks.h (NS_TEXT_EVENT): New event type under HAVE_NS.
6760
6761 * keyboard.c (kbd_buffer_get_event): Check for it.
6762 (keys_of_keyboard): Define lispy keys for
6763 ns-put/unput-working-text.
6764
6765 * nsmenu.m (ns_popup_dialog): Resync window setting with X and W32
6766 versions.
6767 (EmacsDialog-runDialogAt:): Use NSModalPanelRunLoopMode.
6768
6288ae55
CY
67692009-01-25 Chong Yidong <cyd@stupidchicken.com>
6770
6771 * dispnew.c (buffer_posn_from_coords): Use Fset_buffer instead of
64cc3cf6 6772 setting current_buffer directly. (Bug#2044)
6288ae55 6773
289e7f8f
CY
67742009-01-24 Chong Yidong <cyd@stupidchicken.com>
6775
5ce87308 6776 * fontset.c (fontset_font): If we know there is no font, don't do
d8038940 6777 any work. (Bug#1952, bug#1990).
5ce87308 6778
64cc3cf6 6779 * font.c (font_parse_xlfd): Handle patterns of length < 2. (Bug#1802)
289e7f8f 6780
b3243e6f
AR
67812009-01-23 Adrian Robert <Adrian.B.Robert@gmail.com>
6782
6783 * emacs.c (main): Do fork+exec under --daemon in Cocoa.
d900b2af
AR
6784 (ns_no_defaults): New declaration.
6785 (main): Use it.
e0d2e69a 6786
d900b2af 6787 * nsterm.h (ns_no_defaults): New declaration.
e0d2e69a 6788
d900b2af 6789 * nsfns.m (x_get_string_resource): Don't read when ns_no_defaults.
e0d2e69a 6790
d900b2af
AR
6791 * nsterm.m (ns_no_defaults): New variable.
6792 (ns_initialize): Don't read defaults when ns_no_defaults.
6793 (EmacsView-readSelectionFromPasteboard:)
6794 (writeSelectionToPasteboard:types:): New stubbed-out methods for
d8038940 6795 NSServicesRequests protocol. (Bug#1435)
27521ca6
AR
6796 (ns_dumpglyphs_stretch): New function.
6797 (ns_draw_glyph_string): Use it, parallel Yamamoto Mitsuharu change
d8038940 6798 of 2008-11-15 to other terms. (Bug#615)
b3243e6f 6799
e0d2e69a
AR
6800 * nsimage.m (setPixmapData:): Set to ignore image DPI.
6801
3ac71f5d
CY
68022009-01-23 Giorgos Keramidas <keramida@freebsd.org> (tiny change)
6803
6804 * alloc.c (mark_stack): Use "flushw" instead of "ta 3" assembly
6805 call for Sparc64.
6806
3fe53a83
AR
68072009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
6808
6809 * nsfns.m:
6810 * nsgui.h:
6811 * nsmenu.m:
6812 * nsselect.m:
6813 * nsterm.h:
6814 * nsterm.m: Remove '23' comments that indicated code added during
6815 update from emacs-20 -> emacs-23.
6816
10f87c6f 68172009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
a3b53a85
AR
6818
6819 * nsterm.m (EmavsView-keyDown:): Treat nil as Qnone for
3a88a825 6820 ns_alternate_modifier. (Bug#1217)
a3b53a85 6821
c7cef62d
AR
6822 * nsmenu.m (EmacsMenu-parseKeyEquiv:, addItemWithWidgetValue:):
6823 Display all shortcuts, including those w/o super modifier.
6824
575fb8bd
AR
6825 * nsfns.m (ns-read-file-name): Fix typo in assignment statement.
6826
918b848b
CY
68272009-01-22 Chong Yidong <cyd@stupidchicken.com>
6828
6829 * fileio.c (Vwrite_region_post_annotation_function)
6830 (Vwrite_region_annotation_buffers): New vars.
6831 (build_annotations_unwind): Just reset
6832 Vwrite_region_annotation_buffers.
6833 (Fwrite_region): Initialize Vwrite_region_annotation_buffers.
6834 Call write-region-post-annotation-function.
6835 (build_annotations): Add to Vwrite_region_annotation_buffers if
6836 buffer changes.
6837
a39e2539
AR
68382009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
6839
6840 * nsterm.h (EmacsApp-setAppleMenu:): Conditionalize more correctly on
6841 Tiger.
51d861de
SM
6842 * nsfns.m (ns_do_applescript):
6843 Conditionalize typeUTF16ExternalRepresentation on Tiger.
a39e2539 6844
35ed44db
AR
68452009-01-21 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
6846
6847 * nsterm.m (EV_TRAILER): Always use emacsframe for frame_or_window.
6848
cbe0b5bf
AR
68492009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
6850
6851 * nsmenu.m (NSMENUPROFILE): Change #if style.
4c7077c3 6852
6049d3a0
AR
6853 * nsterm.h (EmacsPrefsController): Add -setPanelFromDefaultValues.
6854
6855 * nsterm.m (x_set_frame_alpha): Add prototype.
a9b4df69
AR
6856 (ns_fake_keydown, EmacsView-keyUp:): New variable and function to
6857 handle Ctrl-tab. (Bug#1841)
6858 (ns_get_color): Use unsigned long long for scanned hex string value.
6859 (ns_term_shutdown): Abort on non SIGTERM signals.
e889fa06 6860 (EmacsPrefsController-setDefaultFont:,-setColors:): Raise the frame.
b71ac3dd 6861 (EmacsPrefsController-setPanelFromDefaultValues): New function.
3a88a825 6862 (EmacsPrefsController-resetToDefaults:): Use it. (Bug#1801)
35ed44db 6863 (ns_font_to_xlfd, ns_fontname_to_xlfd): Remove, unused.
d3810c21 6864 (ns_defined_color): Fix settings of the XColor variable fields:
3a88a825 6865 red,green,blue scale to 2-byte, pixel's parts to 1-byte. (Bug#1663)
cbe0b5bf 6866
d3810c21 6867 * nsimage.m (EmacsImage+allocInitFromFile:): Set to ignore image
3a88a825 6868 DPI. (Bug#1316)
d3810c21
AR
6869 (EmacsImage-setPixelAtX:Y:toRed:green:blue:alpha:): Fix color
6870 values in onTiger section.
4c7077c3 6871
e301e634
CY
68722009-01-19 Chong Yidong <cyd@stupidchicken.com>
6873
7f82490b
CY
6874 * xfaces.c (Finternal_set_lisp_face_attribute, Fx_list_fonts):
6875 Check return value of font_spec_from_name.
64cc3cf6 6876 (Fx_list_fonts): Doc fix. (Bug#1951)
7f82490b
CY
6877
6878 * font.c (font_spec_from_name): Return Qnil if font name could not
6879 be parsed.
6880 (font_parse_name): Treat a `?' character as part of an XLFD.
6881
e301e634
CY
6882 * fns.c (Fsubstring): Doc fix.
6883
1c0db158
KH
68842009-01-19 Kenichi Handa <handa@m17n.org>
6885
51d861de 6886 * ftfont.c (ftfont_lookup_cache): Check the return value of FcFontList.
1c0db158
KH
6887 (ftfont_list): Likewise.
6888
acf20901
JB
68892009-01-18 Juanma Barranquero <lekktu@gmail.com>
6890
fff4e459
JB
6891 * dbusbind.c (Fdbus_register_signal):
6892 * process.c (conv_sockaddr_to_lisp):
6893 * w32fns.c (Fw32_battery_status): Use empty_unibyte_string.
6894
acf20901
JB
6895 * callproc.c (Fgetenv_internal): Doc fix.
6896
e7abcdfb
CY
68972009-01-16 Chong Yidong <cyd@stupidchicken.com>
6898
6899 * xfns.c (x_make_gc): Don't allocate stipple member for gc_values;
6900 it is not even used.
6901
b60861e6
GM
69022009-01-16 Glenn Morris <rgm@gnu.org>
6903
6904 * font.c (Ffont_variation_glyphs): Silence compiler.
6905
8db52afe
JB
69062009-01-15 Juanma Barranquero <lekktu@gmail.com>
6907
6908 * sound.c (SOUND_WARNING): Use _snprintf, for MSVC compatibility.
6909 Reported by David Robinow <drobinow@gmail.com>.
6910
4cddb209
KH
69112009-01-15 Kenichi Handa <handa@m17n.org>
6912
51d861de 6913 * coding.c (detect_coding_system): Fix handling of null_byte_found.
4cddb209 6914
f247f67b
JR
69152009-01-14 Jason Rumney <jasonr@gnu.org>
6916
6917 * frame.c (x_set_font): Always store a font to the font parameter,
fff4e459 6918 never a fontset. (Bug#1562)
f247f67b 6919
f56a4450
KH
69202009-01-14 Kenichi Handa <handa@m17n.org>
6921
6922 * coding.c (TWO_MORE_BYTES): New macro.
fff4e459 6923 (detect_coding_utf_16): Use TWO_MORE_BYTES instead of ONE_MORE_BYTE.
f56a4450 6924
4e99855e
CY
69252009-01-13 Chong Yidong <cyd@stupidchicken.com>
6926
6927 * font.c (font_clear_prop): If clearing the family, clear the font
6928 width index too.
6929
fff4e459 6930 * xfaces.c (Finternal_set_lisp_face_attribute): Revert last change.
4e99855e 6931
24f01470
JB
69322009-01-12 Juanma Barranquero <lekktu@gmail.com>
6933
6934 * sound.c [WINDOWSNT] (SOUND_WARNING): New macro.
6935 (do_play_sound): Use it. Don't pass a hardcoded buffer size to mci
6936 functions, use sizeof.
6937
a41240a3
MR
69382009-01-12 Martin Rudalics <rudalics@gmx.at>
6939
6940 * keyboard.c (read_char): Fix case where last_nonmenu_event
6941 returned a bad value with submenus. (Bug#447)
6942
944636b8
CY
69432009-01-12 Chong Yidong <cyd@stupidchicken.com>
6944
6945 * xfaces.c (Finternal_set_lisp_face_attribute): If setting the
6946 family, clear the font width index too.
6947
0dad7c6f
JR
69482009-01-11 Jason Rumney <jasonr@gnu.org>
6949
6950 * keyboard.c (cmd_error_internal): Exit when errors occur before
6951 frame creation and not in daemon mode. (Bug#1836)
6952
7c2363af
CY
69532009-01-10 Chong Yidong <cyd@stupidchicken.com>
6954
6955 * xdisp.c (pos_visible_p): When iterator stops on the last glyph
6956 of a display vector, backtrack.
6957 (try_window_reusing_current_matrix): Check glyph type before
6958 referencing charpos member.
6959
97b1b294
EZ
69602009-01-10 Eli Zaretskii <eliz@gnu.org>
6961
6962 Fix Bug #876:
6963
6964 * coding.c (inhibit_null_byte_detection): New variable.
6965 (detect_coding, detect_coding_system): Don't pay attention to null
6966 bytes if inhibit_null_byte_detection is non-zero.
51d861de 6967 (syms_of_coding) <inhibit-null-byte-detection>: Declare and document.
97b1b294
EZ
6968 <inhibit-iso-escape-detection>: Doc fix.
6969
4624b6e3
JR
69702009-01-09 Jason Rumney <jasonr@gnu.org>
6971
6972 * w32font.c (add_font_entity_to_list): Don't report unknown
fff4e459 6973 Windows charset as any unrecognized registry. (Bug#1548)
4624b6e3
JR
6974 Only report Unicode Plane 2 fonts as unicode-sip.
6975
323b840c
CY
69762009-01-09 Chong Yidong <cyd@stupidchicken.com>
6977
51d861de
SM
6978 * xfaces.c (Fx_font_family_list): Delete function.
6979 Move compatibility version to faces.el.
323b840c 6980
51d861de 6981 * font.c (Ffont_family_list): Return a list of strings, not symbols.
323b840c 6982
eba7400d
MR
69832009-01-09 Martin Rudalics <rudalics@gmx.at>
6984
6985 * frame.c (x_set_frame_parameters): Remember requested value for
6986 fullscreen before it's reset by the parameter handler.
6987
4b09796d
GM
69882009-01-09 Glenn Morris <rgm@gnu.org>
6989
6990 * keyboard.c (last_command_char): For clarity, rename to...
46e722a9 6991 (last_command_event): ... and update all users.
4b09796d
GM
6992 (last_input_char): For clarity, rename to...
6993 (last_input_event): ... and update all users.
6994 (last-command-char, last-input-char): Move to subr.el as aliases.
6995 * cmds.c, commands.h: Update for last_command_char rename.
6996
14ccea62
CY
69972009-01-08 Chong Yidong <cyd@stupidchicken.com>
6998
51d861de 6999 * font.c (font_open_for_lface): Handle unspecified height attribute.
14ccea62 7000
5f004711
JR
70012009-01-08 Jason Rumney <jasonr@gnu.org>
7002
7003 * w32fns.c (Vx_pointer_shape, Vx_nontext_pointer_shape)
7004 (Vx_mode_pointer_shape, Vx_window_horizontal_drag_shape)
7005 (Vx_hourglass_pointer_shape, Vx_sensitive_text_pointer_shape):
7006 Don't declare.
fff4e459 7007 (syms_of_w32fns): Don't define x-pointer-shape variable. (Bug#1485)
5f004711
JR
7008 (x_create_tip_frame) [GLYPH_DEBUG]: Enable image debugging code.
7009
b71f6f73
KH
70102009-01-07 Kenichi Handa <handa@m17n.org>
7011
50b06221 7012 * fileio.c (Finsert_file_contents): In the case of replace,
f56a4450 7013 remember the coding system used for decoding in
50b06221
KH
7014 coding_system (Bug#1039).
7015
b71f6f73 7016 * coding.c (decode_coding_utf_8): Check byte_after_cr before
79a97217 7017 breaking the loop. (Bug#870)
b71f6f73
KH
7018 (decode_coding_utf_16, decode_coding_emacs_mule)
7019 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
7020 (decode_coding_charset): Likewise.
7021
56f668f7
MR
70222009-01-05 Martin Rudalics <rudalics@gmx.at>
7023
7024 * frame.c (x_set_frame_parameters): Make sure height (width) get
7025 applied when fullwidth (fullheight) is set. (Bug#1522)
7026
5da9424d
JB
70272009-01-04 Juanma Barranquero <lekktu@gmail.com>
7028
7029 * w32.c: Use 64-bit arithmetic to do FILETIME conversions. (Bug#1766)
7030 (utc_base): Declare as ULONGLONG, not long double.
7031 (convert_time_raw): Delete.
7032 (FILETIME_TO_U64, U64_TO_LISP_TIME): New macros.
7033 (initialize_utc_base): New function.
7034 (convert_time): Use FILETIME_TO_U64, initialize_utc_base.
7035 (convert_from_time_t): Use initialize_utc_base; compute result with
7036 64-bit arithmetic.
7037 (process_times): Use FILETIME_TO_U64, U64_TO_LISP_TIME.
7038
c4605e09
EZ
70392009-01-03 Eli Zaretskii <eliz@gnu.org>
7040
9acef61c 7041 * process.c (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess)
c4605e09
EZ
7042 (Qttname, Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime)
7043 (Qcutime, Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs)
7044 (Quser, Qgroup, Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime)
7045 [!subprocesses]: Define.
7046 (syms_of_process) [!subprocesses]: Intern and staticpro them.
7047 (Flist_system_processes, Fsystem_process_attributes)
7048 [!subprocesses]: Call list_system_processes and
7049 system_process_attributes instead of returning Qnil.
7050
9acef61c
JB
7051 * dosfns.c (system_process_attributes, list_system_processes):
7052 New functions.
c4605e09
EZ
7053
7054 * vm-limit.c (ret_lim_data) [MSDOS]: New function.
7055
7056 * sysdep.c (list_system_processes, system_process_attributes) [MSDOS]:
7057 Don't use the default (no-op) implementation.
7058
8b7d0a16
JR
70592009-01-03 Jason Rumney <jasonr@gnu.org>
7060
a6d46bc1
JR
7061 * keyboard.c (parse_modifiers_uncached): Wheel events are
7062 clicks (bug#687).
7063
8b7d0a16
JR
7064 * w32term.c (x_query_colors, x_query_color): New functions.
7065
7066 * image.c (x_to_xcolors, png_load): Eliminate W32 specific code.
7067 (svg_load_image): Cast returned pointers from dynamically loaded
7068 functions. Eliminate W32 specific code.
7069
bfe11752
DN
70702009-01-02 Dan Nicolaescu <dann@ics.uci.edu>
7071
89e2438a
DN
7072 * nsfns.m (x_set_foreground_color, x_set_background_color)
7073 (x_set_cursor_color, x_set_icon_name, x_explicitly_set_name)
7074 (x_set_title, x_set_icon_type, x_set_cursor_type): Rename to use
7075 x_ prefix instead of ns_. Update references.
7076 (syms_of_nsfns): Add a FIXME comment.
7077
7078 * nsterm.m (x_set_cursor_type): New prototype.
7079 (setValuesFromPanel): Use it instead of the old ns_ prefixed name.
7080
bfe11752
DN
7081 * sysdep.c (system_process_attributes): Provide Qtime and Qctime
7082 for Solaris instead of incorrectly providing Qutime and Qcutime.
7083
031da700
EZ
70842009-01-02 Eli Zaretskii <eliz@gnu.org>
7085
7086 * w32.c (process_times): Compute sum of utime and stime.
7087 (system_process_attributes): Add Qtime to the alist.
7088
7089 * sysdep.c (system_process_attributes): Compute Qtime and Qctime
7090 and add them to the alist.
7091
7092 * process.c (top level) <Qtime, Qctime>: New variables.
7093 (syms_of_process): staticpro them.
7094 (Fsystem_process_attributes): Add their documentation to the doc
7095 string.
7096
7097 * process.h: Declare Qtime and Qctime.
7098
df23bf08
JR
70992009-01-02 Jason Rumney <jasonr@gnu.org>
7100
9acef61c 7101 * image.c (Qgobject): New symbol.
df23bf08
JR
7102 (syms_of_image): Initialize it.
7103 (init_svg_functions): Load some functions from gobject library.
7104
5bbdf7aa
DN
71052009-01-01 Dan Nicolaescu <dann@ics.uci.edu>
7106
7107 * frame.c (make_terminal_frame): Remove redundant code and useless
7108 block.
7109
63136da6
AS
71102009-01-01 Andreas Schwab <schwab@suse.de>
7111
7112 * process.c (conv_sockaddr_to_lisp): Add workaround for
7113 getsockname bug on BSD.
7114
9ef69046
CY
71152009-01-01 Chong Yidong <cyd@stupidchicken.com>
7116
d6fafbe0
CY
7117 * xfns.c (x_create_tip_frame): Set border width of the X window.
7118
51d861de 7119 * xfaces.c (Finternal_set_lisp_face_attribute): Improve error message.
9ef69046 7120
f9c34147
JR
71212009-01-01 Jason Rumney <jasonr@gnu.org>
7122
9acef61c 7123 * w32term.c (x_new_font): Return font object, not fontset. (Bug#119)
f9c34147
JR
7124 Don't block input, as per earlier xterm.c changes.
7125
f5497e45
AR
71262008-12-31 Adrian Robert <Adrian.B.Robert@gmail.com>
7127
7128 * nsfns.m (ns_appkit_version_str): Rename from ns_appkit_version.
7129 (ns_appkit_version_int): New function.
7130 (x-server-version): Use ns_appkit_version_int and follow 21+
7131 convention of returning 3 integers.
7132
c19cab20
KH
71332008-12-30 Kenichi Handa <handa@m17n.org>
7134
7135 * character.h (CHAR_VARIATION_SELECTOR_P): New macro.
7136 (CHAR_SURROGATE_PAIR_P): New macro.
7137
7138 * font.h (struct font_driver): New member get_variation_glyphs.
7139
9acef61c 7140 * font.c (font_range): Don't require a font for a variation selector.
c19cab20
KH
7141 (Ffont_variation_glyphs): New function.
7142 (syms_of_font): Defsubr it.
7143
7144 * ftfont.c (ftfont_driver): Set the member get_variation_glyphs to
7145 ftfont_variation_glyphs.
7146 (setup_otf_gstring): New function.
7147 (ftfont_drive_otf): Use it.
7148 (ftfont_shape_by_flt): Handle variation selector.
7149 (ftfont_variation_glyphs): New function.
7150
28cd591f
MR
71512008-12-30 Martin Rudalics <rudalics@gmx.at>
7152
7153 * frame.c (Vemacs_iconified): Remove.
7154
7f714baf
JR
71552008-12-30 Jason Rumney <jasonr@gnu.org>
7156
7157 * frame.c (store_frame_param, x_get_arg): Enable newer code on
9acef61c 7158 WINDOWSNT too, as related changes have already been synced. (Bug#117)
7f714baf 7159
9d2d22ab
CY
71602008-12-30 Chong Yidong <cyd@stupidchicken.com>
7161
7162 * indent.c (Fvertical_motion): Don't advance iterator if we have
7163 reseated to the desired position.
7164
7165 * xdisp.c (move_it_to): Handle GET_FROM_STRETCH method when
7166 checking for pos match.
7167
545312c2
KH
71682008-12-30 Kenichi Handa <handa@m17n.org>
7169
1ede3eb6
KH
7170 * insdel.c (copy_text): To convert a non-ASCII char to unibyte,
7171 just get the low 8-bit of the code.
7172
545312c2
KH
7173 * font.c (font_intern_prop): Validate str as multibyte.
7174
bd7bbf29
DN
71752008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
7176
31e0750e
DN
7177 * dispextern.h (struct face): Move lface and hash from the middle
7178 of bitfields.
7179
bd7bbf29
DN
7180 * Makefile.in (INTERVALS_H): Rename from INTERVAL_SRC, update all users.
7181
b5672e7c
DN
71822008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
7183
7184 * Makefile.in (INTERVAL_SRC): Also depend on dispextern.h.
7185 (coding.o, dispnew.o, keymap.o, msdos.o): Depend on INTERVAL_SRC
7186 instead of intervals.h.
7187
d704470f
AS
71882008-12-26 Andreas Schwab <schwab@suse.de>
7189
7190 * keymap.c (map_keymap_char_table_item): Make a copy of KEY if it is a
7191 cons.
7192
54b33868
MR
71932008-12-26 Martin Rudalics <rudalics@gmx.at>
7194
7195 * textprop.c (Qminibuffer_prompt): New variable.
7196 (syms_of_textprop): Initialize it.
7197 * callint.c (Fcall_interactively): For `c', `k', and `K' prompt
7198 in minibuffer-prompt face. (Bug#1662)
7199
40b615d6
JR
72002008-12-25 Jason Rumney <jasonr@gnu.org>
7201
7202 * buffer.c (Fbuffer_swap_text): Use POINTER_TYPE.
7203
baae5c2d
JR
72042008-12-24 Jason Rumney <jasonr@gnu.org>
7205
7206 * ralloc.c (r_alloc_reset_variable): New function.
7207
7208 * buffer.c (Fbuffer_swap_text) [REL_ALLOC]: Reset ralloc's internal
9acef61c 7209 record of what points where. (Bug#716)
baae5c2d 7210
a9051c88
DN
72112008-12-22 Dan Nicolaescu <dann@ics.uci.edu>
7212
7213 * minibuf.c (read_minibuf): Follow the non-interactive case when
7214 running as a daemon, before detaching.
7215
8b146312
AS
72162008-12-22 Andreas Schwab <schwab@suse.de>
7217
7218 * buffer.c (init_buffer): Use realloc instead of xrealloc.
7219 * gtkutil.c (free_widget_value): Use xfree instead of free.
7220
56f2de10
MR
72212008-12-22 Martin Rudalics <rudalics@gmx.at>
7222
7223 * frame.c (delete_frame): New function derived from
7224 Fdelete_frame to handle Qnoelisp value for FORCE argument.
7225 Delete last frame iff FORCE equals Qnoelisp. (Bug#1450)
7226 (Fdelete_frame): Call delete_frame. Remove line from doc-string
7227 saying that FORCE non-nil doesn't run `delete-frame-functions'.
7228 * frame.h: Extern delete_frame.
7229 * window.c (window_loop):
7230 * terminal.c (delete_terminal):
7231 * xterm.c (x_connection_closed):
7232 * xfns.c (Fx_hide_tip):
9acef61c 7233 * w32fns.c (Fx_hide_tip): Call delete_frame instead of Fdelete_frame.
56f2de10 7234
1fc200d6
JR
72352008-12-21 Jason Rumney <jasonr@gnu.org>
7236
7237 * w32uniscribe.c (uniscribe_encode_char): Return FONT_INVALID_CHAR
7238 when character maps to .notdef character.
7239
5e252df2
SM
72402008-12-21 Stefan Monnier <monnier@iro.umontreal.ca>
7241
7242 * keyboard.c (cmd_error_internal): Don't exit in daemon mode, bug#1310.
7243
99b72cc4
JR
72442008-12-20 Jason Rumney <jasonr@gnu.org>
7245
7246 * frame.c (Fmake_terminal_frame): Raise an error when called from
9acef61c 7247 a graphical frame on Windows. (Bug#1325)
99b72cc4 7248
acc49a52
JD
72492008-12-20 Jan Djärv <jan.h.d@swipnet.se>
7250
7251 * frame.c (Fdelete_frame): Set f->menu_bar_vector to Qnil.
7252
6ea15123
CY
72532008-12-20 Chong Yidong <cyd@stupidchicken.com>
7254
7255 * minibuf.c (Fread_buffer): Doc fix.
7256
b2dab6c8
JR
72572008-12-20 Jason Rumney <jasonr@gnu.org>
7258
54ea0c87 7259 * fileio.c (Fexpand_file_name): Do not allow ../ to go beyond the
9acef61c 7260 server name in UNC paths. (Bug#719)
54ea0c87 7261
b2dab6c8 7262 * coding.c (decode_coding): Clear chars_at_source flag when using
9acef61c 7263 charbuf. (Bug#1035)
b2dab6c8 7264
6d1921be
DN
72652008-12-19 Daniel Engeler <engeler@gmail.com>
7266
7267 * sysdep.c (serial_configure): Fix typo.
7268
53934c98
DN
72692008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
7270
7271 * sysdep.c: Include alloca.h.
f4f634e8
DN
7272 (system_process_attributes): Add implementation for Solaris.
7273
7274 * s/sol2-10.h (HAVE_PROCFS, _STRUCTURED_PROC): New defines.
53934c98 7275
06e111a6
DN
72762008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
7277
7278 Reorganize implementation of Flist_system_processes and
7279 Fsystem_process_attributes. No functional changes.
7280 * process.c: Don't #include pwd.h, grp.h and limits.h.
7281 (Flist_system_processes): Just call list_system_processes.
7282 (Fsystem_process_attributes): Just call system_process_attributes.
7283 (procfs_list_system_processes, time_from_jiffies)
7284 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
7285 (procfs_get_total_memory, procfs_system_process_attributes): Move ...
7286
7287 * sysdep.c: ... here. Include pwd.h, grp.h and limits.h.
7288 (list_system_processes): Rename from
7289 procfs_list_system_processes. Enclose in #ifdef HAVE_PROCFS.
7290 Provide a do nothing implementation.
7291 (system_process_attributes): Rename from
7292 procfs_list_system_processes.
7293 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
9acef61c 7294 (procfs_get_total_memory): Enclose in #ifdef GNU_LINUX.
06e111a6
DN
7295
7296 * w32.c (list_system_processes): Rename from
7297 w32_list_system_processes.
7298 (system_process_attributes): Rename from
7299 w32_system_process_attributes.
7300
7301 * s/gnu-linux.h (LISTPROC, PROCATTR): Remove.
7302
7303 * process.h (w32_list_system_processes)
7304 (w32_system_process_attributes): Remove.
362654a6
JB
7305 (list_system_processes, system_process_attributes):
7306 New prototypes.
06e111a6 7307
6a705b23
KH
73082008-12-19 Kenichi Handa <handa@m17n.org>
7309
7310 * xfont.c (xfont_decode_coding_xlfd): New function.
7311 (xfont_encode_coding_xlfd): New function.
7312 (xfont_list_pattern): Decode XLFD by iso-8859-1.
7313 (xfont_list): Decode and encode XLFD by iso-8859-1.
7314 (xfont_match): Likewise.
7315 (xfont_list_family): Likewise.
7316 (xfont_open): Likewise.
7317
d66c0241 7318 * ftfont.c (ftfont_open): Generate a multibyte string if given
6a705b23
KH
7319 names are utf-8.
7320
d66c0241 7321 * xftfont.c (xftfont_open): Generate a multibyte string if given
6a705b23
KH
7322 names are utf-8.
7323
5a130941
JD
73242008-12-18 Jan Djärv <jan.h.d@swipnet.se>
7325
7326 * gtkutil.c (xg_frame_resized): Remove check if rows/columns have
7327 changed.
bfd20325
JD
7328 (xg_tool_bar_proxy_callback): Put focus on the frame after we have
7329 clicked on a detached tool bar button.
5a130941 7330
fd95644b
DN
73312008-12-18 Dan Nicolaescu <dann@ics.uci.edu>
7332
7333 * emacs.c (main): Print and error and exit when no data is read
7334 from the pipe.
7335
e6eee6ae
JR
73362008-12-17 Jason Rumney <jasonr@gnu.org>
7337
7338 * w32font.c (w32font_has_char): Always return -1.
7339
a35dd56b
KH
73402008-12-16 Kenichi Handa <handa@m17n.org>
7341
7342 * font.c (font_open_entity): Fix previous change.
7343
0e3635c2
DN
73442008-12-16 Dan Nicolaescu <dann@ics.uci.edu>
7345
7346 * process.c: Include <limits.h>.
7347
d4835507 73482008-12-16 Chetan Pandya <pandyacus@sbcglobal.net> (tiny change)
b5356c39
CY
7349
7350 * font.c (font_update_drivers): Fix mistake in reconstructing the
7351 driver list.
7352
73532008-12-16 Chong Yidong <cyd@stupidchicken.com>
7354
7355 * font.c (font_clear_cache): Fix format of font cache data.
7356
e2cbc401
CY
73572008-12-15 Chong Yidong <cyd@stupidchicken.com>
7358
7359 * xftfont.c (xftfont_open): Free Xft font pattern if
7360 XftFontOpenPattern fails.
7361
7362 * xterm.c (x_free_frame_resources): Remove extraneous call to
7363 free_frame_faces.
7364
b131d535
CY
73652008-12-13 Chong Yidong <cyd@stupidchicken.com>
7366
7367 * xterm.c (x_delete_display): Move xim_close_dpy call to
7368 x_delete_terminal.
7369 (x_delete_terminal): Call xim_close_dpy.
7370
e6df5336
JR
73712008-12-13 Jason Rumney <jasonr@gnu.org>
7372
7373 * w32font.c (intern_font_name): New function.
7374 (add_font_name_to_list, w32_enumfont_pattern_entity): Use it.
7375 (w32font_open_internal, Fx_select_font): Decode font name.
7376 (fill_in_logfont, list_all_matching_fonts): Encode font name.
7377
7378 * w32font.h (intern_font_name): Declare new function.
7379
7380 * w32uniscribe.c (add_opentype_font_name_to_list):
7381 Use intern_font_name.
7382
20d68145
CY
73832008-12-13 Chong Yidong <cyd@stupidchicken.com>
7384
9f2554de
CY
7385 * frame.c (Fdelete_frame): Call free_font_driver_list.
7386
3d9bec9a
CY
7387 * font.c (free_font_driver_list): Implement missing function.
7388
20d68145
CY
7389 * w32term.c (w32_term_init): Don't initialize the image cache
7390 here; it will be done in init_frame_faces.
7391
7392 * xterm.h (struct xim_inst_t): Definition moved from xterm.c.
7393 (struct x_display_info): Remove unused member null_pixel. New
7394 member xim_callback_data.
7395
7396 * xterm.c (struct xim_inst_t): Definition moved to xterm.h.
7397 (xim_initialize): Save pointer to callback function data.
7398 (xim_close_dpy): Free callback function data. Call XCloseIM,
7399 reverting 2008-11-04 change by David Smith.
7400 (x_term_init): Don't initialize the image cache here; it will be
7401 done in init_frame_faces. Remove ancient "null_pixel" cruft.
7402 (x_delete_display): Free x_dnd_atoms member.
7403
96f9306b
KH
74042008-12-13 Kenichi Handa <handa@m17n.org>
7405
6dec9044
JB
7406 * font.c (font_rescale_ratio): Moved from xfaces.c.
7407 Argument type changed. Handle a font-spec too.
96f9306b 7408 (font_score): Check Vface_font_rescale_alist.
6dec9044 7409 (font_open_entity): Likewise. (Bug#1547)
96f9306b
KH
7410
7411 * xfaces.c (font_rescale_ratio): Moved to font.c.
7412
8d5b4964
CY
74132008-12-13 Chong Yidong <cyd@stupidchicken.com>
7414
7415 * xfns.c (Fx_wm_set_size_hint): Check if the frame is an X frame.
7416
e6df5336
JR
74172008-12-12 Jason Rumney <jasonr@gnu.org>
7418
7419 * w32fns.c (x_display_info_for_name, Fx_open_connection): Set
7420 Vwindow_system_version to the real w32 major version.
7421
97c6058a
DN
74222008-12-12 Dan Nicolaescu <dann@ics.uci.edu>
7423
7424 * term.c (init_tty): Move setting the terminal name before the
7425 potential user: maybe_fatal.
7426
ec4e88d7
CY
74272008-12-11 Chong Yidong <cyd@stupidchicken.com>
7428
d4835507
JB
7429 * term.c (tty_free_frame_resources): Renamed from delete_tty_output;
7430 all callers changed. Call free_frame_faces to free the face cache.
ec4e88d7 7431
b4233ec9
JR
74322008-12-11 Jason Rumney <jasonr@gnu.org>
7433
8ec71e23 7434 * w32font.c (fill_in_logfont): Don't assume symbol script means
9acef61c 7435 SYMBOL_CHARSET. (Bug#547)
8ec71e23 7436
b4233ec9 7437 * w32uniscribe.c (uniscribe_encode_char): Increase glyph buffer
9acef61c 7438 size for surrogates. (Bug#1096, bug#872)
b4233ec9 7439
011a0143
JB
74402008-12-11 Juanma Barranquero <lekktu@gmail.com>
7441
7442 * w32proc.c (Fw32_get_locale_info): Decode long form of locale name.
7443
3c309f34
JB
74442008-12-11 Juanma Barranquero <lekktu@gmail.com>
7445
7446 * process.c (Fsystem_process_attributes, syms_of_process):
7447 Fix typo in name of Ssystem_process_attributes.
7448 Reported by Ulrich Mueller <ulm@kph.uni-mainz.de>.
7449
fedc6ab5
JB
74502008-12-11 Juanma Barranquero <lekktu@gmail.com>
7451
7452 * syntax.c (Fmodify_syntax_entry): Doc fix.
7453
ba3de0e8
JB
74542008-12-10 Juanma Barranquero <lekktu@gmail.com>
7455
7456 * font.c (Ffont_spec): Move usage to end of docstring.
7457
174f1c74
JR
74582008-12-10 Jason Rumney <jasonr@gnu.org>
7459
7460 * w32font.c (Qcham): New symbol.
7461 (font_supported_scripts): Add cham, and comments for other new
7462 scripts in bitfield from OpenType spec.
9d32f818
JR
7463 (add_font_entity_to_list): Limit unicode-sip fonts to those that
7464 contain characters beyond the bmp.
174f1c74 7465
7b649478
KH
74662008-12-10 Kenichi Handa <handa@m17n.org>
7467
7468 * ftfont.c (fc_charset_table): Add "unicode-sip".
2ae37cf0 7469 (ftfont_spec_pattern): Lookup fc_charset_table for the registry
7b649478
KH
7470 Qunicode_sip.
7471
2133e2d1
JB
74722008-12-10 Juanma Barranquero <lekktu@gmail.com>
7473
7474 * coding.c (QCdefault_char): Rename from QCdefalut_char.
7475 (Fcoding_system_put): Use QCdefault_char.
7476 (syms_of_coding): Set QCdefault_char, not QCdefalut_char.
7477
9af886ee
CY
74782008-12-09 Chong Yidong <cyd@stupidchicken.com>
7479
74d819eb
CY
7480 * xftfont.c (syms_of_xftfont): Fix typo.
7481
4ccfa1c0 7482 * buffer.c (Fbuffer_swap_text): Signal error if swapping a dead buffer.
9af886ee 7483
7c19d3ae
DN
74842008-12-08 Dan Nicolaescu <dann@ics.uci.edu>
7485
7486 * emacs.c (main): Close daemon_pipe on exec.
7487
567826bb
CY
74882008-12-08 Chong Yidong <cyd@stupidchicken.com>
7489
7490 * termchar.h (struct tty): New members termcap_term_buffer and
7491 termcap_strings_buffer.
7492
7493 * term.c (encode_terminal_code): Free any previous memory blocks
4ccfa1c0 7494 before calling xmalloc for encode_terminal_src or encode_terminal_dst.
567826bb
CY
7495 (maybe_fatal): Buffer argument deleted. Don't free buffer here.
7496 All callers changed.
7497 (init_tty): Store termcap data and string buffers in new struct
7498 tty members termcap_term_buffer and termcap_strings_buffer.
7499 (delete_tty): Free them.
4ccfa1c0 7500 (syms_of_term): Initialize encode_terminal_src and encode_terminal_dst.
567826bb 7501
aa96c42b
SZ
75022008-12-07 Seiji Zenitani <zenitani@mac.com>
7503
7504 * nsfns.m (ns_set_background_color): Remove code duplication.
4ccfa1c0 7505 It was a substitute for face-transparency on OS X 10.3.
aa96c42b 7506
b7e1d896
CY
75072008-12-06 Chong Yidong <cyd@stupidchicken.com>
7508
7509 * coding.c (make_conversion_work_buffer): Disable buffer
7510 modification hooks in the work buffer.
7511
b5ec91a5
EZ
75122008-12-05 Eli Zaretskii <eliz@gnu.org>
7513
7514 * process.c (procfs_system_process_attributes): If `nread' has a
7515 negative value, assign zero to it.
7516
a5d2a52b
CY
75172008-12-05 Chong Yidong <cyd@stupidchicken.com>
7518
68c5540b 7519 * eval.c (Vdebug_on_error): Doc fix.
a5d2a52b 7520
7bf1bb21
KH
75212008-12-05 Kenichi Handa <handa@m17n.org>
7522
7523 * ftfont.c (ftfont_shape_by_flt): Use "combining" flt if the
7524 second character is a combining character.
7525
2fdc7d00
EZ
75262008-12-05 Eli Zaretskii <eliz@gnu.org>
7527
7528 * process.c (procfs_system_process_attributes): Don't use cmd,
7529 cmdsize, and q without initializing them first.
7530
bf6bfba8
JR
75312008-12-04 Jason Rumney <jasonr@gnu.org>
7532
7533 * w32font.c (w32font_draw): Initialize orig_clip before getting
7534 it, and delete it when finished.
7535
a3b1a468
DN
75362008-12-04 Dan Nicolaescu <dann@ics.uci.edu>
7537
7538 * keyboard.c (kbd_buffer_get_event): Follow the non-interactive
7539 case when running as a daemon before detaching.
7540
8b8be8eb
JB
75412008-12-03 Juanma Barranquero <lekktu@gmail.com>
7542
805f2638 7543 * w32.c (init_environment): Don't unload library shell32.dll.
8b8be8eb 7544
b1bde622
KH
75452008-12-03 Kenichi Handa <handa@m17n.org>
7546
e500c47d
KH
7547 * font.c (font_at): Set `multibyte' at first.
7548
ca516334
KH
7549 * coding.c (decode_coding_charset): Check type of an element of
7550 vector VALIDS.
7bf1bb21 7551 (encode_coding_emacs_mule): Be sure to set `code'.
ca516334 7552
4ccfa1c0 7553 * fontset.c (face_for_char): Handle invalid charset property correctly.
b1bde622
KH
7554 (font_for_char): Likewise.
7555
1e5ecd37
CY
75562008-12-03 Chong Yidong <cyd@stupidchicken.com>
7557
d5b01609 7558 * font.c (Fopen_font): Compute pixel size correctly.
ba207571
CY
7559 (font_update_lface): Handle fonts with corrupted size specs,
7560 i.e. non-int and non-float.
d5b01609 7561
11e3a6e4 7562 * ftfont.c (ftfont_match): Initialize entity variable.
9a48c8cb 7563 (ftfont_resolve_generic_family): Avoid using uninitialized var.
8adb3a3b 7564 (ftfont_list_family): Initialize list var earlier.
11e3a6e4 7565
ab06788b
CY
7566 * xselect.c (Fx_get_cut_buffer_internal): Fix memory leak.
7567
1e5ecd37 7568 * xterm.c (x_draw_glyph_string): Fall back on
0cff82ab 7569 underline_minimum_offset for underline position.
1e5ecd37 7570
63c125ab
DN
75712008-12-03 Dan Nicolaescu <dann@ics.uci.edu>
7572
7573 * keyboard.c (read_char_help_form_unwind): Specify the type for ARG.
7574
7575 * character.c (c_string_width): Specify the type for LEN.
7576
3a8406e1
KH
75772008-12-03 Kenichi Handa <handa@m17n.org>
7578
4ccfa1c0 7579 * coding.c (decode_coding_utf_16): Initialize consumed_chars_base to 0.
453b38f0 7580 (decode_coding_utf_8): Likewise.
4ccfa1c0 7581 (detect_coding_system): Initialize utf_16_le_eol to -1, val to Qnil.
4533845d 7582 (produce_chars): Initialize consumed_chars to 0.
3a8406e1 7583
651df7d9
CY
75842008-12-02 Chong Yidong <cyd@stupidchicken.com>
7585
7586 * keyboard.c (make_lispy_position): Only use PT if the selected
7587 window is current.
7588
1f625c6c
AS
75892008-12-02 Andreas Schwab <schwab@suse.de>
7590
f7741ce9
AS
7591 * font.c (font_unparse_fcname): Fix use of uninitialized variable.
7592
1f625c6c
AS
7593 * doprnt.c (doprnt1): Fix size of charbuf.
7594
92bc2678
CY
75952008-12-02 Chong Yidong <cyd@stupidchicken.com>
7596
7597 * keyboard.c (timer_check): Revert last change.
7598
93b9e8cc
JB
75992008-12-02 Juanma Barranquero <lekktu@gmail.com>
7600
7601 * makefile.w32-in ($(BLD)/w32console.$(O)): Fix silly, silly typo.
7602
fd7a37d5
JB
76032008-12-01 Juanma Barranquero <lekktu@gmail.com>
7604
7605 * makefile.w32-in: Update dependencies.
7606 (CONFIG_H): Add $(EMACS_ROOT)/nt/inc/sys/time.h.
7607
c115043b
AS
76082008-12-01 Andreas Schwab <schwab@suse.de>
7609
7610 * font.c (register_font_driver): Use xmalloc.
7611 (font_put_frame_data): Likewise.
7612
f5668d2a
CY
76132008-12-01 Chong Yidong <cyd@stupidchicken.com>
7614
860d96be
CY
7615 * xfaces.c (realize_x_face): Make abort condition clearer.
7616
f5668d2a
CY
7617 * gtkutil.c (update_frame_tool_bar): Initialize variable.
7618
379c17e7
CY
76192008-11-30 Chong Yidong <cyd@stupidchicken.com>
7620
7621 * keyboard.c (timer_check): After a timer runs, ensure that the
7622 selected window's buffer is current.
7623
35f36d65
JB
76242008-11-30 Juanma Barranquero <lekktu@gmail.com>
7625
f952c61c
JB
7626 * makefile.w32-in ($(BLD)/abbrev.$(O)): Remove.
7627 It was accidentally restored by the Unicode merge.
7628
35f36d65
JB
7629 * w32proc.c (Fw32_get_locale_info): Fix typo in docstring.
7630
b23077df
JB
76312008-11-29 Juanma Barranquero <lekktu@gmail.com>
7632
7633 * w32proc.c: Include "coding.h".
7634 (Fw32_short_file_name): Encode filename passed to Windows API.
7635 (Fw32_long_file_name): Encode filename passed to Windows API and
7636 decode back the result. (Bug#1433)
7637
b8ebe9dd
KH
76382008-11-29 Kenichi Handa <handa@m17n.org>
7639
8cc53f96
KH
7640 * charset.h (CHAR_CHARSET_P): Check if the encoder is loaded or
7641 not before accessing it.
7642
b8ebe9dd
KH
7643 * charset.c (Fdefine_charset_internal): After calculating
7644 min_char, max_char, and fastmap, copy the charset structure again.
7645 (encode_char): Fix the previous change.
7646
59bc82c0
SZ
76472008-11-28 Seiji Zenitani <zenitani@mac.com>
7648
7649 * frame.c (x_set_alpha) [NS_IMPL_COCOA]: Call x_set_frame_alpha.
7650
7651 * nsfns.m (ns_frame_parm_handlers): Set alpha handler.
7652
7653 * nsterm.m (x_set_frame_alpha): New function.
7654
32247e3d
EZ
76552008-11-27 Eli Zaretskii <eliz@gnu.org>
7656
7657 * xfaces.c (Fx_font_family_list, syms_of_xfaces): Fix last change.
7658
b003e5ff
JB
76592008-11-27 Juanma Barranquero <lekktu@gmail.com>
7660
7661 * w32font.c (add_font_entity_to_list): Pass the right LOGFONT
7662 pointer to check_face_name.
7663
708550f5
KH
76642008-11-27 Kenichi Handa <handa@m17n.org>
7665
7666 * category.h (SET_CATEGORY_SET): Call set_category_set.
7667 (set_category_set): Extern it.
7668
7669 * category.c (hash_get_category_set): New function.
7670 (Fmodify_category_entry): Adjusted for the change of
7671 char_table_ref_and_range. Call hash_get_category_set to get a
7672 category set to store in the table.
7673
7674 * character.h (MAYBE_UNIFY_CHAR): Call maybe_unify_char instead of
7675 Funify_charset.
7676
2ae37cf0 7677 * charset.h (enum charset_method): Delete CHARSET_METHOD_MAP_DEFERRED.
708550f5
KH
7678 (DECODE_CHAR): Check if the decoder vector is ready.
7679 (ENCODE_CHAR): Check if the encoder char-table is ready.
7680 (maybe_unify_char): Extern it.
7681
7682 * charset.c (Vchar_unified_charset_table): Delete it.
7683 (inhibit_load_charset_map): New variable.
7684 (temp_charset_work): New variable.
7685 (SET_TEMP_CHARSET_WORK_ENCODER, GET_TEMP_CHARSET_WORK_ENCODER)
7686 (SET_TEMP_CHARSET_WORK_DECODER, GET_TEMP_CHARSET_WORK_DECODER):
7687 New macros.
7688 (load_charset_map): Meaning of control_flag changed. If
7689 inhibit_load_charset_map is nonzero, setup a table in
7690 temp_charset_work.
7691 (load_charset): New argument control_flag.
7692 (map_charset_for_dump): New function.
7693 (map_charset_chars): If inhibit_load_charset_map is nonzero, use
7694 map_charset_for_dump.
7695 (Fdefine_charset_internal): If the charset method is MAP, load
7696 mapping tables by calling load_charset.
7697 (Funify_charset): Don't load a mapping table but directly set
7698 Vchar_unify_table.
7699 (maybe_unify_char): New function.
7700 (decode_char): Don't handle the deleted method MAP_DEFERRED.
7701 Handle the case of inhibit_load_charset_map being nonzero.
7702 (encode_char): Don't handle the deleted method MAP_DEFERRED.
7703 Handle the case of inhibit_load_charset_map being nonzero.
7704 (Fclear_charset_maps): Just free temp_charset_work.
7705 (syms_of_charset): Make `inhibit-load-charset-map' a Lisp
7706 variable.
7707
7708 * chartab.c (sub_char_table_ref_and_range): Adjusted for the
7709 change of char_table_ref_and_range.
7710 (char_table_ref_and_range): Change the meaning of argument FROM
7711 and TO. Now the caller must provide initial values for *FROM
7712 and *TO.
7713
7714 * fontset.c (fontset_add): Adjusted for the change of
7715 char_table_ref_and_range.
7716 (fontset_get_font_group): Likewise.
7717 (Ffontset_info): Likewise.
7718
7719 * keymap.c (describe_vector): Adjusted for the change of
7720 char_table_ref_and_range. For char-table, put boundary between
7721 non-ASCII and 8-bit characters.
7722
7723 * print.c (print_object): For bool-vector, delete unnecessary
7724 check of ASCII_BYTE_P.
7725
9196133b
JR
77262008-11-26 Jason Rumney <jasonr@gnu.org>
7727
7728 * w32font.c (w32font_open_internal): Don't include external
9acef61c 7729 leading in font height. (Bug#879)
9196133b 7730
9f688acf
GM
77312008-11-26 Glenn Morris <rgm@gnu.org>
7732
7733 * xfaces.c (Fx_font_family_list): Replace lisp/term/pc-win.el
7734 redefinition with ifdef. (Bug#1383)
7735
90d19aff
AR
77362008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
7737
7738 * nsterm.m (ns_get_color): Handle long hex strings (fixes bug #1044).
7739
4ccfa1c0 77402008-11-24 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
90d19aff
AR
7741
7742 * nsterm.m (-otherMouseDown:, -otherMouseUp:, -otherMouseDragged):
7743 New EmacsView methods.
7744 (EV_UDMODIFIERS, EV_BUTTON): Add OtherMouse constants.
7745 Fixes bug #1048,1357,1414.
7746
77472008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
7748
7749 Fix bug #1362.
7750 * image.c (x_clear_image_1): Do not free background under HAVE_NS, it
7751 is not an indexed color.
7752 * nsterm.m (free_indexed_color): Add argument checking.
7753 * nsfns.m: Move config.h to before system includes (advised by Dan N.).
7754
e7d5ecb3
CY
77552008-11-24 Chong Yidong <cyd@stupidchicken.com>
7756
7757 * minibuf.c (Fcompleting_read, Vminibuffer_completion_confirm):
7758 Document confirm-after-completion value for
7759 minibuffer-completion-confirm.
7760
c285743c
JR
77612008-11-24 Jason Rumney <jasonr@gnu.org>
7762
7763 * w32font.c (check_face_name): Use xstrcasecmp. Avoid compiler
7764 warning.
7765
b0857706
JR
77662008-11-23 Jason Rumney <jasonr@gnu.org>
7767
7768 * w32uniscribe.c (uniscribe_encode_char): Ensure context is
7769 restored before returning.
7770
7771 * w32font.c (check_face_name): New function.
7772 (add_font_entity_to_list): Use it to filter out common substituted
9acef61c 7773 fonts. (Bug#642)
b0857706 7774
ee50ff07
MR
77752008-11-22 Martin Rudalics <rudalics@gmx.at>
7776
7777 * buffer.c (Fswitch_to_buffer): Reword and mention new option
7778 confirm-nonexistent-file-or-buffer in doc-string.
7779
b8ff72fa
SM
77802008-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
7781
7782 * buffer.c (Fbuffer_swap_text): Remove redundant marker manipulation.
7783 Fix copy/paste typo. Add checks.
7784
cee53ed4
KH
77852008-11-21 Kenichi Handa <handa@m17n.org>
7786
7787 * coding.c (detect_coding_iso_2022): Reject invalid composition
7788 sequence.
7789 (DECODE_COMPOSITION_START): If the current source is the last
7790 block, and the current composition doesn't end, regard this
7791 sequence as invalid.
7792 (decode_coding_iso_2022): Handle invalid composition sequence.
7793
f6ef1e65
MR
77942008-11-20 Martin Rudalics <rudalics@gmx.at>
7795
7796 * window.c (coordinates_in_window): Don't return
7797 ON_VERTICAL_BORDER for the rightmost position of a mode/header
7798 line when the window is not the rightmost one. (Bug#1372)
7799
e08b1705
MR
78002008-11-16 Ben North <ben@redfrontdoor.org> (tiny change)
7801
7802 * buffer.c (syms_of_buffer): Fix doc-string of cursor-type.
7803
ad98e89f
EZ
78042008-11-15 Eli Zaretskii <eliz@gnu.org>
7805
7806 * msdos.c (run_msdos_command): Don't call dos_ttcooked, dos_ttraw,
7807 and bright_bg if noninteractive is non-zero.
7808
fb098a4b
CY
78092008-11-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7810
7811 * xterm.c (x_draw_glyph_string): For stretch glyphs, don't call
7812 x_draw_glyph_string_background.
7813
7814 * w32term.c (x_draw_glyph_string): Likewise.
7815
ce952b6e
CY
78162008-11-15 Chong Yidong <cyd@stupidchicken.com>
7817
7818 * xterm.c (x_draw_glyph_string): Stop drawing the background of
7819 the next glyph string once past the overhang width.
7820
7821 * nsterm.m (ns_draw_glyph_string): Likewise.
7822
7823 * w32term.c (x_draw_glyph_string): Likewise.
7824
26ea7079
CY
78252008-11-14 Fabrice Popineau <fabrice.popineau@supelec.fr> (tiny change)
7826
7827 * fileio.c (Finsert_file_contents): Decrement specpdl_ptr to avoid
7828 double file close.
7829
1c33c906
MR
78302008-11-14 Martin Rudalics <rudalics@gmx.at>
7831
7832 * window.c (window_loop): In DELETE_BUFFER_WINDOWS case, reset
7833 dedicated status of window before attempting to display another
7834 buffer in it.
7835
8fc29035
JB
78362008-11-14 Juanma Barranquero <lekktu@gmail.com>
7837
7838 * msdos.c (Fmsdos_long_file_names):
7839 (syms_of_msdos) <dos-unsupported-char-glyph>:
7840 * dosfns.c (Fint86): Fix typos in docstrings.
7841
55fb4286
EZ
78422008-11-14 Eli Zaretskii <eliz@gnu.org>
7843
7844 * makefile.w32-in (OBJ1, WIN32OBJ): Fix whitespace.
7845
3fda0315
KY
78462008-11-14 Katsumi Yamaoka <yamaoka@jpl.org>
7847
7848 * puresize.h (BASE_PURESIZE): Increase to 1260000.
7849
7e849c17
CY
78502008-11-12 Michal Nazarewicz <mina86@tlen.pl> (tiny change)
7851
7852 * frame.c (x_set_alpha): Set alpha to -1 if nil given.
7853
7854 * frame.h: Negative alpha means "don't touch".
7855
7856 * w32term.c (x_set_frame_alpha): Do nothing if alpha is negative.
7857
7858 * xterm.c (x_set_frame_alpha): Do nothing if alpha is negative.
7859
b9fd67bd
DN
78602008-11-12 Dan Nicolaescu <dann@ics.uci.edu>
7861
7862 * hftctl.c:
7863 * chpdef.h:
7864 * acldef.h: Remove files used only for systems no longer supported.
7865
7866 * Makefile.in: Fix .o alphabetical ordering.
7867 (hftctl.o): Remove dependency, file removed.
7868 (keymap.o, print.o): Depend on charset.h.
7869
d5998e03
KH
78702008-11-10 Kenichi Handa <handa@m17n.org>
7871
2ae37cf0 7872 * character.c (Fget_byte): Fix and make it faster for unibyte target.
d5998e03 7873
be70e183
CY
78742008-11-08 Chong Yidong <cyd@stupidchicken.com>
7875
7876 * dired.c (file_name_completion): If completion_ignore_case is
7877 enabled, ignore case when checking completion-regexp-list.
7878
7cf94eac
EZ
78792008-11-08 Eli Zaretskii <eliz@gnu.org>
7880
7881 * vm-limit.c (get_lim_data): Fix last change.
7882
ee107a89
KH
78832008-11-08 Kenichi Handa <handa@m17n.org>
7884
7885 * character.c (Fget_byte): New function.
7886 (syms_of_character): Defsubr Fget_byte.
7887
5fd15622
CY
78882008-11-07 Chong Yidong <cyd@stupidchicken.com>
7889
7890 * xdisp.c (try_window_reusing_current_matrix): Ensure that window
7891 cursor position is valid after scrolling.
7892
13d62fad
JB
78932008-11-06 Juanma Barranquero <lekktu@gmail.com>
7894
7895 * fns.c (Frandom): Rename arg N to LIMIT to match the docs; doc fix.
7896
a1dd2936
GM
78972008-11-06 Glenn Morris <rgm@gnu.org>
7898
7899 * xterm.c (handle_one_xevent): Don't let popup menus cause
7900 mouse-autoselect-window related window switching. (Bug#1261)
7901
860cd236
CY
79022008-11-04 David Smith <davidsmith@acm.org> (tiny change)
7903
7904 * xterm.c (xim_close_dpy): Avoid double-free on X11R6 XIM.
7905
653a3150
AS
79062008-11-04 Andreas Schwab <schwab@suse.de>
7907
7908 * xfns.c (Fx_wm_set_size_hint): Add missing return value.
7909
870f5cac
CY
79102008-11-03 Chong Yidong <cyd@stupidchicken.com>
7911
7912 * xfns.c (Fx_wm_set_size_hint): New function.
7913
1e02f3cb
MR
79142008-11-03 Martin Rudalics <rudalics@gmx.at>
7915
7916 * textprop.c (Fprevious_single_char_property_change): Return 0
7917 when there's no change in a string. (Bug#1301)
7918
e630dfc6
MR
79192008-11-02 Martin Rudalics <rudalics@gmx.at>
7920
7921 * frame.c (do_switch_frame): New argument NORECORD passed to
7922 Fselect_window.
7923 (Fselect_frame): New argument NORECORD passed to
7924 do_switch_frame.
7925 (Fset_frame_selected_window): New argument NORECORD passed to
7926 Fselect_frame.
7927 (Fhandle_switch_frame, Fdelete_frame): Handle NORECORD argument
7928 in call of do_switch_frame.
7929 (Fset_mouse_position, Fset_mouse_pixel_position, Fraise_frame):
7930 Handle NORECORD argument in call of Fselect_frame.
7931 * lisp.h (do_switch_frame, Fselect_frame)
7932 (Fset_frame_selected_window): Adjust declarations.
7933 * window.c (select_frame_norecord): New function.
7934 (run_window_configuration_change_hook): Use it and call
7935 Fselect_frame with NORECORD set.
7936 (Fselect_window): Pass NORECORD to Fselect_frame.
7937 (Fset_window_configuration): Handle NORECORD argument in call of
7938 do_switch_frame.
7939 * minibuf.c (choose_minibuf_frame): Handle NORECORD in call of
7940 Fset_frame_selected_window.
7941 * keyboard.c (command_loop_1): Handle NORECORD in call of
7942 Fselect_frame (currently ifdefd).
7943
9020b223
GM
79442008-11-02 Ulrich Mueller <ulm@kph.uni-mainz.de>
7945
7946 * emacs.c (USAGE2): Untabify.
7947
793ffee8
SM
79482008-11-01 Stefan Monnier <monnier@iro.umontreal.ca>
7949
7950 * composite.c (fill_gstring_header): Fix copy/paste typo.
7951
ab6d1131
MR
79522008-10-31 Martin Rudalics <rudalics@gmx.at>
7953
7954 * window.c (Fnext_window, Fprevious_window): Rewrite doc-string.
7955 (Fother_window): Rename argument and rewrite doc-string.
7956 (select_window_norecord): Fix return value. (Bug#1276)
7957
601a9cf1
JB
79582008-10-30 Juanma Barranquero <lekktu@gmail.com>
7959
7960 * w32fns.c (x_create_tip_frame): Prevent default foreground color for
7961 new frames overriding foreground for tooltips. Based on similar patch
7962 from Martin Rudalics <rudalics@gmx.at>. (Bug#1032)
7963
813b0652
CY
79642008-10-29 Chong Yidong <cyd@stupidchicken.com>
7965
7966 * emacs.c (Fdaemon_initialized): Initialize nfd.
7967
4414f58f
MR
79682008-10-29 Martin Rudalics <rudalics@gmx.at>
7969
7970 * window.c (Fwindow_height, Fdelete_window, set_window_buffer)
7971 (Fwindow_text_height): Clarify doc-strings.
7972 * xdisp.c (syms_of_xdisp): Mention set-window-buffer in
7973 doc-string of window-scroll-functions.
7974
ecdcaa09
RS
79752008-10-28 Reiner Steib <Reiner.Steib@gmx.de>
7976
7977 * category.c (syms_of_category): Fix typo in docstring.
7978
23fe745a
JB
79792008-10-28 Juanma Barranquero <lekktu@gmail.com>
7980
7981 * window.c (Fwindowp, Fwindow_live_p, Fwindow_minibuffer_p)
7982 (Fcoordinates_in_window_p, Fscroll_left, Fscroll_right):
7983 Fix typos in docstrings.
7984
ff808935
DN
79852008-10-28 Dan Nicolaescu <dann@ics.uci.edu>
7986
7987 * emacs.c (daemon_pipe): Make non-static.
7988 (IS_DAEMON): Move definition ...
7989 * lisp.h (IS_DAEMON): ... here.
7990 (daemon_pipe): Declare.
7991 (is_daemon): Remove.
7992 * dispnew.c (init_display): Use IS_DAEMON.
7993
fc012771
SM
79942008-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
7995
7996 * xdisp.c (pos_visible_p, redisplay_internal, message3_nolog)
7997 (message2_nolog): Check FRAME_INITIAL_P instead of noninteractively.
7998
7999 * emacs.c (is_daemon): Remove.
8000 (main): Don't set is_daemon.
8001 (IS_DAEMON): New macro.
8002 (Fdaemonp, Fdaemon_initialized): Use it.
601a9cf1 8003 (Fdaemon_initialized): Write a char into the pipe to make sure the
fc012771
SM
8004 parent exits.
8005 (syms_of_emacs): Explicitly initialize daemon_pipe[1].
8006
d8bdbe6f
CY
80072008-10-27 Chong Yidong <cyd@stupidchicken.com>
8008
d1a072bf
CY
8009 * nsterm.m (ns_draw_window_cursor): When hbar cursor is on
8010 over-sized glyph, draw it with the default glyph width.
8011
e2e325aa
CY
8012 * w32term.c (x_draw_bar_cursor): When hbar cursor is on over-sized
8013 glyph, draw it with the default glyph width.
8014
8015 * xterm.c (x_draw_bar_cursor): When hbar cursor is on over-sized
8016 glyph, draw it with the default glyph width.
8017
d8bdbe6f
CY
8018 * xdisp.c (try_scrolling): When computing the distance from the
8019 scroll margin to PT, try moving some distance past the window
8020 bottom before giving up.
8021
7bfac547
MR
80222008-10-27 Martin Rudalics <rudalics@gmx.at>
8023
8024 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p)
8025 (Fset_window_buffer): Explain in doc-string that a window can be
8026 "strongly" dedicated to its buffer.
8027
4ff029f6
DN
80282008-10-27 Dan Nicolaescu <dann@ics.uci.edu>
8029
8030 * emacs.c (daemon_name): New variable.
8031 (main): Deal with --daemon=SERVER_NAME.
8032 (Fdaemonp): Return a name if one was passed to --daemon.
8033
5790ef40
DN
80342008-10-26 Romain Francoise <romain@orebokech.com>
8035
f9bd0df9 8036 * emacs.c (daemon_pipe): New variable.
5790ef40
DN
8037 (main): Create a pipe before forking, make the parent exit only after
8038 the child has closed its end of the pipe. Move closing the
8039 descriptors ...
8040 (Fdaemon_initialized): ... here. New function.
8041
f5385255
SM
80422008-10-26 Stefan Monnier <monnier@iro.umontreal.ca>
8043
4d632321
SM
8044 * chartab.c (Foptimize_char_table): Make sure `ascii' doesn't point to
8045 the previous unoptimized table.
8046
f5385255
SM
8047 * window.c (Fset_window_buffer): Undo 2008-10-18 change to re-instate
8048 the distinction between non-nil and non-t value of `dedicated'.
8049
6c56a0f3
CY
80502008-10-25 Chong Yidong <cyd@stupidchicken.com>
8051
8052 * keyboard.c (read_char_minibuf_menu_prompt): Ensure that
f5385255 8053 read_char_minibuf_menu_text is large enough to hold the menu string.
6c56a0f3 8054
fec89261
MR
80552008-10-25 Martin Rudalics <rudalics@gmx.at>
8056
8057 * window.c (Fget_buffer_window, Fdelete_windows_on)
8058 (Freplace_buffer_in_windows): Make buffer argument optional and
8059 rename to buffer_or_name.
8060
34fcddd0
CY
80612008-10-24 Chong Yidong <cyd@stupidchicken.com>
8062
f5385255
SM
8063 * xdisp.c (handle_single_display_spec, handle_display_prop):
8064 Undo 2005-05-16 change.
34fcddd0
CY
8065 (handle_stop): Pop iterator if it's loaded with an empty string.
8066 (get_overlay_strings_1): Don't save iterator if it's loaded with
8067 an empty string (bug#1201).
8068
064766f2
KH
80692008-10-24 Kenichi Handa <handa@m17n.org>
8070
8071 * ftfont.c (ftfont_otf_features): Fix previous change.
8072 (ftfont_otf_capability): Check FeatureList.FeatureCount before
8073 calling ftfont_otf_features.
8074
f9bd0df9 80752008-10-24 Kenichi Handa <handa@m17n.org>
064766f2
KH
8076
8077 * font.c (font_match_p): Fix for the case that a vector of
8078 characters is in script-representative-chars.
8079
1dae9197
MA
80802008-10-24 Michael Albinus <michael.albinus@gmx.de>
8081
8082 * dbusbind.c (xd_in_read_queued_messages): New variable.
f5385255 8083 (XD_SIGNAL1, XD_SIGNAL2, XD_SIGNAL3): New macros. Throw Qdbus_error.
1dae9197
MA
8084 (xd_read_queued_messages): Catch Qdbus_error from the macros.
8085 (all): Replace xsignal1, xsignal2, xsignal3 by the respective
777013f2 8086 macro. (Bug#1186)
1dae9197 8087
f9bd0df9 80882008-10-23 Ali Bahrami <ali_gnu@emvision.com> (tiny change)
9b3362b8
DN
8089
8090 * s/sol2-10.h: New file.
8091
878a4584
JB
80922008-10-23 Juanma Barranquero <lekktu@gmail.com>
8093
8094 * xdisp.c (fill_glyph_string): Fix typo in source (though the
8095 poor beast has survived 9+ years and the jump from xterm.c!).
8096
cd265ca6
MR
80972008-10-23 Martin Rudalics <rudalics@gmx.at>
8098
8099 * buffer.c (Fget_buffer_create): Rename arg to buffer_or_name.
8100 Reword doc-string.
f5385255 8101 (Fbury_buffer): In doc-string say what happens to the buffer's window.
cd265ca6 8102
472a4dc9
JB
81032008-10-23 Juanma Barranquero <lekktu@gmail.com>
8104
8105 * character.c (syms_of_character) <script-representative-chars>:
8106 <unicode-category-table>: Doc fixes.
8107
159bd5a2
NF
81082008-10-23 Noah Friedman <friedman@splode.com>
8109
8110 * coding.c (make_conversion_work_buffer): Check that
8111 Vcode_conversion_reused_workbuf is a live buffer, otherwise call
8112 Fget_buffer_create.
8113
49f9c344
KH
81142008-10-23 Kenichi Handa <handa@m17n.org>
8115
8116 * font.c (font_add_log): Check the values of extra properties.
8117
12bb3111
MR
81182008-10-22 Martin Rudalics <rudalics@gmx.at>
8119
8120 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
8121 Reword doc-string.
8122 (Fset_window_parameter): Use NILP.
8123 (Fscroll_up, Fscroll_down, Fminibuffer_selected_window)
f5385255 8124 (Frecenter): Use "selected" instead of "current" window in doc-strings.
12bb3111 8125
bbeb4e99
JB
81262008-10-22 Juanma Barranquero <lekktu@gmail.com>
8127
8128 * xdisp.c (next_element_from_buffer): Remove bogus xassert condition.
8129
81302008-10-22 Adrian Robert <Adrian.B.Robert@gmail.com>
cb83c00b
AR
8131
8132 * nsfns.m (ns_appkit_version): New function.
8133 (x-server-version): Use it.
8134 (syms_of_nsfns): Define ns-version-string here, not nsterm.m.
8135 (x-server-vendor): Don't check_ns().
8136
8137 * nsterm.m (syms_of_nsterm): Drop ns-version-string.
8138
a9b555d3
JB
81392008-10-22 Juanma Barranquero <lekktu@gmail.com>
8140
8141 * w32fns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert.
8142 Copied from 2005-02-03 change to xfns.c by Kim F. Storm.
8143
4626499f
KH
81442008-10-22 Kenichi Handa <handa@m17n.org>
8145
e3681952
KH
8146 * syntax.c (scan_words): Call word_boundary_p instead of comparing
8147 scripts.
8148
4626499f
KH
8149 * category.c (word_boundary_p): Check scripts instead of charset.
8150 Handle nil value in word-separating-categories and
8151 word-combining-categories.
8152 (syms_of_category): Fix docstrings of word-separating-categories
8153 and word-combining-categories.
8154
1560f91a
EZ
81552008-10-21 Eli Zaretskii <eliz@gnu.org>
8156
8157 * coding.c (Fencode_coding_region, Fdecode_coding_region)
8158 (Fdecode_coding_string, Fencode_coding_string): Doc fix.
8159
f4668441
MR
81602008-10-21 Martin Rudalics <rudalics@gmx.at>
8161
8162 * buffer.c (Fget_buffer, Fbury_buffer, switch_to_buffer_1):
8163 Rename arg "buffer" to "buffer_or_name".
8164 (Fkill_buffer): Rename arg "buffer" to "buffer_or_name" and make
8165 it optional.
8166 (no_switch_window): Remove since the return value is not used.
a9b555d3 8167 (Fswitch_to_buffer): Rename arg "buffer" to "buffer_or_name".
f4668441
MR
8168 Consider window as dedicated when Fwindow_dedicated_p returns a
8169 non-nil value.
8170 * lisp.h: Remove prototype for no_switch_window.
8171
fd75ddb2
JD
81722008-10-21 Jan Djärv <jan.h.d@swipnet.se>
8173
8174 * emacs.c (main): Unconditionally set PER_LINUX32 and exec
2ae37cf0 8175 temacs when dumping if HAVE_PERSONALITY_LINUX32 is defined.
fd75ddb2 8176
07295713
KH
81772008-10-21 Kenichi Handa <handa@m17n.org>
8178
8179 * coding.c (detect_coding_charset): For iso-8859-* coding systems,
8180 check Vlatin_extra_code_table.
8181
712adc82
EZ
81822008-10-20 Eli Zaretskii <eliz@gnu.org>
8183
8184 * fileio.c (Fset_file_modes): Doc fix.
8185
f549eb0b
MA
81862008-10-19 Michael Albinus <michael.albinus@gmx.de>
8187
8188 * dbusbind.c (XD_OBJECT_TO_DBUS_TYPE): Handle simple type symbols
8189 in arrays.
8190
aac0c6e3
MR
81912008-10-19 Martin Rudalics <rudalics@gmx.at>
8192
8193 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
8194 Mention kill-buffer in doc-string.
8195 (Fset_window_buffer): Reinsert tem check removed in last commit.
8196 (Fenlarge_window, Fshrink_window): Have argument names and
8197 doc-string follow Elisp manual more closely.
8198
81992008-10-18 Eli Zaretskii <eliz@gnu.org>
8200
8201 * fileio.c (Fset_file_modes): Doc fix.
8202
82032008-10-18 Martin Rudalics <rudalics@gmx.at>
8204
8205 * window.c (Fwindow_width, Fset_window_start)
8206 (Fwindow_parameters, Fwindow_parameter, Fset_window_parameter)
f5385255
SM
8207 (Fdelete_windows_on, Freplace_buffer_in_windows):
8208 Make doc-strings follow code and Elisp manual more closely.
aac0c6e3
MR
8209 (Fwindow_dedicated_p): Make window argument optional.
8210 (Fset_window_dedicated_p): Rename argument "arg" to "flag".
8211 (Fset_window_buffer): Respect any non-nil dedicated value for
8212 window. Rename "buffer" argument to "buffer_or_name".
8213
82142008-10-18 Ulrich Mueller <ulm@gentoo.org>
8215
8216 * m/sh3.h: New file, machine description for SuperH.
8217
82182008-10-17 Martin Rudalics <rudalics@gmx.at>
8219
8220 * window.c (Fsplit_window): Rename arg horflag to horizontal.
8221
82222008-10-17 Kenichi Handa <handa@m17n.org>
8223
8224 * ftfont.c (ftfont_otf_features): Fix indexing
8225 gsub_gpos->FeatureList.Feature. Check the validity of indices.
8226
82272008-10-16 Magnus Henoch <mange@freemail.hu>
8228
8229 * dbusbind.c (Fdbus_call_method): Unbreak usage line.
8230 (Fdbus_call_method_asynchronously): Ditto.
8231 This change makes C-h f display the argument list.
8232
82332008-10-16 Chong Yidong <cyd@stupidchicken.com>
8234
8235 * fileio.c (Fexpand_file_name): Doc fix.
8236
8237 * xfaces.c (Finternal_set_lisp_face_attribute): Make null values
8238 of :foreground and :background equivalent to unspecified (20.x
8239 compatibility).
8240
82412008-10-15 Eli Zaretskii <eliz@gnu.org>
8242
8243 * buffer.c (syms_of_buffer): Doc fix.
8244
82452008-10-14 Kenichi Handa <handa@m17n.org>
8246
8247 * font.c (font_clear_prop): When clearing font width, clear the
8248 average width field too.
8249
82502008-10-12 Andreas Schwab <schwab@suse.de>
8251
8252 * ftfont.c (ftfont_shape_by_flt): Make static.
8253 * ftfont.h (ftfont_shape_by_flt): Don't declare.
8254
8255 * font.c: Don't include <m17n-flt.h>.
8256
82572008-10-10 Eli Zaretskii <eliz@gnu.org>
8258
8259 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Decrease to 10000.
8260
82612008-10-09 Eli Zaretskii <eliz@gnu.org>
8262
8263 * frame.c (make_terminal_frame) [MSDOS]: Remove unused #ifdef'ed
8264 away code.
8265
82662008-10-09 Chong Yidong <cyd@stupidchicken.com>
8267
8268 * dispnew.c (update_text_area): Avoid looping due to large glyph
8269 overhangs (bug#1070).
8270
82712008-10-09 Kenichi Handa <handa@m17n.org>
8272
8273 * fontset.c (face_for_char): If face->fontset is negative, just
8274 return ascii_face.
8275
f5385255
SM
8276 * font.c (font_delete_unmatched): Fix previous change.
8277 Don't reject an entity if DPI and AVGWIDTH of an entity are 0.
aac0c6e3
MR
8278
82792008-10-09 Martin Rudalics <rudalics@gmx.at>
8280
8281 * frame.c (Fraise_frame): On text-only terminals select frame in
8282 order to make it visible. (Bug#1061)
8283
82842008-10-08 Chong Yidong <cyd@stupidchicken.com>
8285
8286 * fontset.c (fontset_find_font): Check frame validity.
8287
82882008-10-07 Chong Yidong <cyd@stupidchicken.com>
8289
a9b555d3 8290 * gtkutil.c (xg_display_open): Reset default display if none exists.
aac0c6e3
MR
8291 (xg_display_close): Allow Emacs to close all displays (bug#985).
8292
82932008-10-06 Andreas Schwab <schwab@suse.de>
8294
f5385255 8295 * sysdep.c (sys_signal): Always set SA_RESTART when noninteractively.
aac0c6e3
MR
8296
82972008-10-06 Chong Yidong <cyd@stupidchicken.com>
8298
f5385255 8299 * emacs.c (Vbefore_init_time, Vafter_init_time): Move from startup.el.
aac0c6e3 8300
a9b555d3 8301 * lisp.h (Vbefore_init_time, Vafter_init_time): Declare.
aac0c6e3
MR
8302
8303 * gtkutil.c (x_wm_set_size_hint): Return immediately if called
8304 during initialization.
8305
83062008-10-04 Eli Zaretskii <eliz@gnu.org>
8307
8308 * xdisp.c (redisplay_internal): If frame switched, redisplay the
8309 whole thing on MSDOS frames as well as on a TTY.
8310
8311 * dispnew.c (update_frame): Flush termscript for MSDOS frames as
8312 well as for TTY.
8313 (Fopen_termscript): Allow opening a termscript on MSDOS frames as
8314 well as on a TTY.
8315
8316 * sysdep.c (init_sys_modes): Set FRAME_GARBAGED_P for MSDOS frames
8317 as well as for TTY.
8318
8319 * systime.h (EMACS_TIME_CMP): Cast EMACS_SECS values to `long'.
8320
8321 * dispnew.c (change_frame_size_1): Set FrameRows and FrameCols for
8322 MSDOS frames as well.
8323
83242008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
8325
8326 * image.c (x_clear_image_1): Under NS, call ns_free_indexed_color with
8327 correct arguments.
b71ac3dd 8328 * menu.c (find_and_return_menu_selection): Add cast.
aac0c6e3
MR
8329
83302008-10-03 Glenn Morris <rgm@gnu.org>
8331
8332 * emacs.c (USAGE1): Add --daemon.
8333
83342008-10-02 Eli Zaretskii <eliz@gnu.org>
8335
8336 * process.c (procfs_system_process_attributes): Multiply `pcpu' by
8337 100, so it's in percents as advertised.
8338
83392008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
8340
8341 * nsterm.h (ns_cursor_types, ns_output.desired_cursor_color)
8342 (ns_output.current_cursor, ns_output.desired_cursor)
8343 (ns_output.last_inactive, FRAME_CURSOR, FRAME_NEW_CURSOR)
8344 (FRAME_NEW_CURSOR_COLOR): Remove.
8345
8346 * nsfns.m (ns_set_cursor_color): Use FRAME_CURSOR_COLOR.
a9b555d3 8347 (ns_lisp_to_cursor_type, ns_cursor_type_to_lisp): Use core Emacs
aac0c6e3
MR
8348 enumeration (HOLLOW_BOX_CURSOR, etc.).
8349
8350 * nsterm.m (ns_frame_rehighlight): Remove commented code.
8351 (draw_window_cursor): Simplify code.
f5385255
SM
8352 (EmacsView-windowDidBecomeKey:,-windowDidResignKey:):
8353 Don't change cursor type. In latter, call rehighlight instead of doing
aac0c6e3 8354 updates manually.
a9b555d3
JB
8355 (EmacsPrefsController-setPanelFromValues,-setValuesFromPanel):
8356 Use core Emacs cursor types.
aac0c6e3 8357
b8ff72fa 8358 * xdisp.c (draw_glyphs): Don't call notice_overwritten_cursor under NS.
aac0c6e3
MR
8359
83602008-10-02 Martin Rudalics <rudalics@gmx.at>
8361
8362 * process.c (Faccept_process_output): Fix doc-string.
8363
83642008-10-02 Dan Nicolaescu <dann@ics.uci.edu>
8365
8366 * gmalloc.c (__sbrk): Also define for uClibc.
8367
8368 * s/gnu-linux.h (GNU_LIBRARY_PENDING_OUTPUT_COUNT): Add definition
8369 for uClibc.
8370
83712008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
8372
8373 * nsfont.m (nsfont_spec_to_traits): Use UnXX masks only for non-normal
8374 styles.
8375 (nsfont_open): Reenable the cache.
8376
83772008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
8378
8379 * font.c (font_matching_entity): Reflect ATTRS in font selection.
8380 (font_find_for_lface) [HAVE_NS]: Don't ignore case.
8381
83822008-09-30 Stefan Monnier <monnier@iro.umontreal.ca>
8383
8384 * dispnew.c (Fsend_string_to_terminal): Don't try to send a string to
8385 a suspended terminal.
8386
83872008-09-30 Michael Albinus <michael.albinus@gmx.de>
8388
8389 * dbusbind.c (xd_signature): Use strcat instead of sprintf.
8390
83912008-09-30 Eli Zaretskii <eliz@gnu.org>
8392
8393 * Makefile.in (MSDOS_SUPPORT): Remove ccl.elc and codepage.elc.
8394
83952008-09-30 Chong Yidong <cyd@stupidchicken.com>
8396
8397 * xdisp.c (move_it_to): Don't advance the iterator if the last tab
8398 in a continued line coincides with a line beginning.
8399
84002008-09-29 Adrian Robert <Adrian.B.Robert@gmail.com>
8401
8402 * nsfont.m (nsfont_trait_distance): Fix bug.
8403 (nsfont_list): Return a list rather than a vector (syncs with Handa
8404 changes of 2008-05-14).
8405 (nsfont_open): Improve logging.
8406
84072008-09-29 Andreas Schwab <schwab@suse.de>
8408
8409 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
8410
84112008-09-28 Martin Rudalics <rudalics@gmx.at>
8412
8413 * character.c (Fchar_resolve_modifiers): Rewrite Elisp function
8414 name as char-resolve-modifiers.
8415 Reported by: Markus Triska <markus.triska@gmx.at>
8416
84172008-09-28 Dan Nicolaescu <dann@ics.uci.edu>
8418
8419 * dispnew.c (init_display): Return earlier when running as a daemon.
8420
84212008-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
8422
8423 * nsfont.m (nsfont_draw): Fix up composition rendering (cmp_from, ...).
8424
84252008-09-27 Eli Zaretskii <eliz@gnu.org>
8426
8427 * composite.c (Fcomposition_get_gstring)
8428 (Fcompose_region_internal, Fcompose_string_internal)
8429 (Ffind_composition_internal): Doc fix.
8430 (syms_of_composite) <compose-chars-after-function>: Doc fix.
8431 (syms_of_composite) <auto-composition-function>: Doc fix.
8432 (syms_of_composite) <composition-function-table>: Doc fix.
8433
84342008-09-25 Chong Yidong <cyd@stupidchicken.com>
8435
8436 * search.c (wordify): New argument for lax word-ends.
8437 (Fword_search_forward_lax, Fword_search_backward_lax): New funs.
8438
84392008-09-24 Dan Nicolaescu <dann@ics.uci.edu>
8440
8441 * lisp.h (is_daemon): Declare.
8442 * dispnew.c (init_display): Do not try to initialize the terminal
8443 when running as a daemon.
8444
84452008-09-22 Chong Yidong <cyd@stupidchicken.com>
8446
8447 * nsfns.m (compute_tip_xy): Use x_display_pixel_width and
8448 x_display_pixel_height.
8449
84502008-09-22 Martin Rudalics <rudalics@gmx.at>
8451
8452 * undo.c (record_point): Don't call Fundo_boundary for first
8453 change. (Bug#731)
8454
84552008-09-22 Juanma Barranquero <lekktu@gmail.com>
8456
8457 * emacs.c (Fdaemonp): Doc fix.
8458
84592008-09-22 Dan Nicolaescu <dann@ics.uci.edu>
8460
8461 * emacs.c (main): Place #ifdef in the proper place.
8462
84632008-09-21 Dan Nicolaescu <dann@ics.uci.edu>
8464
8465 * emacs.c (standard_args): Add --daemon.
8466 (main): Disconnect from the terminal when --daemon is passed.
8467 (is_daemon): New variable.
8468 (Fdaemonp): New function.
8469 (syms_of_emacs): Defsubr it.
8470
84712008-09-20 Chong Yidong <cyd@stupidchicken.com>
8472
8473 * xdisp.c (get_next_display_element): Handle string display
8474 correctly when checking for the end of a box run.
8475
84762008-09-20 Glenn Morris <rgm@gnu.org>
8477
8478 * fileio.c (Qdelete_by_moving_to_trash): New Lisp_Object.
8479 (syms_of_fileio): Add Qdelete_by_moving_to_trash.
8480 (Frename_file): Avoid copying to trash if a rename involves
8481 a delete. (Bug#964).
8482
84832008-09-20 Eli Zaretskii <eliz@gnu.org>
8484
8485 * keyboard.c (Fset_quit_char, Fset_input_meta_mode)
8486 (Fset_output_flow_control, Fcurrent_input_mode): Support MSDOS
8487 frames as well as termcap frames.
8488 (handle_interrupt): Remove "#ifndef MSDOS" around the call to
8489 get_named_tty.
8490
84912008-09-19 Eli Zaretskii <eliz@gnu.org>
8492
8493 * process.c (procfs_system_process_attributes): Fix cmdline in
8494 case /proc/PID/cmdline is empty.
8495
8496 * xterm.c (x_wm_set_size_hint): Use x_display_pixel_width and
8497 x_display_pixel_height.
8498
84992008-09-19 Juanma Barranquero <lekktu@gmail.com>
8500
8501 * frame.c (x_fullscreen_adjust): Declare var as Display_Info.
8502
8503 * w32fns.c (Fx_display_pixel_width, Fx_display_pixel_height)
8504 (compute_tip_xy): Use x_display_pixel_width, x_display_pixel_height.
8505
85062008-09-19 Dan Nicolaescu <dann@ics.uci.edu>
8507
8508 * dispextern.h (struct it): Move line_wrap away from the middle of
8509 bitfields. Move voffset in struct iterator_stack_entry after the
8510 bitfields. Move tab_width near after another short.
8511
85122008-09-18 Dan Nicolaescu <dann@ics.uci.edu>
8513
8514 * frame.h (struct frame): Move alpha from the middle of bitfields.
8515
8516 * window.h (struct window): Move frozen_window_start_p after the
8517 rest of the bitfields to reduce padding.
8518
85192008-09-18 Chong Yidong <cyd@stupidchicken.com>
8520
8521 * xterm.h (x_display_info): Remove `height' and `width' members.
8522
8523 * nsterm.h (ns_display_info): Remove `height' and `width' members.
8524
8525 * w32term.h (w32_display_info): Remove `height', `width',
8526 `height_in', and `width_in' members.
8527
b8ff72fa
SM
8528 * xterm.c (x_display_pixel_height, x_display_pixel_width):
8529 New functions.
aac0c6e3
MR
8530 (x_calc_absolute_position): Use them.
8531 (x_term_init): Omit removed `height' and `width' members.
8532
b8ff72fa
SM
8533 * w32term.c (x_display_pixel_height, x_display_pixel_width):
8534 New functions.
aac0c6e3
MR
8535 (w32_read_socket, x_calc_absolute_position): Use them.
8536 (w32_initialize_display_info, w32_term_init): Omit removed members
8537 of w32_display_info.
8538
b8ff72fa
SM
8539 * nsterm.m (x_display_pixel_height, x_display_pixel_width):
8540 New functions.
8541 (ns_initialize_display_info): Omit removed members of ns_display_info.
aac0c6e3 8542
b8ff72fa
SM
8543 * xterm.c (x_display_pixel_height, x_display_pixel_width):
8544 New functions.
aac0c6e3
MR
8545 (x_calc_absolute_position): Use them.
8546 (x_term_init): Omit removed `height' and `width' members.
8547
8548 * xfns.c (Fx_display_pixel_width, Fx_display_pixel_height)
b8ff72fa
SM
8549 (compute_tip_xy):
8550 * frame.c (x_fullscreen_adjust):
aac0c6e3
MR
8551 * xmenu.c (menu_position_func): Use x_display_pixel_height and
8552 x_display_pixel_width.
8553
85542008-09-18 Kenichi Handa <handa@m17n.org>
8555
8556 * composite.c (fill_gstring_header): Don't check FROM and TO here.
8557 (composition_compute_stop_pos): Fix handling of static composition.
8558 (Fcomposition_get_gstring): Check FROM and TO at first.
8559
85602008-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
8561
46e722a9 8562 * composite.c (Fcomposition_get_gstring): Yet another int/Lisp_Object
aac0c6e3
MR
8563 mixup (YAILOM).
8564
85652008-09-17 Chong Yidong <cyd@stupidchicken.com>
8566
8567 * indent.c (Fvertical_motion): Use position reported by iterator
8568 instead of PT for determining screen motion (bug#943).
8569
85702008-09-17 Romain Francoise <romain@orebokech.com>
8571
8572 * composite.c (composition_adjust_point): Fix int/EMACS_INT mixup.
8573
85742008-09-17 Kenichi Handa <handa@m17n.org>
8575
8576 * ftfont.c (ftfont_shape_by_flt): Downcase family name.
8577
8578 * composite.c (Fcomposition_get_gstring): Make bigger gstring_work
8579 if necessary.
8580
85812008-09-16 Kenichi Handa <handa@m17n.org>
8582
8583 * coding.c (make_conversion_work_buffer): Avoid calling
8584 Fget_buffer_create if it is not necessary.
8585
85862008-09-15 Martin Rudalics <rudalics@gmx.at>
8587
8588 * window.c (Fselect_window): Don't update window_select_count and
8589 use_time when norecord is not nil.
8590
85912008-09-14 Kenichi Handa <handa@m17n.org>
8592
8593 * fileio.c (Finsert_file_contents): Delete incorrect decrement of
8594 specpdl_ptr.
8595
85962008-09-12 Kenichi Handa <handa@m17n.org>
8597
8598 * indent.c (scan_for_column): Don't handle automatic composition
8599 if the current buffer is not associated with a window.
8600
8601 * composite.c (composition_reseat_it): If the current buffer is
8602 not associated with a window, ignore the automatic composition.
8603 (find_automatic_composition): Likewise.
8604
86052008-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
8606
8607 * term.c (close_gpm): New fun extracted from Fgpm_mouse_stop.
8608 (Fgpm_mouse_stop): Use it.
8609 * termhooks.h (close_gpm): Declare.
8610 * keyboard.c (tty_read_avail_input): Forcefully close the gpm
8611 connection if Gpm_GetEvent fails.
8612
8613 * window.c (set_window_buffer): Always preserve current-buffer.
8614
86152008-09-12 Glenn Morris <rgm@gnu.org>
8616
8617 * charset.c (init_charset): Warn if etc/charsets not found. (Bug#909)
8618
86192008-09-11 Glenn Morris <rgm@gnu.org>
8620
8621 * charset.c (charset-map-path): Doc fix.
8622
86232008-09-10 Kenichi Handa <handa@m17n.org>
8624
8625 * xdisp.c (handle_composition_prop): Set it->cmp_it.ch to -1.
8626
8627 * font.c (Ffont_shape_gstring): Make glyphs of non-nil adjustment
8628 compose a grapheme cluster with the preceding base glyph.
8629
8630 * composite.c (composition_compute_stop_pos): Fix previous change.
8631 Reset cmp_it->id to -1 at first.
8632
86332008-09-10 Glenn Morris <rgm@gnu.org>
8634
8635 * Makefile.in (character.o, chartab.o): Fix config.h typo.
8636
86372008-09-09 Chong Yidong <cyd@stupidchicken.com>
8638
8639 * keyboard.c (read_key_sequence): Reapply translation maps when
8640 switching keyboards.
8641
86422008-09-09 Kenichi Handa <handa@m17n.org>
8643
8644 * ftfont.c (ftfont_shape_by_flt): Use "combining" FLT for ASCII
8645 characters.
8646
8647 * composite.c (FORWARD_CHAR): Fix calculation
8648 of (POSITION).pos_byte.
8649 (composition_compute_stop_pos): Limit the search of composition to
8650 at most 500 characters ahead. If we reach the limit or find a
8651 newline, set cmp_it->ch to -2 and return 0.
8652 (composition_reseat_it): Handle the case that cmp_it->ch is -2.
8653
86542008-09-08 Kenichi Handa <handa@m17n.org>
8655
8656 * indent.c (Fvertical_motion): Be sure to set
8657 it_overshoot_expected if it.cmp_it.id is non-negative.
8658
86592008-09-07 Andreas Schwab <schwab@suse.de>
8660
8661 * callproc.c (Fcall_process): Don't hold references to string data
8662 across garbage collection. Move initialisation of new_argv down
8663 to avoid compiler bug.
8664
86652008-09-07 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
8666
8667 * process.c (Fsystem_process_attributes): Doc fix.
8668
86692008-09-07 Chong Yidong <cyd@stupidchicken.com>
8670
8671 * callproc.c (Fcall_process): Canonicalize current directory name.
8672
8673 * xdisp.c (move_it_to): When moving by vpos, ensure that the
8674 iterator advances to the next line if the current line ends in a
8675 continued tab.
8676
86772008-09-07 Teodor Zlatanov <tzz@lifelogs.com>
8678
8679 * nsfont.m (nsfont_draw): Fix the references to missing gidx data
8680 member to point to cmp_from.
8681
8682 * xdisp.c: Doc fix for references to gidx data member.
8683
86842008-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
8685
8686 * buffer.c (Fbuffer_swap_text): Reset window->point markers.
8687
86882008-09-07 Kenichi Handa <handa@m17n.org>
8689
8690 * composite.c (FORWARD_CHAR): Check STOP after
8691 incrementing (POSITION).pos.
8692
86932008-09-06 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
8694
8695 * process.c (Fsystem_process_attributes): Doc fix.
8696
86972008-09-06 Chong Yidong <cyd@stupidchicken.com>
8698
8699 * keyboard.c (Ftop_level): Doc fix.
8700
87012008-09-06 Eli Zaretskii <eliz@gnu.org>
8702
8703 * xmenu.c (xmenu_show) [!HAVE_X_WINDOWS]: If frame has a
8704 minibuffer, don't let lower part of menu invade the echo area.
8705
8706 * msdos.c (IT_menu_display): Use STRING_CHAR_ADVANCE instead of a
8707 "char *q" to access menu text and advance through it. Revert the
8708 change that displayed ">" instead of ASCII character 0x10.
8709
87102008-09-05 Eli Zaretskii <eliz@gnu.org>
8711
8712 * menu.c (single_menu_item) [!HAVE_BOXES]: Enable emulation of
8713 toggle boxes and radio buttons on MS-DOS as well.
8714
87152008-09-05 Kenichi Handa <handa@m17n.org>
8716
8717 * composite.c (autocmp_chars): Check lookback count.
8718 (composition_compute_stop_pos): Set cmp_it->lookback.
8719 (composition_reseat_it): Check lookback count.
8720 (struct position_record): New struct.
8721 (FORWARD_CHAR, BACKWARD_CHAR, CHAR_COMPOSABLE_P): New macros.
8722 (find_automatic_composition): New function.
8723 (composition_adjust_point): Use find_automatic_composition.
8724
8725 * dispextern.h (struct composition_it): New member lookback.
8726
87272008-09-02 Chong Yidong <cyd@stupidchicken.com>
8728
8729 * indent.c (Fvertical_motion): Don't call move_it_by_lines again
8730 if moving by a single line.
8731
87322008-09-02 Andreas Schwab <schwab@suse.de>
8733
8734 * xterm.c (x_delete_display): Fix merge error.
8735
8736 * fileio.c (Fexpand_file_name): Remove unused variables.
8737
87382008-09-02 Eli Zaretskii <eliz@gnu.org>
8739
8740 * fileio.c (Fexpand_file_name): Copy argument `name' into local
8741 storage on all platforms, not just on DOS_NT.
8742
87432008-09-02 Jason Rumney <jasonr@gnu.org>
8744
b8ff72fa
SM
8745 * w32menu.c (Fx_popup_menu, Fx_popup_dialog, w32_menu_show):
8746 Ensure mouse is not grabbed after menu is finished.
aac0c6e3
MR
8747
87482008-09-01 Chong Yidong <cyd@stupidchicken.com>
8749
8750 * xfaces.c (Finternal_set_alternative_font_family_alist)
8751 (Finternal_set_alternative_font_registry_alist): Properly copy
8752 entire alist structure.
8753
87542008-09-01 Kenichi Handa <handa@m17n.org>
8755
d66c0241 8756 * ftfont.c (ftfont_spec_pattern): Don't create a charset if the
aac0c6e3 8757 representative chars of the script is a vector.
d66c0241
JB
8758 (ftfont_list): Handle the case where the representative chars of
8759 the script is a vector.
aac0c6e3
MR
8760
8761 * character.c (syms_of_character): Docstring of
8762 script-representative-chars fixed.
8763
87642008-08-31 Eli Zaretskii <eliz@gnu.org>
8765
8766 * msdos.c (BUILD_CHAR_GLYPH): New macro.
8767 (IT_menu_display): Use it instead of SET_CHAR_GLYPH to construct
8768 the menu. Allocate larger buffer for `text', to account for
8769 possible ^C characters.
8770
87712008-08-31 Martin Rudalics <rudalics@gmx.at>
8772
8773 * xdisp.c (prepare_menu_bars): Don't call
8774 Vwindow_size_change_functions with arg Qt.
8775
87762008-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
8777
8778 * font.h (font_range):
8779 * fileio.c (report_file_error):
46e722a9
SM
8780 * composite.c (composition_update_it): Yet another int/Lisp_Object
8781 mixup (YAILOM).
aac0c6e3
MR
8782
87832008-08-30 Glenn Morris <rgm@gnu.org>
8784
8785 * data.c (Fmake_variable_frame_local): Doc fix.
8786
8787 * frame.c (Fmodify_frame_parameters): Doc fix.
8788
87892008-08-30 Eli Zaretskii <eliz@gnu.org>
8790
8791 * w32.c (init_user_info): Allocate buf[] with xmalloc using the size
8792 needed by GetTokenInformation.
8793 (w32_system_process_attributes): Check return values of all system
8794 APIs.
8795
8796 * msdos.c (IT_display_cursor): Write "CURSOR ON/OFF" to termscript
8797 only when the state changes.
8798 (IT_update_begin, IT_update_end): Add termscript trace.
8799
8800 * w16select.c (Fw16_set_clipboard_data): Don't encode text if
8801 clipboard is unavailable. Set dst to NULL if it doesn't point to
8802 malloc'ed data.
8803 (Fw16_get_clipboard_data): Initialize htext to NULL, to avoid
8804 passing random values to xfree.
8805
8806 * dispnew.c (init_display): Set `tty's association in frame's
b8ff72fa 8807 parameters alist to the name of the terminal device, if that is known.
aac0c6e3
MR
8808
88092008-08-29 Jason Rumney <jasonr@gnu.org>
8810
8811 * w32uniscribe.c (uniscribe_check_otf): Don't fallback on DFLT script.
8812
88132008-08-29 Eli Zaretskii <eliz@gnu.org>
8814
8815 * composite.c (fill_gstring_body): Avoid compiler warnings.
8816
8817 * font.c (font_fill_lglyph_metrics): Use EMACS_INT in
8818 LGLYPH_SET_CODE to avoid compiler warnings.
8819
2ae37cf0 8820 * makefile.w32-in ($(BLD)/w32uniscribe.$(O)): Depend on composite.h.
aac0c6e3
MR
8821
8822 * composite.h (LGLYPH_SET_CODE): Cast `val' to EMACS_INT.
8823
8824 * w32uniscribe.c (uniscribe_shape): Shut up compiler warning in
8825 LGLYPH_SET_CODE.
8826
88272008-08-29 Kenichi Handa <handa@m17n.org>
8828
8829 * fileio.c (report_file_error): Don't downcase the first character
8830 of errstring if it is still unibyte.
8831
88322008-08-29 Kenichi Handa <handa@m17n.org>
8833
8834 These changes are to re-implement the automatic composition so
8835 that it doesn't use text properties.
8836
8837 * Makefile.in (ftfont.o): Depend on composite.h.
8838 (composite.o): Depend dispextern.h, font.h, frame, and window.h.
8839
8840 * character.h (Vunicode_category_table): Extern it.
8841
8842 * character.c (Vunicode_category_table): New variable.
8843 (syms_of_character): DEFVAR_LISP Vunicode_category_table.
8844
8845 * chartab.c (optimize_sub_char_table): Perform more greedy
8846 optimization.
8847
b8ff72fa
SM
8848 * composite.h (enum composition_method):
8849 Delete COMPOSITION_WITH_GLYPH_STRING.
aac0c6e3
MR
8850 (COMPOSITION_METHOD): Don't check COMPOSITION_WITH_GLYPH_STRING.
8851 (Vcomposition_function_table): Extern it.
8852 (LGSTRING_XXX, LGLYPH_XXX): Macros moved from font.h.
8853 (composition_gstring_put_cache, composition_gstring_from_id)
8854 (composition_gstring_p, composition_gstring_width)
8855 (composition_compute_stop_pos, composition_reseat_it)
8856 (composition_update_it, composition_adjust_point): Extern them.
8857 (Fcomposition_get_gstring): EXFUN it.
8858
d66c0241 8859 * composite.c: Include window.h, frame.h, dispextern.h, font.h.
aac0c6e3
MR
8860 (Vcomposition_function_table)
8861 (get_composition_id): Don't handle COMPOSITION_WITH_GLYPH_STRING.
b8ff72fa
SM
8862 (gstring_hash_table, gstring_work, gstring_work_headers):
8863 New variables.
aac0c6e3
MR
8864 (gstring_lookup_cache, composition_gstring_put_cache)
8865 (composition_gstring_from_id, composition_gstring_p)
8866 (composition_gstring_width, fill_gstring_header)
8867 (fill_gstring_body, autocmp_chars, composition_compute_stop_pos)
8868 (composition_reseat_it, composition_update_it)
b8ff72fa 8869 (composition_adjust_point, Fcomposition_get_gstring): New functions.
aac0c6e3
MR
8870 (syms_of_composite): Initialize gstring_hash_table, gstrint_work,
8871 and gstring_work_headers. DEFVAR_LISP composition-function-table.
a73f9c9d 8872 Defsubr composition_get_gstring.
aac0c6e3
MR
8873
8874 * dispextern.h (struct glyph): New union u.cmp. Delete the member
8875 cmp_id.
8876 (struct glyph_string): Delete the member gidx. New members
8877 cmp_id, cmp_from, and cmp_to.
8878 (enum it_method): Delete GET_FROM_COMPOSITION.
8879 (struct composition_it): New struct.
8880 (struct it): New member cmp_it, and iterator_stack_entry.cmp_it.
8881 Delete c, len, cmp_id, cmp_len in u.comp.
8882
8883 * font.h (enum lgstring_indices): Delete it.
b8ff72fa 8884 (LGSTRING_XXX, LGLYPH_XXX): Move these macros to composite.h.
aac0c6e3 8885 (enum lglyph_indices): Likewise.
b8ff72fa 8886 (font_range): Adjust extern.
aac0c6e3
MR
8887 (font_fill_lglyph_metrics): Extern it.
8888
8889 * font.c (QCf): New variable.
8890 (check_gstring): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
8891 (font_prepare_composition): Delete this function.
8892 (font_range): Type and arguments changed.
8893 (Ffont_make_gstring, Ffont_fill_gstring): Delete them.
8894 (font_fill_lglyph_metrics): New function.
b8ff72fa 8895 (Ffont_shape_text): Rename to Ffont_shape_gstring and change arguments.
aac0c6e3 8896 (syms_of_font): DEFSYM QCf. Delete defsubr for
b8ff72fa
SM
8897 Sfont_make_gstring, Sfont_fill_gstring, Sfont_shape_text.
8898 Defsubr Sfont_shape_gstring.
aac0c6e3
MR
8899
8900 * fontset.h (font_for_char): Extern it.
8901
8902 * fontset.c (font_for_char): New function.
8903
8904 * ftfont.c: Include composite.h.
8905 (ftfont_resolve_generic_family): Add langset "en" to pattern.
b8ff72fa 8906 (ftfont_shape_by_flt): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
aac0c6e3
MR
8907
8908 * indent.c: Include composite.h and dispextern.h.
8909 (check_composition): Delete this function.
8910 (scan_for_column): Handle composition by
8911 composition_compute_stop_pos, composition_reseat_it, and
8912 composition_update_it.
8913 (compute_motion): Likewise.
8914 (Fvertical_motion): Fix checking of composition.
8915
8916 * keyboard.c (adjust_point_for_property): Check composition by
8917 composition_adjust_point.
8918
b8ff72fa 8919 * nsterm.m (ns_draw_glyph_string): Adjust for the change of
aac0c6e3
MR
8920 struct glyph_string.
8921
b8ff72fa
SM
8922 * term.c (encode_terminal_code): Adjust for the change of struct glyph.
8923 (append_composite_glyph): Adjust for the change of struct it and
aac0c6e3
MR
8924 struct glyph.
8925 (produce_composite_glyph): Likewise.
8926
b8ff72fa
SM
8927 * w32term.c (x_draw_composite_glyph_string_foreground):
8928 Adjust for the change of struct glyph_string.
aac0c6e3
MR
8929 (x_draw_glyph_string): Likewise.
8930
8931 * w32uniscribe.c (struct uniscribe_font_info): Include composite.h.
8932 (uniscribe_shape): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
8933
8934 * xdisp.c: Include font.h.
8935 (it_props): Delete the entry for Qauto_composed.
8936 (init_iterator): Initialize it->cmp_it.id to -1.
8937 (compute_stop_pos): Call composition_compute_stop_pos.
b8ff72fa 8938 (face_before_or_after_it_pos): Adjust for the change of struct it.
aac0c6e3
MR
8939 (handle_auto_composed_prop): Delete it.
8940 (handle_composition_prop): Handle only static composition.
8941 (next_overlay_string): Remove it->method == GET_FROM_COMPOSITION
8942 from xassert. Initialize it->cmp_it.stop_pos.
b8ff72fa 8943 (push_it): Adjust for the change of struct it.
aac0c6e3
MR
8944 (pop_it): Likewise.
8945 (get_next_element): Delete next_element_from_composition.
8946 (CHAR_COMPOSED_P): New macro.
8947 (get_next_display_element): For automatic composition, get a face
8948 from the font in the glyph-string.
8949 (set_iterator_to_next): For GET_FROM_BUFFER and GET_FROM_STRING,
b8ff72fa 8950 check composition by it->cmp_it.id. Delete GET_FROM_COMPOSITION case.
aac0c6e3
MR
8951 (next_element_from_string): Check if the character at the current
8952 position is composed by CHAR_COMPOSED_P.
8953 (next_element_from_buffer): Likewise.
d66c0241
JB
8954 (next_element_from_composition): Adjust for the change of struct it.
8955 Update it->cmp_it.
b8ff72fa
SM
8956 (dump_glyph): Adjust for the change of struct glyph.
8957 (fill_composite_glyph_string): Adjust for the change of struct
aac0c6e3
MR
8958 it and struct glyph. Don't handle automatic composition here.
8959 (fill_gstring_glyph_string): New function.
8960 (x_get_glyph_overhangs): Handle automatic composition.
b8ff72fa 8961 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the change of struct glyph.
aac0c6e3
MR
8962 (BUILD_GSTRING_GLYPH_STRING): New macro.
8963 (BUILD_GLYPH_STRINGS): Call BUILD_GSTRING_GLYPH_STRING for
8964 automatic composition.
b8ff72fa 8965 (append_composite_glyph): Adjust for the change of struct it and
aac0c6e3 8966 struct glyph.
b8ff72fa 8967 (x_produce_glyphs): Adjust for the change of struct it.
aac0c6e3 8968
b8ff72fa 8969 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
aac0c6e3
MR
8970 the change of struct glyph_string.
8971 (x_draw_glyph_string): Likewise.
8972
89732008-08-29 Glenn Morris <rgm@gnu.org>
8974
8975 * buffer.c (word-wrap): Doc fix.
8976 * xdisp.c (truncate-partial-width-windows): Doc fix.
8977 Increase default to 50.
8978
89792008-08-29 Chong Yidong <cyd@stupidchicken.com>
8980
8981 * xdisp.c (update_tool_bar_unwind): New function.
8982 (update_tool_bar): Temporarily set selected frame before building
8983 tool-bar items.
8984
89852008-08-28 Michael Albinus <michael.albinus@gmx.de>
8986
8987 * dbusbind.c (XD_ERROR, XD_DEBUG_MESSAGE): Use strncpy and
8988 snprintf, respectively.
8989 (xd_append_arg): Convert strings with Fstring_make_unibyte.
8990
89912008-08-28 Chong Yidong <cyd@stupidchicken.com>
8992
8993 * Makefile.in: Revert (undocumented) 2008-08-20 change adding
8994 LDFLAGS to GNUstep CC invocation.
8995
89962008-08-27 Chong Yidong <cyd@stupidchicken.com>
8997
8998 * indent.c (Fvertical_motion): Revert last change. Handle the
8999 general case where we are moving forward, and PT spans multiple
9000 screen lines.
9001
9002 * eval.c (find_handler_clause): Temporarily increase
9003 max-lisp-eval-depth while printing the backtrace buffer, to
9004 guarantee that help-mode code can run.
9005
90062008-08-27 Eli Zaretskii <eliz@gnu.org>
9007
9008 * msdos.c (Fmsdos_remember_default_colors): Don't reverse frame
9009 colors under -rv.
9010 (IT_set_frame_parameters): Don't swap foreground and background
9011 colors if `(reverse . t)' is present in the frame properties.
9012 (internal_terminal_init): Call init_frame_faces only for the
9013 initial frame.
9014
90152008-08-27 Andreas Schwab <schwab@suse.de>
9016
9017 * dired.c (Ffile_attributes): Avoid compiler warning in bitshift.
9018
90192008-08-27 Andreas Schwab <schwab@suse.de>
9020
9021 * search.c (search_buffer): Set char_base to zero only at the end.
9022
90232008-08-27 Kenichi Handa <handa@m17n.org>
9024
b8ff72fa 9025 * fileio.c (report_file_error): Fix handling of multibyte error string.
aac0c6e3
MR
9026
90272008-08-27 Andreas Seltenreich <seltenreich@gmx.de>
9028
9029 * xterm.c (x_term_init): Temporarily hide the partially
9030 initialized terminal while calling vendor-specific-keysyms.
9031
90322008-08-26 Eli Zaretskii <eliz@gnu.org>
9033
9034 * msdos.c (internal_terminal_init): Most initializations done only
9035 once, especially initial_screen_colors[] and termscript open.
9036
90372008-08-26 Chong Yidong <cyd@stupidchicken.com>
9038
9039 * eval.c (Fcondition_case): Doc fix.
9040
9041 * widgetprv.h (EmacsFramePart): Change font member to the new font
9042 struct.
9043
9044 * widget.c: Include character.h and font.h for XSETFONT.
9045 (setup_frame_gcs): Compute X font id from font struct, just once.
9046
90472008-08-26 Eli Zaretskii <eliz@gnu.org>
9048
9049 * term.c (get_named_tty): Fix last change.
9050
90512008-08-26 Chong Yidong <cyd@stupidchicken.com>
9052
9053 * indent.c (Fvertical_motion): If moving forward starting from a
b8ff72fa 9054 multi-line string, move the iterator to the last line of that string.
aac0c6e3
MR
9055
90562008-08-25 Eli Zaretskii <eliz@gnu.org>
9057
9058 * frame.c (do_switch_frame): Mark previously displayed frame as
9059 obscured for FRAME_MSDOS_P frames as well.
9060
90612008-08-24 Eli Zaretskii <eliz@gnu.org>
9062
9063 * frame.c (make_terminal_frame): Initialize f->terminal,
9064 f->terminal->reference_count, and scroll bars on MS-DOS as well.
9065 Set the top frame to newly created frame.
9066 (Fmake_terminal_frame): Reuse the_only_display_info.
9067
9068 * vm-limit.c (get_lim_data) [MSDOS]: Use alternative methods of
9069 estimating available memory.
9070
b97439ce 90712008-08-23 David Reitter <david.reitter@gmail.com>
aac0c6e3
MR
9072
9073 * nsterm.m (ns_draw_window_cursor): Don't call
9074 NSDisableScreenUpdates and NSEnableScreenUpdates on
9075 non-NS_IMPL_COCOA systems.
9076
90772008-08-23 Andreas Schwab <schwab@suse.de>
9078
9079 * process.c (procfs_system_process_attributes): Fix use of
9080 uninitialized variables.
9081
90822008-08-23 Eli Zaretskii <eliz@gnu.org>
9083
9084 * emacs.c (main) [MSDOS]: Call syms_of_xmenu.
9085
9086 * dispnew.c (init_display): Remove MS-DOS specific conditions for
9087 calling tty-set-up-initial-frame-faces.
9088
b8ff72fa
SM
9089 * xmenu.c (Fx_popup_dialog, Fx_popup_menu, xmenu_show):
9090 Allow MSDOS frames along with X frames.
aac0c6e3
MR
9091
9092 * termhooks.h (TERMINAL_ACTIVE_P): Handle output_msdos_raw in
9093 addition to output_termcap.
9094
9095 * xdisp.c (redisplay_internal) [MSDOS]: Don't call set_tty_color_mode.
9096
9097 * termchar.h (FRAME_TTY): Support output_msdos_raw.
9098 (struct tty_display_info) [MSDOS]: Add fields related to mouse
9099 highlight.
9100
9101 * process.c [!subprocesses]: Define QCname.
9102 (syms_of_process): Intern and staticpro it.
9103
9104 * w16select.c (Fw16_set_clipboard_data, Fw16_get_clipboard_data):
b8ff72fa
SM
9105 Adjust for changes in encoding/decoding routines.
9106 Use encode_coding_object and decode_coding_object instead of
aac0c6e3
MR
9107 encode_coding and decode_coding.
9108
b8ff72fa 9109 * sysdep.c (init_sys_modes): Call dos_ttraw with tty_out as argument.
aac0c6e3
MR
9110
9111 * dosfns.c: Include frame.h before termhooks.h.
9112 (dos_cleanup): Use CURTTY ()->termscript instead of a global
9113 variable termscript.
9114
9115 * s/msdos.h (USER_FULL_NAME): Define.
9116 (SYSTEM_PURESIZE_EXTRA): Bump up to 100K.
9117
9118 * editfns.c (USER_FULL_NAME): Define to pw->pw_gecos if undefined.
9119 (Fuser_full_name): Use USER_FULL_NAME instead of a literal
9120 pw->pw_gecos.
9121
9122 * keyboard.c (handle_interrupt) [MSDOS]: Call cursor_to with
9123 SELECTED_FRAME as additional (1st) argument.
9124 (tty_read_avail_input): Handle output_msdos_raw in
9125 addition to output_termcap.
9126
9127 * msdos.c: Include frame.h before termhooks.h.
9128 (mouse_on, mouse_off, mouse_moveto, mouse_init)
9129 (msdos_set_cursor_shape, IT_set_face, IT_write_glyphs)
9130 (show_mouse_face, IT_clear_end_of_line, IT_clear_screen)
9131 (IT_clear_to_end, IT_cursor_to, IT_display_cursor, IT_cmgoto)
9132 (IT_set_terminal_modes, IT_reset_terminal_modes)
9133 (IT_set_frame_parameters): Use tty->termscript instead of a global
9134 variable termscript.
9135 (IT_write_glyphs): Use tty->terminal->terminal_coding instead of a
9136 global variable terminal_coding. Don't refer to
9137 Vnonascii_translation_table.
9138 (internal_terminal_init): Set Vwindow_system in current_kboard.
9139 Don't use TTY_CHAR_INS_DEL_OK. Set Vinitial_window_system.
9140 Announce date and time of session start, if termscript is open.
9141 Don't zero out the_only_display_info (it is done in
b8ff72fa
SM
9142 term.c:init_tty). Open termscript only of not already open.
9143 Log "SCREEN SAVED" here, instead of IT_set_terminal_modes. Init mouse
aac0c6e3
MR
9144 here instead of dos_ttraw. Don't initialize display if this is an
9145 initial tty. Don't set FRAME_FONT.
9146 (Vwindow_system_version): Bump to 23.
9147 (dos_ttraw): Accept a TTY argument; all callers fixed. If mouse
9148 is available, set up mouse_position_hook.
9149 (dos_ttraw, IT_set_terminal_modes): If called with initial
9150 terminal, do nothing.
9151 (IT_set_frame_parameters): Handle the Qtty_type frame
9152 parameter by calling internal_terminal_init.
9153 (dos_set_window_size, show_mouse_face)
9154 (clear_mouse_face, IT_note_mode_line_highlight)
9155 (IT_note_mouse_highlight, IT_update_begin, IT_frame_up_to_date)
9156 (dos_rawgetc): Use tty_display_info instead of x_display_info.
9157 (initialize_msdos_display): New function.
9158 (IT_cursor_to, IT_clear_to_end, IT_clear_screen)
9159 (IT_clear_end_of_line, IT_insert_glyphs, IT_write_glyphs)
9160 (IT_delete_glyphs, IT_ring_bell, IT_reset_terminal_modes)
9161 (IT_set_terminal_modes, IT_set_terminal_window, IT_update_begin):
b8ff72fa 9162 Accept additional argument: a pointer to a frame. Update all callers.
aac0c6e3
MR
9163 (request_sigio, unrequest_sigio): Don't define, now defined on
9164 sysdep.c.
9165 (IT_write_glyphs): Rewrite to use encode_terminal_code.
9166
9167 * term.c [MSDOS]: Include msdos.h.
9168 (init_tty) [MSDOS]: Reuse most of WINDOWSNT branch. Change cpp
9169 conditional to DOS_NT. Allow only one call to this function in a
9170 session. Don't allocate a new struct tty_display_info; instead,
9171 reuse the_only_display_info. Call get_tty_size to get screen
9172 dimensions. Call init_baud_rate to set bad_rate.
9173 (dissociate_if_controlling_tty) [MSDOS]: Ifdef away function body.
9174 (Fsuspend_tty) [MSDOS]: Don't close input and output.
b8ff72fa 9175 (Fresume_tty) [MSDOS]: Don't reopen the TTY; instead, use stdin/stdout.
aac0c6e3
MR
9176 (get_tty_terminal, get_named_tty, Ftty_type)
9177 (Fcontrolling_tty_p): Handle output_msdos_raw in addition to
9178 output_termcap.
b8ff72fa
SM
9179 (Fresume_tty, Fsuspend_tty, init_tty, delete_tty):
9180 Call add_keyboard_wait_descriptor and delete_keyboard_wait_descriptor
2ae37cf0 9181 only when subprocesses are supported.
aac0c6e3
MR
9182
9183 * frame.c (make_terminal_frame) [MSDOS]: Adjust initialization of
9184 f->output_data.x.
9185 (Fmake_terminal_frame) [MSDOS]: Don't allow creation of new
9186 terminal devices.
9187
5582fbc7 9188 * msdos.h: Remove definition of struct x_display_info and struct
aac0c6e3
MR
9189 x_output.
9190 (FRAME_FONT): Use output_data.tty.
9191 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL): Don't define.
b8ff72fa
SM
9192 (struct x_display_info): Rename from display_info. Update all users in
9193 msdos.c.
aac0c6e3 9194 (struct x_output): Remove background_pixel and foreground_pixel.
b8ff72fa 9195 (the_only_display_info): Rename from the_only_x_display.
aac0c6e3
MR
9196 (dos_ttraw): Update prototype.
9197
9198 * Makefile.in (MSDOS_OBJ): Add xmenu.o.
9199 (SOME_MACHINE_LISP): Add ../lisp/term/pc-win.elc.
9200
92012008-08-23 Jason Rumney <jasonr@gnu.org>
9202
9203 * image.c (enum tiff_keyword_index, tiff_format): Add :index keyword.
9204 (fn_TIFFSetDirectory): New library function used.
9205 (init_tiff_functions) [HAVE_NTGUI]: Initialize it.
9206 (tiff_load): Use :index to select among multiple images. Set count
9207 property when multiple images exist.
9208 (gif_format): Use :index, not :image.
9209
92102008-08-23 Chong Yidong <cyd@stupidchicken.com>
9211
9212 * xdisp.c (try_scrolling): Check INT_MAX instead of
9213 MOST_POSITIVE_FIXNUM for maximum integer value. Include limits.h
9214 to obtain INT_MAX.
9215
92162008-08-21 İsmail Dönmez <ismail@namtrac.org> (tiny change)
9217
9218 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase on GTK+.
9219
92202008-08-21 Christian Faulhammer <opfer@gentoo.org> (tiny change)
9221
9222 * Makefile.in (temacs${EXEEXT}): On GNUstep, link to appropriate
9223 GNUstep library location.
9224
92252008-08-21 Chong Yidong <cyd@stupidchicken.com>
9226
9227 * xfaces.c (x_update_menu_appearance): Check validity of menu font
9228 before using it.
9229
9230 * puresize.h (BASE_PURESIZE): Increase to 1250000.
9231
92322008-08-20 Adrian Robert <Adrian.B.Robert@gmail.com>
9233
9234 * nsfns.m (ns-read-file-name): Add casts to avoid warning.
9235 (ns-convert-utf8-nfd-to-nfc): Warn if cannot execute correctly.
9236 * nsfont.m (nsfont_draw): Compare indexed colors to 0, not nil.
9237 * nsterm.h (EmacsView-unlockFocusNeedsFlush:): Add declaration.
9238 (EmacsApp-cursor_blink_handler): Remove declaration.
9239 * nsterm.m (ns_draw_glyph_string): Update first conditional body to
9240 match 01 Feb 2008 changes in xterm.c.
9241 (ns_read_socket): Add cast to avoid warning.
9242 (EmacsApp-application:openFiles:): Don't call replyToOpenOrPrint: on
9243 GNUstep.
9244
92452008-08-20 Chong Yidong <cyd@stupidchicken.com>
9246
9247 * xselect.c (x_get_foreign_selection): Return nil if desired
9248 selection could not be obtained, instead of signalling an error.
9249
92502008-08-20 David Reitter <david.reitter@gmail.com>
9251
9252 * nsfns.m (ns_lisp_to_cursor_type): Replace with generic xfns.c.
9253 * nsterm.m: Remove ns-specific code for cursor blinking.
9254 (ns_draw_window_cursor): Clear cursor properly rather than
9255 redrawing the area. Respect width of bar cursors.
9256 These changes enable the use of generic blink-cursor-mode and
9257 generic cursor types in NS and support smooth cursor movements (do
9258 not blink off after command).
9259 * xdisp.c (get_phys_cursor_geometry): Redraw wider rectangle on
9260 Nextstep, too.
9261
92622008-08-19 Kenichi Handa <handa@m17n.org>
9263
9264 * font.c (Vfont_log_deferred): New variable.
9265 (font_add_log): Check Vfont_log_deferred.
9266 (font_deferred_log): New function.
9267
9268 * font.h (font_deferred_log): Extern it.
9269
9270 * fontset.c (reorder_font_vector): Use encoding charset of fonts
9271 for sorting.
9272 (face_for_char): Use deferred log.
9273
92742008-08-18 Kenichi Handa <handa@m17n.org>
9275
9276 * fontset.c (face_for_char): Add font log.
9277
9278 * font.c (font_add_log): Add the font properties :script, :lang,
9279 and :otf in the log.
9280
92812008-08-17 Chong Yidong <cyd@stupidchicken.com>
9282
9283 * xdisp.c: Remove dead code.
9284 (handle_invisible_prop, next_overlay_string): Defer call to
9285 setup_for_ellipsis.
9286 (handle_stop, set_iterator_to_next): Call setup_for_ellipsis.
9287
92882008-08-15 Chong Yidong <cyd@stupidchicken.com>
9289
9290 * xfaces.c (lookup_derived_face): Properly handle possible zero
9291 return value of get_lface_attributes.
9292 (merge_faces): Don't tell lookup_derived_face to signal an error
9293 if face is not found.
9294
9295 * dired.c (Fdirectory_files): Doc fix.
9296
9297 * process.c (make_process): Initialize kill_without_query struct
9298 member.
9299
93002008-08-15 Eli Zaretskii <eliz@gnu.org>
9301
9302 * w32.c (w32_system_process_attributes) [_MSC_VER < 1300]:
9303 Alternative calculation of totphys for Visual Studio 6.
9304
9305 * w32fns.c [_MSC_VER && _MSC_VER < 1300]: Declare HMONITOR.
9306
9307 * w32.c (_MEMORY_STATUS_EX, MEMORY_STATUS_EX, LPMEMORY_STATUS_EX):
9308 Rename from _MEMORYSTATUSEX, MEMORYSTATUSEX, LPMEMORYSTATUSEX.
9309 All users changed.
9310 (stat): Only root directory passed to GetDriveType. Allow RAM
9311 disk as well as local fixed disk when w32-get-true-file-attributes
9312 is set to `local'.
9313 (CopySid_Proc, EqualSid_Proc, GetLengthSid_Proc): New typedefs.
9314 (equal_sid, get_length_sid, copy_sid): New wrapper functions.
9315 (w32_cached_id, w32_add_to_cache): New functions.
9316 (get_name_and_id): Look account names in the cache before calling
9317 lookup_account_sid.
9318 (g_b_init_get_length_sid, g_b_init_equal_sid, g_b_init_copy_sid):
9319 New initialization flags.
9320 (globals_of_w32): Initialize them to zero.
9321 (w32_system_process_attributes): Use w32_cached_id and
9322 w32_add_to_cache.
9323
93242008-08-14 Lawrence Mitchell <wence@gmx.li>
9325
9326 * lread.c (Fread_char, Fread_char_exclusive): If no character
9327 event is read before timeout is reached, return nil, rather than
9328 converting to a number.
9329
93302008-08-14 Chong Yidong <cyd@stupidchicken.com>
9331
9332 * fns.c (use_dialog_box): Doc fix.
9333
9334 * s/darwin.h: Undefine HAVE_RES_INIT, which appears to be harmful
9335 on OS X.
9336
93372008-08-13 Chong Yidong <cyd@stupidchicken.com>
9338
9339 * frame.c (Qns_parse_geometry): New var.
9340 (Fx_parse_geometry): For HAVE_NS, call ns-parse-geometry.
9341
93422008-08-11 Chong Yidong <cyd@stupidchicken.com>
9343
9344 * xdisp.c (x_produce_glyphs): Handle the case when font has no
9345 space character in calculating tabs.
9346
93472008-08-11 Dan Nicolaescu <dann@ics.uci.edu>
9348
9349 * Makefile.in (bootstrap-emacs): Use ln -f in the CANNOT_DUMP case.
9350
93512008-08-10 Glenn Morris <rgm@gnu.org>
9352
9353 * process.c (procfs_system_process_attributes): Use EMACS_INTs to
9354 silence gcc "limited range of data type" warnings in some
9355 make_fixnum_or_float calls.
9356
93572008-08-09 Eli Zaretskii <eliz@gnu.org>
9358
9359 * w32.c (w32_system_process_attributes): If the process does not
9360 exist, return nil.
9361
9362 * w32.c: Include thelp32.h, psapi.h and coding.h.
9363 (_MEMORYSTATUSEX, _PROCESS_MEMORY_COUNTERS_EX): New struct
9364 declarations.
9365 (CreateToolhelp32Snapshot_Proc, Process32First_Proc)
9366 (Process32Next_Proc): New typedefs.
9367 (g_b_init_create_toolhelp32_snapshot, g_b_init_process32_first)
9368 (g_b_init_process32_next, g_b_init_open_thread_token)
9369 (g_b_init_impersonate_self, g_b_init_revert_to_self)
9370 (g_b_init_get_process_memory_info, g_b_init_global_memory_status)
9371 (g_b_init_get_process_working_set_size)
9372 (g_b_init_global_memory_status_ex): New static variables.
9373 (globals_of_w32): Initialize them.
9374 (create_toolhelp32_snapshot, process32_first, process32_next)
9375 (open_thread_token, impersonate_self, revert_to_self)
9376 (get_process_memory_info, get_process_working_set_size)
9377 (global_memory_status, global_memory_status_ex): New wrapper
9378 functions.
9379 (w32_list_system_processes, w32_system_process_attributes)
9380 (enable_privilege, restore_privilege, ltime, process_times):
9381 New functions.
9382 (convert_time_raw): New function.
9383 (convert_time): Remove conversion of FILETIME into time in 100
9384 nsec units, call convert_time_raw instead.
9385
9386 * process.h (w32_list_system_processes, w32_system_process_attributes):
9387 Add prototypes.
9388 (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess, Qttname)
9389 (Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime, Qcutime)
9390 (Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs, Quser, Qgroup)
9391 (Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime): Add extern declarations.
9392
9393 * process.c (Fsystem_process_attributes): Doc fix.
9394
93952008-08-08 Chong Yidong <cyd@stupidchicken.com>
9396
9397 * xdisp.c (move_it_to): When stopping at a charpos, check if that's
9398 a continued multi-char glyph; if so, advance to the actual glyph.
9399
94002008-08-07 Dan Nicolaescu <dann@ics.uci.edu>
9401
9402 * s/darwin.h (OTHER_FILES): Do not define here, defined in config.in.
9403
9404 * Makefile.in (ALL_OBJC_CFLAGS): New variable.
9405 (.m.o): Use it.
9406 * config.in: Regenerate.
9407
94082008-08-07 Chong Yidong <cyd@stupidchicken.com>
9409
9410 * xdisp.c (redisplay_window): Revert last change.
9411 (try_window): Check bottom scroll margin too.
9412
94132008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
9414
9415 * config.in: Regenerate.
9416
9417 * Makefile.in (emacs): Remove ifndef NS conditional for 'emacs
9418 -list-load-path-shadows'.
9419 (nsgui.h): Reduce number of things depending on it.
9420
94212008-08-06 Chong Yidong <cyd@stupidchicken.com>
9422
9423 * xdisp.c (try_scrolling): Use iterator to find the scroll margin,
9424 instead of window-end which does the wrong thing at eob.
9425 (try_cursor_movement): Minor optimization.
9426 (redisplay_window): If scroll margin is defined, don't assume
9427 window doesn't need scrolling.
9428
94292008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
9430
9431 * config.in: Regenerate.
9432
9433 * Makefile.in: Move nsXXX.m dependencies into big alphabetical list.
9434 (mostlyclean): Don't delete *.d under NS.
9435
9436 * nsterm.h (NS_HAVE_INTEGER): Change to NS_HAVE_NSINTEGER.
9437
94382008-08-06 Kenichi Handa <handa@m17n.org>
9439
9440 * xfont.c (xfont_list_family): Return a list of symbols, not strings.
9441
94422008-08-06 Andreas Schwab <schwab@suse.de>
9443
9444 * config.in: Regenerate.
9445
94462008-08-05 Chong Yidong <cyd@stupidchicken.com>
9447
9448 * xdisp.c (redisplay_window): Don't enforce scroll-margin when
9449 forcing a window start.
9450
9451 * fileio.c (Vauto_save_list_file_name): Move here from file.el.
9452 (auto_save_1): Update modtime when auto-save-list-file-name is on.
9453
94542008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
9455
9456 * emacs.c (main): Under NS, set working dir to HOME when get a "psn"
9457 argument.
9458
94592008-08-05 Juanma Barranquero <lekktu@gmail.com>
9460
9461 * buffer.c (syms_of_buffer) <scroll-up-aggressively>:
9462 <scroll-down-aggressively, before-change-functions>:
9463 <after-change-functions>: Reflow docstrings.
9464
94652008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
4e2af782 9466 Ken Raeburn <raeburn@gnu.org>
aac0c6e3
MR
9467
9468 Dock menu customization, based on a patch by Ken Raeburn, plus some
9469 other fixes.
9470 * nsmenu.m (dockMenu): New variable.
9471 (EmacsDialog -clicked:): Fix mistake in change of 2008-07-17.
9472
9473 * nsterm.h (dockMenu): Declare.
9474
9475 * nsterm.m (KEY_NS_NEW_FRAME): New definition.
9476 (ns_term_init): Initialize dockMenu.
9477 (EmacsApp -newFrame:, -applicationDockMenu:): New methods.
9478 (EmacsView -windowShouldClose:): Don't behave specially if <= 1 frame
9479 left.
9480
9481 * lisp.h (LSB_TAG): Use on DARWIN_OS, not NS_IMPL_COCOA.
9482
94832008-08-04 Chong Yidong <cyd@stupidchicken.com>
9484
9485 * nsterm.h: Test directly for NS_HAVE_INTEGER before defining it.
9486
9487 * config.in: Regenerate.
9488
94892008-08-04 Seiji Zenitani <zenitani@mac.com>
9490
9491 * nsfns.m (x-create-frame): Set the frame parameter alpha to nil.
9492
94932008-08-04 Chong Yidong <cyd@stupidchicken.com>
9494
9495 * nsterm.h (find_and_call_menu_selection): Fix prototype.
9496
94972008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
9498
9499 * emacs.c (main: unexec_init_emacs_zone): Call if on DARWIN_OS.
9500
9501 * keyboard.h: Comment an #endif.
9502
9503 * lisp.h (have_menus_p): Adjust comment.
9504
9505 * menu.c (find_and_return_menu_selection): Fix comparison with
9506 client_data.
9507
9508 * nsmenu.m (popup_activated_flag): New variable.
9509 (popup_activated): New function.
9510 (menu-or-popup-active-p): New exported lisp definition.
9511 (ns_popup_menu): Set popup_activated_flag. Call discard_menu_items()
9512 when popup done.
9513 (ns_popup_dialog): Set popup_activated_flag.
9514
9515 * nsterm.m (EmacsView -conversationIdentifier): Use NSInteger
9516 version for GNUstep (handled by conditional typedef in nsterm.m).
9517 (ns_get_color): Remove special-casing for "darkblue", "dark blue" (now
9518 in rgb.txt).
9519
9520 * process.c (init_process): Use DARWIN_OS, not DARWIN.
9521
9522 * sysselect.h: Conditionalize init_process undef on DARWIN_OS.
9523
9524 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): Do it also under NS.
9525
9526 * xdisp.c (redisplay_internal, note_mouse_highlight): Under NS,
9527 shortcircuit if popup_activated like GTK and X toolkit.
9528
9529 * m/inter386.h: Change DARWIN to DARWIN_OS.
9530
9531 * s/darwin.h: Add #define DARWIN_OS. Get rid of C_SWITCH_SYSTEM def.
9532 Change LIBS_MACGUI to LIBS_NSGUI. Move temacs-conditionalized defs
9533 closer to C_SWITCH_SYSTEM_TEMACS so usage is understood. Expand
9534 comment on NO_SOCK_SIGIO.
9535
95362008-08-03 Chong Yidong <cyd@stupidchicken.com>
9537
9538 * nsterm.m (windowDidResize): Remove stopModal call.
9539
95402008-08-03 Andreas Schwab <schwab@suse.de>
9541
9542 * vm-limit.c (get_lim_data) [HAVE_GETRLIMIT && RLIMIT_AS]: Define.
9543 (check_memory_limits): Don't handle HAVE_GETRLIMIT here.
9544
95452008-08-02 Chong Yidong <cyd@stupidchicken.com>
9546
9547 * vm-limit.c (check_memory_limits): Don't use getrlimit on cygwin.
9548 Don't use uninitialized pointer variable when using getrlimit.
9549
95502008-08-02 Jason Rumney <jasonr@gnu.org>
9551
9552 * w32font.c (compute_metrics): Don't mess with glyph_idx setting here.
9553
95542008-08-02 Eli Zaretskii <eliz@gnu.org>
9555
9556 * alloc.c (NSTATICS): Bump to 0x640.
9557
9558 * s/gnu-linux.h (HAVE_PROCFS, LISTPROC, PROCATTR): New defines.
9559
9560 * lisp.h: Add prototype for directory_files_internal.
9561
9562 * process.c (Fsystem_processes_list, Fsystem_process_attributes):
9563 New functions.
9564 (syms_of_process): Defsubr them. Add initializations for various
9565 Q* symbols used in procfs_system_process_attributes.
9566 (procfs_list_system_processes, procfs_system_process_attributes)
9567 [HAVE_PROCFS]: New functions.
9568 (time_from_jiffies, ltime_from_jiffies, get_up_time, procfs_ttyname)
9569 (procfs_get_total_memory): New functions.
9570
95712008-08-01 Juanma Barranquero <lekktu@gmail.com>
9572
9573 * xfaces.c (Fx_load_color_file): Fix previous change;
9574 it is #ifdef WINDOWSNT, not WINDOWS_NT.
9575
95762008-08-01 Michael Albinus <michael.albinus@gmx.de>
9577
9578 * dbusbind.c (xd_read_message): Handle D-Bus error messages.
9579
95802008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
9581
9582 * nsterm.h (NSInteger, NSUInteger): Add defines for non-Leopard.
9583
95842008-08-01 Chong Yidong <cyd@stupidchicken.com>
9585
9586 * nsfns.m (ns_frame_parm_handlers): Add empty entry for x_set_alpha.
9587
9588 * nsterm.m (EmacsApp -application:openFiles:): GNUstep does not
9589 define NSApplicationDelegateReplySuccess.
9590 (EmacsView -converstationIdentifier): Use long instead of
9591 NSInteger for GNUstep, since it doesn't have NSInteger.
9592
9593 * xmenu.c: Revert last change.
9594
9595 * keyboard.h: Fix last change.
9596
95972008-08-01 Juanma Barranquero <lekktu@gmail.com>
9598
9599 * xfaces.c (x-load-color-file): Use RGB() instead of manually shifting
9600 on Windows.
9601
96022008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
9603
9604 Warning clearing and clean-up in NS port.
9605 * keyboard.h (xmalloc_widget_value, digest_single_submenu):
9606 Add prototypes.
9607 * nsgui.h (FACE_DEFAULT): Remove, unused.
9608 (XGCValues): Change colors to unsigned long.
9609 * nsterm.h (EmacsApp): Add declaration of all methods implemented in
9610 nsterm.m.
9611 (EmacsMenu -addItemWithWidgetValue:): Change to use NSMenuItem class.
9612 (ns_list_fonts): Remove, unused.
9613 (ns_font_to_xlfd, ns_fontname_to_xlfd): Drop prototypes.
9614 * nsfns.m (interpret_services_menu): Use NSMenuItem class.
9615 * nsfont.m (nsfont_open): Fix cast error in glyphs,metrics alloc.
9616 (nsfont_draw): Compare face colors to 0, not nil.
9617 * nsmenu.m (struct widget_value): Drop unneeded declaration.
9618 (EmacsMenu -addItemWithWidgetValue:, -fillWithWidgetValue:)
9619 (-addSubmenuWithTitle:): Use NSMenuItem class.
9620 (ns_popup_menu): Use NO, not NULL, for enabled setting.
9621 * nsterm.m (ns_draw_glyph_string): Don't compare font to ~0.
9622 (ns_clip_to_row): Make gc arg a BOOL.
9623 (ns_draw_fringe_bitmap, ns_draw_window_cursor): Use YES, NO in
9624 ns_clip_to_row() call.
9625 (ns_draw_glyph_string): Drop face comparison to ~0 (no longer
9626 used). Cast FRAME_FONT assignments.
9627 (ns_read_socket): Cast call to EmacsApp-fulfillService:withArg:.
9628 (ns_string_to_lispmod): Change arg to const char.
9629 (ns_term_init): Use NSMenuItem class.
9630 (EmacsApp -openFile:): Move to different section of file.
9631 (EmacsApp -application:openFiles:): Don't return a value, call
9632 -replyToOpenOrPrint:.
9633 (EmacsView -keyDown:): Fix up cast.
9634 (EmacsView -converstationIdentifier): Use NSInteger instead of long.
9635 (EmacsView -menuDown:): Cast tag in call to
9636 find_and_call_menu_selection().
9637 (ns_list_fonts): Remove, unused.
9638 (ns_font_to_xlfd): Make static. Cast result of UTF8String.
9639 (ns_fontname_to_xlfd): Make static.
9640 * w32menu.c (xmalloc_widget_value, digest_single_submenu):
9641 Remove prototypes (now in keyboard.h).
9642 (next_menubar_widget_id): Remove, unused.
9643 * xmenu.c (xmalloc_widget_value, digest_single_submenu):
9644 Remove prototypes (now in keyboard.h).
9645 * xfaces.c (ns_list_fonts, w32_list_fonts): Remove, unused.
9646
96472008-08-01 Dan Nicolaescu <dann@ics.uci.edu>
9648
9649 * Makefile.in (dispnew.o, gtkutil.o, sound.o, atimer.o)
9650 (floatfns.o): Depend on syssignal.h.
9651 (term.o): Depend on syssignal.h, systty.h, and $(INTERVAL_SRC).
9652
9653 * systty.h: Fix previous change that removed BSD_TERMIOS.
9654 Add comments to #ifdefs.
9655
96562008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
9657
9658 * w32fns.c (w32-load-color-file): Remove.
9659 (x-open-connection): Use renamed Fx_load_color_file.
9660 * xfaces.c (x-load-color-file): Add.
9661 * nsterm.m (ns_initialize): Load colors from etc/rgb.txt instead of
9662 Emacs.clr.
9663 (hide_hourglass): BLOCK_INPUT before UNBLOCK.
9664
96652008-07-31 Michael Albinus <michael.albinus@gmx.de>
9666
9667 * dbusbind.c (Fdbus_call_method_asynchronously)
9668 (Fdbus_method_error_internal): New defuns.
9669 (xd_read_message): Handle also reply messages.
9670 (Vdbus_registered_functions_table): Extend docstring.
9671
96722008-07-31 Juanma Barranquero <lekktu@gmail.com>
9673
9674 * keyboard.c (gobble_input): Fix previous change.
9675
96762008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
9677
9678 * bitmaps/README:
9679 * xfns.c:
9680 * termcap.c:
9681 * term.c:
9682 * syswait.h:
9683 * systty.h:
9684 * systime.h:
9685 * syssignal.h:
9686 * sysdep.c:
9687 * process.h:
9688 * process.c:
9689 * print.c:
9690 * ndir.h:
9691 * lread.c:
9692 * keyboard.c:
9693 * getpagesize.h:
9694 * floatfns.c:
9695 * fileio.c:
9696 * emacs.c:
9697 * doc.c:
9698 * dispnew.c:
9699 * dired.c:
9700 * data.c:
9701 * callproc.c:
9702 * buffer.c:
9703 * README:
9704 * Makefile.in:
9705 * s/template.h:
9706 * s/msdos.h:
9707 * m/vax.h: Remove VMS support.
9708 * s/vms.h:
9709 * vlimit.h:
9710 * uaf.h:
9711 * temacs.opt:
9712 * param.h:
9713 * ioctl.h: Remove file.
9714
97152008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
9716
9717 * s/ms-w32.h (MULTI_KBOARD): Remove.
9718 * xterm.c:
9719 * xselect.c:
9720 * xfns.c:
9721 * window.c:
9722 * w32term.c:
9723 * w32fns.c:
9724 * terminal.c:
9725 * termhooks.h:
9726 * term.c:
9727 * sysdep.c:
9728 * keyboard.h:
9729 * keyboard.c:
9730 * frame.h:
9731 * frame.c:
9732 * frame.c: Remove references to MULTI_KBOARD, it is now the default.
9733 * config.in: Regenerate.
9734
97352008-07-30 Jason Rumney <jasonr@gnu.org>
9736
9737 * w32font.h (struct w32font_info): Use unicode version of textmetrics.
9738
9739 * w32font.c (w32font_encode_char): Leave as unicode if in range.
9740 (w32font_open_internal): Get unicode version of textmetrics.
9741 Don't enable or disable glyph indices here.
9742 (w32font_open): Disable use of glyph indices.
9743
9744 * w32uniscribe.c (uniscribe_open): Enable use of glyph indices.
9745
97462008-07-30 Chong Yidong <cyd@stupidchicken.com>
9747
9748 * minibuf.c (Vread_buffer_function): Doc fix.
9749
97502008-07-30 John Paul Wallington <jpw@pobox.com>
9751
9752 * minibuf.c (read_buffer_completion_ignore_case): New var.
9753 (Fread_buffer): Use it.
9754
97552008-07-30 Dan Nicolaescu <dann@ics.uci.edu>
9756
9757 * systty.h (sensemode): Remove empty #if. Remove reference to
9758 BSD_TERMIOS, unused.
9759
9760 * sysdep.c: Remove reference to DGUX.
9761 (closedir): Remove reference to BROKEN_CLOSEDIR, unused.
9762
9763 * config.in: Regenerate.
9764
97652008-07-30 Jason Rumney <jasonr@gnu.org>
9766
9767 * w32uniscribe.c (uniscribe_encode_char): Fix glyph buffer size.
9768
97692008-07-29 Jason Rumney <jasonr@gnu.org>
9770
9771 * w32uniscribe.c (uniscribe_shape): Avoid using context if cache
9772 is populated.
9773 (uniscribe_encode_char): Always use uniscribe.
9774 Avoid using context if cache is populated.
9775
97762008-07-29 Jan Djärv <jan.h.d@swipnet.se>
9777
9778 * xmenu.c (Fx_menu_bar_open_internal): Use activate_item signal to
9779 open menu.
9780
9781 * gtkutil.c (menu_nav_ended): Remove.
9782 (create_menus): Remove signal connect for menu_nav_ended.
9783
97842008-07-28 Chong Yidong <cyd@stupidchicken.com>
9785
9786 * xdisp.c (redisplay_window): Check return value of
9787 compute_window_start_on_continuation_line before forcing a window
9788 start.
9789
97902008-07-28 Jason Rumney <jasonr@gnu.org>
9791
9792 * w32font.c (w32font_text_extents): Use w32_metric_cache consistently.
9793
9794 * w32term.c (w32_enable_unicode_output, cleartype_active):
9795 Remove obsolete display options.
9796 (x_draw_glyph_string_background): Don't use old cleartype_active
9797 workaround.
9798 (w32_initialize): Remove cleartype_active initialization.
9799 (syms_of_w32term): Remove w32_enable_unicode_output initialization.
9800
98012008-07-28 Andreas Schwab <schwab@suse.de>
9802
9803 * lisp.h (init_weak_hash_tables, syms_of_font)
9804 (xd_read_queued_messages, syms_of_dbusbind): Declare.
9805 (remove_hash_entry): Don't declare.
9806 * eval.c (maybe_call_debugger): Make static and move before use.
9807 * gtkutil.c: Include <X11/Xft/Xft.h> if HAVE_XFT.
9808 * xdisp.c: Include "gtkutil.h" if USE_GTK.
9809 * xterm.h (x_set_frame_alpha): Declare.
9810
98112008-07-28 Jan Djärv <jan.h.d@swipnet.se>
9812
9813 * gtkutil.c (menu_nav_ended): Revert change from 2008-07-24.
9814 (create_menus): Connect selection-done to menu_nav_ended.
9815
98162008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
9817
9818 * nsfns.m (x-create-frame): Add copy of parms argument to beginning.
9819 Set Vx_resource_name to a fallback. Replace read of 'buffered'
9820 parameter with read of 'alpha' one.
9821 (Qns_frame_parameter): Remove.
5582fbc7 9822 * nsselect.m (selection-coding-system)
aac0c6e3
MR
9823 (next-selection-coding-system, Vselection_coding_system)
9824 (Vnext_selection_coding_system): Drop.
9825
98262008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
9827
9828 * nsfns.m (do-applescript, do_applescript): Rename to
9829 ns-do-applescript, ns_do_applescript, and move within file.
9830
98312008-07-27 Dan Nicolaescu <dann@ics.uci.edu>
9832
9833 Remove support for Mac Carbon.
9834 * mactoolbox.c:
9835 * macterm.h:
9836 * macterm.c:
9837 * macselect.c:
9838 * macmenu.c:
9839 * macgui.h:
9840 * macfns.c:
9841 * mac.c: Remove file.
9842 * s/darwin.h:
9843 * m/intel386.h:
9844 * xfaces.c:
9845 * xdisp.c:
9846 * window.c:
9847 * tparam.c:
9848 * termhooks.h:
9849 * termcap.c:
9850 * term.c:
9851 * syssignal.h:
9852 * sysselect.h:
9853 * sysdep.c:
9854 * process.c:
9855 * lread.c:
9856 * lisp.h:
9857 * keyboard.c:
9858 * image.c:
9859 * fringe.c:
9860 * frame.h:
9861 * frame.c:
9862 * fontset.c:
9863 * font.h:
9864 * font.c:
9865 * fns.c:
9866 * fileio.c:
9867 * emacs.c:
9868 * dispnew.c:
9869 * dispextern.h:
9870 * config.in:
9871 * atimer.c:
2ae37cf0 9872 * Makefile.in: Remove code for Carbon.
aac0c6e3 9873
f0131492 98742008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
aac0c6e3
MR
9875
9876 * macterm.c (XDrawLine) [USE_MAC_IMAGE_IO]: Remove spurious return.
9877
98782008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9879
9880 * macterm.h (kCGBitmapByteOrder32Host): New define for
9881 non-universal SDKs.
9882
9883 * image.c (mac_create_cg_image_from_image, image_load_image_io)
9884 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
9885
9886 * macterm.c (XDrawLine, XCreatePixmapFromBitmapData)
9887 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
9888
98892008-07-26 David Robinow <drobinow@gmail.com> (tiny change)
9890
9891 * w32inevt.c: Include dispextern.h.
9892
98932008-07-26 Andreas Schwab <schwab@suse.de>
9894
9895 * print.c (print_object): Fix off-by-one in last change.
9896
98972008-07-25 Juanma Barranquero <lekktu@gmail.com>
9898
9899 * term.c (syms_of_term): Don't initialize default_orig_pair,
9900 default_set_foreground and default_set_background on Windows.
9901
99022008-07-25 Jason Rumney <jasonr@gnu.org>
9903
9904 * w32uniscribe.c (uniscribe_shape): Pass NULL for control arg to
9905 ScriptItemize. Clean up return value checking. Remove unused
9906 variables.
9907 (uniscribe_encode_char): Encode non-BMP characters with uniscribe
9908 shaping engine.
9909
9910 * w32font.c (w32font_has_char): Handle the case where we can't
9911 determine the script for a character.
9912
99132008-07-25 Chong Yidong <cyd@stupidchicken.com>
9914
9915 * term.c (syms_of_term): Initialize default_orig_pair,
9916 default_set_foreground, and default_set_background.
9917
9918 * getloadavg.c (nl): Rename to name_list to avoid ncurses.h
9919 clash (bug#86).
9920 (getloadavg): Callers changed.
9921
9922 * image.c (svg_load_image): Fix last change.
9923 (svg_load_image): Use rsvg_handle_get_dimensions to check that
9924 image size is valid. Use g_object_unref instead of deprecated
9925 rsvg_handle_free to free rsvg handle.
9926 (x_from_xcolors): Don't initialize pixmap (silence compiler).
9927
99282008-07-25 Jason Rumney <jasonr@gnu.org>
9929
9930 * w32font.c (w32font_encode_char): Encode characters outside BMP as
9931 surrogates before looking up glyph index.
9932 (w32font_text_extents): Encode as surrogates if falling back to
9933 functions that need UTF-16 wide chars.
9934
9935 * w32uniscribe.c (uniscribe_encode_char): Encode characters outside
9936 BMP as surrogates before looking up glyph index.
9937
99382008-07-25 Chong Yidong <cyd@stupidchicken.com>
9939
9940 * image.c (svg_load_image): Check for failure in return value of
9941 rsvg_handle_get_pixbuf. Free rsvg handle when done.
9942
99432008-07-25 Jason Rumney <jasonr@gnu.org>
9944
9945 * w32font.c (Fx_select_font): Reverse sense of second arg.
9946
99472008-07-24 Stefan Monnier <monnier@iro.umontreal.ca>
9948
9949 * syntax.c (struct lisp_parse_state, char_quoted, inc_bytepos)
9950 (dec_bytepos, find_defun_start): Use EMACS_INT for buffer positions.
9951
9952 * puresize.h (PURESIZE_CHECKING_RATIO): New macro.
9953 (PURESIZE): Use it.
9954
99552008-07-24 Dan Nicolaescu <dann@ics.uci.edu>
9956
9957 * m/amdx86-64.h (HAVE_LIB64_DIR): Consolidate ifdefs.
9958 * m/alpha.h (TEXT_END):
9959 * m/ibmrs6000.h (TEXT_END):
9960 * m/macppc.h (TEXT_END):
9961 * s/darwin.h (TEXT_END):
9962 * s/msdos.h (TEXT_END): Remove, unused.
9963 * s/gnu-linux.h (BSD_PGRPS): Add a comment.
9964 * s/cygwin.h: Remove comment.
9965
9966 * ecrt0.c (NODOT_GLOBAL_START): Remove code, unused.
9967 (DOT_GLOBAL_START): Remove conditional, redundant for CRT0_DUMMIES.
9968 * m/intel386.h (DOT_GLOBAL_START):
9969 * m/vax.h (DOT_GLOBAL_START): Remove, redundant with CRT0_DUMMIES.
9970 (USG): Remove, file not used on USG platforms.
9971
9972 * Makefile.in (HAVE_X11): Remove empty #else.
9973
99742008-07-24 Andreas Schwab <schwab@suse.de>
9975
9976 * fileio.c (Finsert_file_contents): Properly adjust undo list
9977 after format conversion.
9978
99792008-07-24 Jan Djärv <jan.h.d@swipnet.se>
9980
9981 * gtkutil.c (xg_get_font_name): Cast w to GTK_FONT_SELECTION_DIALOG.
9982 (menu_nav_ended): Remove.
9983 (create_menus): Remove signal connect for menu_nav_ended.
9984 (xg_update_menubar): Also take deactivate_cb as parameter, pass it to
9985 create_menus.
9986 (xg_modify_menubar_widgets): Pass deactivate_cb to xg_update_menubar.
9987
99882008-07-23 Jason Rumney <jasonr@gnu.org>
9989
9990 * w32font.c (w32_enumfont_pattern_entity): Return height consistent
9991 with opened font.
9992 (w32font_open): Set font type to gdi.
9993
9994 * w32uniscribe.c (uniscribe_open): Set font type to uniscribe.
9995
99962008-07-23 Dan Nicolaescu <dann@ics.uci.edu>
9997
9998 * s/usg5-4.h (ADDR_CORRECT): Remove, unused.
9999 * unexaix.c (ADDR_CORRECT): Remove conditional, the only user
10000 defines it.
10001 * unexec.c (ADDR_CORRECT): Define unconditionally.
10002
10003 * m/ibmrs6000.h (C_SWITCH_MACHINE): Remove.
10004
10005 * unexec.c: Remove code depending on !COFF and USG, the file is
10006 not used for such systems.
10007
10008 * s/netbsd.h (A_TEXT_OFFSET, A_TEXT_SEEK):
10009 * s/freebsd.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, unused.
10010 (LD_SWITCH_SYSTEM_1): Remove, update users.
10011
10012 * s/darwin.h (DATA_END):
10013 * m/intel386.h (DATA_END):
10014 * m/ibmrs6000.h (DATA_END):
10015 * m/alpha.h (DATA_END): Remove, unused.
10016
10017 * config.in: Regenerate.
10018 * s/ms-w32.h (subprocesses): Define unconditionally.
10019 * s/template.h (subprocesses): Update comment.
10020 * s/vms.h (subprocesses):
10021 * s/usg5-4.h (subprocesses):
10022 * s/hpux10-20.h (subprocesses):
10023 * s/gnu-linux.h (subprocesses):
10024 * s/cygwin.h (subprocesses):
10025 * s/bsd-common.h (subprocesses):
10026 * s/aix4-2.h (subprocesses):
10027 * s/darwin.h (subprocesses): Do not define, defined by default now.
10028
10029 * Makefile.in (C_SWITCH_SITE, LD_SWITCH_SITE): Remove, unused.
10030 Remove all references.
10031 (temacs): Add GNUstep specific ld flags.
10032
10033 * nsterm.m (syms_of_nsterm): Provide ns, not ns-windowing,
10034 similarly to what X does.
10035
100362008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
10037
10038 * nsfns.m (x-list-fonts): Remove.
10039 (syms_of_nsfns): Drop the x-list-fonts declaration.
10040 * nsterm.m: Get rid of remaining "//" comments.
10041
100422008-07-22 Chong Yidong <cyd@stupidchicken.com>
10043
10044 * xselect.c (Fx_rotate_cut_buffers_internal): Doc fix.
10045
10046 * nsselect.m (Fns_selection_exists_p, Fns_selection_owner_p)
10047 (Fx_get_selection_internal, Fns_rotate_cut_buffers_internal)
10048 (Fns_own_selection_internal, Fx_disown_selection_internal)
10049 (Fns_get_cut_buffer_internal, Fns_store_cut_buffer_internal):
10050
10051 * nsmenu.m (Fns_reset_menu, Fx_popup_menu): Change to use 'doc: /*
10052 ... */' style of docstrings. Doc fixes.
10053
100542008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
10055
10056 * terminfo.c (UP, BC, PC): Undo previous change.
10057
10058 * nsfns.m: Rename ns prefixed functions/variables to the
10059 corresponding x versions. Update references.
10060
100612008-07-22 Stefan Monnier <monnier@iro.umontreal.ca>
10062
10063 * syntax.c (char_quoted): Check "charpos > beg" before decrementing.
10064
100652008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
10066
10067 * nsfns.m (x_set_menu_bar_lines, x_set_tool_bar_lines):
10068 Remove forwarding functions.
10069 (ns_set_menu_bar_lines): Rename to x_set_menu_bar_lines, make
10070 non-static.
10071 (ns_set_tool_bar_lines): Rename to x_set_tool_bar_lines, make
10072 non-static.
10073 (ns_frame_parm_handlers): Use the new names.
10074 (syms_of_nsfns): Move to the end of file.
10075
10076 * nsterm.m (syms_of_nsterm): Move to the end of file.
10077
10078 * dispnew.c (init_display): Remove code for X10.
10079
100802008-07-22 Jason Rumney <jasonr@gnu.org>
10081
10082 * w32proc.c (Fw32_long_file_name): Don't append dir separator to
10083 bare drive.
10084
100852008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
10086
10087 * nsterm.m (syms_of_nsterm): Remove debugging println.
10088
100892008-07-22 David Reitter <david.reitter@gmail.com>
10090
10091 * nsfns.m (do_applescript, F_do_applescript): NS version of the
10092 Carbon implementation of the same functionality: execute arbitrary
10093 AppleScript code.
10094
100952008-07-21 Adrian Robert <Adrian.B.Robert@gmail.com>
10096
10097 * nsfns.m (Fx_create_frame, Fx_read_file_name, Fx_get_resource)
10098 (Fx_set_resource, Fx_set_alpha, Fx_server_max_request_size)
10099 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
10100 (Fx_display_mm_height, Fx_display_mm_width)
10101 (Fx_display_backing_store, Fx_display_visual_class)
10102 (Fx_display_save_under, Fx_open_connection)
10103 (Fx_close_connection, Fx_hide_emacs, Fx_font_name)
10104 (Fx_list_colors, Fx_perform_service, Fx_color_defined_p)
10105 (Fx_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
10106 (Fx_display_pixel_width, Fx_display_pixel_height)
10107 (Fx_display_usable_bounds, Fx_display_planes)
10108 (Fx_display_color_cells, Vns_icon_type_alist): Change to use 'doc: /*
10109 ... */' style of docstrings.
10110
101112008-07-21 Dan Nicolaescu <dann@ics.uci.edu>
10112
10113 * m/mips.h (LOAD_AVE_TYPE, LOAD_AVE_CVT): Do not define, not used
10114 on this platform.
10115 (mips):
10116 * m/iris4d.h (mips): Do not define.
10117 * sysdep.c (init_sys_modes): Use __mips__ instead of mips.
10118
10119 * m/ibmrs6000.h (LD_SWITCH_SITE): Remove.
10120
10121 * image.c:
10122 * nsfns.m:
10123 * nsselect.m:
10124 * nsterm.h:
10125 * nsterm.m: Rename ns prefixed functions/variables to the
10126 corresponding x versions. Update references.
10127
10128 * m/ibms390x.h (NO_REMAP): Do not undefine.
10129
10130 * m/amdx86-64.h: Use SOLARIS2 instead of sun.
10131
101322008-07-21 Chong Yidong <cyd@stupidchicken.com>
10133
10134 * nsfns.m: Change NS to Nextstep in docstrings and error messages.
10135 (Fns_create_frame, Fns_read_file_name, Fns_get_resource)
10136 (Fns_set_resource, Fns_set_alpha, Fns_server_max_request_size)
10137 (Fns_server_vendor, Fns_server_version, Fns_display_screens)
10138 (Fns_display_mm_height, Fns_display_mm_width)
10139 (Fns_display_backing_store, Fns_display_visual_class)
10140 (Fns_display_save_under, Fns_open_connection)
10141 (Fns_close_connection, Fns_hide_emacs, Fns_font_name)
10142 (Fns_list_colors, Fns_perform_service, Fns_color_defined_p)
10143 (Fns_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
10144 (Fns_display_pixel_width, Fns_display_pixel_height)
10145 (Fns_display_usable_bounds, Fx_display_planes)
10146 (Fns_display_color_cells, Vns_icon_type_alist): Doc fixes.
10147
101482008-07-21 Ami Fischman <ami@fischman.org> (tiny change)
10149
10150 * print.c (print_object): Check print_depth before searching for
10151 circularities.
10152
101532008-07-21 Michael Albinus <michael.albinus@gmx.de>
10154
10155 * dbusbind.c (Fdbus_register_signal): Use sprintf + strcat instead
10156 only sprintf.
10157
101582008-07-21 Kenichi Handa <handa@m17n.org>
10159
10160 * ftfont.c (adjust_anchor): Check if DeltaValue is not NULL.
10161
101622008-07-20 Andreas Schwab <schwab@suse.de>
10163
10164 * syntax.c (find_start_pos, find_start_value)
10165 (find_start_value_byte, find_start_begv, find_defun_start)
10166 (back_comment, scan_sexps_forward): Use EMACS_INT for buffer positions.
10167
101682008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
10169
10170 * s/sol2-3.h: Insert contents of s/sol2.h.
10171 (LD_SWITCH_SYSTEM): Remove redundant definition.
10172 * s/sol2.h: Remove, unused.
10173
101742008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
10175
10176 * nsterm.m (ns_get_color): Recognize HSB,AHSB be synonyms for HSV,AHSV.
10177
101782008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
10179
10180 * Makefile.in (ns_appdir): Fix typo in find command.
10181
101822008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
10183
10184 * m/intel386.h (NO_REMAP): Do no define for USG, not used.
10185
10186 * s/usg5-4.h (LIBS_SYSTEM): Remove, system for which this was
10187 added not supported anymore.
10188
10189 * s/usg5-4-2.h (LIBS_SYSTEM):
10190 * s/sol2.h (LIBS_SYSTEM): Do not undefine.
10191
10192 * s/netbsd.h (GETPGRP_NO_ARG, N_TRELOFF):
10193 * s/lynxos.h (GETPGRP_NO_ARG):
10194 * s/hpux10-20.h (NO_SIOCTL_H):
10195 * s/gnu.h (GETPGRP_NO_ARG):
10196 * s/gnu-linux.h (NO_SIOCTL_H):
10197 * s/freebsd.h (GETPGRP_NO_ARG, N_TRELOFF):
10198 * s/cygwin.h (GETPGRP_NO_ARG):
10199 * s/irix6-5.h (LIBS_SYSTEM, GETPGRP_NO_ARG): Remove, unused.
10200 (C_DEBUG_SWITCH): Remove duplicate definition.
10201
10202 * m/ibms390.h: Remove boilerplate comments.
10203
10204 * sysdep.c (closedir): Use SOLARIS2 instead of sun && USG5_4.
10205
10206 * process.c (HAVE_SERIAL): Consolidate ifdefs.
10207 (wait_reading_process_output): Remove code for SunOS, platform not
10208 supported anymore. Use SOLARIS2 instead of sun.
10209
102102008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
10211
10212 * font.c (font_open_by_name): Under NS, default lface height to zero.
10213 (font_open_for_lface): Under NS, set size based on frame fontsize.
10214 * nsterm.m (EmacsView-changeFont:): Remove some commented code.
10215 * frame.c (x_set_frame_parameters): Remove HAVE_NS ifdef.
10216
102172008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
10218
10219 * nsterm.m (ns_antialias_text, ns_use_qd_smoothing)
10220 (ns_use_system_highlight_color): Switch these from DEFVAR_BOOL to
10221 DEFVAR_LISP and change all code accordingly to use Qt/Qnil instead of
10222 YES/NO.
10223 * nsterm.h (prevUseHighlightColor): Make a Lisp_Object.
10224 * nsfont.m (nsfont_draw): Treat ns_use_qd_smoothing as Lisp_Object.
10225 * Makefile.in (clean): Clear out build destination dir.
10226
102272008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
10228
10229 * Makefile.in (nsgui.h-related dependencies): Remove abbrev, xfns,
10230 xterm, xselect.
10231 * lisp.h: Remove declaration of hash_remove.
10232 * nsgui.h: Remove redefinitions of hash_remove.
10233 * fns.c (hash_remove): Rename to hash_remove_from_table.
10234
102352008-07-19 Seiji Zenitani <zenitani@mac.com>
10236
10237 * nsfont.m (nsfont_fmember_to_entity, nsfont_make_fontset_for_font):
10238 strdup() the family UTF8String before modifying it.
10239
102402008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
10241
10242 * nsterm.m (ns_maybe_dumpglyphs_background): Compare result from
10243 NS_FACE_BACKGROUND with 0 instead of nil.
10244 * nsfont.m (nsfont_draw): Same.
10245
102462008-07-19 Chong Yidong <cyd@stupidchicken.com>
10247
10248 * nsfns.m (ns_set_background_color): Fix crash.
10249
102502008-07-18 Chong Yidong <cyd@stupidchicken.com>
10251
10252 * Makefile.in (SOME_MACHINE_LISP): Remove ns-carbon-compat.elc.
10253
102542008-07-18 Dan Nicolaescu <dann@ics.uci.edu>
10255
10256 * puresize.h (BASE_PURESIZE): Increase to 1240000.
10257
102582008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10259
10260 * gtkutil.c: Include <config.h> instead of "config.h".
10261
10262 * lisp.h (Foverlay_buffer): Add EXFUN.
10263
10264 * process.c (create_process) [!WINDOWSNT && FD_CLOEXEC]: Wait for
10265 child process to complete child_setup. Undo 2005-09-21 change.
10266
10267 * s/darwin.h: Mention setsid after vfork.
10268
102692008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10270
10271 * Makefile.in (frame.o, keyboard.o, xdisp.o, xfaces.o):
10272 Depend on macgui.h.
10273
10274 * macfns.c (Fx_server_version): Don't use gestaltSystemVersionMajor,
10275 gestaltSystemVersionMinor, or gestaltSystemVersionBugFix.
10276
10277 * macterm.c (keycode_to_xkeysym_table): Add entries for f17, f18,
10278 and f19.
10279 [MAC_OSX] (fn_keycode_to_keycode_table): Likewise.
10280
10281 * macterm.h (gestaltSystemVersionMajor, gestaltSystemVersionMinor)
10282 (gestaltSystemVersionBugFix) [MAC_OS_X_VERSION_MAX_ALLOWED < 1040]:
10283 Remove enumerators.
10284
10285 * mactoolbox.c [USE_MAC_TSM] (mac_handle_text_input_event):
10286 Check if FACE_FROM_ID returns NULL.
10287
102882008-07-17 David Robinow <drobinow@gmail.com> (tiny change)
10289
10290 * w32inevt.c (change_frame_size): Remove extern declaration.
10291 (resize_event, maybe_generate_resize_event): Pass SAFE arg to
10292 change_frame_size.
10293
102942008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
10295
10296 * getloadavg.c: Revert last change (2008-07-15).
10297
102982008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
10299
10300 * Makefile.in: Replace emacsapp, emacsbindir, emacsappsrc variables
362654a6 10301 set here with ns_appdir, ns_appresdir, ns_appbindir, ns_appsrc set
aac0c6e3
MR
10302 from configure.
10303
103042008-07-17 Dan Nicolaescu <dann@ics.uci.edu>
10305
10306 * s/sol2.h:
10307 * s/sol2-4.h: Reorganize conditionals.
10308
10309 * ecrt0.c: Remove code depending on m68000, not used anymore.
10310
10311 * fns.c (hash_remove): Make static.
10312 * lisp.h (hash_remove): Don't prototype.
10313
10314 * m/ibmrs6000.h:
10315 * m/ibms390x.h:
10316 * m/macppc.h: Remove boilerplate comments.
10317
10318 * m/sparc.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, only used on
10319 Solaris, which does not need them.
10320
10321 * m/vax.h: Remove comments about unsupported systems.
10322
10323 * s/darwin.h: Reorganize ifdefs.
10324
103252008-07-17 Andreas Schwab <schwab@suse.de>
10326
10327 * s/cygwin.h (LIB_STANDARD_LIBSRC): Don't define.
10328
103292008-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
10330
10331 Use SDATA. Follow coding convention of placing operators at
10332 beginning of next line rather than end of previous line, and placing
10333 spaces around infix operators.
10334
10335 * Makefile.in: Undef LIB_STANDARD before defining it to silence warning
10336 in case it was defined already.
10337 USE @GNUSTEP_MAKEFILES@ rather than envvars.
10338 * nsterm.m (ns_term_init): Pass Qt and Qnil rather than YES/NO to
10339 ns_default.
10340 (applicationShouldTerminate, setValuesFromPanel): Use EQ to compare
10341 Lisp_Objects.
10342 * nsterm.h (Fx_display_grayscale_p, Fx_display_planes)
10343 (ns_defined_color, ns_color_to_lisp): Declare.
10344 * nsselect.m (ns_handle_selection_request, ns_handle_selection_clear)
10345 (Fns_own_selection_internal): Make the big ugly hack more explicit, so
10346 it's accepted even with USE_LISP_UNION_TYPE.
10347 * nsmenu.m (ns_update_menubar): Use EQ to compare Lisp_Objects.
10348 (update_frame_tool_bar): Remove apparently obsolete tests for
10349 non-integerness of f->tool_bar_lines.
10350 (windowShouldClose, addButton, clicked, runDialogAt): Make the big ugly
10351 hack more explicit, so it's accepted even with USE_LISP_UNION_TYPE.
10352 * nsfont.m (nsfont_driver): Use just 0 rather than an invalid cast.
10353 (nsfont_open): Don't confuse NULL for Qnil.
10354 * nsfns.m (ns_implicitly_set_icon_type): Use EQ to compare Lisp_Objects.
10355 * menu.h (find_and_call_menu_selection):
10356 * menu.c (find_and_call_menu_selection): Use just int for vector size.
10357 (find_and_return_menu_selection): Always return something.
10358 * frame.h: Include dispextern.h for Display_Info.
10359 (display_x_get_resource): Declare.
10360
103612008-07-16 Adrian Robert <Adrian.B.Robert@gmail.com>
10362
10363 * syntax.c: Remove stdio.h include accidentally introduced in
10364 Emacs.app commit.
10365 * Makefile.in: Change GNUSTEP to NS_IMPL_GNUSTEP, COCOA to
10366 NS_IMPL_COCOA.
10367 * keyboard.c (handle_async_input, input_available_signal): Remove
10368 BSD4_1 conditional code, introduced accidentally in Emacs.app commit.
10369
103702008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
10371
10372 * nsterm.m (lisp_to_mod): Use parse_solitary_modifier instead.
10373 (ns_lisp_to_color): Don't mess with internal Lisp data fields.
10374 (ns_term_init, ns_term_shutdown, initFrameFromEmacs, ns_list_fonts):
10375 Use SDATA.
10376
10377 * keymap.c: Remove all NS-specific code.
10378 (where_is_preferred_modifier, Vwhere_is_preferred_modifier): New vars.
10379 (preferred_sequence_p): Rename from ascii_sequence_p; pay attention to
10380 where_is_preferred_modifier, return a different value depending on how
10381 preferred is the binding.
10382 (where_is_internal): Adjust accordingly.
10383 (Fwhere_is_internal): Refresh where_is_preferred_modifier.
10384 Adjust to new preferred_sequence_p.
10385 (syms_of_keymap): Declare `where-is-preferred-modifier'.
10386 * keyboard.c (parse_solitary_modifier): Not static any more.
10387 * keyboard.h (parse_solitary_modifier): Declare.
10388
103892008-07-16 Andreas Schwab <schwab@suse.de>
10390
10391 * Makefile.in (SOME_MACHINE_LISP): Remove easy-mmode, fix spelling
10392 of easymenu.
10393
103942008-07-16 Chong Yidong <cyd@stupidchicken.com>
10395
10396 * xdisp.c (move_it_in_display_line): Account for word wrap, so
10397 that we don't move off the line.
10398
103992008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
10400
10401 * keyboard.c (Qsuper): Remove.
10402 (parse_menu_item): Don't call where_is_internal specially for NS.
10403
104042008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
10405
10406 * s/gnu-linux.h: Remove boilerplate comments.
10407
10408 * m/alpha.h (__ELF__): Consolidate conditions.
10409
10410 * m/m68k.h (linux): Use GNU_LINUX instead.
10411 Remove boilerplate comments.
10412
10413 * m/intel386.h: Undo refactoring from previous change.
10414 (LIB_STANDARD): All systems that define USG define LIB_STANDARD
10415 too, remove dead code.
10416 (linux): Use GNU_LINUX instead.
10417
104182008-07-16 Jason Rumney <jasonr@gnu.org>
10419
10420 * w32gui.h: Repeat 26 June changes lost by last change.
10421
104222008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
10423
10424 * systty.h: Remove code for Aix on 386, unsupported platform.
10425
10426 * s/ms-w32.h: Remove boilerplate comments.
10427 (fcloseall, fgetchar, flushall, fputchar, getw, putw): Remove, unused.
10428
10429 * s/gnu-linux.h (TERM): Remove support.
10430 (HAVE_SYSVIPC): Remove, unused.
10431 (A_TEXT_OFFSET, A_TEXT_SEEK, ADJUST_EXEC_HEADER): Remove, not used
10432 for this system.
10433
10434 * process.c: Remove support for IRIS, unused.
10435 Remove support for TERM, not relevant anymore.
10436
10437 * unexalpha.c (DEFAULT_ENTRY_ADDRESS): Remove, replace the only
10438 used with the definition.
10439
10440 * s/aix4-2.h (static): Do not undef.
10441
10442 * m/ibmrs6000.h: Remove code depending on USG5_4, this file is
10443 only used on Aix.
10444 (HAVE_SYSVIPC): Remove, unused.
10445
10446 * m/hp800.h (CANNOT_DUMP): Do not undef.
10447
10448 * m/alpha.h: Fix comment.
10449
10450 * s/usg5-4.h (HAVE_SYSVIPC): Remove, unused.
10451 (USG_SHARED_LIBRARIES): Remove, only used in unexec.c which is not
10452 used by this configuration.
10453 * emacs.c: Remove code depending on USG_SHARED_LIBRARIES.
10454 * unexec.c: Remove code depending on HPUX and
10455 USG_SHARED_LIBRARIES, not used with this file. Remove code
10456 depending on IRIS, unused. Remove if 0-ed code.
10457
10458 * s/template.h: Remove comments about static.
10459
10460 * sysdep.c: Remove code depending on NEED_PTEM_H, unused.
10461 Remove if 0-ed code.
10462 (baud_convert): Don't depend on BAUD_CONVERT, all definitions the
10463 were the same as the default.
10464 * s/vms.h (BAUD_CONVERT): Remove, same as the default.
10465 Remove boilerplate comments.
10466 * s/hpux10-20.h (BAUD_CONVERT): Remove, same as the default.
10467 (HAVE_SYSVIPC): Remove, unused.
10468 (LD_SWITCH_SYSTEM_TEMACS): Simplify, hp9000s700 not supported anymore.
10469
10470 * m/ia64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
10471 Remove boilerplate comments.
10472 * m/amdx86-64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
10473 Remove boilerplate comments.
10474 * m/ibms390x.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
10475 Remove boilerplate comments.
10476 * lisp.h (PNTR_COMPARISON_TYPE): Define it unconditionally.
10477
10478 * m/intel386.h (DATA_SEG_BITS): Remove definitions, only used on
10479 USG systems which do not use DATA_SEG_BITS.
10480 Refactor code. Remove boilerplate comments.
10481
10482 * m/ibms390.h:
10483 * m/m68k.h:
10484 * s/bsd-common.h:
10485 * s/cygwin.h:
10486 * s/darwin.h:
10487 * s/freebsd.h:
10488 * s/gnu.h:
10489 * s/msdos.h: Remove boilerplate comments.
10490
10491 * m/iris4d.h: Remove boilerplate comments and code for systems that
6873acca 10492 do not use this file.
aac0c6e3
MR
10493 (IRIS_4D): Remove, unused.
10494
10495 * m/mips.h: Remove boilerplate comments and code for systems that
6873acca 10496 do not use this file.
aac0c6e3
MR
10497 (SIGN_EXTEND_CHAR):
10498 * m/arm.h (SIGN_EXTEND_CHAR): Remove, unused.
10499 * unexmips.c: Remove file, unused.
10500
10501 * editfns.c (Fuser_full_name): Replace the only use of
10502 USER_FULL_NAME with its value.
10503 * config.in: Regenerate.
10504
105052008-07-16 David Reitter <david.reitter@gmail.com>
10506
10507 * Makefile.in: Add ns-win, ns-carbon-compat, easy-mmode and
10508 easy-menu to SOME_MACHINE_LISP for the new NeXTstep port.
10509
105102008-07-16 Glenn Morris <rgm@gnu.org>
10511
10512 * emacs.c (system-type): Doc fix.
10513
105142008-07-15 Stefan Monnier <monnier@iro.umontreal.ca>
10515
10516 * keyboard.c (parse_menu_item): Don't use cachelist, even under NS.
10517 If the cache doesn't work, let's fix it, rather than work around it.
10518
105192008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
10520
10521 * Makefile.in: Correct additions for nsfont.o in last commit.
10522 * nsfont.m: New file (forgot last commit).
10523
105242008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
10525
10526 * callproc.c (set_initial_environment): Initialize
10527 Vprocess_environment under CANNOT_DUMP (fixes crash when
10528 batch-compiling for bootstrap).
10529
105302008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
4e2af782 10531 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
aac0c6e3
MR
10532
10533 (make_initial_frame): Call init_frame_faces(f) in CANNOT_DUMP case --
10534 fix crash due to different init order.
10535
105362008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
10537
10538 Changes and additions for NeXTstep windowing system (Cocoa and
10539 GNUstep) support.
10540
10541 * Makefile.in:
10542 * config.in: Support defines and build commands for NS port.
10543 * blockinput.h (BLOCK_INPUT, UNBLOCK_INPUT, TOTALLY_UNBLOCK_INPUT)
10544 (UNBLOCK_INPUT_TO): Don't use under NS unless EXPERIMENTAL_CONTROL_G.
10545 * dispextern.h: Include nsgui.h and add needed typedefs under NS
10546 windowing.
10547 (struct face): Add synth_ital field.
10548 * dispnew.c: Include nsterm.h when compiling under NS windowing.
10549 (init_display): Initialize Vinitial_window_system to "ns" when so
10550 compiled.
10551 * emacs.c: Include GSConfig.h when compiling under GNUstep.
10552 (display_arg): Use under NS.
10553 (main): Under NS, allocate autorelease pool and handle command line
10554 args. Move syms_of_xmenu() call under #ifdef HAVE_X_WINDOWS.
10555 (standard_args): Add NS-specific args.
10556 (shut_down_emacs): Shut down NS terminal if compiled under NS.
10557 * font.c (DEFAULT_ENCODING): New variable.
10558 (font_find_for_lface): Use it.
10559 (syms_of_font): Load syms_of_nsfont under NS.
10560 * font.h: Declare nsfont_driver when compiled under NS.
10561 * fontset.c: When compiling under NS, include nsterm.h.
10562 (fontset_from_font): Autoconstruct fontset under NS.
10563 * frame.c (various): Under NS, include nsterm.h, add Qns window system
10564 symbol, document and use it.
10565 (do_switch_frame): When for_deletion under Cocoa, add
10566 Fraise_frame(Qnil).
10567 (x_set_frame_parameters): Ensure font attribute changes are picked up.
10568 (x_get_arg): Allow "yes" and "no" as boolean values.
10569 (syms_of_frame): Declare Qns. Init Vdefault_frame_scroll_bars to
10570 Qright under Cocoa.
10571 (focus-follows-mouse): Default to 0 under NS.
10572 * frame.h (enum output_method): Add output_ns.
10573 (external_tool_bar, external_menu_bar, FRAME_EXTERNAL_TOOLBAR)
10574 (FRAME_EXTERNAL_MENU_BAR): Use under NS.
10575 (FRAME_WINDOW_P): NS-specific definition.
10576 * fringe.c (max_used_fringe_bitmap): Make public.
10577 * getloadavg.c (mach/mach.h): Include it under NeXT descendant OS's.
10578 (getloadavg): Use NeXT code under descendant OS's.
10579 * image.c (includes and header section, x_create_bitmap_from_data)
10580 (x_create_bitmap_from_file, free_bitmap_record, image_background)
10581 (image_background_transparent, x_clear_image_1)
10582 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
10583 (Create_Pixmap_From_Bitmap_Data, xpm_load_image, lookup_rgb_color)
10584 (x_to_xcolors, x_from_xcolors, x_disable_image)
10585 (x_build_heuristic_mask, syms_of_image): Add NS support parallel to
10586 other GUIs, including XPM support using code originally written for
10587 Carbon GUI.
10588 (png_load, jpeg_load, tiff_load, gif_load): Add implementations
10589 using NS API.
10590 (image_ascent): Use font metrics macros instead of direct struct field
10591 access.
10592 * keyboard.c (includes): Add nsterm.h when compiling under NS.
10593 (kbd_buffer_get_event): Handle NS as other GUI windowing systems.
10594 Also, handle NS as GTK for menu bar purposes.
10595 (make_lispy_event): Handle NS as other GUI windowing systems, and as X
10596 toolkit where they differ.
10597 (parse_menu_item): Prefer keybindings using 'super' modifier. Also,
10598 use cachelist, still needed under NS.
10599 * keyboard.h (ENCODE_MENU_STRING, XtPointer, Boolean): Handle as NTGUI.
10600 (struct widget_value): Define it here for menu.c.
10601 * keymap.c (includes): Include modifier internals.
10602 (lisp_to_mod, modifier_sequence_p): New functions, compiled only under
10603 NS.
10604 (where_is_internal, Fwhere_is_internal): When compiled under NS, add
10605 support for preferring sequences using certain modifiers, specified by
10606 the FIRSTONLY argument.
10607 * lisp.h (hash_remove): Rename to avoid name clash when compiling
10608 under NS GNUstep implementation.
10609 (USE_LSB_TAG): Use it under Cocoa when compiling under NS.
10610 * lread.c (init_lread): Treat NS as HAVE_CARBON for turn_off_warning.
10611 * menu.c: Include nsterm.h under NS.
10612 (single_menu_item, parse_single_submenu, xmalloc_widget_value)
10613 (free_menubar_widget_tree_value, update_submenu_strings)
10614 (find_and_call_menu_selection): Treat NS as X and NT.
10615 (find_and_return_menu_selection): New function, used for popup menus.
10616 * nsgui.h:
10617 * nsterm.h:
10618 * nsfns.m:
10619 * nsimage.m:
10620 * nsmenu.m:
10621 * nsselect.m:
10622 * nsterm.m: New files.
10623 * process.c (wait_reading_process_output): Under NS, call ns_select()
10624 instead of plain select().
10625 * syntax.c (char_quoted): Under NS, avoid a crash when called near
10626 beginning of buffer.
10627 * sysselect.h (init_process): Rename when compiling under Cocoa to
10628 avoid name conflict.
10629 * termhooks.h (display_info): Add ns_display_info to union.
10630 * terminal.c (Fterminal_live_p): Add ns to terminal types.
10631 * terminfo.c (UP, BC, PC): Don't declare when compiling under NS in
10632 COCOA environment.
10633 * unexnext.c: Update to work with mach API on Mac OS X, and to use new
10634 unexec() signature. (Note, this will dump, but the resulting file
10635 crashes; unexosx is used instead; keeping around for reference and
10636 possible aid in getting dump working under GNUstep.)
10637 * w32gui.h (button_type, widget_value): Remove definitions (now in
10638 keyboard.h).
10639 * window.c: Include nsterm.h when compiling under NS.
10640 * xdisp.c (includes): Include nsterm.h when compiling under NS.
10641 (set_frame_menubar, update_menu_bar, display_menu_bar): Handle NS as
10642 other GUI windowing systems.
10643 (update_tool_bar, redisplay_tool_bar, redisplay_window): Handle NS as
10644 GTK.
10645 (x_consider_frame_title): Under NS, set icon type and frame
10646 modified-state indicator; use ns_set_name_as_filename() when using
10647 formatted title.
10648 (update_window_cursor): Make public when compiling under NS.
10649 (display_hourglass_p, syms_of_xdisp, hourglass_shown_p)
10650 (hourglass_atimer, Vhourglass_delay
10651 * xfaces.c (header section, init_frame_faces, clear_font_table)
10652 (defined_color, unload_color, x_face_list_fonts)
10653 (prepare_face_for_display): Add NS support parallel to other GUIs.
10654 Emulate GCs like other non-X GUIs.
10655 (split_font_name): Don't lowercase font name under NS.
10656 (merge_face_ref, Finternal_set_lisp_face_attribute): Support stippling
10657 under NS.
10658 * s/darwin.h: Add support for compilation under NS.
10659
106602008-07-15 Jason Rumney <jasonr@gnu.org>
10661
10662 * w32fns.c (Fx_create_frame): Remove duplicate unwind_protect.
10663 (w32_show_hourglass): Rename from show_hourglass.
10664 (w32_hide_hourglass): Rename from hide_hourglass.
10665 (DEFAULT_HOURGLASS_DELAY): Revert from last change.
10666 (Vhourglass_delay): Declare extern.
10667 (hourglass_started): Remove.
10668
10669 * xdisp.c (Vhourglass_delay): Remove static.
10670 (hourglass_started, start_hourglass, cancel_hourglass):
10671 Don't include these versions on WINDOWSNT.
10672
106732008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
10674
10675 * dispextern.h (hourglass_shown_p, hourglass_atimer): New extern
10676 variables (formerly in xfns.c).
10677 (show_hourglass, hide_hourglass): New prototypes (same).
10678 * xdisp.c (display_hourglass_p, hourglass_shown_p, hourglass_atimer)
10679 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY): New variables (formerly
10680 in xfns.c).
10681 (syms_of_xdisp): Declare/initialize display-hourglass,
10682 hourglass-delay. Initialize hourglass_atimer, hourglass_shown_p.
10683 (hourglass_started, start_hourglass, cancel_hourglass): New functions,
10684 formerly in xfns.c.
10685 * xfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
10686 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
10687 (start_hourglass, cancel_hourglass): Remove.
10688 (show_hourglass, hide_hourglass): Remove prototypes and static
10689 modifiers.
10690 (syms_of_xfns): Remove display-hourglass, hourglass-delay,
10691 hourglass_atimer, hourglass_shown_p declaration/initialization.
10692 * macfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
10693 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
10694 (start_hourglass, cancel_hourglass): Remove.
10695 (show_hourglass, hide_hourglass): Remove prototypes and static
10696 modifiers.
10697 (syms_of_macfns): Remove display-hourglass, hourglass-delay,
10698 hourglass_atimer, hourglass_shown_p declaration/initialization.
10699 * w32fns.c (display_hourglass_p, Vhourglass_delay)
10700 (DEFAULT_HOURGLASS_DELAY): Remove.
10701 (syms_of_w32fns): Remove display-hourglass, hourglass-delay,
10702 hourglass_shown_p declaration/initialization.
10703
107042008-07-14 Jason Rumney <jasonr@gnu.org>
10705
10706 * w32fns.c (w32_get_arg): Remove wrapper function.
10707 (w32_createwindow, x_icon, x_create_tip_frame): Use x_get_arg
10708 directly.
10709 (Fx_create_frame): Sync with xfns.c. Use x_get_arg directly.
10710
107112008-07-14 Kenichi Handa <handa@m17n.org>
10712
10713 * xfont.c (xfont_open): Add workaround for X's bug.
10714
107152008-07-14 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
10716
10717 * fontset.c: Include <stdio.h> unconditionally.
10718
107192008-07-13 Michael Albinus <michael.albinus@gmx.de>
10720
10721 * dbusbind.c (Fdbus_register_signal): Allow also signal arguments
10722 for filtering.
10723
107242008-07-13 Dan Nicolaescu <dann@ics.uci.edu>
10725
10726 * s/vms.h: Use __GNUC__ instead of _GNUC_.
10727
10728 * m/macppc.h:
10729 * m/alpha.h: Use GNU_LINUX instead of LINUX. Reorganize conditionals.
10730
10731 * m/ibms390x.h (XINT, XUINT): Don't define, same as the default
10732 (SPECIAL_EMACS_INT):
10733 * m/ia64.h (SPECIAL_EMACS_INT):
10734 * m/amdx86-64.h (SPECIAL_EMACS_INT):
10735 * s/gnu.h (NLIST_STRUCT):
10736 * s/aix4-2.h (X11R5_INHIBIT_I18N):
10737 * s/gnu-linux.h (LINUX):
10738 * s/msdos.h (HAVE_FACES):
10739 * s/ms-w32.h (HAVE_FACES): Don't define, unused.
10740
10741 * systty.h:
10742 * sysdep.c (setup_pty): Don't depend on SYSV_PTYS, it is not used
10743 anymore.
10744
107452008-07-12 Dan Nicolaescu <dann@ics.uci.edu>
10746
10747 * syswait.h: Remove old if 0 code. Do not define WAITTYPE, it was
10748 always defined as int.
10749
10750 * s/netbsd.h (HAVE_UNION_WAIT, HAVE_WAIT_HEADER, WAIT_USE_INT):
10751 * s/gnu.h (HAVE_WAIT_HEADER, WAIT_USE_INT, HAVE_UNION_WAIT):
10752 * s/gnu-linux.h (HAVE_WAIT_HEADER):
10753 * s/freebsd.h (HAVE_WAIT_HEADER):
10754 * s/bsd-common.h (HAVE_UNION_WAIT):
10755 * s/aix4-2.h (HAVE_WAIT_HEADER):
10756 * m/mips.h (HAVE_UNION_WAIT):
10757 * s/usg5-4.h (HAVE_WAIT_HEADER, WAITTYPE): Do not define, not used.
10758 (COFF, static): Do not define, they are undefined later in the file.
10759
10760 * process.c (update_status): Don't use a union.
10761 (status_convert):
10762 (sigchld_handler): Use int instead of WAITTYPE.
10763
107642008-07-12 Chong Yidong <cyd@stupidchicken.com>
10765
10766 * indent.c (Fvertical_motion): Restore hscroll before moving to
10767 goal column.
10768
107692008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
10770
10771 * lisp.h: Remove left over code.
10772
107732008-07-11 Andreas Schwab <schwab@suse.de>
10774
10775 * lisp.h: Fix logic in last change.
10776
10777 * menu.h: New file.
10778 * menu.c: Include it.
10779 * xmenu.c: Likewise.
10780 * Makefile.in: Update dependencies.
10781
107822008-07-11 Kenichi Handa <handa@m17n.org>
10783
10784 * fontset.c (fontset_from_font): Cancel the previous change.
10785
107862008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
10787
10788 * lisp.h:
10789 * w32heap.c:
10790 * emacs.c:
10791 * alloc.c: Replace all references of NO_UNION_TYPE with
10792 USE_LISP_UNION_TYPE.
10793
10794 * m/xtensa.h (NO_UNION_TYPE):
10795 * m/vax.h (NO_UNION_TYPE):
10796 * m/template.h (NO_UNION_TYPE):
10797 * m/sparc.h (NO_UNION_TYPE):
10798 * m/mips.h (NO_UNION_TYPE):
10799 * m/macppc.h (NO_UNION_TYPE):
10800 * m/m68k.h (NO_UNION_TYPE):
10801 * m/iris4d.h (NO_UNION_TYPE):
10802 * m/intel386.h (NO_UNION_TYPE):
10803 * m/ibms390x.h (NO_UNION_TYPE):
10804 * m/ibms390.h (NO_UNION_TYPE):
10805 * m/ibmrs6000.h (NO_UNION_TYPE):
10806 * m/ia64.h (NO_UNION_TYPE):
10807 * m/hp800.h (NO_UNION_TYPE):
10808 * m/arm.h (NO_UNION_TYPE):
10809 * m/amdx86-64.h (NO_UNION_TYPE):
10810 * m/alpha.h (NO_UNION_TYPE): Remove definition, all platform were
10811 defining it the same.
10812
108132008-07-10 Chong Yidong <cyd@stupidchicken.com>
10814
10815 * xdisp.c (move_it_to): Backtrack if past the edge of a wrapped line.
10816
108172008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
10818
10819 * fileio.c:
50426a04 10820 * sysdep.c:
aac0c6e3
MR
10821 * systty.h:
10822 * m/ibmrs6000.h:
10823 * m/iris4d.h:
10824 * s/aix4-2.h:
10825 * s/freebsd.h:
10826 * s/gnu-linux.h:
10827 * s/hpux10-20.h:
10828 * s/hpux11.h:
10829 * s/netbsd.h:
10830 * s/sol2-3.h:
10831 * s/sol2-4.h:
10832 * s/sol2.h:
10833 * s/usg5-4.h:
10834 * s/vms.h: Remove references to unused variables.
10835
108362008-07-10 Andreas Schwab <schwab@suse.de>
10837
10838 * ftfont.c (ftfont_resolve_generic_family): Remove foundry from
10839 pattern before matching the generic family.
10840
108412008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
10842
10843 * unexec.c:
10844 * s/vms.h:
10845 * s/usg5-4-2.h:
10846 * s/sol2-5.h:
10847 * s/freebsd.h:
10848 * s/darwin.h: Remove dead code.
10849
10850 * m/template.h:
10851 * m/sparc.h:
10852 * m/mips.h:
10853 * m/m68k.h:
10854 * m/iris4d.h:
10855 * m/intel386.h:
10856 * m/ibms390x.h:
10857 * m/ibms390.h:
10858 * m/ia64.h:
10859 * m/hp800.h:
10860 * m/arm.h:
10861 * m/amdx86-64.h: Remove dead code and references to unused
10862 and compiler defined symbols.
10863
10864 * unexmips.c:
10865 * unexelf.c: Remove references to desupported systems.
10866
10867 * m/powermac.h: Remove file, it is now identical to m/macppc.h.
10868
10869 * m/powermac.h: Remove boilerplate comments.
10870 (NO_REMAP): Remove unused definition.
10871
10872 * m/macppc.h (UNEXEC, NO_TERMIO): Don't define, the s/ files
10873 define them.
10874
108752008-07-10 Kenichi Handa <handa@m17n.org>
10876
10877 * xfont.c (xfont_open): Log the reason of failure.
10878
108792008-07-09 Stefan Monnier <monnier@iro.umontreal.ca>
10880
10881 * fontset.c (fontset_get_font_group):
10882 * font.c (font_check_otf): Specify argument types.
10883
108842008-07-09 Kenichi Handa <handa@m17n.org>
10885
10886 * coding.c (detect_coding_utf_8): Set detect_info->found only when
10887 non-ASCII char is found.
10888
10889 * fontset.c (fontset_compare_rfontdef): Fix plus/minus.
10890 (reorder_font_vector): Change the arg preferred_family to font.
10891 Prefer the spec matching with font.
10892 (fontset_get_font_group): New function.
10893 (fontset_find_font): Change the format of an element of a realized
10894 fontset. Use fontset_get_font_group.
10895 (fontset_font): Try the current fontset, the default fontset, the
10896 fallbacks of the current fontset, and the fallbacks of the default
10897 fontset in this order.
10898 (face_for_char): Delete the shortcut to use the current font.
10899 (fontset_from_font): Don't set fonts for Latin in the fontset.
10900
10901 * font.h (font_make_object, font_match_p): Adjust prototypes.
10902
10903 * ftfont.h [FT_BDF_H]: Include FT_BDF_H.
10904
10905 * font.c (font_make_object): New arg entity and pixelsize.
10906 (font_check_otf_features, font_check_otf): New functions.
10907 (font_match_p): Check :lang, :script, and :otf properties.
10908
10909 * xfont.c (xfont_open): Adjust it for the change of
10910 font_make_object.
10911 (xfont_text_extents): Fix initial setting of metrics.
10912
10913 * ftfont.c (struct ftfont_info): New member index, delete member
10914 fc_charset_idx. Make the member order compatible with struct
10915 xftfont_info.
10916 (fc_charset_table): Change charset names to registry names.
10917 (ftfont_pattern_entity): Delete the args registry and
10918 fc_charset_idx. Change the value of :font-entity property
10919 to (FONTNAME . INDEX). Always set :registry property to
10920 `iso10646-1'.
10921 (struct ftfont_cache_data): New struct.
10922 (ftfont_lookup_cache): New arg for_face.
10923 (ftfont_get_fc_charset, ftfont_get_otf): New functions.
10924 (ftfont_driver): Set the member otf_capability.
10925 (ftfont_get_charset): Adjust it for the change of
10926 fc_charset_table.
10927 (OTF_TAG_SYM): New macro.
10928 (ftfont_spec_pattern): Delete the arg fc_charset_idx. Adjust it
10929 for the change of fc_charset_table.
10930 (ftfont_list): Adjust it for the change of ftfont_spec_pattern and
10931 ftfont_pattern_entity. Add FC_INDEX to objset.
10932 (ftfont_match): Adjust it for the change of ftfont_spec_pattern
10933 and ftfont_pattern_entity.
10934 (ftfont_open): Adjust it for the change of ftfont_lookup_cache,
10935 font_make_object, struct ftfont_info.
10936 (ftfont_has_char): Use ftfont_get_fc_charset.
10937 (ftfont_otf_features, ftfont_otf_capability): New functions.
10938 (ftfont_shape): Use ftfont_get_otf.
10939 (ftfont_text_extents): Fix initial setting of metrics.
10940
10941 * xftfont.c (struct xftfont_info): New member ft_size. Make the
10942 member order compatible with struct ftfont_info.
10943 (xftfont_open): Add FC_CHARSET to the pattern. Set
10944 xftfont_info->ft_size. Don't unlock the face. Check BDF
10945 properties if appropriate.
10946 (xftfont_close): Unlock the face.
10947 (xftfont_anchor_point, xftfont_shape): Deleted.
10948 (syms_of_xftfont): Don't set members anchor_point and shape of
10949 xftfont_driver.
10950
10951 * w32uniscribe.c (uniscribe_open): Adjust it for the change of
10952 font_make_object.
10953
10954 * w32font.c (w32font_open): Adjust it for the change of
10955 font_make_object.
10956 (w32font_open_internal): Don't set properties of font_object here.
10957
109582008-07-08 Chong Yidong <cyd@stupidchicken.com>
10959
10960 * macfns.c (x_create_tip_frame):
10961 * w32fns.c (x_create_tip_frame):
10962 * xfns.c (x_create_tip_frame): Pass parameter argument to
10963 face-set-after-frame-default.
10964
10965 * xfaces.c (Finternal_merge_in_global_face): Save merged
10966 attributes for the default face back into the face vector.
10967
109682008-07-08 Andreas Schwab <schwab@suse.de>
10969
10970 * fontset.h: Declare fontset_from_font. Don't declare
10971 new_fontset_from_font and fontset_from_font_name.
10972 * xterm.c: Include "fontset.h".
10973 * Makefile.in (xterm.o): Update dependencies.
10974
109752008-07-08 Glenn Morris <rgm@gnu.org>
10976
10977 * m/sparc.h: Define __sparc__ rather than sparc. (Bug#507.)
10978 * alloc.c, ecrt0.c: Use __sparc__ rather than sparc.
10979
109802008-07-07 Chong Yidong <cyd@stupidchicken.com>
10981
10982 * frame.c (Qinhibit_face_set_after_frame_default): Var deleted.
10983 (x_set_frame_parameters): Don't bind it.
10984
109852008-07-07 Juanma Barranquero <lekktu@gmail.com>
10986
10987 * w32fns.c (map_w32_filename): Declare extern.
10988
109892008-07-07 Jason Rumney <jasonr@gnu.org>
10990
10991 * w32term.c (WS_EX_LAYERED): Define if not already.
10992
109932008-07-06 Chong Yidong <cyd@stupidchicken.com>
10994
10995 * xfaces.c (set_font_frame_param): Don't try to set the font
10996 parameter if it is still unspecified in the lface.
10997
109982008-07-05 Chong Yidong <cyd@stupidchicken.com>
10999
11000 * xfaces.c (Finternal_merge_in_global_face): Don't realize default
11001 face if it didn't already exist.
11002
11003 * xdisp.c (try_window_id): Give up if word-wrapping is on.
11004
110052008-07-05 Andreas Schwab <schwab@suse.de>
11006
11007 * xdisp.c (get_it_property): Move out of HAVE_WINDOW_SYSTEM section.
11008
110092008-07-05 Chong Yidong <cyd@stupidchicken.com>
11010
11011 * xdisp.c (IT_OVERFLOW_NEWLINE_INTO_FRINGE): Turn it off if
11012 word-wrapping.
11013 (IT_DISPLAYING_WHITESPACE): New macro.
11014 (move_it_in_display_line_to): Handle MOVE_TO_X requests properly
11015 when word-wrapping. Simplify word-wrapping logic. Use correct
11016 pixel positions when saving copies of the iterator.
11017 (display_line): Use proper wrap point if the last character on a
11018 line was preceded by whitespace.
11019
110202008-07-04 Stefan Monnier <monnier@iro.umontreal.ca>
11021
11022 * Makefile.in (${etc}DOC): Depend on ${lisp} rather than ${shortlisp}.
11023
110242008-07-04 Kenichi Handa <handa@m17n.org>
11025
11026 * fns.c (Fstring_to_unibyte): Delete the arg ACCEPT-LATIN-1.
11027
11028 * lisp.h: EXFUN adjusted for the change of Fstring_to_unibyte.
11029
110302008-07-02 Jason Rumney <jasonr@gnu.org>
11031
11032 * xfns.c (syms_of_xfns): Only define x-select-font when both
2ae37cf0 11033 HAVE_FREETYPE and USE_GTK.
aac0c6e3
MR
11034
11035 * xdisp.c (next_element_from_display_vector): Move assignment out
11036 of if statement.
11037
110382008-07-02 Toru Tsuneyoshi <t_tuneyosi@hotmail.com>
11039
11040 * lisp.h (Qdelete_file, Qdelete_directory): Declare extern.
11041
11042 * fileio.c (delete_by_moving_to_trash, Qmove_file_to_trash): New vars.
11043 (syms_of_fileio): Initialize and export them.
11044 (Fdelete_directory, Fdelete_file): Optionally delete via trash.
11045
11046 * w32fns.c (FOF_NO_CONNECTED_ELEMENTS): Define if not already.
11047 (Fsystem_move_file_to_trash): New function.
11048 (syms_of_w32fns): Export it to lisp.
11049
110502008-07-01 Jason Rumney <jasonr@gnu.org>
11051
11052 * w32font.c (w32font_text_extents): Don't count overhang as part
11053 of width.
11054
110552008-06-30 Miles Bader <miles@gnu.org>
11056
11057 * dispextern.h (struct glyph, struct it, struct iterator_stack_entry):
11058 Add `avoid_cursor_p' field.
11059
11060 * xdisp.c (push_it, pop_it): Save/restore avoid_cursor_p field.
11061 (set_cursor_from_row): Skip glyphs with avoid_cursor_p set.
11062 (append_glyph, append_composite_glyph, produce_image_glyph)
11063 (append_stretch_glyph): Initialize avoid_cursor_p.
11064 (get_it_property): Rename from `get_line_height_property'.
11065 (x_produce_glyphs): Use get_it_property.
11066 (handle_line_prefix, push_display_prop): New functions.
11067 (display_line, move_it_in_display_line_to): Handle line/wrap prefixes.
11068 (Vwrap_prefix, Qwrap_prefix, Vline_prefix, Qline_prefix):
11069 New variables.
11070 (syms_of_xdisp): Initialize them.
11071
110722008-06-30 Kenichi Handa <handa@m17n.org>
11073
11074 * xftfont.c (xftfont_open): Don't call FcConfigSubstitute and
11075 XftDefaultSubstitute (they are called in XftFontMatch).
11076 (xftfont_open): Fix args to ftfont_font_format.
11077
11078 * ftfont.c (fc_charset_table): New member lang.
11079 (ftfont_resolve_generic_family): New arg pattern.
60612c8f 11080 (ftfont_spec_pattern): Check fc_charset_table[]->lang.
aac0c6e3
MR
11081 (ftfont_list): Call ftfont_resolve_generic_family with `pattern'.
11082 (ftfont_open): Fix args to ftfont_font_format.
11083 (ftfont_font_format): New arg filename.
11084
110852008-06-30 Chong Yidong <cyd@stupidchicken.com>
11086
11087 * xfaces.c (Finternal_merge_in_global_face): If default face was
11088 modified, realize it again. Update the font face attribute.
11089
110902008-06-29 Jason Rumney <jasonr@gnu.org>
11091
11092 * w32term.c (x_set_frame_alpha): Fix logic.
11093
110942008-06-29 Kenichi Handa <handa@m17n.org>
11095
11096 * fontset.c (Finternal_char_font): Return font-object instead of
11097 font-name.
11098
11099 * composite.c (get_composition_id): Fix the width calculation for TAB.
11100
111012008-06-29 Stefan Monnier <monnier@iro.umontreal.ca>
11102
11103 * indent.c (Fvertical_motion): Properly handle float column arg.
11104
111052008-06-28 Jason Rumney <jasonr@gnu.org>
11106
11107 * w32term.c (pfnGetFontUnicodeRanges): Remove unused function pointer.
11108 (pfnSetLayeredWindowAttributes): New function pointer.
11109 (w32_initialize): Initialize it when supported.
11110 (x_set_frame_alpha): New function.
11111
11112 * w32fns.c (Fx_create_frame): Initialize frame parameter `alpha'.
11113 (w32_frame_parm_handlers): Set alpha handler.
11114
11115 * frame.c (x_set_alpha) [HAVE_NTGUI]: Call x_set_frame_alpha.
11116
111172008-06-27 Jason Rumney <jasonr@gnu.org>
11118
11119 * w32fns.c (x_to_w32_font, w32_to_x_font, x_to_w32_weight)
11120 (w32_to_x_weight, w32_to_all_x_charsets): Remove obsolete functions.
11121 (w32_to_x_charset, x_to_w32_charset)
11122 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
11123 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
11124 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
11125 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
11126 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
11127 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
11128 (Qw32_charset_mac, Vw32_charset_info_alist): Move to w32font.c.
11129 (Qw32_charset_unicode): Remove.
11130 (syms_of_w32fns): Update for above changes.
11131
11132 * w32font.c (w32_to_x_charset, x_to_w32_charset)
11133 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
11134 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
11135 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
11136 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
11137 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
11138 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
11139 (Qw32_charset_mac, Vw32_charset_info_alist): Move from w32fns.c.
11140 (syms_of_w32font): Update for above changes.
11141
111422008-06-27 Dan Nicolaescu <dann@ics.uci.edu>
11143
11144 * s/usg5-4.h: Fix previous change: keep the correct branch of a
11145 removed #if.
11146 (USG_SHARED_LIBRARIES): Remove duplicate definition.
11147
111482008-06-26 Juanma Barranquero <lekktu@gmail.com>
4e2af782 11149 Eli Zaretskii <eliz@gnu.org>
aac0c6e3
MR
11150
11151 * makefile.w32-in (LOCAL_FLAGS):
11152 Don't include WINDOWSNT, DOS_NT and _UCHAR_T.
11153
11154 * sysdep.c (_spawnlp, _getpid):
11155 Declare with explicit _cdecl instead of _CRTAPI1.
11156
11157 * editfns.c (Fget_internal_run_time):
11158 Check for WINDOWSNT with #ifdef, not #if.
11159
111602008-06-26 Jason Rumney <jasonr@gnu.org>
11161
11162 * w32font.h (FONT_HANDLE, FONT_TEXTMETRIC): New macros.
11163
11164 * w32term.c (x_draw_glyph_string_foreground)
11165 (x_draw_composite_glyph_string_foreground): Sync with xterm.c.
11166 Use FONT_HANDLE macro.
11167 (x_draw_glyph_string): Use FONT_TEXTMETRIC macro.
11168
11169 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
11170 (uniscribe_encode_char): Use FONT_HANDLE macro.
11171
11172 * w32font.c (Fx_select_font): Use FONT_HANDLE macro.
11173 (w32font_text_extents): Use precast w32_font.
11174 (w32font_close): Free cached metrics.
11175 (w32font_open_internal): Allocate space for name on stack.
11176
111772008-06-26 Chong Yidong <cyd@stupidchicken.com>
11178
11179 * xdisp.c (extend_face_to_end_of_line): Fix last change.
11180
111812008-06-26 Jason Rumney <jasonr@gnu.org>
11182
11183 * w32term.h (FONT_AVG_WIDTH): Remove obsolete macro.
11184 (CP_8BIT, CP_UNICODE, CP_UNKNOWN): Remove obsolete constants.
11185
111862008-06-26 Juanma Barranquero <lekktu@gmail.com>
11187
11188 * Makefile.in (SOME_MACHINE_OBJECTS): Remove w32bdf.o.
11189
111902008-06-26 Jason Rumney <jasonr@gnu.org>
11191
11192 * w32bdf.c, w32bdf.h: Remove obsolete files.
11193
11194 * makefile.w32-in: Remove refs to w32bdf.h and w32bdf.c.
11195
11196 * w32gui.h: Don't include w32bdf.h.
11197 (XCharStruct, enum w32_char_font_type, W32FontStruct):
11198 Remove obsolete font support.
11199
11200 * w32font.h (struct w32font_info): Remove compat_w32_font.
11201 Add hfont member.
11202 (FONT_COMPAT): Remove obsolete macro.
11203
11204 * w32font.c (w32font_close): Remove compat code. Delete hfont member.
11205 (w32font_encode_char, w32font_text_extents): Use new hfont member.
11206 (w32font_open_internal): Remove compat code. Set new hfont member.
11207 (Fx_select_font): Use new hfont member.
11208
11209 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
11210 (uniscribe_encode_char): Use new hfont member.
11211
11212 * w32term.c (x_draw_glyph_string_foreground)
11213 (x_draw_composite_glyph_string_foreground): Use new hfont member.
11214 (x_draw_glyph_string): Use metrics in w32font_info.
11215
112162008-06-26 Kenichi Handa <handa@m17n.org>
11217
11218 * xdisp.c (handle_auto_composed_prop): Fix for the terminal case.
11219
112202008-06-26 Dan Nicolaescu <dann@ics.uci.edu>
11221
11222 * unexnext.c:
11223 * m/ews4800.h:
11224 * m/hp9000s300.h:
11225 * m/ibm370aix.h:
11226 * m/mips-siemens.h:
11227 * m/ncr386.h:
11228 * m/next.h:
11229 * m/pmax.h:
11230 * m/powerpcle.h:
11231 * m/tandem-s2.h:
11232 * s/386bsd.h:
11233 * s/bsd386.h:
11234 * s/bsd4-1.h:
11235 * s/bsd4-2.h:
11236 * s/bsdos2-1.h:
11237 * s/bsdos2.h:
11238 * s/bsdos3.h:
11239 * s/bsdos4.h:
11240 * s/nextstep.h:
11241 * s/ultrix4-3.h:
11242 * s/usg5-0.h:
11243 * s/usg5-2-2.h:
11244 * s/usg5-2.h:
11245 * s/usg5-4-3.h:
11246 * s/ux4800.h:
11247 * s/uxpds.h:
11248 * s/uxpv.h: Remove support for obsolete systems.
11249 * s/hpux.h, s/hpux10.h, s/hpux8.h, s/hpux9.h, s/hpux9shr.h:
8f3a3ac2 11250 Remove, insert contents in s/hpux10-20.h.
aac0c6e3
MR
11251 * s/aix3-1.h, s/aix3-2-5.h, s/aix3-2.h, s/aix4-1.h, s/aix4.h:
11252 Remove, insert contents in s/aix4-2.h.
11253 * s/usg5-3.h: Remove, insert contents in s/usg5-4.h.
11254 * s/bsd4-3.h: Rename to ...
11255 * s/bsd-common.h: ... this.
11256 * data.c:
11257 * doc.c:
11258 * ecrt0.c:
11259 * emacs.c:
11260 * fileio.c:
11261 * floatfns.c:
11262 * keyboard.c:
11263 * mem-limits.h:
11264 * print.c:
11265 * process.c:
11266 * sysdep.c:
11267 * syssignal.h:
11268 * systty.h:
11269 * syswait.h:
11270 * term.c:
11271 * unexec.c:
11272 * unexelf.c:
11273 * unexhp9k800.c:
11274 * m/hp800.h:
11275 * m/ibmrs6000.h:
11276 * m/mips.h:
11277 * m/vax.h:
11278 * s/darwin.h:
11279 * s/freebsd.h:
11280 * s/gnu.h:
11281 * s/ms-w32.h:
11282 * s/msdos.h:
11283 * s/netbsd.h:
11284 * s/template.h: Remove references to obsolete variables.
11285
11286 * Makefile.in: Add dependencies for all unexec files.
11287 (admindir): Remove unused variable.
11288 (UNEXEC_SRC): Remove references.
11289
112902008-06-25 Chong Yidong <cyd@stupidchicken.com>
11291
11292 * xfns.c (x_default_font_parameter): If Xft is available, first
11293 try Monospace-12 for the default font.
11294
112952008-06-25 Jason Rumney <jasonr@gnu.org>
11296
11297 * xdisp.c (get_glyph_face_and_encoding): Encode invalid glyphs as 0.
11298
112992008-06-25 Stefan Monnier <monnier@iro.umontreal.ca>
11300
11301 * bytecode.c (Fbyte_code): Disable debugging code that doesn't compile.
11302
11303 * buffer.c (syms_of_buffer): Remove default-word-wrap.
11304
113052008-06-25 Juanma Barranquero <lekktu@gmail.com>
11306
11307 * xdisp.c (syms_of_xdisp) <truncate-partial-width-windows>: Doc fix.
11308 <scroll-conservatively>: Fix typo in docstring.
11309
11310 * xselect.c (Fx_send_client_event): Doc fix.
11311
113122008-06-25 Kenichi Handa <handa@m17n.org>
11313
11314 * xfaces.c (Fx_list_fonts): Call Flist_fonts with the arg PREFER.
11315
11316 * font.c (font_parse_fcname): Remove unused variables.
11317 (font_sort_entites): Delete the arg SPEC. Caller changed.
11318 Fix for the case of ! best_only.
11319 (font_delete_unmatched): Check DPI and AVGWIDTH too.
11320
11321 * lisp.h (Fstring_to_unibyte): EXFUN it.
11322
11323 * character.h (str_to_unibyte): Extern it.
11324
11325 * character.c (str_to_unibyte): New function.
11326
11327 * fns.c (Fstring_to_unibyte): New function.
11328 (syms_of_fns): Defsubr it.
11329
113302008-06-24 Kenichi Handa <handa@m17n.org>
11331
11332 * font.c (font_score): Even if the PIXEL_SIZE is the same, check
11333 DPI too.
11334 (font_sort_entites): Setup prefer_prop[FONT_DPI_INDEX] too.
11335
113362008-06-24 Andreas Schwab <schwab@suse.de>
11337
11338 * Makefile.in (${lispsource}loaddefs.el): Rename from
11339 ../lisp/loaddefs.el.
11340 (bootstrap-clean): Do what distclean does but don't remove
11341 Makefile.
11342 (distclean): Depend on bootstrap-clean and remove Makefile.
11343
113442008-06-24 Chong Yidong <cyd@stupidchicken.com>
11345
11346 * buffer.h (struct buffer): New member word_wrap.
11347
11348 * buffer.c (syms_of_buffer): New variables default-word-wrap and
11349 word-wrap.
11350 (init_buffer_once): Initialize them.
11351
11352 * dispextern.h (struct it): Replace bool truncate_lines_p with a
11353 line_wrap enum possessing three possible values.
11354
11355 * termopts.h: Replace truncate_partial_width_windows with
11356 Vtruncate_partial_width_windows.
11357
11358 * dispnew.c (direct_output_for_insert): Avoid direct output when
11359 inserting a space with word wrap on.
11360
11361 * indent.c (compute_motion): Obey integer values of
11362 truncate-partial-width-windows.
11363
11364 * xdisp.c (Vtruncate_partial_width_windows): New Lisp_Object,
11365 replacing truncate_partial_width_windows.
11366 (init_iterator): If Vtruncate_partial_width_windows is an integer,
11367 truncate only if the window width is below that integer.
11368 (start_display, resize_mini_window, produce_stretch_glyph)
11369 (display_string, move_it_in_display_line_to): Use line_wrap.
11370 (back_to_previous_visible_line_start, reseat_1): Reset
11371 string_from_display_prop_p.
11372 (display_line): Extend default face to end of line when wrapping.
11373
113742008-06-24 Kim F. Storm <storm@cua.dk>
11375
11376 * xdisp.c (display_line, move_it_in_display_line_to): Add ability
11377 to wrap continued lines at word boundaries.
11378
113792008-06-24 Jason Rumney <jasonr@gnu.org>
11380
11381 * font.c (Ffont_face_attributes): Multiply pixel size before point
11382 conversion to avoid multiplying rounding error.
11383
113842008-06-23 Jason Rumney <jasonr@gnu.org>
11385
11386 * w32term.c (x_draw_glyph_string_background)
11387 (x_draw_glyph_string): Remove old bdf font code.
11388
11389 * w32term.h (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): Remove.
11390
113912008-06-22 Kenichi Handa <handa@m17n.org>
11392
11393 * font.c (font_find_for_lface): Try the adstyle specified in
11394 the property of LFACE_FONT of LFACE (if any).
11395
113962008-06-21 Seiji Zenitani <zenitani@mac.com>
4e2af782 11397 Ryo Yoshitake <ryo@shiftmode.net>
aac0c6e3
MR
11398
11399 * xterm.c (x_set_frame_alpha): Add x_catch_errors for bug#437.
11400
114012008-06-22 Stefan Monnier <monnier@iro.umontreal.ca>
11402
11403 * Makefile.in (${lisp} ${SOME_MACHINE_LISP}, ../lisp/loaddefs.el):
11404 Use $(BOOTSTRAPEMACS) rather than witness-emacs.
11405 (bootstrap-emacs${EXEEXT}): Merge witness-emacs into it.
11406 (witness-emacs): Remove.
11407 (lisp, shortlisp): Move loaddefs.el earlier.
11408 (mostlyclean): Forget about witness-emacs.
11409
114102008-06-22 Glenn Morris <rgm@gnu.org>
11411
11412 * Makefile.in (witness-emacs): Depend on temacs${EXEEXT}.
11413 (.SUFFIXES): Declare .el.elc as a suffix rule, for non-GNU makes.
11414
114152008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
11416
11417 * Makefile.in (PRECOMP): Remove.
11418 (${lisp} ${SOME_MACHINE_LISP}): Remove pseudo dependency on PRECOMP.
11419 (witness-emacs): Run `compile-first'.
11420 (.el.elc): Use the new compile-onefile target.
11421
114222008-06-21 Kenichi Handa <handa@m17n.org>
11423
11424 * xftfont.c (xftfont_open): Handle QCembolden only when
11425 FC_EMBOLDEN is defined.
11426
114272008-06-21 Andreas Schwab <schwab@suse.de>
11428
11429 * Makefile.in (witness-emacs): Use ../lisp, not $(lispsource).
11430 (.el.elc): Likewise.
11431
114322008-06-21 Miles Bader <miles@gnu.org>
11433
11434 * Makefile.in (../lisp/loaddefs.el): Build autoloads in the lisp
11435 build dir, not the lisp source dir.
11436
114372008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
11438
11439 * Makefile.in (emacs${EXEEXT}): Link the new emacs to bootstrap-emacs.
11440 (bootstrapclean): Remove.
11441 (.el.elc): New rule.
11442 (PRECOMP): New var.
11443 (../lisp/subdirs.el): Remove.
11444 (bootstrap-emacs${EXEEXT}): Remove subdirs.el and charpro.el dependency.
11445 (witness-emacs): New target.
11446 (mostlyclean): Remove witness-emacs as well.
11447 (../lisp/loaddefs.el, ${lisp} ${SOME_MACHINE_LISP}):
11448 Add witness-emacs dependency.
11449
114502008-06-20 Chong Yidong <cyd@stupidchicken.com>
11451
11452 * font.c (Ffont_face_attributes): Omit key-attribute pairs not
11453 defined by the font.
11454
114552008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
11456
11457 * Makefile.in (emacs${EXEEXT}): Depend on the machine-specific files.
11458 (bootstrap-clean): New target that keeps TAGS around.
11459 (../lisp/subdirs.el, ../lisp/loaddefs.el): New targets.
11460 (bootstrap-emacs${EXEEXT}): Depend on subdirs.el.
11461
114622008-06-20 Jason Rumney <jasonr@gnu.org>
11463
11464 * w32fns.c, w32term.c, w32term.h, w32gui.h [OLD_FONT]:
11465 Remove obsolete font code.
11466
11467 * w32font.c (font_matches_spec): Use csb bitfield from font signature
11468 to determine language support.
11469
114702008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
11471
11472 * sysdep.c (cfsetspeed): New fun extracted from the code.
11473 (cfmakeraw): Move before first use.
11474
114752008-06-20 Angelo Graziosi <angelo.graziosi@alice.it> (tiny change)
11476
11477 * sysdep.c (cfmakeraw): Provide fallback implementation.
11478 (serial_configure): Provide fallback implementation of cfsetspeed.
11479
114802008-06-20 Kenichi Handa <handa@m17n.org>
11481
11482 * xftfont.c (xftfont_open): Add FOUNDRY, SPACING, DPI, SCALABLE to
11483 the pattern.
11484
11485 * fontset.c (fontset_from_font): Copy font_spec before changing
11486 the elements.
11487
11488 * xfns.c (x_default_font_parameter): Try "monospace-12" too.
11489
114902008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
11491
11492 * w32fns.c, xfns.c (x_default_font_parameter): Only set `font-param'
11493 for explicit `font' parameters.
11494
11495 * frame.c (x_set_font): Remove unexplained call to fix inf-recursion.
11496
114972008-06-19 Kenichi Handa <handa@m17n.org>
11498
11499 * frame.c: Include <ctype.h>.
11500 (x_set_font_backend): Allow spacing characters in the X resource
11501 for FontBackend.
11502
115032008-06-19 Stefan Monnier <monnier@iro.umontreal.ca>
11504
11505 * w32fns.c, xfns.c (Qfont_param): New var.
11506 (syms_of_w32fns): Initialize it.
11507 (x_default_font_parameter): Record explicit `font' into
11508 `font-parameter'.
11509
115102008-06-18 Kenichi Handa <handa@m17n.org>
11511
11512 * font.c (font_parse_xlfd): Fix previous change.
11513 (font_parse_fcname): Don't use :fc-unknown-spec.
11514 (FRAME_X_DISPLAY_INFO): Be sure to have at least 1 pixel height.
11515 (Fcopy_font_spec): Preserve the order of elements in FONT_EXTRA.
11516 (font_add_log): Prepend the driver name to the resulting fonts.
11517
11518 * ftfont.c (ftfont_pattern_entity): New arg extra. Caller changed.
11519 (ftfont_spec_pattern): Don't check QCfc_unknown_spec and QCname.
11520 (ftfont_list) [FC_FONTFORMAT]: Include FC_FONTFORMAT in objset.
11521
11522 * xftfont.c (QChinting , QCautohint, QChintstyle, QCrgba)
11523 (QCembolden): New variables.
11524 (syms_of_xftfont): DEFSYM them.
11525 (xftfont_open): Call XftFontMatch. Don't trust the result of
11526 XftTextExtents8 if the pixel_size is less than 5.
11527
115282008-06-18 Andreas Schwab <schwab@suse.de>
11529
11530 * font.c (Ffont_face_attributes): Only define if HAVE_WINDOW_SYSTEM.
11531 (syms_of_font): Only defsubr if HAVE_WINDOW_SYSTEM.
11532
115332008-06-18 Jason Rumney <jasonr@gnu.org>
11534
11535 * w32font.c (w32font_list, w32font_match): Add logging.
11536
11537 * w32uniscribe.c (uniscribe_list, uniscribe_match): Add logging.
11538
115392008-06-17 Chong Yidong <cyd@stupidchicken.com>
11540
11541 * font.c (font_parse_fcname): Store divider characters for
11542 unknown-spec list. For known key symbols, intern using correct
11543 symbol name.
11544
115452008-06-17 Kenichi Handa <handa@m17n.org>
11546
11547 * xfaces.c (realize_default_face): If the frame is not on window
11548 system, set the fontset of face to nil.
11549
115502008-06-17 Naohiro Aota <nao.aota@gmail.com> (tiny change)
11551
11552 * fontset.c (fontset_pattern_regexp): Escape some reg-expr characters.
11553
115542008-06-16 Juanma Barranquero <lekktu@gmail.com>
11555
11556 * dispextern.h (lookup_non_ascii_face, split_font_name_into_vector)
11557 (build_font_name_from_vector): Delete externs.
11558
11559 * xfaces.c (struct font_name): Don't declare.
11560
115612008-06-16 Stefan Monnier <monnier@iro.umontreal.ca>
11562
11563 * font.c (font_unparse_gtkname): Use EQ to compare Lisp_Objects.
11564
115652008-06-16 Chong Yidong <cyd@stupidchicken.com>
11566
11567 * font.c (font_parse_fcname): Fix handling of unknown-spec string.
11568
115692008-06-16 Juanma Barranquero <lekktu@gmail.com>
11570
11571 * font.c (Ffont_spec): Fix usage in docstring.
11572 (Ffont_face_attributes): Doc fix.
11573
115742008-06-16 Andreas Schwab <schwab@suse.de>
11575
11576 * font.c (Ffont_face_attributes): Fix definition.
11577
115782008-06-16 Jason Rumney <jasonr@gnu.org>
11579
11580 * font.h (font_style_symbolic_from_value): Remove.
11581
11582 * font.c (font_style_symbolic_from_value): Remove.
11583 (font_style_symbolic): Revert to pre 2008-06-13 version.
11584
11585 * w32font.c (w32_to_fc_weight): New function.
11586 (w32font_full_name, logfont_to_fcname): Use it.
11587
115882008-06-16 Kenichi Handa <handa@m17n.org>
11589
11590 * font.c (font_check_object): Delete it.
11591 (font_clear_cache): Check if a font-object is alive.
11592 (font_open_entity): Likewise. Set FONT_OBJLST_INDEX of a
11593 font-object to nil.
11594 (font_close_object): Don't check FONT_CLOSE_OBJECT.
11595 (font_at): Don't call font_check_object.
11596 (Ffont_get): Return a symbol for :weight, :slant, and :width.
11597
115982008-06-16 Katsumi Yamaoka <yamaoka@jpl.org>
11599
11600 * puresize.h (BASE_PURESIZE): Increase to 1230000.
11601
116022008-06-16 Chong Yidong <cyd@stupidchicken.com>
11603
11604 * font.c (font_parse_fcname): Correctly parse KEY=VAL values.
11605
116062008-06-15 Chong Yidong <cyd@stupidchicken.com>
11607
11608 * font.c (font_parse_fcname): Only one decimal point.
11609 (font_unparse_fcname): Handle data in family and foundry indices
11610 as symbols, not strings.
11611 (font_unparse_gtkname, Ffont_face_attributes): New functions.
11612
11613 * xfns.c (Fx_select_font): Give GTK font dialog the default font name.
11614
11615 * font.h (font_unparse_gtkname): Add prototype.
11616
116172008-06-15 Naohiro Aota <nao.aota@gmail.com> (tiny change)
11618
11619 * fontset.c (fontset_pattern_regexp): Escape `+' characters in pattern.
11620
116212008-06-15 Andreas Schwab <schwab@suse.de>
11622
11623 * font.c (font_update_drivers): Fix crash when no drivers match.
11624
116252008-06-15 Stefan Monnier <monnier@iro.umontreal.ca>
11626
11627 * xfns.c (Fx_create_frame): internal-border-width default to 0 for Gtk.
11628 * gtkutil.c (xg_create_frame_widgets): Don't set internal_border_width.
11629
116302008-06-14 Stefan Monnier <monnier@iro.umontreal.ca>
11631
11632 * xdisp.c (syms_of_xdisp): Default underline-minimum-offset to 1.
11633
116342008-06-13 Stefan Monnier <monnier@iro.umontreal.ca>
11635
11636 * process.c (Fserial_process_configure, Fprocess_send_eof):
11637 Use EQ to compare Lisp_Objects.
11638
116392008-06-13 Jason Rumney <jasonr@gnu.org>
11640
11641 * w32fns.c (Fw32_select_font): Remove old font API function.
11642
11643 * w32font.c (logfont_to_fcname): New function.
11644 (Fx_select_font): New font dialog function compatible with
11645 GTK/fontconfig version.
11646
11647 * font.c (font_style_symbolic_from_value): New function.
11648 (font_style_symbolic): Use it.
11649
11650 * font.h (font_style_symbolic_from_value): Declare new function.
11651
116522008-06-13 Juanma Barranquero <lekktu@gmail.com>
11653
11654 * font.c (syms_of_font) <font-weight-table, font-slant-table>:
11655 <font-width-table>: Fix typos in docstrings.
11656
116572008-06-13 Daniel Engeler <engeler@gmail.com>
11658
11659 These changes add serial port access.
11660 * process.c: Add HAVE_SERIAL.
11661 (Fdelete_process, Fprocess_status, Fset_process_buffer)
11662 (Fset_process_filter, Fset_process_sentinel, Fprocess_contact)
11663 (list_processes_1, select_wrapper, Fstop_process)
11664 (Fcontinue_process, Fprocess_send_eof, kill_buffer_processes)
11665 (status_notify): Modify to handle serial processes.
11666 [HAVE_SERIAL] (Fserial_process_configure)
11667 [HAVE_SERIAL] (make_serial_process_unwind, Fmake_serial_process):
11668 New functions.
11669 * process.h (struct Lisp_Process): Add `type'.
11670 * sysdep.c [HAVE_TERMIOS] (serial_open, serial_configure):
11671 New functions.
11672 * w32.c (_sys_read_ahead, sys_read, sys_write): Modify to handle
11673 serial ports.
b71ac3dd 11674 (serial_open, serial_configure): New functions.
aac0c6e3
MR
11675 * w32.h: Add FILE_SERIAL.
11676 (struct _child_process): Add ovl_read, ovl_write.
11677
116782008-06-13 Kenichi Handa <handa@m17n.org>
11679
11680 * dispextern.h (enum lface_attribute_index): New member
11681 LFACE_FOUNDRY_INDEX.
11682
11683 * font.c (font_score): Delete arg alternate_families. Check only
11684 weight, slant, width, and size. Ignore the difference of alias
11685 style symbols.
11686 (font_sort_entites): Adjust for the above change. Reflect the
11687 order of font-driver to scores.
11688 (font_list_entities): Don't check alternate_familes here.
11689 (font_clear_prop): Handle foundry.
11690 (font_update_lface): Don't parse "foundry-family" form here.
11691 Handle FONT_FOUNDRY_INDEX.
11692 (font_find_for_lface): Likewise. Handle alternate families here.
11693 If registry is nil, try iso8859-1 and ascii-0.
11694 (font_open_for_lface): Pay attention to size in ENTITY.
11695 (font_open_by_name): Simplify by calling font_load_for_lface.
11696 (free_font_driver_list): Delete it.
11697 (font_update_drivers): Preserve the order of backends.
11698 (syms_of_font): Setting of sort_shift_bits adjusted for the change
11699 of font_score and font_sort_entites.
11700 (font_update_sort_order): Likewise.
11701
11702 * xfaces.c (LFACE_FOUNDRY): New macro.
11703 (check_lface_attrs): Check foundry.
11704 (set_lface_from_font): Don't parse "FOUNDRY-FAMILY" form.
11705 (merge_face_vectors): Check foundry.
11706 (merge_face_ref): Likewise.
11707 (Finternal_set_lisp_face_attribute): Likewise.
11708 (x_update_menu_appearance): Likewise.
11709 (Finternal_get_lisp_face_attribute): Likewise.
11710 (lface_hash): Likewise.
11711 (lface_same_font_attributes_p): Likewise.
11712 (x_supports_face_attributes_p): Likewise.
11713 (tty_supports_face_attributes_p): Likewise.
11714 (Finternal_set_alternative_font_family_alist): Intern strings.
11715 (Finternal_set_alternative_font_registry_alist): Downcase strings.
11716 (realize_default_face): Set LFACE_FOUNDRY (lface).
11717
11718 * xfns.c (Fx_create_frame, x_create_tip_frame): Register X
11719 font-driver at first.
11720
11721 * ftfont.c (ftfont_font_format) [! FC_FONTFORMAT]: Declare "int len;".
11722
117232008-06-12 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
11724
11725 * lread.c (Fload): Use xfree, not free on saved_doc_string.
11726
117272008-06-12 Jim Meyering <meyering@redhat.com>
11728
11729 Make unexec_free handle NULL the same way free does.
11730 * unexmacosx.c (unexec_free): Ignore a NULL argument.
11731
117322008-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
11733
11734 * character.h (CHAR_TO_BYTE_SAFE): New macro.
11735 * character.c (Fmultibyte_char_to_unibyte): Obey the docstring.
11736 * regex.c (RE_CHAR_TO_UNIBYTE): Use the new macro.
11737 (WEAK_ALIAS): Simplify.
11738 * syntax.c (skip_chars): Don't mark non-byte chars in the fastmap
11739 when searching a unibyte buffer.
11740
117412008-06-12 Chong Yidong <cyd@stupidchicken.com>
11742
11743 * xfns.c (Fx_select_font): Rename from x-font-dialog.
11744
117452008-06-12 Juanma Barranquero <lekktu@gmail.com>
11746
11747 * w32font.c: Include ctype.h.
11748
117492008-06-11 Jason Rumney <jasonr@gnu.org>
11750
11751 * w32font.c (w32font_encode_char): Detect missing glyphs that are
11752 misreported as space.
11753 (add_font_entity_to_list): Support unicode-bmp and unicode-sip
11754 as aliases for registry iso10646-1.
11755
117562008-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
11757
11758 * buffer.c (clone_per_buffer_values): Skip `name'.
11759
117602008-06-11 Chong Yidong <cyd@stupidchicken.com>
11761
11762 * font.c (font_parse_fcname): Fix last change; accept decimal
11763 points in font size.
11764
117652008-06-10 Jason Rumney <jasonr@gnu.org>
11766
11767 * w32uniscribe.c (add_opentype_font_name_to_list):
11768 Skip non unicode fonts.
11769
117702008-06-10 Chong Yidong <cyd@stupidchicken.com>
11771
11772 * xfns.c (Fx_font_dialog): New function.
11773
11774 * gtkutil.c (xg_dialog_response_cb): Rename from
11775 xg_file_response_callback.
11776 (pop_down_dialog): Rename from pop_down_file_dialog.
11777 (xg_get_file_name): Callers changed.
11778 (xg_get_font_name): New function.
11779
11780 * gtkutil.h (xg_get_font_name): Insert prototype.
11781
117822008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
11783
11784 * xdisp.c (underline_minimum_offset): Rename from xterm.c's
11785 x_underline_minimum_display_offset.
11786 (syms_of_xdisp): Declare it here rather than in xterm.c.
11787 * dispextern.h (underline_minimum_offset): Declare it.
11788 * w32term.c (x_draw_glyph_string): Use it.
11789 * xterm.c (x_underline_minimum_display_offset): Move to xdisp.c.
11790 (syms_of_xterm): Don't declare it any more.
11791 (x_draw_glyph_string): Adjust to the new name.
11792
8719abec 117932008-06-10 David De La Harpe Golden <david@harpegolden.net>
aac0c6e3
MR
11794
11795 * xterm.c (x_underline_minimum_display_offset): New var.
11796 (x_draw_glyph_string): Use it.
11797 (syms_of_xterm): Declare it.
11798
117992008-06-10 Chong Yidong <cyd@stupidchicken.com>
11800
11801 * font.c (font_parse_fcname): Accept GTK-style font names too.
11802
118032008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
11804
11805 * dired.c (file_name_completion): Don't return t if the match is exact
11806 but with different capitalization.
11807 * minibuf.c (Ftry_completion): Simplify.
11808
11809 * window.c (Vwindow_point_insertion_type): New var.
11810 (set_window_buffer): Use it.
11811 (syms_of_window): Init and export it to Lisp.
11812
118132008-06-10 Kenichi Handa <handa@m17n.org>
11814
11815 * font.h (font_intern_prop): Prototype adjusted.
11816
11817 * font.c (font_intern_prop): New arg force_symbol.
11818 (font_parse_xlfd, font_parse_fcname, font_parse_family_registry):
11819 Adjust for the change of font_intern_prop.
11820
11821 * ftfont.c (ftfont_pattern_entity):
11822 * w32font.c (add_font_name_to_list, w32_enumfont_pattern_entity)
11823 (w32_registry):
11824 * w32uniscribe.c (add_opentype_font_name_to_list): Adjust for
11825 the change of font_intern_prop.
11826
118272008-06-09 Juanma Barranquero <lekktu@gmail.com>
11828
11829 * w32menu.c (digest_single_submenu): Declare extern.
11830
118312008-06-09 Jason Rumney <jasonr@gnu.org>
11832
11833 * w32term.c (x_make_frame_visible): Use alternate restore flags.
11834
11835 * w32menu.c (Fx_popup_menu): Unwind protect while building menu.
11836 (parse_single_submenu): Remove.
11837 (digest_single_submenu): Remove.
11838 (syms_of_w32menu): Don't initialise variables that have moved
11839 to menu.c.
11840 (set_frame_menubar): Sync with version in xmenu.c.
11841 (w32_menu_show): Sync with xmenu_show in xmenu.c.
11842
11843 * menu.c (single_keymap_panes, push_menu_pane, push_menu_item):
11844 Make static again.
11845
118462008-06-09 Jason Rumney <jasonr@gnu.org>
11847
11848 Changes to w32 files related to the move of common menu code
11849 to menu.c on 2008-06-08 by Chong Yidong.
11850
11851 * menu.c [HAVE_NTGUI]: Include w32term.h, move widget related
11852 defs to w32gui.h.
11853 (single_keymap_panes, push_menu_item, push_menu_pane):
11854 Make globally visible.
11855
11856 * w32menu.c (enum button_type, widget_value, local_heap, local_alloc)
11857 (local_free, malloc_widget_value, free_widget_value)
11858 (MENU_ITEMS_ITEM_NAME, MENU_ITEMS_ITEM_ENABLE, MENU_ITEMS_ITEM_VALUE)
11859 (MENU_ITEMS_ITEM_EQUIV_KEY, MENU_ITEMS_ITEM_DEFINITION)
11860 (MENU_ITEMS_ITEM_TYPE, MENU_ITEMS_ITEM_SELECTED, MENU_ITEMS_ITEM_HELP)
11861 (MENU_ITEMS_ITEM_LENGTH, enum menu_item_idx): Remove defs.
11862 (menu_items, menu_items_allocated, menu_items_used)
11863 (menu_items_n_panes, menu_items_submenu_depth): Remove global vars.
11864 (init_menu_items, finish_menu_items, discard_menu_items)
11865 (grow_menu_items, push_submenu_start, push_submenu_end)
11866 (push_left_right_boundary, push_menu_pane, push_menu_item)
11867 (keymap_panes, single_keymap_panes, list_of_panes, list_of_items)
11868 (free_menubar_widget_tree_value, parse_single_submenu)
11869 (update_submenu_strings): Remove functions.
11870 (xmalloc_widget_value): Remove and declare extern.
11871
11872 * makefile.w32-in ($(SRC)/menu.$(O)): New target.
11873 (OBJ1): Build it.
11874
11875 * w32gui.h (widget_value, XtPointer, Boolean, enum button_type)
11876 (local_heap, local_alloc, local_free, malloc_widget_value)
11877 (free_widget_value): Define here.
11878
118792008-06-09 Kenichi Handa <handa@m17n.org>
11880
11881 * font.h (Qascii_0): Extern it.
11882
11883 * font.c (Qascii_0): New variable.
11884 (syms_of_font): DEFSYM it.
11885 (font_open_by_name): If the registry "iso8859-1" fails, try also
11886 "ascii-0".
11887
11888 * ftfont.c (ftfont_spec_pattern): Accept the registry `ascii-0'.
11889
118902008-06-08 Kenichi Handa <handa@m17n.org>
11891
11892 * .gdbinit (xfont): New command.
11893
118942008-06-08 Andreas Schwab <schwab@suse.de>
11895
11896 * menu.c [HAVE_X_WINDOWS]: Include "xterm.h".
11897 * Makefile.in (menu.o): Update dependencies.
11898
11899 * Makefile.in (obj): Always add menu.o.
11900 * emacs.c (main): Always call syms_of_menu.
11901 * keyboard.h: Remove extra #ifdef HAVE_X_WINDOW.
11902
119032008-06-08 Chong Yidong <cyd@stupidchicken.com>
11904
11905 * Makefile.in: Compile menu.c.
11906
11907 * lisp.h: Declare syms_of_menu.
11908
11909 * emacs.c (main): Call syms_of_menu.
11910
11911 * keyboard.h: Relocate platform-independent menu definitions from
11912 xmenu.c.
11913
11914 * menu.c: New file. Relocate platform-independent menu
11915 definitions from xmenu.c. Suggested by Adrian Robert.
11916
11917 * xmenu.c: Remove platform-independent menu definitions.
560bb7ae 11918 (menu_items, menu_items_inuse, menu_items_allocated)
aac0c6e3
MR
11919 (menu_items_used, menu_items_n_panes)
11920 (menu_items_submenu_depth): Move to keyboard.h.
11921 (init_menu_items, finish_menu_items, unuse_menu_items)
11922 (discard_menu_items, restore_menu_items, save_menu_items)
11923 (grow_menu_items, push_submenu_start, push_submenu_end)
11924 (push_left_right_boundary, push_menu_pane, push_menu_item)
11925 (keymap_panes, single_keymap_panes, single_menu_item)
11926 (list_of_panes, list_of_items, find_and_call_menu_selection)
11927 (xmalloc_widget_value, free_menubar_widget_value_tree)
11928 (parse_single_submenu, digest_single_submenu)
11929 (update_submenu_strings): Move to menu.c.
11930
119312008-06-07 Stefan Monnier <monnier@iro.umontreal.ca>
11932
11933 * dispnew.c (Flast_nonminibuf_frame): Handle the NULL case.
11934
119352008-06-06 Miles Bader <miles@gnu.org>
11936
11937 * xdisp.c (x_produce_glyphs): Calculate tab width based on current
11938 face, not frame default.
11939
119402008-06-05 Martin Rudalics <rudalics@gmx.at>
11941
11942 * window.c (pop_up_windows, pop_up_frames)
11943 (display_buffer_reuse_frames, Vpop_up_frame_function)
11944 (Vdisplay_buffer_function, Veven_window_heights)
11945 (Vspecial_display_buffer_names, Vspecial_display_regexps)
11946 (Vspecial_display_function, Vsame_window_buffer_names)
11947 (Vsame_window_regexps, split_height_threshold)
11948 (Vsplit_window_preferred_function): Move those vars to window.el.
11949 (display_buffer_1, Fspecial_display_p, Fsame_window_p)
11950 (Fdisplay_buffer): Move those functions to window.el.
11951 (syms_of_window): Remove corresponding declarations.
11952 (display_buffer): New function.
11953 (temp_output_buffer_show, Fother_window_for_scrolling): Use it.
11954 * dispnew.c (Flast_nonminibuf_frame): New function.
11955 * buffer.c (Fpop_to_buffer): Move to window.el.
11956
119572008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
11958
11959 * data.c (set_internal): Fix up call to let_shadows_buffer_binding_p.
11960
119612008-06-05 Kenichi Handa <handa@m17n.org>
11962
11963 * coding.c (detect_coding): Fix previous change.
11964 (detect_coding_system): Likewise.
11965
119662008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
11967
11968 * character.h (MAKE_CHAR_MULTIBYTE): Check the arg is a (uni)byte.
11969
11970 * keymap.c (Vminibuffer_local_filename_must_match_map):
11971 Rename from Vminibuffer_local_must_match_filename_map.
11972 (syms_of_keymap):
11973 * minibuf.c (Fcompleting_read): Adjust accordingly.
11974 * commands.h: Rename declaration as well.
11975
119762008-06-05 Kenichi Handa <handa@m17n.org>
11977
11978 * font.c (Ffont_spec): Don't use font_parse_family_registry for
11979 family name.
11980 (Ffont_put): Likewise.
11981
11982 * fontset.c (fontset_find_font): Call font_open_for_lface with the
11983 current font-spec.
11984
11985 * xfont.c (xfont_list): Don't set registry to iso8859-1 even if it
11986 is unspecified.
11987
11988 * xfaces.c (realize_x_face): If the font-related face attributes
11989 are the same as those of default face, realize a new fontset from
11990 default->fontset.
11991 (Fx_family_fonts): Use font_parse_family_registry instead of Ffont_put.
11992
119932008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
11994
11995 * xdisp.c (move_it_in_display_line_to): Improve the type of its args.
11996 (move_it_in_display_line): New wrapper.
11997
11998 * window.c (window_scroll_pixel_based_preserve_x)
11999 (window_scroll_preserve_hpos, window_scroll_preserve_vpos): New vars.
12000 (window_scroll_pixel_based, window_scroll_line_based):
12001 Use them to preserve column positions.
12002 (syms_of_window): Initialize them.
12003
12004 * indent.c (Fvertical_motion): Extend first arg to allow passing an
12005 (HPOS . VPOS) pair.
12006
12007 * dispextern.h (move_it_in_display_line): Declare.
12008
120092008-06-05 Juanma Barranquero <lekktu@gmail.com>
12010
12011 * window.c (Fwindow_parameter): Return VALUE, not (PARAMETER . VALUE).
12012 (Fwindow_parameters): Return copy of parameter alist. Doc fix.
12013 (Fset_window_parameter): Return VALUE, not parameter alist. Doc fix.
12014
120152008-06-04 Juanma Barranquero <lekktu@gmail.com>
12016
12017 * window.c (Fset_window_parameter): Doc fix.
12018 (Fwindow_parameters, Fwindow_parameter): Remove redundant check.
12019
120202008-06-04 Joakim Verona <joakim@verona.se>
12021
12022 * window.h (struct window): Add new member window_parameters.
12023
12024 * window.c (Fwindow_parameters, Fwindow_parameter)
12025 (Fset_window_parameter): New defuns.
12026 (syms_of_window): Defsubr the new defuns.
12027 (make_window): Initialize window_parameters to nil.
12028
120292008-06-04 John Paul Wallington <jpw@pobox.com>
12030
12031 * eval.c (Fdefmacro): Doc fix.
12032
120332008-06-04 Kenichi Handa <handa@m17n.org>
12034
12035 * coding.c (detect_coding): Fix handling of coding->head_ascii.
12036 Be sure to call setup_coding_system when we find a proper coding system.
12037 (detect_coding_system): Fix handling of coding->head_ascii.
12038
120392008-06-03 Andreas Schwab <schwab@suse.de>
12040
12041 * font.c (font_prop_validate_spacing): Fix last change.
12042
120432008-06-03 Kenichi Handa <handa@m17n.org>
12044
12045 * font.c (font_prop_validate_spacing): Handle uppercase symbols.
12046 (font_parse_fcname): Fix handling of unknown key.
12047
12048 * xfont.c (xfont_list): Try an alias.
12049
12050 * charset.c (char_charset): Return NULL if the arg charset_list is
12051 specified and C doesn't belong to any of them.
12052
120532008-06-02 Chip Coldwell <coldwell@redhat.com>
12054
12055 * font.c (font_pixel_size): Don't take cdr of an integer.
12056
120572008-06-02 Jim Meyering <meyering@redhat.com>
12058
12059 Make "xfree (NULL)" a no-op; remove useless if-before-xfree.
12060 * alloc.c (xfree): Return right away for a NULL arg.
12061 * lread.c (nosuffix): Remove now-useless if-before-xfree tests.
12062 * gtkutil.c (xg_gtk_scroll_destroy): Likewise.
12063 * mac.c (create_apple_event_from_event_ref): Likewise.
12064 (create_apple_event_from_drag_ref, cfstring_create_normalized):
12065 Likewise.
12066 * doprnt.c (doprnt1): Likewise.
12067 * frame.c (frame): Likewise.
12068 * keyboard.c (wipe_kboard): Likewise.
12069 * macterm.c (x_free_frame_resources, xlfdpat_destroy, XFreePixmap)
12070 (init_font_name_table, mac_unload_font, x_delete_display): Likewise.
12071 * term.c (tty_default_color_capabilities, maybe_fatal)
12072 (delete_tty): Likewise.
12073 * w16select.c (string): Likewise.
12074 * w32.c (w32_get_resource, SET_ENV_BUF_SIZE): Likewise.
12075 * w32bdf.c (w32_free_bdf_font): Likewise.
12076 * w32fns.c (w32_unload_font): Likewise.
12077 * w32font.c (w32font_close): Likewise.
12078 * window.c (size_window): Likewise.
12079 * xselect.c (receive_incremental_selection): Likewise.
12080 * xterm.c (x_free_frame_resources, x_delete_display): Likewise.
12081 * mactoolbox.c (create_apple_event_from_drag_ref): Likewise.
12082 * w32.c (stat): Likewise.
12083
12084 Remove useless if-before-free tests.
12085 * editfns.c (Fset_time_zone_rule): Likewise.
12086 * lread.c (nosuffix): Likewise.
12087 * ralloc.c (get_bloc): Likewise.
12088 * regex.c (reg_free): Likewise.
12089 * xftfont.c (xftfont_open, xftfont_close): Likewise.
12090 * xrdb.c (get_user_app, get_environ_db, x_load_resources): Likewise.
12091 * xsmfns.c (smc_save_yourself_CB): Likewise.
12092
120932008-06-02 Kenichi Handa <handa@m17n.org>
12094
12095 * font.c (font_find_for_lface): Handle float font size.
12096 (font_open_for_lface): Likewise.
12097
12098 * xfaces.c (x_supports_face_attributes_p): Check face->font before
12099 comparing the properties.
12100
121012008-06-01 Jason Rumney <jasonr@gnu.org>
12102
12103 * w32font.c (w32_enumfont_pattern_entity): Use requested registry.
12104 Treat iso10646-1 and Windows DEFAULT_CHARSET specially.
12105 Duplicate iso8859-1 fonts as iso10646-1 if no registry specified.
12106 Don't add empty script list.
12107 (w32_registry): Only map DEFAULT_CHARSET to iso10646-1 here.
12108
121092008-06-01 Dan Nicolaescu <dann@ics.uci.edu>
12110
12111 * Makefile.in (dot, dotdot): Remove, update users.
12112 ".." has been used elsewhere in the file for a long time.
12113 (LIBXT_STATIC): Remove conditional based on unused variable.
12114
121152008-06-01 Miles Bader <miles@gnu.org>
12116
12117 * xfaces.c (Vface_remapping_alist): New variable.
12118 (syms_of_xfaces): Initialize it.
12119 (enum named_merge_point_kind): New type.
12120 (struct named_merge_point): Add `named_merge_point_kind' field.
12121 (push_named_merge_point): Make cycle detection respect different
12122 named-merge-point kinds.
12123 (lface_from_face_name_no_resolve): Rename from `lface_from_face_name'.
12124 Remove face-name alias resolution.
12125 (lface_from_face_name): New definition using
12126 `lface_from_face_name_no_resolve'.
12127 (get_lface_attributes_no_remap): Rename from `get_lface_attributes'.
12128 Call lface_from_face_name_no_resolve instead of lface_from_face_name.
12129 (get_lface_attributes): New definition that layers face-remapping on
12130 top of get_lface_attributes_no_remap. New arg `named_merge_points'.
12131 (lookup_basic_face): New function.
12132 (lookup_derived_face): Pass new last arg to `get_lface_attributes'.
12133 (realize_named_face): Call `get_lface_attributes_no_remap' instead of
12134 `get_lface_attributes'.
12135 (face_at_buffer_position): Use `lookup_basic_face' to lookup
12136 DEFAULT_FACE_ID if necessary. When optimizing the default-face case,
12137 return default_face's face-id instead of the constant DEFAULT_FACE_ID.
12138
12139 * xdisp.c (init_iterator): Pass base_face_id through
12140 `lookup_basic_face' when we actually use it as a face-id.
12141 (handle_single_display_prop): Use `lookup_basic_face' to lookup
12142 DEFAULT_FACE_ID.
12143
12144 * fontset.c (Finternal_char_font): Use `lookup_basic_face' to
12145 lookup the initial face-id.
12146
12147 * dispextern.h (lookup_basic_face, Vface_remapping_alist): New decls.
12148
121492008-06-01 Juanma Barranquero <lekktu@gmail.com>
12150
12151 * textprop.c (syms_of_textprop) <text-property-default-nonsticky>:
12152 (Fremove_text_properties): Fix typos in docstrings.
12153
121542008-05-31 Kenichi Handa <handa@m17n.org>
12155
12156 * font.c (font_list_entities): Fix the car part of data to be
12157 stored in the cache.
12158
12159 * ftfont.c (ftfont_font_format): Don't use strcasestr.
12160
121612008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
12162
12163 * chartab.c (Foptimize_char_table, optimize_sub_char_table):
12164 Add a `test' argument so another predicate than `equal' can be used.
12165 (map_sub_char_table): Use `eq' rather than `equal' to merge ranges.
12166 (map_char_table): Remove unused vars `c' and `i'.
12167 * lisp.h (Foptimize_char_table): Adjust declaration.
12168 * charset.c (Fclear_charset_maps): Adjust call to Foptimize_char_table.
12169
121702008-05-30 Kenichi Handa <handa@m17n.org>
12171
12172 * font.c (Ffont_info): Define only if HAVE_WINDOW_SYSTEM is defined.
12173 (syms_of_font): Defsubr Sfont_info only if HAVE_WINDOW_SYSTEM is
12174 defined.
12175
121762008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
12177
12178 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
12179 (Fmake_variable_frame_local): Disallow mixing buffer-local and
12180 frame-local settings for the same variable.
12181
121822008-05-30 Kenichi Handa <handa@m17n.org>
12183
12184 * fontset.c (Ffont_info): Move to font.c.
12185 (syms_of_fontset): Delete defsubr of Sfont_info.
12186
12187 * font.c (font_style_to_value, font_score): Delete casting of the
12188 args to xstcasecmp.
12189 (register_font_driver): Increment num_font_drivers only when
12190 registering the driver globally.
12191 (Ffont_info): Move from fontset.c. Handle a font object too.
12192 (syms_of_font): Defsubr Sfont_info.
12193
121942008-05-29 Kenichi Handa <handa@m17n.org>
12195
12196 * coding.h (enum define_coding_utf8_arg_index): New enum.
12197 (enum coding_attr_index): Change coding_attr_utf_16_bom to
12198 coding_attr_utf_bom.
12199 (enum utf_bom_type): Rename from utf_16_bom_type.
12200 (struct utf_16_spec): Adjust for the above change.
12201 (struct coding_system): Add utf_8_bom in `spec' union.
12202
12203 * coding.c (CODING_UTF_8_BOM): New macro.
12204 (enum coding_category): Delete coding_category_utf_8, add
12205 coding_category_utf_8_auto, coding_category_utf_8_nosig, and
12206 coding_category_utf_8_sig.
12207 (CATEGORY_MASK_UTF_8): Delete it.
12208 (CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG)
12209 (CATEGORY_MASK_UTF_8_SIG): New macros.
12210 (CATEGORY_MASK_ANY): Delete CATEGORY_MASK_UTF_8, add
12211 CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG, and
12212 CATEGORY_MASK_UTF_8_SIG.
12213 (CATEGORY_MASK_UTF_8): New macro.
12214 (UTF_BOM, UTF_8_BOM_1, UTF_8_BOM_2, UTF_8_BOM_3): New macros.
12215 (detect_coding_utf_8): Check BOM.
12216 (decode_coding_utf_8, encode_coding_utf_8): Handle BOM.
12217 (decode_coding_utf_16): Adjust for the change of enum utf_bom_type.
12218 (encode_coding_utf_16): Likewise.
12219 (setup_coding_system): Likewise. Set CODING_UTF_8_BOM (coding).
12220 (detect_coding, detect_coding_system): Handle utf-8-auto.
12221 (Fdefine_coding_system_internal): Handle `bom' property for utf-8.
12222 (syms_of_coding): Fix setting up of Vcoding_category_table.
12223
122242008-05-29 Stefan Monnier <monnier@iro.umontreal.ca>
12225
12226 * process.c (Faccept_process_output): If `millisec' is non-nil,
12227 `seconds' default to 0.
12228 (wait_reading_process_output): Also return non-nil if we read output
12229 from a non-running process.
12230
122312008-05-29 Jason Rumney <jasonr@gnu.org>
12232
12233 * w32font.c (w32font_open_internal): Prefer truetype fonts unless
12234 `raster' specified.
12235 (add_font_entity_to_list): Allow non-opentype truetype fonts back
12236 in the uniscribe backend, but disallow any font that has no
12237 unicode subrange support.
12238
122392008-05-29 Juanma Barranquero <lekktu@gmail.com>
12240
12241 * xfaces.c (Fx_list_fonts, Finternal_copy_lisp_face):
12242 Fix typos in docstrings.
12243
122442008-05-29 Kenichi Handa <handa@m17n.org>
12245
12246 * xfaces.c (Fx_list_fonts): Make it return a list of font names.
12247 (Fx_family_fonts): Set frame correctly.
12248
122492008-05-28 Jason Rumney <jasonr@gnu.org>
12250
12251 * w32term.c (x_draw_glyph_string): Use clipmask if specified.
12252
122532008-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
12254
12255 * fileio.c (Fwrite_region): Delay the defaulting to beg&z to after
12256 calling build_annotations.
12257
122582008-05-28 Juanma Barranquero <lekktu@gmail.com>
12259
12260 * coding.c (Fdecode_coding_region, Fencode_coding_region)
12261 (Fencode_coding_string):
12262 (syms_of_coding) <coding-system-for-read, coding-system-for-write>:
12263 <latin-extra-code-table>: Fix typos in docstrings.
12264 (syms_of_coding) <coding-system-alist>: Doc fix.
12265 (syms_of_coding) <translation-table-for-input>: Reflow docstring.
12266
122672008-05-28 Kenichi Handa <handa@m17n.org>
12268
12269 * fontset.c (Ffont_info): Don't call font_close_object.
12270
12271 * font.c (font_parse_family_registry): Use Ffont_put to validate
12272 foundry and family.
12273 (font_delete_unmatched): Don't check spacing.
12274 (font_list_entities): Add spacing to the spec to list fonts.
12275
12276 * ftfont.c (ftfont_spec_pattern): Don't set FC_SPACING to pattern.
12277 (ftfont_list): Check spacing here. Don't include FC_CHARSET in objset.
12278
12279 * coding.c (encode_coding_raw_text): Fix previous change.
12280 (encode_coding_object): When the dst_object is a buffer and is
12281 different from src_object, move gap to PT.
12282
122832008-05-27 Chong Yidong <cyd@stupidchicken.com>
12284
12285 * xterm.c (x_draw_glyph_string): If a clipmask is specified, use it.
12286
122872008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
12288
12289 * coding.c (encode_coding_raw_text): Set coding->produced_char for
12290 all branches. Compute it differently.
12291
12292 * xdisp.c [!HAVE_WINDOW_SYSTEM]: Include font.h for --without-x.
12293
122942008-05-27 Juanma Barranquero <lekktu@gmail.com>
12295
12296 * w32font.c (compute_metrics): Rewrite an "else { if () ... else ... }"
12297 into "else if () ... else ...".
12298
122992008-05-27 Jason Rumney <jasonr@gnu.org>
12300
12301 * w32font.c (w32font_open_internal): Determine if glyph indices
12302 are likely to work here.
12303
123042008-05-27 Chong Yidong <cyd@stupidchicken.com>
12305
12306 * xdisp.c (draw_glyphs): If mouse-highlighting is on, attempt to
12307 draw overlap glyphs with appropriate highlighting.
12308
123092008-05-27 Kenichi Handa <handa@m17n.org>
12310
12311 * xfont.c (xfont_open): Fix calculation of font->average_width.
12312
123132008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
12314
12315 * casefiddle.c (casify_object): Try to guess better whether the
12316 argument is a byte or a char.
12317
123182008-05-26 Andreas Schwab <schwab@suse.de>
12319
12320 * xselect.c (x_reply_selection_request): Properly handle format == 32.
12321 Always send multiples of format size.
12322
12323 * xterm.c (x_set_frame_alpha): Fix type mismatch.
12324
123252008-05-26 Jason Rumney <jasonr@gnu.org>
12326
12327 * w32font.c (w32font_text_extents): Zero whole metrics struct first.
12328 (compute_metrics): Don't set failure if we just cleared the cache.
12329 (w32_weight_table): Remove unused variable.
12330 (w32_enumfont_pattern_entity): Use FONT_SPACING_CHARCELL for
12331 backwards compatibility.
12332
123332008-05-25 Kenichi Handa <handa@m17n.org>
12334
12335 * w32term.c (x_draw_glyph_string):
12336 * xterm.c (x_draw_glyph_string): Fix calculation of underline position.
12337
12338 * xfaces.c: Delete unused function prototypes.
12339 (xstrlwr, font_frame): Delete them.
12340 (clear_face_cache): Delete unused variable.
12341
12342 * xftfont.c (xftfont_open): Delete unused variable.
12343 If underline_thickness is not 1, adjust underline_position.
12344
12345 * ftxfont.c (ftxfont_open): Delete unused variable.
12346
12347 * fontset.c (face_for_char): Optimize for the case of no charset
12348 property.
12349
12350 * font.c (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE)
12351 (check_gstring, check_otf_features, otf_list, otf_tag_symbol)
12352 (otf_open, font_otf_capability, generate_otf_features)
12353 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
12354 Comment out by surrounding "#if 0" and "#endif" for the moment.
12355 (Ffont_drive_otf, Ffont_otf_alternates): Likewise.
12356 (syms_of_font): Codes for accessing above commented out.
12357
123582008-05-24 Eli Zaretskii <eliz@gnu.org>
12359
12360 * w32proc.c: Include dispextern.h.
12361
12362 * w32.c: Include dispextern.h.
12363
123642008-05-23 Juanma Barranquero <lekktu@gmail.com>
12365
12366 * charset.c (Fencode_char, Fsplit_char): Doc fixes.
12367 (Fget_unused_iso_final_char, Fdecode_char, Fiso_charset):
12368 Fix typos in docstrings.
12369
123702008-05-23 Jason Rumney <jasonr@gnu.org>
12371
12372 * xsmfns.c: Remove includes that are already included by config.h.
12373
123742008-05-23 Kenichi Handa <handa@m17n.org>
12375
12376 * charset.c (Qemacs, charset_emacs): New variables.
12377 (char_charset): Fix for non-Unicode characters.
12378 (syms_of_charset): Define charset_emacs.
12379
12380 * w32term.c (x_draw_glyph_string): Be sure to update
12381 s->underline_thickness and s->underline_position. Be sure to draw
12382 underline within the current line area.
12383
12384 * xterm.c (x_draw_glyph_string): Be sure to update
12385 s->underline_thickness and s->underline_position. Be sure to draw
12386 underline within the current line area.
12387
12388 * fontset.c: Delete unused variables and add casting for char *
12389 throughout the file.
12390 (fontset_font): Try the fallback fonts of the current fontset
12391 before consulting the default fontset.
12392
12393 * ftfont.c (ftfont_spec_pattern): Free charset if necessary.
12394
12395 * xfont.c (xfont_list_pattern): Free names returned from XListFonts.
12396
123972008-05-22 Jason Rumney <jasonr@gnu.org>
12398
12399 * font.c: Don't include strings.h.
12400
12401 * dispextern.h, xfaces.c (xstrcasecmp): Rename from xstricmp.
12402
12403 * dosfns.c, fileio.c, font.c, fontset.c, image.c, macfns.c:
12404 * macterm.c, process.c, w32.c, w32fns.c, w32proc.c, xfaces.c:
12405 * xfns.c, xfont.c: All callers of stricmp and strcasecmp changed
12406 to call xstrcasecmp.
12407
12408 * xfont.c (xfont_list_pattern, compare_font_names): Use xstrcasecmp.
12409
12410 * fontset.c (fs_query_fontset): Use xstrcasecmp.
12411
12412 * font.c (font_style_to_value, font_score): Use xstrcasecmp.
12413
12414 * dosfns.c (msdos_stdcolor_idx): Use xstrcasecmp.
12415
124162008-05-22 Kenichi Handa <handa@m17n.org>
12417
12418 * puresize.h (BASE_PURESIZE): Increase to 1220000.
12419
12420 * font.c (font_prop_validate_style): Adjust for the format
12421 change of font_style_table.
12422
12423 * w32font.c (w32font_open_internal): Call Ffont_xlfd_name with
12424 two args.
12425
12426 * xfaces.c (x_update_menu_appearance): Call Ffont_xlfd_name with
12427 two args.
12428
124292008-05-22 Stefan Monnier <monnier@iro.umontreal.ca>
12430
12431 * minibuf.c (keys_of_minibuf): Delete.
12432 * lisp.h (keys_of_minibuf): Delete.
12433 * emacs.c (main): Don't call keys_of_minibuf.
12434
124352008-05-22 Kenichi Handa <handa@m17n.org>
12436
12437 * ftfont.c (ftfont_resolve_generic_family): Rename from
12438 ftfont_list_generic_family. Return a single family for each
12439 generic family.
12440 (ftfont_spec_pattern): Add FC_FAMILY to pattern.
12441 (ftfont_list): Adjust for the change of ftfont_resolve_generic_family.
12442 Call font_add_log.
12443 (ftfont_match): Call font_add_log.
12444
12445 * font.h (Ffont_xlfd_name): EXFUN adjusted.
12446 (FONT_DEBUG): Define it.
12447 (font_add_log): Extern it.
12448 (font_assert): Rename from xassert.
12449
12450 * xfont.c (xfont_get_pcm): Change xassert to font_assert.
12451 (xfont_list_family): Call font_add_log.
12452 (xfont_match): Likewise.
12453 (memq_no_quit): Delete.
12454
12455 * fontset.c (fontset_from_font, Ffontset_info): Add the 2nd arg in
12456 call of Ffont_xlfd_name.
12457
12458 * xfaces.c (struct table_entry, slant_table, weight_table)
12459 (swidth_table): Move to font.c.
12460
12461 * font.c: Checking of FONT_DEBUG is moved to font.h. All calls of
12462 xassert are changed to font_assert. Delete many unused variables.
12463 (Vfont_weight_table, Vfont_slant_table, Vfont_width_table):
12464 New variables.
12465 (struct table_entry): Move from xfaces.c and modified.
12466 (weight_table, slant_table, width_table): Move from xfaces.c and
12467 contents adjusted for the change of struct table_entry.
12468 (font_style_to_value, font_style_symbolic): Adjust for the
12469 format change of font_style_table.
12470 (font_parse_family_registry): Don't overwrite existing foundry and
12471 family of font_spec.
12472 (font_score): Fix calculation of diff for sizes.
12473 (font_sort_entites): Call font_add_log.
12474 (font_delete_unmatched): Return a newly created list.
12475 (font_list_entities): Fix previous change. Call font_add_log.
12476 (font_matching_entity, font_open_entity, font_close_entity):
12477 Call font_add_log.
12478 (Ffont_xlfd_name): New arg FOLD-WILDCARDS.
12479 (Finternal_set_font_style_table): Delete.
12480 (BUILD_STYLE_TABLE): New macro.
12481 (build_style_table): New function.
12482 (Vfont_log, font_log_env_checked): New variables.
12483 (font_add_log): New function.
12484 (syms_of_font): Delete defsubr Sinternal_set_font_style_table.
12485 Declare Lisp variables "font-weight-table", "font-slant-table",
12486 "font-width-table", and "font-log". Initialize font_style_table.
12487
124882008-05-21 Dan Nicolaescu <dann@ics.uci.edu>
12489
12490 * xterm.c (x_set_frame_alpha): Move declarations before statements.
12491
124922008-05-21 Seiji Zenitani <zenitani@mac.com>
4e2af782 12493 Ryo Yoshitake <ryo@shiftmode.net>
aac0c6e3
MR
12494
12495 * frame.c (Qalpha): Add a new frame parameter `alpha'.
12496 (Vframe_alpha_lower_limit): New variable.
12497 (x_set_alpha): New function.
12498
12499 * frame.h (Qalpha, Vframe_parameter_lower_limit): Export them.
12500
12501 * xfns.c (x-create-frame, Qalpha):
12502 Initialize the frame parameter `alpha'.
12503 * xterm.c (OPAQUE, OPACITY): New.
12504 (x_set_frame_alpha): New function.
12505 (frame_highlight, frame_unhighlight): Call x_set_frame_alpha.
12506
12507 * macfns.c (mac_frame_parm_handlers): A null handler for x_set_alpha.
12508 * w32fns.c (w32_frame_parm_handlers): Likewise.
12509
125102008-05-20 Jason Rumney <jasonr@gnu.org>
12511
12512 * w32font.c (add_font_entity_to_list): Don't add non-opentype
12513 truetype fonts to opentype list.
12514
125152008-05-20 Juanma Barranquero <lekktu@gmail.com>
12516
12517 * fontset.c (Ffontset_info): Doc fix.
12518 (syms_of_fontset) <font-encoding-charset-alist, use-default-ascent>:
12519 <ignore-relative-composition>: Fix typos in docstrings.
12520
12521 * font.c (syms-of-font) <font-encoding-alist>:
12522 (Ffontp, Ffont_make_gstring): Fix typos in docstrings.
12523 (Flist_fonts, Ffont_family_list, Ffont_fill_gstring, Fquery_font)
12524 (Ffont_otf_alternates): Doc fixes.
12525
125262008-05-20 Kenichi Handa <handa@m17n.org>
12527
12528 * Makefile.in (FONTSRC): Delete it. Change all $(FONTSRC) to
12529 font.h through out the file.
12530 (FONT_DRIVERS): Rename from FONTOBJ.
12531 (obj): Change $(FONTOBJ) to $(FONT_DRIVERS). Add font.o.
12532 (SOME_MACHINE_OBJECTS): Change $(FONTOBJ) to $(FONT_DRIVERS).
12533
12534 * emacs.c (main): Call syms_of_font unconditionally.
12535
12536 * font.h (find_font_encoding): Extern it.
12537
12538 * font.c (Vfont_encoding_alist, find_font_encoding): Move from
12539 fontset.c.
194d44e7 12540 (font_pixel_size) [! HAVE_WINDOW_SYSTEM]: Return 1.
aac0c6e3
MR
12541 (font_open_entity): Update FRAME_X_DISPLAY_INFO (f)->n_fonts,
12542 FRAME_SMALLEST_CHAR_WIDTH (f), and FRAME_SMALLEST_FONT_HEIGHT (f)
12543 only when HAVE_WINDOW_SYSTEM is defined.
12544 (font_close_object): Update FRAME_X_DISPLAY_INFO (f)->n_fonts only
12545 when HAVE_WINDOW_SYSTEM is defined.
12546
12547 * fontset.c (Vfont_encoding_alist, find_font_encoding): Move to font.c.
12548 (syms_of_fontset): Move declaration of font-encoding-alist to font.c.
12549
12550 * xfaces.c: Include font.h unconditionally.
12551 (merge_face_ref, merge_face_vectors)
12552 (Finternal_set_lisp_face_attribute): Cancel the previous change.
12553
125542008-05-20 Stefan Monnier <monnier@iro.umontreal.ca>
12555
12556 * xdisp.c (select_frame_for_redisplay): Adjust for last change to
12557 indirect_variable.
12558 * eval.c (lisp_indirect_variable): New fun.
12559 (Fuser_variable_p): Use it.
12560
125612008-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
12562
12563 * lisp.h (indirect_variable):
12564 * data.c (indirect_variable, let_shadows_buffer_binding_p):
12565 Use Lisp_Symbol pointers rather than Lisp_Object.
12566 Adjust callers.
12567 * buffer.c (buffer_slot_type_mismatch): Use wrong-type-argument.
12568 To this end, change calling-convention.
12569
12570 * minibuf.c (Finternal_complete_buffer): Only strip out hidden buffers
12571 if some non-hidden buffers are selected by string&pred.
12572
125732008-05-19 Chong Yidong <cyd@stupidchicken.com>
12574
12575 * process.c (wait_reading_process_output): Always check status
12576 when in batch mode.
12577
125782008-05-19 Kenichi Handa <handa@m17n.org>
12579
12580 * font.c (font_list_entities): Fix handling of cache.
12581 (font_matching_entity): Likewise.
12582
12583 * ftfont.c (cs_iso8859_1): Delete.
12584 (ft_face_cache): New variable.
12585 (struct ftfont_info): New member fc_charset_idx.
12586 (ftfont_build_basic_charsets): Delete.
12587 (fc_charset_table): New variable.
12588 (ftfont_pattern_entity): New arg fc_charset_idx. Store (FILENAME
12589 . FC_CHARSET_IDX) as :font-entity property in the font entity.
12590 Callers changed.
12591 (ftfont_lookup_cache, ftfont_get_charset): New functions.
12592 (ftfont_spec_pattern): New argument fc_charset_idx.
12593 Check registry more rigidly. Change callers.
12594 (ftfont_open, ftfont_close, ftfont_has_char): Adjust for the
12595 change of :font-entity property of the font.
12596
12597 * xftfont.c (xftfont_open): Adjust for the change of :font-entity
12598 property of the font.
12599
126002008-05-18 Juanma Barranquero <lekktu@gmail.com>
12601
12602 * coding.c (Fcoding_system_p): Rename argument to match docstring.
12603 (Funencodable_char_position, Fcheck_coding_systems_region)
12604 (Fdecode_coding_string, Fencode_coding_string): Fix typos in docstrings.
12605 (Fdetect_coding_region, Fdetect_coding_string, Fencode_coding_region)
12606 (Ffind_operation_coding_system, Fset_coding_system_priority)
12607 (Fcoding_system_eol_type): Doc fixes.
12608
126092008-05-17 Glenn Morris <rgm@gnu.org>
12610
12611 * sysdep.c (child_setup_tty): Handle systems with NLDLY, without FFDLY.
12612
126132008-05-16 Eli Zaretskii <eliz@gnu.org>
12614
12615 * dired.c (Ffile_attributes): Shut up GCC warnings about st_uid
12616 and st_gid.
12617
12618 * frame.c (Fdelete_frame): Don't call font_update_drivers if
12619 HAVE_WINDOW_SYSTEM is not defined.
12620
12621 * xfaces.c (merge_face_ref, merge_face_vectors)
12622 (Finternal_set_lisp_face_attribute): Use FONT_*_INDEX only when
12623 HAVE_WINDOW_SYSTEM is defined.
12624 (Fface_font): Fix non-HAVE_WINDOW_SYSTEM case.
12625
126262008-05-16 Stefan Monnier <monnier@iro.umontreal.ca>
12627
12628 * keyboard.c (parse_menu_item): Do not cache key shortcut any more.
12629
126302008-05-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12631
12632 * macterm.c (x_draw_relief_rect): Remove unused variable `dpy'.
12633
126342008-05-15 Kenichi Handa <handa@m17n.org>
12635
12636 * font.c (font_find_for_lface): Reflect LFACE_FONT in the font
12637 preference.
12638
126392008-05-15 Glenn Morris <rgm@gnu.org>
12640
12641 * emacs.c (USAGE1, standard_args): Remove -disable-font-backend.
12642
126432008-05-15 Chong Yidong <cyd@stupidchicken.com>
12644
12645 * fns.c (init_fns): Don't initialize weak_hash_tables here.
12646 (init_weak_hash_tables): New fun. Initialize weak_hash_tables.
12647
12648 * alloc.c (init_alloc_once): Call init_weak_hash_tables.
12649
126502008-05-15 Kenichi Handa <handa@m17n.org>
12651
12652 * ftfont.c (ftfont_list): Downcase family name to check generic
12653 families.
12654
12655 * xfaces.c (Finternal_set_lisp_face_attribute): Be sure to make a
12656 font-spec for QCfont value.
12657
12658 * fontset.c (Fnew_fontset): Call font_unparse_xlfd with 256-byte
12659 buffer. Check the return value of it.
12660
126612008-05-14 Jason Rumney <jasonr@gnu.org>
12662
12663 * w32term.c (w32_get_glyph_overhangs): Remove.
12664 (w32_redisplay_interface): Use x_get_glyph_overhangs instead.
12665
126662008-05-14 Kenichi Handa <handa@m17n.org>
12667
12668 * font.c (font_prop_validate): Make nil a valid value.
12669 (font_clear_cache): Check if the cached vector of entities is nil
12670 or not.
12671
126722008-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12673
12674 * emacs.c (main_thread): Conditionalize on
12675 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
12676 (main) [FORWARD_SIGNAL_TO_MAIN_THREAD]: Initialize it.
12677
12678 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): New define.
12679 (main_thread, SIGNAL_THREAD_CHECK): Conditionalize on
12680 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
12681
126822008-05-14 Kenichi Handa <handa@m17n.org>
12683
12684 * coding.c (detect_coding_iso_2022): Ignore a coding category that
12685 has no corresponding coding system.
12686
126872008-05-14 Jason Rumney <jasonr@gnu.org>
12688
12689 * font.h (struct font) [WINDOWSNT]: Remove codepage member.
12690
12691 * w32font.h (w32font_open_internal): Update declaration.
12692
12693 * w32font.c (w32font_open_internal): Change last argument from
12694 w32font_info struct to font object. Fill in font object from
12695 font_entity. Get Outline metrics if possible. Use them to
12696 calculate underline position and thickness. Use xlfd name as name
12697 property. Don't set codepage.
12698 (w32font_open): Pass font_object to w32font_open_internal. Don't
12699 update dpyinfo->smallest_font_height and dpyinfo->smallest_char_width.
12700 (w32font_draw): Use s->font.
12701 (clear_cached_metrics): Don't clear non-existent blocks.
12702
12703 * w32term.c (w32_compute_glyph_string_overhangs): Don't compute if
12704 font was not found.
12705 (x_draw_glyph_string): Use underline position and thickness from font.
12706
12707 * w32uniscribe.c (uniscribe_open): Pass font_object to
12708 w32font_open_internal.
12709
127102008-05-14 Kenichi Handa <handa@m17n.org>
12711
12712 These changes are to delete all legacy font-handling codes, and
12713 make Emacs use only font-backends.
12714
12715 * Makefile.in: Delete USE_FONT_BACKEND conditionals.
12716 (frame.o, image.o, print.o): Depend on $(FONTSRC).
12717
12718 * makefile.w32-in (WIN32OBJ): Add w32reg.$(O), remove w32bdf.$(O).
12719
12720 * charset.h (Vcharset_non_preferred_head)
12721 (Vcurrent_iso639_language): Extern them.
12722
12723 * charset.c (Vcharset_non_preferred_head): New variable.
12724 (Vcurrent_iso639_language): New variable.
12725 (syms_of_charset): Declare it as a Lisp variable.
12726 (char_charset): Don't check non preferred charsets. As a last
12727 resort, return charset_unicode.
12728 (Fset_charset_priority): Update Vcharset_non_preferred_head.
12729
12730 * composite.c: Throughout the file, delete all USE_FONT_BACKEND
12731 conditionals. Don't check enable_font_backend. Delete all codes
12732 used only when USE_FONT_BACKEND is not defined.
12733
12734 * dispextern.h (struct glyph_string): Change type of `font' to
12735 `struct font *'.
12736 (struct glyph_string): New member underline_position and
12737 underline_thickness.
12738 (enum lface_attribute_index): Remove LFACE_AVGWIDTH_INDEX.
12739 (struct face): Change type of `font' to `struct font *'. Remove
12740 members `font_name', `font_info_id'.
12741 (per_char_metric, encode_char): Delete externs.
12742 (calc_pixel_width_or_height): Adjust the prototype.
12743
12744 * emacs.c (enable_font_backend): Delete extern.
12745 (main): Don't set enable_font_backend. Don't check the command
12746 line argument "-disable-font-backend".
12747
12748 * font.h (Qfont_spec, Qfont_entity, Qfont_object): Extern them.
12749 (enum font_property_index): New members FONT_DPI_INDEX,
12750 FONT_SPACING_INDEX, FONT_AVGWIDTH_INDEX, FONT_NAME_INDEX,
12751 FONT_FULLNAME_INDEX, FONT_FILE_INDEX, FONT_FORMAT_INDEX,
12752 FONT_OBJECT_MAX. Delete FONT_FRAME_INDEX.
12753 (FONT_WEIGHT_NUMERIC, FONT_SLANT_NUMERIC, FONT_WIDTH_NUMERIC)
12754 (FONT_WEIGHT_SYMBOLIC, FONT_SLANT_SYMBOLIC, FONT_WIDTH_SYMBOLIC)
12755 (FONT_WEIGHT_FOR_FACE, FONT_SLANT_FOR_FACE, FONT_WIDTH_FOR_FACE)
12756 (FONT_WEIGHT_NAME_NUMERIC, FONT_SLANT_NAME_NUMERIC)
12757 (FONT_WIDTH_NAME_NUMERIC, FONT_SET_STYLE): New macros.
12758 (struct font_spec, struct font_entity): New structs.
12759 (FONT_ENCODING_NOT_DECIDED): Moved from fontset.h.
12760 (struct font): Many members from old "struct font_info" moved to
12761 here. Members font and entity deleted.
12762 (FONT_SPEC_P, FONT_ENTITY_P, FONT_OBJECT_P, FONTP): Modified for
12763 the new font-related objects.
12764 (CHECK_FONT_SPEC, CHECK_FONT_ENTITY, CHECK_FONT_OBJECT)
12765 (CHECK_FONT_GET_OBJECT): Likewise.
12766 (XFONT_SPEC, XFONT_ENTITY, XFONT_OBJECT, XSETFONT): New macros.
12767 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved from font.h.
12768 (struct font_driver): New members case_sensitive anc check. Type
12769 of the member list and open changed.
12770 (enable_font_backend, font_symbolic_weight, font_symbolic_slant)
12771 (font_symbolic_width, font_find_object, font_get_spec)
12772 (font_set_lface_from_name): Delete extern.
12773 (Fcopy_font_spec, Fmerge_font_spec, Ffont_family_list): New EXFUNs.
12774
12775 * font.c: Include <strings.h>.
12776 (enable_font_backend): Delete it.
12777 (Qfont_spec, Qfont_entity, Qfont_object): New variables.
12778 (CHECK_VALIDATE_FONT_SPEC): Delete it.
12779 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved to font.h.
12780 (null_string): Delete it.
12781 (null_vector): Make it static.
12782 (font_family_alist): Delete it.
12783 (Qnormal): Extern it.
12784 (QCextra, QClanguage): Delete it.
12785 (QClang, QCavgwidth, QCfont_entity, QCfc_unknown_spec): New variables.
12786 (font_make_spec, font_make_entity, font_make_object)
12787 (font_intern_prop): Renamed from intern_downcase. Don't downcase
12788 the string. Callers changed.
12789 (font_pixel_size): Adjusted for the format change of font-related
12790 objects.
12791 (prop_name_to_numeric, prop_numeric_to_name): Delete them.
12792 (font_style_to_value, font_style_symbolic): New function.
12793 (build_font_family_alist): Delete it.
12794 (font_registry_charsets): Use Fassoc_string instead of
12795 assq_no_quit.
12796 (font_prop_validate_symbol): Don't return null_string.
12797 (font_prop_validate_style): Adjusted for the change of
12798 style-related values in a font vector.
12799 (font_property_table): Delete entries for QClanguage and
12800 QCantialias, add entries for QCavgwidth.
12801 (get_font_prop_index): Delete the 2nd argument FROM.
12802 (font_prop_validate): Arguments changed.
12803 (font_put_extra): Adjusted for the change of font-related objects.
12804 (font_expand_wildcards, font_parse_xlfd, font_unparse_xlfd)
12805 (font_parse_fcname, font_unparse_fcname)
12806 (font_prepare_composition): Likewise.
12807 (font_parse_family_registry): Renamed from font_merge_old_spec.
12808 (otf_open): Delete the 1st arg entity.
12809 (font_otf_capability): Adjusted for the above change.
12810 (font_score): New arg alternate_families. Adjusted for the change
12811 of font-related objects.
12812 (font_sort_entites): New arg best_only.
12813 (font_symbolic_weight, font_symbolic_slant, font_symbolic_width):
12814 Delete them.
12815 (font_match_p): Check alternate families.
12816 (font_find_object): Delete it.
12817 (font_check_object): New function.
12818 (font_clear_cache): Adjusted for the change of font-related objects.
12819 (font_delete_unmatched): New arg.
12820 (font_list_entities): Call font_driver->list with a spec that
12821 doesn't specify style-related properties.
12822 (font_matching_entity): Arguments changed. Caller changed.
12823 (font_open_entity): Adjusted for the change of font-related objects.
12824 (font_close_object, font_has_char, font_encode_char)
12825 (font_get_name, font_get_spec): Likewise.
12826 (font_spec_from_name, font_clear_prop, font_update_lface):
12827 New functions.
12828 (font_find_for_lface, font_open_for_lface, font_load_for_lface)
12829 (font_prepare_for_face, font_done_for_face, font_open_by_name)
12830 (font_at): Adjusted for the change of font-related objects.
12831 (font_range): New function.
12832 (Ffontp, Ffont_spec, Ffont_get, Ffont_put, Flist_fonts)
12833 (Ffont_xlfd_name): Adjusted for the change of font-related objects.
12834 (Fcopy_font_spec, Fmerge_font_spec): New function.
12835 (Ffont_family_list): Renamed from list-families.
12836 (Finternal_set_font_style_table): Arguments changed.
12837 (Ffont_fill_gstring, Ffont_shape_text, Fopen_font)
12838 (Ffont_drive_otf, Fquery_font, Ffont_match_p): Adjusted for the
12839 change of font-related objects.
12840 (syms_of_font): Delete "ifdef USE_FONT_BACKEND". DEFSYM new symbols.
12841
12842 * fontset.h (struct font_info): Delete it. Most members go to
12843 struct font.
12844 (FONT_ENCODING_NOT_DECIDED): Moved to font.h.
12845 (enum FONT_SPEC_INDEX): Delete it.
12846 (font_info, list_fonts_func, load_font_func, query_font_func)
12847 (set_frame_fontset_func, find_ccl_program_func)
12848 (get_font_repertory_func, new_fontset_from_font_name): Delete
12849 externs.
12850 (fontset_from_font_name): Extern it.
12851 (FS_LOAD_FONT, FONT_INFO_ID, FONT_INFO_FROM_ID)
12852 (FONT_INFO_FROM_FACE): Deleted.
12853 (face_for_font): Adjust prototype.
12854
12855 * fontset.c: Throughout the file, delete all USE_FONT_BACKEND
12856 conditionals. Don't check enable_font_backend. Delete all codes
12857 used only when USE_FONT_BACKEND is not defined.
12858 (get_font_info_func, list_font_func, load_font_func)
12859 (query_font_func, set_frame_fontset_func, find_ccl_program_func)
12860 (get_font_repertory_func): Delete them.
12861 (FONTSET_SPEC, FONT_DEF_NEW, FONT_DEF_SPEC, FONT_DEF_ENCODING)
12862 (FONT_DEF_REPERTORY, RFONT_DEF_FACE, RFONT_DEF_SET_FACE)
12863 (RFONT_DEF_FONT_DEF, RFONT_DEF_SPEC, RFONT_DEF_REPERTORY)
12864 (RFONT_DEF_OBJECT, RFONT_DEF_SET_OBJECT, RFONT_DEF_SCORE)
12865 (RFONT_DEF_SET_SCORE, RFONT_DEF_NEW): New macros.
12866 (fontset_compare_rfontdef): New function.
12867 (reorder_font_vector): Remove the argument CHARSET-ID. Sort
12868 rfont-defs by qsort. Adjusted for the change of font-group vector.
12869 (load_font_get_repertory): Deleted.
12870 (fontset_find_font): Use new macros to ref/set elements of
12871 font-def and rfont-def.
12872 (fontset_font): Fix the timing of remembering that no font for C.
12873 (free_face_fontset): Do nothing if the face has no fontset.
12874 (face_suitable_for_char_p): Use new macros to ref/set elements of
12875 rfont-def.
12876 (face_for_char): Likewise. Call face_for_char with font_object.
12877 (fs_load_font): Delete. Delete #pragma surrounding it.
12878 (fs_query_fontset): Use strcasecmp instead of strcmp.
12879 (generate_ascii_font_name): Adjusted for the format change of
12880 font-spec.
12881 (Fset_fontset_font): Likewise. Use new macros to set elements of
12882 font-def.
12883 (Fnew_fontset): Use font_unparse_xlfd to generate
12884 FONTSET_ASCII (fontset).
12885 (new_fontset_from_font_name): Deleted.
12886 (fontset_from_font): Renamed from new_fontset_from_font. Check if
12887 a fontset is already created for the font. FIx updating of
12888 Vfontset_alias_alist.
12889 (fontset_ascii_font): Deleted.
12890 (Ffont_info): Adjusted for the format change of font-spec.
12891 (Finternal_char_font): Likewise.
12892 (Ffontset_info): Likewise.
12893 (syms_of_fontset): Don't check load_font_func.
12894
12895 * fns.c (internal_equal): Handle PREV_FONT.
12896
12897 * frame.h: Delete USE_FONT_BACKEND conditional.
12898
12899 * frame.c: Throughout the file, delete all USE_FONT_BACKEND
12900 conditionals. Don't check enable_font_backend. Delete all codes
12901 used only when USE_FONT_BACKEND is not defined.
12902 (x_set_font): Call x_new_font, not x_new_fontset2.
12903 (x_set_font_backend): Use FRAME_FONT macro to check if a font is
12904 already set for the frame.
12905
12906 * ftfont.c (ftfont_pattern_entity): Argument FRAME removed. Make
12907 a font-entity by font_make_entity. Use font_intern_prop instead
12908 of intern_downcase. Use FONT_SET_STYLE to set a style-related
12909 font property. If a font is scalable, set avgwidth property to 0.
12910 Set font-entity property by font_put_extra.
12911 (ftfont_list_generic_family): Argument SPEC and REGISTRY removed.
12912 (ffont_driver): Adjusted for the change of struct font_driver.
12913 (ftfont_spec_pattern): New function.
12914 (ftfont_list): Return a list, not vector.
12915 (ftfont_match): Use ftfont_spec_pattern to get a pattern.
12916 (ftfont_list_family): Don't downcase names.
12917 (ftfont_free_entity): Deleted.
12918 (ftfont_open): Return a font-object. Adjusted for the change of
12919 struct font. Get underline_thickness and underline_position from
12920 font property. Don't update dpyinfo->smallest_font_height and
12921 dpyinfo->smallest_char_width.
12922 (ftfont_close): Don't free `struct font'.
12923 (ftfont_has_char): Adjusted for the format change of font-entity.
12924 (ftfont_encode_char, ftfont_text_extents): Likewise.
12925
12926 * ftxfont.c (ftxfont_list): Return a list, not vector.
12927 (ftxfont_open): Return a font-object. Adjusted for the change of
12928 struct font. Get underline_thickness and underline_position from
12929 font property. Don't update dpyinfo->smallest_font_height and
12930 dpyinfo->smallest_char_width.
12931 (ftxfont_close): Don't decrease FRAME_X_DISPLAY_INFO (f)->n_fonts.
12932 (ftxfont_draw): Adjusted for the change of struct font.
12933
12934 * image.c (image_ascent): Don't include "charset.h". Include
12935 "character.h" and "font.h".
12936
12937 * lisp.h (enum pvec_type): New member PREV_FONT.
12938 (Fassoc_string): EXFUN it.
12939
12940 * print.c: Include font.h.
12941 (print_object): Handle font-related objects.
12942
12943 * xdisp.c: Throughout the file, delete all USE_FONT_BACKEND
12944 conditionals. Don't check enable_font_backend. Delete all codes
12945 used only when USE_FONT_BACKEND is not defined.
12946 (handle_auto_composed_prop): Do nothing if it->f is not on a
12947 window system. Check how many following characters can be
12948 displayed by the same font.
12949 (calc_pixel_width_or_height): Type of the 4th arg is changed to
12950 'struct font *'.
12951 (get_char_face_and_encoding): Assign the whole encoding task to
12952 the `encode-char' method of a font driver.
12953 (fill_composite_glyph_string): Adjusted for the change of `struct
12954 face' and `struct glyph_string'.
12955 (fill_glyph_string): Likewise.
12956 (get_per_char_metric): Arguments changed.
12957 (x_get_glyph_overhangs): Adjusted for the change of `struct face'
12958 and `struct glyph_string'.
12959 (produce_stretch_glyph, calc_line_height_property)
12960 (x_produce_glyphs): Likewise.
12961
12962 * xfaces.c: Throughout the file, delete all USE_FONT_BACKEND
12963 conditionals. Don't check enable_font_backend. Delete all codes
12964 used only when USE_FONT_BACKEND is not defined. Use
12965 FONT_XXX_NAME_NUMERIC instead of face_numeric_xxx.
12966 (QCfoundry, QCadstyle, QCregistry, QCspacing, QCsize, QCavgwidth)
12967 (Qp): Extern them.
12968 (clear_font_table, load_face_font, xlfd_lookup_field_contents):
12969 Deleted.
12970 (struct font_name): Deleted.
12971 (xlfd_numeric_value, xlfd_symbolic_value): Deleted.
12972 (compare_fonts_by_sort_order): New function.
12973 (xlfd_numeric_slant, xlfd_symbolic_slant, xlfd_numeric_weight)
12974 (xlfd_symbolic_weight, xlfd_numeric_swidth, xlfd_symbolic_swidth):
12975 Deleted.
12976 (Fx_family_fonts): Use font_list_entities, and sort fonts by
12977 compare_fonts_by_sort_order.
12978 (Fx_font_family_list): Call Ffont_family_list.
12979 (face_numeric_value, face_numeric_weight, face_numeric_slant)
12980 (face_numeric_swidth, face_symbolic_value, face_symbolic_weight)
12981 (face_symbolic_slant, face_symbolic_swidth)
12982 (split_font_name_into_vector, build_font_name_from_vector)
12983 (xlfd_fixed_p, xlfd_point_size, pixel_point_size)
12984 (font_rescale_ratio, split_font_name, build_font_name)
12985 (free_font_names, sort_fonts, x_face_list_fonts)
12986 (face_font_available_p, sorted_font_list, cmp_font_names)
12987 (font_list_1, concat_font_list, font_list, remove_duplicates):
12988 Deleted.
12989 (Fx_list_fonts): Use Ffont_list.
12990 (LFACE_AVGWIDTH): Deleted.
12991 (check_lface_attrs): Don't check LFACE_AVGWIDTH. Check LFACE_FONT
12992 by FONTP.
12993 (lface_fully_specified_p): Don't check LFACE_AVGWIDTH.
12994 (set_lface_from_font_name): Delete it.
12995 (set_lface_from_font): Renamed from
12996 set_lface_from_font_and_fontset. Caller changed. Don't set
12997 LFACE_AVGWIDTH. Use FONT_XXX_FOR_FACE to get a symbol suitable
12998 for face.
12999 (merge_face_vectors): Copy font-spec if necessary.
13000 Clear properties of the font-spec if necessary.
13001 (merge_face_ref): Clear properties of the font-spec if necessary.
13002 (Finternal_set_lisp_face_attribute): Likewise.
13003 (set_font_frame_param): Use font_load_for_lface to load a
13004 font-object, and call Fmodify_frame_parameters with it.
13005 (x_update_menu_appearance): Don't check LFACE_AVGWIDTH. Get XLFD
13006 font name by Ffont_xlfd_name.
13007 (Finternal_lisp_face_attribute_values): Don't check QCweight,
13008 QCslant, and QCwidth.
13009 (Fface_font): Get a font name from font->props[FONT_NAME_INDEX].
13010 (lface_same_font_attributes_p): Don't check LFACE_AVGWIDTH.
13011 Compare fonts by EQ.
13012 (lookup_non_ascii_face): Deleted.
13013 (face_for_font): The 2nd argument changed.
13014 (x_supports_face_attributes_p): Don't check LFACE_AVGWIDTH.
13015 Check atomic font properties by case insensitive.
13016 (realize_non_ascii_face): Set face->overstrike correctly.
13017 (realize_x_face): Likewise. Check if LFACE_FONT is a font_object.
13018 (dump_realized_face): Get font name from
13019 font->props[FONT_NAME_INDEX]. Don't print font_info_id.
13020
13021 * xfns.c: Throughout the file, delete all USE_FONT_BACKEND
13022 conditionals. Don't check enable_font_backend. Delete all codes
13023 used only when USE_FONT_BACKEND is not defined.
13024 (xic_create_xfontset): Original code deleted and renamed from
13025 xic_create_xfontset2. Use FRAME_FONT, not FRAME_FONT_OBJECT.
13026 (x_make_gc): Don't set GCFont in GCs.
13027 (Fx_create_frame) [USE_LUCID]: Set xlwmenu_default_font to a font
13028 opened by "fixed".
13029 (syms_of_xfns): Don't set get_font_info_func, load_font_func,
13030 find_ccl_program_func, query_font_func, set_frame_fontset_func,
13031 get_font_repertory_func.
13032
13033 * xfont.c: Include <stdlib.h> and "ccl.h".
13034 (struct xfont_info): New structure.
13035 (xfont_query_font): Deleted.
13036 (xfont_find_ccl_program): Renamed from x_find_ccl_program and
13037 moved from xterm.c.
13038 (xfont_driver): Adjusted for the change of struct font_driver.
13039 (compare_font_names): New function.
13040 (xfont_list_pattern): Sort font names case insensitively. Make
13041 font_entity by calling font_make_entity. Avoid auto-scaled fonts.
13042 (xfont_list): Return a list, not vector.
13043 (xfont_match): If the font doesn't have QCname property, generate
13044 a name from the other font properties.
13045 (xfont_open): Return a font-object. Adjusted for the change of
13046 struct font. Get underline_thickness and underline_position from
13047 font property. Don't update dpyinfo->smallest_font_height and
13048 dpyinfo->smallest_char_width.
13049 (xfont_close): Don't free struct font.
13050 (xfont_prepare_face): Adjusted for the change of struct font.
13051 (xfont_done_face): Deleted.
13052 (xfont_has_char): Adjusted for the change of struct font.
13053 (xfont_encode_char, xfont_draw): Likewise.
13054 (xfont_check): New function.
13055
13056 * xftfont.c (xftfont_list): Adjusted for the change of `list'
13057 callback function.
13058 (xftfont_match): Adjusted for the format change of font-entity.
13059 (xftfont_open): Adjusted for the format change of font-entity and
13060 font-object. Adjusted for the change of struct font. Return a
13061 font-object. Don't update dpyinfo->smallest_font_height and
13062 dpyinfo->smallest_char_width.
13063 (xftfont_close): Block input while calling XftFontClose.
13064 (xftfont_prepare_face): Don't block input while calling
13065 xftfont_get_colors. Adjusted for the change of struct font.
13066 (xftfont_shape): Return value of error case fixed.
13067
13068 * xrdb.c (x_load_resources): Don't setup a fontset resource.
13069
13070 * xterm.h: Throughout the file, delete all USE_FONT_BACKEND
13071 conditionals.
13072 (FONT_WIDTH): Return (f)->max_width.
13073 (struct x_display_info): Delete member `font'.
13074 (x_list_fonts, x_get_font_info, x_load_font, x_query_font)
13075 (x_find_ccl_program, x_get_font_repertory): Delete externs.
13076 (struct x_output): Change type of `font' to `struct font *'.
13077
13078 * xterm.c: Throughout the file, delete all USE_FONT_BACKEND
13079 conditionals. Don't check enable_font_backend. Delete all codes
13080 used only when USE_FONT_BACKEND is not defined. Don't include ccl.h.
13081 (x_per_char_metric, x_encode_char): Deleted.
13082 (x_set_cursor_gc, x_set_mouse_face_gc): Don't set GCFont.
13083 (x_compute_glyph_string_overhangs): Adjusted for the change of
13084 `struct face'.
13085 (x_draw_glyph_string_foreground)
13086 (x_draw_composite_glyph_string_foreground): Likewise.
13087 (x_draw_glyph_string): Likewise. Use font->underline_position and
13088 font->underline_thickness.
13089 (x_new_font): Renamed from x_new_fontset2.
13090 (x_new_fontset, x_get_font_info, x_list_fonts): Deleted.
13091 (x_check_font): Call `check' method of a font driver.
13092 (x_font_min_bounds, x_compute_min_glyph_bounds, x_load_font)
13093 (x_query_font, x_get_font_repertory): Deleted.
13094 (x_find_ccl_program): Renamed and moved to xfont.c.
13095 (x_redisplay_interface): Adjusted for the change of `struct
13096 redisplay_interface'.
13097
13098 * w32fns.c: Throughout the file, delete all USE_FONT_BACKEND
13099 conditionals. Don't check enable_font_backend. Delete all codes
13100 used only when USE_FONT_BACKEND is not defined. Surround non-used
13101 code by "#ifdef OLD_FONT" and "endif".
13102 (Fw32_select_font): Use FONT_COMPAT to get old font structure.
13103
13104 * w32font.h (struct w32font_info): New member.
13105 (FONT_COMPAT): New macro.
13106 (w32font_open_internal): Prototype adjusted.
13107
13108 * w32gui.h (XGCValues): Surround `XFontStruct *font' by "if
13109 OLD_FONT" and "endif".
13110
13111 * w32font.c: Throughout the file, delete all USE_FONT_BACKEND
13112 conditionals. Don't check enable_font_backend. Delete all codes
13113 used only when USE_FONT_BACKEND is not defined.
13114 (w32font_open): Return a font-object. Make a font-object by
13115 font_make_object. Adjusted for the change of struct w32font_info.
13116 (w32font_close): Don't free struct font. Adjusted for the change
13117 of struct w32font_info.
13118 (w32font_encode_char, w32font_text_extents, w32font_draw):
13119 Adjusted for the change of struct w32font_info.
13120 (w32font_draw): Likewise.
13121 (w32font_list_internal): Return a list, not vector.
13122 (w32font_open_internal): Change the 4th arg to font-object.
13123 Adjusted for the change of struct w32font_info and font-object format.
13124 (add_font_name_to_list): Don't downcase names.
13125 (w32_enumfont_pattern_entity): Make a font-entity by
13126 font_make_entity. Adjusted for the format change of font-entity.
13127 Use FONT_SET_STYLE to set a style-related font property. If a
13128 font is scalable, set avgwidth property to 0. Set font-entity
13129 property by font_put_extra.
13130 (font_matches_spec): Adjusted for the format change of font-entity.
13131 (w32_weight_table, w32_decode_weight): New variables.
13132 (w32_encode_weight): New function.
13133 (fill_in_logfont): Adjusted for the format change of font-spec.
13134 (w32font_full_name): Use FONT_WEIGHT_SYMBOLIC to get a symbol
13135 weight value.
13136 (w32font_driver): Adjusted for the change of struct font_driver.
13137
13138 * w32term.h: Throughout the file, delete all USE_FONT_BACKEND
13139 conditionals. Don't check enable_font_backend. Surround non-used
13140 code by "#ifdef OLD_FONT" and "endif".
13141 (FONT_WIDTH, FONT_HEIGHT, FONT_BASE, FONT_DESCENT)
13142 (FONT_AVG_WIDTH): Adjusted for the change of struct font.
13143
13144 * w32term.c: Throughout the file, delete all USE_FONT_BACKEND
13145 conditionals. Don't check enable_font_backend. Delete all codes
13146 used only when USE_FONT_BACKEND is not defined. Surround non-used
13147 code by "#ifdef OLD_FONT" and "endif".
13148
13149 * w32uniscribe.c: Delete USE_FONT_BACKEND conditional.
13150 (uniscribe_open): Return value changed to font-object.
13151 Adjusted for the format change of font-object.
13152 (uniscribe_otf_capability): Adjusted for the change of struct font.
13153 (add_opentype_font_name_to_list): Don't downcase names.
13154 (uniscribe_font_driver): Adjusted for the change of struct
13155 font_driver.
13156
131572008-05-13 Chong Yidong <cyd@stupidchicken.com>
13158
13159 * dispnew.c (update_frame_1): Check if tty output is still valid
13160 before flushing it.
13161
131622008-05-13 Jan Djärv <jan.h.d@swipnet.se>
13163
13164 * xterm.c (handle_one_xevent): Don't pass buttons higher than 3
13165 to Gtk+ menus.
13166
131672008-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
13168
13169 * dired.c (file_name_completion): Tweak the code so as to always do it
13170 in a single pass. Tighten the scope of some variables.
13171
13172 * dired.c (Qdefault_directory): New var.
13173 (file_name_completion): Use it instead of Fexpand_file_name.
13174 (syms_of_dired): Initialize it.
13175
131762008-05-12 Stefan Monnier <monnier@iro.umontreal.ca>
13177
13178 * fileio.c (double_dollars): Remove dead code.
13179
131802008-05-10 Eli Zaretskii <eliz@gnu.org>
13181
13182 * dired.c (Ffile_attributes, Fdirectory_files_and_attributes):
13183 Mention w32-get-true-file-attributes in doc string.
13184
13185 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
13186
131872008-05-09 Glenn Morris <rgm@gnu.org>
13188
13189 * fileio.c (Fread_file_name): Remove reference to insdef, deleted
13190 2008-04-23.
13191
131922008-05-09 Eli Zaretskii <eliz@gnu.org>
13193
13194 Support for reporting owner and group of each file on MS-Windows:
13195 * dired.c (stat_uname, stat_gname): New functions, with special
13196 implementation for w32.
13197 (Ffile_attributes): Use them instead of getpwuid and getgrgid.
13198
13199 * w32.c: Rename the_passwd_* to dflt_passwd_*.
13200 (dflt_group_name): New static variable.
13201 (dflt_group): Rename from the_group.
13202 (init_user_info): Init dflt_group fields. Get user's group name
13203 from LookupAccountSid.
13204 (g_b_init_get_file_security, g_b_init_get_security_descriptor_owner)
13205 (g_b_init_get_security_descriptor_group, g_b_init_is_valid_sid):
13206 New initialization states.
13207 (globals_of_w32): Initialize them to zero. Initialize the default
13208 group name to "None".
13209 (GetFileSecurity_Name): New global var, the name of the function
13210 to call for GetFileSecurity.
13211 (GetFileSecurity_Proc, GetSecurityDescriptorOwner_Proc)
13212 (GetSecurityDescriptorGroup_Proc, IsValidSid_Proc): New typedefs.
13213 (get_file_security, get_security_descriptor_owner)
13214 (get_security_descriptor_group, is_valid_sid)
13215 (get_file_security_desc, get_rid, get_name_and_id)
13216 (get_file_owner_and_group): New functions.
13217 (stat): Use get_file_security_desc and get_file_owner_and_group to
13218 report the owner and primary group of each file. Don't ignore the
13219 high 32 bits of file's size, now that st_size is 64-bit wide.
13220 Fix test when to get true file attributes.
13221 (init_user_info): Use get_rid instead of equivalent inline code.
13222 (fstat): Don't ignore the high 32 bits of file's size.
13223
132242008-05-09 Chong Yidong <cyd@stupidchicken.com>
13225
13226 * image.c (png_load): Use correct bit-depth for setting background
13227 color.
13228
132292008-05-08 Eli Zaretskii <eliz@gnu.org>
13230
13231 * Makefile.in (lisp, shortlisp): Rename epa-file-hook.elc to
13232 epa-hook.elc.
13233
132342008-05-08 Juanma Barranquero <lekktu@gmail.com>
13235
13236 * font.c (Ffont_match_p): Don't use `iff' in docstring.
13237
132382008-05-07 Dan Nicolaescu <dann@ics.uci.edu>
13239
13240 * macfns.c (Fx_create_frame): Make a copy of frame parameters
13241 because the original parameters are in pure storage now.
13242 (mac_window): Remove unused params. Update callers.
13243
132442008-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
13245
13246 * lread.c (substitute_object_recurse): Use lower-level primitives.
13247 Don't signal errors when traversing sub-char-tables.
13248 Don't loop over all the possible characters when traversing char-tables.
13249
13250 * print.c (print_preprocess): Add sub-char-tables to the print-table,
13251 just like we do in print.c.
13252
132532008-05-05 Stefan Monnier <monnier@iro.umontreal.ca>
13254
13255 * minibuf.c (Ftry_completion): Remove code left over from when we used
13256 scmp instead of Fcompare_strings.
13257
132582008-05-04 Juanma Barranquero <lekktu@gmail.com>
13259
13260 * w32fns.c (Fw32_battery_status): Fix computation of %t (h:min) format.
13261
132622008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13263
13264 * image.c [USE_MAC_IMAGE_IO] (image_load_image_io):
13265 Create bitmap context in native byte order.
13266
13267 * macterm.c (XDrawLine)
13268 (XCreatePixmapFromBitmapData) [USE_MAC_IMAGE_IO]: Create bitmap
13269 context in native byte order.
13270
132712008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13272
13273 * config.in: Regenerate.
13274
13275 * image.c (PIX_MASK_DRAW, PIX_MASK_RETAIN) [USE_MAC_IMAGE_IO]:
13276 New definitions for Image I/O support.
13277 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
13278 (mac_create_cg_image_from_image, x_create_x_image_and_pixmap)
13279 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
13280 (mac_data_provider_release_data, image_load_image_io)
13281 [USE_MAC_IMAGE_IO]: New functions.
13282 (CGImageCreateWithPNGDataProviderProcType) [MAC_OSX]: Remove typedef.
13283 (MyCGImageCreateWithPNGDataProvider) [MAC_OSX]: Remove variable.
13284 (init_image_func_pointer) [MAC_OSX]: Remove function.
13285 (image_load_quartz2d) [MAC_OSX]: Check availability of
13286 CGImageCreateWithPNGDataProvider at compile time.
13287 Use lowercase `false' for boolean constant.
13288 (png_load, jpeg_load, tiff_load, gif_load) [USE_MAC_IMAGE_IO]:
13289 Use image_load_image_io.
13290 (png_load) [!USE_MAC_IMAGE_IO && MAC_OSX]:
13291 Don't check MyCGImageCreateWithPNGDataProvider.
13292 (init_image) [MAC_OSX && TARGET_API_MAC_CARBON]:
13293 Don't call init_image_func_pointer.
13294
13295 * macgui.h (Pixmap) [USE_MAC_IMAGE_IO]: New definition for Image I/O.
13296
13297 * macterm.c (mac_cg_color_space_rgb) [USE_CG_DRAWING]:
13298 Make variable non-static.
13299 (XDrawLine, XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
13300 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
13301
13302 * macterm.h (ARGB_TO_ULONG, ALPHA_FROM_ULONG): New macros.
13303 (RED_FROM_ULONG): Mask off higher bits.
13304 (mac_cg_color_space_rgb) [USE_MAC_IMAGE_IO]: New extern.
13305
13306 * s/darwin.h [HAVE_CARBON && HAVE_AVAILABILITYMACROS_H]:
13307 Include AvailabilityMacros.h.
13308 (USE_MAC_IMAGE_IO, LIBS_IMAGE) [HAVE_CARBON]: New defines.
13309 (LIBS_CARBON) [HAVE_CARBON]: Use LIBS_IMAGE.
13310
133112008-05-03 Stefan Monnier <monnier@iro.umontreal.ca>
13312
13313 * chartab.c (Fset_char_table_range): If range is t, really set all
13314 chars to that value.
13315
133162008-05-03 Eli Zaretskii <eliz@gnu.org>
13317
13318 * dired.c (Ffile_attributes): Don't allow the device number become
13319 negative.
13320
133212008-05-02 Daiki Ueno <ueno@unixuser.org>
13322
13323 * Makefile.in (lisp, shortlisp): Add epa-file-hook.elc.
13324
133252008-05-02 Juri Linkov <juri@jurta.org>
13326
13327 * minibuf.c (Fread_from_minibuffer, Fread_string, Fread_command)
13328 (Fread_variable, Fread_buffer, Fcompleting_read): Document the
13329 DEFAULT argument as a list of default values in docstrings.
13330
133312008-05-01 Chong Yidong <cyd@stupidchicken.com>
13332
13333 * puresize.h (BASE_PURESIZE): Increase to 1210000.
13334
133352008-05-01 Martin Rudalics <rudalics@gmx.at>
13336
13337 * dispnew.c (change_frame_size_1): Preserve small windows when
13338 shrinking frames by calling set_window_height|width with third
13339 arg 2.
13340
13341 * window.h (struct window): Replace field too_small_ok by field
13342 resize_proportionally.
13343
13344 * window.c (make_window): Initialize resize_proportionally.
13345 (enlarge_window): Temporarily set resize_proportionally to make
13346 sure that shrink_windows does scale the window proportionally.
13347 (shrink_windows): When window has resize_proportionally set try
13348 to shrink it proportionally by stealing from other windows.
13349 (struct saved_window, Fset_window_configuration)
13350 (compare_window_configurations): Handle resize_proportionally.
13351 (WINDOW_TOTAL_SIZE): New macro.
13352 (window_min_size, shrink_windows, size_window): Use it.
13353 (check_min_window_sizes): Remove. Invalid values of
13354 window-min-height|width are handled by window_min_size_2 now.
13355 (size_window, Fsplit_window, enlarge_window)
13356 (adjust_window_trailing_edge, grow_mini_window): Don't call
13357 check_min_window_sizes.
13358 (window_min_size_2, window_min_size_1, window_min_size):
13359 New argument safe_p for retrieving "safe" minimum sizes.
13360 (Fdisplay_buffer, Fsplit_window, enlarge_window)
13361 (adjust_window_trailing_edge, grow_mini_window):
13362 Adjust arguments of window_min_size... functions.
13363 (shrink_windows): Argument min_size removed. New argument
13364 safe_p allows shrinking windows to their safe minimum sizes.
13365 Calculate minimum size and decide whether a window shall be
13366 deleted for each window individually.
13367 (size_window): When nodelete_p equals 2, tell shrink_windows to
13368 delete windows only if their new minimum size is no more safe.
13369 (shrink_window_lowest_first): Call window_min_size_1 to make
13370 sure to preserve modeline of bottom-most window when resizing
13371 the minibuffer.
13372 (Fset_window_configuration, Fcurrent_window_configuration)
13373 (compare_window_configurations): Do not handle
13374 window-min-height|width any more.
13375 (syms_of_window): Clarify window-min-height|width doc-strings.
13376
133772008-04-30 Stefan Monnier <monnier@iro.umontreal.ca>
13378
13379 * dired.c (file_name_completion): Fix up the encoding/decoding issue
13380 some more. Copy some of the code from Ftry_completions.
13381 Remove special case code that dates back to initial revision when the
13382 slash was only added when necessary and that can't trigger nowadays.
13383
133842008-04-27 Kenichi Handa <handa@m17n.org>
13385
13386 * font.c (font_prop_validate): Signal `error' instead of `font'.
13387
133882008-04-29 Jason Rumney <jasonr@gnu.org>
13389
13390 * w32fns.c (Fw32_battery_status): New defun.
13391 (syms_of_w32fns): Defsubr it.
13392
133932008-04-28 Andreas Schwab <schwab@suse.de>
13394
13395 * dired.c (file_name_completion): Fix another mixing of encoded
13396 and decoded names.
13397
133982008-04-28 Juanma Barranquero <lekktu@gmail.com>
13399
13400 * w32fns.c (Fw32_define_rgb_color): Fix typo in docstring.
13401
134022008-04-27 Juanma Barranquero <lekktu@gmail.com>
13403
13404 * fringe.c (Fdefine_fringe_bitmap): Doc fix.
13405
134062008-04-27 Andreas Schwab <schwab@suse.de>
13407
13408 * dired.c (file_name_completion): Fix inappropriate mixing of
13409 encoded and decoded names.
13410
13411 * xterm.c (XTread_socket): Fix use of uninitialized variable.
13412
13413 * puresize.h (BASE_PURESIZE): Increase to 1200000.
13414
134152008-04-26 Eli Zaretskii <eliz@gnu.org>
13416
13417 * dired.c (Ffile_attributes) [WINDOWSNT]: Undo change from
13418 2008-03-31, it's not needed anymore with `struct stat' definition
13419 on nt/inc/sys/stat.h. Undo changes from 2007-01-12 and 2007-01-13
13420 for the same reasons.
13421
134222008-04-25 Dennis Gilmore <ausil@fedoraproject.org> (tiny change)
13423
13424 * m/sparc.h: Additional redefinitions for GNU/Linux.
13425
134262008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13427
13428 * macterm.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: New variable.
13429 (syms_of_macterm) [USE_MAC_TSM]: Defvar it.
13430 (Qmouse_drag_overlay) [MAC_OSX]: New variable.
13431 (syms_of_macterm) [MAC_OSX]: Intern and staticpro it.
13432 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
13433 (mac_ax_selected_text_range) [MAC_OSX]: New functions.
13434 (mac_ax_number_of_characters) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
13435 Likewise.
13436
13437 * mactoolbox.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: Add extern.
13438 (fast_find_position, x_y_to_hpos_vpos, mac_ax_selected_text_range)
13439 (mac_ax_number_of_characters): Add externs.
13440 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
13441 [USE_MAC_TSM]: Likewise.
13442 (mac_handle_text_input_event) [MAC_OSX]:
13443 Handle kEventTextInputOffsetToPos for no active input area case.
13444 Handle kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
13445 (mac_handle_document_access_event)
13446 [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: New function.
13447 (install_application_handler) [MAC_OSX]: Register handlers for
13448 kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
13449 (install_application_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
13450 Register mac_handle_document_access_event.
13451
13452 * xdisp.c (x_y_to_hpos_vpos, fast_find_position) [HAVE_CARBON]:
13453 Make functions non-static.
13454
134552008-04-23 Stefan Monnier <monnier@iro.umontreal.ca>
13456
13457 * fileio.c (Vread_file_name_function, Vread_file_name_predicate)
13458 (read_file_name_completion_ignore_case, insert_default_directory)
13459 (Qdefault_directory): Move to minibuffer.el.
13460 (Fread_file_name): Call the new `read-file-name' instead.
13461
134622008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13463
13464 * mac.c (create_apple_event) [TARGET_API_MAC_CARBON]:
13465 Make function non-static.
13466 (create_apple_event_from_event_ref) [TARGET_API_MAC_CARBON]:
13467 Remove function.
13468 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
13469 Move to mactoolbox.c.
13470 (mac_event_parameters_to_lisp) [TARGET_API_MAC_CARBON]: New function.
13471
13472 * macgui.h (CGFloat) [!CGFLOAT_DEFINED]: New typedef.
13473 (mac_rect_make): New macro.
13474
13475 * macterm.c (mac_draw_image_string_atsui) [MAC_OSX]: Use CGFloat
13476 instead of float.
13477 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
13478 (init_cg_color, mac_draw_line, mac_draw_cg_image, XSetForeground)
13479 (XSetBackground) [USE_CG_DRAWING]: Likewise.
13480 (mac_draw_image_string_atsui) [MAC_OSX]: Use mac_rect_make instead of
13481 CGRectMake.
13482 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
13483 (mac_erase_rectangle, mac_draw_cg_image, mac_fill_rectangle)
13484 (mac_set_clip_rectangles) [USE_CG_DRAWING]: Likewise.
13485 (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
13486 instead of WindowRef in argument type.
13487 (XCreatePixmap) [!MAC_OS8]: Don't call SetPortWindowPort.
13488 (mac_invert_rectangle): Use CGContextSetBlendMode if available.
13489 (mac_set_clip_rectangles, mac_reset_clip_rectangles): Take argument F
13490 instead of DISPLAY. All uses changed.
13491 (mac_handle_size_change): Don't call SET_FRAME_GARBAGED.
13492 (x_calc_absolute_position): Simplify so as not to use
13493 FRAME_PIXEL_WIDTH/FRAME_PIXEL_HEIGHT.
13494
13495 * macterm.h (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
13496 instead of WindowRef in argument type.
13497 (create_apple_event_from_event_ref, create_apple_event_from_drag_ref)
13498 [TARGET_API_MAC_CARBON]: Remove externs.
13499 (create_apple_event, mac_event_parameters_to_lisp)
13500 [TARGET_API_MAC_CARBON]: Add externs.
13501
13502 * mactoolbox.c (Vmac_ts_script_language_on_focus)
13503 (saved_ts_script_language_on_focus) [USE_MAC_TSM]: Remove externs.
13504 (XTread_socket) [USE_MAC_TOOLBAR]: Select window if its structure part
13505 is clicked.
13506 (x_activate_menubar): Remove extern for saved_menu_event_location.
13507 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
13508 Move from mac.c.
13509
135102008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13511
13512 * alloc.c [!SYSTEM_MALLOC && !SYNC_INPUT] (uninterrupt_malloc)
13513 [HAVE_GTK_AND_PTHREAD && !DOUG_LEA_MALLOC]: Don't use recursive mutex.
13514
135152008-04-23 Jason Rumney <jasonr@gnu.org>
13516
13517 * w32.c (stat): When Vw32_get_true_file_attributes is Qlocal, get
13518 attributes only for local files.
13519
13520 * w32proc.c (syms_of_ntproc): Change Vw32_get_true_file attributes
13521 default to Qlocal.
13522
135232008-04-22 Juri Linkov <juri@jurta.org>
13524
13525 * buffer.c (Fswitch_to_buffer): Change interactive spec to call
13526 read-buffer-to-switch instead of using the letter "B".
13527
135282008-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
13529
13530 * fileio.c (Qdefault_directory): New variable.
13531 (Fread_file_name): Use it to pass `dir' to the completion functions.
13532
135332008-04-20 Chong Yidong <cyd@stupidchicken.com>
13534
13535 * xdisp.c (pos_visible_p): Check if iterator stops on a display string.
13536
135372008-04-19 Stefan Monnier <monnier@iro.umontreal.ca>
13538
13539 * keyboard.c (Vpre_help_message): Remove.
13540 (show_help_echo): Remove default C code.
13541
13542 * dired.c (directory_files_internal, file_name_completion):
13543 Only call ENCODE_FILE if the string is indeed decoded.
13544
135452008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
13546
13547 * Makefile.in (TOOLKIT_DEFINES): Remove.
13548 (LIBW): Use a bit less #if, remove left over OPEN_LOOK stuff.
13549
135502008-04-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13551
13552 * Makefile.in (MAC_OBJ): Add mactoolbox.o.
13553 (mactoolbox.o): New target.
13554
13555 * mac.c [MAC_OSX] (select_and_poll_event, sys_select):
13556 Use mac_run_loop_run_once instead of CFRunLoopRunInMode.
13557
13558 * macfns.c (x_set_background_color, mac_window, x_create_tip_frame):
13559 Use mac_set_frame_window_background instead of XSetWindowBackground.
13560 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]:
13561 Use mac_is_window_toolbar_visible instead of IsWindowToolbarVisible.
13562 (x_set_name_internal) [TARGET_API_MAC_CARBON]: Use mac_set_window_title
13563 instead of SetWindowTitleWithCFString.
13564 (mac_update_proxy_icon) [TARGET_API_MAC_CARBON]: Remove BLOCK_INPUT.
13565 Move function to mactoolbox.c.
13566 (mac_update_title_bar) [TARGET_API_MAC_CARBON]:
13567 Use mac_set_window_modified instead of SetWindowModified.
13568 Add BLOCK_INPUT around mac_set_window_modified/mac_update_proxy_icon.
13569 (mac_window, x_create_tip_frame): Use mac_create_frame_window.
13570 (Fx_focus_frame): Use mac_front_non_floating_window instead of
13571 FrontNonFloatingWindow. Use mac_activate_window instead of
13572 ActivateWindow. Use mac_active_non_floating_window instead of
13573 ActiveNonFloatingWindow.
13574 (show_hourglass, hide_hourglass) [TARGET_API_MAC_CARBON]:
13575 Use mac_show_hourglass and mac_hide_hourglass.
13576 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use mac_get_global_mouse
13577 instead of GetGlobalMouse.
13578 (Fx_show_tip): Use mac_move_window/mac_size_window/mac_show_window
13579 instead of MoveWindow/SizeWindow/ShowWindow, respectively.
13580 Use mac_bring_window_to_front instead of BringToFront.
13581 (Qfile_name_history) [TARGET_API_MAC_CARBON]: Move extern to
13582 mactoolbox.c.
13583 (Fx_file_dialog) [TARGET_API_MAC_CARBON]: Move function body to
13584 mac_file_dialog in mactoolbox.c. Use mac_file_dialog.
13585 (mac_nav_event_callback) [TARGET_API_MAC_CARBON]: Move function to
13586 mactoolbox.c.
13587
13588 * macgui.h [!HAVE_CARBON]: Include Quickdraw.h instead of QuickDraw.h.
13589 (XtPointer): Move typedef from macmenu.c.
13590 (enum button_type): Move enum from macmenu.c.
13591 (widget_value): Move typedef from macmenu.c.
13592 (M_APPLE, I_ABOUT, EXTRA_STACK_ALLOC, ARGV_STRING_LIST_ID)
13593 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
13594 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
13595 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
13596 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
13597 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
13598 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
13599 (DIALOG_ICON_TOP_MARGIN): Move defines from macmenu.c.
13600 (Selection): Move typedef from macselect.c.
13601 (RAM_TOO_LARGE_ALERT_ID, ABOUT_ALERT_ID) [MAC_OS8]: Move defines from
13602 macterm.c.
13603 (mac_set_window_title, mac_set_window_modified, mac_is_window_visible)
13604 (mac_is_window_collapsed, mac_bring_window_to_front)
13605 (mac_send_window_behind, mac_hide_window, mac_show_window)
13606 (mac_collapse_window, mac_front_non_floating_window)
13607 (mac_active_non_floating_window, mac_activate_window)
13608 (mac_move_window_structure, mac_move_window, mac_size_window)
13609 (mac_get_global_mouse, mac_is_window_toolbar_visible): New defines.
13610
13611 * macmenu.c [!TARGET_API_MAC_CARBON]: Move includes to mactoolbox.c.
13612 (enum mac_menu_kind): Move enum to mactoolbox.c.
13613 (min_menu_id): Move variable to mactoolbox.c.
13614 (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]: Likewise.
13615 (DIALOG_WINDOW_RESOURCE): Move define to mactoolbox.c.
13616 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
13617 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
13618 [TARGET_API_MAC_CARBON]: Likewise.
13619 (XtPointer): Move typedef to macgui.h.
13620 (enum button_type): Move enum to macgui.h.
13621 (widget_value): Move typedef to macgui.h.
13622 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
13623 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
13624 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
13625 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
13626 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
13627 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
13628 (DIALOG_ICON_TOP_MARGIN): Move defines to macgui.h.
13629 (popup_activated_flag): Make variable non-static.
13630 (x_activate_menubar, install_menu_quit_handler, pop_down_menu)
13631 (add_menu_item, fill_menu, dispose_menus):
13632 Move functions to mactoolbox.c.
13633 (restore_show_help_function, menu_target_item_handler)
13634 (install_menu_target_item_handler, mac_handle_dialog_event)
13635 (install_dialog_event_handler, pop_down_dialog, create_and_show_dialog)
13636 [TARGET_API_MAC_CARBON]: Likewise.
13637 (menu_quit_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: Likewise.
13638 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
13639 (find_and_call_menu_selection, name_is_separator): Make function
13640 non-static.
13641 (Vshow_help_function, timer_check) [TARGET_API_MAC_CARBON]: Move extern
13642 to mactoolbox.c.
13643 (set_frame_menubar): Don't call install_menu_quit_handler.
13644 (menu_item_selection): New variable.
13645 (mac_menu_show): Use create_and_show_popup_menu.
13646 (create_and_show_dialog) [TARGET_API_MAC_CARBON]: Don't return
13647 selection but set variable menu_item_selection. All uses changed.
13648 (mac_fill_menubar): Rename from fill_menubar. All uses changed.
13649 Call install_menu_quit_handler. Move to mactoolbox.c.
13650
13651 * macselect.c [!TARGET_API_MAC_CARBON]: Don't include Scrap.h.
13652 (Selection): Move typedef to macgui.h.
13653 (Vselection_converter_alist, Qmac_scrap_name, Qmac_ostype)
13654 (Vmac_apple_event_map, Qmac_apple_event_class, Qmac_apple_event_id):
13655 Make variables non-static.
13656 (Vmac_dnd_known_types) [TARGET_API_MAC_CARBON]: Likewise.
13657 (mac_handle_apple_event, cleanup_all_suspended_apple_events):
13658 Make functions non-static.
13659 (Vmac_service_selection) [MAC_OSX]: Likewise.
13660 (mac_get_selection_from_symbol, get_flavor_type_from_symbol)
13661 (mac_valid_selection_target_p, mac_clear_selection)
13662 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
13663 (mac_put_selection_value, mac_selection_has_target_p)
13664 (mac_get_selection_value, mac_get_selection_target_list)
13665 (init_apple_event_handler, install_drag_handler, remove_drag_handler):
13666 Move functions to mactoolbox.c.
13667 (mac_do_track_drag, mac_do_receive_drag) [TARGET_API_MAC_CARBON]:
13668 Likewise.
13669 (copy_scrap_flavor_data, mac_handle_service_event)
13670 (install_service_handler) [MAC_OSX]: Likewise.
13671 (syms_of_macselect) <Vmac_dnd_known_types>:
13672 Use mac_dnd_default_known_types.
13673
13674 * macterm.h (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y):
13675 Move to mactoolbox.c.
13676 (HOURGLASS_WIDTH, HOURGLASS_HEIGHT): Change to 15.
13677 (Fx_selection_owner_p): Add EXFUN.
13678 (install_window_handler, remove_window_handler, XSetWindowBackground):
13679 Remove externs.
13680 (do_apple_menu) [!TARGET_API_MAC_CARBON]: Likewise.
13681 (mac_prepare_for_quickdraw) [USE_CG_DRAWING]: Likewise.
13682 (x_raise_frame, x_lower_frame, mac_alert_sound_play)
13683 (install_application_handler, mac_get_frame_bounds, mac_get_frame_mouse)
13684 (mac_convert_frame_point_to_global, mac_set_frame_window_background)
13685 (mac_update_begin mac_update_end, mac_frame_up_to_date, x_flush)
13686 (mac_create_frame_window, mac_dispose_frame_window, mac_begin_clip)
13687 (mac_end_clip, mac_create_scroll_bar, mac_dispose_scroll_bar)
13688 (mac_set_scroll_bar_bounds, mac_redraw_scroll_bar, mac_fill_menubar)
13689 (create_and_show_popup_menu, mac_get_selection_from_symbol)
13690 (mac_valid_selection_target_p, mac_clear_selection)
13691 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
13692 (mac_put_selection_value, mac_selection_has_target_p)
13693 (mac_get_selection_value, mac_get_selection_target_list): Add externs.
13694 (mac_update_proxy_icon, mac_show_hourglass, mac_hide_hourglass)
13695 (mac_reposition_hourglass, mac_file_dialog, create_and_show_dialog)
13696 (mac_dnd_default_known_types) [TARGET_API_MAC_CARBON]: Likewise.
13697 (mac_run_loop_run_once) [MAC_OSX]: Likewise.
13698 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
13699 (mac_begin_cg_clip, mac_end_cg_clip) [USE_CG_DRAWING]: Likewise.
13700 (x_set_toolkit_scroll_bar_thumb) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
13701 (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
13702
13703 * mactoolbox.c: New file.
13704
137052008-04-18 Jason Rumney <jasonr@gnu.org>
13706
13707 * dired.c (Ffile_attributes) [WINDOWSNT]: Cast uid and gid to unsigned.
13708
137092008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
13710
13711 * character.c (Fmultibyte_char_to_unibyte):
13712 Return latin1 chars unchanged.
13713
13714 * fileio.c (Fexpand_file_name): Refine last fix so `nm' is only
13715 relocated if it points to `name'.
13716
137172008-04-17 Kenichi Handa <handa@m17n.org>
13718
13719 * data.c (Faset): Allow setting a multibyte character in an
13720 ASCII-only unibyte string.
13721
13722 * lisp.h (STRING_SET_MULTIBYTE): New macro.
13723
137242008-04-16 Stefan Monnier <monnier@iro.umontreal.ca>
13725
13726 * Makefile.in: Don't use HAVE_GTK and don't -DUSE_GTK since it's now
13727 done in config.h.
13728
137292008-04-16 Juanma Barranquero <lekktu@gmail.com>
13730
13731 * character.c (Fchar_bytes, Fchar_width, Fstring_width)
13732 (Fchar_direction): Add usage in the docstring.
13733
137342008-04-15 Chong Yidong <cyd@stupidchicken.com>
13735
13736 * keyboard.c (read_key_sequence): Remove always-true checks.
13737
137382008-04-14 Jason Rumney <jasonr@gnu.org>
13739
13740 * w32font.c (w32font_open_internal): Set max_bounds.descent in
13741 compatibility struct, for better underline positioning.
13742
137432008-04-13 David Hansen <david.hansen@gmx.net>
13744
13745 * dbusbind.c (dbus-get-unique-name): Remove extra copying of name
13746 string.
13747
137482008-04-12 Dan Nicolaescu <dann@ics.uci.edu>
13749
13750 * m/hp800.h (XUINT, XSET): Remove.
13751
137522008-04-12 Juanma Barranquero <lekktu@gmail.com>
13753
13754 * fileio.c (Fexpand_file_name): Add declaration for `p' missing in
13755 previous change.
13756
137572008-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
13758
13759 * fileio.c (Fexpand_file_name): Tighten the scope of `p' and `o' vars.
13760 Relocate `nm' after calling DECODE_FILE, in case the GC was run.
13761
137622008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
13763
13764 * keymap.h (map_keymap_canonical): Declare.
13765 * xmenu.c (single_keymap_panes): Use it.
13766
137672008-04-11 Glenn Morris <rgm@gnu.org>
13768
13769 * eval.c (Fdefvaralias): If the alias is bound and the target is not,
13770 set the target's value to that of the alias.
13771
137722008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
13773
13774 * term.c (set_tty_color_mode): Left over typo.
13775
137762008-04-10 Michael Albinus <michael.albinus@gmx.de>
13777
13778 * fileio.c (Fmake_symbolic_link): Surround code by #ifdef S_IFLNK
13779 only after check for file name handler functions. Signal, when
13780 native functionality is not supported.
13781 (syms_of_fileio): Declare it unconditionally.
13782
137832008-04-10 Jason Rumney <jasonr@gnu.org>
13784
13785 * w32menu.c (is_simple_dialog, simple_dialog_show): New functions.
13786 (Fx_popup_dialog): Handle simple yes/no questions as dialogs.
13787
13788 * w32.c (logon_network_drive): Also logon to remote drives that
13789 are mapped to drive letters.
13790
137912008-04-10 Glenn Morris <rgm@gnu.org>
13792
13793 * xdisp.c (truncate-partial-width-windows): Doc fix.
13794
137952008-04-10 Stefan Monnier <monnier@iro.umontreal.ca>
13796
13797 * fileio.c (read_file_name_cleanup, Fread_file_name_internal):
13798 Move functions to minibuffer.el.
13799 (syms_of_fileio): Don't declare them.
13800
138012008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
13802
13803 * minibuf.c (Vcompletion_auto_help): Move to minibuffer.el.
13804 (syms_of_minibuf): Remove its initialization.
13805
13806 * minibuf.c (temp_echo_area_glyphs): Remove unused function.
13807
138082008-04-09 Juanma Barranquero <lekktu@gmail.com>
13809
13810 * editfns.c (Ffield_string_no_properties): Fix typo in docstring.
13811
138122008-04-09 Jason Rumney <jasonr@gnu.org>
13813
13814 * makefile.w32-in (distclean): Delete makefile too.
13815 (maintainer-clean): New target.
13816
13817 * xdisp.c (redisplay_internal) [!WINDOWSNT]: Conditionalize last change.
13818
13819 * w32term.c (w32_compute_glyph_string_overhangs): Compute overhangs
13820 for new font backend and composite cases.
13821
138222008-04-09 Jan Djärv <jan.h.d@swipnet.se>
13823
13824 * atimer.c (alarm_signal_handler): Call run_timers if not SYNC_INPUT.
13825 Most of the code moved to run_timers.
13826 (do_pending_atimers): Call run_timers.
13827 (run_timers): New function.
13828
13829 * sysdep.c (emacs_write): If SYNC_INPUT and pending_atimers,
13830 run atimers.
13831
13832 * process.c (wait_reading_process_output): The same as above.
13833
138342008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
13835
13836 * minibuf.c (last_exact_completion): Remove variable.
13837 (Fdelete_minibuffer_contents, do_completion, Fminibuffer_complete)
13838 (complete_and_exit_1, complete_and_exit_2)
13839 (Fminibuffer_complete_and_exit, Fminibuffer_complete_word)
13840 (Fdisplay_completion_list, display_completion_list_1)
13841 (Fminibuffer_completion_help, Fself_insert_and_exit)
13842 (Fexit_minibuffer, Fminibuffer_message): Move functions to
13843 minibuffer.el.
13844 (syms_of_minibuf): Remove corresponding initializations.
13845
13846 * keyboard.c (Qdeactivate_mark): New var.
13847 (command_loop_1): Use it to call `deactivate-mark'.
13848 (syms_of_keyboard): Initialize it.
13849
13850 * xdisp.c (redisplay_internal): Reset tty's color_mode when switching
13851 to another frame.
13852 * frame.c (do_switch_frame): Refine the top_frame/async_visible code.
13853 Don't call set_tty_color_mode.
13854 (store_frame_param): Reset previous_frame rather than call
13855 set_tty_color_mode.
13856 * term.c (set_tty_color_mode): Rewrite.
13857 * dispextern.h (set_tty_color_mode): New type.
13858 * termchar.h (struct tty_display_info): Add `previous_color_mode'.
13859
138602008-04-08 Stefan Monnier <monnier@iro.umontreal.ca>
13861
13862 * keymap.c (access_keymap): Remove the value 2 for t_ok which was used
13863 for generic chars, which do not exist any more in emacs-unicode.
13864
138652008-04-08 Michael Albinus <michael.albinus@gmx.de>
13866
13867 * coding.c (detect_coding_emacs_mule)
13868 (Ffind_operation_coding_system): Fix typo.
13869
138702008-04-08 Jason Rumney <jasonr@gnu.org>
13871
13872 * w32uniscribe.c (SNAME): Extract only symbol name.
13873
13874 * w32font.h (struct w32_metric_cache): New struct.
13875 (w32font_info): Use it.
13876 (W32METRIC_NO_ATTEMPT, W32METRIC_SUCCESS, W32METRIC_FAIL)
13877 (CACHE_BLOCKSIZE): New constants.
13878
13879 * w32font.c (Qja, Qko, Qzh): New symbols.
13880 (syms_of_w32font): Initialise them.
13881 (font_matches_spec): Use them to filter by language.
13882 (recompute_cached_metrics): Remove function.
13883 (compute_metrics, clear_cached_metrics): New functions.
13884 (w32font_encode_char): Use them to manage metric cache.
13885 (w32font_text_extents): Cache metrics for all glyphs on demand.
13886 Delay converting glyph indices to WORD until needed.
13887 (w32font_open_internal): Initialize metric cache to empty.
13888 (registry_to_w32_charset): Charset should always be a symbol.
13889 (fill_in_logfont, list_all_matching_fonts): Family should
13890 always be a symbol.
13891
138922008-04-06 Jason Rumney <jasonr@gnu.org>
13893
13894 * w32uniscribe.c (uniscribe_shape): Increase items buffer size.
13895 Give up if glyph indices not supported. Use uniscribe obtained
13896 ABC widths for individual metrics. Map glyph clusters back to
13897 characters using fClusterStart flag. Return number of glyphs
13898 produced, not chars processed.
13899 (uniscribe_shape): Map char at FROM to current glyph.
13900
139012008-04-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13902
13903 * macmenu.c (fill_menu) [TARGET_API_MAC_CARBON]:
13904 Use SetMenuItemHierarchicalMenu.
13905
139062008-04-05 Jason Rumney <jasonr@gnu.org>
13907
13908 * image.c (pbm_load): Allow color values up to 65535.
13909 Throw an error if max_color_idx is outside the supported range.
13910 Report an error when image size is invalid.
13911 Read two bytes at a time when raw images have max_color_idx above 255.
13912
139132008-04-05 Eli Zaretskii <eliz@gnu.org>
13914
13915 * w32.c (readdir): If FindFirstFile/FindNextFile return in
13916 cFileName a file name that includes `?' characters, use the 8+3
13917 alias in cAlternateFileName instead.
13918
139192008-04-05 Kenichi Handa <handa@ni.aist.go.jp>
13920
13921 * ccl.c (ccl_driver): If ccl->quit_silently is nonzero, don't
13922 append "CCL: Quitted" when the CCL program is quitted.
13923 (setup_ccl_program): Initialize ccl->quit_silently to zero.
13924
13925 * ccl.h (struct ccl_program): New member quit_silently.
13926
139272008-04-05 Chong Yidong <cyd@stupidchicken.com>
13928
13929 * search.c (compile_pattern_1): Treat non-nil and non-string of
13930 search-spaces-regexp as nil.
13931
13932 * minibuf.c (Fassoc_string): Tweak docstring.
13933
139342008-04-05 Eli Zaretskii <eliz@gnu.org>
13935
13936 * dired.c (Ffile_attributes): Support inode numbers wider than 32
13937 bits. Remove ugly WINDOWSNT-specific kludge introduced on
13938 2008-03-14 to force inode be positive.
13939
13940 * w32.c (sys_chown, stat, fstat): Use S_* constants instead of
13941 _S_* ones, since we now use our own sys/stat.h.
13942 (stat, fstat): Don't mangle the inode number.
13943 (init_user_info): Don't restrict UID and GID to 0-60000 range.
13944
139452008-04-04 Stefan Monnier <monnier@iro.umontreal.ca>
13946
13947 * frame.h (struct frame): Give one more bit to `visible' since we use
13948 values larger than 1 to indicate obscured frames on ttys.
13949
13950 * keymap.c (Qkeymap_canonicalize): New var.
13951 (Fmap_keymap_internal): New fun.
13952 (describe_map): Use keymap-canonicalize.
13953
13954 * undo.c (last_boundary_buffer, last_boundary_position): New vars.
13955 (Fundo_boundary): Set them.
13956 (syms_of_undo): Initialize them.
13957 (record_point): Use them instead of last_point_position*.
13958 (last_undo_buffer): Change type.
13959
139602008-04-04 Jason Rumney <jasonr@gnu.org>
13961
13962 * w32font.c (w32font_text_extents): Use font's ascent and descent.
13963 (recompute_cached_metrics): Don't set ascent and descent per char.
13964
13965 * w32uniscribe.c (uniscribe_check_otf): Fix last change.
13966 (uniscribe_check_otf): Add GC protection before consing.
13967 Rearrange loop for counting features.
13968
139692008-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
13970
13971 * insdel.c (insert_from_buffer_1): Don't compare bytes in destination
13972 buffer with byte-size of source buffer.
13973
139742008-04-03 Chong Yidong <cyd@stupidchicken.com>
13975
13976 * callint.c (Fcall_interactively): Handle temporary region even
13977 when shift-select-mode is off.
13978
139792008-04-03 Jason Rumney <jasonr@gnu.org>
13980
13981 * w32uniscribe.c (uniscribe_check_otf): Sanity check otf_spec.
13982
139832008-04-03 Kenichi Handa <handa@m17n.org>
13984
13985 * coding.c (CATEGORY_MASK_ANY): Add CATEGORY_MASK_UTF_16_AUTO.
13986 (CATEGORY_MASK_UTF_16): Likewise.
13987 (detect_coding_utf_16): Add heuristics to reject utf-16 for a
13988 binary file.
13989 (detect_coding): Add null-byte detection for a binary file.
13990 (detect_coding_system): Likewise.
13991
139922008-04-03 Jason Rumney <jasonr@gnu.org>
13993
13994 * w32uniscribe.c: New file.
13995
13996 * font.h (uniscribe_font_driver) [WINDOWSNT]: Declare for w32fns.c.
13997
13998 * w32font.h (uniscribe_check_otf): Declare for w32font.c.
13999
14000 * w32font.c (Qbalinese, Qbuginese, Qbuhid, Qcuneiform, Qcypriot)
14001 (Qdeseret, Qglagolitic, Qgothic, Qhanunoo, Qkharoshthi)
14002 (Qlimbu, Qlinear_b, Qold_italic, Qold_persian, Qosmanya)
14003 (Qphags_pa, Qphoenician, Qshavian, Qsyloti_nagri)
14004 (Qtagalog, Qtagbanwa, Qtai_le, Qtifinagh, Qugaritic)
14005 (Qphonetic): New symbols.
14006 (syms_of_w32font): Initialize them.
14007 (font_supported_scripts): Use them.
14008 (w32font_list_family): List all charsets.
14009 (w32font_text_extents, recompute_cached_metrics): Fix metric
14010 calculations.
14011 (w32_enumfont_pattern_entity): Make full_type a DWORD.
14012 Give opentype fonts their own format.
14013 (font_matches_spec): New arguments backend and logfont.
14014 Handle :otf spec for uniscribe backend.
14015 (add_font_entity_to_list): Match truetype fonts in uniscribe backend.
14016 (fill_in_logfont): Use DEFAULT_CHARSET when charset not supplied.
14017
14018 * w32fns.c (Fx_create_frame): Conditionally register uniscribe
14019 font backend.
14020 (globals_of_w32fns): Initialize uniscribe font backend.
14021
14022 * makefile.w32-in (CONFIG_H): New variable. Use it to clean up
14023 dependencies.
14024 (w32uniscribe.$(O)): New file to build.
14025 (FONT_OBJ): Include w32uniscribe.$(O).
14026 (LIBS): Add uniscribe libraries.
14027
14028 * ftfont.c (ftfont_get_open_type_spec): Check spec->script, not val.
14029
140302008-04-02 Chong Yidong <cyd@stupidchicken.com>
14031
14032 * callint.c (Vshift_select_mode): New var.
14033 (Finteractive): Document new ^ spec.
14034 (Fcall_interactively): Call handle-shift-selection if the ^ spec
14035 is present.
14036
14037 * keyboard.c (Vthis_command_keys_shift_translated): New var.
14038 (command_loop_1): Avoid running the direct display versions of
14039 forward-char and backward-char if shift-selection may occur.
14040 (read_key_sequence): Set Vthis_command_keys_shift_translated if
14041 shift-translation takes place.
14042
14043 * buffer.c (Vtransient_mark_mode): Move docstring to simple.el to
14044 avoid clobbering by define-minor-mode.
14045
14046 * cmds.c (Fforward_char, Fbackward_char, Fforward_line)
14047 (Fbeginning_of_line, Fend_of_line): Add ^ interactive spec.
14048
14049 * syntax.c (Fforward_word): Add ^ interactive spec.
14050
14051 * window.c (Fscroll_up, Fscroll_down, Fscroll_left)
14052 (Fscroll_right): Add ^ interactive spec.
14053
140542008-04-01 Stefan Monnier <monnier@iro.umontreal.ca>
14055
14056 * xdisp.c (try_window_id): Don't forget to reset delta_bytes.
14057
14058 * casefiddle.c (casify_object): Fix up int/EMACS_INT mixup.
14059
14060 * charset.c (Funibyte_charset, Fset_unibyte_charset): Remove.
14061
140622008-03-31 Juri Linkov <juri@jurta.org>
14063
14064 * window.c (Fdisplay_buffer): Reinitialize `tem' to nil.
14065
140662008-03-30 Jan Djärv <jan.h.d@swipnet.se>
14067
14068 * gtkutil.c (xg_set_geometry): Fix indentation.
14069 (xg_resize_outer_widget): Remove.
14070 (x_wm_size_hint_off): Fix indentation.
14071 (xg_frame_set_char_size): Call flush_and_sync after
14072 gtk_window_resize.
14073 (x_wm_set_size_hint): Pass NULL as geometry window to
14074 gtk_window_set_geometry_hints due to Gtk+ bug nr 68668.
14075 Add menu bar and tool bar height to base height.
14076 (xg_update_frame_menubar, free_frame_menubar)
14077 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
14078 (update_frame_tool_bar, free_frame_tool_bar):
14079 Change xg_resize_outer_widget to xg_frame_set_char_size.
14080
140812008-03-30 Michael Albinus <michael.albinus@gmx.de>
14082
14083 * dbusbind.c (QCdbus_timeout): New D-Bus internal symbol.
14084 (Fdbus_call_method): New parameter TIMEOUT.
14085 (dbus-send-signal): Optimize UNGCPRO call.
14086
140872008-03-29 Juri Linkov <juri@jurta.org>
14088
14089 * window.c (Fdisplay_buffer): Move call to
14090 Vsplit_window_preferred_function out of conditions that check
14091 if window is eligible for vertical splitting.
14092 When Vsplit_window_preferred_function is non-nil, call it and use
14093 its non-nil return value as window. Otherwise, continue doing
14094 vertical splitting using Fsplit_window with arg horflag=nil.
14095 (syms_of_window) <Vsplit_window_preferred_function>: Change the
14096 default value from `split-window' to nil.
14097
140982008-03-29 Juri Linkov <juri@jurta.org>
14099
14100 * callint.c (Fcall_interactively): Revert 2008-03-16 change
14101 for interactive code letters 'b' and 'B'.
14102
141032008-03-29 Eli Zaretskii <eliz@gnu.org>
14104
14105 * fileio.c (Fexpand_file_name): Convert the value of $HOME to a
14106 multibyte string.
14107
141082008-03-29 Stefan Monnier <monnier@iro.umontreal.ca>
14109
14110 * keyboard.c (pending_funcalls): New var.
14111 (timer_check): Run it.
14112 (syms_of_keyboard): Initialize it.
14113 * terminal.c (Qrun_hook_with_args, Qdelete_terminal_functions)
14114 (Vdelete_terminal_functions): New vars.
14115 (syms_of_terminal): Initialize them.
14116 (Fdelete_terminal): Run delete-terminal-functions.
14117 * xdisp.c (safe_eval): Rewrite.
14118 (safe_call2): New fun.
14119 * frame.c (Qdelete_frame_functions): New var.
14120 (syms_of_frame): Initialize it.
14121 (Fdelete_frame): Use it and use safe_call2 and pending_funcalls.
14122 * lisp.h (safe_call2, pending_funcalls): Declare.
14123
141242008-03-28 Andreas Schwab <schwab@suse.de>
14125
14126 * indent.c (Fmove_to_column): Move declaration before statements.
14127
141282008-03-27 Stefan Monnier <monnier@iro.umontreal.ca>
14129
14130 * frame.h (enum fullscreen_type): Give it a name. Move it before use.
14131 (struct frame): Use bit fields for boolean vars.
14132
14133 * process.c (server_accept_connection): Simplify naming.
14134 (emacs_get_tty_pgrp): Use SDATA.
14135
14136 * coding.c (decode_coding_object): Fix last change.
14137
141382008-03-27 Jason Rumney <jasonr@gnu.org>
14139
14140 * w32fns.c (start_hourglass): Suppress hourglass on tty frames.
14141
141422008-03-27 Kenichi Handa <handa@ni.aist.go.jp>
14143
14144 * charset.c (Fdefine_charset_internal): Change the way of
14145 registering charsets in Vcharset_order_list.
14146 (syms_of_charset): Make the charset `eight-bit' supplementary.
14147
141482008-03-26 Alexandre Oliva <aoliva@redhat.com> (tiny change)
14149
14150 * regex.c (EXTEND_BUFFER): Change order of pointer addition
14151 operations, to avoid having the difference between pointers
14152 overflow.
14153
141542008-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
14155
14156 * indent.c (check_display_width): New fun.
14157 (scan_for_column): Use it.
14158
14159 * data.c (syms_of_data): Mark most-positive-fixnum and
14160 most-negative-fixnum as constants.
14161
14162 * xdisp.c (redisplay_internal): Reset selected_frame earlier.
14163
14164 * indent.c (scan_for_column): Extract from current_column_1.
14165 Merge with the same code from Fmove_to_column.
14166 (current_column_1, Fmove_to_column): Use it.
14167
141682008-03-25 Stefan Monnier <monnier@iro.umontreal.ca>
14169
14170 * keymap.c (map_keymap_internal): New fun.
14171 (map_keymap): Use it.
14172 (Fmap_keymap_internal): New fun.
14173 (Fmap_keymap): Remove left-out test from before make_save_value.
14174
14175 * keymap.c (Fmap_keymap): Use `map-keymap-sorted.
14176
14177 * frame.c (Fmodify_frame_parameters, x_set_frame_parameters):
14178 Use XCAR/XCDR.
14179
14180 * process.h (struct Lisp_Process): Remove filter_multibyte.
14181 * process.c (QCfilter_multibyte): Remove.
14182 (setup_process_coding_systems): Don't use filter_multibyte.
14183 (Fstart_process, Fmake_network_process): Don't set filter_multibyte.
14184 (read_process_output): Don't adjust multibyteness to filter_multibyte.
14185 (Fset_process_filter_multibyte): Change the coding-system to
14186 approximate the previous behavior.
14187 (Fprocess_filter_multibyte_p): Get the multibyteness straight from the
14188 coding-system.
14189
14190 * coding.c (decode_coding_object): When not decoding into a buffer,
14191 obey the coding system's preference of (uni|multi)byte.
14192
141932008-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
14194
14195 * casefiddle.c (casify_object): Avoid pathological N^2 worst case if
14196 every char is changed and has a different byte-length.
14197 (Fupcase_word, Fdowncase_word, Fcapitalize_word, operate_on_word):
14198 Fix int -> EMACS_INT.
14199
142002008-03-23 David Hansen <david.hansen@gmx.net>
14201
14202 * dbusbind.c (xd_read_message): Remove extra copying of message
14203 strings. Check for NULL `interface' or `member'.
14204
142052008-03-22 Eli Zaretskii <eliz@gnu.org>
14206
14207 * w32.c (readdir): If FindFirstFile/FindNextFile return in
14208 cFileName a file name that includes `?' characters, use the 8+3
14209 alias in cAlternateFileName instead.
14210
142112008-03-21 Stefan Monnier <monnier@iro.umontreal.ca>
14212
14213 * buffer.c (enlarge_buffer_text): Fix int -> EMACS_INT.
14214
142152008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
14216
14217 * intervals.c (temp_set_point, temp_set_point_both): Use EMACS_INT.
14218 (set_point, set_point_both): Use EMACS_INT. Remove `buffer' arg,
14219 work on current_buffer only instead (that was already the case
14220 for some of the code anyway).
14221 * buffer.h (set_point, set_point_both): Remove buffer arg, use long int.
14222 (temp_set_point, temp_set_point_both): Use EMACS_INT.
14223 (SET_PT, SET_PT_BOTH): Adjust.
14224 * intervals.h (set_point, temp_set_point, set_point_both)
14225 (temp_set_point_both): Remove redundant declarations.
14226
142272008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
14228
14229 * fileio.c (Finsert_file_contents):
14230 * lread.c (Feval_buffer): Use BUF_TEMP_SET_PT.
14231 * buffer.h (BUF_SET_PT): Remove. set_point_both doesn't work right
14232 when buffer != current_buffer anyway.
14233
142342008-03-20 Andreas Schwab <schwab@suse.de>
14235
14236 * callint.c (Fcall_interactively) [case 'B']: Use other-buffer
14237 as default.
14238
142392008-03-19 Jason Rumney <jasonr@gnu.org>
14240
14241 * w32fns.c (hourglass_timer, hourglass_hwnd): New variables.
14242 (syms_of_w32fns): Initialize them.
14243 (HOURGLASS_ID): New constant.
14244 (x_window_to_frame): Don't check hourglass_window.
14245 (w32_wnd_proc) <WM_TIMER>: Handle hourglass_timer.
14246 (w32_wnd_proc) <WM_EXITMENULOOP>: Set pending hourglass cursor.
14247 (w32_wnd_proc) <WM_SETCURSOR>: Set the hourglass or current cursor.
14248 (w32_wnd_proc) <WM_EMACS_SETCURSOR>: Set frame's current_cursor.
14249 Only change the cursor if hourglass is not active.
14250 (Fx_create_frame): Initialize frame's current_cursor.
14251 (hourglass_atimer): Remove.
14252 (hourglass_started): New function.
14253 (start_hourglass, cancel_hourglass, hide_hourglass): Adapt to w32.
14254 (show_hourglass): Adapt to w32, changing argument to frame.
14255
14256 * w32term.h (struct w32_output): Remove hourglass_window.
14257 Add current_cursor.
14258
14259 * eval.c (call_debugger, Fsignal):
14260 * keyboard.c (recursive_edit_1, cmd_error, Ftop_level)
14261 (command_loop_1, Fread_key_sequence, Fread_key_sequence_vector)
14262 (Fexecute_extended_command, cancel_hourglass_unwind):
14263 * minibuf.c (read_minibuf):
14264 * fns.c (Fy_or_n_p): Enable hourglass when HAVE_WINDOW_SYSTEM.
14265
142662008-03-19 Stefan Monnier <monnier@iro.umontreal.ca>
14267
14268 * window.c (run_funs): New fun.
14269 (run_window_configuration_change_hook): Use it to run the buffer-local
14270 and the global part of the hook.
14271
14272 * xdisp.c (format_mode_line_unwind_data): Add window argument.
14273 (unwind_format_mode_line): Restore selected window.
14274 (x_consider_frame_title, Fformat_mode_line): Set selected window.
14275
142762008-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
14277
14278 * editfns.c (Fchar_equal): Check they are valid characters.
14279
14280 * buffer.h (Fbuffer_list): Declare (for use in callint.c).
14281
142822008-03-17 Andreas Schwab <schwab@suse.de>
14283
14284 * regex.c (re_match_2_internal): Properly match raw 8-bit bytes
14285 against a charset.
14286
14287 * lisp.h (Fbuffer_list): Declare.
14288
142892008-03-17 Jan Djärv <jan.h.d@swipnet.se>
d6c952f8 14290
aac0c6e3
MR
14291 * gtkutil.c (free_frame_tool_bar): Only call gtk_container_remove if
14292 handlebox_widget is != 0.
14293
142942008-03-16 Juri Linkov <juri@jurta.org>
14295
14296 * callint.c (Fcall_interactively): For interactive code letters
14297 'b' and 'B' put the buffer list into the list of default "future"
14298 values of the minibuffer.
14299
143002008-03-16 Andreas Schwab <schwab@suse.de>
14301
14302 * keyboard.c (read_key_sequence): Fix downcasing of letters with
14303 modifiers.
14304
14305 * regex.c (re_match_2_internal): Correct matching of a charset
14306 against latin-1 characters.
14307
143082008-03-16 Kenichi Handa <handa@m17n.org>
14309
14310 * coding.c (CHAR_STRING_ADVANCE_NO_UNIFY)
14311 (STRING_CHAR_ADVANCE_NO_UNIFY): New macros.
14312 (coding_alloc_by_making_gap): Fix the way to preserve data in the gap.
14313 (alloc_destination): Fix the 2nd arg to coding_alloc_by_making_gap.
14314 (encode_coding_utf_8): Use CHAR_STRING_ADVANCE_NO_UNIFY instead of
14315 CHAR_STRING_ADVANCE.
14316 (produce_chars): Fix for the case that the source and the
14317 destination are the same buffer. Use CHAR_STRING_ADVANCE_NO_UNIFY
14318 instead of CHAR_STRING_ADVANCE.
14319 (consume_chars): Use STRING_CHAR_ADVANCE_NO_UNIFY instead of
14320 STRING_CHAR_ADVANCE.
14321
143222008-03-15 Andreas Schwab <schwab@suse.de>
14323
14324 * regex.c (re_match_2_internal): Correct matching of eight bit
14325 characters in unibyte strings.
14326
143272008-03-15 Martin Rudalics <rudalics@gmx.at>
14328
14329 * buffer.c (overlays_in, Foverlays_in): Include empty overlays
14330 at end of range when it coincides with the end of the buffer.
14331
143322008-03-14 Eli Zaretskii <eliz@gnu.org>
14333
14334 * dired.c (Ffile_attributes) [WINDOWSNT]: Force inode be positive.
14335
14336 * w32fns.c (globals_of_w32fns, Fx_create_frame): Fix last change.
14337
143382008-03-14 Jason Rumney <jasonr@gnu.org>
14339
14340 * editfns.c (initial_tz): New variable.
14341 (syms_of_editfns): Initialize it.
14342 (Fset_time_zone_rule): Set it when first called.
14343 Use it when TZSTRING is nil.
14344
14345 * w32fns.c (MONITOR_DEFAULT_TO_NEAREST, struct MONITOR_INFO)
14346 (MonitorFromPoint_Proc, GetMonitorInfo_Proc): New definitions.
14347 (monitor_from_point_fn, get_monitor_info_fn): New globals.
14348 (globals_of_w32fns): Initialize them.
14349 (compute_tip_xy): Use them to position tooltips.
14350
143512008-03-14 Glenn Morris <rgm@gnu.org>
14352
14353 * emacs.c (main): Revert previous change.
14354 (standard_args): Revert -internal-script back to -scriptload,
14355 and remove the long-option form.
14356
143572008-03-13 Glenn Morris <rgm@gnu.org>
14358
14359 * emacs.c (main, standard_args): Rename -scriptload to -internal-script.
14360 Remove option -enable-font-backend.
14361
143622008-03-12 Stefan Monnier <monnier@iro.umontreal.ca>
14363
14364 * buffer.c (Fswitch_to_buffer): Fall back on pop-to-buffer.
14365
143662008-03-11 Jan Djärv <jan.h.d@swipnet.se>
14367
14368 * xterm.c (x_connection_closed): For GTK: If this is the last
14369 terminal just exit without closing the display.
14370
143712008-03-11 Jason Rumney <jasonr@gnu.org>
14372
14373 * w32font.c (w32font_full_name): Use floor to round.
14374
f0131492 143752008-03-10 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
aac0c6e3
MR
14376
14377 * sound.c (alsa_configure): Declare vol at beginning of block.
14378
14379 * fontset.c (Ffontset_info): Remove extra semicolon.
14380
143812008-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
14382
14383 * fileio.c (Fsubstitute_in_file_name): Fix up computation of maximum
14384 size of resulting string.
14385
143862008-03-10 Jason Rumney <jasonr@gnu.org>
14387
14388 * dispnew.c (adjust_glyph_matrix): Initialize window_height.
14389
143902008-03-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14391
14392 * xdisp.c (handle_single_display_spec): Undo 2007-10-16 changes.
14393 Don't pretend as if characters with display property haven't been
14394 consumed for string-replacing-string case.
14395
143962008-03-08 Kim F. Storm <storm@cua.dk>
14397
14398 * xdisp.c (GET_NEXT_DISPLAY_ELEMENT): New macro.
14399 (get_next_display_element, next_element_from_string)
14400 (next_element_from_ellipsis, next_element_from_buffer): Use it.
14401
144022008-03-08 Andreas Schwab <schwab@suse.de>
14403
14404 * process.h (struct Lisp_Process): Declare bit fields as unsigned.
14405
144062008-03-06 Jason Rumney <jasonr@gnu.org>
14407
14408 * w32font.c (w32_registry): Take font_type argument. Use ANSI
14409 when charset not specified. Only translate ANSI to unicode when
14410 font_type is truetype.
14411 (w32font_coverage_ok): New function.
14412 (add_font_entity_to_list): Use it to filter unsuitable fonts.
14413
144142008-03-05 Kenichi Handa <handa@ni.aist.go.jp>
14415
14416 * lread.c (Fread_char): Resolve modifiers.
14417 (Fread_char_exclusive): Likewise.
14418
14419 * character.c (char_resolve_modifier_mask): New function.
14420 (char_string): Use char_resolve_modifier_mask.
14421 (Fchar_resolve_modifiers): New function.
14422 (syms_of_character): Declare Fchar_resolve_modifiers as Lisp
14423 function.
14424
144252008-03-04 Jason Rumney <jasonr@gnu.org>
14426
14427 * makefile.w32-in: Always include w32font.c in the build.
14428 * w32font.c: Wrap in USE_FONT_BACKEND conditional.
14429
144302008-03-04 Andreas Schwab <schwab@suse.de>
14431
14432 * Makefile.in (clean): Remove emacs-*.*.* instead of emacs-*.
14433 (versionclean): Likewise.
14434
144352008-03-04 Juanma Barranquero <lekktu@gmail.com>
14436
14437 * .cvsignore: Add oo.
14438
144392008-03-03 Andreas Schwab <schwab@suse.de>
14440
14441 * coding.c (decode_coding_object): Inhibit gap shrinking while
14442 decoding in place.
14443
144442008-03-03 Dan Nicolaescu <dann@ics.uci.edu>
14445
14446 * w32term.c: Remove unused include "gnu.h".
14447 * makefile.w32-in (w32term.o): Don't depend on gnu.h.
14448
14449 * gnu.h: Rename to ...
14450 * emacs-icon.h: ... this.
14451 * xterm.c: Use emacs-icon.h instead of gnu.h.
14452 * Makefile (xterm.o): Depend on emacs-icon.h, not gnu.h.
14453
144542008-03-03 Juanma Barranquero <lekktu@gmail.com>
14455
14456 * w32font.c: Include math.h.
14457
144582008-03-03 Jason Rumney <jasonr@gnu.org>
14459
14460 * w32font.c (recompute_cached_metrics): Change font arg to w32font_info.
14461 Compute options separately.
14462 (w32font_open_internal): Set glyph_idx before caching metrics.
14463
14464 * w32font.h (NTM_PS_OPENTYPE, NTM_TT_OPENTYPE, NTM_TYPE1):
14465 Define if system headers don't.
14466 (struct w32font_info): Enlarge ascii_metrics. Add glyph_idx.
14467 (w32font_encode_char): Don't declare here.
14468
14469 * w32font.c (Quniscribe, QCformat): New symbols.
14470 (syms_of_w32font): Define them.
14471 (w32font_has_char): Indicate uncertainty.
14472 (w32font_encode_char): Encode as glyph point. Make static.
14473 (recompute_cached_metrics): New function.
14474 (w32font_open_internal): Use it. Set font to use glyph points
14475 initially. Set format based on type of font.
14476 (w32font_text_extents, w32font_draw): Optionally use glyph points.
14477 (w32_enumfont_pattern_entity): Accept backend arg. Set type based
14478 on it. Set format based on information available here.
14479 (add_font_entity_to_list): Identify backend based on opentype_only.
14480
144812008-03-02 Andreas Schwab <schwab@suse.de>
14482
14483 * ftfont.c (ftfont_pattern_entity): Fix aliasing violations.
14484
14485 * coding.c (decode_coding_big5, produce_chars):
14486 Fix typos in last change.
14487
144882008-03-02 Kentaro Ohkouchi <nanasess@fsm.ne.jp>
14489
14490 * gnu.h: New icon.
14491
144922008-03-02 Kenichi Handa <handa@m17n.org>
14493
14494 * coding.c (decode_coding_utf_8): When eol-type of CODING is
14495 `dos', don't decode '\r' if that is the last in the source.
14496 (decode_coding_utf_16, decode_coding_emacs_mule)
14497 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
14498 (decode_coding_raw_text, decode_coding_charset): Likewise.
14499 (produce_chars): Don't decode EOL here. Use EMACS_INT.
14500
145012008-03-01 Jason Rumney <jasonr@gnu.org>
14502
14503 * w32font.c (w32font_full_name): Report point size for scalable fonts.
14504
145052008-03-01 Kim F. Storm <storm@cua.dk>
14506
14507 * dispextern.h (CHAR_GLYPH_SPACE_P): Check for default face.
14508
145092008-03-01 Jason Rumney <jasonr@gnu.org>
14510
14511 * w32font.c (w32font_full_name): New function.
14512 (w32font_open_internal): Use it.
14513
145142008-03-01 Kim F. Storm <storm@cua.dk>
14515
14516 * dispnew.c (line_draw_cost): Fix invalid glyph check.
14517
145182008-03-01 Jason Rumney <jasonr@gnu.org>
14519
14520 * font.c (font_unparse_fcname): Increase len when style is a symbol.
14521
145222008-03-01 Jan Djärv <jan.h.d@swipnet.se>
14523
14524 * xterm.c (handle_one_xevent): For Gtk+ and ConfigureNotify, call
14525 xg_frame_resized when the event is for the edit widget.
14526
14527 * gtkutil.h (xg_frame_resized): Renamed from xg_resize_widgets.
14528
14529 * gtkutil.c (xg_resize_outer_widget): Only do one of set_geometry or
14530 set_char_size.
14531 (xg_frame_resized): Renamed from xg_resize_widgets. Remove all
14532 operations on widgets here. Just set frame size if needed.
14533 (flush_and_sync, x_wm_size_hint_off, xg_pack_tool_bar): New functions.
14534 (xg_frame_set_char_size): Call x_wm_size_hint_off before resizing.
14535 (x_wm_set_size_hint): Set size hints on the edit widget only, not
14536 the whole frame.
14537 (xg_create_tool_bar): Move attachment of the tool bar to
14538 xg_pack_tool_bar. Do not attach the tool bar if there are no items.
14539 (free_frame_tool_bar): Remove call to SET_FRAME_GARBAGED.
14540
145412008-03-01 Jason Rumney <jasonr@gnu.org>
14542
14543 * w32fns.c (w32_msg_pump): Disable debug code.
14544
145452008-03-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14546
14547 * m/intel386.h [MAC_OSX || DARWIN]: Define NO_ARG_ARRAY if _LP64.
14548
145492008-02-29 Chong Yidong <cyd@stupidchicken.com>
14550
14551 * xdisp.c (next_overlay_string): Don't set
14552 overlay_strings_at_end_processed_p if we're currently reading from
14553 a display string.
14554
145552008-02-29 Stefan Monnier <monnier@iro.umontreal.ca>
14556
14557 * xdisp.c (get_overlay_strings_1): Fix typo.
14558
145592008-02-29 Chong Yidong <cyd@stupidchicken.com>
14560
14561 * xdisp.c (get_overlay_strings_1): Add missing argument type.
14562
145632008-02-28 Kenichi Handa <handa@ni.aist.go.jp>
14564
14565 * ftfont.c (ftfont_match): Explicitly set pixelsize in pattern.
14566
14567 * xdisp.c (display_mode_element): Cancel the previous change.
14568 (decode_mode_spec): Likewise.
14569 (handle_auto_composed_prop): Don't make composition if it->string
14570 is a string.
14571
145722008-02-27 Kim F. Storm <storm@cua.dk>
14573
14574 * lisp.h (GLYPH): Change type from int to struct with separate char
14575 and face_id members.
14576 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Delete macros.
14577 (GLYPH_CHAR, GLYPH_FACE): Remove slow versions with frame arg.
14578 (FAST_GLYPH_CHAR, FAST_GLYPH_FACE): Rename macros to ...
14579 (GLYPH_CHAR, GLYPH_FACE): ... these. Change users.
14580 (FAST_MAKE_GLYPH, MAKE_GLYPH): Remove. Rewrite users to use ...
14581 (SET_GLYPH, SET_GLYPH_CHAR, SET_GLYPH_FACE): ... these macros instead.
14582 (GLYPH_CODE_CHAR, GLYPH_CODE_FACE, GLYPH_CODE_P)
14583 (GLYPH_CODE_CHAR_VALID_P, SET_GLYPH_FROM_GLYPH_CODE): New macros to
14584 handle new Lisp glyph code encoding, either an integer or a cons.
14585
14586 * disptab.h (GLYPH_SIMPLE_P): Rewrite.
14587 (GLYPH_ALIAS): Delete.
14588 (GLYPH_ALIAS_P, GLYPH_FOLLOW_ALIASES): Rewrite.
14589 (GLYPH_LENGTH, GLYPH_STRING): Use GLYPH_CHAR.
14590 (GLYPH_FROM_CHAR): Replace macro by ...
14591 (SET_GLYPH_FROM_CHAR): ... this macro. Change users.
14592
14593 * dispextern.h (CHAR_GLYPH_SPACE_P): Simplify.
14594 (GLYPH_FROM_CHAR_GLYPH): Replace macro by ...
14595 (SET_GLYPH_FROM_CHAR_GLYPH): ... this macro. Change users.
14596 (GLYPH_INVALID_P): New macro.
14597 (spec_glyph_lookup_face): Update prototype.
14598
14599 * dispnew.c (line_draw_cost): Adapt to new glyph type.
14600 (build_frame_matrix_from_leaf_window): Adapt to new glyph type and
14601 new glyph code encoding.
14602 (spec_glyph_lookup_face): No return value; update passed glyph instead.
14603 (init_display): Use SET_CHAR_GLYPH to initialize space_glyph.
14604
14605 * xdisp.c (get_next_display_element, next_element_from_display_vector):
14606 Adapt to new glyph type and new glyph code encoding.
14607
14608 * term.c (encode_terminal_code, produce_special_glyphs): Likewise.
14609
14610 * indent.c (current_column, current_column_1, Fmove_to_column)
14611 (compute_motion): Adapt to new glyph code encoding.
14612
14613 * msdos.c (IT_write_glyphs): Adapt to new glyph type.
14614
146152008-02-27 Chong Yidong <cyd@stupidchicken.com>
14616
14617 * process.c (wait_reading_process_output): Check for window
14618 changes caused by timers.
14619 Suggested by Johan Bockgård.
14620
146212008-02-27 Glenn Morris <rgm@gnu.org>
14622
14623 * emacs.c (USAGE1): Add `--disable-font-backend'.
14624
146252008-02-27 Stefan Monnier <monnier@iro.umontreal.ca>
14626
14627 * fileio.c (Finsert_file_contents): Don't reset undo_list if no change
14628 is made to the buffer.
14629
146302008-02-26 Stefan Monnier <monnier@iro.umontreal.ca>
14631
14632 * dispextern.h (face_at_buffer_position, face_for_overlay_string)
14633 (face_at_string_position):
14634 * xfaces.c (face_at_buffer_position, face_for_overlay_string)
14635 (face_at_string_position):
14636 * xdisp.c (display_string, next_overlay_change):
14637 * buffer.h (overlays_at):
14638 * buffer.c (overlays_at): Use EMACS_INT for buffer positions.
14639 Update callers.
14640
146412008-02-26 Chong Yidong <cyd@stupidchicken.com>
14642
14643 * editfns.c (Fformat): Doc fix.
14644
146452008-02-26 Juanma Barranquero <lekktu@gmail.com>
14646
14647 * font.c (Ffont_spec, Ffont_at): Fix typos in docstrings.
14648 (Ffont_put, Flist_families, Ffont_fill_gstring, Ffont_drive_otf)
14649 (Ffont_otf_alternates, Fquery_font): Doc fixes.
14650
146512008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
14652
14653 * buffer.c (Fbuffer_swap_text): New function.
14654 (syms_of_buffer): Defsubr it.
14655
146562008-02-25 Chong Yidong <cyd@stupidchicken.com>
14657
14658 * keyboard.c (command_loop_1): Revert 2006-10-09 change.
14659
146602008-02-25 Jason Rumney <jasonr@gnu.org>
14661
14662 * w32font.c (w32font_draw): Draw one character at a time when padding.
14663
146642008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
14665
14666 * window.c (Fdelete_window, Fadjust_window_trailing_edge):
14667 Handle a nil arg. Use run_window_configuration_change_hook.
14668 (delete_window, adjust_window_trailing_edge): Don't handle nil any more.
14669 (Fenlarge_window, Fshrink_window, Fset_window_configuration):
14670 Use run_window_configuration_change_hook.
14671
146722008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
14673
14674 * xdisp.c (x_produce_glyphs): For a visible glyph, assure at least
14675 1-pixel width.
14676
146772008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
14678
14679 * xdisp.c (fill_glyph_string): Pay attention to glyph->padding_p.
14680 (append_glyph): Set glyph->pixel_width and glyph->padding_p to 1
14681 if the glyph in the font is zero pixel with.
14682
14683 * dispextern.h (struct glyph_string): New member padding_p.
14684
14685 * w32font.c (w32font_draw): Pay attention to s->padding_p.
14686
14687 * ftxfont.c (ftxfont_draw): Pay attention to s->padding_p.
14688
14689 * xfont.c (xfont_draw): Pay attention to s->padding_p.
14690
14691 * xftfont.c (xftfont_draw): Pay attention to s->padding_p.
14692
14693 * font.c: If the font driver doesn't have `shape' function, return Qnil.
14694
146952008-02-25 Jason Rumney <jasonr@gnu.org>
14696
14697 * w32fns.c (enum_font_cb2): Don't use raster fonts for Unicode.
14698
146992008-02-24 Stefan Monnier <monnier@iro.umontreal.ca>
14700
14701 Allow fine-grained image-cache flushing.
14702 * dispextern.h (struct image): Add `dependencies' field.
14703 (clear_image_caches): Change arg to Lisp_Object.
14704 * image.c (make_image): Initialize `dependencies' field.
14705 (clear_image_cache): Change arg to allow fine-grained flushing.
14706 Perform the flush even if image-cache-eviction-delay is nil.
14707 (clear_image_caches): Change arg to Lisp_Object.
14708 (Fclear_image_cache): Expand meaning of the argument.
14709 (mark_image): Mark `dependencies' field.
14710 * xfaces.c (clear_face_cache): Adapt arg to call to clear_image_caches.
14711 (lface_hash): Use XHASH rather than XFASTINT.
14712 (face_at_buffer_position): Fix int -> EMACS_INT position.
14713 * xdisp.c (next_overlay_change): Fix int -> EMACS_INT position.
14714 (select_frame_for_redisplay): Remove code duplication.
14715 (redisplay_internal): Adapt arg to call to clear_image_caches.
14716
147172008-02-24 Dan Nicolaescu <dann@ics.uci.edu>
14718
14719 * s/vms4-0.h:
14720 * s/vms4-2.h:
14721 * s/vms4-4.h:
14722 * s/vms5-5.h: Remove, unused.
14723
14724 * s/irix5-2.h:
14725 * s/irix6-0.h:
14726 * s/riscos5.h:
14727 * s/mach-bsd4-3.h:
14728 * m/mips4.h: Remove files for obsolete systems.
14729
14730 * Makefile.in:
14731 * filelock.c:
14732 * unexmips.c:
14733 * m/hp9000s300.h:
14734 * m/iris4d.h:
14735 * s/aix3-1.h:
14736 * s/hpux.h:
14737 * s/msdos.h:
14738 * s/usg5-0.h:
14739 * s/usg5-2-2.h:
14740 * s/usg5-2.h:
14741 * s/usg5-3.h: Remove references to obsolete variables.
14742
14743 * s/irix5-0.h: Remove, move all the contents ...
14744 * s/irix6-5.h: ... here. Simplify.
14745 * config.in: Regenerate.
14746
147472008-02-24 Jason Rumney <jasonr@gnu.org>
14748
14749 * w32term.c (x_draw_glyph_string_background): Clear the background
14750 manually when cleartype is in use.
14751 (x_draw_glyph_string_foreground): Draw text transparently when
14752 cleartype is in use.
14753
14754 * w32font.c (w32font_text_extents): Avoid getting HDC and selecting
14755 a font into it unless we have to.
14756
147572008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
14758
14759 * intervals.h (INT_LISPLIKE): Remove. It may misfire.
14760 (NULL_INTERVAL_P, SET_INTERVAL_PARENT): Don't use it.
d6c952f8 14761
aac0c6e3
MR
147622008-02-18 Jason Rumney <jasonr@gnu.org>
14763
14764 * w32fns.c (Fw32_shell_execute): Encode parameters.
14765
147662008-02-09 Eli Zaretskii <eliz@gnu.org>
14767
14768 * fileio.c (syms_of_fileio) <insert-default-directory>: Doc fix.
14769
147702008-02-05 Juanma Barranquero <lekktu@gmail.com>
14771
14772 * unexhp9k800.c (read_header): Replace `legal' with `valid'.
14773
147742008-02-24 Ulrich Neumerkel <ulrich@complang.tuwien.ac.at> (tiny change)
14775
14776 * xterm.c (x_set_offset): Don't change the gravity if
14777 CHANGE_GRAVITY is -1.
14778
147792008-02-23 Chong Yidong <cyd@stupidchicken.com>
14780
14781 * fileio.c (auto_save_error_occurred): New var.
14782 (auto_save_error): Set it.
14783 (Fdo_auto_save): Don't overwrite the error message if an auto-save
14784 error occurred.
14785
147862008-02-23 Eli Zaretskii <eliz@gnu.org>
14787
14788 * w32.c (globals_of_w32): Add initializations for
14789 g_b_init_get_sid_sub_authority and
14790 g_b_init_get_sid_sub_authority_count.
14791
147922008-02-22 Stefan Monnier <monnier@iro.umontreal.ca>
14793
14794 * font.c (font_match_xlfd, font_check_xlfd_parse): New funs.
14795 (font_parse_xlfd): Use them for sanity check.
14796 (Finternal_set_font_style_table): Make sure the table is bijective.
14797
14798 Consolidate the image_cache to the terminal struct.
14799 * termhooks.h (P_): Remove redundant def.
14800 (struct terminal): New field `image_cache'.
14801 * frame.h (FRAME_IMAGE_CACHE): New macro. Use it everywhere in place
14802 of FRAME_X_IMAGE_CACHE.
14803 * xterm.h (struct x_display_info): Remove image_cache field.
14804 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
14805 * w32term.h (struct w32_display_info): Remove image_cache field.
14806 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
14807 * macterm.h (struct mac_display_info): Remove image_cache field.
14808 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
14809 * xterm.c (x_term_init):
14810 * w32term.c (w32_term_init):
14811 * macterm.c (mac_term_init): Set the image_cache in the terminal.
14812 * dispextern.h (clear_image_cache, forall_images_in_image_cache):
14813 Remove declarations.
14814 (clear_image_caches, mark_image_cache): New declarations.
14815 * xfaces.c (clear_face_cache):
14816 * xdisp.c (redisplay_internal): Use clear_image_caches.
14817 * image.c (clear_image_cache): Don't check that a frame is on
14818 a window-system before checking if it shares the same cache.
14819 (clear_image_caches): New function.
14820 (Fclear_image_cache): Use it.
14821 (mark_image): Move from allo.c.
14822 (mark_image_cache): Move from alloc.c and forall_images_in_image_cache.
14823 * alloc.c (mark_image, mark_image_cache): Move to image.c.
14824 (mark_object): Don't call mark_image_cache for frames.
14825 (mark_terminals): Call mark_image_cache.
14826
14827 * lisp.h (Fdelete_terminal): Declare.
14828
14829 * charset.h (CHECK_CHARSET, CHECK_CHARSET_GET_ID)
14830 (CHECK_CHARSET_GET_ATTR): Don't use the inexistent return value of
14831 wrong_type_argument.
14832
148332008-02-22 Kenichi Handa <handa@ni.aist.go.jp>
14834
14835 * Makefile.in (lisp): Remove devanagari.el, kannada.el,
14836 malayalam.el, and tamil.el. Add sinhala.el.
14837
148382008-02-21 Stefan Monnier <monnier@iro.umontreal.ca>
14839
14840 * xterm.c (x_connection_closed): Consolidate identical tests.
14841 (x_delete_terminal): Don't crash if called via x_connection_closed.
14842
148432008-02-21 Kenichi Handa <handa@ni.aist.go.jp>
14844
14845 * xdisp.c (decode_mode_spec): New arg string.
14846 (display_mode_element): Adjust for the above change.
14847
148482008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
14849
14850 * callint.c (Fcall_interactively): Use AREF.
14851
148522008-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
14853
14854 * font.c (font_unparse_xlfd): Don't ignore integer pixel size specs.
14855
148562008-02-18 Jan Djärv <jan.h.d@swipnet.se>
14857
14858 * xfns.c (Fx_show_tip): Set string to " " if empty.
14859
148602008-02-17 Dan Nicolaescu <dann@ics.uci.edu>
14861
14862 * callint.c (syms_of_callint): Initialize Vmark_even_if_inactive
14863 with Qt.
14864
148652008-02-17 Kenichi Handa <handa@m17n.org>
14866
14867 * ftfont.c (ftfont_shape): Return Lispy number.
14868
14869 * xfaces.c (prepare_face_for_display): Use display_info->font->fid
14870 for GCs.
14871 (Finternal_set_font_selection_order): Call font_update_sort_order
14872 only when enable_font_backend is set.
14873 (realize_x_face): Set face->font_info to that of default face only
14874 when enable_font_backend is set.
14875
14876 * xdisp.c (handle_composition_prop): Set it->c to the fist
14877 character of the composed region.
14878 (fill_composite_glyph_string): Set base_face->font_info to
14879 s->font_info. Get a face for ascii from base_face->ascii_face.
14880 (BUILD_COMPOSITE_GLYPH_STRING): Call fill_composite_glyph_string
14881 with a face already decided.
14882 (x_produce_glyphs): Be sure to set it->ascent and it->descent to
14883 non-negative.
14884 (x_produce_glyphs): If the composition method is ..._WITH_GLYPH_STRING,
14885 call font_prepare_composition unconditionally.
14886
14887 * xfns.c (x_make_gc): Use the default font id of the frame for GCs.
14888
14889 * xterm.h (struct x_display_info): New member font.
14890
14891 * xterm.c (x_set_cursor_gc): Use display_info->font->fid for GCs.
14892 (x_set_mouse_face_gc, x_new_font): Likewise.
14893 (x_term_init): Setup display_info->font.
14894 (x_delete_terminal): Free display_info->font.
14895
14896 * xfont.c (xfont_draw): Use BLOCK_INPUT and UNBLOCK_INPUT.
14897
14898 * ftxfont.c (ftxfont_default_fid): Delete it.
14899 (ftxfont_open): Set xfont->fid to 0.
14900 (ftxfont_end_for_frame): Clear data specific to the frame and the
14901 font-driver.
14902
14903 * xftfont.c (xftfont_default_fid): Delete it.
14904 (xftfont_open): Set xfont->fid to 0.
14905
14906 * fontset.c (FONTSET_OBJLIST): New macro.
14907 (fontset_find_font): Update font-object list of the fontset.
14908 (free_realized_fontset): New function.
14909 (free_face_fontset): Call free_realized_fontset.
14910 (Ffont_info): Call font_close_object only when enable_font_backend
14911 is set.
14912
14913 * font.c [HAVE_X_WINDOWS]: Include xterm.h.
14914 [HAVE_NTGUI]: Include w32term.h.
14915 [MAC_OS]: Include macterm.ch.
14916 (font_otf_ValueRecord): Use make_number.
14917 (font_finish_cache): Fix handling of reference count.
14918 (font_clear_cache): Update num_fonts.
14919 (font_open_entity): Update smallest_char_width and
14920 smallest_font_height of the frame.
14921 (font_close_object): Update num_fonts.
14922 (Fclear_font_cache): Fix finding the target cache data.
14923
149242008-02-16 Glenn Morris <rgm@gnu.org>
14925
14926 * fontset.c (Finternal_char_font): Fix compilation warning.
14927
149282008-02-16 Eli Zaretskii <eliz@gnu.org>
14929
14930 * w32.c (init_user_info): Use TOKEN_USER and TOKEN_PRIMARY_GROUP
14931 instead of char arrays. Enlarge the size of array passed to
14932 get_token_information.
14933
14934 * font.c (Ffont_fill_gstring, Fget_font_glyphs): Fix compilation
14935 warnings.
14936
149372008-02-15 Dan Nicolaescu <dann@ics.uci.edu>
14938
14939 * .gdbinit: Don't set `args', it breaks gdb --args.
14940
149412008-02-14 Stefan Monnier <monnier@iro.umontreal.ca>
14942
14943 * fileio.c (Finsert_file_contents): Adjust offsets when replacing
14944 within a narrowed buffer.
14945
149462008-02-14 Kenichi Handa <handa@ni.aist.go.jp>
14947
14948 * coding.c (decode_coding_object, encode_coding_object):
14949 Preserve Vdeactivate_mark. Delete unnecessary call of Fcurrent_buffer.
14950
149512008-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
14952
14953 * coding.c (coding_set_destination): Use BEG_BYTE rather than
14954 hardcoding 1.
14955 (detect_coding_system):
14956 * lisp.h (detect_coding_system, chars_in_text, multibyte_chars_in_text)
14957 (string_char_to_byte, string_byte_to_char, insert_from_gap):
14958 * insdel.c (insert_from_gap):
14959 * fns.c (string_char_byte_cache_charpos, string_char_byte_cache_bytepos)
14960 (string_char_to_byte, string_byte_to_char, string_make_multibyte)
14961 (string_to_multibyte):
14962 * character.c (chars_in_text, multibyte_chars_in_text):
14963 * fileio.c (Finsert_file_contents): Use EMACS_INT for buffer positions.
14964
14965 * character.h (FETCH_STRING_CHAR_ADVANCE)
14966 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE)
14967 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA and SREF.
14968 (DEC_POS, BUF_DEC_POS): Use BEG_BYTE rather than hardcoding 1.
14969
14970 * casefiddle.c (casify_region): Only call after-change and composition
14971 functions on the part of the region that was changed.
14972
14973 * keyboard.c (read_avail_input):
14974 * frame.c (Fdelete_frame): Call Fdelete_terminal.
14975
149762008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
14977
14978 * buffer.c (clone_per_buffer_values, reset_buffer_local_variables)
14979 (Fbuffer_local_value, Fbuffer_local_variables): Don't forget undo_list.
14980
149812008-02-11 Juanma Barranquero <lekktu@gmail.com>
14982
14983 * w32menu.c (push_submenu_start, push_submenu_end)
14984 (push_left_right_boundary, push_menu_pane, push_menu_item):
14985 * keyboard.c (read_key_sequence): Don't pass args with side effects
14986 to AREF, it fails when compiling with -DENABLE_CHECKING.
14987
149882008-02-11 Kenichi Handa <handa@ni.aist.go.jp>
14989
14990 * Makefile.in (${lispsource}international/charprop.el):
14991 Delete this target.
14992
14993 * search.c (boyer_moore): Fix incorrect synching of the trunk and
14994 emacs-unicode-2.
14995
149962008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
14997
14998 * terminal.c (Fdelete_terminal): Clean up the `force' path.
14999
150002008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
15001
15002 * frame.c (Qnoelisp): New symbol.
15003 (syms_of_frame): Initialize it.
15004 (Fdelete_frame): Use it to distinguish a mere `force' passed from some
15005 harmless Elisp code, from a strong `force' from x_connection_closed.
15006 * frame.h (Qnoelisp): Declare.
15007 * xterm.c (x_connection_closed): Pass `noelisp'.
15008
15009 * lisp.h (struct Lisp_Misc_Any, struct Lisp_Marker)
15010 (struct Lisp_Overlay, struct Lisp_Kboard_Objfwd)
15011 (struct Lisp_Save_Value, struct Lisp_Free): Use enum Lisp_Misc_Type
15012 rather than `int' for the type of `type'.
15013
150142008-02-10 Dan Nicolaescu <dann@ics.uci.edu>
15015
15016 * s/gnu-linux.h: Remove support for non-ELF and linux-1.x.
15017
15018 * Makefile.in (GNUC): Remove support for gcc-1.x.
15019
150202008-02-10 Richard Stallman <rms@gnu.org>
15021
15022 * lisp.h (ASET): Use AREF, not ASLOT.
15023
150242008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
15025
15026 * lisp.h (ASET): Check bounds.
15027
150282008-02-10 Glenn Morris <rgm@gnu.org>
15029
15030 * buffer.c (mode-name): Doc fix.
15031
150322008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
15033
15034 * Makefile.in:
15035 * emacs.c:
15036 * gmalloc.c:
15037 * keyboard.c:
15038 * lisp.h:
15039 * m/ibm370aix.h:
15040 * process.c:
15041 * regex.c:
15042 * s/hpux.h:
15043 * sysdep.c:
15044 * sysselect.h:
15045 * systty.h:
15046 * unexec.c:
15047 * w32term.c:
15048 * xsmfns.c:
15049 * xterm.c: Remove code that deals with obsolete variables.
15050
15051 * s/msdos.h (DONT_NEED_ENVIRON): Don't define.
15052
15053 * ecrt0.c: Replace the DONT_NEED_ENVIRON test with MSDOS test,
15054 nothing else needs it anymore.
15055
150562008-02-09 Eli Zaretskii <eliz@gnu.org>
15057
15058 * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use unibyte_to_multibyte_table
15059 instead of unibyte_char_to_multibyte.
15060
150612008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
15062
15063 * s/gnu-linux.h: Remove commented out code.
15064
15065 * unexec.c: Remove references to obsolete variable COFF_ENCAPSULATE.
15066
15067 * Makefile.in: Update what RMS says about using autoconf.
15068 (C_COMPILER, COFF_ENCAPSULATE, MAKE_PARALLEL): Remove obsolete variable.
15069 (C_SWITCH_MACHINE_1, C_SWITCH_SYSTEM_1, C_SWITCH_SITE_1)
15070 (C_SWITCH_X_SITE_1, C_SWITCH_X_MACHINE_1)
15071 (C_SWITCH_X_SYSTEM_1): Move invariant code outside conditional.
15072
150732008-02-08 Stefan Monnier <monnier@iro.umontreal.ca>
15074
15075 * keymap.c (Fkey_description): Move side effect outside of macro call.
15076
15077 * xfaces.c (Finternal_make_lisp_face):
15078 * keyboard.c (add_command_key, parse_menu_item): Use ASET.
15079
15080 * fontset.c (free_face_fontset): Use FONTSET_FROM_ID.
15081 (syms_of_fontset): Use ASET.
15082
15083 * fns.c (concat): Move side effect outside of macro call.
15084 (hash_clear): Use ASET.
15085
150862008-02-08 Richard Stallman <rms@gnu.org>
15087
15088 * frame.c (Fdelete_frame): If FORCE, don't call hooks.
15089 If FORCE, and frame has a surrogate minibuffer for another frame,
15090 delete the other frame first.
15091
150922008-02-07 Timo Savola <timo.savola@iki.fi>
15093
15094 * xterm.c (x_detect_focus_change): Handle embed client message.
15095 (handle_one_xevent): Ditto.
15096 (handle_one_xevent): If embedded and we get a button press/release,
15097 request focus.
15098 (xembed_set_info, xembed_send_message): New functions.
15099 (x_make_frame_visible): Call xembed_set_info if embedded.
15100 (x_make_frame_invisible): Call xembed_set_info if embedded.
15101 (x_term_init): Initialize Xatom_XEMBED.
15102 (x_make_frame_visible): Check for FRAME_X_EMBEDDED_P also.
15103 (x_iconify_frame): Ditto.
15104
15105 * xterm.h (struct x_display_info): Add AtomXatom_XEMBED.
15106 (enum xembed_info, enum xembed_message, enum xembed_focus)
15107 (enum xembed_modifier, enum xembed_accelerator): New.
15108 (xembed_set_info, xembed_send_message): Declare.
15109 (FRAME_X_EMBEDDED_P): New.
15110
15111 * gtkutil.c (xg_create_frame_widgets): If frame is embedded, call
15112 gtk_plug_new.
15113
15114 * xfns.c (Fx_create_frame): Do not override the explicitly set parent
15115 window ID of a frame.
15116 (x_window): Reparent frame if embedded.
15117 (Fx_create_frame): Don't set border width if embedded.
15118
15119 * emacs.c (USAGE3): Add --parent-id.
15120 (standard_args): Ditto.
15121
151222008-02-07 Jan Djärv <jan.h.d@swipnet.se>
15123
15124 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): Use "do...while (0)".
15125
151262008-02-07 Jim Meyering <meyering@redhat.com>
15127
15128 Use "do...while (0)", not "if (1)...else" in macro definitions.
15129 The latter provokes a warning from gcc about the empty else, when
15130 followed by ";". Also, without that trailing semicolon, it would
15131 silently swallow up any following statement.
15132 * syntax.h (SETUP_SYNTAX_TABLE)
15133 (SETUP_SYNTAX_TABLE_FOR_OBJECT): Likewise.
15134 * buffer.h (DECODE_POSITION): Likewise.
15135 * character.h (FETCH_STRING_CHAR_ADVANCE): Likewise.
15136 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): Likewise.
15137 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Likewise.
15138 (FETCH_CHAR_ADVANCE): Likewise.
15139 (FETCH_CHAR_ADVANCE_NO_CHECK): Likewise.
15140
151412008-02-07 Jim Meyering <meyering@redhat.com>
15142
15143 * lread.c [lint]: Don't include <sys/inode.h>.
15144
151452008-02-07 Stefan Monnier <monnier@iro.umontreal.ca>
15146
15147 * xselect.c (x_handle_dnd_message):
15148 * xmenu.c (digest_single_submenu, xmenu_show):
15149 * xdisp.c (with_echo_area_buffer_unwind_data)
15150 (format_mode_line_unwind_data, unwind_format_mode_line)
15151 (display_menu_bar):
15152 * eval.c (Ffetch_bytecode):
15153 * doc.c (store_function_docstring):
15154 * ccl.c (resolve_symbol_ccl_program, ccl_get_compiled_code)
15155 (Fccl_execute, Fccl_execute_on_string, Fregister_code_conversion_map):
15156 * buffer.c (add_overlay_mod_hooklist): Use ASET.
15157
151582008-02-07 Kenichi Handa <handa@m17n.org>
15159
15160 * ftxfont.c (ftxfont_open): Don't set
15161 dpyinfo->smallest_font_height and dpyinfo->smallest_char_width to 0.
15162
15163 * ftfont.c (ftfont_open): Fix previous change.
15164
151652008-02-06 Jason Rumney <jasonr@gnu.org>
15166
15167 * w32font.c (w32font_text_extents): Fill in lbearing metric.
15168 Use cached metrics for ASCII characters.
15169 (w32font_open_internal): Don't set font's owning_frame.
15170 Cache metrics for ASCII characters.
15171
15172 * w32font.h (struct w32font_info): Add ascii_metrics.
15173 Remove owning_frame.
15174
151752008-02-06 Kenichi Handa <handa@ni.aist.go.jp>
15176
15177 * xdisp.c (x_produce_glyphs): Don't set it->ascent and it->descent
15178 to negative value.
15179
15180 * ftxfont.c (ftxfont_draw): Use s->font_info, not face->font_info.
15181
15182 * ftfont.c (ftfont_open): Fix calculation of font->font.average_width.
15183
15184 * charset.c (syms_of_charset): Set QCtest and Qeq.
15185
151862008-02-06 Stefan Monnier <monnier@iro.umontreal.ca>
15187
15188 * process.c (Fstart_process):
15189 * callproc.c (Fcall_process): Handle the case where
15190 Funhandled_file_name_directory returns nil.
15191
15192 * font.h (enum lgstring_indices, enum lglyph_indices): New enums.
15193 (LGSTRING_SLOT, LGSTRING_SET_SLOT): New macros.
15194 * font.c (check_gstring): Use them and AREF to access the vector before
15195 we know it's really a gstring.
15196 (Ffont_shape_text): Fix typo.
46e722a9 15197 (Ffont_shape_text, Ffont_otf_alternates): Fix up int/Lisp_Object mixups.
aac0c6e3
MR
15198
15199 * composite.h (Fcompose_region_internal, Fcompose_string_internal):
15200 Declare.
15201
15202 * chartab.c (make_sub_char_table): Remove noop-yet-incorrect statement.
15203
152042008-02-05 Jason Rumney <jasonr@gnu.org>
15205
15206 * w32font.c (w32font_open_internal): Fill min_width with tmAveCharWidth.
15207 Set smallest_font_height and smallest_char_width in display info.
15208
152092008-02-05 Kenichi Handa <handa@ni.aist.go.jp>
15210
15211 * coding.c (decode_eol): Pay attention to coding->dst_multibyte.
15212
152132008-02-05 Miles Bader <miles@gnu.org>
15214
15215 * xfaces.c (get_lface_attributes, merge_named_face)
15216 (lookup_named_face, lookup_derived_face, realize_named_face):
15217 Revert 2008-02-01 change by cyd@stupidchicken.com.
15218
152192008-02-04 Kenichi Handa <handa@ni.aist.go.jp>
15220
15221 * fontset.c (Ffontset_info): Handle the case of inhibitting the
15222 fallback fonts.
15223 (Ffontset_info) [USE_FONT_BACKEND]: Fix getting of opened font names.
15224
152252008-02-04 Jason Rumney <jasonr@gnu.org>
15226
15227 * w32font.c (w32font_open_internal): Use font_unparse_fcname to
15228 set full_name.
15229 (w32font_open_internal): Use xmalloc, xrealloc, xfree.
15230
152312008-02-03 Jason Rumney <jasonr@gnu.org>
15232
15233 * makefile.w32-in (OBJ1): Include font.o here.
15234 (FONTOBJ) [USE_FONTBACKEND]: Instead of here.
15235
152362008-02-02 Jason Rumney <jasonr@gnu.org>
15237
15238 * makefile.w32-in (temacs): Bump EMHEAP to 21.
15239
152402008-02-01 Jason Rumney <jasonr@gnu.org>
15241
15242 * s/cygwin.h: Define VIRT_ADDR_VARIES.
15243
15244 * puresize.h [VIRT_ADDR_VARIES]: Don't include CYGWIN in condition.
15245
152462008-02-01 Andreas Schwab <schwab@suse.de>
15247
15248 * Makefile.in (shortlisp, lisp): Update for rename of
15249 ../lisp/language/myanmar.el.
15250
152512008-02-01 Chong Yidong <cyd@stupidchicken.com>
15252
15253 * xfaces.c (get_lface_attributes): Delete function.
15254 (merge_named_face, lookup_named_face, lookup_derived_face)
15255 (realize_named_face): Call lface_from_face_name directly, and use
15256 the fact that merge_face_vectors does not alter its FROM argument.
15257
152582008-02-01 Jason Rumney <jasonr@gnu.org>
15259
15260 * w32term.c (w32_read_socket) <WM_CHAR>: Decode non-Unicode
15261 input in the default locale. Handle non-Unicode multibyte input.
15262
152632008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15264
15265 * fontset.c (reorder_font_vector): Exclude nil elements from the
15266 font group. Don't try multiple fonts.
15267 (fontset_font): Adjust for the above change.
15268 (Finternal_char_font): Return nil if the found font doesn't
15269 contain the character ch.
15270
15271 * Makefile.in (lisp, shortlisp): Add cham.el.
15272
152732008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15274
15275 * font.h (FONTP): Make it return 1 also for a font-object.
15276
15277 * .gdbinit (xfontset): New function.
15278
15279 * font.c (font_find_for_lface): Check if the character C is
15280 supported or not only for the first font.
15281
15282 * fontset.c (reorder_font_vector): Fix typo.
15283 (fontset_find_font): Don't add a font-spec specifying a script.
15284 Use 0 (not Qt) for the indication of empty font-group. Change the
15285 format of RFONT-DEF. Return Qt if no font in the font-group
15286 support the character.
15287 (fontset_font): Adjust for the above change. If no font was
15288 found the character, remember that.
15289 (face_for_char): Adjust for the change of RFONT-DEF.
15290 (Fset_fontset_font): Allow nil for FONT-SPEC to explicitly specify
15291 no font for the target.
15292 (Finternal_char_font): Adjust for the change of RFONT-DEF.
15293
152942008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15295
15296 * font.c (font_load_for_face): Handle the case that the font in
15297 face->lface is a string.
15298
152992008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15300
15301 * xfaces.c (set_lface_from_font_and_fontset): Set the fontname in lface.
15302
153032008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15304
15305 * xfaces.c (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]:
15306 Fix previous change. If the frame is not on a window system,
15307 signal an error.
15308
153092008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15310
15311 * coding.c (decode_coding_object, encode_coding_object): Adjust
15312 marker positions after conversion.
15313
15314 * lisp.h (struct Lisp_Marker): New member need_adjustment.
15315
153162008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15317
15318 * font.c (font_find_for_lface): Fix the handling of the return
15319 value of font_has_char.
15320 (Ffont_shape_text): Fix previous change.
15321
15322 * fontset.c (FONTSET_REF_AND_RANGE): Delete it.
15323 (fontset_ref_and_range): Delete it.
15324 (fontset_find_font): Call char_table_ref_and_range instead of
15325 FONTSET_REF_AND_RANGE.
15326 (make_fontset): Don't setup font groups of Latin here.
15327 (Fset_fontset_font): Don't overwrite the setting of FONTSET_ASCII.
15328 (new_fontset_from_font): Make the specified font the default for
15329 all Latin characters.
15330
153312008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15332
15333 * xfaces.c (Finternal_set_lisp_face_attribute): Check if the frame
15334 is on a window system before accessing the fontset of the frame.
15335
153362008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15337
15338 * Makefile.in (lisp, shortlisp): Add kherm.el and myanmar.el.
15339
15340 * ftfont.c (ftfont_driver): Set ftfont_shape in ftfont_driver only
15341 when both HAVE_M17N_FLT and HAVE_LIBOTF are defined.
15342
15343 * font.c (Ffont_shape_text): If the font driver doesn't have a
15344 shaper function, make zero-width glyphs to have at least one-pixel
15345 width. Fix setting of `to' field of glyphs.
15346
153472008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15348
15349 * ftfont.c (ftfont_drive_otf): Fix setting of FROM and TO slots of
15350 glyphs.
15351
15352 * font.h (struct font_driver): Improve docstring of member `shape'.
15353
153542008-02-01 Kenichi Handa <handa@m17n.org>
15355
15356 * composite.c (syms_of_composite): Fix docstring of
15357 auto-composition-function.
15358
15359 * font.h (LGLYPH_SIZE): New macro.
15360
15361 * font.c (Ffont_fill_gstring): Stop filling when a character not
15362 supported by the font is found.
15363 (Ffont_shape_text): When a shape callback function returns nil,
15364 try at most two more times with larger gstring.
15365 (Ffont_at): Fix getting of w. Call font_at with correct 5th argument.
15366
15367 * xdisp.c (handle_auto_composed_prop): Change the argument to
15368 auto-composition-function.
15369
15370 * ftfont.c (ftfont_encode_char): Use the macro FONT_INVALID_CODE.
15371 (ftfont_shape_by_flt): If an element of lgstring is nil, make a
15372 Lispy glyph and store it in the lgstring.
15373
15374 * xfont.c (xfont_encode_char): Use the macro FONT_INVALID_CODE.
15375
15376 * xftfont.c (xftfont_encode_char): Use the macro FONT_INVALID_CODE.
15377
153782008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15379
15380 * font.c (Ffont_shape_text): Avoid unnecessary composition.
15381
15382 * fontset.c (Vfont_encoding_charset_alist): New variable.
15383 (syms_of_fontset): DEFVAR it.
15384 (reorder_font_vector, fontset_find_font): Optimize for the case of
15385 no need of reordering.
15386 (face_for_char): Map the charset property by
15387 Vfont_encoding_charset_alist.
15388
153892008-02-01 Jason Rumney <jasonr@gnu.org>
15390
15391 * w32font.c (logfonts_match): Don't check adstyle here.
15392 (font_matches_spec): Check here against physical font instead.
15393 (add_font_entity_to_list): Avoid some substitutions.
15394
15395 * font.c (font_parse_fcname): Default weight and slant to normal.
15396 (font_score): Prefer normal fonts if weight or slant unspecified.
15397 (font_score) [WINDOWSNT]: Scale weight difference down to closer
15398 match freetype scores.
15399
154002008-02-01 Jason Rumney <jasonr@gnu.org>
15401
15402 * w32font.c (w32font_text_extents): Don't use the frame stored in the
15403 font, as it may have been deleted.
15404 (w32_enumfont_pattern_entity): Map generic family to adstyle using
15405 most common hyphenless variation.
15406 (logfonts_match): Check generic family.
15407 (font_matches_spec): Don't check generic family here.
15408 (fill_in_logfont): Set generic family based on adstyle.
15409
15410 * w32font.h (w32font_get_cache): Update declaration.
15411
154122008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15413
15414 * ftfont.c (ftfont_get_cache): Adjust the argument type.
15415
15416 * frame.c (x_set_font_backend): Don't call Fclear_font_cache.
15417 If none of the new drivers are available, call font_update_drivers
15418 with the old drivers.
15419
15420 * w32font.c (w32font_get_cache): Adjust the argument type.
15421
15422 * xfont.c (xfont_get_cache): Adjust the argument type.
15423
15424 * font.h (struct font_driver): Change argument type of get_cache.
15425
15426 * xftfont.c (xftfont_start_for_frame): Delete prototype.
15427
15428 * font.c (Ffont_get): Fix arguments to Fassoc.
15429 (font_prepare_cache, font_finish_cache, font_get_cache): New functions.
15430 (font_clear_cache): New function.
15431 (font_list_entities, font_matching_entity): Use font_get_cache.
15432 (font_update_drivers): Call font_clear_cache when finishing a driver.
15433
15434 * fontset.c (fontset_find_font): Fix previous change.
15435
154362008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15437
15438 * xterm.c (x_check_font) [USE_FONT_BACKEND]: Don't access
15439 dpyinfo->font_table.
15440 (x_delete_display) [USE_FONT_BACKEND]: Likewise.
15441 (x_delete_terminal) [USE_FONT_BACKEND]: Likewise.
15442
15443 * font.c (font_at): Handle the case that the arg C is negative.
15444 Handle the unibyte case.
15445 (Ffont_at): Call font_at with the arg C -1.
15446
15447 * xdisp.c (handle_auto_composed_prop): Don't get a character at
15448 the position here, and call font_at with the arg C -1.
15449 Don't check the range of the existing composition at the point.
15450
154512008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15452
15453 * fontset.c (fontset_add): New args charset_id and family.
15454 Change caller.
15455 (load_font_get_repertory, fontset_find_font): Assume that
15456 font_spec is always a font-spec object.
15457 (Fset_fontset_font): Always store a font-spec object in a fontset.
15458
15459 * xdisp.c (handle_auto_composed_prop): Use Fget_text_property
15460 instead of get_property_and_range.
15461
154622008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15463
15464 * xftfont.c (struct xftfont_info): Delete the member ft_face.
15465 (xftfont_open): Don't keep locking face.
15466 (xftfont_close): Don't unlock face.
15467 (xftfont_anchor_point, xftfont_shape): Lock and unlock face.
15468
15469 * fontset.c (fontset_find_font): Don't prefer a font of
15470 supplementary charset.
15471
154722008-02-01 Kenichi Handa <handa@m17n.org>
15473
15474 * ftfont.c (struct OpenTypeSpec): Rename members script_tag to
15475 script, langsys_tag to langsys, new member script.
15476 (OTF_TAG_STR): Terminate by '\0'.
867d4bb3 15477 (ftfont_get_open_type_spec): If :otf prop is spec, limit the
aac0c6e3
MR
15478 listing to the script specified in that property. Fix arg to
15479 OTF_check_features.
15480
154812008-02-01 Jason Rumney <jasonr@gnu.org>
15482
15483 * w32font.h: New file.
15484
15485 * w32font.c: Include it.
15486 (struct w32font_info): Add owning_frame field. Move to w32font.h.
15487 (w32font_open): Set owning_frame.
15488 (w32font_text_extents): Use owning_frame.
15489 (struct font_callback_data): Add opentype_only field.
15490 (add_font_entity_to_list): Use it to filter fonts.
15491 Don't check against full name.
15492 (w32font_list_internal): New function.
15493 (w32font_list): Use it.
15494 (w32font_match_internal): New function.
15495 (w32font_match): Use it.
15496 (w32font_open_internal): New function.
15497 (w32font_open): Use it.
15498 (w32font_get_cache, w32font_close, w32font_has_char)
15499 (w32font_encode_char, w32font_text_extents, w32font_draw):
15500 Make non-static.
15501
15502 * makefile.w32-in (w32font.o): Depend on w32font.h.
15503
155042008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15505
15506 * charset.c (Fdefine_charset_internal): Record a supplementary
15507 charset at the tail of Vcharset_order_list.
15508
15509 * font.c (Ffont_shape_text): Fix the return value.
15510
15511 * ftfont.c (OTF_SYM_TAG, OTF_TAG_STR): Fix argument names.
15512
15513 * xdisp.c (handle_auto_composed_prop): Fix previous change.
15514
155152008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15516
15517 * ftfont.c (struct OpenTypeSpec): New struct.
15518 (OTF_SYM_TAG, OTF_TAG_STR): New macros.
15519 (ftfont_get_open_type_spec): New function.
15520 (ftfont_list) [HAVE_LIBOTF]: Check otf-spec property.
15521
15522 * lread.c (read1): Redo the previous change with checking Vpurify_flag.
15523
155242008-02-01 Jason Rumney <jasonr@gnu.org>
15525
15526 * w32font.c (add_font_entity_to_list): Compare only the beginning
15527 of full name.
15528
155292008-02-01 Kenichi Handa <handa@m17n.org>
15530
15531 * xdisp.c (handle_auto_composed_prop): Simplify the code.
15532 Never return HANDLED_RECOMPUTE_PROPS.
15533
155342008-02-01 Kenichi Handa <handa@m17n.org>
15535
15536 * font.c (font_gstring_produce): Delete it.
15537
15538 * composite.h (COMPOSITION_METHOD):
15539 Handle COMPOSITION_WITH_GLYPH_STRING.
15540
155412008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15542
15543 * xfont.c (Qx): Delete.
15544 (syms_of_xfont): Don't initialize Qx.
15545
15546 * composite.h (enum composition_method):
15547 Define COMPOSITION_WITH_GLYPH_STRING unconditionally.
15548
155492008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15550
15551 * xfaces.c [HAVE_WINDOW_SYSTEM]: Include "font.h" unconditionally.
15552 (choose_face_font): Accept new form of font-spec.
15553
15554 * frame.h (font_driver_list): Declare it unconditionally.
15555 (struct frame): Define members font_driver_list and font_data_list
15556 unconditionally.
15557
15558 * fontset.c: Include "font.h" unconditionally.
15559 (generate_ascii_font_name): Use font_parse_xlfd and font_unparse_xlfd.
15560 (Fset_fontset_font): Accept a font-spec object.
15561
15562 * font.c (font_unparse_xlfd): If pixel_size is zero, make the
15563 PIXEL_SIZE part a wild card.
15564
15565 * dispextern.h (struct glyph_string): Define members clip and
15566 num_clips unconditionally.
15567 (struct face): Define members font_info and extra unconditionally.
15568
15569 * ftfont.c (ftfont_open): Set members maybe_otf and otf of
15570 ftfont_info only when HAVE_LIBOTF is defined.
15571
155722008-02-01 Andreas Schwab <schwab@suse.de>
15573
15574 * xdisp.c (back_to_previous_visible_line_start): Fix type of beg
15575 and end.
15576
155772008-02-01 Jason Rumney <jasonr@gnu.org>
15578
15579 * w32font.c (w32font_driver): Add new fields.
15580
155812008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15582
15583 * Makefile.in (ALL_CFLAGS): Add @M17N_FLT_CFLAGS@.
15584 (FONTSRC, FONTOBJ) [HAVE_WINDOW_SYSTEM]: Set them unconditionally.
15585 (LIBES): Add @M17N_FLT_CFLAGS@.
15586
15587 * composite.c (compose_text): Don't treat the new style
15588 composition specially.
15589
15590 * emacs.c (main): Call syms_of_font unconditionally.
15591
15592 * font.h (FONT_ENTITY_NOT_LOADABLE)
15593 (FONT_ENTITY_SET_NOT_LOADABLE): New macros.
15594 (LGSTRING_XXXX, LGLYPH_XXX): Adjust for the change of lispy gstring.
15595 (struct font_driver): New member shape.
15596 (font_registry_charsets): Extern it.
15597 (font_find_for_lface, font_prepare_composition): Adjust prototype.
15598 (font_otf_capability, font_drive_otf): Delete their externs.
15599
15600 * font.c [HAVE_M17N_FLT]: Include <m17n-flt.h>.
15601 (font_charset_alist, font_registry_charsets): Move from xfont.c
15602 and rename.
15603 (font_prop_validate_otf): New function.
15604 (font_property_table): Register it for QCotf.
15605 (DEVICE_DELTA, adjust_anchor, REPLACEMENT_CHARACTER)
15606 (font_drive_otf): Delete.
15607 (font_prepare_composition): New arg F. Adjust for the change of
15608 lispy gstring.
15609 (font_find_for_lface): New arg C.
15610 (font_load_for_face): Adjust for the change of font_find_for_lface.
15611 (Ffont_make_gstring, Ffont_fill_gstring): Adjust for the change of
15612 lispy gstring.
15613 (Ffont_shape_text): New function.
15614 (Fopen_font): If the font size is not given, use 12-pixel.
15615 (Ffont_at): New arg STRING.
15616 (syms_of_font): Initalize font_charset_alist.
15617 Declare Ffont_shape_text as a Lisp function. Call syms_of_XXfont
15618 conditionally.
15619
15620 * fontset.c (fontset_find_font) [USE_FONT_BACKEND]: Try multiple
15621 fonts of the same font-spec. Change the format of RFONT-DEF.
15622 (face_for_char, make_fontset_for_ascii_face, Finternal_char_font):
15623 Adjust for the change of RFONT-DEF.
15624 (Fset_fontset_font) [USE_FONT_BACKEND]: Handle new format of font-spec.
15625
15626 * ftfont.h: New file.
15627
15628 * ftfont.c: Don't include Freetype headers. Include "ftfont.h".
15629 (struct ftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
15630 (ftfont_open) [HAVE_LIBOTF]: Initialize the above members.
15631 (ftfont_driver) [HAVE_LIBOTF, HAVE_M17N_FLT]: Don't set
15632 font_otf_capability and font_drive_otf, set ftfont_shape.
15633 (ftfont_list): Adjust for the change of :otf property value.
15634 (struct MFLTFontFT) [HAVE_LIBOTF, HAVE_M17N_FLT]: New struct.
15635 (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_check_otf)
15636 (adjust_anchor, ftfont_drive_otf, ftfont_shape_by_flt)
15637 (ftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
15638 (DEVICE_DELTA) [HAVE_LIBOTF, HAVE_M17N_FLT]: New macro.
15639 (otf_gstring, gstring, m17n_flt_initialized): New variables.
15640
15641 * w32term.c (x_draw_composite_glyph_string_foreground):
15642 Adjust for the change of lispy gstring.
15643
15644 * xdisp.c (handle_composition_prop): Adjust for the change of
15645 lispy gstring. Call a function for auto-composition with the
15646 third arg it->window.
15647 (fill_composite_glyph_string): Adjust for the change of lispy string.
15648 (x_produce_glyphs): Adjust for the change of font_prepare_compositionl.
15649
15650 * xfaces.c (set_font_frame_param): Adjust for the change of
15651 font_find_for_lface.
15652
15653 * xfont.c (x_font_charset_alist): Move to font.c and rename.
15654 (xfont_registry_charsets): Likewise. Change caller.
15655 (syms_of_xfont): Don't handle x_font_charset_alist.
15656
15657 * xftfont.c: Include "ftfont.h".
15658 (struct xftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
15659 (xftfont_open) [HAVE_LIBOTF]: Initialize the above members.
15660 (xftfont_close) [HAVE_LIBOTF]: Close otf.
15661 (xftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
15662 (syms_of_xftfont) [HAVE_LIBOTF, HAVE_M17N_FLT]:
15663 Set xftfont_driver.shape to xftfont_shape.
15664
15665 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
15666 the change of lispy gstring.
15667
156682008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15669
15670 * ftxfont.c (ftxfont_end_for_frame): Fix array indexing error.
15671
156722008-02-01 Jason Rumney <jasonr@gnu.org>
15673
15674 * w32font.c (w32font_draw): Fill background manually.
15675
156762008-02-01 Jason Rumney <jasonr@gnu.org>
15677
15678 * font.c (Qfontp): Remove unused symbol.
15679 (QCantialias): New symbol.
15680 (syms_of_font): Define it.
15681 (font_property_table): Set a validator for QCantialias.
15682
15683 * w32font.c (CLEARTYPE_QUALITY, CLEARTYPE_NATURAL_QUALITY):
15684 Define if not already.
15685 (QCfamily): Share with xfaces.c.
15686 (Qstandard, Qsubpixel, Qnatural): New symbols.
15687 (syms_of_w32font): Define them. Don't define QCfamily here.
15688 (w32_antialias_type, lispy_antialias_type): New functions.
15689 (w32_enumfont_pattern_entity): New arg requested_font.
15690 Set antialias parameter if non-default was requested.
15691 (fill_in_logfont): Fill in lfQuality if :antialias specified.
15692
156932008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15694
15695 * lread.c (read1): Undo the previous change.
15696
156972008-02-01 CHENG Gao <chenggao@gmail.com> (tiny change)
15698
15699 * frame.c (Fdelete_frame): Call font_update_drivers only when
15700 USE_FONT_BACKEND is defined.
15701
157022008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15703
15704 * font.h (struct font_bitmap): New member bits_per_pixel.
15705 (struct font_driver): New members start_for_frame and end_for_frame.
15706 (struct font_data_list): New struct.
15707 (font_put_frame_data, font_get_frame_data): Extern them.
15708
15709 * frame.h (struct frame): New member font_data_list.
15710
15711 * font.c (font_update_drivers): Call driver->start_for_frame and
15712 driver->end_for_frame at proper timings.
15713 (font_put_frame_data, font_get_frame_data): New functions.
15714 (Ffont_spec): Add usage in the docstring.
15715
15716 * frame.c (make_frame): Initialize f->font_data_list to NULL.
15717 (Fdelete_frame): Call font_update_drivers.
15718
15719 * xftfont.c (struct xftface_info): Delete the member xft_draw.
15720 (xftfont_prepare_face, xftfont_done_face): Adjust for the above change.
15721 (xftfont_get_xft_draw): New function.
15722 (xftfont_draw): Get XftDraw by xftfont_get_xft_draw.
15723 (xftfont_end_for_frame): New function.
15724 (syms_of_xftfont): Set xftfont_driver.end_for_frame.
15725
15726 * ftxfont.c (ftxfont_get_gcs): Rename from ftxfont_create_gcs.
15727 Change argument. Cache GCs in the per-frame data.
15728 (struct ftxfont_frame_data): New struct.
15729 (ftxfont_draw_bitmap): New arg gc_fore and flush.
15730 (ftxfont_prepare_face, ftxfont_done_face): Delete them.
15731 (ftxfont_draw): Get GCs by ftxfont_get_gcs. Reflect s->clip in GCs.
15732 (ftxfont_end_for_frame): New function.
15733 (syms_of_ftxfont): Set ftxfont_driver.end_for_frame.
15734
15735 * ftfont.c (ftfont_get_bitmap): Set bitmap->bits_per_pixel.
15736
157372008-02-01 Kenichi Handa <handa@m17n.org>
15738
15739 * xselect.c (Vselection_coding_system)
15740 (Vnext_selection_coding_system): Delete them.
15741 (syms_of_xselect): Don't declare selection-coding-system and
15742 next-selection-coding-system. They are declared in select.el.
15743
157442008-02-01 Jason Rumney <jasonr@gnu.org>
15745
15746 * w32term.h (WM_UNICHAR, UNICODE_NOCHAR): Define if not already.
15747
15748 * w32fns.c: Include imm.h.
15749 (get_composition_string_fn, get_ime_context_fn): New optional
15750 system functions.
15751 (globals_of_w32fns): Load them from imm32.dll.
15752 (ignore_ime_char): New flag.
15753 (w32_wnd_proc): Handle WM_UNICHAR, WM_IME_CHAR and
15754 WM_IME_ENDCOMPOSITION messages.
15755
15756 * w32term.c (w32_read_socket) [WM_UNICHAR]: Handle as
15757 MULTIBYTE_CHAR_KEYSTROKE_EVENT.
15758
157592008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15760
15761 * lread.c (READCHAR): Call readchar with the 2nd arg NULL.
15762 (READCHAR_REPORT_MULTIBYTE): New macro.
15763 (readchar): New 2nd arg MULTIBYTE.
15764 (read1): Use READCHAR_REPORT_MULTIBYTE for the first read.
15765 Make symbol's name multibyte according to the multibyteness of the
15766 source.
15767
157682008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15769
15770 * xfaces.c (face_for_overlay_string): Call lookup_face with
15771 correct arguments (fix of synching with the trunk).
15772
157732008-02-01 Kenichi Handa <handa@m17n.org>
15774
15775 * font.c (font_prop_validate_symbol, font_prop_validate_style)
15776 (font_prop_validate_non_neg, font_prop_validate_spacing):
15777 Delete argument prop_index.
15778 (font_property_table): Change arguments to validater. Change Callers.
15779 (font_lispy_object): Delete.
15780 (font_at): Use font_find_object instead fo font_lispy_object.
15781
157822008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15783
15784 * fileio.c (Fexpand_file_name): Adjust multibyteness of directory
15785 and file names.
15786
157872008-02-01 Jason Rumney <jasonr@gnu.org>
15788
15789 * w32font.c (add_font_name_to_list): Avoid vertical fonts.
15790 (font_matches_spec): Remove debug output.
15791 (add_font_entity_to_list): Avoid using substituted fonts.
15792
157932008-02-01 Jason Rumney <jasonr@gnu.org>
15794
15795 * doc.c (Fsnarf_documentation):
15796 * Makefile.in (temacs${EXEEXT}, mostlyclean): Undo last change.
15797
157982008-02-01 Miles Bader <miles@gnu.org>
15799
15800 * dispextern.h (struct glyph_row): Only define "clip" field if
15801 HAVE_WINDOW_SYSTEM is defined.
15802
158032008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
15804
15805 Fix up multi-tty merge.
15806
15807 * xterm.c (handle_one_xevent): Remove duplicate code and fix up nesting
15808 and indentation.
15809
15810 * xfaces.c (free_realized_face, clear_face_gcs):
15811 Include font_done_for_face in the input_blocked section, just in case.
15812
15813 * xdisp.c (decode_mode_spec): Use terminal-local coding systems.
15814 (get_char_face_and_encoding): Undo last change and remove the *other*
15815 duplicate definition (i.e. keep the one that's better scoped and that
15816 includes code for the font-backend).
15817
15818 * terminal.c (create_terminal): Default keyboard_coding to
15819 `no-conversion' and terminal_coding to `undecided'.
15820
15821 * lread.c (read1): Use XSETPVECTYPE to set a pseudovector's tag.
15822
15823 * fontset.c (free_realized_fontsets): Check that the table entry does
15824 contain a fontset before trying to compare it to `base'.
15825
15826 * emacs.c (main): Move syms_of_data, syms_of_fileio, syms_of_alloc,
15827 syms_of_charset, and syms_of_coding earlier because init_window_once
15828 now needs Vcoding_system_hash_table to be setup.
15829
15830 * coding.h (default_buffer_file_coding): Remove.
15831
15832 * coding.c (default_buffer_file_coding): Remove.
15833 (Fterminal_coding_system, Fkeyboard_coding_system): Use ->id rather
15834 than ->symbol, and use the terminal-local coding system.
15835 (syms_of_coding): Don't setup the coding-systems that are not
15836 terminal-local.
15837 (Fdefine_coding_system_internal): Use XCAR/XCDR.
15838
15839 * chartab.c (Fmake_char_table, make_sub_char_table, copy_char_table):
15840 Use XSETPVECTYPE now that XSETCHAR_TABLE doesn't set the tag anymore.
15841
15842 * alloc.c (Fmake_char_table, make_sub_char_table): Remove. They're now
15843 in chartab.c and were re-added here by mistake.
15844 (Fpurecopy): Use XSETPVECTYPE after copying a COMPILED pseudovector.
15845
15846 * doc.c (Fsnarf_documentation):
15847 * Makefile.in (temacs${EXEEXT}, mostlyclean): Move buildobj.lst from
15848 src to etc.
15849
15850 * ChangeLog.10: Add mistakenly removed entry.
15851
158522008-02-01 Dan Nicolaescu <dann@ics.uci.edu>
15853
15854 * Makefile.in (fringe.o, minibuf.o): Fix dependencies.
15855
158562008-02-01 Miles Bader <miles@gnu.org>
15857
15858 * xdisp.c (get_char_face_and_encoding): Remove extraneous definition.
15859 Add extra args to FACE_FOR_CHAR.
15860
158612008-02-01 Kenichi Handa <handa@m17n.org>
15862
15863 * keymap.c (where_is_internal_1): If key is a cons, store the copy
15864 in sequence.
15865
15866 * chartab.c (map_sub_char_table, map_char_table): If the range
15867 contains just one character, call the function with that character
15868 even if the depth is not 3.
15869
158702008-02-01 Jason Rumney <jasonr@gnu.org>
15871
15872 * w32font.c (w32font_text_extents): Calculate metrics for the
15873 whole string.
15874
158752008-02-01 Jason Rumney <jasonr@gnu.org>
15876
15877 * w32xfns.c (get_next_msg): Consolidate WM_PAINT messages.
15878
158792008-02-01 Jason Rumney <jasonr@gnu.org>
15880
15881 * w32term.c (x_set_glyph_string_clipping): Use
15882 get_glyph_string_clip_rects.
15883 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
15884 Adjust for the change of struct glyph_string.
15885
15886 * w32font.c (w32font_draw): Do clipping here.
15887
158882008-02-01 Kenichi Handa <handa@m17n.org>
15889
15890 * xftfont.c (xftfont_draw): Adjust for the change of struct
15891 glyph_string.
15892
15893 * xterm.c (x_set_glyph_string_clipping): Use
15894 get_glyph_string_clip_rects.
15895 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
15896 Adjust for the change of struct glyph_string.
15897
15898 * xdisp.c (get_glyph_string_clip_rects): Reflect s->row->clip to
15899 the resulting clip(s}.
15900 (expose_overlaps): Add arg r. Change callers. Set it to
15901 row->clip temporarily.
15902 (expose_window): Redraw rows overlapping the exposed area.
15903
15904 * dispextern.h (struct glyph_row): New member clip.
15905 (struct glyph_string): Delete members clip_x, clip_y, clip_width,
15906 clip_height, new member clip, and num_clips.
15907
159082008-02-01 Kenichi Handa <handa@m17n.org>
15909
15910 * data.c (Fchar_or_string_p): Fix docstring.
15911
159122008-02-01 Kenichi Handa <handa@m17n.org>
15913
15914 * xftfont.c (xftfont_draw): If s->font_info != s->face->font_info,
15915 create a temporary XftDraw object.
15916
159172008-02-01 Kenichi Handa <handa@m17n.org>
15918
15919 * font.c (Ffontp): Fix docstring.
15920
15921 * coding.c (detect_coding_iso_2022): Don't treat SI/SO codes as a
15922 strong evidence of ISO-2022.
15923
159242008-02-01 Kenichi Handa <handa@m17n.org>
15925
15926 * abbrev.c (abbrev_check_chars): Use CHAR_TABLE_REF, not
15927 SYNTAX_ENTRY_FOLLOW_PARENT.
15928
159292008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
15930
15931 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and change
15932 its type.
15933 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
15934 Update to the new type of weak_hash_tables and next_weak.
15935
15936 * lisp.h (struct Lisp_Hash_Table): Change next_weak from Lisp_Object to
15937 a plain C pointer to Lisp_Hash_Table.
15938
15939 * lisp.h (XGCTYPE, GC_HASH_TABLE_P, GC_NILP, GC_NUMBERP, GC_NATNUMP)
15940 (GC_INTEGERP, GC_SYMBOLP, GC_MISCP, GC_VECTORLIKEP, GC_STRINGP)
15941 (GC_CONSP, GC_FLOATP, GC_VECTORP, GC_OVERLAYP, GC_MARKERP)
15942 (GC_INTFWDP, GC_BOOLFWDP, GC_OBJFWDP, GC_BUFFER_OBJFWDP)
15943 (GC_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP)
15944 (GC_KBOARD_OBJFWDP, GC_PSEUDOVECTORP, GC_WINDOW_CONFIGURATIONP)
15945 (GC_PROCESSP, GC_WINDOWP, GC_SUBRP, GC_COMPILEDP, GC_BUFFERP)
15946 (GC_SUB_CHAR_TABLE_P, GC_CHAR_TABLE_P, GC_BOOL_VECTOR_P, GC_FRAMEP)
15947 (GC_EQ): Remove since they've been identical to their non-GC_
15948 alter-egos ever since the markbit was eradicated.
15949
15950 * alloc.c:
15951 * buffer.c:
15952 * buffer.h:
15953 * data.c:
15954 * fileio.c:
15955 * filelock.c:
15956 * fns.c:
15957 * frame.h:
15958 * lisp.h:
15959 * macterm.c:
15960 * print.c:
15961 * process.c:
15962 * w32fns.c:
15963 * w32menu.c:
15964 * w32term.c:
15965 * xfns.c:
15966 * xmenu.c:
15967 * xterm.c: Replace uses of GC_* macros with the non-GC_ versions.
15968
159692008-02-01 Kenichi Handa <handa@m17n.org>
15970
15971 * chartab.c (map_sub_char_table): Make it work for the top-level
15972 char-table. Fix handling of parent char-table.
15973 (map_char_table): Adjust for the above change.
15974
159752008-02-01 Jason Rumney <jasonr@gnu.org>
15976
15977 * w32font.c (Qgdi): Rename from Qw32.
15978
159792008-02-01 Jason Rumney <jasonr@gnu.org>
15980
15981 * w32bdf.c (get_quoted_string): Make function static.
15982
159832008-02-01 Kenichi Handa <handa@m17n.org>
15984
15985 * xftfont.c (xftfont_open): If one of font's ASCII glyph has
15986 bigger ascent and descent than those of the font, use them as
15987 font's ascent and descent.
15988
159892008-02-01 Kenichi Handa <handa@m17n.org>
15990
15991 * Makefile.in (${lispsource}international/charprop.el): Move this
15992 target within "#ifdef HAVE_UNIDATA" and "#endif".
15993
159942008-02-01 Kenichi Handa <handa@m17n.org>
15995
15996 * Makefile.in (lisp): Add ${lispsource}language/tai-viet.el.
15997 (shortlisp): Add ../lisp/language/tai-viet.el.
15998
159992008-02-01 Ulrich Mueller <ulm@gentoo.org>
16000
16001 * Makefile.in (${lispsource}international/charprop.el): Depend on
16002 temacs${EXEEXT}.
16003
160042008-02-01 Jason Rumney <jasonr@gnu.org>
16005
16006 * w32font.c (w32font_close): Delete the GDI font object.
16007
16008 * w32menu.c: Include character.h.
16009
16010 * w32proc.c: Likewise.
16011
16012 * w32select.c: Likewise.
16013
16014 * makefile.w32-in (w32proc.o): Depend on character.h.
16015
160162008-02-01 Jason Rumney <jasonr@gnu.org>
16017
16018 * w32fns.c (syms_of_w32fns): Use DEFSYM macro.
16019
16020 * w32menu.c (syms_of_w32menu): Likewise.
16021
16022 * w32proc.c (syms_of_ntproc): Likewise.
16023
16024 * w32select.c (syms_of_w32select): Likewise.
16025
16026 * w32term.c (syms_of_w32term): Likewise.
16027
160282008-02-01 Jason Rumney <jasonr@gnu.org>
16029
16030 * w32font.c (w32font_draw): Delete brush after using it.
16031
160322008-02-01 Jason Rumney <jasonr@gnu.org>
16033
16034 * w32font.c (w32font_open): Don't set font_idx.
16035 (w32font_text_extents): Try GetTextExtentPoint32W before defaulting
16036 to font settings.
16037 (w32font_draw): Fill background explicitly.
16038
160392008-02-01 Jason Rumney <jasonr@gnu.org>
16040
16041 * w32term.c (w32_initialize): Don't call w32font_initialize.
16042
16043 * w32font.c (w32font_info): Remove subranges.
16044 (QCsubranges, Qmodern, Qswiss, Qroman): Remove.
16045 (QCfamily, Qmonospace, Qsans_serif, Qmono, Qsans, Qsans__serif)
16046 (Qraster, Qoutline, Qlatin, Qgreek, Qcoptic, Qcyrillic, Qarmenian)
16047 (Qhebrew, Qarabic, Qsyriac, Qnko, Qthaana, Qdevanagari, Qbengali)
16048 (Qgurmukhi, Qgujarati, Qoriya, Qtamil, Qtelugu, Qkannada)
16049 (Qmalayalam, Qsinhala, Qthai, Qlao, Qtibetan, Qmyanmar, Qgeorgian)
16050 (Qhangul, Qethiopic, Qcherokee, Qcanadian_aboriginal, Qogham)
16051 (Qrunic, Qkhmer, Qmongolian, Qsymbol, Qbraille, Qhan)
16052 (Qideographic_description, Qcjk_misc, Qkana, Qbopomofo, Qkanbun)
16053 (Qyi, Qbyzantine_musical_symbol, Qmusical_symbol, Qmathematical):
16054 New symbols.
16055 (font_callback_data): New struct.
16056 (w32font_list, w32font_match): Use it.
16057 (w32font_open): Don't populate subranges.
16058 (w32font_has_char): Use script Lisp symbols, not subrange bitmask.
16059 (w32font_encode_char): Always return unicode code-point as-is.
16060 (w32font_text_extents): Supply a transformation matrix to
16061 GetGlyphOutline. Never look up by glyph index. Avoid looping
16062 twice. Use unicode version of GetTexExtentPoint32 instead of
16063 glyph index version.
16064 (set_fonts_frame): Remove.
16065 (w32_enumfont_pattern_entity): Add frame parameter, use it to
16066 set frame parameter. Use backward compatible fake foundries.
16067 Save generic family in extra slot under QCfamily. Make width slot
16068 constant. Save QCspacing value. Save list of scripts instead of
16069 binary subranges.
16070 (w32_generic_family, logfonts_match, font_matches_spec): New functions.
16071 (add_font_entity_to_list): Use font_callback_data struct. Filter
16072 unwanted fonts.
16073 (add_one_font_entity_to_list): Use font_callback_data struct.
16074 (w32_registry): Default to iso10646_1.
16075 (fill_in_logfont): Use dpi from extra slot. Don't bother with
16076 string font registries. Don't fill in font name if it is a generic
16077 family name, fill family instead. Use spacing, family and script
16078 extra info to fill pitch, family and charset fields.
16079 (list_all_matching_fonts): Use font_callback_data struct.
16080 (unicode_range_for_char): Remove.
16081 (font_supported_scripts): New function.
16082 (w32font_initialize): Remove.
16083 (syms_of_w32font): Update which symbols are defined.
16084
160852008-02-01 Jason Rumney <jasonr@gnu.org>
16086
16087 * font.c (font_pixel_size): Reverse assq_no_quit args.
16088
16089 * w32term.h (FONT_WIDTH): Report max width, not average.
16090 (FONT_MAX_WIDTH): Remove.
16091 (FONT_AVG_WIDTH): New macro.
16092
16093 * xfaces.c (Fx_list_fonts) [WINDOWSNT]: Remove Windows only
16094 redefinition of FONT_WIDTH.
16095
16096 * w32term.c (x_font_min_bounds): Use FONT_AVG_WIDTH.
16097 (w32_cache_char_metrics): Use FONT_WIDTH.
16098
16099 * w32fns.c (w32_load_system_font, w32_list_fonts): Use FONT_AVG_WIDTH.
16100
161012008-02-01 Jason Rumney <jasonr@gnu.org>
16102
16103 * w32font.c (w32font_open): Make lfHeight negative.
16104
16105 * w32fns.c (x_default_font_parameter): Use new style font name.
16106 (Fx_create_frame, x_create_tip_frame): Initialize resx and resy.
16107
161082008-02-01 Jason Rumney <jasonr@gnu.org>
16109
16110 * w32font.c (QCsubranges): New symbol.
16111 (w32font_open, w32font_has_char): Get subranges from subproperty
16112 of extra.
16113 (w32_enumfont_pattern_entity): Set subranges as subproperty of extra.
16114 (syms_of_w32font): Define :subranges symbol.
16115
16116 * font.c (font_put_extra): Expose externally.
16117
16118 * font.h (font_put_extra): Move declaration from font.c.
16119
16120 * font.c (Ffont_get): Use font driver to determine otf capability.
16121 (adjust_anchor): Check if driver defines anchor_point before using.
16122
16123 * w32font.c (w32font_open): Handle size, height and pixel_size better.
16124 (w32font_draw): Use options.
16125 (w32_enumfont_pattern_entity): Set size to 0 for scalable fonts.
16126 Fix detection of truetype fonts.
16127 (registry_to_w32_charset): Handle charsets other than iso8859-1
16128 expressed as lisp symbols.
16129 (w32_registry): Express charset as lisp symbol.
16130 (fill_in_logfont): Reverse pixel and point height logic.
16131 Don't set width here. Set quality to default.
16132
16133 * w32fns.c (w32_load_system_font): Fix detecting FIXED_PITCH fonts.
16134 (x_to_w32_font): Fill in lfPitchAndFamily correctly.
16135
16136 * xterm.c (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
16137 Remove redundant loop and allocation.
16138
16139 * makefile.w32-in (font.o, w32font.o): New objects.
16140 (fontset.o, xdisp.o, xfaces.o, w32fns.o, w32term.o): Depend on font.h.
16141 (FONTOBJ): New group of objects conditioned on USE_FONT_BACKEND.
16142
16143 * xdisp.c (fill_composite_glyph_string): Make the first arg to
16144 STORE_XCHARB a valid l-value.
16145
16146 * w32term.c (w32_native_per_char_metric): Swap width and rbearing
16147 calculations for non-Truetype fonts.
16148 (x_draw_glyph_string): Sync with xterm.c.
16149 (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
16150 Remove redundant code.
16151 (w32_initialize) [USE_FONT_BACKEND]: Call w32font_initialize.
16152
16153 * w32term.h (w32_output_data) [USE_FONT_BACKEND]: Add fontp member.
16154 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro from xterm.h.
16155
16156 * w32fns.c [USE_FONT_BACKEND]: Port font backend changes from xfns.c.
16157 (x_to_w32_charset, w32_to_x_charset): Expose externally.
16158
16159 * w32font.c: New file for w32 font backend.
16160
161612008-02-01 Kenichi Handa <handa@m17n.org>
16162
16163 * term.c: Don't include "buffer.h" twice.
16164
161652008-02-01 Kenichi Handa <handa@m17n.org>
16166
16167 * character.c (Funibyte_string): New function.
16168 (syms_of_character): Defsubr it.
16169
161702008-02-01 Jason Rumney <jasonr@gnu.org>
16171
16172 * w32term.c [USE_FONT_BACKEND]:
16173 (x_get_font_repertory, note_mouse_movement, x_set_mouse_face_gc)
16174 (x_set_glyph_string_clipping, x_set_glyph_string_clipping_exactly)
16175 (x_draw_glyph_string, x_draw_glyph_string_foreground)
16176 (x_draw_composite_glyph_string_foreground, x_new_fontset2)
16177 (x_free_frame_resources): Sync with xterm.c.
16178
161792008-02-01 Andreas Schwab <schwab@suse.de>
16180
16181 * lread.c (read1): Use CHAR_TABLE_STANDARD_SLOTS to validate
16182 char-table size.
16183
161842008-02-01 Kenichi Handa <handa@m17n.org>
16185
16186 * font.c (check_otf_features): Define it regardless of HAVE_LIBOTF.
16187
161882008-02-01 Kenichi Handa <handa@m17n.org>
16189
16190 * ftfont.c (ftfont_driver): Delete font_otf_gsub and
16191 font_otf_gpos, add font_drive_otf.
16192
16193 * fontset.c (fontset_find_font): Pay attention to font size
16194 specified for a font.
16195 (reorder_font_vector): Check contents of font_def.
16196
16197 * font.c (struct otf_list): Delete it.
16198 (otf_list): Make it a lisp variable.
16199 (otf_open): Use lispy otf_list.
16200 (generate_otf_features): Rename from parse_gsub_gpos_spec.
16201 (check_otf_features): New function.
16202 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
16203 New functions.
16204 (font_drive_otf): New function merging font_otf_gsub and
16205 font_otf_gpos.
16206 (font_open_for_lface): New arg spec. Change argument order.
16207 (font_load_for_face): Adjust for the change of font_open_for_lface.
16208 (Ffont_drive_otf): New function merging Ffont_otf_gsub and
16209 Ffont_otf_gpos.
16210 (syms_of_font): Staticpro otf_list. Delete defsubr of
16211 Sfont_otf_gsub and Sfont_otf_gpos. Defsubr Sfont_drive_otf.
16212
16213 * xfaces.c (set_font_frame_param): Adjust for the change of
16214 font_open_for_lface.
16215
16216 * font.h (font_open_for_lface): Adjust prototype.
16217 (struct font_driver): Delete members otf_gsub and otf_gpos, add
16218 member otf_drive.
16219 (font_otf_gsub, font_otf_gpos): Delete externs.
16220 (font_drive_otf): Extern it.
16221
162222008-02-01 Kenichi Handa <handa@m17n.org>
16223
16224 * font.c (font_at): If the window W is not on a window system,
16225 return Qnil.
16226
16227 * coding.c (produce_chars, encode_coding): Don't call
16228 insert_from_gap if no characters to produce.
16229
162302008-02-01 Kenichi Handa <handa@m17n.org>
16231
16232 * fontset.c (free_realized_fontsets): Avoid unnecessary call of
16233 Fclear_face_cache.
16234
16235 * xfaces.c (face_for_font): Check also face->font==font->font.font.
16236
162372008-02-01 Miles Bader <miles@gnu.org>
16238
16239 * emacs.c (main): Change default value of `enable_font_backend' to 1.
16240 Parse "--disable-font-backend" option.
16241 (standard_args): Add "--disable-font-backend" option.
16242
162432008-02-01 Kenichi Handa <handa@m17n.org>
16244
16245 * fontset.c (fontset_find_font): New function.
16246 (fontset_font): Use fontset_find_font.
16247 (make_fontset_for_ascii_face): Don't set face ID in rfont_def.
16248 Register the specified font for all Latin characters.
16249 (new_fontset_from_font): Register the specified font for all Latin
16250 characters.
16251 (dump_fontset): For a realized fontset, include the base fontset
16252 name in the returned vector.
16253
162542008-02-01 Kenichi Handa <handa@m17n.org>
16255
16256 * character.h (CHAR_STRING): Cast C to unsigned on calling
16257 char_string.
16258
16259 * character.c (char_string): Type of arg C changed to unsigned.
16260 Signal an error if C is an invalid character code.
16261
16262 * editfns.c (general_insert_function, Fchar_to_string):
16263 Use CHARACTERP, not INTEGERP.
16264
162652008-02-01 Kenichi Handa <handa@m17n.org>
16266
16267 * character.h (MIN_MULTIBYTE_LEADING_CODE)
16268 (MAX_MULTIBYTE_LEADING_CODE): New macros.
16269
16270 * regex.c (analyse_first): Fix for multibyte characters in "case
16271 charset:" and "case categoryspec:".
16272
162732008-02-01 Andreas Schwab <schwab@suse.de>
16274
16275 * Makefile.in (LIBES): Move standard libraries to the end.
16276
162772008-02-01 Kenichi Handa <handa@m17n.org>
16278
16279 * alloc.c (Fgarbage_collect): If nextb->text->inhibit_shrinking is
16280 nonzero, don't shrink the buffer nextb.
16281
16282 * buffer.h (struct buffer_text): New member inhibit_shrinking.
16283
16284 * coding.c (coding_alloc_by_making_gap): New arg offset.
16285 (alloc_destination): Call coding_alloc_by_making_gap with the arg
16286 offset.
16287 (decode_coding_iso_2022): Update coding->safe_charsets.
16288 (decode_coding_gap): Temporarily set
16289 current_buffer->text->inhibit_shrinking to 1.
16290
162912008-02-01 Kenichi Handa <handa@m17n.org>
16292
16293 * xterm.c (x_draw_composite_glyph_string_foreground): Fix
16294 indexing into elements of s->cmp and s->char2b.
16295
162962008-02-01 Juanma Barranquero <lekktu@gmail.com>
16297
16298 * regex.c (RE_STRING_CHAR_AND_LENGTH) [! emacs]: Add missing arg `len'.
16299
163002008-02-01 Kenichi Handa <handa@m17n.org>
16301
16302 * regex.c (GET_CHAR_BEFORE_2, GET_CHAR_AFTER): Check the variable
16303 target_multibyte instead of multibyte.
16304 (re_match_2_internal): Call bcmp_translate with target_multibyte.
16305 (bcmp_translate): Change the argument name from multibyte to
16306 target_multibyte.
16307
163082008-02-01 Kenichi Handa <handa@m17n.org>
16309
16310 These changes are to compile a regexp into a pattern that can be
16311 used both for multibyte and unibyte targets.
16312
16313 * Makefile.in (search.o): Depend on charset.h.
16314
16315 * character.c (multibyte_char_to_unibyte_safe): New function.
16316
16317 * search.c: Include "charset.h".
16318 (compile_pattern_1): Delete argument multibyte. Don't set
16319 cp->buf.target_multibyte here. Set cp->buf.charset_unibyte.
16320 (compile_pattern): Don't compare cp->buf.target_multibyte.
16321 Compare cp->buf.charset_unibyte.
16322 (compile_pattern): Set cp->buf.target_multibyte.
16323
16324 * lisp.h (multibyte_char_to_unibyte_safe): Extern it.
16325
16326 * regex.h (struct re_pattern_buffer): New member charset_unibyte.
16327
16328 * regex.c (RE_STRING_CHAR, RE_STRING_CHAR_AND_LENGTH): New arg
16329 multibyte. Change callers.
16330 (RE_CHAR_TO_MULTIBYTE, RE_CHAR_TO_UNIBYTE): New macros.
16331 (MAKE_CHAR_MULTIBYTE, MAKE_CHAR_UNIBYTE): Delete. Change callers
16332 to use RE_CHAR_TO_MULTIBYTE and RE_CHAR_TO_UNIBYTE, respectively.
16333 (SETUP_ASCII_RANGE, SETUP_UNIBYTE_RANGE): New macros.
16334 (SETUP_MULTIBYTE_RANGE): Generate a more compact range_table.
16335 (regex_compile): Make the compiled pattern usable both for
16336 multibyte and unibyte targets.
16337 (analyse_first): Make the fastmap usable both for multibyte and
16338 unibyte targets.
16339 (TRANSLATE_VIA_MULTIBYTE): Delete.
16340 (re_match_2_internal): Pay attention to the case that the
16341 multibyteness of bufp and target may be different.
16342
163432008-02-01 Kenichi Handa <handa@m17n.org>
16344
16345 * xdisp.c (x_produce_glyphs): When a font is not found, make the
16346 empty box occupy at least one column width.
16347
163482008-02-01 Miles Bader <miles@gnu.org>
16349
16350 * Makefile.in: Remove redundant HAVE_XFT clause.
16351
163522008-02-01 Kenichi Handa <handa@m17n.org>
16353
16354 * xrdb.c (x_load_resources): Setup the default fontSet X resource.
16355
163562008-02-01 Kenichi Handa <handa@m17n.org>
16357
16358 * fontset.c (Finternal_char_font): Fix for the case of POSITION
16359 being nil.
16360
163612008-02-01 Kenichi Handa <handa@m17n.org>
16362
16363 * xftfont.c (xftfont_open): Call FcConfigSubstitute.
16364
163652008-02-01 Kenichi Handa <handa@m17n.org>
16366
16367 * xftfont.c (xftfont_open): Don't enable antialias explicitly.
16368
163692008-02-01 Kenichi Handa <handa@m17n.org>
16370
16371 * search.c (simple_search): Fix previous change.
16372
163732008-02-01 Kenichi Handa <handa@m17n.org>
16374
16375 * xftfont.c (ftfont_font_format): Extern declaration.
16376
16377 * frame.c (x_set_font): Fix the second arg to fs_query_fontset.
16378
16379 * xfont.c (xfont_driver): Initialize ftfont_driver.type by 0.
16380 (xfont_list): Don't directly use Lisp_Object as an operand of &&.
16381
16382 * ftfont.c (ftfont_driver): Initialize ftfont_driver.type by 0.
16383 (ftfont_font_format): Fix previous change.
16384
16385 * font.h (Ffont_xlfd_name): EXFUN it.
16386
16387 * font.c (font_parse_xlfd): Fix the array size of `f'.
16388 (register_font_driver): Use EQ to compare driver->type.
16389
16390 * xfns.c (xic_create_xfontset2) [USE_FONT_BACKEND]: New function.
16391 (create_frame_xic) [USE_FONT_BACKEND]: Call xic_create_xfontset2.
16392 (xic_set_xfontset) [USE_FONT_BACKEND]: Likewise.
16393
163942008-02-01 Kenichi Handa <handa@m17n.org>
16395
16396 * ftfont.c (ftfont_pattern_entity, ftfont_list_generic_family)
16397 (ftfont_list, ftfont_font_format): Check if FC_FONTFORMAT is defined.
16398
163992008-02-01 Kenichi Handa <handa@m17n.org>
16400
16401 * xfont.c (xfont_open): Set font->format.
16402
16403 * xftfont.c (xftfont_open): Set font->format.
16404
16405 * ftfont.c (ftfont_pattern_entity): Add fontformat in a pattern.
16406 (ftfont_list): Include FC_FONTFORMAT in FcObject.
16407 (ftfont_open): Set font->format.
16408 (ftfont_font_format): New function.
16409
16410 * font.h (struct font): New member format.
16411
16412 * font.c (Qopentype): New variable.
16413 (syms_of_font): Defsym it.
16414 (Fquery_font): Change the format of the last element of the return
16415 value.
16416
164172008-02-01 Kenichi Handa <handa@m17n.org>
16418
16419 * xfns.c (xic_create_xfontset): Try the default fontset name as a
16420 last resort.
16421
164222008-02-01 Kenichi Handa <handa@m17n.org>
16423
16424 * coding.c (detect_coding_charset): Fix detection of multi-byte
16425 charset.
16426
164272008-02-01 Bob Halley <halley@play-bow.org> (tiny change)
16428
16429 * ccl.c (ccl_driver): If DST is NULL, set ccl->produced to 0.
16430
164312008-02-01 Kenichi Handa <handa@m17n.org>
16432
16433 * xdisp.c (get_next_display_element): Set it->face_id for the
16434 first component of a composition.
16435 (x_produce_glyphs): Check if the font is changed or not for composition.
16436
164372008-02-01 Kenichi Handa <handa@m17n.org>
16438
16439 * fontset.c (Qlatin): New variable.
16440 (syms_of_fontset): Define it as a lisp symbol.
16441 (Fset_fontset_font): If TARGET is `latin', use FONT_SPEC for ASCII.
16442
164432008-02-01 Kenichi Handa <handa@m17n.org>
16444
16445 * font.c (font_unparse_fcname): Pay attention to the case that
16446 some of font property is a null string.
16447
164482008-02-01 Kenichi Handa <handa@m17n.org>
16449
16450 * term.c: Include "composite.h".
16451 (encode_terminal_code): Output all components of composition.
16452 Check the size of encode_terminal_src.
16453 (produce_glyphs): For composition, call produce_composite_glyph.
16454 (append_composite_glyph, produce_composite_glyph): New functions.
16455
16456 * xdisp.c (x_produce_glyphs): In handling composition, if a font
16457 is not found, get font_info from the current ascii face.
16458
164592008-02-01 Kenichi Handa <handa@m17n.org>
16460
16461 * fileio.c (Finsert_file_contents): On replacing, temporarily bind
16462 buffer-file-name to Qnil before calling insert_from_buffer.
16463
16464 * font.c (font_unparse_fcname): Pay attention to the case that
16465 foundry is a null string.
16466
164672008-02-01 Kenichi Handa <handa@m17n.org>
16468
16469 * ftfont.c (ftfont_list): Allow registry "unicode-sip".
16470
16471 * font.c (Qunicode_sip): New variable.
16472 (syms_of_font): Declare it as a Lisp symbol.
16473
16474 * font.h (Qunicode_sip): Extern it.
16475
164762008-02-01 Kenichi Handa <handa@m17n.org>
16477
16478 * composite.c (get_composition_id): Pay attention to TAB component.
16479
16480 * xterm.c (x_draw_composite_glyph_string_foreground): Don't draw
16481 TAB. Adjust for the change of s->char2b which always points to
16482 the first element of allocated memory.
16483
16484 * xftfont.c (xftfont_text_extents): Fix calculation of descent value.
16485
16486 * xdisp.c (handle_composition_prop): Set it->c to the first
16487 non-TAB component.
16488 (fill_composite_glyph_string): Change argument.
16489 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the above change.
16490 (x_produce_glyphs): Fix handling of left/right padding.
16491
164922008-02-01 Kenichi Handa <handa@m17n.org>
16493
16494 * coding.c (detect_coding_system): Fix for handling off
16495 inhibit_iso_escape_detection. Fix for the case that no coding
16496 system is defined for a specific coding category.
16497
164982008-02-01 Kenichi Handa <handa@m17n.org>
16499
16500 * font.c (font_matching_entity): Delete unused local var.
16501
16502 * xftfont.c (xftfont_open): Call XftDefaultSubstitute before
16503 opening a font.
16504
16505 * fileio.c (Finsert_file_contents): On recovering a file, assume
16506 Unix-like eol.
16507 (choose_write_coding_system): On auto-saving a file, force
16508 Unix-like eol.
16509
16510 * coding.c (setup_coding_system): Fix setting of
16511 coding->common_flags based on eol_type.
16512 (coding_inherit_eol_type): If PARENT is not nil, be sure to
16513 inherit from it.
16514
165152008-02-01 Kenichi Handa <handa@m17n.org>
16516
16517 * alloc.c (NSTATICS): Increas to 0x600.
16518
165192008-02-01 Kenichi Handa <handa@m17n.org>
16520
16521 * ftfont.c (ftfont_driver): Set ftfont_driver.match to ftfont_match.
16522 (ftfont_list): Don't check :name property.
16523 (ftfont_match): New function.
16524 (ftfont_pattern_entity): If the pattern doesn't contain
16525 FC_SPACING, don't assume FC_MONO.
16526
16527 * font.h (struct font_driver): New member `match'.
16528 (font_update_drivers): Adjust prototype.
16529
16530 * font.c (font_parse_fcname, font_parse_name): Don't change :name
16531 property of FONT.
16532 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE, check_gstring): Define
16533 them unconditionally.
16534 (font_matching_entity): New function.
16535 (font_open_by_name): Try font_matching_entity if exact match is
16536 not found.
16537 (font_update_drivers): Delete the arg FONT. Return a list of
16538 actually used backends. Don't free faces, font caches here.
16539 Don't store data in frame parameters. Don't call x_set_font.
16540 (Ffont_spec): Store :name property as is.
16541 (Ffont_get): Check HAVE_LIBOTF before calling font_otf_capability.
16542 (Ffont_otf_gsub): Call font->driver->otf_gsub instead of font_otf_gsub.
16543 (Ffont_otf_gpos): Call font->driver->otf_gpos instead of font_otf_gpos.
16544 (Ffont_otf_alternates): Check if the driver has otf_gsub function.
16545 Call font->driver->otf_gsub instead of font_otf_gsub.
16546
16547 * frame.c (x_set_font_backend): Do more works that were done in
16548 font_update_drivers before.
16549
16550 * xfont.c (xfont_match): New function.
16551 (xfont_driver): Set xfont_driver.match to xfont_match.
16552 (xfont_draw): Set font in GC if necessary.
16553
16554 * ftxfont.c (ftxfont_match): New function.
16555 (syms_of_ftxfont): Set ftxfont_driver.match to ftxfont_match.
16556
16557 * xftfont.c (xftfont_match): New function.
16558 (syms_of_xftfont): Set xftfont_driver.match to xftfont_match.
16559
165602008-02-01 Kenichi Handa <handa@m17n.org>
16561
16562 * font.h (struct font): New member scalable.
16563 (struct font_driver): New arg ALTERANTE_SUBST to otf_gsub.
16564 (font_otf_gsub): Adjust prototype.
16565
16566 * font.c (font_otf_capability): Fix handling of the default langsys.
16567 (parse_gsub_gpos_spec): Change type to void. New arg nbytes.
16568 Check the contents of SPEC.
16569 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE): New macros.
16570 (check_gstring): New function.
16571 (REPLACEMENT_CHARACTER): New macro.
16572 (font_otf_gsub): New arg alternate_subst. Be sure to set all
16573 glyph codes of GSTRING.
16574 (font_otf_gpos): Be sure to set all glyph codes of GSTRING.
16575 (font_prepare_composition): Set cmp->glyph_len.
16576 (font_open_entity): Set font->scalable.
16577 (Ffont_get): Handle :otf property.
16578 (Ffont_otf_gsub, Ffont_otf_gpos, Ffont_otf_alternates): New
16579 functions.
16580 (Fquery_font): Use font->font.full_name.
16581 (syms_of_font): Defsubr Sfont_otf_gsub, Sfont_otf_gpos, and
16582 Sfont_otf_alternates.
16583
16584 * ftfont.c (ftfont_open): Set font->font.full_name and
16585 font->font.name properly. Fix calculation of font->font.height
16586 and font->min_width.
16587
16588 * ftxfont.c (ftxfont_create_gcs): New function.
16589 (ftxfont_draw_bitmap): Fix arg to ftfont_driver.get_bitmap.
16590 (ftxfont_draw_backgrond): Fix filling region.
16591 (ftxfont_default_fid): New function.
16592 (ftxfont_open): Set xfont->fid to the return value of
16593 ftxfont_default_fid.
16594 (ftxfont_prepare_face): Use ftxfont_create_gcs to create GCs.
16595 (ftxfont_done_face): Free only GCs that are created by
16596 ftxfont_create_gcs.
16597 (ftxfont_draw): If face->gc != s->gc, create proper GCs.
16598
16599 * xterm.c (x_set_glyph_string_clipping_exactly) [USE_FONT_BACKEND]:
16600 Clip to src->width, etc (not src->clip_XXX).
16601
16602 * xfns.c (x_create_tip_frame) [USE_FONT_BACKEND]: Handle
16603 FontBackend frame parameter.
16604
166052008-02-01 Kenichi Handa <handa@m17n.org>
16606
16607 * font.h (struct font_driver_list): New member `on'.
16608 (Fclear_font_cache): EXFUN it.
16609 (font_update_drivers): Extern it.
16610
16611 * font.c (font_unparse_fcname): Fix typo (swidth->width).
16612 (font_list_entities): Check driver_list->on.
16613 (register_font_driver): Initalize `on' member to 0.
16614 (font_update_drivers): New function.
16615 (Fclear_font_cache): Check driver_list->on.
16616
16617 * frame.h (Qfont_backend): Extern it.
16618 (x_set_font_backend): Extern it.
16619
16620 * frame.c (Qfont_backend): New variable.
16621 (frame_parms): New element for font-backend.
16622 (x_set_font_backend): New function.
16623
16624 * xfns.c (Fx_create_frame) [USE_FONT_BACKEND]: Handle
16625 FontBackend frame parameter.
16626 (x_frame_parm_handlers) [USE_FONT_BACKEND]: New element
16627 x_set_font_backend.
16628
16629 * xfont.c (xfont_list): Don't try listing by :name property if the
16630 name is not for XLFD.
16631
166322008-02-01 Kenichi Handa <handa@m17n.org>
16633
16634 * font.h (LGLYPH_FROM, LGLYPH_TO, LGLYPH_SET_FROM)
16635 (LGLYPH_SET_TO): New macros.
16636 (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WADJUST): Check if adjustment
16637 element of G is vector or not.
16638 (font_at): Extern it.
16639
16640 * font.c: Include window.h.
16641 (font_lispy_object): New function.
16642 (font_prepare_composition): Check LGLYPH_FORM (g) to detect the
16643 end of valid glyph.
16644 (font_close_object): Fix getting (struct font *).
16645 (font_at): New function.
16646 (Ffont_get): If FONT is a font-object, get entity from it.
16647 (Ffont_make_gstring): Initialize elements of glyphs with nil.
16648 (Ffont_fill_gstring): Use macro LGSTRING_XXX and LGLYPH_XXX. Fix
16649 range check.
16650 (Ffont_at): New function.
16651 (syms_of_font): Defsubr Sfont_at.
16652
16653 * xdisp.c (it_props): Move the entry for Qauto_composed to just
16654 before the entry for Qcomposition.
16655 (handle_auto_composed_prop): Call auto-composition-function with 4 args.
16656 (handle_composition_prop) [USE_FONT_BACKEND]: Set it->face_id from
16657 the font in gstring.
16658 (fill_composite_glyph_string) [USE_FONT_BACKEND]: Check
16659 LGLYPH_FORM (g) to detect the end of valid glyph.
16660 (x_produce_glyphs) [USE_FONT_BACKEND]: Don't update it->face_id if
16661 we are composing with gstring.
16662
16663 * xterm.c (x_draw_composite_glyph_string_foreground) [USE_FONT_BACKEND]:
16664 Check if adjustment is vector or not.
16665
16666 * Makefile.in (font.o): Make it depends on window.h.
16667
166682008-02-01 Kenichi Handa <handa@m17n.org>
16669
16670 * xterm.c (x_draw_composite_glyph_string_foreground): Check if
16671 adjustment is vector or not.
16672
166732008-02-01 Miles Bader <miles@gnu.org>
16674
16675 * character.h (CHECK_CHARACTER): Redefine in terms of CHECK_TYPE.
16676
166772008-02-01 Kenichi Handa <handa@m17n.org>
16678
16679 * font.h (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WIDTH, LGLYPH_WADJUST)
16680 (LGLYPH_SET_WIDTH): Adjusted for the change of LGLYPH format.
16681 (LGLYPH_ADJUSTMENT, LGLYPH_SET_ADJUSTMENT): New macros.
16682
16683 * font.c (font_merge_old_spec): Treat '*' in foundry as a wild card.
16684 (DEVICE_DELTA): Fix typo.
16685 (font_otf_gpos, font_prepare_compositio): Adjust for the change of
16686 LGLYPH format.
16687
16688 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
16689 the change of LGLYPH format.
16690
166912008-02-01 Kenichi Handa <handa@m17n.org>
16692
16693 * ftfont.c (ftfont_list): Fix typo.
16694 (ftfont_build_basic_charsets): Don't include letters with diacritics.
16695
166962008-02-01 Jan Djärv <jan.h.d@swipnet.se>
16697
16698 * xfaces.c (realize_non_ascii_face): Set face->extra to NULL.
16699
16700 * xftfont.c (xftfont_done_face): Call XftDrawDestroy only if
16701 xftface_info is non-NULL.
16702
167032008-02-01 Jan Djärv <jan.h.d@swipnet.se>
16704
16705 * ftfont.c (ftfont_list): Move misplaced #endif.
16706
167072008-02-01 Kenichi Handa <handa@m17n.org>
16708
16709 * ftfont.c (ftfont_list): Pay attention to the case that
16710 FC_CAPABILITY is not defined.
16711
167122008-02-01 Kenichi Handa <handa@m17n.org>
16713
16714 * xftfont.c (xftfont_open): Set charset related members to -1.
16715
16716 * ftfont.c (ftfont_list): Handle QCotf property. Fix handling of
16717 QCname.
16718 (ftfont_open): Set charset related members to -1.
16719
16720 * fontset.c (Votf_script_alist): New variable.
16721 (syms_of_fontset): Initialize it.
16722 (fontset_font): Delete unused variable.
16723
16724 * fontset.h (Votf_script_alist): Extern it.
16725
16726 * font.c (font_find_for_lface): Optimize code.
16727
16728 * font.h (font_close_object, font_merge_old_spec): Extern them.
16729
167302008-02-01 Kenichi Handa <handa@m17n.org>
16731
16732 * font.c (QCscalable, Qc, Qm, Qp, Qd): New variables.
16733 (syms_of_font): Initialize them.
16734 (font_pixel_size): Allow float value in dpi.
16735 (font_prop_validate_type): Delete.
16736 (font_prop_validate_symbol, font_prop_validate_style): Change argument.
16737 Change caller.
16738 (font_prop_validate_non_neg): Rename from font_prop_validate_size.
16739 (font_prop_validate_extra): Delete.
16740 (font_prop_validate_spacing): New function.
16741 (font_property_table): Add elements for all known properties.
16742 (get_font_prop_index): Rename from check_font_prop_name. New
16743 argument FROM. Change caller.
16744 (font_prop_validate): Validate all known properties.
16745 (font_put_extra): Delete argument force. Change caller.
16746 (font_expand_wildcards): Make it static. Fix the way of shrinking
16747 the possible range.
16748 (font_parse_xlfd): Delete argument merge. Fix handling of RESX,
16749 RESY, SPACING, and AVGWIDTH. Don't validate property values here.
16750 Change caller.
16751 (font_unparse_xlfd): Handle dpi, spacing, and scalable properties.
16752 (font_parse_fcname): Delete argument merge. Fix parsing of point
16753 size. Don't validate properties values here. Change caller.
16754 (font_unparse_fcname): Handle dpi, spacing, and scalable properties.
16755 (font_open_by_name): Delete unused variable.
16756 (Ffont_spec): Likewise. Validate property values.
16757 (Ffont_match_p): New function.
16758
16759 * font.h (QCscalable): Extern it.
16760 (font_parse_xlfd, font_parse_fcname): Adjust prototype.
16761
16762 * ftfont.c (ftfont_list): Handle properties dpi, spacing, and scalable.
16763
16764 * xfont.c (xfont_query_font): Adjust for the change of font_parse_xlfd.
16765 (xfont_list_pattern): New function.
16766 (xfont_list): Use xfont_list_pattern.
16767
167682008-02-01 Kenichi Handa <handa@m17n.org>
16769
16770 * font.h (Flist_fonts): EXFUN it.
16771
167722008-02-01 Jason Rumney <jasonr@gnu.org>
16773
16774 * w32term.c (w32_initialize): Add back smoothing_type and
16775 smoothing_enabled definitions.
16776
167772008-02-01 Kenichi Handa <handa@m17n.org>
16778
16779 * xterm.c (x_draw_glyph_string) [USE_FONT_BACKEND]: Check
16780 s->face->font on determining underline position.
16781
167822008-02-01 Kenichi Handa <handa@m17n.org>
16783
16784 * font.c (font_parse_xlfd): Fix generating of CHARSET_REGISTRY field.
16785 (font_has_char): Accept font-object too.
16786 (font_find_for_lface): Try at first with a size specified in face.
16787
167882008-02-01 Kenichi Handa <handa@m17n.org>
16789
16790 * frame.c (x_set_font) [USE_FONT_BACKEND]: Fix argument to
16791 font_open_by_name.
16792
167932008-02-01 Kenichi Handa <handa@m17n.org>
16794
16795 * font.h (QCspacing, QCdpi): Extern them.
16796 (enum font_spacing): New enum.
16797 (FONT_PIXEL_SIZE_QUANTUM): New macro.
16798
16799 * font.c (POINT_TO_PIXEL): Don't divide POINT by 10.
16800 (QCspacing, QCdpi): New variables.
16801 (syms_of_font): Initialize them.
16802 (font_pixel_size): New function.
16803 (font_put_extra): New function.
16804 (font_parse_xlfd): Fix handling of font size. Add QCdpi property
16805 in FONT_EXTRA.
16806 (font_parse_fcname): Handle enumerated values (e.g. bold).
16807 Fix handling font size. Add QCname property that contains only
16808 unknown properties.
16809 (font_score): Change argument. Change caller. Pay attention to
16810 FONT_PIXEL_SIZE_QUANTUM.
16811 (font_sort_entites, font_list_entities, font_find_for_lface)
16812 (font_open_for_lface, font_open_by_name): Fix handling of font size.
16813 (Ffont_spec): Add QCname property that contains only unknown properties.
16814
16815 * ftfont.c (ftfont_list): Use assq_no_quit, not Fassq. Don't
16816 include weight in listing pattern, instead check weight of each
16817 listed font. Don't include scalable in pattern. Pay attention to
16818 FONT_PIXEL_SIZE_QUANTUM.
16819
168202008-02-01 Kenichi Handa <handa@m17n.org>
16821
16822 * font.c (font_parse_fcname): Fix parsing of point-size.
16823 (font_unparse_fcname): Produce symbolic names for style properties.
16824 (font_list_entities): Handle float size correctly.
16825 (font_open_by_name): Prefer `normal' property values if the name
16826 doesn't specify them.
16827
16828 * fontset.c (Finternal_char_font): Use font_get_name, not
16829 Ffont_xlfd_name.
16830
16831 * ftfont.c (ftfont_pattern_entity): Use the numeric value 100 for
16832 FC_WEIGHT_REGULAR. Exclude FC_SIZE and FC_PIXEL_SIZE from listing
16833 pattern. Don't force scalable.
16834
16835 * xftfont.c (xftfont_open): For generating a name, start from
16836 96-byte buffer.
16837
168382008-02-01 Jan Djärv <jan.h.d@swipnet.se>
16839
16840 * frame.h (x_new_fontset2): Fix prototype.
16841
168422008-02-01 Kenichi Handa <handa@m17n.org>
16843
16844 * font.h (struct font_driver): Delete member parse_name.
16845 (font_match_p, font_get_spec, font_parse_fcname)
16846 (font_unparse_fcname): Extern them.
16847 (font_get_name): Adjust prototype.
16848
16849 * font.c (XLFD_SMALLNUM_MASK): Delete this macro.
16850 (XLFD_LARGENUM_MASK): Delete XLFD_ENCODING_MASK from it.
16851 (font_expand_wildcards): Fix handling ENCODING field. Avoid
16852 unnecessary checks for weight, slant, and swidth.
16853 (font_parse_fcname): New function.
16854 (font_unparse_fcname): New function.
16855 (font_parse_name): New function.
16856 (font_match_p): New function.
16857 (font_get_name): Change return value to Lisp string.
16858 (font_get_spec): New function.
16859 (Qunspecified, Qignore_defface): Don't extern them.
16860 (font_find_for_lface): Assume that LFACE is fully specified.
16861 (font_load_for_face): If lface[LFACE_FONT_INDEX] is an font
16862 object, use it for FACE.
16863 (font_open_by_name): Call Ffont_spec with QCname prop. Don't call
16864 driver->parse_name.
16865 (Ffont_spec): Call font_parse_name, not font_parse_xlfd.
16866
16867 * fontset.h (new_fontset_from_font) [USE_FONT_BACKEND]: Adjust
16868 prototype.
16869
16870 * fontset.c (new_fontset_from_font) [USE_FONT_BACKEND]: Delete
16871 argument F. Don't call Fnew_fontset. Instead, directly call
16872 make_fontset.
16873
16874 * frame.h (x_new_fontset2) [USE_FONT_BACKEND]: Adjust prototype.
16875
16876 * frame.c (x_set_font) [USE_FONT_BACKEND]: Adjust for the change
16877 of x_new_fontset2.
16878
16879 * ftfont.c (Qmonospace, Qsans_serif, Qserif, Qmono, Qsans)
16880 (Qsans__serif): New variables.
16881 (ftfont_generic_family_list): New variable.
16882 (syms_of_ftfont): Initialize the above variables.
16883 (ftfont_pattern_entity): Delete argument NAME.
16884 (ftfont_list_generic_family): New function.
16885 (ftfont_parse_name): Delete this function.
16886 (ftfont_list): Try generic family only when FcFontList found no font.
16887 (ftfont_list_family): Fix args to FcObjectSetBuild.
16888
16889 * xfaces.c (check_lface_attrs) [USE_FONT_BACKEND]: Accept font
16890 object in attrs[LFACE_FONT_INDEX].
16891 (set_lface_from_font_name): Cancel all changes for font-backend.
16892 (set_lface_from_font_and_fontset) [USE_FONT_BACKEND]: New
16893 function.
16894 (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]: Accept a
16895 font object in QCfont attribute.
16896 (set_font_frame_param) [USE_FONT_BACKEND]: Likewise.
16897 (realize_default_face) [USE_FONT_BACKEND]: Call
16898 set_lface_from_font_and_fontset.
16899
16900 * xfns.c (x_default_font_parameter) [USE_FONT_BACKEND]: Try also
16901 "fixed", and signal error here if no suitable font was found.
16902
16903 * xfont.c (xfont_parse_name): Delete this function.
16904
16905 * xftfont.c (xftfont_open): Change coding style of error
16906 handling. Generate fontconfig's fontname pattern.
16907
16908 * xterm.h (struct x_output) [USE_FONT_BACKEND]: New member fontp.
16909 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro.
16910
16911 * xterm.c (x_new_fontset2) [USE_FONT_BACKEND]: Change arguments.
16912 Both args FONTSET and FONT_OBJECT must be existing ones.
16913
169142008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16915
16916 * macterm.c (mac_set_unicode_keystroke_event): Don't use MAKE_CHAR.
16917
169182008-02-01 Kenichi Handa <handa@m17n.org>
16919
16920 * xfont.c (xfont_open, xfont_encode_char): Fix typo.
16921
16922 * font.h (struct font): Fix typo.
16923
16924 * font.c (enum xlfd_field_index): Rename XLFD_XXX_SIZE_INDEX to
16925 XLFD_XXX_INDEX.
16926 (enum xlfd_field_mask): New enum.
16927 (intern_font_field): Changed argument. Change caller. If digits
16928 are followed by non-digits, return a symbol.
16929 (font_expand_wildcards): New function.
16930 (font_parse_xlfd): Fix wildcard handling.
16931 (Ffont_spec): If :name is specified, reflect the info in the other
16932 properties.
16933
16934 * ftfont.c (ftfont_pattern_entity): Fix typo.
16935 (ftfont_list): Enforce FC_LANG in PATTERN to cancel the effect of
16936 locale.
16937
169382008-02-01 Kenichi Handa <handa@m17n.org>
16939
16940 * font.h (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Extern them.
16941
16942 * font.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move from ftfont.c.
16943 (font_unparse_xlfd): Fix argument type declaration. Append "*" if
16944 registry doesn't specify encoding part.
16945 (font_find_for_lface): Pay attention to LFACE_FONT_INDEX.
16946 (font_open_by_name): At first try parsing the name.
16947 (syms_of_font): Declare Qiso8859_1, Qiso10646_1, and Qunicode_bmp
16948 as Lisp symbols.
16949
16950 * fontset.c (reorder_font_vector): Pay attention to the case that
16951 the 3rd element of font_def is nil.
16952 (fontset_font): For the default fontset, append one more fontset
16953 elements for a script-based font specification. Don't add script
16954 attribute on finding a font.
16955 (new_fontset_from_font): Unconditionally set FONTSET_ASCII to the
16956 font name.
16957 (fontset_ascii_font): If a font can't be opened, return nil.
16958
16959 * ftfont.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move to font.c.
16960 (ftfont_pattern_entity): New function.
16961 (ftfont_get_cache): Assume that freetype_font_cache is already
16962 initialized.
16963 (ftfont_list): Handle the case that a file is specified in font
16964 name. Use ftfont_pattern_entity to generate entities.
16965 (ftfont_has_char): Check if the pattern contains FC_CHARSET.
16966 (syms_of_ftfont): Initialize freetype_font_cache.
16967
16968 * xftfont.c (xftfont_open): Make the font name fontconfig's
16969 style. Add BLOCK_INPUT and UNBLOCK_INPUT.
16970 (xftfont_close): Free font->font.name if not NULL.
16971
16972 * xfont.c (xfont_list): If script is specified for a font, return
16973 null_vector.
16974 (xfont_list_family): Declare argument type.
16975
16976 * xfaces.c (set_lface_from_font_name): If a font doesn't have a
16977 name, set LFACE_FONT (lface) to nil.
16978
16979 * xterm.c (x_new_fontset2): If an ASCII font couldn't be loaded,
16980 return Qnil.
16981
169822008-02-01 Kenichi Handa <handa@m17n.org>
16983
16984 * emacs.c (main): Check -enable-font-backend arg after the check of -nl.
16985 (standard_args): Add "-enable-font-backend".
16986
169872008-02-01 Kenichi Handa <handa@m17n.org>
16988
16989 * xftfont.c (xftfont_default_fid): Set fid_known to 1.
16990 (struct xftdraw_list, xftdraw_list): Delete them.
16991 (register_xftdraw, check_xftdraw): Delete them.
16992 (xftfont_prepare_face): Don't call register_xftdraw.
16993 (xftfont_done_face): Don't call check_xftdraw.
16994 (xftfont_draw): Get background color only when with_background is
16995 nonzero.
16996
16997 * xfont.c (xfont_encode_char): Fix calculation of char2b.
16998
169992008-02-01 Kenichi Handa <handa@m17n.org>
17000
17001 These changes are for the new font handling codes.
17002
17003 * Makefile.in (ALL_CFLAGS): Add @FREETYPE_CFLAGS@,
17004 @FONTCONFIG_CFLAGS@, and @LIBOTF_CFLAGS@.
17005 (LIB_X11_LIB): If HAVE_XFT is defined, set to @XFT_LIBS@.
17006 (FONTSRC, FONTOBJ): New variables.
17007 (obj): Add $(FONTOBJ).
17008 (SOME_MACHINE_OBJECTS): Lib_X11_Lib.
17009 (LIBES): Add @FREETYPE_LIBS@, @FONTCONFIG_LIBS@, and
17010 @LIBOTF_LIBS@.
17011 (font.o, ftfont.o, xfont.o, xftfont.o, ftxfont.o): New targets.
17012 (fontset.o, xdisp.o, xfaces.o, xfns.o, xterm.o): Depend on $(FONTSRC).
17013
17014 * font.h, font.c, xfont.c, ftfont.c, xftfont.c, ftxfont.c: New files.
17015
17016 * character.h (Vscript_representative_chars): Extern it.
17017
17018 * character.c (Vscript_representative_chars): New variable.
17019 (syms_of_character): Declare it as a Lisp variable.
17020
17021 * composite.c (get_composition_id) [USE_FONT_BACKEND]: If
17022 enable_font_backend is nonzero, accept the composition method
17023 COMPOSITION_WITH_GLYPH_STRING.
17024
17025 * composite.h (enum composition_method) [USE_FONT_BACKEND]: New
17026 enumeration COMPOSITION_WITH_GLYPH_STRING.
17027
17028 * dispextern.h (struct glyph_string) [USE_FONT_BACKEND]: New
17029 members clip_x, clip_y, clip_width, and clip_height.
17030 (struct face) [USE_FONT_BACKEND]: New members font_info and extra.
17031
17032 * emacs.c (main) [USE_FONT_BACKEND]: Handle arg
17033 --enable-font-backend. Call syms_of_font.
17034
17035 * fns.c (assoc_no_quit): New function.
17036
17037 * fontset.h (FONT_INFO_FROM_FACE): New macro.
17038 (face_for_font, new_fontset_from_font)
17039 (fontset_ascii_font) [USE_FONT_BACKEND]: Extern them.
17040
17041 * fontset.c [USE_FONT_BACKEND]: Include "font.h".
17042 (fontset_font, fontset_ascii, face_for_char)
17043 (make_fontset_for_ascii_face, Ffont_info)
17044 (Finternal_char_font) [USE_FONT_BACKEND]: If enable_font_backend
17045 is nonzero, use font-backend mechanism.
17046 (find_font_encoding): Make it non-static.
17047 (new_fontset_from_font, fontset_ascii_font) [USE_FONT_BACKEND]:
17048 New functions.
17049
17050 * frame.h (struct frame): New members resx and resy.
17051 (struct frame) [USE_FONT_BACKEND]: New member font_driver_list.
17052 (x_new_fontset2) [USE_FONT_BACKEND]: Extern it.
17053
17054 * frame.c [USE_FONT_BACKEND]: Include "font.h".
17055 (make_frame, x_set_font) [USE_FONT_BACKEND]: Use font-backend mechanism.
17056
17057 * lisp.h (assoc_no_quit): Extern it.
17058
17059 * xdisp.c: If USE_FONT_BACKEND is defined, include "font.h".
17060 Through out the file, use FONT_INFO_FROM_FACE instead of
17061 FONT_INFO_FROM_ID, use get_per_char_metric instead of
17062 rif->per_char_metric.
17063 (handle_composition_prop) [USE_FONT_BACKEND]: If the composition
17064 method is COMPOSITION_WITH_GLYPH_STRING, just set it->c to ' '.
17065 (get_glyph_face_and_encoding, fill_composite_glyph_string)
17066 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
17067 (x_produce_glyphs) [USE_FONT_BACKEND]: If enable_font_backend is
17068 nonzero, use font-backend mechanism.
17069 (get_per_char_metric): New function.
17070
17071 * xfaces.c [USE_FONT_BACKEND]: Include "font.h".
17072 (set_lface_from_font_name)
17073 (set_font_frame_param, free_realized_face)
17074 (prepare_face_for_display, clear_face_gcs)
17075 (Finternal_set_font_selection_order, realize_x_face)
17076 [USE_FONT_BACKEND]: If enable_font_backend is nonzero, use
17077 font-backend mechanism.
17078 (clear_face_cache) [USE_FONT_BACKEND]: Don't call clear_font_table.
17079 (load_face_font) [USE_FONT_BACKEND]: Abort.
17080 (face_symbolic_value, face_symbolic_weight, face_symbolic_slant)
17081 (face_symbolic_swidth, face_for_font) [USE_FONT_BACKEND]: New functions.
17082
17083 * xfns.c [USE_FONT_BACKEND]: Include "font.h".
17084 (x_default_font_parameter) [USE_FONT_BACKEND]: New function.
17085 (Fx_create_frame) [USE_FONT_BACKEND]: If enable_font_backend is
17086 nonzero, register all available font drivers. Call
17087 x_default_font_parameter for deciding a font.
17088 (x_create_tip_frame) [USE_FONT_BACKEND]: Likewise.
17089
17090 * xterm.c [USE_FONT_BACKEND]: Include "font.h".
17091 (x_set_mouse_face_gc, x_set_glyph_string_clipping)
17092 (x_set_glyph_string_clipping_exactly)
17093 (x_compute_glyph_string_overhangs)
17094 (x_draw_glyph_string_foreground)
17095 (x_draw_composite_glyph_string_foreground, x_draw_glyph_string)
17096 (x_free_frame_resources) [USE_FONT_BACKEND]: If
17097 enable_font_backend is nonzero, use font-backend mechanism.
17098 (x_new_fontset2) [USE_FONT_BACKEND]: New function.
17099
171002008-02-01 Kenichi Handa <handa@m17n.org>
17101
17102 * coding.c (coding_inherit_eol_type): If PARENT is nil, inherit from
17103 system_eol_type.
17104 (syms_of_coding): Initialize system_eol_type.
17105
17106 * process.c (Fset_process_coding_system): Inherit system's eol
17107 format if necessary.
17108
171092008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17110
17111 * macgui.h (USE_ATSUI): Don't enable on emacs-unicode-2 branch.
17112
171132008-02-01 Kenichi Handa <handa@m17n.org>
17114
17115 * coding.c (decode_eol): Pay attention to buffer relocation in
17116 del_range_2.
17117 (decode_coding): Call decode_eol before restoring undo_list.
17118
171192008-02-01 Kenichi Handa <handa@m17n.org>
17120
17121 * charset.c (Fdefine_charset_internal): Fix setting of
17122 emacs_mule_bytes.
17123
171242008-02-01 Kenichi Handa <handa@m17n.org>
17125
17126 * keyboard.c (read_char): Check if C is a character or not before
17127 looking up Vkeyboard_translate_table.
17128
171292008-02-01 Kenichi Handa <handa@m17n.org>
17130
17131 * coding.c (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Fix
17132 condition to terminate the loop.
17133
171342008-02-01 Kenichi Handa <handa@m17n.org>
17135
17136 * coding.c (produce_composition): Compare charbuf[i] instead of
17137 args[i] against 0.
17138 (Fterminal_coding_system): Use EQ to compare Lisp objects.
17139
171402008-02-01 Kenichi Handa <handa@m17n.org>
17141
17142 * coding.c (DECODE_COMPOSITION_START): If the source is short, set
17143 coding->result to CODING_RESULT_INSUFFICIENT_SRC.
17144 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK after the call of
17145 detect_coding.
17146 (emacs_mule_char): Handle old style (Emacs 20) component character
17147 of a composition.
17148 (DECODE_EMACS_MULE_COMPOSITION_RULE_20)
17149 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Fix parsing a
17150 composition rule.
17151 (decode_coding_emacs_mule): Handle invalid bytes correctly.
17152
171532008-02-01 Kenichi Handa <handa@m17n.org>
17154
17155 * coding.c (encode_coding_ccl): Allocate destination dynamically
17156 when necessary.
17157
171582008-02-01 Kenichi Handa <handa@m17n.org>
17159
17160 * ccl.c (Fccl_execute_on_string): Fix the condition of terminating
17161 the loop. When quitted, show a proper error message.
17162
171632008-02-01 Kenichi Handa <handa@m17n.org>
17164
17165 * xterm.c (x_set_glyph_string_clipping_exactly): Set
17166 src->clip_head and src->clip_tail temporarily instead of src->hl.
17167
17168 * ccl.c (CCL_WRITE_STRING): Handle a flag bit for multibyte
17169 character sequence.
17170 (Fccl_execute_on_string): Use ASET, not XSET.
17171
171722008-02-01 Kenichi Handa <handa@m17n.org>
17173
17174 * search.c (search_buffer): Fix handling of "\\" in a trivial regexp.
17175
171762008-02-01 Kenichi Handa <handa@m17n.org>
17177
17178 * coding.c (decode_coding): Fix the condition of terminating the
17179 decoding loop.
17180
171812008-02-01 Kenichi Handa <handa@m17n.org>
17182
17183 * data.c (Faset): On setting a character bigger than 255 in a
17184 unibyte string, signal an error instead of make the string multibyte.
17185
171862008-02-01 Kenichi Handa <handa@m17n.org>
17187
17188 * charset.c (map_charset_chars): Fix for ascii-compatible charset
17189 made by a mapping table.
17190
171912008-02-01 Kenichi Handa <handa@m17n.org>
17192
17193 * xdisp.c (fill_composite_glyph_string): Check s->face is NULL or
17194 not.
17195 (BUILD_COMPOSITE_GLYPH_STRING): If C is TAB, set s->face to NULL.
17196 (x_produce_glyphs): If CH is TAB, set cmp->offsets properly.
17197
17198 * xterm.c (x_draw_composite_glyph_string_foreground): Check
17199 s->face is NULL or not.
17200
172012008-02-01 Kenichi Handa <handa@m17n.org>
17202
17203 * xterm.c (x_set_glyph_string_clipping_exactly): New function.
17204 (x_draw_glyph_string): Fix drawing of right_overhang and
17205 left_overhang around/on cursor.
17206
17207 * xdisp.c (draw_glyphs): Fix inclusion of right_overwriting glyphs.
17208
172092008-02-01 Kenichi Handa <handa@m17n.org>
17210
17211 * xdisp.c (x_produce_glyphs): Handle composition with TAB.
17212
172132008-02-01 Kenichi Handa <handa@m17n.org>
17214
17215 * coding.c (Fdefine_coding_system_internal)
17216 (Fdefine_coding_system_alias): Avoid a duplicated element in
17217 Vcoding_system_alist.
17218
172192008-02-01 Kenichi Handa <handa@m17n.org>
17220
17221 * xterm.c (handle_one_xevent): Handle keysyms 0x1000000..0x10000FF.
17222
17223 * coding.c (Qcoding_system_define_form): New variable.
17224 (syms_of_coding): Intern and staticpro it.
17225 (Fcoding_system_p): Check Qcoding_system_define_form.
17226 (Fcheck_coding_system): Try to autoload the definition of CODING-SYSTEM.
17227
17228 * coding.h (CODING_SYSTEM_P): If ID is not available, call
17229 Fcoding_system_p.
17230 (CHECK_CODING_SYSTEM): If ID is not available, call
17231 Fcheck_coding_system.
17232 (CHECK_CODING_SYSTEM_GET_SPEC, CHECK_CODING_SYSTEM_GET_ID):
17233 Try also Fcheck_coding_system.
17234
172352008-02-01 Kenichi Handa <handa@m17n.org>
17236
17237 * coding.c (code_conversion_restore): GCPRO arg.
17238
172392008-02-01 Kenichi Handa <handa@m17n.org>
17240
17241 * character.c (lisp_string_width): Check multibyteness of STRING.
17242
172432008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17244
17245 * macterm.c (mac_encode_char): Call ccl_driver with the last arg
17246 Qnil. Use JIS_TO_SJIS instead of ENCODE_SJIS.
17247 (decode_mac_font_name): Use decode_coding_c_string instead of
17248 decode_coding.
17249 (x_load_font): Initialize fontp->fontset to -1. Set
17250 fontp->encoding_type.
17251
172522008-02-01 Kenichi Handa <handa@m17n.org>
17253
17254 * search.c (search_buffer): Give up BM search on case-fold-search
17255 if one of a target character has a case-equivalence of different
17256 byte length even if that target charcter is an ASCII.
17257 (simple_search): Fix calculation of byte length of matched text.
17258 (boyer_moore): Fix handling of case-equivalent multibyte characters.
17259
172602008-02-01 Kenichi Handa <handa@m17n.org>
17261
17262 * coding.c (decode_coding): Fix handling of invalid bytes.
17263
172642008-02-01 Kenichi Handa <handa@m17n.org>
17265
17266 * xterm.c (handle_one_xevent): Handle keysyms directly mapped to
17267 Unicode characters.
17268
172692008-02-01 Kenichi Handa <handa@m17n.org>
17270
17271 * coding.c (encode_coding_object): If a pre-write-conversion
17272 function makes a new buffer, kill it.
17273
172742008-02-01 Kenichi Handa <handa@m17n.org>
17275
17276 * coding.c (QCascii_compatible_p): New variable.
17277 (syms_of_coding): Initialize it.
17278 (ONE_MORE_BYTE, ONE_MORE_BYTE_NO_CHECK): Decrement `src' before
17279 calling string_char.
17280 (record_conversion_result): Add `default:' case.
17281 (coding_charset_list): Delete unused variable `coding_type'.
17282 (Fdefine_coding_system_internal): Add `ascii-compatible-p'
17283 property in the plist of the coding system.
17284 (Fcoding_system_put): Check QCascii_compatible_p.
17285
172862008-02-01 Miles Bader <miles@gnu.org>
17287
17288 * xfaces.c (Finternal_lisp_face_equal_p): Restore previously
17289 removed calculation of frame `f', as it's now used.
17290
172912008-02-01 Kenichi Handa <handa@m17n.org>
17292
17293 * Makefile.in (RUN_TEMACS): Include "-nl" if HAVE_SHM is defined.
17294 (emacs${EXEEXT}): Run $(RUN_TEMACS) unconditionally.
17295 (UNIDATA): New variable.
17296 (${lispsource}international/charprop.el): Depends on ${UNIDATA}.
17297 (bootstrap-emacs${EXEEXT}): Depends on charprop.el. Run
17298 $(RUN_TEMACS) unconditionally.
17299
173002008-02-01 Kenichi Handa <handa@m17n.org>
17301
17302 * Makefile.in (temacs${EXEEXT}): Build charprop.el if necessary.
17303 (admindir): New variable.
17304 ($(lispsource)international/charprop.el): New target.
17305
173062008-02-01 Miles Bader <miles@gnu.org>
17307
17308 * character.c (chars-in-region): Remove obsolete function.
17309 (syms_of_character): Remove its initialization.
17310
173112008-02-01 Benjamin Riefenstahl <b.riefenstahl@turtle-trading.net>
17312
17313 * w32select.c (validate_coding_system)
17314 (setup_windows_coding_system): New functions.
17315 (convert_to_handle_as_coded, Fw32_get_clipboard_data): Use
17316 setup_windows_coding_system.
17317 (setup_config, Fw32_get_clipboard_data): Use
17318 validate_coding_system.
17319 (Fx_selection_exists): Move call to setup_config to a place
17320 where signals are allowed.
17321
17322 * lisp.h (Fcoding_system_base, Fcoding_system_eol_type)
17323 (Fcheck_coding_system): Add declarations.
17324
173252008-02-01 Kenichi Handa <handa@m17n.org>
17326
17327 * charset.c (load_charset_map_from_vector): Fix for the first iteration.
17328
173292008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17330
17331 * macfns.c (Fx_create_frame, x_create_tip_frame): Pass Lisp
17332 string as the second argument for x_new_fontset.
17333
173342008-02-01 Kenichi Handa <handa@m17n.org>
17335
17336 * coding.c (decode_coding_object): Use safe_call1 instead of call1.
17337 (encode_coding_object): Use safe_call instead of call2.
17338
173392008-02-01 Kenichi Handa <handa@m17n.org>
17340
17341 * fontset.c (Fset_fontset_font): Check family element of a given vector.
17342
17343 * Makefile.in (lisp): Include charprop.el.
17344
173452008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17346
17347 * macfns.c (Fx_create_frame, x_create_tip_frame): Fix crash.
17348 Not sure if it's unnecessary.
17349
173502008-02-01 Steven Tamm <steventamm@mac.com>
17351
17352 * macfns.c (Fx_create_frame, x_create_tip_frame): ifdef'd out
17353 some possibly unnecessary fontset checking code that crashed
17354 when creating a new frame.
17355
173562008-02-01 Kenichi Handa <handa@m17n.org>
17357
17358 * xfaces.c (merge_faces): Fix argument to lookup_derived_face and
17359 lookup_face.
17360
17361 * xdisp.c (Fformat_mode_line): Fix argument to lookup_named_face.
17362
17363 * fringe.c (draw_fringe_bitmap_1): Fix argument to lookup_named_face.
17364
173652008-02-01 Kenichi Handa <handa@m17n.org>
17366
17367 * coding.c: Cancel the change done in HEAD on 2008-02-01.
17368 (coding_charset_list): New function.
17369
17370 * coding.h (coding_charset_list): Extern it.
17371
173722008-02-01 Kenichi Handa <handa@m17n.org>
17373
17374 * fontset.c (Fset_fontset_font): Call find_font_encoding with
17375 concatenation of family and registry.
17376
173772008-02-01 Kenichi Handa <handa@m17n.org>
17378
17379 * character.h (BYTE8_STRING): Fix typo.
17380
17381 * editfns.c (Ftranslate_region_internal): Don't convert unibyte
17382 string to multibyte (sync to HEAD).
17383
17384 * casefiddle.c (casify_region): Handle changes in byte-length
17385 using replace_range_2 (sync to HEAD).
17386
173872008-02-01 Andreas Schwab <schwab@suse.de>
17388
17389 * chartab.c (map_char_table): GCPRO table and arg.
17390
173912008-02-01 Kenichi Handa <handa@m17n.org>
17392
17393 * syntax.c (skip_syntaxes): Return lispy 0 (not nil) if point is
17394 already at limit.
17395
173962008-02-01 Kenichi Handa <handa@m17n.org>
17397
17398 * fontset.c (fs_load_font): Use fast_string_match_ignore_case
17399 instead of fast_c_string_match_ignore_case.
17400 (find_font_encoding): Change argument to Lisp_Object. Use
17401 fast_string_match_ignore_case instead of
17402 fast_c_string_match_ignore_case. Change caller.
17403
174042008-02-01 Kenichi Handa <handa@m17n.org>
17405
17406 * xdisp.c (get_next_display_element): In unibyte case, decide to
17407 display in octal form by checking a character by
17408 UNIBYTE_CHAR_HAS_MULTIBYTE_P.
17409
17410 * charset.c (Fset_unibyte_charset): Setup unibyte_has_multibyte_table.
17411
17412 * character.c (unibyte_has_multibyte_table): New variable.
17413
17414 * character.h (unibyte_has_multibyte_table): Extern it.
17415 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): New macro.
17416
174172008-02-01 Kenichi Handa <handa@m17n.org>
17418
17419 * coding.c (encode_coding_iso_2022): Fix handling of charset
17420 annotation.
17421
174222008-02-01 Kenichi Handa <handa@m17n.org>
17423
17424 * coding.c (setup_coding_system): If coding_system is nil, use
17425 Qundecided.
17426 (Fterminal_coding_system): Return nil if terminal coding system is
17427 `undecided'.
17428 (syms_of_coding): Define coding-system `undecided' here. Setup
17429 terminal_coding as `undecided'.
17430
174312008-02-01 Kenichi Handa <handa@m17n.org>
17432
17433 * xdisp.c (message_dolog, set_message_1): Call
17434 unibyte_char_to_multibyte with arg type int.
17435
17436 * lread.c (read1): Fix reading of a char-table.
17437
17438 * print.c (print_object): Include sub char-table in circularities
17439 detection.
17440
174412008-02-01 Kenichi Handa <handa@m17n.org>
17442
17443 * keymap.c (where_is_internal_2): Fix for the case that KEY is a cons.
17444 Append the found sequences in car of ARGS instead of prepending.
17445
174462008-02-01 Kenichi Handa <handa@m17n.org>
17447
17448 * fileio.c (report_file_error): Make a unibyte string from
17449 strerror (errorno).
17450 (Fsubstitute_in_file_name): Fix the arg to
17451 unibyte_char_to_multibyte. It is evaluated twice.
17452
174532008-02-01 Kenichi Handa <handa@m17n.org>
17454
17455 * charset.h (CHAR_CHARSET): Shortcut for ASCII case.
17456
174572008-02-01 Kenichi Handa <handa@m17n.org>
17458
17459 * coding.c (detect_coding_utf_16): Don't set detect_info->found if
17460 BOM is not found.
17461 (detect_coding, detect_coding_system): Optimization for ISO-2022
17462 when no 8-bit data is found.
17463
174642008-02-01 Jason Rumney <jasonr@gnu.org>
17465
17466 * w32fns.c (x_to_w32_font): Update to use new coding struct.
17467
174682008-02-01 Kenichi Handa <handa@m17n.org>
17469
17470 * charset.c (Fdeclare_equiv_charset, Fiso_charset): Fix handing of
17471 CHARS.
17472
174732008-02-01 Steven Tamm <steventamm@mac.com>
17474
17475 * macterm.c (mac_encode_char): Add charset argument and update
17476 to use encoding_type.
17477 (x_new_font, x_new_fontset): Merge in changes from xterm.c;
17478 switch to pure fontset.
17479 (decode_mac_font_name): Temporarily remove decoding.
17480 (x_font_name_to_mac_font_name): Temporarily remove encoding.
17481 (x_load_font): Temporarily remove encoding.
17482
174832008-02-01 Kenichi Handa <handa@m17n.org>
17484
17485 * xfaces.c (Fface_font): If frame is not on a window system,
17486 ignore CHARACTER arg. If HAVE_WINDOW_SYSTEM is not defined, don't
17487 refer to face->font.
17488 (split_font_name_into_vector, build_font_name_from_vector)
17489 (lookup_non_ascii_face, realize_non_ascii_face): Define them only
17490 when HAVE_WINDOW_SYSTEM is defined.
17491
174922008-02-01 Kenichi Handa <handa@m17n.org>
17493
17494 * xdisp.c (BUILD_GLYPH_STRINGS): Check if s is NULL.
17495 (x_produce_glyphs): Fix setting of members of cmp in case
17496 cmp->glyph_len is zero.
17497
17498 * fontset.c (Fset_fontset_font): Fix docstring.
17499 (Ffontset_info): Make it backward compatible. New arg ALL.
17500
175012008-02-01 Kim F. Storm <storm@cua.dk>
17502
17503 * process.c (read_process_output): Grow decoding_buf when needed;
17504 this could cause a crash in allocate_string and compact_small_strings.
17505
175062008-02-01 Kenichi Handa <handa@m17n.org>
17507
17508 * fileio.c (WRITE_BUF_SIZE): Delete this macro.
17509
175102008-02-01 Kenichi Handa <handa@m17n.org>
17511
17512 * coding.c (setup_coding_system): Set coding->common_flags
17513 correctly for raw-text.
17514 (consume_chars): On encoding unibyte text by raw-text, don't check
17515 multibyte form.
17516 (encode_coding): On encoding by raw-text, never use translation tables.
17517
17518 * fileio.c (e_write): Short cut for the case of no encoding.
17519
175202008-02-01 Kenichi Handa <handa@m17n.org>
17521
17522 * coding.c (detect_coding, detect_coding_system): Delete unused
17523 variables.
17524
175252008-02-01 Kenichi Handa <handa@m17n.org>
17526
17527 * coding.c (encode_coding_utf_8): Fix handling of raw-byte char.
17528 (consume_chars): Fix handling of 8-bit bytes in unibyte source.
17529
175302008-02-01 Kenichi Handa <handa@m17n.org>
17531
17532 * coding.c (Ffind_coding_systems_region_internal): Include
17533 raw-text and no-conversion in the result.
17534
175352008-02-01 Kenichi Handa <handa@m17n.org>
17536
17537 * fontset.c (find_font_encoding): Return `ascii' for unknown encoding.
17538 (load_font_get_repertory): Delete unnecessary check of ENCODING of
17539 FONT_DEF.
17540 (font_def_arg, add_arg, from_arg, to_arg): New args.
17541 (set_fontset_font): Change argument.
17542 (Fset_fontset_font): Fix for the case that TARGET is a script
17543 name and charset name.
17544 (new_fontset_from_font_name): Fix argument to Fnew_fontset.
17545
175462008-02-01 Kenichi Handa <handa@m17n.org>
17547
17548 * fontset.c (fontset_font): Rename from fontset_face. Change return
17549 value.
17550 (face_suitable_for_char_p, face_for_char): Adjust for the change
17551 of fontset_font.
17552 (make_fontset_for_ascii_face): Fix setting of the fontset element
17553 for ASCII.
17554 (Finternal_char_font): Use fontset_font instead of FACE_FOR_CHAR
17555 to get a font name.
17556 (Ffontset_info): Adjust for the change of fontset_font.
17557
17558 * coding.c (emacs_mule_char): Check invalid code more rigidly.
17559
17560 * character.h (LEADING_CODE_LATIN_1_MIN)
17561 (LEADING_CODE_LATIN_1_MAX): Delete these macros.
17562
175632008-02-01 Kenichi Handa <handa@m17n.org>
17564
17565 * editfns.c (check_translation): New function.
17566 (Ftranslate_region_internal): Handle M:N mapping.
17567
175682008-02-01 Kenichi Handa <handa@m17n.org>
17569
17570 * xfaces.c (xlfd_point_size): Set font->numeric[XLFD_PIXEL_SIZE].
17571
175722008-02-01 Kenichi Handa <handa@m17n.org>
17573
17574 * coding.c (DECODE_DESIGNATION): Set chars_96 to -1 instead of
17575 goto invalid_code.
17576 (decode_coding_iso_2022): Fix handling of invalid designation.
17577
17578 * fileio.c (Finsert_file_contents): Be sure to call unbind_to
17579 after calling code_conversion_save.
17580
175812008-02-01 Kenichi Handa <handa@m17n.org>
17582
17583 * xdisp.c (handle_auto_composed_prop): Fix Lisp_Object/int mixup.
17584
17585 * print.c (print_prune_string_charset): Fix Lisp_Object/int mixup.
17586
17587 * fontset.c: Include "intervals.h".
17588 (fontset_face): Fix comparing of Lisp_Objects.
17589 (free_face_fontset, new_fontset_from_font_name): Fix
17590 Lisp_Object/int mixup.
17591
17592 * editfns.c (Ftranslate_region_internal): Fix Lisp_Object/int mixup.
17593
17594 * coding.c: Add many prototypes for static functions.
17595 (get_translation_table): Allow max_lookup to be NULL.
17596 (decode_coding, Ffind_coding_systems_region_internal)
17597 (Funencodable_char_position, Fcheck_coding_systems_region): Call
17598 get_translation_table with max_lookup NULL.
17599
176002008-02-01 Kenichi Handa <handa@m17n.org>
17601
17602 * coding.c (get_translation_table): Declare it as Lisp_Object.
17603 (LOOKUP_TRANSLATION_TABLE): New macro.
17604 (produce_chars, consume_chars): Use LOOKUP_TRANSLATION_TABLE
17605 instead of CHAR_TABLE_REF.
17606
176072008-02-01 Kenichi Handa <handa@m17n.org>
17608
17609 * coding.c (MAX_ANNOTATION_LENGTH): Adjust for the change of
17610 annotation data format.
17611 (ADD_ANNOTATION_DATA, ADD_COMPOSITION_DATA, ADD_CHARSET_DATA):
17612 Change arguments FROM and TO to single argument NCHARS. Change caller.
17613 (decode_coding_utf_8, decode_coding_utf_16, decode_coding_emacs_mule)
17614 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
17615 (decode_coding_ccl, decode_coding_charset): Pay attention to
17616 coding->charbuf_used.
17617 (get_translation): New function.
17618 (produce_chars): New arguments translation_table and last_block.
17619 Translate characters here. Return number of carryover chars.
17620 Change caller.
17621 (produce_composition): New argument pos. Change caller.
17622 Adjust for the change of annotation data format.
17623 (produce_charset, produce_annotation): Likewise.
17624 (decode_coding, encode_coding): Don't call translate_chars.
17625 (consume_chars): New arg translation_table. Change caller.
17626 (translate_chars): Delete.
17627 (syms_of_coding): Make translation-table's number of extra slots 2.
17628
176292008-02-01 Kenichi Handa <handa@m17n.org>
17630
17631 * search.c (simple_search): Fix setting this_pos_byte in backward
17632 search.
17633
17634 * coding.c (detect_coding_emacs_mule): Fix counting of encoded
17635 byte sequence.
17636 (detect_coding_ccl): Fix setting of the variable valids.
17637
176382008-02-01 Kenichi Handa <handa@m17n.org>
17639
17640 * xterm.c (x_list_fonts): Fix the detection of an auto-scaled font.
17641
17642 * coding.c (decode_coding_utf_16): Fix handling of surrogate pair.
17643
17644 * editfns.c (Ftranslate_region_internal): Rename from
17645 Ftranslate_region. Accept a char-table in TABLE.
17646 (syms_of_editfns): Defsubr Stranslate_region_internal.
17647
17648 * xfaces.c (set_lface_from_font_name): If a font is specified for
17649 a frame, generate a fontset from the font.
17650 (build_scalable_font_name): If the scalable font is requested for
17651 a specific size, don't change that size.
17652 (try_font_list): Try a scalable font also in the case that a
17653 pattern string is specified.
17654
176552008-02-01 Kenichi Handa <handa@m17n.org>
17656
17657 * xfaces.c (Fface_font): New optional arg CHARACTER.
17658
176592008-02-01 Kenichi Handa <handa@m17n.org>
17660
17661 * charset.h (CHARSET_OFFSET): New macro.
17662
176632008-02-01 Kenichi Handa <handa@m17n.org>
17664
17665 * xterm.c (x_get_font_repertory): Fix for non-Unicode-bmp charset.
17666
17667 * fontset.c (fontset_face): Handle the case that repertory is a
17668 char-table.
17669 (find_font_encoding): Return nil for unknown encoding.
17670 (Fset_fontset_font): Ignore a font of unknown encoding.
17671
176722008-02-01 Kenichi Handa <handa@m17n.org>
17673
17674 * keymap.c (describe_vector): Handle default value of a char table.
17675
17676 * fontset.c (fontset_face): Handle fallback fonts correctly.
17677 (Ffontset_info): Return infomation about fallback fonts.
17678
176792008-02-01 Kenichi Handa <handa@m17n.org>
17680
17681 * fontset.c (FONTSET_DEFAULT): New macro.
17682 (FONTSET_ADD, fontset_add): Handle the case that range is nil.
17683 (Fset_fontset_font): Change the 2nd arg name to TARGET, and handle
17684 the case that it is nil.
17685 (dump_fontset): Call FONTSET_DEFAULT, not FONTSET_FALLBACK.
17686 (syms_of_fontset): Set char-table-extra-slots property of fontset to 9.
17687
17688 * charset.h (CHAR_CHARSET_P): Fix for the case that the method is
17689 subset or superset.
17690
176912008-02-01 Kenichi Handa <handa@m17n.org>
17692
17693 * emacs.c (main): Call init_charset after syms_of_XXX.
17694
17695 * charset.c (Vcharset_map_directory): Delete.
17696 (Vcharset_map_path): New variable.
17697 (load_charset_map_from_file): Use Vcharset_map_path instead.
17698 (init_charset): Initialize Vcharset_map_path.
17699 (syms_of_charset): Delete declaration of "charset-map-directory",
17700 add declaration of "charset-map-path".
17701
177022008-02-01 Kenichi Handa <handa@m17n.org>
17703
17704 * fns.c (string_char_to_byte, string_byte_to_char): Optimize for
17705 ASCII only string.
17706
17707 * fileio.c (Finsert_file_contents): Avoid detecting a code twice.
17708
17709 * coding.c (detect_coding_iso_2022): Fix handling of SS2 and SS3.
17710 (detect_coding, detect_coding_system): Treat '\0' as normal ASCII byte.
17711
177122008-02-01 Kenichi Handa <handa@m17n.org>
17713
17714 * coding.h (SJIS_TO_JIS2, JIS_TO_SJIS2): New macros.
17715
17716 * coding.c (QCmnemonic, QCdefalut_char)
17717 (QCdecode_translation_table, QCencode_translation_table)
17718 (QCpost_read_conversion, QCpre_write_conversion): New variables.
17719 (get_translation_table): Return a list of translation tables if
17720 necessary.
17721 (decode_coding): Call get_translation_table with ENCODEP 0.
17722 (char_encodable_p): If translation_table is non-nil, always call
17723 translate_char.
17724 (Fdefine_coding_system_internal): Accept list of translation
17725 tables as :encode-translation-table and :decode-translation-table.
17726 (Fcoding_system_put): New function.
17727 (syms_of_coding): Declare new symbols. Defsubr
17728 Scoding_system_put.
17729 (decode_coding_sjis, encode_coding_sjis): Handle 4th charset,
17730 typically JISX0212.
17731
17732 * charset.c (map_charset_chars): Fix arg to map_charset_chars in
17733 when the charset is superset type.
17734
17735 * character.c (translate_char): Accept list of translation tables.
17736
177372008-02-01 Kenichi Handa <handa@m17n.org>
17738
17739 * coding.h (enum coding_attr_index): New member coding_attr_trans_tbl.
17740 (CODING_ATTR_TRANS_TBL): New macro.
17741
17742 * coding.c (get_translation_table): New function.
17743 (translate_chars): Fix the bug of skipping annotation data.
17744 (decode_coding, encode_coding): Utilize get_translation_table.
17745 (char_encodable_p, Funencodable_char_position): Translate char if
17746 necessary.
17747 (Ffind_coding_systems_region_internal)
17748 (Fcheck_coding_systems_region): Setup translation table for encode
17749 in a coding system attribute vector in advance.
17750 (Fdefine_coding_system_internal): Allow a symbol as translation
17751 table. For shift-jis type coding system, allow 4th charset.
17752
177532008-02-01 Kenichi Handa <handa@m17n.org>
17754
17755 * coding.c (decode_coding_sjis): Check the first byte rigidly.
17756
17757 * xdisp.c (get_next_display_element): Pass -1 as POS to
17758 FACE_FOR_CHAR if displaying a C-string.
17759
177602008-02-01 Kenichi Handa <handa@m17n.org>
17761
17762 * composite.c (get_composition_id): Handle xoff and yoff in a
17763 composition rule.
17764
17765 * composite.h (COMPOSITION_DECODE_RULE): New arg xoff and yoff.
17766 (struct composition): New member lbearing and rbearing.
17767
17768 * xdisp.c (move_it_to): Optimize for the case (op & MOVE_TO_Y).
17769 (x_get_glyph_overhangs): Handle a composition glyph.
17770 (x_produce_glyphs): Setup lbearing and rbreaing for a composition glyph.
17771
17772 * xterm.c (x_compute_glyph_string_overhangs): Handle also a
17773 composition glyph.
17774
177752008-02-01 Kenichi Handa <handa@m17n.org>
17776
17777 * print.c: Include charset.h.
17778 (Vprint_charset_text_property): New variable.
17779 (Qdefault): Extern it.
17780 (PRINT_STRING_NON_CHARSET_FOUND)
17781 (PRINT_STRING_UNSAFE_CHARSET_FOUND): New macros.
17782 (print_check_string_result): New variable.
17783 (print_check_string_charset_prop): New function.
17784 (print_prune_charset_plist): New variable.
17785 (print_prune_string_charset): New function.
17786 (print_object): Call print_prune_string_charset if
17787 Vprint_charset_text_property is not t.
17788 (print_interval): Print nothing if interval->plist is nil.
17789 (syms_of_print): Declare Vprint_charset_text_property as a lisp
17790 variable. Init and staticpro print_prune_charset_plist.
17791
177922008-02-01 Kenichi Handa <handa@m17n.org>
17793
17794 * fontset.c (new_fontset_from_font_name): Use the specified font
17795 for all characters in the new fontset.
17796
17797 * macterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
17798 OBJECT args.
17799
17800 * xdisp.c (x_produce_glyphs): Call FACE_FOR_CHAR with POS and
17801 OBJECT args for composition too.
17802
17803 * w32term.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
17804 OBJECT args.
17805
178062008-02-01 Kenichi Handa <handa@m17n.org>
17807
17808 * dispextern.h (FACE_FOR_CHAR): New args POS and OBJECT.
17809
17810 * fontset.c (reorder_font_vector): Adjust for the change of
17811 FONT_DEF format.
17812 (fontset_face): New arg id. Change caller.
17813 (face_for_char): New args pos and object.
17814 (make_fontset_for_ascii_face): Adjust for the change of FONT_DEF format.
17815 (fs_query_fontset): Check NAME by Fassoc too.
17816 (Fset_fontset_font): Allow non-XLFD font name.
17817 (Ffontset_info): Adjust for the change of FONT_DEF format.
17818
17819 * fontset.h (face_for_char): Adjust prototype.
17820
17821 * xdisp.c (face_before_or_after_it_pos, get_next_display_element)
17822 (append_space, extend_face_to_end_of_line)
17823 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
17824 (x_produce_glyphs): Call FACE_FOR_CHAR with POS and OBJECT args.
17825
17826 * xfaces.c (compute_char_face): Call FACE_FOR_CHAR with
17827 POS and OBJECT args.
17828
17829 * xterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with
17830 POS and OBJECT args.
17831
178322008-02-01 Jason Rumney <jasonr@gnu.org>
17833
17834 * w32select.c (Fw32_set_clipboard_data): Avoid potential realloc
17835 of GlobalAlloc'ed memory.
17836
178372008-02-01 Kenichi Handa <handa@m17n.org>
17838
17839 * ccl.c (Fccl_execute_on_string): Fix the condition of loop.
17840
17841 * charset.h (charset_table_used): Delete extern.
17842
17843 * charset.c (charset_table_used): Make it static.
17844 (map_charset_chars): Fix args to c_function with.
17845
17846 * chartab.c (map_sub_char_table_for_charset): Fix args to
17847 c_function with.
17848
17849 * coding.h (enum coding_result_code): Delete
17850 CODING_RESULT_INSUFFICIENT_CMP, add CODING_RESULT_INVALID_SRC.
17851
17852 * coding.c (Qinsufficient_source, Qinconsistent_eol)
17853 (Qinvalid_source, Qinterrupted, Qinsufficient_memory): New variables.
17854 (Vlast_code_conversion_error): New variables.
17855 (syms_of_coding): DEFSYM or DEFVAR_LISP them.
17856 (ONE_MORE_BYTE): Record error if any instead of signaling an
17857 error. If non-ASCII multibyte char is found, return the negative
17858 value of the code. All callers changed to check it.
17859 (ONE_MORE_BYTE_NO_CHECK): Likewise.
17860 (record_conversion_result): New function. Change all codes setting
17861 coding->result to call this function.
17862 (detect_coding_utf_8, decode_coding_utf_8)
17863 (detect_coding_emacs_mule, detect_coding_sji, detect_coding_big5):
17864 Don't use the local variable incomplete.
17865 (emacs_mule_char): Change the second arg to `const'.
17866 (decode_coding): Fix of flushing out unprocessed data.
17867 (make_conversion_work_buffer): Fix making of a work buffer.
17868 (decode_coding_object): Return coding->dst_object.
17869
17870 * fontset.c (set_fontset_font): Fix args.
17871
17872 * lisp.h (CHARACTERBITS): Define as 22.
17873
17874 * process.c (send_process): Be sure to set coding->src_multibyte.
17875
17876 * xdisp.c (handle_auto_composed_prop): Fix setting of limit.
17877
178782008-02-01 Kenichi Handa <handa@m17n.org>
17879
17880 * xdisp.c (handle_auto_composed_prop): Give limit to
17881 Fnext_single_char_property_change.
17882
178832008-02-01 Kenichi Handa <handa@m17n.org>
17884
17885 * composite.c (syms_of_composite): Don't make the composition hash
17886 table weak.
17887
17888 * fontset.c (Fset_fontset_font): Fix docstring.
17889
17890 * lisp.h (detect_coding_system): Adjust prototype.
17891
17892 * fileio.c (kill_workbuf_unwind): Delete this function.
17893 (Finsert_file_contents): Adjust the call of detect_coding_system.
17894 Get conversion_buffer by code_conversion_save. Use the macro
17895 CODING_MAY_REQUIRE_DECODING. After decoding, update
17896 coding_system.
17897
17898 * coding.h (make_conversion_work_buffer): Delete extern.
17899 (code_conversion_save): Extern it.
17900
17901 * coding.c (enum iso_code_class_type): Delete ISO_carriage_return.
17902 (CODING_GET_INFO): Delete argument eol_type. Change callers.
17903 (decode_coding_utf_8): Don't do eol converion.
17904 (detect_coding_utf_16): Check coding->src_chars, not
17905 coding->src_bytes. Add heuristics for those that have no signature.
17906 (decode_coding_emacs_mule, decode_coding_iso_2022)
17907 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
17908 Don't do eol converion.
17909 (adjust_coding_eol_type): Return a new coding system.
17910 (detect_coding): Don't detect eol. Fix for utf-16 detection.
17911 (decode_eol): In case of CRLF->LF conversion, use del_range_2 on
17912 each change.
17913 (decode_coding): Pay attention to undo_list. Do eol conversion for
17914 all types of coding-systems (if necessary).
17915 (Vcode_conversion_work_buf_list): Delete it.
17916 (Vcode_conversion_reused_workbuf): Rename from
17917 Vcode_conversion_reused_work_buf.
17918 (Vcode_conversion_workbuf_name): New variable.
17919 (reused_workbuf_in_use): New variable.
17920 (make_conversion_work_buffer): Delete the arg DEPTH.
17921 (code_conversion_restore): Change argument to cons.
17922 (code_conversion_save): Delete the argument BUFFER. Change callers.
17923 (detect_coding_system): New argument src_chars. Change callers.
17924 Fix for utf-16 detection.
17925 (init_coding_once): Don't use ISO_carriage_return.
17926 (syms_of_coding): Initialize Vcode_conversion_workbuf_name and
17927 reused_workbuf_in_use.
17928
179292008-02-01 Kenichi Handa <handa@m17n.org>
17930
17931 * keymap.c (store_in_keymap): Pay attention to the case that idx
17932 is a cons specifying a character range.
17933
179342008-02-01 Kenichi Handa <handa@m17n.org>
17935
17936 * xdisp.c (handle_auto_composed_prop): Fix the case of returning
17937 HANDLED_RECOMPUTE_PROPS.
17938
17939 * coding.c (Fdefine_coding_system_internal): Fix checking of
17940 ascii compatibility.
17941
179422008-02-01 Kenichi Handa <handa@m17n.org>
17943
17944 * charset.c (find_charsets_in_text): Delete unused locale variable.
17945 (Fset_charset_priority): Update Vemacs_mule_charset_list too.
17946
17947 * coding.c (encode_coding_emacs_mule): Emit bytes with MSB.
17948 Resync charset_list to Vemacs_mule_charset_list.
17949
17950 * keymap.c (store_in_keymap): Pay attention to the case that idx
17951 is a cons specifying a character range.
17952
179532008-02-01 Kenichi Handa <handa@m17n.org>
17954
17955 * composite.c (update_compositions): Bind inhibit-read-only, etc
17956 to t before calling remove-list-of-text-properties.
17957
17958 * print.c (print_object): Always print ASCII chars as is.
17959
179602008-02-01 Kenichi Handa <handa@m17n.org>
17961
17962 * keymap.c (Fdefine_key): Fix handling of Lucid style event type list.
17963
17964 * fns.c (Fmapconcat, Fmapcar, Fmapc): Signal an error if SEQUENCE
17965 is a char table.
17966
179672008-02-01 Kenichi Handa <handa@m17n.org>
17968
17969 * syntax.c (skip_chars): Be sure to alloca char_ranges when necessary.
17970
179712008-02-01 Kenichi Handa <handa@m17n.org>
17972
17973 * xfaces.c (set_lface_from_font_name): Fix for the case that
17974 FONTNAME is not fontset name.
17975
179762008-02-01 Kenichi Handa <handa@m17n.org>
17977
17978 * fns.c (base64_encode_1): Fix previous change.
17979
179802008-02-01 Kenichi Handa <handa@m17n.org>
17981
17982 * fontset.c (set_fontset_font): New function.
17983 (Fset_fontset_font): If a font is specified for a charset, use
17984 map_charset_chars to store the font spec in a fontset.
17985
179862008-02-01 Kenichi Handa <handa@m17n.org>
17987
17988 * fontset.c (fontset_face): Create a fallback fontset on demand.
17989 (make_fontset): Don't create a fallback fontset here.
17990 (free_face_fontset): Free a fallback fontset (if any) too.
17991 (n_auto_fontsets): Delete this variable.
17992 (auto_fontset_alist): New variable.
17993 (new_fontset_from_font_name): Check auto_fontset_alist.
17994 (dump_fontset) [FONTSET_DEBUG]: Fully re-written.
17995 (Ffontset_list_all) [FONTSET_DEBUG]: New function.
17996 (syms_of_fontset): Initialize and staticpro auto_fontset_alist.
17997 Defsubr Sfontset_list_all.
17998
179992008-02-01 Kenichi Handa <handa@m17n.org>
18000
18001 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
18002
180032008-02-01 Kenichi Handa <handa@m17n.org>
18004
18005 * fontset.c (Fnew_fontset): Check NAME more rigidly.
18006
180072008-02-01 Kenichi Handa <handa@m17n.org>
18008
18009 * editfns.c (Fgoto_char): Fix docstring.
18010
180112008-02-01 Kenichi Handa <handa@m17n.org>
18012
18013 * insdel.c (insert_from_gap): Adjust intervals correctly.
18014
180152008-02-01 Jason Rumney <jasonr@gnu.org>
18016
18017 * w32term.c (GLYPHSET, WCRANGE): Define if system headers don't.
18018 (pfnGetFontUnicodeRanges): New dynamically loaded function.
18019 (w32_initialize): Try to load it.
18020 (x_get_font_repertory): Use it if available.
18021 (w32_encode_char): Add shortcut for unicode output.
18022
18023 * w32fns.c (w32_load_system_font): Default charset to -1.
18024 (x_to_w32_charset): Match all fonts for unicode.
18025 (w32_to_x_charset): New parameter matching. Don't return partial
18026 or wildcard charsets.
18027 (w32_to_all_x_charsets): Don't return partial or wildcard charsets.
18028 (w32_codepage_for_font): Return CP_UNICODE for unicode.
18029 (w32_to_x_font): Match charset to real charset.
18030 (enum_font_cb2): Always list unicode versions.
18031
18032 * makefile.w32-in (temacs): Increase EMHEAP.
18033
180342008-02-01 Jason Rumney <jasonr@gnu.org>
18035
18036 * w32term.c (w32_encode_char): New charset parameter.
18037 font_info.encoding becomes encoding_type.
18038 (x_get_font_repertory): New function. Warning: stub only!
18039 (x_new_font): Return quickly if font already set.
18040 (x_new_fontset): fontsetname parameter is Lisp_Object.
18041 Use new fs_query_fontset. Try new_fontset_from_font_name.
18042 Use fontset_name for return value.
18043
18044 * w32term.h: Declare x_get_font_repertory.
18045
18046 * w32select.c (Fw32_set_clipboard_data): Use string_x_string_p in
18047 place of find_charset_in_text. Use encode_coding_object in place
18048 of encode_coding.
18049 (Fw32_get_clipboard_data): Use decode_coding_c_string in place of
18050 decode_coding.
18051
18052 * w32fns.c (Fx_create_frame, x_create_tip_frame): Use new version
18053 of x_new_fontset.
18054 (w32_load_system_font): Initialize charset as unicode.
18055 font_info.encoding becomes encoding_type.
18056 (w32_to_x_font): Use decode_coding_c_string in place of decode_coding.
18057 (x_to_w32_font): Use encode_coding_object in place of encode_coding.
18058 (syms_of_w32fns): Set get_font_repertory_func.
18059
18060 * w32console.c: Include character.h. Use terminal_encode_buffer
18061 from term.c.
18062 (write_glyphs): Use new version of encode_terminal_code. Use
18063 encode_coding_object in place of encode_coding.
18064
18065 * w32bdf.c (w32_load_bdf_font): Clear font_info before filling.
18066 encoding becomes encoding_type.
18067
18068 * term.c (terminal_encode_buffer): Make externally visible.
18069
18070 * makefile.w32-in: Add character.h dependancies.
18071 (character.o, chartab.o): New targets.
18072
180732008-02-01 Kenichi Handa <handa@m17n.org>
18074
18075 * fileio.c (Finsert_file_contents) [DOS_NT]: Use the macro
18076 CODING_ID_EOL_TYPE.
18077
180782008-02-01 Andreas Schwab <schwab@suse.de>
18079
18080 * coding.c (produce_chars): Revert last change.
18081
180822008-02-01 Kenichi Handa <handa@m17n.org>
18083
18084 * charset.h (charset_unicode): Extern it.
18085
18086 * charset.c (string_xstring_p): Check by (C >= 0x100).
18087 (find_charsets_in_text): Change format of the arc CHARSETS. New
18088 arg MULTIBYTE.
18089 (Ffind_charset_region, Ffind_charset_string): Adjust for the
18090 change of find_charsets_in_text.
18091 (Fsplit_char): Fix doc. Never return unknown.
18092
18093 * chartab.c (char_table_translate): Use CHARACTERP, not INTEGERP.
18094
18095 * coding.c (Fdefine_coding_system_alias): Update
18096 Vcoding_system_list.
18097
18098 * fontset.c (load_font_get_repertory): Pay attention to the case
18099 that ENCODING of a font is specified by a char-table.
18100
18101 * xterm.c (x_get_font_repertory): Handle the case that the
18102 encoding of font is other than Unicode.
18103
181042008-02-01 Kenichi Handa <handa@m17n.org>
18105
18106 * term.c (encode_terminal_code): Don't handle glyph-table. Check
18107 if a character is encodable by the terminal coding system. If
18108 not, produces proper number of `?'s. Update
18109 terminal_encode_buffer and terminal_encode_buf_size if necessary.
18110 (produce_glyphs): Check by CHAR_BYTE8_P, not SINGLE_BYTE_CHAR_P.
18111
181122008-02-01 Kenichi Handa <handa@m17n.org>
18113
18114 * term.c (terminal_encode_buffer, terminal_encode_buf_size): New
18115 variables.
18116 (encode_terminal_code): Change argument. Encode multiple
18117 characters at once. Store the result of encoding in
18118 terminal_encode_buffer.
18119 (write_glyphs, insert_glyphs): Adjust for the change of
18120 encode_terminal_code.
18121 (term_init): Initialize terminal_encode_buffer and
18122 terminal_encode_buf_size.
18123
18124 * coding.c (consume_chars): If coding->src_object is nil, don't
18125 check annotation.
18126
181272008-02-01 Kenichi Handa <handa@m17n.org>
18128
18129 * character.c (char_string): Use ASCII_CHAR_P instead of
18130 SINGLE_BYTE_CHAR_P.
18131
181322008-02-01 Kenichi Handa <handa@m17n.org>
18133
18134 * xdisp.c (handle_auto_composed_prop): Check if the last
18135 characters of auto-composed region is newly composed with the
18136 following characters.
18137 (handle_composition_prop): Fix checking of point being inside
18138 composition.
18139
181402008-02-01 Kenichi Handa <handa@m17n.org>
18141
18142 * fns.c (concat): Don't change multibyteness of the result by
18143 concatenating an 8-bit character.
18144
18145 * data.c (Faset): Check newelt by CHECK_CHARACTER. Don't change
18146 multibyteness of the result when newelt is an 8-bit character.
18147
181482008-02-01 Dave Love <fx@gnu.org>
18149
18150 * xmenu.c (find_and_call_menu_selection): Make menu_bar_items_used
18151 EMACS_INT.
18152
18153 * xfns.c (DefaultDepthOfScreen, x_encode_text): Remove unused vars.
18154
18155 * xfaces.c (face_numeric_value): Declare dim size_t.
18156 (Finternal_lisp_face_equal_p): Remove unused f.
18157
18158 * xdisp.c (BUILD_CHAR_GLYPH_STRINGS, display_and_set_cursor)
18159 (MATRIX_ROW): Remove unused vars.
18160 (draw_glyphs, x_insert_glyphs, fast_find_position)
18161 (fast_find_position, fast_find_string_pos): Use EMACS_INT for
18162 byte/char counts.
18163
18164 * regex.c (regex_compile): Remove unused var.
18165
18166 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
18167
18168 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
18169 (Faccessible_keymaps, where_is_internal): Remove unused vars.
18170
18171 * keyboard.c (cancel_hourglass_unwind): Return Qnil.
18172
18173 * frame.c (frame_name_fnn_p): Make len EMACS_INT.
18174
18175 * fileio.c (Fwrite_region): Remove unused var.
18176
18177 * dispnew.c (adjust_frame_glyphs_for_frame_redisplay)
18178 (adjust_frame_glyphs_for_window_redisplay): Remove unused ch_dim.
18179
18180 * composite.c (Fremove_list_of_text_properties): Declare.
18181
18182 * coding.c (inhibit_pre_post_conversion): Remove (unused).
18183 (alloc_destination, produce_chars): Use EMACS_INT for byte/char counts.
18184 (coding_inherit_eol_type): Remove unused attrs.
18185 (detect_coding): Cast arg of detect_eol.
18186
18187 * charset.c (syms_of_charset): Remove unused var p.
18188 (find_charsets_in_text, Ffind_charset_region): Use EMACS_INT for
18189 byte/char counts.
18190
18191 * casetab.c (set_case_table): Remove unused var.
18192
18193 * window.c (Fdisplay_buffer, Fframe_selected_window): Remove
18194 unused vars.
18195
181962008-02-01 Dave Love <fx@gnu.org>
18197
18198 * xterm.c (x_bitmap_mask): Declare.
18199
182002008-02-01 Dave Love <fx@gnu.org>
18201
18202 * xterm.c (x_term_init): Fix type error.
18203
18204 * lisp.h: Add Funibyte_char_to_multibyte.
18205
18206 * coding.c (Fread_coding_system): Fix arg of XSETSTRING.
18207 (Fset_coding_system_priority): Doc fix.
18208
18209 * ccl.c (ccl_driver): Fix arg of CHARACTERP.
18210
18211 * indent.c (check_composition): Make start and end EMACS_INT.
18212
18213 * character.c (lisp_string_width): Make ignore and end EMACS_INT.
18214
18215 * xdisp.c (handle_composition_prop, check_point_in_composition):
18216 Make buffer positions EMACS_INT.
18217
18218 * composite.c (find_composition, run_composition_function)
18219 (update_compositions, Ffind_composition_internal): Make buffer
18220 positions EMACS_INT.
18221
18222 * composite.h (find_composition, update_compositions): Make
18223 position args EMACS_INT.
18224
18225 * keyboard.c (adjust_point_for_property): Make beg and end EMACS_INT.
18226
18227 * intervals.c (get_property_and_range):
18228 * intervals.h (get_property_and_range): Make start and end EMACS_INT.
18229
18230 * unexalpha.c: Don't include varargs.h.
18231
182322008-02-01 Dave Love <fx@gnu.org>
18233
18234 * coding.h (ENCODE_UTF_8): New.
18235
18236 * Makefile.in (gtkutil.o): Depend on coding.h.
18237
18238 * coding.c (Fset_coding_system_priority): Doc fix.
18239
182402008-02-01 Kenichi Handa <handa@m17n.org>
18241
18242 * fileio.c (Finsert_file_contents): Call setup_coding_system in
18243 the case of auto saving.
18244
182452008-02-01 Andreas Schwab <schwab@suse.de>
18246
18247 * chartab.c (map_char_table, map_char_table_for_charset): Protect
18248 `range' from GC.
18249
182502008-02-01 Kenichi Handa <handa@m17n.org>
18251
18252 * coding.c (decode_coding_sjis): Check bytes more rigidly.
18253
182542008-02-01 Kenichi Handa <handa@m17n.org>
18255
18256 * fileio.c (choose_write_coding_system): Return a decided coding system.
18257 (Fwrite_region): Set Vlast_coding_system_used to the return value
18258 of choose_write_coding_system.
18259
182602008-02-01 Kenichi Handa <handa@m17n.org>
18261
18262 * charset.c (Fset_charset_priority): Pay attention to duplicated
18263 arguments.
18264
18265 * coding.c (QCcategory): New variable.
18266 (syms_of_coding): Defsym it. Set all elements of
18267 Vcoding_category_table and their symbol values.
18268 (Fset_coding_system_priority): Doc fix. Update symbol qvalues of
18269 coding-category-XXX, and coding-category-list.
18270 (Fdefine_coding_system_internal): Add category in the plist.
18271
182722008-02-01 Kenichi Handa <handa@m17n.org>
18273
18274 * callproc.c (Fcall_process): Handle carryover correctly.
18275
18276 * coding.c (decode_coding_iso_2022): Fix handling of invalid bytes.
18277 (raw_text_coding_system): Check NILP (coding_system).
18278 (coding_inherit_eol_type): Check NILP (coding_system) and
18279 NILP (parent).
18280 (consume_chars): Fix for the case of raw-text.
18281
18282 * process.c (read_process_output): Handle carryover correctly.
18283
182842008-02-01 Dave Love <fx@gnu.org>
18285
18286 * regex.c (re_search_2): Fix last change.
18287
182882008-02-01 Kenichi Handa <handa@m17n.org>
18289
18290 * regex.c (GET_CHAR_BEFORE_2): Check multibyte, not
18291 target_multibyte. Even in a unibyte case, return a converted
18292 multibyte char.
18293 (GET_CHAR_AFTER): New macro.
18294 (PATFETCH): Translate via multibyte char.
18295 (HANDLE_UNIBYTE_RANGE): Delete this macro.
18296 (SETUP_MULTIBYTE_RANGE): New macro.
18297 (regex_compile): Setup compiled code so that its multibyteness
18298 matches that of a target. Fix the handling of "[X-YZ]" using
18299 SETUP_MULTIBYTE_RANGE.
18300 (analyse_first) <charset>: For filling fastmap for all multibyte
18301 characters, don't check by BASE_LEADING_CODE_P.
18302 (re_search_2): Don't check RE_TARGET_MULTIBYTE_P (bufp). It is
18303 the same as RE_MULTIBYTE_P (bufp) now.
18304 (mutually_exclusive_p): Check by (! multibyte || IS_REAL_ASCII (c)).
18305 (TARGET_CHAR_AND_LENGTH): Delete this macro.
18306 (TRANSLATE_VIA_MULTIBYTE): New macro.
18307 (re_match_2_internal): Don't check RE_TARGET_MULTIBYTE_P (bufp).
18308 It is the same as RE_MULTIBYTE_P (bufp) now.
18309 <exactn>: Translate via multibyte.
18310 <anychar>: Fetch a character by RE_STRING_CHAR_AND_LENGTH. Don't
18311 translate it.
18312 <charset, charset_not>: Fetch a character by
18313 RE_STRING_CHAR_AND_LENGTH. Translate via multibyte.
18314 <duplicate>: Call bcmp_translate with the last arg `multibyte'.
18315 <wordbound, notwordbound, wordbeg, wordend, syntaxspec,
18316 notsyntaxspec, categoryspec, notcategoryspec> Fetch a character
18317 by GET_CHAR_AFTER.
18318 (bcmp_translate): Likewise.
18319
18320 * search.c (compile_pattern): Check the member target_multibyte,
18321 not the member multibyte of buf.
18322
18323 * lread.c (read1): While reading a string, set force_singlebyte
18324 and force_multibyte correctly.
18325
18326 * charset.c (Fset_unibyte_charset, init_charset_once): Fix setting
18327 up of unibyte_to_multibyte_table.
18328
183292008-02-01 Kenichi Handa <handa@m17n.org>
18330
18331 * coding.c (setup_coding_system): If coding has
18332 post-read-conversion or pre-write-conversion, set
18333 CODING_REQUIRE_DECODING_MASK and CODING_REQUIRE_ENCODING_MASK
18334 respectively.
18335 (decode_coding_gap): Run post-read-conversion if any.
18336
18337 * fileio.c (Finsert_file_contents): Even if we read into a
18338 unibyte buffer, check if we must decode the result or not.
18339
183402008-02-01 Kenichi Handa <handa@m17n.org>
18341
18342 * coding.c (make_conversion_work_buffer): Change the work buffer
18343 name to the same one as that of Emacs 21.
18344
183452008-02-01 Kenichi Handa <handa@m17n.org>
18346
18347 * coding.h (make_conversion_work_buffer): Adjust prototype.
18348 (code_conversion_restore): Don't extern it.
18349
18350 * coding.c (detected_mask): Delete unused variable.
18351 (decode_coding_iso_2022): Pay attention to the byte sequence of
18352 CTEXT extended segment, and retain those bytes as is.
18353 (decode_coding_ccl): Delete unused variable `valids'.
18354 (setup_coding_system): Delete unused variable `category'.
18355 (consume_chars): Delete unused variable `category'. Make it work
18356 for non-multibyte case.
18357 (make_conversion_work_buffer): Change argument.
18358 (saved_coding): Delete unused variable.
18359 (code_conversion_restore): Don't check saved_coding->destination.
18360 (code_conversion_save): New function.
18361 (decode_coding_gap, encode_coding_gap): Call code_conversion_save
18362 instead of record_unwind_protect.
18363 (decode_coding_object, encode_coding_object): Likewise. Recover PT.
18364 (detect_coding_system): Delete unused variable `mask'.
18365 (Fdefine_coding_system_internal): Delete unused variable id.
18366
18367 * fileio.c (kill_workbuf_unwind): New function.
18368 (Finsert_file_contents): On replacing, call
18369 make_conversion_work_buffer with correct args, and call
18370 record_unwind_protect with the first arg kill_workbuf_unwind.
18371
18372 * lisp.h (Fgenerate_new_buffer_name): EXFUN it.
18373
183742008-02-01 Kenichi Handa <handa@m17n.org>
18375
18376 * fontset.c (BASE_FONTSET_P): Check FONTSET_BASE, not FONTSET_NAME.
18377 (fontset_add): Fix for the case that TO is less than TO1.
18378 (Ffontset_info): Don't use fallback fontset on checking the
18379 default fontset.
18380 (dump_fontset): New function for debugging.
18381
18382 * coding.c (Fdefine_coding_system_internal): Fix for the case that
18383 coding_type is Qcharset.
18384
183852008-02-01 Kenichi Handa <handa@m17n.org>
18386
18387 * chartab.c (map_sub_char_table): New argument DEFAULT_VAL.
18388 (map_char_table): Don't inherit the value from the parent on
18389 initializing VAL. Adjust for the above change.
18390
183912008-02-01 Kenichi Handa <handa@m17n.org>
18392
18393 * coding.c (Qsignature, Qendian): Delete these variables.
18394 (syms_of_coding): Don't initialize them.
18395 (CATEGORY_MASK_UTF_16_AUTO): New macro.
18396 (detect_coding_utf_16): Add CATEGORY_MASK_UTF_16_AUTO in
18397 detect_info->found.
18398 (decode_coding_utf_16): Don't detect BOM here.
18399 (encode_coding_utf_16): Produce BOM if CODING_UTF_16_BOM (coding)
18400 is NOT utf_16_without_bom.
18401 (setup_coding_system): For a coding system of type utf-16, check
18402 if the attribute :endian is Qbig or not (not nil or not), and set
18403 CODING_REQUIRE_DETECTION_MASK if BOM detection is required.
18404 (detect_coding): If coding type is utf-16 and BOM detection is
18405 required, detect it.
18406 (Fdefine_coding_system_internal): For a coding system of type
18407 utf-16, check if the attribute :endian is Qbig or not (not nil or not).
18408
184092008-02-01 Kenichi Handa <handa@m17n.org>
18410
18411 * coding.c (coding_set_source): Fix for the case that the current
18412 buffer is different from coding->src_object.
18413 (decode_coding_object): Don't use the conversion work buffer if
18414 DST_OBJECT is a buffer.
18415
184162008-02-01 Dave Love <fx@gnu.org>
18417
18418 * lread.c (read_emacs_mule_char) [len==2]: Index
18419 emacs_mule_charset correctly.
18420
184212008-02-01 Dave Love <fx@gnu.org>
18422
18423 * coding.c (Qbig5, Vbig5_coding_system, CATEGORY_MASK_BIG5)
18424 (detect_coding_big5, decode_coding_big5, encode_coding_big5)
18425 (Fdecode_big5_char, Fencode_big5_char): Delete. (Big5 no longer
18426 treated specially.)
18427 (setup_coding_system, coding_category, CATEGORY_MASK_ANY)
18428 (detected_mask): Remove Big5 bits.
18429
184302008-02-01 Kenichi Handa <handa@m17n.org>
18431
18432 The following changes are to make the font rescaling facility
18433 compatible with Emacs 21.
18434
18435 * xfaces.c (Vface_font_rescale_alist): Rename from
18436 Vface_resizing_fonts.
18437 (struct font_name): Rename member resizing_ratio to rescale_ratio.
18438 (font_rescale_ratio): Rename from font_resizing_ratio.
18439 (split_font_name): Set font->rescale_ratio.
18440 (better_font_p): Pay attention to font->rescale_ratio.
18441 (build_scalable_font_name): Likewise. Change RESX, and RESY
18442 fields.
18443 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
18444
184452008-02-01 Kenichi Handa <handa@m17n.org>
18446
18447 * coding.c (Qutf_16_be_nosig, Qutf_16_be, Qutf_16_le_nosig)
18448 (Qutf_16_le): Remove these variables.
18449 (syms_of_coding): Don't DEFSYM them.
18450 (decode_coding_utf_16): Fix handling of BOM.
18451 (encode_coding_utf_16): Fix handling of BOM.
18452
184532008-02-01 Kenichi Handa <handa@m17n.org>
18454
18455 * fileio.c (Finsert_file_contents): On replacing, before decoding
18456 the file into the work buffer, set point of the work buffer to the end.
18457
184582008-02-01 Dave Love <fx@gnu.org>
18459
18460 * coding.c (Fcheck_coding_systems_region): Fix type errors.
18461
184622008-02-01 Dave Love <fx@gnu.org>
18463
18464 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
18465 and fix C types.
18466
184672008-02-01 Kenichi Handa <handa@m17n.org>
18468
18469 * xdisp.c (SKIP_GLYPHS): New macro.
18470 (set_cursor_from_row): Pay attention to string display properties.
18471
18472 * category.c (copy_category_entry): Fix for the case that RANGE
18473 is an integer.
18474
18475 * xterm.c (x_encode_char): Call ccl_driver with the last arg Qnil.
18476
18477 * w32term.c (w32_encode_char): Call ccl_driver with the last arg Qnil.
18478
184792008-02-01 Kenichi Handa <handa@m17n.org>
18480
18481 * charset.c (Fcharset_id_internal): New function.
18482 (syms_of_charset): Defsubr it.
18483
18484 * coding.c (decode_coding_ccl, encode_coding_ccl): Call ccl_driver
18485 with the last arg charset_list acquired from coding.
18486 (Fdefine_coding_system_internal): For ccl-based coding system, fix
18487 the attribute coding_attr_ccl_valids.
18488
18489 * coding.h (enum define_coding_ccl_arg_index): Set the first
18490 member coding_arg_ccl_decoder to coding_arg_max.
18491
18492 * ccl.h (ccl_driver): Adjust prototype.
18493
18494 * ccl.c (CCL_DECODE_CHAR, CCL_ENCODE_CHAR): New macros.
18495 (ccl_driver): New arg CHARSET_LIST. Use the above macros instead
60612c8f 18496 of DECODE_CHAR, ENCODE_CHAR, CHAR_CHARSET.
aac0c6e3
MR
18497 (Fccl_execute, Fccl_execute_on_string): Call ccl_driver with the
18498 last arg Qnil.
18499
185002008-02-01 Kenichi Handa <handa@m17n.org>
18501
18502 * charset.h (ENCODE_CHAR): If the method is SUBSET or SUPERSET,
18503 call encode_char.
18504
18505 * charset.c (encode_char): Fix handling of methods SUBSET and SUPERSET.
18506
185072008-02-01 Dave Love <fx@gnu.org>
18508
18509 * composite.c (syms_of_composite): Make composition_hash_table weak.
18510
185112008-02-01 Kenichi Handa <handa@m17n.org>
18512
18513 * dispextern.h (check_face_attributes, generate_ascii_font_name)
18514 (font_name_registry): Don't extern them.
18515 (split_font_name_into_vector, build_font_name_from_vector): Extern them.
18516
18517 * fontset.h (Qfontset): Don't extern it.
18518 (new_fontset_from_font_name): Extern it.
18519
18520 * fontset.c: Give 8 extra slots to fontset objects.
18521 (Qfontset_info): New variable.
18522 (syms_of_fontset): Defsym it.
18523 (FONTSET_FALLBACK): New macro.
18524 (fontset_face): Try also the default fontset.
18525 (make_fontset): Realize a fallback fontset from the default fontset.
18526 (generate_ascii_font_name): Move from xfaces.c. Rewritten by
18527 using split_font_name_into_vector and build_font_name_from_vector.
18528 (Fset_fontset_font): Access the elements of font_spec by enum
18529 FONT_SPEC_INDEX. If font_spec is a string, extract the registry
18530 name by using split_font_name_into_vector.
18531 (Fnew_fontset): If no ASCII font is specified in FONTLIST,
18532 generate a proper font name from the fontset name. Update
18533 Vfontset_alias_alist.
18534 (n_auto_fontsets): New variable.
18535 (new_fontset_from_font_name): New function.
18536 (Ffont_info): Store the information about fonts generated from the
18537 default fontset in the first extra slot of the returned char-table.
18538
18539 * xfaces.c (generate_ascii_font_name): Move to fontset.c.
18540 (font_name_registry): Delete function.
18541 (split_font_name_into_vector): New function.
18542 (build_font_name_from_vector): New function.
18543 (font_list): The argument REGISTRY is now a list of registry names.
18544 (choose_face_font): If we are choosing an ASCII font, and ATTRS
18545 specifies an explicit font name, return the name as is. Make a
18546 list of registy names.
18547
18548 * xfns.c (x_set_font, x_create_tip_frame): Adjust for the change
18549 of x_new_fontset.
18550 (Fx_create_frame): Don't call x_new_fontset here. Just use
18551 x_list_fonts to check the existence of fonts.
18552
18553 * xterm.h (x_new_fontset): Adjust prototype.
18554
18555 * xterm.c (x_new_fontset): Change the arg FONTSETNAME to Lisp
18556 string. Use new_fontset_from_font_name to create a fontset from a
18557 font name.
18558
185592008-02-01 Kenichi Handa <handa@m17n.org>
18560
18561 * syntax.c (Vfind_word_boundary_function_table): New name for
18562 Vnext_word_boundary_function_table.
18563 (find-word-boundary-function-table): New name for
18564 next-word-boundary-function-table.
18565
185662008-02-01 Dave Love <fx@gnu.org>
18567
18568 * Makefile.in: Fix some dependencies.
18569
18570 * keymap.c (Fapropos_internal): Don't gcpro apropos_predicate but
18571 set it to nil before returning.
18572
18573 * composite.c (update_compositions): Fix type error.
18574
18575 * syntax.c (skip_chars, skip_syntaxes): Fix type errors.
18576
185772008-02-01 Kenichi Handa <handa@m17n.org>
18578
18579 * xterm.c (x_new_font): Optimize for the case that the font is
18580 already set for the frame.
18581
185822008-02-01 Kenichi Handa <handa@m17n.org>
18583
18584 * chartab.c (char_table_ascii): Check if the char table contents
18585 is sub-char-table or not.
18586 (char_table_set, char_table_set_range): Fix argument to
18587 char_table_ascii.
18588
18589 * coding.c (CATEGORY_MASK_RAW_TEXT): New macro.
18590 (detect_coding_utf_8, detect_coding_utf_16)
18591 (detect_coding_emacs_mule, detect_coding_iso_2022)
18592 (detect_coding_sjis, detect_coding_big5)
18593 (detect_coding_ccl, detect_coding_charset): Change argument MASK
18594 to DETECT_INFO. Update DETECT_INFO and return 1 if the byte
18595 sequence is valid in this coding system. Change callers.
18596 (MAX_ANNOTATION_LENGTH): New macro.
18597 (ADD_ANNOTATION_DATA): New macro.
18598 (ADD_COMPOSITION_DATA): Change argument. Change callers. Call
18599 ADD_ANNOTATION_DATA. Change the format of annotation data.
18600 (ADD_CHARSET_DATA): New macro.
18601 (emacs_mule_char): New argument ID. Change callers.
18602 (decode_coding_emacs_mule, decode_coding_iso_2022)
18603 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
18604 Produce charset annotation data in coding->charbuf.
18605 (encode_coding_emacs_mule, encode_coding_iso_2022): Pay attention
18606 to charset annotation data in coding->charbuf.
18607 (setup_coding_system): Add CODING_ANNOTATE_CHARSET_MASK
18608 coding->common_flags if the coding system is iso-2022 based and
18609 uses designation.
18610 (produce_composition): Adjust for the new annotation data format.
18611 (produce_charset): New function.
18612 (produce_annotation): Handle charset annotation.
18613 (handle_composition_annotation, handle_charset_annotation): New
18614 functions.
18615 (consume_chars): Handle charset annotation. Utilize the above two
18616 functions.
18617 (encode_coding_object): If SRC_OBJECT and DST_OBJECT are the same
18618 buffer, get the deleted text as a string and set
18619 coding->src_object to that string.
18620 (detect_coding, detect_coding_system): Use the new struct
18621 coding_detection_info.
18622
18623 * coding.h (struct coding_detection_info): New structure.
18624 (struct coding_system): Adjust prototype of the member `detector'.
18625 (CODING_ANNOTATE_CHARSET_MASK): New macro.
18626
186272008-02-01 Kenichi Handa <handa@m17n.org>
18628
18629 * insdel.c (insert_from_gap): Fix argument to offset_intervals.
18630
186312008-02-01 Dave Love <fx@gnu.org>
18632
18633 * keymap.c (apropos_predicate, apropos_accumulate): Declare static.
18634 (Fapropos_internal): Don't gcpro apropos_accumulate. Set result
18635 to new local and nullify apropos_accumulate before returning.
18636 (syms_of_keymap): Staticpro and initialize apropos_accumulate.
18637
186382008-02-01 Kenichi Handa <handa@m17n.org>
18639
18640 * charset.c (Fdefine_charset_internal): Setup charset.fast_map
18641 correctly.
e3eea1fc 18642
aac0c6e3
MR
186432008-02-01 Dave Love <fx@gnu.org>
18644
18645 * fns.c (Flanginfo): Call synchronize_system_time_locale.
18646
186472008-02-01 Kenichi Handa <handa@m17n.org>
18648
18649 The following changes are to make character composition happen
18650 automatically on displaying.
18651
18652 * Makefile.in (lisp, shortlisp): Add composite.elc.
18653
18654 * composite.h (Qauto_composed, Vauto_composition_function)
18655 (Qauto_composition_function): Extern them.
18656
18657 * composite.c (Vcomposition_function_table)
18658 (Qcomposition_function_table): Delete variables.
18659 (Qauto_composed, Vauto_composition_function)
18660 (Qauto_composition_function): New variables.
18661 (run_composition_function): Don't call
18662 compose-chars-after-function.
18663 (update_compositions): Clear `auto-composed' text property.
18664 (compose_chars_in_text): Delete this function.
18665 (syms_of_composite): Staticpro Qauto_composed and
18666 Qauto_composition_function. Declare Vauto_composition_function as
18667 a Lisp variable.
18668
18669 * dispextern.h (enum prop_idx): Add member AUTO_COMPOSED_PROP_IDX.
18670
18671 * xdisp.c (it_props): Add an entry for Qauto_composed.
18672 (handle_auto_composed_prop): New function.
18673
18674 * xselect.c (selection_data_to_lisp_data): Don't call
18675 compose_chars_in_text.
18676
186772008-02-01 Dave Love <fx@gnu.org>
18678
18679 * keyboard.c (read_char): Modify checking around use of
18680 Vkeyboard_translate_table.
18681
18682 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
18683 and fix C types.
18684
186852008-02-01 Kenichi Handa <handa@m17n.org>
18686
18687 * coding.c (decode_coding_utf_8, decode_coding_emacs_mule)
18688 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
18689 (decode_coding_charset, produce_chars): When eol_type is Qdos, handle
18690 the case that the last byte is '\r' correctly.
18691 (decode_coding): Flush out the unprocessed data correctly.
18692 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK bit of coding->mode.
18693
186942008-02-01 Dave Love <fx@gnu.org>
18695
18696 * xterm.c (XTread_socket): Fix changes for defined keysyms.
18697 Add XK_ISO... case.
18698 (xaw_scroll_callback): Revert last change.
18699
187002008-02-01 Kenichi Handa <handa@m17n.org>
18701
18702 * charset.c (Fset_charset_priority): Update Viso_2022_charset_list.
18703
187042008-02-01 Kenichi Handa <handa@m17n.org>
18705
18706 * xfaces.c (Vface_resizing_fonts): New variable.
18707 (struct font_name): New member `resizing_ratio'.
18708 (font_resizing_ratio): New function.
18709 (split_font_name): Set font->resizing_ratio.
18710 (better_font_p): Pay attention to font->resizing_ratio.
18711 (build_scalable_font_name): Likewise. Don't change POINT_SIZE,
18712 RESX, and RESY fields.
18713 (try_alternative_families): Try scalable fonts if
18714 Vscalable_fonts_allowed is not Qt.
18715 (syms_of_xfaces): Declare Vface_resizing_fonts as a Lisp variable.
18716
187172008-02-01 Dave Love <fx@gnu.org>
18718
18719 * xterm.c (xaw_scroll_callback): Cast correctly.
18720
187212008-02-01 Dave Love <fx@gnu.org>
18722
18723 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extend.
18724 (lispy_kana_keys): Comment out.
18725 (make_lispy_event) [XK_kana_A]: Comment out.
18726
18727 * xterm.c (xaw_scroll_callback): Cast call_data.
18728 (XTread_socket): Deal with ASCII keysyms.
18729 (syms_of_xterm) <Vx_keysym_table>: Fix args of make_hash_table.
18730
187312008-02-01 Dave Love <fx@gnu.org>
18732
18733 * xterm.c (Vx_keysym_table): New.
18734 (syms_of_xterm): Initialize it.
18735 (XTread_socket): Use it.
18736 From head: Eliminate incorrect optimization that tried to avoid
18737 decoding the output of X*LookupString.
18738 (x_get_font_repertory): Delete charset declaration.
18739
187402008-02-01 Kenichi Handa <handa@m17n.org>
18741
18742 * coding.c (detect_coding_charset): If only ASCII bytes are found,
18743 return 0.
18744 (Fdefine_coding_system_internal): Setup
18745 CODING_ATTR_ASCII_COMPAT (attrs) correctly.
18746
187472008-02-01 Dave Love <fx@gnu.org>
18748
18749 * coding.c (Fcheck_coding_system): Doc fix.
18750
18751 * editfns.c (Finsert_byte): Return a proper value.
18752
187532008-02-01 Kenichi Handa <handa@m17n.org>
18754
18755 * coding.c (decode_coding): Fix args to translate_chars. Pay
18756 attention to Vstandard_translation_table_for_decode.
18757 (encode_coding): Fix args to translate_chars. Pay attention to
18758 Vstandard_translation_table_for_encode.
18759
18760 * data.c (Faset): Check NEWELT by ASCII_CHAR_P, not by
18761 SINGLE_BYTE_CHAR_P.
18762
18763 * editfns.c (general_insert_function): Check VAL by ASCII_CHAR_P,
18764 not by SINGLE_BYTE_CHAR_P.
18765
18766 * fns.c (concat): Check CH by ASCII_CHAR_P, not by
18767 SINGLE_BYTE_CHAR_P.
18768
18769 * insdel.c (copy_text): Check C by ASCII_CHAR_P, not by
18770 SINGLE_BYTE_CHAR_P.
18771
18772 * keymap.c (Ftext_char_description): Check C by ASCII_CHAR_P, not
18773 by SINGLE_BYTE_CHAR_P.
18774
18775 * search.c (Freplace_match): Check C by ASCII_CHAR_P, not by
18776 SINGLE_BYTE_CHAR_P.
18777
187782008-02-01 Dave Love <fx@gnu.org>
18779
18780 * fns.c (Fstring_as_multibyte, Fstring_to_multibyte): Doc fix.
18781
187822008-02-01 Dave Love <fx@gnu.org>
18783
18784 * fns.c (Flanginfo): Fix typo.
18785
18786 * unexelf.c (unexec): Make last change conditional on Irix 6.5.
18787
187882008-02-01 Kenichi Handa <handa@m17n.org>
18789
18790 * coding.c (detect_coding_utf_8, detect_coding_utf_16)
18791 (detect_coding_emacs_mule, detect_coding_iso_2022)
18792 (detect_coding_sjis, detect_coding_big5, detect_coding_ccl): Check
18793 incomplete byte sequence. Don't update *mask when correctly detected.
18794 (decode_coding_sjis): Fix decoding of katakana-jisx0201.
18795 (detect_eol): Delete the argument CODING, and add the argument CATEGORY.
18796 (detect_coding, detect_coding_system): Adjust for the changes above.
18797
187982008-02-01 Kenichi Handa <handa@m17n.org>
18799
18800 * character.c (char_string): Rename from
18801 char_string_with_unification. Pay attention to CHAR_MODIFIER_MASK.
18802 (string_char): Rename from string_char.
18803
18804 * character.h (CHAR_STRING, CHAR_STRING_ADVANCE): Call char_string
18805 if C is greater than MAX_3_BYTE_CHAR.
18806 (STRING_CHAR, STRING_CHAR_AND_LENGTH, STRING_CHAR_ADVANCE): Call
18807 string_char instead of string_char_with_unification.
18808
188092008-02-01 Dave Love <fx@gnu.org>
18810
18811 * coding.c (decode_coding_utf_8): Treat surrogates as invalid.
18812
188132008-02-01 Kenichi Handa <handa@m17n.org>
18814
18815 * keymap.c (push_key_description): Pay attention to force_multibyte.
18816
18817 * regex.c (re_search_2): Fix for the case of unibyte buffer.
18818
188192008-02-01 Dave Love <fx@gnu.org>
18820
18821 * charset.c (define_charset_internal): Rename `supprementary'.
18822
18823 * Makefile.in (lisp, shortlisp): Remove latin-N.
18824
188252008-02-01 Dave Love <fx@gnu.org>
18826
18827 * xfns.c (x_window, x_window): Use use_xim.
18828
18829 * xterm.c (use_xim): Initialize.
18830 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
18831 (x_term_init): Maybe set use_xim.
18832
18833 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
18834
188352008-02-01 Kenichi Handa <handa@m17n.org>
18836
18837 * search.c (search_buffer): Fix case-fold-search of multibyte
18838 characters.
18839 (boyer_moore): Rename the last argument to char_high_bits.
18840
188412008-02-01 Kenichi Handa <handa@m17n.org>
18842
18843 * xdisp.c (display_string): Fix for the case of zero width glyph.
18844
18845 * xfns.c (x_set_font): Change the error message of the case that
18846 x_new_fontset returns Qt.
18847
18848 * xfaces.c (set_lface_from_font_name): Reject the default fontset.
18849 (Finternal_set_lisp_face_attribute): Use signal_error for the
18850 error of invalid fontset.
18851
18852 * xterm.c (x_new_fontset): If FONTSETNAME specifies the default
18853 fontset, return Qt.
18854
188552008-02-01 Dave Love <fx@gnu.org>
18856
18857 * unexelf.c (unexec): Make .got handling not SGI-specific.
18858
18859 * syntax.c (syms_of_syntax) <multibyte-syntax-as-symbol>: Doc fix.
18860
18861 * regex.c: Use `ifdef HAVE_ALLOCA_H', not `if HAVE_ALLOCA_H'.
18862
18863 * keyboard.c (read_key_sequence): Fix type error.
18864
18865 * buffer.c (Fset_buffer_multibyte, Fset_buffer_multibyte): Fix
18866 type error.
18867
18868 * fontset.c (fontset_add): Return Lisp_Object.
18869
188702008-02-01 Dave Love <fx@gnu.org>
18871
18872 * charset.h (charset_ordered_list_tick): Declare extern.
18873
188742008-02-01 Kenichi Handa <handa@m17n.org>
18875
18876 The following changes (and some of 2008-02-01 changes of mine) are
18877 for handling syntax, category, and case conversion for unibyte
18878 characters by converting them to multibyte on the fly. With these
18879 changes, we don't have to setup syntax and case tables for unibyte
18880 characters in each language environment.
18881
18882 * abbrev.c (Fexpand_abbrev): Convert a unibyte character to
18883 multibyte if necessary.
18884
18885 * bytecode.c (Fbyte_code): Likewise.
18886
18887 * character.h (LEADING_CODE_LATIN_1_MIN)
18888 (LEADING_CODE_LATIN_1_MAX): New macros.
18889 (unibyte_to_multibyte_table): Extern it.
18890 (unibyte_char_to_multibyte): New macro.
18891 (MAKE_CHAR_MULTIBYTE): Use unibyte_to_multibyte_table.
18892 (CHAR_LEADING_CODE): New macro.
18893 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): New macro.
18894
18895 * character.c (unibyte_to_multibyte_table): New variable.
18896 (unibyte_char_to_multibyte): Move to character.h and define as macro.
18897 (multibyte_char_to_unibyte): If C is an eight-bit character,
18898 convert it to the corresponding byte value.
18899
18900 * charset.c (Fset_unibyte_charset): If the dimension of CHARSET is
18901 not 1, signals an error. Update the elements of
18902 unibyte_to_multibyte_table.
18903 (init_charset_once): Initialize unibyte_to_multibyte_table.
18904 (syms_of_charset): Define the charset `iso-8859-1'.
18905
18906 * cmds.c (internal_self_insert): In a multibyte buffer, insert C
18907 as is without converting it to unibyte. In a unibyte buffer,
18908 convert C to multibyte before checking the syntax.
18909
18910 * lisp.h (unibyte_char_to_multibyte): Delete extern.
18911
18912 * minibuf.c (Fminibuffer_complete_word): Use the macro
18913 FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE.
18914
18915 * regex.h (struct re_pattern_buffer): New member target_multibyte.
18916
18917 * regex.c (RE_TARGET_MULTIBYTE_P): New macro.
18918 (GET_CHAR_BEFORE_2): Check target_multibyte, not multibyte. If
18919 that is zero, convert an eight-bit char to multibyte.
18920 (MAKE_CHAR_MULTIBYTE, CHAR_LEADING_CODE): New dummy new macros for
18921 non-emacs case.
18922 (PATFETCH): Convert an eight-bit char to multibyte.
18923 (HANDLE_UNIBYTE_RANGE): New macro.
18924 (regex_compile): Setup the compiled pattern for multibyte chars
18925 even if the given regex string is unibyte. Use PATFETCH_RAW
18926 instead of PATFETCH in many places. To handle `charset'
18927 specification of unibyte, call HANDLE_UNIBYTE_RANGE. Use bitmap
18928 only for ASCII chars.
18929 (analyse_first) <exactn>: Simplify because the compiled pattern
18930 is multibyte.
18931 <charset_not>: Setup fastmap from bitmap only for ASCII chars.
18932 <charset>: Use CHAR_LEADING_CODE to get leading codes.
18933 <categoryspec>: If multibyte, setup fastmap only for ASCII chars here.
18934 (re_compile_fastmap) [emacs]: Call analyse_first with the arg
18935 multibyte always 1.
18936 (re_search_2): In emacs, set the locale variable multibyte to 1,
18937 otherwise to 0. New local variable target_multibyte. Check it
18938 to decide the multibyteness of STR1 and STR2. If
18939 target_multibyte is zero, convert unibyte chars to multibyte
18940 before translating and checking fastmap.
18941 (TARGET_CHAR_AND_LENGTH): New macro.
18942 (re_match_2_internal): In emacs, set the locale variable multibyte
18943 to 1, otherwise to 0. New local variable target_multibyte. Check
18944 it to decide the multibyteness of STR1 and STR2. Use
18945 TARGET_CHAR_AND_LENGTH to fetch a character from D.
18946 <charset, charset_not>: If multibyte is nonzero, check fastmap
18947 only for ASCII chars. Call bcmp_translate with
18948 target_multibyte, not with multibyte.
18949 <begline>: Declare the local variable C as `unsigned'.
18950 (bcmp_translate): Change the last arg name to target_multibyte.
18951
18952 * search.c (compile_pattern_1): Don't adjust the multibyteness of
18953 the regexp pattern and the matching target. Set cp->buf.multibyte
18954 to the multibyteness of the regexp pattern. Set
18955 cp->but.target_multibyte to the multibyteness of the matching target.
18956 (wordify): Use FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE instead of
18957 FETCH_STRING_CHAR_ADVANCE.
18958 (Freplace_match): Convert unibyte chars to multibyte.
18959
18960 * syntax.c (char_quoted, back_comment, scan_words)
18961 (Fforward_comment, scan_lists, Fbackward_prefix_chars)
18962 (scan_sexps_forward): Use FETCH_CHAR_AS_MULTIBYTE to convert
18963 unibyte chars to multibyte.
18964 (skip_chars): Delete the arg syntaxp, and move the code for
18965 handling syntaxes to skip_syntaxes. Change callers.
18966 Fix the case that the multibyteness of STRING and the current
18967 buffer doesn't match.
18968 (skip_syntaxes): New function.
18969 (SYNTAX_WITH_MULTIBYTE_CHECK): Check C by ASCII_CHAR_P, not by
18970 SINGLE_BYTE_CHAR_P.
18971
189722008-02-01 Kenichi Handa <handa@m17n.org>
18973
18974 * xfaces.c (QCfontset): New variable.
18975 (LFACE_FONTSET): New macro.
18976 (check_lface_attrs): Check also LFACE_FONTSET_INDEX.
18977 (set_lface_from_font_name): Setup LFACE_FONTSET (lface).
18978 (Finternal_set_lisp_face_attribute)
18979 (Finternal_get_lisp_face_attribute): Handle QCfontset.
18980 (lface_same_font_attributes_p): Fix checking of LFACE_FONT_INDEX,
18981 check also LFACE_FONTSET_INDEX.
18982 (face_fontset): Check attrs[LFACE_FONTSET_INDEX], not
18983 attrs[LFACE_FONT_INDEX].
18984 (syms_of_xfaces): Intern and staticpro QCfontset.
18985
18986 * dispextern.h (enum lface_attribute_index): New member
18987 LFACE_FONTSET_INDEX.
18988
18989 * fns.c (base64_encode_1): Handle eight-bit chars correctly.
18990
189912008-02-01 Kenichi Handa <handa@m17n.org>
18992
18993 * coding.c (coding_set_destination): Fix coding->destination for
18994 the case converting a region.
18995 (encode_coding_utf_8): Encode eight-bit chars as single byte.
18996 (encode_coding_object): Fix coding->dst_pos and
18997 coding->dst_pos_byte for the case converting a region.
18998
18999 * insdel.c (insert_from_gap): Make it work even if PT != GTP.
19000
19001 * character.h (BYTE8_STRING): New macro.
19002
19003 * fns.c (base64_decode_1): Insert eight-bit chars correctly.
19004
190052008-02-01 Kenichi Handa <handa@m17n.org>
19006
19007 * xdisp.c (get_next_display_element): Don't display unibyte 8-bit
19008 characters by octal form.
19009
19010 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
19011
19012 * buffer.h (_fetch_multibyte_char_len): Delete extern.
19013 (FETCH_MULTIBYTE_CHAR, BUF_FETCH_MULTIBYTE_CHAR): Don't use
19014 _fetch_multibyte_char_len.
19015 (FETCH_CHAR_AS_MULTIBYTE): New macro.
19016
19017 * casetab.c (set_canon, set_identity, shuffle): Simplify.
19018
19019 * casefiddle.c (casify_object): Simplify. Handle the case that
19020 the case conversion change the byte length.
19021 (casify_region): Likewise.
19022
19023 * character.h (MAKE_CHAR_UNIBYTE, MAKE_CHAR_MULTIBYTE): New macros.
19024
19025 * character.c (_fetch_multibyte_char_len): Delete this variable.
19026 (syms_of_character): Setup Vprintable_chars.
19027
19028 * editfns.c (Fchar_equal): Fix for the unibyte case.
19029 (Finsert_byte): New function.
19030 (syms_of_editfns): Defsubr it.
19031
19032 * keyboard.c (read_key_sequence): Use ~CHAR_MODIFIER_MASK instead
19033 of direct code 0x3ffff.
19034
19035 * search.c (Freplace_match): Fix for the unibyte case.
19036
190372008-02-01 Kenichi Handa <handa@m17n.org>
19038
19039 * lread.c (safe_to_load_p): Fix the logic.
19040
19041 * syntax.c (scan_words): Don't treat characters belonging to
19042 different scripts as constituting a word.
19043
19044 * editfns.c (Fformat): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
19045
19046 * fontset.c (Fset_fontset_font): Treat `ascii' as charset, not script.
19047
19048 * emacs.c (main): In the case of --unibyte, instead of aborting on
19049 finding non-empty buffer, make it unibyte.
19050
190512008-02-01 Kenichi Handa <handa@m17n.org>
19052
19053 * xterm.c (x_new_fontset): Call `create-fontset-from-ascii-font'
19054 to create a fontset.
19055
190562008-02-01 Dave Love <fx@gnu.org>
19057
19058 * character.c (Funibyte_char_to_multibyte): Doc fix.
19059
19060 * xfns.c [HAVE_STDLIB_H]: Fix last change.
19061
190622008-02-01 Kenichi Handa <handa@m17n.org>
19063
19064 * fontset.c (fontset_add): Make the type `int'.
19065 (fontset_id_valid_p): Define it if FONTSET_DEBUG is defined.
19066
19067 * character.c (unibyte_char_to_multibyte)
19068 (multibyte_char_to_unibyte, Funibyte_char_to_multibyte): Refer to
19069 charset_unibyte, not charset_primary.
19070
19071 * charset.h (charset_unibyte): Extern it instead of charset_primary.
19072
19073 * charset.c (charset_unibyte): Rename from charset_primary.
19074 (Funibyte_charset): Rename from Fprimary_charset.
19075 (Fset_unibyte_charset): Rename from Fset_primary_charset.
19076 (syms_of_charset): Adjust for the above changes.
19077
19078 * w32term.c (x_produce_glyphs): Use ASCII_CHAR_P, not
19079 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
19080 it->multibyte_p is zero.
19081
19082 * lisp.h (nonascii_insert_offset, Vnonascii_translation_table):
19083 Delete extern.
19084
190852008-02-01 Kenichi Handa <handa@m17n.org>
19086
19087 * coding.c (Fdefine_coding_system_internal): Fix category setting
19088 for a coding system of type iso-2022.
19089
190902008-02-01 Kenichi Handa <handa@m17n.org>
19091
19092 * fontset.h (FS_LOAD_FONT): Call fs_load_font with the arg CHARSET -1.
19093
190942008-02-01 Kenichi Handa <handa@m17n.org>
19095
19096 * syntax.c (Vnext_word_boundary_function_table): New variable.
19097 (next-word-boundary-function-table): Declare it as a Lisp variable
19098 in syms_of_syntax.
19099 (scan_words): Call functions in Vnext_word_boundary_function_table
19100 if any.
19101
19102 * xterm.c (x_load_font): Initialize fontp->fontset to -1.
19103
19104 * fontset.c (fs_load_font): If fontp->charset is not negative,
19105 return fontp without setting its members.
19106
191072008-02-01 Dave Love <fx@gnu.org>
19108
19109 * xfns.c [HAVE_STDLIB_H]: Change logic (instead of fixing typo).
19110
19111 * m/sparc.h (HAVE_ALLOCA): Delete.
19112
19113 * s/irix6-5.h: Don't include strings.h.
19114 (bcopy, bzero, bcmp): Don't undef.
19115
19116 * s/irix6-0.h (bcopy, bzero, bcmp): Don't undef.
19117
19118 * s/usg5-4.h (NO_SIOCTL_H): Don't define.
19119 (TIOCSIGSEND): Don't test IRIX6.
19120 (bcopy, bzero, bcmp): Define conditionally.
19121
191222008-02-01 Kenichi Handa <handa@m17n.org>
19123
19124 * buffer.c (Qas, Qmake, Qto): New variables.
19125 (Fset_buffer_multibyte): New optional arg METHOD. Change caller.
19126 (syms_of_buffer): Intern and staticpro Qas, Qmake, and Qto.
19127
19128 * callproc.c (Fcall_process): Don't call insert_1_both directly if
19129 we are inserting a process output into a multibyte buffer.
19130
19131 * character.h (CHAR_TO_BYTE8): If C is not eight-bit char, call
19132 multibyte_char_to_unibyte.
19133
19134 * character.c (Funibyte_char_to_multibyte): If C can't be decoded
19135 by the primary charset, make it eight-bit char.
19136 (Fmultibyte_char_to_unibyte): Call CHAR_TO_BYTE8.
19137
19138 * charset.c (charset_eight_bit, Qeight_bit_control): New variables.
19139 (charset_8_bit__control, charset_8_bit_graphic)
19140 (Qeight_bit_control, Qeight_bit_graphic): Delete these variables.
19141 (define_charset_internal): New function.
19142 (syms_of_charset): Call define_charset_internal for pre-defined
19143 charsets.
19144
19145 * charset.h (charset_8_bit): Extern it.
19146
19147 * coding.c (make_conversion_work_buffer): Adjust for the change
19148 of Fset_buffer_multibyte.
19149 (encode_coding_raw_text): Increment p0 in the loop.
19150
19151 * lisp.h (Fset_buffer_multibyte): Adjust prototype.
19152
19153 * xdisp.c (setup_echo_area_for_printing, set_message_1): Adjust
19154 for the change of Fset_buffer_multibyte.
19155
19156 * fns.c (Fstring_to_multibyte): New function.
19157 (syms_of_fns): Declare Fstring_to_multibyte as Lisp subroutine.
19158
191592008-02-01 Dave Love <fx@gnu.org>
19160
19161 * xfns.c (x_put_x_image): Declare args.
19162
19163 * xfaces.c (font_name_registry, choose_face_font): Delete unused vars.
19164 (try_font_list): Declare an arg.
19165
19166 * xdisp.c (message2_nolog, set_message): Declare an arg.
19167
19168 * terminfo.c (tparam): Declare an arg. Use P_ to declare tparm.
19169
19170 * syntax.c (scan_sexps_forward): Declare an arg.
19171
19172 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
19173 Declare an arg.
19174
19175 * lisp.h (Fnew_fontset): Declare.
19176
19177 * keymap.c (push_key_description): Call CHARACTERP correctly.
19178
19179 * fontset.c (fontset_add): Declare args. Call make_number correctly.
19180 (face_for_char): Delete unused vars.
19181 (Fset_fontset_font): Doc fix. Delete unused vars.
19182
19183 * doc.c (Fsubstitute_command_keys): Delete unused vars.
19184
19185 * composite.c (update_compositions): Declare arg.
19186
19187 * cm.c (calccost, cmgoto): Declare args.
19188
19189 * charset.c: Remove `emacs' conditional. Doc fixes.
19190 (map_char_table_for_charset): Declare.
19191
19192 * character.c (syms_of_character) <translation-table-vector>: Doc fix.
19193
19194 * ccl.c: Remove `emacs' conditional.
19195
191962008-02-01 Kenichi Handa <handa@m17n.org>
19197
19198 The following changes are to allow specifying multiple font
19199 patterns for a character range (specified by script or charset).
19200
19201 * Makefile.in (abbrev.o): Depend on syntax.h.
19202 (xfaces.o): Depend on charset.h.
19203
19204 * alloc.c (Fmake_string): Use ASCII_CHAR_P, not
19205 SINGLE_BYTE_CHAR_P.
19206
19207 * ccl.c (Fccl_execute_on_string): Add `const' to local variables.
19208
19209 * character.h (Vchar_script_table): Extern it.
19210
19211 * character.c (Vscript_alist): Delete.
19212 (Vchar_script_table, Qchar_script_table): New variable.
19213 (syms_of_character): Declare Vchar_script_table as a lisp variable
19214 and initialize it.
19215
19216 * chartab.c (Fmake_char_table): Doc fix. If PURPOSE doesn't
19217 have property char-table-extra-slots, make no extra slot.
19218
19219 * dispextern.h (struct face): Delete member `charset'.
19220 (FACE_SUITABLE_FOR_CHAR_P, FACE_FOR): Use ASCII_CHAR_P, not
19221 SINGLE_BYTE_CHAR_P.
19222 (choose_face_font, lookup_non_ascii_face, font_name_registry):
19223 Add prototypes.
19224 (lookup_face, lookup_named_face, lookup_derived_face): Fix prototype.
19225 (generate_ascii_font_name): Rename from generate_ascii_font.
19226
19227 * fontset.h (get_font_repertory_func): New prototype.
19228 (make_fontset_for_ascii_face, fs_load_font): Fix prototypes.
19229 (FS_LOAD_FONT): Call fs_load_font with the 3rd arg charset_ascii.
19230
19231 * fontset.c (Qprepend, Qappend): New variables.
19232 (FONTSET_CHARSET_ALIST, FONTSET_FACE_ALIST): Delete.
19233 (FONTSET_NOFONT_FACE, FONTSET_REPERTORY): New macros.
19234 (FONTSET_REF): Optimize if FONTSET is Vdefault_fontset.
19235 (FONTSET_REF_AND_RANGE, FONTSET_ADD): New macros.
19236 (fontset_ref_and_range, fontset_add, reorder_font_vector)
19237 (load_font_get_repertory): New functions.
19238 (fontset_set): Delete.
19239 (fontset_face): New arg FACE. Return face ID, not face.
19240 Complete re-write to handle new fontset structure. Change caller.
19241 (free_face_fontset): Use ASET istead of AREF (X) = Y.
19242 (face_for_char): Don't call lookup_face.
19243 (make_fontset_for_ascii_face): New arg FACE.
19244 (fs_load_font): New arg CHARSET_ID. Don't check
19245 Vfont_encoding_alist here.
19246 (find_font_encoding): New function.
19247 (list_fontsets): Use STRINGP, not ! NILP.
19248 (accumulate_script_ranges): New function.
19249 (Fset_fontset_font, Fnew_fontset, Ffontset_info): Completely
19250 re-written to handle new fontset structure.
19251 (Ffontset_font): Return a copy of element.
19252 (syms_of_fontset): Define symbols Qprepend and Qappend. Fix
19253 docstring of font-encoding-alist.
19254
19255 * lisp.h (CHAR_TABLE_REF): Remove unnecessary check (IDX >= 0).
19256 (Fset_fotset_font): Fix arguments to 5.
19257
19258 * msdos.c (XMenuActivate): Adjust for the change of lookup_derived_face.
19259
19260 * xdisp.c (message_dolog, set_message_1, extend_face_to_end_of_line):
19261 Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
19262 (highlight_trailing_whitespace): Adjust for the change of
19263 lookup_named_face.
19264
19265 * xfaces.c: Include charset.h.
19266 (load_face_font): Delete argument C. Change caller.
19267 (generate_ascii_font_name): Rename from generate_ascii_font.
19268 (font_name_registry): New function.
19269 (cache_face): Store ascii faces before non-ascii faces in buckets.
19270 (lookup_face): Delete arguments C and BASE_FACE. Change caller.
19271 Lookup only ascii faces.
19272 (lookup_non_ascii_face): New function.
19273 (lookup_named_face): Delete argument C. Change caller.
19274 (lookup_derived_face): Delete argument C. Change caller.
19275 (try_font_list): New arg PATTERN. Change caller. If PATTERN is
19276 a string, just call font_list with it.
19277 (choose_face_font): Delete arguments FACE and C. New arg
19278 FONT_SPEC. Change caller.
19279 (realize_face, realize_x_face): Delete arguments C and BASE_FACE.
19280 Change caller.
19281 (realize_non_ascii_face): New function.
19282 (realize_x_face): Call load_face_font here.
19283 (realize_tty_face): Delete argument C. Change caller.
19284 (compute_char_face): If CH is not ascii, call FACE_FOR_CHAR to
19285 get a face ID.
19286 (dump_realized_face): Don't print charset of FACE.
19287
19288 * xfns.c (x_set_font): Always call x_new_fontset and
19289 store_frame_parameter.
19290 (Fx_create_frame): Call x_new_fontset, not x_new_font.
19291 (syms_of_xfns): Set get_font_repertory_func to x_get_font_repertory.
19292
19293 * xterm.h (x_get_font_repertory): Extern it.
19294
19295 * xterm.c (x_produce_glyphs): Use ASCII_CHAR_P, not
19296 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
19297 it->multibyte_p is zero.
19298 (XTread_socket): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
19299 (x_new_fontset): If FONTSETNAME doesn't match any existing
19300 fontsets, create a new one.
19301 (x_get_font_repertory): New function.
19302
193032008-02-01 Kenichi Handa <handa@m17n.org>
19304
19305 * coding.c (Ffind_coding_systems_region_internal): Detect an
19306 ASCII only string correctly.
19307
19308 * lread.c (Fload): Don't load with Qload_force_doc_strings t if
19309 version is 0.
19310
193112008-02-01 Kenichi Handa <handa@m17n.org>
19312
19313 * lread.c: Include "coding.h".
19314 (Qget_emacs_mule_file_char, Qload_force_doc_strings)
19315 (load_each_byte, unread_char): New variables.
19316 (readchar_backlog): Delete.
19317 (readchar): Return a character unless load_each_byte is nonzero.
19318 Handle the case that readcharfun is Qget_emacs_mule_file_char or a
19319 cons. If unread_char is not -1, simply return it.
19320 (unreadchar): Handle the case that readcharfun is
19321 Qget_emacs_mule_file_char or a cons. Set unread_char if necessary.
19322 (read_multibyte): Delete.
19323 (readbyte_for_lambda, readbyte_from_file, readbyte_from_string)
19324 (read_emacs_mule_char): New functions.
19325 (Fload): Even if the file doesn't have the extension ".elc", if
19326 safe_to_load_p returns a positive version number, assume that the
19327 file contains bytecompiled code. If the version is less than 22,
19328 load the file while decoding multibyte sequences by emacs-mule.
19329 (readevalloop): Don't use readchar_backlog.
19330 (Fread): Likewise. Pay attention to the case that STREAM is a cons.
19331 (Fread_from_string): Pay attention to the case that STREAM is a cons.
19332 (read_escape): Delete the arg BYTEREP.
19333 (read1): Set load_each_byte to 1 temporarily while handling
19334 #@NUMBER. Don't call read_multibyte.
19335 (read_vector): Call Fread with a cons. If readcharfun is
19336 Qget_emacs_mule_file_char, decode the read string by emacs-mule.
19337 (read_list): If doc_reference is 2, make the cdr part string as unibyte.
19338 (syms_of_lread): Intern and staticpro Qget_emacs_mule_file_char
19339 and Qload_force_doc_strings.
19340
193412008-02-01 Kenichi Handa <handa@m17n.org>
19342
19343 * xdisp.c (face_before_or_after_it_pos): Call
19344 FETCH_MULTIBYTE_CHAR with byte postion, not char position.
19345
193462008-02-01 Kenichi Handa <handa@m17n.org>
19347
19348 * character.h (TRAILING_CODE_P): New macro.
19349 (MAYBE_UNIFY_CHAR): Adjust for the change of Funify_charset.
19350 (string_char_with_unification): Fix prototype.
19351 (Vscript_alist): Extern it.
19352
19353 * character.c (Vscript_alist): New variable.
19354 (string_char_with_unification, str_as_unibyte)
19355 (string_escape_byte8): Add `const' to local variables.
19356 (syms_of_character): Declare script-alist as a Lisp variable.
19357
19358 * charset.h (Vcharset_ordered_list): Extern it.
19359 (charset_ordered_list_tick): Extern it.
19360 (EMACS_MULE_LEADING_CODE_PRIVATE_11)
19361 (EMACS_MULE_LEADING_CODE_PRIVATE_12)
19362 (EMACS_MULE_LEADING_CODE_PRIVATE_21)
19363 (EMACS_MULE_LEADING_CODE_PRIVATE_22): New macros.
19364 (Funify_charset): Adjust for the change of Funify_charset.
19365
19366 * charset.c (charset_ordered_list_tick): New variable.
19367 (Fdefine_charset_internal): Increment charset_ordered_list_tick.
19368 (Funify_charset): New optional arg DEUNIFY. If it is non-nil,
19369 deunify intead of unify a charset.
19370 (string_xstring_p): Add `const' to local variables.
19371 (find_charsets_in_text): Add `const' to arguments and local variables.
19372 (encode_char): Adjust for the change of Funify_charset. Fix
19373 detecting of invalid code.
19374 (Fset_charset_priority): Increment charset_ordered_list_tick.
19375 (Fmap_charset_chars): Fix handling of default value for FROM_CODE
19376 and TO_CODE.
19377
19378 * coding.c (LEADING_CODE_PRIVATE_11, LEADING_CODE_PRIVATE_12)
19379 (LEADING_CODE_PRIVATE_21, LEADING_CODE_PRIVATE_22): Delete macros.
19380 Changed callers to use EMACS_MULE_LEADING_CODE_PRIVATE_11, etc.
19381 (decode_coding_ccl, consume_chars)
19382 (Ffind_coding_systems_region_internal)
19383 (Fcheck_coding_systems_region): Add `const' to local variables.
19384
19385 * print.c (print_object): Use octal form for printing the
19386 contents of a bool vector.
19387
193882008-02-01 Dave Love <fx@gnu.org>
19389
19390 * lread.c (Fload) <!load_dangerous_libraries>: Don't leak fd.
19391 <version == 20>: Refuse to load.
19392
193932008-02-01 Dave Love <fx@gnu.org>
19394
19395 * fns.c: Move coding.h.
19396 (Qcodeset, Qdays, Qmonths): New.
19397 (concat): Use CHARACTERP instead of INTEGERP.
19398 (Flocale_codeset): Delete.
19399 (Flanginfo): New function.
19400 (syms_of_fns): Change accordingly.
19401
19402 * coding.c (adjust_coding_eol_type): Fix eol_type/eol_seen mixup.
19403
194042008-02-01 Dave Love <fx@gnu.org>
19405
19406 * casetab.c (init_casetab_once, init_casetab_once): Fix
19407 CHAR_TABLE_SET call.
19408
19409 * category.c (Fmodify_category_entry): Fix CATEGORY_MEMBER call.
19410
19411 * character.c (syms_of_character): Fix CHAR_TABLE_SET call.
19412
19413 * charset.c (Fmap_charset_chars): Check args. Convert Lisp types.
19414 (load_charset_map, Fdeclare_equiv_charset, Fencode_char)
19415 (Fset_charset_priority, syms_of_charset): Convert Lisp types.
19416
19417 * charset.h (CHECK_CHARSET_GET_ID): Use XINT on AREF result.
19418
19419 * coding.c (ENCODE_DESIGNATION, decode_eol)
19420 (make_conversion_work_buffer, code_conversion_restore)
19421 (Fdefine_coding_system_internal): Convert Lisp types.
19422 (code_conversion_restore): Use EQ, not ==.
19423 (Fencode_coding_string): Fix code_convert_string call.
19424
19425 * coding.h (code_convert_region): Fix prototype.
19426
19427 * dispextern.h (redraw_frame, redraw_garbaged_frames): Remove.
19428
19429 * fontset.c (fontset_ref, fontset_set, fs_load_font)
19430 (Ffontset_info): Convert Lisp types.
19431
19432 * syntax.h (SYNTAX_ENTRY_INT): Don't use make_number.
19433
19434 * xterm.c (note_mouse_movement): Fix call of window_from_coordinates.
19435
19436 * xdisp.c (display_mode_element): Fix call of Fset_text_properties.
19437
19438 * chartab.c: Include "...h", not <...h> in some cases.
19439
19440 * callproc.c (Fcall_process): Remove unused variables.
19441
194422008-02-01 Dave Love <fx@gnu.org>
19443
19444 * coding.c (Fset_coding_system_priority): Allow null arg list.
19445
194462008-02-01 Dave Love <fx@gnu.org>
19447
19448 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
19449 (Fself_insert_and_exit): Use CHARACTERP.
19450
19451 * callproc.c (Fcall_process): Remove unused vars.
19452
19453 * xterm.c (XTread_socket): Add extra dead keysyms.
19454
19455 * xdisp.c (decode_mode_spec_coding): Use CHARACTERP.
19456
19457 * dispextern.h: Remove prototypes for redraw_frame,
19458 redraw_garbaged_frames.
19459
19460 * cmds.c (Fself_insert_command): Use CHARACTERP.
19461
19462 * chartab.c (make_sub_char_table): Remove unused var.
19463 (Fset_char_table_default, Fmap_char_table): Doc fix.
19464
19465 * keymap.c (access_keymap): Remove generic char code.
19466 (push_key_description): Use CHARACTERP.
19467
194682008-02-01 Dave Love <fx@gnu.org>
19469
19470 * charset.c: Doc fixes.
19471 (Funify_charset): Extra checking.
19472
194732008-02-01 Dave Love <fx@gnu.org>
19474
19475 * lread.c: Remove some unused variables.
19476 (safe_to_load_p): If safe, return the magic number version byte.
19477 (Fload): Maybe use load-with-code-conversion.
19478
194792008-02-01 Kenichi Handa <handa@m17n.org>
19480
19481 * category.c (Fmodify_category_entry): Don't modify the contents
19482 of category_set for characters out of the range. Avoid
19483 unnecessary modification.
19484
19485 * character.h (MAYBE_UNIFY_CHAR): Adjust for the change of
19486 Vchar_unify_table. The default value of the table is now nil.
19487
19488 * character.c (syms_of_character): Setup Vchar_width_table for
19489 eight-bit-control and raw-byte chars.
19490
19491 * charset.h (enum define_charset_arg_index): Delete
19492 charset_arg_parents and add charset_arg_subset and
19493 charset_arg_superset.
19494 (enum charset_attr_index): Delete charset_parents and add
19495 charset_subset and charset_superset.
19496 (enum charset_method): Delete CHARSET_METHOD_INHERIT and add
19497 CHARSET_METHOD_SUBSET and CHARSET_METHOD_SUPERSET.
19498 (CHARSET_ATTR_PARENTS, CHARSET_PARENTS): Delete.
19499 (CHARSET_ATTR_SUBSET, CHARSET_ATTR_SUPERSET, CHARSET_SUBSET)
19500 (CHARSET_SUPERSET): New macros.
19501 (charset_work): Extern it.
19502 (ENCODE_CHAR): Use charset_work.
19503 (CHAR_CHARSET_P): Adjust for the change of encoder format.
19504 (map_charset_chars): Extern it.
19505
19506 * charset.c (load_charset_map): Set the default value of encoder
19507 and deunifier char-tables to nil.
19508 (map_charset_chars): Change argument. Change callers. Use
19509 map_char_table_for_charset instead of map_char_table.
19510 (Fmap_charset_chars): New optional args from_code and to_code.
19511 (Fdefine_charset_internal): Adjust for the change of
19512 `define-charset' (:parents -> :subset or :superset).
19513 (charset_work): New variable.
19514 (encode_char, syms_of_charset): Adjust for the change of
19515 Fdefine_charset_internal.
19516 (Ffind_charset_string): Setup the vector `charsets' correctly.
19517
19518 * chartab.c (sub_char_table_ref_and_range): New arg default. Fix
19519 the previous change.
19520 (char_table_ref_and_range): Adjust for the above change.
19521 (map_sub_char_table_for_charset): New function.
19522 (map_char_table_for_charset): New function.
19523
19524 * keymap.c (describe_vector): Handle a char-table directly here.
19525 (describe_char_table): Delete.
19526
19527 * lisp.h (map_charset_chars): Delete.
19528
195292008-02-01 Dave Love <fx@gnu.org>
19530
19531 * fns.c (count_combining): Comment out (unused).
19532 (Flocale_codeset): New.
19533 (syms_of_fns): Defsubr it.
19534
19535 * config.in (HAVE_PTY_H, HAVE_SIZE_T, HAVE_LANGINFO_CODESET): New.
19536 (size_t): Remove.
19537
195382008-02-01 Dave Love <fx@gnu.org>
19539
19540 * Makefile.in (chartab.o): Depend on charset.h.
19541
195422008-02-01 Kenichi Handa <handa@m17n.org>
19543
19544 * character.c (syms_of_character): Set the default value of
19545 Vprintable_chars to Qnil.
19546
195472008-02-01 Dave Love <fx@gnu.org>
19548
19549 * Makefile.in (lisp, shortlisp): Change indian.elc to indian.el.
19550
195512008-02-01 Kenichi Handa <handa@m17n.org>
19552
19553 * charset.c (load_charset_map): Handle the case that from < to
19554 correctly.
19555
19556 * coding.c (encode_coding_emacs_mule, encode_coding_iso_2022)
19557 (encode_coding_sjis, encode_coding_big5, encode_coding_charset):
19558 Pay attention to raw-8-bit chars.
19559
195602008-02-01 Kenichi Handa <handa@m17n.org>
19561
19562 * Makefile.in (lisp, shortlisp): Change chinese.elc to chinese.el.
19563 It is not bytecompiled now.
19564
19565 * charset.c (charset_jisx0201_roman, charset_jisx0208_1978)
19566 (charset_jisx0208): New variables.
19567 (Fdefine_charset_internal): Setup them if appropriate.
19568 (init_charset_once): Initialize them to -1.
19569
19570 * charset.h (charset_jisx0201_roman, charset_jisx0208_1978)
19571 (charset_jisx0208): Extern them.
19572
19573 * coding.c (CODING_ISO_FLAG_USE_ROMAN): New macro.
19574 (CODING_ISO_FLAG_USE_OLDJIS): New macro.
19575 (CODING_ISO_FLAG_FULL_SUPPORT): Change macro definition.
19576 (setup_iso_safe_charsets): Fix arguments to Fassq.
19577 (DECODE_DESIGNATION, ENCODE_ISO_CHARACTER_DIMENSION1)
19578 (ENCODE_ISO_CHARACTER_DIMENSION2): Pay attention to
19579 CODING_ISO_FLAG_USE_ROMAN and CODING_ISO_FLAG_USE_OLDJIS.
19580 (encode_coding_iso_2022): Change the 1st arg to
19581 ENCODE_ISO_CHARACTER to a variable.
19582
195832008-02-01 Kenichi Handa <handa@m17n.org>
19584
19585 * charset.h (enum define_charset_arg_index): New enums
19586 charset_arg_min_code and charset_arg_max_code.
19587 (struct charset): New member char_index_offset.
19588
19589 * charset.c (CODE_POINT_TO_INDEX, INDEX_TO_CODE_POINT):
19590 Take charset->char_index_offset into account.
19591 (Fdefine_charset_internal): Handle args[charset_arg_min_code] and
19592 args[charset_arg_max_code]. Setup charset.char_index_offset.
19593 (syms_of_charset): Fix args to Fdefine_charset_internal.
19594
195952008-02-01 Dave Love <fx@gnu.org>
19596
19597 * coding.c (decode_coding_utf_8): Reject overlong sequences.
19598
195992008-02-01 Dave Love <fx@gnu.org>
19600
19601 * coding.c: Doc fixes.
19602 (Fcoding_system_aliases): Fix return value.
19603 (Qmac): Remove (duplicated) definition.
19604
196052008-02-01 Dave Love <fx@gnu.org>
19606
362654a6
JB
19607 * charset.c (Fcharset_priority_list, Fset_charset_priority):
19608 New functions.
aac0c6e3
MR
19609
19610 * character.c (Fstring): Doc fix.
19611
19612 * charset.c (Fdefine_charset_alias): Update Vcharset_list.
19613
362654a6 19614 * fontset.c (Ffontset_info): Doc fix. Return charset names, not ids.
aac0c6e3
MR
19615 (font-encoding-alist): Doc fix.
19616
196172008-02-01 Dave Love <fx@gnu.org>
19618
19619 * term.c (costs_set): Declare static, non-initialized for pcc.
19620 (encode_terminal_code): Remove unused var.
19621
19622 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
19623 for K&R.
19624
19625 * xterm.c (xlwmenu_window_p): Fix prototype for K&R.
19626
19627 * coding.c (setup_iso_safe_charsets): Fix arg decl for K&R.
19628 (suffixes): Move out of make_subsidiaries for K&R.
19629
19630 * charset.c (map_charset_chars): Fix c_function declaration for K&R.
19631
19632 * lisp.h (DEFUN) [!PROTOTYPES]: Remove spurious `args'.
19633
196342008-02-01 Dave Love <fx@gnu.org>
19635
19636 * data.c (Fchar_or_string_p): Doc fix. Use CHARACTERP.
19637
19638 * category.c (Fmodify_category_entry): Doc fix. Remove unused vars.
19639
196402008-02-01 Yong Lu <lyongu@asia-infonet.com>
19641
19642 * charset.c (Fdefine_charset_internal): Fix argument to bzero.
19643
19644 * coding.c (decode_coding_charset): Workaround for the bug of GCC 2.96.
19645
196462008-02-01 Kenichi Handa <handa@m17n.org>
19647
19648 * Makefile.in (lisp, shortlisp): Change cyrillic.elc to cyrillic.el,
19649 vietnamese.elc to vietnamese.el. They are not bytecompiled now.
19650
196512008-02-01 Kenichi Handa <handa@m17n.org>
19652
19653 * coding.c (decode_coding_charset): Adjust for the change of
19654 Fdefine_coding_system_internal.
19655 (Fdefine_coding_system_internal): For a coding system of
19656 `charset' type, store a list of charset IDs in
19657 `charset_attr_charset_valids' element of coding attributes.
19658
196592008-02-01 Kenichi Handa <handa@m17n.org>
19660
19661 * coding.c (ONE_MORE_BYTE_NO_CHECK): Increment consumed_chars.
19662 (emacs_mule_char): New arg src. Delete arg `composition'. Change
19663 caller. Handle 2-byte and 3-byte charsets correctly.
19664 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): Rename from
19665 DECODE_EMACS_MULE_COMPOSITION_RULE. Change caller.
19666 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New macro.
19667 (DECODE_EMACS_MULE_21_COMPOSITION): Call
19668 DECODE_EMACS_MULE_COMPOSITION_RULE_21. Produce correct annotation
19669 sequence.
19670 (decode_coding_emacs_mule): Handle composition correctly. Rewind
19671 `src' and `consumed_chars' correctly before calling emacs_mule_char.
19672 (DECODE_COMPOSITION_START): Correctly handle the case of altchar
19673 and alt&rule composition.
19674 (decode_coding_iso_2022): Handle composition correctly.
19675 (init_coding_once): Setup emacs_mule_bytes for private charsets.
19676
19677 * charset.c (Fdefine_charset_internal): Fix bug for the case of
19678 re-defining a charset. If the charset has :emacs-mule-id, setup
19679 emacs_mule_bytes.
19680 (Fmake_char): If CODE1 is nil, use the minimum code of the charset.
19681
196822008-02-01 Kenichi Handa <handa@m17n.org>
19683
19684 * coding.c (encode_coding_iso_2022, encode_coding_sjis)
19685 (encode_coding_big5, encode_coding_charset): If coding requires safe
19686 encoding, produce a character specified by
19687 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
19688
196892008-02-01 Dave Love <fx@gnu.org>
19690
19691 * xterm.c (XSetIMValues): Declare.
19692
19693 * process.c: Conditionally include sys/wait.h, pty.h.
19694
19695 * print.c (print_object): Fix print format for 64-bit systems.
19696
19697 * keyboard.c (modify_event_symbol): Fix print format for 64-bit systems.
19698
19699 * buffer.c (emacs_strerror): Declare.
19700
19701 * fontset.c (Fclear_face_cache): Declare.
19702 (accumulate_font_info): Comment-out (unused).
19703 (face_for_char, Fset_fontset_font, Ffontset_info): Remove unused
19704 variables.
19705
19706 * character.h (string_escape_byte8): Declare.
19707
19708 * charset.c (load_charset_map, load_charset_map_from_file): Remove
19709 unused vars.
19710 (Fdefine_charset_internal, Fsplit_char, syms_of_charset)
19711 (Fmap_charset_chars): Doc fix.
19712
19713 * coding.c (Vchar_coding_system_table, Qchar_coding_system): Remove.
19714 (Fset_coding_system_priority, Fset_coding_system_priority)
19715 (Fdefine_coding_system_internal): Doc fix.
19716
197172008-02-01 Dave Love <fx@gnu.org>
19718
19719 * s/osf5-0.h (C_SWITCH_SYSTEM) [!__GNUC__]: Remove -nointrinsics.
19720
197212008-02-01 Kenichi Handa <handa@m17n.org>
19722
19723 * character.c (string_escape_byte8): Make multibyte string with
19724 correct size.
19725
19726 * charset.c (Fmake_char): Delete unnecessary code.
19727
197282008-02-01 Kenichi Handa <handa@m17n.org>
19729
19730 * xfns.c (x_encode_text): Allocate coding.destination here, and
19731 call encode_coding_object with dst_object Qnil.
19732
19733 * buffer.c (Fset_buffer_multibyte): Convert 8-bit bytes to
19734 multibyte form correctly.
19735
19736 * fontset.c (fs_load_font): Check fontp->full_name (not fontname)
19737 against Vfont_encoding_alist.
19738
19739 * coding.c (Fdecode_sjis_char): Fix typo (0x7F->0xFF). Fix the
19740 handling of charset list.
19741 (encode_coding_iso_2022): Setup coding->safe_charsets in advance.
19742 (decode_coding_object): Move point to coding->dst_pos before
19743 calling post-read-conversion function.
19744 (encode_coding_object): Give correct arguments to
19745 pre-write-conversion. Ignore the return value of
19746 pre-write-conversion function. Pay attention to the case that
19747 pre-write-conversion changes the current buffer. If dst_object is
19748 Qt, even if coding->src_bytes is zero, allocate at least one byte
19749 to coding->destination.
19750
19751 * coding.h (JIS_TO_SJIS): Fix typo (j1->s1, j2->s2).
19752
19753 * charset.c (Fmake_char): Make it more backward compatible.
19754 (Fmap_charset_chars): Fix docstring.
19755
197562008-02-01 Dave Love <fx@gnu.org>
19757
19758 * coding.c: Doc fixes.
19759 (Fdefine_coding_system_alias): Use names, not symbols, in
19760 coding-system-alist.
19761
197622008-02-01 Kenichi Handa <handa@m17n.org>
19763
19764 * fontset.c (free_realized_fontsets): Call Fclear_face_cache instead
19765 of calling free_realized_face.
19766
197672008-02-01 Yong Lu <lyongu@asia-infonet.com>
19768
19769 * charset.c (read_hex): Don't treat SPC as a comment starter.
19770 (decode_char): If CODE_POINT_TO_INDEX returns -1, always return -1.
19771 (Fdecode_char): Fix typo.
19772
197732008-02-01 Kenichi Handa <handa@m17n.org>
19774
19775 * charset.h (struct charset): New member `code_space_mask'.
19776
19777 * coding.c (coding_set_source): Delete the local variable beg_byte.
19778 (encode_coding_charset, Fdefine_coding_system_internal):
19779 Delete the local variable charset.
19780 (Fdefine_coding_system_internal): Setup
19781 attrs[coding_attr_charset_valids] correctly.
19782
19783 * charset.c (CODE_POINT_TO_INDEX): Utilize `code_space_mask'
19784 member to check if CODE is valid or not.
19785 (Fdefine_charset_internal): Initialize `code_space_mask' member.
19786 (encode_char): Before calling CODE_POINT_TO_INDEX, check if CODE
19787 is within the range of charset->min_code and carset->max_code.
19788
197892008-02-01 Dave Love <fx@gnu.org>
19790
19791 * syntax.h (syntax_temp) [!__GNUC__]: Declare.
19792
19793 * dispextern.h (generate_ascii_font): Fix return type.
19794
19795 * xfaces.c (generate_ascii_font): Fix arg declaration.
19796
19797 * coding.c (coding_inherit_eol_type)
19798 (Fset_terminal_coding_system_internal)
19799 (Fset_safe_terminal_coding_system_internal): Fix arg declarations.
19800
198012008-02-01 Kenichi Handa <handa@m17n.org>
19802
19803 * coding.c (decode_coding_charset, encode_coding_charset): Handle
19804 multiple charsets correctly.
19805
198062008-02-01 Kenichi Handa <handa@m17n.org>
19807
19808 * search.c (boyer_moore): Fix handling of multibyte character
19809 translation.
19810
19811 * xdisp.c (display_mode_element): When the variable `elt' is
19812 changed, update `this' and `lisp_string'.
19813
198142008-02-01 Kenichi Handa <handa@m17n.org>
19815
19816 * buffer.c (Fset_buffer_multibyte): Fix 8-bit char handling.
19817
19818 * callproc.c (Fcall_process): Be sure to give the current buffer
19819 to decode_coding_c_string. Update PT and PT_BYTE after the insertion.
19820
19821 * charset.c (struct charset_map_entries): New struct.
19822 (load_charset_map): Rename from parse_charset_map. New args
19823 entries and n_entries. Change caller.
19824 (load_charset_map_from_file): Rename from load_charset_map.
19825 Change caller. New arg control_flag. Call load_charset_map at
19826 the tail.
19827 (load_charset_map_from_vector): New function.
19828 (Fdefine_charset_internal): Setup charset.compact_codes_p.
19829 (encode_char): If the charset is compact, change a character index
19830 to a code point.
19831
19832 * coding.c (coding_alloc_by_making_gap): Check the case that the
19833 source and destination are the same correctly.
19834 (decode_coding_raw_text): Set coding->consumed_char and
19835 coding->consumed to 0.
19836 (produce_chars): If coding->chars_at_source is nonzero, update
19837 coding->consumed_char and coding->consumed before calling
19838 alloc_destination.
19839 (Fdefine_coding_system_alias): Register ALIAS in
19840 Vcoding_system_alist.
19841 (syms_of_coding): Define `no-conversion' coding system at the tail.
19842
19843 * fileio.c (Finsert_file_contents): Set coding_system instead of
19844 val. If the current buffer is multibyte, always call
19845 decode_coding_gap.
19846
19847 * xfaces.c (try_font_list): Give higher priority to fontset's
19848 family than face's family.
19849
198502008-02-01 Kenichi Handa <handa@m17n.org>
19851
19852 * callproc.c (Fcall_process): Be sure to give the current buffer
19853 to decode_coding_c_string.
19854
19855 * xfaces.c (try_font_list): Give a family specified in a fontset
19856 higher priority than a family specified in a face.
19857
198582008-02-01 Kenichi Handa <handa@m17n.org>
19859
19860 * fileio.c (Finsert_file_contents): Fix calculation of `inserted'.
19861 Fix arguments to insert_from_buffer.
19862
19863 * xdisp.c (display_mode_element): Fix calculation of `bytepos'.
19864
198652008-02-01 Kenichi Handa <handa@m17n.org>
19866
19867 * coding.c (produce_chars): Set the variable `multibytep' correctly.
19868 (decode_coding_gap): Set coding->dst_multibyte correctly.
19869
198702008-02-01 Kenichi Handa <handa@m17n.org>
19871
19872 * coding.c (encode_coding_utf_8): Initialize produced_chars to 0.
19873 (decode_coding_utf_16): Fix converting high and low bytes to code-point.
19874 (encode_coding_utf_16): Substitute coding->default_char for
19875 non-Unicode characters.
19876 (decode_coding): Don't call record_insert here.
19877 (setup_coding_system): Initialize `surrogate' of
19878 coding->spec.utf_16 to 0.
19879 (EMIT_ONE_BYTE): Fix for multibyte case.
19880
19881 * insdel.c (insert_from_gap): Call record_insert.
19882
198832008-02-01 Kenichi Handa <handa@m17n.org>
19884
19885 * casefiddle.c (casify_region): Fix multibyte case.
19886
19887 * character.c (c_string_width): Add return type `int'.
19888 (char_string_with_unification): Delete arg ADVANCED.
19889
19890 * character.h (CHAR_VALID_P): Don't call CHARACTERP.
19891 (CHAR_STRING): Adjust for the change of char_string_with_unification.
19892 (CHAR_STRING_ADVANCE): Make it do-while statement.
19893
19894 * chartab.c (sub_char_table_set_range): Optimize for the case
19895 DEPTH == 3. Add workaround code for a GCC optimization bug.
19896
19897 * charset.c (parse_charset_map): Remove an unused variable.
19898
19899 * coding.c: Delete unused variables.
19900
19901 * fileio.c (Finsert_file_contents): Set coding_system to Qnil
19902 earlier. If inserted is zero and the coding system doesn't
19903 require flushing, don't call decode_coding_gap.
19904
19905 * syntax.h (SET_RAW_SYNTAX_ENTRY): Don't call make_number.
19906
199072008-02-01 Kenichi Handa <handa@m17n.org>
19908
19909 The following changes are for using Unicode as an internal
19910 character model, and use UTF-8 format for buffer/string
19911 representation.
19912
19913 * .gdbinit (xchartable): Adjust for the change of char table structure.
19914 (xsubchartable, xcoding, xcharset, xcurbuf): New commands.
19915
19916 * Makefile.in (obj): Add character.o and chartab.o.
19917 (lisp, shortlisp): Remove utf-8.elc.
19918 (*.o): For many files, change dependency on charset.h to
19919 character.h, and add dependency on character.h.
19920 (character.o, chartab.o): New targets.
19921
19922 * abbrev.c, bytecode.c, casefiddle.c, cmds.c, dispnew.c, doc.c:
19923 * doprnt.c, dosfns.c, frame.c, marker.c, minibuf.c, msdos.c:
19924 * w16select.c, w32bdf.c, w32console.c: Include "character.h" instead
19925 of "charset.h".
19926
19927 * dired.c, filelock.c: Include "character.h".
19928
19929 * alloc.c: Include "character.h" instead of "charset.h".
19930 (Fmake_char_table, make_sub_char_table): Move to chartab.c.
19931 (syms_of_alloc): Remove defsubr for Smake_char_table.
19932
19933 * buffer.c: Include "character.h" instead of "charset.h", don't
19934 include "coding.h".
19935 (Fset_buffer_multibyte): Adjust for UTF-8.
19936
19937 * buffer.h: EXFUN Fbuffer_live_p.
19938
19939 * callproc.c: Include "character.h" instead of "charset.h".
19940 (Fcall_process): Big change for the new code-conversion APIs.
19941
19942 * casetab.c: Include "character.h" instead of "charset.h".
19943 (set_canon, set_identity, shuffle): Adjust for the new
19944 map_char_table spec.
19945 (init_casetab_once): Call CHAR_TABLE_SET instead of directly
19946 accessing the char table structure.
19947
19948 * chartab.c: New file that implements char table.
19949
19950 * category.c: Include "character.h".
19951 (copy_category_entry): New function.
19952 (copy_category_table): Call map_char_table and copy_category_entry.
19953 (Fmake_category_table): Initialize all top-level slots.
19954 (char_category_set): New function.
19955 (modify_lower_category_set): Delete.
19956 (Fmodify_category_entry): Call char_table_ref_and_range.
19957
19958 * category.h (CATEGORY_SET): Just call char_category_set.
19959
19960 * ccl.c: Include "character.h".
19961 (Qccl, Qcclp): New variables.
19962 (CCL_WRITE_CHAR): Alway treat the arg CH as a character even if
19963 it's less than 256.
19964 (CCL_WRITE_MULTIBYTE_CHAR): Delete.
19965 (CCL_WRITE_STRING, CCL_READ_CHAR): Adjust for the change of SRC
19966 and DST type.
19967 (ccl_driver): Change types of argument, adjust code accordingly.
19968 (Fccl_execute, Fccl_execute_on_string): Adjust for the change of
19969 ccl_driver.
19970 (syms_of_ccl): Intern and staticpro Qccl and Qcclp.
19971
19972 * ccl.h (struct ccl_program): Delete members eol_type and multibyte.
19973 New members src_multibyte, dst_multibyte, consumed, and produced.
19974 (struct ccl_spec): Delete members decoder and encoder. New member ccl.
19975 (CODING_SPEC_CCL_PROGRAM): New macro.
19976 (ccl_driver): Update prototype.
19977 (Qccl, Qcclp, Fccl_program_p): Extern them.
19978 (CHECK_CCL_PROGRAM): New macro.
19979
19980 * character.c, character.h, chartab.c: New files.
19981
19982 * charset.c: Mostly re-written. Move character and multibyte sequence
19983 handling codes to character.c.
19984
19985 * charset.h: Mostly re-written. Move character and multibyte sequence
19986 handling codes to character.h.
19987
19988 * coding.c, coding.h: Mostly re-written.
19989
19990 * composite.c: Include "character.h" instead of "charset.h".
19991 (CHAR_WIDTH): Move to character.h.
19992 (HASH_KEY, HASH_VALUE): Delete.
19993
19994 * composite.h (enum composition_method): Change order of enumeration
19995 symbols.
19996
19997 * data.c: Include "character.h" instead of "charset.h".
19998 (Faref): Call CHAR_TABLE_REF for a char table.
19999 (Faset): Call CHAR_TABLE_SET for a char table.
20000
20001 * dispextern.h (free_realized_face, check_face_attribytes)
20002 (generate_ascii_font): Extern them.
20003 (free_realized_multibyte_face): Delete extern.
20004
20005 * disptab.h (DISP_CHAR_VECTOR): Adjust for the change of char
20006 table structure.
20007
20008 * editfns.c: Include "character.h" instead of "charset.h".
20009 (Fchar_to_string): Always call CHAR_STRING.
20010
20011 * emacs.c (main): Call init_charset_once, init_charset,
20012 syms_of_chartab, and syms_of_character.
20013
20014 * fileio.c: Include "character.h" instead of "charset.h".
20015 (Finsert_file_contents): Big change for the new code-conversion API.
20016 (choose_write_coding_system, Fwrite_region): Likewise.
20017 (build_annotations_2): Delete.
20018 (e_write): Big change for the new code-conversion API.
20019
20020 * fns.c: Include "character.h" instead of "charset.h".
20021 (copy_sub_char_table): Move to chartab.c.
20022 (Fcopy_sequence): Call copy_char_table for a char table.
20023 (concat): Delete codes calling count_multibyte.
20024 (string_char_to_byte, string_byte_to_char): Adjust for the new
20025 multibyte form.
20026 (internal_equal): Adjust for the change of char table structure.
20027 (Fchar_table_subtype, Fchar_table_parent, Fset_char_table_parent)
20028 (Fchar_table_extra_slot, Fset_char_table_extra_slot)
20029 (Fchar_table_range, Fset_char_table_range, Fset_char_table_default)
20030 (char_table_translate, optimize_sub_char_table)
20031 (Foptimize_char_table, map_char_table, Fmap_char_table): Move to
20032 chartab.c.
20033 (char_table_ref_and_index): Delete.
20034 (HASH_KEY, HASH_VALUE): Move to lisp.h.
20035 (Fmd5): Call preferred_coding_system instead of accessing
20036 Vcoding_category_list. Adjust for the new code-conversion API.
20037 (syms_of_fns): Move defsubr for char table related functions to
20038 chartab.c.
20039
20040 * fontset.c: Mostly re-written.
20041
20042 * fontset.h (struct font_info): Change type of the member encoding_type.
20043 (enum FONT_SPEC_INDEX): New enum.
20044 (fontset_font_pattern, fs_load_font): Update prototype.
20045 (FS_LOAD_FONT): Adjust for the change of fs_load_font.
20046
20047 * indent.c: Include "character.h" instead of "charset.h".
20048 (MULTIBYTE_BYTES_WIDTH): Call CHAR_WIDTH instead of WIDTH_BY_CHAR_HEAD.
20049
20050 * insdel.c: Include "character.h" instead of "charset.h".
20051 (copy_text): Don't refer to Vnonascii_translation_table.
20052 (insert_from_gap): New function.
20053
20054 * keyboard.c: Include "character.h" instead of "charset.h".
20055 (command_loop_1): Never call direct_output_forward_char before
20056 a non-ASCII character.
20057 (read_char): If Vkeyboard_translate_table is a char table, always
20058 translate a character.
20059
20060 * keymap.c: Include "character.h".
20061 (store_in_keymap): Handle the case that IDX is a cons.
20062 (Fdefine_key): Handle the case that KEY is a cons and the car part
20063 is also a cons (range).
20064 (push_key_description): Adjust for the new character code.
20065 (describe_vector): Call describe_char_table for a char table.
20066 (describe_char_table): New function.
20067
20068 * keymap.h (describe_char_table): Extern it.
20069
20070 * lisp.h (enum pvec_type): New member PVEC_SUB_CHAR_TABLE.
20071 (XSUB_CHAR_TABLE, XSETSUB_CHAR_TABLE): New macros.
20072 (CHAR_TABLE_ORDINARY_SLOTS, CHAR_TABLE_SINGLE_BYTE_SLOTS)
20073 (SUB_CHAR_TABLE_ORDINARY_SLOTS, SUB_CHAR_TABLE_STANDARD_SLOTS):
20074 Delete.
20075 (CHAR_TABLE_REF, CHAR_TABLE_SET): Adjust for the new char table
20076 structure.
20077 (CHAR_TABLE_TRANSLATE): Just call char_table_translate.
20078 (CHARTAB_SIZE_BITS_0, CHARTAB_SIZE_BITS_1, CHARTAB_SIZE_BITS_2)
20079 (CHARTAB_SIZE_BITS_3): New macros.
20080 (chartab_size): Extern it.
20081 (struct Lisp_Char_Table): Re-design.
20082 (struct Lisp_Sub_Char_Table): New structure.
20083 (HASH_KEY, HASH_VALUE): Move from fns.c.
20084 (CHARACTERBITS): Define as 22.
20085 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Adjust for the above change.
20086 (SUB_CHAR_TABLE_P): Check PVEC_CHAR_TABLE.
20087 (GC_SUB_CHAR_TABLE_P): New macro.
20088 (Fencode_coding_string, Fdecode_coding_string): Update EXFUN.
20089 (code_convert_string_norecord): Deleted extern.
20090 (init_character_once, syms_of_character, init_charset)
20091 (syms_of_composite, Qeq, Fmakehash, insert_from_gap): Extern them.
20092
20093 * lread.c: Include "character.h".
20094 (read_multibyte): New arg NBYTES.
20095 (read_escape): Change the meaning of returned *BYTEREP.
20096 (to_multibyte): Delete.
20097 (read1): Adjust the handling of char table and string.
20098
20099 * print.c: Include "character.h" instead of "charset.h".
20100 (print_string): Convert 8-bit raw bytes to octal form by
20101 string_escape_byte8.
20102 (print_object): Adjust for the new multibyte form. Print 8-bit
20103 raw bytes always in octal form. Handle sub char table correctly.
20104
20105 * process.c: Include "character.h" instead of "charset.h".
20106 (read_process_output, send_process): Adjust for the new
20107 code-conversion API.
20108
20109 * puresize.h (BASE_PURESIZE): Increase.
20110
20111 * regex.c: Include "character.h" instead of "charset.h".
20112 (BYTE8_TO_CHAR, CHAR_BYTE8_P) [not emacs]: New dummy macros.
20113 (regex_compile): Accept a range whose starting and ending
20114 character have different leading bytes.
20115 (analyse_first): Adjust for the above change.
20116
20117 * search.c: Include "character.h" instead of "charset.h".
20118 (search_buffer, boyer_moore): Adjust for the new multibyte form.
20119 (Freplace_match): Adjust for the change of multibyte_char_to_unibyte.
20120
20121 * syntax.c: Include "character.h" instead of "charset.h".
20122 (syntax_parent_lookup): Delete.
20123 (Fmodify_syntax_entry): Accept a cons as CHAR.
20124 (skip_chars): Adjust for the new multibyte form.
20125 (init_syntax_once): Call char_table_set_range instead of directly
20126 accessing the structure of a char table.
20127
20128 * syntax.h (SET_RAW_SYNTAX_ENTRY): Call CHAR_TABLE_SET.
20129 (SYNTAX_ENTRY_FOLLOW_PARENT): Delete macro.
20130 (SET_RAW_SYNTAX_ENTRY_RANGE): New macro.
20131 (SYNTAX_ENTRY_INT): Call CHAR_TABLE_REF.
20132
20133 * term.c: Include "buffer.h" and "character.h".
20134 (encode_terminal_code, write_glyphs): Adjust for the new
20135 code-conversion API.
20136 (produce_glyphs): Call CHAR_WIDTH instead of CHARSET_WIDTH.
20137
20138 * w32term.c (x_new_font): Adjust for the change of FS_LOAD_FONT.
20139
20140 * xdisp.c: Include "character.h".
20141 (get_next_display_element): Adjust for the new multibyte form.
20142 (disp_char_vector): Adjust for the new char table structure.
20143 (decode_mode_spec_coding): Adjust for the new structure of
20144 coding system.
20145 (decode_mode_spec): Adjust for the new code-conversion API.
20146
20147 * xfaces.c: Include "character.h" instead of "charset.h".
20148 (load_face_font): Adjust for the change of choose_face_font and
20149 FS_LOAD_FONT.
20150 (generate_ascii_font): New function.
20151 (set_lface_from_font_name): Adjust for the change of FS_LOAD_FONT.
20152 (set_font_frame_param): Adjust for the change of choose_face_font.
20153 (free_realized_face): Make it public.
20154 (free_realized_faces_for_fontset): Rename from
20155 free_realized_multibyte_face. Free also faces realized for ASCII.
20156 (choose_face_font): Change arguments. Adjust for the change of
20157 fontset_font_pattern and FS_LOAD_FONT.
20158
20159 * xfns.c: Include "character.h".
20160 (x_encode_text): Adjust for the new code-conversion API.
20161
20162 * xselect.c: Don't include "charset.h".
20163 (selection_data_to_lisp_data): Adjust for the new code conversion API.
20164
20165 * xterm.c: Include "character.h".
20166 (x_encode_char): New argument CHARSET. Change caller.
20167 (x_get_char_face_and_encoding, x_get_glyph_face_and_encoding):
20168 Call ENCODE_CHAR instead of SPLIT_CHAR.
20169 (x_produce_glyphs): Don't check Vnonascii_translation_table Call
20170 CHAR_WIDTH instead of CHARSET_WIDTH.
20171 (XTread_socket): Adjust for the new code-conversion API.
20172 (x_new_font): Adjust for the change of FS_LOAD_FONT.
20173 (x_load_font): Adjust for the change of struct font.
20174
201752008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
20176
20177 * xfaces.c (face_at_buffer_position): Remove unused vars.
20178
201792008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
20180
20181 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR):
20182 Fix overflow checking.
20183
201842008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
20185
20186 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR, ccl_driver):
20187 Cancel previous change.
20188
201892008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
20190
20191 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when
20192 ccl->eight_bit_control. Fix check for buffer overflow.
20193 (CCL_WRITE_MULTIBYTE_CHAR): Fix check for buffer overflow.
20194 (ccl_driver): Initialize extra_bytes to 0.
20195
201962008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
20197
20198 * keyboard.c (make_ctrl_char): If C is a multibyte character, just
20199 return it ORed with ctrl_modifier.
20200
202012008-01-29 Miles Bader <miles@gnu.org>
20202
20203 * macterm.c (XTset_vertical_scroll_bar): Fix merge mistake.
20204
202052008-01-28 Jason Rumney <jasonr@gnu.org>
20206
20207 * w32.c (stat): Don't double check for networked drive.
20208
202092008-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
20210
20211 * window.c (run_window_configuration_change_hook): New function.
20212 Code extracted from set_window_buffer. Set the selected frame.
20213 (set_window_buffer): Use it.
20214 * window.h (run_window_configuration_change_hook): Declare.
20215 * dispnew.c (change_frame_size_1): Use it instead of set-window-buffer.
20216
20217 * keyboard.c (read_char): Yet another int/Lisp_Object mixup (YAILOM).
20218
202192008-01-27 Dan Nicolaescu <dann@ics.uci.edu>
20220
20221 * Makefile.in: Remove references to unused macros.
20222
202232008-01-26 Eli Zaretskii <eliz@gnu.org>
20224
20225 * w32.c (g_b_init_get_sid_sub_authority)
20226 (g_b_init_get_sid_sub_authority_count): New static variables.
20227 (GetSidSubAuthority_Proc, GetSidSubAuthorityCount_Proc): New typedefs.
20228 (get_sid_sub_authority, get_sid_sub_authority_count): New functions.
20229 (init_user_info): Use them to retrieve uid and gid.
20230 Use 500/513, the Windows defaults, as Administrator's uid/gid.
20231 (fstat): Use pw_uid and pw_gid from the_passwd structure for
20232 st_uid and st_gid of the file.
20233
202342008-01-26 Jason Rumney <jasonr@gnu.org>
20235
20236 * w32.c (logon_network_drive): New function.
20237 (stat): Use it.
20238
202392008-01-26 Chong Yidong <cyd@stupidchicken.com>
20240
20241 * xdisp.c (pos_visible_p): Handle the case where charpos falls on
20242 invisible text covered with an ellipsis.
20243
202442008-01-25 Richard Stallman <rms@gnu.org>
20245
20246 * xdisp.c (redisplay_window): Run Qwindow_text_change_functions and
20247 jump back to beginning. Move some other initializations after that.
20248 (Qwindow_text_change_functions, Vwindow_text_change_functions):
20249 New variables.
20250 (syms_of_xdisp): Init them.
20251
20252 * keyboard.c (read_char): Restore echo_message_buffer after redisplay.
20253
20254 * buffer.c (reset_buffer_local_variables):
20255 Implement `permanent-local-hook'.
20256 (Qpermanent_local_hook): New variable.
20257 (syms_of_buffer): Init and staticpro it.
20258
202592008-01-25 Michael Albinus <michael.albinus@gmx.de>
20260
20261 * dbusbind.c (xd_retrieve_arg): Pacify GCC on x86_64 GNU/Linux.
20262
202632008-01-25 Thien-Thi Nguyen <ttn@gnuvola.org>
20264
20265 * fns.c (Fclrhash): Return TABLE.
20266
202672008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20268
20269 * macterm.c (x_scroll_bar_create): Initialize bar->redraw_needed_p.
20270 (XTset_vertical_scroll_bar): Redraw scroll bar if bar->redraw_needed_p
20271 is set even without positional changes.
20272 (x_scroll_bar_clear): Set bar->redraw_needed_p.
20273
20274 * macterm.h (struct scroll_bar): New member `redraw_needed_p'.
20275
202762008-01-23 Jason Rumney <jasonr@gnu.org>
20277
20278 * xterm.c (handle_one_xevent): Revert to counting chars not bytes.
20279
20280 * w32term.c (w32_read_socket) <WM_CHAR>: Decode characters outside
20281 the unicode range available in MULE by locale-coding-system.
20282 Improve dbcs lead byte detection. Set event timestamp and modifiers
20283 earlier.
20284
202852008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20286
20287 * mac.c (mac_emacs_pid) [MAC_OSX]: New variable.
20288 [MAC_OSX] (init_mac_osx_environment): Initialize it.
20289 [MAC_OSX] (mac_try_close_socket) [SELECT_USE_CFSOCKET]: Return 0
20290 when used on child processes.
20291
202922008-01-21 Michael Albinus <michael.albinus@gmx.de>
20293
20294 * dbusbind.c (Fdbus_method_return_internal): Rename from
20295 Fdbus_method_return.
20296 (Fdbus_unregister_object): Move to dbus.el.
20297 (Fdbus_call_method, Fdbus_method_return_internal)
20298 (Fdbus_send_signal): Improve debug messages.
20299
203002008-01-20 Martin Rudalics <rudalics@gmx.at>
20301
20302 * undo.c (undo_inhibit_record_point): New variable.
20303 (syms_of_undo): Initialize it.
20304 (record_point): Don't record point when undo_inhibit_record_point
20305 is set.
20306
203072008-01-19 Stefan Monnier <monnier@iro.umontreal.ca>
20308
20309 * process.c (list_processes_1): Don't use SCHARS on a nil buffer name.
20310
20311 * xdisp.c (Qauto_hscroll_mode): New var.
20312 (syms_of_xdisp): Initialize it.
20313 (hscroll_window_tree): Use it to lookup `auto-hscroll-mode' in each
20314 window's buffer.
20315 (hscroll_windows): Don't check automatic_hscrolling_p here.
20316
20317 * window.c (set_window_buffer): Don't unnecessarily reset hscroll and
20318 vscroll if we're setting window-buffer to the value it already has.
20319
203202008-01-18 Dan Nicolaescu <dann@ics.uci.edu>
20321
20322 * m/intel386.h: Remove references to XENIX.
20323
203242008-01-17 Andreas Schwab <schwab@suse.de>
20325
20326 * m/amdx86-64.h (START_FILES, LIB_STANDARD): Use HAVE_LIB64_DIR
20327 instead of HAVE_X86_64_LIB64_DIR.
20328 * m/ibms390x.h (START_FILES, LIB_STANDARD): Likewise.
20329
203302008-01-17 Glenn Morris <rgm@gnu.org>
20331
20332 * m/ibms390x.h (START_FILES, LIB_STANDARD): Adjust value according
20333 to HAVE_X86_64_LIB64_DIR.
20334
203352008-01-16 Dan Nicolaescu <dann@ics.uci.edu>
20336
20337 * s/irix3-3.h:
20338 * s/irix4-0.h:
20339 * s/386-ix.h:
20340 * s/domain.h:
20341 * s/hpux9-x11r4.h:
20342 * s/hpux9shxr4.h: Remove files for systems no longer supported.
20343
20344 * sysdep.c: Remove code containing references to symbols defined
20345 by unsupported systems.
20346
203472008-01-16 Glenn Morris <rgm@gnu.org>
20348
20349 * coding.c (select-safe-coding-system-function): Doc fix.
20350
203512008-01-15 Glenn Morris <rgm@gnu.org>
20352
20353 * config.in: Revert 2008-01-13 change: this is a generated file.
20354
203552008-01-13 Tom Tromey <tromey@redhat.com>
20356
20357 * lisp.h: Fix typo.
20358
203592008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
20360
20361 * m/sequent-ptx.h:
20362 * m/sequent.h:
20363 * s/ptx.h:
20364 * s/ptx4-2.h:
20365 * s/ptx4.h: Remove files for systems no longer supported.
20366
20367 * callproc.c (Fcall_process): Fix previous change.
20368
203692008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
20370
20371 * unexsunos4.c: Remove file, system not supported anymore.
20372
20373 * m/mips.h:
20374 * m/intel386.h:
20375 * callproc.c:
20376 * config.in:
20377 * ecrt0.c:
20378 * emacs.c:
20379 * fileio.c:
20380 * frame.c:
20381 * getpagesize.h:
20382 * keyboard.c:
20383 * lread.c:
20384 * process.c:
20385 * puresize.h:
20386 * sysdep.c:
20387 * systty.h:
20388 * syswait.h:
20389 * unexec.c:
20390 * xdisp.c:
20391 * alloc.c: Remove code containing references to symbols defined by
20392 unsupported systems.
20393
203942008-01-11 Kenichi Handa <handa@ni.aist.go.jp>
20395
20396 * coding.c (detect_coding_mask): Fix previous change.
20397
203982008-01-09 Kenichi Handa <handa@ni.aist.go.jp>
20399
20400 * coding.c (detect_coding_iso2022): New arg
20401 latin_extra_code_state. Allow Latin extra codes only
20402 when *latin_extra_code_state is nonzero.
20403 (detect_coding_mask): If there is a NULL byte, detect the encoding
20404 as UTF-16 or binary. If Latin extra codes exist, detect the
20405 encoding as ISO-2022 only when there's no other proper encoding is
20406 found.
20407
204082008-01-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20409
20410 * frame.c (Fmake_terminal_frame): Use #ifdef MAC_OS8 instead of
20411 #ifdef MAC_OS.
20412
204132008-01-08 Richard Stallman <rms@gnu.org>
20414
20415 * fileio.c (Ffile_name_directory, Fexpand_file_name): Doc fixes.
20416
204172008-01-06 Nick Roberts <nickrob@snap.net.nz>
20418
20419 * keyboard.c (parse_menu_item): Don't enclose key bindings on
20420 menu bar in parentheses.
20421
204222008-01-06 Dan Nicolaescu <dann@ics.uci.edu>
20423
20424 * m/7300.h:
20425 * m/acorn.h:
20426 * m/alliant-2800.h:
20427 * m/alliant.h:
20428 * m/alliant1.h:
20429 * m/alliant4.h:
20430 * m/altos.h:
20431 * m/amdahl.h:
20432 * m/apollo.h:
20433 * m/att3b.h:
20434 * m/aviion-intel.h:
20435 * m/aviion.h:
20436 * m/celerity.h:
20437 * m/clipper.h:
20438 * m/cnvrgnt.h:
20439 * m/convex.h:
20440 * m/cydra5.h:
20441 * m/delta88k.h:
20442 * m/dpx2.h:
20443 * m/dual.h:
20444 * m/elxsi.h:
20445 * m/f301.h:
20446 * m/gould-np1.h:
20447 * m/gould.h:
20448 * m/i860.h:
20449 * m/ibmps2-aix.h:
20450 * m/ibmrt-aix.h:
20451 * m/ibmrt.h:
20452 * m/irist.h:
20453 * m/is386.h:
20454 * m/isi-ov.h:
20455 * m/mega68.h:
20456 * m/mg1.h:
20457 * m/news-r6.h:
20458 * m/news-risc.h:
20459 * m/news.h:
20460 * m/nh3000.h:
20461 * m/nh4000.h:
20462 * m/ns16000.h:
20463 * m/ns32000.h:
20464 * m/nu.h:
20465 * m/orion.h:
20466 * m/orion105.h:
20467 * m/paragon.h:
20468 * m/pfa50.h:
20469 * m/plexus.h:
20470 * m/pyramid.h:
20471 * m/pyrmips.h:
20472 * m/sh3el.h:
20473 * m/sps7.h:
20474 * m/sr2k.h:
20475 * m/stride.h:
20476 * m/sun1.h:
20477 * m/sun2.h:
20478 * m/sun3-68881.h:
20479 * m/sun3-fpa.h:
20480 * m/sun3-soft.h:
20481 * m/sun3.h:
20482 * m/sun386.h:
20483 * m/symmetry.h:
20484 * m/tad68k.h:
20485 * m/tahoe.h:
20486 * m/targon31.h:
20487 * m/tek4300.h:
20488 * m/tekxd88.h:
20489 * m/tower32.h:
20490 * m/tower32v3.h:
20491 * m/ustation.h:
20492 * m/wicat.h:
20493 * m/xps100.h:
20494 * s/cxux.h:
20495 * s/cxux7.h:
20496 * s/dgux.h:
20497 * s/dgux4.h:
20498 * s/dgux5-4-3.h:
20499 * s/dgux5-4r2.h:
20500 * s/esix.h:
20501 * s/esix5r4.h:
20502 * s/hiuxmpp.h:
20503 * s/hiuxwe2.h:
20504 * s/iris3-5.h:
20505 * s/iris3-6.h:
20506 * s/isc2-2.h:
20507 * s/isc3-0.h:
20508 * s/isc4-0.h:
20509 * s/isc4-1.h:
20510 * s/newsos5.h:
20511 * s/newsos6.h:
20512 * s/osf1.h:
20513 * s/osf5-0.h:
20514 * s/riscix1-1.h:
20515 * s/riscix12.h:
20516 * s/sco4.h:
20517 * s/sco5.h:
20518 * s/sunos4-0.h:
20519 * s/sunos4-1.h:
20520 * s/sunos413.h:
20521 * s/sunos4shr.h:
20522 * s/umax.h:
20523 * s/unipl5-2.h:
20524 * s/xenix.h:
20525 * cxux-crt0.s:
20526 * unexapollo.c:
20527 * unexconvex.c:
20528 * unexenix.c:
20529 * unexsni.c: Remove files for systems no longer supported.
20530
20531 * m/intel386.h: Remove references to unsupported systems.
20532
20533 * w32.c (get_emacs_configuration): Remove reference to i860.
20534
20535 * sysdep.c: Remove dead code.
20536
205372008-01-05 Dan Nicolaescu <dann@ics.uci.edu>
20538
20539 * s/rtu.h:
20540 * m/masscomp.h: Remove files. Platform is obsolete.
20541
205422008-01-04 Michael Albinus <michael.albinus@gmx.de>
20543
20544 * dbusbind.c (Fdbus_method_return): New function.
20545 (xd_read_message): Add the serial number to the event.
20546 (Fdbus_register_method): Activate the function.
20547
205482008-01-03 Stefan Monnier <monnier@iro.umontreal.ca>
20549
20550 * keyboard.c (read_key_sequence): Fix typo.
20551
205522008-01-03 Michael Albinus <michael.albinus@gmx.de>
20553
20554 * dbusbind.c (all): Replace XCAR by CAR_SAFE and XCDR by CDR_SAFE.
20555 (xd_signature, xd_append_arg): Handle element type detection for
20556 empty arrays.
20557 (Fdbus_call_method, Fdbus_send_signal): Undo type casting for
20558 SDATA () calls; this must be solved more general.
20559 (Fdbus_register_signal): Use SBYTES instead of strlen.
20560
205612008-01-03 Magnus Henoch <magnus@zemdatav>
20562
20563 * dbusbind.c (xd_append_arg): Use unsigned char instead of
20564 unsigned int for byte values (necessary for big-endian platform).
20565 (Fdbus_call_method): Handle the case of no returned arguments.
20566
205672007-12-31 Tom Tromey <tromey@redhat.com> (tiny change)
20568
20569 * dbusbind.c (xd_read_message): Use non-static input_event struct.
20570
205712007-12-31 Magnus Henoch <mange@freemail.hu>
20572
20573 * dbusbind.c (xd_signature): Signature of variant is just "v".
20574
205752007-12-30 Michael Albinus <michael.albinus@gmx.de>
20576
20577 * dbusbind.c: Fix several errors and compiler warnings.
20578 Reported by Tom Tromey <tromey@redhat.com>.
20579 (XD_ERROR, XD_DEBUG_MESSAGE)
20580 (XD_DEBUG_VALID_LISP_OBJECT_P): Wrap code with "do ... while (0)".
20581 (xd_append_arg): Part for basic D-Bus types rewritten.
20582 (xd_retrieve_arg): Split implementation of DBUS_TYPE_BYTE and
20583 DBUS_TYPE_(U)INT16. Don't call XD_DEBUG_MESSAGE with "%f" if not
20584 appropriate.
20585 (xd_read_message): Return Qnil. Don't signal an error; it is not
20586 useful during event reading.
20587 (Fdbus_register_signal): Signal an error if the check for
20588 FUNCTIONP fails.
20589 (Fdbus_register_method): New function. The implementation is not
20590 complete, the call of the function signals an error therefore.
20591 (Fdbus_unregister_object): New function, renamed from
20592 Fdbus_unregister_signal. The initial check signals an error, if
20593 the object is not well formed.
20594
205952007-12-30 Richard Stallman <rms@gnu.org>
20596
20597 * textprop.c (get_char_property_and_overlay):
20598 Signal error if POSITION is out of range in a buffer.
20599
206002007-12-29 Martin Rudalics <rudalics@gmx.at>
20601
20602 * w32fns.c (Fx_create_frame): Make copy of frame parameters
20603 because the original parameters are in pure storage now.
20604
206052007-12-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20606
20607 * xdisp.c (phys_cursor_in_rect_p): Check if cursor is in fringe area.
20608
206092007-12-22 Eli Zaretskii <eliz@gnu.org>
20610
20611 * callint.c (syms_of_callint) <command-history>: Add reference to
20612 history-length in the doc string.
20613
206142007-12-17 Jason Rumney <jasonr@gnu.org>
20615
20616 * w32fns.c (w32_wnd_proc) <WM_KEYDOWN>: Cast char to unsigned
20617 before passing as wParam.
20618
206192007-12-22 Michael Albinus <michael.albinus@gmx.de>
20620
20621 * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_BYTE,
20622 DBUS_TYPE_INT16, DBUS_TYPE_UINT16, DBUS_TYPE_INT64,
20623 DBUS_TYPE_UINT64, DBUS_TYPE_DOUBLE and DBUS_TYPE_SIGNATURE.
20624 Return float when DBUS_TYPE_INT32 or DBUS_TYPE_UINT32 do not fit
20625 as number.
20626 (Fdbus_call_method): Fix docstring.
20627
206282007-12-21 Michael Albinus <michael.albinus@gmx.de>
20629
20630 * dbusbind.c (XD_BASIC_DBUS_TYPE, XD_DBUS_TYPE_P, XD_NEXT_VALUE):
20631 New macros.
20632 (XD_SYMBOL_TO_DBUS_TYPE): Rename from XD_LISP_SYMBOL_TO_DBUS_TYPE.
20633 (XD_OBJECT_TO_DBUS_TYPE): Rename from XD_LISP_OBJECT_TO_DBUS_TYPE.
20634 Simplify.
20635 (xd_signature): New function.
20636 (xd_append_arg): Compute also signatures. Major rewrite.
20637 (xd_retrieve_arg): Make debug messages friendly.
20638 (Fdbus_call_method, Fdbus_send_signal): Extend docstring.
20639 Check for signatures of arguments.
20640
206412007-12-19 Michael Albinus <michael.albinus@gmx.de>
20642
20643 * dbusbind.c (QCdbus_type_byte, QCdbus_type_boolean)
20644 (QCdbus_type_int16, QCdbus_type_uint16, QCdbus_type_int32)
20645 (QCdbus_type_uint32, QCdbus_type_int64, QCdbus_type_uint64)
20646 (QCdbus_type_double, QCdbus_type_string, QCdbus_type_object_path)
20647 (QCdbus_type_signature, QCdbus_type_array, QCdbus_type_variant)
20648 (QCdbus_type_struct, QCdbus_type_dict_entry): New D-Bus type symbols.
20649 (XD_LISP_SYMBOL_TO_DBUS_TYPE): New macro.
20650 (XD_LISP_OBJECT_TO_DBUS_TYPE): Add compound types.
20651 (xd_retrieve_value): Remove. Functionality included in ...
20652 (xd_append_arg): New function.
20653 (Fdbus_call_method, Fdbus_send_signal): Apply it.
20654
206552007-12-16 Michael Albinus <michael.albinus@gmx.de>
20656
20657 * dbusbind.c (top): Include <stdio.h>.
20658 (Fdbus_call_method, Fdbus_send_signal): Apply type cast in
20659 dbus_message_new_method_call and dbus_message_new_signal.
20660 (Fdbus_register_signal): Rename unique_name to uname.
20661 Check handler for FUNCTIONP instead of CHECK_SYMBOL. Handle case of
20662 non-existing unique name. Fix typos in matching rule. Return an
20663 object which is useful in Fdbus_unregister_signal.
20664 (Fdbus_unregister_signal): Reimplementation, in order to remove
20665 only the corresponding entry.
20666 (Vdbus_registered_functions_table): Change the order of entries.
20667 Apply these changes in xd_read_message and Fdbus_register_signal.
20668
206692007-12-16 Andreas Schwab <schwab@suse.de>
20670
20671 * fileio.c (Finsert_file_contents): Fix overflow check to not
20672 depend on undefined integer overflow.
20673
206742007-12-14 Jason Rumney <jasonr@gnu.org>
20675
20676 * w32term.c (w32_read_socket): Use MULTIBYTE_CHAR_KEYSTROKE_EVENT
20677 for characters above 127.
20678
206792007-12-13 Jason Rumney <jasonr@gnu.org>
20680
20681 * w32fns.c (w32_wnd_proc, Fw32_reconstruct_hot_key): Range check
20682 before dereferencing array.
20683 (lookup_vk_code): Remove zero comparison.
20684
206852007-12-14 Michael Albinus <michael.albinus@gmx.de>
20686
20687 * dbusbind.c (xd_retrieve_value, xd_retrieve_arg)
20688 (Fdbus_call_method, Fdbus_send_signal, xd_read_message):
20689 Use `unsigned int' instead of `uint'.
20690 (xd_read_message, Fdbus_register_signal): Split expressions into
20691 multiple lines before operators "&&" and "||", according to the
20692 GNU Coding Standards.
20693
206942007-12-14 Eli Zaretskii <eliz@gnu.org>
20695
20696 * dispextern.h (WINDOWS_NT): Fix incorrect spelling of WINDOWSNT.
20697
206982007-12-12 Juri Linkov <juri@jurta.org>
20699
20700 * buffer.c (Frename_buffer): In interactive spec replace
20701 `read-buffer' with `read-string' that uses `buffer-name-history'
20702 as history, and the current buffer's name as default.
20703
207042007-12-10 Stefan Monnier <monnier@iro.umontreal.ca>
20705
20706 * keyboard.c (Fcommand_execute): Call Qcall_interactively instead of
20707 manipulating the backtrace manually.
20708 (make_lispy_event): Merge the ASCII and MULTIBYTE cases.
20709 (struct backtrace, backtrace_list): Remove.
20710 (command_loop_1): Remove dead var `no_direct'.
20711
20712 * buffer.c (reset_buffer_local_variables): If permanent_too is 0, also
20713 preserve non-built-in buffer-local variables.
20714 (Fkill_all_local_variables): Don't re-create&re-set permanent
20715 buffer-local variables.
20716
207172007-12-09 Juri Linkov <juri@jurta.org>
20718
20719 * buffer.c (Frename_buffer): Change interactive spec from "s" to
20720 Lisp code that uses `read-buffer' with current buffer as default.
20721
207222007-12-08 Michael Albinus <michael.albinus@gmx.de>
20723
20724 * dbusbind.c (xd_read_message): Generate an event for every
20725 registered handler. There might be several handlers registered
20726 for the same signal.
20727 (Fdbus_register_signal): Don't overwrite a registration for the
20728 same signal. Add a new registration if handlers are different.
20729 (Vdbus_registered_functions_table): Rework doc string.
20730
207312007-12-07 Michael Albinus <michael.albinus@gmx.de>
20732
20733 * dbusbind.c (Fdbus_get_unique_name, xd_read_message)
20734 (Fdbus_register_signal): Use DBUS_MAXIMUM_NAME_LENGTH and
20735 DBUS_MAXIMUM_MATCH_RULE_LENGTH for string lengths.
20736 (Fdbus_call_method, Fdbus_send_signal, Fdbus_register_signal):
20737 Unify argument lists.
20738 (xd_read_message, Fdbus_register_signal): Reorder and extend event
20739 arguments and hash table keys. Use unique name for service.
20740 (Fdbus_unregister_signal): Remove checks.
20741 (Vdbus_registered_functions_table): Fix doc string.
20742
207432007-12-05 Magnus Henoch <mange@freemail.hu>
20744
20745 * process.c (make_process): Initialize pty_flag to 0.
20746
207472007-12-05 Jason Rumney <jasonr@gnu.org>
20748
20749 * image.c (xbm_load) [WINDOWSNT]: Shuffle the bits of directly
20750 specified XBMs.
20751
207522007-12-05 Richard Stallman <rms@gnu.org>
20753
20754 * xdisp.c (syms_of_xdisp) <scroll-conservatively>: Doc fix.
20755
207562007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20757
20758 * mac.c (cfsockets_for_select) [MAC_OSX && SELECT_USE_CFSOCKET]:
20759 New variable.
20760 (mac_try_close_socket) [MAC_OSX]: New function.
20761 [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]:
20762 Update cfsockets_for_select. Replace invalid CFRunLoop source.
20763
20764 * sysdep.c (emacs_close) [MAC_OSX && HAVE_CARBON]:
20765 Use mac_try_close_socket.
20766
207672007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20768
20769 * unexmacosx.c (unrelocate): New argument BASE. Use it instead of
20770 reloc_base.
20771 (copy_dysymtab): Compute relocation base here.
20772 (rebase_reloc_address) [__ppc64__]: New function.
20773 (copy_dysymtab) [__ppc64__]: Use it if relocation base needs to be
20774 changed.
20775
207762007-12-05 Jason Rumney <jasonr@gnu.org>
20777
20778 * w32proc.c (sys_spawnve): Quote args with wildcards.
20779
207802007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20781
20782 * unexmacosx.c (copy_data_segment): Also copy __gcc_except_tab and
20783 __objc_* sections.
20784 (unrelocate) [_LP64]: Set relocation base to address of data segment.
20785
207862007-12-05 Michael Albinus <michael.albinus@gmx.de>
20787
20788 * dbusbind.c (xd_read_message): Return value is a Lisp_Object.
20789 Move check for Vdbus_registered_functions_table to
20790 xd_read_queued_messages.
20791 (xd_read_queued_messages): Protect xd_read_message calls by
20792 internal_condition_case_1.
20793
207942007-12-04 Michael Albinus <michael.albinus@gmx.de>
20795
20796 * dbusbind.c (QCdbus_system_bus, QCdbus_session_bus): Rename from
20797 Qdbus_system_bus and Qdbus_session_bus, respectively.
20798 (Vdbus_intern_symbols): Remove.
20799 (Vdbus_registered_functions_table): New hash table.
20800 (XD_SYMBOL_INTERN_SYMBOL): Remove.
20801 (xd_read_message, Fdbus_register_signal, Fdbus_unregister_signal):
20802 Rewrite in order to manage registered functions by hash table
20803 Vdbus_registered_functions_table.
20804
208052007-12-03 Jan Djärv <jan.h.d@swipnet.se>
20806
20807 * xterm.c: Update URL to Window Manager Specification in comment.
20808
208092007-12-02 Michael Albinus <michael.albinus@gmx.de>
20810
20811 * config.in (HAVE_DBUS): Add.
20812
20813 * Makefile.in (HAVE_DBUS): Add D-Bus definitions if defined.
20814 (ALL_CFLAGS): Add ${DBUS_CFLAGS}.
20815 (obj): Add $(DBUS_OBJ).
20816 (LIBES): Add $(DBUS_LIBS).
20817 (dbusbind.o): New target.
20818
20819 * dbusbind.c: New file.
20820
20821 * emacs.c (main): Call syms_of_dbusbind when HAVE_DBUS is defined.
20822
20823 * keyboard.c: All D-Bus related code is wrapped by "#ifdef HAVE_DBUS".
20824 (Qdbus_event): New Lisp symbol.
20825 (kbd_buffer_get_event, make_lispy_event): Handle DBUS_EVENT.
20826 (gobble_input): Call xd_read_queued_messages, reading D-Bus messages.
b97439ce 20827 (keys_of_keyboard): Define dbus-event.
aac0c6e3
MR
20828
20829 * termhooks.h (event_kind): Add DBUS_EVENT when HAVE_DBUS is defined.
20830
208312007-12-01 Richard Stallman <rms@gnu.org>
20832
20833 * search.c (syms_of_search) <inhibit-changing-match-data>: Doc fix.
20834
208352007-11-30 Jason Rumney <jasonr@gnu.org>
20836
20837 * w32console.c (w32con_ins_del_lines, scroll_line): Clip to window.
20838 (w32con_reset_terminal_modes): Clear screen buffer.
20839 (w32_face_attributes): Don't use color indexes that are out of range.
20840 Only reverse the default colors.
20841
20842 * xfaces.c (map_tty_color, tty_color_name): Remove special case for
20843 WINDOWSNT.
20844
20845 * w32console.c, w32term.h (vga_stdcolor_name): Remove.
20846
208472007-11-29 Jason Rumney <jasonr@gnu.org>
20848
20849 * w32console.c: Leave HAVE_WINDOW_SYSTEM defined.
20850 (w32_face_attributes): Use Vtty_defined_color_alist to determine
20851 if the terminal colors are initialized.
20852 (unspecified_fg, unspecified_bg): Remove unused declarations.
20853
208542007-11-29 Andreas Schwab <schwab@suse.de>
20855
20856 * keyboard.c (apply_modifiers): Fix typo.
20857
208582007-11-29 Richard Stallman <rms@gnu.org>
20859
20860 * keymap.c (Fcurrent_local_map): Doc fix.
20861
208622007-11-28 Petr Salinger <Petr.Salinger@seznam.cz> (tiny change)
20863
20864 * s/gnu-kfreebsd.h: New file.
20865
208662007-11-28 Stefan Monnier <monnier@iro.umontreal.ca>
20867
20868 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer):
20869 Don't cast redundantly.
20870
20871 * keyboard.c (KEY_TO_CHAR): New macro.
20872 (parse_modifiers, apply_modifiers): Accept integer arguments.
20873 (read_key_sequence): Use them to unify the "shift->unshift" mapping
20874 for chars and symbol keys.
20875 After doing such remapping, apply function-key-map again.
20876
208772007-11-27 Dan Nicolaescu <dann@ics.uci.edu>
20878
20879 * Makefile.in (SOME_MACHINE_LISP): Remove VMS files, they are not
20880 compiled anymore.
20881
208822007-11-26 Andreas Schwab <schwab@suse.de>
20883
20884 * process.c (list_processes_1): Fix indentation level of the
20885 command column.
20886
208872007-11-23 Andreas Schwab <schwab@suse.de>
20888
20889 * editfns.c (Fformat): Handle %c specially since it requires the
20890 argument to be of type int.
20891
208922007-11-23 Markus Triska <markus.triska@gmx.at>
20893
20894 * emacs.c (main): Call init_editfns before init_process, since
20895 init_process sets Vprocess_connection_type depending on OS release.
20896
208972007-11-22 Stefan Monnier <monnier@iro.umontreal.ca>
20898
20899 * data.c (do_symval_forwarding): Use same code as in find_symbol_value.
20900 (find_symbol_value): Use do_symval_forwarding.
20901
20902 * data.c (set_internal): Set the value in the `cons-cell' (for
20903 Buffer_Local_values) not only for frame-local variables.
20904
209052007-11-22 Andreas Schwab <schwab@suse.de>
20906
20907 * data.c (Fnumber_to_string): Add cast when passing EMACS_INT
20908 values to sprintf.
20909 * keymap.c (Fsingle_key_description): Likewise.
20910 * print.c (print_object): Likewise.
20911
209122007-11-22 Jan Djärv <jan.h.d@swipnet.se>
20913
20914 * gtkutil.c (update_frame_tool_bar): Don't call x-gtk-map-stock if
20915 file for image is nil.
20916
209172007-11-22 Dan Nicolaescu <dann@ics.uci.edu>
20918
20919 * term.c: Include stdarg.h.
20920 (fatal): Implement using varargs.
20921 * lisp.h (fatal): Add argument types. (Restore 2005-09-30 change).
20922
209232007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
20924
20925 * lisp.h (struct Lisp_Buffer_Objfwd): Add a `slottype' field.
20926 * data.c (store_symval_forwarding): Get type from buffer_objfwd.
20927 Update call to buffer_slot_type_mismatch.
20928 * buffer.h (buffer_local_types, PER_BUFFER_TYPE): Remove.
20929 (buffer_slot_type_mismatch): Update.
20930 * buffer.c (buffer_local_types): Remove.
20931 (buffer_slot_type_mismatch): Get the symbol and type as arguments.
20932 (defvar_per_buffer): Set the type in the buffer_objfwd.
20933
209342007-11-21 Jason Rumney <jasonr@gnu.org>
20935
20936 * w32bdf.c (w32_init_bdf_font, w32_BDF_to_x_font):
20937 CreateFileMapping returns NULL on failure.
20938
209392007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
20940
20941 * search.c (Fset_match_data): Remove the `evaporate' feature.
20942 (unwind_set_match_data): Don't use the `evaporate' feature.
20943
209442007-11-21 Jason Rumney <jasonr@gnu.org>
20945
20946 * dispnew.c (init_display) [WINDOWSNT]: Hardcode terminal_type.
20947
20948 * w32console.c (w32con_write_glyphs): Remove unused variables.
20949
209502007-11-20 Dan Nicolaescu <dann@ics.uci.edu>
20951
20952 * macterm.c (mac_term_init): Call add_keyboard_wait_descriptor.
20953
20954 * s/darwin.h (MULTI_KBOARD): Remove.
20955
20956 * macfns.c (x_create_tip_frame, Fx_create_frame)
20957 (x_create_tip_frame): Don't deal with MULTI_KBOARD.
20958
209592007-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
20960
20961 * buffer.c (Fbuffer_local_value): Remove redundant test.
20962 (swap_out_buffer_local_variables): Swap out binding in `buffer' rather
20963 than in `current-buffer' to match the comment.
20964 Do the swap using swap_in_global_binding.
20965
20966 * data.c (store_symval_forwarding, set_internal):
20967 * eval.c (specbind): Remove dead code.
20968
20969 * coding.c (detect_coding, Fupdate_coding_systems_internal):
20970 * fns.c (Fmd5): Use find_symbol_value rather than SYMBOL_VALUE
20971 Since we do not want to see internal Lisp_*fwd objects here.
20972
209732007-11-18 Jan Djärv <jan.h.d@swipnet.se>
20974
20975 * sysdep.c (init_system_name): Use getaddrinfo if available.
20976
20977 * xterm.c (x_scroll_bar_set_handle, x_scroll_bar_handle_click)
20978 (x_scroll_bar_note_movement): start, end, with, height in struct
20979 scroll_bar are integers and not Lisp_Object, so remove XINT for them.
20980
209812007-11-17 Dan Nicolaescu <dann@ics.uci.edu>
20982
20983 * puresize.h (BASE_PURESIZE): Increase to 1190000.
20984
209852007-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
20986
20987 * buffer.h (struct buffer): Move `undo_list' back to before `name'.
20988 This undoes Richard's change of 14-Oct-2002.
20989
20990 * alloc.c (allocate_other_vector):
20991 * lisp.h (allocate_other_vector): Remove.
20992
20993 * window.c (struct save_window_data): Move non-lisp data to the end
20994 and make it `int' rather than Lisp_Object.
20995 (Fcurrent_window_configuration): Use ALLOCATE_PSEUDOVECTOR.
20996 Done wrap/unwrap integer values.
20997 (Fset_window_configuration, compare_window_configurations):
20998 Update use of fields to their new types.
20999
21000 * xterm.h (struct scroll_bar): Only use Lisp_Object for lisp data.
21001 Turn integer fields into `int'. Merge x_window_low and x_window_high.
21002 (SCROLL_BAR_PACK, SCROLL_BAR_UNPACK, SCROLL_BAR_X_WINDOW)
21003 (SET_SCROLL_BAR_X_WINDOW): Remove.
21004 (SCROLL_BAR_X_WIDGET, SET_SCROLL_BAR_X_WIDGET):
21005 Access the new x_window field directly.
21006 * xterm.c (x_scroll_bar_create): Use a pseudovector.
21007 Don't wrap/unwrap integers into Lisp_Objects.
21008 (XTset_vertical_scroll_bar, x_scroll_bar_handle_click)
21009 (x_scroll_bar_report_motion):
21010 Don't wrap/unwrap integers into Lisp_Objects.
21011 (x_term_init): Use SDATA.
21012 (x_window_to_scroll_bar, x_create_toolkit_scroll_bar)
21013 (x_scroll_bar_set_handle, x_scroll_bar_remove)
21014 (XTset_vertical_scroll_bar, x_scroll_bar_expose)
21015 (x_scroll_bar_report_motion, x_scroll_bar_clear):
21016 * xfns.c (x_set_background_color):
21017 * gtkutil.c (xg_create_scroll_bar, xg_set_toolkit_scroll_bar_thumb):
21018 Access the new x_window field directly.
21019
21020 * alloc.c (ALLOCATE_PSEUDOVECTOR): Move to lisp.h.
21021 (allocate_pseudovector): Make non-static.
21022
21023 * lisp.h (enum pvec_type): New tag PVEC_OTHER.
21024 (allocate_pseudovector): Declare.
21025 (ALLOCATE_PSEUDOVECTOR): Move from alloc.c.
21026
210272007-11-15 Andreas Schwab <schwab@suse.de>
21028
21029 * editfns.c (Fformat): Correctly format EMACS_INT values.
21030 Also take precision into account when formatting an integer.
21031
21032 * keyboard.c (Fevent_symbol_parse_modifiers): Fix declaration.
21033
210342007-11-15 Stefan Monnier <monnier@iro.umontreal.ca>
21035
21036 * keyboard.c (Fevent_symbol_parse_modifiers): New function.
21037 (syms_of_keyboard): Defsubr it.
21038
21039 * data.c (swap_in_global_binding): Fix longstanding bug where
21040 store_symval_forwarding was not called with the right second argument,
21041 thus causing objfwd-ing from being dropped.
21042
210432007-11-14 Juanma Barranquero <lekktu@gmail.com>
21044
21045 * macfns.c (Fx_create_frame, Fx_display_pixel_width)
21046 (Fx_display_pixel_height, Fx_display_planes)
21047 (Fx_display_color_cells, Fx_server_max_request_size)
21048 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
21049 (Fx_display_visual_class, Fx_display_save_under):
21050 * w32fns.c (Fx_create_frame, Fx_display_pixel_width)
21051 (Fx_display_pixel_height, Fx_display_planes)
21052 (Fx_display_color_cells, Fx_server_max_request_size)
21053 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
21054 (Fx_display_mm_height, Fx_display_mm_width)
21055 (Fx_display_backing_store, Fx_display_visual_class)
21056 (Fw32_select_font, Fx_display_save_under):
21057 * xfns.c (Fx_create_frame, Fx_display_pixel_width)
21058 (Fx_display_pixel_height, Fx_display_planes)
21059 (Fx_display_color_cells, Fx_server_max_request_size)
21060 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
21061 (Fx_display_save_under): Fix typos in docstrings.
21062
210632007-11-14 Juanma Barranquero <lekktu@gmail.com>
21064
21065 * w32fns.c (Fw32_registered_hot_keys): Don't return the nil values
21066 corresponding to deleted entries; they are an implementation detail.
21067 (gray_bitmap_width, gray_bitmap_height, gray_bitmap_bits):
21068 Remove variables.
21069 (w32_pass_extra_mouse_buttons_to_system, w32_strict_fontnames)
21070 (w32_pass_multimedia_buttons_to_system, w32_strict_painting)
21071 (Vw32_charset_info_alist, w32_to_x_color, w32_init_class)
21072 (w32_createscrollbar, w32_createwindow, my_post_msg, w32_get_modifiers)
21073 (w32_grabbed_keys, cancel_all_deferred_msgs): Make static.
21074 (Fw32_define_rgb_color, Fw32_load_color_file)
21075 (syms_of_w32fns) <w32-pass-multimedia-buttons-to-system>:
21076 Fix typos in docstrings.
21077 (Fx_server_version): Reflow docstring.
21078 (Fw32_shell_execute): Doc fixes.
21079
210802007-11-13 Juanma Barranquero <lekktu@gmail.com>
21081
21082 * w32fns.c (Fw32_register_hot_key): Don't try to register hot key
21083 if w32_parse_hot_key returned nil.
21084
210852007-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
21086
21087 * xdisp.c (load_overlay_strings): Fix copy&paste typo.
21088
210892007-11-09 Jason Rumney <jasonr@gnu.org>
d6c952f8 21090
aac0c6e3
MR
21091 * s/ms-w32.c (USE_TOOLKIT_SCROLL_BARS): Define.
21092
21093 * w32term.c (w32_scroll_bar_handle_click): Use SCROLL_BAR_CLICK_EVENT.
21094
21095 * keyboard.c (discard_mouse_events, make_lispy_event) [WINDOWSNT]:
21096 Remove W32_SCROLL_BAR_CLICK_EVENT.
21097
21098 * termhooks.h (enum event_kind) [WINDOWSNT]: Likewise.
21099 Add MULTIMEDIA_KEY_EVENT.
21100
21101 * keyboard.c (lispy_function_keys) [WINDOWSNT]: Add more keys.
21102 (lispy_multimedia_keys) [WINDOWSNT]: New array.
21103 (make_lispy_event) [WINDOWSNT]: Use it to translate
21104 MULTIMEDIA_KEY_EVENT.
21105
21106 * w32term.h (WM_APPCOMMAND): Define if not already.
21107 (GET_APPCOMMAND_LPARAM): Likewise.
21108
21109 * w32term.c (w32_read_socket): Generate MULTIMEDIA_KEY_EVENT from
21110 WM_APPCOMMAND.
21111
21112 * w32fns.c (w32_pass_multimedia_buttons_to_system): New user option.
21113 (syms_of_w32fns): Export and initialize it.
21114 (w32_wnd_proc): Pass WM_APPCOMMAND on to w32_read_socket.
21115
211162007-11-09 Chong Yidong <cyd@stupidchicken.com>
21117
21118 * dispextern.h (struct it): Don't define OVERLAY_STRING_CHUNK_SIZE
21119 twice.
21120
21121 * xdisp.c (handle_face_prop): Fix last change.
21122
211232007-11-09 Richard Stallman <rms@gnu.org>
21124
21125 * xdisp.c (handle_face_prop): Test for strings that came from overlays,
21126 not just for after-strings and before-strings.
21127 Call face_for_overlay_string and pass the overlay to it.
21128 (handle_display_prop): Determine whether property came from an overlay.
21129 Pass OVERLAY arg to handle_single_display_spec.
21130 (handle_single_display_spec): New arg OVERLAY sets it->from_overlay.
21131 (load_overlay_strings): Fill in it->string_overlays.
21132 (get_overlay_strings_1, push_it, pop_it): Handle it->from_overlays.
21133
21134 * xfaces.c (face_for_overlay_string): Function renamed from
21135 face_at_buffer_position_no_overlays, and add arg OVERLAY.
21136
21137 * dispextern.h (struct it): New elt string_overlays.
21138 New elt from_overlay, also in stack.
21139 Rearrange a few elements.
21140 (face_for_overlay_string): Decl renamed from
21141 face_at_buffer_position_no_overlays, and add argument.
21142
211432007-11-09 Richard Stallman <rms@gnu.org>
21144
21145 * xdisp.c (handle_face_prop): Use face_at_buffer_position_no_overlays
21146 to get the base face for an overlay string.
21147
21148 * dispextern.h (face_at_buffer_position_no_overlays): Add decl.
21149
21150 * xfaces.c (face_at_buffer_position_no_overlays): New function.
21151
21152 * xdisp.c (handle_stop): Move some code out of loop.
21153
211542007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21155
21156 * macfns.c [USE_ATSUI] (Fmac_atsu_font_face_attributes):
21157 Fix conversion from Lisp object to ATSUFontID.
21158
211592007-11-09 Jason Rumney <jasonr@gnu.org>
21160
21161 * xdisp.c (Fformat_mode_line): Do nothing when noninteractive.
21162
211632007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21164
21165 * unexmacosx.c (unexec_regions_recorder, unexec_regions_merge):
21166 Don't assume regions are aligned to page boundary.
21167 (print_load_command_name): Add LC_UUID if defined.
21168
211692007-11-09 Richard Stallman <rms@gnu.org>
21170
21171 * emacs.c (syms_of_emacs) <installation-directory>: Reflow docstring.
21172
211732007-11-07 Jason Rumney <jasonr@gnu.org>
21174
21175 * s/windows95.h: Remove.
21176
211772007-11-06 Jan Djärv <jan.h.d@swipnet.se>
21178
21179 * gtkutil.c (xg_tool_bar_menu_proxy): Handle GTK_IMAGE_ICON_NAME and
21180 abort with a message on unhandled store_type values.
21181
211822007-11-01 Jan Djärv <jan.h.d@swipnet.se>
21183
21184 * xterm.c, xfns.c, xselect.c, xterm.h, s/msdos.h, s/sco4.h, s/sco5.h:
21185 Remove HAVE_X11R5 and HAVE_X11R4.
21186
211872007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
21188
21189 * Makefile.in: Remove references to sunfns.c and sunfns.o.
21190
211912007-11-01 Johan Bockgård <bojohan@gnu.org>
21192
21193 * macterm.c, w32term.c, xterm.c (x_draw_stretch_glyph_string):
21194 Don't set s->stippled_p here, since it has already been set by
21195 x_set_glyph_string_gc from x_draw_glyph_string.
21196
211972007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
21198
21199 * sunfns.c: Remove file.
21200
21201 * m/sun386.h:
21202 * m/sun2.h:
21203 * m/sparc.h: Remove Sun windows code.
21204
212052007-10-31 Stefan Monnier <monnier@iro.umontreal.ca>
21206
21207 * keyboard.c (syms_of_keyboard): Initialize the initial_kboard.
21208 (init_keyboard): Set current_kboard's window-system to nil.
21209 (tty_read_avail_input): Typo.
21210 * frame.c (make_initial_frame): Don't initialize the initial_kboard.
21211
212122007-10-31 Dan Nicolaescu <dann@ics.uci.edu>
21213
21214 * s/usg5-4.h:
21215 * s/usg5-3.h:
21216 * s/ptx.h:
21217 * m/is386.h:
21218 * m/ibmps2-aix.h:
21219 * Makefile.in: Remove all mentions of X10.
21220
21221 * dispnew.c (syms_of_display): Don't mention version 10.
21222
212232007-10-28 Juanma Barranquero <lekktu@gmail.com>
21224
21225 * makefile.w32-in (OBJ1): Remove abbrev.$(O).
21226 ($(BLD)/abbrev.$(O)): Remove.
21227
212282007-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
21229
21230 Rewrite abbrev.c in Elisp.
21231 * image.c (Qcount): Don't declare as extern.
21232 (syms_of_image): Initialize and staticpro `Qcount'.
21233 * puresize.h (BASE_PURESIZE): Increase for the new abbrev.el functions.
21234 * emacs.c (main): Don't call syms_of_abbrev.
21235 * Makefile.in (obj): Remove abbrev.o.
21236 (abbrev.o): Remove.
21237 * abbrev.c: Remove.
21238
212392007-10-26 Martin Rudalics <rudalics@gmx.at>
21240
21241 * window.c (window_min_size_2): Don't count header-line.
21242
212432007-10-26 Dan Nicolaescu <dann@ics.uci.edu>
21244
21245 * frame.h (struct frame): Move all bit fields after the first bit
21246 field to take advantage of the available space. Group all the
21247 chars together to reduce wasted space due to padding.
21248
212492007-10-26 Juanma Barranquero <lekktu@gmail.com>
21250
21251 * minibuf.c (Fread_minibuffer, Feval_minibuffer): Reflow docstrings.
21252
21253 * alloc.c (spare_memory, stack_copy, stack_copy_size, ignore_warnings)
21254 (Vdead, dont_register_blocks, staticvec, staticidx, interval_block)
21255 (n_interval_blocks, init_strings, check_string_bytes, check_sblock)
21256 (init_float, free_float, n_cons_blocks, init_cons, all_vectors)
21257 (n_vectors, symbol_block, symbol_block_index, symbol_free_list)
21258 (n_symbol_blocks, init_symbol, marker_block, marker_free_list)
21259 (n_marker_blocks, init_marker, valid_pointer_p, make_pure_float)
21260 (last_marked, mark_object_loop_halt): Make static.
21261
21262 * frame.c (syms_of_frame) <delete-frame-functions>:
21263 Fix typo in docstring.
21264
212652007-10-25 Juanma Barranquero <lekktu@gmail.com>
21266
21267 * w32.c (init_environment): Fix tiny memory leak.
21268 (w32_get_resource): Remove unused variable `ok'.
21269
212702007-10-25 Stefan Monnier <monnier@iro.umontreal.ca>
21271
21272 Make `window-system' into a keyboard-local variable (rather than
21273 frame-local as done originally by multi-tty).
21274
21275 * keyboard.h (struct kboard): Add Vwindow_system.
21276 * keyboard.c (init_kboard): Set a default for Vwindow_system.
21277 (mark_kboards): Mark Vwindow_system.
21278
21279 * dispnew.c (syms_of_display) <window-system>: Declare terminal-local.
21280 (init_display): Don't set the obsolete `window-system' frame-param.
21281
21282 * xterm.c (x_term_init):
21283 * w32term.c (w32_create_terminal):
21284 * term.c (init_tty): Set Vwindow_system.
21285 * macterm.c (mac_create_terminal): Set a keyboard (missing piece of the
21286 multi-tty merge maybe?), copied from w32term.c. Set Vwindow_system.
21287
21288 * xfns.c (Fx_create_frame, x_create_tip_frame):
21289 * w32fns.c (Fx_create_frame, x_create_tip_frame):
21290 * macfns.c (Fx_create_frame):
21291 Don't set the obsolete `window-system' frame-param.
21292
21293 * frame.h (Qwindow_system): Remove.
21294 * frame.c (Qwindow_system): Remove. In `syms_of_frame' as well.
21295 (Fmake_terminal_frame): Don't set obsolete `window-system' frame-param.
21296
212972007-10-24 Richard Stallman <rms@gnu.org>
21298
21299 * frame.c (x_figure_window_size): For fullscreen case,
21300 set USPosition | PPosition without clobbering rest of window_prompting.
21301
21302 * keyboard.c (Fcurrent_idle_time): Doc fix.
21303
21304 * print.c (Fwith_output_to_temp_buffer): Doc fix.
21305
213062007-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
21307
21308 * process.c (unwind_request_sigio): Only define if __ultrix__.
21309
21310 * callproc.c (child_setup): Remove spurious *.
21311
21312 * lisp.h (Fget_text_property): Declare.
21313 (have_menus_p): Declare it here rather than in sys-dep header files.
21314 * macterm.h (have_menus_p):
21315 * msdos.h (have_menus_p):
21316 * xterm.h (have_menus_p): Remove.
21317
21318 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
21319 (Fmake_variable_frame_local): Just check the variable's const-ness
21320 rather than checking nil or t.
21321
213222007-10-22 Jason Rumney <jasonr@gnu.org>
21323
21324 * w32fns.c: Include math.h.
21325 (w32_abort): Declaration moved to nt/config.nt.
21326
21327 * s/ms-w32.h (HAVE_STDLIB_H): Define.
21328 (abort): Redefinition moved to nt/config.nt.
21329
21330 * m/windowsnt.h: Remove.
21331
213322007-10-22 Juanma Barranquero <lekktu@gmail.com>
21333
21334 * emacs.c (Fdump_emacs): Fix typo in message.
21335 (syms_of_emacs) <kill-emacs-hook>: Fix typo in docstring.
21336 <installation-directory>: Reflow docstring.
21337
213382007-10-22 Juri Linkov <juri@jurta.org>
21339
21340 * minibuf.c: Allow minibuffer default to be a list of default values.
21341 With empty input use the first element of this list as returned default.
21342 (string_to_object)
21343 (read_minibuf_noninteractive): If defalt is cons, set val to its car.
21344 (read_minibuf): If defalt is cons, set histstring to its car.
21345 (Fread_string): If default_value is cons, set val to its car.
21346 (Fread_buffer): If def is cons, use its car.
21347 (Fcompleting_read): If defalt is cons, set val to its car.
21348
213492007-10-21 Michael Albinus <michael.albinus@gmx.de>
21350
21351 * fileio.c (Fcopy_file): Call file name handler with preserve_uid_gid.
21352
213532007-10-20 Juanma Barranquero <lekktu@gmail.com>
21354
21355 * doc.c (Fdocumentation): Check for advice in all cases.
21356
213572007-10-19 Chong Yidong <cyd@stupidchicken.com>
21358
21359 * Makefile.in [HAVE_LIBRESOLV]: Add -lresolv to linker flags.
21360
213612007-10-19 Richard Stallman <rms@gnu.org>
21362
21363 * doc.c (Fdocumentation): Check for and handle an advised function.
21364
213652007-10-19 Juanma Barranquero <lekktu@gmail.com>
21366
21367 * process.c (Fset_process_filter): Doc fix.
21368
213692007-10-18 Stefan Monnier <monnier@iro.umontreal.ca>
21370
21371 * keyboard.c (read_key_sequence): Undo a change introduced by multi-tty
21372 which caused key-translation-map to applied repeatedly (thus breaking
21373 double-mode).
21374
213752007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
21376
21377 * xselect.c (x_own_selection, x_handle_selection_clear)
21378 (x_clear_frame_selections):
21379 * w32menu.c (list_of_panes, list_of_items):
21380 * w32fns.c (w32_color_map_lookup, Fx_create_frame, Fx_display_list):
21381 * textprop.c (validate_plist, interval_has_all_properties)
21382 (interval_has_some_properties, interval_has_some_properties_list)
21383 (add_properties, text_property_list):
21384 * process.c (Fget_buffer_process, list_processes_1, status_notify):
21385 * minibuf.c (Fassoc_string):
21386 * macselect.c (x_own_selection, x_clear_frame_selections)
21387 (Fx_disown_selection_internal):
21388 * keymap.c (Fcommand_remapping, where_is_internal, describe_map_tree):
21389 Use CONSP rather than !NILP and XC[AD]R rather than Fc[ad]r.
21390
213912007-10-17 Chong Yidong <cyd@stupidchicken.com>
21392
21393 * process.c: Link to libs for calling res_init() if available.
21394 (Fmake_network_process): Call res_init() before getaddrinfo or
21395 gethostbyname, if possible.
21396
213972007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
21398
21399 * lread.c (read1): Set pvectype for char_tables.
21400
21401 * lisp.h (XMISCANY, XMARKER, XINTFWD, XBOOLFWD, XOBJFWD, XOVERLAY)
21402 (XBUFFER_OBJFWD, XBUFFER_LOCAL_VALUE, XKBOARD_OBJFWD, XSAVE_VALUE):
21403 Add type checks.
21404 (SOME_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP): Remove.
21405
21406 * alloc.c (free_misc): Use XMISCTYPE.
21407 (live_misc_p, gc_sweep): Use Lisp_Misc_Any.
21408
214092007-10-17 Glenn Morris <rgm@gnu.org>
21410
21411 * minibuf.c (Qcompletion_ignore_case): New Lisp_Object.
21412 (syms_of_minibuf): Add Qcompletion_ignore_case.
21413 * dired.c (Qcompletion_ignore_case): Change to external.
21414 (syms_of_dired) [VMS]: Remove Qcompletion_ignore_case.
21415 * fileio.c (Qcompletion_ignore_case): New external Lisp_Object.
21416 (Fread_file_name): Use it rather than intern'ing.
21417
21418 * coding.c (Qcompletion_ignore_case): New external Lisp_Object.
21419 (Fread_coding_system): Ignore case of user input.
21420
214212007-10-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21422
21423 * xdisp.c (handle_display_prop): Ignore display specs after
21424 replacing one when string text is being replaced.
21425 (handle_single_display_spec): Pretend as if characters with display
21426 property haven't been consumed only when buffer text is being replaced.
21427
214282007-10-16 Stefan Monnier <monnier@iro.umontreal.ca>
21429
21430 * xfns.c (Fx_create_frame, Fx_display_list):
21431 * window.c (window_fixed_size_p, enlarge_window)
21432 (shrink_window_lowest_first):
21433 * macterm.c (init_font_name_table):
21434 * macfns.c (Fx_create_frame, Fx_display_list):
21435 * lread.c (close_load_descs):
21436 * keyboard.c (read_char_x_menu_prompt):
21437 * fns.c (Fmember, Fmemql, Fdelete, Fset_char_table_parent):
21438 * coding.c (code_convert_region_unwind): Test the type of an object
21439 rather than just !NILP before extracting data from it.
21440
21441 * alloc.c (Fpurecopy): Set the pvec tag on pseudo vectors.
21442
21443 * lisp.h (enum Lisp_Misc_Type): Del Lisp_Misc_Some_Buffer_Local_Value.
21444 (XMISCANY): New macro.
21445 (XMISCTYPE): Use it.
21446 (struct Lisp_Misc_Any): New type.
21447 (union Lisp_Misc): Use it.
21448 (struct Lisp_Buffer_Local_Value): Add `local_if_set' bit.
21449 * data.c (Fboundp, store_symval_forwarding, swap_in_global_binding)
21450 (find_symbol_value, set_internal, default_value, Fset_default)
21451 (Fmake_variable_buffer_local, Fmake_local_variable)
21452 (Fkill_local_variable, Fmake_variable_frame_local, Flocal_variable_p)
21453 (Flocal_variable_if_set_p, Fvariable_binding_locus):
21454 The SOME_BUFFER_LOCAL_VALUEP distinction is replaced by local_if_set.
21455 * alloc.c (allocate_buffer): Set the size and tag.
21456 (allocate_misc, mark_maybe_object, mark_object, survives_gc_p):
21457 Use XMISCANY.
21458 (die): Follow the GNU convention for error messages.
21459 * print.c (print_object): SOME_BUFFER_LOCAL_VALUEP -> local_if_set.
21460 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Don't set the
21461 tag any more.
21462 (set_buffer_internal_1):
21463 * frame.c (store_frame_param):
21464 * eval.c (specbind):
21465 * xdisp.c (select_frame_for_redisplay): Drop SOME_BUFFER_LOCAL_VALUEP.
21466
21467 * doc.c (Fsnarf_documentation): Simplify.
21468
214692007-10-14 Juanma Barranquero <lekktu@gmail.com>
21470
21471 * w32term.c (w32_font_is_double_byte, my_create_scrollbar): Make static.
21472 (syms_of_w32term) <w32-enable-unicode-output>: Fix typo in docstring.
21473
214742007-10-14 Stefan Monnier <monnier@iro.umontreal.ca>
21475
21476 * buffer.c (Fmake_indirect_buffer): Set the buffer's tag.
21477
214782007-10-14 Juanma Barranquero <lekktu@gmail.com>
21479
21480 * eval.c (do_autoload): Don't save autoloads.
21481
21482 * data.c (Ffset): Save autoload of the function being set.
21483
214842007-10-07 John Paul Wallington <jpw@pobox.com>
21485
21486 * xfns.c (x_create_tip_frame): Set the `display-type' frame
21487 parameter before setting up faces.
21488
214892007-10-13 Eli Zaretskii <eliz@gnu.org>
21490
21491 * ccl.c (Fregister_code_conversion_map):
21492 * keyboard.c (append_tool_bar_item): Reformat last change.
21493
21494 * lisp.h (eabs): Rename from `abs'. All callers changed.
21495
214962007-10-05 Dmitry Antipov <dmantipov@yandex.ru>
21497
21498 * buffer.c (add_overlay_mod_hooklist):
21499 * ccl.c (Fregister_ccl_program, Fregister_code_conversion_map):
21500 * fontset.c (make_fontset):
21501 * keyboard.c (GROW_RAW_KEYBUF, menu_bar_items, menu_bar_item)
21502 (append_tool_bar_item):
21503 * macmenu.c (grow_menu_items):
21504 * w32menu.c (grow_menu_items):
21505 * xmenu.c (grow_menu_items): Use larger_vector.
21506
215072007-10-13 Eli Zaretskii <eliz@gnu.org>
21508
21509 * msdos.c (dos_rawgetc): Undo last change (there's no ``leaving
21510 selected frame'' on MSDOS).
21511
215122007-10-12 Martin Rudalics <rudalics@gmx.at>
21513
21514 * frame.c (Qexplicit_name): New variable.
21515 (x_report_frame_params): Report it in parameter alist.
21516 (syms_of_frame): Intern and staticpro it.
21517
215182007-10-10 Patrick Mahan <mahan@mahan.org> (tiny change)
21519
21520 * macfns.c (x_create_tip_frame): Set terminal for frame.
21521
215222007-10-10 Stefan Monnier <monnier@iro.umontreal.ca>
21523
21524 * frame.c (Qenvironment): Remove.
21525 (syms_of_frame) <Qenvironment>: Don't initialize.
21526 (Fdelete_frame): Don't treat the `environment' param specially.
21527 * frame.h (Qenvironment): Don't declare.
21528 * callproc.c (set_initial_environment): Don't set unused frame param.
21529
21530 * frame.c (Fframe_with_environment): Remove.
21531 (syms_of_frame) <Sframe_with_environment>: Don't declare.
21532
21533 * lisp.h (Fframe_with_environment): Don't declare.
21534
215352007-10-10 Juanma Barranquero <lekktu@gmail.com>
21536
21537 * indent.c (indent_tabs_mode, last_known_column)
21538 (last_known_column_modified): Make static.
21539 (syms_of_indent) <indent-tabs-mode>: Remove redundant info in docstring.
21540
215412007-10-10 Katsumi Yamaoka <yamaoka@jpl.org>
21542
21543 * puresize.h (BASE_PURESIZE): Increase to 1170000.
21544
215452007-10-09 Jason Rumney <jasonr@gnu.org>
21546
21547 * w32term.c (x_set_window_size): Disable code that attempts to tell
21548 Lisp code about a size change before it actually happens.
21549
215502007-10-09 Richard Stallman <rms@gnu.org>
21551
21552 * xdisp.c (handle_invisible_prop): After setting up an ellipsis,
21553 return HANDLED_RETURN.
21554
215552007-10-08 Martin Rudalics <rudalics@gmx.at>
21556
21557 * keyboard.c (kbd_buffer_get_event): Break loop waiting for input
21558 when there's an unread command event.
21559
21560 * frame.c (focus_follows_mouse): Move here from frame.el to allow
21561 window autoselection act appropriately when leaving selected frame.
21562 (syms_of_frame): Initialize focus_follows_mouse.
21563 * frame.h (focus_follows_mouse): Extern it.
21564 * macterm.c (XTread_socket): When focus_follows_mouse is nil
21565 make SELECT_WINDOW_EVENT only if we don't leave the selected frame.
21566 * msdos.c (dos_rawgetc): Likewise.
21567 * w32term.c (w32_read_socket): Likewise.
21568 * xterm.c (handle_one_xevent): Likewise.
21569 * xdisp.c (syms_of_xdisp): In doc-string of
21570 mouse-autoselect-window mention focus-follows-mouse.
21571
215722007-10-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21573
21574 * macterm.c (mac_load_query_font): Fix missing return value.
21575 [USE_CG_DRAWING] (mac_define_fringe_bitmap, mac_destroy_fringe_bitmap):
21576 Add BLOCK_INPUT.
21577
215782007-10-08 Richard Stallman <rms@gnu.org>
21579
21580 * xdisp.c (get_window_cursor_type): Implement documented behavior
21581 for cursor-in-non-selected-windows = t.
21582
215832007-10-08 Jason Rumney <jasonr@gnu.org>
21584
21585 * w32.c (w32_get_resource): Always close registry keys.
21586
215872007-10-08 Jason Rumney <jasonr@gnu.org>
21588
21589 * makefile.w32-in (LIBS): Add COMCTL32.
21590
21591 * w32fns.c (globals_of_w32fns): Init common controls.
21592
215932007-10-08 Richard Stallman <rms@gnu.org>
21594
21595 * image.c (our_memory_buffer): Rename from omfib_buffer.
21596
215972007-10-08 Richard Stallman <rms@gnu.org>
21598
21599 * buffer.c (Foverlays_at): Doc fix.
21600
216012007-10-08 Stefan Monnier <monnier@iro.umontreal.ca>
21602
21603 * fns.c (Fplist_put): Preserve uneven tail data.
21604
216052007-10-08 Peter O'Gorman <bug-gnu-emacs@mlists.thewrittenword.com> (tiny change)
21606
21607 * termhooks.h (enum event_kind): Remove trailing comma.
21608
21609 * frame.h (enum): Remove trailing comma.
21610
216112007-10-08 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
21612
21613 * w32proc.c (delete_child): Don't terminate threads of zombies.
21614
216152007-10-08 Martin Rudalics <rudalics@gmx.at>
21616
21617 * keyboard.h (struct kboard): New elt Vlast_repeatable_command.
21618
21619 * keyboard.c (syms_of_keyboard): Set up new Lisp variable
21620 last-repeatable-command.
21621 (init_kboard): Initialize Vlast_repeatable_command.
21622 (command_loop_1): Set it to real_this_command unless that was
21623 bound to an input event.
21624 (mark_kboards): Mark it.
21625
216262007-10-08 Richard Stallman <rms@gnu.org>
21627
21628 * eval.c (condition-case): Doc fix.
21629
216302007-10-08 Masatake YAMATO <jet@gyve.org>
21631
21632 * xfaces.c (tty_supports_face_attributes_p): Fix code
21633 for LFACE_INVERSE_INDEX and LFACE_BACKGROUND_INDEX; code
21634 was copied and not edited.
21635
216362007-10-09 Stefan Monnier <monnier@iro.umontreal.ca>
21637
21638 Add new `input-decode-map' keymap and use it for terminal
21639 escape sequences.
21640 * keyboard.h (struct kboard): Add Vinput_decode_map.
21641 Remove Vlocal_key_translation_map.
21642 * keyboard.c (read_key_sequence): Add support for input-decode-map.
21643 (init_kboard): Init input-decode-map.
21644 Replace local-key-translation-map back with key-translation-map.
21645 (syms_of_keyboard): Declare input-decode-map.
21646 Remove local-key-translation-map. Update docstrings.
21647 (mark_kboards): Mark Vinput_decode_map.
21648 Don't mark Vlocal_key_translation_map.
21649 * keymap.c (Fdescribe_buffer_bindings): Describe input-decode-map.
21650 Replace local-key-translation-map back with key-translation-map.
21651 * term.c (term_get_fkeys_1, CONDITIONAL_REASSIGN):
21652 Bind in input-decode-map rather than function-key-map.
21653
21654 * lisp.h (XSETPSEUDOVECTOR): Don't set the tag anymore.
21655 This was made redundant by the previous introduction of XSETPVECTYPE.
21656
216572007-10-09 Richard Stallman <rms@gnu.org>
21658
21659 * image.c (free_bitmap_record): Rename from Free_Bitmap_Record.
21660
216612007-09-29 Richard Stallman <rms@gnu.org>
21662
21663 * eval.c (internal_condition_case_2, internal_condition_case_1)
21664 (internal_condition_case): Reenable abort if x_catching_errors ()
21665 to see if that really happens and why.
21666
216672007-10-06 Andreas Schwab <schwab@suse.de>
21668
21669 * fileio.c (Fwrite_region): Ignore EINVAL error from fsync.
21670
216712007-10-04 Juanma Barranquero <lekktu@gmail.com>
21672
21673 * image.c (syms_of_image) <image-types>: Fix typo in docstring.
21674
216752007-10-03 Stefan Monnier <monnier@iro.umontreal.ca>
21676
21677 * frame.h (struct frame): Don't try to GC-mark menu_bar_items_used.
21678
216792007-10-02 Stefan Monnier <monnier@iro.umontreal.ca>
21680
21681 * window.h (struct window):
21682 * window.c (struct save_window_data, struct saved_window):
21683 * termhooks.h (struct terminal):
21684 * process.h (struct Lisp_Process):
21685 * frame.h (struct frame):
21686 * buffer.h (struct buffer):
21687 * lisp.h (struct Lisp_Vector, struct Lisp_Char_Table)
21688 (struct Lisp_Bool_Vector, struct Lisp_Subr, struct Lisp_Hash_Table):
21689 The size field of (pseudo)vectors is now unsigned.
21690 (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Simplify accordingly.
21691
21692 * lisp.h (struct Lisp_Hash_Table): Move non-traced elements at the end.
21693 Turn `count' into an integer.
21694
21695 * fns.c (make_hash_table, hash_put, hash_remove, hash_clear)
21696 (sweep_weak_table, sweep_weak_hash_tables, Fhash_table_count):
21697 * print.c (print_object) <HASH_TABLE_P>: `count' is an int.
21698 * alloc.c (allocate_hash_table): Use ALLOCATE_PSEUDOVECTOR.
21699 (mark_object) <HASH_TABLE_P>: Use mark_vectorlike.
21700
21701 * alloc.c (allocate_pseudovector): New fun.
21702 (ALLOCATE_PSEUDOVECTOR): New macro.
21703 (allocate_window, allocate_terminal, allocate_frame)
21704 (allocate_process): Use it.
21705 (mark_vectorlike): New function.
21706 (mark_object) <FRAMEP, WINDOWP, BOOL_VECTOR_P, VECTORP>: Use it.
21707 (mark_terminals): Use it.
21708 (Fmake_bool_vector, Fmake_char_table, make_sub_char_table)
21709 (Fmake_byte_code): Use XSETPVECTYPE.
21710
21711 * frame.c (Fframe_parameters): Minor simplification.
21712
21713 * insdel.c (adjust_markers_for_insert): Generalize assertion checks.
21714
21715 * marker.c (Fmarker_buffer): Make test for odd case into a failure.
21716
21717 * buffer.c (Fget_buffer_create, init_buffer_once):
21718 * lread.c (defsubr):
21719 * window.c (Fcurrent_window_configuration): Use XSETPVECTYPE.
21720
21721 * lisp.h (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Don't let them be
21722 defined differently in the m/*.h files.
21723 (XCHAR_TABLE, XBOOL_VECTOR): Add assertion checking.
21724 (XSETPVECTYPE): New macro.
21725 (XSETPSEUDOVECTOR): Use it.
21726
21727 * buffer.c (syms_of_buffer) <local-abbrev-table>: Move from abbrev.c.
21728 (DEFVAR_PER_BUFFER, defvar_per_buffer): Move from lisp.h and lread.c.
21729
21730 * lisp.h (defvar_per_buffer, DEFVAR_PER_BUFFER):
21731 * lread.c (defvar_per_buffer):
21732 * abbrev.c (syms_of_abbrev) <local-abbrev-tabl>: Move to buffer.c.
21733
21734 * window.c (candidate_window_p): Only consider as visible frames that
21735 are on the same terminal.
21736
21737 * m/ibms390x.h (MARKBIT): Remove unused macro.
21738
217392007-10-01 Juanma Barranquero <lekktu@gmail.com>
21740
21741 * lread.c (Fload): Fix typo in docstring.
21742
217432007-10-01 Michaël Cadilhac <michael@cadilhac.name>
21744
21745 * floatfns.c (Fexpt): Manually check for overflows, so that a power
21746 of a non-zero value can't yield zero.
21747
217482007-09-29 Stefan Monnier <monnier@iro.umontreal.ca>
21749
21750 * term.c (term_clear_mouse_face, term_mouse_highlight)
21751 (tty_write_glyphs_with_face): Only define is HAVE_GPM.
21752
21753 * print.c (safe_debug_print): Use XHASH.
21754
21755 * lisp.h (DECL_ALIGN, USE_LSB_TAG): Move logic to before definition of
21756 Lisp elements such as tags.
21757 (XHASH): New macro.
21758 (EQ): Use it.
21759 (SREF, SSET, STRING_COPYIN): Use SDATA.
21760 (VOID_TO_LISP, CVOID_TO_LISP, LISP_TO_VOID, LISP_TO_CVOID): Remove.
21761
21762 * alloc.c (mark_terminal): Remove left-over declaration.
21763 (enum mem_type): Replace all vector subtypes -> MEM_TYPE_VECTORLIKE.
21764 (allocate_vectorlike): Remove type argument. Adjust callers.
21765 (live_vector_p, mark_maybe_pointer, valid_lisp_object_p):
21766 Only handle the one remaining MEM_TYPE_VECTORLIKE.
21767
21768 * alloc.c (MALLOC_BLOCK_INPUT, MALLOC_UNBLOCK_INPUT): New macros
21769 to avoid unnecessary BLOCK_INPUTs when SYNC_INPUT is used.
21770 (xmalloc, xrealloc, xfree, lisp_malloc, lisp_free, lisp_align_malloc)
21771 (lisp_align_free, make_interval, allocate_string, allocate_string_data)
21772 (make_float, Fcons, allocate_vectorlike, Fmake_symbol, allocate_misc):
21773 Use them.
21774
21775 * xfaces.c (load_face_font, free_realized_face, clear_face_gcs):
21776 Don't let signal handlers run when a GC is freed but not yet NULL'ed.
21777 (x_free_gc): Remove BLOCK_INPUT since it's now redundant.
21778
217792007-09-28 Dan Nicolaescu <dann@ics.uci.edu>
21780
21781 * Makefile.in (lisp, shortlisp): Delete server.elc, it is not
21782 loaded by default.
21783
217842007-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
21785
21786 * term.c (Fgpm_mouse_start): Don't signal an error if already activated
21787 on this tty.
21788 (Fgpm_mouse_stop): Only deactivate if it was activated on this tty.
21789
21790 * term.c (mouse_face_window): Rename from Qmouse_face_window.
21791 Update all users.
21792 (handle_one_term_event): Use Gpm_DrawPointer.
21793 (Fgpm_mouse_start): Rename from Fterm_open_connection.
21794 Signal errors instead of returning nil. Always return nil.
21795 (Fgpm_mouse_stop): Rename from Fterm_close_connection.
21796 Make it a noop if gpm-mouse was not activated.
21797 (syms_of_term): Update names.
21798
217992007-09-27 Stefan Monnier <monnier@iro.umontreal.ca>
21800
21801 * sysdep.c (narrow_foreground_group, widen_foreground_group): Static.
21802 (init_sys_modes): Check that gpm_tty is the current tty.
21803
21804 * alloc.c (allocate_terminal): Set the vector size to only count the
21805 lisp fields. Initialize those to nil.
21806 (mark_object): Don't treat terminals specially.
21807 (mark_terminal): Remove.
21808 (mark_terminals): Use mark_object instead.
21809
21810 * termhooks.h (struct terminal): Move all Lisp_Object fields traced by
21811 the GC to the beginning.
21812
21813 * indent.h:
21814 * indent.c: Use EMACS_INT for ints coming from Elisp data.
21815
21816 * indent.c (Fmove_to_column): Use EMACS_INT for buffer positions.
21817
218182007-09-25 Jason Rumney <jasonr@gnu.org>
21819
21820 * frame.c (make_terminal_frame): Remove special case for WINDOWSNT.
21821
21822 * w32console.c (create_w32cons_output): Remove.
21823
21824 * term.c (init_tty): Call init_sys_modes on WINDOWSNT also.
21825
21826 * sysdep.c (init_sys_modes): Use set_terminal_modes_hook.
21827 (reset_sys_modes): Use reset_terminal_modes_hook.
21828
218292007-09-24 Stefan Monnier <monnier@iro.umontreal.ca>
21830
21831 * eval.c (do_autoload): Don't output any message.
21832
218332007-09-24 Juri Linkov <juri@jurta.org>
21834
21835 * emacs.c (standard_args): Change priority of "--no-splash"
21836 from 40 to 3. Add "--no-desktop" with the same priority.
21837
218382007-09-23 Dmitry Antipov <dmantipov@yandex.ru>
21839
21840 * alloc.c (gc_sweep): Check cons cell mark bits word by word
21841 and optimize the case where they are all 1.
21842
218432007-09-23 Johannes Weiner <hannes@saeurebad.de>
21844
21845 * lisp.h (abs): Define if not defined.
21846 * keyboard.c, sound.c, w32term.c, xfaces.c, xterm.c:
21847 Don't define `abs', since it's defined in lisp.h.
21848
218492007-09-22 Eli Zaretskii <eliz@gnu.org>
21850
21851 * term.c (DEV_TTY): New macro. Provide a definition for MS-Windows.
21852 (FRAME_TERMCAP_P) [WINDOWSNT]: Don't define to zero.
21853 (Fcontrolling_tty_p, Fresume_tty, dissociate_if_controlling_tty)
21854 (init_tty): Use DEV_TTY instead of "/dev/tty".
21855 [WINDOWSNT]: No need to protect from NAME arg being null.
21856
218572007-09-21 Dan Nicolaescu <dann@ics.uci.edu>
21858
21859 * term.c (Fsuspend_tty): Run suspend-tty-functions before cleaning
21860 up the tty state.
21861
218622007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
21863
21864 * termhooks.h (term_gpm): Delete. Use gpm_tty's NULLness instead.
21865 (gpm_tty): Change its type.
21866 * term.c (term_gpm): Delete. Use gpm_tty's NULLness instead.
21867 (gpm_tty): Change its type and initialize it.
21868 (Fterm_open_connection): Check the frame is indeed a tty.
21869 Use the new gpm_tty.
21870 (Fterm_close_connection): Use the new gpm_tty.
21871 * keyboard.c (tty_read_avail_input): Use the new gpm_tty.
21872 * sysdep.c (init_sys_modes): term_gpm -> gpm_tty.
21873
218742007-09-21 Juanma Barranquero <lekktu@gmail.com>
21875
21876 * w32term.c (x_draw_glyph_string): Use strike_through_color, not
21877 underline_color, to draw strike-through.
21878
218792007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
21880
21881 * lisp.h (allocate_terminal): Declare.
21882
21883 * window.c (candidate_window_p): Consider frames that are being placed
21884 by the user as somewhere between visible and iconified.
21885 (window_loop): Prefer windows on the current frame.
21886 (Fselect_window): Move the use of select-frame to the beginning so we
21887 can just delegate all the work (it'll call us back anyway).
21888
21889 * frame.c (Qdisplay_environment_variable):
21890 * frame.h (Qdisplay_environment_variable): Delete.
21891
21892 * .gdbinit (xbacktrace): Print the arg's address rather than the value
21893 of the first arg, since that value may be a union.
21894
21895 * callproc.c (child_setup, getenv_internal): Use the frame's `display'
21896 parameter rather than Qdisplay_environment_variable. If all else
21897 fails, look for DISPLAY in initial-environment.
21898
218992007-09-21 Glenn Morris <rgm@gnu.org>
21900
21901 * Makefile.in (emacstool): Remove target.
21902 (lisp, shortlisp): Remove termdev.elc.
21903
219042007-09-21 Markus Triska <markus.triska@gmx.at>
21905
21906 * xterm.c (x_delete_display): Compile session management conditionally.
21907
219082007-09-20 Stefan Monnier <monnier@iro.umontreal.ca>
21909
21910 * callproc.c (getenv_internal_1): New function.
21911 (getenv_internal): Use it.
21912 (Fgetenv_internal): Use it. Accept an env-list as optional arg.
21913
21914 * terminal.c (get_terminal): Don't accept ints to represent terminals.
21915 (Fterminal_name, Fterminal_parameters, Fterminal_parameter)
21916 (Fset_terminal_parameter): Work with dead terminals as well.
21917 (Fmodify_terminal_parameters): Remove.
21918
21919 * terminal.c (get_terminal): Handle terminals.
21920 Make sure the terminal returned is live.
21921 (create_terminal): Use allocate_terminal.
21922 (mark_terminals): Move to alloc.c.
21923 (delete_terminal): Use terminal->name as liveness status.
21924 NULL out fields after freeing their contents.
21925 Don't deallocate the object.
21926 (Fframe_terminal): Use FRAME_TERMINAL. Return the terminal object
21927 rather than an int.
21928 (Fterminal_live_p): Accept non-integer arguments.
21929 (Fterminal_list): Return terminal objects rather than an ints.
21930
21931 * alloc.c (enum mem_type): New member for `terminal' objects.
21932 (allocate_terminal): New function.
21933 (mark_maybe_pointer, valid_lisp_object_p, mark_object):
21934 Handle terminals.
21935 (mark_terminal): New fun.
21936 (mark_terminals): Move from terminal.c.
21937
21938 * term.c (get_tty_terminal): Don't treat output_initial specially.
21939 (Fsuspend_tty, Fresume_tty): Use terminal objects rather than ints.
21940 (delete_tty): Use terminal->name as liveness status.
21941
21942 * termhooks.h (struct terminal): Make it into a pseudovector.
21943 Remove `deleted' replaced by checking `name's nullness.
21944
21945 * print.c (print_object): Handle terminals.
21946
21947 * lisp.h (enum pvec_type): New `terminal' pseudovector.
21948 (XTERMINAL, XSETTERMINAL, TERMINALP, GC_TERMINALP): New macros.
21949
21950 * frame.c (make_terminal_frame):
21951 * keyboard.c (tty_read_avail_input):
21952 * w32term.c (x_delete_terminal):
21953 * xfns.c (Fx_create_frame, x_create_tip_frame):
21954 * xterm.c (x_delete_terminal): Use terminal->name as liveness status.
21955
219562007-09-20 Glenn Morris <rgm@gnu.org>
21957
21958 * process.c (Fmake_network_process): Doc fix.
21959
219602007-09-19 Jason Rumney <jasonr@gnu.org>
21961
21962 * dispextern.h (w32_init_fringe, mac_init_fringe): Declare rif argument.
21963
219642007-09-19 Michaël Cadilhac <michael@cadilhac.name>
21965
21966 * coding.c (detect_eol_type, detect_eol_type_in_2_octet_form):
21967 Fix a C warning regarding variable constness.
21968
21969 * xterm.c (handle_one_xevent): Fix a C warning.
21970
219712007-09-18 Jason Rumney <jasonr@gnu.org>
21972
21973 * w32fns.c (Fx_focus_frame): Rename from Fw32_focus_frame.
21974
219752007-09-17 Jan Djärv <jan.h.d@swipnet.se>
21976
21977 * gtkutil.c (gdpy_def): New variable.
21978 (xg_initialize): Initialize gdpy_def.
21979 (xg_display_close): If no other display exists, set gdpy_def to a
21980 new connection.
21981
219822007-09-16 Jan Djärv <jan.h.d@swipnet.se>
21983
21984 * gtkutil.c (xg_get_image_for_pixmap): Always create a GdkPixbuf
21985 when we have no file name for the icon.
21986 (xg_tool_bar_expose_callback): Remove.
21987 (xg_create_tool_bar): Don't connect expose signal to
21988 xg_tool_bar_expose_callback.
21989 (xg_get_file_with_chooser): Move GCPRO1 after declarations.
21990
219912007-09-16 Andreas Schwab <schwab@suse.de>
21992
21993 * alloc.c (reset_malloc_hooks): Set the hooks to the previous
21994 values instead of zapping them.
21995
219962007-09-14 Glenn Morris <rgm@gnu.org>
21997
21998 * fringe.c (init_fringe_bitmap) <swap_nibble>: Move to file scope.
21999 * gtkutil.c (xg_separator_p) <separator_names>: Move to file scope.
22000 * image.c (our_memory_fill_input_buffer) <buffer>: Move to file
22001 scope and rename to omfib_buffer for clarity.
22002 (gif_load) <interlace_start, interlace_increment>: Move to file scope.
22003
220042007-09-14 Kenichi Handa <handa@m17n.org>
22005
22006 * xterm.c (handle_one_xevent): Skip decoding if nbytes is zero.
22007
220082007-09-13 Jason Rumney <jasonr@gnu.org>
22009
22010 * fringe.c (w32_init_fringe, mac_init_fringe): Add rif argument.
22011
22012 * w32term.c (w32_term_init): Pass rif to w32_init_fringe.
22013
22014 * macterm.c (mac_initialize): Don't call mac_init_fringe here.
22015 (mac_term_init): Call here instead, passing rif.
22016
220172007-09-13 Glenn Morris <rgm@gnu.org>
22018
22019 * s/hpux.h: No longer define `static' as nothing.
22020
220212007-09-13 Johan Bockgård <bojohan@gnu.org>
22022
22023 * callint.c (Fcall_interactively): Remove unused var `fun'.
22024
220252007-09-12 Romain Francoise <romain@orebokech.com>
22026
22027 * window.c (prefer_window_split_horizontally, display_buffer):
22028 Revert 2007-09-08 change.
22029
220302007-09-12 Glenn Morris <rgm@gnu.org>
22031
22032 * alloca.c: Remove file.
22033 * Makefile.in (alloca): Do not undef.
22034 (allocaobj, alloca.o): Remove.
22035 (otherobj): Remove allocaobj.
22036 * keyboard.c (command_loop_1): Remove #ifdef C_ALLOCA block.
22037 * regex.c (C_ALLOCA): Remove all references and code that was only
22038 used when this was defined.
22039 * search.c (boyer_moore): Remove #ifdef C_ALLOCA block.
22040 * xmenu.c (xmenu_show): Remove #ifdef C_ALLOCA block.
22041 * m/ibms390x.h, m/sh3el.h (C_ALLOCA): Remove references to this.
22042
22043 * Makefile.in (SOURCES, unlock, relock): Delete.
22044
22045 * gtkutil.c (cnt): Rename to menu_grab_callback_cnt for clarity.
22046 (menu_grab_callback): All uses changed.
22047
22048 * xselect.c (cnt): Rename to x_reply_selection_request_cnt for clarity.
22049 (x_reply_selection_request): All uses changed.
22050
220512007-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
22052
22053 * lread.c (load_warn_old_style_backquotes): Change message to look
22054 better when it appears in the middle of byte-compiler messages.
22055
220562007-09-10 Dan Nicolaescu <dann@ics.uci.edu>
22057
22058 * s/darwin.h (MULTI_KBOARD): Only define for Carbon.
22059
22060 * xterm.c (x_create_terminal): Add comment.
22061
22062 * term.c (clear_tty_hooks, set_tty_hooks): Add comments.
22063
220642007-09-10 Richard Stallman <rms@gnu.org>
22065
22066 * xterm.c (x_term_init): Give error if can't open DISPLAY_NAME.
22067
220682007-09-10 Michaël Cadilhac <michael@cadilhac.name>
22069
22070 * lisp.h (struct Lisp_Subr): Rename `prompt' field to `intspec'.
22071 (DEFUN): Document `intspec', use it instead of `prompt'.
22072
22073 * eval.c (Fcommandp): Change `->prompt' to `->intspec'.
22074
22075 * data.c (Finteractive_form): If the interactive specification starts
22076 with a `(', use it as a Lisp form.
22077
22078 * fileio.c (Fset_file_modes): Add an interactive spec that reads a file
22079 name and file modes.
22080
22081 * callint.c (Fcall_interactively): Comment fixes.
22082
220832007-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
22084
22085 * callint.c (Fcall_interactively): Use Finteractive_form also for subrs
22086 and compiled functions.
22087
220882007-09-08 Fredrik Axelsson <f.axelsson@gmail.com>
22089
22090 * window.c (prefer_window_split_horizontally): New variable.
22091 (display_buffer): Consider splitting window horizontally depending
22092 on prefer_window_split_horizontally.
22093
220942007-09-08 Eli Zaretskii <eliz@gnu.org>
22095
22096 * sysdep.c [WINDOWSNT]: Don't include sysselect.h.
22097
220982007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
22099
22100 * s/cygwin.h (GC_MARK_STACK): Enable conservative stack marking.
22101
22102 * frame.c (x_set_frame_parameters): Check number is positive before
22103 using XFASTINT.
22104
22105 * window.c (freeze_window_start): Don't presume selected_window holds
22106 a window object.
22107 (Fdisplay_buffer): Remove `register' since `buffer' needs to be gcpro'd.
22108
221092007-09-07 Angelo Graziosi <Angelo.Graziosi@roma1.infn.it> (tiny change)
22110
22111 * term.c (dissociate_if_controlling_tty): Call setsid on CYGWIN.
22112
221132007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
22114
22115 * window.c (Vsplit_window_preferred_function): New var.
22116 (Fdisplay_buffer): Use it.
22117 (syms_of_window): Export, and initialize it.
22118
221192007-09-06 Pixel <pixel@mandriva.com> (tiny change)
22120
22121 * image.c (gif_load): Fix bug: Handle nonexistent colormap.
22122
221232007-09-06 Glenn Morris <rgm@gnu.org>
22124
22125 * gtkutil.c (menu_grab_callback) <cnt>:
22126 * xselect.c (x_reply_selection_request) <cnt>: Move static
22127 variable to file scope.
22128
221292007-09-06 Stefan Monnier <monnier@iro.umontreal.ca>
22130
22131 * xdisp.c (redisplay_internal): Make sure Elisp code always sees
22132 consistent values of selected_frame and selected_window.
22133
221342007-09-04 Jason Rumney <jasonr@gnu.org>
22135
22136 * w32console.c (initialize_w32_display): Zero unused hooks.
22137
221382007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
22139
22140 * term.c (Vsuspend_tty_functions, Vresume_tty_functions)
22141 (syms_of_term, Fsuspend_tty, Fresume_tty): Undo previous change.
22142
221432007-09-04 Jason Rumney <jasonr@gnu.org>
22144
22145 * term.c (init_tty) [WINDOWSNT]: Add hooks that are not accessible
22146 in w32console.c. Set up input. Remove XXX comments that have been
22147 confirmed as correct.
22148
22149 * s/ms-w32.h (MULTI_KBOARD): Define.
22150
22151 * w32console.c (one_and_only_w32cons): Remove.
22152 (initialize_w32_display): Take terminal argument.
22153
22154 * term.c (init_tty) [WINDOWSNT]: Pass terminal to
22155 initialize_w32_display.
22156 (init_tty) [MULTI_KBOARD]: Include this code on WINDOWSNT too.
22157
22158 * termhooks.h (enum event_kind) <HORIZ_WHEEL_EVENT>: New event.
22159
22160 * keyboard.c (discard_mouse_events): Discard it.
22161 (make_lispy_event): Translate it to a lisp event.
22162 (lispy_wheel_names): Add wheel-left and right events.
22163 (syms_of_keyboard): Enlarge wheel_syms.
22164
22165 * w32fns.c (w32_wnd_proc) <WM_DROPFILES>: Merge with WM_MOUSEWHEEL.
22166 <WM_MOUSEHWHEEL>: Pass new system message to lisp.
22167
22168 * w32term.h (WM_MOUSEHWHEEL): Define if system headers don't.
22169
22170 * w32term.c (construct_mouse_wheel): Make HORIZ_WHEEL_EVENT
22171 from WM_MOUSEHWHEEL.
22172 (w32_read_socket) <WM_MOUSEHWHEEL>: Treat as WM_MOUSEWHEEL.
22173
22174 * w32fns.c (x_create_tip_frame) [MULTI_KBOARD]: Get keyboard from
22175 terminal.
22176
22177 * w32term.c (w32_create_terminal) [MULTI_KBOARD]: Create a new
22178 keyboard for the terminal.
22179
221802007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
22181
22182 * term.c (Vsuspend_tty_hook): Rename from Vsuspend_tty_functions.
22183 (Vresume_tty_hook): Rename from Vresume_tty_functions.
22184 (syms_of_term): Rename suspend-tty-functions to suspend-tty-hook
22185 and resume-tty-function to resume-tty-hook.
22186 (Fsuspend_tty, Fresume_tty): Use new names.
22187
221882007-09-02 Jan Djärv <jan.h.d@swipnet.se>
22189
22190 * gtkutil.c (update_frame_tool_bar): Handle stock name as a named icon
22191 if it starts with "n:".
22192
221932007-08-31 Jan Djärv <jan.h.d@swipnet.se>
22194
22195 * gtkutil.c (update_frame_tool_bar): Initialize wbutton to NULL.
22196
221972007-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
22198
22199 * frame.h:
22200 * frame.c (Qterm_environment_variable): Remove.
22201 (syms_of_frame): Don't init and staticpro it.
22202
22203 * callproc.c (getenv_internal): Remove special case for $TERM.
22204
22205 * callproc.c (Vinitial_environment): New variable.
22206 (set_initial_environment): Initialize it.
22207 (syms_of_callproc): Declare it.
22208 (child_setup): Don't mess with TERM via Qterm_environment_variable; the
22209 TERM under which a process runs is never related to the TERM in which
22210 Emacs is running.
22211
222122007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
22213
22214 * config.in (HAVE_WINDOW_SYSTEM): Don't undef MULTI_KBOARD here...
22215 * s/darwin.h: ... do it here.
22216
222172007-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
22218
22219 * lisp.h (set_initial_environment): Rename from set_global_environment.
22220
22221 * Makefile.in (${etc}DOC): Re-add a ${EXEEXT} which seems to have been
22222 removed by mistake on the multi-tty branch.
22223
22224 * frame.c (make_terminal_frame): Yet Another Int/Lisp_Object Mixup.
22225 (Fmodify_frame_parameters): Return a value.
22226
22227 * image.c (png_load): Comment-out var only used in commented-out code.
22228
22229 * term.c (mark_ttys): Don't bother checking top_frame (incorrectly)
22230 before passing it to mark_object.
22231
22232 * xfaces.c (internal_resolve_face_name): Return a value.
22233 (internal_resolve_face_name, resolve_face_name_error): Comment out.
22234
22235 * xfns.c (check_x_display_info): Yet Another Int/Lisp_Object Mixup.
22236 (x_icon): Comment-out var only used in commented-out code.
22237
222382007-08-29 Romain Francoise <romain@orebokech.com>
22239
22240 * keyboard.c (Fset_input_mode): Don't call `Fset_quit_char' if
22241 QUIT hasn't been provided.
22242
222432007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
22244
22245 * callproc.c (child_setup, getenv_internal): Use the
22246 display-environment-variable and term-environment-variable frame params.
22247 (set_initial_environment): Initialise Vprocess_environment.
22248
22249 * config.in: Disable multi-keyboard support on a mac.
22250
22251 * frame.c (Qterm_environment_variable)
22252 (Qdisplay_environment_variable): New variables.
22253 (syms_of_frame): Intern and staticpro them.
22254 (Fmake_terminal_frame): Disable output method test.
22255
22256 * frame.h: Declare them here.
22257
22258 * macfns.c (x_set_mouse_color): Get rif from the frame.
22259 (x_set_tool_bar_lines): Don't use updating_frame.
22260 (mac_window): Add 2 new parameters for consistency with other systems.
22261 (Fx_create_frame): Fix doc string. Rename the parameter. Set the
22262 frame parameters following what is done in X11 and w32. Don't use
22263 FRAME_MAC_DISPLAY_INFO.
22264 (Fx_open_connection, start_hourglass): Remove window-system check.
22265 (x_create_tip_frame): Get the keyboard from the terminal.
22266
22267 * macmenu.c: Reorder includes.
22268 (Fx_popup_menu): Use terminal specific mouse_position_hook.
22269
22270 * macterm.c (XTset_terminal_modes, XTreset_terminal_modes): Add a
22271 terminal parameter.
22272 (x_clear_frame): Add a frame parameter.
22273 (note_mouse_movement): Get rif from the frame.
22274 (mac_term_init): Initialize the terminal.
22275 (mac_initialize): Make static and move terminal initialization ...
22276 (mac_create_terminal): ... to this new function.
22277
22278 * macterm.h (struct mac_display_info): Add terminal.
22279 (mac_initialize): Delete declaration.
22280
22281 * puresize.h (BASE_PURESIZE): Increase base value to 1164000.
22282
22283 * sysdep.c: Comment out text after #endif.
22284
22285 * term.c (init_tty): Only use terminal->kboard when MULTI_KBOARD
22286 is defined. Better initialize ttys in windows. Use terminal
22287 specific mouse_position_hook.
22288
22289 * termhooks.h (union display_info): Add mac_display_info.
22290
22291 * w32fns.c (Fx_create_frame): Use kboard from the terminal.
22292 Set the default minibuffer frame, window_system and the rest of the
22293 frame parameters following what is done in X11.
22294
22295 * w32term.c (w32_initialize): Make static.
22296
22297 * xselect.c (x_handle_selection_clear): Only access
22298 terminal->kboard when MULTI_KBOARD is defined.
22299
22300 * s/darwin.h (SYSTEM_PURESIZE_EXTRA): Define here.
22301 (SYSTEM_PURESIZE_EXTRA): Only define on Carbon.
22302
223032007-08-29 Jason Rumney <jasonr@gnu.org>
22304
22305 * frame.c (Fdelete_frame): Only get kboard when MULTI_KBOARD defined.
22306 (make_terminal_frame) [WINDOWSNT]: Initialize terminal.
22307
22308 * fringe.c (w32_init_fringe w32_reset_fringes) [HAVE_NTGUI]:
22309 (mac_init_fringe) [MAC_OS]: Get rif from selected_frame.
22310
22311 * keyboard.c (restore_kboard_configuration): Only define when
22312 MULTI_KBOARD defined.
22313
22314 * makefile.w32-in: Update dependancies from Makefile.in.
22315 (OBJ1): Add terminal.$(O)
22316
22317 * term.c (dissociate_if_controlling_tty) [WINDOWSNT]:
22318 Don't define function body.
22319 (init_tty) [WINDOWSNT]: Use selected_frame for initializing.
22320
22321 * termhooks.h (display_info) [WINDOWSNT]: Add w32.
22322
22323 * w32.c (request_sigio, unrequest_sigio): Remove.
22324
22325 * w32console.c (w32con_move_cursor, w32con_clear_to_end)
22326 (w32con_clear_frame, w32con_clear_end_of_line)
22327 (w32con_ins_del_lines, w32con_insert_glyphs, w32con_write_glyphs)
22328 (w32con_delete_glyphs, w32con_set_terminal_window)
22329 (scroll_line, w32_sys_ring_bell): Add frame arg.
22330 (w32con_set_terminal_modes, w32con_reset_terminal_modes):
22331 Add terminal arg.
22332 (PICK_FRAME): Remove.
22333 (w32con_write_glyphs): Use frame specific terminal coding.
22334 (one_and_only_w32cons): New global variable.
22335 (initialize_w32_display): Use it for storing hooks.
22336 (create_w32cons_output): New function.
22337
22338 * w32inevt.c, w32inevt.h (w32_console_read_socket): Make first
22339 arg a frame.
22340
22341 * w32fns.c (x_create_tip_frame): Set terminal and ref count.
22342 Set window_system.
22343 (x_set_tool_bar_lines): Don't use updating_frame.
22344 (Fx_create_frame): Set terminal and ref count.
22345 (Fx_open_connection): Remove window-system check.
22346
22347 * w32menu.c (Fx_popup_menu): Use terminal specific mouse_position_hook.
22348
22349 * w32term.c (w32_term_init): Call add_keyboard_wait_descriptor.
22350 (w32_set_terminal_modes, w32_reset_terminal_modes): Add terminal arg.
22351 (x_clear_frame, x_delete_glyphs, w32_ring_bell, x_ins_del_lines):
22352 Add frame arg.
22353 (x_delete_terminal, w32_create_terminal): New functions.
22354 (w32_term_init): Create a terminal.
22355 (w32_initialize): Move terminal specific initialization to
22356 w32_create_terminal.
22357
22358 * w32term.h (x_output): Remove foreground_pixel and background_pixel.
22359 (w32_clear_rect, w32_clear_area): Use background from frame.
22360 (w32_display_info): Add terminal.
22361 (w32_sys_ring_bell, x_delete_display): Declare here.
22362
22363 * xdisp.c (display_menu_bar) [HAVE_NTGUI]: Check frame type.
22364
22365 * s/ms-w32.h (SYSTEM_PURESIZE_EXTRA): Bump to 50k.
22366
223672007-08-29 Kalle Olavi Niemitalo <kon@iki.fi> (tiny change)
22368
22369 * keyboard.c (interrupt_signal, handle_interrupt, Fset_quit_char):
22370 Fix get_named_tty calls for the controlling tty.
22371
223722007-08-29 ARISAWA Akihiro <ari@mbf.ocn.ne.jp> (tiny change)
22373
194d44e7 22374 * term.c (dissociate_if_controlling_tty) [USG]: Fix parse error.
aac0c6e3
MR
22375
223762007-08-29 Yoshiaki Kasahara <kasahara@nc.kyushu-u.ac.jp> (tiny change)
22377
22378 * term.c (tty_insert_glyphs): Add missing first parameter.
22379
223802007-08-29 Károly Lőrentey <karoly@lorentey.hu>
22381
22382 * buffer.c (Fbuffer_list, Fbury_buffer):
22383 Take frame->buried_buffer_list into account.
22384
22385 * cm.c (current_tty): New variable, for cmputc().
22386 (cmputc): Use it.
22387 (cmcheckmagic): Add tty parameter, look up terminal streams there.
22388 (calccost): Add tty parameter. Use emacs_tputs() instead of tputs().
22389 (cmgoto): Add tty parameter. Pass it on to calccost().
22390 Use emacs_tputs() instead of tputs().
22391
22392 * cm.h (emacs_tputs): New macro to set current_tty, and then call
22393 tputs().
22394 (current_tty): New variable, for cmputc().
22395 (cmcheckmagic, cmputc, cmgoto): Add prototypes.
22396
22397 * eval.c (unwind_to_catch): Don't call x_fully_uncatch_errors.
22398 (internal_condition_case, internal_condition_case_1)
22399 (internal_condition_case_2): Don't abort when x_catching_errors.
22400
22401 * fns.c (Fyes_or_no_p): Don't try to open an X dialog on tty terminals.
22402 (Fy_or_n_p): Likewise. Use temporarily_switch_to_single_kboard to
22403 prevent crashes caused by bogus longjmps in read_char.
22404
22405 * keymap.h (Fset_keymap_parent): Add EXFUN.
22406
22407 * macterm.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL)
22408 * w32term.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
22409 Remove redundant definition.
22410
22411 * macfns.c (x_set_mouse_color, x_make_gc):
22412 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
22413
22414 * w32term.c (x_free_frame_resources):
22415 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
22416 (w32_initialize): Use the accessor macros for terminal characteristics.
22417
22418 * macterm.c (mac_initialize): Use Fset_input_interrupt_mode.
22419 Use the accessor macros for terminal characteristics.
22420 * msdos.c (internal_terminal_init): Use the accessor macros for
22421 terminal characteristics.
22422 (ScreenVisualBell, internal_terminal_init):
22423 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
22424
22425 * termopts.h (no_redraw_on_reenter): Declare.
22426
22427 * alloc.c (emacs_blocked_malloc): Disable mallopt call.
22428 (mark_terminals, mark_ttys): Declare.
22429 (Fgarbage_collect): Call them.
22430 (mark_object): Mark buried_buffer_list.
22431
22432 * prefix-args.c: Include stdlib.h for exit.
22433
22434 * syssignal.h: Add comment.
22435
22436 * indent.c: Include stdio.h.
22437
22438 * window.h (Vinitial_window_system): Declare.
22439 (Vwindow_system): Delete declaration.
22440
22441 * fontset.c (Finternal_char_font): Use FRAME_RIF.
22442
22443 * image.c (lookup_image): Don't initialize `c' until the xasserts
22444 have been run.
22445
22446 * gtkutil.c (xg_create_frame_widgets): Use FRAME_BACKGROUND_PIXEL and
22447 FRAME_FOREGROUND_PIXEL.
22448
22449 * print.c (print_preprocess): Don't lose print_depth levels while
22450 iterating.
22451
22452 * widget.c (update_from_various_frame_slots):
22453 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
22454
22455 * window.c (set_window_buffer): Don't call clear_mouse_face on tty
22456 frames.
22457 (window_internal_height): Remove bogus make_number call.
22458 (init_window_once): Call make_terminal_frame with two zero parameters.
22459
22460 * fileio.c (Fread_file_name): Update comment.
22461
22462 * callint.c (Fcall_interactively):
22463 Use temporarily_switch_to_single_kboard instead of single_kboard_state.
22464 Make sure it is correctly unwound.
22465
22466 * xsmfns.c (x_session_close): New function.
22467
22468 * coding.h (terminal_coding, safe_terminal_coding, keyboard_coding):
22469 Delete declarations.
22470
22471 * xterm.h: Remove declaration for x_fully_uncatch_errors.
22472 (x_output): Remove background_pixel and foreground_pixel fields.
22473 (x_display_info): Add new field TERMINAL. Remove KBOARD field.
22474 (x_delete_device, x_session_close): Declare.
22475
22476 * lread.c: Include setjmp.h. Update declaration of `read_char'.
22477 (read_filtered_event): Call `read_char' with a local
22478 `wrong_kboard_jmpbuf'.
22479
22480 * minibuf.c (read_minibuf): Call temporarily_switch_to_single_kboard.
22481 Don't call single_kboard_state. Use FRAME_RIF.
22482
22483 * process.c (Fmake_network_process): Don't unrequest_sigio on modern
22484 systems.
22485
22486 * lisp.h (set_process_environment): Rename to `set_global_environment'.
22487 (Fframe_with_environment, Fset_input_meta_mode)
22488 (Fset_quit_char): EXFUN.
22489 (x_create_device, tty_output, terminal, tty_display_info): Declare.
22490 (init_sys_modes, reset_sys_modes): Update prototypes.
22491 (init_all_sys_modes, reset_all_sys_modes): New prototypes.
22492
22493 * keyboard.h (struct kboard): Add new fields Vlocal_function_key_map,
22494 Vlocal_key_translation_map, and Vkeyboard_translate_table.
22495 (Vfunction_key_map, Vkeyboard_translate_table, single_kboard_state):
22496 Delete declarations.
22497 (Vfunction_key_map, Vkey_translation_map, push_kboard, pop_kboard)
22498 (temporarily_switch_to_single_kboard, tty_read_avail_input):
22499 New declarations.
22500
22501 * emacs.c (main): Don't call init_sys_modes(), the new term_init()
22502 already does that during init_display(). Call syms_of_keymap
22503 before syms_of_keyboard. Call `syms_of_terminal'.
22504 Call set_initial_environment, not set_process_environment.
22505 (shut_down_emacs): Call reset_all_sys_modes() instead of
22506 reset_sys_modes().
22507
22508 * xfaces.c (x_free_gc): Protect xassert with GLYPH_DEBUG.
22509 (internal_resolve_face_name, resolve_face_name_error): New functions.
22510 (resolve_face_name): Protect against loops and errors thrown by Fget.
22511 (realize_default_face): Don't use FRAME_FONT unless frame is an X frame.
22512 (Ftty_supports_face_attributes_p): Update tty_capable_p call.
22513
22514 * scroll.c: Replace CURTTY() with local variables throughout the
22515 file (where applicable).
22516 (calculate_scrolling, calculate_direct_scrolling)
22517 (scrolling_1, scroll_cost): Use the accessor macros for terminal
22518 characteristics.
22519
22520 * keymap.c (Vfunction_key_map): Remove.
22521 (Fdescribe_buffer_bindings): Update references to Vfunction_key_map.
22522 (syms_of_keymap): Remove DEFVAR for Vfunction_key_map.
22523 (Vkey_translation_map): Remove.
22524 (syms_of_keymap): Remove DEFVAR for key-translation-map.
22525 (Fdescribe_buffer_bindings)
22526 (read_key_sequence, init_kboard, syms_of_keyboard, mark_kboards):
22527 Update for terminal-local key-translation-map.
22528
22529 * Makefile.in (callproc.o): Update dependencies.
22530 (lisp, shortlisp): Add termdev.elc.
22531 (obj): Add terminal.o.
22532 (terminal.o): Add dependencies.
22533 [HAVE_CARBON]: Make terminal.o depend on macgui.h.
22534 (data.o, fns.o): Add termhooks.h dependency.
22535 (SOME_MACHINE_LISP): Add dnd.elc.
22536 (minibuf.o): Fix typo.
22537 Update dependencies.
22538
22539 * data.c (do_symval_forwarding, store_symval_forwarding)
22540 (find_symbol_value): Use the selected frame's keyboard, not
22541 current_kboard.
22542
22543 * .gdbinit (init_sys_modes): Use Vinitial_window_system instead of
22544 Vwindow_system.
22545
22546 * xmenu.c (Fx_menu_bar_open) [USE_X_TOOLKIT, USE_GTK]: Rename from
22547 Fmenu_bar_open.
22548 (syms_of_xmenu): Update defsubr.
22549 (mouse_position_for_popup, Fx_popup_menu)
22550 (Fx_popup_dialog, x_activate_menubar, update_frame_menubar)
22551 (set_frame_menubar, free_frame_menubar)
b97439ce 22552 (create_and_show_popup_menu, xmenu_show)
aac0c6e3
MR
22553 (create_and_show_dialog, xdialog_show, xmenu_show): Abort if not
22554 an X frame.
22555
22556 * xselect.c (x_own_selection): Abort if not an X frame.
22557 (some_frame_on_display): Check if it is an X frame.
22558 (x_handle_selection_clear): Deal with MULTI_KBOARD.
22559
22560 * coding.c: Include frame.h and termhooks.h.
22561 (terminal_coding, keyboard_coding): Delete.
22562 (Fset_terminal_coding_system_internal)
22563 (Fset_keyboard_coding_system_internal)
22564 (Fkeyboard_coding_system)
22565 (Fterminal_coding_system): Add a terminal parameter.
22566 Get terminal_coding from the terminal.
22567 (init_coding_once): Don't call setup_coding_system here.
22568
22569 * dispextern.h (set_scroll_region, turn_off_insert)
22570 (turn_off_highlight, background_highlight, clear_end_of_line_raw)
22571 (tty_clear_end_of_line, tty_setup_colors)
22572 (delete_tty, updating_frame)
22573 (produce_special_glyphs, produce_glyphs, write_glyphs)
22574 (insert_glyphs): Remove.
22575 (raw_cursor_to, clear_to_end, tty_turn_off_insert)
22576 (tty_turn_off_highlight, get_tty_size): Add declaration.
22577 (tabs_safe_p, init_baud_rate, get_tty_terminal): Update prototypes.
22578
22579 * frame.h (enum output_method): Add output_initial.
22580 (struct x_output): Delete.
22581 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
22582 Access foreground_pixel and background_pixel directly from the frame.
22583 (tty_display): Delete.
22584 (struct frame): Add buried_buffer_list, foreground_pixel,
22585 background_pixel and terminal. Delete kboard.
22586 (union output_data): Add tty.
22587 (FRAME_KBOARD): Get the kboard from the terminal.
22588 (FRAME_INITIAL_P): New macro.
22589 (Qtty, Qtty_type, Qterminal, Qterminal_live_p, Qenvironment)
22590 (Qterm_environment_variable, Qdisplay_environment_variable)
22591 (make_terminal_frame, Qburied_buffer_list, Qwindow_system):
22592 New declarations.
22593
22594 * termchar.h (tty_output, tty_display_info): New structures.
22595 (tty_list): Declare.
22596 (FRAME_TTY, CURTTY): New macros.
22597 (must_write_spaces, min_padding_speed, fast_clear_end_of_line)
22598 (line_ins_del_ok, char_ins_del_ok, scroll_region_ok)
22599 (scroll_region_cost, memory_below_frame, fast_clear_end_of_line)
22600 (dont_calculate_costs, no_redraw_on_reenter): Remove declarations.
22601
22602 * callproc.c: Include frame.h and termhooks.h, for terminal
22603 parameters.
22604 (add_env): New function.
22605 (child_setup): Use it.
22606 (child_setup, getenv_internal): Handle the new Vprocess_environment.
22607 (getenv_internal): Fix get_terminal_param call.
22608 (Fgetenv_internal, egetenv): Update doc.
22609 (syms_of_callproc): Initialize Vprocess_environment to nil.
22610 Register and initialize them. Remove obsolete defvars. Update doc
22611 strings.
22612 (child_setup): Handle Vlocal_environment_variables.
22613 (getenv_internal): Add terminal parameter.
22614 Handle Vlocal_environment_variables.
22615 (Fgetenv_internal): Add terminal parameter.
22616 (child_setup, getenv_internal, Fgetenv_internal): Store the local
22617 environment in a frame (not terminal) parameter. Update doc strings.
22618 (set_initial_environment): Rename from set_global_environment.
22619 Store Emacs environment in initial frame parameter.
22620
22621 * xdisp.c (redisplay_internal): Update references to
22622 `previous_terminal_frame'.
22623 (display_mode_line, Fformat_mode_line): Replace calls to
22624 `push_frame_kboard' with `push_kboard'.
22625 (get_glyph_string_clip_rects): Add extra parentheses and
22626 braces to prevent compiler warnings.
22627 (calc_pixel_width_or_height): Add xassert to check that the
22628 frame is alive. Don't call `lookup_image' on a termcap frame.
22629 (message2_nolog, message3_nolog, redisplay_internal)
22630 (set_vertical_scroll_bar, redisplay_window, check_x_display_info)
22631 (x_set_scroll_bar_foreground, x_set_scroll_bar_background)
22632 (Fx_create_frame, Fxw_display_color_p, Fx_display_grayscale_p)
22633 (Fx_display_pixel_width, Fx_display_pixel_height)
22634 (Fx_display_planes, Fx_display_color_cells)
22635 (Fx_server_max_request_size, Fx_server_vendor, Fx_server_version)
22636 (Fx_display_screens, Fx_display_mm_height, Fx_display_mm_width)
22637 (Fx_display_backing_store, Fx_display_visual_class)
22638 (Fx_display_save_under, Fx_close_connection, x_create_tip_frame):
22639 Use FRAME_TERMINAL_P, FRAME_WINDOW_P, FRAME_TTY and FRAME_RIF.
22640
22641 * xfns.c (x_set_foreground_color x_set_background_color)
22642 (x_set_mouse_color, x_set_cursor_color, x_make_gc):
22643 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
22644 (Fx_create_frame, x_create_tip_frame, build_string, x_window)
22645 (Fx_create_frame, x_create_tip_frame): Don't create frames on a
22646 terminal that is being deleted.
22647 (Fx_create_frame): Use `store_frame_param' to set `window-system'
22648 frame parameter, and make sure it overrides any user-supplied setting.
22649 (Fx_close_connection, Fx_synchronize): Unify argument names with
22650 the rest of the DEFUNs.
22651
22652 * dispnew.c (Fsend_string_to_terminal): Update call to
22653 `get_tty_terminal'.
22654 (Fredraw_frame, Fsend_string_to_terminal)
22655 (Fsend_string_to_terminal, init_display): Use FRAME_RIF,
22656 FRAME_TERMCAP_P and FRAME_TTY.
22657 (window_change_signal): Don't believe width/height values that are
22658 impossibly small.
22659 (Vinitial_window_system): Rename from Vwindow_system.
22660 (termscript, Wcm, rif): Delete.
22661
22662 * termhooks.h (struct terminal): New struct containing the
22663 previously global text display hooks and new members NAME,
22664 DELETED and PARAM_ALIST.
22665 (FRAME_TERMINAL, TERMINAL_TERMINAL_CODING)
22666 (TERMINAL_KEYBOARD_CODING, TERMINAL_ACTIVE_P, FRAME_WINDOW_P)
22667 (FRAME_RIF): New macros.
22668 (get_terminal_param, get_device): New declarations.
22669 (termscript): Delete declaration.
22670
22671 * xterm.c (x_initialize): Use Fset_input_interrupt_mode.
22672 (XTflash, x_free_frame_resources, x_scroll_bar_create)
22673 (x_scroll_bar_set_handle): Use FRAME_BACKGROUND_PIXEL and
22674 FRAME_FOREGROUND_PIXEL.
22675 (x_fully_uncatch_errors): Disable definition.
22676 (x_scroll_bar_expose): Fix reference to foreground pixel.
22677 (XTread_socket): Disable loop on all X displays.
22678 (x_delete_terminal): Don't set terminal->deleted and let
22679 delete_terminal delete the frames on the terminal.
22680 (x_delete_display): Doc update to reflect changes in
22681 delete_terminal.
22682 (x_display_info) <terminal>: Move member earlier in the struct.
22683 (deleting_tty): Remove old variable.
22684 (Fsuspend_tty): Call clear_tty_hooks.
22685 (Fresume_tty, init_tty): Call set_tty_hooks.
22686 (Ftty_display_color_p, Ftty_display_color_cells): Don't throw
22687 errors on X frames.
22688 (x_catch_errors_unwind): Abort if x_error_message is NULL.
22689 (handle_one_xevent): Initialize `f' to NULL.
22690 (x_delete_terminal, x_create_terminal): New functions.
22691 (XTset_terminal_modes, XTreset_terminal_modes)
22692 (XTread_socket, x_connection_closed, x_term_init)
22693 (x_term_init, x_delete_display): Add terminal parameter.
22694 (x_term_init) [!HAVE_GTK_MULTIDISPLAY]: Refuse to create secondary
22695 X connections.
22696
22697 * frame.c: Include termchar.h.
22698 (Qterminal, Qterminal_live_p, Qburied_buffer_list, Qtty, Qtty_type)
22699 (Qwindow_system, Qenvironment, Qterm_environment_variable)
22700 (Qdisplay_environment_variable): New vars.
22701 (Fframep): Deal with output_initial.
22702 (Fframe-live-p): Doc fix.
22703 (Fwindow-system): New function.
22704 (x_set_screen_gamma, store_frame_param): Fix compilation errors.
22705 (make_terminal_frame): Don't create frames on a terminal that is
22706 being deleted. Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
22707 (store_frame_param): Check for found_for_frame before calling XFRAME.
22708 (Fmake_terminal_frame): Handle NULL tty names correctly.
22709 (syms_of_frame): Enhance doc string of `default-frame-alist'.
22710 (Fdelete_frame): Remove unused variable `count'. Don't allow other
22711 frames to refer to a deleted frame in their 'environment parameter.
22712 (Fframe_with_environment): New function.
22713 (syms_of_frame): Defsubr it. Initialize and staticpro Qenvironment.
22714 (get_future_frame_param): New function.
22715 (Fmake_terminal_frame): Use it.
22716 (x_set_frame_parameters, x_set_screen_gamma): Use FRAME_RIF.
22717
22718 * sysdep.c (init_sys_modes, reset_sys_modes): Update for renames.
22719 * sysdep.c (reset_sys_modes): Update for renames.
22720
22721 * keyboard.c (tty_read_avail_input): New function.
22722 (Fset_input_interrupt_mode, Fset_output_flow_control): New functions.
22723 (syms_of_keyboard): Defsubr them.
22724 (Fset_input_meta_mode, Fset_quit_char): New functions.
22725 (Fset_input_mode): Split to above functions.
22726 (read_char_minibuf_menu_prompt): Add wrong_kboard_jmpbuf
22727 parameter. Use it in call to `read_char'.
22728 (read_char): Declare. Update call to `read_char_minibuf_menu_prompt'.
22729 Set wrong_kboard_jmpbuf correctly in recursive calls.
22730 Use current_kboard to access Vkeyboard_translate_table.
22731 Enhance comment before extra longjmp to wrong_kboard_jmpbuf.
22732 Add wrong_kboard_jmpbuf parameter to allow for recursive calls.
22733 Update longjmp invocations. Remember the original current_kboard,
22734 and longjmp to `wrong_kboard_jmpbuf' when a filter, timer or sentinel
22735 changes it. Comment out unnecessary calls to
22736 `record_single_kboard_state' and `any_kboard_state'.
22737 Update recursive calls.
22738 (wrong_kboard_jmpbuf): Remove global variable.
22739 (read_key_sequence): Remove unused variable wrong_kboard_jmpbuf.
22740 Handle deleted interrupted_kboards correctly; that is a legal
22741 case. Add `wrong_kboard_jmpbuf' local variable. Update setjmp
22742 and read_char calls. Abort if interrupted_kboard died in read_char.
22743 (any_kboard_state, single_kboard_state)
22744 (push_frame_kboard): Remove function.
22745 (pop_kboard): Switch out of single_kboard mode if the kboard has
22746 been deleted. Remove unused variable. Help debugging by not
22747 changing current_kboard unnecessarily. Set current_kboard to the
22748 kboard of the selected frame when the stored kboard object has
22749 been deleted before pop_kboard.
22750 (temporarily_switch_to_single_kboard): Change first parameter to a
22751 frame pointer. Throw an error when caller wants to change kboards
22752 while in single_kboard mode. Don't push_kboard if we weren't in
22753 single kboard state. Don't pop_kboard if we popped into any
22754 kboard state.
22755 (restore_kboard_configuration): Abort if pop_kboard changed the
22756 kboard in single_kboard mode. Call pop_kboard only after setting
22757 up single_kboard mode.
22758 (Frecursive_edit): Switch to single_kboard mode only in nested
22759 command loops.
22760 (cmd_error, command_loop, command_loop_1, timer_check):
22761 Comment out unnecessary call to `any_kboard_state' and
22762 `record_single_kboard_state'.
22763 (delete_kboard): Exit single_kboard mode if we have just deleted
22764 that kboard. Use FRAME_KBOARD.
22765 (interrupt_signal): Use `Fkill_emacs' to exit Emacs, not
22766 `fatal_error_signal'.
22767 (record_single_kboard_state): Don't push_kboard if we weren't in
22768 single kboard state. Don't pop_kboard if we popped into any
22769 kboard state.
22770 (push_frame_kboard): Rename to push_kboard.
22771 (kbd_buffer_get_event): Use FRAME_TERMINAL.
22772 (read_avail_input): Read input from all terminals.
22773 (mark_kboards): Also mark Vkeyboard_translate_table.
22774 (kbd_buffer_store_event_hold): Simplify condition.
22775 (read_key_sequence): Reinitialize fkey and keytran at each replay.
22776 (Vkeyboard_translate_table): Move to struct kboard.
22777 (init_kboard): Initialize Vkeyboard_translate_table.
22778 (syms_of_keyboard): Use DEFVAR_KBOARD to define
22779 Vkeyboard_translate_table. Update doc strings. Update docs of
22780 local-function-key-map and function-key-map.
22781
22782 * terminal.c: New file.
22783
22784 * term.c: Include errno.h.
22785 (Vring_bell_function, device_list, initial_device)
22786 (next_device_id, ring_bell, update_begin, update_end)
22787 (set_terminal_window, cursor_to, raw_cursor_to)
22788 (clear_to_end, clear_frame, clear_end_of_line)
22789 (write_glyphs, insert_glyphs, delete_glyphs, ins_del_lines)
22790 (Fdisplay_name, create_device, delete_device): Move to terminal.c.
22791 (syms_of_term): Move their initialization to terminal.c.
22792 (get_tty_terminal, Fdisplay_tty_type, Ftty_display_color_p)
22793 (Ftty_display_color_cells)
22794 (Ftty_no_underline, Fsuspend_tty, Fresume_tty, create_tty_output)
22795 (clear_tty_hooks, set_tty_hooks)
22796 (init_tty, maybe_fatal): New functions.
22797 (Ftty_type): Return nil if terminal is not on a tty instead of
22798 throwing an error. Doc update.
22799 (syms_of_term) <Vsuspend_tty_functions, Vresume_tty_functions>:
22800 Doc update. Initialize new subrs and variables.
22801 (delete_tty): Use terminal->deleted.
22802 (tty_set_terminal_modes): Rename from set_terminal_modes.
22803 (tty_reset_terminal_modes): Rename from reset_terminal_modes.
22804 (set_scroll_region): Rename to `tty_set_scroll_region'.
22805 (turn_on_insert): Rename to `tty_turn_on_insert'.
22806 (turn_off_insert): Rename to `tty_turn_off_insert'.
22807 (turn_off_highlight): Rename to `tty_turn_off_highlight'.
22808 (turn_on_highlight): Rename to `tty_turn_on_highlight'.
22809 (toggle_highligh): Rename to `tty_toggle_highlight'.
22810 (background_highlight): Rename to `tty_background_highlight'.
22811 (highlight_if_desired): Rename to `tty_highlight_if_desired'.
22812 (tty_ring_bell, tty_update_end, tty_set_terminal_window)
22813 (tty_set_scroll_region, tty_background_highlight)
22814 (tty_cursor_to, tty_raw_cursor_to, tty_clear_to_end)
22815 (tty_clear_frame, tty_clear_end_of_line, tty_write_glyphs)
22816 (tty_insert_glyphs, tty_delete_glyphs, tty_ins_del_lines)
22817 (term_get_fkeys, tty_setup_colors, dissociate_if_controlling_tty):
22818 Add static modifier.
22819 (tty_reset_terminal_modes, tty_set_terminal_window)
22820 (tty_set_scroll_region, tty_background_highlight)
22821 (tty_highlight_if_desired, tty_cursor_to)
22822 (tty_raw_cursor_to, tty_clear_to_end, tty_clear_frame)
22823 (tty_clear_end_of_line, tty_write_glyphs, tty_insert_glyphs)
22824 (tty_delete_glyphs, tty_ins_del_lines, turn_on_face): Update for
22825 renames.
22826
228272007-08-28 Jan Djärv <jan.h.d@swipnet.se>
22828
22829 * keyboard.c: Qrtl is new.
22830 (parse_tool_bar_item): Handle :rtl keyword.
22831 (syms_of_keyboard): Intern :rtl keyword.
22832
22833 * dispextern.h (enum tool_bar_item_idx): Add TOOL_BAR_ITEM_RTL_IMAGE.
22834
22835 * gtkutil.c (xg_tool_bar_expose_callback): Just do SET_FRAME_GARBAGED
22836 so no Lisp code is executed.
22837 (file_for_image, find_rtl_image): New functions.
22838 (xg_get_image_for_pixmap): Use file_for_image.
22839 (update_frame_tool_bar): If direction is RTL, use RTL image if
22840 defined. Use Gtk stock images if defined.
22841
228422007-08-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22843
22844 * macterm.c (x_draw_composite_glyph_string_foreground): Draw rectangle
22845 for nonexistent or zero-width glyph in composition glyph.
22846
228472007-08-25 Stefan Monnier <monnier@iro.umontreal.ca>
22848
22849 * m/amdx86-64.h: Redirect to intel386.h if compiling for i386.
22850
22851 * xdisp.c (Finvisible_p): New function.
22852 (syms_of_xdisp): defsubr it.
22853
228542007-08-24 Juanma Barranquero <lekktu@gmail.com>
22855
22856 * image.c (syms_of_image) <image-library-alist, cross-disabled-images>:
22857 Doc fixes.
22858
228592007-08-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22860
22861 * mac.c [MAC_OSX] (select_and_poll_event, sys_select): Fix last changes.
22862
228632007-08-24 Martin Rudalics <rudalics@gmx.at>
22864
22865 * fileio.c (Finsert_file_contents): Consult CHARS_MODIFF to tell
22866 whether decoding has modified buffer contents.
22867
228682007-08-24 Jason Rumney <jasonr@gnu.org>
22869
22870 * image.c [HAVE_NTGUI]: Define dynamic loaded functions for SVG.
22871 (Qgdk_pixbuf, Qglib) [HAVE_NTGUI]: New symbols.
22872 (syms_of_image) [HAVE_NTGUI]: Intern and staticpro them.
22873 (init_svg_functions) [HAVE_NTGUI]: New function.
22874 (fn_g_type_init, fn_g_object_unref, fn_g_error_free): New #defines.
22875 (svg_load_image): Use them.
22876 (svg_load_image) [HAVE_NTGUI]: Implement background.
22877
228782007-08-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22879
22880 * Makefile.in (RSVG_LIBS, RSVG_CFLAGS): New variables.
22881 (ALL_CFLAGS): Use ${RSVG_CFLAGS} instead of @RSVG_CFLAGS@.
22882 (LIBX): Remove @RSVG_LIBS@.
22883 (LIBES): Add $(RSVG_LIBS).
22884
22885 * image.c (svg_load_image): Blend with specified background if exists.
22886 Use IMAGE_BACKGROUND. Add Mac OS Support.
22887
22888 * mac.c (wakeup_from_rne_enabled_p) [MAC_OSX]: Remove variable.
22889 (ENABLE_WAKEUP_FROM_RNE, DISABLE_WAKEUP_FROM_RNE) [MAC_OSX]:
22890 Remove macros.
22891 [MAC_OSX] (socket_callback): Do nothing.
22892 [MAC_OSX] (select_and_poll_event): Use CFRunLoopRunInMode instead of
22893 ReceiveNextEvent.
22894 [MAC_OSX] (sys_select): Likewise. Don't set context as argument to
22895 socket_callback.
22896 (mac_wakeup_from_rne) [MAC_OSX]: Do nothing.
22897
228982007-08-22 Glenn Morris <rgm@gnu.org>
22899
22900 * image.c (x_find_image_file): Search in etc/images/ rather than etc/.
22901
229022007-08-22 Paul Pogonyshev <pogonyshev@gmx.net>
22903
22904 * Makefile.in (ALL_CFLAGS, LIBX): Add RSVG_LIBS.
22905
22906 * image.c: Add support for SVG images. Some additional comments
22907 by Joakim Verona <joakim@verona.se>. When HAVE_RSVG is defined:
22908 (svg_image_p): New function to test for SVG image.
22909 (svg_load): New function to load SVG image.
22910 (svg_load_image): New function, helper for svg_load.
22911 (Qsvg): New Lisp_object.
22912 (svg_keyword_index): New enum.
22913 (svg_format): New static `image_keyword' struct.
22914 (svg_type): New static `image_type' struct.
22915 (librsvg/rsvg.h): Include it.
22916
229172007-08-23 Stefan Monnier <monnier@iro.umontreal.ca>
22918
22919 * lread.c (load_warn_old_style_backquotes): Fix up array size typo.
22920
229212007-08-22 Stefan Monnier <monnier@iro.umontreal.ca>
22922
22923 * lread.c (Qold_style_backquotes): New var.
22924 (syms_of_lread): Init and staticpro it.
22925 (load_warn_old_style_backquotes): New fun.
22926 (Fload): Use them to warn about old style backquotes.
22927 (end_of_file_error, Fload): Remove unused vars.
22928
22929 * lisp.h (Fclear_face_cache, Fx_send_client_event): Declare.
22930
22931 * lread.c (Vold_style_backquotes): New var.
22932 (syms_of_lread): Init and export it to Elisp.
22933 (read1): Set it when we find an old-style (back)quote.
22934
229352007-08-22 Jason Rumney <jasonr@gnu.org>
22936
22937 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): Add missing NULL terminator.
22938
229392007-08-22 Katsumi Yamaoka <yamaoka@jpl.org>
22940
22941 * puresize.h (BASE_PURESIZE): Increase to 1140000.
22942
229432007-08-19 Richard Stallman <rms@gnu.org>
22944
22945 * eval.c (Ffunction, Fquote): Signal error if not 1 argument.
22946
229472007-08-19 Andreas Schwab <schwab@suse.de>
22948
22949 * alloc.c (pure): Round PURESIZE up.
22950
229512007-08-17 Jan Djärv <jan.h.d@swipnet.se>
22952
22953 * xterm.c (handle_one_xevent): Remove check that mouse click is in
22954 active frame.
22955
229562007-08-16 Richard Stallman <rms@gnu.org>
22957
22958 * eval.c (Fcommandp): Add parens to clarify.
22959
22960 * minibuf.c (Fall_completions): Use enum for type of table.
22961
22962 * emacs.c (USAGE2): Improve text.
22963
229642007-08-15 Philippe Waroquiers <philippe.waroquiers@eurocontrol.int>
22965
22966 * term.c (tty_default_color_capabilities): Declare static
22967 variables in file scope, to avoid HPUX compiler problem.
22968
229692007-08-13 Jan Djärv <jan.h.d@swipnet.se>
22970
22971 * gtkutil.c (update_frame_tool_bar): Use -1 as index
22972 to gtk_toolbar_insert.
22973
229742007-08-13 Stefan Monnier <monnier@iro.umontreal.ca>
22975
22976 * fileio.c (Finsert_file_contents): Yet Another Int/Lisp_Object Mixup.
22977
22978 * insdel.c (reset_var_on_error): New fun.
22979 (signal_before_change, signal_after_change):
22980 Use it to reset (after|before)-change-functions to nil in case of error.
22981 Bind inhibit-modification-hooks to t.
22982 Don't bind (after|before)-change-functions to nil while they run.
22983
229842007-08-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22985
22986 * xterm.c (x_draw_image_glyph_string): Adjust stipple origin when
22987 filling pixmap with stippled background.
22988
229892007-08-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22990
22991 * macterm.c [TARGET_API_MAC_CARBON] (mac_handle_window_event):
22992 Don't use invisible frame as parent window for repositioning.
22993
229942007-08-10 Stefan Monnier <monnier@iro.umontreal.ca>
22995
22996 * print.c (new_backquote_output): Rename from old_backquote_output.
22997 (print): Inverse its logic (according to its name) so as to match the
22998 behavior of new_backquote_flag in lread.c.
22999
230002007-08-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23001
23002 * gmalloc.c (posix_memalign): New function.
23003
23004 * macterm.c (frame_highlight, frame_unhighlight): Don't call
23005 ActivateControl/DeactivateControl here.
23006 [USE_MAC_TOOLBAR] (free_frame_tool_bar): Suppress animation when
23007 frame-notice-user-settings is non-nil.
23008 [USE_MAC_FONT_PANEL] (mac_handle_font_event): Also record parameter
23009 for kEventParamFMFontStyle.
23010 [TARGET_API_MAC_CARBON] (mac_handle_keyboard_event): Don't check
23011 mac_pass_command_to_system and mac_pass_control_to_system here.
23012 (XTread_socket): Call ActivateControl/DeactivateControl here.
23013 (XTread_socket) [TARGET_API_MAC_CARBON]:
23014 Check mac_pass_command_to_system and mac_pass_control_to_system here.
23015 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Add further workaround
23016 for window repositioning.
23017
230182007-08-08 Glenn Morris <rgm@gnu.org>
23019
23020 * Replace `iff' in doc-strings and comments.
23021
230222007-08-07 Chong Yidong <cyd@stupidchicken.com>
23023
23024 * xdisp.c (move_it_by_lines): Remove incorrect optimization.
23025
230262007-08-07 Martin Rudalics <rudalics@gmx.at>
23027
23028 * fileio.c (Finsert_file_contents): Run format-decode and
23029 after_insert_file_functions on entire buffer when REPLACE is
23030 non-nil and inhibit modification_hooks and point_motion_hooks.
23031 For consistency, run after_insert_file_functions iff something
23032 got inserted. Move signal_after_change and update_compositions
23033 after code running after_insert_file_functions. Make sure that
23034 undo_list doesn't record intermediate steps of the decoding process.
23035
230362007-08-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23037
23038 * emacs.c (main)
23039 [HAVE_GTK_AND_PTHREAD && !SYSTEM_MALLOC && !DOUG_LEA_MALLOC]:
23040 Call malloc_enable_thread on interactive startup.
23041
23042 * gmalloc.c (_malloc_thread_enabled_p) [USE_PTHREAD]: New variable.
23043 (LOCK, UNLOCK, LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS)
23044 [USE_PTHREAD]: Conditionalize with it.
23045 (malloc_atfork_handler_prepare, malloc_atfork_handler_parent)
23046 (malloc_atfork_handler_child, malloc_enable_thread) [USE_PTHREAD]:
23047 New functions.
23048
230492007-08-06 Chong Yidong <cyd@stupidchicken.com>
23050
23051 * xdisp.c (redisplay_window): When restoring original buffer
23052 position, make sure it is still valid.
23053
23054 * image.c (png_load): Ignore png-supplied background color.
23055
230562007-08-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23057
23058 * mac.c [TARGET_API_MAC_CARBON] (cfdate_to_lisp): Obtain microsec value.
23059 Use kCFAbsoluteTimeIntervalSince1970.
23060
23061 * macmenu.c (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]:
23062 New variable.
23063 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Set it if dialog
23064 event loop should be quit.
23065 [TARGET_API_MAC_CARBON] (create_and_show_dialog) [!MAC_OSX]:
23066 Quit dialog event loop if quit_dialog_event_loop is set.
23067
23068 * macselect.c [!TARGET_API_MAC_CARBON]: Include Scrap.h.
23069 (Selection): New typedef. Use instead of ScrapRef.
23070 (mac_get_selection_from_symbol): Rename from get_scrap_from_symbol.
23071 (mac_valid_selection_target_p): Rename from valid_scrap_target_type_p.
23072 (mac_clear_selection): Rename from clear_scrap.
23073 (get_flavor_type_from_symbol): New argument SEL and subsume function of
23074 scrap_has_target_type. All uses changed.
23075 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
23076 (mac_selection_has_target_p): New functions.
23077 (mac_put_selection_value): Rename from put_scrap_string.
23078 (mac_get_selection_value): Rename from get_scrap_string.
23079 (mac_get_selection_target_list): Rename from get_scrap_target_type_list.
23080 (put_scrap_private_timestamp, scrap_has_target_type)
23081 (get_scrap_private_timestamp): Remove functions.
23082 (SCRAP_FLAVOR_TYPE_EMACS_TIMESTAMP): Remove define.
23083 (x_own_selection, x_get_local_selection):
23084 Use mac_valid_selection_value_p.
23085 (x_own_selection): Don't use put_scrap_private_timestamp.
23086 Record OWNERSHIP-INFO into Vselection_alist instead.
23087 (x_get_local_selection): Don't check type if request is local.
23088 (Fx_selection_owner_p): Don't use get_scrap_private_timestamp.
23089 Detect ownership change with OWNERSHIP-INFO in Vselection_alist instead.
23090
230912007-08-04 Jan Djärv <jan.h.d@swipnet.se>
23092
23093 * gtkutil.c (xg_tool_bar_callback): Generate two TOOL_BAR_EVENT:s,
23094 add comment explaining why.
23095
230962007-08-03 Richard Stallman <rms@gnu.org>
23097
23098 * fileio.c (Fvisited_file_modtime): Use make_time.
23099
231002007-08-01 Ryo Yoshitake <ryo@shiftmode.net> (tiny change)
23101
23102 * mac.c (init_mac_osx_environment): Adjust load-path on self-contained
23103 build.
23104
231052007-07-31 Stefan Monnier <monnier@iro.umontreal.ca>
23106
23107 * gtkutil.c (xg_tool_bar_callback): Generate a single TOOL_BAR_EVENT.
23108
231092007-07-30 Katsumi Yamaoka <yamaoka@jpl.org>
23110
23111 * puresize.h (BASE_PURESIZE): Increase to 1130000.
23112
231132007-07-30 Richard Stallman <rms@gnu.org>
23114
23115 * lread.c (readevalloop, read1): Treat NBSP as whitespace.
23116
231172007-07-29 Jan Djärv <jan.h.d@swipnet.se>
23118
23119 * gmalloc.c (__malloc_initialize): Remove pthread_once. Not needed.
23120
231212007-07-28 Nick Roberts <nickrob@snap.net.nz>
23122
23123 * xdisp.c (decode_mode_spec): Use '@' instead of 'R' to test for
23124 remote default-directory.
23125
23126 * buffer.c (mode-line-format): Update doc string.
23127
231282007-07-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23129
23130 * w32term.c (w32_draw_fringe_bitmap): Extend fringe background to
23131 scroll bar gap.
23132 (x_scroll_bar_create): Set bar->fringe_extended_p.
23133 (w32_set_vertical_scroll_bar): Put leftmost/rightmost scroll bars
23134 on frame edge. Check fringe background extension. Don't clear
23135 extended fringe background area.
23136
23137 * w32term.h (struct scroll_bar): New member fringe_extended_p.
23138 (w32_fill_area): Enclose multiple statements with do ... while (0).
23139
23140 * xterm.c (x_draw_fringe_bitmap) [USE_TOOLKIT_SCROLL_BARS]:
23141 Extend fringe background to scroll bar gap.
23142 (x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS]:
23143 Set bar->fringe_extended_p.
23144 (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
23145 Put leftmost/rightmost scroll bars on frame edge. Check fringe
23146 background extension. Don't clear extended fringe background area.
23147
23148 * xterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
23149 New member fringe_extended_p.
23150
231512007-07-25 Glenn Morris <rgm@gnu.org>
23152
23153 * Relicense all FSF files to GPLv3 or later.
23154
23155 * COPYING: Switch to GPLv3.
23156
231572007-07-25 Stefan Monnier <monnier@iro.umontreal.ca>
23158
23159 * eval.c (Fcommandp): Pay attention to the `interactive-form' property.
23160
23161 * data.c (Finteractive_form): Check for the presence of an
23162 `interactive-form' symbol property more thoroughly.
23163
23164 * data.c (Finteractive_form): Use an `interactive-form' property if
23165 present, analogous to the function-documentation property.
23166
231672007-07-24 Jason Rumney <jasonr@gnu.org>
23168
23169 * w32fns.c (x_real_positions): Get real position from OS instead of
23170 calculating it.
23171
231722007-07-23 Jason Rumney <jasonr@gnu.org>
23173
23174 * filelock.c (current_lock_owner): Allow for @ sign in username.
23175
231762007-07-22 Nick Roberts <nickrob@snap.net.nz>
23177
23178 * xdisp.c (decode_mode_spec): Add case 'R' for to test for
23179 remote default-directory.
23180
23181 * buffer.c (mode-line-format): Describe above case in doc string.
23182
231832007-07-20 Eli Zaretskii <eliz@gnu.org>
23184
23185 * w32proc.c (IMAGE_NT_OPTIONAL_HDR32_MAGIC, IMAGE_OPTIONAL_HEADER32):
23186 Define if not defined.
23187
231882007-07-18 Jason Rumney <jasonr@gnu.org>
23189
23190 * w32proc.c (w32_executable_type): Handle 64 bit executables.
23191
231922007-07-18 Richard Stallman <rms@gnu.org>
23193
23194 * data.c (Fsetq_default): Doc fix.
23195
23196 * eval.c (Fsetq): Doc fix.
23197
231982007-07-18 Juanma Barranquero <lekktu@gmail.com>
23199
23200 * coding.c (Ffind_operation_coding_system):
23201 * eval.c (For, Fand): Doc fixes.
23202 Reported by Johan Bockgård.
23203
232042007-07-18 Jan Djärv <jan.h.d@swipnet.se>
23205
23206 * xfns.c (Fx_focus_frame): Call x_ewmh_activate_frame.
23207
23208 * xterm.h: Declare x_ewmh_activate_frame.
23209
23210 * xterm.c (x_ewmh_activate_frame): New function.
23211 (XTframe_raise_lower): Move code to x_ewmh_activate_frame.
23212
232132007-07-17 Martin Rudalics <rudalics@gmx.at>
23214
23215 * window.c (Fdisplay_buffer): If largest or LRU window is the
23216 only window, split it even if it is not eligible for splitting.
23217 This restores the original behavior broken by the 2007-07-15
23218 change.
23219
232202007-07-17 Glenn Morris <rgm@gnu.org>
23221
23222 * abbrev.c (abbrev_check_chars): New function.
23223 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
23224 Call abbrev_check_chars to check abbrev characters are word
23225 constituents. Doc fix.
23226
232272007-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
23228
23229 * process.c (Fstart_process, Fmake_network_process)
23230 (read_process_output): Fix up last changes.
23231
232322007-07-16 Eli Zaretskii <eliz@gnu.org>
23233
23234 * makefile.w32-in (clean): Don't delete *~.
23235
232362007-07-16 Andreas Schwab <schwab@suse.de>
23237
23238 * window.c (Fdisplay_buffer): Use NILP.
23239 (Fset_window_scroll_bars): Likewise.
23240
232412007-07-15 Martin Rudalics <rudalics@gmx.at>
23242
23243 * window.c (window_min_size_2): New function.
23244 (window_min_size_1, size_window, Fdisplay_buffer)
23245 (Fsplit_window, adjust_window_trailing_edge): Use it to avoid
23246 windows without mode- or header-lines when window-min-height is
23247 too small.
23248 (size_window): Reset nodelete_p after testing it, following an
23249 earlier note by Kim F. Storm.
23250 (display_buffer): Do not set split_height_threshold to twice the
23251 value of window_min_height to avoid changing the value of a
23252 customizable variable. Rather explicitly check whether the
23253 height of the window that shall be splitted is at least as large
23254 as split_height_threshold.
23255 (Fwindow_full_width_p): New defun.
23256 (syms_of_window): Defsubr it.
23257
23258 * window.h: Add EXFUN for Fwindow_full_width_p.
23259
232602007-07-14 Jason Rumney <jasonr@gnu.org>
23261
23262 * process.c [WINDOWSNT]: Don't undefine AF_INET6.
23263
232642007-07-14 Richard Stallman <rms@gnu.org>
23265
23266 * eval.c (maybe_call_debugger): New function.
23267 (find_handler_clause): Use maybe_call_debugger.
23268 Call it when the handler says `debug'.
23269 Eliminate DEBUGGER_VALUE_PTR.
23270 (Fsignal): Eliminate debugger_value.
23271 (Qdebug): New variable.
23272 (syms_of_eval): Initialize it.
23273
232742007-07-14 Juanma Barranquero <lekktu@gmail.com>
23275
23276 * eval.c (Fprogn):
23277 * keyboard.c (Ftrack_mouse):
23278 * print.c (Fwith_output_to_temp_buffer):
23279 * window.c (Fsave_window_excursion): Doc fix.
23280
232812007-07-13 Stefan Monnier <monnier@iro.umontreal.ca>
23282
23283 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 400.
23284
232852007-07-12 Stefan Monnier <monnier@iro.umontreal.ca>
23286
23287 * process.h (struct Lisp_Process): Turn slots infd, outfd,
23288 kill_without_query, pty_flag, tick, update_tick, decoding_carryover,
23289 inherit_coding_system_flag, filter_multibyte, adaptive_read_buffering,
23290 read_output_delay, and read_output_skip from Lisp_Objects to ints.
23291 Remove unused encoding_carryover.
23292 * process.c: Adjust all functions accordingly.
23293
232942007-07-12 Richard Stallman <rms@gnu.org>
23295
23296 * term.c: Include unistd.h only if HAVE_UNISTD_H.
23297
232982007-07-11 Jason Rumney <jasonr@gnu.org>
23299
23300 * makefile.w32-in (LIBS): Include OLE32.
23301
23302 * w32fns.c (w32_msg_pump) <WM_EMACS_CREATEWINDOW>: Initialize COM.
23303 (w32_msg_pump) <WM_DESTROY>: Uninitialize COM.
23304
233052007-07-11 Stefan Monnier <monnier@iro.umontreal.ca>
23306
23307 * lisp.h (struct Lisp_Hash_Table): Turn next_weak into a bare pointer.
23308 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and turned
23309 from a Lisp_Object into a bare pointer.
23310 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
23311 Adjust the code correspondingly.
23312
23313 * alloc.c (emacs_blocked_free): Remove unused var `bytes_used_now'.
23314
23315 * term.c: Include unistd.h for ttyname, used in handle_one_term_event.
23316 (term_show_mouse_face): Remove unused var `j'.
23317 (handle_one_term_event): Remove unused vars `i' and `j'.
23318 Don't cast return value of ttyname since it's not necessary.
23319
233202007-07-10 Stefan Monnier <monnier@iro.umontreal.ca>
23321
23322 * alloc.c (mark_maybe_pointer): Enforce mult-of-8 alignment when using
23323 USE_LSB_TAG. Suggested by Dmitry Antipov <dmantipov@yandex.ru>.
23324
23325 * fns.c (map_char_table): Use an array of int for `indices' rather than
23326 an array of Lisp_Objects (which are only ever integers anyway).
23327 (Fmap_char_table): Update caller.
23328 * lisp.h: Update prototype.
23329 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap):
23330 * fontset.c (Ffontset_info):
23331 * casetab.c (set_case_table): Update callers.
23332
23333 * editfns.c (Ftranspose_regions): Use EMACS_INT for positions.
23334
23335 * keymap.c (struct accessible_keymaps_data)
23336 (struct where_is_internal_data): New structures.
23337 (accessible_keymaps_1, where_is_internal_1): Use them to change
23338 interface to adhere to the one used by map_keymap.
23339 (Faccessible_keymaps, where_is_internal): Use map_keymap.
23340 (accessible_keymaps_char_table, where_is_internal_2): Remove.
23341
23342 * keymap.h (map_keymap_function_t): More informative prototype.
23343
233442007-07-10 Guanpeng Xu <herberteuler@hotmail.com>
23345
23346 * search.c (Vinhibit_changing_match_data, search_regs_1): New vars.
23347 (looking_at_1): Don't change search_regs and last_thing_searched
23348 if `inhibit-changing-match-data' is non-nil.
23349 (string_match_1, search_buffer, set_search_regs): Likewise.
23350 (syms_of_search): Add Lisp level definition for
23351 `inhibit-changing-match-data' and set it to nil.
23352 (boyer_moore): If `inhibit-changing-match-data' is non-nil, compute
23353 start and end of the match, instead of using values in search_regs.
23354
233552007-07-01 Stefan Monnier <monnier@iro.umontreal.ca>
23356
23357 * minibuf.c (Fcompleting_read): New value `confirm-only'
23358 for `require-match'.
23359
233602007-06-28 Stefan Monnier <monnier@iro.umontreal.ca>
23361
23362 * fileio.c (Fdo_auto_save): Revert last patch installed unwillingly as
23363 part of the 2007-06-27 change to syms_of_fileio.
23364
233652007-06-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23366
23367 * macterm.c [USE_MAC_TSM] (mac_handle_text_input_event):
23368 Check WINDOWP before using XWINDOW. Consolidate return statements.
23369
233702007-06-27 Richard Stallman <rms@gnu.org>
23371
23372 * fileio.c (syms_of_fileio) <after-insert-file-functions>: Doc fix.
23373
233742007-06-27 Juanma Barranquero <lekktu@gmail.com>
23375
23376 * buffer.c (syms_of_buffer) <selective-display>: Fix typo in docstring.
23377
233782007-06-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23379
23380 * gmalloc.c [HAVE_GTK_AND_PTHREAD]: Check this after including config.h.
23381 (_aligned_blocks_mutex) [USE_PTHREAD]: New variable.
23382 (LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS): New macros.
23383 (_free_internal, memalign): Use them.
23384 (_malloc_mutex, _aligned_blocks_mutex) [USE_PTHREAD]:
23385 Initialize to PTHREAD_MUTEX_INITIALIZER.
23386 (malloc_initialize_1) [USE_PTHREAD]: Don't use recursive mutex.
23387 (morecore_nolock): Rename from morecore. All uses changed.
23388 Use only nolock versions of internal allocation functions.
23389 (_malloc_internal_nolock, _realloc_internal_nolock)
23390 (_free_internal_nolock): New functions created from
23391 _malloc_internal, _realloc_internal, and _free_internal.
23392 (_malloc_internal, _realloc_internal, _free_internal): Use them.
23393 Copy hook value to automatic variable before its use.
23394 (memalign): Copy hook value to automatic variable before its use.
23395
233962007-06-26 Kenichi Handa <handa@m17n.org>
23397
23398 * coding.c (Ffind_operation_coding_system): Docstring improved.
23399 (syms_of_coding): Docstring of `file-coding-system-alist' improved.
23400
234012007-06-25 David Kastrup <dak@gnu.org>
23402
23403 * keymap.c (Fcurrent_active_maps): Add `position' argument.
23404 (Fwhere_is_internal): Adjust call to `current-active-maps' to
23405 cater for additional parameter.
23406
23407 * keymap.h: Adjust number of parameters to `current-active-maps'.
23408
23409 * doc.c (Fsubstitute_command_keys): Adjust call of
23410 `current-active-maps'.
23411
234122007-06-25 David Kastrup <dak@gnu.org>
23413
23414 * callint.c (Fcall_interactively): Make the parsing of interactive
23415 specs somewhat more readable.
23416
234172007-06-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23418
23419 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe background
23420 to scroll bar gap also when bitmap fills fringe. Draw only foreground
23421 if extended background has already been filled.
23422
234232007-06-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23424
23425 * macgui.h (USE_CG_DRAWING): Don't require USE_ATSUI.
23426 (USE_MAC_TOOLBAR): Require USE_CG_DRAWING.
23427
23428 * macmenu.c (mac_dialog_modal_filter, Fx_popup_dialog) [MAC_OSX]:
23429 Put special treatment for Fmessage_box, Fyes_or_no_p, and Fy_or_n_p
23430 in #if 0 as it is not compatible with y-or-n-p-with-timeout.
23431 (timer_check) [TARGET_API_MAC_CARBON]: Add extern.
23432 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Use QuitEventLoop
23433 instead of QuitAppModalLoopForWindow. Consolidate QuitEventLoop calls.
23434 (pop_down_dialog) [TARGET_API_MAC_CARBON]: New function.
23435 [TARGET_API_MAC_CARBON] (create_and_show_dialog): Use it for unwind.
23436 Run timers during dialog popup.
23437 (Fmenu_or_popup_active_p) [TARGET_API_MAC_CARBON]: Use popup_activated.
23438
234392007-06-21 Jason Rumney <jasonr@gnu.org>
23440
23441 * image.c (convert_mono_to_color_image): Swap fore and background.
23442
234432007-06-20 Jason Rumney <jasonr@gnu.org>
23444
23445 * w32bdf.c (w32_BDF_to_x_font): Unmap memory when finished.
23446 (w32_free_bdf_font): Unmap memory not handle.
23447
234482007-06-20 Sam Steingold <sds@gnu.org>
23449
23450 * gmalloc.c (__morecore): Fix the declaration to comply with the
23451 definition.
23452
234532007-06-20 Juanma Barranquero <lekktu@gmail.com>
23454
23455 * w32term.c (w32_delete_display): Remove leftover declaration.
23456 (w32_define_cursor, w32_initialize): Make static.
23457
23458 * w32.c (_wsa_errlist): Fix typo in error message.
23459 (init_environment): Ignore any environment variable from the
23460 registry having a null value.
23461
234622007-06-20 Glenn Morris <rgm@gnu.org>
23463
23464 * Makefile.in (LIBGIF): Default to -lgif.
23465
234662007-06-17 Jason Rumney <jasonr@gnu.org>
23467
23468 * w32menu.c (add_menu_item): Don't use multibyte string functions on
23469 unicode strings.
23470
234712007-06-16 Juanma Barranquero <lekktu@gmail.com>
23472
23473 * xdisp.c (syms_of_xdisp) <auto-resize-tool-bars>:
23474 Fix typo in docstring.
23475
234762007-06-16 Eli Zaretskii <eliz@gnu.org>
23477
23478 * w32menu.c (add_menu_item): Escape `&' characters in menu items
23479 and their keybindings.
23480
234812007-06-15 Chong Yidong <cyd@stupidchicken.com>
23482
23483 * composite.c (update_compositions): Fix last fix.
23484
234852007-06-14 Jason Rumney <jasonr@gnu.org>
23486
23487 * w32.c (get_process_times_fn): New function pointer.
23488 (globals_of_w32): Intialize it if present in kernel32.dll.
23489 (w32_get_internal_run_time): New function.
23490
23491 * editfns.c (Fget_internal_run_time) [WINDOWSNT]: Use it.
23492
234932007-06-14 Kenichi Handa <handa@etlken.m17n.org>
23494
23495 * composite.c (update_compositions): Check the validness of
23496 compositions.
23497
234982007-06-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23499
23500 * frame.h (struct frame) [MAC_OS]: New member external_tool_bar.
23501 (FRAME_EXTERNAL_TOOL_BAR) [MAC_OS]: Use it.
23502
23503 * macfns.c (mac_window) [USE_MAC_TOOLBAR]: Set toolbar_win_gravity.
23504 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]: Set FRAME_EXTERNAL_TOOL_BAR.
23505
23506 * macgui.h (USE_MAC_TOOLBAR): New define.
23507
23508 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
23509 Return immediately unless popup is activated.
23510
23511 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe
23512 background to scroll bar gap.
23513 (x_scroll_bar_create) [MAC_OSX]: Set bar->fringe_extended_p.
23514 (XTset_vertical_scroll_bar) [MAC_OSX]: Put leftmost/rightmost
23515 scroll bars on frame edge. Check fringe background extension.
23516 Don't clear extended fringe background area.
23517 (TOOLBAR_IDENTIFIER, TOOLBAR_ICON_ITEM_IDENTIFIER)
23518 (TOOLBAR_ITEM_COMMAND_ID_OFFSET, TOOLBAR_ITEM_COMMAND_ID_P)
23519 (TOOLBAR_ITEM_COMMAND_ID_VALUE, TOOLBAR_ITEM_MAKE_COMMAND_ID):
23520 [USE_MAC_TOOLBAR]: New macros.
23521 (mac_move_window_with_gravity, mac_get_window_origin_with_gravity)
23522 (mac_handle_toolbar_event, mac_image_spec_to_cg_image)
23523 (mac_create_frame_tool_bar, update_frame_tool_bar, free_frame_tool_bar)
23524 (mac_tool_bar_note_mouse_movement, mac_handle_toolbar_command_event)
23525 [USE_MAC_TOOLBAR]: New functions.
23526 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Reposition window
23527 manually if previous repositioning has failed.
23528 (mac_handle_keyboard_event): Use precomputed event kind.
23529 (XTread_socket) [USE_MAC_TOOLBAR]: Handle click in structure region
23530 as tool bar item click. Handle mouse movement over tool bar items.
23531
23532 * macterm.h (struct mac_output) [USE_MAC_TOOLBAR]: New member
23533 toolbar_win_gravity.
23534 (struct scroll_bar) [MAC_OSX]: New member fringe_extended_p.
23535 (update_frame_tool_bar, free_frame_tool_bar) [USE_MAC_TOOLBAR]:
23536 Add externs.
23537
23538 * xdisp.c (update_tool_bar, redisplay_tool_bar, redisplay_window)
23539 [USE_MAC_TOOLBAR]: Sync with GTK+ tool bar display.
23540
235412007-06-14 Chong Yidong <cyd@stupidchicken.com>
23542
23543 * image.c (search_image_cache): Remove unused variable.
23544
235452007-06-13 Chong Yidong <cyd@stupidchicken.com>
23546
23547 * xfns.c, xmenu.c: Link to xaw3d if available.
23548
235492007-06-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23550
23551 * dispextern.h (struct image) [HAVE_WINDOW_SYSTEM]: New members
23552 frame_foreground and frame_background.
23553
23554 * image.c (lookup_image): Save frame foreground and background colors.
23555 (search_image_cache): Check if saved and current frame colors match.
23556
235572007-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
23558
23559 * regex.c (regex_compile): Remove the `regnum' counter.
23560 Use bufp->re_nsub instead. Add support for \(?N:RE\).
23561
235622007-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
23563
23564 * term.c: Include intervals.h to declare Fget_text_property.
23565
235662007-06-10 Jason Rumney <jasonr@gnu.org>
23567
23568 * w32fns.c (Fx_file_dialog): Take size from struct not pointer.
23569
235702007-06-08 Juanma Barranquero <lekktu@gmail.com>
23571
23572 * callint.c (Fcall_interactively):
23573 * editfns.c (Fdelete_and_extract_region):
23574 * fileio.c (Fread_file_name):
23575 * fns.c (Fmapconcat):
23576 * keyboard.c (cmd_error_internal):
23577 * keymap.c (Fkey_description):
23578 * lread.c (openp):
23579 * minibuf.c (read_minibuf):
23580 * search.c (wordify):
23581 * sunfns.c (sel_read):
23582 * xdisp.c (Fformat_mode_line, syms_of_xdisp):
23583 * xfns.c (x_default_scroll_bar_color_parameter):
23584 * xmenu.c (menu_help_callback):
23585 * xselect.c (Fx_get_atom_name):
23586 * xterm.c (x_term_init): Use empty_unibyte_string.
23587
235882007-06-08 Dmitry Antipov <dmantipov@yandex.ru> (tiny change)
23589
23590 * alloc.c (init_strings): Initialize canonical empty strings.
23591 (make_uninit_string, make_uninit_multibyte_string): Return appropriate
23592 canonical empty string when the requested size is 0.
23593
23594 * emacs.c (empty_unibyte_string): Rename from empty_string.
23595 (empty_multibyte_string): New canonical empty string.
23596 (syms_of_emacs): Don't initialize empty_string.
23597
23598 * lisp.h (STRING_SET_UNIBYTE): Return the canonical empty unibyte
23599 string, if appropriate.
23600 (empty_unibyte_string, empty_multibyte_string): New externs.
23601 (empty_string): Remove extern.
23602
23603 * lread.c (syms_of_lread): Use empty_unibyte_string.
23604
236052007-06-07 Jason Rumney <jasonr@gnu.org>
23606
23607 * s/ms-w32.h: Don't define HAVE_TZNAME.
23608
23609 * editfns.c (Fcurrent_time_zone): Remove hack for Japanese Windows.
23610
236112007-06-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23612
23613 * mac.c (xrm_get_preference_database): Remove BLOCK_INPUT.
23614
23615 * macfns.c (mac_get_window_bounds): Move extern to macterm.h.
23616 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use GetGlobalMouse.
23617
23618 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
23619 Don't call next handler.
23620 [TARGET_API_MAC_CARBON] (install_menu_target_item_handler):
23621 Remove argument. Install handler to application.
23622 (set_frame_menubar): Don't change deep_p.
23623 (mac_menu_show): Use FRAME_OUTER_TO_INNER_DIFF_X and
23624 FRAME_OUTER_TO_INNER_DIFF_Y.
23625 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
23626 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
23627 [HAVE_DIALOGS]: New macros.
23628 [HAVE_DIALOGS] (mac_handle_dialog_event, create_and_show_dialog):
23629 Use them.
23630 (fill_menubar) [TARGET_API_MAC_CARBON]: Use CFString.
23631
23632 * macselect.c [MAC_OSX] (install_service_handler): Rename from
23633 init_service_handler. All callers changed. Return OSStatus value.
23634
23635 * macterm.c (mac_begin_cg_clip): New arg F. Call SetPortWindowPort.
23636 All callers changed so as not to call SetPortWindowPort.
23637 (mac_begin_cg_clip) [USE_CG_DRAWING]: Call mac_prepare_for_quickdraw.
23638 (mac_draw_image_string_atsui) [USE_ATSUI]: New function created from
23639 mac_draw_string_common.
23640 (mac_draw_image_string_qd): Likewise.
23641 (mac_draw_string_common): Use them. Add INLINE.
23642 (XTmouse_position, x_scroll_bar_report_motion) [TARGET_API_MAC_CARBON]:
23643 Use FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y, and
23644 GetGlobalMouse.
23645 (x_set_mouse_pixel_position) [MAC_OSX]: Use FRAME_OUTER_TO_INNER_DIFF_X
23646 and FRAME_OUTER_TO_INNER_DIFF_Y.
23647 [TARGET_API_MAC_CARBON] (mac_handle_mouse_event): Likewise.
23648 [USE_MAC_TSM] (mac_handle_text_input_event): Likewise.
23649 (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Move code for
23650 repositioning window to mac_handle_window_event.
23651 (x_make_frame_invisible) [TARGET_API_MAC_CARBON]: Move code for
23652 saving window location to mac_handle_window_event
23653 [USE_MAC_FONT_PANEL] (mac_show_hide_font_panel): Install handler here.
23654 (install_menu_target_item_handler): Remove argument in extern.
23655 [TARGET_API_MAC_CARBON] (mac_event_to_emacs_modifiers):
23656 Also accept command events.
23657 (do_keystroke): New function created from XTread_socket.
23658 (init_command_handler): Remove functions.
23659 [TARGET_API_MAC_CARBON] (mac_handle_window_event): Reposition window
23660 and save window location by kEventWindowShowing and kEventWindowHiding
23661 handlers here. Don't call next handler for window state change and
23662 focus events.
23663 (mac_handle_application_event, mac_handle_keyboard_event)
23664 [TARGET_API_MAC_CARBON]: New functions.
23665 (install_window_handler) [TARGET_API_MAC_CARBON]: Register handlers for
23666 kEventWindowShowing and kEventWindowHiding events. Move installation
23667 of mouse, font, text input and menu target item handlers to
23668 install_application_handler.
23669 (install_application_handler) [TARGET_API_MAC_CARBON]: New function.
23670 (mac_handle_cg_display_reconfig) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
23671 New function.
23672 (init_dm_notification_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
23673 Register it.
23674 (XTread_socket) [TARGET_API_MAC_CARBON]:
23675 Consolidate SendEventToEventTarget calls.
23676 Use FRAME_OUTER_TO_INNER_DIFF_X and FRAME_OUTER_TO_INNER_DIFF_Y.
23677 Move application activation handler to mac_handle_application_event.
23678 Move keyboard handler to mac_handle_keyboard_event.
23679 (XTread_socket) [!TARGET_API_MAC_CARBON]: Use do_keystroke.
23680 (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
23681 init_command_handler. Call install_application_handler.
23682
23683 * macterm.h (mac_get_window_bounds): Move extern from macfns.c.
23684 (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y): New macros.
23685
236862007-06-07 Glenn Morris <rgm@gnu.org>
23687
23688 * emacs.c (main): Use `emacs-copyright' in --version output.
23689
236902007-06-06 Chong Yidong <cyd@stupidchicken.com>
23691
23692 * image.c (xpm_load): Remove spurious call to xpm_init_color_cache.
23693
236942007-06-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23695
23696 * macfns.c (mac_window): Replace WindowPtr with WindowRef.
23697
23698 * macgui.h: Replace WindowPtr with WindowRef.
23699
23700 * macmenu.c: Replace MenuHandle and GetMenuHandle with MenuRef and
23701 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
23702 Replace ControlHandle with ControlRef.
23703 (install_menu_quit_handler): Rename arg MENU_HANDLE to ROOT_MENU.
23704
23705 * macterm.c: Replace MenuHandle and GetMenuHandle with MenuRef and
23706 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
23707 Replace ControlHandle with ControlRef.
23708 (USE_CARBON_EVENTS): Remove. Use TARGET_API_MAC_CARBON instead.
23709 [MAC_OS8] (do_get_menus): Rename variable `menu_handle' to `menu'.
23710
23711 * macterm.h (struct scroll_bar): Rename member control_handle_low
23712 and control_handle_high to control_ref_low and control_ref_high.
23713 All uses changed.
23714 (SCROLL_BAR_CONTROL_REF, SET_SCROLL_BAR_CONTROL_REF): Rename from
23715 SCROLL_BAR_CONTROL_HANDLE and SET_SCROLL_BAR_CONTROL_HANDLE,
23716 respectively. All uses changed.
23717 (XCreatePixmap, XCreatePixmapFromBitmapData, XSetWindowBackground)
23718 (install_window_handler, remove_window_handler): Replace WindowPtr
23719 with WindowRef in externs.
23720
237212007-06-05 Juanma Barranquero <lekktu@gmail.com>
23722
23723 * xfaces.c (Finternal_lisp_face_p): Signal error for face alias loops.
23724
237252007-06-03 Nick Roberts <nickrob@snap.net.nz>
23726
23727 * keyboard.c (discard_mouse_events): Add GPM_CLICK_EVENT case.
23728
23729 * frame.c (Fmouse_position, Fmouse_pixel_position):
23730 Condition on HAVE_GPM too.
23731
23732 * term.c (term_mouse_highlight): Remove unused variables.
23733 (Fterm_open_connection): Set gpm_zerobased to 1.
23734 (term_mouse_movement, term_mouse_click, handle_one_term_event):
23735 Use zero based co-ordinates.
23736 (handle_one_term_event): Report a drag as mouse movement too.
23737
23738 * Makefile.in (MOUSE_SUPPORT): Define for HAVE_GPM.
23739
237402007-06-03 Chong Yidong <cyd@stupidchicken.com>
23741
23742 * image.c (search_image_cache): New function. Require background
23743 color match if background color is unspecified in the image spec.
23744 (uncache_image, lookup_image): Use it.
23745
237462007-06-01 Juanma Barranquero <lekktu@gmail.com>
23747
23748 * window.c (Fshrink_window): Reflow docstring.
23749
237502007-06-02 Chong Yidong <cyd@stupidchicken.com>
23751
23752 * Version 22.1 released.
23753
237542007-06-01 Richard Stallman <rms@gnu.org>
23755
23756 * xfns.c (x_encode_text): Add GCPRO.
23757
237582007-06-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23759
23760 * xfns.c (x_set_name_internal): Save encoded name before
23761 x_encode_text in case string data is relocated.
23762
237632007-05-31 Richard Stallman <rms@gnu.org>
23764
23765 * buffer.c (syms_of_buffer): Doc fix.
23766
237672007-05-30 Nick Roberts <nickrob@snap.net.nz>
23768
23769 * sysdep.c (init_sys_modes): Add rather than replace with
23770 O_NONBLOCK.
23771
23772 * frame.c [HAVE_GPM] (Fset_mouse_pixel_position): Add call to
23773 term_mouse_moveto.
23774
23775 * termhooks.h (term_mouse_moveto): New extern.
23776
23777 * term.c (mouse_face_window): Rename...
23778 (Qmouse_face_window): ...to this.
23779 (term_show_mouse_face, term_clear_mouse_face)
23780 (term_mouse_highlight): Use Qmouse_face_window.
23781 (term_mouse_moveto): New function.
23782 (term_mouse_position): Make it work.
23783 (syms_of_term): Uncomment assignment to mouse_position_hook.
23784 Staticpro Qmouse_face_window.
23785
237862007-05-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23787
23788 * xdisp.c (redisplay_internal): Bind inhibit-point-motion-hooks to t
23789 around current_column call.
23790
237912007-05-26 Dan Nicolaescu <dann@ics.uci.edu>
23792
23793 * xfaces.c (syms_of_xfaces): Delete stray semicolon.
23794 * xdisp.c (next_element_from_buffer):
23795 * window.c (delete_window):
23796 * term.c (term_mouse_highlight):
23797 * msdos.c (getdefdir):
23798 * macterm.c (mac_create_bitmap_from_bitmap_data)
23799 (init_font_name_table):
23800 * fns.c (Fsxhash):
23801 * data.c (Fmake_local_variable):
23802 * ccl.c (ccl_driver): Likewise.
23803
238042007-05-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23805
23806 * macterm.c [USE_CARBON_EVENTS] (mac_handle_window_event):
23807 Call mac_wakeup_from_rne on window size change.
23808
238092007-05-25 Chong Yidong <cyd@stupidchicken.com>
23810
23811 * image.c (uncache_image): Fix typo.
23812
238132007-05-23 Johannes Weiner <hannes@saeurebad.de> (tiny change)
23814
23815 * keyboard.c (make_lispy_movement): Condition on HAVE_GPM too.
23816
238172007-05-22 Richard Stallman <rms@gnu.org>
23818
23819 * xterm.c (x_connection_closed): Remove NO_RETURN.
23820
238212007-05-22 Martin Rudalics <rudalics@gmx.at>
23822
23823 * syntax.c (scan_words): Fix arg to UPDATE_SYNTAX_TABLE_BACKWARD.
23824
238252007-05-21 Chong Yidong <cyd@stupidchicken.com>
23826
23827 * image.c (uncache_image): New function.
23828 (Fimage_refresh): New function.
23829
238302007-05-20 Jan Djärv <jan.h.d@swipnet.se>
23831
23832 * Makefile.in: Move GPM check outside HAVE_X_WINDOWS.
23833
238342007-05-20 Nick Roberts <nickrob@snap.net.nz>
23835
23836 * config.in, keyboard.c, Makefile.in, sysdep.c, term.c,
23837 * termhooks.h: Use HAVE_GPM instead of HAVE_GPM_H.
23838
238392007-05-20 Nick Roberts <nickrob@snap.net.nz>
23840
23841 * keyboard.c (make_lispy_event): Make case GPM_CLICK_EVENT
23842 conditional on [HAVE_GPM_H].
23843
238442007-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
23845
23846 * syntax.c (skip_chars): Update syntax-table only after we checked that
23847 the new location is valid.
23848
238492007-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23850
23851 * macterm.c (x_calc_absolute_position): Add BLOCK_INPUT around
23852 mac_get_window_bounds.
23853
238542007-05-20 Nick Roberts <nickrob@snap.net.nz>
23855
23856 * Makefile.in (LIBGPM): Allow it to be set from configure.
23857 If set then link Emacs with it.
23858
23859 * config.in: Regenerate.
23860
23861 * lisp.h (add_gpm_wait_descriptor, delete_gpm_wait_descriptor):
23862 New externs.
23863
23864 * termhooks.h [HAVE_GPM_H] (enum event_kind): Add GPM_CLICK_EVENT.
23865 Include gpm.h.
23866 (handle_one_term_event, term_gpm): New externs.
23867
23868 * sysdep.c [HAVE_GPM_H] (init_sys_modes): Make gpm_fd nonblocking
23869 and allow it to be interrupted by SIGIO.
23870
23871 * process.c (gpm_wait_mask, max_gpm_desc): New variables.
23872 (wait_reading_process_output): Wait on gpm_fd too.
23873 (add_gpm_wait_descriptor, delete_gpm_wait_descriptor)): New functions.
23874 (add_gpm_wait_descriptor_called_flag): New variable.
23875 (delete_keyboard_wait_descriptor): Check gpm_wait_mask.
23876
23877 * keyboard.c [HAVE_GPM_H] (Qmouse_fixup_help_message)
23878 (make_lispy_movement, tracking_off, Ftrack_mouse, some_mouse_moved)
23879 (show_help_echo, readable_events, kbd_buffer_get_event, init_keyboard):
23880 Extend HAVE_MOUSE ifdefs to HAVE_GPM_H.
23881 (make_lispy_event): Add case GPM_CLICK_EVENT.
23882 (read_avail_input): Handle mouse input.
23883
23884 * term.c (write_glyphs_with_face): New function.
23885 [HAVE_GPM_H]: Include buffer.h, sys/fcntl.h.
23886 (mouse_face_beg_row, mouse_face_beg_col, mouse_face_end_row)
23887 (mouse_face_end_col, mouse_face_past_end, mouse_face_window)
23888 (mouse_face_face_id, term_gpm, pos_x, pos_y)
23889 (last_mouse_x, last_mouse_y): New variables.
23890 (term_show_mouse_face, term_clear_mouse_face, fast_find_position)
23891 (term_mouse_highlight, term_mouse_movement, term_mouse_position)
23892 (term_mouse_click, handle_one_term_event, Fterm_open_connection)
23893 (Fterm_close_connection): New functions.
23894 (term_init): Initialise mouse_face_window.
23895
238962007-05-19 Chong Yidong <cyd@stupidchicken.com>
23897
23898 * xdisp.c (redisplay_window): If first window line is a
23899 continuation line, recompute the new window start instead of
23900 recentering.
23901
239022007-05-18 Glenn Morris <rgm@gnu.org>
23903
23904 * m/alpha.h (ORDINARY_LINK): No longer define on OpenBSD.
23905 Suggested by Alfred M. Szmidt <ams@gnu.org>.
23906
239072007-05-17 Glenn Morris <rgm@gnu.org>
23908
23909 * m/macppc.h (ORDINARY_LINK): No longer define on OpenBSD.
23910
239112007-05-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23912
23913 * macterm.c [USE_CARBON_EVENTS] (mac_convert_event_ref): Also convert
23914 dead key repeat and up events.
23915
239162007-05-14 Chong Yidong <cyd@stupidchicken.com>
23917
23918 * image.c (pbm_load): Check image size for monochrome pbm.
23919
239202007-05-13 Chong Yidong <cyd@stupidchicken.com>
23921
23922 * xterm.c (XTread_socket): Revert last change.
23923
239242007-05-12 Chong Yidong <cyd@stupidchicken.com>
23925
23926 * image.c (pbm_load): Correctly check image size for greyscale pbm.
23927
23928 * xterm.c (XTread_socket): Yet Another Uncaught X Error Crash (YAUXEC).
23929
239302007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
23931
23932 * editfns.c (Ftranspose_regions): Yet another int/Lisp_Object
23933 mixup (YAILOM).
23934
239352007-05-07 Andreas Schwab <schwab@suse.de>
23936
23937 * keymap.c (Flookup_key): Fix typo in last change.
23938
239392007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
23940
23941 * keymap.c (Fdefine_key, Flookup_key): Only do the 0x80->meta_modifier
23942 mapping for unibyte strings.
23943
239442007-05-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23945
23946 * macmenu.c (mac_dialog_show): Apply 2007-04-27 change for xmenu.c.
23947 (Fx_popup_dialog) [MAC_OSX]: Likewise.
23948
239492007-04-29 Richard Stallman <rms@gnu.org>
23950
23951 * insdel.c (replace_range): For undo, record insertion first.
23952
239532007-04-29 Andreas Schwab <schwab@suse.de>
23954
23955 * lisp.h (VECSIZE): Use OFFSETOF.
23956
239572007-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23958
23959 * xdisp.c (try_window_reusing_current_matrix): Fix number of
23960 disabled lines.
23961
239622007-04-28 Richard Stallman <rms@gnu.org>
23963
23964 * lread.c (read_escape): In a string, \s is always space.
23965
239662007-04-27 Jan Djärv <jan.h.d@swipnet.se>
23967
23968 * xmenu.c (xdialog_show): Call Fredisplay before showing the dialog.
23969
23970 * gtkutil.c (xg_update_menubar, create_menus): Create empty
23971 submenu for menu bar items.
23972
23973See ChangeLog.10 for earlier changes.
23974
23975;; Local Variables:
23976;; coding: utf-8
23977;; add-log-time-zone-rule: t
aac0c6e3
MR
23978;; End:
23979
e3eb1dae 23980 Copyright (C) 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
aac0c6e3
MR
23981
23982 This file is part of GNU Emacs.
23983
23984 GNU Emacs is free software: you can redistribute it and/or modify
23985 it under the terms of the GNU General Public License as published by
23986 the Free Software Foundation, either version 3 of the License, or
23987 (at your option) any later version.
23988
23989 GNU Emacs is distributed in the hope that it will be useful,
23990 but WITHOUT ANY WARRANTY; without even the implied warranty of
23991 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
23992 GNU General Public License for more details.
23993
23994 You should have received a copy of the GNU General Public License
23995 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
23996
23997;; arch-tag: dfb6ad96-1550-4905-9e53-d2059ee84c40