(font_sort_entities): Renamed from font_sort_entites.
[bpt/emacs.git] / src / ChangeLog
CommitLineData
1c6d1051
YM
12009-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2
3 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase here.
4 (x_delete_terminal): Dissociate resource database from display and
5 then call XrmDestroyDatabase before closing display.
6
9b9b779c
AR
72009-05-18 Adrian Robert <Adrian.B.Robert@gmail.com>
8
9 * nsterm.m (ns_read_socket): Remove unused variable.
1564e649
AR
10 * frame.c (do_switch_frame): Under NS_IMPL_COCOA section, check
11 whether selected frame is viable before raising it (based on patch
12 by David Reitter), and improve commentary.
13 * nsfont.m (nsfont_make_fontset_for_font): Avoid a compiler warning.
9b9b779c 14
cccd42d5
KH
152009-05-15 Kenichi Handa <handa@m17n.org>
16
17 * font.c (Ffont_spec): Check arguments.
18
337fbd17
CY
192009-05-14 Chong Yidong <cyd@stupidchicken.com>
20
21 * xfaces.c (tty_supports_face_attributes_p): Recognize unspecified
22 weight when testing attributes (Bug#3282).
23
47a6002f
JD
242009-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
25
26 * gtkutil.c (xg_frame_set_char_size): Set frame pixel width/height to
27 what we expect to get in the next ConfigureNotify event.
28
9cb363db
YM
29 * xftfont.c (xftfont_open): Make sure that Xrender extension is added
30 before Xft one (Bug#1696).
31
b9126609
CY
322009-05-07 David Reitter <david.reitter@gmail.com>
33
34 * nsfns.m (Fx_display_planes): Compute bitplanes using
35 NSBitsPerPixelFromDepth (Bug#3207).
36
27a69fd9
CY
372009-05-10 Chong Yidong <cyd@stupidchicken.com>
38
39 * editfns.c (Ftranspose_regions): Doc fix (Bug#3248).
40
00f37552
TTN
412009-05-10 Ulrich Mueller <ulm@gentoo.org>
42
43 * s/gnu-linux.h: Make GCPROs and UNGCPRO no-ops also on SuperH.
44
2d82a920
DR
452009-05-07 David Reitter <david.reitter@gmail.com>
46
47 * nsterm.m (ns_dumpglyphs_stretch,ns_dumpglyphs_image):
48 respect mouse face background.
49
46b0d52d
DR
502009-05-07 David Reitter <david.reitter@gmail.com>
51
52 * nsterm.m (note_mouse_movement,ns_frame_up_to_date):
53 mouse movement/highlight: bracket drawing operations
54 in ns_update_begin and ns_update_end.
55
ce1b23bb
SM
562009-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
57
5996e1b7
SM
58 * nsfns.m (ns_get_screen): Rewrite.
59 Don't presume selected-frame is of type `ns'.
60
ba98e3a0
SM
61 * font.c (font_update_drivers): Sanity fallback to avoid disabling
62 all drivers.
63
ce1b23bb
SM
64 * nsterm.m (-windowDidResize:): Avoid inf-loop under GNUStep.
65
bcda200f
YM
662009-05-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
67
68 * keyboard.h (add_user_signal): Fix typo in extern.
69
70 * lisp.h (add_user_signal): Remove extern.
71
72 * unexelf.c (unexec): Consider a section to precede the .bss section
73 if its addresses overlap that of .bss.
74 (unexec) [NS_IMPL_GNUSTEP]: Copy ObjC-related data from old file
75 instead of dumping process.
76
864660a2
SM
772009-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
78
79 * keyboard.c (syms_of_keyboard): Staticpro pending_funcalls.
80
50da4e56
SM
812009-05-04 Stefan Monnier <monnier@iro.umontreal.ca>
82
83 * Makefile.in (ctagsfiles1, ctagsfiles2): Include ObjC files in TAGS.
84
51520a1a
DN
852009-05-02 Dan Nicolaescu <dann@ics.uci.edu>
86
87 * xterm.c (x_handle_net_wm_state): Move declaration of lval before
88 any statements.
89
409ea3a1
AS
902009-05-02 Andreas Schwab <schwab@linux-m68k.org>
91
59c4c60f
AS
92 * process.c (read_process_output): Make sure the current buffer is
93 always restored.
94
409ea3a1
AS
95 * coding.c (record_conversion_result): Don't modify
96 Vlast_code_conversion_error for successful result.
97 (alloc_destination): Don't clobber conversion result. (Bug#1650)
98
56f00ed2
KH
992009-05-01 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
100
101 * charset.c (load_charset): Reformat X==Y==Z to (X==Y)==Z.
896b1cc9 102 (load_charset_map): Remove unnecessary code.
56f00ed2 103
4491c9d2
DR
1042009-04-30 David Reitter <david.reitter@gmail.com>
105
35f5b128 106 * nsterm.m (convert_ns_to_X_keysym): Define function keys f16
4491c9d2
DR
107 through f24.
108
6970f632
CY
1092009-04-30 Chong Yidong <cyd@stupidchicken.com>
110
111 * xfaces.c (face_at_buffer_position): New arg base_face_id.
112
113 * xdisp.c (handle_face_prop): Pass base_face_id of iterator to
114 face_at_buffer_position.
115 (face_before_or_after_it_pos, get_next_display_element)
116 (note_mouse_highlight): Update face_at_buffer_position call.
117
118 * term.c (term_mouse_highlight):
119 * msdos.c (IT_note_mouse_highlight):
120 * fontset.c (Finternal_char_font):
35f5b128 121 * font.c (font_at, font_range): Update face_at_buffer_position call.
6970f632
CY
122
123 * dispextern.h (face_at_buffer_position): Update prototype.
124
0c616f63
KH
1252009-04-30 Kenichi Handa <handa@m17n.org>
126
35f5b128 127 * fontset.c (fontset_find_font): Check if rfont_def is Qnil or not.
0c616f63 128
ad3aaf33
AS
1292009-04-29 Andreas Schwab <schwab@linux-m68k.org>
130
131 * callproc.c (Fcall_process): Fix GC protection. Make sure
132 current buffer is always restored.
133
c3c963a0
YM
1342009-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
135
136 * atimer.c (init_atimer): Also clear stopped_atimers.
137
138 * keyboard.c (init_keyboard) [POLL_FOR_INPUT]: Reset poll_timer.
139
7e3386cb
YM
140 * process.c (create_process): Clean up merger residues of
141 2008-07-17 change.
142
91f68422
CY
1432009-04-29 Ulrich Mueller <ulm@gentoo.org>
144
145 * lread.c (Vread_circle): New variable.
146 (read1): Disable recursive read if Vread_circle is nil.
147
24b34550
KH
1482009-04-29 Kenichi Handa <handa@m17n.org>
149
150 * fontset.h (set_default_ascii_font): Delete extern.
151
152 * fontset.c (set_default_ascii_font): Delete this unused function.
153
154 * frame.c (x_set_font): When ARG is a font-object, check if the
155 font-object matches with the ASCII font-spec of the frame's
9c358bda 156 fontset. If not, create a new fontset for the frame. (Bug #3075)
24b34550 157
77bf07e1
AS
1582009-04-28 Andreas Schwab <schwab@linux-m68k.org>
159
160 * fns.c (Flocale_info): Protect vector from GC during decoding.
161
162 * process.c (Fstart_process): Protect argv strings from GC during
163 encoding.
164
2c55aacf
AS
1652009-04-27 Andreas Schwab <schwab@linux-m68k.org>
166
167 * sysdep.c: Include <ctype.h>.
168
b892d3c9
DR
1692009-04-27 David Reitter <david.reitter@gmail.com>
170
35f5b128 171 * nsfont.m (nsfont_open): Remove unused variable shrink.
b892d3c9
DR
172 Remove commented-out code.
173
9d0644c4
JB
1742009-04-26 Johan Bockgård <bojohan@gnu.org>
175
176 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
177
b7053016
JR
1782009-04-25 Jason Rumney <jasonr@gnu.org>
179
180 * w32font.c (clear_cached_metrics): Remove, unused since 2008-08-02.
181
4e8231f3
YM
1822009-04-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
183
184 * fringe.c (init_fringe_bitmap) [HAVE_X_WINDOWS && WORDS_BIG_ENDIAN]:
185 Swap bytes in short integer if fringe bitmap width > 8.
186
493dcf2c
KH
1872009-04-23 Kenichi Handa <handa@m17n.org>
188
189 * xfaces.c (Fx_list_fonts): If a font size is specified in
190 PATTERN, set it in returned scalable fonts.
191
401e9e57
CY
1922009-04-22 Chong Yidong <cyd@stupidchicken.com>
193
708e05dc
CY
194 * keyboard.c (Fset_input_meta_mode): Doc fix.
195
196 * dispnew.c (Fsend_string_to_terminal): Doc fix.
197
198 * data.c (Fterminal_local_value, Fset_terminal_local_value): Doc
199 fixes.
200
201 * coding.c (Fterminal_coding_system): Doc fix.
202
203 * xfns.c (Fx_display_grayscale_p, Fx_display_pixel_width)
204 (Fx_display_pixel_height, Fx_display_planes)
205 (Fx_display_color_cells, Fx_server_max_request_size)
206 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
207 (Fx_display_mm_height, Fx_display_mm_width)
208 (Fx_display_backing_store, Fx_display_visual_class)
209 (Fx_display_save_under, Fx_close_connection, Fx_synchronize): Doc
210 fixes, replacing "terminal id" with "terminal object".
211 (check_x_display_info): Handle terminal objects instead of
212 terminal ids.
213
401e9e57
CY
214 * term.c (Ftty_display_color_p, Ftty_display_color_cells)
215 (Ftty_type, Fcontrolling_tty_p, Ftty_no_underline, Fsuspend_tty)
fdc496e7
CY
216 (Fresume_tty, Vsuspend_tty_functions, Vresume_tty_functions): Doc
217 fixes, replacing "terminal id" with "terminal object".
401e9e57 218
df80c7f0
KH
2192009-04-21 Kenichi Handa <handa@m17n.org>
220
5a8f12af 221 * font.c (font_load_for_lface): Cancel previous change (bug#2994).
c0a6070d 222 (font_score): Check AVGWIDTH too.
908567ef 223
df80c7f0
KH
224 * coding.c (decode_coding_utf_16): Reduce charbuf_end for the
225 worst case.
226 (decode_coding_emacs_mule, decode_coding_iso_2022)
227 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
228 Likewise.
229
705af33f
JR
2302009-04-19 Jason Rumney <jasonr@gnu.org>
231
232 The following changes fix Bug#3005 for wide glyphs on each platform,
b71ac3dd 233 without reintroducing Bug#1258 for stretch glyphs.
705af33f
JR
234
235 * xterm.c (x_draw_bar_cursor): Limit cursor width differently for
236 BAR_CURSOR and HBAR_CURSOR. Calculate width of HBAR_CURSOR using
237 get_phys_cursor_geometry.
238
b71ac3dd 239 * w32term.c (x_draw_bar_cursor): Limit cursor width differently
705af33f
JR
240 for BAR_CURSOR and HBAR_CURSOR. Calculate width of HBAR_CURSOR
241 using get_phys_cursor_geometry.
242
243 * nsterm.m (ns_draw_window_cursor): HBAR_CURSOR width already
244 correctly calculated.
245
dc2933eb
JD
2462009-04-19 Jan Djärv <jan.h.d@swipnet.se>
247
248 * gtkutil.c (xg_tool_bar_menu_proxy, update_frame_tool_bar): Use
249 G_CALLBACK instead of GTK_SIGNAL_FUNC which is deprecated.
250 (xg_initialize): Use g_type_class_ref instead of gtk_type_class which
251 is deprecated.
252
973e7849
AS
2532009-04-18 Andreas Schwab <schwab@linux-m68k.org>
254
255 * font.c (font_put_frame_data): Use xfree instead of free.
256
314d66f4
JB
2572009-04-17 Juanma Barranquero <lekktu@gmail.com>
258
259 * w32font.c (Qja, Qko): Remove declarations.
260 (syms_of_w32font): Don't DEFSYM them.
261
cf702558
CY
2622009-04-17 Chong Yidong <cyd@stupidchicken.com>
263
264 * font.c (Qja, Qko): Move definitions here from ftfont.c.
265
266 * font.h (Qja, Qko): Extern them.
267
268 * ftfont.c (Qja, Qko): Remove declarations.
269
270 * xfont.c (Qja, Qko): Remove declarations.
271
b50504f5
KH
2722009-04-17 Kenichi Handa <handa@m17n.org>
273
bde25748
KH
274 * editfns.c (Ftranslate_region_internal): Use Fconcat to make a
275 string from a vector to handle Latin-1 characters correctly.
276
b50504f5
KH
277 * ftfont.c (ftfont_pattern_entity): Return a newly allocated
278 entity even if the cache hits.
279
f4646fff
AS
2802009-04-16 Andreas Schwab <schwab@linux-m68k.org>
281
282 * search.c (boyer_moore): Use zero as marker value for a possible
6340c70e 283 match instead of depending on overflow behavior. (Bug#2844)
f4646fff 284
e7deaab0
AS
285 * search.c: Use EMACS_INT for buffer positions. Add prototypes.
286 * lisp.h: Adjust prototypes.
287
0a0e7d49
CY
2882009-04-16 Chong Yidong <cyd@stupidchicken.com>
289
290 * keyboard.c (adjust_point_for_property): Disable 2009-02-12
291 change (Bug#3003).
292
3c908a57
KH
2932009-04-16 Kenichi Handa <handa@m17n.org>
294
bd0af90d
KH
295 * xfont.c (xfont_has_char): Special handling of `ja' and `ko'
296 adstyle.
297
298 * xftfont.c (xftfont_has_char): Special handling of `ja' and `ko'
299 adstyle.
300
301 * ftfont.c (Qja, Qko): Don't make them static.
302 (enum ftfont_cache_for): New enum.
303 (fc_charset_table): Undo the previous change.
304 (ftfont_get_latin1_charset): Delete it.
305 (ftfont_pattern_entity): Check cache by ftfont_lookup_cache. Set
306 FONT_SIZE_INDEX of the entity to 0 for a scalable font. For a
307 non-scarable font, try to get AVERAGE_WIDTH.
308 (ftfont_lookup_cache): Argument FOR-FACE is changed to CACHE_FOR.
309 Change ft_face_cache from a list of a hash-table. Don't check
310 `ja' and `ko' adstyle here.
311 (ftfont_get_fc_charset): Call ftfont_lookup_cache with
312 FTFONT_CACHE_FOR_CHARET.
313 (ftfont_get_charset): Undo the previous change.
314 (ftfont_open): Call ftfont_lookup_cache with
315 FTFONT_CACHE_FOR_FACE.
316 (ftfont_close): Likewise.
317 (ftfont_has_char): Special handling of `ja' and `ko' adstyle.
318
319 * font.c (font_sort_entites): Change the meaning of the arg
320 BEST-ONLY. Don't optimize for VEC of lenght 1.
321 (font_select_entity): Just return the value of font_sort_entites.
322
323 * xfaces.c (merge_face_vectors): Reflect font properties in
324 to[LFACE_FONT_INDEX] to the other face attributes. Don't call
325 font_clear_prop if a face attribute doesn't change.
326
3c908a57
KH
327 * charset.h (charset_ksc5601): Extern it.
328
329 * charset.c (charset_ksc5601): New variable.
330 (Fdefine_charset_internal): Set charset_ksc5601.
331 (init_charset_once): Initialize charset_ksc5601 to -1.
332
d65859c3
DN
3332009-04-15 Dan Nicolaescu <dann@ics.uci.edu>
334
335 * fileio.c (history_delete_duplicates): Remove unused declaration.
336
337 * callint.c (history_delete_duplicates): New declaration.
338 (Fcall_interactively): Remove command history duplicates when
339 history_delete_duplicates is true.
340
3ba010e5
EZ
3412009-04-14 Eli Zaretskii <eliz@gnu.org>
342
343 * buffer.c (syms_of_buffer) <line-spacing>: Doc fix.
344
06f19b91
KH
3452009-04-14 Kenichi Handa <handa@m17n.org>
346
347 * font.c (Ffont_info): Fix docstring. Fix the second element of
348 the returned value (bug#2949).
349
2cce8bfc
CY
3502009-04-14 Chong Yidong <cyd@stupidchicken.com>
351
352 * xdisp.c (Vwrap_prefix, Vline_prefix): Reflow docstrings.
353
d156542d
KH
3542009-04-14 Kenichi Handa <handa@m17n.org>
355
356 * xfont.c (xfont_has_char): The font has C if C is ASCII and the
357 encoding charset is ascii_compatible.
358
359 * charset.c (Fdefine_charset_internal): Make charset
360 ascii-compatible if the method is CHARSET_METHOD_OFFSET, the
361 code_offset is 0, and covers all ASCII characters.
362
86fa089e
SM
3632009-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
364
365 * nsselect.m (symbol_to_nsstring, clean_local_selection_data)
366 (ns_string_to_pasteboard_internal):
367 * nsmenu.m (process_dialog):
368 * nsimage.m (ns_load_image): Use SDATA and ASET where appropriate.
369 * nsfont.m (nsfont_open): Use XHASH to make it compile with LISP_UNION.
370 * lisp.h (Fx_load_color_file): Declare.
371
a8a3728b
KH
3722009-04-13 Kenichi Handa <handa@m17n.org>
373
374 * font.c (font_delete_unmatched): Preserve the order of list
375 elements.
376 (font_select_entity): Suppress the code to optimize for the same
377 kind of fonts.
378 (font_load_for_lface): Get a font that supports at least ASCII
379 characters.
380
381 * ftfont.c (Qja, Qko): New variables.
382 (fc_charset_table): Delete uniquifier data for iso8859-1.
383 (ftfont_get_latin1_charset): New function.
384 (get_adstyle_property): New function.
385 (ftfont_pattern_entity): Set FONT_ADSTYLE_INDEX of entity for
386 bitmap fonts.
387 (ftfont_lookup_cache): Handle the case that KEY is a font-entity.
388 Delete iso-8859-1 range from the charset of fonts whose adstyle is
389 `ko' or `ja'.
390 (ftfont_get_fc_charset): Call ftfont_lookup_cache with ENTITY.
391 (ftfont_get_charset): For iso8859-1, call
392 ftfont_get_latin1_charset.
393 (ftfont_list): Don't refuse a font spec with non-nil `adstyle'
394 property.
395 (ftfont_open): Call ftfont_lookup_cache with ENTITY.
396 (syms_of_ftfont): DEFSYM Qja and Qko.
397
483670b5
KH
3982009-04-09 Kenichi Handa <handa@m17n.org>
399
12b55765
KH
400 * charset.c (map_charset_chars): For a charset of `superset'
401 method, fix calculation of code range.
402
483670b5
KH
403 * font.c (font_put_extra): If VAL is nil, delete the slot for PROP
404 from the list of extra properties.
405 (font_clear_prop): Be sure to delete `:name' font property.
406
57d3b93b
KH
4072009-04-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
408
b4b2c2ca
YM
409 * dispnew.c (redraw_overlapping_rows): Fix detection of
410 overlapping for topmost and bottommost rows.
411
57d3b93b
KH
412 * ftfont.c (ftfont_text_extents): Fix calculation of
413 metrics->descent.
414
472c3609
JR
4152009-04-06 Jason Rumney <jasonr@gnu.org>
416
417 * frame.c (x_set_font): Avoid C99 mid-block variable declaration.
418
ab193662
KH
4192009-04-06 Kenichi Handa <handa@m17n.org>
420
421 * ftxfont.c (ftxfont_draw_backgrond): Fix args to XFillRectangle.
422
423 * xftfont.c (xftfont_open): Fix setting font->underline_thickness.
424
0c26f026
KH
4252009-04-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
426
427 * ftfont.c (ftfont_open): Fix checking of the return value of
428 FT_Load_Char. Fix setting font->underline_thickness.
429
e173bbce
CY
4302009-04-04 Chong Yidong <cyd@stupidchicken.com>
431
432 * terminal.c (Fterminal_name, Fdelete_terminal, Fterminal_name)
433 (Fterminal_parameters, Fterminal_parameter)
434 (Fset_terminal_parameter): In doc string, refer to terminal
435 objects rather than terminal ids.
436
693a2698
EZ
4372009-04-04 Eli Zaretskii <eliz@gnu.org>
438
439 * dosfns.c (system_process_attributes) [SYSTEM_MALLOC]: Don't call
440 ret_lim_data. (Bug#2867)
441
d5221487
CY
4422009-04-03 Chong Yidong <cyd@stupidchicken.com>
443
444 * term.c (produce_stretch_glyph): Reduce width of stretch glyphs
445 so they don't get wider than the window, matching 2006-01-23
446 change to the partner function in xdisp.c (Bug#2800).
447
223509a3
KH
4482009-04-03 Kenichi Handa <handa@m17n.org>
449
450 * print.c (print_object): Make each lowest sub_char_table start a
451 new line (Bug#2866).
452
74fcd0b1
KH
4532009-04-02 Kenichi Handa <handa@m17n.org>
454
455 * fontset.c (fontset_font): Record no-font when a fontset
456 explicitly tells not to try another font-specs.
457
c542407d
SM
4582009-03-30 Pierre Poissinger <pierre.poissinger@gmail.com> (tiny change)
459
460 * charset.c (map_charset_for_dump): Add missing UNGCPRO.
461
e3869731
KH
4622009-03-30 Kenichi Handa <handa@m17n.org>
463
d8d2f142
KH
464 * fontset.c (fontset_from_font): Specify only registry in a
465 font-spec for all characters supported by that registry.
466
e3869731
KH
467 * ftfont.c: Fix previous change. Define ftfont_variation_glyphs
468 even if HAVE_M17N_FLT is not defined.
469
5da5f805
CY
4702009-03-29 Sebastian Rose <sebastian_rose@gmx.de> (tiny change)
471
472 * ftfont.c: Conditionalize prototyping and use of
473 ftfont_variation_glyphs.
474
ab226c50
SM
4752009-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
476
9628fed7
SM
477 * frame.c (delete_frame): Work around compiler bug.
478
479 * editfns.c (general_insert_function): Adjust to insdel.c changes.
480 * insdel.c (prepare_to_modify_buffer, signal_before_change):
481 Some more EMACS_INT.
482 * lisp.h (copy_text, count_size_as_multibyte): Fix last change.
483
484 * xdisp.c (dump_glyph): Fix typo.
485
ae19ba7c
SM
486 * insdel.c (move_gap, move_gap_both, gap_left, gap_right)
487 (adjust_markers_gap_motion, adjust_markers_for_delete)
488 (adjust_markers_for_insert, adjust_point)
489 (adjust_markers_for_replace, make_gap_larger, make_gap_smaller)
490 (make_gap, copy_text, count_size_as_multibyte, insert)
491 (insert_and_inherit, insert_before_markers)
492 (insert_before_markers_and_inherit, insert_1)
493 (count_combining_before, count_combining_after, insert_1_both)
494 (insert_from_string, insert_from_string_before_markers)
495 (insert_from_string_1, insert_from_gap, insert_from_buffer)
496 (insert_from_buffer_1, adjust_after_replace)
497 (adjust_after_replace_noundo, adjust_after_insert, replace_range)
498 (replace_range_2, del_range, del_range_1, del_range_byte)
499 (del_range_both, del_range_2, modify_region)
500 (prepare_to_modify_buffer, signal_before_change)
501 (signal_after_change, Fcombine_after_change_execute): Use EMACS_INT
502 for buffer positions and sizes.
503 * lisp.h: Adjust prototypes accordingly.
504
505 * fileio.c (adjust_markers_for_delete): Move declaration to lisp.h.
506 (non_regular_inserted, non_regular_nbytes, read_non_regular)
507 (Finsert_file_contents): Use EMACS_INT for buffer positions.
508
ab226c50
SM
509 * fileio.c (Finsert_file_contents): Don't limit size to INT_MAX/4.
510
46dfb8fb
JD
5112009-03-27 Jan Djärv <jan.h.d@swipnet.se>
512
513 * frame.c (x_set_font): If the fullscreen property is non-nil, adjust
514 lines and columns so we keep the same pixel height and width.
515
516 * xterm.c (handle_one_xevent): Call x_handle_net_wm_state if
517 the property _NET_WM_STATE has changed.
46dfb8fb
JD
518 (x_handle_net_wm_state): New function to update frame parameter
519 fullscreen.
520 (x_term_init): Initialize atoms for _NET_WM_STATE.
521
522 * xterm.h (struct x_display_info): Add atoms for _NET_WM_STATE.
523
d347e494
SM
5242009-03-27 Kevin Ryde <user42@zip.com.au>
525
526 * keyboard.c (tty_read_avail_input): Don't treat a -1 return from
527 Gpm_GetEvent as an error that justifies closing the filedescriptor.
528 * term.c (close_gpm): Get the filedescriptor as a (new) parameter.
529 (Fgpm_mouse_stop): Pass that new parameter.
530 * termhooks.h (close_gpm): Adjust prototype.
531
84db11d6
SM
5322009-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
533
c95a5008
SM
534 * lisp.h (Fx_focus_frame): Declare.
535
84db11d6
SM
536 * callint.c (Fcall_interactively): For '^' just delegate the work to
537 handle-shift-selection.
538 (syms_of_callint): Move declaration of shift-select-mode to simple.el.
539
0a1958d6
CY
5402009-03-24 Chong Yidong <cyd@stupidchicken.com>
541
0bfdff23
CY
542 * editfns.c (Ffloat_time): Doc fix (Bug#2768).
543
0a1958d6
CY
544 * data.c (Qinteractive_form): New variable.
545 (Finteractive_form): Use it.
546
547 * eval.c (Fcommandp): Use Qinteractive_form.
548
58aec0d6
JR
5492009-03-24 Jason Rumney <jasonr@gnu.org>
550
551 * fileio.c (Fsubstitute_in_file_name): Always work on a copy.
552 Calculate total size precisely. Decode environment variables
553 before substituting. (Bug#38)
554
553dd618
KH
5552009-03-24 Kenichi Handa <handa@m17n.org>
556
557 * font.c (find_font_encoding): Return Qnil for unsupported
639239cf 558 encoding (Bug#2722).
553dd618 559
c39ea606
JD
5602009-03-23 Jan Djärv <jan.h.d@swipnet.se>
561
562 * gtkutil.c (xg_display_open): Assign a value to gdpy_def, check
563 that gdpy is set.
564
bc9b2b5e
AM
5652009-03-22 Alan Mackenzie <acm@muc.de>
566
567 * callint.c (Finteractive): Clarify the doc string - even
568 promptless elements need \n separators.
569
9f995a76
JR
5702009-03-22 Jason Rumney <jasonr@gnu.org>
571
572 * w32term.c (syms_of_w32term): Doc fix for
573 x-use-underline-position-properties.
574
22749e9a
EZ
5752009-03-21 Eli Zaretskii <eliz@gnu.org>
576
577 * w32.c (getpwuid): Change argument type to unsigned.
578 (struct w32_id): Change type of `rid' member to unsigned.
579 (w32_cached_id, w32_add_to_cache, get_name_and_id): Change type of
580 argument ID to unsigned. All callers changed.
581 (getuid, geteuid, getgid, getegid): Change return type to unsigned.
582
e00553bf
EZ
5832009-03-20 Eli Zaretskii <eliz@gnu.org>
584
585 * editfns.c (Fuser_uid, Fuser_real_uid): If UID as EMACS_INT is
586 negative, produce a float value.
587
588 * dired.c (make_uid, make_gid): New functions.
589 (Ffile_attributes): Use them to avoid negative UID and GID.
590
f761d6b6
JB
5912009-03-20 Juanma Barranquero <lekktu@gmail.com>
592
593 * keyboard.c (Fcurrent_idle_time): Reflow docstring.
594 (syms_of_keyboard) <command-hook-internal, input-method-function>:
595 Fix typos in docstrings.
596
d507f8d7
KH
5972009-03-19 Kenichi Handa <handa@m17n.org>
598
599 * fontset.c (Fset_fontset_font): When a spec of ASCII font is
f761d6b6
JB
600 changed, use font_load_for_lface to get a new font object.
601 Call free_realized_fontset after handling ASCII font change.
d507f8d7
KH
602
603 * frame.c (x_set_font): Handle the case that ARG is a cons.
604
c68845e0
GM
6052009-03-19 Glenn Morris <rgm@gnu.org>
606
607 * fileio.c (Fsubstitute_in_file_name): Doc fix.
608
bfa49dd1
CY
6092009-03-19 Chong Yidong <cyd@stupidchicken.com>
610
611 * indent.c (Fvertical_motion): Undo 2005-01-19 change (Bug#2694).
612
8458d4c1
KH
6132009-03-19 Kenichi Handa <handa@m17n.org>
614
615 * charset.c (load_charset_map_from_file): When a mapfile can't be
616 loaded, signal an error.
617
78e7d1fe
EZ
6182009-03-18 Eli Zaretskii <eliz@gnu.org>
619
620 * dired.c (Ffile_attributes): Make sure UID and GID are always
621 positive, even if the value is too large for a positive EMACS_INT.
622 Doc fix.
623
624 * editfns.c (Fuser_login_name): Support float arguments. Doc fix.
625
5da9fdfa
YM
6262009-03-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
627
628 * xmenu.c (xdialog_show): Move Fredisplay call ...
629 (Fx_popup_dialog): ... here.
630
7519c40d
SM
6312009-03-18 Stefan Monnier <monnier@iro.umontreal.ca>
632
633 * dired.c (file_name_completion): Disable the first optimization just
634 installed, since it is not implemented correctly.
635
2cd298e2
SM
6362009-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
637
638 * dired.c (file_name_completion): Check completion-ignored-extensions
c95a5008 639 only if the entry can affect bestmatch.
2cd298e2
SM
640 Stop the search early, as Ftry_completion already does.
641
48d37adf
CY
6422009-03-17 Chong Yidong <cyd@stupidchicken.com>
643
e10c9c93 644 * minibuf.c (Vminibuffer_completion_confirm): Doc fix.
48d37adf 645
9286b16a
CY
6462009-03-15 Chong Yidong <cyd@stupidchicken.com>
647
648 * keyboard.c (parse_menu_item): Don't display remappings as menu
649 equivalent bindings (Bug#788).
650
f7b146dc
JR
6512009-03-15 Jason Rumney <jasonr@gnu.org>
652
653 * w32term.h (WM_EMACS_PAINT): New message.
654 * w32term.c (w32_read_socket): Use it instead of WM_PAINT.
655 * w32fns.c (w32_wnd_proc): Change WM_PAINT to WM_EMACS_PAINT
656 before passing to lisp thread. (Bug#950)
657
f761d6b6 6582009-03-14 David Reitter <david.reitter@gmail.com>
c6c62e78 659
d93f9575
CY
660 * nsterm.m (ns_shutdown_properly, -terminate): Remove global state
661 variable as it was never reset.
662 (ns_term_init): Remove initialization of Lisp-settable defaults
663 and ns_expand_space.
664 (-setPanelFromDefaultValues): Remove ns_expand_space.
665 (-showPreferencesWindow): Send new KEY_NS_SHOW_PREFS key.
666 * nsfont.m (nsfont_open): Remove ns_expand_space, assume -0.5
c6c62e78
DR
667 i.e. no additional spacing, similar to Carbon port.
668
d93f9575
CY
669 * nsterm.h: Define KEY_NS_SHOW_PREFS key.
670 * nsfns.m (ns-popup-prefs-panel): Remove.
c6c62e78 671
305018ec
JD
6722009-03-14 Jan Djärv <jan.h.d@swipnet.se>
673
674 * sound.c (alsa_configure): Remove call to deprecated
675 snd_pcm_sw_params_set_xfer_align.
676
f761d6b6 6772009-03-14 Stephen Berman <stephen.berman@gmx.net>
4a02423f
JD
678
679 * gtkutil.c (xg_tool_bar_callback): Set focus back to the frame
680 after clicking in a detached tool bar.
681 (xg_tool_bar_proxy_callback): Remove call to Fx_focus_frame.
682
46e722a9
SM
6832009-03-13 Stefan Monnier <monnier@iro.umontreal.ca>
684
348db3dd
SM
685 * fontset.c (fontset_from_font, Ffontset_info): YAILOM (Yet another
686 int/Lisp_Object mixup).
46e722a9 687
a3d16f39
KH
6882009-03-13 Kenichi Handa <handa@m17n.org>
689
690 * fontset.c (Ffontset_info, check_fontset_name): New arg frame.
fe24f56a 691 Handle NAME nil and t correctly. Callers changed.
a3d16f39
KH
692 (font_def_arg, add_arg, from_arg, to_arg): Delete them.
693 (set_fontset_font): Change ARG to a vector. Handle range_list in
694 ARG correctly.
695 (Fset_fontset_font): Fix the case that TARGET is both a script
fe24f56a 696 name and charset name. Adjust the arg to set_fontset_font for
a3d16f39
KH
697 the above change.
698 (fontset_from_font): Fix previous change.
fe24f56a 699 (Ffontset_info): Adjust for the 2008-07-09 change of fontset
a3d16f39
KH
700 entry. If FONTSET is the default fontset, don't set the extra
701 slot of the returning char-table.
702
b066e6b6
JB
7032009-03-12 Juanma Barranquero <lekktu@gmail.com>
704
705 * nsfns.m (Fx_close_connection): Doc fix.
706 (Fns_do_applescript): Reflow docstring.
707 (Fns_hide_others, Fns_hide_emacs, Fns_convert_utf8_nfd_to_nfc)
708 (Fx_display_pixel_width, Fx_display_pixel_height)
709 (Fns_display_usable_bounds, Fx_display_planes, Fx_show_tip):
710 Fix typos in docstrings.
711 (Fns_set_alpha): Fix typos in error messages.
712
d472514e 7132009-03-12 David Reitter <david.reitter@gmail.com>
d6220c13 714
d472514e 715 * termhooks.h [HAVE_NS]: Define NS_NONKEY_EVENT to be used for
d6220c13
DR
716 non-key system events on NS. Formerly, NON_ASCII_KEYSTROKE_EVENT
717 were used for such events.
718
d472514e
JB
719 * nsterm.m (newFrame, openFile, fulfillService, changeFont)
720 (toggleToolbar, performDragOperation, runHelp): Use it.
d6220c13 721
d472514e 722 * keyboard.c (parse_menu_item) [HAVE_NS]: Treat new event like
d6220c13
DR
723 NON_ASCII_KEYSTROKE_EVENT, but set used_mouse_menu.
724
fb930676
KH
7252009-03-11 Kenichi Handa <handa@m17n.org>
726
ff85581a
KH
727 * font.h (font_open_by_spec): Extern it.
728
c50b7e98
KH
729 * font.c (font_open_by_spec): New function.
730 (font_open_by_name): Use font_open_by_spec.
731
fb930676
KH
732 * frame.c (x_set_font): When ARG is a font-object, don't alter the
733 fontset of the frame.
734
735 * fontset.c (Fset_fontset_font): When a font for ASCII is changed,
736 modify the default font of frames that use this fontset.
737 (num_auto_fontsets): New variable.
738 (fontset_from_font): Use num_auto_fontsets to decide a fontset
739 name. Be sure to set FONTSET_ASCII to the correct font name.
740 (update_auto_fontset_alist): New function.
741
df4e8455
JB
7422009-03-11 Juanma Barranquero <lekktu@gmail.com>
743
744 * makefile.w32-in: Update dependencies.
745
0a375797
AR
7462009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
747
748 * nsfns.m (syms_of_nsfns): Remove Qbuffered.
749
61313fa3
SM
7502009-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
751
752 * buffer.c (Fswitch_to_buffer): Revert part of 2008-10-21's change.
753
b55103fb
CY
7542009-03-10 Chong Yidong <cyd@stupidchicken.com>
755
756 * lread.c (Feval_buffer): Doc fix.
757
dde2559c
KH
7582009-03-09 Kenichi Handa <handa@m17n.org>
759
760 * charset.c (Qfile_name_handler_alist): Extern it.
761 (load_charset_map_from_file): Temporarily bind
762 `file-name-handler-alist' to nil while calling openp. (Bug#2435)
763
df4e8455 7642009-03-06 Aaron Ecay <aaronecay@gmail.com> (tiny change)
340e08a4 765
47f588bb
GM
766 * nsterm.m (ns_draw_vertical_window_border): Draw 1 pixel wide,
767 not two, and use NSRectFill instead of NSDrawGroove. (Bug#2352)
340e08a4 768
4ddf94bd
AR
7692009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
770
4c9bdfc2
AR
771 * nsterm.m: Include <signal.h> for SIGTERM used in ns_term_shutdown.
772 (x_set_window_size): Change back to calculated method of setting
773 toolbar height under Cocoa. (Bug#2546)
4ddf94bd
AR
774 (EmacsView-windowWillUseStandardFrame:defaultFrame:): New method.
775 (EmacsView-drawRect:): Completely shortcircuit if ns_in_resize.
776
fe41ae9e
AR
777 * nsfns.m (ns_appkit_version_int): Fix typo in the version macro.
778
4c9bdfc2
AR
779 * nsmenu.m (EmacsMenu-addItemWithWidgetValue:): Don't add
780 accelerator in parens under GNUstep.
781
825d0875
KH
7822009-03-06 Kenichi Handa <handa@m17n.org>
783
784 These changes are to detect incorrect composition sequence without
f3b3be74 785 looking ahead the source. (Bug#2370)
825d0875
KH
786
787 * coding.h: Include "composite.h".
788 (enum compisition_state): New enum.
789 (struct compisition_status): New struct.
790 (struct iso_2022_spec): New member cmp_status.
791 (struct emacs_mule_spec): New struct.
792 (struct coding_system): New members ctext_extended_segment_len and
793 embedded_utf_8. Change the union member
794 spec.emacs_mule_full_support to spec.emacs_mule.
795
796 * coding.c (CODING_ISO_CMP_STATUS): New macro.
797 (CODING_ISO_EXTSEGMENT_LEN, CODING_ISO_EMBEDDED_UTF_8): New macros.
98a326f7 798 (MAX_ANNOTATION_LENGTH): Define to 5.
825d0875
KH
799 (ADD_COMPOSITION_DATA): New arg nbytes.
800 (emacs_mule_char): New arg cmp_status.
801 (DECODE_EMACS_MULE_COMPOSITION_CHAR): Delete it.
802 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): New arg c.
803 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New arg c.
804 (DECODE_EMACS_MULE_21_COMPOSITION): Delete the arg c.
805 (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Likewise.
806 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Likewise.
807 (DECODE_EMACS_MULE_COMPOSITION_START): New macro.
808 (EMACS_MULE_COMPOSITION_END): New macro.
809 (emacs_mule_finish_composition): New function.
810 (EMACS_MULE_MAYBE_FINISH_COMPOSITION): New macro.
811 (decode_coding_emacs_mule): Avoid long looking ahead while
812 handling composition.
813 (DECODE_COMPOSITION_RULE): Argument changed to rule and nbytes.
814 (ENCODE_COMPOSITION_RULE): New macro.
815 (finish_composition): New function.
816 (MAYBE_FINISH_COMPOSITION): Call finish_composition.
817 (DECODE_COMPOSITION_START): New implementation.
818 (DECODE_COMPOSITION_END): Likewise.
819 (STORE_COMPOSITION_RULE): New macro.
820 (decode_coding_iso_2022): Avoid long looking ahead while handling
821 composition, CTEXT extended segment, and embedded UTF-8.
822 (setup_coding_system): For a coding of type iso-2022, reset
823 CODING_ISO_EXTSEGMENT_LEN (coding) and
824 CODING_ISO_EMBEDDED_UTF_8 (coding).
825 (get_translation): Delete arguments last_block, from_nchars,
826 to_nchars. Callers changed.
827 (produce_chars): Don't modify charbuf. Adjusted for the change of
828 get_translation.
98a326f7 829 (produce_composition): Adjust for the new annotation sequence.
825d0875 830 (handle_composition_annotation): Likewise.
98a326f7 831 (consume_chars): Adjust for the change of get_translation.
825d0875 832
ccbc4452
AR
8332009-03-05 Adrian Robert <Adrian.B.Robert@gmail.com>
834
4ddf94bd 835 * nsterm.m (ns_select): Shortcircuit if reentrant call. (Bug#2564)
ccbc4452 836
988a7ddb
KH
8372009-03-05 Kenichi Handa <handa@m17n.org>
838
839 * font.c (font_select_entity): New function.
840 (font_find_for_lface): Use font_select_entity to select a font.
841
842 * fontset.c (fontset_find_font): If a font found without
a8a3728b 843 restricting to the characters C doesn't support C, try to find a
988a7ddb
KH
844 font with C restriction.
845
98a326f7 8462009-03-04 Nikolaj Schumacher <me@nschum.de>
2f462d73 847
be1bce46 848 * nsfont.m (nsfont_draw): Compare ns_antialias_text against lisp value.
2f462d73 849
10ea2b82
JR
8502009-03-04 Jason Rumney <jasonr@gnu.org>
851
2c93b248 852 * w32fns.c (w32_wnd_proc): Only ignore IME messages for the
4891ba1d 853 characters that have already been read. (Bug#2569)
2c93b248 854
10ea2b82
JR
855 * image.c (xbm_read_bitmap_data, png_load, svg_load_image):
856 Log an error message if check_image_size failed.
857 (xpm_load_image, pbm_load, jpeg_load, tiff_load, gif_load)
4891ba1d 858 (gs_load): Mention max-image-size in size error message. (Bug#2560)
10ea2b82 859
71a0c011
EZ
8602009-03-02 Eli Zaretskii <eliz@gnu.org>
861
862 * callproc.c (Fcall_process): Bind inhibit-modification-hooks to t
863 when decoding process output.
864
2f63bba8
RS
8652009-03-01 Richard M Stallman <rms@gnu.org>
866
867 * m/mips.h (DATA_SEG_BITS, XUINT, XSET): Definitions disabled.
868
869 * emacs.c (gdb_data_seg_bits) [USE_LSB_TAG]: Make it 0.
870
0a9564cb
EZ
8712009-02-28 Eli Zaretskii <eliz@gnu.org>
872
873 * coding.c (decode_coding_utf_8, decode_coding_utf_16)
874 (decode_coding_emacs_mule, decode_coding_iso_2022)
875 (encode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
876 (decode_coding_raw_text, decode_coding_charset)
877 (setup_coding_system, decode_eol, decode_coding, consume_chars):
878 Honor inhibit-eol-conversion. (Bug #2186)
879
449148b3
JR
8802009-02-28 Jason Rumney <jasonr@gnu.org>
881
882 * coding.c (detect_coding_charset): If not checking latin extra,
883 fail on characters between 0x80 and 0xA0. (Bug#2354)
884
a4aee864
EZ
8852009-02-28 Eli Zaretskii <eliz@gnu.org>
886
887 * coding.c (detect_coding_charset): Fix change from 2008-10-21.
2a1573ff 888 Also, check iso-latin-*, not only iso-8859-*. (Bug#2497)
a4aee864 889
d88bee5a
GM
8902009-02-27 Glenn Morris <rgm@gnu.org>
891
892 * callint.c (Finteractive): Doc fix.
893
a808f22d
KH
8942009-02-27 Kenichi Handa <handa@m17n.org>
895
896 * lread.c (read_escape): Signal an error for invalid \UXXXXXXXX.
897
caf8d60c
CY
8982009-02-27 Chong Yidong <cyd@stupidchicken.com>
899
900 * font.c (font_style_to_value): Set value for unknown symbols to
901 100 instead of 255.
b61137ea
CY
902 (weight_table, slant_table, width_table): Treat "unspecified" as
903 the default value.
caf8d60c 904
1a0de25c
JB
9052009-02-26 Juanma Barranquero <lekktu@gmail.com>
906
907 * fileio.c (Fnext_read_file_uses_dialog_p): Fix typo in docstring.
908
8fc45744
JB
9092009-02-25 Juanma Barranquero <lekktu@gmail.com>
910
107bd7d1
JB
911 * lread.c (Fload): Stop checking Vloads_in_progress and signal
912 error as soon as a recursive load is detected.
8fc45744 913
f097e223
AR
9142009-02-24 Adrian Robert <Adrian.B.Robert@gmail.com>
915
916 * nsterm.m (ns_ring_bell): Convert rect to window coordinates
917 before caching.
918
8810a12f
KH
9192009-02-24 Kenichi Handa <handa@m17n.org>
920
921 * fontset.c (fontset_find_font): Fix the condition for checking
922 unavailable font.
923
2c7d1565
GM
9242009-02-24 Glenn Morris <rgm@gnu.org>
925
926 * xfaces.c (Finternal_set_font_selection_order): Remove leading
927 whitespace that confuses documentation.
928
a20878b6
MB
9292009-02-23 Miles Bader <miles@gnu.org>
930
931 * process.c (Flist_system_processes, Fprocess_attributes)
932 (syms_of_process): Rename `system-process-attributes' to
933 `process-attributes'.
934
b3b58c01
AS
9352009-02-22 Andreas Schwab <schwab@linux-m68k.org>
936
1b3b981b
AS
937 * coding.h (struct coding_system): Make safe_charsets a pointer to
938 unsigned char.
939 * coding.c (CODING_ISO_REQUEST): Check for safe_charsets content
940 being 255.
941 (SAFE_CHARSET_P): Likewise.
942 (setup_iso_safe_charsets): Properly setup safe_charsets.
943 (Fdefine_coding_system_internal): Likewise.
944 (setup_coding_system): Likewise. Remove unneeded casts.
945 (detect_coding_iso_2022): Compare Viso_2022_charset_list with
946 CODING_ATTR_CHARSET_LIST, not CODING_ATTR_SAFE_CHARSETS. Remove
947 unneeded casts.
948
b3b58c01
AS
949 * insdel.c (del_range_2): Don't modify gap contents when called
950 from decode_coding_object. (Bug#1809)
951
0b6f228c
CY
9522009-02-21 Chong Yidong <cyd@stupidchicken.com>
953
954 * data.c (syms_of_data): Define Qfont_spec, Qfont_entity, and
955 Qfont_object.
956 (Ftype_of): Recognize font objects.
957
958 * lisp.h: Define Qfont_spec, Qfont_entity, Qfont_object extern.
959
960 * font.c (Qfont_spec, Qfont_entity, Qfont_object): Definitions
961 moved to data.c.
962
52f8870b
AR
9632009-02-20 Adrian Robert <Adrian.B.Robert@gmail.com>
964
965 * nsterm.m (x_make_frame_invisible): Unset async_visible,
966 async_iconified. Based on a patch by Christian Lynbech
967 <christian.lynbech@tieto.com>.
968 (EmacsView-windowDidMiniaturize:): Unset async_visible.
969
7087d5e9
GM
9702009-02-20 Glenn Morris <rgm@gnu.org>
971
972 * syntax.c (Fskip_chars_forward): Fix doc typo.
973
41d2ceef
CY
9742009-02-20 Chong Yidong <cyd@stupidchicken.com>
975
976 * keymap.c (Fkeymap_parent): Doc fix (Bug#2391).
977
1a3b7ca6
CY
9782009-02-19 Chong Yidong <cyd@stupidchicken.com>
979
980 * xfns.c (Fx_create_frame): Give Xft driver a higher priority.
981
73cce38d
KH
9822009-02-19 Kenichi Handa <handa@m17n.org>
983
984 * coding.c (detect_coding): Preserve coding->mode.
2bc550cb 985 Don't overflow coding->carryover. (Bug#2370)
73cce38d 986
a51092ee
DN
9872009-02-18 Dan Nicolaescu <dann@ics.uci.edu>
988
989 * m/ibmrs6000.h (ADDR_CORRECT): Restore, removed by mistake on 2008-07-23.
990
c423ecca
KH
9912009-02-18 Kenichi Handa <handa@m17n.org>
992
993 * font.c (font_check_otf_features): Fix handling of `nil' element.
994 (Ffont_spec): Describe :lang and :otf in the docstring.
995
4c1958f4
AS
9962009-02-16 Andreas Schwab <schwab@suse.de>
997
998 * coding.c (Fcheck_coding_systems_region): Fix test for unibyte
999 string.
1000
5704f39a
KH
10012009-02-16 Kenichi Handa <handa@m17n.org>
1002
1003 * coding.c (Fcheck_coding_systems_region): Fix typo; Qt -> Qnil.
a057d86a 1004 (Bug#1723)
5704f39a 1005
8f0085aa
CY
10062009-02-14 Chong Yidong <cyd@stupidchicken.com>
1007
a057d86a 1008 * dispextern.h (struct iterator_stack_entry): New line_wrap member.
8f0085aa
CY
1009
1010 * xdisp.c (push_it, pop_it): Save and restore line_wrap.
1011 (handle_line_prefix): Suppress wrapping of wrap prefixes.
1012
aff01dd9
EZ
10132009-02-14 Eli Zaretskii <eliz@gnu.org>
1014
1015 * msdos.c (MAX_SCREEN_BUF): New macro.
1016 (IT_write_glyphs): Make screen_buf[] always be MAX_SCREEN_BUF-long.
1017 Encode the entire run of glyphs sharing the same face, instead of
1018 doing that one glyph at a time (fixes a bug with displaying
1019 double-size characters).
1020
ba301db3
AR
10212009-02-13 Adrian Robert <Adrian.B.Robert@gmail.com>
1022
1023 * nsfns.m (ns-read-file-name): BLOCK_INPUT while showing dialog.
1024
1025 * nsmenu.m (pop_down_menu): Check popup_activated_flag.
1026 (ns_popup_dialog, EmacsDialogPanel-runDialogAt:): Let
a057d86a 1027 pop_down_menu do the cleanup work as it is always called. (Bug#2154)
ba301db3
AR
1028
1029 * nsfont.m (nsfont_make_fontset_for_font): For now, don't try to
a057d86a 1030 set fontset font for "mathematical-" sub-scripts. (Bug #2218)
ba301db3 1031
51d861de
SM
10322009-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
1033
1034 * keyboard.c (adjust_point_for_property): Allow stopping betwen two
1035 invisible areas.
1036
7fed8996
JR
10372009-02-12 Jason Rumney <jasonr@gnu.org>
1038
631ea4fb
JR
1039 * w32font.c (check_face_name): Check for fake helv. (Bug#2275)
1040 (add_font_entity_to_list): Call check_face_name even when family
1041 is unspecified.
1042
cb4a3e42
JR
1043 * w32term.c (x_display_pixel_height, x_display_pixel_width):
1044 Release DC when finished. Use NULL window to refer to desktop.
631ea4fb 1045 (w32_term_init): Use NULL window to refer to desktop. (Bug#460)
cb4a3e42 1046
7fed8996 1047 * w32font.c (add_font_entity_to_list): Fix check for substituted
631ea4fb 1048 raster fonts. (Bug#2219)
7fed8996 1049
895416e3
KH
10502009-02-12 Kenichi Handa <handa@m17n.org>
1051
1052 * composite.c (MAX_AUTO_COMPOSITION_LOOKBACK): New macro.
1053 (composition_gstring_width): Fix handling of LGLYPH_YOFF.
1054 (autocmp_chars): Use fast_looking_at. Don't compose more
1dacf998 1055 characters than MAX_COMPOSITION_COMPONENTS.
895416e3
KH
1056 (find_automatic_composition): While looking forward and backward,
1057 check static composition. Fix where to stop looking forward.
1058 (composition_adjust_point): Fix checking of static composition.
1059 (Fcomposition_get_gstring): Pay attention to
1dacf998 1060 MAX_COMPOSITION_COMPONENTS.
895416e3
KH
1061
1062 * lisp.h (fast_looking_at): Extern it.
1063
1064 * search.c (fast_looking_at): New function.
1065
51d861de 1066 * term.c (encode_terminal_code): Adjust for the change of
895416e3
KH
1067 <struct glyph>.u.cmp.to.
1068 (append_composite_glyph): Likewise.
1069
51d861de 1070 * xdisp.c (fill_gstring_glyph_string): Adjust for the change of
895416e3
KH
1071 <struct glyph>.u.cmp.to. Check if the glyph belongs to the same
1072 composition.
51d861de 1073 (append_composite_glyph): Adjust for the change of
895416e3
KH
1074 <strcut glyph>.u.cmp.to.
1075
8510724d
JB
10762009-02-11 Juanma Barranquero <lekktu@gmail.com>
1077
1078 * casetab.c (init_casetab_once):
1079 * coding.c (ALLOC_CONVERSION_WORK_AREA):
1080 * font.c (font_update_lface):
1081 * fontset.c (Fnew_fontset):
1082 * ftfont.c (ftfont_drive_otf):
1083 * xfont.c (xfont_open):
1084 * xftfont.c (xftfont_get_xft_draw): Remove spurious semicolons.
1085
294fa707
SM
10862009-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
1087
1088 * fileio.c (Fwrite_region): !NILP -> CONSP.
1089
b5bfebec
AS
10902009-02-10 Andreas Schwab <schwab@suse.de>
1091
1092 * process.c (send_process): Properly relocate pointer into data
adab88bd 1093 when using encoded data. (Bug#2272)
b5bfebec 1094
cb84a2be
KH
10952009-02-08 ARISAWA Akihiro <ari@mbf.sphere.ne.jp>
1096
1097 * coding.c (detect_coding_charset): Fix previous change.
1098
89e09428
JR
10992009-02-08 Jason Rumney <jasonr@gnu.org>
1100
1101 * w32fns.c (w32_hide_hourglass): Handle case where frame
adab88bd 1102 disappeared while hourglass was displayed. (Bug #2193)
89e09428 1103
4470a277
AS
11042009-02-07 Andreas Schwab <schwab@suse.de>
1105
1106 * unexelf.c (unexec): Fix error message.
1107
3175b12a
AR
11082009-02-07 Adrian Robert <Adrian.B.Robert@gmail.com>
1109
1110 * nsterm.m (EmacsApp-sendEvent:): Defer NSApplicationDefined event
adab88bd 1111 when modal window is active. (Bug #2152)
3175b12a
AR
1112 (applicationShouldTerminate:): Remove now-unneeded while loop
1113 around NSRunAlertPanel.
1114
1115 * nsmenu.m (popupSession): New file-global variable.
1116 (pop_down_menu): End the popupSession before closing dialog.
1117 (ns_popup_dialog): BLOCK_INPUT around dialog presentation.
1118 (EmacsDialogPanel-runDialogAt:): Don't place window (superfluous),
1119 don't query NSApp for events (just sleep instead).
1120
8434d0b8
EZ
11212009-02-07 Eli Zaretskii <eliz@gnu.org>
1122
51d861de
SM
1123 * coding.c (syms_of_coding) <translation-table-for-input>:
1124 Modify doc string to discourage use for character code unification.
8434d0b8 1125
aa82edfd
CY
11262009-02-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1127
1128 * atimer.c (run_timers): Update pending_atimers.
1129
2d283c7c
CY
11302009-02-06 Chong Yidong <cyd@stupidchicken.com>
1131
eb306cab
CY
1132 * image.c (svg_load_image): Fix last change.
1133
2d283c7c
CY
1134 * xfns.c (Fx_create_frame): Signal an error if no font is
1135 found (Bug#2147).
1136
4d8e170e
JB
11372009-02-05 Juanma Barranquero <lekktu@gmail.com>
1138
1139 * character.c (syms_of_character) <script-representative-chars>:
1140 Fix typo in docstring.
1141
c96169a0
AR
11422009-02-04 Adrian Robert <Adrian.B.Robert@gmail.com>
1143
1144 * nsmenu.m (pop_down_menu): New function.
1145 (ns_popup_dialog): Call it on unwind.
1146 (EmacsDialogPanel-runDialogAt:): Check popup_activated_flag and
1147 call timer_check() (Bug#2154).
1148 (EmacsMenu-menuNeedsUpdate:): Don't call ns_update_menu if
1149 handling_signal is set.
1150 (EmacsMenu-fillWithWidgetValue:): Set submenu title.
1151
1152 * config.in: Get rid of COCOA_EXPERIMENTAL_CTRL_G
1153
1154 * s/darwin.h: Same and NO_SOCK_SIGIO as well.
1155
1156 * nsterm.m (ns_read_socket): Same and don't set handling_signal.
1157
51d861de
SM
1158 * keyboard.c (poll_for_input_1, handle_async_input):
1159 Set handling_signal under HAVE_NS.
c96169a0 1160
aacd8ba1
GM
11612009-02-04 Glenn Morris <rgm@gnu.org>
1162
1163 * fileio.c (Fwrite_region): Doc fix (mention annotate-functions).
1164
4cb75c4b
KH
11652009-02-04 Kenichi Handa <handa@m17n.org>
1166
1167 * Makefile.in (composite.o): Depends on frame.h and termhooks.h.
1168
1169 * charset.c (Fchar_charset): New optional arg restriction.
1170
1171 * coding.h (coding_system_charset_list): Extern it.
1172
1173 * coding.c (coding_system_charset_list): New function.
1174
1175 * composite.c: Include coding.h and termhooks.h.
1176 (composition_gstring_p): Fix for the terminal case.
1177 (composition_gstring_width): Likewise.
1178 (fill_gstring_body): Likewise.
1179 (autocmp_chars): For terminal, call Fcomposition_get_gstring with
1180 the frame.
1181 (composition_compute_stop_pos): Adjust cmp_it->stop_pos if point
1182 is within a composition.
867d4bb3 1183 (Fcomposition_get_gstring): Fix the terminal case.
4cb75c4b
KH
1184
1185 * term.c (encode_terminal_code): Fix handling of composition.
1186 (produce_composite_glyph): For static composition, get pixel_width
1187 from struct composition.
1188
826ba17e
AS
11892009-02-02 Andreas Schwab <schwab@suse.de>
1190
1191 * unexelf.c (unexec): Handle unaligned bss offset.
1192
8ad093db
AR
11932009-02-01 Adrian Robert <Adrian.B.Robert@gmail.com>
1194
1195 * nsterm.m (ns_read_socket): Copy 2009-01-29 and 2009-01-30
1196 XT,w32read_socket changes to ns_read_socket.
d0a76a6e 1197
8ad093db
AR
1198 * keyboard.c (handle_interrupt): Don't call
1199 quit_throw_to_read_char() under NS.
d0a76a6e 1200
8ad093db
AR
1201 * blockinput.h: Remove NS-specific code.
1202
4d18a7a2
DN
12032009-01-30 Dan Nicolaescu <dann@ics.uci.edu>
1204
db878925
DN
1205 * dispnew.c (window_change_signal): Don't try to get the size of a
1206 suspended tty frame.
1207 * term.c (Fresume_tty): Resize if the size has changed while the
1208 tty was suspended.
1209
4d18a7a2
DN
1210 * alloc.c (mark_stack): Properly conditionalize previous change.
1211
8984df7c
JB
12122009-01-30 Juanma Barranquero <lekktu@gmail.com>
1213
1214 * w32inevt.c (w32_console_read_socket) [SYNC_INPUT]:
1215 * w32term.c (w32_read_socket) [SYNC_INPUT]:
1216 Remove; this code is not used on Windows.
1217
75f4f1ac
EZ
12182009-01-30 Eli Zaretskii <eliz@gnu.org>
1219
1220 * coding.c (detect_eol, decode_eol): Handle text with DOS-style
1221 EOLs that also has stray ^M characters.
1222
07a1e794
JB
12232009-01-30 Juanma Barranquero <lekktu@gmail.com>
1224
1225 * atimer.c (run_timers, alarm_signal_handler):
1226 * keyboard.c (pending_signals, handle_async_input, init_keyboard):
1227 * w32inevt.c (w32_console_read_socket):
1228 * w32term.c (w32_read_socket):
1229 * xterm.c (XTread_socket): Use "#ifdef SYNC_INPUT" where appropriate.
1230
a8b11cc9
CY
12312009-01-30 Chong Yidong <cyd@stupidchicken.com>
1232
1233 * callproc.c (Vtemp_file_name_pattern): Remove DEFVAR_LISP.
1234 Initialize it as a relative filename pattern.
1235 (init_callproc): Don't initialize Vtemp_file_name_pattern here.
1236 (Fcall_process_region): Simplify temp file creation using
1237 temporary-file-directory.
1238
c279587b
EZ
12392009-01-29 Eli Zaretskii <eliz@gnu.org>
1240
1241 * msdos.c: Rename pending_signals to msdos_pending_signals.
1242 (sig_suspender, sigprocmask): Adjust.
1243
a8fe3242
CY
12442009-01-29 Chong Yidong <cyd@stupidchicken.com>
1245
1246 * keyboard.c (pending_signals): New var.
1247 (poll_for_input, input_available_signal, init_keyboard): Set it.
1248 (process_pending_signals): New function.
1249
1250 * lisp.h (QUIT): Check pending_signals instead of
1251 interrupt_input_pending. Use process_pending_signals.
1252
51d861de 1253 * atimer.c (run_timers, alarm_signal_handler): Update pending_signals.
a8fe3242 1254
51d861de 1255 * process.c (wait_reading_process_output): Use process_pending_signals.
a8fe3242
CY
1256
1257 * sysdep.c (emacs_write): Use process_pending_signals.
1258
1259 * xterm.c (XTread_socket): Update pending_signals.
1260
1261 * w32term.c (w32_read_socket): Update pending_signals.
1262
1263 * w32inevt.c (w32_console_read_socket): Update pending_signals.
1264
6570a1c4
KH
12652009-01-29 Kenichi Handa <handa@m17n.org>
1266
1267 * xftfont.c (xftfont_has_char): New function.
1268 (syms_of_xftfont): Register xftfont_has_char in xftfont_driver.
1269
d72a4afa
AR
12702009-01-29 Adrian Robert <Adrian.B.Robert@gmail.com>
1271
1272 * nsterm.h (EmacsPrefsController.cursorBlinkSlider): Only define
1273 under GNUstep.
1274 (ns_query_color): New declaration.
1275
1276 * nsterm.m (ns_confirm_quit): New variable.
1277 (ns_set_default_prefs, syms_of_nsterm, ns_term_init): Initialize it.
1278 (EmacsApp-applicationShouldTerminate:): Use it.
1279 (EmacsPrefsController): Let user set it.
1280 (ns_query_color): New function.
1281 (ns_defined_color): Use it.
1282 (ns_initialize): Drop.
1283 (ns_term_init): Add two lines from ns_initialize(), and set
1284 input_interrupt_mode to nil.
1285
1286 * image.c (svg_load_image): Don't right-shift background RGB when
6af84d77 1287 obtained from FRAME_BACKGROUND_PIXEL. Under HAVE_NS use ns_query_color.
d72a4afa 1288
9fe78804
KH
12892009-01-28 Kenichi Handa <handa@m17n.org>
1290
1291 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
f088b054
KH
1292 (fontset_get_font_group): Remember that no font-group is specified
1293 for C.
9fe78804 1294
fa57de36
CY
12952009-01-27 Chong Yidong <cyd@stupidchicken.com>
1296
930600e9
CY
1297 * fns.c (concat): Check for string overflow (bug#1787).
1298
fa57de36
CY
1299 * undo.c (undo_limit, undo_strong_limit, Vundo_outer_limit):
1300 Quadruple undo limits (bug#1501).
1301
7179ce7b
KH
13022009-01-27 Kenichi Handa <handa@m17n.org>
1303
1304 * ftfont.c (ftfont_has_char): If the arg FONT is a font-object,
1305 directly use GT_Get_Char_index.
1306
1307 * xftfont.c (struct xftfont_info): New member `index'.
1308
1309 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
51d861de 1310 (Ffontset_font): Adjust for the change of fontset entry.
7179ce7b 1311
5be8fcc0
CY
13122009-01-26 Kenichi Handa <handa@m17n.org>
1313
1314 * fontset.c (fontset_find_font): Fix handling of non-cons return
1315 value of fontset_get_font_group.
1316 (fontset_font): Revert last change.
1317
19ae3e61
JR
13182009-01-26 Jason Rumney <jasonr@gnu.org>
1319
1320 * w32font.c (w32font_list_internal): Return quickly if registry is
1321 unknown. Simplify final return.
1322 (add_font_entity_to_list): Break complex logic down into more
1323 manageable chunks. Move unknown registry check to
1324 w32font_list_internal.
1325
8612b71a
AR
13262009-01-25 Adrian Robert <Adrian.B.Robert@gmail.com>
1327
1328 Changes to remove Feval calls from GUI under NS.
1329
d8038940
JB
1330 * nsterm.h: Move KEY_NS_... definitions here from nsterm.m.
1331 Add NS_TOGGLE_TOOLBAR, NS_PUT_WORKING_TEXT, NS_UNPUT_WORKING_TEXT.
8612b71a
AR
1332 Remove NS_INSERT_WORKING_TEXT, NS_DELETE_WORKING_TEXT.
1333
1334 * nsterm.m: Move KEY_NS_... definitions to nsterm.h.
1335 (EmacsView-toggleToolbar:): Use KEY_NS_TOGGLE_TOOLBAR.
1336 (EmacsView-setMarkedText:,-deleteWorkingText:): Use NS_TEXT_EVENT
1337 instead of NON_ASCII_KEYSTROKE_EVENT.
1338 (EmacsApp-terminate:): Use KEY_NS_POWER_OFF instead of Feval.
1339 (EmacsApp-applicationShouldTerminate:): Query user.
1340 (EmacsPreferencesController-runHelp:): Use KEY_NS_INFO_PREFS
1341 instead of Feval.
1342
1343 * termhooks.h (NS_TEXT_EVENT): New event type under HAVE_NS.
1344
1345 * keyboard.c (kbd_buffer_get_event): Check for it.
1346 (keys_of_keyboard): Define lispy keys for
1347 ns-put/unput-working-text.
1348
1349 * nsmenu.m (ns_popup_dialog): Resync window setting with X and W32
1350 versions.
1351 (EmacsDialog-runDialogAt:): Use NSModalPanelRunLoopMode.
1352
6288ae55
CY
13532009-01-25 Chong Yidong <cyd@stupidchicken.com>
1354
1355 * dispnew.c (buffer_posn_from_coords): Use Fset_buffer instead of
64cc3cf6 1356 setting current_buffer directly. (Bug#2044)
6288ae55 1357
289e7f8f
CY
13582009-01-24 Chong Yidong <cyd@stupidchicken.com>
1359
5ce87308 1360 * fontset.c (fontset_font): If we know there is no font, don't do
d8038940 1361 any work. (Bug#1952, bug#1990).
5ce87308 1362
64cc3cf6 1363 * font.c (font_parse_xlfd): Handle patterns of length < 2. (Bug#1802)
289e7f8f 1364
b3243e6f
AR
13652009-01-23 Adrian Robert <Adrian.B.Robert@gmail.com>
1366
1367 * emacs.c (main): Do fork+exec under --daemon in Cocoa.
d900b2af
AR
1368 (ns_no_defaults): New declaration.
1369 (main): Use it.
e0d2e69a 1370
d900b2af 1371 * nsterm.h (ns_no_defaults): New declaration.
e0d2e69a 1372
d900b2af 1373 * nsfns.m (x_get_string_resource): Don't read when ns_no_defaults.
e0d2e69a 1374
d900b2af
AR
1375 * nsterm.m (ns_no_defaults): New variable.
1376 (ns_initialize): Don't read defaults when ns_no_defaults.
1377 (EmacsView-readSelectionFromPasteboard:)
1378 (writeSelectionToPasteboard:types:): New stubbed-out methods for
d8038940 1379 NSServicesRequests protocol. (Bug#1435)
27521ca6
AR
1380 (ns_dumpglyphs_stretch): New function.
1381 (ns_draw_glyph_string): Use it, parallel Yamamoto Mitsuharu change
d8038940 1382 of 2008-11-15 to other terms. (Bug#615)
b3243e6f 1383
e0d2e69a
AR
1384 * nsimage.m (setPixmapData:): Set to ignore image DPI.
1385
3ac71f5d
CY
13862009-01-23 Giorgos Keramidas <keramida@freebsd.org> (tiny change)
1387
1388 * alloc.c (mark_stack): Use "flushw" instead of "ta 3" assembly
1389 call for Sparc64.
1390
3fe53a83
AR
13912009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
1392
1393 * nsfns.m:
1394 * nsgui.h:
1395 * nsmenu.m:
1396 * nsselect.m:
1397 * nsterm.h:
1398 * nsterm.m: Remove '23' comments that indicated code added during
1399 update from emacs-20 -> emacs-23.
1400
10f87c6f 14012009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
a3b53a85
AR
1402
1403 * nsterm.m (EmavsView-keyDown:): Treat nil as Qnone for
3a88a825 1404 ns_alternate_modifier. (Bug#1217)
a3b53a85 1405
c7cef62d
AR
1406 * nsmenu.m (EmacsMenu-parseKeyEquiv:, addItemWithWidgetValue:):
1407 Display all shortcuts, including those w/o super modifier.
1408
575fb8bd
AR
1409 * nsfns.m (ns-read-file-name): Fix typo in assignment statement.
1410
918b848b
CY
14112009-01-22 Chong Yidong <cyd@stupidchicken.com>
1412
1413 * fileio.c (Vwrite_region_post_annotation_function)
1414 (Vwrite_region_annotation_buffers): New vars.
1415 (build_annotations_unwind): Just reset
1416 Vwrite_region_annotation_buffers.
1417 (Fwrite_region): Initialize Vwrite_region_annotation_buffers.
1418 Call write-region-post-annotation-function.
1419 (build_annotations): Add to Vwrite_region_annotation_buffers if
1420 buffer changes.
1421
a39e2539
AR
14222009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
1423
1424 * nsterm.h (EmacsApp-setAppleMenu:): Conditionalize more correctly on
1425 Tiger.
51d861de
SM
1426 * nsfns.m (ns_do_applescript):
1427 Conditionalize typeUTF16ExternalRepresentation on Tiger.
a39e2539 1428
35ed44db
AR
14292009-01-21 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
1430
1431 * nsterm.m (EV_TRAILER): Always use emacsframe for frame_or_window.
1432
cbe0b5bf
AR
14332009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
1434
1435 * nsmenu.m (NSMENUPROFILE): Change #if style.
4c7077c3 1436
6049d3a0
AR
1437 * nsterm.h (EmacsPrefsController): Add -setPanelFromDefaultValues.
1438
1439 * nsterm.m (x_set_frame_alpha): Add prototype.
a9b4df69
AR
1440 (ns_fake_keydown, EmacsView-keyUp:): New variable and function to
1441 handle Ctrl-tab. (Bug#1841)
1442 (ns_get_color): Use unsigned long long for scanned hex string value.
1443 (ns_term_shutdown): Abort on non SIGTERM signals.
e889fa06 1444 (EmacsPrefsController-setDefaultFont:,-setColors:): Raise the frame.
b71ac3dd 1445 (EmacsPrefsController-setPanelFromDefaultValues): New function.
3a88a825 1446 (EmacsPrefsController-resetToDefaults:): Use it. (Bug#1801)
35ed44db 1447 (ns_font_to_xlfd, ns_fontname_to_xlfd): Remove, unused.
d3810c21 1448 (ns_defined_color): Fix settings of the XColor variable fields:
3a88a825 1449 red,green,blue scale to 2-byte, pixel's parts to 1-byte. (Bug#1663)
cbe0b5bf 1450
d3810c21 1451 * nsimage.m (EmacsImage+allocInitFromFile:): Set to ignore image
3a88a825 1452 DPI. (Bug#1316)
d3810c21
AR
1453 (EmacsImage-setPixelAtX:Y:toRed:green:blue:alpha:): Fix color
1454 values in onTiger section.
4c7077c3 1455
e301e634
CY
14562009-01-19 Chong Yidong <cyd@stupidchicken.com>
1457
7f82490b
CY
1458 * xfaces.c (Finternal_set_lisp_face_attribute, Fx_list_fonts):
1459 Check return value of font_spec_from_name.
64cc3cf6 1460 (Fx_list_fonts): Doc fix. (Bug#1951)
7f82490b
CY
1461
1462 * font.c (font_spec_from_name): Return Qnil if font name could not
1463 be parsed.
1464 (font_parse_name): Treat a `?' character as part of an XLFD.
1465
e301e634
CY
1466 * fns.c (Fsubstring): Doc fix.
1467
1c0db158
KH
14682009-01-19 Kenichi Handa <handa@m17n.org>
1469
51d861de 1470 * ftfont.c (ftfont_lookup_cache): Check the return value of FcFontList.
1c0db158
KH
1471 (ftfont_list): Likewise.
1472
acf20901
JB
14732009-01-18 Juanma Barranquero <lekktu@gmail.com>
1474
fff4e459
JB
1475 * dbusbind.c (Fdbus_register_signal):
1476 * process.c (conv_sockaddr_to_lisp):
1477 * w32fns.c (Fw32_battery_status): Use empty_unibyte_string.
1478
acf20901
JB
1479 * callproc.c (Fgetenv_internal): Doc fix.
1480
e7abcdfb
CY
14812009-01-16 Chong Yidong <cyd@stupidchicken.com>
1482
1483 * xfns.c (x_make_gc): Don't allocate stipple member for gc_values;
1484 it is not even used.
1485
b60861e6
GM
14862009-01-16 Glenn Morris <rgm@gnu.org>
1487
1488 * font.c (Ffont_variation_glyphs): Silence compiler.
1489
8db52afe
JB
14902009-01-15 Juanma Barranquero <lekktu@gmail.com>
1491
1492 * sound.c (SOUND_WARNING): Use _snprintf, for MSVC compatibility.
1493 Reported by David Robinow <drobinow@gmail.com>.
1494
4cddb209
KH
14952009-01-15 Kenichi Handa <handa@m17n.org>
1496
51d861de 1497 * coding.c (detect_coding_system): Fix handling of null_byte_found.
4cddb209 1498
f247f67b
JR
14992009-01-14 Jason Rumney <jasonr@gnu.org>
1500
1501 * frame.c (x_set_font): Always store a font to the font parameter,
fff4e459 1502 never a fontset. (Bug#1562)
f247f67b 1503
f56a4450
KH
15042009-01-14 Kenichi Handa <handa@m17n.org>
1505
1506 * coding.c (TWO_MORE_BYTES): New macro.
fff4e459 1507 (detect_coding_utf_16): Use TWO_MORE_BYTES instead of ONE_MORE_BYTE.
f56a4450 1508
4e99855e
CY
15092009-01-13 Chong Yidong <cyd@stupidchicken.com>
1510
1511 * font.c (font_clear_prop): If clearing the family, clear the font
1512 width index too.
1513
fff4e459 1514 * xfaces.c (Finternal_set_lisp_face_attribute): Revert last change.
4e99855e 1515
24f01470
JB
15162009-01-12 Juanma Barranquero <lekktu@gmail.com>
1517
1518 * sound.c [WINDOWSNT] (SOUND_WARNING): New macro.
1519 (do_play_sound): Use it. Don't pass a hardcoded buffer size to mci
1520 functions, use sizeof.
1521
a41240a3
MR
15222009-01-12 Martin Rudalics <rudalics@gmx.at>
1523
1524 * keyboard.c (read_char): Fix case where last_nonmenu_event
1525 returned a bad value with submenus. (Bug#447)
1526
944636b8
CY
15272009-01-12 Chong Yidong <cyd@stupidchicken.com>
1528
1529 * xfaces.c (Finternal_set_lisp_face_attribute): If setting the
1530 family, clear the font width index too.
1531
0dad7c6f
JR
15322009-01-11 Jason Rumney <jasonr@gnu.org>
1533
1534 * keyboard.c (cmd_error_internal): Exit when errors occur before
1535 frame creation and not in daemon mode. (Bug#1836)
1536
7c2363af
CY
15372009-01-10 Chong Yidong <cyd@stupidchicken.com>
1538
1539 * xdisp.c (pos_visible_p): When iterator stops on the last glyph
1540 of a display vector, backtrack.
1541 (try_window_reusing_current_matrix): Check glyph type before
1542 referencing charpos member.
1543
97b1b294
EZ
15442009-01-10 Eli Zaretskii <eliz@gnu.org>
1545
1546 Fix Bug #876:
1547
1548 * coding.c (inhibit_null_byte_detection): New variable.
1549 (detect_coding, detect_coding_system): Don't pay attention to null
1550 bytes if inhibit_null_byte_detection is non-zero.
51d861de 1551 (syms_of_coding) <inhibit-null-byte-detection>: Declare and document.
97b1b294
EZ
1552 <inhibit-iso-escape-detection>: Doc fix.
1553
4624b6e3
JR
15542009-01-09 Jason Rumney <jasonr@gnu.org>
1555
1556 * w32font.c (add_font_entity_to_list): Don't report unknown
fff4e459 1557 Windows charset as any unrecognized registry. (Bug#1548)
4624b6e3
JR
1558 Only report Unicode Plane 2 fonts as unicode-sip.
1559
323b840c
CY
15602009-01-09 Chong Yidong <cyd@stupidchicken.com>
1561
51d861de
SM
1562 * xfaces.c (Fx_font_family_list): Delete function.
1563 Move compatibility version to faces.el.
323b840c 1564
51d861de 1565 * font.c (Ffont_family_list): Return a list of strings, not symbols.
323b840c 1566
eba7400d
MR
15672009-01-09 Martin Rudalics <rudalics@gmx.at>
1568
1569 * frame.c (x_set_frame_parameters): Remember requested value for
1570 fullscreen before it's reset by the parameter handler.
1571
4b09796d
GM
15722009-01-09 Glenn Morris <rgm@gnu.org>
1573
1574 * keyboard.c (last_command_char): For clarity, rename to...
46e722a9 1575 (last_command_event): ... and update all users.
4b09796d
GM
1576 (last_input_char): For clarity, rename to...
1577 (last_input_event): ... and update all users.
1578 (last-command-char, last-input-char): Move to subr.el as aliases.
1579 * cmds.c, commands.h: Update for last_command_char rename.
1580
14ccea62
CY
15812009-01-08 Chong Yidong <cyd@stupidchicken.com>
1582
51d861de 1583 * font.c (font_open_for_lface): Handle unspecified height attribute.
14ccea62 1584
5f004711
JR
15852009-01-08 Jason Rumney <jasonr@gnu.org>
1586
1587 * w32fns.c (Vx_pointer_shape, Vx_nontext_pointer_shape)
1588 (Vx_mode_pointer_shape, Vx_window_horizontal_drag_shape)
1589 (Vx_hourglass_pointer_shape, Vx_sensitive_text_pointer_shape):
1590 Don't declare.
fff4e459 1591 (syms_of_w32fns): Don't define x-pointer-shape variable. (Bug#1485)
5f004711
JR
1592 (x_create_tip_frame) [GLYPH_DEBUG]: Enable image debugging code.
1593
b71f6f73
KH
15942009-01-07 Kenichi Handa <handa@m17n.org>
1595
50b06221 1596 * fileio.c (Finsert_file_contents): In the case of replace,
f56a4450 1597 remember the coding system used for decoding in
50b06221
KH
1598 coding_system (Bug#1039).
1599
b71f6f73 1600 * coding.c (decode_coding_utf_8): Check byte_after_cr before
79a97217 1601 breaking the loop. (Bug#870)
b71f6f73
KH
1602 (decode_coding_utf_16, decode_coding_emacs_mule)
1603 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
1604 (decode_coding_charset): Likewise.
1605
56f668f7
MR
16062009-01-05 Martin Rudalics <rudalics@gmx.at>
1607
1608 * frame.c (x_set_frame_parameters): Make sure height (width) get
1609 applied when fullwidth (fullheight) is set. (Bug#1522)
1610
5da9424d
JB
16112009-01-04 Juanma Barranquero <lekktu@gmail.com>
1612
1613 * w32.c: Use 64-bit arithmetic to do FILETIME conversions. (Bug#1766)
1614 (utc_base): Declare as ULONGLONG, not long double.
1615 (convert_time_raw): Delete.
1616 (FILETIME_TO_U64, U64_TO_LISP_TIME): New macros.
1617 (initialize_utc_base): New function.
1618 (convert_time): Use FILETIME_TO_U64, initialize_utc_base.
1619 (convert_from_time_t): Use initialize_utc_base; compute result with
1620 64-bit arithmetic.
1621 (process_times): Use FILETIME_TO_U64, U64_TO_LISP_TIME.
1622
c4605e09
EZ
16232009-01-03 Eli Zaretskii <eliz@gnu.org>
1624
9acef61c 1625 * process.c (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess)
c4605e09
EZ
1626 (Qttname, Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime)
1627 (Qcutime, Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs)
1628 (Quser, Qgroup, Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime)
1629 [!subprocesses]: Define.
1630 (syms_of_process) [!subprocesses]: Intern and staticpro them.
1631 (Flist_system_processes, Fsystem_process_attributes)
1632 [!subprocesses]: Call list_system_processes and
1633 system_process_attributes instead of returning Qnil.
1634
9acef61c
JB
1635 * dosfns.c (system_process_attributes, list_system_processes):
1636 New functions.
c4605e09
EZ
1637
1638 * vm-limit.c (ret_lim_data) [MSDOS]: New function.
1639
1640 * sysdep.c (list_system_processes, system_process_attributes) [MSDOS]:
1641 Don't use the default (no-op) implementation.
1642
8b7d0a16
JR
16432009-01-03 Jason Rumney <jasonr@gnu.org>
1644
a6d46bc1
JR
1645 * keyboard.c (parse_modifiers_uncached): Wheel events are
1646 clicks (bug#687).
1647
8b7d0a16
JR
1648 * w32term.c (x_query_colors, x_query_color): New functions.
1649
1650 * image.c (x_to_xcolors, png_load): Eliminate W32 specific code.
1651 (svg_load_image): Cast returned pointers from dynamically loaded
1652 functions. Eliminate W32 specific code.
1653
bfe11752
DN
16542009-01-02 Dan Nicolaescu <dann@ics.uci.edu>
1655
89e2438a
DN
1656 * nsfns.m (x_set_foreground_color, x_set_background_color)
1657 (x_set_cursor_color, x_set_icon_name, x_explicitly_set_name)
1658 (x_set_title, x_set_icon_type, x_set_cursor_type): Rename to use
1659 x_ prefix instead of ns_. Update references.
1660 (syms_of_nsfns): Add a FIXME comment.
1661
1662 * nsterm.m (x_set_cursor_type): New prototype.
1663 (setValuesFromPanel): Use it instead of the old ns_ prefixed name.
1664
bfe11752
DN
1665 * sysdep.c (system_process_attributes): Provide Qtime and Qctime
1666 for Solaris instead of incorrectly providing Qutime and Qcutime.
1667
031da700
EZ
16682009-01-02 Eli Zaretskii <eliz@gnu.org>
1669
1670 * w32.c (process_times): Compute sum of utime and stime.
1671 (system_process_attributes): Add Qtime to the alist.
1672
1673 * sysdep.c (system_process_attributes): Compute Qtime and Qctime
1674 and add them to the alist.
1675
1676 * process.c (top level) <Qtime, Qctime>: New variables.
1677 (syms_of_process): staticpro them.
1678 (Fsystem_process_attributes): Add their documentation to the doc
1679 string.
1680
1681 * process.h: Declare Qtime and Qctime.
1682
df23bf08
JR
16832009-01-02 Jason Rumney <jasonr@gnu.org>
1684
9acef61c 1685 * image.c (Qgobject): New symbol.
df23bf08
JR
1686 (syms_of_image): Initialize it.
1687 (init_svg_functions): Load some functions from gobject library.
1688
5bbdf7aa
DN
16892009-01-01 Dan Nicolaescu <dann@ics.uci.edu>
1690
1691 * frame.c (make_terminal_frame): Remove redundant code and useless
1692 block.
1693
63136da6
AS
16942009-01-01 Andreas Schwab <schwab@suse.de>
1695
1696 * process.c (conv_sockaddr_to_lisp): Add workaround for
1697 getsockname bug on BSD.
1698
9ef69046
CY
16992009-01-01 Chong Yidong <cyd@stupidchicken.com>
1700
d6fafbe0
CY
1701 * xfns.c (x_create_tip_frame): Set border width of the X window.
1702
51d861de 1703 * xfaces.c (Finternal_set_lisp_face_attribute): Improve error message.
9ef69046 1704
f9c34147
JR
17052009-01-01 Jason Rumney <jasonr@gnu.org>
1706
9acef61c 1707 * w32term.c (x_new_font): Return font object, not fontset. (Bug#119)
f9c34147
JR
1708 Don't block input, as per earlier xterm.c changes.
1709
f5497e45
AR
17102008-12-31 Adrian Robert <Adrian.B.Robert@gmail.com>
1711
1712 * nsfns.m (ns_appkit_version_str): Rename from ns_appkit_version.
1713 (ns_appkit_version_int): New function.
1714 (x-server-version): Use ns_appkit_version_int and follow 21+
1715 convention of returning 3 integers.
1716
c19cab20
KH
17172008-12-30 Kenichi Handa <handa@m17n.org>
1718
1719 * character.h (CHAR_VARIATION_SELECTOR_P): New macro.
1720 (CHAR_SURROGATE_PAIR_P): New macro.
1721
1722 * font.h (struct font_driver): New member get_variation_glyphs.
1723
9acef61c 1724 * font.c (font_range): Don't require a font for a variation selector.
c19cab20
KH
1725 (Ffont_variation_glyphs): New function.
1726 (syms_of_font): Defsubr it.
1727
1728 * ftfont.c (ftfont_driver): Set the member get_variation_glyphs to
1729 ftfont_variation_glyphs.
1730 (setup_otf_gstring): New function.
1731 (ftfont_drive_otf): Use it.
1732 (ftfont_shape_by_flt): Handle variation selector.
1733 (ftfont_variation_glyphs): New function.
1734
28cd591f
MR
17352008-12-30 Martin Rudalics <rudalics@gmx.at>
1736
1737 * frame.c (Vemacs_iconified): Remove.
1738
7f714baf
JR
17392008-12-30 Jason Rumney <jasonr@gnu.org>
1740
1741 * frame.c (store_frame_param, x_get_arg): Enable newer code on
9acef61c 1742 WINDOWSNT too, as related changes have already been synced. (Bug#117)
7f714baf 1743
9d2d22ab
CY
17442008-12-30 Chong Yidong <cyd@stupidchicken.com>
1745
1746 * indent.c (Fvertical_motion): Don't advance iterator if we have
1747 reseated to the desired position.
1748
1749 * xdisp.c (move_it_to): Handle GET_FROM_STRETCH method when
1750 checking for pos match.
1751
545312c2
KH
17522008-12-30 Kenichi Handa <handa@m17n.org>
1753
1ede3eb6
KH
1754 * insdel.c (copy_text): To convert a non-ASCII char to unibyte,
1755 just get the low 8-bit of the code.
1756
545312c2
KH
1757 * font.c (font_intern_prop): Validate str as multibyte.
1758
bd7bbf29
DN
17592008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
1760
31e0750e
DN
1761 * dispextern.h (struct face): Move lface and hash from the middle
1762 of bitfields.
1763
bd7bbf29
DN
1764 * Makefile.in (INTERVALS_H): Rename from INTERVAL_SRC, update all users.
1765
b5672e7c
DN
17662008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
1767
1768 * Makefile.in (INTERVAL_SRC): Also depend on dispextern.h.
1769 (coding.o, dispnew.o, keymap.o, msdos.o): Depend on INTERVAL_SRC
1770 instead of intervals.h.
1771
d704470f
AS
17722008-12-26 Andreas Schwab <schwab@suse.de>
1773
1774 * keymap.c (map_keymap_char_table_item): Make a copy of KEY if it is a
1775 cons.
1776
54b33868
MR
17772008-12-26 Martin Rudalics <rudalics@gmx.at>
1778
1779 * textprop.c (Qminibuffer_prompt): New variable.
1780 (syms_of_textprop): Initialize it.
1781 * callint.c (Fcall_interactively): For `c', `k', and `K' prompt
1782 in minibuffer-prompt face. (Bug#1662)
1783
40b615d6
JR
17842008-12-25 Jason Rumney <jasonr@gnu.org>
1785
1786 * buffer.c (Fbuffer_swap_text): Use POINTER_TYPE.
1787
baae5c2d
JR
17882008-12-24 Jason Rumney <jasonr@gnu.org>
1789
1790 * ralloc.c (r_alloc_reset_variable): New function.
1791
1792 * buffer.c (Fbuffer_swap_text) [REL_ALLOC]: Reset ralloc's internal
9acef61c 1793 record of what points where. (Bug#716)
baae5c2d 1794
a9051c88
DN
17952008-12-22 Dan Nicolaescu <dann@ics.uci.edu>
1796
1797 * minibuf.c (read_minibuf): Follow the non-interactive case when
1798 running as a daemon, before detaching.
1799
8b146312
AS
18002008-12-22 Andreas Schwab <schwab@suse.de>
1801
1802 * buffer.c (init_buffer): Use realloc instead of xrealloc.
1803 * gtkutil.c (free_widget_value): Use xfree instead of free.
1804
56f2de10
MR
18052008-12-22 Martin Rudalics <rudalics@gmx.at>
1806
1807 * frame.c (delete_frame): New function derived from
1808 Fdelete_frame to handle Qnoelisp value for FORCE argument.
1809 Delete last frame iff FORCE equals Qnoelisp. (Bug#1450)
1810 (Fdelete_frame): Call delete_frame. Remove line from doc-string
1811 saying that FORCE non-nil doesn't run `delete-frame-functions'.
1812 * frame.h: Extern delete_frame.
1813 * window.c (window_loop):
1814 * terminal.c (delete_terminal):
1815 * xterm.c (x_connection_closed):
1816 * xfns.c (Fx_hide_tip):
9acef61c 1817 * w32fns.c (Fx_hide_tip): Call delete_frame instead of Fdelete_frame.
56f2de10 1818
1fc200d6
JR
18192008-12-21 Jason Rumney <jasonr@gnu.org>
1820
1821 * w32uniscribe.c (uniscribe_encode_char): Return FONT_INVALID_CHAR
1822 when character maps to .notdef character.
1823
5e252df2
SM
18242008-12-21 Stefan Monnier <monnier@iro.umontreal.ca>
1825
1826 * keyboard.c (cmd_error_internal): Don't exit in daemon mode, bug#1310.
1827
99b72cc4
JR
18282008-12-20 Jason Rumney <jasonr@gnu.org>
1829
1830 * frame.c (Fmake_terminal_frame): Raise an error when called from
9acef61c 1831 a graphical frame on Windows. (Bug#1325)
99b72cc4 1832
acc49a52
JD
18332008-12-20 Jan Djärv <jan.h.d@swipnet.se>
1834
1835 * frame.c (Fdelete_frame): Set f->menu_bar_vector to Qnil.
1836
6ea15123
CY
18372008-12-20 Chong Yidong <cyd@stupidchicken.com>
1838
1839 * minibuf.c (Fread_buffer): Doc fix.
1840
b2dab6c8
JR
18412008-12-20 Jason Rumney <jasonr@gnu.org>
1842
54ea0c87 1843 * fileio.c (Fexpand_file_name): Do not allow ../ to go beyond the
9acef61c 1844 server name in UNC paths. (Bug#719)
54ea0c87 1845
b2dab6c8 1846 * coding.c (decode_coding): Clear chars_at_source flag when using
9acef61c 1847 charbuf. (Bug#1035)
b2dab6c8 1848
6d1921be
DN
18492008-12-19 Daniel Engeler <engeler@gmail.com>
1850
1851 * sysdep.c (serial_configure): Fix typo.
1852
53934c98
DN
18532008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
1854
1855 * sysdep.c: Include alloca.h.
f4f634e8
DN
1856 (system_process_attributes): Add implementation for Solaris.
1857
1858 * s/sol2-10.h (HAVE_PROCFS, _STRUCTURED_PROC): New defines.
53934c98 1859
06e111a6
DN
18602008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
1861
1862 Reorganize implementation of Flist_system_processes and
1863 Fsystem_process_attributes. No functional changes.
1864 * process.c: Don't #include pwd.h, grp.h and limits.h.
1865 (Flist_system_processes): Just call list_system_processes.
1866 (Fsystem_process_attributes): Just call system_process_attributes.
1867 (procfs_list_system_processes, time_from_jiffies)
1868 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
1869 (procfs_get_total_memory, procfs_system_process_attributes): Move ...
1870
1871 * sysdep.c: ... here. Include pwd.h, grp.h and limits.h.
1872 (list_system_processes): Rename from
1873 procfs_list_system_processes. Enclose in #ifdef HAVE_PROCFS.
1874 Provide a do nothing implementation.
1875 (system_process_attributes): Rename from
1876 procfs_list_system_processes.
1877 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
9acef61c 1878 (procfs_get_total_memory): Enclose in #ifdef GNU_LINUX.
06e111a6
DN
1879
1880 * w32.c (list_system_processes): Rename from
1881 w32_list_system_processes.
1882 (system_process_attributes): Rename from
1883 w32_system_process_attributes.
1884
1885 * s/gnu-linux.h (LISTPROC, PROCATTR): Remove.
1886
1887 * process.h (w32_list_system_processes)
1888 (w32_system_process_attributes): Remove.
1889 (list_system_processes, system_process_attributes): New
1890 prototypes.
1891
6a705b23
KH
18922008-12-19 Kenichi Handa <handa@m17n.org>
1893
1894 * xfont.c (xfont_decode_coding_xlfd): New function.
1895 (xfont_encode_coding_xlfd): New function.
1896 (xfont_list_pattern): Decode XLFD by iso-8859-1.
1897 (xfont_list): Decode and encode XLFD by iso-8859-1.
1898 (xfont_match): Likewise.
1899 (xfont_list_family): Likewise.
1900 (xfont_open): Likewise.
1901
d66c0241 1902 * ftfont.c (ftfont_open): Generate a multibyte string if given
6a705b23
KH
1903 names are utf-8.
1904
d66c0241 1905 * xftfont.c (xftfont_open): Generate a multibyte string if given
6a705b23
KH
1906 names are utf-8.
1907
5a130941
JD
19082008-12-18 Jan Djärv <jan.h.d@swipnet.se>
1909
1910 * gtkutil.c (xg_frame_resized): Remove check if rows/columns have
1911 changed.
bfd20325
JD
1912 (xg_tool_bar_proxy_callback): Put focus on the frame after we have
1913 clicked on a detached tool bar button.
5a130941 1914
fd95644b
DN
19152008-12-18 Dan Nicolaescu <dann@ics.uci.edu>
1916
1917 * emacs.c (main): Print and error and exit when no data is read
1918 from the pipe.
1919
e6eee6ae
JR
19202008-12-17 Jason Rumney <jasonr@gnu.org>
1921
1922 * w32font.c (w32font_has_char): Always return -1.
1923
a35dd56b
KH
19242008-12-16 Kenichi Handa <handa@m17n.org>
1925
1926 * font.c (font_open_entity): Fix previous change.
1927
0e3635c2
DN
19282008-12-16 Dan Nicolaescu <dann@ics.uci.edu>
1929
1930 * process.c: Include <limits.h>.
1931
d4835507 19322008-12-16 Chetan Pandya <pandyacus@sbcglobal.net> (tiny change)
b5356c39
CY
1933
1934 * font.c (font_update_drivers): Fix mistake in reconstructing the
1935 driver list.
1936
19372008-12-16 Chong Yidong <cyd@stupidchicken.com>
1938
1939 * font.c (font_clear_cache): Fix format of font cache data.
1940
e2cbc401
CY
19412008-12-15 Chong Yidong <cyd@stupidchicken.com>
1942
1943 * xftfont.c (xftfont_open): Free Xft font pattern if
1944 XftFontOpenPattern fails.
1945
1946 * xterm.c (x_free_frame_resources): Remove extraneous call to
1947 free_frame_faces.
1948
b131d535
CY
19492008-12-13 Chong Yidong <cyd@stupidchicken.com>
1950
1951 * xterm.c (x_delete_display): Move xim_close_dpy call to
1952 x_delete_terminal.
1953 (x_delete_terminal): Call xim_close_dpy.
1954
e6df5336
JR
19552008-12-13 Jason Rumney <jasonr@gnu.org>
1956
1957 * w32font.c (intern_font_name): New function.
1958 (add_font_name_to_list, w32_enumfont_pattern_entity): Use it.
1959 (w32font_open_internal, Fx_select_font): Decode font name.
1960 (fill_in_logfont, list_all_matching_fonts): Encode font name.
1961
1962 * w32font.h (intern_font_name): Declare new function.
1963
1964 * w32uniscribe.c (add_opentype_font_name_to_list):
1965 Use intern_font_name.
1966
20d68145
CY
19672008-12-13 Chong Yidong <cyd@stupidchicken.com>
1968
9f2554de
CY
1969 * frame.c (Fdelete_frame): Call free_font_driver_list.
1970
3d9bec9a
CY
1971 * font.c (free_font_driver_list): Implement missing function.
1972
20d68145
CY
1973 * w32term.c (w32_term_init): Don't initialize the image cache
1974 here; it will be done in init_frame_faces.
1975
1976 * xterm.h (struct xim_inst_t): Definition moved from xterm.c.
1977 (struct x_display_info): Remove unused member null_pixel. New
1978 member xim_callback_data.
1979
1980 * xterm.c (struct xim_inst_t): Definition moved to xterm.h.
1981 (xim_initialize): Save pointer to callback function data.
1982 (xim_close_dpy): Free callback function data. Call XCloseIM,
1983 reverting 2008-11-04 change by David Smith.
1984 (x_term_init): Don't initialize the image cache here; it will be
1985 done in init_frame_faces. Remove ancient "null_pixel" cruft.
1986 (x_delete_display): Free x_dnd_atoms member.
1987
96f9306b
KH
19882008-12-13 Kenichi Handa <handa@m17n.org>
1989
6dec9044
JB
1990 * font.c (font_rescale_ratio): Moved from xfaces.c.
1991 Argument type changed. Handle a font-spec too.
96f9306b 1992 (font_score): Check Vface_font_rescale_alist.
6dec9044 1993 (font_open_entity): Likewise. (Bug#1547)
96f9306b
KH
1994
1995 * xfaces.c (font_rescale_ratio): Moved to font.c.
1996
8d5b4964
CY
19972008-12-13 Chong Yidong <cyd@stupidchicken.com>
1998
1999 * xfns.c (Fx_wm_set_size_hint): Check if the frame is an X frame.
2000
e6df5336
JR
20012008-12-12 Jason Rumney <jasonr@gnu.org>
2002
2003 * w32fns.c (x_display_info_for_name, Fx_open_connection): Set
2004 Vwindow_system_version to the real w32 major version.
2005
97c6058a
DN
20062008-12-12 Dan Nicolaescu <dann@ics.uci.edu>
2007
2008 * term.c (init_tty): Move setting the terminal name before the
2009 potential user: maybe_fatal.
2010
ec4e88d7
CY
20112008-12-11 Chong Yidong <cyd@stupidchicken.com>
2012
d4835507
JB
2013 * term.c (tty_free_frame_resources): Renamed from delete_tty_output;
2014 all callers changed. Call free_frame_faces to free the face cache.
ec4e88d7 2015
b4233ec9
JR
20162008-12-11 Jason Rumney <jasonr@gnu.org>
2017
8ec71e23 2018 * w32font.c (fill_in_logfont): Don't assume symbol script means
9acef61c 2019 SYMBOL_CHARSET. (Bug#547)
8ec71e23 2020
b4233ec9 2021 * w32uniscribe.c (uniscribe_encode_char): Increase glyph buffer
9acef61c 2022 size for surrogates. (Bug#1096, bug#872)
b4233ec9 2023
011a0143
JB
20242008-12-11 Juanma Barranquero <lekktu@gmail.com>
2025
2026 * w32proc.c (Fw32_get_locale_info): Decode long form of locale name.
2027
3c309f34
JB
20282008-12-11 Juanma Barranquero <lekktu@gmail.com>
2029
2030 * process.c (Fsystem_process_attributes, syms_of_process):
2031 Fix typo in name of Ssystem_process_attributes.
2032 Reported by Ulrich Mueller <ulm@kph.uni-mainz.de>.
2033
fedc6ab5
JB
20342008-12-11 Juanma Barranquero <lekktu@gmail.com>
2035
2036 * syntax.c (Fmodify_syntax_entry): Doc fix.
2037
ba3de0e8
JB
20382008-12-10 Juanma Barranquero <lekktu@gmail.com>
2039
2040 * font.c (Ffont_spec): Move usage to end of docstring.
2041
174f1c74
JR
20422008-12-10 Jason Rumney <jasonr@gnu.org>
2043
2044 * w32font.c (Qcham): New symbol.
2045 (font_supported_scripts): Add cham, and comments for other new
2046 scripts in bitfield from OpenType spec.
9d32f818
JR
2047 (add_font_entity_to_list): Limit unicode-sip fonts to those that
2048 contain characters beyond the bmp.
174f1c74 2049
7b649478
KH
20502008-12-10 Kenichi Handa <handa@m17n.org>
2051
2052 * ftfont.c (fc_charset_table): Add "unicode-sip".
2ae37cf0 2053 (ftfont_spec_pattern): Lookup fc_charset_table for the registry
7b649478
KH
2054 Qunicode_sip.
2055
2133e2d1
JB
20562008-12-10 Juanma Barranquero <lekktu@gmail.com>
2057
2058 * coding.c (QCdefault_char): Rename from QCdefalut_char.
2059 (Fcoding_system_put): Use QCdefault_char.
2060 (syms_of_coding): Set QCdefault_char, not QCdefalut_char.
2061
9af886ee
CY
20622008-12-09 Chong Yidong <cyd@stupidchicken.com>
2063
74d819eb
CY
2064 * xftfont.c (syms_of_xftfont): Fix typo.
2065
4ccfa1c0 2066 * buffer.c (Fbuffer_swap_text): Signal error if swapping a dead buffer.
9af886ee 2067
7c19d3ae
DN
20682008-12-08 Dan Nicolaescu <dann@ics.uci.edu>
2069
2070 * emacs.c (main): Close daemon_pipe on exec.
2071
567826bb
CY
20722008-12-08 Chong Yidong <cyd@stupidchicken.com>
2073
2074 * termchar.h (struct tty): New members termcap_term_buffer and
2075 termcap_strings_buffer.
2076
2077 * term.c (encode_terminal_code): Free any previous memory blocks
4ccfa1c0 2078 before calling xmalloc for encode_terminal_src or encode_terminal_dst.
567826bb
CY
2079 (maybe_fatal): Buffer argument deleted. Don't free buffer here.
2080 All callers changed.
2081 (init_tty): Store termcap data and string buffers in new struct
2082 tty members termcap_term_buffer and termcap_strings_buffer.
2083 (delete_tty): Free them.
4ccfa1c0 2084 (syms_of_term): Initialize encode_terminal_src and encode_terminal_dst.
567826bb 2085
aa96c42b
SZ
20862008-12-07 Seiji Zenitani <zenitani@mac.com>
2087
2088 * nsfns.m (ns_set_background_color): Remove code duplication.
4ccfa1c0 2089 It was a substitute for face-transparency on OS X 10.3.
aa96c42b 2090
b7e1d896
CY
20912008-12-06 Chong Yidong <cyd@stupidchicken.com>
2092
2093 * coding.c (make_conversion_work_buffer): Disable buffer
2094 modification hooks in the work buffer.
2095
b5ec91a5
EZ
20962008-12-05 Eli Zaretskii <eliz@gnu.org>
2097
2098 * process.c (procfs_system_process_attributes): If `nread' has a
2099 negative value, assign zero to it.
2100
a5d2a52b
CY
21012008-12-05 Chong Yidong <cyd@stupidchicken.com>
2102
68c5540b 2103 * eval.c (Vdebug_on_error): Doc fix.
a5d2a52b 2104
7bf1bb21
KH
21052008-12-05 Kenichi Handa <handa@m17n.org>
2106
2107 * ftfont.c (ftfont_shape_by_flt): Use "combining" flt if the
2108 second character is a combining character.
2109
2fdc7d00
EZ
21102008-12-05 Eli Zaretskii <eliz@gnu.org>
2111
2112 * process.c (procfs_system_process_attributes): Don't use cmd,
2113 cmdsize, and q without initializing them first.
2114
bf6bfba8
JR
21152008-12-04 Jason Rumney <jasonr@gnu.org>
2116
2117 * w32font.c (w32font_draw): Initialize orig_clip before getting
2118 it, and delete it when finished.
2119
a3b1a468
DN
21202008-12-04 Dan Nicolaescu <dann@ics.uci.edu>
2121
2122 * keyboard.c (kbd_buffer_get_event): Follow the non-interactive
2123 case when running as a daemon before detaching.
2124
8b8be8eb
JB
21252008-12-03 Juanma Barranquero <lekktu@gmail.com>
2126
805f2638 2127 * w32.c (init_environment): Don't unload library shell32.dll.
8b8be8eb 2128
b1bde622
KH
21292008-12-03 Kenichi Handa <handa@m17n.org>
2130
e500c47d
KH
2131 * font.c (font_at): Set `multibyte' at first.
2132
ca516334
KH
2133 * coding.c (decode_coding_charset): Check type of an element of
2134 vector VALIDS.
7bf1bb21 2135 (encode_coding_emacs_mule): Be sure to set `code'.
ca516334 2136
4ccfa1c0 2137 * fontset.c (face_for_char): Handle invalid charset property correctly.
b1bde622
KH
2138 (font_for_char): Likewise.
2139
1e5ecd37
CY
21402008-12-03 Chong Yidong <cyd@stupidchicken.com>
2141
d5b01609 2142 * font.c (Fopen_font): Compute pixel size correctly.
ba207571
CY
2143 (font_update_lface): Handle fonts with corrupted size specs,
2144 i.e. non-int and non-float.
d5b01609 2145
11e3a6e4 2146 * ftfont.c (ftfont_match): Initialize entity variable.
9a48c8cb 2147 (ftfont_resolve_generic_family): Avoid using uninitialized var.
8adb3a3b 2148 (ftfont_list_family): Initialize list var earlier.
11e3a6e4 2149
ab06788b
CY
2150 * xselect.c (Fx_get_cut_buffer_internal): Fix memory leak.
2151
1e5ecd37 2152 * xterm.c (x_draw_glyph_string): Fall back on
0cff82ab 2153 underline_minimum_offset for underline position.
1e5ecd37 2154
63c125ab
DN
21552008-12-03 Dan Nicolaescu <dann@ics.uci.edu>
2156
2157 * keyboard.c (read_char_help_form_unwind): Specify the type for ARG.
2158
2159 * character.c (c_string_width): Specify the type for LEN.
2160
3a8406e1
KH
21612008-12-03 Kenichi Handa <handa@m17n.org>
2162
4ccfa1c0 2163 * coding.c (decode_coding_utf_16): Initialize consumed_chars_base to 0.
453b38f0 2164 (decode_coding_utf_8): Likewise.
4ccfa1c0 2165 (detect_coding_system): Initialize utf_16_le_eol to -1, val to Qnil.
4533845d 2166 (produce_chars): Initialize consumed_chars to 0.
3a8406e1 2167
651df7d9
CY
21682008-12-02 Chong Yidong <cyd@stupidchicken.com>
2169
2170 * keyboard.c (make_lispy_position): Only use PT if the selected
2171 window is current.
2172
1f625c6c
AS
21732008-12-02 Andreas Schwab <schwab@suse.de>
2174
f7741ce9
AS
2175 * font.c (font_unparse_fcname): Fix use of uninitialized variable.
2176
1f625c6c
AS
2177 * doprnt.c (doprnt1): Fix size of charbuf.
2178
92bc2678
CY
21792008-12-02 Chong Yidong <cyd@stupidchicken.com>
2180
2181 * keyboard.c (timer_check): Revert last change.
2182
93b9e8cc
JB
21832008-12-02 Juanma Barranquero <lekktu@gmail.com>
2184
2185 * makefile.w32-in ($(BLD)/w32console.$(O)): Fix silly, silly typo.
2186
fd7a37d5
JB
21872008-12-01 Juanma Barranquero <lekktu@gmail.com>
2188
2189 * makefile.w32-in: Update dependencies.
2190 (CONFIG_H): Add $(EMACS_ROOT)/nt/inc/sys/time.h.
2191
c115043b
AS
21922008-12-01 Andreas Schwab <schwab@suse.de>
2193
2194 * font.c (register_font_driver): Use xmalloc.
2195 (font_put_frame_data): Likewise.
2196
f5668d2a
CY
21972008-12-01 Chong Yidong <cyd@stupidchicken.com>
2198
860d96be
CY
2199 * xfaces.c (realize_x_face): Make abort condition clearer.
2200
f5668d2a
CY
2201 * gtkutil.c (update_frame_tool_bar): Initialize variable.
2202
379c17e7
CY
22032008-11-30 Chong Yidong <cyd@stupidchicken.com>
2204
2205 * keyboard.c (timer_check): After a timer runs, ensure that the
2206 selected window's buffer is current.
2207
35f36d65
JB
22082008-11-30 Juanma Barranquero <lekktu@gmail.com>
2209
f952c61c
JB
2210 * makefile.w32-in ($(BLD)/abbrev.$(O)): Remove.
2211 It was accidentally restored by the Unicode merge.
2212
35f36d65
JB
2213 * w32proc.c (Fw32_get_locale_info): Fix typo in docstring.
2214
b23077df
JB
22152008-11-29 Juanma Barranquero <lekktu@gmail.com>
2216
2217 * w32proc.c: Include "coding.h".
2218 (Fw32_short_file_name): Encode filename passed to Windows API.
2219 (Fw32_long_file_name): Encode filename passed to Windows API and
2220 decode back the result. (Bug#1433)
2221
b8ebe9dd
KH
22222008-11-29 Kenichi Handa <handa@m17n.org>
2223
8cc53f96
KH
2224 * charset.h (CHAR_CHARSET_P): Check if the encoder is loaded or
2225 not before accessing it.
2226
b8ebe9dd
KH
2227 * charset.c (Fdefine_charset_internal): After calculating
2228 min_char, max_char, and fastmap, copy the charset structure again.
2229 (encode_char): Fix the previous change.
2230
59bc82c0
SZ
22312008-11-28 Seiji Zenitani <zenitani@mac.com>
2232
2233 * frame.c (x_set_alpha) [NS_IMPL_COCOA]: Call x_set_frame_alpha.
2234
2235 * nsfns.m (ns_frame_parm_handlers): Set alpha handler.
2236
2237 * nsterm.m (x_set_frame_alpha): New function.
2238
32247e3d
EZ
22392008-11-27 Eli Zaretskii <eliz@gnu.org>
2240
2241 * xfaces.c (Fx_font_family_list, syms_of_xfaces): Fix last change.
2242
b003e5ff
JB
22432008-11-27 Juanma Barranquero <lekktu@gmail.com>
2244
2245 * w32font.c (add_font_entity_to_list): Pass the right LOGFONT
2246 pointer to check_face_name.
2247
708550f5
KH
22482008-11-27 Kenichi Handa <handa@m17n.org>
2249
2250 * category.h (SET_CATEGORY_SET): Call set_category_set.
2251 (set_category_set): Extern it.
2252
2253 * category.c (hash_get_category_set): New function.
2254 (Fmodify_category_entry): Adjusted for the change of
2255 char_table_ref_and_range. Call hash_get_category_set to get a
2256 category set to store in the table.
2257
2258 * character.h (MAYBE_UNIFY_CHAR): Call maybe_unify_char instead of
2259 Funify_charset.
2260
2ae37cf0 2261 * charset.h (enum charset_method): Delete CHARSET_METHOD_MAP_DEFERRED.
708550f5
KH
2262 (DECODE_CHAR): Check if the decoder vector is ready.
2263 (ENCODE_CHAR): Check if the encoder char-table is ready.
2264 (maybe_unify_char): Extern it.
2265
2266 * charset.c (Vchar_unified_charset_table): Delete it.
2267 (inhibit_load_charset_map): New variable.
2268 (temp_charset_work): New variable.
2269 (SET_TEMP_CHARSET_WORK_ENCODER, GET_TEMP_CHARSET_WORK_ENCODER)
2270 (SET_TEMP_CHARSET_WORK_DECODER, GET_TEMP_CHARSET_WORK_DECODER):
2271 New macros.
2272 (load_charset_map): Meaning of control_flag changed. If
2273 inhibit_load_charset_map is nonzero, setup a table in
2274 temp_charset_work.
2275 (load_charset): New argument control_flag.
2276 (map_charset_for_dump): New function.
2277 (map_charset_chars): If inhibit_load_charset_map is nonzero, use
2278 map_charset_for_dump.
2279 (Fdefine_charset_internal): If the charset method is MAP, load
2280 mapping tables by calling load_charset.
2281 (Funify_charset): Don't load a mapping table but directly set
2282 Vchar_unify_table.
2283 (maybe_unify_char): New function.
2284 (decode_char): Don't handle the deleted method MAP_DEFERRED.
2285 Handle the case of inhibit_load_charset_map being nonzero.
2286 (encode_char): Don't handle the deleted method MAP_DEFERRED.
2287 Handle the case of inhibit_load_charset_map being nonzero.
2288 (Fclear_charset_maps): Just free temp_charset_work.
2289 (syms_of_charset): Make `inhibit-load-charset-map' a Lisp
2290 variable.
2291
2292 * chartab.c (sub_char_table_ref_and_range): Adjusted for the
2293 change of char_table_ref_and_range.
2294 (char_table_ref_and_range): Change the meaning of argument FROM
2295 and TO. Now the caller must provide initial values for *FROM
2296 and *TO.
2297
2298 * fontset.c (fontset_add): Adjusted for the change of
2299 char_table_ref_and_range.
2300 (fontset_get_font_group): Likewise.
2301 (Ffontset_info): Likewise.
2302
2303 * keymap.c (describe_vector): Adjusted for the change of
2304 char_table_ref_and_range. For char-table, put boundary between
2305 non-ASCII and 8-bit characters.
2306
2307 * print.c (print_object): For bool-vector, delete unnecessary
2308 check of ASCII_BYTE_P.
2309
9196133b
JR
23102008-11-26 Jason Rumney <jasonr@gnu.org>
2311
2312 * w32font.c (w32font_open_internal): Don't include external
9acef61c 2313 leading in font height. (Bug#879)
9196133b 2314
9f688acf
GM
23152008-11-26 Glenn Morris <rgm@gnu.org>
2316
2317 * xfaces.c (Fx_font_family_list): Replace lisp/term/pc-win.el
2318 redefinition with ifdef. (Bug#1383)
2319
90d19aff
AR
23202008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
2321
2322 * nsterm.m (ns_get_color): Handle long hex strings (fixes bug #1044).
2323
4ccfa1c0 23242008-11-24 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
90d19aff
AR
2325
2326 * nsterm.m (-otherMouseDown:, -otherMouseUp:, -otherMouseDragged):
2327 New EmacsView methods.
2328 (EV_UDMODIFIERS, EV_BUTTON): Add OtherMouse constants.
2329 Fixes bug #1048,1357,1414.
2330
23312008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
2332
2333 Fix bug #1362.
2334 * image.c (x_clear_image_1): Do not free background under HAVE_NS, it
2335 is not an indexed color.
2336 * nsterm.m (free_indexed_color): Add argument checking.
2337 * nsfns.m: Move config.h to before system includes (advised by Dan N.).
2338
e7d5ecb3
CY
23392008-11-24 Chong Yidong <cyd@stupidchicken.com>
2340
2341 * minibuf.c (Fcompleting_read, Vminibuffer_completion_confirm):
2342 Document confirm-after-completion value for
2343 minibuffer-completion-confirm.
2344
c285743c
JR
23452008-11-24 Jason Rumney <jasonr@gnu.org>
2346
2347 * w32font.c (check_face_name): Use xstrcasecmp. Avoid compiler
2348 warning.
2349
b0857706
JR
23502008-11-23 Jason Rumney <jasonr@gnu.org>
2351
2352 * w32uniscribe.c (uniscribe_encode_char): Ensure context is
2353 restored before returning.
2354
2355 * w32font.c (check_face_name): New function.
2356 (add_font_entity_to_list): Use it to filter out common substituted
9acef61c 2357 fonts. (Bug#642)
b0857706 2358
ee50ff07
MR
23592008-11-22 Martin Rudalics <rudalics@gmx.at>
2360
2361 * buffer.c (Fswitch_to_buffer): Reword and mention new option
2362 confirm-nonexistent-file-or-buffer in doc-string.
2363
b8ff72fa
SM
23642008-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
2365
2366 * buffer.c (Fbuffer_swap_text): Remove redundant marker manipulation.
2367 Fix copy/paste typo. Add checks.
2368
cee53ed4
KH
23692008-11-21 Kenichi Handa <handa@m17n.org>
2370
2371 * coding.c (detect_coding_iso_2022): Reject invalid composition
2372 sequence.
2373 (DECODE_COMPOSITION_START): If the current source is the last
2374 block, and the current composition doesn't end, regard this
2375 sequence as invalid.
2376 (decode_coding_iso_2022): Handle invalid composition sequence.
2377
f6ef1e65
MR
23782008-11-20 Martin Rudalics <rudalics@gmx.at>
2379
2380 * window.c (coordinates_in_window): Don't return
2381 ON_VERTICAL_BORDER for the rightmost position of a mode/header
2382 line when the window is not the rightmost one. (Bug#1372)
2383
e08b1705
MR
23842008-11-16 Ben North <ben@redfrontdoor.org> (tiny change)
2385
2386 * buffer.c (syms_of_buffer): Fix doc-string of cursor-type.
2387
ad98e89f
EZ
23882008-11-15 Eli Zaretskii <eliz@gnu.org>
2389
2390 * msdos.c (run_msdos_command): Don't call dos_ttcooked, dos_ttraw,
2391 and bright_bg if noninteractive is non-zero.
2392
fb098a4b
CY
23932008-11-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2394
2395 * xterm.c (x_draw_glyph_string): For stretch glyphs, don't call
2396 x_draw_glyph_string_background.
2397
2398 * w32term.c (x_draw_glyph_string): Likewise.
2399
ce952b6e
CY
24002008-11-15 Chong Yidong <cyd@stupidchicken.com>
2401
2402 * xterm.c (x_draw_glyph_string): Stop drawing the background of
2403 the next glyph string once past the overhang width.
2404
2405 * nsterm.m (ns_draw_glyph_string): Likewise.
2406
2407 * w32term.c (x_draw_glyph_string): Likewise.
2408
26ea7079
CY
24092008-11-14 Fabrice Popineau <fabrice.popineau@supelec.fr> (tiny change)
2410
2411 * fileio.c (Finsert_file_contents): Decrement specpdl_ptr to avoid
2412 double file close.
2413
1c33c906
MR
24142008-11-14 Martin Rudalics <rudalics@gmx.at>
2415
2416 * window.c (window_loop): In DELETE_BUFFER_WINDOWS case, reset
2417 dedicated status of window before attempting to display another
2418 buffer in it.
2419
8fc29035
JB
24202008-11-14 Juanma Barranquero <lekktu@gmail.com>
2421
2422 * msdos.c (Fmsdos_long_file_names):
2423 (syms_of_msdos) <dos-unsupported-char-glyph>:
2424 * dosfns.c (Fint86): Fix typos in docstrings.
2425
55fb4286
EZ
24262008-11-14 Eli Zaretskii <eliz@gnu.org>
2427
2428 * makefile.w32-in (OBJ1, WIN32OBJ): Fix whitespace.
2429
3fda0315
KY
24302008-11-14 Katsumi Yamaoka <yamaoka@jpl.org>
2431
2432 * puresize.h (BASE_PURESIZE): Increase to 1260000.
2433
7e849c17
CY
24342008-11-12 Michal Nazarewicz <mina86@tlen.pl> (tiny change)
2435
2436 * frame.c (x_set_alpha): Set alpha to -1 if nil given.
2437
2438 * frame.h: Negative alpha means "don't touch".
2439
2440 * w32term.c (x_set_frame_alpha): Do nothing if alpha is negative.
2441
2442 * xterm.c (x_set_frame_alpha): Do nothing if alpha is negative.
2443
b9fd67bd
DN
24442008-11-12 Dan Nicolaescu <dann@ics.uci.edu>
2445
2446 * hftctl.c:
2447 * chpdef.h:
2448 * acldef.h: Remove files used only for systems no longer supported.
2449
2450 * Makefile.in: Fix .o alphabetical ordering.
2451 (hftctl.o): Remove dependency, file removed.
2452 (keymap.o, print.o): Depend on charset.h.
2453
d5998e03
KH
24542008-11-10 Kenichi Handa <handa@m17n.org>
2455
2ae37cf0 2456 * character.c (Fget_byte): Fix and make it faster for unibyte target.
d5998e03 2457
be70e183
CY
24582008-11-08 Chong Yidong <cyd@stupidchicken.com>
2459
2460 * dired.c (file_name_completion): If completion_ignore_case is
2461 enabled, ignore case when checking completion-regexp-list.
2462
7cf94eac
EZ
24632008-11-08 Eli Zaretskii <eliz@gnu.org>
2464
2465 * vm-limit.c (get_lim_data): Fix last change.
2466
ee107a89
KH
24672008-11-08 Kenichi Handa <handa@m17n.org>
2468
2469 * character.c (Fget_byte): New function.
2470 (syms_of_character): Defsubr Fget_byte.
2471
5fd15622
CY
24722008-11-07 Chong Yidong <cyd@stupidchicken.com>
2473
2474 * xdisp.c (try_window_reusing_current_matrix): Ensure that window
2475 cursor position is valid after scrolling.
2476
13d62fad
JB
24772008-11-06 Juanma Barranquero <lekktu@gmail.com>
2478
2479 * fns.c (Frandom): Rename arg N to LIMIT to match the docs; doc fix.
2480
a1dd2936
GM
24812008-11-06 Glenn Morris <rgm@gnu.org>
2482
2483 * xterm.c (handle_one_xevent): Don't let popup menus cause
2484 mouse-autoselect-window related window switching. (Bug#1261)
2485
860cd236
CY
24862008-11-04 David Smith <davidsmith@acm.org> (tiny change)
2487
2488 * xterm.c (xim_close_dpy): Avoid double-free on X11R6 XIM.
2489
653a3150
AS
24902008-11-04 Andreas Schwab <schwab@suse.de>
2491
2492 * xfns.c (Fx_wm_set_size_hint): Add missing return value.
2493
870f5cac
CY
24942008-11-03 Chong Yidong <cyd@stupidchicken.com>
2495
2496 * xfns.c (Fx_wm_set_size_hint): New function.
2497
1e02f3cb
MR
24982008-11-03 Martin Rudalics <rudalics@gmx.at>
2499
2500 * textprop.c (Fprevious_single_char_property_change): Return 0
2501 when there's no change in a string. (Bug#1301)
2502
e630dfc6
MR
25032008-11-02 Martin Rudalics <rudalics@gmx.at>
2504
2505 * frame.c (do_switch_frame): New argument NORECORD passed to
2506 Fselect_window.
2507 (Fselect_frame): New argument NORECORD passed to
2508 do_switch_frame.
2509 (Fset_frame_selected_window): New argument NORECORD passed to
2510 Fselect_frame.
2511 (Fhandle_switch_frame, Fdelete_frame): Handle NORECORD argument
2512 in call of do_switch_frame.
2513 (Fset_mouse_position, Fset_mouse_pixel_position, Fraise_frame):
2514 Handle NORECORD argument in call of Fselect_frame.
2515 * lisp.h (do_switch_frame, Fselect_frame)
2516 (Fset_frame_selected_window): Adjust declarations.
2517 * window.c (select_frame_norecord): New function.
2518 (run_window_configuration_change_hook): Use it and call
2519 Fselect_frame with NORECORD set.
2520 (Fselect_window): Pass NORECORD to Fselect_frame.
2521 (Fset_window_configuration): Handle NORECORD argument in call of
2522 do_switch_frame.
2523 * minibuf.c (choose_minibuf_frame): Handle NORECORD in call of
2524 Fset_frame_selected_window.
2525 * keyboard.c (command_loop_1): Handle NORECORD in call of
2526 Fselect_frame (currently ifdefd).
2527
9020b223
GM
25282008-11-02 Ulrich Mueller <ulm@kph.uni-mainz.de>
2529
2530 * emacs.c (USAGE2): Untabify.
2531
793ffee8
SM
25322008-11-01 Stefan Monnier <monnier@iro.umontreal.ca>
2533
2534 * composite.c (fill_gstring_header): Fix copy/paste typo.
2535
ab6d1131
MR
25362008-10-31 Martin Rudalics <rudalics@gmx.at>
2537
2538 * window.c (Fnext_window, Fprevious_window): Rewrite doc-string.
2539 (Fother_window): Rename argument and rewrite doc-string.
2540 (select_window_norecord): Fix return value. (Bug#1276)
2541
601a9cf1
JB
25422008-10-30 Juanma Barranquero <lekktu@gmail.com>
2543
2544 * w32fns.c (x_create_tip_frame): Prevent default foreground color for
2545 new frames overriding foreground for tooltips. Based on similar patch
2546 from Martin Rudalics <rudalics@gmx.at>. (Bug#1032)
2547
813b0652
CY
25482008-10-29 Chong Yidong <cyd@stupidchicken.com>
2549
2550 * emacs.c (Fdaemon_initialized): Initialize nfd.
2551
4414f58f
MR
25522008-10-29 Martin Rudalics <rudalics@gmx.at>
2553
2554 * window.c (Fwindow_height, Fdelete_window, set_window_buffer)
2555 (Fwindow_text_height): Clarify doc-strings.
2556 * xdisp.c (syms_of_xdisp): Mention set-window-buffer in
2557 doc-string of window-scroll-functions.
2558
ecdcaa09
RS
25592008-10-28 Reiner Steib <Reiner.Steib@gmx.de>
2560
2561 * category.c (syms_of_category): Fix typo in docstring.
2562
23fe745a
JB
25632008-10-28 Juanma Barranquero <lekktu@gmail.com>
2564
2565 * window.c (Fwindowp, Fwindow_live_p, Fwindow_minibuffer_p)
2566 (Fcoordinates_in_window_p, Fscroll_left, Fscroll_right):
2567 Fix typos in docstrings.
2568
ff808935
DN
25692008-10-28 Dan Nicolaescu <dann@ics.uci.edu>
2570
2571 * emacs.c (daemon_pipe): Make non-static.
2572 (IS_DAEMON): Move definition ...
2573 * lisp.h (IS_DAEMON): ... here.
2574 (daemon_pipe): Declare.
2575 (is_daemon): Remove.
2576 * dispnew.c (init_display): Use IS_DAEMON.
2577
fc012771
SM
25782008-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
2579
2580 * xdisp.c (pos_visible_p, redisplay_internal, message3_nolog)
2581 (message2_nolog): Check FRAME_INITIAL_P instead of noninteractively.
2582
2583 * emacs.c (is_daemon): Remove.
2584 (main): Don't set is_daemon.
2585 (IS_DAEMON): New macro.
2586 (Fdaemonp, Fdaemon_initialized): Use it.
601a9cf1 2587 (Fdaemon_initialized): Write a char into the pipe to make sure the
fc012771
SM
2588 parent exits.
2589 (syms_of_emacs): Explicitly initialize daemon_pipe[1].
2590
d8bdbe6f
CY
25912008-10-27 Chong Yidong <cyd@stupidchicken.com>
2592
d1a072bf
CY
2593 * nsterm.m (ns_draw_window_cursor): When hbar cursor is on
2594 over-sized glyph, draw it with the default glyph width.
2595
e2e325aa
CY
2596 * w32term.c (x_draw_bar_cursor): When hbar cursor is on over-sized
2597 glyph, draw it with the default glyph width.
2598
2599 * xterm.c (x_draw_bar_cursor): When hbar cursor is on over-sized
2600 glyph, draw it with the default glyph width.
2601
d8bdbe6f
CY
2602 * xdisp.c (try_scrolling): When computing the distance from the
2603 scroll margin to PT, try moving some distance past the window
2604 bottom before giving up.
2605
7bfac547
MR
26062008-10-27 Martin Rudalics <rudalics@gmx.at>
2607
2608 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p)
2609 (Fset_window_buffer): Explain in doc-string that a window can be
2610 "strongly" dedicated to its buffer.
2611
4ff029f6
DN
26122008-10-27 Dan Nicolaescu <dann@ics.uci.edu>
2613
2614 * emacs.c (daemon_name): New variable.
2615 (main): Deal with --daemon=SERVER_NAME.
2616 (Fdaemonp): Return a name if one was passed to --daemon.
2617
5790ef40
DN
26182008-10-26 Romain Francoise <romain@orebokech.com>
2619
f9bd0df9 2620 * emacs.c (daemon_pipe): New variable.
5790ef40
DN
2621 (main): Create a pipe before forking, make the parent exit only after
2622 the child has closed its end of the pipe. Move closing the
2623 descriptors ...
2624 (Fdaemon_initialized): ... here. New function.
2625
f5385255
SM
26262008-10-26 Stefan Monnier <monnier@iro.umontreal.ca>
2627
4d632321
SM
2628 * chartab.c (Foptimize_char_table): Make sure `ascii' doesn't point to
2629 the previous unoptimized table.
2630
f5385255
SM
2631 * window.c (Fset_window_buffer): Undo 2008-10-18 change to re-instate
2632 the distinction between non-nil and non-t value of `dedicated'.
2633
6c56a0f3
CY
26342008-10-25 Chong Yidong <cyd@stupidchicken.com>
2635
2636 * keyboard.c (read_char_minibuf_menu_prompt): Ensure that
f5385255 2637 read_char_minibuf_menu_text is large enough to hold the menu string.
6c56a0f3 2638
fec89261
MR
26392008-10-25 Martin Rudalics <rudalics@gmx.at>
2640
2641 * window.c (Fget_buffer_window, Fdelete_windows_on)
2642 (Freplace_buffer_in_windows): Make buffer argument optional and
2643 rename to buffer_or_name.
2644
34fcddd0
CY
26452008-10-24 Chong Yidong <cyd@stupidchicken.com>
2646
f5385255
SM
2647 * xdisp.c (handle_single_display_spec, handle_display_prop):
2648 Undo 2005-05-16 change.
34fcddd0
CY
2649 (handle_stop): Pop iterator if it's loaded with an empty string.
2650 (get_overlay_strings_1): Don't save iterator if it's loaded with
2651 an empty string (bug#1201).
2652
064766f2
KH
26532008-10-24 Kenichi Handa <handa@m17n.org>
2654
2655 * ftfont.c (ftfont_otf_features): Fix previous change.
2656 (ftfont_otf_capability): Check FeatureList.FeatureCount before
2657 calling ftfont_otf_features.
2658
f9bd0df9 26592008-10-24 Kenichi Handa <handa@m17n.org>
064766f2
KH
2660
2661 * font.c (font_match_p): Fix for the case that a vector of
2662 characters is in script-representative-chars.
2663
1dae9197
MA
26642008-10-24 Michael Albinus <michael.albinus@gmx.de>
2665
2666 * dbusbind.c (xd_in_read_queued_messages): New variable.
f5385255 2667 (XD_SIGNAL1, XD_SIGNAL2, XD_SIGNAL3): New macros. Throw Qdbus_error.
1dae9197
MA
2668 (xd_read_queued_messages): Catch Qdbus_error from the macros.
2669 (all): Replace xsignal1, xsignal2, xsignal3 by the respective
2670 macro. (Bug#1186).
2671
f9bd0df9 26722008-10-23 Ali Bahrami <ali_gnu@emvision.com> (tiny change)
9b3362b8
DN
2673
2674 * s/sol2-10.h: New file.
2675
878a4584
JB
26762008-10-23 Juanma Barranquero <lekktu@gmail.com>
2677
2678 * xdisp.c (fill_glyph_string): Fix typo in source (though the
2679 poor beast has survived 9+ years and the jump from xterm.c!).
2680
cd265ca6
MR
26812008-10-23 Martin Rudalics <rudalics@gmx.at>
2682
2683 * buffer.c (Fget_buffer_create): Rename arg to buffer_or_name.
2684 Reword doc-string.
f5385255 2685 (Fbury_buffer): In doc-string say what happens to the buffer's window.
cd265ca6 2686
472a4dc9
JB
26872008-10-23 Juanma Barranquero <lekktu@gmail.com>
2688
2689 * character.c (syms_of_character) <script-representative-chars>:
2690 <unicode-category-table>: Doc fixes.
2691
159bd5a2
NF
26922008-10-23 Noah Friedman <friedman@splode.com>
2693
2694 * coding.c (make_conversion_work_buffer): Check that
2695 Vcode_conversion_reused_workbuf is a live buffer, otherwise call
2696 Fget_buffer_create.
2697
49f9c344
KH
26982008-10-23 Kenichi Handa <handa@m17n.org>
2699
2700 * font.c (font_add_log): Check the values of extra properties.
2701
12bb3111
MR
27022008-10-22 Martin Rudalics <rudalics@gmx.at>
2703
2704 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
2705 Reword doc-string.
2706 (Fset_window_parameter): Use NILP.
2707 (Fscroll_up, Fscroll_down, Fminibuffer_selected_window)
f5385255 2708 (Frecenter): Use "selected" instead of "current" window in doc-strings.
12bb3111 2709
bbeb4e99
JB
27102008-10-22 Juanma Barranquero <lekktu@gmail.com>
2711
2712 * xdisp.c (next_element_from_buffer): Remove bogus xassert condition.
2713
27142008-10-22 Adrian Robert <Adrian.B.Robert@gmail.com>
cb83c00b
AR
2715
2716 * nsfns.m (ns_appkit_version): New function.
2717 (x-server-version): Use it.
2718 (syms_of_nsfns): Define ns-version-string here, not nsterm.m.
2719 (x-server-vendor): Don't check_ns().
2720
2721 * nsterm.m (syms_of_nsterm): Drop ns-version-string.
2722
a9b555d3
JB
27232008-10-22 Juanma Barranquero <lekktu@gmail.com>
2724
2725 * w32fns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert.
2726 Copied from 2005-02-03 change to xfns.c by Kim F. Storm.
2727
4626499f
KH
27282008-10-22 Kenichi Handa <handa@m17n.org>
2729
e3681952
KH
2730 * syntax.c (scan_words): Call word_boundary_p instead of comparing
2731 scripts.
2732
4626499f
KH
2733 * category.c (word_boundary_p): Check scripts instead of charset.
2734 Handle nil value in word-separating-categories and
2735 word-combining-categories.
2736 (syms_of_category): Fix docstrings of word-separating-categories
2737 and word-combining-categories.
2738
1560f91a
EZ
27392008-10-21 Eli Zaretskii <eliz@gnu.org>
2740
2741 * coding.c (Fencode_coding_region, Fdecode_coding_region)
2742 (Fdecode_coding_string, Fencode_coding_string): Doc fix.
2743
f4668441
MR
27442008-10-21 Martin Rudalics <rudalics@gmx.at>
2745
2746 * buffer.c (Fget_buffer, Fbury_buffer, switch_to_buffer_1):
2747 Rename arg "buffer" to "buffer_or_name".
2748 (Fkill_buffer): Rename arg "buffer" to "buffer_or_name" and make
2749 it optional.
2750 (no_switch_window): Remove since the return value is not used.
a9b555d3 2751 (Fswitch_to_buffer): Rename arg "buffer" to "buffer_or_name".
f4668441
MR
2752 Consider window as dedicated when Fwindow_dedicated_p returns a
2753 non-nil value.
2754 * lisp.h: Remove prototype for no_switch_window.
2755
fd75ddb2
JD
27562008-10-21 Jan Djärv <jan.h.d@swipnet.se>
2757
2758 * emacs.c (main): Unconditionally set PER_LINUX32 and exec
2ae37cf0 2759 temacs when dumping if HAVE_PERSONALITY_LINUX32 is defined.
fd75ddb2 2760
07295713
KH
27612008-10-21 Kenichi Handa <handa@m17n.org>
2762
2763 * coding.c (detect_coding_charset): For iso-8859-* coding systems,
2764 check Vlatin_extra_code_table.
2765
712adc82
EZ
27662008-10-20 Eli Zaretskii <eliz@gnu.org>
2767
2768 * fileio.c (Fset_file_modes): Doc fix.
2769
f549eb0b
MA
27702008-10-19 Michael Albinus <michael.albinus@gmx.de>
2771
2772 * dbusbind.c (XD_OBJECT_TO_DBUS_TYPE): Handle simple type symbols
2773 in arrays.
2774
aac0c6e3
MR
27752008-10-19 Martin Rudalics <rudalics@gmx.at>
2776
2777 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
2778 Mention kill-buffer in doc-string.
2779 (Fset_window_buffer): Reinsert tem check removed in last commit.
2780 (Fenlarge_window, Fshrink_window): Have argument names and
2781 doc-string follow Elisp manual more closely.
2782
27832008-10-18 Eli Zaretskii <eliz@gnu.org>
2784
2785 * fileio.c (Fset_file_modes): Doc fix.
2786
27872008-10-18 Martin Rudalics <rudalics@gmx.at>
2788
2789 * window.c (Fwindow_width, Fset_window_start)
2790 (Fwindow_parameters, Fwindow_parameter, Fset_window_parameter)
f5385255
SM
2791 (Fdelete_windows_on, Freplace_buffer_in_windows):
2792 Make doc-strings follow code and Elisp manual more closely.
aac0c6e3
MR
2793 (Fwindow_dedicated_p): Make window argument optional.
2794 (Fset_window_dedicated_p): Rename argument "arg" to "flag".
2795 (Fset_window_buffer): Respect any non-nil dedicated value for
2796 window. Rename "buffer" argument to "buffer_or_name".
2797
27982008-10-18 Ulrich Mueller <ulm@gentoo.org>
2799
2800 * m/sh3.h: New file, machine description for SuperH.
2801
28022008-10-17 Martin Rudalics <rudalics@gmx.at>
2803
2804 * window.c (Fsplit_window): Rename arg horflag to horizontal.
2805
28062008-10-17 Kenichi Handa <handa@m17n.org>
2807
2808 * ftfont.c (ftfont_otf_features): Fix indexing
2809 gsub_gpos->FeatureList.Feature. Check the validity of indices.
2810
28112008-10-16 Magnus Henoch <mange@freemail.hu>
2812
2813 * dbusbind.c (Fdbus_call_method): Unbreak usage line.
2814 (Fdbus_call_method_asynchronously): Ditto.
2815 This change makes C-h f display the argument list.
2816
28172008-10-16 Chong Yidong <cyd@stupidchicken.com>
2818
2819 * fileio.c (Fexpand_file_name): Doc fix.
2820
2821 * xfaces.c (Finternal_set_lisp_face_attribute): Make null values
2822 of :foreground and :background equivalent to unspecified (20.x
2823 compatibility).
2824
28252008-10-15 Eli Zaretskii <eliz@gnu.org>
2826
2827 * buffer.c (syms_of_buffer): Doc fix.
2828
28292008-10-14 Kenichi Handa <handa@m17n.org>
2830
2831 * font.c (font_clear_prop): When clearing font width, clear the
2832 average width field too.
2833
28342008-10-12 Andreas Schwab <schwab@suse.de>
2835
2836 * ftfont.c (ftfont_shape_by_flt): Make static.
2837 * ftfont.h (ftfont_shape_by_flt): Don't declare.
2838
2839 * font.c: Don't include <m17n-flt.h>.
2840
28412008-10-10 Eli Zaretskii <eliz@gnu.org>
2842
2843 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Decrease to 10000.
2844
28452008-10-09 Eli Zaretskii <eliz@gnu.org>
2846
2847 * frame.c (make_terminal_frame) [MSDOS]: Remove unused #ifdef'ed
2848 away code.
2849
28502008-10-09 Chong Yidong <cyd@stupidchicken.com>
2851
2852 * dispnew.c (update_text_area): Avoid looping due to large glyph
2853 overhangs (bug#1070).
2854
28552008-10-09 Kenichi Handa <handa@m17n.org>
2856
2857 * fontset.c (face_for_char): If face->fontset is negative, just
2858 return ascii_face.
2859
f5385255
SM
2860 * font.c (font_delete_unmatched): Fix previous change.
2861 Don't reject an entity if DPI and AVGWIDTH of an entity are 0.
aac0c6e3
MR
2862
28632008-10-09 Martin Rudalics <rudalics@gmx.at>
2864
2865 * frame.c (Fraise_frame): On text-only terminals select frame in
2866 order to make it visible. (Bug#1061)
2867
28682008-10-08 Chong Yidong <cyd@stupidchicken.com>
2869
2870 * fontset.c (fontset_find_font): Check frame validity.
2871
28722008-10-07 Chong Yidong <cyd@stupidchicken.com>
2873
a9b555d3 2874 * gtkutil.c (xg_display_open): Reset default display if none exists.
aac0c6e3
MR
2875 (xg_display_close): Allow Emacs to close all displays (bug#985).
2876
28772008-10-06 Andreas Schwab <schwab@suse.de>
2878
f5385255 2879 * sysdep.c (sys_signal): Always set SA_RESTART when noninteractively.
aac0c6e3
MR
2880
28812008-10-06 Chong Yidong <cyd@stupidchicken.com>
2882
f5385255 2883 * emacs.c (Vbefore_init_time, Vafter_init_time): Move from startup.el.
aac0c6e3 2884
a9b555d3 2885 * lisp.h (Vbefore_init_time, Vafter_init_time): Declare.
aac0c6e3
MR
2886
2887 * gtkutil.c (x_wm_set_size_hint): Return immediately if called
2888 during initialization.
2889
28902008-10-04 Eli Zaretskii <eliz@gnu.org>
2891
2892 * xdisp.c (redisplay_internal): If frame switched, redisplay the
2893 whole thing on MSDOS frames as well as on a TTY.
2894
2895 * dispnew.c (update_frame): Flush termscript for MSDOS frames as
2896 well as for TTY.
2897 (Fopen_termscript): Allow opening a termscript on MSDOS frames as
2898 well as on a TTY.
2899
2900 * sysdep.c (init_sys_modes): Set FRAME_GARBAGED_P for MSDOS frames
2901 as well as for TTY.
2902
2903 * systime.h (EMACS_TIME_CMP): Cast EMACS_SECS values to `long'.
2904
2905 * dispnew.c (change_frame_size_1): Set FrameRows and FrameCols for
2906 MSDOS frames as well.
2907
29082008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
2909
2910 * image.c (x_clear_image_1): Under NS, call ns_free_indexed_color with
2911 correct arguments.
b71ac3dd 2912 * menu.c (find_and_return_menu_selection): Add cast.
aac0c6e3
MR
2913
29142008-10-03 Glenn Morris <rgm@gnu.org>
2915
2916 * emacs.c (USAGE1): Add --daemon.
2917
29182008-10-02 Eli Zaretskii <eliz@gnu.org>
2919
2920 * process.c (procfs_system_process_attributes): Multiply `pcpu' by
2921 100, so it's in percents as advertised.
2922
29232008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
2924
2925 * nsterm.h (ns_cursor_types, ns_output.desired_cursor_color)
2926 (ns_output.current_cursor, ns_output.desired_cursor)
2927 (ns_output.last_inactive, FRAME_CURSOR, FRAME_NEW_CURSOR)
2928 (FRAME_NEW_CURSOR_COLOR): Remove.
2929
2930 * nsfns.m (ns_set_cursor_color): Use FRAME_CURSOR_COLOR.
a9b555d3 2931 (ns_lisp_to_cursor_type, ns_cursor_type_to_lisp): Use core Emacs
aac0c6e3
MR
2932 enumeration (HOLLOW_BOX_CURSOR, etc.).
2933
2934 * nsterm.m (ns_frame_rehighlight): Remove commented code.
2935 (draw_window_cursor): Simplify code.
f5385255
SM
2936 (EmacsView-windowDidBecomeKey:,-windowDidResignKey:):
2937 Don't change cursor type. In latter, call rehighlight instead of doing
aac0c6e3 2938 updates manually.
a9b555d3
JB
2939 (EmacsPrefsController-setPanelFromValues,-setValuesFromPanel):
2940 Use core Emacs cursor types.
aac0c6e3 2941
b8ff72fa 2942 * xdisp.c (draw_glyphs): Don't call notice_overwritten_cursor under NS.
aac0c6e3
MR
2943
29442008-10-02 Martin Rudalics <rudalics@gmx.at>
2945
2946 * process.c (Faccept_process_output): Fix doc-string.
2947
29482008-10-02 Dan Nicolaescu <dann@ics.uci.edu>
2949
2950 * gmalloc.c (__sbrk): Also define for uClibc.
2951
2952 * s/gnu-linux.h (GNU_LIBRARY_PENDING_OUTPUT_COUNT): Add definition
2953 for uClibc.
2954
29552008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
2956
2957 * nsfont.m (nsfont_spec_to_traits): Use UnXX masks only for non-normal
2958 styles.
2959 (nsfont_open): Reenable the cache.
2960
29612008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
2962
2963 * font.c (font_matching_entity): Reflect ATTRS in font selection.
2964 (font_find_for_lface) [HAVE_NS]: Don't ignore case.
2965
29662008-09-30 Stefan Monnier <monnier@iro.umontreal.ca>
2967
2968 * dispnew.c (Fsend_string_to_terminal): Don't try to send a string to
2969 a suspended terminal.
2970
29712008-09-30 Michael Albinus <michael.albinus@gmx.de>
2972
2973 * dbusbind.c (xd_signature): Use strcat instead of sprintf.
2974
29752008-09-30 Eli Zaretskii <eliz@gnu.org>
2976
2977 * Makefile.in (MSDOS_SUPPORT): Remove ccl.elc and codepage.elc.
2978
29792008-09-30 Chong Yidong <cyd@stupidchicken.com>
2980
2981 * xdisp.c (move_it_to): Don't advance the iterator if the last tab
2982 in a continued line coincides with a line beginning.
2983
29842008-09-29 Adrian Robert <Adrian.B.Robert@gmail.com>
2985
2986 * nsfont.m (nsfont_trait_distance): Fix bug.
2987 (nsfont_list): Return a list rather than a vector (syncs with Handa
2988 changes of 2008-05-14).
2989 (nsfont_open): Improve logging.
2990
29912008-09-29 Andreas Schwab <schwab@suse.de>
2992
2993 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
2994
29952008-09-28 Martin Rudalics <rudalics@gmx.at>
2996
2997 * character.c (Fchar_resolve_modifiers): Rewrite Elisp function
2998 name as char-resolve-modifiers.
2999 Reported by: Markus Triska <markus.triska@gmx.at>
3000
30012008-09-28 Dan Nicolaescu <dann@ics.uci.edu>
3002
3003 * dispnew.c (init_display): Return earlier when running as a daemon.
3004
30052008-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
3006
3007 * nsfont.m (nsfont_draw): Fix up composition rendering (cmp_from, ...).
3008
30092008-09-27 Eli Zaretskii <eliz@gnu.org>
3010
3011 * composite.c (Fcomposition_get_gstring)
3012 (Fcompose_region_internal, Fcompose_string_internal)
3013 (Ffind_composition_internal): Doc fix.
3014 (syms_of_composite) <compose-chars-after-function>: Doc fix.
3015 (syms_of_composite) <auto-composition-function>: Doc fix.
3016 (syms_of_composite) <composition-function-table>: Doc fix.
3017
30182008-09-25 Chong Yidong <cyd@stupidchicken.com>
3019
3020 * search.c (wordify): New argument for lax word-ends.
3021 (Fword_search_forward_lax, Fword_search_backward_lax): New funs.
3022
30232008-09-24 Dan Nicolaescu <dann@ics.uci.edu>
3024
3025 * lisp.h (is_daemon): Declare.
3026 * dispnew.c (init_display): Do not try to initialize the terminal
3027 when running as a daemon.
3028
30292008-09-22 Chong Yidong <cyd@stupidchicken.com>
3030
3031 * nsfns.m (compute_tip_xy): Use x_display_pixel_width and
3032 x_display_pixel_height.
3033
30342008-09-22 Martin Rudalics <rudalics@gmx.at>
3035
3036 * undo.c (record_point): Don't call Fundo_boundary for first
3037 change. (Bug#731)
3038
30392008-09-22 Juanma Barranquero <lekktu@gmail.com>
3040
3041 * emacs.c (Fdaemonp): Doc fix.
3042
30432008-09-22 Dan Nicolaescu <dann@ics.uci.edu>
3044
3045 * emacs.c (main): Place #ifdef in the proper place.
3046
30472008-09-21 Dan Nicolaescu <dann@ics.uci.edu>
3048
3049 * emacs.c (standard_args): Add --daemon.
3050 (main): Disconnect from the terminal when --daemon is passed.
3051 (is_daemon): New variable.
3052 (Fdaemonp): New function.
3053 (syms_of_emacs): Defsubr it.
3054
30552008-09-20 Chong Yidong <cyd@stupidchicken.com>
3056
3057 * xdisp.c (get_next_display_element): Handle string display
3058 correctly when checking for the end of a box run.
3059
30602008-09-20 Glenn Morris <rgm@gnu.org>
3061
3062 * fileio.c (Qdelete_by_moving_to_trash): New Lisp_Object.
3063 (syms_of_fileio): Add Qdelete_by_moving_to_trash.
3064 (Frename_file): Avoid copying to trash if a rename involves
3065 a delete. (Bug#964).
3066
30672008-09-20 Eli Zaretskii <eliz@gnu.org>
3068
3069 * keyboard.c (Fset_quit_char, Fset_input_meta_mode)
3070 (Fset_output_flow_control, Fcurrent_input_mode): Support MSDOS
3071 frames as well as termcap frames.
3072 (handle_interrupt): Remove "#ifndef MSDOS" around the call to
3073 get_named_tty.
3074
30752008-09-19 Eli Zaretskii <eliz@gnu.org>
3076
3077 * process.c (procfs_system_process_attributes): Fix cmdline in
3078 case /proc/PID/cmdline is empty.
3079
3080 * xterm.c (x_wm_set_size_hint): Use x_display_pixel_width and
3081 x_display_pixel_height.
3082
30832008-09-19 Juanma Barranquero <lekktu@gmail.com>
3084
3085 * frame.c (x_fullscreen_adjust): Declare var as Display_Info.
3086
3087 * w32fns.c (Fx_display_pixel_width, Fx_display_pixel_height)
3088 (compute_tip_xy): Use x_display_pixel_width, x_display_pixel_height.
3089
30902008-09-19 Dan Nicolaescu <dann@ics.uci.edu>
3091
3092 * dispextern.h (struct it): Move line_wrap away from the middle of
3093 bitfields. Move voffset in struct iterator_stack_entry after the
3094 bitfields. Move tab_width near after another short.
3095
30962008-09-18 Dan Nicolaescu <dann@ics.uci.edu>
3097
3098 * frame.h (struct frame): Move alpha from the middle of bitfields.
3099
3100 * window.h (struct window): Move frozen_window_start_p after the
3101 rest of the bitfields to reduce padding.
3102
31032008-09-18 Chong Yidong <cyd@stupidchicken.com>
3104
3105 * xterm.h (x_display_info): Remove `height' and `width' members.
3106
3107 * nsterm.h (ns_display_info): Remove `height' and `width' members.
3108
3109 * w32term.h (w32_display_info): Remove `height', `width',
3110 `height_in', and `width_in' members.
3111
b8ff72fa
SM
3112 * xterm.c (x_display_pixel_height, x_display_pixel_width):
3113 New functions.
aac0c6e3
MR
3114 (x_calc_absolute_position): Use them.
3115 (x_term_init): Omit removed `height' and `width' members.
3116
b8ff72fa
SM
3117 * w32term.c (x_display_pixel_height, x_display_pixel_width):
3118 New functions.
aac0c6e3
MR
3119 (w32_read_socket, x_calc_absolute_position): Use them.
3120 (w32_initialize_display_info, w32_term_init): Omit removed members
3121 of w32_display_info.
3122
b8ff72fa
SM
3123 * nsterm.m (x_display_pixel_height, x_display_pixel_width):
3124 New functions.
3125 (ns_initialize_display_info): Omit removed members of ns_display_info.
aac0c6e3 3126
b8ff72fa
SM
3127 * xterm.c (x_display_pixel_height, x_display_pixel_width):
3128 New functions.
aac0c6e3
MR
3129 (x_calc_absolute_position): Use them.
3130 (x_term_init): Omit removed `height' and `width' members.
3131
3132 * xfns.c (Fx_display_pixel_width, Fx_display_pixel_height)
b8ff72fa
SM
3133 (compute_tip_xy):
3134 * frame.c (x_fullscreen_adjust):
aac0c6e3
MR
3135 * xmenu.c (menu_position_func): Use x_display_pixel_height and
3136 x_display_pixel_width.
3137
31382008-09-18 Kenichi Handa <handa@m17n.org>
3139
3140 * composite.c (fill_gstring_header): Don't check FROM and TO here.
3141 (composition_compute_stop_pos): Fix handling of static composition.
3142 (Fcomposition_get_gstring): Check FROM and TO at first.
3143
31442008-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
3145
46e722a9 3146 * composite.c (Fcomposition_get_gstring): Yet another int/Lisp_Object
aac0c6e3
MR
3147 mixup (YAILOM).
3148
31492008-09-17 Chong Yidong <cyd@stupidchicken.com>
3150
3151 * indent.c (Fvertical_motion): Use position reported by iterator
3152 instead of PT for determining screen motion (bug#943).
3153
31542008-09-17 Romain Francoise <romain@orebokech.com>
3155
3156 * composite.c (composition_adjust_point): Fix int/EMACS_INT mixup.
3157
31582008-09-17 Kenichi Handa <handa@m17n.org>
3159
3160 * ftfont.c (ftfont_shape_by_flt): Downcase family name.
3161
3162 * composite.c (Fcomposition_get_gstring): Make bigger gstring_work
3163 if necessary.
3164
31652008-09-16 Kenichi Handa <handa@m17n.org>
3166
3167 * coding.c (make_conversion_work_buffer): Avoid calling
3168 Fget_buffer_create if it is not necessary.
3169
31702008-09-15 Martin Rudalics <rudalics@gmx.at>
3171
3172 * window.c (Fselect_window): Don't update window_select_count and
3173 use_time when norecord is not nil.
3174
31752008-09-14 Kenichi Handa <handa@m17n.org>
3176
3177 * fileio.c (Finsert_file_contents): Delete incorrect decrement of
3178 specpdl_ptr.
3179
31802008-09-12 Kenichi Handa <handa@m17n.org>
3181
3182 * indent.c (scan_for_column): Don't handle automatic composition
3183 if the current buffer is not associated with a window.
3184
3185 * composite.c (composition_reseat_it): If the current buffer is
3186 not associated with a window, ignore the automatic composition.
3187 (find_automatic_composition): Likewise.
3188
31892008-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
3190
3191 * term.c (close_gpm): New fun extracted from Fgpm_mouse_stop.
3192 (Fgpm_mouse_stop): Use it.
3193 * termhooks.h (close_gpm): Declare.
3194 * keyboard.c (tty_read_avail_input): Forcefully close the gpm
3195 connection if Gpm_GetEvent fails.
3196
3197 * window.c (set_window_buffer): Always preserve current-buffer.
3198
31992008-09-12 Glenn Morris <rgm@gnu.org>
3200
3201 * charset.c (init_charset): Warn if etc/charsets not found. (Bug#909)
3202
32032008-09-11 Glenn Morris <rgm@gnu.org>
3204
3205 * charset.c (charset-map-path): Doc fix.
3206
32072008-09-10 Kenichi Handa <handa@m17n.org>
3208
3209 * xdisp.c (handle_composition_prop): Set it->cmp_it.ch to -1.
3210
3211 * font.c (Ffont_shape_gstring): Make glyphs of non-nil adjustment
3212 compose a grapheme cluster with the preceding base glyph.
3213
3214 * composite.c (composition_compute_stop_pos): Fix previous change.
3215 Reset cmp_it->id to -1 at first.
3216
32172008-09-10 Glenn Morris <rgm@gnu.org>
3218
3219 * Makefile.in (character.o, chartab.o): Fix config.h typo.
3220
32212008-09-09 Chong Yidong <cyd@stupidchicken.com>
3222
3223 * keyboard.c (read_key_sequence): Reapply translation maps when
3224 switching keyboards.
3225
32262008-09-09 Kenichi Handa <handa@m17n.org>
3227
3228 * ftfont.c (ftfont_shape_by_flt): Use "combining" FLT for ASCII
3229 characters.
3230
3231 * composite.c (FORWARD_CHAR): Fix calculation
3232 of (POSITION).pos_byte.
3233 (composition_compute_stop_pos): Limit the search of composition to
3234 at most 500 characters ahead. If we reach the limit or find a
3235 newline, set cmp_it->ch to -2 and return 0.
3236 (composition_reseat_it): Handle the case that cmp_it->ch is -2.
3237
32382008-09-08 Kenichi Handa <handa@m17n.org>
3239
3240 * indent.c (Fvertical_motion): Be sure to set
3241 it_overshoot_expected if it.cmp_it.id is non-negative.
3242
32432008-09-07 Andreas Schwab <schwab@suse.de>
3244
3245 * callproc.c (Fcall_process): Don't hold references to string data
3246 across garbage collection. Move initialisation of new_argv down
3247 to avoid compiler bug.
3248
32492008-09-07 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
3250
3251 * process.c (Fsystem_process_attributes): Doc fix.
3252
32532008-09-07 Chong Yidong <cyd@stupidchicken.com>
3254
3255 * callproc.c (Fcall_process): Canonicalize current directory name.
3256
3257 * xdisp.c (move_it_to): When moving by vpos, ensure that the
3258 iterator advances to the next line if the current line ends in a
3259 continued tab.
3260
32612008-09-07 Teodor Zlatanov <tzz@lifelogs.com>
3262
3263 * nsfont.m (nsfont_draw): Fix the references to missing gidx data
3264 member to point to cmp_from.
3265
3266 * xdisp.c: Doc fix for references to gidx data member.
3267
32682008-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
3269
3270 * buffer.c (Fbuffer_swap_text): Reset window->point markers.
3271
32722008-09-07 Kenichi Handa <handa@m17n.org>
3273
3274 * composite.c (FORWARD_CHAR): Check STOP after
3275 incrementing (POSITION).pos.
3276
32772008-09-06 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
3278
3279 * process.c (Fsystem_process_attributes): Doc fix.
3280
32812008-09-06 Chong Yidong <cyd@stupidchicken.com>
3282
3283 * keyboard.c (Ftop_level): Doc fix.
3284
32852008-09-06 Eli Zaretskii <eliz@gnu.org>
3286
3287 * xmenu.c (xmenu_show) [!HAVE_X_WINDOWS]: If frame has a
3288 minibuffer, don't let lower part of menu invade the echo area.
3289
3290 * msdos.c (IT_menu_display): Use STRING_CHAR_ADVANCE instead of a
3291 "char *q" to access menu text and advance through it. Revert the
3292 change that displayed ">" instead of ASCII character 0x10.
3293
32942008-09-05 Eli Zaretskii <eliz@gnu.org>
3295
3296 * menu.c (single_menu_item) [!HAVE_BOXES]: Enable emulation of
3297 toggle boxes and radio buttons on MS-DOS as well.
3298
32992008-09-05 Kenichi Handa <handa@m17n.org>
3300
3301 * composite.c (autocmp_chars): Check lookback count.
3302 (composition_compute_stop_pos): Set cmp_it->lookback.
3303 (composition_reseat_it): Check lookback count.
3304 (struct position_record): New struct.
3305 (FORWARD_CHAR, BACKWARD_CHAR, CHAR_COMPOSABLE_P): New macros.
3306 (find_automatic_composition): New function.
3307 (composition_adjust_point): Use find_automatic_composition.
3308
3309 * dispextern.h (struct composition_it): New member lookback.
3310
33112008-09-02 Chong Yidong <cyd@stupidchicken.com>
3312
3313 * indent.c (Fvertical_motion): Don't call move_it_by_lines again
3314 if moving by a single line.
3315
33162008-09-02 Andreas Schwab <schwab@suse.de>
3317
3318 * xterm.c (x_delete_display): Fix merge error.
3319
3320 * fileio.c (Fexpand_file_name): Remove unused variables.
3321
33222008-09-02 Eli Zaretskii <eliz@gnu.org>
3323
3324 * fileio.c (Fexpand_file_name): Copy argument `name' into local
3325 storage on all platforms, not just on DOS_NT.
3326
33272008-09-02 Jason Rumney <jasonr@gnu.org>
3328
b8ff72fa
SM
3329 * w32menu.c (Fx_popup_menu, Fx_popup_dialog, w32_menu_show):
3330 Ensure mouse is not grabbed after menu is finished.
aac0c6e3
MR
3331
33322008-09-01 Chong Yidong <cyd@stupidchicken.com>
3333
3334 * xfaces.c (Finternal_set_alternative_font_family_alist)
3335 (Finternal_set_alternative_font_registry_alist): Properly copy
3336 entire alist structure.
3337
33382008-09-01 Kenichi Handa <handa@m17n.org>
3339
d66c0241 3340 * ftfont.c (ftfont_spec_pattern): Don't create a charset if the
aac0c6e3 3341 representative chars of the script is a vector.
d66c0241
JB
3342 (ftfont_list): Handle the case where the representative chars of
3343 the script is a vector.
aac0c6e3
MR
3344
3345 * character.c (syms_of_character): Docstring of
3346 script-representative-chars fixed.
3347
33482008-08-31 Eli Zaretskii <eliz@gnu.org>
3349
3350 * msdos.c (BUILD_CHAR_GLYPH): New macro.
3351 (IT_menu_display): Use it instead of SET_CHAR_GLYPH to construct
3352 the menu. Allocate larger buffer for `text', to account for
3353 possible ^C characters.
3354
33552008-08-31 Martin Rudalics <rudalics@gmx.at>
3356
3357 * xdisp.c (prepare_menu_bars): Don't call
3358 Vwindow_size_change_functions with arg Qt.
3359
33602008-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
3361
3362 * font.h (font_range):
3363 * fileio.c (report_file_error):
46e722a9
SM
3364 * composite.c (composition_update_it): Yet another int/Lisp_Object
3365 mixup (YAILOM).
aac0c6e3
MR
3366
33672008-08-30 Glenn Morris <rgm@gnu.org>
3368
3369 * data.c (Fmake_variable_frame_local): Doc fix.
3370
3371 * frame.c (Fmodify_frame_parameters): Doc fix.
3372
33732008-08-30 Eli Zaretskii <eliz@gnu.org>
3374
3375 * w32.c (init_user_info): Allocate buf[] with xmalloc using the size
3376 needed by GetTokenInformation.
3377 (w32_system_process_attributes): Check return values of all system
3378 APIs.
3379
3380 * msdos.c (IT_display_cursor): Write "CURSOR ON/OFF" to termscript
3381 only when the state changes.
3382 (IT_update_begin, IT_update_end): Add termscript trace.
3383
3384 * w16select.c (Fw16_set_clipboard_data): Don't encode text if
3385 clipboard is unavailable. Set dst to NULL if it doesn't point to
3386 malloc'ed data.
3387 (Fw16_get_clipboard_data): Initialize htext to NULL, to avoid
3388 passing random values to xfree.
3389
3390 * dispnew.c (init_display): Set `tty's association in frame's
b8ff72fa 3391 parameters alist to the name of the terminal device, if that is known.
aac0c6e3
MR
3392
33932008-08-29 Jason Rumney <jasonr@gnu.org>
3394
3395 * w32uniscribe.c (uniscribe_check_otf): Don't fallback on DFLT script.
3396
33972008-08-29 Eli Zaretskii <eliz@gnu.org>
3398
3399 * composite.c (fill_gstring_body): Avoid compiler warnings.
3400
3401 * font.c (font_fill_lglyph_metrics): Use EMACS_INT in
3402 LGLYPH_SET_CODE to avoid compiler warnings.
3403
2ae37cf0 3404 * makefile.w32-in ($(BLD)/w32uniscribe.$(O)): Depend on composite.h.
aac0c6e3
MR
3405
3406 * composite.h (LGLYPH_SET_CODE): Cast `val' to EMACS_INT.
3407
3408 * w32uniscribe.c (uniscribe_shape): Shut up compiler warning in
3409 LGLYPH_SET_CODE.
3410
34112008-08-29 Kenichi Handa <handa@m17n.org>
3412
3413 * fileio.c (report_file_error): Don't downcase the first character
3414 of errstring if it is still unibyte.
3415
34162008-08-29 Kenichi Handa <handa@m17n.org>
3417
3418 These changes are to re-implement the automatic composition so
3419 that it doesn't use text properties.
3420
3421 * Makefile.in (ftfont.o): Depend on composite.h.
3422 (composite.o): Depend dispextern.h, font.h, frame, and window.h.
3423
3424 * character.h (Vunicode_category_table): Extern it.
3425
3426 * character.c (Vunicode_category_table): New variable.
3427 (syms_of_character): DEFVAR_LISP Vunicode_category_table.
3428
3429 * chartab.c (optimize_sub_char_table): Perform more greedy
3430 optimization.
3431
b8ff72fa
SM
3432 * composite.h (enum composition_method):
3433 Delete COMPOSITION_WITH_GLYPH_STRING.
aac0c6e3
MR
3434 (COMPOSITION_METHOD): Don't check COMPOSITION_WITH_GLYPH_STRING.
3435 (Vcomposition_function_table): Extern it.
3436 (LGSTRING_XXX, LGLYPH_XXX): Macros moved from font.h.
3437 (composition_gstring_put_cache, composition_gstring_from_id)
3438 (composition_gstring_p, composition_gstring_width)
3439 (composition_compute_stop_pos, composition_reseat_it)
3440 (composition_update_it, composition_adjust_point): Extern them.
3441 (Fcomposition_get_gstring): EXFUN it.
3442
d66c0241 3443 * composite.c: Include window.h, frame.h, dispextern.h, font.h.
aac0c6e3
MR
3444 (Vcomposition_function_table)
3445 (get_composition_id): Don't handle COMPOSITION_WITH_GLYPH_STRING.
b8ff72fa
SM
3446 (gstring_hash_table, gstring_work, gstring_work_headers):
3447 New variables.
aac0c6e3
MR
3448 (gstring_lookup_cache, composition_gstring_put_cache)
3449 (composition_gstring_from_id, composition_gstring_p)
3450 (composition_gstring_width, fill_gstring_header)
3451 (fill_gstring_body, autocmp_chars, composition_compute_stop_pos)
3452 (composition_reseat_it, composition_update_it)
b8ff72fa 3453 (composition_adjust_point, Fcomposition_get_gstring): New functions.
aac0c6e3
MR
3454 (syms_of_composite): Initialize gstring_hash_table, gstrint_work,
3455 and gstring_work_headers. DEFVAR_LISP composition-function-table.
3456 Defsubr compostion_get_gstring.
3457
3458 * dispextern.h (struct glyph): New union u.cmp. Delete the member
3459 cmp_id.
3460 (struct glyph_string): Delete the member gidx. New members
3461 cmp_id, cmp_from, and cmp_to.
3462 (enum it_method): Delete GET_FROM_COMPOSITION.
3463 (struct composition_it): New struct.
3464 (struct it): New member cmp_it, and iterator_stack_entry.cmp_it.
3465 Delete c, len, cmp_id, cmp_len in u.comp.
3466
3467 * font.h (enum lgstring_indices): Delete it.
b8ff72fa 3468 (LGSTRING_XXX, LGLYPH_XXX): Move these macros to composite.h.
aac0c6e3 3469 (enum lglyph_indices): Likewise.
b8ff72fa 3470 (font_range): Adjust extern.
aac0c6e3
MR
3471 (font_fill_lglyph_metrics): Extern it.
3472
3473 * font.c (QCf): New variable.
3474 (check_gstring): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
3475 (font_prepare_composition): Delete this function.
3476 (font_range): Type and arguments changed.
3477 (Ffont_make_gstring, Ffont_fill_gstring): Delete them.
3478 (font_fill_lglyph_metrics): New function.
b8ff72fa 3479 (Ffont_shape_text): Rename to Ffont_shape_gstring and change arguments.
aac0c6e3 3480 (syms_of_font): DEFSYM QCf. Delete defsubr for
b8ff72fa
SM
3481 Sfont_make_gstring, Sfont_fill_gstring, Sfont_shape_text.
3482 Defsubr Sfont_shape_gstring.
aac0c6e3
MR
3483
3484 * fontset.h (font_for_char): Extern it.
3485
3486 * fontset.c (font_for_char): New function.
3487
3488 * ftfont.c: Include composite.h.
3489 (ftfont_resolve_generic_family): Add langset "en" to pattern.
b8ff72fa 3490 (ftfont_shape_by_flt): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
aac0c6e3
MR
3491
3492 * indent.c: Include composite.h and dispextern.h.
3493 (check_composition): Delete this function.
3494 (scan_for_column): Handle composition by
3495 composition_compute_stop_pos, composition_reseat_it, and
3496 composition_update_it.
3497 (compute_motion): Likewise.
3498 (Fvertical_motion): Fix checking of composition.
3499
3500 * keyboard.c (adjust_point_for_property): Check composition by
3501 composition_adjust_point.
3502
b8ff72fa 3503 * nsterm.m (ns_draw_glyph_string): Adjust for the change of
aac0c6e3
MR
3504 struct glyph_string.
3505
b8ff72fa
SM
3506 * term.c (encode_terminal_code): Adjust for the change of struct glyph.
3507 (append_composite_glyph): Adjust for the change of struct it and
aac0c6e3
MR
3508 struct glyph.
3509 (produce_composite_glyph): Likewise.
3510
b8ff72fa
SM
3511 * w32term.c (x_draw_composite_glyph_string_foreground):
3512 Adjust for the change of struct glyph_string.
aac0c6e3
MR
3513 (x_draw_glyph_string): Likewise.
3514
3515 * w32uniscribe.c (struct uniscribe_font_info): Include composite.h.
3516 (uniscribe_shape): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
3517
3518 * xdisp.c: Include font.h.
3519 (it_props): Delete the entry for Qauto_composed.
3520 (init_iterator): Initialize it->cmp_it.id to -1.
3521 (compute_stop_pos): Call composition_compute_stop_pos.
b8ff72fa 3522 (face_before_or_after_it_pos): Adjust for the change of struct it.
aac0c6e3
MR
3523 (handle_auto_composed_prop): Delete it.
3524 (handle_composition_prop): Handle only static composition.
3525 (next_overlay_string): Remove it->method == GET_FROM_COMPOSITION
3526 from xassert. Initialize it->cmp_it.stop_pos.
b8ff72fa 3527 (push_it): Adjust for the change of struct it.
aac0c6e3
MR
3528 (pop_it): Likewise.
3529 (get_next_element): Delete next_element_from_composition.
3530 (CHAR_COMPOSED_P): New macro.
3531 (get_next_display_element): For automatic composition, get a face
3532 from the font in the glyph-string.
3533 (set_iterator_to_next): For GET_FROM_BUFFER and GET_FROM_STRING,
b8ff72fa 3534 check composition by it->cmp_it.id. Delete GET_FROM_COMPOSITION case.
aac0c6e3
MR
3535 (next_element_from_string): Check if the character at the current
3536 position is composed by CHAR_COMPOSED_P.
3537 (next_element_from_buffer): Likewise.
d66c0241
JB
3538 (next_element_from_composition): Adjust for the change of struct it.
3539 Update it->cmp_it.
b8ff72fa
SM
3540 (dump_glyph): Adjust for the change of struct glyph.
3541 (fill_composite_glyph_string): Adjust for the change of struct
aac0c6e3
MR
3542 it and struct glyph. Don't handle automatic composition here.
3543 (fill_gstring_glyph_string): New function.
3544 (x_get_glyph_overhangs): Handle automatic composition.
b8ff72fa 3545 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the change of struct glyph.
aac0c6e3
MR
3546 (BUILD_GSTRING_GLYPH_STRING): New macro.
3547 (BUILD_GLYPH_STRINGS): Call BUILD_GSTRING_GLYPH_STRING for
3548 automatic composition.
b8ff72fa 3549 (append_composite_glyph): Adjust for the change of struct it and
aac0c6e3 3550 struct glyph.
b8ff72fa 3551 (x_produce_glyphs): Adjust for the change of struct it.
aac0c6e3 3552
b8ff72fa 3553 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
aac0c6e3
MR
3554 the change of struct glyph_string.
3555 (x_draw_glyph_string): Likewise.
3556
35572008-08-29 Glenn Morris <rgm@gnu.org>
3558
3559 * buffer.c (word-wrap): Doc fix.
3560 * xdisp.c (truncate-partial-width-windows): Doc fix.
3561 Increase default to 50.
3562
35632008-08-29 Chong Yidong <cyd@stupidchicken.com>
3564
3565 * xdisp.c (update_tool_bar_unwind): New function.
3566 (update_tool_bar): Temporarily set selected frame before building
3567 tool-bar items.
3568
35692008-08-28 Michael Albinus <michael.albinus@gmx.de>
3570
3571 * dbusbind.c (XD_ERROR, XD_DEBUG_MESSAGE): Use strncpy and
3572 snprintf, respectively.
3573 (xd_append_arg): Convert strings with Fstring_make_unibyte.
3574
35752008-08-28 Chong Yidong <cyd@stupidchicken.com>
3576
3577 * Makefile.in: Revert (undocumented) 2008-08-20 change adding
3578 LDFLAGS to GNUstep CC invocation.
3579
35802008-08-27 Chong Yidong <cyd@stupidchicken.com>
3581
3582 * indent.c (Fvertical_motion): Revert last change. Handle the
3583 general case where we are moving forward, and PT spans multiple
3584 screen lines.
3585
3586 * eval.c (find_handler_clause): Temporarily increase
3587 max-lisp-eval-depth while printing the backtrace buffer, to
3588 guarantee that help-mode code can run.
3589
35902008-08-27 Eli Zaretskii <eliz@gnu.org>
3591
3592 * msdos.c (Fmsdos_remember_default_colors): Don't reverse frame
3593 colors under -rv.
3594 (IT_set_frame_parameters): Don't swap foreground and background
3595 colors if `(reverse . t)' is present in the frame properties.
3596 (internal_terminal_init): Call init_frame_faces only for the
3597 initial frame.
3598
35992008-08-27 Andreas Schwab <schwab@suse.de>
3600
3601 * dired.c (Ffile_attributes): Avoid compiler warning in bitshift.
3602
36032008-08-27 Andreas Schwab <schwab@suse.de>
3604
3605 * search.c (search_buffer): Set char_base to zero only at the end.
3606
36072008-08-27 Kenichi Handa <handa@m17n.org>
3608
b8ff72fa 3609 * fileio.c (report_file_error): Fix handling of multibyte error string.
aac0c6e3
MR
3610
36112008-08-27 Andreas Seltenreich <seltenreich@gmx.de>
3612
3613 * xterm.c (x_term_init): Temporarily hide the partially
3614 initialized terminal while calling vendor-specific-keysyms.
3615
36162008-08-26 Eli Zaretskii <eliz@gnu.org>
3617
3618 * msdos.c (internal_terminal_init): Most initializations done only
3619 once, especially initial_screen_colors[] and termscript open.
3620
36212008-08-26 Chong Yidong <cyd@stupidchicken.com>
3622
3623 * eval.c (Fcondition_case): Doc fix.
3624
3625 * widgetprv.h (EmacsFramePart): Change font member to the new font
3626 struct.
3627
3628 * widget.c: Include character.h and font.h for XSETFONT.
3629 (setup_frame_gcs): Compute X font id from font struct, just once.
3630
36312008-08-26 Eli Zaretskii <eliz@gnu.org>
3632
3633 * term.c (get_named_tty): Fix last change.
3634
36352008-08-26 Chong Yidong <cyd@stupidchicken.com>
3636
3637 * indent.c (Fvertical_motion): If moving forward starting from a
b8ff72fa 3638 multi-line string, move the iterator to the last line of that string.
aac0c6e3
MR
3639
36402008-08-25 Eli Zaretskii <eliz@gnu.org>
3641
3642 * frame.c (do_switch_frame): Mark previously displayed frame as
3643 obscured for FRAME_MSDOS_P frames as well.
3644
36452008-08-24 Eli Zaretskii <eliz@gnu.org>
3646
3647 * frame.c (make_terminal_frame): Initialize f->terminal,
3648 f->terminal->reference_count, and scroll bars on MS-DOS as well.
3649 Set the top frame to newly created frame.
3650 (Fmake_terminal_frame): Reuse the_only_display_info.
3651
3652 * vm-limit.c (get_lim_data) [MSDOS]: Use alternative methods of
3653 estimating available memory.
3654
b97439ce 36552008-08-23 David Reitter <david.reitter@gmail.com>
aac0c6e3
MR
3656
3657 * nsterm.m (ns_draw_window_cursor): Don't call
3658 NSDisableScreenUpdates and NSEnableScreenUpdates on
3659 non-NS_IMPL_COCOA systems.
3660
36612008-08-23 Andreas Schwab <schwab@suse.de>
3662
3663 * process.c (procfs_system_process_attributes): Fix use of
3664 uninitialized variables.
3665
36662008-08-23 Eli Zaretskii <eliz@gnu.org>
3667
3668 * emacs.c (main) [MSDOS]: Call syms_of_xmenu.
3669
3670 * dispnew.c (init_display): Remove MS-DOS specific conditions for
3671 calling tty-set-up-initial-frame-faces.
3672
b8ff72fa
SM
3673 * xmenu.c (Fx_popup_dialog, Fx_popup_menu, xmenu_show):
3674 Allow MSDOS frames along with X frames.
aac0c6e3
MR
3675
3676 * termhooks.h (TERMINAL_ACTIVE_P): Handle output_msdos_raw in
3677 addition to output_termcap.
3678
3679 * xdisp.c (redisplay_internal) [MSDOS]: Don't call set_tty_color_mode.
3680
3681 * termchar.h (FRAME_TTY): Support output_msdos_raw.
3682 (struct tty_display_info) [MSDOS]: Add fields related to mouse
3683 highlight.
3684
3685 * process.c [!subprocesses]: Define QCname.
3686 (syms_of_process): Intern and staticpro it.
3687
3688 * w16select.c (Fw16_set_clipboard_data, Fw16_get_clipboard_data):
b8ff72fa
SM
3689 Adjust for changes in encoding/decoding routines.
3690 Use encode_coding_object and decode_coding_object instead of
aac0c6e3
MR
3691 encode_coding and decode_coding.
3692
b8ff72fa 3693 * sysdep.c (init_sys_modes): Call dos_ttraw with tty_out as argument.
aac0c6e3
MR
3694
3695 * dosfns.c: Include frame.h before termhooks.h.
3696 (dos_cleanup): Use CURTTY ()->termscript instead of a global
3697 variable termscript.
3698
3699 * s/msdos.h (USER_FULL_NAME): Define.
3700 (SYSTEM_PURESIZE_EXTRA): Bump up to 100K.
3701
3702 * editfns.c (USER_FULL_NAME): Define to pw->pw_gecos if undefined.
3703 (Fuser_full_name): Use USER_FULL_NAME instead of a literal
3704 pw->pw_gecos.
3705
3706 * keyboard.c (handle_interrupt) [MSDOS]: Call cursor_to with
3707 SELECTED_FRAME as additional (1st) argument.
3708 (tty_read_avail_input): Handle output_msdos_raw in
3709 addition to output_termcap.
3710
3711 * msdos.c: Include frame.h before termhooks.h.
3712 (mouse_on, mouse_off, mouse_moveto, mouse_init)
3713 (msdos_set_cursor_shape, IT_set_face, IT_write_glyphs)
3714 (show_mouse_face, IT_clear_end_of_line, IT_clear_screen)
3715 (IT_clear_to_end, IT_cursor_to, IT_display_cursor, IT_cmgoto)
3716 (IT_set_terminal_modes, IT_reset_terminal_modes)
3717 (IT_set_frame_parameters): Use tty->termscript instead of a global
3718 variable termscript.
3719 (IT_write_glyphs): Use tty->terminal->terminal_coding instead of a
3720 global variable terminal_coding. Don't refer to
3721 Vnonascii_translation_table.
3722 (internal_terminal_init): Set Vwindow_system in current_kboard.
3723 Don't use TTY_CHAR_INS_DEL_OK. Set Vinitial_window_system.
3724 Announce date and time of session start, if termscript is open.
3725 Don't zero out the_only_display_info (it is done in
b8ff72fa
SM
3726 term.c:init_tty). Open termscript only of not already open.
3727 Log "SCREEN SAVED" here, instead of IT_set_terminal_modes. Init mouse
aac0c6e3
MR
3728 here instead of dos_ttraw. Don't initialize display if this is an
3729 initial tty. Don't set FRAME_FONT.
3730 (Vwindow_system_version): Bump to 23.
3731 (dos_ttraw): Accept a TTY argument; all callers fixed. If mouse
3732 is available, set up mouse_position_hook.
3733 (dos_ttraw, IT_set_terminal_modes): If called with initial
3734 terminal, do nothing.
3735 (IT_set_frame_parameters): Handle the Qtty_type frame
3736 parameter by calling internal_terminal_init.
3737 (dos_set_window_size, show_mouse_face)
3738 (clear_mouse_face, IT_note_mode_line_highlight)
3739 (IT_note_mouse_highlight, IT_update_begin, IT_frame_up_to_date)
3740 (dos_rawgetc): Use tty_display_info instead of x_display_info.
3741 (initialize_msdos_display): New function.
3742 (IT_cursor_to, IT_clear_to_end, IT_clear_screen)
3743 (IT_clear_end_of_line, IT_insert_glyphs, IT_write_glyphs)
3744 (IT_delete_glyphs, IT_ring_bell, IT_reset_terminal_modes)
3745 (IT_set_terminal_modes, IT_set_terminal_window, IT_update_begin):
b8ff72fa 3746 Accept additional argument: a pointer to a frame. Update all callers.
aac0c6e3
MR
3747 (request_sigio, unrequest_sigio): Don't define, now defined on
3748 sysdep.c.
3749 (IT_write_glyphs): Rewrite to use encode_terminal_code.
3750
3751 * term.c [MSDOS]: Include msdos.h.
3752 (init_tty) [MSDOS]: Reuse most of WINDOWSNT branch. Change cpp
3753 conditional to DOS_NT. Allow only one call to this function in a
3754 session. Don't allocate a new struct tty_display_info; instead,
3755 reuse the_only_display_info. Call get_tty_size to get screen
3756 dimensions. Call init_baud_rate to set bad_rate.
3757 (dissociate_if_controlling_tty) [MSDOS]: Ifdef away function body.
3758 (Fsuspend_tty) [MSDOS]: Don't close input and output.
b8ff72fa 3759 (Fresume_tty) [MSDOS]: Don't reopen the TTY; instead, use stdin/stdout.
aac0c6e3
MR
3760 (get_tty_terminal, get_named_tty, Ftty_type)
3761 (Fcontrolling_tty_p): Handle output_msdos_raw in addition to
3762 output_termcap.
b8ff72fa
SM
3763 (Fresume_tty, Fsuspend_tty, init_tty, delete_tty):
3764 Call add_keyboard_wait_descriptor and delete_keyboard_wait_descriptor
2ae37cf0 3765 only when subprocesses are supported.
aac0c6e3
MR
3766
3767 * frame.c (make_terminal_frame) [MSDOS]: Adjust initialization of
3768 f->output_data.x.
3769 (Fmake_terminal_frame) [MSDOS]: Don't allow creation of new
3770 terminal devices.
3771
5582fbc7 3772 * msdos.h: Remove definition of struct x_display_info and struct
aac0c6e3
MR
3773 x_output.
3774 (FRAME_FONT): Use output_data.tty.
3775 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL): Don't define.
b8ff72fa
SM
3776 (struct x_display_info): Rename from display_info. Update all users in
3777 msdos.c.
aac0c6e3 3778 (struct x_output): Remove background_pixel and foreground_pixel.
b8ff72fa 3779 (the_only_display_info): Rename from the_only_x_display.
aac0c6e3
MR
3780 (dos_ttraw): Update prototype.
3781
3782 * Makefile.in (MSDOS_OBJ): Add xmenu.o.
3783 (SOME_MACHINE_LISP): Add ../lisp/term/pc-win.elc.
3784
37852008-08-23 Jason Rumney <jasonr@gnu.org>
3786
3787 * image.c (enum tiff_keyword_index, tiff_format): Add :index keyword.
3788 (fn_TIFFSetDirectory): New library function used.
3789 (init_tiff_functions) [HAVE_NTGUI]: Initialize it.
3790 (tiff_load): Use :index to select among multiple images. Set count
3791 property when multiple images exist.
3792 (gif_format): Use :index, not :image.
3793
37942008-08-23 Chong Yidong <cyd@stupidchicken.com>
3795
3796 * xdisp.c (try_scrolling): Check INT_MAX instead of
3797 MOST_POSITIVE_FIXNUM for maximum integer value. Include limits.h
3798 to obtain INT_MAX.
3799
38002008-08-21 İsmail Dönmez <ismail@namtrac.org> (tiny change)
3801
3802 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase on GTK+.
3803
38042008-08-21 Christian Faulhammer <opfer@gentoo.org> (tiny change)
3805
3806 * Makefile.in (temacs${EXEEXT}): On GNUstep, link to appropriate
3807 GNUstep library location.
3808
38092008-08-21 Chong Yidong <cyd@stupidchicken.com>
3810
3811 * xfaces.c (x_update_menu_appearance): Check validity of menu font
3812 before using it.
3813
3814 * puresize.h (BASE_PURESIZE): Increase to 1250000.
3815
38162008-08-20 Adrian Robert <Adrian.B.Robert@gmail.com>
3817
3818 * nsfns.m (ns-read-file-name): Add casts to avoid warning.
3819 (ns-convert-utf8-nfd-to-nfc): Warn if cannot execute correctly.
3820 * nsfont.m (nsfont_draw): Compare indexed colors to 0, not nil.
3821 * nsterm.h (EmacsView-unlockFocusNeedsFlush:): Add declaration.
3822 (EmacsApp-cursor_blink_handler): Remove declaration.
3823 * nsterm.m (ns_draw_glyph_string): Update first conditional body to
3824 match 01 Feb 2008 changes in xterm.c.
3825 (ns_read_socket): Add cast to avoid warning.
3826 (EmacsApp-application:openFiles:): Don't call replyToOpenOrPrint: on
3827 GNUstep.
3828
38292008-08-20 Chong Yidong <cyd@stupidchicken.com>
3830
3831 * xselect.c (x_get_foreign_selection): Return nil if desired
3832 selection could not be obtained, instead of signalling an error.
3833
38342008-08-20 David Reitter <david.reitter@gmail.com>
3835
3836 * nsfns.m (ns_lisp_to_cursor_type): Replace with generic xfns.c.
3837 * nsterm.m: Remove ns-specific code for cursor blinking.
3838 (ns_draw_window_cursor): Clear cursor properly rather than
3839 redrawing the area. Respect width of bar cursors.
3840 These changes enable the use of generic blink-cursor-mode and
3841 generic cursor types in NS and support smooth cursor movements (do
3842 not blink off after command).
3843 * xdisp.c (get_phys_cursor_geometry): Redraw wider rectangle on
3844 Nextstep, too.
3845
38462008-08-19 Kenichi Handa <handa@m17n.org>
3847
3848 * font.c (Vfont_log_deferred): New variable.
3849 (font_add_log): Check Vfont_log_deferred.
3850 (font_deferred_log): New function.
3851
3852 * font.h (font_deferred_log): Extern it.
3853
3854 * fontset.c (reorder_font_vector): Use encoding charset of fonts
3855 for sorting.
3856 (face_for_char): Use deferred log.
3857
38582008-08-18 Kenichi Handa <handa@m17n.org>
3859
3860 * fontset.c (face_for_char): Add font log.
3861
3862 * font.c (font_add_log): Add the font properties :script, :lang,
3863 and :otf in the log.
3864
38652008-08-17 Chong Yidong <cyd@stupidchicken.com>
3866
3867 * xdisp.c: Remove dead code.
3868 (handle_invisible_prop, next_overlay_string): Defer call to
3869 setup_for_ellipsis.
3870 (handle_stop, set_iterator_to_next): Call setup_for_ellipsis.
3871
38722008-08-15 Chong Yidong <cyd@stupidchicken.com>
3873
3874 * xfaces.c (lookup_derived_face): Properly handle possible zero
3875 return value of get_lface_attributes.
3876 (merge_faces): Don't tell lookup_derived_face to signal an error
3877 if face is not found.
3878
3879 * dired.c (Fdirectory_files): Doc fix.
3880
3881 * process.c (make_process): Initialize kill_without_query struct
3882 member.
3883
38842008-08-15 Eli Zaretskii <eliz@gnu.org>
3885
3886 * w32.c (w32_system_process_attributes) [_MSC_VER < 1300]:
3887 Alternative calculation of totphys for Visual Studio 6.
3888
3889 * w32fns.c [_MSC_VER && _MSC_VER < 1300]: Declare HMONITOR.
3890
3891 * w32.c (_MEMORY_STATUS_EX, MEMORY_STATUS_EX, LPMEMORY_STATUS_EX):
3892 Rename from _MEMORYSTATUSEX, MEMORYSTATUSEX, LPMEMORYSTATUSEX.
3893 All users changed.
3894 (stat): Only root directory passed to GetDriveType. Allow RAM
3895 disk as well as local fixed disk when w32-get-true-file-attributes
3896 is set to `local'.
3897 (CopySid_Proc, EqualSid_Proc, GetLengthSid_Proc): New typedefs.
3898 (equal_sid, get_length_sid, copy_sid): New wrapper functions.
3899 (w32_cached_id, w32_add_to_cache): New functions.
3900 (get_name_and_id): Look account names in the cache before calling
3901 lookup_account_sid.
3902 (g_b_init_get_length_sid, g_b_init_equal_sid, g_b_init_copy_sid):
3903 New initialization flags.
3904 (globals_of_w32): Initialize them to zero.
3905 (w32_system_process_attributes): Use w32_cached_id and
3906 w32_add_to_cache.
3907
39082008-08-14 Lawrence Mitchell <wence@gmx.li>
3909
3910 * lread.c (Fread_char, Fread_char_exclusive): If no character
3911 event is read before timeout is reached, return nil, rather than
3912 converting to a number.
3913
39142008-08-14 Chong Yidong <cyd@stupidchicken.com>
3915
3916 * fns.c (use_dialog_box): Doc fix.
3917
3918 * s/darwin.h: Undefine HAVE_RES_INIT, which appears to be harmful
3919 on OS X.
3920
39212008-08-13 Chong Yidong <cyd@stupidchicken.com>
3922
3923 * frame.c (Qns_parse_geometry): New var.
3924 (Fx_parse_geometry): For HAVE_NS, call ns-parse-geometry.
3925
39262008-08-11 Chong Yidong <cyd@stupidchicken.com>
3927
3928 * xdisp.c (x_produce_glyphs): Handle the case when font has no
3929 space character in calculating tabs.
3930
39312008-08-11 Dan Nicolaescu <dann@ics.uci.edu>
3932
3933 * Makefile.in (bootstrap-emacs): Use ln -f in the CANNOT_DUMP case.
3934
39352008-08-10 Glenn Morris <rgm@gnu.org>
3936
3937 * process.c (procfs_system_process_attributes): Use EMACS_INTs to
3938 silence gcc "limited range of data type" warnings in some
3939 make_fixnum_or_float calls.
3940
39412008-08-09 Eli Zaretskii <eliz@gnu.org>
3942
3943 * w32.c (w32_system_process_attributes): If the process does not
3944 exist, return nil.
3945
3946 * w32.c: Include thelp32.h, psapi.h and coding.h.
3947 (_MEMORYSTATUSEX, _PROCESS_MEMORY_COUNTERS_EX): New struct
3948 declarations.
3949 (CreateToolhelp32Snapshot_Proc, Process32First_Proc)
3950 (Process32Next_Proc): New typedefs.
3951 (g_b_init_create_toolhelp32_snapshot, g_b_init_process32_first)
3952 (g_b_init_process32_next, g_b_init_open_thread_token)
3953 (g_b_init_impersonate_self, g_b_init_revert_to_self)
3954 (g_b_init_get_process_memory_info, g_b_init_global_memory_status)
3955 (g_b_init_get_process_working_set_size)
3956 (g_b_init_global_memory_status_ex): New static variables.
3957 (globals_of_w32): Initialize them.
3958 (create_toolhelp32_snapshot, process32_first, process32_next)
3959 (open_thread_token, impersonate_self, revert_to_self)
3960 (get_process_memory_info, get_process_working_set_size)
3961 (global_memory_status, global_memory_status_ex): New wrapper
3962 functions.
3963 (w32_list_system_processes, w32_system_process_attributes)
3964 (enable_privilege, restore_privilege, ltime, process_times):
3965 New functions.
3966 (convert_time_raw): New function.
3967 (convert_time): Remove conversion of FILETIME into time in 100
3968 nsec units, call convert_time_raw instead.
3969
3970 * process.h (w32_list_system_processes, w32_system_process_attributes):
3971 Add prototypes.
3972 (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess, Qttname)
3973 (Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime, Qcutime)
3974 (Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs, Quser, Qgroup)
3975 (Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime): Add extern declarations.
3976
3977 * process.c (Fsystem_process_attributes): Doc fix.
3978
39792008-08-08 Chong Yidong <cyd@stupidchicken.com>
3980
3981 * xdisp.c (move_it_to): When stopping at a charpos, check if that's
3982 a continued multi-char glyph; if so, advance to the actual glyph.
3983
39842008-08-07 Dan Nicolaescu <dann@ics.uci.edu>
3985
3986 * s/darwin.h (OTHER_FILES): Do not define here, defined in config.in.
3987
3988 * Makefile.in (ALL_OBJC_CFLAGS): New variable.
3989 (.m.o): Use it.
3990 * config.in: Regenerate.
3991
39922008-08-07 Chong Yidong <cyd@stupidchicken.com>
3993
3994 * xdisp.c (redisplay_window): Revert last change.
3995 (try_window): Check bottom scroll margin too.
3996
39972008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
3998
3999 * config.in: Regenerate.
4000
4001 * Makefile.in (emacs): Remove ifndef NS conditional for 'emacs
4002 -list-load-path-shadows'.
4003 (nsgui.h): Reduce number of things depending on it.
4004
40052008-08-06 Chong Yidong <cyd@stupidchicken.com>
4006
4007 * xdisp.c (try_scrolling): Use iterator to find the scroll margin,
4008 instead of window-end which does the wrong thing at eob.
4009 (try_cursor_movement): Minor optimization.
4010 (redisplay_window): If scroll margin is defined, don't assume
4011 window doesn't need scrolling.
4012
40132008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
4014
4015 * config.in: Regenerate.
4016
4017 * Makefile.in: Move nsXXX.m dependencies into big alphabetical list.
4018 (mostlyclean): Don't delete *.d under NS.
4019
4020 * nsterm.h (NS_HAVE_INTEGER): Change to NS_HAVE_NSINTEGER.
4021
40222008-08-06 Kenichi Handa <handa@m17n.org>
4023
4024 * xfont.c (xfont_list_family): Return a list of symbols, not strings.
4025
40262008-08-06 Andreas Schwab <schwab@suse.de>
4027
4028 * config.in: Regenerate.
4029
40302008-08-05 Chong Yidong <cyd@stupidchicken.com>
4031
4032 * xdisp.c (redisplay_window): Don't enforce scroll-margin when
4033 forcing a window start.
4034
4035 * fileio.c (Vauto_save_list_file_name): Move here from file.el.
4036 (auto_save_1): Update modtime when auto-save-list-file-name is on.
4037
40382008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
4039
4040 * emacs.c (main): Under NS, set working dir to HOME when get a "psn"
4041 argument.
4042
40432008-08-05 Juanma Barranquero <lekktu@gmail.com>
4044
4045 * buffer.c (syms_of_buffer) <scroll-up-aggressively>:
4046 <scroll-down-aggressively, before-change-functions>:
4047 <after-change-functions>: Reflow docstrings.
4048
40492008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
4050 Ken Raeburn <raeburn@gnu.org>
4051
4052 Dock menu customization, based on a patch by Ken Raeburn, plus some
4053 other fixes.
4054 * nsmenu.m (dockMenu): New variable.
4055 (EmacsDialog -clicked:): Fix mistake in change of 2008-07-17.
4056
4057 * nsterm.h (dockMenu): Declare.
4058
4059 * nsterm.m (KEY_NS_NEW_FRAME): New definition.
4060 (ns_term_init): Initialize dockMenu.
4061 (EmacsApp -newFrame:, -applicationDockMenu:): New methods.
4062 (EmacsView -windowShouldClose:): Don't behave specially if <= 1 frame
4063 left.
4064
4065 * lisp.h (LSB_TAG): Use on DARWIN_OS, not NS_IMPL_COCOA.
4066
40672008-08-04 Chong Yidong <cyd@stupidchicken.com>
4068
4069 * nsterm.h: Test directly for NS_HAVE_INTEGER before defining it.
4070
4071 * config.in: Regenerate.
4072
40732008-08-04 Seiji Zenitani <zenitani@mac.com>
4074
4075 * nsfns.m (x-create-frame): Set the frame parameter alpha to nil.
4076
40772008-08-04 Chong Yidong <cyd@stupidchicken.com>
4078
4079 * nsterm.h (find_and_call_menu_selection): Fix prototype.
4080
40812008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
4082
4083 * emacs.c (main: unexec_init_emacs_zone): Call if on DARWIN_OS.
4084
4085 * keyboard.h: Comment an #endif.
4086
4087 * lisp.h (have_menus_p): Adjust comment.
4088
4089 * menu.c (find_and_return_menu_selection): Fix comparison with
4090 client_data.
4091
4092 * nsmenu.m (popup_activated_flag): New variable.
4093 (popup_activated): New function.
4094 (menu-or-popup-active-p): New exported lisp definition.
4095 (ns_popup_menu): Set popup_activated_flag. Call discard_menu_items()
4096 when popup done.
4097 (ns_popup_dialog): Set popup_activated_flag.
4098
4099 * nsterm.m (EmacsView -conversationIdentifier): Use NSInteger
4100 version for GNUstep (handled by conditional typedef in nsterm.m).
4101 (ns_get_color): Remove special-casing for "darkblue", "dark blue" (now
4102 in rgb.txt).
4103
4104 * process.c (init_process): Use DARWIN_OS, not DARWIN.
4105
4106 * sysselect.h: Conditionalize init_process undef on DARWIN_OS.
4107
4108 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): Do it also under NS.
4109
4110 * xdisp.c (redisplay_internal, note_mouse_highlight): Under NS,
4111 shortcircuit if popup_activated like GTK and X toolkit.
4112
4113 * m/inter386.h: Change DARWIN to DARWIN_OS.
4114
4115 * s/darwin.h: Add #define DARWIN_OS. Get rid of C_SWITCH_SYSTEM def.
4116 Change LIBS_MACGUI to LIBS_NSGUI. Move temacs-conditionalized defs
4117 closer to C_SWITCH_SYSTEM_TEMACS so usage is understood. Expand
4118 comment on NO_SOCK_SIGIO.
4119
41202008-08-03 Chong Yidong <cyd@stupidchicken.com>
4121
4122 * nsterm.m (windowDidResize): Remove stopModal call.
4123
41242008-08-03 Andreas Schwab <schwab@suse.de>
4125
4126 * vm-limit.c (get_lim_data) [HAVE_GETRLIMIT && RLIMIT_AS]: Define.
4127 (check_memory_limits): Don't handle HAVE_GETRLIMIT here.
4128
41292008-08-02 Chong Yidong <cyd@stupidchicken.com>
4130
4131 * vm-limit.c (check_memory_limits): Don't use getrlimit on cygwin.
4132 Don't use uninitialized pointer variable when using getrlimit.
4133
41342008-08-02 Jason Rumney <jasonr@gnu.org>
4135
4136 * w32font.c (compute_metrics): Don't mess with glyph_idx setting here.
4137
41382008-08-02 Eli Zaretskii <eliz@gnu.org>
4139
4140 * alloc.c (NSTATICS): Bump to 0x640.
4141
4142 * s/gnu-linux.h (HAVE_PROCFS, LISTPROC, PROCATTR): New defines.
4143
4144 * lisp.h: Add prototype for directory_files_internal.
4145
4146 * process.c (Fsystem_processes_list, Fsystem_process_attributes):
4147 New functions.
4148 (syms_of_process): Defsubr them. Add initializations for various
4149 Q* symbols used in procfs_system_process_attributes.
4150 (procfs_list_system_processes, procfs_system_process_attributes)
4151 [HAVE_PROCFS]: New functions.
4152 (time_from_jiffies, ltime_from_jiffies, get_up_time, procfs_ttyname)
4153 (procfs_get_total_memory): New functions.
4154
41552008-08-01 Juanma Barranquero <lekktu@gmail.com>
4156
4157 * xfaces.c (Fx_load_color_file): Fix previous change;
4158 it is #ifdef WINDOWSNT, not WINDOWS_NT.
4159
41602008-08-01 Michael Albinus <michael.albinus@gmx.de>
4161
4162 * dbusbind.c (xd_read_message): Handle D-Bus error messages.
4163
41642008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
4165
4166 * nsterm.h (NSInteger, NSUInteger): Add defines for non-Leopard.
4167
41682008-08-01 Chong Yidong <cyd@stupidchicken.com>
4169
4170 * nsfns.m (ns_frame_parm_handlers): Add empty entry for x_set_alpha.
4171
4172 * nsterm.m (EmacsApp -application:openFiles:): GNUstep does not
4173 define NSApplicationDelegateReplySuccess.
4174 (EmacsView -converstationIdentifier): Use long instead of
4175 NSInteger for GNUstep, since it doesn't have NSInteger.
4176
4177 * xmenu.c: Revert last change.
4178
4179 * keyboard.h: Fix last change.
4180
41812008-08-01 Juanma Barranquero <lekktu@gmail.com>
4182
4183 * xfaces.c (x-load-color-file): Use RGB() instead of manually shifting
4184 on Windows.
4185
41862008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
4187
4188 Warning clearing and clean-up in NS port.
4189 * keyboard.h (xmalloc_widget_value, digest_single_submenu):
4190 Add prototypes.
4191 * nsgui.h (FACE_DEFAULT): Remove, unused.
4192 (XGCValues): Change colors to unsigned long.
4193 * nsterm.h (EmacsApp): Add declaration of all methods implemented in
4194 nsterm.m.
4195 (EmacsMenu -addItemWithWidgetValue:): Change to use NSMenuItem class.
4196 (ns_list_fonts): Remove, unused.
4197 (ns_font_to_xlfd, ns_fontname_to_xlfd): Drop prototypes.
4198 * nsfns.m (interpret_services_menu): Use NSMenuItem class.
4199 * nsfont.m (nsfont_open): Fix cast error in glyphs,metrics alloc.
4200 (nsfont_draw): Compare face colors to 0, not nil.
4201 * nsmenu.m (struct widget_value): Drop unneeded declaration.
4202 (EmacsMenu -addItemWithWidgetValue:, -fillWithWidgetValue:)
4203 (-addSubmenuWithTitle:): Use NSMenuItem class.
4204 (ns_popup_menu): Use NO, not NULL, for enabled setting.
4205 * nsterm.m (ns_draw_glyph_string): Don't compare font to ~0.
4206 (ns_clip_to_row): Make gc arg a BOOL.
4207 (ns_draw_fringe_bitmap, ns_draw_window_cursor): Use YES, NO in
4208 ns_clip_to_row() call.
4209 (ns_draw_glyph_string): Drop face comparison to ~0 (no longer
4210 used). Cast FRAME_FONT assignments.
4211 (ns_read_socket): Cast call to EmacsApp-fulfillService:withArg:.
4212 (ns_string_to_lispmod): Change arg to const char.
4213 (ns_term_init): Use NSMenuItem class.
4214 (EmacsApp -openFile:): Move to different section of file.
4215 (EmacsApp -application:openFiles:): Don't return a value, call
4216 -replyToOpenOrPrint:.
4217 (EmacsView -keyDown:): Fix up cast.
4218 (EmacsView -converstationIdentifier): Use NSInteger instead of long.
4219 (EmacsView -menuDown:): Cast tag in call to
4220 find_and_call_menu_selection().
4221 (ns_list_fonts): Remove, unused.
4222 (ns_font_to_xlfd): Make static. Cast result of UTF8String.
4223 (ns_fontname_to_xlfd): Make static.
4224 * w32menu.c (xmalloc_widget_value, digest_single_submenu):
4225 Remove prototypes (now in keyboard.h).
4226 (next_menubar_widget_id): Remove, unused.
4227 * xmenu.c (xmalloc_widget_value, digest_single_submenu):
4228 Remove prototypes (now in keyboard.h).
4229 * xfaces.c (ns_list_fonts, w32_list_fonts): Remove, unused.
4230
42312008-08-01 Dan Nicolaescu <dann@ics.uci.edu>
4232
4233 * Makefile.in (dispnew.o, gtkutil.o, sound.o, atimer.o)
4234 (floatfns.o): Depend on syssignal.h.
4235 (term.o): Depend on syssignal.h, systty.h, and $(INTERVAL_SRC).
4236
4237 * systty.h: Fix previous change that removed BSD_TERMIOS.
4238 Add comments to #ifdefs.
4239
42402008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
4241
4242 * w32fns.c (w32-load-color-file): Remove.
4243 (x-open-connection): Use renamed Fx_load_color_file.
4244 * xfaces.c (x-load-color-file): Add.
4245 * nsterm.m (ns_initialize): Load colors from etc/rgb.txt instead of
4246 Emacs.clr.
4247 (hide_hourglass): BLOCK_INPUT before UNBLOCK.
4248
42492008-07-31 Michael Albinus <michael.albinus@gmx.de>
4250
4251 * dbusbind.c (Fdbus_call_method_asynchronously)
4252 (Fdbus_method_error_internal): New defuns.
4253 (xd_read_message): Handle also reply messages.
4254 (Vdbus_registered_functions_table): Extend docstring.
4255
42562008-07-31 Juanma Barranquero <lekktu@gmail.com>
4257
4258 * keyboard.c (gobble_input): Fix previous change.
4259
42602008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
4261
4262 * bitmaps/README:
4263 * xfns.c:
4264 * termcap.c:
4265 * term.c:
4266 * syswait.h:
4267 * systty.h:
4268 * systime.h:
4269 * syssignal.h:
4270 * sysdep.c:
4271 * process.h:
4272 * process.c:
4273 * print.c:
4274 * ndir.h:
4275 * lread.c:
4276 * keyboard.c:
4277 * getpagesize.h:
4278 * floatfns.c:
4279 * fileio.c:
4280 * emacs.c:
4281 * doc.c:
4282 * dispnew.c:
4283 * dired.c:
4284 * data.c:
4285 * callproc.c:
4286 * buffer.c:
4287 * README:
4288 * Makefile.in:
4289 * s/template.h:
4290 * s/msdos.h:
4291 * m/vax.h: Remove VMS support.
4292 * s/vms.h:
4293 * vlimit.h:
4294 * uaf.h:
4295 * temacs.opt:
4296 * param.h:
4297 * ioctl.h: Remove file.
4298
42992008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
4300
4301 * s/ms-w32.h (MULTI_KBOARD): Remove.
4302 * xterm.c:
4303 * xselect.c:
4304 * xfns.c:
4305 * window.c:
4306 * w32term.c:
4307 * w32fns.c:
4308 * terminal.c:
4309 * termhooks.h:
4310 * term.c:
4311 * sysdep.c:
4312 * keyboard.h:
4313 * keyboard.c:
4314 * frame.h:
4315 * frame.c:
4316 * frame.c: Remove references to MULTI_KBOARD, it is now the default.
4317 * config.in: Regenerate.
4318
43192008-07-30 Jason Rumney <jasonr@gnu.org>
4320
4321 * w32font.h (struct w32font_info): Use unicode version of textmetrics.
4322
4323 * w32font.c (w32font_encode_char): Leave as unicode if in range.
4324 (w32font_open_internal): Get unicode version of textmetrics.
4325 Don't enable or disable glyph indices here.
4326 (w32font_open): Disable use of glyph indices.
4327
4328 * w32uniscribe.c (uniscribe_open): Enable use of glyph indices.
4329
43302008-07-30 Chong Yidong <cyd@stupidchicken.com>
4331
4332 * minibuf.c (Vread_buffer_function): Doc fix.
4333
43342008-07-30 John Paul Wallington <jpw@pobox.com>
4335
4336 * minibuf.c (read_buffer_completion_ignore_case): New var.
4337 (Fread_buffer): Use it.
4338
43392008-07-30 Dan Nicolaescu <dann@ics.uci.edu>
4340
4341 * systty.h (sensemode): Remove empty #if. Remove reference to
4342 BSD_TERMIOS, unused.
4343
4344 * sysdep.c: Remove reference to DGUX.
4345 (closedir): Remove reference to BROKEN_CLOSEDIR, unused.
4346
4347 * config.in: Regenerate.
4348
43492008-07-30 Jason Rumney <jasonr@gnu.org>
4350
4351 * w32uniscribe.c (uniscribe_encode_char): Fix glyph buffer size.
4352
43532008-07-29 Jason Rumney <jasonr@gnu.org>
4354
4355 * w32uniscribe.c (uniscribe_shape): Avoid using context if cache
4356 is populated.
4357 (uniscribe_encode_char): Always use uniscribe.
4358 Avoid using context if cache is populated.
4359
43602008-07-29 Jan Djärv <jan.h.d@swipnet.se>
4361
4362 * xmenu.c (Fx_menu_bar_open_internal): Use activate_item signal to
4363 open menu.
4364
4365 * gtkutil.c (menu_nav_ended): Remove.
4366 (create_menus): Remove signal connect for menu_nav_ended.
4367
43682008-07-28 Chong Yidong <cyd@stupidchicken.com>
4369
4370 * xdisp.c (redisplay_window): Check return value of
4371 compute_window_start_on_continuation_line before forcing a window
4372 start.
4373
43742008-07-28 Jason Rumney <jasonr@gnu.org>
4375
4376 * w32font.c (w32font_text_extents): Use w32_metric_cache consistently.
4377
4378 * w32term.c (w32_enable_unicode_output, cleartype_active):
4379 Remove obsolete display options.
4380 (x_draw_glyph_string_background): Don't use old cleartype_active
4381 workaround.
4382 (w32_initialize): Remove cleartype_active initialization.
4383 (syms_of_w32term): Remove w32_enable_unicode_output initialization.
4384
43852008-07-28 Andreas Schwab <schwab@suse.de>
4386
4387 * lisp.h (init_weak_hash_tables, syms_of_font)
4388 (xd_read_queued_messages, syms_of_dbusbind): Declare.
4389 (remove_hash_entry): Don't declare.
4390 * eval.c (maybe_call_debugger): Make static and move before use.
4391 * gtkutil.c: Include <X11/Xft/Xft.h> if HAVE_XFT.
4392 * xdisp.c: Include "gtkutil.h" if USE_GTK.
4393 * xterm.h (x_set_frame_alpha): Declare.
4394
43952008-07-28 Jan Djärv <jan.h.d@swipnet.se>
4396
4397 * gtkutil.c (menu_nav_ended): Revert change from 2008-07-24.
4398 (create_menus): Connect selection-done to menu_nav_ended.
4399
44002008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
4401
4402 * nsfns.m (x-create-frame): Add copy of parms argument to beginning.
4403 Set Vx_resource_name to a fallback. Replace read of 'buffered'
4404 parameter with read of 'alpha' one.
4405 (Qns_frame_parameter): Remove.
5582fbc7 4406 * nsselect.m (selection-coding-system)
aac0c6e3
MR
4407 (next-selection-coding-system, Vselection_coding_system)
4408 (Vnext_selection_coding_system): Drop.
4409
44102008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
4411
4412 * nsfns.m (do-applescript, do_applescript): Rename to
4413 ns-do-applescript, ns_do_applescript, and move within file.
4414
44152008-07-27 Dan Nicolaescu <dann@ics.uci.edu>
4416
4417 Remove support for Mac Carbon.
4418 * mactoolbox.c:
4419 * macterm.h:
4420 * macterm.c:
4421 * macselect.c:
4422 * macmenu.c:
4423 * macgui.h:
4424 * macfns.c:
4425 * mac.c: Remove file.
4426 * s/darwin.h:
4427 * m/intel386.h:
4428 * xfaces.c:
4429 * xdisp.c:
4430 * window.c:
4431 * tparam.c:
4432 * termhooks.h:
4433 * termcap.c:
4434 * term.c:
4435 * syssignal.h:
4436 * sysselect.h:
4437 * sysdep.c:
4438 * process.c:
4439 * lread.c:
4440 * lisp.h:
4441 * keyboard.c:
4442 * image.c:
4443 * fringe.c:
4444 * frame.h:
4445 * frame.c:
4446 * fontset.c:
4447 * font.h:
4448 * font.c:
4449 * fns.c:
4450 * fileio.c:
4451 * emacs.c:
4452 * dispnew.c:
4453 * dispextern.h:
4454 * config.in:
4455 * atimer.c:
2ae37cf0 4456 * Makefile.in: Remove code for Carbon.
aac0c6e3 4457
f0131492 44582008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
aac0c6e3
MR
4459
4460 * macterm.c (XDrawLine) [USE_MAC_IMAGE_IO]: Remove spurious return.
4461
44622008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4463
4464 * macterm.h (kCGBitmapByteOrder32Host): New define for
4465 non-universal SDKs.
4466
4467 * image.c (mac_create_cg_image_from_image, image_load_image_io)
4468 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
4469
4470 * macterm.c (XDrawLine, XCreatePixmapFromBitmapData)
4471 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
4472
44732008-07-26 David Robinow <drobinow@gmail.com> (tiny change)
4474
4475 * w32inevt.c: Include dispextern.h.
4476
44772008-07-26 Andreas Schwab <schwab@suse.de>
4478
4479 * print.c (print_object): Fix off-by-one in last change.
4480
44812008-07-25 Juanma Barranquero <lekktu@gmail.com>
4482
4483 * term.c (syms_of_term): Don't initialize default_orig_pair,
4484 default_set_foreground and default_set_background on Windows.
4485
44862008-07-25 Jason Rumney <jasonr@gnu.org>
4487
4488 * w32uniscribe.c (uniscribe_shape): Pass NULL for control arg to
4489 ScriptItemize. Clean up return value checking. Remove unused
4490 variables.
4491 (uniscribe_encode_char): Encode non-BMP characters with uniscribe
4492 shaping engine.
4493
4494 * w32font.c (w32font_has_char): Handle the case where we can't
4495 determine the script for a character.
4496
44972008-07-25 Chong Yidong <cyd@stupidchicken.com>
4498
4499 * term.c (syms_of_term): Initialize default_orig_pair,
4500 default_set_foreground, and default_set_background.
4501
4502 * getloadavg.c (nl): Rename to name_list to avoid ncurses.h
4503 clash (bug#86).
4504 (getloadavg): Callers changed.
4505
4506 * image.c (svg_load_image): Fix last change.
4507 (svg_load_image): Use rsvg_handle_get_dimensions to check that
4508 image size is valid. Use g_object_unref instead of deprecated
4509 rsvg_handle_free to free rsvg handle.
4510 (x_from_xcolors): Don't initialize pixmap (silence compiler).
4511
45122008-07-25 Jason Rumney <jasonr@gnu.org>
4513
4514 * w32font.c (w32font_encode_char): Encode characters outside BMP as
4515 surrogates before looking up glyph index.
4516 (w32font_text_extents): Encode as surrogates if falling back to
4517 functions that need UTF-16 wide chars.
4518
4519 * w32uniscribe.c (uniscribe_encode_char): Encode characters outside
4520 BMP as surrogates before looking up glyph index.
4521
45222008-07-25 Chong Yidong <cyd@stupidchicken.com>
4523
4524 * image.c (svg_load_image): Check for failure in return value of
4525 rsvg_handle_get_pixbuf. Free rsvg handle when done.
4526
45272008-07-25 Jason Rumney <jasonr@gnu.org>
4528
4529 * w32font.c (Fx_select_font): Reverse sense of second arg.
4530
45312008-07-24 Stefan Monnier <monnier@iro.umontreal.ca>
4532
4533 * syntax.c (struct lisp_parse_state, char_quoted, inc_bytepos)
4534 (dec_bytepos, find_defun_start): Use EMACS_INT for buffer positions.
4535
4536 * puresize.h (PURESIZE_CHECKING_RATIO): New macro.
4537 (PURESIZE): Use it.
4538
45392008-07-24 Dan Nicolaescu <dann@ics.uci.edu>
4540
4541 * m/amdx86-64.h (HAVE_LIB64_DIR): Consolidate ifdefs.
4542 * m/alpha.h (TEXT_END):
4543 * m/ibmrs6000.h (TEXT_END):
4544 * m/macppc.h (TEXT_END):
4545 * s/darwin.h (TEXT_END):
4546 * s/msdos.h (TEXT_END): Remove, unused.
4547 * s/gnu-linux.h (BSD_PGRPS): Add a comment.
4548 * s/cygwin.h: Remove comment.
4549
4550 * ecrt0.c (NODOT_GLOBAL_START): Remove code, unused.
4551 (DOT_GLOBAL_START): Remove conditional, redundant for CRT0_DUMMIES.
4552 * m/intel386.h (DOT_GLOBAL_START):
4553 * m/vax.h (DOT_GLOBAL_START): Remove, redundant with CRT0_DUMMIES.
4554 (USG): Remove, file not used on USG platforms.
4555
4556 * Makefile.in (HAVE_X11): Remove empty #else.
4557
45582008-07-24 Andreas Schwab <schwab@suse.de>
4559
4560 * fileio.c (Finsert_file_contents): Properly adjust undo list
4561 after format conversion.
4562
45632008-07-24 Jan Djärv <jan.h.d@swipnet.se>
4564
4565 * gtkutil.c (xg_get_font_name): Cast w to GTK_FONT_SELECTION_DIALOG.
4566 (menu_nav_ended): Remove.
4567 (create_menus): Remove signal connect for menu_nav_ended.
4568 (xg_update_menubar): Also take deactivate_cb as parameter, pass it to
4569 create_menus.
4570 (xg_modify_menubar_widgets): Pass deactivate_cb to xg_update_menubar.
4571
45722008-07-23 Jason Rumney <jasonr@gnu.org>
4573
4574 * w32font.c (w32_enumfont_pattern_entity): Return height consistent
4575 with opened font.
4576 (w32font_open): Set font type to gdi.
4577
4578 * w32uniscribe.c (uniscribe_open): Set font type to uniscribe.
4579
45802008-07-23 Dan Nicolaescu <dann@ics.uci.edu>
4581
4582 * s/usg5-4.h (ADDR_CORRECT): Remove, unused.
4583 * unexaix.c (ADDR_CORRECT): Remove conditional, the only user
4584 defines it.
4585 * unexec.c (ADDR_CORRECT): Define unconditionally.
4586
4587 * m/ibmrs6000.h (C_SWITCH_MACHINE): Remove.
4588
4589 * unexec.c: Remove code depending on !COFF and USG, the file is
4590 not used for such systems.
4591
4592 * s/netbsd.h (A_TEXT_OFFSET, A_TEXT_SEEK):
4593 * s/freebsd.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, unused.
4594 (LD_SWITCH_SYSTEM_1): Remove, update users.
4595
4596 * s/darwin.h (DATA_END):
4597 * m/intel386.h (DATA_END):
4598 * m/ibmrs6000.h (DATA_END):
4599 * m/alpha.h (DATA_END): Remove, unused.
4600
4601 * config.in: Regenerate.
4602 * s/ms-w32.h (subprocesses): Define unconditionally.
4603 * s/template.h (subprocesses): Update comment.
4604 * s/vms.h (subprocesses):
4605 * s/usg5-4.h (subprocesses):
4606 * s/hpux10-20.h (subprocesses):
4607 * s/gnu-linux.h (subprocesses):
4608 * s/cygwin.h (subprocesses):
4609 * s/bsd-common.h (subprocesses):
4610 * s/aix4-2.h (subprocesses):
4611 * s/darwin.h (subprocesses): Do not define, defined by default now.
4612
4613 * Makefile.in (C_SWITCH_SITE, LD_SWITCH_SITE): Remove, unused.
4614 Remove all references.
4615 (temacs): Add GNUstep specific ld flags.
4616
4617 * nsterm.m (syms_of_nsterm): Provide ns, not ns-windowing,
4618 similarly to what X does.
4619
46202008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
4621
4622 * nsfns.m (x-list-fonts): Remove.
4623 (syms_of_nsfns): Drop the x-list-fonts declaration.
4624 * nsterm.m: Get rid of remaining "//" comments.
4625
46262008-07-22 Chong Yidong <cyd@stupidchicken.com>
4627
4628 * xselect.c (Fx_rotate_cut_buffers_internal): Doc fix.
4629
4630 * nsselect.m (Fns_selection_exists_p, Fns_selection_owner_p)
4631 (Fx_get_selection_internal, Fns_rotate_cut_buffers_internal)
4632 (Fns_own_selection_internal, Fx_disown_selection_internal)
4633 (Fns_get_cut_buffer_internal, Fns_store_cut_buffer_internal):
4634
4635 * nsmenu.m (Fns_reset_menu, Fx_popup_menu): Change to use 'doc: /*
4636 ... */' style of docstrings. Doc fixes.
4637
46382008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
4639
4640 * terminfo.c (UP, BC, PC): Undo previous change.
4641
4642 * nsfns.m: Rename ns prefixed functions/variables to the
4643 corresponding x versions. Update references.
4644
46452008-07-22 Stefan Monnier <monnier@iro.umontreal.ca>
4646
4647 * syntax.c (char_quoted): Check "charpos > beg" before decrementing.
4648
46492008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
4650
4651 * nsfns.m (x_set_menu_bar_lines, x_set_tool_bar_lines):
4652 Remove forwarding functions.
4653 (ns_set_menu_bar_lines): Rename to x_set_menu_bar_lines, make
4654 non-static.
4655 (ns_set_tool_bar_lines): Rename to x_set_tool_bar_lines, make
4656 non-static.
4657 (ns_frame_parm_handlers): Use the new names.
4658 (syms_of_nsfns): Move to the end of file.
4659
4660 * nsterm.m (syms_of_nsterm): Move to the end of file.
4661
4662 * dispnew.c (init_display): Remove code for X10.
4663
46642008-07-22 Jason Rumney <jasonr@gnu.org>
4665
4666 * w32proc.c (Fw32_long_file_name): Don't append dir separator to
4667 bare drive.
4668
46692008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
4670
4671 * nsterm.m (syms_of_nsterm): Remove debugging println.
4672
46732008-07-22 David Reitter <david.reitter@gmail.com>
4674
4675 * nsfns.m (do_applescript, F_do_applescript): NS version of the
4676 Carbon implementation of the same functionality: execute arbitrary
4677 AppleScript code.
4678
46792008-07-21 Adrian Robert <Adrian.B.Robert@gmail.com>
4680
4681 * nsfns.m (Fx_create_frame, Fx_read_file_name, Fx_get_resource)
4682 (Fx_set_resource, Fx_set_alpha, Fx_server_max_request_size)
4683 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
4684 (Fx_display_mm_height, Fx_display_mm_width)
4685 (Fx_display_backing_store, Fx_display_visual_class)
4686 (Fx_display_save_under, Fx_open_connection)
4687 (Fx_close_connection, Fx_hide_emacs, Fx_font_name)
4688 (Fx_list_colors, Fx_perform_service, Fx_color_defined_p)
4689 (Fx_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
4690 (Fx_display_pixel_width, Fx_display_pixel_height)
4691 (Fx_display_usable_bounds, Fx_display_planes)
4692 (Fx_display_color_cells, Vns_icon_type_alist): Change to use 'doc: /*
4693 ... */' style of docstrings.
4694
46952008-07-21 Dan Nicolaescu <dann@ics.uci.edu>
4696
4697 * m/mips.h (LOAD_AVE_TYPE, LOAD_AVE_CVT): Do not define, not used
4698 on this platform.
4699 (mips):
4700 * m/iris4d.h (mips): Do not define.
4701 * sysdep.c (init_sys_modes): Use __mips__ instead of mips.
4702
4703 * m/ibmrs6000.h (LD_SWITCH_SITE): Remove.
4704
4705 * image.c:
4706 * nsfns.m:
4707 * nsselect.m:
4708 * nsterm.h:
4709 * nsterm.m: Rename ns prefixed functions/variables to the
4710 corresponding x versions. Update references.
4711
4712 * m/ibms390x.h (NO_REMAP): Do not undefine.
4713
4714 * m/amdx86-64.h: Use SOLARIS2 instead of sun.
4715
47162008-07-21 Chong Yidong <cyd@stupidchicken.com>
4717
4718 * nsfns.m: Change NS to Nextstep in docstrings and error messages.
4719 (Fns_create_frame, Fns_read_file_name, Fns_get_resource)
4720 (Fns_set_resource, Fns_set_alpha, Fns_server_max_request_size)
4721 (Fns_server_vendor, Fns_server_version, Fns_display_screens)
4722 (Fns_display_mm_height, Fns_display_mm_width)
4723 (Fns_display_backing_store, Fns_display_visual_class)
4724 (Fns_display_save_under, Fns_open_connection)
4725 (Fns_close_connection, Fns_hide_emacs, Fns_font_name)
4726 (Fns_list_colors, Fns_perform_service, Fns_color_defined_p)
4727 (Fns_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
4728 (Fns_display_pixel_width, Fns_display_pixel_height)
4729 (Fns_display_usable_bounds, Fx_display_planes)
4730 (Fns_display_color_cells, Vns_icon_type_alist): Doc fixes.
4731
47322008-07-21 Ami Fischman <ami@fischman.org> (tiny change)
4733
4734 * print.c (print_object): Check print_depth before searching for
4735 circularities.
4736
47372008-07-21 Michael Albinus <michael.albinus@gmx.de>
4738
4739 * dbusbind.c (Fdbus_register_signal): Use sprintf + strcat instead
4740 only sprintf.
4741
47422008-07-21 Kenichi Handa <handa@m17n.org>
4743
4744 * ftfont.c (adjust_anchor): Check if DeltaValue is not NULL.
4745
47462008-07-20 Andreas Schwab <schwab@suse.de>
4747
4748 * syntax.c (find_start_pos, find_start_value)
4749 (find_start_value_byte, find_start_begv, find_defun_start)
4750 (back_comment, scan_sexps_forward): Use EMACS_INT for buffer positions.
4751
47522008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
4753
4754 * s/sol2-3.h: Insert contents of s/sol2.h.
4755 (LD_SWITCH_SYSTEM): Remove redundant definition.
4756 * s/sol2.h: Remove, unused.
4757
47582008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
4759
4760 * nsterm.m (ns_get_color): Recognize HSB,AHSB be synonyms for HSV,AHSV.
4761
47622008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
4763
4764 * Makefile.in (ns_appdir): Fix typo in find command.
4765
47662008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
4767
4768 * m/intel386.h (NO_REMAP): Do no define for USG, not used.
4769
4770 * s/usg5-4.h (LIBS_SYSTEM): Remove, system for which this was
4771 added not supported anymore.
4772
4773 * s/usg5-4-2.h (LIBS_SYSTEM):
4774 * s/sol2.h (LIBS_SYSTEM): Do not undefine.
4775
4776 * s/netbsd.h (GETPGRP_NO_ARG, N_TRELOFF):
4777 * s/lynxos.h (GETPGRP_NO_ARG):
4778 * s/hpux10-20.h (NO_SIOCTL_H):
4779 * s/gnu.h (GETPGRP_NO_ARG):
4780 * s/gnu-linux.h (NO_SIOCTL_H):
4781 * s/freebsd.h (GETPGRP_NO_ARG, N_TRELOFF):
4782 * s/cygwin.h (GETPGRP_NO_ARG):
4783 * s/irix6-5.h (LIBS_SYSTEM, GETPGRP_NO_ARG): Remove, unused.
4784 (C_DEBUG_SWITCH): Remove duplicate definition.
4785
4786 * m/ibms390.h: Remove boilerplate comments.
4787
4788 * sysdep.c (closedir): Use SOLARIS2 instead of sun && USG5_4.
4789
4790 * process.c (HAVE_SERIAL): Consolidate ifdefs.
4791 (wait_reading_process_output): Remove code for SunOS, platform not
4792 supported anymore. Use SOLARIS2 instead of sun.
4793
47942008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
4795
4796 * font.c (font_open_by_name): Under NS, default lface height to zero.
4797 (font_open_for_lface): Under NS, set size based on frame fontsize.
4798 * nsterm.m (EmacsView-changeFont:): Remove some commented code.
4799 * frame.c (x_set_frame_parameters): Remove HAVE_NS ifdef.
4800
48012008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
4802
4803 * nsterm.m (ns_antialias_text, ns_use_qd_smoothing)
4804 (ns_use_system_highlight_color): Switch these from DEFVAR_BOOL to
4805 DEFVAR_LISP and change all code accordingly to use Qt/Qnil instead of
4806 YES/NO.
4807 * nsterm.h (prevUseHighlightColor): Make a Lisp_Object.
4808 * nsfont.m (nsfont_draw): Treat ns_use_qd_smoothing as Lisp_Object.
4809 * Makefile.in (clean): Clear out build destination dir.
4810
48112008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
4812
4813 * Makefile.in (nsgui.h-related dependencies): Remove abbrev, xfns,
4814 xterm, xselect.
4815 * lisp.h: Remove declaration of hash_remove.
4816 * nsgui.h: Remove redefinitions of hash_remove.
4817 * fns.c (hash_remove): Rename to hash_remove_from_table.
4818
48192008-07-19 Seiji Zenitani <zenitani@mac.com>
4820
4821 * nsfont.m (nsfont_fmember_to_entity, nsfont_make_fontset_for_font):
4822 strdup() the family UTF8String before modifying it.
4823
48242008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
4825
4826 * nsterm.m (ns_maybe_dumpglyphs_background): Compare result from
4827 NS_FACE_BACKGROUND with 0 instead of nil.
4828 * nsfont.m (nsfont_draw): Same.
4829
48302008-07-19 Chong Yidong <cyd@stupidchicken.com>
4831
4832 * nsfns.m (ns_set_background_color): Fix crash.
4833
48342008-07-18 Chong Yidong <cyd@stupidchicken.com>
4835
4836 * Makefile.in (SOME_MACHINE_LISP): Remove ns-carbon-compat.elc.
4837
48382008-07-18 Dan Nicolaescu <dann@ics.uci.edu>
4839
4840 * puresize.h (BASE_PURESIZE): Increase to 1240000.
4841
48422008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4843
4844 * gtkutil.c: Include <config.h> instead of "config.h".
4845
4846 * lisp.h (Foverlay_buffer): Add EXFUN.
4847
4848 * process.c (create_process) [!WINDOWSNT && FD_CLOEXEC]: Wait for
4849 child process to complete child_setup. Undo 2005-09-21 change.
4850
4851 * s/darwin.h: Mention setsid after vfork.
4852
48532008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4854
4855 * Makefile.in (frame.o, keyboard.o, xdisp.o, xfaces.o):
4856 Depend on macgui.h.
4857
4858 * macfns.c (Fx_server_version): Don't use gestaltSystemVersionMajor,
4859 gestaltSystemVersionMinor, or gestaltSystemVersionBugFix.
4860
4861 * macterm.c (keycode_to_xkeysym_table): Add entries for f17, f18,
4862 and f19.
4863 [MAC_OSX] (fn_keycode_to_keycode_table): Likewise.
4864
4865 * macterm.h (gestaltSystemVersionMajor, gestaltSystemVersionMinor)
4866 (gestaltSystemVersionBugFix) [MAC_OS_X_VERSION_MAX_ALLOWED < 1040]:
4867 Remove enumerators.
4868
4869 * mactoolbox.c [USE_MAC_TSM] (mac_handle_text_input_event):
4870 Check if FACE_FROM_ID returns NULL.
4871
48722008-07-17 David Robinow <drobinow@gmail.com> (tiny change)
4873
4874 * w32inevt.c (change_frame_size): Remove extern declaration.
4875 (resize_event, maybe_generate_resize_event): Pass SAFE arg to
4876 change_frame_size.
4877
48782008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
4879
4880 * getloadavg.c: Revert last change (2008-07-15).
4881
48822008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
4883
4884 * Makefile.in: Replace emacsapp, emacsbindir, emacsappsrc variables
4885 set here with ns_appdir, ns_appresdir, ns_appbindir, ns_appsrc) set
4886 from configure.
4887
48882008-07-17 Dan Nicolaescu <dann@ics.uci.edu>
4889
4890 * s/sol2.h:
4891 * s/sol2-4.h: Reorganize conditionals.
4892
4893 * ecrt0.c: Remove code depending on m68000, not used anymore.
4894
4895 * fns.c (hash_remove): Make static.
4896 * lisp.h (hash_remove): Don't prototype.
4897
4898 * m/ibmrs6000.h:
4899 * m/ibms390x.h:
4900 * m/macppc.h: Remove boilerplate comments.
4901
4902 * m/sparc.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, only used on
4903 Solaris, which does not need them.
4904
4905 * m/vax.h: Remove comments about unsupported systems.
4906
4907 * s/darwin.h: Reorganize ifdefs.
4908
49092008-07-17 Andreas Schwab <schwab@suse.de>
4910
4911 * s/cygwin.h (LIB_STANDARD_LIBSRC): Don't define.
4912
49132008-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
4914
4915 Use SDATA. Follow coding convention of placing operators at
4916 beginning of next line rather than end of previous line, and placing
4917 spaces around infix operators.
4918
4919 * Makefile.in: Undef LIB_STANDARD before defining it to silence warning
4920 in case it was defined already.
4921 USE @GNUSTEP_MAKEFILES@ rather than envvars.
4922 * nsterm.m (ns_term_init): Pass Qt and Qnil rather than YES/NO to
4923 ns_default.
4924 (applicationShouldTerminate, setValuesFromPanel): Use EQ to compare
4925 Lisp_Objects.
4926 * nsterm.h (Fx_display_grayscale_p, Fx_display_planes)
4927 (ns_defined_color, ns_color_to_lisp): Declare.
4928 * nsselect.m (ns_handle_selection_request, ns_handle_selection_clear)
4929 (Fns_own_selection_internal): Make the big ugly hack more explicit, so
4930 it's accepted even with USE_LISP_UNION_TYPE.
4931 * nsmenu.m (ns_update_menubar): Use EQ to compare Lisp_Objects.
4932 (update_frame_tool_bar): Remove apparently obsolete tests for
4933 non-integerness of f->tool_bar_lines.
4934 (windowShouldClose, addButton, clicked, runDialogAt): Make the big ugly
4935 hack more explicit, so it's accepted even with USE_LISP_UNION_TYPE.
4936 * nsfont.m (nsfont_driver): Use just 0 rather than an invalid cast.
4937 (nsfont_open): Don't confuse NULL for Qnil.
4938 * nsfns.m (ns_implicitly_set_icon_type): Use EQ to compare Lisp_Objects.
4939 * menu.h (find_and_call_menu_selection):
4940 * menu.c (find_and_call_menu_selection): Use just int for vector size.
4941 (find_and_return_menu_selection): Always return something.
4942 * frame.h: Include dispextern.h for Display_Info.
4943 (display_x_get_resource): Declare.
4944
49452008-07-16 Adrian Robert <Adrian.B.Robert@gmail.com>
4946
4947 * syntax.c: Remove stdio.h include accidentally introduced in
4948 Emacs.app commit.
4949 * Makefile.in: Change GNUSTEP to NS_IMPL_GNUSTEP, COCOA to
4950 NS_IMPL_COCOA.
4951 * keyboard.c (handle_async_input, input_available_signal): Remove
4952 BSD4_1 conditional code, introduced accidentally in Emacs.app commit.
4953
49542008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
4955
4956 * nsterm.m (lisp_to_mod): Use parse_solitary_modifier instead.
4957 (ns_lisp_to_color): Don't mess with internal Lisp data fields.
4958 (ns_term_init, ns_term_shutdown, initFrameFromEmacs, ns_list_fonts):
4959 Use SDATA.
4960
4961 * keymap.c: Remove all NS-specific code.
4962 (where_is_preferred_modifier, Vwhere_is_preferred_modifier): New vars.
4963 (preferred_sequence_p): Rename from ascii_sequence_p; pay attention to
4964 where_is_preferred_modifier, return a different value depending on how
4965 preferred is the binding.
4966 (where_is_internal): Adjust accordingly.
4967 (Fwhere_is_internal): Refresh where_is_preferred_modifier.
4968 Adjust to new preferred_sequence_p.
4969 (syms_of_keymap): Declare `where-is-preferred-modifier'.
4970 * keyboard.c (parse_solitary_modifier): Not static any more.
4971 * keyboard.h (parse_solitary_modifier): Declare.
4972
49732008-07-16 Andreas Schwab <schwab@suse.de>
4974
4975 * Makefile.in (SOME_MACHINE_LISP): Remove easy-mmode, fix spelling
4976 of easymenu.
4977
49782008-07-16 Chong Yidong <cyd@stupidchicken.com>
4979
4980 * xdisp.c (move_it_in_display_line): Account for word wrap, so
4981 that we don't move off the line.
4982
49832008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
4984
4985 * keyboard.c (Qsuper): Remove.
4986 (parse_menu_item): Don't call where_is_internal specially for NS.
4987
49882008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
4989
4990 * s/gnu-linux.h: Remove boilerplate comments.
4991
4992 * m/alpha.h (__ELF__): Consolidate conditions.
4993
4994 * m/m68k.h (linux): Use GNU_LINUX instead.
4995 Remove boilerplate comments.
4996
4997 * m/intel386.h: Undo refactoring from previous change.
4998 (LIB_STANDARD): All systems that define USG define LIB_STANDARD
4999 too, remove dead code.
5000 (linux): Use GNU_LINUX instead.
5001
50022008-07-16 Jason Rumney <jasonr@gnu.org>
5003
5004 * w32gui.h: Repeat 26 June changes lost by last change.
5005
50062008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
5007
5008 * systty.h: Remove code for Aix on 386, unsupported platform.
5009
5010 * s/ms-w32.h: Remove boilerplate comments.
5011 (fcloseall, fgetchar, flushall, fputchar, getw, putw): Remove, unused.
5012
5013 * s/gnu-linux.h (TERM): Remove support.
5014 (HAVE_SYSVIPC): Remove, unused.
5015 (A_TEXT_OFFSET, A_TEXT_SEEK, ADJUST_EXEC_HEADER): Remove, not used
5016 for this system.
5017
5018 * process.c: Remove support for IRIS, unused.
5019 Remove support for TERM, not relevant anymore.
5020
5021 * unexalpha.c (DEFAULT_ENTRY_ADDRESS): Remove, replace the only
5022 used with the definition.
5023
5024 * s/aix4-2.h (static): Do not undef.
5025
5026 * m/ibmrs6000.h: Remove code depending on USG5_4, this file is
5027 only used on Aix.
5028 (HAVE_SYSVIPC): Remove, unused.
5029
5030 * m/hp800.h (CANNOT_DUMP): Do not undef.
5031
5032 * m/alpha.h: Fix comment.
5033
5034 * s/usg5-4.h (HAVE_SYSVIPC): Remove, unused.
5035 (USG_SHARED_LIBRARIES): Remove, only used in unexec.c which is not
5036 used by this configuration.
5037 * emacs.c: Remove code depending on USG_SHARED_LIBRARIES.
5038 * unexec.c: Remove code depending on HPUX and
5039 USG_SHARED_LIBRARIES, not used with this file. Remove code
5040 depending on IRIS, unused. Remove if 0-ed code.
5041
5042 * s/template.h: Remove comments about static.
5043
5044 * sysdep.c: Remove code depending on NEED_PTEM_H, unused.
5045 Remove if 0-ed code.
5046 (baud_convert): Don't depend on BAUD_CONVERT, all definitions the
5047 were the same as the default.
5048 * s/vms.h (BAUD_CONVERT): Remove, same as the default.
5049 Remove boilerplate comments.
5050 * s/hpux10-20.h (BAUD_CONVERT): Remove, same as the default.
5051 (HAVE_SYSVIPC): Remove, unused.
5052 (LD_SWITCH_SYSTEM_TEMACS): Simplify, hp9000s700 not supported anymore.
5053
5054 * m/ia64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
5055 Remove boilerplate comments.
5056 * m/amdx86-64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
5057 Remove boilerplate comments.
5058 * m/ibms390x.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
5059 Remove boilerplate comments.
5060 * lisp.h (PNTR_COMPARISON_TYPE): Define it unconditionally.
5061
5062 * m/intel386.h (DATA_SEG_BITS): Remove definitions, only used on
5063 USG systems which do not use DATA_SEG_BITS.
5064 Refactor code. Remove boilerplate comments.
5065
5066 * m/ibms390.h:
5067 * m/m68k.h:
5068 * s/bsd-common.h:
5069 * s/cygwin.h:
5070 * s/darwin.h:
5071 * s/freebsd.h:
5072 * s/gnu.h:
5073 * s/msdos.h: Remove boilerplate comments.
5074
5075 * m/iris4d.h: Remove boilerplate comments and code for systems that
5076 do not use this file.
5077 (IRIS_4D): Remove, unused.
5078
5079 * m/mips.h: Remove boilerplate comments and code for systems that
5080 do not use this file.
5081 (SIGN_EXTEND_CHAR):
5082 * m/arm.h (SIGN_EXTEND_CHAR): Remove, unused.
5083 * unexmips.c: Remove file, unused.
5084
5085 * editfns.c (Fuser_full_name): Replace the only use of
5086 USER_FULL_NAME with its value.
5087 * config.in: Regenerate.
5088
50892008-07-16 David Reitter <david.reitter@gmail.com>
5090
5091 * Makefile.in: Add ns-win, ns-carbon-compat, easy-mmode and
5092 easy-menu to SOME_MACHINE_LISP for the new NeXTstep port.
5093
50942008-07-16 Glenn Morris <rgm@gnu.org>
5095
5096 * emacs.c (system-type): Doc fix.
5097
50982008-07-15 Stefan Monnier <monnier@iro.umontreal.ca>
5099
5100 * keyboard.c (parse_menu_item): Don't use cachelist, even under NS.
5101 If the cache doesn't work, let's fix it, rather than work around it.
5102
51032008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
5104
5105 * Makefile.in: Correct additions for nsfont.o in last commit.
5106 * nsfont.m: New file (forgot last commit).
5107
51082008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
5109
5110 * callproc.c (set_initial_environment): Initialize
5111 Vprocess_environment under CANNOT_DUMP (fixes crash when
5112 batch-compiling for bootstrap).
5113
51142008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
5115 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5116
5117 (make_initial_frame): Call init_frame_faces(f) in CANNOT_DUMP case --
5118 fix crash due to different init order.
5119
51202008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
5121
5122 Changes and additions for NeXTstep windowing system (Cocoa and
5123 GNUstep) support.
5124
5125 * Makefile.in:
5126 * config.in: Support defines and build commands for NS port.
5127 * blockinput.h (BLOCK_INPUT, UNBLOCK_INPUT, TOTALLY_UNBLOCK_INPUT)
5128 (UNBLOCK_INPUT_TO): Don't use under NS unless EXPERIMENTAL_CONTROL_G.
5129 * dispextern.h: Include nsgui.h and add needed typedefs under NS
5130 windowing.
5131 (struct face): Add synth_ital field.
5132 * dispnew.c: Include nsterm.h when compiling under NS windowing.
5133 (init_display): Initialize Vinitial_window_system to "ns" when so
5134 compiled.
5135 * emacs.c: Include GSConfig.h when compiling under GNUstep.
5136 (display_arg): Use under NS.
5137 (main): Under NS, allocate autorelease pool and handle command line
5138 args. Move syms_of_xmenu() call under #ifdef HAVE_X_WINDOWS.
5139 (standard_args): Add NS-specific args.
5140 (shut_down_emacs): Shut down NS terminal if compiled under NS.
5141 * font.c (DEFAULT_ENCODING): New variable.
5142 (font_find_for_lface): Use it.
5143 (syms_of_font): Load syms_of_nsfont under NS.
5144 * font.h: Declare nsfont_driver when compiled under NS.
5145 * fontset.c: When compiling under NS, include nsterm.h.
5146 (fontset_from_font): Autoconstruct fontset under NS.
5147 * frame.c (various): Under NS, include nsterm.h, add Qns window system
5148 symbol, document and use it.
5149 (do_switch_frame): When for_deletion under Cocoa, add
5150 Fraise_frame(Qnil).
5151 (x_set_frame_parameters): Ensure font attribute changes are picked up.
5152 (x_get_arg): Allow "yes" and "no" as boolean values.
5153 (syms_of_frame): Declare Qns. Init Vdefault_frame_scroll_bars to
5154 Qright under Cocoa.
5155 (focus-follows-mouse): Default to 0 under NS.
5156 * frame.h (enum output_method): Add output_ns.
5157 (external_tool_bar, external_menu_bar, FRAME_EXTERNAL_TOOLBAR)
5158 (FRAME_EXTERNAL_MENU_BAR): Use under NS.
5159 (FRAME_WINDOW_P): NS-specific definition.
5160 * fringe.c (max_used_fringe_bitmap): Make public.
5161 * getloadavg.c (mach/mach.h): Include it under NeXT descendant OS's.
5162 (getloadavg): Use NeXT code under descendant OS's.
5163 * image.c (includes and header section, x_create_bitmap_from_data)
5164 (x_create_bitmap_from_file, free_bitmap_record, image_background)
5165 (image_background_transparent, x_clear_image_1)
5166 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
5167 (Create_Pixmap_From_Bitmap_Data, xpm_load_image, lookup_rgb_color)
5168 (x_to_xcolors, x_from_xcolors, x_disable_image)
5169 (x_build_heuristic_mask, syms_of_image): Add NS support parallel to
5170 other GUIs, including XPM support using code originally written for
5171 Carbon GUI.
5172 (png_load, jpeg_load, tiff_load, gif_load): Add implementations
5173 using NS API.
5174 (image_ascent): Use font metrics macros instead of direct struct field
5175 access.
5176 * keyboard.c (includes): Add nsterm.h when compiling under NS.
5177 (kbd_buffer_get_event): Handle NS as other GUI windowing systems.
5178 Also, handle NS as GTK for menu bar purposes.
5179 (make_lispy_event): Handle NS as other GUI windowing systems, and as X
5180 toolkit where they differ.
5181 (parse_menu_item): Prefer keybindings using 'super' modifier. Also,
5182 use cachelist, still needed under NS.
5183 * keyboard.h (ENCODE_MENU_STRING, XtPointer, Boolean): Handle as NTGUI.
5184 (struct widget_value): Define it here for menu.c.
5185 * keymap.c (includes): Include modifier internals.
5186 (lisp_to_mod, modifier_sequence_p): New functions, compiled only under
5187 NS.
5188 (where_is_internal, Fwhere_is_internal): When compiled under NS, add
5189 support for preferring sequences using certain modifiers, specified by
5190 the FIRSTONLY argument.
5191 * lisp.h (hash_remove): Rename to avoid name clash when compiling
5192 under NS GNUstep implementation.
5193 (USE_LSB_TAG): Use it under Cocoa when compiling under NS.
5194 * lread.c (init_lread): Treat NS as HAVE_CARBON for turn_off_warning.
5195 * menu.c: Include nsterm.h under NS.
5196 (single_menu_item, parse_single_submenu, xmalloc_widget_value)
5197 (free_menubar_widget_tree_value, update_submenu_strings)
5198 (find_and_call_menu_selection): Treat NS as X and NT.
5199 (find_and_return_menu_selection): New function, used for popup menus.
5200 * nsgui.h:
5201 * nsterm.h:
5202 * nsfns.m:
5203 * nsimage.m:
5204 * nsmenu.m:
5205 * nsselect.m:
5206 * nsterm.m: New files.
5207 * process.c (wait_reading_process_output): Under NS, call ns_select()
5208 instead of plain select().
5209 * syntax.c (char_quoted): Under NS, avoid a crash when called near
5210 beginning of buffer.
5211 * sysselect.h (init_process): Rename when compiling under Cocoa to
5212 avoid name conflict.
5213 * termhooks.h (display_info): Add ns_display_info to union.
5214 * terminal.c (Fterminal_live_p): Add ns to terminal types.
5215 * terminfo.c (UP, BC, PC): Don't declare when compiling under NS in
5216 COCOA environment.
5217 * unexnext.c: Update to work with mach API on Mac OS X, and to use new
5218 unexec() signature. (Note, this will dump, but the resulting file
5219 crashes; unexosx is used instead; keeping around for reference and
5220 possible aid in getting dump working under GNUstep.)
5221 * w32gui.h (button_type, widget_value): Remove definitions (now in
5222 keyboard.h).
5223 * window.c: Include nsterm.h when compiling under NS.
5224 * xdisp.c (includes): Include nsterm.h when compiling under NS.
5225 (set_frame_menubar, update_menu_bar, display_menu_bar): Handle NS as
5226 other GUI windowing systems.
5227 (update_tool_bar, redisplay_tool_bar, redisplay_window): Handle NS as
5228 GTK.
5229 (x_consider_frame_title): Under NS, set icon type and frame
5230 modified-state indicator; use ns_set_name_as_filename() when using
5231 formatted title.
5232 (update_window_cursor): Make public when compiling under NS.
5233 (display_hourglass_p, syms_of_xdisp, hourglass_shown_p)
5234 (hourglass_atimer, Vhourglass_delay
5235 * xfaces.c (header section, init_frame_faces, clear_font_table)
5236 (defined_color, unload_color, x_face_list_fonts)
5237 (prepare_face_for_display): Add NS support parallel to other GUIs.
5238 Emulate GCs like other non-X GUIs.
5239 (split_font_name): Don't lowercase font name under NS.
5240 (merge_face_ref, Finternal_set_lisp_face_attribute): Support stippling
5241 under NS.
5242 * s/darwin.h: Add support for compilation under NS.
5243
52442008-07-15 Jason Rumney <jasonr@gnu.org>
5245
5246 * w32fns.c (Fx_create_frame): Remove duplicate unwind_protect.
5247 (w32_show_hourglass): Rename from show_hourglass.
5248 (w32_hide_hourglass): Rename from hide_hourglass.
5249 (DEFAULT_HOURGLASS_DELAY): Revert from last change.
5250 (Vhourglass_delay): Declare extern.
5251 (hourglass_started): Remove.
5252
5253 * xdisp.c (Vhourglass_delay): Remove static.
5254 (hourglass_started, start_hourglass, cancel_hourglass):
5255 Don't include these versions on WINDOWSNT.
5256
52572008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
5258
5259 * dispextern.h (hourglass_shown_p, hourglass_atimer): New extern
5260 variables (formerly in xfns.c).
5261 (show_hourglass, hide_hourglass): New prototypes (same).
5262 * xdisp.c (display_hourglass_p, hourglass_shown_p, hourglass_atimer)
5263 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY): New variables (formerly
5264 in xfns.c).
5265 (syms_of_xdisp): Declare/initialize display-hourglass,
5266 hourglass-delay. Initialize hourglass_atimer, hourglass_shown_p.
5267 (hourglass_started, start_hourglass, cancel_hourglass): New functions,
5268 formerly in xfns.c.
5269 * xfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
5270 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
5271 (start_hourglass, cancel_hourglass): Remove.
5272 (show_hourglass, hide_hourglass): Remove prototypes and static
5273 modifiers.
5274 (syms_of_xfns): Remove display-hourglass, hourglass-delay,
5275 hourglass_atimer, hourglass_shown_p declaration/initialization.
5276 * macfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
5277 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
5278 (start_hourglass, cancel_hourglass): Remove.
5279 (show_hourglass, hide_hourglass): Remove prototypes and static
5280 modifiers.
5281 (syms_of_macfns): Remove display-hourglass, hourglass-delay,
5282 hourglass_atimer, hourglass_shown_p declaration/initialization.
5283 * w32fns.c (display_hourglass_p, Vhourglass_delay)
5284 (DEFAULT_HOURGLASS_DELAY): Remove.
5285 (syms_of_w32fns): Remove display-hourglass, hourglass-delay,
5286 hourglass_shown_p declaration/initialization.
5287
52882008-07-14 Jason Rumney <jasonr@gnu.org>
5289
5290 * w32fns.c (w32_get_arg): Remove wrapper function.
5291 (w32_createwindow, x_icon, x_create_tip_frame): Use x_get_arg
5292 directly.
5293 (Fx_create_frame): Sync with xfns.c. Use x_get_arg directly.
5294
52952008-07-14 Kenichi Handa <handa@m17n.org>
5296
5297 * xfont.c (xfont_open): Add workaround for X's bug.
5298
52992008-07-14 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
5300
5301 * fontset.c: Include <stdio.h> unconditionally.
5302
53032008-07-13 Michael Albinus <michael.albinus@gmx.de>
5304
5305 * dbusbind.c (Fdbus_register_signal): Allow also signal arguments
5306 for filtering.
5307
53082008-07-13 Dan Nicolaescu <dann@ics.uci.edu>
5309
5310 * s/vms.h: Use __GNUC__ instead of _GNUC_.
5311
5312 * m/macppc.h:
5313 * m/alpha.h: Use GNU_LINUX instead of LINUX. Reorganize conditionals.
5314
5315 * m/ibms390x.h (XINT, XUINT): Don't define, same as the default
5316 (SPECIAL_EMACS_INT):
5317 * m/ia64.h (SPECIAL_EMACS_INT):
5318 * m/amdx86-64.h (SPECIAL_EMACS_INT):
5319 * s/gnu.h (NLIST_STRUCT):
5320 * s/aix4-2.h (X11R5_INHIBIT_I18N):
5321 * s/gnu-linux.h (LINUX):
5322 * s/msdos.h (HAVE_FACES):
5323 * s/ms-w32.h (HAVE_FACES): Don't define, unused.
5324
5325 * systty.h:
5326 * sysdep.c (setup_pty): Don't depend on SYSV_PTYS, it is not used
5327 anymore.
5328
53292008-07-12 Dan Nicolaescu <dann@ics.uci.edu>
5330
5331 * syswait.h: Remove old if 0 code. Do not define WAITTYPE, it was
5332 always defined as int.
5333
5334 * s/netbsd.h (HAVE_UNION_WAIT, HAVE_WAIT_HEADER, WAIT_USE_INT):
5335 * s/gnu.h (HAVE_WAIT_HEADER, WAIT_USE_INT, HAVE_UNION_WAIT):
5336 * s/gnu-linux.h (HAVE_WAIT_HEADER):
5337 * s/freebsd.h (HAVE_WAIT_HEADER):
5338 * s/bsd-common.h (HAVE_UNION_WAIT):
5339 * s/aix4-2.h (HAVE_WAIT_HEADER):
5340 * m/mips.h (HAVE_UNION_WAIT):
5341 * s/usg5-4.h (HAVE_WAIT_HEADER, WAITTYPE): Do not define, not used.
5342 (COFF, static): Do not define, they are undefined later in the file.
5343
5344 * process.c (update_status): Don't use a union.
5345 (status_convert):
5346 (sigchld_handler): Use int instead of WAITTYPE.
5347
53482008-07-12 Chong Yidong <cyd@stupidchicken.com>
5349
5350 * indent.c (Fvertical_motion): Restore hscroll before moving to
5351 goal column.
5352
53532008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
5354
5355 * lisp.h: Remove left over code.
5356
53572008-07-11 Andreas Schwab <schwab@suse.de>
5358
5359 * lisp.h: Fix logic in last change.
5360
5361 * menu.h: New file.
5362 * menu.c: Include it.
5363 * xmenu.c: Likewise.
5364 * Makefile.in: Update dependencies.
5365
53662008-07-11 Kenichi Handa <handa@m17n.org>
5367
5368 * fontset.c (fontset_from_font): Cancel the previous change.
5369
53702008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
5371
5372 * lisp.h:
5373 * w32heap.c:
5374 * emacs.c:
5375 * alloc.c: Replace all references of NO_UNION_TYPE with
5376 USE_LISP_UNION_TYPE.
5377
5378 * m/xtensa.h (NO_UNION_TYPE):
5379 * m/vax.h (NO_UNION_TYPE):
5380 * m/template.h (NO_UNION_TYPE):
5381 * m/sparc.h (NO_UNION_TYPE):
5382 * m/mips.h (NO_UNION_TYPE):
5383 * m/macppc.h (NO_UNION_TYPE):
5384 * m/m68k.h (NO_UNION_TYPE):
5385 * m/iris4d.h (NO_UNION_TYPE):
5386 * m/intel386.h (NO_UNION_TYPE):
5387 * m/ibms390x.h (NO_UNION_TYPE):
5388 * m/ibms390.h (NO_UNION_TYPE):
5389 * m/ibmrs6000.h (NO_UNION_TYPE):
5390 * m/ia64.h (NO_UNION_TYPE):
5391 * m/hp800.h (NO_UNION_TYPE):
5392 * m/arm.h (NO_UNION_TYPE):
5393 * m/amdx86-64.h (NO_UNION_TYPE):
5394 * m/alpha.h (NO_UNION_TYPE): Remove definition, all platform were
5395 defining it the same.
5396
53972008-07-10 Chong Yidong <cyd@stupidchicken.com>
5398
5399 * xdisp.c (move_it_to): Backtrack if past the edge of a wrapped line.
5400
54012008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
5402
5403 * fileio.c:
5404 * sysdep.c
5405 * systty.h:
5406 * m/ibmrs6000.h:
5407 * m/iris4d.h:
5408 * s/aix4-2.h:
5409 * s/freebsd.h:
5410 * s/gnu-linux.h:
5411 * s/hpux10-20.h:
5412 * s/hpux11.h:
5413 * s/netbsd.h:
5414 * s/sol2-3.h:
5415 * s/sol2-4.h:
5416 * s/sol2.h:
5417 * s/usg5-4.h:
5418 * s/vms.h: Remove references to unused variables.
5419
54202008-07-10 Andreas Schwab <schwab@suse.de>
5421
5422 * ftfont.c (ftfont_resolve_generic_family): Remove foundry from
5423 pattern before matching the generic family.
5424
54252008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
5426
5427 * unexec.c:
5428 * s/vms.h:
5429 * s/usg5-4-2.h:
5430 * s/sol2-5.h:
5431 * s/freebsd.h:
5432 * s/darwin.h: Remove dead code.
5433
5434 * m/template.h:
5435 * m/sparc.h:
5436 * m/mips.h:
5437 * m/m68k.h:
5438 * m/iris4d.h:
5439 * m/intel386.h:
5440 * m/ibms390x.h:
5441 * m/ibms390.h:
5442 * m/ia64.h:
5443 * m/hp800.h:
5444 * m/arm.h:
5445 * m/amdx86-64.h: Remove dead code and references to unused
5446 and compiler defined symbols.
5447
5448 * unexmips.c:
5449 * unexelf.c: Remove references to desupported systems.
5450
5451 * m/powermac.h: Remove file, it is now identical to m/macppc.h.
5452
5453 * m/powermac.h: Remove boilerplate comments.
5454 (NO_REMAP): Remove unused definition.
5455
5456 * m/macppc.h (UNEXEC, NO_TERMIO): Don't define, the s/ files
5457 define them.
5458
54592008-07-10 Kenichi Handa <handa@m17n.org>
5460
5461 * xfont.c (xfont_open): Log the reason of failure.
5462
54632008-07-09 Stefan Monnier <monnier@iro.umontreal.ca>
5464
5465 * fontset.c (fontset_get_font_group):
5466 * font.c (font_check_otf): Specify argument types.
5467
54682008-07-09 Kenichi Handa <handa@m17n.org>
5469
5470 * coding.c (detect_coding_utf_8): Set detect_info->found only when
5471 non-ASCII char is found.
5472
5473 * fontset.c (fontset_compare_rfontdef): Fix plus/minus.
5474 (reorder_font_vector): Change the arg preferred_family to font.
5475 Prefer the spec matching with font.
5476 (fontset_get_font_group): New function.
5477 (fontset_find_font): Change the format of an element of a realized
5478 fontset. Use fontset_get_font_group.
5479 (fontset_font): Try the current fontset, the default fontset, the
5480 fallbacks of the current fontset, and the fallbacks of the default
5481 fontset in this order.
5482 (face_for_char): Delete the shortcut to use the current font.
5483 (fontset_from_font): Don't set fonts for Latin in the fontset.
5484
5485 * font.h (font_make_object, font_match_p): Adjust prototypes.
5486
5487 * ftfont.h [FT_BDF_H]: Include FT_BDF_H.
5488
5489 * font.c (font_make_object): New arg entity and pixelsize.
5490 (font_check_otf_features, font_check_otf): New functions.
5491 (font_match_p): Check :lang, :script, and :otf properties.
5492
5493 * xfont.c (xfont_open): Adjust it for the change of
5494 font_make_object.
5495 (xfont_text_extents): Fix initial setting of metrics.
5496
5497 * ftfont.c (struct ftfont_info): New member index, delete member
5498 fc_charset_idx. Make the member order compatible with struct
5499 xftfont_info.
5500 (fc_charset_table): Change charset names to registry names.
5501 (ftfont_pattern_entity): Delete the args registry and
5502 fc_charset_idx. Change the value of :font-entity property
5503 to (FONTNAME . INDEX). Always set :registry property to
5504 `iso10646-1'.
5505 (struct ftfont_cache_data): New struct.
5506 (ftfont_lookup_cache): New arg for_face.
5507 (ftfont_get_fc_charset, ftfont_get_otf): New functions.
5508 (ftfont_driver): Set the member otf_capability.
5509 (ftfont_get_charset): Adjust it for the change of
5510 fc_charset_table.
5511 (OTF_TAG_SYM): New macro.
5512 (ftfont_spec_pattern): Delete the arg fc_charset_idx. Adjust it
5513 for the change of fc_charset_table.
5514 (ftfont_list): Adjust it for the change of ftfont_spec_pattern and
5515 ftfont_pattern_entity. Add FC_INDEX to objset.
5516 (ftfont_match): Adjust it for the change of ftfont_spec_pattern
5517 and ftfont_pattern_entity.
5518 (ftfont_open): Adjust it for the change of ftfont_lookup_cache,
5519 font_make_object, struct ftfont_info.
5520 (ftfont_has_char): Use ftfont_get_fc_charset.
5521 (ftfont_otf_features, ftfont_otf_capability): New functions.
5522 (ftfont_shape): Use ftfont_get_otf.
5523 (ftfont_text_extents): Fix initial setting of metrics.
5524
5525 * xftfont.c (struct xftfont_info): New member ft_size. Make the
5526 member order compatible with struct ftfont_info.
5527 (xftfont_open): Add FC_CHARSET to the pattern. Set
5528 xftfont_info->ft_size. Don't unlock the face. Check BDF
5529 properties if appropriate.
5530 (xftfont_close): Unlock the face.
5531 (xftfont_anchor_point, xftfont_shape): Deleted.
5532 (syms_of_xftfont): Don't set members anchor_point and shape of
5533 xftfont_driver.
5534
5535 * w32uniscribe.c (uniscribe_open): Adjust it for the change of
5536 font_make_object.
5537
5538 * w32font.c (w32font_open): Adjust it for the change of
5539 font_make_object.
5540 (w32font_open_internal): Don't set properties of font_object here.
5541
55422008-07-08 Chong Yidong <cyd@stupidchicken.com>
5543
5544 * macfns.c (x_create_tip_frame):
5545 * w32fns.c (x_create_tip_frame):
5546 * xfns.c (x_create_tip_frame): Pass parameter argument to
5547 face-set-after-frame-default.
5548
5549 * xfaces.c (Finternal_merge_in_global_face): Save merged
5550 attributes for the default face back into the face vector.
5551
55522008-07-08 Andreas Schwab <schwab@suse.de>
5553
5554 * fontset.h: Declare fontset_from_font. Don't declare
5555 new_fontset_from_font and fontset_from_font_name.
5556 * xterm.c: Include "fontset.h".
5557 * Makefile.in (xterm.o): Update dependencies.
5558
55592008-07-08 Glenn Morris <rgm@gnu.org>
5560
5561 * m/sparc.h: Define __sparc__ rather than sparc. (Bug#507.)
5562 * alloc.c, ecrt0.c: Use __sparc__ rather than sparc.
5563
55642008-07-07 Chong Yidong <cyd@stupidchicken.com>
5565
5566 * frame.c (Qinhibit_face_set_after_frame_default): Var deleted.
5567 (x_set_frame_parameters): Don't bind it.
5568
55692008-07-07 Juanma Barranquero <lekktu@gmail.com>
5570
5571 * w32fns.c (map_w32_filename): Declare extern.
5572
55732008-07-07 Jason Rumney <jasonr@gnu.org>
5574
5575 * w32term.c (WS_EX_LAYERED): Define if not already.
5576
55772008-07-06 Chong Yidong <cyd@stupidchicken.com>
5578
5579 * xfaces.c (set_font_frame_param): Don't try to set the font
5580 parameter if it is still unspecified in the lface.
5581
55822008-07-05 Chong Yidong <cyd@stupidchicken.com>
5583
5584 * xfaces.c (Finternal_merge_in_global_face): Don't realize default
5585 face if it didn't already exist.
5586
5587 * xdisp.c (try_window_id): Give up if word-wrapping is on.
5588
55892008-07-05 Andreas Schwab <schwab@suse.de>
5590
5591 * xdisp.c (get_it_property): Move out of HAVE_WINDOW_SYSTEM section.
5592
55932008-07-05 Chong Yidong <cyd@stupidchicken.com>
5594
5595 * xdisp.c (IT_OVERFLOW_NEWLINE_INTO_FRINGE): Turn it off if
5596 word-wrapping.
5597 (IT_DISPLAYING_WHITESPACE): New macro.
5598 (move_it_in_display_line_to): Handle MOVE_TO_X requests properly
5599 when word-wrapping. Simplify word-wrapping logic. Use correct
5600 pixel positions when saving copies of the iterator.
5601 (display_line): Use proper wrap point if the last character on a
5602 line was preceded by whitespace.
5603
56042008-07-04 Stefan Monnier <monnier@iro.umontreal.ca>
5605
5606 * Makefile.in (${etc}DOC): Depend on ${lisp} rather than ${shortlisp}.
5607
56082008-07-04 Kenichi Handa <handa@m17n.org>
5609
5610 * fns.c (Fstring_to_unibyte): Delete the arg ACCEPT-LATIN-1.
5611
5612 * lisp.h: EXFUN adjusted for the change of Fstring_to_unibyte.
5613
56142008-07-02 Jason Rumney <jasonr@gnu.org>
5615
5616 * xfns.c (syms_of_xfns): Only define x-select-font when both
2ae37cf0 5617 HAVE_FREETYPE and USE_GTK.
aac0c6e3
MR
5618
5619 * xdisp.c (next_element_from_display_vector): Move assignment out
5620 of if statement.
5621
56222008-07-02 Toru Tsuneyoshi <t_tuneyosi@hotmail.com>
5623
5624 * lisp.h (Qdelete_file, Qdelete_directory): Declare extern.
5625
5626 * fileio.c (delete_by_moving_to_trash, Qmove_file_to_trash): New vars.
5627 (syms_of_fileio): Initialize and export them.
5628 (Fdelete_directory, Fdelete_file): Optionally delete via trash.
5629
5630 * w32fns.c (FOF_NO_CONNECTED_ELEMENTS): Define if not already.
5631 (Fsystem_move_file_to_trash): New function.
5632 (syms_of_w32fns): Export it to lisp.
5633
56342008-07-01 Jason Rumney <jasonr@gnu.org>
5635
5636 * w32font.c (w32font_text_extents): Don't count overhang as part
5637 of width.
5638
56392008-06-30 Miles Bader <miles@gnu.org>
5640
5641 * dispextern.h (struct glyph, struct it, struct iterator_stack_entry):
5642 Add `avoid_cursor_p' field.
5643
5644 * xdisp.c (push_it, pop_it): Save/restore avoid_cursor_p field.
5645 (set_cursor_from_row): Skip glyphs with avoid_cursor_p set.
5646 (append_glyph, append_composite_glyph, produce_image_glyph)
5647 (append_stretch_glyph): Initialize avoid_cursor_p.
5648 (get_it_property): Rename from `get_line_height_property'.
5649 (x_produce_glyphs): Use get_it_property.
5650 (handle_line_prefix, push_display_prop): New functions.
5651 (display_line, move_it_in_display_line_to): Handle line/wrap prefixes.
5652 (Vwrap_prefix, Qwrap_prefix, Vline_prefix, Qline_prefix):
5653 New variables.
5654 (syms_of_xdisp): Initialize them.
5655
56562008-06-30 Kenichi Handa <handa@m17n.org>
5657
5658 * xftfont.c (xftfont_open): Don't call FcConfigSubstitute and
5659 XftDefaultSubstitute (they are called in XftFontMatch).
5660 (xftfont_open): Fix args to ftfont_font_format.
5661
5662 * ftfont.c (fc_charset_table): New member lang.
5663 (ftfont_resolve_generic_family): New arg pattern.
60612c8f 5664 (ftfont_spec_pattern): Check fc_charset_table[]->lang.
aac0c6e3
MR
5665 (ftfont_list): Call ftfont_resolve_generic_family with `pattern'.
5666 (ftfont_open): Fix args to ftfont_font_format.
5667 (ftfont_font_format): New arg filename.
5668
56692008-06-30 Chong Yidong <cyd@stupidchicken.com>
5670
5671 * xfaces.c (Finternal_merge_in_global_face): If default face was
5672 modified, realize it again. Update the font face attribute.
5673
56742008-06-29 Jason Rumney <jasonr@gnu.org>
5675
5676 * w32term.c (x_set_frame_alpha): Fix logic.
5677
56782008-06-29 Kenichi Handa <handa@m17n.org>
5679
5680 * fontset.c (Finternal_char_font): Return font-object instead of
5681 font-name.
5682
5683 * composite.c (get_composition_id): Fix the width calculation for TAB.
5684
56852008-06-29 Stefan Monnier <monnier@iro.umontreal.ca>
5686
5687 * indent.c (Fvertical_motion): Properly handle float column arg.
5688
56892008-06-28 Jason Rumney <jasonr@gnu.org>
5690
5691 * w32term.c (pfnGetFontUnicodeRanges): Remove unused function pointer.
5692 (pfnSetLayeredWindowAttributes): New function pointer.
5693 (w32_initialize): Initialize it when supported.
5694 (x_set_frame_alpha): New function.
5695
5696 * w32fns.c (Fx_create_frame): Initialize frame parameter `alpha'.
5697 (w32_frame_parm_handlers): Set alpha handler.
5698
5699 * frame.c (x_set_alpha) [HAVE_NTGUI]: Call x_set_frame_alpha.
5700
57012008-06-27 Jason Rumney <jasonr@gnu.org>
5702
5703 * w32fns.c (x_to_w32_font, w32_to_x_font, x_to_w32_weight)
5704 (w32_to_x_weight, w32_to_all_x_charsets): Remove obsolete functions.
5705 (w32_to_x_charset, x_to_w32_charset)
5706 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
5707 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
5708 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
5709 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
5710 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
5711 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
5712 (Qw32_charset_mac, Vw32_charset_info_alist): Move to w32font.c.
5713 (Qw32_charset_unicode): Remove.
5714 (syms_of_w32fns): Update for above changes.
5715
5716 * w32font.c (w32_to_x_charset, x_to_w32_charset)
5717 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
5718 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
5719 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
5720 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
5721 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
5722 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
5723 (Qw32_charset_mac, Vw32_charset_info_alist): Move from w32fns.c.
5724 (syms_of_w32font): Update for above changes.
5725
57262008-06-27 Dan Nicolaescu <dann@ics.uci.edu>
5727
5728 * s/usg5-4.h: Fix previous change: keep the correct branch of a
5729 removed #if.
5730 (USG_SHARED_LIBRARIES): Remove duplicate definition.
5731
57322008-06-26 Juanma Barranquero <lekktu@gmail.com>
5733 Eli Zaretskii <eliz@gnu.org>
5734
5735 * makefile.w32-in (LOCAL_FLAGS):
5736 Don't include WINDOWSNT, DOS_NT and _UCHAR_T.
5737
5738 * sysdep.c (_spawnlp, _getpid):
5739 Declare with explicit _cdecl instead of _CRTAPI1.
5740
5741 * editfns.c (Fget_internal_run_time):
5742 Check for WINDOWSNT with #ifdef, not #if.
5743
57442008-06-26 Jason Rumney <jasonr@gnu.org>
5745
5746 * w32font.h (FONT_HANDLE, FONT_TEXTMETRIC): New macros.
5747
5748 * w32term.c (x_draw_glyph_string_foreground)
5749 (x_draw_composite_glyph_string_foreground): Sync with xterm.c.
5750 Use FONT_HANDLE macro.
5751 (x_draw_glyph_string): Use FONT_TEXTMETRIC macro.
5752
5753 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
5754 (uniscribe_encode_char): Use FONT_HANDLE macro.
5755
5756 * w32font.c (Fx_select_font): Use FONT_HANDLE macro.
5757 (w32font_text_extents): Use precast w32_font.
5758 (w32font_close): Free cached metrics.
5759 (w32font_open_internal): Allocate space for name on stack.
5760
57612008-06-26 Chong Yidong <cyd@stupidchicken.com>
5762
5763 * xdisp.c (extend_face_to_end_of_line): Fix last change.
5764
57652008-06-26 Jason Rumney <jasonr@gnu.org>
5766
5767 * w32term.h (FONT_AVG_WIDTH): Remove obsolete macro.
5768 (CP_8BIT, CP_UNICODE, CP_UNKNOWN): Remove obsolete constants.
5769
57702008-06-26 Juanma Barranquero <lekktu@gmail.com>
5771
5772 * Makefile.in (SOME_MACHINE_OBJECTS): Remove w32bdf.o.
5773
57742008-06-26 Jason Rumney <jasonr@gnu.org>
5775
5776 * w32bdf.c, w32bdf.h: Remove obsolete files.
5777
5778 * makefile.w32-in: Remove refs to w32bdf.h and w32bdf.c.
5779
5780 * w32gui.h: Don't include w32bdf.h.
5781 (XCharStruct, enum w32_char_font_type, W32FontStruct):
5782 Remove obsolete font support.
5783
5784 * w32font.h (struct w32font_info): Remove compat_w32_font.
5785 Add hfont member.
5786 (FONT_COMPAT): Remove obsolete macro.
5787
5788 * w32font.c (w32font_close): Remove compat code. Delete hfont member.
5789 (w32font_encode_char, w32font_text_extents): Use new hfont member.
5790 (w32font_open_internal): Remove compat code. Set new hfont member.
5791 (Fx_select_font): Use new hfont member.
5792
5793 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
5794 (uniscribe_encode_char): Use new hfont member.
5795
5796 * w32term.c (x_draw_glyph_string_foreground)
5797 (x_draw_composite_glyph_string_foreground): Use new hfont member.
5798 (x_draw_glyph_string): Use metrics in w32font_info.
5799
58002008-06-26 Kenichi Handa <handa@m17n.org>
5801
5802 * xdisp.c (handle_auto_composed_prop): Fix for the terminal case.
5803
58042008-06-26 Dan Nicolaescu <dann@ics.uci.edu>
5805
5806 * unexnext.c:
5807 * m/ews4800.h:
5808 * m/hp9000s300.h:
5809 * m/ibm370aix.h:
5810 * m/mips-siemens.h:
5811 * m/ncr386.h:
5812 * m/next.h:
5813 * m/pmax.h:
5814 * m/powerpcle.h:
5815 * m/tandem-s2.h:
5816 * s/386bsd.h:
5817 * s/bsd386.h:
5818 * s/bsd4-1.h:
5819 * s/bsd4-2.h:
5820 * s/bsdos2-1.h:
5821 * s/bsdos2.h:
5822 * s/bsdos3.h:
5823 * s/bsdos4.h:
5824 * s/nextstep.h:
5825 * s/ultrix4-3.h:
5826 * s/usg5-0.h:
5827 * s/usg5-2-2.h:
5828 * s/usg5-2.h:
5829 * s/usg5-4-3.h:
5830 * s/ux4800.h:
5831 * s/uxpds.h:
5832 * s/uxpv.h: Remove support for obsolete systems.
5833 * s/hpux.h, s/hpux10.h, s/hpux8.h, s/hpux9.h, s/hpux9shr.h:
8f3a3ac2 5834 Remove, insert contents in s/hpux10-20.h.
aac0c6e3
MR
5835 * s/aix3-1.h, s/aix3-2-5.h, s/aix3-2.h, s/aix4-1.h, s/aix4.h:
5836 Remove, insert contents in s/aix4-2.h.
5837 * s/usg5-3.h: Remove, insert contents in s/usg5-4.h.
5838 * s/bsd4-3.h: Rename to ...
5839 * s/bsd-common.h: ... this.
5840 * data.c:
5841 * doc.c:
5842 * ecrt0.c:
5843 * emacs.c:
5844 * fileio.c:
5845 * floatfns.c:
5846 * keyboard.c:
5847 * mem-limits.h:
5848 * print.c:
5849 * process.c:
5850 * sysdep.c:
5851 * syssignal.h:
5852 * systty.h:
5853 * syswait.h:
5854 * term.c:
5855 * unexec.c:
5856 * unexelf.c:
5857 * unexhp9k800.c:
5858 * m/hp800.h:
5859 * m/ibmrs6000.h:
5860 * m/mips.h:
5861 * m/vax.h:
5862 * s/darwin.h:
5863 * s/freebsd.h:
5864 * s/gnu.h:
5865 * s/ms-w32.h:
5866 * s/msdos.h:
5867 * s/netbsd.h:
5868 * s/template.h: Remove references to obsolete variables.
5869
5870 * Makefile.in: Add dependencies for all unexec files.
5871 (admindir): Remove unused variable.
5872 (UNEXEC_SRC): Remove references.
5873
58742008-06-25 Chong Yidong <cyd@stupidchicken.com>
5875
5876 * xfns.c (x_default_font_parameter): If Xft is available, first
5877 try Monospace-12 for the default font.
5878
58792008-06-25 Jason Rumney <jasonr@gnu.org>
5880
5881 * xdisp.c (get_glyph_face_and_encoding): Encode invalid glyphs as 0.
5882
58832008-06-25 Stefan Monnier <monnier@iro.umontreal.ca>
5884
5885 * bytecode.c (Fbyte_code): Disable debugging code that doesn't compile.
5886
5887 * buffer.c (syms_of_buffer): Remove default-word-wrap.
5888
58892008-06-25 Juanma Barranquero <lekktu@gmail.com>
5890
5891 * xdisp.c (syms_of_xdisp) <truncate-partial-width-windows>: Doc fix.
5892 <scroll-conservatively>: Fix typo in docstring.
5893
5894 * xselect.c (Fx_send_client_event): Doc fix.
5895
58962008-06-25 Kenichi Handa <handa@m17n.org>
5897
5898 * xfaces.c (Fx_list_fonts): Call Flist_fonts with the arg PREFER.
5899
5900 * font.c (font_parse_fcname): Remove unused variables.
5901 (font_sort_entites): Delete the arg SPEC. Caller changed.
5902 Fix for the case of ! best_only.
5903 (font_delete_unmatched): Check DPI and AVGWIDTH too.
5904
5905 * lisp.h (Fstring_to_unibyte): EXFUN it.
5906
5907 * character.h (str_to_unibyte): Extern it.
5908
5909 * character.c (str_to_unibyte): New function.
5910
5911 * fns.c (Fstring_to_unibyte): New function.
5912 (syms_of_fns): Defsubr it.
5913
59142008-06-24 Kenichi Handa <handa@m17n.org>
5915
5916 * font.c (font_score): Even if the PIXEL_SIZE is the same, check
5917 DPI too.
5918 (font_sort_entites): Setup prefer_prop[FONT_DPI_INDEX] too.
5919
59202008-06-24 Andreas Schwab <schwab@suse.de>
5921
5922 * Makefile.in (${lispsource}loaddefs.el): Rename from
5923 ../lisp/loaddefs.el.
5924 (bootstrap-clean): Do what distclean does but don't remove
5925 Makefile.
5926 (distclean): Depend on bootstrap-clean and remove Makefile.
5927
59282008-06-24 Chong Yidong <cyd@stupidchicken.com>
5929
5930 * buffer.h (struct buffer): New member word_wrap.
5931
5932 * buffer.c (syms_of_buffer): New variables default-word-wrap and
5933 word-wrap.
5934 (init_buffer_once): Initialize them.
5935
5936 * dispextern.h (struct it): Replace bool truncate_lines_p with a
5937 line_wrap enum possessing three possible values.
5938
5939 * termopts.h: Replace truncate_partial_width_windows with
5940 Vtruncate_partial_width_windows.
5941
5942 * dispnew.c (direct_output_for_insert): Avoid direct output when
5943 inserting a space with word wrap on.
5944
5945 * indent.c (compute_motion): Obey integer values of
5946 truncate-partial-width-windows.
5947
5948 * xdisp.c (Vtruncate_partial_width_windows): New Lisp_Object,
5949 replacing truncate_partial_width_windows.
5950 (init_iterator): If Vtruncate_partial_width_windows is an integer,
5951 truncate only if the window width is below that integer.
5952 (start_display, resize_mini_window, produce_stretch_glyph)
5953 (display_string, move_it_in_display_line_to): Use line_wrap.
5954 (back_to_previous_visible_line_start, reseat_1): Reset
5955 string_from_display_prop_p.
5956 (display_line): Extend default face to end of line when wrapping.
5957
59582008-06-24 Kim F. Storm <storm@cua.dk>
5959
5960 * xdisp.c (display_line, move_it_in_display_line_to): Add ability
5961 to wrap continued lines at word boundaries.
5962
59632008-06-24 Jason Rumney <jasonr@gnu.org>
5964
5965 * font.c (Ffont_face_attributes): Multiply pixel size before point
5966 conversion to avoid multiplying rounding error.
5967
59682008-06-23 Jason Rumney <jasonr@gnu.org>
5969
5970 * w32term.c (x_draw_glyph_string_background)
5971 (x_draw_glyph_string): Remove old bdf font code.
5972
5973 * w32term.h (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): Remove.
5974
59752008-06-22 Kenichi Handa <handa@m17n.org>
5976
5977 * font.c (font_find_for_lface): Try the adstyle specified in
5978 the property of LFACE_FONT of LFACE (if any).
5979
59802008-06-21 Seiji Zenitani <zenitani@mac.com>
5981 Ryo Yoshitake <ryo@shiftmode.net>
5982
5983 * xterm.c (x_set_frame_alpha): Add x_catch_errors for bug#437.
5984
59852008-06-22 Stefan Monnier <monnier@iro.umontreal.ca>
5986
5987 * Makefile.in (${lisp} ${SOME_MACHINE_LISP}, ../lisp/loaddefs.el):
5988 Use $(BOOTSTRAPEMACS) rather than witness-emacs.
5989 (bootstrap-emacs${EXEEXT}): Merge witness-emacs into it.
5990 (witness-emacs): Remove.
5991 (lisp, shortlisp): Move loaddefs.el earlier.
5992 (mostlyclean): Forget about witness-emacs.
5993
59942008-06-22 Glenn Morris <rgm@gnu.org>
5995
5996 * Makefile.in (witness-emacs): Depend on temacs${EXEEXT}.
5997 (.SUFFIXES): Declare .el.elc as a suffix rule, for non-GNU makes.
5998
59992008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
6000
6001 * Makefile.in (PRECOMP): Remove.
6002 (${lisp} ${SOME_MACHINE_LISP}): Remove pseudo dependency on PRECOMP.
6003 (witness-emacs): Run `compile-first'.
6004 (.el.elc): Use the new compile-onefile target.
6005
60062008-06-21 Kenichi Handa <handa@m17n.org>
6007
6008 * xftfont.c (xftfont_open): Handle QCembolden only when
6009 FC_EMBOLDEN is defined.
6010
60112008-06-21 Andreas Schwab <schwab@suse.de>
6012
6013 * Makefile.in (witness-emacs): Use ../lisp, not $(lispsource).
6014 (.el.elc): Likewise.
6015
60162008-06-21 Miles Bader <miles@gnu.org>
6017
6018 * Makefile.in (../lisp/loaddefs.el): Build autoloads in the lisp
6019 build dir, not the lisp source dir.
6020
60212008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
6022
6023 * Makefile.in (emacs${EXEEXT}): Link the new emacs to bootstrap-emacs.
6024 (bootstrapclean): Remove.
6025 (.el.elc): New rule.
6026 (PRECOMP): New var.
6027 (../lisp/subdirs.el): Remove.
6028 (bootstrap-emacs${EXEEXT}): Remove subdirs.el and charpro.el dependency.
6029 (witness-emacs): New target.
6030 (mostlyclean): Remove witness-emacs as well.
6031 (../lisp/loaddefs.el, ${lisp} ${SOME_MACHINE_LISP}):
6032 Add witness-emacs dependency.
6033
60342008-06-20 Chong Yidong <cyd@stupidchicken.com>
6035
6036 * font.c (Ffont_face_attributes): Omit key-attribute pairs not
6037 defined by the font.
6038
60392008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
6040
6041 * Makefile.in (emacs${EXEEXT}): Depend on the machine-specific files.
6042 (bootstrap-clean): New target that keeps TAGS around.
6043 (../lisp/subdirs.el, ../lisp/loaddefs.el): New targets.
6044 (bootstrap-emacs${EXEEXT}): Depend on subdirs.el.
6045
60462008-06-20 Jason Rumney <jasonr@gnu.org>
6047
6048 * w32fns.c, w32term.c, w32term.h, w32gui.h [OLD_FONT]:
6049 Remove obsolete font code.
6050
6051 * w32font.c (font_matches_spec): Use csb bitfield from font signature
6052 to determine language support.
6053
60542008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
6055
6056 * sysdep.c (cfsetspeed): New fun extracted from the code.
6057 (cfmakeraw): Move before first use.
6058
60592008-06-20 Angelo Graziosi <angelo.graziosi@alice.it> (tiny change)
6060
6061 * sysdep.c (cfmakeraw): Provide fallback implementation.
6062 (serial_configure): Provide fallback implementation of cfsetspeed.
6063
60642008-06-20 Kenichi Handa <handa@m17n.org>
6065
6066 * xftfont.c (xftfont_open): Add FOUNDRY, SPACING, DPI, SCALABLE to
6067 the pattern.
6068
6069 * fontset.c (fontset_from_font): Copy font_spec before changing
6070 the elements.
6071
6072 * xfns.c (x_default_font_parameter): Try "monospace-12" too.
6073
60742008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
6075
6076 * w32fns.c, xfns.c (x_default_font_parameter): Only set `font-param'
6077 for explicit `font' parameters.
6078
6079 * frame.c (x_set_font): Remove unexplained call to fix inf-recursion.
6080
60812008-06-19 Kenichi Handa <handa@m17n.org>
6082
6083 * frame.c: Include <ctype.h>.
6084 (x_set_font_backend): Allow spacing characters in the X resource
6085 for FontBackend.
6086
60872008-06-19 Stefan Monnier <monnier@iro.umontreal.ca>
6088
6089 * w32fns.c, xfns.c (Qfont_param): New var.
6090 (syms_of_w32fns): Initialize it.
6091 (x_default_font_parameter): Record explicit `font' into
6092 `font-parameter'.
6093
60942008-06-18 Kenichi Handa <handa@m17n.org>
6095
6096 * font.c (font_parse_xlfd): Fix previous change.
6097 (font_parse_fcname): Don't use :fc-unknown-spec.
6098 (FRAME_X_DISPLAY_INFO): Be sure to have at least 1 pixel height.
6099 (Fcopy_font_spec): Preserve the order of elements in FONT_EXTRA.
6100 (font_add_log): Prepend the driver name to the resulting fonts.
6101
6102 * ftfont.c (ftfont_pattern_entity): New arg extra. Caller changed.
6103 (ftfont_spec_pattern): Don't check QCfc_unknown_spec and QCname.
6104 (ftfont_list) [FC_FONTFORMAT]: Include FC_FONTFORMAT in objset.
6105
6106 * xftfont.c (QChinting , QCautohint, QChintstyle, QCrgba)
6107 (QCembolden): New variables.
6108 (syms_of_xftfont): DEFSYM them.
6109 (xftfont_open): Call XftFontMatch. Don't trust the result of
6110 XftTextExtents8 if the pixel_size is less than 5.
6111
61122008-06-18 Andreas Schwab <schwab@suse.de>
6113
6114 * font.c (Ffont_face_attributes): Only define if HAVE_WINDOW_SYSTEM.
6115 (syms_of_font): Only defsubr if HAVE_WINDOW_SYSTEM.
6116
61172008-06-18 Jason Rumney <jasonr@gnu.org>
6118
6119 * w32font.c (w32font_list, w32font_match): Add logging.
6120
6121 * w32uniscribe.c (uniscribe_list, uniscribe_match): Add logging.
6122
61232008-06-17 Chong Yidong <cyd@stupidchicken.com>
6124
6125 * font.c (font_parse_fcname): Store divider characters for
6126 unknown-spec list. For known key symbols, intern using correct
6127 symbol name.
6128
61292008-06-17 Kenichi Handa <handa@m17n.org>
6130
6131 * xfaces.c (realize_default_face): If the frame is not on window
6132 system, set the fontset of face to nil.
6133
61342008-06-17 Naohiro Aota <nao.aota@gmail.com> (tiny change)
6135
6136 * fontset.c (fontset_pattern_regexp): Escape some reg-expr characters.
6137
61382008-06-16 Juanma Barranquero <lekktu@gmail.com>
6139
6140 * dispextern.h (lookup_non_ascii_face, split_font_name_into_vector)
6141 (build_font_name_from_vector): Delete externs.
6142
6143 * xfaces.c (struct font_name): Don't declare.
6144
61452008-06-16 Stefan Monnier <monnier@iro.umontreal.ca>
6146
6147 * font.c (font_unparse_gtkname): Use EQ to compare Lisp_Objects.
6148
61492008-06-16 Chong Yidong <cyd@stupidchicken.com>
6150
6151 * font.c (font_parse_fcname): Fix handling of unknown-spec string.
6152
61532008-06-16 Juanma Barranquero <lekktu@gmail.com>
6154
6155 * font.c (Ffont_spec): Fix usage in docstring.
6156 (Ffont_face_attributes): Doc fix.
6157
61582008-06-16 Andreas Schwab <schwab@suse.de>
6159
6160 * font.c (Ffont_face_attributes): Fix definition.
6161
61622008-06-16 Jason Rumney <jasonr@gnu.org>
6163
6164 * font.h (font_style_symbolic_from_value): Remove.
6165
6166 * font.c (font_style_symbolic_from_value): Remove.
6167 (font_style_symbolic): Revert to pre 2008-06-13 version.
6168
6169 * w32font.c (w32_to_fc_weight): New function.
6170 (w32font_full_name, logfont_to_fcname): Use it.
6171
61722008-06-16 Kenichi Handa <handa@m17n.org>
6173
6174 * font.c (font_check_object): Delete it.
6175 (font_clear_cache): Check if a font-object is alive.
6176 (font_open_entity): Likewise. Set FONT_OBJLST_INDEX of a
6177 font-object to nil.
6178 (font_close_object): Don't check FONT_CLOSE_OBJECT.
6179 (font_at): Don't call font_check_object.
6180 (Ffont_get): Return a symbol for :weight, :slant, and :width.
6181
61822008-06-16 Katsumi Yamaoka <yamaoka@jpl.org>
6183
6184 * puresize.h (BASE_PURESIZE): Increase to 1230000.
6185
61862008-06-16 Chong Yidong <cyd@stupidchicken.com>
6187
6188 * font.c (font_parse_fcname): Correctly parse KEY=VAL values.
6189
61902008-06-15 Chong Yidong <cyd@stupidchicken.com>
6191
6192 * font.c (font_parse_fcname): Only one decimal point.
6193 (font_unparse_fcname): Handle data in family and foundry indices
6194 as symbols, not strings.
6195 (font_unparse_gtkname, Ffont_face_attributes): New functions.
6196
6197 * xfns.c (Fx_select_font): Give GTK font dialog the default font name.
6198
6199 * font.h (font_unparse_gtkname): Add prototype.
6200
62012008-06-15 Naohiro Aota <nao.aota@gmail.com> (tiny change)
6202
6203 * fontset.c (fontset_pattern_regexp): Escape `+' characters in pattern.
6204
62052008-06-15 Andreas Schwab <schwab@suse.de>
6206
6207 * font.c (font_update_drivers): Fix crash when no drivers match.
6208
62092008-06-15 Stefan Monnier <monnier@iro.umontreal.ca>
6210
6211 * xfns.c (Fx_create_frame): internal-border-width default to 0 for Gtk.
6212 * gtkutil.c (xg_create_frame_widgets): Don't set internal_border_width.
6213
62142008-06-14 Stefan Monnier <monnier@iro.umontreal.ca>
6215
6216 * xdisp.c (syms_of_xdisp): Default underline-minimum-offset to 1.
6217
62182008-06-13 Stefan Monnier <monnier@iro.umontreal.ca>
6219
6220 * process.c (Fserial_process_configure, Fprocess_send_eof):
6221 Use EQ to compare Lisp_Objects.
6222
62232008-06-13 Jason Rumney <jasonr@gnu.org>
6224
6225 * w32fns.c (Fw32_select_font): Remove old font API function.
6226
6227 * w32font.c (logfont_to_fcname): New function.
6228 (Fx_select_font): New font dialog function compatible with
6229 GTK/fontconfig version.
6230
6231 * font.c (font_style_symbolic_from_value): New function.
6232 (font_style_symbolic): Use it.
6233
6234 * font.h (font_style_symbolic_from_value): Declare new function.
6235
62362008-06-13 Juanma Barranquero <lekktu@gmail.com>
6237
6238 * font.c (syms_of_font) <font-weight-table, font-slant-table>:
6239 <font-width-table>: Fix typos in docstrings.
6240
62412008-06-13 Daniel Engeler <engeler@gmail.com>
6242
6243 These changes add serial port access.
6244 * process.c: Add HAVE_SERIAL.
6245 (Fdelete_process, Fprocess_status, Fset_process_buffer)
6246 (Fset_process_filter, Fset_process_sentinel, Fprocess_contact)
6247 (list_processes_1, select_wrapper, Fstop_process)
6248 (Fcontinue_process, Fprocess_send_eof, kill_buffer_processes)
6249 (status_notify): Modify to handle serial processes.
6250 [HAVE_SERIAL] (Fserial_process_configure)
6251 [HAVE_SERIAL] (make_serial_process_unwind, Fmake_serial_process):
6252 New functions.
6253 * process.h (struct Lisp_Process): Add `type'.
6254 * sysdep.c [HAVE_TERMIOS] (serial_open, serial_configure):
6255 New functions.
6256 * w32.c (_sys_read_ahead, sys_read, sys_write): Modify to handle
6257 serial ports.
b71ac3dd 6258 (serial_open, serial_configure): New functions.
aac0c6e3
MR
6259 * w32.h: Add FILE_SERIAL.
6260 (struct _child_process): Add ovl_read, ovl_write.
6261
62622008-06-13 Kenichi Handa <handa@m17n.org>
6263
6264 * dispextern.h (enum lface_attribute_index): New member
6265 LFACE_FOUNDRY_INDEX.
6266
6267 * font.c (font_score): Delete arg alternate_families. Check only
6268 weight, slant, width, and size. Ignore the difference of alias
6269 style symbols.
6270 (font_sort_entites): Adjust for the above change. Reflect the
6271 order of font-driver to scores.
6272 (font_list_entities): Don't check alternate_familes here.
6273 (font_clear_prop): Handle foundry.
6274 (font_update_lface): Don't parse "foundry-family" form here.
6275 Handle FONT_FOUNDRY_INDEX.
6276 (font_find_for_lface): Likewise. Handle alternate families here.
6277 If registry is nil, try iso8859-1 and ascii-0.
6278 (font_open_for_lface): Pay attention to size in ENTITY.
6279 (font_open_by_name): Simplify by calling font_load_for_lface.
6280 (free_font_driver_list): Delete it.
6281 (font_update_drivers): Preserve the order of backends.
6282 (syms_of_font): Setting of sort_shift_bits adjusted for the change
6283 of font_score and font_sort_entites.
6284 (font_update_sort_order): Likewise.
6285
6286 * xfaces.c (LFACE_FOUNDRY): New macro.
6287 (check_lface_attrs): Check foundry.
6288 (set_lface_from_font): Don't parse "FOUNDRY-FAMILY" form.
6289 (merge_face_vectors): Check foundry.
6290 (merge_face_ref): Likewise.
6291 (Finternal_set_lisp_face_attribute): Likewise.
6292 (x_update_menu_appearance): Likewise.
6293 (Finternal_get_lisp_face_attribute): Likewise.
6294 (lface_hash): Likewise.
6295 (lface_same_font_attributes_p): Likewise.
6296 (x_supports_face_attributes_p): Likewise.
6297 (tty_supports_face_attributes_p): Likewise.
6298 (Finternal_set_alternative_font_family_alist): Intern strings.
6299 (Finternal_set_alternative_font_registry_alist): Downcase strings.
6300 (realize_default_face): Set LFACE_FOUNDRY (lface).
6301
6302 * xfns.c (Fx_create_frame, x_create_tip_frame): Register X
6303 font-driver at first.
6304
6305 * ftfont.c (ftfont_font_format) [! FC_FONTFORMAT]: Declare "int len;".
6306
63072008-06-12 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
6308
6309 * lread.c (Fload): Use xfree, not free on saved_doc_string.
6310
63112008-06-12 Jim Meyering <meyering@redhat.com>
6312
6313 Make unexec_free handle NULL the same way free does.
6314 * unexmacosx.c (unexec_free): Ignore a NULL argument.
6315
63162008-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
6317
6318 * character.h (CHAR_TO_BYTE_SAFE): New macro.
6319 * character.c (Fmultibyte_char_to_unibyte): Obey the docstring.
6320 * regex.c (RE_CHAR_TO_UNIBYTE): Use the new macro.
6321 (WEAK_ALIAS): Simplify.
6322 * syntax.c (skip_chars): Don't mark non-byte chars in the fastmap
6323 when searching a unibyte buffer.
6324
63252008-06-12 Chong Yidong <cyd@stupidchicken.com>
6326
6327 * xfns.c (Fx_select_font): Rename from x-font-dialog.
6328
63292008-06-12 Juanma Barranquero <lekktu@gmail.com>
6330
6331 * w32font.c: Include ctype.h.
6332
63332008-06-11 Jason Rumney <jasonr@gnu.org>
6334
6335 * w32font.c (w32font_encode_char): Detect missing glyphs that are
6336 misreported as space.
6337 (add_font_entity_to_list): Support unicode-bmp and unicode-sip
6338 as aliases for registry iso10646-1.
6339
63402008-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
6341
6342 * buffer.c (clone_per_buffer_values): Skip `name'.
6343
63442008-06-11 Chong Yidong <cyd@stupidchicken.com>
6345
6346 * font.c (font_parse_fcname): Fix last change; accept decimal
6347 points in font size.
6348
63492008-06-10 Jason Rumney <jasonr@gnu.org>
6350
6351 * w32uniscribe.c (add_opentype_font_name_to_list):
6352 Skip non unicode fonts.
6353
63542008-06-10 Chong Yidong <cyd@stupidchicken.com>
6355
6356 * xfns.c (Fx_font_dialog): New function.
6357
6358 * gtkutil.c (xg_dialog_response_cb): Rename from
6359 xg_file_response_callback.
6360 (pop_down_dialog): Rename from pop_down_file_dialog.
6361 (xg_get_file_name): Callers changed.
6362 (xg_get_font_name): New function.
6363
6364 * gtkutil.h (xg_get_font_name): Insert prototype.
6365
63662008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
6367
6368 * xdisp.c (underline_minimum_offset): Rename from xterm.c's
6369 x_underline_minimum_display_offset.
6370 (syms_of_xdisp): Declare it here rather than in xterm.c.
6371 * dispextern.h (underline_minimum_offset): Declare it.
6372 * w32term.c (x_draw_glyph_string): Use it.
6373 * xterm.c (x_underline_minimum_display_offset): Move to xdisp.c.
6374 (syms_of_xterm): Don't declare it any more.
6375 (x_draw_glyph_string): Adjust to the new name.
6376
63772008-06-10 David De La Harpe Golden <david@harpegolden.net> (tiny change)
6378
6379 * xterm.c (x_underline_minimum_display_offset): New var.
6380 (x_draw_glyph_string): Use it.
6381 (syms_of_xterm): Declare it.
6382
63832008-06-10 Chong Yidong <cyd@stupidchicken.com>
6384
6385 * font.c (font_parse_fcname): Accept GTK-style font names too.
6386
63872008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
6388
6389 * dired.c (file_name_completion): Don't return t if the match is exact
6390 but with different capitalization.
6391 * minibuf.c (Ftry_completion): Simplify.
6392
6393 * window.c (Vwindow_point_insertion_type): New var.
6394 (set_window_buffer): Use it.
6395 (syms_of_window): Init and export it to Lisp.
6396
63972008-06-10 Kenichi Handa <handa@m17n.org>
6398
6399 * font.h (font_intern_prop): Prototype adjusted.
6400
6401 * font.c (font_intern_prop): New arg force_symbol.
6402 (font_parse_xlfd, font_parse_fcname, font_parse_family_registry):
6403 Adjust for the change of font_intern_prop.
6404
6405 * ftfont.c (ftfont_pattern_entity):
6406 * w32font.c (add_font_name_to_list, w32_enumfont_pattern_entity)
6407 (w32_registry):
6408 * w32uniscribe.c (add_opentype_font_name_to_list): Adjust for
6409 the change of font_intern_prop.
6410
64112008-06-09 Juanma Barranquero <lekktu@gmail.com>
6412
6413 * w32menu.c (digest_single_submenu): Declare extern.
6414
64152008-06-09 Jason Rumney <jasonr@gnu.org>
6416
6417 * w32term.c (x_make_frame_visible): Use alternate restore flags.
6418
6419 * w32menu.c (Fx_popup_menu): Unwind protect while building menu.
6420 (parse_single_submenu): Remove.
6421 (digest_single_submenu): Remove.
6422 (syms_of_w32menu): Don't initialise variables that have moved
6423 to menu.c.
6424 (set_frame_menubar): Sync with version in xmenu.c.
6425 (w32_menu_show): Sync with xmenu_show in xmenu.c.
6426
6427 * menu.c (single_keymap_panes, push_menu_pane, push_menu_item):
6428 Make static again.
6429
64302008-06-09 Jason Rumney <jasonr@gnu.org>
6431
6432 Changes to w32 files related to the move of common menu code
6433 to menu.c on 2008-06-08 by Chong Yidong.
6434
6435 * menu.c [HAVE_NTGUI]: Include w32term.h, move widget related
6436 defs to w32gui.h.
6437 (single_keymap_panes, push_menu_item, push_menu_pane):
6438 Make globally visible.
6439
6440 * w32menu.c (enum button_type, widget_value, local_heap, local_alloc)
6441 (local_free, malloc_widget_value, free_widget_value)
6442 (MENU_ITEMS_ITEM_NAME, MENU_ITEMS_ITEM_ENABLE, MENU_ITEMS_ITEM_VALUE)
6443 (MENU_ITEMS_ITEM_EQUIV_KEY, MENU_ITEMS_ITEM_DEFINITION)
6444 (MENU_ITEMS_ITEM_TYPE, MENU_ITEMS_ITEM_SELECTED, MENU_ITEMS_ITEM_HELP)
6445 (MENU_ITEMS_ITEM_LENGTH, enum menu_item_idx): Remove defs.
6446 (menu_items, menu_items_allocated, menu_items_used)
6447 (menu_items_n_panes, menu_items_submenu_depth): Remove global vars.
6448 (init_menu_items, finish_menu_items, discard_menu_items)
6449 (grow_menu_items, push_submenu_start, push_submenu_end)
6450 (push_left_right_boundary, push_menu_pane, push_menu_item)
6451 (keymap_panes, single_keymap_panes, list_of_panes, list_of_items)
6452 (free_menubar_widget_tree_value, parse_single_submenu)
6453 (update_submenu_strings): Remove functions.
6454 (xmalloc_widget_value): Remove and declare extern.
6455
6456 * makefile.w32-in ($(SRC)/menu.$(O)): New target.
6457 (OBJ1): Build it.
6458
6459 * w32gui.h (widget_value, XtPointer, Boolean, enum button_type)
6460 (local_heap, local_alloc, local_free, malloc_widget_value)
6461 (free_widget_value): Define here.
6462
64632008-06-09 Kenichi Handa <handa@m17n.org>
6464
6465 * font.h (Qascii_0): Extern it.
6466
6467 * font.c (Qascii_0): New variable.
6468 (syms_of_font): DEFSYM it.
6469 (font_open_by_name): If the registry "iso8859-1" fails, try also
6470 "ascii-0".
6471
6472 * ftfont.c (ftfont_spec_pattern): Accept the registry `ascii-0'.
6473
64742008-06-08 Kenichi Handa <handa@m17n.org>
6475
6476 * .gdbinit (xfont): New command.
6477
64782008-06-08 Andreas Schwab <schwab@suse.de>
6479
6480 * menu.c [HAVE_X_WINDOWS]: Include "xterm.h".
6481 * Makefile.in (menu.o): Update dependencies.
6482
6483 * Makefile.in (obj): Always add menu.o.
6484 * emacs.c (main): Always call syms_of_menu.
6485 * keyboard.h: Remove extra #ifdef HAVE_X_WINDOW.
6486
64872008-06-08 Chong Yidong <cyd@stupidchicken.com>
6488
6489 * Makefile.in: Compile menu.c.
6490
6491 * lisp.h: Declare syms_of_menu.
6492
6493 * emacs.c (main): Call syms_of_menu.
6494
6495 * keyboard.h: Relocate platform-independent menu definitions from
6496 xmenu.c.
6497
6498 * menu.c: New file. Relocate platform-independent menu
6499 definitions from xmenu.c. Suggested by Adrian Robert.
6500
6501 * xmenu.c: Remove platform-independent menu definitions.
6502 (menu_items menu_items_inuse, menu_items_allocated)
6503 (menu_items_used, menu_items_n_panes)
6504 (menu_items_submenu_depth): Move to keyboard.h.
6505 (init_menu_items, finish_menu_items, unuse_menu_items)
6506 (discard_menu_items, restore_menu_items, save_menu_items)
6507 (grow_menu_items, push_submenu_start, push_submenu_end)
6508 (push_left_right_boundary, push_menu_pane, push_menu_item)
6509 (keymap_panes, single_keymap_panes, single_menu_item)
6510 (list_of_panes, list_of_items, find_and_call_menu_selection)
6511 (xmalloc_widget_value, free_menubar_widget_value_tree)
6512 (parse_single_submenu, digest_single_submenu)
6513 (update_submenu_strings): Move to menu.c.
6514
65152008-06-07 Stefan Monnier <monnier@iro.umontreal.ca>
6516
6517 * dispnew.c (Flast_nonminibuf_frame): Handle the NULL case.
6518
65192008-06-06 Miles Bader <miles@gnu.org>
6520
6521 * xdisp.c (x_produce_glyphs): Calculate tab width based on current
6522 face, not frame default.
6523
65242008-06-05 Martin Rudalics <rudalics@gmx.at>
6525
6526 * window.c (pop_up_windows, pop_up_frames)
6527 (display_buffer_reuse_frames, Vpop_up_frame_function)
6528 (Vdisplay_buffer_function, Veven_window_heights)
6529 (Vspecial_display_buffer_names, Vspecial_display_regexps)
6530 (Vspecial_display_function, Vsame_window_buffer_names)
6531 (Vsame_window_regexps, split_height_threshold)
6532 (Vsplit_window_preferred_function): Move those vars to window.el.
6533 (display_buffer_1, Fspecial_display_p, Fsame_window_p)
6534 (Fdisplay_buffer): Move those functions to window.el.
6535 (syms_of_window): Remove corresponding declarations.
6536 (display_buffer): New function.
6537 (temp_output_buffer_show, Fother_window_for_scrolling): Use it.
6538 * dispnew.c (Flast_nonminibuf_frame): New function.
6539 * buffer.c (Fpop_to_buffer): Move to window.el.
6540
65412008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
6542
6543 * data.c (set_internal): Fix up call to let_shadows_buffer_binding_p.
6544
65452008-06-05 Kenichi Handa <handa@m17n.org>
6546
6547 * coding.c (detect_coding): Fix previous change.
6548 (detect_coding_system): Likewise.
6549
65502008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
6551
6552 * character.h (MAKE_CHAR_MULTIBYTE): Check the arg is a (uni)byte.
6553
6554 * keymap.c (Vminibuffer_local_filename_must_match_map):
6555 Rename from Vminibuffer_local_must_match_filename_map.
6556 (syms_of_keymap):
6557 * minibuf.c (Fcompleting_read): Adjust accordingly.
6558 * commands.h: Rename declaration as well.
6559
65602008-06-05 Kenichi Handa <handa@m17n.org>
6561
6562 * font.c (Ffont_spec): Don't use font_parse_family_registry for
6563 family name.
6564 (Ffont_put): Likewise.
6565
6566 * fontset.c (fontset_find_font): Call font_open_for_lface with the
6567 current font-spec.
6568
6569 * xfont.c (xfont_list): Don't set registry to iso8859-1 even if it
6570 is unspecified.
6571
6572 * xfaces.c (realize_x_face): If the font-related face attributes
6573 are the same as those of default face, realize a new fontset from
6574 default->fontset.
6575 (Fx_family_fonts): Use font_parse_family_registry instead of Ffont_put.
6576
65772008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
6578
6579 * xdisp.c (move_it_in_display_line_to): Improve the type of its args.
6580 (move_it_in_display_line): New wrapper.
6581
6582 * window.c (window_scroll_pixel_based_preserve_x)
6583 (window_scroll_preserve_hpos, window_scroll_preserve_vpos): New vars.
6584 (window_scroll_pixel_based, window_scroll_line_based):
6585 Use them to preserve column positions.
6586 (syms_of_window): Initialize them.
6587
6588 * indent.c (Fvertical_motion): Extend first arg to allow passing an
6589 (HPOS . VPOS) pair.
6590
6591 * dispextern.h (move_it_in_display_line): Declare.
6592
65932008-06-05 Juanma Barranquero <lekktu@gmail.com>
6594
6595 * window.c (Fwindow_parameter): Return VALUE, not (PARAMETER . VALUE).
6596 (Fwindow_parameters): Return copy of parameter alist. Doc fix.
6597 (Fset_window_parameter): Return VALUE, not parameter alist. Doc fix.
6598
65992008-06-04 Juanma Barranquero <lekktu@gmail.com>
6600
6601 * window.c (Fset_window_parameter): Doc fix.
6602 (Fwindow_parameters, Fwindow_parameter): Remove redundant check.
6603
66042008-06-04 Joakim Verona <joakim@verona.se>
6605
6606 * window.h (struct window): Add new member window_parameters.
6607
6608 * window.c (Fwindow_parameters, Fwindow_parameter)
6609 (Fset_window_parameter): New defuns.
6610 (syms_of_window): Defsubr the new defuns.
6611 (make_window): Initialize window_parameters to nil.
6612
66132008-06-04 John Paul Wallington <jpw@pobox.com>
6614
6615 * eval.c (Fdefmacro): Doc fix.
6616
66172008-06-04 Kenichi Handa <handa@m17n.org>
6618
6619 * coding.c (detect_coding): Fix handling of coding->head_ascii.
6620 Be sure to call setup_coding_system when we find a proper coding system.
6621 (detect_coding_system): Fix handling of coding->head_ascii.
6622
66232008-06-03 Andreas Schwab <schwab@suse.de>
6624
6625 * font.c (font_prop_validate_spacing): Fix last change.
6626
66272008-06-03 Kenichi Handa <handa@m17n.org>
6628
6629 * font.c (font_prop_validate_spacing): Handle uppercase symbols.
6630 (font_parse_fcname): Fix handling of unknown key.
6631
6632 * xfont.c (xfont_list): Try an alias.
6633
6634 * charset.c (char_charset): Return NULL if the arg charset_list is
6635 specified and C doesn't belong to any of them.
6636
66372008-06-02 Chip Coldwell <coldwell@redhat.com>
6638
6639 * font.c (font_pixel_size): Don't take cdr of an integer.
6640
66412008-06-02 Jim Meyering <meyering@redhat.com>
6642
6643 Make "xfree (NULL)" a no-op; remove useless if-before-xfree.
6644 * alloc.c (xfree): Return right away for a NULL arg.
6645 * lread.c (nosuffix): Remove now-useless if-before-xfree tests.
6646 * gtkutil.c (xg_gtk_scroll_destroy): Likewise.
6647 * mac.c (create_apple_event_from_event_ref): Likewise.
6648 (create_apple_event_from_drag_ref, cfstring_create_normalized):
6649 Likewise.
6650 * doprnt.c (doprnt1): Likewise.
6651 * frame.c (frame): Likewise.
6652 * keyboard.c (wipe_kboard): Likewise.
6653 * macterm.c (x_free_frame_resources, xlfdpat_destroy, XFreePixmap)
6654 (init_font_name_table, mac_unload_font, x_delete_display): Likewise.
6655 * term.c (tty_default_color_capabilities, maybe_fatal)
6656 (delete_tty): Likewise.
6657 * w16select.c (string): Likewise.
6658 * w32.c (w32_get_resource, SET_ENV_BUF_SIZE): Likewise.
6659 * w32bdf.c (w32_free_bdf_font): Likewise.
6660 * w32fns.c (w32_unload_font): Likewise.
6661 * w32font.c (w32font_close): Likewise.
6662 * window.c (size_window): Likewise.
6663 * xselect.c (receive_incremental_selection): Likewise.
6664 * xterm.c (x_free_frame_resources, x_delete_display): Likewise.
6665 * mactoolbox.c (create_apple_event_from_drag_ref): Likewise.
6666 * w32.c (stat): Likewise.
6667
6668 Remove useless if-before-free tests.
6669 * editfns.c (Fset_time_zone_rule): Likewise.
6670 * lread.c (nosuffix): Likewise.
6671 * ralloc.c (get_bloc): Likewise.
6672 * regex.c (reg_free): Likewise.
6673 * xftfont.c (xftfont_open, xftfont_close): Likewise.
6674 * xrdb.c (get_user_app, get_environ_db, x_load_resources): Likewise.
6675 * xsmfns.c (smc_save_yourself_CB): Likewise.
6676
66772008-06-02 Kenichi Handa <handa@m17n.org>
6678
6679 * font.c (font_find_for_lface): Handle float font size.
6680 (font_open_for_lface): Likewise.
6681
6682 * xfaces.c (x_supports_face_attributes_p): Check face->font before
6683 comparing the properties.
6684
66852008-06-01 Jason Rumney <jasonr@gnu.org>
6686
6687 * w32font.c (w32_enumfont_pattern_entity): Use requested registry.
6688 Treat iso10646-1 and Windows DEFAULT_CHARSET specially.
6689 Duplicate iso8859-1 fonts as iso10646-1 if no registry specified.
6690 Don't add empty script list.
6691 (w32_registry): Only map DEFAULT_CHARSET to iso10646-1 here.
6692
66932008-06-01 Dan Nicolaescu <dann@ics.uci.edu>
6694
6695 * Makefile.in (dot, dotdot): Remove, update users.
6696 ".." has been used elsewhere in the file for a long time.
6697 (LIBXT_STATIC): Remove conditional based on unused variable.
6698
66992008-06-01 Miles Bader <miles@gnu.org>
6700
6701 * xfaces.c (Vface_remapping_alist): New variable.
6702 (syms_of_xfaces): Initialize it.
6703 (enum named_merge_point_kind): New type.
6704 (struct named_merge_point): Add `named_merge_point_kind' field.
6705 (push_named_merge_point): Make cycle detection respect different
6706 named-merge-point kinds.
6707 (lface_from_face_name_no_resolve): Rename from `lface_from_face_name'.
6708 Remove face-name alias resolution.
6709 (lface_from_face_name): New definition using
6710 `lface_from_face_name_no_resolve'.
6711 (get_lface_attributes_no_remap): Rename from `get_lface_attributes'.
6712 Call lface_from_face_name_no_resolve instead of lface_from_face_name.
6713 (get_lface_attributes): New definition that layers face-remapping on
6714 top of get_lface_attributes_no_remap. New arg `named_merge_points'.
6715 (lookup_basic_face): New function.
6716 (lookup_derived_face): Pass new last arg to `get_lface_attributes'.
6717 (realize_named_face): Call `get_lface_attributes_no_remap' instead of
6718 `get_lface_attributes'.
6719 (face_at_buffer_position): Use `lookup_basic_face' to lookup
6720 DEFAULT_FACE_ID if necessary. When optimizing the default-face case,
6721 return default_face's face-id instead of the constant DEFAULT_FACE_ID.
6722
6723 * xdisp.c (init_iterator): Pass base_face_id through
6724 `lookup_basic_face' when we actually use it as a face-id.
6725 (handle_single_display_prop): Use `lookup_basic_face' to lookup
6726 DEFAULT_FACE_ID.
6727
6728 * fontset.c (Finternal_char_font): Use `lookup_basic_face' to
6729 lookup the initial face-id.
6730
6731 * dispextern.h (lookup_basic_face, Vface_remapping_alist): New decls.
6732
67332008-06-01 Juanma Barranquero <lekktu@gmail.com>
6734
6735 * textprop.c (syms_of_textprop) <text-property-default-nonsticky>:
6736 (Fremove_text_properties): Fix typos in docstrings.
6737
67382008-05-31 Kenichi Handa <handa@m17n.org>
6739
6740 * font.c (font_list_entities): Fix the car part of data to be
6741 stored in the cache.
6742
6743 * ftfont.c (ftfont_font_format): Don't use strcasestr.
6744
67452008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
6746
6747 * chartab.c (Foptimize_char_table, optimize_sub_char_table):
6748 Add a `test' argument so another predicate than `equal' can be used.
6749 (map_sub_char_table): Use `eq' rather than `equal' to merge ranges.
6750 (map_char_table): Remove unused vars `c' and `i'.
6751 * lisp.h (Foptimize_char_table): Adjust declaration.
6752 * charset.c (Fclear_charset_maps): Adjust call to Foptimize_char_table.
6753
67542008-05-30 Kenichi Handa <handa@m17n.org>
6755
6756 * font.c (Ffont_info): Define only if HAVE_WINDOW_SYSTEM is defined.
6757 (syms_of_font): Defsubr Sfont_info only if HAVE_WINDOW_SYSTEM is
6758 defined.
6759
67602008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
6761
6762 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
6763 (Fmake_variable_frame_local): Disallow mixing buffer-local and
6764 frame-local settings for the same variable.
6765
67662008-05-30 Kenichi Handa <handa@m17n.org>
6767
6768 * fontset.c (Ffont_info): Move to font.c.
6769 (syms_of_fontset): Delete defsubr of Sfont_info.
6770
6771 * font.c (font_style_to_value, font_score): Delete casting of the
6772 args to xstcasecmp.
6773 (register_font_driver): Increment num_font_drivers only when
6774 registering the driver globally.
6775 (Ffont_info): Move from fontset.c. Handle a font object too.
6776 (syms_of_font): Defsubr Sfont_info.
6777
67782008-05-29 Kenichi Handa <handa@m17n.org>
6779
6780 * coding.h (enum define_coding_utf8_arg_index): New enum.
6781 (enum coding_attr_index): Change coding_attr_utf_16_bom to
6782 coding_attr_utf_bom.
6783 (enum utf_bom_type): Rename from utf_16_bom_type.
6784 (struct utf_16_spec): Adjust for the above change.
6785 (struct coding_system): Add utf_8_bom in `spec' union.
6786
6787 * coding.c (CODING_UTF_8_BOM): New macro.
6788 (enum coding_category): Delete coding_category_utf_8, add
6789 coding_category_utf_8_auto, coding_category_utf_8_nosig, and
6790 coding_category_utf_8_sig.
6791 (CATEGORY_MASK_UTF_8): Delete it.
6792 (CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG)
6793 (CATEGORY_MASK_UTF_8_SIG): New macros.
6794 (CATEGORY_MASK_ANY): Delete CATEGORY_MASK_UTF_8, add
6795 CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG, and
6796 CATEGORY_MASK_UTF_8_SIG.
6797 (CATEGORY_MASK_UTF_8): New macro.
6798 (UTF_BOM, UTF_8_BOM_1, UTF_8_BOM_2, UTF_8_BOM_3): New macros.
6799 (detect_coding_utf_8): Check BOM.
6800 (decode_coding_utf_8, encode_coding_utf_8): Handle BOM.
6801 (decode_coding_utf_16): Adjust for the change of enum utf_bom_type.
6802 (encode_coding_utf_16): Likewise.
6803 (setup_coding_system): Likewise. Set CODING_UTF_8_BOM (coding).
6804 (detect_coding, detect_coding_system): Handle utf-8-auto.
6805 (Fdefine_coding_system_internal): Handle `bom' property for utf-8.
6806 (syms_of_coding): Fix setting up of Vcoding_category_table.
6807
68082008-05-29 Stefan Monnier <monnier@iro.umontreal.ca>
6809
6810 * process.c (Faccept_process_output): If `millisec' is non-nil,
6811 `seconds' default to 0.
6812 (wait_reading_process_output): Also return non-nil if we read output
6813 from a non-running process.
6814
68152008-05-29 Jason Rumney <jasonr@gnu.org>
6816
6817 * w32font.c (w32font_open_internal): Prefer truetype fonts unless
6818 `raster' specified.
6819 (add_font_entity_to_list): Allow non-opentype truetype fonts back
6820 in the uniscribe backend, but disallow any font that has no
6821 unicode subrange support.
6822
68232008-05-29 Juanma Barranquero <lekktu@gmail.com>
6824
6825 * xfaces.c (Fx_list_fonts, Finternal_copy_lisp_face):
6826 Fix typos in docstrings.
6827
68282008-05-29 Kenichi Handa <handa@m17n.org>
6829
6830 * xfaces.c (Fx_list_fonts): Make it return a list of font names.
6831 (Fx_family_fonts): Set frame correctly.
6832
68332008-05-28 Jason Rumney <jasonr@gnu.org>
6834
6835 * w32term.c (x_draw_glyph_string): Use clipmask if specified.
6836
68372008-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
6838
6839 * fileio.c (Fwrite_region): Delay the defaulting to beg&z to after
6840 calling build_annotations.
6841
68422008-05-28 Juanma Barranquero <lekktu@gmail.com>
6843
6844 * coding.c (Fdecode_coding_region, Fencode_coding_region)
6845 (Fencode_coding_string):
6846 (syms_of_coding) <coding-system-for-read, coding-system-for-write>:
6847 <latin-extra-code-table>: Fix typos in docstrings.
6848 (syms_of_coding) <coding-system-alist>: Doc fix.
6849 (syms_of_coding) <translation-table-for-input>: Reflow docstring.
6850
68512008-05-28 Kenichi Handa <handa@m17n.org>
6852
6853 * fontset.c (Ffont_info): Don't call font_close_object.
6854
6855 * font.c (font_parse_family_registry): Use Ffont_put to validate
6856 foundry and family.
6857 (font_delete_unmatched): Don't check spacing.
6858 (font_list_entities): Add spacing to the spec to list fonts.
6859
6860 * ftfont.c (ftfont_spec_pattern): Don't set FC_SPACING to pattern.
6861 (ftfont_list): Check spacing here. Don't include FC_CHARSET in objset.
6862
6863 * coding.c (encode_coding_raw_text): Fix previous change.
6864 (encode_coding_object): When the dst_object is a buffer and is
6865 different from src_object, move gap to PT.
6866
68672008-05-27 Chong Yidong <cyd@stupidchicken.com>
6868
6869 * xterm.c (x_draw_glyph_string): If a clipmask is specified, use it.
6870
68712008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
6872
6873 * coding.c (encode_coding_raw_text): Set coding->produced_char for
6874 all branches. Compute it differently.
6875
6876 * xdisp.c [!HAVE_WINDOW_SYSTEM]: Include font.h for --without-x.
6877
68782008-05-27 Juanma Barranquero <lekktu@gmail.com>
6879
6880 * w32font.c (compute_metrics): Rewrite an "else { if () ... else ... }"
6881 into "else if () ... else ...".
6882
68832008-05-27 Jason Rumney <jasonr@gnu.org>
6884
6885 * w32font.c (w32font_open_internal): Determine if glyph indices
6886 are likely to work here.
6887
68882008-05-27 Chong Yidong <cyd@stupidchicken.com>
6889
6890 * xdisp.c (draw_glyphs): If mouse-highlighting is on, attempt to
6891 draw overlap glyphs with appropriate highlighting.
6892
68932008-05-27 Kenichi Handa <handa@m17n.org>
6894
6895 * xfont.c (xfont_open): Fix calculation of font->average_width.
6896
68972008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
6898
6899 * casefiddle.c (casify_object): Try to guess better whether the
6900 argument is a byte or a char.
6901
69022008-05-26 Andreas Schwab <schwab@suse.de>
6903
6904 * xselect.c (x_reply_selection_request): Properly handle format == 32.
6905 Always send multiples of format size.
6906
6907 * xterm.c (x_set_frame_alpha): Fix type mismatch.
6908
69092008-05-26 Jason Rumney <jasonr@gnu.org>
6910
6911 * w32font.c (w32font_text_extents): Zero whole metrics struct first.
6912 (compute_metrics): Don't set failure if we just cleared the cache.
6913 (w32_weight_table): Remove unused variable.
6914 (w32_enumfont_pattern_entity): Use FONT_SPACING_CHARCELL for
6915 backwards compatibility.
6916
69172008-05-25 Kenichi Handa <handa@m17n.org>
6918
6919 * w32term.c (x_draw_glyph_string):
6920 * xterm.c (x_draw_glyph_string): Fix calculation of underline position.
6921
6922 * xfaces.c: Delete unused function prototypes.
6923 (xstrlwr, font_frame): Delete them.
6924 (clear_face_cache): Delete unused variable.
6925
6926 * xftfont.c (xftfont_open): Delete unused variable.
6927 If underline_thickness is not 1, adjust underline_position.
6928
6929 * ftxfont.c (ftxfont_open): Delete unused variable.
6930
6931 * fontset.c (face_for_char): Optimize for the case of no charset
6932 property.
6933
6934 * font.c (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE)
6935 (check_gstring, check_otf_features, otf_list, otf_tag_symbol)
6936 (otf_open, font_otf_capability, generate_otf_features)
6937 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
6938 Comment out by surrounding "#if 0" and "#endif" for the moment.
6939 (Ffont_drive_otf, Ffont_otf_alternates): Likewise.
6940 (syms_of_font): Codes for accessing above commented out.
6941
69422008-05-24 Eli Zaretskii <eliz@gnu.org>
6943
6944 * w32proc.c: Include dispextern.h.
6945
6946 * w32.c: Include dispextern.h.
6947
69482008-05-23 Juanma Barranquero <lekktu@gmail.com>
6949
6950 * charset.c (Fencode_char, Fsplit_char): Doc fixes.
6951 (Fget_unused_iso_final_char, Fdecode_char, Fiso_charset):
6952 Fix typos in docstrings.
6953
69542008-05-23 Jason Rumney <jasonr@gnu.org>
6955
6956 * xsmfns.c: Remove includes that are already included by config.h.
6957
69582008-05-23 Kenichi Handa <handa@m17n.org>
6959
6960 * charset.c (Qemacs, charset_emacs): New variables.
6961 (char_charset): Fix for non-Unicode characters.
6962 (syms_of_charset): Define charset_emacs.
6963
6964 * w32term.c (x_draw_glyph_string): Be sure to update
6965 s->underline_thickness and s->underline_position. Be sure to draw
6966 underline within the current line area.
6967
6968 * xterm.c (x_draw_glyph_string): Be sure to update
6969 s->underline_thickness and s->underline_position. Be sure to draw
6970 underline within the current line area.
6971
6972 * fontset.c: Delete unused variables and add casting for char *
6973 throughout the file.
6974 (fontset_font): Try the fallback fonts of the current fontset
6975 before consulting the default fontset.
6976
6977 * ftfont.c (ftfont_spec_pattern): Free charset if necessary.
6978
6979 * xfont.c (xfont_list_pattern): Free names returned from XListFonts.
6980
69812008-05-22 Jason Rumney <jasonr@gnu.org>
6982
6983 * font.c: Don't include strings.h.
6984
6985 * dispextern.h, xfaces.c (xstrcasecmp): Rename from xstricmp.
6986
6987 * dosfns.c, fileio.c, font.c, fontset.c, image.c, macfns.c:
6988 * macterm.c, process.c, w32.c, w32fns.c, w32proc.c, xfaces.c:
6989 * xfns.c, xfont.c: All callers of stricmp and strcasecmp changed
6990 to call xstrcasecmp.
6991
6992 * xfont.c (xfont_list_pattern, compare_font_names): Use xstrcasecmp.
6993
6994 * fontset.c (fs_query_fontset): Use xstrcasecmp.
6995
6996 * font.c (font_style_to_value, font_score): Use xstrcasecmp.
6997
6998 * dosfns.c (msdos_stdcolor_idx): Use xstrcasecmp.
6999
70002008-05-22 Kenichi Handa <handa@m17n.org>
7001
7002 * puresize.h (BASE_PURESIZE): Increase to 1220000.
7003
7004 * font.c (font_prop_validate_style): Adjust for the format
7005 change of font_style_table.
7006
7007 * w32font.c (w32font_open_internal): Call Ffont_xlfd_name with
7008 two args.
7009
7010 * xfaces.c (x_update_menu_appearance): Call Ffont_xlfd_name with
7011 two args.
7012
70132008-05-22 Stefan Monnier <monnier@iro.umontreal.ca>
7014
7015 * minibuf.c (keys_of_minibuf): Delete.
7016 * lisp.h (keys_of_minibuf): Delete.
7017 * emacs.c (main): Don't call keys_of_minibuf.
7018
70192008-05-22 Kenichi Handa <handa@m17n.org>
7020
7021 * ftfont.c (ftfont_resolve_generic_family): Rename from
7022 ftfont_list_generic_family. Return a single family for each
7023 generic family.
7024 (ftfont_spec_pattern): Add FC_FAMILY to pattern.
7025 (ftfont_list): Adjust for the change of ftfont_resolve_generic_family.
7026 Call font_add_log.
7027 (ftfont_match): Call font_add_log.
7028
7029 * font.h (Ffont_xlfd_name): EXFUN adjusted.
7030 (FONT_DEBUG): Define it.
7031 (font_add_log): Extern it.
7032 (font_assert): Rename from xassert.
7033
7034 * xfont.c (xfont_get_pcm): Change xassert to font_assert.
7035 (xfont_list_family): Call font_add_log.
7036 (xfont_match): Likewise.
7037 (memq_no_quit): Delete.
7038
7039 * fontset.c (fontset_from_font, Ffontset_info): Add the 2nd arg in
7040 call of Ffont_xlfd_name.
7041
7042 * xfaces.c (struct table_entry, slant_table, weight_table)
7043 (swidth_table): Move to font.c.
7044
7045 * font.c: Checking of FONT_DEBUG is moved to font.h. All calls of
7046 xassert are changed to font_assert. Delete many unused variables.
7047 (Vfont_weight_table, Vfont_slant_table, Vfont_width_table):
7048 New variables.
7049 (struct table_entry): Move from xfaces.c and modified.
7050 (weight_table, slant_table, width_table): Move from xfaces.c and
7051 contents adjusted for the change of struct table_entry.
7052 (font_style_to_value, font_style_symbolic): Adjust for the
7053 format change of font_style_table.
7054 (font_parse_family_registry): Don't overwrite existing foundry and
7055 family of font_spec.
7056 (font_score): Fix calculation of diff for sizes.
7057 (font_sort_entites): Call font_add_log.
7058 (font_delete_unmatched): Return a newly created list.
7059 (font_list_entities): Fix previous change. Call font_add_log.
7060 (font_matching_entity, font_open_entity, font_close_entity):
7061 Call font_add_log.
7062 (Ffont_xlfd_name): New arg FOLD-WILDCARDS.
7063 (Finternal_set_font_style_table): Delete.
7064 (BUILD_STYLE_TABLE): New macro.
7065 (build_style_table): New function.
7066 (Vfont_log, font_log_env_checked): New variables.
7067 (font_add_log): New function.
7068 (syms_of_font): Delete defsubr Sinternal_set_font_style_table.
7069 Declare Lisp variables "font-weight-table", "font-slant-table",
7070 "font-width-table", and "font-log". Initialize font_style_table.
7071
70722008-05-21 Dan Nicolaescu <dann@ics.uci.edu>
7073
7074 * xterm.c (x_set_frame_alpha): Move declarations before statements.
7075
70762008-05-21 Seiji Zenitani <zenitani@mac.com>
7077 Ryo Yoshitake <ryo@shiftmode.net>
7078
7079 * frame.c (Qalpha): Add a new frame parameter `alpha'.
7080 (Vframe_alpha_lower_limit): New variable.
7081 (x_set_alpha): New function.
7082
7083 * frame.h (Qalpha, Vframe_parameter_lower_limit): Export them.
7084
7085 * xfns.c (x-create-frame, Qalpha):
7086 Initialize the frame parameter `alpha'.
7087 * xterm.c (OPAQUE, OPACITY): New.
7088 (x_set_frame_alpha): New function.
7089 (frame_highlight, frame_unhighlight): Call x_set_frame_alpha.
7090
7091 * macfns.c (mac_frame_parm_handlers): A null handler for x_set_alpha.
7092 * w32fns.c (w32_frame_parm_handlers): Likewise.
7093
70942008-05-20 Jason Rumney <jasonr@gnu.org>
7095
7096 * w32font.c (add_font_entity_to_list): Don't add non-opentype
7097 truetype fonts to opentype list.
7098
70992008-05-20 Juanma Barranquero <lekktu@gmail.com>
7100
7101 * fontset.c (Ffontset_info): Doc fix.
7102 (syms_of_fontset) <font-encoding-charset-alist, use-default-ascent>:
7103 <ignore-relative-composition>: Fix typos in docstrings.
7104
7105 * font.c (syms-of-font) <font-encoding-alist>:
7106 (Ffontp, Ffont_make_gstring): Fix typos in docstrings.
7107 (Flist_fonts, Ffont_family_list, Ffont_fill_gstring, Fquery_font)
7108 (Ffont_otf_alternates): Doc fixes.
7109
71102008-05-20 Kenichi Handa <handa@m17n.org>
7111
7112 * Makefile.in (FONTSRC): Delete it. Change all $(FONTSRC) to
7113 font.h through out the file.
7114 (FONT_DRIVERS): Rename from FONTOBJ.
7115 (obj): Change $(FONTOBJ) to $(FONT_DRIVERS). Add font.o.
7116 (SOME_MACHINE_OBJECTS): Change $(FONTOBJ) to $(FONT_DRIVERS).
7117
7118 * emacs.c (main): Call syms_of_font unconditionally.
7119
7120 * font.h (find_font_encoding): Extern it.
7121
7122 * font.c (Vfont_encoding_alist, find_font_encoding): Move from
7123 fontset.c.
7124 (font_pixel_size)[! HAVE_WINDOW_SYSTEM]: Return 1.
7125 (font_open_entity): Update FRAME_X_DISPLAY_INFO (f)->n_fonts,
7126 FRAME_SMALLEST_CHAR_WIDTH (f), and FRAME_SMALLEST_FONT_HEIGHT (f)
7127 only when HAVE_WINDOW_SYSTEM is defined.
7128 (font_close_object): Update FRAME_X_DISPLAY_INFO (f)->n_fonts only
7129 when HAVE_WINDOW_SYSTEM is defined.
7130
7131 * fontset.c (Vfont_encoding_alist, find_font_encoding): Move to font.c.
7132 (syms_of_fontset): Move declaration of font-encoding-alist to font.c.
7133
7134 * xfaces.c: Include font.h unconditionally.
7135 (merge_face_ref, merge_face_vectors)
7136 (Finternal_set_lisp_face_attribute): Cancel the previous change.
7137
71382008-05-20 Stefan Monnier <monnier@iro.umontreal.ca>
7139
7140 * xdisp.c (select_frame_for_redisplay): Adjust for last change to
7141 indirect_variable.
7142 * eval.c (lisp_indirect_variable): New fun.
7143 (Fuser_variable_p): Use it.
7144
71452008-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
7146
7147 * lisp.h (indirect_variable):
7148 * data.c (indirect_variable, let_shadows_buffer_binding_p):
7149 Use Lisp_Symbol pointers rather than Lisp_Object.
7150 Adjust callers.
7151 * buffer.c (buffer_slot_type_mismatch): Use wrong-type-argument.
7152 To this end, change calling-convention.
7153
7154 * minibuf.c (Finternal_complete_buffer): Only strip out hidden buffers
7155 if some non-hidden buffers are selected by string&pred.
7156
71572008-05-19 Chong Yidong <cyd@stupidchicken.com>
7158
7159 * process.c (wait_reading_process_output): Always check status
7160 when in batch mode.
7161
71622008-05-19 Kenichi Handa <handa@m17n.org>
7163
7164 * font.c (font_list_entities): Fix handling of cache.
7165 (font_matching_entity): Likewise.
7166
7167 * ftfont.c (cs_iso8859_1): Delete.
7168 (ft_face_cache): New variable.
7169 (struct ftfont_info): New member fc_charset_idx.
7170 (ftfont_build_basic_charsets): Delete.
7171 (fc_charset_table): New variable.
7172 (ftfont_pattern_entity): New arg fc_charset_idx. Store (FILENAME
7173 . FC_CHARSET_IDX) as :font-entity property in the font entity.
7174 Callers changed.
7175 (ftfont_lookup_cache, ftfont_get_charset): New functions.
7176 (ftfont_spec_pattern): New argument fc_charset_idx.
7177 Check registry more rigidly. Change callers.
7178 (ftfont_open, ftfont_close, ftfont_has_char): Adjust for the
7179 change of :font-entity property of the font.
7180
7181 * xftfont.c (xftfont_open): Adjust for the change of :font-entity
7182 property of the font.
7183
71842008-05-18 Juanma Barranquero <lekktu@gmail.com>
7185
7186 * coding.c (Fcoding_system_p): Rename argument to match docstring.
7187 (Funencodable_char_position, Fcheck_coding_systems_region)
7188 (Fdecode_coding_string, Fencode_coding_string): Fix typos in docstrings.
7189 (Fdetect_coding_region, Fdetect_coding_string, Fencode_coding_region)
7190 (Ffind_operation_coding_system, Fset_coding_system_priority)
7191 (Fcoding_system_eol_type): Doc fixes.
7192
71932008-05-17 Glenn Morris <rgm@gnu.org>
7194
7195 * sysdep.c (child_setup_tty): Handle systems with NLDLY, without FFDLY.
7196
71972008-05-16 Eli Zaretskii <eliz@gnu.org>
7198
7199 * dired.c (Ffile_attributes): Shut up GCC warnings about st_uid
7200 and st_gid.
7201
7202 * frame.c (Fdelete_frame): Don't call font_update_drivers if
7203 HAVE_WINDOW_SYSTEM is not defined.
7204
7205 * xfaces.c (merge_face_ref, merge_face_vectors)
7206 (Finternal_set_lisp_face_attribute): Use FONT_*_INDEX only when
7207 HAVE_WINDOW_SYSTEM is defined.
7208 (Fface_font): Fix non-HAVE_WINDOW_SYSTEM case.
7209
72102008-05-16 Stefan Monnier <monnier@iro.umontreal.ca>
7211
7212 * keyboard.c (parse_menu_item): Do not cache key shortcut any more.
7213
72142008-05-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7215
7216 * macterm.c (x_draw_relief_rect): Remove unused variable `dpy'.
7217
72182008-05-15 Kenichi Handa <handa@m17n.org>
7219
7220 * font.c (font_find_for_lface): Reflect LFACE_FONT in the font
7221 preference.
7222
72232008-05-15 Glenn Morris <rgm@gnu.org>
7224
7225 * emacs.c (USAGE1, standard_args): Remove -disable-font-backend.
7226
72272008-05-15 Chong Yidong <cyd@stupidchicken.com>
7228
7229 * fns.c (init_fns): Don't initialize weak_hash_tables here.
7230 (init_weak_hash_tables): New fun. Initialize weak_hash_tables.
7231
7232 * alloc.c (init_alloc_once): Call init_weak_hash_tables.
7233
72342008-05-15 Kenichi Handa <handa@m17n.org>
7235
7236 * ftfont.c (ftfont_list): Downcase family name to check generic
7237 families.
7238
7239 * xfaces.c (Finternal_set_lisp_face_attribute): Be sure to make a
7240 font-spec for QCfont value.
7241
7242 * fontset.c (Fnew_fontset): Call font_unparse_xlfd with 256-byte
7243 buffer. Check the return value of it.
7244
72452008-05-14 Jason Rumney <jasonr@gnu.org>
7246
7247 * w32term.c (w32_get_glyph_overhangs): Remove.
7248 (w32_redisplay_interface): Use x_get_glyph_overhangs instead.
7249
72502008-05-14 Kenichi Handa <handa@m17n.org>
7251
7252 * font.c (font_prop_validate): Make nil a valid value.
7253 (font_clear_cache): Check if the cached vector of entities is nil
7254 or not.
7255
72562008-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7257
7258 * emacs.c (main_thread): Conditionalize on
7259 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
7260 (main) [FORWARD_SIGNAL_TO_MAIN_THREAD]: Initialize it.
7261
7262 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): New define.
7263 (main_thread, SIGNAL_THREAD_CHECK): Conditionalize on
7264 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
7265
72662008-05-14 Kenichi Handa <handa@m17n.org>
7267
7268 * coding.c (detect_coding_iso_2022): Ignore a coding category that
7269 has no corresponding coding system.
7270
72712008-05-14 Jason Rumney <jasonr@gnu.org>
7272
7273 * font.h (struct font) [WINDOWSNT]: Remove codepage member.
7274
7275 * w32font.h (w32font_open_internal): Update declaration.
7276
7277 * w32font.c (w32font_open_internal): Change last argument from
7278 w32font_info struct to font object. Fill in font object from
7279 font_entity. Get Outline metrics if possible. Use them to
7280 calculate underline position and thickness. Use xlfd name as name
7281 property. Don't set codepage.
7282 (w32font_open): Pass font_object to w32font_open_internal. Don't
7283 update dpyinfo->smallest_font_height and dpyinfo->smallest_char_width.
7284 (w32font_draw): Use s->font.
7285 (clear_cached_metrics): Don't clear non-existent blocks.
7286
7287 * w32term.c (w32_compute_glyph_string_overhangs): Don't compute if
7288 font was not found.
7289 (x_draw_glyph_string): Use underline position and thickness from font.
7290
7291 * w32uniscribe.c (uniscribe_open): Pass font_object to
7292 w32font_open_internal.
7293
72942008-05-14 Kenichi Handa <handa@m17n.org>
7295
7296 These changes are to delete all legacy font-handling codes, and
7297 make Emacs use only font-backends.
7298
7299 * Makefile.in: Delete USE_FONT_BACKEND conditionals.
7300 (frame.o, image.o, print.o): Depend on $(FONTSRC).
7301
7302 * makefile.w32-in (WIN32OBJ): Add w32reg.$(O), remove w32bdf.$(O).
7303
7304 * charset.h (Vcharset_non_preferred_head)
7305 (Vcurrent_iso639_language): Extern them.
7306
7307 * charset.c (Vcharset_non_preferred_head): New variable.
7308 (Vcurrent_iso639_language): New variable.
7309 (syms_of_charset): Declare it as a Lisp variable.
7310 (char_charset): Don't check non preferred charsets. As a last
7311 resort, return charset_unicode.
7312 (Fset_charset_priority): Update Vcharset_non_preferred_head.
7313
7314 * composite.c: Throughout the file, delete all USE_FONT_BACKEND
7315 conditionals. Don't check enable_font_backend. Delete all codes
7316 used only when USE_FONT_BACKEND is not defined.
7317
7318 * dispextern.h (struct glyph_string): Change type of `font' to
7319 `struct font *'.
7320 (struct glyph_string): New member underline_position and
7321 underline_thickness.
7322 (enum lface_attribute_index): Remove LFACE_AVGWIDTH_INDEX.
7323 (struct face): Change type of `font' to `struct font *'. Remove
7324 members `font_name', `font_info_id'.
7325 (per_char_metric, encode_char): Delete externs.
7326 (calc_pixel_width_or_height): Adjust the prototype.
7327
7328 * emacs.c (enable_font_backend): Delete extern.
7329 (main): Don't set enable_font_backend. Don't check the command
7330 line argument "-disable-font-backend".
7331
7332 * font.h (Qfont_spec, Qfont_entity, Qfont_object): Extern them.
7333 (enum font_property_index): New members FONT_DPI_INDEX,
7334 FONT_SPACING_INDEX, FONT_AVGWIDTH_INDEX, FONT_NAME_INDEX,
7335 FONT_FULLNAME_INDEX, FONT_FILE_INDEX, FONT_FORMAT_INDEX,
7336 FONT_OBJECT_MAX. Delete FONT_FRAME_INDEX.
7337 (FONT_WEIGHT_NUMERIC, FONT_SLANT_NUMERIC, FONT_WIDTH_NUMERIC)
7338 (FONT_WEIGHT_SYMBOLIC, FONT_SLANT_SYMBOLIC, FONT_WIDTH_SYMBOLIC)
7339 (FONT_WEIGHT_FOR_FACE, FONT_SLANT_FOR_FACE, FONT_WIDTH_FOR_FACE)
7340 (FONT_WEIGHT_NAME_NUMERIC, FONT_SLANT_NAME_NUMERIC)
7341 (FONT_WIDTH_NAME_NUMERIC, FONT_SET_STYLE): New macros.
7342 (struct font_spec, struct font_entity): New structs.
7343 (FONT_ENCODING_NOT_DECIDED): Moved from fontset.h.
7344 (struct font): Many members from old "struct font_info" moved to
7345 here. Members font and entity deleted.
7346 (FONT_SPEC_P, FONT_ENTITY_P, FONT_OBJECT_P, FONTP): Modified for
7347 the new font-related objects.
7348 (CHECK_FONT_SPEC, CHECK_FONT_ENTITY, CHECK_FONT_OBJECT)
7349 (CHECK_FONT_GET_OBJECT): Likewise.
7350 (XFONT_SPEC, XFONT_ENTITY, XFONT_OBJECT, XSETFONT): New macros.
7351 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved from font.h.
7352 (struct font_driver): New members case_sensitive anc check. Type
7353 of the member list and open changed.
7354 (enable_font_backend, font_symbolic_weight, font_symbolic_slant)
7355 (font_symbolic_width, font_find_object, font_get_spec)
7356 (font_set_lface_from_name): Delete extern.
7357 (Fcopy_font_spec, Fmerge_font_spec, Ffont_family_list): New EXFUNs.
7358
7359 * font.c: Include <strings.h>.
7360 (enable_font_backend): Delete it.
7361 (Qfont_spec, Qfont_entity, Qfont_object): New variables.
7362 (CHECK_VALIDATE_FONT_SPEC): Delete it.
7363 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved to font.h.
7364 (null_string): Delete it.
7365 (null_vector): Make it static.
7366 (font_family_alist): Delete it.
7367 (Qnormal): Extern it.
7368 (QCextra, QClanguage): Delete it.
7369 (QClang, QCavgwidth, QCfont_entity, QCfc_unknown_spec): New variables.
7370 (font_make_spec, font_make_entity, font_make_object)
7371 (font_intern_prop): Renamed from intern_downcase. Don't downcase
7372 the string. Callers changed.
7373 (font_pixel_size): Adjusted for the format change of font-related
7374 objects.
7375 (prop_name_to_numeric, prop_numeric_to_name): Delete them.
7376 (font_style_to_value, font_style_symbolic): New function.
7377 (build_font_family_alist): Delete it.
7378 (font_registry_charsets): Use Fassoc_string instead of
7379 assq_no_quit.
7380 (font_prop_validate_symbol): Don't return null_string.
7381 (font_prop_validate_style): Adjusted for the change of
7382 style-related values in a font vector.
7383 (font_property_table): Delete entries for QClanguage and
7384 QCantialias, add entries for QCavgwidth.
7385 (get_font_prop_index): Delete the 2nd argument FROM.
7386 (font_prop_validate): Arguments changed.
7387 (font_put_extra): Adjusted for the change of font-related objects.
7388 (font_expand_wildcards, font_parse_xlfd, font_unparse_xlfd)
7389 (font_parse_fcname, font_unparse_fcname)
7390 (font_prepare_composition): Likewise.
7391 (font_parse_family_registry): Renamed from font_merge_old_spec.
7392 (otf_open): Delete the 1st arg entity.
7393 (font_otf_capability): Adjusted for the above change.
7394 (font_score): New arg alternate_families. Adjusted for the change
7395 of font-related objects.
7396 (font_sort_entites): New arg best_only.
7397 (font_symbolic_weight, font_symbolic_slant, font_symbolic_width):
7398 Delete them.
7399 (font_match_p): Check alternate families.
7400 (font_find_object): Delete it.
7401 (font_check_object): New function.
7402 (font_clear_cache): Adjusted for the change of font-related objects.
7403 (font_delete_unmatched): New arg.
7404 (font_list_entities): Call font_driver->list with a spec that
7405 doesn't specify style-related properties.
7406 (font_matching_entity): Arguments changed. Caller changed.
7407 (font_open_entity): Adjusted for the change of font-related objects.
7408 (font_close_object, font_has_char, font_encode_char)
7409 (font_get_name, font_get_spec): Likewise.
7410 (font_spec_from_name, font_clear_prop, font_update_lface):
7411 New functions.
7412 (font_find_for_lface, font_open_for_lface, font_load_for_lface)
7413 (font_prepare_for_face, font_done_for_face, font_open_by_name)
7414 (font_at): Adjusted for the change of font-related objects.
7415 (font_range): New function.
7416 (Ffontp, Ffont_spec, Ffont_get, Ffont_put, Flist_fonts)
7417 (Ffont_xlfd_name): Adjusted for the change of font-related objects.
7418 (Fcopy_font_spec, Fmerge_font_spec): New function.
7419 (Ffont_family_list): Renamed from list-families.
7420 (Finternal_set_font_style_table): Arguments changed.
7421 (Ffont_fill_gstring, Ffont_shape_text, Fopen_font)
7422 (Ffont_drive_otf, Fquery_font, Ffont_match_p): Adjusted for the
7423 change of font-related objects.
7424 (syms_of_font): Delete "ifdef USE_FONT_BACKEND". DEFSYM new symbols.
7425
7426 * fontset.h (struct font_info): Delete it. Most members go to
7427 struct font.
7428 (FONT_ENCODING_NOT_DECIDED): Moved to font.h.
7429 (enum FONT_SPEC_INDEX): Delete it.
7430 (font_info, list_fonts_func, load_font_func, query_font_func)
7431 (set_frame_fontset_func, find_ccl_program_func)
7432 (get_font_repertory_func, new_fontset_from_font_name): Delete
7433 externs.
7434 (fontset_from_font_name): Extern it.
7435 (FS_LOAD_FONT, FONT_INFO_ID, FONT_INFO_FROM_ID)
7436 (FONT_INFO_FROM_FACE): Deleted.
7437 (face_for_font): Adjust prototype.
7438
7439 * fontset.c: Throughout the file, delete all USE_FONT_BACKEND
7440 conditionals. Don't check enable_font_backend. Delete all codes
7441 used only when USE_FONT_BACKEND is not defined.
7442 (get_font_info_func, list_font_func, load_font_func)
7443 (query_font_func, set_frame_fontset_func, find_ccl_program_func)
7444 (get_font_repertory_func): Delete them.
7445 (FONTSET_SPEC, FONT_DEF_NEW, FONT_DEF_SPEC, FONT_DEF_ENCODING)
7446 (FONT_DEF_REPERTORY, RFONT_DEF_FACE, RFONT_DEF_SET_FACE)
7447 (RFONT_DEF_FONT_DEF, RFONT_DEF_SPEC, RFONT_DEF_REPERTORY)
7448 (RFONT_DEF_OBJECT, RFONT_DEF_SET_OBJECT, RFONT_DEF_SCORE)
7449 (RFONT_DEF_SET_SCORE, RFONT_DEF_NEW): New macros.
7450 (fontset_compare_rfontdef): New function.
7451 (reorder_font_vector): Remove the argument CHARSET-ID. Sort
7452 rfont-defs by qsort. Adjusted for the change of font-group vector.
7453 (load_font_get_repertory): Deleted.
7454 (fontset_find_font): Use new macros to ref/set elements of
7455 font-def and rfont-def.
7456 (fontset_font): Fix the timing of remembering that no font for C.
7457 (free_face_fontset): Do nothing if the face has no fontset.
7458 (face_suitable_for_char_p): Use new macros to ref/set elements of
7459 rfont-def.
7460 (face_for_char): Likewise. Call face_for_char with font_object.
7461 (fs_load_font): Delete. Delete #pragma surrounding it.
7462 (fs_query_fontset): Use strcasecmp instead of strcmp.
7463 (generate_ascii_font_name): Adjusted for the format change of
7464 font-spec.
7465 (Fset_fontset_font): Likewise. Use new macros to set elements of
7466 font-def.
7467 (Fnew_fontset): Use font_unparse_xlfd to generate
7468 FONTSET_ASCII (fontset).
7469 (new_fontset_from_font_name): Deleted.
7470 (fontset_from_font): Renamed from new_fontset_from_font. Check if
7471 a fontset is already created for the font. FIx updating of
7472 Vfontset_alias_alist.
7473 (fontset_ascii_font): Deleted.
7474 (Ffont_info): Adjusted for the format change of font-spec.
7475 (Finternal_char_font): Likewise.
7476 (Ffontset_info): Likewise.
7477 (syms_of_fontset): Don't check load_font_func.
7478
7479 * fns.c (internal_equal): Handle PREV_FONT.
7480
7481 * frame.h: Delete USE_FONT_BACKEND conditional.
7482
7483 * frame.c: Throughout the file, delete all USE_FONT_BACKEND
7484 conditionals. Don't check enable_font_backend. Delete all codes
7485 used only when USE_FONT_BACKEND is not defined.
7486 (x_set_font): Call x_new_font, not x_new_fontset2.
7487 (x_set_font_backend): Use FRAME_FONT macro to check if a font is
7488 already set for the frame.
7489
7490 * ftfont.c (ftfont_pattern_entity): Argument FRAME removed. Make
7491 a font-entity by font_make_entity. Use font_intern_prop instead
7492 of intern_downcase. Use FONT_SET_STYLE to set a style-related
7493 font property. If a font is scalable, set avgwidth property to 0.
7494 Set font-entity property by font_put_extra.
7495 (ftfont_list_generic_family): Argument SPEC and REGISTRY removed.
7496 (ffont_driver): Adjusted for the change of struct font_driver.
7497 (ftfont_spec_pattern): New function.
7498 (ftfont_list): Return a list, not vector.
7499 (ftfont_match): Use ftfont_spec_pattern to get a pattern.
7500 (ftfont_list_family): Don't downcase names.
7501 (ftfont_free_entity): Deleted.
7502 (ftfont_open): Return a font-object. Adjusted for the change of
7503 struct font. Get underline_thickness and underline_position from
7504 font property. Don't update dpyinfo->smallest_font_height and
7505 dpyinfo->smallest_char_width.
7506 (ftfont_close): Don't free `struct font'.
7507 (ftfont_has_char): Adjusted for the format change of font-entity.
7508 (ftfont_encode_char, ftfont_text_extents): Likewise.
7509
7510 * ftxfont.c (ftxfont_list): Return a list, not vector.
7511 (ftxfont_open): Return a font-object. Adjusted for the change of
7512 struct font. Get underline_thickness and underline_position from
7513 font property. Don't update dpyinfo->smallest_font_height and
7514 dpyinfo->smallest_char_width.
7515 (ftxfont_close): Don't decrease FRAME_X_DISPLAY_INFO (f)->n_fonts.
7516 (ftxfont_draw): Adjusted for the change of struct font.
7517
7518 * image.c (image_ascent): Don't include "charset.h". Include
7519 "character.h" and "font.h".
7520
7521 * lisp.h (enum pvec_type): New member PREV_FONT.
7522 (Fassoc_string): EXFUN it.
7523
7524 * print.c: Include font.h.
7525 (print_object): Handle font-related objects.
7526
7527 * xdisp.c: Throughout the file, delete all USE_FONT_BACKEND
7528 conditionals. Don't check enable_font_backend. Delete all codes
7529 used only when USE_FONT_BACKEND is not defined.
7530 (handle_auto_composed_prop): Do nothing if it->f is not on a
7531 window system. Check how many following characters can be
7532 displayed by the same font.
7533 (calc_pixel_width_or_height): Type of the 4th arg is changed to
7534 'struct font *'.
7535 (get_char_face_and_encoding): Assign the whole encoding task to
7536 the `encode-char' method of a font driver.
7537 (fill_composite_glyph_string): Adjusted for the change of `struct
7538 face' and `struct glyph_string'.
7539 (fill_glyph_string): Likewise.
7540 (get_per_char_metric): Arguments changed.
7541 (x_get_glyph_overhangs): Adjusted for the change of `struct face'
7542 and `struct glyph_string'.
7543 (produce_stretch_glyph, calc_line_height_property)
7544 (x_produce_glyphs): Likewise.
7545
7546 * xfaces.c: Throughout the file, delete all USE_FONT_BACKEND
7547 conditionals. Don't check enable_font_backend. Delete all codes
7548 used only when USE_FONT_BACKEND is not defined. Use
7549 FONT_XXX_NAME_NUMERIC instead of face_numeric_xxx.
7550 (QCfoundry, QCadstyle, QCregistry, QCspacing, QCsize, QCavgwidth)
7551 (Qp): Extern them.
7552 (clear_font_table, load_face_font, xlfd_lookup_field_contents):
7553 Deleted.
7554 (struct font_name): Deleted.
7555 (xlfd_numeric_value, xlfd_symbolic_value): Deleted.
7556 (compare_fonts_by_sort_order): New function.
7557 (xlfd_numeric_slant, xlfd_symbolic_slant, xlfd_numeric_weight)
7558 (xlfd_symbolic_weight, xlfd_numeric_swidth, xlfd_symbolic_swidth):
7559 Deleted.
7560 (Fx_family_fonts): Use font_list_entities, and sort fonts by
7561 compare_fonts_by_sort_order.
7562 (Fx_font_family_list): Call Ffont_family_list.
7563 (face_numeric_value, face_numeric_weight, face_numeric_slant)
7564 (face_numeric_swidth, face_symbolic_value, face_symbolic_weight)
7565 (face_symbolic_slant, face_symbolic_swidth)
7566 (split_font_name_into_vector, build_font_name_from_vector)
7567 (xlfd_fixed_p, xlfd_point_size, pixel_point_size)
7568 (font_rescale_ratio, split_font_name, build_font_name)
7569 (free_font_names, sort_fonts, x_face_list_fonts)
7570 (face_font_available_p, sorted_font_list, cmp_font_names)
7571 (font_list_1, concat_font_list, font_list, remove_duplicates):
7572 Deleted.
7573 (Fx_list_fonts): Use Ffont_list.
7574 (LFACE_AVGWIDTH): Deleted.
7575 (check_lface_attrs): Don't check LFACE_AVGWIDTH. Check LFACE_FONT
7576 by FONTP.
7577 (lface_fully_specified_p): Don't check LFACE_AVGWIDTH.
7578 (set_lface_from_font_name): Delete it.
7579 (set_lface_from_font): Renamed from
7580 set_lface_from_font_and_fontset. Caller changed. Don't set
7581 LFACE_AVGWIDTH. Use FONT_XXX_FOR_FACE to get a symbol suitable
7582 for face.
7583 (merge_face_vectors): Copy font-spec if necessary.
7584 Clear properties of the font-spec if necessary.
7585 (merge_face_ref): Clear properties of the font-spec if necessary.
7586 (Finternal_set_lisp_face_attribute): Likewise.
7587 (set_font_frame_param): Use font_load_for_lface to load a
7588 font-object, and call Fmodify_frame_parameters with it.
7589 (x_update_menu_appearance): Don't check LFACE_AVGWIDTH. Get XLFD
7590 font name by Ffont_xlfd_name.
7591 (Finternal_lisp_face_attribute_values): Don't check QCweight,
7592 QCslant, and QCwidth.
7593 (Fface_font): Get a font name from font->props[FONT_NAME_INDEX].
7594 (lface_same_font_attributes_p): Don't check LFACE_AVGWIDTH.
7595 Compare fonts by EQ.
7596 (lookup_non_ascii_face): Deleted.
7597 (face_for_font): The 2nd argument changed.
7598 (x_supports_face_attributes_p): Don't check LFACE_AVGWIDTH.
7599 Check atomic font properties by case insensitive.
7600 (realize_non_ascii_face): Set face->overstrike correctly.
7601 (realize_x_face): Likewise. Check if LFACE_FONT is a font_object.
7602 (dump_realized_face): Get font name from
7603 font->props[FONT_NAME_INDEX]. Don't print font_info_id.
7604
7605 * xfns.c: Throughout the file, delete all USE_FONT_BACKEND
7606 conditionals. Don't check enable_font_backend. Delete all codes
7607 used only when USE_FONT_BACKEND is not defined.
7608 (xic_create_xfontset): Original code deleted and renamed from
7609 xic_create_xfontset2. Use FRAME_FONT, not FRAME_FONT_OBJECT.
7610 (x_make_gc): Don't set GCFont in GCs.
7611 (Fx_create_frame) [USE_LUCID]: Set xlwmenu_default_font to a font
7612 opened by "fixed".
7613 (syms_of_xfns): Don't set get_font_info_func, load_font_func,
7614 find_ccl_program_func, query_font_func, set_frame_fontset_func,
7615 get_font_repertory_func.
7616
7617 * xfont.c: Include <stdlib.h> and "ccl.h".
7618 (struct xfont_info): New structure.
7619 (xfont_query_font): Deleted.
7620 (xfont_find_ccl_program): Renamed from x_find_ccl_program and
7621 moved from xterm.c.
7622 (xfont_driver): Adjusted for the change of struct font_driver.
7623 (compare_font_names): New function.
7624 (xfont_list_pattern): Sort font names case insensitively. Make
7625 font_entity by calling font_make_entity. Avoid auto-scaled fonts.
7626 (xfont_list): Return a list, not vector.
7627 (xfont_match): If the font doesn't have QCname property, generate
7628 a name from the other font properties.
7629 (xfont_open): Return a font-object. Adjusted for the change of
7630 struct font. Get underline_thickness and underline_position from
7631 font property. Don't update dpyinfo->smallest_font_height and
7632 dpyinfo->smallest_char_width.
7633 (xfont_close): Don't free struct font.
7634 (xfont_prepare_face): Adjusted for the change of struct font.
7635 (xfont_done_face): Deleted.
7636 (xfont_has_char): Adjusted for the change of struct font.
7637 (xfont_encode_char, xfont_draw): Likewise.
7638 (xfont_check): New function.
7639
7640 * xftfont.c (xftfont_list): Adjusted for the change of `list'
7641 callback function.
7642 (xftfont_match): Adjusted for the format change of font-entity.
7643 (xftfont_open): Adjusted for the format change of font-entity and
7644 font-object. Adjusted for the change of struct font. Return a
7645 font-object. Don't update dpyinfo->smallest_font_height and
7646 dpyinfo->smallest_char_width.
7647 (xftfont_close): Block input while calling XftFontClose.
7648 (xftfont_prepare_face): Don't block input while calling
7649 xftfont_get_colors. Adjusted for the change of struct font.
7650 (xftfont_shape): Return value of error case fixed.
7651
7652 * xrdb.c (x_load_resources): Don't setup a fontset resource.
7653
7654 * xterm.h: Throughout the file, delete all USE_FONT_BACKEND
7655 conditionals.
7656 (FONT_WIDTH): Return (f)->max_width.
7657 (struct x_display_info): Delete member `font'.
7658 (x_list_fonts, x_get_font_info, x_load_font, x_query_font)
7659 (x_find_ccl_program, x_get_font_repertory): Delete externs.
7660 (struct x_output): Change type of `font' to `struct font *'.
7661
7662 * xterm.c: Throughout the file, delete all USE_FONT_BACKEND
7663 conditionals. Don't check enable_font_backend. Delete all codes
7664 used only when USE_FONT_BACKEND is not defined. Don't include ccl.h.
7665 (x_per_char_metric, x_encode_char): Deleted.
7666 (x_set_cursor_gc, x_set_mouse_face_gc): Don't set GCFont.
7667 (x_compute_glyph_string_overhangs): Adjusted for the change of
7668 `struct face'.
7669 (x_draw_glyph_string_foreground)
7670 (x_draw_composite_glyph_string_foreground): Likewise.
7671 (x_draw_glyph_string): Likewise. Use font->underline_position and
7672 font->underline_thickness.
7673 (x_new_font): Renamed from x_new_fontset2.
7674 (x_new_fontset, x_get_font_info, x_list_fonts): Deleted.
7675 (x_check_font): Call `check' method of a font driver.
7676 (x_font_min_bounds, x_compute_min_glyph_bounds, x_load_font)
7677 (x_query_font, x_get_font_repertory): Deleted.
7678 (x_find_ccl_program): Renamed and moved to xfont.c.
7679 (x_redisplay_interface): Adjusted for the change of `struct
7680 redisplay_interface'.
7681
7682 * w32fns.c: Throughout the file, delete all USE_FONT_BACKEND
7683 conditionals. Don't check enable_font_backend. Delete all codes
7684 used only when USE_FONT_BACKEND is not defined. Surround non-used
7685 code by "#ifdef OLD_FONT" and "endif".
7686 (Fw32_select_font): Use FONT_COMPAT to get old font structure.
7687
7688 * w32font.h (struct w32font_info): New member.
7689 (FONT_COMPAT): New macro.
7690 (w32font_open_internal): Prototype adjusted.
7691
7692 * w32gui.h (XGCValues): Surround `XFontStruct *font' by "if
7693 OLD_FONT" and "endif".
7694
7695 * w32font.c: Throughout the file, delete all USE_FONT_BACKEND
7696 conditionals. Don't check enable_font_backend. Delete all codes
7697 used only when USE_FONT_BACKEND is not defined.
7698 (w32font_open): Return a font-object. Make a font-object by
7699 font_make_object. Adjusted for the change of struct w32font_info.
7700 (w32font_close): Don't free struct font. Adjusted for the change
7701 of struct w32font_info.
7702 (w32font_encode_char, w32font_text_extents, w32font_draw):
7703 Adjusted for the change of struct w32font_info.
7704 (w32font_draw): Likewise.
7705 (w32font_list_internal): Return a list, not vector.
7706 (w32font_open_internal): Change the 4th arg to font-object.
7707 Adjusted for the change of struct w32font_info and font-object format.
7708 (add_font_name_to_list): Don't downcase names.
7709 (w32_enumfont_pattern_entity): Make a font-entity by
7710 font_make_entity. Adjusted for the format change of font-entity.
7711 Use FONT_SET_STYLE to set a style-related font property. If a
7712 font is scalable, set avgwidth property to 0. Set font-entity
7713 property by font_put_extra.
7714 (font_matches_spec): Adjusted for the format change of font-entity.
7715 (w32_weight_table, w32_decode_weight): New variables.
7716 (w32_encode_weight): New function.
7717 (fill_in_logfont): Adjusted for the format change of font-spec.
7718 (w32font_full_name): Use FONT_WEIGHT_SYMBOLIC to get a symbol
7719 weight value.
7720 (w32font_driver): Adjusted for the change of struct font_driver.
7721
7722 * w32term.h: Throughout the file, delete all USE_FONT_BACKEND
7723 conditionals. Don't check enable_font_backend. Surround non-used
7724 code by "#ifdef OLD_FONT" and "endif".
7725 (FONT_WIDTH, FONT_HEIGHT, FONT_BASE, FONT_DESCENT)
7726 (FONT_AVG_WIDTH): Adjusted for the change of struct font.
7727
7728 * w32term.c: Throughout the file, delete all USE_FONT_BACKEND
7729 conditionals. Don't check enable_font_backend. Delete all codes
7730 used only when USE_FONT_BACKEND is not defined. Surround non-used
7731 code by "#ifdef OLD_FONT" and "endif".
7732
7733 * w32uniscribe.c: Delete USE_FONT_BACKEND conditional.
7734 (uniscribe_open): Return value changed to font-object.
7735 Adjusted for the format change of font-object.
7736 (uniscribe_otf_capability): Adjusted for the change of struct font.
7737 (add_opentype_font_name_to_list): Don't downcase names.
7738 (uniscribe_font_driver): Adjusted for the change of struct
7739 font_driver.
7740
77412008-05-13 Chong Yidong <cyd@stupidchicken.com>
7742
7743 * dispnew.c (update_frame_1): Check if tty output is still valid
7744 before flushing it.
7745
77462008-05-13 Jan Djärv <jan.h.d@swipnet.se>
7747
7748 * xterm.c (handle_one_xevent): Don't pass buttons higher than 3
7749 to Gtk+ menus.
7750
77512008-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
7752
7753 * dired.c (file_name_completion): Tweak the code so as to always do it
7754 in a single pass. Tighten the scope of some variables.
7755
7756 * dired.c (Qdefault_directory): New var.
7757 (file_name_completion): Use it instead of Fexpand_file_name.
7758 (syms_of_dired): Initialize it.
7759
77602008-05-12 Stefan Monnier <monnier@iro.umontreal.ca>
7761
7762 * fileio.c (double_dollars): Remove dead code.
7763
77642008-05-10 Eli Zaretskii <eliz@gnu.org>
7765
7766 * dired.c (Ffile_attributes, Fdirectory_files_and_attributes):
7767 Mention w32-get-true-file-attributes in doc string.
7768
7769 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
7770
77712008-05-09 Glenn Morris <rgm@gnu.org>
7772
7773 * fileio.c (Fread_file_name): Remove reference to insdef, deleted
7774 2008-04-23.
7775
77762008-05-09 Eli Zaretskii <eliz@gnu.org>
7777
7778 Support for reporting owner and group of each file on MS-Windows:
7779 * dired.c (stat_uname, stat_gname): New functions, with special
7780 implementation for w32.
7781 (Ffile_attributes): Use them instead of getpwuid and getgrgid.
7782
7783 * w32.c: Rename the_passwd_* to dflt_passwd_*.
7784 (dflt_group_name): New static variable.
7785 (dflt_group): Rename from the_group.
7786 (init_user_info): Init dflt_group fields. Get user's group name
7787 from LookupAccountSid.
7788 (g_b_init_get_file_security, g_b_init_get_security_descriptor_owner)
7789 (g_b_init_get_security_descriptor_group, g_b_init_is_valid_sid):
7790 New initialization states.
7791 (globals_of_w32): Initialize them to zero. Initialize the default
7792 group name to "None".
7793 (GetFileSecurity_Name): New global var, the name of the function
7794 to call for GetFileSecurity.
7795 (GetFileSecurity_Proc, GetSecurityDescriptorOwner_Proc)
7796 (GetSecurityDescriptorGroup_Proc, IsValidSid_Proc): New typedefs.
7797 (get_file_security, get_security_descriptor_owner)
7798 (get_security_descriptor_group, is_valid_sid)
7799 (get_file_security_desc, get_rid, get_name_and_id)
7800 (get_file_owner_and_group): New functions.
7801 (stat): Use get_file_security_desc and get_file_owner_and_group to
7802 report the owner and primary group of each file. Don't ignore the
7803 high 32 bits of file's size, now that st_size is 64-bit wide.
7804 Fix test when to get true file attributes.
7805 (init_user_info): Use get_rid instead of equivalent inline code.
7806 (fstat): Don't ignore the high 32 bits of file's size.
7807
78082008-05-09 Chong Yidong <cyd@stupidchicken.com>
7809
7810 * image.c (png_load): Use correct bit-depth for setting background
7811 color.
7812
78132008-05-08 Eli Zaretskii <eliz@gnu.org>
7814
7815 * Makefile.in (lisp, shortlisp): Rename epa-file-hook.elc to
7816 epa-hook.elc.
7817
78182008-05-08 Juanma Barranquero <lekktu@gmail.com>
7819
7820 * font.c (Ffont_match_p): Don't use `iff' in docstring.
7821
78222008-05-07 Dan Nicolaescu <dann@ics.uci.edu>
7823
7824 * macfns.c (Fx_create_frame): Make a copy of frame parameters
7825 because the original parameters are in pure storage now.
7826 (mac_window): Remove unused params. Update callers.
7827
78282008-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
7829
7830 * lread.c (substitute_object_recurse): Use lower-level primitives.
7831 Don't signal errors when traversing sub-char-tables.
7832 Don't loop over all the possible characters when traversing char-tables.
7833
7834 * print.c (print_preprocess): Add sub-char-tables to the print-table,
7835 just like we do in print.c.
7836
78372008-05-05 Stefan Monnier <monnier@iro.umontreal.ca>
7838
7839 * minibuf.c (Ftry_completion): Remove code left over from when we used
7840 scmp instead of Fcompare_strings.
7841
78422008-05-04 Juanma Barranquero <lekktu@gmail.com>
7843
7844 * w32fns.c (Fw32_battery_status): Fix computation of %t (h:min) format.
7845
78462008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7847
7848 * image.c [USE_MAC_IMAGE_IO] (image_load_image_io):
7849 Create bitmap context in native byte order.
7850
7851 * macterm.c (XDrawLine)
7852 (XCreatePixmapFromBitmapData) [USE_MAC_IMAGE_IO]: Create bitmap
7853 context in native byte order.
7854
78552008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7856
7857 * config.in: Regenerate.
7858
7859 * image.c (PIX_MASK_DRAW, PIX_MASK_RETAIN) [USE_MAC_IMAGE_IO]:
7860 New definitions for Image I/O support.
7861 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
7862 (mac_create_cg_image_from_image, x_create_x_image_and_pixmap)
7863 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
7864 (mac_data_provider_release_data, image_load_image_io)
7865 [USE_MAC_IMAGE_IO]: New functions.
7866 (CGImageCreateWithPNGDataProviderProcType) [MAC_OSX]: Remove typedef.
7867 (MyCGImageCreateWithPNGDataProvider) [MAC_OSX]: Remove variable.
7868 (init_image_func_pointer) [MAC_OSX]: Remove function.
7869 (image_load_quartz2d) [MAC_OSX]: Check availability of
7870 CGImageCreateWithPNGDataProvider at compile time.
7871 Use lowercase `false' for boolean constant.
7872 (png_load, jpeg_load, tiff_load, gif_load) [USE_MAC_IMAGE_IO]:
7873 Use image_load_image_io.
7874 (png_load) [!USE_MAC_IMAGE_IO && MAC_OSX]:
7875 Don't check MyCGImageCreateWithPNGDataProvider.
7876 (init_image) [MAC_OSX && TARGET_API_MAC_CARBON]:
7877 Don't call init_image_func_pointer.
7878
7879 * macgui.h (Pixmap) [USE_MAC_IMAGE_IO]: New definition for Image I/O.
7880
7881 * macterm.c (mac_cg_color_space_rgb) [USE_CG_DRAWING]:
7882 Make variable non-static.
7883 (XDrawLine, XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
7884 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
7885
7886 * macterm.h (ARGB_TO_ULONG, ALPHA_FROM_ULONG): New macros.
7887 (RED_FROM_ULONG): Mask off higher bits.
7888 (mac_cg_color_space_rgb) [USE_MAC_IMAGE_IO]: New extern.
7889
7890 * s/darwin.h [HAVE_CARBON && HAVE_AVAILABILITYMACROS_H]:
7891 Include AvailabilityMacros.h.
7892 (USE_MAC_IMAGE_IO, LIBS_IMAGE) [HAVE_CARBON]: New defines.
7893 (LIBS_CARBON) [HAVE_CARBON]: Use LIBS_IMAGE.
7894
78952008-05-03 Stefan Monnier <monnier@iro.umontreal.ca>
7896
7897 * chartab.c (Fset_char_table_range): If range is t, really set all
7898 chars to that value.
7899
79002008-05-03 Eli Zaretskii <eliz@gnu.org>
7901
7902 * dired.c (Ffile_attributes): Don't allow the device number become
7903 negative.
7904
79052008-05-02 Daiki Ueno <ueno@unixuser.org>
7906
7907 * Makefile.in (lisp, shortlisp): Add epa-file-hook.elc.
7908
79092008-05-02 Juri Linkov <juri@jurta.org>
7910
7911 * minibuf.c (Fread_from_minibuffer, Fread_string, Fread_command)
7912 (Fread_variable, Fread_buffer, Fcompleting_read): Document the
7913 DEFAULT argument as a list of default values in docstrings.
7914
79152008-05-01 Chong Yidong <cyd@stupidchicken.com>
7916
7917 * puresize.h (BASE_PURESIZE): Increase to 1210000.
7918
79192008-05-01 Martin Rudalics <rudalics@gmx.at>
7920
7921 * dispnew.c (change_frame_size_1): Preserve small windows when
7922 shrinking frames by calling set_window_height|width with third
7923 arg 2.
7924
7925 * window.h (struct window): Replace field too_small_ok by field
7926 resize_proportionally.
7927
7928 * window.c (make_window): Initialize resize_proportionally.
7929 (enlarge_window): Temporarily set resize_proportionally to make
7930 sure that shrink_windows does scale the window proportionally.
7931 (shrink_windows): When window has resize_proportionally set try
7932 to shrink it proportionally by stealing from other windows.
7933 (struct saved_window, Fset_window_configuration)
7934 (compare_window_configurations): Handle resize_proportionally.
7935 (WINDOW_TOTAL_SIZE): New macro.
7936 (window_min_size, shrink_windows, size_window): Use it.
7937 (check_min_window_sizes): Remove. Invalid values of
7938 window-min-height|width are handled by window_min_size_2 now.
7939 (size_window, Fsplit_window, enlarge_window)
7940 (adjust_window_trailing_edge, grow_mini_window): Don't call
7941 check_min_window_sizes.
7942 (window_min_size_2, window_min_size_1, window_min_size):
7943 New argument safe_p for retrieving "safe" minimum sizes.
7944 (Fdisplay_buffer, Fsplit_window, enlarge_window)
7945 (adjust_window_trailing_edge, grow_mini_window):
7946 Adjust arguments of window_min_size... functions.
7947 (shrink_windows): Argument min_size removed. New argument
7948 safe_p allows shrinking windows to their safe minimum sizes.
7949 Calculate minimum size and decide whether a window shall be
7950 deleted for each window individually.
7951 (size_window): When nodelete_p equals 2, tell shrink_windows to
7952 delete windows only if their new minimum size is no more safe.
7953 (shrink_window_lowest_first): Call window_min_size_1 to make
7954 sure to preserve modeline of bottom-most window when resizing
7955 the minibuffer.
7956 (Fset_window_configuration, Fcurrent_window_configuration)
7957 (compare_window_configurations): Do not handle
7958 window-min-height|width any more.
7959 (syms_of_window): Clarify window-min-height|width doc-strings.
7960
79612008-04-30 Stefan Monnier <monnier@iro.umontreal.ca>
7962
7963 * dired.c (file_name_completion): Fix up the encoding/decoding issue
7964 some more. Copy some of the code from Ftry_completions.
7965 Remove special case code that dates back to initial revision when the
7966 slash was only added when necessary and that can't trigger nowadays.
7967
79682008-04-27 Kenichi Handa <handa@m17n.org>
7969
7970 * font.c (font_prop_validate): Signal `error' instead of `font'.
7971
79722008-04-29 Jason Rumney <jasonr@gnu.org>
7973
7974 * w32fns.c (Fw32_battery_status): New defun.
7975 (syms_of_w32fns): Defsubr it.
7976
79772008-04-28 Andreas Schwab <schwab@suse.de>
7978
7979 * dired.c (file_name_completion): Fix another mixing of encoded
7980 and decoded names.
7981
79822008-04-28 Juanma Barranquero <lekktu@gmail.com>
7983
7984 * w32fns.c (Fw32_define_rgb_color): Fix typo in docstring.
7985
79862008-04-27 Juanma Barranquero <lekktu@gmail.com>
7987
7988 * fringe.c (Fdefine_fringe_bitmap): Doc fix.
7989
79902008-04-27 Andreas Schwab <schwab@suse.de>
7991
7992 * dired.c (file_name_completion): Fix inappropriate mixing of
7993 encoded and decoded names.
7994
7995 * xterm.c (XTread_socket): Fix use of uninitialized variable.
7996
7997 * puresize.h (BASE_PURESIZE): Increase to 1200000.
7998
79992008-04-26 Eli Zaretskii <eliz@gnu.org>
8000
8001 * dired.c (Ffile_attributes) [WINDOWSNT]: Undo change from
8002 2008-03-31, it's not needed anymore with `struct stat' definition
8003 on nt/inc/sys/stat.h. Undo changes from 2007-01-12 and 2007-01-13
8004 for the same reasons.
8005
80062008-04-25 Dennis Gilmore <ausil@fedoraproject.org> (tiny change)
8007
8008 * m/sparc.h: Additional redefinitions for GNU/Linux.
8009
80102008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8011
8012 * macterm.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: New variable.
8013 (syms_of_macterm) [USE_MAC_TSM]: Defvar it.
8014 (Qmouse_drag_overlay) [MAC_OSX]: New variable.
8015 (syms_of_macterm) [MAC_OSX]: Intern and staticpro it.
8016 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
8017 (mac_ax_selected_text_range) [MAC_OSX]: New functions.
8018 (mac_ax_number_of_characters) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
8019 Likewise.
8020
8021 * mactoolbox.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: Add extern.
8022 (fast_find_position, x_y_to_hpos_vpos, mac_ax_selected_text_range)
8023 (mac_ax_number_of_characters): Add externs.
8024 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
8025 [USE_MAC_TSM]: Likewise.
8026 (mac_handle_text_input_event) [MAC_OSX]:
8027 Handle kEventTextInputOffsetToPos for no active input area case.
8028 Handle kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
8029 (mac_handle_document_access_event)
8030 [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: New function.
8031 (install_application_handler) [MAC_OSX]: Register handlers for
8032 kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
8033 (install_application_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
8034 Register mac_handle_document_access_event.
8035
8036 * xdisp.c (x_y_to_hpos_vpos, fast_find_position) [HAVE_CARBON]:
8037 Make functions non-static.
8038
80392008-04-23 Stefan Monnier <monnier@iro.umontreal.ca>
8040
8041 * fileio.c (Vread_file_name_function, Vread_file_name_predicate)
8042 (read_file_name_completion_ignore_case, insert_default_directory)
8043 (Qdefault_directory): Move to minibuffer.el.
8044 (Fread_file_name): Call the new `read-file-name' instead.
8045
80462008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8047
8048 * mac.c (create_apple_event) [TARGET_API_MAC_CARBON]:
8049 Make function non-static.
8050 (create_apple_event_from_event_ref) [TARGET_API_MAC_CARBON]:
8051 Remove function.
8052 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
8053 Move to mactoolbox.c.
8054 (mac_event_parameters_to_lisp) [TARGET_API_MAC_CARBON]: New function.
8055
8056 * macgui.h (CGFloat) [!CGFLOAT_DEFINED]: New typedef.
8057 (mac_rect_make): New macro.
8058
8059 * macterm.c (mac_draw_image_string_atsui) [MAC_OSX]: Use CGFloat
8060 instead of float.
8061 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
8062 (init_cg_color, mac_draw_line, mac_draw_cg_image, XSetForeground)
8063 (XSetBackground) [USE_CG_DRAWING]: Likewise.
8064 (mac_draw_image_string_atsui) [MAC_OSX]: Use mac_rect_make instead of
8065 CGRectMake.
8066 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
8067 (mac_erase_rectangle, mac_draw_cg_image, mac_fill_rectangle)
8068 (mac_set_clip_rectangles) [USE_CG_DRAWING]: Likewise.
8069 (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
8070 instead of WindowRef in argument type.
8071 (XCreatePixmap) [!MAC_OS8]: Don't call SetPortWindowPort.
8072 (mac_invert_rectangle): Use CGContextSetBlendMode if available.
8073 (mac_set_clip_rectangles, mac_reset_clip_rectangles): Take argument F
8074 instead of DISPLAY. All uses changed.
8075 (mac_handle_size_change): Don't call SET_FRAME_GARBAGED.
8076 (x_calc_absolute_position): Simplify so as not to use
8077 FRAME_PIXEL_WIDTH/FRAME_PIXEL_HEIGHT.
8078
8079 * macterm.h (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
8080 instead of WindowRef in argument type.
8081 (create_apple_event_from_event_ref, create_apple_event_from_drag_ref)
8082 [TARGET_API_MAC_CARBON]: Remove externs.
8083 (create_apple_event, mac_event_parameters_to_lisp)
8084 [TARGET_API_MAC_CARBON]: Add externs.
8085
8086 * mactoolbox.c (Vmac_ts_script_language_on_focus)
8087 (saved_ts_script_language_on_focus) [USE_MAC_TSM]: Remove externs.
8088 (XTread_socket) [USE_MAC_TOOLBAR]: Select window if its structure part
8089 is clicked.
8090 (x_activate_menubar): Remove extern for saved_menu_event_location.
8091 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
8092 Move from mac.c.
8093
80942008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8095
8096 * alloc.c [!SYSTEM_MALLOC && !SYNC_INPUT] (uninterrupt_malloc)
8097 [HAVE_GTK_AND_PTHREAD && !DOUG_LEA_MALLOC]: Don't use recursive mutex.
8098
80992008-04-23 Jason Rumney <jasonr@gnu.org>
8100
8101 * w32.c (stat): When Vw32_get_true_file_attributes is Qlocal, get
8102 attributes only for local files.
8103
8104 * w32proc.c (syms_of_ntproc): Change Vw32_get_true_file attributes
8105 default to Qlocal.
8106
81072008-04-22 Juri Linkov <juri@jurta.org>
8108
8109 * buffer.c (Fswitch_to_buffer): Change interactive spec to call
8110 read-buffer-to-switch instead of using the letter "B".
8111
81122008-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
8113
8114 * fileio.c (Qdefault_directory): New variable.
8115 (Fread_file_name): Use it to pass `dir' to the completion functions.
8116
81172008-04-20 Chong Yidong <cyd@stupidchicken.com>
8118
8119 * xdisp.c (pos_visible_p): Check if iterator stops on a display string.
8120
81212008-04-19 Stefan Monnier <monnier@iro.umontreal.ca>
8122
8123 * keyboard.c (Vpre_help_message): Remove.
8124 (show_help_echo): Remove default C code.
8125
8126 * dired.c (directory_files_internal, file_name_completion):
8127 Only call ENCODE_FILE if the string is indeed decoded.
8128
81292008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
8130
8131 * Makefile.in (TOOLKIT_DEFINES): Remove.
8132 (LIBW): Use a bit less #if, remove left over OPEN_LOOK stuff.
8133
81342008-04-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8135
8136 * Makefile.in (MAC_OBJ): Add mactoolbox.o.
8137 (mactoolbox.o): New target.
8138
8139 * mac.c [MAC_OSX] (select_and_poll_event, sys_select):
8140 Use mac_run_loop_run_once instead of CFRunLoopRunInMode.
8141
8142 * macfns.c (x_set_background_color, mac_window, x_create_tip_frame):
8143 Use mac_set_frame_window_background instead of XSetWindowBackground.
8144 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]:
8145 Use mac_is_window_toolbar_visible instead of IsWindowToolbarVisible.
8146 (x_set_name_internal) [TARGET_API_MAC_CARBON]: Use mac_set_window_title
8147 instead of SetWindowTitleWithCFString.
8148 (mac_update_proxy_icon) [TARGET_API_MAC_CARBON]: Remove BLOCK_INPUT.
8149 Move function to mactoolbox.c.
8150 (mac_update_title_bar) [TARGET_API_MAC_CARBON]:
8151 Use mac_set_window_modified instead of SetWindowModified.
8152 Add BLOCK_INPUT around mac_set_window_modified/mac_update_proxy_icon.
8153 (mac_window, x_create_tip_frame): Use mac_create_frame_window.
8154 (Fx_focus_frame): Use mac_front_non_floating_window instead of
8155 FrontNonFloatingWindow. Use mac_activate_window instead of
8156 ActivateWindow. Use mac_active_non_floating_window instead of
8157 ActiveNonFloatingWindow.
8158 (show_hourglass, hide_hourglass) [TARGET_API_MAC_CARBON]:
8159 Use mac_show_hourglass and mac_hide_hourglass.
8160 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use mac_get_global_mouse
8161 instead of GetGlobalMouse.
8162 (Fx_show_tip): Use mac_move_window/mac_size_window/mac_show_window
8163 instead of MoveWindow/SizeWindow/ShowWindow, respectively.
8164 Use mac_bring_window_to_front instead of BringToFront.
8165 (Qfile_name_history) [TARGET_API_MAC_CARBON]: Move extern to
8166 mactoolbox.c.
8167 (Fx_file_dialog) [TARGET_API_MAC_CARBON]: Move function body to
8168 mac_file_dialog in mactoolbox.c. Use mac_file_dialog.
8169 (mac_nav_event_callback) [TARGET_API_MAC_CARBON]: Move function to
8170 mactoolbox.c.
8171
8172 * macgui.h [!HAVE_CARBON]: Include Quickdraw.h instead of QuickDraw.h.
8173 (XtPointer): Move typedef from macmenu.c.
8174 (enum button_type): Move enum from macmenu.c.
8175 (widget_value): Move typedef from macmenu.c.
8176 (M_APPLE, I_ABOUT, EXTRA_STACK_ALLOC, ARGV_STRING_LIST_ID)
8177 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
8178 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
8179 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
8180 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
8181 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
8182 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
8183 (DIALOG_ICON_TOP_MARGIN): Move defines from macmenu.c.
8184 (Selection): Move typedef from macselect.c.
8185 (RAM_TOO_LARGE_ALERT_ID, ABOUT_ALERT_ID) [MAC_OS8]: Move defines from
8186 macterm.c.
8187 (mac_set_window_title, mac_set_window_modified, mac_is_window_visible)
8188 (mac_is_window_collapsed, mac_bring_window_to_front)
8189 (mac_send_window_behind, mac_hide_window, mac_show_window)
8190 (mac_collapse_window, mac_front_non_floating_window)
8191 (mac_active_non_floating_window, mac_activate_window)
8192 (mac_move_window_structure, mac_move_window, mac_size_window)
8193 (mac_get_global_mouse, mac_is_window_toolbar_visible): New defines.
8194
8195 * macmenu.c [!TARGET_API_MAC_CARBON]: Move includes to mactoolbox.c.
8196 (enum mac_menu_kind): Move enum to mactoolbox.c.
8197 (min_menu_id): Move variable to mactoolbox.c.
8198 (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]: Likewise.
8199 (DIALOG_WINDOW_RESOURCE): Move define to mactoolbox.c.
8200 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
8201 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
8202 [TARGET_API_MAC_CARBON]: Likewise.
8203 (XtPointer): Move typedef to macgui.h.
8204 (enum button_type): Move enum to macgui.h.
8205 (widget_value): Move typedef to macgui.h.
8206 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
8207 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
8208 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
8209 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
8210 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
8211 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
8212 (DIALOG_ICON_TOP_MARGIN): Move defines to macgui.h.
8213 (popup_activated_flag): Make variable non-static.
8214 (x_activate_menubar, install_menu_quit_handler, pop_down_menu)
8215 (add_menu_item, fill_menu, dispose_menus):
8216 Move functions to mactoolbox.c.
8217 (restore_show_help_function, menu_target_item_handler)
8218 (install_menu_target_item_handler, mac_handle_dialog_event)
8219 (install_dialog_event_handler, pop_down_dialog, create_and_show_dialog)
8220 [TARGET_API_MAC_CARBON]: Likewise.
8221 (menu_quit_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: Likewise.
8222 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
8223 (find_and_call_menu_selection, name_is_separator): Make function
8224 non-static.
8225 (Vshow_help_function, timer_check) [TARGET_API_MAC_CARBON]: Move extern
8226 to mactoolbox.c.
8227 (set_frame_menubar): Don't call install_menu_quit_handler.
8228 (menu_item_selection): New variable.
8229 (mac_menu_show): Use create_and_show_popup_menu.
8230 (create_and_show_dialog) [TARGET_API_MAC_CARBON]: Don't return
8231 selection but set variable menu_item_selection. All uses changed.
8232 (mac_fill_menubar): Rename from fill_menubar. All uses changed.
8233 Call install_menu_quit_handler. Move to mactoolbox.c.
8234
8235 * macselect.c [!TARGET_API_MAC_CARBON]: Don't include Scrap.h.
8236 (Selection): Move typedef to macgui.h.
8237 (Vselection_converter_alist, Qmac_scrap_name, Qmac_ostype)
8238 (Vmac_apple_event_map, Qmac_apple_event_class, Qmac_apple_event_id):
8239 Make variables non-static.
8240 (Vmac_dnd_known_types) [TARGET_API_MAC_CARBON]: Likewise.
8241 (mac_handle_apple_event, cleanup_all_suspended_apple_events):
8242 Make functions non-static.
8243 (Vmac_service_selection) [MAC_OSX]: Likewise.
8244 (mac_get_selection_from_symbol, get_flavor_type_from_symbol)
8245 (mac_valid_selection_target_p, mac_clear_selection)
8246 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
8247 (mac_put_selection_value, mac_selection_has_target_p)
8248 (mac_get_selection_value, mac_get_selection_target_list)
8249 (init_apple_event_handler, install_drag_handler, remove_drag_handler):
8250 Move functions to mactoolbox.c.
8251 (mac_do_track_drag, mac_do_receive_drag) [TARGET_API_MAC_CARBON]:
8252 Likewise.
8253 (copy_scrap_flavor_data, mac_handle_service_event)
8254 (install_service_handler) [MAC_OSX]: Likewise.
8255 (syms_of_macselect) <Vmac_dnd_known_types>:
8256 Use mac_dnd_default_known_types.
8257
8258 * macterm.h (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y):
8259 Move to mactoolbox.c.
8260 (HOURGLASS_WIDTH, HOURGLASS_HEIGHT): Change to 15.
8261 (Fx_selection_owner_p): Add EXFUN.
8262 (install_window_handler, remove_window_handler, XSetWindowBackground):
8263 Remove externs.
8264 (do_apple_menu) [!TARGET_API_MAC_CARBON]: Likewise.
8265 (mac_prepare_for_quickdraw) [USE_CG_DRAWING]: Likewise.
8266 (x_raise_frame, x_lower_frame, mac_alert_sound_play)
8267 (install_application_handler, mac_get_frame_bounds, mac_get_frame_mouse)
8268 (mac_convert_frame_point_to_global, mac_set_frame_window_background)
8269 (mac_update_begin mac_update_end, mac_frame_up_to_date, x_flush)
8270 (mac_create_frame_window, mac_dispose_frame_window, mac_begin_clip)
8271 (mac_end_clip, mac_create_scroll_bar, mac_dispose_scroll_bar)
8272 (mac_set_scroll_bar_bounds, mac_redraw_scroll_bar, mac_fill_menubar)
8273 (create_and_show_popup_menu, mac_get_selection_from_symbol)
8274 (mac_valid_selection_target_p, mac_clear_selection)
8275 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
8276 (mac_put_selection_value, mac_selection_has_target_p)
8277 (mac_get_selection_value, mac_get_selection_target_list): Add externs.
8278 (mac_update_proxy_icon, mac_show_hourglass, mac_hide_hourglass)
8279 (mac_reposition_hourglass, mac_file_dialog, create_and_show_dialog)
8280 (mac_dnd_default_known_types) [TARGET_API_MAC_CARBON]: Likewise.
8281 (mac_run_loop_run_once) [MAC_OSX]: Likewise.
8282 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
8283 (mac_begin_cg_clip, mac_end_cg_clip) [USE_CG_DRAWING]: Likewise.
8284 (x_set_toolkit_scroll_bar_thumb) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
8285 (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
8286
8287 * mactoolbox.c: New file.
8288
82892008-04-18 Jason Rumney <jasonr@gnu.org>
8290
8291 * dired.c (Ffile_attributes) [WINDOWSNT]: Cast uid and gid to unsigned.
8292
82932008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
8294
8295 * character.c (Fmultibyte_char_to_unibyte):
8296 Return latin1 chars unchanged.
8297
8298 * fileio.c (Fexpand_file_name): Refine last fix so `nm' is only
8299 relocated if it points to `name'.
8300
83012008-04-17 Kenichi Handa <handa@m17n.org>
8302
8303 * data.c (Faset): Allow setting a multibyte character in an
8304 ASCII-only unibyte string.
8305
8306 * lisp.h (STRING_SET_MULTIBYTE): New macro.
8307
83082008-04-16 Stefan Monnier <monnier@iro.umontreal.ca>
8309
8310 * Makefile.in: Don't use HAVE_GTK and don't -DUSE_GTK since it's now
8311 done in config.h.
8312
83132008-04-16 Juanma Barranquero <lekktu@gmail.com>
8314
8315 * character.c (Fchar_bytes, Fchar_width, Fstring_width)
8316 (Fchar_direction): Add usage in the docstring.
8317
83182008-04-15 Chong Yidong <cyd@stupidchicken.com>
8319
8320 * keyboard.c (read_key_sequence): Remove always-true checks.
8321
83222008-04-14 Jason Rumney <jasonr@gnu.org>
8323
8324 * w32font.c (w32font_open_internal): Set max_bounds.descent in
8325 compatibility struct, for better underline positioning.
8326
83272008-04-13 David Hansen <david.hansen@gmx.net>
8328
8329 * dbusbind.c (dbus-get-unique-name): Remove extra copying of name
8330 string.
8331
83322008-04-12 Dan Nicolaescu <dann@ics.uci.edu>
8333
8334 * m/hp800.h (XUINT, XSET): Remove.
8335
83362008-04-12 Juanma Barranquero <lekktu@gmail.com>
8337
8338 * fileio.c (Fexpand_file_name): Add declaration for `p' missing in
8339 previous change.
8340
83412008-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
8342
8343 * fileio.c (Fexpand_file_name): Tighten the scope of `p' and `o' vars.
8344 Relocate `nm' after calling DECODE_FILE, in case the GC was run.
8345
83462008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
8347
8348 * keymap.h (map_keymap_canonical): Declare.
8349 * xmenu.c (single_keymap_panes): Use it.
8350
83512008-04-11 Glenn Morris <rgm@gnu.org>
8352
8353 * eval.c (Fdefvaralias): If the alias is bound and the target is not,
8354 set the target's value to that of the alias.
8355
83562008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
8357
8358 * term.c (set_tty_color_mode): Left over typo.
8359
83602008-04-10 Michael Albinus <michael.albinus@gmx.de>
8361
8362 * fileio.c (Fmake_symbolic_link): Surround code by #ifdef S_IFLNK
8363 only after check for file name handler functions. Signal, when
8364 native functionality is not supported.
8365 (syms_of_fileio): Declare it unconditionally.
8366
83672008-04-10 Jason Rumney <jasonr@gnu.org>
8368
8369 * w32menu.c (is_simple_dialog, simple_dialog_show): New functions.
8370 (Fx_popup_dialog): Handle simple yes/no questions as dialogs.
8371
8372 * w32.c (logon_network_drive): Also logon to remote drives that
8373 are mapped to drive letters.
8374
83752008-04-10 Glenn Morris <rgm@gnu.org>
8376
8377 * xdisp.c (truncate-partial-width-windows): Doc fix.
8378
83792008-04-10 Stefan Monnier <monnier@iro.umontreal.ca>
8380
8381 * fileio.c (read_file_name_cleanup, Fread_file_name_internal):
8382 Move functions to minibuffer.el.
8383 (syms_of_fileio): Don't declare them.
8384
83852008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
8386
8387 * minibuf.c (Vcompletion_auto_help): Move to minibuffer.el.
8388 (syms_of_minibuf): Remove its initialization.
8389
8390 * minibuf.c (temp_echo_area_glyphs): Remove unused function.
8391
83922008-04-09 Juanma Barranquero <lekktu@gmail.com>
8393
8394 * editfns.c (Ffield_string_no_properties): Fix typo in docstring.
8395
83962008-04-09 Jason Rumney <jasonr@gnu.org>
8397
8398 * makefile.w32-in (distclean): Delete makefile too.
8399 (maintainer-clean): New target.
8400
8401 * xdisp.c (redisplay_internal) [!WINDOWSNT]: Conditionalize last change.
8402
8403 * w32term.c (w32_compute_glyph_string_overhangs): Compute overhangs
8404 for new font backend and composite cases.
8405
84062008-04-09 Jan Djärv <jan.h.d@swipnet.se>
8407
8408 * atimer.c (alarm_signal_handler): Call run_timers if not SYNC_INPUT.
8409 Most of the code moved to run_timers.
8410 (do_pending_atimers): Call run_timers.
8411 (run_timers): New function.
8412
8413 * sysdep.c (emacs_write): If SYNC_INPUT and pending_atimers,
8414 run atimers.
8415
8416 * process.c (wait_reading_process_output): The same as above.
8417
84182008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
8419
8420 * minibuf.c (last_exact_completion): Remove variable.
8421 (Fdelete_minibuffer_contents, do_completion, Fminibuffer_complete)
8422 (complete_and_exit_1, complete_and_exit_2)
8423 (Fminibuffer_complete_and_exit, Fminibuffer_complete_word)
8424 (Fdisplay_completion_list, display_completion_list_1)
8425 (Fminibuffer_completion_help, Fself_insert_and_exit)
8426 (Fexit_minibuffer, Fminibuffer_message): Move functions to
8427 minibuffer.el.
8428 (syms_of_minibuf): Remove corresponding initializations.
8429
8430 * keyboard.c (Qdeactivate_mark): New var.
8431 (command_loop_1): Use it to call `deactivate-mark'.
8432 (syms_of_keyboard): Initialize it.
8433
8434 * xdisp.c (redisplay_internal): Reset tty's color_mode when switching
8435 to another frame.
8436 * frame.c (do_switch_frame): Refine the top_frame/async_visible code.
8437 Don't call set_tty_color_mode.
8438 (store_frame_param): Reset previous_frame rather than call
8439 set_tty_color_mode.
8440 * term.c (set_tty_color_mode): Rewrite.
8441 * dispextern.h (set_tty_color_mode): New type.
8442 * termchar.h (struct tty_display_info): Add `previous_color_mode'.
8443
84442008-04-08 Stefan Monnier <monnier@iro.umontreal.ca>
8445
8446 * keymap.c (access_keymap): Remove the value 2 for t_ok which was used
8447 for generic chars, which do not exist any more in emacs-unicode.
8448
84492008-04-08 Michael Albinus <michael.albinus@gmx.de>
8450
8451 * coding.c (detect_coding_emacs_mule)
8452 (Ffind_operation_coding_system): Fix typo.
8453
84542008-04-08 Jason Rumney <jasonr@gnu.org>
8455
8456 * w32uniscribe.c (SNAME): Extract only symbol name.
8457
8458 * w32font.h (struct w32_metric_cache): New struct.
8459 (w32font_info): Use it.
8460 (W32METRIC_NO_ATTEMPT, W32METRIC_SUCCESS, W32METRIC_FAIL)
8461 (CACHE_BLOCKSIZE): New constants.
8462
8463 * w32font.c (Qja, Qko, Qzh): New symbols.
8464 (syms_of_w32font): Initialise them.
8465 (font_matches_spec): Use them to filter by language.
8466 (recompute_cached_metrics): Remove function.
8467 (compute_metrics, clear_cached_metrics): New functions.
8468 (w32font_encode_char): Use them to manage metric cache.
8469 (w32font_text_extents): Cache metrics for all glyphs on demand.
8470 Delay converting glyph indices to WORD until needed.
8471 (w32font_open_internal): Initialize metric cache to empty.
8472 (registry_to_w32_charset): Charset should always be a symbol.
8473 (fill_in_logfont, list_all_matching_fonts): Family should
8474 always be a symbol.
8475
84762008-04-06 Jason Rumney <jasonr@gnu.org>
8477
8478 * w32uniscribe.c (uniscribe_shape): Increase items buffer size.
8479 Give up if glyph indices not supported. Use uniscribe obtained
8480 ABC widths for individual metrics. Map glyph clusters back to
8481 characters using fClusterStart flag. Return number of glyphs
8482 produced, not chars processed.
8483 (uniscribe_shape): Map char at FROM to current glyph.
8484
84852008-04-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8486
8487 * macmenu.c (fill_menu) [TARGET_API_MAC_CARBON]:
8488 Use SetMenuItemHierarchicalMenu.
8489
84902008-04-05 Jason Rumney <jasonr@gnu.org>
8491
8492 * image.c (pbm_load): Allow color values up to 65535.
8493 Throw an error if max_color_idx is outside the supported range.
8494 Report an error when image size is invalid.
8495 Read two bytes at a time when raw images have max_color_idx above 255.
8496
84972008-04-05 Eli Zaretskii <eliz@gnu.org>
8498
8499 * w32.c (readdir): If FindFirstFile/FindNextFile return in
8500 cFileName a file name that includes `?' characters, use the 8+3
8501 alias in cAlternateFileName instead.
8502
85032008-04-05 Kenichi Handa <handa@ni.aist.go.jp>
8504
8505 * ccl.c (ccl_driver): If ccl->quit_silently is nonzero, don't
8506 append "CCL: Quitted" when the CCL program is quitted.
8507 (setup_ccl_program): Initialize ccl->quit_silently to zero.
8508
8509 * ccl.h (struct ccl_program): New member quit_silently.
8510
85112008-04-05 Chong Yidong <cyd@stupidchicken.com>
8512
8513 * search.c (compile_pattern_1): Treat non-nil and non-string of
8514 search-spaces-regexp as nil.
8515
8516 * minibuf.c (Fassoc_string): Tweak docstring.
8517
85182008-04-05 Eli Zaretskii <eliz@gnu.org>
8519
8520 * dired.c (Ffile_attributes): Support inode numbers wider than 32
8521 bits. Remove ugly WINDOWSNT-specific kludge introduced on
8522 2008-03-14 to force inode be positive.
8523
8524 * w32.c (sys_chown, stat, fstat): Use S_* constants instead of
8525 _S_* ones, since we now use our own sys/stat.h.
8526 (stat, fstat): Don't mangle the inode number.
8527 (init_user_info): Don't restrict UID and GID to 0-60000 range.
8528
85292008-04-04 Stefan Monnier <monnier@iro.umontreal.ca>
8530
8531 * frame.h (struct frame): Give one more bit to `visible' since we use
8532 values larger than 1 to indicate obscured frames on ttys.
8533
8534 * keymap.c (Qkeymap_canonicalize): New var.
8535 (Fmap_keymap_internal): New fun.
8536 (describe_map): Use keymap-canonicalize.
8537
8538 * undo.c (last_boundary_buffer, last_boundary_position): New vars.
8539 (Fundo_boundary): Set them.
8540 (syms_of_undo): Initialize them.
8541 (record_point): Use them instead of last_point_position*.
8542 (last_undo_buffer): Change type.
8543
85442008-04-04 Jason Rumney <jasonr@gnu.org>
8545
8546 * w32font.c (w32font_text_extents): Use font's ascent and descent.
8547 (recompute_cached_metrics): Don't set ascent and descent per char.
8548
8549 * w32uniscribe.c (uniscribe_check_otf): Fix last change.
8550 (uniscribe_check_otf): Add GC protection before consing.
8551 Rearrange loop for counting features.
8552
85532008-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
8554
8555 * insdel.c (insert_from_buffer_1): Don't compare bytes in destination
8556 buffer with byte-size of source buffer.
8557
85582008-04-03 Chong Yidong <cyd@stupidchicken.com>
8559
8560 * callint.c (Fcall_interactively): Handle temporary region even
8561 when shift-select-mode is off.
8562
85632008-04-03 Jason Rumney <jasonr@gnu.org>
8564
8565 * w32uniscribe.c (uniscribe_check_otf): Sanity check otf_spec.
8566
85672008-04-03 Kenichi Handa <handa@m17n.org>
8568
8569 * coding.c (CATEGORY_MASK_ANY): Add CATEGORY_MASK_UTF_16_AUTO.
8570 (CATEGORY_MASK_UTF_16): Likewise.
8571 (detect_coding_utf_16): Add heuristics to reject utf-16 for a
8572 binary file.
8573 (detect_coding): Add null-byte detection for a binary file.
8574 (detect_coding_system): Likewise.
8575
85762008-04-03 Jason Rumney <jasonr@gnu.org>
8577
8578 * w32uniscribe.c: New file.
8579
8580 * font.h (uniscribe_font_driver) [WINDOWSNT]: Declare for w32fns.c.
8581
8582 * w32font.h (uniscribe_check_otf): Declare for w32font.c.
8583
8584 * w32font.c (Qbalinese, Qbuginese, Qbuhid, Qcuneiform, Qcypriot)
8585 (Qdeseret, Qglagolitic, Qgothic, Qhanunoo, Qkharoshthi)
8586 (Qlimbu, Qlinear_b, Qold_italic, Qold_persian, Qosmanya)
8587 (Qphags_pa, Qphoenician, Qshavian, Qsyloti_nagri)
8588 (Qtagalog, Qtagbanwa, Qtai_le, Qtifinagh, Qugaritic)
8589 (Qphonetic): New symbols.
8590 (syms_of_w32font): Initialize them.
8591 (font_supported_scripts): Use them.
8592 (w32font_list_family): List all charsets.
8593 (w32font_text_extents, recompute_cached_metrics): Fix metric
8594 calculations.
8595 (w32_enumfont_pattern_entity): Make full_type a DWORD.
8596 Give opentype fonts their own format.
8597 (font_matches_spec): New arguments backend and logfont.
8598 Handle :otf spec for uniscribe backend.
8599 (add_font_entity_to_list): Match truetype fonts in uniscribe backend.
8600 (fill_in_logfont): Use DEFAULT_CHARSET when charset not supplied.
8601
8602 * w32fns.c (Fx_create_frame): Conditionally register uniscribe
8603 font backend.
8604 (globals_of_w32fns): Initialize uniscribe font backend.
8605
8606 * makefile.w32-in (CONFIG_H): New variable. Use it to clean up
8607 dependencies.
8608 (w32uniscribe.$(O)): New file to build.
8609 (FONT_OBJ): Include w32uniscribe.$(O).
8610 (LIBS): Add uniscribe libraries.
8611
8612 * ftfont.c (ftfont_get_open_type_spec): Check spec->script, not val.
8613
86142008-04-02 Chong Yidong <cyd@stupidchicken.com>
8615
8616 * callint.c (Vshift_select_mode): New var.
8617 (Finteractive): Document new ^ spec.
8618 (Fcall_interactively): Call handle-shift-selection if the ^ spec
8619 is present.
8620
8621 * keyboard.c (Vthis_command_keys_shift_translated): New var.
8622 (command_loop_1): Avoid running the direct display versions of
8623 forward-char and backward-char if shift-selection may occur.
8624 (read_key_sequence): Set Vthis_command_keys_shift_translated if
8625 shift-translation takes place.
8626
8627 * buffer.c (Vtransient_mark_mode): Move docstring to simple.el to
8628 avoid clobbering by define-minor-mode.
8629
8630 * cmds.c (Fforward_char, Fbackward_char, Fforward_line)
8631 (Fbeginning_of_line, Fend_of_line): Add ^ interactive spec.
8632
8633 * syntax.c (Fforward_word): Add ^ interactive spec.
8634
8635 * window.c (Fscroll_up, Fscroll_down, Fscroll_left)
8636 (Fscroll_right): Add ^ interactive spec.
8637
86382008-04-01 Stefan Monnier <monnier@iro.umontreal.ca>
8639
8640 * xdisp.c (try_window_id): Don't forget to reset delta_bytes.
8641
8642 * casefiddle.c (casify_object): Fix up int/EMACS_INT mixup.
8643
8644 * charset.c (Funibyte_charset, Fset_unibyte_charset): Remove.
8645
86462008-03-31 Juri Linkov <juri@jurta.org>
8647
8648 * window.c (Fdisplay_buffer): Reinitialize `tem' to nil.
8649
86502008-03-30 Jan Djärv <jan.h.d@swipnet.se>
8651
8652 * gtkutil.c (xg_set_geometry): Fix indentation.
8653 (xg_resize_outer_widget): Remove.
8654 (x_wm_size_hint_off): Fix indentation.
8655 (xg_frame_set_char_size): Call flush_and_sync after
8656 gtk_window_resize.
8657 (x_wm_set_size_hint): Pass NULL as geometry window to
8658 gtk_window_set_geometry_hints due to Gtk+ bug nr 68668.
8659 Add menu bar and tool bar height to base height.
8660 (xg_update_frame_menubar, free_frame_menubar)
8661 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
8662 (update_frame_tool_bar, free_frame_tool_bar):
8663 Change xg_resize_outer_widget to xg_frame_set_char_size.
8664
86652008-03-30 Michael Albinus <michael.albinus@gmx.de>
8666
8667 * dbusbind.c (QCdbus_timeout): New D-Bus internal symbol.
8668 (Fdbus_call_method): New parameter TIMEOUT.
8669 (dbus-send-signal): Optimize UNGCPRO call.
8670
86712008-03-29 Juri Linkov <juri@jurta.org>
8672
8673 * window.c (Fdisplay_buffer): Move call to
8674 Vsplit_window_preferred_function out of conditions that check
8675 if window is eligible for vertical splitting.
8676 When Vsplit_window_preferred_function is non-nil, call it and use
8677 its non-nil return value as window. Otherwise, continue doing
8678 vertical splitting using Fsplit_window with arg horflag=nil.
8679 (syms_of_window) <Vsplit_window_preferred_function>: Change the
8680 default value from `split-window' to nil.
8681
86822008-03-29 Juri Linkov <juri@jurta.org>
8683
8684 * callint.c (Fcall_interactively): Revert 2008-03-16 change
8685 for interactive code letters 'b' and 'B'.
8686
86872008-03-29 Eli Zaretskii <eliz@gnu.org>
8688
8689 * fileio.c (Fexpand_file_name): Convert the value of $HOME to a
8690 multibyte string.
8691
86922008-03-29 Stefan Monnier <monnier@iro.umontreal.ca>
8693
8694 * keyboard.c (pending_funcalls): New var.
8695 (timer_check): Run it.
8696 (syms_of_keyboard): Initialize it.
8697 * terminal.c (Qrun_hook_with_args, Qdelete_terminal_functions)
8698 (Vdelete_terminal_functions): New vars.
8699 (syms_of_terminal): Initialize them.
8700 (Fdelete_terminal): Run delete-terminal-functions.
8701 * xdisp.c (safe_eval): Rewrite.
8702 (safe_call2): New fun.
8703 * frame.c (Qdelete_frame_functions): New var.
8704 (syms_of_frame): Initialize it.
8705 (Fdelete_frame): Use it and use safe_call2 and pending_funcalls.
8706 * lisp.h (safe_call2, pending_funcalls): Declare.
8707
87082008-03-28 Andreas Schwab <schwab@suse.de>
8709
8710 * indent.c (Fmove_to_column): Move declaration before statements.
8711
87122008-03-27 Stefan Monnier <monnier@iro.umontreal.ca>
8713
8714 * frame.h (enum fullscreen_type): Give it a name. Move it before use.
8715 (struct frame): Use bit fields for boolean vars.
8716
8717 * process.c (server_accept_connection): Simplify naming.
8718 (emacs_get_tty_pgrp): Use SDATA.
8719
8720 * coding.c (decode_coding_object): Fix last change.
8721
87222008-03-27 Jason Rumney <jasonr@gnu.org>
8723
8724 * w32fns.c (start_hourglass): Suppress hourglass on tty frames.
8725
87262008-03-27 Kenichi Handa <handa@ni.aist.go.jp>
8727
8728 * charset.c (Fdefine_charset_internal): Change the way of
8729 registering charsets in Vcharset_order_list.
8730 (syms_of_charset): Make the charset `eight-bit' supplementary.
8731
87322008-03-26 Alexandre Oliva <aoliva@redhat.com> (tiny change)
8733
8734 * regex.c (EXTEND_BUFFER): Change order of pointer addition
8735 operations, to avoid having the difference between pointers
8736 overflow.
8737
87382008-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
8739
8740 * indent.c (check_display_width): New fun.
8741 (scan_for_column): Use it.
8742
8743 * data.c (syms_of_data): Mark most-positive-fixnum and
8744 most-negative-fixnum as constants.
8745
8746 * xdisp.c (redisplay_internal): Reset selected_frame earlier.
8747
8748 * indent.c (scan_for_column): Extract from current_column_1.
8749 Merge with the same code from Fmove_to_column.
8750 (current_column_1, Fmove_to_column): Use it.
8751
87522008-03-25 Stefan Monnier <monnier@iro.umontreal.ca>
8753
8754 * keymap.c (map_keymap_internal): New fun.
8755 (map_keymap): Use it.
8756 (Fmap_keymap_internal): New fun.
8757 (Fmap_keymap): Remove left-out test from before make_save_value.
8758
8759 * keymap.c (Fmap_keymap): Use `map-keymap-sorted.
8760
8761 * frame.c (Fmodify_frame_parameters, x_set_frame_parameters):
8762 Use XCAR/XCDR.
8763
8764 * process.h (struct Lisp_Process): Remove filter_multibyte.
8765 * process.c (QCfilter_multibyte): Remove.
8766 (setup_process_coding_systems): Don't use filter_multibyte.
8767 (Fstart_process, Fmake_network_process): Don't set filter_multibyte.
8768 (read_process_output): Don't adjust multibyteness to filter_multibyte.
8769 (Fset_process_filter_multibyte): Change the coding-system to
8770 approximate the previous behavior.
8771 (Fprocess_filter_multibyte_p): Get the multibyteness straight from the
8772 coding-system.
8773
8774 * coding.c (decode_coding_object): When not decoding into a buffer,
8775 obey the coding system's preference of (uni|multi)byte.
8776
87772008-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
8778
8779 * casefiddle.c (casify_object): Avoid pathological N^2 worst case if
8780 every char is changed and has a different byte-length.
8781 (Fupcase_word, Fdowncase_word, Fcapitalize_word, operate_on_word):
8782 Fix int -> EMACS_INT.
8783
87842008-03-23 David Hansen <david.hansen@gmx.net>
8785
8786 * dbusbind.c (xd_read_message): Remove extra copying of message
8787 strings. Check for NULL `interface' or `member'.
8788
87892008-03-22 Eli Zaretskii <eliz@gnu.org>
8790
8791 * w32.c (readdir): If FindFirstFile/FindNextFile return in
8792 cFileName a file name that includes `?' characters, use the 8+3
8793 alias in cAlternateFileName instead.
8794
87952008-03-21 Stefan Monnier <monnier@iro.umontreal.ca>
8796
8797 * buffer.c (enlarge_buffer_text): Fix int -> EMACS_INT.
8798
87992008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
8800
8801 * intervals.c (temp_set_point, temp_set_point_both): Use EMACS_INT.
8802 (set_point, set_point_both): Use EMACS_INT. Remove `buffer' arg,
8803 work on current_buffer only instead (that was already the case
8804 for some of the code anyway).
8805 * buffer.h (set_point, set_point_both): Remove buffer arg, use long int.
8806 (temp_set_point, temp_set_point_both): Use EMACS_INT.
8807 (SET_PT, SET_PT_BOTH): Adjust.
8808 * intervals.h (set_point, temp_set_point, set_point_both)
8809 (temp_set_point_both): Remove redundant declarations.
8810
88112008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
8812
8813 * fileio.c (Finsert_file_contents):
8814 * lread.c (Feval_buffer): Use BUF_TEMP_SET_PT.
8815 * buffer.h (BUF_SET_PT): Remove. set_point_both doesn't work right
8816 when buffer != current_buffer anyway.
8817
88182008-03-20 Andreas Schwab <schwab@suse.de>
8819
8820 * callint.c (Fcall_interactively) [case 'B']: Use other-buffer
8821 as default.
8822
88232008-03-19 Jason Rumney <jasonr@gnu.org>
8824
8825 * w32fns.c (hourglass_timer, hourglass_hwnd): New variables.
8826 (syms_of_w32fns): Initialize them.
8827 (HOURGLASS_ID): New constant.
8828 (x_window_to_frame): Don't check hourglass_window.
8829 (w32_wnd_proc) <WM_TIMER>: Handle hourglass_timer.
8830 (w32_wnd_proc) <WM_EXITMENULOOP>: Set pending hourglass cursor.
8831 (w32_wnd_proc) <WM_SETCURSOR>: Set the hourglass or current cursor.
8832 (w32_wnd_proc) <WM_EMACS_SETCURSOR>: Set frame's current_cursor.
8833 Only change the cursor if hourglass is not active.
8834 (Fx_create_frame): Initialize frame's current_cursor.
8835 (hourglass_atimer): Remove.
8836 (hourglass_started): New function.
8837 (start_hourglass, cancel_hourglass, hide_hourglass): Adapt to w32.
8838 (show_hourglass): Adapt to w32, changing argument to frame.
8839
8840 * w32term.h (struct w32_output): Remove hourglass_window.
8841 Add current_cursor.
8842
8843 * eval.c (call_debugger, Fsignal):
8844 * keyboard.c (recursive_edit_1, cmd_error, Ftop_level)
8845 (command_loop_1, Fread_key_sequence, Fread_key_sequence_vector)
8846 (Fexecute_extended_command, cancel_hourglass_unwind):
8847 * minibuf.c (read_minibuf):
8848 * fns.c (Fy_or_n_p): Enable hourglass when HAVE_WINDOW_SYSTEM.
8849
88502008-03-19 Stefan Monnier <monnier@iro.umontreal.ca>
8851
8852 * window.c (run_funs): New fun.
8853 (run_window_configuration_change_hook): Use it to run the buffer-local
8854 and the global part of the hook.
8855
8856 * xdisp.c (format_mode_line_unwind_data): Add window argument.
8857 (unwind_format_mode_line): Restore selected window.
8858 (x_consider_frame_title, Fformat_mode_line): Set selected window.
8859
88602008-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
8861
8862 * editfns.c (Fchar_equal): Check they are valid characters.
8863
8864 * buffer.h (Fbuffer_list): Declare (for use in callint.c).
8865
88662008-03-17 Andreas Schwab <schwab@suse.de>
8867
8868 * regex.c (re_match_2_internal): Properly match raw 8-bit bytes
8869 against a charset.
8870
8871 * lisp.h (Fbuffer_list): Declare.
8872
88732008-03-17 Jan Djärv <jan.h.d@swipnet.se>
d6c952f8 8874
aac0c6e3
MR
8875 * gtkutil.c (free_frame_tool_bar): Only call gtk_container_remove if
8876 handlebox_widget is != 0.
8877
88782008-03-16 Juri Linkov <juri@jurta.org>
8879
8880 * callint.c (Fcall_interactively): For interactive code letters
8881 'b' and 'B' put the buffer list into the list of default "future"
8882 values of the minibuffer.
8883
88842008-03-16 Andreas Schwab <schwab@suse.de>
8885
8886 * keyboard.c (read_key_sequence): Fix downcasing of letters with
8887 modifiers.
8888
8889 * regex.c (re_match_2_internal): Correct matching of a charset
8890 against latin-1 characters.
8891
88922008-03-16 Kenichi Handa <handa@m17n.org>
8893
8894 * coding.c (CHAR_STRING_ADVANCE_NO_UNIFY)
8895 (STRING_CHAR_ADVANCE_NO_UNIFY): New macros.
8896 (coding_alloc_by_making_gap): Fix the way to preserve data in the gap.
8897 (alloc_destination): Fix the 2nd arg to coding_alloc_by_making_gap.
8898 (encode_coding_utf_8): Use CHAR_STRING_ADVANCE_NO_UNIFY instead of
8899 CHAR_STRING_ADVANCE.
8900 (produce_chars): Fix for the case that the source and the
8901 destination are the same buffer. Use CHAR_STRING_ADVANCE_NO_UNIFY
8902 instead of CHAR_STRING_ADVANCE.
8903 (consume_chars): Use STRING_CHAR_ADVANCE_NO_UNIFY instead of
8904 STRING_CHAR_ADVANCE.
8905
89062008-03-15 Andreas Schwab <schwab@suse.de>
8907
8908 * regex.c (re_match_2_internal): Correct matching of eight bit
8909 characters in unibyte strings.
8910
89112008-03-15 Martin Rudalics <rudalics@gmx.at>
8912
8913 * buffer.c (overlays_in, Foverlays_in): Include empty overlays
8914 at end of range when it coincides with the end of the buffer.
8915
89162008-03-14 Eli Zaretskii <eliz@gnu.org>
8917
8918 * dired.c (Ffile_attributes) [WINDOWSNT]: Force inode be positive.
8919
8920 * w32fns.c (globals_of_w32fns, Fx_create_frame): Fix last change.
8921
89222008-03-14 Jason Rumney <jasonr@gnu.org>
8923
8924 * editfns.c (initial_tz): New variable.
8925 (syms_of_editfns): Initialize it.
8926 (Fset_time_zone_rule): Set it when first called.
8927 Use it when TZSTRING is nil.
8928
8929 * w32fns.c (MONITOR_DEFAULT_TO_NEAREST, struct MONITOR_INFO)
8930 (MonitorFromPoint_Proc, GetMonitorInfo_Proc): New definitions.
8931 (monitor_from_point_fn, get_monitor_info_fn): New globals.
8932 (globals_of_w32fns): Initialize them.
8933 (compute_tip_xy): Use them to position tooltips.
8934
89352008-03-14 Glenn Morris <rgm@gnu.org>
8936
8937 * emacs.c (main): Revert previous change.
8938 (standard_args): Revert -internal-script back to -scriptload,
8939 and remove the long-option form.
8940
89412008-03-13 Glenn Morris <rgm@gnu.org>
8942
8943 * emacs.c (main, standard_args): Rename -scriptload to -internal-script.
8944 Remove option -enable-font-backend.
8945
89462008-03-12 Stefan Monnier <monnier@iro.umontreal.ca>
8947
8948 * buffer.c (Fswitch_to_buffer): Fall back on pop-to-buffer.
8949
89502008-03-11 Jan Djärv <jan.h.d@swipnet.se>
8951
8952 * xterm.c (x_connection_closed): For GTK: If this is the last
8953 terminal just exit without closing the display.
8954
89552008-03-11 Jason Rumney <jasonr@gnu.org>
8956
8957 * w32font.c (w32font_full_name): Use floor to round.
8958
f0131492 89592008-03-10 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
aac0c6e3
MR
8960
8961 * sound.c (alsa_configure): Declare vol at beginning of block.
8962
8963 * fontset.c (Ffontset_info): Remove extra semicolon.
8964
89652008-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
8966
8967 * fileio.c (Fsubstitute_in_file_name): Fix up computation of maximum
8968 size of resulting string.
8969
89702008-03-10 Jason Rumney <jasonr@gnu.org>
8971
8972 * dispnew.c (adjust_glyph_matrix): Initialize window_height.
8973
89742008-03-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8975
8976 * xdisp.c (handle_single_display_spec): Undo 2007-10-16 changes.
8977 Don't pretend as if characters with display property haven't been
8978 consumed for string-replacing-string case.
8979
89802008-03-08 Kim F. Storm <storm@cua.dk>
8981
8982 * xdisp.c (GET_NEXT_DISPLAY_ELEMENT): New macro.
8983 (get_next_display_element, next_element_from_string)
8984 (next_element_from_ellipsis, next_element_from_buffer): Use it.
8985
89862008-03-08 Andreas Schwab <schwab@suse.de>
8987
8988 * process.h (struct Lisp_Process): Declare bit fields as unsigned.
8989
89902008-03-06 Jason Rumney <jasonr@gnu.org>
8991
8992 * w32font.c (w32_registry): Take font_type argument. Use ANSI
8993 when charset not specified. Only translate ANSI to unicode when
8994 font_type is truetype.
8995 (w32font_coverage_ok): New function.
8996 (add_font_entity_to_list): Use it to filter unsuitable fonts.
8997
89982008-03-05 Kenichi Handa <handa@ni.aist.go.jp>
8999
9000 * lread.c (Fread_char): Resolve modifiers.
9001 (Fread_char_exclusive): Likewise.
9002
9003 * character.c (char_resolve_modifier_mask): New function.
9004 (char_string): Use char_resolve_modifier_mask.
9005 (Fchar_resolve_modifiers): New function.
9006 (syms_of_character): Declare Fchar_resolve_modifiers as Lisp
9007 function.
9008
90092008-03-04 Jason Rumney <jasonr@gnu.org>
9010
9011 * makefile.w32-in: Always include w32font.c in the build.
9012 * w32font.c: Wrap in USE_FONT_BACKEND conditional.
9013
90142008-03-04 Andreas Schwab <schwab@suse.de>
9015
9016 * Makefile.in (clean): Remove emacs-*.*.* instead of emacs-*.
9017 (versionclean): Likewise.
9018
90192008-03-04 Juanma Barranquero <lekktu@gmail.com>
9020
9021 * .cvsignore: Add oo.
9022
90232008-03-03 Andreas Schwab <schwab@suse.de>
9024
9025 * coding.c (decode_coding_object): Inhibit gap shrinking while
9026 decoding in place.
9027
90282008-03-03 Dan Nicolaescu <dann@ics.uci.edu>
9029
9030 * w32term.c: Remove unused include "gnu.h".
9031 * makefile.w32-in (w32term.o): Don't depend on gnu.h.
9032
9033 * gnu.h: Rename to ...
9034 * emacs-icon.h: ... this.
9035 * xterm.c: Use emacs-icon.h instead of gnu.h.
9036 * Makefile (xterm.o): Depend on emacs-icon.h, not gnu.h.
9037
90382008-03-03 Juanma Barranquero <lekktu@gmail.com>
9039
9040 * w32font.c: Include math.h.
9041
90422008-03-03 Jason Rumney <jasonr@gnu.org>
9043
9044 * w32font.c (recompute_cached_metrics): Change font arg to w32font_info.
9045 Compute options separately.
9046 (w32font_open_internal): Set glyph_idx before caching metrics.
9047
9048 * w32font.h (NTM_PS_OPENTYPE, NTM_TT_OPENTYPE, NTM_TYPE1):
9049 Define if system headers don't.
9050 (struct w32font_info): Enlarge ascii_metrics. Add glyph_idx.
9051 (w32font_encode_char): Don't declare here.
9052
9053 * w32font.c (Quniscribe, QCformat): New symbols.
9054 (syms_of_w32font): Define them.
9055 (w32font_has_char): Indicate uncertainty.
9056 (w32font_encode_char): Encode as glyph point. Make static.
9057 (recompute_cached_metrics): New function.
9058 (w32font_open_internal): Use it. Set font to use glyph points
9059 initially. Set format based on type of font.
9060 (w32font_text_extents, w32font_draw): Optionally use glyph points.
9061 (w32_enumfont_pattern_entity): Accept backend arg. Set type based
9062 on it. Set format based on information available here.
9063 (add_font_entity_to_list): Identify backend based on opentype_only.
9064
90652008-03-02 Andreas Schwab <schwab@suse.de>
9066
9067 * ftfont.c (ftfont_pattern_entity): Fix aliasing violations.
9068
9069 * coding.c (decode_coding_big5, produce_chars):
9070 Fix typos in last change.
9071
90722008-03-02 Kentaro Ohkouchi <nanasess@fsm.ne.jp>
9073
9074 * gnu.h: New icon.
9075
90762008-03-02 Kenichi Handa <handa@m17n.org>
9077
9078 * coding.c (decode_coding_utf_8): When eol-type of CODING is
9079 `dos', don't decode '\r' if that is the last in the source.
9080 (decode_coding_utf_16, decode_coding_emacs_mule)
9081 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
9082 (decode_coding_raw_text, decode_coding_charset): Likewise.
9083 (produce_chars): Don't decode EOL here. Use EMACS_INT.
9084
90852008-03-01 Jason Rumney <jasonr@gnu.org>
9086
9087 * w32font.c (w32font_full_name): Report point size for scalable fonts.
9088
90892008-03-01 Kim F. Storm <storm@cua.dk>
9090
9091 * dispextern.h (CHAR_GLYPH_SPACE_P): Check for default face.
9092
90932008-03-01 Jason Rumney <jasonr@gnu.org>
9094
9095 * w32font.c (w32font_full_name): New function.
9096 (w32font_open_internal): Use it.
9097
90982008-03-01 Kim F. Storm <storm@cua.dk>
9099
9100 * dispnew.c (line_draw_cost): Fix invalid glyph check.
9101
91022008-03-01 Jason Rumney <jasonr@gnu.org>
9103
9104 * font.c (font_unparse_fcname): Increase len when style is a symbol.
9105
91062008-03-01 Jan Djärv <jan.h.d@swipnet.se>
9107
9108 * xterm.c (handle_one_xevent): For Gtk+ and ConfigureNotify, call
9109 xg_frame_resized when the event is for the edit widget.
9110
9111 * gtkutil.h (xg_frame_resized): Renamed from xg_resize_widgets.
9112
9113 * gtkutil.c (xg_resize_outer_widget): Only do one of set_geometry or
9114 set_char_size.
9115 (xg_frame_resized): Renamed from xg_resize_widgets. Remove all
9116 operations on widgets here. Just set frame size if needed.
9117 (flush_and_sync, x_wm_size_hint_off, xg_pack_tool_bar): New functions.
9118 (xg_frame_set_char_size): Call x_wm_size_hint_off before resizing.
9119 (x_wm_set_size_hint): Set size hints on the edit widget only, not
9120 the whole frame.
9121 (xg_create_tool_bar): Move attachment of the tool bar to
9122 xg_pack_tool_bar. Do not attach the tool bar if there are no items.
9123 (free_frame_tool_bar): Remove call to SET_FRAME_GARBAGED.
9124
91252008-03-01 Jason Rumney <jasonr@gnu.org>
9126
9127 * w32fns.c (w32_msg_pump): Disable debug code.
9128
91292008-03-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9130
9131 * m/intel386.h [MAC_OSX || DARWIN]: Define NO_ARG_ARRAY if _LP64.
9132
91332008-02-29 Chong Yidong <cyd@stupidchicken.com>
9134
9135 * xdisp.c (next_overlay_string): Don't set
9136 overlay_strings_at_end_processed_p if we're currently reading from
9137 a display string.
9138
91392008-02-29 Stefan Monnier <monnier@iro.umontreal.ca>
9140
9141 * xdisp.c (get_overlay_strings_1): Fix typo.
9142
91432008-02-29 Chong Yidong <cyd@stupidchicken.com>
9144
9145 * xdisp.c (get_overlay_strings_1): Add missing argument type.
9146
91472008-02-28 Kenichi Handa <handa@ni.aist.go.jp>
9148
9149 * ftfont.c (ftfont_match): Explicitly set pixelsize in pattern.
9150
9151 * xdisp.c (display_mode_element): Cancel the previous change.
9152 (decode_mode_spec): Likewise.
9153 (handle_auto_composed_prop): Don't make composition if it->string
9154 is a string.
9155
91562008-02-27 Kim F. Storm <storm@cua.dk>
9157
9158 * lisp.h (GLYPH): Change type from int to struct with separate char
9159 and face_id members.
9160 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Delete macros.
9161 (GLYPH_CHAR, GLYPH_FACE): Remove slow versions with frame arg.
9162 (FAST_GLYPH_CHAR, FAST_GLYPH_FACE): Rename macros to ...
9163 (GLYPH_CHAR, GLYPH_FACE): ... these. Change users.
9164 (FAST_MAKE_GLYPH, MAKE_GLYPH): Remove. Rewrite users to use ...
9165 (SET_GLYPH, SET_GLYPH_CHAR, SET_GLYPH_FACE): ... these macros instead.
9166 (GLYPH_CODE_CHAR, GLYPH_CODE_FACE, GLYPH_CODE_P)
9167 (GLYPH_CODE_CHAR_VALID_P, SET_GLYPH_FROM_GLYPH_CODE): New macros to
9168 handle new Lisp glyph code encoding, either an integer or a cons.
9169
9170 * disptab.h (GLYPH_SIMPLE_P): Rewrite.
9171 (GLYPH_ALIAS): Delete.
9172 (GLYPH_ALIAS_P, GLYPH_FOLLOW_ALIASES): Rewrite.
9173 (GLYPH_LENGTH, GLYPH_STRING): Use GLYPH_CHAR.
9174 (GLYPH_FROM_CHAR): Replace macro by ...
9175 (SET_GLYPH_FROM_CHAR): ... this macro. Change users.
9176
9177 * dispextern.h (CHAR_GLYPH_SPACE_P): Simplify.
9178 (GLYPH_FROM_CHAR_GLYPH): Replace macro by ...
9179 (SET_GLYPH_FROM_CHAR_GLYPH): ... this macro. Change users.
9180 (GLYPH_INVALID_P): New macro.
9181 (spec_glyph_lookup_face): Update prototype.
9182
9183 * dispnew.c (line_draw_cost): Adapt to new glyph type.
9184 (build_frame_matrix_from_leaf_window): Adapt to new glyph type and
9185 new glyph code encoding.
9186 (spec_glyph_lookup_face): No return value; update passed glyph instead.
9187 (init_display): Use SET_CHAR_GLYPH to initialize space_glyph.
9188
9189 * xdisp.c (get_next_display_element, next_element_from_display_vector):
9190 Adapt to new glyph type and new glyph code encoding.
9191
9192 * term.c (encode_terminal_code, produce_special_glyphs): Likewise.
9193
9194 * indent.c (current_column, current_column_1, Fmove_to_column)
9195 (compute_motion): Adapt to new glyph code encoding.
9196
9197 * msdos.c (IT_write_glyphs): Adapt to new glyph type.
9198
91992008-02-27 Chong Yidong <cyd@stupidchicken.com>
9200
9201 * process.c (wait_reading_process_output): Check for window
9202 changes caused by timers.
9203 Suggested by Johan Bockgård.
9204
92052008-02-27 Glenn Morris <rgm@gnu.org>
9206
9207 * emacs.c (USAGE1): Add `--disable-font-backend'.
9208
92092008-02-27 Stefan Monnier <monnier@iro.umontreal.ca>
9210
9211 * fileio.c (Finsert_file_contents): Don't reset undo_list if no change
9212 is made to the buffer.
9213
92142008-02-26 Stefan Monnier <monnier@iro.umontreal.ca>
9215
9216 * dispextern.h (face_at_buffer_position, face_for_overlay_string)
9217 (face_at_string_position):
9218 * xfaces.c (face_at_buffer_position, face_for_overlay_string)
9219 (face_at_string_position):
9220 * xdisp.c (display_string, next_overlay_change):
9221 * buffer.h (overlays_at):
9222 * buffer.c (overlays_at): Use EMACS_INT for buffer positions.
9223 Update callers.
9224
92252008-02-26 Chong Yidong <cyd@stupidchicken.com>
9226
9227 * editfns.c (Fformat): Doc fix.
9228
92292008-02-26 Juanma Barranquero <lekktu@gmail.com>
9230
9231 * font.c (Ffont_spec, Ffont_at): Fix typos in docstrings.
9232 (Ffont_put, Flist_families, Ffont_fill_gstring, Ffont_drive_otf)
9233 (Ffont_otf_alternates, Fquery_font): Doc fixes.
9234
92352008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
9236
9237 * buffer.c (Fbuffer_swap_text): New function.
9238 (syms_of_buffer): Defsubr it.
9239
92402008-02-25 Chong Yidong <cyd@stupidchicken.com>
9241
9242 * keyboard.c (command_loop_1): Revert 2006-10-09 change.
9243
92442008-02-25 Jason Rumney <jasonr@gnu.org>
9245
9246 * w32font.c (w32font_draw): Draw one character at a time when padding.
9247
92482008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
9249
9250 * window.c (Fdelete_window, Fadjust_window_trailing_edge):
9251 Handle a nil arg. Use run_window_configuration_change_hook.
9252 (delete_window, adjust_window_trailing_edge): Don't handle nil any more.
9253 (Fenlarge_window, Fshrink_window, Fset_window_configuration):
9254 Use run_window_configuration_change_hook.
9255
92562008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
9257
9258 * xdisp.c (x_produce_glyphs): For a visible glyph, assure at least
9259 1-pixel width.
9260
92612008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
9262
9263 * xdisp.c (fill_glyph_string): Pay attention to glyph->padding_p.
9264 (append_glyph): Set glyph->pixel_width and glyph->padding_p to 1
9265 if the glyph in the font is zero pixel with.
9266
9267 * dispextern.h (struct glyph_string): New member padding_p.
9268
9269 * w32font.c (w32font_draw): Pay attention to s->padding_p.
9270
9271 * ftxfont.c (ftxfont_draw): Pay attention to s->padding_p.
9272
9273 * xfont.c (xfont_draw): Pay attention to s->padding_p.
9274
9275 * xftfont.c (xftfont_draw): Pay attention to s->padding_p.
9276
9277 * font.c: If the font driver doesn't have `shape' function, return Qnil.
9278
92792008-02-25 Jason Rumney <jasonr@gnu.org>
9280
9281 * w32fns.c (enum_font_cb2): Don't use raster fonts for Unicode.
9282
92832008-02-24 Stefan Monnier <monnier@iro.umontreal.ca>
9284
9285 Allow fine-grained image-cache flushing.
9286 * dispextern.h (struct image): Add `dependencies' field.
9287 (clear_image_caches): Change arg to Lisp_Object.
9288 * image.c (make_image): Initialize `dependencies' field.
9289 (clear_image_cache): Change arg to allow fine-grained flushing.
9290 Perform the flush even if image-cache-eviction-delay is nil.
9291 (clear_image_caches): Change arg to Lisp_Object.
9292 (Fclear_image_cache): Expand meaning of the argument.
9293 (mark_image): Mark `dependencies' field.
9294 * xfaces.c (clear_face_cache): Adapt arg to call to clear_image_caches.
9295 (lface_hash): Use XHASH rather than XFASTINT.
9296 (face_at_buffer_position): Fix int -> EMACS_INT position.
9297 * xdisp.c (next_overlay_change): Fix int -> EMACS_INT position.
9298 (select_frame_for_redisplay): Remove code duplication.
9299 (redisplay_internal): Adapt arg to call to clear_image_caches.
9300
93012008-02-24 Dan Nicolaescu <dann@ics.uci.edu>
9302
9303 * s/vms4-0.h:
9304 * s/vms4-2.h:
9305 * s/vms4-4.h:
9306 * s/vms5-5.h: Remove, unused.
9307
9308 * s/irix5-2.h:
9309 * s/irix6-0.h:
9310 * s/riscos5.h:
9311 * s/mach-bsd4-3.h:
9312 * m/mips4.h: Remove files for obsolete systems.
9313
9314 * Makefile.in:
9315 * filelock.c:
9316 * unexmips.c:
9317 * m/hp9000s300.h:
9318 * m/iris4d.h:
9319 * s/aix3-1.h:
9320 * s/hpux.h:
9321 * s/msdos.h:
9322 * s/usg5-0.h:
9323 * s/usg5-2-2.h:
9324 * s/usg5-2.h:
9325 * s/usg5-3.h: Remove references to obsolete variables.
9326
9327 * s/irix5-0.h: Remove, move all the contents ...
9328 * s/irix6-5.h: ... here. Simplify.
9329 * config.in: Regenerate.
9330
93312008-02-24 Jason Rumney <jasonr@gnu.org>
9332
9333 * w32term.c (x_draw_glyph_string_background): Clear the background
9334 manually when cleartype is in use.
9335 (x_draw_glyph_string_foreground): Draw text transparently when
9336 cleartype is in use.
9337
9338 * w32font.c (w32font_text_extents): Avoid getting HDC and selecting
9339 a font into it unless we have to.
9340
93412008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
9342
9343 * intervals.h (INT_LISPLIKE): Remove. It may misfire.
9344 (NULL_INTERVAL_P, SET_INTERVAL_PARENT): Don't use it.
d6c952f8 9345
aac0c6e3
MR
93462008-02-18 Jason Rumney <jasonr@gnu.org>
9347
9348 * w32fns.c (Fw32_shell_execute): Encode parameters.
9349
93502008-02-09 Eli Zaretskii <eliz@gnu.org>
9351
9352 * fileio.c (syms_of_fileio) <insert-default-directory>: Doc fix.
9353
93542008-02-05 Juanma Barranquero <lekktu@gmail.com>
9355
9356 * unexhp9k800.c (read_header): Replace `legal' with `valid'.
9357
93582008-02-24 Ulrich Neumerkel <ulrich@complang.tuwien.ac.at> (tiny change)
9359
9360 * xterm.c (x_set_offset): Don't change the gravity if
9361 CHANGE_GRAVITY is -1.
9362
93632008-02-23 Chong Yidong <cyd@stupidchicken.com>
9364
9365 * fileio.c (auto_save_error_occurred): New var.
9366 (auto_save_error): Set it.
9367 (Fdo_auto_save): Don't overwrite the error message if an auto-save
9368 error occurred.
9369
93702008-02-23 Eli Zaretskii <eliz@gnu.org>
9371
9372 * w32.c (globals_of_w32): Add initializations for
9373 g_b_init_get_sid_sub_authority and
9374 g_b_init_get_sid_sub_authority_count.
9375
93762008-02-22 Stefan Monnier <monnier@iro.umontreal.ca>
9377
9378 * font.c (font_match_xlfd, font_check_xlfd_parse): New funs.
9379 (font_parse_xlfd): Use them for sanity check.
9380 (Finternal_set_font_style_table): Make sure the table is bijective.
9381
9382 Consolidate the image_cache to the terminal struct.
9383 * termhooks.h (P_): Remove redundant def.
9384 (struct terminal): New field `image_cache'.
9385 * frame.h (FRAME_IMAGE_CACHE): New macro. Use it everywhere in place
9386 of FRAME_X_IMAGE_CACHE.
9387 * xterm.h (struct x_display_info): Remove image_cache field.
9388 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
9389 * w32term.h (struct w32_display_info): Remove image_cache field.
9390 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
9391 * macterm.h (struct mac_display_info): Remove image_cache field.
9392 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
9393 * xterm.c (x_term_init):
9394 * w32term.c (w32_term_init):
9395 * macterm.c (mac_term_init): Set the image_cache in the terminal.
9396 * dispextern.h (clear_image_cache, forall_images_in_image_cache):
9397 Remove declarations.
9398 (clear_image_caches, mark_image_cache): New declarations.
9399 * xfaces.c (clear_face_cache):
9400 * xdisp.c (redisplay_internal): Use clear_image_caches.
9401 * image.c (clear_image_cache): Don't check that a frame is on
9402 a window-system before checking if it shares the same cache.
9403 (clear_image_caches): New function.
9404 (Fclear_image_cache): Use it.
9405 (mark_image): Move from allo.c.
9406 (mark_image_cache): Move from alloc.c and forall_images_in_image_cache.
9407 * alloc.c (mark_image, mark_image_cache): Move to image.c.
9408 (mark_object): Don't call mark_image_cache for frames.
9409 (mark_terminals): Call mark_image_cache.
9410
9411 * lisp.h (Fdelete_terminal): Declare.
9412
9413 * charset.h (CHECK_CHARSET, CHECK_CHARSET_GET_ID)
9414 (CHECK_CHARSET_GET_ATTR): Don't use the inexistent return value of
9415 wrong_type_argument.
9416
94172008-02-22 Kenichi Handa <handa@ni.aist.go.jp>
9418
9419 * Makefile.in (lisp): Remove devanagari.el, kannada.el,
9420 malayalam.el, and tamil.el. Add sinhala.el.
9421
94222008-02-21 Stefan Monnier <monnier@iro.umontreal.ca>
9423
9424 * xterm.c (x_connection_closed): Consolidate identical tests.
9425 (x_delete_terminal): Don't crash if called via x_connection_closed.
9426
94272008-02-21 Kenichi Handa <handa@ni.aist.go.jp>
9428
9429 * xdisp.c (decode_mode_spec): New arg string.
9430 (display_mode_element): Adjust for the above change.
9431
94322008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
9433
9434 * callint.c (Fcall_interactively): Use AREF.
9435
94362008-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
9437
9438 * font.c (font_unparse_xlfd): Don't ignore integer pixel size specs.
9439
94402008-02-18 Jan Djärv <jan.h.d@swipnet.se>
9441
9442 * xfns.c (Fx_show_tip): Set string to " " if empty.
9443
94442008-02-17 Dan Nicolaescu <dann@ics.uci.edu>
9445
9446 * callint.c (syms_of_callint): Initialize Vmark_even_if_inactive
9447 with Qt.
9448
94492008-02-17 Kenichi Handa <handa@m17n.org>
9450
9451 * ftfont.c (ftfont_shape): Return Lispy number.
9452
9453 * xfaces.c (prepare_face_for_display): Use display_info->font->fid
9454 for GCs.
9455 (Finternal_set_font_selection_order): Call font_update_sort_order
9456 only when enable_font_backend is set.
9457 (realize_x_face): Set face->font_info to that of default face only
9458 when enable_font_backend is set.
9459
9460 * xdisp.c (handle_composition_prop): Set it->c to the fist
9461 character of the composed region.
9462 (fill_composite_glyph_string): Set base_face->font_info to
9463 s->font_info. Get a face for ascii from base_face->ascii_face.
9464 (BUILD_COMPOSITE_GLYPH_STRING): Call fill_composite_glyph_string
9465 with a face already decided.
9466 (x_produce_glyphs): Be sure to set it->ascent and it->descent to
9467 non-negative.
9468 (x_produce_glyphs): If the composition method is ..._WITH_GLYPH_STRING,
9469 call font_prepare_composition unconditionally.
9470
9471 * xfns.c (x_make_gc): Use the default font id of the frame for GCs.
9472
9473 * xterm.h (struct x_display_info): New member font.
9474
9475 * xterm.c (x_set_cursor_gc): Use display_info->font->fid for GCs.
9476 (x_set_mouse_face_gc, x_new_font): Likewise.
9477 (x_term_init): Setup display_info->font.
9478 (x_delete_terminal): Free display_info->font.
9479
9480 * xfont.c (xfont_draw): Use BLOCK_INPUT and UNBLOCK_INPUT.
9481
9482 * ftxfont.c (ftxfont_default_fid): Delete it.
9483 (ftxfont_open): Set xfont->fid to 0.
9484 (ftxfont_end_for_frame): Clear data specific to the frame and the
9485 font-driver.
9486
9487 * xftfont.c (xftfont_default_fid): Delete it.
9488 (xftfont_open): Set xfont->fid to 0.
9489
9490 * fontset.c (FONTSET_OBJLIST): New macro.
9491 (fontset_find_font): Update font-object list of the fontset.
9492 (free_realized_fontset): New function.
9493 (free_face_fontset): Call free_realized_fontset.
9494 (Ffont_info): Call font_close_object only when enable_font_backend
9495 is set.
9496
9497 * font.c [HAVE_X_WINDOWS]: Include xterm.h.
9498 [HAVE_NTGUI]: Include w32term.h.
9499 [MAC_OS]: Include macterm.ch.
9500 (font_otf_ValueRecord): Use make_number.
9501 (font_finish_cache): Fix handling of reference count.
9502 (font_clear_cache): Update num_fonts.
9503 (font_open_entity): Update smallest_char_width and
9504 smallest_font_height of the frame.
9505 (font_close_object): Update num_fonts.
9506 (Fclear_font_cache): Fix finding the target cache data.
9507
95082008-02-16 Glenn Morris <rgm@gnu.org>
9509
9510 * fontset.c (Finternal_char_font): Fix compilation warning.
9511
95122008-02-16 Eli Zaretskii <eliz@gnu.org>
9513
9514 * w32.c (init_user_info): Use TOKEN_USER and TOKEN_PRIMARY_GROUP
9515 instead of char arrays. Enlarge the size of array passed to
9516 get_token_information.
9517
9518 * font.c (Ffont_fill_gstring, Fget_font_glyphs): Fix compilation
9519 warnings.
9520
95212008-02-15 Dan Nicolaescu <dann@ics.uci.edu>
9522
9523 * .gdbinit: Don't set `args', it breaks gdb --args.
9524
95252008-02-14 Stefan Monnier <monnier@iro.umontreal.ca>
9526
9527 * fileio.c (Finsert_file_contents): Adjust offsets when replacing
9528 within a narrowed buffer.
9529
95302008-02-14 Kenichi Handa <handa@ni.aist.go.jp>
9531
9532 * coding.c (decode_coding_object, encode_coding_object):
9533 Preserve Vdeactivate_mark. Delete unnecessary call of Fcurrent_buffer.
9534
95352008-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
9536
9537 * coding.c (coding_set_destination): Use BEG_BYTE rather than
9538 hardcoding 1.
9539 (detect_coding_system):
9540 * lisp.h (detect_coding_system, chars_in_text, multibyte_chars_in_text)
9541 (string_char_to_byte, string_byte_to_char, insert_from_gap):
9542 * insdel.c (insert_from_gap):
9543 * fns.c (string_char_byte_cache_charpos, string_char_byte_cache_bytepos)
9544 (string_char_to_byte, string_byte_to_char, string_make_multibyte)
9545 (string_to_multibyte):
9546 * character.c (chars_in_text, multibyte_chars_in_text):
9547 * fileio.c (Finsert_file_contents): Use EMACS_INT for buffer positions.
9548
9549 * character.h (FETCH_STRING_CHAR_ADVANCE)
9550 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE)
9551 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA and SREF.
9552 (DEC_POS, BUF_DEC_POS): Use BEG_BYTE rather than hardcoding 1.
9553
9554 * casefiddle.c (casify_region): Only call after-change and composition
9555 functions on the part of the region that was changed.
9556
9557 * keyboard.c (read_avail_input):
9558 * frame.c (Fdelete_frame): Call Fdelete_terminal.
9559
95602008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
9561
9562 * buffer.c (clone_per_buffer_values, reset_buffer_local_variables)
9563 (Fbuffer_local_value, Fbuffer_local_variables): Don't forget undo_list.
9564
95652008-02-11 Juanma Barranquero <lekktu@gmail.com>
9566
9567 * w32menu.c (push_submenu_start, push_submenu_end)
9568 (push_left_right_boundary, push_menu_pane, push_menu_item):
9569 * keyboard.c (read_key_sequence): Don't pass args with side effects
9570 to AREF, it fails when compiling with -DENABLE_CHECKING.
9571
95722008-02-11 Kenichi Handa <handa@ni.aist.go.jp>
9573
9574 * Makefile.in (${lispsource}international/charprop.el):
9575 Delete this target.
9576
9577 * search.c (boyer_moore): Fix incorrect synching of the trunk and
9578 emacs-unicode-2.
9579
95802008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
9581
9582 * terminal.c (Fdelete_terminal): Clean up the `force' path.
9583
95842008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
9585
9586 * frame.c (Qnoelisp): New symbol.
9587 (syms_of_frame): Initialize it.
9588 (Fdelete_frame): Use it to distinguish a mere `force' passed from some
9589 harmless Elisp code, from a strong `force' from x_connection_closed.
9590 * frame.h (Qnoelisp): Declare.
9591 * xterm.c (x_connection_closed): Pass `noelisp'.
9592
9593 * lisp.h (struct Lisp_Misc_Any, struct Lisp_Marker)
9594 (struct Lisp_Overlay, struct Lisp_Kboard_Objfwd)
9595 (struct Lisp_Save_Value, struct Lisp_Free): Use enum Lisp_Misc_Type
9596 rather than `int' for the type of `type'.
9597
95982008-02-10 Dan Nicolaescu <dann@ics.uci.edu>
9599
9600 * s/gnu-linux.h: Remove support for non-ELF and linux-1.x.
9601
9602 * Makefile.in (GNUC): Remove support for gcc-1.x.
9603
96042008-02-10 Richard Stallman <rms@gnu.org>
9605
9606 * lisp.h (ASET): Use AREF, not ASLOT.
9607
96082008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
9609
9610 * lisp.h (ASET): Check bounds.
9611
96122008-02-10 Glenn Morris <rgm@gnu.org>
9613
9614 * buffer.c (mode-name): Doc fix.
9615
96162008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
9617
9618 * Makefile.in:
9619 * emacs.c:
9620 * gmalloc.c:
9621 * keyboard.c:
9622 * lisp.h:
9623 * m/ibm370aix.h:
9624 * process.c:
9625 * regex.c:
9626 * s/hpux.h:
9627 * sysdep.c:
9628 * sysselect.h:
9629 * systty.h:
9630 * unexec.c:
9631 * w32term.c:
9632 * xsmfns.c:
9633 * xterm.c: Remove code that deals with obsolete variables.
9634
9635 * s/msdos.h (DONT_NEED_ENVIRON): Don't define.
9636
9637 * ecrt0.c: Replace the DONT_NEED_ENVIRON test with MSDOS test,
9638 nothing else needs it anymore.
9639
96402008-02-09 Eli Zaretskii <eliz@gnu.org>
9641
9642 * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use unibyte_to_multibyte_table
9643 instead of unibyte_char_to_multibyte.
9644
96452008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
9646
9647 * s/gnu-linux.h: Remove commented out code.
9648
9649 * unexec.c: Remove references to obsolete variable COFF_ENCAPSULATE.
9650
9651 * Makefile.in: Update what RMS says about using autoconf.
9652 (C_COMPILER, COFF_ENCAPSULATE, MAKE_PARALLEL): Remove obsolete variable.
9653 (C_SWITCH_MACHINE_1, C_SWITCH_SYSTEM_1, C_SWITCH_SITE_1)
9654 (C_SWITCH_X_SITE_1, C_SWITCH_X_MACHINE_1)
9655 (C_SWITCH_X_SYSTEM_1): Move invariant code outside conditional.
9656
96572008-02-08 Stefan Monnier <monnier@iro.umontreal.ca>
9658
9659 * keymap.c (Fkey_description): Move side effect outside of macro call.
9660
9661 * xfaces.c (Finternal_make_lisp_face):
9662 * keyboard.c (add_command_key, parse_menu_item): Use ASET.
9663
9664 * fontset.c (free_face_fontset): Use FONTSET_FROM_ID.
9665 (syms_of_fontset): Use ASET.
9666
9667 * fns.c (concat): Move side effect outside of macro call.
9668 (hash_clear): Use ASET.
9669
96702008-02-08 Richard Stallman <rms@gnu.org>
9671
9672 * frame.c (Fdelete_frame): If FORCE, don't call hooks.
9673 If FORCE, and frame has a surrogate minibuffer for another frame,
9674 delete the other frame first.
9675
96762008-02-07 Timo Savola <timo.savola@iki.fi>
9677
9678 * xterm.c (x_detect_focus_change): Handle embed client message.
9679 (handle_one_xevent): Ditto.
9680 (handle_one_xevent): If embedded and we get a button press/release,
9681 request focus.
9682 (xembed_set_info, xembed_send_message): New functions.
9683 (x_make_frame_visible): Call xembed_set_info if embedded.
9684 (x_make_frame_invisible): Call xembed_set_info if embedded.
9685 (x_term_init): Initialize Xatom_XEMBED.
9686 (x_make_frame_visible): Check for FRAME_X_EMBEDDED_P also.
9687 (x_iconify_frame): Ditto.
9688
9689 * xterm.h (struct x_display_info): Add AtomXatom_XEMBED.
9690 (enum xembed_info, enum xembed_message, enum xembed_focus)
9691 (enum xembed_modifier, enum xembed_accelerator): New.
9692 (xembed_set_info, xembed_send_message): Declare.
9693 (FRAME_X_EMBEDDED_P): New.
9694
9695 * gtkutil.c (xg_create_frame_widgets): If frame is embedded, call
9696 gtk_plug_new.
9697
9698 * xfns.c (Fx_create_frame): Do not override the explicitly set parent
9699 window ID of a frame.
9700 (x_window): Reparent frame if embedded.
9701 (Fx_create_frame): Don't set border width if embedded.
9702
9703 * emacs.c (USAGE3): Add --parent-id.
9704 (standard_args): Ditto.
9705
97062008-02-07 Jan Djärv <jan.h.d@swipnet.se>
9707
9708 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): Use "do...while (0)".
9709
97102008-02-07 Jim Meyering <meyering@redhat.com>
9711
9712 Use "do...while (0)", not "if (1)...else" in macro definitions.
9713 The latter provokes a warning from gcc about the empty else, when
9714 followed by ";". Also, without that trailing semicolon, it would
9715 silently swallow up any following statement.
9716 * syntax.h (SETUP_SYNTAX_TABLE)
9717 (SETUP_SYNTAX_TABLE_FOR_OBJECT): Likewise.
9718 * buffer.h (DECODE_POSITION): Likewise.
9719 * character.h (FETCH_STRING_CHAR_ADVANCE): Likewise.
9720 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): Likewise.
9721 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Likewise.
9722 (FETCH_CHAR_ADVANCE): Likewise.
9723 (FETCH_CHAR_ADVANCE_NO_CHECK): Likewise.
9724
97252008-02-07 Jim Meyering <meyering@redhat.com>
9726
9727 * lread.c [lint]: Don't include <sys/inode.h>.
9728
97292008-02-07 Stefan Monnier <monnier@iro.umontreal.ca>
9730
9731 * xselect.c (x_handle_dnd_message):
9732 * xmenu.c (digest_single_submenu, xmenu_show):
9733 * xdisp.c (with_echo_area_buffer_unwind_data)
9734 (format_mode_line_unwind_data, unwind_format_mode_line)
9735 (display_menu_bar):
9736 * eval.c (Ffetch_bytecode):
9737 * doc.c (store_function_docstring):
9738 * ccl.c (resolve_symbol_ccl_program, ccl_get_compiled_code)
9739 (Fccl_execute, Fccl_execute_on_string, Fregister_code_conversion_map):
9740 * buffer.c (add_overlay_mod_hooklist): Use ASET.
9741
97422008-02-07 Kenichi Handa <handa@m17n.org>
9743
9744 * ftxfont.c (ftxfont_open): Don't set
9745 dpyinfo->smallest_font_height and dpyinfo->smallest_char_width to 0.
9746
9747 * ftfont.c (ftfont_open): Fix previous change.
9748
97492008-02-06 Jason Rumney <jasonr@gnu.org>
9750
9751 * w32font.c (w32font_text_extents): Fill in lbearing metric.
9752 Use cached metrics for ASCII characters.
9753 (w32font_open_internal): Don't set font's owning_frame.
9754 Cache metrics for ASCII characters.
9755
9756 * w32font.h (struct w32font_info): Add ascii_metrics.
9757 Remove owning_frame.
9758
97592008-02-06 Kenichi Handa <handa@ni.aist.go.jp>
9760
9761 * xdisp.c (x_produce_glyphs): Don't set it->ascent and it->descent
9762 to negative value.
9763
9764 * ftxfont.c (ftxfont_draw): Use s->font_info, not face->font_info.
9765
9766 * ftfont.c (ftfont_open): Fix calculation of font->font.average_width.
9767
9768 * charset.c (syms_of_charset): Set QCtest and Qeq.
9769
97702008-02-06 Stefan Monnier <monnier@iro.umontreal.ca>
9771
9772 * process.c (Fstart_process):
9773 * callproc.c (Fcall_process): Handle the case where
9774 Funhandled_file_name_directory returns nil.
9775
9776 * font.h (enum lgstring_indices, enum lglyph_indices): New enums.
9777 (LGSTRING_SLOT, LGSTRING_SET_SLOT): New macros.
9778 * font.c (check_gstring): Use them and AREF to access the vector before
9779 we know it's really a gstring.
9780 (Ffont_shape_text): Fix typo.
46e722a9 9781 (Ffont_shape_text, Ffont_otf_alternates): Fix up int/Lisp_Object mixups.
aac0c6e3
MR
9782
9783 * composite.h (Fcompose_region_internal, Fcompose_string_internal):
9784 Declare.
9785
9786 * chartab.c (make_sub_char_table): Remove noop-yet-incorrect statement.
9787
97882008-02-05 Jason Rumney <jasonr@gnu.org>
9789
9790 * w32font.c (w32font_open_internal): Fill min_width with tmAveCharWidth.
9791 Set smallest_font_height and smallest_char_width in display info.
9792
97932008-02-05 Kenichi Handa <handa@ni.aist.go.jp>
9794
9795 * coding.c (decode_eol): Pay attention to coding->dst_multibyte.
9796
97972008-02-05 Miles Bader <miles@gnu.org>
9798
9799 * xfaces.c (get_lface_attributes, merge_named_face)
9800 (lookup_named_face, lookup_derived_face, realize_named_face):
9801 Revert 2008-02-01 change by cyd@stupidchicken.com.
9802
98032008-02-04 Kenichi Handa <handa@ni.aist.go.jp>
9804
9805 * fontset.c (Ffontset_info): Handle the case of inhibitting the
9806 fallback fonts.
9807 (Ffontset_info) [USE_FONT_BACKEND]: Fix getting of opened font names.
9808
98092008-02-04 Jason Rumney <jasonr@gnu.org>
9810
9811 * w32font.c (w32font_open_internal): Use font_unparse_fcname to
9812 set full_name.
9813 (w32font_open_internal): Use xmalloc, xrealloc, xfree.
9814
98152008-02-03 Jason Rumney <jasonr@gnu.org>
9816
9817 * makefile.w32-in (OBJ1): Include font.o here.
9818 (FONTOBJ) [USE_FONTBACKEND]: Instead of here.
9819
98202008-02-02 Jason Rumney <jasonr@gnu.org>
9821
9822 * makefile.w32-in (temacs): Bump EMHEAP to 21.
9823
98242008-02-01 Jason Rumney <jasonr@gnu.org>
9825
9826 * s/cygwin.h: Define VIRT_ADDR_VARIES.
9827
9828 * puresize.h [VIRT_ADDR_VARIES]: Don't include CYGWIN in condition.
9829
98302008-02-01 Andreas Schwab <schwab@suse.de>
9831
9832 * Makefile.in (shortlisp, lisp): Update for rename of
9833 ../lisp/language/myanmar.el.
9834
98352008-02-01 Chong Yidong <cyd@stupidchicken.com>
9836
9837 * xfaces.c (get_lface_attributes): Delete function.
9838 (merge_named_face, lookup_named_face, lookup_derived_face)
9839 (realize_named_face): Call lface_from_face_name directly, and use
9840 the fact that merge_face_vectors does not alter its FROM argument.
9841
98422008-02-01 Jason Rumney <jasonr@gnu.org>
9843
9844 * w32term.c (w32_read_socket) <WM_CHAR>: Decode non-Unicode
9845 input in the default locale. Handle non-Unicode multibyte input.
9846
98472008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9848
9849 * fontset.c (reorder_font_vector): Exclude nil elements from the
9850 font group. Don't try multiple fonts.
9851 (fontset_font): Adjust for the above change.
9852 (Finternal_char_font): Return nil if the found font doesn't
9853 contain the character ch.
9854
9855 * Makefile.in (lisp, shortlisp): Add cham.el.
9856
98572008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9858
9859 * font.h (FONTP): Make it return 1 also for a font-object.
9860
9861 * .gdbinit (xfontset): New function.
9862
9863 * font.c (font_find_for_lface): Check if the character C is
9864 supported or not only for the first font.
9865
9866 * fontset.c (reorder_font_vector): Fix typo.
9867 (fontset_find_font): Don't add a font-spec specifying a script.
9868 Use 0 (not Qt) for the indication of empty font-group. Change the
9869 format of RFONT-DEF. Return Qt if no font in the font-group
9870 support the character.
9871 (fontset_font): Adjust for the above change. If no font was
9872 found the character, remember that.
9873 (face_for_char): Adjust for the change of RFONT-DEF.
9874 (Fset_fontset_font): Allow nil for FONT-SPEC to explicitly specify
9875 no font for the target.
9876 (Finternal_char_font): Adjust for the change of RFONT-DEF.
9877
98782008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9879
9880 * font.c (font_load_for_face): Handle the case that the font in
9881 face->lface is a string.
9882
98832008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9884
9885 * xfaces.c (set_lface_from_font_and_fontset): Set the fontname in lface.
9886
98872008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9888
9889 * xfaces.c (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]:
9890 Fix previous change. If the frame is not on a window system,
9891 signal an error.
9892
98932008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9894
9895 * coding.c (decode_coding_object, encode_coding_object): Adjust
9896 marker positions after conversion.
9897
9898 * lisp.h (struct Lisp_Marker): New member need_adjustment.
9899
99002008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9901
9902 * font.c (font_find_for_lface): Fix the handling of the return
9903 value of font_has_char.
9904 (Ffont_shape_text): Fix previous change.
9905
9906 * fontset.c (FONTSET_REF_AND_RANGE): Delete it.
9907 (fontset_ref_and_range): Delete it.
9908 (fontset_find_font): Call char_table_ref_and_range instead of
9909 FONTSET_REF_AND_RANGE.
9910 (make_fontset): Don't setup font groups of Latin here.
9911 (Fset_fontset_font): Don't overwrite the setting of FONTSET_ASCII.
9912 (new_fontset_from_font): Make the specified font the default for
9913 all Latin characters.
9914
99152008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9916
9917 * xfaces.c (Finternal_set_lisp_face_attribute): Check if the frame
9918 is on a window system before accessing the fontset of the frame.
9919
99202008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9921
9922 * Makefile.in (lisp, shortlisp): Add kherm.el and myanmar.el.
9923
9924 * ftfont.c (ftfont_driver): Set ftfont_shape in ftfont_driver only
9925 when both HAVE_M17N_FLT and HAVE_LIBOTF are defined.
9926
9927 * font.c (Ffont_shape_text): If the font driver doesn't have a
9928 shaper function, make zero-width glyphs to have at least one-pixel
9929 width. Fix setting of `to' field of glyphs.
9930
99312008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9932
9933 * ftfont.c (ftfont_drive_otf): Fix setting of FROM and TO slots of
9934 glyphs.
9935
9936 * font.h (struct font_driver): Improve docstring of member `shape'.
9937
99382008-02-01 Kenichi Handa <handa@m17n.org>
9939
9940 * composite.c (syms_of_composite): Fix docstring of
9941 auto-composition-function.
9942
9943 * font.h (LGLYPH_SIZE): New macro.
9944
9945 * font.c (Ffont_fill_gstring): Stop filling when a character not
9946 supported by the font is found.
9947 (Ffont_shape_text): When a shape callback function returns nil,
9948 try at most two more times with larger gstring.
9949 (Ffont_at): Fix getting of w. Call font_at with correct 5th argument.
9950
9951 * xdisp.c (handle_auto_composed_prop): Change the argument to
9952 auto-composition-function.
9953
9954 * ftfont.c (ftfont_encode_char): Use the macro FONT_INVALID_CODE.
9955 (ftfont_shape_by_flt): If an element of lgstring is nil, make a
9956 Lispy glyph and store it in the lgstring.
9957
9958 * xfont.c (xfont_encode_char): Use the macro FONT_INVALID_CODE.
9959
9960 * xftfont.c (xftfont_encode_char): Use the macro FONT_INVALID_CODE.
9961
99622008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9963
9964 * font.c (Ffont_shape_text): Avoid unnecessary composition.
9965
9966 * fontset.c (Vfont_encoding_charset_alist): New variable.
9967 (syms_of_fontset): DEFVAR it.
9968 (reorder_font_vector, fontset_find_font): Optimize for the case of
9969 no need of reordering.
9970 (face_for_char): Map the charset property by
9971 Vfont_encoding_charset_alist.
9972
99732008-02-01 Jason Rumney <jasonr@gnu.org>
9974
9975 * w32font.c (logfonts_match): Don't check adstyle here.
9976 (font_matches_spec): Check here against physical font instead.
9977 (add_font_entity_to_list): Avoid some substitutions.
9978
9979 * font.c (font_parse_fcname): Default weight and slant to normal.
9980 (font_score): Prefer normal fonts if weight or slant unspecified.
9981 (font_score) [WINDOWSNT]: Scale weight difference down to closer
9982 match freetype scores.
9983
99842008-02-01 Jason Rumney <jasonr@gnu.org>
9985
9986 * w32font.c (w32font_text_extents): Don't use the frame stored in the
9987 font, as it may have been deleted.
9988 (w32_enumfont_pattern_entity): Map generic family to adstyle using
9989 most common hyphenless variation.
9990 (logfonts_match): Check generic family.
9991 (font_matches_spec): Don't check generic family here.
9992 (fill_in_logfont): Set generic family based on adstyle.
9993
9994 * w32font.h (w32font_get_cache): Update declaration.
9995
99962008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9997
9998 * ftfont.c (ftfont_get_cache): Adjust the argument type.
9999
10000 * frame.c (x_set_font_backend): Don't call Fclear_font_cache.
10001 If none of the new drivers are available, call font_update_drivers
10002 with the old drivers.
10003
10004 * w32font.c (w32font_get_cache): Adjust the argument type.
10005
10006 * xfont.c (xfont_get_cache): Adjust the argument type.
10007
10008 * font.h (struct font_driver): Change argument type of get_cache.
10009
10010 * xftfont.c (xftfont_start_for_frame): Delete prototype.
10011
10012 * font.c (Ffont_get): Fix arguments to Fassoc.
10013 (font_prepare_cache, font_finish_cache, font_get_cache): New functions.
10014 (font_clear_cache): New function.
10015 (font_list_entities, font_matching_entity): Use font_get_cache.
10016 (font_update_drivers): Call font_clear_cache when finishing a driver.
10017
10018 * fontset.c (fontset_find_font): Fix previous change.
10019
100202008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10021
10022 * xterm.c (x_check_font) [USE_FONT_BACKEND]: Don't access
10023 dpyinfo->font_table.
10024 (x_delete_display) [USE_FONT_BACKEND]: Likewise.
10025 (x_delete_terminal) [USE_FONT_BACKEND]: Likewise.
10026
10027 * font.c (font_at): Handle the case that the arg C is negative.
10028 Handle the unibyte case.
10029 (Ffont_at): Call font_at with the arg C -1.
10030
10031 * xdisp.c (handle_auto_composed_prop): Don't get a character at
10032 the position here, and call font_at with the arg C -1.
10033 Don't check the range of the existing composition at the point.
10034
100352008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10036
10037 * fontset.c (fontset_add): New args charset_id and family.
10038 Change caller.
10039 (load_font_get_repertory, fontset_find_font): Assume that
10040 font_spec is always a font-spec object.
10041 (Fset_fontset_font): Always store a font-spec object in a fontset.
10042
10043 * xdisp.c (handle_auto_composed_prop): Use Fget_text_property
10044 instead of get_property_and_range.
10045
100462008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10047
10048 * xftfont.c (struct xftfont_info): Delete the member ft_face.
10049 (xftfont_open): Don't keep locking face.
10050 (xftfont_close): Don't unlock face.
10051 (xftfont_anchor_point, xftfont_shape): Lock and unlock face.
10052
10053 * fontset.c (fontset_find_font): Don't prefer a font of
10054 supplementary charset.
10055
100562008-02-01 Kenichi Handa <handa@m17n.org>
10057
10058 * ftfont.c (struct OpenTypeSpec): Rename members script_tag to
10059 script, langsys_tag to langsys, new member script.
10060 (OTF_TAG_STR): Terminate by '\0'.
867d4bb3 10061 (ftfont_get_open_type_spec): If :otf prop is spec, limit the
aac0c6e3
MR
10062 listing to the script specified in that property. Fix arg to
10063 OTF_check_features.
10064
100652008-02-01 Jason Rumney <jasonr@gnu.org>
10066
10067 * w32font.h: New file.
10068
10069 * w32font.c: Include it.
10070 (struct w32font_info): Add owning_frame field. Move to w32font.h.
10071 (w32font_open): Set owning_frame.
10072 (w32font_text_extents): Use owning_frame.
10073 (struct font_callback_data): Add opentype_only field.
10074 (add_font_entity_to_list): Use it to filter fonts.
10075 Don't check against full name.
10076 (w32font_list_internal): New function.
10077 (w32font_list): Use it.
10078 (w32font_match_internal): New function.
10079 (w32font_match): Use it.
10080 (w32font_open_internal): New function.
10081 (w32font_open): Use it.
10082 (w32font_get_cache, w32font_close, w32font_has_char)
10083 (w32font_encode_char, w32font_text_extents, w32font_draw):
10084 Make non-static.
10085
10086 * makefile.w32-in (w32font.o): Depend on w32font.h.
10087
100882008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10089
10090 * charset.c (Fdefine_charset_internal): Record a supplementary
10091 charset at the tail of Vcharset_order_list.
10092
10093 * font.c (Ffont_shape_text): Fix the return value.
10094
10095 * ftfont.c (OTF_SYM_TAG, OTF_TAG_STR): Fix argument names.
10096
10097 * xdisp.c (handle_auto_composed_prop): Fix previous change.
10098
100992008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10100
10101 * ftfont.c (struct OpenTypeSpec): New struct.
10102 (OTF_SYM_TAG, OTF_TAG_STR): New macros.
10103 (ftfont_get_open_type_spec): New function.
10104 (ftfont_list) [HAVE_LIBOTF]: Check otf-spec property.
10105
10106 * lread.c (read1): Redo the previous change with checking Vpurify_flag.
10107
101082008-02-01 Jason Rumney <jasonr@gnu.org>
10109
10110 * w32font.c (add_font_entity_to_list): Compare only the beginning
10111 of full name.
10112
101132008-02-01 Kenichi Handa <handa@m17n.org>
10114
10115 * xdisp.c (handle_auto_composed_prop): Simplify the code.
10116 Never return HANDLED_RECOMPUTE_PROPS.
10117
101182008-02-01 Kenichi Handa <handa@m17n.org>
10119
10120 * font.c (font_gstring_produce): Delete it.
10121
10122 * composite.h (COMPOSITION_METHOD):
10123 Handle COMPOSITION_WITH_GLYPH_STRING.
10124
101252008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10126
10127 * xfont.c (Qx): Delete.
10128 (syms_of_xfont): Don't initialize Qx.
10129
10130 * composite.h (enum composition_method):
10131 Define COMPOSITION_WITH_GLYPH_STRING unconditionally.
10132
101332008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10134
10135 * xfaces.c [HAVE_WINDOW_SYSTEM]: Include "font.h" unconditionally.
10136 (choose_face_font): Accept new form of font-spec.
10137
10138 * frame.h (font_driver_list): Declare it unconditionally.
10139 (struct frame): Define members font_driver_list and font_data_list
10140 unconditionally.
10141
10142 * fontset.c: Include "font.h" unconditionally.
10143 (generate_ascii_font_name): Use font_parse_xlfd and font_unparse_xlfd.
10144 (Fset_fontset_font): Accept a font-spec object.
10145
10146 * font.c (font_unparse_xlfd): If pixel_size is zero, make the
10147 PIXEL_SIZE part a wild card.
10148
10149 * dispextern.h (struct glyph_string): Define members clip and
10150 num_clips unconditionally.
10151 (struct face): Define members font_info and extra unconditionally.
10152
10153 * ftfont.c (ftfont_open): Set members maybe_otf and otf of
10154 ftfont_info only when HAVE_LIBOTF is defined.
10155
101562008-02-01 Andreas Schwab <schwab@suse.de>
10157
10158 * xdisp.c (back_to_previous_visible_line_start): Fix type of beg
10159 and end.
10160
101612008-02-01 Jason Rumney <jasonr@gnu.org>
10162
10163 * w32font.c (w32font_driver): Add new fields.
10164
101652008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10166
10167 * Makefile.in (ALL_CFLAGS): Add @M17N_FLT_CFLAGS@.
10168 (FONTSRC, FONTOBJ) [HAVE_WINDOW_SYSTEM]: Set them unconditionally.
10169 (LIBES): Add @M17N_FLT_CFLAGS@.
10170
10171 * composite.c (compose_text): Don't treat the new style
10172 composition specially.
10173
10174 * emacs.c (main): Call syms_of_font unconditionally.
10175
10176 * font.h (FONT_ENTITY_NOT_LOADABLE)
10177 (FONT_ENTITY_SET_NOT_LOADABLE): New macros.
10178 (LGSTRING_XXXX, LGLYPH_XXX): Adjust for the change of lispy gstring.
10179 (struct font_driver): New member shape.
10180 (font_registry_charsets): Extern it.
10181 (font_find_for_lface, font_prepare_composition): Adjust prototype.
10182 (font_otf_capability, font_drive_otf): Delete their externs.
10183
10184 * font.c [HAVE_M17N_FLT]: Include <m17n-flt.h>.
10185 (font_charset_alist, font_registry_charsets): Move from xfont.c
10186 and rename.
10187 (font_prop_validate_otf): New function.
10188 (font_property_table): Register it for QCotf.
10189 (DEVICE_DELTA, adjust_anchor, REPLACEMENT_CHARACTER)
10190 (font_drive_otf): Delete.
10191 (font_prepare_composition): New arg F. Adjust for the change of
10192 lispy gstring.
10193 (font_find_for_lface): New arg C.
10194 (font_load_for_face): Adjust for the change of font_find_for_lface.
10195 (Ffont_make_gstring, Ffont_fill_gstring): Adjust for the change of
10196 lispy gstring.
10197 (Ffont_shape_text): New function.
10198 (Fopen_font): If the font size is not given, use 12-pixel.
10199 (Ffont_at): New arg STRING.
10200 (syms_of_font): Initalize font_charset_alist.
10201 Declare Ffont_shape_text as a Lisp function. Call syms_of_XXfont
10202 conditionally.
10203
10204 * fontset.c (fontset_find_font) [USE_FONT_BACKEND]: Try multiple
10205 fonts of the same font-spec. Change the format of RFONT-DEF.
10206 (face_for_char, make_fontset_for_ascii_face, Finternal_char_font):
10207 Adjust for the change of RFONT-DEF.
10208 (Fset_fontset_font) [USE_FONT_BACKEND]: Handle new format of font-spec.
10209
10210 * ftfont.h: New file.
10211
10212 * ftfont.c: Don't include Freetype headers. Include "ftfont.h".
10213 (struct ftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
10214 (ftfont_open) [HAVE_LIBOTF]: Initialize the above members.
10215 (ftfont_driver) [HAVE_LIBOTF, HAVE_M17N_FLT]: Don't set
10216 font_otf_capability and font_drive_otf, set ftfont_shape.
10217 (ftfont_list): Adjust for the change of :otf property value.
10218 (struct MFLTFontFT) [HAVE_LIBOTF, HAVE_M17N_FLT]: New struct.
10219 (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_check_otf)
10220 (adjust_anchor, ftfont_drive_otf, ftfont_shape_by_flt)
10221 (ftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
10222 (DEVICE_DELTA) [HAVE_LIBOTF, HAVE_M17N_FLT]: New macro.
10223 (otf_gstring, gstring, m17n_flt_initialized): New variables.
10224
10225 * w32term.c (x_draw_composite_glyph_string_foreground):
10226 Adjust for the change of lispy gstring.
10227
10228 * xdisp.c (handle_composition_prop): Adjust for the change of
10229 lispy gstring. Call a function for auto-composition with the
10230 third arg it->window.
10231 (fill_composite_glyph_string): Adjust for the change of lispy string.
10232 (x_produce_glyphs): Adjust for the change of font_prepare_compositionl.
10233
10234 * xfaces.c (set_font_frame_param): Adjust for the change of
10235 font_find_for_lface.
10236
10237 * xfont.c (x_font_charset_alist): Move to font.c and rename.
10238 (xfont_registry_charsets): Likewise. Change caller.
10239 (syms_of_xfont): Don't handle x_font_charset_alist.
10240
10241 * xftfont.c: Include "ftfont.h".
10242 (struct xftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
10243 (xftfont_open) [HAVE_LIBOTF]: Initialize the above members.
10244 (xftfont_close) [HAVE_LIBOTF]: Close otf.
10245 (xftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
10246 (syms_of_xftfont) [HAVE_LIBOTF, HAVE_M17N_FLT]:
10247 Set xftfont_driver.shape to xftfont_shape.
10248
10249 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
10250 the change of lispy gstring.
10251
102522008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10253
10254 * ftxfont.c (ftxfont_end_for_frame): Fix array indexing error.
10255
102562008-02-01 Jason Rumney <jasonr@gnu.org>
10257
10258 * w32font.c (w32font_draw): Fill background manually.
10259
102602008-02-01 Jason Rumney <jasonr@gnu.org>
10261
10262 * font.c (Qfontp): Remove unused symbol.
10263 (QCantialias): New symbol.
10264 (syms_of_font): Define it.
10265 (font_property_table): Set a validator for QCantialias.
10266
10267 * w32font.c (CLEARTYPE_QUALITY, CLEARTYPE_NATURAL_QUALITY):
10268 Define if not already.
10269 (QCfamily): Share with xfaces.c.
10270 (Qstandard, Qsubpixel, Qnatural): New symbols.
10271 (syms_of_w32font): Define them. Don't define QCfamily here.
10272 (w32_antialias_type, lispy_antialias_type): New functions.
10273 (w32_enumfont_pattern_entity): New arg requested_font.
10274 Set antialias parameter if non-default was requested.
10275 (fill_in_logfont): Fill in lfQuality if :antialias specified.
10276
102772008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10278
10279 * lread.c (read1): Undo the previous change.
10280
102812008-02-01 CHENG Gao <chenggao@gmail.com> (tiny change)
10282
10283 * frame.c (Fdelete_frame): Call font_update_drivers only when
10284 USE_FONT_BACKEND is defined.
10285
102862008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10287
10288 * font.h (struct font_bitmap): New member bits_per_pixel.
10289 (struct font_driver): New members start_for_frame and end_for_frame.
10290 (struct font_data_list): New struct.
10291 (font_put_frame_data, font_get_frame_data): Extern them.
10292
10293 * frame.h (struct frame): New member font_data_list.
10294
10295 * font.c (font_update_drivers): Call driver->start_for_frame and
10296 driver->end_for_frame at proper timings.
10297 (font_put_frame_data, font_get_frame_data): New functions.
10298 (Ffont_spec): Add usage in the docstring.
10299
10300 * frame.c (make_frame): Initialize f->font_data_list to NULL.
10301 (Fdelete_frame): Call font_update_drivers.
10302
10303 * xftfont.c (struct xftface_info): Delete the member xft_draw.
10304 (xftfont_prepare_face, xftfont_done_face): Adjust for the above change.
10305 (xftfont_get_xft_draw): New function.
10306 (xftfont_draw): Get XftDraw by xftfont_get_xft_draw.
10307 (xftfont_end_for_frame): New function.
10308 (syms_of_xftfont): Set xftfont_driver.end_for_frame.
10309
10310 * ftxfont.c (ftxfont_get_gcs): Rename from ftxfont_create_gcs.
10311 Change argument. Cache GCs in the per-frame data.
10312 (struct ftxfont_frame_data): New struct.
10313 (ftxfont_draw_bitmap): New arg gc_fore and flush.
10314 (ftxfont_prepare_face, ftxfont_done_face): Delete them.
10315 (ftxfont_draw): Get GCs by ftxfont_get_gcs. Reflect s->clip in GCs.
10316 (ftxfont_end_for_frame): New function.
10317 (syms_of_ftxfont): Set ftxfont_driver.end_for_frame.
10318
10319 * ftfont.c (ftfont_get_bitmap): Set bitmap->bits_per_pixel.
10320
103212008-02-01 Kenichi Handa <handa@m17n.org>
10322
10323 * xselect.c (Vselection_coding_system)
10324 (Vnext_selection_coding_system): Delete them.
10325 (syms_of_xselect): Don't declare selection-coding-system and
10326 next-selection-coding-system. They are declared in select.el.
10327
103282008-02-01 Jason Rumney <jasonr@gnu.org>
10329
10330 * w32term.h (WM_UNICHAR, UNICODE_NOCHAR): Define if not already.
10331
10332 * w32fns.c: Include imm.h.
10333 (get_composition_string_fn, get_ime_context_fn): New optional
10334 system functions.
10335 (globals_of_w32fns): Load them from imm32.dll.
10336 (ignore_ime_char): New flag.
10337 (w32_wnd_proc): Handle WM_UNICHAR, WM_IME_CHAR and
10338 WM_IME_ENDCOMPOSITION messages.
10339
10340 * w32term.c (w32_read_socket) [WM_UNICHAR]: Handle as
10341 MULTIBYTE_CHAR_KEYSTROKE_EVENT.
10342
103432008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10344
10345 * lread.c (READCHAR): Call readchar with the 2nd arg NULL.
10346 (READCHAR_REPORT_MULTIBYTE): New macro.
10347 (readchar): New 2nd arg MULTIBYTE.
10348 (read1): Use READCHAR_REPORT_MULTIBYTE for the first read.
10349 Make symbol's name multibyte according to the multibyteness of the
10350 source.
10351
103522008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10353
10354 * xfaces.c (face_for_overlay_string): Call lookup_face with
10355 correct arguments (fix of synching with the trunk).
10356
103572008-02-01 Kenichi Handa <handa@m17n.org>
10358
10359 * font.c (font_prop_validate_symbol, font_prop_validate_style)
10360 (font_prop_validate_non_neg, font_prop_validate_spacing):
10361 Delete argument prop_index.
10362 (font_property_table): Change arguments to validater. Change Callers.
10363 (font_lispy_object): Delete.
10364 (font_at): Use font_find_object instead fo font_lispy_object.
10365
103662008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10367
10368 * fileio.c (Fexpand_file_name): Adjust multibyteness of directory
10369 and file names.
10370
103712008-02-01 Jason Rumney <jasonr@gnu.org>
10372
10373 * w32font.c (add_font_name_to_list): Avoid vertical fonts.
10374 (font_matches_spec): Remove debug output.
10375 (add_font_entity_to_list): Avoid using substituted fonts.
10376
103772008-02-01 Jason Rumney <jasonr@gnu.org>
10378
10379 * doc.c (Fsnarf_documentation):
10380 * Makefile.in (temacs${EXEEXT}, mostlyclean): Undo last change.
10381
103822008-02-01 Miles Bader <miles@gnu.org>
10383
10384 * dispextern.h (struct glyph_row): Only define "clip" field if
10385 HAVE_WINDOW_SYSTEM is defined.
10386
103872008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
10388
10389 Fix up multi-tty merge.
10390
10391 * xterm.c (handle_one_xevent): Remove duplicate code and fix up nesting
10392 and indentation.
10393
10394 * xfaces.c (free_realized_face, clear_face_gcs):
10395 Include font_done_for_face in the input_blocked section, just in case.
10396
10397 * xdisp.c (decode_mode_spec): Use terminal-local coding systems.
10398 (get_char_face_and_encoding): Undo last change and remove the *other*
10399 duplicate definition (i.e. keep the one that's better scoped and that
10400 includes code for the font-backend).
10401
10402 * terminal.c (create_terminal): Default keyboard_coding to
10403 `no-conversion' and terminal_coding to `undecided'.
10404
10405 * lread.c (read1): Use XSETPVECTYPE to set a pseudovector's tag.
10406
10407 * fontset.c (free_realized_fontsets): Check that the table entry does
10408 contain a fontset before trying to compare it to `base'.
10409
10410 * emacs.c (main): Move syms_of_data, syms_of_fileio, syms_of_alloc,
10411 syms_of_charset, and syms_of_coding earlier because init_window_once
10412 now needs Vcoding_system_hash_table to be setup.
10413
10414 * coding.h (default_buffer_file_coding): Remove.
10415
10416 * coding.c (default_buffer_file_coding): Remove.
10417 (Fterminal_coding_system, Fkeyboard_coding_system): Use ->id rather
10418 than ->symbol, and use the terminal-local coding system.
10419 (syms_of_coding): Don't setup the coding-systems that are not
10420 terminal-local.
10421 (Fdefine_coding_system_internal): Use XCAR/XCDR.
10422
10423 * chartab.c (Fmake_char_table, make_sub_char_table, copy_char_table):
10424 Use XSETPVECTYPE now that XSETCHAR_TABLE doesn't set the tag anymore.
10425
10426 * alloc.c (Fmake_char_table, make_sub_char_table): Remove. They're now
10427 in chartab.c and were re-added here by mistake.
10428 (Fpurecopy): Use XSETPVECTYPE after copying a COMPILED pseudovector.
10429
10430 * doc.c (Fsnarf_documentation):
10431 * Makefile.in (temacs${EXEEXT}, mostlyclean): Move buildobj.lst from
10432 src to etc.
10433
10434 * ChangeLog.10: Add mistakenly removed entry.
10435
104362008-02-01 Dan Nicolaescu <dann@ics.uci.edu>
10437
10438 * Makefile.in (fringe.o, minibuf.o): Fix dependencies.
10439
104402008-02-01 Miles Bader <miles@gnu.org>
10441
10442 * xdisp.c (get_char_face_and_encoding): Remove extraneous definition.
10443 Add extra args to FACE_FOR_CHAR.
10444
104452008-02-01 Kenichi Handa <handa@m17n.org>
10446
10447 * keymap.c (where_is_internal_1): If key is a cons, store the copy
10448 in sequence.
10449
10450 * chartab.c (map_sub_char_table, map_char_table): If the range
10451 contains just one character, call the function with that character
10452 even if the depth is not 3.
10453
104542008-02-01 Jason Rumney <jasonr@gnu.org>
10455
10456 * w32font.c (w32font_text_extents): Calculate metrics for the
10457 whole string.
10458
104592008-02-01 Jason Rumney <jasonr@gnu.org>
10460
10461 * w32xfns.c (get_next_msg): Consolidate WM_PAINT messages.
10462
104632008-02-01 Jason Rumney <jasonr@gnu.org>
10464
10465 * w32term.c (x_set_glyph_string_clipping): Use
10466 get_glyph_string_clip_rects.
10467 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
10468 Adjust for the change of struct glyph_string.
10469
10470 * w32font.c (w32font_draw): Do clipping here.
10471
104722008-02-01 Kenichi Handa <handa@m17n.org>
10473
10474 * xftfont.c (xftfont_draw): Adjust for the change of struct
10475 glyph_string.
10476
10477 * xterm.c (x_set_glyph_string_clipping): Use
10478 get_glyph_string_clip_rects.
10479 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
10480 Adjust for the change of struct glyph_string.
10481
10482 * xdisp.c (get_glyph_string_clip_rects): Reflect s->row->clip to
10483 the resulting clip(s}.
10484 (expose_overlaps): Add arg r. Change callers. Set it to
10485 row->clip temporarily.
10486 (expose_window): Redraw rows overlapping the exposed area.
10487
10488 * dispextern.h (struct glyph_row): New member clip.
10489 (struct glyph_string): Delete members clip_x, clip_y, clip_width,
10490 clip_height, new member clip, and num_clips.
10491
104922008-02-01 Kenichi Handa <handa@m17n.org>
10493
10494 * data.c (Fchar_or_string_p): Fix docstring.
10495
104962008-02-01 Kenichi Handa <handa@m17n.org>
10497
10498 * xftfont.c (xftfont_draw): If s->font_info != s->face->font_info,
10499 create a temporary XftDraw object.
10500
105012008-02-01 Kenichi Handa <handa@m17n.org>
10502
10503 * font.c (Ffontp): Fix docstring.
10504
10505 * coding.c (detect_coding_iso_2022): Don't treat SI/SO codes as a
10506 strong evidence of ISO-2022.
10507
105082008-02-01 Kenichi Handa <handa@m17n.org>
10509
10510 * abbrev.c (abbrev_check_chars): Use CHAR_TABLE_REF, not
10511 SYNTAX_ENTRY_FOLLOW_PARENT.
10512
105132008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
10514
10515 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and change
10516 its type.
10517 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
10518 Update to the new type of weak_hash_tables and next_weak.
10519
10520 * lisp.h (struct Lisp_Hash_Table): Change next_weak from Lisp_Object to
10521 a plain C pointer to Lisp_Hash_Table.
10522
10523 * lisp.h (XGCTYPE, GC_HASH_TABLE_P, GC_NILP, GC_NUMBERP, GC_NATNUMP)
10524 (GC_INTEGERP, GC_SYMBOLP, GC_MISCP, GC_VECTORLIKEP, GC_STRINGP)
10525 (GC_CONSP, GC_FLOATP, GC_VECTORP, GC_OVERLAYP, GC_MARKERP)
10526 (GC_INTFWDP, GC_BOOLFWDP, GC_OBJFWDP, GC_BUFFER_OBJFWDP)
10527 (GC_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP)
10528 (GC_KBOARD_OBJFWDP, GC_PSEUDOVECTORP, GC_WINDOW_CONFIGURATIONP)
10529 (GC_PROCESSP, GC_WINDOWP, GC_SUBRP, GC_COMPILEDP, GC_BUFFERP)
10530 (GC_SUB_CHAR_TABLE_P, GC_CHAR_TABLE_P, GC_BOOL_VECTOR_P, GC_FRAMEP)
10531 (GC_EQ): Remove since they've been identical to their non-GC_
10532 alter-egos ever since the markbit was eradicated.
10533
10534 * alloc.c:
10535 * buffer.c:
10536 * buffer.h:
10537 * data.c:
10538 * fileio.c:
10539 * filelock.c:
10540 * fns.c:
10541 * frame.h:
10542 * lisp.h:
10543 * macterm.c:
10544 * print.c:
10545 * process.c:
10546 * w32fns.c:
10547 * w32menu.c:
10548 * w32term.c:
10549 * xfns.c:
10550 * xmenu.c:
10551 * xterm.c: Replace uses of GC_* macros with the non-GC_ versions.
10552
105532008-02-01 Kenichi Handa <handa@m17n.org>
10554
10555 * chartab.c (map_sub_char_table): Make it work for the top-level
10556 char-table. Fix handling of parent char-table.
10557 (map_char_table): Adjust for the above change.
10558
105592008-02-01 Jason Rumney <jasonr@gnu.org>
10560
10561 * w32font.c (Qgdi): Rename from Qw32.
10562
105632008-02-01 Jason Rumney <jasonr@gnu.org>
10564
10565 * w32bdf.c (get_quoted_string): Make function static.
10566
105672008-02-01 Kenichi Handa <handa@m17n.org>
10568
10569 * xftfont.c (xftfont_open): If one of font's ASCII glyph has
10570 bigger ascent and descent than those of the font, use them as
10571 font's ascent and descent.
10572
105732008-02-01 Kenichi Handa <handa@m17n.org>
10574
10575 * Makefile.in (${lispsource}international/charprop.el): Move this
10576 target within "#ifdef HAVE_UNIDATA" and "#endif".
10577
105782008-02-01 Kenichi Handa <handa@m17n.org>
10579
10580 * Makefile.in (lisp): Add ${lispsource}language/tai-viet.el.
10581 (shortlisp): Add ../lisp/language/tai-viet.el.
10582
105832008-02-01 Ulrich Mueller <ulm@gentoo.org>
10584
10585 * Makefile.in (${lispsource}international/charprop.el): Depend on
10586 temacs${EXEEXT}.
10587
105882008-02-01 Jason Rumney <jasonr@gnu.org>
10589
10590 * w32font.c (w32font_close): Delete the GDI font object.
10591
10592 * w32menu.c: Include character.h.
10593
10594 * w32proc.c: Likewise.
10595
10596 * w32select.c: Likewise.
10597
10598 * makefile.w32-in (w32proc.o): Depend on character.h.
10599
106002008-02-01 Jason Rumney <jasonr@gnu.org>
10601
10602 * w32fns.c (syms_of_w32fns): Use DEFSYM macro.
10603
10604 * w32menu.c (syms_of_w32menu): Likewise.
10605
10606 * w32proc.c (syms_of_ntproc): Likewise.
10607
10608 * w32select.c (syms_of_w32select): Likewise.
10609
10610 * w32term.c (syms_of_w32term): Likewise.
10611
106122008-02-01 Jason Rumney <jasonr@gnu.org>
10613
10614 * w32font.c (w32font_draw): Delete brush after using it.
10615
106162008-02-01 Jason Rumney <jasonr@gnu.org>
10617
10618 * w32font.c (w32font_open): Don't set font_idx.
10619 (w32font_text_extents): Try GetTextExtentPoint32W before defaulting
10620 to font settings.
10621 (w32font_draw): Fill background explicitly.
10622
106232008-02-01 Jason Rumney <jasonr@gnu.org>
10624
10625 * w32term.c (w32_initialize): Don't call w32font_initialize.
10626
10627 * w32font.c (w32font_info): Remove subranges.
10628 (QCsubranges, Qmodern, Qswiss, Qroman): Remove.
10629 (QCfamily, Qmonospace, Qsans_serif, Qmono, Qsans, Qsans__serif)
10630 (Qraster, Qoutline, Qlatin, Qgreek, Qcoptic, Qcyrillic, Qarmenian)
10631 (Qhebrew, Qarabic, Qsyriac, Qnko, Qthaana, Qdevanagari, Qbengali)
10632 (Qgurmukhi, Qgujarati, Qoriya, Qtamil, Qtelugu, Qkannada)
10633 (Qmalayalam, Qsinhala, Qthai, Qlao, Qtibetan, Qmyanmar, Qgeorgian)
10634 (Qhangul, Qethiopic, Qcherokee, Qcanadian_aboriginal, Qogham)
10635 (Qrunic, Qkhmer, Qmongolian, Qsymbol, Qbraille, Qhan)
10636 (Qideographic_description, Qcjk_misc, Qkana, Qbopomofo, Qkanbun)
10637 (Qyi, Qbyzantine_musical_symbol, Qmusical_symbol, Qmathematical):
10638 New symbols.
10639 (font_callback_data): New struct.
10640 (w32font_list, w32font_match): Use it.
10641 (w32font_open): Don't populate subranges.
10642 (w32font_has_char): Use script Lisp symbols, not subrange bitmask.
10643 (w32font_encode_char): Always return unicode code-point as-is.
10644 (w32font_text_extents): Supply a transformation matrix to
10645 GetGlyphOutline. Never look up by glyph index. Avoid looping
10646 twice. Use unicode version of GetTexExtentPoint32 instead of
10647 glyph index version.
10648 (set_fonts_frame): Remove.
10649 (w32_enumfont_pattern_entity): Add frame parameter, use it to
10650 set frame parameter. Use backward compatible fake foundries.
10651 Save generic family in extra slot under QCfamily. Make width slot
10652 constant. Save QCspacing value. Save list of scripts instead of
10653 binary subranges.
10654 (w32_generic_family, logfonts_match, font_matches_spec): New functions.
10655 (add_font_entity_to_list): Use font_callback_data struct. Filter
10656 unwanted fonts.
10657 (add_one_font_entity_to_list): Use font_callback_data struct.
10658 (w32_registry): Default to iso10646_1.
10659 (fill_in_logfont): Use dpi from extra slot. Don't bother with
10660 string font registries. Don't fill in font name if it is a generic
10661 family name, fill family instead. Use spacing, family and script
10662 extra info to fill pitch, family and charset fields.
10663 (list_all_matching_fonts): Use font_callback_data struct.
10664 (unicode_range_for_char): Remove.
10665 (font_supported_scripts): New function.
10666 (w32font_initialize): Remove.
10667 (syms_of_w32font): Update which symbols are defined.
10668
106692008-02-01 Jason Rumney <jasonr@gnu.org>
10670
10671 * font.c (font_pixel_size): Reverse assq_no_quit args.
10672
10673 * w32term.h (FONT_WIDTH): Report max width, not average.
10674 (FONT_MAX_WIDTH): Remove.
10675 (FONT_AVG_WIDTH): New macro.
10676
10677 * xfaces.c (Fx_list_fonts) [WINDOWSNT]: Remove Windows only
10678 redefinition of FONT_WIDTH.
10679
10680 * w32term.c (x_font_min_bounds): Use FONT_AVG_WIDTH.
10681 (w32_cache_char_metrics): Use FONT_WIDTH.
10682
10683 * w32fns.c (w32_load_system_font, w32_list_fonts): Use FONT_AVG_WIDTH.
10684
106852008-02-01 Jason Rumney <jasonr@gnu.org>
10686
10687 * w32font.c (w32font_open): Make lfHeight negative.
10688
10689 * w32fns.c (x_default_font_parameter): Use new style font name.
10690 (Fx_create_frame, x_create_tip_frame): Initialize resx and resy.
10691
106922008-02-01 Jason Rumney <jasonr@gnu.org>
10693
10694 * w32font.c (QCsubranges): New symbol.
10695 (w32font_open, w32font_has_char): Get subranges from subproperty
10696 of extra.
10697 (w32_enumfont_pattern_entity): Set subranges as subproperty of extra.
10698 (syms_of_w32font): Define :subranges symbol.
10699
10700 * font.c (font_put_extra): Expose externally.
10701
10702 * font.h (font_put_extra): Move declaration from font.c.
10703
10704 * font.c (Ffont_get): Use font driver to determine otf capability.
10705 (adjust_anchor): Check if driver defines anchor_point before using.
10706
10707 * w32font.c (w32font_open): Handle size, height and pixel_size better.
10708 (w32font_draw): Use options.
10709 (w32_enumfont_pattern_entity): Set size to 0 for scalable fonts.
10710 Fix detection of truetype fonts.
10711 (registry_to_w32_charset): Handle charsets other than iso8859-1
10712 expressed as lisp symbols.
10713 (w32_registry): Express charset as lisp symbol.
10714 (fill_in_logfont): Reverse pixel and point height logic.
10715 Don't set width here. Set quality to default.
10716
10717 * w32fns.c (w32_load_system_font): Fix detecting FIXED_PITCH fonts.
10718 (x_to_w32_font): Fill in lfPitchAndFamily correctly.
10719
10720 * xterm.c (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
10721 Remove redundant loop and allocation.
10722
10723 * makefile.w32-in (font.o, w32font.o): New objects.
10724 (fontset.o, xdisp.o, xfaces.o, w32fns.o, w32term.o): Depend on font.h.
10725 (FONTOBJ): New group of objects conditioned on USE_FONT_BACKEND.
10726
10727 * xdisp.c (fill_composite_glyph_string): Make the first arg to
10728 STORE_XCHARB a valid l-value.
10729
10730 * w32term.c (w32_native_per_char_metric): Swap width and rbearing
10731 calculations for non-Truetype fonts.
10732 (x_draw_glyph_string): Sync with xterm.c.
10733 (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
10734 Remove redundant code.
10735 (w32_initialize) [USE_FONT_BACKEND]: Call w32font_initialize.
10736
10737 * w32term.h (w32_output_data) [USE_FONT_BACKEND]: Add fontp member.
10738 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro from xterm.h.
10739
10740 * w32fns.c [USE_FONT_BACKEND]: Port font backend changes from xfns.c.
10741 (x_to_w32_charset, w32_to_x_charset): Expose externally.
10742
10743 * w32font.c: New file for w32 font backend.
10744
107452008-02-01 Kenichi Handa <handa@m17n.org>
10746
10747 * term.c: Don't include "buffer.h" twice.
10748
107492008-02-01 Kenichi Handa <handa@m17n.org>
10750
10751 * character.c (Funibyte_string): New function.
10752 (syms_of_character): Defsubr it.
10753
107542008-02-01 Jason Rumney <jasonr@gnu.org>
10755
10756 * w32term.c [USE_FONT_BACKEND]:
10757 (x_get_font_repertory, note_mouse_movement, x_set_mouse_face_gc)
10758 (x_set_glyph_string_clipping, x_set_glyph_string_clipping_exactly)
10759 (x_draw_glyph_string, x_draw_glyph_string_foreground)
10760 (x_draw_composite_glyph_string_foreground, x_new_fontset2)
10761 (x_free_frame_resources): Sync with xterm.c.
10762
107632008-02-01 Andreas Schwab <schwab@suse.de>
10764
10765 * lread.c (read1): Use CHAR_TABLE_STANDARD_SLOTS to validate
10766 char-table size.
10767
107682008-02-01 Kenichi Handa <handa@m17n.org>
10769
10770 * font.c (check_otf_features): Define it regardless of HAVE_LIBOTF.
10771
107722008-02-01 Kenichi Handa <handa@m17n.org>
10773
10774 * ftfont.c (ftfont_driver): Delete font_otf_gsub and
10775 font_otf_gpos, add font_drive_otf.
10776
10777 * fontset.c (fontset_find_font): Pay attention to font size
10778 specified for a font.
10779 (reorder_font_vector): Check contents of font_def.
10780
10781 * font.c (struct otf_list): Delete it.
10782 (otf_list): Make it a lisp variable.
10783 (otf_open): Use lispy otf_list.
10784 (generate_otf_features): Rename from parse_gsub_gpos_spec.
10785 (check_otf_features): New function.
10786 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
10787 New functions.
10788 (font_drive_otf): New function merging font_otf_gsub and
10789 font_otf_gpos.
10790 (font_open_for_lface): New arg spec. Change argument order.
10791 (font_load_for_face): Adjust for the change of font_open_for_lface.
10792 (Ffont_drive_otf): New function merging Ffont_otf_gsub and
10793 Ffont_otf_gpos.
10794 (syms_of_font): Staticpro otf_list. Delete defsubr of
10795 Sfont_otf_gsub and Sfont_otf_gpos. Defsubr Sfont_drive_otf.
10796
10797 * xfaces.c (set_font_frame_param): Adjust for the change of
10798 font_open_for_lface.
10799
10800 * font.h (font_open_for_lface): Adjust prototype.
10801 (struct font_driver): Delete members otf_gsub and otf_gpos, add
10802 member otf_drive.
10803 (font_otf_gsub, font_otf_gpos): Delete externs.
10804 (font_drive_otf): Extern it.
10805
108062008-02-01 Kenichi Handa <handa@m17n.org>
10807
10808 * font.c (font_at): If the window W is not on a window system,
10809 return Qnil.
10810
10811 * coding.c (produce_chars, encode_coding): Don't call
10812 insert_from_gap if no characters to produce.
10813
108142008-02-01 Kenichi Handa <handa@m17n.org>
10815
10816 * fontset.c (free_realized_fontsets): Avoid unnecessary call of
10817 Fclear_face_cache.
10818
10819 * xfaces.c (face_for_font): Check also face->font==font->font.font.
10820
108212008-02-01 Miles Bader <miles@gnu.org>
10822
10823 * emacs.c (main): Change default value of `enable_font_backend' to 1.
10824 Parse "--disable-font-backend" option.
10825 (standard_args): Add "--disable-font-backend" option.
10826
108272008-02-01 Kenichi Handa <handa@m17n.org>
10828
10829 * fontset.c (fontset_find_font): New function.
10830 (fontset_font): Use fontset_find_font.
10831 (make_fontset_for_ascii_face): Don't set face ID in rfont_def.
10832 Register the specified font for all Latin characters.
10833 (new_fontset_from_font): Register the specified font for all Latin
10834 characters.
10835 (dump_fontset): For a realized fontset, include the base fontset
10836 name in the returned vector.
10837
108382008-02-01 Kenichi Handa <handa@m17n.org>
10839
10840 * character.h (CHAR_STRING): Cast C to unsigned on calling
10841 char_string.
10842
10843 * character.c (char_string): Type of arg C changed to unsigned.
10844 Signal an error if C is an invalid character code.
10845
10846 * editfns.c (general_insert_function, Fchar_to_string):
10847 Use CHARACTERP, not INTEGERP.
10848
108492008-02-01 Kenichi Handa <handa@m17n.org>
10850
10851 * character.h (MIN_MULTIBYTE_LEADING_CODE)
10852 (MAX_MULTIBYTE_LEADING_CODE): New macros.
10853
10854 * regex.c (analyse_first): Fix for multibyte characters in "case
10855 charset:" and "case categoryspec:".
10856
108572008-02-01 Andreas Schwab <schwab@suse.de>
10858
10859 * Makefile.in (LIBES): Move standard libraries to the end.
10860
108612008-02-01 Kenichi Handa <handa@m17n.org>
10862
10863 * alloc.c (Fgarbage_collect): If nextb->text->inhibit_shrinking is
10864 nonzero, don't shrink the buffer nextb.
10865
10866 * buffer.h (struct buffer_text): New member inhibit_shrinking.
10867
10868 * coding.c (coding_alloc_by_making_gap): New arg offset.
10869 (alloc_destination): Call coding_alloc_by_making_gap with the arg
10870 offset.
10871 (decode_coding_iso_2022): Update coding->safe_charsets.
10872 (decode_coding_gap): Temporarily set
10873 current_buffer->text->inhibit_shrinking to 1.
10874
108752008-02-01 Kenichi Handa <handa@m17n.org>
10876
10877 * xterm.c (x_draw_composite_glyph_string_foreground): Fix
10878 indexing into elements of s->cmp and s->char2b.
10879
108802008-02-01 Juanma Barranquero <lekktu@gmail.com>
10881
10882 * regex.c (RE_STRING_CHAR_AND_LENGTH) [! emacs]: Add missing arg `len'.
10883
108842008-02-01 Kenichi Handa <handa@m17n.org>
10885
10886 * regex.c (GET_CHAR_BEFORE_2, GET_CHAR_AFTER): Check the variable
10887 target_multibyte instead of multibyte.
10888 (re_match_2_internal): Call bcmp_translate with target_multibyte.
10889 (bcmp_translate): Change the argument name from multibyte to
10890 target_multibyte.
10891
108922008-02-01 Kenichi Handa <handa@m17n.org>
10893
10894 These changes are to compile a regexp into a pattern that can be
10895 used both for multibyte and unibyte targets.
10896
10897 * Makefile.in (search.o): Depend on charset.h.
10898
10899 * character.c (multibyte_char_to_unibyte_safe): New function.
10900
10901 * search.c: Include "charset.h".
10902 (compile_pattern_1): Delete argument multibyte. Don't set
10903 cp->buf.target_multibyte here. Set cp->buf.charset_unibyte.
10904 (compile_pattern): Don't compare cp->buf.target_multibyte.
10905 Compare cp->buf.charset_unibyte.
10906 (compile_pattern): Set cp->buf.target_multibyte.
10907
10908 * lisp.h (multibyte_char_to_unibyte_safe): Extern it.
10909
10910 * regex.h (struct re_pattern_buffer): New member charset_unibyte.
10911
10912 * regex.c (RE_STRING_CHAR, RE_STRING_CHAR_AND_LENGTH): New arg
10913 multibyte. Change callers.
10914 (RE_CHAR_TO_MULTIBYTE, RE_CHAR_TO_UNIBYTE): New macros.
10915 (MAKE_CHAR_MULTIBYTE, MAKE_CHAR_UNIBYTE): Delete. Change callers
10916 to use RE_CHAR_TO_MULTIBYTE and RE_CHAR_TO_UNIBYTE, respectively.
10917 (SETUP_ASCII_RANGE, SETUP_UNIBYTE_RANGE): New macros.
10918 (SETUP_MULTIBYTE_RANGE): Generate a more compact range_table.
10919 (regex_compile): Make the compiled pattern usable both for
10920 multibyte and unibyte targets.
10921 (analyse_first): Make the fastmap usable both for multibyte and
10922 unibyte targets.
10923 (TRANSLATE_VIA_MULTIBYTE): Delete.
10924 (re_match_2_internal): Pay attention to the case that the
10925 multibyteness of bufp and target may be different.
10926
109272008-02-01 Kenichi Handa <handa@m17n.org>
10928
10929 * xdisp.c (x_produce_glyphs): When a font is not found, make the
10930 empty box occupy at least one column width.
10931
109322008-02-01 Miles Bader <miles@gnu.org>
10933
10934 * Makefile.in: Remove redundant HAVE_XFT clause.
10935
109362008-02-01 Kenichi Handa <handa@m17n.org>
10937
10938 * xrdb.c (x_load_resources): Setup the default fontSet X resource.
10939
109402008-02-01 Kenichi Handa <handa@m17n.org>
10941
10942 * fontset.c (Finternal_char_font): Fix for the case of POSITION
10943 being nil.
10944
109452008-02-01 Kenichi Handa <handa@m17n.org>
10946
10947 * xftfont.c (xftfont_open): Call FcConfigSubstitute.
10948
109492008-02-01 Kenichi Handa <handa@m17n.org>
10950
10951 * xftfont.c (xftfont_open): Don't enable antialias explicitly.
10952
109532008-02-01 Kenichi Handa <handa@m17n.org>
10954
10955 * search.c (simple_search): Fix previous change.
10956
109572008-02-01 Kenichi Handa <handa@m17n.org>
10958
10959 * xftfont.c (ftfont_font_format): Extern declaration.
10960
10961 * frame.c (x_set_font): Fix the second arg to fs_query_fontset.
10962
10963 * xfont.c (xfont_driver): Initialize ftfont_driver.type by 0.
10964 (xfont_list): Don't directly use Lisp_Object as an operand of &&.
10965
10966 * ftfont.c (ftfont_driver): Initialize ftfont_driver.type by 0.
10967 (ftfont_font_format): Fix previous change.
10968
10969 * font.h (Ffont_xlfd_name): EXFUN it.
10970
10971 * font.c (font_parse_xlfd): Fix the array size of `f'.
10972 (register_font_driver): Use EQ to compare driver->type.
10973
10974 * xfns.c (xic_create_xfontset2) [USE_FONT_BACKEND]: New function.
10975 (create_frame_xic) [USE_FONT_BACKEND]: Call xic_create_xfontset2.
10976 (xic_set_xfontset) [USE_FONT_BACKEND]: Likewise.
10977
109782008-02-01 Kenichi Handa <handa@m17n.org>
10979
10980 * ftfont.c (ftfont_pattern_entity, ftfont_list_generic_family)
10981 (ftfont_list, ftfont_font_format): Check if FC_FONTFORMAT is defined.
10982
109832008-02-01 Kenichi Handa <handa@m17n.org>
10984
10985 * xfont.c (xfont_open): Set font->format.
10986
10987 * xftfont.c (xftfont_open): Set font->format.
10988
10989 * ftfont.c (ftfont_pattern_entity): Add fontformat in a pattern.
10990 (ftfont_list): Include FC_FONTFORMAT in FcObject.
10991 (ftfont_open): Set font->format.
10992 (ftfont_font_format): New function.
10993
10994 * font.h (struct font): New member format.
10995
10996 * font.c (Qopentype): New variable.
10997 (syms_of_font): Defsym it.
10998 (Fquery_font): Change the format of the last element of the return
10999 value.
11000
110012008-02-01 Kenichi Handa <handa@m17n.org>
11002
11003 * xfns.c (xic_create_xfontset): Try the default fontset name as a
11004 last resort.
11005
110062008-02-01 Kenichi Handa <handa@m17n.org>
11007
11008 * coding.c (detect_coding_charset): Fix detection of multi-byte
11009 charset.
11010
110112008-02-01 Bob Halley <halley@play-bow.org> (tiny change)
11012
11013 * ccl.c (ccl_driver): If DST is NULL, set ccl->produced to 0.
11014
110152008-02-01 Kenichi Handa <handa@m17n.org>
11016
11017 * xdisp.c (get_next_display_element): Set it->face_id for the
11018 first component of a composition.
11019 (x_produce_glyphs): Check if the font is changed or not for composition.
11020
110212008-02-01 Kenichi Handa <handa@m17n.org>
11022
11023 * fontset.c (Qlatin): New variable.
11024 (syms_of_fontset): Define it as a lisp symbol.
11025 (Fset_fontset_font): If TARGET is `latin', use FONT_SPEC for ASCII.
11026
110272008-02-01 Kenichi Handa <handa@m17n.org>
11028
11029 * font.c (font_unparse_fcname): Pay attention to the case that
11030 some of font property is a null string.
11031
110322008-02-01 Kenichi Handa <handa@m17n.org>
11033
11034 * term.c: Include "composite.h".
11035 (encode_terminal_code): Output all components of composition.
11036 Check the size of encode_terminal_src.
11037 (produce_glyphs): For composition, call produce_composite_glyph.
11038 (append_composite_glyph, produce_composite_glyph): New functions.
11039
11040 * xdisp.c (x_produce_glyphs): In handling composition, if a font
11041 is not found, get font_info from the current ascii face.
11042
110432008-02-01 Kenichi Handa <handa@m17n.org>
11044
11045 * fileio.c (Finsert_file_contents): On replacing, temporarily bind
11046 buffer-file-name to Qnil before calling insert_from_buffer.
11047
11048 * font.c (font_unparse_fcname): Pay attention to the case that
11049 foundry is a null string.
11050
110512008-02-01 Kenichi Handa <handa@m17n.org>
11052
11053 * ftfont.c (ftfont_list): Allow registry "unicode-sip".
11054
11055 * font.c (Qunicode_sip): New variable.
11056 (syms_of_font): Declare it as a Lisp symbol.
11057
11058 * font.h (Qunicode_sip): Extern it.
11059
110602008-02-01 Kenichi Handa <handa@m17n.org>
11061
11062 * composite.c (get_composition_id): Pay attention to TAB component.
11063
11064 * xterm.c (x_draw_composite_glyph_string_foreground): Don't draw
11065 TAB. Adjust for the change of s->char2b which always points to
11066 the first element of allocated memory.
11067
11068 * xftfont.c (xftfont_text_extents): Fix calculation of descent value.
11069
11070 * xdisp.c (handle_composition_prop): Set it->c to the first
11071 non-TAB component.
11072 (fill_composite_glyph_string): Change argument.
11073 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the above change.
11074 (x_produce_glyphs): Fix handling of left/right padding.
11075
110762008-02-01 Kenichi Handa <handa@m17n.org>
11077
11078 * coding.c (detect_coding_system): Fix for handling off
11079 inhibit_iso_escape_detection. Fix for the case that no coding
11080 system is defined for a specific coding category.
11081
110822008-02-01 Kenichi Handa <handa@m17n.org>
11083
11084 * font.c (font_matching_entity): Delete unused local var.
11085
11086 * xftfont.c (xftfont_open): Call XftDefaultSubstitute before
11087 opening a font.
11088
11089 * fileio.c (Finsert_file_contents): On recovering a file, assume
11090 Unix-like eol.
11091 (choose_write_coding_system): On auto-saving a file, force
11092 Unix-like eol.
11093
11094 * coding.c (setup_coding_system): Fix setting of
11095 coding->common_flags based on eol_type.
11096 (coding_inherit_eol_type): If PARENT is not nil, be sure to
11097 inherit from it.
11098
110992008-02-01 Kenichi Handa <handa@m17n.org>
11100
11101 * alloc.c (NSTATICS): Increas to 0x600.
11102
111032008-02-01 Kenichi Handa <handa@m17n.org>
11104
11105 * ftfont.c (ftfont_driver): Set ftfont_driver.match to ftfont_match.
11106 (ftfont_list): Don't check :name property.
11107 (ftfont_match): New function.
11108 (ftfont_pattern_entity): If the pattern doesn't contain
11109 FC_SPACING, don't assume FC_MONO.
11110
11111 * font.h (struct font_driver): New member `match'.
11112 (font_update_drivers): Adjust prototype.
11113
11114 * font.c (font_parse_fcname, font_parse_name): Don't change :name
11115 property of FONT.
11116 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE, check_gstring): Define
11117 them unconditionally.
11118 (font_matching_entity): New function.
11119 (font_open_by_name): Try font_matching_entity if exact match is
11120 not found.
11121 (font_update_drivers): Delete the arg FONT. Return a list of
11122 actually used backends. Don't free faces, font caches here.
11123 Don't store data in frame parameters. Don't call x_set_font.
11124 (Ffont_spec): Store :name property as is.
11125 (Ffont_get): Check HAVE_LIBOTF before calling font_otf_capability.
11126 (Ffont_otf_gsub): Call font->driver->otf_gsub instead of font_otf_gsub.
11127 (Ffont_otf_gpos): Call font->driver->otf_gpos instead of font_otf_gpos.
11128 (Ffont_otf_alternates): Check if the driver has otf_gsub function.
11129 Call font->driver->otf_gsub instead of font_otf_gsub.
11130
11131 * frame.c (x_set_font_backend): Do more works that were done in
11132 font_update_drivers before.
11133
11134 * xfont.c (xfont_match): New function.
11135 (xfont_driver): Set xfont_driver.match to xfont_match.
11136 (xfont_draw): Set font in GC if necessary.
11137
11138 * ftxfont.c (ftxfont_match): New function.
11139 (syms_of_ftxfont): Set ftxfont_driver.match to ftxfont_match.
11140
11141 * xftfont.c (xftfont_match): New function.
11142 (syms_of_xftfont): Set xftfont_driver.match to xftfont_match.
11143
111442008-02-01 Kenichi Handa <handa@m17n.org>
11145
11146 * font.h (struct font): New member scalable.
11147 (struct font_driver): New arg ALTERANTE_SUBST to otf_gsub.
11148 (font_otf_gsub): Adjust prototype.
11149
11150 * font.c (font_otf_capability): Fix handling of the default langsys.
11151 (parse_gsub_gpos_spec): Change type to void. New arg nbytes.
11152 Check the contents of SPEC.
11153 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE): New macros.
11154 (check_gstring): New function.
11155 (REPLACEMENT_CHARACTER): New macro.
11156 (font_otf_gsub): New arg alternate_subst. Be sure to set all
11157 glyph codes of GSTRING.
11158 (font_otf_gpos): Be sure to set all glyph codes of GSTRING.
11159 (font_prepare_composition): Set cmp->glyph_len.
11160 (font_open_entity): Set font->scalable.
11161 (Ffont_get): Handle :otf property.
11162 (Ffont_otf_gsub, Ffont_otf_gpos, Ffont_otf_alternates): New
11163 functions.
11164 (Fquery_font): Use font->font.full_name.
11165 (syms_of_font): Defsubr Sfont_otf_gsub, Sfont_otf_gpos, and
11166 Sfont_otf_alternates.
11167
11168 * ftfont.c (ftfont_open): Set font->font.full_name and
11169 font->font.name properly. Fix calculation of font->font.height
11170 and font->min_width.
11171
11172 * ftxfont.c (ftxfont_create_gcs): New function.
11173 (ftxfont_draw_bitmap): Fix arg to ftfont_driver.get_bitmap.
11174 (ftxfont_draw_backgrond): Fix filling region.
11175 (ftxfont_default_fid): New function.
11176 (ftxfont_open): Set xfont->fid to the return value of
11177 ftxfont_default_fid.
11178 (ftxfont_prepare_face): Use ftxfont_create_gcs to create GCs.
11179 (ftxfont_done_face): Free only GCs that are created by
11180 ftxfont_create_gcs.
11181 (ftxfont_draw): If face->gc != s->gc, create proper GCs.
11182
11183 * xterm.c (x_set_glyph_string_clipping_exactly) [USE_FONT_BACKEND]:
11184 Clip to src->width, etc (not src->clip_XXX).
11185
11186 * xfns.c (x_create_tip_frame) [USE_FONT_BACKEND]: Handle
11187 FontBackend frame parameter.
11188
111892008-02-01 Kenichi Handa <handa@m17n.org>
11190
11191 * font.h (struct font_driver_list): New member `on'.
11192 (Fclear_font_cache): EXFUN it.
11193 (font_update_drivers): Extern it.
11194
11195 * font.c (font_unparse_fcname): Fix typo (swidth->width).
11196 (font_list_entities): Check driver_list->on.
11197 (register_font_driver): Initalize `on' member to 0.
11198 (font_update_drivers): New function.
11199 (Fclear_font_cache): Check driver_list->on.
11200
11201 * frame.h (Qfont_backend): Extern it.
11202 (x_set_font_backend): Extern it.
11203
11204 * frame.c (Qfont_backend): New variable.
11205 (frame_parms): New element for font-backend.
11206 (x_set_font_backend): New function.
11207
11208 * xfns.c (Fx_create_frame) [USE_FONT_BACKEND]: Handle
11209 FontBackend frame parameter.
11210 (x_frame_parm_handlers) [USE_FONT_BACKEND]: New element
11211 x_set_font_backend.
11212
11213 * xfont.c (xfont_list): Don't try listing by :name property if the
11214 name is not for XLFD.
11215
112162008-02-01 Kenichi Handa <handa@m17n.org>
11217
11218 * font.h (LGLYPH_FROM, LGLYPH_TO, LGLYPH_SET_FROM)
11219 (LGLYPH_SET_TO): New macros.
11220 (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WADJUST): Check if adjustment
11221 element of G is vector or not.
11222 (font_at): Extern it.
11223
11224 * font.c: Include window.h.
11225 (font_lispy_object): New function.
11226 (font_prepare_composition): Check LGLYPH_FORM (g) to detect the
11227 end of valid glyph.
11228 (font_close_object): Fix getting (struct font *).
11229 (font_at): New function.
11230 (Ffont_get): If FONT is a font-object, get entity from it.
11231 (Ffont_make_gstring): Initialize elements of glyphs with nil.
11232 (Ffont_fill_gstring): Use macro LGSTRING_XXX and LGLYPH_XXX. Fix
11233 range check.
11234 (Ffont_at): New function.
11235 (syms_of_font): Defsubr Sfont_at.
11236
11237 * xdisp.c (it_props): Move the entry for Qauto_composed to just
11238 before the entry for Qcomposition.
11239 (handle_auto_composed_prop): Call auto-composition-function with 4 args.
11240 (handle_composition_prop) [USE_FONT_BACKEND]: Set it->face_id from
11241 the font in gstring.
11242 (fill_composite_glyph_string) [USE_FONT_BACKEND]: Check
11243 LGLYPH_FORM (g) to detect the end of valid glyph.
11244 (x_produce_glyphs) [USE_FONT_BACKEND]: Don't update it->face_id if
11245 we are composing with gstring.
11246
11247 * xterm.c (x_draw_composite_glyph_string_foreground) [USE_FONT_BACKEND]:
11248 Check if adjustment is vector or not.
11249
11250 * Makefile.in (font.o): Make it depends on window.h.
11251
112522008-02-01 Kenichi Handa <handa@m17n.org>
11253
11254 * xterm.c (x_draw_composite_glyph_string_foreground): Check if
11255 adjustment is vector or not.
11256
112572008-02-01 Miles Bader <miles@gnu.org>
11258
11259 * character.h (CHECK_CHARACTER): Redefine in terms of CHECK_TYPE.
11260
112612008-02-01 Kenichi Handa <handa@m17n.org>
11262
11263 * font.h (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WIDTH, LGLYPH_WADJUST)
11264 (LGLYPH_SET_WIDTH): Adjusted for the change of LGLYPH format.
11265 (LGLYPH_ADJUSTMENT, LGLYPH_SET_ADJUSTMENT): New macros.
11266
11267 * font.c (font_merge_old_spec): Treat '*' in foundry as a wild card.
11268 (DEVICE_DELTA): Fix typo.
11269 (font_otf_gpos, font_prepare_compositio): Adjust for the change of
11270 LGLYPH format.
11271
11272 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
11273 the change of LGLYPH format.
11274
112752008-02-01 Kenichi Handa <handa@m17n.org>
11276
11277 * ftfont.c (ftfont_list): Fix typo.
11278 (ftfont_build_basic_charsets): Don't include letters with diacritics.
11279
112802008-02-01 Jan Djärv <jan.h.d@swipnet.se>
11281
11282 * xfaces.c (realize_non_ascii_face): Set face->extra to NULL.
11283
11284 * xftfont.c (xftfont_done_face): Call XftDrawDestroy only if
11285 xftface_info is non-NULL.
11286
112872008-02-01 Jan Djärv <jan.h.d@swipnet.se>
11288
11289 * ftfont.c (ftfont_list): Move misplaced #endif.
11290
112912008-02-01 Kenichi Handa <handa@m17n.org>
11292
11293 * ftfont.c (ftfont_list): Pay attention to the case that
11294 FC_CAPABILITY is not defined.
11295
112962008-02-01 Kenichi Handa <handa@m17n.org>
11297
11298 * xftfont.c (xftfont_open): Set charset related members to -1.
11299
11300 * ftfont.c (ftfont_list): Handle QCotf property. Fix handling of
11301 QCname.
11302 (ftfont_open): Set charset related members to -1.
11303
11304 * fontset.c (Votf_script_alist): New variable.
11305 (syms_of_fontset): Initialize it.
11306 (fontset_font): Delete unused variable.
11307
11308 * fontset.h (Votf_script_alist): Extern it.
11309
11310 * font.c (font_find_for_lface): Optimize code.
11311
11312 * font.h (font_close_object, font_merge_old_spec): Extern them.
11313
113142008-02-01 Kenichi Handa <handa@m17n.org>
11315
11316 * font.c (QCscalable, Qc, Qm, Qp, Qd): New variables.
11317 (syms_of_font): Initialize them.
11318 (font_pixel_size): Allow float value in dpi.
11319 (font_prop_validate_type): Delete.
11320 (font_prop_validate_symbol, font_prop_validate_style): Change argument.
11321 Change caller.
11322 (font_prop_validate_non_neg): Rename from font_prop_validate_size.
11323 (font_prop_validate_extra): Delete.
11324 (font_prop_validate_spacing): New function.
11325 (font_property_table): Add elements for all known properties.
11326 (get_font_prop_index): Rename from check_font_prop_name. New
11327 argument FROM. Change caller.
11328 (font_prop_validate): Validate all known properties.
11329 (font_put_extra): Delete argument force. Change caller.
11330 (font_expand_wildcards): Make it static. Fix the way of shrinking
11331 the possible range.
11332 (font_parse_xlfd): Delete argument merge. Fix handling of RESX,
11333 RESY, SPACING, and AVGWIDTH. Don't validate property values here.
11334 Change caller.
11335 (font_unparse_xlfd): Handle dpi, spacing, and scalable properties.
11336 (font_parse_fcname): Delete argument merge. Fix parsing of point
11337 size. Don't validate properties values here. Change caller.
11338 (font_unparse_fcname): Handle dpi, spacing, and scalable properties.
11339 (font_open_by_name): Delete unused variable.
11340 (Ffont_spec): Likewise. Validate property values.
11341 (Ffont_match_p): New function.
11342
11343 * font.h (QCscalable): Extern it.
11344 (font_parse_xlfd, font_parse_fcname): Adjust prototype.
11345
11346 * ftfont.c (ftfont_list): Handle properties dpi, spacing, and scalable.
11347
11348 * xfont.c (xfont_query_font): Adjust for the change of font_parse_xlfd.
11349 (xfont_list_pattern): New function.
11350 (xfont_list): Use xfont_list_pattern.
11351
113522008-02-01 Kenichi Handa <handa@m17n.org>
11353
11354 * font.h (Flist_fonts): EXFUN it.
11355
113562008-02-01 Jason Rumney <jasonr@gnu.org>
11357
11358 * w32term.c (w32_initialize): Add back smoothing_type and
11359 smoothing_enabled definitions.
11360
113612008-02-01 Kenichi Handa <handa@m17n.org>
11362
11363 * xterm.c (x_draw_glyph_string) [USE_FONT_BACKEND]: Check
11364 s->face->font on determining underline position.
11365
113662008-02-01 Kenichi Handa <handa@m17n.org>
11367
11368 * font.c (font_parse_xlfd): Fix generating of CHARSET_REGISTRY field.
11369 (font_has_char): Accept font-object too.
11370 (font_find_for_lface): Try at first with a size specified in face.
11371
113722008-02-01 Kenichi Handa <handa@m17n.org>
11373
11374 * frame.c (x_set_font) [USE_FONT_BACKEND]: Fix argument to
11375 font_open_by_name.
11376
113772008-02-01 Kenichi Handa <handa@m17n.org>
11378
11379 * font.h (QCspacing, QCdpi): Extern them.
11380 (enum font_spacing): New enum.
11381 (FONT_PIXEL_SIZE_QUANTUM): New macro.
11382
11383 * font.c (POINT_TO_PIXEL): Don't divide POINT by 10.
11384 (QCspacing, QCdpi): New variables.
11385 (syms_of_font): Initialize them.
11386 (font_pixel_size): New function.
11387 (font_put_extra): New function.
11388 (font_parse_xlfd): Fix handling of font size. Add QCdpi property
11389 in FONT_EXTRA.
11390 (font_parse_fcname): Handle enumerated values (e.g. bold).
11391 Fix handling font size. Add QCname property that contains only
11392 unknown properties.
11393 (font_score): Change argument. Change caller. Pay attention to
11394 FONT_PIXEL_SIZE_QUANTUM.
11395 (font_sort_entites, font_list_entities, font_find_for_lface)
11396 (font_open_for_lface, font_open_by_name): Fix handling of font size.
11397 (Ffont_spec): Add QCname property that contains only unknown properties.
11398
11399 * ftfont.c (ftfont_list): Use assq_no_quit, not Fassq. Don't
11400 include weight in listing pattern, instead check weight of each
11401 listed font. Don't include scalable in pattern. Pay attention to
11402 FONT_PIXEL_SIZE_QUANTUM.
11403
114042008-02-01 Kenichi Handa <handa@m17n.org>
11405
11406 * font.c (font_parse_fcname): Fix parsing of point-size.
11407 (font_unparse_fcname): Produce symbolic names for style properties.
11408 (font_list_entities): Handle float size correctly.
11409 (font_open_by_name): Prefer `normal' property values if the name
11410 doesn't specify them.
11411
11412 * fontset.c (Finternal_char_font): Use font_get_name, not
11413 Ffont_xlfd_name.
11414
11415 * ftfont.c (ftfont_pattern_entity): Use the numeric value 100 for
11416 FC_WEIGHT_REGULAR. Exclude FC_SIZE and FC_PIXEL_SIZE from listing
11417 pattern. Don't force scalable.
11418
11419 * xftfont.c (xftfont_open): For generating a name, start from
11420 96-byte buffer.
11421
114222008-02-01 Jan Djärv <jan.h.d@swipnet.se>
11423
11424 * frame.h (x_new_fontset2): Fix prototype.
11425
114262008-02-01 Kenichi Handa <handa@m17n.org>
11427
11428 * font.h (struct font_driver): Delete member parse_name.
11429 (font_match_p, font_get_spec, font_parse_fcname)
11430 (font_unparse_fcname): Extern them.
11431 (font_get_name): Adjust prototype.
11432
11433 * font.c (XLFD_SMALLNUM_MASK): Delete this macro.
11434 (XLFD_LARGENUM_MASK): Delete XLFD_ENCODING_MASK from it.
11435 (font_expand_wildcards): Fix handling ENCODING field. Avoid
11436 unnecessary checks for weight, slant, and swidth.
11437 (font_parse_fcname): New function.
11438 (font_unparse_fcname): New function.
11439 (font_parse_name): New function.
11440 (font_match_p): New function.
11441 (font_get_name): Change return value to Lisp string.
11442 (font_get_spec): New function.
11443 (Qunspecified, Qignore_defface): Don't extern them.
11444 (font_find_for_lface): Assume that LFACE is fully specified.
11445 (font_load_for_face): If lface[LFACE_FONT_INDEX] is an font
11446 object, use it for FACE.
11447 (font_open_by_name): Call Ffont_spec with QCname prop. Don't call
11448 driver->parse_name.
11449 (Ffont_spec): Call font_parse_name, not font_parse_xlfd.
11450
11451 * fontset.h (new_fontset_from_font) [USE_FONT_BACKEND]: Adjust
11452 prototype.
11453
11454 * fontset.c (new_fontset_from_font) [USE_FONT_BACKEND]: Delete
11455 argument F. Don't call Fnew_fontset. Instead, directly call
11456 make_fontset.
11457
11458 * frame.h (x_new_fontset2) [USE_FONT_BACKEND]: Adjust prototype.
11459
11460 * frame.c (x_set_font) [USE_FONT_BACKEND]: Adjust for the change
11461 of x_new_fontset2.
11462
11463 * ftfont.c (Qmonospace, Qsans_serif, Qserif, Qmono, Qsans)
11464 (Qsans__serif): New variables.
11465 (ftfont_generic_family_list): New variable.
11466 (syms_of_ftfont): Initialize the above variables.
11467 (ftfont_pattern_entity): Delete argument NAME.
11468 (ftfont_list_generic_family): New function.
11469 (ftfont_parse_name): Delete this function.
11470 (ftfont_list): Try generic family only when FcFontList found no font.
11471 (ftfont_list_family): Fix args to FcObjectSetBuild.
11472
11473 * xfaces.c (check_lface_attrs) [USE_FONT_BACKEND]: Accept font
11474 object in attrs[LFACE_FONT_INDEX].
11475 (set_lface_from_font_name): Cancel all changes for font-backend.
11476 (set_lface_from_font_and_fontset) [USE_FONT_BACKEND]: New
11477 function.
11478 (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]: Accept a
11479 font object in QCfont attribute.
11480 (set_font_frame_param) [USE_FONT_BACKEND]: Likewise.
11481 (realize_default_face) [USE_FONT_BACKEND]: Call
11482 set_lface_from_font_and_fontset.
11483
11484 * xfns.c (x_default_font_parameter) [USE_FONT_BACKEND]: Try also
11485 "fixed", and signal error here if no suitable font was found.
11486
11487 * xfont.c (xfont_parse_name): Delete this function.
11488
11489 * xftfont.c (xftfont_open): Change coding style of error
11490 handling. Generate fontconfig's fontname pattern.
11491
11492 * xterm.h (struct x_output) [USE_FONT_BACKEND]: New member fontp.
11493 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro.
11494
11495 * xterm.c (x_new_fontset2) [USE_FONT_BACKEND]: Change arguments.
11496 Both args FONTSET and FONT_OBJECT must be existing ones.
11497
114982008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11499
11500 * macterm.c (mac_set_unicode_keystroke_event): Don't use MAKE_CHAR.
11501
115022008-02-01 Kenichi Handa <handa@m17n.org>
11503
11504 * xfont.c (xfont_open, xfont_encode_char): Fix typo.
11505
11506 * font.h (struct font): Fix typo.
11507
11508 * font.c (enum xlfd_field_index): Rename XLFD_XXX_SIZE_INDEX to
11509 XLFD_XXX_INDEX.
11510 (enum xlfd_field_mask): New enum.
11511 (intern_font_field): Changed argument. Change caller. If digits
11512 are followed by non-digits, return a symbol.
11513 (font_expand_wildcards): New function.
11514 (font_parse_xlfd): Fix wildcard handling.
11515 (Ffont_spec): If :name is specified, reflect the info in the other
11516 properties.
11517
11518 * ftfont.c (ftfont_pattern_entity): Fix typo.
11519 (ftfont_list): Enforce FC_LANG in PATTERN to cancel the effect of
11520 locale.
11521
115222008-02-01 Kenichi Handa <handa@m17n.org>
11523
11524 * font.h (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Extern them.
11525
11526 * font.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move from ftfont.c.
11527 (font_unparse_xlfd): Fix argument type declaration. Append "*" if
11528 registry doesn't specify encoding part.
11529 (font_find_for_lface): Pay attention to LFACE_FONT_INDEX.
11530 (font_open_by_name): At first try parsing the name.
11531 (syms_of_font): Declare Qiso8859_1, Qiso10646_1, and Qunicode_bmp
11532 as Lisp symbols.
11533
11534 * fontset.c (reorder_font_vector): Pay attention to the case that
11535 the 3rd element of font_def is nil.
11536 (fontset_font): For the default fontset, append one more fontset
11537 elements for a script-based font specification. Don't add script
11538 attribute on finding a font.
11539 (new_fontset_from_font): Unconditionally set FONTSET_ASCII to the
11540 font name.
11541 (fontset_ascii_font): If a font can't be opened, return nil.
11542
11543 * ftfont.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move to font.c.
11544 (ftfont_pattern_entity): New function.
11545 (ftfont_get_cache): Assume that freetype_font_cache is already
11546 initialized.
11547 (ftfont_list): Handle the case that a file is specified in font
11548 name. Use ftfont_pattern_entity to generate entities.
11549 (ftfont_has_char): Check if the pattern contains FC_CHARSET.
11550 (syms_of_ftfont): Initialize freetype_font_cache.
11551
11552 * xftfont.c (xftfont_open): Make the font name fontconfig's
11553 style. Add BLOCK_INPUT and UNBLOCK_INPUT.
11554 (xftfont_close): Free font->font.name if not NULL.
11555
11556 * xfont.c (xfont_list): If script is specified for a font, return
11557 null_vector.
11558 (xfont_list_family): Declare argument type.
11559
11560 * xfaces.c (set_lface_from_font_name): If a font doesn't have a
11561 name, set LFACE_FONT (lface) to nil.
11562
11563 * xterm.c (x_new_fontset2): If an ASCII font couldn't be loaded,
11564 return Qnil.
11565
115662008-02-01 Kenichi Handa <handa@m17n.org>
11567
11568 * emacs.c (main): Check -enable-font-backend arg after the check of -nl.
11569 (standard_args): Add "-enable-font-backend".
11570
115712008-02-01 Kenichi Handa <handa@m17n.org>
11572
11573 * xftfont.c (xftfont_default_fid): Set fid_known to 1.
11574 (struct xftdraw_list, xftdraw_list): Delete them.
11575 (register_xftdraw, check_xftdraw): Delete them.
11576 (xftfont_prepare_face): Don't call register_xftdraw.
11577 (xftfont_done_face): Don't call check_xftdraw.
11578 (xftfont_draw): Get background color only when with_background is
11579 nonzero.
11580
11581 * xfont.c (xfont_encode_char): Fix calculation of char2b.
11582
115832008-02-01 Kenichi Handa <handa@m17n.org>
11584
11585 These changes are for the new font handling codes.
11586
11587 * Makefile.in (ALL_CFLAGS): Add @FREETYPE_CFLAGS@,
11588 @FONTCONFIG_CFLAGS@, and @LIBOTF_CFLAGS@.
11589 (LIB_X11_LIB): If HAVE_XFT is defined, set to @XFT_LIBS@.
11590 (FONTSRC, FONTOBJ): New variables.
11591 (obj): Add $(FONTOBJ).
11592 (SOME_MACHINE_OBJECTS): Lib_X11_Lib.
11593 (LIBES): Add @FREETYPE_LIBS@, @FONTCONFIG_LIBS@, and
11594 @LIBOTF_LIBS@.
11595 (font.o, ftfont.o, xfont.o, xftfont.o, ftxfont.o): New targets.
11596 (fontset.o, xdisp.o, xfaces.o, xfns.o, xterm.o): Depend on $(FONTSRC).
11597
11598 * font.h, font.c, xfont.c, ftfont.c, xftfont.c, ftxfont.c: New files.
11599
11600 * character.h (Vscript_representative_chars): Extern it.
11601
11602 * character.c (Vscript_representative_chars): New variable.
11603 (syms_of_character): Declare it as a Lisp variable.
11604
11605 * composite.c (get_composition_id) [USE_FONT_BACKEND]: If
11606 enable_font_backend is nonzero, accept the composition method
11607 COMPOSITION_WITH_GLYPH_STRING.
11608
11609 * composite.h (enum composition_method) [USE_FONT_BACKEND]: New
11610 enumeration COMPOSITION_WITH_GLYPH_STRING.
11611
11612 * dispextern.h (struct glyph_string) [USE_FONT_BACKEND]: New
11613 members clip_x, clip_y, clip_width, and clip_height.
11614 (struct face) [USE_FONT_BACKEND]: New members font_info and extra.
11615
11616 * emacs.c (main) [USE_FONT_BACKEND]: Handle arg
11617 --enable-font-backend. Call syms_of_font.
11618
11619 * fns.c (assoc_no_quit): New function.
11620
11621 * fontset.h (FONT_INFO_FROM_FACE): New macro.
11622 (face_for_font, new_fontset_from_font)
11623 (fontset_ascii_font) [USE_FONT_BACKEND]: Extern them.
11624
11625 * fontset.c [USE_FONT_BACKEND]: Include "font.h".
11626 (fontset_font, fontset_ascii, face_for_char)
11627 (make_fontset_for_ascii_face, Ffont_info)
11628 (Finternal_char_font) [USE_FONT_BACKEND]: If enable_font_backend
11629 is nonzero, use font-backend mechanism.
11630 (find_font_encoding): Make it non-static.
11631 (new_fontset_from_font, fontset_ascii_font) [USE_FONT_BACKEND]:
11632 New functions.
11633
11634 * frame.h (struct frame): New members resx and resy.
11635 (struct frame) [USE_FONT_BACKEND]: New member font_driver_list.
11636 (x_new_fontset2) [USE_FONT_BACKEND]: Extern it.
11637
11638 * frame.c [USE_FONT_BACKEND]: Include "font.h".
11639 (make_frame, x_set_font) [USE_FONT_BACKEND]: Use font-backend mechanism.
11640
11641 * lisp.h (assoc_no_quit): Extern it.
11642
11643 * xdisp.c: If USE_FONT_BACKEND is defined, include "font.h".
11644 Through out the file, use FONT_INFO_FROM_FACE instead of
11645 FONT_INFO_FROM_ID, use get_per_char_metric instead of
11646 rif->per_char_metric.
11647 (handle_composition_prop) [USE_FONT_BACKEND]: If the composition
11648 method is COMPOSITION_WITH_GLYPH_STRING, just set it->c to ' '.
11649 (get_glyph_face_and_encoding, fill_composite_glyph_string)
11650 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
11651 (x_produce_glyphs) [USE_FONT_BACKEND]: If enable_font_backend is
11652 nonzero, use font-backend mechanism.
11653 (get_per_char_metric): New function.
11654
11655 * xfaces.c [USE_FONT_BACKEND]: Include "font.h".
11656 (set_lface_from_font_name)
11657 (set_font_frame_param, free_realized_face)
11658 (prepare_face_for_display, clear_face_gcs)
11659 (Finternal_set_font_selection_order, realize_x_face)
11660 [USE_FONT_BACKEND]: If enable_font_backend is nonzero, use
11661 font-backend mechanism.
11662 (clear_face_cache) [USE_FONT_BACKEND]: Don't call clear_font_table.
11663 (load_face_font) [USE_FONT_BACKEND]: Abort.
11664 (face_symbolic_value, face_symbolic_weight, face_symbolic_slant)
11665 (face_symbolic_swidth, face_for_font) [USE_FONT_BACKEND]: New functions.
11666
11667 * xfns.c [USE_FONT_BACKEND]: Include "font.h".
11668 (x_default_font_parameter) [USE_FONT_BACKEND]: New function.
11669 (Fx_create_frame) [USE_FONT_BACKEND]: If enable_font_backend is
11670 nonzero, register all available font drivers. Call
11671 x_default_font_parameter for deciding a font.
11672 (x_create_tip_frame) [USE_FONT_BACKEND]: Likewise.
11673
11674 * xterm.c [USE_FONT_BACKEND]: Include "font.h".
11675 (x_set_mouse_face_gc, x_set_glyph_string_clipping)
11676 (x_set_glyph_string_clipping_exactly)
11677 (x_compute_glyph_string_overhangs)
11678 (x_draw_glyph_string_foreground)
11679 (x_draw_composite_glyph_string_foreground, x_draw_glyph_string)
11680 (x_free_frame_resources) [USE_FONT_BACKEND]: If
11681 enable_font_backend is nonzero, use font-backend mechanism.
11682 (x_new_fontset2) [USE_FONT_BACKEND]: New function.
11683
116842008-02-01 Kenichi Handa <handa@m17n.org>
11685
11686 * coding.c (coding_inherit_eol_type): If PARENT is nil, inherit from
11687 system_eol_type.
11688 (syms_of_coding): Initialize system_eol_type.
11689
11690 * process.c (Fset_process_coding_system): Inherit system's eol
11691 format if necessary.
11692
116932008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11694
11695 * macgui.h (USE_ATSUI): Don't enable on emacs-unicode-2 branch.
11696
116972008-02-01 Kenichi Handa <handa@m17n.org>
11698
11699 * coding.c (decode_eol): Pay attention to buffer relocation in
11700 del_range_2.
11701 (decode_coding): Call decode_eol before restoring undo_list.
11702
117032008-02-01 Kenichi Handa <handa@m17n.org>
11704
11705 * charset.c (Fdefine_charset_internal): Fix setting of
11706 emacs_mule_bytes.
11707
117082008-02-01 Kenichi Handa <handa@m17n.org>
11709
11710 * keyboard.c (read_char): Check if C is a character or not before
11711 looking up Vkeyboard_translate_table.
11712
117132008-02-01 Kenichi Handa <handa@m17n.org>
11714
11715 * coding.c (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Fix
11716 condition to terminate the loop.
11717
117182008-02-01 Kenichi Handa <handa@m17n.org>
11719
11720 * coding.c (produce_composition): Compare charbuf[i] instead of
11721 args[i] against 0.
11722 (Fterminal_coding_system): Use EQ to compare Lisp objects.
11723
117242008-02-01 Kenichi Handa <handa@m17n.org>
11725
11726 * coding.c (DECODE_COMPOSITION_START): If the source is short, set
11727 coding->result to CODING_RESULT_INSUFFICIENT_SRC.
11728 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK after the call of
11729 detect_coding.
11730 (emacs_mule_char): Handle old style (Emacs 20) component character
11731 of a composition.
11732 (DECODE_EMACS_MULE_COMPOSITION_RULE_20)
11733 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Fix parsing a
11734 composition rule.
11735 (decode_coding_emacs_mule): Handle invalid bytes correctly.
11736
117372008-02-01 Kenichi Handa <handa@m17n.org>
11738
11739 * coding.c (encode_coding_ccl): Allocate destination dynamically
11740 when necessary.
11741
117422008-02-01 Kenichi Handa <handa@m17n.org>
11743
11744 * ccl.c (Fccl_execute_on_string): Fix the condition of terminating
11745 the loop. When quitted, show a proper error message.
11746
117472008-02-01 Kenichi Handa <handa@m17n.org>
11748
11749 * xterm.c (x_set_glyph_string_clipping_exactly): Set
11750 src->clip_head and src->clip_tail temporarily instead of src->hl.
11751
11752 * ccl.c (CCL_WRITE_STRING): Handle a flag bit for multibyte
11753 character sequence.
11754 (Fccl_execute_on_string): Use ASET, not XSET.
11755
117562008-02-01 Kenichi Handa <handa@m17n.org>
11757
11758 * search.c (search_buffer): Fix handling of "\\" in a trivial regexp.
11759
117602008-02-01 Kenichi Handa <handa@m17n.org>
11761
11762 * coding.c (decode_coding): Fix the condition of terminating the
11763 decoding loop.
11764
117652008-02-01 Kenichi Handa <handa@m17n.org>
11766
11767 * data.c (Faset): On setting a character bigger than 255 in a
11768 unibyte string, signal an error instead of make the string multibyte.
11769
117702008-02-01 Kenichi Handa <handa@m17n.org>
11771
11772 * charset.c (map_charset_chars): Fix for ascii-compatible charset
11773 made by a mapping table.
11774
117752008-02-01 Kenichi Handa <handa@m17n.org>
11776
11777 * xdisp.c (fill_composite_glyph_string): Check s->face is NULL or
11778 not.
11779 (BUILD_COMPOSITE_GLYPH_STRING): If C is TAB, set s->face to NULL.
11780 (x_produce_glyphs): If CH is TAB, set cmp->offsets properly.
11781
11782 * xterm.c (x_draw_composite_glyph_string_foreground): Check
11783 s->face is NULL or not.
11784
117852008-02-01 Kenichi Handa <handa@m17n.org>
11786
11787 * xterm.c (x_set_glyph_string_clipping_exactly): New function.
11788 (x_draw_glyph_string): Fix drawing of right_overhang and
11789 left_overhang around/on cursor.
11790
11791 * xdisp.c (draw_glyphs): Fix inclusion of right_overwriting glyphs.
11792
117932008-02-01 Kenichi Handa <handa@m17n.org>
11794
11795 * xdisp.c (x_produce_glyphs): Handle composition with TAB.
11796
117972008-02-01 Kenichi Handa <handa@m17n.org>
11798
11799 * coding.c (Fdefine_coding_system_internal)
11800 (Fdefine_coding_system_alias): Avoid a duplicated element in
11801 Vcoding_system_alist.
11802
118032008-02-01 Kenichi Handa <handa@m17n.org>
11804
11805 * xterm.c (handle_one_xevent): Handle keysyms 0x1000000..0x10000FF.
11806
11807 * coding.c (Qcoding_system_define_form): New variable.
11808 (syms_of_coding): Intern and staticpro it.
11809 (Fcoding_system_p): Check Qcoding_system_define_form.
11810 (Fcheck_coding_system): Try to autoload the definition of CODING-SYSTEM.
11811
11812 * coding.h (CODING_SYSTEM_P): If ID is not available, call
11813 Fcoding_system_p.
11814 (CHECK_CODING_SYSTEM): If ID is not available, call
11815 Fcheck_coding_system.
11816 (CHECK_CODING_SYSTEM_GET_SPEC, CHECK_CODING_SYSTEM_GET_ID):
11817 Try also Fcheck_coding_system.
11818
118192008-02-01 Kenichi Handa <handa@m17n.org>
11820
11821 * coding.c (code_conversion_restore): GCPRO arg.
11822
118232008-02-01 Kenichi Handa <handa@m17n.org>
11824
11825 * character.c (lisp_string_width): Check multibyteness of STRING.
11826
118272008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11828
11829 * macterm.c (mac_encode_char): Call ccl_driver with the last arg
11830 Qnil. Use JIS_TO_SJIS instead of ENCODE_SJIS.
11831 (decode_mac_font_name): Use decode_coding_c_string instead of
11832 decode_coding.
11833 (x_load_font): Initialize fontp->fontset to -1. Set
11834 fontp->encoding_type.
11835
118362008-02-01 Kenichi Handa <handa@m17n.org>
11837
11838 * search.c (search_buffer): Give up BM search on case-fold-search
11839 if one of a target character has a case-equivalence of different
11840 byte length even if that target charcter is an ASCII.
11841 (simple_search): Fix calculation of byte length of matched text.
11842 (boyer_moore): Fix handling of case-equivalent multibyte characters.
11843
118442008-02-01 Kenichi Handa <handa@m17n.org>
11845
11846 * coding.c (decode_coding): Fix handling of invalid bytes.
11847
118482008-02-01 Kenichi Handa <handa@m17n.org>
11849
11850 * xterm.c (handle_one_xevent): Handle keysyms directly mapped to
11851 Unicode characters.
11852
118532008-02-01 Kenichi Handa <handa@m17n.org>
11854
11855 * coding.c (encode_coding_object): If a pre-write-conversion
11856 function makes a new buffer, kill it.
11857
118582008-02-01 Kenichi Handa <handa@m17n.org>
11859
11860 * coding.c (QCascii_compatible_p): New variable.
11861 (syms_of_coding): Initialize it.
11862 (ONE_MORE_BYTE, ONE_MORE_BYTE_NO_CHECK): Decrement `src' before
11863 calling string_char.
11864 (record_conversion_result): Add `default:' case.
11865 (coding_charset_list): Delete unused variable `coding_type'.
11866 (Fdefine_coding_system_internal): Add `ascii-compatible-p'
11867 property in the plist of the coding system.
11868 (Fcoding_system_put): Check QCascii_compatible_p.
11869
118702008-02-01 Miles Bader <miles@gnu.org>
11871
11872 * xfaces.c (Finternal_lisp_face_equal_p): Restore previously
11873 removed calculation of frame `f', as it's now used.
11874
118752008-02-01 Kenichi Handa <handa@m17n.org>
11876
11877 * Makefile.in (RUN_TEMACS): Include "-nl" if HAVE_SHM is defined.
11878 (emacs${EXEEXT}): Run $(RUN_TEMACS) unconditionally.
11879 (UNIDATA): New variable.
11880 (${lispsource}international/charprop.el): Depends on ${UNIDATA}.
11881 (bootstrap-emacs${EXEEXT}): Depends on charprop.el. Run
11882 $(RUN_TEMACS) unconditionally.
11883
118842008-02-01 Kenichi Handa <handa@m17n.org>
11885
11886 * Makefile.in (temacs${EXEEXT}): Build charprop.el if necessary.
11887 (admindir): New variable.
11888 ($(lispsource)international/charprop.el): New target.
11889
118902008-02-01 Miles Bader <miles@gnu.org>
11891
11892 * character.c (chars-in-region): Remove obsolete function.
11893 (syms_of_character): Remove its initialization.
11894
118952008-02-01 Benjamin Riefenstahl <b.riefenstahl@turtle-trading.net>
11896
11897 * w32select.c (validate_coding_system)
11898 (setup_windows_coding_system): New functions.
11899 (convert_to_handle_as_coded, Fw32_get_clipboard_data): Use
11900 setup_windows_coding_system.
11901 (setup_config, Fw32_get_clipboard_data): Use
11902 validate_coding_system.
11903 (Fx_selection_exists): Move call to setup_config to a place
11904 where signals are allowed.
11905
11906 * lisp.h (Fcoding_system_base, Fcoding_system_eol_type)
11907 (Fcheck_coding_system): Add declarations.
11908
119092008-02-01 Kenichi Handa <handa@m17n.org>
11910
11911 * charset.c (load_charset_map_from_vector): Fix for the first iteration.
11912
119132008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11914
11915 * macfns.c (Fx_create_frame, x_create_tip_frame): Pass Lisp
11916 string as the second argument for x_new_fontset.
11917
119182008-02-01 Kenichi Handa <handa@m17n.org>
11919
11920 * coding.c (decode_coding_object): Use safe_call1 instead of call1.
11921 (encode_coding_object): Use safe_call instead of call2.
11922
119232008-02-01 Kenichi Handa <handa@m17n.org>
11924
11925 * fontset.c (Fset_fontset_font): Check family element of a given vector.
11926
11927 * Makefile.in (lisp): Include charprop.el.
11928
119292008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11930
11931 * macfns.c (Fx_create_frame, x_create_tip_frame): Fix crash.
11932 Not sure if it's unnecessary.
11933
119342008-02-01 Steven Tamm <steventamm@mac.com>
11935
11936 * macfns.c (Fx_create_frame, x_create_tip_frame): ifdef'd out
11937 some possibly unnecessary fontset checking code that crashed
11938 when creating a new frame.
11939
119402008-02-01 Kenichi Handa <handa@m17n.org>
11941
11942 * xfaces.c (merge_faces): Fix argument to lookup_derived_face and
11943 lookup_face.
11944
11945 * xdisp.c (Fformat_mode_line): Fix argument to lookup_named_face.
11946
11947 * fringe.c (draw_fringe_bitmap_1): Fix argument to lookup_named_face.
11948
119492008-02-01 Kenichi Handa <handa@m17n.org>
11950
11951 * coding.c: Cancel the change done in HEAD on 2008-02-01.
11952 (coding_charset_list): New function.
11953
11954 * coding.h (coding_charset_list): Extern it.
11955
119562008-02-01 Kenichi Handa <handa@m17n.org>
11957
11958 * fontset.c (Fset_fontset_font): Call find_font_encoding with
11959 concatenation of family and registry.
11960
119612008-02-01 Kenichi Handa <handa@m17n.org>
11962
11963 * character.h (BYTE8_STRING): Fix typo.
11964
11965 * editfns.c (Ftranslate_region_internal): Don't convert unibyte
11966 string to multibyte (sync to HEAD).
11967
11968 * casefiddle.c (casify_region): Handle changes in byte-length
11969 using replace_range_2 (sync to HEAD).
11970
119712008-02-01 Andreas Schwab <schwab@suse.de>
11972
11973 * chartab.c (map_char_table): GCPRO table and arg.
11974
119752008-02-01 Kenichi Handa <handa@m17n.org>
11976
11977 * syntax.c (skip_syntaxes): Return lispy 0 (not nil) if point is
11978 already at limit.
11979
119802008-02-01 Kenichi Handa <handa@m17n.org>
11981
11982 * fontset.c (fs_load_font): Use fast_string_match_ignore_case
11983 instead of fast_c_string_match_ignore_case.
11984 (find_font_encoding): Change argument to Lisp_Object. Use
11985 fast_string_match_ignore_case instead of
11986 fast_c_string_match_ignore_case. Change caller.
11987
119882008-02-01 Kenichi Handa <handa@m17n.org>
11989
11990 * xdisp.c (get_next_display_element): In unibyte case, decide to
11991 display in octal form by checking a character by
11992 UNIBYTE_CHAR_HAS_MULTIBYTE_P.
11993
11994 * charset.c (Fset_unibyte_charset): Setup unibyte_has_multibyte_table.
11995
11996 * character.c (unibyte_has_multibyte_table): New variable.
11997
11998 * character.h (unibyte_has_multibyte_table): Extern it.
11999 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): New macro.
12000
120012008-02-01 Kenichi Handa <handa@m17n.org>
12002
12003 * coding.c (encode_coding_iso_2022): Fix handling of charset
12004 annotation.
12005
120062008-02-01 Kenichi Handa <handa@m17n.org>
12007
12008 * coding.c (setup_coding_system): If coding_system is nil, use
12009 Qundecided.
12010 (Fterminal_coding_system): Return nil if terminal coding system is
12011 `undecided'.
12012 (syms_of_coding): Define coding-system `undecided' here. Setup
12013 terminal_coding as `undecided'.
12014
120152008-02-01 Kenichi Handa <handa@m17n.org>
12016
12017 * xdisp.c (message_dolog, set_message_1): Call
12018 unibyte_char_to_multibyte with arg type int.
12019
12020 * lread.c (read1): Fix reading of a char-table.
12021
12022 * print.c (print_object): Include sub char-table in circularities
12023 detection.
12024
120252008-02-01 Kenichi Handa <handa@m17n.org>
12026
12027 * keymap.c (where_is_internal_2): Fix for the case that KEY is a cons.
12028 Append the found sequences in car of ARGS instead of prepending.
12029
120302008-02-01 Kenichi Handa <handa@m17n.org>
12031
12032 * fileio.c (report_file_error): Make a unibyte string from
12033 strerror (errorno).
12034 (Fsubstitute_in_file_name): Fix the arg to
12035 unibyte_char_to_multibyte. It is evaluated twice.
12036
120372008-02-01 Kenichi Handa <handa@m17n.org>
12038
12039 * charset.h (CHAR_CHARSET): Shortcut for ASCII case.
12040
120412008-02-01 Kenichi Handa <handa@m17n.org>
12042
12043 * coding.c (detect_coding_utf_16): Don't set detect_info->found if
12044 BOM is not found.
12045 (detect_coding, detect_coding_system): Optimization for ISO-2022
12046 when no 8-bit data is found.
12047
120482008-02-01 Jason Rumney <jasonr@gnu.org>
12049
12050 * w32fns.c (x_to_w32_font): Update to use new coding struct.
12051
120522008-02-01 Kenichi Handa <handa@m17n.org>
12053
12054 * charset.c (Fdeclare_equiv_charset, Fiso_charset): Fix handing of
12055 CHARS.
12056
120572008-02-01 Steven Tamm <steventamm@mac.com>
12058
12059 * macterm.c (mac_encode_char): Add charset argument and update
12060 to use encoding_type.
12061 (x_new_font, x_new_fontset): Merge in changes from xterm.c;
12062 switch to pure fontset.
12063 (decode_mac_font_name): Temporarily remove decoding.
12064 (x_font_name_to_mac_font_name): Temporarily remove encoding.
12065 (x_load_font): Temporarily remove encoding.
12066
120672008-02-01 Kenichi Handa <handa@m17n.org>
12068
12069 * xfaces.c (Fface_font): If frame is not on a window system,
12070 ignore CHARACTER arg. If HAVE_WINDOW_SYSTEM is not defined, don't
12071 refer to face->font.
12072 (split_font_name_into_vector, build_font_name_from_vector)
12073 (lookup_non_ascii_face, realize_non_ascii_face): Define them only
12074 when HAVE_WINDOW_SYSTEM is defined.
12075
120762008-02-01 Kenichi Handa <handa@m17n.org>
12077
12078 * xdisp.c (BUILD_GLYPH_STRINGS): Check if s is NULL.
12079 (x_produce_glyphs): Fix setting of members of cmp in case
12080 cmp->glyph_len is zero.
12081
12082 * fontset.c (Fset_fontset_font): Fix docstring.
12083 (Ffontset_info): Make it backward compatible. New arg ALL.
12084
120852008-02-01 Kim F. Storm <storm@cua.dk>
12086
12087 * process.c (read_process_output): Grow decoding_buf when needed;
12088 this could cause a crash in allocate_string and compact_small_strings.
12089
120902008-02-01 Kenichi Handa <handa@m17n.org>
12091
12092 * fileio.c (WRITE_BUF_SIZE): Delete this macro.
12093
120942008-02-01 Kenichi Handa <handa@m17n.org>
12095
12096 * coding.c (setup_coding_system): Set coding->common_flags
12097 correctly for raw-text.
12098 (consume_chars): On encoding unibyte text by raw-text, don't check
12099 multibyte form.
12100 (encode_coding): On encoding by raw-text, never use translation tables.
12101
12102 * fileio.c (e_write): Short cut for the case of no encoding.
12103
121042008-02-01 Kenichi Handa <handa@m17n.org>
12105
12106 * coding.c (detect_coding, detect_coding_system): Delete unused
12107 variables.
12108
121092008-02-01 Kenichi Handa <handa@m17n.org>
12110
12111 * coding.c (encode_coding_utf_8): Fix handling of raw-byte char.
12112 (consume_chars): Fix handling of 8-bit bytes in unibyte source.
12113
121142008-02-01 Kenichi Handa <handa@m17n.org>
12115
12116 * coding.c (Ffind_coding_systems_region_internal): Include
12117 raw-text and no-conversion in the result.
12118
121192008-02-01 Kenichi Handa <handa@m17n.org>
12120
12121 * fontset.c (find_font_encoding): Return `ascii' for unknown encoding.
12122 (load_font_get_repertory): Delete unnecessary check of ENCODING of
12123 FONT_DEF.
12124 (font_def_arg, add_arg, from_arg, to_arg): New args.
12125 (set_fontset_font): Change argument.
12126 (Fset_fontset_font): Fix for the case that TARGET is a script
12127 name and charset name.
12128 (new_fontset_from_font_name): Fix argument to Fnew_fontset.
12129
121302008-02-01 Kenichi Handa <handa@m17n.org>
12131
12132 * fontset.c (fontset_font): Rename from fontset_face. Change return
12133 value.
12134 (face_suitable_for_char_p, face_for_char): Adjust for the change
12135 of fontset_font.
12136 (make_fontset_for_ascii_face): Fix setting of the fontset element
12137 for ASCII.
12138 (Finternal_char_font): Use fontset_font instead of FACE_FOR_CHAR
12139 to get a font name.
12140 (Ffontset_info): Adjust for the change of fontset_font.
12141
12142 * coding.c (emacs_mule_char): Check invalid code more rigidly.
12143
12144 * character.h (LEADING_CODE_LATIN_1_MIN)
12145 (LEADING_CODE_LATIN_1_MAX): Delete these macros.
12146
121472008-02-01 Kenichi Handa <handa@m17n.org>
12148
12149 * editfns.c (check_translation): New function.
12150 (Ftranslate_region_internal): Handle M:N mapping.
12151
121522008-02-01 Kenichi Handa <handa@m17n.org>
12153
12154 * xfaces.c (xlfd_point_size): Set font->numeric[XLFD_PIXEL_SIZE].
12155
121562008-02-01 Kenichi Handa <handa@m17n.org>
12157
12158 * coding.c (DECODE_DESIGNATION): Set chars_96 to -1 instead of
12159 goto invalid_code.
12160 (decode_coding_iso_2022): Fix handling of invalid designation.
12161
12162 * fileio.c (Finsert_file_contents): Be sure to call unbind_to
12163 after calling code_conversion_save.
12164
121652008-02-01 Kenichi Handa <handa@m17n.org>
12166
12167 * xdisp.c (handle_auto_composed_prop): Fix Lisp_Object/int mixup.
12168
12169 * print.c (print_prune_string_charset): Fix Lisp_Object/int mixup.
12170
12171 * fontset.c: Include "intervals.h".
12172 (fontset_face): Fix comparing of Lisp_Objects.
12173 (free_face_fontset, new_fontset_from_font_name): Fix
12174 Lisp_Object/int mixup.
12175
12176 * editfns.c (Ftranslate_region_internal): Fix Lisp_Object/int mixup.
12177
12178 * coding.c: Add many prototypes for static functions.
12179 (get_translation_table): Allow max_lookup to be NULL.
12180 (decode_coding, Ffind_coding_systems_region_internal)
12181 (Funencodable_char_position, Fcheck_coding_systems_region): Call
12182 get_translation_table with max_lookup NULL.
12183
121842008-02-01 Kenichi Handa <handa@m17n.org>
12185
12186 * coding.c (get_translation_table): Declare it as Lisp_Object.
12187 (LOOKUP_TRANSLATION_TABLE): New macro.
12188 (produce_chars, consume_chars): Use LOOKUP_TRANSLATION_TABLE
12189 instead of CHAR_TABLE_REF.
12190
121912008-02-01 Kenichi Handa <handa@m17n.org>
12192
12193 * coding.c (MAX_ANNOTATION_LENGTH): Adjust for the change of
12194 annotation data format.
12195 (ADD_ANNOTATION_DATA, ADD_COMPOSITION_DATA, ADD_CHARSET_DATA):
12196 Change arguments FROM and TO to single argument NCHARS. Change caller.
12197 (decode_coding_utf_8, decode_coding_utf_16, decode_coding_emacs_mule)
12198 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
12199 (decode_coding_ccl, decode_coding_charset): Pay attention to
12200 coding->charbuf_used.
12201 (get_translation): New function.
12202 (produce_chars): New arguments translation_table and last_block.
12203 Translate characters here. Return number of carryover chars.
12204 Change caller.
12205 (produce_composition): New argument pos. Change caller.
12206 Adjust for the change of annotation data format.
12207 (produce_charset, produce_annotation): Likewise.
12208 (decode_coding, encode_coding): Don't call translate_chars.
12209 (consume_chars): New arg translation_table. Change caller.
12210 (translate_chars): Delete.
12211 (syms_of_coding): Make translation-table's number of extra slots 2.
12212
122132008-02-01 Kenichi Handa <handa@m17n.org>
12214
12215 * search.c (simple_search): Fix setting this_pos_byte in backward
12216 search.
12217
12218 * coding.c (detect_coding_emacs_mule): Fix counting of encoded
12219 byte sequence.
12220 (detect_coding_ccl): Fix setting of the variable valids.
12221
122222008-02-01 Kenichi Handa <handa@m17n.org>
12223
12224 * xterm.c (x_list_fonts): Fix the detection of an auto-scaled font.
12225
12226 * coding.c (decode_coding_utf_16): Fix handling of surrogate pair.
12227
12228 * editfns.c (Ftranslate_region_internal): Rename from
12229 Ftranslate_region. Accept a char-table in TABLE.
12230 (syms_of_editfns): Defsubr Stranslate_region_internal.
12231
12232 * xfaces.c (set_lface_from_font_name): If a font is specified for
12233 a frame, generate a fontset from the font.
12234 (build_scalable_font_name): If the scalable font is requested for
12235 a specific size, don't change that size.
12236 (try_font_list): Try a scalable font also in the case that a
12237 pattern string is specified.
12238
122392008-02-01 Kenichi Handa <handa@m17n.org>
12240
12241 * xfaces.c (Fface_font): New optional arg CHARACTER.
12242
122432008-02-01 Kenichi Handa <handa@m17n.org>
12244
12245 * charset.h (CHARSET_OFFSET): New macro.
12246
122472008-02-01 Kenichi Handa <handa@m17n.org>
12248
12249 * xterm.c (x_get_font_repertory): Fix for non-Unicode-bmp charset.
12250
12251 * fontset.c (fontset_face): Handle the case that repertory is a
12252 char-table.
12253 (find_font_encoding): Return nil for unknown encoding.
12254 (Fset_fontset_font): Ignore a font of unknown encoding.
12255
122562008-02-01 Kenichi Handa <handa@m17n.org>
12257
12258 * keymap.c (describe_vector): Handle default value of a char table.
12259
12260 * fontset.c (fontset_face): Handle fallback fonts correctly.
12261 (Ffontset_info): Return infomation about fallback fonts.
12262
122632008-02-01 Kenichi Handa <handa@m17n.org>
12264
12265 * fontset.c (FONTSET_DEFAULT): New macro.
12266 (FONTSET_ADD, fontset_add): Handle the case that range is nil.
12267 (Fset_fontset_font): Change the 2nd arg name to TARGET, and handle
12268 the case that it is nil.
12269 (dump_fontset): Call FONTSET_DEFAULT, not FONTSET_FALLBACK.
12270 (syms_of_fontset): Set char-table-extra-slots property of fontset to 9.
12271
12272 * charset.h (CHAR_CHARSET_P): Fix for the case that the method is
12273 subset or superset.
12274
122752008-02-01 Kenichi Handa <handa@m17n.org>
12276
12277 * emacs.c (main): Call init_charset after syms_of_XXX.
12278
12279 * charset.c (Vcharset_map_directory): Delete.
12280 (Vcharset_map_path): New variable.
12281 (load_charset_map_from_file): Use Vcharset_map_path instead.
12282 (init_charset): Initialize Vcharset_map_path.
12283 (syms_of_charset): Delete declaration of "charset-map-directory",
12284 add declaration of "charset-map-path".
12285
122862008-02-01 Kenichi Handa <handa@m17n.org>
12287
12288 * fns.c (string_char_to_byte, string_byte_to_char): Optimize for
12289 ASCII only string.
12290
12291 * fileio.c (Finsert_file_contents): Avoid detecting a code twice.
12292
12293 * coding.c (detect_coding_iso_2022): Fix handling of SS2 and SS3.
12294 (detect_coding, detect_coding_system): Treat '\0' as normal ASCII byte.
12295
122962008-02-01 Kenichi Handa <handa@m17n.org>
12297
12298 * coding.h (SJIS_TO_JIS2, JIS_TO_SJIS2): New macros.
12299
12300 * coding.c (QCmnemonic, QCdefalut_char)
12301 (QCdecode_translation_table, QCencode_translation_table)
12302 (QCpost_read_conversion, QCpre_write_conversion): New variables.
12303 (get_translation_table): Return a list of translation tables if
12304 necessary.
12305 (decode_coding): Call get_translation_table with ENCODEP 0.
12306 (char_encodable_p): If translation_table is non-nil, always call
12307 translate_char.
12308 (Fdefine_coding_system_internal): Accept list of translation
12309 tables as :encode-translation-table and :decode-translation-table.
12310 (Fcoding_system_put): New function.
12311 (syms_of_coding): Declare new symbols. Defsubr
12312 Scoding_system_put.
12313 (decode_coding_sjis, encode_coding_sjis): Handle 4th charset,
12314 typically JISX0212.
12315
12316 * charset.c (map_charset_chars): Fix arg to map_charset_chars in
12317 when the charset is superset type.
12318
12319 * character.c (translate_char): Accept list of translation tables.
12320
123212008-02-01 Kenichi Handa <handa@m17n.org>
12322
12323 * coding.h (enum coding_attr_index): New member coding_attr_trans_tbl.
12324 (CODING_ATTR_TRANS_TBL): New macro.
12325
12326 * coding.c (get_translation_table): New function.
12327 (translate_chars): Fix the bug of skipping annotation data.
12328 (decode_coding, encode_coding): Utilize get_translation_table.
12329 (char_encodable_p, Funencodable_char_position): Translate char if
12330 necessary.
12331 (Ffind_coding_systems_region_internal)
12332 (Fcheck_coding_systems_region): Setup translation table for encode
12333 in a coding system attribute vector in advance.
12334 (Fdefine_coding_system_internal): Allow a symbol as translation
12335 table. For shift-jis type coding system, allow 4th charset.
12336
123372008-02-01 Kenichi Handa <handa@m17n.org>
12338
12339 * coding.c (decode_coding_sjis): Check the first byte rigidly.
12340
12341 * xdisp.c (get_next_display_element): Pass -1 as POS to
12342 FACE_FOR_CHAR if displaying a C-string.
12343
123442008-02-01 Kenichi Handa <handa@m17n.org>
12345
12346 * composite.c (get_composition_id): Handle xoff and yoff in a
12347 composition rule.
12348
12349 * composite.h (COMPOSITION_DECODE_RULE): New arg xoff and yoff.
12350 (struct composition): New member lbearing and rbearing.
12351
12352 * xdisp.c (move_it_to): Optimize for the case (op & MOVE_TO_Y).
12353 (x_get_glyph_overhangs): Handle a composition glyph.
12354 (x_produce_glyphs): Setup lbearing and rbreaing for a composition glyph.
12355
12356 * xterm.c (x_compute_glyph_string_overhangs): Handle also a
12357 composition glyph.
12358
123592008-02-01 Kenichi Handa <handa@m17n.org>
12360
12361 * print.c: Include charset.h.
12362 (Vprint_charset_text_property): New variable.
12363 (Qdefault): Extern it.
12364 (PRINT_STRING_NON_CHARSET_FOUND)
12365 (PRINT_STRING_UNSAFE_CHARSET_FOUND): New macros.
12366 (print_check_string_result): New variable.
12367 (print_check_string_charset_prop): New function.
12368 (print_prune_charset_plist): New variable.
12369 (print_prune_string_charset): New function.
12370 (print_object): Call print_prune_string_charset if
12371 Vprint_charset_text_property is not t.
12372 (print_interval): Print nothing if interval->plist is nil.
12373 (syms_of_print): Declare Vprint_charset_text_property as a lisp
12374 variable. Init and staticpro print_prune_charset_plist.
12375
123762008-02-01 Kenichi Handa <handa@m17n.org>
12377
12378 * fontset.c (new_fontset_from_font_name): Use the specified font
12379 for all characters in the new fontset.
12380
12381 * macterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
12382 OBJECT args.
12383
12384 * xdisp.c (x_produce_glyphs): Call FACE_FOR_CHAR with POS and
12385 OBJECT args for composition too.
12386
12387 * w32term.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
12388 OBJECT args.
12389
123902008-02-01 Kenichi Handa <handa@m17n.org>
12391
12392 * dispextern.h (FACE_FOR_CHAR): New args POS and OBJECT.
12393
12394 * fontset.c (reorder_font_vector): Adjust for the change of
12395 FONT_DEF format.
12396 (fontset_face): New arg id. Change caller.
12397 (face_for_char): New args pos and object.
12398 (make_fontset_for_ascii_face): Adjust for the change of FONT_DEF format.
12399 (fs_query_fontset): Check NAME by Fassoc too.
12400 (Fset_fontset_font): Allow non-XLFD font name.
12401 (Ffontset_info): Adjust for the change of FONT_DEF format.
12402
12403 * fontset.h (face_for_char): Adjust prototype.
12404
12405 * xdisp.c (face_before_or_after_it_pos, get_next_display_element)
12406 (append_space, extend_face_to_end_of_line)
12407 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
12408 (x_produce_glyphs): Call FACE_FOR_CHAR with POS and OBJECT args.
12409
12410 * xfaces.c (compute_char_face): Call FACE_FOR_CHAR with
12411 POS and OBJECT args.
12412
12413 * xterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with
12414 POS and OBJECT args.
12415
124162008-02-01 Jason Rumney <jasonr@gnu.org>
12417
12418 * w32select.c (Fw32_set_clipboard_data): Avoid potential realloc
12419 of GlobalAlloc'ed memory.
12420
124212008-02-01 Kenichi Handa <handa@m17n.org>
12422
12423 * ccl.c (Fccl_execute_on_string): Fix the condition of loop.
12424
12425 * charset.h (charset_table_used): Delete extern.
12426
12427 * charset.c (charset_table_used): Make it static.
12428 (map_charset_chars): Fix args to c_function with.
12429
12430 * chartab.c (map_sub_char_table_for_charset): Fix args to
12431 c_function with.
12432
12433 * coding.h (enum coding_result_code): Delete
12434 CODING_RESULT_INSUFFICIENT_CMP, add CODING_RESULT_INVALID_SRC.
12435
12436 * coding.c (Qinsufficient_source, Qinconsistent_eol)
12437 (Qinvalid_source, Qinterrupted, Qinsufficient_memory): New variables.
12438 (Vlast_code_conversion_error): New variables.
12439 (syms_of_coding): DEFSYM or DEFVAR_LISP them.
12440 (ONE_MORE_BYTE): Record error if any instead of signaling an
12441 error. If non-ASCII multibyte char is found, return the negative
12442 value of the code. All callers changed to check it.
12443 (ONE_MORE_BYTE_NO_CHECK): Likewise.
12444 (record_conversion_result): New function. Change all codes setting
12445 coding->result to call this function.
12446 (detect_coding_utf_8, decode_coding_utf_8)
12447 (detect_coding_emacs_mule, detect_coding_sji, detect_coding_big5):
12448 Don't use the local variable incomplete.
12449 (emacs_mule_char): Change the second arg to `const'.
12450 (decode_coding): Fix of flushing out unprocessed data.
12451 (make_conversion_work_buffer): Fix making of a work buffer.
12452 (decode_coding_object): Return coding->dst_object.
12453
12454 * fontset.c (set_fontset_font): Fix args.
12455
12456 * lisp.h (CHARACTERBITS): Define as 22.
12457
12458 * process.c (send_process): Be sure to set coding->src_multibyte.
12459
12460 * xdisp.c (handle_auto_composed_prop): Fix setting of limit.
12461
124622008-02-01 Kenichi Handa <handa@m17n.org>
12463
12464 * xdisp.c (handle_auto_composed_prop): Give limit to
12465 Fnext_single_char_property_change.
12466
124672008-02-01 Kenichi Handa <handa@m17n.org>
12468
12469 * composite.c (syms_of_composite): Don't make the composition hash
12470 table weak.
12471
12472 * fontset.c (Fset_fontset_font): Fix docstring.
12473
12474 * lisp.h (detect_coding_system): Adjust prototype.
12475
12476 * fileio.c (kill_workbuf_unwind): Delete this function.
12477 (Finsert_file_contents): Adjust the call of detect_coding_system.
12478 Get conversion_buffer by code_conversion_save. Use the macro
12479 CODING_MAY_REQUIRE_DECODING. After decoding, update
12480 coding_system.
12481
12482 * coding.h (make_conversion_work_buffer): Delete extern.
12483 (code_conversion_save): Extern it.
12484
12485 * coding.c (enum iso_code_class_type): Delete ISO_carriage_return.
12486 (CODING_GET_INFO): Delete argument eol_type. Change callers.
12487 (decode_coding_utf_8): Don't do eol converion.
12488 (detect_coding_utf_16): Check coding->src_chars, not
12489 coding->src_bytes. Add heuristics for those that have no signature.
12490 (decode_coding_emacs_mule, decode_coding_iso_2022)
12491 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
12492 Don't do eol converion.
12493 (adjust_coding_eol_type): Return a new coding system.
12494 (detect_coding): Don't detect eol. Fix for utf-16 detection.
12495 (decode_eol): In case of CRLF->LF conversion, use del_range_2 on
12496 each change.
12497 (decode_coding): Pay attention to undo_list. Do eol conversion for
12498 all types of coding-systems (if necessary).
12499 (Vcode_conversion_work_buf_list): Delete it.
12500 (Vcode_conversion_reused_workbuf): Rename from
12501 Vcode_conversion_reused_work_buf.
12502 (Vcode_conversion_workbuf_name): New variable.
12503 (reused_workbuf_in_use): New variable.
12504 (make_conversion_work_buffer): Delete the arg DEPTH.
12505 (code_conversion_restore): Change argument to cons.
12506 (code_conversion_save): Delete the argument BUFFER. Change callers.
12507 (detect_coding_system): New argument src_chars. Change callers.
12508 Fix for utf-16 detection.
12509 (init_coding_once): Don't use ISO_carriage_return.
12510 (syms_of_coding): Initialize Vcode_conversion_workbuf_name and
12511 reused_workbuf_in_use.
12512
125132008-02-01 Kenichi Handa <handa@m17n.org>
12514
12515 * keymap.c (store_in_keymap): Pay attention to the case that idx
12516 is a cons specifying a character range.
12517
125182008-02-01 Kenichi Handa <handa@m17n.org>
12519
12520 * xdisp.c (handle_auto_composed_prop): Fix the case of returning
12521 HANDLED_RECOMPUTE_PROPS.
12522
12523 * coding.c (Fdefine_coding_system_internal): Fix checking of
12524 ascii compatibility.
12525
125262008-02-01 Kenichi Handa <handa@m17n.org>
12527
12528 * charset.c (find_charsets_in_text): Delete unused locale variable.
12529 (Fset_charset_priority): Update Vemacs_mule_charset_list too.
12530
12531 * coding.c (encode_coding_emacs_mule): Emit bytes with MSB.
12532 Resync charset_list to Vemacs_mule_charset_list.
12533
12534 * keymap.c (store_in_keymap): Pay attention to the case that idx
12535 is a cons specifying a character range.
12536
125372008-02-01 Kenichi Handa <handa@m17n.org>
12538
12539 * composite.c (update_compositions): Bind inhibit-read-only, etc
12540 to t before calling remove-list-of-text-properties.
12541
12542 * print.c (print_object): Always print ASCII chars as is.
12543
125442008-02-01 Kenichi Handa <handa@m17n.org>
12545
12546 * keymap.c (Fdefine_key): Fix handling of Lucid style event type list.
12547
12548 * fns.c (Fmapconcat, Fmapcar, Fmapc): Signal an error if SEQUENCE
12549 is a char table.
12550
125512008-02-01 Kenichi Handa <handa@m17n.org>
12552
12553 * syntax.c (skip_chars): Be sure to alloca char_ranges when necessary.
12554
125552008-02-01 Kenichi Handa <handa@m17n.org>
12556
12557 * xfaces.c (set_lface_from_font_name): Fix for the case that
12558 FONTNAME is not fontset name.
12559
125602008-02-01 Kenichi Handa <handa@m17n.org>
12561
12562 * fns.c (base64_encode_1): Fix previous change.
12563
125642008-02-01 Kenichi Handa <handa@m17n.org>
12565
12566 * fontset.c (set_fontset_font): New function.
12567 (Fset_fontset_font): If a font is specified for a charset, use
12568 map_charset_chars to store the font spec in a fontset.
12569
125702008-02-01 Kenichi Handa <handa@m17n.org>
12571
12572 * fontset.c (fontset_face): Create a fallback fontset on demand.
12573 (make_fontset): Don't create a fallback fontset here.
12574 (free_face_fontset): Free a fallback fontset (if any) too.
12575 (n_auto_fontsets): Delete this variable.
12576 (auto_fontset_alist): New variable.
12577 (new_fontset_from_font_name): Check auto_fontset_alist.
12578 (dump_fontset) [FONTSET_DEBUG]: Fully re-written.
12579 (Ffontset_list_all) [FONTSET_DEBUG]: New function.
12580 (syms_of_fontset): Initialize and staticpro auto_fontset_alist.
12581 Defsubr Sfontset_list_all.
12582
125832008-02-01 Kenichi Handa <handa@m17n.org>
12584
12585 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
12586
125872008-02-01 Kenichi Handa <handa@m17n.org>
12588
12589 * fontset.c (Fnew_fontset): Check NAME more rigidly.
12590
125912008-02-01 Kenichi Handa <handa@m17n.org>
12592
12593 * editfns.c (Fgoto_char): Fix docstring.
12594
125952008-02-01 Kenichi Handa <handa@m17n.org>
12596
12597 * insdel.c (insert_from_gap): Adjust intervals correctly.
12598
125992008-02-01 Jason Rumney <jasonr@gnu.org>
12600
12601 * w32term.c (GLYPHSET, WCRANGE): Define if system headers don't.
12602 (pfnGetFontUnicodeRanges): New dynamically loaded function.
12603 (w32_initialize): Try to load it.
12604 (x_get_font_repertory): Use it if available.
12605 (w32_encode_char): Add shortcut for unicode output.
12606
12607 * w32fns.c (w32_load_system_font): Default charset to -1.
12608 (x_to_w32_charset): Match all fonts for unicode.
12609 (w32_to_x_charset): New parameter matching. Don't return partial
12610 or wildcard charsets.
12611 (w32_to_all_x_charsets): Don't return partial or wildcard charsets.
12612 (w32_codepage_for_font): Return CP_UNICODE for unicode.
12613 (w32_to_x_font): Match charset to real charset.
12614 (enum_font_cb2): Always list unicode versions.
12615
12616 * makefile.w32-in (temacs): Increase EMHEAP.
12617
126182008-02-01 Jason Rumney <jasonr@gnu.org>
12619
12620 * w32term.c (w32_encode_char): New charset parameter.
12621 font_info.encoding becomes encoding_type.
12622 (x_get_font_repertory): New function. Warning: stub only!
12623 (x_new_font): Return quickly if font already set.
12624 (x_new_fontset): fontsetname parameter is Lisp_Object.
12625 Use new fs_query_fontset. Try new_fontset_from_font_name.
12626 Use fontset_name for return value.
12627
12628 * w32term.h: Declare x_get_font_repertory.
12629
12630 * w32select.c (Fw32_set_clipboard_data): Use string_x_string_p in
12631 place of find_charset_in_text. Use encode_coding_object in place
12632 of encode_coding.
12633 (Fw32_get_clipboard_data): Use decode_coding_c_string in place of
12634 decode_coding.
12635
12636 * w32fns.c (Fx_create_frame, x_create_tip_frame): Use new version
12637 of x_new_fontset.
12638 (w32_load_system_font): Initialize charset as unicode.
12639 font_info.encoding becomes encoding_type.
12640 (w32_to_x_font): Use decode_coding_c_string in place of decode_coding.
12641 (x_to_w32_font): Use encode_coding_object in place of encode_coding.
12642 (syms_of_w32fns): Set get_font_repertory_func.
12643
12644 * w32console.c: Include character.h. Use terminal_encode_buffer
12645 from term.c.
12646 (write_glyphs): Use new version of encode_terminal_code. Use
12647 encode_coding_object in place of encode_coding.
12648
12649 * w32bdf.c (w32_load_bdf_font): Clear font_info before filling.
12650 encoding becomes encoding_type.
12651
12652 * term.c (terminal_encode_buffer): Make externally visible.
12653
12654 * makefile.w32-in: Add character.h dependancies.
12655 (character.o, chartab.o): New targets.
12656
126572008-02-01 Kenichi Handa <handa@m17n.org>
12658
12659 * fileio.c (Finsert_file_contents) [DOS_NT]: Use the macro
12660 CODING_ID_EOL_TYPE.
12661
126622008-02-01 Andreas Schwab <schwab@suse.de>
12663
12664 * coding.c (produce_chars): Revert last change.
12665
126662008-02-01 Kenichi Handa <handa@m17n.org>
12667
12668 * charset.h (charset_unicode): Extern it.
12669
12670 * charset.c (string_xstring_p): Check by (C >= 0x100).
12671 (find_charsets_in_text): Change format of the arc CHARSETS. New
12672 arg MULTIBYTE.
12673 (Ffind_charset_region, Ffind_charset_string): Adjust for the
12674 change of find_charsets_in_text.
12675 (Fsplit_char): Fix doc. Never return unknown.
12676
12677 * chartab.c (char_table_translate): Use CHARACTERP, not INTEGERP.
12678
12679 * coding.c (Fdefine_coding_system_alias): Update
12680 Vcoding_system_list.
12681
12682 * fontset.c (load_font_get_repertory): Pay attention to the case
12683 that ENCODING of a font is specified by a char-table.
12684
12685 * xterm.c (x_get_font_repertory): Handle the case that the
12686 encoding of font is other than Unicode.
12687
126882008-02-01 Kenichi Handa <handa@m17n.org>
12689
12690 * term.c (encode_terminal_code): Don't handle glyph-table. Check
12691 if a character is encodable by the terminal coding system. If
12692 not, produces proper number of `?'s. Update
12693 terminal_encode_buffer and terminal_encode_buf_size if necessary.
12694 (produce_glyphs): Check by CHAR_BYTE8_P, not SINGLE_BYTE_CHAR_P.
12695
126962008-02-01 Kenichi Handa <handa@m17n.org>
12697
12698 * term.c (terminal_encode_buffer, terminal_encode_buf_size): New
12699 variables.
12700 (encode_terminal_code): Change argument. Encode multiple
12701 characters at once. Store the result of encoding in
12702 terminal_encode_buffer.
12703 (write_glyphs, insert_glyphs): Adjust for the change of
12704 encode_terminal_code.
12705 (term_init): Initialize terminal_encode_buffer and
12706 terminal_encode_buf_size.
12707
12708 * coding.c (consume_chars): If coding->src_object is nil, don't
12709 check annotation.
12710
127112008-02-01 Kenichi Handa <handa@m17n.org>
12712
12713 * character.c (char_string): Use ASCII_CHAR_P instead of
12714 SINGLE_BYTE_CHAR_P.
12715
127162008-02-01 Kenichi Handa <handa@m17n.org>
12717
12718 * xdisp.c (handle_auto_composed_prop): Check if the last
12719 characters of auto-composed region is newly composed with the
12720 following characters.
12721 (handle_composition_prop): Fix checking of point being inside
12722 composition.
12723
127242008-02-01 Kenichi Handa <handa@m17n.org>
12725
12726 * fns.c (concat): Don't change multibyteness of the result by
12727 concatenating an 8-bit character.
12728
12729 * data.c (Faset): Check newelt by CHECK_CHARACTER. Don't change
12730 multibyteness of the result when newelt is an 8-bit character.
12731
127322008-02-01 Dave Love <fx@gnu.org>
12733
12734 * xmenu.c (find_and_call_menu_selection): Make menu_bar_items_used
12735 EMACS_INT.
12736
12737 * xfns.c (DefaultDepthOfScreen, x_encode_text): Remove unused vars.
12738
12739 * xfaces.c (face_numeric_value): Declare dim size_t.
12740 (Finternal_lisp_face_equal_p): Remove unused f.
12741
12742 * xdisp.c (BUILD_CHAR_GLYPH_STRINGS, display_and_set_cursor)
12743 (MATRIX_ROW): Remove unused vars.
12744 (draw_glyphs, x_insert_glyphs, fast_find_position)
12745 (fast_find_position, fast_find_string_pos): Use EMACS_INT for
12746 byte/char counts.
12747
12748 * regex.c (regex_compile): Remove unused var.
12749
12750 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
12751
12752 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
12753 (Faccessible_keymaps, where_is_internal): Remove unused vars.
12754
12755 * keyboard.c (cancel_hourglass_unwind): Return Qnil.
12756
12757 * frame.c (frame_name_fnn_p): Make len EMACS_INT.
12758
12759 * fileio.c (Fwrite_region): Remove unused var.
12760
12761 * dispnew.c (adjust_frame_glyphs_for_frame_redisplay)
12762 (adjust_frame_glyphs_for_window_redisplay): Remove unused ch_dim.
12763
12764 * composite.c (Fremove_list_of_text_properties): Declare.
12765
12766 * coding.c (inhibit_pre_post_conversion): Remove (unused).
12767 (alloc_destination, produce_chars): Use EMACS_INT for byte/char counts.
12768 (coding_inherit_eol_type): Remove unused attrs.
12769 (detect_coding): Cast arg of detect_eol.
12770
12771 * charset.c (syms_of_charset): Remove unused var p.
12772 (find_charsets_in_text, Ffind_charset_region): Use EMACS_INT for
12773 byte/char counts.
12774
12775 * casetab.c (set_case_table): Remove unused var.
12776
12777 * window.c (Fdisplay_buffer, Fframe_selected_window): Remove
12778 unused vars.
12779
127802008-02-01 Dave Love <fx@gnu.org>
12781
12782 * xterm.c (x_bitmap_mask): Declare.
12783
127842008-02-01 Dave Love <fx@gnu.org>
12785
12786 * xterm.c (x_term_init): Fix type error.
12787
12788 * lisp.h: Add Funibyte_char_to_multibyte.
12789
12790 * coding.c (Fread_coding_system): Fix arg of XSETSTRING.
12791 (Fset_coding_system_priority): Doc fix.
12792
12793 * ccl.c (ccl_driver): Fix arg of CHARACTERP.
12794
12795 * indent.c (check_composition): Make start and end EMACS_INT.
12796
12797 * character.c (lisp_string_width): Make ignore and end EMACS_INT.
12798
12799 * xdisp.c (handle_composition_prop, check_point_in_composition):
12800 Make buffer positions EMACS_INT.
12801
12802 * composite.c (find_composition, run_composition_function)
12803 (update_compositions, Ffind_composition_internal): Make buffer
12804 positions EMACS_INT.
12805
12806 * composite.h (find_composition, update_compositions): Make
12807 position args EMACS_INT.
12808
12809 * keyboard.c (adjust_point_for_property): Make beg and end EMACS_INT.
12810
12811 * intervals.c (get_property_and_range):
12812 * intervals.h (get_property_and_range): Make start and end EMACS_INT.
12813
12814 * unexalpha.c: Don't include varargs.h.
12815
128162008-02-01 Dave Love <fx@gnu.org>
12817
12818 * coding.h (ENCODE_UTF_8): New.
12819
12820 * Makefile.in (gtkutil.o): Depend on coding.h.
12821
12822 * coding.c (Fset_coding_system_priority): Doc fix.
12823
128242008-02-01 Kenichi Handa <handa@m17n.org>
12825
12826 * fileio.c (Finsert_file_contents): Call setup_coding_system in
12827 the case of auto saving.
12828
128292008-02-01 Andreas Schwab <schwab@suse.de>
12830
12831 * chartab.c (map_char_table, map_char_table_for_charset): Protect
12832 `range' from GC.
12833
128342008-02-01 Kenichi Handa <handa@m17n.org>
12835
12836 * coding.c (decode_coding_sjis): Check bytes more rigidly.
12837
128382008-02-01 Kenichi Handa <handa@m17n.org>
12839
12840 * fileio.c (choose_write_coding_system): Return a decided coding system.
12841 (Fwrite_region): Set Vlast_coding_system_used to the return value
12842 of choose_write_coding_system.
12843
128442008-02-01 Kenichi Handa <handa@m17n.org>
12845
12846 * charset.c (Fset_charset_priority): Pay attention to duplicated
12847 arguments.
12848
12849 * coding.c (QCcategory): New variable.
12850 (syms_of_coding): Defsym it. Set all elements of
12851 Vcoding_category_table and their symbol values.
12852 (Fset_coding_system_priority): Doc fix. Update symbol qvalues of
12853 coding-category-XXX, and coding-category-list.
12854 (Fdefine_coding_system_internal): Add category in the plist.
12855
128562008-02-01 Kenichi Handa <handa@m17n.org>
12857
12858 * callproc.c (Fcall_process): Handle carryover correctly.
12859
12860 * coding.c (decode_coding_iso_2022): Fix handling of invalid bytes.
12861 (raw_text_coding_system): Check NILP (coding_system).
12862 (coding_inherit_eol_type): Check NILP (coding_system) and
12863 NILP (parent).
12864 (consume_chars): Fix for the case of raw-text.
12865
12866 * process.c (read_process_output): Handle carryover correctly.
12867
128682008-02-01 Dave Love <fx@gnu.org>
12869
12870 * regex.c (re_search_2): Fix last change.
12871
128722008-02-01 Kenichi Handa <handa@m17n.org>
12873
12874 * regex.c (GET_CHAR_BEFORE_2): Check multibyte, not
12875 target_multibyte. Even in a unibyte case, return a converted
12876 multibyte char.
12877 (GET_CHAR_AFTER): New macro.
12878 (PATFETCH): Translate via multibyte char.
12879 (HANDLE_UNIBYTE_RANGE): Delete this macro.
12880 (SETUP_MULTIBYTE_RANGE): New macro.
12881 (regex_compile): Setup compiled code so that its multibyteness
12882 matches that of a target. Fix the handling of "[X-YZ]" using
12883 SETUP_MULTIBYTE_RANGE.
12884 (analyse_first) <charset>: For filling fastmap for all multibyte
12885 characters, don't check by BASE_LEADING_CODE_P.
12886 (re_search_2): Don't check RE_TARGET_MULTIBYTE_P (bufp). It is
12887 the same as RE_MULTIBYTE_P (bufp) now.
12888 (mutually_exclusive_p): Check by (! multibyte || IS_REAL_ASCII (c)).
12889 (TARGET_CHAR_AND_LENGTH): Delete this macro.
12890 (TRANSLATE_VIA_MULTIBYTE): New macro.
12891 (re_match_2_internal): Don't check RE_TARGET_MULTIBYTE_P (bufp).
12892 It is the same as RE_MULTIBYTE_P (bufp) now.
12893 <exactn>: Translate via multibyte.
12894 <anychar>: Fetch a character by RE_STRING_CHAR_AND_LENGTH. Don't
12895 translate it.
12896 <charset, charset_not>: Fetch a character by
12897 RE_STRING_CHAR_AND_LENGTH. Translate via multibyte.
12898 <duplicate>: Call bcmp_translate with the last arg `multibyte'.
12899 <wordbound, notwordbound, wordbeg, wordend, syntaxspec,
12900 notsyntaxspec, categoryspec, notcategoryspec> Fetch a character
12901 by GET_CHAR_AFTER.
12902 (bcmp_translate): Likewise.
12903
12904 * search.c (compile_pattern): Check the member target_multibyte,
12905 not the member multibyte of buf.
12906
12907 * lread.c (read1): While reading a string, set force_singlebyte
12908 and force_multibyte correctly.
12909
12910 * charset.c (Fset_unibyte_charset, init_charset_once): Fix setting
12911 up of unibyte_to_multibyte_table.
12912
129132008-02-01 Kenichi Handa <handa@m17n.org>
12914
12915 * coding.c (setup_coding_system): If coding has
12916 post-read-conversion or pre-write-conversion, set
12917 CODING_REQUIRE_DECODING_MASK and CODING_REQUIRE_ENCODING_MASK
12918 respectively.
12919 (decode_coding_gap): Run post-read-conversion if any.
12920
12921 * fileio.c (Finsert_file_contents): Even if we read into a
12922 unibyte buffer, check if we must decode the result or not.
12923
129242008-02-01 Kenichi Handa <handa@m17n.org>
12925
12926 * coding.c (make_conversion_work_buffer): Change the work buffer
12927 name to the same one as that of Emacs 21.
12928
129292008-02-01 Kenichi Handa <handa@m17n.org>
12930
12931 * coding.h (make_conversion_work_buffer): Adjust prototype.
12932 (code_conversion_restore): Don't extern it.
12933
12934 * coding.c (detected_mask): Delete unused variable.
12935 (decode_coding_iso_2022): Pay attention to the byte sequence of
12936 CTEXT extended segment, and retain those bytes as is.
12937 (decode_coding_ccl): Delete unused variable `valids'.
12938 (setup_coding_system): Delete unused variable `category'.
12939 (consume_chars): Delete unused variable `category'. Make it work
12940 for non-multibyte case.
12941 (make_conversion_work_buffer): Change argument.
12942 (saved_coding): Delete unused variable.
12943 (code_conversion_restore): Don't check saved_coding->destination.
12944 (code_conversion_save): New function.
12945 (decode_coding_gap, encode_coding_gap): Call code_conversion_save
12946 instead of record_unwind_protect.
12947 (decode_coding_object, encode_coding_object): Likewise. Recover PT.
12948 (detect_coding_system): Delete unused variable `mask'.
12949 (Fdefine_coding_system_internal): Delete unused variable id.
12950
12951 * fileio.c (kill_workbuf_unwind): New function.
12952 (Finsert_file_contents): On replacing, call
12953 make_conversion_work_buffer with correct args, and call
12954 record_unwind_protect with the first arg kill_workbuf_unwind.
12955
12956 * lisp.h (Fgenerate_new_buffer_name): EXFUN it.
12957
129582008-02-01 Kenichi Handa <handa@m17n.org>
12959
12960 * fontset.c (BASE_FONTSET_P): Check FONTSET_BASE, not FONTSET_NAME.
12961 (fontset_add): Fix for the case that TO is less than TO1.
12962 (Ffontset_info): Don't use fallback fontset on checking the
12963 default fontset.
12964 (dump_fontset): New function for debugging.
12965
12966 * coding.c (Fdefine_coding_system_internal): Fix for the case that
12967 coding_type is Qcharset.
12968
129692008-02-01 Kenichi Handa <handa@m17n.org>
12970
12971 * chartab.c (map_sub_char_table): New argument DEFAULT_VAL.
12972 (map_char_table): Don't inherit the value from the parent on
12973 initializing VAL. Adjust for the above change.
12974
129752008-02-01 Kenichi Handa <handa@m17n.org>
12976
12977 * coding.c (Qsignature, Qendian): Delete these variables.
12978 (syms_of_coding): Don't initialize them.
12979 (CATEGORY_MASK_UTF_16_AUTO): New macro.
12980 (detect_coding_utf_16): Add CATEGORY_MASK_UTF_16_AUTO in
12981 detect_info->found.
12982 (decode_coding_utf_16): Don't detect BOM here.
12983 (encode_coding_utf_16): Produce BOM if CODING_UTF_16_BOM (coding)
12984 is NOT utf_16_without_bom.
12985 (setup_coding_system): For a coding system of type utf-16, check
12986 if the attribute :endian is Qbig or not (not nil or not), and set
12987 CODING_REQUIRE_DETECTION_MASK if BOM detection is required.
12988 (detect_coding): If coding type is utf-16 and BOM detection is
12989 required, detect it.
12990 (Fdefine_coding_system_internal): For a coding system of type
12991 utf-16, check if the attribute :endian is Qbig or not (not nil or not).
12992
129932008-02-01 Kenichi Handa <handa@m17n.org>
12994
12995 * coding.c (coding_set_source): Fix for the case that the current
12996 buffer is different from coding->src_object.
12997 (decode_coding_object): Don't use the conversion work buffer if
12998 DST_OBJECT is a buffer.
12999
130002008-02-01 Dave Love <fx@gnu.org>
13001
13002 * lread.c (read_emacs_mule_char) [len==2]: Index
13003 emacs_mule_charset correctly.
13004
130052008-02-01 Dave Love <fx@gnu.org>
13006
13007 * coding.c (Qbig5, Vbig5_coding_system, CATEGORY_MASK_BIG5)
13008 (detect_coding_big5, decode_coding_big5, encode_coding_big5)
13009 (Fdecode_big5_char, Fencode_big5_char): Delete. (Big5 no longer
13010 treated specially.)
13011 (setup_coding_system, coding_category, CATEGORY_MASK_ANY)
13012 (detected_mask): Remove Big5 bits.
13013
130142008-02-01 Kenichi Handa <handa@m17n.org>
13015
13016 The following changes are to make the font rescaling facility
13017 compatible with Emacs 21.
13018
13019 * xfaces.c (Vface_font_rescale_alist): Rename from
13020 Vface_resizing_fonts.
13021 (struct font_name): Rename member resizing_ratio to rescale_ratio.
13022 (font_rescale_ratio): Rename from font_resizing_ratio.
13023 (split_font_name): Set font->rescale_ratio.
13024 (better_font_p): Pay attention to font->rescale_ratio.
13025 (build_scalable_font_name): Likewise. Change RESX, and RESY
13026 fields.
13027 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
13028
130292008-02-01 Kenichi Handa <handa@m17n.org>
13030
13031 * coding.c (Qutf_16_be_nosig, Qutf_16_be, Qutf_16_le_nosig)
13032 (Qutf_16_le): Remove these variables.
13033 (syms_of_coding): Don't DEFSYM them.
13034 (decode_coding_utf_16): Fix handling of BOM.
13035 (encode_coding_utf_16): Fix handling of BOM.
13036
130372008-02-01 Kenichi Handa <handa@m17n.org>
13038
13039 * fileio.c (Finsert_file_contents): On replacing, before decoding
13040 the file into the work buffer, set point of the work buffer to the end.
13041
130422008-02-01 Dave Love <fx@gnu.org>
13043
13044 * coding.c (Fcheck_coding_systems_region): Fix type errors.
13045
130462008-02-01 Dave Love <fx@gnu.org>
13047
13048 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
13049 and fix C types.
13050
130512008-02-01 Kenichi Handa <handa@m17n.org>
13052
13053 * xdisp.c (SKIP_GLYPHS): New macro.
13054 (set_cursor_from_row): Pay attention to string display properties.
13055
13056 * category.c (copy_category_entry): Fix for the case that RANGE
13057 is an integer.
13058
13059 * xterm.c (x_encode_char): Call ccl_driver with the last arg Qnil.
13060
13061 * w32term.c (w32_encode_char): Call ccl_driver with the last arg Qnil.
13062
130632008-02-01 Kenichi Handa <handa@m17n.org>
13064
13065 * charset.c (Fcharset_id_internal): New function.
13066 (syms_of_charset): Defsubr it.
13067
13068 * coding.c (decode_coding_ccl, encode_coding_ccl): Call ccl_driver
13069 with the last arg charset_list acquired from coding.
13070 (Fdefine_coding_system_internal): For ccl-based coding system, fix
13071 the attribute coding_attr_ccl_valids.
13072
13073 * coding.h (enum define_coding_ccl_arg_index): Set the first
13074 member coding_arg_ccl_decoder to coding_arg_max.
13075
13076 * ccl.h (ccl_driver): Adjust prototype.
13077
13078 * ccl.c (CCL_DECODE_CHAR, CCL_ENCODE_CHAR): New macros.
13079 (ccl_driver): New arg CHARSET_LIST. Use the above macros instead
60612c8f 13080 of DECODE_CHAR, ENCODE_CHAR, CHAR_CHARSET.
aac0c6e3
MR
13081 (Fccl_execute, Fccl_execute_on_string): Call ccl_driver with the
13082 last arg Qnil.
13083
130842008-02-01 Kenichi Handa <handa@m17n.org>
13085
13086 * charset.h (ENCODE_CHAR): If the method is SUBSET or SUPERSET,
13087 call encode_char.
13088
13089 * charset.c (encode_char): Fix handling of methods SUBSET and SUPERSET.
13090
130912008-02-01 Dave Love <fx@gnu.org>
13092
13093 * composite.c (syms_of_composite): Make composition_hash_table weak.
13094
130952008-02-01 Kenichi Handa <handa@m17n.org>
13096
13097 * dispextern.h (check_face_attributes, generate_ascii_font_name)
13098 (font_name_registry): Don't extern them.
13099 (split_font_name_into_vector, build_font_name_from_vector): Extern them.
13100
13101 * fontset.h (Qfontset): Don't extern it.
13102 (new_fontset_from_font_name): Extern it.
13103
13104 * fontset.c: Give 8 extra slots to fontset objects.
13105 (Qfontset_info): New variable.
13106 (syms_of_fontset): Defsym it.
13107 (FONTSET_FALLBACK): New macro.
13108 (fontset_face): Try also the default fontset.
13109 (make_fontset): Realize a fallback fontset from the default fontset.
13110 (generate_ascii_font_name): Move from xfaces.c. Rewritten by
13111 using split_font_name_into_vector and build_font_name_from_vector.
13112 (Fset_fontset_font): Access the elements of font_spec by enum
13113 FONT_SPEC_INDEX. If font_spec is a string, extract the registry
13114 name by using split_font_name_into_vector.
13115 (Fnew_fontset): If no ASCII font is specified in FONTLIST,
13116 generate a proper font name from the fontset name. Update
13117 Vfontset_alias_alist.
13118 (n_auto_fontsets): New variable.
13119 (new_fontset_from_font_name): New function.
13120 (Ffont_info): Store the information about fonts generated from the
13121 default fontset in the first extra slot of the returned char-table.
13122
13123 * xfaces.c (generate_ascii_font_name): Move to fontset.c.
13124 (font_name_registry): Delete function.
13125 (split_font_name_into_vector): New function.
13126 (build_font_name_from_vector): New function.
13127 (font_list): The argument REGISTRY is now a list of registry names.
13128 (choose_face_font): If we are choosing an ASCII font, and ATTRS
13129 specifies an explicit font name, return the name as is. Make a
13130 list of registy names.
13131
13132 * xfns.c (x_set_font, x_create_tip_frame): Adjust for the change
13133 of x_new_fontset.
13134 (Fx_create_frame): Don't call x_new_fontset here. Just use
13135 x_list_fonts to check the existence of fonts.
13136
13137 * xterm.h (x_new_fontset): Adjust prototype.
13138
13139 * xterm.c (x_new_fontset): Change the arg FONTSETNAME to Lisp
13140 string. Use new_fontset_from_font_name to create a fontset from a
13141 font name.
13142
131432008-02-01 Kenichi Handa <handa@m17n.org>
13144
13145 * syntax.c (Vfind_word_boundary_function_table): New name for
13146 Vnext_word_boundary_function_table.
13147 (find-word-boundary-function-table): New name for
13148 next-word-boundary-function-table.
13149
131502008-02-01 Dave Love <fx@gnu.org>
13151
13152 * Makefile.in: Fix some dependencies.
13153
13154 * keymap.c (Fapropos_internal): Don't gcpro apropos_predicate but
13155 set it to nil before returning.
13156
13157 * composite.c (update_compositions): Fix type error.
13158
13159 * syntax.c (skip_chars, skip_syntaxes): Fix type errors.
13160
131612008-02-01 Kenichi Handa <handa@m17n.org>
13162
13163 * xterm.c (x_new_font): Optimize for the case that the font is
13164 already set for the frame.
13165
131662008-02-01 Kenichi Handa <handa@m17n.org>
13167
13168 * chartab.c (char_table_ascii): Check if the char table contents
13169 is sub-char-table or not.
13170 (char_table_set, char_table_set_range): Fix argument to
13171 char_table_ascii.
13172
13173 * coding.c (CATEGORY_MASK_RAW_TEXT): New macro.
13174 (detect_coding_utf_8, detect_coding_utf_16)
13175 (detect_coding_emacs_mule, detect_coding_iso_2022)
13176 (detect_coding_sjis, detect_coding_big5)
13177 (detect_coding_ccl, detect_coding_charset): Change argument MASK
13178 to DETECT_INFO. Update DETECT_INFO and return 1 if the byte
13179 sequence is valid in this coding system. Change callers.
13180 (MAX_ANNOTATION_LENGTH): New macro.
13181 (ADD_ANNOTATION_DATA): New macro.
13182 (ADD_COMPOSITION_DATA): Change argument. Change callers. Call
13183 ADD_ANNOTATION_DATA. Change the format of annotation data.
13184 (ADD_CHARSET_DATA): New macro.
13185 (emacs_mule_char): New argument ID. Change callers.
13186 (decode_coding_emacs_mule, decode_coding_iso_2022)
13187 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
13188 Produce charset annotation data in coding->charbuf.
13189 (encode_coding_emacs_mule, encode_coding_iso_2022): Pay attention
13190 to charset annotation data in coding->charbuf.
13191 (setup_coding_system): Add CODING_ANNOTATE_CHARSET_MASK
13192 coding->common_flags if the coding system is iso-2022 based and
13193 uses designation.
13194 (produce_composition): Adjust for the new annotation data format.
13195 (produce_charset): New function.
13196 (produce_annotation): Handle charset annotation.
13197 (handle_composition_annotation, handle_charset_annotation): New
13198 functions.
13199 (consume_chars): Handle charset annotation. Utilize the above two
13200 functions.
13201 (encode_coding_object): If SRC_OBJECT and DST_OBJECT are the same
13202 buffer, get the deleted text as a string and set
13203 coding->src_object to that string.
13204 (detect_coding, detect_coding_system): Use the new struct
13205 coding_detection_info.
13206
13207 * coding.h (struct coding_detection_info): New structure.
13208 (struct coding_system): Adjust prototype of the member `detector'.
13209 (CODING_ANNOTATE_CHARSET_MASK): New macro.
13210
132112008-02-01 Kenichi Handa <handa@m17n.org>
13212
13213 * insdel.c (insert_from_gap): Fix argument to offset_intervals.
13214
132152008-02-01 Dave Love <fx@gnu.org>
13216
13217 * keymap.c (apropos_predicate, apropos_accumulate): Declare static.
13218 (Fapropos_internal): Don't gcpro apropos_accumulate. Set result
13219 to new local and nullify apropos_accumulate before returning.
13220 (syms_of_keymap): Staticpro and initialize apropos_accumulate.
13221
132222008-02-01 Kenichi Handa <handa@m17n.org>
13223
13224 * charset.c (Fdefine_charset_internal): Setup charset.fast_map
13225 correctly.
e3eea1fc 13226
aac0c6e3
MR
132272008-02-01 Dave Love <fx@gnu.org>
13228
13229 * fns.c (Flanginfo): Call synchronize_system_time_locale.
13230
132312008-02-01 Kenichi Handa <handa@m17n.org>
13232
13233 The following changes are to make character composition happen
13234 automatically on displaying.
13235
13236 * Makefile.in (lisp, shortlisp): Add composite.elc.
13237
13238 * composite.h (Qauto_composed, Vauto_composition_function)
13239 (Qauto_composition_function): Extern them.
13240
13241 * composite.c (Vcomposition_function_table)
13242 (Qcomposition_function_table): Delete variables.
13243 (Qauto_composed, Vauto_composition_function)
13244 (Qauto_composition_function): New variables.
13245 (run_composition_function): Don't call
13246 compose-chars-after-function.
13247 (update_compositions): Clear `auto-composed' text property.
13248 (compose_chars_in_text): Delete this function.
13249 (syms_of_composite): Staticpro Qauto_composed and
13250 Qauto_composition_function. Declare Vauto_composition_function as
13251 a Lisp variable.
13252
13253 * dispextern.h (enum prop_idx): Add member AUTO_COMPOSED_PROP_IDX.
13254
13255 * xdisp.c (it_props): Add an entry for Qauto_composed.
13256 (handle_auto_composed_prop): New function.
13257
13258 * xselect.c (selection_data_to_lisp_data): Don't call
13259 compose_chars_in_text.
13260
132612008-02-01 Dave Love <fx@gnu.org>
13262
13263 * keyboard.c (read_char): Modify checking around use of
13264 Vkeyboard_translate_table.
13265
13266 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
13267 and fix C types.
13268
132692008-02-01 Kenichi Handa <handa@m17n.org>
13270
13271 * coding.c (decode_coding_utf_8, decode_coding_emacs_mule)
13272 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
13273 (decode_coding_charset, produce_chars): When eol_type is Qdos, handle
13274 the case that the last byte is '\r' correctly.
13275 (decode_coding): Flush out the unprocessed data correctly.
13276 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK bit of coding->mode.
13277
132782008-02-01 Dave Love <fx@gnu.org>
13279
13280 * xterm.c (XTread_socket): Fix changes for defined keysyms.
13281 Add XK_ISO... case.
13282 (xaw_scroll_callback): Revert last change.
13283
132842008-02-01 Kenichi Handa <handa@m17n.org>
13285
13286 * charset.c (Fset_charset_priority): Update Viso_2022_charset_list.
13287
132882008-02-01 Kenichi Handa <handa@m17n.org>
13289
13290 * xfaces.c (Vface_resizing_fonts): New variable.
13291 (struct font_name): New member `resizing_ratio'.
13292 (font_resizing_ratio): New function.
13293 (split_font_name): Set font->resizing_ratio.
13294 (better_font_p): Pay attention to font->resizing_ratio.
13295 (build_scalable_font_name): Likewise. Don't change POINT_SIZE,
13296 RESX, and RESY fields.
13297 (try_alternative_families): Try scalable fonts if
13298 Vscalable_fonts_allowed is not Qt.
13299 (syms_of_xfaces): Declare Vface_resizing_fonts as a Lisp variable.
13300
133012008-02-01 Dave Love <fx@gnu.org>
13302
13303 * xterm.c (xaw_scroll_callback): Cast correctly.
13304
133052008-02-01 Dave Love <fx@gnu.org>
13306
13307 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extend.
13308 (lispy_kana_keys): Comment out.
13309 (make_lispy_event) [XK_kana_A]: Comment out.
13310
13311 * xterm.c (xaw_scroll_callback): Cast call_data.
13312 (XTread_socket): Deal with ASCII keysyms.
13313 (syms_of_xterm) <Vx_keysym_table>: Fix args of make_hash_table.
13314
133152008-02-01 Dave Love <fx@gnu.org>
13316
13317 * xterm.c (Vx_keysym_table): New.
13318 (syms_of_xterm): Initialize it.
13319 (XTread_socket): Use it.
13320 From head: Eliminate incorrect optimization that tried to avoid
13321 decoding the output of X*LookupString.
13322 (x_get_font_repertory): Delete charset declaration.
13323
133242008-02-01 Kenichi Handa <handa@m17n.org>
13325
13326 * coding.c (detect_coding_charset): If only ASCII bytes are found,
13327 return 0.
13328 (Fdefine_coding_system_internal): Setup
13329 CODING_ATTR_ASCII_COMPAT (attrs) correctly.
13330
133312008-02-01 Dave Love <fx@gnu.org>
13332
13333 * coding.c (Fcheck_coding_system): Doc fix.
13334
13335 * editfns.c (Finsert_byte): Return a proper value.
13336
133372008-02-01 Kenichi Handa <handa@m17n.org>
13338
13339 * coding.c (decode_coding): Fix args to translate_chars. Pay
13340 attention to Vstandard_translation_table_for_decode.
13341 (encode_coding): Fix args to translate_chars. Pay attention to
13342 Vstandard_translation_table_for_encode.
13343
13344 * data.c (Faset): Check NEWELT by ASCII_CHAR_P, not by
13345 SINGLE_BYTE_CHAR_P.
13346
13347 * editfns.c (general_insert_function): Check VAL by ASCII_CHAR_P,
13348 not by SINGLE_BYTE_CHAR_P.
13349
13350 * fns.c (concat): Check CH by ASCII_CHAR_P, not by
13351 SINGLE_BYTE_CHAR_P.
13352
13353 * insdel.c (copy_text): Check C by ASCII_CHAR_P, not by
13354 SINGLE_BYTE_CHAR_P.
13355
13356 * keymap.c (Ftext_char_description): Check C by ASCII_CHAR_P, not
13357 by SINGLE_BYTE_CHAR_P.
13358
13359 * search.c (Freplace_match): Check C by ASCII_CHAR_P, not by
13360 SINGLE_BYTE_CHAR_P.
13361
133622008-02-01 Dave Love <fx@gnu.org>
13363
13364 * fns.c (Fstring_as_multibyte, Fstring_to_multibyte): Doc fix.
13365
133662008-02-01 Dave Love <fx@gnu.org>
13367
13368 * fns.c (Flanginfo): Fix typo.
13369
13370 * unexelf.c (unexec): Make last change conditional on Irix 6.5.
13371
133722008-02-01 Kenichi Handa <handa@m17n.org>
13373
13374 * coding.c (detect_coding_utf_8, detect_coding_utf_16)
13375 (detect_coding_emacs_mule, detect_coding_iso_2022)
13376 (detect_coding_sjis, detect_coding_big5, detect_coding_ccl): Check
13377 incomplete byte sequence. Don't update *mask when correctly detected.
13378 (decode_coding_sjis): Fix decoding of katakana-jisx0201.
13379 (detect_eol): Delete the argument CODING, and add the argument CATEGORY.
13380 (detect_coding, detect_coding_system): Adjust for the changes above.
13381
133822008-02-01 Kenichi Handa <handa@m17n.org>
13383
13384 * character.c (char_string): Rename from
13385 char_string_with_unification. Pay attention to CHAR_MODIFIER_MASK.
13386 (string_char): Rename from string_char.
13387
13388 * character.h (CHAR_STRING, CHAR_STRING_ADVANCE): Call char_string
13389 if C is greater than MAX_3_BYTE_CHAR.
13390 (STRING_CHAR, STRING_CHAR_AND_LENGTH, STRING_CHAR_ADVANCE): Call
13391 string_char instead of string_char_with_unification.
13392
133932008-02-01 Dave Love <fx@gnu.org>
13394
13395 * coding.c (decode_coding_utf_8): Treat surrogates as invalid.
13396
133972008-02-01 Kenichi Handa <handa@m17n.org>
13398
13399 * keymap.c (push_key_description): Pay attention to force_multibyte.
13400
13401 * regex.c (re_search_2): Fix for the case of unibyte buffer.
13402
134032008-02-01 Dave Love <fx@gnu.org>
13404
13405 * charset.c (define_charset_internal): Rename `supprementary'.
13406
13407 * Makefile.in (lisp, shortlisp): Remove latin-N.
13408
134092008-02-01 Dave Love <fx@gnu.org>
13410
13411 * xfns.c (x_window, x_window): Use use_xim.
13412
13413 * xterm.c (use_xim): Initialize.
13414 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
13415 (x_term_init): Maybe set use_xim.
13416
13417 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
13418
134192008-02-01 Kenichi Handa <handa@m17n.org>
13420
13421 * search.c (search_buffer): Fix case-fold-search of multibyte
13422 characters.
13423 (boyer_moore): Rename the last argument to char_high_bits.
13424
134252008-02-01 Kenichi Handa <handa@m17n.org>
13426
13427 * xdisp.c (display_string): Fix for the case of zero width glyph.
13428
13429 * xfns.c (x_set_font): Change the error message of the case that
13430 x_new_fontset returns Qt.
13431
13432 * xfaces.c (set_lface_from_font_name): Reject the default fontset.
13433 (Finternal_set_lisp_face_attribute): Use signal_error for the
13434 error of invalid fontset.
13435
13436 * xterm.c (x_new_fontset): If FONTSETNAME specifies the default
13437 fontset, return Qt.
13438
134392008-02-01 Dave Love <fx@gnu.org>
13440
13441 * unexelf.c (unexec): Make .got handling not SGI-specific.
13442
13443 * syntax.c (syms_of_syntax) <multibyte-syntax-as-symbol>: Doc fix.
13444
13445 * regex.c: Use `ifdef HAVE_ALLOCA_H', not `if HAVE_ALLOCA_H'.
13446
13447 * keyboard.c (read_key_sequence): Fix type error.
13448
13449 * buffer.c (Fset_buffer_multibyte, Fset_buffer_multibyte): Fix
13450 type error.
13451
13452 * fontset.c (fontset_add): Return Lisp_Object.
13453
134542008-02-01 Dave Love <fx@gnu.org>
13455
13456 * charset.h (charset_ordered_list_tick): Declare extern.
13457
134582008-02-01 Kenichi Handa <handa@m17n.org>
13459
13460 The following changes (and some of 2008-02-01 changes of mine) are
13461 for handling syntax, category, and case conversion for unibyte
13462 characters by converting them to multibyte on the fly. With these
13463 changes, we don't have to setup syntax and case tables for unibyte
13464 characters in each language environment.
13465
13466 * abbrev.c (Fexpand_abbrev): Convert a unibyte character to
13467 multibyte if necessary.
13468
13469 * bytecode.c (Fbyte_code): Likewise.
13470
13471 * character.h (LEADING_CODE_LATIN_1_MIN)
13472 (LEADING_CODE_LATIN_1_MAX): New macros.
13473 (unibyte_to_multibyte_table): Extern it.
13474 (unibyte_char_to_multibyte): New macro.
13475 (MAKE_CHAR_MULTIBYTE): Use unibyte_to_multibyte_table.
13476 (CHAR_LEADING_CODE): New macro.
13477 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): New macro.
13478
13479 * character.c (unibyte_to_multibyte_table): New variable.
13480 (unibyte_char_to_multibyte): Move to character.h and define as macro.
13481 (multibyte_char_to_unibyte): If C is an eight-bit character,
13482 convert it to the corresponding byte value.
13483
13484 * charset.c (Fset_unibyte_charset): If the dimension of CHARSET is
13485 not 1, signals an error. Update the elements of
13486 unibyte_to_multibyte_table.
13487 (init_charset_once): Initialize unibyte_to_multibyte_table.
13488 (syms_of_charset): Define the charset `iso-8859-1'.
13489
13490 * cmds.c (internal_self_insert): In a multibyte buffer, insert C
13491 as is without converting it to unibyte. In a unibyte buffer,
13492 convert C to multibyte before checking the syntax.
13493
13494 * lisp.h (unibyte_char_to_multibyte): Delete extern.
13495
13496 * minibuf.c (Fminibuffer_complete_word): Use the macro
13497 FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE.
13498
13499 * regex.h (struct re_pattern_buffer): New member target_multibyte.
13500
13501 * regex.c (RE_TARGET_MULTIBYTE_P): New macro.
13502 (GET_CHAR_BEFORE_2): Check target_multibyte, not multibyte. If
13503 that is zero, convert an eight-bit char to multibyte.
13504 (MAKE_CHAR_MULTIBYTE, CHAR_LEADING_CODE): New dummy new macros for
13505 non-emacs case.
13506 (PATFETCH): Convert an eight-bit char to multibyte.
13507 (HANDLE_UNIBYTE_RANGE): New macro.
13508 (regex_compile): Setup the compiled pattern for multibyte chars
13509 even if the given regex string is unibyte. Use PATFETCH_RAW
13510 instead of PATFETCH in many places. To handle `charset'
13511 specification of unibyte, call HANDLE_UNIBYTE_RANGE. Use bitmap
13512 only for ASCII chars.
13513 (analyse_first) <exactn>: Simplify because the compiled pattern
13514 is multibyte.
13515 <charset_not>: Setup fastmap from bitmap only for ASCII chars.
13516 <charset>: Use CHAR_LEADING_CODE to get leading codes.
13517 <categoryspec>: If multibyte, setup fastmap only for ASCII chars here.
13518 (re_compile_fastmap) [emacs]: Call analyse_first with the arg
13519 multibyte always 1.
13520 (re_search_2): In emacs, set the locale variable multibyte to 1,
13521 otherwise to 0. New local variable target_multibyte. Check it
13522 to decide the multibyteness of STR1 and STR2. If
13523 target_multibyte is zero, convert unibyte chars to multibyte
13524 before translating and checking fastmap.
13525 (TARGET_CHAR_AND_LENGTH): New macro.
13526 (re_match_2_internal): In emacs, set the locale variable multibyte
13527 to 1, otherwise to 0. New local variable target_multibyte. Check
13528 it to decide the multibyteness of STR1 and STR2. Use
13529 TARGET_CHAR_AND_LENGTH to fetch a character from D.
13530 <charset, charset_not>: If multibyte is nonzero, check fastmap
13531 only for ASCII chars. Call bcmp_translate with
13532 target_multibyte, not with multibyte.
13533 <begline>: Declare the local variable C as `unsigned'.
13534 (bcmp_translate): Change the last arg name to target_multibyte.
13535
13536 * search.c (compile_pattern_1): Don't adjust the multibyteness of
13537 the regexp pattern and the matching target. Set cp->buf.multibyte
13538 to the multibyteness of the regexp pattern. Set
13539 cp->but.target_multibyte to the multibyteness of the matching target.
13540 (wordify): Use FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE instead of
13541 FETCH_STRING_CHAR_ADVANCE.
13542 (Freplace_match): Convert unibyte chars to multibyte.
13543
13544 * syntax.c (char_quoted, back_comment, scan_words)
13545 (Fforward_comment, scan_lists, Fbackward_prefix_chars)
13546 (scan_sexps_forward): Use FETCH_CHAR_AS_MULTIBYTE to convert
13547 unibyte chars to multibyte.
13548 (skip_chars): Delete the arg syntaxp, and move the code for
13549 handling syntaxes to skip_syntaxes. Change callers.
13550 Fix the case that the multibyteness of STRING and the current
13551 buffer doesn't match.
13552 (skip_syntaxes): New function.
13553 (SYNTAX_WITH_MULTIBYTE_CHECK): Check C by ASCII_CHAR_P, not by
13554 SINGLE_BYTE_CHAR_P.
13555
135562008-02-01 Kenichi Handa <handa@m17n.org>
13557
13558 * xfaces.c (QCfontset): New variable.
13559 (LFACE_FONTSET): New macro.
13560 (check_lface_attrs): Check also LFACE_FONTSET_INDEX.
13561 (set_lface_from_font_name): Setup LFACE_FONTSET (lface).
13562 (Finternal_set_lisp_face_attribute)
13563 (Finternal_get_lisp_face_attribute): Handle QCfontset.
13564 (lface_same_font_attributes_p): Fix checking of LFACE_FONT_INDEX,
13565 check also LFACE_FONTSET_INDEX.
13566 (face_fontset): Check attrs[LFACE_FONTSET_INDEX], not
13567 attrs[LFACE_FONT_INDEX].
13568 (syms_of_xfaces): Intern and staticpro QCfontset.
13569
13570 * dispextern.h (enum lface_attribute_index): New member
13571 LFACE_FONTSET_INDEX.
13572
13573 * fns.c (base64_encode_1): Handle eight-bit chars correctly.
13574
135752008-02-01 Kenichi Handa <handa@m17n.org>
13576
13577 * coding.c (coding_set_destination): Fix coding->destination for
13578 the case converting a region.
13579 (encode_coding_utf_8): Encode eight-bit chars as single byte.
13580 (encode_coding_object): Fix coding->dst_pos and
13581 coding->dst_pos_byte for the case converting a region.
13582
13583 * insdel.c (insert_from_gap): Make it work even if PT != GTP.
13584
13585 * character.h (BYTE8_STRING): New macro.
13586
13587 * fns.c (base64_decode_1): Insert eight-bit chars correctly.
13588
135892008-02-01 Kenichi Handa <handa@m17n.org>
13590
13591 * xdisp.c (get_next_display_element): Don't display unibyte 8-bit
13592 characters by octal form.
13593
13594 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
13595
13596 * buffer.h (_fetch_multibyte_char_len): Delete extern.
13597 (FETCH_MULTIBYTE_CHAR, BUF_FETCH_MULTIBYTE_CHAR): Don't use
13598 _fetch_multibyte_char_len.
13599 (FETCH_CHAR_AS_MULTIBYTE): New macro.
13600
13601 * casetab.c (set_canon, set_identity, shuffle): Simplify.
13602
13603 * casefiddle.c (casify_object): Simplify. Handle the case that
13604 the case conversion change the byte length.
13605 (casify_region): Likewise.
13606
13607 * character.h (MAKE_CHAR_UNIBYTE, MAKE_CHAR_MULTIBYTE): New macros.
13608
13609 * character.c (_fetch_multibyte_char_len): Delete this variable.
13610 (syms_of_character): Setup Vprintable_chars.
13611
13612 * editfns.c (Fchar_equal): Fix for the unibyte case.
13613 (Finsert_byte): New function.
13614 (syms_of_editfns): Defsubr it.
13615
13616 * keyboard.c (read_key_sequence): Use ~CHAR_MODIFIER_MASK instead
13617 of direct code 0x3ffff.
13618
13619 * search.c (Freplace_match): Fix for the unibyte case.
13620
136212008-02-01 Kenichi Handa <handa@m17n.org>
13622
13623 * lread.c (safe_to_load_p): Fix the logic.
13624
13625 * syntax.c (scan_words): Don't treat characters belonging to
13626 different scripts as constituting a word.
13627
13628 * editfns.c (Fformat): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
13629
13630 * fontset.c (Fset_fontset_font): Treat `ascii' as charset, not script.
13631
13632 * emacs.c (main): In the case of --unibyte, instead of aborting on
13633 finding non-empty buffer, make it unibyte.
13634
136352008-02-01 Kenichi Handa <handa@m17n.org>
13636
13637 * xterm.c (x_new_fontset): Call `create-fontset-from-ascii-font'
13638 to create a fontset.
13639
136402008-02-01 Dave Love <fx@gnu.org>
13641
13642 * character.c (Funibyte_char_to_multibyte): Doc fix.
13643
13644 * xfns.c [HAVE_STDLIB_H]: Fix last change.
13645
136462008-02-01 Kenichi Handa <handa@m17n.org>
13647
13648 * fontset.c (fontset_add): Make the type `int'.
13649 (fontset_id_valid_p): Define it if FONTSET_DEBUG is defined.
13650
13651 * character.c (unibyte_char_to_multibyte)
13652 (multibyte_char_to_unibyte, Funibyte_char_to_multibyte): Refer to
13653 charset_unibyte, not charset_primary.
13654
13655 * charset.h (charset_unibyte): Extern it instead of charset_primary.
13656
13657 * charset.c (charset_unibyte): Rename from charset_primary.
13658 (Funibyte_charset): Rename from Fprimary_charset.
13659 (Fset_unibyte_charset): Rename from Fset_primary_charset.
13660 (syms_of_charset): Adjust for the above changes.
13661
13662 * w32term.c (x_produce_glyphs): Use ASCII_CHAR_P, not
13663 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
13664 it->multibyte_p is zero.
13665
13666 * lisp.h (nonascii_insert_offset, Vnonascii_translation_table):
13667 Delete extern.
13668
136692008-02-01 Kenichi Handa <handa@m17n.org>
13670
13671 * coding.c (Fdefine_coding_system_internal): Fix category setting
13672 for a coding system of type iso-2022.
13673
136742008-02-01 Kenichi Handa <handa@m17n.org>
13675
13676 * fontset.h (FS_LOAD_FONT): Call fs_load_font with the arg CHARSET -1.
13677
136782008-02-01 Kenichi Handa <handa@m17n.org>
13679
13680 * syntax.c (Vnext_word_boundary_function_table): New variable.
13681 (next-word-boundary-function-table): Declare it as a Lisp variable
13682 in syms_of_syntax.
13683 (scan_words): Call functions in Vnext_word_boundary_function_table
13684 if any.
13685
13686 * xterm.c (x_load_font): Initialize fontp->fontset to -1.
13687
13688 * fontset.c (fs_load_font): If fontp->charset is not negative,
13689 return fontp without setting its members.
13690
136912008-02-01 Dave Love <fx@gnu.org>
13692
13693 * xfns.c [HAVE_STDLIB_H]: Change logic (instead of fixing typo).
13694
13695 * m/sparc.h (HAVE_ALLOCA): Delete.
13696
13697 * s/irix6-5.h: Don't include strings.h.
13698 (bcopy, bzero, bcmp): Don't undef.
13699
13700 * s/irix6-0.h (bcopy, bzero, bcmp): Don't undef.
13701
13702 * s/usg5-4.h (NO_SIOCTL_H): Don't define.
13703 (TIOCSIGSEND): Don't test IRIX6.
13704 (bcopy, bzero, bcmp): Define conditionally.
13705
137062008-02-01 Kenichi Handa <handa@m17n.org>
13707
13708 * buffer.c (Qas, Qmake, Qto): New variables.
13709 (Fset_buffer_multibyte): New optional arg METHOD. Change caller.
13710 (syms_of_buffer): Intern and staticpro Qas, Qmake, and Qto.
13711
13712 * callproc.c (Fcall_process): Don't call insert_1_both directly if
13713 we are inserting a process output into a multibyte buffer.
13714
13715 * character.h (CHAR_TO_BYTE8): If C is not eight-bit char, call
13716 multibyte_char_to_unibyte.
13717
13718 * character.c (Funibyte_char_to_multibyte): If C can't be decoded
13719 by the primary charset, make it eight-bit char.
13720 (Fmultibyte_char_to_unibyte): Call CHAR_TO_BYTE8.
13721
13722 * charset.c (charset_eight_bit, Qeight_bit_control): New variables.
13723 (charset_8_bit__control, charset_8_bit_graphic)
13724 (Qeight_bit_control, Qeight_bit_graphic): Delete these variables.
13725 (define_charset_internal): New function.
13726 (syms_of_charset): Call define_charset_internal for pre-defined
13727 charsets.
13728
13729 * charset.h (charset_8_bit): Extern it.
13730
13731 * coding.c (make_conversion_work_buffer): Adjust for the change
13732 of Fset_buffer_multibyte.
13733 (encode_coding_raw_text): Increment p0 in the loop.
13734
13735 * lisp.h (Fset_buffer_multibyte): Adjust prototype.
13736
13737 * xdisp.c (setup_echo_area_for_printing, set_message_1): Adjust
13738 for the change of Fset_buffer_multibyte.
13739
13740 * fns.c (Fstring_to_multibyte): New function.
13741 (syms_of_fns): Declare Fstring_to_multibyte as Lisp subroutine.
13742
137432008-02-01 Dave Love <fx@gnu.org>
13744
13745 * xfns.c (x_put_x_image): Declare args.
13746
13747 * xfaces.c (font_name_registry, choose_face_font): Delete unused vars.
13748 (try_font_list): Declare an arg.
13749
13750 * xdisp.c (message2_nolog, set_message): Declare an arg.
13751
13752 * terminfo.c (tparam): Declare an arg. Use P_ to declare tparm.
13753
13754 * syntax.c (scan_sexps_forward): Declare an arg.
13755
13756 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
13757 Declare an arg.
13758
13759 * lisp.h (Fnew_fontset): Declare.
13760
13761 * keymap.c (push_key_description): Call CHARACTERP correctly.
13762
13763 * fontset.c (fontset_add): Declare args. Call make_number correctly.
13764 (face_for_char): Delete unused vars.
13765 (Fset_fontset_font): Doc fix. Delete unused vars.
13766
13767 * doc.c (Fsubstitute_command_keys): Delete unused vars.
13768
13769 * composite.c (update_compositions): Declare arg.
13770
13771 * cm.c (calccost, cmgoto): Declare args.
13772
13773 * charset.c: Remove `emacs' conditional. Doc fixes.
13774 (map_char_table_for_charset): Declare.
13775
13776 * character.c (syms_of_character) <translation-table-vector>: Doc fix.
13777
13778 * ccl.c: Remove `emacs' conditional.
13779
137802008-02-01 Kenichi Handa <handa@m17n.org>
13781
13782 The following changes are to allow specifying multiple font
13783 patterns for a character range (specified by script or charset).
13784
13785 * Makefile.in (abbrev.o): Depend on syntax.h.
13786 (xfaces.o): Depend on charset.h.
13787
13788 * alloc.c (Fmake_string): Use ASCII_CHAR_P, not
13789 SINGLE_BYTE_CHAR_P.
13790
13791 * ccl.c (Fccl_execute_on_string): Add `const' to local variables.
13792
13793 * character.h (Vchar_script_table): Extern it.
13794
13795 * character.c (Vscript_alist): Delete.
13796 (Vchar_script_table, Qchar_script_table): New variable.
13797 (syms_of_character): Declare Vchar_script_table as a lisp variable
13798 and initialize it.
13799
13800 * chartab.c (Fmake_char_table): Doc fix. If PURPOSE doesn't
13801 have property char-table-extra-slots, make no extra slot.
13802
13803 * dispextern.h (struct face): Delete member `charset'.
13804 (FACE_SUITABLE_FOR_CHAR_P, FACE_FOR): Use ASCII_CHAR_P, not
13805 SINGLE_BYTE_CHAR_P.
13806 (choose_face_font, lookup_non_ascii_face, font_name_registry):
13807 Add prototypes.
13808 (lookup_face, lookup_named_face, lookup_derived_face): Fix prototype.
13809 (generate_ascii_font_name): Rename from generate_ascii_font.
13810
13811 * fontset.h (get_font_repertory_func): New prototype.
13812 (make_fontset_for_ascii_face, fs_load_font): Fix prototypes.
13813 (FS_LOAD_FONT): Call fs_load_font with the 3rd arg charset_ascii.
13814
13815 * fontset.c (Qprepend, Qappend): New variables.
13816 (FONTSET_CHARSET_ALIST, FONTSET_FACE_ALIST): Delete.
13817 (FONTSET_NOFONT_FACE, FONTSET_REPERTORY): New macros.
13818 (FONTSET_REF): Optimize if FONTSET is Vdefault_fontset.
13819 (FONTSET_REF_AND_RANGE, FONTSET_ADD): New macros.
13820 (fontset_ref_and_range, fontset_add, reorder_font_vector)
13821 (load_font_get_repertory): New functions.
13822 (fontset_set): Delete.
13823 (fontset_face): New arg FACE. Return face ID, not face.
13824 Complete re-write to handle new fontset structure. Change caller.
13825 (free_face_fontset): Use ASET istead of AREF (X) = Y.
13826 (face_for_char): Don't call lookup_face.
13827 (make_fontset_for_ascii_face): New arg FACE.
13828 (fs_load_font): New arg CHARSET_ID. Don't check
13829 Vfont_encoding_alist here.
13830 (find_font_encoding): New function.
13831 (list_fontsets): Use STRINGP, not ! NILP.
13832 (accumulate_script_ranges): New function.
13833 (Fset_fontset_font, Fnew_fontset, Ffontset_info): Completely
13834 re-written to handle new fontset structure.
13835 (Ffontset_font): Return a copy of element.
13836 (syms_of_fontset): Define symbols Qprepend and Qappend. Fix
13837 docstring of font-encoding-alist.
13838
13839 * lisp.h (CHAR_TABLE_REF): Remove unnecessary check (IDX >= 0).
13840 (Fset_fotset_font): Fix arguments to 5.
13841
13842 * msdos.c (XMenuActivate): Adjust for the change of lookup_derived_face.
13843
13844 * xdisp.c (message_dolog, set_message_1, extend_face_to_end_of_line):
13845 Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
13846 (highlight_trailing_whitespace): Adjust for the change of
13847 lookup_named_face.
13848
13849 * xfaces.c: Include charset.h.
13850 (load_face_font): Delete argument C. Change caller.
13851 (generate_ascii_font_name): Rename from generate_ascii_font.
13852 (font_name_registry): New function.
13853 (cache_face): Store ascii faces before non-ascii faces in buckets.
13854 (lookup_face): Delete arguments C and BASE_FACE. Change caller.
13855 Lookup only ascii faces.
13856 (lookup_non_ascii_face): New function.
13857 (lookup_named_face): Delete argument C. Change caller.
13858 (lookup_derived_face): Delete argument C. Change caller.
13859 (try_font_list): New arg PATTERN. Change caller. If PATTERN is
13860 a string, just call font_list with it.
13861 (choose_face_font): Delete arguments FACE and C. New arg
13862 FONT_SPEC. Change caller.
13863 (realize_face, realize_x_face): Delete arguments C and BASE_FACE.
13864 Change caller.
13865 (realize_non_ascii_face): New function.
13866 (realize_x_face): Call load_face_font here.
13867 (realize_tty_face): Delete argument C. Change caller.
13868 (compute_char_face): If CH is not ascii, call FACE_FOR_CHAR to
13869 get a face ID.
13870 (dump_realized_face): Don't print charset of FACE.
13871
13872 * xfns.c (x_set_font): Always call x_new_fontset and
13873 store_frame_parameter.
13874 (Fx_create_frame): Call x_new_fontset, not x_new_font.
13875 (syms_of_xfns): Set get_font_repertory_func to x_get_font_repertory.
13876
13877 * xterm.h (x_get_font_repertory): Extern it.
13878
13879 * xterm.c (x_produce_glyphs): Use ASCII_CHAR_P, not
13880 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
13881 it->multibyte_p is zero.
13882 (XTread_socket): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
13883 (x_new_fontset): If FONTSETNAME doesn't match any existing
13884 fontsets, create a new one.
13885 (x_get_font_repertory): New function.
13886
138872008-02-01 Kenichi Handa <handa@m17n.org>
13888
13889 * coding.c (Ffind_coding_systems_region_internal): Detect an
13890 ASCII only string correctly.
13891
13892 * lread.c (Fload): Don't load with Qload_force_doc_strings t if
13893 version is 0.
13894
138952008-02-01 Kenichi Handa <handa@m17n.org>
13896
13897 * lread.c: Include "coding.h".
13898 (Qget_emacs_mule_file_char, Qload_force_doc_strings)
13899 (load_each_byte, unread_char): New variables.
13900 (readchar_backlog): Delete.
13901 (readchar): Return a character unless load_each_byte is nonzero.
13902 Handle the case that readcharfun is Qget_emacs_mule_file_char or a
13903 cons. If unread_char is not -1, simply return it.
13904 (unreadchar): Handle the case that readcharfun is
13905 Qget_emacs_mule_file_char or a cons. Set unread_char if necessary.
13906 (read_multibyte): Delete.
13907 (readbyte_for_lambda, readbyte_from_file, readbyte_from_string)
13908 (read_emacs_mule_char): New functions.
13909 (Fload): Even if the file doesn't have the extension ".elc", if
13910 safe_to_load_p returns a positive version number, assume that the
13911 file contains bytecompiled code. If the version is less than 22,
13912 load the file while decoding multibyte sequences by emacs-mule.
13913 (readevalloop): Don't use readchar_backlog.
13914 (Fread): Likewise. Pay attention to the case that STREAM is a cons.
13915 (Fread_from_string): Pay attention to the case that STREAM is a cons.
13916 (read_escape): Delete the arg BYTEREP.
13917 (read1): Set load_each_byte to 1 temporarily while handling
13918 #@NUMBER. Don't call read_multibyte.
13919 (read_vector): Call Fread with a cons. If readcharfun is
13920 Qget_emacs_mule_file_char, decode the read string by emacs-mule.
13921 (read_list): If doc_reference is 2, make the cdr part string as unibyte.
13922 (syms_of_lread): Intern and staticpro Qget_emacs_mule_file_char
13923 and Qload_force_doc_strings.
13924
139252008-02-01 Kenichi Handa <handa@m17n.org>
13926
13927 * xdisp.c (face_before_or_after_it_pos): Call
13928 FETCH_MULTIBYTE_CHAR with byte postion, not char position.
13929
139302008-02-01 Kenichi Handa <handa@m17n.org>
13931
13932 * character.h (TRAILING_CODE_P): New macro.
13933 (MAYBE_UNIFY_CHAR): Adjust for the change of Funify_charset.
13934 (string_char_with_unification): Fix prototype.
13935 (Vscript_alist): Extern it.
13936
13937 * character.c (Vscript_alist): New variable.
13938 (string_char_with_unification, str_as_unibyte)
13939 (string_escape_byte8): Add `const' to local variables.
13940 (syms_of_character): Declare script-alist as a Lisp variable.
13941
13942 * charset.h (Vcharset_ordered_list): Extern it.
13943 (charset_ordered_list_tick): Extern it.
13944 (EMACS_MULE_LEADING_CODE_PRIVATE_11)
13945 (EMACS_MULE_LEADING_CODE_PRIVATE_12)
13946 (EMACS_MULE_LEADING_CODE_PRIVATE_21)
13947 (EMACS_MULE_LEADING_CODE_PRIVATE_22): New macros.
13948 (Funify_charset): Adjust for the change of Funify_charset.
13949
13950 * charset.c (charset_ordered_list_tick): New variable.
13951 (Fdefine_charset_internal): Increment charset_ordered_list_tick.
13952 (Funify_charset): New optional arg DEUNIFY. If it is non-nil,
13953 deunify intead of unify a charset.
13954 (string_xstring_p): Add `const' to local variables.
13955 (find_charsets_in_text): Add `const' to arguments and local variables.
13956 (encode_char): Adjust for the change of Funify_charset. Fix
13957 detecting of invalid code.
13958 (Fset_charset_priority): Increment charset_ordered_list_tick.
13959 (Fmap_charset_chars): Fix handling of default value for FROM_CODE
13960 and TO_CODE.
13961
13962 * coding.c (LEADING_CODE_PRIVATE_11, LEADING_CODE_PRIVATE_12)
13963 (LEADING_CODE_PRIVATE_21, LEADING_CODE_PRIVATE_22): Delete macros.
13964 Changed callers to use EMACS_MULE_LEADING_CODE_PRIVATE_11, etc.
13965 (decode_coding_ccl, consume_chars)
13966 (Ffind_coding_systems_region_internal)
13967 (Fcheck_coding_systems_region): Add `const' to local variables.
13968
13969 * print.c (print_object): Use octal form for printing the
13970 contents of a bool vector.
13971
139722008-02-01 Dave Love <fx@gnu.org>
13973
13974 * lread.c (Fload) <!load_dangerous_libraries>: Don't leak fd.
13975 <version == 20>: Refuse to load.
13976
139772008-02-01 Dave Love <fx@gnu.org>
13978
13979 * fns.c: Move coding.h.
13980 (Qcodeset, Qdays, Qmonths): New.
13981 (concat): Use CHARACTERP instead of INTEGERP.
13982 (Flocale_codeset): Delete.
13983 (Flanginfo): New function.
13984 (syms_of_fns): Change accordingly.
13985
13986 * coding.c (adjust_coding_eol_type): Fix eol_type/eol_seen mixup.
13987
139882008-02-01 Dave Love <fx@gnu.org>
13989
13990 * casetab.c (init_casetab_once, init_casetab_once): Fix
13991 CHAR_TABLE_SET call.
13992
13993 * category.c (Fmodify_category_entry): Fix CATEGORY_MEMBER call.
13994
13995 * character.c (syms_of_character): Fix CHAR_TABLE_SET call.
13996
13997 * charset.c (Fmap_charset_chars): Check args. Convert Lisp types.
13998 (load_charset_map, Fdeclare_equiv_charset, Fencode_char)
13999 (Fset_charset_priority, syms_of_charset): Convert Lisp types.
14000
14001 * charset.h (CHECK_CHARSET_GET_ID): Use XINT on AREF result.
14002
14003 * coding.c (ENCODE_DESIGNATION, decode_eol)
14004 (make_conversion_work_buffer, code_conversion_restore)
14005 (Fdefine_coding_system_internal): Convert Lisp types.
14006 (code_conversion_restore): Use EQ, not ==.
14007 (Fencode_coding_string): Fix code_convert_string call.
14008
14009 * coding.h (code_convert_region): Fix prototype.
14010
14011 * dispextern.h (redraw_frame, redraw_garbaged_frames): Remove.
14012
14013 * fontset.c (fontset_ref, fontset_set, fs_load_font)
14014 (Ffontset_info): Convert Lisp types.
14015
14016 * syntax.h (SYNTAX_ENTRY_INT): Don't use make_number.
14017
14018 * xterm.c (note_mouse_movement): Fix call of window_from_coordinates.
14019
14020 * xdisp.c (display_mode_element): Fix call of Fset_text_properties.
14021
14022 * chartab.c: Include "...h", not <...h> in some cases.
14023
14024 * callproc.c (Fcall_process): Remove unused variables.
14025
140262008-02-01 Dave Love <fx@gnu.org>
14027
14028 * coding.c (Fset_coding_system_priority): Allow null arg list.
14029
140302008-02-01 Dave Love <fx@gnu.org>
14031
14032 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
14033 (Fself_insert_and_exit): Use CHARACTERP.
14034
14035 * callproc.c (Fcall_process): Remove unused vars.
14036
14037 * xterm.c (XTread_socket): Add extra dead keysyms.
14038
14039 * xdisp.c (decode_mode_spec_coding): Use CHARACTERP.
14040
14041 * dispextern.h: Remove prototypes for redraw_frame,
14042 redraw_garbaged_frames.
14043
14044 * cmds.c (Fself_insert_command): Use CHARACTERP.
14045
14046 * chartab.c (make_sub_char_table): Remove unused var.
14047 (Fset_char_table_default, Fmap_char_table): Doc fix.
14048
14049 * keymap.c (access_keymap): Remove generic char code.
14050 (push_key_description): Use CHARACTERP.
14051
140522008-02-01 Dave Love <fx@gnu.org>
14053
14054 * charset.c: Doc fixes.
14055 (Funify_charset): Extra checking.
14056
140572008-02-01 Dave Love <fx@gnu.org>
14058
14059 * lread.c: Remove some unused variables.
14060 (safe_to_load_p): If safe, return the magic number version byte.
14061 (Fload): Maybe use load-with-code-conversion.
14062
140632008-02-01 Kenichi Handa <handa@m17n.org>
14064
14065 * category.c (Fmodify_category_entry): Don't modify the contents
14066 of category_set for characters out of the range. Avoid
14067 unnecessary modification.
14068
14069 * character.h (MAYBE_UNIFY_CHAR): Adjust for the change of
14070 Vchar_unify_table. The default value of the table is now nil.
14071
14072 * character.c (syms_of_character): Setup Vchar_width_table for
14073 eight-bit-control and raw-byte chars.
14074
14075 * charset.h (enum define_charset_arg_index): Delete
14076 charset_arg_parents and add charset_arg_subset and
14077 charset_arg_superset.
14078 (enum charset_attr_index): Delete charset_parents and add
14079 charset_subset and charset_superset.
14080 (enum charset_method): Delete CHARSET_METHOD_INHERIT and add
14081 CHARSET_METHOD_SUBSET and CHARSET_METHOD_SUPERSET.
14082 (CHARSET_ATTR_PARENTS, CHARSET_PARENTS): Delete.
14083 (CHARSET_ATTR_SUBSET, CHARSET_ATTR_SUPERSET, CHARSET_SUBSET)
14084 (CHARSET_SUPERSET): New macros.
14085 (charset_work): Extern it.
14086 (ENCODE_CHAR): Use charset_work.
14087 (CHAR_CHARSET_P): Adjust for the change of encoder format.
14088 (map_charset_chars): Extern it.
14089
14090 * charset.c (load_charset_map): Set the default value of encoder
14091 and deunifier char-tables to nil.
14092 (map_charset_chars): Change argument. Change callers. Use
14093 map_char_table_for_charset instead of map_char_table.
14094 (Fmap_charset_chars): New optional args from_code and to_code.
14095 (Fdefine_charset_internal): Adjust for the change of
14096 `define-charset' (:parents -> :subset or :superset).
14097 (charset_work): New variable.
14098 (encode_char, syms_of_charset): Adjust for the change of
14099 Fdefine_charset_internal.
14100 (Ffind_charset_string): Setup the vector `charsets' correctly.
14101
14102 * chartab.c (sub_char_table_ref_and_range): New arg default. Fix
14103 the previous change.
14104 (char_table_ref_and_range): Adjust for the above change.
14105 (map_sub_char_table_for_charset): New function.
14106 (map_char_table_for_charset): New function.
14107
14108 * keymap.c (describe_vector): Handle a char-table directly here.
14109 (describe_char_table): Delete.
14110
14111 * lisp.h (map_charset_chars): Delete.
14112
141132008-02-01 Dave Love <fx@gnu.org>
14114
14115 * fns.c (count_combining): Comment out (unused).
14116 (Flocale_codeset): New.
14117 (syms_of_fns): Defsubr it.
14118
14119 * config.in (HAVE_PTY_H, HAVE_SIZE_T, HAVE_LANGINFO_CODESET): New.
14120 (size_t): Remove.
14121
141222008-02-01 Dave Love <fx@gnu.org>
14123
14124 * Makefile.in (chartab.o): Depend on charset.h.
14125
141262008-02-01 Kenichi Handa <handa@m17n.org>
14127
14128 * character.c (syms_of_character): Set the default value of
14129 Vprintable_chars to Qnil.
14130
141312008-02-01 Dave Love <fx@gnu.org>
14132
14133 * Makefile.in (lisp, shortlisp): Change indian.elc to indian.el.
14134
141352008-02-01 Kenichi Handa <handa@m17n.org>
14136
14137 * charset.c (load_charset_map): Handle the case that from < to
14138 correctly.
14139
14140 * coding.c (encode_coding_emacs_mule, encode_coding_iso_2022)
14141 (encode_coding_sjis, encode_coding_big5, encode_coding_charset):
14142 Pay attention to raw-8-bit chars.
14143
141442008-02-01 Kenichi Handa <handa@m17n.org>
14145
14146 * Makefile.in (lisp, shortlisp): Change chinese.elc to chinese.el.
14147 It is not bytecompiled now.
14148
14149 * charset.c (charset_jisx0201_roman, charset_jisx0208_1978)
14150 (charset_jisx0208): New variables.
14151 (Fdefine_charset_internal): Setup them if appropriate.
14152 (init_charset_once): Initialize them to -1.
14153
14154 * charset.h (charset_jisx0201_roman, charset_jisx0208_1978)
14155 (charset_jisx0208): Extern them.
14156
14157 * coding.c (CODING_ISO_FLAG_USE_ROMAN): New macro.
14158 (CODING_ISO_FLAG_USE_OLDJIS): New macro.
14159 (CODING_ISO_FLAG_FULL_SUPPORT): Change macro definition.
14160 (setup_iso_safe_charsets): Fix arguments to Fassq.
14161 (DECODE_DESIGNATION, ENCODE_ISO_CHARACTER_DIMENSION1)
14162 (ENCODE_ISO_CHARACTER_DIMENSION2): Pay attention to
14163 CODING_ISO_FLAG_USE_ROMAN and CODING_ISO_FLAG_USE_OLDJIS.
14164 (encode_coding_iso_2022): Change the 1st arg to
14165 ENCODE_ISO_CHARACTER to a variable.
14166
141672008-02-01 Kenichi Handa <handa@m17n.org>
14168
14169 * charset.h (enum define_charset_arg_index): New enums
14170 charset_arg_min_code and charset_arg_max_code.
14171 (struct charset): New member char_index_offset.
14172
14173 * charset.c (CODE_POINT_TO_INDEX, INDEX_TO_CODE_POINT):
14174 Take charset->char_index_offset into account.
14175 (Fdefine_charset_internal): Handle args[charset_arg_min_code] and
14176 args[charset_arg_max_code]. Setup charset.char_index_offset.
14177 (syms_of_charset): Fix args to Fdefine_charset_internal.
14178
141792008-02-01 Dave Love <fx@gnu.org>
14180
14181 * coding.c (decode_coding_utf_8): Reject overlong sequences.
14182
141832008-02-01 Dave Love <fx@gnu.org>
14184
14185 * coding.c: Doc fixes.
14186 (Fcoding_system_aliases): Fix return value.
14187 (Qmac): Remove (duplicated) definition.
14188
141892008-02-01 Dave Love <fx@gnu.org>
14190
14191 * charset.c (Fcharset_priority_list, Fset_charset_priority): New
14192 functions.
14193
14194 * character.c (Fstring): Doc fix.
14195
14196 * charset.c (Fdefine_charset_alias): Update Vcharset_list.
14197
14198 * fontset.c (Ffontset_info): Doc fix. Return charset names, not
14199 ids.
14200 (font-encoding-alist): Doc fix.
14201
142022008-02-01 Dave Love <fx@gnu.org>
14203
14204 * term.c (costs_set): Declare static, non-initialized for pcc.
14205 (encode_terminal_code): Remove unused var.
14206
14207 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
14208 for K&R.
14209
14210 * xterm.c (xlwmenu_window_p): Fix prototype for K&R.
14211
14212 * coding.c (setup_iso_safe_charsets): Fix arg decl for K&R.
14213 (suffixes): Move out of make_subsidiaries for K&R.
14214
14215 * charset.c (map_charset_chars): Fix c_function declaration for K&R.
14216
14217 * lisp.h (DEFUN) [!PROTOTYPES]: Remove spurious `args'.
14218
142192008-02-01 Dave Love <fx@gnu.org>
14220
14221 * data.c (Fchar_or_string_p): Doc fix. Use CHARACTERP.
14222
14223 * category.c (Fmodify_category_entry): Doc fix. Remove unused vars.
14224
142252008-02-01 Yong Lu <lyongu@asia-infonet.com>
14226
14227 * charset.c (Fdefine_charset_internal): Fix argument to bzero.
14228
14229 * coding.c (decode_coding_charset): Workaround for the bug of GCC 2.96.
14230
142312008-02-01 Kenichi Handa <handa@m17n.org>
14232
14233 * Makefile.in (lisp, shortlisp): Change cyrillic.elc to cyrillic.el,
14234 vietnamese.elc to vietnamese.el. They are not bytecompiled now.
14235
142362008-02-01 Kenichi Handa <handa@m17n.org>
14237
14238 * coding.c (decode_coding_charset): Adjust for the change of
14239 Fdefine_coding_system_internal.
14240 (Fdefine_coding_system_internal): For a coding system of
14241 `charset' type, store a list of charset IDs in
14242 `charset_attr_charset_valids' element of coding attributes.
14243
142442008-02-01 Kenichi Handa <handa@m17n.org>
14245
14246 * coding.c (ONE_MORE_BYTE_NO_CHECK): Increment consumed_chars.
14247 (emacs_mule_char): New arg src. Delete arg `composition'. Change
14248 caller. Handle 2-byte and 3-byte charsets correctly.
14249 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): Rename from
14250 DECODE_EMACS_MULE_COMPOSITION_RULE. Change caller.
14251 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New macro.
14252 (DECODE_EMACS_MULE_21_COMPOSITION): Call
14253 DECODE_EMACS_MULE_COMPOSITION_RULE_21. Produce correct annotation
14254 sequence.
14255 (decode_coding_emacs_mule): Handle composition correctly. Rewind
14256 `src' and `consumed_chars' correctly before calling emacs_mule_char.
14257 (DECODE_COMPOSITION_START): Correctly handle the case of altchar
14258 and alt&rule composition.
14259 (decode_coding_iso_2022): Handle composition correctly.
14260 (init_coding_once): Setup emacs_mule_bytes for private charsets.
14261
14262 * charset.c (Fdefine_charset_internal): Fix bug for the case of
14263 re-defining a charset. If the charset has :emacs-mule-id, setup
14264 emacs_mule_bytes.
14265 (Fmake_char): If CODE1 is nil, use the minimum code of the charset.
14266
142672008-02-01 Kenichi Handa <handa@m17n.org>
14268
14269 * coding.c (encode_coding_iso_2022, encode_coding_sjis)
14270 (encode_coding_big5, encode_coding_charset): If coding requires safe
14271 encoding, produce a character specified by
14272 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
14273
142742008-02-01 Dave Love <fx@gnu.org>
14275
14276 * xterm.c (XSetIMValues): Declare.
14277
14278 * process.c: Conditionally include sys/wait.h, pty.h.
14279
14280 * print.c (print_object): Fix print format for 64-bit systems.
14281
14282 * keyboard.c (modify_event_symbol): Fix print format for 64-bit systems.
14283
14284 * buffer.c (emacs_strerror): Declare.
14285
14286 * fontset.c (Fclear_face_cache): Declare.
14287 (accumulate_font_info): Comment-out (unused).
14288 (face_for_char, Fset_fontset_font, Ffontset_info): Remove unused
14289 variables.
14290
14291 * character.h (string_escape_byte8): Declare.
14292
14293 * charset.c (load_charset_map, load_charset_map_from_file): Remove
14294 unused vars.
14295 (Fdefine_charset_internal, Fsplit_char, syms_of_charset)
14296 (Fmap_charset_chars): Doc fix.
14297
14298 * coding.c (Vchar_coding_system_table, Qchar_coding_system): Remove.
14299 (Fset_coding_system_priority, Fset_coding_system_priority)
14300 (Fdefine_coding_system_internal): Doc fix.
14301
143022008-02-01 Dave Love <fx@gnu.org>
14303
14304 * s/osf5-0.h (C_SWITCH_SYSTEM) [!__GNUC__]: Remove -nointrinsics.
14305
143062008-02-01 Kenichi Handa <handa@m17n.org>
14307
14308 * character.c (string_escape_byte8): Make multibyte string with
14309 correct size.
14310
14311 * charset.c (Fmake_char): Delete unnecessary code.
14312
143132008-02-01 Kenichi Handa <handa@m17n.org>
14314
14315 * xfns.c (x_encode_text): Allocate coding.destination here, and
14316 call encode_coding_object with dst_object Qnil.
14317
14318 * buffer.c (Fset_buffer_multibyte): Convert 8-bit bytes to
14319 multibyte form correctly.
14320
14321 * fontset.c (fs_load_font): Check fontp->full_name (not fontname)
14322 against Vfont_encoding_alist.
14323
14324 * coding.c (Fdecode_sjis_char): Fix typo (0x7F->0xFF). Fix the
14325 handling of charset list.
14326 (encode_coding_iso_2022): Setup coding->safe_charsets in advance.
14327 (decode_coding_object): Move point to coding->dst_pos before
14328 calling post-read-conversion function.
14329 (encode_coding_object): Give correct arguments to
14330 pre-write-conversion. Ignore the return value of
14331 pre-write-conversion function. Pay attention to the case that
14332 pre-write-conversion changes the current buffer. If dst_object is
14333 Qt, even if coding->src_bytes is zero, allocate at least one byte
14334 to coding->destination.
14335
14336 * coding.h (JIS_TO_SJIS): Fix typo (j1->s1, j2->s2).
14337
14338 * charset.c (Fmake_char): Make it more backward compatible.
14339 (Fmap_charset_chars): Fix docstring.
14340
143412008-02-01 Dave Love <fx@gnu.org>
14342
14343 * coding.c: Doc fixes.
14344 (Fdefine_coding_system_alias): Use names, not symbols, in
14345 coding-system-alist.
14346
143472008-02-01 Kenichi Handa <handa@m17n.org>
14348
14349 * fontset.c (free_realized_fontsets): Call Fclear_face_cache instead
14350 of calling free_realized_face.
14351
143522008-02-01 Yong Lu <lyongu@asia-infonet.com>
14353
14354 * charset.c (read_hex): Don't treat SPC as a comment starter.
14355 (decode_char): If CODE_POINT_TO_INDEX returns -1, always return -1.
14356 (Fdecode_char): Fix typo.
14357
143582008-02-01 Kenichi Handa <handa@m17n.org>
14359
14360 * charset.h (struct charset): New member `code_space_mask'.
14361
14362 * coding.c (coding_set_source): Delete the local variable beg_byte.
14363 (encode_coding_charset, Fdefine_coding_system_internal):
14364 Delete the local variable charset.
14365 (Fdefine_coding_system_internal): Setup
14366 attrs[coding_attr_charset_valids] correctly.
14367
14368 * charset.c (CODE_POINT_TO_INDEX): Utilize `code_space_mask'
14369 member to check if CODE is valid or not.
14370 (Fdefine_charset_internal): Initialize `code_space_mask' member.
14371 (encode_char): Before calling CODE_POINT_TO_INDEX, check if CODE
14372 is within the range of charset->min_code and carset->max_code.
14373
143742008-02-01 Dave Love <fx@gnu.org>
14375
14376 * syntax.h (syntax_temp) [!__GNUC__]: Declare.
14377
14378 * dispextern.h (generate_ascii_font): Fix return type.
14379
14380 * xfaces.c (generate_ascii_font): Fix arg declaration.
14381
14382 * coding.c (coding_inherit_eol_type)
14383 (Fset_terminal_coding_system_internal)
14384 (Fset_safe_terminal_coding_system_internal): Fix arg declarations.
14385
143862008-02-01 Kenichi Handa <handa@m17n.org>
14387
14388 * coding.c (decode_coding_charset, encode_coding_charset): Handle
14389 multiple charsets correctly.
14390
143912008-02-01 Kenichi Handa <handa@m17n.org>
14392
14393 * search.c (boyer_moore): Fix handling of multibyte character
14394 translation.
14395
14396 * xdisp.c (display_mode_element): When the variable `elt' is
14397 changed, update `this' and `lisp_string'.
14398
143992008-02-01 Kenichi Handa <handa@m17n.org>
14400
14401 * buffer.c (Fset_buffer_multibyte): Fix 8-bit char handling.
14402
14403 * callproc.c (Fcall_process): Be sure to give the current buffer
14404 to decode_coding_c_string. Update PT and PT_BYTE after the insertion.
14405
14406 * charset.c (struct charset_map_entries): New struct.
14407 (load_charset_map): Rename from parse_charset_map. New args
14408 entries and n_entries. Change caller.
14409 (load_charset_map_from_file): Rename from load_charset_map.
14410 Change caller. New arg control_flag. Call load_charset_map at
14411 the tail.
14412 (load_charset_map_from_vector): New function.
14413 (Fdefine_charset_internal): Setup charset.compact_codes_p.
14414 (encode_char): If the charset is compact, change a character index
14415 to a code point.
14416
14417 * coding.c (coding_alloc_by_making_gap): Check the case that the
14418 source and destination are the same correctly.
14419 (decode_coding_raw_text): Set coding->consumed_char and
14420 coding->consumed to 0.
14421 (produce_chars): If coding->chars_at_source is nonzero, update
14422 coding->consumed_char and coding->consumed before calling
14423 alloc_destination.
14424 (Fdefine_coding_system_alias): Register ALIAS in
14425 Vcoding_system_alist.
14426 (syms_of_coding): Define `no-conversion' coding system at the tail.
14427
14428 * fileio.c (Finsert_file_contents): Set coding_system instead of
14429 val. If the current buffer is multibyte, always call
14430 decode_coding_gap.
14431
14432 * xfaces.c (try_font_list): Give higher priority to fontset's
14433 family than face's family.
14434
144352008-02-01 Kenichi Handa <handa@m17n.org>
14436
14437 * callproc.c (Fcall_process): Be sure to give the current buffer
14438 to decode_coding_c_string.
14439
14440 * xfaces.c (try_font_list): Give a family specified in a fontset
14441 higher priority than a family specified in a face.
14442
144432008-02-01 Kenichi Handa <handa@m17n.org>
14444
14445 * fileio.c (Finsert_file_contents): Fix calculation of `inserted'.
14446 Fix arguments to insert_from_buffer.
14447
14448 * xdisp.c (display_mode_element): Fix calculation of `bytepos'.
14449
144502008-02-01 Kenichi Handa <handa@m17n.org>
14451
14452 * coding.c (produce_chars): Set the variable `multibytep' correctly.
14453 (decode_coding_gap): Set coding->dst_multibyte correctly.
14454
144552008-02-01 Kenichi Handa <handa@m17n.org>
14456
14457 * coding.c (encode_coding_utf_8): Initialize produced_chars to 0.
14458 (decode_coding_utf_16): Fix converting high and low bytes to code-point.
14459 (encode_coding_utf_16): Substitute coding->default_char for
14460 non-Unicode characters.
14461 (decode_coding): Don't call record_insert here.
14462 (setup_coding_system): Initialize `surrogate' of
14463 coding->spec.utf_16 to 0.
14464 (EMIT_ONE_BYTE): Fix for multibyte case.
14465
14466 * insdel.c (insert_from_gap): Call record_insert.
14467
144682008-02-01 Kenichi Handa <handa@m17n.org>
14469
14470 * casefiddle.c (casify_region): Fix multibyte case.
14471
14472 * character.c (c_string_width): Add return type `int'.
14473 (char_string_with_unification): Delete arg ADVANCED.
14474
14475 * character.h (CHAR_VALID_P): Don't call CHARACTERP.
14476 (CHAR_STRING): Adjust for the change of char_string_with_unification.
14477 (CHAR_STRING_ADVANCE): Make it do-while statement.
14478
14479 * chartab.c (sub_char_table_set_range): Optimize for the case
14480 DEPTH == 3. Add workaround code for a GCC optimization bug.
14481
14482 * charset.c (parse_charset_map): Remove an unused variable.
14483
14484 * coding.c: Delete unused variables.
14485
14486 * fileio.c (Finsert_file_contents): Set coding_system to Qnil
14487 earlier. If inserted is zero and the coding system doesn't
14488 require flushing, don't call decode_coding_gap.
14489
14490 * syntax.h (SET_RAW_SYNTAX_ENTRY): Don't call make_number.
14491
144922008-02-01 Kenichi Handa <handa@m17n.org>
14493
14494 The following changes are for using Unicode as an internal
14495 character model, and use UTF-8 format for buffer/string
14496 representation.
14497
14498 * .gdbinit (xchartable): Adjust for the change of char table structure.
14499 (xsubchartable, xcoding, xcharset, xcurbuf): New commands.
14500
14501 * Makefile.in (obj): Add character.o and chartab.o.
14502 (lisp, shortlisp): Remove utf-8.elc.
14503 (*.o): For many files, change dependency on charset.h to
14504 character.h, and add dependency on character.h.
14505 (character.o, chartab.o): New targets.
14506
14507 * abbrev.c, bytecode.c, casefiddle.c, cmds.c, dispnew.c, doc.c:
14508 * doprnt.c, dosfns.c, frame.c, marker.c, minibuf.c, msdos.c:
14509 * w16select.c, w32bdf.c, w32console.c: Include "character.h" instead
14510 of "charset.h".
14511
14512 * dired.c, filelock.c: Include "character.h".
14513
14514 * alloc.c: Include "character.h" instead of "charset.h".
14515 (Fmake_char_table, make_sub_char_table): Move to chartab.c.
14516 (syms_of_alloc): Remove defsubr for Smake_char_table.
14517
14518 * buffer.c: Include "character.h" instead of "charset.h", don't
14519 include "coding.h".
14520 (Fset_buffer_multibyte): Adjust for UTF-8.
14521
14522 * buffer.h: EXFUN Fbuffer_live_p.
14523
14524 * callproc.c: Include "character.h" instead of "charset.h".
14525 (Fcall_process): Big change for the new code-conversion APIs.
14526
14527 * casetab.c: Include "character.h" instead of "charset.h".
14528 (set_canon, set_identity, shuffle): Adjust for the new
14529 map_char_table spec.
14530 (init_casetab_once): Call CHAR_TABLE_SET instead of directly
14531 accessing the char table structure.
14532
14533 * chartab.c: New file that implements char table.
14534
14535 * category.c: Include "character.h".
14536 (copy_category_entry): New function.
14537 (copy_category_table): Call map_char_table and copy_category_entry.
14538 (Fmake_category_table): Initialize all top-level slots.
14539 (char_category_set): New function.
14540 (modify_lower_category_set): Delete.
14541 (Fmodify_category_entry): Call char_table_ref_and_range.
14542
14543 * category.h (CATEGORY_SET): Just call char_category_set.
14544
14545 * ccl.c: Include "character.h".
14546 (Qccl, Qcclp): New variables.
14547 (CCL_WRITE_CHAR): Alway treat the arg CH as a character even if
14548 it's less than 256.
14549 (CCL_WRITE_MULTIBYTE_CHAR): Delete.
14550 (CCL_WRITE_STRING, CCL_READ_CHAR): Adjust for the change of SRC
14551 and DST type.
14552 (ccl_driver): Change types of argument, adjust code accordingly.
14553 (Fccl_execute, Fccl_execute_on_string): Adjust for the change of
14554 ccl_driver.
14555 (syms_of_ccl): Intern and staticpro Qccl and Qcclp.
14556
14557 * ccl.h (struct ccl_program): Delete members eol_type and multibyte.
14558 New members src_multibyte, dst_multibyte, consumed, and produced.
14559 (struct ccl_spec): Delete members decoder and encoder. New member ccl.
14560 (CODING_SPEC_CCL_PROGRAM): New macro.
14561 (ccl_driver): Update prototype.
14562 (Qccl, Qcclp, Fccl_program_p): Extern them.
14563 (CHECK_CCL_PROGRAM): New macro.
14564
14565 * character.c, character.h, chartab.c: New files.
14566
14567 * charset.c: Mostly re-written. Move character and multibyte sequence
14568 handling codes to character.c.
14569
14570 * charset.h: Mostly re-written. Move character and multibyte sequence
14571 handling codes to character.h.
14572
14573 * coding.c, coding.h: Mostly re-written.
14574
14575 * composite.c: Include "character.h" instead of "charset.h".
14576 (CHAR_WIDTH): Move to character.h.
14577 (HASH_KEY, HASH_VALUE): Delete.
14578
14579 * composite.h (enum composition_method): Change order of enumeration
14580 symbols.
14581
14582 * data.c: Include "character.h" instead of "charset.h".
14583 (Faref): Call CHAR_TABLE_REF for a char table.
14584 (Faset): Call CHAR_TABLE_SET for a char table.
14585
14586 * dispextern.h (free_realized_face, check_face_attribytes)
14587 (generate_ascii_font): Extern them.
14588 (free_realized_multibyte_face): Delete extern.
14589
14590 * disptab.h (DISP_CHAR_VECTOR): Adjust for the change of char
14591 table structure.
14592
14593 * editfns.c: Include "character.h" instead of "charset.h".
14594 (Fchar_to_string): Always call CHAR_STRING.
14595
14596 * emacs.c (main): Call init_charset_once, init_charset,
14597 syms_of_chartab, and syms_of_character.
14598
14599 * fileio.c: Include "character.h" instead of "charset.h".
14600 (Finsert_file_contents): Big change for the new code-conversion API.
14601 (choose_write_coding_system, Fwrite_region): Likewise.
14602 (build_annotations_2): Delete.
14603 (e_write): Big change for the new code-conversion API.
14604
14605 * fns.c: Include "character.h" instead of "charset.h".
14606 (copy_sub_char_table): Move to chartab.c.
14607 (Fcopy_sequence): Call copy_char_table for a char table.
14608 (concat): Delete codes calling count_multibyte.
14609 (string_char_to_byte, string_byte_to_char): Adjust for the new
14610 multibyte form.
14611 (internal_equal): Adjust for the change of char table structure.
14612 (Fchar_table_subtype, Fchar_table_parent, Fset_char_table_parent)
14613 (Fchar_table_extra_slot, Fset_char_table_extra_slot)
14614 (Fchar_table_range, Fset_char_table_range, Fset_char_table_default)
14615 (char_table_translate, optimize_sub_char_table)
14616 (Foptimize_char_table, map_char_table, Fmap_char_table): Move to
14617 chartab.c.
14618 (char_table_ref_and_index): Delete.
14619 (HASH_KEY, HASH_VALUE): Move to lisp.h.
14620 (Fmd5): Call preferred_coding_system instead of accessing
14621 Vcoding_category_list. Adjust for the new code-conversion API.
14622 (syms_of_fns): Move defsubr for char table related functions to
14623 chartab.c.
14624
14625 * fontset.c: Mostly re-written.
14626
14627 * fontset.h (struct font_info): Change type of the member encoding_type.
14628 (enum FONT_SPEC_INDEX): New enum.
14629 (fontset_font_pattern, fs_load_font): Update prototype.
14630 (FS_LOAD_FONT): Adjust for the change of fs_load_font.
14631
14632 * indent.c: Include "character.h" instead of "charset.h".
14633 (MULTIBYTE_BYTES_WIDTH): Call CHAR_WIDTH instead of WIDTH_BY_CHAR_HEAD.
14634
14635 * insdel.c: Include "character.h" instead of "charset.h".
14636 (copy_text): Don't refer to Vnonascii_translation_table.
14637 (insert_from_gap): New function.
14638
14639 * keyboard.c: Include "character.h" instead of "charset.h".
14640 (command_loop_1): Never call direct_output_forward_char before
14641 a non-ASCII character.
14642 (read_char): If Vkeyboard_translate_table is a char table, always
14643 translate a character.
14644
14645 * keymap.c: Include "character.h".
14646 (store_in_keymap): Handle the case that IDX is a cons.
14647 (Fdefine_key): Handle the case that KEY is a cons and the car part
14648 is also a cons (range).
14649 (push_key_description): Adjust for the new character code.
14650 (describe_vector): Call describe_char_table for a char table.
14651 (describe_char_table): New function.
14652
14653 * keymap.h (describe_char_table): Extern it.
14654
14655 * lisp.h (enum pvec_type): New member PVEC_SUB_CHAR_TABLE.
14656 (XSUB_CHAR_TABLE, XSETSUB_CHAR_TABLE): New macros.
14657 (CHAR_TABLE_ORDINARY_SLOTS, CHAR_TABLE_SINGLE_BYTE_SLOTS)
14658 (SUB_CHAR_TABLE_ORDINARY_SLOTS, SUB_CHAR_TABLE_STANDARD_SLOTS):
14659 Delete.
14660 (CHAR_TABLE_REF, CHAR_TABLE_SET): Adjust for the new char table
14661 structure.
14662 (CHAR_TABLE_TRANSLATE): Just call char_table_translate.
14663 (CHARTAB_SIZE_BITS_0, CHARTAB_SIZE_BITS_1, CHARTAB_SIZE_BITS_2)
14664 (CHARTAB_SIZE_BITS_3): New macros.
14665 (chartab_size): Extern it.
14666 (struct Lisp_Char_Table): Re-design.
14667 (struct Lisp_Sub_Char_Table): New structure.
14668 (HASH_KEY, HASH_VALUE): Move from fns.c.
14669 (CHARACTERBITS): Define as 22.
14670 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Adjust for the above change.
14671 (SUB_CHAR_TABLE_P): Check PVEC_CHAR_TABLE.
14672 (GC_SUB_CHAR_TABLE_P): New macro.
14673 (Fencode_coding_string, Fdecode_coding_string): Update EXFUN.
14674 (code_convert_string_norecord): Deleted extern.
14675 (init_character_once, syms_of_character, init_charset)
14676 (syms_of_composite, Qeq, Fmakehash, insert_from_gap): Extern them.
14677
14678 * lread.c: Include "character.h".
14679 (read_multibyte): New arg NBYTES.
14680 (read_escape): Change the meaning of returned *BYTEREP.
14681 (to_multibyte): Delete.
14682 (read1): Adjust the handling of char table and string.
14683
14684 * print.c: Include "character.h" instead of "charset.h".
14685 (print_string): Convert 8-bit raw bytes to octal form by
14686 string_escape_byte8.
14687 (print_object): Adjust for the new multibyte form. Print 8-bit
14688 raw bytes always in octal form. Handle sub char table correctly.
14689
14690 * process.c: Include "character.h" instead of "charset.h".
14691 (read_process_output, send_process): Adjust for the new
14692 code-conversion API.
14693
14694 * puresize.h (BASE_PURESIZE): Increase.
14695
14696 * regex.c: Include "character.h" instead of "charset.h".
14697 (BYTE8_TO_CHAR, CHAR_BYTE8_P) [not emacs]: New dummy macros.
14698 (regex_compile): Accept a range whose starting and ending
14699 character have different leading bytes.
14700 (analyse_first): Adjust for the above change.
14701
14702 * search.c: Include "character.h" instead of "charset.h".
14703 (search_buffer, boyer_moore): Adjust for the new multibyte form.
14704 (Freplace_match): Adjust for the change of multibyte_char_to_unibyte.
14705
14706 * syntax.c: Include "character.h" instead of "charset.h".
14707 (syntax_parent_lookup): Delete.
14708 (Fmodify_syntax_entry): Accept a cons as CHAR.
14709 (skip_chars): Adjust for the new multibyte form.
14710 (init_syntax_once): Call char_table_set_range instead of directly
14711 accessing the structure of a char table.
14712
14713 * syntax.h (SET_RAW_SYNTAX_ENTRY): Call CHAR_TABLE_SET.
14714 (SYNTAX_ENTRY_FOLLOW_PARENT): Delete macro.
14715 (SET_RAW_SYNTAX_ENTRY_RANGE): New macro.
14716 (SYNTAX_ENTRY_INT): Call CHAR_TABLE_REF.
14717
14718 * term.c: Include "buffer.h" and "character.h".
14719 (encode_terminal_code, write_glyphs): Adjust for the new
14720 code-conversion API.
14721 (produce_glyphs): Call CHAR_WIDTH instead of CHARSET_WIDTH.
14722
14723 * w32term.c (x_new_font): Adjust for the change of FS_LOAD_FONT.
14724
14725 * xdisp.c: Include "character.h".
14726 (get_next_display_element): Adjust for the new multibyte form.
14727 (disp_char_vector): Adjust for the new char table structure.
14728 (decode_mode_spec_coding): Adjust for the new structure of
14729 coding system.
14730 (decode_mode_spec): Adjust for the new code-conversion API.
14731
14732 * xfaces.c: Include "character.h" instead of "charset.h".
14733 (load_face_font): Adjust for the change of choose_face_font and
14734 FS_LOAD_FONT.
14735 (generate_ascii_font): New function.
14736 (set_lface_from_font_name): Adjust for the change of FS_LOAD_FONT.
14737 (set_font_frame_param): Adjust for the change of choose_face_font.
14738 (free_realized_face): Make it public.
14739 (free_realized_faces_for_fontset): Rename from
14740 free_realized_multibyte_face. Free also faces realized for ASCII.
14741 (choose_face_font): Change arguments. Adjust for the change of
14742 fontset_font_pattern and FS_LOAD_FONT.
14743
14744 * xfns.c: Include "character.h".
14745 (x_encode_text): Adjust for the new code-conversion API.
14746
14747 * xselect.c: Don't include "charset.h".
14748 (selection_data_to_lisp_data): Adjust for the new code conversion API.
14749
14750 * xterm.c: Include "character.h".
14751 (x_encode_char): New argument CHARSET. Change caller.
14752 (x_get_char_face_and_encoding, x_get_glyph_face_and_encoding):
14753 Call ENCODE_CHAR instead of SPLIT_CHAR.
14754 (x_produce_glyphs): Don't check Vnonascii_translation_table Call
14755 CHAR_WIDTH instead of CHARSET_WIDTH.
14756 (XTread_socket): Adjust for the new code-conversion API.
14757 (x_new_font): Adjust for the change of FS_LOAD_FONT.
14758 (x_load_font): Adjust for the change of struct font.
14759
147602008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
14761
14762 * xfaces.c (face_at_buffer_position): Remove unused vars.
14763
147642008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14765
14766 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR):
14767 Fix overflow checking.
14768
147692008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14770
14771 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR, ccl_driver):
14772 Cancel previous change.
14773
147742008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
14775
14776 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when
14777 ccl->eight_bit_control. Fix check for buffer overflow.
14778 (CCL_WRITE_MULTIBYTE_CHAR): Fix check for buffer overflow.
14779 (ccl_driver): Initialize extra_bytes to 0.
14780
147812008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
14782
14783 * keyboard.c (make_ctrl_char): If C is a multibyte character, just
14784 return it ORed with ctrl_modifier.
14785
147862008-01-29 Miles Bader <miles@gnu.org>
14787
14788 * macterm.c (XTset_vertical_scroll_bar): Fix merge mistake.
14789
147902008-01-28 Jason Rumney <jasonr@gnu.org>
14791
14792 * w32.c (stat): Don't double check for networked drive.
14793
147942008-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
14795
14796 * window.c (run_window_configuration_change_hook): New function.
14797 Code extracted from set_window_buffer. Set the selected frame.
14798 (set_window_buffer): Use it.
14799 * window.h (run_window_configuration_change_hook): Declare.
14800 * dispnew.c (change_frame_size_1): Use it instead of set-window-buffer.
14801
14802 * keyboard.c (read_char): Yet another int/Lisp_Object mixup (YAILOM).
14803
148042008-01-27 Dan Nicolaescu <dann@ics.uci.edu>
14805
14806 * Makefile.in: Remove references to unused macros.
14807
148082008-01-26 Eli Zaretskii <eliz@gnu.org>
14809
14810 * w32.c (g_b_init_get_sid_sub_authority)
14811 (g_b_init_get_sid_sub_authority_count): New static variables.
14812 (GetSidSubAuthority_Proc, GetSidSubAuthorityCount_Proc): New typedefs.
14813 (get_sid_sub_authority, get_sid_sub_authority_count): New functions.
14814 (init_user_info): Use them to retrieve uid and gid.
14815 Use 500/513, the Windows defaults, as Administrator's uid/gid.
14816 (fstat): Use pw_uid and pw_gid from the_passwd structure for
14817 st_uid and st_gid of the file.
14818
148192008-01-26 Jason Rumney <jasonr@gnu.org>
14820
14821 * w32.c (logon_network_drive): New function.
14822 (stat): Use it.
14823
148242008-01-26 Chong Yidong <cyd@stupidchicken.com>
14825
14826 * xdisp.c (pos_visible_p): Handle the case where charpos falls on
14827 invisible text covered with an ellipsis.
14828
148292008-01-25 Richard Stallman <rms@gnu.org>
14830
14831 * xdisp.c (redisplay_window): Run Qwindow_text_change_functions and
14832 jump back to beginning. Move some other initializations after that.
14833 (Qwindow_text_change_functions, Vwindow_text_change_functions):
14834 New variables.
14835 (syms_of_xdisp): Init them.
14836
14837 * keyboard.c (read_char): Restore echo_message_buffer after redisplay.
14838
14839 * buffer.c (reset_buffer_local_variables):
14840 Implement `permanent-local-hook'.
14841 (Qpermanent_local_hook): New variable.
14842 (syms_of_buffer): Init and staticpro it.
14843
148442008-01-25 Michael Albinus <michael.albinus@gmx.de>
14845
14846 * dbusbind.c (xd_retrieve_arg): Pacify GCC on x86_64 GNU/Linux.
14847
148482008-01-25 Thien-Thi Nguyen <ttn@gnuvola.org>
14849
14850 * fns.c (Fclrhash): Return TABLE.
14851
148522008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14853
14854 * macterm.c (x_scroll_bar_create): Initialize bar->redraw_needed_p.
14855 (XTset_vertical_scroll_bar): Redraw scroll bar if bar->redraw_needed_p
14856 is set even without positional changes.
14857 (x_scroll_bar_clear): Set bar->redraw_needed_p.
14858
14859 * macterm.h (struct scroll_bar): New member `redraw_needed_p'.
14860
148612008-01-23 Jason Rumney <jasonr@gnu.org>
14862
14863 * xterm.c (handle_one_xevent): Revert to counting chars not bytes.
14864
14865 * w32term.c (w32_read_socket) <WM_CHAR>: Decode characters outside
14866 the unicode range available in MULE by locale-coding-system.
14867 Improve dbcs lead byte detection. Set event timestamp and modifiers
14868 earlier.
14869
148702008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14871
14872 * mac.c (mac_emacs_pid) [MAC_OSX]: New variable.
14873 [MAC_OSX] (init_mac_osx_environment): Initialize it.
14874 [MAC_OSX] (mac_try_close_socket) [SELECT_USE_CFSOCKET]: Return 0
14875 when used on child processes.
14876
148772008-01-21 Michael Albinus <michael.albinus@gmx.de>
14878
14879 * dbusbind.c (Fdbus_method_return_internal): Rename from
14880 Fdbus_method_return.
14881 (Fdbus_unregister_object): Move to dbus.el.
14882 (Fdbus_call_method, Fdbus_method_return_internal)
14883 (Fdbus_send_signal): Improve debug messages.
14884
148852008-01-20 Martin Rudalics <rudalics@gmx.at>
14886
14887 * undo.c (undo_inhibit_record_point): New variable.
14888 (syms_of_undo): Initialize it.
14889 (record_point): Don't record point when undo_inhibit_record_point
14890 is set.
14891
148922008-01-19 Stefan Monnier <monnier@iro.umontreal.ca>
14893
14894 * process.c (list_processes_1): Don't use SCHARS on a nil buffer name.
14895
14896 * xdisp.c (Qauto_hscroll_mode): New var.
14897 (syms_of_xdisp): Initialize it.
14898 (hscroll_window_tree): Use it to lookup `auto-hscroll-mode' in each
14899 window's buffer.
14900 (hscroll_windows): Don't check automatic_hscrolling_p here.
14901
14902 * window.c (set_window_buffer): Don't unnecessarily reset hscroll and
14903 vscroll if we're setting window-buffer to the value it already has.
14904
149052008-01-18 Dan Nicolaescu <dann@ics.uci.edu>
14906
14907 * m/intel386.h: Remove references to XENIX.
14908
149092008-01-17 Andreas Schwab <schwab@suse.de>
14910
14911 * m/amdx86-64.h (START_FILES, LIB_STANDARD): Use HAVE_LIB64_DIR
14912 instead of HAVE_X86_64_LIB64_DIR.
14913 * m/ibms390x.h (START_FILES, LIB_STANDARD): Likewise.
14914
149152008-01-17 Glenn Morris <rgm@gnu.org>
14916
14917 * m/ibms390x.h (START_FILES, LIB_STANDARD): Adjust value according
14918 to HAVE_X86_64_LIB64_DIR.
14919
149202008-01-16 Dan Nicolaescu <dann@ics.uci.edu>
14921
14922 * s/irix3-3.h:
14923 * s/irix4-0.h:
14924 * s/386-ix.h:
14925 * s/domain.h:
14926 * s/hpux9-x11r4.h:
14927 * s/hpux9shxr4.h: Remove files for systems no longer supported.
14928
14929 * sysdep.c: Remove code containing references to symbols defined
14930 by unsupported systems.
14931
149322008-01-16 Glenn Morris <rgm@gnu.org>
14933
14934 * coding.c (select-safe-coding-system-function): Doc fix.
14935
149362008-01-15 Glenn Morris <rgm@gnu.org>
14937
14938 * config.in: Revert 2008-01-13 change: this is a generated file.
14939
149402008-01-13 Tom Tromey <tromey@redhat.com>
14941
14942 * lisp.h: Fix typo.
14943
149442008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
14945
14946 * m/sequent-ptx.h:
14947 * m/sequent.h:
14948 * s/ptx.h:
14949 * s/ptx4-2.h:
14950 * s/ptx4.h: Remove files for systems no longer supported.
14951
14952 * callproc.c (Fcall_process): Fix previous change.
14953
149542008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
14955
14956 * unexsunos4.c: Remove file, system not supported anymore.
14957
14958 * m/mips.h:
14959 * m/intel386.h:
14960 * callproc.c:
14961 * config.in:
14962 * ecrt0.c:
14963 * emacs.c:
14964 * fileio.c:
14965 * frame.c:
14966 * getpagesize.h:
14967 * keyboard.c:
14968 * lread.c:
14969 * process.c:
14970 * puresize.h:
14971 * sysdep.c:
14972 * systty.h:
14973 * syswait.h:
14974 * unexec.c:
14975 * xdisp.c:
14976 * alloc.c: Remove code containing references to symbols defined by
14977 unsupported systems.
14978
149792008-01-11 Kenichi Handa <handa@ni.aist.go.jp>
14980
14981 * coding.c (detect_coding_mask): Fix previous change.
14982
149832008-01-09 Kenichi Handa <handa@ni.aist.go.jp>
14984
14985 * coding.c (detect_coding_iso2022): New arg
14986 latin_extra_code_state. Allow Latin extra codes only
14987 when *latin_extra_code_state is nonzero.
14988 (detect_coding_mask): If there is a NULL byte, detect the encoding
14989 as UTF-16 or binary. If Latin extra codes exist, detect the
14990 encoding as ISO-2022 only when there's no other proper encoding is
14991 found.
14992
149932008-01-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14994
14995 * frame.c (Fmake_terminal_frame): Use #ifdef MAC_OS8 instead of
14996 #ifdef MAC_OS.
14997
149982008-01-08 Richard Stallman <rms@gnu.org>
14999
15000 * fileio.c (Ffile_name_directory, Fexpand_file_name): Doc fixes.
15001
150022008-01-06 Nick Roberts <nickrob@snap.net.nz>
15003
15004 * keyboard.c (parse_menu_item): Don't enclose key bindings on
15005 menu bar in parentheses.
15006
150072008-01-06 Dan Nicolaescu <dann@ics.uci.edu>
15008
15009 * m/7300.h:
15010 * m/acorn.h:
15011 * m/alliant-2800.h:
15012 * m/alliant.h:
15013 * m/alliant1.h:
15014 * m/alliant4.h:
15015 * m/altos.h:
15016 * m/amdahl.h:
15017 * m/apollo.h:
15018 * m/att3b.h:
15019 * m/aviion-intel.h:
15020 * m/aviion.h:
15021 * m/celerity.h:
15022 * m/clipper.h:
15023 * m/cnvrgnt.h:
15024 * m/convex.h:
15025 * m/cydra5.h:
15026 * m/delta88k.h:
15027 * m/dpx2.h:
15028 * m/dual.h:
15029 * m/elxsi.h:
15030 * m/f301.h:
15031 * m/gould-np1.h:
15032 * m/gould.h:
15033 * m/i860.h:
15034 * m/ibmps2-aix.h:
15035 * m/ibmrt-aix.h:
15036 * m/ibmrt.h:
15037 * m/irist.h:
15038 * m/is386.h:
15039 * m/isi-ov.h:
15040 * m/mega68.h:
15041 * m/mg1.h:
15042 * m/news-r6.h:
15043 * m/news-risc.h:
15044 * m/news.h:
15045 * m/nh3000.h:
15046 * m/nh4000.h:
15047 * m/ns16000.h:
15048 * m/ns32000.h:
15049 * m/nu.h:
15050 * m/orion.h:
15051 * m/orion105.h:
15052 * m/paragon.h:
15053 * m/pfa50.h:
15054 * m/plexus.h:
15055 * m/pyramid.h:
15056 * m/pyrmips.h:
15057 * m/sh3el.h:
15058 * m/sps7.h:
15059 * m/sr2k.h:
15060 * m/stride.h:
15061 * m/sun1.h:
15062 * m/sun2.h:
15063 * m/sun3-68881.h:
15064 * m/sun3-fpa.h:
15065 * m/sun3-soft.h:
15066 * m/sun3.h:
15067 * m/sun386.h:
15068 * m/symmetry.h:
15069 * m/tad68k.h:
15070 * m/tahoe.h:
15071 * m/targon31.h:
15072 * m/tek4300.h:
15073 * m/tekxd88.h:
15074 * m/tower32.h:
15075 * m/tower32v3.h:
15076 * m/ustation.h:
15077 * m/wicat.h:
15078 * m/xps100.h:
15079 * s/cxux.h:
15080 * s/cxux7.h:
15081 * s/dgux.h:
15082 * s/dgux4.h:
15083 * s/dgux5-4-3.h:
15084 * s/dgux5-4r2.h:
15085 * s/esix.h:
15086 * s/esix5r4.h:
15087 * s/hiuxmpp.h:
15088 * s/hiuxwe2.h:
15089 * s/iris3-5.h:
15090 * s/iris3-6.h:
15091 * s/isc2-2.h:
15092 * s/isc3-0.h:
15093 * s/isc4-0.h:
15094 * s/isc4-1.h:
15095 * s/newsos5.h:
15096 * s/newsos6.h:
15097 * s/osf1.h:
15098 * s/osf5-0.h:
15099 * s/riscix1-1.h:
15100 * s/riscix12.h:
15101 * s/sco4.h:
15102 * s/sco5.h:
15103 * s/sunos4-0.h:
15104 * s/sunos4-1.h:
15105 * s/sunos413.h:
15106 * s/sunos4shr.h:
15107 * s/umax.h:
15108 * s/unipl5-2.h:
15109 * s/xenix.h:
15110 * cxux-crt0.s:
15111 * unexapollo.c:
15112 * unexconvex.c:
15113 * unexenix.c:
15114 * unexsni.c: Remove files for systems no longer supported.
15115
15116 * m/intel386.h: Remove references to unsupported systems.
15117
15118 * w32.c (get_emacs_configuration): Remove reference to i860.
15119
15120 * sysdep.c: Remove dead code.
15121
151222008-01-05 Dan Nicolaescu <dann@ics.uci.edu>
15123
15124 * s/rtu.h:
15125 * m/masscomp.h: Remove files. Platform is obsolete.
15126
151272008-01-04 Michael Albinus <michael.albinus@gmx.de>
15128
15129 * dbusbind.c (Fdbus_method_return): New function.
15130 (xd_read_message): Add the serial number to the event.
15131 (Fdbus_register_method): Activate the function.
15132
151332008-01-03 Stefan Monnier <monnier@iro.umontreal.ca>
15134
15135 * keyboard.c (read_key_sequence): Fix typo.
15136
151372008-01-03 Michael Albinus <michael.albinus@gmx.de>
15138
15139 * dbusbind.c (all): Replace XCAR by CAR_SAFE and XCDR by CDR_SAFE.
15140 (xd_signature, xd_append_arg): Handle element type detection for
15141 empty arrays.
15142 (Fdbus_call_method, Fdbus_send_signal): Undo type casting for
15143 SDATA () calls; this must be solved more general.
15144 (Fdbus_register_signal): Use SBYTES instead of strlen.
15145
151462008-01-03 Magnus Henoch <magnus@zemdatav>
15147
15148 * dbusbind.c (xd_append_arg): Use unsigned char instead of
15149 unsigned int for byte values (necessary for big-endian platform).
15150 (Fdbus_call_method): Handle the case of no returned arguments.
15151
151522007-12-31 Tom Tromey <tromey@redhat.com> (tiny change)
15153
15154 * dbusbind.c (xd_read_message): Use non-static input_event struct.
15155
151562007-12-31 Magnus Henoch <mange@freemail.hu>
15157
15158 * dbusbind.c (xd_signature): Signature of variant is just "v".
15159
151602007-12-30 Michael Albinus <michael.albinus@gmx.de>
15161
15162 * dbusbind.c: Fix several errors and compiler warnings.
15163 Reported by Tom Tromey <tromey@redhat.com>.
15164 (XD_ERROR, XD_DEBUG_MESSAGE)
15165 (XD_DEBUG_VALID_LISP_OBJECT_P): Wrap code with "do ... while (0)".
15166 (xd_append_arg): Part for basic D-Bus types rewritten.
15167 (xd_retrieve_arg): Split implementation of DBUS_TYPE_BYTE and
15168 DBUS_TYPE_(U)INT16. Don't call XD_DEBUG_MESSAGE with "%f" if not
15169 appropriate.
15170 (xd_read_message): Return Qnil. Don't signal an error; it is not
15171 useful during event reading.
15172 (Fdbus_register_signal): Signal an error if the check for
15173 FUNCTIONP fails.
15174 (Fdbus_register_method): New function. The implementation is not
15175 complete, the call of the function signals an error therefore.
15176 (Fdbus_unregister_object): New function, renamed from
15177 Fdbus_unregister_signal. The initial check signals an error, if
15178 the object is not well formed.
15179
151802007-12-30 Richard Stallman <rms@gnu.org>
15181
15182 * textprop.c (get_char_property_and_overlay):
15183 Signal error if POSITION is out of range in a buffer.
15184
151852007-12-29 Martin Rudalics <rudalics@gmx.at>
15186
15187 * w32fns.c (Fx_create_frame): Make copy of frame parameters
15188 because the original parameters are in pure storage now.
15189
151902007-12-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15191
15192 * xdisp.c (phys_cursor_in_rect_p): Check if cursor is in fringe area.
15193
151942007-12-22 Eli Zaretskii <eliz@gnu.org>
15195
15196 * callint.c (syms_of_callint) <command-history>: Add reference to
15197 history-length in the doc string.
15198
151992007-12-17 Jason Rumney <jasonr@gnu.org>
15200
15201 * w32fns.c (w32_wnd_proc) <WM_KEYDOWN>: Cast char to unsigned
15202 before passing as wParam.
15203
152042007-12-22 Michael Albinus <michael.albinus@gmx.de>
15205
15206 * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_BYTE,
15207 DBUS_TYPE_INT16, DBUS_TYPE_UINT16, DBUS_TYPE_INT64,
15208 DBUS_TYPE_UINT64, DBUS_TYPE_DOUBLE and DBUS_TYPE_SIGNATURE.
15209 Return float when DBUS_TYPE_INT32 or DBUS_TYPE_UINT32 do not fit
15210 as number.
15211 (Fdbus_call_method): Fix docstring.
15212
152132007-12-21 Michael Albinus <michael.albinus@gmx.de>
15214
15215 * dbusbind.c (XD_BASIC_DBUS_TYPE, XD_DBUS_TYPE_P, XD_NEXT_VALUE):
15216 New macros.
15217 (XD_SYMBOL_TO_DBUS_TYPE): Rename from XD_LISP_SYMBOL_TO_DBUS_TYPE.
15218 (XD_OBJECT_TO_DBUS_TYPE): Rename from XD_LISP_OBJECT_TO_DBUS_TYPE.
15219 Simplify.
15220 (xd_signature): New function.
15221 (xd_append_arg): Compute also signatures. Major rewrite.
15222 (xd_retrieve_arg): Make debug messages friendly.
15223 (Fdbus_call_method, Fdbus_send_signal): Extend docstring.
15224 Check for signatures of arguments.
15225
152262007-12-19 Michael Albinus <michael.albinus@gmx.de>
15227
15228 * dbusbind.c (QCdbus_type_byte, QCdbus_type_boolean)
15229 (QCdbus_type_int16, QCdbus_type_uint16, QCdbus_type_int32)
15230 (QCdbus_type_uint32, QCdbus_type_int64, QCdbus_type_uint64)
15231 (QCdbus_type_double, QCdbus_type_string, QCdbus_type_object_path)
15232 (QCdbus_type_signature, QCdbus_type_array, QCdbus_type_variant)
15233 (QCdbus_type_struct, QCdbus_type_dict_entry): New D-Bus type symbols.
15234 (XD_LISP_SYMBOL_TO_DBUS_TYPE): New macro.
15235 (XD_LISP_OBJECT_TO_DBUS_TYPE): Add compound types.
15236 (xd_retrieve_value): Remove. Functionality included in ...
15237 (xd_append_arg): New function.
15238 (Fdbus_call_method, Fdbus_send_signal): Apply it.
15239
152402007-12-16 Michael Albinus <michael.albinus@gmx.de>
15241
15242 * dbusbind.c (top): Include <stdio.h>.
15243 (Fdbus_call_method, Fdbus_send_signal): Apply type cast in
15244 dbus_message_new_method_call and dbus_message_new_signal.
15245 (Fdbus_register_signal): Rename unique_name to uname.
15246 Check handler for FUNCTIONP instead of CHECK_SYMBOL. Handle case of
15247 non-existing unique name. Fix typos in matching rule. Return an
15248 object which is useful in Fdbus_unregister_signal.
15249 (Fdbus_unregister_signal): Reimplementation, in order to remove
15250 only the corresponding entry.
15251 (Vdbus_registered_functions_table): Change the order of entries.
15252 Apply these changes in xd_read_message and Fdbus_register_signal.
15253
152542007-12-16 Andreas Schwab <schwab@suse.de>
15255
15256 * fileio.c (Finsert_file_contents): Fix overflow check to not
15257 depend on undefined integer overflow.
15258
152592007-12-14 Jason Rumney <jasonr@gnu.org>
15260
15261 * w32term.c (w32_read_socket): Use MULTIBYTE_CHAR_KEYSTROKE_EVENT
15262 for characters above 127.
15263
152642007-12-13 Jason Rumney <jasonr@gnu.org>
15265
15266 * w32fns.c (w32_wnd_proc, Fw32_reconstruct_hot_key): Range check
15267 before dereferencing array.
15268 (lookup_vk_code): Remove zero comparison.
15269
152702007-12-14 Michael Albinus <michael.albinus@gmx.de>
15271
15272 * dbusbind.c (xd_retrieve_value, xd_retrieve_arg)
15273 (Fdbus_call_method, Fdbus_send_signal, xd_read_message):
15274 Use `unsigned int' instead of `uint'.
15275 (xd_read_message, Fdbus_register_signal): Split expressions into
15276 multiple lines before operators "&&" and "||", according to the
15277 GNU Coding Standards.
15278
152792007-12-14 Eli Zaretskii <eliz@gnu.org>
15280
15281 * dispextern.h (WINDOWS_NT): Fix incorrect spelling of WINDOWSNT.
15282
152832007-12-12 Juri Linkov <juri@jurta.org>
15284
15285 * buffer.c (Frename_buffer): In interactive spec replace
15286 `read-buffer' with `read-string' that uses `buffer-name-history'
15287 as history, and the current buffer's name as default.
15288
152892007-12-10 Stefan Monnier <monnier@iro.umontreal.ca>
15290
15291 * keyboard.c (Fcommand_execute): Call Qcall_interactively instead of
15292 manipulating the backtrace manually.
15293 (make_lispy_event): Merge the ASCII and MULTIBYTE cases.
15294 (struct backtrace, backtrace_list): Remove.
15295 (command_loop_1): Remove dead var `no_direct'.
15296
15297 * buffer.c (reset_buffer_local_variables): If permanent_too is 0, also
15298 preserve non-built-in buffer-local variables.
15299 (Fkill_all_local_variables): Don't re-create&re-set permanent
15300 buffer-local variables.
15301
153022007-12-09 Juri Linkov <juri@jurta.org>
15303
15304 * buffer.c (Frename_buffer): Change interactive spec from "s" to
15305 Lisp code that uses `read-buffer' with current buffer as default.
15306
153072007-12-08 Michael Albinus <michael.albinus@gmx.de>
15308
15309 * dbusbind.c (xd_read_message): Generate an event for every
15310 registered handler. There might be several handlers registered
15311 for the same signal.
15312 (Fdbus_register_signal): Don't overwrite a registration for the
15313 same signal. Add a new registration if handlers are different.
15314 (Vdbus_registered_functions_table): Rework doc string.
15315
153162007-12-07 Michael Albinus <michael.albinus@gmx.de>
15317
15318 * dbusbind.c (Fdbus_get_unique_name, xd_read_message)
15319 (Fdbus_register_signal): Use DBUS_MAXIMUM_NAME_LENGTH and
15320 DBUS_MAXIMUM_MATCH_RULE_LENGTH for string lengths.
15321 (Fdbus_call_method, Fdbus_send_signal, Fdbus_register_signal):
15322 Unify argument lists.
15323 (xd_read_message, Fdbus_register_signal): Reorder and extend event
15324 arguments and hash table keys. Use unique name for service.
15325 (Fdbus_unregister_signal): Remove checks.
15326 (Vdbus_registered_functions_table): Fix doc string.
15327
153282007-12-05 Magnus Henoch <mange@freemail.hu>
15329
15330 * process.c (make_process): Initialize pty_flag to 0.
15331
153322007-12-05 Jason Rumney <jasonr@gnu.org>
15333
15334 * image.c (xbm_load) [WINDOWSNT]: Shuffle the bits of directly
15335 specified XBMs.
15336
153372007-12-05 Richard Stallman <rms@gnu.org>
15338
15339 * xdisp.c (syms_of_xdisp) <scroll-conservatively>: Doc fix.
15340
153412007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15342
15343 * mac.c (cfsockets_for_select) [MAC_OSX && SELECT_USE_CFSOCKET]:
15344 New variable.
15345 (mac_try_close_socket) [MAC_OSX]: New function.
15346 [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]:
15347 Update cfsockets_for_select. Replace invalid CFRunLoop source.
15348
15349 * sysdep.c (emacs_close) [MAC_OSX && HAVE_CARBON]:
15350 Use mac_try_close_socket.
15351
153522007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15353
15354 * unexmacosx.c (unrelocate): New argument BASE. Use it instead of
15355 reloc_base.
15356 (copy_dysymtab): Compute relocation base here.
15357 (rebase_reloc_address) [__ppc64__]: New function.
15358 (copy_dysymtab) [__ppc64__]: Use it if relocation base needs to be
15359 changed.
15360
153612007-12-05 Jason Rumney <jasonr@gnu.org>
15362
15363 * w32proc.c (sys_spawnve): Quote args with wildcards.
15364
153652007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15366
15367 * unexmacosx.c (copy_data_segment): Also copy __gcc_except_tab and
15368 __objc_* sections.
15369 (unrelocate) [_LP64]: Set relocation base to address of data segment.
15370
153712007-12-05 Michael Albinus <michael.albinus@gmx.de>
15372
15373 * dbusbind.c (xd_read_message): Return value is a Lisp_Object.
15374 Move check for Vdbus_registered_functions_table to
15375 xd_read_queued_messages.
15376 (xd_read_queued_messages): Protect xd_read_message calls by
15377 internal_condition_case_1.
15378
153792007-12-04 Michael Albinus <michael.albinus@gmx.de>
15380
15381 * dbusbind.c (QCdbus_system_bus, QCdbus_session_bus): Rename from
15382 Qdbus_system_bus and Qdbus_session_bus, respectively.
15383 (Vdbus_intern_symbols): Remove.
15384 (Vdbus_registered_functions_table): New hash table.
15385 (XD_SYMBOL_INTERN_SYMBOL): Remove.
15386 (xd_read_message, Fdbus_register_signal, Fdbus_unregister_signal):
15387 Rewrite in order to manage registered functions by hash table
15388 Vdbus_registered_functions_table.
15389
153902007-12-03 Jan Djärv <jan.h.d@swipnet.se>
15391
15392 * xterm.c: Update URL to Window Manager Specification in comment.
15393
153942007-12-02 Michael Albinus <michael.albinus@gmx.de>
15395
15396 * config.in (HAVE_DBUS): Add.
15397
15398 * Makefile.in (HAVE_DBUS): Add D-Bus definitions if defined.
15399 (ALL_CFLAGS): Add ${DBUS_CFLAGS}.
15400 (obj): Add $(DBUS_OBJ).
15401 (LIBES): Add $(DBUS_LIBS).
15402 (dbusbind.o): New target.
15403
15404 * dbusbind.c: New file.
15405
15406 * emacs.c (main): Call syms_of_dbusbind when HAVE_DBUS is defined.
15407
15408 * keyboard.c: All D-Bus related code is wrapped by "#ifdef HAVE_DBUS".
15409 (Qdbus_event): New Lisp symbol.
15410 (kbd_buffer_get_event, make_lispy_event): Handle DBUS_EVENT.
15411 (gobble_input): Call xd_read_queued_messages, reading D-Bus messages.
b97439ce 15412 (keys_of_keyboard): Define dbus-event.
aac0c6e3
MR
15413
15414 * termhooks.h (event_kind): Add DBUS_EVENT when HAVE_DBUS is defined.
15415
154162007-12-01 Richard Stallman <rms@gnu.org>
15417
15418 * search.c (syms_of_search) <inhibit-changing-match-data>: Doc fix.
15419
154202007-11-30 Jason Rumney <jasonr@gnu.org>
15421
15422 * w32console.c (w32con_ins_del_lines, scroll_line): Clip to window.
15423 (w32con_reset_terminal_modes): Clear screen buffer.
15424 (w32_face_attributes): Don't use color indexes that are out of range.
15425 Only reverse the default colors.
15426
15427 * xfaces.c (map_tty_color, tty_color_name): Remove special case for
15428 WINDOWSNT.
15429
15430 * w32console.c, w32term.h (vga_stdcolor_name): Remove.
15431
154322007-11-29 Jason Rumney <jasonr@gnu.org>
15433
15434 * w32console.c: Leave HAVE_WINDOW_SYSTEM defined.
15435 (w32_face_attributes): Use Vtty_defined_color_alist to determine
15436 if the terminal colors are initialized.
15437 (unspecified_fg, unspecified_bg): Remove unused declarations.
15438
154392007-11-29 Andreas Schwab <schwab@suse.de>
15440
15441 * keyboard.c (apply_modifiers): Fix typo.
15442
154432007-11-29 Richard Stallman <rms@gnu.org>
15444
15445 * keymap.c (Fcurrent_local_map): Doc fix.
15446
154472007-11-28 Petr Salinger <Petr.Salinger@seznam.cz> (tiny change)
15448
15449 * s/gnu-kfreebsd.h: New file.
15450
154512007-11-28 Stefan Monnier <monnier@iro.umontreal.ca>
15452
15453 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer):
15454 Don't cast redundantly.
15455
15456 * keyboard.c (KEY_TO_CHAR): New macro.
15457 (parse_modifiers, apply_modifiers): Accept integer arguments.
15458 (read_key_sequence): Use them to unify the "shift->unshift" mapping
15459 for chars and symbol keys.
15460 After doing such remapping, apply function-key-map again.
15461
154622007-11-27 Dan Nicolaescu <dann@ics.uci.edu>
15463
15464 * Makefile.in (SOME_MACHINE_LISP): Remove VMS files, they are not
15465 compiled anymore.
15466
154672007-11-26 Andreas Schwab <schwab@suse.de>
15468
15469 * process.c (list_processes_1): Fix indentation level of the
15470 command column.
15471
154722007-11-23 Andreas Schwab <schwab@suse.de>
15473
15474 * editfns.c (Fformat): Handle %c specially since it requires the
15475 argument to be of type int.
15476
154772007-11-23 Markus Triska <markus.triska@gmx.at>
15478
15479 * emacs.c (main): Call init_editfns before init_process, since
15480 init_process sets Vprocess_connection_type depending on OS release.
15481
154822007-11-22 Stefan Monnier <monnier@iro.umontreal.ca>
15483
15484 * data.c (do_symval_forwarding): Use same code as in find_symbol_value.
15485 (find_symbol_value): Use do_symval_forwarding.
15486
15487 * data.c (set_internal): Set the value in the `cons-cell' (for
15488 Buffer_Local_values) not only for frame-local variables.
15489
154902007-11-22 Andreas Schwab <schwab@suse.de>
15491
15492 * data.c (Fnumber_to_string): Add cast when passing EMACS_INT
15493 values to sprintf.
15494 * keymap.c (Fsingle_key_description): Likewise.
15495 * print.c (print_object): Likewise.
15496
154972007-11-22 Jan Djärv <jan.h.d@swipnet.se>
15498
15499 * gtkutil.c (update_frame_tool_bar): Don't call x-gtk-map-stock if
15500 file for image is nil.
15501
155022007-11-22 Dan Nicolaescu <dann@ics.uci.edu>
15503
15504 * term.c: Include stdarg.h.
15505 (fatal): Implement using varargs.
15506 * lisp.h (fatal): Add argument types. (Restore 2005-09-30 change).
15507
155082007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
15509
15510 * lisp.h (struct Lisp_Buffer_Objfwd): Add a `slottype' field.
15511 * data.c (store_symval_forwarding): Get type from buffer_objfwd.
15512 Update call to buffer_slot_type_mismatch.
15513 * buffer.h (buffer_local_types, PER_BUFFER_TYPE): Remove.
15514 (buffer_slot_type_mismatch): Update.
15515 * buffer.c (buffer_local_types): Remove.
15516 (buffer_slot_type_mismatch): Get the symbol and type as arguments.
15517 (defvar_per_buffer): Set the type in the buffer_objfwd.
15518
155192007-11-21 Jason Rumney <jasonr@gnu.org>
15520
15521 * w32bdf.c (w32_init_bdf_font, w32_BDF_to_x_font):
15522 CreateFileMapping returns NULL on failure.
15523
155242007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
15525
15526 * search.c (Fset_match_data): Remove the `evaporate' feature.
15527 (unwind_set_match_data): Don't use the `evaporate' feature.
15528
155292007-11-21 Jason Rumney <jasonr@gnu.org>
15530
15531 * dispnew.c (init_display) [WINDOWSNT]: Hardcode terminal_type.
15532
15533 * w32console.c (w32con_write_glyphs): Remove unused variables.
15534
155352007-11-20 Dan Nicolaescu <dann@ics.uci.edu>
15536
15537 * macterm.c (mac_term_init): Call add_keyboard_wait_descriptor.
15538
15539 * s/darwin.h (MULTI_KBOARD): Remove.
15540
15541 * macfns.c (x_create_tip_frame, Fx_create_frame)
15542 (x_create_tip_frame): Don't deal with MULTI_KBOARD.
15543
155442007-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
15545
15546 * buffer.c (Fbuffer_local_value): Remove redundant test.
15547 (swap_out_buffer_local_variables): Swap out binding in `buffer' rather
15548 than in `current-buffer' to match the comment.
15549 Do the swap using swap_in_global_binding.
15550
15551 * data.c (store_symval_forwarding, set_internal):
15552 * eval.c (specbind): Remove dead code.
15553
15554 * coding.c (detect_coding, Fupdate_coding_systems_internal):
15555 * fns.c (Fmd5): Use find_symbol_value rather than SYMBOL_VALUE
15556 Since we do not want to see internal Lisp_*fwd objects here.
15557
155582007-11-18 Jan Djärv <jan.h.d@swipnet.se>
15559
15560 * sysdep.c (init_system_name): Use getaddrinfo if available.
15561
15562 * xterm.c (x_scroll_bar_set_handle, x_scroll_bar_handle_click)
15563 (x_scroll_bar_note_movement): start, end, with, height in struct
15564 scroll_bar are integers and not Lisp_Object, so remove XINT for them.
15565
155662007-11-17 Dan Nicolaescu <dann@ics.uci.edu>
15567
15568 * puresize.h (BASE_PURESIZE): Increase to 1190000.
15569
155702007-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
15571
15572 * buffer.h (struct buffer): Move `undo_list' back to before `name'.
15573 This undoes Richard's change of 14-Oct-2002.
15574
15575 * alloc.c (allocate_other_vector):
15576 * lisp.h (allocate_other_vector): Remove.
15577
15578 * window.c (struct save_window_data): Move non-lisp data to the end
15579 and make it `int' rather than Lisp_Object.
15580 (Fcurrent_window_configuration): Use ALLOCATE_PSEUDOVECTOR.
15581 Done wrap/unwrap integer values.
15582 (Fset_window_configuration, compare_window_configurations):
15583 Update use of fields to their new types.
15584
15585 * xterm.h (struct scroll_bar): Only use Lisp_Object for lisp data.
15586 Turn integer fields into `int'. Merge x_window_low and x_window_high.
15587 (SCROLL_BAR_PACK, SCROLL_BAR_UNPACK, SCROLL_BAR_X_WINDOW)
15588 (SET_SCROLL_BAR_X_WINDOW): Remove.
15589 (SCROLL_BAR_X_WIDGET, SET_SCROLL_BAR_X_WIDGET):
15590 Access the new x_window field directly.
15591 * xterm.c (x_scroll_bar_create): Use a pseudovector.
15592 Don't wrap/unwrap integers into Lisp_Objects.
15593 (XTset_vertical_scroll_bar, x_scroll_bar_handle_click)
15594 (x_scroll_bar_report_motion):
15595 Don't wrap/unwrap integers into Lisp_Objects.
15596 (x_term_init): Use SDATA.
15597 (x_window_to_scroll_bar, x_create_toolkit_scroll_bar)
15598 (x_scroll_bar_set_handle, x_scroll_bar_remove)
15599 (XTset_vertical_scroll_bar, x_scroll_bar_expose)
15600 (x_scroll_bar_report_motion, x_scroll_bar_clear):
15601 * xfns.c (x_set_background_color):
15602 * gtkutil.c (xg_create_scroll_bar, xg_set_toolkit_scroll_bar_thumb):
15603 Access the new x_window field directly.
15604
15605 * alloc.c (ALLOCATE_PSEUDOVECTOR): Move to lisp.h.
15606 (allocate_pseudovector): Make non-static.
15607
15608 * lisp.h (enum pvec_type): New tag PVEC_OTHER.
15609 (allocate_pseudovector): Declare.
15610 (ALLOCATE_PSEUDOVECTOR): Move from alloc.c.
15611
156122007-11-15 Andreas Schwab <schwab@suse.de>
15613
15614 * editfns.c (Fformat): Correctly format EMACS_INT values.
15615 Also take precision into account when formatting an integer.
15616
15617 * keyboard.c (Fevent_symbol_parse_modifiers): Fix declaration.
15618
156192007-11-15 Stefan Monnier <monnier@iro.umontreal.ca>
15620
15621 * keyboard.c (Fevent_symbol_parse_modifiers): New function.
15622 (syms_of_keyboard): Defsubr it.
15623
15624 * data.c (swap_in_global_binding): Fix longstanding bug where
15625 store_symval_forwarding was not called with the right second argument,
15626 thus causing objfwd-ing from being dropped.
15627
156282007-11-14 Juanma Barranquero <lekktu@gmail.com>
15629
15630 * macfns.c (Fx_create_frame, Fx_display_pixel_width)
15631 (Fx_display_pixel_height, Fx_display_planes)
15632 (Fx_display_color_cells, Fx_server_max_request_size)
15633 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
15634 (Fx_display_visual_class, Fx_display_save_under):
15635 * w32fns.c (Fx_create_frame, Fx_display_pixel_width)
15636 (Fx_display_pixel_height, Fx_display_planes)
15637 (Fx_display_color_cells, Fx_server_max_request_size)
15638 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
15639 (Fx_display_mm_height, Fx_display_mm_width)
15640 (Fx_display_backing_store, Fx_display_visual_class)
15641 (Fw32_select_font, Fx_display_save_under):
15642 * xfns.c (Fx_create_frame, Fx_display_pixel_width)
15643 (Fx_display_pixel_height, Fx_display_planes)
15644 (Fx_display_color_cells, Fx_server_max_request_size)
15645 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
15646 (Fx_display_save_under): Fix typos in docstrings.
15647
156482007-11-14 Juanma Barranquero <lekktu@gmail.com>
15649
15650 * w32fns.c (Fw32_registered_hot_keys): Don't return the nil values
15651 corresponding to deleted entries; they are an implementation detail.
15652 (gray_bitmap_width, gray_bitmap_height, gray_bitmap_bits):
15653 Remove variables.
15654 (w32_pass_extra_mouse_buttons_to_system, w32_strict_fontnames)
15655 (w32_pass_multimedia_buttons_to_system, w32_strict_painting)
15656 (Vw32_charset_info_alist, w32_to_x_color, w32_init_class)
15657 (w32_createscrollbar, w32_createwindow, my_post_msg, w32_get_modifiers)
15658 (w32_grabbed_keys, cancel_all_deferred_msgs): Make static.
15659 (Fw32_define_rgb_color, Fw32_load_color_file)
15660 (syms_of_w32fns) <w32-pass-multimedia-buttons-to-system>:
15661 Fix typos in docstrings.
15662 (Fx_server_version): Reflow docstring.
15663 (Fw32_shell_execute): Doc fixes.
15664
156652007-11-13 Juanma Barranquero <lekktu@gmail.com>
15666
15667 * w32fns.c (Fw32_register_hot_key): Don't try to register hot key
15668 if w32_parse_hot_key returned nil.
15669
156702007-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
15671
15672 * xdisp.c (load_overlay_strings): Fix copy&paste typo.
15673
156742007-11-09 Jason Rumney <jasonr@gnu.org>
d6c952f8 15675
aac0c6e3
MR
15676 * s/ms-w32.c (USE_TOOLKIT_SCROLL_BARS): Define.
15677
15678 * w32term.c (w32_scroll_bar_handle_click): Use SCROLL_BAR_CLICK_EVENT.
15679
15680 * keyboard.c (discard_mouse_events, make_lispy_event) [WINDOWSNT]:
15681 Remove W32_SCROLL_BAR_CLICK_EVENT.
15682
15683 * termhooks.h (enum event_kind) [WINDOWSNT]: Likewise.
15684 Add MULTIMEDIA_KEY_EVENT.
15685
15686 * keyboard.c (lispy_function_keys) [WINDOWSNT]: Add more keys.
15687 (lispy_multimedia_keys) [WINDOWSNT]: New array.
15688 (make_lispy_event) [WINDOWSNT]: Use it to translate
15689 MULTIMEDIA_KEY_EVENT.
15690
15691 * w32term.h (WM_APPCOMMAND): Define if not already.
15692 (GET_APPCOMMAND_LPARAM): Likewise.
15693
15694 * w32term.c (w32_read_socket): Generate MULTIMEDIA_KEY_EVENT from
15695 WM_APPCOMMAND.
15696
15697 * w32fns.c (w32_pass_multimedia_buttons_to_system): New user option.
15698 (syms_of_w32fns): Export and initialize it.
15699 (w32_wnd_proc): Pass WM_APPCOMMAND on to w32_read_socket.
15700
157012007-11-09 Chong Yidong <cyd@stupidchicken.com>
15702
15703 * dispextern.h (struct it): Don't define OVERLAY_STRING_CHUNK_SIZE
15704 twice.
15705
15706 * xdisp.c (handle_face_prop): Fix last change.
15707
157082007-11-09 Richard Stallman <rms@gnu.org>
15709
15710 * xdisp.c (handle_face_prop): Test for strings that came from overlays,
15711 not just for after-strings and before-strings.
15712 Call face_for_overlay_string and pass the overlay to it.
15713 (handle_display_prop): Determine whether property came from an overlay.
15714 Pass OVERLAY arg to handle_single_display_spec.
15715 (handle_single_display_spec): New arg OVERLAY sets it->from_overlay.
15716 (load_overlay_strings): Fill in it->string_overlays.
15717 (get_overlay_strings_1, push_it, pop_it): Handle it->from_overlays.
15718
15719 * xfaces.c (face_for_overlay_string): Function renamed from
15720 face_at_buffer_position_no_overlays, and add arg OVERLAY.
15721
15722 * dispextern.h (struct it): New elt string_overlays.
15723 New elt from_overlay, also in stack.
15724 Rearrange a few elements.
15725 (face_for_overlay_string): Decl renamed from
15726 face_at_buffer_position_no_overlays, and add argument.
15727
157282007-11-09 Richard Stallman <rms@gnu.org>
15729
15730 * xdisp.c (handle_face_prop): Use face_at_buffer_position_no_overlays
15731 to get the base face for an overlay string.
15732
15733 * dispextern.h (face_at_buffer_position_no_overlays): Add decl.
15734
15735 * xfaces.c (face_at_buffer_position_no_overlays): New function.
15736
15737 * xdisp.c (handle_stop): Move some code out of loop.
15738
157392007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15740
15741 * macfns.c [USE_ATSUI] (Fmac_atsu_font_face_attributes):
15742 Fix conversion from Lisp object to ATSUFontID.
15743
157442007-11-09 Jason Rumney <jasonr@gnu.org>
15745
15746 * xdisp.c (Fformat_mode_line): Do nothing when noninteractive.
15747
157482007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15749
15750 * unexmacosx.c (unexec_regions_recorder, unexec_regions_merge):
15751 Don't assume regions are aligned to page boundary.
15752 (print_load_command_name): Add LC_UUID if defined.
15753
157542007-11-09 Richard Stallman <rms@gnu.org>
15755
15756 * emacs.c (syms_of_emacs) <installation-directory>: Reflow docstring.
15757
157582007-11-07 Jason Rumney <jasonr@gnu.org>
15759
15760 * s/windows95.h: Remove.
15761
157622007-11-06 Jan Djärv <jan.h.d@swipnet.se>
15763
15764 * gtkutil.c (xg_tool_bar_menu_proxy): Handle GTK_IMAGE_ICON_NAME and
15765 abort with a message on unhandled store_type values.
15766
157672007-11-01 Jan Djärv <jan.h.d@swipnet.se>
15768
15769 * xterm.c, xfns.c, xselect.c, xterm.h, s/msdos.h, s/sco4.h, s/sco5.h:
15770 Remove HAVE_X11R5 and HAVE_X11R4.
15771
157722007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
15773
15774 * Makefile.in: Remove references to sunfns.c and sunfns.o.
15775
157762007-11-01 Johan Bockgård <bojohan@gnu.org>
15777
15778 * macterm.c, w32term.c, xterm.c (x_draw_stretch_glyph_string):
15779 Don't set s->stippled_p here, since it has already been set by
15780 x_set_glyph_string_gc from x_draw_glyph_string.
15781
157822007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
15783
15784 * sunfns.c: Remove file.
15785
15786 * m/sun386.h:
15787 * m/sun2.h:
15788 * m/sparc.h: Remove Sun windows code.
15789
157902007-10-31 Stefan Monnier <monnier@iro.umontreal.ca>
15791
15792 * keyboard.c (syms_of_keyboard): Initialize the initial_kboard.
15793 (init_keyboard): Set current_kboard's window-system to nil.
15794 (tty_read_avail_input): Typo.
15795 * frame.c (make_initial_frame): Don't initialize the initial_kboard.
15796
157972007-10-31 Dan Nicolaescu <dann@ics.uci.edu>
15798
15799 * s/usg5-4.h:
15800 * s/usg5-3.h:
15801 * s/ptx.h:
15802 * m/is386.h:
15803 * m/ibmps2-aix.h:
15804 * Makefile.in: Remove all mentions of X10.
15805
15806 * dispnew.c (syms_of_display): Don't mention version 10.
15807
158082007-10-28 Juanma Barranquero <lekktu@gmail.com>
15809
15810 * makefile.w32-in (OBJ1): Remove abbrev.$(O).
15811 ($(BLD)/abbrev.$(O)): Remove.
15812
158132007-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
15814
15815 Rewrite abbrev.c in Elisp.
15816 * image.c (Qcount): Don't declare as extern.
15817 (syms_of_image): Initialize and staticpro `Qcount'.
15818 * puresize.h (BASE_PURESIZE): Increase for the new abbrev.el functions.
15819 * emacs.c (main): Don't call syms_of_abbrev.
15820 * Makefile.in (obj): Remove abbrev.o.
15821 (abbrev.o): Remove.
15822 * abbrev.c: Remove.
15823
158242007-10-26 Martin Rudalics <rudalics@gmx.at>
15825
15826 * window.c (window_min_size_2): Don't count header-line.
15827
158282007-10-26 Dan Nicolaescu <dann@ics.uci.edu>
15829
15830 * frame.h (struct frame): Move all bit fields after the first bit
15831 field to take advantage of the available space. Group all the
15832 chars together to reduce wasted space due to padding.
15833
158342007-10-26 Juanma Barranquero <lekktu@gmail.com>
15835
15836 * minibuf.c (Fread_minibuffer, Feval_minibuffer): Reflow docstrings.
15837
15838 * alloc.c (spare_memory, stack_copy, stack_copy_size, ignore_warnings)
15839 (Vdead, dont_register_blocks, staticvec, staticidx, interval_block)
15840 (n_interval_blocks, init_strings, check_string_bytes, check_sblock)
15841 (init_float, free_float, n_cons_blocks, init_cons, all_vectors)
15842 (n_vectors, symbol_block, symbol_block_index, symbol_free_list)
15843 (n_symbol_blocks, init_symbol, marker_block, marker_free_list)
15844 (n_marker_blocks, init_marker, valid_pointer_p, make_pure_float)
15845 (last_marked, mark_object_loop_halt): Make static.
15846
15847 * frame.c (syms_of_frame) <delete-frame-functions>:
15848 Fix typo in docstring.
15849
158502007-10-25 Juanma Barranquero <lekktu@gmail.com>
15851
15852 * w32.c (init_environment): Fix tiny memory leak.
15853 (w32_get_resource): Remove unused variable `ok'.
15854
158552007-10-25 Stefan Monnier <monnier@iro.umontreal.ca>
15856
15857 Make `window-system' into a keyboard-local variable (rather than
15858 frame-local as done originally by multi-tty).
15859
15860 * keyboard.h (struct kboard): Add Vwindow_system.
15861 * keyboard.c (init_kboard): Set a default for Vwindow_system.
15862 (mark_kboards): Mark Vwindow_system.
15863
15864 * dispnew.c (syms_of_display) <window-system>: Declare terminal-local.
15865 (init_display): Don't set the obsolete `window-system' frame-param.
15866
15867 * xterm.c (x_term_init):
15868 * w32term.c (w32_create_terminal):
15869 * term.c (init_tty): Set Vwindow_system.
15870 * macterm.c (mac_create_terminal): Set a keyboard (missing piece of the
15871 multi-tty merge maybe?), copied from w32term.c. Set Vwindow_system.
15872
15873 * xfns.c (Fx_create_frame, x_create_tip_frame):
15874 * w32fns.c (Fx_create_frame, x_create_tip_frame):
15875 * macfns.c (Fx_create_frame):
15876 Don't set the obsolete `window-system' frame-param.
15877
15878 * frame.h (Qwindow_system): Remove.
15879 * frame.c (Qwindow_system): Remove. In `syms_of_frame' as well.
15880 (Fmake_terminal_frame): Don't set obsolete `window-system' frame-param.
15881
158822007-10-24 Richard Stallman <rms@gnu.org>
15883
15884 * frame.c (x_figure_window_size): For fullscreen case,
15885 set USPosition | PPosition without clobbering rest of window_prompting.
15886
15887 * keyboard.c (Fcurrent_idle_time): Doc fix.
15888
15889 * print.c (Fwith_output_to_temp_buffer): Doc fix.
15890
158912007-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
15892
15893 * process.c (unwind_request_sigio): Only define if __ultrix__.
15894
15895 * callproc.c (child_setup): Remove spurious *.
15896
15897 * lisp.h (Fget_text_property): Declare.
15898 (have_menus_p): Declare it here rather than in sys-dep header files.
15899 * macterm.h (have_menus_p):
15900 * msdos.h (have_menus_p):
15901 * xterm.h (have_menus_p): Remove.
15902
15903 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
15904 (Fmake_variable_frame_local): Just check the variable's const-ness
15905 rather than checking nil or t.
15906
159072007-10-22 Jason Rumney <jasonr@gnu.org>
15908
15909 * w32fns.c: Include math.h.
15910 (w32_abort): Declaration moved to nt/config.nt.
15911
15912 * s/ms-w32.h (HAVE_STDLIB_H): Define.
15913 (abort): Redefinition moved to nt/config.nt.
15914
15915 * m/windowsnt.h: Remove.
15916
159172007-10-22 Juanma Barranquero <lekktu@gmail.com>
15918
15919 * emacs.c (Fdump_emacs): Fix typo in message.
15920 (syms_of_emacs) <kill-emacs-hook>: Fix typo in docstring.
15921 <installation-directory>: Reflow docstring.
15922
159232007-10-22 Juri Linkov <juri@jurta.org>
15924
15925 * minibuf.c: Allow minibuffer default to be a list of default values.
15926 With empty input use the first element of this list as returned default.
15927 (string_to_object)
15928 (read_minibuf_noninteractive): If defalt is cons, set val to its car.
15929 (read_minibuf): If defalt is cons, set histstring to its car.
15930 (Fread_string): If default_value is cons, set val to its car.
15931 (Fread_buffer): If def is cons, use its car.
15932 (Fcompleting_read): If defalt is cons, set val to its car.
15933
159342007-10-21 Michael Albinus <michael.albinus@gmx.de>
15935
15936 * fileio.c (Fcopy_file): Call file name handler with preserve_uid_gid.
15937
159382007-10-20 Juanma Barranquero <lekktu@gmail.com>
15939
15940 * doc.c (Fdocumentation): Check for advice in all cases.
15941
159422007-10-19 Chong Yidong <cyd@stupidchicken.com>
15943
15944 * Makefile.in [HAVE_LIBRESOLV]: Add -lresolv to linker flags.
15945
159462007-10-19 Richard Stallman <rms@gnu.org>
15947
15948 * doc.c (Fdocumentation): Check for and handle an advised function.
15949
159502007-10-19 Juanma Barranquero <lekktu@gmail.com>
15951
15952 * process.c (Fset_process_filter): Doc fix.
15953
159542007-10-18 Stefan Monnier <monnier@iro.umontreal.ca>
15955
15956 * keyboard.c (read_key_sequence): Undo a change introduced by multi-tty
15957 which caused key-translation-map to applied repeatedly (thus breaking
15958 double-mode).
15959
159602007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
15961
15962 * xselect.c (x_own_selection, x_handle_selection_clear)
15963 (x_clear_frame_selections):
15964 * w32menu.c (list_of_panes, list_of_items):
15965 * w32fns.c (w32_color_map_lookup, Fx_create_frame, Fx_display_list):
15966 * textprop.c (validate_plist, interval_has_all_properties)
15967 (interval_has_some_properties, interval_has_some_properties_list)
15968 (add_properties, text_property_list):
15969 * process.c (Fget_buffer_process, list_processes_1, status_notify):
15970 * minibuf.c (Fassoc_string):
15971 * macselect.c (x_own_selection, x_clear_frame_selections)
15972 (Fx_disown_selection_internal):
15973 * keymap.c (Fcommand_remapping, where_is_internal, describe_map_tree):
15974 Use CONSP rather than !NILP and XC[AD]R rather than Fc[ad]r.
15975
159762007-10-17 Chong Yidong <cyd@stupidchicken.com>
15977
15978 * process.c: Link to libs for calling res_init() if available.
15979 (Fmake_network_process): Call res_init() before getaddrinfo or
15980 gethostbyname, if possible.
15981
159822007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
15983
15984 * lread.c (read1): Set pvectype for char_tables.
15985
15986 * lisp.h (XMISCANY, XMARKER, XINTFWD, XBOOLFWD, XOBJFWD, XOVERLAY)
15987 (XBUFFER_OBJFWD, XBUFFER_LOCAL_VALUE, XKBOARD_OBJFWD, XSAVE_VALUE):
15988 Add type checks.
15989 (SOME_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP): Remove.
15990
15991 * alloc.c (free_misc): Use XMISCTYPE.
15992 (live_misc_p, gc_sweep): Use Lisp_Misc_Any.
15993
159942007-10-17 Glenn Morris <rgm@gnu.org>
15995
15996 * minibuf.c (Qcompletion_ignore_case): New Lisp_Object.
15997 (syms_of_minibuf): Add Qcompletion_ignore_case.
15998 * dired.c (Qcompletion_ignore_case): Change to external.
15999 (syms_of_dired) [VMS]: Remove Qcompletion_ignore_case.
16000 * fileio.c (Qcompletion_ignore_case): New external Lisp_Object.
16001 (Fread_file_name): Use it rather than intern'ing.
16002
16003 * coding.c (Qcompletion_ignore_case): New external Lisp_Object.
16004 (Fread_coding_system): Ignore case of user input.
16005
160062007-10-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16007
16008 * xdisp.c (handle_display_prop): Ignore display specs after
16009 replacing one when string text is being replaced.
16010 (handle_single_display_spec): Pretend as if characters with display
16011 property haven't been consumed only when buffer text is being replaced.
16012
160132007-10-16 Stefan Monnier <monnier@iro.umontreal.ca>
16014
16015 * xfns.c (Fx_create_frame, Fx_display_list):
16016 * window.c (window_fixed_size_p, enlarge_window)
16017 (shrink_window_lowest_first):
16018 * macterm.c (init_font_name_table):
16019 * macfns.c (Fx_create_frame, Fx_display_list):
16020 * lread.c (close_load_descs):
16021 * keyboard.c (read_char_x_menu_prompt):
16022 * fns.c (Fmember, Fmemql, Fdelete, Fset_char_table_parent):
16023 * coding.c (code_convert_region_unwind): Test the type of an object
16024 rather than just !NILP before extracting data from it.
16025
16026 * alloc.c (Fpurecopy): Set the pvec tag on pseudo vectors.
16027
16028 * lisp.h (enum Lisp_Misc_Type): Del Lisp_Misc_Some_Buffer_Local_Value.
16029 (XMISCANY): New macro.
16030 (XMISCTYPE): Use it.
16031 (struct Lisp_Misc_Any): New type.
16032 (union Lisp_Misc): Use it.
16033 (struct Lisp_Buffer_Local_Value): Add `local_if_set' bit.
16034 * data.c (Fboundp, store_symval_forwarding, swap_in_global_binding)
16035 (find_symbol_value, set_internal, default_value, Fset_default)
16036 (Fmake_variable_buffer_local, Fmake_local_variable)
16037 (Fkill_local_variable, Fmake_variable_frame_local, Flocal_variable_p)
16038 (Flocal_variable_if_set_p, Fvariable_binding_locus):
16039 The SOME_BUFFER_LOCAL_VALUEP distinction is replaced by local_if_set.
16040 * alloc.c (allocate_buffer): Set the size and tag.
16041 (allocate_misc, mark_maybe_object, mark_object, survives_gc_p):
16042 Use XMISCANY.
16043 (die): Follow the GNU convention for error messages.
16044 * print.c (print_object): SOME_BUFFER_LOCAL_VALUEP -> local_if_set.
16045 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Don't set the
16046 tag any more.
16047 (set_buffer_internal_1):
16048 * frame.c (store_frame_param):
16049 * eval.c (specbind):
16050 * xdisp.c (select_frame_for_redisplay): Drop SOME_BUFFER_LOCAL_VALUEP.
16051
16052 * doc.c (Fsnarf_documentation): Simplify.
16053
160542007-10-14 Juanma Barranquero <lekktu@gmail.com>
16055
16056 * w32term.c (w32_font_is_double_byte, my_create_scrollbar): Make static.
16057 (syms_of_w32term) <w32-enable-unicode-output>: Fix typo in docstring.
16058
160592007-10-14 Stefan Monnier <monnier@iro.umontreal.ca>
16060
16061 * buffer.c (Fmake_indirect_buffer): Set the buffer's tag.
16062
160632007-10-14 Juanma Barranquero <lekktu@gmail.com>
16064
16065 * eval.c (do_autoload): Don't save autoloads.
16066
16067 * data.c (Ffset): Save autoload of the function being set.
16068
160692007-10-07 John Paul Wallington <jpw@pobox.com>
16070
16071 * xfns.c (x_create_tip_frame): Set the `display-type' frame
16072 parameter before setting up faces.
16073
160742007-10-13 Eli Zaretskii <eliz@gnu.org>
16075
16076 * ccl.c (Fregister_code_conversion_map):
16077 * keyboard.c (append_tool_bar_item): Reformat last change.
16078
16079 * lisp.h (eabs): Rename from `abs'. All callers changed.
16080
160812007-10-05 Dmitry Antipov <dmantipov@yandex.ru>
16082
16083 * buffer.c (add_overlay_mod_hooklist):
16084 * ccl.c (Fregister_ccl_program, Fregister_code_conversion_map):
16085 * fontset.c (make_fontset):
16086 * keyboard.c (GROW_RAW_KEYBUF, menu_bar_items, menu_bar_item)
16087 (append_tool_bar_item):
16088 * macmenu.c (grow_menu_items):
16089 * w32menu.c (grow_menu_items):
16090 * xmenu.c (grow_menu_items): Use larger_vector.
16091
160922007-10-13 Eli Zaretskii <eliz@gnu.org>
16093
16094 * msdos.c (dos_rawgetc): Undo last change (there's no ``leaving
16095 selected frame'' on MSDOS).
16096
160972007-10-12 Martin Rudalics <rudalics@gmx.at>
16098
16099 * frame.c (Qexplicit_name): New variable.
16100 (x_report_frame_params): Report it in parameter alist.
16101 (syms_of_frame): Intern and staticpro it.
16102
161032007-10-10 Patrick Mahan <mahan@mahan.org> (tiny change)
16104
16105 * macfns.c (x_create_tip_frame): Set terminal for frame.
16106
161072007-10-10 Stefan Monnier <monnier@iro.umontreal.ca>
16108
16109 * frame.c (Qenvironment): Remove.
16110 (syms_of_frame) <Qenvironment>: Don't initialize.
16111 (Fdelete_frame): Don't treat the `environment' param specially.
16112 * frame.h (Qenvironment): Don't declare.
16113 * callproc.c (set_initial_environment): Don't set unused frame param.
16114
16115 * frame.c (Fframe_with_environment): Remove.
16116 (syms_of_frame) <Sframe_with_environment>: Don't declare.
16117
16118 * lisp.h (Fframe_with_environment): Don't declare.
16119
161202007-10-10 Juanma Barranquero <lekktu@gmail.com>
16121
16122 * indent.c (indent_tabs_mode, last_known_column)
16123 (last_known_column_modified): Make static.
16124 (syms_of_indent) <indent-tabs-mode>: Remove redundant info in docstring.
16125
161262007-10-10 Katsumi Yamaoka <yamaoka@jpl.org>
16127
16128 * puresize.h (BASE_PURESIZE): Increase to 1170000.
16129
161302007-10-09 Jason Rumney <jasonr@gnu.org>
16131
16132 * w32term.c (x_set_window_size): Disable code that attempts to tell
16133 Lisp code about a size change before it actually happens.
16134
161352007-10-09 Richard Stallman <rms@gnu.org>
16136
16137 * xdisp.c (handle_invisible_prop): After setting up an ellipsis,
16138 return HANDLED_RETURN.
16139
161402007-10-08 Martin Rudalics <rudalics@gmx.at>
16141
16142 * keyboard.c (kbd_buffer_get_event): Break loop waiting for input
16143 when there's an unread command event.
16144
16145 * frame.c (focus_follows_mouse): Move here from frame.el to allow
16146 window autoselection act appropriately when leaving selected frame.
16147 (syms_of_frame): Initialize focus_follows_mouse.
16148 * frame.h (focus_follows_mouse): Extern it.
16149 * macterm.c (XTread_socket): When focus_follows_mouse is nil
16150 make SELECT_WINDOW_EVENT only if we don't leave the selected frame.
16151 * msdos.c (dos_rawgetc): Likewise.
16152 * w32term.c (w32_read_socket): Likewise.
16153 * xterm.c (handle_one_xevent): Likewise.
16154 * xdisp.c (syms_of_xdisp): In doc-string of
16155 mouse-autoselect-window mention focus-follows-mouse.
16156
161572007-10-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16158
16159 * macterm.c (mac_load_query_font): Fix missing return value.
16160 [USE_CG_DRAWING] (mac_define_fringe_bitmap, mac_destroy_fringe_bitmap):
16161 Add BLOCK_INPUT.
16162
161632007-10-08 Richard Stallman <rms@gnu.org>
16164
16165 * xdisp.c (get_window_cursor_type): Implement documented behavior
16166 for cursor-in-non-selected-windows = t.
16167
161682007-10-08 Jason Rumney <jasonr@gnu.org>
16169
16170 * w32.c (w32_get_resource): Always close registry keys.
16171
161722007-10-08 Jason Rumney <jasonr@gnu.org>
16173
16174 * makefile.w32-in (LIBS): Add COMCTL32.
16175
16176 * w32fns.c (globals_of_w32fns): Init common controls.
16177
161782007-10-08 Richard Stallman <rms@gnu.org>
16179
16180 * image.c (our_memory_buffer): Rename from omfib_buffer.
16181
161822007-10-08 Richard Stallman <rms@gnu.org>
16183
16184 * buffer.c (Foverlays_at): Doc fix.
16185
161862007-10-08 Stefan Monnier <monnier@iro.umontreal.ca>
16187
16188 * fns.c (Fplist_put): Preserve uneven tail data.
16189
161902007-10-08 Peter O'Gorman <bug-gnu-emacs@mlists.thewrittenword.com> (tiny change)
16191
16192 * termhooks.h (enum event_kind): Remove trailing comma.
16193
16194 * frame.h (enum): Remove trailing comma.
16195
161962007-10-08 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
16197
16198 * w32proc.c (delete_child): Don't terminate threads of zombies.
16199
162002007-10-08 Martin Rudalics <rudalics@gmx.at>
16201
16202 * keyboard.h (struct kboard): New elt Vlast_repeatable_command.
16203
16204 * keyboard.c (syms_of_keyboard): Set up new Lisp variable
16205 last-repeatable-command.
16206 (init_kboard): Initialize Vlast_repeatable_command.
16207 (command_loop_1): Set it to real_this_command unless that was
16208 bound to an input event.
16209 (mark_kboards): Mark it.
16210
162112007-10-08 Richard Stallman <rms@gnu.org>
16212
16213 * eval.c (condition-case): Doc fix.
16214
162152007-10-08 Masatake YAMATO <jet@gyve.org>
16216
16217 * xfaces.c (tty_supports_face_attributes_p): Fix code
16218 for LFACE_INVERSE_INDEX and LFACE_BACKGROUND_INDEX; code
16219 was copied and not edited.
16220
162212007-10-09 Stefan Monnier <monnier@iro.umontreal.ca>
16222
16223 Add new `input-decode-map' keymap and use it for terminal
16224 escape sequences.
16225 * keyboard.h (struct kboard): Add Vinput_decode_map.
16226 Remove Vlocal_key_translation_map.
16227 * keyboard.c (read_key_sequence): Add support for input-decode-map.
16228 (init_kboard): Init input-decode-map.
16229 Replace local-key-translation-map back with key-translation-map.
16230 (syms_of_keyboard): Declare input-decode-map.
16231 Remove local-key-translation-map. Update docstrings.
16232 (mark_kboards): Mark Vinput_decode_map.
16233 Don't mark Vlocal_key_translation_map.
16234 * keymap.c (Fdescribe_buffer_bindings): Describe input-decode-map.
16235 Replace local-key-translation-map back with key-translation-map.
16236 * term.c (term_get_fkeys_1, CONDITIONAL_REASSIGN):
16237 Bind in input-decode-map rather than function-key-map.
16238
16239 * lisp.h (XSETPSEUDOVECTOR): Don't set the tag anymore.
16240 This was made redundant by the previous introduction of XSETPVECTYPE.
16241
162422007-10-09 Richard Stallman <rms@gnu.org>
16243
16244 * image.c (free_bitmap_record): Rename from Free_Bitmap_Record.
16245
162462007-09-29 Richard Stallman <rms@gnu.org>
16247
16248 * eval.c (internal_condition_case_2, internal_condition_case_1)
16249 (internal_condition_case): Reenable abort if x_catching_errors ()
16250 to see if that really happens and why.
16251
162522007-10-06 Andreas Schwab <schwab@suse.de>
16253
16254 * fileio.c (Fwrite_region): Ignore EINVAL error from fsync.
16255
162562007-10-04 Juanma Barranquero <lekktu@gmail.com>
16257
16258 * image.c (syms_of_image) <image-types>: Fix typo in docstring.
16259
162602007-10-03 Stefan Monnier <monnier@iro.umontreal.ca>
16261
16262 * frame.h (struct frame): Don't try to GC-mark menu_bar_items_used.
16263
162642007-10-02 Stefan Monnier <monnier@iro.umontreal.ca>
16265
16266 * window.h (struct window):
16267 * window.c (struct save_window_data, struct saved_window):
16268 * termhooks.h (struct terminal):
16269 * process.h (struct Lisp_Process):
16270 * frame.h (struct frame):
16271 * buffer.h (struct buffer):
16272 * lisp.h (struct Lisp_Vector, struct Lisp_Char_Table)
16273 (struct Lisp_Bool_Vector, struct Lisp_Subr, struct Lisp_Hash_Table):
16274 The size field of (pseudo)vectors is now unsigned.
16275 (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Simplify accordingly.
16276
16277 * lisp.h (struct Lisp_Hash_Table): Move non-traced elements at the end.
16278 Turn `count' into an integer.
16279
16280 * fns.c (make_hash_table, hash_put, hash_remove, hash_clear)
16281 (sweep_weak_table, sweep_weak_hash_tables, Fhash_table_count):
16282 * print.c (print_object) <HASH_TABLE_P>: `count' is an int.
16283 * alloc.c (allocate_hash_table): Use ALLOCATE_PSEUDOVECTOR.
16284 (mark_object) <HASH_TABLE_P>: Use mark_vectorlike.
16285
16286 * alloc.c (allocate_pseudovector): New fun.
16287 (ALLOCATE_PSEUDOVECTOR): New macro.
16288 (allocate_window, allocate_terminal, allocate_frame)
16289 (allocate_process): Use it.
16290 (mark_vectorlike): New function.
16291 (mark_object) <FRAMEP, WINDOWP, BOOL_VECTOR_P, VECTORP>: Use it.
16292 (mark_terminals): Use it.
16293 (Fmake_bool_vector, Fmake_char_table, make_sub_char_table)
16294 (Fmake_byte_code): Use XSETPVECTYPE.
16295
16296 * frame.c (Fframe_parameters): Minor simplification.
16297
16298 * insdel.c (adjust_markers_for_insert): Generalize assertion checks.
16299
16300 * marker.c (Fmarker_buffer): Make test for odd case into a failure.
16301
16302 * buffer.c (Fget_buffer_create, init_buffer_once):
16303 * lread.c (defsubr):
16304 * window.c (Fcurrent_window_configuration): Use XSETPVECTYPE.
16305
16306 * lisp.h (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Don't let them be
16307 defined differently in the m/*.h files.
16308 (XCHAR_TABLE, XBOOL_VECTOR): Add assertion checking.
16309 (XSETPVECTYPE): New macro.
16310 (XSETPSEUDOVECTOR): Use it.
16311
16312 * buffer.c (syms_of_buffer) <local-abbrev-table>: Move from abbrev.c.
16313 (DEFVAR_PER_BUFFER, defvar_per_buffer): Move from lisp.h and lread.c.
16314
16315 * lisp.h (defvar_per_buffer, DEFVAR_PER_BUFFER):
16316 * lread.c (defvar_per_buffer):
16317 * abbrev.c (syms_of_abbrev) <local-abbrev-tabl>: Move to buffer.c.
16318
16319 * window.c (candidate_window_p): Only consider as visible frames that
16320 are on the same terminal.
16321
16322 * m/ibms390x.h (MARKBIT): Remove unused macro.
16323
163242007-10-01 Juanma Barranquero <lekktu@gmail.com>
16325
16326 * lread.c (Fload): Fix typo in docstring.
16327
163282007-10-01 Michaël Cadilhac <michael@cadilhac.name>
16329
16330 * floatfns.c (Fexpt): Manually check for overflows, so that a power
16331 of a non-zero value can't yield zero.
16332
163332007-09-29 Stefan Monnier <monnier@iro.umontreal.ca>
16334
16335 * term.c (term_clear_mouse_face, term_mouse_highlight)
16336 (tty_write_glyphs_with_face): Only define is HAVE_GPM.
16337
16338 * print.c (safe_debug_print): Use XHASH.
16339
16340 * lisp.h (DECL_ALIGN, USE_LSB_TAG): Move logic to before definition of
16341 Lisp elements such as tags.
16342 (XHASH): New macro.
16343 (EQ): Use it.
16344 (SREF, SSET, STRING_COPYIN): Use SDATA.
16345 (VOID_TO_LISP, CVOID_TO_LISP, LISP_TO_VOID, LISP_TO_CVOID): Remove.
16346
16347 * alloc.c (mark_terminal): Remove left-over declaration.
16348 (enum mem_type): Replace all vector subtypes -> MEM_TYPE_VECTORLIKE.
16349 (allocate_vectorlike): Remove type argument. Adjust callers.
16350 (live_vector_p, mark_maybe_pointer, valid_lisp_object_p):
16351 Only handle the one remaining MEM_TYPE_VECTORLIKE.
16352
16353 * alloc.c (MALLOC_BLOCK_INPUT, MALLOC_UNBLOCK_INPUT): New macros
16354 to avoid unnecessary BLOCK_INPUTs when SYNC_INPUT is used.
16355 (xmalloc, xrealloc, xfree, lisp_malloc, lisp_free, lisp_align_malloc)
16356 (lisp_align_free, make_interval, allocate_string, allocate_string_data)
16357 (make_float, Fcons, allocate_vectorlike, Fmake_symbol, allocate_misc):
16358 Use them.
16359
16360 * xfaces.c (load_face_font, free_realized_face, clear_face_gcs):
16361 Don't let signal handlers run when a GC is freed but not yet NULL'ed.
16362 (x_free_gc): Remove BLOCK_INPUT since it's now redundant.
16363
163642007-09-28 Dan Nicolaescu <dann@ics.uci.edu>
16365
16366 * Makefile.in (lisp, shortlisp): Delete server.elc, it is not
16367 loaded by default.
16368
163692007-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
16370
16371 * term.c (Fgpm_mouse_start): Don't signal an error if already activated
16372 on this tty.
16373 (Fgpm_mouse_stop): Only deactivate if it was activated on this tty.
16374
16375 * term.c (mouse_face_window): Rename from Qmouse_face_window.
16376 Update all users.
16377 (handle_one_term_event): Use Gpm_DrawPointer.
16378 (Fgpm_mouse_start): Rename from Fterm_open_connection.
16379 Signal errors instead of returning nil. Always return nil.
16380 (Fgpm_mouse_stop): Rename from Fterm_close_connection.
16381 Make it a noop if gpm-mouse was not activated.
16382 (syms_of_term): Update names.
16383
163842007-09-27 Stefan Monnier <monnier@iro.umontreal.ca>
16385
16386 * sysdep.c (narrow_foreground_group, widen_foreground_group): Static.
16387 (init_sys_modes): Check that gpm_tty is the current tty.
16388
16389 * alloc.c (allocate_terminal): Set the vector size to only count the
16390 lisp fields. Initialize those to nil.
16391 (mark_object): Don't treat terminals specially.
16392 (mark_terminal): Remove.
16393 (mark_terminals): Use mark_object instead.
16394
16395 * termhooks.h (struct terminal): Move all Lisp_Object fields traced by
16396 the GC to the beginning.
16397
16398 * indent.h:
16399 * indent.c: Use EMACS_INT for ints coming from Elisp data.
16400
16401 * indent.c (Fmove_to_column): Use EMACS_INT for buffer positions.
16402
164032007-09-25 Jason Rumney <jasonr@gnu.org>
16404
16405 * frame.c (make_terminal_frame): Remove special case for WINDOWSNT.
16406
16407 * w32console.c (create_w32cons_output): Remove.
16408
16409 * term.c (init_tty): Call init_sys_modes on WINDOWSNT also.
16410
16411 * sysdep.c (init_sys_modes): Use set_terminal_modes_hook.
16412 (reset_sys_modes): Use reset_terminal_modes_hook.
16413
164142007-09-24 Stefan Monnier <monnier@iro.umontreal.ca>
16415
16416 * eval.c (do_autoload): Don't output any message.
16417
164182007-09-24 Juri Linkov <juri@jurta.org>
16419
16420 * emacs.c (standard_args): Change priority of "--no-splash"
16421 from 40 to 3. Add "--no-desktop" with the same priority.
16422
164232007-09-23 Dmitry Antipov <dmantipov@yandex.ru>
16424
16425 * alloc.c (gc_sweep): Check cons cell mark bits word by word
16426 and optimize the case where they are all 1.
16427
164282007-09-23 Johannes Weiner <hannes@saeurebad.de>
16429
16430 * lisp.h (abs): Define if not defined.
16431 * keyboard.c, sound.c, w32term.c, xfaces.c, xterm.c:
16432 Don't define `abs', since it's defined in lisp.h.
16433
164342007-09-22 Eli Zaretskii <eliz@gnu.org>
16435
16436 * term.c (DEV_TTY): New macro. Provide a definition for MS-Windows.
16437 (FRAME_TERMCAP_P) [WINDOWSNT]: Don't define to zero.
16438 (Fcontrolling_tty_p, Fresume_tty, dissociate_if_controlling_tty)
16439 (init_tty): Use DEV_TTY instead of "/dev/tty".
16440 [WINDOWSNT]: No need to protect from NAME arg being null.
16441
164422007-09-21 Dan Nicolaescu <dann@ics.uci.edu>
16443
16444 * term.c (Fsuspend_tty): Run suspend-tty-functions before cleaning
16445 up the tty state.
16446
164472007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
16448
16449 * termhooks.h (term_gpm): Delete. Use gpm_tty's NULLness instead.
16450 (gpm_tty): Change its type.
16451 * term.c (term_gpm): Delete. Use gpm_tty's NULLness instead.
16452 (gpm_tty): Change its type and initialize it.
16453 (Fterm_open_connection): Check the frame is indeed a tty.
16454 Use the new gpm_tty.
16455 (Fterm_close_connection): Use the new gpm_tty.
16456 * keyboard.c (tty_read_avail_input): Use the new gpm_tty.
16457 * sysdep.c (init_sys_modes): term_gpm -> gpm_tty.
16458
164592007-09-21 Juanma Barranquero <lekktu@gmail.com>
16460
16461 * w32term.c (x_draw_glyph_string): Use strike_through_color, not
16462 underline_color, to draw strike-through.
16463
164642007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
16465
16466 * lisp.h (allocate_terminal): Declare.
16467
16468 * window.c (candidate_window_p): Consider frames that are being placed
16469 by the user as somewhere between visible and iconified.
16470 (window_loop): Prefer windows on the current frame.
16471 (Fselect_window): Move the use of select-frame to the beginning so we
16472 can just delegate all the work (it'll call us back anyway).
16473
16474 * frame.c (Qdisplay_environment_variable):
16475 * frame.h (Qdisplay_environment_variable): Delete.
16476
16477 * .gdbinit (xbacktrace): Print the arg's address rather than the value
16478 of the first arg, since that value may be a union.
16479
16480 * callproc.c (child_setup, getenv_internal): Use the frame's `display'
16481 parameter rather than Qdisplay_environment_variable. If all else
16482 fails, look for DISPLAY in initial-environment.
16483
164842007-09-21 Glenn Morris <rgm@gnu.org>
16485
16486 * Makefile.in (emacstool): Remove target.
16487 (lisp, shortlisp): Remove termdev.elc.
16488
164892007-09-21 Markus Triska <markus.triska@gmx.at>
16490
16491 * xterm.c (x_delete_display): Compile session management conditionally.
16492
164932007-09-20 Stefan Monnier <monnier@iro.umontreal.ca>
16494
16495 * callproc.c (getenv_internal_1): New function.
16496 (getenv_internal): Use it.
16497 (Fgetenv_internal): Use it. Accept an env-list as optional arg.
16498
16499 * terminal.c (get_terminal): Don't accept ints to represent terminals.
16500 (Fterminal_name, Fterminal_parameters, Fterminal_parameter)
16501 (Fset_terminal_parameter): Work with dead terminals as well.
16502 (Fmodify_terminal_parameters): Remove.
16503
16504 * terminal.c (get_terminal): Handle terminals.
16505 Make sure the terminal returned is live.
16506 (create_terminal): Use allocate_terminal.
16507 (mark_terminals): Move to alloc.c.
16508 (delete_terminal): Use terminal->name as liveness status.
16509 NULL out fields after freeing their contents.
16510 Don't deallocate the object.
16511 (Fframe_terminal): Use FRAME_TERMINAL. Return the terminal object
16512 rather than an int.
16513 (Fterminal_live_p): Accept non-integer arguments.
16514 (Fterminal_list): Return terminal objects rather than an ints.
16515
16516 * alloc.c (enum mem_type): New member for `terminal' objects.
16517 (allocate_terminal): New function.
16518 (mark_maybe_pointer, valid_lisp_object_p, mark_object):
16519 Handle terminals.
16520 (mark_terminal): New fun.
16521 (mark_terminals): Move from terminal.c.
16522
16523 * term.c (get_tty_terminal): Don't treat output_initial specially.
16524 (Fsuspend_tty, Fresume_tty): Use terminal objects rather than ints.
16525 (delete_tty): Use terminal->name as liveness status.
16526
16527 * termhooks.h (struct terminal): Make it into a pseudovector.
16528 Remove `deleted' replaced by checking `name's nullness.
16529
16530 * print.c (print_object): Handle terminals.
16531
16532 * lisp.h (enum pvec_type): New `terminal' pseudovector.
16533 (XTERMINAL, XSETTERMINAL, TERMINALP, GC_TERMINALP): New macros.
16534
16535 * frame.c (make_terminal_frame):
16536 * keyboard.c (tty_read_avail_input):
16537 * w32term.c (x_delete_terminal):
16538 * xfns.c (Fx_create_frame, x_create_tip_frame):
16539 * xterm.c (x_delete_terminal): Use terminal->name as liveness status.
16540
165412007-09-20 Glenn Morris <rgm@gnu.org>
16542
16543 * process.c (Fmake_network_process): Doc fix.
16544
165452007-09-19 Jason Rumney <jasonr@gnu.org>
16546
16547 * dispextern.h (w32_init_fringe, mac_init_fringe): Declare rif argument.
16548
165492007-09-19 Michaël Cadilhac <michael@cadilhac.name>
16550
16551 * coding.c (detect_eol_type, detect_eol_type_in_2_octet_form):
16552 Fix a C warning regarding variable constness.
16553
16554 * xterm.c (handle_one_xevent): Fix a C warning.
16555
165562007-09-18 Jason Rumney <jasonr@gnu.org>
16557
16558 * w32fns.c (Fx_focus_frame): Rename from Fw32_focus_frame.
16559
165602007-09-17 Jan Djärv <jan.h.d@swipnet.se>
16561
16562 * gtkutil.c (gdpy_def): New variable.
16563 (xg_initialize): Initialize gdpy_def.
16564 (xg_display_close): If no other display exists, set gdpy_def to a
16565 new connection.
16566
165672007-09-16 Jan Djärv <jan.h.d@swipnet.se>
16568
16569 * gtkutil.c (xg_get_image_for_pixmap): Always create a GdkPixbuf
16570 when we have no file name for the icon.
16571 (xg_tool_bar_expose_callback): Remove.
16572 (xg_create_tool_bar): Don't connect expose signal to
16573 xg_tool_bar_expose_callback.
16574 (xg_get_file_with_chooser): Move GCPRO1 after declarations.
16575
165762007-09-16 Andreas Schwab <schwab@suse.de>
16577
16578 * alloc.c (reset_malloc_hooks): Set the hooks to the previous
16579 values instead of zapping them.
16580
165812007-09-14 Glenn Morris <rgm@gnu.org>
16582
16583 * fringe.c (init_fringe_bitmap) <swap_nibble>: Move to file scope.
16584 * gtkutil.c (xg_separator_p) <separator_names>: Move to file scope.
16585 * image.c (our_memory_fill_input_buffer) <buffer>: Move to file
16586 scope and rename to omfib_buffer for clarity.
16587 (gif_load) <interlace_start, interlace_increment>: Move to file scope.
16588
165892007-09-14 Kenichi Handa <handa@m17n.org>
16590
16591 * xterm.c (handle_one_xevent): Skip decoding if nbytes is zero.
16592
165932007-09-13 Jason Rumney <jasonr@gnu.org>
16594
16595 * fringe.c (w32_init_fringe, mac_init_fringe): Add rif argument.
16596
16597 * w32term.c (w32_term_init): Pass rif to w32_init_fringe.
16598
16599 * macterm.c (mac_initialize): Don't call mac_init_fringe here.
16600 (mac_term_init): Call here instead, passing rif.
16601
166022007-09-13 Glenn Morris <rgm@gnu.org>
16603
16604 * s/hpux.h: No longer define `static' as nothing.
16605
166062007-09-13 Johan Bockgård <bojohan@gnu.org>
16607
16608 * callint.c (Fcall_interactively): Remove unused var `fun'.
16609
166102007-09-12 Romain Francoise <romain@orebokech.com>
16611
16612 * window.c (prefer_window_split_horizontally, display_buffer):
16613 Revert 2007-09-08 change.
16614
166152007-09-12 Glenn Morris <rgm@gnu.org>
16616
16617 * alloca.c: Remove file.
16618 * Makefile.in (alloca): Do not undef.
16619 (allocaobj, alloca.o): Remove.
16620 (otherobj): Remove allocaobj.
16621 * keyboard.c (command_loop_1): Remove #ifdef C_ALLOCA block.
16622 * regex.c (C_ALLOCA): Remove all references and code that was only
16623 used when this was defined.
16624 * search.c (boyer_moore): Remove #ifdef C_ALLOCA block.
16625 * xmenu.c (xmenu_show): Remove #ifdef C_ALLOCA block.
16626 * m/ibms390x.h, m/sh3el.h (C_ALLOCA): Remove references to this.
16627
16628 * Makefile.in (SOURCES, unlock, relock): Delete.
16629
16630 * gtkutil.c (cnt): Rename to menu_grab_callback_cnt for clarity.
16631 (menu_grab_callback): All uses changed.
16632
16633 * xselect.c (cnt): Rename to x_reply_selection_request_cnt for clarity.
16634 (x_reply_selection_request): All uses changed.
16635
166362007-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
16637
16638 * lread.c (load_warn_old_style_backquotes): Change message to look
16639 better when it appears in the middle of byte-compiler messages.
16640
166412007-09-10 Dan Nicolaescu <dann@ics.uci.edu>
16642
16643 * s/darwin.h (MULTI_KBOARD): Only define for Carbon.
16644
16645 * xterm.c (x_create_terminal): Add comment.
16646
16647 * term.c (clear_tty_hooks, set_tty_hooks): Add comments.
16648
166492007-09-10 Richard Stallman <rms@gnu.org>
16650
16651 * xterm.c (x_term_init): Give error if can't open DISPLAY_NAME.
16652
166532007-09-10 Michaël Cadilhac <michael@cadilhac.name>
16654
16655 * lisp.h (struct Lisp_Subr): Rename `prompt' field to `intspec'.
16656 (DEFUN): Document `intspec', use it instead of `prompt'.
16657
16658 * eval.c (Fcommandp): Change `->prompt' to `->intspec'.
16659
16660 * data.c (Finteractive_form): If the interactive specification starts
16661 with a `(', use it as a Lisp form.
16662
16663 * fileio.c (Fset_file_modes): Add an interactive spec that reads a file
16664 name and file modes.
16665
16666 * callint.c (Fcall_interactively): Comment fixes.
16667
166682007-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
16669
16670 * callint.c (Fcall_interactively): Use Finteractive_form also for subrs
16671 and compiled functions.
16672
166732007-09-08 Fredrik Axelsson <f.axelsson@gmail.com>
16674
16675 * window.c (prefer_window_split_horizontally): New variable.
16676 (display_buffer): Consider splitting window horizontally depending
16677 on prefer_window_split_horizontally.
16678
166792007-09-08 Eli Zaretskii <eliz@gnu.org>
16680
16681 * sysdep.c [WINDOWSNT]: Don't include sysselect.h.
16682
166832007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
16684
16685 * s/cygwin.h (GC_MARK_STACK): Enable conservative stack marking.
16686
16687 * frame.c (x_set_frame_parameters): Check number is positive before
16688 using XFASTINT.
16689
16690 * window.c (freeze_window_start): Don't presume selected_window holds
16691 a window object.
16692 (Fdisplay_buffer): Remove `register' since `buffer' needs to be gcpro'd.
16693
166942007-09-07 Angelo Graziosi <Angelo.Graziosi@roma1.infn.it> (tiny change)
16695
16696 * term.c (dissociate_if_controlling_tty): Call setsid on CYGWIN.
16697
166982007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
16699
16700 * window.c (Vsplit_window_preferred_function): New var.
16701 (Fdisplay_buffer): Use it.
16702 (syms_of_window): Export, and initialize it.
16703
167042007-09-06 Pixel <pixel@mandriva.com> (tiny change)
16705
16706 * image.c (gif_load): Fix bug: Handle nonexistent colormap.
16707
167082007-09-06 Glenn Morris <rgm@gnu.org>
16709
16710 * gtkutil.c (menu_grab_callback) <cnt>:
16711 * xselect.c (x_reply_selection_request) <cnt>: Move static
16712 variable to file scope.
16713
167142007-09-06 Stefan Monnier <monnier@iro.umontreal.ca>
16715
16716 * xdisp.c (redisplay_internal): Make sure Elisp code always sees
16717 consistent values of selected_frame and selected_window.
16718
167192007-09-04 Jason Rumney <jasonr@gnu.org>
16720
16721 * w32console.c (initialize_w32_display): Zero unused hooks.
16722
167232007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
16724
16725 * term.c (Vsuspend_tty_functions, Vresume_tty_functions)
16726 (syms_of_term, Fsuspend_tty, Fresume_tty): Undo previous change.
16727
167282007-09-04 Jason Rumney <jasonr@gnu.org>
16729
16730 * term.c (init_tty) [WINDOWSNT]: Add hooks that are not accessible
16731 in w32console.c. Set up input. Remove XXX comments that have been
16732 confirmed as correct.
16733
16734 * s/ms-w32.h (MULTI_KBOARD): Define.
16735
16736 * w32console.c (one_and_only_w32cons): Remove.
16737 (initialize_w32_display): Take terminal argument.
16738
16739 * term.c (init_tty) [WINDOWSNT]: Pass terminal to
16740 initialize_w32_display.
16741 (init_tty) [MULTI_KBOARD]: Include this code on WINDOWSNT too.
16742
16743 * termhooks.h (enum event_kind) <HORIZ_WHEEL_EVENT>: New event.
16744
16745 * keyboard.c (discard_mouse_events): Discard it.
16746 (make_lispy_event): Translate it to a lisp event.
16747 (lispy_wheel_names): Add wheel-left and right events.
16748 (syms_of_keyboard): Enlarge wheel_syms.
16749
16750 * w32fns.c (w32_wnd_proc) <WM_DROPFILES>: Merge with WM_MOUSEWHEEL.
16751 <WM_MOUSEHWHEEL>: Pass new system message to lisp.
16752
16753 * w32term.h (WM_MOUSEHWHEEL): Define if system headers don't.
16754
16755 * w32term.c (construct_mouse_wheel): Make HORIZ_WHEEL_EVENT
16756 from WM_MOUSEHWHEEL.
16757 (w32_read_socket) <WM_MOUSEHWHEEL>: Treat as WM_MOUSEWHEEL.
16758
16759 * w32fns.c (x_create_tip_frame) [MULTI_KBOARD]: Get keyboard from
16760 terminal.
16761
16762 * w32term.c (w32_create_terminal) [MULTI_KBOARD]: Create a new
16763 keyboard for the terminal.
16764
167652007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
16766
16767 * term.c (Vsuspend_tty_hook): Rename from Vsuspend_tty_functions.
16768 (Vresume_tty_hook): Rename from Vresume_tty_functions.
16769 (syms_of_term): Rename suspend-tty-functions to suspend-tty-hook
16770 and resume-tty-function to resume-tty-hook.
16771 (Fsuspend_tty, Fresume_tty): Use new names.
16772
167732007-09-02 Jan Djärv <jan.h.d@swipnet.se>
16774
16775 * gtkutil.c (update_frame_tool_bar): Handle stock name as a named icon
16776 if it starts with "n:".
16777
167782007-08-31 Jan Djärv <jan.h.d@swipnet.se>
16779
16780 * gtkutil.c (update_frame_tool_bar): Initialize wbutton to NULL.
16781
167822007-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
16783
16784 * frame.h:
16785 * frame.c (Qterm_environment_variable): Remove.
16786 (syms_of_frame): Don't init and staticpro it.
16787
16788 * callproc.c (getenv_internal): Remove special case for $TERM.
16789
16790 * callproc.c (Vinitial_environment): New variable.
16791 (set_initial_environment): Initialize it.
16792 (syms_of_callproc): Declare it.
16793 (child_setup): Don't mess with TERM via Qterm_environment_variable; the
16794 TERM under which a process runs is never related to the TERM in which
16795 Emacs is running.
16796
167972007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
16798
16799 * config.in (HAVE_WINDOW_SYSTEM): Don't undef MULTI_KBOARD here...
16800 * s/darwin.h: ... do it here.
16801
168022007-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
16803
16804 * lisp.h (set_initial_environment): Rename from set_global_environment.
16805
16806 * Makefile.in (${etc}DOC): Re-add a ${EXEEXT} which seems to have been
16807 removed by mistake on the multi-tty branch.
16808
16809 * frame.c (make_terminal_frame): Yet Another Int/Lisp_Object Mixup.
16810 (Fmodify_frame_parameters): Return a value.
16811
16812 * image.c (png_load): Comment-out var only used in commented-out code.
16813
16814 * term.c (mark_ttys): Don't bother checking top_frame (incorrectly)
16815 before passing it to mark_object.
16816
16817 * xfaces.c (internal_resolve_face_name): Return a value.
16818 (internal_resolve_face_name, resolve_face_name_error): Comment out.
16819
16820 * xfns.c (check_x_display_info): Yet Another Int/Lisp_Object Mixup.
16821 (x_icon): Comment-out var only used in commented-out code.
16822
168232007-08-29 Romain Francoise <romain@orebokech.com>
16824
16825 * keyboard.c (Fset_input_mode): Don't call `Fset_quit_char' if
16826 QUIT hasn't been provided.
16827
168282007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
16829
16830 * callproc.c (child_setup, getenv_internal): Use the
16831 display-environment-variable and term-environment-variable frame params.
16832 (set_initial_environment): Initialise Vprocess_environment.
16833
16834 * config.in: Disable multi-keyboard support on a mac.
16835
16836 * frame.c (Qterm_environment_variable)
16837 (Qdisplay_environment_variable): New variables.
16838 (syms_of_frame): Intern and staticpro them.
16839 (Fmake_terminal_frame): Disable output method test.
16840
16841 * frame.h: Declare them here.
16842
16843 * macfns.c (x_set_mouse_color): Get rif from the frame.
16844 (x_set_tool_bar_lines): Don't use updating_frame.
16845 (mac_window): Add 2 new parameters for consistency with other systems.
16846 (Fx_create_frame): Fix doc string. Rename the parameter. Set the
16847 frame parameters following what is done in X11 and w32. Don't use
16848 FRAME_MAC_DISPLAY_INFO.
16849 (Fx_open_connection, start_hourglass): Remove window-system check.
16850 (x_create_tip_frame): Get the keyboard from the terminal.
16851
16852 * macmenu.c: Reorder includes.
16853 (Fx_popup_menu): Use terminal specific mouse_position_hook.
16854
16855 * macterm.c (XTset_terminal_modes, XTreset_terminal_modes): Add a
16856 terminal parameter.
16857 (x_clear_frame): Add a frame parameter.
16858 (note_mouse_movement): Get rif from the frame.
16859 (mac_term_init): Initialize the terminal.
16860 (mac_initialize): Make static and move terminal initialization ...
16861 (mac_create_terminal): ... to this new function.
16862
16863 * macterm.h (struct mac_display_info): Add terminal.
16864 (mac_initialize): Delete declaration.
16865
16866 * puresize.h (BASE_PURESIZE): Increase base value to 1164000.
16867
16868 * sysdep.c: Comment out text after #endif.
16869
16870 * term.c (init_tty): Only use terminal->kboard when MULTI_KBOARD
16871 is defined. Better initialize ttys in windows. Use terminal
16872 specific mouse_position_hook.
16873
16874 * termhooks.h (union display_info): Add mac_display_info.
16875
16876 * w32fns.c (Fx_create_frame): Use kboard from the terminal.
16877 Set the default minibuffer frame, window_system and the rest of the
16878 frame parameters following what is done in X11.
16879
16880 * w32term.c (w32_initialize): Make static.
16881
16882 * xselect.c (x_handle_selection_clear): Only access
16883 terminal->kboard when MULTI_KBOARD is defined.
16884
16885 * s/darwin.h (SYSTEM_PURESIZE_EXTRA): Define here.
16886 (SYSTEM_PURESIZE_EXTRA): Only define on Carbon.
16887
168882007-08-29 Jason Rumney <jasonr@gnu.org>
16889
16890 * frame.c (Fdelete_frame): Only get kboard when MULTI_KBOARD defined.
16891 (make_terminal_frame) [WINDOWSNT]: Initialize terminal.
16892
16893 * fringe.c (w32_init_fringe w32_reset_fringes) [HAVE_NTGUI]:
16894 (mac_init_fringe) [MAC_OS]: Get rif from selected_frame.
16895
16896 * keyboard.c (restore_kboard_configuration): Only define when
16897 MULTI_KBOARD defined.
16898
16899 * makefile.w32-in: Update dependancies from Makefile.in.
16900 (OBJ1): Add terminal.$(O)
16901
16902 * term.c (dissociate_if_controlling_tty) [WINDOWSNT]:
16903 Don't define function body.
16904 (init_tty) [WINDOWSNT]: Use selected_frame for initializing.
16905
16906 * termhooks.h (display_info) [WINDOWSNT]: Add w32.
16907
16908 * w32.c (request_sigio, unrequest_sigio): Remove.
16909
16910 * w32console.c (w32con_move_cursor, w32con_clear_to_end)
16911 (w32con_clear_frame, w32con_clear_end_of_line)
16912 (w32con_ins_del_lines, w32con_insert_glyphs, w32con_write_glyphs)
16913 (w32con_delete_glyphs, w32con_set_terminal_window)
16914 (scroll_line, w32_sys_ring_bell): Add frame arg.
16915 (w32con_set_terminal_modes, w32con_reset_terminal_modes):
16916 Add terminal arg.
16917 (PICK_FRAME): Remove.
16918 (w32con_write_glyphs): Use frame specific terminal coding.
16919 (one_and_only_w32cons): New global variable.
16920 (initialize_w32_display): Use it for storing hooks.
16921 (create_w32cons_output): New function.
16922
16923 * w32inevt.c, w32inevt.h (w32_console_read_socket): Make first
16924 arg a frame.
16925
16926 * w32fns.c (x_create_tip_frame): Set terminal and ref count.
16927 Set window_system.
16928 (x_set_tool_bar_lines): Don't use updating_frame.
16929 (Fx_create_frame): Set terminal and ref count.
16930 (Fx_open_connection): Remove window-system check.
16931
16932 * w32menu.c (Fx_popup_menu): Use terminal specific mouse_position_hook.
16933
16934 * w32term.c (w32_term_init): Call add_keyboard_wait_descriptor.
16935 (w32_set_terminal_modes, w32_reset_terminal_modes): Add terminal arg.
16936 (x_clear_frame, x_delete_glyphs, w32_ring_bell, x_ins_del_lines):
16937 Add frame arg.
16938 (x_delete_terminal, w32_create_terminal): New functions.
16939 (w32_term_init): Create a terminal.
16940 (w32_initialize): Move terminal specific initialization to
16941 w32_create_terminal.
16942
16943 * w32term.h (x_output): Remove foreground_pixel and background_pixel.
16944 (w32_clear_rect, w32_clear_area): Use background from frame.
16945 (w32_display_info): Add terminal.
16946 (w32_sys_ring_bell, x_delete_display): Declare here.
16947
16948 * xdisp.c (display_menu_bar) [HAVE_NTGUI]: Check frame type.
16949
16950 * s/ms-w32.h (SYSTEM_PURESIZE_EXTRA): Bump to 50k.
16951
169522007-08-29 Kalle Olavi Niemitalo <kon@iki.fi> (tiny change)
16953
16954 * keyboard.c (interrupt_signal, handle_interrupt, Fset_quit_char):
16955 Fix get_named_tty calls for the controlling tty.
16956
169572007-08-29 ARISAWA Akihiro <ari@mbf.ocn.ne.jp> (tiny change)
16958
16959 * term.c (dissociate_if_controlling_tty)[USG]: Fix parse error.
16960
169612007-08-29 Yoshiaki Kasahara <kasahara@nc.kyushu-u.ac.jp> (tiny change)
16962
16963 * term.c (tty_insert_glyphs): Add missing first parameter.
16964
169652007-08-29 Károly Lőrentey <karoly@lorentey.hu>
16966
16967 * buffer.c (Fbuffer_list, Fbury_buffer):
16968 Take frame->buried_buffer_list into account.
16969
16970 * cm.c (current_tty): New variable, for cmputc().
16971 (cmputc): Use it.
16972 (cmcheckmagic): Add tty parameter, look up terminal streams there.
16973 (calccost): Add tty parameter. Use emacs_tputs() instead of tputs().
16974 (cmgoto): Add tty parameter. Pass it on to calccost().
16975 Use emacs_tputs() instead of tputs().
16976
16977 * cm.h (emacs_tputs): New macro to set current_tty, and then call
16978 tputs().
16979 (current_tty): New variable, for cmputc().
16980 (cmcheckmagic, cmputc, cmgoto): Add prototypes.
16981
16982 * eval.c (unwind_to_catch): Don't call x_fully_uncatch_errors.
16983 (internal_condition_case, internal_condition_case_1)
16984 (internal_condition_case_2): Don't abort when x_catching_errors.
16985
16986 * fns.c (Fyes_or_no_p): Don't try to open an X dialog on tty terminals.
16987 (Fy_or_n_p): Likewise. Use temporarily_switch_to_single_kboard to
16988 prevent crashes caused by bogus longjmps in read_char.
16989
16990 * keymap.h (Fset_keymap_parent): Add EXFUN.
16991
16992 * macterm.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL)
16993 * w32term.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
16994 Remove redundant definition.
16995
16996 * macfns.c (x_set_mouse_color, x_make_gc):
16997 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
16998
16999 * w32term.c (x_free_frame_resources):
17000 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
17001 (w32_initialize): Use the accessor macros for terminal characteristics.
17002
17003 * macterm.c (mac_initialize): Use Fset_input_interrupt_mode.
17004 Use the accessor macros for terminal characteristics.
17005 * msdos.c (internal_terminal_init): Use the accessor macros for
17006 terminal characteristics.
17007 (ScreenVisualBell, internal_terminal_init):
17008 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
17009
17010 * termopts.h (no_redraw_on_reenter): Declare.
17011
17012 * alloc.c (emacs_blocked_malloc): Disable mallopt call.
17013 (mark_terminals, mark_ttys): Declare.
17014 (Fgarbage_collect): Call them.
17015 (mark_object): Mark buried_buffer_list.
17016
17017 * prefix-args.c: Include stdlib.h for exit.
17018
17019 * syssignal.h: Add comment.
17020
17021 * indent.c: Include stdio.h.
17022
17023 * window.h (Vinitial_window_system): Declare.
17024 (Vwindow_system): Delete declaration.
17025
17026 * fontset.c (Finternal_char_font): Use FRAME_RIF.
17027
17028 * image.c (lookup_image): Don't initialize `c' until the xasserts
17029 have been run.
17030
17031 * gtkutil.c (xg_create_frame_widgets): Use FRAME_BACKGROUND_PIXEL and
17032 FRAME_FOREGROUND_PIXEL.
17033
17034 * print.c (print_preprocess): Don't lose print_depth levels while
17035 iterating.
17036
17037 * widget.c (update_from_various_frame_slots):
17038 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
17039
17040 * window.c (set_window_buffer): Don't call clear_mouse_face on tty
17041 frames.
17042 (window_internal_height): Remove bogus make_number call.
17043 (init_window_once): Call make_terminal_frame with two zero parameters.
17044
17045 * fileio.c (Fread_file_name): Update comment.
17046
17047 * callint.c (Fcall_interactively):
17048 Use temporarily_switch_to_single_kboard instead of single_kboard_state.
17049 Make sure it is correctly unwound.
17050
17051 * xsmfns.c (x_session_close): New function.
17052
17053 * coding.h (terminal_coding, safe_terminal_coding, keyboard_coding):
17054 Delete declarations.
17055
17056 * xterm.h: Remove declaration for x_fully_uncatch_errors.
17057 (x_output): Remove background_pixel and foreground_pixel fields.
17058 (x_display_info): Add new field TERMINAL. Remove KBOARD field.
17059 (x_delete_device, x_session_close): Declare.
17060
17061 * lread.c: Include setjmp.h. Update declaration of `read_char'.
17062 (read_filtered_event): Call `read_char' with a local
17063 `wrong_kboard_jmpbuf'.
17064
17065 * minibuf.c (read_minibuf): Call temporarily_switch_to_single_kboard.
17066 Don't call single_kboard_state. Use FRAME_RIF.
17067
17068 * process.c (Fmake_network_process): Don't unrequest_sigio on modern
17069 systems.
17070
17071 * lisp.h (set_process_environment): Rename to `set_global_environment'.
17072 (Fframe_with_environment, Fset_input_meta_mode)
17073 (Fset_quit_char): EXFUN.
17074 (x_create_device, tty_output, terminal, tty_display_info): Declare.
17075 (init_sys_modes, reset_sys_modes): Update prototypes.
17076 (init_all_sys_modes, reset_all_sys_modes): New prototypes.
17077
17078 * keyboard.h (struct kboard): Add new fields Vlocal_function_key_map,
17079 Vlocal_key_translation_map, and Vkeyboard_translate_table.
17080 (Vfunction_key_map, Vkeyboard_translate_table, single_kboard_state):
17081 Delete declarations.
17082 (Vfunction_key_map, Vkey_translation_map, push_kboard, pop_kboard)
17083 (temporarily_switch_to_single_kboard, tty_read_avail_input):
17084 New declarations.
17085
17086 * emacs.c (main): Don't call init_sys_modes(), the new term_init()
17087 already does that during init_display(). Call syms_of_keymap
17088 before syms_of_keyboard. Call `syms_of_terminal'.
17089 Call set_initial_environment, not set_process_environment.
17090 (shut_down_emacs): Call reset_all_sys_modes() instead of
17091 reset_sys_modes().
17092
17093 * xfaces.c (x_free_gc): Protect xassert with GLYPH_DEBUG.
17094 (internal_resolve_face_name, resolve_face_name_error): New functions.
17095 (resolve_face_name): Protect against loops and errors thrown by Fget.
17096 (realize_default_face): Don't use FRAME_FONT unless frame is an X frame.
17097 (Ftty_supports_face_attributes_p): Update tty_capable_p call.
17098
17099 * scroll.c: Replace CURTTY() with local variables throughout the
17100 file (where applicable).
17101 (calculate_scrolling, calculate_direct_scrolling)
17102 (scrolling_1, scroll_cost): Use the accessor macros for terminal
17103 characteristics.
17104
17105 * keymap.c (Vfunction_key_map): Remove.
17106 (Fdescribe_buffer_bindings): Update references to Vfunction_key_map.
17107 (syms_of_keymap): Remove DEFVAR for Vfunction_key_map.
17108 (Vkey_translation_map): Remove.
17109 (syms_of_keymap): Remove DEFVAR for key-translation-map.
17110 (Fdescribe_buffer_bindings)
17111 (read_key_sequence, init_kboard, syms_of_keyboard, mark_kboards):
17112 Update for terminal-local key-translation-map.
17113
17114 * Makefile.in (callproc.o): Update dependencies.
17115 (lisp, shortlisp): Add termdev.elc.
17116 (obj): Add terminal.o.
17117 (terminal.o): Add dependencies.
17118 [HAVE_CARBON]: Make terminal.o depend on macgui.h.
17119 (data.o, fns.o): Add termhooks.h dependency.
17120 (SOME_MACHINE_LISP): Add dnd.elc.
17121 (minibuf.o): Fix typo.
17122 Update dependencies.
17123
17124 * data.c (do_symval_forwarding, store_symval_forwarding)
17125 (find_symbol_value): Use the selected frame's keyboard, not
17126 current_kboard.
17127
17128 * .gdbinit (init_sys_modes): Use Vinitial_window_system instead of
17129 Vwindow_system.
17130
17131 * xmenu.c (Fx_menu_bar_open) [USE_X_TOOLKIT, USE_GTK]: Rename from
17132 Fmenu_bar_open.
17133 (syms_of_xmenu): Update defsubr.
17134 (mouse_position_for_popup, Fx_popup_menu)
17135 (Fx_popup_dialog, x_activate_menubar, update_frame_menubar)
17136 (set_frame_menubar, free_frame_menubar)
b97439ce 17137 (create_and_show_popup_menu, xmenu_show)
aac0c6e3
MR
17138 (create_and_show_dialog, xdialog_show, xmenu_show): Abort if not
17139 an X frame.
17140
17141 * xselect.c (x_own_selection): Abort if not an X frame.
17142 (some_frame_on_display): Check if it is an X frame.
17143 (x_handle_selection_clear): Deal with MULTI_KBOARD.
17144
17145 * coding.c: Include frame.h and termhooks.h.
17146 (terminal_coding, keyboard_coding): Delete.
17147 (Fset_terminal_coding_system_internal)
17148 (Fset_keyboard_coding_system_internal)
17149 (Fkeyboard_coding_system)
17150 (Fterminal_coding_system): Add a terminal parameter.
17151 Get terminal_coding from the terminal.
17152 (init_coding_once): Don't call setup_coding_system here.
17153
17154 * dispextern.h (set_scroll_region, turn_off_insert)
17155 (turn_off_highlight, background_highlight, clear_end_of_line_raw)
17156 (tty_clear_end_of_line, tty_setup_colors)
17157 (delete_tty, updating_frame)
17158 (produce_special_glyphs, produce_glyphs, write_glyphs)
17159 (insert_glyphs): Remove.
17160 (raw_cursor_to, clear_to_end, tty_turn_off_insert)
17161 (tty_turn_off_highlight, get_tty_size): Add declaration.
17162 (tabs_safe_p, init_baud_rate, get_tty_terminal): Update prototypes.
17163
17164 * frame.h (enum output_method): Add output_initial.
17165 (struct x_output): Delete.
17166 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
17167 Access foreground_pixel and background_pixel directly from the frame.
17168 (tty_display): Delete.
17169 (struct frame): Add buried_buffer_list, foreground_pixel,
17170 background_pixel and terminal. Delete kboard.
17171 (union output_data): Add tty.
17172 (FRAME_KBOARD): Get the kboard from the terminal.
17173 (FRAME_INITIAL_P): New macro.
17174 (Qtty, Qtty_type, Qterminal, Qterminal_live_p, Qenvironment)
17175 (Qterm_environment_variable, Qdisplay_environment_variable)
17176 (make_terminal_frame, Qburied_buffer_list, Qwindow_system):
17177 New declarations.
17178
17179 * termchar.h (tty_output, tty_display_info): New structures.
17180 (tty_list): Declare.
17181 (FRAME_TTY, CURTTY): New macros.
17182 (must_write_spaces, min_padding_speed, fast_clear_end_of_line)
17183 (line_ins_del_ok, char_ins_del_ok, scroll_region_ok)
17184 (scroll_region_cost, memory_below_frame, fast_clear_end_of_line)
17185 (dont_calculate_costs, no_redraw_on_reenter): Remove declarations.
17186
17187 * callproc.c: Include frame.h and termhooks.h, for terminal
17188 parameters.
17189 (add_env): New function.
17190 (child_setup): Use it.
17191 (child_setup, getenv_internal): Handle the new Vprocess_environment.
17192 (getenv_internal): Fix get_terminal_param call.
17193 (Fgetenv_internal, egetenv): Update doc.
17194 (syms_of_callproc): Initialize Vprocess_environment to nil.
17195 Register and initialize them. Remove obsolete defvars. Update doc
17196 strings.
17197 (child_setup): Handle Vlocal_environment_variables.
17198 (getenv_internal): Add terminal parameter.
17199 Handle Vlocal_environment_variables.
17200 (Fgetenv_internal): Add terminal parameter.
17201 (child_setup, getenv_internal, Fgetenv_internal): Store the local
17202 environment in a frame (not terminal) parameter. Update doc strings.
17203 (set_initial_environment): Rename from set_global_environment.
17204 Store Emacs environment in initial frame parameter.
17205
17206 * xdisp.c (redisplay_internal): Update references to
17207 `previous_terminal_frame'.
17208 (display_mode_line, Fformat_mode_line): Replace calls to
17209 `push_frame_kboard' with `push_kboard'.
17210 (get_glyph_string_clip_rects): Add extra parentheses and
17211 braces to prevent compiler warnings.
17212 (calc_pixel_width_or_height): Add xassert to check that the
17213 frame is alive. Don't call `lookup_image' on a termcap frame.
17214 (message2_nolog, message3_nolog, redisplay_internal)
17215 (set_vertical_scroll_bar, redisplay_window, check_x_display_info)
17216 (x_set_scroll_bar_foreground, x_set_scroll_bar_background)
17217 (Fx_create_frame, Fxw_display_color_p, Fx_display_grayscale_p)
17218 (Fx_display_pixel_width, Fx_display_pixel_height)
17219 (Fx_display_planes, Fx_display_color_cells)
17220 (Fx_server_max_request_size, Fx_server_vendor, Fx_server_version)
17221 (Fx_display_screens, Fx_display_mm_height, Fx_display_mm_width)
17222 (Fx_display_backing_store, Fx_display_visual_class)
17223 (Fx_display_save_under, Fx_close_connection, x_create_tip_frame):
17224 Use FRAME_TERMINAL_P, FRAME_WINDOW_P, FRAME_TTY and FRAME_RIF.
17225
17226 * xfns.c (x_set_foreground_color x_set_background_color)
17227 (x_set_mouse_color, x_set_cursor_color, x_make_gc):
17228 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
17229 (Fx_create_frame, x_create_tip_frame, build_string, x_window)
17230 (Fx_create_frame, x_create_tip_frame): Don't create frames on a
17231 terminal that is being deleted.
17232 (Fx_create_frame): Use `store_frame_param' to set `window-system'
17233 frame parameter, and make sure it overrides any user-supplied setting.
17234 (Fx_close_connection, Fx_synchronize): Unify argument names with
17235 the rest of the DEFUNs.
17236
17237 * dispnew.c (Fsend_string_to_terminal): Update call to
17238 `get_tty_terminal'.
17239 (Fredraw_frame, Fsend_string_to_terminal)
17240 (Fsend_string_to_terminal, init_display): Use FRAME_RIF,
17241 FRAME_TERMCAP_P and FRAME_TTY.
17242 (window_change_signal): Don't believe width/height values that are
17243 impossibly small.
17244 (Vinitial_window_system): Rename from Vwindow_system.
17245 (termscript, Wcm, rif): Delete.
17246
17247 * termhooks.h (struct terminal): New struct containing the
17248 previously global text display hooks and new members NAME,
17249 DELETED and PARAM_ALIST.
17250 (FRAME_TERMINAL, TERMINAL_TERMINAL_CODING)
17251 (TERMINAL_KEYBOARD_CODING, TERMINAL_ACTIVE_P, FRAME_WINDOW_P)
17252 (FRAME_RIF): New macros.
17253 (get_terminal_param, get_device): New declarations.
17254 (termscript): Delete declaration.
17255
17256 * xterm.c (x_initialize): Use Fset_input_interrupt_mode.
17257 (XTflash, x_free_frame_resources, x_scroll_bar_create)
17258 (x_scroll_bar_set_handle): Use FRAME_BACKGROUND_PIXEL and
17259 FRAME_FOREGROUND_PIXEL.
17260 (x_fully_uncatch_errors): Disable definition.
17261 (x_scroll_bar_expose): Fix reference to foreground pixel.
17262 (XTread_socket): Disable loop on all X displays.
17263 (x_delete_terminal): Don't set terminal->deleted and let
17264 delete_terminal delete the frames on the terminal.
17265 (x_delete_display): Doc update to reflect changes in
17266 delete_terminal.
17267 (x_display_info) <terminal>: Move member earlier in the struct.
17268 (deleting_tty): Remove old variable.
17269 (Fsuspend_tty): Call clear_tty_hooks.
17270 (Fresume_tty, init_tty): Call set_tty_hooks.
17271 (Ftty_display_color_p, Ftty_display_color_cells): Don't throw
17272 errors on X frames.
17273 (x_catch_errors_unwind): Abort if x_error_message is NULL.
17274 (handle_one_xevent): Initialize `f' to NULL.
17275 (x_delete_terminal, x_create_terminal): New functions.
17276 (XTset_terminal_modes, XTreset_terminal_modes)
17277 (XTread_socket, x_connection_closed, x_term_init)
17278 (x_term_init, x_delete_display): Add terminal parameter.
17279 (x_term_init) [!HAVE_GTK_MULTIDISPLAY]: Refuse to create secondary
17280 X connections.
17281
17282 * frame.c: Include termchar.h.
17283 (Qterminal, Qterminal_live_p, Qburied_buffer_list, Qtty, Qtty_type)
17284 (Qwindow_system, Qenvironment, Qterm_environment_variable)
17285 (Qdisplay_environment_variable): New vars.
17286 (Fframep): Deal with output_initial.
17287 (Fframe-live-p): Doc fix.
17288 (Fwindow-system): New function.
17289 (x_set_screen_gamma, store_frame_param): Fix compilation errors.
17290 (make_terminal_frame): Don't create frames on a terminal that is
17291 being deleted. Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
17292 (store_frame_param): Check for found_for_frame before calling XFRAME.
17293 (Fmake_terminal_frame): Handle NULL tty names correctly.
17294 (syms_of_frame): Enhance doc string of `default-frame-alist'.
17295 (Fdelete_frame): Remove unused variable `count'. Don't allow other
17296 frames to refer to a deleted frame in their 'environment parameter.
17297 (Fframe_with_environment): New function.
17298 (syms_of_frame): Defsubr it. Initialize and staticpro Qenvironment.
17299 (get_future_frame_param): New function.
17300 (Fmake_terminal_frame): Use it.
17301 (x_set_frame_parameters, x_set_screen_gamma): Use FRAME_RIF.
17302
17303 * sysdep.c (init_sys_modes, reset_sys_modes): Update for renames.
17304 * sysdep.c (reset_sys_modes): Update for renames.
17305
17306 * keyboard.c (tty_read_avail_input): New function.
17307 (Fset_input_interrupt_mode, Fset_output_flow_control): New functions.
17308 (syms_of_keyboard): Defsubr them.
17309 (Fset_input_meta_mode, Fset_quit_char): New functions.
17310 (Fset_input_mode): Split to above functions.
17311 (read_char_minibuf_menu_prompt): Add wrong_kboard_jmpbuf
17312 parameter. Use it in call to `read_char'.
17313 (read_char): Declare. Update call to `read_char_minibuf_menu_prompt'.
17314 Set wrong_kboard_jmpbuf correctly in recursive calls.
17315 Use current_kboard to access Vkeyboard_translate_table.
17316 Enhance comment before extra longjmp to wrong_kboard_jmpbuf.
17317 Add wrong_kboard_jmpbuf parameter to allow for recursive calls.
17318 Update longjmp invocations. Remember the original current_kboard,
17319 and longjmp to `wrong_kboard_jmpbuf' when a filter, timer or sentinel
17320 changes it. Comment out unnecessary calls to
17321 `record_single_kboard_state' and `any_kboard_state'.
17322 Update recursive calls.
17323 (wrong_kboard_jmpbuf): Remove global variable.
17324 (read_key_sequence): Remove unused variable wrong_kboard_jmpbuf.
17325 Handle deleted interrupted_kboards correctly; that is a legal
17326 case. Add `wrong_kboard_jmpbuf' local variable. Update setjmp
17327 and read_char calls. Abort if interrupted_kboard died in read_char.
17328 (any_kboard_state, single_kboard_state)
17329 (push_frame_kboard): Remove function.
17330 (pop_kboard): Switch out of single_kboard mode if the kboard has
17331 been deleted. Remove unused variable. Help debugging by not
17332 changing current_kboard unnecessarily. Set current_kboard to the
17333 kboard of the selected frame when the stored kboard object has
17334 been deleted before pop_kboard.
17335 (temporarily_switch_to_single_kboard): Change first parameter to a
17336 frame pointer. Throw an error when caller wants to change kboards
17337 while in single_kboard mode. Don't push_kboard if we weren't in
17338 single kboard state. Don't pop_kboard if we popped into any
17339 kboard state.
17340 (restore_kboard_configuration): Abort if pop_kboard changed the
17341 kboard in single_kboard mode. Call pop_kboard only after setting
17342 up single_kboard mode.
17343 (Frecursive_edit): Switch to single_kboard mode only in nested
17344 command loops.
17345 (cmd_error, command_loop, command_loop_1, timer_check):
17346 Comment out unnecessary call to `any_kboard_state' and
17347 `record_single_kboard_state'.
17348 (delete_kboard): Exit single_kboard mode if we have just deleted
17349 that kboard. Use FRAME_KBOARD.
17350 (interrupt_signal): Use `Fkill_emacs' to exit Emacs, not
17351 `fatal_error_signal'.
17352 (record_single_kboard_state): Don't push_kboard if we weren't in
17353 single kboard state. Don't pop_kboard if we popped into any
17354 kboard state.
17355 (push_frame_kboard): Rename to push_kboard.
17356 (kbd_buffer_get_event): Use FRAME_TERMINAL.
17357 (read_avail_input): Read input from all terminals.
17358 (mark_kboards): Also mark Vkeyboard_translate_table.
17359 (kbd_buffer_store_event_hold): Simplify condition.
17360 (read_key_sequence): Reinitialize fkey and keytran at each replay.
17361 (Vkeyboard_translate_table): Move to struct kboard.
17362 (init_kboard): Initialize Vkeyboard_translate_table.
17363 (syms_of_keyboard): Use DEFVAR_KBOARD to define
17364 Vkeyboard_translate_table. Update doc strings. Update docs of
17365 local-function-key-map and function-key-map.
17366
17367 * terminal.c: New file.
17368
17369 * term.c: Include errno.h.
17370 (Vring_bell_function, device_list, initial_device)
17371 (next_device_id, ring_bell, update_begin, update_end)
17372 (set_terminal_window, cursor_to, raw_cursor_to)
17373 (clear_to_end, clear_frame, clear_end_of_line)
17374 (write_glyphs, insert_glyphs, delete_glyphs, ins_del_lines)
17375 (Fdisplay_name, create_device, delete_device): Move to terminal.c.
17376 (syms_of_term): Move their initialization to terminal.c.
17377 (get_tty_terminal, Fdisplay_tty_type, Ftty_display_color_p)
17378 (Ftty_display_color_cells)
17379 (Ftty_no_underline, Fsuspend_tty, Fresume_tty, create_tty_output)
17380 (clear_tty_hooks, set_tty_hooks)
17381 (init_tty, maybe_fatal): New functions.
17382 (Ftty_type): Return nil if terminal is not on a tty instead of
17383 throwing an error. Doc update.
17384 (syms_of_term) <Vsuspend_tty_functions, Vresume_tty_functions>:
17385 Doc update. Initialize new subrs and variables.
17386 (delete_tty): Use terminal->deleted.
17387 (tty_set_terminal_modes): Rename from set_terminal_modes.
17388 (tty_reset_terminal_modes): Rename from reset_terminal_modes.
17389 (set_scroll_region): Rename to `tty_set_scroll_region'.
17390 (turn_on_insert): Rename to `tty_turn_on_insert'.
17391 (turn_off_insert): Rename to `tty_turn_off_insert'.
17392 (turn_off_highlight): Rename to `tty_turn_off_highlight'.
17393 (turn_on_highlight): Rename to `tty_turn_on_highlight'.
17394 (toggle_highligh): Rename to `tty_toggle_highlight'.
17395 (background_highlight): Rename to `tty_background_highlight'.
17396 (highlight_if_desired): Rename to `tty_highlight_if_desired'.
17397 (tty_ring_bell, tty_update_end, tty_set_terminal_window)
17398 (tty_set_scroll_region, tty_background_highlight)
17399 (tty_cursor_to, tty_raw_cursor_to, tty_clear_to_end)
17400 (tty_clear_frame, tty_clear_end_of_line, tty_write_glyphs)
17401 (tty_insert_glyphs, tty_delete_glyphs, tty_ins_del_lines)
17402 (term_get_fkeys, tty_setup_colors, dissociate_if_controlling_tty):
17403 Add static modifier.
17404 (tty_reset_terminal_modes, tty_set_terminal_window)
17405 (tty_set_scroll_region, tty_background_highlight)
17406 (tty_highlight_if_desired, tty_cursor_to)
17407 (tty_raw_cursor_to, tty_clear_to_end, tty_clear_frame)
17408 (tty_clear_end_of_line, tty_write_glyphs, tty_insert_glyphs)
17409 (tty_delete_glyphs, tty_ins_del_lines, turn_on_face): Update for
17410 renames.
17411
174122007-08-28 Jan Djärv <jan.h.d@swipnet.se>
17413
17414 * keyboard.c: Qrtl is new.
17415 (parse_tool_bar_item): Handle :rtl keyword.
17416 (syms_of_keyboard): Intern :rtl keyword.
17417
17418 * dispextern.h (enum tool_bar_item_idx): Add TOOL_BAR_ITEM_RTL_IMAGE.
17419
17420 * gtkutil.c (xg_tool_bar_expose_callback): Just do SET_FRAME_GARBAGED
17421 so no Lisp code is executed.
17422 (file_for_image, find_rtl_image): New functions.
17423 (xg_get_image_for_pixmap): Use file_for_image.
17424 (update_frame_tool_bar): If direction is RTL, use RTL image if
17425 defined. Use Gtk stock images if defined.
17426
174272007-08-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17428
17429 * macterm.c (x_draw_composite_glyph_string_foreground): Draw rectangle
17430 for nonexistent or zero-width glyph in composition glyph.
17431
174322007-08-25 Stefan Monnier <monnier@iro.umontreal.ca>
17433
17434 * m/amdx86-64.h: Redirect to intel386.h if compiling for i386.
17435
17436 * xdisp.c (Finvisible_p): New function.
17437 (syms_of_xdisp): defsubr it.
17438
174392007-08-24 Juanma Barranquero <lekktu@gmail.com>
17440
17441 * image.c (syms_of_image) <image-library-alist, cross-disabled-images>:
17442 Doc fixes.
17443
174442007-08-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17445
17446 * mac.c [MAC_OSX] (select_and_poll_event, sys_select): Fix last changes.
17447
174482007-08-24 Martin Rudalics <rudalics@gmx.at>
17449
17450 * fileio.c (Finsert_file_contents): Consult CHARS_MODIFF to tell
17451 whether decoding has modified buffer contents.
17452
174532007-08-24 Jason Rumney <jasonr@gnu.org>
17454
17455 * image.c [HAVE_NTGUI]: Define dynamic loaded functions for SVG.
17456 (Qgdk_pixbuf, Qglib) [HAVE_NTGUI]: New symbols.
17457 (syms_of_image) [HAVE_NTGUI]: Intern and staticpro them.
17458 (init_svg_functions) [HAVE_NTGUI]: New function.
17459 (fn_g_type_init, fn_g_object_unref, fn_g_error_free): New #defines.
17460 (svg_load_image): Use them.
17461 (svg_load_image) [HAVE_NTGUI]: Implement background.
17462
174632007-08-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17464
17465 * Makefile.in (RSVG_LIBS, RSVG_CFLAGS): New variables.
17466 (ALL_CFLAGS): Use ${RSVG_CFLAGS} instead of @RSVG_CFLAGS@.
17467 (LIBX): Remove @RSVG_LIBS@.
17468 (LIBES): Add $(RSVG_LIBS).
17469
17470 * image.c (svg_load_image): Blend with specified background if exists.
17471 Use IMAGE_BACKGROUND. Add Mac OS Support.
17472
17473 * mac.c (wakeup_from_rne_enabled_p) [MAC_OSX]: Remove variable.
17474 (ENABLE_WAKEUP_FROM_RNE, DISABLE_WAKEUP_FROM_RNE) [MAC_OSX]:
17475 Remove macros.
17476 [MAC_OSX] (socket_callback): Do nothing.
17477 [MAC_OSX] (select_and_poll_event): Use CFRunLoopRunInMode instead of
17478 ReceiveNextEvent.
17479 [MAC_OSX] (sys_select): Likewise. Don't set context as argument to
17480 socket_callback.
17481 (mac_wakeup_from_rne) [MAC_OSX]: Do nothing.
17482
174832007-08-22 Glenn Morris <rgm@gnu.org>
17484
17485 * image.c (x_find_image_file): Search in etc/images/ rather than etc/.
17486
174872007-08-22 Paul Pogonyshev <pogonyshev@gmx.net>
17488
17489 * Makefile.in (ALL_CFLAGS, LIBX): Add RSVG_LIBS.
17490
17491 * image.c: Add support for SVG images. Some additional comments
17492 by Joakim Verona <joakim@verona.se>. When HAVE_RSVG is defined:
17493 (svg_image_p): New function to test for SVG image.
17494 (svg_load): New function to load SVG image.
17495 (svg_load_image): New function, helper for svg_load.
17496 (Qsvg): New Lisp_object.
17497 (svg_keyword_index): New enum.
17498 (svg_format): New static `image_keyword' struct.
17499 (svg_type): New static `image_type' struct.
17500 (librsvg/rsvg.h): Include it.
17501
175022007-08-23 Stefan Monnier <monnier@iro.umontreal.ca>
17503
17504 * lread.c (load_warn_old_style_backquotes): Fix up array size typo.
17505
175062007-08-22 Stefan Monnier <monnier@iro.umontreal.ca>
17507
17508 * lread.c (Qold_style_backquotes): New var.
17509 (syms_of_lread): Init and staticpro it.
17510 (load_warn_old_style_backquotes): New fun.
17511 (Fload): Use them to warn about old style backquotes.
17512 (end_of_file_error, Fload): Remove unused vars.
17513
17514 * lisp.h (Fclear_face_cache, Fx_send_client_event): Declare.
17515
17516 * lread.c (Vold_style_backquotes): New var.
17517 (syms_of_lread): Init and export it to Elisp.
17518 (read1): Set it when we find an old-style (back)quote.
17519
175202007-08-22 Jason Rumney <jasonr@gnu.org>
17521
17522 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): Add missing NULL terminator.
17523
175242007-08-22 Katsumi Yamaoka <yamaoka@jpl.org>
17525
17526 * puresize.h (BASE_PURESIZE): Increase to 1140000.
17527
175282007-08-19 Richard Stallman <rms@gnu.org>
17529
17530 * eval.c (Ffunction, Fquote): Signal error if not 1 argument.
17531
175322007-08-19 Andreas Schwab <schwab@suse.de>
17533
17534 * alloc.c (pure): Round PURESIZE up.
17535
175362007-08-17 Jan Djärv <jan.h.d@swipnet.se>
17537
17538 * xterm.c (handle_one_xevent): Remove check that mouse click is in
17539 active frame.
17540
175412007-08-16 Richard Stallman <rms@gnu.org>
17542
17543 * eval.c (Fcommandp): Add parens to clarify.
17544
17545 * minibuf.c (Fall_completions): Use enum for type of table.
17546
17547 * emacs.c (USAGE2): Improve text.
17548
175492007-08-15 Philippe Waroquiers <philippe.waroquiers@eurocontrol.int>
17550
17551 * term.c (tty_default_color_capabilities): Declare static
17552 variables in file scope, to avoid HPUX compiler problem.
17553
175542007-08-13 Jan Djärv <jan.h.d@swipnet.se>
17555
17556 * gtkutil.c (update_frame_tool_bar): Use -1 as index
17557 to gtk_toolbar_insert.
17558
175592007-08-13 Stefan Monnier <monnier@iro.umontreal.ca>
17560
17561 * fileio.c (Finsert_file_contents): Yet Another Int/Lisp_Object Mixup.
17562
17563 * insdel.c (reset_var_on_error): New fun.
17564 (signal_before_change, signal_after_change):
17565 Use it to reset (after|before)-change-functions to nil in case of error.
17566 Bind inhibit-modification-hooks to t.
17567 Don't bind (after|before)-change-functions to nil while they run.
17568
175692007-08-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17570
17571 * xterm.c (x_draw_image_glyph_string): Adjust stipple origin when
17572 filling pixmap with stippled background.
17573
175742007-08-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17575
17576 * macterm.c [TARGET_API_MAC_CARBON] (mac_handle_window_event):
17577 Don't use invisible frame as parent window for repositioning.
17578
175792007-08-10 Stefan Monnier <monnier@iro.umontreal.ca>
17580
17581 * print.c (new_backquote_output): Rename from old_backquote_output.
17582 (print): Inverse its logic (according to its name) so as to match the
17583 behavior of new_backquote_flag in lread.c.
17584
175852007-08-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17586
17587 * gmalloc.c (posix_memalign): New function.
17588
17589 * macterm.c (frame_highlight, frame_unhighlight): Don't call
17590 ActivateControl/DeactivateControl here.
17591 [USE_MAC_TOOLBAR] (free_frame_tool_bar): Suppress animation when
17592 frame-notice-user-settings is non-nil.
17593 [USE_MAC_FONT_PANEL] (mac_handle_font_event): Also record parameter
17594 for kEventParamFMFontStyle.
17595 [TARGET_API_MAC_CARBON] (mac_handle_keyboard_event): Don't check
17596 mac_pass_command_to_system and mac_pass_control_to_system here.
17597 (XTread_socket): Call ActivateControl/DeactivateControl here.
17598 (XTread_socket) [TARGET_API_MAC_CARBON]:
17599 Check mac_pass_command_to_system and mac_pass_control_to_system here.
17600 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Add further workaround
17601 for window repositioning.
17602
176032007-08-08 Glenn Morris <rgm@gnu.org>
17604
17605 * Replace `iff' in doc-strings and comments.
17606
176072007-08-07 Chong Yidong <cyd@stupidchicken.com>
17608
17609 * xdisp.c (move_it_by_lines): Remove incorrect optimization.
17610
176112007-08-07 Martin Rudalics <rudalics@gmx.at>
17612
17613 * fileio.c (Finsert_file_contents): Run format-decode and
17614 after_insert_file_functions on entire buffer when REPLACE is
17615 non-nil and inhibit modification_hooks and point_motion_hooks.
17616 For consistency, run after_insert_file_functions iff something
17617 got inserted. Move signal_after_change and update_compositions
17618 after code running after_insert_file_functions. Make sure that
17619 undo_list doesn't record intermediate steps of the decoding process.
17620
176212007-08-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17622
17623 * emacs.c (main)
17624 [HAVE_GTK_AND_PTHREAD && !SYSTEM_MALLOC && !DOUG_LEA_MALLOC]:
17625 Call malloc_enable_thread on interactive startup.
17626
17627 * gmalloc.c (_malloc_thread_enabled_p) [USE_PTHREAD]: New variable.
17628 (LOCK, UNLOCK, LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS)
17629 [USE_PTHREAD]: Conditionalize with it.
17630 (malloc_atfork_handler_prepare, malloc_atfork_handler_parent)
17631 (malloc_atfork_handler_child, malloc_enable_thread) [USE_PTHREAD]:
17632 New functions.
17633
176342007-08-06 Chong Yidong <cyd@stupidchicken.com>
17635
17636 * xdisp.c (redisplay_window): When restoring original buffer
17637 position, make sure it is still valid.
17638
17639 * image.c (png_load): Ignore png-supplied background color.
17640
176412007-08-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17642
17643 * mac.c [TARGET_API_MAC_CARBON] (cfdate_to_lisp): Obtain microsec value.
17644 Use kCFAbsoluteTimeIntervalSince1970.
17645
17646 * macmenu.c (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]:
17647 New variable.
17648 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Set it if dialog
17649 event loop should be quit.
17650 [TARGET_API_MAC_CARBON] (create_and_show_dialog) [!MAC_OSX]:
17651 Quit dialog event loop if quit_dialog_event_loop is set.
17652
17653 * macselect.c [!TARGET_API_MAC_CARBON]: Include Scrap.h.
17654 (Selection): New typedef. Use instead of ScrapRef.
17655 (mac_get_selection_from_symbol): Rename from get_scrap_from_symbol.
17656 (mac_valid_selection_target_p): Rename from valid_scrap_target_type_p.
17657 (mac_clear_selection): Rename from clear_scrap.
17658 (get_flavor_type_from_symbol): New argument SEL and subsume function of
17659 scrap_has_target_type. All uses changed.
17660 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
17661 (mac_selection_has_target_p): New functions.
17662 (mac_put_selection_value): Rename from put_scrap_string.
17663 (mac_get_selection_value): Rename from get_scrap_string.
17664 (mac_get_selection_target_list): Rename from get_scrap_target_type_list.
17665 (put_scrap_private_timestamp, scrap_has_target_type)
17666 (get_scrap_private_timestamp): Remove functions.
17667 (SCRAP_FLAVOR_TYPE_EMACS_TIMESTAMP): Remove define.
17668 (x_own_selection, x_get_local_selection):
17669 Use mac_valid_selection_value_p.
17670 (x_own_selection): Don't use put_scrap_private_timestamp.
17671 Record OWNERSHIP-INFO into Vselection_alist instead.
17672 (x_get_local_selection): Don't check type if request is local.
17673 (Fx_selection_owner_p): Don't use get_scrap_private_timestamp.
17674 Detect ownership change with OWNERSHIP-INFO in Vselection_alist instead.
17675
176762007-08-04 Jan Djärv <jan.h.d@swipnet.se>
17677
17678 * gtkutil.c (xg_tool_bar_callback): Generate two TOOL_BAR_EVENT:s,
17679 add comment explaining why.
17680
176812007-08-03 Richard Stallman <rms@gnu.org>
17682
17683 * fileio.c (Fvisited_file_modtime): Use make_time.
17684
176852007-08-01 Ryo Yoshitake <ryo@shiftmode.net> (tiny change)
17686
17687 * mac.c (init_mac_osx_environment): Adjust load-path on self-contained
17688 build.
17689
176902007-07-31 Stefan Monnier <monnier@iro.umontreal.ca>
17691
17692 * gtkutil.c (xg_tool_bar_callback): Generate a single TOOL_BAR_EVENT.
17693
176942007-07-30 Katsumi Yamaoka <yamaoka@jpl.org>
17695
17696 * puresize.h (BASE_PURESIZE): Increase to 1130000.
17697
176982007-07-30 Richard Stallman <rms@gnu.org>
17699
17700 * lread.c (readevalloop, read1): Treat NBSP as whitespace.
17701
177022007-07-29 Jan Djärv <jan.h.d@swipnet.se>
17703
17704 * gmalloc.c (__malloc_initialize): Remove pthread_once. Not needed.
17705
177062007-07-28 Nick Roberts <nickrob@snap.net.nz>
17707
17708 * xdisp.c (decode_mode_spec): Use '@' instead of 'R' to test for
17709 remote default-directory.
17710
17711 * buffer.c (mode-line-format): Update doc string.
17712
177132007-07-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17714
17715 * w32term.c (w32_draw_fringe_bitmap): Extend fringe background to
17716 scroll bar gap.
17717 (x_scroll_bar_create): Set bar->fringe_extended_p.
17718 (w32_set_vertical_scroll_bar): Put leftmost/rightmost scroll bars
17719 on frame edge. Check fringe background extension. Don't clear
17720 extended fringe background area.
17721
17722 * w32term.h (struct scroll_bar): New member fringe_extended_p.
17723 (w32_fill_area): Enclose multiple statements with do ... while (0).
17724
17725 * xterm.c (x_draw_fringe_bitmap) [USE_TOOLKIT_SCROLL_BARS]:
17726 Extend fringe background to scroll bar gap.
17727 (x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS]:
17728 Set bar->fringe_extended_p.
17729 (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
17730 Put leftmost/rightmost scroll bars on frame edge. Check fringe
17731 background extension. Don't clear extended fringe background area.
17732
17733 * xterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
17734 New member fringe_extended_p.
17735
177362007-07-25 Glenn Morris <rgm@gnu.org>
17737
17738 * Relicense all FSF files to GPLv3 or later.
17739
17740 * COPYING: Switch to GPLv3.
17741
177422007-07-25 Stefan Monnier <monnier@iro.umontreal.ca>
17743
17744 * eval.c (Fcommandp): Pay attention to the `interactive-form' property.
17745
17746 * data.c (Finteractive_form): Check for the presence of an
17747 `interactive-form' symbol property more thoroughly.
17748
17749 * data.c (Finteractive_form): Use an `interactive-form' property if
17750 present, analogous to the function-documentation property.
17751
177522007-07-24 Jason Rumney <jasonr@gnu.org>
17753
17754 * w32fns.c (x_real_positions): Get real position from OS instead of
17755 calculating it.
17756
177572007-07-23 Jason Rumney <jasonr@gnu.org>
17758
17759 * filelock.c (current_lock_owner): Allow for @ sign in username.
17760
177612007-07-22 Nick Roberts <nickrob@snap.net.nz>
17762
17763 * xdisp.c (decode_mode_spec): Add case 'R' for to test for
17764 remote default-directory.
17765
17766 * buffer.c (mode-line-format): Describe above case in doc string.
17767
177682007-07-20 Eli Zaretskii <eliz@gnu.org>
17769
17770 * w32proc.c (IMAGE_NT_OPTIONAL_HDR32_MAGIC, IMAGE_OPTIONAL_HEADER32):
17771 Define if not defined.
17772
177732007-07-18 Jason Rumney <jasonr@gnu.org>
17774
17775 * w32proc.c (w32_executable_type): Handle 64 bit executables.
17776
177772007-07-18 Richard Stallman <rms@gnu.org>
17778
17779 * data.c (Fsetq_default): Doc fix.
17780
17781 * eval.c (Fsetq): Doc fix.
17782
177832007-07-18 Juanma Barranquero <lekktu@gmail.com>
17784
17785 * coding.c (Ffind_operation_coding_system):
17786 * eval.c (For, Fand): Doc fixes.
17787 Reported by Johan Bockgård.
17788
177892007-07-18 Jan Djärv <jan.h.d@swipnet.se>
17790
17791 * xfns.c (Fx_focus_frame): Call x_ewmh_activate_frame.
17792
17793 * xterm.h: Declare x_ewmh_activate_frame.
17794
17795 * xterm.c (x_ewmh_activate_frame): New function.
17796 (XTframe_raise_lower): Move code to x_ewmh_activate_frame.
17797
177982007-07-17 Martin Rudalics <rudalics@gmx.at>
17799
17800 * window.c (Fdisplay_buffer): If largest or LRU window is the
17801 only window, split it even if it is not eligible for splitting.
17802 This restores the original behavior broken by the 2007-07-15
17803 change.
17804
178052007-07-17 Glenn Morris <rgm@gnu.org>
17806
17807 * abbrev.c (abbrev_check_chars): New function.
17808 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
17809 Call abbrev_check_chars to check abbrev characters are word
17810 constituents. Doc fix.
17811
178122007-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
17813
17814 * process.c (Fstart_process, Fmake_network_process)
17815 (read_process_output): Fix up last changes.
17816
178172007-07-16 Eli Zaretskii <eliz@gnu.org>
17818
17819 * makefile.w32-in (clean): Don't delete *~.
17820
178212007-07-16 Andreas Schwab <schwab@suse.de>
17822
17823 * window.c (Fdisplay_buffer): Use NILP.
17824 (Fset_window_scroll_bars): Likewise.
17825
178262007-07-15 Martin Rudalics <rudalics@gmx.at>
17827
17828 * window.c (window_min_size_2): New function.
17829 (window_min_size_1, size_window, Fdisplay_buffer)
17830 (Fsplit_window, adjust_window_trailing_edge): Use it to avoid
17831 windows without mode- or header-lines when window-min-height is
17832 too small.
17833 (size_window): Reset nodelete_p after testing it, following an
17834 earlier note by Kim F. Storm.
17835 (display_buffer): Do not set split_height_threshold to twice the
17836 value of window_min_height to avoid changing the value of a
17837 customizable variable. Rather explicitly check whether the
17838 height of the window that shall be splitted is at least as large
17839 as split_height_threshold.
17840 (Fwindow_full_width_p): New defun.
17841 (syms_of_window): Defsubr it.
17842
17843 * window.h: Add EXFUN for Fwindow_full_width_p.
17844
178452007-07-14 Jason Rumney <jasonr@gnu.org>
17846
17847 * process.c [WINDOWSNT]: Don't undefine AF_INET6.
17848
178492007-07-14 Richard Stallman <rms@gnu.org>
17850
17851 * eval.c (maybe_call_debugger): New function.
17852 (find_handler_clause): Use maybe_call_debugger.
17853 Call it when the handler says `debug'.
17854 Eliminate DEBUGGER_VALUE_PTR.
17855 (Fsignal): Eliminate debugger_value.
17856 (Qdebug): New variable.
17857 (syms_of_eval): Initialize it.
17858
178592007-07-14 Juanma Barranquero <lekktu@gmail.com>
17860
17861 * eval.c (Fprogn):
17862 * keyboard.c (Ftrack_mouse):
17863 * print.c (Fwith_output_to_temp_buffer):
17864 * window.c (Fsave_window_excursion): Doc fix.
17865
178662007-07-13 Stefan Monnier <monnier@iro.umontreal.ca>
17867
17868 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 400.
17869
178702007-07-12 Stefan Monnier <monnier@iro.umontreal.ca>
17871
17872 * process.h (struct Lisp_Process): Turn slots infd, outfd,
17873 kill_without_query, pty_flag, tick, update_tick, decoding_carryover,
17874 inherit_coding_system_flag, filter_multibyte, adaptive_read_buffering,
17875 read_output_delay, and read_output_skip from Lisp_Objects to ints.
17876 Remove unused encoding_carryover.
17877 * process.c: Adjust all functions accordingly.
17878
178792007-07-12 Richard Stallman <rms@gnu.org>
17880
17881 * term.c: Include unistd.h only if HAVE_UNISTD_H.
17882
178832007-07-11 Jason Rumney <jasonr@gnu.org>
17884
17885 * makefile.w32-in (LIBS): Include OLE32.
17886
17887 * w32fns.c (w32_msg_pump) <WM_EMACS_CREATEWINDOW>: Initialize COM.
17888 (w32_msg_pump) <WM_DESTROY>: Uninitialize COM.
17889
178902007-07-11 Stefan Monnier <monnier@iro.umontreal.ca>
17891
17892 * lisp.h (struct Lisp_Hash_Table): Turn next_weak into a bare pointer.
17893 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and turned
17894 from a Lisp_Object into a bare pointer.
17895 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
17896 Adjust the code correspondingly.
17897
17898 * alloc.c (emacs_blocked_free): Remove unused var `bytes_used_now'.
17899
17900 * term.c: Include unistd.h for ttyname, used in handle_one_term_event.
17901 (term_show_mouse_face): Remove unused var `j'.
17902 (handle_one_term_event): Remove unused vars `i' and `j'.
17903 Don't cast return value of ttyname since it's not necessary.
17904
179052007-07-10 Stefan Monnier <monnier@iro.umontreal.ca>
17906
17907 * alloc.c (mark_maybe_pointer): Enforce mult-of-8 alignment when using
17908 USE_LSB_TAG. Suggested by Dmitry Antipov <dmantipov@yandex.ru>.
17909
17910 * fns.c (map_char_table): Use an array of int for `indices' rather than
17911 an array of Lisp_Objects (which are only ever integers anyway).
17912 (Fmap_char_table): Update caller.
17913 * lisp.h: Update prototype.
17914 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap):
17915 * fontset.c (Ffontset_info):
17916 * casetab.c (set_case_table): Update callers.
17917
17918 * editfns.c (Ftranspose_regions): Use EMACS_INT for positions.
17919
17920 * keymap.c (struct accessible_keymaps_data)
17921 (struct where_is_internal_data): New structures.
17922 (accessible_keymaps_1, where_is_internal_1): Use them to change
17923 interface to adhere to the one used by map_keymap.
17924 (Faccessible_keymaps, where_is_internal): Use map_keymap.
17925 (accessible_keymaps_char_table, where_is_internal_2): Remove.
17926
17927 * keymap.h (map_keymap_function_t): More informative prototype.
17928
179292007-07-10 Guanpeng Xu <herberteuler@hotmail.com>
17930
17931 * search.c (Vinhibit_changing_match_data, search_regs_1): New vars.
17932 (looking_at_1): Don't change search_regs and last_thing_searched
17933 if `inhibit-changing-match-data' is non-nil.
17934 (string_match_1, search_buffer, set_search_regs): Likewise.
17935 (syms_of_search): Add Lisp level definition for
17936 `inhibit-changing-match-data' and set it to nil.
17937 (boyer_moore): If `inhibit-changing-match-data' is non-nil, compute
17938 start and end of the match, instead of using values in search_regs.
17939
179402007-07-01 Stefan Monnier <monnier@iro.umontreal.ca>
17941
17942 * minibuf.c (Fcompleting_read): New value `confirm-only'
17943 for `require-match'.
17944
179452007-06-28 Stefan Monnier <monnier@iro.umontreal.ca>
17946
17947 * fileio.c (Fdo_auto_save): Revert last patch installed unwillingly as
17948 part of the 2007-06-27 change to syms_of_fileio.
17949
179502007-06-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17951
17952 * macterm.c [USE_MAC_TSM] (mac_handle_text_input_event):
17953 Check WINDOWP before using XWINDOW. Consolidate return statements.
17954
179552007-06-27 Richard Stallman <rms@gnu.org>
17956
17957 * fileio.c (syms_of_fileio) <after-insert-file-functions>: Doc fix.
17958
179592007-06-27 Juanma Barranquero <lekktu@gmail.com>
17960
17961 * buffer.c (syms_of_buffer) <selective-display>: Fix typo in docstring.
17962
179632007-06-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17964
17965 * gmalloc.c [HAVE_GTK_AND_PTHREAD]: Check this after including config.h.
17966 (_aligned_blocks_mutex) [USE_PTHREAD]: New variable.
17967 (LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS): New macros.
17968 (_free_internal, memalign): Use them.
17969 (_malloc_mutex, _aligned_blocks_mutex) [USE_PTHREAD]:
17970 Initialize to PTHREAD_MUTEX_INITIALIZER.
17971 (malloc_initialize_1) [USE_PTHREAD]: Don't use recursive mutex.
17972 (morecore_nolock): Rename from morecore. All uses changed.
17973 Use only nolock versions of internal allocation functions.
17974 (_malloc_internal_nolock, _realloc_internal_nolock)
17975 (_free_internal_nolock): New functions created from
17976 _malloc_internal, _realloc_internal, and _free_internal.
17977 (_malloc_internal, _realloc_internal, _free_internal): Use them.
17978 Copy hook value to automatic variable before its use.
17979 (memalign): Copy hook value to automatic variable before its use.
17980
179812007-06-26 Kenichi Handa <handa@m17n.org>
17982
17983 * coding.c (Ffind_operation_coding_system): Docstring improved.
17984 (syms_of_coding): Docstring of `file-coding-system-alist' improved.
17985
179862007-06-25 David Kastrup <dak@gnu.org>
17987
17988 * keymap.c (Fcurrent_active_maps): Add `position' argument.
17989 (Fwhere_is_internal): Adjust call to `current-active-maps' to
17990 cater for additional parameter.
17991
17992 * keymap.h: Adjust number of parameters to `current-active-maps'.
17993
17994 * doc.c (Fsubstitute_command_keys): Adjust call of
17995 `current-active-maps'.
17996
179972007-06-25 David Kastrup <dak@gnu.org>
17998
17999 * callint.c (Fcall_interactively): Make the parsing of interactive
18000 specs somewhat more readable.
18001
180022007-06-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18003
18004 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe background
18005 to scroll bar gap also when bitmap fills fringe. Draw only foreground
18006 if extended background has already been filled.
18007
180082007-06-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18009
18010 * macgui.h (USE_CG_DRAWING): Don't require USE_ATSUI.
18011 (USE_MAC_TOOLBAR): Require USE_CG_DRAWING.
18012
18013 * macmenu.c (mac_dialog_modal_filter, Fx_popup_dialog) [MAC_OSX]:
18014 Put special treatment for Fmessage_box, Fyes_or_no_p, and Fy_or_n_p
18015 in #if 0 as it is not compatible with y-or-n-p-with-timeout.
18016 (timer_check) [TARGET_API_MAC_CARBON]: Add extern.
18017 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Use QuitEventLoop
18018 instead of QuitAppModalLoopForWindow. Consolidate QuitEventLoop calls.
18019 (pop_down_dialog) [TARGET_API_MAC_CARBON]: New function.
18020 [TARGET_API_MAC_CARBON] (create_and_show_dialog): Use it for unwind.
18021 Run timers during dialog popup.
18022 (Fmenu_or_popup_active_p) [TARGET_API_MAC_CARBON]: Use popup_activated.
18023
180242007-06-21 Jason Rumney <jasonr@gnu.org>
18025
18026 * image.c (convert_mono_to_color_image): Swap fore and background.
18027
180282007-06-20 Jason Rumney <jasonr@gnu.org>
18029
18030 * w32bdf.c (w32_BDF_to_x_font): Unmap memory when finished.
18031 (w32_free_bdf_font): Unmap memory not handle.
18032
180332007-06-20 Sam Steingold <sds@gnu.org>
18034
18035 * gmalloc.c (__morecore): Fix the declaration to comply with the
18036 definition.
18037
180382007-06-20 Juanma Barranquero <lekktu@gmail.com>
18039
18040 * w32term.c (w32_delete_display): Remove leftover declaration.
18041 (w32_define_cursor, w32_initialize): Make static.
18042
18043 * w32.c (_wsa_errlist): Fix typo in error message.
18044 (init_environment): Ignore any environment variable from the
18045 registry having a null value.
18046
180472007-06-20 Glenn Morris <rgm@gnu.org>
18048
18049 * Makefile.in (LIBGIF): Default to -lgif.
18050
180512007-06-17 Jason Rumney <jasonr@gnu.org>
18052
18053 * w32menu.c (add_menu_item): Don't use multibyte string functions on
18054 unicode strings.
18055
180562007-06-16 Juanma Barranquero <lekktu@gmail.com>
18057
18058 * xdisp.c (syms_of_xdisp) <auto-resize-tool-bars>:
18059 Fix typo in docstring.
18060
180612007-06-16 Eli Zaretskii <eliz@gnu.org>
18062
18063 * w32menu.c (add_menu_item): Escape `&' characters in menu items
18064 and their keybindings.
18065
180662007-06-15 Chong Yidong <cyd@stupidchicken.com>
18067
18068 * composite.c (update_compositions): Fix last fix.
18069
180702007-06-14 Jason Rumney <jasonr@gnu.org>
18071
18072 * w32.c (get_process_times_fn): New function pointer.
18073 (globals_of_w32): Intialize it if present in kernel32.dll.
18074 (w32_get_internal_run_time): New function.
18075
18076 * editfns.c (Fget_internal_run_time) [WINDOWSNT]: Use it.
18077
180782007-06-14 Kenichi Handa <handa@etlken.m17n.org>
18079
18080 * composite.c (update_compositions): Check the validness of
18081 compositions.
18082
180832007-06-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18084
18085 * frame.h (struct frame) [MAC_OS]: New member external_tool_bar.
18086 (FRAME_EXTERNAL_TOOL_BAR) [MAC_OS]: Use it.
18087
18088 * macfns.c (mac_window) [USE_MAC_TOOLBAR]: Set toolbar_win_gravity.
18089 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]: Set FRAME_EXTERNAL_TOOL_BAR.
18090
18091 * macgui.h (USE_MAC_TOOLBAR): New define.
18092
18093 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
18094 Return immediately unless popup is activated.
18095
18096 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe
18097 background to scroll bar gap.
18098 (x_scroll_bar_create) [MAC_OSX]: Set bar->fringe_extended_p.
18099 (XTset_vertical_scroll_bar) [MAC_OSX]: Put leftmost/rightmost
18100 scroll bars on frame edge. Check fringe background extension.
18101 Don't clear extended fringe background area.
18102 (TOOLBAR_IDENTIFIER, TOOLBAR_ICON_ITEM_IDENTIFIER)
18103 (TOOLBAR_ITEM_COMMAND_ID_OFFSET, TOOLBAR_ITEM_COMMAND_ID_P)
18104 (TOOLBAR_ITEM_COMMAND_ID_VALUE, TOOLBAR_ITEM_MAKE_COMMAND_ID):
18105 [USE_MAC_TOOLBAR]: New macros.
18106 (mac_move_window_with_gravity, mac_get_window_origin_with_gravity)
18107 (mac_handle_toolbar_event, mac_image_spec_to_cg_image)
18108 (mac_create_frame_tool_bar, update_frame_tool_bar, free_frame_tool_bar)
18109 (mac_tool_bar_note_mouse_movement, mac_handle_toolbar_command_event)
18110 [USE_MAC_TOOLBAR]: New functions.
18111 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Reposition window
18112 manually if previous repositioning has failed.
18113 (mac_handle_keyboard_event): Use precomputed event kind.
18114 (XTread_socket) [USE_MAC_TOOLBAR]: Handle click in structure region
18115 as tool bar item click. Handle mouse movement over tool bar items.
18116
18117 * macterm.h (struct mac_output) [USE_MAC_TOOLBAR]: New member
18118 toolbar_win_gravity.
18119 (struct scroll_bar) [MAC_OSX]: New member fringe_extended_p.
18120 (update_frame_tool_bar, free_frame_tool_bar) [USE_MAC_TOOLBAR]:
18121 Add externs.
18122
18123 * xdisp.c (update_tool_bar, redisplay_tool_bar, redisplay_window)
18124 [USE_MAC_TOOLBAR]: Sync with GTK+ tool bar display.
18125
181262007-06-14 Chong Yidong <cyd@stupidchicken.com>
18127
18128 * image.c (search_image_cache): Remove unused variable.
18129
181302007-06-13 Chong Yidong <cyd@stupidchicken.com>
18131
18132 * xfns.c, xmenu.c: Link to xaw3d if available.
18133
181342007-06-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18135
18136 * dispextern.h (struct image) [HAVE_WINDOW_SYSTEM]: New members
18137 frame_foreground and frame_background.
18138
18139 * image.c (lookup_image): Save frame foreground and background colors.
18140 (search_image_cache): Check if saved and current frame colors match.
18141
181422007-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
18143
18144 * regex.c (regex_compile): Remove the `regnum' counter.
18145 Use bufp->re_nsub instead. Add support for \(?N:RE\).
18146
181472007-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
18148
18149 * term.c: Include intervals.h to declare Fget_text_property.
18150
181512007-06-10 Jason Rumney <jasonr@gnu.org>
18152
18153 * w32fns.c (Fx_file_dialog): Take size from struct not pointer.
18154
181552007-06-08 Juanma Barranquero <lekktu@gmail.com>
18156
18157 * callint.c (Fcall_interactively):
18158 * editfns.c (Fdelete_and_extract_region):
18159 * fileio.c (Fread_file_name):
18160 * fns.c (Fmapconcat):
18161 * keyboard.c (cmd_error_internal):
18162 * keymap.c (Fkey_description):
18163 * lread.c (openp):
18164 * minibuf.c (read_minibuf):
18165 * search.c (wordify):
18166 * sunfns.c (sel_read):
18167 * xdisp.c (Fformat_mode_line, syms_of_xdisp):
18168 * xfns.c (x_default_scroll_bar_color_parameter):
18169 * xmenu.c (menu_help_callback):
18170 * xselect.c (Fx_get_atom_name):
18171 * xterm.c (x_term_init): Use empty_unibyte_string.
18172
181732007-06-08 Dmitry Antipov <dmantipov@yandex.ru> (tiny change)
18174
18175 * alloc.c (init_strings): Initialize canonical empty strings.
18176 (make_uninit_string, make_uninit_multibyte_string): Return appropriate
18177 canonical empty string when the requested size is 0.
18178
18179 * emacs.c (empty_unibyte_string): Rename from empty_string.
18180 (empty_multibyte_string): New canonical empty string.
18181 (syms_of_emacs): Don't initialize empty_string.
18182
18183 * lisp.h (STRING_SET_UNIBYTE): Return the canonical empty unibyte
18184 string, if appropriate.
18185 (empty_unibyte_string, empty_multibyte_string): New externs.
18186 (empty_string): Remove extern.
18187
18188 * lread.c (syms_of_lread): Use empty_unibyte_string.
18189
181902007-06-07 Jason Rumney <jasonr@gnu.org>
18191
18192 * s/ms-w32.h: Don't define HAVE_TZNAME.
18193
18194 * editfns.c (Fcurrent_time_zone): Remove hack for Japanese Windows.
18195
181962007-06-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18197
18198 * mac.c (xrm_get_preference_database): Remove BLOCK_INPUT.
18199
18200 * macfns.c (mac_get_window_bounds): Move extern to macterm.h.
18201 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use GetGlobalMouse.
18202
18203 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
18204 Don't call next handler.
18205 [TARGET_API_MAC_CARBON] (install_menu_target_item_handler):
18206 Remove argument. Install handler to application.
18207 (set_frame_menubar): Don't change deep_p.
18208 (mac_menu_show): Use FRAME_OUTER_TO_INNER_DIFF_X and
18209 FRAME_OUTER_TO_INNER_DIFF_Y.
18210 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
18211 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
18212 [HAVE_DIALOGS]: New macros.
18213 [HAVE_DIALOGS] (mac_handle_dialog_event, create_and_show_dialog):
18214 Use them.
18215 (fill_menubar) [TARGET_API_MAC_CARBON]: Use CFString.
18216
18217 * macselect.c [MAC_OSX] (install_service_handler): Rename from
18218 init_service_handler. All callers changed. Return OSStatus value.
18219
18220 * macterm.c (mac_begin_cg_clip): New arg F. Call SetPortWindowPort.
18221 All callers changed so as not to call SetPortWindowPort.
18222 (mac_begin_cg_clip) [USE_CG_DRAWING]: Call mac_prepare_for_quickdraw.
18223 (mac_draw_image_string_atsui) [USE_ATSUI]: New function created from
18224 mac_draw_string_common.
18225 (mac_draw_image_string_qd): Likewise.
18226 (mac_draw_string_common): Use them. Add INLINE.
18227 (XTmouse_position, x_scroll_bar_report_motion) [TARGET_API_MAC_CARBON]:
18228 Use FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y, and
18229 GetGlobalMouse.
18230 (x_set_mouse_pixel_position) [MAC_OSX]: Use FRAME_OUTER_TO_INNER_DIFF_X
18231 and FRAME_OUTER_TO_INNER_DIFF_Y.
18232 [TARGET_API_MAC_CARBON] (mac_handle_mouse_event): Likewise.
18233 [USE_MAC_TSM] (mac_handle_text_input_event): Likewise.
18234 (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Move code for
18235 repositioning window to mac_handle_window_event.
18236 (x_make_frame_invisible) [TARGET_API_MAC_CARBON]: Move code for
18237 saving window location to mac_handle_window_event
18238 [USE_MAC_FONT_PANEL] (mac_show_hide_font_panel): Install handler here.
18239 (install_menu_target_item_handler): Remove argument in extern.
18240 [TARGET_API_MAC_CARBON] (mac_event_to_emacs_modifiers):
18241 Also accept command events.
18242 (do_keystroke): New function created from XTread_socket.
18243 (init_command_handler): Remove functions.
18244 [TARGET_API_MAC_CARBON] (mac_handle_window_event): Reposition window
18245 and save window location by kEventWindowShowing and kEventWindowHiding
18246 handlers here. Don't call next handler for window state change and
18247 focus events.
18248 (mac_handle_application_event, mac_handle_keyboard_event)
18249 [TARGET_API_MAC_CARBON]: New functions.
18250 (install_window_handler) [TARGET_API_MAC_CARBON]: Register handlers for
18251 kEventWindowShowing and kEventWindowHiding events. Move installation
18252 of mouse, font, text input and menu target item handlers to
18253 install_application_handler.
18254 (install_application_handler) [TARGET_API_MAC_CARBON]: New function.
18255 (mac_handle_cg_display_reconfig) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
18256 New function.
18257 (init_dm_notification_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
18258 Register it.
18259 (XTread_socket) [TARGET_API_MAC_CARBON]:
18260 Consolidate SendEventToEventTarget calls.
18261 Use FRAME_OUTER_TO_INNER_DIFF_X and FRAME_OUTER_TO_INNER_DIFF_Y.
18262 Move application activation handler to mac_handle_application_event.
18263 Move keyboard handler to mac_handle_keyboard_event.
18264 (XTread_socket) [!TARGET_API_MAC_CARBON]: Use do_keystroke.
18265 (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
18266 init_command_handler. Call install_application_handler.
18267
18268 * macterm.h (mac_get_window_bounds): Move extern from macfns.c.
18269 (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y): New macros.
18270
182712007-06-07 Glenn Morris <rgm@gnu.org>
18272
18273 * emacs.c (main): Use `emacs-copyright' in --version output.
18274
182752007-06-06 Chong Yidong <cyd@stupidchicken.com>
18276
18277 * image.c (xpm_load): Remove spurious call to xpm_init_color_cache.
18278
182792007-06-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18280
18281 * macfns.c (mac_window): Replace WindowPtr with WindowRef.
18282
18283 * macgui.h: Replace WindowPtr with WindowRef.
18284
18285 * macmenu.c: Replace MenuHandle and GetMenuHandle with MenuRef and
18286 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
18287 Replace ControlHandle with ControlRef.
18288 (install_menu_quit_handler): Rename arg MENU_HANDLE to ROOT_MENU.
18289
18290 * macterm.c: Replace MenuHandle and GetMenuHandle with MenuRef and
18291 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
18292 Replace ControlHandle with ControlRef.
18293 (USE_CARBON_EVENTS): Remove. Use TARGET_API_MAC_CARBON instead.
18294 [MAC_OS8] (do_get_menus): Rename variable `menu_handle' to `menu'.
18295
18296 * macterm.h (struct scroll_bar): Rename member control_handle_low
18297 and control_handle_high to control_ref_low and control_ref_high.
18298 All uses changed.
18299 (SCROLL_BAR_CONTROL_REF, SET_SCROLL_BAR_CONTROL_REF): Rename from
18300 SCROLL_BAR_CONTROL_HANDLE and SET_SCROLL_BAR_CONTROL_HANDLE,
18301 respectively. All uses changed.
18302 (XCreatePixmap, XCreatePixmapFromBitmapData, XSetWindowBackground)
18303 (install_window_handler, remove_window_handler): Replace WindowPtr
18304 with WindowRef in externs.
18305
183062007-06-05 Juanma Barranquero <lekktu@gmail.com>
18307
18308 * xfaces.c (Finternal_lisp_face_p): Signal error for face alias loops.
18309
183102007-06-03 Nick Roberts <nickrob@snap.net.nz>
18311
18312 * keyboard.c (discard_mouse_events): Add GPM_CLICK_EVENT case.
18313
18314 * frame.c (Fmouse_position, Fmouse_pixel_position):
18315 Condition on HAVE_GPM too.
18316
18317 * term.c (term_mouse_highlight): Remove unused variables.
18318 (Fterm_open_connection): Set gpm_zerobased to 1.
18319 (term_mouse_movement, term_mouse_click, handle_one_term_event):
18320 Use zero based co-ordinates.
18321 (handle_one_term_event): Report a drag as mouse movement too.
18322
18323 * Makefile.in (MOUSE_SUPPORT): Define for HAVE_GPM.
18324
183252007-06-03 Chong Yidong <cyd@stupidchicken.com>
18326
18327 * image.c (search_image_cache): New function. Require background
18328 color match if background color is unspecified in the image spec.
18329 (uncache_image, lookup_image): Use it.
18330
183312007-06-01 Juanma Barranquero <lekktu@gmail.com>
18332
18333 * window.c (Fshrink_window): Reflow docstring.
18334
183352007-06-02 Chong Yidong <cyd@stupidchicken.com>
18336
18337 * Version 22.1 released.
18338
183392007-06-01 Richard Stallman <rms@gnu.org>
18340
18341 * xfns.c (x_encode_text): Add GCPRO.
18342
183432007-06-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18344
18345 * xfns.c (x_set_name_internal): Save encoded name before
18346 x_encode_text in case string data is relocated.
18347
183482007-05-31 Richard Stallman <rms@gnu.org>
18349
18350 * buffer.c (syms_of_buffer): Doc fix.
18351
183522007-05-30 Nick Roberts <nickrob@snap.net.nz>
18353
18354 * sysdep.c (init_sys_modes): Add rather than replace with
18355 O_NONBLOCK.
18356
18357 * frame.c [HAVE_GPM] (Fset_mouse_pixel_position): Add call to
18358 term_mouse_moveto.
18359
18360 * termhooks.h (term_mouse_moveto): New extern.
18361
18362 * term.c (mouse_face_window): Rename...
18363 (Qmouse_face_window): ...to this.
18364 (term_show_mouse_face, term_clear_mouse_face)
18365 (term_mouse_highlight): Use Qmouse_face_window.
18366 (term_mouse_moveto): New function.
18367 (term_mouse_position): Make it work.
18368 (syms_of_term): Uncomment assignment to mouse_position_hook.
18369 Staticpro Qmouse_face_window.
18370
183712007-05-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18372
18373 * xdisp.c (redisplay_internal): Bind inhibit-point-motion-hooks to t
18374 around current_column call.
18375
183762007-05-26 Dan Nicolaescu <dann@ics.uci.edu>
18377
18378 * xfaces.c (syms_of_xfaces): Delete stray semicolon.
18379 * xdisp.c (next_element_from_buffer):
18380 * window.c (delete_window):
18381 * term.c (term_mouse_highlight):
18382 * msdos.c (getdefdir):
18383 * macterm.c (mac_create_bitmap_from_bitmap_data)
18384 (init_font_name_table):
18385 * fns.c (Fsxhash):
18386 * data.c (Fmake_local_variable):
18387 * ccl.c (ccl_driver): Likewise.
18388
183892007-05-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18390
18391 * macterm.c [USE_CARBON_EVENTS] (mac_handle_window_event):
18392 Call mac_wakeup_from_rne on window size change.
18393
183942007-05-25 Chong Yidong <cyd@stupidchicken.com>
18395
18396 * image.c (uncache_image): Fix typo.
18397
183982007-05-23 Johannes Weiner <hannes@saeurebad.de> (tiny change)
18399
18400 * keyboard.c (make_lispy_movement): Condition on HAVE_GPM too.
18401
184022007-05-22 Richard Stallman <rms@gnu.org>
18403
18404 * xterm.c (x_connection_closed): Remove NO_RETURN.
18405
184062007-05-22 Martin Rudalics <rudalics@gmx.at>
18407
18408 * syntax.c (scan_words): Fix arg to UPDATE_SYNTAX_TABLE_BACKWARD.
18409
184102007-05-21 Chong Yidong <cyd@stupidchicken.com>
18411
18412 * image.c (uncache_image): New function.
18413 (Fimage_refresh): New function.
18414
184152007-05-20 Jan Djärv <jan.h.d@swipnet.se>
18416
18417 * Makefile.in: Move GPM check outside HAVE_X_WINDOWS.
18418
184192007-05-20 Nick Roberts <nickrob@snap.net.nz>
18420
18421 * config.in, keyboard.c, Makefile.in, sysdep.c, term.c,
18422 * termhooks.h: Use HAVE_GPM instead of HAVE_GPM_H.
18423
184242007-05-20 Nick Roberts <nickrob@snap.net.nz>
18425
18426 * keyboard.c (make_lispy_event): Make case GPM_CLICK_EVENT
18427 conditional on [HAVE_GPM_H].
18428
184292007-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
18430
18431 * syntax.c (skip_chars): Update syntax-table only after we checked that
18432 the new location is valid.
18433
184342007-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18435
18436 * macterm.c (x_calc_absolute_position): Add BLOCK_INPUT around
18437 mac_get_window_bounds.
18438
184392007-05-20 Nick Roberts <nickrob@snap.net.nz>
18440
18441 * Makefile.in (LIBGPM): Allow it to be set from configure.
18442 If set then link Emacs with it.
18443
18444 * config.in: Regenerate.
18445
18446 * lisp.h (add_gpm_wait_descriptor, delete_gpm_wait_descriptor):
18447 New externs.
18448
18449 * termhooks.h [HAVE_GPM_H] (enum event_kind): Add GPM_CLICK_EVENT.
18450 Include gpm.h.
18451 (handle_one_term_event, term_gpm): New externs.
18452
18453 * sysdep.c [HAVE_GPM_H] (init_sys_modes): Make gpm_fd nonblocking
18454 and allow it to be interrupted by SIGIO.
18455
18456 * process.c (gpm_wait_mask, max_gpm_desc): New variables.
18457 (wait_reading_process_output): Wait on gpm_fd too.
18458 (add_gpm_wait_descriptor, delete_gpm_wait_descriptor)): New functions.
18459 (add_gpm_wait_descriptor_called_flag): New variable.
18460 (delete_keyboard_wait_descriptor): Check gpm_wait_mask.
18461
18462 * keyboard.c [HAVE_GPM_H] (Qmouse_fixup_help_message)
18463 (make_lispy_movement, tracking_off, Ftrack_mouse, some_mouse_moved)
18464 (show_help_echo, readable_events, kbd_buffer_get_event, init_keyboard):
18465 Extend HAVE_MOUSE ifdefs to HAVE_GPM_H.
18466 (make_lispy_event): Add case GPM_CLICK_EVENT.
18467 (read_avail_input): Handle mouse input.
18468
18469 * term.c (write_glyphs_with_face): New function.
18470 [HAVE_GPM_H]: Include buffer.h, sys/fcntl.h.
18471 (mouse_face_beg_row, mouse_face_beg_col, mouse_face_end_row)
18472 (mouse_face_end_col, mouse_face_past_end, mouse_face_window)
18473 (mouse_face_face_id, term_gpm, pos_x, pos_y)
18474 (last_mouse_x, last_mouse_y): New variables.
18475 (term_show_mouse_face, term_clear_mouse_face, fast_find_position)
18476 (term_mouse_highlight, term_mouse_movement, term_mouse_position)
18477 (term_mouse_click, handle_one_term_event, Fterm_open_connection)
18478 (Fterm_close_connection): New functions.
18479 (term_init): Initialise mouse_face_window.
18480
184812007-05-19 Chong Yidong <cyd@stupidchicken.com>
18482
18483 * xdisp.c (redisplay_window): If first window line is a
18484 continuation line, recompute the new window start instead of
18485 recentering.
18486
184872007-05-18 Glenn Morris <rgm@gnu.org>
18488
18489 * m/alpha.h (ORDINARY_LINK): No longer define on OpenBSD.
18490 Suggested by Alfred M. Szmidt <ams@gnu.org>.
18491
184922007-05-17 Glenn Morris <rgm@gnu.org>
18493
18494 * m/macppc.h (ORDINARY_LINK): No longer define on OpenBSD.
18495
184962007-05-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18497
18498 * macterm.c [USE_CARBON_EVENTS] (mac_convert_event_ref): Also convert
18499 dead key repeat and up events.
18500
185012007-05-14 Chong Yidong <cyd@stupidchicken.com>
18502
18503 * image.c (pbm_load): Check image size for monochrome pbm.
18504
185052007-05-13 Chong Yidong <cyd@stupidchicken.com>
18506
18507 * xterm.c (XTread_socket): Revert last change.
18508
185092007-05-12 Chong Yidong <cyd@stupidchicken.com>
18510
18511 * image.c (pbm_load): Correctly check image size for greyscale pbm.
18512
18513 * xterm.c (XTread_socket): Yet Another Uncaught X Error Crash (YAUXEC).
18514
185152007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
18516
18517 * editfns.c (Ftranspose_regions): Yet another int/Lisp_Object
18518 mixup (YAILOM).
18519
185202007-05-07 Andreas Schwab <schwab@suse.de>
18521
18522 * keymap.c (Flookup_key): Fix typo in last change.
18523
185242007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
18525
18526 * keymap.c (Fdefine_key, Flookup_key): Only do the 0x80->meta_modifier
18527 mapping for unibyte strings.
18528
185292007-05-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18530
18531 * macmenu.c (mac_dialog_show): Apply 2007-04-27 change for xmenu.c.
18532 (Fx_popup_dialog) [MAC_OSX]: Likewise.
18533
185342007-04-29 Richard Stallman <rms@gnu.org>
18535
18536 * insdel.c (replace_range): For undo, record insertion first.
18537
185382007-04-29 Andreas Schwab <schwab@suse.de>
18539
18540 * lisp.h (VECSIZE): Use OFFSETOF.
18541
185422007-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18543
18544 * xdisp.c (try_window_reusing_current_matrix): Fix number of
18545 disabled lines.
18546
185472007-04-28 Richard Stallman <rms@gnu.org>
18548
18549 * lread.c (read_escape): In a string, \s is always space.
18550
185512007-04-27 Jan Djärv <jan.h.d@swipnet.se>
18552
18553 * xmenu.c (xdialog_show): Call Fredisplay before showing the dialog.
18554
18555 * gtkutil.c (xg_update_menubar, create_menus): Create empty
18556 submenu for menu bar items.
18557
18558See ChangeLog.10 for earlier changes.
18559
18560;; Local Variables:
18561;; coding: utf-8
18562;; add-log-time-zone-rule: t
aac0c6e3
MR
18563;; End:
18564
76b6f707 18565 Copyright (C) 2007, 2008, 2009 Free Software Foundation, Inc.
aac0c6e3
MR
18566
18567 This file is part of GNU Emacs.
18568
18569 GNU Emacs is free software: you can redistribute it and/or modify
18570 it under the terms of the GNU General Public License as published by
18571 the Free Software Foundation, either version 3 of the License, or
18572 (at your option) any later version.
18573
18574 GNU Emacs is distributed in the hope that it will be useful,
18575 but WITHOUT ANY WARRANTY; without even the implied warranty of
18576 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18577 GNU General Public License for more details.
18578
18579 You should have received a copy of the GNU General Public License
18580 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
18581
18582;; arch-tag: dfb6ad96-1550-4905-9e53-d2059ee84c40