aboutsummaryrefslogtreecommitdiffstats
path: root/src/ChangeLog
diff options
context:
space:
mode:
Diffstat (limited to 'src/ChangeLog')
-rw-r--r--src/ChangeLog24178
1 files changed, 79 insertions, 24099 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index e70aefd75b5..6329382df95 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -7,24127 +7,107 @@
7 * bytecode.c (exec_byte_code): 7 * bytecode.c (exec_byte_code):
8 * eval.c (Ffunctionp): Fix up int/Lisp_Object confusions. 8 * eval.c (Ffunctionp): Fix up int/Lisp_Object confusions.
9 9
102010-06-12 Eli Zaretskii <eliz@gnu.org> 102008-04-23 Miles Bader <miles@gnu.org>
11 11
12 * makefile.w32-in ($(BLD)/bidi.$(O)): Depend on biditype.h and 12 * eval.c (Ffunctionp): Return nil for special forms.
13 bidimirror.h. 13 (Qunevalled): New variable.
14
15 * deps.mk (bidi.o): Depend on biditype.h and bidimirror.h.
16
17 * bidi.c (bidi_initialize): Remove explicit initialization of
18 bidi_type_table; include biditype.h instead. Don't support
19 entries whose second codepoint is zero. Initialize
20 bidi_mirror_table.
21 (bidi_mirror_char): Use bidi_mirror_table.
22
23 * biditype.h: New file.
24
25 * bidimirror.h: New file.
26
27 * window.c (syms_of_window): Doc fix (bug#6409).
28
292010-06-12 Romain Francoise <romain@orebokech.com>
30
31 * Makefile.in (lisp, shortlisp): Use new location of vc-hooks and
32 ediff-hook.
33
342010-06-10 Glenn Morris <rgm@gnu.org>
35
36 * editfns.c (Fbyte_to_string): Pacify compiler.
37
38 * m/ibms390x.h: Rather than duplicating ibms390.h, just include it.
39
402010-06-09 Stefan Monnier <monnier@iro.umontreal.ca>
41
42 * dbusbind.c (xd_append_arg): Don't "make-unibyte" the string.
43 Check `object's type before accessing its guts.
44
452010-06-09 Dan Nicolaescu <dann@ics.uci.edu>
46
47 * s/usg5-4.h: Fix previous change.
48 Suggested by Lawrence Mitchell <wence@gmx.li>
49
502010-06-08 Andreas Schwab <schwab@linux-m68k.org>
51
52 * minibuf.c (Fall_completions): Add more checks.
53
542010-06-08 Juanma Barranquero <lekktu@gmail.com>
55
56 * minibuf.c (Fall_completions): Check COLLECTION's size (bug#6378).
57
582010-06-08 Dan Nicolaescu <dann@ics.uci.edu>
59
60 * lread.c (X_OK): Remove, unused.
61
62 * dispnew.c: Remove obsolete comment.
63
64 Remove INCLUDED_FCNTL.
65 * xterm.c (INCLUDED_FCNTL):
66 * callproc.c (INCLUDED_FCNTL):
67 * alloc.c (INCLUDED_FCNTL):
68 * systty.h (INCLUDED_FCNTL): Remove all uses, not needed anymore.
69 (emacs_get_tty, emacs_set_tty): Declare unconditionally.
70
712010-06-07 Martin Rudalics <rudalics@gmx.at>
72
73 * window.c (Fselect_window): Move `record_buffer' up to the
74 beginning of this function, so the buffer gets recorded
75 even if the selected window does not change.
76 http://lists.gnu.org/archive/html/emacs-devel/2010-06/msg00137.html
77
782010-06-07 Juanma Barranquero <lekktu@gmail.com>
79
80 * cmds.c (Fforward_char, Fbackward_char): Fix typos in docstrings.
81 (Fforward_line, Fbeginning_of_line): Reflow docstrings.
82
832010-06-06 Dan Nicolaescu <dann@ics.uci.edu>
84
85 Remove BSTRING related code, all platforms define it.
86 * s/usg5-4.h (BSTRING): Remove definition.
87 * s/template.h (BSTRING):
88 * s/msdos.h (BSTRING):
89 * s/ms-w32.h (BSTRING):
90 * s/hpux10-20.h (BSTRING):
91 * s/gnu-linux.h (BSTRING):
92 * s/darwin.h (BSTRING):
93 * s/cygwin.h (BSTRING):
94 * s/bsd-common.h (BSTRING):
95 * s/aix4-2.h (BSTRING): Likewise.
96 * sysdep.c: Remove code depending on BSTRING not being defined.
97
982010-06-05 Juanma Barranquero <lekktu@gmail.com>
99
100 Remove obsolete macro BASE_LEADING_CODE_P.
101 * character.h (BASE_LEADING_CODE_P): Remove.
102 * regex.c [!emacs] (BASE_LEADING_CODE_P): Remove.
103 * buffer.c (Fset_buffer_multibyte):
104 * indent.c (scan_for_column, compute_motion):
105 * insdel.c (count_combining_before, count_combining_after):
106 Use LEADING_CODE_P instead of BASE_LEADING_CODE_P.
107
1082010-06-04 Juanma Barranquero <lekktu@gmail.com>
109
110 Turn `directory-sep-char' into a noop.
111
112 * lisp.h [WINDOWSNT] (Vdirectory_sep_char): Don't declare.
113 (DIRECTORY_SEP): Define unconditionally.
114
115 * s/ms-w32.h (DIRECTORY_SEP): Remove.
116
117 * emacs.c (decode_env_path): Don't check DIRECTORY_SEP,
118 call dostounix_filename directly.
119
120 * fileio.c (CORRECT_DIR_SEPS): Remove.
121 (Ffile_name_directory, directory_file_name, Fexpand_file_name)
122 (Fsubstitute_in_file_name): Use dostounix_filename instead.
123 (file_name_as_directory): Use dostounix_filename, DIRECTORY_SEP.
124 (syms_of_fileio) <directory-sep-char>: Move to subr.el.
125
126 * w32proc.c (CORRECT_DIR_SEPS): Remove.
127 (Fw32_short_file_name, Fw32_long_file_name): Use dostounix_filename.
128
1292010-06-03 Andreas Schwab <schwab@linux-m68k.org>
130
131 * process.c (conv_lisp_to_sockaddr): Fix conversion of IPv4
132 address. (Bug#6346)
133
1342010-06-03 Juanma Barranquero <lekktu@gmail.com>
135
136 * ccl.c (Fccl_program_p): Fix typo in docstring.
137
1382010-06-03 Dan Nicolaescu <dann@ics.uci.edu>
139
140 Move UNEXEC definition to autoconf.
141 * s/usg5-4.h (UNEXEC): Remove, move to configure.in.
142 * s/sol2-10.h (UNEXEC):
143 * s/irix6-5.h (UNEXEC):
144 * s/hpux10-20.h (UNEXEC):
145 * s/gnu-linux.h (UNEXEC):
146 * s/darwin.h (UNEXEC):
147 * s/cygwin.h (UNEXEC):
148 * s/bsd-common.h (UNEXEC):
149 * s/aix4-2.h (UNEXEC):
150 * m/alpha.h (UNEXEC): Likewise.
151 * Makefile.in (UNEXEC_OBJ): Define using @UNEXEC_OBJ@.
152
1532010-06-03 Juanma Barranquero <lekktu@gmail.com>
154
155 Remove obsolete pre-unicode2 macros.
156 * character.h (MULTIBYTE_FORM_LENGTH, PARSE_MULTIBYTE_SEQ): Remove.
157 * composite.c (composition_reseat_it):
158 * data.c (Faset):
159 * fns.c (Ffillarray):
160 * regex.c (re_search_2): Use BYTES_BY_CHAR_HEAD.
161 [!emacs] (BYTES_BY_CHAR_HEAD): Define instead of MULTIBYTE_FORM_LENGTH.
162
1632010-06-03 Juri Linkov <juri@jurta.org>
164
165 * buffer.c (Fother_buffer): Add CHECK_FRAME.
166 (Fswitch_to_buffer): Remove unused variable `err'.
167
1682010-06-03 Glenn Morris <rgm@gnu.org>
169
170 * m/template.h (NO_SOCK_SIGIO): Remove, no longer used.
171
172 * m/hp800.h (alloca) [__NetBSD__ && __GNUC__]: No need to define it,
173 now that AH_BOTTOM does it.
174
175 * m/hp800.h (HAVE_ALLOCA):
176 * m/ibms390x.h (HAVE_ALLOCA): Do not define, no longer needed.
177
178 * m/ia64.h, s/gnu-linux.h, s/gnu.h, s/netbsd.h, s/usg5-4.h:
179 Remove NOT_C_CODE tests, it is always true now.
180
1812010-06-02 Dan Nicolaescu <dann@ics.uci.edu>
182
183 Fix config.h includes.
184 * xsettings.c:
185 * xgselect.c:
186 * nsterm.m:
187 * nsselect.m:
188 * nsimage.m:
189 * nsfont.m:
190 * nsfns.m:
191 * dbusbind.c: Use #include <config.h> instead of "config.h" as all
192 other files do.
193
194 * gmalloc.c: Remove BROKEN_PROTOTYPES reference, unused.
195
196 * s/sol2-6.h: Remove obsolete comments.
197
198 Remove unnecessary alloca.h includes.
199 * keymap.c: Do not include alloca.h, config.h does that.
200 * sysdep.c: Likewise. Do not define fwrite, not used.
201
2022010-06-01 Stefan Monnier <monnier@iro.umontreal.ca>
203
204 * sysdep.c (child_setup_tty): Move the non-canonical initialization to
205 the HAVE_TERMIO where it belongs (bug#6149).
206
2072010-05-31 Stefan Monnier <monnier@iro.umontreal.ca>
208
209 * keymap.c (Fwhere_is_internal): Fix handling of remapping (in thread
210 of bug#6305).
211
2122010-05-30 Eli Zaretskii <eliz@gnu.org>
213
214 * bidi.c (bidi_move_to_visually_next): Make sure the sentinel
215 state is always cached (bug#6306).
216
2172010-05-29 Eli Zaretskii <eliz@gnu.org>
218
219 Fix cursor motion in bidi-reordered continued lines.
220 * xdisp.c (try_cursor_movement): Backup to non-continuation line
221 only after finding point's row. Fix the logic. Rewrite the loop
222 over continuation lines in bidi-reordered buffers. Return
223 CURSOR_MOVEMENT_MUST_SCROLL upon failure to find a suitable row,
224 rather than CURSOR_MOVEMENT_CANNOT_BE_USED.
225
2262010-05-28 Michael Albinus <michael.albinus@gmx.de>
227
228 * fileio.c (Fdelete_file): Pass TRASH arg to handler call.
229
2302010-05-28 Kenichi Handa <handa@m17n.org>
231
232 * font.c (font_delete_unmatched): Check Vface_ignored_fonts.
233 Don't sheck SPEC if it is nil.
234 (font_list_entities): Call font_delete_unmatched if
235 Vface_ignored_fonts is non-nil. (Bug#6287)
236
2372010-05-28 Glenn Morris <rgm@gnu.org>
238
239 * Makefile.in (LIBES): Remove $LOADLIBES, it is never set.
240
2412010-05-27 Chong Yidong <cyd@stupidchicken.com>
242
243 * fileio.c (Fdelete_file): Change meaning of optional arg to mean
244 whether to trash.
245 (internal_delete_file, Frename_file): Callers changed.
246 (delete_by_moving_to_trash): Doc fix.
247 (Fdelete_directory_internal): Don't move to trash.
248
249 * callproc.c (delete_temp_file):
250 * buffer.c (Fkill_buffer): Callers changed.
251
252 * lisp.h: Update prototype.
253
2542010-05-27 Chong Yidong <cyd@stupidchicken.com>
255
256 * xdisp.c (redisplay_window): After redisplay, check if point is
257 still valid before setting it (Bug#6177).
258
2592010-05-27 Glenn Morris <rgm@gnu.org>
260
261 * Makefile.in, autodeps.mk, deps.mk, ns.mk:
262 Convert comments to Makefile format.
263
264 * Makefile.in (bootstrap-clean): No more Makefile.c.
265
2662010-05-26 Glenn Morris <rgm@gnu.org>
267
268 * Makefile.in (YMF_PASS_LDFLAGS): Remove.
269 (temacs${EXEEXT}): Use PRE_EDIT_LDFLAGS, POST_EDIT_LDFLAGS.
270
271 * Makefile.in (NS_IMPL_GNUSTEP_INC, NS_IMPL_GNUSTEP_TEMACS_LDFLAGS):
272 Remove.
273 (TEMACS_LDFLAGS): Do not use NS_IMPL_GNUSTEP_TEMACS_LDFLAGS.
274
2752010-05-26 Kenichi Handa <handa@m17n.org>
276
277 * composite.c (composition_compute_stop_pos): Fix condition for
278 backward scanning.
279
2802010-05-25 Glenn Morris <rgm@gnu.org>
281
282 * Makefile.in (@NS_IMPL_GNUSTEP_INC@, NS_IMPL_GNUSTEP_TEMACS_LDFLAGS):
283 Move before TEMACS_LDFLAGS.
284 (TEMACS_LDFLAGS): Use $NS_IMPL_GNUSTEP_TEMACS_LDFLAGS.
285 (temacs${EXEEXT}): Do not use $NS_IMPL_GNUSTEP_TEMACS_LDFLAGS.
286
287 * Makefile.in (NOT_C_CODE): No longer define.
288 (config.h): No longer include.
289
290 * Makefile.in (LD_SWITCH_SYSTEM_TEMACS): Move definition after some
291 variables it may reference.
292
293 * Makefile.in (LD_SWITCH_SYSTEM_EXTRA): Remove.
294 (TEMACS_LDFLAGS): Remove LD_SWITCH_SYSTEM_EXTRA.
295
2962010-05-25 Kenichi Handa <handa@m17n.org>
297
298 * dispextern.h (struct composition_it): New members rule_idx and
299 charpos.
300
301 * xdisp.c (set_iterator_to_next): While scanning backward, assume
302 that the character positions of IT point the last character of the
303 current grapheme cluster.
304 (next_element_from_composition): Don't change character positions
305 of IT.
306 (append_composite_glyph): Set glyph->charpos to
307 it->cmp_it.charpos.
308
309 * composite.c (autocmp_chars): Change the first argument to RULE,
310 and try composition with RULE only.
311 (composition_compute_stop_pos): Record the index number of the
312 composition rule in CMP_IT->rule_idx.
313 (composition_reseat_it): Call autocmp_chars repeatedly until the
314 correct rule of the composition is found.
315 (composition_update_it): Set CMP_IT->charpos. Assume the CHARPOS
316 is at the last character of the current grapheme cluster when
317 CMP_IT->reversed_p is nonzero.
318
3192010-05-24 Stefan Monnier <monnier@iro.umontreal.ca>
320
321 * editfns.c (Fbyte_to_string): New function.
322
3232010-05-24 Stefan Monnier <monnier@iro.umontreal.ca>
324
325 * process.c (Fmake_network_process): Set :host to nil if it's not used.
326 Suggested by Masatake YAMATO <yamato@redhat.com>.
327
3282010-05-23 Eli Zaretskii <eliz@gnu.org>
329
330 * dispextern.h (init_iterator): Sync prototype with changed definition.
331
3322010-05-20 enami tsugutomo <tsugutomo.enami@jp.sony.com>
333
334 * s/netbsd.h: If terminfo is found, use it in preference to
335 termcap. (Bug#6190) [Backport from trunk]
336
3372010-05-19 Eli Zaretskii <eliz@gnu.org>
338
339 Redesign and reimplement bidi-aware edge positions of glyph rows.
340
341 * dispextern.h (struct glyph_row): New members minpos and maxpos.
342 (MATRIX_ROW_START_CHARPOS, MATRIX_ROW_START_BYTEPOS)
343 (MATRIX_ROW_END_CHARPOS, MATRIX_ROW_END_BYTEPOS): Reference minpos
344 and maxpos members instead of start.pos and end.pos, respectively.
345
346 * xdisp.c (display_line): Compare IT_CHARPOS with the position in
347 row->start.pos, rather than with MATRIX_ROW_START_CHARPOS.
348 (cursor_row_p): Use row->end.pos rather than MATRIX_ROW_END_CHARPOS.
349 (try_window_reusing_current_matrix, try_window_id):
350 Use ROW->minpos rather than ROW->start.pos.
351 (init_from_display_pos, init_iterator): Use EMACS_INT for
352 character and byte positions.
353 (find_row_edges): Rename from find_row_end. Accept additional
354 arguments for minimum and maximum buffer positions seen by
355 display_line for this row. Don't use iterator to find the
356 position following the maximum one; instead, increment the
357 position found by display_line directly. Fix logic; eol_pos
358 should be tested before the rest. Handle the case of characters
359 delivered from display vector (bug#6036). Fix tests related to
360 it->method. Handle the truncated_on_right_p rows.
361 (RECORD_MAX_MIN_POS): New macro.
362 (display_line): Use it to record the minimum and maximum buffer
363 positions for glyphs in the row being assembled. Record the
364 position of the newline that terminates the line. If word wrap is
365 in effect, restore minimum and maximum positions seen up to the
366 wrap point, when iterator returns to it.
367 (try_window_reusing_current_matrix): Give up if in bidi-reordered
368 row and cursor not already at point. Restore original pre-bidi
369 code for unidirectional buffers.
370
371 * dispnew.c (increment_row_positions, check_matrix_invariants):
372 Increment and check row->start.pos and row->end.pos, in addition
373 to MATRIX_ROW_START_CHARPOS and MATRIX_ROW_END_CHARPOS.
374
375 * .gdbinit (prowlims): Display row->minpos and row->maxpos.
376 Display truncated_on_left_p and truncated_on_right_p flags.
377 Formatting fixes.
378 (pmtxrows): Display the ordinal number of each row. Don't display
379 rows beyond the last one.
380
381 * bidi.c (bidi_cache_iterator_state): Don't zero out new_paragraph:
382 it is not copied by bidi_copy_it.
383
3842010-05-22 Eli Zaretskii <eliz@gnu.org>
385
386 * w32.c (sys_write): Break writes into chunks smaller than 32MB.
387 (Bug#6237)
388
3892010-05-22 Chong Yidong <cyd@stupidchicken.com>
390
391 * image.c (Fimage_flush): Rename from image-refresh.
392
3932010-05-21 Chong Yidong <cyd@stupidchicken.com>
394
395 * xdisp.c (redisplay_internal): Clear caches even if redisplaying
396 just one window.
397
398 * image.c (Vimage_cache_eviction_delay): Decrease to 300.
399 (clear_image_cache): If the number of cached images is unusually
400 large, decrease the cache eviction delay (Bug#6230).
401
4022010-05-21 Glenn Morris <rgm@gnu.org>
403
404 * Makefile.in (${ns_appdir}, ${ns_appbindir}Emacs, ns-app):
405 Move these rules to ns.mk.
406 * ns.mk: New file.
407
408 * Makefile.in (../src/$(OLDXMENU), $(OLDXMENU)): Always define rules.
409
410 * Makefile.in (CANNOT_DUMP): New, set by configure.
411 (emacs${EXEEXT}, bootstrap-emacs${EXEEXT}): Use $CANNOT_DUMP.
412
4132010-05-20 Juri Linkov <juri@jurta.org>
414
415 * fileio.c (Fdelete_file): Change interative spec to use
416 `read-file-name' like in `find-file-read-args' where the default
417 value is `default-directory' instead of `buffer-file-name'.
418 http://lists.gnu.org/archive/html/emacs-devel/2010-05/msg00533.html
419
4202010-05-20 Kevin Ryde <user42@zip.com.au>
421
422 * keyboard.c (Vlast_command, Vkeyboard_translate_table)
423 (Voverriding_terminal_local_map, Vsystem_key_alist)
424 (Vlocal_function_key_map): Fix manual link in docstring (Bug#6224).
425
4262010-05-20 Glenn Morris <rgm@gnu.org>
427
428 * Makefile.in (DEPDIR): New constant.
429 (DEPFLAGS): Set with configure, not cpp.
430 (MKDEPDIR): New, set by configure.
431 (.c.o, .m.o, ecrt0.o): Use $MKDEPDIR.
432 (clean): Use $DEPDIR.
433 (deps_frag): Include from configure.
434 Move static/dynamic dependency stuff to deps.mk/autodeps.mk.
435 * deps.mk, autodeps.mk: New files, extracted from Makefile.in.
436
437 * bidi.c (bidi_cache_shrink, bidi_cache_iterator_state): Fix
438 reallocation of the cache. (Bug#6210)
439
4402010-05-19 Glenn Morris <rgm@gnu.org>
441
442 * s/msdos.h (ORDINARY_LINK): Move to sed2v2.inp.
443
444 * Makefile.in (LD, YMF_PASS_LDFLAGS): Set with configure, not cpp.
445 (GNULIB_VAR): Remove.
446 (LIBES): Use LIB_GCC instead of GNULIB_VAR.
447
448 * m/ibms390x.h (LINKER):
449 * m/macppc.h (LINKER) [GNU_LINUX]:
450 * s/aix4-2.h (ORDINARY_LINK):
451 * s/cygwin.h (LINKER):
452 * s/darwin.h (ORDINARY_LINK):
453 * s/gnu.h (ORDINARY_LINK):
454 * s/netbsd.h (LINKER):
455 * s/usg5-4.h (ORDINARY_LINK):
456 Move to configure.
457
458 * s/aix4-2.h (LINKER): Remove; this file sets ORDINARY_LINK.
459
4602010-05-18 Chong Yidong <cyd@stupidchicken.com>
461
462 * character.c (Fstring, Funibyte_string): Use SAFE_ALLOCA to
463 prevent stack overflow if number of arguments is too large
464 (Bug#6214).
465
4662010-05-18 Juanma Barranquero <lekktu@gmail.com>
467
468 * charset.c (load_charset_map_from_file): Don't call close after fclose.
469
4702010-05-18 Glenn Morris <rgm@gnu.org>
471
472 * s/gnu-linux.h: Combine two conditionals.
473
474 * Makefile.in (otherobj): Include $(VMLIMIT_OBJ) separately from
475 $(POST_ALLOC_OBJ).
476
477 * Makefile.in (RALLOC_OBJ): New, set by configure.
478 (rallocobj): Replace with the previous variable.
479 (otherobj): Use $RALLOC_OBJ.
480
481 * s/gnu.h (REL_ALLOC) [DOUG_LEA_MALLOC]:
482 * s/gnu-linux.h (REL_ALLOC) [DOUG_LEA_MALLOC]: Move undef to configure.
483
484 * Makefile.in (GMALLOC_OBJ, VMLIMIT_OBJ): New, set by configure.
485 (gmallocobj, vmlimitobj): Replace with previous two variables.
486 (otherobj): Use $GMALLOC_OBJ, $VMLIMIT_OBJ.
487
4882010-05-17 Glenn Morris <rgm@gnu.org>
489
490 * Makefile.in (OLDXMENU_DEPS): New, set by configure.
491 (stamp-oldxmenu): Use $OLDXMENU_DEPS.
492
4932010-05-16 Glenn Morris <rgm@gnu.org>
494
495 * Makefile.in (${ns_appbindir}Emacs, ns-app): Always define these rules.
496
497 * Makefile.in (clean): Get rid of HAVE_NS conditional.
498
499 * Makefile.in (ns_appdir, ns_appbindir): Now configure adds the
500 trailing "/".
501
502 * Makefile.in (TEMACS_LDFLAGS2): New, set by configure.
503 (temacs${EXEEXT}): Combine the NS_IMPL_GNUSTEP case with the default.
504
505 * Makefile.in (GNUSTEP_SYSTEM_LIBRARIES): Remove, unused.
506 (NS_IMPL_GNUSTEP_TEMACS_LDFLAGS): New, set by configure.
507 (LD) [NS_IMPL_GNUSTEP]: Set to $(CC) -rdynamic.
508 (temacs${EXEEXT}): Remove $LOCALCPP, never defined or referenced.
509 Make most of the NS_IMPL_GNUSTEP case the same as the default case.
510
511 * Makefile.in (temacs${EXEEXT}) [!NS_IMPL_GNUSTEP]:
512 Remove ${STARTFLAGS}, nothing ever sets it.
513
5142010-05-16 Dan Nicolaescu <dann@ics.uci.edu>
515
516 * m/ia64.h (UNEXEC): Remove, set in s/*.h.
517
5182010-05-16 Glenn Morris <rgm@gnu.org>
519
520 * Makefile.in (LIBX_BASE): Always define.
521
522 * Makefile.in (LIBX_OTHER): Move out of cpp section.
523
524 * Makefile.in (LIBXT): Always define.
525
5262010-05-15 Glenn Morris <rgm@gnu.org>
527
528 * Makefile.in (OLDXMENU, LIBXMENU, LIBX_OTHER): Always define.
529
530 * Makefile.in (FONT_DRIVERS): Remove, replace with $FONT_OBJ.
531 (obj, SOME_MACHINE_OBJECTS): Use $FONT_OBJ.
532
5332010-05-15 Ken Raeburn <raeburn@raeburn.org>
534
535 * lisp.h (XFLOAT_DATA): Use "0?x:x" to generate an rvalue. (Bug#5916)
536 (LISP_MAKE_RVALUE) [!USE_LISP_UNION_TYPE && !__GNUC__]: Likewise.
537
538 * emacs.c (main): Initialize initial-environment and
539 process-environment before generating from env, not after.
540
541 Handle --version reasonably in CANNOT_DUMP configuration.
542 * emacs.c (emacs_version, emacs_copyright): New string variables.
543 (Vemacs_version, Vemacs_copyright): New Lisp_Object variables.
544 (syms_of_emacs): Defvar them, and initialize them from the C
545 string variables.
546 (main): If initialization hasn't been done, print initial version
547 info from the C strings, instead of starting an interactive session.
548
5492010-05-15 Eli Zaretskii <eliz@gnu.org>
550
551 * bidi.c (bidi_paragraph_init): Don't leave alone garbage values
552 of bidi_it->paragraph_dir. Call bidi_initialize if needed.
553 (bidi_paragraph_init): Remove redundant assertion that we are at
554 the beginning of a line after call to bidi_find_paragraph_start.
555
556 * xdisp.c (Fcurrent_bidi_paragraph_direction): New function.
557 (syms_of_xdisp): Defsubr it.
558
559 * cmds.c (Fforward_char, Fbackward_char): Doc fix.
560
561 * Makefile.in: Fix MSDOS-related comments.
562
5632010-05-15 Glenn Morris <rgm@gnu.org>
564
565 * Makefile.in (OLDXMENU_TARGET): New, set by configure.
566 (really-lwlib, really-oldXMenu): Always define.
567 ($OLDXMENU): Depend on $OLDXMENU_TARGET.
568
569 * Makefile.in: Simplify cpp conditional.
570
571 * Makefile.in (${ns_appdir}): Simplify using umask.
572
573 * Makefile.in (${ns_appdir}): Remove references to CVS-related files.
574
5752010-05-14 Stefan Monnier <monnier@iro.umontreal.ca>
576
577 * eval.c (specbind): Remove left-over duplicate test.
578 Disallow let-binding frame-local vars. Add comment.
579
5802010-05-14 Eli Zaretskii <eliz@gnu.org>
581
582 Make the cache of bidi iterator states dynamically allocated.
583 * bidi.c (bidi_cache_shrink): New function.
584 (bidi_init_it): Call it.
585 (bidi_cache_iterator_state): Enlarge the cache if needed.
586
587 * bidi.c (bidi_move_to_visually_next): Rename from
588 bidi_get_next_char_visually. All callers changed.
589
5902010-05-14 Kenichi Handa <handa@m17n.org>
591
592 * dispextern.h (struct composition_it): New member reversed_p.
593
594 * composite.c (composition_compute_stop_pos): Search backward if
595 ENDPOS < CHARPOS.
596 (composition_reseat_it): Handle the case that ENDPOS < CHARPOS.
597 Set CMP_IT->reversed_p.
598 (composition_update_it): Pay attention to CMP_IT->reversed_p.
599
600 * xdisp.c (set_iterator_to_next):
601 Call composition_compute_stop_pos with negative ENDPOS if we are
602 scanning backward. Call composition_compute_stop_pos if scan
603 direction is changed.
604 (next_element_from_buffer): Call composition_compute_stop_pos with
605 negative ENDPOS if we are scanning backward.
606 (next_element_from_composition): Pay attention to
607 IT->cmp_it.reversed_p.
608
6092010-05-14 Kenichi Handa <handa@m17n.org>
610
611 * font.c (font_range): Return the range for the font found at first.
612
6132010-05-14 Glenn Morris <rgm@gnu.org>
614
615 * Makefile.in (ns_appdir, ns_appbindir, ns_appsrc): Always define.
616
617 * Makefile.in (mktime, X11, register): Move undefs to configure.
618
619 * Makefile.in (MSDOS_OBJ): Default to empty, let msdos scripts set it.
620 (MSDOS_X_OBJ): New variable.
621 (MSDOS_SUPPORT_REAL): New constant.
622 (MSDOS_SUPPORT): Set as a variable, not with cpp.
623 (obj): Use MSDOS_X_OBJ.
624 (lisp): Use MSDOS_SUPPORT as a variable.
625
626 * Makefile.in (REAL_MOUSE_SUPPORT): New constant.
627 (GPM_MOUSE_SUPPORT): Now it's a constant.
628 (MOUSE_SUPPORT, TOOLTIP_SUPPORT, WINDOW_SUPPORT): Set with configure,
629 not cpp.
630
631 * Makefile.in (@NS_IMPL_GNUSTEP_INC@): Use in place of #ifdef.
632 (ns_appresdir): Remove, unused.
633
634 * Makefile.in (SHELL): Move outside cpp section.
635
636 * s/netbsd.h (AMPERSAND_FULL_NAME): Remove (defined in AH_BOTTOM).
637
6382010-05-13 Glenn Morris <rgm@gnu.org>
639
640 * Makefile.in (FONT_DRIVERS): Place with other HAVE_X_WINDOWS stuff.
641 (TOOLTIP_SUPPORT): Place with other HAVE_WINDOW_SYSTEM stuff.
642
643 * Makefile.in (FONT_DRIVERS): If HAVE_X_WINDOWS is defined,
644 HAVE_WINDOW_SYSTEM must be too.
645
646 * Makefile.in (WINNT_SUPPORT): Remove, nt build does not use this file.
647 (lisp): Remove WINNT_SUPPORT.
648
649 * Makefile.in (OLDXMENU, LIBXMENU) [!HAVE_MENUS]:
650 Let configure set these variables (to empty) in this case as well.
651
652 * Makefile.in (LD_SWITCH_X_SITE): Define as a variable, not via cpp.
653 (LIBX_BASE): Use $LD_SWITCH_X_SITE.
654
655 * Makefile.in (C_SWITCH_X_SYSTEM, C_SWITCH_X_SITE, LIB_STANDARD)
656 (LIB_MATH, FONTCONFIG_CFLAGS, FONTCONFIG_LIBS, FREETYPE_CFLAGS)
657 (FREETYPE_LIBS, LIBOTF_CFLAGS, LIBOTF_LIBS, M17N_FLT_CFLAGS)
658 (M17N_FLT_LIBS, GNU_OBJC_CFLAGS, GNUSTEP_SYSTEM_LIBRARIES, LIBGPM)
659 (LIBRESOLV, UNEXEC_OBJ): For clarity, define variables to hold
660 the values output by configure.
661 (ALL_CFLAGS, obj, LIBES, temacs${EXEEXT}): Use the above variables.
662
6632010-05-12 Glenn Morris <rgm@gnu.org>
664
665 * Makefile.in (YMF_PASS_LDFLAGS, LD, LINKER): Simplify the logic.
666 (LINKER_WAS_SPECIFIED): Remove.
667
668 * Makefile.in (LIB_GCC): Set using configure, not cpp.
669 (GNULIB_VAR) [!ORDINARY_LINK]: Always set to $LIB_GCC.
670 * m/arm.h (LIB_GCC) [GNU_LINUX]:
671 * s/cygwin.h (LIB_GCC):
672 * s/freebsd.h (LIB_GCC):
673 * s/gnu-linux.h (LIB_GCC):
674 * s/msdos.h (LIB_GCC):
675 * s/netbsd.h (LIB_GCC):
676 Move to configure.
677
6782010-05-11 Karel Klic <kklic@redhat.com>
679
680 * ftfont.c: Fix incorrect parentheses of #if condition for
681 definining M17N_FLT_USE_NEW_FEATURE.
682
6832010-05-11 Glenn Morris <rgm@gnu.org>
684
685 * Makefile.in (LIBS_SYSTEM) [MSDOS]: Do not reset.
686 * s/msdos.h (MSDOS_LIBS_SYSTEM): Remove.
687
6882010-05-10 Eli Zaretskii <eliz@gnu.org>
689
690 * xdisp.c (init_iterator): Don't turn on bidi reordering in
691 unibyte buffers. See
692 http://lists.gnu.org/archive/html/emacs-devel/2010-05/msg00263.html.
693
6942010-05-10 Glenn Morris <rgm@gnu.org>
695
696 * Makefile.in (LIBS_SYSTEM): Set using configure, not cpp.
697 (LIBS_SYSTEM) [MSDOS]: Reset with MSDOS_LIBS_SYSTEM.
698 (LIBES): Use LIBS_SYSTEM as a variable.
699 * s/msdos.h (LIBS_SYSTEM): Rename to MSDOS_LIBS_SYSTEM. Always define.
700 * s/aix4-2.h (LIBS_SYSTEM):
701 * s/freebsd.h (LIBS_SYSTEM):
702 * s/hpux10-20.h (LIBS_SYSTEM):
703 * s/sol2-6.h (LIBS_SYSTEM):
704 * s/unixware.h (LIBS_SYSTEM):
705 Move to configure.
706
707 * s/aix4-2.h (MAIL_USE_LOCKF):
708 * s/bsd-common.h (MAIL_USE_FLOCK):
709 * s/darwin.h (MAIL_USE_FLOCK):
710 * s/gnu-linux.h (MAIL_USE_FLOCK):
711 * s/irix6-5.h (MAIL_USE_FLOCK):
712 * s/template.h (MAIL_USE_FLOCK):
713 Move to configure.
714
7152010-05-08 Chong Yidong <cyd@stupidchicken.com>
716
717 * Version 23.2 released.
718
7192010-05-08 Andreas Schwab <schwab@linux-m68k.org>
720
721 * composite.c (autocmp_chars): Save point as marker before calling
722 auto-composition-function (Bug#5984).
723
724 * lisp.h (restore_point_unwind): Add prototype.
725
726 * fileio.c (restore_point_unwind): Remove static attribute.
727
7282010-05-08 Kenichi Handa <handa@m17n.org>
729
730 * ftfont.c (M17N_FLT_USE_NEW_FEATURE): Define it if we can use the
731 new feature of libotf and m17n-flt.
732 (ftfont_check_otf) [M17N_FLT_USE_NEW_FEATURE]:
733 Call OTF_check_features even if no specific feature is given.
734 (PACK_OTF_TAG) [M17N_FLT_USE_NEW_FEATURE]: New macro.
735 (ftfont_drive_otf) [M17N_FLT_USE_NEW_FEATURE]: Handle the case
736 that OUT is NULL. Use OTF_drive_gsub_with_log and
737 OTF_drive_gpos_with_log instead of OTF_drive_gsub and
738 OTF_drive_gpos.
739 (ftfont_try_otf) [M17N_FLT_USE_NEW_FEATURE]: New function.
740 (ftfont_shape_by_flt) [M17N_FLT_USE_NEW_FEATURE]:
741 Setup mflt_enable_new_feature and mflt_try_otf.
742
7432010-05-08 Jan Djärv <jan.h.d@swipnet.se>
744
745 * xsettings.c (Ftool_bar_get_system_style): Correct comment.
746
747 * gtkutil.c (xg_pack_tool_bar): Change show_all to show for handle
748 box and toolbar (Bug #6139).
749 (xg_create_tool_bar): Remove comment (Bug #6139).
750 (xg_make_tool_item): Remove gtk_widget_show_all (Bug #6139).
751 (xg_show_toolbar_item): Add gtk_widget_show for weventbox (Bug #6139).
752
7532010-05-08 Juanma Barranquero <lekktu@gmail.com>
754
755 * makefile.w32-in ($(BLD)/eval.$(O), $(BLD)/w32fns.$(O)):
756 Update dependencies.
757
7582010-05-08 Eli Zaretskii <eliz@gnu.org>
759
760 * fringe.c (update_window_fringes): Set up truncation bitmaps for
761 R2L lines.
762
7632010-05-08 Glenn Morris <rgm@gnu.org>
764
765 * Makefile.in (THIS_IS_MAKEFILE): Remove, unused.
766
767 * Makefile.in (LIBS_TERMCAP): Set with configure, not cpp.
768 (TERMCAP_OBJ): New, set by configure, replacing termcapobj.
769 (termcapobj): Replace with TERMCAP_OBJ.
770 (otherobj): Use $TERMCAP_OBJ instead of $termcapobj.
771 (LIBES): Use LIBS_TERMCAP as a variable.
772
773 * s/freebsd.h (osreldate.h): No longer include, since this file
774 does not use __FreeBSD_version any more.
775
776 * s/aix4-2.h (TERMINFO):
777 * s/cygwin.h (TERMINFO):
778 * s/darwin.h (TERMINFO, LIBS_TERMCAP) [HAVE_LIBNCURSES]:
779 * s/freebsd.h (TERMINFO, LIBS_TERMCAP):
780 * s/gnu-linux.h (TERMINFO, LIBS_TERMCAP) [HAVE_LIBNCURSES]:
781 * s/gnu.h (TERMINFO, LIBS_TERMCAP) [HAVE_LIBNCURSES]:
782 * s/hpux10-20.h (TERMINFO, LIBS_TERMCAP):
783 * s/irix6-5.h (TERMINFO):
784 * s/netbsd.h (LIBS_TERMCAP):
785 * s/openbsd.h (TERMINFO, LIBS_TERMCAP):
786 * s/sol2-6.h (LIBS_TERMCAP) [!TERMINFO]:
787 * s/usg5-4.h (TERMINFO):
788 Move to configure.
789
7902010-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
791
792 * eval.c (unbind_to): Don't unbind a local binding into the global
793 binding when the local binding disappeared. Inversely, don't unbind
794 a global binding into a newly created local binding.
795 * data.c (set_internal): Make its `buf' arg into a `where' arg so we
796 can specify the frame to use, when applicable. Adjust callers.
797
7982010-05-07 Vincent Belaïche <vincent.belaiche@gmail.com>
799 Stefan Monnier <monnier@iro.umontreal.ca>
800
801 * floatfns.c (Fisnan, Fcopysign, Ffrexp, Fldexp): New functions.
802
8032010-05-07 Eli Zaretskii <eliz@gnu.org>
804
805 * w32fns.c: Include w32.h.
806 (Fw32_shell_execute): Decode the error message before passing it
807 to `error'. (Bug#6126)
808
809 * msdos.c (dos_set_window_size):
810 * w16select.c (Fx_selection_exists_p): Use `Fsymbol_value (foo)'
811 instead of `XSYMBOL (foo)->value'.
812
8132010-05-07 Eli Zaretskii <eliz@gnu.org>
814
815 Fix the MS-DOS build, broken by autoconfiscation.
816
817 * Makefile.in: Don't use Make-style comments past the "start of
818 cpp stuff" line.
819 (MSDOS_OBJ): Remove xmenu.o (it is now defined by XMENU_OBJ).
820
821 * s/msdos.h (UNEXEC): Don't define (@unexec@ in Makefile.in is
822 edited directly by msdos/sed1v2.inp).
823
8242010-05-07 Glenn Morris <rgm@gnu.org>
825
826 * Makefile.in (LD_SWITCH_SYSTEM): Set with configure, not cpp.
827 (LD_SWITCH_SYSTEM_EXTRA): New variable, set by configure.
828 (TEMACS_LDFLAGS): Use $LD_SWITCH_SYSTEM and $LD_SWITCH_SYSTEM_EXTRA,
829 move out of cpp section.
830 * s/freebsd.h (LD_SWITCH_SYSTEM):
831 * s/gnu-linux.h (LD_SWITCH_SYSTEM):
832 * s/netbsd.h (LD_SWITCH_SYSTEM):
833 * s/openbsd.h (LD_SWITCH_SYSTEM): Move to configure.in.
834
8352010-05-07 Dan Nicolaescu <dann@ics.uci.edu>
836
837 Define LIB_STANDARD and START_FILES using autoconf.
838 * s/usg5-4.h (LIB_STANDARD):
839 * s/netbsd.h (START_FILES):
840 * s/irix6-5.h (LIB_STANDARD):
841 * s/hpux10-20.h (LIB_STANDARD, START_FILES):
842 * s/gnu-linux.h (START_FILES, LIB_STANDARD):
843 * s/freebsd.h (START_FILES):
844 * s/darwin.h (START_FILES):
845 * s/cygwin.h (START_FILES):
846 * s/aix4-2.h (LIB_STANDARD):
847 * m/ibmrs6000.h (START_FILES): Remove, move logic to configure.in.
848 * Makefile.in (STARTFILES): Rename to START_FILES, define using
849 autoconf, not cpp.
850
8512010-05-06 Dan Nicolaescu <dann@ics.uci.edu>
852
853 Remove NEED_BSDTTY and NEED_UNISTD_H.
854 * s/hpux10-20.h (NEED_BSDTTY): Remove.
855 * s/aix4-2.h (NEED_UNISTD_H): Remove.
856 * systty.h: Simplify conditionals for including <sys/bsdtty.h>,
857 <sys/ptyio.h> and <unistd.h>.
858
859 * emacs.c (main): Remove NO_DIR_LIBRARY conditional, unused.
860
861 * Makefile.in (STARTFILES): Conditionally define to make the usage clear.
862 * s/gnu.h (START_FILES): Remove empty definition.
863
8642010-05-06 Jan Djärv <jan.h.d@swipnet.se>
865
866 * xterm.c (x_draw_image_relief): Move declaration of extra to beginning.
867
8682010-05-06 Glenn Morris <rgm@gnu.org>
869
870 * Makefile.in (CPP, LN_S): Remove unused variables.
871
8722010-05-05 Stefan Monnier <monnier@iro.umontreal.ca>
873
874 * syntax.c (Fchar_syntax): Check the arg is a character (bug#6080).
875
8762010-05-05 Lawrence Mitchell <wence@gmx.li>
877
878 * m/sparc.h: Fix typo in earlier change.
879
8802010-05-04 Stefan Monnier <monnier@iro.umontreal.ca>
881
882 Misc tweaks.
883 * eval.c (Fdefvaralias): Remove unintended nested if.
884 (internal_condition_case_2, internal_condition_case_n): Use ANSI type.
885
8862010-05-04 Bernhard Herzog <bh@intevation.de> (tiny change)
887
888 * xsmfns.c (smc_save_yourself_CB): strlen(client_id) => strlen(cwd).
889
8902010-05-04 Dan Nicolaescu <dann@ics.uci.edu>
891
892 Remove BSD_PGRPS.
893 * s/bsd-common.h (BSD_PGRPS): Remove undef.
894 * s/gnu-linux.h (BSD_PGRPS): Remove.
895 * term.c (dissociate_if_controlling_tty):
896 * sysdep.c (narrow_foreground_group, widen_foreground_group)
897 (init_sys_modes, reset_sys_modes):
898 * emacs.c (main):
899 * callproc.c (Fcall_process, child_setup): Remove code depending
900 on BSD_PGRPS.
901
902 Remove POSIX_SIGNALS.
903 * s/usg5-4.h (POSIX_SIGNALS):
904 * s/netbsd.h (POSIX_SIGNALS):
905 * s/msdos.h (POSIX_SIGNALS):
906 * s/ms-w32.h (POSIX_SIGNALS):
907 * s/hpux11.h (POSIX_SIGNALS):
908 * s/gnu.h (POSIX_SIGNALS):
909 * s/gnu-linux.h (POSIX_SIGNALS):
910 * s/freebsd.h (POSIX_SIGNALS):
911 * s/darwin.h (POSIX_SIGNALS):
912 * s/cygwin.h (POSIX_SIGNALS):
913 * s/aix4-2.h (POSIX_SIGNALS): Remove definition.
914 * s/unixware.h:
915 * s/sol2-6.h: Remove comments on POSIX_SIGNALS.
916 * process.c (create_process):
917 * syssignal.h:
918 * sysdep.c (wait_for_termination, init_signals):
919 * process.c (create_process):
920 * msdos.c: POSIX_SIGNALS is always defined on all platforms,
921 remove all code that assumes the contrary.
922
9232010-05-04 Glenn Morris <rgm@gnu.org>
924
925 * s/gnu-linux.h (LD_SWITCH_SYSTEM): Use LD_SWITCH_X_SITE_AUX as a shell
926 variable.
927 * s/netbsd.h (LD_SWITCH_SYSTEM_tmp): Remove.
928 (LD_SWITCH_SYSTEM): Use $LD_SWITCH_X_SITE_AUX_RPATH.
929 * s/openbsd.h (LD_SWITCH_SYSTEM_tmp): Remove.
930 (LD_SWITCH_SYSTEM): Use $LD_SWITCH_X_SITE_AUX_RPATH instead of
931 LD_SWITCH_SYSTEM_tmp.
932 * Makefile.in (LD_SWITCH_X_SITE_AUX, LD_SWITCH_X_SITE_AUX_RPATH):
933 New variables, set by configure.
934
935 * s/aix4-2.h (LD_SWITCH_SYSTEM_TEMACS): Move to configure.in.
936 * s/darwin.h (HEADERPAD_EXTRA, LIBS_NSGUI): Remove.
937 (LD_SWITCH_SYSTEM_TEMACS): Move to configure.in.
938 * Makefile.in (LD_SWITCH_SYSTEM_TEMACS): New variable, set by configure.
939 (TEMACS_LDFLAGS): Use $LD_SWITCH_SYSTEM_TEMACS.
940
941 * s/aix4-2.h (C_SWITCH_SYSTEM):
942 * m/alpha.h (C_SWITCH_MACHINE):
943 Move to configure.in.
944 * Makefile.in (C_SWITCH_MACHINE, C_SWITCH_SYSTEM):
945 New variables, set by configure.
946 (ALL_CFLAGS): Use $C_SWITCH_MACHINE and $C_SWITCH_SYSTEM in place of
947 $c_switch_machine and $c_switch_system.
948
9492010-05-04 Dan Nicolaescu <dann@ics.uci.edu>
950
951 * s/hpux10-20.h (LIB_STANDARD): New definition.
952 * Makefile.in (ORDINARY_LINK): Remove setting LIB_STANDARD based
953 on it, not used anymore.
954
9552010-05-03 Chong Yidong <cyd@stupidchicken.com>
956
957 * eval.c (internal_condition_case_n): Rename from
958 internal_condition_case_2.
959 (internal_condition_case_2): New function.
960
961 * xdisp.c (safe_call): Use internal_condition_case_n.
962
963 * fileio.c (Fdelete_file, internal_delete_file): New arg FORCE.
964 (internal_delete_file, Frename_file): Callers changed.
965
966 * buffer.c (Fkill_buffer):
967 * callproc.c (delete_temp_file): Callers changed (Bug#6070).
968
969 * lisp.h: Update prototypes.
970
9712010-05-03 Glenn Morris <rgm@gnu.org>
972
973 * Makefile.in (LIBX_EXTRA, LIBX_BASE): New variables.
974 (LIBXT_OTHER, LIBX_OTHER): New, set by configure.
975 (LIBXT): Set with configure, not cpp.
976 (LIBX): Remove.
977 (LIBES): Replace $LIBX with $LIBX_BASE and $LIBX_OTHER.
978
9792010-05-02 Dan Nicolaescu <dann@ics.uci.edu>
980
981 * m/amdx86-64.h (START_FILES, LIB_STANDARD): Remove.
982 The FreeBSD is not needed, the default works, Solaris version is
983 not needed, and the remaining case is not supported by configure.
984
9852010-05-02 Jan Djärv <jan.h.d@swipnet.se>
986
987 * xsmfns.c (CHDIR_OPT): New define.
988 (smc_save_yourself_CB): Add CHDIR_OPT to options to use when
989 restarting emacs.
990
991 * xterm.c (x_connection_closed): Call Fkill_emacs instead of
992 shut_down_emacs.
993
994 * emacs.c (USAGE1): Mention --chdir.
995 (main): Handle --chdir.
996 (standard_args): Add --chdir.
997 (fatal_error_signal): Call Fkill_emacs for SIGTERM and SIGHUP (Bug
998 #5552).
999
10002010-05-01 Dan Nicolaescu <dann@ics.uci.edu>
1001
1002 Remove LD_SWITCH_MACHINE.
1003 * Makefile.in (LD_SWITCH_MACHINE): Remove definition, unused.
1004 (TEMACS_LDFLAGS): Do not use LD_SWITCH_MACHINE.
1005
1006 Clean up IRIX code.
1007 * m/iris4d.h (TERMINFO, FIRST_PTY_LETTER): Move definitions ...
1008 * s/irix6-5.h (TERMINFO, FIRST_PTY_LETTER): ... here.
1009
1010 Clean up AIX code.
1011 * m/ibmrs6000.inp: Remove file, unused.
1012 * m/ibmrs6000.h (IBMR2AIX): Remove, unused.
1013 (LD_SWITCH_MACHINE): Rename to LD_SWITCH_SYSTEM_TEMACS, and move
1014 definition ...
1015 * s/aix4-2.h (LD_SWITCH_SYSTEM_TEMACS): ... here.
1016
1017 * sysdep.c (child_setup_tty, init_sys_modes): Remove !IBMR2AIX code,
1018 unused.
1019
10202010-05-01 Eli Zaretskii <eliz@gnu.org>
1021
1022 Emulate POSIX_SIGNALS on MS-Windows.
1023
1024 * s/ms-w32.h (POSIX_SIGNALS, struct sigaction, SIG_BLOCK)
1025 (SIG_SETMASK, SIG_UNBLOCK): Define.
1026
1027 * sysdep.c (sys_signal) [WINDOWSNT]: #ifdef away.
1028 (wait_for_termination) [WINDOWSNT]: Move MS-Windows specific code
1029 from non-POSIX_SIGNALS section to POSIX_SIGNALS section.
1030
1031 * w32.c (sigemptyset, sigaddset, sigfillset, sigprocmask):
1032 New stubs.
1033
1034 Miscellaneous fixes of bidi display.
1035
1036 * xdisp.c (find_row_end): New function, refactored from display_line.
1037 (display_line): Use it.
1038 (extend_face_to_end_of_line): In almost-filled rows, extend only
1039 if the row is R2L and not continued.
1040 (display_line): Fix prepending of truncation glyphs to R2L rows.
1041 Preserve overlay and string info in row->end.
1042 (insert_left_trunc_glyphs): Support addition of left truncation
1043 glyphs to R2L rows.
1044 (set_cursor_from_row): Don't place cursor on the vertical border
1045 glyph between adjacent windows. Fix a crash when a display string
1046 is continued to the next line. Don't return zero if cursor was
1047 found by `cursor' property of a display string.
1048 (try_cursor_movement): Don't assume that row->end == (row+1)->start,
1049 test for that explicitly.
1050
10512010-05-01 Glenn Morris <rgm@gnu.org>
1052
1053 * Makefile.in (gmallocobj, rallocobj, vmlimitobj): Initialize to null,
1054 for clarity.
1055 (OTHER_OBJ): Remove.
1056 (PRE_ALLOC_OBJ, POST_ALLOC_OBJ): New, set by configure.
1057 (otherobj): Use PRE_ALLOC_OBJ, POST_ALLOC_OBJ rather than OTHER_OBJ.
1058
10592010-05-01 Karel Klíč <kklic@redhat.com>
1060
1061 * fileio.c (Ffile_selinux_context): Context functions may return null.
1062
10632010-04-30 Dan Nicolaescu <dann@ics.uci.edu>
1064
1065 * s/gnu.h (POSIX_SIGNALS, START_FILES): New definitions.
1066
10672010-04-30 Glenn Morris <rgm@gnu.org>
1068
1069 * Makefile.in (vmlimitobj) [!SYSTEM_MALLOC]: New variable. (Bug#6065)
1070 (OTHER_OBJ): Define as a separate variable, for clarity.
1071
10722010-04-30 Jan Djärv <jan.h.d@swipnet.se>
1073
1074 * xsettings.c: include limits.h and update file comment.
1075
10762010-04-30 Glenn Morris <rgm@gnu.org>
1077
1078 * Makefile.in (OLDXMENU, LIBXMENU) [HAVE_MENUS]:
1079 Set with configure, not cpp.
1080 (LIBW): Remove, replace with $TOOLKIT_LIBW.
1081
1082 * Makefile.in (mallocobj): Remove.
1083 (otherobj): Simplify using @OTHER_OBJ@.
1084
1085 * Makefile.in (dispnew.o, frame.o, fringe.o, font.o, fontset.o)
1086 (keyboard.o, window.o, xdisp.o, xfaces.o, menu.o):
1087 Don't bother making nsgui.h dependency platform-specific.
1088
1089 * Makefile.in (nsfns.o): Remove duplicate nsgui.h dependency.
1090
10912010-04-29 Stefan Monnier <monnier@iro.umontreal.ca>
1092
1093 * process.c (read_process_output, exec_sentinel): Don't burp if the
1094 sentinel/filter kills the current buffer (bug#6060).
1095
1096 Fix wrong-docstring problem introduced with hash-consing. (Bug#6008)
1097 * eval.c (Fautoload): Set doc to a unique number rather than to 0.
1098 Remove unused var `args'.
1099 * lisp.h (XSETCARFASTINT, XSETCDRFASTINT): Remove.
1100 (LOADHIST_ATTACH): Wrap with do...while to avoid surprises for callers.
1101 * doc.c (store_function_docstring): Use XSETCAR.
1102
11032010-04-28 Glenn Morris <rgm@gnu.org>
1104
1105 * Makefile.in (BASE_WINDOW_SUPPORT, X_WINDOW_SUPPORT): New variables.
1106 (WINDOW_SUPPORT) [HAVE_WINDOW_SYSTEM]: Use them.
1107
1108 * Makefile.in (CYGWIN_OBJ): Set with configure, not cpp.
1109
1110 * Makefile.in (GPM_MOUSE_SUPPORT): New, set by configure.
1111 (MOUSE_SUPPORT) [!HAVE_MOUSE]: Use $GPM_MOUSE_SUPPORT.
1112
1113 * Makefile.in (FONT_OBJ): New, set by configure.
1114 (FONT_DRIVERS): Use $FONT_OBJ.
1115
1116 * Makefile.in (LIBXMU): Set with configure, not cpp.
1117 * s/aix4-2.h (LIBXMU):
1118 * s/hpux10-20.h (LIBXMU):
1119 Remove definition, now set in configure.
1120
1121 * Makefile.in (NS_OBJ, NS_SUPPORT): Set with configure, not cpp.
1122
1123 * m/amdx86-64.h [i386]: Move this test to configure.in.
1124
11252010-04-27 Glenn Morris <rgm@gnu.org>
1126
1127 * Makefile.in (LIBXTR6): Set with configure, not cpp.
1128 * s/unixware.h (NEED_LIBW): Remove definition.
1129
1130 * Makefile.in (LUCID_LIBW, MOTIF_LIBW): Remove, replacing by...
1131 (TOOLKIT_LIBW): New, set by configure.
1132 (@X_TOOLKIT_TYPE@): No longer define it.
1133
1134 * Makefile.in (LIBXP): Remove, since included in MOTIF_LIBW.
1135 (MOTIF_LIBW): Set with configure, not cpp.
1136 * s/aix4-2.h (LIB_MOTIF):
1137 * s/gnu-linux.h (LIB_MOTIF):
1138 * s/unixware.h (LIB_MOTIF): Move to configure.in.
1139
11402010-04-27 Dan Nicolaescu <dann@ics.uci.edu>
1141
1142 Reduce CPP usage.
1143 * Makefile.in (LIB_X11_LIB): Remove, inline in the only user.
1144 (obj): Use autoconf for unexec instead of cpp.
1145 (C_SWITCH_SYSTEM, C_SWITCH_MACHINE, C_SWITCH_X_SITE): Remove
1146 definitions and undefs. Inline definitions in the only user.
1147 (ALL_CFLAGS): Substitute C_SWITCH_X_SYSTEM using autoconf.
1148
11492010-04-27 Glenn Morris <rgm@gnu.org>
1150
1151 * m/amdx86-64.h (START_FILES, LIB_STANDARD): Change the logic around,
1152 since the defaults (set by the system file) are fine in most cases.
1153 [GNU_LINUX, __OpenBSD__, __NetBSD__, __APPLE__]: Remove sections.
1154 * m/ibms390x.h (START_FILES, LIB_STANDARD):
1155 * m/macppc.h (START_FILES, LIB_STANDARD) [GNU_LINUX]:
1156 * m/sparc.h (START_FILES, LIB_STANDARD) [__linux__]:
1157 Remove definitions, since they are set correctly in s/gnu-linux.h.
1158 * s/freebsd.h (START_FILES, LIB_STANDARD):
1159 * s/gnu-linux.h (START_FILES, LIB_STANDARD):
1160 * s/hpux10-20.h (START_FILES):
1161 * s/netbsd.h (START_FILES, LIB_STANDARD, START_FILES_1, END_FILES_1):
1162 Use $CRT_DIR in place of fixed /usr/lib, /lib directories.
1163
1164 * Makefile.in (LIBXP, LUCID_LIBW, WIDGET_OBJ): Set via configure.
1165 (MOTIF_LIBW): Use $LIBXP.
1166 (otherobj): Use $WIDGET_OBJ.
1167
11682010-04-26 Dan Nicolaescu <dann@ics.uci.edu>
1169
1170 * Makefile.in (LIBS_MACHINE): Remove, unused.
1171
1172 Use autoconf instead of cpp for LIB_MATH.
1173 * s/darwin.h (LIB_MATH): Do not define here, move to configure.
1174 * s/cygwin.h (LIB_MATH): Likewise.
1175 * Makefile.in (LIB_MATH): Do not define with cpp.
1176 (LIBES): Use autoconf for LIB_MATH.
1177
11782010-04-26 Kenichi Handa <handa@m17n.org>
1179
1180 * composite.c (Ffind_composition_internal): Fix the return value
1181 for an automatic composition.
1182
11832010-04-25 Dan Nicolaescu <dann@ics.uci.edu>
1184
1185 Remove all NO_ARG_ARRAY uses.
1186 * fns.c (concat2, concat3, nconc2):
1187 * eval.c (apply1, call1, call2, call3, call4, call5, call6)
1188 (call7): Remove NO_ARG_ARRAY usage, assume it's always true.
1189 * m/xtensa.h (NO_ARG_ARRAY):
1190 * m/template.h (NO_ARG_ARRAY):
1191 * m/sparc.h (NO_ARG_ARRAY):
1192 * m/sh3.h (NO_ARG_ARRAY):
1193 * m/mips.h (NO_ARG_ARRAY):
1194 * m/macppc.h (NO_ARG_ARRAY):
1195 * m/iris4d.h (NO_ARG_ARRAY):
1196 * m/intel386.h (NO_ARG_ARRAY):
1197 * m/ibms390x.h (NO_ARG_ARRAY):
1198 * m/ibms390.h (NO_ARG_ARRAY):
1199 * m/ibmrs6000.h (NO_ARG_ARRAY):
1200 * m/ia64.h (NO_ARG_ARRAY):
1201 * m/hp800.h (NO_ARG_ARRAY):
1202 * m/arm.h (NO_ARG_ARRAY):
1203 * m/amdx86-64.h (NO_ARG_ARRAY):
1204 * m/alpha.h (NO_ARG_ARRAY): Remove definition.
1205
12062010-04-25 Eli Zaretskii <eliz@gnu.org>
1207
1208 * xdisp.c (display_line): Don't assume 2nd call to
1209 get_next_display_element cannot return zero. (Bug#6030)
1210 (iterate_out_of_display_property): New function, body from pop_it.
1211 (pop_it): Use it.
1212
12132010-04-24 Glenn Morris <rgm@gnu.org>
1214
1215 * m/amdx86-64.h (START_FILES, LIB_STANDARD) [__OpenBSD__]:
1216 For clarity, revert to using fixed /usr/lib rather than $CRT_DIR.
1217 (START_FILES, LIB_STANDARD) [__FreeBSD__]: Merge into the generic case,
1218 since CRT_DIR defaults to /usr/lib. Suggested by Dan Nicolaescu.
1219
12202010-04-24 Eli Zaretskii <eliz@gnu.org>
1221
1222 * xdisp.c (display_line): Use `reseat' instead of `reseat_1', and
1223 use `get_next_display_element' and `set_iterator_to_next' to
1224 advance to the next character, when looking for the character that
1225 begins the next row.
1226
1227 * .gdbinit: Add a "set Fmake_symbol" line to force GDB to load the
1228 definition of "struct Lisp_Symbol".
1229
12302010-04-24 Glenn Morris <rgm@gnu.org>
1231
1232 * Makefile.in (CRT_DIR): New variable, set by configure.
1233 * m/amdx86-64.h, m/ibms390x.h (START_FILES, LIB_STANDARD):
1234 Use $CRT_DIR rather than HAVE_LIB64_DIR. (Bug#5655)
1235
12362010-04-23 Dan Nicolaescu <dann@ics.uci.edu>
1237
1238 * Makefile.in: Remove C_SWITCH_X_MACHINE, unused.
1239
1240 * s/cygwin.h (LIBS_DEBUG): Remove, unused.
1241
1242 Remove redundant flags.
1243 * s/freebsd.h (C_SWITCH_SYSTEM):
1244 * s/hpux10-20.h (C_SWITCH_X_SYSTEM, LD_SWITCH_X_DEFAULT):
1245 * s/netbsd.h (C_SWITCH_SYSTEM):
1246 * s/openbsd.h (LD_SWITCH_X_DEFAULT): Remove, configure takes care
1247 of these.
1248
1249 Simplify m/intel386.h.
1250 * m/intel386.h (CRT0_DUMMIES): Remove, inline value in the only
1251 user: ecrt0.c.
1252 (SOLARIS2): Remove LOAD_AVE_TYPE, LOAD_AVE_CVT, LIBS_MACHINE, unused.
1253 (USG5_4): Move LOAD_AVE_TYPE, LOAD_AVE_CVT, FSCALE definitions to
1254 the only user: s/unixware.h.
1255 * ecrt0.c: Remove #ifndef static. Inline CRT0_DUMMIES definition
1256 from m/intel386.h.
1257 * s/unixware.h (LOAD_AVE_TYPE, LOAD_AVE_CVT, FSCALE): Definitions
1258 moved here from m/intel386.h.
1259
1260 * m/mips.h: Remove #if 0 code.
1261
12622010-04-23 Eli Zaretskii <eliz@gnu.org>
1263
1264 Fix display of composed characters from L2R scripts in bidi buffers.
1265 * xdisp.c (set_iterator_to_next, next_element_from_composition):
1266 After advancing IT past the composition, resync the bidi iterator
1267 with IT's position. (Bug#5977)
1268
12692010-04-23 Dan Nicolaescu <dann@ics.uci.edu>
1270
1271 * Makefile.in (LD_SWITCH_MACHINE_TEMACS): Remove, unused.
1272 (TEMACS_LDFLAGS): Don't use LD_SWITCH_SYSTEM_TEMACS.
1273
12742010-04-23 Stefan Monnier <monnier@iro.umontreal.ca>
1275
1276 * gtkutil.c: Include xsettings.h for Ftool_bar_get_system_style.
1277
12782010-04-23 Eli Zaretskii <eliz@gnu.org>
1279
1280 Support `display' text properties and overlay strings in bidi buffers.
1281 * xdisp.c (pop_it): When the stack is popped after displaying
1282 from a string, bidi-iterate to exit from the text portion covered
1283 by the `display' property or overlay. (Bug#5988, bug#5920)
1284
12852010-04-23 Dan Nicolaescu <dann@ics.uci.edu>
1286
1287 * m/macppc.h (LD_SWITCH_SYSTEM_TEMACS): Remove #undef.
1288 (LD_SWITCH_MACHINE_TEMACS): Remove, configure sets nocombreloc.
1289
1290 * s/netbsd.h (LD_SWITCH_SYSTEM_TEMACS): Remove, configure sets nocombreloc.
1291 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Remove.
1292
1293 Simplify STARTFILES definition.
1294 * s/hpux10-20.h (START_FILES): Explicitly define here instead of
1295 relying on Makefile.in to define it.
1296 * s/cygwin.h (START_FILES): Likewise.
1297 * Makefile.in (STARTFILES): Remove conditional code, not needed anymore.
1298
1299 Clean up Solaris code.
1300 * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS, C_SWITCH_X_SYSTEM)
1301 (LIB_MOTIF): Remove, configure takes care of this.
1302 (NOT_USING_MOTIF): Remove, unused.
1303 * xrdb.c: Remove #if 0-ed #include.
1304 (SYSV): Remove conditional for old SysV.
1305 * sysdep.c (closedir): Remove conditional code for Solaris,
1306 Solaris has closedir.
1307
13082010-04-22 Jan Djärv <jan.h.d@swipnet.se>
1309
1310 * xsettings.c (read_and_apply_settings): Check if current_font is
1311 NULL before strcmp (Bug#6001).
1312
13132010-04-21 Dan Nicolaescu <dann@ics.uci.edu>
1314
1315 Clean up HP-UX files.
1316 * m/hp800.h (NO_REMAP, VIRT_ADDR_VARIES, DATA_SEG_BITS)
1317 (DATA_START, TEXT_START, LOAD_AVE_TYPE, LOAD_AVE_CVT)
1318 (LDAV_SYMBOL, index, rindex): Move definitions only used in HP-UX ...
1319 * s/hpux10-20.h: ... to the only user, here.
1320
13212010-04-21 Eli Zaretskii <eliz@gnu.org>
1322
1323 * bidi.c (bidi_find_paragraph_start, bidi_at_paragraph_end): Don't
1324 use buffer-local values of paragraph-start and paragraph-separate.
1325 <paragraph_start_re, paragraph_separate_re>: Rename from
1326 fallback_paragraph_start_re and fallback_paragraph_separate_re.
1327 (Bug#5992)
1328
13292010-04-21 Jan Djärv <jan.h.d@swipnet.se>
1330
1331 * xsettings.c: Qmonospace_font_name, Qtool_bar_style and
1332 current_tool_bar_style are new.
1333 (store_config_changed_event): Rename from store_font_changed_event.
1334 (XSETTINGS_TOOL_BAR_STYLE): New define.
1335 (SEEN_FONT, SEEN_TB_STYLE): New enum values.
1336 (struct xsettings): Add font and tb_style, set xft stuff inside #ifdef
1337 HAVE_XFT.
1338 (something_changedCB): store_font_changed_event is now
1339 store_config_changed_event
1340 (parse_settings): Rename from parse_xft_settings. Read
1341 non-xft xsettings outside #ifdef HAVE_XFT.
1342 (read_settings): Renamed from read_xft_settings.
1343 (apply_xft_settings): Take current settings as parameter. Do not
1344 call read_(xft)_settings.
1345 (read_and_apply_settings): New function.
1346 (xft_settings_event): Do non-xft stuff out of HAVE_XFT. Call
1347 read_and_apply_settings if there are settings to be read.
1348 (init_xsettings): Renamed from init_xfd_settings.
1349 Call read_and_apply_settings unconditionally.
1350 (xsettings_initialize): Call init_xsettings.
1351 (Ftool_bar_get_system_style): New function.
1352 (syms_of_xsettings): Define Qmonospace_font_name and
1353 Qtool_bar_style. Initialize current_tool_bar_style to nil.
1354 defsubr Stool_bar_get_system_style. Fprovide on
1355 dynamic-setting.
1356 Move misplaced HAVE_GCONF
1357
1358 * xsettings.h (Ftool_bar_get_system_style): Declare.
1359
1360 * xdisp.c: Vtool_bar_style, tool_bar_max_label_size,
1361 Qtext, Qboth, Qboth_horiz are new.
1362 (syms_of_xdisp): Intern Qtext, Qboth, Qboth_horiz, DEFVAR
1363 Vtool_bar_style, tool_bar_max_label_size.
1364
1365 * lisp.h: Extern declare Qtext, Qboth, Qboth_horiz.
1366
1367 * keyboard.c: QClabel is new.
1368 (parse_tool_bar_item): Take out QClabel from tool bar items.
1369 Try to construct a label if ther is no QClabel.
1370 (syms_of_keyboard): Intern :label as QClabel.
1371
1372 * dispextern.h (tool_bar_item_idx): TOOL_BAR_ITEM_LABEL is new.
1373 (Vtool_bar_style, tool_bar_max_label_size, DEFAULT_TOOL_BAR_LABEL_SIZE):
1374 New.
1375
1376 * Makefile.in (SOME_MACHINE_LISP): font-setting.el renamed to
1377 dynamic-setting.el.
1378
1379 * gtkutil.c (xg_tool_bar_menu_proxy): Handle label in tool bar item.
1380 (xg_make_tool_item, xg_show_toolbar_item): New function.
1381 (update_frame_tool_bar): Take label from TOOL_BAR_ITEM_LABEL.
1382 Call xg_make_tool_item to make a tool bar item.
1383 Call xg_show_toolbar_item. Use wtoolbar instead of x->toolbar_widget.
1384
1385 * xterm.c (x_draw_image_relief): Take Vtool_bar_button_margin
1386 into account for toolbars.
1387
13882010-04-21 Jan Djärv <jan.h.d@swipnet.se>
1389
1390 * data.c (make_blv): Declarations before code (Bug#5993).
1391
13922010-04-21 Glenn Morris <rgm@gnu.org>
1393
1394 * Makefile.in (DBUS_OBJ, GTK_OBJ, XMENU_OBJ, XOBJ):
1395 Define using autoconf, not cpp.
1396 (LIBXSM): New variable, set by autoconf.
1397 (LIBXT): Use $LIBXSM.
1398
13992010-04-21 Dan Nicolaescu <local_user@dannlt>
1400
1401 Remove NOMULTIPLEJOBS, unused.
1402 * s/template.h (NOMULTIPLEJOBS):
1403 * s/msdos.h (NOMULTIPLEJOBS): Remove, unused.
1404
1405 Simplify LD_SWITCH_SYSTEM_TEMACS usage.
1406 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS):
1407 * s/gnu-linux.h (LD_SWITCH_SYSTEM_TEMACS): Remove, configure
1408 detects -znocombreloc and passes it to the linker
1409 * s/hpux10-20.h (LD_SWITCH_SYSTEM_TEMACS): Remove, empty.
1410
14112010-04-21 Glenn Morris <rgm@gnu.org>
1412
1413 * Makefile.in (LIBSELINUX_LIBS): Move out of #ifdef.
1414
14152010-04-21 Karel Klíč <kklic@redhat.com>
1416
1417 * Makefile.in (LIBSELINUX_LIBS): New.
1418 (LIBES): Add $LIBSELINUX_LIBS.
1419 * eval.c, lisp.h (call7): New function.
1420 * fileio.c [HAVE_LIBSELINUX]: Include selinux headers.
1421 (Ffile_selinux_context, Fset_file_selinux_context):
1422 New functions.
1423 (Fcopy_file): New parameter preserve-selinux-context.
1424 (Frename_file): Preserve selinux context when renaming by copy-file.
1425
14262010-04-21 Juanma Barranquero <lekktu@gmail.com>
1427 Eli Zaretskii <eliz@gnu.org>
1428
1429 Don't depend on cm.c or termcap.c on Windows, use stubs.
1430 * makefile.w32-in (OBJ1): Remove cm.$(O) and termcap.$(O).
1431 ($(BLD)/cm.$(O), $(BLD)/termcap.$(O)): Remove.
1432 * w32console.c (current_tty, cost): New vars; lifted from cm.c.
1433 (evalcost, cmputc, cmcheckmagic, cmcostinit, cmgoto, Wcm_clear)
1434 (sys_tputs, sys_tgetstr): New stubs.
1435 * s/ms-w32.h (chcheckmagic, cmcostinit, cmgoto, cmputc, Wcm_clear)
1436 (tputs, tgetstr): New; define to sys_*.
1437
14382010-04-20 Juanma Barranquero <lekktu@gmail.com>
1439
1440 * buffer.c (syms_of_buffer) <bidi-display-reordering>: Doc fix.
1441
14422010-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
1443
1444 * data.c (Fmake_variable_buffer_local, Fmake_local_variable):
1445 Just signal a warning rather than an error when inside a let.
1446 (Fmake_variable_frame_local): Add the same test.
1447
1448 * font.c (syms_of_font): Make the style table vars read-only.
1449
1450 * buffer.h (struct buffer): Remove unused var `direction_reversed'.
1451 * buffer.c (init_buffer_once, syms_of_buffer): Remove its initialization.
1452
1453 * bidi.c (bidi_initialize): Simplify fallback_paragraph_*_re init.
1454
14552010-04-20 Eli Zaretskii <eliz@gnu.org>
1456
1457 Fix R2L paragraph display on TTY.
1458
1459 * xdisp.c (unproduce_glyphs): New function.
1460 (display_line): Use it when produced glyphs are discarded from R2L
1461 glyph rows.
1462 (append_composite_glyph): In R2L rows, prepend the glyph rather
1463 than appending it.
1464
1465 * term.c (append_composite_glyph): In R2L rows, prepend the glyph
1466 rather than append it. Set up the resolved_level and bidi_type
1467 attributes of the appended glyph.
1468 (produce_special_glyphs): Mirror the backslash continuation
1469 character in R2L lines.
1470
1471 Implement display of R2L paragraphs in GUI sessions.
1472
1473 * xdisp.c [HAVE_WINDOW_SYSTEM]: Add prototype for
1474 append_stretch_glyph.
1475 (set_cursor_from_row) <cursor_x>: Remove unused variable. Fix
1476 off-by-one error in computing x at end of text in the row.
1477 (append_stretch_glyph): In reversed row, prepend the glyph rather
1478 than append it. Set resolved_level and bidi_type of the glyph.
1479 (extend_face_to_end_of_line): If the row is reversed, prepend a
1480 stretch glyph whose width is such that the rightmost glyph will be
1481 drawn at the right margin of the window. Fix off-by-one error on
1482 TTY frames in testing whether a line needs face extension. Fix
1483 face extension at ZV. If this is the last glyph row, use
1484 DEFAULT_FACE_ID, to avoid painting the rest of the window with the
1485 region face.
1486 (set_cursor_from_row, display_line): Use
1487 MATRIX_ROW_CONTINUATION_LINE_P instead of testing value of
1488 row->continuation_lines_width.
1489 (next_element_from_buffer): Don't call bidi_paragraph_init if we
1490 are at ZV. Fixes a crash when reseated to ZV by
1491 try_window_reusing_current_matrix.
1492 (display_and_set_cursor, erase_phys_cursor): Handle negative HPOS,
1493 which happens with R2L glyph rows. Fixes a crash when inserting a
1494 character at end of an R2L line.
1495 (set_cursor_from_row): Don't be fooled by truncated rows: don't
1496 treat them as having zero-width characters. Improve comments.
1497 Don't reverse pos_before and pos_after for reversed glyph rows.
1498 Set cursor.x to negative value when the cursor might be on the
1499 left fringe.
1500 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): For R2L lines, consider the
1501 left fringe, not the right one.
1502 (notice_overwritten_cursor, draw_phys_cursor_glyph)
1503 (erase_phys_cursor): For reversed cursor_row, support cursor on
1504 the left fringe.
1505
1506 * fringe.c (update_window_fringes): For R2L rows, swap the bitmaps
1507 of continuation indicators on the fringes.
1508 (draw_fringe_bitmap): For reversed glyph rows, allow cursor on the
1509 left fringe.
1510
1511 * w32term.c (w32_draw_window_cursor): For reversed glyph rows,
1512 draw cursor on the left fringe.
1513
1514 * xterm.c (x_draw_window_cursor): For reversed glyph rows, draw
1515 cursor on the left fringe.
1516
1517 * dispnew.c (update_text_area): Handle reversed desired rows when
1518 the cursor is on the left fringe.
1519 (set_window_cursor_after_update): Limit cursor's hpos by -1 from
1520 below, not by 0, for when the cursor is on the left fringe.
1521
15222010-04-20 Jan Djärv <jan.h.d@swipnet.se>
1523
1524 * gtkutil.c (xg_event_is_for_scrollbar): Check if grabbed
1525 widget is a scrollbar.
1526
15272010-04-20 Kenichi Handa <handa@m17n.org>
1528
1529 * charset.c (char_charset): Consider Vcharset_non_preferred_head
1530 only when the arg CHARSET_LIST is nil.
1531
15322010-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
1533
1534 Make variable forwarding explicit rather the using special values.
1535 Basically, this makes the structure of buffer-local values and object
1536 forwarding explicit in the type of Lisp_Symbols rather than use
1537 special Lisp_Objects for that. This tends to lead to slightly more
1538 verbose code, but is more C-like, simpler, and makes it easier to make
1539 sure we handled all cases, among other things by letting the compiler
1540 help us check it.
1541 * lisp.h (enum Lisp_Misc_Type, union Lisp_Misc):
1542 Removing forwarding objects.
1543 (enum Lisp_Fwd_Type, enum symbol_redirect, union Lisp_Fwd): New types.
1544 (struct Lisp_Symbol): Make the various forms of variable-forwarding
1545 explicit rather than hiding them inside Lisp_Object "values".
1546 (XFWDTYPE): New macro.
1547 (XINTFWD, XBOOLFWD, XOBJFWD, XKBOARD_OBJFWD): Redefine.
1548 (XBUFFER_LOCAL_VALUE): Remove.
1549 (SYMBOL_VAL, SYMBOL_ALIAS, SYMBOL_BLV, SYMBOL_FWD, SET_SYMBOL_VAL)
1550 (SET_SYMBOL_ALIAS, SET_SYMBOL_BLV, SET_SYMBOL_FWD): New macros.
1551 (SYMBOL_VALUE, SET_SYMBOL_VALUE): Remove.
1552 (struct Lisp_Intfwd, struct Lisp_Boolfwd, struct Lisp_Objfwd)
1553 (struct Lisp_Buffer_Objfwd, struct Lisp_Kboard_Objfwd):
1554 Remove the Lisp_Misc_* header.
1555 (struct Lisp_Buffer_Local_Value): Redefine.
1556 (BLV_FOUND, SET_BLV_FOUND, BLV_VALUE, SET_BLV_VALUE): New macros.
1557 (struct Lisp_Misc_Any): Add filler to get the right size.
1558 (struct Lisp_Free): Use struct Lisp_Misc_Any rather than struct
1559 Lisp_Intfwd.
1560 (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL, DEFVAR_INT)
1561 (DEFVAR_KBOARD): Allocate a forwarding object.
1562 * data.c (do_blv_forwarding, store_blv_forwarding): New macros.
1563 (let_shadows_global_binding_p): New function.
1564 (union Lisp_Val_Fwd): New type.
1565 (make_blv): New function.
1566 (swap_in_symval_forwarding, indirect_variable, do_symval_forwarding)
1567 (store_symval_forwarding, swap_in_global_binding, Fboundp)
1568 (swap_in_symval_forwarding, find_symbol_value, Fset)
1569 (let_shadows_buffer_binding_p, set_internal, default_value)
1570 (Fset_default, Fmake_variable_buffer_local, Fmake_local_variable)
1571 (Fkill_local_variable, Fmake_variable_frame_local)
1572 (Flocal_variable_p, Flocal_variable_if_set_p)
1573 (Fvariable_binding_locus):
1574 * xdisp.c (select_frame_for_redisplay):
1575 * lread.c (Fintern, Funintern, init_obarray, defvar_int)
1576 (defvar_bool, defvar_lisp_nopro, defvar_lisp, defvar_kboard):
1577 * frame.c (store_frame_param):
1578 * eval.c (Fdefvaralias, Fuser_variable_p, specbind, unbind_to):
1579 * bytecode.c (Fbyte_code) <varref, varset>: Adapt to the new symbol
1580 value structure.
1581 * buffer.c (PER_BUFFER_SYMBOL): Move from buffer.h.
1582 (clone_per_buffer_values): Only adjust markers into the current buffer.
1583 (reset_buffer_local_variables): PER_BUFFER_IDX is never -2.
1584 (Fbuffer_local_value, set_buffer_internal_1)
1585 (swap_out_buffer_local_variables):
1586 Adapt to the new symbol value structure.
1587 (DEFVAR_PER_BUFFER): Allocate a Lisp_Buffer_Objfwd object.
1588 (defvar_per_buffer): Take a new arg for the fwd object.
1589 (buffer_lisp_local_variables): Return a proper alist (different fix
1590 for bug#4138).
1591 * alloc.c (Fmake_symbol): Use SET_SYMBOL_VAL.
1592 (Fgarbage_collect): Don't handle buffer_defaults specially.
1593 (mark_object): Handle new symbol value structure rather than the old
1594 special Lisp_Misc_* objects.
1595 (gc_sweep) <symbols>: Free also the buffer-local-value objects.
1596 * term.c (set_tty_color_mode):
1597 * bidi.c (bidi_initialize): Don't access the ->value field directly.
1598 * buffer.h (PER_BUFFER_VAR_OFFSET): Don't bother with
1599 a buffer_local_flags.
1600 * print.c (print_object): Get rid of impossible forwarding objects.
1601
16022010-04-19 Eli Zaretskii <eliz@gnu.org>
1603
1604 * bidi.c (bidi_get_type, bidi_get_category)
1605 (bidi_at_paragraph_end, bidi_resolve_weak, bidi_resolve_neutral)
1606 (bidi_type_of_next_char, bidi_level_of_next_char):
1607 Declare static. Use `INLINE' rather than `inline'.
1608
16092010-04-19 Juanma Barranquero <lekktu@gmail.com>
1610
1611 * dired.c (Ffile_attributes): Fix typo in docstring.
1612
16132010-04-19 Adrian Robert <Adrian.B.Robert@gmail.com>
1614
1615 * nsmenu.m (EmacsDialog-runDialogAt:): Declare ret as
1616 NSInteger (Bug#5811).
1617
16182010-04-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1619
1620 * s/darwin.h (PTY_ITERATION, PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF)
1621 (PTY_OPEN): New defines. Use openpty (Bug#726, Bug#5819).
1622
16232010-04-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1624
1625 * frame.h (FRAME_LINE_TO_PIXEL_Y): Add missing parenthesis.
1626
16272010-04-19 Chong Yidong <cyd@stupidchicken.com>
1628
1629 * xdisp.c (prepare_menu_bars): Don't call ns_set_doc_edited for
1630 terminal frames (Bug#5837).
1631
16322010-04-19 Eli Zaretskii <eliz@gnu.org>
1633
1634 * .gdbinit (xsubchartable): New command.
1635
16362010-04-19 Eli Zaretskii <eliz@gnu.org>
1637
1638 * xdisp.c (display_line): Don't write beyond the last glyph row in
1639 the desired matrix. Fixes a crash in "emacs -nw" (bug#5972), see
1640 http://lists.gnu.org/archive/html/emacs-devel/2010-04/msg00075.html
1641 and
1642 http://lists.gnu.org/archive/html/emacs-devel/2010-04/msg00213.html
1643
16442010-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
1645
1646 * alloc.c (Fpurecopy): Hash-cons if requested.
1647 (syms_of_alloc): Update purify-flag docstring.
1648
16492010-04-18 Jan Djärv <jan.h.d@swipnet.se>
1650
1651 * gtkutil.c (xg_set_geometry): Set size in geometry string also.
1652 (x_wm_set_size_hint): Set USER_POS in hint_flags (Bug#5968).
1653
16542010-04-17 Eli Zaretskii <eliz@gnu.org>
1655
1656 Fix a crash when an NSM character is inserted at BEGV.
1657
1658 * bidi.c (bidi_init_it): Fix initialization of bidi_it->prev.
1659 (bidi_resolve_weak): Don't use prev.type_after_w1 if it is
1660 NEUTRAL_B or UNKNOWN_BT.
1661
16622010-04-16 Eli Zaretskii <eliz@gnu.org>
1663
1664 * xdisp.c (set_cursor_from_row): Don't consider possibility of
1665 other rows with cursor unless they are different from this row and
1666 this row is part of a continued line. (Bug#5943)
1667
16682010-04-16 Dan Nicolaescu <dann@ics.uci.edu>
1669
1670 * s/freebsd.h: Restore osreldate.h include.
1671 Suggested by Naohiro Aota.
1672
16732010-04-16 Jan Djärv <jan.h.d@swipnet.se>
1674
1675 * xmenu.c (apply_systemfont_to_menu): *childs was incorrectly used.
1676
16772010-04-16 Ken Brown <kbrown@cornell.edu> (tiny change)
1678
1679 * s/cygwin.h: Avoid linking against static libgcc.
1680
16812010-04-15 Juri Linkov <juri@jurta.org>
1682
1683 * window.c: Add Qscroll_command.
1684 Remove Vscroll_preserve_screen_position_commands.
1685 (window_scroll_pixel_based, window_scroll_line_based): Check the
1686 `scroll-command' property on the last command instead of searching
1687 the last command in Vscroll_preserve_screen_position_commands.
1688 (syms_of_window): Initialize and staticpro `Qscroll_command'.
1689 Put Qscroll_command property on Qscroll_up and Qscroll_down.
1690 (scroll-preserve-screen-position): Doc fix.
1691 (Vscroll_preserve_screen_position_commands): Remove variable.
1692
16932010-04-15 Dan Nicolaescu <dann@ics.uci.edu>
1694
1695 * xdisp.c (message): Do not use NO_ARG_ARRAY.
1696
16972010-04-14 Dan Nicolaescu <dann@ics.uci.edu>
1698
1699 Reduce cpp use in Makefile.in.
1700 * Makefile.in (DBUS_CFLAGS, DBUS_LIBS, GCONF_CFLAGS, GCONF_LIBS)
1701 (LIBSOUND, CFLAGS_SOUND, RSVG_LIBS, RSVG_CFLAGS, INTERVALS_H)
1702 (GETLOADAVG_LIBS, RUN_TEMACS): Move to the autoconf section.
1703 (ORDINARY_LINK): Remove, defined in src/s/gnu.h.
1704 (CRT0_COMPILE): Remove, inline it in the only user.
1705
17062010-04-14 Juri Linkov <juri@jurta.org>
1707
1708 * window.c (keys_of_window): Rebind `C-v' from `scroll-up' to
1709 `scroll-up-command' and `M-v' from `scroll-down' to
1710 `scroll-down-command'.
1711
17122010-04-14 Juri Linkov <juri@jurta.org>
1713
1714 * window.c (Vscroll_preserve_screen_position_commands): New variable
1715 with the default value as the list of Qscroll_down and Qscroll_up.
1716 (window_scroll_pixel_based, window_scroll_line_based): Search the
1717 last command in the list Vscroll_preserve_screen_position_commands
1718 instead of comparing with Qscroll_up and Qscroll_down.
1719
17202010-04-13 Jan Djärv <jan.h.d@swipnet.se>
1721
1722 * gtkutil.c (xg_set_geometry): Set geometry for PPosition also.
1723 (x_wm_set_size_hint): Dont set position flags, gtk_window_parse_geometry
1724 does that.
1725
1726 * xfns.c (Fx_create_frame, x_create_tip_frame): Set default border width
1727 to zero.
1728
17292010-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
1730
1731 * term.c (init_tty): Move common text outside of #ifdef TERMINFO.
1732
1733 Try to solve the problem of spurious EOF chars in long lines of text
1734 sent to interactive subprocesses.
1735 * sysdep.c (child_setup_tty): Do not enable ICANON any more.
1736 (system_process_attributes): Remove unused var `ttotal'.
1737 * process.c (send_process): Don't bother breaking long line with EOF
1738 chars when talking to ttys any more.
1739 (wait_reading_process_output): Output a warning when called in such
1740 a way that it could block without being interruptible.
1741
1742 Try to detect file modification within the same second.
1743 * buffer.h (struct buffer): New field modtime_size.
1744 * buffer.c (reset_buffer): Initialize it.
1745 * fileio.c (Finsert_file_contents, Fwrite_region): Set it.
1746 (Fverify_visited_file_modtime): Check it.
1747 (Fclear_visited_file_modtime, Fset_visited_file_modtime): Clear it.
1748 (Fset_visited_file_modtime): Set (or clear) it.
1749
17502010-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
1751
1752 * process.c (status_notify): Remove unused var `ro'.
1753
17542010-04-12 Jan Djärv <jan.h.d@swipnet.se>
1755
1756 * xfns.c (select_visual): Don't call error if XGetVisualInfo returns
1757 more than one visual (Bug#5938).
1758
17592010-04-12 Dan Nicolaescu <dann@ics.uci.edu>
1760
1761 * Makefile.in (C_SWITCH_SYSTEM,C_SWITCH_MACHINE,C_SWITCH_X_SITE):
1762 Undefine.
1763
17642010-04-11 Dan Nicolaescu <dann@ics.uci.edu>
1765
1766 Remove C_SWITCH_SYSTEM_TEMACS.
1767 * s/darwin.h (C_SWITCH_SYSTEM_TEMACS): Remove.
1768 (malloc, realloc, free): Use emacs, not temacs for conditional
1769 definition.
1770
1771 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Remove.
1772 (ALL_CFLAGS): Do not use C_SWITCH_SYSTEM_TEMACS.
1773
1774 Use autoconf, not cpp for some variables.
1775 * Makefile.in (C_SWITCH_SYSTEM, C_SWITCH_MACHINE)
1776 (C_SWITCH_X_SITE): Define using autoconf, not cpp.
1777 (ALL_CFLAGS): Use them as make variables.
1778 (really-lwlib, really-oldXMenu): Do not pass them.
1779
17802010-04-11 Jan Djärv <jan.h.d@swipnet.se>
1781
1782 * xmenu.c (apply_systemfont_to_dialog): New.
1783 (create_and_show_dialog): Call apply_systemfont_to_dialog if HAVE_XFT.
1784
17852010-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
1786
1787 * process.c (exec_sentinel): Preserve current-buffer.
1788
1789 * process.c (read_process_output): Move the save-current-buffer to
1790 apply to both the filter and the non-filter branches.
1791
17922010-04-10 Dan Nicolaescu <dann@ics.uci.edu>
1793
1794 * s/msdos.h (UNEXEC): New definition.
1795
17962010-04-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1797
1798 * dispextern.h (TRY_WINDOW_CHECK_MARGINS)
1799 (TRY_WINDOW_IGNORE_FONTS_CHANGE): New defines.
1800
1801 * xdisp.c (try_window): Change arg from CHECK_MARGINS to FLAGS.
1802 Don't abort with fonts change if TRY_WINDOW_IGNORE_FONTS_CHANGE is
1803 set in FLAGS. Callers with non-zero CHECK_MARGINS changed to use
1804 TRY_WINDOW_CHECK_MARGINS.
1805
1806 * xfns.c (Fx_show_tip): Undo last change. Call try_window with
1807 TRY_WINDOW_IGNORE_FONTS_CHANGE (Bug#2423). Subtract last glyph's
1808 width only when it is for padding.
1809
18102010-04-09 Jan Djärv <jan.h.d@swipnet.se>
1811
1812 * xfns.c (Fx_show_tip): Call try_window in a loop until
1813 fonts_changed_p is zero (Bug#2423).
1814
18152010-04-08 Eli Zaretskii <eliz@gnu.org>
1816
1817 * xdisp.c (set_cursor_from_row): Don't dereference glyphs beyond
1818 the end of TEXT_AREA. (Bug#5856)
1819
18202010-04-08 Jan Djärv <jan.h.d@swipnet.se>
1821
1822 * xsettings.c (XSETTINGS_FONT_NAME): Move XSETTINGS_FONT_NAME out of
1823 HAVE_GCONF.
1824
18252010-04-08 Eli Zaretskii <eliz@gnu.org>
1826
1827 * bidi.c (bidi_resolve_weak): Use prev.type_after_w1, instead of
1828 prev.orig_type, for resolving type of NSM. (Bug#5858)
1829
18302010-04-08 Jan Djärv <jan.h.d@swipnet.se>
1831
1832 * xsettings.c (current_font, SYSTEM_FONT, XSETTINGS_FONT_NAME): New.
1833 (parse_xft_settings): Also check for XSETTINGS_FONT_NAME and save that
1834 in current_font.
1835 (init_gconf): Read value of SYSTEM_FONT and save it in current_font.
1836 (Ffont_get_system_normal_font, xsettings_get_system_normal_font):
1837 New functions.
1838 (syms_of_xsettings): Initialize current_font.
1839 defsubr Sfont_get_system_normal_font.
1840
1841 * xsettings.h (Ffont_get_system_normal_font,
1842 xsettings_get_system_normal_font): Declare.
1843
1844 * xfns.c (extern xlwmenu_default_font): Remove.
1845 (Fx_create_frame): Remove setting of xlwmenu_default_font, moved
1846 to xlwmenu.c.
1847
1848 * menu.c (digest_single_submenu): If USE_LUCID and HAVE_XFT, encode
1849 menu items in UTF-8.
1850
1851 * xmenu.c: include xsettings.h and xlwmenu.h if USE_LUCID.
1852 (apply_systemfont_to_menu): New function.
1853 (set_frame_menubar, create_and_show_popup_menu): Call
1854 apply_systemfont_to_menu.
1855
18562010-04-07 Jan Djärv <jan.h.d@swipnet.se>
1857
1858 * frame.h (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Don't use
1859 FRAME_LINE_TO_PIXEL_Y.
1860
1861 * xterm.c (x_set_window_size_1): Don't add border_width/height to
1862 pixelwidth/height.
1863
18642010-04-07 Dan Nicolaescu <dann@ics.uci.edu>
1865
1866 Simplify code for HP machines.
1867 * m/hp800.h (LOAD_AVE_TYPE, LOAD_AVE_CVT, NO_REMAP): Do not define
1868 for GNU_LINUX, not needed.
1869 (UNEXEC, NEED_BSDTTY): Move definitions...
1870 * s/hpux10-20.h (UNEXEC, NEED_BSDTTY): ... here.
1871
1872 * m/iris4d.h (UNEXEC): Move definition ...
1873 * s/irix6-5.h (UNEXEC): ... here.
1874
18752010-04-04 Jan Djärv <jan.h.d@swipnet.se>
1876
1877 * xfns.c (set_machine_and_pid_properties): New function.
1878 (Fx_create_frame): Call set_machine_and_pid_properties.
1879
18802010-04-03 Eli Zaretskii <eliz@gnu.org>
1881
1882 * bidi.c (bidi_resolve_explicit, bidi_level_of_next_char): Check
1883 bidi_it->bytepos against ZV_BYTE instead of bidi_it->ch against
1884 BIDI_EOB. Fixes infloop with vertical cursor motion at ZV.
1885
1886 * w32fns.c (x_create_tip_frame): Copy `parms' before we modify it
1887 in this function. (Bug#5703)
1888
18892010-04-03 Chong Yidong <cyd@stupidchicken.com>
1890
1891 * nsterm.h: Fix last change.
1892
18932010-04-03 Dan Nicolaescu <dann@ics.uci.edu>
1894
1895 * m/intel386.h (NO_REMAP): Move definition ...
1896 * s/msdos.h (NO_REMAP): ... here.
1897
1898 * m/vax.h (CRT0_DUMMIES): Remove, unused.
1899
1900 * ecrt0.c: Remove MSDOS, m68k and __sparc__ conditionals, file not
1901 used on those platforms.
1902
19032010-04-02 Dan Nicolaescu <dann@ics.uci.edu>
1904
1905 Remove extern errno declarations.
1906 * xterm.c:
1907 * xrdb.c:
1908 * w32term.c:
1909 * unexec.c:
1910 * unexaix.c:
1911 * sysdep.c:
1912 * process.c:
1913 * lread.c:
1914 * keyboard.c:
1915 * floatfns.c:
1916 * filelock.c:
1917 * fileio.c:
1918 * emacs.c (main):
1919 * ecrt0.c:
1920 * dispnew.c:
1921 * callproc.c:
1922 * buffer.c: Remove errno extern declarations.
1923 * s/netbsd.h (NEED_ERRNO): Remove.
1924
19252010-04-01 Dan Nicolaescu <dann@ics.uci.edu>
1926
1927 Remove all uses of LIBX11_SYSTEM.
1928 * Makefile.in (LIBX11_SYSTEM): Remove.
1929 * s/msdos.h (LIBX11_SYSTEM): Do not define, define LIBS_SYSTEM
1930 instead.
1931
19322010-04-01 Eli Zaretskii <eliz@gnu.org>
1933
1934 Remove support for DJGPP v1.x (bug#5813).
1935
1936 * w16select.c (__dpmi_int): Remove DJGPP v1.x compatibility.
1937 * s/msdos.h:
1938 * unexec.c (make_hdr, copy_text_and_data):
1939 * sysdep.c (wait_for_termination, sys_subshell):
1940 * msdos.c (dos_set_window_size, msdos_set_cursor_shape)
1941 (IT_set_terminal_modes, __write, _rename, gethostname)
1942 (gettimeofday, alarm, fork, kill, dos_ttraw, dos_ttcooked)
1943 (run_msdos_command, abort): Remove DJGPP v1.x code and tests of
1944 the value of __DJGPP__.
1945 (nice, pause, sigsetmask, sigblock): Remove DJGPP v1.x
1946 compatibility code.
1947 * lread.c:
1948 * gmalloc.c (memalign):
1949 * fileio.c (Fcopy_file, check_executable, Ffile_modes):
1950 * emacs.c (main):
1951 * dosfns.c (init_dosfns):
1952 * dired.c (file_name_completion_stat): Remove tests of __DJGPP__.
1953
19542010-04-01 Eli Zaretskii <eliz@gnu.org>
1955
1956 * xdisp.c (set_cursor_from_row): Fix cursor positioning when the
1957 string with `cursor' property comes from an `after-string'
1958 overlay. (Bug#5816)
1959
19602010-04-01 Glenn Morris <rgm@gnu.org>
1961
1962 * Makefile.in (LIBTIFF, LIBJPEG, LIBPNG, LIBGIF, LIBXPM, XFT_LIBS):
1963 Define as Makefile variables.
1964 (LIBX): Use above variables rather than directly using autoconf.
1965
19662010-03-31 Dan Nicolaescu <dann@ics.uci.edu>
1967
1968 Clean up BSD_SYSTEM use.
1969 * xterm.c:
1970 * process.c:
1971 * emacs.c: Use HAVE_SYS_IOCTL_H instead of BSD_SYSTEM as a guard
1972 for including <sys/ioctl.h>.
1973 * sysdep.c (wait_without_blocking): Remove BSD_SYSTEM case, this
1974 code is only used for MSDOS.
1975
19762010-03-31 Juri Linkov <juri@jurta.org>
1977
1978 * image.c: Add `Qextension_data'.
1979 (syms_of_image): Initialize and staticpro `Qextension_data'.
1980 (Fimage_metadata): Rename from `Fimage_extension_data'.
1981 (gif_load): Put GIF extension data to the property
1982 `Qextension_data'.
1983
19842010-03-31 Chong Yidong <cyd@stupidchicken.com>
1985
1986 * nsfns.m (ns_set_doc_edited): Remove unused arg OLDVAL.
1987 * nsterm.h: Fix prototype.
1988
19892010-03-31 Eli Zaretskii <eliz@gnu.org>
1990
1991 * xdisp.c (highlight_trailing_whitespace): Support highlight of
1992 trailing whitespace in right-to-left rows.
1993
19942010-03-31 Stefan Monnier <monnier@iro.umontreal.ca>
1995
1996 Get rid of the direct_output optimizations.
1997 * keyboard.c (nonundocount): Remove extern declaration.
1998 (command_loop_1): Remove brittle optimisation for cheap and
1999 common operations.
2000 * xdisp.c (redisplay_internal): Don't bother checking
2001 redisplay_performed_directly_p any more.
2002 * sysdep.c (init_sys_modes): Don't call direct_output_forward_char
2003 any more.
2004 * dispnew.c (redisplay_performed_directly_p)
2005 (direct_output_for_insert, direct_output_forward_char):
2006 * dispextern.h (redisplay_performed_directly_p)
2007 (direct_output_for_insert, direct_output_forward_char): Remove.
2008 * cmds.c (nonundocount): Make it static.
2009
20102010-03-31 Bernhard Herzog <bh@intevation.de> (tiny change)
2011
2012 * menu.c (Fx_popup_menu): Use last_event_timestamp (Bug#4930).
2013
20142010-03-31 Jan Djärv <jan.h.d@swipnet.se>
2015
2016 * xdisp.c (note_mouse_highlight): Don't do highlight if pointer is
2017 invisible (Bug#5766).
2018
20192010-03-31 Adrian Robert <adrian.b.robert@gmail.com>
2020
2021 * xdisp.c (x_consider_frame_title, update_window_cursor):
2022 Remove HAVE_NS conditionals.
2023 (prepare_menu_bars) [HAVE_NS]: Call ns_set_doc_edited.
2024
2025 * nsfns.m (x_implicitly_set_name): If frame-title-format is t, use
2026 filename for the title.
2027 (ns_set_doc_edited): Do nothing if the selected window is a
2028 minibuffer window.
2029
2030 * nsterm.h: Add prototypes for ns_set_name_as_filename and
2031 ns_set_doc_edited.
2032
2033 * nsterm.m: Remove unneeded prototype.
2034
20352010-03-31 Glenn Morris <rgm@gnu.org>
2036
2037 * Makefile.in (SOME_MACHINE_OBJECTS): Ensure dbus stuff is always
2038 in the DOC file. (Bug#5336)
2039
20402010-03-31 Chong Yidong <cyd@stupidchicken.com>
2041
2042 * xdisp.c (pos_visible_p): Revert 2008-01-25 change (Bug#5730).
2043
20442010-03-31 Stefan Monnier <monnier@iro.umontreal.ca>
2045
2046 * window.c (keys_of_window): Remove redundant/overridden bindings.
2047
20482010-03-30 Eli Zaretskii <eliz@gnu.org>
2049
2050 * xdisp.c (BUFFER_POS_REACHED_P, move_it_in_display_line_to):
2051 Restore original behavior when the iterator is not bidi_p.
2052
20532010-03-30 Dan Nicolaescu <dann@ics.uci.edu>
2054
2055 * xdisp.c (syms_of_xdisp): Use intern_c_string instead of intern.
2056
20572010-03-30 Eli Zaretskii <eliz@gnu.org>
2058
2059 * bidi.c (bidi_cache_iterator_state): Invalidate the cache if we
2060 are outside the range of cached character positions.
2061
20622010-03-30 Juanma Barranquero <lekktu@gmail.com>
2063
2064 * makefile.w32-in ($(BLD)/bidi.$(O)): Add dependency on w32gui.h.
2065
20662010-03-30 Eli Zaretskii <eliz@gnu.org>
2067
2068 Initial support for bidirectional editing.
2069
2070 * Makefile.in (obj): Include bidi.o.
2071 (bidi.o): New target.
2072
2073 * makefile.w32-in (OBJ1): Add $(BLD)/bidi.$(O).
2074 ($(BLD)/bidi.$(O)): New target.
2075
2076 * bidi.c: New file.
2077
2078 * buffer.h (struct buffer): New members bidi_display_reordering
2079 and bidi_paragraph_direction.
2080
2081 * buffer.c (init_buffer_once): Initialize bidi_display_reordering
2082 and bidi_paragraph_direction.
2083 (syms_of_buffer): Declare Lisp variables bidi-display-reordering
2084 and bidi-paragraph-direction.
2085 (Fbuffer_swap_text): Swap the values of
2086 bidi_display_reordering and bidi_paragraph_direction.
2087
2088 * dispextern.h (BIDI_MAXLEVEL, BIDI_AT_BASE_LEVEL): New macros.
2089 (bidi_type_t, bidi_dir_t): New types.
2090 (bidi_saved_info, bidi_stack, bidi_it): New structures.
2091 (struct it): New members bidi_p, bidi_it, paragraph_embedding,
2092 prev_stop, base_level_stop, and eol_pos.
2093 (bidi_init_it, bidi_get_next_char_visually): New prototypes.
2094 (IT_STACK_SIZE): Enlarge to 5.
2095 (struct glyph_row): New member reversed_p.
2096 <string_buffer_position>: Update prototype.
2097 (PRODUCE_GLYPHS): Set the reversed_p flag in the iterator's
2098 glyph_row if bidi_it.paragraph_dir == R2L.
2099 (struct glyph): New members resolved_level and bidi_type.
2100
2101 * dispnew.c (direct_output_forward_char): Give up if we need bidi
2102 processing or buffer's direction is right-to-left.
2103 (prepare_desired_row): Preserve the reversed_p flag.
2104 (row_equal_p): Compare the reversed_p attributes as well.
2105
2106 * xdisp.c (init_iterator): Initialize it->bidi_p. Call
2107 bidi_init_it and set it->paragraph_embedding from the current
2108 buffer's value of bidi_paragraph_direction.
2109 (reseat_1): Initialize bidi_it.first_elt.
2110 (set_iterator_to_next, next_element_from_buffer): Use the value of
2111 paragraph_embedding to determine the paragraph direction.
2112 (set_iterator_to_next): Under bidi reordering, call
2113 bidi_get_next_char_visually. Call bidi_paragraph_init if the
2114 new_paragraph flag is set in the bidi iterator.
2115 (next_element_from_buffer): If bidi_it.first_elt is set,
2116 initialize paragraph direction and find the first character to
2117 display in the visual order. If reseated to a middle of a line,
2118 prime the bidi iterator starting at the line's beginning. Handle
2119 the situation where we overstepped stop_charpos due to
2120 non-linearity of the bidi iteration. Likewise for when we back up
2121 beyond the previous stop_charpos. When moving across stop_charpos,
2122 record it in prev_stop.
2123 (display_line): Set row->end and it->start for the next row to the
2124 next character in logical order. Always extend reversed_p rows to
2125 the end of line, even if they end at ZV. Copy the reversed_p flag
2126 to the next glyph row. Keep calling set_cursor_from_row for
2127 bidi-reordered rows even if we already have a possible candidate
2128 for cursor position. Set row_end after all the row's glyphs have
2129 been produced, by looping over the glyphs. Record the position
2130 after EOL in it->eol_pos, and use it to set end_pos of the last
2131 row produced for a continued line.
2132 <Qright_to_left, Qleft_to_right>: New variables.
2133 (syms_of_xdisp): Initialize and staticpro them.
2134 (string_buffer_position_lim): New function.
2135 (string_buffer_position): Most of code moved to
2136 string_buffer_position_lim. Last argument and return value are
2137 now EMACS_INT; all callers changed.
2138 (set_cursor_from_row): Rewritten to support bidirectional text and
2139 reversed glyph rows.
2140 (text_outside_line_unchanged_p, try_window_id): Disable
2141 optimizations if we are reordering bidirectional text and the
2142 paragraph direction can be affected by the change.
2143 (append_glyph, append_composite_glyph)
2144 (produce_image_glyph, append_stretch_glyph): Set the
2145 resolved_level and bidi_type members of each glyph.
2146 (append_glyph): If the glyph row is reversed, prepend the glyph
2147 rather than appending it.
2148 (handle_stop_backwards): New function.
2149 (reseat_1, pop_it, push_it): Set prev_stop and base_level_stop.
2150 (reseat): call handle_stop_backwards to recompute prev_stop and
2151 base_level_stop for the new position.
2152 (handle_invisible_prop): Under bidi iteration, skip invisible text
2153 using bidi_get_next_char_visually. If we are `reseat'ed, init the
2154 paragraph direction. Update IT->prev_stop after skipping
2155 invisible text.
2156 (move_it_in_display_line_to): New variables prev_method
2157 and prev_pos. Compare for strict equality in
2158 BUFFER_POS_REACHED_P.
2159 (try_cursor_movement): Examine all the candidate rows that occlude
2160 point, to return the best match. If rows are bidi-reordered
2161 and point moved backwards, back up to the row that is not a
2162 continuation line, and start looking for a suitable row from
2163 there.
2164
2165 * term.c (append_glyph): Reverse glyphs by pre-pending them,
2166 rather than appending, if the glyph_row's reversed_p flag is set.
2167 Set the resolved_level and bidi_type members of each glyph.
2168
2169 * .gdbinit (pbiditype): New command.
2170 (pgx): Use it to display bidi level and type of the glyph.
2171 (pitx): Display some bidi information about the iterator.
2172 (prowlims, pmtxrows): New commands.
2173
21742010-03-30 Dan Nicolaescu <dann@ics.uci.edu>
2175
2176 Remove all uses of C_DEBUG_SWITCH and LIBS_DEBUG.
2177 * s/usg5-4.h (LIBS_DEBUG):
2178 * s/irix6-5.h (C_DEBUG_SWITCH):
2179 * s/gnu-linux.h (LIBS_DEBUG):
2180 * s/darwin.h (LIBS_DEBUG):
2181 * s/bsd-common.h (LIBS_DEBUG):
2182 * s/aix4-2.h (LIBS_DEBUG, C_DEBUG_SWITCH):
2183 * m/iris4d.h (LIBS_DEBUG):
2184 * m/hp800.h (LIBS_DEBUG): Remove definitions.
2185
2186 * Makefile.in (LIBES): Remove reference to LIBS_DEBUG.
2187 (LIBS_DEBUG): Remove definition.
2188
21892010-03-27 Chong Yidong <cyd@stupidchicken.com>
2190
2191 * process.c (Fmake_network_process): Don't apply Bug#5173 fix for
2192 Windows.
2193
21942010-03-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2195
2196 * process.c (Fmake_network_process): Don't call turn_on_atimers around
2197 `connect' (Bug#5723).
2198
21992010-03-25 Helmut Eller <eller.helmut@gmail.com>
2200
2201 * process.c (Fmake_network_process): Call `select' for interrupted
2202 `connect' rather than creating new socket (Bug#5173).
2203
22042010-03-24 Jan Djärv <jan.h.d@swipnet.se>
2205
2206 * frame.c (x_get_arg): Handle RES_TYPE_BOOLEAN_NUMBER (bug #5736).
2207
2208 * xfns.c (Fx_create_frame): Make menuBar a RES_TYPE_BOOLEAN_NUMBER.
2209
2210 * dispextern.h (resource_types): RES_TYPE_BOOLEAN_NUMBER is new.
2211
22122010-03-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2213
2214 * xfns.c (Fx_create_frame) [USE_LUCID]: Add BLOCK_INPUT around
2215 XLoadQueryFont.
2216
22172010-03-24 Kenichi Handa <handa@m17n.org>
2218
2219 * coding.c (decode_coding_ccl): Fix previous change for the
2220 multibyte case.
2221 (encode_coding_ccl): Don't setup ccl program here. Fix for the
2222 case that the output buffer is fullfilled.
2223 (encode_coding): Setup ccl program here.
2224
22252010-03-23 Dan Nicolaescu <dann@ics.uci.edu>
2226
2227 * s/gnu-linux.h (LIBS_SYSTEM): Remove, same as default.
2228
2229 Simplify LIBS_MACHINE definitions.
2230 * m/hp800.h (LIBS_MACHINE): Remove, same as default.
2231 * m/iris4d.h (LIBS_MACHINE): Likewise.
2232 * m/ibmrs6000.h (LIBS_MACHINE): Rename to LIBS_SYSTEM and move ...
2233 * s/aix4-2.h (LIBS_SYSTEM): ... here.
2234 * s/netbsd.h: Remove commented out code.
2235
22362010-03-22 Dan Nicolaescu <dann@ics.uci.edu>
2237
2238 Remove dead code dealing with POSIX_SIGNALS.
2239 * atimer.c (set_alarm): Remove dead code, all USG systems define
2240 POSIX_SIGNALS.
2241 * data.c (arith_error): Likewise.
2242 * keyboard.c (input_available_signal, handle_user_signal)
2243 (interrupt_signal): Likewise.
2244 * process.c (sigchld_handler): Likewise.
2245 (create_process): Remove if 0 code. Remove HPUX conditional when
2246 !defined (POSIX_SIGNALS), it cannot be true.
2247 * syssignal.h: Remove USG5_4 and USG conditionals when
2248 !POSIX_SIGNALS, they cannot be true.
2249
2250 * keyboard.c (Fset_input_interrupt_mode): Remove code depending on
2251 NO_SOCK_SIGIO, not used anymore.
2252
22532010-03-21 Dan Nicolaescu <dann@ics.uci.edu>
2254
2255 * m/vax.h (BSD_SYSTEM, BSD4_2): Remove conditionals, we only
2256 support vax on BSDs.
2257
2258 * m/ibmrs6000.h (ORDINARY_LINK): Move definition ...
2259 * s/aix4-2.h (ORDINARY_LINK): ... here.
2260
22612010-03-21 Andreas Schwab <schwab@linux-m68k.org>
2262
2263 * Makefile.in (abs_builddir): Define.
2264 (bootstrap_exe): Use it.
2265 (VPATH): Use $(srcdir) instead of @srcdir@.
2266
22672010-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
2268
2269 * Makefile.in (bootstrap_exe): Use an absolute name.
2270
22712010-03-20 Dan Nicolaescu <dann@ics.uci.edu>
2272
2273 Remove support for old GNU/Linux using libc version 5.
2274 * m/alpha.h (LINUX_SBRK_BUG): Remove definition.
2275 * emacs.c (main): Remove code depending on LINUX_SBRK_BUG.
2276
2277 Consolidate redundant definitions in s/bsd-common.h.
2278 * s/bsd-common.h (BSD4_2, TABDLY, TAB3, HAVE_TERMIOS, NO_TERMIO)
2279 (LIBS_DEBUG, SYSV_SYSTEM_DIR, UNEXEC, NARROWPROTO, BSD_PGRPS)
2280 (LDAV_SYMBOL, KERNEL_FILE): Define (or undefine) here instead of
2281 doing it in all files that include this one.
2282 * s/gnu.h (BSD4_2, TABDLY, TAB3, HAVE_TERMIOS, NO_TERMIO)
2283 (LIBS_DEBUG, SYSV_SYSTEM_DIR, UNEXEC, NARROWPROTO, BSD_PGRPS)
2284 (LDAV_SYMBOL, KERNEL_FILE): Remove.
2285 * s/freebsd.h (BSD4_2, TABDLY, TAB3, HAVE_TERMIOS, NO_TERMIO)
2286 (LIBS_DEBUG, SYSV_SYSTEM_DIR, UNEXEC, NARROWPROTO, BSD_PGRPS)
2287 (LDAV_SYMBOL, KERNEL_FILE): Remove.
2288 * s/netbsd.h (BSD4_2, TABDLY, TAB3, HAVE_TERMIOS, NO_TERMIO)
2289 (LIBS_DEBUG, SYSV_SYSTEM_DIR, UNEXEC, NARROWPROTO, BSD_PGRPS)
2290 (LDAV_SYMBOL, KERNEL_FILE): Remove.
2291
2292 Consolidate redundant definitions.
2293 * s/usg5-4.h (sigsetmask, PTY_TTY_NAME_SPRINTF): Do not define,
2294 it's undefined in all files that include this one.
2295 (POSIX_SIGNALS): Define here instead of doing it in all files that
2296 include this one.
2297 * s/irix6-5.h (sigsetmask, PTY_TTY_NAME_SPRINTF): Do not undef.
2298 (POSIX_SIGNALS): Do not define.
2299 * s/sol2-6.h (sigsetmask, PTY_TTY_NAME_SPRINTF): Do not undef.
2300 (POSIX_SIGNALS): Do not define.
2301 * s/unixware.h (sigsetmask, PTY_TTY_NAME_SPRINTF): Do not undef.
2302 (POSIX_SIGNALS): Do not define.
2303
2304 Remove support for old UNIX System V systems.
2305 * s/unixware.h: Add the contents of s/usg-5-4-2.h.
2306 * s/usg-5-4-2.h: Remove.
2307
2308 Remove support for Solaris on PPC and for old versions.
2309 * s/sol2-6.h: Add the contents of s/sol-2.3.h, s/sol-2.4.h, s/sol-2.5.h.
2310 (LD_SWITCH_SYSTEM, USE_MMAP_FOR_BUFFERS): Remove #defines/#undef
2311 that cancel each other.
2312 * s/sol2-3.h:
2313 * s/sol2-4.h:
2314 * s/sol2-5.h: Remove.
2315 * m/ibmrs6000.h: Remove code for USG5_4, this file is only used on AIX.
2316 (NO_REMAP): Remove, unused.
2317 (UNEXEC): Move definition ...
2318 * s/aix4-2.h (UNEXEC): ... here.
2319
2320 * s/openbsd.h: Remove support for non-ELF and for systems that do
2321 not support shared libraries.
2322 * s/netbsd.h:
2323 * s/freebsd.h: Likewise.
2324
23252010-03-20 Dan Nicolaescu <dann@ics.uci.edu>
2326
2327 Remove non-working support for lynxos 3.0.
2328 * s/lynxos.h: Remove file.
2329
2330 * unexec.c (unexec, adjust_lnnoptrs): Do not depend on
2331 COFF_BSD_SYMBOLS, nothing defines it anymore.
2332
23332010-03-20 Dan Nicolaescu <dann@ics.uci.edu>
2334
2335 Remove obsolete uses of HAVE_SHM.
2336 * emacs.c (standard_args):
2337 (Fdump_emacs):
2338 (syms_of_emacs): Remove code depending on HAVE_SHM.
2339
2340 * alloc.c: Remove HAVE_SHM dependent definition.
2341
2342 * Makefile.in (RUN_TEMACS): Do not depend on HAVE_SHM.
2343
23442010-03-18 Glenn Morris <rgm@gnu.org>
2345
2346 * emacs.c (USAGE4): Hard-code bug address.
2347 (REPORT_EMACS_BUG_ADDRESS, REPORT_EMACS_BUG_PRETEST_ADDRESS): Remove.
2348 (bug_reporting_address): Remove.
2349 (main): Don't call bug_reporting_address.
2350
2351 * Makefile.in (XFT_LIBS, LIBXPM, LIBJPEG, LIBPNG, LIBTIFF, LIBGIF)
2352 (LIBGPM, LIBRESOLV): Set using autoconf rather than cpp.
2353
23542010-03-15 Chong Yidong <cyd@stupidchicken.com>
2355
2356 * xfns.c (Fx_create_frame):
2357 * frame.c (Vdefault_frame_scroll_bars): Put non-GTK X scroll-bars
2358 on left.
2359
23602010-03-13 Andreas Politz <politza@fh-trier.de> (tiny change)
2361
2362 * editfns.c (Fformat): Account for string precision when computing
2363 field width (Bug#5710).
2364
23652010-03-12 Chong Yidong <cyd@stupidchicken.com>
2366
2367 * xfns.c (Fx_create_frame): Set default to Qright.
2368
2369 * frame.c (Vdefault_frame_scroll_bars): Set default to Qright for
2370 all window systems.
2371
23722010-03-12 Eli Zaretskii <eliz@gnu.org>
2373
2374 These changes remove termcap.c from the build on Posix platforms.
2375 * Makefile.in (termcapobj): Move termcap.o from here...
2376 (MSDOS_OBJ): ...to here.
2377 (termcapobj) [!LIBS_TERMCAP]: Remove specialized value, as it is
2378 now identical to when LIBS_TERMCAP is defined.
2379
2380 * term.c: Remove (ifdef'ed away) inclusion of termcap.h.
2381
2382 * cm.c: Remove (ifdef'ed away) inclusion of termcap.h.
2383
2384 * config.in: Regenerated. (See top-level ChangeLog.)
2385
23862010-03-10 Chong Yidong <cyd@stupidchicken.com>
2387
2388 * Branch for 23.2.
2389
23902010-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
2391
2392 Cleanup setup of gl_state in various parts of the code.
2393 * syntax.h (SETUP_BUFFER_SYNTAX_TABLE): New macro.
2394 (SETUP_SYNTAX_TABLE, SETUP_SYNTAX_TABLE_FOR_OBJECT):
2395 * syntax.c (find_defun_start, Fchar_syntax, Fmatching_paren)
2396 (skip_chars):
2397 * regex.c (regex_compile): Use it.
2398 (re_compile_pattern): Don't set gl_state.current_syntax_table since
2399 it's now set in regex_compile when/if we need it.
2400
24012010-03-05 Stefan Monnier <monnier@iro.umontreal.ca>
2402
2403 Make it possible to C-g in a tight bytecode loop again (bug#5680).
2404 * lisp.h (ELSE_PENDING_SIGNALS): New macro.
2405 (QUIT): Use it to consolidate code and remove redundancy.
2406 * bytecode.c (BYTE_CODE_QUIT): Use it as well.
2407
2408 * regex.c (regex_compile): Setup gl_state as well.
2409
2410 * syntax.c (skip_chars): Setup gl_state (bug#3823).
2411 (in_classes): Use CONSP before XCAR/XCDR.
2412
24132010-03-03 Chong Yidong <cyd@stupidchicken.com>
2414
2415 * keymap.c (Fwhere_is_internal): Use Fequal to compare
2416 definitions, so that keyboard macros are correctly handled
2417 (Bug#5481).
2418
24192010-03-02 Eli Zaretskii <eliz@gnu.org>
2420
2421 * coding.c (decode_coding_emacs_mule): Fixup pointers to buffer
2422 text that could be relocated inside the call to emacs_mule_char.
2423 (emacs_mule_char): Use CODING_DECODE_CHAR instead of DECODE_CHAR.
2424 (CODING_DECODE_CHAR): Add a comment describing its purpose.
2425
24262010-03-02 Kenichi Handa <handa@m17n.org>
2427
2428 * character.c (parse_str_as_multibyte): Fix handling of the
2429 multibyte form of raw-bytes.
2430 (str_as_multibyte): Likewise.
2431
2432 * buffer.c (Fset_buffer_multibyte): Fix handling of the multibyte
2433 form of raw-bytes.
2434
24352010-02-28 Chong Yidong <cyd@stupidchicken.com>
2436
2437 * charset.c (load_charset_map_from_file)
2438 (load_charset_map_from_vector): Zero out allocated
2439 charset_map_entries before using them.
2440
24412010-02-27 Andreas Schwab <schwab@linux-m68k.org>
2442
2443 * w32uniscribe.c (uniscribe_check_otf): Fix length check.
2444
24452010-02-27 Chong Yidong <cyd@stupidchicken.com>
2446
2447 * font.c (font_parse_fcname): Recognize "Book", "Condensed",
2448 "Medium", and "Semi-Condensed" keywords in GTK names (Bug#5646).
2449
24502010-02-26 Kenichi Handa <handa@m17n.org>
2451
2452 * ftfont.c (ftfont_get_open_type_spec): Fix parsing of otf_spec.
2453
2454 * xdisp.c (reseat_to_string): Fix previous change.
2455
24562010-02-26 David Reitter <david.reitter@gmail.com>
2457
2458 * nsfont.m (nsfont_draw): ns_antialias_text should be a
2459 Lisp_Object (Bug#4736).
2460
24612010-02-25 Kenichi Handa <handa@m17n.org>
2462
2463 * xdisp.c (reseat_to_string): Fix previous change (bug#5609).
2464
24652010-02-24 Jan Djärv <jan.h.d@swipnet.se>
2466
2467 * xterm.c (XTflash): Move declarations before statements.
2468
2469 * gtkutil.c (xg_get_gdk_display): Remove (unused).
2470 (xg_get_pixbuf_from_pix_and_mask, xg_create_frame_widgets)
2471 (xg_toggle_notify_cb, xg_set_toolkit_scroll_bar_thumb)
2472 (xg_create_tool_bar): Remove unused variables.
2473 (x_wm_set_size_hint): Move declarations before statements.
2474 (xg_create_frame_widgets): Remove variable grav.
2475
24762010-02-21 Chong Yidong <cyd@stupidchicken.com>
2477
2478 * m/arm.h: Define the LIB_GCC flag to be -lgcc_s (Bug#5518).
2479
24802010-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
2481
2482 * term.c (fatal): Add a final \n if needed (bug#5596).
2483
24842010-02-18 Chong Yidong <cyd@stupidchicken.com>
2485
2486 * nsterm.m (ns_ring_bell): Revert last change (Bug#5569).
2487
24882010-02-18 Glenn Morris <rgm@gnu.org>
2489
2490 * callint.c (Finteractive): Doc fix.
2491
24922010-02-18 Kazuhiro Ito <kzhr@d1.dion.ne.jp> (tiny change)
2493
2494 * coding.c (record_conversion_result):
2495 Handle CODING_RESULT_INSUFFICIENT_DST.
2496 (decode_coding_object): Record CODING_RESULT_INSUFFICIENT_MEM on
2497 memory allocation error.
2498
24992010-02-17 Kenichi Handa <handa@m17n.org>
2500
2501 * coding.c (decode_coding_ccl): Don't setup ccl program here.
2502 Fix for the case that the output buffer is fullfilled.
2503 (decode_coding): Setup ccl program here. Keep looping when the
2504 decoder stopped because the output buffer is
2505 fullfilled (bug#5534).
2506
2507 * ccl.c (ccl_driver): Never reset ic to CCL_HEADER_MAIN.
2508
25092010-02-13 Jan Djärv <jan.h.d@swipnet.se>
2510
2511 * xterm.c (x_clear_frame_area): Call gtk_widget_queue_draw if USE_GTK,
2512 bug #5571.
2513 (XTflash): Use Gdk-routines if USE_GTK so scroll bars don't get
2514 overdrawn.
2515
25162010-02-10 Jan Djärv <jan.h.d@swipnet.se>
2517
2518 * xsmfns.c (x_session_initialize): Move initialization of ice_fd and
2519 doing_interact here.
2520 (ice_connection_closed): New function.
2521 (x_session_check_input, smc_die_CB, ice_io_error_handler)
2522 (ice_conn_watch_CB, x_session_close): Call ice_connection_closed.
2523 (x_session_check_input): Call IceCloseConnection if IceProcessMessages
2524 returns I/O error.
2525 (ice_conn_watch_CB): Call add_keyboard_wait_descriptor on ice_fd,
2526 bug #5512.
2527
25282010-02-08 Francis Devereux <francis@devrx.org> (tiny change)
2529
2530 * nsfont.m (nsfont_open): The system's value for the font descent
2531 is negative, so round it down to avoid clipping.
2532
25332010-02-06 Chong Yidong <cyd@stupidchicken.com>
2534
2535 * charset.c (load_charset_map_from_file)
2536 (load_charset_map_from_vector): Fix last change to use SAFE_ALLOCA
2537 instead of xmalloc (Bug#5526). Suggested by Vivek Dasmohapatra.
2538
25392010-02-05 Chong Yidong <cyd@stupidchicken.com>
2540
2541 * charset.c (load_charset_map_from_file): Allocate large
2542 charset_map_entries structure on the heap rather than the stack.
2543 (Bug#5526).
2544
25452010-01-31 Kenichi Handa <handa@m17n.org>
2546
2547 * font.c (font_parse_xlfd): If FONT is a font-entity and pixel
2548 size in NAME is invalid, return -1 (Bug#5396).
2549
25502010-01-31 Chong Yidong <cyd@stupidchicken.com>
2551
2552 * nsterm.m (ns_defined_color): Block input. Suggested by Mike
2553 <deactivated@gmail.com> (Bug#3605).
2554
25552010-01-31 David De La Harpe Golden <david@harpegolden.net>
2556
2557 * fileio.c (Frename_file): Correctly rename symlinks to
2558 directories (Bug#5496).
2559
25602010-01-31 Filipe Cabecinhas <filcab@gmail.com> (tiny change)
2561
2562 * nsterm.m (ns_ring_bell): Handle visible bell like X.
2563
25642010-01-30 Andreas Schwab <schwab@linux-m68k.org>
2565
2566 * character.h (CHAR_PRINTABLE_P): Reparenthesize to avoid warning.
2567
25682010-01-29 Chong Yidong <cyd@stupidchicken.com>
2569
2570 * frame.c (DEFAULT_ROWS): Change default to 35.
2571
2572 * xfns.c (x_default_font_parameter): Change default XFT font to
2573 monospace-10 (Bug#3643).
2574
25752010-01-29 Eli Zaretskii <eliz@gnu.org>
2576
2577 * w32inevt.c (key_event): Remove unnecessary comparison of
2578 event->uChar.AsciiChar with 128.
2579
25802010-01-28 Chong Yidong <cyd@stupidchicken.com>
2581
2582 * fileio.c (Frename_file): Fix last change (Bug#5487).
2583
2584 * m/mips.h: Remove DATA_START. Suggested by Dan Nicolaescu.
2585
2586 * m/alpha.h: Don't define DATA_START on NetBSD (Bug#4629).
2587
25882010-01-28 Jan Djärv <jan.h.d@swipnet.se>
2589
2590 * xfns.c (Fx_create_frame): Remove window size matching code from
2591 2010-01-15.
2592 (x_get_current_desktop, x_get_desktop_workarea): Remove.
2593
25942010-01-27 Jason Rumney <jasonr@gnu.org>
2595
2596 * w32inevt.c (w32_kbd_patch_key): Save the unicode character.
2597 (key_event): Use unicode for characters 128 and higher (Bug#4567).
2598
25992010-01-27 Kenichi Handa <handa@m17n.org>
2600
2601 * regex.c (analyse_first): Fix setting of fastmap for unibyte
2602 pattern string (Bug#4209).
2603
26042010-01-27 David De La Harpe Golden <david@harpegolden.net>
2605
2606 * fileio.c (Frename_file): Call copy-directory and
2607 delete-directory for directories, in order to handle cross-device
2608 renaming (Bug#3353).
2609
26102010-01-25 Jan Djärv <jan.h.d@swipnet.se>
2611
2612 * xfns.c (Fx_create_frame): If frame height is too big, try
2613 sizes 24 and 10. Bug #3643.
2614
26152010-01-24 Stefan Monnier <monnier@iro.umontreal.ca>
2616
2617 Try and fix bug#788, hopefully for real this time.
2618 * keymap.c (shadow_lookup): Add `remap' arg.
2619 (describe_map, describe_vector): Update calls to shadow_lookup.
2620 (Fwhere_is_internal): Fix up handling of `remapped_sequences' and
2621 `remapped' so this flag is applicable to `sequence'. Be careful to
2622 perform remapping during shadow_lookup check of remapped_sequences.
2623
26242010-01-24 Eric Bélanger <snowmaniscool@gmail.com> (tiny change)
2625
2626 * image.c (png_load): Use png_sig_cmp instead of the obsolete
2627 png_check_sig, which has been removed in libpng 1.4.
2628
26292010-01-23 Giorgos Keramidas <keramida@ceid.upatras.gr> (tiny change)
2630
2631 * filelock.c: Include utmp.h only when HAVE_UTMP_H (FreeBSD 9.x
2632 lacks this header file).
2633
26342010-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2635
2636 * xdisp.c (draw_glyphs): Update `start' for left_overwritten case
2637 as in Emacs 22.
2638
26392010-01-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2640
2641 * lisp.h (make_pure_string): String pointer arg now points to const.
2642
2643 * alloc.c (find_string_data_in_pure, make_pure_string): String pointer
2644 args now point to const.
2645
26462010-01-22 Eli Zaretskii <eliz@gnu.org>
2647
2648 * lread.c (Fload): Don't treat files without .elc extension as
2649 byte-compiled if they are ``magic'', i.e. `openp' returned -2 for
2650 them. (bug#5303)
2651
26522010-01-20 Kenichi Handa <handa@m17n.org>
2653
2654 * coding.c (consume_chars): If ! multibyte and the encoder is ccl,
2655 treat the source as actual byte sequence.
2656
26572010-01-19 Alan Mackenzie <acm@muc.de>
2658
2659 Fix spurious before-change-functions invocation from (insert ?\n).
2660 * textprop.c (set_text_properties): Rename parameter
2661 `signal_after_change_p' to `coherent_change_p', and make the
2662 invocation of `modify_region' conditional on it.
2663
26642010-01-19 Jan Djärv <jan.h.d@swipnet.se>
2665
2666 * xsettings.c (apply_xft_settings): Save settings in Vxft_settings
2667 for debug purpose.
2668 (syms_of_xsettings): Declare xft-settings.
2669
26702010-01-18 Chong Yidong <cyd@stupidchicken.com>
2671
2672 * editfns.c (Fcurrent_time_string): Doc fix (Bug#5408).
2673
26742010-01-16 Stefan Monnier <monnier@iro.umontreal.ca>
2675
2676 * xterm.c (event_handler_gdk): Block input (Bug#5037).
2677
26782010-01-16 Chong Yidong <cyd@stupidchicken.com>
2679
2680 * emacs.c (standard_args): Adjust arg priorities to reflect how
2681 they are processed in startup.el.
2682
26832010-01-16 Andreas Schwab <schwab@linux-m68k.org>
2684
2685 * Makefile.in (lisp, shortlisp): Update.
2686
26872010-01-16 Stefan Monnier <monnier@iro.umontreal.ca>
2688
2689 * xterm.c (x_term_init): Instead of inhibiting GC while running Lisp
2690 code, link the new kboard into all_kboard before running Lisp code,
2691 and protect the new terminal with GCPRO (Bug#5365).
2692 (x_term_init): Remove unused var `atom'.
2693 (x_delete_display, x_delete_terminal): Remove unused var `i'.
2694
26952010-01-15 Jan Djärv <jan.h.d@swipnet.se>
2696
2697 * xfns.c (x_get_current_desktop, x_get_desktop_workarea): New functions.
2698 (Fx_create_frame): Call x_get_current_desktop and x_get_desktop_workarea
2699 to find out usable size of the desktop. Don't make frames larger than
2700 this. Bug #3643.
2701
27022010-01-15 Kenichi Handa <handa@m17n.org>
2703
2704 * xdisp.c (CHAR_COMPOSED_P): New arg END_CHARPOS. Callers changed.
2705
27062010-01-15 Chong Yidong <cyd@stupidchicken.com>
2707
2708 * nsterm.m (Qnone): Define.
2709
2710 * nsfns.m (Qnone): Move definition to nsterm.m.
2711
27122010-01-14 Kenichi Handa <handa@m17n.org>
2713
2714 * coding.c (detect_coding_iso_2022): Fix handling of euc-xx coding
2715 systems.
2716
27172010-01-14 Kenichi Handa <handa@m17n.org>
2718
2719 Make auto-composition work on all buffers even if they are
2720 fundamental mode.
2721
2722 * composite.c (Vauto_composition_mode): New variable.
2723 (composition_compute_stop_pos): Check Vauto_composition_mode
2724 instead of Vauto_composition_function.
2725 (composition_adjust_point, Ffind_composition_internal): Likewise.
2726 (syms_of_composite): Declare Lisp variable
2727 "auto-composition-mode" here.
2728
27292010-01-13 Chong Yidong <cyd@stupidchicken.com>
2730
2731 * xterm.c (x_term_init): Avoid garbage-collecting the new terminal
2732 during call to vendor-specific-keysyms (Bug#5365).
2733
27342010-01-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2735
2736 * keyboard.c (input_available_signal) [SYNC_INPUT]:
2737 Call SIGNAL_THREAD_CHECK (Bug#5333).
2738
2739 * atimer.c (alarm_signal_handler) [!SYNC_INPUT]:
2740 Call SIGNAL_THREAD_CHECK.
2741
27422010-01-13 Stefan Monnier <monnier@iro.umontreal.ca>
2743
2744 Try to fix bug#5314. This is probably not the final word, tho.
2745 * buffer.c (Fset_buffer_modified_p): Try and be careful not to modify
2746 recent-auto-save-p as a side-effect.
2747 * buffer.h (BUF_AUTOSAVE_MODIFF): New macro.
2748 * buffer.c (Fkill_buffer, reset_buffer):
2749 * editfns.c (Fsubst_char_in_region):
2750 * fileio.c (Finsert_file_contents, Fdo_auto_save)
2751 (Fset_buffer_auto_saved, Frecent_auto_save_p): Use it.
2752
27532010-01-13 Kenichi Handa <handa@m17n.org>
2754
2755 Display buffer name, etc. in mode line by composing correctly.
2756
2757 * xdisp.c (reseat_to_string): Call composition_compute_stop_pos if
2758 STRING is not nil.
2759 (display_mode_element): Adjust for the change of
2760 decode_mode_spec and display_line.
2761 (decode_mode_spec): Change arg MULTIBYTE to STRING.
2762 (display_string): Handle the case that STRING is non-null and
2763 LISP_STRING is not nil.
2764
2765 * xterm.c (x_draw_composite_glyph_string_foreground):
2766 Pay attention to s->face->overstrike.
2767
2768 * composite.c (composition_reseat_it): Don't check PT if STRING is
2769 non nil.
2770
27712010-01-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2772
2773 * keyboard.c (read_char): Don't apply previous change when current
2774 buffer is unchanged by command execution.
2775
27762010-01-12 Jan Djärv <jan.h.d@swipnet.se>
2777
2778 * keyboard.c (read_char): Return after executing from special map.
2779
27802010-01-12 Glenn Morris <rgm@gnu.org>
2781
2782 * emacs.c (REPORT_EMACS_BUG_PRETEST_ADDRESS): Set it to
2783 bug-gnu-emacs rather than emacs-pretest-bug.
2784
27852010-01-11 Chong Yidong <cyd@stupidchicken.com>
2786
2787 * nsterm.m (syms_of_nsterm): Initialize Qcontrol etc. before
2788 initializing the Lisp variables that depend on them.
2789
27902010-01-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2791
2792 * xfns.c (x_set_menu_bar_lines) [!USE_X_TOOLKIT && !USE_GTK]:
2793 Clear areas that will not be updated after change of menu bar lines.
2794 Clear the menu bar window's current matrix when the window gets empty.
2795
27962010-01-09 Chong Yidong <cyd@stupidchicken.com>
2797
2798 * intervals.h, textprop.c (extend_property_ranges): Return value
2799 and args changed. Discard properties that begin at or after the
2800 new end (Bug#5306).
2801
2802 * editfns.c (Fformat): Caller changed.
2803
2804 * nsterm.m (ns_set_default_prefs): Delete function.
2805 (syms_of_nsterm): Initialize ns_command_modifier,
2806 ns_control_modifier, ns_function_modifier, ns_antialias_text, and
2807 ns_antialias_threshold here, not in ns_term_init (Bug#4113).
2808
2809 * xdisp.c (pos_visible_p): Check for invisible text at the correct
2810 position (Bug#4040).
2811
28122010-01-09 Eli Zaretskii <eliz@gnu.org>
2813
2814 * editfns.c (Ffloat_time): Doc fix.
2815
28162010-01-09 Jan Djärv <jan.h.d@swipnet.se>
2817
2818 * xfns.c (Fx_create_frame): Don't create frame larger than display
2819 by default bug#3643.
2820
28212010-01-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2822
2823 * frame.h (FRAME_TOP_MARGIN_HEIGHT): New macro.
2824 (FRAME_LINE_TO_PIXEL_Y, FRAME_PIXEL_Y_TO_LINE): Take account of pseudo
2825 windows above internal border.
2826
2827 * window.h (WINDOW_MENU_BAR_P, WINDOW_TOOL_BAR_P): New macros.
2828 (WINDOW_TOP_EDGE_Y, WINDOW_BOTTOM_EDGE_Y): Take account of pseudo
2829 windows above internal border.
2830
2831 * xdisp.c (get_glyph_string_clip_rects, init_glyph_string): Don't treat
2832 tool bar windows specially.
2833
2834 * xfns.c (x_set_tool_bar_lines): Take account of menu bar height.
2835
2836 * xterm.c (x_after_update_window_line): Don't treat tool bar windows
2837 specially.
2838 (XTflash): Take account of menu bar height.
2839
2840 * w32term.c (x_after_update_window_line): Don't treat tool bar windows
2841 specially.
2842
28432010-01-08 Jan Djärv <jan.h.d@swipnet.se>
2844
2845 * dispnew.c (change_frame_size_1): newwidth == FRAME_COLS (f) must
2846 also be true before we can return early (bug #5339).
2847
28482010-01-06 David Reitter <david.reitter@gmail.com>
2849
2850 * nsfns.m (ns_get_screen): Rewrite, returning NULL for non-NS.
2851 (Fns_display_usable_bounds): Rewrite, computing bounds properly
2852 (Bug#3233).
2853
28542010-01-06 Jan Djärv <jan.h.d@swipnet.se>
2855
2856 * font.c (font_open_entity): Enable chache and call cached_font_ok
2857 for the driver if defined.
2858 (QCuser_spec): New symbol.
2859 (font_spec_from_name): Save name as user-spec.
2860 (font_load_for_lface): Keep user-spec instead of name.
2861 (font_open_by_name): Save name as user-spec.
2862 (syms_of_font): Initialize QCuser_spec.
2863 (font_clear_prop): Clear name if it exists in font (bug#5157).
2864
2865 * xftfont.c (xftfont_open): Call xftfont_add_rendering_parameters.
2866 (xftfont_add_rendering_parameters, xftfont_cached_font_ok): New.
2867 (syms_of_xftfont): Initialize xftfont_driver.cached_font_ok.
2868
2869 * font.h (struct font_driver): Add cached_font_ok.
2870
2871 * xterm.c (x_clear_frame): Queue draw for scroll bars.
2872
28732010-01-05 Jan Djärv <jan.h.d@swipnet.se>
2874
2875 * xterm.c (x_new_font): Move code for setting rows/cols before
2876 resizing ...
2877 (x_set_window_size): ... to here. Bug #2568.
2878
2879 * gtkutil.c (xg_clear_under_internal_border): New function.
2880 (xg_frame_resized, xg_frame_set_char_size):
2881 Call xg_clear_under_internal_border.
2882 (xg_update_scrollbar_pos): Clear under old scroll bar position.
2883
28842010-01-05 Chong Yidong <cyd@stupidchicken.com>
2885
2886 * keyboard.c (read_key_sequence): Catch keyboard switch after
2887 making a new tty frame (Bug#5095).
2888
28892010-01-05 Kenichi Handa <handa@m17n.org>
2890
2891 * fontset.c (fontset_find_font): Fix getting the frame pointer.
2892
28932010-01-04 Stefan Monnier <monnier@iro.umontreal.ca>
2894
2895 * dbusbind.c (xd_remove_watch): Avoid trying to convert a void* to
2896 Lisp_Object, preferring to convert a lisp_Object to a void* instead.
2897 (Fdbus_init_bus): Use XHASH to get a scalar value from a Lisp_Object.
2898
28992010-01-03 Michael Albinus <michael.albinus@gmx.de>
2900
2901 * dbusbind.c (xd_add_watch): Improve debug message.
2902 (xd_remove_watch): Improve debug message. If DATA is the session
2903 bus, unset D-Bus session environment.
2904 (Fdbus_init_bus): Pass the bus as argument to
2905 dbus_connection_set_watch_functions. (Bug#5283)
2906
29072010-01-01 Chong Yidong <cyd@stupidchicken.com>
2908
2909 * nsterm.m (ns_get_color): Fix buffer overflow (Bug#4763).
2910
2911 * lread.c (syms_of_lread): Make it clearer that these are the
2912 names of loaded files (Bug#5068).
2913
2914 * eval.c (run_hook_with_args): Handle the case where the global
2915 value has the obsolete single-function form (Bug#5026).
2916
29172009-12-27 Chong Yidong <cyd@stupidchicken.com>
2918
2919 * minibuf.c (Fall_completions): Minor optimization.
2920
29212009-12-26 Eli Zaretskii <eliz@gnu.org>
2922
2923 * .gdbinit (pgx): Fix display of composite glyphs.
2924 Display cmp.from and cmp.to as well.
2925 (pitx): Fix last change.
2926
29272009-12-25 Kenichi Handa <handa@m17n.org>
2928
2929 * composite.h (composition_adjust_point): Update prototype.
2930
2931 * composite.c (composition_reseat_it): Don't make a composition
2932 spanning over point.
2933 (CHAR_COMPOSABLE_P): Treat U+200C (ZWNJ) and U+200D (ZWJ) as
2934 composable characters.
2935 (composition_adjust_point): New arg NEW_PT. Callers changed.
2936
2937 * keyboard.c (command_loop_1): Force redisplay if the last point
2938 was within a composition.
2939 (adjust_point_for_property): Don't adjust point for automatic
2940 composition when called after buffer modification.
2941
29422009-12-19 Eli Zaretskii <eliz@gnu.org>
2943
2944 * .gdbinit (pitx): Don't use enum names, use their values.
2945 Remove reference to non-existing value GET_FROM_COMPOSITION.
2946 (pgx): Don't use enum names, use their values.
2947 (pitmethod): New helper command.
2948 (pitx): Use it to display iteration method.
2949 (pgrowit): New command.
2950
2951 * makefile.w32-in ($(BLD)/cmds.$(O)): Depend on frame.h.
2952
2953 Update dependencies in Makefile.in.
2954
2955 * Makefile.in (alloc.o): Depend on termhooks.h.
2956 (atimer.o): Depend on blockinput.h.
2957 (buffer.o): Depend on indent.h, keyboard.h, coding.h, keymap.h,
2958 and frame.h.
2959 (callint.o): Depend on systime.h, coding.h, and composite.h.
2960 (callproc.o): Depend on buffer.h.
2961 (casefiddle.o): Don't depend on charset.h.
2962 (casetab.o): Depend on character.h.
2963 (ccl.o): Depend on composite.h.
2964 (chartab.o): Depend on ccl.h.
2965 (cm.o): Depend on dispextern.h.
2966 (cmds.o): Depend on systime.h, coding.h, frame.h, and composite.h.
2967 (coding.o): Don't depend on $(INTERVALS_H).
2968 (composite.o): Don't depend on dispextern.h explicitly (it's in
2969 $(INTERVALS_H)). Depend on ccl.h.
2970 (data.o): Depend on systime.h, coding.h, composite.h,
2971 dispextern.h, font.h, and ccl.h.
2972 (dired.o): Depend on composite.h.
2973 (dispnew.o): Depend on coding.h. Don't depend explicitly on
2974 composite.h (it's in $(INTERVALS_H)).
2975 (doc.o): Depend on systime.h, coding.h, and composite.h.
2976 (editfns.o): Don't depend explicitly on dispextern.h.
2977 (emacs.o): Depend on frame.h and coding.h.
2978 (eval.o): Depend on coding.h, composite.h, and xterm.h.
2979 (fileio.o): Depend on frame.h and commands.h. Don't depend
2980 explicitly on dispextern.h.
2981 (filelock.o): Don't depend on epaths.h and charset.h. Depend on
2982 composite.h.
2983 (fns.o): Don't depend on termhooks.h.
2984 (font.o): Depend on buffer.h, composite.h, fontset.h, and xterm.h.
2985 (fontset.o): Depend on blockinput.h, atimer.h, systime.h,
2986 coding.h, $(INTERVALS_H), window.h, xterm.h.
2987 (frame.o): Depend on coding.h, composite.h, termhooks.h, and ccl.h.
2988 (fringe.o): Depend on blockinput.h, atimer.h, and systime.h.
2989 (ftfont.o): Depend on blockinput.h, atimer.h, systime.h, coding.h,
2990 fontset.h, ccl.h, and ftfont.h.
2991 (ftxfont.o): Depend on atimer.h, systime.h, fontset.h, and ccl.h.
2992 (gtkutil.o): Depend on dispextern.h and composite.h.
2993 (image.o): Depend on epaths.h, character.h, coding.h, composite.h,
2994 termhooks.h, and ccl.h.
2995 (indent.o): Depend on systime.h, coding.h, and $(INTERVALS_H).
2996 (intervals.o): Depend on systime.h and coding.h.
2997 (keyboard.o): Depend on composite.h and coding.h.
2998 (keymap.o): Depend on coding.h and frame.h.
2999 (lread.o): Depend on systime.h, frame.h, blockinput.h, and atimer.h.
3000 (macros.o): Depend on systime.h, coding.h, and composite.h.
3001 (menu.o): Depend on systime.h, coding.h, composite.h, window.h,
3002 and atimer.h.
3003 (minibuf.o): Depend on systime.h and coding.h. Don't depend on
3004 dispextern.h explicitly.
3005 (print.o): Depend on termhooks.h, coding.h, and ccl.h.
3006 Don't depend explicitly on dispextern.h and composite.h.
3007 (process.o): Depend on character.h, xgselect.h, and sysselect.h.
3008 (regex.o): Don't depend on charset.h.
3009 (scroll.o): Depend on systime.h, coding.h, composite.h, and window.h.
3010 (search.o): Don't depend explicitly on composite.h.
3011 (sound.o): Depend on atimer.h and systime.h.
3012 (syntax.o): Don't depend explicitly on composite.h.
3013 (sysdep.o): Depend on coding.h and composite.h.
3014 (term.o): Depend on xterm.h and buffer.h.
3015 (terminal.o): Depend on dispextern.h, composite.h, and systime.h.
3016 (textprop.o): Don't depend on dispextern.h explicitly.
3017 (undo.o): Depend on dispextern.h.
3018 (window.o): Depend on coding.h and termhooks.h. Don't depend on
3019 dispextern.h and composite.h explicitly.
3020 (xdisp.o): Depend on ccl.h.
3021 (xfaces.o): Depend on coding.h and ccl.h.
3022 (xfns.o): Depend on $(INTERVALS_H) and ccl.h.
3023 (xfont.o): Depend on atimer.h, systime.h, fontset.h, and ccl.h.
3024 (xftfont.o): Depend on atimer.h, systime.h, fontset.h, ccl.h, and
3025 ftfont.h.
3026 (xgselect.o): New dependency.
3027 (xmenu.o): Depend on composite.h, keymap.h, and sysselect.h.
3028 (xselect.o): Depend on keyboard.h, coding.h, and composite.h.
3029 (xsettings.o): Depend on dispextern.h, keyboard.h, systime.h,
3030 coding.h, composite.h, blockinput.h, atimer.h, and termopts.h.
3031 (xsmfns.o): Depend on frame.h and dispextern.h.
3032 (xterm.o): Depend on intervals.h, keymap.h, xgselect.h, and
3033 sysselect.h.
3034
30352009-12-19 Andreas Schwab <schwab@linux-m68k.org>
3036
3037 * font.c (Fclear_font_cache): Pass correct cache argument to
3038 font_clear_cache.
3039
30402009-12-16 Andreas Schwab <schwab@linux-m68k.org>
3041
3042 * Makefile.in (prefix-args${EXEEXT}): Don't compile prefix-args.c
3043 twice.
3044
30452009-12-15 Chong Yidong <cyd@stupidchicken.com>
3046
3047 * xdisp.c (decode_mode_spec): Inhibit garbage collection when
3048 calling file-remote-p. Reported by Jim Meyering.
3049
30502009-12-15 Michael Albinus <michael.albinus@gmx.de>
3051
3052 * dbusbind.c (xd_retrieve_arg): Reorder declarations in order to
3053 avoid compiler warnings. (Bug #5217)
3054
30552009-12-14 Kenichi Handa <handa@m17n.org>
3056
3057 * coding.c (decode_coding_iso_2022): Ignore ISO_CODE_SS2_7 (0x19)
3058 in 8-bit encoding.
3059
30602009-12-13 Pat Thoyts <patthoyts@users.sourceforge.net> (tiny change)
3061
3062 * xfns.c (x_create_tip_frame): Set the extended window manager hint for
3063 tooltip windows.
3064
30652009-12-13 Jan Djärv <jan.h.d@swipnet.se>
3066
3067 * xterm.h (struct x_display_info): Add Xatom_net_window_type_tooltip and
3068 Xatom_net_window_type.
3069
3070 * xterm.c (x_term_init): Initialize Xatom_net_window_type_tooltip and
3071 Xatom_net_window_type.
3072
3073 * xterm.c (my_log_handler): New function.
3074 (x_term_init): Set my_log_handler as log handler during gtk_init
3075 so we can filter out buggy messages. (Bug #5120).
3076
3077 * xterm.c (xg_scroll_callback): Parameter list changed,
3078 use parameter GtkScrollType to determine scroll/line/page.
3079 Only allow dragging if a button < 4 is grabbed (bug #5177).
3080 (xg_end_scroll_callback): New function.
3081 (x_create_toolkit_scroll_bar): Pass xg_end_scroll_callback to
3082 xg_create_scroll_bar.
3083
3084 * gtkutil.c (xg_gtk_scroll_destroy): Remove XG_LAST_SB_DATA handling.
3085 (scroll_end_callback): Remove.
3086 (xg_create_scroll_bar): Add parameter end_callback, bind it to
3087 button-release-event. Replace value-changed event with change-value,
3088 bug #5177,
3089 (xg_event_is_for_scrollbar): Only return true if button is less than 4,
3090 bug #5177.
3091
3092 * gtkutil.h (XG_LAST_SB_DATA): Remove.
3093 (xg_create_scroll_bar): Add GCallback end_callback.
3094
3095 * xftfont.c (QClcdfilter): New variable.
3096 (xftfont_open): Parse constant names for RGBA, HINT_STYLE and LCDFILTER.
3097 (syms_of_xftfont): Initialize QClcdfilter.
3098
30992009-12-12 Jan Djärv <jan.h.d@swipnet.se>
3100
3101 * xsettings.c (struct xsettings): Add member seen.
3102 (parse_xft_settings): Update member seen with what we have read.
3103 Return non-zero if Xft-settings have been parsed, 0 otherwise.
3104 (apply_xft_settings): Only update Xft settings with what member seen
3105 indicates as new.
3106
31072009-12-12 Eli Zaretskii <eliz@gnu.org>
3108
3109 * dispextern.h (struct text_pos): Use EMACS_INT;
3110 (struct glyph): Use EMACS_INT for charpos.
3111 (struct it): Use EMACS_INT for stop_charpos, end_charpos,
3112 region_beg_charpos, region_end_charpos,
3113 redisplay_end_trigger_charpos, and also for
3114 iterator_stack_entry.end_charpos and
3115 iterator_stack_entry.stop_charpos.
3116
31172009-12-12 Jan Djärv <jan.h.d@swipnet.se>
3118
3119 * gtkutil.c (scroll_end_callback): New function (bug #5177).
3120 (xg_create_scroll_bar): Call scroll_end_callback on button release
3121 event (bug #5177).
3122 (xg_event_is_for_scrollbar): != replaced with ==.
3123
31242009-12-12 Kenichi Handa <handa@m17n.org>
3125
3126 * ftfont.c (struct ftfont_info): New member matrix.
3127 (ftfont_open): Setup xftfont_info->matrix.
3128 (MFLTFontFT): New member matrix.
3129 (FLOOR, CEIL, ROUND): New macros.
3130 (ftfont_get_metrics): Handle matrix transformation.
3131 (ftfont_shape_by_flt): New arg matrix. Callers changed.
3132
3133 * xftfont.c (struct xftfont_info): New member matrix.
3134 (xftfont_open): Setup xftfont_info->matrix.
3135
31362009-12-10 Kenichi Handa <handa@m17n.org>
3137
3138 * xdisp.c (append_space_for_newline): Consider face-remapping.
3139
31402009-12-09 Andreas Schwab <schwab@linux-m68k.org>
3141
3142 * xsettings.c: Include "keyboard.h".
3143
3144 * gtkutil.c (xg_tool_bar_proxy_help_callback): Fix missing return.
3145
3146 Fix implicit function declarations.
3147 * cmds.c: Include "frame.h".
3148 * frame.c: Include "font.h" also if !HAVE_WINDOW_SYSTEM.
3149 * frame.h: Move declaration of delete_frame outside of
3150 HAVE_WINDOW_SYSTEM.
3151
31522009-12-09 Ken Brown <kbrown@cornell.edu> (tiny change)
3153
3154 * s/cygwin.h (G_SLICE_ALWAYS_MALLOC): New variable.
3155
3156 * emacs.c (main): Set the G_SLICE environment variable for Cygwin
3157 GTK builds.
3158
31592009-12-07 Andreas Schwab <schwab@linux-m68k.org>
3160
3161 * unexelf.c (unexec): Don't search for .data twice.
3162
31632009-12-05 Chong Yidong <cyd@stupidchicken.com>
3164
3165 * xdisp.c (push_display_prop): Don't set avoid_cursor_p. Return 0
3166 if push failed.
3167 (handle_line_prefix): Set avoid_cursor_p here. Check return value
3168 of push_display_prop (Bug#5000).
3169
3170 * xfaces.c (Fx_family_fonts): Handle 2009-07-14 change to return
3171 value of font_list_entities (Bug#5085).
3172
31732009-12-04 Juanma Barranquero <lekktu@gmail.com>
3174
3175 Fix `string-to-number' to deal consistently with integers and floats.
3176 * lread.c (isfloat_string): New argument ignore_trailing to accept all
3177 trailing characters, not just whitespace.
3178 (read1): Pass new arg 0 to keep old behavior.
3179 * data.c (Fstring_to_number): Pass 1 to isfloat_string to ignore
3180 trailing chars, as it is already done for integers. Doc fixes.
3181 * lisp.h (isfloat_string): Add new arg to declaration of isfloat_string.
3182
31832009-12-04 Eli Zaretskii <eliz@gnu.org>
3184
3185 * dispextern.h (enum prop_idx) <AUTO_COMPOSED_PROP_IDX>:
3186 Delete unused enumeration value.
3187
31882009-12-03 Eli Zaretskii <eliz@gnu.org>
3189
3190 * Makefile.in (lisp, shortlisp): Replace indian.el with indian.elc.
3191
31922009-12-03 Daniel Hackney <dan@haxney.org> (tiny change)
3193
3194 * process.c (Fmake_network_process): Fix up the tests for
3195 "connectionless socket", so they DTRT for seqpacket sockets as well.
3196
31972009-12-03 Stefan Monnier <monnier@iro.umontreal.ca>
3198
3199 * process.c (Qseqpacket): New symbol.
3200 (HAVE_SEQPACKET): New macro.
3201 (Fmake_network_process): Accept new :type `seqpacket'.
3202 (init_process): Add `seqpacket' feature when applicable.
3203 (syms_of_process): Initialize Qseqpacket.
3204
32052009-12-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3206
3207 * font.c (font_load_for_lface, font_open_by_name): Don't store name
3208 if entity is Qnil.
3209
32102009-11-30 Stefan Monnier <monnier@iro.umontreal.ca>
3211
3212 * print.c (print_preprocess): Preprocess the key_and_value table of
3213 hashtables, even tho they're "hidden" (bug#5082).
3214
32152009-11-29 Jan Djärv <jan.h.d@swipnet.se>
3216
3217 * frame.c (frame_make_pointer_invisible)
3218 (frame_make_pointer_visible): Declare f before statements.
3219
32202009-11-28 Eli Zaretskii <eliz@gnu.org>
3221
3222 * Makefile.in [!AUTO_DEPEND]: Remove outdated comment about
3223 omitted dependencies on lisp.h.
3224
32252009-11-27 Jan Djärv <jan.h.d@swipnet.se>
3226
3227 * xftfont.c (xftfont_end_for_frame): Just return if dpyinfo->display
3228 is NULL.
3229
3230 * xterm.c (x_delete_terminal): Set dpyinfo->display to NULL.
3231
3232 * frame.c (frame_make_pointer_invisible)
3233 (frame_make_pointer_visible): Just return if there isn't any selected
3234 frame.
3235
3236 * search.c (simple_search): Remove warning by making *p const.
3237
32382009-11-26 Dan Nicolaescu <dann@ics.uci.edu>
3239
3240 * xdisp.c (power_letter): Remove duplicate const.
3241
32422009-11-25 Jan Djärv <jan.h.d@swipnet.se>
3243
3244 * term.c (delete_tty): Remove check for last terminal (bug#4970).
3245
3246 * xsettings.c: Revert changes from 2009-11-23. Just use Xft
3247 defaults (bug #5025).
3248
32492009-11-24 Stefan Monnier <monnier@iro.umontreal.ca>
3250
3251 * insdel.c (adjust_markers_for_delete): Move it in the
3252 right direction! (bug#4803)
3253
32542009-11-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3255
3256 * font.c (font_open_entity): Don't use ASET if font_object is Qnil.
3257
3258 * xterm.c (x_new_font): Update f->scroll_bar_actual_width.
3259
32602009-11-24 Glenn Morris <rgm@gnu.org>
3261
3262 * frame.c (focus-follows-mouse): Mention mouse-autoselect-window.
3263
32642009-11-23 Jan Djärv <jan.h.d@swipnet.se>
3265
3266 * Makefile.in: Must create deps for ecrt0.o in its rule.
3267
3268 * xfns.c (Fx_select_font): Try to convert Fontconfig name to Gtk name
3269 because that is what Gtk+ font dialog understands.
3270
3271 * font.c (font_make_object, Fcopy_font_spec): Use Fcopy_alist instead
3272 of Fcopy_sequence.
3273 (font_open_by_name): Put name given into QCname for font-object returned.
3274
3275 * frame.c (x_set_font): Save original font name as frame parameter
3276 font-parameter.
3277
3278 * xsettings.c (set_default_xft_settings): New function.
3279 (init_xfd_settings): Call set_default_xft_settings if no XSETTINGS window
3280 is found.
3281
32822009-11-22 Andreas Schwab <schwab@linux-m68k.org>
3283
3284 * search.c (simple_search): Avoid CHAR_TO_BYTE in inner loop when
3285 searching backwards through multibyte buffer.
3286
32872009-11-21 Jan Djärv <jan.h.d@swipnet.se>
3288
3289 * xterm.c: #include xgselect.h.
3290 (x_initialize): Call xgselect_initialize.
3291
3292 * xsettings.c (something_changedCB): C++ comments => C comments.
3293 (init_gconf): Do not deal with any GLib file descriptors, xg_select
3294 does that now.
3295
3296 * gtkutil.c (xg_timer, xg_process_timeouts, xg_start_timer)
3297 (xg_stop_timer, menu_grab_callback_cnt, menu_grab_callback)
3298 (scroll_bar_button_cb): Remove.
3299 (create_menus): C++ comments => C comments. Don't bind grab-notify
3300 event.
3301 (xg_create_scroll_bar): Don't bind button-press-event and
3302 button-release-event.
3303
3304 * process.c: Include xgselect.h if defined (USE_GTK) ||
3305 defined (HAVE_GCONF).
3306 (wait_reading_process_output): Call xg_select for the same condition.
3307
3308 * xgselect.c (xg_select): New function to better integrate with
3309 GLib/Gtk event handling. Needed if GConf daemon dies/restarts.
3310
3311 * xgselect.h: New file, declare xg_select, xgselect_initialize.
3312
3313 * Makefile.in (XOBJ): Add xgselect.o.
3314
33152009-11-21 Andreas Schwab <schwab@linux-m68k.org>
3316
3317 * character.h (STRING_CHAR, STRING_CHAR_AND_LENGTH):
3318 Remove ignored second argument. All callers changed.
3319 * regex.c (STRING_CHAR, STRING_CHAR_AND_LENGTH, RE_STRING_CHAR)
3320 (RE_STRING_CHAR_AND_LENGTH): Likewise.
3321 * xdisp.c (string_char_and_length): Likewise.
3322
33232009-11-21 Dan Nicolaescu <dann@ics.uci.edu>
3324
3325 * xterm.c (x_new_font):
3326 * print.c (print_object):
3327 * cmds.c (Fself_insert_command): Move declarations before statements.
3328
33292009-11-20 Ken Brown <kbrown@cornell.edu> (tiny change)
3330
3331 * s/cygwin.h: Remove unneeded linker flags.
3332
33332009-11-20 Jan Djärv <jan.h.d@swipnet.se>
3334
3335 * xfns.c (x_default_font_parameter): Call xsettings_get_system_font.
3336
3337 * xsettings.h: Declare xsettings_get_system_font.
3338
3339 * xsettings.c (xsettings_get_system_font): New function.
3340 (init_gconf): No use initiating gconf unless we have Xft also.
3341 (syms_of_xsettings): Only provide system-font-setting if HAVE_XFT and
3342 HAVE_GCONF.
3343
3344 * gtkutil.c (xg_modify_menubar_widgets): If menubar is totally empty
3345 add a blank entry so it doesn't collapse into nothing.
3346
33472009-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
3348
3349 * lread.c (Funintern): Comment out last change.
3350
33512009-11-19 Richard Stallman <rms@gnu.org>
3352
3353 * lread.c (Funintern): Error if symbol is t or nil.
3354
33552009-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
3356
3357 * insdel.c (make_gap_larger): Don't make as many assumptions about the
3358 representation of Lisp integers.
3359 Reported by MJ Chan <mjchan.inbox@gmail.com>.
3360
33612009-11-17 Andreas Schwab <schwab@linux-m68k.org>
3362
3363 * lisp.h: Remove declaration of Ffont_get_system_font.
3364 * xfns.c: Move include of "xsettings.h".
3365 * xsettings.h: Use EXFUN to declare Ffont_get_system_font.
3366
33672009-11-17 Jan Djärv <jan.h.d@swipnet.se>
3368
3369 * xsettings.c (something_changedCB, Ffont_get_system_font):
3370 Check use_system_font.
3371 (syms_of_xsettings): DEFVAR font-use-system-font.
3372
33732009-11-17 Andreas Schwab <schwab@linux-m68k.org>
3374
3375 * xfns.c (x_default_font_parameter): Remove dead assignment.
3376
3377 * lisp.h (Fbyteorder, init_font, Ffont_get_system_font): Declare.
3378
33792009-11-17 Jan Djärv <jan.h.d@swipnet.se>
3380
3381 * xftfont.c (xftfont_fix_match): Older versions of fontconfig do
3382 not have FC_LCD_*. #define them if not there.
3383
3384 * xsettings.c (parse_xft_settings, apply_xft_settings): Ditto.
3385
3386 * xterm.h (struct x_display_info): Add atoms and Window for xsettings.
3387
3388 * xterm.c (handle_one_xevent): Call xft_settings_event for
3389 ClientMessage, PropertyNotify and DestroyNotify.
3390 (x_term_init): If we have XFT, get DPI from Xft.dpi.
3391 Call xsettings_initialize.
3392
3393 * xftfont.c (xftfont_fix_match): New function.
3394 (xftfont_open): Call XftDefaultSubstitute before XftFontMatch.
3395 Call xftfont_fix_match after XftFontMatch.
3396
3397 * xfont.c (xfont_driver): Initialize all members.
3398
3399 * xfns.c (x_default_font_parameter):
3400 Try font from Ffont_get_system_font.
3401 Do not get font from x_default_parameter if we got one from
3402 Ffont_get_system_font.
3403 (Fx_select_font): Get the defaut font name from :name of FRAME_FONT(f).
3404
3405 * w32font.c (w32font_driver): Initialize all members.
3406
3407 * termhooks.h (enum event_kind): CONFIG_CHANGED_EVENT is new.
3408
3409 * lisp.h: Declare syms_of_xsettings.
3410
3411 * keyboard.c (kbd_buffer_get_event, make_lispy_event):
3412 Handle CONFIG_CHANGED_EVENT.
3413
3414 * ftfont.c (ftfont_filter_properties): New function.
3415
3416 * frame.c (x_set_font): Remove unused variable lval.
3417
3418 * font.h (struct font_driver): Add filter_properties.
3419
3420 * font.c (font_put_extra): Don't return if val is nil, it means
3421 boolean option is off.
3422 (font_parse_fcname): Collect all extra properties in extra_props
3423 and call filter_properties for all drivers with extra_props and
3424 font as parameter.
3425 (font_open_entity): Do not use cache, it does not pick up new
3426 fontconfig settings like hinting.
3427 (font_load_for_lface): If spec had a name in it, store it in entity.
3428
3429 * emacs.c (main): Call syms_of_xsettings.
3430
3431 * config.in: HAVE_GCONF is new.
3432
3433 * Makefile.in (GCONF_CFLAGS, GCONF_LIBS): New variables for HAVE_GCONF.
3434 xsettings.o is new.
3435
34362009-11-17 Kenichi Handa <handa@m17n.org>
3437
3438 * xdisp.c (x_produce_glyphs): Consider face-remapping when falling
3439 back to the default font in case that no suitable font is found.
3440
34412009-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
3442
3443 * menu.c (Fx_popup_menu) [HAVE_NS]: Use generic code for window edge.
3444 Suggested by Chad Brown <yandros@mit.edu>.
3445 (push_menu_item): Use MENU_ITEMS_ITEM_* names.
3446
34472009-11-16 Jan Djärv <jan.h.d@swipnet.se>
3448
3449 * xmenu.c (x_menu_wait_for_event): Call XFlush before select.
3450
34512009-11-14 Andreas Schwab <schwab@linux-m68k.org>
3452
3453 * Makefile.in: Ignore errors from mkdir when creating deps directory.
3454
34552009-11-14 Jan Djärv <jan.h.d@swipnet.se>
3456
3457 * gtkutil.c (xg_update_frame_menubar): Do nothing if menubar already
3458 has a parent.
3459
3460 * Makefile.in: If AUTO_DEPEND is defined, make gcc generate
3461 dependency files in deps/. Include those files into Makefile.
3462
3463 * config.in: Generated (AUTO_DEPEND).
3464
34652009-11-13 Michael Albinus <michael.albinus@gmx.de>
3466
3467 * dbusbind.c (Vdbus_registered_objects_table): Rename from
3468 Vdbus_registered_functions_table, because it contains also
3469 properties. Fix docstring.
3470 (Fdbus_call_method, Fdbus_call_method_asynchronously): Fix docstring.
3471
34722009-11-13 Stefan Monnier <monnier@iro.umontreal.ca>
3473
3474 * alloc.c (mark_object): Don't reprocess marked strings.
3475 Check vector's markbit earlier. Adjust calls to mark_vectorlike.
3476 (mark_vectorlike, mark_char_table): Assume the object is unmarked.
3477
34782009-11-13 Kenichi Handa <handa@m17n.org>
3479
3480 * category.c (word_boundary_p): Adjust for the change of the
3481 semantics of Vword_combining_categories.
3482 (Vword_combining_categories): Describe the slight change of the
3483 semantics.
3484
34852009-11-13 Eli Zaretskii <eliz@gnu.org>
3486
3487 * menu.c (Fx_popup_menu): Call Fx_hide_tip only if HAVE_WINDOW_SYSTEM.
3488
3489 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Revert last change.
3490
34912009-11-12 Stefan Monnier <monnier@iro.umontreal.ca>
3492
3493 * xdisp.c (syms_of_xdisp): Fix typo in last change.
3494
34952009-11-12 Juanma Barranquero <lekktu@gmail.com>
3496
3497 * makefile.w32-in: Update dependencies; add dependencies to lisp.h.
3498
34992009-11-11 David Reitter <david.reitter@gmail.com>
3500
3501 * menu.c (Fx_popup_menu): Remove left-over debugging code and rename
3502 variables to fix 2009-11-09 change.
3503
35042009-11-11 Dan Nicolaescu <dann@ics.uci.edu>
3505
3506 * process.c (ifflag_def): Make flag_sym constant.
3507 (Fnetwork_interface_info): Use a constant pointer.
3508 (ifflag_table):
3509 * xfns.c (cursor_bits):
3510 * xdisp.c (power_letter):
3511 * termcap.c (speeds, esctab):
3512 * sysdep.c (baud_convert):
3513 * keyboard.c (lispy_accent_codes, modifier_names):
3514 * image.c (xbm_format, xpm_format, pbm_format, png_format)
3515 (jpeg_format, tiff_format, gif_format, svg_format)
3516 (interlace_start, interlace_increment, gs_format):
3517 * gtkutil.c (separator_names):
3518 * fringe.c (swap_nibble):
3519 * fns.c (base64_value_to_char, base64_char_to_value):
3520 * fileio.c (make_temp_name_tbl):
3521 * coding.c (suffixes): Make constant.
3522
3523 * frame.c (make_initial_frame):
3524 * buffer.c (init_buffer_once): Use make_pure_c_string instead of
3525 build_string.
3526 * alloc.c (syms_of_alloc): Build Vmemory_signal_data in pure memory.
3527
3528 * s/freebsd.h:
3529 * s/netbsd.h: Remove code referring to non-existent file: unexsunos4.o.
3530
3531 * Makefile.in: Add dependencies to lisp.h. Remove dependencies
3532 for non-existent files: unexmips.c, unexnext.c, abbrev.c, malloc.c.
3533
3534 * xfns.c (syms_of_xfns): Use make_pure_string instead of build_string.
3535 * xterm.c (syms_of_xterm):
3536 * xfaces.c (syms_of_xfaces):
3537 * xdisp.c (syms_of_xdisp):
3538 * lread.c (syms_of_lread):
3539 * keyboard.c (syms_of_keyboard): Use make_pure_c_string instead of
3540 build_string.
3541
3542 * doc.c (Fsnarf_documentation): Purecopy Vbuild_files.
3543
35442009-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
3545
3546 * fns.c (Fplist_get): Merge the active and the commented out code.
3547
35482009-11-10 Jan Djärv <jan.h.d@swipnet.se>
3549
3550 * keyboard.h: Declare timer_check.
3551
3552 * keyboard.c (timer_check_2): New function that does what the old
3553 timer_check did.
3554 (timer_check): Call timer_check_2 until -1 or a non-zero time is
3555 returned, i.e. don't return -1 with timers pending.
3556
3557 * process.c: Remove extern declaration of timer_check.
3558
3559 * xmenu.c (x_menu_wait_for_event): Remove code that did a timeout
3560 even if timer_check returned -1.
3561
3562 * gtkutil.c (xg_dialog_response_cb): Data is now a struct
3563 xg_dialog_data.
3564 (pop_down_dialog): Destroy widget (if any), cancel timer and unref
3565 the event loop.
3566 (xg_maybe_add_timer, xg_dialog_run): New functions (bug #4574).
3567 (xg_get_file_name, xg_get_font_name): Call xg_dialog_run (bug #4574).
3568 Destroy the dialog after xg_dialog_run.
3569
35702009-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
3571
3572 * menu.c (Fx_popup_menu) [HAVE_NS]: Remove unused vars.
3573
35742009-11-10 Jan Djärv <jan.h.d@swipnet.se>
3575
3576 * xmenu.c (xmenu_show): Must not be static after 2009-11-09 changes.
3577
35782009-11-09 Juanma Barranquero <lekktu@gmail.com>
3579
3580 * menu.c [HAVE_NTGUI]: Declare current_popup_menu.
3581
35822009-11-09 Stefan Monnier <monnier@iro.umontreal.ca>
3583
3584 * menu.c (Fx_popup_menu): Consolidate versions from xmenu.c,
3585 w32menu.c, and nsmenu.m.
3586 Simplify the obsolete case where position is nil.
3587 (cleanup_popup_menu): New function, moved from nsmenu.m.
3588 (struct skp): Remove slot `notreal'.
3589 (single_keymap_panes, keymap_panes): Remove arg `notreal' and
3590 adjust callers.
3591 (single_menu_item): Adjust call to parse_menu_item.
3592 (syms_of_menu): Defsubr x-popup-menu.
3593 * menu.h (Vmenu_updating_frame): Consolidate declarations from *menu.c.
3594 (keymap_panes): Don't export any more.
3595 (mouse_position_for_popup, w32_menu_show, ns_menu_show)
3596 (xmenu_show): Declare.
3597 * keyboard.c (parse_menu_item): Remove arg `notreal'.
3598 (menu_bar_item, read_char_minibuf_menu_prompt): Adjust callers.
3599 * keyboard.h (parse_menu_item): Update declaration.
3600 * xmenu.c (Fx_popup_menu): Remove.
3601 (syms_of_xmenu): Don't defsubr x-popup-menu.
3602 * w32menu.c (Fx_popup_menu): Remove.
3603 (syms_of_w32menu): Don't defsubr x-popup-menu.
3604 * nsmenu.m (cleanup_popup_menu): Remove.
3605 (ns_menu_show): Rename from ns_popup_menu and remove all the code
3606 moved to menu.c's Fx_popup_menu.
3607 (Fx_popup_menu): Remove.
3608 (syms_of_nsmenu): Don't defsubr x-popup-menu, and don't initialize
3609 menu_items (it's done in menu.c already).
3610
36112009-11-08 Stefan Monnier <monnier@iro.umontreal.ca>
3612
3613 * keyboard.c (parse_menu_item): Handle `notreal' a bit earlier.
3614 Use `tem' less. Make sure KEYEQ holds a string or nil (bug#4879).
3615
36162009-11-08 Chong Yidong <cyd@stupidchicken.com>
3617
3618 * xmenu.c (Fx_popup_menu): Extract event timestamp. Pass it to
3619 xmenu_show. Hide any tooltip before opening a menu.
3620 (xmenu_show): New arg. Pass it to create_and_show_popup_menu.
3621 (create_and_show_popup_menu): New arg. Pass it to gtk_menu_popup.
3622
36232009-11-06 Stefan Monnier <monnier@iro.umontreal.ca>
3624
3625 Let integers use up 2 tags to give them one extra bit and thus double
3626 their range.
3627 * lisp.h (USE_2_TAGS_FOR_INTS): New macro.
3628 (LISP_INT_TAG, case_Lisp_Int, LISP_STRING_TAG, LISP_INT_TAG_P):
3629 New macros.
3630 (enum Lisp_Type): Use them. Give explicit values.
3631 (Lisp_Type_Limit): Remove.
3632 (XINT, XUINT, make_number) [!USE_LISP_UNION_TYPE]:
3633 (MOST_NEGATIVE_FIXNUM, MOST_POSITIVE_FIXNUM, INTMASK):
3634 Pay attention to USE_2_TAGS_FOR_INTS.
3635 (INTEGERP): Use LISP_INT_TAG_P.
3636 * fns.c (internal_equal): Simplify the default case.
3637 (sxhash): Use case_Lisp_Int.
3638 * data.c (wrong_type_argument): Don't check against Lisp_Type_Limit
3639 any more.
3640 (Ftype_of): Use case_Lisp_Int.
3641 (store_symval_forwarding): Take into account the fact that Ints can
3642 now have more than one tag.
3643 * buffer.c (syms_of_buffer): Use LISP_INT_TAG.
3644 buffer_slot_type_mismatch):
3645 * xfaces.c (face_attr_equal_p):
3646 * print.c (print_object):
3647 * alloc.c (mark_maybe_object, mark_object, survives_gc_p):
3648 Use case_Lisp_Int.
3649
36502009-11-06 Eli Zaretskii <eliz@gnu.org>
3651
3652 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce by further 30K.
3653
3654 * alloc.c (make_pure_c_string): Fix last change to avoid compiler
3655 warning.
3656
36572009-11-06 Jan Djärv <jan.h.d@swipnet.se>
3658
3659 * gtkutil.c (xg_event_is_for_scrollbar): New function (bug#4870).
3660
3661 * gtkutil.h: Declare xg_event_is_for_scrollbar (bug#4870).
3662
3663 * xterm.c (handle_one_xevent): Call xg_event_is_for_scrollbar for
3664 ButtonPressRelease and MotionNotify (bug#4870).
3665
36662009-11-06 Dan Nicolaescu <dann@ics.uci.edu>
3667
3668 * keymap.c (syms_of_keymap): Construct exclude_keys in pure memory.
3669
3670 * xterm.c (syms_of_xterm):
3671 * xselect.c (syms_of_xselect):
3672 * xmenu.c (syms_of_xmenu):
3673 * xfns.c (syms_of_xfns):
3674 * xfaces.c (syms_of_xfaces):
3675 * xdisp.c (syms_of_xdisp):
3676 * window.c (syms_of_window):
3677 * w32fns.c (syms_of_w32fns):
3678 * undo.c (syms_of_undo):
3679 * textprop.c (syms_of_textprop):
3680 * terminal.c (syms_of_terminal):
3681 * syntax.c (syms_of_syntax):
3682 * sound.c (syms_of_sound):
3683 * search.c (syms_of_search):
3684 * print.c (syms_of_print):
3685 * minibuf.c (syms_of_minibuf):
3686 * macros.c (syms_of_macros):
3687 * keymap.c (syms_of_keymap, initial_define_key)
3688 (initial_define_lispy_key):
3689 * keyboard.c (syms_of_keyboard):
3690 * insdel.c (syms_of_insdel):
3691 * image.c (syms_of_image):
3692 * fringe.c (syms_of_fringe):
3693 * frame.c (syms_of_frame):
3694 * fontset.c (syms_of_fontset):
3695 * fns.c (syms_of_fns):
3696 * fns.c (syms_of_fns):
3697 * fileio.c (syms_of_fileio):
3698 * fileio.c (syms_of_fileio):
3699 * eval.c (syms_of_eval):
3700 * doc.c (syms_of_doc):
3701 * dispnew.c (syms_of_display):
3702 * dired.c (syms_of_dired):
3703 * dbusbind.c (syms_of_dbusbind):
3704 * data.c (syms_of_data):
3705 * composite.c (syms_of_composite):
3706 * coding.c (syms_of_coding):
3707 * cmds.c (syms_of_cmds):
3708 * charset.c (define_charset_internal, syms_of_character):
3709 * ccl.c (syms_of_ccl):
3710 * category.c (syms_of_category, init_category_once):
3711 * casetab.c (syms_of_casetab):
3712 * casefiddle.c (syms_of_casefiddle):
3713 * callint.c (syms_of_callint):
3714 * bytecode.c (syms_of_bytecode):
3715 * buffer.c (keys_of_buffer, syms_of_buffer):
3716 * alloc.c (syms_of_alloc):
3717 * process.c (syms_of_process, init_process):
3718 * lread.c (syms_of_lread, init_obarray):
3719 * font.c (build_style_table):
3720 * emacs.c (syms_of_emacs, main): Replace calls to intern with
3721 intern_c_string, calls to make_pure_string with
3722 make_pure_c_string. Use pure_cons instead of Fcons.
3723
3724 * process.c (socket_options): Make it const.
3725 (set_socket_option, init_process): Use a const pointer.
3726
3727 * lread.c (intern_c_string): New function.
3728 (defvar_kboard, defvar_lisp, defvar_lisp_nopro, defvar_bool)
3729 (defvar_int): Uset it. Make the name const char*.
3730
3731 * lisp.h (defvar_kboard, defvar_lisp, defvar_lisp_nopro, defvar_bool)
3732 (defvar_int): Update prototypes.
3733 (DEFUN, EXFUN): Support for prototypes is now required.
3734 (intern_c_string): New prototype.
3735 (struct Lisp_Subr): Make symbol_name constant.
3736
3737 * font.c (struct table_entry): Remove unused member. Make NAMES
3738 constant.
3739 (weight_table, slant_table, width_table): Make constant.
3740
3741 * emacs.c (struct standard_args): Make name and longname constant.
3742
3743 * character.h (DEFSYM): Use intern_c_string.
3744
37452009-11-06 Stefan Monnier <monnier@iro.umontreal.ca>
3746
3747 * alloc.c (make_pure_c_string): New function.
3748
3749 * eval.c (Fautoload): Purecopy all arguments.
3750
37512009-11-05 Kenichi Handa <handa@m17n.org>
3752
3753 * fileio.c (Finsert_file_contents): Be sure set coding-system of
3754 the buffer in case of replace.
3755
37562009-11-04 Dan Nicolaescu <dann@ics.uci.edu>
3757
3758 * puresize.h (BASE_PURESIZE): Increase to 1620000.
3759
37602009-11-03 Stefan Monnier <monnier@iro.umontreal.ca>
3761
3762 * editfns.c (save_restriction_restore): Update the (pt/begv/vz)_markers
3763 when applicable (bug#4851).
3764
3765 * lisp.h: Make USE_LSB_TAG work with USE_LISP_UNION_TYPE.
3766 (P_): Support for prototypes is now required.
3767
37682009-10-31 Chong Yidong <cyd@stupidchicken.com>
3769
3770 * frame.c (Fmake_frame_invisible, Fframe_visible_p): Doc fix
3771 (Bug#4827).
3772
37732009-10-30 Eli Zaretskii <eliz@gnu.org>
3774
3775 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Redefine to waste less pure space.
3776
37772009-10-30 Dan Nicolaescu <dann@ics.uci.edu>
3778
3779 * puresize.h (BASE_PURESIZE): Increase to 1470000.
3780
3781 * lread.c (Fload): Purecopy the file name when building
3782 Vpreloaded_file_list.
3783
37842009-10-29 Jason Rumney <jasonr@wanchan.jasonrumney.net>
3785
3786 * w32fns.c (syms_of_w32fns): Change default value of
3787 w32-scroll-lock-modifier to nil. (Bug#2827)
3788
37892009-10-26 Juanma Barranquero <lekktu@gmail.com>
3790
3791 * minibuf.c (Fall_completions): Fix typos in docstring.
3792
37932009-10-26 Andreas Schwab <schwab@redhat.com>
3794
3795 * puresize.h (PURESIZE_RATIO): Increase back to 10/6.
3796
37972009-10-26 Juanma Barranquero <lekktu@gmail.com>
3798
3799 * window.c (grow_mini_window): Comment out "delta >= 0" assertion.
3800 For delta < 0, skip check that only makes sense when the mini-window
3801 is going to be enlarged. (Bug#4534)
3802
38032009-10-25 Chong Yidong <cyd@stupidchicken.com>
3804
3805 * keyboard.c (read_char_x_menu_prompt): Don't demand a prompt
3806 string in menu maps (Bug#4471).
3807
38082009-10-24 Chong Yidong <cyd@stupidchicken.com>
3809
3810 * nsfns.m (ns_set_name, ns_set_name_as_filename): Don't call
3811 FRAME_NS_VIEW on terminal frames (Bug#4765).
3812
38132009-10-24 Andreas Schwab <schwab@linux-m68k.org>
3814
3815 * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_INTnn and
3816 DBUS_TYPE_UINTnn separately to get proper sign extension.
3817
3818 * dired.c (Ffile_attributes): Simplify now that FIXNUM_OVERFLOW_P
3819 can properly handle unsigned types.
3820 (make_uid, make_gid): Remove.
3821
3822 * lisp.h (FIXNUM_OVERFLOW_P): Fix last change to handle unsigned
3823 types again.
3824
3825 * sysdep.c (procfs_ttyname): Fix sprintf format to match argument type.
3826 (system_process_attributes): Likewise.
3827
38282009-10-24 Dan Nicolaescu <dann@ics.uci.edu>
3829
3830 * keymap.c (Fmake_sparse_keymap): Purecopy the name.
3831
3832 * eval.c (Fautoload): Purecopy the filename. Simplify.
3833
3834 * category.c (Fdefine_category): Purecopy docstring.
3835
38362009-10-23 Andreas Schwab <schwab@linux-m68k.org>
3837
3838 * lisp.h (FIXNUM_OVERFLOW_P): Remove cast to avoid overflow.
3839
3840 * puresize.h (PURESIZE_RATIO): Decrease to 11/7.
3841
38422009-10-23 Chong Yidong <cyd@stupidchicken.com>
3843
3844 * window.c (Fwindow_edges, Fwindow_pixel_edges)
3845 (Fwindow_inside_edges, Fwindow_inside_pixel_edges): Doc fix
3846 (Bug#4775).
3847
38482009-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
3849
3850 * fileio.c (syms_of_fileio): Initialize Vdirectory_sep_char.
3851 (init_fileio_once):
3852 * lisp.h (init_fileio_once): Remove.
3853 * emacs.c (main): Don't call init_fileio_once.
3854
38552009-10-23 Dan Nicolaescu <dann@ics.uci.edu>
3856
3857 * puresize.h (BASE_PURESIZE): Increase to 1430000.
3858
38592009-10-21 Andreas Schwab <schwab@linux-m68k.org>
3860
3861 * doprnt.c (doprnt): Fix overflow check.
3862
38632009-10-21 Jan Djärv <jan.h.d@swipnet.se>
3864
3865 * xterm.c (x_term_init): Remove XSynchronize call done for debugging.
3866
3867 * xterm.h (x_wait_for_event): Declare it.
3868
3869 * xterm.c (pending_event_wait): New variable.
3870 (handle_one_xevent): Set pending_event_wait.eventtype to 0 if we
3871 see pending_event_wait.eventtype.
3872 (handle_one_xevent): Don't change gravity when parent changes.
3873 (x_new_font): Call change_frame_size with new rows/columns before we
3874 try to resize the frame.
3875 (x_wait_for_event): New function.
3876 (x_set_window_size_1): Don't change gravity unless change_gravity
3877 is set.
3878 Call XResizeWindow with FRAME_OUTER_WINDOW. If we are visible,
3879 don't change frame size, instead wait for the ConfigureNotify.
3880 (x_set_window_size): Call x_set_window_size_1 for USE_X_TOOLKIT also.
3881 (x_wm_set_size_hint): Remove ifdefs for USE_X_TOOLKIT.
3882 (x_initialize): Initialize pending_event_wait.
3883
3884 * xmenu.c (set_frame_menubar): Add internal border width to menu bar
3885 size.
3886
3887 * widget.c (EmacsFrameSetValues): Add comment.
3888 (EmacsFrameSetCharSize): Just call x_set_window_size.
3889
3890 * gtkutil.c (xg_frame_set_char_size): Flush events and call
3891 x_wait_for_event.
3892 (flush_and_sync): Remove again.
3893 (xg_get_font_name): Suggest monospace if no previous font is known.
3894
38952009-10-20 Stefan Monnier <monnier@iro.umontreal.ca>
3896
3897 * character.c (char_resolve_modifier_mask): Don't resolve meta to the
3898 8th bit, since that only made sense in the ASCII world (bug#4751).
3899
39002009-10-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3901
3902 * xterm.c (XTread_socket) [!USE_GTK && HAVE_X_I18N]: Don't quit
3903 processing pending events when event is filtered for input method.
3904 (Bug#3681)
3905
39062009-10-20 Juanma Barranquero <lekktu@gmail.com>
3907
3908 * fns.c: Add #endif accidentally removed in previous change.
3909
39102009-10-19 Dan Nicolaescu <dann@ics.uci.edu>
3911
3912 * fns.c: Remove code for unsupported system: MAC_OS.
3913 * image.c: Likewise. Include setjmp.h.
3914
39152009-10-19 Jan Djärv <jan.h.d@swipnet.se>
3916
3917 * xterm.c (x_create_toolkit_scroll_bar): Don't allocate color for
3918 pixel -1 (bug #4742).
3919
39202009-10-19 Dan Nicolaescu <dann@ics.uci.edu>
3921
3922 * process.c (create_pty): Remove conditionals for no longer
3923 supported systems: UNIPLUS and RTU.
3924
3925 * xterm.c:
3926 * xfns.c: Remove always true condition: XtSpecificationRelease >= 5.
3927
3928 * alloc.c: Do not define struct catchtag.
3929 * eval.c: Move struct catchtag definition ...
3930 * lisp.h: ... here.
3931
3932 * image.c: Move png.h #include earlier to avoid warnings.
3933
3934 * xterm.c:
3935 * xsmfns.c:
3936 * xselect.c:
3937 * xrdb.c:
3938 * xmenu.c:
3939 * xftfont.c:
3940 * xfont.c:
3941 * xfns.c:
3942 * xfaces.c:
3943 * xdisp.c:
3944 * window.c:
3945 * widget.c:
3946 * w32xfns.c:
3947 * w32uniscribe.c:
3948 * w32term.c:
3949 * w32select.c:
3950 * w32reg.c:
3951 * w32proc.c:
3952 * w32menu.c:
3953 * w32inevt.c:
3954 * w32heap.c:
3955 * w32font.c:
3956 * w32fns.c:
3957 * w32console.c:
3958 * w32.c:
3959 * w16select.c:
3960 * vm-limit.c:
3961 * unexsol.c:
3962 * unexec.c:
3963 * unexcw.c:
3964 * unexaix.c:
3965 * undo.c:
3966 * tparam.c:
3967 * textprop.c:
3968 * terminfo.c:
3969 * terminal.c:
3970 * termcap.c:
3971 * term.c:
3972 * syntax.c:
3973 * sound.c:
3974 * sheap.c:
3975 * search.c:
3976 * scroll.c:
3977 * region-cache.c:
3978 * regex.c:
3979 * ralloc.c:
3980 * process.c:
3981 * print.c:
3982 * nsterm.m:
3983 * nsselect.m:
3984 * nsmenu.m:
3985 * nsimage.m:
3986 * nsfont.m:
3987 * nsfns.m:
3988 * msdos.c:
3989 * minibuf.c:
3990 * menu.c:
3991 * marker.c:
3992 * macros.c:
3993 * keymap.c:
3994 * keyboard.c:
3995 * intervals.c:
3996 * insdel.c:
3997 * indent.c:
3998 * gtkutil.c:
3999 * ftxfont.c:
4000 * ftfont.c:
4001 * fringe.c:
4002 * frame.c:
4003 * fontset.c:
4004 * font.c:
4005 * fns.c:
4006 * floatfns.c:
4007 * filelock.c:
4008 * fileio.c:
4009 * emacs.c:
4010 * editfns.c:
4011 * dosfns.c:
4012 * doprnt.c:
4013 * doc.c:
4014 * dispnew.c:
4015 * dired.c:
4016 * dbusbind.c:
4017 * data.c:
4018 * composite.c:
4019 * coding.c:
4020 * cmds.c:
4021 * cm.c:
4022 * chartab.c:
4023 * charset.c:
4024 * character.c:
4025 * ccl.c:
4026 * category.c:
4027 * casetab.c:
4028 * casefiddle.c:
4029 * callproc.c:
4030 * callint.c:
4031 * bytecode.c:
4032 * buffer.c:
4033 * atimer.c: Include setjmp.h. (Bug#4643)
4034
40352009-10-18 Stefan Monnier <monnier@iro.umontreal.ca>
4036
4037 Remove leftover table unibyte_to_multibyte_table.
4038 * character.c (unibyte_to_multibyte_table): Remove.
4039 (Funibyte_char_to_multibyte): Use MAKE_CHAR_MULTIBYTE.
4040 * charset.c (init_charset_once): Don't init unibyte_to_multibyte_table.
4041 * character.h (UNIBYTE_TO_CHAR): New macro.
4042 (MAKE_CHAR_MULTIBYTE): Use it.
4043 (unibyte_to_multibyte_table, unibyte_char_to_multibyte): Remove.
4044 * xdisp.c (get_next_display_element): USE ASCII_CHAR_P.
4045 (message_dolog, set_message_1):
4046 * search.c (Freplace_match):
4047 * editfns.c (Fcompare_buffer_substrings):
4048 * fns.c (Fcompare_strings): Use MAKE_CHAR_MULTIBYTE.
4049 (concat):
4050 * insdel.c (copy_text, count_size_as_multibyte):
4051 Use ASCII_CHAR_P and BYTE8_TO_CHAR.
4052 * term.c (produce_glyphs):
4053 * syntax.c (skip_chars): Use BYTE8_TO_CHAR.
4054 * regex.c (RE_CHAR_TO_MULTIBYTE):
4055 * cmds.c (internal_self_insert):
4056 * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use UNIBYTE_TO_CHAR.
4057
4058 * cmds.c (internal_self_insert): `c' is already in "multibyte" form.
4059
40602009-10-17 Dan Nicolaescu <dann@ics.uci.edu>
4061
4062 * puresize.h (BASE_PURESIZE): Increase to 1310000.
4063
40642009-10-16 Juanma Barranquero <lekktu@gmail.com>
4065
4066 * buffer.c (Fbuffer_name): Doc fix. (Bug#4728)
4067
40682009-10-15 Adrian Robert <Adrian.B.Robert@gmail.com>
4069
4070 * nsterm.h (NS_HAVE_NSINTEGER): Back out and augment with CGFloat,
4071 still needed under Tiger.
4072
4073 * nsterm.m (EmacsView-conversationIdentifier): Arg is long.
4074
4075 * m/amdx86-64.h: Don't set LIB_STANDARD and START_FILES under
4076 __Apple__.
4077
4078 * m/intel386.h: Remove DARWIN_OS/_LP64 special case.
4079
40802009-10-15 Kenichi Handa <handa@m17n.org>
4081
4082 * print.c (print_object): Escape a symbol like "2E10" too.
4083
40842009-10-11 Adrian Robert <Adrian.B.Robert@gmail.com>
4085
4086 Cleanups and changes for 64-bit compile under Snow Leopard.
4087 Based on suggestions by Erik Charlebois.
4088
4089 * nsfns.m (xw-color-values): Use CGFloat where appropriate.
4090
4091 * nsfont.m (ns_char_width): Replace deprecated call.
4092 (ns_findfonts, nsfont_list_family): Use long format in printf, and
4093 cast argument.
4094 (nsfont_open): Use ns_char_width() everywhere.
4095 (ns_uni_to_glyphs, NSGlyphStorage): Use NS[U]Integer where appropriate.
4096
4097 * nsgui.h (NSPoint, NSSize) [!__OBJC__]: Define and use CGFloat.
4098
4099 * nsimage.m (EmacsImage-setXBMColor:,-getPixelAtX:Y:): Use CGFloat
4100 where appropriate.
4101
4102 * nsmenu.m (EmacsMenu-addItemWithWidgetValue:): Use NSInteger
4103 where appropriate.
4104 (EmacsToolbar-addDisplayItemWithImage:idx:helpText:enabled:):
4105 Use stringWithUTF8String.
4106 (EmacsDialogPanel-initWithContentRect:styleMask:): Fix signature.
4107
4108 * nsterm.h (EmacsView, EmacsMenu, EmacsToolbar, EmacsTooltip):
4109 Add formal protocol mention to inheritance.
4110 [NS_HAVE_NSINTEGER]: Drop conditional and contents.
4111
4112 * nsterm.m (ns_color_to_lisp): Use CGFloat where appropriate.
4113 Fix printf format.
4114 (ns_query_color): Use CGFloat where appropriate.
4115 (EmacsView<NSTextInput>, EmacsScroller): Fix method signatures.
4116 (EmacsScroller-mouseDown:): Use long format in printf, and cast
4117 argument.
4118
4119 * config.in (NS_HAVE_NSINTEGER): Drop.
4120
4121 * dbusbind.c (dbus-method-return-internal)
4122 (dbus-method-error-internal): Use long format in printf, and cast
4123 argument.
4124
4125 * font.c (font_unparse_xlfd, font_unparse_fcname): Use long format
4126 in printf, and cast argument.
4127
4128 * process.c (list_processes_1): Use long format in printf, and
4129 cast argument.
4130
41312009-10-11 Glenn Morris <rgm@gnu.org>
4132
4133 * frame.c (Fframe_pixel_height): Doc fix. (Bug#4535)
4134
41352009-10-08 Jan Djärv <jan.h.d@swipnet.se>
4136
4137 * gtkutil.c (create_menus): Call gtk_widget_set_size_request for
4138 menu bar with a small width so it doesn't enlarge the frame.
4139
41402009-10-08 Juanma Barranquero <lekktu@gmail.com>
4141
4142 * fontset.c (Fset_fontset_font): Fix typos in error messages.
4143
41442009-10-06 Glenn Morris <rgm@gnu.org>
4145
4146 * Makefile.in (emacs${EXEEXT}): Remove direct dependence on
4147 SOME_MACHINE_LISP (this enters indirectly via DOC).
4148
41492009-10-05 Eli Zaretskii <eliz@gnu.org>
4150
4151 * dired.c (Ffile_attributes): Doc fix. (Bug#4638)
4152
41532009-10-04 Eli Zaretskii <eliz@gnu.org>
4154
4155 * xdisp.c (syms_of_xdisp) <unibyte-display-via-language-environment>:
4156 Doc fix.
4157
41582009-10-03 Martin Rudalics <rudalics@gmx.at>
4159
4160 * window.c (Fdelete_window): Check WINDOW argument. (Bug#4618)
4161
41622009-10-02 Michael Albinus <michael.albinus@gmx.de>
4163
4164 * lisp.h (Qdelete_directory_internal): Remove, because it is not
4165 used anymore outside fileio.c.
4166
4167 * w32fns.c (Fsystem_move_file_to_trash): Use delete-directory.
4168
41692009-10-01 Juanma Barranquero <lekktu@gmail.com>
4170
4171 * lisp.h (Qdelete_directory_internal):
4172 Declare, instead of Qdelete_directory.
4173
4174 * w32fns.c (Fsystem_move_file_to_trash): Use it.
4175
41762009-10-01 Stefan Monnier <monnier@iro.umontreal.ca>
4177
4178 * eval.c (Fcalled_interactively_p): Add `kind' argument.
4179
41802009-10-01 Michael Albinus <michael.albinus@gmx.de>
4181
4182 * fileio.c (Fdelete_directory_internal): Rename from
4183 Fdelete_directory. It is not a command anymore. It has no file
4184 name handler.
4185
41862009-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
4187
4188 * xdisp.c (get_next_display_element): Use an enum in last change.
4189
41902009-09-28 Kenichi Handa <handa@m17n.org>
4191
4192 * xdisp.c (get_next_display_element): Pay attention to
4193 unibyte_display_via_language_environment in handling
4194 Vnobreak_char_display.
4195
41962009-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
4197
4198 * nsterm.h (ns_app_name): New extern variable.
4199
4200 * nsterm.m (ns_app_name): New variable.
4201 (ns_term_init): Set and use it.
4202 (ns_term_shutdown): Use it.
4203
4204 * nsmenu.m (ns_update_menubar): Use ns_app_name. Sync with xmenu.c.
4205 (EmacsMenu-clear:, ns_popup_dialog): Use ns_app_name.
4206
4207 * nsfns.m (ns_set_name_iconic, ns_set_name)
4208 (ns_set_name_as_filename, x-create-frame, ns-get-resource)
4209 (ns-set-resource): Use ns_app_name instead of NSProcessInfo call.
4210
4211 * menu.c (find_and_return_menu_selection) [HAVE_NS]:
4212 Remove double-casting in client_data comparison.
4213
42142009-09-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4215
4216 * keyboard.c (make_lispy_event): Remember last wheel direction.
4217 (syms_of_keyboard) <wheel_syms>: Compute array size at compile time.
4218
42192009-09-26 Glenn Morris <rgm@gnu.org>
4220
4221 * Makefile.in (MSDOS_SUPPORT) [MSDOS]: Remove unneeded '/' in
4222 internal.elc. Add term/pc-win.elc.
4223 (WINDOW_SUPPORT) [HAVE_X_WINDOWS]: Add term/common-win.elc and
4224 term/x-win.elc.
4225 (WINNT_SUPPORT) [WINDOWSNT]: Add term/common-win.elc and
4226 term/w32-win.elc.
4227 (NS_SUPPORT): New.
4228 (lisp): Add NS_SUPPORT.
4229 (SOME_MACHINE_LISP): Add term/w32-win.elc and emacs-lisp/easymenu.elc.
4230
42312009-09-25 David Reitter <david.reitter@gmail.com>
4232
4233 * nsmenu.m (EmacsMenu-clear): Recognize application menu
4234 on Mac OS X 10.6+ (bug#4513).
4235
42362009-09-24 Juanma Barranquero <lekktu@gmail.com>
4237
4238 * frame.c (xrdb_get_resource): Return nil for empty string resources;
4239 some parts of Emacs code (like font selection) don't grok them.
4240 See http://lists.gnu.org/archive/html/emacs-devel/2009-09/msg00528.html
4241
42422009-09-24 Andreas Schwab <schwab@redhat.com>
4243
4244 * coding.c (decode_coding_iso_2022): Fix operator precedence.
4245
42462009-09-24 Juanma Barranquero <lekktu@gmail.com>
4247
4248 * dired.c (Fdirectory_files): Fix typo in docstring.
4249
42502009-09-23 Adrian Robert <Adrian.B.Robert@gmail.com>
4251
4252 * nsterm.m (EV_TIMESTAMP, x_set_window_size)
4253 (EmacsApp-application:openFiles:): Remove GNUstep conditionals.
4254 (EmacsScroller-setPosition:portion:whole:): Remove -display call
4255 under GNUstep.
4256 (EmacsView-initFrameFromEmacs:): Set autoresizing mask.
4257
4258 * nsfont.m (ns_glyph_metrics): Remove GNUstep conditional for
4259 glyph advancement.
4260
42612009-09-22 Adrian Robert <Adrian.B.Robert@gmail.com>
4262
4263 * nsterm.m (CGContextSetFontRenderingMode): Drop declaration.
4264 (EmacsScroller-mouseDown:): Use SCROLL_BAR_FIRST_DELAY.
4265
4266 * nsmenu.m (EmacsMenu-menuNeedsUpdate): Ignore if frame has been
4267 deleted (bug #4492).
4268
4269 * nsfont.m (Vns_reg_to_script): New lisp variable.
4270 (syms_of_nsfont): Declare it.
4271 (ns_registry_to_script): New function.
4272 (ns_get_req_script): Call it.
4273 (ns_findfonts): Don't give up on non-unicode registry.
4274
4275 * font.c (DEFAULT_ENCODING) [HAVE_NS]: Remove special case.
4276
42772009-09-20 Tom Tromey <tromey@redhat.com>
4278
4279 * eval.c (find_handler_clause): Make stack-trace-on-error work in
4280 batch mode (bug#4228).
4281
42822009-09-18 Rob Christie <robchristie@gmail.com> (tiny change)
4283
4284 * nsmenu.m (EmacsMenu-parseKeyEquiv:): Parse key equivalent more
4285 carefully. (Bug #4339)
4286
42872009-09-18 Chong Yidong <cyd@stupidchicken.com>
4288
4289 * syntax.c (Fchar_syntax): Minor doc fix (Bug#4400).
4290
42912009-09-18 Adrian Robert <Adrian.B.Robert@gmail.com>
4292
4293 * emacs.c (inhibit_x_resources): Update doc string for NS.
4294 (main) [HAVE_NS]: Don't process --no-init-file option. Remove
4295 legacy code for -NXHost. Fix error printf in daemon case.
4296
4297 * nsterm.h (ns_no_defaults): Remove.
4298
4299 * nsterm.m (ns_no_defaults): Remove.
4300 (ns_term_init): Switch ns_no_defaults -> inhibit_x_resources.
4301 (ns_use_qd_smoothing): Remove legacy variable.
4302 (EmacsView-windowShouldZoom:): Set frame left_pos, top_pos and
4303 don't update the NSWindow itself.
4304 (EmacsView-windowWillUseStandardFrame:defaultFrame:): Improve
4305 state detection and store user rect ourselves. (Bug #3581)
4306
4307 * nsfont.m (nsfont_draw) [NS_IMPL_COCOA]: Don't use
4308 ns_use_qd_smoothing.
4309
4310 * nsfns.m (x_get_string_resource): Ape just-previous changes to other
4311 platform versions. Drop support for emacs-20-style face specs.
4312 (x-close-connection): Drop PSFlush() under OS X.
4313 (x-focus-frame): Activate the app first. (Bug #4180)
4314
43152009-09-17 Juanma Barranquero <lekktu@gmail.com>
4316
4317 * emacs.c (inhibit_x_resources): New variable.
4318 (main) [HAVE_NS]: Don't process --quick command line option.
4319 (syms_of_emacs) <inhibit-x-resources>: DEFVAR_BOOL it.
4320
4321 * lisp.h (inhibit_x_resources): Declare it extern.
4322
4323 * w32reg.c (x_get_string_resource):
4324 * xrdb.c (x_get_string_resource): Obey inhibit_x_resources.
4325
43262009-09-17 Eli Zaretskii <eliz@gnu.org>
4327
4328 * Makefile.in (MSDOS_SUPPORT, SOME_MACHINE_LISP):
4329 Add lisp/term/internal.elc.
4330
43312009-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
4332
4333 * frame.c (x_get_resource_string): Re-add for non-toolkit builds
4334 (bug#4461).
4335
43362009-09-17 Dan Nicolaescu <dann@ics.uci.edu>
4337
4338 * puresize.h (BASE_PURESIZE): Increase to 1290000.
4339
4340 * Makefile.in (OTHER_FILES): Define using autoconf, not cpp.
4341 (OBJECTS_MACHINE): Remove, unused.
4342
43432009-09-16 Stefan Monnier <monnier@iro.umontreal.ca>
4344
4345 * frame.c (x_get_resource_string): Remove unused.
4346
43472009-09-15 Jan Djärv <jan.h.d@swipnet.se>
4348
4349 * xterm.c (x_new_font): Call change_frame_size before calling
4350 x_set_window_size, in case frame size won't change.
4351
4352 * frame.c (x_set_font): Remove dead code.
4353
43542009-09-15 Stefan Monnier <monnier@iro.umontreal.ca>
4355
4356 * lread.c (Fload): Also run do-after-load-evaluation while dumping.
4357
43582009-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
4359
4360 * lread.c (Fload): Don't output a message after loading an obsolete
4361 package any more (done in Lisp now).
4362
43632009-09-12 Chong Yidong <cyd@stupidchicken.com>
4364
4365 * fns.c (syms_of_fns): Doc fix (Bug#4227).
4366
43672009-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
4368
4369 * keymap.c (Fwhere_is_internal): Use nconc2.
4370
43712009-09-11 Alan Mackenzie <acm@muc.de>
4372
4373 * dispnew.c (Fsend_string_to_terminal): Amend doc string to cover
4374 batch mode.
4375
43762009-09-11 Andreas Schwab <schwab@linux-m68k.org>
4377
4378 * xdisp.c (display_mode_element): Detect cycles.
4379
43802009-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
4381
4382 * keymap.c (where_is_internal): Don't erroneously return nil right after
4383 filling the cache.
4384 (where_is_internal_1): Fix up typo.
4385
43862009-09-11 Glenn Morris <rgm@gnu.org>
4387
4388 * frame.c (Fx_parse_geometry): Unify the X and NS versions so that they
4389 share a common doc-string.
4390
43912009-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
4392
4393 * keymap.c (get_keymap): Return the actual keymap symbol rather than
4394 t for autoloaded keymaps when autoloading is not allowed (bug#4393).
4395
4396 * keymap.c (QCadvertised_binding): New constant.
4397 (syms_of_keymap): Initialize it.
4398 (Fwhere_is_internal): Try and use bindings from :advertised-binding
4399 if applicable.
4400
44012009-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
4402
4403 * keyboard.c (Qmenu_alias, Vdefine_key_rebound_commands): Remove.
4404 (parse_menu_item): Streamline since bindings are recomputed all the
4405 time anyway. Don't bother checking Vdefine_key_rebound_commands any
4406 more and don't support lmenu's menu-alias any more either.
4407
4408 * keymap.c (where_is_internal_data): Make noindirect a boolean.
4409 (where_is_internal): Strip it down to only traverse the keymaps.
4410 Move the cache handling from Fwhere_is_internal to here.
4411 (Fwhere_is_internal): Move the handling of remapping and the choice of
4412 the best binding from where_is_internal to here.
4413 Unify the cached/noncached paths, so remapping is also handled
4414 correctly when the cache is used, and so the cache can be used to
4415 speed up remap-handling when applicable.
4416 Give preference to non-remapped bindings.
4417 * doc.c (Fsubstitute_command_keys): Let Fwhere_is_internal's prefer
4418 non-remapped bindings.
4419 * keyboard.c (parse_menu_item): Let Fwhere_is_internal handle
4420 command remapping.
4421
4422 * xdisp.c (display_mode_element): Move list length limit from 50 to
4423 5000 (see thread starting with <xbaik5174uqu.fsf@cam.ac.uk>).
4424
44252009-09-09 Adrian Robert <Adrian.B.Robert@gmail.com>
4426
4427 * nsfont.m (ns_get_family): Don't force first letter to uppercase.
4428
44292009-09-09 Stefan Monnier <monnier@iro.umontreal.ca>
4430
4431 * xdisp.c (Vtruncate_partial_width_windows): Improve docstring.
4432 (Bug#4334)
4433
4434 * keymap.c (where_is_internal): Filter out shadowed remappings.
4435 Assume that where_is_internal returns unshadowed bindings to simplify
4436 the code and get rid of the gotos. Use ASIZE.
4437
44382009-09-04 Jan Djärv <jan.h.d@swipnet.se>
4439
4440 * xterm.c (x_focus_changed): If we get a focusout and pointer
4441 is invisible, make it visible.
4442
4443 * xterm.h: Remove condition for declaration of
4444 x_*_window_to_frame.
4445
44462009-09-03 Stefan Monnier <monnier@iro.umontreal.ca>
4447
4448 * dispnew.c (Fsend_string_to_terminal): Make it work again on the
4449 initial terminal as well.
4450
44512009-09-02 Jan Djärv <jan.h.d@swipnet.se>
4452
4453 * xterm.h: Rename x_non_menubar_window_to_frame to
4454 x_menubar_window_to_frame.
4455
4456 * xterm.c: Remove declarations also in xterm.h.
4457 (XTmouse_position): Do not return valid positions
4458 for clicks in the menubar and the toolbar for Gtk+.
4459
4460 * xfns.c (x_any_window_to_frame): Assume less about Gtk+ internals,
4461 if the widget for the event has the same top level as a frame,
4462 return the frame.
4463 (x_menubar_window_to_frame): Detect menu bar even with Gtk+
4464 internal windows, bug #4122.
4465 (x_non_menubar_window_to_frame): Remove.
4466
44672009-09-02 Glenn Morris <rgm@gnu.org>
4468
4469 * buffer.c (default-major-mode): Move most of the doc from here...
4470 (major-mode): ... to here.
4471
44722009-08-30 Nick Roberts <nickrob@snap.net.nz>
4473
4474 * process.c (wait_reading_process_output): Keep the descriptor
4475 when pty is used by a non-child process, e.g., in I/O buffer of
4476 GDB this allows inferior to be restarted.
4477
44782009-08-29 Eli Zaretskii <eliz@gnu.org>
4479
4480 * xdisp.c (redisplay_internal): Remove redundant test and collapse
4481 both branches into one.
4482
44832009-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
4484
4485 * emacs.c (USAGE1): Remove --(no-)multibyte, --(no-)unibyte.
4486 (main): Use enable-multibyte-characters rather than
4487 default-enable-multibyte-characters. Output a warning message when
4488 running a unibyte session.
4489
44902009-08-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4491
4492 * unexmacosx.c (print_load_command_name) [LC_DYLD_INFO]: Add cases
4493 LC_DYLD_INFO and LC_DYLD_INFO_ONLY.
4494 (copy_data_segment): Also copy __program_vars section.
4495 (copy_dyld_info) [LC_DYLD_INFO]: New function.
4496 (dump_it) [LC_DYLD_INFO]: Use it.
4497
4498 * s/darwin.h [temacs]: Undef HAVE_POSIX_MEMALIGN.
4499
45002009-08-28 Eli Zaretskii <eliz@gnu.org>
4501
4502 * makefile.w32-in ($(BLD)/doc.$(O)): Depend on buildobj.h, not on
4503 $(SRC)/buildobj.h.
4504 (buildobj.h): Renamed from $(SRC)/buildobj.h.
4505 (make-buildobj-CMD, make-buildobj-SH): Create buildobj.h, not
4506 $(SRC)/buildobj.h.
4507 (clean): Add buildobj.h.
4508
45092009-08-28 Teodor Zlatanov <tzz@lifelogs.com>
4510
4511 * print.c (print_object): Set escapeflag to 1 when printing
4512 hashtable keys and values.
4513
45142009-08-27 Stefan Monnier <monnier@iro.umontreal.ca>
4515
4516 * lread.c (read_integer): Use doubles (and potentially return a float
4517 number) as we do in string-to-number.
4518 (read1): Use strtol to read integers, signal errors on strtol's
4519 overflow and use floats if strtol's output is too large for
4520 Elisp integers.
4521
45222009-08-27 Eli Zaretskii <eliz@gnu.org>
4523
4524 * makefile.w32-in ($(SRC)/buildobj.h, make-buildobj-CMD)
4525 (make-buildobj-SH): Fix last change.
4526 (SRC): Move to before where it's first used.
4527
45282009-08-27 Kenichi Handa <handa@m17n.org>
4529
4530 * process.c (send_process): Use encode_coding_object instead of
4531 encode_coding_string to perform eol-conversion even if the string
4532 is unibyte.
4533
4534 * coding.c (encode_coding_utf_16): Fix checking of a Unicode
4535 character.
4536
4537 * cmds.c (Fself_insert_command): Avoid unnecessay
4538 unibyte->multibyte conversion. (Bug#4240) (Bug#4037)
4539
45402009-08-26 Dan Nicolaescu <dann@ics.uci.edu>
4541
4542 * callproc.c (Fcall_process): Remove always true #if.
4543
4544 * lisp.h: Replace #if 0 code for checking with text pointing to
4545 the --enable-checking configure flag.
4546
4547 * emacs.c (main): Mention the --enable-profiling configure flag
4548 instead of using CFLAGS.
4549
45502009-08-26 Ken Raeburn <raeburn@raeburn.org>
4551
4552 * Makefile.in (buildobj.h): New target.
4553 (doc.o): Depend on it.
4554 (temacs${EXEEXT}): Don't generate buildobj.lst.
4555 (mostlyclean): Delete buildobj.h, not buildobj.lst.
4556 * makefile.w32-in ($(SRC)/buildobj.h): New target.
4557 ($(BLD)/doc.$(O)): Depend on it.
4558 (make-buildobj-CMD, make-buildobj-SH): New targets. (Syntax help
4559 provided by Eli Zaretskii.)
4560 ($(TEMACS)): Don't generate buildobj.lst.
4561 * doc.c: Include buildobj.h.
4562 (buildobj): New static variable.
4563 (Fsnarf_documentation): Use it, instead of opening and reading
4564 buildobj.lst.
4565
45662009-08-25 Michael Albinus <michael.albinus@gmx.de>
4567
4568 * dbusbind.c (Fdbus_call_method)
4569 (Fdbus_call_method_asynchronously): Use English numeric format for
4570 timeout values in doc string.
4571
45722009-08-25 Kenichi Handa <handa@m17n.org>
4573
4574 * alloc.c (mark_char_table): New function.
4575 (mark_object): Use mark_char_table for a char-table.
4576
4577 * lisp.h (CHAR_TABLE_REF_ASCII): New macro.
4578 (CHAR_TABLE_REF): Use it.
4579
45802009-08-23 Ken Raeburn <raeburn@raeburn.org>
4581
4582 * Makefile.in (emacs${EXEEXT}) [CANNOT_DUMP]: Set EMACSLOADPATH
4583 before invoking the newly build emacs to check for load-path
4584 shadowing.
4585
45862009-08-22 Glenn Morris <rgm@gnu.org>
4587
4588 * Makefile.in (bootstrap_exe): New variable.
4589 (.el.elc, ${lispsource}loaddefs.el, bootstrap-emacs${EXEEXT}):
4590 Use ${bootstrap_exe}.
4591
45922009-08-22 Eli Zaretskii <eliz@gnu.org>
4593
4594 * coding.h (encode_coding_string): Don't encode unibyte strings.
4595 (Bug#4047)
4596
45972009-08-22 Michael Albinus <michael.albinus@gmx.de>
4598
4599 * config.in (HAVE_DBUS_WATCH_GET_UNIX_FD): Add.
4600
4601 * dbusbind.c (XD_WITH_DBUS_WATCH_GET_UNIX_FD): Remove. It was
4602 intended as hotfix only.
4603 (xd_add_watch, xd_remove_watch): Use HAVE_DBUS_WATCH_GET_UNIX_FD.
4604
46052009-08-21 Adrian Robert <Adrian.B.Robert@gmail.com>
4606
4607 * nsterm.m (ns_get_color): Update documentation properly for last
4608 change, and clean up loose ends in the code left by it. Fix
4609 longstanding bug with 16-bit hex parsing, and add support for
4610 yet another X11 format (rgb:r/g/b) for compatibility.
4611 * nsfns.m (EmacsDialogPanel-runDialogAt): Add declaration of
4612 timer_check() to avoid crash on Leopard/PPC. Bug #2154.
4613
46142009-08-21 Stefan Monnier <monnier@iro.umontreal.ca>
4615
4616 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 500 for js.el.
4617
46182009-08-20 Michael Albinus <michael.albinus@gmx.de>
4619
4620 * dbusbind.c (XD_WITH_DBUS_WATCH_GET_UNIX_FD): New macro.
4621 (xd_add_watch, xd_remove_watch): Use it. Print debug messages.
4622 (xd_initialize, xd_pending_messages): Check, whether
4623 $DBUS_SESSION_BUS_ADDRESS is set.
4624
46252009-08-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4626
4627 * nsfns.m (Fxw_color_values): Return 3-element list. Doc fix.
4628
4629 * nsterm.m (ns_get_color): Remove incompatible color formats again.
4630
46312009-08-20 Glenn Morris <rgm@gnu.org>
4632
4633 * emacs.c (system-type): Doc fix.
4634
46352009-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
4636
4637 * keyboard.c (syms_of_keyboard): Default to 5 buttons, which should be
4638 enough for the most common situations. Avoid SET_SYMBOL_VALUE.
4639
46402009-08-18 Michael Albinus <michael.albinus@gmx.de>
4641
4642 * dbusbind.c (xd_add_watch, xd_remove_watch, Fdbus_init_bus):
4643 New functions.
4644 (xd_initialize): Revert change from 2009-08-16.
4645
46462009-08-18 Kenichi Handa <handa@m17n.org>
4647
4648 * fontset.c (Ffontset_font): If a nil element is found in a
4649 font-group vector, return nil.
4650
46512009-08-17 Chong Yidong <cyd@stupidchicken.com>
4652
4653 * process.c (status_notify): Don't perform redisplay.
4654 (Fdelete_process, list_processes_1, process_send_signal):
4655 Expliticly perform redisplay.
4656 (wait_reading_process_output): Always check process status, but
4657 don't perform redisplay unless DO_DISPLAY is non-zero (Bug#2930).
4658
46592009-08-17 Ken Raeburn <raeburn@raeburn.org>
4660
4661 * lisp.h (XFLOAT_DATA): Produce an rvalue by adding 0 to the value.
4662 (XFLOAT_INIT): New macro for storing a float value.
4663 * alloc.c (make_float, make_pure_float): Use XFLOAT_INIT.
4664 * fns.c (sxhash): Copy out the value of a float in order to
4665 examine its bytes.
4666 * dbusbind.c (xd_append_arg): Likewise.
4667
4668 * emacs.c (main): Don't call syms_of_data twice.
4669
46702009-08-16 Michael Albinus <michael.albinus@gmx.de>
4671
4672 * dbusbind.c (xd_initialize): Add connection file descriptor to
4673 input_wait_mask, in order to let select() detect, whether a new
4674 message has been arrived.
4675 (Fdbus_call_method_asynchronously): Allow nil HANDLER.
4676
46772009-08-15 Michael Albinus <michael.albinus@gmx.de>
4678
4679 * dbusbind.c (xd_get_dispatch_status, xd_pending_messages):
4680 New functions.
4681
4682 * lisp.h (xd_pending_messages): Declare.
4683
4684 * keyboard.c (readable_events): Call xd_pending_messages.
4685
46862009-08-15 Chong Yidong <cyd@stupidchicken.com>
4687
4688 * eval.c (Fcalled_interactively_p, Finteractive_p): Doc fix (Bug#3936).
4689
4690 * xdisp.c (pop_it): Don't pop into a display vector (Bug#4131).
4691
4692 * buffer.c (set_buffer_internal_1)
4693 (swap_out_buffer_local_variables): Check for unbound local
4694 variables (Bug#4138).
4695
46962009-08-14 Eli Zaretskii <eliz@gnu.org>
4697
4698 * process.c (create_pty): Fix last change.
4699
47002009-08-13 Chong Yidong <cyd@stupidchicken.com>
4701
4702 * image.c (xbm_read_bitmap_data): New arg inhibit_image_error.
4703 (xbm_load_image): Caller changed.
4704 (xbm_file_p): Avoid signalling an image_error (Bug#4107).
4705
47062009-08-13 Nick Roberts <nickrob@snap.net.nz>
4707
4708 * process.c (create_pty): New function.
4709 (Fstart_process): Use it to allow Emacs to just associate a pty
4710 with the buffer. See associated change in gdb-mi.el.
4711 (list_processes_1): Deal with no program name.
4712 (start_process_unwind): Use pid == -2 to mean no process.
4713
47142009-08-12 Stefan Monnier <monnier@iro.umontreal.ca>
4715
4716 * cmds.c (nonundocount): New global variable.
4717 (keys_of_cmds): Initialize it.
4718 (Fself_insert_command): Use it to combine upto 20 sequential chars
4719 into a single undo entry, just like the Qself_insert_command code in
4720 keyboard.c does.
4721 Call frame_make_pointer_invisible, also like the Qself_insert_command
4722 code in keyboard.c does.
4723 * keyboard.c (command_loop_1): Use the new global nonundocount rather
4724 than its own local replacement for it.
4725
47262009-08-10 Ken Raeburn <raeburn@raeburn.org>
4727
4728 * fns.c (concat): Don't re-set string length to its current value.
4729
4730 * coding.h (decode_coding_string, encode_coding_string):
4731 Use SBYTES macro.
4732
4733 * doprnt.c (doprnt_lisp): Delete unused function.
4734 (doprnt): Merge with doprnt1, discarding lispstrings code.
4735 * lisp.h (doprnt_lisp): Don't declare.
4736
47372009-08-07 Juri Linkov <juri@jurta.org>
4738
4739 * puresize.h (BASE_PURESIZE): Increase to 1270000.
4740
47412009-08-07 Dan Nicolaescu <dann@ics.uci.edu>
4742
4743 * print.c (syms_of_print): Undo previous change.
4744
47452009-08-05 Teodor Zlatanov <tzz@lifelogs.com>
4746
4747 * lread.c (read1, syms_of_lread): Read hashtables back from the
4748 readable format.
4749
4750 * print.c (print_preprocess, print_object): Print hashtables fully
4751 and readably.
4752 (syms_of_print): Provide 'hashtable-print-readable.
4753
47542009-08-02 Adrian Robert <Adrian.B.Robert@gmail.com>
4755
4756 * nsfont.m (ns_descriptor_to_entity): Handle case when descriptor has
4757 no family set.
4758 (nsfont_open): Handle case when entity has no family.
4759
47602009-07-29 Adrian Robert <Adrian.B.Robert@gmail.com>
4761
4762 * nsfont.m (ns_findfonts): Fix 2009-07-24 change to return only one
4763 element, not a list, for match case.
4764
47652009-07-28 Kenichi Handa <handa@m17n.org>
4766
4767 * font.c (font_parse_xlfd): Check DPI and AVGWIDTH properties more
4768 rigidly.
4769
4770 * xfont.c (xfont_list_pattern): Don't ignore the return value of
4771 font_parse_xlfd. Check font properties more rigidly.
4772
47732009-07-27 Dan Nicolaescu <dann@ics.uci.edu>
4774
4775 * s/netbsd.h (SIGNALS_VIA_CHARACTERS): Remove, already defined in
4776 bsd-common.h.
4777
47782009-07-27 Kenichi Handa <handa@m17n.org>
4779
4780 * xfaces.c (face_with_height): Call font_clear_prop.
4781
47822009-07-26 Chong Yidong <cyd@stupidchicken.com>
4783
4784 * dispnew.c (init_display): Use Qx, Qw32, and Qns.
4785
4786 * xterm.c (x_term_init): Use Qx.
4787
4788 * nsfont.m (nsfont_draw): Revert 2009-07-15 change.
4789
4790 * nsterm.m (ns_maybe_dumpglyphs_background): Revert 2009-07-15 change.
4791 (ns_get_color): Revert 2009-07-16 change.
4792
47932009-07-25 Eli Zaretskii <eliz@gnu.org>
4794
4795 * lread.c (syms_of_lread) <force_load_messages>: New variable.
4796 (Fload): Use it to force load messages, even if NOMESSAGES is non-nil.
4797
47982009-07-25 Ken Raeburn <raeburn@raeburn.org>
4799
4800 * coding.h (decode_coding_string, encode_coding_string):
4801 Use SCHARS macro.
4802
4803 * lread.c: Rewrite 2009-07-21 changes.
4804 (load_depth): Delete.
4805 (Qload_in_progress): New variable.
4806 (load_unwind): Don't reference load_depth or load_in_progress.
4807 (Fload): Likewise; specbind Qload_in_progress instead.
4808 (init_lread): Don't initialize load_depth.
4809 (syms_of_lread): Initialize and protect Qload_in_progress.
4810
48112009-07-24 Adrian Robert <Adrian.B.Robert@gmail.com>
4812
4813 * nsfont.m (ns_findfonts): Correctly return fallback in match case.
4814
48152009-07-23 Yavor Doganov <yavor@gnu.org>
4816
4817 * nsfont.m (NSFontDescriptor.h): Explicitly include under GNUstep.
4818
48192009-07-23 Adrian Robert <Adrian.B.Robert@gmail.com>
4820
4821 * nsterm.m (EmacsView-keyUp:): Only act when running under Tiger.
4822 Bugs 3792, 3720, 2402.
4823 (ns_lookup_indexed_color): Check for bad index.
4824 (ns_index_color): Init unused slot to 0.
4825 (ns_dumpglyphs_box_or_relief): Replace useless xassert with an if().
4826 Bug 3714, possibly 3082.
4827
48282009-07-22 Jason Rumney <jasonr@gnu.org>
4829
4830 * w32fns.c (w32_wnd_proc) [WM_IME_STARTCOMPOSITION]:
4831 Position IME window at cursor (Bug#2570).
4832 (w32_wnd_proc) [WM_IME_CHAR]: Release context when finished.
4833 (globals_of_w32fns): Dynamically load functions required above.
4834
4835 * w32term.c (w32_draw_window_cursor): Send message to reposition
4836 any IME window.
4837
48382009-07-21 Chong Yidong <cyd@stupidchicken.com>
4839
4840 * fileio.c: Revert 2009-07-16 changes.
4841 (Vauto_save_include_big_deletions): New variable.
4842 (Fdo_auto_save): Disable auto-save only if
4843 auto-save-include-big-deletions is nil.
4844
48452009-07-21 Chong Yidong <cyd@stupidchicken.com>
4846
4847 * xdisp.c (move_it_to): For continued lines ending in a tab, take
4848 the overflowed pixels into account (Bug#3879).
4849
48502009-07-21 Ken Raeburn <raeburn@raeburn.org>
4851
4852 * lread.c (load_depth): New variable.
4853 (Fload, load_unwind, init_lread): Set it to the load recursion
4854 depth; set load_in_progress as a simple boolean based on the
4855 current load_depth. (Bug#3892)
4856
48572009-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
4858
4859 * nsfont.m (ns_has_attribute): Remove.
4860 (ns_findfonts, nsfont_open): Use ns_attribute_fvalue() instead.
4861
48622009-07-18 Juri Linkov <juri@jurta.org>
4863
4864 * process.c (Fset_process_query_on_exit_flag): Mention killing
4865 a buffer in docstring.
4866
48672009-07-17 Kenichi Handa <handa@m17n.org>
4868
4869 * casetab.c (shuffle): Fix the logic of setting up the cycle.
4870
48712009-07-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4872
4873 * nsfns.m (Fns_set_alpha): Remove function.
4874 (syms_of_nsfns): Don't defsubr it.
4875
4876 * nsterm.m (ns_get_color): Remove incompatible color formats.
4877 (ns_color_to_lisp): Generate #rrggbb color format string.
4878
48792009-07-16 Richard Stallman <rms@gnu.org>
4880
4881 * fileio.c (Fwrite_region, Fdo_auto_save): Handle save_length = -2.
4882 (Fset_buffer_auto_saved): Handle save_length = -2.
4883
48842009-07-16 Chong Yidong <cyd@stupidchicken.com>
4885
4886 * xterm.c (Qx_gtk_map_stock): New var.
4887
4888 * gtkutil.c (update_frame_tool_bar): Use Qx_gtk_map_stock instead
4889 of calling intern each time.
4890
48912009-07-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4892
4893 * nsfont.m (nsfont_draw): Remove code for stippling, which actually
4894 does tiling.
4895
4896 * nsterm.m (ns_maybe_dumpglyphs_background): Likewise.
4897
48982009-07-14 Kenichi Handa <handa@m17n.org>
4899
4900 * font.c (font_vconcat_entity_vectors): New function.
4901 (struct font_sort_data): New member font_driver_preference.
4902 (font_compare): Check font_driver_preference.
4903 (font_sort_entities): The format of the first argument changed.
4904 (font_delete_unmatched): Likewise.
4905 (font_list_entities): The return type changed.
4906 (font_select_entity): The format of the second argument changed.
4907 (font_find_for_lface): Adjuste for the above changes.
4908 Don't suppress the checking of C even if the repertory supports it.
4909 (Flist_fonts): Adjust for the above changes.
4910
4911 * ftfont.c (ftfont_spec_pattern): New arg langname. Change caller.
4912 (ftfont_list): Adjust for the change of ftfont_spec_pattern.
4913 Reject a font who has adstyle property that is different from a
4914 langname derived from registry property.
4915 (ftfont_match): Adjust for the change of ftfont_spec_pattern.
4916
49172009-07-13 Eli Zaretskii <eliz@gnu.org>
4918
4919 * dired.c (directory_files_internal) [WINDOWSNT]: Don't make a
4920 local copy of dirfilename.
4921
49222009-07-13 Kenichi Handa <handa@m17n.org>
4923
4924 * chartab.c (sub_char_table_ref_and_range): Fix the range check
4925 against max_char.
4926
4927 * cmds.c (internal_self_insert): Check sym by SYMBOLP before
4928 calling XSYMBOL (sym).
4929
49302009-07-11 Eli Zaretskii <eliz@gnu.org>
4931
4932 * dired.c (directory_files_internal_w32_unwind) [WINDOWSNT]:
4933 New function.
4934 (directory_files_internal) [WINDOWSNT]:
4935 Bind w32-get-true-file-attributes to either t or nil, depending whether
4936 the filesystem of the directory is fast or slow.
4937
4938 * w32.c (logon_network_drive): Don't assume PATH is an absolute
4939 file name.
4940 (is_slow_fs): New function.
4941 (stat): Use it to determine whether to issue more system calls to
4942 get accurate file attributes, when w32-get-true-file-attributes is
4943 `local'.
4944
49452009-07-10 Jan Djärv <jan.h.d@swipnet.se>
4946
4947 * xfns.c (Fx_select_font): Remember last font selected in
4948 x_last_font_name and use that the next time. Also try the frame
4949 parameter font-parameter as default to the font dialog.
4950
49512009-07-10 Kenichi Handa <handa@m17n.org>
4952
4953 * xftfont.c (xftfont_open): Fix typo: FC_RGBA->FC_HINT_STYLE.
4954
49552009-07-09 Eli Zaretskii <eliz@gnu.org>
4956
4957 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
4958
4959 * w32.c (stat): Treat UNC file names as residing on remote
4960 drives. (Bug#3542)
4961
49622009-07-09 Kenichi Handa <handa@m17n.org>
4963
4964 * fontset.c (fontset_find_font): Fix previous change.
4965
49662009-07-08 Michael Albinus <michael.albinus@gmx.de>
4967
4968 * dbusbind.c (xd_initialize, Fdbus_call_method, xd_read_message)
4969 (Fdbus_register_signal, Fdbus_register_method): Cleanup memory of
4970 error flag.
4971
49722009-07-08 Kenichi Handa <handa@m17n.org>
4973
4974 * fontset.c (fontset_find_font): Fix the logic of handling
4975 charset_matched.
4976 (font_for_char): Delete unused var.
4977 (generate_ascii_font_name): Delete it.
4978
4979 * coding.h (JIS_TO_SJIS2): Fix the code range check.
4980
4981 * coding.c (detect_coding_sjis): Handle shift_jis-2004 correctly.
4982 (encode_coding_sjis): Fix the code range check.
4983
49842009-07-07 Chong Yidong <cyd@stupidchicken.com>
4985
4986 * fileio.c (Fsubstitute_in_file_name, Ffile_name_directory)
4987 (Fexpand_file_name): Copy string data properly (Bug#3772).
4988
49892009-07-07 Jan Djärv <jan.h.d@swipnet.se>
4990
4991 * xterm.c (handle_one_xevent): Only call x_check_fullscreen on the
4992 first MapNotify.
4993
49942009-07-07 Kenichi Handa <handa@m17n.org>
4995
4996 * character.h (unibyte_has_multibyte_table): Delete extern.
4997 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): Delete it.
4998
4999 * charset.c (Fset_charset_priority): Update charset_unibyte.
5000 (syms_of_charset): Initialize charset_unibyte.
5001
5002 * character.c (unibyte_has_multibyte_table): Delete it.
5003 (multibyte_char_to_unibyte): Use CHAR_TO_BYTE8 instead of checking
5004 charset_unibyte.
5005 (multibyte_char_to_unibyte_safe): Likewise.
5006 (Funibyte_char_to_multibyte): Don't check charset_unibyte.
5007
5008 * xdisp.c (get_next_display_element): Decode it->c by charset_unibyte.
5009 (x_produce_glyphs): Likewise.
5010
5011 * .gdbinit (xcharset): Fix the treating $arg0.
5012
50132009-07-04 Eli Zaretskii <eliz@gnu.org>
5014
5015 Emulation of `getloadavg' on MS-Windows.
5016 * w32.c: Include float.h.
5017 (g_b_init_get_native_system_info, g_b_init_get_system_times)
5018 (GetNativeSystemInfo_Proc, GetSystemTimes_Proc): Declare.
5019 (get_native_system_info, get_system_times): New functions.
5020 (buf_next, buf_prev, sample_system_load, getavg): New subroutines.
5021 (getloadavg): Rewrite using GetSystemTimes and GetNativeSystemInfo.
5022 (globals_of_w32): Initialize g_b_init_get_native_system_info,
5023 g_b_init_get_system_times, and num_of_processors.
5024
50252009-07-03 Jason Rumney <jasonr@gnu.org>
5026
5027 * w32term.c (w32_initialize): Use standard types.
5028
50292009-07-03 Eli Zaretskii <eliz@gnu.org>
5030
5031 * dired.c (Ffile_attributes): Decode user and group names by the
5032 locale's encoding. (Bug#3443)
5033
50342009-07-03 Dan Nicolaescu <dann@ics.uci.edu>
5035
5036 * sysdep.c (sys_suspend): Remove USG_JOBCTRL #ifdef, unused.
5037 (mkdir): Remove MKDIR_PROTOTYPE #ifdef, unused.
5038
5039 * callproc.c (child_setup): Use #else instead of a separate #ifdef.
5040
5041 * term.c (init_tty): Remove spurious #ifdef.
5042
5043 * m/mips.h: Mention this file is also used for netbsd.
5044 * m/pmax.h: Remove file.
5045
50462009-07-03 Jan Djärv <jan.h.d@swipnet.se>
5047
5048 * xterm.h (struct x_display_info): Add invisible_cursor.
5049 (struct x_output): Add current_cursor.
5050
5051 * xterm.c (XTtoggle_invisible_pointer): New function.
5052 (x_define_frame_cursor): Don't define cursor if invisible or the
5053 same as before. Set current_cursor.
5054 (x_create_terminal): Set toggle_invisible_pointer_hook.
5055
5056 * xfns.c (make_invisible_cursor): New function.
5057 (x_set_mouse_color): Call make_invisible_cursor.
5058 Set current_cursor.
5059 (x_window): Set current_cursor.
5060
5061 * termhooks.h (struct terminal): Add toggle_invisible_pointer_hook.
5062
5063 * keyboard.c (command_loop_1): Call frame_make_pointer_invisible after
5064 inserting a character.
5065 (read_avail_input): Call frame_make_pointer_visible.
5066
5067 * frame.c (Vmake_pointer_invisible): New variable.
5068 (frame_make_pointer_invisible, frame_make_pointer_visible):
5069 New functions.
5070 (syms_of_frame): DEFVAR make-pointer-invisible, initialize to Qt.
5071
5072 * frame.h: Declare frame_make_pointer_invisible and
5073 frame_make_pointer_visible.
5074 (struct frame): Add pointer_invisible.
5075
50762009-07-02 Jan Djärv <jan.h.d@swipnet.se>
5077
5078 * gtkutil.c (xg_frame_set_char_size): Do set width/height if the
5079 frame isn't visible.
5080 (xg_frame_resized): If width/height is -1, get size of window
5081 from X server.
5082
5083 * xterm.c (handle_one_xevent): Call xg_frame_resized for USE_GTK
5084 for MapNotify.
5085
5086 * gtkutil.c (xg_frame_set_char_size): Do not set pixel width/height
5087 here or call change_frame_size. Just call flush_and_sync.
5088 (flush_and_sync): Reintroduce.
5089
50902009-07-01 Jan Djärv <jan.h.d@swipnet.se>
5091
5092 * xterm.h (struct x_display_info): Add Xatom_net_wm_state_sticky.
5093
5094 * xterm.c (x_handle_net_wm_state): Also look for sticky.
5095 (x_term_init): Initialize Xatom_net_wm_state_sticky.
5096
5097 * frame.h: Declare Qsticky.
5098
5099 * w32fns.c (w32_frame_parm_handlers): Set 0 for sticky.
5100
5101 * nsfns.m (ns_frame_parm_handlers): Ditto.
5102
5103 * frame.c: Declare Qsticky.
5104 (frame_parms): Add sticky.
5105
5106 * xfns.c (x_frame_parm_handlers): Let x_set_sticky handle sticky.
5107
5108 * xterm.h: Declare x_set_sticky.
5109
5110 * xterm.c (x_set_sticky): New function.
5111
5112 * gtkutil.c (xg_tool_bar_proxy_help_callback): New function.
5113 (xg_tool_bar_menu_proxy): Attach enter/leave events to
5114 xg_tool_bar_proxy_help_callback.
5115
5116 * emacs.c (USAGE3, standard_args): Add -mm and --maximized.
5117
5118 * frame.c: Qmaximized is new.
5119 (x_set_frame_parameters): Do not handle fullscreen specially.
5120 Only set width and height if explicitly set.
5121 (x_set_fullscreen): Handle Qmaximized.
5122 (x_set_font, x_figure_window_size): Do not handle fullscreen specially.
5123 (syms_of_frame): Initialize Qmaximized.
5124
5125 * frame.h (fullscreen_type): Add FULLSCREEN_MAXIMIZED.
5126 Declare Qfullwidth, Qfullheight, Qfullboth, Qmaximized.
5127
5128 * xterm.c (handle_one_xevent): Remove call to x_check_fullscreen
5129 for Expose event. Add call to x_check_fullscreen for MapNotify event.
5130 Remove all code w.r.t. fullscreen from ConfigureNotify event. Do not
5131 set gravity to NorthWestGravity when USE_GTK.
5132 (set_wm_state): New function.
5133 (do_ewmh_fullscreen): Use set_wm_state. Also handle FULLSCREEN_MAXIMIZED.
5134 (x_handle_net_wm_state): Handle FULLSCREEN_MAXIMIZED.
5135 (x_check_fullscreen): Simplify so we only handle EMWH type of fullscreen
5136 or the case when no window manager is running. That means remove calls
5137 to x_real_positions and x_fullscreen_adjust.
5138
5139 * gtkutil.c (flush_and_sync, x_wm_size_hint_off): Remove.
5140 (xg_frame_set_char_size): Remove calls to x_wm_size_hint_off and
5141 flush_and_sync.
5142 (xg_height_changed): New function.
5143 (xg_create_frame_widgets): Remove call to gtk_widget_set_size_request
5144 and gtk_window_set_policy. Set frame gravity after parsing the
5145 geometry string.
5146 (xg_update_frame_menubar, free_frame_menubar)
5147 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
5148 (update_frame_tool_bar, free_frame_tool_bar): Call xg_height_changed.
5149 Remove calls to xg_frame_set_char_size.
5150
51512009-07-01 Kenichi Handa <handa@m17n.org>
5152
5153 * keyboard.c (decode_keyboard_code): New function.
5154 (tty_read_avail_input): Decode the input bytes if necessary.
5155
5156 * coding.c (setup_coding_system):
5157 Initialize coding->carryover_bytes to 0.
5158 (Fset_keyboard_coding_system_internal): If CODING-SYSTEM is nil,
5159 use Qno_conversion.
5160
51612009-07-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5162
5163 * Makefile.in (SOME_MACHINE_LISP): Add ../lisp/term/common-win.elc.
5164
51652009-06-30 Chong Yidong <cyd@stupidchicken.com>
5166
5167 * xftfont.c (xftfont_open): Avoid passing NULL argument to XftLockFace.
5168
51692009-06-30 Jason Rumney <jasonr@gnu.org>
5170
5171 * w32term.c (w32_initialize): Use GetModuleHandle for library that
5172 is already loaded.
5173 Set user model ID if supported (bug#1849).
5174
51752009-06-29 Jim Meyering <meyering@redhat.com>
5176
5177 Remove useless if-before-xfree test.
5178 * nsfont.m (nsfont_close): Remove useless test.
5179 * term.c (delete_tty): Likewise.
5180 * w32.c (system_process_attributes): Likewise.
5181 * w32font.c (w32font_close): Likewise.
5182 * xfaces.c (x_free_gc): Likewise.
5183 * xselect.c (buffer): Likewise.
5184
51852009-06-28 Andreas Schwab <schwab@linux-m68k.org>
5186
5187 * process.c (send_process): Keep decoded string in a local
5188 variable and protect it from GC. (Bug#3521)
5189
51902009-06-28 Eli Zaretskii <eliz@gnu.org>
5191
5192 * term.c (create_tty_output) [MSDOS]: #ifdef away.
5193 (tty_free_frame_resources) [MSDOS]: Add a DOS-specific version.
5194
51952009-06-28 Chong Yidong <cyd@stupidchicken.com>
5196
5197 * xdisp.c (start_display, handle_face_prop)
5198 (move_it_vertically_backward, cursor_row_fully_visible_p)
5199 (redisplay_window, try_window_id, produce_image_glyph):
5200 Delete some #ifdef-ed out code chunks that are now obsolete.
5201
5202 * xterm.c (x_update_window_begin, x_new_focus_frame)
5203 (x_scroll_bar_handle_click, handle_one_xevent)
5204 (handle_one_xevent, XTread_socket, x_focus_on_frame)
5205 (x_make_frame_visible, x_make_frame_invisible)
5206 (x_wm_set_icon_pixmap, x_initialize): Delete some #ifdef-ed out
5207 code chunks that are now obsolete.
5208
52092009-06-28 Michael Albinus <michael.albinus@gmx.de>
5210
5211 * dbusbind.c (XD_SYMBOL_TO_DBUS_TYPE): Convert macro into function
5212 xd_symbol_to_dbus_type. With Solaris 2.11, it was said to compile
5213 for hours, when optimzation is enabled.
5214 (xd_signature, xd_append_arg, xd_retrieve_arg, xd_initialize)
5215 (xd_read_message): Make them static.
5216
52172009-06-27 Chuck Blake <cblake@pdos.csail.mit.edu> (tiny change)
5218
5219 * term.c (turn_on_face): Allow simultaneously bold and dim
5220 terminal faces (Bug#3530).
5221
52222009-06-27 Chong Yidong <cyd@stupidchicken.com>
5223
5224 * frame.c (x_get_arg): Check if dpyinfo is non-NULL.
5225
5226 * xdisp.c (mouse_face_from_buffer_pos): Fix detection of
5227 truncation glyphs (Bug#3686).
5228
52292009-06-27 Glenn Morris <rgm@gnu.org>
5230
5231 * m/pmax.h: Restore file, with only netbsd portions.
5232
52332009-06-26 David Reitter <david.reitter@gmail.com>
5234
5235 * nsterm.m (keydown): Avoid infinite loop.
5236
52372009-06-26 Peter Jolly <peter@jollys.org> (tiny change)
5238
5239 * ftfont.c (get_adstyle_property): Call font_intern_prop with 1 as
5240 the arg FORCE_SYMBOL.
5241
52422009-06-25 Kenichi Handa <handa@m17n.org>
5243
5244 * fontset.c (fontset_find_font): When a usable rfont_def is found
5245 in a fallback font-group, make it the first element of the group.
5246
52472009-06-24 Chong Yidong <cyd@stupidchicken.com>
5248
5249 * emacs-icon.h: Always define gnu_xpm_bits on GTK (bug#3671).
5250
52512009-06-24 Kenichi Handa <handa@m17n.org>
5252
5253 * fontset.c (fontset_get_font_group): Return 0 if no font-group is
5254 set for C.
5255 (fontset_font): Record the availability of a font for C both in
5256 the realized fontsets of the current one and the default one.
5257
52582009-06-23 Dan Nicolaescu <dann@ics.uci.edu>
5259
5260 * sysdep.c (child_setup_tty): Remove SIGNALS_VIA_CHARACTERS
5261 conditional, it is always defined on AIX.
5262
52632009-06-23 Miles Bader <miles@gnu.org>
5264
5265 * window.c (Vrecenter_redisplay): New variable.
5266 (syms_of_window): Initialize it.
5267 (Qtty): New extern declaration.
5268 (Frecenter): Only do redisplay if Vrecenter_redisplay requests it.
5269
52702009-06-23 Jim Meyering <meyering@redhat.com>
5271
5272 * src/ftfont.c (setup_otf_gstring, ftfont_shape_by_flt):
5273 Use xmalloc and xrealloc (not malloc and realloc), so subsequent heap
5274 pointer dereferences are guaranteed to be valid.
5275
52762009-06-23 Kenichi Handa <handa@m17n.org>
5277
5278 * emacs.c (main): Call init_font ().
5279
5280 * font.h (Vfont_log): Extern it.
5281 (FONT_ADD_LOG, FONT_DEFERRED_LOG): New macros.
5282
5283 * font.c (font_sort_entities, font_list_entities)
5284 (font_matching_entity, font_open_entity)
5285 (font_close_object): Change font_add_log to FONT_ADD_LOG.
5286 (Vfont_log): Delete static.
5287 (font_log_env_checked): Delete this variable.
5288 (font_add_log): Don't check font_log_env_checked.
5289 (font_deferred_log): Check Vfont_log.
5290 (init_font): New function.
5291
5292 * ftfont.c: Change font_add_log to FONT_ADD_LOG.
5293
5294 * w32font.c: Change font_add_log to FONT_ADD_LOG.
5295
5296 * w32uniscribe.c: Change font_add_log to FONT_ADD_LOG.
5297
5298 * xfont.c: Change font_add_log to FONT_ADD_LOG.
5299
5300 * fontset.c (fontset_font): Call FONT_DEFERRED_LOG.
5301 (face_for_char): Don't call font_deferred_log here.
5302 (font_for_char): Likewise.
5303
53042009-06-22 Chong Yidong <cyd@stupidchicken.com>
5305
5306 * w32term.c (x_draw_glyph_string): Use the glyph string's width
5307 rather than its background_width for drawing the overline and
5308 underline (Bug#489).
5309
5310 * xterm.c (x_draw_glyph_string): Use the glyph string's width
5311 rather than its background_width for drawing the overline and
5312 underline (Bug#489).
5313 (xg_default_icon_file): New variable.
5314 (syms_of_xterm): Initialize it to the Emacs SVG icon file.
5315 (x_bitmap_icon): Under GTK, use xg_default_icon_file.
5316
5317 * xdisp.c (Qbefore_string, Qafter_string): Add externs.
5318 (load_overlay_strings): Remove externs.
5319 (fast_find_position): Function deleted.
5320 (mouse_face_from_buffer_pos): New function, based on
5321 fast_find_position. Correctly handle before-strings,
5322 display-strings, and after-strings (Bug#1220).
5323 (note_mouse_highlight): Use mouse_face_from_buffer_pos.
5324
53252009-06-21 Chong Yidong <cyd@stupidchicken.com>
5326
5327 * xdisp.c (IT_DISPLAYING_WHITESPACE): Define for !HAVE_WINDOW_SYSTEM.
5328 (move_it_in_display_line_to, move_it_in_display_line_to)
5329 (display_line): Remove #ifdef HAVE_WINDOW_SYSTEM.
5330
53312009-06-21 Chong Yidong <cyd@stupidchicken.com>
5332
5333 * Branch for 23.1.
5334
53352009-06-21 Jason Rumney <jasonr@gnu.org>
5336
5337 * w32term.c (keyboard_codepage): New static variable.
5338 (w32_read_socket) [WM_INPUTLANGCHANGE]: Update it.
5339 (w32_read_socket) [WM_CHAR]: Use it to decode character
5340 input (bug#3237).
5341 (w32_initialize): Initialize it.
5342 (codepage_for_locale): New function.
5343
53442009-06-20 Ken Raeburn <raeburn@raeburn.org>
5345
5346 * process.c (status_message): Pass Faset index argument as a lisp
5347 object, so as to work with USE_LISP_UNION_TYPE.
5348
53492009-06-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5350
5351 * coding.c (Ffind_coding_systems_region_internal):
5352 Cache checked characters.
5353
53542009-06-18 Kenichi Handa <handa@m17n.org>
5355
5356 * coding.c (decode_coding_iso_2022): Check MSB of bytes more rigidly.
5357
53582009-06-18 Andreas Schwab <aschwab@redhat.com>
5359
5360 * xdisp.c (redisplay_internal): Check that the frame is still
5361 live after redisplay of its windows.
5362 (redisplay_windows): Check that the window is still live.
5363
53642009-06-17 Andreas Schwab <schwab@linux-m68k.org>
5365
5366 * coding.c (detect_coding_utf_16): Fix previous change.
5367
53682009-06-16 Kenichi Handa <handa@m17n.org>
5369
5370 * coding.c (detect_coding_utf_16): Fix the logic of rejecting
5371 UTF-16 by checking the dispersion of Eth and Oth bytes.
5372
53732009-06-15 Andreas Schwab <schwab@linux-m68k.org>
5374
5375 * coding.c (detect_coding_utf_16): Fix typo counting odd bytes.
5376
53772009-06-15 Kenichi Handa <handa@m17n.org>
5378
5379 * process.c (status_message): Fix previous change. Be sure to
5380 decode a localized string.
5381
53822009-06-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5383
5384 * xterm.c (x_delete_terminal): Put previous change in #if 0 and
5385 add comment explaining why.
5386
53872009-06-14 Sidney Markowitz <sidney@sidney.com>
5388
5389 * nsmenu.m (EmacsTooltip: setText): Set height of tooltip.
5390
53912009-06-14 Adrian Robert <Adrian.B.Robert@gmail.com>
5392
5393 * nsfont.m (ns_attribute_value): Remove.
5394 (ns_attribute_fvalue): Incorporate code from ns_attribute_value.
5395 (ns_has_attribute): Shrink the normal range.
5396 (ns_findfonts): Don't worry about requested spec in determining
5397 need for synthItal.
5398 (ns_get_covering_families): Retain scriptToFamilies.
5399
54002009-06-14 Seiji Zenitani <zenitani@mac.com>
5401
5402 * xdisp.c [USE_MAC_TOOLBAR]: Remove obsolete definition for Mac Carbon.
5403
54042009-06-11 Kenichi Handa <handa@m17n.org>
5405
5406 * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
5407 overhang for the static composition case.
5408
54092009-06-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5410
5411 * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
5412 overhang for the automatic composition case.
5413
5414 * xterm.c (x_compute_glyph_string_overhangs): Handle the automatic
5415 composition case.
5416
54172009-06-10 Chong Yidong <cyd@stupidchicken.com>
5418
5419 * xdisp.c (get_next_display_element): When handling wrap-prefix
5420 and line-prefix, treat \n as a control character (bug#3502).
5421
54222009-06-10 Kenichi Handa <handa@m17n.org>
5423
5424 * font.c (font_parse_family_registry): Fix for one-char foundry.
5425 (font_sort_entities): Initialize prefer_prop[FONT_AVGWIDTH_INDEX].
5426
54272009-06-09 Dmitry Dzhus <dima@sphinx.net.ru> (tiny change)
5428
5429 * process.c (status_message): Fix handling of multibyte signal
5430 string (Bug#3499).
5431
54322009-06-09 Jim Meyering <meyering@redhat.com>
5433
5434 * xfaces.c (Fx_load_color_file): Avoid array bounds error if the
5435 color name is missing.
5436
54372009-06-09 Kenichi Handa <handa@m17n.org>
5438
5439 * charset.c (Fmap_charset_chars): In docstring, state clearly that
5440 FROM-CODE and TO-CODE are codepoints of CHARSET.
5441
54422009-06-08 Adrian Robert <Adrian.B.Robert@gmail.com>
5443
5444 * nsterm.m (ns_use_system_highlight_color): Drop, unused.
5445
54462009-06-08 Adrian Robert <Adrian.B.Robert@gmail.com>
5447
5448 Changes to support :script/:lang/:otf in NS font driver.
5449 * nsfont.m (nsfont_escape_name, nsfont_unescape_name)
5450 (nsfont_get_family, nsfont_char_width): Rename to ns_ prefix to
5451 indicate not part of font driver interface, and change callers.
5452 (ns_get_family): Remove pointless null check.
5453 (nsfont_spec_to_traits, nsfont_fmember_to_entity): Replace with
5454 ns_spec_to_descriptor, ns_descriptor_to_entity.
5455 (nsfont_trait_distance, nsfont_make_fontset_for_font): Remove.
5456 (ns_attribute_value, ns_attribute_fvalue, ns_has_attribute)
5457 (ns_spec_to_descriptor, ns_descriptor_to_entity)
5458 (ns_charset_covers, ns_lang_to_script, ns_otf_to_script)
5459 (ns_get_req_script, ns_accumulate_script_ranges)
5460 (ns_script_to_charset, ns_get_covering_families, ns_findfonts):
5461 New functions.
5462 (nsfont_list, nsfont_match): Use ns_findfonts.
5463 (nsfont_open): Use font descriptor instead of traits.
5464 (nsfont_draw): Handle "automatic" (lookup-table) compositions.
5465 (dump_glyphstring): Rename to ns_dump_glyphstring.
5466
5467 * nsterm.h (dump_glyphstring): Rename to ns_dump_glyphstring.
5468
5469 * nsfns.m (Fns_popup_font_panel): Use shared font manager.
5470
5471 * fontset.c (fontset_from_font): Remove NS-specific code.
5472
54732009-06-08 Peter Jones <pjones@pmade.com> (tiny change)
5474
5475 * nsterm.m (ns_draw_window_cursor): Respect cursor_type for
5476 nonactive windows.
5477
54782009-06-08 Felix Mueller <felix@enqueue.eu> (tiny change)
5479
5480 * nsterm.m (ns_init_paths): Append path separator to INFOPATH variable.
5481
54822009-06-08 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
5483
5484 * keyboard.c (kbd_buffer_get_event): Null-check used_mouse_menu.
5485
54862009-06-07 Chong Yidong <cyd@stupidchicken.com>
5487
5488 * xdisp.c (move_it_in_display_line_to): On text-only terminals,
5489 account for the overflowing of newlines into the last glyph on the
5490 display line (Bug#3482).
5491
54922009-06-05 David Reitter <david.reitter@gmail.com>
5493
5494 * nsselect.m (Fx_own_selection_internal, Fx_selection_exists_p)
5495 (Fx_selection_owner_p): Rename from Fns_own_selection_internal,
5496 Fns_selection_exists_p, Fns_selection_owner_p.
5497
54982009-06-03 Jason Rumney <jasonr@gnu.org>
5499
5500 * w32fns.c (x_create_tip_frame): Use the uniscribe font backend if
5501 available. (Bug#3379)
5502
55032009-05-29 Kenichi Handa <handa@m17n.org>
5504
5505 * coding.c (get_translation_table):
5506 Check Venable_character_translation.
5507
55082009-05-26 David Reitter <david.reitter@gmail.com>
5509
5510 * nsterm.m (ns_raise_frame): Only raise frame if visible.
5511 (x_make_frame_visible): Move frame to front rather than calling
5512 ns_raise_frame().
5513 (keyDown:): Do not swallow events that aren't re-sent if frame
5514 isn't key window.
5515 (drawRect:): Do not set visibility/iconified flags because
5516 drawRect may be called by NSView even if the frame is hidden.
5517
5518 * nsfns.m (Fx_create_frame): Follow other ports in
5519 determining visibility; default to t. Ensure async_visible is set.
5520
55212009-05-23 Eli Zaretskii <eliz@gnu.org>
5522
5523 * dired.c (Ffile_attributes): Doc fix.
5524
55252009-05-22 Chong Yidong <cyd@stupidchicken.com>
5526
5527 * m/mips.h [GNU_LINUX]: Don't define DATA_START (Bug#2685).
5528
55292009-05-21 Stefan Monnier <monnier@iro.umontreal.ca>
5530
5531 * xfont.c (xfont_list_pattern): Don't initialize xfont_scripts_cache
5532 and xfont_scratch_props.
5533 (syms_of_xfont): Do it here instead.
5534 (xfont_find_ccl_program): Delete, unused.
5535 (xfont_open): Delete unused var `i'.
5536
55372009-05-21 Kenichi Handa <handa@m17n.org>
5538
5539 * fontset.c (Qlatin): Don't make it static.
5540
5541 * xfont.c (xfont_chars_supported, xfont_supported_scripts):
5542 New functions.
5543 (xfont_scripts_cache, xfont_scratch_props): New variables.
5544 (Qlatin, Vscalable_fonts_allowed): Extern it.
5545 (xfont_list_pattern): Argument changed. Callers changed.
5546 Check Vscalable_fonts_allowed. Check the support of a script.
5547 (xfont_list): Don't reject a font spec with :script property.
5548 (xfont_has_char): Fix setting of encoding.
5549 (syms_of_xfont): Staticpro and initialize xfont_scripts_cache and
5550 xfont_scratch_props.
5551
55522009-05-19 Kenichi Handa <handa@m17n.org>
5553
5554 * font.c (font_sort_entities): Rename from font_sort_entites.
5555 Callers changed.
5556
55572009-05-18 Kenichi Handa <handa@m17n.org>
5558
5559 * font.c (font_find_for_lface): Copy SPEC's FONT_TYPE too.
5560
55612009-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
5562
5563 * frame.c (do_switch_frame) [NS_IMPL_COCOA]: Don't raise any window.
5564 (delete_frame) [NS_IMPL_COCOA]: Instead, do it here.
5565
55662009-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5567
5568 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase here.
5569 (x_delete_terminal): Dissociate resource database from display and
5570 then call XrmDestroyDatabase before closing display.
5571
55722009-05-18 Adrian Robert <Adrian.B.Robert@gmail.com>
5573
5574 * nsterm.m (ns_read_socket): Remove unused variable.
5575 * frame.c (do_switch_frame): Under NS_IMPL_COCOA section, check
5576 whether selected frame is viable before raising it (based on patch
5577 by David Reitter), and improve commentary.
5578 * nsfont.m (nsfont_make_fontset_for_font): Avoid a compiler warning.
5579
55802009-05-15 Kenichi Handa <handa@m17n.org>
5581
5582 * font.c (Ffont_spec): Check arguments.
5583
55842009-05-14 Chong Yidong <cyd@stupidchicken.com>
5585
5586 * xfaces.c (tty_supports_face_attributes_p): Recognize unspecified
5587 weight when testing attributes (Bug#3282).
5588
55892009-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5590
5591 * gtkutil.c (xg_frame_set_char_size): Set frame pixel width/height to
5592 what we expect to get in the next ConfigureNotify event.
5593
5594 * xftfont.c (xftfont_open): Make sure that Xrender extension is added
5595 before Xft one (Bug#1696).
5596
55972009-05-07 David Reitter <david.reitter@gmail.com>
5598
5599 * nsfns.m (Fx_display_planes): Compute bitplanes using
5600 NSBitsPerPixelFromDepth (Bug#3207).
5601
56022009-05-10 Chong Yidong <cyd@stupidchicken.com>
5603
5604 * editfns.c (Ftranspose_regions): Doc fix (Bug#3248).
5605
56062009-05-10 Ulrich Mueller <ulm@gentoo.org>
5607
5608 * s/gnu-linux.h: Make GCPROs and UNGCPRO no-ops also on SuperH.
5609
56102009-05-07 David Reitter <david.reitter@gmail.com>
5611
5612 * nsterm.m (ns_dumpglyphs_stretch, ns_dumpglyphs_image):
5613 Respect mouse face background.
5614
56152009-05-07 David Reitter <david.reitter@gmail.com>
5616
5617 * nsterm.m (note_mouse_movement, ns_frame_up_to_date):
5618 Mouse movement/highlight: bracket drawing operations
5619 in ns_update_begin and ns_update_end.
5620
56212009-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
5622
5623 * nsfns.m (ns_get_screen): Rewrite.
5624 Don't presume selected-frame is of type `ns'.
5625
5626 * font.c (font_update_drivers): Sanity fallback to avoid disabling
5627 all drivers.
5628
5629 * nsterm.m (-windowDidResize:): Avoid inf-loop under GNUStep.
5630
56312009-05-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5632
5633 * keyboard.h (add_user_signal): Fix typo in extern.
5634
5635 * lisp.h (add_user_signal): Remove extern.
5636
5637 * unexelf.c (unexec): Consider a section to precede the .bss section
5638 if its addresses overlap that of .bss.
5639 (unexec) [NS_IMPL_GNUSTEP]: Copy ObjC-related data from old file
5640 instead of dumping process.
5641
56422009-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
5643
5644 * keyboard.c (syms_of_keyboard): Staticpro pending_funcalls.
5645
56462009-05-04 Stefan Monnier <monnier@iro.umontreal.ca>
5647
5648 * Makefile.in (ctagsfiles1, ctagsfiles2): Include ObjC files in TAGS.
5649
56502009-05-02 Dan Nicolaescu <dann@ics.uci.edu>
5651
5652 * xterm.c (x_handle_net_wm_state): Move declaration of lval before
5653 any statements.
5654
56552009-05-02 Andreas Schwab <schwab@linux-m68k.org>
5656
5657 * process.c (read_process_output): Make sure the current buffer is
5658 always restored.
5659
5660 * coding.c (record_conversion_result): Don't modify
5661 Vlast_code_conversion_error for successful result.
5662 (alloc_destination): Don't clobber conversion result. (Bug#1650)
5663
56642009-05-01 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
5665
5666 * charset.c (load_charset): Reformat X==Y==Z to (X==Y)==Z.
5667 (load_charset_map): Remove unnecessary code.
5668
56692009-04-30 David Reitter <david.reitter@gmail.com>
5670
5671 * nsterm.m (convert_ns_to_X_keysym): Define function keys f16
5672 through f24.
5673
56742009-04-30 Chong Yidong <cyd@stupidchicken.com>
5675
5676 * xfaces.c (face_at_buffer_position): New arg base_face_id.
5677
5678 * xdisp.c (handle_face_prop): Pass base_face_id of iterator to
5679 face_at_buffer_position.
5680 (face_before_or_after_it_pos, get_next_display_element)
5681 (note_mouse_highlight): Update face_at_buffer_position call.
5682
5683 * term.c (term_mouse_highlight):
5684 * msdos.c (IT_note_mouse_highlight):
5685 * fontset.c (Finternal_char_font):
5686 * font.c (font_at, font_range): Update face_at_buffer_position call.
5687
5688 * dispextern.h (face_at_buffer_position): Update prototype.
5689
56902009-04-30 Kenichi Handa <handa@m17n.org>
5691
5692 * fontset.c (fontset_find_font): Check if rfont_def is Qnil or not.
5693
56942009-04-29 Andreas Schwab <schwab@linux-m68k.org>
5695
5696 * callproc.c (Fcall_process): Fix GC protection. Make sure
5697 current buffer is always restored.
5698
56992009-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5700
5701 * atimer.c (init_atimer): Also clear stopped_atimers.
5702
5703 * keyboard.c (init_keyboard) [POLL_FOR_INPUT]: Reset poll_timer.
5704
5705 * process.c (create_process): Clean up merger residues of
5706 2008-07-17 change.
5707
57082009-04-29 Ulrich Mueller <ulm@gentoo.org>
5709
5710 * lread.c (Vread_circle): New variable.
5711 (read1): Disable recursive read if Vread_circle is nil.
5712
57132009-04-29 Kenichi Handa <handa@m17n.org>
5714
5715 * fontset.h (set_default_ascii_font): Delete extern.
5716
5717 * fontset.c (set_default_ascii_font): Delete this unused function.
5718
5719 * frame.c (x_set_font): When ARG is a font-object, check if the
5720 font-object matches with the ASCII font-spec of the frame's
5721 fontset. If not, create a new fontset for the frame. (Bug #3075)
5722
57232009-04-28 Andreas Schwab <schwab@linux-m68k.org>
5724
5725 * fns.c (Flocale_info): Protect vector from GC during decoding.
5726
5727 * process.c (Fstart_process): Protect argv strings from GC during
5728 encoding.
5729
57302009-04-27 Andreas Schwab <schwab@linux-m68k.org>
5731
5732 * sysdep.c: Include <ctype.h>.
5733
57342009-04-27 David Reitter <david.reitter@gmail.com>
5735
5736 * nsfont.m (nsfont_open): Remove unused variable shrink.
5737 Remove commented-out code.
5738
57392009-04-26 Johan Bockgård <bojohan@gnu.org>
5740
5741 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
5742
57432009-04-25 Jason Rumney <jasonr@gnu.org>
5744
5745 * w32font.c (clear_cached_metrics): Remove, unused since 2008-08-02.
5746
57472009-04-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5748
5749 * fringe.c (init_fringe_bitmap) [HAVE_X_WINDOWS && WORDS_BIG_ENDIAN]:
5750 Swap bytes in short integer if fringe bitmap width > 8.
5751
57522009-04-23 Kenichi Handa <handa@m17n.org>
5753
5754 * xfaces.c (Fx_list_fonts): If a font size is specified in
5755 PATTERN, set it in returned scalable fonts.
5756
57572009-04-22 Chong Yidong <cyd@stupidchicken.com>
5758
5759 * keyboard.c (Fset_input_meta_mode): Doc fix.
5760
5761 * dispnew.c (Fsend_string_to_terminal): Doc fix.
5762
5763 * data.c (Fterminal_local_value, Fset_terminal_local_value): Doc fixes.
5764
5765 * coding.c (Fterminal_coding_system): Doc fix.
5766
5767 * xfns.c (Fx_display_grayscale_p, Fx_display_pixel_width)
5768 (Fx_display_pixel_height, Fx_display_planes)
5769 (Fx_display_color_cells, Fx_server_max_request_size)
5770 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
5771 (Fx_display_mm_height, Fx_display_mm_width)
5772 (Fx_display_backing_store, Fx_display_visual_class)
5773 (Fx_display_save_under, Fx_close_connection, Fx_synchronize):
5774 Doc fixes, replacing "terminal id" with "terminal object".
5775 (check_x_display_info): Handle terminal objects instead of
5776 terminal ids.
5777
5778 * term.c (Ftty_display_color_p, Ftty_display_color_cells)
5779 (Ftty_type, Fcontrolling_tty_p, Ftty_no_underline, Fsuspend_tty)
5780 (Fresume_tty, Vsuspend_tty_functions, Vresume_tty_functions):
5781 Doc fixes, replacing "terminal id" with "terminal object".
5782
57832009-04-21 Kenichi Handa <handa@m17n.org>
5784
5785 * font.c (font_load_for_lface): Cancel previous change (bug#2994).
5786 (font_score): Check AVGWIDTH too.
5787
5788 * coding.c (decode_coding_utf_16): Reduce charbuf_end for the
5789 worst case.
5790 (decode_coding_sjis, decode_coding_big5, decode_coding_charset)
5791 (decode_coding_emacs_mule, decode_coding_iso_2022): Likewise.
5792
57932009-04-19 Jason Rumney <jasonr@gnu.org>
5794
5795 The following changes fix Bug#3005 for wide glyphs on each platform,
5796 without reintroducing Bug#1258 for stretch glyphs.
5797
5798 * xterm.c (x_draw_bar_cursor): Limit cursor width differently for
5799 BAR_CURSOR and HBAR_CURSOR. Calculate width of HBAR_CURSOR using
5800 get_phys_cursor_geometry.
5801
5802 * w32term.c (x_draw_bar_cursor): Limit cursor width differently
5803 for BAR_CURSOR and HBAR_CURSOR. Calculate width of HBAR_CURSOR
5804 using get_phys_cursor_geometry.
5805
5806 * nsterm.m (ns_draw_window_cursor): HBAR_CURSOR width already
5807 correctly calculated.
5808
58092009-04-19 Jan Djärv <jan.h.d@swipnet.se>
5810
5811 * gtkutil.c (xg_tool_bar_menu_proxy, update_frame_tool_bar):
5812 Use G_CALLBACK instead of GTK_SIGNAL_FUNC which is deprecated.
5813 (xg_initialize): Use g_type_class_ref instead of gtk_type_class which
5814 is deprecated.
5815
58162009-04-18 Andreas Schwab <schwab@linux-m68k.org>
5817
5818 * font.c (font_put_frame_data): Use xfree instead of free.
5819
58202009-04-17 Juanma Barranquero <lekktu@gmail.com>
5821
5822 * w32font.c (Qja, Qko): Remove declarations.
5823 (syms_of_w32font): Don't DEFSYM them.
5824
58252009-04-17 Chong Yidong <cyd@stupidchicken.com>
5826
5827 * font.c (Qja, Qko): Move definitions here from ftfont.c.
5828
5829 * font.h (Qja, Qko): Extern them.
5830
5831 * ftfont.c (Qja, Qko): Remove declarations.
5832
5833 * xfont.c (Qja, Qko): Remove declarations.
5834
58352009-04-17 Kenichi Handa <handa@m17n.org>
5836
5837 * editfns.c (Ftranslate_region_internal): Use Fconcat to make a
5838 string from a vector to handle Latin-1 characters correctly.
5839
5840 * ftfont.c (ftfont_pattern_entity): Return a newly allocated
5841 entity even if the cache hits.
5842
58432009-04-16 Andreas Schwab <schwab@linux-m68k.org>
5844
5845 * search.c (boyer_moore): Use zero as marker value for a possible
5846 match instead of depending on overflow behavior. (Bug#2844)
5847
5848 * search.c: Use EMACS_INT for buffer positions. Add prototypes.
5849 * lisp.h: Adjust prototypes.
5850
58512009-04-16 Chong Yidong <cyd@stupidchicken.com>
5852
5853 * keyboard.c (adjust_point_for_property): Disable 2009-02-12
5854 change (Bug#3003).
5855
58562009-04-16 Kenichi Handa <handa@m17n.org>
5857
5858 * xfont.c (xfont_has_char): Special handling of `ja' and `ko' adstyle.
5859
5860 * xftfont.c (xftfont_has_char): Special handling of `ja' and `ko'
5861 adstyle.
5862
5863 * ftfont.c (Qja, Qko): Don't make them static.
5864 (enum ftfont_cache_for): New enum.
5865 (fc_charset_table): Undo the previous change.
5866 (ftfont_get_latin1_charset): Delete it.
5867 (ftfont_pattern_entity): Check cache by ftfont_lookup_cache.
5868 Set FONT_SIZE_INDEX of the entity to 0 for a scalable font. For a
5869 non-scarable font, try to get AVERAGE_WIDTH.
5870 (ftfont_lookup_cache): Argument FOR-FACE is changed to CACHE_FOR.
5871 Change ft_face_cache from a list of a hash-table. Don't check
5872 `ja' and `ko' adstyle here.
5873 (ftfont_get_fc_charset): Call ftfont_lookup_cache with
5874 FTFONT_CACHE_FOR_CHARET.
5875 (ftfont_get_charset): Undo the previous change.
5876 (ftfont_open): Call ftfont_lookup_cache with FTFONT_CACHE_FOR_FACE.
5877 (ftfont_close): Likewise.
5878 (ftfont_has_char): Special handling of `ja' and `ko' adstyle.
5879
5880 * font.c (font_sort_entites): Change the meaning of the arg
5881 BEST-ONLY. Don't optimize for VEC of lenght 1.
5882 (font_select_entity): Just return the value of font_sort_entites.
5883
5884 * xfaces.c (merge_face_vectors): Reflect font properties in
5885 to[LFACE_FONT_INDEX] to the other face attributes. Don't call
5886 font_clear_prop if a face attribute doesn't change.
5887
5888 * charset.h (charset_ksc5601): Extern it.
5889
5890 * charset.c (charset_ksc5601): New variable.
5891 (Fdefine_charset_internal): Set charset_ksc5601.
5892 (init_charset_once): Initialize charset_ksc5601 to -1.
5893
58942009-04-15 Dan Nicolaescu <dann@ics.uci.edu>
5895
5896 * fileio.c (history_delete_duplicates): Remove unused declaration.
5897
5898 * callint.c (history_delete_duplicates): New declaration.
5899 (Fcall_interactively): Remove command history duplicates when
5900 history_delete_duplicates is true.
5901
59022009-04-14 Eli Zaretskii <eliz@gnu.org>
5903
5904 * buffer.c (syms_of_buffer) <line-spacing>: Doc fix.
5905
59062009-04-14 Kenichi Handa <handa@m17n.org>
5907
5908 * font.c (Ffont_info): Fix docstring. Fix the second element of
5909 the returned value (bug#2949).
5910
59112009-04-14 Chong Yidong <cyd@stupidchicken.com>
5912
5913 * xdisp.c (Vwrap_prefix, Vline_prefix): Reflow docstrings.
5914
59152009-04-14 Kenichi Handa <handa@m17n.org>
5916
5917 * xfont.c (xfont_has_char): The font has C if C is ASCII and the
5918 encoding charset is ascii_compatible.
5919
5920 * charset.c (Fdefine_charset_internal): Make charset
5921 ascii-compatible if the method is CHARSET_METHOD_OFFSET, the
5922 code_offset is 0, and covers all ASCII characters.
5923
59242009-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
5925
5926 * nsselect.m (symbol_to_nsstring, clean_local_selection_data)
5927 (ns_string_to_pasteboard_internal):
5928 * nsmenu.m (process_dialog):
5929 * nsimage.m (ns_load_image): Use SDATA and ASET where appropriate.
5930 * nsfont.m (nsfont_open): Use XHASH to make it compile with LISP_UNION.
5931 * lisp.h (Fx_load_color_file): Declare.
5932
59332009-04-13 Kenichi Handa <handa@m17n.org>
5934
5935 * font.c (font_delete_unmatched): Preserve the order of list elements.
5936 (font_select_entity): Suppress the code to optimize for the same
5937 kind of fonts.
5938 (font_load_for_lface): Get a font that supports at least ASCII
5939 characters.
5940
5941 * ftfont.c (Qja, Qko): New variables.
5942 (fc_charset_table): Delete uniquifier data for iso8859-1.
5943 (ftfont_get_latin1_charset): New function.
5944 (get_adstyle_property): New function.
5945 (ftfont_pattern_entity): Set FONT_ADSTYLE_INDEX of entity for
5946 bitmap fonts.
5947 (ftfont_lookup_cache): Handle the case that KEY is a font-entity.
5948 Delete iso-8859-1 range from the charset of fonts whose adstyle is
5949 `ko' or `ja'.
5950 (ftfont_get_fc_charset): Call ftfont_lookup_cache with ENTITY.
5951 (ftfont_get_charset): For iso8859-1, call ftfont_get_latin1_charset.
5952 (ftfont_list): Don't refuse a font spec with non-nil `adstyle'
5953 property.
5954 (ftfont_open): Call ftfont_lookup_cache with ENTITY.
5955 (syms_of_ftfont): DEFSYM Qja and Qko.
5956
59572009-04-09 Kenichi Handa <handa@m17n.org>
5958
5959 * charset.c (map_charset_chars): For a charset of `superset'
5960 method, fix calculation of code range.
5961
5962 * font.c (font_put_extra): If VAL is nil, delete the slot for PROP
5963 from the list of extra properties.
5964 (font_clear_prop): Be sure to delete `:name' font property.
5965
59662009-04-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5967
5968 * dispnew.c (redraw_overlapping_rows): Fix detection of
5969 overlapping for topmost and bottommost rows.
5970
5971 * ftfont.c (ftfont_text_extents): Fix calculation of metrics->descent.
5972
59732009-04-06 Jason Rumney <jasonr@gnu.org>
5974
5975 * frame.c (x_set_font): Avoid C99 mid-block variable declaration.
5976
59772009-04-06 Kenichi Handa <handa@m17n.org>
5978
5979 * ftxfont.c (ftxfont_draw_backgrond): Fix args to XFillRectangle.
5980
5981 * xftfont.c (xftfont_open): Fix setting font->underline_thickness.
5982
59832009-04-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5984
5985 * ftfont.c (ftfont_open): Fix checking of the return value of
5986 FT_Load_Char. Fix setting font->underline_thickness.
5987
59882009-04-04 Chong Yidong <cyd@stupidchicken.com>
5989
5990 * terminal.c (Fterminal_name, Fdelete_terminal, Fterminal_name)
5991 (Fterminal_parameters, Fterminal_parameter)
5992 (Fset_terminal_parameter): In doc string, refer to terminal
5993 objects rather than terminal ids.
5994
59952009-04-04 Eli Zaretskii <eliz@gnu.org>
5996
5997 * dosfns.c (system_process_attributes) [SYSTEM_MALLOC]: Don't call
5998 ret_lim_data. (Bug#2867)
5999
60002009-04-03 Chong Yidong <cyd@stupidchicken.com>
6001
6002 * term.c (produce_stretch_glyph): Reduce width of stretch glyphs
6003 so they don't get wider than the window, matching 2006-01-23
6004 change to the partner function in xdisp.c (Bug#2800).
6005
60062009-04-03 Kenichi Handa <handa@m17n.org>
6007
6008 * print.c (print_object): Make each lowest sub_char_table start a
6009 new line (Bug#2866).
6010
60112009-04-02 Kenichi Handa <handa@m17n.org>
6012
6013 * fontset.c (fontset_font): Record no-font when a fontset
6014 explicitly tells not to try another font-specs.
6015
60162009-03-30 Pierre Poissinger <pierre.poissinger@gmail.com> (tiny change)
6017
6018 * charset.c (map_charset_for_dump): Add missing UNGCPRO.
6019
60202009-03-30 Kenichi Handa <handa@m17n.org>
6021
6022 * fontset.c (fontset_from_font): Specify only registry in a
6023 font-spec for all characters supported by that registry.
6024
6025 * ftfont.c: Fix previous change. Define ftfont_variation_glyphs
6026 even if HAVE_M17N_FLT is not defined.
6027
60282009-03-29 Sebastian Rose <sebastian_rose@gmx.de> (tiny change)
6029
6030 * ftfont.c: Conditionalize prototyping and use of
6031 ftfont_variation_glyphs.
6032
60332009-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
6034
6035 * frame.c (delete_frame): Work around compiler bug.
6036
6037 * editfns.c (general_insert_function): Adjust to insdel.c changes.
6038 * insdel.c (prepare_to_modify_buffer, signal_before_change):
6039 Some more EMACS_INT.
6040 * lisp.h (copy_text, count_size_as_multibyte): Fix last change.
6041
6042 * xdisp.c (dump_glyph): Fix typo.
6043
6044 * insdel.c (move_gap, move_gap_both, gap_left, gap_right)
6045 (adjust_markers_gap_motion, adjust_markers_for_delete)
6046 (adjust_markers_for_insert, adjust_point)
6047 (adjust_markers_for_replace, make_gap_larger, make_gap_smaller)
6048 (make_gap, copy_text, count_size_as_multibyte, insert)
6049 (insert_and_inherit, insert_before_markers)
6050 (insert_before_markers_and_inherit, insert_1)
6051 (count_combining_before, count_combining_after, insert_1_both)
6052 (insert_from_string, insert_from_string_before_markers)
6053 (insert_from_string_1, insert_from_gap, insert_from_buffer)
6054 (insert_from_buffer_1, adjust_after_replace)
6055 (adjust_after_replace_noundo, adjust_after_insert, replace_range)
6056 (replace_range_2, del_range, del_range_1, del_range_byte)
6057 (del_range_both, del_range_2, modify_region)
6058 (prepare_to_modify_buffer, signal_before_change)
6059 (signal_after_change, Fcombine_after_change_execute): Use EMACS_INT
6060 for buffer positions and sizes.
6061 * lisp.h: Adjust prototypes accordingly.
6062
6063 * fileio.c (adjust_markers_for_delete): Move declaration to lisp.h.
6064 (non_regular_inserted, non_regular_nbytes, read_non_regular)
6065 (Finsert_file_contents): Use EMACS_INT for buffer positions.
6066
6067 * fileio.c (Finsert_file_contents): Don't limit size to INT_MAX/4.
6068
60692009-03-27 Jan Djärv <jan.h.d@swipnet.se>
6070
6071 * frame.c (x_set_font): If the fullscreen property is non-nil, adjust
6072 lines and columns so we keep the same pixel height and width.
6073
6074 * xterm.c (handle_one_xevent): Call x_handle_net_wm_state if
6075 the property _NET_WM_STATE has changed.
6076 (x_handle_net_wm_state): New function to update frame parameter
6077 fullscreen.
6078 (x_term_init): Initialize atoms for _NET_WM_STATE.
6079
6080 * xterm.h (struct x_display_info): Add atoms for _NET_WM_STATE.
6081
60822009-03-27 Kevin Ryde <user42@zip.com.au>
6083
6084 * keyboard.c (tty_read_avail_input): Don't treat a -1 return from
6085 Gpm_GetEvent as an error that justifies closing the filedescriptor.
6086 * term.c (close_gpm): Get the filedescriptor as a (new) parameter.
6087 (Fgpm_mouse_stop): Pass that new parameter.
6088 * termhooks.h (close_gpm): Adjust prototype.
6089
60902009-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
6091
6092 * lisp.h (Fx_focus_frame): Declare.
6093
6094 * callint.c (Fcall_interactively): For '^' just delegate the work to
6095 handle-shift-selection.
6096 (syms_of_callint): Move declaration of shift-select-mode to simple.el.
6097
60982009-03-24 Chong Yidong <cyd@stupidchicken.com>
6099
6100 * editfns.c (Ffloat_time): Doc fix (Bug#2768).
6101
6102 * data.c (Qinteractive_form): New variable.
6103 (Finteractive_form): Use it.
6104
6105 * eval.c (Fcommandp): Use Qinteractive_form.
6106
61072009-03-24 Jason Rumney <jasonr@gnu.org>
6108
6109 * fileio.c (Fsubstitute_in_file_name): Always work on a copy.
6110 Calculate total size precisely. Decode environment variables
6111 before substituting. (Bug#38)
6112
61132009-03-24 Kenichi Handa <handa@m17n.org>
6114
6115 * font.c (find_font_encoding): Return Qnil for unsupported
6116 encoding (Bug#2722).
6117
61182009-03-23 Jan Djärv <jan.h.d@swipnet.se>
6119
6120 * gtkutil.c (xg_display_open): Assign a value to gdpy_def, check
6121 that gdpy is set.
6122
61232009-03-22 Alan Mackenzie <acm@muc.de>
6124
6125 * callint.c (Finteractive): Clarify the doc string - even
6126 promptless elements need \n separators.
6127
61282009-03-22 Jason Rumney <jasonr@gnu.org>
6129
6130 * w32term.c (syms_of_w32term): Doc fix for
6131 x-use-underline-position-properties.
6132
61332009-03-21 Eli Zaretskii <eliz@gnu.org>
6134
6135 * w32.c (getpwuid): Change argument type to unsigned.
6136 (struct w32_id): Change type of `rid' member to unsigned.
6137 (w32_cached_id, w32_add_to_cache, get_name_and_id): Change type of
6138 argument ID to unsigned. All callers changed.
6139 (getuid, geteuid, getgid, getegid): Change return type to unsigned.
6140
61412009-03-20 Eli Zaretskii <eliz@gnu.org>
6142
6143 * editfns.c (Fuser_uid, Fuser_real_uid): If UID as EMACS_INT is
6144 negative, produce a float value.
6145
6146 * dired.c (make_uid, make_gid): New functions.
6147 (Ffile_attributes): Use them to avoid negative UID and GID.
6148
61492009-03-20 Juanma Barranquero <lekktu@gmail.com>
6150
6151 * keyboard.c (Fcurrent_idle_time): Reflow docstring.
6152 (syms_of_keyboard) <command-hook-internal, input-method-function>:
6153 Fix typos in docstrings.
6154
61552009-03-19 Kenichi Handa <handa@m17n.org>
6156
6157 * fontset.c (Fset_fontset_font): When a spec of ASCII font is
6158 changed, use font_load_for_lface to get a new font object.
6159 Call free_realized_fontset after handling ASCII font change.
6160
6161 * frame.c (x_set_font): Handle the case that ARG is a cons.
6162
61632009-03-19 Glenn Morris <rgm@gnu.org>
6164
6165 * fileio.c (Fsubstitute_in_file_name): Doc fix.
6166
61672009-03-19 Chong Yidong <cyd@stupidchicken.com>
6168
6169 * indent.c (Fvertical_motion): Undo 2005-01-19 change (Bug#2694).
6170
61712009-03-19 Kenichi Handa <handa@m17n.org>
6172
6173 * charset.c (load_charset_map_from_file): When a mapfile can't be
6174 loaded, signal an error.
6175
61762009-03-18 Eli Zaretskii <eliz@gnu.org>
6177
6178 * dired.c (Ffile_attributes): Make sure UID and GID are always
6179 positive, even if the value is too large for a positive EMACS_INT.
6180 Doc fix.
6181
6182 * editfns.c (Fuser_login_name): Support float arguments. Doc fix.
6183
61842009-03-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6185
6186 * xmenu.c (xdialog_show): Move Fredisplay call ...
6187 (Fx_popup_dialog): ... here.
6188
61892009-03-18 Stefan Monnier <monnier@iro.umontreal.ca>
6190
6191 * dired.c (file_name_completion): Disable the first optimization just
6192 installed, since it is not implemented correctly.
6193
61942009-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
6195
6196 * dired.c (file_name_completion): Check completion-ignored-extensions
6197 only if the entry can affect bestmatch.
6198 Stop the search early, as Ftry_completion already does.
6199
62002009-03-17 Chong Yidong <cyd@stupidchicken.com>
6201
6202 * minibuf.c (Vminibuffer_completion_confirm): Doc fix.
6203
62042009-03-15 Chong Yidong <cyd@stupidchicken.com>
6205
6206 * keyboard.c (parse_menu_item): Don't display remappings as menu
6207 equivalent bindings (Bug#788).
6208
62092009-03-15 Jason Rumney <jasonr@gnu.org>
6210
6211 * w32term.h (WM_EMACS_PAINT): New message.
6212 * w32term.c (w32_read_socket): Use it instead of WM_PAINT.
6213 * w32fns.c (w32_wnd_proc): Change WM_PAINT to WM_EMACS_PAINT
6214 before passing to lisp thread. (Bug#950)
6215
62162009-03-14 David Reitter <david.reitter@gmail.com>
6217
6218 * nsterm.m (ns_shutdown_properly, -terminate): Remove global state
6219 variable as it was never reset.
6220 (ns_term_init): Remove initialization of Lisp-settable defaults
6221 and ns_expand_space.
6222 (-setPanelFromDefaultValues): Remove ns_expand_space.
6223 (-showPreferencesWindow): Send new KEY_NS_SHOW_PREFS key.
6224 * nsfont.m (nsfont_open): Remove ns_expand_space, assume -0.5
6225 i.e. no additional spacing, similar to Carbon port.
6226
6227 * nsterm.h: Define KEY_NS_SHOW_PREFS key.
6228 * nsfns.m (ns-popup-prefs-panel): Remove.
6229
62302009-03-14 Jan Djärv <jan.h.d@swipnet.se>
6231
6232 * sound.c (alsa_configure): Remove call to deprecated
6233 snd_pcm_sw_params_set_xfer_align.
6234
62352009-03-14 Stephen Berman <stephen.berman@gmx.net>
6236
6237 * gtkutil.c (xg_tool_bar_callback): Set focus back to the frame
6238 after clicking in a detached tool bar.
6239 (xg_tool_bar_proxy_callback): Remove call to Fx_focus_frame.
6240
62412009-03-13 Stefan Monnier <monnier@iro.umontreal.ca>
6242
6243 * fontset.c (fontset_from_font, Ffontset_info): YAILOM (Yet another
6244 int/Lisp_Object mixup).
6245
62462009-03-13 Kenichi Handa <handa@m17n.org>
6247
6248 * fontset.c (Ffontset_info, check_fontset_name): New arg frame.
6249 Handle NAME nil and t correctly. Callers changed.
6250 (font_def_arg, add_arg, from_arg, to_arg): Delete them.
6251 (set_fontset_font): Change ARG to a vector. Handle range_list in
6252 ARG correctly.
6253 (Fset_fontset_font): Fix the case that TARGET is both a script
6254 name and charset name. Adjust the arg to set_fontset_font for
6255 the above change.
6256 (fontset_from_font): Fix previous change.
6257 (Ffontset_info): Adjust for the 2008-07-09 change of fontset
6258 entry. If FONTSET is the default fontset, don't set the extra
6259 slot of the returning char-table.
6260
62612009-03-12 Juanma Barranquero <lekktu@gmail.com>
6262
6263 * nsfns.m (Fx_close_connection): Doc fix.
6264 (Fns_do_applescript): Reflow docstring.
6265 (Fns_hide_others, Fns_hide_emacs, Fns_convert_utf8_nfd_to_nfc)
6266 (Fx_display_pixel_width, Fx_display_pixel_height)
6267 (Fns_display_usable_bounds, Fx_display_planes, Fx_show_tip):
6268 Fix typos in docstrings.
6269 (Fns_set_alpha): Fix typos in error messages.
6270
62712009-03-12 David Reitter <david.reitter@gmail.com>
6272
6273 * termhooks.h [HAVE_NS]: Define NS_NONKEY_EVENT to be used for
6274 non-key system events on NS. Formerly, NON_ASCII_KEYSTROKE_EVENT
6275 were used for such events.
6276
6277 * nsterm.m (newFrame, openFile, fulfillService, changeFont)
6278 (toggleToolbar, performDragOperation, runHelp): Use it.
6279
6280 * keyboard.c (parse_menu_item) [HAVE_NS]: Treat new event like
6281 NON_ASCII_KEYSTROKE_EVENT, but set used_mouse_menu.
6282
62832009-03-11 Kenichi Handa <handa@m17n.org>
6284
6285 * font.h (font_open_by_spec): Extern it.
6286
6287 * font.c (font_open_by_spec): New function.
6288 (font_open_by_name): Use font_open_by_spec.
6289
6290 * frame.c (x_set_font): When ARG is a font-object, don't alter the
6291 fontset of the frame.
6292
6293 * fontset.c (Fset_fontset_font): When a font for ASCII is changed,
6294 modify the default font of frames that use this fontset.
6295 (num_auto_fontsets): New variable.
6296 (fontset_from_font): Use num_auto_fontsets to decide a fontset
6297 name. Be sure to set FONTSET_ASCII to the correct font name.
6298 (update_auto_fontset_alist): New function.
6299
63002009-03-11 Juanma Barranquero <lekktu@gmail.com>
6301
6302 * makefile.w32-in: Update dependencies.
6303
63042009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
6305
6306 * nsfns.m (syms_of_nsfns): Remove Qbuffered.
6307
63082009-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
6309
6310 * buffer.c (Fswitch_to_buffer): Revert part of 2008-10-21's change.
6311
63122009-03-10 Chong Yidong <cyd@stupidchicken.com>
6313
6314 * lread.c (Feval_buffer): Doc fix.
6315
63162009-03-09 Kenichi Handa <handa@m17n.org>
6317
6318 * charset.c (Qfile_name_handler_alist): Extern it.
6319 (load_charset_map_from_file): Temporarily bind
6320 `file-name-handler-alist' to nil while calling openp. (Bug#2435)
6321
63222009-03-06 Aaron Ecay <aaronecay@gmail.com> (tiny change)
6323
6324 * nsterm.m (ns_draw_vertical_window_border): Draw 1 pixel wide,
6325 not two, and use NSRectFill instead of NSDrawGroove. (Bug#2352)
6326
63272009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
6328
6329 * nsterm.m: Include <signal.h> for SIGTERM used in ns_term_shutdown.
6330 (x_set_window_size): Change back to calculated method of setting
6331 toolbar height under Cocoa. (Bug#2546)
6332 (EmacsView-windowWillUseStandardFrame:defaultFrame:): New method.
6333 (EmacsView-drawRect:): Completely shortcircuit if ns_in_resize.
6334
6335 * nsfns.m (ns_appkit_version_int): Fix typo in the version macro.
6336
6337 * nsmenu.m (EmacsMenu-addItemWithWidgetValue:): Don't add
6338 accelerator in parens under GNUstep.
6339
63402009-03-06 Kenichi Handa <handa@m17n.org>
6341
6342 These changes are to detect incorrect composition sequence without
6343 looking ahead the source. (Bug#2370)
6344
6345 * coding.h: Include "composite.h".
6346 (enum compisition_state): New enum.
6347 (struct compisition_status): New struct.
6348 (struct iso_2022_spec): New member cmp_status.
6349 (struct emacs_mule_spec): New struct.
6350 (struct coding_system): New members ctext_extended_segment_len and
6351 embedded_utf_8. Change the union member
6352 spec.emacs_mule_full_support to spec.emacs_mule.
6353
6354 * coding.c (CODING_ISO_CMP_STATUS): New macro.
6355 (CODING_ISO_EXTSEGMENT_LEN, CODING_ISO_EMBEDDED_UTF_8): New macros.
6356 (MAX_ANNOTATION_LENGTH): Define to 5.
6357 (ADD_COMPOSITION_DATA): New arg nbytes.
6358 (emacs_mule_char): New arg cmp_status.
6359 (DECODE_EMACS_MULE_COMPOSITION_CHAR): Delete it.
6360 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): New arg c.
6361 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New arg c.
6362 (DECODE_EMACS_MULE_21_COMPOSITION): Delete the arg c.
6363 (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Likewise.
6364 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Likewise.
6365 (DECODE_EMACS_MULE_COMPOSITION_START): New macro.
6366 (EMACS_MULE_COMPOSITION_END): New macro.
6367 (emacs_mule_finish_composition): New function.
6368 (EMACS_MULE_MAYBE_FINISH_COMPOSITION): New macro.
6369 (decode_coding_emacs_mule): Avoid long looking ahead while
6370 handling composition.
6371 (DECODE_COMPOSITION_RULE): Argument changed to rule and nbytes.
6372 (ENCODE_COMPOSITION_RULE): New macro.
6373 (finish_composition): New function.
6374 (MAYBE_FINISH_COMPOSITION): Call finish_composition.
6375 (DECODE_COMPOSITION_START): New implementation.
6376 (DECODE_COMPOSITION_END): Likewise.
6377 (STORE_COMPOSITION_RULE): New macro.
6378 (decode_coding_iso_2022): Avoid long looking ahead while handling
6379 composition, CTEXT extended segment, and embedded UTF-8.
6380 (setup_coding_system): For a coding of type iso-2022, reset
6381 CODING_ISO_EXTSEGMENT_LEN (coding) and
6382 CODING_ISO_EMBEDDED_UTF_8 (coding).
6383 (get_translation): Delete arguments last_block, from_nchars,
6384 to_nchars. Callers changed.
6385 (produce_chars): Don't modify charbuf. Adjusted for the change of
6386 get_translation.
6387 (produce_composition): Adjust for the new annotation sequence.
6388 (handle_composition_annotation): Likewise.
6389 (consume_chars): Adjust for the change of get_translation.
6390
63912009-03-05 Adrian Robert <Adrian.B.Robert@gmail.com>
6392
6393 * nsterm.m (ns_select): Shortcircuit if reentrant call. (Bug#2564)
6394
63952009-03-05 Kenichi Handa <handa@m17n.org>
6396
6397 * font.c (font_select_entity): New function.
6398 (font_find_for_lface): Use font_select_entity to select a font.
6399
6400 * fontset.c (fontset_find_font): If a font found without
6401 restricting to the characters C doesn't support C, try to find a
6402 font with C restriction.
6403
64042009-03-04 Nikolaj Schumacher <me@nschum.de>
6405
6406 * nsfont.m (nsfont_draw): Compare ns_antialias_text against lisp value.
6407
64082009-03-04 Jason Rumney <jasonr@gnu.org>
6409
6410 * w32fns.c (w32_wnd_proc): Only ignore IME messages for the
6411 characters that have already been read. (Bug#2569)
6412
6413 * image.c (xbm_read_bitmap_data, png_load, svg_load_image):
6414 Log an error message if check_image_size failed.
6415 (xpm_load_image, pbm_load, jpeg_load, tiff_load, gif_load)
6416 (gs_load): Mention max-image-size in size error message. (Bug#2560)
6417
64182009-03-02 Eli Zaretskii <eliz@gnu.org>
6419
6420 * callproc.c (Fcall_process): Bind inhibit-modification-hooks to t
6421 when decoding process output.
6422
64232009-03-01 Richard M Stallman <rms@gnu.org>
6424
6425 * m/mips.h (DATA_SEG_BITS, XUINT, XSET): Definitions disabled.
6426
6427 * emacs.c (gdb_data_seg_bits) [USE_LSB_TAG]: Make it 0.
6428
64292009-02-28 Eli Zaretskii <eliz@gnu.org>
6430
6431 * coding.c (decode_coding_utf_8, decode_coding_utf_16)
6432 (decode_coding_emacs_mule, decode_coding_iso_2022)
6433 (encode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
6434 (decode_coding_raw_text, decode_coding_charset)
6435 (setup_coding_system, decode_eol, decode_coding, consume_chars):
6436 Honor inhibit-eol-conversion. (Bug #2186)
6437
64382009-02-28 Jason Rumney <jasonr@gnu.org>
6439
6440 * coding.c (detect_coding_charset): If not checking latin extra,
6441 fail on characters between 0x80 and 0xA0. (Bug#2354)
6442
64432009-02-28 Eli Zaretskii <eliz@gnu.org>
6444
6445 * coding.c (detect_coding_charset): Fix change from 2008-10-21.
6446 Also, check iso-latin-*, not only iso-8859-*. (Bug#2497)
6447
64482009-02-27 Glenn Morris <rgm@gnu.org>
6449
6450 * callint.c (Finteractive): Doc fix.
6451
64522009-02-27 Kenichi Handa <handa@m17n.org>
6453
6454 * lread.c (read_escape): Signal an error for invalid \UXXXXXXXX.
6455
64562009-02-27 Chong Yidong <cyd@stupidchicken.com>
6457
6458 * font.c (font_style_to_value): Set value for unknown symbols to
6459 100 instead of 255.
6460 (weight_table, slant_table, width_table): Treat "unspecified" as
6461 the default value.
6462
64632009-02-26 Juanma Barranquero <lekktu@gmail.com>
6464
6465 * fileio.c (Fnext_read_file_uses_dialog_p): Fix typo in docstring.
6466
64672009-02-25 Juanma Barranquero <lekktu@gmail.com>
6468
6469 * lread.c (Fload): Stop checking Vloads_in_progress and signal
6470 error as soon as a recursive load is detected.
6471
64722009-02-24 Adrian Robert <Adrian.B.Robert@gmail.com>
6473
6474 * nsterm.m (ns_ring_bell): Convert rect to window coordinates
6475 before caching.
6476
64772009-02-24 Kenichi Handa <handa@m17n.org>
6478
6479 * fontset.c (fontset_find_font): Fix the condition for checking
6480 unavailable font.
6481
64822009-02-24 Glenn Morris <rgm@gnu.org>
6483
6484 * xfaces.c (Finternal_set_font_selection_order): Remove leading
6485 whitespace that confuses documentation.
6486
64872009-02-23 Miles Bader <miles@gnu.org>
6488
6489 * process.c (Flist_system_processes, Fprocess_attributes)
6490 (syms_of_process): Rename `system-process-attributes' to
6491 `process-attributes'.
6492
64932009-02-22 Andreas Schwab <schwab@linux-m68k.org>
6494
6495 * coding.h (struct coding_system): Make safe_charsets a pointer to
6496 unsigned char.
6497 * coding.c (CODING_ISO_REQUEST): Check for safe_charsets content
6498 being 255.
6499 (SAFE_CHARSET_P): Likewise.
6500 (setup_iso_safe_charsets): Properly setup safe_charsets.
6501 (Fdefine_coding_system_internal): Likewise.
6502 (setup_coding_system): Likewise. Remove unneeded casts.
6503 (detect_coding_iso_2022): Compare Viso_2022_charset_list with
6504 CODING_ATTR_CHARSET_LIST, not CODING_ATTR_SAFE_CHARSETS. Remove
6505 unneeded casts.
6506
6507 * insdel.c (del_range_2): Don't modify gap contents when called
6508 from decode_coding_object. (Bug#1809)
6509
65102009-02-21 Chong Yidong <cyd@stupidchicken.com>
6511
6512 * data.c (syms_of_data): Define Qfont_spec, Qfont_entity, and
6513 Qfont_object.
6514 (Ftype_of): Recognize font objects.
6515
6516 * lisp.h: Define Qfont_spec, Qfont_entity, Qfont_object extern.
6517
6518 * font.c (Qfont_spec, Qfont_entity, Qfont_object): Definitions
6519 moved to data.c.
6520
65212009-02-20 Adrian Robert <Adrian.B.Robert@gmail.com>
6522
6523 * nsterm.m (x_make_frame_invisible): Unset async_visible,
6524 async_iconified. Based on a patch by Christian Lynbech
6525 <christian.lynbech@tieto.com>.
6526 (EmacsView-windowDidMiniaturize:): Unset async_visible.
6527
65282009-02-20 Glenn Morris <rgm@gnu.org>
6529
6530 * syntax.c (Fskip_chars_forward): Fix doc typo.
6531
65322009-02-20 Chong Yidong <cyd@stupidchicken.com>
6533
6534 * keymap.c (Fkeymap_parent): Doc fix (Bug#2391).
6535
65362009-02-19 Chong Yidong <cyd@stupidchicken.com>
6537
6538 * xfns.c (Fx_create_frame): Give Xft driver a higher priority.
6539
65402009-02-19 Kenichi Handa <handa@m17n.org>
6541
6542 * coding.c (detect_coding): Preserve coding->mode.
6543 Don't overflow coding->carryover. (Bug#2370)
6544
65452009-02-18 Dan Nicolaescu <dann@ics.uci.edu>
6546
6547 * m/ibmrs6000.h (ADDR_CORRECT): Restore, removed by mistake on 2008-07-23.
6548
65492009-02-18 Kenichi Handa <handa@m17n.org>
6550
6551 * font.c (font_check_otf_features): Fix handling of `nil' element.
6552 (Ffont_spec): Describe :lang and :otf in the docstring.
6553
65542009-02-16 Andreas Schwab <schwab@suse.de>
6555
6556 * coding.c (Fcheck_coding_systems_region): Fix test for unibyte
6557 string.
6558
65592009-02-16 Kenichi Handa <handa@m17n.org>
6560
6561 * coding.c (Fcheck_coding_systems_region): Fix typo; Qt -> Qnil.
6562 (Bug#1723)
6563
65642009-02-14 Chong Yidong <cyd@stupidchicken.com>
6565
6566 * dispextern.h (struct iterator_stack_entry): New line_wrap member.
6567
6568 * xdisp.c (push_it, pop_it): Save and restore line_wrap.
6569 (handle_line_prefix): Suppress wrapping of wrap prefixes.
6570
65712009-02-14 Eli Zaretskii <eliz@gnu.org>
6572
6573 * msdos.c (MAX_SCREEN_BUF): New macro.
6574 (IT_write_glyphs): Make screen_buf[] always be MAX_SCREEN_BUF-long.
6575 Encode the entire run of glyphs sharing the same face, instead of
6576 doing that one glyph at a time (fixes a bug with displaying
6577 double-size characters).
6578
65792009-02-13 Adrian Robert <Adrian.B.Robert@gmail.com>
6580
6581 * nsfns.m (ns-read-file-name): BLOCK_INPUT while showing dialog.
6582
6583 * nsmenu.m (pop_down_menu): Check popup_activated_flag.
6584 (ns_popup_dialog, EmacsDialogPanel-runDialogAt:): Let
6585 pop_down_menu do the cleanup work as it is always called. (Bug#2154)
6586
6587 * nsfont.m (nsfont_make_fontset_for_font): For now, don't try to
6588 set fontset font for "mathematical-" sub-scripts. (Bug #2218)
6589
65902009-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
6591
6592 * keyboard.c (adjust_point_for_property): Allow stopping between two
6593 invisible areas.
6594
65952009-02-12 Jason Rumney <jasonr@gnu.org>
6596
6597 * w32font.c (check_face_name): Check for fake helv. (Bug#2275)
6598 (add_font_entity_to_list): Call check_face_name even when family
6599 is unspecified.
6600
6601 * w32term.c (x_display_pixel_height, x_display_pixel_width):
6602 Release DC when finished. Use NULL window to refer to desktop.
6603 (w32_term_init): Use NULL window to refer to desktop. (Bug#460)
6604
6605 * w32font.c (add_font_entity_to_list): Fix check for substituted
6606 raster fonts. (Bug#2219)
6607
66082009-02-12 Kenichi Handa <handa@m17n.org>
6609
6610 * composite.c (MAX_AUTO_COMPOSITION_LOOKBACK): New macro.
6611 (composition_gstring_width): Fix handling of LGLYPH_YOFF.
6612 (autocmp_chars): Use fast_looking_at. Don't compose more
6613 characters than MAX_COMPOSITION_COMPONENTS.
6614 (find_automatic_composition): While looking forward and backward,
6615 check static composition. Fix where to stop looking forward.
6616 (composition_adjust_point): Fix checking of static composition.
6617 (Fcomposition_get_gstring): Pay attention to
6618 MAX_COMPOSITION_COMPONENTS.
6619
6620 * lisp.h (fast_looking_at): Extern it.
6621
6622 * search.c (fast_looking_at): New function.
6623
6624 * term.c (encode_terminal_code): Adjust for the change of
6625 <struct glyph>.u.cmp.to.
6626 (append_composite_glyph): Likewise.
6627
6628 * xdisp.c (fill_gstring_glyph_string): Adjust for the change of
6629 <struct glyph>.u.cmp.to. Check if the glyph belongs to the same
6630 composition.
6631 (append_composite_glyph): Adjust for the change of
6632 <strcut glyph>.u.cmp.to.
6633
66342009-02-11 Juanma Barranquero <lekktu@gmail.com>
6635
6636 * casetab.c (init_casetab_once):
6637 * coding.c (ALLOC_CONVERSION_WORK_AREA):
6638 * font.c (font_update_lface):
6639 * fontset.c (Fnew_fontset):
6640 * ftfont.c (ftfont_drive_otf):
6641 * xfont.c (xfont_open):
6642 * xftfont.c (xftfont_get_xft_draw): Remove spurious semicolons.
6643
66442009-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
6645
6646 * fileio.c (Fwrite_region): !NILP -> CONSP.
6647
66482009-02-10 Andreas Schwab <schwab@suse.de>
6649
6650 * process.c (send_process): Properly relocate pointer into data
6651 when using encoded data. (Bug#2272)
6652
66532009-02-08 ARISAWA Akihiro <ari@mbf.sphere.ne.jp>
6654
6655 * coding.c (detect_coding_charset): Fix previous change.
6656
66572009-02-08 Jason Rumney <jasonr@gnu.org>
6658
6659 * w32fns.c (w32_hide_hourglass): Handle case where frame
6660 disappeared while hourglass was displayed. (Bug #2193)
6661
66622009-02-07 Andreas Schwab <schwab@suse.de>
6663
6664 * unexelf.c (unexec): Fix error message.
6665
66662009-02-07 Adrian Robert <Adrian.B.Robert@gmail.com>
6667
6668 * nsterm.m (EmacsApp-sendEvent:): Defer NSApplicationDefined event
6669 when modal window is active. (Bug #2152)
6670 (applicationShouldTerminate:): Remove now-unneeded while loop
6671 around NSRunAlertPanel.
6672
6673 * nsmenu.m (popupSession): New file-global variable.
6674 (pop_down_menu): End the popupSession before closing dialog.
6675 (ns_popup_dialog): BLOCK_INPUT around dialog presentation.
6676 (EmacsDialogPanel-runDialogAt:): Don't place window (superfluous),
6677 don't query NSApp for events (just sleep instead).
6678
66792009-02-07 Eli Zaretskii <eliz@gnu.org>
6680
6681 * coding.c (syms_of_coding) <translation-table-for-input>:
6682 Modify doc string to discourage use for character code unification.
6683
66842009-02-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6685
6686 * atimer.c (run_timers): Update pending_atimers.
6687
66882009-02-06 Chong Yidong <cyd@stupidchicken.com>
6689
6690 * image.c (svg_load_image): Fix last change.
6691
6692 * xfns.c (Fx_create_frame): Signal an error if no font is
6693 found (Bug#2147).
6694
66952009-02-05 Juanma Barranquero <lekktu@gmail.com>
6696
6697 * character.c (syms_of_character) <script-representative-chars>:
6698 Fix typo in docstring.
6699
67002009-02-04 Adrian Robert <Adrian.B.Robert@gmail.com>
6701
6702 * nsmenu.m (pop_down_menu): New function.
6703 (ns_popup_dialog): Call it on unwind.
6704 (EmacsDialogPanel-runDialogAt:): Check popup_activated_flag and
6705 call timer_check() (Bug#2154).
6706 (EmacsMenu-menuNeedsUpdate:): Don't call ns_update_menu if
6707 handling_signal is set.
6708 (EmacsMenu-fillWithWidgetValue:): Set submenu title.
6709
6710 * config.in: Get rid of COCOA_EXPERIMENTAL_CTRL_G.
6711
6712 * s/darwin.h: Same and NO_SOCK_SIGIO as well.
6713
6714 * nsterm.m (ns_read_socket): Same and don't set handling_signal.
6715
6716 * keyboard.c (poll_for_input_1, handle_async_input):
6717 Set handling_signal under HAVE_NS.
6718
67192009-02-04 Glenn Morris <rgm@gnu.org>
6720
6721 * fileio.c (Fwrite_region): Doc fix (mention annotate-functions).
6722
67232009-02-04 Kenichi Handa <handa@m17n.org>
6724
6725 * Makefile.in (composite.o): Depends on frame.h and termhooks.h.
6726
6727 * charset.c (Fchar_charset): New optional arg restriction.
6728
6729 * coding.h (coding_system_charset_list): Extern it.
6730
6731 * coding.c (coding_system_charset_list): New function.
6732
6733 * composite.c: Include coding.h and termhooks.h.
6734 (composition_gstring_p): Fix for the terminal case.
6735 (composition_gstring_width): Likewise.
6736 (fill_gstring_body): Likewise.
6737 (autocmp_chars): For terminal, call Fcomposition_get_gstring with
6738 the frame.
6739 (composition_compute_stop_pos): Adjust cmp_it->stop_pos if point
6740 is within a composition.
6741 (Fcomposition_get_gstring): Fix the terminal case.
6742
6743 * term.c (encode_terminal_code): Fix handling of composition.
6744 (produce_composite_glyph): For static composition, get pixel_width
6745 from struct composition.
6746
67472009-02-02 Andreas Schwab <schwab@suse.de>
6748
6749 * unexelf.c (unexec): Handle unaligned bss offset.
6750
67512009-02-01 Adrian Robert <Adrian.B.Robert@gmail.com>
6752
6753 * nsterm.m (ns_read_socket): Copy 2009-01-29 and 2009-01-30
6754 XT,w32read_socket changes to ns_read_socket.
6755
6756 * keyboard.c (handle_interrupt): Don't call
6757 quit_throw_to_read_char() under NS.
6758
6759 * blockinput.h: Remove NS-specific code.
6760
67612009-01-30 Dan Nicolaescu <dann@ics.uci.edu>
6762
6763 * dispnew.c (window_change_signal): Don't try to get the size of a
6764 suspended tty frame.
6765 * term.c (Fresume_tty): Resize if the size has changed while the
6766 tty was suspended.
6767
6768 * alloc.c (mark_stack): Properly conditionalize previous change.
6769
67702009-01-30 Juanma Barranquero <lekktu@gmail.com>
6771
6772 * w32inevt.c (w32_console_read_socket) [SYNC_INPUT]:
6773 * w32term.c (w32_read_socket) [SYNC_INPUT]:
6774 Remove; this code is not used on Windows.
6775
67762009-01-30 Eli Zaretskii <eliz@gnu.org>
6777
6778 * coding.c (detect_eol, decode_eol): Handle text with DOS-style
6779 EOLs that also has stray ^M characters.
6780
67812009-01-30 Juanma Barranquero <lekktu@gmail.com>
6782
6783 * atimer.c (run_timers, alarm_signal_handler):
6784 * keyboard.c (pending_signals, handle_async_input, init_keyboard):
6785 * w32inevt.c (w32_console_read_socket):
6786 * w32term.c (w32_read_socket):
6787 * xterm.c (XTread_socket): Use "#ifdef SYNC_INPUT" where appropriate.
6788
67892009-01-30 Chong Yidong <cyd@stupidchicken.com>
6790
6791 * callproc.c (Vtemp_file_name_pattern): Remove DEFVAR_LISP.
6792 Initialize it as a relative filename pattern.
6793 (init_callproc): Don't initialize Vtemp_file_name_pattern here.
6794 (Fcall_process_region): Simplify temp file creation using
6795 temporary-file-directory.
6796
67972009-01-29 Eli Zaretskii <eliz@gnu.org>
6798
6799 * msdos.c: Rename pending_signals to msdos_pending_signals.
6800 (sig_suspender, sigprocmask): Adjust.
6801
68022009-01-29 Chong Yidong <cyd@stupidchicken.com>
6803
6804 * keyboard.c (pending_signals): New var.
6805 (poll_for_input, input_available_signal, init_keyboard): Set it.
6806 (process_pending_signals): New function.
6807
6808 * lisp.h (QUIT): Check pending_signals instead of
6809 interrupt_input_pending. Use process_pending_signals.
6810
6811 * atimer.c (run_timers, alarm_signal_handler): Update pending_signals.
6812
6813 * process.c (wait_reading_process_output): Use process_pending_signals.
6814
6815 * sysdep.c (emacs_write): Use process_pending_signals.
6816
6817 * xterm.c (XTread_socket): Update pending_signals.
6818
6819 * w32term.c (w32_read_socket): Update pending_signals.
6820
6821 * w32inevt.c (w32_console_read_socket): Update pending_signals.
6822
68232009-01-29 Kenichi Handa <handa@m17n.org>
6824
6825 * xftfont.c (xftfont_has_char): New function.
6826 (syms_of_xftfont): Register xftfont_has_char in xftfont_driver.
6827
68282009-01-29 Adrian Robert <Adrian.B.Robert@gmail.com>
6829
6830 * nsterm.h (EmacsPrefsController.cursorBlinkSlider): Only define
6831 under GNUstep.
6832 (ns_query_color): New declaration.
6833
6834 * nsterm.m (ns_confirm_quit): New variable.
6835 (ns_set_default_prefs, syms_of_nsterm, ns_term_init): Initialize it.
6836 (EmacsApp-applicationShouldTerminate:): Use it.
6837 (EmacsPrefsController): Let user set it.
6838 (ns_query_color): New function.
6839 (ns_defined_color): Use it.
6840 (ns_initialize): Drop.
6841 (ns_term_init): Add two lines from ns_initialize(), and set
6842 input_interrupt_mode to nil.
6843
6844 * image.c (svg_load_image): Don't right-shift background RGB when
6845 obtained from FRAME_BACKGROUND_PIXEL. Under HAVE_NS use ns_query_color.
6846
68472009-01-28 Kenichi Handa <handa@m17n.org>
6848
6849 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
6850 (fontset_get_font_group): Remember that no font-group is specified
6851 for C.
6852
68532009-01-27 Chong Yidong <cyd@stupidchicken.com>
6854
6855 * fns.c (concat): Check for string overflow (bug#1787).
6856
6857 * undo.c (undo_limit, undo_strong_limit, Vundo_outer_limit):
6858 Quadruple undo limits (bug#1501).
6859
68602009-01-27 Kenichi Handa <handa@m17n.org>
6861
6862 * ftfont.c (ftfont_has_char): If the arg FONT is a font-object,
6863 directly use GT_Get_Char_index.
6864
6865 * xftfont.c (struct xftfont_info): New member `index'.
6866
6867 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
6868 (Ffontset_font): Adjust for the change of fontset entry.
6869
68702009-01-26 Kenichi Handa <handa@m17n.org>
6871
6872 * fontset.c (fontset_find_font): Fix handling of non-cons return
6873 value of fontset_get_font_group.
6874 (fontset_font): Revert last change.
6875
68762009-01-26 Jason Rumney <jasonr@gnu.org>
6877
6878 * w32font.c (w32font_list_internal): Return quickly if registry is
6879 unknown. Simplify final return.
6880 (add_font_entity_to_list): Break complex logic down into more
6881 manageable chunks. Move unknown registry check to
6882 w32font_list_internal.
6883
68842009-01-25 Adrian Robert <Adrian.B.Robert@gmail.com>
6885
6886 Changes to remove Feval calls from GUI under NS.
6887
6888 * nsterm.h: Move KEY_NS_... definitions here from nsterm.m.
6889 Add NS_TOGGLE_TOOLBAR, NS_PUT_WORKING_TEXT, NS_UNPUT_WORKING_TEXT.
6890 Remove NS_INSERT_WORKING_TEXT, NS_DELETE_WORKING_TEXT.
6891
6892 * nsterm.m: Move KEY_NS_... definitions to nsterm.h.
6893 (EmacsView-toggleToolbar:): Use KEY_NS_TOGGLE_TOOLBAR.
6894 (EmacsView-setMarkedText:,-deleteWorkingText:): Use NS_TEXT_EVENT
6895 instead of NON_ASCII_KEYSTROKE_EVENT.
6896 (EmacsApp-terminate:): Use KEY_NS_POWER_OFF instead of Feval.
6897 (EmacsApp-applicationShouldTerminate:): Query user.
6898 (EmacsPreferencesController-runHelp:): Use KEY_NS_INFO_PREFS
6899 instead of Feval.
6900
6901 * termhooks.h (NS_TEXT_EVENT): New event type under HAVE_NS.
6902
6903 * keyboard.c (kbd_buffer_get_event): Check for it.
6904 (keys_of_keyboard): Define lispy keys for
6905 ns-put/unput-working-text.
6906
6907 * nsmenu.m (ns_popup_dialog): Resync window setting with X and W32
6908 versions.
6909 (EmacsDialog-runDialogAt:): Use NSModalPanelRunLoopMode.
6910
69112009-01-25 Chong Yidong <cyd@stupidchicken.com>
6912
6913 * dispnew.c (buffer_posn_from_coords): Use Fset_buffer instead of
6914 setting current_buffer directly. (Bug#2044)
6915
69162009-01-24 Chong Yidong <cyd@stupidchicken.com>
6917
6918 * fontset.c (fontset_font): If we know there is no font, don't do
6919 any work. (Bug#1952, bug#1990).
6920
6921 * font.c (font_parse_xlfd): Handle patterns of length < 2. (Bug#1802)
6922
69232009-01-23 Adrian Robert <Adrian.B.Robert@gmail.com>
6924
6925 * emacs.c (main): Do fork+exec under --daemon in Cocoa.
6926 (ns_no_defaults): New declaration.
6927 (main): Use it.
6928
6929 * nsterm.h (ns_no_defaults): New declaration.
6930
6931 * nsfns.m (x_get_string_resource): Don't read when ns_no_defaults.
6932
6933 * nsterm.m (ns_no_defaults): New variable.
6934 (ns_initialize): Don't read defaults when ns_no_defaults.
6935 (EmacsView-readSelectionFromPasteboard:)
6936 (writeSelectionToPasteboard:types:): New stubbed-out methods for
6937 NSServicesRequests protocol. (Bug#1435)
6938 (ns_dumpglyphs_stretch): New function.
6939 (ns_draw_glyph_string): Use it, parallel Yamamoto Mitsuharu change
6940 of 2008-11-15 to other terms. (Bug#615)
6941
6942 * nsimage.m (setPixmapData:): Set to ignore image DPI.
6943
69442009-01-23 Giorgos Keramidas <keramida@freebsd.org> (tiny change)
6945
6946 * alloc.c (mark_stack): Use "flushw" instead of "ta 3" assembly
6947 call for Sparc64.
6948
69492009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
6950
6951 * nsfns.m:
6952 * nsgui.h:
6953 * nsmenu.m:
6954 * nsselect.m:
6955 * nsterm.h:
6956 * nsterm.m: Remove '23' comments that indicated code added during
6957 update from emacs-20 -> emacs-23.
6958
69592009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
6960
6961 * nsterm.m (EmavsView-keyDown:): Treat nil as Qnone for
6962 ns_alternate_modifier. (Bug#1217)
6963
6964 * nsmenu.m (EmacsMenu-parseKeyEquiv:, addItemWithWidgetValue:):
6965 Display all shortcuts, including those w/o super modifier.
6966
6967 * nsfns.m (ns-read-file-name): Fix typo in assignment statement.
6968
69692009-01-22 Chong Yidong <cyd@stupidchicken.com>
6970
6971 * fileio.c (Vwrite_region_post_annotation_function)
6972 (Vwrite_region_annotation_buffers): New vars.
6973 (build_annotations_unwind): Just reset
6974 Vwrite_region_annotation_buffers.
6975 (Fwrite_region): Initialize Vwrite_region_annotation_buffers.
6976 Call write-region-post-annotation-function.
6977 (build_annotations): Add to Vwrite_region_annotation_buffers if
6978 buffer changes.
6979
69802009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
6981
6982 * nsterm.h (EmacsApp-setAppleMenu:): Conditionalize more correctly on
6983 Tiger.
6984 * nsfns.m (ns_do_applescript):
6985 Conditionalize typeUTF16ExternalRepresentation on Tiger.
6986
69872009-01-21 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
6988
6989 * nsterm.m (EV_TRAILER): Always use emacsframe for frame_or_window.
6990
69912009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
6992
6993 * nsmenu.m (NSMENUPROFILE): Change #if style.
6994
6995 * nsterm.h (EmacsPrefsController): Add -setPanelFromDefaultValues.
6996
6997 * nsterm.m (x_set_frame_alpha): Add prototype.
6998 (ns_fake_keydown, EmacsView-keyUp:): New variable and function to
6999 handle Ctrl-tab. (Bug#1841)
7000 (ns_get_color): Use unsigned long long for scanned hex string value.
7001 (ns_term_shutdown): Abort on non SIGTERM signals.
7002 (EmacsPrefsController-setDefaultFont:,-setColors:): Raise the frame.
7003 (EmacsPrefsController-setPanelFromDefaultValues): New function.
7004 (EmacsPrefsController-resetToDefaults:): Use it. (Bug#1801)
7005 (ns_font_to_xlfd, ns_fontname_to_xlfd): Remove, unused.
7006 (ns_defined_color): Fix settings of the XColor variable fields:
7007 red,green,blue scale to 2-byte, pixel's parts to 1-byte. (Bug#1663)
7008
7009 * nsimage.m (EmacsImage+allocInitFromFile:): Set to ignore image
7010 DPI. (Bug#1316)
7011 (EmacsImage-setPixelAtX:Y:toRed:green:blue:alpha:): Fix color
7012 values in onTiger section.
7013
70142009-01-19 Chong Yidong <cyd@stupidchicken.com>
7015
7016 * xfaces.c (Finternal_set_lisp_face_attribute, Fx_list_fonts):
7017 Check return value of font_spec_from_name.
7018 (Fx_list_fonts): Doc fix. (Bug#1951)
7019
7020 * font.c (font_spec_from_name): Return Qnil if font name could not
7021 be parsed.
7022 (font_parse_name): Treat a `?' character as part of an XLFD.
7023
7024 * fns.c (Fsubstring): Doc fix.
7025
70262009-01-19 Kenichi Handa <handa@m17n.org>
7027
7028 * ftfont.c (ftfont_lookup_cache): Check the return value of FcFontList.
7029 (ftfont_list): Likewise.
7030
70312009-01-18 Juanma Barranquero <lekktu@gmail.com>
7032
7033 * dbusbind.c (Fdbus_register_signal):
7034 * process.c (conv_sockaddr_to_lisp):
7035 * w32fns.c (Fw32_battery_status): Use empty_unibyte_string.
7036
7037 * callproc.c (Fgetenv_internal): Doc fix.
7038
70392009-01-16 Chong Yidong <cyd@stupidchicken.com>
7040
7041 * xfns.c (x_make_gc): Don't allocate stipple member for gc_values;
7042 it is not even used.
7043
70442009-01-16 Glenn Morris <rgm@gnu.org>
7045
7046 * font.c (Ffont_variation_glyphs): Silence compiler.
7047
70482009-01-15 Juanma Barranquero <lekktu@gmail.com>
7049
7050 * sound.c (SOUND_WARNING): Use _snprintf, for MSVC compatibility.
7051 Reported by David Robinow <drobinow@gmail.com>.
7052
70532009-01-15 Kenichi Handa <handa@m17n.org>
7054
7055 * coding.c (detect_coding_system): Fix handling of null_byte_found.
7056
70572009-01-14 Jason Rumney <jasonr@gnu.org>
7058
7059 * frame.c (x_set_font): Always store a font to the font parameter,
7060 never a fontset. (Bug#1562)
7061
70622009-01-14 Kenichi Handa <handa@m17n.org>
7063
7064 * coding.c (TWO_MORE_BYTES): New macro.
7065 (detect_coding_utf_16): Use TWO_MORE_BYTES instead of ONE_MORE_BYTE.
7066
70672009-01-13 Chong Yidong <cyd@stupidchicken.com>
7068
7069 * font.c (font_clear_prop): If clearing the family, clear the font
7070 width index too.
7071
7072 * xfaces.c (Finternal_set_lisp_face_attribute): Revert last change.
7073
70742009-01-12 Juanma Barranquero <lekktu@gmail.com>
7075
7076 * sound.c [WINDOWSNT] (SOUND_WARNING): New macro.
7077 (do_play_sound): Use it. Don't pass a hardcoded buffer size to mci
7078 functions, use sizeof.
7079
70802009-01-12 Martin Rudalics <rudalics@gmx.at>
7081
7082 * keyboard.c (read_char): Fix case where last_nonmenu_event
7083 returned a bad value with submenus. (Bug#447)
7084
70852009-01-12 Chong Yidong <cyd@stupidchicken.com>
7086
7087 * xfaces.c (Finternal_set_lisp_face_attribute): If setting the
7088 family, clear the font width index too.
7089
70902009-01-11 Jason Rumney <jasonr@gnu.org>
7091
7092 * keyboard.c (cmd_error_internal): Exit when errors occur before
7093 frame creation and not in daemon mode. (Bug#1836)
7094
70952009-01-10 Chong Yidong <cyd@stupidchicken.com>
7096
7097 * xdisp.c (pos_visible_p): When iterator stops on the last glyph
7098 of a display vector, backtrack.
7099 (try_window_reusing_current_matrix): Check glyph type before
7100 referencing charpos member.
7101
71022009-01-10 Eli Zaretskii <eliz@gnu.org>
7103
7104 Fix Bug #876:
7105
7106 * coding.c (inhibit_null_byte_detection): New variable.
7107 (detect_coding, detect_coding_system): Don't pay attention to null
7108 bytes if inhibit_null_byte_detection is non-zero.
7109 (syms_of_coding) <inhibit-null-byte-detection>: Declare and document.
7110 <inhibit-iso-escape-detection>: Doc fix.
7111
71122009-01-09 Jason Rumney <jasonr@gnu.org>
7113
7114 * w32font.c (add_font_entity_to_list): Don't report unknown
7115 Windows charset as any unrecognized registry. (Bug#1548)
7116 Only report Unicode Plane 2 fonts as unicode-sip.
7117
71182009-01-09 Chong Yidong <cyd@stupidchicken.com>
7119
7120 * xfaces.c (Fx_font_family_list): Delete function.
7121 Move compatibility version to faces.el.
7122
7123 * font.c (Ffont_family_list): Return a list of strings, not symbols.
7124
71252009-01-09 Martin Rudalics <rudalics@gmx.at>
7126
7127 * frame.c (x_set_frame_parameters): Remember requested value for
7128 fullscreen before it's reset by the parameter handler.
7129
71302009-01-09 Glenn Morris <rgm@gnu.org>
7131
7132 * keyboard.c (last_command_char): For clarity, rename to...
7133 (last_command_event): ... and update all users.
7134 (last_input_char): For clarity, rename to...
7135 (last_input_event): ... and update all users.
7136 (last-command-char, last-input-char): Move to subr.el as aliases.
7137 * cmds.c, commands.h: Update for last_command_char rename.
7138
71392009-01-08 Chong Yidong <cyd@stupidchicken.com>
7140
7141 * font.c (font_open_for_lface): Handle unspecified height attribute.
7142
71432009-01-08 Jason Rumney <jasonr@gnu.org>
7144
7145 * w32fns.c (Vx_pointer_shape, Vx_nontext_pointer_shape)
7146 (Vx_mode_pointer_shape, Vx_window_horizontal_drag_shape)
7147 (Vx_hourglass_pointer_shape, Vx_sensitive_text_pointer_shape):
7148 Don't declare.
7149 (syms_of_w32fns): Don't define x-pointer-shape variable. (Bug#1485)
7150 (x_create_tip_frame) [GLYPH_DEBUG]: Enable image debugging code.
7151
71522009-01-07 Kenichi Handa <handa@m17n.org>
7153
7154 * fileio.c (Finsert_file_contents): In the case of replace,
7155 remember the coding system used for decoding in
7156 coding_system (Bug#1039).
7157
7158 * coding.c (decode_coding_utf_8): Check byte_after_cr before
7159 breaking the loop. (Bug#870)
7160 (decode_coding_utf_16, decode_coding_emacs_mule)
7161 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
7162 (decode_coding_charset): Likewise.
7163
71642009-01-05 Martin Rudalics <rudalics@gmx.at>
7165
7166 * frame.c (x_set_frame_parameters): Make sure height (width) get
7167 applied when fullwidth (fullheight) is set. (Bug#1522)
7168
71692009-01-04 Juanma Barranquero <lekktu@gmail.com>
7170
7171 * w32.c: Use 64-bit arithmetic to do FILETIME conversions. (Bug#1766)
7172 (utc_base): Declare as ULONGLONG, not long double.
7173 (convert_time_raw): Delete.
7174 (FILETIME_TO_U64, U64_TO_LISP_TIME): New macros.
7175 (initialize_utc_base): New function.
7176 (convert_time): Use FILETIME_TO_U64, initialize_utc_base.
7177 (convert_from_time_t): Use initialize_utc_base; compute result with
7178 64-bit arithmetic.
7179 (process_times): Use FILETIME_TO_U64, U64_TO_LISP_TIME.
7180
71812009-01-03 Eli Zaretskii <eliz@gnu.org>
7182
7183 * process.c (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess)
7184 (Qttname, Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime)
7185 (Qcutime, Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs)
7186 (Quser, Qgroup, Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime)
7187 [!subprocesses]: Define.
7188 (syms_of_process) [!subprocesses]: Intern and staticpro them.
7189 (Flist_system_processes, Fsystem_process_attributes)
7190 [!subprocesses]: Call list_system_processes and
7191 system_process_attributes instead of returning Qnil.
7192
7193 * dosfns.c (system_process_attributes, list_system_processes):
7194 New functions.
7195
7196 * vm-limit.c (ret_lim_data) [MSDOS]: New function.
7197
7198 * sysdep.c (list_system_processes, system_process_attributes) [MSDOS]:
7199 Don't use the default (no-op) implementation.
7200
72012009-01-03 Jason Rumney <jasonr@gnu.org>
7202
7203 * keyboard.c (parse_modifiers_uncached): Wheel events are
7204 clicks (bug#687).
7205
7206 * w32term.c (x_query_colors, x_query_color): New functions.
7207
7208 * image.c (x_to_xcolors, png_load): Eliminate W32 specific code.
7209 (svg_load_image): Cast returned pointers from dynamically loaded
7210 functions. Eliminate W32 specific code.
7211
72122009-01-02 Dan Nicolaescu <dann@ics.uci.edu>
7213
7214 * nsfns.m (x_set_foreground_color, x_set_background_color)
7215 (x_set_cursor_color, x_set_icon_name, x_explicitly_set_name)
7216 (x_set_title, x_set_icon_type, x_set_cursor_type): Rename to use
7217 x_ prefix instead of ns_. Update references.
7218 (syms_of_nsfns): Add a FIXME comment.
7219
7220 * nsterm.m (x_set_cursor_type): New prototype.
7221 (setValuesFromPanel): Use it instead of the old ns_ prefixed name.
7222
7223 * sysdep.c (system_process_attributes): Provide Qtime and Qctime
7224 for Solaris instead of incorrectly providing Qutime and Qcutime.
7225
72262009-01-02 Eli Zaretskii <eliz@gnu.org>
7227
7228 * w32.c (process_times): Compute sum of utime and stime.
7229 (system_process_attributes): Add Qtime to the alist.
7230
7231 * sysdep.c (system_process_attributes): Compute Qtime and Qctime
7232 and add them to the alist.
7233
7234 * process.c (top level) <Qtime, Qctime>: New variables.
7235 (syms_of_process): staticpro them.
7236 (Fsystem_process_attributes): Add their documentation to the doc
7237 string.
7238
7239 * process.h: Declare Qtime and Qctime.
7240
72412009-01-02 Jason Rumney <jasonr@gnu.org>
7242
7243 * image.c (Qgobject): New symbol.
7244 (syms_of_image): Initialize it.
7245 (init_svg_functions): Load some functions from gobject library.
7246
72472009-01-01 Dan Nicolaescu <dann@ics.uci.edu>
7248
7249 * frame.c (make_terminal_frame): Remove redundant code and useless
7250 block.
7251
72522009-01-01 Andreas Schwab <schwab@suse.de>
7253
7254 * process.c (conv_sockaddr_to_lisp): Add workaround for
7255 getsockname bug on BSD.
7256
72572009-01-01 Chong Yidong <cyd@stupidchicken.com>
7258
7259 * xfns.c (x_create_tip_frame): Set border width of the X window.
7260
7261 * xfaces.c (Finternal_set_lisp_face_attribute): Improve error message.
7262
72632009-01-01 Jason Rumney <jasonr@gnu.org>
7264
7265 * w32term.c (x_new_font): Return font object, not fontset. (Bug#119)
7266 Don't block input, as per earlier xterm.c changes.
7267
72682008-12-31 Adrian Robert <Adrian.B.Robert@gmail.com>
7269
7270 * nsfns.m (ns_appkit_version_str): Rename from ns_appkit_version.
7271 (ns_appkit_version_int): New function.
7272 (x-server-version): Use ns_appkit_version_int and follow 21+
7273 convention of returning 3 integers.
7274
72752008-12-30 Kenichi Handa <handa@m17n.org>
7276
7277 * character.h (CHAR_VARIATION_SELECTOR_P): New macro.
7278 (CHAR_SURROGATE_PAIR_P): New macro.
7279
7280 * font.h (struct font_driver): New member get_variation_glyphs.
7281
7282 * font.c (font_range): Don't require a font for a variation selector.
7283 (Ffont_variation_glyphs): New function.
7284 (syms_of_font): Defsubr it.
7285
7286 * ftfont.c (ftfont_driver): Set the member get_variation_glyphs to
7287 ftfont_variation_glyphs.
7288 (setup_otf_gstring): New function.
7289 (ftfont_drive_otf): Use it.
7290 (ftfont_shape_by_flt): Handle variation selector.
7291 (ftfont_variation_glyphs): New function.
7292
72932008-12-30 Martin Rudalics <rudalics@gmx.at>
7294
7295 * frame.c (Vemacs_iconified): Remove.
7296
72972008-12-30 Jason Rumney <jasonr@gnu.org>
7298
7299 * frame.c (store_frame_param, x_get_arg): Enable newer code on
7300 WINDOWSNT too, as related changes have already been synced. (Bug#117)
7301
73022008-12-30 Chong Yidong <cyd@stupidchicken.com>
7303
7304 * indent.c (Fvertical_motion): Don't advance iterator if we have
7305 reseated to the desired position.
7306
7307 * xdisp.c (move_it_to): Handle GET_FROM_STRETCH method when
7308 checking for pos match.
7309
73102008-12-30 Kenichi Handa <handa@m17n.org>
7311
7312 * insdel.c (copy_text): To convert a non-ASCII char to unibyte,
7313 just get the low 8-bit of the code.
7314
7315 * font.c (font_intern_prop): Validate str as multibyte.
7316
73172008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
7318
7319 * dispextern.h (struct face): Move lface and hash from the middle
7320 of bitfields.
7321
7322 * Makefile.in (INTERVALS_H): Rename from INTERVAL_SRC, update all users.
7323
73242008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
7325
7326 * Makefile.in (INTERVAL_SRC): Also depend on dispextern.h.
7327 (coding.o, dispnew.o, keymap.o, msdos.o): Depend on INTERVAL_SRC
7328 instead of intervals.h.
7329
73302008-12-26 Andreas Schwab <schwab@suse.de>
7331
7332 * keymap.c (map_keymap_char_table_item): Make a copy of KEY if it is a
7333 cons.
7334
73352008-12-26 Martin Rudalics <rudalics@gmx.at>
7336
7337 * textprop.c (Qminibuffer_prompt): New variable.
7338 (syms_of_textprop): Initialize it.
7339 * callint.c (Fcall_interactively): For `c', `k', and `K' prompt
7340 in minibuffer-prompt face. (Bug#1662)
7341
73422008-12-25 Jason Rumney <jasonr@gnu.org>
7343
7344 * buffer.c (Fbuffer_swap_text): Use POINTER_TYPE.
7345
73462008-12-24 Jason Rumney <jasonr@gnu.org>
7347
7348 * ralloc.c (r_alloc_reset_variable): New function.
7349
7350 * buffer.c (Fbuffer_swap_text) [REL_ALLOC]: Reset ralloc's internal
7351 record of what points where. (Bug#716)
7352
73532008-12-22 Dan Nicolaescu <dann@ics.uci.edu>
7354
7355 * minibuf.c (read_minibuf): Follow the non-interactive case when
7356 running as a daemon, before detaching.
7357
73582008-12-22 Andreas Schwab <schwab@suse.de>
7359
7360 * buffer.c (init_buffer): Use realloc instead of xrealloc.
7361 * gtkutil.c (free_widget_value): Use xfree instead of free.
7362
73632008-12-22 Martin Rudalics <rudalics@gmx.at>
7364
7365 * frame.c (delete_frame): New function derived from
7366 Fdelete_frame to handle Qnoelisp value for FORCE argument.
7367 Delete last frame iff FORCE equals Qnoelisp. (Bug#1450)
7368 (Fdelete_frame): Call delete_frame. Remove line from doc-string
7369 saying that FORCE non-nil doesn't run `delete-frame-functions'.
7370 * frame.h: Extern delete_frame.
7371 * window.c (window_loop):
7372 * terminal.c (delete_terminal):
7373 * xterm.c (x_connection_closed):
7374 * xfns.c (Fx_hide_tip):
7375 * w32fns.c (Fx_hide_tip): Call delete_frame instead of Fdelete_frame.
7376
73772008-12-21 Jason Rumney <jasonr@gnu.org>
7378
7379 * w32uniscribe.c (uniscribe_encode_char): Return FONT_INVALID_CHAR
7380 when character maps to .notdef character.
7381
73822008-12-21 Stefan Monnier <monnier@iro.umontreal.ca>
7383
7384 * keyboard.c (cmd_error_internal): Don't exit in daemon mode, bug#1310.
7385
73862008-12-20 Jason Rumney <jasonr@gnu.org>
7387
7388 * frame.c (Fmake_terminal_frame): Raise an error when called from
7389 a graphical frame on Windows. (Bug#1325)
7390
73912008-12-20 Jan Djärv <jan.h.d@swipnet.se>
7392
7393 * frame.c (Fdelete_frame): Set f->menu_bar_vector to Qnil.
7394
73952008-12-20 Chong Yidong <cyd@stupidchicken.com>
7396
7397 * minibuf.c (Fread_buffer): Doc fix.
7398
73992008-12-20 Jason Rumney <jasonr@gnu.org>
7400
7401 * fileio.c (Fexpand_file_name): Do not allow ../ to go beyond the
7402 server name in UNC paths. (Bug#719)
7403
7404 * coding.c (decode_coding): Clear chars_at_source flag when using
7405 charbuf. (Bug#1035)
7406
74072008-12-19 Daniel Engeler <engeler@gmail.com>
7408
7409 * sysdep.c (serial_configure): Fix typo.
7410
74112008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
7412
7413 * sysdep.c: Include alloca.h.
7414 (system_process_attributes): Add implementation for Solaris.
7415
7416 * s/sol2-10.h (HAVE_PROCFS, _STRUCTURED_PROC): New defines.
7417
74182008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
7419
7420 Reorganize implementation of Flist_system_processes and
7421 Fsystem_process_attributes. No functional changes.
7422 * process.c: Don't #include pwd.h, grp.h and limits.h.
7423 (Flist_system_processes): Just call list_system_processes.
7424 (Fsystem_process_attributes): Just call system_process_attributes.
7425 (procfs_list_system_processes, time_from_jiffies)
7426 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
7427 (procfs_get_total_memory, procfs_system_process_attributes): Move ...
7428
7429 * sysdep.c: ... here. Include pwd.h, grp.h and limits.h.
7430 (list_system_processes): Rename from
7431 procfs_list_system_processes. Enclose in #ifdef HAVE_PROCFS.
7432 Provide a do nothing implementation.
7433 (system_process_attributes): Rename from
7434 procfs_list_system_processes.
7435 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
7436 (procfs_get_total_memory): Enclose in #ifdef GNU_LINUX.
7437
7438 * w32.c (list_system_processes): Rename from
7439 w32_list_system_processes.
7440 (system_process_attributes): Rename from
7441 w32_system_process_attributes.
7442
7443 * s/gnu-linux.h (LISTPROC, PROCATTR): Remove.
7444
7445 * process.h (w32_list_system_processes)
7446 (w32_system_process_attributes): Remove.
7447 (list_system_processes, system_process_attributes):
7448 New prototypes.
7449
74502008-12-19 Kenichi Handa <handa@m17n.org>
7451
7452 * xfont.c (xfont_decode_coding_xlfd): New function.
7453 (xfont_encode_coding_xlfd): New function.
7454 (xfont_list_pattern): Decode XLFD by iso-8859-1.
7455 (xfont_list): Decode and encode XLFD by iso-8859-1.
7456 (xfont_match): Likewise.
7457 (xfont_list_family): Likewise.
7458 (xfont_open): Likewise.
7459
7460 * ftfont.c (ftfont_open): Generate a multibyte string if given
7461 names are utf-8.
7462
7463 * xftfont.c (xftfont_open): Generate a multibyte string if given
7464 names are utf-8.
7465
74662008-12-18 Jan Djärv <jan.h.d@swipnet.se>
7467
7468 * gtkutil.c (xg_frame_resized): Remove check if rows/columns have
7469 changed.
7470 (xg_tool_bar_proxy_callback): Put focus on the frame after we have
7471 clicked on a detached tool bar button.
7472
74732008-12-18 Dan Nicolaescu <dann@ics.uci.edu>
7474
7475 * emacs.c (main): Print and error and exit when no data is read
7476 from the pipe.
7477
74782008-12-17 Jason Rumney <jasonr@gnu.org>
7479
7480 * w32font.c (w32font_has_char): Always return -1.
7481
74822008-12-16 Kenichi Handa <handa@m17n.org>
7483
7484 * font.c (font_open_entity): Fix previous change.
7485
74862008-12-16 Dan Nicolaescu <dann@ics.uci.edu>
7487
7488 * process.c: Include <limits.h>.
7489
74902008-12-16 Chetan Pandya <pandyacus@sbcglobal.net> (tiny change)
7491
7492 * font.c (font_update_drivers): Fix mistake in reconstructing the
7493 driver list.
7494
74952008-12-16 Chong Yidong <cyd@stupidchicken.com>
7496
7497 * font.c (font_clear_cache): Fix format of font cache data.
7498
74992008-12-15 Chong Yidong <cyd@stupidchicken.com>
7500
7501 * xftfont.c (xftfont_open): Free Xft font pattern if
7502 XftFontOpenPattern fails.
7503
7504 * xterm.c (x_free_frame_resources): Remove extraneous call to
7505 free_frame_faces.
7506
75072008-12-13 Chong Yidong <cyd@stupidchicken.com>
7508
7509 * xterm.c (x_delete_display): Move xim_close_dpy call to
7510 x_delete_terminal.
7511 (x_delete_terminal): Call xim_close_dpy.
7512
75132008-12-13 Jason Rumney <jasonr@gnu.org>
7514
7515 * w32font.c (intern_font_name): New function.
7516 (add_font_name_to_list, w32_enumfont_pattern_entity): Use it.
7517 (w32font_open_internal, Fx_select_font): Decode font name.
7518 (fill_in_logfont, list_all_matching_fonts): Encode font name.
7519
7520 * w32font.h (intern_font_name): Declare new function.
7521
7522 * w32uniscribe.c (add_opentype_font_name_to_list):
7523 Use intern_font_name.
7524
75252008-12-13 Chong Yidong <cyd@stupidchicken.com>
7526
7527 * frame.c (Fdelete_frame): Call free_font_driver_list.
7528
7529 * font.c (free_font_driver_list): Implement missing function.
7530
7531 * w32term.c (w32_term_init): Don't initialize the image cache
7532 here; it will be done in init_frame_faces.
7533
7534 * xterm.h (struct xim_inst_t): Definition moved from xterm.c.
7535 (struct x_display_info): Remove unused member null_pixel. New
7536 member xim_callback_data.
7537
7538 * xterm.c (struct xim_inst_t): Definition moved to xterm.h.
7539 (xim_initialize): Save pointer to callback function data.
7540 (xim_close_dpy): Free callback function data. Call XCloseIM,
7541 reverting 2008-11-04 change by David Smith.
7542 (x_term_init): Don't initialize the image cache here; it will be
7543 done in init_frame_faces. Remove ancient "null_pixel" cruft.
7544 (x_delete_display): Free x_dnd_atoms member.
7545
75462008-12-13 Kenichi Handa <handa@m17n.org>
7547
7548 * font.c (font_rescale_ratio): Moved from xfaces.c.
7549 Argument type changed. Handle a font-spec too.
7550 (font_score): Check Vface_font_rescale_alist.
7551 (font_open_entity): Likewise. (Bug#1547)
7552
7553 * xfaces.c (font_rescale_ratio): Moved to font.c.
7554
75552008-12-13 Chong Yidong <cyd@stupidchicken.com>
7556
7557 * xfns.c (Fx_wm_set_size_hint): Check if the frame is an X frame.
7558
75592008-12-12 Jason Rumney <jasonr@gnu.org>
7560
7561 * w32fns.c (x_display_info_for_name, Fx_open_connection): Set
7562 Vwindow_system_version to the real w32 major version.
7563
75642008-12-12 Dan Nicolaescu <dann@ics.uci.edu>
7565
7566 * term.c (init_tty): Move setting the terminal name before the
7567 potential user: maybe_fatal.
7568
75692008-12-11 Chong Yidong <cyd@stupidchicken.com>
7570
7571 * term.c (tty_free_frame_resources): Renamed from delete_tty_output;
7572 all callers changed. Call free_frame_faces to free the face cache.
7573
75742008-12-11 Jason Rumney <jasonr@gnu.org>
7575
7576 * w32font.c (fill_in_logfont): Don't assume symbol script means
7577 SYMBOL_CHARSET. (Bug#547)
7578
7579 * w32uniscribe.c (uniscribe_encode_char): Increase glyph buffer
7580 size for surrogates. (Bug#1096, bug#872)
7581
75822008-12-11 Juanma Barranquero <lekktu@gmail.com>
7583
7584 * w32proc.c (Fw32_get_locale_info): Decode long form of locale name.
7585
75862008-12-11 Juanma Barranquero <lekktu@gmail.com>
7587
7588 * process.c (Fsystem_process_attributes, syms_of_process):
7589 Fix typo in name of Ssystem_process_attributes.
7590 Reported by Ulrich Mueller <ulm@kph.uni-mainz.de>.
7591
75922008-12-11 Juanma Barranquero <lekktu@gmail.com>
7593
7594 * syntax.c (Fmodify_syntax_entry): Doc fix.
7595
75962008-12-10 Juanma Barranquero <lekktu@gmail.com>
7597
7598 * font.c (Ffont_spec): Move usage to end of docstring.
7599
76002008-12-10 Jason Rumney <jasonr@gnu.org>
7601
7602 * w32font.c (Qcham): New symbol.
7603 (font_supported_scripts): Add cham, and comments for other new
7604 scripts in bitfield from OpenType spec.
7605 (add_font_entity_to_list): Limit unicode-sip fonts to those that
7606 contain characters beyond the bmp.
7607
76082008-12-10 Kenichi Handa <handa@m17n.org>
7609
7610 * ftfont.c (fc_charset_table): Add "unicode-sip".
7611 (ftfont_spec_pattern): Lookup fc_charset_table for the registry
7612 Qunicode_sip.
7613
76142008-12-10 Juanma Barranquero <lekktu@gmail.com>
7615
7616 * coding.c (QCdefault_char): Rename from QCdefalut_char.
7617 (Fcoding_system_put): Use QCdefault_char.
7618 (syms_of_coding): Set QCdefault_char, not QCdefalut_char.
7619
76202008-12-09 Chong Yidong <cyd@stupidchicken.com>
7621
7622 * xftfont.c (syms_of_xftfont): Fix typo.
7623
7624 * buffer.c (Fbuffer_swap_text): Signal error if swapping a dead buffer.
7625
76262008-12-08 Dan Nicolaescu <dann@ics.uci.edu>
7627
7628 * emacs.c (main): Close daemon_pipe on exec.
7629
76302008-12-08 Chong Yidong <cyd@stupidchicken.com>
7631
7632 * termchar.h (struct tty): New members termcap_term_buffer and
7633 termcap_strings_buffer.
7634
7635 * term.c (encode_terminal_code): Free any previous memory blocks
7636 before calling xmalloc for encode_terminal_src or encode_terminal_dst.
7637 (maybe_fatal): Buffer argument deleted. Don't free buffer here.
7638 All callers changed.
7639 (init_tty): Store termcap data and string buffers in new struct
7640 tty members termcap_term_buffer and termcap_strings_buffer.
7641 (delete_tty): Free them.
7642 (syms_of_term): Initialize encode_terminal_src and encode_terminal_dst.
7643
76442008-12-07 Seiji Zenitani <zenitani@mac.com>
7645
7646 * nsfns.m (ns_set_background_color): Remove code duplication.
7647 It was a substitute for face-transparency on OS X 10.3.
7648
76492008-12-06 Chong Yidong <cyd@stupidchicken.com>
7650
7651 * coding.c (make_conversion_work_buffer): Disable buffer
7652 modification hooks in the work buffer.
7653
76542008-12-05 Eli Zaretskii <eliz@gnu.org>
7655
7656 * process.c (procfs_system_process_attributes): If `nread' has a
7657 negative value, assign zero to it.
7658
76592008-12-05 Chong Yidong <cyd@stupidchicken.com>
7660
7661 * eval.c (Vdebug_on_error): Doc fix.
7662
76632008-12-05 Kenichi Handa <handa@m17n.org>
7664
7665 * ftfont.c (ftfont_shape_by_flt): Use "combining" flt if the
7666 second character is a combining character.
7667
76682008-12-05 Eli Zaretskii <eliz@gnu.org>
7669
7670 * process.c (procfs_system_process_attributes): Don't use cmd,
7671 cmdsize, and q without initializing them first.
7672
76732008-12-04 Jason Rumney <jasonr@gnu.org>
7674
7675 * w32font.c (w32font_draw): Initialize orig_clip before getting
7676 it, and delete it when finished.
7677
76782008-12-04 Dan Nicolaescu <dann@ics.uci.edu>
7679
7680 * keyboard.c (kbd_buffer_get_event): Follow the non-interactive
7681 case when running as a daemon before detaching.
7682
76832008-12-03 Juanma Barranquero <lekktu@gmail.com>
7684
7685 * w32.c (init_environment): Don't unload library shell32.dll.
7686
76872008-12-03 Kenichi Handa <handa@m17n.org>
7688
7689 * font.c (font_at): Set `multibyte' at first.
7690
7691 * coding.c (decode_coding_charset): Check type of an element of
7692 vector VALIDS.
7693 (encode_coding_emacs_mule): Be sure to set `code'.
7694
7695 * fontset.c (face_for_char): Handle invalid charset property correctly.
7696 (font_for_char): Likewise.
7697
76982008-12-03 Chong Yidong <cyd@stupidchicken.com>
7699
7700 * font.c (Fopen_font): Compute pixel size correctly.
7701 (font_update_lface): Handle fonts with corrupted size specs,
7702 i.e. non-int and non-float.
7703
7704 * ftfont.c (ftfont_match): Initialize entity variable.
7705 (ftfont_resolve_generic_family): Avoid using uninitialized var.
7706 (ftfont_list_family): Initialize list var earlier.
7707
7708 * xselect.c (Fx_get_cut_buffer_internal): Fix memory leak.
7709
7710 * xterm.c (x_draw_glyph_string): Fall back on
7711 underline_minimum_offset for underline position.
7712
77132008-12-03 Dan Nicolaescu <dann@ics.uci.edu>
7714
7715 * keyboard.c (read_char_help_form_unwind): Specify the type for ARG.
7716
7717 * character.c (c_string_width): Specify the type for LEN.
7718
77192008-12-03 Kenichi Handa <handa@m17n.org>
7720
7721 * coding.c (decode_coding_utf_16): Initialize consumed_chars_base to 0.
7722 (decode_coding_utf_8): Likewise.
7723 (detect_coding_system): Initialize utf_16_le_eol to -1, val to Qnil.
7724 (produce_chars): Initialize consumed_chars to 0.
7725
77262008-12-02 Chong Yidong <cyd@stupidchicken.com>
7727
7728 * keyboard.c (make_lispy_position): Only use PT if the selected
7729 window is current.
7730
77312008-12-02 Andreas Schwab <schwab@suse.de>
7732
7733 * font.c (font_unparse_fcname): Fix use of uninitialized variable.
7734
7735 * doprnt.c (doprnt1): Fix size of charbuf.
7736
77372008-12-02 Chong Yidong <cyd@stupidchicken.com>
7738
7739 * keyboard.c (timer_check): Revert last change.
7740
77412008-12-02 Juanma Barranquero <lekktu@gmail.com>
7742
7743 * makefile.w32-in ($(BLD)/w32console.$(O)): Fix silly, silly typo.
7744
77452008-12-01 Juanma Barranquero <lekktu@gmail.com>
7746
7747 * makefile.w32-in: Update dependencies.
7748 (CONFIG_H): Add $(EMACS_ROOT)/nt/inc/sys/time.h.
7749
77502008-12-01 Andreas Schwab <schwab@suse.de>
7751
7752 * font.c (register_font_driver): Use xmalloc.
7753 (font_put_frame_data): Likewise.
7754
77552008-12-01 Chong Yidong <cyd@stupidchicken.com>
7756
7757 * xfaces.c (realize_x_face): Make abort condition clearer.
7758
7759 * gtkutil.c (update_frame_tool_bar): Initialize variable.
7760
77612008-11-30 Chong Yidong <cyd@stupidchicken.com>
7762
7763 * keyboard.c (timer_check): After a timer runs, ensure that the
7764 selected window's buffer is current.
7765
77662008-11-30 Juanma Barranquero <lekktu@gmail.com>
7767
7768 * makefile.w32-in ($(BLD)/abbrev.$(O)): Remove.
7769 It was accidentally restored by the Unicode merge.
7770
7771 * w32proc.c (Fw32_get_locale_info): Fix typo in docstring.
7772
77732008-11-29 Juanma Barranquero <lekktu@gmail.com>
7774
7775 * w32proc.c: Include "coding.h".
7776 (Fw32_short_file_name): Encode filename passed to Windows API.
7777 (Fw32_long_file_name): Encode filename passed to Windows API and
7778 decode back the result. (Bug#1433)
7779
77802008-11-29 Kenichi Handa <handa@m17n.org>
7781
7782 * charset.h (CHAR_CHARSET_P): Check if the encoder is loaded or
7783 not before accessing it.
7784
7785 * charset.c (Fdefine_charset_internal): After calculating
7786 min_char, max_char, and fastmap, copy the charset structure again.
7787 (encode_char): Fix the previous change.
7788
77892008-11-28 Seiji Zenitani <zenitani@mac.com>
7790
7791 * frame.c (x_set_alpha) [NS_IMPL_COCOA]: Call x_set_frame_alpha.
7792
7793 * nsfns.m (ns_frame_parm_handlers): Set alpha handler.
7794
7795 * nsterm.m (x_set_frame_alpha): New function.
7796
77972008-11-27 Eli Zaretskii <eliz@gnu.org>
7798
7799 * xfaces.c (Fx_font_family_list, syms_of_xfaces): Fix last change.
7800
78012008-11-27 Juanma Barranquero <lekktu@gmail.com>
7802
7803 * w32font.c (add_font_entity_to_list): Pass the right LOGFONT
7804 pointer to check_face_name.
7805
78062008-11-27 Kenichi Handa <handa@m17n.org>
7807
7808 * category.h (SET_CATEGORY_SET): Call set_category_set.
7809 (set_category_set): Extern it.
7810
7811 * category.c (hash_get_category_set): New function.
7812 (Fmodify_category_entry): Adjusted for the change of
7813 char_table_ref_and_range. Call hash_get_category_set to get a
7814 category set to store in the table.
7815
7816 * character.h (MAYBE_UNIFY_CHAR): Call maybe_unify_char instead of
7817 Funify_charset.
7818
7819 * charset.h (enum charset_method): Delete CHARSET_METHOD_MAP_DEFERRED.
7820 (DECODE_CHAR): Check if the decoder vector is ready.
7821 (ENCODE_CHAR): Check if the encoder char-table is ready.
7822 (maybe_unify_char): Extern it.
7823
7824 * charset.c (Vchar_unified_charset_table): Delete it.
7825 (inhibit_load_charset_map): New variable.
7826 (temp_charset_work): New variable.
7827 (SET_TEMP_CHARSET_WORK_ENCODER, GET_TEMP_CHARSET_WORK_ENCODER)
7828 (SET_TEMP_CHARSET_WORK_DECODER, GET_TEMP_CHARSET_WORK_DECODER):
7829 New macros.
7830 (load_charset_map): Meaning of control_flag changed. If
7831 inhibit_load_charset_map is nonzero, setup a table in
7832 temp_charset_work.
7833 (load_charset): New argument control_flag.
7834 (map_charset_for_dump): New function.
7835 (map_charset_chars): If inhibit_load_charset_map is nonzero, use
7836 map_charset_for_dump.
7837 (Fdefine_charset_internal): If the charset method is MAP, load
7838 mapping tables by calling load_charset.
7839 (Funify_charset): Don't load a mapping table but directly set
7840 Vchar_unify_table.
7841 (maybe_unify_char): New function.
7842 (decode_char): Don't handle the deleted method MAP_DEFERRED.
7843 Handle the case of inhibit_load_charset_map being nonzero.
7844 (encode_char): Don't handle the deleted method MAP_DEFERRED.
7845 Handle the case of inhibit_load_charset_map being nonzero.
7846 (Fclear_charset_maps): Just free temp_charset_work.
7847 (syms_of_charset): Make `inhibit-load-charset-map' a Lisp
7848 variable.
7849
7850 * chartab.c (sub_char_table_ref_and_range): Adjusted for the
7851 change of char_table_ref_and_range.
7852 (char_table_ref_and_range): Change the meaning of argument FROM
7853 and TO. Now the caller must provide initial values for *FROM
7854 and *TO.
7855
7856 * fontset.c (fontset_add): Adjusted for the change of
7857 char_table_ref_and_range.
7858 (fontset_get_font_group): Likewise.
7859 (Ffontset_info): Likewise.
7860
7861 * keymap.c (describe_vector): Adjusted for the change of
7862 char_table_ref_and_range. For char-table, put boundary between
7863 non-ASCII and 8-bit characters.
7864
7865 * print.c (print_object): For bool-vector, delete unnecessary
7866 check of ASCII_BYTE_P.
7867
78682008-11-26 Jason Rumney <jasonr@gnu.org>
7869
7870 * w32font.c (w32font_open_internal): Don't include external
7871 leading in font height. (Bug#879)
7872
78732008-11-26 Glenn Morris <rgm@gnu.org>
7874
7875 * xfaces.c (Fx_font_family_list): Replace lisp/term/pc-win.el
7876 redefinition with ifdef. (Bug#1383)
7877
78782008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
7879
7880 * nsterm.m (ns_get_color): Handle long hex strings (fixes bug #1044).
7881
78822008-11-24 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
7883
7884 * nsterm.m (-otherMouseDown:, -otherMouseUp:, -otherMouseDragged):
7885 New EmacsView methods.
7886 (EV_UDMODIFIERS, EV_BUTTON): Add OtherMouse constants.
7887 Fixes bug #1048,1357,1414.
7888
78892008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
7890
7891 Fix bug #1362.
7892 * image.c (x_clear_image_1): Do not free background under HAVE_NS, it
7893 is not an indexed color.
7894 * nsterm.m (free_indexed_color): Add argument checking.
7895 * nsfns.m: Move config.h to before system includes (advised by Dan N.).
7896
78972008-11-24 Chong Yidong <cyd@stupidchicken.com>
7898
7899 * minibuf.c (Fcompleting_read, Vminibuffer_completion_confirm):
7900 Document confirm-after-completion value for
7901 minibuffer-completion-confirm.
7902
79032008-11-24 Jason Rumney <jasonr@gnu.org>
7904
7905 * w32font.c (check_face_name): Use xstrcasecmp. Avoid compiler
7906 warning.
7907
79082008-11-23 Jason Rumney <jasonr@gnu.org>
7909
7910 * w32uniscribe.c (uniscribe_encode_char): Ensure context is
7911 restored before returning.
7912
7913 * w32font.c (check_face_name): New function.
7914 (add_font_entity_to_list): Use it to filter out common substituted
7915 fonts. (Bug#642)
7916
79172008-11-22 Martin Rudalics <rudalics@gmx.at>
7918
7919 * buffer.c (Fswitch_to_buffer): Reword and mention new option
7920 confirm-nonexistent-file-or-buffer in doc-string.
7921
79222008-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
7923
7924 * buffer.c (Fbuffer_swap_text): Remove redundant marker manipulation.
7925 Fix copy/paste typo. Add checks.
7926
79272008-11-21 Kenichi Handa <handa@m17n.org>
7928
7929 * coding.c (detect_coding_iso_2022): Reject invalid composition
7930 sequence.
7931 (DECODE_COMPOSITION_START): If the current source is the last
7932 block, and the current composition doesn't end, regard this
7933 sequence as invalid.
7934 (decode_coding_iso_2022): Handle invalid composition sequence.
7935
79362008-11-20 Martin Rudalics <rudalics@gmx.at>
7937
7938 * window.c (coordinates_in_window): Don't return
7939 ON_VERTICAL_BORDER for the rightmost position of a mode/header
7940 line when the window is not the rightmost one. (Bug#1372)
7941
79422008-11-16 Ben North <ben@redfrontdoor.org> (tiny change)
7943
7944 * buffer.c (syms_of_buffer): Fix doc-string of cursor-type.
7945
79462008-11-15 Eli Zaretskii <eliz@gnu.org>
7947
7948 * msdos.c (run_msdos_command): Don't call dos_ttcooked, dos_ttraw,
7949 and bright_bg if noninteractive is non-zero.
7950
79512008-11-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7952
7953 * xterm.c (x_draw_glyph_string): For stretch glyphs, don't call
7954 x_draw_glyph_string_background.
7955
7956 * w32term.c (x_draw_glyph_string): Likewise.
7957
79582008-11-15 Chong Yidong <cyd@stupidchicken.com>
7959
7960 * xterm.c (x_draw_glyph_string): Stop drawing the background of
7961 the next glyph string once past the overhang width.
7962
7963 * nsterm.m (ns_draw_glyph_string): Likewise.
7964
7965 * w32term.c (x_draw_glyph_string): Likewise.
7966
79672008-11-14 Fabrice Popineau <fabrice.popineau@supelec.fr> (tiny change)
7968
7969 * fileio.c (Finsert_file_contents): Decrement specpdl_ptr to avoid
7970 double file close.
7971
79722008-11-14 Martin Rudalics <rudalics@gmx.at>
7973
7974 * window.c (window_loop): In DELETE_BUFFER_WINDOWS case, reset
7975 dedicated status of window before attempting to display another
7976 buffer in it.
7977
79782008-11-14 Juanma Barranquero <lekktu@gmail.com>
7979
7980 * msdos.c (Fmsdos_long_file_names):
7981 (syms_of_msdos) <dos-unsupported-char-glyph>:
7982 * dosfns.c (Fint86): Fix typos in docstrings.
7983
79842008-11-14 Eli Zaretskii <eliz@gnu.org>
7985
7986 * makefile.w32-in (OBJ1, WIN32OBJ): Fix whitespace.
7987
79882008-11-14 Katsumi Yamaoka <yamaoka@jpl.org>
7989
7990 * puresize.h (BASE_PURESIZE): Increase to 1260000.
7991
79922008-11-12 Michal Nazarewicz <mina86@tlen.pl> (tiny change)
7993
7994 * frame.c (x_set_alpha): Set alpha to -1 if nil given.
7995
7996 * frame.h: Negative alpha means "don't touch".
7997
7998 * w32term.c (x_set_frame_alpha): Do nothing if alpha is negative.
7999
8000 * xterm.c (x_set_frame_alpha): Do nothing if alpha is negative.
8001
80022008-11-12 Dan Nicolaescu <dann@ics.uci.edu>
8003
8004 * hftctl.c:
8005 * chpdef.h:
8006 * acldef.h: Remove files used only for systems no longer supported.
8007
8008 * Makefile.in: Fix .o alphabetical ordering.
8009 (hftctl.o): Remove dependency, file removed.
8010 (keymap.o, print.o): Depend on charset.h.
8011
80122008-11-10 Kenichi Handa <handa@m17n.org>
8013
8014 * character.c (Fget_byte): Fix and make it faster for unibyte target.
8015
80162008-11-08 Chong Yidong <cyd@stupidchicken.com>
8017
8018 * dired.c (file_name_completion): If completion_ignore_case is
8019 enabled, ignore case when checking completion-regexp-list.
8020
80212008-11-08 Eli Zaretskii <eliz@gnu.org>
8022
8023 * vm-limit.c (get_lim_data): Fix last change.
8024
80252008-11-08 Kenichi Handa <handa@m17n.org>
8026
8027 * character.c (Fget_byte): New function.
8028 (syms_of_character): Defsubr Fget_byte.
8029
80302008-11-07 Chong Yidong <cyd@stupidchicken.com>
8031
8032 * xdisp.c (try_window_reusing_current_matrix): Ensure that window
8033 cursor position is valid after scrolling.
8034
80352008-11-06 Juanma Barranquero <lekktu@gmail.com>
8036
8037 * fns.c (Frandom): Rename arg N to LIMIT to match the docs; doc fix.
8038
80392008-11-06 Glenn Morris <rgm@gnu.org>
8040
8041 * xterm.c (handle_one_xevent): Don't let popup menus cause
8042 mouse-autoselect-window related window switching. (Bug#1261)
8043
80442008-11-04 David Smith <davidsmith@acm.org> (tiny change)
8045
8046 * xterm.c (xim_close_dpy): Avoid double-free on X11R6 XIM.
8047
80482008-11-04 Andreas Schwab <schwab@suse.de>
8049
8050 * xfns.c (Fx_wm_set_size_hint): Add missing return value.
8051
80522008-11-03 Chong Yidong <cyd@stupidchicken.com>
8053
8054 * xfns.c (Fx_wm_set_size_hint): New function.
8055
80562008-11-03 Martin Rudalics <rudalics@gmx.at>
8057
8058 * textprop.c (Fprevious_single_char_property_change): Return 0
8059 when there's no change in a string. (Bug#1301)
8060
80612008-11-02 Martin Rudalics <rudalics@gmx.at>
8062
8063 * frame.c (do_switch_frame): New argument NORECORD passed to
8064 Fselect_window.
8065 (Fselect_frame): New argument NORECORD passed to
8066 do_switch_frame.
8067 (Fset_frame_selected_window): New argument NORECORD passed to
8068 Fselect_frame.
8069 (Fhandle_switch_frame, Fdelete_frame): Handle NORECORD argument
8070 in call of do_switch_frame.
8071 (Fset_mouse_position, Fset_mouse_pixel_position, Fraise_frame):
8072 Handle NORECORD argument in call of Fselect_frame.
8073 * lisp.h (do_switch_frame, Fselect_frame)
8074 (Fset_frame_selected_window): Adjust declarations.
8075 * window.c (select_frame_norecord): New function.
8076 (run_window_configuration_change_hook): Use it and call
8077 Fselect_frame with NORECORD set.
8078 (Fselect_window): Pass NORECORD to Fselect_frame.
8079 (Fset_window_configuration): Handle NORECORD argument in call of
8080 do_switch_frame.
8081 * minibuf.c (choose_minibuf_frame): Handle NORECORD in call of
8082 Fset_frame_selected_window.
8083 * keyboard.c (command_loop_1): Handle NORECORD in call of
8084 Fselect_frame (currently ifdefd).
8085
80862008-11-02 Ulrich Mueller <ulm@kph.uni-mainz.de>
8087
8088 * emacs.c (USAGE2): Untabify.
8089
80902008-11-01 Stefan Monnier <monnier@iro.umontreal.ca>
8091
8092 * composite.c (fill_gstring_header): Fix copy/paste typo.
8093
80942008-10-31 Martin Rudalics <rudalics@gmx.at>
8095
8096 * window.c (Fnext_window, Fprevious_window): Rewrite doc-string.
8097 (Fother_window): Rename argument and rewrite doc-string.
8098 (select_window_norecord): Fix return value. (Bug#1276)
8099
81002008-10-30 Juanma Barranquero <lekktu@gmail.com>
8101
8102 * w32fns.c (x_create_tip_frame): Prevent default foreground color for
8103 new frames overriding foreground for tooltips. Based on similar patch
8104 from Martin Rudalics <rudalics@gmx.at>. (Bug#1032)
8105
81062008-10-29 Chong Yidong <cyd@stupidchicken.com>
8107
8108 * emacs.c (Fdaemon_initialized): Initialize nfd.
8109
81102008-10-29 Martin Rudalics <rudalics@gmx.at>
8111
8112 * window.c (Fwindow_height, Fdelete_window, set_window_buffer)
8113 (Fwindow_text_height): Clarify doc-strings.
8114 * xdisp.c (syms_of_xdisp): Mention set-window-buffer in
8115 doc-string of window-scroll-functions.
8116
81172008-10-28 Reiner Steib <Reiner.Steib@gmx.de>
8118
8119 * category.c (syms_of_category): Fix typo in docstring.
8120
81212008-10-28 Juanma Barranquero <lekktu@gmail.com>
8122
8123 * window.c (Fwindowp, Fwindow_live_p, Fwindow_minibuffer_p)
8124 (Fcoordinates_in_window_p, Fscroll_left, Fscroll_right):
8125 Fix typos in docstrings.
8126
81272008-10-28 Dan Nicolaescu <dann@ics.uci.edu>
8128
8129 * emacs.c (daemon_pipe): Make non-static.
8130 (IS_DAEMON): Move definition ...
8131 * lisp.h (IS_DAEMON): ... here.
8132 (daemon_pipe): Declare.
8133 (is_daemon): Remove.
8134 * dispnew.c (init_display): Use IS_DAEMON.
8135
81362008-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
8137
8138 * xdisp.c (pos_visible_p, redisplay_internal, message3_nolog)
8139 (message2_nolog): Check FRAME_INITIAL_P instead of noninteractively.
8140
8141 * emacs.c (is_daemon): Remove.
8142 (main): Don't set is_daemon.
8143 (IS_DAEMON): New macro.
8144 (Fdaemonp, Fdaemon_initialized): Use it.
8145 (Fdaemon_initialized): Write a char into the pipe to make sure the
8146 parent exits.
8147 (syms_of_emacs): Explicitly initialize daemon_pipe[1].
8148
81492008-10-27 Chong Yidong <cyd@stupidchicken.com>
8150
8151 * nsterm.m (ns_draw_window_cursor): When hbar cursor is on
8152 over-sized glyph, draw it with the default glyph width.
8153
8154 * w32term.c (x_draw_bar_cursor): When hbar cursor is on over-sized
8155 glyph, draw it with the default glyph width.
8156
8157 * xterm.c (x_draw_bar_cursor): When hbar cursor is on over-sized
8158 glyph, draw it with the default glyph width.
8159
8160 * xdisp.c (try_scrolling): When computing the distance from the
8161 scroll margin to PT, try moving some distance past the window
8162 bottom before giving up.
8163
81642008-10-27 Martin Rudalics <rudalics@gmx.at>
8165
8166 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p)
8167 (Fset_window_buffer): Explain in doc-string that a window can be
8168 "strongly" dedicated to its buffer.
8169
81702008-10-27 Dan Nicolaescu <dann@ics.uci.edu>
8171
8172 * emacs.c (daemon_name): New variable.
8173 (main): Deal with --daemon=SERVER_NAME.
8174 (Fdaemonp): Return a name if one was passed to --daemon.
8175
81762008-10-26 Romain Francoise <romain@orebokech.com>
8177
8178 * emacs.c (daemon_pipe): New variable.
8179 (main): Create a pipe before forking, make the parent exit only after
8180 the child has closed its end of the pipe. Move closing the
8181 descriptors ...
8182 (Fdaemon_initialized): ... here. New function.
8183
81842008-10-26 Stefan Monnier <monnier@iro.umontreal.ca>
8185
8186 * chartab.c (Foptimize_char_table): Make sure `ascii' doesn't point to
8187 the previous unoptimized table.
8188
8189 * window.c (Fset_window_buffer): Undo 2008-10-18 change to re-instate
8190 the distinction between non-nil and non-t value of `dedicated'.
8191
81922008-10-25 Chong Yidong <cyd@stupidchicken.com>
8193
8194 * keyboard.c (read_char_minibuf_menu_prompt): Ensure that
8195 read_char_minibuf_menu_text is large enough to hold the menu string.
8196
81972008-10-25 Martin Rudalics <rudalics@gmx.at>
8198
8199 * window.c (Fget_buffer_window, Fdelete_windows_on)
8200 (Freplace_buffer_in_windows): Make buffer argument optional and
8201 rename to buffer_or_name.
8202
82032008-10-24 Chong Yidong <cyd@stupidchicken.com>
8204
8205 * xdisp.c (handle_single_display_spec, handle_display_prop):
8206 Undo 2005-05-16 change.
8207 (handle_stop): Pop iterator if it's loaded with an empty string.
8208 (get_overlay_strings_1): Don't save iterator if it's loaded with
8209 an empty string (bug#1201).
8210
82112008-10-24 Kenichi Handa <handa@m17n.org>
8212
8213 * ftfont.c (ftfont_otf_features): Fix previous change.
8214 (ftfont_otf_capability): Check FeatureList.FeatureCount before
8215 calling ftfont_otf_features.
8216
82172008-10-24 Kenichi Handa <handa@m17n.org>
8218
8219 * font.c (font_match_p): Fix for the case that a vector of
8220 characters is in script-representative-chars.
8221
82222008-10-24 Michael Albinus <michael.albinus@gmx.de>
8223
8224 * dbusbind.c (xd_in_read_queued_messages): New variable.
8225 (XD_SIGNAL1, XD_SIGNAL2, XD_SIGNAL3): New macros. Throw Qdbus_error.
8226 (xd_read_queued_messages): Catch Qdbus_error from the macros.
8227 (all): Replace xsignal1, xsignal2, xsignal3 by the respective
8228 macro. (Bug#1186)
8229
82302008-10-23 Ali Bahrami <ali_gnu@emvision.com> (tiny change)
8231
8232 * s/sol2-10.h: New file.
8233
82342008-10-23 Juanma Barranquero <lekktu@gmail.com>
8235
8236 * xdisp.c (fill_glyph_string): Fix typo in source (though the
8237 poor beast has survived 9+ years and the jump from xterm.c!).
8238
82392008-10-23 Martin Rudalics <rudalics@gmx.at>
8240
8241 * buffer.c (Fget_buffer_create): Rename arg to buffer_or_name.
8242 Reword doc-string.
8243 (Fbury_buffer): In doc-string say what happens to the buffer's window.
8244
82452008-10-23 Juanma Barranquero <lekktu@gmail.com>
8246
8247 * character.c (syms_of_character) <script-representative-chars>:
8248 <unicode-category-table>: Doc fixes.
8249
82502008-10-23 Noah Friedman <friedman@splode.com>
8251
8252 * coding.c (make_conversion_work_buffer): Check that
8253 Vcode_conversion_reused_workbuf is a live buffer, otherwise call
8254 Fget_buffer_create.
8255
82562008-10-23 Kenichi Handa <handa@m17n.org>
8257
8258 * font.c (font_add_log): Check the values of extra properties.
8259
82602008-10-22 Martin Rudalics <rudalics@gmx.at>
8261
8262 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
8263 Reword doc-string.
8264 (Fset_window_parameter): Use NILP.
8265 (Fscroll_up, Fscroll_down, Fminibuffer_selected_window)
8266 (Frecenter): Use "selected" instead of "current" window in doc-strings.
8267
82682008-10-22 Juanma Barranquero <lekktu@gmail.com>
8269
8270 * xdisp.c (next_element_from_buffer): Remove bogus xassert condition.
8271
82722008-10-22 Adrian Robert <Adrian.B.Robert@gmail.com>
8273
8274 * nsfns.m (ns_appkit_version): New function.
8275 (x-server-version): Use it.
8276 (syms_of_nsfns): Define ns-version-string here, not nsterm.m.
8277 (x-server-vendor): Don't check_ns().
8278
8279 * nsterm.m (syms_of_nsterm): Drop ns-version-string.
8280
82812008-10-22 Juanma Barranquero <lekktu@gmail.com>
8282
8283 * w32fns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert.
8284 Copied from 2005-02-03 change to xfns.c by Kim F. Storm.
8285
82862008-10-22 Kenichi Handa <handa@m17n.org>
8287
8288 * syntax.c (scan_words): Call word_boundary_p instead of comparing
8289 scripts.
8290
8291 * category.c (word_boundary_p): Check scripts instead of charset.
8292 Handle nil value in word-separating-categories and
8293 word-combining-categories.
8294 (syms_of_category): Fix docstrings of word-separating-categories
8295 and word-combining-categories.
8296
82972008-10-21 Eli Zaretskii <eliz@gnu.org>
8298
8299 * coding.c (Fencode_coding_region, Fdecode_coding_region)
8300 (Fdecode_coding_string, Fencode_coding_string): Doc fix.
8301
83022008-10-21 Martin Rudalics <rudalics@gmx.at>
8303
8304 * buffer.c (Fget_buffer, Fbury_buffer, switch_to_buffer_1):
8305 Rename arg "buffer" to "buffer_or_name".
8306 (Fkill_buffer): Rename arg "buffer" to "buffer_or_name" and make
8307 it optional.
8308 (no_switch_window): Remove since the return value is not used.
8309 (Fswitch_to_buffer): Rename arg "buffer" to "buffer_or_name".
8310 Consider window as dedicated when Fwindow_dedicated_p returns a
8311 non-nil value.
8312 * lisp.h: Remove prototype for no_switch_window.
8313
83142008-10-21 Jan Djärv <jan.h.d@swipnet.se>
8315
8316 * emacs.c (main): Unconditionally set PER_LINUX32 and exec
8317 temacs when dumping if HAVE_PERSONALITY_LINUX32 is defined.
8318
83192008-10-21 Kenichi Handa <handa@m17n.org>
8320
8321 * coding.c (detect_coding_charset): For iso-8859-* coding systems,
8322 check Vlatin_extra_code_table.
8323
83242008-10-20 Eli Zaretskii <eliz@gnu.org>
8325
8326 * fileio.c (Fset_file_modes): Doc fix.
8327
83282008-10-19 Michael Albinus <michael.albinus@gmx.de>
8329
8330 * dbusbind.c (XD_OBJECT_TO_DBUS_TYPE): Handle simple type symbols
8331 in arrays.
8332
83332008-10-19 Martin Rudalics <rudalics@gmx.at>
8334
8335 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
8336 Mention kill-buffer in doc-string.
8337 (Fset_window_buffer): Reinsert tem check removed in last commit.
8338 (Fenlarge_window, Fshrink_window): Have argument names and
8339 doc-string follow Elisp manual more closely.
8340
83412008-10-18 Eli Zaretskii <eliz@gnu.org>
8342
8343 * fileio.c (Fset_file_modes): Doc fix.
8344
83452008-10-18 Martin Rudalics <rudalics@gmx.at>
8346
8347 * window.c (Fwindow_width, Fset_window_start)
8348 (Fwindow_parameters, Fwindow_parameter, Fset_window_parameter)
8349 (Fdelete_windows_on, Freplace_buffer_in_windows):
8350 Make doc-strings follow code and Elisp manual more closely.
8351 (Fwindow_dedicated_p): Make window argument optional.
8352 (Fset_window_dedicated_p): Rename argument "arg" to "flag".
8353 (Fset_window_buffer): Respect any non-nil dedicated value for
8354 window. Rename "buffer" argument to "buffer_or_name".
8355
83562008-10-18 Ulrich Mueller <ulm@gentoo.org>
8357
8358 * m/sh3.h: New file, machine description for SuperH.
8359
83602008-10-17 Martin Rudalics <rudalics@gmx.at>
8361
8362 * window.c (Fsplit_window): Rename arg horflag to horizontal.
8363
83642008-10-17 Kenichi Handa <handa@m17n.org>
8365
8366 * ftfont.c (ftfont_otf_features): Fix indexing
8367 gsub_gpos->FeatureList.Feature. Check the validity of indices.
8368
83692008-10-16 Magnus Henoch <mange@freemail.hu>
8370
8371 * dbusbind.c (Fdbus_call_method): Unbreak usage line.
8372 (Fdbus_call_method_asynchronously): Ditto.
8373 This change makes C-h f display the argument list.
8374
83752008-10-16 Chong Yidong <cyd@stupidchicken.com>
8376
8377 * fileio.c (Fexpand_file_name): Doc fix.
8378
8379 * xfaces.c (Finternal_set_lisp_face_attribute): Make null values
8380 of :foreground and :background equivalent to unspecified (20.x
8381 compatibility).
8382
83832008-10-15 Eli Zaretskii <eliz@gnu.org>
8384
8385 * buffer.c (syms_of_buffer): Doc fix.
8386
83872008-10-14 Kenichi Handa <handa@m17n.org>
8388
8389 * font.c (font_clear_prop): When clearing font width, clear the
8390 average width field too.
8391
83922008-10-12 Andreas Schwab <schwab@suse.de>
8393
8394 * ftfont.c (ftfont_shape_by_flt): Make static.
8395 * ftfont.h (ftfont_shape_by_flt): Don't declare.
8396
8397 * font.c: Don't include <m17n-flt.h>.
8398
83992008-10-10 Eli Zaretskii <eliz@gnu.org>
8400
8401 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Decrease to 10000.
8402
84032008-10-09 Eli Zaretskii <eliz@gnu.org>
8404
8405 * frame.c (make_terminal_frame) [MSDOS]: Remove unused #ifdef'ed
8406 away code.
8407
84082008-10-09 Chong Yidong <cyd@stupidchicken.com>
8409
8410 * dispnew.c (update_text_area): Avoid looping due to large glyph
8411 overhangs (bug#1070).
8412
84132008-10-09 Kenichi Handa <handa@m17n.org>
8414
8415 * fontset.c (face_for_char): If face->fontset is negative, just
8416 return ascii_face.
8417
8418 * font.c (font_delete_unmatched): Fix previous change.
8419 Don't reject an entity if DPI and AVGWIDTH of an entity are 0.
8420
84212008-10-09 Martin Rudalics <rudalics@gmx.at>
8422
8423 * frame.c (Fraise_frame): On text-only terminals select frame in
8424 order to make it visible. (Bug#1061)
8425
84262008-10-08 Chong Yidong <cyd@stupidchicken.com>
8427
8428 * fontset.c (fontset_find_font): Check frame validity.
8429
84302008-10-07 Chong Yidong <cyd@stupidchicken.com>
8431
8432 * gtkutil.c (xg_display_open): Reset default display if none exists.
8433 (xg_display_close): Allow Emacs to close all displays (bug#985).
8434
84352008-10-06 Andreas Schwab <schwab@suse.de>
8436
8437 * sysdep.c (sys_signal): Always set SA_RESTART when noninteractively.
8438
84392008-10-06 Chong Yidong <cyd@stupidchicken.com>
8440
8441 * emacs.c (Vbefore_init_time, Vafter_init_time): Move from startup.el.
8442
8443 * lisp.h (Vbefore_init_time, Vafter_init_time): Declare.
8444
8445 * gtkutil.c (x_wm_set_size_hint): Return immediately if called
8446 during initialization.
8447
84482008-10-04 Eli Zaretskii <eliz@gnu.org>
8449
8450 * xdisp.c (redisplay_internal): If frame switched, redisplay the
8451 whole thing on MSDOS frames as well as on a TTY.
8452
8453 * dispnew.c (update_frame): Flush termscript for MSDOS frames as
8454 well as for TTY.
8455 (Fopen_termscript): Allow opening a termscript on MSDOS frames as
8456 well as on a TTY.
8457
8458 * sysdep.c (init_sys_modes): Set FRAME_GARBAGED_P for MSDOS frames
8459 as well as for TTY.
8460
8461 * systime.h (EMACS_TIME_CMP): Cast EMACS_SECS values to `long'.
8462
8463 * dispnew.c (change_frame_size_1): Set FrameRows and FrameCols for
8464 MSDOS frames as well.
8465
84662008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
8467
8468 * image.c (x_clear_image_1): Under NS, call ns_free_indexed_color with
8469 correct arguments.
8470 * menu.c (find_and_return_menu_selection): Add cast.
8471
84722008-10-03 Glenn Morris <rgm@gnu.org>
8473
8474 * emacs.c (USAGE1): Add --daemon.
8475
84762008-10-02 Eli Zaretskii <eliz@gnu.org>
8477
8478 * process.c (procfs_system_process_attributes): Multiply `pcpu' by
8479 100, so it's in percents as advertised.
8480
84812008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
8482
8483 * nsterm.h (ns_cursor_types, ns_output.desired_cursor_color)
8484 (ns_output.current_cursor, ns_output.desired_cursor)
8485 (ns_output.last_inactive, FRAME_CURSOR, FRAME_NEW_CURSOR)
8486 (FRAME_NEW_CURSOR_COLOR): Remove.
8487
8488 * nsfns.m (ns_set_cursor_color): Use FRAME_CURSOR_COLOR.
8489 (ns_lisp_to_cursor_type, ns_cursor_type_to_lisp): Use core Emacs
8490 enumeration (HOLLOW_BOX_CURSOR, etc.).
8491
8492 * nsterm.m (ns_frame_rehighlight): Remove commented code.
8493 (draw_window_cursor): Simplify code.
8494 (EmacsView-windowDidBecomeKey:,-windowDidResignKey:):
8495 Don't change cursor type. In latter, call rehighlight instead of doing
8496 updates manually.
8497 (EmacsPrefsController-setPanelFromValues,-setValuesFromPanel):
8498 Use core Emacs cursor types.
8499
8500 * xdisp.c (draw_glyphs): Don't call notice_overwritten_cursor under NS.
8501
85022008-10-02 Martin Rudalics <rudalics@gmx.at>
8503
8504 * process.c (Faccept_process_output): Fix doc-string.
8505
85062008-10-02 Dan Nicolaescu <dann@ics.uci.edu>
8507
8508 * gmalloc.c (__sbrk): Also define for uClibc.
8509
8510 * s/gnu-linux.h (GNU_LIBRARY_PENDING_OUTPUT_COUNT): Add definition
8511 for uClibc.
8512
85132008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
8514
8515 * nsfont.m (nsfont_spec_to_traits): Use UnXX masks only for non-normal
8516 styles.
8517 (nsfont_open): Reenable the cache.
8518
85192008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
8520
8521 * font.c (font_matching_entity): Reflect ATTRS in font selection.
8522 (font_find_for_lface) [HAVE_NS]: Don't ignore case.
8523
85242008-09-30 Stefan Monnier <monnier@iro.umontreal.ca>
8525
8526 * dispnew.c (Fsend_string_to_terminal): Don't try to send a string to
8527 a suspended terminal.
8528
85292008-09-30 Michael Albinus <michael.albinus@gmx.de>
8530
8531 * dbusbind.c (xd_signature): Use strcat instead of sprintf.
8532
85332008-09-30 Eli Zaretskii <eliz@gnu.org>
8534
8535 * Makefile.in (MSDOS_SUPPORT): Remove ccl.elc and codepage.elc.
8536
85372008-09-30 Chong Yidong <cyd@stupidchicken.com>
8538
8539 * xdisp.c (move_it_to): Don't advance the iterator if the last tab
8540 in a continued line coincides with a line beginning.
8541
85422008-09-29 Adrian Robert <Adrian.B.Robert@gmail.com>
8543
8544 * nsfont.m (nsfont_trait_distance): Fix bug.
8545 (nsfont_list): Return a list rather than a vector (syncs with Handa
8546 changes of 2008-05-14).
8547 (nsfont_open): Improve logging.
8548
85492008-09-29 Andreas Schwab <schwab@suse.de>
8550
8551 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
8552
85532008-09-28 Martin Rudalics <rudalics@gmx.at>
8554
8555 * character.c (Fchar_resolve_modifiers): Rewrite Elisp function
8556 name as char-resolve-modifiers.
8557 Reported by: Markus Triska <markus.triska@gmx.at>
8558
85592008-09-28 Dan Nicolaescu <dann@ics.uci.edu>
8560
8561 * dispnew.c (init_display): Return earlier when running as a daemon.
8562
85632008-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
8564
8565 * nsfont.m (nsfont_draw): Fix up composition rendering (cmp_from, ...).
8566
85672008-09-27 Eli Zaretskii <eliz@gnu.org>
8568
8569 * composite.c (Fcomposition_get_gstring)
8570 (Fcompose_region_internal, Fcompose_string_internal)
8571 (Ffind_composition_internal): Doc fix.
8572 (syms_of_composite) <compose-chars-after-function>: Doc fix.
8573 (syms_of_composite) <auto-composition-function>: Doc fix.
8574 (syms_of_composite) <composition-function-table>: Doc fix.
8575
85762008-09-25 Chong Yidong <cyd@stupidchicken.com>
8577
8578 * search.c (wordify): New argument for lax word-ends.
8579 (Fword_search_forward_lax, Fword_search_backward_lax): New funs.
8580
85812008-09-24 Dan Nicolaescu <dann@ics.uci.edu>
8582
8583 * lisp.h (is_daemon): Declare.
8584 * dispnew.c (init_display): Do not try to initialize the terminal
8585 when running as a daemon.
8586
85872008-09-22 Chong Yidong <cyd@stupidchicken.com>
8588
8589 * nsfns.m (compute_tip_xy): Use x_display_pixel_width and
8590 x_display_pixel_height.
8591
85922008-09-22 Martin Rudalics <rudalics@gmx.at>
8593
8594 * undo.c (record_point): Don't call Fundo_boundary for first
8595 change. (Bug#731)
8596
85972008-09-22 Juanma Barranquero <lekktu@gmail.com>
8598
8599 * emacs.c (Fdaemonp): Doc fix.
8600
86012008-09-22 Dan Nicolaescu <dann@ics.uci.edu>
8602
8603 * emacs.c (main): Place #ifdef in the proper place.
8604
86052008-09-21 Dan Nicolaescu <dann@ics.uci.edu>
8606
8607 * emacs.c (standard_args): Add --daemon.
8608 (main): Disconnect from the terminal when --daemon is passed.
8609 (is_daemon): New variable.
8610 (Fdaemonp): New function.
8611 (syms_of_emacs): Defsubr it.
8612
86132008-09-20 Chong Yidong <cyd@stupidchicken.com>
8614
8615 * xdisp.c (get_next_display_element): Handle string display
8616 correctly when checking for the end of a box run.
8617
86182008-09-20 Glenn Morris <rgm@gnu.org>
8619
8620 * fileio.c (Qdelete_by_moving_to_trash): New Lisp_Object.
8621 (syms_of_fileio): Add Qdelete_by_moving_to_trash.
8622 (Frename_file): Avoid copying to trash if a rename involves
8623 a delete. (Bug#964).
8624
86252008-09-20 Eli Zaretskii <eliz@gnu.org>
8626
8627 * keyboard.c (Fset_quit_char, Fset_input_meta_mode)
8628 (Fset_output_flow_control, Fcurrent_input_mode): Support MSDOS
8629 frames as well as termcap frames.
8630 (handle_interrupt): Remove "#ifndef MSDOS" around the call to
8631 get_named_tty.
8632
86332008-09-19 Eli Zaretskii <eliz@gnu.org>
8634
8635 * process.c (procfs_system_process_attributes): Fix cmdline in
8636 case /proc/PID/cmdline is empty.
8637
8638 * xterm.c (x_wm_set_size_hint): Use x_display_pixel_width and
8639 x_display_pixel_height.
8640
86412008-09-19 Juanma Barranquero <lekktu@gmail.com>
8642
8643 * frame.c (x_fullscreen_adjust): Declare var as Display_Info.
8644
8645 * w32fns.c (Fx_display_pixel_width, Fx_display_pixel_height)
8646 (compute_tip_xy): Use x_display_pixel_width, x_display_pixel_height.
8647
86482008-09-19 Dan Nicolaescu <dann@ics.uci.edu>
8649
8650 * dispextern.h (struct it): Move line_wrap away from the middle of
8651 bitfields. Move voffset in struct iterator_stack_entry after the
8652 bitfields. Move tab_width near after another short.
8653
86542008-09-18 Dan Nicolaescu <dann@ics.uci.edu>
8655
8656 * frame.h (struct frame): Move alpha from the middle of bitfields.
8657
8658 * window.h (struct window): Move frozen_window_start_p after the
8659 rest of the bitfields to reduce padding.
8660
86612008-09-18 Chong Yidong <cyd@stupidchicken.com>
8662
8663 * xterm.h (x_display_info): Remove `height' and `width' members.
8664
8665 * nsterm.h (ns_display_info): Remove `height' and `width' members.
8666
8667 * w32term.h (w32_display_info): Remove `height', `width',
8668 `height_in', and `width_in' members.
8669
8670 * xterm.c (x_display_pixel_height, x_display_pixel_width):
8671 New functions.
8672 (x_calc_absolute_position): Use them.
8673 (x_term_init): Omit removed `height' and `width' members.
8674
8675 * w32term.c (x_display_pixel_height, x_display_pixel_width):
8676 New functions.
8677 (w32_read_socket, x_calc_absolute_position): Use them.
8678 (w32_initialize_display_info, w32_term_init): Omit removed members
8679 of w32_display_info.
8680
8681 * nsterm.m (x_display_pixel_height, x_display_pixel_width):
8682 New functions.
8683 (ns_initialize_display_info): Omit removed members of ns_display_info.
8684
8685 * xterm.c (x_display_pixel_height, x_display_pixel_width):
8686 New functions.
8687 (x_calc_absolute_position): Use them.
8688 (x_term_init): Omit removed `height' and `width' members.
8689
8690 * xfns.c (Fx_display_pixel_width, Fx_display_pixel_height)
8691 (compute_tip_xy):
8692 * frame.c (x_fullscreen_adjust):
8693 * xmenu.c (menu_position_func): Use x_display_pixel_height and
8694 x_display_pixel_width.
8695
86962008-09-18 Kenichi Handa <handa@m17n.org>
8697
8698 * composite.c (fill_gstring_header): Don't check FROM and TO here.
8699 (composition_compute_stop_pos): Fix handling of static composition.
8700 (Fcomposition_get_gstring): Check FROM and TO at first.
8701
87022008-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
8703
8704 * composite.c (Fcomposition_get_gstring): Yet another int/Lisp_Object
8705 mixup (YAILOM).
8706
87072008-09-17 Chong Yidong <cyd@stupidchicken.com>
8708
8709 * indent.c (Fvertical_motion): Use position reported by iterator
8710 instead of PT for determining screen motion (bug#943).
8711
87122008-09-17 Romain Francoise <romain@orebokech.com>
8713
8714 * composite.c (composition_adjust_point): Fix int/EMACS_INT mixup.
8715
87162008-09-17 Kenichi Handa <handa@m17n.org>
8717
8718 * ftfont.c (ftfont_shape_by_flt): Downcase family name.
8719
8720 * composite.c (Fcomposition_get_gstring): Make bigger gstring_work
8721 if necessary.
8722
87232008-09-16 Kenichi Handa <handa@m17n.org>
8724
8725 * coding.c (make_conversion_work_buffer): Avoid calling
8726 Fget_buffer_create if it is not necessary.
8727
87282008-09-15 Martin Rudalics <rudalics@gmx.at>
8729
8730 * window.c (Fselect_window): Don't update window_select_count and
8731 use_time when norecord is not nil.
8732
87332008-09-14 Kenichi Handa <handa@m17n.org>
8734
8735 * fileio.c (Finsert_file_contents): Delete incorrect decrement of
8736 specpdl_ptr.
8737
87382008-09-12 Kenichi Handa <handa@m17n.org>
8739
8740 * indent.c (scan_for_column): Don't handle automatic composition
8741 if the current buffer is not associated with a window.
8742
8743 * composite.c (composition_reseat_it): If the current buffer is
8744 not associated with a window, ignore the automatic composition.
8745 (find_automatic_composition): Likewise.
8746
87472008-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
8748
8749 * term.c (close_gpm): New fun extracted from Fgpm_mouse_stop.
8750 (Fgpm_mouse_stop): Use it.
8751 * termhooks.h (close_gpm): Declare.
8752 * keyboard.c (tty_read_avail_input): Forcefully close the gpm
8753 connection if Gpm_GetEvent fails.
8754
8755 * window.c (set_window_buffer): Always preserve current-buffer.
8756
87572008-09-12 Glenn Morris <rgm@gnu.org>
8758
8759 * charset.c (init_charset): Warn if etc/charsets not found. (Bug#909)
8760
87612008-09-11 Glenn Morris <rgm@gnu.org>
8762
8763 * charset.c (charset-map-path): Doc fix.
8764
87652008-09-10 Kenichi Handa <handa@m17n.org>
8766
8767 * xdisp.c (handle_composition_prop): Set it->cmp_it.ch to -1.
8768
8769 * font.c (Ffont_shape_gstring): Make glyphs of non-nil adjustment
8770 compose a grapheme cluster with the preceding base glyph.
8771
8772 * composite.c (composition_compute_stop_pos): Fix previous change.
8773 Reset cmp_it->id to -1 at first.
8774
87752008-09-10 Glenn Morris <rgm@gnu.org>
8776
8777 * Makefile.in (character.o, chartab.o): Fix config.h typo.
8778
87792008-09-09 Chong Yidong <cyd@stupidchicken.com>
8780
8781 * keyboard.c (read_key_sequence): Reapply translation maps when
8782 switching keyboards.
8783
87842008-09-09 Kenichi Handa <handa@m17n.org>
8785
8786 * ftfont.c (ftfont_shape_by_flt): Use "combining" FLT for ASCII
8787 characters.
8788
8789 * composite.c (FORWARD_CHAR): Fix calculation
8790 of (POSITION).pos_byte.
8791 (composition_compute_stop_pos): Limit the search of composition to
8792 at most 500 characters ahead. If we reach the limit or find a
8793 newline, set cmp_it->ch to -2 and return 0.
8794 (composition_reseat_it): Handle the case that cmp_it->ch is -2.
8795
87962008-09-08 Kenichi Handa <handa@m17n.org>
8797
8798 * indent.c (Fvertical_motion): Be sure to set
8799 it_overshoot_expected if it.cmp_it.id is non-negative.
8800
88012008-09-07 Andreas Schwab <schwab@suse.de>
8802
8803 * callproc.c (Fcall_process): Don't hold references to string data
8804 across garbage collection. Move initialisation of new_argv down
8805 to avoid compiler bug.
8806
88072008-09-07 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
8808
8809 * process.c (Fsystem_process_attributes): Doc fix.
8810
88112008-09-07 Chong Yidong <cyd@stupidchicken.com>
8812
8813 * callproc.c (Fcall_process): Canonicalize current directory name.
8814
8815 * xdisp.c (move_it_to): When moving by vpos, ensure that the
8816 iterator advances to the next line if the current line ends in a
8817 continued tab.
8818
88192008-09-07 Teodor Zlatanov <tzz@lifelogs.com>
8820
8821 * nsfont.m (nsfont_draw): Fix the references to missing gidx data
8822 member to point to cmp_from.
8823
8824 * xdisp.c: Doc fix for references to gidx data member.
8825
88262008-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
8827
8828 * buffer.c (Fbuffer_swap_text): Reset window->point markers.
8829
88302008-09-07 Kenichi Handa <handa@m17n.org>
8831
8832 * composite.c (FORWARD_CHAR): Check STOP after
8833 incrementing (POSITION).pos.
8834
88352008-09-06 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
8836
8837 * process.c (Fsystem_process_attributes): Doc fix.
8838
88392008-09-06 Chong Yidong <cyd@stupidchicken.com>
8840
8841 * keyboard.c (Ftop_level): Doc fix.
8842
88432008-09-06 Eli Zaretskii <eliz@gnu.org>
8844
8845 * xmenu.c (xmenu_show) [!HAVE_X_WINDOWS]: If frame has a
8846 minibuffer, don't let lower part of menu invade the echo area.
8847
8848 * msdos.c (IT_menu_display): Use STRING_CHAR_ADVANCE instead of a
8849 "char *q" to access menu text and advance through it. Revert the
8850 change that displayed ">" instead of ASCII character 0x10.
8851
88522008-09-05 Eli Zaretskii <eliz@gnu.org>
8853
8854 * menu.c (single_menu_item) [!HAVE_BOXES]: Enable emulation of
8855 toggle boxes and radio buttons on MS-DOS as well.
8856
88572008-09-05 Kenichi Handa <handa@m17n.org>
8858
8859 * composite.c (autocmp_chars): Check lookback count.
8860 (composition_compute_stop_pos): Set cmp_it->lookback.
8861 (composition_reseat_it): Check lookback count.
8862 (struct position_record): New struct.
8863 (FORWARD_CHAR, BACKWARD_CHAR, CHAR_COMPOSABLE_P): New macros.
8864 (find_automatic_composition): New function.
8865 (composition_adjust_point): Use find_automatic_composition.
8866
8867 * dispextern.h (struct composition_it): New member lookback.
8868
88692008-09-02 Chong Yidong <cyd@stupidchicken.com>
8870
8871 * indent.c (Fvertical_motion): Don't call move_it_by_lines again
8872 if moving by a single line.
8873
88742008-09-02 Andreas Schwab <schwab@suse.de>
8875
8876 * xterm.c (x_delete_display): Fix merge error.
8877
8878 * fileio.c (Fexpand_file_name): Remove unused variables.
8879
88802008-09-02 Eli Zaretskii <eliz@gnu.org>
8881
8882 * fileio.c (Fexpand_file_name): Copy argument `name' into local
8883 storage on all platforms, not just on DOS_NT.
8884
88852008-09-02 Jason Rumney <jasonr@gnu.org>
8886
8887 * w32menu.c (Fx_popup_menu, Fx_popup_dialog, w32_menu_show):
8888 Ensure mouse is not grabbed after menu is finished.
8889
88902008-09-01 Chong Yidong <cyd@stupidchicken.com>
8891
8892 * xfaces.c (Finternal_set_alternative_font_family_alist)
8893 (Finternal_set_alternative_font_registry_alist): Properly copy
8894 entire alist structure.
8895
88962008-09-01 Kenichi Handa <handa@m17n.org>
8897
8898 * ftfont.c (ftfont_spec_pattern): Don't create a charset if the
8899 representative chars of the script is a vector.
8900 (ftfont_list): Handle the case where the representative chars of
8901 the script is a vector.
8902
8903 * character.c (syms_of_character): Docstring of
8904 script-representative-chars fixed.
8905
89062008-08-31 Eli Zaretskii <eliz@gnu.org>
8907
8908 * msdos.c (BUILD_CHAR_GLYPH): New macro.
8909 (IT_menu_display): Use it instead of SET_CHAR_GLYPH to construct
8910 the menu. Allocate larger buffer for `text', to account for
8911 possible ^C characters.
8912
89132008-08-31 Martin Rudalics <rudalics@gmx.at>
8914
8915 * xdisp.c (prepare_menu_bars): Don't call
8916 Vwindow_size_change_functions with arg Qt.
8917
89182008-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
8919
8920 * font.h (font_range):
8921 * fileio.c (report_file_error):
8922 * composite.c (composition_update_it): Yet another int/Lisp_Object
8923 mixup (YAILOM).
8924
89252008-08-30 Glenn Morris <rgm@gnu.org>
8926
8927 * data.c (Fmake_variable_frame_local): Doc fix.
8928
8929 * frame.c (Fmodify_frame_parameters): Doc fix.
8930
89312008-08-30 Eli Zaretskii <eliz@gnu.org>
8932
8933 * w32.c (init_user_info): Allocate buf[] with xmalloc using the size
8934 needed by GetTokenInformation.
8935 (w32_system_process_attributes): Check return values of all system
8936 APIs.
8937
8938 * msdos.c (IT_display_cursor): Write "CURSOR ON/OFF" to termscript
8939 only when the state changes.
8940 (IT_update_begin, IT_update_end): Add termscript trace.
8941
8942 * w16select.c (Fw16_set_clipboard_data): Don't encode text if
8943 clipboard is unavailable. Set dst to NULL if it doesn't point to
8944 malloc'ed data.
8945 (Fw16_get_clipboard_data): Initialize htext to NULL, to avoid
8946 passing random values to xfree.
8947
8948 * dispnew.c (init_display): Set `tty's association in frame's
8949 parameters alist to the name of the terminal device, if that is known.
8950
89512008-08-29 Jason Rumney <jasonr@gnu.org>
8952
8953 * w32uniscribe.c (uniscribe_check_otf): Don't fallback on DFLT script.
8954
89552008-08-29 Eli Zaretskii <eliz@gnu.org>
8956
8957 * composite.c (fill_gstring_body): Avoid compiler warnings.
8958
8959 * font.c (font_fill_lglyph_metrics): Use EMACS_INT in
8960 LGLYPH_SET_CODE to avoid compiler warnings.
8961
8962 * makefile.w32-in ($(BLD)/w32uniscribe.$(O)): Depend on composite.h.
8963
8964 * composite.h (LGLYPH_SET_CODE): Cast `val' to EMACS_INT.
8965
8966 * w32uniscribe.c (uniscribe_shape): Shut up compiler warning in
8967 LGLYPH_SET_CODE.
8968
89692008-08-29 Kenichi Handa <handa@m17n.org>
8970
8971 * fileio.c (report_file_error): Don't downcase the first character
8972 of errstring if it is still unibyte.
8973
89742008-08-29 Kenichi Handa <handa@m17n.org>
8975
8976 These changes are to re-implement the automatic composition so
8977 that it doesn't use text properties.
8978
8979 * Makefile.in (ftfont.o): Depend on composite.h.
8980 (composite.o): Depend dispextern.h, font.h, frame, and window.h.
8981
8982 * character.h (Vunicode_category_table): Extern it.
8983
8984 * character.c (Vunicode_category_table): New variable.
8985 (syms_of_character): DEFVAR_LISP Vunicode_category_table.
8986
8987 * chartab.c (optimize_sub_char_table): Perform more greedy
8988 optimization.
8989
8990 * composite.h (enum composition_method):
8991 Delete COMPOSITION_WITH_GLYPH_STRING.
8992 (COMPOSITION_METHOD): Don't check COMPOSITION_WITH_GLYPH_STRING.
8993 (Vcomposition_function_table): Extern it.
8994 (LGSTRING_XXX, LGLYPH_XXX): Macros moved from font.h.
8995 (composition_gstring_put_cache, composition_gstring_from_id)
8996 (composition_gstring_p, composition_gstring_width)
8997 (composition_compute_stop_pos, composition_reseat_it)
8998 (composition_update_it, composition_adjust_point): Extern them.
8999 (Fcomposition_get_gstring): EXFUN it.
9000
9001 * composite.c: Include window.h, frame.h, dispextern.h, font.h.
9002 (Vcomposition_function_table)
9003 (get_composition_id): Don't handle COMPOSITION_WITH_GLYPH_STRING.
9004 (gstring_hash_table, gstring_work, gstring_work_headers):
9005 New variables.
9006 (gstring_lookup_cache, composition_gstring_put_cache)
9007 (composition_gstring_from_id, composition_gstring_p)
9008 (composition_gstring_width, fill_gstring_header)
9009 (fill_gstring_body, autocmp_chars, composition_compute_stop_pos)
9010 (composition_reseat_it, composition_update_it)
9011 (composition_adjust_point, Fcomposition_get_gstring): New functions.
9012 (syms_of_composite): Initialize gstring_hash_table, gstrint_work,
9013 and gstring_work_headers. DEFVAR_LISP composition-function-table.
9014 Defsubr composition_get_gstring.
9015
9016 * dispextern.h (struct glyph): New union u.cmp. Delete the member
9017 cmp_id.
9018 (struct glyph_string): Delete the member gidx. New members
9019 cmp_id, cmp_from, and cmp_to.
9020 (enum it_method): Delete GET_FROM_COMPOSITION.
9021 (struct composition_it): New struct.
9022 (struct it): New member cmp_it, and iterator_stack_entry.cmp_it.
9023 Delete c, len, cmp_id, cmp_len in u.comp.
9024
9025 * font.h (enum lgstring_indices): Delete it.
9026 (LGSTRING_XXX, LGLYPH_XXX): Move these macros to composite.h.
9027 (enum lglyph_indices): Likewise.
9028 (font_range): Adjust extern.
9029 (font_fill_lglyph_metrics): Extern it.
9030
9031 * font.c (QCf): New variable.
9032 (check_gstring): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
9033 (font_prepare_composition): Delete this function.
9034 (font_range): Type and arguments changed.
9035 (Ffont_make_gstring, Ffont_fill_gstring): Delete them.
9036 (font_fill_lglyph_metrics): New function.
9037 (Ffont_shape_text): Rename to Ffont_shape_gstring and change arguments.
9038 (syms_of_font): DEFSYM QCf. Delete defsubr for
9039 Sfont_make_gstring, Sfont_fill_gstring, Sfont_shape_text.
9040 Defsubr Sfont_shape_gstring.
9041
9042 * fontset.h (font_for_char): Extern it.
9043
9044 * fontset.c (font_for_char): New function.
9045
9046 * ftfont.c: Include composite.h.
9047 (ftfont_resolve_generic_family): Add langset "en" to pattern.
9048 (ftfont_shape_by_flt): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
9049
9050 * indent.c: Include composite.h and dispextern.h.
9051 (check_composition): Delete this function.
9052 (scan_for_column): Handle composition by
9053 composition_compute_stop_pos, composition_reseat_it, and
9054 composition_update_it.
9055 (compute_motion): Likewise.
9056 (Fvertical_motion): Fix checking of composition.
9057
9058 * keyboard.c (adjust_point_for_property): Check composition by
9059 composition_adjust_point.
9060
9061 * nsterm.m (ns_draw_glyph_string): Adjust for the change of
9062 struct glyph_string.
9063
9064 * term.c (encode_terminal_code): Adjust for the change of struct glyph.
9065 (append_composite_glyph): Adjust for the change of struct it and
9066 struct glyph.
9067 (produce_composite_glyph): Likewise.
9068
9069 * w32term.c (x_draw_composite_glyph_string_foreground):
9070 Adjust for the change of struct glyph_string.
9071 (x_draw_glyph_string): Likewise.
9072
9073 * w32uniscribe.c (struct uniscribe_font_info): Include composite.h.
9074 (uniscribe_shape): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
9075
9076 * xdisp.c: Include font.h.
9077 (it_props): Delete the entry for Qauto_composed.
9078 (init_iterator): Initialize it->cmp_it.id to -1.
9079 (compute_stop_pos): Call composition_compute_stop_pos.
9080 (face_before_or_after_it_pos): Adjust for the change of struct it.
9081 (handle_auto_composed_prop): Delete it.
9082 (handle_composition_prop): Handle only static composition.
9083 (next_overlay_string): Remove it->method == GET_FROM_COMPOSITION
9084 from xassert. Initialize it->cmp_it.stop_pos.
9085 (push_it): Adjust for the change of struct it.
9086 (pop_it): Likewise.
9087 (get_next_element): Delete next_element_from_composition.
9088 (CHAR_COMPOSED_P): New macro.
9089 (get_next_display_element): For automatic composition, get a face
9090 from the font in the glyph-string.
9091 (set_iterator_to_next): For GET_FROM_BUFFER and GET_FROM_STRING,
9092 check composition by it->cmp_it.id. Delete GET_FROM_COMPOSITION case.
9093 (next_element_from_string): Check if the character at the current
9094 position is composed by CHAR_COMPOSED_P.
9095 (next_element_from_buffer): Likewise.
9096 (next_element_from_composition): Adjust for the change of struct it.
9097 Update it->cmp_it.
9098 (dump_glyph): Adjust for the change of struct glyph.
9099 (fill_composite_glyph_string): Adjust for the change of struct
9100 it and struct glyph. Don't handle automatic composition here.
9101 (fill_gstring_glyph_string): New function.
9102 (x_get_glyph_overhangs): Handle automatic composition.
9103 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the change of struct glyph.
9104 (BUILD_GSTRING_GLYPH_STRING): New macro.
9105 (BUILD_GLYPH_STRINGS): Call BUILD_GSTRING_GLYPH_STRING for
9106 automatic composition.
9107 (append_composite_glyph): Adjust for the change of struct it and
9108 struct glyph.
9109 (x_produce_glyphs): Adjust for the change of struct it.
9110
9111 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
9112 the change of struct glyph_string.
9113 (x_draw_glyph_string): Likewise.
9114
91152008-08-29 Glenn Morris <rgm@gnu.org>
9116
9117 * buffer.c (word-wrap): Doc fix.
9118 * xdisp.c (truncate-partial-width-windows): Doc fix.
9119 Increase default to 50.
9120
91212008-08-29 Chong Yidong <cyd@stupidchicken.com>
9122
9123 * xdisp.c (update_tool_bar_unwind): New function.
9124 (update_tool_bar): Temporarily set selected frame before building
9125 tool-bar items.
9126
91272008-08-28 Michael Albinus <michael.albinus@gmx.de>
9128
9129 * dbusbind.c (XD_ERROR, XD_DEBUG_MESSAGE): Use strncpy and
9130 snprintf, respectively.
9131 (xd_append_arg): Convert strings with Fstring_make_unibyte.
9132
91332008-08-28 Chong Yidong <cyd@stupidchicken.com>
9134
9135 * Makefile.in: Revert (undocumented) 2008-08-20 change adding
9136 LDFLAGS to GNUstep CC invocation.
9137
91382008-08-27 Chong Yidong <cyd@stupidchicken.com>
9139
9140 * indent.c (Fvertical_motion): Revert last change. Handle the
9141 general case where we are moving forward, and PT spans multiple
9142 screen lines.
9143
9144 * eval.c (find_handler_clause): Temporarily increase
9145 max-lisp-eval-depth while printing the backtrace buffer, to
9146 guarantee that help-mode code can run.
9147
91482008-08-27 Eli Zaretskii <eliz@gnu.org>
9149
9150 * msdos.c (Fmsdos_remember_default_colors): Don't reverse frame
9151 colors under -rv.
9152 (IT_set_frame_parameters): Don't swap foreground and background
9153 colors if `(reverse . t)' is present in the frame properties.
9154 (internal_terminal_init): Call init_frame_faces only for the
9155 initial frame.
9156
91572008-08-27 Andreas Schwab <schwab@suse.de>
9158
9159 * dired.c (Ffile_attributes): Avoid compiler warning in bitshift.
9160
91612008-08-27 Andreas Schwab <schwab@suse.de>
9162
9163 * search.c (search_buffer): Set char_base to zero only at the end.
9164
91652008-08-27 Kenichi Handa <handa@m17n.org>
9166
9167 * fileio.c (report_file_error): Fix handling of multibyte error string.
9168
91692008-08-27 Andreas Seltenreich <seltenreich@gmx.de>
9170
9171 * xterm.c (x_term_init): Temporarily hide the partially
9172 initialized terminal while calling vendor-specific-keysyms.
9173
91742008-08-26 Eli Zaretskii <eliz@gnu.org>
9175
9176 * msdos.c (internal_terminal_init): Most initializations done only
9177 once, especially initial_screen_colors[] and termscript open.
9178
91792008-08-26 Chong Yidong <cyd@stupidchicken.com>
9180
9181 * eval.c (Fcondition_case): Doc fix.
9182
9183 * widgetprv.h (EmacsFramePart): Change font member to the new font
9184 struct.
9185
9186 * widget.c: Include character.h and font.h for XSETFONT.
9187 (setup_frame_gcs): Compute X font id from font struct, just once.
9188
91892008-08-26 Eli Zaretskii <eliz@gnu.org>
9190
9191 * term.c (get_named_tty): Fix last change.
9192
91932008-08-26 Chong Yidong <cyd@stupidchicken.com>
9194
9195 * indent.c (Fvertical_motion): If moving forward starting from a
9196 multi-line string, move the iterator to the last line of that string.
9197
91982008-08-25 Eli Zaretskii <eliz@gnu.org>
9199
9200 * frame.c (do_switch_frame): Mark previously displayed frame as
9201 obscured for FRAME_MSDOS_P frames as well.
9202
92032008-08-24 Eli Zaretskii <eliz@gnu.org>
9204
9205 * frame.c (make_terminal_frame): Initialize f->terminal,
9206 f->terminal->reference_count, and scroll bars on MS-DOS as well.
9207 Set the top frame to newly created frame.
9208 (Fmake_terminal_frame): Reuse the_only_display_info.
9209
9210 * vm-limit.c (get_lim_data) [MSDOS]: Use alternative methods of
9211 estimating available memory.
9212
92132008-08-23 David Reitter <david.reitter@gmail.com>
9214
9215 * nsterm.m (ns_draw_window_cursor): Don't call
9216 NSDisableScreenUpdates and NSEnableScreenUpdates on
9217 non-NS_IMPL_COCOA systems.
9218
92192008-08-23 Andreas Schwab <schwab@suse.de>
9220
9221 * process.c (procfs_system_process_attributes): Fix use of
9222 uninitialized variables.
9223
92242008-08-23 Eli Zaretskii <eliz@gnu.org>
9225
9226 * emacs.c (main) [MSDOS]: Call syms_of_xmenu.
9227
9228 * dispnew.c (init_display): Remove MS-DOS specific conditions for
9229 calling tty-set-up-initial-frame-faces.
9230
9231 * xmenu.c (Fx_popup_dialog, Fx_popup_menu, xmenu_show):
9232 Allow MSDOS frames along with X frames.
9233
9234 * termhooks.h (TERMINAL_ACTIVE_P): Handle output_msdos_raw in
9235 addition to output_termcap.
9236
9237 * xdisp.c (redisplay_internal) [MSDOS]: Don't call set_tty_color_mode.
9238
9239 * termchar.h (FRAME_TTY): Support output_msdos_raw.
9240 (struct tty_display_info) [MSDOS]: Add fields related to mouse
9241 highlight.
9242
9243 * process.c [!subprocesses]: Define QCname.
9244 (syms_of_process): Intern and staticpro it.
9245
9246 * w16select.c (Fw16_set_clipboard_data, Fw16_get_clipboard_data):
9247 Adjust for changes in encoding/decoding routines.
9248 Use encode_coding_object and decode_coding_object instead of
9249 encode_coding and decode_coding.
9250
9251 * sysdep.c (init_sys_modes): Call dos_ttraw with tty_out as argument.
9252
9253 * dosfns.c: Include frame.h before termhooks.h.
9254 (dos_cleanup): Use CURTTY ()->termscript instead of a global
9255 variable termscript.
9256
9257 * s/msdos.h (USER_FULL_NAME): Define.
9258 (SYSTEM_PURESIZE_EXTRA): Bump up to 100K.
9259
9260 * editfns.c (USER_FULL_NAME): Define to pw->pw_gecos if undefined.
9261 (Fuser_full_name): Use USER_FULL_NAME instead of a literal
9262 pw->pw_gecos.
9263
9264 * keyboard.c (handle_interrupt) [MSDOS]: Call cursor_to with
9265 SELECTED_FRAME as additional (1st) argument.
9266 (tty_read_avail_input): Handle output_msdos_raw in
9267 addition to output_termcap.
9268
9269 * msdos.c: Include frame.h before termhooks.h.
9270 (mouse_on, mouse_off, mouse_moveto, mouse_init)
9271 (msdos_set_cursor_shape, IT_set_face, IT_write_glyphs)
9272 (show_mouse_face, IT_clear_end_of_line, IT_clear_screen)
9273 (IT_clear_to_end, IT_cursor_to, IT_display_cursor, IT_cmgoto)
9274 (IT_set_terminal_modes, IT_reset_terminal_modes)
9275 (IT_set_frame_parameters): Use tty->termscript instead of a global
9276 variable termscript.
9277 (IT_write_glyphs): Use tty->terminal->terminal_coding instead of a
9278 global variable terminal_coding. Don't refer to
9279 Vnonascii_translation_table.
9280 (internal_terminal_init): Set Vwindow_system in current_kboard.
9281 Don't use TTY_CHAR_INS_DEL_OK. Set Vinitial_window_system.
9282 Announce date and time of session start, if termscript is open.
9283 Don't zero out the_only_display_info (it is done in
9284 term.c:init_tty). Open termscript only of not already open.
9285 Log "SCREEN SAVED" here, instead of IT_set_terminal_modes. Init mouse
9286 here instead of dos_ttraw. Don't initialize display if this is an
9287 initial tty. Don't set FRAME_FONT.
9288 (Vwindow_system_version): Bump to 23.
9289 (dos_ttraw): Accept a TTY argument; all callers fixed. If mouse
9290 is available, set up mouse_position_hook.
9291 (dos_ttraw, IT_set_terminal_modes): If called with initial
9292 terminal, do nothing.
9293 (IT_set_frame_parameters): Handle the Qtty_type frame
9294 parameter by calling internal_terminal_init.
9295 (dos_set_window_size, show_mouse_face)
9296 (clear_mouse_face, IT_note_mode_line_highlight)
9297 (IT_note_mouse_highlight, IT_update_begin, IT_frame_up_to_date)
9298 (dos_rawgetc): Use tty_display_info instead of x_display_info.
9299 (initialize_msdos_display): New function.
9300 (IT_cursor_to, IT_clear_to_end, IT_clear_screen)
9301 (IT_clear_end_of_line, IT_insert_glyphs, IT_write_glyphs)
9302 (IT_delete_glyphs, IT_ring_bell, IT_reset_terminal_modes)
9303 (IT_set_terminal_modes, IT_set_terminal_window, IT_update_begin):
9304 Accept additional argument: a pointer to a frame. Update all callers.
9305 (request_sigio, unrequest_sigio): Don't define, now defined on
9306 sysdep.c.
9307 (IT_write_glyphs): Rewrite to use encode_terminal_code.
9308
9309 * term.c [MSDOS]: Include msdos.h.
9310 (init_tty) [MSDOS]: Reuse most of WINDOWSNT branch. Change cpp
9311 conditional to DOS_NT. Allow only one call to this function in a
9312 session. Don't allocate a new struct tty_display_info; instead,
9313 reuse the_only_display_info. Call get_tty_size to get screen
9314 dimensions. Call init_baud_rate to set bad_rate.
9315 (dissociate_if_controlling_tty) [MSDOS]: Ifdef away function body.
9316 (Fsuspend_tty) [MSDOS]: Don't close input and output.
9317 (Fresume_tty) [MSDOS]: Don't reopen the TTY; instead, use stdin/stdout.
9318 (get_tty_terminal, get_named_tty, Ftty_type)
9319 (Fcontrolling_tty_p): Handle output_msdos_raw in addition to
9320 output_termcap.
9321 (Fresume_tty, Fsuspend_tty, init_tty, delete_tty):
9322 Call add_keyboard_wait_descriptor and delete_keyboard_wait_descriptor
9323 only when subprocesses are supported.
9324
9325 * frame.c (make_terminal_frame) [MSDOS]: Adjust initialization of
9326 f->output_data.x.
9327 (Fmake_terminal_frame) [MSDOS]: Don't allow creation of new
9328 terminal devices.
9329
9330 * msdos.h: Remove definition of struct x_display_info and struct
9331 x_output.
9332 (FRAME_FONT): Use output_data.tty.
9333 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL): Don't define.
9334 (struct x_display_info): Rename from display_info. Update all users in
9335 msdos.c.
9336 (struct x_output): Remove background_pixel and foreground_pixel.
9337 (the_only_display_info): Rename from the_only_x_display.
9338 (dos_ttraw): Update prototype.
9339
9340 * Makefile.in (MSDOS_OBJ): Add xmenu.o.
9341 (SOME_MACHINE_LISP): Add ../lisp/term/pc-win.elc.
9342
93432008-08-23 Jason Rumney <jasonr@gnu.org>
9344
9345 * image.c (enum tiff_keyword_index, tiff_format): Add :index keyword.
9346 (fn_TIFFSetDirectory): New library function used.
9347 (init_tiff_functions) [HAVE_NTGUI]: Initialize it.
9348 (tiff_load): Use :index to select among multiple images. Set count
9349 property when multiple images exist.
9350 (gif_format): Use :index, not :image.
9351
93522008-08-23 Chong Yidong <cyd@stupidchicken.com>
9353
9354 * xdisp.c (try_scrolling): Check INT_MAX instead of
9355 MOST_POSITIVE_FIXNUM for maximum integer value. Include limits.h
9356 to obtain INT_MAX.
9357
93582008-08-21 İsmail Dönmez <ismail@namtrac.org> (tiny change)
9359
9360 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase on GTK+.
9361
93622008-08-21 Christian Faulhammer <opfer@gentoo.org> (tiny change)
9363
9364 * Makefile.in (temacs${EXEEXT}): On GNUstep, link to appropriate
9365 GNUstep library location.
9366
93672008-08-21 Chong Yidong <cyd@stupidchicken.com>
9368
9369 * xfaces.c (x_update_menu_appearance): Check validity of menu font
9370 before using it.
9371
9372 * puresize.h (BASE_PURESIZE): Increase to 1250000.
9373
93742008-08-20 Adrian Robert <Adrian.B.Robert@gmail.com>
9375
9376 * nsfns.m (ns-read-file-name): Add casts to avoid warning.
9377 (ns-convert-utf8-nfd-to-nfc): Warn if cannot execute correctly.
9378 * nsfont.m (nsfont_draw): Compare indexed colors to 0, not nil.
9379 * nsterm.h (EmacsView-unlockFocusNeedsFlush:): Add declaration.
9380 (EmacsApp-cursor_blink_handler): Remove declaration.
9381 * nsterm.m (ns_draw_glyph_string): Update first conditional body to
9382 match 01 Feb 2008 changes in xterm.c.
9383 (ns_read_socket): Add cast to avoid warning.
9384 (EmacsApp-application:openFiles:): Don't call replyToOpenOrPrint: on
9385 GNUstep.
9386
93872008-08-20 Chong Yidong <cyd@stupidchicken.com>
9388
9389 * xselect.c (x_get_foreign_selection): Return nil if desired
9390 selection could not be obtained, instead of signalling an error.
9391
93922008-08-20 David Reitter <david.reitter@gmail.com>
9393
9394 * nsfns.m (ns_lisp_to_cursor_type): Replace with generic xfns.c.
9395 * nsterm.m: Remove ns-specific code for cursor blinking.
9396 (ns_draw_window_cursor): Clear cursor properly rather than
9397 redrawing the area. Respect width of bar cursors.
9398 These changes enable the use of generic blink-cursor-mode and
9399 generic cursor types in NS and support smooth cursor movements (do
9400 not blink off after command).
9401 * xdisp.c (get_phys_cursor_geometry): Redraw wider rectangle on
9402 Nextstep, too.
9403
94042008-08-19 Kenichi Handa <handa@m17n.org>
9405
9406 * font.c (Vfont_log_deferred): New variable.
9407 (font_add_log): Check Vfont_log_deferred.
9408 (font_deferred_log): New function.
9409
9410 * font.h (font_deferred_log): Extern it.
9411
9412 * fontset.c (reorder_font_vector): Use encoding charset of fonts
9413 for sorting.
9414 (face_for_char): Use deferred log.
9415
94162008-08-18 Kenichi Handa <handa@m17n.org>
9417
9418 * fontset.c (face_for_char): Add font log.
9419
9420 * font.c (font_add_log): Add the font properties :script, :lang,
9421 and :otf in the log.
9422
94232008-08-17 Chong Yidong <cyd@stupidchicken.com>
9424
9425 * xdisp.c: Remove dead code.
9426 (handle_invisible_prop, next_overlay_string): Defer call to
9427 setup_for_ellipsis.
9428 (handle_stop, set_iterator_to_next): Call setup_for_ellipsis.
9429
94302008-08-15 Chong Yidong <cyd@stupidchicken.com>
9431
9432 * xfaces.c (lookup_derived_face): Properly handle possible zero
9433 return value of get_lface_attributes.
9434 (merge_faces): Don't tell lookup_derived_face to signal an error
9435 if face is not found.
9436
9437 * dired.c (Fdirectory_files): Doc fix.
9438
9439 * process.c (make_process): Initialize kill_without_query struct
9440 member.
9441
94422008-08-15 Eli Zaretskii <eliz@gnu.org>
9443
9444 * w32.c (w32_system_process_attributes) [_MSC_VER < 1300]:
9445 Alternative calculation of totphys for Visual Studio 6.
9446
9447 * w32fns.c [_MSC_VER && _MSC_VER < 1300]: Declare HMONITOR.
9448
9449 * w32.c (_MEMORY_STATUS_EX, MEMORY_STATUS_EX, LPMEMORY_STATUS_EX):
9450 Rename from _MEMORYSTATUSEX, MEMORYSTATUSEX, LPMEMORYSTATUSEX.
9451 All users changed.
9452 (stat): Only root directory passed to GetDriveType. Allow RAM
9453 disk as well as local fixed disk when w32-get-true-file-attributes
9454 is set to `local'.
9455 (CopySid_Proc, EqualSid_Proc, GetLengthSid_Proc): New typedefs.
9456 (equal_sid, get_length_sid, copy_sid): New wrapper functions.
9457 (w32_cached_id, w32_add_to_cache): New functions.
9458 (get_name_and_id): Look account names in the cache before calling
9459 lookup_account_sid.
9460 (g_b_init_get_length_sid, g_b_init_equal_sid, g_b_init_copy_sid):
9461 New initialization flags.
9462 (globals_of_w32): Initialize them to zero.
9463 (w32_system_process_attributes): Use w32_cached_id and
9464 w32_add_to_cache.
9465
94662008-08-14 Lawrence Mitchell <wence@gmx.li>
9467
9468 * lread.c (Fread_char, Fread_char_exclusive): If no character
9469 event is read before timeout is reached, return nil, rather than
9470 converting to a number.
9471
94722008-08-14 Chong Yidong <cyd@stupidchicken.com>
9473
9474 * fns.c (use_dialog_box): Doc fix.
9475
9476 * s/darwin.h: Undefine HAVE_RES_INIT, which appears to be harmful
9477 on OS X.
9478
94792008-08-13 Chong Yidong <cyd@stupidchicken.com>
9480
9481 * frame.c (Qns_parse_geometry): New var.
9482 (Fx_parse_geometry): For HAVE_NS, call ns-parse-geometry.
9483
94842008-08-11 Chong Yidong <cyd@stupidchicken.com>
9485
9486 * xdisp.c (x_produce_glyphs): Handle the case when font has no
9487 space character in calculating tabs.
9488
94892008-08-11 Dan Nicolaescu <dann@ics.uci.edu>
9490
9491 * Makefile.in (bootstrap-emacs): Use ln -f in the CANNOT_DUMP case.
9492
94932008-08-10 Glenn Morris <rgm@gnu.org>
9494
9495 * process.c (procfs_system_process_attributes): Use EMACS_INTs to
9496 silence gcc "limited range of data type" warnings in some
9497 make_fixnum_or_float calls.
9498
94992008-08-09 Eli Zaretskii <eliz@gnu.org>
9500
9501 * w32.c (w32_system_process_attributes): If the process does not
9502 exist, return nil.
9503
9504 * w32.c: Include thelp32.h, psapi.h and coding.h.
9505 (_MEMORYSTATUSEX, _PROCESS_MEMORY_COUNTERS_EX): New struct
9506 declarations.
9507 (CreateToolhelp32Snapshot_Proc, Process32First_Proc)
9508 (Process32Next_Proc): New typedefs.
9509 (g_b_init_create_toolhelp32_snapshot, g_b_init_process32_first)
9510 (g_b_init_process32_next, g_b_init_open_thread_token)
9511 (g_b_init_impersonate_self, g_b_init_revert_to_self)
9512 (g_b_init_get_process_memory_info, g_b_init_global_memory_status)
9513 (g_b_init_get_process_working_set_size)
9514 (g_b_init_global_memory_status_ex): New static variables.
9515 (globals_of_w32): Initialize them.
9516 (create_toolhelp32_snapshot, process32_first, process32_next)
9517 (open_thread_token, impersonate_self, revert_to_self)
9518 (get_process_memory_info, get_process_working_set_size)
9519 (global_memory_status, global_memory_status_ex): New wrapper
9520 functions.
9521 (w32_list_system_processes, w32_system_process_attributes)
9522 (enable_privilege, restore_privilege, ltime, process_times):
9523 New functions.
9524 (convert_time_raw): New function.
9525 (convert_time): Remove conversion of FILETIME into time in 100
9526 nsec units, call convert_time_raw instead.
9527
9528 * process.h (w32_list_system_processes, w32_system_process_attributes):
9529 Add prototypes.
9530 (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess, Qttname)
9531 (Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime, Qcutime)
9532 (Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs, Quser, Qgroup)
9533 (Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime): Add extern declarations.
9534
9535 * process.c (Fsystem_process_attributes): Doc fix.
9536
95372008-08-08 Chong Yidong <cyd@stupidchicken.com>
9538
9539 * xdisp.c (move_it_to): When stopping at a charpos, check if that's
9540 a continued multi-char glyph; if so, advance to the actual glyph.
9541
95422008-08-07 Dan Nicolaescu <dann@ics.uci.edu>
9543
9544 * s/darwin.h (OTHER_FILES): Do not define here, defined in config.in.
9545
9546 * Makefile.in (ALL_OBJC_CFLAGS): New variable.
9547 (.m.o): Use it.
9548 * config.in: Regenerate.
9549
95502008-08-07 Chong Yidong <cyd@stupidchicken.com>
9551
9552 * xdisp.c (redisplay_window): Revert last change.
9553 (try_window): Check bottom scroll margin too.
9554
95552008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
9556
9557 * config.in: Regenerate.
9558
9559 * Makefile.in (emacs): Remove ifndef NS conditional for 'emacs
9560 -list-load-path-shadows'.
9561 (nsgui.h): Reduce number of things depending on it.
9562
95632008-08-06 Chong Yidong <cyd@stupidchicken.com>
9564
9565 * xdisp.c (try_scrolling): Use iterator to find the scroll margin,
9566 instead of window-end which does the wrong thing at eob.
9567 (try_cursor_movement): Minor optimization.
9568 (redisplay_window): If scroll margin is defined, don't assume
9569 window doesn't need scrolling.
9570
95712008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
9572
9573 * config.in: Regenerate.
9574
9575 * Makefile.in: Move nsXXX.m dependencies into big alphabetical list.
9576 (mostlyclean): Don't delete *.d under NS.
9577
9578 * nsterm.h (NS_HAVE_INTEGER): Change to NS_HAVE_NSINTEGER.
9579
95802008-08-06 Kenichi Handa <handa@m17n.org>
9581
9582 * xfont.c (xfont_list_family): Return a list of symbols, not strings.
9583
95842008-08-06 Andreas Schwab <schwab@suse.de>
9585
9586 * config.in: Regenerate.
9587
95882008-08-05 Chong Yidong <cyd@stupidchicken.com>
9589
9590 * xdisp.c (redisplay_window): Don't enforce scroll-margin when
9591 forcing a window start.
9592
9593 * fileio.c (Vauto_save_list_file_name): Move here from file.el.
9594 (auto_save_1): Update modtime when auto-save-list-file-name is on.
9595
95962008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
9597
9598 * emacs.c (main): Under NS, set working dir to HOME when get a "psn"
9599 argument.
9600
96012008-08-05 Juanma Barranquero <lekktu@gmail.com>
9602
9603 * buffer.c (syms_of_buffer) <scroll-up-aggressively>:
9604 <scroll-down-aggressively, before-change-functions>:
9605 <after-change-functions>: Reflow docstrings.
9606
96072008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
9608 Ken Raeburn <raeburn@gnu.org>
9609
9610 Dock menu customization, based on a patch by Ken Raeburn, plus some
9611 other fixes.
9612 * nsmenu.m (dockMenu): New variable.
9613 (EmacsDialog -clicked:): Fix mistake in change of 2008-07-17.
9614
9615 * nsterm.h (dockMenu): Declare.
9616
9617 * nsterm.m (KEY_NS_NEW_FRAME): New definition.
9618 (ns_term_init): Initialize dockMenu.
9619 (EmacsApp -newFrame:, -applicationDockMenu:): New methods.
9620 (EmacsView -windowShouldClose:): Don't behave specially if <= 1 frame
9621 left.
9622
9623 * lisp.h (LSB_TAG): Use on DARWIN_OS, not NS_IMPL_COCOA.
9624
96252008-08-04 Chong Yidong <cyd@stupidchicken.com>
9626
9627 * nsterm.h: Test directly for NS_HAVE_INTEGER before defining it.
9628
9629 * config.in: Regenerate.
9630
96312008-08-04 Seiji Zenitani <zenitani@mac.com>
9632
9633 * nsfns.m (x-create-frame): Set the frame parameter alpha to nil.
9634
96352008-08-04 Chong Yidong <cyd@stupidchicken.com>
9636
9637 * nsterm.h (find_and_call_menu_selection): Fix prototype.
9638
96392008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
9640
9641 * emacs.c (main: unexec_init_emacs_zone): Call if on DARWIN_OS.
9642
9643 * keyboard.h: Comment an #endif.
9644
9645 * lisp.h (have_menus_p): Adjust comment.
9646
9647 * menu.c (find_and_return_menu_selection): Fix comparison with
9648 client_data.
9649
9650 * nsmenu.m (popup_activated_flag): New variable.
9651 (popup_activated): New function.
9652 (menu-or-popup-active-p): New exported lisp definition.
9653 (ns_popup_menu): Set popup_activated_flag. Call discard_menu_items()
9654 when popup done.
9655 (ns_popup_dialog): Set popup_activated_flag.
9656
9657 * nsterm.m (EmacsView -conversationIdentifier): Use NSInteger
9658 version for GNUstep (handled by conditional typedef in nsterm.m).
9659 (ns_get_color): Remove special-casing for "darkblue", "dark blue" (now
9660 in rgb.txt).
9661
9662 * process.c (init_process): Use DARWIN_OS, not DARWIN.
9663
9664 * sysselect.h: Conditionalize init_process undef on DARWIN_OS.
9665
9666 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): Do it also under NS.
9667
9668 * xdisp.c (redisplay_internal, note_mouse_highlight): Under NS,
9669 shortcircuit if popup_activated like GTK and X toolkit.
9670
9671 * m/inter386.h: Change DARWIN to DARWIN_OS.
9672
9673 * s/darwin.h: Add #define DARWIN_OS. Get rid of C_SWITCH_SYSTEM def.
9674 Change LIBS_MACGUI to LIBS_NSGUI. Move temacs-conditionalized defs
9675 closer to C_SWITCH_SYSTEM_TEMACS so usage is understood. Expand
9676 comment on NO_SOCK_SIGIO.
9677
96782008-08-03 Chong Yidong <cyd@stupidchicken.com>
9679
9680 * nsterm.m (windowDidResize): Remove stopModal call.
9681
96822008-08-03 Andreas Schwab <schwab@suse.de>
9683
9684 * vm-limit.c (get_lim_data) [HAVE_GETRLIMIT && RLIMIT_AS]: Define.
9685 (check_memory_limits): Don't handle HAVE_GETRLIMIT here.
9686
96872008-08-02 Chong Yidong <cyd@stupidchicken.com>
9688
9689 * vm-limit.c (check_memory_limits): Don't use getrlimit on cygwin.
9690 Don't use uninitialized pointer variable when using getrlimit.
9691
96922008-08-02 Jason Rumney <jasonr@gnu.org>
9693
9694 * w32font.c (compute_metrics): Don't mess with glyph_idx setting here.
9695
96962008-08-02 Eli Zaretskii <eliz@gnu.org>
9697
9698 * alloc.c (NSTATICS): Bump to 0x640.
9699
9700 * s/gnu-linux.h (HAVE_PROCFS, LISTPROC, PROCATTR): New defines.
9701
9702 * lisp.h: Add prototype for directory_files_internal.
9703
9704 * process.c (Fsystem_processes_list, Fsystem_process_attributes):
9705 New functions.
9706 (syms_of_process): Defsubr them. Add initializations for various
9707 Q* symbols used in procfs_system_process_attributes.
9708 (procfs_list_system_processes, procfs_system_process_attributes)
9709 [HAVE_PROCFS]: New functions.
9710 (time_from_jiffies, ltime_from_jiffies, get_up_time, procfs_ttyname)
9711 (procfs_get_total_memory): New functions.
9712
97132008-08-01 Juanma Barranquero <lekktu@gmail.com>
9714
9715 * xfaces.c (Fx_load_color_file): Fix previous change;
9716 it is #ifdef WINDOWSNT, not WINDOWS_NT.
9717
97182008-08-01 Michael Albinus <michael.albinus@gmx.de>
9719
9720 * dbusbind.c (xd_read_message): Handle D-Bus error messages.
9721
97222008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
9723
9724 * nsterm.h (NSInteger, NSUInteger): Add defines for non-Leopard.
9725
97262008-08-01 Chong Yidong <cyd@stupidchicken.com>
9727
9728 * nsfns.m (ns_frame_parm_handlers): Add empty entry for x_set_alpha.
9729
9730 * nsterm.m (EmacsApp -application:openFiles:): GNUstep does not
9731 define NSApplicationDelegateReplySuccess.
9732 (EmacsView -converstationIdentifier): Use long instead of
9733 NSInteger for GNUstep, since it doesn't have NSInteger.
9734
9735 * xmenu.c: Revert last change.
9736
9737 * keyboard.h: Fix last change.
9738
97392008-08-01 Juanma Barranquero <lekktu@gmail.com>
9740
9741 * xfaces.c (x-load-color-file): Use RGB() instead of manually shifting
9742 on Windows.
9743
97442008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
9745
9746 Warning clearing and clean-up in NS port.
9747 * keyboard.h (xmalloc_widget_value, digest_single_submenu):
9748 Add prototypes.
9749 * nsgui.h (FACE_DEFAULT): Remove, unused.
9750 (XGCValues): Change colors to unsigned long.
9751 * nsterm.h (EmacsApp): Add declaration of all methods implemented in
9752 nsterm.m.
9753 (EmacsMenu -addItemWithWidgetValue:): Change to use NSMenuItem class.
9754 (ns_list_fonts): Remove, unused.
9755 (ns_font_to_xlfd, ns_fontname_to_xlfd): Drop prototypes.
9756 * nsfns.m (interpret_services_menu): Use NSMenuItem class.
9757 * nsfont.m (nsfont_open): Fix cast error in glyphs,metrics alloc.
9758 (nsfont_draw): Compare face colors to 0, not nil.
9759 * nsmenu.m (struct widget_value): Drop unneeded declaration.
9760 (EmacsMenu -addItemWithWidgetValue:, -fillWithWidgetValue:)
9761 (-addSubmenuWithTitle:): Use NSMenuItem class.
9762 (ns_popup_menu): Use NO, not NULL, for enabled setting.
9763 * nsterm.m (ns_draw_glyph_string): Don't compare font to ~0.
9764 (ns_clip_to_row): Make gc arg a BOOL.
9765 (ns_draw_fringe_bitmap, ns_draw_window_cursor): Use YES, NO in
9766 ns_clip_to_row() call.
9767 (ns_draw_glyph_string): Drop face comparison to ~0 (no longer
9768 used). Cast FRAME_FONT assignments.
9769 (ns_read_socket): Cast call to EmacsApp-fulfillService:withArg:.
9770 (ns_string_to_lispmod): Change arg to const char.
9771 (ns_term_init): Use NSMenuItem class.
9772 (EmacsApp -openFile:): Move to different section of file.
9773 (EmacsApp -application:openFiles:): Don't return a value, call
9774 -replyToOpenOrPrint:.
9775 (EmacsView -keyDown:): Fix up cast.
9776 (EmacsView -converstationIdentifier): Use NSInteger instead of long.
9777 (EmacsView -menuDown:): Cast tag in call to
9778 find_and_call_menu_selection().
9779 (ns_list_fonts): Remove, unused.
9780 (ns_font_to_xlfd): Make static. Cast result of UTF8String.
9781 (ns_fontname_to_xlfd): Make static.
9782 * w32menu.c (xmalloc_widget_value, digest_single_submenu):
9783 Remove prototypes (now in keyboard.h).
9784 (next_menubar_widget_id): Remove, unused.
9785 * xmenu.c (xmalloc_widget_value, digest_single_submenu):
9786 Remove prototypes (now in keyboard.h).
9787 * xfaces.c (ns_list_fonts, w32_list_fonts): Remove, unused.
9788
97892008-08-01 Dan Nicolaescu <dann@ics.uci.edu>
9790
9791 * Makefile.in (dispnew.o, gtkutil.o, sound.o, atimer.o)
9792 (floatfns.o): Depend on syssignal.h.
9793 (term.o): Depend on syssignal.h, systty.h, and $(INTERVAL_SRC).
9794
9795 * systty.h: Fix previous change that removed BSD_TERMIOS.
9796 Add comments to #ifdefs.
9797
97982008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
9799
9800 * w32fns.c (w32-load-color-file): Remove.
9801 (x-open-connection): Use renamed Fx_load_color_file.
9802 * xfaces.c (x-load-color-file): Add.
9803 * nsterm.m (ns_initialize): Load colors from etc/rgb.txt instead of
9804 Emacs.clr.
9805 (hide_hourglass): BLOCK_INPUT before UNBLOCK.
9806
98072008-07-31 Michael Albinus <michael.albinus@gmx.de>
9808
9809 * dbusbind.c (Fdbus_call_method_asynchronously)
9810 (Fdbus_method_error_internal): New defuns.
9811 (xd_read_message): Handle also reply messages.
9812 (Vdbus_registered_functions_table): Extend docstring.
9813
98142008-07-31 Juanma Barranquero <lekktu@gmail.com>
9815
9816 * keyboard.c (gobble_input): Fix previous change.
9817
98182008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
9819
9820 * bitmaps/README:
9821 * xfns.c:
9822 * termcap.c:
9823 * term.c:
9824 * syswait.h:
9825 * systty.h:
9826 * systime.h:
9827 * syssignal.h:
9828 * sysdep.c:
9829 * process.h:
9830 * process.c:
9831 * print.c:
9832 * ndir.h:
9833 * lread.c:
9834 * keyboard.c:
9835 * getpagesize.h:
9836 * floatfns.c:
9837 * fileio.c:
9838 * emacs.c:
9839 * doc.c:
9840 * dispnew.c:
9841 * dired.c:
9842 * data.c:
9843 * callproc.c:
9844 * buffer.c:
9845 * README:
9846 * Makefile.in:
9847 * s/template.h:
9848 * s/msdos.h:
9849 * m/vax.h: Remove VMS support.
9850 * s/vms.h:
9851 * vlimit.h:
9852 * uaf.h:
9853 * temacs.opt:
9854 * param.h:
9855 * ioctl.h: Remove file.
9856
98572008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
9858
9859 * s/ms-w32.h (MULTI_KBOARD): Remove.
9860 * xterm.c:
9861 * xselect.c:
9862 * xfns.c:
9863 * window.c:
9864 * w32term.c:
9865 * w32fns.c:
9866 * terminal.c:
9867 * termhooks.h:
9868 * term.c:
9869 * sysdep.c:
9870 * keyboard.h:
9871 * keyboard.c:
9872 * frame.h:
9873 * frame.c:
9874 * frame.c: Remove references to MULTI_KBOARD, it is now the default.
9875 * config.in: Regenerate.
9876
98772008-07-30 Jason Rumney <jasonr@gnu.org>
9878
9879 * w32font.h (struct w32font_info): Use unicode version of textmetrics.
9880
9881 * w32font.c (w32font_encode_char): Leave as unicode if in range.
9882 (w32font_open_internal): Get unicode version of textmetrics.
9883 Don't enable or disable glyph indices here.
9884 (w32font_open): Disable use of glyph indices.
9885
9886 * w32uniscribe.c (uniscribe_open): Enable use of glyph indices.
9887
98882008-07-30 Chong Yidong <cyd@stupidchicken.com>
9889
9890 * minibuf.c (Vread_buffer_function): Doc fix.
9891
98922008-07-30 John Paul Wallington <jpw@pobox.com>
9893
9894 * minibuf.c (read_buffer_completion_ignore_case): New var.
9895 (Fread_buffer): Use it.
9896
98972008-07-30 Dan Nicolaescu <dann@ics.uci.edu>
9898
9899 * systty.h (sensemode): Remove empty #if. Remove reference to
9900 BSD_TERMIOS, unused.
9901
9902 * sysdep.c: Remove reference to DGUX.
9903 (closedir): Remove reference to BROKEN_CLOSEDIR, unused.
9904
9905 * config.in: Regenerate.
9906
99072008-07-30 Jason Rumney <jasonr@gnu.org>
9908
9909 * w32uniscribe.c (uniscribe_encode_char): Fix glyph buffer size.
9910
99112008-07-29 Jason Rumney <jasonr@gnu.org>
9912
9913 * w32uniscribe.c (uniscribe_shape): Avoid using context if cache
9914 is populated.
9915 (uniscribe_encode_char): Always use uniscribe.
9916 Avoid using context if cache is populated.
9917
99182008-07-29 Jan Djärv <jan.h.d@swipnet.se>
9919
9920 * xmenu.c (Fx_menu_bar_open_internal): Use activate_item signal to
9921 open menu.
9922
9923 * gtkutil.c (menu_nav_ended): Remove.
9924 (create_menus): Remove signal connect for menu_nav_ended.
9925
99262008-07-28 Chong Yidong <cyd@stupidchicken.com>
9927
9928 * xdisp.c (redisplay_window): Check return value of
9929 compute_window_start_on_continuation_line before forcing a window
9930 start.
9931
99322008-07-28 Jason Rumney <jasonr@gnu.org>
9933
9934 * w32font.c (w32font_text_extents): Use w32_metric_cache consistently.
9935
9936 * w32term.c (w32_enable_unicode_output, cleartype_active):
9937 Remove obsolete display options.
9938 (x_draw_glyph_string_background): Don't use old cleartype_active
9939 workaround.
9940 (w32_initialize): Remove cleartype_active initialization.
9941 (syms_of_w32term): Remove w32_enable_unicode_output initialization.
9942
99432008-07-28 Andreas Schwab <schwab@suse.de>
9944
9945 * lisp.h (init_weak_hash_tables, syms_of_font)
9946 (xd_read_queued_messages, syms_of_dbusbind): Declare.
9947 (remove_hash_entry): Don't declare.
9948 * eval.c (maybe_call_debugger): Make static and move before use.
9949 * gtkutil.c: Include <X11/Xft/Xft.h> if HAVE_XFT.
9950 * xdisp.c: Include "gtkutil.h" if USE_GTK.
9951 * xterm.h (x_set_frame_alpha): Declare.
9952
99532008-07-28 Jan Djärv <jan.h.d@swipnet.se>
9954
9955 * gtkutil.c (menu_nav_ended): Revert change from 2008-07-24.
9956 (create_menus): Connect selection-done to menu_nav_ended.
9957
99582008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
9959
9960 * nsfns.m (x-create-frame): Add copy of parms argument to beginning.
9961 Set Vx_resource_name to a fallback. Replace read of 'buffered'
9962 parameter with read of 'alpha' one.
9963 (Qns_frame_parameter): Remove.
9964 * nsselect.m (selection-coding-system)
9965 (next-selection-coding-system, Vselection_coding_system)
9966 (Vnext_selection_coding_system): Drop.
9967
99682008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
9969
9970 * nsfns.m (do-applescript, do_applescript): Rename to
9971 ns-do-applescript, ns_do_applescript, and move within file.
9972
99732008-07-27 Dan Nicolaescu <dann@ics.uci.edu>
9974
9975 Remove support for Mac Carbon.
9976 * mactoolbox.c:
9977 * macterm.h:
9978 * macterm.c:
9979 * macselect.c:
9980 * macmenu.c:
9981 * macgui.h:
9982 * macfns.c:
9983 * mac.c: Remove file.
9984 * s/darwin.h:
9985 * m/intel386.h:
9986 * xfaces.c:
9987 * xdisp.c:
9988 * window.c:
9989 * tparam.c:
9990 * termhooks.h:
9991 * termcap.c:
9992 * term.c:
9993 * syssignal.h:
9994 * sysselect.h:
9995 * sysdep.c:
9996 * process.c:
9997 * lread.c:
9998 * lisp.h:
9999 * keyboard.c:
10000 * image.c:
10001 * fringe.c:
10002 * frame.h:
10003 * frame.c:
10004 * fontset.c:
10005 * font.h:
10006 * font.c:
10007 * fns.c:
10008 * fileio.c:
10009 * emacs.c:
10010 * dispnew.c:
10011 * dispextern.h:
10012 * config.in:
10013 * atimer.c:
10014 * Makefile.in: Remove code for Carbon.
10015
100162008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10017
10018 * macterm.c (XDrawLine) [USE_MAC_IMAGE_IO]: Remove spurious return.
10019
100202008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10021
10022 * macterm.h (kCGBitmapByteOrder32Host): New define for
10023 non-universal SDKs.
10024
10025 * image.c (mac_create_cg_image_from_image, image_load_image_io)
10026 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
10027
10028 * macterm.c (XDrawLine, XCreatePixmapFromBitmapData)
10029 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
10030
100312008-07-26 David Robinow <drobinow@gmail.com> (tiny change)
10032
10033 * w32inevt.c: Include dispextern.h.
10034
100352008-07-26 Andreas Schwab <schwab@suse.de>
10036
10037 * print.c (print_object): Fix off-by-one in last change.
10038
100392008-07-25 Juanma Barranquero <lekktu@gmail.com>
10040
10041 * term.c (syms_of_term): Don't initialize default_orig_pair,
10042 default_set_foreground and default_set_background on Windows.
10043
100442008-07-25 Jason Rumney <jasonr@gnu.org>
10045
10046 * w32uniscribe.c (uniscribe_shape): Pass NULL for control arg to
10047 ScriptItemize. Clean up return value checking. Remove unused
10048 variables.
10049 (uniscribe_encode_char): Encode non-BMP characters with uniscribe
10050 shaping engine.
10051
10052 * w32font.c (w32font_has_char): Handle the case where we can't
10053 determine the script for a character.
10054
100552008-07-25 Chong Yidong <cyd@stupidchicken.com>
10056
10057 * term.c (syms_of_term): Initialize default_orig_pair,
10058 default_set_foreground, and default_set_background.
10059
10060 * getloadavg.c (nl): Rename to name_list to avoid ncurses.h
10061 clash (bug#86).
10062 (getloadavg): Callers changed.
10063
10064 * image.c (svg_load_image): Fix last change.
10065 (svg_load_image): Use rsvg_handle_get_dimensions to check that
10066 image size is valid. Use g_object_unref instead of deprecated
10067 rsvg_handle_free to free rsvg handle.
10068 (x_from_xcolors): Don't initialize pixmap (silence compiler).
10069
100702008-07-25 Jason Rumney <jasonr@gnu.org>
10071
10072 * w32font.c (w32font_encode_char): Encode characters outside BMP as
10073 surrogates before looking up glyph index.
10074 (w32font_text_extents): Encode as surrogates if falling back to
10075 functions that need UTF-16 wide chars.
10076
10077 * w32uniscribe.c (uniscribe_encode_char): Encode characters outside
10078 BMP as surrogates before looking up glyph index.
10079
100802008-07-25 Chong Yidong <cyd@stupidchicken.com>
10081
10082 * image.c (svg_load_image): Check for failure in return value of
10083 rsvg_handle_get_pixbuf. Free rsvg handle when done.
10084
100852008-07-25 Jason Rumney <jasonr@gnu.org>
10086
10087 * w32font.c (Fx_select_font): Reverse sense of second arg.
10088
100892008-07-24 Stefan Monnier <monnier@iro.umontreal.ca>
10090
10091 * syntax.c (struct lisp_parse_state, char_quoted, inc_bytepos)
10092 (dec_bytepos, find_defun_start): Use EMACS_INT for buffer positions.
10093
10094 * puresize.h (PURESIZE_CHECKING_RATIO): New macro.
10095 (PURESIZE): Use it.
10096
100972008-07-24 Dan Nicolaescu <dann@ics.uci.edu>
10098
10099 * m/amdx86-64.h (HAVE_LIB64_DIR): Consolidate ifdefs.
10100 * m/alpha.h (TEXT_END):
10101 * m/ibmrs6000.h (TEXT_END):
10102 * m/macppc.h (TEXT_END):
10103 * s/darwin.h (TEXT_END):
10104 * s/msdos.h (TEXT_END): Remove, unused.
10105 * s/gnu-linux.h (BSD_PGRPS): Add a comment.
10106 * s/cygwin.h: Remove comment.
10107
10108 * ecrt0.c (NODOT_GLOBAL_START): Remove code, unused.
10109 (DOT_GLOBAL_START): Remove conditional, redundant for CRT0_DUMMIES.
10110 * m/intel386.h (DOT_GLOBAL_START):
10111 * m/vax.h (DOT_GLOBAL_START): Remove, redundant with CRT0_DUMMIES.
10112 (USG): Remove, file not used on USG platforms.
10113
10114 * Makefile.in (HAVE_X11): Remove empty #else.
10115
101162008-07-24 Andreas Schwab <schwab@suse.de>
10117
10118 * fileio.c (Finsert_file_contents): Properly adjust undo list
10119 after format conversion.
10120
101212008-07-24 Jan Djärv <jan.h.d@swipnet.se>
10122
10123 * gtkutil.c (xg_get_font_name): Cast w to GTK_FONT_SELECTION_DIALOG.
10124 (menu_nav_ended): Remove.
10125 (create_menus): Remove signal connect for menu_nav_ended.
10126 (xg_update_menubar): Also take deactivate_cb as parameter, pass it to
10127 create_menus.
10128 (xg_modify_menubar_widgets): Pass deactivate_cb to xg_update_menubar.
10129
101302008-07-23 Jason Rumney <jasonr@gnu.org>
10131
10132 * w32font.c (w32_enumfont_pattern_entity): Return height consistent
10133 with opened font.
10134 (w32font_open): Set font type to gdi.
10135
10136 * w32uniscribe.c (uniscribe_open): Set font type to uniscribe.
10137
101382008-07-23 Dan Nicolaescu <dann@ics.uci.edu>
10139
10140 * s/usg5-4.h (ADDR_CORRECT): Remove, unused.
10141 * unexaix.c (ADDR_CORRECT): Remove conditional, the only user
10142 defines it.
10143 * unexec.c (ADDR_CORRECT): Define unconditionally.
10144
10145 * m/ibmrs6000.h (C_SWITCH_MACHINE): Remove.
10146
10147 * unexec.c: Remove code depending on !COFF and USG, the file is
10148 not used for such systems.
10149
10150 * s/netbsd.h (A_TEXT_OFFSET, A_TEXT_SEEK):
10151 * s/freebsd.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, unused.
10152 (LD_SWITCH_SYSTEM_1): Remove, update users.
10153
10154 * s/darwin.h (DATA_END):
10155 * m/intel386.h (DATA_END):
10156 * m/ibmrs6000.h (DATA_END):
10157 * m/alpha.h (DATA_END): Remove, unused.
10158
10159 * config.in: Regenerate.
10160 * s/ms-w32.h (subprocesses): Define unconditionally.
10161 * s/template.h (subprocesses): Update comment.
10162 * s/vms.h (subprocesses):
10163 * s/usg5-4.h (subprocesses):
10164 * s/hpux10-20.h (subprocesses):
10165 * s/gnu-linux.h (subprocesses):
10166 * s/cygwin.h (subprocesses):
10167 * s/bsd-common.h (subprocesses):
10168 * s/aix4-2.h (subprocesses):
10169 * s/darwin.h (subprocesses): Do not define, defined by default now.
10170
10171 * Makefile.in (C_SWITCH_SITE, LD_SWITCH_SITE): Remove, unused.
10172 Remove all references.
10173 (temacs): Add GNUstep specific ld flags.
10174
10175 * nsterm.m (syms_of_nsterm): Provide ns, not ns-windowing,
10176 similarly to what X does.
10177
101782008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
10179
10180 * nsfns.m (x-list-fonts): Remove.
10181 (syms_of_nsfns): Drop the x-list-fonts declaration.
10182 * nsterm.m: Get rid of remaining "//" comments.
10183
101842008-07-22 Chong Yidong <cyd@stupidchicken.com>
10185
10186 * xselect.c (Fx_rotate_cut_buffers_internal): Doc fix.
10187
10188 * nsselect.m (Fns_selection_exists_p, Fns_selection_owner_p)
10189 (Fx_get_selection_internal, Fns_rotate_cut_buffers_internal)
10190 (Fns_own_selection_internal, Fx_disown_selection_internal)
10191 (Fns_get_cut_buffer_internal, Fns_store_cut_buffer_internal):
10192
10193 * nsmenu.m (Fns_reset_menu, Fx_popup_menu): Change to use 'doc: /*
10194 ... */' style of docstrings. Doc fixes.
10195
101962008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
10197
10198 * terminfo.c (UP, BC, PC): Undo previous change.
10199
10200 * nsfns.m: Rename ns prefixed functions/variables to the
10201 corresponding x versions. Update references.
10202
102032008-07-22 Stefan Monnier <monnier@iro.umontreal.ca>
10204
10205 * syntax.c (char_quoted): Check "charpos > beg" before decrementing.
10206
102072008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
10208
10209 * nsfns.m (x_set_menu_bar_lines, x_set_tool_bar_lines):
10210 Remove forwarding functions.
10211 (ns_set_menu_bar_lines): Rename to x_set_menu_bar_lines, make
10212 non-static.
10213 (ns_set_tool_bar_lines): Rename to x_set_tool_bar_lines, make
10214 non-static.
10215 (ns_frame_parm_handlers): Use the new names.
10216 (syms_of_nsfns): Move to the end of file.
10217
10218 * nsterm.m (syms_of_nsterm): Move to the end of file.
10219
10220 * dispnew.c (init_display): Remove code for X10.
10221
102222008-07-22 Jason Rumney <jasonr@gnu.org>
10223
10224 * w32proc.c (Fw32_long_file_name): Don't append dir separator to
10225 bare drive.
10226
102272008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
10228
10229 * nsterm.m (syms_of_nsterm): Remove debugging println.
10230
102312008-07-22 David Reitter <david.reitter@gmail.com>
10232
10233 * nsfns.m (do_applescript, F_do_applescript): NS version of the
10234 Carbon implementation of the same functionality: execute arbitrary
10235 AppleScript code.
10236
102372008-07-21 Adrian Robert <Adrian.B.Robert@gmail.com>
10238
10239 * nsfns.m (Fx_create_frame, Fx_read_file_name, Fx_get_resource)
10240 (Fx_set_resource, Fx_set_alpha, Fx_server_max_request_size)
10241 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
10242 (Fx_display_mm_height, Fx_display_mm_width)
10243 (Fx_display_backing_store, Fx_display_visual_class)
10244 (Fx_display_save_under, Fx_open_connection)
10245 (Fx_close_connection, Fx_hide_emacs, Fx_font_name)
10246 (Fx_list_colors, Fx_perform_service, Fx_color_defined_p)
10247 (Fx_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
10248 (Fx_display_pixel_width, Fx_display_pixel_height)
10249 (Fx_display_usable_bounds, Fx_display_planes)
10250 (Fx_display_color_cells, Vns_icon_type_alist): Change to use 'doc: /*
10251 ... */' style of docstrings.
10252
102532008-07-21 Dan Nicolaescu <dann@ics.uci.edu>
10254
10255 * m/mips.h (LOAD_AVE_TYPE, LOAD_AVE_CVT): Do not define, not used
10256 on this platform.
10257 (mips):
10258 * m/iris4d.h (mips): Do not define.
10259 * sysdep.c (init_sys_modes): Use __mips__ instead of mips.
10260
10261 * m/ibmrs6000.h (LD_SWITCH_SITE): Remove.
10262
10263 * image.c:
10264 * nsfns.m:
10265 * nsselect.m:
10266 * nsterm.h:
10267 * nsterm.m: Rename ns prefixed functions/variables to the
10268 corresponding x versions. Update references.
10269
10270 * m/ibms390x.h (NO_REMAP): Do not undefine.
10271
10272 * m/amdx86-64.h: Use SOLARIS2 instead of sun.
10273
102742008-07-21 Chong Yidong <cyd@stupidchicken.com>
10275
10276 * nsfns.m: Change NS to Nextstep in docstrings and error messages.
10277 (Fns_create_frame, Fns_read_file_name, Fns_get_resource)
10278 (Fns_set_resource, Fns_set_alpha, Fns_server_max_request_size)
10279 (Fns_server_vendor, Fns_server_version, Fns_display_screens)
10280 (Fns_display_mm_height, Fns_display_mm_width)
10281 (Fns_display_backing_store, Fns_display_visual_class)
10282 (Fns_display_save_under, Fns_open_connection)
10283 (Fns_close_connection, Fns_hide_emacs, Fns_font_name)
10284 (Fns_list_colors, Fns_perform_service, Fns_color_defined_p)
10285 (Fns_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
10286 (Fns_display_pixel_width, Fns_display_pixel_height)
10287 (Fns_display_usable_bounds, Fx_display_planes)
10288 (Fns_display_color_cells, Vns_icon_type_alist): Doc fixes.
10289
102902008-07-21 Ami Fischman <ami@fischman.org> (tiny change)
10291
10292 * print.c (print_object): Check print_depth before searching for
10293 circularities.
10294
102952008-07-21 Michael Albinus <michael.albinus@gmx.de>
10296
10297 * dbusbind.c (Fdbus_register_signal): Use sprintf + strcat instead
10298 only sprintf.
10299
103002008-07-21 Kenichi Handa <handa@m17n.org>
10301
10302 * ftfont.c (adjust_anchor): Check if DeltaValue is not NULL.
10303
103042008-07-20 Andreas Schwab <schwab@suse.de>
10305
10306 * syntax.c (find_start_pos, find_start_value)
10307 (find_start_value_byte, find_start_begv, find_defun_start)
10308 (back_comment, scan_sexps_forward): Use EMACS_INT for buffer positions.
10309
103102008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
10311
10312 * s/sol2-3.h: Insert contents of s/sol2.h.
10313 (LD_SWITCH_SYSTEM): Remove redundant definition.
10314 * s/sol2.h: Remove, unused.
10315
103162008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
10317
10318 * nsterm.m (ns_get_color): Recognize HSB,AHSB be synonyms for HSV,AHSV.
10319
103202008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
10321
10322 * Makefile.in (ns_appdir): Fix typo in find command.
10323
103242008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
10325
10326 * m/intel386.h (NO_REMAP): Do no define for USG, not used.
10327
10328 * s/usg5-4.h (LIBS_SYSTEM): Remove, system for which this was
10329 added not supported anymore.
10330
10331 * s/usg5-4-2.h (LIBS_SYSTEM):
10332 * s/sol2.h (LIBS_SYSTEM): Do not undefine.
10333
10334 * s/netbsd.h (GETPGRP_NO_ARG, N_TRELOFF):
10335 * s/lynxos.h (GETPGRP_NO_ARG):
10336 * s/hpux10-20.h (NO_SIOCTL_H):
10337 * s/gnu.h (GETPGRP_NO_ARG):
10338 * s/gnu-linux.h (NO_SIOCTL_H):
10339 * s/freebsd.h (GETPGRP_NO_ARG, N_TRELOFF):
10340 * s/cygwin.h (GETPGRP_NO_ARG):
10341 * s/irix6-5.h (LIBS_SYSTEM, GETPGRP_NO_ARG): Remove, unused.
10342 (C_DEBUG_SWITCH): Remove duplicate definition.
10343
10344 * m/ibms390.h: Remove boilerplate comments.
10345
10346 * sysdep.c (closedir): Use SOLARIS2 instead of sun && USG5_4.
10347
10348 * process.c (HAVE_SERIAL): Consolidate ifdefs.
10349 (wait_reading_process_output): Remove code for SunOS, platform not
10350 supported anymore. Use SOLARIS2 instead of sun.
10351
103522008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
10353
10354 * font.c (font_open_by_name): Under NS, default lface height to zero.
10355 (font_open_for_lface): Under NS, set size based on frame fontsize.
10356 * nsterm.m (EmacsView-changeFont:): Remove some commented code.
10357 * frame.c (x_set_frame_parameters): Remove HAVE_NS ifdef.
10358
103592008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
10360
10361 * nsterm.m (ns_antialias_text, ns_use_qd_smoothing)
10362 (ns_use_system_highlight_color): Switch these from DEFVAR_BOOL to
10363 DEFVAR_LISP and change all code accordingly to use Qt/Qnil instead of
10364 YES/NO.
10365 * nsterm.h (prevUseHighlightColor): Make a Lisp_Object.
10366 * nsfont.m (nsfont_draw): Treat ns_use_qd_smoothing as Lisp_Object.
10367 * Makefile.in (clean): Clear out build destination dir.
10368
103692008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
10370
10371 * Makefile.in (nsgui.h-related dependencies): Remove abbrev, xfns,
10372 xterm, xselect.
10373 * lisp.h: Remove declaration of hash_remove.
10374 * nsgui.h: Remove redefinitions of hash_remove.
10375 * fns.c (hash_remove): Rename to hash_remove_from_table.
10376
103772008-07-19 Seiji Zenitani <zenitani@mac.com>
10378
10379 * nsfont.m (nsfont_fmember_to_entity, nsfont_make_fontset_for_font):
10380 strdup() the family UTF8String before modifying it.
10381
103822008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
10383
10384 * nsterm.m (ns_maybe_dumpglyphs_background): Compare result from
10385 NS_FACE_BACKGROUND with 0 instead of nil.
10386 * nsfont.m (nsfont_draw): Same.
10387
103882008-07-19 Chong Yidong <cyd@stupidchicken.com>
10389
10390 * nsfns.m (ns_set_background_color): Fix crash.
10391
103922008-07-18 Chong Yidong <cyd@stupidchicken.com>
10393
10394 * Makefile.in (SOME_MACHINE_LISP): Remove ns-carbon-compat.elc.
10395
103962008-07-18 Dan Nicolaescu <dann@ics.uci.edu>
10397
10398 * puresize.h (BASE_PURESIZE): Increase to 1240000.
10399
104002008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10401
10402 * gtkutil.c: Include <config.h> instead of "config.h".
10403
10404 * lisp.h (Foverlay_buffer): Add EXFUN.
10405
10406 * process.c (create_process) [!WINDOWSNT && FD_CLOEXEC]: Wait for
10407 child process to complete child_setup. Undo 2005-09-21 change.
10408
10409 * s/darwin.h: Mention setsid after vfork.
10410
104112008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10412
10413 * Makefile.in (frame.o, keyboard.o, xdisp.o, xfaces.o):
10414 Depend on macgui.h.
10415
10416 * macfns.c (Fx_server_version): Don't use gestaltSystemVersionMajor,
10417 gestaltSystemVersionMinor, or gestaltSystemVersionBugFix.
10418
10419 * macterm.c (keycode_to_xkeysym_table): Add entries for f17, f18,
10420 and f19.
10421 [MAC_OSX] (fn_keycode_to_keycode_table): Likewise.
10422
10423 * macterm.h (gestaltSystemVersionMajor, gestaltSystemVersionMinor)
10424 (gestaltSystemVersionBugFix) [MAC_OS_X_VERSION_MAX_ALLOWED < 1040]:
10425 Remove enumerators.
10426
10427 * mactoolbox.c [USE_MAC_TSM] (mac_handle_text_input_event):
10428 Check if FACE_FROM_ID returns NULL.
10429
104302008-07-17 David Robinow <drobinow@gmail.com> (tiny change)
10431
10432 * w32inevt.c (change_frame_size): Remove extern declaration.
10433 (resize_event, maybe_generate_resize_event): Pass SAFE arg to
10434 change_frame_size.
10435
104362008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
10437
10438 * getloadavg.c: Revert last change (2008-07-15).
10439
104402008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
10441
10442 * Makefile.in: Replace emacsapp, emacsbindir, emacsappsrc variables
10443 set here with ns_appdir, ns_appresdir, ns_appbindir, ns_appsrc set
10444 from configure.
10445
104462008-07-17 Dan Nicolaescu <dann@ics.uci.edu>
10447
10448 * s/sol2.h:
10449 * s/sol2-4.h: Reorganize conditionals.
10450
10451 * ecrt0.c: Remove code depending on m68000, not used anymore.
10452
10453 * fns.c (hash_remove): Make static.
10454 * lisp.h (hash_remove): Don't prototype.
10455
10456 * m/ibmrs6000.h:
10457 * m/ibms390x.h:
10458 * m/macppc.h: Remove boilerplate comments.
10459
10460 * m/sparc.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, only used on
10461 Solaris, which does not need them.
10462
10463 * m/vax.h: Remove comments about unsupported systems.
10464
10465 * s/darwin.h: Reorganize ifdefs.
10466
104672008-07-17 Andreas Schwab <schwab@suse.de>
10468
10469 * s/cygwin.h (LIB_STANDARD_LIBSRC): Don't define.
10470
104712008-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
10472
10473 Use SDATA. Follow coding convention of placing operators at
10474 beginning of next line rather than end of previous line, and placing
10475 spaces around infix operators.
10476
10477 * Makefile.in: Undef LIB_STANDARD before defining it to silence warning
10478 in case it was defined already.
10479 USE @GNUSTEP_MAKEFILES@ rather than envvars.
10480 * nsterm.m (ns_term_init): Pass Qt and Qnil rather than YES/NO to
10481 ns_default.
10482 (applicationShouldTerminate, setValuesFromPanel): Use EQ to compare
10483 Lisp_Objects.
10484 * nsterm.h (Fx_display_grayscale_p, Fx_display_planes)
10485 (ns_defined_color, ns_color_to_lisp): Declare.
10486 * nsselect.m (ns_handle_selection_request, ns_handle_selection_clear)
10487 (Fns_own_selection_internal): Make the big ugly hack more explicit, so
10488 it's accepted even with USE_LISP_UNION_TYPE.
10489 * nsmenu.m (ns_update_menubar): Use EQ to compare Lisp_Objects.
10490 (update_frame_tool_bar): Remove apparently obsolete tests for
10491 non-integerness of f->tool_bar_lines.
10492 (windowShouldClose, addButton, clicked, runDialogAt): Make the big ugly
10493 hack more explicit, so it's accepted even with USE_LISP_UNION_TYPE.
10494 * nsfont.m (nsfont_driver): Use just 0 rather than an invalid cast.
10495 (nsfont_open): Don't confuse NULL for Qnil.
10496 * nsfns.m (ns_implicitly_set_icon_type): Use EQ to compare Lisp_Objects.
10497 * menu.h (find_and_call_menu_selection):
10498 * menu.c (find_and_call_menu_selection): Use just int for vector size.
10499 (find_and_return_menu_selection): Always return something.
10500 * frame.h: Include dispextern.h for Display_Info.
10501 (display_x_get_resource): Declare.
10502
105032008-07-16 Adrian Robert <Adrian.B.Robert@gmail.com>
10504
10505 * syntax.c: Remove stdio.h include accidentally introduced in
10506 Emacs.app commit.
10507 * Makefile.in: Change GNUSTEP to NS_IMPL_GNUSTEP, COCOA to
10508 NS_IMPL_COCOA.
10509 * keyboard.c (handle_async_input, input_available_signal): Remove
10510 BSD4_1 conditional code, introduced accidentally in Emacs.app commit.
10511
105122008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
10513
10514 * nsterm.m (lisp_to_mod): Use parse_solitary_modifier instead.
10515 (ns_lisp_to_color): Don't mess with internal Lisp data fields.
10516 (ns_term_init, ns_term_shutdown, initFrameFromEmacs, ns_list_fonts):
10517 Use SDATA.
10518
10519 * keymap.c: Remove all NS-specific code.
10520 (where_is_preferred_modifier, Vwhere_is_preferred_modifier): New vars.
10521 (preferred_sequence_p): Rename from ascii_sequence_p; pay attention to
10522 where_is_preferred_modifier, return a different value depending on how
10523 preferred is the binding.
10524 (where_is_internal): Adjust accordingly.
10525 (Fwhere_is_internal): Refresh where_is_preferred_modifier.
10526 Adjust to new preferred_sequence_p.
10527 (syms_of_keymap): Declare `where-is-preferred-modifier'.
10528 * keyboard.c (parse_solitary_modifier): Not static any more.
10529 * keyboard.h (parse_solitary_modifier): Declare.
10530
105312008-07-16 Andreas Schwab <schwab@suse.de>
10532
10533 * Makefile.in (SOME_MACHINE_LISP): Remove easy-mmode, fix spelling
10534 of easymenu.
10535
105362008-07-16 Chong Yidong <cyd@stupidchicken.com>
10537
10538 * xdisp.c (move_it_in_display_line): Account for word wrap, so
10539 that we don't move off the line.
10540
105412008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
10542
10543 * keyboard.c (Qsuper): Remove.
10544 (parse_menu_item): Don't call where_is_internal specially for NS.
10545
105462008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
10547
10548 * s/gnu-linux.h: Remove boilerplate comments.
10549
10550 * m/alpha.h (__ELF__): Consolidate conditions.
10551
10552 * m/m68k.h (linux): Use GNU_LINUX instead.
10553 Remove boilerplate comments.
10554
10555 * m/intel386.h: Undo refactoring from previous change.
10556 (LIB_STANDARD): All systems that define USG define LIB_STANDARD
10557 too, remove dead code.
10558 (linux): Use GNU_LINUX instead.
10559
105602008-07-16 Jason Rumney <jasonr@gnu.org>
10561
10562 * w32gui.h: Repeat 26 June changes lost by last change.
10563
105642008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
10565
10566 * systty.h: Remove code for Aix on 386, unsupported platform.
10567
10568 * s/ms-w32.h: Remove boilerplate comments.
10569 (fcloseall, fgetchar, flushall, fputchar, getw, putw): Remove, unused.
10570
10571 * s/gnu-linux.h (TERM): Remove support.
10572 (HAVE_SYSVIPC): Remove, unused.
10573 (A_TEXT_OFFSET, A_TEXT_SEEK, ADJUST_EXEC_HEADER): Remove, not used
10574 for this system.
10575
10576 * process.c: Remove support for IRIS, unused.
10577 Remove support for TERM, not relevant anymore.
10578
10579 * unexalpha.c (DEFAULT_ENTRY_ADDRESS): Remove, replace the only
10580 used with the definition.
10581
10582 * s/aix4-2.h (static): Do not undef.
10583
10584 * m/ibmrs6000.h: Remove code depending on USG5_4, this file is
10585 only used on Aix.
10586 (HAVE_SYSVIPC): Remove, unused.
10587
10588 * m/hp800.h (CANNOT_DUMP): Do not undef.
10589
10590 * m/alpha.h: Fix comment.
10591
10592 * s/usg5-4.h (HAVE_SYSVIPC): Remove, unused.
10593 (USG_SHARED_LIBRARIES): Remove, only used in unexec.c which is not
10594 used by this configuration.
10595 * emacs.c: Remove code depending on USG_SHARED_LIBRARIES.
10596 * unexec.c: Remove code depending on HPUX and
10597 USG_SHARED_LIBRARIES, not used with this file. Remove code
10598 depending on IRIS, unused. Remove if 0-ed code.
10599
10600 * s/template.h: Remove comments about static.
10601
10602 * sysdep.c: Remove code depending on NEED_PTEM_H, unused.
10603 Remove if 0-ed code.
10604 (baud_convert): Don't depend on BAUD_CONVERT, all definitions the
10605 were the same as the default.
10606 * s/vms.h (BAUD_CONVERT): Remove, same as the default.
10607 Remove boilerplate comments.
10608 * s/hpux10-20.h (BAUD_CONVERT): Remove, same as the default.
10609 (HAVE_SYSVIPC): Remove, unused.
10610 (LD_SWITCH_SYSTEM_TEMACS): Simplify, hp9000s700 not supported anymore.
10611
10612 * m/ia64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
10613 Remove boilerplate comments.
10614 * m/amdx86-64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
10615 Remove boilerplate comments.
10616 * m/ibms390x.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
10617 Remove boilerplate comments.
10618 * lisp.h (PNTR_COMPARISON_TYPE): Define it unconditionally.
10619
10620 * m/intel386.h (DATA_SEG_BITS): Remove definitions, only used on
10621 USG systems which do not use DATA_SEG_BITS.
10622 Refactor code. Remove boilerplate comments.
10623
10624 * m/ibms390.h:
10625 * m/m68k.h:
10626 * s/bsd-common.h:
10627 * s/cygwin.h:
10628 * s/darwin.h:
10629 * s/freebsd.h:
10630 * s/gnu.h:
10631 * s/msdos.h: Remove boilerplate comments.
10632
10633 * m/iris4d.h: Remove boilerplate comments and code for systems that
10634 do not use this file.
10635 (IRIS_4D): Remove, unused.
10636
10637 * m/mips.h: Remove boilerplate comments and code for systems that
10638 do not use this file.
10639 (SIGN_EXTEND_CHAR):
10640 * m/arm.h (SIGN_EXTEND_CHAR): Remove, unused.
10641 * unexmips.c: Remove file, unused.
10642
10643 * editfns.c (Fuser_full_name): Replace the only use of
10644 USER_FULL_NAME with its value.
10645 * config.in: Regenerate.
10646
106472008-07-16 David Reitter <david.reitter@gmail.com>
10648
10649 * Makefile.in: Add ns-win, ns-carbon-compat, easy-mmode and
10650 easy-menu to SOME_MACHINE_LISP for the new NeXTstep port.
10651
106522008-07-16 Glenn Morris <rgm@gnu.org>
10653
10654 * emacs.c (system-type): Doc fix.
10655
106562008-07-15 Stefan Monnier <monnier@iro.umontreal.ca>
10657
10658 * keyboard.c (parse_menu_item): Don't use cachelist, even under NS.
10659 If the cache doesn't work, let's fix it, rather than work around it.
10660
106612008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
10662
10663 * Makefile.in: Correct additions for nsfont.o in last commit.
10664 * nsfont.m: New file (forgot last commit).
10665
106662008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
10667
10668 * callproc.c (set_initial_environment): Initialize
10669 Vprocess_environment under CANNOT_DUMP (fixes crash when
10670 batch-compiling for bootstrap).
10671
106722008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
10673 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10674
10675 (make_initial_frame): Call init_frame_faces(f) in CANNOT_DUMP case --
10676 fix crash due to different init order.
10677
106782008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
10679
10680 Changes and additions for NeXTstep windowing system (Cocoa and
10681 GNUstep) support.
10682
10683 * Makefile.in:
10684 * config.in: Support defines and build commands for NS port.
10685 * blockinput.h (BLOCK_INPUT, UNBLOCK_INPUT, TOTALLY_UNBLOCK_INPUT)
10686 (UNBLOCK_INPUT_TO): Don't use under NS unless EXPERIMENTAL_CONTROL_G.
10687 * dispextern.h: Include nsgui.h and add needed typedefs under NS
10688 windowing.
10689 (struct face): Add synth_ital field.
10690 * dispnew.c: Include nsterm.h when compiling under NS windowing.
10691 (init_display): Initialize Vinitial_window_system to "ns" when so
10692 compiled.
10693 * emacs.c: Include GSConfig.h when compiling under GNUstep.
10694 (display_arg): Use under NS.
10695 (main): Under NS, allocate autorelease pool and handle command line
10696 args. Move syms_of_xmenu() call under #ifdef HAVE_X_WINDOWS.
10697 (standard_args): Add NS-specific args.
10698 (shut_down_emacs): Shut down NS terminal if compiled under NS.
10699 * font.c (DEFAULT_ENCODING): New variable.
10700 (font_find_for_lface): Use it.
10701 (syms_of_font): Load syms_of_nsfont under NS.
10702 * font.h: Declare nsfont_driver when compiled under NS.
10703 * fontset.c: When compiling under NS, include nsterm.h.
10704 (fontset_from_font): Autoconstruct fontset under NS.
10705 * frame.c (various): Under NS, include nsterm.h, add Qns window system
10706 symbol, document and use it.
10707 (do_switch_frame): When for_deletion under Cocoa, add
10708 Fraise_frame(Qnil).
10709 (x_set_frame_parameters): Ensure font attribute changes are picked up.
10710 (x_get_arg): Allow "yes" and "no" as boolean values.
10711 (syms_of_frame): Declare Qns. Init Vdefault_frame_scroll_bars to
10712 Qright under Cocoa.
10713 (focus-follows-mouse): Default to 0 under NS.
10714 * frame.h (enum output_method): Add output_ns.
10715 (external_tool_bar, external_menu_bar, FRAME_EXTERNAL_TOOLBAR)
10716 (FRAME_EXTERNAL_MENU_BAR): Use under NS.
10717 (FRAME_WINDOW_P): NS-specific definition.
10718 * fringe.c (max_used_fringe_bitmap): Make public.
10719 * getloadavg.c (mach/mach.h): Include it under NeXT descendant OS's.
10720 (getloadavg): Use NeXT code under descendant OS's.
10721 * image.c (includes and header section, x_create_bitmap_from_data)
10722 (x_create_bitmap_from_file, free_bitmap_record, image_background)
10723 (image_background_transparent, x_clear_image_1)
10724 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
10725 (Create_Pixmap_From_Bitmap_Data, xpm_load_image, lookup_rgb_color)
10726 (x_to_xcolors, x_from_xcolors, x_disable_image)
10727 (x_build_heuristic_mask, syms_of_image): Add NS support parallel to
10728 other GUIs, including XPM support using code originally written for
10729 Carbon GUI.
10730 (png_load, jpeg_load, tiff_load, gif_load): Add implementations
10731 using NS API.
10732 (image_ascent): Use font metrics macros instead of direct struct field
10733 access.
10734 * keyboard.c (includes): Add nsterm.h when compiling under NS.
10735 (kbd_buffer_get_event): Handle NS as other GUI windowing systems.
10736 Also, handle NS as GTK for menu bar purposes.
10737 (make_lispy_event): Handle NS as other GUI windowing systems, and as X
10738 toolkit where they differ.
10739 (parse_menu_item): Prefer keybindings using 'super' modifier. Also,
10740 use cachelist, still needed under NS.
10741 * keyboard.h (ENCODE_MENU_STRING, XtPointer, Boolean): Handle as NTGUI.
10742 (struct widget_value): Define it here for menu.c.
10743 * keymap.c (includes): Include modifier internals.
10744 (lisp_to_mod, modifier_sequence_p): New functions, compiled only under
10745 NS.
10746 (where_is_internal, Fwhere_is_internal): When compiled under NS, add
10747 support for preferring sequences using certain modifiers, specified by
10748 the FIRSTONLY argument.
10749 * lisp.h (hash_remove): Rename to avoid name clash when compiling
10750 under NS GNUstep implementation.
10751 (USE_LSB_TAG): Use it under Cocoa when compiling under NS.
10752 * lread.c (init_lread): Treat NS as HAVE_CARBON for turn_off_warning.
10753 * menu.c: Include nsterm.h under NS.
10754 (single_menu_item, parse_single_submenu, xmalloc_widget_value)
10755 (free_menubar_widget_tree_value, update_submenu_strings)
10756 (find_and_call_menu_selection): Treat NS as X and NT.
10757 (find_and_return_menu_selection): New function, used for popup menus.
10758 * nsgui.h:
10759 * nsterm.h:
10760 * nsfns.m:
10761 * nsimage.m:
10762 * nsmenu.m:
10763 * nsselect.m:
10764 * nsterm.m: New files.
10765 * process.c (wait_reading_process_output): Under NS, call ns_select()
10766 instead of plain select().
10767 * syntax.c (char_quoted): Under NS, avoid a crash when called near
10768 beginning of buffer.
10769 * sysselect.h (init_process): Rename when compiling under Cocoa to
10770 avoid name conflict.
10771 * termhooks.h (display_info): Add ns_display_info to union.
10772 * terminal.c (Fterminal_live_p): Add ns to terminal types.
10773 * terminfo.c (UP, BC, PC): Don't declare when compiling under NS in
10774 COCOA environment.
10775 * unexnext.c: Update to work with mach API on Mac OS X, and to use new
10776 unexec() signature. (Note, this will dump, but the resulting file
10777 crashes; unexosx is used instead; keeping around for reference and
10778 possible aid in getting dump working under GNUstep.)
10779 * w32gui.h (button_type, widget_value): Remove definitions (now in
10780 keyboard.h).
10781 * window.c: Include nsterm.h when compiling under NS.
10782 * xdisp.c (includes): Include nsterm.h when compiling under NS.
10783 (set_frame_menubar, update_menu_bar, display_menu_bar): Handle NS as
10784 other GUI windowing systems.
10785 (update_tool_bar, redisplay_tool_bar, redisplay_window): Handle NS as
10786 GTK.
10787 (x_consider_frame_title): Under NS, set icon type and frame
10788 modified-state indicator; use ns_set_name_as_filename() when using
10789 formatted title.
10790 (update_window_cursor): Make public when compiling under NS.
10791 (display_hourglass_p, syms_of_xdisp, hourglass_shown_p)
10792 (hourglass_atimer, Vhourglass_delay
10793 * xfaces.c (header section, init_frame_faces, clear_font_table)
10794 (defined_color, unload_color, x_face_list_fonts)
10795 (prepare_face_for_display): Add NS support parallel to other GUIs.
10796 Emulate GCs like other non-X GUIs.
10797 (split_font_name): Don't lowercase font name under NS.
10798 (merge_face_ref, Finternal_set_lisp_face_attribute): Support stippling
10799 under NS.
10800 * s/darwin.h: Add support for compilation under NS.
10801
108022008-07-15 Jason Rumney <jasonr@gnu.org>
10803
10804 * w32fns.c (Fx_create_frame): Remove duplicate unwind_protect.
10805 (w32_show_hourglass): Rename from show_hourglass.
10806 (w32_hide_hourglass): Rename from hide_hourglass.
10807 (DEFAULT_HOURGLASS_DELAY): Revert from last change.
10808 (Vhourglass_delay): Declare extern.
10809 (hourglass_started): Remove.
10810
10811 * xdisp.c (Vhourglass_delay): Remove static.
10812 (hourglass_started, start_hourglass, cancel_hourglass):
10813 Don't include these versions on WINDOWSNT.
10814
108152008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
10816
10817 * dispextern.h (hourglass_shown_p, hourglass_atimer): New extern
10818 variables (formerly in xfns.c).
10819 (show_hourglass, hide_hourglass): New prototypes (same).
10820 * xdisp.c (display_hourglass_p, hourglass_shown_p, hourglass_atimer)
10821 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY): New variables (formerly
10822 in xfns.c).
10823 (syms_of_xdisp): Declare/initialize display-hourglass,
10824 hourglass-delay. Initialize hourglass_atimer, hourglass_shown_p.
10825 (hourglass_started, start_hourglass, cancel_hourglass): New functions,
10826 formerly in xfns.c.
10827 * xfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
10828 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
10829 (start_hourglass, cancel_hourglass): Remove.
10830 (show_hourglass, hide_hourglass): Remove prototypes and static
10831 modifiers.
10832 (syms_of_xfns): Remove display-hourglass, hourglass-delay,
10833 hourglass_atimer, hourglass_shown_p declaration/initialization.
10834 * macfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
10835 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
10836 (start_hourglass, cancel_hourglass): Remove.
10837 (show_hourglass, hide_hourglass): Remove prototypes and static
10838 modifiers.
10839 (syms_of_macfns): Remove display-hourglass, hourglass-delay,
10840 hourglass_atimer, hourglass_shown_p declaration/initialization.
10841 * w32fns.c (display_hourglass_p, Vhourglass_delay)
10842 (DEFAULT_HOURGLASS_DELAY): Remove.
10843 (syms_of_w32fns): Remove display-hourglass, hourglass-delay,
10844 hourglass_shown_p declaration/initialization.
10845
108462008-07-14 Jason Rumney <jasonr@gnu.org>
10847
10848 * w32fns.c (w32_get_arg): Remove wrapper function.
10849 (w32_createwindow, x_icon, x_create_tip_frame): Use x_get_arg
10850 directly.
10851 (Fx_create_frame): Sync with xfns.c. Use x_get_arg directly.
10852
108532008-07-14 Kenichi Handa <handa@m17n.org>
10854
10855 * xfont.c (xfont_open): Add workaround for X's bug.
10856
108572008-07-14 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
10858
10859 * fontset.c: Include <stdio.h> unconditionally.
10860
108612008-07-13 Michael Albinus <michael.albinus@gmx.de>
10862
10863 * dbusbind.c (Fdbus_register_signal): Allow also signal arguments
10864 for filtering.
10865
108662008-07-13 Dan Nicolaescu <dann@ics.uci.edu>
10867
10868 * s/vms.h: Use __GNUC__ instead of _GNUC_.
10869
10870 * m/macppc.h:
10871 * m/alpha.h: Use GNU_LINUX instead of LINUX. Reorganize conditionals.
10872
10873 * m/ibms390x.h (XINT, XUINT): Don't define, same as the default
10874 (SPECIAL_EMACS_INT):
10875 * m/ia64.h (SPECIAL_EMACS_INT):
10876 * m/amdx86-64.h (SPECIAL_EMACS_INT):
10877 * s/gnu.h (NLIST_STRUCT):
10878 * s/aix4-2.h (X11R5_INHIBIT_I18N):
10879 * s/gnu-linux.h (LINUX):
10880 * s/msdos.h (HAVE_FACES):
10881 * s/ms-w32.h (HAVE_FACES): Don't define, unused.
10882
10883 * systty.h:
10884 * sysdep.c (setup_pty): Don't depend on SYSV_PTYS, it is not used
10885 anymore.
10886
108872008-07-12 Dan Nicolaescu <dann@ics.uci.edu>
10888
10889 * syswait.h: Remove old if 0 code. Do not define WAITTYPE, it was
10890 always defined as int.
10891
10892 * s/netbsd.h (HAVE_UNION_WAIT, HAVE_WAIT_HEADER, WAIT_USE_INT):
10893 * s/gnu.h (HAVE_WAIT_HEADER, WAIT_USE_INT, HAVE_UNION_WAIT):
10894 * s/gnu-linux.h (HAVE_WAIT_HEADER):
10895 * s/freebsd.h (HAVE_WAIT_HEADER):
10896 * s/bsd-common.h (HAVE_UNION_WAIT):
10897 * s/aix4-2.h (HAVE_WAIT_HEADER):
10898 * m/mips.h (HAVE_UNION_WAIT):
10899 * s/usg5-4.h (HAVE_WAIT_HEADER, WAITTYPE): Do not define, not used.
10900 (COFF, static): Do not define, they are undefined later in the file.
10901
10902 * process.c (update_status): Don't use a union.
10903 (status_convert):
10904 (sigchld_handler): Use int instead of WAITTYPE.
10905
109062008-07-12 Chong Yidong <cyd@stupidchicken.com>
10907
10908 * indent.c (Fvertical_motion): Restore hscroll before moving to
10909 goal column.
10910
109112008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
10912
10913 * lisp.h: Remove left over code.
10914
109152008-07-11 Andreas Schwab <schwab@suse.de>
10916
10917 * lisp.h: Fix logic in last change.
10918
10919 * menu.h: New file.
10920 * menu.c: Include it.
10921 * xmenu.c: Likewise.
10922 * Makefile.in: Update dependencies.
10923
109242008-07-11 Kenichi Handa <handa@m17n.org>
10925
10926 * fontset.c (fontset_from_font): Cancel the previous change.
10927
109282008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
10929
10930 * lisp.h:
10931 * w32heap.c:
10932 * emacs.c:
10933 * alloc.c: Replace all references of NO_UNION_TYPE with
10934 USE_LISP_UNION_TYPE.
10935
10936 * m/xtensa.h (NO_UNION_TYPE):
10937 * m/vax.h (NO_UNION_TYPE):
10938 * m/template.h (NO_UNION_TYPE):
10939 * m/sparc.h (NO_UNION_TYPE):
10940 * m/mips.h (NO_UNION_TYPE):
10941 * m/macppc.h (NO_UNION_TYPE):
10942 * m/m68k.h (NO_UNION_TYPE):
10943 * m/iris4d.h (NO_UNION_TYPE):
10944 * m/intel386.h (NO_UNION_TYPE):
10945 * m/ibms390x.h (NO_UNION_TYPE):
10946 * m/ibms390.h (NO_UNION_TYPE):
10947 * m/ibmrs6000.h (NO_UNION_TYPE):
10948 * m/ia64.h (NO_UNION_TYPE):
10949 * m/hp800.h (NO_UNION_TYPE):
10950 * m/arm.h (NO_UNION_TYPE):
10951 * m/amdx86-64.h (NO_UNION_TYPE):
10952 * m/alpha.h (NO_UNION_TYPE): Remove definition, all platform were
10953 defining it the same.
10954
109552008-07-10 Chong Yidong <cyd@stupidchicken.com>
10956
10957 * xdisp.c (move_it_to): Backtrack if past the edge of a wrapped line.
10958
109592008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
10960
10961 * fileio.c:
10962 * sysdep.c:
10963 * systty.h:
10964 * m/ibmrs6000.h:
10965 * m/iris4d.h:
10966 * s/aix4-2.h:
10967 * s/freebsd.h:
10968 * s/gnu-linux.h:
10969 * s/hpux10-20.h:
10970 * s/hpux11.h:
10971 * s/netbsd.h:
10972 * s/sol2-3.h:
10973 * s/sol2-4.h:
10974 * s/sol2.h:
10975 * s/usg5-4.h:
10976 * s/vms.h: Remove references to unused variables.
10977
109782008-07-10 Andreas Schwab <schwab@suse.de>
10979
10980 * ftfont.c (ftfont_resolve_generic_family): Remove foundry from
10981 pattern before matching the generic family.
10982
109832008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
10984
10985 * unexec.c:
10986 * s/vms.h:
10987 * s/usg5-4-2.h:
10988 * s/sol2-5.h:
10989 * s/freebsd.h:
10990 * s/darwin.h: Remove dead code.
10991
10992 * m/template.h:
10993 * m/sparc.h:
10994 * m/mips.h:
10995 * m/m68k.h:
10996 * m/iris4d.h:
10997 * m/intel386.h:
10998 * m/ibms390x.h:
10999 * m/ibms390.h:
11000 * m/ia64.h:
11001 * m/hp800.h:
11002 * m/arm.h:
11003 * m/amdx86-64.h: Remove dead code and references to unused
11004 and compiler defined symbols.
11005
11006 * unexmips.c:
11007 * unexelf.c: Remove references to desupported systems.
11008
11009 * m/powermac.h: Remove file, it is now identical to m/macppc.h.
11010
11011 * m/powermac.h: Remove boilerplate comments.
11012 (NO_REMAP): Remove unused definition.
11013
11014 * m/macppc.h (UNEXEC, NO_TERMIO): Don't define, the s/ files
11015 define them.
11016
110172008-07-10 Kenichi Handa <handa@m17n.org>
11018
11019 * xfont.c (xfont_open): Log the reason of failure.
11020
110212008-07-09 Stefan Monnier <monnier@iro.umontreal.ca>
11022
11023 * fontset.c (fontset_get_font_group):
11024 * font.c (font_check_otf): Specify argument types.
11025
110262008-07-09 Kenichi Handa <handa@m17n.org>
11027
11028 * coding.c (detect_coding_utf_8): Set detect_info->found only when
11029 non-ASCII char is found.
11030
11031 * fontset.c (fontset_compare_rfontdef): Fix plus/minus.
11032 (reorder_font_vector): Change the arg preferred_family to font.
11033 Prefer the spec matching with font.
11034 (fontset_get_font_group): New function.
11035 (fontset_find_font): Change the format of an element of a realized
11036 fontset. Use fontset_get_font_group.
11037 (fontset_font): Try the current fontset, the default fontset, the
11038 fallbacks of the current fontset, and the fallbacks of the default
11039 fontset in this order.
11040 (face_for_char): Delete the shortcut to use the current font.
11041 (fontset_from_font): Don't set fonts for Latin in the fontset.
11042
11043 * font.h (font_make_object, font_match_p): Adjust prototypes.
11044
11045 * ftfont.h [FT_BDF_H]: Include FT_BDF_H.
11046
11047 * font.c (font_make_object): New arg entity and pixelsize.
11048 (font_check_otf_features, font_check_otf): New functions.
11049 (font_match_p): Check :lang, :script, and :otf properties.
11050
11051 * xfont.c (xfont_open): Adjust it for the change of
11052 font_make_object.
11053 (xfont_text_extents): Fix initial setting of metrics.
11054
11055 * ftfont.c (struct ftfont_info): New member index, delete member
11056 fc_charset_idx. Make the member order compatible with struct
11057 xftfont_info.
11058 (fc_charset_table): Change charset names to registry names.
11059 (ftfont_pattern_entity): Delete the args registry and
11060 fc_charset_idx. Change the value of :font-entity property
11061 to (FONTNAME . INDEX). Always set :registry property to
11062 `iso10646-1'.
11063 (struct ftfont_cache_data): New struct.
11064 (ftfont_lookup_cache): New arg for_face.
11065 (ftfont_get_fc_charset, ftfont_get_otf): New functions.
11066 (ftfont_driver): Set the member otf_capability.
11067 (ftfont_get_charset): Adjust it for the change of
11068 fc_charset_table.
11069 (OTF_TAG_SYM): New macro.
11070 (ftfont_spec_pattern): Delete the arg fc_charset_idx. Adjust it
11071 for the change of fc_charset_table.
11072 (ftfont_list): Adjust it for the change of ftfont_spec_pattern and
11073 ftfont_pattern_entity. Add FC_INDEX to objset.
11074 (ftfont_match): Adjust it for the change of ftfont_spec_pattern
11075 and ftfont_pattern_entity.
11076 (ftfont_open): Adjust it for the change of ftfont_lookup_cache,
11077 font_make_object, struct ftfont_info.
11078 (ftfont_has_char): Use ftfont_get_fc_charset.
11079 (ftfont_otf_features, ftfont_otf_capability): New functions.
11080 (ftfont_shape): Use ftfont_get_otf.
11081 (ftfont_text_extents): Fix initial setting of metrics.
11082
11083 * xftfont.c (struct xftfont_info): New member ft_size. Make the
11084 member order compatible with struct ftfont_info.
11085 (xftfont_open): Add FC_CHARSET to the pattern. Set
11086 xftfont_info->ft_size. Don't unlock the face. Check BDF
11087 properties if appropriate.
11088 (xftfont_close): Unlock the face.
11089 (xftfont_anchor_point, xftfont_shape): Deleted.
11090 (syms_of_xftfont): Don't set members anchor_point and shape of
11091 xftfont_driver.
11092
11093 * w32uniscribe.c (uniscribe_open): Adjust it for the change of
11094 font_make_object.
11095
11096 * w32font.c (w32font_open): Adjust it for the change of
11097 font_make_object.
11098 (w32font_open_internal): Don't set properties of font_object here.
11099
111002008-07-08 Chong Yidong <cyd@stupidchicken.com>
11101
11102 * macfns.c (x_create_tip_frame):
11103 * w32fns.c (x_create_tip_frame):
11104 * xfns.c (x_create_tip_frame): Pass parameter argument to
11105 face-set-after-frame-default.
11106
11107 * xfaces.c (Finternal_merge_in_global_face): Save merged
11108 attributes for the default face back into the face vector.
11109
111102008-07-08 Andreas Schwab <schwab@suse.de>
11111
11112 * fontset.h: Declare fontset_from_font. Don't declare
11113 new_fontset_from_font and fontset_from_font_name.
11114 * xterm.c: Include "fontset.h".
11115 * Makefile.in (xterm.o): Update dependencies.
11116
111172008-07-08 Glenn Morris <rgm@gnu.org>
11118
11119 * m/sparc.h: Define __sparc__ rather than sparc. (Bug#507.)
11120 * alloc.c, ecrt0.c: Use __sparc__ rather than sparc.
11121
111222008-07-07 Chong Yidong <cyd@stupidchicken.com>
11123
11124 * frame.c (Qinhibit_face_set_after_frame_default): Var deleted.
11125 (x_set_frame_parameters): Don't bind it.
11126
111272008-07-07 Juanma Barranquero <lekktu@gmail.com>
11128
11129 * w32fns.c (map_w32_filename): Declare extern.
11130
111312008-07-07 Jason Rumney <jasonr@gnu.org>
11132
11133 * w32term.c (WS_EX_LAYERED): Define if not already.
11134
111352008-07-06 Chong Yidong <cyd@stupidchicken.com>
11136
11137 * xfaces.c (set_font_frame_param): Don't try to set the font
11138 parameter if it is still unspecified in the lface.
11139
111402008-07-05 Chong Yidong <cyd@stupidchicken.com>
11141
11142 * xfaces.c (Finternal_merge_in_global_face): Don't realize default
11143 face if it didn't already exist.
11144
11145 * xdisp.c (try_window_id): Give up if word-wrapping is on.
11146
111472008-07-05 Andreas Schwab <schwab@suse.de>
11148
11149 * xdisp.c (get_it_property): Move out of HAVE_WINDOW_SYSTEM section.
11150
111512008-07-05 Chong Yidong <cyd@stupidchicken.com>
11152
11153 * xdisp.c (IT_OVERFLOW_NEWLINE_INTO_FRINGE): Turn it off if
11154 word-wrapping.
11155 (IT_DISPLAYING_WHITESPACE): New macro.
11156 (move_it_in_display_line_to): Handle MOVE_TO_X requests properly
11157 when word-wrapping. Simplify word-wrapping logic. Use correct
11158 pixel positions when saving copies of the iterator.
11159 (display_line): Use proper wrap point if the last character on a
11160 line was preceded by whitespace.
11161
111622008-07-04 Stefan Monnier <monnier@iro.umontreal.ca>
11163
11164 * Makefile.in (${etc}DOC): Depend on ${lisp} rather than ${shortlisp}.
11165
111662008-07-04 Kenichi Handa <handa@m17n.org>
11167
11168 * fns.c (Fstring_to_unibyte): Delete the arg ACCEPT-LATIN-1.
11169
11170 * lisp.h: EXFUN adjusted for the change of Fstring_to_unibyte.
11171
111722008-07-02 Jason Rumney <jasonr@gnu.org>
11173
11174 * xfns.c (syms_of_xfns): Only define x-select-font when both
11175 HAVE_FREETYPE and USE_GTK.
11176
11177 * xdisp.c (next_element_from_display_vector): Move assignment out
11178 of if statement.
11179
111802008-07-02 Toru Tsuneyoshi <t_tuneyosi@hotmail.com>
11181
11182 * lisp.h (Qdelete_file, Qdelete_directory): Declare extern.
11183
11184 * fileio.c (delete_by_moving_to_trash, Qmove_file_to_trash): New vars.
11185 (syms_of_fileio): Initialize and export them.
11186 (Fdelete_directory, Fdelete_file): Optionally delete via trash.
11187
11188 * w32fns.c (FOF_NO_CONNECTED_ELEMENTS): Define if not already.
11189 (Fsystem_move_file_to_trash): New function.
11190 (syms_of_w32fns): Export it to lisp.
11191
111922008-07-01 Jason Rumney <jasonr@gnu.org>
11193
11194 * w32font.c (w32font_text_extents): Don't count overhang as part
11195 of width.
11196
111972008-06-30 Miles Bader <miles@gnu.org>
11198
11199 * dispextern.h (struct glyph, struct it, struct iterator_stack_entry):
11200 Add `avoid_cursor_p' field.
11201
11202 * xdisp.c (push_it, pop_it): Save/restore avoid_cursor_p field.
11203 (set_cursor_from_row): Skip glyphs with avoid_cursor_p set.
11204 (append_glyph, append_composite_glyph, produce_image_glyph)
11205 (append_stretch_glyph): Initialize avoid_cursor_p.
11206 (get_it_property): Rename from `get_line_height_property'.
11207 (x_produce_glyphs): Use get_it_property.
11208 (handle_line_prefix, push_display_prop): New functions.
11209 (display_line, move_it_in_display_line_to): Handle line/wrap prefixes.
11210 (Vwrap_prefix, Qwrap_prefix, Vline_prefix, Qline_prefix):
11211 New variables.
11212 (syms_of_xdisp): Initialize them.
11213
112142008-06-30 Kenichi Handa <handa@m17n.org>
11215
11216 * xftfont.c (xftfont_open): Don't call FcConfigSubstitute and
11217 XftDefaultSubstitute (they are called in XftFontMatch).
11218 (xftfont_open): Fix args to ftfont_font_format.
11219
11220 * ftfont.c (fc_charset_table): New member lang.
11221 (ftfont_resolve_generic_family): New arg pattern.
11222 (ftfont_spec_pattern): Check fc_charset_table[]->lang.
11223 (ftfont_list): Call ftfont_resolve_generic_family with `pattern'.
11224 (ftfont_open): Fix args to ftfont_font_format.
11225 (ftfont_font_format): New arg filename.
11226
112272008-06-30 Chong Yidong <cyd@stupidchicken.com>
11228
11229 * xfaces.c (Finternal_merge_in_global_face): If default face was
11230 modified, realize it again. Update the font face attribute.
11231
112322008-06-29 Jason Rumney <jasonr@gnu.org>
11233
11234 * w32term.c (x_set_frame_alpha): Fix logic.
11235
112362008-06-29 Kenichi Handa <handa@m17n.org>
11237
11238 * fontset.c (Finternal_char_font): Return font-object instead of
11239 font-name.
11240
11241 * composite.c (get_composition_id): Fix the width calculation for TAB.
11242
112432008-06-29 Stefan Monnier <monnier@iro.umontreal.ca>
11244
11245 * indent.c (Fvertical_motion): Properly handle float column arg.
11246
112472008-06-28 Jason Rumney <jasonr@gnu.org>
11248
11249 * w32term.c (pfnGetFontUnicodeRanges): Remove unused function pointer.
11250 (pfnSetLayeredWindowAttributes): New function pointer.
11251 (w32_initialize): Initialize it when supported.
11252 (x_set_frame_alpha): New function.
11253
11254 * w32fns.c (Fx_create_frame): Initialize frame parameter `alpha'.
11255 (w32_frame_parm_handlers): Set alpha handler.
11256
11257 * frame.c (x_set_alpha) [HAVE_NTGUI]: Call x_set_frame_alpha.
11258
112592008-06-27 Jason Rumney <jasonr@gnu.org>
11260
11261 * w32fns.c (x_to_w32_font, w32_to_x_font, x_to_w32_weight)
11262 (w32_to_x_weight, w32_to_all_x_charsets): Remove obsolete functions.
11263 (w32_to_x_charset, x_to_w32_charset)
11264 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
11265 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
11266 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
11267 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
11268 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
11269 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
11270 (Qw32_charset_mac, Vw32_charset_info_alist): Move to w32font.c.
11271 (Qw32_charset_unicode): Remove.
11272 (syms_of_w32fns): Update for above changes.
11273
11274 * w32font.c (w32_to_x_charset, x_to_w32_charset)
11275 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
11276 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
11277 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
11278 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
11279 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
11280 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
11281 (Qw32_charset_mac, Vw32_charset_info_alist): Move from w32fns.c.
11282 (syms_of_w32font): Update for above changes.
11283
112842008-06-27 Dan Nicolaescu <dann@ics.uci.edu>
11285
11286 * s/usg5-4.h: Fix previous change: keep the correct branch of a
11287 removed #if.
11288 (USG_SHARED_LIBRARIES): Remove duplicate definition.
11289
112902008-06-26 Juanma Barranquero <lekktu@gmail.com>
11291 Eli Zaretskii <eliz@gnu.org>
11292
11293 * makefile.w32-in (LOCAL_FLAGS):
11294 Don't include WINDOWSNT, DOS_NT and _UCHAR_T.
11295
11296 * sysdep.c (_spawnlp, _getpid):
11297 Declare with explicit _cdecl instead of _CRTAPI1.
11298
11299 * editfns.c (Fget_internal_run_time):
11300 Check for WINDOWSNT with #ifdef, not #if.
11301
113022008-06-26 Jason Rumney <jasonr@gnu.org>
11303
11304 * w32font.h (FONT_HANDLE, FONT_TEXTMETRIC): New macros.
11305
11306 * w32term.c (x_draw_glyph_string_foreground)
11307 (x_draw_composite_glyph_string_foreground): Sync with xterm.c.
11308 Use FONT_HANDLE macro.
11309 (x_draw_glyph_string): Use FONT_TEXTMETRIC macro.
11310
11311 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
11312 (uniscribe_encode_char): Use FONT_HANDLE macro.
11313
11314 * w32font.c (Fx_select_font): Use FONT_HANDLE macro.
11315 (w32font_text_extents): Use precast w32_font.
11316 (w32font_close): Free cached metrics.
11317 (w32font_open_internal): Allocate space for name on stack.
11318
113192008-06-26 Chong Yidong <cyd@stupidchicken.com>
11320
11321 * xdisp.c (extend_face_to_end_of_line): Fix last change.
11322
113232008-06-26 Jason Rumney <jasonr@gnu.org>
11324
11325 * w32term.h (FONT_AVG_WIDTH): Remove obsolete macro.
11326 (CP_8BIT, CP_UNICODE, CP_UNKNOWN): Remove obsolete constants.
11327
113282008-06-26 Juanma Barranquero <lekktu@gmail.com>
11329
11330 * Makefile.in (SOME_MACHINE_OBJECTS): Remove w32bdf.o.
11331
113322008-06-26 Jason Rumney <jasonr@gnu.org>
11333
11334 * w32bdf.c, w32bdf.h: Remove obsolete files.
11335
11336 * makefile.w32-in: Remove refs to w32bdf.h and w32bdf.c.
11337
11338 * w32gui.h: Don't include w32bdf.h.
11339 (XCharStruct, enum w32_char_font_type, W32FontStruct):
11340 Remove obsolete font support.
11341
11342 * w32font.h (struct w32font_info): Remove compat_w32_font.
11343 Add hfont member.
11344 (FONT_COMPAT): Remove obsolete macro.
11345
11346 * w32font.c (w32font_close): Remove compat code. Delete hfont member.
11347 (w32font_encode_char, w32font_text_extents): Use new hfont member.
11348 (w32font_open_internal): Remove compat code. Set new hfont member.
11349 (Fx_select_font): Use new hfont member.
11350
11351 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
11352 (uniscribe_encode_char): Use new hfont member.
11353
11354 * w32term.c (x_draw_glyph_string_foreground)
11355 (x_draw_composite_glyph_string_foreground): Use new hfont member.
11356 (x_draw_glyph_string): Use metrics in w32font_info.
11357
113582008-06-26 Kenichi Handa <handa@m17n.org>
11359
11360 * xdisp.c (handle_auto_composed_prop): Fix for the terminal case.
11361
113622008-06-26 Dan Nicolaescu <dann@ics.uci.edu>
11363
11364 * unexnext.c:
11365 * m/ews4800.h:
11366 * m/hp9000s300.h:
11367 * m/ibm370aix.h:
11368 * m/mips-siemens.h:
11369 * m/ncr386.h:
11370 * m/next.h:
11371 * m/pmax.h:
11372 * m/powerpcle.h:
11373 * m/tandem-s2.h:
11374 * s/386bsd.h:
11375 * s/bsd386.h:
11376 * s/bsd4-1.h:
11377 * s/bsd4-2.h:
11378 * s/bsdos2-1.h:
11379 * s/bsdos2.h:
11380 * s/bsdos3.h:
11381 * s/bsdos4.h:
11382 * s/nextstep.h:
11383 * s/ultrix4-3.h:
11384 * s/usg5-0.h:
11385 * s/usg5-2-2.h:
11386 * s/usg5-2.h:
11387 * s/usg5-4-3.h:
11388 * s/ux4800.h:
11389 * s/uxpds.h:
11390 * s/uxpv.h: Remove support for obsolete systems.
11391 * s/hpux.h, s/hpux10.h, s/hpux8.h, s/hpux9.h, s/hpux9shr.h:
11392 Remove, insert contents in s/hpux10-20.h.
11393 * s/aix3-1.h, s/aix3-2-5.h, s/aix3-2.h, s/aix4-1.h, s/aix4.h:
11394 Remove, insert contents in s/aix4-2.h.
11395 * s/usg5-3.h: Remove, insert contents in s/usg5-4.h.
11396 * s/bsd4-3.h: Rename to ...
11397 * s/bsd-common.h: ... this.
11398 * data.c:
11399 * doc.c:
11400 * ecrt0.c:
11401 * emacs.c:
11402 * fileio.c:
11403 * floatfns.c:
11404 * keyboard.c:
11405 * mem-limits.h:
11406 * print.c:
11407 * process.c:
11408 * sysdep.c:
11409 * syssignal.h:
11410 * systty.h:
11411 * syswait.h:
11412 * term.c:
11413 * unexec.c:
11414 * unexelf.c:
11415 * unexhp9k800.c:
11416 * m/hp800.h:
11417 * m/ibmrs6000.h:
11418 * m/mips.h:
11419 * m/vax.h:
11420 * s/darwin.h:
11421 * s/freebsd.h:
11422 * s/gnu.h:
11423 * s/ms-w32.h:
11424 * s/msdos.h:
11425 * s/netbsd.h:
11426 * s/template.h: Remove references to obsolete variables.
11427
11428 * Makefile.in: Add dependencies for all unexec files.
11429 (admindir): Remove unused variable.
11430 (UNEXEC_SRC): Remove references.
11431
114322008-06-25 Chong Yidong <cyd@stupidchicken.com>
11433
11434 * xfns.c (x_default_font_parameter): If Xft is available, first
11435 try Monospace-12 for the default font.
11436
114372008-06-25 Jason Rumney <jasonr@gnu.org>
11438
11439 * xdisp.c (get_glyph_face_and_encoding): Encode invalid glyphs as 0.
11440
114412008-06-25 Stefan Monnier <monnier@iro.umontreal.ca>
11442
11443 * bytecode.c (Fbyte_code): Disable debugging code that doesn't compile.
11444
11445 * buffer.c (syms_of_buffer): Remove default-word-wrap.
11446
114472008-06-25 Juanma Barranquero <lekktu@gmail.com>
11448
11449 * xdisp.c (syms_of_xdisp) <truncate-partial-width-windows>: Doc fix.
11450 <scroll-conservatively>: Fix typo in docstring.
11451
11452 * xselect.c (Fx_send_client_event): Doc fix.
11453
114542008-06-25 Kenichi Handa <handa@m17n.org>
11455
11456 * xfaces.c (Fx_list_fonts): Call Flist_fonts with the arg PREFER.
11457
11458 * font.c (font_parse_fcname): Remove unused variables.
11459 (font_sort_entites): Delete the arg SPEC. Caller changed.
11460 Fix for the case of ! best_only.
11461 (font_delete_unmatched): Check DPI and AVGWIDTH too.
11462
11463 * lisp.h (Fstring_to_unibyte): EXFUN it.
11464
11465 * character.h (str_to_unibyte): Extern it.
11466
11467 * character.c (str_to_unibyte): New function.
11468
11469 * fns.c (Fstring_to_unibyte): New function.
11470 (syms_of_fns): Defsubr it.
11471
114722008-06-24 Kenichi Handa <handa@m17n.org>
11473
11474 * font.c (font_score): Even if the PIXEL_SIZE is the same, check
11475 DPI too.
11476 (font_sort_entites): Setup prefer_prop[FONT_DPI_INDEX] too.
11477
114782008-06-24 Andreas Schwab <schwab@suse.de>
11479
11480 * Makefile.in (${lispsource}loaddefs.el): Rename from
11481 ../lisp/loaddefs.el.
11482 (bootstrap-clean): Do what distclean does but don't remove
11483 Makefile.
11484 (distclean): Depend on bootstrap-clean and remove Makefile.
11485
114862008-06-24 Chong Yidong <cyd@stupidchicken.com>
11487
11488 * buffer.h (struct buffer): New member word_wrap.
11489
11490 * buffer.c (syms_of_buffer): New variables default-word-wrap and
11491 word-wrap.
11492 (init_buffer_once): Initialize them.
11493
11494 * dispextern.h (struct it): Replace bool truncate_lines_p with a
11495 line_wrap enum possessing three possible values.
11496
11497 * termopts.h: Replace truncate_partial_width_windows with
11498 Vtruncate_partial_width_windows.
11499
11500 * dispnew.c (direct_output_for_insert): Avoid direct output when
11501 inserting a space with word wrap on.
11502
11503 * indent.c (compute_motion): Obey integer values of
11504 truncate-partial-width-windows.
11505
11506 * xdisp.c (Vtruncate_partial_width_windows): New Lisp_Object,
11507 replacing truncate_partial_width_windows.
11508 (init_iterator): If Vtruncate_partial_width_windows is an integer,
11509 truncate only if the window width is below that integer.
11510 (start_display, resize_mini_window, produce_stretch_glyph)
11511 (display_string, move_it_in_display_line_to): Use line_wrap.
11512 (back_to_previous_visible_line_start, reseat_1): Reset
11513 string_from_display_prop_p.
11514 (display_line): Extend default face to end of line when wrapping.
11515
115162008-06-24 Kim F. Storm <storm@cua.dk>
11517
11518 * xdisp.c (display_line, move_it_in_display_line_to): Add ability
11519 to wrap continued lines at word boundaries.
11520
115212008-06-24 Jason Rumney <jasonr@gnu.org>
11522
11523 * font.c (Ffont_face_attributes): Multiply pixel size before point
11524 conversion to avoid multiplying rounding error.
11525
115262008-06-23 Jason Rumney <jasonr@gnu.org>
11527
11528 * w32term.c (x_draw_glyph_string_background)
11529 (x_draw_glyph_string): Remove old bdf font code.
11530
11531 * w32term.h (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): Remove.
11532
115332008-06-22 Kenichi Handa <handa@m17n.org>
11534
11535 * font.c (font_find_for_lface): Try the adstyle specified in
11536 the property of LFACE_FONT of LFACE (if any).
11537
115382008-06-21 Seiji Zenitani <zenitani@mac.com>
11539 Ryo Yoshitake <ryo@shiftmode.net>
11540
11541 * xterm.c (x_set_frame_alpha): Add x_catch_errors for bug#437.
11542
115432008-06-22 Stefan Monnier <monnier@iro.umontreal.ca>
11544
11545 * Makefile.in (${lisp} ${SOME_MACHINE_LISP}, ../lisp/loaddefs.el):
11546 Use $(BOOTSTRAPEMACS) rather than witness-emacs.
11547 (bootstrap-emacs${EXEEXT}): Merge witness-emacs into it.
11548 (witness-emacs): Remove.
11549 (lisp, shortlisp): Move loaddefs.el earlier.
11550 (mostlyclean): Forget about witness-emacs.
11551
115522008-06-22 Glenn Morris <rgm@gnu.org>
11553
11554 * Makefile.in (witness-emacs): Depend on temacs${EXEEXT}.
11555 (.SUFFIXES): Declare .el.elc as a suffix rule, for non-GNU makes.
11556
115572008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
11558
11559 * Makefile.in (PRECOMP): Remove.
11560 (${lisp} ${SOME_MACHINE_LISP}): Remove pseudo dependency on PRECOMP.
11561 (witness-emacs): Run `compile-first'.
11562 (.el.elc): Use the new compile-onefile target.
11563
115642008-06-21 Kenichi Handa <handa@m17n.org>
11565
11566 * xftfont.c (xftfont_open): Handle QCembolden only when
11567 FC_EMBOLDEN is defined.
11568
115692008-06-21 Andreas Schwab <schwab@suse.de>
11570
11571 * Makefile.in (witness-emacs): Use ../lisp, not $(lispsource).
11572 (.el.elc): Likewise.
11573
115742008-06-21 Miles Bader <miles@gnu.org>
11575
11576 * Makefile.in (../lisp/loaddefs.el): Build autoloads in the lisp
11577 build dir, not the lisp source dir.
11578
115792008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
11580
11581 * Makefile.in (emacs${EXEEXT}): Link the new emacs to bootstrap-emacs.
11582 (bootstrapclean): Remove.
11583 (.el.elc): New rule.
11584 (PRECOMP): New var.
11585 (../lisp/subdirs.el): Remove.
11586 (bootstrap-emacs${EXEEXT}): Remove subdirs.el and charpro.el dependency.
11587 (witness-emacs): New target.
11588 (mostlyclean): Remove witness-emacs as well.
11589 (../lisp/loaddefs.el, ${lisp} ${SOME_MACHINE_LISP}):
11590 Add witness-emacs dependency.
11591
115922008-06-20 Chong Yidong <cyd@stupidchicken.com>
11593
11594 * font.c (Ffont_face_attributes): Omit key-attribute pairs not
11595 defined by the font.
11596
115972008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
11598
11599 * Makefile.in (emacs${EXEEXT}): Depend on the machine-specific files.
11600 (bootstrap-clean): New target that keeps TAGS around.
11601 (../lisp/subdirs.el, ../lisp/loaddefs.el): New targets.
11602 (bootstrap-emacs${EXEEXT}): Depend on subdirs.el.
11603
116042008-06-20 Jason Rumney <jasonr@gnu.org>
11605
11606 * w32fns.c, w32term.c, w32term.h, w32gui.h [OLD_FONT]:
11607 Remove obsolete font code.
11608
11609 * w32font.c (font_matches_spec): Use csb bitfield from font signature
11610 to determine language support.
11611
116122008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
11613
11614 * sysdep.c (cfsetspeed): New fun extracted from the code.
11615 (cfmakeraw): Move before first use.
11616
116172008-06-20 Angelo Graziosi <angelo.graziosi@alice.it> (tiny change)
11618
11619 * sysdep.c (cfmakeraw): Provide fallback implementation.
11620 (serial_configure): Provide fallback implementation of cfsetspeed.
11621
116222008-06-20 Kenichi Handa <handa@m17n.org>
11623
11624 * xftfont.c (xftfont_open): Add FOUNDRY, SPACING, DPI, SCALABLE to
11625 the pattern.
11626
11627 * fontset.c (fontset_from_font): Copy font_spec before changing
11628 the elements.
11629
11630 * xfns.c (x_default_font_parameter): Try "monospace-12" too.
11631
116322008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
11633
11634 * w32fns.c, xfns.c (x_default_font_parameter): Only set `font-param'
11635 for explicit `font' parameters.
11636
11637 * frame.c (x_set_font): Remove unexplained call to fix inf-recursion.
11638
116392008-06-19 Kenichi Handa <handa@m17n.org>
11640
11641 * frame.c: Include <ctype.h>.
11642 (x_set_font_backend): Allow spacing characters in the X resource
11643 for FontBackend.
11644
116452008-06-19 Stefan Monnier <monnier@iro.umontreal.ca>
11646
11647 * w32fns.c, xfns.c (Qfont_param): New var.
11648 (syms_of_w32fns): Initialize it.
11649 (x_default_font_parameter): Record explicit `font' into
11650 `font-parameter'.
11651
116522008-06-18 Kenichi Handa <handa@m17n.org>
11653
11654 * font.c (font_parse_xlfd): Fix previous change.
11655 (font_parse_fcname): Don't use :fc-unknown-spec.
11656 (FRAME_X_DISPLAY_INFO): Be sure to have at least 1 pixel height.
11657 (Fcopy_font_spec): Preserve the order of elements in FONT_EXTRA.
11658 (font_add_log): Prepend the driver name to the resulting fonts.
11659
11660 * ftfont.c (ftfont_pattern_entity): New arg extra. Caller changed.
11661 (ftfont_spec_pattern): Don't check QCfc_unknown_spec and QCname.
11662 (ftfont_list) [FC_FONTFORMAT]: Include FC_FONTFORMAT in objset.
11663
11664 * xftfont.c (QChinting , QCautohint, QChintstyle, QCrgba)
11665 (QCembolden): New variables.
11666 (syms_of_xftfont): DEFSYM them.
11667 (xftfont_open): Call XftFontMatch. Don't trust the result of
11668 XftTextExtents8 if the pixel_size is less than 5.
11669
116702008-06-18 Andreas Schwab <schwab@suse.de>
11671
11672 * font.c (Ffont_face_attributes): Only define if HAVE_WINDOW_SYSTEM.
11673 (syms_of_font): Only defsubr if HAVE_WINDOW_SYSTEM.
11674
116752008-06-18 Jason Rumney <jasonr@gnu.org>
11676
11677 * w32font.c (w32font_list, w32font_match): Add logging.
11678
11679 * w32uniscribe.c (uniscribe_list, uniscribe_match): Add logging.
11680
116812008-06-17 Chong Yidong <cyd@stupidchicken.com>
11682
11683 * font.c (font_parse_fcname): Store divider characters for
11684 unknown-spec list. For known key symbols, intern using correct
11685 symbol name.
11686
116872008-06-17 Kenichi Handa <handa@m17n.org>
11688
11689 * xfaces.c (realize_default_face): If the frame is not on window
11690 system, set the fontset of face to nil.
11691
116922008-06-17 Naohiro Aota <nao.aota@gmail.com> (tiny change)
11693
11694 * fontset.c (fontset_pattern_regexp): Escape some reg-expr characters.
11695
116962008-06-16 Juanma Barranquero <lekktu@gmail.com>
11697
11698 * dispextern.h (lookup_non_ascii_face, split_font_name_into_vector)
11699 (build_font_name_from_vector): Delete externs.
11700
11701 * xfaces.c (struct font_name): Don't declare.
11702
117032008-06-16 Stefan Monnier <monnier@iro.umontreal.ca>
11704
11705 * font.c (font_unparse_gtkname): Use EQ to compare Lisp_Objects.
11706
117072008-06-16 Chong Yidong <cyd@stupidchicken.com>
11708
11709 * font.c (font_parse_fcname): Fix handling of unknown-spec string.
11710
117112008-06-16 Juanma Barranquero <lekktu@gmail.com>
11712
11713 * font.c (Ffont_spec): Fix usage in docstring.
11714 (Ffont_face_attributes): Doc fix.
11715
117162008-06-16 Andreas Schwab <schwab@suse.de>
11717
11718 * font.c (Ffont_face_attributes): Fix definition.
11719
117202008-06-16 Jason Rumney <jasonr@gnu.org>
11721
11722 * font.h (font_style_symbolic_from_value): Remove.
11723
11724 * font.c (font_style_symbolic_from_value): Remove.
11725 (font_style_symbolic): Revert to pre 2008-06-13 version.
11726
11727 * w32font.c (w32_to_fc_weight): New function.
11728 (w32font_full_name, logfont_to_fcname): Use it.
11729
117302008-06-16 Kenichi Handa <handa@m17n.org>
11731
11732 * font.c (font_check_object): Delete it.
11733 (font_clear_cache): Check if a font-object is alive.
11734 (font_open_entity): Likewise. Set FONT_OBJLST_INDEX of a
11735 font-object to nil.
11736 (font_close_object): Don't check FONT_CLOSE_OBJECT.
11737 (font_at): Don't call font_check_object.
11738 (Ffont_get): Return a symbol for :weight, :slant, and :width.
11739
117402008-06-16 Katsumi Yamaoka <yamaoka@jpl.org>
11741
11742 * puresize.h (BASE_PURESIZE): Increase to 1230000.
11743
117442008-06-16 Chong Yidong <cyd@stupidchicken.com>
11745
11746 * font.c (font_parse_fcname): Correctly parse KEY=VAL values.
11747
117482008-06-15 Chong Yidong <cyd@stupidchicken.com>
11749
11750 * font.c (font_parse_fcname): Only one decimal point.
11751 (font_unparse_fcname): Handle data in family and foundry indices
11752 as symbols, not strings.
11753 (font_unparse_gtkname, Ffont_face_attributes): New functions.
11754
11755 * xfns.c (Fx_select_font): Give GTK font dialog the default font name.
11756
11757 * font.h (font_unparse_gtkname): Add prototype.
11758
117592008-06-15 Naohiro Aota <nao.aota@gmail.com> (tiny change)
11760
11761 * fontset.c (fontset_pattern_regexp): Escape `+' characters in pattern.
11762
117632008-06-15 Andreas Schwab <schwab@suse.de>
11764
11765 * font.c (font_update_drivers): Fix crash when no drivers match.
11766
117672008-06-15 Stefan Monnier <monnier@iro.umontreal.ca>
11768
11769 * xfns.c (Fx_create_frame): internal-border-width default to 0 for Gtk.
11770 * gtkutil.c (xg_create_frame_widgets): Don't set internal_border_width.
11771
117722008-06-14 Stefan Monnier <monnier@iro.umontreal.ca>
11773
11774 * xdisp.c (syms_of_xdisp): Default underline-minimum-offset to 1.
11775
117762008-06-13 Stefan Monnier <monnier@iro.umontreal.ca>
11777
11778 * process.c (Fserial_process_configure, Fprocess_send_eof):
11779 Use EQ to compare Lisp_Objects.
11780
117812008-06-13 Jason Rumney <jasonr@gnu.org>
11782
11783 * w32fns.c (Fw32_select_font): Remove old font API function.
11784
11785 * w32font.c (logfont_to_fcname): New function.
11786 (Fx_select_font): New font dialog function compatible with
11787 GTK/fontconfig version.
11788
11789 * font.c (font_style_symbolic_from_value): New function.
11790 (font_style_symbolic): Use it.
11791
11792 * font.h (font_style_symbolic_from_value): Declare new function.
11793
117942008-06-13 Juanma Barranquero <lekktu@gmail.com>
11795
11796 * font.c (syms_of_font) <font-weight-table, font-slant-table>:
11797 <font-width-table>: Fix typos in docstrings.
11798
117992008-06-13 Daniel Engeler <engeler@gmail.com>
11800
11801 These changes add serial port access.
11802 * process.c: Add HAVE_SERIAL.
11803 (Fdelete_process, Fprocess_status, Fset_process_buffer)
11804 (Fset_process_filter, Fset_process_sentinel, Fprocess_contact)
11805 (list_processes_1, select_wrapper, Fstop_process)
11806 (Fcontinue_process, Fprocess_send_eof, kill_buffer_processes)
11807 (status_notify): Modify to handle serial processes.
11808 [HAVE_SERIAL] (Fserial_process_configure)
11809 [HAVE_SERIAL] (make_serial_process_unwind, Fmake_serial_process):
11810 New functions.
11811 * process.h (struct Lisp_Process): Add `type'.
11812 * sysdep.c [HAVE_TERMIOS] (serial_open, serial_configure):
11813 New functions.
11814 * w32.c (_sys_read_ahead, sys_read, sys_write): Modify to handle
11815 serial ports.
11816 (serial_open, serial_configure): New functions.
11817 * w32.h: Add FILE_SERIAL.
11818 (struct _child_process): Add ovl_read, ovl_write.
11819
118202008-06-13 Kenichi Handa <handa@m17n.org>
11821
11822 * dispextern.h (enum lface_attribute_index): New member
11823 LFACE_FOUNDRY_INDEX.
11824
11825 * font.c (font_score): Delete arg alternate_families. Check only
11826 weight, slant, width, and size. Ignore the difference of alias
11827 style symbols.
11828 (font_sort_entites): Adjust for the above change. Reflect the
11829 order of font-driver to scores.
11830 (font_list_entities): Don't check alternate_familes here.
11831 (font_clear_prop): Handle foundry.
11832 (font_update_lface): Don't parse "foundry-family" form here.
11833 Handle FONT_FOUNDRY_INDEX.
11834 (font_find_for_lface): Likewise. Handle alternate families here.
11835 If registry is nil, try iso8859-1 and ascii-0.
11836 (font_open_for_lface): Pay attention to size in ENTITY.
11837 (font_open_by_name): Simplify by calling font_load_for_lface.
11838 (free_font_driver_list): Delete it.
11839 (font_update_drivers): Preserve the order of backends.
11840 (syms_of_font): Setting of sort_shift_bits adjusted for the change
11841 of font_score and font_sort_entites.
11842 (font_update_sort_order): Likewise.
11843
11844 * xfaces.c (LFACE_FOUNDRY): New macro.
11845 (check_lface_attrs): Check foundry.
11846 (set_lface_from_font): Don't parse "FOUNDRY-FAMILY" form.
11847 (merge_face_vectors): Check foundry.
11848 (merge_face_ref): Likewise.
11849 (Finternal_set_lisp_face_attribute): Likewise.
11850 (x_update_menu_appearance): Likewise.
11851 (Finternal_get_lisp_face_attribute): Likewise.
11852 (lface_hash): Likewise.
11853 (lface_same_font_attributes_p): Likewise.
11854 (x_supports_face_attributes_p): Likewise.
11855 (tty_supports_face_attributes_p): Likewise.
11856 (Finternal_set_alternative_font_family_alist): Intern strings.
11857 (Finternal_set_alternative_font_registry_alist): Downcase strings.
11858 (realize_default_face): Set LFACE_FOUNDRY (lface).
11859
11860 * xfns.c (Fx_create_frame, x_create_tip_frame): Register X
11861 font-driver at first.
11862
11863 * ftfont.c (ftfont_font_format) [! FC_FONTFORMAT]: Declare "int len;".
11864
118652008-06-12 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
11866
11867 * lread.c (Fload): Use xfree, not free on saved_doc_string.
11868
118692008-06-12 Jim Meyering <meyering@redhat.com>
11870
11871 Make unexec_free handle NULL the same way free does.
11872 * unexmacosx.c (unexec_free): Ignore a NULL argument.
11873
118742008-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
11875
11876 * character.h (CHAR_TO_BYTE_SAFE): New macro.
11877 * character.c (Fmultibyte_char_to_unibyte): Obey the docstring.
11878 * regex.c (RE_CHAR_TO_UNIBYTE): Use the new macro.
11879 (WEAK_ALIAS): Simplify.
11880 * syntax.c (skip_chars): Don't mark non-byte chars in the fastmap
11881 when searching a unibyte buffer.
11882
118832008-06-12 Chong Yidong <cyd@stupidchicken.com>
11884
11885 * xfns.c (Fx_select_font): Rename from x-font-dialog.
11886
118872008-06-12 Juanma Barranquero <lekktu@gmail.com>
11888
11889 * w32font.c: Include ctype.h.
11890
118912008-06-11 Jason Rumney <jasonr@gnu.org>
11892
11893 * w32font.c (w32font_encode_char): Detect missing glyphs that are
11894 misreported as space.
11895 (add_font_entity_to_list): Support unicode-bmp and unicode-sip
11896 as aliases for registry iso10646-1.
11897
118982008-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
11899
11900 * buffer.c (clone_per_buffer_values): Skip `name'.
11901
119022008-06-11 Chong Yidong <cyd@stupidchicken.com>
11903
11904 * font.c (font_parse_fcname): Fix last change; accept decimal
11905 points in font size.
11906
119072008-06-10 Jason Rumney <jasonr@gnu.org>
11908
11909 * w32uniscribe.c (add_opentype_font_name_to_list):
11910 Skip non unicode fonts.
11911
119122008-06-10 Chong Yidong <cyd@stupidchicken.com>
11913
11914 * xfns.c (Fx_font_dialog): New function.
11915
11916 * gtkutil.c (xg_dialog_response_cb): Rename from
11917 xg_file_response_callback.
11918 (pop_down_dialog): Rename from pop_down_file_dialog.
11919 (xg_get_file_name): Callers changed.
11920 (xg_get_font_name): New function.
11921
11922 * gtkutil.h (xg_get_font_name): Insert prototype.
11923
119242008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
11925
11926 * xdisp.c (underline_minimum_offset): Rename from xterm.c's
11927 x_underline_minimum_display_offset.
11928 (syms_of_xdisp): Declare it here rather than in xterm.c.
11929 * dispextern.h (underline_minimum_offset): Declare it.
11930 * w32term.c (x_draw_glyph_string): Use it.
11931 * xterm.c (x_underline_minimum_display_offset): Move to xdisp.c.
11932 (syms_of_xterm): Don't declare it any more.
11933 (x_draw_glyph_string): Adjust to the new name.
11934
119352008-06-10 David De La Harpe Golden <david@harpegolden.net>
11936
11937 * xterm.c (x_underline_minimum_display_offset): New var.
11938 (x_draw_glyph_string): Use it.
11939 (syms_of_xterm): Declare it.
11940
119412008-06-10 Chong Yidong <cyd@stupidchicken.com>
11942
11943 * font.c (font_parse_fcname): Accept GTK-style font names too.
11944
119452008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
11946
11947 * dired.c (file_name_completion): Don't return t if the match is exact
11948 but with different capitalization.
11949 * minibuf.c (Ftry_completion): Simplify.
11950
11951 * window.c (Vwindow_point_insertion_type): New var.
11952 (set_window_buffer): Use it.
11953 (syms_of_window): Init and export it to Lisp.
11954
119552008-06-10 Kenichi Handa <handa@m17n.org>
11956
11957 * font.h (font_intern_prop): Prototype adjusted.
11958
11959 * font.c (font_intern_prop): New arg force_symbol.
11960 (font_parse_xlfd, font_parse_fcname, font_parse_family_registry):
11961 Adjust for the change of font_intern_prop.
11962
11963 * ftfont.c (ftfont_pattern_entity):
11964 * w32font.c (add_font_name_to_list, w32_enumfont_pattern_entity)
11965 (w32_registry):
11966 * w32uniscribe.c (add_opentype_font_name_to_list): Adjust for
11967 the change of font_intern_prop.
11968
119692008-06-09 Juanma Barranquero <lekktu@gmail.com>
11970
11971 * w32menu.c (digest_single_submenu): Declare extern.
11972
119732008-06-09 Jason Rumney <jasonr@gnu.org>
11974
11975 * w32term.c (x_make_frame_visible): Use alternate restore flags.
11976
11977 * w32menu.c (Fx_popup_menu): Unwind protect while building menu.
11978 (parse_single_submenu): Remove.
11979 (digest_single_submenu): Remove.
11980 (syms_of_w32menu): Don't initialise variables that have moved
11981 to menu.c.
11982 (set_frame_menubar): Sync with version in xmenu.c.
11983 (w32_menu_show): Sync with xmenu_show in xmenu.c.
11984
11985 * menu.c (single_keymap_panes, push_menu_pane, push_menu_item):
11986 Make static again.
11987
119882008-06-09 Jason Rumney <jasonr@gnu.org>
11989
11990 Changes to w32 files related to the move of common menu code
11991 to menu.c on 2008-06-08 by Chong Yidong.
11992
11993 * menu.c [HAVE_NTGUI]: Include w32term.h, move widget related
11994 defs to w32gui.h.
11995 (single_keymap_panes, push_menu_item, push_menu_pane):
11996 Make globally visible.
11997
11998 * w32menu.c (enum button_type, widget_value, local_heap, local_alloc)
11999 (local_free, malloc_widget_value, free_widget_value)
12000 (MENU_ITEMS_ITEM_NAME, MENU_ITEMS_ITEM_ENABLE, MENU_ITEMS_ITEM_VALUE)
12001 (MENU_ITEMS_ITEM_EQUIV_KEY, MENU_ITEMS_ITEM_DEFINITION)
12002 (MENU_ITEMS_ITEM_TYPE, MENU_ITEMS_ITEM_SELECTED, MENU_ITEMS_ITEM_HELP)
12003 (MENU_ITEMS_ITEM_LENGTH, enum menu_item_idx): Remove defs.
12004 (menu_items, menu_items_allocated, menu_items_used)
12005 (menu_items_n_panes, menu_items_submenu_depth): Remove global vars.
12006 (init_menu_items, finish_menu_items, discard_menu_items)
12007 (grow_menu_items, push_submenu_start, push_submenu_end)
12008 (push_left_right_boundary, push_menu_pane, push_menu_item)
12009 (keymap_panes, single_keymap_panes, list_of_panes, list_of_items)
12010 (free_menubar_widget_tree_value, parse_single_submenu)
12011 (update_submenu_strings): Remove functions.
12012 (xmalloc_widget_value): Remove and declare extern.
12013
12014 * makefile.w32-in ($(SRC)/menu.$(O)): New target.
12015 (OBJ1): Build it.
12016
12017 * w32gui.h (widget_value, XtPointer, Boolean, enum button_type)
12018 (local_heap, local_alloc, local_free, malloc_widget_value)
12019 (free_widget_value): Define here.
12020
120212008-06-09 Kenichi Handa <handa@m17n.org>
12022
12023 * font.h (Qascii_0): Extern it.
12024
12025 * font.c (Qascii_0): New variable.
12026 (syms_of_font): DEFSYM it.
12027 (font_open_by_name): If the registry "iso8859-1" fails, try also
12028 "ascii-0".
12029
12030 * ftfont.c (ftfont_spec_pattern): Accept the registry `ascii-0'.
12031
120322008-06-08 Kenichi Handa <handa@m17n.org>
12033
12034 * .gdbinit (xfont): New command.
12035
120362008-06-08 Andreas Schwab <schwab@suse.de>
12037
12038 * menu.c [HAVE_X_WINDOWS]: Include "xterm.h".
12039 * Makefile.in (menu.o): Update dependencies.
12040
12041 * Makefile.in (obj): Always add menu.o.
12042 * emacs.c (main): Always call syms_of_menu.
12043 * keyboard.h: Remove extra #ifdef HAVE_X_WINDOW.
12044
120452008-06-08 Chong Yidong <cyd@stupidchicken.com>
12046
12047 * Makefile.in: Compile menu.c.
12048
12049 * lisp.h: Declare syms_of_menu.
12050
12051 * emacs.c (main): Call syms_of_menu.
12052
12053 * keyboard.h: Relocate platform-independent menu definitions from
12054 xmenu.c.
12055
12056 * menu.c: New file. Relocate platform-independent menu
12057 definitions from xmenu.c. Suggested by Adrian Robert.
12058
12059 * xmenu.c: Remove platform-independent menu definitions.
12060 (menu_items, menu_items_inuse, menu_items_allocated)
12061 (menu_items_used, menu_items_n_panes)
12062 (menu_items_submenu_depth): Move to keyboard.h.
12063 (init_menu_items, finish_menu_items, unuse_menu_items)
12064 (discard_menu_items, restore_menu_items, save_menu_items)
12065 (grow_menu_items, push_submenu_start, push_submenu_end)
12066 (push_left_right_boundary, push_menu_pane, push_menu_item)
12067 (keymap_panes, single_keymap_panes, single_menu_item)
12068 (list_of_panes, list_of_items, find_and_call_menu_selection)
12069 (xmalloc_widget_value, free_menubar_widget_value_tree)
12070 (parse_single_submenu, digest_single_submenu)
12071 (update_submenu_strings): Move to menu.c.
12072
120732008-06-07 Stefan Monnier <monnier@iro.umontreal.ca>
12074
12075 * dispnew.c (Flast_nonminibuf_frame): Handle the NULL case.
12076
120772008-06-06 Miles Bader <miles@gnu.org>
12078
12079 * xdisp.c (x_produce_glyphs): Calculate tab width based on current
12080 face, not frame default.
12081
120822008-06-05 Martin Rudalics <rudalics@gmx.at>
12083
12084 * window.c (pop_up_windows, pop_up_frames)
12085 (display_buffer_reuse_frames, Vpop_up_frame_function)
12086 (Vdisplay_buffer_function, Veven_window_heights)
12087 (Vspecial_display_buffer_names, Vspecial_display_regexps)
12088 (Vspecial_display_function, Vsame_window_buffer_names)
12089 (Vsame_window_regexps, split_height_threshold)
12090 (Vsplit_window_preferred_function): Move those vars to window.el.
12091 (display_buffer_1, Fspecial_display_p, Fsame_window_p)
12092 (Fdisplay_buffer): Move those functions to window.el.
12093 (syms_of_window): Remove corresponding declarations.
12094 (display_buffer): New function.
12095 (temp_output_buffer_show, Fother_window_for_scrolling): Use it.
12096 * dispnew.c (Flast_nonminibuf_frame): New function.
12097 * buffer.c (Fpop_to_buffer): Move to window.el.
12098
120992008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
12100
12101 * data.c (set_internal): Fix up call to let_shadows_buffer_binding_p.
12102
121032008-06-05 Kenichi Handa <handa@m17n.org>
12104
12105 * coding.c (detect_coding): Fix previous change.
12106 (detect_coding_system): Likewise.
12107
121082008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
12109
12110 * character.h (MAKE_CHAR_MULTIBYTE): Check the arg is a (uni)byte.
12111
12112 * keymap.c (Vminibuffer_local_filename_must_match_map):
12113 Rename from Vminibuffer_local_must_match_filename_map.
12114 (syms_of_keymap):
12115 * minibuf.c (Fcompleting_read): Adjust accordingly.
12116 * commands.h: Rename declaration as well.
12117
121182008-06-05 Kenichi Handa <handa@m17n.org>
12119
12120 * font.c (Ffont_spec): Don't use font_parse_family_registry for
12121 family name.
12122 (Ffont_put): Likewise.
12123
12124 * fontset.c (fontset_find_font): Call font_open_for_lface with the
12125 current font-spec.
12126
12127 * xfont.c (xfont_list): Don't set registry to iso8859-1 even if it
12128 is unspecified.
12129
12130 * xfaces.c (realize_x_face): If the font-related face attributes
12131 are the same as those of default face, realize a new fontset from
12132 default->fontset.
12133 (Fx_family_fonts): Use font_parse_family_registry instead of Ffont_put.
12134
121352008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
12136
12137 * xdisp.c (move_it_in_display_line_to): Improve the type of its args.
12138 (move_it_in_display_line): New wrapper.
12139
12140 * window.c (window_scroll_pixel_based_preserve_x)
12141 (window_scroll_preserve_hpos, window_scroll_preserve_vpos): New vars.
12142 (window_scroll_pixel_based, window_scroll_line_based):
12143 Use them to preserve column positions.
12144 (syms_of_window): Initialize them.
12145
12146 * indent.c (Fvertical_motion): Extend first arg to allow passing an
12147 (HPOS . VPOS) pair.
12148
12149 * dispextern.h (move_it_in_display_line): Declare.
12150
121512008-06-05 Juanma Barranquero <lekktu@gmail.com>
12152
12153 * window.c (Fwindow_parameter): Return VALUE, not (PARAMETER . VALUE).
12154 (Fwindow_parameters): Return copy of parameter alist. Doc fix.
12155 (Fset_window_parameter): Return VALUE, not parameter alist. Doc fix.
12156
121572008-06-04 Juanma Barranquero <lekktu@gmail.com>
12158
12159 * window.c (Fset_window_parameter): Doc fix.
12160 (Fwindow_parameters, Fwindow_parameter): Remove redundant check.
12161
121622008-06-04 Joakim Verona <joakim@verona.se>
12163
12164 * window.h (struct window): Add new member window_parameters.
12165
12166 * window.c (Fwindow_parameters, Fwindow_parameter)
12167 (Fset_window_parameter): New defuns.
12168 (syms_of_window): Defsubr the new defuns.
12169 (make_window): Initialize window_parameters to nil.
12170
121712008-06-04 John Paul Wallington <jpw@pobox.com>
12172
12173 * eval.c (Fdefmacro): Doc fix.
12174
121752008-06-04 Kenichi Handa <handa@m17n.org>
12176
12177 * coding.c (detect_coding): Fix handling of coding->head_ascii.
12178 Be sure to call setup_coding_system when we find a proper coding system.
12179 (detect_coding_system): Fix handling of coding->head_ascii.
12180
121812008-06-03 Andreas Schwab <schwab@suse.de>
12182
12183 * font.c (font_prop_validate_spacing): Fix last change.
12184
121852008-06-03 Kenichi Handa <handa@m17n.org>
12186
12187 * font.c (font_prop_validate_spacing): Handle uppercase symbols.
12188 (font_parse_fcname): Fix handling of unknown key.
12189
12190 * xfont.c (xfont_list): Try an alias.
12191
12192 * charset.c (char_charset): Return NULL if the arg charset_list is
12193 specified and C doesn't belong to any of them.
12194
121952008-06-02 Chip Coldwell <coldwell@redhat.com>
12196
12197 * font.c (font_pixel_size): Don't take cdr of an integer.
12198
121992008-06-02 Jim Meyering <meyering@redhat.com>
12200
12201 Make "xfree (NULL)" a no-op; remove useless if-before-xfree.
12202 * alloc.c (xfree): Return right away for a NULL arg.
12203 * lread.c (nosuffix): Remove now-useless if-before-xfree tests.
12204 * gtkutil.c (xg_gtk_scroll_destroy): Likewise.
12205 * mac.c (create_apple_event_from_event_ref): Likewise.
12206 (create_apple_event_from_drag_ref, cfstring_create_normalized):
12207 Likewise.
12208 * doprnt.c (doprnt1): Likewise.
12209 * frame.c (frame): Likewise.
12210 * keyboard.c (wipe_kboard): Likewise.
12211 * macterm.c (x_free_frame_resources, xlfdpat_destroy, XFreePixmap)
12212 (init_font_name_table, mac_unload_font, x_delete_display): Likewise.
12213 * term.c (tty_default_color_capabilities, maybe_fatal)
12214 (delete_tty): Likewise.
12215 * w16select.c (string): Likewise.
12216 * w32.c (w32_get_resource, SET_ENV_BUF_SIZE): Likewise.
12217 * w32bdf.c (w32_free_bdf_font): Likewise.
12218 * w32fns.c (w32_unload_font): Likewise.
12219 * w32font.c (w32font_close): Likewise.
12220 * window.c (size_window): Likewise.
12221 * xselect.c (receive_incremental_selection): Likewise.
12222 * xterm.c (x_free_frame_resources, x_delete_display): Likewise.
12223 * mactoolbox.c (create_apple_event_from_drag_ref): Likewise.
12224 * w32.c (stat): Likewise.
12225
12226 Remove useless if-before-free tests.
12227 * editfns.c (Fset_time_zone_rule): Likewise.
12228 * lread.c (nosuffix): Likewise.
12229 * ralloc.c (get_bloc): Likewise.
12230 * regex.c (reg_free): Likewise.
12231 * xftfont.c (xftfont_open, xftfont_close): Likewise.
12232 * xrdb.c (get_user_app, get_environ_db, x_load_resources): Likewise.
12233 * xsmfns.c (smc_save_yourself_CB): Likewise.
12234
122352008-06-02 Kenichi Handa <handa@m17n.org>
12236
12237 * font.c (font_find_for_lface): Handle float font size.
12238 (font_open_for_lface): Likewise.
12239
12240 * xfaces.c (x_supports_face_attributes_p): Check face->font before
12241 comparing the properties.
12242
122432008-06-01 Jason Rumney <jasonr@gnu.org>
12244
12245 * w32font.c (w32_enumfont_pattern_entity): Use requested registry.
12246 Treat iso10646-1 and Windows DEFAULT_CHARSET specially.
12247 Duplicate iso8859-1 fonts as iso10646-1 if no registry specified.
12248 Don't add empty script list.
12249 (w32_registry): Only map DEFAULT_CHARSET to iso10646-1 here.
12250
122512008-06-01 Dan Nicolaescu <dann@ics.uci.edu>
12252
12253 * Makefile.in (dot, dotdot): Remove, update users.
12254 ".." has been used elsewhere in the file for a long time.
12255 (LIBXT_STATIC): Remove conditional based on unused variable.
12256
122572008-06-01 Miles Bader <miles@gnu.org>
12258
12259 * xfaces.c (Vface_remapping_alist): New variable.
12260 (syms_of_xfaces): Initialize it.
12261 (enum named_merge_point_kind): New type.
12262 (struct named_merge_point): Add `named_merge_point_kind' field.
12263 (push_named_merge_point): Make cycle detection respect different
12264 named-merge-point kinds.
12265 (lface_from_face_name_no_resolve): Rename from `lface_from_face_name'.
12266 Remove face-name alias resolution.
12267 (lface_from_face_name): New definition using
12268 `lface_from_face_name_no_resolve'.
12269 (get_lface_attributes_no_remap): Rename from `get_lface_attributes'.
12270 Call lface_from_face_name_no_resolve instead of lface_from_face_name.
12271 (get_lface_attributes): New definition that layers face-remapping on
12272 top of get_lface_attributes_no_remap. New arg `named_merge_points'.
12273 (lookup_basic_face): New function.
12274 (lookup_derived_face): Pass new last arg to `get_lface_attributes'.
12275 (realize_named_face): Call `get_lface_attributes_no_remap' instead of
12276 `get_lface_attributes'.
12277 (face_at_buffer_position): Use `lookup_basic_face' to lookup
12278 DEFAULT_FACE_ID if necessary. When optimizing the default-face case,
12279 return default_face's face-id instead of the constant DEFAULT_FACE_ID.
12280
12281 * xdisp.c (init_iterator): Pass base_face_id through
12282 `lookup_basic_face' when we actually use it as a face-id.
12283 (handle_single_display_prop): Use `lookup_basic_face' to lookup
12284 DEFAULT_FACE_ID.
12285
12286 * fontset.c (Finternal_char_font): Use `lookup_basic_face' to
12287 lookup the initial face-id.
12288
12289 * dispextern.h (lookup_basic_face, Vface_remapping_alist): New decls.
12290
122912008-06-01 Juanma Barranquero <lekktu@gmail.com>
12292
12293 * textprop.c (syms_of_textprop) <text-property-default-nonsticky>:
12294 (Fremove_text_properties): Fix typos in docstrings.
12295
122962008-05-31 Kenichi Handa <handa@m17n.org>
12297
12298 * font.c (font_list_entities): Fix the car part of data to be
12299 stored in the cache.
12300
12301 * ftfont.c (ftfont_font_format): Don't use strcasestr.
12302
123032008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
12304
12305 * chartab.c (Foptimize_char_table, optimize_sub_char_table):
12306 Add a `test' argument so another predicate than `equal' can be used.
12307 (map_sub_char_table): Use `eq' rather than `equal' to merge ranges.
12308 (map_char_table): Remove unused vars `c' and `i'.
12309 * lisp.h (Foptimize_char_table): Adjust declaration.
12310 * charset.c (Fclear_charset_maps): Adjust call to Foptimize_char_table.
12311
123122008-05-30 Kenichi Handa <handa@m17n.org>
12313
12314 * font.c (Ffont_info): Define only if HAVE_WINDOW_SYSTEM is defined.
12315 (syms_of_font): Defsubr Sfont_info only if HAVE_WINDOW_SYSTEM is
12316 defined.
12317
123182008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
12319
12320 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
12321 (Fmake_variable_frame_local): Disallow mixing buffer-local and
12322 frame-local settings for the same variable.
12323
123242008-05-30 Kenichi Handa <handa@m17n.org>
12325
12326 * fontset.c (Ffont_info): Move to font.c.
12327 (syms_of_fontset): Delete defsubr of Sfont_info.
12328
12329 * font.c (font_style_to_value, font_score): Delete casting of the
12330 args to xstcasecmp.
12331 (register_font_driver): Increment num_font_drivers only when
12332 registering the driver globally.
12333 (Ffont_info): Move from fontset.c. Handle a font object too.
12334 (syms_of_font): Defsubr Sfont_info.
12335
123362008-05-29 Kenichi Handa <handa@m17n.org>
12337
12338 * coding.h (enum define_coding_utf8_arg_index): New enum.
12339 (enum coding_attr_index): Change coding_attr_utf_16_bom to
12340 coding_attr_utf_bom.
12341 (enum utf_bom_type): Rename from utf_16_bom_type.
12342 (struct utf_16_spec): Adjust for the above change.
12343 (struct coding_system): Add utf_8_bom in `spec' union.
12344
12345 * coding.c (CODING_UTF_8_BOM): New macro.
12346 (enum coding_category): Delete coding_category_utf_8, add
12347 coding_category_utf_8_auto, coding_category_utf_8_nosig, and
12348 coding_category_utf_8_sig.
12349 (CATEGORY_MASK_UTF_8): Delete it.
12350 (CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG)
12351 (CATEGORY_MASK_UTF_8_SIG): New macros.
12352 (CATEGORY_MASK_ANY): Delete CATEGORY_MASK_UTF_8, add
12353 CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG, and
12354 CATEGORY_MASK_UTF_8_SIG.
12355 (CATEGORY_MASK_UTF_8): New macro.
12356 (UTF_BOM, UTF_8_BOM_1, UTF_8_BOM_2, UTF_8_BOM_3): New macros.
12357 (detect_coding_utf_8): Check BOM.
12358 (decode_coding_utf_8, encode_coding_utf_8): Handle BOM.
12359 (decode_coding_utf_16): Adjust for the change of enum utf_bom_type.
12360 (encode_coding_utf_16): Likewise.
12361 (setup_coding_system): Likewise. Set CODING_UTF_8_BOM (coding).
12362 (detect_coding, detect_coding_system): Handle utf-8-auto.
12363 (Fdefine_coding_system_internal): Handle `bom' property for utf-8.
12364 (syms_of_coding): Fix setting up of Vcoding_category_table.
12365
123662008-05-29 Stefan Monnier <monnier@iro.umontreal.ca>
12367
12368 * process.c (Faccept_process_output): If `millisec' is non-nil,
12369 `seconds' default to 0.
12370 (wait_reading_process_output): Also return non-nil if we read output
12371 from a non-running process.
12372
123732008-05-29 Jason Rumney <jasonr@gnu.org>
12374
12375 * w32font.c (w32font_open_internal): Prefer truetype fonts unless
12376 `raster' specified.
12377 (add_font_entity_to_list): Allow non-opentype truetype fonts back
12378 in the uniscribe backend, but disallow any font that has no
12379 unicode subrange support.
12380
123812008-05-29 Juanma Barranquero <lekktu@gmail.com>
12382
12383 * xfaces.c (Fx_list_fonts, Finternal_copy_lisp_face):
12384 Fix typos in docstrings.
12385
123862008-05-29 Kenichi Handa <handa@m17n.org>
12387
12388 * xfaces.c (Fx_list_fonts): Make it return a list of font names.
12389 (Fx_family_fonts): Set frame correctly.
12390
123912008-05-28 Jason Rumney <jasonr@gnu.org>
12392
12393 * w32term.c (x_draw_glyph_string): Use clipmask if specified.
12394
123952008-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
12396
12397 * fileio.c (Fwrite_region): Delay the defaulting to beg&z to after
12398 calling build_annotations.
12399
124002008-05-28 Juanma Barranquero <lekktu@gmail.com>
12401
12402 * coding.c (Fdecode_coding_region, Fencode_coding_region)
12403 (Fencode_coding_string):
12404 (syms_of_coding) <coding-system-for-read, coding-system-for-write>:
12405 <latin-extra-code-table>: Fix typos in docstrings.
12406 (syms_of_coding) <coding-system-alist>: Doc fix.
12407 (syms_of_coding) <translation-table-for-input>: Reflow docstring.
12408
124092008-05-28 Kenichi Handa <handa@m17n.org>
12410
12411 * fontset.c (Ffont_info): Don't call font_close_object.
12412
12413 * font.c (font_parse_family_registry): Use Ffont_put to validate
12414 foundry and family.
12415 (font_delete_unmatched): Don't check spacing.
12416 (font_list_entities): Add spacing to the spec to list fonts.
12417
12418 * ftfont.c (ftfont_spec_pattern): Don't set FC_SPACING to pattern.
12419 (ftfont_list): Check spacing here. Don't include FC_CHARSET in objset.
12420
12421 * coding.c (encode_coding_raw_text): Fix previous change.
12422 (encode_coding_object): When the dst_object is a buffer and is
12423 different from src_object, move gap to PT.
12424
124252008-05-27 Chong Yidong <cyd@stupidchicken.com>
12426
12427 * xterm.c (x_draw_glyph_string): If a clipmask is specified, use it.
12428
124292008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
12430
12431 * coding.c (encode_coding_raw_text): Set coding->produced_char for
12432 all branches. Compute it differently.
12433
12434 * xdisp.c [!HAVE_WINDOW_SYSTEM]: Include font.h for --without-x.
12435
124362008-05-27 Juanma Barranquero <lekktu@gmail.com>
12437
12438 * w32font.c (compute_metrics): Rewrite an "else { if () ... else ... }"
12439 into "else if () ... else ...".
12440
124412008-05-27 Jason Rumney <jasonr@gnu.org>
12442
12443 * w32font.c (w32font_open_internal): Determine if glyph indices
12444 are likely to work here.
12445
124462008-05-27 Chong Yidong <cyd@stupidchicken.com>
12447
12448 * xdisp.c (draw_glyphs): If mouse-highlighting is on, attempt to
12449 draw overlap glyphs with appropriate highlighting.
12450
124512008-05-27 Kenichi Handa <handa@m17n.org>
12452
12453 * xfont.c (xfont_open): Fix calculation of font->average_width.
12454
124552008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
12456
12457 * casefiddle.c (casify_object): Try to guess better whether the
12458 argument is a byte or a char.
12459
124602008-05-26 Andreas Schwab <schwab@suse.de>
12461
12462 * xselect.c (x_reply_selection_request): Properly handle format == 32.
12463 Always send multiples of format size.
12464
12465 * xterm.c (x_set_frame_alpha): Fix type mismatch.
12466
124672008-05-26 Jason Rumney <jasonr@gnu.org>
12468
12469 * w32font.c (w32font_text_extents): Zero whole metrics struct first.
12470 (compute_metrics): Don't set failure if we just cleared the cache.
12471 (w32_weight_table): Remove unused variable.
12472 (w32_enumfont_pattern_entity): Use FONT_SPACING_CHARCELL for
12473 backwards compatibility.
12474
124752008-05-25 Kenichi Handa <handa@m17n.org>
12476
12477 * w32term.c (x_draw_glyph_string):
12478 * xterm.c (x_draw_glyph_string): Fix calculation of underline position.
12479
12480 * xfaces.c: Delete unused function prototypes.
12481 (xstrlwr, font_frame): Delete them.
12482 (clear_face_cache): Delete unused variable.
12483
12484 * xftfont.c (xftfont_open): Delete unused variable.
12485 If underline_thickness is not 1, adjust underline_position.
12486
12487 * ftxfont.c (ftxfont_open): Delete unused variable.
12488
12489 * fontset.c (face_for_char): Optimize for the case of no charset
12490 property.
12491
12492 * font.c (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE)
12493 (check_gstring, check_otf_features, otf_list, otf_tag_symbol)
12494 (otf_open, font_otf_capability, generate_otf_features)
12495 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
12496 Comment out by surrounding "#if 0" and "#endif" for the moment.
12497 (Ffont_drive_otf, Ffont_otf_alternates): Likewise.
12498 (syms_of_font): Codes for accessing above commented out.
12499
125002008-05-24 Eli Zaretskii <eliz@gnu.org>
12501
12502 * w32proc.c: Include dispextern.h.
12503
12504 * w32.c: Include dispextern.h.
12505
125062008-05-23 Juanma Barranquero <lekktu@gmail.com>
12507
12508 * charset.c (Fencode_char, Fsplit_char): Doc fixes.
12509 (Fget_unused_iso_final_char, Fdecode_char, Fiso_charset):
12510 Fix typos in docstrings.
12511
125122008-05-23 Jason Rumney <jasonr@gnu.org>
12513
12514 * xsmfns.c: Remove includes that are already included by config.h.
12515
125162008-05-23 Kenichi Handa <handa@m17n.org>
12517
12518 * charset.c (Qemacs, charset_emacs): New variables.
12519 (char_charset): Fix for non-Unicode characters.
12520 (syms_of_charset): Define charset_emacs.
12521
12522 * w32term.c (x_draw_glyph_string): Be sure to update
12523 s->underline_thickness and s->underline_position. Be sure to draw
12524 underline within the current line area.
12525
12526 * xterm.c (x_draw_glyph_string): Be sure to update
12527 s->underline_thickness and s->underline_position. Be sure to draw
12528 underline within the current line area.
12529
12530 * fontset.c: Delete unused variables and add casting for char *
12531 throughout the file.
12532 (fontset_font): Try the fallback fonts of the current fontset
12533 before consulting the default fontset.
12534
12535 * ftfont.c (ftfont_spec_pattern): Free charset if necessary.
12536
12537 * xfont.c (xfont_list_pattern): Free names returned from XListFonts.
12538
125392008-05-22 Jason Rumney <jasonr@gnu.org>
12540
12541 * font.c: Don't include strings.h.
12542
12543 * dispextern.h, xfaces.c (xstrcasecmp): Rename from xstricmp.
12544
12545 * dosfns.c, fileio.c, font.c, fontset.c, image.c, macfns.c:
12546 * macterm.c, process.c, w32.c, w32fns.c, w32proc.c, xfaces.c:
12547 * xfns.c, xfont.c: All callers of stricmp and strcasecmp changed
12548 to call xstrcasecmp.
12549
12550 * xfont.c (xfont_list_pattern, compare_font_names): Use xstrcasecmp.
12551
12552 * fontset.c (fs_query_fontset): Use xstrcasecmp.
12553
12554 * font.c (font_style_to_value, font_score): Use xstrcasecmp.
12555
12556 * dosfns.c (msdos_stdcolor_idx): Use xstrcasecmp.
12557
125582008-05-22 Kenichi Handa <handa@m17n.org>
12559
12560 * puresize.h (BASE_PURESIZE): Increase to 1220000.
12561
12562 * font.c (font_prop_validate_style): Adjust for the format
12563 change of font_style_table.
12564
12565 * w32font.c (w32font_open_internal): Call Ffont_xlfd_name with
12566 two args.
12567
12568 * xfaces.c (x_update_menu_appearance): Call Ffont_xlfd_name with
12569 two args.
12570
125712008-05-22 Stefan Monnier <monnier@iro.umontreal.ca>
12572
12573 * minibuf.c (keys_of_minibuf): Delete.
12574 * lisp.h (keys_of_minibuf): Delete.
12575 * emacs.c (main): Don't call keys_of_minibuf.
12576
125772008-05-22 Kenichi Handa <handa@m17n.org>
12578
12579 * ftfont.c (ftfont_resolve_generic_family): Rename from
12580 ftfont_list_generic_family. Return a single family for each
12581 generic family.
12582 (ftfont_spec_pattern): Add FC_FAMILY to pattern.
12583 (ftfont_list): Adjust for the change of ftfont_resolve_generic_family.
12584 Call font_add_log.
12585 (ftfont_match): Call font_add_log.
12586
12587 * font.h (Ffont_xlfd_name): EXFUN adjusted.
12588 (FONT_DEBUG): Define it.
12589 (font_add_log): Extern it.
12590 (font_assert): Rename from xassert.
12591
12592 * xfont.c (xfont_get_pcm): Change xassert to font_assert.
12593 (xfont_list_family): Call font_add_log.
12594 (xfont_match): Likewise.
12595 (memq_no_quit): Delete.
12596
12597 * fontset.c (fontset_from_font, Ffontset_info): Add the 2nd arg in
12598 call of Ffont_xlfd_name.
12599
12600 * xfaces.c (struct table_entry, slant_table, weight_table)
12601 (swidth_table): Move to font.c.
12602
12603 * font.c: Checking of FONT_DEBUG is moved to font.h. All calls of
12604 xassert are changed to font_assert. Delete many unused variables.
12605 (Vfont_weight_table, Vfont_slant_table, Vfont_width_table):
12606 New variables.
12607 (struct table_entry): Move from xfaces.c and modified.
12608 (weight_table, slant_table, width_table): Move from xfaces.c and
12609 contents adjusted for the change of struct table_entry.
12610 (font_style_to_value, font_style_symbolic): Adjust for the
12611 format change of font_style_table.
12612 (font_parse_family_registry): Don't overwrite existing foundry and
12613 family of font_spec.
12614 (font_score): Fix calculation of diff for sizes.
12615 (font_sort_entites): Call font_add_log.
12616 (font_delete_unmatched): Return a newly created list.
12617 (font_list_entities): Fix previous change. Call font_add_log.
12618 (font_matching_entity, font_open_entity, font_close_entity):
12619 Call font_add_log.
12620 (Ffont_xlfd_name): New arg FOLD-WILDCARDS.
12621 (Finternal_set_font_style_table): Delete.
12622 (BUILD_STYLE_TABLE): New macro.
12623 (build_style_table): New function.
12624 (Vfont_log, font_log_env_checked): New variables.
12625 (font_add_log): New function.
12626 (syms_of_font): Delete defsubr Sinternal_set_font_style_table.
12627 Declare Lisp variables "font-weight-table", "font-slant-table",
12628 "font-width-table", and "font-log". Initialize font_style_table.
12629
126302008-05-21 Dan Nicolaescu <dann@ics.uci.edu>
12631
12632 * xterm.c (x_set_frame_alpha): Move declarations before statements.
12633
126342008-05-21 Seiji Zenitani <zenitani@mac.com>
12635 Ryo Yoshitake <ryo@shiftmode.net>
12636
12637 * frame.c (Qalpha): Add a new frame parameter `alpha'.
12638 (Vframe_alpha_lower_limit): New variable.
12639 (x_set_alpha): New function.
12640
12641 * frame.h (Qalpha, Vframe_parameter_lower_limit): Export them.
12642
12643 * xfns.c (x-create-frame, Qalpha):
12644 Initialize the frame parameter `alpha'.
12645 * xterm.c (OPAQUE, OPACITY): New.
12646 (x_set_frame_alpha): New function.
12647 (frame_highlight, frame_unhighlight): Call x_set_frame_alpha.
12648
12649 * macfns.c (mac_frame_parm_handlers): A null handler for x_set_alpha.
12650 * w32fns.c (w32_frame_parm_handlers): Likewise.
12651
126522008-05-20 Jason Rumney <jasonr@gnu.org>
12653
12654 * w32font.c (add_font_entity_to_list): Don't add non-opentype
12655 truetype fonts to opentype list.
12656
126572008-05-20 Juanma Barranquero <lekktu@gmail.com>
12658
12659 * fontset.c (Ffontset_info): Doc fix.
12660 (syms_of_fontset) <font-encoding-charset-alist, use-default-ascent>:
12661 <ignore-relative-composition>: Fix typos in docstrings.
12662
12663 * font.c (syms-of-font) <font-encoding-alist>:
12664 (Ffontp, Ffont_make_gstring): Fix typos in docstrings.
12665 (Flist_fonts, Ffont_family_list, Ffont_fill_gstring, Fquery_font)
12666 (Ffont_otf_alternates): Doc fixes.
12667
126682008-05-20 Kenichi Handa <handa@m17n.org>
12669
12670 * Makefile.in (FONTSRC): Delete it. Change all $(FONTSRC) to
12671 font.h through out the file.
12672 (FONT_DRIVERS): Rename from FONTOBJ.
12673 (obj): Change $(FONTOBJ) to $(FONT_DRIVERS). Add font.o.
12674 (SOME_MACHINE_OBJECTS): Change $(FONTOBJ) to $(FONT_DRIVERS).
12675
12676 * emacs.c (main): Call syms_of_font unconditionally.
12677
12678 * font.h (find_font_encoding): Extern it.
12679
12680 * font.c (Vfont_encoding_alist, find_font_encoding): Move from
12681 fontset.c.
12682 (font_pixel_size) [! HAVE_WINDOW_SYSTEM]: Return 1.
12683 (font_open_entity): Update FRAME_X_DISPLAY_INFO (f)->n_fonts,
12684 FRAME_SMALLEST_CHAR_WIDTH (f), and FRAME_SMALLEST_FONT_HEIGHT (f)
12685 only when HAVE_WINDOW_SYSTEM is defined.
12686 (font_close_object): Update FRAME_X_DISPLAY_INFO (f)->n_fonts only
12687 when HAVE_WINDOW_SYSTEM is defined.
12688
12689 * fontset.c (Vfont_encoding_alist, find_font_encoding): Move to font.c.
12690 (syms_of_fontset): Move declaration of font-encoding-alist to font.c.
12691
12692 * xfaces.c: Include font.h unconditionally.
12693 (merge_face_ref, merge_face_vectors)
12694 (Finternal_set_lisp_face_attribute): Cancel the previous change.
12695
126962008-05-20 Stefan Monnier <monnier@iro.umontreal.ca>
12697
12698 * xdisp.c (select_frame_for_redisplay): Adjust for last change to
12699 indirect_variable.
12700 * eval.c (lisp_indirect_variable): New fun.
12701 (Fuser_variable_p): Use it.
12702
127032008-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
12704
12705 * lisp.h (indirect_variable):
12706 * data.c (indirect_variable, let_shadows_buffer_binding_p):
12707 Use Lisp_Symbol pointers rather than Lisp_Object.
12708 Adjust callers.
12709 * buffer.c (buffer_slot_type_mismatch): Use wrong-type-argument.
12710 To this end, change calling-convention.
12711
12712 * minibuf.c (Finternal_complete_buffer): Only strip out hidden buffers
12713 if some non-hidden buffers are selected by string&pred.
12714
127152008-05-19 Chong Yidong <cyd@stupidchicken.com>
12716
12717 * process.c (wait_reading_process_output): Always check status
12718 when in batch mode.
12719
127202008-05-19 Kenichi Handa <handa@m17n.org>
12721
12722 * font.c (font_list_entities): Fix handling of cache.
12723 (font_matching_entity): Likewise.
12724
12725 * ftfont.c (cs_iso8859_1): Delete.
12726 (ft_face_cache): New variable.
12727 (struct ftfont_info): New member fc_charset_idx.
12728 (ftfont_build_basic_charsets): Delete.
12729 (fc_charset_table): New variable.
12730 (ftfont_pattern_entity): New arg fc_charset_idx. Store (FILENAME
12731 . FC_CHARSET_IDX) as :font-entity property in the font entity.
12732 Callers changed.
12733 (ftfont_lookup_cache, ftfont_get_charset): New functions.
12734 (ftfont_spec_pattern): New argument fc_charset_idx.
12735 Check registry more rigidly. Change callers.
12736 (ftfont_open, ftfont_close, ftfont_has_char): Adjust for the
12737 change of :font-entity property of the font.
12738
12739 * xftfont.c (xftfont_open): Adjust for the change of :font-entity
12740 property of the font.
12741
127422008-05-18 Juanma Barranquero <lekktu@gmail.com>
12743
12744 * coding.c (Fcoding_system_p): Rename argument to match docstring.
12745 (Funencodable_char_position, Fcheck_coding_systems_region)
12746 (Fdecode_coding_string, Fencode_coding_string): Fix typos in docstrings.
12747 (Fdetect_coding_region, Fdetect_coding_string, Fencode_coding_region)
12748 (Ffind_operation_coding_system, Fset_coding_system_priority)
12749 (Fcoding_system_eol_type): Doc fixes.
12750
127512008-05-17 Glenn Morris <rgm@gnu.org>
12752
12753 * sysdep.c (child_setup_tty): Handle systems with NLDLY, without FFDLY.
12754
127552008-05-16 Eli Zaretskii <eliz@gnu.org>
12756
12757 * dired.c (Ffile_attributes): Shut up GCC warnings about st_uid
12758 and st_gid.
12759
12760 * frame.c (Fdelete_frame): Don't call font_update_drivers if
12761 HAVE_WINDOW_SYSTEM is not defined.
12762
12763 * xfaces.c (merge_face_ref, merge_face_vectors)
12764 (Finternal_set_lisp_face_attribute): Use FONT_*_INDEX only when
12765 HAVE_WINDOW_SYSTEM is defined.
12766 (Fface_font): Fix non-HAVE_WINDOW_SYSTEM case.
12767
127682008-05-16 Stefan Monnier <monnier@iro.umontreal.ca>
12769
12770 * keyboard.c (parse_menu_item): Do not cache key shortcut any more.
12771
127722008-05-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12773
12774 * macterm.c (x_draw_relief_rect): Remove unused variable `dpy'.
12775
127762008-05-15 Kenichi Handa <handa@m17n.org>
12777
12778 * font.c (font_find_for_lface): Reflect LFACE_FONT in the font
12779 preference.
12780
127812008-05-15 Glenn Morris <rgm@gnu.org>
12782
12783 * emacs.c (USAGE1, standard_args): Remove -disable-font-backend.
12784
127852008-05-15 Chong Yidong <cyd@stupidchicken.com>
12786
12787 * fns.c (init_fns): Don't initialize weak_hash_tables here.
12788 (init_weak_hash_tables): New fun. Initialize weak_hash_tables.
12789
12790 * alloc.c (init_alloc_once): Call init_weak_hash_tables.
12791
127922008-05-15 Kenichi Handa <handa@m17n.org>
12793
12794 * ftfont.c (ftfont_list): Downcase family name to check generic
12795 families.
12796
12797 * xfaces.c (Finternal_set_lisp_face_attribute): Be sure to make a
12798 font-spec for QCfont value.
12799
12800 * fontset.c (Fnew_fontset): Call font_unparse_xlfd with 256-byte
12801 buffer. Check the return value of it.
12802
128032008-05-14 Jason Rumney <jasonr@gnu.org>
12804
12805 * w32term.c (w32_get_glyph_overhangs): Remove.
12806 (w32_redisplay_interface): Use x_get_glyph_overhangs instead.
12807
128082008-05-14 Kenichi Handa <handa@m17n.org>
12809
12810 * font.c (font_prop_validate): Make nil a valid value.
12811 (font_clear_cache): Check if the cached vector of entities is nil
12812 or not.
12813
128142008-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12815
12816 * emacs.c (main_thread): Conditionalize on
12817 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
12818 (main) [FORWARD_SIGNAL_TO_MAIN_THREAD]: Initialize it.
12819
12820 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): New define.
12821 (main_thread, SIGNAL_THREAD_CHECK): Conditionalize on
12822 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
12823
128242008-05-14 Kenichi Handa <handa@m17n.org>
12825
12826 * coding.c (detect_coding_iso_2022): Ignore a coding category that
12827 has no corresponding coding system.
12828
128292008-05-14 Jason Rumney <jasonr@gnu.org>
12830
12831 * font.h (struct font) [WINDOWSNT]: Remove codepage member.
12832
12833 * w32font.h (w32font_open_internal): Update declaration.
12834
12835 * w32font.c (w32font_open_internal): Change last argument from
12836 w32font_info struct to font object. Fill in font object from
12837 font_entity. Get Outline metrics if possible. Use them to
12838 calculate underline position and thickness. Use xlfd name as name
12839 property. Don't set codepage.
12840 (w32font_open): Pass font_object to w32font_open_internal. Don't
12841 update dpyinfo->smallest_font_height and dpyinfo->smallest_char_width.
12842 (w32font_draw): Use s->font.
12843 (clear_cached_metrics): Don't clear non-existent blocks.
12844
12845 * w32term.c (w32_compute_glyph_string_overhangs): Don't compute if
12846 font was not found.
12847 (x_draw_glyph_string): Use underline position and thickness from font.
12848
12849 * w32uniscribe.c (uniscribe_open): Pass font_object to
12850 w32font_open_internal.
12851
128522008-05-14 Kenichi Handa <handa@m17n.org>
12853
12854 These changes are to delete all legacy font-handling codes, and
12855 make Emacs use only font-backends.
12856
12857 * Makefile.in: Delete USE_FONT_BACKEND conditionals.
12858 (frame.o, image.o, print.o): Depend on $(FONTSRC).
12859
12860 * makefile.w32-in (WIN32OBJ): Add w32reg.$(O), remove w32bdf.$(O).
12861
12862 * charset.h (Vcharset_non_preferred_head)
12863 (Vcurrent_iso639_language): Extern them.
12864
12865 * charset.c (Vcharset_non_preferred_head): New variable.
12866 (Vcurrent_iso639_language): New variable.
12867 (syms_of_charset): Declare it as a Lisp variable.
12868 (char_charset): Don't check non preferred charsets. As a last
12869 resort, return charset_unicode.
12870 (Fset_charset_priority): Update Vcharset_non_preferred_head.
12871
12872 * composite.c: Throughout the file, delete all USE_FONT_BACKEND
12873 conditionals. Don't check enable_font_backend. Delete all codes
12874 used only when USE_FONT_BACKEND is not defined.
12875
12876 * dispextern.h (struct glyph_string): Change type of `font' to
12877 `struct font *'.
12878 (struct glyph_string): New member underline_position and
12879 underline_thickness.
12880 (enum lface_attribute_index): Remove LFACE_AVGWIDTH_INDEX.
12881 (struct face): Change type of `font' to `struct font *'. Remove
12882 members `font_name', `font_info_id'.
12883 (per_char_metric, encode_char): Delete externs.
12884 (calc_pixel_width_or_height): Adjust the prototype.
12885
12886 * emacs.c (enable_font_backend): Delete extern.
12887 (main): Don't set enable_font_backend. Don't check the command
12888 line argument "-disable-font-backend".
12889
12890 * font.h (Qfont_spec, Qfont_entity, Qfont_object): Extern them.
12891 (enum font_property_index): New members FONT_DPI_INDEX,
12892 FONT_SPACING_INDEX, FONT_AVGWIDTH_INDEX, FONT_NAME_INDEX,
12893 FONT_FULLNAME_INDEX, FONT_FILE_INDEX, FONT_FORMAT_INDEX,
12894 FONT_OBJECT_MAX. Delete FONT_FRAME_INDEX.
12895 (FONT_WEIGHT_NUMERIC, FONT_SLANT_NUMERIC, FONT_WIDTH_NUMERIC)
12896 (FONT_WEIGHT_SYMBOLIC, FONT_SLANT_SYMBOLIC, FONT_WIDTH_SYMBOLIC)
12897 (FONT_WEIGHT_FOR_FACE, FONT_SLANT_FOR_FACE, FONT_WIDTH_FOR_FACE)
12898 (FONT_WEIGHT_NAME_NUMERIC, FONT_SLANT_NAME_NUMERIC)
12899 (FONT_WIDTH_NAME_NUMERIC, FONT_SET_STYLE): New macros.
12900 (struct font_spec, struct font_entity): New structs.
12901 (FONT_ENCODING_NOT_DECIDED): Moved from fontset.h.
12902 (struct font): Many members from old "struct font_info" moved to
12903 here. Members font and entity deleted.
12904 (FONT_SPEC_P, FONT_ENTITY_P, FONT_OBJECT_P, FONTP): Modified for
12905 the new font-related objects.
12906 (CHECK_FONT_SPEC, CHECK_FONT_ENTITY, CHECK_FONT_OBJECT)
12907 (CHECK_FONT_GET_OBJECT): Likewise.
12908 (XFONT_SPEC, XFONT_ENTITY, XFONT_OBJECT, XSETFONT): New macros.
12909 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved from font.h.
12910 (struct font_driver): New members case_sensitive anc check. Type
12911 of the member list and open changed.
12912 (enable_font_backend, font_symbolic_weight, font_symbolic_slant)
12913 (font_symbolic_width, font_find_object, font_get_spec)
12914 (font_set_lface_from_name): Delete extern.
12915 (Fcopy_font_spec, Fmerge_font_spec, Ffont_family_list): New EXFUNs.
12916
12917 * font.c: Include <strings.h>.
12918 (enable_font_backend): Delete it.
12919 (Qfont_spec, Qfont_entity, Qfont_object): New variables.
12920 (CHECK_VALIDATE_FONT_SPEC): Delete it.
12921 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved to font.h.
12922 (null_string): Delete it.
12923 (null_vector): Make it static.
12924 (font_family_alist): Delete it.
12925 (Qnormal): Extern it.
12926 (QCextra, QClanguage): Delete it.
12927 (QClang, QCavgwidth, QCfont_entity, QCfc_unknown_spec): New variables.
12928 (font_make_spec, font_make_entity, font_make_object)
12929 (font_intern_prop): Renamed from intern_downcase. Don't downcase
12930 the string. Callers changed.
12931 (font_pixel_size): Adjusted for the format change of font-related
12932 objects.
12933 (prop_name_to_numeric, prop_numeric_to_name): Delete them.
12934 (font_style_to_value, font_style_symbolic): New function.
12935 (build_font_family_alist): Delete it.
12936 (font_registry_charsets): Use Fassoc_string instead of
12937 assq_no_quit.
12938 (font_prop_validate_symbol): Don't return null_string.
12939 (font_prop_validate_style): Adjusted for the change of
12940 style-related values in a font vector.
12941 (font_property_table): Delete entries for QClanguage and
12942 QCantialias, add entries for QCavgwidth.
12943 (get_font_prop_index): Delete the 2nd argument FROM.
12944 (font_prop_validate): Arguments changed.
12945 (font_put_extra): Adjusted for the change of font-related objects.
12946 (font_expand_wildcards, font_parse_xlfd, font_unparse_xlfd)
12947 (font_parse_fcname, font_unparse_fcname)
12948 (font_prepare_composition): Likewise.
12949 (font_parse_family_registry): Renamed from font_merge_old_spec.
12950 (otf_open): Delete the 1st arg entity.
12951 (font_otf_capability): Adjusted for the above change.
12952 (font_score): New arg alternate_families. Adjusted for the change
12953 of font-related objects.
12954 (font_sort_entites): New arg best_only.
12955 (font_symbolic_weight, font_symbolic_slant, font_symbolic_width):
12956 Delete them.
12957 (font_match_p): Check alternate families.
12958 (font_find_object): Delete it.
12959 (font_check_object): New function.
12960 (font_clear_cache): Adjusted for the change of font-related objects.
12961 (font_delete_unmatched): New arg.
12962 (font_list_entities): Call font_driver->list with a spec that
12963 doesn't specify style-related properties.
12964 (font_matching_entity): Arguments changed. Caller changed.
12965 (font_open_entity): Adjusted for the change of font-related objects.
12966 (font_close_object, font_has_char, font_encode_char)
12967 (font_get_name, font_get_spec): Likewise.
12968 (font_spec_from_name, font_clear_prop, font_update_lface):
12969 New functions.
12970 (font_find_for_lface, font_open_for_lface, font_load_for_lface)
12971 (font_prepare_for_face, font_done_for_face, font_open_by_name)
12972 (font_at): Adjusted for the change of font-related objects.
12973 (font_range): New function.
12974 (Ffontp, Ffont_spec, Ffont_get, Ffont_put, Flist_fonts)
12975 (Ffont_xlfd_name): Adjusted for the change of font-related objects.
12976 (Fcopy_font_spec, Fmerge_font_spec): New function.
12977 (Ffont_family_list): Renamed from list-families.
12978 (Finternal_set_font_style_table): Arguments changed.
12979 (Ffont_fill_gstring, Ffont_shape_text, Fopen_font)
12980 (Ffont_drive_otf, Fquery_font, Ffont_match_p): Adjusted for the
12981 change of font-related objects.
12982 (syms_of_font): Delete "ifdef USE_FONT_BACKEND". DEFSYM new symbols.
12983
12984 * fontset.h (struct font_info): Delete it. Most members go to
12985 struct font.
12986 (FONT_ENCODING_NOT_DECIDED): Moved to font.h.
12987 (enum FONT_SPEC_INDEX): Delete it.
12988 (font_info, list_fonts_func, load_font_func, query_font_func)
12989 (set_frame_fontset_func, find_ccl_program_func)
12990 (get_font_repertory_func, new_fontset_from_font_name): Delete
12991 externs.
12992 (fontset_from_font_name): Extern it.
12993 (FS_LOAD_FONT, FONT_INFO_ID, FONT_INFO_FROM_ID)
12994 (FONT_INFO_FROM_FACE): Deleted.
12995 (face_for_font): Adjust prototype.
12996
12997 * fontset.c: Throughout the file, delete all USE_FONT_BACKEND
12998 conditionals. Don't check enable_font_backend. Delete all codes
12999 used only when USE_FONT_BACKEND is not defined.
13000 (get_font_info_func, list_font_func, load_font_func)
13001 (query_font_func, set_frame_fontset_func, find_ccl_program_func)
13002 (get_font_repertory_func): Delete them.
13003 (FONTSET_SPEC, FONT_DEF_NEW, FONT_DEF_SPEC, FONT_DEF_ENCODING)
13004 (FONT_DEF_REPERTORY, RFONT_DEF_FACE, RFONT_DEF_SET_FACE)
13005 (RFONT_DEF_FONT_DEF, RFONT_DEF_SPEC, RFONT_DEF_REPERTORY)
13006 (RFONT_DEF_OBJECT, RFONT_DEF_SET_OBJECT, RFONT_DEF_SCORE)
13007 (RFONT_DEF_SET_SCORE, RFONT_DEF_NEW): New macros.
13008 (fontset_compare_rfontdef): New function.
13009 (reorder_font_vector): Remove the argument CHARSET-ID. Sort
13010 rfont-defs by qsort. Adjusted for the change of font-group vector.
13011 (load_font_get_repertory): Deleted.
13012 (fontset_find_font): Use new macros to ref/set elements of
13013 font-def and rfont-def.
13014 (fontset_font): Fix the timing of remembering that no font for C.
13015 (free_face_fontset): Do nothing if the face has no fontset.
13016 (face_suitable_for_char_p): Use new macros to ref/set elements of
13017 rfont-def.
13018 (face_for_char): Likewise. Call face_for_char with font_object.
13019 (fs_load_font): Delete. Delete #pragma surrounding it.
13020 (fs_query_fontset): Use strcasecmp instead of strcmp.
13021 (generate_ascii_font_name): Adjusted for the format change of
13022 font-spec.
13023 (Fset_fontset_font): Likewise. Use new macros to set elements of
13024 font-def.
13025 (Fnew_fontset): Use font_unparse_xlfd to generate
13026 FONTSET_ASCII (fontset).
13027 (new_fontset_from_font_name): Deleted.
13028 (fontset_from_font): Renamed from new_fontset_from_font. Check if
13029 a fontset is already created for the font. FIx updating of
13030 Vfontset_alias_alist.
13031 (fontset_ascii_font): Deleted.
13032 (Ffont_info): Adjusted for the format change of font-spec.
13033 (Finternal_char_font): Likewise.
13034 (Ffontset_info): Likewise.
13035 (syms_of_fontset): Don't check load_font_func.
13036
13037 * fns.c (internal_equal): Handle PREV_FONT.
13038
13039 * frame.h: Delete USE_FONT_BACKEND conditional.
13040
13041 * frame.c: Throughout the file, delete all USE_FONT_BACKEND
13042 conditionals. Don't check enable_font_backend. Delete all codes
13043 used only when USE_FONT_BACKEND is not defined.
13044 (x_set_font): Call x_new_font, not x_new_fontset2.
13045 (x_set_font_backend): Use FRAME_FONT macro to check if a font is
13046 already set for the frame.
13047
13048 * ftfont.c (ftfont_pattern_entity): Argument FRAME removed. Make
13049 a font-entity by font_make_entity. Use font_intern_prop instead
13050 of intern_downcase. Use FONT_SET_STYLE to set a style-related
13051 font property. If a font is scalable, set avgwidth property to 0.
13052 Set font-entity property by font_put_extra.
13053 (ftfont_list_generic_family): Argument SPEC and REGISTRY removed.
13054 (ffont_driver): Adjusted for the change of struct font_driver.
13055 (ftfont_spec_pattern): New function.
13056 (ftfont_list): Return a list, not vector.
13057 (ftfont_match): Use ftfont_spec_pattern to get a pattern.
13058 (ftfont_list_family): Don't downcase names.
13059 (ftfont_free_entity): Deleted.
13060 (ftfont_open): Return a font-object. Adjusted for the change of
13061 struct font. Get underline_thickness and underline_position from
13062 font property. Don't update dpyinfo->smallest_font_height and
13063 dpyinfo->smallest_char_width.
13064 (ftfont_close): Don't free `struct font'.
13065 (ftfont_has_char): Adjusted for the format change of font-entity.
13066 (ftfont_encode_char, ftfont_text_extents): Likewise.
13067
13068 * ftxfont.c (ftxfont_list): Return a list, not vector.
13069 (ftxfont_open): Return a font-object. Adjusted for the change of
13070 struct font. Get underline_thickness and underline_position from
13071 font property. Don't update dpyinfo->smallest_font_height and
13072 dpyinfo->smallest_char_width.
13073 (ftxfont_close): Don't decrease FRAME_X_DISPLAY_INFO (f)->n_fonts.
13074 (ftxfont_draw): Adjusted for the change of struct font.
13075
13076 * image.c (image_ascent): Don't include "charset.h". Include
13077 "character.h" and "font.h".
13078
13079 * lisp.h (enum pvec_type): New member PREV_FONT.
13080 (Fassoc_string): EXFUN it.
13081
13082 * print.c: Include font.h.
13083 (print_object): Handle font-related objects.
13084
13085 * xdisp.c: Throughout the file, delete all USE_FONT_BACKEND
13086 conditionals. Don't check enable_font_backend. Delete all codes
13087 used only when USE_FONT_BACKEND is not defined.
13088 (handle_auto_composed_prop): Do nothing if it->f is not on a
13089 window system. Check how many following characters can be
13090 displayed by the same font.
13091 (calc_pixel_width_or_height): Type of the 4th arg is changed to
13092 'struct font *'.
13093 (get_char_face_and_encoding): Assign the whole encoding task to
13094 the `encode-char' method of a font driver.
13095 (fill_composite_glyph_string): Adjusted for the change of `struct
13096 face' and `struct glyph_string'.
13097 (fill_glyph_string): Likewise.
13098 (get_per_char_metric): Arguments changed.
13099 (x_get_glyph_overhangs): Adjusted for the change of `struct face'
13100 and `struct glyph_string'.
13101 (produce_stretch_glyph, calc_line_height_property)
13102 (x_produce_glyphs): Likewise.
13103
13104 * xfaces.c: Throughout the file, delete all USE_FONT_BACKEND
13105 conditionals. Don't check enable_font_backend. Delete all codes
13106 used only when USE_FONT_BACKEND is not defined. Use
13107 FONT_XXX_NAME_NUMERIC instead of face_numeric_xxx.
13108 (QCfoundry, QCadstyle, QCregistry, QCspacing, QCsize, QCavgwidth)
13109 (Qp): Extern them.
13110 (clear_font_table, load_face_font, xlfd_lookup_field_contents):
13111 Deleted.
13112 (struct font_name): Deleted.
13113 (xlfd_numeric_value, xlfd_symbolic_value): Deleted.
13114 (compare_fonts_by_sort_order): New function.
13115 (xlfd_numeric_slant, xlfd_symbolic_slant, xlfd_numeric_weight)
13116 (xlfd_symbolic_weight, xlfd_numeric_swidth, xlfd_symbolic_swidth):
13117 Deleted.
13118 (Fx_family_fonts): Use font_list_entities, and sort fonts by
13119 compare_fonts_by_sort_order.
13120 (Fx_font_family_list): Call Ffont_family_list.
13121 (face_numeric_value, face_numeric_weight, face_numeric_slant)
13122 (face_numeric_swidth, face_symbolic_value, face_symbolic_weight)
13123 (face_symbolic_slant, face_symbolic_swidth)
13124 (split_font_name_into_vector, build_font_name_from_vector)
13125 (xlfd_fixed_p, xlfd_point_size, pixel_point_size)
13126 (font_rescale_ratio, split_font_name, build_font_name)
13127 (free_font_names, sort_fonts, x_face_list_fonts)
13128 (face_font_available_p, sorted_font_list, cmp_font_names)
13129 (font_list_1, concat_font_list, font_list, remove_duplicates):
13130 Deleted.
13131 (Fx_list_fonts): Use Ffont_list.
13132 (LFACE_AVGWIDTH): Deleted.
13133 (check_lface_attrs): Don't check LFACE_AVGWIDTH. Check LFACE_FONT
13134 by FONTP.
13135 (lface_fully_specified_p): Don't check LFACE_AVGWIDTH.
13136 (set_lface_from_font_name): Delete it.
13137 (set_lface_from_font): Renamed from
13138 set_lface_from_font_and_fontset. Caller changed. Don't set
13139 LFACE_AVGWIDTH. Use FONT_XXX_FOR_FACE to get a symbol suitable
13140 for face.
13141 (merge_face_vectors): Copy font-spec if necessary.
13142 Clear properties of the font-spec if necessary.
13143 (merge_face_ref): Clear properties of the font-spec if necessary.
13144 (Finternal_set_lisp_face_attribute): Likewise.
13145 (set_font_frame_param): Use font_load_for_lface to load a
13146 font-object, and call Fmodify_frame_parameters with it.
13147 (x_update_menu_appearance): Don't check LFACE_AVGWIDTH. Get XLFD
13148 font name by Ffont_xlfd_name.
13149 (Finternal_lisp_face_attribute_values): Don't check QCweight,
13150 QCslant, and QCwidth.
13151 (Fface_font): Get a font name from font->props[FONT_NAME_INDEX].
13152 (lface_same_font_attributes_p): Don't check LFACE_AVGWIDTH.
13153 Compare fonts by EQ.
13154 (lookup_non_ascii_face): Deleted.
13155 (face_for_font): The 2nd argument changed.
13156 (x_supports_face_attributes_p): Don't check LFACE_AVGWIDTH.
13157 Check atomic font properties by case insensitive.
13158 (realize_non_ascii_face): Set face->overstrike correctly.
13159 (realize_x_face): Likewise. Check if LFACE_FONT is a font_object.
13160 (dump_realized_face): Get font name from
13161 font->props[FONT_NAME_INDEX]. Don't print font_info_id.
13162
13163 * xfns.c: Throughout the file, delete all USE_FONT_BACKEND
13164 conditionals. Don't check enable_font_backend. Delete all codes
13165 used only when USE_FONT_BACKEND is not defined.
13166 (xic_create_xfontset): Original code deleted and renamed from
13167 xic_create_xfontset2. Use FRAME_FONT, not FRAME_FONT_OBJECT.
13168 (x_make_gc): Don't set GCFont in GCs.
13169 (Fx_create_frame) [USE_LUCID]: Set xlwmenu_default_font to a font
13170 opened by "fixed".
13171 (syms_of_xfns): Don't set get_font_info_func, load_font_func,
13172 find_ccl_program_func, query_font_func, set_frame_fontset_func,
13173 get_font_repertory_func.
13174
13175 * xfont.c: Include <stdlib.h> and "ccl.h".
13176 (struct xfont_info): New structure.
13177 (xfont_query_font): Deleted.
13178 (xfont_find_ccl_program): Renamed from x_find_ccl_program and
13179 moved from xterm.c.
13180 (xfont_driver): Adjusted for the change of struct font_driver.
13181 (compare_font_names): New function.
13182 (xfont_list_pattern): Sort font names case insensitively. Make
13183 font_entity by calling font_make_entity. Avoid auto-scaled fonts.
13184 (xfont_list): Return a list, not vector.
13185 (xfont_match): If the font doesn't have QCname property, generate
13186 a name from the other font properties.
13187 (xfont_open): Return a font-object. Adjusted for the change of
13188 struct font. Get underline_thickness and underline_position from
13189 font property. Don't update dpyinfo->smallest_font_height and
13190 dpyinfo->smallest_char_width.
13191 (xfont_close): Don't free struct font.
13192 (xfont_prepare_face): Adjusted for the change of struct font.
13193 (xfont_done_face): Deleted.
13194 (xfont_has_char): Adjusted for the change of struct font.
13195 (xfont_encode_char, xfont_draw): Likewise.
13196 (xfont_check): New function.
13197
13198 * xftfont.c (xftfont_list): Adjusted for the change of `list'
13199 callback function.
13200 (xftfont_match): Adjusted for the format change of font-entity.
13201 (xftfont_open): Adjusted for the format change of font-entity and
13202 font-object. Adjusted for the change of struct font. Return a
13203 font-object. Don't update dpyinfo->smallest_font_height and
13204 dpyinfo->smallest_char_width.
13205 (xftfont_close): Block input while calling XftFontClose.
13206 (xftfont_prepare_face): Don't block input while calling
13207 xftfont_get_colors. Adjusted for the change of struct font.
13208 (xftfont_shape): Return value of error case fixed.
13209
13210 * xrdb.c (x_load_resources): Don't setup a fontset resource.
13211
13212 * xterm.h: Throughout the file, delete all USE_FONT_BACKEND
13213 conditionals.
13214 (FONT_WIDTH): Return (f)->max_width.
13215 (struct x_display_info): Delete member `font'.
13216 (x_list_fonts, x_get_font_info, x_load_font, x_query_font)
13217 (x_find_ccl_program, x_get_font_repertory): Delete externs.
13218 (struct x_output): Change type of `font' to `struct font *'.
13219
13220 * xterm.c: Throughout the file, delete all USE_FONT_BACKEND
13221 conditionals. Don't check enable_font_backend. Delete all codes
13222 used only when USE_FONT_BACKEND is not defined. Don't include ccl.h.
13223 (x_per_char_metric, x_encode_char): Deleted.
13224 (x_set_cursor_gc, x_set_mouse_face_gc): Don't set GCFont.
13225 (x_compute_glyph_string_overhangs): Adjusted for the change of
13226 `struct face'.
13227 (x_draw_glyph_string_foreground)
13228 (x_draw_composite_glyph_string_foreground): Likewise.
13229 (x_draw_glyph_string): Likewise. Use font->underline_position and
13230 font->underline_thickness.
13231 (x_new_font): Renamed from x_new_fontset2.
13232 (x_new_fontset, x_get_font_info, x_list_fonts): Deleted.
13233 (x_check_font): Call `check' method of a font driver.
13234 (x_font_min_bounds, x_compute_min_glyph_bounds, x_load_font)
13235 (x_query_font, x_get_font_repertory): Deleted.
13236 (x_find_ccl_program): Renamed and moved to xfont.c.
13237 (x_redisplay_interface): Adjusted for the change of `struct
13238 redisplay_interface'.
13239
13240 * w32fns.c: Throughout the file, delete all USE_FONT_BACKEND
13241 conditionals. Don't check enable_font_backend. Delete all codes
13242 used only when USE_FONT_BACKEND is not defined. Surround non-used
13243 code by "#ifdef OLD_FONT" and "endif".
13244 (Fw32_select_font): Use FONT_COMPAT to get old font structure.
13245
13246 * w32font.h (struct w32font_info): New member.
13247 (FONT_COMPAT): New macro.
13248 (w32font_open_internal): Prototype adjusted.
13249
13250 * w32gui.h (XGCValues): Surround `XFontStruct *font' by "if
13251 OLD_FONT" and "endif".
13252
13253 * w32font.c: Throughout the file, delete all USE_FONT_BACKEND
13254 conditionals. Don't check enable_font_backend. Delete all codes
13255 used only when USE_FONT_BACKEND is not defined.
13256 (w32font_open): Return a font-object. Make a font-object by
13257 font_make_object. Adjusted for the change of struct w32font_info.
13258 (w32font_close): Don't free struct font. Adjusted for the change
13259 of struct w32font_info.
13260 (w32font_encode_char, w32font_text_extents, w32font_draw):
13261 Adjusted for the change of struct w32font_info.
13262 (w32font_draw): Likewise.
13263 (w32font_list_internal): Return a list, not vector.
13264 (w32font_open_internal): Change the 4th arg to font-object.
13265 Adjusted for the change of struct w32font_info and font-object format.
13266 (add_font_name_to_list): Don't downcase names.
13267 (w32_enumfont_pattern_entity): Make a font-entity by
13268 font_make_entity. Adjusted for the format change of font-entity.
13269 Use FONT_SET_STYLE to set a style-related font property. If a
13270 font is scalable, set avgwidth property to 0. Set font-entity
13271 property by font_put_extra.
13272 (font_matches_spec): Adjusted for the format change of font-entity.
13273 (w32_weight_table, w32_decode_weight): New variables.
13274 (w32_encode_weight): New function.
13275 (fill_in_logfont): Adjusted for the format change of font-spec.
13276 (w32font_full_name): Use FONT_WEIGHT_SYMBOLIC to get a symbol
13277 weight value.
13278 (w32font_driver): Adjusted for the change of struct font_driver.
13279
13280 * w32term.h: Throughout the file, delete all USE_FONT_BACKEND
13281 conditionals. Don't check enable_font_backend. Surround non-used
13282 code by "#ifdef OLD_FONT" and "endif".
13283 (FONT_WIDTH, FONT_HEIGHT, FONT_BASE, FONT_DESCENT)
13284 (FONT_AVG_WIDTH): Adjusted for the change of struct font.
13285
13286 * w32term.c: Throughout the file, delete all USE_FONT_BACKEND
13287 conditionals. Don't check enable_font_backend. Delete all codes
13288 used only when USE_FONT_BACKEND is not defined. Surround non-used
13289 code by "#ifdef OLD_FONT" and "endif".
13290
13291 * w32uniscribe.c: Delete USE_FONT_BACKEND conditional.
13292 (uniscribe_open): Return value changed to font-object.
13293 Adjusted for the format change of font-object.
13294 (uniscribe_otf_capability): Adjusted for the change of struct font.
13295 (add_opentype_font_name_to_list): Don't downcase names.
13296 (uniscribe_font_driver): Adjusted for the change of struct
13297 font_driver.
13298
132992008-05-13 Chong Yidong <cyd@stupidchicken.com>
13300
13301 * dispnew.c (update_frame_1): Check if tty output is still valid
13302 before flushing it.
13303
133042008-05-13 Jan Djärv <jan.h.d@swipnet.se>
13305
13306 * xterm.c (handle_one_xevent): Don't pass buttons higher than 3
13307 to Gtk+ menus.
13308
133092008-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
13310
13311 * dired.c (file_name_completion): Tweak the code so as to always do it
13312 in a single pass. Tighten the scope of some variables.
13313
13314 * dired.c (Qdefault_directory): New var.
13315 (file_name_completion): Use it instead of Fexpand_file_name.
13316 (syms_of_dired): Initialize it.
13317
133182008-05-12 Stefan Monnier <monnier@iro.umontreal.ca>
13319
13320 * fileio.c (double_dollars): Remove dead code.
13321
133222008-05-10 Eli Zaretskii <eliz@gnu.org>
13323
13324 * dired.c (Ffile_attributes, Fdirectory_files_and_attributes):
13325 Mention w32-get-true-file-attributes in doc string.
13326
13327 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
13328
133292008-05-09 Glenn Morris <rgm@gnu.org>
13330
13331 * fileio.c (Fread_file_name): Remove reference to insdef, deleted
13332 2008-04-23.
13333
133342008-05-09 Eli Zaretskii <eliz@gnu.org>
13335
13336 Support for reporting owner and group of each file on MS-Windows:
13337 * dired.c (stat_uname, stat_gname): New functions, with special
13338 implementation for w32.
13339 (Ffile_attributes): Use them instead of getpwuid and getgrgid.
13340
13341 * w32.c: Rename the_passwd_* to dflt_passwd_*.
13342 (dflt_group_name): New static variable.
13343 (dflt_group): Rename from the_group.
13344 (init_user_info): Init dflt_group fields. Get user's group name
13345 from LookupAccountSid.
13346 (g_b_init_get_file_security, g_b_init_get_security_descriptor_owner)
13347 (g_b_init_get_security_descriptor_group, g_b_init_is_valid_sid):
13348 New initialization states.
13349 (globals_of_w32): Initialize them to zero. Initialize the default
13350 group name to "None".
13351 (GetFileSecurity_Name): New global var, the name of the function
13352 to call for GetFileSecurity.
13353 (GetFileSecurity_Proc, GetSecurityDescriptorOwner_Proc)
13354 (GetSecurityDescriptorGroup_Proc, IsValidSid_Proc): New typedefs.
13355 (get_file_security, get_security_descriptor_owner)
13356 (get_security_descriptor_group, is_valid_sid)
13357 (get_file_security_desc, get_rid, get_name_and_id)
13358 (get_file_owner_and_group): New functions.
13359 (stat): Use get_file_security_desc and get_file_owner_and_group to
13360 report the owner and primary group of each file. Don't ignore the
13361 high 32 bits of file's size, now that st_size is 64-bit wide.
13362 Fix test when to get true file attributes.
13363 (init_user_info): Use get_rid instead of equivalent inline code.
13364 (fstat): Don't ignore the high 32 bits of file's size.
13365
133662008-05-09 Chong Yidong <cyd@stupidchicken.com>
13367
13368 * image.c (png_load): Use correct bit-depth for setting background
13369 color.
13370
133712008-05-08 Eli Zaretskii <eliz@gnu.org>
13372
13373 * Makefile.in (lisp, shortlisp): Rename epa-file-hook.elc to
13374 epa-hook.elc.
13375
133762008-05-08 Juanma Barranquero <lekktu@gmail.com>
13377
13378 * font.c (Ffont_match_p): Don't use `iff' in docstring.
13379
133802008-05-07 Dan Nicolaescu <dann@ics.uci.edu>
13381
13382 * macfns.c (Fx_create_frame): Make a copy of frame parameters
13383 because the original parameters are in pure storage now.
13384 (mac_window): Remove unused params. Update callers.
13385
133862008-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
13387
13388 * lread.c (substitute_object_recurse): Use lower-level primitives.
13389 Don't signal errors when traversing sub-char-tables.
13390 Don't loop over all the possible characters when traversing char-tables.
13391
13392 * print.c (print_preprocess): Add sub-char-tables to the print-table,
13393 just like we do in print.c.
13394
133952008-05-05 Stefan Monnier <monnier@iro.umontreal.ca>
13396
13397 * minibuf.c (Ftry_completion): Remove code left over from when we used
13398 scmp instead of Fcompare_strings.
13399
134002008-05-04 Juanma Barranquero <lekktu@gmail.com>
13401
13402 * w32fns.c (Fw32_battery_status): Fix computation of %t (h:min) format.
13403
134042008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13405
13406 * image.c [USE_MAC_IMAGE_IO] (image_load_image_io):
13407 Create bitmap context in native byte order.
13408
13409 * macterm.c (XDrawLine)
13410 (XCreatePixmapFromBitmapData) [USE_MAC_IMAGE_IO]: Create bitmap
13411 context in native byte order.
13412
134132008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13414
13415 * config.in: Regenerate.
13416
13417 * image.c (PIX_MASK_DRAW, PIX_MASK_RETAIN) [USE_MAC_IMAGE_IO]:
13418 New definitions for Image I/O support.
13419 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
13420 (mac_create_cg_image_from_image, x_create_x_image_and_pixmap)
13421 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
13422 (mac_data_provider_release_data, image_load_image_io)
13423 [USE_MAC_IMAGE_IO]: New functions.
13424 (CGImageCreateWithPNGDataProviderProcType) [MAC_OSX]: Remove typedef.
13425 (MyCGImageCreateWithPNGDataProvider) [MAC_OSX]: Remove variable.
13426 (init_image_func_pointer) [MAC_OSX]: Remove function.
13427 (image_load_quartz2d) [MAC_OSX]: Check availability of
13428 CGImageCreateWithPNGDataProvider at compile time.
13429 Use lowercase `false' for boolean constant.
13430 (png_load, jpeg_load, tiff_load, gif_load) [USE_MAC_IMAGE_IO]:
13431 Use image_load_image_io.
13432 (png_load) [!USE_MAC_IMAGE_IO && MAC_OSX]:
13433 Don't check MyCGImageCreateWithPNGDataProvider.
13434 (init_image) [MAC_OSX && TARGET_API_MAC_CARBON]:
13435 Don't call init_image_func_pointer.
13436
13437 * macgui.h (Pixmap) [USE_MAC_IMAGE_IO]: New definition for Image I/O.
13438
13439 * macterm.c (mac_cg_color_space_rgb) [USE_CG_DRAWING]:
13440 Make variable non-static.
13441 (XDrawLine, XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
13442 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
13443
13444 * macterm.h (ARGB_TO_ULONG, ALPHA_FROM_ULONG): New macros.
13445 (RED_FROM_ULONG): Mask off higher bits.
13446 (mac_cg_color_space_rgb) [USE_MAC_IMAGE_IO]: New extern.
13447
13448 * s/darwin.h [HAVE_CARBON && HAVE_AVAILABILITYMACROS_H]:
13449 Include AvailabilityMacros.h.
13450 (USE_MAC_IMAGE_IO, LIBS_IMAGE) [HAVE_CARBON]: New defines.
13451 (LIBS_CARBON) [HAVE_CARBON]: Use LIBS_IMAGE.
13452
134532008-05-03 Stefan Monnier <monnier@iro.umontreal.ca>
13454
13455 * chartab.c (Fset_char_table_range): If range is t, really set all
13456 chars to that value.
13457
134582008-05-03 Eli Zaretskii <eliz@gnu.org>
13459
13460 * dired.c (Ffile_attributes): Don't allow the device number become
13461 negative.
13462
134632008-05-02 Daiki Ueno <ueno@unixuser.org>
13464
13465 * Makefile.in (lisp, shortlisp): Add epa-file-hook.elc.
13466
134672008-05-02 Juri Linkov <juri@jurta.org>
13468
13469 * minibuf.c (Fread_from_minibuffer, Fread_string, Fread_command)
13470 (Fread_variable, Fread_buffer, Fcompleting_read): Document the
13471 DEFAULT argument as a list of default values in docstrings.
13472
134732008-05-01 Chong Yidong <cyd@stupidchicken.com>
13474
13475 * puresize.h (BASE_PURESIZE): Increase to 1210000.
13476
134772008-05-01 Martin Rudalics <rudalics@gmx.at>
13478
13479 * dispnew.c (change_frame_size_1): Preserve small windows when
13480 shrinking frames by calling set_window_height|width with third
13481 arg 2.
13482
13483 * window.h (struct window): Replace field too_small_ok by field
13484 resize_proportionally.
13485
13486 * window.c (make_window): Initialize resize_proportionally.
13487 (enlarge_window): Temporarily set resize_proportionally to make
13488 sure that shrink_windows does scale the window proportionally.
13489 (shrink_windows): When window has resize_proportionally set try
13490 to shrink it proportionally by stealing from other windows.
13491 (struct saved_window, Fset_window_configuration)
13492 (compare_window_configurations): Handle resize_proportionally.
13493 (WINDOW_TOTAL_SIZE): New macro.
13494 (window_min_size, shrink_windows, size_window): Use it.
13495 (check_min_window_sizes): Remove. Invalid values of
13496 window-min-height|width are handled by window_min_size_2 now.
13497 (size_window, Fsplit_window, enlarge_window)
13498 (adjust_window_trailing_edge, grow_mini_window): Don't call
13499 check_min_window_sizes.
13500 (window_min_size_2, window_min_size_1, window_min_size):
13501 New argument safe_p for retrieving "safe" minimum sizes.
13502 (Fdisplay_buffer, Fsplit_window, enlarge_window)
13503 (adjust_window_trailing_edge, grow_mini_window):
13504 Adjust arguments of window_min_size... functions.
13505 (shrink_windows): Argument min_size removed. New argument
13506 safe_p allows shrinking windows to their safe minimum sizes.
13507 Calculate minimum size and decide whether a window shall be
13508 deleted for each window individually.
13509 (size_window): When nodelete_p equals 2, tell shrink_windows to
13510 delete windows only if their new minimum size is no more safe.
13511 (shrink_window_lowest_first): Call window_min_size_1 to make
13512 sure to preserve modeline of bottom-most window when resizing
13513 the minibuffer.
13514 (Fset_window_configuration, Fcurrent_window_configuration)
13515 (compare_window_configurations): Do not handle
13516 window-min-height|width any more.
13517 (syms_of_window): Clarify window-min-height|width doc-strings.
13518
135192008-04-30 Stefan Monnier <monnier@iro.umontreal.ca>
13520
13521 * dired.c (file_name_completion): Fix up the encoding/decoding issue
13522 some more. Copy some of the code from Ftry_completions.
13523 Remove special case code that dates back to initial revision when the
13524 slash was only added when necessary and that can't trigger nowadays.
13525
135262008-04-27 Kenichi Handa <handa@m17n.org>
13527
13528 * font.c (font_prop_validate): Signal `error' instead of `font'.
13529
135302008-04-29 Jason Rumney <jasonr@gnu.org>
13531
13532 * w32fns.c (Fw32_battery_status): New defun.
13533 (syms_of_w32fns): Defsubr it.
13534
135352008-04-28 Andreas Schwab <schwab@suse.de>
13536
13537 * dired.c (file_name_completion): Fix another mixing of encoded
13538 and decoded names.
13539
135402008-04-28 Juanma Barranquero <lekktu@gmail.com>
13541
13542 * w32fns.c (Fw32_define_rgb_color): Fix typo in docstring.
13543
135442008-04-27 Juanma Barranquero <lekktu@gmail.com>
13545
13546 * fringe.c (Fdefine_fringe_bitmap): Doc fix.
13547
135482008-04-27 Andreas Schwab <schwab@suse.de>
13549
13550 * dired.c (file_name_completion): Fix inappropriate mixing of
13551 encoded and decoded names.
13552
13553 * xterm.c (XTread_socket): Fix use of uninitialized variable.
13554
13555 * puresize.h (BASE_PURESIZE): Increase to 1200000.
13556
135572008-04-26 Eli Zaretskii <eliz@gnu.org>
13558
13559 * dired.c (Ffile_attributes) [WINDOWSNT]: Undo change from
13560 2008-03-31, it's not needed anymore with `struct stat' definition
13561 on nt/inc/sys/stat.h. Undo changes from 2007-01-12 and 2007-01-13
13562 for the same reasons.
13563
135642008-04-25 Dennis Gilmore <ausil@fedoraproject.org> (tiny change)
13565
13566 * m/sparc.h: Additional redefinitions for GNU/Linux.
13567
135682008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13569
13570 * macterm.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: New variable.
13571 (syms_of_macterm) [USE_MAC_TSM]: Defvar it.
13572 (Qmouse_drag_overlay) [MAC_OSX]: New variable.
13573 (syms_of_macterm) [MAC_OSX]: Intern and staticpro it.
13574 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
13575 (mac_ax_selected_text_range) [MAC_OSX]: New functions.
13576 (mac_ax_number_of_characters) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
13577 Likewise.
13578
13579 * mactoolbox.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: Add extern.
13580 (fast_find_position, x_y_to_hpos_vpos, mac_ax_selected_text_range)
13581 (mac_ax_number_of_characters): Add externs.
13582 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
13583 [USE_MAC_TSM]: Likewise.
13584 (mac_handle_text_input_event) [MAC_OSX]:
13585 Handle kEventTextInputOffsetToPos for no active input area case.
13586 Handle kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
13587 (mac_handle_document_access_event)
13588 [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: New function.
13589 (install_application_handler) [MAC_OSX]: Register handlers for
13590 kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
13591 (install_application_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
13592 Register mac_handle_document_access_event.
13593
13594 * xdisp.c (x_y_to_hpos_vpos, fast_find_position) [HAVE_CARBON]:
13595 Make functions non-static.
13596
135972008-04-23 Stefan Monnier <monnier@iro.umontreal.ca>
13598
13599 * fileio.c (Vread_file_name_function, Vread_file_name_predicate)
13600 (read_file_name_completion_ignore_case, insert_default_directory)
13601 (Qdefault_directory): Move to minibuffer.el.
13602 (Fread_file_name): Call the new `read-file-name' instead.
13603
136042008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13605
13606 * mac.c (create_apple_event) [TARGET_API_MAC_CARBON]:
13607 Make function non-static.
13608 (create_apple_event_from_event_ref) [TARGET_API_MAC_CARBON]:
13609 Remove function.
13610 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
13611 Move to mactoolbox.c.
13612 (mac_event_parameters_to_lisp) [TARGET_API_MAC_CARBON]: New function.
13613
13614 * macgui.h (CGFloat) [!CGFLOAT_DEFINED]: New typedef.
13615 (mac_rect_make): New macro.
13616
13617 * macterm.c (mac_draw_image_string_atsui) [MAC_OSX]: Use CGFloat
13618 instead of float.
13619 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
13620 (init_cg_color, mac_draw_line, mac_draw_cg_image, XSetForeground)
13621 (XSetBackground) [USE_CG_DRAWING]: Likewise.
13622 (mac_draw_image_string_atsui) [MAC_OSX]: Use mac_rect_make instead of
13623 CGRectMake.
13624 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
13625 (mac_erase_rectangle, mac_draw_cg_image, mac_fill_rectangle)
13626 (mac_set_clip_rectangles) [USE_CG_DRAWING]: Likewise.
13627 (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
13628 instead of WindowRef in argument type.
13629 (XCreatePixmap) [!MAC_OS8]: Don't call SetPortWindowPort.
13630 (mac_invert_rectangle): Use CGContextSetBlendMode if available.
13631 (mac_set_clip_rectangles, mac_reset_clip_rectangles): Take argument F
13632 instead of DISPLAY. All uses changed.
13633 (mac_handle_size_change): Don't call SET_FRAME_GARBAGED.
13634 (x_calc_absolute_position): Simplify so as not to use
13635 FRAME_PIXEL_WIDTH/FRAME_PIXEL_HEIGHT.
13636
13637 * macterm.h (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
13638 instead of WindowRef in argument type.
13639 (create_apple_event_from_event_ref, create_apple_event_from_drag_ref)
13640 [TARGET_API_MAC_CARBON]: Remove externs.
13641 (create_apple_event, mac_event_parameters_to_lisp)
13642 [TARGET_API_MAC_CARBON]: Add externs.
13643
13644 * mactoolbox.c (Vmac_ts_script_language_on_focus)
13645 (saved_ts_script_language_on_focus) [USE_MAC_TSM]: Remove externs.
13646 (XTread_socket) [USE_MAC_TOOLBAR]: Select window if its structure part
13647 is clicked.
13648 (x_activate_menubar): Remove extern for saved_menu_event_location.
13649 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
13650 Move from mac.c.
13651
136522008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13653
13654 * alloc.c [!SYSTEM_MALLOC && !SYNC_INPUT] (uninterrupt_malloc)
13655 [HAVE_GTK_AND_PTHREAD && !DOUG_LEA_MALLOC]: Don't use recursive mutex.
13656
136572008-04-23 Jason Rumney <jasonr@gnu.org>
13658
13659 * w32.c (stat): When Vw32_get_true_file_attributes is Qlocal, get
13660 attributes only for local files.
13661
13662 * w32proc.c (syms_of_ntproc): Change Vw32_get_true_file attributes
13663 default to Qlocal.
13664
136652008-04-22 Juri Linkov <juri@jurta.org>
13666
13667 * buffer.c (Fswitch_to_buffer): Change interactive spec to call
13668 read-buffer-to-switch instead of using the letter "B".
13669
136702008-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
13671
13672 * fileio.c (Qdefault_directory): New variable.
13673 (Fread_file_name): Use it to pass `dir' to the completion functions.
13674
136752008-04-20 Chong Yidong <cyd@stupidchicken.com>
13676
13677 * xdisp.c (pos_visible_p): Check if iterator stops on a display string.
13678
136792008-04-19 Stefan Monnier <monnier@iro.umontreal.ca>
13680
13681 * keyboard.c (Vpre_help_message): Remove.
13682 (show_help_echo): Remove default C code.
13683
13684 * dired.c (directory_files_internal, file_name_completion):
13685 Only call ENCODE_FILE if the string is indeed decoded.
13686
136872008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
13688
13689 * Makefile.in (TOOLKIT_DEFINES): Remove.
13690 (LIBW): Use a bit less #if, remove left over OPEN_LOOK stuff.
13691
136922008-04-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13693
13694 * Makefile.in (MAC_OBJ): Add mactoolbox.o.
13695 (mactoolbox.o): New target.
13696
13697 * mac.c [MAC_OSX] (select_and_poll_event, sys_select):
13698 Use mac_run_loop_run_once instead of CFRunLoopRunInMode.
13699
13700 * macfns.c (x_set_background_color, mac_window, x_create_tip_frame):
13701 Use mac_set_frame_window_background instead of XSetWindowBackground.
13702 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]:
13703 Use mac_is_window_toolbar_visible instead of IsWindowToolbarVisible.
13704 (x_set_name_internal) [TARGET_API_MAC_CARBON]: Use mac_set_window_title
13705 instead of SetWindowTitleWithCFString.
13706 (mac_update_proxy_icon) [TARGET_API_MAC_CARBON]: Remove BLOCK_INPUT.
13707 Move function to mactoolbox.c.
13708 (mac_update_title_bar) [TARGET_API_MAC_CARBON]:
13709 Use mac_set_window_modified instead of SetWindowModified.
13710 Add BLOCK_INPUT around mac_set_window_modified/mac_update_proxy_icon.
13711 (mac_window, x_create_tip_frame): Use mac_create_frame_window.
13712 (Fx_focus_frame): Use mac_front_non_floating_window instead of
13713 FrontNonFloatingWindow. Use mac_activate_window instead of
13714 ActivateWindow. Use mac_active_non_floating_window instead of
13715 ActiveNonFloatingWindow.
13716 (show_hourglass, hide_hourglass) [TARGET_API_MAC_CARBON]:
13717 Use mac_show_hourglass and mac_hide_hourglass.
13718 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use mac_get_global_mouse
13719 instead of GetGlobalMouse.
13720 (Fx_show_tip): Use mac_move_window/mac_size_window/mac_show_window
13721 instead of MoveWindow/SizeWindow/ShowWindow, respectively.
13722 Use mac_bring_window_to_front instead of BringToFront.
13723 (Qfile_name_history) [TARGET_API_MAC_CARBON]: Move extern to
13724 mactoolbox.c.
13725 (Fx_file_dialog) [TARGET_API_MAC_CARBON]: Move function body to
13726 mac_file_dialog in mactoolbox.c. Use mac_file_dialog.
13727 (mac_nav_event_callback) [TARGET_API_MAC_CARBON]: Move function to
13728 mactoolbox.c.
13729
13730 * macgui.h [!HAVE_CARBON]: Include Quickdraw.h instead of QuickDraw.h.
13731 (XtPointer): Move typedef from macmenu.c.
13732 (enum button_type): Move enum from macmenu.c.
13733 (widget_value): Move typedef from macmenu.c.
13734 (M_APPLE, I_ABOUT, EXTRA_STACK_ALLOC, ARGV_STRING_LIST_ID)
13735 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
13736 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
13737 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
13738 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
13739 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
13740 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
13741 (DIALOG_ICON_TOP_MARGIN): Move defines from macmenu.c.
13742 (Selection): Move typedef from macselect.c.
13743 (RAM_TOO_LARGE_ALERT_ID, ABOUT_ALERT_ID) [MAC_OS8]: Move defines from
13744 macterm.c.
13745 (mac_set_window_title, mac_set_window_modified, mac_is_window_visible)
13746 (mac_is_window_collapsed, mac_bring_window_to_front)
13747 (mac_send_window_behind, mac_hide_window, mac_show_window)
13748 (mac_collapse_window, mac_front_non_floating_window)
13749 (mac_active_non_floating_window, mac_activate_window)
13750 (mac_move_window_structure, mac_move_window, mac_size_window)
13751 (mac_get_global_mouse, mac_is_window_toolbar_visible): New defines.
13752
13753 * macmenu.c [!TARGET_API_MAC_CARBON]: Move includes to mactoolbox.c.
13754 (enum mac_menu_kind): Move enum to mactoolbox.c.
13755 (min_menu_id): Move variable to mactoolbox.c.
13756 (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]: Likewise.
13757 (DIALOG_WINDOW_RESOURCE): Move define to mactoolbox.c.
13758 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
13759 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
13760 [TARGET_API_MAC_CARBON]: Likewise.
13761 (XtPointer): Move typedef to macgui.h.
13762 (enum button_type): Move enum to macgui.h.
13763 (widget_value): Move typedef to macgui.h.
13764 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
13765 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
13766 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
13767 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
13768 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
13769 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
13770 (DIALOG_ICON_TOP_MARGIN): Move defines to macgui.h.
13771 (popup_activated_flag): Make variable non-static.
13772 (x_activate_menubar, install_menu_quit_handler, pop_down_menu)
13773 (add_menu_item, fill_menu, dispose_menus):
13774 Move functions to mactoolbox.c.
13775 (restore_show_help_function, menu_target_item_handler)
13776 (install_menu_target_item_handler, mac_handle_dialog_event)
13777 (install_dialog_event_handler, pop_down_dialog, create_and_show_dialog)
13778 [TARGET_API_MAC_CARBON]: Likewise.
13779 (menu_quit_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: Likewise.
13780 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
13781 (find_and_call_menu_selection, name_is_separator): Make function
13782 non-static.
13783 (Vshow_help_function, timer_check) [TARGET_API_MAC_CARBON]: Move extern
13784 to mactoolbox.c.
13785 (set_frame_menubar): Don't call install_menu_quit_handler.
13786 (menu_item_selection): New variable.
13787 (mac_menu_show): Use create_and_show_popup_menu.
13788 (create_and_show_dialog) [TARGET_API_MAC_CARBON]: Don't return
13789 selection but set variable menu_item_selection. All uses changed.
13790 (mac_fill_menubar): Rename from fill_menubar. All uses changed.
13791 Call install_menu_quit_handler. Move to mactoolbox.c.
13792
13793 * macselect.c [!TARGET_API_MAC_CARBON]: Don't include Scrap.h.
13794 (Selection): Move typedef to macgui.h.
13795 (Vselection_converter_alist, Qmac_scrap_name, Qmac_ostype)
13796 (Vmac_apple_event_map, Qmac_apple_event_class, Qmac_apple_event_id):
13797 Make variables non-static.
13798 (Vmac_dnd_known_types) [TARGET_API_MAC_CARBON]: Likewise.
13799 (mac_handle_apple_event, cleanup_all_suspended_apple_events):
13800 Make functions non-static.
13801 (Vmac_service_selection) [MAC_OSX]: Likewise.
13802 (mac_get_selection_from_symbol, get_flavor_type_from_symbol)
13803 (mac_valid_selection_target_p, mac_clear_selection)
13804 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
13805 (mac_put_selection_value, mac_selection_has_target_p)
13806 (mac_get_selection_value, mac_get_selection_target_list)
13807 (init_apple_event_handler, install_drag_handler, remove_drag_handler):
13808 Move functions to mactoolbox.c.
13809 (mac_do_track_drag, mac_do_receive_drag) [TARGET_API_MAC_CARBON]:
13810 Likewise.
13811 (copy_scrap_flavor_data, mac_handle_service_event)
13812 (install_service_handler) [MAC_OSX]: Likewise.
13813 (syms_of_macselect) <Vmac_dnd_known_types>:
13814 Use mac_dnd_default_known_types.
13815
13816 * macterm.h (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y):
13817 Move to mactoolbox.c.
13818 (HOURGLASS_WIDTH, HOURGLASS_HEIGHT): Change to 15.
13819 (Fx_selection_owner_p): Add EXFUN.
13820 (install_window_handler, remove_window_handler, XSetWindowBackground):
13821 Remove externs.
13822 (do_apple_menu) [!TARGET_API_MAC_CARBON]: Likewise.
13823 (mac_prepare_for_quickdraw) [USE_CG_DRAWING]: Likewise.
13824 (x_raise_frame, x_lower_frame, mac_alert_sound_play)
13825 (install_application_handler, mac_get_frame_bounds, mac_get_frame_mouse)
13826 (mac_convert_frame_point_to_global, mac_set_frame_window_background)
13827 (mac_update_begin mac_update_end, mac_frame_up_to_date, x_flush)
13828 (mac_create_frame_window, mac_dispose_frame_window, mac_begin_clip)
13829 (mac_end_clip, mac_create_scroll_bar, mac_dispose_scroll_bar)
13830 (mac_set_scroll_bar_bounds, mac_redraw_scroll_bar, mac_fill_menubar)
13831 (create_and_show_popup_menu, mac_get_selection_from_symbol)
13832 (mac_valid_selection_target_p, mac_clear_selection)
13833 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
13834 (mac_put_selection_value, mac_selection_has_target_p)
13835 (mac_get_selection_value, mac_get_selection_target_list): Add externs.
13836 (mac_update_proxy_icon, mac_show_hourglass, mac_hide_hourglass)
13837 (mac_reposition_hourglass, mac_file_dialog, create_and_show_dialog)
13838 (mac_dnd_default_known_types) [TARGET_API_MAC_CARBON]: Likewise.
13839 (mac_run_loop_run_once) [MAC_OSX]: Likewise.
13840 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
13841 (mac_begin_cg_clip, mac_end_cg_clip) [USE_CG_DRAWING]: Likewise.
13842 (x_set_toolkit_scroll_bar_thumb) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
13843 (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
13844
13845 * mactoolbox.c: New file.
13846
138472008-04-18 Jason Rumney <jasonr@gnu.org>
13848
13849 * dired.c (Ffile_attributes) [WINDOWSNT]: Cast uid and gid to unsigned.
13850
138512008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
13852
13853 * character.c (Fmultibyte_char_to_unibyte):
13854 Return latin1 chars unchanged.
13855
13856 * fileio.c (Fexpand_file_name): Refine last fix so `nm' is only
13857 relocated if it points to `name'.
13858
138592008-04-17 Kenichi Handa <handa@m17n.org>
13860
13861 * data.c (Faset): Allow setting a multibyte character in an
13862 ASCII-only unibyte string.
13863
13864 * lisp.h (STRING_SET_MULTIBYTE): New macro.
13865
138662008-04-16 Stefan Monnier <monnier@iro.umontreal.ca>
13867
13868 * Makefile.in: Don't use HAVE_GTK and don't -DUSE_GTK since it's now
13869 done in config.h.
13870
138712008-04-16 Juanma Barranquero <lekktu@gmail.com>
13872
13873 * character.c (Fchar_bytes, Fchar_width, Fstring_width)
13874 (Fchar_direction): Add usage in the docstring.
13875
138762008-04-15 Chong Yidong <cyd@stupidchicken.com>
13877
13878 * keyboard.c (read_key_sequence): Remove always-true checks.
13879
138802008-04-14 Jason Rumney <jasonr@gnu.org>
13881
13882 * w32font.c (w32font_open_internal): Set max_bounds.descent in
13883 compatibility struct, for better underline positioning.
13884
138852008-04-13 David Hansen <david.hansen@gmx.net>
13886
13887 * dbusbind.c (dbus-get-unique-name): Remove extra copying of name
13888 string.
13889
138902008-04-12 Dan Nicolaescu <dann@ics.uci.edu>
13891
13892 * m/hp800.h (XUINT, XSET): Remove.
13893
138942008-04-12 Juanma Barranquero <lekktu@gmail.com>
13895
13896 * fileio.c (Fexpand_file_name): Add declaration for `p' missing in
13897 previous change.
13898
138992008-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
13900
13901 * fileio.c (Fexpand_file_name): Tighten the scope of `p' and `o' vars.
13902 Relocate `nm' after calling DECODE_FILE, in case the GC was run.
13903
139042008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
13905
13906 * keymap.h (map_keymap_canonical): Declare.
13907 * xmenu.c (single_keymap_panes): Use it.
13908
139092008-04-11 Glenn Morris <rgm@gnu.org>
13910
13911 * eval.c (Fdefvaralias): If the alias is bound and the target is not,
13912 set the target's value to that of the alias.
13913
139142008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
13915
13916 * term.c (set_tty_color_mode): Left over typo.
13917
139182008-04-10 Michael Albinus <michael.albinus@gmx.de>
13919
13920 * fileio.c (Fmake_symbolic_link): Surround code by #ifdef S_IFLNK
13921 only after check for file name handler functions. Signal, when
13922 native functionality is not supported.
13923 (syms_of_fileio): Declare it unconditionally.
13924
139252008-04-10 Jason Rumney <jasonr@gnu.org>
13926
13927 * w32menu.c (is_simple_dialog, simple_dialog_show): New functions.
13928 (Fx_popup_dialog): Handle simple yes/no questions as dialogs.
13929
13930 * w32.c (logon_network_drive): Also logon to remote drives that
13931 are mapped to drive letters.
13932
139332008-04-10 Glenn Morris <rgm@gnu.org>
13934
13935 * xdisp.c (truncate-partial-width-windows): Doc fix.
13936
139372008-04-10 Stefan Monnier <monnier@iro.umontreal.ca>
13938
13939 * fileio.c (read_file_name_cleanup, Fread_file_name_internal):
13940 Move functions to minibuffer.el.
13941 (syms_of_fileio): Don't declare them.
13942
139432008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
13944
13945 * minibuf.c (Vcompletion_auto_help): Move to minibuffer.el.
13946 (syms_of_minibuf): Remove its initialization.
13947
13948 * minibuf.c (temp_echo_area_glyphs): Remove unused function.
13949
139502008-04-09 Juanma Barranquero <lekktu@gmail.com>
13951
13952 * editfns.c (Ffield_string_no_properties): Fix typo in docstring.
13953
139542008-04-09 Jason Rumney <jasonr@gnu.org>
13955
13956 * makefile.w32-in (distclean): Delete makefile too.
13957 (maintainer-clean): New target.
13958
13959 * xdisp.c (redisplay_internal) [!WINDOWSNT]: Conditionalize last change.
13960
13961 * w32term.c (w32_compute_glyph_string_overhangs): Compute overhangs
13962 for new font backend and composite cases.
13963
139642008-04-09 Jan Djärv <jan.h.d@swipnet.se>
13965
13966 * atimer.c (alarm_signal_handler): Call run_timers if not SYNC_INPUT.
13967 Most of the code moved to run_timers.
13968 (do_pending_atimers): Call run_timers.
13969 (run_timers): New function.
13970
13971 * sysdep.c (emacs_write): If SYNC_INPUT and pending_atimers,
13972 run atimers.
13973
13974 * process.c (wait_reading_process_output): The same as above.
13975
139762008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
13977
13978 * minibuf.c (last_exact_completion): Remove variable.
13979 (Fdelete_minibuffer_contents, do_completion, Fminibuffer_complete)
13980 (complete_and_exit_1, complete_and_exit_2)
13981 (Fminibuffer_complete_and_exit, Fminibuffer_complete_word)
13982 (Fdisplay_completion_list, display_completion_list_1)
13983 (Fminibuffer_completion_help, Fself_insert_and_exit)
13984 (Fexit_minibuffer, Fminibuffer_message): Move functions to
13985 minibuffer.el.
13986 (syms_of_minibuf): Remove corresponding initializations.
13987
13988 * keyboard.c (Qdeactivate_mark): New var.
13989 (command_loop_1): Use it to call `deactivate-mark'.
13990 (syms_of_keyboard): Initialize it.
13991
13992 * xdisp.c (redisplay_internal): Reset tty's color_mode when switching
13993 to another frame.
13994 * frame.c (do_switch_frame): Refine the top_frame/async_visible code.
13995 Don't call set_tty_color_mode.
13996 (store_frame_param): Reset previous_frame rather than call
13997 set_tty_color_mode.
13998 * term.c (set_tty_color_mode): Rewrite.
13999 * dispextern.h (set_tty_color_mode): New type.
14000 * termchar.h (struct tty_display_info): Add `previous_color_mode'.
14001
140022008-04-08 Stefan Monnier <monnier@iro.umontreal.ca>
14003
14004 * keymap.c (access_keymap): Remove the value 2 for t_ok which was used
14005 for generic chars, which do not exist any more in emacs-unicode.
14006
140072008-04-08 Michael Albinus <michael.albinus@gmx.de>
14008
14009 * coding.c (detect_coding_emacs_mule)
14010 (Ffind_operation_coding_system): Fix typo.
14011
140122008-04-08 Jason Rumney <jasonr@gnu.org>
14013
14014 * w32uniscribe.c (SNAME): Extract only symbol name.
14015
14016 * w32font.h (struct w32_metric_cache): New struct.
14017 (w32font_info): Use it.
14018 (W32METRIC_NO_ATTEMPT, W32METRIC_SUCCESS, W32METRIC_FAIL)
14019 (CACHE_BLOCKSIZE): New constants.
14020
14021 * w32font.c (Qja, Qko, Qzh): New symbols.
14022 (syms_of_w32font): Initialise them.
14023 (font_matches_spec): Use them to filter by language.
14024 (recompute_cached_metrics): Remove function.
14025 (compute_metrics, clear_cached_metrics): New functions.
14026 (w32font_encode_char): Use them to manage metric cache.
14027 (w32font_text_extents): Cache metrics for all glyphs on demand.
14028 Delay converting glyph indices to WORD until needed.
14029 (w32font_open_internal): Initialize metric cache to empty.
14030 (registry_to_w32_charset): Charset should always be a symbol.
14031 (fill_in_logfont, list_all_matching_fonts): Family should
14032 always be a symbol.
14033
140342008-04-06 Jason Rumney <jasonr@gnu.org>
14035
14036 * w32uniscribe.c (uniscribe_shape): Increase items buffer size.
14037 Give up if glyph indices not supported. Use uniscribe obtained
14038 ABC widths for individual metrics. Map glyph clusters back to
14039 characters using fClusterStart flag. Return number of glyphs
14040 produced, not chars processed.
14041 (uniscribe_shape): Map char at FROM to current glyph.
14042
140432008-04-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14044
14045 * macmenu.c (fill_menu) [TARGET_API_MAC_CARBON]:
14046 Use SetMenuItemHierarchicalMenu.
14047
140482008-04-05 Jason Rumney <jasonr@gnu.org>
14049
14050 * image.c (pbm_load): Allow color values up to 65535.
14051 Throw an error if max_color_idx is outside the supported range.
14052 Report an error when image size is invalid.
14053 Read two bytes at a time when raw images have max_color_idx above 255.
14054
140552008-04-05 Kenichi Handa <handa@ni.aist.go.jp>
14056
14057 * ccl.c (ccl_driver): If ccl->quit_silently is nonzero, don't
14058 append "CCL: Quitted" when the CCL program is quitted.
14059 (setup_ccl_program): Initialize ccl->quit_silently to zero.
14060
14061 * ccl.h (struct ccl_program): New member quit_silently.
14062
140632008-04-05 Chong Yidong <cyd@stupidchicken.com>
14064
14065 * search.c (compile_pattern_1): Treat non-nil and non-string of
14066 search-spaces-regexp as nil.
14067
14068 * minibuf.c (Fassoc_string): Tweak docstring.
14069
140702008-04-05 Eli Zaretskii <eliz@gnu.org>
14071
14072 * dired.c (Ffile_attributes): Support inode numbers wider than 32
14073 bits. Remove ugly WINDOWSNT-specific kludge introduced on
14074 2008-03-14 to force inode be positive.
14075
14076 * w32.c (sys_chown, stat, fstat): Use S_* constants instead of
14077 _S_* ones, since we now use our own sys/stat.h.
14078 (stat, fstat): Don't mangle the inode number.
14079 (init_user_info): Don't restrict UID and GID to 0-60000 range.
14080
140812008-04-04 Stefan Monnier <monnier@iro.umontreal.ca>
14082
14083 * frame.h (struct frame): Give one more bit to `visible' since we use
14084 values larger than 1 to indicate obscured frames on ttys.
14085
14086 * keymap.c (Qkeymap_canonicalize): New var.
14087 (Fmap_keymap_internal): New fun.
14088 (describe_map): Use keymap-canonicalize.
14089
14090 * undo.c (last_boundary_buffer, last_boundary_position): New vars.
14091 (Fundo_boundary): Set them.
14092 (syms_of_undo): Initialize them.
14093 (record_point): Use them instead of last_point_position*.
14094 (last_undo_buffer): Change type.
14095
140962008-04-04 Jason Rumney <jasonr@gnu.org>
14097
14098 * w32font.c (w32font_text_extents): Use font's ascent and descent.
14099 (recompute_cached_metrics): Don't set ascent and descent per char.
14100
14101 * w32uniscribe.c (uniscribe_check_otf): Fix last change.
14102 (uniscribe_check_otf): Add GC protection before consing.
14103 Rearrange loop for counting features.
14104
141052008-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
14106
14107 * insdel.c (insert_from_buffer_1): Don't compare bytes in destination
14108 buffer with byte-size of source buffer.
14109
141102008-04-03 Chong Yidong <cyd@stupidchicken.com>
14111
14112 * callint.c (Fcall_interactively): Handle temporary region even
14113 when shift-select-mode is off.
14114
141152008-04-03 Jason Rumney <jasonr@gnu.org>
14116
14117 * w32uniscribe.c (uniscribe_check_otf): Sanity check otf_spec.
14118
141192008-04-03 Kenichi Handa <handa@m17n.org>
14120
14121 * coding.c (CATEGORY_MASK_ANY): Add CATEGORY_MASK_UTF_16_AUTO.
14122 (CATEGORY_MASK_UTF_16): Likewise.
14123 (detect_coding_utf_16): Add heuristics to reject utf-16 for a
14124 binary file.
14125 (detect_coding): Add null-byte detection for a binary file.
14126 (detect_coding_system): Likewise.
14127
141282008-04-03 Jason Rumney <jasonr@gnu.org>
14129
14130 * w32uniscribe.c: New file.
14131
14132 * font.h (uniscribe_font_driver) [WINDOWSNT]: Declare for w32fns.c.
14133
14134 * w32font.h (uniscribe_check_otf): Declare for w32font.c.
14135
14136 * w32font.c (Qbalinese, Qbuginese, Qbuhid, Qcuneiform, Qcypriot)
14137 (Qdeseret, Qglagolitic, Qgothic, Qhanunoo, Qkharoshthi)
14138 (Qlimbu, Qlinear_b, Qold_italic, Qold_persian, Qosmanya)
14139 (Qphags_pa, Qphoenician, Qshavian, Qsyloti_nagri)
14140 (Qtagalog, Qtagbanwa, Qtai_le, Qtifinagh, Qugaritic)
14141 (Qphonetic): New symbols.
14142 (syms_of_w32font): Initialize them.
14143 (font_supported_scripts): Use them.
14144 (w32font_list_family): List all charsets.
14145 (w32font_text_extents, recompute_cached_metrics): Fix metric
14146 calculations.
14147 (w32_enumfont_pattern_entity): Make full_type a DWORD.
14148 Give opentype fonts their own format.
14149 (font_matches_spec): New arguments backend and logfont.
14150 Handle :otf spec for uniscribe backend.
14151 (add_font_entity_to_list): Match truetype fonts in uniscribe backend.
14152 (fill_in_logfont): Use DEFAULT_CHARSET when charset not supplied.
14153
14154 * w32fns.c (Fx_create_frame): Conditionally register uniscribe
14155 font backend.
14156 (globals_of_w32fns): Initialize uniscribe font backend.
14157
14158 * makefile.w32-in (CONFIG_H): New variable. Use it to clean up
14159 dependencies.
14160 (w32uniscribe.$(O)): New file to build.
14161 (FONT_OBJ): Include w32uniscribe.$(O).
14162 (LIBS): Add uniscribe libraries.
14163
14164 * ftfont.c (ftfont_get_open_type_spec): Check spec->script, not val.
14165
141662008-04-02 Chong Yidong <cyd@stupidchicken.com>
14167
14168 * callint.c (Vshift_select_mode): New var.
14169 (Finteractive): Document new ^ spec.
14170 (Fcall_interactively): Call handle-shift-selection if the ^ spec
14171 is present.
14172
14173 * keyboard.c (Vthis_command_keys_shift_translated): New var.
14174 (command_loop_1): Avoid running the direct display versions of
14175 forward-char and backward-char if shift-selection may occur.
14176 (read_key_sequence): Set Vthis_command_keys_shift_translated if
14177 shift-translation takes place.
14178
14179 * buffer.c (Vtransient_mark_mode): Move docstring to simple.el to
14180 avoid clobbering by define-minor-mode.
14181
14182 * cmds.c (Fforward_char, Fbackward_char, Fforward_line)
14183 (Fbeginning_of_line, Fend_of_line): Add ^ interactive spec.
14184
14185 * syntax.c (Fforward_word): Add ^ interactive spec.
14186
14187 * window.c (Fscroll_up, Fscroll_down, Fscroll_left)
14188 (Fscroll_right): Add ^ interactive spec.
14189
141902008-04-01 Stefan Monnier <monnier@iro.umontreal.ca>
14191
14192 * xdisp.c (try_window_id): Don't forget to reset delta_bytes.
14193
14194 * casefiddle.c (casify_object): Fix up int/EMACS_INT mixup.
14195
14196 * charset.c (Funibyte_charset, Fset_unibyte_charset): Remove.
14197
141982008-03-31 Juri Linkov <juri@jurta.org>
14199
14200 * window.c (Fdisplay_buffer): Reinitialize `tem' to nil.
14201
142022008-03-30 Jan Djärv <jan.h.d@swipnet.se>
14203
14204 * gtkutil.c (xg_set_geometry): Fix indentation.
14205 (xg_resize_outer_widget): Remove.
14206 (x_wm_size_hint_off): Fix indentation.
14207 (xg_frame_set_char_size): Call flush_and_sync after
14208 gtk_window_resize.
14209 (x_wm_set_size_hint): Pass NULL as geometry window to
14210 gtk_window_set_geometry_hints due to Gtk+ bug nr 68668.
14211 Add menu bar and tool bar height to base height.
14212 (xg_update_frame_menubar, free_frame_menubar)
14213 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
14214 (update_frame_tool_bar, free_frame_tool_bar):
14215 Change xg_resize_outer_widget to xg_frame_set_char_size.
14216
142172008-03-30 Michael Albinus <michael.albinus@gmx.de>
14218
14219 * dbusbind.c (QCdbus_timeout): New D-Bus internal symbol.
14220 (Fdbus_call_method): New parameter TIMEOUT.
14221 (dbus-send-signal): Optimize UNGCPRO call.
14222
142232008-03-29 Juri Linkov <juri@jurta.org>
14224
14225 * window.c (Fdisplay_buffer): Move call to
14226 Vsplit_window_preferred_function out of conditions that check
14227 if window is eligible for vertical splitting.
14228 When Vsplit_window_preferred_function is non-nil, call it and use
14229 its non-nil return value as window. Otherwise, continue doing
14230 vertical splitting using Fsplit_window with arg horflag=nil.
14231 (syms_of_window) <Vsplit_window_preferred_function>: Change the
14232 default value from `split-window' to nil.
14233
142342008-03-29 Juri Linkov <juri@jurta.org>
14235
14236 * callint.c (Fcall_interactively): Revert 2008-03-16 change
14237 for interactive code letters 'b' and 'B'.
14238
142392008-03-29 Eli Zaretskii <eliz@gnu.org>
14240
14241 * fileio.c (Fexpand_file_name): Convert the value of $HOME to a
14242 multibyte string.
14243
142442008-03-29 Stefan Monnier <monnier@iro.umontreal.ca>
14245
14246 * keyboard.c (pending_funcalls): New var.
14247 (timer_check): Run it.
14248 (syms_of_keyboard): Initialize it.
14249 * terminal.c (Qrun_hook_with_args, Qdelete_terminal_functions)
14250 (Vdelete_terminal_functions): New vars.
14251 (syms_of_terminal): Initialize them.
14252 (Fdelete_terminal): Run delete-terminal-functions.
14253 * xdisp.c (safe_eval): Rewrite.
14254 (safe_call2): New fun.
14255 * frame.c (Qdelete_frame_functions): New var.
14256 (syms_of_frame): Initialize it.
14257 (Fdelete_frame): Use it and use safe_call2 and pending_funcalls.
14258 * lisp.h (safe_call2, pending_funcalls): Declare.
14259
142602008-03-28 Andreas Schwab <schwab@suse.de>
14261
14262 * indent.c (Fmove_to_column): Move declaration before statements.
14263
142642008-03-27 Stefan Monnier <monnier@iro.umontreal.ca>
14265
14266 * frame.h (enum fullscreen_type): Give it a name. Move it before use.
14267 (struct frame): Use bit fields for boolean vars.
14268
14269 * process.c (server_accept_connection): Simplify naming.
14270 (emacs_get_tty_pgrp): Use SDATA.
14271
14272 * coding.c (decode_coding_object): Fix last change.
14273
142742008-03-27 Jason Rumney <jasonr@gnu.org>
14275
14276 * w32fns.c (start_hourglass): Suppress hourglass on tty frames.
14277
142782008-03-27 Kenichi Handa <handa@ni.aist.go.jp>
14279
14280 * charset.c (Fdefine_charset_internal): Change the way of
14281 registering charsets in Vcharset_order_list.
14282 (syms_of_charset): Make the charset `eight-bit' supplementary.
14283
142842008-03-26 Alexandre Oliva <aoliva@redhat.com> (tiny change)
14285
14286 * regex.c (EXTEND_BUFFER): Change order of pointer addition
14287 operations, to avoid having the difference between pointers
14288 overflow.
14289
142902008-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
14291
14292 * indent.c (check_display_width): New fun.
14293 (scan_for_column): Use it.
14294
14295 * data.c (syms_of_data): Mark most-positive-fixnum and
14296 most-negative-fixnum as constants.
14297
14298 * xdisp.c (redisplay_internal): Reset selected_frame earlier.
14299
14300 * indent.c (scan_for_column): Extract from current_column_1.
14301 Merge with the same code from Fmove_to_column.
14302 (current_column_1, Fmove_to_column): Use it.
14303
143042008-03-25 Stefan Monnier <monnier@iro.umontreal.ca>
14305
14306 * keymap.c (map_keymap_internal): New fun.
14307 (map_keymap): Use it.
14308 (Fmap_keymap_internal): New fun.
14309 (Fmap_keymap): Remove left-out test from before make_save_value.
14310
14311 * keymap.c (Fmap_keymap): Use `map-keymap-sorted.
14312
14313 * frame.c (Fmodify_frame_parameters, x_set_frame_parameters):
14314 Use XCAR/XCDR.
14315
14316 * process.h (struct Lisp_Process): Remove filter_multibyte.
14317 * process.c (QCfilter_multibyte): Remove.
14318 (setup_process_coding_systems): Don't use filter_multibyte.
14319 (Fstart_process, Fmake_network_process): Don't set filter_multibyte.
14320 (read_process_output): Don't adjust multibyteness to filter_multibyte.
14321 (Fset_process_filter_multibyte): Change the coding-system to
14322 approximate the previous behavior.
14323 (Fprocess_filter_multibyte_p): Get the multibyteness straight from the
14324 coding-system.
14325
14326 * coding.c (decode_coding_object): When not decoding into a buffer,
14327 obey the coding system's preference of (uni|multi)byte.
14328
143292008-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
14330
14331 * casefiddle.c (casify_object): Avoid pathological N^2 worst case if
14332 every char is changed and has a different byte-length.
14333 (Fupcase_word, Fdowncase_word, Fcapitalize_word, operate_on_word):
14334 Fix int -> EMACS_INT.
14335
143362008-03-23 David Hansen <david.hansen@gmx.net>
14337
14338 * dbusbind.c (xd_read_message): Remove extra copying of message
14339 strings. Check for NULL `interface' or `member'.
14340
143412008-03-22 Eli Zaretskii <eliz@gnu.org>
14342
14343 * w32.c (readdir): If FindFirstFile/FindNextFile return in
14344 cFileName a file name that includes `?' characters, use the 8+3
14345 alias in cAlternateFileName instead.
14346
143472008-03-21 Stefan Monnier <monnier@iro.umontreal.ca>
14348
14349 * buffer.c (enlarge_buffer_text): Fix int -> EMACS_INT.
14350
143512008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
14352
14353 * intervals.c (temp_set_point, temp_set_point_both): Use EMACS_INT.
14354 (set_point, set_point_both): Use EMACS_INT. Remove `buffer' arg,
14355 work on current_buffer only instead (that was already the case
14356 for some of the code anyway).
14357 * buffer.h (set_point, set_point_both): Remove buffer arg, use long int.
14358 (temp_set_point, temp_set_point_both): Use EMACS_INT.
14359 (SET_PT, SET_PT_BOTH): Adjust.
14360 * intervals.h (set_point, temp_set_point, set_point_both)
14361 (temp_set_point_both): Remove redundant declarations.
14362
143632008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
14364
14365 * fileio.c (Finsert_file_contents):
14366 * lread.c (Feval_buffer): Use BUF_TEMP_SET_PT.
14367 * buffer.h (BUF_SET_PT): Remove. set_point_both doesn't work right
14368 when buffer != current_buffer anyway.
14369
143702008-03-20 Andreas Schwab <schwab@suse.de>
14371
14372 * callint.c (Fcall_interactively) [case 'B']: Use other-buffer
14373 as default.
14374
143752008-03-19 Jason Rumney <jasonr@gnu.org>
14376
14377 * w32fns.c (hourglass_timer, hourglass_hwnd): New variables.
14378 (syms_of_w32fns): Initialize them.
14379 (HOURGLASS_ID): New constant.
14380 (x_window_to_frame): Don't check hourglass_window.
14381 (w32_wnd_proc) <WM_TIMER>: Handle hourglass_timer.
14382 (w32_wnd_proc) <WM_EXITMENULOOP>: Set pending hourglass cursor.
14383 (w32_wnd_proc) <WM_SETCURSOR>: Set the hourglass or current cursor.
14384 (w32_wnd_proc) <WM_EMACS_SETCURSOR>: Set frame's current_cursor.
14385 Only change the cursor if hourglass is not active.
14386 (Fx_create_frame): Initialize frame's current_cursor.
14387 (hourglass_atimer): Remove.
14388 (hourglass_started): New function.
14389 (start_hourglass, cancel_hourglass, hide_hourglass): Adapt to w32.
14390 (show_hourglass): Adapt to w32, changing argument to frame.
14391
14392 * w32term.h (struct w32_output): Remove hourglass_window.
14393 Add current_cursor.
14394
14395 * eval.c (call_debugger, Fsignal):
14396 * keyboard.c (recursive_edit_1, cmd_error, Ftop_level)
14397 (command_loop_1, Fread_key_sequence, Fread_key_sequence_vector)
14398 (Fexecute_extended_command, cancel_hourglass_unwind):
14399 * minibuf.c (read_minibuf):
14400 * fns.c (Fy_or_n_p): Enable hourglass when HAVE_WINDOW_SYSTEM.
14401
144022008-03-19 Stefan Monnier <monnier@iro.umontreal.ca>
14403
14404 * window.c (run_funs): New fun.
14405 (run_window_configuration_change_hook): Use it to run the buffer-local
14406 and the global part of the hook.
14407
14408 * xdisp.c (format_mode_line_unwind_data): Add window argument.
14409 (unwind_format_mode_line): Restore selected window.
14410 (x_consider_frame_title, Fformat_mode_line): Set selected window.
14411
144122008-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
14413
14414 * editfns.c (Fchar_equal): Check they are valid characters.
14415
14416 * buffer.h (Fbuffer_list): Declare (for use in callint.c).
14417
144182008-03-17 Andreas Schwab <schwab@suse.de>
14419
14420 * regex.c (re_match_2_internal): Properly match raw 8-bit bytes
14421 against a charset.
14422
14423 * lisp.h (Fbuffer_list): Declare.
14424
144252008-03-17 Jan Djärv <jan.h.d@swipnet.se>
14426
14427 * gtkutil.c (free_frame_tool_bar): Only call gtk_container_remove if
14428 handlebox_widget is != 0.
14429
144302008-03-16 Juri Linkov <juri@jurta.org>
14431
14432 * callint.c (Fcall_interactively): For interactive code letters
14433 'b' and 'B' put the buffer list into the list of default "future"
14434 values of the minibuffer.
14435
144362008-03-16 Andreas Schwab <schwab@suse.de>
14437
14438 * keyboard.c (read_key_sequence): Fix downcasing of letters with
14439 modifiers.
14440
14441 * regex.c (re_match_2_internal): Correct matching of a charset
14442 against latin-1 characters.
14443
144442008-03-16 Kenichi Handa <handa@m17n.org>
14445
14446 * coding.c (CHAR_STRING_ADVANCE_NO_UNIFY)
14447 (STRING_CHAR_ADVANCE_NO_UNIFY): New macros.
14448 (coding_alloc_by_making_gap): Fix the way to preserve data in the gap.
14449 (alloc_destination): Fix the 2nd arg to coding_alloc_by_making_gap.
14450 (encode_coding_utf_8): Use CHAR_STRING_ADVANCE_NO_UNIFY instead of
14451 CHAR_STRING_ADVANCE.
14452 (produce_chars): Fix for the case that the source and the
14453 destination are the same buffer. Use CHAR_STRING_ADVANCE_NO_UNIFY
14454 instead of CHAR_STRING_ADVANCE.
14455 (consume_chars): Use STRING_CHAR_ADVANCE_NO_UNIFY instead of
14456 STRING_CHAR_ADVANCE.
14457
144582008-03-15 Andreas Schwab <schwab@suse.de>
14459
14460 * regex.c (re_match_2_internal): Correct matching of eight bit
14461 characters in unibyte strings.
14462
144632008-03-15 Martin Rudalics <rudalics@gmx.at>
14464
14465 * buffer.c (overlays_in, Foverlays_in): Include empty overlays
14466 at end of range when it coincides with the end of the buffer.
14467
144682008-03-14 Eli Zaretskii <eliz@gnu.org>
14469
14470 * dired.c (Ffile_attributes) [WINDOWSNT]: Force inode be positive.
14471
14472 * w32fns.c (globals_of_w32fns, Fx_create_frame): Fix last change.
14473
144742008-03-14 Jason Rumney <jasonr@gnu.org>
14475
14476 * editfns.c (initial_tz): New variable.
14477 (syms_of_editfns): Initialize it.
14478 (Fset_time_zone_rule): Set it when first called.
14479 Use it when TZSTRING is nil.
14480
14481 * w32fns.c (MONITOR_DEFAULT_TO_NEAREST, struct MONITOR_INFO)
14482 (MonitorFromPoint_Proc, GetMonitorInfo_Proc): New definitions.
14483 (monitor_from_point_fn, get_monitor_info_fn): New globals.
14484 (globals_of_w32fns): Initialize them.
14485 (compute_tip_xy): Use them to position tooltips.
14486
144872008-03-14 Glenn Morris <rgm@gnu.org>
14488
14489 * emacs.c (main): Revert previous change.
14490 (standard_args): Revert -internal-script back to -scriptload,
14491 and remove the long-option form.
14492
144932008-03-13 Glenn Morris <rgm@gnu.org>
14494
14495 * emacs.c (main, standard_args): Rename -scriptload to -internal-script.
14496 Remove option -enable-font-backend.
14497
144982008-03-12 Stefan Monnier <monnier@iro.umontreal.ca>
14499
14500 * buffer.c (Fswitch_to_buffer): Fall back on pop-to-buffer.
14501
145022008-03-11 Jan Djärv <jan.h.d@swipnet.se>
14503
14504 * xterm.c (x_connection_closed): For GTK: If this is the last
14505 terminal just exit without closing the display.
14506
145072008-03-11 Jason Rumney <jasonr@gnu.org>
14508
14509 * w32font.c (w32font_full_name): Use floor to round.
14510
145112008-03-10 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
14512
14513 * sound.c (alsa_configure): Declare vol at beginning of block.
14514
14515 * fontset.c (Ffontset_info): Remove extra semicolon.
14516
145172008-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
14518
14519 * fileio.c (Fsubstitute_in_file_name): Fix up computation of maximum
14520 size of resulting string.
14521
145222008-03-10 Jason Rumney <jasonr@gnu.org>
14523
14524 * dispnew.c (adjust_glyph_matrix): Initialize window_height.
14525
145262008-03-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14527
14528 * xdisp.c (handle_single_display_spec): Undo 2007-10-16 changes.
14529 Don't pretend as if characters with display property haven't been
14530 consumed for string-replacing-string case.
14531
145322008-03-08 Kim F. Storm <storm@cua.dk>
14533
14534 * xdisp.c (GET_NEXT_DISPLAY_ELEMENT): New macro.
14535 (get_next_display_element, next_element_from_string)
14536 (next_element_from_ellipsis, next_element_from_buffer): Use it.
14537
145382008-03-08 Andreas Schwab <schwab@suse.de>
14539
14540 * process.h (struct Lisp_Process): Declare bit fields as unsigned.
14541
145422008-03-06 Jason Rumney <jasonr@gnu.org>
14543
14544 * w32font.c (w32_registry): Take font_type argument. Use ANSI
14545 when charset not specified. Only translate ANSI to unicode when
14546 font_type is truetype.
14547 (w32font_coverage_ok): New function.
14548 (add_font_entity_to_list): Use it to filter unsuitable fonts.
14549
145502008-03-05 Kenichi Handa <handa@ni.aist.go.jp>
14551
14552 * lread.c (Fread_char): Resolve modifiers.
14553 (Fread_char_exclusive): Likewise.
14554
14555 * character.c (char_resolve_modifier_mask): New function.
14556 (char_string): Use char_resolve_modifier_mask.
14557 (Fchar_resolve_modifiers): New function.
14558 (syms_of_character): Declare Fchar_resolve_modifiers as Lisp
14559 function.
14560
145612008-03-04 Jason Rumney <jasonr@gnu.org>
14562
14563 * makefile.w32-in: Always include w32font.c in the build.
14564 * w32font.c: Wrap in USE_FONT_BACKEND conditional.
14565
145662008-03-04 Andreas Schwab <schwab@suse.de>
14567
14568 * Makefile.in (clean): Remove emacs-*.*.* instead of emacs-*.
14569 (versionclean): Likewise.
14570
145712008-03-04 Juanma Barranquero <lekktu@gmail.com>
14572
14573 * .cvsignore: Add oo.
14574
145752008-03-03 Andreas Schwab <schwab@suse.de>
14576
14577 * coding.c (decode_coding_object): Inhibit gap shrinking while
14578 decoding in place.
14579
145802008-03-03 Dan Nicolaescu <dann@ics.uci.edu>
14581
14582 * w32term.c: Remove unused include "gnu.h".
14583 * makefile.w32-in (w32term.o): Don't depend on gnu.h.
14584
14585 * gnu.h: Rename to ...
14586 * emacs-icon.h: ... this.
14587 * xterm.c: Use emacs-icon.h instead of gnu.h.
14588 * Makefile (xterm.o): Depend on emacs-icon.h, not gnu.h.
14589
145902008-03-03 Juanma Barranquero <lekktu@gmail.com>
14591
14592 * w32font.c: Include math.h.
14593
145942008-03-03 Jason Rumney <jasonr@gnu.org>
14595
14596 * w32font.c (recompute_cached_metrics): Change font arg to w32font_info.
14597 Compute options separately.
14598 (w32font_open_internal): Set glyph_idx before caching metrics.
14599
14600 * w32font.h (NTM_PS_OPENTYPE, NTM_TT_OPENTYPE, NTM_TYPE1):
14601 Define if system headers don't.
14602 (struct w32font_info): Enlarge ascii_metrics. Add glyph_idx.
14603 (w32font_encode_char): Don't declare here.
14604
14605 * w32font.c (Quniscribe, QCformat): New symbols.
14606 (syms_of_w32font): Define them.
14607 (w32font_has_char): Indicate uncertainty.
14608 (w32font_encode_char): Encode as glyph point. Make static.
14609 (recompute_cached_metrics): New function.
14610 (w32font_open_internal): Use it. Set font to use glyph points
14611 initially. Set format based on type of font.
14612 (w32font_text_extents, w32font_draw): Optionally use glyph points.
14613 (w32_enumfont_pattern_entity): Accept backend arg. Set type based
14614 on it. Set format based on information available here.
14615 (add_font_entity_to_list): Identify backend based on opentype_only.
14616
146172008-03-02 Andreas Schwab <schwab@suse.de>
14618
14619 * ftfont.c (ftfont_pattern_entity): Fix aliasing violations.
14620
14621 * coding.c (decode_coding_big5, produce_chars):
14622 Fix typos in last change.
14623
146242008-03-02 Kentaro Ohkouchi <nanasess@fsm.ne.jp>
14625
14626 * gnu.h: New icon.
14627
146282008-03-02 Kenichi Handa <handa@m17n.org>
14629
14630 * coding.c (decode_coding_utf_8): When eol-type of CODING is
14631 `dos', don't decode '\r' if that is the last in the source.
14632 (decode_coding_utf_16, decode_coding_emacs_mule)
14633 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
14634 (decode_coding_raw_text, decode_coding_charset): Likewise.
14635 (produce_chars): Don't decode EOL here. Use EMACS_INT.
14636
146372008-03-01 Jason Rumney <jasonr@gnu.org>
14638
14639 * w32font.c (w32font_full_name): Report point size for scalable fonts.
14640
146412008-03-01 Kim F. Storm <storm@cua.dk>
14642
14643 * dispextern.h (CHAR_GLYPH_SPACE_P): Check for default face.
14644
146452008-03-01 Jason Rumney <jasonr@gnu.org>
14646
14647 * w32font.c (w32font_full_name): New function.
14648 (w32font_open_internal): Use it.
14649
146502008-03-01 Kim F. Storm <storm@cua.dk>
14651
14652 * dispnew.c (line_draw_cost): Fix invalid glyph check.
14653
146542008-03-01 Jason Rumney <jasonr@gnu.org>
14655
14656 * font.c (font_unparse_fcname): Increase len when style is a symbol.
14657
146582008-03-01 Jan Djärv <jan.h.d@swipnet.se>
14659
14660 * xterm.c (handle_one_xevent): For Gtk+ and ConfigureNotify, call
14661 xg_frame_resized when the event is for the edit widget.
14662
14663 * gtkutil.h (xg_frame_resized): Renamed from xg_resize_widgets.
14664
14665 * gtkutil.c (xg_resize_outer_widget): Only do one of set_geometry or
14666 set_char_size.
14667 (xg_frame_resized): Renamed from xg_resize_widgets. Remove all
14668 operations on widgets here. Just set frame size if needed.
14669 (flush_and_sync, x_wm_size_hint_off, xg_pack_tool_bar): New functions.
14670 (xg_frame_set_char_size): Call x_wm_size_hint_off before resizing.
14671 (x_wm_set_size_hint): Set size hints on the edit widget only, not
14672 the whole frame.
14673 (xg_create_tool_bar): Move attachment of the tool bar to
14674 xg_pack_tool_bar. Do not attach the tool bar if there are no items.
14675 (free_frame_tool_bar): Remove call to SET_FRAME_GARBAGED.
14676
146772008-03-01 Jason Rumney <jasonr@gnu.org>
14678
14679 * w32fns.c (w32_msg_pump): Disable debug code.
14680
146812008-03-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14682
14683 * m/intel386.h [MAC_OSX || DARWIN]: Define NO_ARG_ARRAY if _LP64.
14684
146852008-02-29 Chong Yidong <cyd@stupidchicken.com>
14686
14687 * xdisp.c (next_overlay_string): Don't set
14688 overlay_strings_at_end_processed_p if we're currently reading from
14689 a display string.
14690
146912008-02-29 Stefan Monnier <monnier@iro.umontreal.ca>
14692
14693 * xdisp.c (get_overlay_strings_1): Fix typo.
14694
146952008-02-29 Chong Yidong <cyd@stupidchicken.com>
14696
14697 * xdisp.c (get_overlay_strings_1): Add missing argument type.
14698
146992008-02-28 Kenichi Handa <handa@ni.aist.go.jp>
14700
14701 * ftfont.c (ftfont_match): Explicitly set pixelsize in pattern.
14702
14703 * xdisp.c (display_mode_element): Cancel the previous change.
14704 (decode_mode_spec): Likewise.
14705 (handle_auto_composed_prop): Don't make composition if it->string
14706 is a string.
14707
147082008-02-27 Kim F. Storm <storm@cua.dk>
14709
14710 * lisp.h (GLYPH): Change type from int to struct with separate char
14711 and face_id members.
14712 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Delete macros.
14713 (GLYPH_CHAR, GLYPH_FACE): Remove slow versions with frame arg.
14714 (FAST_GLYPH_CHAR, FAST_GLYPH_FACE): Rename macros to ...
14715 (GLYPH_CHAR, GLYPH_FACE): ... these. Change users.
14716 (FAST_MAKE_GLYPH, MAKE_GLYPH): Remove. Rewrite users to use ...
14717 (SET_GLYPH, SET_GLYPH_CHAR, SET_GLYPH_FACE): ... these macros instead.
14718 (GLYPH_CODE_CHAR, GLYPH_CODE_FACE, GLYPH_CODE_P)
14719 (GLYPH_CODE_CHAR_VALID_P, SET_GLYPH_FROM_GLYPH_CODE): New macros to
14720 handle new Lisp glyph code encoding, either an integer or a cons.
14721
14722 * disptab.h (GLYPH_SIMPLE_P): Rewrite.
14723 (GLYPH_ALIAS): Delete.
14724 (GLYPH_ALIAS_P, GLYPH_FOLLOW_ALIASES): Rewrite.
14725 (GLYPH_LENGTH, GLYPH_STRING): Use GLYPH_CHAR.
14726 (GLYPH_FROM_CHAR): Replace macro by ...
14727 (SET_GLYPH_FROM_CHAR): ... this macro. Change users.
14728
14729 * dispextern.h (CHAR_GLYPH_SPACE_P): Simplify.
14730 (GLYPH_FROM_CHAR_GLYPH): Replace macro by ...
14731 (SET_GLYPH_FROM_CHAR_GLYPH): ... this macro. Change users.
14732 (GLYPH_INVALID_P): New macro.
14733 (spec_glyph_lookup_face): Update prototype.
14734
14735 * dispnew.c (line_draw_cost): Adapt to new glyph type.
14736 (build_frame_matrix_from_leaf_window): Adapt to new glyph type and
14737 new glyph code encoding.
14738 (spec_glyph_lookup_face): No return value; update passed glyph instead.
14739 (init_display): Use SET_CHAR_GLYPH to initialize space_glyph.
14740
14741 * xdisp.c (get_next_display_element, next_element_from_display_vector):
14742 Adapt to new glyph type and new glyph code encoding.
14743
14744 * term.c (encode_terminal_code, produce_special_glyphs): Likewise.
14745
14746 * indent.c (current_column, current_column_1, Fmove_to_column)
14747 (compute_motion): Adapt to new glyph code encoding.
14748
14749 * msdos.c (IT_write_glyphs): Adapt to new glyph type.
14750
147512008-02-27 Chong Yidong <cyd@stupidchicken.com>
14752
14753 * process.c (wait_reading_process_output): Check for window
14754 changes caused by timers.
14755 Suggested by Johan Bockgård.
14756
147572008-02-27 Glenn Morris <rgm@gnu.org>
14758
14759 * emacs.c (USAGE1): Add `--disable-font-backend'.
14760
147612008-02-27 Stefan Monnier <monnier@iro.umontreal.ca>
14762
14763 * fileio.c (Finsert_file_contents): Don't reset undo_list if no change
14764 is made to the buffer.
14765
147662008-02-26 Stefan Monnier <monnier@iro.umontreal.ca>
14767
14768 * dispextern.h (face_at_buffer_position, face_for_overlay_string)
14769 (face_at_string_position):
14770 * xfaces.c (face_at_buffer_position, face_for_overlay_string)
14771 (face_at_string_position):
14772 * xdisp.c (display_string, next_overlay_change):
14773 * buffer.h (overlays_at):
14774 * buffer.c (overlays_at): Use EMACS_INT for buffer positions.
14775 Update callers.
14776
147772008-02-26 Chong Yidong <cyd@stupidchicken.com>
14778
14779 * editfns.c (Fformat): Doc fix.
14780
147812008-02-26 Juanma Barranquero <lekktu@gmail.com>
14782
14783 * font.c (Ffont_spec, Ffont_at): Fix typos in docstrings.
14784 (Ffont_put, Flist_families, Ffont_fill_gstring, Ffont_drive_otf)
14785 (Ffont_otf_alternates, Fquery_font): Doc fixes.
14786
147872008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
14788
14789 * buffer.c (Fbuffer_swap_text): New function.
14790 (syms_of_buffer): Defsubr it.
14791
147922008-02-25 Chong Yidong <cyd@stupidchicken.com>
14793
14794 * keyboard.c (command_loop_1): Revert 2006-10-09 change.
14795
147962008-02-25 Jason Rumney <jasonr@gnu.org>
14797
14798 * w32font.c (w32font_draw): Draw one character at a time when padding.
14799
148002008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
14801
14802 * window.c (Fdelete_window, Fadjust_window_trailing_edge):
14803 Handle a nil arg. Use run_window_configuration_change_hook.
14804 (delete_window, adjust_window_trailing_edge): Don't handle nil any more.
14805 (Fenlarge_window, Fshrink_window, Fset_window_configuration):
14806 Use run_window_configuration_change_hook.
14807
148082008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
14809
14810 * xdisp.c (x_produce_glyphs): For a visible glyph, assure at least
14811 1-pixel width.
14812
148132008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
14814
14815 * xdisp.c (fill_glyph_string): Pay attention to glyph->padding_p.
14816 (append_glyph): Set glyph->pixel_width and glyph->padding_p to 1
14817 if the glyph in the font is zero pixel with.
14818
14819 * dispextern.h (struct glyph_string): New member padding_p.
14820
14821 * w32font.c (w32font_draw): Pay attention to s->padding_p.
14822
14823 * ftxfont.c (ftxfont_draw): Pay attention to s->padding_p.
14824
14825 * xfont.c (xfont_draw): Pay attention to s->padding_p.
14826
14827 * xftfont.c (xftfont_draw): Pay attention to s->padding_p.
14828
14829 * font.c: If the font driver doesn't have `shape' function, return Qnil.
14830
148312008-02-25 Jason Rumney <jasonr@gnu.org>
14832
14833 * w32fns.c (enum_font_cb2): Don't use raster fonts for Unicode.
14834
148352008-02-24 Stefan Monnier <monnier@iro.umontreal.ca>
14836
14837 Allow fine-grained image-cache flushing.
14838 * dispextern.h (struct image): Add `dependencies' field.
14839 (clear_image_caches): Change arg to Lisp_Object.
14840 * image.c (make_image): Initialize `dependencies' field.
14841 (clear_image_cache): Change arg to allow fine-grained flushing.
14842 Perform the flush even if image-cache-eviction-delay is nil.
14843 (clear_image_caches): Change arg to Lisp_Object.
14844 (Fclear_image_cache): Expand meaning of the argument.
14845 (mark_image): Mark `dependencies' field.
14846 * xfaces.c (clear_face_cache): Adapt arg to call to clear_image_caches.
14847 (lface_hash): Use XHASH rather than XFASTINT.
14848 (face_at_buffer_position): Fix int -> EMACS_INT position.
14849 * xdisp.c (next_overlay_change): Fix int -> EMACS_INT position.
14850 (select_frame_for_redisplay): Remove code duplication.
14851 (redisplay_internal): Adapt arg to call to clear_image_caches.
14852
148532008-02-24 Dan Nicolaescu <dann@ics.uci.edu>
14854
14855 * s/vms4-0.h:
14856 * s/vms4-2.h:
14857 * s/vms4-4.h:
14858 * s/vms5-5.h: Remove, unused.
14859
14860 * s/irix5-2.h:
14861 * s/irix6-0.h:
14862 * s/riscos5.h:
14863 * s/mach-bsd4-3.h:
14864 * m/mips4.h: Remove files for obsolete systems.
14865
14866 * Makefile.in:
14867 * filelock.c:
14868 * unexmips.c:
14869 * m/hp9000s300.h:
14870 * m/iris4d.h:
14871 * s/aix3-1.h:
14872 * s/hpux.h:
14873 * s/msdos.h:
14874 * s/usg5-0.h:
14875 * s/usg5-2-2.h:
14876 * s/usg5-2.h:
14877 * s/usg5-3.h: Remove references to obsolete variables.
14878
14879 * s/irix5-0.h: Remove, move all the contents ...
14880 * s/irix6-5.h: ... here. Simplify.
14881 * config.in: Regenerate.
14882
148832008-02-24 Jason Rumney <jasonr@gnu.org>
14884
14885 * w32term.c (x_draw_glyph_string_background): Clear the background
14886 manually when cleartype is in use.
14887 (x_draw_glyph_string_foreground): Draw text transparently when
14888 cleartype is in use.
14889
14890 * w32font.c (w32font_text_extents): Avoid getting HDC and selecting
14891 a font into it unless we have to.
14892
148932008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
14894
14895 * intervals.h (INT_LISPLIKE): Remove. It may misfire.
14896 (NULL_INTERVAL_P, SET_INTERVAL_PARENT): Don't use it.
14897
148982008-02-18 Jason Rumney <jasonr@gnu.org>
14899
14900 * w32fns.c (Fw32_shell_execute): Encode parameters.
14901
149022008-02-09 Eli Zaretskii <eliz@gnu.org>
14903
14904 * fileio.c (syms_of_fileio) <insert-default-directory>: Doc fix.
14905
149062008-02-05 Juanma Barranquero <lekktu@gmail.com>
14907
14908 * unexhp9k800.c (read_header): Replace `legal' with `valid'.
14909
149102008-02-24 Ulrich Neumerkel <ulrich@complang.tuwien.ac.at> (tiny change)
14911
14912 * xterm.c (x_set_offset): Don't change the gravity if
14913 CHANGE_GRAVITY is -1.
14914
149152008-02-23 Chong Yidong <cyd@stupidchicken.com>
14916
14917 * fileio.c (auto_save_error_occurred): New var.
14918 (auto_save_error): Set it.
14919 (Fdo_auto_save): Don't overwrite the error message if an auto-save
14920 error occurred.
14921
149222008-02-23 Eli Zaretskii <eliz@gnu.org>
14923
14924 * w32.c (globals_of_w32): Add initializations for
14925 g_b_init_get_sid_sub_authority and
14926 g_b_init_get_sid_sub_authority_count.
14927
149282008-02-22 Stefan Monnier <monnier@iro.umontreal.ca>
14929
14930 * font.c (font_match_xlfd, font_check_xlfd_parse): New funs.
14931 (font_parse_xlfd): Use them for sanity check.
14932 (Finternal_set_font_style_table): Make sure the table is bijective.
14933
14934 Consolidate the image_cache to the terminal struct.
14935 * termhooks.h (P_): Remove redundant def.
14936 (struct terminal): New field `image_cache'.
14937 * frame.h (FRAME_IMAGE_CACHE): New macro. Use it everywhere in place
14938 of FRAME_X_IMAGE_CACHE.
14939 * xterm.h (struct x_display_info): Remove image_cache field.
14940 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
14941 * w32term.h (struct w32_display_info): Remove image_cache field.
14942 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
14943 * macterm.h (struct mac_display_info): Remove image_cache field.
14944 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
14945 * xterm.c (x_term_init):
14946 * w32term.c (w32_term_init):
14947 * macterm.c (mac_term_init): Set the image_cache in the terminal.
14948 * dispextern.h (clear_image_cache, forall_images_in_image_cache):
14949 Remove declarations.
14950 (clear_image_caches, mark_image_cache): New declarations.
14951 * xfaces.c (clear_face_cache):
14952 * xdisp.c (redisplay_internal): Use clear_image_caches.
14953 * image.c (clear_image_cache): Don't check that a frame is on
14954 a window-system before checking if it shares the same cache.
14955 (clear_image_caches): New function.
14956 (Fclear_image_cache): Use it.
14957 (mark_image): Move from allo.c.
14958 (mark_image_cache): Move from alloc.c and forall_images_in_image_cache.
14959 * alloc.c (mark_image, mark_image_cache): Move to image.c.
14960 (mark_object): Don't call mark_image_cache for frames.
14961 (mark_terminals): Call mark_image_cache.
14962
14963 * lisp.h (Fdelete_terminal): Declare.
14964
14965 * charset.h (CHECK_CHARSET, CHECK_CHARSET_GET_ID)
14966 (CHECK_CHARSET_GET_ATTR): Don't use the inexistent return value of
14967 wrong_type_argument.
14968
149692008-02-22 Kenichi Handa <handa@ni.aist.go.jp>
14970
14971 * Makefile.in (lisp): Remove devanagari.el, kannada.el,
14972 malayalam.el, and tamil.el. Add sinhala.el.
14973
149742008-02-21 Stefan Monnier <monnier@iro.umontreal.ca>
14975
14976 * xterm.c (x_connection_closed): Consolidate identical tests.
14977 (x_delete_terminal): Don't crash if called via x_connection_closed.
14978
149792008-02-21 Kenichi Handa <handa@ni.aist.go.jp>
14980
14981 * xdisp.c (decode_mode_spec): New arg string.
14982 (display_mode_element): Adjust for the above change.
14983
149842008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
14985
14986 * callint.c (Fcall_interactively): Use AREF.
14987
149882008-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
14989
14990 * font.c (font_unparse_xlfd): Don't ignore integer pixel size specs.
14991
149922008-02-18 Jan Djärv <jan.h.d@swipnet.se>
14993
14994 * xfns.c (Fx_show_tip): Set string to " " if empty.
14995
149962008-02-17 Dan Nicolaescu <dann@ics.uci.edu>
14997
14998 * callint.c (syms_of_callint): Initialize Vmark_even_if_inactive
14999 with Qt.
15000
150012008-02-17 Kenichi Handa <handa@m17n.org>
15002
15003 * ftfont.c (ftfont_shape): Return Lispy number.
15004
15005 * xfaces.c (prepare_face_for_display): Use display_info->font->fid
15006 for GCs.
15007 (Finternal_set_font_selection_order): Call font_update_sort_order
15008 only when enable_font_backend is set.
15009 (realize_x_face): Set face->font_info to that of default face only
15010 when enable_font_backend is set.
15011
15012 * xdisp.c (handle_composition_prop): Set it->c to the fist
15013 character of the composed region.
15014 (fill_composite_glyph_string): Set base_face->font_info to
15015 s->font_info. Get a face for ascii from base_face->ascii_face.
15016 (BUILD_COMPOSITE_GLYPH_STRING): Call fill_composite_glyph_string
15017 with a face already decided.
15018 (x_produce_glyphs): Be sure to set it->ascent and it->descent to
15019 non-negative.
15020 (x_produce_glyphs): If the composition method is ..._WITH_GLYPH_STRING,
15021 call font_prepare_composition unconditionally.
15022
15023 * xfns.c (x_make_gc): Use the default font id of the frame for GCs.
15024
15025 * xterm.h (struct x_display_info): New member font.
15026
15027 * xterm.c (x_set_cursor_gc): Use display_info->font->fid for GCs.
15028 (x_set_mouse_face_gc, x_new_font): Likewise.
15029 (x_term_init): Setup display_info->font.
15030 (x_delete_terminal): Free display_info->font.
15031
15032 * xfont.c (xfont_draw): Use BLOCK_INPUT and UNBLOCK_INPUT.
15033
15034 * ftxfont.c (ftxfont_default_fid): Delete it.
15035 (ftxfont_open): Set xfont->fid to 0.
15036 (ftxfont_end_for_frame): Clear data specific to the frame and the
15037 font-driver.
15038
15039 * xftfont.c (xftfont_default_fid): Delete it.
15040 (xftfont_open): Set xfont->fid to 0.
15041
15042 * fontset.c (FONTSET_OBJLIST): New macro.
15043 (fontset_find_font): Update font-object list of the fontset.
15044 (free_realized_fontset): New function.
15045 (free_face_fontset): Call free_realized_fontset.
15046 (Ffont_info): Call font_close_object only when enable_font_backend
15047 is set.
15048
15049 * font.c [HAVE_X_WINDOWS]: Include xterm.h.
15050 [HAVE_NTGUI]: Include w32term.h.
15051 [MAC_OS]: Include macterm.ch.
15052 (font_otf_ValueRecord): Use make_number.
15053 (font_finish_cache): Fix handling of reference count.
15054 (font_clear_cache): Update num_fonts.
15055 (font_open_entity): Update smallest_char_width and
15056 smallest_font_height of the frame.
15057 (font_close_object): Update num_fonts.
15058 (Fclear_font_cache): Fix finding the target cache data.
15059
150602008-02-16 Glenn Morris <rgm@gnu.org>
15061
15062 * fontset.c (Finternal_char_font): Fix compilation warning.
15063
150642008-02-16 Eli Zaretskii <eliz@gnu.org>
15065
15066 * w32.c (init_user_info): Use TOKEN_USER and TOKEN_PRIMARY_GROUP
15067 instead of char arrays. Enlarge the size of array passed to
15068 get_token_information.
15069
15070 * font.c (Ffont_fill_gstring, Fget_font_glyphs): Fix compilation
15071 warnings.
15072
150732008-02-15 Dan Nicolaescu <dann@ics.uci.edu>
15074
15075 * .gdbinit: Don't set `args', it breaks gdb --args.
15076
150772008-02-14 Stefan Monnier <monnier@iro.umontreal.ca>
15078
15079 * fileio.c (Finsert_file_contents): Adjust offsets when replacing
15080 within a narrowed buffer.
15081
150822008-02-14 Kenichi Handa <handa@ni.aist.go.jp>
15083
15084 * coding.c (decode_coding_object, encode_coding_object):
15085 Preserve Vdeactivate_mark. Delete unnecessary call of Fcurrent_buffer.
15086
150872008-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
15088
15089 * coding.c (coding_set_destination): Use BEG_BYTE rather than
15090 hardcoding 1.
15091 (detect_coding_system):
15092 * lisp.h (detect_coding_system, chars_in_text, multibyte_chars_in_text)
15093 (string_char_to_byte, string_byte_to_char, insert_from_gap):
15094 * insdel.c (insert_from_gap):
15095 * fns.c (string_char_byte_cache_charpos, string_char_byte_cache_bytepos)
15096 (string_char_to_byte, string_byte_to_char, string_make_multibyte)
15097 (string_to_multibyte):
15098 * character.c (chars_in_text, multibyte_chars_in_text):
15099 * fileio.c (Finsert_file_contents): Use EMACS_INT for buffer positions.
15100
15101 * character.h (FETCH_STRING_CHAR_ADVANCE)
15102 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE)
15103 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA and SREF.
15104 (DEC_POS, BUF_DEC_POS): Use BEG_BYTE rather than hardcoding 1.
15105
15106 * casefiddle.c (casify_region): Only call after-change and composition
15107 functions on the part of the region that was changed.
15108
15109 * keyboard.c (read_avail_input):
15110 * frame.c (Fdelete_frame): Call Fdelete_terminal.
15111
151122008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
15113
15114 * buffer.c (clone_per_buffer_values, reset_buffer_local_variables)
15115 (Fbuffer_local_value, Fbuffer_local_variables): Don't forget undo_list.
15116
151172008-02-11 Juanma Barranquero <lekktu@gmail.com>
15118
15119 * w32menu.c (push_submenu_start, push_submenu_end)
15120 (push_left_right_boundary, push_menu_pane, push_menu_item):
15121 * keyboard.c (read_key_sequence): Don't pass args with side effects
15122 to AREF, it fails when compiling with -DENABLE_CHECKING.
15123
151242008-02-11 Kenichi Handa <handa@ni.aist.go.jp>
15125
15126 * Makefile.in (${lispsource}international/charprop.el):
15127 Delete this target.
15128
15129 * search.c (boyer_moore): Fix incorrect synching of the trunk and
15130 emacs-unicode-2.
15131
151322008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
15133
15134 * terminal.c (Fdelete_terminal): Clean up the `force' path.
15135
151362008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
15137
15138 * frame.c (Qnoelisp): New symbol.
15139 (syms_of_frame): Initialize it.
15140 (Fdelete_frame): Use it to distinguish a mere `force' passed from some
15141 harmless Elisp code, from a strong `force' from x_connection_closed.
15142 * frame.h (Qnoelisp): Declare.
15143 * xterm.c (x_connection_closed): Pass `noelisp'.
15144
15145 * lisp.h (struct Lisp_Misc_Any, struct Lisp_Marker)
15146 (struct Lisp_Overlay, struct Lisp_Kboard_Objfwd)
15147 (struct Lisp_Save_Value, struct Lisp_Free): Use enum Lisp_Misc_Type
15148 rather than `int' for the type of `type'.
15149
151502008-02-10 Dan Nicolaescu <dann@ics.uci.edu>
15151
15152 * s/gnu-linux.h: Remove support for non-ELF and linux-1.x.
15153
15154 * Makefile.in (GNUC): Remove support for gcc-1.x.
15155
151562008-02-10 Richard Stallman <rms@gnu.org>
15157
15158 * lisp.h (ASET): Use AREF, not ASLOT.
15159
151602008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
15161
15162 * lisp.h (ASET): Check bounds.
15163
151642008-02-10 Glenn Morris <rgm@gnu.org>
15165
15166 * buffer.c (mode-name): Doc fix.
15167
151682008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
15169
15170 * Makefile.in:
15171 * emacs.c:
15172 * gmalloc.c:
15173 * keyboard.c:
15174 * lisp.h:
15175 * m/ibm370aix.h:
15176 * process.c:
15177 * regex.c:
15178 * s/hpux.h:
15179 * sysdep.c:
15180 * sysselect.h:
15181 * systty.h:
15182 * unexec.c:
15183 * w32term.c:
15184 * xsmfns.c:
15185 * xterm.c: Remove code that deals with obsolete variables.
15186
15187 * s/msdos.h (DONT_NEED_ENVIRON): Don't define.
15188
15189 * ecrt0.c: Replace the DONT_NEED_ENVIRON test with MSDOS test,
15190 nothing else needs it anymore.
15191
151922008-02-09 Eli Zaretskii <eliz@gnu.org>
15193
15194 * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use unibyte_to_multibyte_table
15195 instead of unibyte_char_to_multibyte.
15196
151972008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
15198
15199 * s/gnu-linux.h: Remove commented out code.
15200
15201 * unexec.c: Remove references to obsolete variable COFF_ENCAPSULATE.
15202
15203 * Makefile.in: Update what RMS says about using autoconf.
15204 (C_COMPILER, COFF_ENCAPSULATE, MAKE_PARALLEL): Remove obsolete variable.
15205 (C_SWITCH_MACHINE_1, C_SWITCH_SYSTEM_1, C_SWITCH_SITE_1)
15206 (C_SWITCH_X_SITE_1, C_SWITCH_X_MACHINE_1)
15207 (C_SWITCH_X_SYSTEM_1): Move invariant code outside conditional.
15208
152092008-02-08 Stefan Monnier <monnier@iro.umontreal.ca>
15210
15211 * keymap.c (Fkey_description): Move side effect outside of macro call.
15212
15213 * xfaces.c (Finternal_make_lisp_face):
15214 * keyboard.c (add_command_key, parse_menu_item): Use ASET.
15215
15216 * fontset.c (free_face_fontset): Use FONTSET_FROM_ID.
15217 (syms_of_fontset): Use ASET.
15218
15219 * fns.c (concat): Move side effect outside of macro call.
15220 (hash_clear): Use ASET.
15221
152222008-02-08 Richard Stallman <rms@gnu.org>
15223
15224 * frame.c (Fdelete_frame): If FORCE, don't call hooks.
15225 If FORCE, and frame has a surrogate minibuffer for another frame,
15226 delete the other frame first.
15227
152282008-02-07 Timo Savola <timo.savola@iki.fi>
15229
15230 * xterm.c (x_detect_focus_change): Handle embed client message.
15231 (handle_one_xevent): Ditto.
15232 (handle_one_xevent): If embedded and we get a button press/release,
15233 request focus.
15234 (xembed_set_info, xembed_send_message): New functions.
15235 (x_make_frame_visible): Call xembed_set_info if embedded.
15236 (x_make_frame_invisible): Call xembed_set_info if embedded.
15237 (x_term_init): Initialize Xatom_XEMBED.
15238 (x_make_frame_visible): Check for FRAME_X_EMBEDDED_P also.
15239 (x_iconify_frame): Ditto.
15240
15241 * xterm.h (struct x_display_info): Add AtomXatom_XEMBED.
15242 (enum xembed_info, enum xembed_message, enum xembed_focus)
15243 (enum xembed_modifier, enum xembed_accelerator): New.
15244 (xembed_set_info, xembed_send_message): Declare.
15245 (FRAME_X_EMBEDDED_P): New.
15246
15247 * gtkutil.c (xg_create_frame_widgets): If frame is embedded, call
15248 gtk_plug_new.
15249
15250 * xfns.c (Fx_create_frame): Do not override the explicitly set parent
15251 window ID of a frame.
15252 (x_window): Reparent frame if embedded.
15253 (Fx_create_frame): Don't set border width if embedded.
15254
15255 * emacs.c (USAGE3): Add --parent-id.
15256 (standard_args): Ditto.
15257
152582008-02-07 Jan Djärv <jan.h.d@swipnet.se>
15259
15260 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): Use "do...while (0)".
15261
152622008-02-07 Jim Meyering <meyering@redhat.com>
15263
15264 Use "do...while (0)", not "if (1)...else" in macro definitions.
15265 The latter provokes a warning from gcc about the empty else, when
15266 followed by ";". Also, without that trailing semicolon, it would
15267 silently swallow up any following statement.
15268 * syntax.h (SETUP_SYNTAX_TABLE)
15269 (SETUP_SYNTAX_TABLE_FOR_OBJECT): Likewise.
15270 * buffer.h (DECODE_POSITION): Likewise.
15271 * character.h (FETCH_STRING_CHAR_ADVANCE): Likewise.
15272 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): Likewise.
15273 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Likewise.
15274 (FETCH_CHAR_ADVANCE): Likewise.
15275 (FETCH_CHAR_ADVANCE_NO_CHECK): Likewise.
15276
152772008-02-07 Jim Meyering <meyering@redhat.com>
15278
15279 * lread.c [lint]: Don't include <sys/inode.h>.
15280
152812008-02-07 Stefan Monnier <monnier@iro.umontreal.ca>
15282
15283 * xselect.c (x_handle_dnd_message):
15284 * xmenu.c (digest_single_submenu, xmenu_show):
15285 * xdisp.c (with_echo_area_buffer_unwind_data)
15286 (format_mode_line_unwind_data, unwind_format_mode_line)
15287 (display_menu_bar):
15288 * eval.c (Ffetch_bytecode):
15289 * doc.c (store_function_docstring):
15290 * ccl.c (resolve_symbol_ccl_program, ccl_get_compiled_code)
15291 (Fccl_execute, Fccl_execute_on_string, Fregister_code_conversion_map):
15292 * buffer.c (add_overlay_mod_hooklist): Use ASET.
15293
152942008-02-07 Kenichi Handa <handa@m17n.org>
15295
15296 * ftxfont.c (ftxfont_open): Don't set
15297 dpyinfo->smallest_font_height and dpyinfo->smallest_char_width to 0.
15298
15299 * ftfont.c (ftfont_open): Fix previous change.
15300
153012008-02-06 Jason Rumney <jasonr@gnu.org>
15302
15303 * w32font.c (w32font_text_extents): Fill in lbearing metric.
15304 Use cached metrics for ASCII characters.
15305 (w32font_open_internal): Don't set font's owning_frame.
15306 Cache metrics for ASCII characters.
15307
15308 * w32font.h (struct w32font_info): Add ascii_metrics.
15309 Remove owning_frame.
15310
153112008-02-06 Kenichi Handa <handa@ni.aist.go.jp>
15312
15313 * xdisp.c (x_produce_glyphs): Don't set it->ascent and it->descent
15314 to negative value.
15315
15316 * ftxfont.c (ftxfont_draw): Use s->font_info, not face->font_info.
15317
15318 * ftfont.c (ftfont_open): Fix calculation of font->font.average_width.
15319
15320 * charset.c (syms_of_charset): Set QCtest and Qeq.
15321
153222008-02-06 Stefan Monnier <monnier@iro.umontreal.ca>
15323
15324 * process.c (Fstart_process):
15325 * callproc.c (Fcall_process): Handle the case where
15326 Funhandled_file_name_directory returns nil.
15327
15328 * font.h (enum lgstring_indices, enum lglyph_indices): New enums.
15329 (LGSTRING_SLOT, LGSTRING_SET_SLOT): New macros.
15330 * font.c (check_gstring): Use them and AREF to access the vector before
15331 we know it's really a gstring.
15332 (Ffont_shape_text): Fix typo.
15333 (Ffont_shape_text, Ffont_otf_alternates): Fix up int/Lisp_Object mixups.
15334
15335 * composite.h (Fcompose_region_internal, Fcompose_string_internal):
15336 Declare.
15337
15338 * chartab.c (make_sub_char_table): Remove noop-yet-incorrect statement.
15339
153402008-02-05 Jason Rumney <jasonr@gnu.org>
15341
15342 * w32font.c (w32font_open_internal): Fill min_width with tmAveCharWidth.
15343 Set smallest_font_height and smallest_char_width in display info.
15344
153452008-02-05 Kenichi Handa <handa@ni.aist.go.jp>
15346
15347 * coding.c (decode_eol): Pay attention to coding->dst_multibyte.
15348
153492008-02-05 Miles Bader <miles@gnu.org>
15350
15351 * xfaces.c (get_lface_attributes, merge_named_face)
15352 (lookup_named_face, lookup_derived_face, realize_named_face):
15353 Revert 2008-02-01 change by cyd@stupidchicken.com.
15354
153552008-02-04 Kenichi Handa <handa@ni.aist.go.jp>
15356
15357 * fontset.c (Ffontset_info): Handle the case of inhibitting the
15358 fallback fonts.
15359 (Ffontset_info) [USE_FONT_BACKEND]: Fix getting of opened font names.
15360
153612008-02-04 Jason Rumney <jasonr@gnu.org>
15362
15363 * w32font.c (w32font_open_internal): Use font_unparse_fcname to
15364 set full_name.
15365 (w32font_open_internal): Use xmalloc, xrealloc, xfree.
15366
153672008-02-03 Jason Rumney <jasonr@gnu.org>
15368
15369 * makefile.w32-in (OBJ1): Include font.o here.
15370 (FONTOBJ) [USE_FONTBACKEND]: Instead of here.
15371
153722008-02-02 Jason Rumney <jasonr@gnu.org>
15373
15374 * makefile.w32-in (temacs): Bump EMHEAP to 21.
15375
153762008-02-01 Jason Rumney <jasonr@gnu.org>
15377
15378 * s/cygwin.h: Define VIRT_ADDR_VARIES.
15379
15380 * puresize.h [VIRT_ADDR_VARIES]: Don't include CYGWIN in condition.
15381
153822008-02-01 Andreas Schwab <schwab@suse.de>
15383
15384 * Makefile.in (shortlisp, lisp): Update for rename of
15385 ../lisp/language/myanmar.el.
15386
153872008-02-01 Chong Yidong <cyd@stupidchicken.com>
15388
15389 * xfaces.c (get_lface_attributes): Delete function.
15390 (merge_named_face, lookup_named_face, lookup_derived_face)
15391 (realize_named_face): Call lface_from_face_name directly, and use
15392 the fact that merge_face_vectors does not alter its FROM argument.
15393
153942008-02-01 Jason Rumney <jasonr@gnu.org>
15395
15396 * w32term.c (w32_read_socket) <WM_CHAR>: Decode non-Unicode
15397 input in the default locale. Handle non-Unicode multibyte input.
15398
153992008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15400
15401 * fontset.c (reorder_font_vector): Exclude nil elements from the
15402 font group. Don't try multiple fonts.
15403 (fontset_font): Adjust for the above change.
15404 (Finternal_char_font): Return nil if the found font doesn't
15405 contain the character ch.
15406
15407 * Makefile.in (lisp, shortlisp): Add cham.el.
15408
154092008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15410
15411 * font.h (FONTP): Make it return 1 also for a font-object.
15412
15413 * .gdbinit (xfontset): New function.
15414
15415 * font.c (font_find_for_lface): Check if the character C is
15416 supported or not only for the first font.
15417
15418 * fontset.c (reorder_font_vector): Fix typo.
15419 (fontset_find_font): Don't add a font-spec specifying a script.
15420 Use 0 (not Qt) for the indication of empty font-group. Change the
15421 format of RFONT-DEF. Return Qt if no font in the font-group
15422 support the character.
15423 (fontset_font): Adjust for the above change. If no font was
15424 found the character, remember that.
15425 (face_for_char): Adjust for the change of RFONT-DEF.
15426 (Fset_fontset_font): Allow nil for FONT-SPEC to explicitly specify
15427 no font for the target.
15428 (Finternal_char_font): Adjust for the change of RFONT-DEF.
15429
154302008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15431
15432 * font.c (font_load_for_face): Handle the case that the font in
15433 face->lface is a string.
15434
154352008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15436
15437 * xfaces.c (set_lface_from_font_and_fontset): Set the fontname in lface.
15438
154392008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15440
15441 * xfaces.c (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]:
15442 Fix previous change. If the frame is not on a window system,
15443 signal an error.
15444
154452008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15446
15447 * coding.c (decode_coding_object, encode_coding_object): Adjust
15448 marker positions after conversion.
15449
15450 * lisp.h (struct Lisp_Marker): New member need_adjustment.
15451
154522008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15453
15454 * font.c (font_find_for_lface): Fix the handling of the return
15455 value of font_has_char.
15456 (Ffont_shape_text): Fix previous change.
15457
15458 * fontset.c (FONTSET_REF_AND_RANGE): Delete it.
15459 (fontset_ref_and_range): Delete it.
15460 (fontset_find_font): Call char_table_ref_and_range instead of
15461 FONTSET_REF_AND_RANGE.
15462 (make_fontset): Don't setup font groups of Latin here.
15463 (Fset_fontset_font): Don't overwrite the setting of FONTSET_ASCII.
15464 (new_fontset_from_font): Make the specified font the default for
15465 all Latin characters.
15466
154672008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15468
15469 * xfaces.c (Finternal_set_lisp_face_attribute): Check if the frame
15470 is on a window system before accessing the fontset of the frame.
15471
154722008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15473
15474 * Makefile.in (lisp, shortlisp): Add kherm.el and myanmar.el.
15475
15476 * ftfont.c (ftfont_driver): Set ftfont_shape in ftfont_driver only
15477 when both HAVE_M17N_FLT and HAVE_LIBOTF are defined.
15478
15479 * font.c (Ffont_shape_text): If the font driver doesn't have a
15480 shaper function, make zero-width glyphs to have at least one-pixel
15481 width. Fix setting of `to' field of glyphs.
15482
154832008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15484
15485 * ftfont.c (ftfont_drive_otf): Fix setting of FROM and TO slots of
15486 glyphs.
15487
15488 * font.h (struct font_driver): Improve docstring of member `shape'.
15489
154902008-02-01 Kenichi Handa <handa@m17n.org>
15491
15492 * composite.c (syms_of_composite): Fix docstring of
15493 auto-composition-function.
15494
15495 * font.h (LGLYPH_SIZE): New macro.
15496
15497 * font.c (Ffont_fill_gstring): Stop filling when a character not
15498 supported by the font is found.
15499 (Ffont_shape_text): When a shape callback function returns nil,
15500 try at most two more times with larger gstring.
15501 (Ffont_at): Fix getting of w. Call font_at with correct 5th argument.
15502
15503 * xdisp.c (handle_auto_composed_prop): Change the argument to
15504 auto-composition-function.
15505
15506 * ftfont.c (ftfont_encode_char): Use the macro FONT_INVALID_CODE.
15507 (ftfont_shape_by_flt): If an element of lgstring is nil, make a
15508 Lispy glyph and store it in the lgstring.
15509
15510 * xfont.c (xfont_encode_char): Use the macro FONT_INVALID_CODE.
15511
15512 * xftfont.c (xftfont_encode_char): Use the macro FONT_INVALID_CODE.
15513
155142008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15515
15516 * font.c (Ffont_shape_text): Avoid unnecessary composition.
15517
15518 * fontset.c (Vfont_encoding_charset_alist): New variable.
15519 (syms_of_fontset): DEFVAR it.
15520 (reorder_font_vector, fontset_find_font): Optimize for the case of
15521 no need of reordering.
15522 (face_for_char): Map the charset property by
15523 Vfont_encoding_charset_alist.
15524
155252008-02-01 Jason Rumney <jasonr@gnu.org>
15526
15527 * w32font.c (logfonts_match): Don't check adstyle here.
15528 (font_matches_spec): Check here against physical font instead.
15529 (add_font_entity_to_list): Avoid some substitutions.
15530
15531 * font.c (font_parse_fcname): Default weight and slant to normal.
15532 (font_score): Prefer normal fonts if weight or slant unspecified.
15533 (font_score) [WINDOWSNT]: Scale weight difference down to closer
15534 match freetype scores.
15535
155362008-02-01 Jason Rumney <jasonr@gnu.org>
15537
15538 * w32font.c (w32font_text_extents): Don't use the frame stored in the
15539 font, as it may have been deleted.
15540 (w32_enumfont_pattern_entity): Map generic family to adstyle using
15541 most common hyphenless variation.
15542 (logfonts_match): Check generic family.
15543 (font_matches_spec): Don't check generic family here.
15544 (fill_in_logfont): Set generic family based on adstyle.
15545
15546 * w32font.h (w32font_get_cache): Update declaration.
15547
155482008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15549
15550 * ftfont.c (ftfont_get_cache): Adjust the argument type.
15551
15552 * frame.c (x_set_font_backend): Don't call Fclear_font_cache.
15553 If none of the new drivers are available, call font_update_drivers
15554 with the old drivers.
15555
15556 * w32font.c (w32font_get_cache): Adjust the argument type.
15557
15558 * xfont.c (xfont_get_cache): Adjust the argument type.
15559
15560 * font.h (struct font_driver): Change argument type of get_cache.
15561
15562 * xftfont.c (xftfont_start_for_frame): Delete prototype.
15563
15564 * font.c (Ffont_get): Fix arguments to Fassoc.
15565 (font_prepare_cache, font_finish_cache, font_get_cache): New functions.
15566 (font_clear_cache): New function.
15567 (font_list_entities, font_matching_entity): Use font_get_cache.
15568 (font_update_drivers): Call font_clear_cache when finishing a driver.
15569
15570 * fontset.c (fontset_find_font): Fix previous change.
15571
155722008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15573
15574 * xterm.c (x_check_font) [USE_FONT_BACKEND]: Don't access
15575 dpyinfo->font_table.
15576 (x_delete_display) [USE_FONT_BACKEND]: Likewise.
15577 (x_delete_terminal) [USE_FONT_BACKEND]: Likewise.
15578
15579 * font.c (font_at): Handle the case that the arg C is negative.
15580 Handle the unibyte case.
15581 (Ffont_at): Call font_at with the arg C -1.
15582
15583 * xdisp.c (handle_auto_composed_prop): Don't get a character at
15584 the position here, and call font_at with the arg C -1.
15585 Don't check the range of the existing composition at the point.
15586
155872008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15588
15589 * fontset.c (fontset_add): New args charset_id and family.
15590 Change caller.
15591 (load_font_get_repertory, fontset_find_font): Assume that
15592 font_spec is always a font-spec object.
15593 (Fset_fontset_font): Always store a font-spec object in a fontset.
15594
15595 * xdisp.c (handle_auto_composed_prop): Use Fget_text_property
15596 instead of get_property_and_range.
15597
155982008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15599
15600 * xftfont.c (struct xftfont_info): Delete the member ft_face.
15601 (xftfont_open): Don't keep locking face.
15602 (xftfont_close): Don't unlock face.
15603 (xftfont_anchor_point, xftfont_shape): Lock and unlock face.
15604
15605 * fontset.c (fontset_find_font): Don't prefer a font of
15606 supplementary charset.
15607
156082008-02-01 Kenichi Handa <handa@m17n.org>
15609
15610 * ftfont.c (struct OpenTypeSpec): Rename members script_tag to
15611 script, langsys_tag to langsys, new member script.
15612 (OTF_TAG_STR): Terminate by '\0'.
15613 (ftfont_get_open_type_spec): If :otf prop is spec, limit the
15614 listing to the script specified in that property. Fix arg to
15615 OTF_check_features.
15616
156172008-02-01 Jason Rumney <jasonr@gnu.org>
15618
15619 * w32font.h: New file.
15620
15621 * w32font.c: Include it.
15622 (struct w32font_info): Add owning_frame field. Move to w32font.h.
15623 (w32font_open): Set owning_frame.
15624 (w32font_text_extents): Use owning_frame.
15625 (struct font_callback_data): Add opentype_only field.
15626 (add_font_entity_to_list): Use it to filter fonts.
15627 Don't check against full name.
15628 (w32font_list_internal): New function.
15629 (w32font_list): Use it.
15630 (w32font_match_internal): New function.
15631 (w32font_match): Use it.
15632 (w32font_open_internal): New function.
15633 (w32font_open): Use it.
15634 (w32font_get_cache, w32font_close, w32font_has_char)
15635 (w32font_encode_char, w32font_text_extents, w32font_draw):
15636 Make non-static.
15637
15638 * makefile.w32-in (w32font.o): Depend on w32font.h.
15639
156402008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15641
15642 * charset.c (Fdefine_charset_internal): Record a supplementary
15643 charset at the tail of Vcharset_order_list.
15644
15645 * font.c (Ffont_shape_text): Fix the return value.
15646
15647 * ftfont.c (OTF_SYM_TAG, OTF_TAG_STR): Fix argument names.
15648
15649 * xdisp.c (handle_auto_composed_prop): Fix previous change.
15650
156512008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15652
15653 * ftfont.c (struct OpenTypeSpec): New struct.
15654 (OTF_SYM_TAG, OTF_TAG_STR): New macros.
15655 (ftfont_get_open_type_spec): New function.
15656 (ftfont_list) [HAVE_LIBOTF]: Check otf-spec property.
15657
15658 * lread.c (read1): Redo the previous change with checking Vpurify_flag.
15659
156602008-02-01 Jason Rumney <jasonr@gnu.org>
15661
15662 * w32font.c (add_font_entity_to_list): Compare only the beginning
15663 of full name.
15664
156652008-02-01 Kenichi Handa <handa@m17n.org>
15666
15667 * xdisp.c (handle_auto_composed_prop): Simplify the code.
15668 Never return HANDLED_RECOMPUTE_PROPS.
15669
156702008-02-01 Kenichi Handa <handa@m17n.org>
15671
15672 * font.c (font_gstring_produce): Delete it.
15673
15674 * composite.h (COMPOSITION_METHOD):
15675 Handle COMPOSITION_WITH_GLYPH_STRING.
15676
156772008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15678
15679 * xfont.c (Qx): Delete.
15680 (syms_of_xfont): Don't initialize Qx.
15681
15682 * composite.h (enum composition_method):
15683 Define COMPOSITION_WITH_GLYPH_STRING unconditionally.
15684
156852008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15686
15687 * xfaces.c [HAVE_WINDOW_SYSTEM]: Include "font.h" unconditionally.
15688 (choose_face_font): Accept new form of font-spec.
15689
15690 * frame.h (font_driver_list): Declare it unconditionally.
15691 (struct frame): Define members font_driver_list and font_data_list
15692 unconditionally.
15693
15694 * fontset.c: Include "font.h" unconditionally.
15695 (generate_ascii_font_name): Use font_parse_xlfd and font_unparse_xlfd.
15696 (Fset_fontset_font): Accept a font-spec object.
15697
15698 * font.c (font_unparse_xlfd): If pixel_size is zero, make the
15699 PIXEL_SIZE part a wild card.
15700
15701 * dispextern.h (struct glyph_string): Define members clip and
15702 num_clips unconditionally.
15703 (struct face): Define members font_info and extra unconditionally.
15704
15705 * ftfont.c (ftfont_open): Set members maybe_otf and otf of
15706 ftfont_info only when HAVE_LIBOTF is defined.
15707
157082008-02-01 Andreas Schwab <schwab@suse.de>
15709
15710 * xdisp.c (back_to_previous_visible_line_start): Fix type of beg
15711 and end.
15712
157132008-02-01 Jason Rumney <jasonr@gnu.org>
15714
15715 * w32font.c (w32font_driver): Add new fields.
15716
157172008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15718
15719 * Makefile.in (ALL_CFLAGS): Add @M17N_FLT_CFLAGS@.
15720 (FONTSRC, FONTOBJ) [HAVE_WINDOW_SYSTEM]: Set them unconditionally.
15721 (LIBES): Add @M17N_FLT_CFLAGS@.
15722
15723 * composite.c (compose_text): Don't treat the new style
15724 composition specially.
15725
15726 * emacs.c (main): Call syms_of_font unconditionally.
15727
15728 * font.h (FONT_ENTITY_NOT_LOADABLE)
15729 (FONT_ENTITY_SET_NOT_LOADABLE): New macros.
15730 (LGSTRING_XXXX, LGLYPH_XXX): Adjust for the change of lispy gstring.
15731 (struct font_driver): New member shape.
15732 (font_registry_charsets): Extern it.
15733 (font_find_for_lface, font_prepare_composition): Adjust prototype.
15734 (font_otf_capability, font_drive_otf): Delete their externs.
15735
15736 * font.c [HAVE_M17N_FLT]: Include <m17n-flt.h>.
15737 (font_charset_alist, font_registry_charsets): Move from xfont.c
15738 and rename.
15739 (font_prop_validate_otf): New function.
15740 (font_property_table): Register it for QCotf.
15741 (DEVICE_DELTA, adjust_anchor, REPLACEMENT_CHARACTER)
15742 (font_drive_otf): Delete.
15743 (font_prepare_composition): New arg F. Adjust for the change of
15744 lispy gstring.
15745 (font_find_for_lface): New arg C.
15746 (font_load_for_face): Adjust for the change of font_find_for_lface.
15747 (Ffont_make_gstring, Ffont_fill_gstring): Adjust for the change of
15748 lispy gstring.
15749 (Ffont_shape_text): New function.
15750 (Fopen_font): If the font size is not given, use 12-pixel.
15751 (Ffont_at): New arg STRING.
15752 (syms_of_font): Initalize font_charset_alist.
15753 Declare Ffont_shape_text as a Lisp function. Call syms_of_XXfont
15754 conditionally.
15755
15756 * fontset.c (fontset_find_font) [USE_FONT_BACKEND]: Try multiple
15757 fonts of the same font-spec. Change the format of RFONT-DEF.
15758 (face_for_char, make_fontset_for_ascii_face, Finternal_char_font):
15759 Adjust for the change of RFONT-DEF.
15760 (Fset_fontset_font) [USE_FONT_BACKEND]: Handle new format of font-spec.
15761
15762 * ftfont.h: New file.
15763
15764 * ftfont.c: Don't include Freetype headers. Include "ftfont.h".
15765 (struct ftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
15766 (ftfont_open) [HAVE_LIBOTF]: Initialize the above members.
15767 (ftfont_driver) [HAVE_LIBOTF, HAVE_M17N_FLT]: Don't set
15768 font_otf_capability and font_drive_otf, set ftfont_shape.
15769 (ftfont_list): Adjust for the change of :otf property value.
15770 (struct MFLTFontFT) [HAVE_LIBOTF, HAVE_M17N_FLT]: New struct.
15771 (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_check_otf)
15772 (adjust_anchor, ftfont_drive_otf, ftfont_shape_by_flt)
15773 (ftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
15774 (DEVICE_DELTA) [HAVE_LIBOTF, HAVE_M17N_FLT]: New macro.
15775 (otf_gstring, gstring, m17n_flt_initialized): New variables.
15776
15777 * w32term.c (x_draw_composite_glyph_string_foreground):
15778 Adjust for the change of lispy gstring.
15779
15780 * xdisp.c (handle_composition_prop): Adjust for the change of
15781 lispy gstring. Call a function for auto-composition with the
15782 third arg it->window.
15783 (fill_composite_glyph_string): Adjust for the change of lispy string.
15784 (x_produce_glyphs): Adjust for the change of font_prepare_compositionl.
15785
15786 * xfaces.c (set_font_frame_param): Adjust for the change of
15787 font_find_for_lface.
15788
15789 * xfont.c (x_font_charset_alist): Move to font.c and rename.
15790 (xfont_registry_charsets): Likewise. Change caller.
15791 (syms_of_xfont): Don't handle x_font_charset_alist.
15792
15793 * xftfont.c: Include "ftfont.h".
15794 (struct xftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
15795 (xftfont_open) [HAVE_LIBOTF]: Initialize the above members.
15796 (xftfont_close) [HAVE_LIBOTF]: Close otf.
15797 (xftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
15798 (syms_of_xftfont) [HAVE_LIBOTF, HAVE_M17N_FLT]:
15799 Set xftfont_driver.shape to xftfont_shape.
15800
15801 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
15802 the change of lispy gstring.
15803
158042008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15805
15806 * ftxfont.c (ftxfont_end_for_frame): Fix array indexing error.
15807
158082008-02-01 Jason Rumney <jasonr@gnu.org>
15809
15810 * w32font.c (w32font_draw): Fill background manually.
15811
158122008-02-01 Jason Rumney <jasonr@gnu.org>
15813
15814 * font.c (Qfontp): Remove unused symbol.
15815 (QCantialias): New symbol.
15816 (syms_of_font): Define it.
15817 (font_property_table): Set a validator for QCantialias.
15818
15819 * w32font.c (CLEARTYPE_QUALITY, CLEARTYPE_NATURAL_QUALITY):
15820 Define if not already.
15821 (QCfamily): Share with xfaces.c.
15822 (Qstandard, Qsubpixel, Qnatural): New symbols.
15823 (syms_of_w32font): Define them. Don't define QCfamily here.
15824 (w32_antialias_type, lispy_antialias_type): New functions.
15825 (w32_enumfont_pattern_entity): New arg requested_font.
15826 Set antialias parameter if non-default was requested.
15827 (fill_in_logfont): Fill in lfQuality if :antialias specified.
15828
158292008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15830
15831 * lread.c (read1): Undo the previous change.
15832
158332008-02-01 CHENG Gao <chenggao@gmail.com> (tiny change)
15834
15835 * frame.c (Fdelete_frame): Call font_update_drivers only when
15836 USE_FONT_BACKEND is defined.
15837
158382008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15839
15840 * font.h (struct font_bitmap): New member bits_per_pixel.
15841 (struct font_driver): New members start_for_frame and end_for_frame.
15842 (struct font_data_list): New struct.
15843 (font_put_frame_data, font_get_frame_data): Extern them.
15844
15845 * frame.h (struct frame): New member font_data_list.
15846
15847 * font.c (font_update_drivers): Call driver->start_for_frame and
15848 driver->end_for_frame at proper timings.
15849 (font_put_frame_data, font_get_frame_data): New functions.
15850 (Ffont_spec): Add usage in the docstring.
15851
15852 * frame.c (make_frame): Initialize f->font_data_list to NULL.
15853 (Fdelete_frame): Call font_update_drivers.
15854
15855 * xftfont.c (struct xftface_info): Delete the member xft_draw.
15856 (xftfont_prepare_face, xftfont_done_face): Adjust for the above change.
15857 (xftfont_get_xft_draw): New function.
15858 (xftfont_draw): Get XftDraw by xftfont_get_xft_draw.
15859 (xftfont_end_for_frame): New function.
15860 (syms_of_xftfont): Set xftfont_driver.end_for_frame.
15861
15862 * ftxfont.c (ftxfont_get_gcs): Rename from ftxfont_create_gcs.
15863 Change argument. Cache GCs in the per-frame data.
15864 (struct ftxfont_frame_data): New struct.
15865 (ftxfont_draw_bitmap): New arg gc_fore and flush.
15866 (ftxfont_prepare_face, ftxfont_done_face): Delete them.
15867 (ftxfont_draw): Get GCs by ftxfont_get_gcs. Reflect s->clip in GCs.
15868 (ftxfont_end_for_frame): New function.
15869 (syms_of_ftxfont): Set ftxfont_driver.end_for_frame.
15870
15871 * ftfont.c (ftfont_get_bitmap): Set bitmap->bits_per_pixel.
15872
158732008-02-01 Kenichi Handa <handa@m17n.org>
15874
15875 * xselect.c (Vselection_coding_system)
15876 (Vnext_selection_coding_system): Delete them.
15877 (syms_of_xselect): Don't declare selection-coding-system and
15878 next-selection-coding-system. They are declared in select.el.
15879
158802008-02-01 Jason Rumney <jasonr@gnu.org>
15881
15882 * w32term.h (WM_UNICHAR, UNICODE_NOCHAR): Define if not already.
15883
15884 * w32fns.c: Include imm.h.
15885 (get_composition_string_fn, get_ime_context_fn): New optional
15886 system functions.
15887 (globals_of_w32fns): Load them from imm32.dll.
15888 (ignore_ime_char): New flag.
15889 (w32_wnd_proc): Handle WM_UNICHAR, WM_IME_CHAR and
15890 WM_IME_ENDCOMPOSITION messages.
15891
15892 * w32term.c (w32_read_socket) [WM_UNICHAR]: Handle as
15893 MULTIBYTE_CHAR_KEYSTROKE_EVENT.
15894
158952008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15896
15897 * lread.c (READCHAR): Call readchar with the 2nd arg NULL.
15898 (READCHAR_REPORT_MULTIBYTE): New macro.
15899 (readchar): New 2nd arg MULTIBYTE.
15900 (read1): Use READCHAR_REPORT_MULTIBYTE for the first read.
15901 Make symbol's name multibyte according to the multibyteness of the
15902 source.
15903
159042008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15905
15906 * xfaces.c (face_for_overlay_string): Call lookup_face with
15907 correct arguments (fix of synching with the trunk).
15908
159092008-02-01 Kenichi Handa <handa@m17n.org>
15910
15911 * font.c (font_prop_validate_symbol, font_prop_validate_style)
15912 (font_prop_validate_non_neg, font_prop_validate_spacing):
15913 Delete argument prop_index.
15914 (font_property_table): Change arguments to validater. Change Callers.
15915 (font_lispy_object): Delete.
15916 (font_at): Use font_find_object instead fo font_lispy_object.
15917
159182008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15919
15920 * fileio.c (Fexpand_file_name): Adjust multibyteness of directory
15921 and file names.
15922
159232008-02-01 Jason Rumney <jasonr@gnu.org>
15924
15925 * w32font.c (add_font_name_to_list): Avoid vertical fonts.
15926 (font_matches_spec): Remove debug output.
15927 (add_font_entity_to_list): Avoid using substituted fonts.
15928
159292008-02-01 Jason Rumney <jasonr@gnu.org>
15930
15931 * doc.c (Fsnarf_documentation):
15932 * Makefile.in (temacs${EXEEXT}, mostlyclean): Undo last change.
15933
159342008-02-01 Miles Bader <miles@gnu.org>
15935
15936 * dispextern.h (struct glyph_row): Only define "clip" field if
15937 HAVE_WINDOW_SYSTEM is defined.
15938
159392008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
15940
15941 Fix up multi-tty merge.
15942
15943 * xterm.c (handle_one_xevent): Remove duplicate code and fix up nesting
15944 and indentation.
15945
15946 * xfaces.c (free_realized_face, clear_face_gcs):
15947 Include font_done_for_face in the input_blocked section, just in case.
15948
15949 * xdisp.c (decode_mode_spec): Use terminal-local coding systems.
15950 (get_char_face_and_encoding): Undo last change and remove the *other*
15951 duplicate definition (i.e. keep the one that's better scoped and that
15952 includes code for the font-backend).
15953
15954 * terminal.c (create_terminal): Default keyboard_coding to
15955 `no-conversion' and terminal_coding to `undecided'.
15956
15957 * lread.c (read1): Use XSETPVECTYPE to set a pseudovector's tag.
15958
15959 * fontset.c (free_realized_fontsets): Check that the table entry does
15960 contain a fontset before trying to compare it to `base'.
15961
15962 * emacs.c (main): Move syms_of_data, syms_of_fileio, syms_of_alloc,
15963 syms_of_charset, and syms_of_coding earlier because init_window_once
15964 now needs Vcoding_system_hash_table to be setup.
15965
15966 * coding.h (default_buffer_file_coding): Remove.
15967
15968 * coding.c (default_buffer_file_coding): Remove.
15969 (Fterminal_coding_system, Fkeyboard_coding_system): Use ->id rather
15970 than ->symbol, and use the terminal-local coding system.
15971 (syms_of_coding): Don't setup the coding-systems that are not
15972 terminal-local.
15973 (Fdefine_coding_system_internal): Use XCAR/XCDR.
15974
15975 * chartab.c (Fmake_char_table, make_sub_char_table, copy_char_table):
15976 Use XSETPVECTYPE now that XSETCHAR_TABLE doesn't set the tag anymore.
15977
15978 * alloc.c (Fmake_char_table, make_sub_char_table): Remove. They're now
15979 in chartab.c and were re-added here by mistake.
15980 (Fpurecopy): Use XSETPVECTYPE after copying a COMPILED pseudovector.
15981
15982 * doc.c (Fsnarf_documentation):
15983 * Makefile.in (temacs${EXEEXT}, mostlyclean): Move buildobj.lst from
15984 src to etc.
15985
15986 * ChangeLog.10: Add mistakenly removed entry.
15987
159882008-02-01 Dan Nicolaescu <dann@ics.uci.edu>
15989
15990 * Makefile.in (fringe.o, minibuf.o): Fix dependencies.
15991
159922008-02-01 Miles Bader <miles@gnu.org>
15993
15994 * xdisp.c (get_char_face_and_encoding): Remove extraneous definition.
15995 Add extra args to FACE_FOR_CHAR.
15996
159972008-02-01 Kenichi Handa <handa@m17n.org>
15998
15999 * keymap.c (where_is_internal_1): If key is a cons, store the copy
16000 in sequence.
16001
16002 * chartab.c (map_sub_char_table, map_char_table): If the range
16003 contains just one character, call the function with that character
16004 even if the depth is not 3.
16005
160062008-02-01 Jason Rumney <jasonr@gnu.org>
16007
16008 * w32font.c (w32font_text_extents): Calculate metrics for the
16009 whole string.
16010
160112008-02-01 Jason Rumney <jasonr@gnu.org>
16012
16013 * w32xfns.c (get_next_msg): Consolidate WM_PAINT messages.
16014
160152008-02-01 Jason Rumney <jasonr@gnu.org>
16016
16017 * w32term.c (x_set_glyph_string_clipping): Use
16018 get_glyph_string_clip_rects.
16019 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
16020 Adjust for the change of struct glyph_string.
16021
16022 * w32font.c (w32font_draw): Do clipping here.
16023
160242008-02-01 Kenichi Handa <handa@m17n.org>
16025
16026 * xftfont.c (xftfont_draw): Adjust for the change of struct
16027 glyph_string.
16028
16029 * xterm.c (x_set_glyph_string_clipping): Use
16030 get_glyph_string_clip_rects.
16031 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
16032 Adjust for the change of struct glyph_string.
16033
16034 * xdisp.c (get_glyph_string_clip_rects): Reflect s->row->clip to
16035 the resulting clip(s}.
16036 (expose_overlaps): Add arg r. Change callers. Set it to
16037 row->clip temporarily.
16038 (expose_window): Redraw rows overlapping the exposed area.
16039
16040 * dispextern.h (struct glyph_row): New member clip.
16041 (struct glyph_string): Delete members clip_x, clip_y, clip_width,
16042 clip_height, new member clip, and num_clips.
16043
160442008-02-01 Kenichi Handa <handa@m17n.org>
16045
16046 * data.c (Fchar_or_string_p): Fix docstring.
16047
160482008-02-01 Kenichi Handa <handa@m17n.org>
16049
16050 * xftfont.c (xftfont_draw): If s->font_info != s->face->font_info,
16051 create a temporary XftDraw object.
16052
160532008-02-01 Kenichi Handa <handa@m17n.org>
16054
16055 * font.c (Ffontp): Fix docstring.
16056
16057 * coding.c (detect_coding_iso_2022): Don't treat SI/SO codes as a
16058 strong evidence of ISO-2022.
16059
160602008-02-01 Kenichi Handa <handa@m17n.org>
16061
16062 * abbrev.c (abbrev_check_chars): Use CHAR_TABLE_REF, not
16063 SYNTAX_ENTRY_FOLLOW_PARENT.
16064
160652008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
16066
16067 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and change
16068 its type.
16069 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
16070 Update to the new type of weak_hash_tables and next_weak.
16071
16072 * lisp.h (struct Lisp_Hash_Table): Change next_weak from Lisp_Object to
16073 a plain C pointer to Lisp_Hash_Table.
16074
16075 * lisp.h (XGCTYPE, GC_HASH_TABLE_P, GC_NILP, GC_NUMBERP, GC_NATNUMP)
16076 (GC_INTEGERP, GC_SYMBOLP, GC_MISCP, GC_VECTORLIKEP, GC_STRINGP)
16077 (GC_CONSP, GC_FLOATP, GC_VECTORP, GC_OVERLAYP, GC_MARKERP)
16078 (GC_INTFWDP, GC_BOOLFWDP, GC_OBJFWDP, GC_BUFFER_OBJFWDP)
16079 (GC_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP)
16080 (GC_KBOARD_OBJFWDP, GC_PSEUDOVECTORP, GC_WINDOW_CONFIGURATIONP)
16081 (GC_PROCESSP, GC_WINDOWP, GC_SUBRP, GC_COMPILEDP, GC_BUFFERP)
16082 (GC_SUB_CHAR_TABLE_P, GC_CHAR_TABLE_P, GC_BOOL_VECTOR_P, GC_FRAMEP)
16083 (GC_EQ): Remove since they've been identical to their non-GC_
16084 alter-egos ever since the markbit was eradicated.
16085
16086 * alloc.c:
16087 * buffer.c:
16088 * buffer.h:
16089 * data.c:
16090 * fileio.c:
16091 * filelock.c:
16092 * fns.c:
16093 * frame.h:
16094 * lisp.h:
16095 * macterm.c:
16096 * print.c:
16097 * process.c:
16098 * w32fns.c:
16099 * w32menu.c:
16100 * w32term.c:
16101 * xfns.c:
16102 * xmenu.c:
16103 * xterm.c: Replace uses of GC_* macros with the non-GC_ versions.
16104
161052008-02-01 Kenichi Handa <handa@m17n.org>
16106
16107 * chartab.c (map_sub_char_table): Make it work for the top-level
16108 char-table. Fix handling of parent char-table.
16109 (map_char_table): Adjust for the above change.
16110
161112008-02-01 Jason Rumney <jasonr@gnu.org>
16112
16113 * w32font.c (Qgdi): Rename from Qw32.
16114
161152008-02-01 Jason Rumney <jasonr@gnu.org>
16116
16117 * w32bdf.c (get_quoted_string): Make function static.
16118
161192008-02-01 Kenichi Handa <handa@m17n.org>
16120
16121 * xftfont.c (xftfont_open): If one of font's ASCII glyph has
16122 bigger ascent and descent than those of the font, use them as
16123 font's ascent and descent.
16124
161252008-02-01 Kenichi Handa <handa@m17n.org>
16126
16127 * Makefile.in (${lispsource}international/charprop.el): Move this
16128 target within "#ifdef HAVE_UNIDATA" and "#endif".
16129
161302008-02-01 Kenichi Handa <handa@m17n.org>
16131
16132 * Makefile.in (lisp): Add ${lispsource}language/tai-viet.el.
16133 (shortlisp): Add ../lisp/language/tai-viet.el.
16134
161352008-02-01 Ulrich Mueller <ulm@gentoo.org>
16136
16137 * Makefile.in (${lispsource}international/charprop.el): Depend on
16138 temacs${EXEEXT}.
16139
161402008-02-01 Jason Rumney <jasonr@gnu.org>
16141
16142 * w32font.c (w32font_close): Delete the GDI font object.
16143
16144 * w32menu.c: Include character.h.
16145
16146 * w32proc.c: Likewise.
16147
16148 * w32select.c: Likewise.
16149
16150 * makefile.w32-in (w32proc.o): Depend on character.h.
16151
161522008-02-01 Jason Rumney <jasonr@gnu.org>
16153
16154 * w32fns.c (syms_of_w32fns): Use DEFSYM macro.
16155
16156 * w32menu.c (syms_of_w32menu): Likewise.
16157
16158 * w32proc.c (syms_of_ntproc): Likewise.
16159
16160 * w32select.c (syms_of_w32select): Likewise.
16161
16162 * w32term.c (syms_of_w32term): Likewise.
16163
161642008-02-01 Jason Rumney <jasonr@gnu.org>
16165
16166 * w32font.c (w32font_draw): Delete brush after using it.
16167
161682008-02-01 Jason Rumney <jasonr@gnu.org>
16169
16170 * w32font.c (w32font_open): Don't set font_idx.
16171 (w32font_text_extents): Try GetTextExtentPoint32W before defaulting
16172 to font settings.
16173 (w32font_draw): Fill background explicitly.
16174
161752008-02-01 Jason Rumney <jasonr@gnu.org>
16176
16177 * w32term.c (w32_initialize): Don't call w32font_initialize.
16178
16179 * w32font.c (w32font_info): Remove subranges.
16180 (QCsubranges, Qmodern, Qswiss, Qroman): Remove.
16181 (QCfamily, Qmonospace, Qsans_serif, Qmono, Qsans, Qsans__serif)
16182 (Qraster, Qoutline, Qlatin, Qgreek, Qcoptic, Qcyrillic, Qarmenian)
16183 (Qhebrew, Qarabic, Qsyriac, Qnko, Qthaana, Qdevanagari, Qbengali)
16184 (Qgurmukhi, Qgujarati, Qoriya, Qtamil, Qtelugu, Qkannada)
16185 (Qmalayalam, Qsinhala, Qthai, Qlao, Qtibetan, Qmyanmar, Qgeorgian)
16186 (Qhangul, Qethiopic, Qcherokee, Qcanadian_aboriginal, Qogham)
16187 (Qrunic, Qkhmer, Qmongolian, Qsymbol, Qbraille, Qhan)
16188 (Qideographic_description, Qcjk_misc, Qkana, Qbopomofo, Qkanbun)
16189 (Qyi, Qbyzantine_musical_symbol, Qmusical_symbol, Qmathematical):
16190 New symbols.
16191 (font_callback_data): New struct.
16192 (w32font_list, w32font_match): Use it.
16193 (w32font_open): Don't populate subranges.
16194 (w32font_has_char): Use script Lisp symbols, not subrange bitmask.
16195 (w32font_encode_char): Always return unicode code-point as-is.
16196 (w32font_text_extents): Supply a transformation matrix to
16197 GetGlyphOutline. Never look up by glyph index. Avoid looping
16198 twice. Use unicode version of GetTexExtentPoint32 instead of
16199 glyph index version.
16200 (set_fonts_frame): Remove.
16201 (w32_enumfont_pattern_entity): Add frame parameter, use it to
16202 set frame parameter. Use backward compatible fake foundries.
16203 Save generic family in extra slot under QCfamily. Make width slot
16204 constant. Save QCspacing value. Save list of scripts instead of
16205 binary subranges.
16206 (w32_generic_family, logfonts_match, font_matches_spec): New functions.
16207 (add_font_entity_to_list): Use font_callback_data struct. Filter
16208 unwanted fonts.
16209 (add_one_font_entity_to_list): Use font_callback_data struct.
16210 (w32_registry): Default to iso10646_1.
16211 (fill_in_logfont): Use dpi from extra slot. Don't bother with
16212 string font registries. Don't fill in font name if it is a generic
16213 family name, fill family instead. Use spacing, family and script
16214 extra info to fill pitch, family and charset fields.
16215 (list_all_matching_fonts): Use font_callback_data struct.
16216 (unicode_range_for_char): Remove.
16217 (font_supported_scripts): New function.
16218 (w32font_initialize): Remove.
16219 (syms_of_w32font): Update which symbols are defined.
16220
162212008-02-01 Jason Rumney <jasonr@gnu.org>
16222
16223 * font.c (font_pixel_size): Reverse assq_no_quit args.
16224
16225 * w32term.h (FONT_WIDTH): Report max width, not average.
16226 (FONT_MAX_WIDTH): Remove.
16227 (FONT_AVG_WIDTH): New macro.
16228
16229 * xfaces.c (Fx_list_fonts) [WINDOWSNT]: Remove Windows only
16230 redefinition of FONT_WIDTH.
16231
16232 * w32term.c (x_font_min_bounds): Use FONT_AVG_WIDTH.
16233 (w32_cache_char_metrics): Use FONT_WIDTH.
16234
16235 * w32fns.c (w32_load_system_font, w32_list_fonts): Use FONT_AVG_WIDTH.
16236
162372008-02-01 Jason Rumney <jasonr@gnu.org>
16238
16239 * w32font.c (w32font_open): Make lfHeight negative.
16240
16241 * w32fns.c (x_default_font_parameter): Use new style font name.
16242 (Fx_create_frame, x_create_tip_frame): Initialize resx and resy.
16243
162442008-02-01 Jason Rumney <jasonr@gnu.org>
16245
16246 * w32font.c (QCsubranges): New symbol.
16247 (w32font_open, w32font_has_char): Get subranges from subproperty
16248 of extra.
16249 (w32_enumfont_pattern_entity): Set subranges as subproperty of extra.
16250 (syms_of_w32font): Define :subranges symbol.
16251
16252 * font.c (font_put_extra): Expose externally.
16253
16254 * font.h (font_put_extra): Move declaration from font.c.
16255
16256 * font.c (Ffont_get): Use font driver to determine otf capability.
16257 (adjust_anchor): Check if driver defines anchor_point before using.
16258
16259 * w32font.c (w32font_open): Handle size, height and pixel_size better.
16260 (w32font_draw): Use options.
16261 (w32_enumfont_pattern_entity): Set size to 0 for scalable fonts.
16262 Fix detection of truetype fonts.
16263 (registry_to_w32_charset): Handle charsets other than iso8859-1
16264 expressed as lisp symbols.
16265 (w32_registry): Express charset as lisp symbol.
16266 (fill_in_logfont): Reverse pixel and point height logic.
16267 Don't set width here. Set quality to default.
16268
16269 * w32fns.c (w32_load_system_font): Fix detecting FIXED_PITCH fonts.
16270 (x_to_w32_font): Fill in lfPitchAndFamily correctly.
16271
16272 * xterm.c (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
16273 Remove redundant loop and allocation.
16274
16275 * makefile.w32-in (font.o, w32font.o): New objects.
16276 (fontset.o, xdisp.o, xfaces.o, w32fns.o, w32term.o): Depend on font.h.
16277 (FONTOBJ): New group of objects conditioned on USE_FONT_BACKEND.
16278
16279 * xdisp.c (fill_composite_glyph_string): Make the first arg to
16280 STORE_XCHARB a valid l-value.
16281
16282 * w32term.c (w32_native_per_char_metric): Swap width and rbearing
16283 calculations for non-Truetype fonts.
16284 (x_draw_glyph_string): Sync with xterm.c.
16285 (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
16286 Remove redundant code.
16287 (w32_initialize) [USE_FONT_BACKEND]: Call w32font_initialize.
16288
16289 * w32term.h (w32_output_data) [USE_FONT_BACKEND]: Add fontp member.
16290 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro from xterm.h.
16291
16292 * w32fns.c [USE_FONT_BACKEND]: Port font backend changes from xfns.c.
16293 (x_to_w32_charset, w32_to_x_charset): Expose externally.
16294
16295 * w32font.c: New file for w32 font backend.
16296
162972008-02-01 Kenichi Handa <handa@m17n.org>
16298
16299 * term.c: Don't include "buffer.h" twice.
16300
163012008-02-01 Kenichi Handa <handa@m17n.org>
16302
16303 * character.c (Funibyte_string): New function.
16304 (syms_of_character): Defsubr it.
16305
163062008-02-01 Jason Rumney <jasonr@gnu.org>
16307
16308 * w32term.c [USE_FONT_BACKEND]:
16309 (x_get_font_repertory, note_mouse_movement, x_set_mouse_face_gc)
16310 (x_set_glyph_string_clipping, x_set_glyph_string_clipping_exactly)
16311 (x_draw_glyph_string, x_draw_glyph_string_foreground)
16312 (x_draw_composite_glyph_string_foreground, x_new_fontset2)
16313 (x_free_frame_resources): Sync with xterm.c.
16314
163152008-02-01 Andreas Schwab <schwab@suse.de>
16316
16317 * lread.c (read1): Use CHAR_TABLE_STANDARD_SLOTS to validate
16318 char-table size.
16319
163202008-02-01 Kenichi Handa <handa@m17n.org>
16321
16322 * font.c (check_otf_features): Define it regardless of HAVE_LIBOTF.
16323
163242008-02-01 Kenichi Handa <handa@m17n.org>
16325
16326 * ftfont.c (ftfont_driver): Delete font_otf_gsub and
16327 font_otf_gpos, add font_drive_otf.
16328
16329 * fontset.c (fontset_find_font): Pay attention to font size
16330 specified for a font.
16331 (reorder_font_vector): Check contents of font_def.
16332
16333 * font.c (struct otf_list): Delete it.
16334 (otf_list): Make it a lisp variable.
16335 (otf_open): Use lispy otf_list.
16336 (generate_otf_features): Rename from parse_gsub_gpos_spec.
16337 (check_otf_features): New function.
16338 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
16339 New functions.
16340 (font_drive_otf): New function merging font_otf_gsub and
16341 font_otf_gpos.
16342 (font_open_for_lface): New arg spec. Change argument order.
16343 (font_load_for_face): Adjust for the change of font_open_for_lface.
16344 (Ffont_drive_otf): New function merging Ffont_otf_gsub and
16345 Ffont_otf_gpos.
16346 (syms_of_font): Staticpro otf_list. Delete defsubr of
16347 Sfont_otf_gsub and Sfont_otf_gpos. Defsubr Sfont_drive_otf.
16348
16349 * xfaces.c (set_font_frame_param): Adjust for the change of
16350 font_open_for_lface.
16351
16352 * font.h (font_open_for_lface): Adjust prototype.
16353 (struct font_driver): Delete members otf_gsub and otf_gpos, add
16354 member otf_drive.
16355 (font_otf_gsub, font_otf_gpos): Delete externs.
16356 (font_drive_otf): Extern it.
16357
163582008-02-01 Kenichi Handa <handa@m17n.org>
16359
16360 * font.c (font_at): If the window W is not on a window system,
16361 return Qnil.
16362
16363 * coding.c (produce_chars, encode_coding): Don't call
16364 insert_from_gap if no characters to produce.
16365
163662008-02-01 Kenichi Handa <handa@m17n.org>
16367
16368 * fontset.c (free_realized_fontsets): Avoid unnecessary call of
16369 Fclear_face_cache.
16370
16371 * xfaces.c (face_for_font): Check also face->font==font->font.font.
16372
163732008-02-01 Miles Bader <miles@gnu.org>
16374
16375 * emacs.c (main): Change default value of `enable_font_backend' to 1.
16376 Parse "--disable-font-backend" option.
16377 (standard_args): Add "--disable-font-backend" option.
16378
163792008-02-01 Kenichi Handa <handa@m17n.org>
16380
16381 * fontset.c (fontset_find_font): New function.
16382 (fontset_font): Use fontset_find_font.
16383 (make_fontset_for_ascii_face): Don't set face ID in rfont_def.
16384 Register the specified font for all Latin characters.
16385 (new_fontset_from_font): Register the specified font for all Latin
16386 characters.
16387 (dump_fontset): For a realized fontset, include the base fontset
16388 name in the returned vector.
16389
163902008-02-01 Kenichi Handa <handa@m17n.org>
16391
16392 * character.h (CHAR_STRING): Cast C to unsigned on calling
16393 char_string.
16394
16395 * character.c (char_string): Type of arg C changed to unsigned.
16396 Signal an error if C is an invalid character code.
16397
16398 * editfns.c (general_insert_function, Fchar_to_string):
16399 Use CHARACTERP, not INTEGERP.
16400
164012008-02-01 Kenichi Handa <handa@m17n.org>
16402
16403 * character.h (MIN_MULTIBYTE_LEADING_CODE)
16404 (MAX_MULTIBYTE_LEADING_CODE): New macros.
16405
16406 * regex.c (analyse_first): Fix for multibyte characters in "case
16407 charset:" and "case categoryspec:".
16408
164092008-02-01 Andreas Schwab <schwab@suse.de>
16410
16411 * Makefile.in (LIBES): Move standard libraries to the end.
16412
164132008-02-01 Kenichi Handa <handa@m17n.org>
16414
16415 * alloc.c (Fgarbage_collect): If nextb->text->inhibit_shrinking is
16416 nonzero, don't shrink the buffer nextb.
16417
16418 * buffer.h (struct buffer_text): New member inhibit_shrinking.
16419
16420 * coding.c (coding_alloc_by_making_gap): New arg offset.
16421 (alloc_destination): Call coding_alloc_by_making_gap with the arg
16422 offset.
16423 (decode_coding_iso_2022): Update coding->safe_charsets.
16424 (decode_coding_gap): Temporarily set
16425 current_buffer->text->inhibit_shrinking to 1.
16426
164272008-02-01 Kenichi Handa <handa@m17n.org>
16428
16429 * xterm.c (x_draw_composite_glyph_string_foreground): Fix
16430 indexing into elements of s->cmp and s->char2b.
16431
164322008-02-01 Juanma Barranquero <lekktu@gmail.com>
16433
16434 * regex.c (RE_STRING_CHAR_AND_LENGTH) [! emacs]: Add missing arg `len'.
16435
164362008-02-01 Kenichi Handa <handa@m17n.org>
16437
16438 * regex.c (GET_CHAR_BEFORE_2, GET_CHAR_AFTER): Check the variable
16439 target_multibyte instead of multibyte.
16440 (re_match_2_internal): Call bcmp_translate with target_multibyte.
16441 (bcmp_translate): Change the argument name from multibyte to
16442 target_multibyte.
16443
164442008-02-01 Kenichi Handa <handa@m17n.org>
16445
16446 These changes are to compile a regexp into a pattern that can be
16447 used both for multibyte and unibyte targets.
16448
16449 * Makefile.in (search.o): Depend on charset.h.
16450
16451 * character.c (multibyte_char_to_unibyte_safe): New function.
16452
16453 * search.c: Include "charset.h".
16454 (compile_pattern_1): Delete argument multibyte. Don't set
16455 cp->buf.target_multibyte here. Set cp->buf.charset_unibyte.
16456 (compile_pattern): Don't compare cp->buf.target_multibyte.
16457 Compare cp->buf.charset_unibyte.
16458 (compile_pattern): Set cp->buf.target_multibyte.
16459
16460 * lisp.h (multibyte_char_to_unibyte_safe): Extern it.
16461
16462 * regex.h (struct re_pattern_buffer): New member charset_unibyte.
16463
16464 * regex.c (RE_STRING_CHAR, RE_STRING_CHAR_AND_LENGTH): New arg
16465 multibyte. Change callers.
16466 (RE_CHAR_TO_MULTIBYTE, RE_CHAR_TO_UNIBYTE): New macros.
16467 (MAKE_CHAR_MULTIBYTE, MAKE_CHAR_UNIBYTE): Delete. Change callers
16468 to use RE_CHAR_TO_MULTIBYTE and RE_CHAR_TO_UNIBYTE, respectively.
16469 (SETUP_ASCII_RANGE, SETUP_UNIBYTE_RANGE): New macros.
16470 (SETUP_MULTIBYTE_RANGE): Generate a more compact range_table.
16471 (regex_compile): Make the compiled pattern usable both for
16472 multibyte and unibyte targets.
16473 (analyse_first): Make the fastmap usable both for multibyte and
16474 unibyte targets.
16475 (TRANSLATE_VIA_MULTIBYTE): Delete.
16476 (re_match_2_internal): Pay attention to the case that the
16477 multibyteness of bufp and target may be different.
16478
164792008-02-01 Kenichi Handa <handa@m17n.org>
16480
16481 * xdisp.c (x_produce_glyphs): When a font is not found, make the
16482 empty box occupy at least one column width.
16483
164842008-02-01 Miles Bader <miles@gnu.org>
16485
16486 * Makefile.in: Remove redundant HAVE_XFT clause.
16487
164882008-02-01 Kenichi Handa <handa@m17n.org>
16489
16490 * xrdb.c (x_load_resources): Setup the default fontSet X resource.
16491
164922008-02-01 Kenichi Handa <handa@m17n.org>
16493
16494 * fontset.c (Finternal_char_font): Fix for the case of POSITION
16495 being nil.
16496
164972008-02-01 Kenichi Handa <handa@m17n.org>
16498
16499 * xftfont.c (xftfont_open): Call FcConfigSubstitute.
16500
165012008-02-01 Kenichi Handa <handa@m17n.org>
16502
16503 * xftfont.c (xftfont_open): Don't enable antialias explicitly.
16504
165052008-02-01 Kenichi Handa <handa@m17n.org>
16506
16507 * search.c (simple_search): Fix previous change.
16508
165092008-02-01 Kenichi Handa <handa@m17n.org>
16510
16511 * xftfont.c (ftfont_font_format): Extern declaration.
16512
16513 * frame.c (x_set_font): Fix the second arg to fs_query_fontset.
16514
16515 * xfont.c (xfont_driver): Initialize ftfont_driver.type by 0.
16516 (xfont_list): Don't directly use Lisp_Object as an operand of &&.
16517
16518 * ftfont.c (ftfont_driver): Initialize ftfont_driver.type by 0.
16519 (ftfont_font_format): Fix previous change.
16520
16521 * font.h (Ffont_xlfd_name): EXFUN it.
16522
16523 * font.c (font_parse_xlfd): Fix the array size of `f'.
16524 (register_font_driver): Use EQ to compare driver->type.
16525
16526 * xfns.c (xic_create_xfontset2) [USE_FONT_BACKEND]: New function.
16527 (create_frame_xic) [USE_FONT_BACKEND]: Call xic_create_xfontset2.
16528 (xic_set_xfontset) [USE_FONT_BACKEND]: Likewise.
16529
165302008-02-01 Kenichi Handa <handa@m17n.org>
16531
16532 * ftfont.c (ftfont_pattern_entity, ftfont_list_generic_family)
16533 (ftfont_list, ftfont_font_format): Check if FC_FONTFORMAT is defined.
16534
165352008-02-01 Kenichi Handa <handa@m17n.org>
16536
16537 * xfont.c (xfont_open): Set font->format.
16538
16539 * xftfont.c (xftfont_open): Set font->format.
16540
16541 * ftfont.c (ftfont_pattern_entity): Add fontformat in a pattern.
16542 (ftfont_list): Include FC_FONTFORMAT in FcObject.
16543 (ftfont_open): Set font->format.
16544 (ftfont_font_format): New function.
16545
16546 * font.h (struct font): New member format.
16547
16548 * font.c (Qopentype): New variable.
16549 (syms_of_font): Defsym it.
16550 (Fquery_font): Change the format of the last element of the return
16551 value.
16552
165532008-02-01 Kenichi Handa <handa@m17n.org>
16554
16555 * xfns.c (xic_create_xfontset): Try the default fontset name as a
16556 last resort.
16557
165582008-02-01 Kenichi Handa <handa@m17n.org>
16559
16560 * coding.c (detect_coding_charset): Fix detection of multi-byte
16561 charset.
16562
165632008-02-01 Bob Halley <halley@play-bow.org> (tiny change)
16564
16565 * ccl.c (ccl_driver): If DST is NULL, set ccl->produced to 0.
16566
165672008-02-01 Kenichi Handa <handa@m17n.org>
16568
16569 * xdisp.c (get_next_display_element): Set it->face_id for the
16570 first component of a composition.
16571 (x_produce_glyphs): Check if the font is changed or not for composition.
16572
165732008-02-01 Kenichi Handa <handa@m17n.org>
16574
16575 * fontset.c (Qlatin): New variable.
16576 (syms_of_fontset): Define it as a lisp symbol.
16577 (Fset_fontset_font): If TARGET is `latin', use FONT_SPEC for ASCII.
16578
165792008-02-01 Kenichi Handa <handa@m17n.org>
16580
16581 * font.c (font_unparse_fcname): Pay attention to the case that
16582 some of font property is a null string.
16583
165842008-02-01 Kenichi Handa <handa@m17n.org>
16585
16586 * term.c: Include "composite.h".
16587 (encode_terminal_code): Output all components of composition.
16588 Check the size of encode_terminal_src.
16589 (produce_glyphs): For composition, call produce_composite_glyph.
16590 (append_composite_glyph, produce_composite_glyph): New functions.
16591
16592 * xdisp.c (x_produce_glyphs): In handling composition, if a font
16593 is not found, get font_info from the current ascii face.
16594
165952008-02-01 Kenichi Handa <handa@m17n.org>
16596
16597 * fileio.c (Finsert_file_contents): On replacing, temporarily bind
16598 buffer-file-name to Qnil before calling insert_from_buffer.
16599
16600 * font.c (font_unparse_fcname): Pay attention to the case that
16601 foundry is a null string.
16602
166032008-02-01 Kenichi Handa <handa@m17n.org>
16604
16605 * ftfont.c (ftfont_list): Allow registry "unicode-sip".
16606
16607 * font.c (Qunicode_sip): New variable.
16608 (syms_of_font): Declare it as a Lisp symbol.
16609
16610 * font.h (Qunicode_sip): Extern it.
16611
166122008-02-01 Kenichi Handa <handa@m17n.org>
16613
16614 * composite.c (get_composition_id): Pay attention to TAB component.
16615
16616 * xterm.c (x_draw_composite_glyph_string_foreground): Don't draw
16617 TAB. Adjust for the change of s->char2b which always points to
16618 the first element of allocated memory.
16619
16620 * xftfont.c (xftfont_text_extents): Fix calculation of descent value.
16621
16622 * xdisp.c (handle_composition_prop): Set it->c to the first
16623 non-TAB component.
16624 (fill_composite_glyph_string): Change argument.
16625 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the above change.
16626 (x_produce_glyphs): Fix handling of left/right padding.
16627
166282008-02-01 Kenichi Handa <handa@m17n.org>
16629
16630 * coding.c (detect_coding_system): Fix for handling off
16631 inhibit_iso_escape_detection. Fix for the case that no coding
16632 system is defined for a specific coding category.
16633
166342008-02-01 Kenichi Handa <handa@m17n.org>
16635
16636 * font.c (font_matching_entity): Delete unused local var.
16637
16638 * xftfont.c (xftfont_open): Call XftDefaultSubstitute before
16639 opening a font.
16640
16641 * fileio.c (Finsert_file_contents): On recovering a file, assume
16642 Unix-like eol.
16643 (choose_write_coding_system): On auto-saving a file, force
16644 Unix-like eol.
16645
16646 * coding.c (setup_coding_system): Fix setting of
16647 coding->common_flags based on eol_type.
16648 (coding_inherit_eol_type): If PARENT is not nil, be sure to
16649 inherit from it.
16650
166512008-02-01 Kenichi Handa <handa@m17n.org>
16652
16653 * alloc.c (NSTATICS): Increas to 0x600.
16654
166552008-02-01 Kenichi Handa <handa@m17n.org>
16656
16657 * ftfont.c (ftfont_driver): Set ftfont_driver.match to ftfont_match.
16658 (ftfont_list): Don't check :name property.
16659 (ftfont_match): New function.
16660 (ftfont_pattern_entity): If the pattern doesn't contain
16661 FC_SPACING, don't assume FC_MONO.
16662
16663 * font.h (struct font_driver): New member `match'.
16664 (font_update_drivers): Adjust prototype.
16665
16666 * font.c (font_parse_fcname, font_parse_name): Don't change :name
16667 property of FONT.
16668 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE, check_gstring): Define
16669 them unconditionally.
16670 (font_matching_entity): New function.
16671 (font_open_by_name): Try font_matching_entity if exact match is
16672 not found.
16673 (font_update_drivers): Delete the arg FONT. Return a list of
16674 actually used backends. Don't free faces, font caches here.
16675 Don't store data in frame parameters. Don't call x_set_font.
16676 (Ffont_spec): Store :name property as is.
16677 (Ffont_get): Check HAVE_LIBOTF before calling font_otf_capability.
16678 (Ffont_otf_gsub): Call font->driver->otf_gsub instead of font_otf_gsub.
16679 (Ffont_otf_gpos): Call font->driver->otf_gpos instead of font_otf_gpos.
16680 (Ffont_otf_alternates): Check if the driver has otf_gsub function.
16681 Call font->driver->otf_gsub instead of font_otf_gsub.
16682
16683 * frame.c (x_set_font_backend): Do more works that were done in
16684 font_update_drivers before.
16685
16686 * xfont.c (xfont_match): New function.
16687 (xfont_driver): Set xfont_driver.match to xfont_match.
16688 (xfont_draw): Set font in GC if necessary.
16689
16690 * ftxfont.c (ftxfont_match): New function.
16691 (syms_of_ftxfont): Set ftxfont_driver.match to ftxfont_match.
16692
16693 * xftfont.c (xftfont_match): New function.
16694 (syms_of_xftfont): Set xftfont_driver.match to xftfont_match.
16695
166962008-02-01 Kenichi Handa <handa@m17n.org>
16697
16698 * font.h (struct font): New member scalable.
16699 (struct font_driver): New arg ALTERANTE_SUBST to otf_gsub.
16700 (font_otf_gsub): Adjust prototype.
16701
16702 * font.c (font_otf_capability): Fix handling of the default langsys.
16703 (parse_gsub_gpos_spec): Change type to void. New arg nbytes.
16704 Check the contents of SPEC.
16705 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE): New macros.
16706 (check_gstring): New function.
16707 (REPLACEMENT_CHARACTER): New macro.
16708 (font_otf_gsub): New arg alternate_subst. Be sure to set all
16709 glyph codes of GSTRING.
16710 (font_otf_gpos): Be sure to set all glyph codes of GSTRING.
16711 (font_prepare_composition): Set cmp->glyph_len.
16712 (font_open_entity): Set font->scalable.
16713 (Ffont_get): Handle :otf property.
16714 (Ffont_otf_gsub, Ffont_otf_gpos, Ffont_otf_alternates): New
16715 functions.
16716 (Fquery_font): Use font->font.full_name.
16717 (syms_of_font): Defsubr Sfont_otf_gsub, Sfont_otf_gpos, and
16718 Sfont_otf_alternates.
16719
16720 * ftfont.c (ftfont_open): Set font->font.full_name and
16721 font->font.name properly. Fix calculation of font->font.height
16722 and font->min_width.
16723
16724 * ftxfont.c (ftxfont_create_gcs): New function.
16725 (ftxfont_draw_bitmap): Fix arg to ftfont_driver.get_bitmap.
16726 (ftxfont_draw_backgrond): Fix filling region.
16727 (ftxfont_default_fid): New function.
16728 (ftxfont_open): Set xfont->fid to the return value of
16729 ftxfont_default_fid.
16730 (ftxfont_prepare_face): Use ftxfont_create_gcs to create GCs.
16731 (ftxfont_done_face): Free only GCs that are created by
16732 ftxfont_create_gcs.
16733 (ftxfont_draw): If face->gc != s->gc, create proper GCs.
16734
16735 * xterm.c (x_set_glyph_string_clipping_exactly) [USE_FONT_BACKEND]:
16736 Clip to src->width, etc (not src->clip_XXX).
16737
16738 * xfns.c (x_create_tip_frame) [USE_FONT_BACKEND]: Handle
16739 FontBackend frame parameter.
16740
167412008-02-01 Kenichi Handa <handa@m17n.org>
16742
16743 * font.h (struct font_driver_list): New member `on'.
16744 (Fclear_font_cache): EXFUN it.
16745 (font_update_drivers): Extern it.
16746
16747 * font.c (font_unparse_fcname): Fix typo (swidth->width).
16748 (font_list_entities): Check driver_list->on.
16749 (register_font_driver): Initalize `on' member to 0.
16750 (font_update_drivers): New function.
16751 (Fclear_font_cache): Check driver_list->on.
16752
16753 * frame.h (Qfont_backend): Extern it.
16754 (x_set_font_backend): Extern it.
16755
16756 * frame.c (Qfont_backend): New variable.
16757 (frame_parms): New element for font-backend.
16758 (x_set_font_backend): New function.
16759
16760 * xfns.c (Fx_create_frame) [USE_FONT_BACKEND]: Handle
16761 FontBackend frame parameter.
16762 (x_frame_parm_handlers) [USE_FONT_BACKEND]: New element
16763 x_set_font_backend.
16764
16765 * xfont.c (xfont_list): Don't try listing by :name property if the
16766 name is not for XLFD.
16767
167682008-02-01 Kenichi Handa <handa@m17n.org>
16769
16770 * font.h (LGLYPH_FROM, LGLYPH_TO, LGLYPH_SET_FROM)
16771 (LGLYPH_SET_TO): New macros.
16772 (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WADJUST): Check if adjustment
16773 element of G is vector or not.
16774 (font_at): Extern it.
16775
16776 * font.c: Include window.h.
16777 (font_lispy_object): New function.
16778 (font_prepare_composition): Check LGLYPH_FORM (g) to detect the
16779 end of valid glyph.
16780 (font_close_object): Fix getting (struct font *).
16781 (font_at): New function.
16782 (Ffont_get): If FONT is a font-object, get entity from it.
16783 (Ffont_make_gstring): Initialize elements of glyphs with nil.
16784 (Ffont_fill_gstring): Use macro LGSTRING_XXX and LGLYPH_XXX. Fix
16785 range check.
16786 (Ffont_at): New function.
16787 (syms_of_font): Defsubr Sfont_at.
16788
16789 * xdisp.c (it_props): Move the entry for Qauto_composed to just
16790 before the entry for Qcomposition.
16791 (handle_auto_composed_prop): Call auto-composition-function with 4 args.
16792 (handle_composition_prop) [USE_FONT_BACKEND]: Set it->face_id from
16793 the font in gstring.
16794 (fill_composite_glyph_string) [USE_FONT_BACKEND]: Check
16795 LGLYPH_FORM (g) to detect the end of valid glyph.
16796 (x_produce_glyphs) [USE_FONT_BACKEND]: Don't update it->face_id if
16797 we are composing with gstring.
16798
16799 * xterm.c (x_draw_composite_glyph_string_foreground) [USE_FONT_BACKEND]:
16800 Check if adjustment is vector or not.
16801
16802 * Makefile.in (font.o): Make it depends on window.h.
16803
168042008-02-01 Kenichi Handa <handa@m17n.org>
16805
16806 * xterm.c (x_draw_composite_glyph_string_foreground): Check if
16807 adjustment is vector or not.
16808
168092008-02-01 Miles Bader <miles@gnu.org>
16810
16811 * character.h (CHECK_CHARACTER): Redefine in terms of CHECK_TYPE.
16812
168132008-02-01 Kenichi Handa <handa@m17n.org>
16814
16815 * font.h (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WIDTH, LGLYPH_WADJUST)
16816 (LGLYPH_SET_WIDTH): Adjusted for the change of LGLYPH format.
16817 (LGLYPH_ADJUSTMENT, LGLYPH_SET_ADJUSTMENT): New macros.
16818
16819 * font.c (font_merge_old_spec): Treat '*' in foundry as a wild card.
16820 (DEVICE_DELTA): Fix typo.
16821 (font_otf_gpos, font_prepare_compositio): Adjust for the change of
16822 LGLYPH format.
16823
16824 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
16825 the change of LGLYPH format.
16826
168272008-02-01 Kenichi Handa <handa@m17n.org>
16828
16829 * ftfont.c (ftfont_list): Fix typo.
16830 (ftfont_build_basic_charsets): Don't include letters with diacritics.
16831
168322008-02-01 Jan Djärv <jan.h.d@swipnet.se>
16833
16834 * xfaces.c (realize_non_ascii_face): Set face->extra to NULL.
16835
16836 * xftfont.c (xftfont_done_face): Call XftDrawDestroy only if
16837 xftface_info is non-NULL.
16838
168392008-02-01 Jan Djärv <jan.h.d@swipnet.se>
16840
16841 * ftfont.c (ftfont_list): Move misplaced #endif.
16842
168432008-02-01 Kenichi Handa <handa@m17n.org>
16844
16845 * ftfont.c (ftfont_list): Pay attention to the case that
16846 FC_CAPABILITY is not defined.
16847
168482008-02-01 Kenichi Handa <handa@m17n.org>
16849
16850 * xftfont.c (xftfont_open): Set charset related members to -1.
16851
16852 * ftfont.c (ftfont_list): Handle QCotf property. Fix handling of
16853 QCname.
16854 (ftfont_open): Set charset related members to -1.
16855
16856 * fontset.c (Votf_script_alist): New variable.
16857 (syms_of_fontset): Initialize it.
16858 (fontset_font): Delete unused variable.
16859
16860 * fontset.h (Votf_script_alist): Extern it.
16861
16862 * font.c (font_find_for_lface): Optimize code.
16863
16864 * font.h (font_close_object, font_merge_old_spec): Extern them.
16865
168662008-02-01 Kenichi Handa <handa@m17n.org>
16867
16868 * font.c (QCscalable, Qc, Qm, Qp, Qd): New variables.
16869 (syms_of_font): Initialize them.
16870 (font_pixel_size): Allow float value in dpi.
16871 (font_prop_validate_type): Delete.
16872 (font_prop_validate_symbol, font_prop_validate_style): Change argument.
16873 Change caller.
16874 (font_prop_validate_non_neg): Rename from font_prop_validate_size.
16875 (font_prop_validate_extra): Delete.
16876 (font_prop_validate_spacing): New function.
16877 (font_property_table): Add elements for all known properties.
16878 (get_font_prop_index): Rename from check_font_prop_name. New
16879 argument FROM. Change caller.
16880 (font_prop_validate): Validate all known properties.
16881 (font_put_extra): Delete argument force. Change caller.
16882 (font_expand_wildcards): Make it static. Fix the way of shrinking
16883 the possible range.
16884 (font_parse_xlfd): Delete argument merge. Fix handling of RESX,
16885 RESY, SPACING, and AVGWIDTH. Don't validate property values here.
16886 Change caller.
16887 (font_unparse_xlfd): Handle dpi, spacing, and scalable properties.
16888 (font_parse_fcname): Delete argument merge. Fix parsing of point
16889 size. Don't validate properties values here. Change caller.
16890 (font_unparse_fcname): Handle dpi, spacing, and scalable properties.
16891 (font_open_by_name): Delete unused variable.
16892 (Ffont_spec): Likewise. Validate property values.
16893 (Ffont_match_p): New function.
16894
16895 * font.h (QCscalable): Extern it.
16896 (font_parse_xlfd, font_parse_fcname): Adjust prototype.
16897
16898 * ftfont.c (ftfont_list): Handle properties dpi, spacing, and scalable.
16899
16900 * xfont.c (xfont_query_font): Adjust for the change of font_parse_xlfd.
16901 (xfont_list_pattern): New function.
16902 (xfont_list): Use xfont_list_pattern.
16903
169042008-02-01 Kenichi Handa <handa@m17n.org>
16905
16906 * font.h (Flist_fonts): EXFUN it.
16907
169082008-02-01 Jason Rumney <jasonr@gnu.org>
16909
16910 * w32term.c (w32_initialize): Add back smoothing_type and
16911 smoothing_enabled definitions.
16912
169132008-02-01 Kenichi Handa <handa@m17n.org>
16914
16915 * xterm.c (x_draw_glyph_string) [USE_FONT_BACKEND]: Check
16916 s->face->font on determining underline position.
16917
169182008-02-01 Kenichi Handa <handa@m17n.org>
16919
16920 * font.c (font_parse_xlfd): Fix generating of CHARSET_REGISTRY field.
16921 (font_has_char): Accept font-object too.
16922 (font_find_for_lface): Try at first with a size specified in face.
16923
169242008-02-01 Kenichi Handa <handa@m17n.org>
16925
16926 * frame.c (x_set_font) [USE_FONT_BACKEND]: Fix argument to
16927 font_open_by_name.
16928
169292008-02-01 Kenichi Handa <handa@m17n.org>
16930
16931 * font.h (QCspacing, QCdpi): Extern them.
16932 (enum font_spacing): New enum.
16933 (FONT_PIXEL_SIZE_QUANTUM): New macro.
16934
16935 * font.c (POINT_TO_PIXEL): Don't divide POINT by 10.
16936 (QCspacing, QCdpi): New variables.
16937 (syms_of_font): Initialize them.
16938 (font_pixel_size): New function.
16939 (font_put_extra): New function.
16940 (font_parse_xlfd): Fix handling of font size. Add QCdpi property
16941 in FONT_EXTRA.
16942 (font_parse_fcname): Handle enumerated values (e.g. bold).
16943 Fix handling font size. Add QCname property that contains only
16944 unknown properties.
16945 (font_score): Change argument. Change caller. Pay attention to
16946 FONT_PIXEL_SIZE_QUANTUM.
16947 (font_sort_entites, font_list_entities, font_find_for_lface)
16948 (font_open_for_lface, font_open_by_name): Fix handling of font size.
16949 (Ffont_spec): Add QCname property that contains only unknown properties.
16950
16951 * ftfont.c (ftfont_list): Use assq_no_quit, not Fassq. Don't
16952 include weight in listing pattern, instead check weight of each
16953 listed font. Don't include scalable in pattern. Pay attention to
16954 FONT_PIXEL_SIZE_QUANTUM.
16955
169562008-02-01 Kenichi Handa <handa@m17n.org>
16957
16958 * font.c (font_parse_fcname): Fix parsing of point-size.
16959 (font_unparse_fcname): Produce symbolic names for style properties.
16960 (font_list_entities): Handle float size correctly.
16961 (font_open_by_name): Prefer `normal' property values if the name
16962 doesn't specify them.
16963
16964 * fontset.c (Finternal_char_font): Use font_get_name, not
16965 Ffont_xlfd_name.
16966
16967 * ftfont.c (ftfont_pattern_entity): Use the numeric value 100 for
16968 FC_WEIGHT_REGULAR. Exclude FC_SIZE and FC_PIXEL_SIZE from listing
16969 pattern. Don't force scalable.
16970
16971 * xftfont.c (xftfont_open): For generating a name, start from
16972 96-byte buffer.
16973
169742008-02-01 Jan Djärv <jan.h.d@swipnet.se>
16975
16976 * frame.h (x_new_fontset2): Fix prototype.
16977
169782008-02-01 Kenichi Handa <handa@m17n.org>
16979
16980 * font.h (struct font_driver): Delete member parse_name.
16981 (font_match_p, font_get_spec, font_parse_fcname)
16982 (font_unparse_fcname): Extern them.
16983 (font_get_name): Adjust prototype.
16984
16985 * font.c (XLFD_SMALLNUM_MASK): Delete this macro.
16986 (XLFD_LARGENUM_MASK): Delete XLFD_ENCODING_MASK from it.
16987 (font_expand_wildcards): Fix handling ENCODING field. Avoid
16988 unnecessary checks for weight, slant, and swidth.
16989 (font_parse_fcname): New function.
16990 (font_unparse_fcname): New function.
16991 (font_parse_name): New function.
16992 (font_match_p): New function.
16993 (font_get_name): Change return value to Lisp string.
16994 (font_get_spec): New function.
16995 (Qunspecified, Qignore_defface): Don't extern them.
16996 (font_find_for_lface): Assume that LFACE is fully specified.
16997 (font_load_for_face): If lface[LFACE_FONT_INDEX] is an font
16998 object, use it for FACE.
16999 (font_open_by_name): Call Ffont_spec with QCname prop. Don't call
17000 driver->parse_name.
17001 (Ffont_spec): Call font_parse_name, not font_parse_xlfd.
17002
17003 * fontset.h (new_fontset_from_font) [USE_FONT_BACKEND]: Adjust
17004 prototype.
17005
17006 * fontset.c (new_fontset_from_font) [USE_FONT_BACKEND]: Delete
17007 argument F. Don't call Fnew_fontset. Instead, directly call
17008 make_fontset.
17009
17010 * frame.h (x_new_fontset2) [USE_FONT_BACKEND]: Adjust prototype.
17011
17012 * frame.c (x_set_font) [USE_FONT_BACKEND]: Adjust for the change
17013 of x_new_fontset2.
17014
17015 * ftfont.c (Qmonospace, Qsans_serif, Qserif, Qmono, Qsans)
17016 (Qsans__serif): New variables.
17017 (ftfont_generic_family_list): New variable.
17018 (syms_of_ftfont): Initialize the above variables.
17019 (ftfont_pattern_entity): Delete argument NAME.
17020 (ftfont_list_generic_family): New function.
17021 (ftfont_parse_name): Delete this function.
17022 (ftfont_list): Try generic family only when FcFontList found no font.
17023 (ftfont_list_family): Fix args to FcObjectSetBuild.
17024
17025 * xfaces.c (check_lface_attrs) [USE_FONT_BACKEND]: Accept font
17026 object in attrs[LFACE_FONT_INDEX].
17027 (set_lface_from_font_name): Cancel all changes for font-backend.
17028 (set_lface_from_font_and_fontset) [USE_FONT_BACKEND]: New
17029 function.
17030 (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]: Accept a
17031 font object in QCfont attribute.
17032 (set_font_frame_param) [USE_FONT_BACKEND]: Likewise.
17033 (realize_default_face) [USE_FONT_BACKEND]: Call
17034 set_lface_from_font_and_fontset.
17035
17036 * xfns.c (x_default_font_parameter) [USE_FONT_BACKEND]: Try also
17037 "fixed", and signal error here if no suitable font was found.
17038
17039 * xfont.c (xfont_parse_name): Delete this function.
17040
17041 * xftfont.c (xftfont_open): Change coding style of error
17042 handling. Generate fontconfig's fontname pattern.
17043
17044 * xterm.h (struct x_output) [USE_FONT_BACKEND]: New member fontp.
17045 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro.
17046
17047 * xterm.c (x_new_fontset2) [USE_FONT_BACKEND]: Change arguments.
17048 Both args FONTSET and FONT_OBJECT must be existing ones.
17049
170502008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17051
17052 * macterm.c (mac_set_unicode_keystroke_event): Don't use MAKE_CHAR.
17053
170542008-02-01 Kenichi Handa <handa@m17n.org>
17055
17056 * xfont.c (xfont_open, xfont_encode_char): Fix typo.
17057
17058 * font.h (struct font): Fix typo.
17059
17060 * font.c (enum xlfd_field_index): Rename XLFD_XXX_SIZE_INDEX to
17061 XLFD_XXX_INDEX.
17062 (enum xlfd_field_mask): New enum.
17063 (intern_font_field): Changed argument. Change caller. If digits
17064 are followed by non-digits, return a symbol.
17065 (font_expand_wildcards): New function.
17066 (font_parse_xlfd): Fix wildcard handling.
17067 (Ffont_spec): If :name is specified, reflect the info in the other
17068 properties.
17069
17070 * ftfont.c (ftfont_pattern_entity): Fix typo.
17071 (ftfont_list): Enforce FC_LANG in PATTERN to cancel the effect of
17072 locale.
17073
170742008-02-01 Kenichi Handa <handa@m17n.org>
17075
17076 * font.h (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Extern them.
17077
17078 * font.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move from ftfont.c.
17079 (font_unparse_xlfd): Fix argument type declaration. Append "*" if
17080 registry doesn't specify encoding part.
17081 (font_find_for_lface): Pay attention to LFACE_FONT_INDEX.
17082 (font_open_by_name): At first try parsing the name.
17083 (syms_of_font): Declare Qiso8859_1, Qiso10646_1, and Qunicode_bmp
17084 as Lisp symbols.
17085
17086 * fontset.c (reorder_font_vector): Pay attention to the case that
17087 the 3rd element of font_def is nil.
17088 (fontset_font): For the default fontset, append one more fontset
17089 elements for a script-based font specification. Don't add script
17090 attribute on finding a font.
17091 (new_fontset_from_font): Unconditionally set FONTSET_ASCII to the
17092 font name.
17093 (fontset_ascii_font): If a font can't be opened, return nil.
17094
17095 * ftfont.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move to font.c.
17096 (ftfont_pattern_entity): New function.
17097 (ftfont_get_cache): Assume that freetype_font_cache is already
17098 initialized.
17099 (ftfont_list): Handle the case that a file is specified in font
17100 name. Use ftfont_pattern_entity to generate entities.
17101 (ftfont_has_char): Check if the pattern contains FC_CHARSET.
17102 (syms_of_ftfont): Initialize freetype_font_cache.
17103
17104 * xftfont.c (xftfont_open): Make the font name fontconfig's
17105 style. Add BLOCK_INPUT and UNBLOCK_INPUT.
17106 (xftfont_close): Free font->font.name if not NULL.
17107
17108 * xfont.c (xfont_list): If script is specified for a font, return
17109 null_vector.
17110 (xfont_list_family): Declare argument type.
17111
17112 * xfaces.c (set_lface_from_font_name): If a font doesn't have a
17113 name, set LFACE_FONT (lface) to nil.
17114
17115 * xterm.c (x_new_fontset2): If an ASCII font couldn't be loaded,
17116 return Qnil.
17117
171182008-02-01 Kenichi Handa <handa@m17n.org>
17119
17120 * emacs.c (main): Check -enable-font-backend arg after the check of -nl.
17121 (standard_args): Add "-enable-font-backend".
17122
171232008-02-01 Kenichi Handa <handa@m17n.org>
17124
17125 * xftfont.c (xftfont_default_fid): Set fid_known to 1.
17126 (struct xftdraw_list, xftdraw_list): Delete them.
17127 (register_xftdraw, check_xftdraw): Delete them.
17128 (xftfont_prepare_face): Don't call register_xftdraw.
17129 (xftfont_done_face): Don't call check_xftdraw.
17130 (xftfont_draw): Get background color only when with_background is
17131 nonzero.
17132
17133 * xfont.c (xfont_encode_char): Fix calculation of char2b.
17134
171352008-02-01 Kenichi Handa <handa@m17n.org>
17136
17137 These changes are for the new font handling codes.
17138
17139 * Makefile.in (ALL_CFLAGS): Add @FREETYPE_CFLAGS@,
17140 @FONTCONFIG_CFLAGS@, and @LIBOTF_CFLAGS@.
17141 (LIB_X11_LIB): If HAVE_XFT is defined, set to @XFT_LIBS@.
17142 (FONTSRC, FONTOBJ): New variables.
17143 (obj): Add $(FONTOBJ).
17144 (SOME_MACHINE_OBJECTS): Lib_X11_Lib.
17145 (LIBES): Add @FREETYPE_LIBS@, @FONTCONFIG_LIBS@, and
17146 @LIBOTF_LIBS@.
17147 (font.o, ftfont.o, xfont.o, xftfont.o, ftxfont.o): New targets.
17148 (fontset.o, xdisp.o, xfaces.o, xfns.o, xterm.o): Depend on $(FONTSRC).
17149
17150 * font.h, font.c, xfont.c, ftfont.c, xftfont.c, ftxfont.c: New files.
17151
17152 * character.h (Vscript_representative_chars): Extern it.
17153
17154 * character.c (Vscript_representative_chars): New variable.
17155 (syms_of_character): Declare it as a Lisp variable.
17156
17157 * composite.c (get_composition_id) [USE_FONT_BACKEND]: If
17158 enable_font_backend is nonzero, accept the composition method
17159 COMPOSITION_WITH_GLYPH_STRING.
17160
17161 * composite.h (enum composition_method) [USE_FONT_BACKEND]: New
17162 enumeration COMPOSITION_WITH_GLYPH_STRING.
17163
17164 * dispextern.h (struct glyph_string) [USE_FONT_BACKEND]: New
17165 members clip_x, clip_y, clip_width, and clip_height.
17166 (struct face) [USE_FONT_BACKEND]: New members font_info and extra.
17167
17168 * emacs.c (main) [USE_FONT_BACKEND]: Handle arg
17169 --enable-font-backend. Call syms_of_font.
17170
17171 * fns.c (assoc_no_quit): New function.
17172
17173 * fontset.h (FONT_INFO_FROM_FACE): New macro.
17174 (face_for_font, new_fontset_from_font)
17175 (fontset_ascii_font) [USE_FONT_BACKEND]: Extern them.
17176
17177 * fontset.c [USE_FONT_BACKEND]: Include "font.h".
17178 (fontset_font, fontset_ascii, face_for_char)
17179 (make_fontset_for_ascii_face, Ffont_info)
17180 (Finternal_char_font) [USE_FONT_BACKEND]: If enable_font_backend
17181 is nonzero, use font-backend mechanism.
17182 (find_font_encoding): Make it non-static.
17183 (new_fontset_from_font, fontset_ascii_font) [USE_FONT_BACKEND]:
17184 New functions.
17185
17186 * frame.h (struct frame): New members resx and resy.
17187 (struct frame) [USE_FONT_BACKEND]: New member font_driver_list.
17188 (x_new_fontset2) [USE_FONT_BACKEND]: Extern it.
17189
17190 * frame.c [USE_FONT_BACKEND]: Include "font.h".
17191 (make_frame, x_set_font) [USE_FONT_BACKEND]: Use font-backend mechanism.
17192
17193 * lisp.h (assoc_no_quit): Extern it.
17194
17195 * xdisp.c: If USE_FONT_BACKEND is defined, include "font.h".
17196 Through out the file, use FONT_INFO_FROM_FACE instead of
17197 FONT_INFO_FROM_ID, use get_per_char_metric instead of
17198 rif->per_char_metric.
17199 (handle_composition_prop) [USE_FONT_BACKEND]: If the composition
17200 method is COMPOSITION_WITH_GLYPH_STRING, just set it->c to ' '.
17201 (get_glyph_face_and_encoding, fill_composite_glyph_string)
17202 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
17203 (x_produce_glyphs) [USE_FONT_BACKEND]: If enable_font_backend is
17204 nonzero, use font-backend mechanism.
17205 (get_per_char_metric): New function.
17206
17207 * xfaces.c [USE_FONT_BACKEND]: Include "font.h".
17208 (set_lface_from_font_name)
17209 (set_font_frame_param, free_realized_face)
17210 (prepare_face_for_display, clear_face_gcs)
17211 (Finternal_set_font_selection_order, realize_x_face)
17212 [USE_FONT_BACKEND]: If enable_font_backend is nonzero, use
17213 font-backend mechanism.
17214 (clear_face_cache) [USE_FONT_BACKEND]: Don't call clear_font_table.
17215 (load_face_font) [USE_FONT_BACKEND]: Abort.
17216 (face_symbolic_value, face_symbolic_weight, face_symbolic_slant)
17217 (face_symbolic_swidth, face_for_font) [USE_FONT_BACKEND]: New functions.
17218
17219 * xfns.c [USE_FONT_BACKEND]: Include "font.h".
17220 (x_default_font_parameter) [USE_FONT_BACKEND]: New function.
17221 (Fx_create_frame) [USE_FONT_BACKEND]: If enable_font_backend is
17222 nonzero, register all available font drivers. Call
17223 x_default_font_parameter for deciding a font.
17224 (x_create_tip_frame) [USE_FONT_BACKEND]: Likewise.
17225
17226 * xterm.c [USE_FONT_BACKEND]: Include "font.h".
17227 (x_set_mouse_face_gc, x_set_glyph_string_clipping)
17228 (x_set_glyph_string_clipping_exactly)
17229 (x_compute_glyph_string_overhangs)
17230 (x_draw_glyph_string_foreground)
17231 (x_draw_composite_glyph_string_foreground, x_draw_glyph_string)
17232 (x_free_frame_resources) [USE_FONT_BACKEND]: If
17233 enable_font_backend is nonzero, use font-backend mechanism.
17234 (x_new_fontset2) [USE_FONT_BACKEND]: New function.
17235
172362008-02-01 Kenichi Handa <handa@m17n.org>
17237
17238 * coding.c (coding_inherit_eol_type): If PARENT is nil, inherit from
17239 system_eol_type.
17240 (syms_of_coding): Initialize system_eol_type.
17241
17242 * process.c (Fset_process_coding_system): Inherit system's eol
17243 format if necessary.
17244
172452008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17246
17247 * macgui.h (USE_ATSUI): Don't enable on emacs-unicode-2 branch.
17248
172492008-02-01 Kenichi Handa <handa@m17n.org>
17250
17251 * coding.c (decode_eol): Pay attention to buffer relocation in
17252 del_range_2.
17253 (decode_coding): Call decode_eol before restoring undo_list.
17254
172552008-02-01 Kenichi Handa <handa@m17n.org>
17256
17257 * charset.c (Fdefine_charset_internal): Fix setting of
17258 emacs_mule_bytes.
17259
172602008-02-01 Kenichi Handa <handa@m17n.org>
17261
17262 * keyboard.c (read_char): Check if C is a character or not before
17263 looking up Vkeyboard_translate_table.
17264
172652008-02-01 Kenichi Handa <handa@m17n.org>
17266
17267 * coding.c (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Fix
17268 condition to terminate the loop.
17269
172702008-02-01 Kenichi Handa <handa@m17n.org>
17271
17272 * coding.c (produce_composition): Compare charbuf[i] instead of
17273 args[i] against 0.
17274 (Fterminal_coding_system): Use EQ to compare Lisp objects.
17275
172762008-02-01 Kenichi Handa <handa@m17n.org>
17277
17278 * coding.c (DECODE_COMPOSITION_START): If the source is short, set
17279 coding->result to CODING_RESULT_INSUFFICIENT_SRC.
17280 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK after the call of
17281 detect_coding.
17282 (emacs_mule_char): Handle old style (Emacs 20) component character
17283 of a composition.
17284 (DECODE_EMACS_MULE_COMPOSITION_RULE_20)
17285 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Fix parsing a
17286 composition rule.
17287 (decode_coding_emacs_mule): Handle invalid bytes correctly.
17288
172892008-02-01 Kenichi Handa <handa@m17n.org>
17290
17291 * coding.c (encode_coding_ccl): Allocate destination dynamically
17292 when necessary.
17293
172942008-02-01 Kenichi Handa <handa@m17n.org>
17295
17296 * ccl.c (Fccl_execute_on_string): Fix the condition of terminating
17297 the loop. When quitted, show a proper error message.
17298
172992008-02-01 Kenichi Handa <handa@m17n.org>
17300
17301 * xterm.c (x_set_glyph_string_clipping_exactly): Set
17302 src->clip_head and src->clip_tail temporarily instead of src->hl.
17303
17304 * ccl.c (CCL_WRITE_STRING): Handle a flag bit for multibyte
17305 character sequence.
17306 (Fccl_execute_on_string): Use ASET, not XSET.
17307
173082008-02-01 Kenichi Handa <handa@m17n.org>
17309
17310 * search.c (search_buffer): Fix handling of "\\" in a trivial regexp.
17311
173122008-02-01 Kenichi Handa <handa@m17n.org>
17313
17314 * coding.c (decode_coding): Fix the condition of terminating the
17315 decoding loop.
17316
173172008-02-01 Kenichi Handa <handa@m17n.org>
17318
17319 * data.c (Faset): On setting a character bigger than 255 in a
17320 unibyte string, signal an error instead of make the string multibyte.
17321
173222008-02-01 Kenichi Handa <handa@m17n.org>
17323
17324 * charset.c (map_charset_chars): Fix for ascii-compatible charset
17325 made by a mapping table.
17326
173272008-02-01 Kenichi Handa <handa@m17n.org>
17328
17329 * xdisp.c (fill_composite_glyph_string): Check s->face is NULL or
17330 not.
17331 (BUILD_COMPOSITE_GLYPH_STRING): If C is TAB, set s->face to NULL.
17332 (x_produce_glyphs): If CH is TAB, set cmp->offsets properly.
17333
17334 * xterm.c (x_draw_composite_glyph_string_foreground): Check
17335 s->face is NULL or not.
17336
173372008-02-01 Kenichi Handa <handa@m17n.org>
17338
17339 * xterm.c (x_set_glyph_string_clipping_exactly): New function.
17340 (x_draw_glyph_string): Fix drawing of right_overhang and
17341 left_overhang around/on cursor.
17342
17343 * xdisp.c (draw_glyphs): Fix inclusion of right_overwriting glyphs.
17344
173452008-02-01 Kenichi Handa <handa@m17n.org>
17346
17347 * xdisp.c (x_produce_glyphs): Handle composition with TAB.
17348
173492008-02-01 Kenichi Handa <handa@m17n.org>
17350
17351 * coding.c (Fdefine_coding_system_internal)
17352 (Fdefine_coding_system_alias): Avoid a duplicated element in
17353 Vcoding_system_alist.
17354
173552008-02-01 Kenichi Handa <handa@m17n.org>
17356
17357 * xterm.c (handle_one_xevent): Handle keysyms 0x1000000..0x10000FF.
17358
17359 * coding.c (Qcoding_system_define_form): New variable.
17360 (syms_of_coding): Intern and staticpro it.
17361 (Fcoding_system_p): Check Qcoding_system_define_form.
17362 (Fcheck_coding_system): Try to autoload the definition of CODING-SYSTEM.
17363
17364 * coding.h (CODING_SYSTEM_P): If ID is not available, call
17365 Fcoding_system_p.
17366 (CHECK_CODING_SYSTEM): If ID is not available, call
17367 Fcheck_coding_system.
17368 (CHECK_CODING_SYSTEM_GET_SPEC, CHECK_CODING_SYSTEM_GET_ID):
17369 Try also Fcheck_coding_system.
17370
173712008-02-01 Kenichi Handa <handa@m17n.org>
17372
17373 * coding.c (code_conversion_restore): GCPRO arg.
17374
173752008-02-01 Kenichi Handa <handa@m17n.org>
17376
17377 * character.c (lisp_string_width): Check multibyteness of STRING.
17378
173792008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17380
17381 * macterm.c (mac_encode_char): Call ccl_driver with the last arg
17382 Qnil. Use JIS_TO_SJIS instead of ENCODE_SJIS.
17383 (decode_mac_font_name): Use decode_coding_c_string instead of
17384 decode_coding.
17385 (x_load_font): Initialize fontp->fontset to -1. Set
17386 fontp->encoding_type.
17387
173882008-02-01 Kenichi Handa <handa@m17n.org>
17389
17390 * search.c (search_buffer): Give up BM search on case-fold-search
17391 if one of a target character has a case-equivalence of different
17392 byte length even if that target charcter is an ASCII.
17393 (simple_search): Fix calculation of byte length of matched text.
17394 (boyer_moore): Fix handling of case-equivalent multibyte characters.
17395
173962008-02-01 Kenichi Handa <handa@m17n.org>
17397
17398 * coding.c (decode_coding): Fix handling of invalid bytes.
17399
174002008-02-01 Kenichi Handa <handa@m17n.org>
17401
17402 * xterm.c (handle_one_xevent): Handle keysyms directly mapped to
17403 Unicode characters.
17404
174052008-02-01 Kenichi Handa <handa@m17n.org>
17406
17407 * coding.c (encode_coding_object): If a pre-write-conversion
17408 function makes a new buffer, kill it.
17409
174102008-02-01 Kenichi Handa <handa@m17n.org>
17411
17412 * coding.c (QCascii_compatible_p): New variable.
17413 (syms_of_coding): Initialize it.
17414 (ONE_MORE_BYTE, ONE_MORE_BYTE_NO_CHECK): Decrement `src' before
17415 calling string_char.
17416 (record_conversion_result): Add `default:' case.
17417 (coding_charset_list): Delete unused variable `coding_type'.
17418 (Fdefine_coding_system_internal): Add `ascii-compatible-p'
17419 property in the plist of the coding system.
17420 (Fcoding_system_put): Check QCascii_compatible_p.
17421
174222008-02-01 Miles Bader <miles@gnu.org>
17423
17424 * xfaces.c (Finternal_lisp_face_equal_p): Restore previously
17425 removed calculation of frame `f', as it's now used.
17426
174272008-02-01 Kenichi Handa <handa@m17n.org>
17428
17429 * Makefile.in (RUN_TEMACS): Include "-nl" if HAVE_SHM is defined.
17430 (emacs${EXEEXT}): Run $(RUN_TEMACS) unconditionally.
17431 (UNIDATA): New variable.
17432 (${lispsource}international/charprop.el): Depends on ${UNIDATA}.
17433 (bootstrap-emacs${EXEEXT}): Depends on charprop.el. Run
17434 $(RUN_TEMACS) unconditionally.
17435
174362008-02-01 Kenichi Handa <handa@m17n.org>
17437
17438 * Makefile.in (temacs${EXEEXT}): Build charprop.el if necessary.
17439 (admindir): New variable.
17440 ($(lispsource)international/charprop.el): New target.
17441
174422008-02-01 Miles Bader <miles@gnu.org>
17443
17444 * character.c (chars-in-region): Remove obsolete function.
17445 (syms_of_character): Remove its initialization.
17446
174472008-02-01 Benjamin Riefenstahl <b.riefenstahl@turtle-trading.net>
17448
17449 * w32select.c (validate_coding_system)
17450 (setup_windows_coding_system): New functions.
17451 (convert_to_handle_as_coded, Fw32_get_clipboard_data): Use
17452 setup_windows_coding_system.
17453 (setup_config, Fw32_get_clipboard_data): Use
17454 validate_coding_system.
17455 (Fx_selection_exists): Move call to setup_config to a place
17456 where signals are allowed.
17457
17458 * lisp.h (Fcoding_system_base, Fcoding_system_eol_type)
17459 (Fcheck_coding_system): Add declarations.
17460
174612008-02-01 Kenichi Handa <handa@m17n.org>
17462
17463 * charset.c (load_charset_map_from_vector): Fix for the first iteration.
17464
174652008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17466
17467 * macfns.c (Fx_create_frame, x_create_tip_frame): Pass Lisp
17468 string as the second argument for x_new_fontset.
17469
174702008-02-01 Kenichi Handa <handa@m17n.org>
17471
17472 * coding.c (decode_coding_object): Use safe_call1 instead of call1.
17473 (encode_coding_object): Use safe_call instead of call2.
17474
174752008-02-01 Kenichi Handa <handa@m17n.org>
17476
17477 * fontset.c (Fset_fontset_font): Check family element of a given vector.
17478
17479 * Makefile.in (lisp): Include charprop.el.
17480
174812008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17482
17483 * macfns.c (Fx_create_frame, x_create_tip_frame): Fix crash.
17484 Not sure if it's unnecessary.
17485
174862008-02-01 Steven Tamm <steventamm@mac.com>
17487
17488 * macfns.c (Fx_create_frame, x_create_tip_frame): ifdef'd out
17489 some possibly unnecessary fontset checking code that crashed
17490 when creating a new frame.
17491
174922008-02-01 Kenichi Handa <handa@m17n.org>
17493
17494 * xfaces.c (merge_faces): Fix argument to lookup_derived_face and
17495 lookup_face.
17496
17497 * xdisp.c (Fformat_mode_line): Fix argument to lookup_named_face.
17498
17499 * fringe.c (draw_fringe_bitmap_1): Fix argument to lookup_named_face.
17500
175012008-02-01 Kenichi Handa <handa@m17n.org>
17502
17503 * coding.c: Cancel the change done in HEAD on 2008-02-01.
17504 (coding_charset_list): New function.
17505
17506 * coding.h (coding_charset_list): Extern it.
17507
175082008-02-01 Kenichi Handa <handa@m17n.org>
17509
17510 * fontset.c (Fset_fontset_font): Call find_font_encoding with
17511 concatenation of family and registry.
17512
175132008-02-01 Kenichi Handa <handa@m17n.org>
17514
17515 * character.h (BYTE8_STRING): Fix typo.
17516
17517 * editfns.c (Ftranslate_region_internal): Don't convert unibyte
17518 string to multibyte (sync to HEAD).
17519
17520 * casefiddle.c (casify_region): Handle changes in byte-length
17521 using replace_range_2 (sync to HEAD).
17522
175232008-02-01 Andreas Schwab <schwab@suse.de>
17524
17525 * chartab.c (map_char_table): GCPRO table and arg.
17526
175272008-02-01 Kenichi Handa <handa@m17n.org>
17528
17529 * syntax.c (skip_syntaxes): Return lispy 0 (not nil) if point is
17530 already at limit.
17531
175322008-02-01 Kenichi Handa <handa@m17n.org>
17533
17534 * fontset.c (fs_load_font): Use fast_string_match_ignore_case
17535 instead of fast_c_string_match_ignore_case.
17536 (find_font_encoding): Change argument to Lisp_Object. Use
17537 fast_string_match_ignore_case instead of
17538 fast_c_string_match_ignore_case. Change caller.
17539
175402008-02-01 Kenichi Handa <handa@m17n.org>
17541
17542 * xdisp.c (get_next_display_element): In unibyte case, decide to
17543 display in octal form by checking a character by
17544 UNIBYTE_CHAR_HAS_MULTIBYTE_P.
17545
17546 * charset.c (Fset_unibyte_charset): Setup unibyte_has_multibyte_table.
17547
17548 * character.c (unibyte_has_multibyte_table): New variable.
17549
17550 * character.h (unibyte_has_multibyte_table): Extern it.
17551 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): New macro.
17552
175532008-02-01 Kenichi Handa <handa@m17n.org>
17554
17555 * coding.c (encode_coding_iso_2022): Fix handling of charset
17556 annotation.
17557
175582008-02-01 Kenichi Handa <handa@m17n.org>
17559
17560 * coding.c (setup_coding_system): If coding_system is nil, use
17561 Qundecided.
17562 (Fterminal_coding_system): Return nil if terminal coding system is
17563 `undecided'.
17564 (syms_of_coding): Define coding-system `undecided' here. Setup
17565 terminal_coding as `undecided'.
17566
175672008-02-01 Kenichi Handa <handa@m17n.org>
17568
17569 * xdisp.c (message_dolog, set_message_1): Call
17570 unibyte_char_to_multibyte with arg type int.
17571
17572 * lread.c (read1): Fix reading of a char-table.
17573
17574 * print.c (print_object): Include sub char-table in circularities
17575 detection.
17576
175772008-02-01 Kenichi Handa <handa@m17n.org>
17578
17579 * keymap.c (where_is_internal_2): Fix for the case that KEY is a cons.
17580 Append the found sequences in car of ARGS instead of prepending.
17581
175822008-02-01 Kenichi Handa <handa@m17n.org>
17583
17584 * fileio.c (report_file_error): Make a unibyte string from
17585 strerror (errorno).
17586 (Fsubstitute_in_file_name): Fix the arg to
17587 unibyte_char_to_multibyte. It is evaluated twice.
17588
175892008-02-01 Kenichi Handa <handa@m17n.org>
17590
17591 * charset.h (CHAR_CHARSET): Shortcut for ASCII case.
17592
175932008-02-01 Kenichi Handa <handa@m17n.org>
17594
17595 * coding.c (detect_coding_utf_16): Don't set detect_info->found if
17596 BOM is not found.
17597 (detect_coding, detect_coding_system): Optimization for ISO-2022
17598 when no 8-bit data is found.
17599
176002008-02-01 Jason Rumney <jasonr@gnu.org>
17601
17602 * w32fns.c (x_to_w32_font): Update to use new coding struct.
17603
176042008-02-01 Kenichi Handa <handa@m17n.org>
17605
17606 * charset.c (Fdeclare_equiv_charset, Fiso_charset): Fix handing of
17607 CHARS.
17608
176092008-02-01 Steven Tamm <steventamm@mac.com>
17610
17611 * macterm.c (mac_encode_char): Add charset argument and update
17612 to use encoding_type.
17613 (x_new_font, x_new_fontset): Merge in changes from xterm.c;
17614 switch to pure fontset.
17615 (decode_mac_font_name): Temporarily remove decoding.
17616 (x_font_name_to_mac_font_name): Temporarily remove encoding.
17617 (x_load_font): Temporarily remove encoding.
17618
176192008-02-01 Kenichi Handa <handa@m17n.org>
17620
17621 * xfaces.c (Fface_font): If frame is not on a window system,
17622 ignore CHARACTER arg. If HAVE_WINDOW_SYSTEM is not defined, don't
17623 refer to face->font.
17624 (split_font_name_into_vector, build_font_name_from_vector)
17625 (lookup_non_ascii_face, realize_non_ascii_face): Define them only
17626 when HAVE_WINDOW_SYSTEM is defined.
17627
176282008-02-01 Kenichi Handa <handa@m17n.org>
17629
17630 * xdisp.c (BUILD_GLYPH_STRINGS): Check if s is NULL.
17631 (x_produce_glyphs): Fix setting of members of cmp in case
17632 cmp->glyph_len is zero.
17633
17634 * fontset.c (Fset_fontset_font): Fix docstring.
17635 (Ffontset_info): Make it backward compatible. New arg ALL.
17636
176372008-02-01 Kim F. Storm <storm@cua.dk>
17638
17639 * process.c (read_process_output): Grow decoding_buf when needed;
17640 this could cause a crash in allocate_string and compact_small_strings.
17641
176422008-02-01 Kenichi Handa <handa@m17n.org>
17643
17644 * fileio.c (WRITE_BUF_SIZE): Delete this macro.
17645
176462008-02-01 Kenichi Handa <handa@m17n.org>
17647
17648 * coding.c (setup_coding_system): Set coding->common_flags
17649 correctly for raw-text.
17650 (consume_chars): On encoding unibyte text by raw-text, don't check
17651 multibyte form.
17652 (encode_coding): On encoding by raw-text, never use translation tables.
17653
17654 * fileio.c (e_write): Short cut for the case of no encoding.
17655
176562008-02-01 Kenichi Handa <handa@m17n.org>
17657
17658 * coding.c (detect_coding, detect_coding_system): Delete unused
17659 variables.
17660
176612008-02-01 Kenichi Handa <handa@m17n.org>
17662
17663 * coding.c (encode_coding_utf_8): Fix handling of raw-byte char.
17664 (consume_chars): Fix handling of 8-bit bytes in unibyte source.
17665
176662008-02-01 Kenichi Handa <handa@m17n.org>
17667
17668 * coding.c (Ffind_coding_systems_region_internal): Include
17669 raw-text and no-conversion in the result.
17670
176712008-02-01 Kenichi Handa <handa@m17n.org>
17672
17673 * fontset.c (find_font_encoding): Return `ascii' for unknown encoding.
17674 (load_font_get_repertory): Delete unnecessary check of ENCODING of
17675 FONT_DEF.
17676 (font_def_arg, add_arg, from_arg, to_arg): New args.
17677 (set_fontset_font): Change argument.
17678 (Fset_fontset_font): Fix for the case that TARGET is a script
17679 name and charset name.
17680 (new_fontset_from_font_name): Fix argument to Fnew_fontset.
17681
176822008-02-01 Kenichi Handa <handa@m17n.org>
17683
17684 * fontset.c (fontset_font): Rename from fontset_face. Change return
17685 value.
17686 (face_suitable_for_char_p, face_for_char): Adjust for the change
17687 of fontset_font.
17688 (make_fontset_for_ascii_face): Fix setting of the fontset element
17689 for ASCII.
17690 (Finternal_char_font): Use fontset_font instead of FACE_FOR_CHAR
17691 to get a font name.
17692 (Ffontset_info): Adjust for the change of fontset_font.
17693
17694 * coding.c (emacs_mule_char): Check invalid code more rigidly.
17695
17696 * character.h (LEADING_CODE_LATIN_1_MIN)
17697 (LEADING_CODE_LATIN_1_MAX): Delete these macros.
17698
176992008-02-01 Kenichi Handa <handa@m17n.org>
17700
17701 * editfns.c (check_translation): New function.
17702 (Ftranslate_region_internal): Handle M:N mapping.
17703
177042008-02-01 Kenichi Handa <handa@m17n.org>
17705
17706 * xfaces.c (xlfd_point_size): Set font->numeric[XLFD_PIXEL_SIZE].
17707
177082008-02-01 Kenichi Handa <handa@m17n.org>
17709
17710 * coding.c (DECODE_DESIGNATION): Set chars_96 to -1 instead of
17711 goto invalid_code.
17712 (decode_coding_iso_2022): Fix handling of invalid designation.
17713
17714 * fileio.c (Finsert_file_contents): Be sure to call unbind_to
17715 after calling code_conversion_save.
17716
177172008-02-01 Kenichi Handa <handa@m17n.org>
17718
17719 * xdisp.c (handle_auto_composed_prop): Fix Lisp_Object/int mixup.
17720
17721 * print.c (print_prune_string_charset): Fix Lisp_Object/int mixup.
17722
17723 * fontset.c: Include "intervals.h".
17724 (fontset_face): Fix comparing of Lisp_Objects.
17725 (free_face_fontset, new_fontset_from_font_name): Fix
17726 Lisp_Object/int mixup.
17727
17728 * editfns.c (Ftranslate_region_internal): Fix Lisp_Object/int mixup.
17729
17730 * coding.c: Add many prototypes for static functions.
17731 (get_translation_table): Allow max_lookup to be NULL.
17732 (decode_coding, Ffind_coding_systems_region_internal)
17733 (Funencodable_char_position, Fcheck_coding_systems_region): Call
17734 get_translation_table with max_lookup NULL.
17735
177362008-02-01 Kenichi Handa <handa@m17n.org>
17737
17738 * coding.c (get_translation_table): Declare it as Lisp_Object.
17739 (LOOKUP_TRANSLATION_TABLE): New macro.
17740 (produce_chars, consume_chars): Use LOOKUP_TRANSLATION_TABLE
17741 instead of CHAR_TABLE_REF.
17742
177432008-02-01 Kenichi Handa <handa@m17n.org>
17744
17745 * coding.c (MAX_ANNOTATION_LENGTH): Adjust for the change of
17746 annotation data format.
17747 (ADD_ANNOTATION_DATA, ADD_COMPOSITION_DATA, ADD_CHARSET_DATA):
17748 Change arguments FROM and TO to single argument NCHARS. Change caller.
17749 (decode_coding_utf_8, decode_coding_utf_16, decode_coding_emacs_mule)
17750 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
17751 (decode_coding_ccl, decode_coding_charset): Pay attention to
17752 coding->charbuf_used.
17753 (get_translation): New function.
17754 (produce_chars): New arguments translation_table and last_block.
17755 Translate characters here. Return number of carryover chars.
17756 Change caller.
17757 (produce_composition): New argument pos. Change caller.
17758 Adjust for the change of annotation data format.
17759 (produce_charset, produce_annotation): Likewise.
17760 (decode_coding, encode_coding): Don't call translate_chars.
17761 (consume_chars): New arg translation_table. Change caller.
17762 (translate_chars): Delete.
17763 (syms_of_coding): Make translation-table's number of extra slots 2.
17764
177652008-02-01 Kenichi Handa <handa@m17n.org>
17766
17767 * search.c (simple_search): Fix setting this_pos_byte in backward
17768 search.
17769
17770 * coding.c (detect_coding_emacs_mule): Fix counting of encoded
17771 byte sequence.
17772 (detect_coding_ccl): Fix setting of the variable valids.
17773
177742008-02-01 Kenichi Handa <handa@m17n.org>
17775
17776 * xterm.c (x_list_fonts): Fix the detection of an auto-scaled font.
17777
17778 * coding.c (decode_coding_utf_16): Fix handling of surrogate pair.
17779
17780 * editfns.c (Ftranslate_region_internal): Rename from
17781 Ftranslate_region. Accept a char-table in TABLE.
17782 (syms_of_editfns): Defsubr Stranslate_region_internal.
17783
17784 * xfaces.c (set_lface_from_font_name): If a font is specified for
17785 a frame, generate a fontset from the font.
17786 (build_scalable_font_name): If the scalable font is requested for
17787 a specific size, don't change that size.
17788 (try_font_list): Try a scalable font also in the case that a
17789 pattern string is specified.
17790
177912008-02-01 Kenichi Handa <handa@m17n.org>
17792
17793 * xfaces.c (Fface_font): New optional arg CHARACTER.
17794
177952008-02-01 Kenichi Handa <handa@m17n.org>
17796
17797 * charset.h (CHARSET_OFFSET): New macro.
17798
177992008-02-01 Kenichi Handa <handa@m17n.org>
17800
17801 * xterm.c (x_get_font_repertory): Fix for non-Unicode-bmp charset.
17802
17803 * fontset.c (fontset_face): Handle the case that repertory is a
17804 char-table.
17805 (find_font_encoding): Return nil for unknown encoding.
17806 (Fset_fontset_font): Ignore a font of unknown encoding.
17807
178082008-02-01 Kenichi Handa <handa@m17n.org>
17809
17810 * keymap.c (describe_vector): Handle default value of a char table.
17811
17812 * fontset.c (fontset_face): Handle fallback fonts correctly.
17813 (Ffontset_info): Return infomation about fallback fonts.
17814
178152008-02-01 Kenichi Handa <handa@m17n.org>
17816
17817 * fontset.c (FONTSET_DEFAULT): New macro.
17818 (FONTSET_ADD, fontset_add): Handle the case that range is nil.
17819 (Fset_fontset_font): Change the 2nd arg name to TARGET, and handle
17820 the case that it is nil.
17821 (dump_fontset): Call FONTSET_DEFAULT, not FONTSET_FALLBACK.
17822 (syms_of_fontset): Set char-table-extra-slots property of fontset to 9.
17823
17824 * charset.h (CHAR_CHARSET_P): Fix for the case that the method is
17825 subset or superset.
17826
178272008-02-01 Kenichi Handa <handa@m17n.org>
17828
17829 * emacs.c (main): Call init_charset after syms_of_XXX.
17830
17831 * charset.c (Vcharset_map_directory): Delete.
17832 (Vcharset_map_path): New variable.
17833 (load_charset_map_from_file): Use Vcharset_map_path instead.
17834 (init_charset): Initialize Vcharset_map_path.
17835 (syms_of_charset): Delete declaration of "charset-map-directory",
17836 add declaration of "charset-map-path".
17837
178382008-02-01 Kenichi Handa <handa@m17n.org>
17839
17840 * fns.c (string_char_to_byte, string_byte_to_char): Optimize for
17841 ASCII only string.
17842
17843 * fileio.c (Finsert_file_contents): Avoid detecting a code twice.
17844
17845 * coding.c (detect_coding_iso_2022): Fix handling of SS2 and SS3.
17846 (detect_coding, detect_coding_system): Treat '\0' as normal ASCII byte.
17847
178482008-02-01 Kenichi Handa <handa@m17n.org>
17849
17850 * coding.h (SJIS_TO_JIS2, JIS_TO_SJIS2): New macros.
17851
17852 * coding.c (QCmnemonic, QCdefalut_char)
17853 (QCdecode_translation_table, QCencode_translation_table)
17854 (QCpost_read_conversion, QCpre_write_conversion): New variables.
17855 (get_translation_table): Return a list of translation tables if
17856 necessary.
17857 (decode_coding): Call get_translation_table with ENCODEP 0.
17858 (char_encodable_p): If translation_table is non-nil, always call
17859 translate_char.
17860 (Fdefine_coding_system_internal): Accept list of translation
17861 tables as :encode-translation-table and :decode-translation-table.
17862 (Fcoding_system_put): New function.
17863 (syms_of_coding): Declare new symbols. Defsubr
17864 Scoding_system_put.
17865 (decode_coding_sjis, encode_coding_sjis): Handle 4th charset,
17866 typically JISX0212.
17867
17868 * charset.c (map_charset_chars): Fix arg to map_charset_chars in
17869 when the charset is superset type.
17870
17871 * character.c (translate_char): Accept list of translation tables.
17872
178732008-02-01 Kenichi Handa <handa@m17n.org>
17874
17875 * coding.h (enum coding_attr_index): New member coding_attr_trans_tbl.
17876 (CODING_ATTR_TRANS_TBL): New macro.
17877
17878 * coding.c (get_translation_table): New function.
17879 (translate_chars): Fix the bug of skipping annotation data.
17880 (decode_coding, encode_coding): Utilize get_translation_table.
17881 (char_encodable_p, Funencodable_char_position): Translate char if
17882 necessary.
17883 (Ffind_coding_systems_region_internal)
17884 (Fcheck_coding_systems_region): Setup translation table for encode
17885 in a coding system attribute vector in advance.
17886 (Fdefine_coding_system_internal): Allow a symbol as translation
17887 table. For shift-jis type coding system, allow 4th charset.
17888
178892008-02-01 Kenichi Handa <handa@m17n.org>
17890
17891 * coding.c (decode_coding_sjis): Check the first byte rigidly.
17892
17893 * xdisp.c (get_next_display_element): Pass -1 as POS to
17894 FACE_FOR_CHAR if displaying a C-string.
17895
178962008-02-01 Kenichi Handa <handa@m17n.org>
17897
17898 * composite.c (get_composition_id): Handle xoff and yoff in a
17899 composition rule.
17900
17901 * composite.h (COMPOSITION_DECODE_RULE): New arg xoff and yoff.
17902 (struct composition): New member lbearing and rbearing.
17903
17904 * xdisp.c (move_it_to): Optimize for the case (op & MOVE_TO_Y).
17905 (x_get_glyph_overhangs): Handle a composition glyph.
17906 (x_produce_glyphs): Setup lbearing and rbreaing for a composition glyph.
17907
17908 * xterm.c (x_compute_glyph_string_overhangs): Handle also a
17909 composition glyph.
17910
179112008-02-01 Kenichi Handa <handa@m17n.org>
17912
17913 * print.c: Include charset.h.
17914 (Vprint_charset_text_property): New variable.
17915 (Qdefault): Extern it.
17916 (PRINT_STRING_NON_CHARSET_FOUND)
17917 (PRINT_STRING_UNSAFE_CHARSET_FOUND): New macros.
17918 (print_check_string_result): New variable.
17919 (print_check_string_charset_prop): New function.
17920 (print_prune_charset_plist): New variable.
17921 (print_prune_string_charset): New function.
17922 (print_object): Call print_prune_string_charset if
17923 Vprint_charset_text_property is not t.
17924 (print_interval): Print nothing if interval->plist is nil.
17925 (syms_of_print): Declare Vprint_charset_text_property as a lisp
17926 variable. Init and staticpro print_prune_charset_plist.
17927
179282008-02-01 Kenichi Handa <handa@m17n.org>
17929
17930 * fontset.c (new_fontset_from_font_name): Use the specified font
17931 for all characters in the new fontset.
17932
17933 * macterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
17934 OBJECT args.
17935
17936 * xdisp.c (x_produce_glyphs): Call FACE_FOR_CHAR with POS and
17937 OBJECT args for composition too.
17938
17939 * w32term.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
17940 OBJECT args.
17941
179422008-02-01 Kenichi Handa <handa@m17n.org>
17943
17944 * dispextern.h (FACE_FOR_CHAR): New args POS and OBJECT.
17945
17946 * fontset.c (reorder_font_vector): Adjust for the change of
17947 FONT_DEF format.
17948 (fontset_face): New arg id. Change caller.
17949 (face_for_char): New args pos and object.
17950 (make_fontset_for_ascii_face): Adjust for the change of FONT_DEF format.
17951 (fs_query_fontset): Check NAME by Fassoc too.
17952 (Fset_fontset_font): Allow non-XLFD font name.
17953 (Ffontset_info): Adjust for the change of FONT_DEF format.
17954
17955 * fontset.h (face_for_char): Adjust prototype.
17956
17957 * xdisp.c (face_before_or_after_it_pos, get_next_display_element)
17958 (append_space, extend_face_to_end_of_line)
17959 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
17960 (x_produce_glyphs): Call FACE_FOR_CHAR with POS and OBJECT args.
17961
17962 * xfaces.c (compute_char_face): Call FACE_FOR_CHAR with
17963 POS and OBJECT args.
17964
17965 * xterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with
17966 POS and OBJECT args.
17967
179682008-02-01 Jason Rumney <jasonr@gnu.org>
17969
17970 * w32select.c (Fw32_set_clipboard_data): Avoid potential realloc
17971 of GlobalAlloc'ed memory.
17972
179732008-02-01 Kenichi Handa <handa@m17n.org>
17974
17975 * ccl.c (Fccl_execute_on_string): Fix the condition of loop.
17976
17977 * charset.h (charset_table_used): Delete extern.
17978
17979 * charset.c (charset_table_used): Make it static.
17980 (map_charset_chars): Fix args to c_function with.
17981
17982 * chartab.c (map_sub_char_table_for_charset): Fix args to
17983 c_function with.
17984
17985 * coding.h (enum coding_result_code): Delete
17986 CODING_RESULT_INSUFFICIENT_CMP, add CODING_RESULT_INVALID_SRC.
17987
17988 * coding.c (Qinsufficient_source, Qinconsistent_eol)
17989 (Qinvalid_source, Qinterrupted, Qinsufficient_memory): New variables.
17990 (Vlast_code_conversion_error): New variables.
17991 (syms_of_coding): DEFSYM or DEFVAR_LISP them.
17992 (ONE_MORE_BYTE): Record error if any instead of signaling an
17993 error. If non-ASCII multibyte char is found, return the negative
17994 value of the code. All callers changed to check it.
17995 (ONE_MORE_BYTE_NO_CHECK): Likewise.
17996 (record_conversion_result): New function. Change all codes setting
17997 coding->result to call this function.
17998 (detect_coding_utf_8, decode_coding_utf_8)
17999 (detect_coding_emacs_mule, detect_coding_sji, detect_coding_big5):
18000 Don't use the local variable incomplete.
18001 (emacs_mule_char): Change the second arg to `const'.
18002 (decode_coding): Fix of flushing out unprocessed data.
18003 (make_conversion_work_buffer): Fix making of a work buffer.
18004 (decode_coding_object): Return coding->dst_object.
18005
18006 * fontset.c (set_fontset_font): Fix args.
18007
18008 * lisp.h (CHARACTERBITS): Define as 22.
18009
18010 * process.c (send_process): Be sure to set coding->src_multibyte.
18011
18012 * xdisp.c (handle_auto_composed_prop): Fix setting of limit.
18013
180142008-02-01 Kenichi Handa <handa@m17n.org>
18015
18016 * xdisp.c (handle_auto_composed_prop): Give limit to
18017 Fnext_single_char_property_change.
18018
180192008-02-01 Kenichi Handa <handa@m17n.org>
18020
18021 * composite.c (syms_of_composite): Don't make the composition hash
18022 table weak.
18023
18024 * fontset.c (Fset_fontset_font): Fix docstring.
18025
18026 * lisp.h (detect_coding_system): Adjust prototype.
18027
18028 * fileio.c (kill_workbuf_unwind): Delete this function.
18029 (Finsert_file_contents): Adjust the call of detect_coding_system.
18030 Get conversion_buffer by code_conversion_save. Use the macro
18031 CODING_MAY_REQUIRE_DECODING. After decoding, update
18032 coding_system.
18033
18034 * coding.h (make_conversion_work_buffer): Delete extern.
18035 (code_conversion_save): Extern it.
18036
18037 * coding.c (enum iso_code_class_type): Delete ISO_carriage_return.
18038 (CODING_GET_INFO): Delete argument eol_type. Change callers.
18039 (decode_coding_utf_8): Don't do eol converion.
18040 (detect_coding_utf_16): Check coding->src_chars, not
18041 coding->src_bytes. Add heuristics for those that have no signature.
18042 (decode_coding_emacs_mule, decode_coding_iso_2022)
18043 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
18044 Don't do eol converion.
18045 (adjust_coding_eol_type): Return a new coding system.
18046 (detect_coding): Don't detect eol. Fix for utf-16 detection.
18047 (decode_eol): In case of CRLF->LF conversion, use del_range_2 on
18048 each change.
18049 (decode_coding): Pay attention to undo_list. Do eol conversion for
18050 all types of coding-systems (if necessary).
18051 (Vcode_conversion_work_buf_list): Delete it.
18052 (Vcode_conversion_reused_workbuf): Rename from
18053 Vcode_conversion_reused_work_buf.
18054 (Vcode_conversion_workbuf_name): New variable.
18055 (reused_workbuf_in_use): New variable.
18056 (make_conversion_work_buffer): Delete the arg DEPTH.
18057 (code_conversion_restore): Change argument to cons.
18058 (code_conversion_save): Delete the argument BUFFER. Change callers.
18059 (detect_coding_system): New argument src_chars. Change callers.
18060 Fix for utf-16 detection.
18061 (init_coding_once): Don't use ISO_carriage_return.
18062 (syms_of_coding): Initialize Vcode_conversion_workbuf_name and
18063 reused_workbuf_in_use.
18064
180652008-02-01 Kenichi Handa <handa@m17n.org>
18066
18067 * keymap.c (store_in_keymap): Pay attention to the case that idx
18068 is a cons specifying a character range.
18069
180702008-02-01 Kenichi Handa <handa@m17n.org>
18071
18072 * xdisp.c (handle_auto_composed_prop): Fix the case of returning
18073 HANDLED_RECOMPUTE_PROPS.
18074
18075 * coding.c (Fdefine_coding_system_internal): Fix checking of
18076 ascii compatibility.
18077
180782008-02-01 Kenichi Handa <handa@m17n.org>
18079
18080 * charset.c (find_charsets_in_text): Delete unused locale variable.
18081 (Fset_charset_priority): Update Vemacs_mule_charset_list too.
18082
18083 * coding.c (encode_coding_emacs_mule): Emit bytes with MSB.
18084 Resync charset_list to Vemacs_mule_charset_list.
18085
18086 * keymap.c (store_in_keymap): Pay attention to the case that idx
18087 is a cons specifying a character range.
18088
180892008-02-01 Kenichi Handa <handa@m17n.org>
18090
18091 * composite.c (update_compositions): Bind inhibit-read-only, etc
18092 to t before calling remove-list-of-text-properties.
18093
18094 * print.c (print_object): Always print ASCII chars as is.
18095
180962008-02-01 Kenichi Handa <handa@m17n.org>
18097
18098 * keymap.c (Fdefine_key): Fix handling of Lucid style event type list.
18099
18100 * fns.c (Fmapconcat, Fmapcar, Fmapc): Signal an error if SEQUENCE
18101 is a char table.
18102
181032008-02-01 Kenichi Handa <handa@m17n.org>
18104
18105 * syntax.c (skip_chars): Be sure to alloca char_ranges when necessary.
18106
181072008-02-01 Kenichi Handa <handa@m17n.org>
18108
18109 * xfaces.c (set_lface_from_font_name): Fix for the case that
18110 FONTNAME is not fontset name.
18111
181122008-02-01 Kenichi Handa <handa@m17n.org>
18113
18114 * fns.c (base64_encode_1): Fix previous change.
18115
181162008-02-01 Kenichi Handa <handa@m17n.org>
18117
18118 * fontset.c (set_fontset_font): New function.
18119 (Fset_fontset_font): If a font is specified for a charset, use
18120 map_charset_chars to store the font spec in a fontset.
18121
181222008-02-01 Kenichi Handa <handa@m17n.org>
18123
18124 * fontset.c (fontset_face): Create a fallback fontset on demand.
18125 (make_fontset): Don't create a fallback fontset here.
18126 (free_face_fontset): Free a fallback fontset (if any) too.
18127 (n_auto_fontsets): Delete this variable.
18128 (auto_fontset_alist): New variable.
18129 (new_fontset_from_font_name): Check auto_fontset_alist.
18130 (dump_fontset) [FONTSET_DEBUG]: Fully re-written.
18131 (Ffontset_list_all) [FONTSET_DEBUG]: New function.
18132 (syms_of_fontset): Initialize and staticpro auto_fontset_alist.
18133 Defsubr Sfontset_list_all.
18134
181352008-02-01 Kenichi Handa <handa@m17n.org>
18136
18137 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
18138
181392008-02-01 Kenichi Handa <handa@m17n.org>
18140
18141 * fontset.c (Fnew_fontset): Check NAME more rigidly.
18142
181432008-02-01 Kenichi Handa <handa@m17n.org>
18144
18145 * editfns.c (Fgoto_char): Fix docstring.
18146
181472008-02-01 Kenichi Handa <handa@m17n.org>
18148
18149 * insdel.c (insert_from_gap): Adjust intervals correctly.
18150
181512008-02-01 Jason Rumney <jasonr@gnu.org>
18152
18153 * w32term.c (GLYPHSET, WCRANGE): Define if system headers don't.
18154 (pfnGetFontUnicodeRanges): New dynamically loaded function.
18155 (w32_initialize): Try to load it.
18156 (x_get_font_repertory): Use it if available.
18157 (w32_encode_char): Add shortcut for unicode output.
18158
18159 * w32fns.c (w32_load_system_font): Default charset to -1.
18160 (x_to_w32_charset): Match all fonts for unicode.
18161 (w32_to_x_charset): New parameter matching. Don't return partial
18162 or wildcard charsets.
18163 (w32_to_all_x_charsets): Don't return partial or wildcard charsets.
18164 (w32_codepage_for_font): Return CP_UNICODE for unicode.
18165 (w32_to_x_font): Match charset to real charset.
18166 (enum_font_cb2): Always list unicode versions.
18167
18168 * makefile.w32-in (temacs): Increase EMHEAP.
18169
181702008-02-01 Jason Rumney <jasonr@gnu.org>
18171
18172 * w32term.c (w32_encode_char): New charset parameter.
18173 font_info.encoding becomes encoding_type.
18174 (x_get_font_repertory): New function. Warning: stub only!
18175 (x_new_font): Return quickly if font already set.
18176 (x_new_fontset): fontsetname parameter is Lisp_Object.
18177 Use new fs_query_fontset. Try new_fontset_from_font_name.
18178 Use fontset_name for return value.
18179
18180 * w32term.h: Declare x_get_font_repertory.
18181
18182 * w32select.c (Fw32_set_clipboard_data): Use string_x_string_p in
18183 place of find_charset_in_text. Use encode_coding_object in place
18184 of encode_coding.
18185 (Fw32_get_clipboard_data): Use decode_coding_c_string in place of
18186 decode_coding.
18187
18188 * w32fns.c (Fx_create_frame, x_create_tip_frame): Use new version
18189 of x_new_fontset.
18190 (w32_load_system_font): Initialize charset as unicode.
18191 font_info.encoding becomes encoding_type.
18192 (w32_to_x_font): Use decode_coding_c_string in place of decode_coding.
18193 (x_to_w32_font): Use encode_coding_object in place of encode_coding.
18194 (syms_of_w32fns): Set get_font_repertory_func.
18195
18196 * w32console.c: Include character.h. Use terminal_encode_buffer
18197 from term.c.
18198 (write_glyphs): Use new version of encode_terminal_code. Use
18199 encode_coding_object in place of encode_coding.
18200
18201 * w32bdf.c (w32_load_bdf_font): Clear font_info before filling.
18202 encoding becomes encoding_type.
18203
18204 * term.c (terminal_encode_buffer): Make externally visible.
18205
18206 * makefile.w32-in: Add character.h dependancies.
18207 (character.o, chartab.o): New targets.
18208
182092008-02-01 Kenichi Handa <handa@m17n.org>
18210
18211 * fileio.c (Finsert_file_contents) [DOS_NT]: Use the macro
18212 CODING_ID_EOL_TYPE.
18213
182142008-02-01 Andreas Schwab <schwab@suse.de>
18215
18216 * coding.c (produce_chars): Revert last change.
18217
182182008-02-01 Kenichi Handa <handa@m17n.org>
18219
18220 * charset.h (charset_unicode): Extern it.
18221
18222 * charset.c (string_xstring_p): Check by (C >= 0x100).
18223 (find_charsets_in_text): Change format of the arc CHARSETS. New
18224 arg MULTIBYTE.
18225 (Ffind_charset_region, Ffind_charset_string): Adjust for the
18226 change of find_charsets_in_text.
18227 (Fsplit_char): Fix doc. Never return unknown.
18228
18229 * chartab.c (char_table_translate): Use CHARACTERP, not INTEGERP.
18230
18231 * coding.c (Fdefine_coding_system_alias): Update
18232 Vcoding_system_list.
18233
18234 * fontset.c (load_font_get_repertory): Pay attention to the case
18235 that ENCODING of a font is specified by a char-table.
18236
18237 * xterm.c (x_get_font_repertory): Handle the case that the
18238 encoding of font is other than Unicode.
18239
182402008-02-01 Kenichi Handa <handa@m17n.org>
18241
18242 * term.c (encode_terminal_code): Don't handle glyph-table. Check
18243 if a character is encodable by the terminal coding system. If
18244 not, produces proper number of `?'s. Update
18245 terminal_encode_buffer and terminal_encode_buf_size if necessary.
18246 (produce_glyphs): Check by CHAR_BYTE8_P, not SINGLE_BYTE_CHAR_P.
18247
182482008-02-01 Kenichi Handa <handa@m17n.org>
18249
18250 * term.c (terminal_encode_buffer, terminal_encode_buf_size): New
18251 variables.
18252 (encode_terminal_code): Change argument. Encode multiple
18253 characters at once. Store the result of encoding in
18254 terminal_encode_buffer.
18255 (write_glyphs, insert_glyphs): Adjust for the change of
18256 encode_terminal_code.
18257 (term_init): Initialize terminal_encode_buffer and
18258 terminal_encode_buf_size.
18259
18260 * coding.c (consume_chars): If coding->src_object is nil, don't
18261 check annotation.
18262
182632008-02-01 Kenichi Handa <handa@m17n.org>
18264
18265 * character.c (char_string): Use ASCII_CHAR_P instead of
18266 SINGLE_BYTE_CHAR_P.
18267
182682008-02-01 Kenichi Handa <handa@m17n.org>
18269
18270 * xdisp.c (handle_auto_composed_prop): Check if the last
18271 characters of auto-composed region is newly composed with the
18272 following characters.
18273 (handle_composition_prop): Fix checking of point being inside
18274 composition.
18275
182762008-02-01 Kenichi Handa <handa@m17n.org>
18277
18278 * fns.c (concat): Don't change multibyteness of the result by
18279 concatenating an 8-bit character.
18280
18281 * data.c (Faset): Check newelt by CHECK_CHARACTER. Don't change
18282 multibyteness of the result when newelt is an 8-bit character.
18283
182842008-02-01 Dave Love <fx@gnu.org>
18285
18286 * xmenu.c (find_and_call_menu_selection): Make menu_bar_items_used
18287 EMACS_INT.
18288
18289 * xfns.c (DefaultDepthOfScreen, x_encode_text): Remove unused vars.
18290
18291 * xfaces.c (face_numeric_value): Declare dim size_t.
18292 (Finternal_lisp_face_equal_p): Remove unused f.
18293
18294 * xdisp.c (BUILD_CHAR_GLYPH_STRINGS, display_and_set_cursor)
18295 (MATRIX_ROW): Remove unused vars.
18296 (draw_glyphs, x_insert_glyphs, fast_find_position)
18297 (fast_find_position, fast_find_string_pos): Use EMACS_INT for
18298 byte/char counts.
18299
18300 * regex.c (regex_compile): Remove unused var.
18301
18302 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
18303
18304 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
18305 (Faccessible_keymaps, where_is_internal): Remove unused vars.
18306
18307 * keyboard.c (cancel_hourglass_unwind): Return Qnil.
18308
18309 * frame.c (frame_name_fnn_p): Make len EMACS_INT.
18310
18311 * fileio.c (Fwrite_region): Remove unused var.
18312
18313 * dispnew.c (adjust_frame_glyphs_for_frame_redisplay)
18314 (adjust_frame_glyphs_for_window_redisplay): Remove unused ch_dim.
18315
18316 * composite.c (Fremove_list_of_text_properties): Declare.
18317
18318 * coding.c (inhibit_pre_post_conversion): Remove (unused).
18319 (alloc_destination, produce_chars): Use EMACS_INT for byte/char counts.
18320 (coding_inherit_eol_type): Remove unused attrs.
18321 (detect_coding): Cast arg of detect_eol.
18322
18323 * charset.c (syms_of_charset): Remove unused var p.
18324 (find_charsets_in_text, Ffind_charset_region): Use EMACS_INT for
18325 byte/char counts.
18326
18327 * casetab.c (set_case_table): Remove unused var.
18328
18329 * window.c (Fdisplay_buffer, Fframe_selected_window): Remove
18330 unused vars.
18331
183322008-02-01 Dave Love <fx@gnu.org>
18333
18334 * xterm.c (x_bitmap_mask): Declare.
18335
183362008-02-01 Dave Love <fx@gnu.org>
18337
18338 * xterm.c (x_term_init): Fix type error.
18339
18340 * lisp.h: Add Funibyte_char_to_multibyte.
18341
18342 * coding.c (Fread_coding_system): Fix arg of XSETSTRING.
18343 (Fset_coding_system_priority): Doc fix.
18344
18345 * ccl.c (ccl_driver): Fix arg of CHARACTERP.
18346
18347 * indent.c (check_composition): Make start and end EMACS_INT.
18348
18349 * character.c (lisp_string_width): Make ignore and end EMACS_INT.
18350
18351 * xdisp.c (handle_composition_prop, check_point_in_composition):
18352 Make buffer positions EMACS_INT.
18353
18354 * composite.c (find_composition, run_composition_function)
18355 (update_compositions, Ffind_composition_internal): Make buffer
18356 positions EMACS_INT.
18357
18358 * composite.h (find_composition, update_compositions): Make
18359 position args EMACS_INT.
18360
18361 * keyboard.c (adjust_point_for_property): Make beg and end EMACS_INT.
18362
18363 * intervals.c (get_property_and_range):
18364 * intervals.h (get_property_and_range): Make start and end EMACS_INT.
18365
18366 * unexalpha.c: Don't include varargs.h.
18367
183682008-02-01 Dave Love <fx@gnu.org>
18369
18370 * coding.h (ENCODE_UTF_8): New.
18371
18372 * Makefile.in (gtkutil.o): Depend on coding.h.
18373
18374 * coding.c (Fset_coding_system_priority): Doc fix.
18375
183762008-02-01 Kenichi Handa <handa@m17n.org>
18377
18378 * fileio.c (Finsert_file_contents): Call setup_coding_system in
18379 the case of auto saving.
18380
183812008-02-01 Andreas Schwab <schwab@suse.de>
18382
18383 * chartab.c (map_char_table, map_char_table_for_charset): Protect
18384 `range' from GC.
18385
183862008-02-01 Kenichi Handa <handa@m17n.org>
18387
18388 * coding.c (decode_coding_sjis): Check bytes more rigidly.
18389
183902008-02-01 Kenichi Handa <handa@m17n.org>
18391
18392 * fileio.c (choose_write_coding_system): Return a decided coding system.
18393 (Fwrite_region): Set Vlast_coding_system_used to the return value
18394 of choose_write_coding_system.
18395
183962008-02-01 Kenichi Handa <handa@m17n.org>
18397
18398 * charset.c (Fset_charset_priority): Pay attention to duplicated
18399 arguments.
18400
18401 * coding.c (QCcategory): New variable.
18402 (syms_of_coding): Defsym it. Set all elements of
18403 Vcoding_category_table and their symbol values.
18404 (Fset_coding_system_priority): Doc fix. Update symbol qvalues of
18405 coding-category-XXX, and coding-category-list.
18406 (Fdefine_coding_system_internal): Add category in the plist.
18407
184082008-02-01 Kenichi Handa <handa@m17n.org>
18409
18410 * callproc.c (Fcall_process): Handle carryover correctly.
18411
18412 * coding.c (decode_coding_iso_2022): Fix handling of invalid bytes.
18413 (raw_text_coding_system): Check NILP (coding_system).
18414 (coding_inherit_eol_type): Check NILP (coding_system) and
18415 NILP (parent).
18416 (consume_chars): Fix for the case of raw-text.
18417
18418 * process.c (read_process_output): Handle carryover correctly.
18419
184202008-02-01 Dave Love <fx@gnu.org>
18421
18422 * regex.c (re_search_2): Fix last change.
18423
184242008-02-01 Kenichi Handa <handa@m17n.org>
18425
18426 * regex.c (GET_CHAR_BEFORE_2): Check multibyte, not
18427 target_multibyte. Even in a unibyte case, return a converted
18428 multibyte char.
18429 (GET_CHAR_AFTER): New macro.
18430 (PATFETCH): Translate via multibyte char.
18431 (HANDLE_UNIBYTE_RANGE): Delete this macro.
18432 (SETUP_MULTIBYTE_RANGE): New macro.
18433 (regex_compile): Setup compiled code so that its multibyteness
18434 matches that of a target. Fix the handling of "[X-YZ]" using
18435 SETUP_MULTIBYTE_RANGE.
18436 (analyse_first) <charset>: For filling fastmap for all multibyte
18437 characters, don't check by BASE_LEADING_CODE_P.
18438 (re_search_2): Don't check RE_TARGET_MULTIBYTE_P (bufp). It is
18439 the same as RE_MULTIBYTE_P (bufp) now.
18440 (mutually_exclusive_p): Check by (! multibyte || IS_REAL_ASCII (c)).
18441 (TARGET_CHAR_AND_LENGTH): Delete this macro.
18442 (TRANSLATE_VIA_MULTIBYTE): New macro.
18443 (re_match_2_internal): Don't check RE_TARGET_MULTIBYTE_P (bufp).
18444 It is the same as RE_MULTIBYTE_P (bufp) now.
18445 <exactn>: Translate via multibyte.
18446 <anychar>: Fetch a character by RE_STRING_CHAR_AND_LENGTH. Don't
18447 translate it.
18448 <charset, charset_not>: Fetch a character by
18449 RE_STRING_CHAR_AND_LENGTH. Translate via multibyte.
18450 <duplicate>: Call bcmp_translate with the last arg `multibyte'.
18451 <wordbound, notwordbound, wordbeg, wordend, syntaxspec,
18452 notsyntaxspec, categoryspec, notcategoryspec> Fetch a character
18453 by GET_CHAR_AFTER.
18454 (bcmp_translate): Likewise.
18455
18456 * search.c (compile_pattern): Check the member target_multibyte,
18457 not the member multibyte of buf.
18458
18459 * lread.c (read1): While reading a string, set force_singlebyte
18460 and force_multibyte correctly.
18461
18462 * charset.c (Fset_unibyte_charset, init_charset_once): Fix setting
18463 up of unibyte_to_multibyte_table.
18464
184652008-02-01 Kenichi Handa <handa@m17n.org>
18466
18467 * coding.c (setup_coding_system): If coding has
18468 post-read-conversion or pre-write-conversion, set
18469 CODING_REQUIRE_DECODING_MASK and CODING_REQUIRE_ENCODING_MASK
18470 respectively.
18471 (decode_coding_gap): Run post-read-conversion if any.
18472
18473 * fileio.c (Finsert_file_contents): Even if we read into a
18474 unibyte buffer, check if we must decode the result or not.
18475
184762008-02-01 Kenichi Handa <handa@m17n.org>
18477
18478 * coding.c (make_conversion_work_buffer): Change the work buffer
18479 name to the same one as that of Emacs 21.
18480
184812008-02-01 Kenichi Handa <handa@m17n.org>
18482
18483 * coding.h (make_conversion_work_buffer): Adjust prototype.
18484 (code_conversion_restore): Don't extern it.
18485
18486 * coding.c (detected_mask): Delete unused variable.
18487 (decode_coding_iso_2022): Pay attention to the byte sequence of
18488 CTEXT extended segment, and retain those bytes as is.
18489 (decode_coding_ccl): Delete unused variable `valids'.
18490 (setup_coding_system): Delete unused variable `category'.
18491 (consume_chars): Delete unused variable `category'. Make it work
18492 for non-multibyte case.
18493 (make_conversion_work_buffer): Change argument.
18494 (saved_coding): Delete unused variable.
18495 (code_conversion_restore): Don't check saved_coding->destination.
18496 (code_conversion_save): New function.
18497 (decode_coding_gap, encode_coding_gap): Call code_conversion_save
18498 instead of record_unwind_protect.
18499 (decode_coding_object, encode_coding_object): Likewise. Recover PT.
18500 (detect_coding_system): Delete unused variable `mask'.
18501 (Fdefine_coding_system_internal): Delete unused variable id.
18502
18503 * fileio.c (kill_workbuf_unwind): New function.
18504 (Finsert_file_contents): On replacing, call
18505 make_conversion_work_buffer with correct args, and call
18506 record_unwind_protect with the first arg kill_workbuf_unwind.
18507
18508 * lisp.h (Fgenerate_new_buffer_name): EXFUN it.
18509
185102008-02-01 Kenichi Handa <handa@m17n.org>
18511
18512 * fontset.c (BASE_FONTSET_P): Check FONTSET_BASE, not FONTSET_NAME.
18513 (fontset_add): Fix for the case that TO is less than TO1.
18514 (Ffontset_info): Don't use fallback fontset on checking the
18515 default fontset.
18516 (dump_fontset): New function for debugging.
18517
18518 * coding.c (Fdefine_coding_system_internal): Fix for the case that
18519 coding_type is Qcharset.
18520
185212008-02-01 Kenichi Handa <handa@m17n.org>
18522
18523 * chartab.c (map_sub_char_table): New argument DEFAULT_VAL.
18524 (map_char_table): Don't inherit the value from the parent on
18525 initializing VAL. Adjust for the above change.
18526
185272008-02-01 Kenichi Handa <handa@m17n.org>
18528
18529 * coding.c (Qsignature, Qendian): Delete these variables.
18530 (syms_of_coding): Don't initialize them.
18531 (CATEGORY_MASK_UTF_16_AUTO): New macro.
18532 (detect_coding_utf_16): Add CATEGORY_MASK_UTF_16_AUTO in
18533 detect_info->found.
18534 (decode_coding_utf_16): Don't detect BOM here.
18535 (encode_coding_utf_16): Produce BOM if CODING_UTF_16_BOM (coding)
18536 is NOT utf_16_without_bom.
18537 (setup_coding_system): For a coding system of type utf-16, check
18538 if the attribute :endian is Qbig or not (not nil or not), and set
18539 CODING_REQUIRE_DETECTION_MASK if BOM detection is required.
18540 (detect_coding): If coding type is utf-16 and BOM detection is
18541 required, detect it.
18542 (Fdefine_coding_system_internal): For a coding system of type
18543 utf-16, check if the attribute :endian is Qbig or not (not nil or not).
18544
185452008-02-01 Kenichi Handa <handa@m17n.org>
18546
18547 * coding.c (coding_set_source): Fix for the case that the current
18548 buffer is different from coding->src_object.
18549 (decode_coding_object): Don't use the conversion work buffer if
18550 DST_OBJECT is a buffer.
18551
185522008-02-01 Dave Love <fx@gnu.org>
18553
18554 * lread.c (read_emacs_mule_char) [len==2]: Index
18555 emacs_mule_charset correctly.
18556
185572008-02-01 Dave Love <fx@gnu.org>
18558
18559 * coding.c (Qbig5, Vbig5_coding_system, CATEGORY_MASK_BIG5)
18560 (detect_coding_big5, decode_coding_big5, encode_coding_big5)
18561 (Fdecode_big5_char, Fencode_big5_char): Delete. (Big5 no longer
18562 treated specially.)
18563 (setup_coding_system, coding_category, CATEGORY_MASK_ANY)
18564 (detected_mask): Remove Big5 bits.
18565
185662008-02-01 Kenichi Handa <handa@m17n.org>
18567
18568 The following changes are to make the font rescaling facility
18569 compatible with Emacs 21.
18570
18571 * xfaces.c (Vface_font_rescale_alist): Rename from
18572 Vface_resizing_fonts.
18573 (struct font_name): Rename member resizing_ratio to rescale_ratio.
18574 (font_rescale_ratio): Rename from font_resizing_ratio.
18575 (split_font_name): Set font->rescale_ratio.
18576 (better_font_p): Pay attention to font->rescale_ratio.
18577 (build_scalable_font_name): Likewise. Change RESX, and RESY
18578 fields.
18579 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
18580
185812008-02-01 Kenichi Handa <handa@m17n.org>
18582
18583 * coding.c (Qutf_16_be_nosig, Qutf_16_be, Qutf_16_le_nosig)
18584 (Qutf_16_le): Remove these variables.
18585 (syms_of_coding): Don't DEFSYM them.
18586 (decode_coding_utf_16): Fix handling of BOM.
18587 (encode_coding_utf_16): Fix handling of BOM.
18588
185892008-02-01 Kenichi Handa <handa@m17n.org>
18590
18591 * fileio.c (Finsert_file_contents): On replacing, before decoding
18592 the file into the work buffer, set point of the work buffer to the end.
18593
185942008-02-01 Dave Love <fx@gnu.org>
18595
18596 * coding.c (Fcheck_coding_systems_region): Fix type errors.
18597
185982008-02-01 Dave Love <fx@gnu.org>
18599
18600 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
18601 and fix C types.
18602
186032008-02-01 Kenichi Handa <handa@m17n.org>
18604
18605 * xdisp.c (SKIP_GLYPHS): New macro.
18606 (set_cursor_from_row): Pay attention to string display properties.
18607
18608 * category.c (copy_category_entry): Fix for the case that RANGE
18609 is an integer.
18610
18611 * xterm.c (x_encode_char): Call ccl_driver with the last arg Qnil.
18612
18613 * w32term.c (w32_encode_char): Call ccl_driver with the last arg Qnil.
18614
186152008-02-01 Kenichi Handa <handa@m17n.org>
18616
18617 * charset.c (Fcharset_id_internal): New function.
18618 (syms_of_charset): Defsubr it.
18619
18620 * coding.c (decode_coding_ccl, encode_coding_ccl): Call ccl_driver
18621 with the last arg charset_list acquired from coding.
18622 (Fdefine_coding_system_internal): For ccl-based coding system, fix
18623 the attribute coding_attr_ccl_valids.
18624
18625 * coding.h (enum define_coding_ccl_arg_index): Set the first
18626 member coding_arg_ccl_decoder to coding_arg_max.
18627
18628 * ccl.h (ccl_driver): Adjust prototype.
18629
18630 * ccl.c (CCL_DECODE_CHAR, CCL_ENCODE_CHAR): New macros.
18631 (ccl_driver): New arg CHARSET_LIST. Use the above macros instead
18632 of DECODE_CHAR, ENCODE_CHAR, CHAR_CHARSET.
18633 (Fccl_execute, Fccl_execute_on_string): Call ccl_driver with the
18634 last arg Qnil.
18635
186362008-02-01 Kenichi Handa <handa@m17n.org>
18637
18638 * charset.h (ENCODE_CHAR): If the method is SUBSET or SUPERSET,
18639 call encode_char.
18640
18641 * charset.c (encode_char): Fix handling of methods SUBSET and SUPERSET.
18642
186432008-02-01 Dave Love <fx@gnu.org>
18644
18645 * composite.c (syms_of_composite): Make composition_hash_table weak.
18646
186472008-02-01 Kenichi Handa <handa@m17n.org>
18648
18649 * dispextern.h (check_face_attributes, generate_ascii_font_name)
18650 (font_name_registry): Don't extern them.
18651 (split_font_name_into_vector, build_font_name_from_vector): Extern them.
18652
18653 * fontset.h (Qfontset): Don't extern it.
18654 (new_fontset_from_font_name): Extern it.
18655
18656 * fontset.c: Give 8 extra slots to fontset objects.
18657 (Qfontset_info): New variable.
18658 (syms_of_fontset): Defsym it.
18659 (FONTSET_FALLBACK): New macro.
18660 (fontset_face): Try also the default fontset.
18661 (make_fontset): Realize a fallback fontset from the default fontset.
18662 (generate_ascii_font_name): Move from xfaces.c. Rewritten by
18663 using split_font_name_into_vector and build_font_name_from_vector.
18664 (Fset_fontset_font): Access the elements of font_spec by enum
18665 FONT_SPEC_INDEX. If font_spec is a string, extract the registry
18666 name by using split_font_name_into_vector.
18667 (Fnew_fontset): If no ASCII font is specified in FONTLIST,
18668 generate a proper font name from the fontset name. Update
18669 Vfontset_alias_alist.
18670 (n_auto_fontsets): New variable.
18671 (new_fontset_from_font_name): New function.
18672 (Ffont_info): Store the information about fonts generated from the
18673 default fontset in the first extra slot of the returned char-table.
18674
18675 * xfaces.c (generate_ascii_font_name): Move to fontset.c.
18676 (font_name_registry): Delete function.
18677 (split_font_name_into_vector): New function.
18678 (build_font_name_from_vector): New function.
18679 (font_list): The argument REGISTRY is now a list of registry names.
18680 (choose_face_font): If we are choosing an ASCII font, and ATTRS
18681 specifies an explicit font name, return the name as is. Make a
18682 list of registy names.
18683
18684 * xfns.c (x_set_font, x_create_tip_frame): Adjust for the change
18685 of x_new_fontset.
18686 (Fx_create_frame): Don't call x_new_fontset here. Just use
18687 x_list_fonts to check the existence of fonts.
18688
18689 * xterm.h (x_new_fontset): Adjust prototype.
18690
18691 * xterm.c (x_new_fontset): Change the arg FONTSETNAME to Lisp
18692 string. Use new_fontset_from_font_name to create a fontset from a
18693 font name.
18694
186952008-02-01 Kenichi Handa <handa@m17n.org>
18696
18697 * syntax.c (Vfind_word_boundary_function_table): New name for
18698 Vnext_word_boundary_function_table.
18699 (find-word-boundary-function-table): New name for
18700 next-word-boundary-function-table.
18701
187022008-02-01 Dave Love <fx@gnu.org>
18703
18704 * Makefile.in: Fix some dependencies.
18705
18706 * keymap.c (Fapropos_internal): Don't gcpro apropos_predicate but
18707 set it to nil before returning.
18708
18709 * composite.c (update_compositions): Fix type error.
18710
18711 * syntax.c (skip_chars, skip_syntaxes): Fix type errors.
18712
187132008-02-01 Kenichi Handa <handa@m17n.org>
18714
18715 * xterm.c (x_new_font): Optimize for the case that the font is
18716 already set for the frame.
18717
187182008-02-01 Kenichi Handa <handa@m17n.org>
18719
18720 * chartab.c (char_table_ascii): Check if the char table contents
18721 is sub-char-table or not.
18722 (char_table_set, char_table_set_range): Fix argument to
18723 char_table_ascii.
18724
18725 * coding.c (CATEGORY_MASK_RAW_TEXT): New macro.
18726 (detect_coding_utf_8, detect_coding_utf_16)
18727 (detect_coding_emacs_mule, detect_coding_iso_2022)
18728 (detect_coding_sjis, detect_coding_big5)
18729 (detect_coding_ccl, detect_coding_charset): Change argument MASK
18730 to DETECT_INFO. Update DETECT_INFO and return 1 if the byte
18731 sequence is valid in this coding system. Change callers.
18732 (MAX_ANNOTATION_LENGTH): New macro.
18733 (ADD_ANNOTATION_DATA): New macro.
18734 (ADD_COMPOSITION_DATA): Change argument. Change callers. Call
18735 ADD_ANNOTATION_DATA. Change the format of annotation data.
18736 (ADD_CHARSET_DATA): New macro.
18737 (emacs_mule_char): New argument ID. Change callers.
18738 (decode_coding_emacs_mule, decode_coding_iso_2022)
18739 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
18740 Produce charset annotation data in coding->charbuf.
18741 (encode_coding_emacs_mule, encode_coding_iso_2022): Pay attention
18742 to charset annotation data in coding->charbuf.
18743 (setup_coding_system): Add CODING_ANNOTATE_CHARSET_MASK
18744 coding->common_flags if the coding system is iso-2022 based and
18745 uses designation.
18746 (produce_composition): Adjust for the new annotation data format.
18747 (produce_charset): New function.
18748 (produce_annotation): Handle charset annotation.
18749 (handle_composition_annotation, handle_charset_annotation): New
18750 functions.
18751 (consume_chars): Handle charset annotation. Utilize the above two
18752 functions.
18753 (encode_coding_object): If SRC_OBJECT and DST_OBJECT are the same
18754 buffer, get the deleted text as a string and set
18755 coding->src_object to that string.
18756 (detect_coding, detect_coding_system): Use the new struct
18757 coding_detection_info.
18758
18759 * coding.h (struct coding_detection_info): New structure.
18760 (struct coding_system): Adjust prototype of the member `detector'.
18761 (CODING_ANNOTATE_CHARSET_MASK): New macro.
18762
187632008-02-01 Kenichi Handa <handa@m17n.org>
18764
18765 * insdel.c (insert_from_gap): Fix argument to offset_intervals.
18766
187672008-02-01 Dave Love <fx@gnu.org>
18768
18769 * keymap.c (apropos_predicate, apropos_accumulate): Declare static.
18770 (Fapropos_internal): Don't gcpro apropos_accumulate. Set result
18771 to new local and nullify apropos_accumulate before returning.
18772 (syms_of_keymap): Staticpro and initialize apropos_accumulate.
18773
187742008-02-01 Kenichi Handa <handa@m17n.org>
18775
18776 * charset.c (Fdefine_charset_internal): Setup charset.fast_map
18777 correctly.
18778
187792008-02-01 Dave Love <fx@gnu.org>
18780
18781 * fns.c (Flanginfo): Call synchronize_system_time_locale.
18782
187832008-02-01 Kenichi Handa <handa@m17n.org>
18784
18785 The following changes are to make character composition happen
18786 automatically on displaying.
18787
18788 * Makefile.in (lisp, shortlisp): Add composite.elc.
18789
18790 * composite.h (Qauto_composed, Vauto_composition_function)
18791 (Qauto_composition_function): Extern them.
18792
18793 * composite.c (Vcomposition_function_table)
18794 (Qcomposition_function_table): Delete variables.
18795 (Qauto_composed, Vauto_composition_function)
18796 (Qauto_composition_function): New variables.
18797 (run_composition_function): Don't call
18798 compose-chars-after-function.
18799 (update_compositions): Clear `auto-composed' text property.
18800 (compose_chars_in_text): Delete this function.
18801 (syms_of_composite): Staticpro Qauto_composed and
18802 Qauto_composition_function. Declare Vauto_composition_function as
18803 a Lisp variable.
18804
18805 * dispextern.h (enum prop_idx): Add member AUTO_COMPOSED_PROP_IDX.
18806
18807 * xdisp.c (it_props): Add an entry for Qauto_composed.
18808 (handle_auto_composed_prop): New function.
18809
18810 * xselect.c (selection_data_to_lisp_data): Don't call
18811 compose_chars_in_text.
18812
188132008-02-01 Dave Love <fx@gnu.org>
18814
18815 * keyboard.c (read_char): Modify checking around use of
18816 Vkeyboard_translate_table.
18817
18818 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
18819 and fix C types.
18820
188212008-02-01 Kenichi Handa <handa@m17n.org>
18822
18823 * coding.c (decode_coding_utf_8, decode_coding_emacs_mule)
18824 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
18825 (decode_coding_charset, produce_chars): When eol_type is Qdos, handle
18826 the case that the last byte is '\r' correctly.
18827 (decode_coding): Flush out the unprocessed data correctly.
18828 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK bit of coding->mode.
18829
188302008-02-01 Dave Love <fx@gnu.org>
18831
18832 * xterm.c (XTread_socket): Fix changes for defined keysyms.
18833 Add XK_ISO... case.
18834 (xaw_scroll_callback): Revert last change.
18835
188362008-02-01 Kenichi Handa <handa@m17n.org>
18837
18838 * charset.c (Fset_charset_priority): Update Viso_2022_charset_list.
18839
188402008-02-01 Kenichi Handa <handa@m17n.org>
18841
18842 * xfaces.c (Vface_resizing_fonts): New variable.
18843 (struct font_name): New member `resizing_ratio'.
18844 (font_resizing_ratio): New function.
18845 (split_font_name): Set font->resizing_ratio.
18846 (better_font_p): Pay attention to font->resizing_ratio.
18847 (build_scalable_font_name): Likewise. Don't change POINT_SIZE,
18848 RESX, and RESY fields.
18849 (try_alternative_families): Try scalable fonts if
18850 Vscalable_fonts_allowed is not Qt.
18851 (syms_of_xfaces): Declare Vface_resizing_fonts as a Lisp variable.
18852
188532008-02-01 Dave Love <fx@gnu.org>
18854
18855 * xterm.c (xaw_scroll_callback): Cast correctly.
18856
188572008-02-01 Dave Love <fx@gnu.org>
18858
18859 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extend.
18860 (lispy_kana_keys): Comment out.
18861 (make_lispy_event) [XK_kana_A]: Comment out.
18862
18863 * xterm.c (xaw_scroll_callback): Cast call_data.
18864 (XTread_socket): Deal with ASCII keysyms.
18865 (syms_of_xterm) <Vx_keysym_table>: Fix args of make_hash_table.
18866
188672008-02-01 Dave Love <fx@gnu.org>
18868
18869 * xterm.c (Vx_keysym_table): New.
18870 (syms_of_xterm): Initialize it.
18871 (XTread_socket): Use it.
18872 From head: Eliminate incorrect optimization that tried to avoid
18873 decoding the output of X*LookupString.
18874 (x_get_font_repertory): Delete charset declaration.
18875
188762008-02-01 Kenichi Handa <handa@m17n.org>
18877
18878 * coding.c (detect_coding_charset): If only ASCII bytes are found,
18879 return 0.
18880 (Fdefine_coding_system_internal): Setup
18881 CODING_ATTR_ASCII_COMPAT (attrs) correctly.
18882
188832008-02-01 Dave Love <fx@gnu.org>
18884
18885 * coding.c (Fcheck_coding_system): Doc fix.
18886
18887 * editfns.c (Finsert_byte): Return a proper value.
18888
188892008-02-01 Kenichi Handa <handa@m17n.org>
18890
18891 * coding.c (decode_coding): Fix args to translate_chars. Pay
18892 attention to Vstandard_translation_table_for_decode.
18893 (encode_coding): Fix args to translate_chars. Pay attention to
18894 Vstandard_translation_table_for_encode.
18895
18896 * data.c (Faset): Check NEWELT by ASCII_CHAR_P, not by
18897 SINGLE_BYTE_CHAR_P.
18898
18899 * editfns.c (general_insert_function): Check VAL by ASCII_CHAR_P,
18900 not by SINGLE_BYTE_CHAR_P.
18901
18902 * fns.c (concat): Check CH by ASCII_CHAR_P, not by
18903 SINGLE_BYTE_CHAR_P.
18904
18905 * insdel.c (copy_text): Check C by ASCII_CHAR_P, not by
18906 SINGLE_BYTE_CHAR_P.
18907
18908 * keymap.c (Ftext_char_description): Check C by ASCII_CHAR_P, not
18909 by SINGLE_BYTE_CHAR_P.
18910
18911 * search.c (Freplace_match): Check C by ASCII_CHAR_P, not by
18912 SINGLE_BYTE_CHAR_P.
18913
189142008-02-01 Dave Love <fx@gnu.org>
18915
18916 * fns.c (Fstring_as_multibyte, Fstring_to_multibyte): Doc fix.
18917
189182008-02-01 Dave Love <fx@gnu.org>
18919
18920 * fns.c (Flanginfo): Fix typo.
18921
18922 * unexelf.c (unexec): Make last change conditional on Irix 6.5.
18923
189242008-02-01 Kenichi Handa <handa@m17n.org>
18925
18926 * coding.c (detect_coding_utf_8, detect_coding_utf_16)
18927 (detect_coding_emacs_mule, detect_coding_iso_2022)
18928 (detect_coding_sjis, detect_coding_big5, detect_coding_ccl): Check
18929 incomplete byte sequence. Don't update *mask when correctly detected.
18930 (decode_coding_sjis): Fix decoding of katakana-jisx0201.
18931 (detect_eol): Delete the argument CODING, and add the argument CATEGORY.
18932 (detect_coding, detect_coding_system): Adjust for the changes above.
18933
189342008-02-01 Kenichi Handa <handa@m17n.org>
18935
18936 * character.c (char_string): Rename from
18937 char_string_with_unification. Pay attention to CHAR_MODIFIER_MASK.
18938 (string_char): Rename from string_char.
18939
18940 * character.h (CHAR_STRING, CHAR_STRING_ADVANCE): Call char_string
18941 if C is greater than MAX_3_BYTE_CHAR.
18942 (STRING_CHAR, STRING_CHAR_AND_LENGTH, STRING_CHAR_ADVANCE): Call
18943 string_char instead of string_char_with_unification.
18944
189452008-02-01 Dave Love <fx@gnu.org>
18946
18947 * coding.c (decode_coding_utf_8): Treat surrogates as invalid.
18948
189492008-02-01 Kenichi Handa <handa@m17n.org>
18950
18951 * keymap.c (push_key_description): Pay attention to force_multibyte.
18952
18953 * regex.c (re_search_2): Fix for the case of unibyte buffer.
18954
189552008-02-01 Dave Love <fx@gnu.org>
18956
18957 * charset.c (define_charset_internal): Rename `supprementary'.
18958
18959 * Makefile.in (lisp, shortlisp): Remove latin-N.
18960
189612008-02-01 Dave Love <fx@gnu.org>
18962
18963 * xfns.c (x_window, x_window): Use use_xim.
18964
18965 * xterm.c (use_xim): Initialize.
18966 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
18967 (x_term_init): Maybe set use_xim.
18968
18969 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
18970
189712008-02-01 Kenichi Handa <handa@m17n.org>
18972
18973 * search.c (search_buffer): Fix case-fold-search of multibyte
18974 characters.
18975 (boyer_moore): Rename the last argument to char_high_bits.
18976
189772008-02-01 Kenichi Handa <handa@m17n.org>
18978
18979 * xdisp.c (display_string): Fix for the case of zero width glyph.
18980
18981 * xfns.c (x_set_font): Change the error message of the case that
18982 x_new_fontset returns Qt.
18983
18984 * xfaces.c (set_lface_from_font_name): Reject the default fontset.
18985 (Finternal_set_lisp_face_attribute): Use signal_error for the
18986 error of invalid fontset.
18987
18988 * xterm.c (x_new_fontset): If FONTSETNAME specifies the default
18989 fontset, return Qt.
18990
189912008-02-01 Dave Love <fx@gnu.org>
18992
18993 * unexelf.c (unexec): Make .got handling not SGI-specific.
18994
18995 * syntax.c (syms_of_syntax) <multibyte-syntax-as-symbol>: Doc fix.
18996
18997 * regex.c: Use `ifdef HAVE_ALLOCA_H', not `if HAVE_ALLOCA_H'.
18998
18999 * keyboard.c (read_key_sequence): Fix type error.
19000
19001 * buffer.c (Fset_buffer_multibyte, Fset_buffer_multibyte): Fix
19002 type error.
19003
19004 * fontset.c (fontset_add): Return Lisp_Object.
19005
190062008-02-01 Dave Love <fx@gnu.org>
19007
19008 * charset.h (charset_ordered_list_tick): Declare extern.
19009
190102008-02-01 Kenichi Handa <handa@m17n.org>
19011
19012 The following changes (and some of 2008-02-01 changes of mine) are
19013 for handling syntax, category, and case conversion for unibyte
19014 characters by converting them to multibyte on the fly. With these
19015 changes, we don't have to setup syntax and case tables for unibyte
19016 characters in each language environment.
19017
19018 * abbrev.c (Fexpand_abbrev): Convert a unibyte character to
19019 multibyte if necessary.
19020
19021 * bytecode.c (Fbyte_code): Likewise.
19022
19023 * character.h (LEADING_CODE_LATIN_1_MIN)
19024 (LEADING_CODE_LATIN_1_MAX): New macros.
19025 (unibyte_to_multibyte_table): Extern it.
19026 (unibyte_char_to_multibyte): New macro.
19027 (MAKE_CHAR_MULTIBYTE): Use unibyte_to_multibyte_table.
19028 (CHAR_LEADING_CODE): New macro.
19029 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): New macro.
19030
19031 * character.c (unibyte_to_multibyte_table): New variable.
19032 (unibyte_char_to_multibyte): Move to character.h and define as macro.
19033 (multibyte_char_to_unibyte): If C is an eight-bit character,
19034 convert it to the corresponding byte value.
19035
19036 * charset.c (Fset_unibyte_charset): If the dimension of CHARSET is
19037 not 1, signals an error. Update the elements of
19038 unibyte_to_multibyte_table.
19039 (init_charset_once): Initialize unibyte_to_multibyte_table.
19040 (syms_of_charset): Define the charset `iso-8859-1'.
19041
19042 * cmds.c (internal_self_insert): In a multibyte buffer, insert C
19043 as is without converting it to unibyte. In a unibyte buffer,
19044 convert C to multibyte before checking the syntax.
19045
19046 * lisp.h (unibyte_char_to_multibyte): Delete extern.
19047
19048 * minibuf.c (Fminibuffer_complete_word): Use the macro
19049 FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE.
19050
19051 * regex.h (struct re_pattern_buffer): New member target_multibyte.
19052
19053 * regex.c (RE_TARGET_MULTIBYTE_P): New macro.
19054 (GET_CHAR_BEFORE_2): Check target_multibyte, not multibyte. If
19055 that is zero, convert an eight-bit char to multibyte.
19056 (MAKE_CHAR_MULTIBYTE, CHAR_LEADING_CODE): New dummy new macros for
19057 non-emacs case.
19058 (PATFETCH): Convert an eight-bit char to multibyte.
19059 (HANDLE_UNIBYTE_RANGE): New macro.
19060 (regex_compile): Setup the compiled pattern for multibyte chars
19061 even if the given regex string is unibyte. Use PATFETCH_RAW
19062 instead of PATFETCH in many places. To handle `charset'
19063 specification of unibyte, call HANDLE_UNIBYTE_RANGE. Use bitmap
19064 only for ASCII chars.
19065 (analyse_first) <exactn>: Simplify because the compiled pattern
19066 is multibyte.
19067 <charset_not>: Setup fastmap from bitmap only for ASCII chars.
19068 <charset>: Use CHAR_LEADING_CODE to get leading codes.
19069 <categoryspec>: If multibyte, setup fastmap only for ASCII chars here.
19070 (re_compile_fastmap) [emacs]: Call analyse_first with the arg
19071 multibyte always 1.
19072 (re_search_2): In emacs, set the locale variable multibyte to 1,
19073 otherwise to 0. New local variable target_multibyte. Check it
19074 to decide the multibyteness of STR1 and STR2. If
19075 target_multibyte is zero, convert unibyte chars to multibyte
19076 before translating and checking fastmap.
19077 (TARGET_CHAR_AND_LENGTH): New macro.
19078 (re_match_2_internal): In emacs, set the locale variable multibyte
19079 to 1, otherwise to 0. New local variable target_multibyte. Check
19080 it to decide the multibyteness of STR1 and STR2. Use
19081 TARGET_CHAR_AND_LENGTH to fetch a character from D.
19082 <charset, charset_not>: If multibyte is nonzero, check fastmap
19083 only for ASCII chars. Call bcmp_translate with
19084 target_multibyte, not with multibyte.
19085 <begline>: Declare the local variable C as `unsigned'.
19086 (bcmp_translate): Change the last arg name to target_multibyte.
19087
19088 * search.c (compile_pattern_1): Don't adjust the multibyteness of
19089 the regexp pattern and the matching target. Set cp->buf.multibyte
19090 to the multibyteness of the regexp pattern. Set
19091 cp->but.target_multibyte to the multibyteness of the matching target.
19092 (wordify): Use FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE instead of
19093 FETCH_STRING_CHAR_ADVANCE.
19094 (Freplace_match): Convert unibyte chars to multibyte.
19095
19096 * syntax.c (char_quoted, back_comment, scan_words)
19097 (Fforward_comment, scan_lists, Fbackward_prefix_chars)
19098 (scan_sexps_forward): Use FETCH_CHAR_AS_MULTIBYTE to convert
19099 unibyte chars to multibyte.
19100 (skip_chars): Delete the arg syntaxp, and move the code for
19101 handling syntaxes to skip_syntaxes. Change callers.
19102 Fix the case that the multibyteness of STRING and the current
19103 buffer doesn't match.
19104 (skip_syntaxes): New function.
19105 (SYNTAX_WITH_MULTIBYTE_CHECK): Check C by ASCII_CHAR_P, not by
19106 SINGLE_BYTE_CHAR_P.
19107
191082008-02-01 Kenichi Handa <handa@m17n.org>
19109
19110 * xfaces.c (QCfontset): New variable.
19111 (LFACE_FONTSET): New macro.
19112 (check_lface_attrs): Check also LFACE_FONTSET_INDEX.
19113 (set_lface_from_font_name): Setup LFACE_FONTSET (lface).
19114 (Finternal_set_lisp_face_attribute)
19115 (Finternal_get_lisp_face_attribute): Handle QCfontset.
19116 (lface_same_font_attributes_p): Fix checking of LFACE_FONT_INDEX,
19117 check also LFACE_FONTSET_INDEX.
19118 (face_fontset): Check attrs[LFACE_FONTSET_INDEX], not
19119 attrs[LFACE_FONT_INDEX].
19120 (syms_of_xfaces): Intern and staticpro QCfontset.
19121
19122 * dispextern.h (enum lface_attribute_index): New member
19123 LFACE_FONTSET_INDEX.
19124
19125 * fns.c (base64_encode_1): Handle eight-bit chars correctly.
19126
191272008-02-01 Kenichi Handa <handa@m17n.org>
19128
19129 * coding.c (coding_set_destination): Fix coding->destination for
19130 the case converting a region.
19131 (encode_coding_utf_8): Encode eight-bit chars as single byte.
19132 (encode_coding_object): Fix coding->dst_pos and
19133 coding->dst_pos_byte for the case converting a region.
19134
19135 * insdel.c (insert_from_gap): Make it work even if PT != GTP.
19136
19137 * character.h (BYTE8_STRING): New macro.
19138
19139 * fns.c (base64_decode_1): Insert eight-bit chars correctly.
19140
191412008-02-01 Kenichi Handa <handa@m17n.org>
19142
19143 * xdisp.c (get_next_display_element): Don't display unibyte 8-bit
19144 characters by octal form.
19145
19146 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
19147
19148 * buffer.h (_fetch_multibyte_char_len): Delete extern.
19149 (FETCH_MULTIBYTE_CHAR, BUF_FETCH_MULTIBYTE_CHAR): Don't use
19150 _fetch_multibyte_char_len.
19151 (FETCH_CHAR_AS_MULTIBYTE): New macro.
19152
19153 * casetab.c (set_canon, set_identity, shuffle): Simplify.
19154
19155 * casefiddle.c (casify_object): Simplify. Handle the case that
19156 the case conversion change the byte length.
19157 (casify_region): Likewise.
19158
19159 * character.h (MAKE_CHAR_UNIBYTE, MAKE_CHAR_MULTIBYTE): New macros.
19160
19161 * character.c (_fetch_multibyte_char_len): Delete this variable.
19162 (syms_of_character): Setup Vprintable_chars.
19163
19164 * editfns.c (Fchar_equal): Fix for the unibyte case.
19165 (Finsert_byte): New function.
19166 (syms_of_editfns): Defsubr it.
19167
19168 * keyboard.c (read_key_sequence): Use ~CHAR_MODIFIER_MASK instead
19169 of direct code 0x3ffff.
19170
19171 * search.c (Freplace_match): Fix for the unibyte case.
19172
191732008-02-01 Kenichi Handa <handa@m17n.org>
19174
19175 * lread.c (safe_to_load_p): Fix the logic.
19176
19177 * syntax.c (scan_words): Don't treat characters belonging to
19178 different scripts as constituting a word.
19179
19180 * editfns.c (Fformat): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
19181
19182 * fontset.c (Fset_fontset_font): Treat `ascii' as charset, not script.
19183
19184 * emacs.c (main): In the case of --unibyte, instead of aborting on
19185 finding non-empty buffer, make it unibyte.
19186
191872008-02-01 Kenichi Handa <handa@m17n.org>
19188
19189 * xterm.c (x_new_fontset): Call `create-fontset-from-ascii-font'
19190 to create a fontset.
19191
191922008-02-01 Dave Love <fx@gnu.org>
19193
19194 * character.c (Funibyte_char_to_multibyte): Doc fix.
19195
19196 * xfns.c [HAVE_STDLIB_H]: Fix last change.
19197
191982008-02-01 Kenichi Handa <handa@m17n.org>
19199
19200 * fontset.c (fontset_add): Make the type `int'.
19201 (fontset_id_valid_p): Define it if FONTSET_DEBUG is defined.
19202
19203 * character.c (unibyte_char_to_multibyte)
19204 (multibyte_char_to_unibyte, Funibyte_char_to_multibyte): Refer to
19205 charset_unibyte, not charset_primary.
19206
19207 * charset.h (charset_unibyte): Extern it instead of charset_primary.
19208
19209 * charset.c (charset_unibyte): Rename from charset_primary.
19210 (Funibyte_charset): Rename from Fprimary_charset.
19211 (Fset_unibyte_charset): Rename from Fset_primary_charset.
19212 (syms_of_charset): Adjust for the above changes.
19213
19214 * w32term.c (x_produce_glyphs): Use ASCII_CHAR_P, not
19215 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
19216 it->multibyte_p is zero.
19217
19218 * lisp.h (nonascii_insert_offset, Vnonascii_translation_table):
19219 Delete extern.
19220
192212008-02-01 Kenichi Handa <handa@m17n.org>
19222
19223 * coding.c (Fdefine_coding_system_internal): Fix category setting
19224 for a coding system of type iso-2022.
19225
192262008-02-01 Kenichi Handa <handa@m17n.org>
19227
19228 * fontset.h (FS_LOAD_FONT): Call fs_load_font with the arg CHARSET -1.
19229
192302008-02-01 Kenichi Handa <handa@m17n.org>
19231
19232 * syntax.c (Vnext_word_boundary_function_table): New variable.
19233 (next-word-boundary-function-table): Declare it as a Lisp variable
19234 in syms_of_syntax.
19235 (scan_words): Call functions in Vnext_word_boundary_function_table
19236 if any.
19237
19238 * xterm.c (x_load_font): Initialize fontp->fontset to -1.
19239
19240 * fontset.c (fs_load_font): If fontp->charset is not negative,
19241 return fontp without setting its members.
19242
192432008-02-01 Dave Love <fx@gnu.org>
19244
19245 * xfns.c [HAVE_STDLIB_H]: Change logic (instead of fixing typo).
19246
19247 * m/sparc.h (HAVE_ALLOCA): Delete.
19248
19249 * s/irix6-5.h: Don't include strings.h.
19250 (bcopy, bzero, bcmp): Don't undef.
19251
19252 * s/irix6-0.h (bcopy, bzero, bcmp): Don't undef.
19253
19254 * s/usg5-4.h (NO_SIOCTL_H): Don't define.
19255 (TIOCSIGSEND): Don't test IRIX6.
19256 (bcopy, bzero, bcmp): Define conditionally.
19257
192582008-02-01 Kenichi Handa <handa@m17n.org>
19259
19260 * buffer.c (Qas, Qmake, Qto): New variables.
19261 (Fset_buffer_multibyte): New optional arg METHOD. Change caller.
19262 (syms_of_buffer): Intern and staticpro Qas, Qmake, and Qto.
19263
19264 * callproc.c (Fcall_process): Don't call insert_1_both directly if
19265 we are inserting a process output into a multibyte buffer.
19266
19267 * character.h (CHAR_TO_BYTE8): If C is not eight-bit char, call
19268 multibyte_char_to_unibyte.
19269
19270 * character.c (Funibyte_char_to_multibyte): If C can't be decoded
19271 by the primary charset, make it eight-bit char.
19272 (Fmultibyte_char_to_unibyte): Call CHAR_TO_BYTE8.
19273
19274 * charset.c (charset_eight_bit, Qeight_bit_control): New variables.
19275 (charset_8_bit__control, charset_8_bit_graphic)
19276 (Qeight_bit_control, Qeight_bit_graphic): Delete these variables.
19277 (define_charset_internal): New function.
19278 (syms_of_charset): Call define_charset_internal for pre-defined
19279 charsets.
19280
19281 * charset.h (charset_8_bit): Extern it.
19282
19283 * coding.c (make_conversion_work_buffer): Adjust for the change
19284 of Fset_buffer_multibyte.
19285 (encode_coding_raw_text): Increment p0 in the loop.
19286
19287 * lisp.h (Fset_buffer_multibyte): Adjust prototype.
19288
19289 * xdisp.c (setup_echo_area_for_printing, set_message_1): Adjust
19290 for the change of Fset_buffer_multibyte.
19291
19292 * fns.c (Fstring_to_multibyte): New function.
19293 (syms_of_fns): Declare Fstring_to_multibyte as Lisp subroutine.
19294
192952008-02-01 Dave Love <fx@gnu.org>
19296
19297 * xfns.c (x_put_x_image): Declare args.
19298
19299 * xfaces.c (font_name_registry, choose_face_font): Delete unused vars.
19300 (try_font_list): Declare an arg.
19301
19302 * xdisp.c (message2_nolog, set_message): Declare an arg.
19303
19304 * terminfo.c (tparam): Declare an arg. Use P_ to declare tparm.
19305
19306 * syntax.c (scan_sexps_forward): Declare an arg.
19307
19308 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
19309 Declare an arg.
19310
19311 * lisp.h (Fnew_fontset): Declare.
19312
19313 * keymap.c (push_key_description): Call CHARACTERP correctly.
19314
19315 * fontset.c (fontset_add): Declare args. Call make_number correctly.
19316 (face_for_char): Delete unused vars.
19317 (Fset_fontset_font): Doc fix. Delete unused vars.
19318
19319 * doc.c (Fsubstitute_command_keys): Delete unused vars.
19320
19321 * composite.c (update_compositions): Declare arg.
19322
19323 * cm.c (calccost, cmgoto): Declare args.
19324
19325 * charset.c: Remove `emacs' conditional. Doc fixes.
19326 (map_char_table_for_charset): Declare.
19327
19328 * character.c (syms_of_character) <translation-table-vector>: Doc fix.
19329
19330 * ccl.c: Remove `emacs' conditional.
19331
193322008-02-01 Kenichi Handa <handa@m17n.org>
19333
19334 The following changes are to allow specifying multiple font
19335 patterns for a character range (specified by script or charset).
19336
19337 * Makefile.in (abbrev.o): Depend on syntax.h.
19338 (xfaces.o): Depend on charset.h.
19339
19340 * alloc.c (Fmake_string): Use ASCII_CHAR_P, not
19341 SINGLE_BYTE_CHAR_P.
19342
19343 * ccl.c (Fccl_execute_on_string): Add `const' to local variables.
19344
19345 * character.h (Vchar_script_table): Extern it.
19346
19347 * character.c (Vscript_alist): Delete.
19348 (Vchar_script_table, Qchar_script_table): New variable.
19349 (syms_of_character): Declare Vchar_script_table as a lisp variable
19350 and initialize it.
19351
19352 * chartab.c (Fmake_char_table): Doc fix. If PURPOSE doesn't
19353 have property char-table-extra-slots, make no extra slot.
19354
19355 * dispextern.h (struct face): Delete member `charset'.
19356 (FACE_SUITABLE_FOR_CHAR_P, FACE_FOR): Use ASCII_CHAR_P, not
19357 SINGLE_BYTE_CHAR_P.
19358 (choose_face_font, lookup_non_ascii_face, font_name_registry):
19359 Add prototypes.
19360 (lookup_face, lookup_named_face, lookup_derived_face): Fix prototype.
19361 (generate_ascii_font_name): Rename from generate_ascii_font.
19362
19363 * fontset.h (get_font_repertory_func): New prototype.
19364 (make_fontset_for_ascii_face, fs_load_font): Fix prototypes.
19365 (FS_LOAD_FONT): Call fs_load_font with the 3rd arg charset_ascii.
19366
19367 * fontset.c (Qprepend, Qappend): New variables.
19368 (FONTSET_CHARSET_ALIST, FONTSET_FACE_ALIST): Delete.
19369 (FONTSET_NOFONT_FACE, FONTSET_REPERTORY): New macros.
19370 (FONTSET_REF): Optimize if FONTSET is Vdefault_fontset.
19371 (FONTSET_REF_AND_RANGE, FONTSET_ADD): New macros.
19372 (fontset_ref_and_range, fontset_add, reorder_font_vector)
19373 (load_font_get_repertory): New functions.
19374 (fontset_set): Delete.
19375 (fontset_face): New arg FACE. Return face ID, not face.
19376 Complete re-write to handle new fontset structure. Change caller.
19377 (free_face_fontset): Use ASET istead of AREF (X) = Y.
19378 (face_for_char): Don't call lookup_face.
19379 (make_fontset_for_ascii_face): New arg FACE.
19380 (fs_load_font): New arg CHARSET_ID. Don't check
19381 Vfont_encoding_alist here.
19382 (find_font_encoding): New function.
19383 (list_fontsets): Use STRINGP, not ! NILP.
19384 (accumulate_script_ranges): New function.
19385 (Fset_fontset_font, Fnew_fontset, Ffontset_info): Completely
19386 re-written to handle new fontset structure.
19387 (Ffontset_font): Return a copy of element.
19388 (syms_of_fontset): Define symbols Qprepend and Qappend. Fix
19389 docstring of font-encoding-alist.
19390
19391 * lisp.h (CHAR_TABLE_REF): Remove unnecessary check (IDX >= 0).
19392 (Fset_fotset_font): Fix arguments to 5.
19393
19394 * msdos.c (XMenuActivate): Adjust for the change of lookup_derived_face.
19395
19396 * xdisp.c (message_dolog, set_message_1, extend_face_to_end_of_line):
19397 Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
19398 (highlight_trailing_whitespace): Adjust for the change of
19399 lookup_named_face.
19400
19401 * xfaces.c: Include charset.h.
19402 (load_face_font): Delete argument C. Change caller.
19403 (generate_ascii_font_name): Rename from generate_ascii_font.
19404 (font_name_registry): New function.
19405 (cache_face): Store ascii faces before non-ascii faces in buckets.
19406 (lookup_face): Delete arguments C and BASE_FACE. Change caller.
19407 Lookup only ascii faces.
19408 (lookup_non_ascii_face): New function.
19409 (lookup_named_face): Delete argument C. Change caller.
19410 (lookup_derived_face): Delete argument C. Change caller.
19411 (try_font_list): New arg PATTERN. Change caller. If PATTERN is
19412 a string, just call font_list with it.
19413 (choose_face_font): Delete arguments FACE and C. New arg
19414 FONT_SPEC. Change caller.
19415 (realize_face, realize_x_face): Delete arguments C and BASE_FACE.
19416 Change caller.
19417 (realize_non_ascii_face): New function.
19418 (realize_x_face): Call load_face_font here.
19419 (realize_tty_face): Delete argument C. Change caller.
19420 (compute_char_face): If CH is not ascii, call FACE_FOR_CHAR to
19421 get a face ID.
19422 (dump_realized_face): Don't print charset of FACE.
19423
19424 * xfns.c (x_set_font): Always call x_new_fontset and
19425 store_frame_parameter.
19426 (Fx_create_frame): Call x_new_fontset, not x_new_font.
19427 (syms_of_xfns): Set get_font_repertory_func to x_get_font_repertory.
19428
19429 * xterm.h (x_get_font_repertory): Extern it.
19430
19431 * xterm.c (x_produce_glyphs): Use ASCII_CHAR_P, not
19432 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
19433 it->multibyte_p is zero.
19434 (XTread_socket): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
19435 (x_new_fontset): If FONTSETNAME doesn't match any existing
19436 fontsets, create a new one.
19437 (x_get_font_repertory): New function.
19438
194392008-02-01 Kenichi Handa <handa@m17n.org>
19440
19441 * coding.c (Ffind_coding_systems_region_internal): Detect an
19442 ASCII only string correctly.
19443
19444 * lread.c (Fload): Don't load with Qload_force_doc_strings t if
19445 version is 0.
19446
194472008-02-01 Kenichi Handa <handa@m17n.org>
19448
19449 * lread.c: Include "coding.h".
19450 (Qget_emacs_mule_file_char, Qload_force_doc_strings)
19451 (load_each_byte, unread_char): New variables.
19452 (readchar_backlog): Delete.
19453 (readchar): Return a character unless load_each_byte is nonzero.
19454 Handle the case that readcharfun is Qget_emacs_mule_file_char or a
19455 cons. If unread_char is not -1, simply return it.
19456 (unreadchar): Handle the case that readcharfun is
19457 Qget_emacs_mule_file_char or a cons. Set unread_char if necessary.
19458 (read_multibyte): Delete.
19459 (readbyte_for_lambda, readbyte_from_file, readbyte_from_string)
19460 (read_emacs_mule_char): New functions.
19461 (Fload): Even if the file doesn't have the extension ".elc", if
19462 safe_to_load_p returns a positive version number, assume that the
19463 file contains bytecompiled code. If the version is less than 22,
19464 load the file while decoding multibyte sequences by emacs-mule.
19465 (readevalloop): Don't use readchar_backlog.
19466 (Fread): Likewise. Pay attention to the case that STREAM is a cons.
19467 (Fread_from_string): Pay attention to the case that STREAM is a cons.
19468 (read_escape): Delete the arg BYTEREP.
19469 (read1): Set load_each_byte to 1 temporarily while handling
19470 #@NUMBER. Don't call read_multibyte.
19471 (read_vector): Call Fread with a cons. If readcharfun is
19472 Qget_emacs_mule_file_char, decode the read string by emacs-mule.
19473 (read_list): If doc_reference is 2, make the cdr part string as unibyte.
19474 (syms_of_lread): Intern and staticpro Qget_emacs_mule_file_char
19475 and Qload_force_doc_strings.
19476
194772008-02-01 Kenichi Handa <handa@m17n.org>
19478
19479 * xdisp.c (face_before_or_after_it_pos): Call
19480 FETCH_MULTIBYTE_CHAR with byte postion, not char position.
19481
194822008-02-01 Kenichi Handa <handa@m17n.org>
19483
19484 * character.h (TRAILING_CODE_P): New macro.
19485 (MAYBE_UNIFY_CHAR): Adjust for the change of Funify_charset.
19486 (string_char_with_unification): Fix prototype.
19487 (Vscript_alist): Extern it.
19488
19489 * character.c (Vscript_alist): New variable.
19490 (string_char_with_unification, str_as_unibyte)
19491 (string_escape_byte8): Add `const' to local variables.
19492 (syms_of_character): Declare script-alist as a Lisp variable.
19493
19494 * charset.h (Vcharset_ordered_list): Extern it.
19495 (charset_ordered_list_tick): Extern it.
19496 (EMACS_MULE_LEADING_CODE_PRIVATE_11)
19497 (EMACS_MULE_LEADING_CODE_PRIVATE_12)
19498 (EMACS_MULE_LEADING_CODE_PRIVATE_21)
19499 (EMACS_MULE_LEADING_CODE_PRIVATE_22): New macros.
19500 (Funify_charset): Adjust for the change of Funify_charset.
19501
19502 * charset.c (charset_ordered_list_tick): New variable.
19503 (Fdefine_charset_internal): Increment charset_ordered_list_tick.
19504 (Funify_charset): New optional arg DEUNIFY. If it is non-nil,
19505 deunify intead of unify a charset.
19506 (string_xstring_p): Add `const' to local variables.
19507 (find_charsets_in_text): Add `const' to arguments and local variables.
19508 (encode_char): Adjust for the change of Funify_charset. Fix
19509 detecting of invalid code.
19510 (Fset_charset_priority): Increment charset_ordered_list_tick.
19511 (Fmap_charset_chars): Fix handling of default value for FROM_CODE
19512 and TO_CODE.
19513
19514 * coding.c (LEADING_CODE_PRIVATE_11, LEADING_CODE_PRIVATE_12)
19515 (LEADING_CODE_PRIVATE_21, LEADING_CODE_PRIVATE_22): Delete macros.
19516 Changed callers to use EMACS_MULE_LEADING_CODE_PRIVATE_11, etc.
19517 (decode_coding_ccl, consume_chars)
19518 (Ffind_coding_systems_region_internal)
19519 (Fcheck_coding_systems_region): Add `const' to local variables.
19520
19521 * print.c (print_object): Use octal form for printing the
19522 contents of a bool vector.
19523
195242008-02-01 Dave Love <fx@gnu.org>
19525
19526 * lread.c (Fload) <!load_dangerous_libraries>: Don't leak fd.
19527 <version == 20>: Refuse to load.
19528
195292008-02-01 Dave Love <fx@gnu.org>
19530
19531 * fns.c: Move coding.h.
19532 (Qcodeset, Qdays, Qmonths): New.
19533 (concat): Use CHARACTERP instead of INTEGERP.
19534 (Flocale_codeset): Delete.
19535 (Flanginfo): New function.
19536 (syms_of_fns): Change accordingly.
19537
19538 * coding.c (adjust_coding_eol_type): Fix eol_type/eol_seen mixup.
19539
195402008-02-01 Dave Love <fx@gnu.org>
19541
19542 * casetab.c (init_casetab_once, init_casetab_once): Fix
19543 CHAR_TABLE_SET call.
19544
19545 * category.c (Fmodify_category_entry): Fix CATEGORY_MEMBER call.
19546
19547 * character.c (syms_of_character): Fix CHAR_TABLE_SET call.
19548
19549 * charset.c (Fmap_charset_chars): Check args. Convert Lisp types.
19550 (load_charset_map, Fdeclare_equiv_charset, Fencode_char)
19551 (Fset_charset_priority, syms_of_charset): Convert Lisp types.
19552
19553 * charset.h (CHECK_CHARSET_GET_ID): Use XINT on AREF result.
19554
19555 * coding.c (ENCODE_DESIGNATION, decode_eol)
19556 (make_conversion_work_buffer, code_conversion_restore)
19557 (Fdefine_coding_system_internal): Convert Lisp types.
19558 (code_conversion_restore): Use EQ, not ==.
19559 (Fencode_coding_string): Fix code_convert_string call.
19560
19561 * coding.h (code_convert_region): Fix prototype.
19562
19563 * dispextern.h (redraw_frame, redraw_garbaged_frames): Remove.
19564
19565 * fontset.c (fontset_ref, fontset_set, fs_load_font)
19566 (Ffontset_info): Convert Lisp types.
19567
19568 * syntax.h (SYNTAX_ENTRY_INT): Don't use make_number.
19569
19570 * xterm.c (note_mouse_movement): Fix call of window_from_coordinates.
19571
19572 * xdisp.c (display_mode_element): Fix call of Fset_text_properties.
19573
19574 * chartab.c: Include "...h", not <...h> in some cases.
19575
19576 * callproc.c (Fcall_process): Remove unused variables.
19577
195782008-02-01 Dave Love <fx@gnu.org>
19579
19580 * coding.c (Fset_coding_system_priority): Allow null arg list.
19581
195822008-02-01 Dave Love <fx@gnu.org>
19583
19584 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
19585 (Fself_insert_and_exit): Use CHARACTERP.
19586
19587 * callproc.c (Fcall_process): Remove unused vars.
19588
19589 * xterm.c (XTread_socket): Add extra dead keysyms.
19590
19591 * xdisp.c (decode_mode_spec_coding): Use CHARACTERP.
19592
19593 * dispextern.h: Remove prototypes for redraw_frame,
19594 redraw_garbaged_frames.
19595
19596 * cmds.c (Fself_insert_command): Use CHARACTERP.
19597
19598 * chartab.c (make_sub_char_table): Remove unused var.
19599 (Fset_char_table_default, Fmap_char_table): Doc fix.
19600
19601 * keymap.c (access_keymap): Remove generic char code.
19602 (push_key_description): Use CHARACTERP.
19603
196042008-02-01 Dave Love <fx@gnu.org>
19605
19606 * charset.c: Doc fixes.
19607 (Funify_charset): Extra checking.
19608
196092008-02-01 Dave Love <fx@gnu.org>
19610
19611 * lread.c: Remove some unused variables.
19612 (safe_to_load_p): If safe, return the magic number version byte.
19613 (Fload): Maybe use load-with-code-conversion.
19614
196152008-02-01 Kenichi Handa <handa@m17n.org>
19616
19617 * category.c (Fmodify_category_entry): Don't modify the contents
19618 of category_set for characters out of the range. Avoid
19619 unnecessary modification.
19620
19621 * character.h (MAYBE_UNIFY_CHAR): Adjust for the change of
19622 Vchar_unify_table. The default value of the table is now nil.
19623
19624 * character.c (syms_of_character): Setup Vchar_width_table for
19625 eight-bit-control and raw-byte chars.
19626
19627 * charset.h (enum define_charset_arg_index): Delete
19628 charset_arg_parents and add charset_arg_subset and
19629 charset_arg_superset.
19630 (enum charset_attr_index): Delete charset_parents and add
19631 charset_subset and charset_superset.
19632 (enum charset_method): Delete CHARSET_METHOD_INHERIT and add
19633 CHARSET_METHOD_SUBSET and CHARSET_METHOD_SUPERSET.
19634 (CHARSET_ATTR_PARENTS, CHARSET_PARENTS): Delete.
19635 (CHARSET_ATTR_SUBSET, CHARSET_ATTR_SUPERSET, CHARSET_SUBSET)
19636 (CHARSET_SUPERSET): New macros.
19637 (charset_work): Extern it.
19638 (ENCODE_CHAR): Use charset_work.
19639 (CHAR_CHARSET_P): Adjust for the change of encoder format.
19640 (map_charset_chars): Extern it.
19641
19642 * charset.c (load_charset_map): Set the default value of encoder
19643 and deunifier char-tables to nil.
19644 (map_charset_chars): Change argument. Change callers. Use
19645 map_char_table_for_charset instead of map_char_table.
19646 (Fmap_charset_chars): New optional args from_code and to_code.
19647 (Fdefine_charset_internal): Adjust for the change of
19648 `define-charset' (:parents -> :subset or :superset).
19649 (charset_work): New variable.
19650 (encode_char, syms_of_charset): Adjust for the change of
19651 Fdefine_charset_internal.
19652 (Ffind_charset_string): Setup the vector `charsets' correctly.
19653
19654 * chartab.c (sub_char_table_ref_and_range): New arg default. Fix
19655 the previous change.
19656 (char_table_ref_and_range): Adjust for the above change.
19657 (map_sub_char_table_for_charset): New function.
19658 (map_char_table_for_charset): New function.
19659
19660 * keymap.c (describe_vector): Handle a char-table directly here.
19661 (describe_char_table): Delete.
19662
19663 * lisp.h (map_charset_chars): Delete.
19664
196652008-02-01 Dave Love <fx@gnu.org>
19666
19667 * fns.c (count_combining): Comment out (unused).
19668 (Flocale_codeset): New.
19669 (syms_of_fns): Defsubr it.
19670
19671 * config.in (HAVE_PTY_H, HAVE_SIZE_T, HAVE_LANGINFO_CODESET): New.
19672 (size_t): Remove.
19673
196742008-02-01 Dave Love <fx@gnu.org>
19675
19676 * Makefile.in (chartab.o): Depend on charset.h.
19677
196782008-02-01 Kenichi Handa <handa@m17n.org>
19679
19680 * character.c (syms_of_character): Set the default value of
19681 Vprintable_chars to Qnil.
19682
196832008-02-01 Dave Love <fx@gnu.org>
19684
19685 * Makefile.in (lisp, shortlisp): Change indian.elc to indian.el.
19686
196872008-02-01 Kenichi Handa <handa@m17n.org>
19688
19689 * charset.c (load_charset_map): Handle the case that from < to
19690 correctly.
19691
19692 * coding.c (encode_coding_emacs_mule, encode_coding_iso_2022)
19693 (encode_coding_sjis, encode_coding_big5, encode_coding_charset):
19694 Pay attention to raw-8-bit chars.
19695
196962008-02-01 Kenichi Handa <handa@m17n.org>
19697
19698 * Makefile.in (lisp, shortlisp): Change chinese.elc to chinese.el.
19699 It is not bytecompiled now.
19700
19701 * charset.c (charset_jisx0201_roman, charset_jisx0208_1978)
19702 (charset_jisx0208): New variables.
19703 (Fdefine_charset_internal): Setup them if appropriate.
19704 (init_charset_once): Initialize them to -1.
19705
19706 * charset.h (charset_jisx0201_roman, charset_jisx0208_1978)
19707 (charset_jisx0208): Extern them.
19708
19709 * coding.c (CODING_ISO_FLAG_USE_ROMAN): New macro.
19710 (CODING_ISO_FLAG_USE_OLDJIS): New macro.
19711 (CODING_ISO_FLAG_FULL_SUPPORT): Change macro definition.
19712 (setup_iso_safe_charsets): Fix arguments to Fassq.
19713 (DECODE_DESIGNATION, ENCODE_ISO_CHARACTER_DIMENSION1)
19714 (ENCODE_ISO_CHARACTER_DIMENSION2): Pay attention to
19715 CODING_ISO_FLAG_USE_ROMAN and CODING_ISO_FLAG_USE_OLDJIS.
19716 (encode_coding_iso_2022): Change the 1st arg to
19717 ENCODE_ISO_CHARACTER to a variable.
19718
197192008-02-01 Kenichi Handa <handa@m17n.org>
19720
19721 * charset.h (enum define_charset_arg_index): New enums
19722 charset_arg_min_code and charset_arg_max_code.
19723 (struct charset): New member char_index_offset.
19724
19725 * charset.c (CODE_POINT_TO_INDEX, INDEX_TO_CODE_POINT):
19726 Take charset->char_index_offset into account.
19727 (Fdefine_charset_internal): Handle args[charset_arg_min_code] and
19728 args[charset_arg_max_code]. Setup charset.char_index_offset.
19729 (syms_of_charset): Fix args to Fdefine_charset_internal.
19730
197312008-02-01 Dave Love <fx@gnu.org>
19732
19733 * coding.c (decode_coding_utf_8): Reject overlong sequences.
19734
197352008-02-01 Dave Love <fx@gnu.org>
19736
19737 * coding.c: Doc fixes.
19738 (Fcoding_system_aliases): Fix return value.
19739 (Qmac): Remove (duplicated) definition.
19740
197412008-02-01 Dave Love <fx@gnu.org>
19742
19743 * charset.c (Fcharset_priority_list, Fset_charset_priority):
19744 New functions.
19745
19746 * character.c (Fstring): Doc fix.
19747
19748 * charset.c (Fdefine_charset_alias): Update Vcharset_list.
19749
19750 * fontset.c (Ffontset_info): Doc fix. Return charset names, not ids.
19751 (font-encoding-alist): Doc fix.
19752
197532008-02-01 Dave Love <fx@gnu.org>
19754
19755 * term.c (costs_set): Declare static, non-initialized for pcc.
19756 (encode_terminal_code): Remove unused var.
19757
19758 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
19759 for K&R.
19760
19761 * xterm.c (xlwmenu_window_p): Fix prototype for K&R.
19762
19763 * coding.c (setup_iso_safe_charsets): Fix arg decl for K&R.
19764 (suffixes): Move out of make_subsidiaries for K&R.
19765
19766 * charset.c (map_charset_chars): Fix c_function declaration for K&R.
19767
19768 * lisp.h (DEFUN) [!PROTOTYPES]: Remove spurious `args'.
19769
197702008-02-01 Dave Love <fx@gnu.org>
19771
19772 * data.c (Fchar_or_string_p): Doc fix. Use CHARACTERP.
19773
19774 * category.c (Fmodify_category_entry): Doc fix. Remove unused vars.
19775
197762008-02-01 Yong Lu <lyongu@asia-infonet.com>
19777
19778 * charset.c (Fdefine_charset_internal): Fix argument to bzero.
19779
19780 * coding.c (decode_coding_charset): Workaround for the bug of GCC 2.96.
19781
197822008-02-01 Kenichi Handa <handa@m17n.org>
19783
19784 * Makefile.in (lisp, shortlisp): Change cyrillic.elc to cyrillic.el,
19785 vietnamese.elc to vietnamese.el. They are not bytecompiled now.
19786
197872008-02-01 Kenichi Handa <handa@m17n.org>
19788
19789 * coding.c (decode_coding_charset): Adjust for the change of
19790 Fdefine_coding_system_internal.
19791 (Fdefine_coding_system_internal): For a coding system of
19792 `charset' type, store a list of charset IDs in
19793 `charset_attr_charset_valids' element of coding attributes.
19794
197952008-02-01 Kenichi Handa <handa@m17n.org>
19796
19797 * coding.c (ONE_MORE_BYTE_NO_CHECK): Increment consumed_chars.
19798 (emacs_mule_char): New arg src. Delete arg `composition'. Change
19799 caller. Handle 2-byte and 3-byte charsets correctly.
19800 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): Rename from
19801 DECODE_EMACS_MULE_COMPOSITION_RULE. Change caller.
19802 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New macro.
19803 (DECODE_EMACS_MULE_21_COMPOSITION): Call
19804 DECODE_EMACS_MULE_COMPOSITION_RULE_21. Produce correct annotation
19805 sequence.
19806 (decode_coding_emacs_mule): Handle composition correctly. Rewind
19807 `src' and `consumed_chars' correctly before calling emacs_mule_char.
19808 (DECODE_COMPOSITION_START): Correctly handle the case of altchar
19809 and alt&rule composition.
19810 (decode_coding_iso_2022): Handle composition correctly.
19811 (init_coding_once): Setup emacs_mule_bytes for private charsets.
19812
19813 * charset.c (Fdefine_charset_internal): Fix bug for the case of
19814 re-defining a charset. If the charset has :emacs-mule-id, setup
19815 emacs_mule_bytes.
19816 (Fmake_char): If CODE1 is nil, use the minimum code of the charset.
19817
198182008-02-01 Kenichi Handa <handa@m17n.org>
19819
19820 * coding.c (encode_coding_iso_2022, encode_coding_sjis)
19821 (encode_coding_big5, encode_coding_charset): If coding requires safe
19822 encoding, produce a character specified by
19823 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
19824
198252008-02-01 Dave Love <fx@gnu.org>
19826
19827 * xterm.c (XSetIMValues): Declare.
19828
19829 * process.c: Conditionally include sys/wait.h, pty.h.
19830
19831 * print.c (print_object): Fix print format for 64-bit systems.
19832
19833 * keyboard.c (modify_event_symbol): Fix print format for 64-bit systems.
19834
19835 * buffer.c (emacs_strerror): Declare.
19836
19837 * fontset.c (Fclear_face_cache): Declare.
19838 (accumulate_font_info): Comment-out (unused).
19839 (face_for_char, Fset_fontset_font, Ffontset_info): Remove unused
19840 variables.
19841
19842 * character.h (string_escape_byte8): Declare.
19843
19844 * charset.c (load_charset_map, load_charset_map_from_file): Remove
19845 unused vars.
19846 (Fdefine_charset_internal, Fsplit_char, syms_of_charset)
19847 (Fmap_charset_chars): Doc fix.
19848
19849 * coding.c (Vchar_coding_system_table, Qchar_coding_system): Remove.
19850 (Fset_coding_system_priority, Fset_coding_system_priority)
19851 (Fdefine_coding_system_internal): Doc fix.
19852
198532008-02-01 Dave Love <fx@gnu.org>
19854
19855 * s/osf5-0.h (C_SWITCH_SYSTEM) [!__GNUC__]: Remove -nointrinsics.
19856
198572008-02-01 Kenichi Handa <handa@m17n.org>
19858
19859 * character.c (string_escape_byte8): Make multibyte string with
19860 correct size.
19861
19862 * charset.c (Fmake_char): Delete unnecessary code.
19863
198642008-02-01 Kenichi Handa <handa@m17n.org>
19865
19866 * xfns.c (x_encode_text): Allocate coding.destination here, and
19867 call encode_coding_object with dst_object Qnil.
19868
19869 * buffer.c (Fset_buffer_multibyte): Convert 8-bit bytes to
19870 multibyte form correctly.
19871
19872 * fontset.c (fs_load_font): Check fontp->full_name (not fontname)
19873 against Vfont_encoding_alist.
19874
19875 * coding.c (Fdecode_sjis_char): Fix typo (0x7F->0xFF). Fix the
19876 handling of charset list.
19877 (encode_coding_iso_2022): Setup coding->safe_charsets in advance.
19878 (decode_coding_object): Move point to coding->dst_pos before
19879 calling post-read-conversion function.
19880 (encode_coding_object): Give correct arguments to
19881 pre-write-conversion. Ignore the return value of
19882 pre-write-conversion function. Pay attention to the case that
19883 pre-write-conversion changes the current buffer. If dst_object is
19884 Qt, even if coding->src_bytes is zero, allocate at least one byte
19885 to coding->destination.
19886
19887 * coding.h (JIS_TO_SJIS): Fix typo (j1->s1, j2->s2).
19888
19889 * charset.c (Fmake_char): Make it more backward compatible.
19890 (Fmap_charset_chars): Fix docstring.
19891
198922008-02-01 Dave Love <fx@gnu.org>
19893
19894 * coding.c: Doc fixes.
19895 (Fdefine_coding_system_alias): Use names, not symbols, in
19896 coding-system-alist.
19897
198982008-02-01 Kenichi Handa <handa@m17n.org>
19899
19900 * fontset.c (free_realized_fontsets): Call Fclear_face_cache instead
19901 of calling free_realized_face.
19902
199032008-02-01 Yong Lu <lyongu@asia-infonet.com>
19904
19905 * charset.c (read_hex): Don't treat SPC as a comment starter.
19906 (decode_char): If CODE_POINT_TO_INDEX returns -1, always return -1.
19907 (Fdecode_char): Fix typo.
19908
199092008-02-01 Kenichi Handa <handa@m17n.org>
19910
19911 * charset.h (struct charset): New member `code_space_mask'.
19912
19913 * coding.c (coding_set_source): Delete the local variable beg_byte.
19914 (encode_coding_charset, Fdefine_coding_system_internal):
19915 Delete the local variable charset.
19916 (Fdefine_coding_system_internal): Setup
19917 attrs[coding_attr_charset_valids] correctly.
19918
19919 * charset.c (CODE_POINT_TO_INDEX): Utilize `code_space_mask'
19920 member to check if CODE is valid or not.
19921 (Fdefine_charset_internal): Initialize `code_space_mask' member.
19922 (encode_char): Before calling CODE_POINT_TO_INDEX, check if CODE
19923 is within the range of charset->min_code and carset->max_code.
19924
199252008-02-01 Dave Love <fx@gnu.org>
19926
19927 * syntax.h (syntax_temp) [!__GNUC__]: Declare.
19928
19929 * dispextern.h (generate_ascii_font): Fix return type.
19930
19931 * xfaces.c (generate_ascii_font): Fix arg declaration.
19932
19933 * coding.c (coding_inherit_eol_type)
19934 (Fset_terminal_coding_system_internal)
19935 (Fset_safe_terminal_coding_system_internal): Fix arg declarations.
19936
199372008-02-01 Kenichi Handa <handa@m17n.org>
19938
19939 * coding.c (decode_coding_charset, encode_coding_charset): Handle
19940 multiple charsets correctly.
19941
199422008-02-01 Kenichi Handa <handa@m17n.org>
19943
19944 * search.c (boyer_moore): Fix handling of multibyte character
19945 translation.
19946
19947 * xdisp.c (display_mode_element): When the variable `elt' is
19948 changed, update `this' and `lisp_string'.
19949
199502008-02-01 Kenichi Handa <handa@m17n.org>
19951
19952 * buffer.c (Fset_buffer_multibyte): Fix 8-bit char handling.
19953
19954 * callproc.c (Fcall_process): Be sure to give the current buffer
19955 to decode_coding_c_string. Update PT and PT_BYTE after the insertion.
19956
19957 * charset.c (struct charset_map_entries): New struct.
19958 (load_charset_map): Rename from parse_charset_map. New args
19959 entries and n_entries. Change caller.
19960 (load_charset_map_from_file): Rename from load_charset_map.
19961 Change caller. New arg control_flag. Call load_charset_map at
19962 the tail.
19963 (load_charset_map_from_vector): New function.
19964 (Fdefine_charset_internal): Setup charset.compact_codes_p.
19965 (encode_char): If the charset is compact, change a character index
19966 to a code point.
19967
19968 * coding.c (coding_alloc_by_making_gap): Check the case that the
19969 source and destination are the same correctly.
19970 (decode_coding_raw_text): Set coding->consumed_char and
19971 coding->consumed to 0.
19972 (produce_chars): If coding->chars_at_source is nonzero, update
19973 coding->consumed_char and coding->consumed before calling
19974 alloc_destination.
19975 (Fdefine_coding_system_alias): Register ALIAS in
19976 Vcoding_system_alist.
19977 (syms_of_coding): Define `no-conversion' coding system at the tail.
19978
19979 * fileio.c (Finsert_file_contents): Set coding_system instead of
19980 val. If the current buffer is multibyte, always call
19981 decode_coding_gap.
19982
19983 * xfaces.c (try_font_list): Give higher priority to fontset's
19984 family than face's family.
19985
199862008-02-01 Kenichi Handa <handa@m17n.org>
19987
19988 * callproc.c (Fcall_process): Be sure to give the current buffer
19989 to decode_coding_c_string.
19990
19991 * xfaces.c (try_font_list): Give a family specified in a fontset
19992 higher priority than a family specified in a face.
19993
199942008-02-01 Kenichi Handa <handa@m17n.org>
19995
19996 * fileio.c (Finsert_file_contents): Fix calculation of `inserted'.
19997 Fix arguments to insert_from_buffer.
19998
19999 * xdisp.c (display_mode_element): Fix calculation of `bytepos'.
20000
200012008-02-01 Kenichi Handa <handa@m17n.org>
20002
20003 * coding.c (produce_chars): Set the variable `multibytep' correctly.
20004 (decode_coding_gap): Set coding->dst_multibyte correctly.
20005
200062008-02-01 Kenichi Handa <handa@m17n.org>
20007
20008 * coding.c (encode_coding_utf_8): Initialize produced_chars to 0.
20009 (decode_coding_utf_16): Fix converting high and low bytes to code-point.
20010 (encode_coding_utf_16): Substitute coding->default_char for
20011 non-Unicode characters.
20012 (decode_coding): Don't call record_insert here.
20013 (setup_coding_system): Initialize `surrogate' of
20014 coding->spec.utf_16 to 0.
20015 (EMIT_ONE_BYTE): Fix for multibyte case.
20016
20017 * insdel.c (insert_from_gap): Call record_insert.
20018
200192008-02-01 Kenichi Handa <handa@m17n.org>
20020
20021 * casefiddle.c (casify_region): Fix multibyte case.
20022
20023 * character.c (c_string_width): Add return type `int'.
20024 (char_string_with_unification): Delete arg ADVANCED.
20025
20026 * character.h (CHAR_VALID_P): Don't call CHARACTERP.
20027 (CHAR_STRING): Adjust for the change of char_string_with_unification.
20028 (CHAR_STRING_ADVANCE): Make it do-while statement.
20029
20030 * chartab.c (sub_char_table_set_range): Optimize for the case
20031 DEPTH == 3. Add workaround code for a GCC optimization bug.
20032
20033 * charset.c (parse_charset_map): Remove an unused variable.
20034
20035 * coding.c: Delete unused variables.
20036
20037 * fileio.c (Finsert_file_contents): Set coding_system to Qnil
20038 earlier. If inserted is zero and the coding system doesn't
20039 require flushing, don't call decode_coding_gap.
20040
20041 * syntax.h (SET_RAW_SYNTAX_ENTRY): Don't call make_number.
20042
200432008-02-01 Kenichi Handa <handa@m17n.org>
20044
20045 The following changes are for using Unicode as an internal
20046 character model, and use UTF-8 format for buffer/string
20047 representation.
20048
20049 * .gdbinit (xchartable): Adjust for the change of char table structure.
20050 (xsubchartable, xcoding, xcharset, xcurbuf): New commands.
20051
20052 * Makefile.in (obj): Add character.o and chartab.o.
20053 (lisp, shortlisp): Remove utf-8.elc.
20054 (*.o): For many files, change dependency on charset.h to
20055 character.h, and add dependency on character.h.
20056 (character.o, chartab.o): New targets.
20057
20058 * abbrev.c, bytecode.c, casefiddle.c, cmds.c, dispnew.c, doc.c:
20059 * doprnt.c, dosfns.c, frame.c, marker.c, minibuf.c, msdos.c:
20060 * w16select.c, w32bdf.c, w32console.c: Include "character.h" instead
20061 of "charset.h".
20062
20063 * dired.c, filelock.c: Include "character.h".
20064
20065 * alloc.c: Include "character.h" instead of "charset.h".
20066 (Fmake_char_table, make_sub_char_table): Move to chartab.c.
20067 (syms_of_alloc): Remove defsubr for Smake_char_table.
20068
20069 * buffer.c: Include "character.h" instead of "charset.h", don't
20070 include "coding.h".
20071 (Fset_buffer_multibyte): Adjust for UTF-8.
20072
20073 * buffer.h: EXFUN Fbuffer_live_p.
20074
20075 * callproc.c: Include "character.h" instead of "charset.h".
20076 (Fcall_process): Big change for the new code-conversion APIs.
20077
20078 * casetab.c: Include "character.h" instead of "charset.h".
20079 (set_canon, set_identity, shuffle): Adjust for the new
20080 map_char_table spec.
20081 (init_casetab_once): Call CHAR_TABLE_SET instead of directly
20082 accessing the char table structure.
20083
20084 * chartab.c: New file that implements char table.
20085
20086 * category.c: Include "character.h".
20087 (copy_category_entry): New function.
20088 (copy_category_table): Call map_char_table and copy_category_entry.
20089 (Fmake_category_table): Initialize all top-level slots.
20090 (char_category_set): New function.
20091 (modify_lower_category_set): Delete.
20092 (Fmodify_category_entry): Call char_table_ref_and_range.
20093
20094 * category.h (CATEGORY_SET): Just call char_category_set.
20095
20096 * ccl.c: Include "character.h".
20097 (Qccl, Qcclp): New variables.
20098 (CCL_WRITE_CHAR): Alway treat the arg CH as a character even if
20099 it's less than 256.
20100 (CCL_WRITE_MULTIBYTE_CHAR): Delete.
20101 (CCL_WRITE_STRING, CCL_READ_CHAR): Adjust for the change of SRC
20102 and DST type.
20103 (ccl_driver): Change types of argument, adjust code accordingly.
20104 (Fccl_execute, Fccl_execute_on_string): Adjust for the change of
20105 ccl_driver.
20106 (syms_of_ccl): Intern and staticpro Qccl and Qcclp.
20107
20108 * ccl.h (struct ccl_program): Delete members eol_type and multibyte.
20109 New members src_multibyte, dst_multibyte, consumed, and produced.
20110 (struct ccl_spec): Delete members decoder and encoder. New member ccl.
20111 (CODING_SPEC_CCL_PROGRAM): New macro.
20112 (ccl_driver): Update prototype.
20113 (Qccl, Qcclp, Fccl_program_p): Extern them.
20114 (CHECK_CCL_PROGRAM): New macro.
20115
20116 * character.c, character.h, chartab.c: New files.
20117
20118 * charset.c: Mostly re-written. Move character and multibyte sequence
20119 handling codes to character.c.
20120
20121 * charset.h: Mostly re-written. Move character and multibyte sequence
20122 handling codes to character.h.
20123
20124 * coding.c, coding.h: Mostly re-written.
20125
20126 * composite.c: Include "character.h" instead of "charset.h".
20127 (CHAR_WIDTH): Move to character.h.
20128 (HASH_KEY, HASH_VALUE): Delete.
20129
20130 * composite.h (enum composition_method): Change order of enumeration
20131 symbols.
20132
20133 * data.c: Include "character.h" instead of "charset.h".
20134 (Faref): Call CHAR_TABLE_REF for a char table.
20135 (Faset): Call CHAR_TABLE_SET for a char table.
20136
20137 * dispextern.h (free_realized_face, check_face_attribytes)
20138 (generate_ascii_font): Extern them.
20139 (free_realized_multibyte_face): Delete extern.
20140
20141 * disptab.h (DISP_CHAR_VECTOR): Adjust for the change of char
20142 table structure.
20143
20144 * editfns.c: Include "character.h" instead of "charset.h".
20145 (Fchar_to_string): Always call CHAR_STRING.
20146
20147 * emacs.c (main): Call init_charset_once, init_charset,
20148 syms_of_chartab, and syms_of_character.
20149
20150 * fileio.c: Include "character.h" instead of "charset.h".
20151 (Finsert_file_contents): Big change for the new code-conversion API.
20152 (choose_write_coding_system, Fwrite_region): Likewise.
20153 (build_annotations_2): Delete.
20154 (e_write): Big change for the new code-conversion API.
20155
20156 * fns.c: Include "character.h" instead of "charset.h".
20157 (copy_sub_char_table): Move to chartab.c.
20158 (Fcopy_sequence): Call copy_char_table for a char table.
20159 (concat): Delete codes calling count_multibyte.
20160 (string_char_to_byte, string_byte_to_char): Adjust for the new
20161 multibyte form.
20162 (internal_equal): Adjust for the change of char table structure.
20163 (Fchar_table_subtype, Fchar_table_parent, Fset_char_table_parent)
20164 (Fchar_table_extra_slot, Fset_char_table_extra_slot)
20165 (Fchar_table_range, Fset_char_table_range, Fset_char_table_default)
20166 (char_table_translate, optimize_sub_char_table)
20167 (Foptimize_char_table, map_char_table, Fmap_char_table): Move to
20168 chartab.c.
20169 (char_table_ref_and_index): Delete.
20170 (HASH_KEY, HASH_VALUE): Move to lisp.h.
20171 (Fmd5): Call preferred_coding_system instead of accessing
20172 Vcoding_category_list. Adjust for the new code-conversion API.
20173 (syms_of_fns): Move defsubr for char table related functions to
20174 chartab.c.
20175
20176 * fontset.c: Mostly re-written.
20177
20178 * fontset.h (struct font_info): Change type of the member encoding_type.
20179 (enum FONT_SPEC_INDEX): New enum.
20180 (fontset_font_pattern, fs_load_font): Update prototype.
20181 (FS_LOAD_FONT): Adjust for the change of fs_load_font.
20182
20183 * indent.c: Include "character.h" instead of "charset.h".
20184 (MULTIBYTE_BYTES_WIDTH): Call CHAR_WIDTH instead of WIDTH_BY_CHAR_HEAD.
20185
20186 * insdel.c: Include "character.h" instead of "charset.h".
20187 (copy_text): Don't refer to Vnonascii_translation_table.
20188 (insert_from_gap): New function.
20189
20190 * keyboard.c: Include "character.h" instead of "charset.h".
20191 (command_loop_1): Never call direct_output_forward_char before
20192 a non-ASCII character.
20193 (read_char): If Vkeyboard_translate_table is a char table, always
20194 translate a character.
20195
20196 * keymap.c: Include "character.h".
20197 (store_in_keymap): Handle the case that IDX is a cons.
20198 (Fdefine_key): Handle the case that KEY is a cons and the car part
20199 is also a cons (range).
20200 (push_key_description): Adjust for the new character code.
20201 (describe_vector): Call describe_char_table for a char table.
20202 (describe_char_table): New function.
20203
20204 * keymap.h (describe_char_table): Extern it.
20205
20206 * lisp.h (enum pvec_type): New member PVEC_SUB_CHAR_TABLE.
20207 (XSUB_CHAR_TABLE, XSETSUB_CHAR_TABLE): New macros.
20208 (CHAR_TABLE_ORDINARY_SLOTS, CHAR_TABLE_SINGLE_BYTE_SLOTS)
20209 (SUB_CHAR_TABLE_ORDINARY_SLOTS, SUB_CHAR_TABLE_STANDARD_SLOTS):
20210 Delete.
20211 (CHAR_TABLE_REF, CHAR_TABLE_SET): Adjust for the new char table
20212 structure.
20213 (CHAR_TABLE_TRANSLATE): Just call char_table_translate.
20214 (CHARTAB_SIZE_BITS_0, CHARTAB_SIZE_BITS_1, CHARTAB_SIZE_BITS_2)
20215 (CHARTAB_SIZE_BITS_3): New macros.
20216 (chartab_size): Extern it.
20217 (struct Lisp_Char_Table): Re-design.
20218 (struct Lisp_Sub_Char_Table): New structure.
20219 (HASH_KEY, HASH_VALUE): Move from fns.c.
20220 (CHARACTERBITS): Define as 22.
20221 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Adjust for the above change.
20222 (SUB_CHAR_TABLE_P): Check PVEC_CHAR_TABLE.
20223 (GC_SUB_CHAR_TABLE_P): New macro.
20224 (Fencode_coding_string, Fdecode_coding_string): Update EXFUN.
20225 (code_convert_string_norecord): Deleted extern.
20226 (init_character_once, syms_of_character, init_charset)
20227 (syms_of_composite, Qeq, Fmakehash, insert_from_gap): Extern them.
20228
20229 * lread.c: Include "character.h".
20230 (read_multibyte): New arg NBYTES.
20231 (read_escape): Change the meaning of returned *BYTEREP.
20232 (to_multibyte): Delete.
20233 (read1): Adjust the handling of char table and string.
20234
20235 * print.c: Include "character.h" instead of "charset.h".
20236 (print_string): Convert 8-bit raw bytes to octal form by
20237 string_escape_byte8.
20238 (print_object): Adjust for the new multibyte form. Print 8-bit
20239 raw bytes always in octal form. Handle sub char table correctly.
20240
20241 * process.c: Include "character.h" instead of "charset.h".
20242 (read_process_output, send_process): Adjust for the new
20243 code-conversion API.
20244
20245 * puresize.h (BASE_PURESIZE): Increase.
20246
20247 * regex.c: Include "character.h" instead of "charset.h".
20248 (BYTE8_TO_CHAR, CHAR_BYTE8_P) [not emacs]: New dummy macros.
20249 (regex_compile): Accept a range whose starting and ending
20250 character have different leading bytes.
20251 (analyse_first): Adjust for the above change.
20252
20253 * search.c: Include "character.h" instead of "charset.h".
20254 (search_buffer, boyer_moore): Adjust for the new multibyte form.
20255 (Freplace_match): Adjust for the change of multibyte_char_to_unibyte.
20256
20257 * syntax.c: Include "character.h" instead of "charset.h".
20258 (syntax_parent_lookup): Delete.
20259 (Fmodify_syntax_entry): Accept a cons as CHAR.
20260 (skip_chars): Adjust for the new multibyte form.
20261 (init_syntax_once): Call char_table_set_range instead of directly
20262 accessing the structure of a char table.
20263
20264 * syntax.h (SET_RAW_SYNTAX_ENTRY): Call CHAR_TABLE_SET.
20265 (SYNTAX_ENTRY_FOLLOW_PARENT): Delete macro.
20266 (SET_RAW_SYNTAX_ENTRY_RANGE): New macro.
20267 (SYNTAX_ENTRY_INT): Call CHAR_TABLE_REF.
20268
20269 * term.c: Include "buffer.h" and "character.h".
20270 (encode_terminal_code, write_glyphs): Adjust for the new
20271 code-conversion API.
20272 (produce_glyphs): Call CHAR_WIDTH instead of CHARSET_WIDTH.
20273
20274 * w32term.c (x_new_font): Adjust for the change of FS_LOAD_FONT.
20275
20276 * xdisp.c: Include "character.h".
20277 (get_next_display_element): Adjust for the new multibyte form.
20278 (disp_char_vector): Adjust for the new char table structure.
20279 (decode_mode_spec_coding): Adjust for the new structure of
20280 coding system.
20281 (decode_mode_spec): Adjust for the new code-conversion API.
20282
20283 * xfaces.c: Include "character.h" instead of "charset.h".
20284 (load_face_font): Adjust for the change of choose_face_font and
20285 FS_LOAD_FONT.
20286 (generate_ascii_font): New function.
20287 (set_lface_from_font_name): Adjust for the change of FS_LOAD_FONT.
20288 (set_font_frame_param): Adjust for the change of choose_face_font.
20289 (free_realized_face): Make it public.
20290 (free_realized_faces_for_fontset): Rename from
20291 free_realized_multibyte_face. Free also faces realized for ASCII.
20292 (choose_face_font): Change arguments. Adjust for the change of
20293 fontset_font_pattern and FS_LOAD_FONT.
20294
20295 * xfns.c: Include "character.h".
20296 (x_encode_text): Adjust for the new code-conversion API.
20297
20298 * xselect.c: Don't include "charset.h".
20299 (selection_data_to_lisp_data): Adjust for the new code conversion API.
20300
20301 * xterm.c: Include "character.h".
20302 (x_encode_char): New argument CHARSET. Change caller.
20303 (x_get_char_face_and_encoding, x_get_glyph_face_and_encoding):
20304 Call ENCODE_CHAR instead of SPLIT_CHAR.
20305 (x_produce_glyphs): Don't check Vnonascii_translation_table Call
20306 CHAR_WIDTH instead of CHARSET_WIDTH.
20307 (XTread_socket): Adjust for the new code-conversion API.
20308 (x_new_font): Adjust for the change of FS_LOAD_FONT.
20309 (x_load_font): Adjust for the change of struct font.
20310
203112008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
20312
20313 * xfaces.c (face_at_buffer_position): Remove unused vars.
20314
203152008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
20316
20317 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR):
20318 Fix overflow checking.
20319
203202008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
20321
20322 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR, ccl_driver):
20323 Cancel previous change.
20324
203252008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
20326
20327 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when
20328 ccl->eight_bit_control. Fix check for buffer overflow.
20329 (CCL_WRITE_MULTIBYTE_CHAR): Fix check for buffer overflow.
20330 (ccl_driver): Initialize extra_bytes to 0.
20331
203322008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
20333
20334 * keyboard.c (make_ctrl_char): If C is a multibyte character, just
20335 return it ORed with ctrl_modifier.
20336
203372008-01-29 Miles Bader <miles@gnu.org>
20338
20339 * macterm.c (XTset_vertical_scroll_bar): Fix merge mistake.
20340
203412008-01-28 Jason Rumney <jasonr@gnu.org>
20342
20343 * w32.c (stat): Don't double check for networked drive.
20344
203452008-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
20346
20347 * window.c (run_window_configuration_change_hook): New function.
20348 Code extracted from set_window_buffer. Set the selected frame.
20349 (set_window_buffer): Use it.
20350 * window.h (run_window_configuration_change_hook): Declare.
20351 * dispnew.c (change_frame_size_1): Use it instead of set-window-buffer.
20352
20353 * keyboard.c (read_char): Yet another int/Lisp_Object mixup (YAILOM).
20354
203552008-01-27 Dan Nicolaescu <dann@ics.uci.edu>
20356
20357 * Makefile.in: Remove references to unused macros.
20358
203592008-01-26 Eli Zaretskii <eliz@gnu.org>
20360
20361 * w32.c (g_b_init_get_sid_sub_authority)
20362 (g_b_init_get_sid_sub_authority_count): New static variables.
20363 (GetSidSubAuthority_Proc, GetSidSubAuthorityCount_Proc): New typedefs.
20364 (get_sid_sub_authority, get_sid_sub_authority_count): New functions.
20365 (init_user_info): Use them to retrieve uid and gid.
20366 Use 500/513, the Windows defaults, as Administrator's uid/gid.
20367 (fstat): Use pw_uid and pw_gid from the_passwd structure for
20368 st_uid and st_gid of the file.
20369
203702008-01-26 Jason Rumney <jasonr@gnu.org>
20371
20372 * w32.c (logon_network_drive): New function.
20373 (stat): Use it.
20374
203752008-01-26 Chong Yidong <cyd@stupidchicken.com>
20376
20377 * xdisp.c (pos_visible_p): Handle the case where charpos falls on
20378 invisible text covered with an ellipsis.
20379
203802008-01-25 Richard Stallman <rms@gnu.org>
20381
20382 * xdisp.c (redisplay_window): Run Qwindow_text_change_functions and
20383 jump back to beginning. Move some other initializations after that.
20384 (Qwindow_text_change_functions, Vwindow_text_change_functions):
20385 New variables.
20386 (syms_of_xdisp): Init them.
20387
20388 * keyboard.c (read_char): Restore echo_message_buffer after redisplay.
20389
20390 * buffer.c (reset_buffer_local_variables):
20391 Implement `permanent-local-hook'.
20392 (Qpermanent_local_hook): New variable.
20393 (syms_of_buffer): Init and staticpro it.
20394
203952008-01-25 Michael Albinus <michael.albinus@gmx.de>
20396
20397 * dbusbind.c (xd_retrieve_arg): Pacify GCC on x86_64 GNU/Linux.
20398
203992008-01-25 Thien-Thi Nguyen <ttn@gnuvola.org>
20400
20401 * fns.c (Fclrhash): Return TABLE.
20402
204032008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20404
20405 * macterm.c (x_scroll_bar_create): Initialize bar->redraw_needed_p.
20406 (XTset_vertical_scroll_bar): Redraw scroll bar if bar->redraw_needed_p
20407 is set even without positional changes.
20408 (x_scroll_bar_clear): Set bar->redraw_needed_p.
20409
20410 * macterm.h (struct scroll_bar): New member `redraw_needed_p'.
20411
204122008-01-23 Jason Rumney <jasonr@gnu.org>
20413
20414 * xterm.c (handle_one_xevent): Revert to counting chars not bytes.
20415
20416 * w32term.c (w32_read_socket) <WM_CHAR>: Decode characters outside
20417 the unicode range available in MULE by locale-coding-system.
20418 Improve dbcs lead byte detection. Set event timestamp and modifiers
20419 earlier.
20420
204212008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20422
20423 * mac.c (mac_emacs_pid) [MAC_OSX]: New variable.
20424 [MAC_OSX] (init_mac_osx_environment): Initialize it.
20425 [MAC_OSX] (mac_try_close_socket) [SELECT_USE_CFSOCKET]: Return 0
20426 when used on child processes.
20427
204282008-01-21 Michael Albinus <michael.albinus@gmx.de>
20429
20430 * dbusbind.c (Fdbus_method_return_internal): Rename from
20431 Fdbus_method_return.
20432 (Fdbus_unregister_object): Move to dbus.el.
20433 (Fdbus_call_method, Fdbus_method_return_internal)
20434 (Fdbus_send_signal): Improve debug messages.
20435
204362008-01-20 Martin Rudalics <rudalics@gmx.at>
20437
20438 * undo.c (undo_inhibit_record_point): New variable.
20439 (syms_of_undo): Initialize it.
20440 (record_point): Don't record point when undo_inhibit_record_point
20441 is set.
20442
204432008-01-19 Stefan Monnier <monnier@iro.umontreal.ca>
20444
20445 * process.c (list_processes_1): Don't use SCHARS on a nil buffer name.
20446
20447 * xdisp.c (Qauto_hscroll_mode): New var.
20448 (syms_of_xdisp): Initialize it.
20449 (hscroll_window_tree): Use it to lookup `auto-hscroll-mode' in each
20450 window's buffer.
20451 (hscroll_windows): Don't check automatic_hscrolling_p here.
20452
20453 * window.c (set_window_buffer): Don't unnecessarily reset hscroll and
20454 vscroll if we're setting window-buffer to the value it already has.
20455
204562008-01-18 Dan Nicolaescu <dann@ics.uci.edu>
20457
20458 * m/intel386.h: Remove references to XENIX.
20459
204602008-01-17 Andreas Schwab <schwab@suse.de>
20461
20462 * m/amdx86-64.h (START_FILES, LIB_STANDARD): Use HAVE_LIB64_DIR
20463 instead of HAVE_X86_64_LIB64_DIR.
20464 * m/ibms390x.h (START_FILES, LIB_STANDARD): Likewise.
20465
204662008-01-17 Glenn Morris <rgm@gnu.org>
20467
20468 * m/ibms390x.h (START_FILES, LIB_STANDARD): Adjust value according
20469 to HAVE_X86_64_LIB64_DIR.
20470
204712008-01-16 Dan Nicolaescu <dann@ics.uci.edu>
20472
20473 * s/irix3-3.h:
20474 * s/irix4-0.h:
20475 * s/386-ix.h:
20476 * s/domain.h:
20477 * s/hpux9-x11r4.h:
20478 * s/hpux9shxr4.h: Remove files for systems no longer supported.
20479
20480 * sysdep.c: Remove code containing references to symbols defined
20481 by unsupported systems.
20482
204832008-01-16 Glenn Morris <rgm@gnu.org>
20484
20485 * coding.c (select-safe-coding-system-function): Doc fix.
20486
204872008-01-15 Glenn Morris <rgm@gnu.org>
20488
20489 * config.in: Revert 2008-01-13 change: this is a generated file.
20490
204912008-01-13 Tom Tromey <tromey@redhat.com>
20492
20493 * lisp.h: Fix typo.
20494
204952008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
20496
20497 * m/sequent-ptx.h:
20498 * m/sequent.h:
20499 * s/ptx.h:
20500 * s/ptx4-2.h:
20501 * s/ptx4.h: Remove files for systems no longer supported.
20502
20503 * callproc.c (Fcall_process): Fix previous change.
20504
205052008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
20506
20507 * unexsunos4.c: Remove file, system not supported anymore.
20508
20509 * m/mips.h:
20510 * m/intel386.h:
20511 * callproc.c:
20512 * config.in:
20513 * ecrt0.c:
20514 * emacs.c:
20515 * fileio.c:
20516 * frame.c:
20517 * getpagesize.h:
20518 * keyboard.c:
20519 * lread.c:
20520 * process.c:
20521 * puresize.h:
20522 * sysdep.c:
20523 * systty.h:
20524 * syswait.h:
20525 * unexec.c:
20526 * xdisp.c:
20527 * alloc.c: Remove code containing references to symbols defined by
20528 unsupported systems.
20529
205302008-01-11 Kenichi Handa <handa@ni.aist.go.jp>
20531
20532 * coding.c (detect_coding_mask): Fix previous change.
20533
205342008-01-09 Kenichi Handa <handa@ni.aist.go.jp>
20535
20536 * coding.c (detect_coding_iso2022): New arg
20537 latin_extra_code_state. Allow Latin extra codes only
20538 when *latin_extra_code_state is nonzero.
20539 (detect_coding_mask): If there is a NULL byte, detect the encoding
20540 as UTF-16 or binary. If Latin extra codes exist, detect the
20541 encoding as ISO-2022 only when there's no other proper encoding is
20542 found.
20543
205442008-01-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20545
20546 * frame.c (Fmake_terminal_frame): Use #ifdef MAC_OS8 instead of
20547 #ifdef MAC_OS.
20548
205492008-01-08 Richard Stallman <rms@gnu.org>
20550
20551 * fileio.c (Ffile_name_directory, Fexpand_file_name): Doc fixes.
20552
205532008-01-06 Nick Roberts <nickrob@snap.net.nz>
20554
20555 * keyboard.c (parse_menu_item): Don't enclose key bindings on
20556 menu bar in parentheses.
20557
205582008-01-06 Dan Nicolaescu <dann@ics.uci.edu>
20559
20560 * m/7300.h:
20561 * m/acorn.h:
20562 * m/alliant-2800.h:
20563 * m/alliant.h:
20564 * m/alliant1.h:
20565 * m/alliant4.h:
20566 * m/altos.h:
20567 * m/amdahl.h:
20568 * m/apollo.h:
20569 * m/att3b.h:
20570 * m/aviion-intel.h:
20571 * m/aviion.h:
20572 * m/celerity.h:
20573 * m/clipper.h:
20574 * m/cnvrgnt.h:
20575 * m/convex.h:
20576 * m/cydra5.h:
20577 * m/delta88k.h:
20578 * m/dpx2.h:
20579 * m/dual.h:
20580 * m/elxsi.h:
20581 * m/f301.h:
20582 * m/gould-np1.h:
20583 * m/gould.h:
20584 * m/i860.h:
20585 * m/ibmps2-aix.h:
20586 * m/ibmrt-aix.h:
20587 * m/ibmrt.h:
20588 * m/irist.h:
20589 * m/is386.h:
20590 * m/isi-ov.h:
20591 * m/mega68.h:
20592 * m/mg1.h:
20593 * m/news-r6.h:
20594 * m/news-risc.h:
20595 * m/news.h:
20596 * m/nh3000.h:
20597 * m/nh4000.h:
20598 * m/ns16000.h:
20599 * m/ns32000.h:
20600 * m/nu.h:
20601 * m/orion.h:
20602 * m/orion105.h:
20603 * m/paragon.h:
20604 * m/pfa50.h:
20605 * m/plexus.h:
20606 * m/pyramid.h:
20607 * m/pyrmips.h:
20608 * m/sh3el.h:
20609 * m/sps7.h:
20610 * m/sr2k.h:
20611 * m/stride.h:
20612 * m/sun1.h:
20613 * m/sun2.h:
20614 * m/sun3-68881.h:
20615 * m/sun3-fpa.h:
20616 * m/sun3-soft.h:
20617 * m/sun3.h:
20618 * m/sun386.h:
20619 * m/symmetry.h:
20620 * m/tad68k.h:
20621 * m/tahoe.h:
20622 * m/targon31.h:
20623 * m/tek4300.h:
20624 * m/tekxd88.h:
20625 * m/tower32.h:
20626 * m/tower32v3.h:
20627 * m/ustation.h:
20628 * m/wicat.h:
20629 * m/xps100.h:
20630 * s/cxux.h:
20631 * s/cxux7.h:
20632 * s/dgux.h:
20633 * s/dgux4.h:
20634 * s/dgux5-4-3.h:
20635 * s/dgux5-4r2.h:
20636 * s/esix.h:
20637 * s/esix5r4.h:
20638 * s/hiuxmpp.h:
20639 * s/hiuxwe2.h:
20640 * s/iris3-5.h:
20641 * s/iris3-6.h:
20642 * s/isc2-2.h:
20643 * s/isc3-0.h:
20644 * s/isc4-0.h:
20645 * s/isc4-1.h:
20646 * s/newsos5.h:
20647 * s/newsos6.h:
20648 * s/osf1.h:
20649 * s/osf5-0.h:
20650 * s/riscix1-1.h:
20651 * s/riscix12.h:
20652 * s/sco4.h:
20653 * s/sco5.h:
20654 * s/sunos4-0.h:
20655 * s/sunos4-1.h:
20656 * s/sunos413.h:
20657 * s/sunos4shr.h:
20658 * s/umax.h:
20659 * s/unipl5-2.h:
20660 * s/xenix.h:
20661 * cxux-crt0.s:
20662 * unexapollo.c:
20663 * unexconvex.c:
20664 * unexenix.c:
20665 * unexsni.c: Remove files for systems no longer supported.
20666
20667 * m/intel386.h: Remove references to unsupported systems.
20668
20669 * w32.c (get_emacs_configuration): Remove reference to i860.
20670
20671 * sysdep.c: Remove dead code.
20672
206732008-01-05 Dan Nicolaescu <dann@ics.uci.edu>
20674
20675 * s/rtu.h:
20676 * m/masscomp.h: Remove files. Platform is obsolete.
20677
206782008-01-04 Michael Albinus <michael.albinus@gmx.de>
20679
20680 * dbusbind.c (Fdbus_method_return): New function.
20681 (xd_read_message): Add the serial number to the event.
20682 (Fdbus_register_method): Activate the function.
20683
206842008-01-03 Stefan Monnier <monnier@iro.umontreal.ca>
20685
20686 * keyboard.c (read_key_sequence): Fix typo.
20687
206882008-01-03 Michael Albinus <michael.albinus@gmx.de>
20689
20690 * dbusbind.c (all): Replace XCAR by CAR_SAFE and XCDR by CDR_SAFE.
20691 (xd_signature, xd_append_arg): Handle element type detection for
20692 empty arrays.
20693 (Fdbus_call_method, Fdbus_send_signal): Undo type casting for
20694 SDATA () calls; this must be solved more general.
20695 (Fdbus_register_signal): Use SBYTES instead of strlen.
20696
206972008-01-03 Magnus Henoch <magnus@zemdatav>
20698
20699 * dbusbind.c (xd_append_arg): Use unsigned char instead of
20700 unsigned int for byte values (necessary for big-endian platform).
20701 (Fdbus_call_method): Handle the case of no returned arguments.
20702
207032007-12-31 Tom Tromey <tromey@redhat.com> (tiny change)
20704
20705 * dbusbind.c (xd_read_message): Use non-static input_event struct.
20706
207072007-12-31 Magnus Henoch <mange@freemail.hu>
20708
20709 * dbusbind.c (xd_signature): Signature of variant is just "v".
20710
207112007-12-30 Michael Albinus <michael.albinus@gmx.de>
20712
20713 * dbusbind.c: Fix several errors and compiler warnings.
20714 Reported by Tom Tromey <tromey@redhat.com>.
20715 (XD_ERROR, XD_DEBUG_MESSAGE)
20716 (XD_DEBUG_VALID_LISP_OBJECT_P): Wrap code with "do ... while (0)".
20717 (xd_append_arg): Part for basic D-Bus types rewritten.
20718 (xd_retrieve_arg): Split implementation of DBUS_TYPE_BYTE and
20719 DBUS_TYPE_(U)INT16. Don't call XD_DEBUG_MESSAGE with "%f" if not
20720 appropriate.
20721 (xd_read_message): Return Qnil. Don't signal an error; it is not
20722 useful during event reading.
20723 (Fdbus_register_signal): Signal an error if the check for
20724 FUNCTIONP fails.
20725 (Fdbus_register_method): New function. The implementation is not
20726 complete, the call of the function signals an error therefore.
20727 (Fdbus_unregister_object): New function, renamed from
20728 Fdbus_unregister_signal. The initial check signals an error, if
20729 the object is not well formed.
20730
207312007-12-30 Richard Stallman <rms@gnu.org>
20732
20733 * textprop.c (get_char_property_and_overlay):
20734 Signal error if POSITION is out of range in a buffer.
20735
207362007-12-29 Martin Rudalics <rudalics@gmx.at>
20737
20738 * w32fns.c (Fx_create_frame): Make copy of frame parameters
20739 because the original parameters are in pure storage now.
20740
207412007-12-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20742
20743 * xdisp.c (phys_cursor_in_rect_p): Check if cursor is in fringe area.
20744
207452007-12-22 Eli Zaretskii <eliz@gnu.org>
20746
20747 * callint.c (syms_of_callint) <command-history>: Add reference to
20748 history-length in the doc string.
20749
207502007-12-17 Jason Rumney <jasonr@gnu.org>
20751
20752 * w32fns.c (w32_wnd_proc) <WM_KEYDOWN>: Cast char to unsigned
20753 before passing as wParam.
20754
207552007-12-22 Michael Albinus <michael.albinus@gmx.de>
20756
20757 * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_BYTE,
20758 DBUS_TYPE_INT16, DBUS_TYPE_UINT16, DBUS_TYPE_INT64,
20759 DBUS_TYPE_UINT64, DBUS_TYPE_DOUBLE and DBUS_TYPE_SIGNATURE.
20760 Return float when DBUS_TYPE_INT32 or DBUS_TYPE_UINT32 do not fit
20761 as number.
20762 (Fdbus_call_method): Fix docstring.
20763
207642007-12-21 Michael Albinus <michael.albinus@gmx.de>
20765
20766 * dbusbind.c (XD_BASIC_DBUS_TYPE, XD_DBUS_TYPE_P, XD_NEXT_VALUE):
20767 New macros.
20768 (XD_SYMBOL_TO_DBUS_TYPE): Rename from XD_LISP_SYMBOL_TO_DBUS_TYPE.
20769 (XD_OBJECT_TO_DBUS_TYPE): Rename from XD_LISP_OBJECT_TO_DBUS_TYPE.
20770 Simplify.
20771 (xd_signature): New function.
20772 (xd_append_arg): Compute also signatures. Major rewrite.
20773 (xd_retrieve_arg): Make debug messages friendly.
20774 (Fdbus_call_method, Fdbus_send_signal): Extend docstring.
20775 Check for signatures of arguments.
20776
207772007-12-19 Michael Albinus <michael.albinus@gmx.de>
20778
20779 * dbusbind.c (QCdbus_type_byte, QCdbus_type_boolean)
20780 (QCdbus_type_int16, QCdbus_type_uint16, QCdbus_type_int32)
20781 (QCdbus_type_uint32, QCdbus_type_int64, QCdbus_type_uint64)
20782 (QCdbus_type_double, QCdbus_type_string, QCdbus_type_object_path)
20783 (QCdbus_type_signature, QCdbus_type_array, QCdbus_type_variant)
20784 (QCdbus_type_struct, QCdbus_type_dict_entry): New D-Bus type symbols.
20785 (XD_LISP_SYMBOL_TO_DBUS_TYPE): New macro.
20786 (XD_LISP_OBJECT_TO_DBUS_TYPE): Add compound types.
20787 (xd_retrieve_value): Remove. Functionality included in ...
20788 (xd_append_arg): New function.
20789 (Fdbus_call_method, Fdbus_send_signal): Apply it.
20790
207912007-12-16 Michael Albinus <michael.albinus@gmx.de>
20792
20793 * dbusbind.c (top): Include <stdio.h>.
20794 (Fdbus_call_method, Fdbus_send_signal): Apply type cast in
20795 dbus_message_new_method_call and dbus_message_new_signal.
20796 (Fdbus_register_signal): Rename unique_name to uname.
20797 Check handler for FUNCTIONP instead of CHECK_SYMBOL. Handle case of
20798 non-existing unique name. Fix typos in matching rule. Return an
20799 object which is useful in Fdbus_unregister_signal.
20800 (Fdbus_unregister_signal): Reimplementation, in order to remove
20801 only the corresponding entry.
20802 (Vdbus_registered_functions_table): Change the order of entries.
20803 Apply these changes in xd_read_message and Fdbus_register_signal.
20804
208052007-12-16 Andreas Schwab <schwab@suse.de>
20806
20807 * fileio.c (Finsert_file_contents): Fix overflow check to not
20808 depend on undefined integer overflow.
20809
208102007-12-14 Jason Rumney <jasonr@gnu.org>
20811
20812 * w32term.c (w32_read_socket): Use MULTIBYTE_CHAR_KEYSTROKE_EVENT
20813 for characters above 127.
20814
208152007-12-13 Jason Rumney <jasonr@gnu.org>
20816
20817 * w32fns.c (w32_wnd_proc, Fw32_reconstruct_hot_key): Range check
20818 before dereferencing array.
20819 (lookup_vk_code): Remove zero comparison.
20820
208212007-12-14 Michael Albinus <michael.albinus@gmx.de>
20822
20823 * dbusbind.c (xd_retrieve_value, xd_retrieve_arg)
20824 (Fdbus_call_method, Fdbus_send_signal, xd_read_message):
20825 Use `unsigned int' instead of `uint'.
20826 (xd_read_message, Fdbus_register_signal): Split expressions into
20827 multiple lines before operators "&&" and "||", according to the
20828 GNU Coding Standards.
20829
208302007-12-14 Eli Zaretskii <eliz@gnu.org>
20831
20832 * dispextern.h (WINDOWS_NT): Fix incorrect spelling of WINDOWSNT.
20833
208342007-12-12 Juri Linkov <juri@jurta.org>
20835
20836 * buffer.c (Frename_buffer): In interactive spec replace
20837 `read-buffer' with `read-string' that uses `buffer-name-history'
20838 as history, and the current buffer's name as default.
20839
208402007-12-10 Stefan Monnier <monnier@iro.umontreal.ca>
20841
20842 * keyboard.c (Fcommand_execute): Call Qcall_interactively instead of
20843 manipulating the backtrace manually.
20844 (make_lispy_event): Merge the ASCII and MULTIBYTE cases.
20845 (struct backtrace, backtrace_list): Remove.
20846 (command_loop_1): Remove dead var `no_direct'.
20847
20848 * buffer.c (reset_buffer_local_variables): If permanent_too is 0, also
20849 preserve non-built-in buffer-local variables.
20850 (Fkill_all_local_variables): Don't re-create&re-set permanent
20851 buffer-local variables.
20852
208532007-12-09 Juri Linkov <juri@jurta.org>
20854
20855 * buffer.c (Frename_buffer): Change interactive spec from "s" to
20856 Lisp code that uses `read-buffer' with current buffer as default.
20857
208582007-12-08 Michael Albinus <michael.albinus@gmx.de>
20859
20860 * dbusbind.c (xd_read_message): Generate an event for every
20861 registered handler. There might be several handlers registered
20862 for the same signal.
20863 (Fdbus_register_signal): Don't overwrite a registration for the
20864 same signal. Add a new registration if handlers are different.
20865 (Vdbus_registered_functions_table): Rework doc string.
20866
208672007-12-07 Michael Albinus <michael.albinus@gmx.de>
20868
20869 * dbusbind.c (Fdbus_get_unique_name, xd_read_message)
20870 (Fdbus_register_signal): Use DBUS_MAXIMUM_NAME_LENGTH and
20871 DBUS_MAXIMUM_MATCH_RULE_LENGTH for string lengths.
20872 (Fdbus_call_method, Fdbus_send_signal, Fdbus_register_signal):
20873 Unify argument lists.
20874 (xd_read_message, Fdbus_register_signal): Reorder and extend event
20875 arguments and hash table keys. Use unique name for service.
20876 (Fdbus_unregister_signal): Remove checks.
20877 (Vdbus_registered_functions_table): Fix doc string.
20878
208792007-12-05 Magnus Henoch <mange@freemail.hu>
20880
20881 * process.c (make_process): Initialize pty_flag to 0.
20882
208832007-12-05 Jason Rumney <jasonr@gnu.org>
20884
20885 * image.c (xbm_load) [WINDOWSNT]: Shuffle the bits of directly
20886 specified XBMs.
20887
208882007-12-05 Richard Stallman <rms@gnu.org>
20889
20890 * xdisp.c (syms_of_xdisp) <scroll-conservatively>: Doc fix.
20891
208922007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20893
20894 * mac.c (cfsockets_for_select) [MAC_OSX && SELECT_USE_CFSOCKET]:
20895 New variable.
20896 (mac_try_close_socket) [MAC_OSX]: New function.
20897 [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]:
20898 Update cfsockets_for_select. Replace invalid CFRunLoop source.
20899
20900 * sysdep.c (emacs_close) [MAC_OSX && HAVE_CARBON]:
20901 Use mac_try_close_socket.
20902
209032007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20904
20905 * unexmacosx.c (unrelocate): New argument BASE. Use it instead of
20906 reloc_base.
20907 (copy_dysymtab): Compute relocation base here.
20908 (rebase_reloc_address) [__ppc64__]: New function.
20909 (copy_dysymtab) [__ppc64__]: Use it if relocation base needs to be
20910 changed.
20911
209122007-12-05 Jason Rumney <jasonr@gnu.org>
20913
20914 * w32proc.c (sys_spawnve): Quote args with wildcards.
20915
209162007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20917
20918 * unexmacosx.c (copy_data_segment): Also copy __gcc_except_tab and
20919 __objc_* sections.
20920 (unrelocate) [_LP64]: Set relocation base to address of data segment.
20921
209222007-12-05 Michael Albinus <michael.albinus@gmx.de>
20923
20924 * dbusbind.c (xd_read_message): Return value is a Lisp_Object.
20925 Move check for Vdbus_registered_functions_table to
20926 xd_read_queued_messages.
20927 (xd_read_queued_messages): Protect xd_read_message calls by
20928 internal_condition_case_1.
20929
209302007-12-04 Michael Albinus <michael.albinus@gmx.de>
20931
20932 * dbusbind.c (QCdbus_system_bus, QCdbus_session_bus): Rename from
20933 Qdbus_system_bus and Qdbus_session_bus, respectively.
20934 (Vdbus_intern_symbols): Remove.
20935 (Vdbus_registered_functions_table): New hash table.
20936 (XD_SYMBOL_INTERN_SYMBOL): Remove.
20937 (xd_read_message, Fdbus_register_signal, Fdbus_unregister_signal):
20938 Rewrite in order to manage registered functions by hash table
20939 Vdbus_registered_functions_table.
20940
209412007-12-03 Jan Djärv <jan.h.d@swipnet.se>
20942
20943 * xterm.c: Update URL to Window Manager Specification in comment.
20944
209452007-12-02 Michael Albinus <michael.albinus@gmx.de>
20946
20947 * config.in (HAVE_DBUS): Add.
20948
20949 * Makefile.in (HAVE_DBUS): Add D-Bus definitions if defined.
20950 (ALL_CFLAGS): Add ${DBUS_CFLAGS}.
20951 (obj): Add $(DBUS_OBJ).
20952 (LIBES): Add $(DBUS_LIBS).
20953 (dbusbind.o): New target.
20954
20955 * dbusbind.c: New file.
20956
20957 * emacs.c (main): Call syms_of_dbusbind when HAVE_DBUS is defined.
20958
20959 * keyboard.c: All D-Bus related code is wrapped by "#ifdef HAVE_DBUS".
20960 (Qdbus_event): New Lisp symbol.
20961 (kbd_buffer_get_event, make_lispy_event): Handle DBUS_EVENT.
20962 (gobble_input): Call xd_read_queued_messages, reading D-Bus messages.
20963 (keys_of_keyboard): Define dbus-event.
20964
20965 * termhooks.h (event_kind): Add DBUS_EVENT when HAVE_DBUS is defined.
20966
209672007-12-01 Richard Stallman <rms@gnu.org>
20968
20969 * search.c (syms_of_search) <inhibit-changing-match-data>: Doc fix.
20970
209712007-11-30 Jason Rumney <jasonr@gnu.org>
20972
20973 * w32console.c (w32con_ins_del_lines, scroll_line): Clip to window.
20974 (w32con_reset_terminal_modes): Clear screen buffer.
20975 (w32_face_attributes): Don't use color indexes that are out of range.
20976 Only reverse the default colors.
20977
20978 * xfaces.c (map_tty_color, tty_color_name): Remove special case for
20979 WINDOWSNT.
20980
20981 * w32console.c, w32term.h (vga_stdcolor_name): Remove.
20982
209832007-11-29 Jason Rumney <jasonr@gnu.org>
20984
20985 * w32console.c: Leave HAVE_WINDOW_SYSTEM defined.
20986 (w32_face_attributes): Use Vtty_defined_color_alist to determine
20987 if the terminal colors are initialized.
20988 (unspecified_fg, unspecified_bg): Remove unused declarations.
20989
209902007-11-29 Andreas Schwab <schwab@suse.de>
20991
20992 * keyboard.c (apply_modifiers): Fix typo.
20993
209942007-11-29 Richard Stallman <rms@gnu.org>
20995
20996 * keymap.c (Fcurrent_local_map): Doc fix.
20997
209982007-11-28 Petr Salinger <Petr.Salinger@seznam.cz> (tiny change)
20999
21000 * s/gnu-kfreebsd.h: New file.
21001
210022007-11-28 Stefan Monnier <monnier@iro.umontreal.ca>
21003
21004 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer):
21005 Don't cast redundantly.
21006
21007 * keyboard.c (KEY_TO_CHAR): New macro.
21008 (parse_modifiers, apply_modifiers): Accept integer arguments.
21009 (read_key_sequence): Use them to unify the "shift->unshift" mapping
21010 for chars and symbol keys.
21011 After doing such remapping, apply function-key-map again.
21012
210132007-11-27 Dan Nicolaescu <dann@ics.uci.edu>
21014
21015 * Makefile.in (SOME_MACHINE_LISP): Remove VMS files, they are not
21016 compiled anymore.
21017
210182007-11-26 Andreas Schwab <schwab@suse.de>
21019
21020 * process.c (list_processes_1): Fix indentation level of the
21021 command column.
21022
210232007-11-23 Andreas Schwab <schwab@suse.de>
21024
21025 * editfns.c (Fformat): Handle %c specially since it requires the
21026 argument to be of type int.
21027
210282007-11-23 Markus Triska <markus.triska@gmx.at>
21029
21030 * emacs.c (main): Call init_editfns before init_process, since
21031 init_process sets Vprocess_connection_type depending on OS release.
21032
210332007-11-22 Stefan Monnier <monnier@iro.umontreal.ca>
21034
21035 * data.c (do_symval_forwarding): Use same code as in find_symbol_value.
21036 (find_symbol_value): Use do_symval_forwarding.
21037
21038 * data.c (set_internal): Set the value in the `cons-cell' (for
21039 Buffer_Local_values) not only for frame-local variables.
21040
210412007-11-22 Andreas Schwab <schwab@suse.de>
21042
21043 * data.c (Fnumber_to_string): Add cast when passing EMACS_INT
21044 values to sprintf.
21045 * keymap.c (Fsingle_key_description): Likewise.
21046 * print.c (print_object): Likewise.
21047
210482007-11-22 Jan Djärv <jan.h.d@swipnet.se>
21049
21050 * gtkutil.c (update_frame_tool_bar): Don't call x-gtk-map-stock if
21051 file for image is nil.
21052
210532007-11-22 Dan Nicolaescu <dann@ics.uci.edu>
21054
21055 * term.c: Include stdarg.h.
21056 (fatal): Implement using varargs.
21057 * lisp.h (fatal): Add argument types. (Restore 2005-09-30 change).
21058
210592007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
21060
21061 * lisp.h (struct Lisp_Buffer_Objfwd): Add a `slottype' field.
21062 * data.c (store_symval_forwarding): Get type from buffer_objfwd.
21063 Update call to buffer_slot_type_mismatch.
21064 * buffer.h (buffer_local_types, PER_BUFFER_TYPE): Remove.
21065 (buffer_slot_type_mismatch): Update.
21066 * buffer.c (buffer_local_types): Remove.
21067 (buffer_slot_type_mismatch): Get the symbol and type as arguments.
21068 (defvar_per_buffer): Set the type in the buffer_objfwd.
21069
210702007-11-21 Jason Rumney <jasonr@gnu.org>
21071
21072 * w32bdf.c (w32_init_bdf_font, w32_BDF_to_x_font):
21073 CreateFileMapping returns NULL on failure.
21074
210752007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
21076
21077 * search.c (Fset_match_data): Remove the `evaporate' feature.
21078 (unwind_set_match_data): Don't use the `evaporate' feature.
21079
210802007-11-21 Jason Rumney <jasonr@gnu.org>
21081
21082 * dispnew.c (init_display) [WINDOWSNT]: Hardcode terminal_type.
21083
21084 * w32console.c (w32con_write_glyphs): Remove unused variables.
21085
210862007-11-20 Dan Nicolaescu <dann@ics.uci.edu>
21087
21088 * macterm.c (mac_term_init): Call add_keyboard_wait_descriptor.
21089
21090 * s/darwin.h (MULTI_KBOARD): Remove.
21091
21092 * macfns.c (x_create_tip_frame, Fx_create_frame)
21093 (x_create_tip_frame): Don't deal with MULTI_KBOARD.
21094
210952007-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
21096
21097 * buffer.c (Fbuffer_local_value): Remove redundant test.
21098 (swap_out_buffer_local_variables): Swap out binding in `buffer' rather
21099 than in `current-buffer' to match the comment.
21100 Do the swap using swap_in_global_binding.
21101
21102 * data.c (store_symval_forwarding, set_internal):
21103 * eval.c (specbind): Remove dead code.
21104
21105 * coding.c (detect_coding, Fupdate_coding_systems_internal):
21106 * fns.c (Fmd5): Use find_symbol_value rather than SYMBOL_VALUE
21107 Since we do not want to see internal Lisp_*fwd objects here.
21108
211092007-11-18 Jan Djärv <jan.h.d@swipnet.se>
21110
21111 * sysdep.c (init_system_name): Use getaddrinfo if available.
21112
21113 * xterm.c (x_scroll_bar_set_handle, x_scroll_bar_handle_click)
21114 (x_scroll_bar_note_movement): start, end, with, height in struct
21115 scroll_bar are integers and not Lisp_Object, so remove XINT for them.
21116
211172007-11-17 Dan Nicolaescu <dann@ics.uci.edu>
21118
21119 * puresize.h (BASE_PURESIZE): Increase to 1190000.
21120
211212007-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
21122
21123 * buffer.h (struct buffer): Move `undo_list' back to before `name'.
21124 This undoes Richard's change of 14-Oct-2002.
21125
21126 * alloc.c (allocate_other_vector):
21127 * lisp.h (allocate_other_vector): Remove.
21128
21129 * window.c (struct save_window_data): Move non-lisp data to the end
21130 and make it `int' rather than Lisp_Object.
21131 (Fcurrent_window_configuration): Use ALLOCATE_PSEUDOVECTOR.
21132 Done wrap/unwrap integer values.
21133 (Fset_window_configuration, compare_window_configurations):
21134 Update use of fields to their new types.
21135
21136 * xterm.h (struct scroll_bar): Only use Lisp_Object for lisp data.
21137 Turn integer fields into `int'. Merge x_window_low and x_window_high.
21138 (SCROLL_BAR_PACK, SCROLL_BAR_UNPACK, SCROLL_BAR_X_WINDOW)
21139 (SET_SCROLL_BAR_X_WINDOW): Remove.
21140 (SCROLL_BAR_X_WIDGET, SET_SCROLL_BAR_X_WIDGET):
21141 Access the new x_window field directly.
21142 * xterm.c (x_scroll_bar_create): Use a pseudovector.
21143 Don't wrap/unwrap integers into Lisp_Objects.
21144 (XTset_vertical_scroll_bar, x_scroll_bar_handle_click)
21145 (x_scroll_bar_report_motion):
21146 Don't wrap/unwrap integers into Lisp_Objects.
21147 (x_term_init): Use SDATA.
21148 (x_window_to_scroll_bar, x_create_toolkit_scroll_bar)
21149 (x_scroll_bar_set_handle, x_scroll_bar_remove)
21150 (XTset_vertical_scroll_bar, x_scroll_bar_expose)
21151 (x_scroll_bar_report_motion, x_scroll_bar_clear):
21152 * xfns.c (x_set_background_color):
21153 * gtkutil.c (xg_create_scroll_bar, xg_set_toolkit_scroll_bar_thumb):
21154 Access the new x_window field directly.
21155
21156 * alloc.c (ALLOCATE_PSEUDOVECTOR): Move to lisp.h.
21157 (allocate_pseudovector): Make non-static.
21158
21159 * lisp.h (enum pvec_type): New tag PVEC_OTHER.
21160 (allocate_pseudovector): Declare.
21161 (ALLOCATE_PSEUDOVECTOR): Move from alloc.c.
21162
211632007-11-15 Andreas Schwab <schwab@suse.de>
21164
21165 * editfns.c (Fformat): Correctly format EMACS_INT values.
21166 Also take precision into account when formatting an integer.
21167
21168 * keyboard.c (Fevent_symbol_parse_modifiers): Fix declaration.
21169
211702007-11-15 Stefan Monnier <monnier@iro.umontreal.ca>
21171
21172 * keyboard.c (Fevent_symbol_parse_modifiers): New function.
21173 (syms_of_keyboard): Defsubr it.
21174
21175 * data.c (swap_in_global_binding): Fix longstanding bug where
21176 store_symval_forwarding was not called with the right second argument,
21177 thus causing objfwd-ing from being dropped.
21178
211792007-11-14 Juanma Barranquero <lekktu@gmail.com>
21180
21181 * macfns.c (Fx_create_frame, Fx_display_pixel_width)
21182 (Fx_display_pixel_height, Fx_display_planes)
21183 (Fx_display_color_cells, Fx_server_max_request_size)
21184 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
21185 (Fx_display_visual_class, Fx_display_save_under):
21186 * w32fns.c (Fx_create_frame, Fx_display_pixel_width)
21187 (Fx_display_pixel_height, Fx_display_planes)
21188 (Fx_display_color_cells, Fx_server_max_request_size)
21189 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
21190 (Fx_display_mm_height, Fx_display_mm_width)
21191 (Fx_display_backing_store, Fx_display_visual_class)
21192 (Fw32_select_font, Fx_display_save_under):
21193 * xfns.c (Fx_create_frame, Fx_display_pixel_width)
21194 (Fx_display_pixel_height, Fx_display_planes)
21195 (Fx_display_color_cells, Fx_server_max_request_size)
21196 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
21197 (Fx_display_save_under): Fix typos in docstrings.
21198
211992007-11-14 Juanma Barranquero <lekktu@gmail.com>
21200
21201 * w32fns.c (Fw32_registered_hot_keys): Don't return the nil values
21202 corresponding to deleted entries; they are an implementation detail.
21203 (gray_bitmap_width, gray_bitmap_height, gray_bitmap_bits):
21204 Remove variables.
21205 (w32_pass_extra_mouse_buttons_to_system, w32_strict_fontnames)
21206 (w32_pass_multimedia_buttons_to_system, w32_strict_painting)
21207 (Vw32_charset_info_alist, w32_to_x_color, w32_init_class)
21208 (w32_createscrollbar, w32_createwindow, my_post_msg, w32_get_modifiers)
21209 (w32_grabbed_keys, cancel_all_deferred_msgs): Make static.
21210 (Fw32_define_rgb_color, Fw32_load_color_file)
21211 (syms_of_w32fns) <w32-pass-multimedia-buttons-to-system>:
21212 Fix typos in docstrings.
21213 (Fx_server_version): Reflow docstring.
21214 (Fw32_shell_execute): Doc fixes.
21215
212162007-11-13 Juanma Barranquero <lekktu@gmail.com>
21217
21218 * w32fns.c (Fw32_register_hot_key): Don't try to register hot key
21219 if w32_parse_hot_key returned nil.
21220
212212007-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
21222
21223 * xdisp.c (load_overlay_strings): Fix copy&paste typo.
21224
212252007-11-09 Jason Rumney <jasonr@gnu.org>
21226
21227 * s/ms-w32.c (USE_TOOLKIT_SCROLL_BARS): Define.
21228
21229 * w32term.c (w32_scroll_bar_handle_click): Use SCROLL_BAR_CLICK_EVENT.
21230
21231 * keyboard.c (discard_mouse_events, make_lispy_event) [WINDOWSNT]:
21232 Remove W32_SCROLL_BAR_CLICK_EVENT.
21233
21234 * termhooks.h (enum event_kind) [WINDOWSNT]: Likewise.
21235 Add MULTIMEDIA_KEY_EVENT.
21236
21237 * keyboard.c (lispy_function_keys) [WINDOWSNT]: Add more keys.
21238 (lispy_multimedia_keys) [WINDOWSNT]: New array.
21239 (make_lispy_event) [WINDOWSNT]: Use it to translate
21240 MULTIMEDIA_KEY_EVENT.
21241
21242 * w32term.h (WM_APPCOMMAND): Define if not already.
21243 (GET_APPCOMMAND_LPARAM): Likewise.
21244
21245 * w32term.c (w32_read_socket): Generate MULTIMEDIA_KEY_EVENT from
21246 WM_APPCOMMAND.
21247
21248 * w32fns.c (w32_pass_multimedia_buttons_to_system): New user option.
21249 (syms_of_w32fns): Export and initialize it.
21250 (w32_wnd_proc): Pass WM_APPCOMMAND on to w32_read_socket.
21251
212522007-11-09 Chong Yidong <cyd@stupidchicken.com>
21253
21254 * dispextern.h (struct it): Don't define OVERLAY_STRING_CHUNK_SIZE
21255 twice.
21256
21257 * xdisp.c (handle_face_prop): Fix last change.
21258
212592007-11-09 Richard Stallman <rms@gnu.org>
21260
21261 * xdisp.c (handle_face_prop): Test for strings that came from overlays,
21262 not just for after-strings and before-strings.
21263 Call face_for_overlay_string and pass the overlay to it.
21264 (handle_display_prop): Determine whether property came from an overlay.
21265 Pass OVERLAY arg to handle_single_display_spec.
21266 (handle_single_display_spec): New arg OVERLAY sets it->from_overlay.
21267 (load_overlay_strings): Fill in it->string_overlays.
21268 (get_overlay_strings_1, push_it, pop_it): Handle it->from_overlays.
21269
21270 * xfaces.c (face_for_overlay_string): Function renamed from
21271 face_at_buffer_position_no_overlays, and add arg OVERLAY.
21272
21273 * dispextern.h (struct it): New elt string_overlays.
21274 New elt from_overlay, also in stack.
21275 Rearrange a few elements.
21276 (face_for_overlay_string): Decl renamed from
21277 face_at_buffer_position_no_overlays, and add argument.
21278
212792007-11-09 Richard Stallman <rms@gnu.org>
21280
21281 * xdisp.c (handle_face_prop): Use face_at_buffer_position_no_overlays
21282 to get the base face for an overlay string.
21283
21284 * dispextern.h (face_at_buffer_position_no_overlays): Add decl.
21285
21286 * xfaces.c (face_at_buffer_position_no_overlays): New function.
21287
21288 * xdisp.c (handle_stop): Move some code out of loop.
21289
212902007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21291
21292 * macfns.c [USE_ATSUI] (Fmac_atsu_font_face_attributes):
21293 Fix conversion from Lisp object to ATSUFontID.
21294
212952007-11-09 Jason Rumney <jasonr@gnu.org>
21296
21297 * xdisp.c (Fformat_mode_line): Do nothing when noninteractive.
21298
212992007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21300
21301 * unexmacosx.c (unexec_regions_recorder, unexec_regions_merge):
21302 Don't assume regions are aligned to page boundary.
21303 (print_load_command_name): Add LC_UUID if defined.
21304
213052007-11-09 Richard Stallman <rms@gnu.org>
21306
21307 * emacs.c (syms_of_emacs) <installation-directory>: Reflow docstring.
21308
213092007-11-07 Jason Rumney <jasonr@gnu.org>
21310
21311 * s/windows95.h: Remove.
21312
213132007-11-06 Jan Djärv <jan.h.d@swipnet.se>
21314
21315 * gtkutil.c (xg_tool_bar_menu_proxy): Handle GTK_IMAGE_ICON_NAME and
21316 abort with a message on unhandled store_type values.
21317
213182007-11-01 Jan Djärv <jan.h.d@swipnet.se>
21319
21320 * xterm.c, xfns.c, xselect.c, xterm.h, s/msdos.h, s/sco4.h, s/sco5.h:
21321 Remove HAVE_X11R5 and HAVE_X11R4.
21322
213232007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
21324
21325 * Makefile.in: Remove references to sunfns.c and sunfns.o.
21326
213272007-11-01 Johan Bockgård <bojohan@gnu.org>
21328
21329 * macterm.c, w32term.c, xterm.c (x_draw_stretch_glyph_string):
21330 Don't set s->stippled_p here, since it has already been set by
21331 x_set_glyph_string_gc from x_draw_glyph_string.
21332
213332007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
21334
21335 * sunfns.c: Remove file.
21336
21337 * m/sun386.h:
21338 * m/sun2.h:
21339 * m/sparc.h: Remove Sun windows code.
21340
213412007-10-31 Stefan Monnier <monnier@iro.umontreal.ca>
21342
21343 * keyboard.c (syms_of_keyboard): Initialize the initial_kboard.
21344 (init_keyboard): Set current_kboard's window-system to nil.
21345 (tty_read_avail_input): Typo.
21346 * frame.c (make_initial_frame): Don't initialize the initial_kboard.
21347
213482007-10-31 Dan Nicolaescu <dann@ics.uci.edu>
21349
21350 * s/usg5-4.h:
21351 * s/usg5-3.h:
21352 * s/ptx.h:
21353 * m/is386.h:
21354 * m/ibmps2-aix.h:
21355 * Makefile.in: Remove all mentions of X10.
21356
21357 * dispnew.c (syms_of_display): Don't mention version 10.
21358
213592007-10-28 Juanma Barranquero <lekktu@gmail.com>
21360
21361 * makefile.w32-in (OBJ1): Remove abbrev.$(O).
21362 ($(BLD)/abbrev.$(O)): Remove.
21363
213642007-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
21365
21366 Rewrite abbrev.c in Elisp.
21367 * image.c (Qcount): Don't declare as extern.
21368 (syms_of_image): Initialize and staticpro `Qcount'.
21369 * puresize.h (BASE_PURESIZE): Increase for the new abbrev.el functions.
21370 * emacs.c (main): Don't call syms_of_abbrev.
21371 * Makefile.in (obj): Remove abbrev.o.
21372 (abbrev.o): Remove.
21373 * abbrev.c: Remove.
21374
213752007-10-26 Martin Rudalics <rudalics@gmx.at>
21376
21377 * window.c (window_min_size_2): Don't count header-line.
21378
213792007-10-26 Dan Nicolaescu <dann@ics.uci.edu>
21380
21381 * frame.h (struct frame): Move all bit fields after the first bit
21382 field to take advantage of the available space. Group all the
21383 chars together to reduce wasted space due to padding.
21384
213852007-10-26 Juanma Barranquero <lekktu@gmail.com>
21386
21387 * minibuf.c (Fread_minibuffer, Feval_minibuffer): Reflow docstrings.
21388
21389 * alloc.c (spare_memory, stack_copy, stack_copy_size, ignore_warnings)
21390 (Vdead, dont_register_blocks, staticvec, staticidx, interval_block)
21391 (n_interval_blocks, init_strings, check_string_bytes, check_sblock)
21392 (init_float, free_float, n_cons_blocks, init_cons, all_vectors)
21393 (n_vectors, symbol_block, symbol_block_index, symbol_free_list)
21394 (n_symbol_blocks, init_symbol, marker_block, marker_free_list)
21395 (n_marker_blocks, init_marker, valid_pointer_p, make_pure_float)
21396 (last_marked, mark_object_loop_halt): Make static.
21397
21398 * frame.c (syms_of_frame) <delete-frame-functions>:
21399 Fix typo in docstring.
21400
214012007-10-25 Juanma Barranquero <lekktu@gmail.com>
21402
21403 * w32.c (init_environment): Fix tiny memory leak.
21404 (w32_get_resource): Remove unused variable `ok'.
21405
214062007-10-25 Stefan Monnier <monnier@iro.umontreal.ca>
21407
21408 Make `window-system' into a keyboard-local variable (rather than
21409 frame-local as done originally by multi-tty).
21410
21411 * keyboard.h (struct kboard): Add Vwindow_system.
21412 * keyboard.c (init_kboard): Set a default for Vwindow_system.
21413 (mark_kboards): Mark Vwindow_system.
21414
21415 * dispnew.c (syms_of_display) <window-system>: Declare terminal-local.
21416 (init_display): Don't set the obsolete `window-system' frame-param.
21417
21418 * xterm.c (x_term_init):
21419 * w32term.c (w32_create_terminal):
21420 * term.c (init_tty): Set Vwindow_system.
21421 * macterm.c (mac_create_terminal): Set a keyboard (missing piece of the
21422 multi-tty merge maybe?), copied from w32term.c. Set Vwindow_system.
21423
21424 * xfns.c (Fx_create_frame, x_create_tip_frame):
21425 * w32fns.c (Fx_create_frame, x_create_tip_frame):
21426 * macfns.c (Fx_create_frame):
21427 Don't set the obsolete `window-system' frame-param.
21428
21429 * frame.h (Qwindow_system): Remove.
21430 * frame.c (Qwindow_system): Remove. In `syms_of_frame' as well.
21431 (Fmake_terminal_frame): Don't set obsolete `window-system' frame-param.
21432
214332007-10-24 Richard Stallman <rms@gnu.org>
21434
21435 * frame.c (x_figure_window_size): For fullscreen case,
21436 set USPosition | PPosition without clobbering rest of window_prompting.
21437
21438 * keyboard.c (Fcurrent_idle_time): Doc fix.
21439
21440 * print.c (Fwith_output_to_temp_buffer): Doc fix.
21441
214422007-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
21443
21444 * process.c (unwind_request_sigio): Only define if __ultrix__.
21445
21446 * callproc.c (child_setup): Remove spurious *.
21447
21448 * lisp.h (Fget_text_property): Declare.
21449 (have_menus_p): Declare it here rather than in sys-dep header files.
21450 * macterm.h (have_menus_p):
21451 * msdos.h (have_menus_p):
21452 * xterm.h (have_menus_p): Remove.
21453
21454 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
21455 (Fmake_variable_frame_local): Just check the variable's const-ness
21456 rather than checking nil or t.
21457
214582007-10-22 Jason Rumney <jasonr@gnu.org>
21459
21460 * w32fns.c: Include math.h.
21461 (w32_abort): Declaration moved to nt/config.nt.
21462
21463 * s/ms-w32.h (HAVE_STDLIB_H): Define.
21464 (abort): Redefinition moved to nt/config.nt.
21465
21466 * m/windowsnt.h: Remove.
21467
214682007-10-22 Juanma Barranquero <lekktu@gmail.com>
21469
21470 * emacs.c (Fdump_emacs): Fix typo in message.
21471 (syms_of_emacs) <kill-emacs-hook>: Fix typo in docstring.
21472 <installation-directory>: Reflow docstring.
21473
214742007-10-22 Juri Linkov <juri@jurta.org>
21475
21476 * minibuf.c: Allow minibuffer default to be a list of default values.
21477 With empty input use the first element of this list as returned default.
21478 (string_to_object)
21479 (read_minibuf_noninteractive): If defalt is cons, set val to its car.
21480 (read_minibuf): If defalt is cons, set histstring to its car.
21481 (Fread_string): If default_value is cons, set val to its car.
21482 (Fread_buffer): If def is cons, use its car.
21483 (Fcompleting_read): If defalt is cons, set val to its car.
21484
214852007-10-21 Michael Albinus <michael.albinus@gmx.de>
21486
21487 * fileio.c (Fcopy_file): Call file name handler with preserve_uid_gid.
21488
214892007-10-20 Juanma Barranquero <lekktu@gmail.com>
21490
21491 * doc.c (Fdocumentation): Check for advice in all cases.
21492
214932007-10-19 Chong Yidong <cyd@stupidchicken.com>
21494
21495 * Makefile.in [HAVE_LIBRESOLV]: Add -lresolv to linker flags.
21496
214972007-10-19 Richard Stallman <rms@gnu.org>
21498
21499 * doc.c (Fdocumentation): Check for and handle an advised function.
21500
215012007-10-19 Juanma Barranquero <lekktu@gmail.com>
21502
21503 * process.c (Fset_process_filter): Doc fix.
21504
215052007-10-18 Stefan Monnier <monnier@iro.umontreal.ca>
21506
21507 * keyboard.c (read_key_sequence): Undo a change introduced by multi-tty
21508 which caused key-translation-map to applied repeatedly (thus breaking
21509 double-mode).
21510
215112007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
21512
21513 * xselect.c (x_own_selection, x_handle_selection_clear)
21514 (x_clear_frame_selections):
21515 * w32menu.c (list_of_panes, list_of_items):
21516 * w32fns.c (w32_color_map_lookup, Fx_create_frame, Fx_display_list):
21517 * textprop.c (validate_plist, interval_has_all_properties)
21518 (interval_has_some_properties, interval_has_some_properties_list)
21519 (add_properties, text_property_list):
21520 * process.c (Fget_buffer_process, list_processes_1, status_notify):
21521 * minibuf.c (Fassoc_string):
21522 * macselect.c (x_own_selection, x_clear_frame_selections)
21523 (Fx_disown_selection_internal):
21524 * keymap.c (Fcommand_remapping, where_is_internal, describe_map_tree):
21525 Use CONSP rather than !NILP and XC[AD]R rather than Fc[ad]r.
21526
215272007-10-17 Chong Yidong <cyd@stupidchicken.com>
21528
21529 * process.c: Link to libs for calling res_init() if available.
21530 (Fmake_network_process): Call res_init() before getaddrinfo or
21531 gethostbyname, if possible.
21532
215332007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
21534
21535 * lread.c (read1): Set pvectype for char_tables.
21536
21537 * lisp.h (XMISCANY, XMARKER, XINTFWD, XBOOLFWD, XOBJFWD, XOVERLAY)
21538 (XBUFFER_OBJFWD, XBUFFER_LOCAL_VALUE, XKBOARD_OBJFWD, XSAVE_VALUE):
21539 Add type checks.
21540 (SOME_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP): Remove.
21541
21542 * alloc.c (free_misc): Use XMISCTYPE.
21543 (live_misc_p, gc_sweep): Use Lisp_Misc_Any.
21544
215452007-10-17 Glenn Morris <rgm@gnu.org>
21546
21547 * minibuf.c (Qcompletion_ignore_case): New Lisp_Object.
21548 (syms_of_minibuf): Add Qcompletion_ignore_case.
21549 * dired.c (Qcompletion_ignore_case): Change to external.
21550 (syms_of_dired) [VMS]: Remove Qcompletion_ignore_case.
21551 * fileio.c (Qcompletion_ignore_case): New external Lisp_Object.
21552 (Fread_file_name): Use it rather than intern'ing.
21553
21554 * coding.c (Qcompletion_ignore_case): New external Lisp_Object.
21555 (Fread_coding_system): Ignore case of user input.
21556
215572007-10-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21558
21559 * xdisp.c (handle_display_prop): Ignore display specs after
21560 replacing one when string text is being replaced.
21561 (handle_single_display_spec): Pretend as if characters with display
21562 property haven't been consumed only when buffer text is being replaced.
21563
215642007-10-16 Stefan Monnier <monnier@iro.umontreal.ca>
21565
21566 * xfns.c (Fx_create_frame, Fx_display_list):
21567 * window.c (window_fixed_size_p, enlarge_window)
21568 (shrink_window_lowest_first):
21569 * macterm.c (init_font_name_table):
21570 * macfns.c (Fx_create_frame, Fx_display_list):
21571 * lread.c (close_load_descs):
21572 * keyboard.c (read_char_x_menu_prompt):
21573 * fns.c (Fmember, Fmemql, Fdelete, Fset_char_table_parent):
21574 * coding.c (code_convert_region_unwind): Test the type of an object
21575 rather than just !NILP before extracting data from it.
21576
21577 * alloc.c (Fpurecopy): Set the pvec tag on pseudo vectors.
21578
21579 * lisp.h (enum Lisp_Misc_Type): Del Lisp_Misc_Some_Buffer_Local_Value.
21580 (XMISCANY): New macro.
21581 (XMISCTYPE): Use it.
21582 (struct Lisp_Misc_Any): New type.
21583 (union Lisp_Misc): Use it.
21584 (struct Lisp_Buffer_Local_Value): Add `local_if_set' bit.
21585 * data.c (Fboundp, store_symval_forwarding, swap_in_global_binding)
21586 (find_symbol_value, set_internal, default_value, Fset_default)
21587 (Fmake_variable_buffer_local, Fmake_local_variable)
21588 (Fkill_local_variable, Fmake_variable_frame_local, Flocal_variable_p)
21589 (Flocal_variable_if_set_p, Fvariable_binding_locus):
21590 The SOME_BUFFER_LOCAL_VALUEP distinction is replaced by local_if_set.
21591 * alloc.c (allocate_buffer): Set the size and tag.
21592 (allocate_misc, mark_maybe_object, mark_object, survives_gc_p):
21593 Use XMISCANY.
21594 (die): Follow the GNU convention for error messages.
21595 * print.c (print_object): SOME_BUFFER_LOCAL_VALUEP -> local_if_set.
21596 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Don't set the
21597 tag any more.
21598 (set_buffer_internal_1):
21599 * frame.c (store_frame_param):
21600 * eval.c (specbind):
21601 * xdisp.c (select_frame_for_redisplay): Drop SOME_BUFFER_LOCAL_VALUEP.
21602
21603 * doc.c (Fsnarf_documentation): Simplify.
21604
216052007-10-14 Juanma Barranquero <lekktu@gmail.com>
21606
21607 * w32term.c (w32_font_is_double_byte, my_create_scrollbar): Make static.
21608 (syms_of_w32term) <w32-enable-unicode-output>: Fix typo in docstring.
21609
216102007-10-14 Stefan Monnier <monnier@iro.umontreal.ca>
21611
21612 * buffer.c (Fmake_indirect_buffer): Set the buffer's tag.
21613
216142007-10-14 Juanma Barranquero <lekktu@gmail.com>
21615
21616 * eval.c (do_autoload): Don't save autoloads.
21617
21618 * data.c (Ffset): Save autoload of the function being set.
21619
216202007-10-07 John Paul Wallington <jpw@pobox.com>
21621
21622 * xfns.c (x_create_tip_frame): Set the `display-type' frame
21623 parameter before setting up faces.
21624
216252007-10-13 Eli Zaretskii <eliz@gnu.org>
21626
21627 * ccl.c (Fregister_code_conversion_map):
21628 * keyboard.c (append_tool_bar_item): Reformat last change.
21629
21630 * lisp.h (eabs): Rename from `abs'. All callers changed.
21631
216322007-10-05 Dmitry Antipov <dmantipov@yandex.ru>
21633
21634 * buffer.c (add_overlay_mod_hooklist):
21635 * ccl.c (Fregister_ccl_program, Fregister_code_conversion_map):
21636 * fontset.c (make_fontset):
21637 * keyboard.c (GROW_RAW_KEYBUF, menu_bar_items, menu_bar_item)
21638 (append_tool_bar_item):
21639 * macmenu.c (grow_menu_items):
21640 * w32menu.c (grow_menu_items):
21641 * xmenu.c (grow_menu_items): Use larger_vector.
21642
216432007-10-13 Eli Zaretskii <eliz@gnu.org>
21644
21645 * msdos.c (dos_rawgetc): Undo last change (there's no ``leaving
21646 selected frame'' on MSDOS).
21647
216482007-10-12 Martin Rudalics <rudalics@gmx.at>
21649
21650 * frame.c (Qexplicit_name): New variable.
21651 (x_report_frame_params): Report it in parameter alist.
21652 (syms_of_frame): Intern and staticpro it.
21653
216542007-10-10 Patrick Mahan <mahan@mahan.org> (tiny change)
21655
21656 * macfns.c (x_create_tip_frame): Set terminal for frame.
21657
216582007-10-10 Stefan Monnier <monnier@iro.umontreal.ca>
21659
21660 * frame.c (Qenvironment): Remove.
21661 (syms_of_frame) <Qenvironment>: Don't initialize.
21662 (Fdelete_frame): Don't treat the `environment' param specially.
21663 * frame.h (Qenvironment): Don't declare.
21664 * callproc.c (set_initial_environment): Don't set unused frame param.
21665
21666 * frame.c (Fframe_with_environment): Remove.
21667 (syms_of_frame) <Sframe_with_environment>: Don't declare.
21668
21669 * lisp.h (Fframe_with_environment): Don't declare.
21670
216712007-10-10 Juanma Barranquero <lekktu@gmail.com>
21672
21673 * indent.c (indent_tabs_mode, last_known_column)
21674 (last_known_column_modified): Make static.
21675 (syms_of_indent) <indent-tabs-mode>: Remove redundant info in docstring.
21676
216772007-10-10 Katsumi Yamaoka <yamaoka@jpl.org>
21678
21679 * puresize.h (BASE_PURESIZE): Increase to 1170000.
21680
216812007-10-09 Jason Rumney <jasonr@gnu.org>
21682
21683 * w32term.c (x_set_window_size): Disable code that attempts to tell
21684 Lisp code about a size change before it actually happens.
21685
216862007-10-09 Richard Stallman <rms@gnu.org>
21687
21688 * xdisp.c (handle_invisible_prop): After setting up an ellipsis,
21689 return HANDLED_RETURN.
21690
216912007-10-08 Martin Rudalics <rudalics@gmx.at>
21692
21693 * keyboard.c (kbd_buffer_get_event): Break loop waiting for input
21694 when there's an unread command event.
21695
21696 * frame.c (focus_follows_mouse): Move here from frame.el to allow
21697 window autoselection act appropriately when leaving selected frame.
21698 (syms_of_frame): Initialize focus_follows_mouse.
21699 * frame.h (focus_follows_mouse): Extern it.
21700 * macterm.c (XTread_socket): When focus_follows_mouse is nil
21701 make SELECT_WINDOW_EVENT only if we don't leave the selected frame.
21702 * msdos.c (dos_rawgetc): Likewise.
21703 * w32term.c (w32_read_socket): Likewise.
21704 * xterm.c (handle_one_xevent): Likewise.
21705 * xdisp.c (syms_of_xdisp): In doc-string of
21706 mouse-autoselect-window mention focus-follows-mouse.
21707
217082007-10-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21709
21710 * macterm.c (mac_load_query_font): Fix missing return value.
21711 [USE_CG_DRAWING] (mac_define_fringe_bitmap, mac_destroy_fringe_bitmap):
21712 Add BLOCK_INPUT.
21713
217142007-10-08 Richard Stallman <rms@gnu.org>
21715
21716 * xdisp.c (get_window_cursor_type): Implement documented behavior
21717 for cursor-in-non-selected-windows = t.
21718
217192007-10-08 Jason Rumney <jasonr@gnu.org>
21720
21721 * w32.c (w32_get_resource): Always close registry keys.
21722
217232007-10-08 Jason Rumney <jasonr@gnu.org>
21724
21725 * makefile.w32-in (LIBS): Add COMCTL32.
21726
21727 * w32fns.c (globals_of_w32fns): Init common controls.
21728
217292007-10-08 Richard Stallman <rms@gnu.org>
21730
21731 * image.c (our_memory_buffer): Rename from omfib_buffer.
21732
217332007-10-08 Richard Stallman <rms@gnu.org>
21734
21735 * buffer.c (Foverlays_at): Doc fix.
21736
217372007-10-08 Stefan Monnier <monnier@iro.umontreal.ca>
21738
21739 * fns.c (Fplist_put): Preserve uneven tail data.
21740
217412007-10-08 Peter O'Gorman <bug-gnu-emacs@mlists.thewrittenword.com> (tiny change)
21742
21743 * termhooks.h (enum event_kind): Remove trailing comma.
21744
21745 * frame.h (enum): Remove trailing comma.
21746
217472007-10-08 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
21748
21749 * w32proc.c (delete_child): Don't terminate threads of zombies.
21750
217512007-10-08 Martin Rudalics <rudalics@gmx.at>
21752
21753 * keyboard.h (struct kboard): New elt Vlast_repeatable_command.
21754
21755 * keyboard.c (syms_of_keyboard): Set up new Lisp variable
21756 last-repeatable-command.
21757 (init_kboard): Initialize Vlast_repeatable_command.
21758 (command_loop_1): Set it to real_this_command unless that was
21759 bound to an input event.
21760 (mark_kboards): Mark it.
21761
217622007-10-08 Richard Stallman <rms@gnu.org>
21763
21764 * eval.c (condition-case): Doc fix.
21765
217662007-10-08 Masatake YAMATO <jet@gyve.org>
21767
21768 * xfaces.c (tty_supports_face_attributes_p): Fix code
21769 for LFACE_INVERSE_INDEX and LFACE_BACKGROUND_INDEX; code
21770 was copied and not edited.
21771
217722007-10-09 Stefan Monnier <monnier@iro.umontreal.ca>
21773
21774 Add new `input-decode-map' keymap and use it for terminal
21775 escape sequences.
21776 * keyboard.h (struct kboard): Add Vinput_decode_map.
21777 Remove Vlocal_key_translation_map.
21778 * keyboard.c (read_key_sequence): Add support for input-decode-map.
21779 (init_kboard): Init input-decode-map.
21780 Replace local-key-translation-map back with key-translation-map.
21781 (syms_of_keyboard): Declare input-decode-map.
21782 Remove local-key-translation-map. Update docstrings.
21783 (mark_kboards): Mark Vinput_decode_map.
21784 Don't mark Vlocal_key_translation_map.
21785 * keymap.c (Fdescribe_buffer_bindings): Describe input-decode-map.
21786 Replace local-key-translation-map back with key-translation-map.
21787 * term.c (term_get_fkeys_1, CONDITIONAL_REASSIGN):
21788 Bind in input-decode-map rather than function-key-map.
21789
21790 * lisp.h (XSETPSEUDOVECTOR): Don't set the tag anymore.
21791 This was made redundant by the previous introduction of XSETPVECTYPE.
21792
217932007-10-09 Richard Stallman <rms@gnu.org>
21794
21795 * image.c (free_bitmap_record): Rename from Free_Bitmap_Record.
21796
217972007-09-29 Richard Stallman <rms@gnu.org>
21798
21799 * eval.c (internal_condition_case_2, internal_condition_case_1)
21800 (internal_condition_case): Reenable abort if x_catching_errors ()
21801 to see if that really happens and why.
21802
218032007-10-06 Andreas Schwab <schwab@suse.de>
21804
21805 * fileio.c (Fwrite_region): Ignore EINVAL error from fsync.
21806
218072007-10-04 Juanma Barranquero <lekktu@gmail.com>
21808
21809 * image.c (syms_of_image) <image-types>: Fix typo in docstring.
21810
218112007-10-03 Stefan Monnier <monnier@iro.umontreal.ca>
21812
21813 * frame.h (struct frame): Don't try to GC-mark menu_bar_items_used.
21814
218152007-10-02 Stefan Monnier <monnier@iro.umontreal.ca>
21816
21817 * window.h (struct window):
21818 * window.c (struct save_window_data, struct saved_window):
21819 * termhooks.h (struct terminal):
21820 * process.h (struct Lisp_Process):
21821 * frame.h (struct frame):
21822 * buffer.h (struct buffer):
21823 * lisp.h (struct Lisp_Vector, struct Lisp_Char_Table)
21824 (struct Lisp_Bool_Vector, struct Lisp_Subr, struct Lisp_Hash_Table):
21825 The size field of (pseudo)vectors is now unsigned.
21826 (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Simplify accordingly.
21827
21828 * lisp.h (struct Lisp_Hash_Table): Move non-traced elements at the end.
21829 Turn `count' into an integer.
21830
21831 * fns.c (make_hash_table, hash_put, hash_remove, hash_clear)
21832 (sweep_weak_table, sweep_weak_hash_tables, Fhash_table_count):
21833 * print.c (print_object) <HASH_TABLE_P>: `count' is an int.
21834 * alloc.c (allocate_hash_table): Use ALLOCATE_PSEUDOVECTOR.
21835 (mark_object) <HASH_TABLE_P>: Use mark_vectorlike.
21836
21837 * alloc.c (allocate_pseudovector): New fun.
21838 (ALLOCATE_PSEUDOVECTOR): New macro.
21839 (allocate_window, allocate_terminal, allocate_frame)
21840 (allocate_process): Use it.
21841 (mark_vectorlike): New function.
21842 (mark_object) <FRAMEP, WINDOWP, BOOL_VECTOR_P, VECTORP>: Use it.
21843 (mark_terminals): Use it.
21844 (Fmake_bool_vector, Fmake_char_table, make_sub_char_table)
21845 (Fmake_byte_code): Use XSETPVECTYPE.
21846
21847 * frame.c (Fframe_parameters): Minor simplification.
21848
21849 * insdel.c (adjust_markers_for_insert): Generalize assertion checks.
21850
21851 * marker.c (Fmarker_buffer): Make test for odd case into a failure.
21852
21853 * buffer.c (Fget_buffer_create, init_buffer_once):
21854 * lread.c (defsubr):
21855 * window.c (Fcurrent_window_configuration): Use XSETPVECTYPE.
21856
21857 * lisp.h (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Don't let them be
21858 defined differently in the m/*.h files.
21859 (XCHAR_TABLE, XBOOL_VECTOR): Add assertion checking.
21860 (XSETPVECTYPE): New macro.
21861 (XSETPSEUDOVECTOR): Use it.
21862
21863 * buffer.c (syms_of_buffer) <local-abbrev-table>: Move from abbrev.c.
21864 (DEFVAR_PER_BUFFER, defvar_per_buffer): Move from lisp.h and lread.c.
21865
21866 * lisp.h (defvar_per_buffer, DEFVAR_PER_BUFFER):
21867 * lread.c (defvar_per_buffer):
21868 * abbrev.c (syms_of_abbrev) <local-abbrev-tabl>: Move to buffer.c.
21869
21870 * window.c (candidate_window_p): Only consider as visible frames that
21871 are on the same terminal.
21872
21873 * m/ibms390x.h (MARKBIT): Remove unused macro.
21874
218752007-10-01 Juanma Barranquero <lekktu@gmail.com>
21876
21877 * lread.c (Fload): Fix typo in docstring.
21878
218792007-10-01 Michaël Cadilhac <michael@cadilhac.name>
21880
21881 * floatfns.c (Fexpt): Manually check for overflows, so that a power
21882 of a non-zero value can't yield zero.
21883
218842007-09-29 Stefan Monnier <monnier@iro.umontreal.ca>
21885
21886 * term.c (term_clear_mouse_face, term_mouse_highlight)
21887 (tty_write_glyphs_with_face): Only define is HAVE_GPM.
21888
21889 * print.c (safe_debug_print): Use XHASH.
21890
21891 * lisp.h (DECL_ALIGN, USE_LSB_TAG): Move logic to before definition of
21892 Lisp elements such as tags.
21893 (XHASH): New macro.
21894 (EQ): Use it.
21895 (SREF, SSET, STRING_COPYIN): Use SDATA.
21896 (VOID_TO_LISP, CVOID_TO_LISP, LISP_TO_VOID, LISP_TO_CVOID): Remove.
21897
21898 * alloc.c (mark_terminal): Remove left-over declaration.
21899 (enum mem_type): Replace all vector subtypes -> MEM_TYPE_VECTORLIKE.
21900 (allocate_vectorlike): Remove type argument. Adjust callers.
21901 (live_vector_p, mark_maybe_pointer, valid_lisp_object_p):
21902 Only handle the one remaining MEM_TYPE_VECTORLIKE.
21903
21904 * alloc.c (MALLOC_BLOCK_INPUT, MALLOC_UNBLOCK_INPUT): New macros
21905 to avoid unnecessary BLOCK_INPUTs when SYNC_INPUT is used.
21906 (xmalloc, xrealloc, xfree, lisp_malloc, lisp_free, lisp_align_malloc)
21907 (lisp_align_free, make_interval, allocate_string, allocate_string_data)
21908 (make_float, Fcons, allocate_vectorlike, Fmake_symbol, allocate_misc):
21909 Use them.
21910
21911 * xfaces.c (load_face_font, free_realized_face, clear_face_gcs):
21912 Don't let signal handlers run when a GC is freed but not yet NULL'ed.
21913 (x_free_gc): Remove BLOCK_INPUT since it's now redundant.
21914
219152007-09-28 Dan Nicolaescu <dann@ics.uci.edu>
21916
21917 * Makefile.in (lisp, shortlisp): Delete server.elc, it is not
21918 loaded by default.
21919
219202007-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
21921
21922 * term.c (Fgpm_mouse_start): Don't signal an error if already activated
21923 on this tty.
21924 (Fgpm_mouse_stop): Only deactivate if it was activated on this tty.
21925
21926 * term.c (mouse_face_window): Rename from Qmouse_face_window.
21927 Update all users.
21928 (handle_one_term_event): Use Gpm_DrawPointer.
21929 (Fgpm_mouse_start): Rename from Fterm_open_connection.
21930 Signal errors instead of returning nil. Always return nil.
21931 (Fgpm_mouse_stop): Rename from Fterm_close_connection.
21932 Make it a noop if gpm-mouse was not activated.
21933 (syms_of_term): Update names.
21934
219352007-09-27 Stefan Monnier <monnier@iro.umontreal.ca>
21936
21937 * sysdep.c (narrow_foreground_group, widen_foreground_group): Static.
21938 (init_sys_modes): Check that gpm_tty is the current tty.
21939
21940 * alloc.c (allocate_terminal): Set the vector size to only count the
21941 lisp fields. Initialize those to nil.
21942 (mark_object): Don't treat terminals specially.
21943 (mark_terminal): Remove.
21944 (mark_terminals): Use mark_object instead.
21945
21946 * termhooks.h (struct terminal): Move all Lisp_Object fields traced by
21947 the GC to the beginning.
21948
21949 * indent.h:
21950 * indent.c: Use EMACS_INT for ints coming from Elisp data.
21951
21952 * indent.c (Fmove_to_column): Use EMACS_INT for buffer positions.
21953
219542007-09-25 Jason Rumney <jasonr@gnu.org>
21955
21956 * frame.c (make_terminal_frame): Remove special case for WINDOWSNT.
21957
21958 * w32console.c (create_w32cons_output): Remove.
21959
21960 * term.c (init_tty): Call init_sys_modes on WINDOWSNT also.
21961
21962 * sysdep.c (init_sys_modes): Use set_terminal_modes_hook.
21963 (reset_sys_modes): Use reset_terminal_modes_hook.
21964
219652007-09-24 Stefan Monnier <monnier@iro.umontreal.ca>
21966
21967 * eval.c (do_autoload): Don't output any message.
21968
219692007-09-24 Juri Linkov <juri@jurta.org>
21970
21971 * emacs.c (standard_args): Change priority of "--no-splash"
21972 from 40 to 3. Add "--no-desktop" with the same priority.
21973
219742007-09-23 Dmitry Antipov <dmantipov@yandex.ru>
21975
21976 * alloc.c (gc_sweep): Check cons cell mark bits word by word
21977 and optimize the case where they are all 1.
21978
219792007-09-23 Johannes Weiner <hannes@saeurebad.de>
21980
21981 * lisp.h (abs): Define if not defined.
21982 * keyboard.c, sound.c, w32term.c, xfaces.c, xterm.c:
21983 Don't define `abs', since it's defined in lisp.h.
21984
219852007-09-22 Eli Zaretskii <eliz@gnu.org>
21986
21987 * term.c (DEV_TTY): New macro. Provide a definition for MS-Windows.
21988 (FRAME_TERMCAP_P) [WINDOWSNT]: Don't define to zero.
21989 (Fcontrolling_tty_p, Fresume_tty, dissociate_if_controlling_tty)
21990 (init_tty): Use DEV_TTY instead of "/dev/tty".
21991 [WINDOWSNT]: No need to protect from NAME arg being null.
21992
219932007-09-21 Dan Nicolaescu <dann@ics.uci.edu>
21994
21995 * term.c (Fsuspend_tty): Run suspend-tty-functions before cleaning
21996 up the tty state.
21997
219982007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
21999
22000 * termhooks.h (term_gpm): Delete. Use gpm_tty's NULLness instead.
22001 (gpm_tty): Change its type.
22002 * term.c (term_gpm): Delete. Use gpm_tty's NULLness instead.
22003 (gpm_tty): Change its type and initialize it.
22004 (Fterm_open_connection): Check the frame is indeed a tty.
22005 Use the new gpm_tty.
22006 (Fterm_close_connection): Use the new gpm_tty.
22007 * keyboard.c (tty_read_avail_input): Use the new gpm_tty.
22008 * sysdep.c (init_sys_modes): term_gpm -> gpm_tty.
22009
220102007-09-21 Juanma Barranquero <lekktu@gmail.com>
22011
22012 * w32term.c (x_draw_glyph_string): Use strike_through_color, not
22013 underline_color, to draw strike-through.
22014
220152007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
22016
22017 * lisp.h (allocate_terminal): Declare.
22018
22019 * window.c (candidate_window_p): Consider frames that are being placed
22020 by the user as somewhere between visible and iconified.
22021 (window_loop): Prefer windows on the current frame.
22022 (Fselect_window): Move the use of select-frame to the beginning so we
22023 can just delegate all the work (it'll call us back anyway).
22024
22025 * frame.c (Qdisplay_environment_variable):
22026 * frame.h (Qdisplay_environment_variable): Delete.
22027
22028 * .gdbinit (xbacktrace): Print the arg's address rather than the value
22029 of the first arg, since that value may be a union.
22030
22031 * callproc.c (child_setup, getenv_internal): Use the frame's `display'
22032 parameter rather than Qdisplay_environment_variable. If all else
22033 fails, look for DISPLAY in initial-environment.
22034
220352007-09-21 Glenn Morris <rgm@gnu.org>
22036
22037 * Makefile.in (emacstool): Remove target.
22038 (lisp, shortlisp): Remove termdev.elc.
22039
220402007-09-21 Markus Triska <markus.triska@gmx.at>
22041
22042 * xterm.c (x_delete_display): Compile session management conditionally.
22043
220442007-09-20 Stefan Monnier <monnier@iro.umontreal.ca>
22045
22046 * callproc.c (getenv_internal_1): New function.
22047 (getenv_internal): Use it.
22048 (Fgetenv_internal): Use it. Accept an env-list as optional arg.
22049
22050 * terminal.c (get_terminal): Don't accept ints to represent terminals.
22051 (Fterminal_name, Fterminal_parameters, Fterminal_parameter)
22052 (Fset_terminal_parameter): Work with dead terminals as well.
22053 (Fmodify_terminal_parameters): Remove.
22054
22055 * terminal.c (get_terminal): Handle terminals.
22056 Make sure the terminal returned is live.
22057 (create_terminal): Use allocate_terminal.
22058 (mark_terminals): Move to alloc.c.
22059 (delete_terminal): Use terminal->name as liveness status.
22060 NULL out fields after freeing their contents.
22061 Don't deallocate the object.
22062 (Fframe_terminal): Use FRAME_TERMINAL. Return the terminal object
22063 rather than an int.
22064 (Fterminal_live_p): Accept non-integer arguments.
22065 (Fterminal_list): Return terminal objects rather than an ints.
22066
22067 * alloc.c (enum mem_type): New member for `terminal' objects.
22068 (allocate_terminal): New function.
22069 (mark_maybe_pointer, valid_lisp_object_p, mark_object):
22070 Handle terminals.
22071 (mark_terminal): New fun.
22072 (mark_terminals): Move from terminal.c.
22073
22074 * term.c (get_tty_terminal): Don't treat output_initial specially.
22075 (Fsuspend_tty, Fresume_tty): Use terminal objects rather than ints.
22076 (delete_tty): Use terminal->name as liveness status.
22077
22078 * termhooks.h (struct terminal): Make it into a pseudovector.
22079 Remove `deleted' replaced by checking `name's nullness.
22080
22081 * print.c (print_object): Handle terminals.
22082
22083 * lisp.h (enum pvec_type): New `terminal' pseudovector.
22084 (XTERMINAL, XSETTERMINAL, TERMINALP, GC_TERMINALP): New macros.
22085
22086 * frame.c (make_terminal_frame):
22087 * keyboard.c (tty_read_avail_input):
22088 * w32term.c (x_delete_terminal):
22089 * xfns.c (Fx_create_frame, x_create_tip_frame):
22090 * xterm.c (x_delete_terminal): Use terminal->name as liveness status.
22091
220922007-09-20 Glenn Morris <rgm@gnu.org>
22093
22094 * process.c (Fmake_network_process): Doc fix.
22095
220962007-09-19 Jason Rumney <jasonr@gnu.org>
22097
22098 * dispextern.h (w32_init_fringe, mac_init_fringe): Declare rif argument.
22099
221002007-09-19 Michaël Cadilhac <michael@cadilhac.name>
22101
22102 * coding.c (detect_eol_type, detect_eol_type_in_2_octet_form):
22103 Fix a C warning regarding variable constness.
22104
22105 * xterm.c (handle_one_xevent): Fix a C warning.
22106
221072007-09-18 Jason Rumney <jasonr@gnu.org>
22108
22109 * w32fns.c (Fx_focus_frame): Rename from Fw32_focus_frame.
22110
221112007-09-17 Jan Djärv <jan.h.d@swipnet.se>
22112
22113 * gtkutil.c (gdpy_def): New variable.
22114 (xg_initialize): Initialize gdpy_def.
22115 (xg_display_close): If no other display exists, set gdpy_def to a
22116 new connection.
22117
221182007-09-16 Jan Djärv <jan.h.d@swipnet.se>
22119
22120 * gtkutil.c (xg_get_image_for_pixmap): Always create a GdkPixbuf
22121 when we have no file name for the icon.
22122 (xg_tool_bar_expose_callback): Remove.
22123 (xg_create_tool_bar): Don't connect expose signal to
22124 xg_tool_bar_expose_callback.
22125 (xg_get_file_with_chooser): Move GCPRO1 after declarations.
22126
221272007-09-16 Andreas Schwab <schwab@suse.de>
22128
22129 * alloc.c (reset_malloc_hooks): Set the hooks to the previous
22130 values instead of zapping them.
22131
221322007-09-14 Glenn Morris <rgm@gnu.org>
22133
22134 * fringe.c (init_fringe_bitmap) <swap_nibble>: Move to file scope.
22135 * gtkutil.c (xg_separator_p) <separator_names>: Move to file scope.
22136 * image.c (our_memory_fill_input_buffer) <buffer>: Move to file
22137 scope and rename to omfib_buffer for clarity.
22138 (gif_load) <interlace_start, interlace_increment>: Move to file scope.
22139
221402007-09-14 Kenichi Handa <handa@m17n.org>
22141
22142 * xterm.c (handle_one_xevent): Skip decoding if nbytes is zero.
22143
221442007-09-13 Jason Rumney <jasonr@gnu.org>
22145
22146 * fringe.c (w32_init_fringe, mac_init_fringe): Add rif argument.
22147
22148 * w32term.c (w32_term_init): Pass rif to w32_init_fringe.
22149
22150 * macterm.c (mac_initialize): Don't call mac_init_fringe here.
22151 (mac_term_init): Call here instead, passing rif.
22152
221532007-09-13 Glenn Morris <rgm@gnu.org>
22154
22155 * s/hpux.h: No longer define `static' as nothing.
22156
221572007-09-13 Johan Bockgård <bojohan@gnu.org>
22158
22159 * callint.c (Fcall_interactively): Remove unused var `fun'.
22160
221612007-09-12 Romain Francoise <romain@orebokech.com>
22162
22163 * window.c (prefer_window_split_horizontally, display_buffer):
22164 Revert 2007-09-08 change.
22165
221662007-09-12 Glenn Morris <rgm@gnu.org>
22167
22168 * alloca.c: Remove file.
22169 * Makefile.in (alloca): Do not undef.
22170 (allocaobj, alloca.o): Remove.
22171 (otherobj): Remove allocaobj.
22172 * keyboard.c (command_loop_1): Remove #ifdef C_ALLOCA block.
22173 * regex.c (C_ALLOCA): Remove all references and code that was only
22174 used when this was defined.
22175 * search.c (boyer_moore): Remove #ifdef C_ALLOCA block.
22176 * xmenu.c (xmenu_show): Remove #ifdef C_ALLOCA block.
22177 * m/ibms390x.h, m/sh3el.h (C_ALLOCA): Remove references to this.
22178
22179 * Makefile.in (SOURCES, unlock, relock): Delete.
22180
22181 * gtkutil.c (cnt): Rename to menu_grab_callback_cnt for clarity.
22182 (menu_grab_callback): All uses changed.
22183
22184 * xselect.c (cnt): Rename to x_reply_selection_request_cnt for clarity.
22185 (x_reply_selection_request): All uses changed.
22186
221872007-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
22188
22189 * lread.c (load_warn_old_style_backquotes): Change message to look
22190 better when it appears in the middle of byte-compiler messages.
22191
221922007-09-10 Dan Nicolaescu <dann@ics.uci.edu>
22193
22194 * s/darwin.h (MULTI_KBOARD): Only define for Carbon.
22195
22196 * xterm.c (x_create_terminal): Add comment.
22197
22198 * term.c (clear_tty_hooks, set_tty_hooks): Add comments.
22199
222002007-09-10 Richard Stallman <rms@gnu.org>
22201
22202 * xterm.c (x_term_init): Give error if can't open DISPLAY_NAME.
22203
222042007-09-10 Michaël Cadilhac <michael@cadilhac.name>
22205
22206 * lisp.h (struct Lisp_Subr): Rename `prompt' field to `intspec'.
22207 (DEFUN): Document `intspec', use it instead of `prompt'.
22208
22209 * eval.c (Fcommandp): Change `->prompt' to `->intspec'.
22210
22211 * data.c (Finteractive_form): If the interactive specification starts
22212 with a `(', use it as a Lisp form.
22213
22214 * fileio.c (Fset_file_modes): Add an interactive spec that reads a file
22215 name and file modes.
22216
22217 * callint.c (Fcall_interactively): Comment fixes.
22218
222192007-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
22220
22221 * callint.c (Fcall_interactively): Use Finteractive_form also for subrs
22222 and compiled functions.
22223
222242007-09-08 Fredrik Axelsson <f.axelsson@gmail.com>
22225
22226 * window.c (prefer_window_split_horizontally): New variable.
22227 (display_buffer): Consider splitting window horizontally depending
22228 on prefer_window_split_horizontally.
22229
222302007-09-08 Eli Zaretskii <eliz@gnu.org>
22231
22232 * sysdep.c [WINDOWSNT]: Don't include sysselect.h.
22233
222342007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
22235
22236 * s/cygwin.h (GC_MARK_STACK): Enable conservative stack marking.
22237
22238 * frame.c (x_set_frame_parameters): Check number is positive before
22239 using XFASTINT.
22240
22241 * window.c (freeze_window_start): Don't presume selected_window holds
22242 a window object.
22243 (Fdisplay_buffer): Remove `register' since `buffer' needs to be gcpro'd.
22244
222452007-09-07 Angelo Graziosi <Angelo.Graziosi@roma1.infn.it> (tiny change)
22246
22247 * term.c (dissociate_if_controlling_tty): Call setsid on CYGWIN.
22248
222492007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
22250
22251 * window.c (Vsplit_window_preferred_function): New var.
22252 (Fdisplay_buffer): Use it.
22253 (syms_of_window): Export, and initialize it.
22254
222552007-09-06 Pixel <pixel@mandriva.com> (tiny change)
22256
22257 * image.c (gif_load): Fix bug: Handle nonexistent colormap.
22258
222592007-09-06 Glenn Morris <rgm@gnu.org>
22260
22261 * gtkutil.c (menu_grab_callback) <cnt>:
22262 * xselect.c (x_reply_selection_request) <cnt>: Move static
22263 variable to file scope.
22264
222652007-09-06 Stefan Monnier <monnier@iro.umontreal.ca>
22266
22267 * xdisp.c (redisplay_internal): Make sure Elisp code always sees
22268 consistent values of selected_frame and selected_window.
22269
222702007-09-04 Jason Rumney <jasonr@gnu.org>
22271
22272 * w32console.c (initialize_w32_display): Zero unused hooks.
22273
222742007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
22275
22276 * term.c (Vsuspend_tty_functions, Vresume_tty_functions)
22277 (syms_of_term, Fsuspend_tty, Fresume_tty): Undo previous change.
22278
222792007-09-04 Jason Rumney <jasonr@gnu.org>
22280
22281 * term.c (init_tty) [WINDOWSNT]: Add hooks that are not accessible
22282 in w32console.c. Set up input. Remove XXX comments that have been
22283 confirmed as correct.
22284
22285 * s/ms-w32.h (MULTI_KBOARD): Define.
22286
22287 * w32console.c (one_and_only_w32cons): Remove.
22288 (initialize_w32_display): Take terminal argument.
22289
22290 * term.c (init_tty) [WINDOWSNT]: Pass terminal to
22291 initialize_w32_display.
22292 (init_tty) [MULTI_KBOARD]: Include this code on WINDOWSNT too.
22293
22294 * termhooks.h (enum event_kind) <HORIZ_WHEEL_EVENT>: New event.
22295
22296 * keyboard.c (discard_mouse_events): Discard it.
22297 (make_lispy_event): Translate it to a lisp event.
22298 (lispy_wheel_names): Add wheel-left and right events.
22299 (syms_of_keyboard): Enlarge wheel_syms.
22300
22301 * w32fns.c (w32_wnd_proc) <WM_DROPFILES>: Merge with WM_MOUSEWHEEL.
22302 <WM_MOUSEHWHEEL>: Pass new system message to lisp.
22303
22304 * w32term.h (WM_MOUSEHWHEEL): Define if system headers don't.
22305
22306 * w32term.c (construct_mouse_wheel): Make HORIZ_WHEEL_EVENT
22307 from WM_MOUSEHWHEEL.
22308 (w32_read_socket) <WM_MOUSEHWHEEL>: Treat as WM_MOUSEWHEEL.
22309
22310 * w32fns.c (x_create_tip_frame) [MULTI_KBOARD]: Get keyboard from
22311 terminal.
22312
22313 * w32term.c (w32_create_terminal) [MULTI_KBOARD]: Create a new
22314 keyboard for the terminal.
22315
223162007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
22317
22318 * term.c (Vsuspend_tty_hook): Rename from Vsuspend_tty_functions.
22319 (Vresume_tty_hook): Rename from Vresume_tty_functions.
22320 (syms_of_term): Rename suspend-tty-functions to suspend-tty-hook
22321 and resume-tty-function to resume-tty-hook.
22322 (Fsuspend_tty, Fresume_tty): Use new names.
22323
223242007-09-02 Jan Djärv <jan.h.d@swipnet.se>
22325
22326 * gtkutil.c (update_frame_tool_bar): Handle stock name as a named icon
22327 if it starts with "n:".
22328
223292007-08-31 Jan Djärv <jan.h.d@swipnet.se>
22330
22331 * gtkutil.c (update_frame_tool_bar): Initialize wbutton to NULL.
22332
223332007-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
22334
22335 * frame.h:
22336 * frame.c (Qterm_environment_variable): Remove.
22337 (syms_of_frame): Don't init and staticpro it.
22338
22339 * callproc.c (getenv_internal): Remove special case for $TERM.
22340
22341 * callproc.c (Vinitial_environment): New variable.
22342 (set_initial_environment): Initialize it.
22343 (syms_of_callproc): Declare it.
22344 (child_setup): Don't mess with TERM via Qterm_environment_variable; the
22345 TERM under which a process runs is never related to the TERM in which
22346 Emacs is running.
22347
223482007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
22349
22350 * config.in (HAVE_WINDOW_SYSTEM): Don't undef MULTI_KBOARD here...
22351 * s/darwin.h: ... do it here.
22352
223532007-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
22354
22355 * lisp.h (set_initial_environment): Rename from set_global_environment.
22356
22357 * Makefile.in (${etc}DOC): Re-add a ${EXEEXT} which seems to have been
22358 removed by mistake on the multi-tty branch.
22359
22360 * frame.c (make_terminal_frame): Yet Another Int/Lisp_Object Mixup.
22361 (Fmodify_frame_parameters): Return a value.
22362
22363 * image.c (png_load): Comment-out var only used in commented-out code.
22364
22365 * term.c (mark_ttys): Don't bother checking top_frame (incorrectly)
22366 before passing it to mark_object.
22367
22368 * xfaces.c (internal_resolve_face_name): Return a value.
22369 (internal_resolve_face_name, resolve_face_name_error): Comment out.
22370
22371 * xfns.c (check_x_display_info): Yet Another Int/Lisp_Object Mixup.
22372 (x_icon): Comment-out var only used in commented-out code.
22373
223742007-08-29 Romain Francoise <romain@orebokech.com>
22375
22376 * keyboard.c (Fset_input_mode): Don't call `Fset_quit_char' if
22377 QUIT hasn't been provided.
22378
223792007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
22380
22381 * callproc.c (child_setup, getenv_internal): Use the
22382 display-environment-variable and term-environment-variable frame params.
22383 (set_initial_environment): Initialise Vprocess_environment.
22384
22385 * config.in: Disable multi-keyboard support on a mac.
22386
22387 * frame.c (Qterm_environment_variable)
22388 (Qdisplay_environment_variable): New variables.
22389 (syms_of_frame): Intern and staticpro them.
22390 (Fmake_terminal_frame): Disable output method test.
22391
22392 * frame.h: Declare them here.
22393
22394 * macfns.c (x_set_mouse_color): Get rif from the frame.
22395 (x_set_tool_bar_lines): Don't use updating_frame.
22396 (mac_window): Add 2 new parameters for consistency with other systems.
22397 (Fx_create_frame): Fix doc string. Rename the parameter. Set the
22398 frame parameters following what is done in X11 and w32. Don't use
22399 FRAME_MAC_DISPLAY_INFO.
22400 (Fx_open_connection, start_hourglass): Remove window-system check.
22401 (x_create_tip_frame): Get the keyboard from the terminal.
22402
22403 * macmenu.c: Reorder includes.
22404 (Fx_popup_menu): Use terminal specific mouse_position_hook.
22405
22406 * macterm.c (XTset_terminal_modes, XTreset_terminal_modes): Add a
22407 terminal parameter.
22408 (x_clear_frame): Add a frame parameter.
22409 (note_mouse_movement): Get rif from the frame.
22410 (mac_term_init): Initialize the terminal.
22411 (mac_initialize): Make static and move terminal initialization ...
22412 (mac_create_terminal): ... to this new function.
22413
22414 * macterm.h (struct mac_display_info): Add terminal.
22415 (mac_initialize): Delete declaration.
22416
22417 * puresize.h (BASE_PURESIZE): Increase base value to 1164000.
22418
22419 * sysdep.c: Comment out text after #endif.
22420
22421 * term.c (init_tty): Only use terminal->kboard when MULTI_KBOARD
22422 is defined. Better initialize ttys in windows. Use terminal
22423 specific mouse_position_hook.
22424
22425 * termhooks.h (union display_info): Add mac_display_info.
22426
22427 * w32fns.c (Fx_create_frame): Use kboard from the terminal.
22428 Set the default minibuffer frame, window_system and the rest of the
22429 frame parameters following what is done in X11.
22430
22431 * w32term.c (w32_initialize): Make static.
22432
22433 * xselect.c (x_handle_selection_clear): Only access
22434 terminal->kboard when MULTI_KBOARD is defined.
22435
22436 * s/darwin.h (SYSTEM_PURESIZE_EXTRA): Define here.
22437 (SYSTEM_PURESIZE_EXTRA): Only define on Carbon.
22438
224392007-08-29 Jason Rumney <jasonr@gnu.org>
22440
22441 * frame.c (Fdelete_frame): Only get kboard when MULTI_KBOARD defined.
22442 (make_terminal_frame) [WINDOWSNT]: Initialize terminal.
22443
22444 * fringe.c (w32_init_fringe w32_reset_fringes) [HAVE_NTGUI]:
22445 (mac_init_fringe) [MAC_OS]: Get rif from selected_frame.
22446
22447 * keyboard.c (restore_kboard_configuration): Only define when
22448 MULTI_KBOARD defined.
22449
22450 * makefile.w32-in: Update dependancies from Makefile.in.
22451 (OBJ1): Add terminal.$(O)
22452
22453 * term.c (dissociate_if_controlling_tty) [WINDOWSNT]:
22454 Don't define function body.
22455 (init_tty) [WINDOWSNT]: Use selected_frame for initializing.
22456
22457 * termhooks.h (display_info) [WINDOWSNT]: Add w32.
22458
22459 * w32.c (request_sigio, unrequest_sigio): Remove.
22460
22461 * w32console.c (w32con_move_cursor, w32con_clear_to_end)
22462 (w32con_clear_frame, w32con_clear_end_of_line)
22463 (w32con_ins_del_lines, w32con_insert_glyphs, w32con_write_glyphs)
22464 (w32con_delete_glyphs, w32con_set_terminal_window)
22465 (scroll_line, w32_sys_ring_bell): Add frame arg.
22466 (w32con_set_terminal_modes, w32con_reset_terminal_modes):
22467 Add terminal arg.
22468 (PICK_FRAME): Remove.
22469 (w32con_write_glyphs): Use frame specific terminal coding.
22470 (one_and_only_w32cons): New global variable.
22471 (initialize_w32_display): Use it for storing hooks.
22472 (create_w32cons_output): New function.
22473
22474 * w32inevt.c, w32inevt.h (w32_console_read_socket): Make first
22475 arg a frame.
22476
22477 * w32fns.c (x_create_tip_frame): Set terminal and ref count.
22478 Set window_system.
22479 (x_set_tool_bar_lines): Don't use updating_frame.
22480 (Fx_create_frame): Set terminal and ref count.
22481 (Fx_open_connection): Remove window-system check.
22482
22483 * w32menu.c (Fx_popup_menu): Use terminal specific mouse_position_hook.
22484
22485 * w32term.c (w32_term_init): Call add_keyboard_wait_descriptor.
22486 (w32_set_terminal_modes, w32_reset_terminal_modes): Add terminal arg.
22487 (x_clear_frame, x_delete_glyphs, w32_ring_bell, x_ins_del_lines):
22488 Add frame arg.
22489 (x_delete_terminal, w32_create_terminal): New functions.
22490 (w32_term_init): Create a terminal.
22491 (w32_initialize): Move terminal specific initialization to
22492 w32_create_terminal.
22493
22494 * w32term.h (x_output): Remove foreground_pixel and background_pixel.
22495 (w32_clear_rect, w32_clear_area): Use background from frame.
22496 (w32_display_info): Add terminal.
22497 (w32_sys_ring_bell, x_delete_display): Declare here.
22498
22499 * xdisp.c (display_menu_bar) [HAVE_NTGUI]: Check frame type.
22500
22501 * s/ms-w32.h (SYSTEM_PURESIZE_EXTRA): Bump to 50k.
22502
225032007-08-29 Kalle Olavi Niemitalo <kon@iki.fi> (tiny change)
22504
22505 * keyboard.c (interrupt_signal, handle_interrupt, Fset_quit_char):
22506 Fix get_named_tty calls for the controlling tty.
22507
225082007-08-29 ARISAWA Akihiro <ari@mbf.ocn.ne.jp> (tiny change)
22509
22510 * term.c (dissociate_if_controlling_tty) [USG]: Fix parse error.
22511
225122007-08-29 Yoshiaki Kasahara <kasahara@nc.kyushu-u.ac.jp> (tiny change)
22513
22514 * term.c (tty_insert_glyphs): Add missing first parameter.
22515
225162007-08-29 Károly Lőrentey <karoly@lorentey.hu>
22517
22518 * buffer.c (Fbuffer_list, Fbury_buffer):
22519 Take frame->buried_buffer_list into account.
22520
22521 * cm.c (current_tty): New variable, for cmputc().
22522 (cmputc): Use it.
22523 (cmcheckmagic): Add tty parameter, look up terminal streams there.
22524 (calccost): Add tty parameter. Use emacs_tputs() instead of tputs().
22525 (cmgoto): Add tty parameter. Pass it on to calccost().
22526 Use emacs_tputs() instead of tputs().
22527
22528 * cm.h (emacs_tputs): New macro to set current_tty, and then call
22529 tputs().
22530 (current_tty): New variable, for cmputc().
22531 (cmcheckmagic, cmputc, cmgoto): Add prototypes.
22532
22533 * eval.c (unwind_to_catch): Don't call x_fully_uncatch_errors.
22534 (internal_condition_case, internal_condition_case_1)
22535 (internal_condition_case_2): Don't abort when x_catching_errors.
22536
22537 * fns.c (Fyes_or_no_p): Don't try to open an X dialog on tty terminals.
22538 (Fy_or_n_p): Likewise. Use temporarily_switch_to_single_kboard to
22539 prevent crashes caused by bogus longjmps in read_char.
22540
22541 * keymap.h (Fset_keymap_parent): Add EXFUN.
22542
22543 * macterm.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL)
22544 * w32term.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
22545 Remove redundant definition.
22546
22547 * macfns.c (x_set_mouse_color, x_make_gc):
22548 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
22549
22550 * w32term.c (x_free_frame_resources):
22551 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
22552 (w32_initialize): Use the accessor macros for terminal characteristics.
22553
22554 * macterm.c (mac_initialize): Use Fset_input_interrupt_mode.
22555 Use the accessor macros for terminal characteristics.
22556 * msdos.c (internal_terminal_init): Use the accessor macros for
22557 terminal characteristics.
22558 (ScreenVisualBell, internal_terminal_init):
22559 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
22560
22561 * termopts.h (no_redraw_on_reenter): Declare.
22562
22563 * alloc.c (emacs_blocked_malloc): Disable mallopt call.
22564 (mark_terminals, mark_ttys): Declare.
22565 (Fgarbage_collect): Call them.
22566 (mark_object): Mark buried_buffer_list.
22567
22568 * prefix-args.c: Include stdlib.h for exit.
22569
22570 * syssignal.h: Add comment.
22571
22572 * indent.c: Include stdio.h.
22573
22574 * window.h (Vinitial_window_system): Declare.
22575 (Vwindow_system): Delete declaration.
22576
22577 * fontset.c (Finternal_char_font): Use FRAME_RIF.
22578
22579 * image.c (lookup_image): Don't initialize `c' until the xasserts
22580 have been run.
22581
22582 * gtkutil.c (xg_create_frame_widgets): Use FRAME_BACKGROUND_PIXEL and
22583 FRAME_FOREGROUND_PIXEL.
22584
22585 * print.c (print_preprocess): Don't lose print_depth levels while
22586 iterating.
22587
22588 * widget.c (update_from_various_frame_slots):
22589 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
22590
22591 * window.c (set_window_buffer): Don't call clear_mouse_face on tty
22592 frames.
22593 (window_internal_height): Remove bogus make_number call.
22594 (init_window_once): Call make_terminal_frame with two zero parameters.
22595
22596 * fileio.c (Fread_file_name): Update comment.
22597
22598 * callint.c (Fcall_interactively):
22599 Use temporarily_switch_to_single_kboard instead of single_kboard_state.
22600 Make sure it is correctly unwound.
22601
22602 * xsmfns.c (x_session_close): New function.
22603
22604 * coding.h (terminal_coding, safe_terminal_coding, keyboard_coding):
22605 Delete declarations.
22606
22607 * xterm.h: Remove declaration for x_fully_uncatch_errors.
22608 (x_output): Remove background_pixel and foreground_pixel fields.
22609 (x_display_info): Add new field TERMINAL. Remove KBOARD field.
22610 (x_delete_device, x_session_close): Declare.
22611
22612 * lread.c: Include setjmp.h. Update declaration of `read_char'.
22613 (read_filtered_event): Call `read_char' with a local
22614 `wrong_kboard_jmpbuf'.
22615
22616 * minibuf.c (read_minibuf): Call temporarily_switch_to_single_kboard.
22617 Don't call single_kboard_state. Use FRAME_RIF.
22618
22619 * process.c (Fmake_network_process): Don't unrequest_sigio on modern
22620 systems.
22621
22622 * lisp.h (set_process_environment): Rename to `set_global_environment'.
22623 (Fframe_with_environment, Fset_input_meta_mode)
22624 (Fset_quit_char): EXFUN.
22625 (x_create_device, tty_output, terminal, tty_display_info): Declare.
22626 (init_sys_modes, reset_sys_modes): Update prototypes.
22627 (init_all_sys_modes, reset_all_sys_modes): New prototypes.
22628
22629 * keyboard.h (struct kboard): Add new fields Vlocal_function_key_map,
22630 Vlocal_key_translation_map, and Vkeyboard_translate_table.
22631 (Vfunction_key_map, Vkeyboard_translate_table, single_kboard_state):
22632 Delete declarations.
22633 (Vfunction_key_map, Vkey_translation_map, push_kboard, pop_kboard)
22634 (temporarily_switch_to_single_kboard, tty_read_avail_input):
22635 New declarations.
22636
22637 * emacs.c (main): Don't call init_sys_modes(), the new term_init()
22638 already does that during init_display(). Call syms_of_keymap
22639 before syms_of_keyboard. Call `syms_of_terminal'.
22640 Call set_initial_environment, not set_process_environment.
22641 (shut_down_emacs): Call reset_all_sys_modes() instead of
22642 reset_sys_modes().
22643
22644 * xfaces.c (x_free_gc): Protect xassert with GLYPH_DEBUG.
22645 (internal_resolve_face_name, resolve_face_name_error): New functions.
22646 (resolve_face_name): Protect against loops and errors thrown by Fget.
22647 (realize_default_face): Don't use FRAME_FONT unless frame is an X frame.
22648 (Ftty_supports_face_attributes_p): Update tty_capable_p call.
22649
22650 * scroll.c: Replace CURTTY() with local variables throughout the
22651 file (where applicable).
22652 (calculate_scrolling, calculate_direct_scrolling)
22653 (scrolling_1, scroll_cost): Use the accessor macros for terminal
22654 characteristics.
22655
22656 * keymap.c (Vfunction_key_map): Remove.
22657 (Fdescribe_buffer_bindings): Update references to Vfunction_key_map.
22658 (syms_of_keymap): Remove DEFVAR for Vfunction_key_map.
22659 (Vkey_translation_map): Remove.
22660 (syms_of_keymap): Remove DEFVAR for key-translation-map.
22661 (Fdescribe_buffer_bindings)
22662 (read_key_sequence, init_kboard, syms_of_keyboard, mark_kboards):
22663 Update for terminal-local key-translation-map.
22664
22665 * Makefile.in (callproc.o): Update dependencies.
22666 (lisp, shortlisp): Add termdev.elc.
22667 (obj): Add terminal.o.
22668 (terminal.o): Add dependencies.
22669 [HAVE_CARBON]: Make terminal.o depend on macgui.h.
22670 (data.o, fns.o): Add termhooks.h dependency.
22671 (SOME_MACHINE_LISP): Add dnd.elc.
22672 (minibuf.o): Fix typo.
22673 Update dependencies.
22674
22675 * data.c (do_symval_forwarding, store_symval_forwarding)
22676 (find_symbol_value): Use the selected frame's keyboard, not
22677 current_kboard.
22678
22679 * .gdbinit (init_sys_modes): Use Vinitial_window_system instead of
22680 Vwindow_system.
22681
22682 * xmenu.c (Fx_menu_bar_open) [USE_X_TOOLKIT, USE_GTK]: Rename from
22683 Fmenu_bar_open.
22684 (syms_of_xmenu): Update defsubr.
22685 (mouse_position_for_popup, Fx_popup_menu)
22686 (Fx_popup_dialog, x_activate_menubar, update_frame_menubar)
22687 (set_frame_menubar, free_frame_menubar)
22688 (create_and_show_popup_menu, xmenu_show)
22689 (create_and_show_dialog, xdialog_show, xmenu_show): Abort if not
22690 an X frame.
22691
22692 * xselect.c (x_own_selection): Abort if not an X frame.
22693 (some_frame_on_display): Check if it is an X frame.
22694 (x_handle_selection_clear): Deal with MULTI_KBOARD.
22695
22696 * coding.c: Include frame.h and termhooks.h.
22697 (terminal_coding, keyboard_coding): Delete.
22698 (Fset_terminal_coding_system_internal)
22699 (Fset_keyboard_coding_system_internal)
22700 (Fkeyboard_coding_system)
22701 (Fterminal_coding_system): Add a terminal parameter.
22702 Get terminal_coding from the terminal.
22703 (init_coding_once): Don't call setup_coding_system here.
22704
22705 * dispextern.h (set_scroll_region, turn_off_insert)
22706 (turn_off_highlight, background_highlight, clear_end_of_line_raw)
22707 (tty_clear_end_of_line, tty_setup_colors)
22708 (delete_tty, updating_frame)
22709 (produce_special_glyphs, produce_glyphs, write_glyphs)
22710 (insert_glyphs): Remove.
22711 (raw_cursor_to, clear_to_end, tty_turn_off_insert)
22712 (tty_turn_off_highlight, get_tty_size): Add declaration.
22713 (tabs_safe_p, init_baud_rate, get_tty_terminal): Update prototypes.
22714
22715 * frame.h (enum output_method): Add output_initial.
22716 (struct x_output): Delete.
22717 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
22718 Access foreground_pixel and background_pixel directly from the frame.
22719 (tty_display): Delete.
22720 (struct frame): Add buried_buffer_list, foreground_pixel,
22721 background_pixel and terminal. Delete kboard.
22722 (union output_data): Add tty.
22723 (FRAME_KBOARD): Get the kboard from the terminal.
22724 (FRAME_INITIAL_P): New macro.
22725 (Qtty, Qtty_type, Qterminal, Qterminal_live_p, Qenvironment)
22726 (Qterm_environment_variable, Qdisplay_environment_variable)
22727 (make_terminal_frame, Qburied_buffer_list, Qwindow_system):
22728 New declarations.
22729
22730 * termchar.h (tty_output, tty_display_info): New structures.
22731 (tty_list): Declare.
22732 (FRAME_TTY, CURTTY): New macros.
22733 (must_write_spaces, min_padding_speed, fast_clear_end_of_line)
22734 (line_ins_del_ok, char_ins_del_ok, scroll_region_ok)
22735 (scroll_region_cost, memory_below_frame, fast_clear_end_of_line)
22736 (dont_calculate_costs, no_redraw_on_reenter): Remove declarations.
22737
22738 * callproc.c: Include frame.h and termhooks.h, for terminal
22739 parameters.
22740 (add_env): New function.
22741 (child_setup): Use it.
22742 (child_setup, getenv_internal): Handle the new Vprocess_environment.
22743 (getenv_internal): Fix get_terminal_param call.
22744 (Fgetenv_internal, egetenv): Update doc.
22745 (syms_of_callproc): Initialize Vprocess_environment to nil.
22746 Register and initialize them. Remove obsolete defvars. Update doc
22747 strings.
22748 (child_setup): Handle Vlocal_environment_variables.
22749 (getenv_internal): Add terminal parameter.
22750 Handle Vlocal_environment_variables.
22751 (Fgetenv_internal): Add terminal parameter.
22752 (child_setup, getenv_internal, Fgetenv_internal): Store the local
22753 environment in a frame (not terminal) parameter. Update doc strings.
22754 (set_initial_environment): Rename from set_global_environment.
22755 Store Emacs environment in initial frame parameter.
22756
22757 * xdisp.c (redisplay_internal): Update references to
22758 `previous_terminal_frame'.
22759 (display_mode_line, Fformat_mode_line): Replace calls to
22760 `push_frame_kboard' with `push_kboard'.
22761 (get_glyph_string_clip_rects): Add extra parentheses and
22762 braces to prevent compiler warnings.
22763 (calc_pixel_width_or_height): Add xassert to check that the
22764 frame is alive. Don't call `lookup_image' on a termcap frame.
22765 (message2_nolog, message3_nolog, redisplay_internal)
22766 (set_vertical_scroll_bar, redisplay_window, check_x_display_info)
22767 (x_set_scroll_bar_foreground, x_set_scroll_bar_background)
22768 (Fx_create_frame, Fxw_display_color_p, Fx_display_grayscale_p)
22769 (Fx_display_pixel_width, Fx_display_pixel_height)
22770 (Fx_display_planes, Fx_display_color_cells)
22771 (Fx_server_max_request_size, Fx_server_vendor, Fx_server_version)
22772 (Fx_display_screens, Fx_display_mm_height, Fx_display_mm_width)
22773 (Fx_display_backing_store, Fx_display_visual_class)
22774 (Fx_display_save_under, Fx_close_connection, x_create_tip_frame):
22775 Use FRAME_TERMINAL_P, FRAME_WINDOW_P, FRAME_TTY and FRAME_RIF.
22776
22777 * xfns.c (x_set_foreground_color x_set_background_color)
22778 (x_set_mouse_color, x_set_cursor_color, x_make_gc):
22779 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
22780 (Fx_create_frame, x_create_tip_frame, build_string, x_window)
22781 (Fx_create_frame, x_create_tip_frame): Don't create frames on a
22782 terminal that is being deleted.
22783 (Fx_create_frame): Use `store_frame_param' to set `window-system'
22784 frame parameter, and make sure it overrides any user-supplied setting.
22785 (Fx_close_connection, Fx_synchronize): Unify argument names with
22786 the rest of the DEFUNs.
22787
22788 * dispnew.c (Fsend_string_to_terminal): Update call to
22789 `get_tty_terminal'.
22790 (Fredraw_frame, Fsend_string_to_terminal)
22791 (Fsend_string_to_terminal, init_display): Use FRAME_RIF,
22792 FRAME_TERMCAP_P and FRAME_TTY.
22793 (window_change_signal): Don't believe width/height values that are
22794 impossibly small.
22795 (Vinitial_window_system): Rename from Vwindow_system.
22796 (termscript, Wcm, rif): Delete.
22797
22798 * termhooks.h (struct terminal): New struct containing the
22799 previously global text display hooks and new members NAME,
22800 DELETED and PARAM_ALIST.
22801 (FRAME_TERMINAL, TERMINAL_TERMINAL_CODING)
22802 (TERMINAL_KEYBOARD_CODING, TERMINAL_ACTIVE_P, FRAME_WINDOW_P)
22803 (FRAME_RIF): New macros.
22804 (get_terminal_param, get_device): New declarations.
22805 (termscript): Delete declaration.
22806
22807 * xterm.c (x_initialize): Use Fset_input_interrupt_mode.
22808 (XTflash, x_free_frame_resources, x_scroll_bar_create)
22809 (x_scroll_bar_set_handle): Use FRAME_BACKGROUND_PIXEL and
22810 FRAME_FOREGROUND_PIXEL.
22811 (x_fully_uncatch_errors): Disable definition.
22812 (x_scroll_bar_expose): Fix reference to foreground pixel.
22813 (XTread_socket): Disable loop on all X displays.
22814 (x_delete_terminal): Don't set terminal->deleted and let
22815 delete_terminal delete the frames on the terminal.
22816 (x_delete_display): Doc update to reflect changes in
22817 delete_terminal.
22818 (x_display_info) <terminal>: Move member earlier in the struct.
22819 (deleting_tty): Remove old variable.
22820 (Fsuspend_tty): Call clear_tty_hooks.
22821 (Fresume_tty, init_tty): Call set_tty_hooks.
22822 (Ftty_display_color_p, Ftty_display_color_cells): Don't throw
22823 errors on X frames.
22824 (x_catch_errors_unwind): Abort if x_error_message is NULL.
22825 (handle_one_xevent): Initialize `f' to NULL.
22826 (x_delete_terminal, x_create_terminal): New functions.
22827 (XTset_terminal_modes, XTreset_terminal_modes)
22828 (XTread_socket, x_connection_closed, x_term_init)
22829 (x_term_init, x_delete_display): Add terminal parameter.
22830 (x_term_init) [!HAVE_GTK_MULTIDISPLAY]: Refuse to create secondary
22831 X connections.
22832
22833 * frame.c: Include termchar.h.
22834 (Qterminal, Qterminal_live_p, Qburied_buffer_list, Qtty, Qtty_type)
22835 (Qwindow_system, Qenvironment, Qterm_environment_variable)
22836 (Qdisplay_environment_variable): New vars.
22837 (Fframep): Deal with output_initial.
22838 (Fframe-live-p): Doc fix.
22839 (Fwindow-system): New function.
22840 (x_set_screen_gamma, store_frame_param): Fix compilation errors.
22841 (make_terminal_frame): Don't create frames on a terminal that is
22842 being deleted. Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
22843 (store_frame_param): Check for found_for_frame before calling XFRAME.
22844 (Fmake_terminal_frame): Handle NULL tty names correctly.
22845 (syms_of_frame): Enhance doc string of `default-frame-alist'.
22846 (Fdelete_frame): Remove unused variable `count'. Don't allow other
22847 frames to refer to a deleted frame in their 'environment parameter.
22848 (Fframe_with_environment): New function.
22849 (syms_of_frame): Defsubr it. Initialize and staticpro Qenvironment.
22850 (get_future_frame_param): New function.
22851 (Fmake_terminal_frame): Use it.
22852 (x_set_frame_parameters, x_set_screen_gamma): Use FRAME_RIF.
22853
22854 * sysdep.c (init_sys_modes, reset_sys_modes): Update for renames.
22855 * sysdep.c (reset_sys_modes): Update for renames.
22856
22857 * keyboard.c (tty_read_avail_input): New function.
22858 (Fset_input_interrupt_mode, Fset_output_flow_control): New functions.
22859 (syms_of_keyboard): Defsubr them.
22860 (Fset_input_meta_mode, Fset_quit_char): New functions.
22861 (Fset_input_mode): Split to above functions.
22862 (read_char_minibuf_menu_prompt): Add wrong_kboard_jmpbuf
22863 parameter. Use it in call to `read_char'.
22864 (read_char): Declare. Update call to `read_char_minibuf_menu_prompt'.
22865 Set wrong_kboard_jmpbuf correctly in recursive calls.
22866 Use current_kboard to access Vkeyboard_translate_table.
22867 Enhance comment before extra longjmp to wrong_kboard_jmpbuf.
22868 Add wrong_kboard_jmpbuf parameter to allow for recursive calls.
22869 Update longjmp invocations. Remember the original current_kboard,
22870 and longjmp to `wrong_kboard_jmpbuf' when a filter, timer or sentinel
22871 changes it. Comment out unnecessary calls to
22872 `record_single_kboard_state' and `any_kboard_state'.
22873 Update recursive calls.
22874 (wrong_kboard_jmpbuf): Remove global variable.
22875 (read_key_sequence): Remove unused variable wrong_kboard_jmpbuf.
22876 Handle deleted interrupted_kboards correctly; that is a legal
22877 case. Add `wrong_kboard_jmpbuf' local variable. Update setjmp
22878 and read_char calls. Abort if interrupted_kboard died in read_char.
22879 (any_kboard_state, single_kboard_state)
22880 (push_frame_kboard): Remove function.
22881 (pop_kboard): Switch out of single_kboard mode if the kboard has
22882 been deleted. Remove unused variable. Help debugging by not
22883 changing current_kboard unnecessarily. Set current_kboard to the
22884 kboard of the selected frame when the stored kboard object has
22885 been deleted before pop_kboard.
22886 (temporarily_switch_to_single_kboard): Change first parameter to a
22887 frame pointer. Throw an error when caller wants to change kboards
22888 while in single_kboard mode. Don't push_kboard if we weren't in
22889 single kboard state. Don't pop_kboard if we popped into any
22890 kboard state.
22891 (restore_kboard_configuration): Abort if pop_kboard changed the
22892 kboard in single_kboard mode. Call pop_kboard only after setting
22893 up single_kboard mode.
22894 (Frecursive_edit): Switch to single_kboard mode only in nested
22895 command loops.
22896 (cmd_error, command_loop, command_loop_1, timer_check):
22897 Comment out unnecessary call to `any_kboard_state' and
22898 `record_single_kboard_state'.
22899 (delete_kboard): Exit single_kboard mode if we have just deleted
22900 that kboard. Use FRAME_KBOARD.
22901 (interrupt_signal): Use `Fkill_emacs' to exit Emacs, not
22902 `fatal_error_signal'.
22903 (record_single_kboard_state): Don't push_kboard if we weren't in
22904 single kboard state. Don't pop_kboard if we popped into any
22905 kboard state.
22906 (push_frame_kboard): Rename to push_kboard.
22907 (kbd_buffer_get_event): Use FRAME_TERMINAL.
22908 (read_avail_input): Read input from all terminals.
22909 (mark_kboards): Also mark Vkeyboard_translate_table.
22910 (kbd_buffer_store_event_hold): Simplify condition.
22911 (read_key_sequence): Reinitialize fkey and keytran at each replay.
22912 (Vkeyboard_translate_table): Move to struct kboard.
22913 (init_kboard): Initialize Vkeyboard_translate_table.
22914 (syms_of_keyboard): Use DEFVAR_KBOARD to define
22915 Vkeyboard_translate_table. Update doc strings. Update docs of
22916 local-function-key-map and function-key-map.
22917
22918 * terminal.c: New file.
22919
22920 * term.c: Include errno.h.
22921 (Vring_bell_function, device_list, initial_device)
22922 (next_device_id, ring_bell, update_begin, update_end)
22923 (set_terminal_window, cursor_to, raw_cursor_to)
22924 (clear_to_end, clear_frame, clear_end_of_line)
22925 (write_glyphs, insert_glyphs, delete_glyphs, ins_del_lines)
22926 (Fdisplay_name, create_device, delete_device): Move to terminal.c.
22927 (syms_of_term): Move their initialization to terminal.c.
22928 (get_tty_terminal, Fdisplay_tty_type, Ftty_display_color_p)
22929 (Ftty_display_color_cells)
22930 (Ftty_no_underline, Fsuspend_tty, Fresume_tty, create_tty_output)
22931 (clear_tty_hooks, set_tty_hooks)
22932 (init_tty, maybe_fatal): New functions.
22933 (Ftty_type): Return nil if terminal is not on a tty instead of
22934 throwing an error. Doc update.
22935 (syms_of_term) <Vsuspend_tty_functions, Vresume_tty_functions>:
22936 Doc update. Initialize new subrs and variables.
22937 (delete_tty): Use terminal->deleted.
22938 (tty_set_terminal_modes): Rename from set_terminal_modes.
22939 (tty_reset_terminal_modes): Rename from reset_terminal_modes.
22940 (set_scroll_region): Rename to `tty_set_scroll_region'.
22941 (turn_on_insert): Rename to `tty_turn_on_insert'.
22942 (turn_off_insert): Rename to `tty_turn_off_insert'.
22943 (turn_off_highlight): Rename to `tty_turn_off_highlight'.
22944 (turn_on_highlight): Rename to `tty_turn_on_highlight'.
22945 (toggle_highligh): Rename to `tty_toggle_highlight'.
22946 (background_highlight): Rename to `tty_background_highlight'.
22947 (highlight_if_desired): Rename to `tty_highlight_if_desired'.
22948 (tty_ring_bell, tty_update_end, tty_set_terminal_window)
22949 (tty_set_scroll_region, tty_background_highlight)
22950 (tty_cursor_to, tty_raw_cursor_to, tty_clear_to_end)
22951 (tty_clear_frame, tty_clear_end_of_line, tty_write_glyphs)
22952 (tty_insert_glyphs, tty_delete_glyphs, tty_ins_del_lines)
22953 (term_get_fkeys, tty_setup_colors, dissociate_if_controlling_tty):
22954 Add static modifier.
22955 (tty_reset_terminal_modes, tty_set_terminal_window)
22956 (tty_set_scroll_region, tty_background_highlight)
22957 (tty_highlight_if_desired, tty_cursor_to)
22958 (tty_raw_cursor_to, tty_clear_to_end, tty_clear_frame)
22959 (tty_clear_end_of_line, tty_write_glyphs, tty_insert_glyphs)
22960 (tty_delete_glyphs, tty_ins_del_lines, turn_on_face): Update for
22961 renames.
22962
229632007-08-28 Jan Djärv <jan.h.d@swipnet.se>
22964
22965 * keyboard.c: Qrtl is new.
22966 (parse_tool_bar_item): Handle :rtl keyword.
22967 (syms_of_keyboard): Intern :rtl keyword.
22968
22969 * dispextern.h (enum tool_bar_item_idx): Add TOOL_BAR_ITEM_RTL_IMAGE.
22970
22971 * gtkutil.c (xg_tool_bar_expose_callback): Just do SET_FRAME_GARBAGED
22972 so no Lisp code is executed.
22973 (file_for_image, find_rtl_image): New functions.
22974 (xg_get_image_for_pixmap): Use file_for_image.
22975 (update_frame_tool_bar): If direction is RTL, use RTL image if
22976 defined. Use Gtk stock images if defined.
22977
229782007-08-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22979
22980 * macterm.c (x_draw_composite_glyph_string_foreground): Draw rectangle
22981 for nonexistent or zero-width glyph in composition glyph.
22982
229832007-08-25 Stefan Monnier <monnier@iro.umontreal.ca>
22984
22985 * m/amdx86-64.h: Redirect to intel386.h if compiling for i386.
22986
22987 * xdisp.c (Finvisible_p): New function.
22988 (syms_of_xdisp): defsubr it.
22989
229902007-08-24 Juanma Barranquero <lekktu@gmail.com>
22991
22992 * image.c (syms_of_image) <image-library-alist, cross-disabled-images>:
22993 Doc fixes.
22994
229952007-08-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22996
22997 * mac.c [MAC_OSX] (select_and_poll_event, sys_select): Fix last changes.
22998
229992007-08-24 Martin Rudalics <rudalics@gmx.at>
23000
23001 * fileio.c (Finsert_file_contents): Consult CHARS_MODIFF to tell
23002 whether decoding has modified buffer contents.
23003
230042007-08-24 Jason Rumney <jasonr@gnu.org>
23005
23006 * image.c [HAVE_NTGUI]: Define dynamic loaded functions for SVG.
23007 (Qgdk_pixbuf, Qglib) [HAVE_NTGUI]: New symbols.
23008 (syms_of_image) [HAVE_NTGUI]: Intern and staticpro them.
23009 (init_svg_functions) [HAVE_NTGUI]: New function.
23010 (fn_g_type_init, fn_g_object_unref, fn_g_error_free): New #defines.
23011 (svg_load_image): Use them.
23012 (svg_load_image) [HAVE_NTGUI]: Implement background.
23013
230142007-08-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23015
23016 * Makefile.in (RSVG_LIBS, RSVG_CFLAGS): New variables.
23017 (ALL_CFLAGS): Use ${RSVG_CFLAGS} instead of @RSVG_CFLAGS@.
23018 (LIBX): Remove @RSVG_LIBS@.
23019 (LIBES): Add $(RSVG_LIBS).
23020
23021 * image.c (svg_load_image): Blend with specified background if exists.
23022 Use IMAGE_BACKGROUND. Add Mac OS Support.
23023
23024 * mac.c (wakeup_from_rne_enabled_p) [MAC_OSX]: Remove variable.
23025 (ENABLE_WAKEUP_FROM_RNE, DISABLE_WAKEUP_FROM_RNE) [MAC_OSX]:
23026 Remove macros.
23027 [MAC_OSX] (socket_callback): Do nothing.
23028 [MAC_OSX] (select_and_poll_event): Use CFRunLoopRunInMode instead of
23029 ReceiveNextEvent.
23030 [MAC_OSX] (sys_select): Likewise. Don't set context as argument to
23031 socket_callback.
23032 (mac_wakeup_from_rne) [MAC_OSX]: Do nothing.
23033
230342007-08-22 Glenn Morris <rgm@gnu.org>
23035
23036 * image.c (x_find_image_file): Search in etc/images/ rather than etc/.
23037
230382007-08-22 Paul Pogonyshev <pogonyshev@gmx.net>
23039
23040 * Makefile.in (ALL_CFLAGS, LIBX): Add RSVG_LIBS.
23041
23042 * image.c: Add support for SVG images. Some additional comments
23043 by Joakim Verona <joakim@verona.se>. When HAVE_RSVG is defined:
23044 (svg_image_p): New function to test for SVG image.
23045 (svg_load): New function to load SVG image.
23046 (svg_load_image): New function, helper for svg_load.
23047 (Qsvg): New Lisp_object.
23048 (svg_keyword_index): New enum.
23049 (svg_format): New static `image_keyword' struct.
23050 (svg_type): New static `image_type' struct.
23051 (librsvg/rsvg.h): Include it.
23052
230532007-08-23 Stefan Monnier <monnier@iro.umontreal.ca>
23054
23055 * lread.c (load_warn_old_style_backquotes): Fix up array size typo.
23056
230572007-08-22 Stefan Monnier <monnier@iro.umontreal.ca>
23058
23059 * lread.c (Qold_style_backquotes): New var.
23060 (syms_of_lread): Init and staticpro it.
23061 (load_warn_old_style_backquotes): New fun.
23062 (Fload): Use them to warn about old style backquotes.
23063 (end_of_file_error, Fload): Remove unused vars.
23064
23065 * lisp.h (Fclear_face_cache, Fx_send_client_event): Declare.
23066
23067 * lread.c (Vold_style_backquotes): New var.
23068 (syms_of_lread): Init and export it to Elisp.
23069 (read1): Set it when we find an old-style (back)quote.
23070
230712007-08-22 Jason Rumney <jasonr@gnu.org>
23072
23073 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): Add missing NULL terminator.
23074
230752007-08-22 Katsumi Yamaoka <yamaoka@jpl.org>
23076
23077 * puresize.h (BASE_PURESIZE): Increase to 1140000.
23078
230792007-08-19 Richard Stallman <rms@gnu.org>
23080
23081 * eval.c (Ffunction, Fquote): Signal error if not 1 argument.
23082
230832007-08-19 Andreas Schwab <schwab@suse.de>
23084
23085 * alloc.c (pure): Round PURESIZE up.
23086
230872007-08-17 Jan Djärv <jan.h.d@swipnet.se>
23088
23089 * xterm.c (handle_one_xevent): Remove check that mouse click is in
23090 active frame.
23091
230922007-08-16 Richard Stallman <rms@gnu.org>
23093
23094 * eval.c (Fcommandp): Add parens to clarify.
23095
23096 * minibuf.c (Fall_completions): Use enum for type of table.
23097
23098 * emacs.c (USAGE2): Improve text.
23099
231002007-08-15 Philippe Waroquiers <philippe.waroquiers@eurocontrol.int>
23101
23102 * term.c (tty_default_color_capabilities): Declare static
23103 variables in file scope, to avoid HPUX compiler problem.
23104
231052007-08-13 Jan Djärv <jan.h.d@swipnet.se>
23106
23107 * gtkutil.c (update_frame_tool_bar): Use -1 as index
23108 to gtk_toolbar_insert.
23109
231102007-08-13 Stefan Monnier <monnier@iro.umontreal.ca>
23111
23112 * fileio.c (Finsert_file_contents): Yet Another Int/Lisp_Object Mixup.
23113
23114 * insdel.c (reset_var_on_error): New fun.
23115 (signal_before_change, signal_after_change):
23116 Use it to reset (after|before)-change-functions to nil in case of error.
23117 Bind inhibit-modification-hooks to t.
23118 Don't bind (after|before)-change-functions to nil while they run.
23119
231202007-08-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23121
23122 * xterm.c (x_draw_image_glyph_string): Adjust stipple origin when
23123 filling pixmap with stippled background.
23124
231252007-08-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23126
23127 * macterm.c [TARGET_API_MAC_CARBON] (mac_handle_window_event):
23128 Don't use invisible frame as parent window for repositioning.
23129
231302007-08-10 Stefan Monnier <monnier@iro.umontreal.ca>
23131
23132 * print.c (new_backquote_output): Rename from old_backquote_output.
23133 (print): Inverse its logic (according to its name) so as to match the
23134 behavior of new_backquote_flag in lread.c.
23135
231362007-08-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23137
23138 * gmalloc.c (posix_memalign): New function.
23139
23140 * macterm.c (frame_highlight, frame_unhighlight): Don't call
23141 ActivateControl/DeactivateControl here.
23142 [USE_MAC_TOOLBAR] (free_frame_tool_bar): Suppress animation when
23143 frame-notice-user-settings is non-nil.
23144 [USE_MAC_FONT_PANEL] (mac_handle_font_event): Also record parameter
23145 for kEventParamFMFontStyle.
23146 [TARGET_API_MAC_CARBON] (mac_handle_keyboard_event): Don't check
23147 mac_pass_command_to_system and mac_pass_control_to_system here.
23148 (XTread_socket): Call ActivateControl/DeactivateControl here.
23149 (XTread_socket) [TARGET_API_MAC_CARBON]:
23150 Check mac_pass_command_to_system and mac_pass_control_to_system here.
23151 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Add further workaround
23152 for window repositioning.
23153
231542007-08-08 Glenn Morris <rgm@gnu.org>
23155
23156 * Replace `iff' in doc-strings and comments.
23157
231582007-08-07 Chong Yidong <cyd@stupidchicken.com>
23159
23160 * xdisp.c (move_it_by_lines): Remove incorrect optimization.
23161
231622007-08-07 Martin Rudalics <rudalics@gmx.at>
23163
23164 * fileio.c (Finsert_file_contents): Run format-decode and
23165 after_insert_file_functions on entire buffer when REPLACE is
23166 non-nil and inhibit modification_hooks and point_motion_hooks.
23167 For consistency, run after_insert_file_functions iff something
23168 got inserted. Move signal_after_change and update_compositions
23169 after code running after_insert_file_functions. Make sure that
23170 undo_list doesn't record intermediate steps of the decoding process.
23171
231722007-08-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23173
23174 * emacs.c (main)
23175 [HAVE_GTK_AND_PTHREAD && !SYSTEM_MALLOC && !DOUG_LEA_MALLOC]:
23176 Call malloc_enable_thread on interactive startup.
23177
23178 * gmalloc.c (_malloc_thread_enabled_p) [USE_PTHREAD]: New variable.
23179 (LOCK, UNLOCK, LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS)
23180 [USE_PTHREAD]: Conditionalize with it.
23181 (malloc_atfork_handler_prepare, malloc_atfork_handler_parent)
23182 (malloc_atfork_handler_child, malloc_enable_thread) [USE_PTHREAD]:
23183 New functions.
23184
231852007-08-06 Chong Yidong <cyd@stupidchicken.com>
23186
23187 * xdisp.c (redisplay_window): When restoring original buffer
23188 position, make sure it is still valid.
23189
23190 * image.c (png_load): Ignore png-supplied background color.
23191
231922007-08-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23193
23194 * mac.c [TARGET_API_MAC_CARBON] (cfdate_to_lisp): Obtain microsec value.
23195 Use kCFAbsoluteTimeIntervalSince1970.
23196
23197 * macmenu.c (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]:
23198 New variable.
23199 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Set it if dialog
23200 event loop should be quit.
23201 [TARGET_API_MAC_CARBON] (create_and_show_dialog) [!MAC_OSX]:
23202 Quit dialog event loop if quit_dialog_event_loop is set.
23203
23204 * macselect.c [!TARGET_API_MAC_CARBON]: Include Scrap.h.
23205 (Selection): New typedef. Use instead of ScrapRef.
23206 (mac_get_selection_from_symbol): Rename from get_scrap_from_symbol.
23207 (mac_valid_selection_target_p): Rename from valid_scrap_target_type_p.
23208 (mac_clear_selection): Rename from clear_scrap.
23209 (get_flavor_type_from_symbol): New argument SEL and subsume function of
23210 scrap_has_target_type. All uses changed.
23211 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
23212 (mac_selection_has_target_p): New functions.
23213 (mac_put_selection_value): Rename from put_scrap_string.
23214 (mac_get_selection_value): Rename from get_scrap_string.
23215 (mac_get_selection_target_list): Rename from get_scrap_target_type_list.
23216 (put_scrap_private_timestamp, scrap_has_target_type)
23217 (get_scrap_private_timestamp): Remove functions.
23218 (SCRAP_FLAVOR_TYPE_EMACS_TIMESTAMP): Remove define.
23219 (x_own_selection, x_get_local_selection):
23220 Use mac_valid_selection_value_p.
23221 (x_own_selection): Don't use put_scrap_private_timestamp.
23222 Record OWNERSHIP-INFO into Vselection_alist instead.
23223 (x_get_local_selection): Don't check type if request is local.
23224 (Fx_selection_owner_p): Don't use get_scrap_private_timestamp.
23225 Detect ownership change with OWNERSHIP-INFO in Vselection_alist instead.
23226
232272007-08-04 Jan Djärv <jan.h.d@swipnet.se>
23228
23229 * gtkutil.c (xg_tool_bar_callback): Generate two TOOL_BAR_EVENT:s,
23230 add comment explaining why.
23231
232322007-08-03 Richard Stallman <rms@gnu.org>
23233
23234 * fileio.c (Fvisited_file_modtime): Use make_time.
23235
232362007-08-01 Ryo Yoshitake <ryo@shiftmode.net> (tiny change)
23237
23238 * mac.c (init_mac_osx_environment): Adjust load-path on self-contained
23239 build.
23240
232412007-07-31 Stefan Monnier <monnier@iro.umontreal.ca>
23242
23243 * gtkutil.c (xg_tool_bar_callback): Generate a single TOOL_BAR_EVENT.
23244
232452007-07-30 Katsumi Yamaoka <yamaoka@jpl.org>
23246
23247 * puresize.h (BASE_PURESIZE): Increase to 1130000.
23248
232492007-07-30 Richard Stallman <rms@gnu.org>
23250
23251 * lread.c (readevalloop, read1): Treat NBSP as whitespace.
23252
232532007-07-29 Jan Djärv <jan.h.d@swipnet.se>
23254
23255 * gmalloc.c (__malloc_initialize): Remove pthread_once. Not needed.
23256
232572007-07-28 Nick Roberts <nickrob@snap.net.nz>
23258
23259 * xdisp.c (decode_mode_spec): Use '@' instead of 'R' to test for
23260 remote default-directory.
23261
23262 * buffer.c (mode-line-format): Update doc string.
23263
232642007-07-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23265
23266 * w32term.c (w32_draw_fringe_bitmap): Extend fringe background to
23267 scroll bar gap.
23268 (x_scroll_bar_create): Set bar->fringe_extended_p.
23269 (w32_set_vertical_scroll_bar): Put leftmost/rightmost scroll bars
23270 on frame edge. Check fringe background extension. Don't clear
23271 extended fringe background area.
23272
23273 * w32term.h (struct scroll_bar): New member fringe_extended_p.
23274 (w32_fill_area): Enclose multiple statements with do ... while (0).
23275
23276 * xterm.c (x_draw_fringe_bitmap) [USE_TOOLKIT_SCROLL_BARS]:
23277 Extend fringe background to scroll bar gap.
23278 (x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS]:
23279 Set bar->fringe_extended_p.
23280 (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
23281 Put leftmost/rightmost scroll bars on frame edge. Check fringe
23282 background extension. Don't clear extended fringe background area.
23283
23284 * xterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
23285 New member fringe_extended_p.
23286
232872007-07-25 Glenn Morris <rgm@gnu.org>
23288
23289 * Relicense all FSF files to GPLv3 or later.
23290
23291 * COPYING: Switch to GPLv3.
23292
232932007-07-25 Stefan Monnier <monnier@iro.umontreal.ca>
23294
23295 * eval.c (Fcommandp): Pay attention to the `interactive-form' property.
23296
23297 * data.c (Finteractive_form): Check for the presence of an
23298 `interactive-form' symbol property more thoroughly.
23299
23300 * data.c (Finteractive_form): Use an `interactive-form' property if
23301 present, analogous to the function-documentation property.
23302
233032007-07-24 Jason Rumney <jasonr@gnu.org>
23304
23305 * w32fns.c (x_real_positions): Get real position from OS instead of
23306 calculating it.
23307
233082007-07-23 Jason Rumney <jasonr@gnu.org>
23309
23310 * filelock.c (current_lock_owner): Allow for @ sign in username.
23311
233122007-07-22 Nick Roberts <nickrob@snap.net.nz>
23313
23314 * xdisp.c (decode_mode_spec): Add case 'R' for to test for
23315 remote default-directory.
23316
23317 * buffer.c (mode-line-format): Describe above case in doc string.
23318
233192007-07-20 Eli Zaretskii <eliz@gnu.org>
23320
23321 * w32proc.c (IMAGE_NT_OPTIONAL_HDR32_MAGIC, IMAGE_OPTIONAL_HEADER32):
23322 Define if not defined.
23323
233242007-07-18 Jason Rumney <jasonr@gnu.org>
23325
23326 * w32proc.c (w32_executable_type): Handle 64 bit executables.
23327
233282007-07-18 Richard Stallman <rms@gnu.org>
23329
23330 * data.c (Fsetq_default): Doc fix.
23331
23332 * eval.c (Fsetq): Doc fix.
23333
233342007-07-18 Juanma Barranquero <lekktu@gmail.com>
23335
23336 * coding.c (Ffind_operation_coding_system):
23337 * eval.c (For, Fand): Doc fixes.
23338 Reported by Johan Bockgård.
23339
233402007-07-18 Jan Djärv <jan.h.d@swipnet.se>
23341
23342 * xfns.c (Fx_focus_frame): Call x_ewmh_activate_frame.
23343
23344 * xterm.h: Declare x_ewmh_activate_frame.
23345
23346 * xterm.c (x_ewmh_activate_frame): New function.
23347 (XTframe_raise_lower): Move code to x_ewmh_activate_frame.
23348
233492007-07-17 Martin Rudalics <rudalics@gmx.at>
23350
23351 * window.c (Fdisplay_buffer): If largest or LRU window is the
23352 only window, split it even if it is not eligible for splitting.
23353 This restores the original behavior broken by the 2007-07-15
23354 change.
23355
233562007-07-17 Glenn Morris <rgm@gnu.org>
23357
23358 * abbrev.c (abbrev_check_chars): New function.
23359 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
23360 Call abbrev_check_chars to check abbrev characters are word
23361 constituents. Doc fix.
23362
233632007-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
23364
23365 * process.c (Fstart_process, Fmake_network_process)
23366 (read_process_output): Fix up last changes.
23367
233682007-07-16 Eli Zaretskii <eliz@gnu.org>
23369
23370 * makefile.w32-in (clean): Don't delete *~.
23371
233722007-07-16 Andreas Schwab <schwab@suse.de>
23373
23374 * window.c (Fdisplay_buffer): Use NILP.
23375 (Fset_window_scroll_bars): Likewise.
23376
233772007-07-15 Martin Rudalics <rudalics@gmx.at>
23378
23379 * window.c (window_min_size_2): New function.
23380 (window_min_size_1, size_window, Fdisplay_buffer)
23381 (Fsplit_window, adjust_window_trailing_edge): Use it to avoid
23382 windows without mode- or header-lines when window-min-height is
23383 too small.
23384 (size_window): Reset nodelete_p after testing it, following an
23385 earlier note by Kim F. Storm.
23386 (display_buffer): Do not set split_height_threshold to twice the
23387 value of window_min_height to avoid changing the value of a
23388 customizable variable. Rather explicitly check whether the
23389 height of the window that shall be splitted is at least as large
23390 as split_height_threshold.
23391 (Fwindow_full_width_p): New defun.
23392 (syms_of_window): Defsubr it.
23393
23394 * window.h: Add EXFUN for Fwindow_full_width_p.
23395
233962007-07-14 Jason Rumney <jasonr@gnu.org>
23397
23398 * process.c [WINDOWSNT]: Don't undefine AF_INET6.
23399
234002007-07-14 Richard Stallman <rms@gnu.org>
23401
23402 * eval.c (maybe_call_debugger): New function.
23403 (find_handler_clause): Use maybe_call_debugger.
23404 Call it when the handler says `debug'.
23405 Eliminate DEBUGGER_VALUE_PTR.
23406 (Fsignal): Eliminate debugger_value.
23407 (Qdebug): New variable.
23408 (syms_of_eval): Initialize it. 14 (syms_of_eval): Initialize it.
23409 15
234102007-07-14 Juanma Barranquero <lekktu@gmail.com> 162007-10-18 Miles Bader <miles@gnu.org>
23411
23412 * eval.c (Fprogn):
23413 * keyboard.c (Ftrack_mouse):
23414 * print.c (Fwith_output_to_temp_buffer):
23415 * window.c (Fsave_window_excursion): Doc fix.
23416
234172007-07-13 Stefan Monnier <monnier@iro.umontreal.ca>
23418
23419 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 400.
23420
234212007-07-12 Stefan Monnier <monnier@iro.umontreal.ca>
23422
23423 * process.h (struct Lisp_Process): Turn slots infd, outfd,
23424 kill_without_query, pty_flag, tick, update_tick, decoding_carryover,
23425 inherit_coding_system_flag, filter_multibyte, adaptive_read_buffering,
23426 read_output_delay, and read_output_skip from Lisp_Objects to ints.
23427 Remove unused encoding_carryover.
23428 * process.c: Adjust all functions accordingly.
23429
234302007-07-12 Richard Stallman <rms@gnu.org>
23431
23432 * term.c: Include unistd.h only if HAVE_UNISTD_H.
23433
234342007-07-11 Jason Rumney <jasonr@gnu.org>
23435
23436 * makefile.w32-in (LIBS): Include OLE32.
23437
23438 * w32fns.c (w32_msg_pump) <WM_EMACS_CREATEWINDOW>: Initialize COM.
23439 (w32_msg_pump) <WM_DESTROY>: Uninitialize COM.
23440
234412007-07-11 Stefan Monnier <monnier@iro.umontreal.ca>
23442
23443 * lisp.h (struct Lisp_Hash_Table): Turn next_weak into a bare pointer.
23444 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and turned
23445 from a Lisp_Object into a bare pointer.
23446 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
23447 Adjust the code correspondingly.
23448
23449 * alloc.c (emacs_blocked_free): Remove unused var `bytes_used_now'.
23450
23451 * term.c: Include unistd.h for ttyname, used in handle_one_term_event.
23452 (term_show_mouse_face): Remove unused var `j'.
23453 (handle_one_term_event): Remove unused vars `i' and `j'.
23454 Don't cast return value of ttyname since it's not necessary.
23455
234562007-07-10 Stefan Monnier <monnier@iro.umontreal.ca>
23457
23458 * alloc.c (mark_maybe_pointer): Enforce mult-of-8 alignment when using
23459 USE_LSB_TAG. Suggested by Dmitry Antipov <dmantipov@yandex.ru>.
23460
23461 * fns.c (map_char_table): Use an array of int for `indices' rather than
23462 an array of Lisp_Objects (which are only ever integers anyway).
23463 (Fmap_char_table): Update caller.
23464 * lisp.h: Update prototype.
23465 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap):
23466 * fontset.c (Ffontset_info):
23467 * casetab.c (set_case_table): Update callers.
23468
23469 * editfns.c (Ftranspose_regions): Use EMACS_INT for positions.
23470
23471 * keymap.c (struct accessible_keymaps_data)
23472 (struct where_is_internal_data): New structures.
23473 (accessible_keymaps_1, where_is_internal_1): Use them to change
23474 interface to adhere to the one used by map_keymap.
23475 (Faccessible_keymaps, where_is_internal): Use map_keymap.
23476 (accessible_keymaps_char_table, where_is_internal_2): Remove.
23477
23478 * keymap.h (map_keymap_function_t): More informative prototype.
23479
234802007-07-10 Guanpeng Xu <herberteuler@hotmail.com>
23481
23482 * search.c (Vinhibit_changing_match_data, search_regs_1): New vars.
23483 (looking_at_1): Don't change search_regs and last_thing_searched
23484 if `inhibit-changing-match-data' is non-nil.
23485 (string_match_1, search_buffer, set_search_regs): Likewise.
23486 (syms_of_search): Add Lisp level definition for
23487 `inhibit-changing-match-data' and set it to nil.
23488 (boyer_moore): If `inhibit-changing-match-data' is non-nil, compute
23489 start and end of the match, instead of using values in search_regs.
23490
234912007-07-01 Stefan Monnier <monnier@iro.umontreal.ca>
23492
23493 * minibuf.c (Fcompleting_read): New value `confirm-only'
23494 for `require-match'.
23495
234962007-06-28 Stefan Monnier <monnier@iro.umontreal.ca>
23497
23498 * fileio.c (Fdo_auto_save): Revert last patch installed unwillingly as
23499 part of the 2007-06-27 change to syms_of_fileio.
23500
235012007-06-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23502
23503 * macterm.c [USE_MAC_TSM] (mac_handle_text_input_event):
23504 Check WINDOWP before using XWINDOW. Consolidate return statements.
23505
235062007-06-27 Richard Stallman <rms@gnu.org>
23507
23508 * fileio.c (syms_of_fileio) <after-insert-file-functions>: Doc fix.
23509
235102007-06-27 Juanma Barranquero <lekktu@gmail.com>
23511
23512 * buffer.c (syms_of_buffer) <selective-display>: Fix typo in docstring.
23513
235142007-06-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23515
23516 * gmalloc.c [HAVE_GTK_AND_PTHREAD]: Check this after including config.h.
23517 (_aligned_blocks_mutex) [USE_PTHREAD]: New variable.
23518 (LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS): New macros.
23519 (_free_internal, memalign): Use them.
23520 (_malloc_mutex, _aligned_blocks_mutex) [USE_PTHREAD]:
23521 Initialize to PTHREAD_MUTEX_INITIALIZER.
23522 (malloc_initialize_1) [USE_PTHREAD]: Don't use recursive mutex.
23523 (morecore_nolock): Rename from morecore. All uses changed.
23524 Use only nolock versions of internal allocation functions.
23525 (_malloc_internal_nolock, _realloc_internal_nolock)
23526 (_free_internal_nolock): New functions created from
23527 _malloc_internal, _realloc_internal, and _free_internal.
23528 (_malloc_internal, _realloc_internal, _free_internal): Use them.
23529 Copy hook value to automatic variable before its use.
23530 (memalign): Copy hook value to automatic variable before its use.
23531
235322007-06-26 Kenichi Handa <handa@m17n.org>
23533
23534 * coding.c (Ffind_operation_coding_system): Docstring improved.
23535 (syms_of_coding): Docstring of `file-coding-system-alist' improved.
23536
235372007-06-25 David Kastrup <dak@gnu.org>
23538
23539 * keymap.c (Fcurrent_active_maps): Add `position' argument.
23540 (Fwhere_is_internal): Adjust call to `current-active-maps' to
23541 cater for additional parameter.
23542
23543 * keymap.h: Adjust number of parameters to `current-active-maps'.
23544
23545 * doc.c (Fsubstitute_command_keys): Adjust call of
23546 `current-active-maps'.
23547
235482007-06-25 David Kastrup <dak@gnu.org>
23549
23550 * callint.c (Fcall_interactively): Make the parsing of interactive
23551 specs somewhat more readable.
23552
235532007-06-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23554
23555 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe background
23556 to scroll bar gap also when bitmap fills fringe. Draw only foreground
23557 if extended background has already been filled.
23558
235592007-06-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23560
23561 * macgui.h (USE_CG_DRAWING): Don't require USE_ATSUI.
23562 (USE_MAC_TOOLBAR): Require USE_CG_DRAWING.
23563
23564 * macmenu.c (mac_dialog_modal_filter, Fx_popup_dialog) [MAC_OSX]:
23565 Put special treatment for Fmessage_box, Fyes_or_no_p, and Fy_or_n_p
23566 in #if 0 as it is not compatible with y-or-n-p-with-timeout.
23567 (timer_check) [TARGET_API_MAC_CARBON]: Add extern.
23568 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Use QuitEventLoop
23569 instead of QuitAppModalLoopForWindow. Consolidate QuitEventLoop calls.
23570 (pop_down_dialog) [TARGET_API_MAC_CARBON]: New function.
23571 [TARGET_API_MAC_CARBON] (create_and_show_dialog): Use it for unwind.
23572 Run timers during dialog popup.
23573 (Fmenu_or_popup_active_p) [TARGET_API_MAC_CARBON]: Use popup_activated.
23574
235752007-06-21 Jason Rumney <jasonr@gnu.org>
23576
23577 * image.c (convert_mono_to_color_image): Swap fore and background.
23578
235792007-06-20 Jason Rumney <jasonr@gnu.org>
23580
23581 * w32bdf.c (w32_BDF_to_x_font): Unmap memory when finished.
23582 (w32_free_bdf_font): Unmap memory not handle.
23583
235842007-06-20 Sam Steingold <sds@gnu.org>
23585
23586 * gmalloc.c (__morecore): Fix the declaration to comply with the
23587 definition.
23588
235892007-06-20 Juanma Barranquero <lekktu@gmail.com>
23590
23591 * w32term.c (w32_delete_display): Remove leftover declaration.
23592 (w32_define_cursor, w32_initialize): Make static.
23593
23594 * w32.c (_wsa_errlist): Fix typo in error message.
23595 (init_environment): Ignore any environment variable from the
23596 registry having a null value.
23597
235982007-06-20 Glenn Morris <rgm@gnu.org>
23599
23600 * Makefile.in (LIBGIF): Default to -lgif.
23601
236022007-06-17 Jason Rumney <jasonr@gnu.org>
23603
23604 * w32menu.c (add_menu_item): Don't use multibyte string functions on
23605 unicode strings.
23606
236072007-06-16 Juanma Barranquero <lekktu@gmail.com>
23608
23609 * xdisp.c (syms_of_xdisp) <auto-resize-tool-bars>:
23610 Fix typo in docstring.
23611
236122007-06-16 Eli Zaretskii <eliz@gnu.org>
23613
23614 * w32menu.c (add_menu_item): Escape `&' characters in menu items
23615 and their keybindings.
23616
236172007-06-15 Chong Yidong <cyd@stupidchicken.com>
23618
23619 * composite.c (update_compositions): Fix last fix.
23620
236212007-06-14 Jason Rumney <jasonr@gnu.org>
23622
23623 * w32.c (get_process_times_fn): New function pointer.
23624 (globals_of_w32): Intialize it if present in kernel32.dll.
23625 (w32_get_internal_run_time): New function.
23626
23627 * editfns.c (Fget_internal_run_time) [WINDOWSNT]: Use it.
23628
236292007-06-14 Kenichi Handa <handa@etlken.m17n.org>
23630
23631 * composite.c (update_compositions): Check the validness of
23632 compositions.
23633
236342007-06-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23635
23636 * frame.h (struct frame) [MAC_OS]: New member external_tool_bar.
23637 (FRAME_EXTERNAL_TOOL_BAR) [MAC_OS]: Use it.
23638
23639 * macfns.c (mac_window) [USE_MAC_TOOLBAR]: Set toolbar_win_gravity.
23640 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]: Set FRAME_EXTERNAL_TOOL_BAR.
23641
23642 * macgui.h (USE_MAC_TOOLBAR): New define.
23643
23644 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
23645 Return immediately unless popup is activated.
23646
23647 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe
23648 background to scroll bar gap.
23649 (x_scroll_bar_create) [MAC_OSX]: Set bar->fringe_extended_p.
23650 (XTset_vertical_scroll_bar) [MAC_OSX]: Put leftmost/rightmost
23651 scroll bars on frame edge. Check fringe background extension.
23652 Don't clear extended fringe background area.
23653 (TOOLBAR_IDENTIFIER, TOOLBAR_ICON_ITEM_IDENTIFIER)
23654 (TOOLBAR_ITEM_COMMAND_ID_OFFSET, TOOLBAR_ITEM_COMMAND_ID_P)
23655 (TOOLBAR_ITEM_COMMAND_ID_VALUE, TOOLBAR_ITEM_MAKE_COMMAND_ID):
23656 [USE_MAC_TOOLBAR]: New macros.
23657 (mac_move_window_with_gravity, mac_get_window_origin_with_gravity)
23658 (mac_handle_toolbar_event, mac_image_spec_to_cg_image)
23659 (mac_create_frame_tool_bar, update_frame_tool_bar, free_frame_tool_bar)
23660 (mac_tool_bar_note_mouse_movement, mac_handle_toolbar_command_event)
23661 [USE_MAC_TOOLBAR]: New functions.
23662 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Reposition window
23663 manually if previous repositioning has failed.
23664 (mac_handle_keyboard_event): Use precomputed event kind.
23665 (XTread_socket) [USE_MAC_TOOLBAR]: Handle click in structure region
23666 as tool bar item click. Handle mouse movement over tool bar items.
23667
23668 * macterm.h (struct mac_output) [USE_MAC_TOOLBAR]: New member
23669 toolbar_win_gravity.
23670 (struct scroll_bar) [MAC_OSX]: New member fringe_extended_p.
23671 (update_frame_tool_bar, free_frame_tool_bar) [USE_MAC_TOOLBAR]:
23672 Add externs.
23673
23674 * xdisp.c (update_tool_bar, redisplay_tool_bar, redisplay_window)
23675 [USE_MAC_TOOLBAR]: Sync with GTK+ tool bar display.
23676
236772007-06-14 Chong Yidong <cyd@stupidchicken.com>
23678
23679 * image.c (search_image_cache): Remove unused variable.
23680
236812007-06-13 Chong Yidong <cyd@stupidchicken.com>
23682
23683 * xfns.c, xmenu.c: Link to xaw3d if available.
23684
236852007-06-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23686
23687 * dispextern.h (struct image) [HAVE_WINDOW_SYSTEM]: New members
23688 frame_foreground and frame_background.
23689
23690 * image.c (lookup_image): Save frame foreground and background colors.
23691 (search_image_cache): Check if saved and current frame colors match.
23692
236932007-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
23694
23695 * regex.c (regex_compile): Remove the `regnum' counter.
23696 Use bufp->re_nsub instead. Add support for \(?N:RE\).
23697
236982007-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
23699
23700 * term.c: Include intervals.h to declare Fget_text_property.
23701
237022007-06-10 Jason Rumney <jasonr@gnu.org>
23703
23704 * w32fns.c (Fx_file_dialog): Take size from struct not pointer.
23705
237062007-06-08 Juanma Barranquero <lekktu@gmail.com>
23707 17
23708 * callint.c (Fcall_interactively): 18 * eval.c (FletX): Test the type of VARLIST rather than just !NILP.
23709 * editfns.c (Fdelete_and_extract_region): 19 (Flet): Use XCAR instead of Fcar.
23710 * fileio.c (Fread_file_name):
23711 * fns.c (Fmapconcat):
23712 * keyboard.c (cmd_error_internal):
23713 * keymap.c (Fkey_description):
23714 * lread.c (openp):
23715 * minibuf.c (read_minibuf):
23716 * search.c (wordify):
23717 * sunfns.c (sel_read):
23718 * xdisp.c (Fformat_mode_line, syms_of_xdisp):
23719 * xfns.c (x_default_scroll_bar_color_parameter):
23720 * xmenu.c (menu_help_callback):
23721 * xselect.c (Fx_get_atom_name):
23722 * xterm.c (x_term_init): Use empty_unibyte_string.
23723 20
237242007-06-08 Dmitry Antipov <dmantipov@yandex.ru> (tiny change) 212007-10-16 Miles Bader <miles@gnu.org>
23725 22
23726 * alloc.c (init_strings): Initialize canonical empty strings. 23 * alloc.c (make_funvec, Fpurecopy): Set the pseudo-vector type.
23727 (make_uninit_string, make_uninit_multibyte_string): Return appropriate
23728 canonical empty string when the requested size is 0.
23729 24
23730 * emacs.c (empty_unibyte_string): Rename from empty_string. 252006-02-10 Miles Bader <miles@gnu.org>
23731 (empty_multibyte_string): New canonical empty string.
23732 (syms_of_emacs): Don't initialize empty_string.
23733 26
23734 * lisp.h (STRING_SET_UNIBYTE): Return the canonical empty unibyte 27 * eval.c (Ffunctionp): Supply new 2nd arg to Findirect_function.
23735 string, if appropriate.
23736 (empty_unibyte_string, empty_multibyte_string): New externs.
23737 (empty_string): Remove extern.
23738 28
23739 * lread.c (syms_of_lread): Use empty_unibyte_string. 292005-03-04 Miles Bader <miles@gnu.org>
23740 30
237412007-06-07 Jason Rumney <jasonr@gnu.org> 31 * eval.c (FletX): Update Vinterpreter_lexical_environment for each
32 variable we bind, instead of all at once like `let'.
23742 33
23743 * s/ms-w32.h: Don't define HAVE_TZNAME. 342004-08-09 Miles Bader <miles@gnu.org>
23744 35
23745 * editfns.c (Fcurrent_time_zone): Remove hack for Japanese Windows. 36 Changes from merging the funvec patch:
23746 37
237472007-06-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> 38 * eval.c (Feval, Ffuncall): Don't special-case vectors.
39 (funcall_lambda): Use FUNVEC_SIZE.
40 (Fcurry): Remove function.
23748 41
23749 * mac.c (xrm_get_preference_database): Remove BLOCK_INPUT. 42 Merge funvec patch.
23750 43
23751 * macfns.c (mac_get_window_bounds): Move extern to macterm.h. 442004-04-10 Miles Bader <miles@gnu.org>
23752 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use GetGlobalMouse.
23753 45
23754 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler): 46 * eval.c (Fspecialp): New function.
23755 Don't call next handler. 47 (syms_of_eval): Initialize it.
23756 [TARGET_API_MAC_CARBON] (install_menu_target_item_handler):
23757 Remove argument. Install handler to application.
23758 (set_frame_menubar): Don't change deep_p.
23759 (mac_menu_show): Use FRAME_OUTER_TO_INNER_DIFF_X and
23760 FRAME_OUTER_TO_INNER_DIFF_Y.
23761 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
23762 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
23763 [HAVE_DIALOGS]: New macros.
23764 [HAVE_DIALOGS] (mac_handle_dialog_event, create_and_show_dialog):
23765 Use them.
23766 (fill_menubar) [TARGET_API_MAC_CARBON]: Use CFString.
23767
23768 * macselect.c [MAC_OSX] (install_service_handler): Rename from
23769 init_service_handler. All callers changed. Return OSStatus value.
23770
23771 * macterm.c (mac_begin_cg_clip): New arg F. Call SetPortWindowPort.
23772 All callers changed so as not to call SetPortWindowPort.
23773 (mac_begin_cg_clip) [USE_CG_DRAWING]: Call mac_prepare_for_quickdraw.
23774 (mac_draw_image_string_atsui) [USE_ATSUI]: New function created from
23775 mac_draw_string_common.
23776 (mac_draw_image_string_qd): Likewise.
23777 (mac_draw_string_common): Use them. Add INLINE.
23778 (XTmouse_position, x_scroll_bar_report_motion) [TARGET_API_MAC_CARBON]:
23779 Use FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y, and
23780 GetGlobalMouse.
23781 (x_set_mouse_pixel_position) [MAC_OSX]: Use FRAME_OUTER_TO_INNER_DIFF_X
23782 and FRAME_OUTER_TO_INNER_DIFF_Y.
23783 [TARGET_API_MAC_CARBON] (mac_handle_mouse_event): Likewise.
23784 [USE_MAC_TSM] (mac_handle_text_input_event): Likewise.
23785 (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Move code for
23786 repositioning window to mac_handle_window_event.
23787 (x_make_frame_invisible) [TARGET_API_MAC_CARBON]: Move code for
23788 saving window location to mac_handle_window_event
23789 [USE_MAC_FONT_PANEL] (mac_show_hide_font_panel): Install handler here.
23790 (install_menu_target_item_handler): Remove argument in extern.
23791 [TARGET_API_MAC_CARBON] (mac_event_to_emacs_modifiers):
23792 Also accept command events.
23793 (do_keystroke): New function created from XTread_socket.
23794 (init_command_handler): Remove functions.
23795 [TARGET_API_MAC_CARBON] (mac_handle_window_event): Reposition window
23796 and save window location by kEventWindowShowing and kEventWindowHiding
23797 handlers here. Don't call next handler for window state change and
23798 focus events.
23799 (mac_handle_application_event, mac_handle_keyboard_event)
23800 [TARGET_API_MAC_CARBON]: New functions.
23801 (install_window_handler) [TARGET_API_MAC_CARBON]: Register handlers for
23802 kEventWindowShowing and kEventWindowHiding events. Move installation
23803 of mouse, font, text input and menu target item handlers to
23804 install_application_handler.
23805 (install_application_handler) [TARGET_API_MAC_CARBON]: New function.
23806 (mac_handle_cg_display_reconfig) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
23807 New function.
23808 (init_dm_notification_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
23809 Register it.
23810 (XTread_socket) [TARGET_API_MAC_CARBON]:
23811 Consolidate SendEventToEventTarget calls.
23812 Use FRAME_OUTER_TO_INNER_DIFF_X and FRAME_OUTER_TO_INNER_DIFF_Y.
23813 Move application activation handler to mac_handle_application_event.
23814 Move keyboard handler to mac_handle_keyboard_event.
23815 (XTread_socket) [!TARGET_API_MAC_CARBON]: Use do_keystroke.
23816 (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
23817 init_command_handler. Call install_application_handler.
23818
23819 * macterm.h (mac_get_window_bounds): Move extern from macfns.c.
23820 (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y): New macros.
23821
238222007-06-07 Glenn Morris <rgm@gnu.org>
23823
23824 * emacs.c (main): Use `emacs-copyright' in --version output.
23825
238262007-06-06 Chong Yidong <cyd@stupidchicken.com>
23827
23828 * image.c (xpm_load): Remove spurious call to xpm_init_color_cache.
23829
238302007-06-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23831
23832 * macfns.c (mac_window): Replace WindowPtr with WindowRef.
23833
23834 * macgui.h: Replace WindowPtr with WindowRef.
23835
23836 * macmenu.c: Replace MenuHandle and GetMenuHandle with MenuRef and
23837 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
23838 Replace ControlHandle with ControlRef.
23839 (install_menu_quit_handler): Rename arg MENU_HANDLE to ROOT_MENU.
23840
23841 * macterm.c: Replace MenuHandle and GetMenuHandle with MenuRef and
23842 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
23843 Replace ControlHandle with ControlRef.
23844 (USE_CARBON_EVENTS): Remove. Use TARGET_API_MAC_CARBON instead.
23845 [MAC_OS8] (do_get_menus): Rename variable `menu_handle' to `menu'.
23846
23847 * macterm.h (struct scroll_bar): Rename member control_handle_low
23848 and control_handle_high to control_ref_low and control_ref_high.
23849 All uses changed.
23850 (SCROLL_BAR_CONTROL_REF, SET_SCROLL_BAR_CONTROL_REF): Rename from
23851 SCROLL_BAR_CONTROL_HANDLE and SET_SCROLL_BAR_CONTROL_HANDLE,
23852 respectively. All uses changed.
23853 (XCreatePixmap, XCreatePixmapFromBitmapData, XSetWindowBackground)
23854 (install_window_handler, remove_window_handler): Replace WindowPtr
23855 with WindowRef in externs.
23856
238572007-06-05 Juanma Barranquero <lekktu@gmail.com>
23858
23859 * xfaces.c (Finternal_lisp_face_p): Signal error for face alias loops.
23860
238612007-06-03 Nick Roberts <nickrob@snap.net.nz>
23862
23863 * keyboard.c (discard_mouse_events): Add GPM_CLICK_EVENT case.
23864
23865 * frame.c (Fmouse_position, Fmouse_pixel_position):
23866 Condition on HAVE_GPM too.
23867
23868 * term.c (term_mouse_highlight): Remove unused variables.
23869 (Fterm_open_connection): Set gpm_zerobased to 1.
23870 (term_mouse_movement, term_mouse_click, handle_one_term_event):
23871 Use zero based co-ordinates.
23872 (handle_one_term_event): Report a drag as mouse movement too.
23873
23874 * Makefile.in (MOUSE_SUPPORT): Define for HAVE_GPM.
23875
238762007-06-03 Chong Yidong <cyd@stupidchicken.com>
23877
23878 * image.c (search_image_cache): New function. Require background
23879 color match if background color is unspecified in the image spec.
23880 (uncache_image, lookup_image): Use it.
23881
238822007-06-01 Juanma Barranquero <lekktu@gmail.com>
23883
23884 * window.c (Fshrink_window): Reflow docstring.
23885
238862007-06-02 Chong Yidong <cyd@stupidchicken.com>
23887
23888 * Version 22.1 released.
23889
238902007-06-01 Richard Stallman <rms@gnu.org>
23891
23892 * xfns.c (x_encode_text): Add GCPRO.
23893
238942007-06-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23895
23896 * xfns.c (x_set_name_internal): Save encoded name before
23897 x_encode_text in case string data is relocated.
23898
238992007-05-31 Richard Stallman <rms@gnu.org>
23900
23901 * buffer.c (syms_of_buffer): Doc fix.
23902
239032007-05-30 Nick Roberts <nickrob@snap.net.nz>
23904
23905 * sysdep.c (init_sys_modes): Add rather than replace with
23906 O_NONBLOCK.
23907
23908 * frame.c [HAVE_GPM] (Fset_mouse_pixel_position): Add call to
23909 term_mouse_moveto.
23910
23911 * termhooks.h (term_mouse_moveto): New extern.
23912
23913 * term.c (mouse_face_window): Rename...
23914 (Qmouse_face_window): ...to this.
23915 (term_show_mouse_face, term_clear_mouse_face)
23916 (term_mouse_highlight): Use Qmouse_face_window.
23917 (term_mouse_moveto): New function.
23918 (term_mouse_position): Make it work.
23919 (syms_of_term): Uncomment assignment to mouse_position_hook.
23920 Staticpro Qmouse_face_window.
23921
239222007-05-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23923
23924 * xdisp.c (redisplay_internal): Bind inhibit-point-motion-hooks to t
23925 around current_column call.
23926
239272007-05-26 Dan Nicolaescu <dann@ics.uci.edu>
23928
23929 * xfaces.c (syms_of_xfaces): Delete stray semicolon.
23930 * xdisp.c (next_element_from_buffer):
23931 * window.c (delete_window):
23932 * term.c (term_mouse_highlight):
23933 * msdos.c (getdefdir):
23934 * macterm.c (mac_create_bitmap_from_bitmap_data)
23935 (init_font_name_table):
23936 * fns.c (Fsxhash):
23937 * data.c (Fmake_local_variable):
23938 * ccl.c (ccl_driver): Likewise.
23939
239402007-05-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23941
23942 * macterm.c [USE_CARBON_EVENTS] (mac_handle_window_event):
23943 Call mac_wakeup_from_rne on window size change.
23944
239452007-05-25 Chong Yidong <cyd@stupidchicken.com>
23946
23947 * image.c (uncache_image): Fix typo.
23948
239492007-05-23 Johannes Weiner <hannes@saeurebad.de> (tiny change)
23950
23951 * keyboard.c (make_lispy_movement): Condition on HAVE_GPM too.
23952
239532007-05-22 Richard Stallman <rms@gnu.org>
23954
23955 * xterm.c (x_connection_closed): Remove NO_RETURN.
23956
239572007-05-22 Martin Rudalics <rudalics@gmx.at>
23958
23959 * syntax.c (scan_words): Fix arg to UPDATE_SYNTAX_TABLE_BACKWARD.
23960
239612007-05-21 Chong Yidong <cyd@stupidchicken.com>
23962
23963 * image.c (uncache_image): New function.
23964 (Fimage_refresh): New function.
23965
239662007-05-20 Jan Djärv <jan.h.d@swipnet.se>
23967
23968 * Makefile.in: Move GPM check outside HAVE_X_WINDOWS.
23969
239702007-05-20 Nick Roberts <nickrob@snap.net.nz>
23971
23972 * config.in, keyboard.c, Makefile.in, sysdep.c, term.c,
23973 * termhooks.h: Use HAVE_GPM instead of HAVE_GPM_H.
23974
239752007-05-20 Nick Roberts <nickrob@snap.net.nz>
23976
23977 * keyboard.c (make_lispy_event): Make case GPM_CLICK_EVENT
23978 conditional on [HAVE_GPM_H].
23979
239802007-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
23981
23982 * syntax.c (skip_chars): Update syntax-table only after we checked that
23983 the new location is valid.
23984
239852007-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23986
23987 * macterm.c (x_calc_absolute_position): Add BLOCK_INPUT around
23988 mac_get_window_bounds.
23989
239902007-05-20 Nick Roberts <nickrob@snap.net.nz>
23991
23992 * Makefile.in (LIBGPM): Allow it to be set from configure.
23993 If set then link Emacs with it.
23994
23995 * config.in: Regenerate.
23996
23997 * lisp.h (add_gpm_wait_descriptor, delete_gpm_wait_descriptor):
23998 New externs.
23999
24000 * termhooks.h [HAVE_GPM_H] (enum event_kind): Add GPM_CLICK_EVENT.
24001 Include gpm.h.
24002 (handle_one_term_event, term_gpm): New externs.
24003
24004 * sysdep.c [HAVE_GPM_H] (init_sys_modes): Make gpm_fd nonblocking
24005 and allow it to be interrupted by SIGIO.
24006
24007 * process.c (gpm_wait_mask, max_gpm_desc): New variables.
24008 (wait_reading_process_output): Wait on gpm_fd too.
24009 (add_gpm_wait_descriptor, delete_gpm_wait_descriptor)): New functions.
24010 (add_gpm_wait_descriptor_called_flag): New variable.
24011 (delete_keyboard_wait_descriptor): Check gpm_wait_mask.
24012
24013 * keyboard.c [HAVE_GPM_H] (Qmouse_fixup_help_message)
24014 (make_lispy_movement, tracking_off, Ftrack_mouse, some_mouse_moved)
24015 (show_help_echo, readable_events, kbd_buffer_get_event, init_keyboard):
24016 Extend HAVE_MOUSE ifdefs to HAVE_GPM_H.
24017 (make_lispy_event): Add case GPM_CLICK_EVENT.
24018 (read_avail_input): Handle mouse input.
24019
24020 * term.c (write_glyphs_with_face): New function.
24021 [HAVE_GPM_H]: Include buffer.h, sys/fcntl.h.
24022 (mouse_face_beg_row, mouse_face_beg_col, mouse_face_end_row)
24023 (mouse_face_end_col, mouse_face_past_end, mouse_face_window)
24024 (mouse_face_face_id, term_gpm, pos_x, pos_y)
24025 (last_mouse_x, last_mouse_y): New variables.
24026 (term_show_mouse_face, term_clear_mouse_face, fast_find_position)
24027 (term_mouse_highlight, term_mouse_movement, term_mouse_position)
24028 (term_mouse_click, handle_one_term_event, Fterm_open_connection)
24029 (Fterm_close_connection): New functions.
24030 (term_init): Initialise mouse_face_window.
24031
240322007-05-19 Chong Yidong <cyd@stupidchicken.com>
24033
24034 * xdisp.c (redisplay_window): If first window line is a
24035 continuation line, recompute the new window start instead of
24036 recentering.
24037
240382007-05-18 Glenn Morris <rgm@gnu.org>
24039
24040 * m/alpha.h (ORDINARY_LINK): No longer define on OpenBSD.
24041 Suggested by Alfred M. Szmidt <ams@gnu.org>.
24042
240432007-05-17 Glenn Morris <rgm@gnu.org>
24044
24045 * m/macppc.h (ORDINARY_LINK): No longer define on OpenBSD.
24046
240472007-05-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
24048
24049 * macterm.c [USE_CARBON_EVENTS] (mac_convert_event_ref): Also convert
24050 dead key repeat and up events.
24051
240522007-05-14 Chong Yidong <cyd@stupidchicken.com>
24053
24054 * image.c (pbm_load): Check image size for monochrome pbm.
24055
240562007-05-13 Chong Yidong <cyd@stupidchicken.com>
24057
24058 * xterm.c (XTread_socket): Revert last change.
24059
240602007-05-12 Chong Yidong <cyd@stupidchicken.com>
24061
24062 * image.c (pbm_load): Correctly check image size for greyscale pbm.
24063
24064 * xterm.c (XTread_socket): Yet Another Uncaught X Error Crash (YAUXEC).
24065
240662007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
24067
24068 * editfns.c (Ftranspose_regions): Yet another int/Lisp_Object
24069 mixup (YAILOM).
24070
240712007-05-07 Andreas Schwab <schwab@suse.de>
24072
24073 * keymap.c (Flookup_key): Fix typo in last change.
24074
240752007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
24076
24077 * keymap.c (Fdefine_key, Flookup_key): Only do the 0x80->meta_modifier
24078 mapping for unibyte strings.
24079
240802007-05-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
24081
24082 * macmenu.c (mac_dialog_show): Apply 2007-04-27 change for xmenu.c.
24083 (Fx_popup_dialog) [MAC_OSX]: Likewise.
24084
240852007-04-29 Richard Stallman <rms@gnu.org>
24086
24087 * insdel.c (replace_range): For undo, record insertion first.
24088
240892007-04-29 Andreas Schwab <schwab@suse.de>
24090
24091 * lisp.h (VECSIZE): Use OFFSETOF.
24092
240932007-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
24094
24095 * xdisp.c (try_window_reusing_current_matrix): Fix number of
24096 disabled lines.
24097
240982007-04-28 Richard Stallman <rms@gnu.org>
24099
24100 * lread.c (read_escape): In a string, \s is always space.
24101
241022007-04-27 Jan Djärv <jan.h.d@swipnet.se>
24103
24104 * xmenu.c (xdialog_show): Call Fredisplay before showing the dialog.
24105 48
24106 * gtkutil.c (xg_update_menubar, create_menus): Create empty 492004-04-03 Miles Bader <miles@gnu.org>
24107 submenu for menu bar items.
24108 50
24109See ChangeLog.10 for earlier changes. 51 * eval.c (Feval): If a variable isn't bound lexically, fall back
52 to looking it up dynamically even if it isn't declared special.
24110 53
24111;; Local Variables: 542002-08-26 Miles Bader <miles@gnu.org>
24112;; coding: utf-8
24113;; add-log-time-zone-rule: t
24114;; End:
24115 55
24116 Copyright (C) 2007, 2008, 2009, 2010 Free Software Foundation, Inc. 56 * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it.
24117 57
24118 This file is part of GNU Emacs. 582002-06-12 Miles Bader <miles@gnu.org>
24119 59
24120 GNU Emacs is free software: you can redistribute it and/or modify 60 Lexical binding changes to the byte-code interpreter:
24121 it under the terms of the GNU General Public License as published by
24122 the Free Software Foundation, either version 3 of the License, or
24123 (at your option) any later version.
24124 61
24125 GNU Emacs is distributed in the hope that it will be useful, 62 * bytecode.c (Bstack_ref, Bstack_set, Bstack_set2, Bvec_ref, Bvec_set)
24126 but WITHOUT ANY WARRANTY; without even the implied warranty of 63 (BdiscardN): New constants.
24127 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 64 (exec_byte_code): Rename from `Fbyte_code'.
24128 GNU General Public License for more details. 65 Implement above new bytecodes.
66 Add ARGS-TEMPLATE, NARGS and ARGS parameters, and optionally use
67 them push initial args on the stack.
68 (Fbyte_code): New function, just call `exec_byte_code'.
69 Add additional optional arguments for `exec_byte_code'.
70 (Qand_optional, Qand_rest): New extern declarations.
71 * eval.c (Fcurry, Ffunctionp): New functions.
72 (syms_of_eval): Initialize them.
73 (funcall_lambda): Call `exec_byte_code' instead of Fbyte_code.
74 If a compiled-function object has a `push-args' slot, call the
75 byte-code interpreter without binding any arguments.
76 (Ffuncall): Add support for curried functions.
77 * lisp.h (Fbyte_code): Declare max-args as MANY.
78 (exec_byte_code): New declaration.
24129 79
24130 You should have received a copy of the GNU General Public License 80 Lexical binding changes to the lisp interpreter:
24131 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
24132 81
24133;; arch-tag: dfb6ad96-1550-4905-9e53-d2059ee84c40 82 * lisp.h (struct Lisp_Symbol): Add `declared_special' field.
83 (apply_lambda): Add new 3rd arg to decl.
84 * alloc.c (Fmake_symbol): Initialize `declared_special' field.
85 * eval.c (Vinterpreter_lexical_environment): New variable.
86 (syms_of_eval): Initialize it.
87 (Fsetq): Modify SYM's lexical binding if appropriate.
88 (Ffunction): Return a closure if within a lexical environment.
89 (Flet, FletX): Lexically bind non-defvar'd variables if inside a
90 lexical environment.
91 (Feval): Return lexical binding of variables, if they have one.
92 Pass current lexical environment to embedded lambdas. Handle closures.
93 (Ffuncall): Pass nil lexical environment to lambdas. Handle closures.
94 (funcall_lambda): Add new LEXENV argument, and lexically bind
95 arguments if it's non-nil. Bind `interpreter-lexenv' if it changed.
96 (apply_lambda): Add new LEXENV argument and pass it to funcall_lambda.
97 (Fdefvaralias, Fdefvar, Fdefconst): Mark the variable as special.
98 (Qinternal_interpreter_environment, Qclosure): New constants.
99 (syms_of_eval): Initialize them.
100 (Fdefun, Fdefmacro): Use a closure if lexical binding is active.
101 * lread.c (defvar_bool, defvar_lisp_nopro, defvar_per_buffer)
102 (defvar_kboard, defvar_int): Mark the variable as special.
103 (Vlexical_binding, Qlexical_binding): New variables.
104 (syms_of_lread): Initialize them.
105 (Fload): Bind `lexically-bound' to nil unless specified otherwise
106 in the file header.
107 (lisp_file_lexically_bound_p): New function.
108 (Qinternal_interpreter_environment): New variable.
109 * doc.c (Qclosure): New extern declaration.
110 (Fdocumentation, store_function_docstring): Handle interpreted
111 closures.
112
113;; arch-tag: 7cf884aa-6b48-40cb-bfca-265a1e99b3c5