* emacsclient.c (main): Revert part of last change,
[bpt/emacs.git] / src / ChangeLog
CommitLineData
0a375797
AR
12009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
2
3 * nsfns.m (syms_of_nsfns): Remove Qbuffered.
4
61313fa3
SM
52009-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
6
7 * buffer.c (Fswitch_to_buffer): Revert part of 2008-10-21's change.
8
b55103fb
CY
92009-03-10 Chong Yidong <cyd@stupidchicken.com>
10
11 * lread.c (Feval_buffer): Doc fix.
12
dde2559c
KH
132009-03-09 Kenichi Handa <handa@m17n.org>
14
15 * charset.c (Qfile_name_handler_alist): Extern it.
16 (load_charset_map_from_file): Temporarily bind
17 `file-name-handler-alist' to nil while calling openp. (Bug#2435)
18
340e08a4
AR
192009-03-06 Aaron Ecay <aaronecay@gmail.com> (tiny change)
20
47f588bb
GM
21 * nsterm.m (ns_draw_vertical_window_border): Draw 1 pixel wide,
22 not two, and use NSRectFill instead of NSDrawGroove. (Bug#2352)
340e08a4 23
4ddf94bd
AR
242009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
25
4c9bdfc2
AR
26 * nsterm.m: Include <signal.h> for SIGTERM used in ns_term_shutdown.
27 (x_set_window_size): Change back to calculated method of setting
28 toolbar height under Cocoa. (Bug#2546)
4ddf94bd
AR
29 (EmacsView-windowWillUseStandardFrame:defaultFrame:): New method.
30 (EmacsView-drawRect:): Completely shortcircuit if ns_in_resize.
31
fe41ae9e
AR
32 * nsfns.m (ns_appkit_version_int): Fix typo in the version macro.
33
4c9bdfc2
AR
34 * nsmenu.m (EmacsMenu-addItemWithWidgetValue:): Don't add
35 accelerator in parens under GNUstep.
36
825d0875
KH
372009-03-06 Kenichi Handa <handa@m17n.org>
38
39 These changes are to detect incorrect composition sequence without
f3b3be74 40 looking ahead the source. (Bug#2370)
825d0875
KH
41
42 * coding.h: Include "composite.h".
43 (enum compisition_state): New enum.
44 (struct compisition_status): New struct.
45 (struct iso_2022_spec): New member cmp_status.
46 (struct emacs_mule_spec): New struct.
47 (struct coding_system): New members ctext_extended_segment_len and
48 embedded_utf_8. Change the union member
49 spec.emacs_mule_full_support to spec.emacs_mule.
50
51 * coding.c (CODING_ISO_CMP_STATUS): New macro.
52 (CODING_ISO_EXTSEGMENT_LEN, CODING_ISO_EMBEDDED_UTF_8): New macros.
53 (MAX_ANNOTATION_LENGTH): Defined to 5.
54 (ADD_COMPOSITION_DATA): New arg nbytes.
55 (emacs_mule_char): New arg cmp_status.
56 (DECODE_EMACS_MULE_COMPOSITION_CHAR): Delete it.
57 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): New arg c.
58 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New arg c.
59 (DECODE_EMACS_MULE_21_COMPOSITION): Delete the arg c.
60 (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Likewise.
61 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Likewise.
62 (DECODE_EMACS_MULE_COMPOSITION_START): New macro.
63 (EMACS_MULE_COMPOSITION_END): New macro.
64 (emacs_mule_finish_composition): New function.
65 (EMACS_MULE_MAYBE_FINISH_COMPOSITION): New macro.
66 (decode_coding_emacs_mule): Avoid long looking ahead while
67 handling composition.
68 (DECODE_COMPOSITION_RULE): Argument changed to rule and nbytes.
69 (ENCODE_COMPOSITION_RULE): New macro.
70 (finish_composition): New function.
71 (MAYBE_FINISH_COMPOSITION): Call finish_composition.
72 (DECODE_COMPOSITION_START): New implementation.
73 (DECODE_COMPOSITION_END): Likewise.
74 (STORE_COMPOSITION_RULE): New macro.
75 (decode_coding_iso_2022): Avoid long looking ahead while handling
76 composition, CTEXT extended segment, and embedded UTF-8.
77 (setup_coding_system): For a coding of type iso-2022, reset
78 CODING_ISO_EXTSEGMENT_LEN (coding) and
79 CODING_ISO_EMBEDDED_UTF_8 (coding).
80 (get_translation): Delete arguments last_block, from_nchars,
81 to_nchars. Callers changed.
82 (produce_chars): Don't modify charbuf. Adjusted for the change of
83 get_translation.
84 (produce_composition): Adjusted for the new annotation sequence.
85 (handle_composition_annotation): Likewise.
86 (consume_chars): Adjusted for the change of get_translation.
87
ccbc4452
AR
882009-03-05 Adrian Robert <Adrian.B.Robert@gmail.com>
89
4ddf94bd 90 * nsterm.m (ns_select): Shortcircuit if reentrant call. (Bug#2564)
ccbc4452 91
988a7ddb
KH
922009-03-05 Kenichi Handa <handa@m17n.org>
93
94 * font.c (font_select_entity): New function.
95 (font_find_for_lface): Use font_select_entity to select a font.
96
97 * fontset.c (fontset_find_font): If a font found without
98 restricting of the characters C doen't support C, try to find a
99 font with C restriction.
100
be1bce46 1012009-03-04 Nikolaj Schumacher <me@nschum.de> (tiny change)
2f462d73 102
be1bce46 103 * nsfont.m (nsfont_draw): Compare ns_antialias_text against lisp value.
2f462d73 104
10ea2b82
JR
1052009-03-04 Jason Rumney <jasonr@gnu.org>
106
2c93b248 107 * w32fns.c (w32_wnd_proc): Only ignore IME messages for the
4891ba1d 108 characters that have already been read. (Bug#2569)
2c93b248 109
10ea2b82
JR
110 * image.c (xbm_read_bitmap_data, png_load, svg_load_image):
111 Log an error message if check_image_size failed.
112 (xpm_load_image, pbm_load, jpeg_load, tiff_load, gif_load)
4891ba1d 113 (gs_load): Mention max-image-size in size error message. (Bug#2560)
10ea2b82 114
71a0c011
EZ
1152009-03-02 Eli Zaretskii <eliz@gnu.org>
116
117 * callproc.c (Fcall_process): Bind inhibit-modification-hooks to t
118 when decoding process output.
119
2f63bba8
RS
1202009-03-01 Richard M Stallman <rms@gnu.org>
121
122 * m/mips.h (DATA_SEG_BITS, XUINT, XSET): Definitions disabled.
123
124 * emacs.c (gdb_data_seg_bits) [USE_LSB_TAG]: Make it 0.
125
0a9564cb
EZ
1262009-02-28 Eli Zaretskii <eliz@gnu.org>
127
128 * coding.c (decode_coding_utf_8, decode_coding_utf_16)
129 (decode_coding_emacs_mule, decode_coding_iso_2022)
130 (encode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
131 (decode_coding_raw_text, decode_coding_charset)
132 (setup_coding_system, decode_eol, decode_coding, consume_chars):
133 Honor inhibit-eol-conversion. (Bug #2186)
134
449148b3
JR
1352009-02-28 Jason Rumney <jasonr@gnu.org>
136
137 * coding.c (detect_coding_charset): If not checking latin extra,
138 fail on characters between 0x80 and 0xA0. (Bug#2354)
139
a4aee864
EZ
1402009-02-28 Eli Zaretskii <eliz@gnu.org>
141
142 * coding.c (detect_coding_charset): Fix change from 2008-10-21.
2a1573ff 143 Also, check iso-latin-*, not only iso-8859-*. (Bug#2497)
a4aee864 144
d88bee5a
GM
1452009-02-27 Glenn Morris <rgm@gnu.org>
146
147 * callint.c (Finteractive): Doc fix.
148
a808f22d
KH
1492009-02-27 Kenichi Handa <handa@m17n.org>
150
151 * lread.c (read_escape): Signal an error for invalid \UXXXXXXXX.
152
caf8d60c
CY
1532009-02-27 Chong Yidong <cyd@stupidchicken.com>
154
155 * font.c (font_style_to_value): Set value for unknown symbols to
156 100 instead of 255.
b61137ea
CY
157 (weight_table, slant_table, width_table): Treat "unspecified" as
158 the default value.
caf8d60c 159
1a0de25c
JB
1602009-02-26 Juanma Barranquero <lekktu@gmail.com>
161
162 * fileio.c (Fnext_read_file_uses_dialog_p): Fix typo in docstring.
163
8fc45744
JB
1642009-02-25 Juanma Barranquero <lekktu@gmail.com>
165
107bd7d1
JB
166 * lread.c (Fload): Stop checking Vloads_in_progress and signal
167 error as soon as a recursive load is detected.
8fc45744 168
f097e223
AR
1692009-02-24 Adrian Robert <Adrian.B.Robert@gmail.com>
170
171 * nsterm.m (ns_ring_bell): Convert rect to window coordinates
172 before caching.
173
8810a12f
KH
1742009-02-24 Kenichi Handa <handa@m17n.org>
175
176 * fontset.c (fontset_find_font): Fix the condition for checking
177 unavailable font.
178
2c7d1565
GM
1792009-02-24 Glenn Morris <rgm@gnu.org>
180
181 * xfaces.c (Finternal_set_font_selection_order): Remove leading
182 whitespace that confuses documentation.
183
a20878b6
MB
1842009-02-23 Miles Bader <miles@gnu.org>
185
186 * process.c (Flist_system_processes, Fprocess_attributes)
187 (syms_of_process): Rename `system-process-attributes' to
188 `process-attributes'.
189
b3b58c01
AS
1902009-02-22 Andreas Schwab <schwab@linux-m68k.org>
191
1b3b981b
AS
192 * coding.h (struct coding_system): Make safe_charsets a pointer to
193 unsigned char.
194 * coding.c (CODING_ISO_REQUEST): Check for safe_charsets content
195 being 255.
196 (SAFE_CHARSET_P): Likewise.
197 (setup_iso_safe_charsets): Properly setup safe_charsets.
198 (Fdefine_coding_system_internal): Likewise.
199 (setup_coding_system): Likewise. Remove unneeded casts.
200 (detect_coding_iso_2022): Compare Viso_2022_charset_list with
201 CODING_ATTR_CHARSET_LIST, not CODING_ATTR_SAFE_CHARSETS. Remove
202 unneeded casts.
203
b3b58c01
AS
204 * insdel.c (del_range_2): Don't modify gap contents when called
205 from decode_coding_object. (Bug#1809)
206
0b6f228c
CY
2072009-02-21 Chong Yidong <cyd@stupidchicken.com>
208
209 * data.c (syms_of_data): Define Qfont_spec, Qfont_entity, and
210 Qfont_object.
211 (Ftype_of): Recognize font objects.
212
213 * lisp.h: Define Qfont_spec, Qfont_entity, Qfont_object extern.
214
215 * font.c (Qfont_spec, Qfont_entity, Qfont_object): Definitions
216 moved to data.c.
217
52f8870b
AR
2182009-02-20 Adrian Robert <Adrian.B.Robert@gmail.com>
219
220 * nsterm.m (x_make_frame_invisible): Unset async_visible,
221 async_iconified. Based on a patch by Christian Lynbech
222 <christian.lynbech@tieto.com>.
223 (EmacsView-windowDidMiniaturize:): Unset async_visible.
224
7087d5e9
GM
2252009-02-20 Glenn Morris <rgm@gnu.org>
226
227 * syntax.c (Fskip_chars_forward): Fix doc typo.
228
41d2ceef
CY
2292009-02-20 Chong Yidong <cyd@stupidchicken.com>
230
231 * keymap.c (Fkeymap_parent): Doc fix (Bug#2391).
232
1a3b7ca6
CY
2332009-02-19 Chong Yidong <cyd@stupidchicken.com>
234
235 * xfns.c (Fx_create_frame): Give Xft driver a higher priority.
236
73cce38d
KH
2372009-02-19 Kenichi Handa <handa@m17n.org>
238
239 * coding.c (detect_coding): Preserve coding->mode.
2bc550cb 240 Don't overflow coding->carryover. (Bug#2370)
73cce38d 241
a51092ee
DN
2422009-02-18 Dan Nicolaescu <dann@ics.uci.edu>
243
244 * m/ibmrs6000.h (ADDR_CORRECT): Restore, removed by mistake on 2008-07-23.
245
c423ecca
KH
2462009-02-18 Kenichi Handa <handa@m17n.org>
247
248 * font.c (font_check_otf_features): Fix handling of `nil' element.
249 (Ffont_spec): Describe :lang and :otf in the docstring.
250
4c1958f4
AS
2512009-02-16 Andreas Schwab <schwab@suse.de>
252
253 * coding.c (Fcheck_coding_systems_region): Fix test for unibyte
254 string.
255
5704f39a
KH
2562009-02-16 Kenichi Handa <handa@m17n.org>
257
258 * coding.c (Fcheck_coding_systems_region): Fix typo; Qt -> Qnil.
a057d86a 259 (Bug#1723)
5704f39a 260
8f0085aa
CY
2612009-02-14 Chong Yidong <cyd@stupidchicken.com>
262
a057d86a 263 * dispextern.h (struct iterator_stack_entry): New line_wrap member.
8f0085aa
CY
264
265 * xdisp.c (push_it, pop_it): Save and restore line_wrap.
266 (handle_line_prefix): Suppress wrapping of wrap prefixes.
267
aff01dd9
EZ
2682009-02-14 Eli Zaretskii <eliz@gnu.org>
269
270 * msdos.c (MAX_SCREEN_BUF): New macro.
271 (IT_write_glyphs): Make screen_buf[] always be MAX_SCREEN_BUF-long.
272 Encode the entire run of glyphs sharing the same face, instead of
273 doing that one glyph at a time (fixes a bug with displaying
274 double-size characters).
275
ba301db3
AR
2762009-02-13 Adrian Robert <Adrian.B.Robert@gmail.com>
277
278 * nsfns.m (ns-read-file-name): BLOCK_INPUT while showing dialog.
279
280 * nsmenu.m (pop_down_menu): Check popup_activated_flag.
281 (ns_popup_dialog, EmacsDialogPanel-runDialogAt:): Let
a057d86a 282 pop_down_menu do the cleanup work as it is always called. (Bug#2154)
ba301db3
AR
283
284 * nsfont.m (nsfont_make_fontset_for_font): For now, don't try to
a057d86a 285 set fontset font for "mathematical-" sub-scripts. (Bug #2218)
ba301db3 286
51d861de
SM
2872009-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
288
289 * keyboard.c (adjust_point_for_property): Allow stopping betwen two
290 invisible areas.
291
7fed8996
JR
2922009-02-12 Jason Rumney <jasonr@gnu.org>
293
631ea4fb
JR
294 * w32font.c (check_face_name): Check for fake helv. (Bug#2275)
295 (add_font_entity_to_list): Call check_face_name even when family
296 is unspecified.
297
cb4a3e42
JR
298 * w32term.c (x_display_pixel_height, x_display_pixel_width):
299 Release DC when finished. Use NULL window to refer to desktop.
631ea4fb 300 (w32_term_init): Use NULL window to refer to desktop. (Bug#460)
cb4a3e42 301
7fed8996 302 * w32font.c (add_font_entity_to_list): Fix check for substituted
631ea4fb 303 raster fonts. (Bug#2219)
7fed8996 304
895416e3
KH
3052009-02-12 Kenichi Handa <handa@m17n.org>
306
307 * composite.c (MAX_AUTO_COMPOSITION_LOOKBACK): New macro.
308 (composition_gstring_width): Fix handling of LGLYPH_YOFF.
309 (autocmp_chars): Use fast_looking_at. Don't compose more
1dacf998 310 characters than MAX_COMPOSITION_COMPONENTS.
895416e3
KH
311 (find_automatic_composition): While looking forward and backward,
312 check static composition. Fix where to stop looking forward.
313 (composition_adjust_point): Fix checking of static composition.
314 (Fcomposition_get_gstring): Pay attention to
1dacf998 315 MAX_COMPOSITION_COMPONENTS.
895416e3
KH
316
317 * lisp.h (fast_looking_at): Extern it.
318
319 * search.c (fast_looking_at): New function.
320
51d861de 321 * term.c (encode_terminal_code): Adjust for the change of
895416e3
KH
322 <struct glyph>.u.cmp.to.
323 (append_composite_glyph): Likewise.
324
51d861de 325 * xdisp.c (fill_gstring_glyph_string): Adjust for the change of
895416e3
KH
326 <struct glyph>.u.cmp.to. Check if the glyph belongs to the same
327 composition.
51d861de 328 (append_composite_glyph): Adjust for the change of
895416e3
KH
329 <strcut glyph>.u.cmp.to.
330
8510724d
JB
3312009-02-11 Juanma Barranquero <lekktu@gmail.com>
332
333 * casetab.c (init_casetab_once):
334 * coding.c (ALLOC_CONVERSION_WORK_AREA):
335 * font.c (font_update_lface):
336 * fontset.c (Fnew_fontset):
337 * ftfont.c (ftfont_drive_otf):
338 * xfont.c (xfont_open):
339 * xftfont.c (xftfont_get_xft_draw): Remove spurious semicolons.
340
294fa707
SM
3412009-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
342
343 * fileio.c (Fwrite_region): !NILP -> CONSP.
344
b5bfebec
AS
3452009-02-10 Andreas Schwab <schwab@suse.de>
346
347 * process.c (send_process): Properly relocate pointer into data
adab88bd 348 when using encoded data. (Bug#2272)
b5bfebec 349
cb84a2be
KH
3502009-02-08 ARISAWA Akihiro <ari@mbf.sphere.ne.jp>
351
352 * coding.c (detect_coding_charset): Fix previous change.
353
89e09428
JR
3542009-02-08 Jason Rumney <jasonr@gnu.org>
355
356 * w32fns.c (w32_hide_hourglass): Handle case where frame
adab88bd 357 disappeared while hourglass was displayed. (Bug #2193)
89e09428 358
4470a277
AS
3592009-02-07 Andreas Schwab <schwab@suse.de>
360
361 * unexelf.c (unexec): Fix error message.
362
3175b12a
AR
3632009-02-07 Adrian Robert <Adrian.B.Robert@gmail.com>
364
365 * nsterm.m (EmacsApp-sendEvent:): Defer NSApplicationDefined event
adab88bd 366 when modal window is active. (Bug #2152)
3175b12a
AR
367 (applicationShouldTerminate:): Remove now-unneeded while loop
368 around NSRunAlertPanel.
369
370 * nsmenu.m (popupSession): New file-global variable.
371 (pop_down_menu): End the popupSession before closing dialog.
372 (ns_popup_dialog): BLOCK_INPUT around dialog presentation.
373 (EmacsDialogPanel-runDialogAt:): Don't place window (superfluous),
374 don't query NSApp for events (just sleep instead).
375
8434d0b8
EZ
3762009-02-07 Eli Zaretskii <eliz@gnu.org>
377
51d861de
SM
378 * coding.c (syms_of_coding) <translation-table-for-input>:
379 Modify doc string to discourage use for character code unification.
8434d0b8 380
aa82edfd
CY
3812009-02-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
382
383 * atimer.c (run_timers): Update pending_atimers.
384
2d283c7c
CY
3852009-02-06 Chong Yidong <cyd@stupidchicken.com>
386
eb306cab
CY
387 * image.c (svg_load_image): Fix last change.
388
2d283c7c
CY
389 * xfns.c (Fx_create_frame): Signal an error if no font is
390 found (Bug#2147).
391
4d8e170e
JB
3922009-02-05 Juanma Barranquero <lekktu@gmail.com>
393
394 * character.c (syms_of_character) <script-representative-chars>:
395 Fix typo in docstring.
396
c96169a0
AR
3972009-02-04 Adrian Robert <Adrian.B.Robert@gmail.com>
398
399 * nsmenu.m (pop_down_menu): New function.
400 (ns_popup_dialog): Call it on unwind.
401 (EmacsDialogPanel-runDialogAt:): Check popup_activated_flag and
402 call timer_check() (Bug#2154).
403 (EmacsMenu-menuNeedsUpdate:): Don't call ns_update_menu if
404 handling_signal is set.
405 (EmacsMenu-fillWithWidgetValue:): Set submenu title.
406
407 * config.in: Get rid of COCOA_EXPERIMENTAL_CTRL_G
408
409 * s/darwin.h: Same and NO_SOCK_SIGIO as well.
410
411 * nsterm.m (ns_read_socket): Same and don't set handling_signal.
412
51d861de
SM
413 * keyboard.c (poll_for_input_1, handle_async_input):
414 Set handling_signal under HAVE_NS.
c96169a0 415
aacd8ba1
GM
4162009-02-04 Glenn Morris <rgm@gnu.org>
417
418 * fileio.c (Fwrite_region): Doc fix (mention annotate-functions).
419
4cb75c4b
KH
4202009-02-04 Kenichi Handa <handa@m17n.org>
421
422 * Makefile.in (composite.o): Depends on frame.h and termhooks.h.
423
424 * charset.c (Fchar_charset): New optional arg restriction.
425
426 * coding.h (coding_system_charset_list): Extern it.
427
428 * coding.c (coding_system_charset_list): New function.
429
430 * composite.c: Include coding.h and termhooks.h.
431 (composition_gstring_p): Fix for the terminal case.
432 (composition_gstring_width): Likewise.
433 (fill_gstring_body): Likewise.
434 (autocmp_chars): For terminal, call Fcomposition_get_gstring with
435 the frame.
436 (composition_compute_stop_pos): Adjust cmp_it->stop_pos if point
437 is within a composition.
867d4bb3 438 (Fcomposition_get_gstring): Fix the terminal case.
4cb75c4b
KH
439
440 * term.c (encode_terminal_code): Fix handling of composition.
441 (produce_composite_glyph): For static composition, get pixel_width
442 from struct composition.
443
826ba17e
AS
4442009-02-02 Andreas Schwab <schwab@suse.de>
445
446 * unexelf.c (unexec): Handle unaligned bss offset.
447
8ad093db
AR
4482009-02-01 Adrian Robert <Adrian.B.Robert@gmail.com>
449
450 * nsterm.m (ns_read_socket): Copy 2009-01-29 and 2009-01-30
451 XT,w32read_socket changes to ns_read_socket.
d0a76a6e 452
8ad093db
AR
453 * keyboard.c (handle_interrupt): Don't call
454 quit_throw_to_read_char() under NS.
d0a76a6e 455
8ad093db
AR
456 * blockinput.h: Remove NS-specific code.
457
4d18a7a2
DN
4582009-01-30 Dan Nicolaescu <dann@ics.uci.edu>
459
db878925
DN
460 * dispnew.c (window_change_signal): Don't try to get the size of a
461 suspended tty frame.
462 * term.c (Fresume_tty): Resize if the size has changed while the
463 tty was suspended.
464
4d18a7a2
DN
465 * alloc.c (mark_stack): Properly conditionalize previous change.
466
8984df7c
JB
4672009-01-30 Juanma Barranquero <lekktu@gmail.com>
468
469 * w32inevt.c (w32_console_read_socket) [SYNC_INPUT]:
470 * w32term.c (w32_read_socket) [SYNC_INPUT]:
471 Remove; this code is not used on Windows.
472
75f4f1ac
EZ
4732009-01-30 Eli Zaretskii <eliz@gnu.org>
474
475 * coding.c (detect_eol, decode_eol): Handle text with DOS-style
476 EOLs that also has stray ^M characters.
477
07a1e794
JB
4782009-01-30 Juanma Barranquero <lekktu@gmail.com>
479
480 * atimer.c (run_timers, alarm_signal_handler):
481 * keyboard.c (pending_signals, handle_async_input, init_keyboard):
482 * w32inevt.c (w32_console_read_socket):
483 * w32term.c (w32_read_socket):
484 * xterm.c (XTread_socket): Use "#ifdef SYNC_INPUT" where appropriate.
485
a8b11cc9
CY
4862009-01-30 Chong Yidong <cyd@stupidchicken.com>
487
488 * callproc.c (Vtemp_file_name_pattern): Remove DEFVAR_LISP.
489 Initialize it as a relative filename pattern.
490 (init_callproc): Don't initialize Vtemp_file_name_pattern here.
491 (Fcall_process_region): Simplify temp file creation using
492 temporary-file-directory.
493
c279587b
EZ
4942009-01-29 Eli Zaretskii <eliz@gnu.org>
495
496 * msdos.c: Rename pending_signals to msdos_pending_signals.
497 (sig_suspender, sigprocmask): Adjust.
498
a8fe3242
CY
4992009-01-29 Chong Yidong <cyd@stupidchicken.com>
500
501 * keyboard.c (pending_signals): New var.
502 (poll_for_input, input_available_signal, init_keyboard): Set it.
503 (process_pending_signals): New function.
504
505 * lisp.h (QUIT): Check pending_signals instead of
506 interrupt_input_pending. Use process_pending_signals.
507
51d861de 508 * atimer.c (run_timers, alarm_signal_handler): Update pending_signals.
a8fe3242 509
51d861de 510 * process.c (wait_reading_process_output): Use process_pending_signals.
a8fe3242
CY
511
512 * sysdep.c (emacs_write): Use process_pending_signals.
513
514 * xterm.c (XTread_socket): Update pending_signals.
515
516 * w32term.c (w32_read_socket): Update pending_signals.
517
518 * w32inevt.c (w32_console_read_socket): Update pending_signals.
519
6570a1c4
KH
5202009-01-29 Kenichi Handa <handa@m17n.org>
521
522 * xftfont.c (xftfont_has_char): New function.
523 (syms_of_xftfont): Register xftfont_has_char in xftfont_driver.
524
d72a4afa
AR
5252009-01-29 Adrian Robert <Adrian.B.Robert@gmail.com>
526
527 * nsterm.h (EmacsPrefsController.cursorBlinkSlider): Only define
528 under GNUstep.
529 (ns_query_color): New declaration.
530
531 * nsterm.m (ns_confirm_quit): New variable.
532 (ns_set_default_prefs, syms_of_nsterm, ns_term_init): Initialize it.
533 (EmacsApp-applicationShouldTerminate:): Use it.
534 (EmacsPrefsController): Let user set it.
535 (ns_query_color): New function.
536 (ns_defined_color): Use it.
537 (ns_initialize): Drop.
538 (ns_term_init): Add two lines from ns_initialize(), and set
539 input_interrupt_mode to nil.
540
541 * image.c (svg_load_image): Don't right-shift background RGB when
542 obtained from FRAME_BACKGROUND_PIXEL. Under HAVE_NS use ns_query_color.
543
9fe78804
KH
5442009-01-28 Kenichi Handa <handa@m17n.org>
545
546 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
f088b054
KH
547 (fontset_get_font_group): Remember that no font-group is specified
548 for C.
9fe78804 549
fa57de36
CY
5502009-01-27 Chong Yidong <cyd@stupidchicken.com>
551
930600e9
CY
552 * fns.c (concat): Check for string overflow (bug#1787).
553
fa57de36
CY
554 * undo.c (undo_limit, undo_strong_limit, Vundo_outer_limit):
555 Quadruple undo limits (bug#1501).
556
7179ce7b
KH
5572009-01-27 Kenichi Handa <handa@m17n.org>
558
559 * ftfont.c (ftfont_has_char): If the arg FONT is a font-object,
560 directly use GT_Get_Char_index.
561
562 * xftfont.c (struct xftfont_info): New member `index'.
563
564 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
51d861de 565 (Ffontset_font): Adjust for the change of fontset entry.
7179ce7b 566
5be8fcc0
CY
5672009-01-26 Kenichi Handa <handa@m17n.org>
568
569 * fontset.c (fontset_find_font): Fix handling of non-cons return
570 value of fontset_get_font_group.
571 (fontset_font): Revert last change.
572
19ae3e61
JR
5732009-01-26 Jason Rumney <jasonr@gnu.org>
574
575 * w32font.c (w32font_list_internal): Return quickly if registry is
576 unknown. Simplify final return.
577 (add_font_entity_to_list): Break complex logic down into more
578 manageable chunks. Move unknown registry check to
579 w32font_list_internal.
580
8612b71a
AR
5812009-01-25 Adrian Robert <Adrian.B.Robert@gmail.com>
582
583 Changes to remove Feval calls from GUI under NS.
584
d8038940
JB
585 * nsterm.h: Move KEY_NS_... definitions here from nsterm.m.
586 Add NS_TOGGLE_TOOLBAR, NS_PUT_WORKING_TEXT, NS_UNPUT_WORKING_TEXT.
8612b71a
AR
587 Remove NS_INSERT_WORKING_TEXT, NS_DELETE_WORKING_TEXT.
588
589 * nsterm.m: Move KEY_NS_... definitions to nsterm.h.
590 (EmacsView-toggleToolbar:): Use KEY_NS_TOGGLE_TOOLBAR.
591 (EmacsView-setMarkedText:,-deleteWorkingText:): Use NS_TEXT_EVENT
592 instead of NON_ASCII_KEYSTROKE_EVENT.
593 (EmacsApp-terminate:): Use KEY_NS_POWER_OFF instead of Feval.
594 (EmacsApp-applicationShouldTerminate:): Query user.
595 (EmacsPreferencesController-runHelp:): Use KEY_NS_INFO_PREFS
596 instead of Feval.
597
598 * termhooks.h (NS_TEXT_EVENT): New event type under HAVE_NS.
599
600 * keyboard.c (kbd_buffer_get_event): Check for it.
601 (keys_of_keyboard): Define lispy keys for
602 ns-put/unput-working-text.
603
604 * nsmenu.m (ns_popup_dialog): Resync window setting with X and W32
605 versions.
606 (EmacsDialog-runDialogAt:): Use NSModalPanelRunLoopMode.
607
6288ae55
CY
6082009-01-25 Chong Yidong <cyd@stupidchicken.com>
609
610 * dispnew.c (buffer_posn_from_coords): Use Fset_buffer instead of
64cc3cf6 611 setting current_buffer directly. (Bug#2044)
6288ae55 612
289e7f8f
CY
6132009-01-24 Chong Yidong <cyd@stupidchicken.com>
614
5ce87308 615 * fontset.c (fontset_font): If we know there is no font, don't do
d8038940 616 any work. (Bug#1952, bug#1990).
5ce87308 617
64cc3cf6 618 * font.c (font_parse_xlfd): Handle patterns of length < 2. (Bug#1802)
289e7f8f 619
b3243e6f
AR
6202009-01-23 Adrian Robert <Adrian.B.Robert@gmail.com>
621
622 * emacs.c (main): Do fork+exec under --daemon in Cocoa.
d900b2af
AR
623 (ns_no_defaults): New declaration.
624 (main): Use it.
e0d2e69a 625
d900b2af 626 * nsterm.h (ns_no_defaults): New declaration.
e0d2e69a 627
d900b2af 628 * nsfns.m (x_get_string_resource): Don't read when ns_no_defaults.
e0d2e69a 629
d900b2af
AR
630 * nsterm.m (ns_no_defaults): New variable.
631 (ns_initialize): Don't read defaults when ns_no_defaults.
632 (EmacsView-readSelectionFromPasteboard:)
633 (writeSelectionToPasteboard:types:): New stubbed-out methods for
d8038940 634 NSServicesRequests protocol. (Bug#1435)
27521ca6
AR
635 (ns_dumpglyphs_stretch): New function.
636 (ns_draw_glyph_string): Use it, parallel Yamamoto Mitsuharu change
d8038940 637 of 2008-11-15 to other terms. (Bug#615)
b3243e6f 638
e0d2e69a
AR
639 * nsimage.m (setPixmapData:): Set to ignore image DPI.
640
3ac71f5d
CY
6412009-01-23 Giorgos Keramidas <keramida@freebsd.org> (tiny change)
642
643 * alloc.c (mark_stack): Use "flushw" instead of "ta 3" assembly
644 call for Sparc64.
645
3fe53a83
AR
6462009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
647
648 * nsfns.m:
649 * nsgui.h:
650 * nsmenu.m:
651 * nsselect.m:
652 * nsterm.h:
653 * nsterm.m: Remove '23' comments that indicated code added during
654 update from emacs-20 -> emacs-23.
655
10f87c6f 6562009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
a3b53a85
AR
657
658 * nsterm.m (EmavsView-keyDown:): Treat nil as Qnone for
3a88a825 659 ns_alternate_modifier. (Bug#1217)
a3b53a85 660
c7cef62d
AR
661 * nsmenu.m (EmacsMenu-parseKeyEquiv:, addItemWithWidgetValue:):
662 Display all shortcuts, including those w/o super modifier.
663
575fb8bd
AR
664 * nsfns.m (ns-read-file-name): Fix typo in assignment statement.
665
918b848b
CY
6662009-01-22 Chong Yidong <cyd@stupidchicken.com>
667
668 * fileio.c (Vwrite_region_post_annotation_function)
669 (Vwrite_region_annotation_buffers): New vars.
670 (build_annotations_unwind): Just reset
671 Vwrite_region_annotation_buffers.
672 (Fwrite_region): Initialize Vwrite_region_annotation_buffers.
673 Call write-region-post-annotation-function.
674 (build_annotations): Add to Vwrite_region_annotation_buffers if
675 buffer changes.
676
a39e2539
AR
6772009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
678
679 * nsterm.h (EmacsApp-setAppleMenu:): Conditionalize more correctly on
680 Tiger.
51d861de
SM
681 * nsfns.m (ns_do_applescript):
682 Conditionalize typeUTF16ExternalRepresentation on Tiger.
a39e2539 683
35ed44db
AR
6842009-01-21 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
685
686 * nsterm.m (EV_TRAILER): Always use emacsframe for frame_or_window.
687
cbe0b5bf
AR
6882009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
689
690 * nsmenu.m (NSMENUPROFILE): Change #if style.
4c7077c3 691
6049d3a0
AR
692 * nsterm.h (EmacsPrefsController): Add -setPanelFromDefaultValues.
693
694 * nsterm.m (x_set_frame_alpha): Add prototype.
a9b4df69
AR
695 (ns_fake_keydown, EmacsView-keyUp:): New variable and function to
696 handle Ctrl-tab. (Bug#1841)
697 (ns_get_color): Use unsigned long long for scanned hex string value.
698 (ns_term_shutdown): Abort on non SIGTERM signals.
e889fa06 699 (EmacsPrefsController-setDefaultFont:,-setColors:): Raise the frame.
6049d3a0 700 (EmacsPrefsController-setPanelFromDefaultValues) New function.
3a88a825 701 (EmacsPrefsController-resetToDefaults:): Use it. (Bug#1801)
35ed44db 702 (ns_font_to_xlfd, ns_fontname_to_xlfd): Remove, unused.
d3810c21 703 (ns_defined_color): Fix settings of the XColor variable fields:
3a88a825 704 red,green,blue scale to 2-byte, pixel's parts to 1-byte. (Bug#1663)
cbe0b5bf 705
d3810c21 706 * nsimage.m (EmacsImage+allocInitFromFile:): Set to ignore image
3a88a825 707 DPI. (Bug#1316)
d3810c21
AR
708 (EmacsImage-setPixelAtX:Y:toRed:green:blue:alpha:): Fix color
709 values in onTiger section.
4c7077c3 710
e301e634
CY
7112009-01-19 Chong Yidong <cyd@stupidchicken.com>
712
7f82490b
CY
713 * xfaces.c (Finternal_set_lisp_face_attribute, Fx_list_fonts):
714 Check return value of font_spec_from_name.
64cc3cf6 715 (Fx_list_fonts): Doc fix. (Bug#1951)
7f82490b
CY
716
717 * font.c (font_spec_from_name): Return Qnil if font name could not
718 be parsed.
719 (font_parse_name): Treat a `?' character as part of an XLFD.
720
e301e634
CY
721 * fns.c (Fsubstring): Doc fix.
722
1c0db158
KH
7232009-01-19 Kenichi Handa <handa@m17n.org>
724
51d861de 725 * ftfont.c (ftfont_lookup_cache): Check the return value of FcFontList.
1c0db158
KH
726 (ftfont_list): Likewise.
727
acf20901
JB
7282009-01-18 Juanma Barranquero <lekktu@gmail.com>
729
fff4e459
JB
730 * dbusbind.c (Fdbus_register_signal):
731 * process.c (conv_sockaddr_to_lisp):
732 * w32fns.c (Fw32_battery_status): Use empty_unibyte_string.
733
acf20901
JB
734 * callproc.c (Fgetenv_internal): Doc fix.
735
e7abcdfb
CY
7362009-01-16 Chong Yidong <cyd@stupidchicken.com>
737
738 * xfns.c (x_make_gc): Don't allocate stipple member for gc_values;
739 it is not even used.
740
b60861e6
GM
7412009-01-16 Glenn Morris <rgm@gnu.org>
742
743 * font.c (Ffont_variation_glyphs): Silence compiler.
744
8db52afe
JB
7452009-01-15 Juanma Barranquero <lekktu@gmail.com>
746
747 * sound.c (SOUND_WARNING): Use _snprintf, for MSVC compatibility.
748 Reported by David Robinow <drobinow@gmail.com>.
749
4cddb209
KH
7502009-01-15 Kenichi Handa <handa@m17n.org>
751
51d861de 752 * coding.c (detect_coding_system): Fix handling of null_byte_found.
4cddb209 753
f247f67b
JR
7542009-01-14 Jason Rumney <jasonr@gnu.org>
755
756 * frame.c (x_set_font): Always store a font to the font parameter,
fff4e459 757 never a fontset. (Bug#1562)
f247f67b 758
f56a4450
KH
7592009-01-14 Kenichi Handa <handa@m17n.org>
760
761 * coding.c (TWO_MORE_BYTES): New macro.
fff4e459 762 (detect_coding_utf_16): Use TWO_MORE_BYTES instead of ONE_MORE_BYTE.
f56a4450 763
4e99855e
CY
7642009-01-13 Chong Yidong <cyd@stupidchicken.com>
765
766 * font.c (font_clear_prop): If clearing the family, clear the font
767 width index too.
768
fff4e459 769 * xfaces.c (Finternal_set_lisp_face_attribute): Revert last change.
4e99855e 770
24f01470
JB
7712009-01-12 Juanma Barranquero <lekktu@gmail.com>
772
773 * sound.c [WINDOWSNT] (SOUND_WARNING): New macro.
774 (do_play_sound): Use it. Don't pass a hardcoded buffer size to mci
775 functions, use sizeof.
776
a41240a3
MR
7772009-01-12 Martin Rudalics <rudalics@gmx.at>
778
779 * keyboard.c (read_char): Fix case where last_nonmenu_event
780 returned a bad value with submenus. (Bug#447)
781
944636b8
CY
7822009-01-12 Chong Yidong <cyd@stupidchicken.com>
783
784 * xfaces.c (Finternal_set_lisp_face_attribute): If setting the
785 family, clear the font width index too.
786
0dad7c6f
JR
7872009-01-11 Jason Rumney <jasonr@gnu.org>
788
789 * keyboard.c (cmd_error_internal): Exit when errors occur before
790 frame creation and not in daemon mode. (Bug#1836)
791
7c2363af
CY
7922009-01-10 Chong Yidong <cyd@stupidchicken.com>
793
794 * xdisp.c (pos_visible_p): When iterator stops on the last glyph
795 of a display vector, backtrack.
796 (try_window_reusing_current_matrix): Check glyph type before
797 referencing charpos member.
798
97b1b294
EZ
7992009-01-10 Eli Zaretskii <eliz@gnu.org>
800
801 Fix Bug #876:
802
803 * coding.c (inhibit_null_byte_detection): New variable.
804 (detect_coding, detect_coding_system): Don't pay attention to null
805 bytes if inhibit_null_byte_detection is non-zero.
51d861de 806 (syms_of_coding) <inhibit-null-byte-detection>: Declare and document.
97b1b294
EZ
807 <inhibit-iso-escape-detection>: Doc fix.
808
4624b6e3
JR
8092009-01-09 Jason Rumney <jasonr@gnu.org>
810
811 * w32font.c (add_font_entity_to_list): Don't report unknown
fff4e459 812 Windows charset as any unrecognized registry. (Bug#1548)
4624b6e3
JR
813 Only report Unicode Plane 2 fonts as unicode-sip.
814
323b840c
CY
8152009-01-09 Chong Yidong <cyd@stupidchicken.com>
816
51d861de
SM
817 * xfaces.c (Fx_font_family_list): Delete function.
818 Move compatibility version to faces.el.
323b840c 819
51d861de 820 * font.c (Ffont_family_list): Return a list of strings, not symbols.
323b840c 821
eba7400d
MR
8222009-01-09 Martin Rudalics <rudalics@gmx.at>
823
824 * frame.c (x_set_frame_parameters): Remember requested value for
825 fullscreen before it's reset by the parameter handler.
826
4b09796d
GM
8272009-01-09 Glenn Morris <rgm@gnu.org>
828
829 * keyboard.c (last_command_char): For clarity, rename to...
830 (last_command-event): ... and update all users.
831 (last_input_char): For clarity, rename to...
832 (last_input_event): ... and update all users.
833 (last-command-char, last-input-char): Move to subr.el as aliases.
834 * cmds.c, commands.h: Update for last_command_char rename.
835
14ccea62
CY
8362009-01-08 Chong Yidong <cyd@stupidchicken.com>
837
51d861de 838 * font.c (font_open_for_lface): Handle unspecified height attribute.
14ccea62 839
5f004711
JR
8402009-01-08 Jason Rumney <jasonr@gnu.org>
841
842 * w32fns.c (Vx_pointer_shape, Vx_nontext_pointer_shape)
843 (Vx_mode_pointer_shape, Vx_window_horizontal_drag_shape)
844 (Vx_hourglass_pointer_shape, Vx_sensitive_text_pointer_shape):
845 Don't declare.
fff4e459 846 (syms_of_w32fns): Don't define x-pointer-shape variable. (Bug#1485)
5f004711
JR
847 (x_create_tip_frame) [GLYPH_DEBUG]: Enable image debugging code.
848
b71f6f73
KH
8492009-01-07 Kenichi Handa <handa@m17n.org>
850
50b06221 851 * fileio.c (Finsert_file_contents): In the case of replace,
f56a4450 852 remember the coding system used for decoding in
50b06221
KH
853 coding_system (Bug#1039).
854
b71f6f73 855 * coding.c (decode_coding_utf_8): Check byte_after_cr before
79a97217 856 breaking the loop. (Bug#870)
b71f6f73
KH
857 (decode_coding_utf_16, decode_coding_emacs_mule)
858 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
859 (decode_coding_charset): Likewise.
860
56f668f7
MR
8612009-01-05 Martin Rudalics <rudalics@gmx.at>
862
863 * frame.c (x_set_frame_parameters): Make sure height (width) get
864 applied when fullwidth (fullheight) is set. (Bug#1522)
865
5da9424d
JB
8662009-01-04 Juanma Barranquero <lekktu@gmail.com>
867
868 * w32.c: Use 64-bit arithmetic to do FILETIME conversions. (Bug#1766)
869 (utc_base): Declare as ULONGLONG, not long double.
870 (convert_time_raw): Delete.
871 (FILETIME_TO_U64, U64_TO_LISP_TIME): New macros.
872 (initialize_utc_base): New function.
873 (convert_time): Use FILETIME_TO_U64, initialize_utc_base.
874 (convert_from_time_t): Use initialize_utc_base; compute result with
875 64-bit arithmetic.
876 (process_times): Use FILETIME_TO_U64, U64_TO_LISP_TIME.
877
c4605e09
EZ
8782009-01-03 Eli Zaretskii <eliz@gnu.org>
879
9acef61c 880 * process.c (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess)
c4605e09
EZ
881 (Qttname, Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime)
882 (Qcutime, Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs)
883 (Quser, Qgroup, Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime)
884 [!subprocesses]: Define.
885 (syms_of_process) [!subprocesses]: Intern and staticpro them.
886 (Flist_system_processes, Fsystem_process_attributes)
887 [!subprocesses]: Call list_system_processes and
888 system_process_attributes instead of returning Qnil.
889
9acef61c
JB
890 * dosfns.c (system_process_attributes, list_system_processes):
891 New functions.
c4605e09
EZ
892
893 * vm-limit.c (ret_lim_data) [MSDOS]: New function.
894
895 * sysdep.c (list_system_processes, system_process_attributes) [MSDOS]:
896 Don't use the default (no-op) implementation.
897
8b7d0a16
JR
8982009-01-03 Jason Rumney <jasonr@gnu.org>
899
a6d46bc1
JR
900 * keyboard.c (parse_modifiers_uncached): Wheel events are
901 clicks (bug#687).
902
8b7d0a16
JR
903 * w32term.c (x_query_colors, x_query_color): New functions.
904
905 * image.c (x_to_xcolors, png_load): Eliminate W32 specific code.
906 (svg_load_image): Cast returned pointers from dynamically loaded
907 functions. Eliminate W32 specific code.
908
bfe11752
DN
9092009-01-02 Dan Nicolaescu <dann@ics.uci.edu>
910
89e2438a
DN
911 * nsfns.m (x_set_foreground_color, x_set_background_color)
912 (x_set_cursor_color, x_set_icon_name, x_explicitly_set_name)
913 (x_set_title, x_set_icon_type, x_set_cursor_type): Rename to use
914 x_ prefix instead of ns_. Update references.
915 (syms_of_nsfns): Add a FIXME comment.
916
917 * nsterm.m (x_set_cursor_type): New prototype.
918 (setValuesFromPanel): Use it instead of the old ns_ prefixed name.
919
bfe11752
DN
920 * sysdep.c (system_process_attributes): Provide Qtime and Qctime
921 for Solaris instead of incorrectly providing Qutime and Qcutime.
922
031da700
EZ
9232009-01-02 Eli Zaretskii <eliz@gnu.org>
924
925 * w32.c (process_times): Compute sum of utime and stime.
926 (system_process_attributes): Add Qtime to the alist.
927
928 * sysdep.c (system_process_attributes): Compute Qtime and Qctime
929 and add them to the alist.
930
931 * process.c (top level) <Qtime, Qctime>: New variables.
932 (syms_of_process): staticpro them.
933 (Fsystem_process_attributes): Add their documentation to the doc
934 string.
935
936 * process.h: Declare Qtime and Qctime.
937
df23bf08
JR
9382009-01-02 Jason Rumney <jasonr@gnu.org>
939
9acef61c 940 * image.c (Qgobject): New symbol.
df23bf08
JR
941 (syms_of_image): Initialize it.
942 (init_svg_functions): Load some functions from gobject library.
943
5bbdf7aa
DN
9442009-01-01 Dan Nicolaescu <dann@ics.uci.edu>
945
946 * frame.c (make_terminal_frame): Remove redundant code and useless
947 block.
948
63136da6
AS
9492009-01-01 Andreas Schwab <schwab@suse.de>
950
951 * process.c (conv_sockaddr_to_lisp): Add workaround for
952 getsockname bug on BSD.
953
9ef69046
CY
9542009-01-01 Chong Yidong <cyd@stupidchicken.com>
955
d6fafbe0
CY
956 * xfns.c (x_create_tip_frame): Set border width of the X window.
957
51d861de 958 * xfaces.c (Finternal_set_lisp_face_attribute): Improve error message.
9ef69046 959
f9c34147
JR
9602009-01-01 Jason Rumney <jasonr@gnu.org>
961
9acef61c 962 * w32term.c (x_new_font): Return font object, not fontset. (Bug#119)
f9c34147
JR
963 Don't block input, as per earlier xterm.c changes.
964
f5497e45
AR
9652008-12-31 Adrian Robert <Adrian.B.Robert@gmail.com>
966
967 * nsfns.m (ns_appkit_version_str): Rename from ns_appkit_version.
968 (ns_appkit_version_int): New function.
969 (x-server-version): Use ns_appkit_version_int and follow 21+
970 convention of returning 3 integers.
971
c19cab20
KH
9722008-12-30 Kenichi Handa <handa@m17n.org>
973
974 * character.h (CHAR_VARIATION_SELECTOR_P): New macro.
975 (CHAR_SURROGATE_PAIR_P): New macro.
976
977 * font.h (struct font_driver): New member get_variation_glyphs.
978
9acef61c 979 * font.c (font_range): Don't require a font for a variation selector.
c19cab20
KH
980 (Ffont_variation_glyphs): New function.
981 (syms_of_font): Defsubr it.
982
983 * ftfont.c (ftfont_driver): Set the member get_variation_glyphs to
984 ftfont_variation_glyphs.
985 (setup_otf_gstring): New function.
986 (ftfont_drive_otf): Use it.
987 (ftfont_shape_by_flt): Handle variation selector.
988 (ftfont_variation_glyphs): New function.
989
28cd591f
MR
9902008-12-30 Martin Rudalics <rudalics@gmx.at>
991
992 * frame.c (Vemacs_iconified): Remove.
993
7f714baf
JR
9942008-12-30 Jason Rumney <jasonr@gnu.org>
995
996 * frame.c (store_frame_param, x_get_arg): Enable newer code on
9acef61c 997 WINDOWSNT too, as related changes have already been synced. (Bug#117)
7f714baf 998
9d2d22ab
CY
9992008-12-30 Chong Yidong <cyd@stupidchicken.com>
1000
1001 * indent.c (Fvertical_motion): Don't advance iterator if we have
1002 reseated to the desired position.
1003
1004 * xdisp.c (move_it_to): Handle GET_FROM_STRETCH method when
1005 checking for pos match.
1006
545312c2
KH
10072008-12-30 Kenichi Handa <handa@m17n.org>
1008
1ede3eb6
KH
1009 * insdel.c (copy_text): To convert a non-ASCII char to unibyte,
1010 just get the low 8-bit of the code.
1011
545312c2
KH
1012 * font.c (font_intern_prop): Validate str as multibyte.
1013
bd7bbf29
DN
10142008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
1015
31e0750e
DN
1016 * dispextern.h (struct face): Move lface and hash from the middle
1017 of bitfields.
1018
bd7bbf29
DN
1019 * Makefile.in (INTERVALS_H): Rename from INTERVAL_SRC, update all users.
1020
b5672e7c
DN
10212008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
1022
1023 * Makefile.in (INTERVAL_SRC): Also depend on dispextern.h.
1024 (coding.o, dispnew.o, keymap.o, msdos.o): Depend on INTERVAL_SRC
1025 instead of intervals.h.
1026
d704470f
AS
10272008-12-26 Andreas Schwab <schwab@suse.de>
1028
1029 * keymap.c (map_keymap_char_table_item): Make a copy of KEY if it is a
1030 cons.
1031
54b33868
MR
10322008-12-26 Martin Rudalics <rudalics@gmx.at>
1033
1034 * textprop.c (Qminibuffer_prompt): New variable.
1035 (syms_of_textprop): Initialize it.
1036 * callint.c (Fcall_interactively): For `c', `k', and `K' prompt
1037 in minibuffer-prompt face. (Bug#1662)
1038
40b615d6
JR
10392008-12-25 Jason Rumney <jasonr@gnu.org>
1040
1041 * buffer.c (Fbuffer_swap_text): Use POINTER_TYPE.
1042
baae5c2d
JR
10432008-12-24 Jason Rumney <jasonr@gnu.org>
1044
1045 * ralloc.c (r_alloc_reset_variable): New function.
1046
1047 * buffer.c (Fbuffer_swap_text) [REL_ALLOC]: Reset ralloc's internal
9acef61c 1048 record of what points where. (Bug#716)
baae5c2d 1049
a9051c88
DN
10502008-12-22 Dan Nicolaescu <dann@ics.uci.edu>
1051
1052 * minibuf.c (read_minibuf): Follow the non-interactive case when
1053 running as a daemon, before detaching.
1054
8b146312
AS
10552008-12-22 Andreas Schwab <schwab@suse.de>
1056
1057 * buffer.c (init_buffer): Use realloc instead of xrealloc.
1058 * gtkutil.c (free_widget_value): Use xfree instead of free.
1059
56f2de10
MR
10602008-12-22 Martin Rudalics <rudalics@gmx.at>
1061
1062 * frame.c (delete_frame): New function derived from
1063 Fdelete_frame to handle Qnoelisp value for FORCE argument.
1064 Delete last frame iff FORCE equals Qnoelisp. (Bug#1450)
1065 (Fdelete_frame): Call delete_frame. Remove line from doc-string
1066 saying that FORCE non-nil doesn't run `delete-frame-functions'.
1067 * frame.h: Extern delete_frame.
1068 * window.c (window_loop):
1069 * terminal.c (delete_terminal):
1070 * xterm.c (x_connection_closed):
1071 * xfns.c (Fx_hide_tip):
9acef61c 1072 * w32fns.c (Fx_hide_tip): Call delete_frame instead of Fdelete_frame.
56f2de10 1073
1fc200d6
JR
10742008-12-21 Jason Rumney <jasonr@gnu.org>
1075
1076 * w32uniscribe.c (uniscribe_encode_char): Return FONT_INVALID_CHAR
1077 when character maps to .notdef character.
1078
5e252df2
SM
10792008-12-21 Stefan Monnier <monnier@iro.umontreal.ca>
1080
1081 * keyboard.c (cmd_error_internal): Don't exit in daemon mode, bug#1310.
1082
99b72cc4
JR
10832008-12-20 Jason Rumney <jasonr@gnu.org>
1084
1085 * frame.c (Fmake_terminal_frame): Raise an error when called from
9acef61c 1086 a graphical frame on Windows. (Bug#1325)
99b72cc4 1087
acc49a52
JD
10882008-12-20 Jan Djärv <jan.h.d@swipnet.se>
1089
1090 * frame.c (Fdelete_frame): Set f->menu_bar_vector to Qnil.
1091
6ea15123
CY
10922008-12-20 Chong Yidong <cyd@stupidchicken.com>
1093
1094 * minibuf.c (Fread_buffer): Doc fix.
1095
b2dab6c8
JR
10962008-12-20 Jason Rumney <jasonr@gnu.org>
1097
54ea0c87 1098 * fileio.c (Fexpand_file_name): Do not allow ../ to go beyond the
9acef61c 1099 server name in UNC paths. (Bug#719)
54ea0c87 1100
b2dab6c8 1101 * coding.c (decode_coding): Clear chars_at_source flag when using
9acef61c 1102 charbuf. (Bug#1035)
b2dab6c8 1103
6d1921be
DN
11042008-12-19 Daniel Engeler <engeler@gmail.com>
1105
1106 * sysdep.c (serial_configure): Fix typo.
1107
53934c98
DN
11082008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
1109
1110 * sysdep.c: Include alloca.h.
f4f634e8
DN
1111 (system_process_attributes): Add implementation for Solaris.
1112
1113 * s/sol2-10.h (HAVE_PROCFS, _STRUCTURED_PROC): New defines.
53934c98 1114
06e111a6
DN
11152008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
1116
1117 Reorganize implementation of Flist_system_processes and
1118 Fsystem_process_attributes. No functional changes.
1119 * process.c: Don't #include pwd.h, grp.h and limits.h.
1120 (Flist_system_processes): Just call list_system_processes.
1121 (Fsystem_process_attributes): Just call system_process_attributes.
1122 (procfs_list_system_processes, time_from_jiffies)
1123 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
1124 (procfs_get_total_memory, procfs_system_process_attributes): Move ...
1125
1126 * sysdep.c: ... here. Include pwd.h, grp.h and limits.h.
1127 (list_system_processes): Rename from
1128 procfs_list_system_processes. Enclose in #ifdef HAVE_PROCFS.
1129 Provide a do nothing implementation.
1130 (system_process_attributes): Rename from
1131 procfs_list_system_processes.
1132 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
9acef61c 1133 (procfs_get_total_memory): Enclose in #ifdef GNU_LINUX.
06e111a6
DN
1134
1135 * w32.c (list_system_processes): Rename from
1136 w32_list_system_processes.
1137 (system_process_attributes): Rename from
1138 w32_system_process_attributes.
1139
1140 * s/gnu-linux.h (LISTPROC, PROCATTR): Remove.
1141
1142 * process.h (w32_list_system_processes)
1143 (w32_system_process_attributes): Remove.
1144 (list_system_processes, system_process_attributes): New
1145 prototypes.
1146
6a705b23
KH
11472008-12-19 Kenichi Handa <handa@m17n.org>
1148
1149 * xfont.c (xfont_decode_coding_xlfd): New function.
1150 (xfont_encode_coding_xlfd): New function.
1151 (xfont_list_pattern): Decode XLFD by iso-8859-1.
1152 (xfont_list): Decode and encode XLFD by iso-8859-1.
1153 (xfont_match): Likewise.
1154 (xfont_list_family): Likewise.
1155 (xfont_open): Likewise.
1156
d66c0241 1157 * ftfont.c (ftfont_open): Generate a multibyte string if given
6a705b23
KH
1158 names are utf-8.
1159
d66c0241 1160 * xftfont.c (xftfont_open): Generate a multibyte string if given
6a705b23
KH
1161 names are utf-8.
1162
5a130941
JD
11632008-12-18 Jan Djärv <jan.h.d@swipnet.se>
1164
1165 * gtkutil.c (xg_frame_resized): Remove check if rows/columns have
1166 changed.
bfd20325
JD
1167 (xg_tool_bar_proxy_callback): Put focus on the frame after we have
1168 clicked on a detached tool bar button.
5a130941 1169
fd95644b
DN
11702008-12-18 Dan Nicolaescu <dann@ics.uci.edu>
1171
1172 * emacs.c (main): Print and error and exit when no data is read
1173 from the pipe.
1174
e6eee6ae
JR
11752008-12-17 Jason Rumney <jasonr@gnu.org>
1176
1177 * w32font.c (w32font_has_char): Always return -1.
1178
a35dd56b
KH
11792008-12-16 Kenichi Handa <handa@m17n.org>
1180
1181 * font.c (font_open_entity): Fix previous change.
1182
0e3635c2
DN
11832008-12-16 Dan Nicolaescu <dann@ics.uci.edu>
1184
1185 * process.c: Include <limits.h>.
1186
d4835507 11872008-12-16 Chetan Pandya <pandyacus@sbcglobal.net> (tiny change)
b5356c39
CY
1188
1189 * font.c (font_update_drivers): Fix mistake in reconstructing the
1190 driver list.
1191
11922008-12-16 Chong Yidong <cyd@stupidchicken.com>
1193
1194 * font.c (font_clear_cache): Fix format of font cache data.
1195
e2cbc401
CY
11962008-12-15 Chong Yidong <cyd@stupidchicken.com>
1197
1198 * xftfont.c (xftfont_open): Free Xft font pattern if
1199 XftFontOpenPattern fails.
1200
1201 * xterm.c (x_free_frame_resources): Remove extraneous call to
1202 free_frame_faces.
1203
b131d535
CY
12042008-12-13 Chong Yidong <cyd@stupidchicken.com>
1205
1206 * xterm.c (x_delete_display): Move xim_close_dpy call to
1207 x_delete_terminal.
1208 (x_delete_terminal): Call xim_close_dpy.
1209
e6df5336
JR
12102008-12-13 Jason Rumney <jasonr@gnu.org>
1211
1212 * w32font.c (intern_font_name): New function.
1213 (add_font_name_to_list, w32_enumfont_pattern_entity): Use it.
1214 (w32font_open_internal, Fx_select_font): Decode font name.
1215 (fill_in_logfont, list_all_matching_fonts): Encode font name.
1216
1217 * w32font.h (intern_font_name): Declare new function.
1218
1219 * w32uniscribe.c (add_opentype_font_name_to_list):
1220 Use intern_font_name.
1221
20d68145
CY
12222008-12-13 Chong Yidong <cyd@stupidchicken.com>
1223
9f2554de
CY
1224 * frame.c (Fdelete_frame): Call free_font_driver_list.
1225
3d9bec9a
CY
1226 * font.c (free_font_driver_list): Implement missing function.
1227
20d68145
CY
1228 * w32term.c (w32_term_init): Don't initialize the image cache
1229 here; it will be done in init_frame_faces.
1230
1231 * xterm.h (struct xim_inst_t): Definition moved from xterm.c.
1232 (struct x_display_info): Remove unused member null_pixel. New
1233 member xim_callback_data.
1234
1235 * xterm.c (struct xim_inst_t): Definition moved to xterm.h.
1236 (xim_initialize): Save pointer to callback function data.
1237 (xim_close_dpy): Free callback function data. Call XCloseIM,
1238 reverting 2008-11-04 change by David Smith.
1239 (x_term_init): Don't initialize the image cache here; it will be
1240 done in init_frame_faces. Remove ancient "null_pixel" cruft.
1241 (x_delete_display): Free x_dnd_atoms member.
1242
96f9306b
KH
12432008-12-13 Kenichi Handa <handa@m17n.org>
1244
6dec9044
JB
1245 * font.c (font_rescale_ratio): Moved from xfaces.c.
1246 Argument type changed. Handle a font-spec too.
96f9306b 1247 (font_score): Check Vface_font_rescale_alist.
6dec9044 1248 (font_open_entity): Likewise. (Bug#1547)
96f9306b
KH
1249
1250 * xfaces.c (font_rescale_ratio): Moved to font.c.
1251
8d5b4964
CY
12522008-12-13 Chong Yidong <cyd@stupidchicken.com>
1253
1254 * xfns.c (Fx_wm_set_size_hint): Check if the frame is an X frame.
1255
e6df5336
JR
12562008-12-12 Jason Rumney <jasonr@gnu.org>
1257
1258 * w32fns.c (x_display_info_for_name, Fx_open_connection): Set
1259 Vwindow_system_version to the real w32 major version.
1260
97c6058a
DN
12612008-12-12 Dan Nicolaescu <dann@ics.uci.edu>
1262
1263 * term.c (init_tty): Move setting the terminal name before the
1264 potential user: maybe_fatal.
1265
ec4e88d7
CY
12662008-12-11 Chong Yidong <cyd@stupidchicken.com>
1267
d4835507
JB
1268 * term.c (tty_free_frame_resources): Renamed from delete_tty_output;
1269 all callers changed. Call free_frame_faces to free the face cache.
ec4e88d7 1270
b4233ec9
JR
12712008-12-11 Jason Rumney <jasonr@gnu.org>
1272
8ec71e23 1273 * w32font.c (fill_in_logfont): Don't assume symbol script means
9acef61c 1274 SYMBOL_CHARSET. (Bug#547)
8ec71e23 1275
b4233ec9 1276 * w32uniscribe.c (uniscribe_encode_char): Increase glyph buffer
9acef61c 1277 size for surrogates. (Bug#1096, bug#872)
b4233ec9 1278
011a0143
JB
12792008-12-11 Juanma Barranquero <lekktu@gmail.com>
1280
1281 * w32proc.c (Fw32_get_locale_info): Decode long form of locale name.
1282
3c309f34
JB
12832008-12-11 Juanma Barranquero <lekktu@gmail.com>
1284
1285 * process.c (Fsystem_process_attributes, syms_of_process):
1286 Fix typo in name of Ssystem_process_attributes.
1287 Reported by Ulrich Mueller <ulm@kph.uni-mainz.de>.
1288
fedc6ab5
JB
12892008-12-11 Juanma Barranquero <lekktu@gmail.com>
1290
1291 * syntax.c (Fmodify_syntax_entry): Doc fix.
1292
ba3de0e8
JB
12932008-12-10 Juanma Barranquero <lekktu@gmail.com>
1294
1295 * font.c (Ffont_spec): Move usage to end of docstring.
1296
174f1c74
JR
12972008-12-10 Jason Rumney <jasonr@gnu.org>
1298
1299 * w32font.c (Qcham): New symbol.
1300 (font_supported_scripts): Add cham, and comments for other new
1301 scripts in bitfield from OpenType spec.
9d32f818
JR
1302 (add_font_entity_to_list): Limit unicode-sip fonts to those that
1303 contain characters beyond the bmp.
174f1c74 1304
7b649478
KH
13052008-12-10 Kenichi Handa <handa@m17n.org>
1306
1307 * ftfont.c (fc_charset_table): Add "unicode-sip".
2ae37cf0 1308 (ftfont_spec_pattern): Lookup fc_charset_table for the registry
7b649478
KH
1309 Qunicode_sip.
1310
2133e2d1
JB
13112008-12-10 Juanma Barranquero <lekktu@gmail.com>
1312
1313 * coding.c (QCdefault_char): Rename from QCdefalut_char.
1314 (Fcoding_system_put): Use QCdefault_char.
1315 (syms_of_coding): Set QCdefault_char, not QCdefalut_char.
1316
9af886ee
CY
13172008-12-09 Chong Yidong <cyd@stupidchicken.com>
1318
74d819eb
CY
1319 * xftfont.c (syms_of_xftfont): Fix typo.
1320
4ccfa1c0 1321 * buffer.c (Fbuffer_swap_text): Signal error if swapping a dead buffer.
9af886ee 1322
7c19d3ae
DN
13232008-12-08 Dan Nicolaescu <dann@ics.uci.edu>
1324
1325 * emacs.c (main): Close daemon_pipe on exec.
1326
567826bb
CY
13272008-12-08 Chong Yidong <cyd@stupidchicken.com>
1328
1329 * termchar.h (struct tty): New members termcap_term_buffer and
1330 termcap_strings_buffer.
1331
1332 * term.c (encode_terminal_code): Free any previous memory blocks
4ccfa1c0 1333 before calling xmalloc for encode_terminal_src or encode_terminal_dst.
567826bb
CY
1334 (maybe_fatal): Buffer argument deleted. Don't free buffer here.
1335 All callers changed.
1336 (init_tty): Store termcap data and string buffers in new struct
1337 tty members termcap_term_buffer and termcap_strings_buffer.
1338 (delete_tty): Free them.
4ccfa1c0 1339 (syms_of_term): Initialize encode_terminal_src and encode_terminal_dst.
567826bb 1340
aa96c42b
SZ
13412008-12-07 Seiji Zenitani <zenitani@mac.com>
1342
1343 * nsfns.m (ns_set_background_color): Remove code duplication.
4ccfa1c0 1344 It was a substitute for face-transparency on OS X 10.3.
aa96c42b 1345
b7e1d896
CY
13462008-12-06 Chong Yidong <cyd@stupidchicken.com>
1347
1348 * coding.c (make_conversion_work_buffer): Disable buffer
1349 modification hooks in the work buffer.
1350
b5ec91a5
EZ
13512008-12-05 Eli Zaretskii <eliz@gnu.org>
1352
1353 * process.c (procfs_system_process_attributes): If `nread' has a
1354 negative value, assign zero to it.
1355
a5d2a52b
CY
13562008-12-05 Chong Yidong <cyd@stupidchicken.com>
1357
68c5540b 1358 * eval.c (Vdebug_on_error): Doc fix.
a5d2a52b 1359
7bf1bb21
KH
13602008-12-05 Kenichi Handa <handa@m17n.org>
1361
1362 * ftfont.c (ftfont_shape_by_flt): Use "combining" flt if the
1363 second character is a combining character.
1364
2fdc7d00
EZ
13652008-12-05 Eli Zaretskii <eliz@gnu.org>
1366
1367 * process.c (procfs_system_process_attributes): Don't use cmd,
1368 cmdsize, and q without initializing them first.
1369
bf6bfba8
JR
13702008-12-04 Jason Rumney <jasonr@gnu.org>
1371
1372 * w32font.c (w32font_draw): Initialize orig_clip before getting
1373 it, and delete it when finished.
1374
a3b1a468
DN
13752008-12-04 Dan Nicolaescu <dann@ics.uci.edu>
1376
1377 * keyboard.c (kbd_buffer_get_event): Follow the non-interactive
1378 case when running as a daemon before detaching.
1379
8b8be8eb
JB
13802008-12-03 Juanma Barranquero <lekktu@gmail.com>
1381
805f2638 1382 * w32.c (init_environment): Don't unload library shell32.dll.
8b8be8eb 1383
b1bde622
KH
13842008-12-03 Kenichi Handa <handa@m17n.org>
1385
e500c47d
KH
1386 * font.c (font_at): Set `multibyte' at first.
1387
ca516334
KH
1388 * coding.c (decode_coding_charset): Check type of an element of
1389 vector VALIDS.
7bf1bb21 1390 (encode_coding_emacs_mule): Be sure to set `code'.
ca516334 1391
4ccfa1c0 1392 * fontset.c (face_for_char): Handle invalid charset property correctly.
b1bde622
KH
1393 (font_for_char): Likewise.
1394
1e5ecd37
CY
13952008-12-03 Chong Yidong <cyd@stupidchicken.com>
1396
d5b01609 1397 * font.c (Fopen_font): Compute pixel size correctly.
ba207571
CY
1398 (font_update_lface): Handle fonts with corrupted size specs,
1399 i.e. non-int and non-float.
d5b01609 1400
11e3a6e4 1401 * ftfont.c (ftfont_match): Initialize entity variable.
9a48c8cb 1402 (ftfont_resolve_generic_family): Avoid using uninitialized var.
8adb3a3b 1403 (ftfont_list_family): Initialize list var earlier.
11e3a6e4 1404
ab06788b
CY
1405 * xselect.c (Fx_get_cut_buffer_internal): Fix memory leak.
1406
1e5ecd37 1407 * xterm.c (x_draw_glyph_string): Fall back on
0cff82ab 1408 underline_minimum_offset for underline position.
1e5ecd37 1409
63c125ab
DN
14102008-12-03 Dan Nicolaescu <dann@ics.uci.edu>
1411
1412 * keyboard.c (read_char_help_form_unwind): Specify the type for ARG.
1413
1414 * character.c (c_string_width): Specify the type for LEN.
1415
3a8406e1
KH
14162008-12-03 Kenichi Handa <handa@m17n.org>
1417
4ccfa1c0 1418 * coding.c (decode_coding_utf_16): Initialize consumed_chars_base to 0.
453b38f0 1419 (decode_coding_utf_8): Likewise.
4ccfa1c0 1420 (detect_coding_system): Initialize utf_16_le_eol to -1, val to Qnil.
4533845d 1421 (produce_chars): Initialize consumed_chars to 0.
3a8406e1 1422
651df7d9
CY
14232008-12-02 Chong Yidong <cyd@stupidchicken.com>
1424
1425 * keyboard.c (make_lispy_position): Only use PT if the selected
1426 window is current.
1427
1f625c6c
AS
14282008-12-02 Andreas Schwab <schwab@suse.de>
1429
f7741ce9
AS
1430 * font.c (font_unparse_fcname): Fix use of uninitialized variable.
1431
1f625c6c
AS
1432 * doprnt.c (doprnt1): Fix size of charbuf.
1433
92bc2678
CY
14342008-12-02 Chong Yidong <cyd@stupidchicken.com>
1435
1436 * keyboard.c (timer_check): Revert last change.
1437
93b9e8cc
JB
14382008-12-02 Juanma Barranquero <lekktu@gmail.com>
1439
1440 * makefile.w32-in ($(BLD)/w32console.$(O)): Fix silly, silly typo.
1441
fd7a37d5
JB
14422008-12-01 Juanma Barranquero <lekktu@gmail.com>
1443
1444 * makefile.w32-in: Update dependencies.
1445 (CONFIG_H): Add $(EMACS_ROOT)/nt/inc/sys/time.h.
1446
c115043b
AS
14472008-12-01 Andreas Schwab <schwab@suse.de>
1448
1449 * font.c (register_font_driver): Use xmalloc.
1450 (font_put_frame_data): Likewise.
1451
f5668d2a
CY
14522008-12-01 Chong Yidong <cyd@stupidchicken.com>
1453
860d96be
CY
1454 * xfaces.c (realize_x_face): Make abort condition clearer.
1455
f5668d2a
CY
1456 * gtkutil.c (update_frame_tool_bar): Initialize variable.
1457
379c17e7
CY
14582008-11-30 Chong Yidong <cyd@stupidchicken.com>
1459
1460 * keyboard.c (timer_check): After a timer runs, ensure that the
1461 selected window's buffer is current.
1462
35f36d65
JB
14632008-11-30 Juanma Barranquero <lekktu@gmail.com>
1464
f952c61c
JB
1465 * makefile.w32-in ($(BLD)/abbrev.$(O)): Remove.
1466 It was accidentally restored by the Unicode merge.
1467
35f36d65
JB
1468 * w32proc.c (Fw32_get_locale_info): Fix typo in docstring.
1469
b23077df
JB
14702008-11-29 Juanma Barranquero <lekktu@gmail.com>
1471
1472 * w32proc.c: Include "coding.h".
1473 (Fw32_short_file_name): Encode filename passed to Windows API.
1474 (Fw32_long_file_name): Encode filename passed to Windows API and
1475 decode back the result. (Bug#1433)
1476
b8ebe9dd
KH
14772008-11-29 Kenichi Handa <handa@m17n.org>
1478
8cc53f96
KH
1479 * charset.h (CHAR_CHARSET_P): Check if the encoder is loaded or
1480 not before accessing it.
1481
b8ebe9dd
KH
1482 * charset.c (Fdefine_charset_internal): After calculating
1483 min_char, max_char, and fastmap, copy the charset structure again.
1484 (encode_char): Fix the previous change.
1485
59bc82c0
SZ
14862008-11-28 Seiji Zenitani <zenitani@mac.com>
1487
1488 * frame.c (x_set_alpha) [NS_IMPL_COCOA]: Call x_set_frame_alpha.
1489
1490 * nsfns.m (ns_frame_parm_handlers): Set alpha handler.
1491
1492 * nsterm.m (x_set_frame_alpha): New function.
1493
32247e3d
EZ
14942008-11-27 Eli Zaretskii <eliz@gnu.org>
1495
1496 * xfaces.c (Fx_font_family_list, syms_of_xfaces): Fix last change.
1497
b003e5ff
JB
14982008-11-27 Juanma Barranquero <lekktu@gmail.com>
1499
1500 * w32font.c (add_font_entity_to_list): Pass the right LOGFONT
1501 pointer to check_face_name.
1502
708550f5
KH
15032008-11-27 Kenichi Handa <handa@m17n.org>
1504
1505 * category.h (SET_CATEGORY_SET): Call set_category_set.
1506 (set_category_set): Extern it.
1507
1508 * category.c (hash_get_category_set): New function.
1509 (Fmodify_category_entry): Adjusted for the change of
1510 char_table_ref_and_range. Call hash_get_category_set to get a
1511 category set to store in the table.
1512
1513 * character.h (MAYBE_UNIFY_CHAR): Call maybe_unify_char instead of
1514 Funify_charset.
1515
2ae37cf0 1516 * charset.h (enum charset_method): Delete CHARSET_METHOD_MAP_DEFERRED.
708550f5
KH
1517 (DECODE_CHAR): Check if the decoder vector is ready.
1518 (ENCODE_CHAR): Check if the encoder char-table is ready.
1519 (maybe_unify_char): Extern it.
1520
1521 * charset.c (Vchar_unified_charset_table): Delete it.
1522 (inhibit_load_charset_map): New variable.
1523 (temp_charset_work): New variable.
1524 (SET_TEMP_CHARSET_WORK_ENCODER, GET_TEMP_CHARSET_WORK_ENCODER)
1525 (SET_TEMP_CHARSET_WORK_DECODER, GET_TEMP_CHARSET_WORK_DECODER):
1526 New macros.
1527 (load_charset_map): Meaning of control_flag changed. If
1528 inhibit_load_charset_map is nonzero, setup a table in
1529 temp_charset_work.
1530 (load_charset): New argument control_flag.
1531 (map_charset_for_dump): New function.
1532 (map_charset_chars): If inhibit_load_charset_map is nonzero, use
1533 map_charset_for_dump.
1534 (Fdefine_charset_internal): If the charset method is MAP, load
1535 mapping tables by calling load_charset.
1536 (Funify_charset): Don't load a mapping table but directly set
1537 Vchar_unify_table.
1538 (maybe_unify_char): New function.
1539 (decode_char): Don't handle the deleted method MAP_DEFERRED.
1540 Handle the case of inhibit_load_charset_map being nonzero.
1541 (encode_char): Don't handle the deleted method MAP_DEFERRED.
1542 Handle the case of inhibit_load_charset_map being nonzero.
1543 (Fclear_charset_maps): Just free temp_charset_work.
1544 (syms_of_charset): Make `inhibit-load-charset-map' a Lisp
1545 variable.
1546
1547 * chartab.c (sub_char_table_ref_and_range): Adjusted for the
1548 change of char_table_ref_and_range.
1549 (char_table_ref_and_range): Change the meaning of argument FROM
1550 and TO. Now the caller must provide initial values for *FROM
1551 and *TO.
1552
1553 * fontset.c (fontset_add): Adjusted for the change of
1554 char_table_ref_and_range.
1555 (fontset_get_font_group): Likewise.
1556 (Ffontset_info): Likewise.
1557
1558 * keymap.c (describe_vector): Adjusted for the change of
1559 char_table_ref_and_range. For char-table, put boundary between
1560 non-ASCII and 8-bit characters.
1561
1562 * print.c (print_object): For bool-vector, delete unnecessary
1563 check of ASCII_BYTE_P.
1564
9196133b
JR
15652008-11-26 Jason Rumney <jasonr@gnu.org>
1566
1567 * w32font.c (w32font_open_internal): Don't include external
9acef61c 1568 leading in font height. (Bug#879)
9196133b 1569
9f688acf
GM
15702008-11-26 Glenn Morris <rgm@gnu.org>
1571
1572 * xfaces.c (Fx_font_family_list): Replace lisp/term/pc-win.el
1573 redefinition with ifdef. (Bug#1383)
1574
90d19aff
AR
15752008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
1576
1577 * nsterm.m (ns_get_color): Handle long hex strings (fixes bug #1044).
1578
4ccfa1c0 15792008-11-24 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
90d19aff
AR
1580
1581 * nsterm.m (-otherMouseDown:, -otherMouseUp:, -otherMouseDragged):
1582 New EmacsView methods.
1583 (EV_UDMODIFIERS, EV_BUTTON): Add OtherMouse constants.
1584 Fixes bug #1048,1357,1414.
1585
15862008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
1587
1588 Fix bug #1362.
1589 * image.c (x_clear_image_1): Do not free background under HAVE_NS, it
1590 is not an indexed color.
1591 * nsterm.m (free_indexed_color): Add argument checking.
1592 * nsfns.m: Move config.h to before system includes (advised by Dan N.).
1593
e7d5ecb3
CY
15942008-11-24 Chong Yidong <cyd@stupidchicken.com>
1595
1596 * minibuf.c (Fcompleting_read, Vminibuffer_completion_confirm):
1597 Document confirm-after-completion value for
1598 minibuffer-completion-confirm.
1599
c285743c
JR
16002008-11-24 Jason Rumney <jasonr@gnu.org>
1601
1602 * w32font.c (check_face_name): Use xstrcasecmp. Avoid compiler
1603 warning.
1604
b0857706
JR
16052008-11-23 Jason Rumney <jasonr@gnu.org>
1606
1607 * w32uniscribe.c (uniscribe_encode_char): Ensure context is
1608 restored before returning.
1609
1610 * w32font.c (check_face_name): New function.
1611 (add_font_entity_to_list): Use it to filter out common substituted
9acef61c 1612 fonts. (Bug#642)
b0857706 1613
ee50ff07
MR
16142008-11-22 Martin Rudalics <rudalics@gmx.at>
1615
1616 * buffer.c (Fswitch_to_buffer): Reword and mention new option
1617 confirm-nonexistent-file-or-buffer in doc-string.
1618
b8ff72fa
SM
16192008-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
1620
1621 * buffer.c (Fbuffer_swap_text): Remove redundant marker manipulation.
1622 Fix copy/paste typo. Add checks.
1623
cee53ed4
KH
16242008-11-21 Kenichi Handa <handa@m17n.org>
1625
1626 * coding.c (detect_coding_iso_2022): Reject invalid composition
1627 sequence.
1628 (DECODE_COMPOSITION_START): If the current source is the last
1629 block, and the current composition doesn't end, regard this
1630 sequence as invalid.
1631 (decode_coding_iso_2022): Handle invalid composition sequence.
1632
f6ef1e65
MR
16332008-11-20 Martin Rudalics <rudalics@gmx.at>
1634
1635 * window.c (coordinates_in_window): Don't return
1636 ON_VERTICAL_BORDER for the rightmost position of a mode/header
1637 line when the window is not the rightmost one. (Bug#1372)
1638
e08b1705
MR
16392008-11-16 Ben North <ben@redfrontdoor.org> (tiny change)
1640
1641 * buffer.c (syms_of_buffer): Fix doc-string of cursor-type.
1642
ad98e89f
EZ
16432008-11-15 Eli Zaretskii <eliz@gnu.org>
1644
1645 * msdos.c (run_msdos_command): Don't call dos_ttcooked, dos_ttraw,
1646 and bright_bg if noninteractive is non-zero.
1647
fb098a4b
CY
16482008-11-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1649
1650 * xterm.c (x_draw_glyph_string): For stretch glyphs, don't call
1651 x_draw_glyph_string_background.
1652
1653 * w32term.c (x_draw_glyph_string): Likewise.
1654
ce952b6e
CY
16552008-11-15 Chong Yidong <cyd@stupidchicken.com>
1656
1657 * xterm.c (x_draw_glyph_string): Stop drawing the background of
1658 the next glyph string once past the overhang width.
1659
1660 * nsterm.m (ns_draw_glyph_string): Likewise.
1661
1662 * w32term.c (x_draw_glyph_string): Likewise.
1663
26ea7079
CY
16642008-11-14 Fabrice Popineau <fabrice.popineau@supelec.fr> (tiny change)
1665
1666 * fileio.c (Finsert_file_contents): Decrement specpdl_ptr to avoid
1667 double file close.
1668
1c33c906
MR
16692008-11-14 Martin Rudalics <rudalics@gmx.at>
1670
1671 * window.c (window_loop): In DELETE_BUFFER_WINDOWS case, reset
1672 dedicated status of window before attempting to display another
1673 buffer in it.
1674
8fc29035
JB
16752008-11-14 Juanma Barranquero <lekktu@gmail.com>
1676
1677 * msdos.c (Fmsdos_long_file_names):
1678 (syms_of_msdos) <dos-unsupported-char-glyph>:
1679 * dosfns.c (Fint86): Fix typos in docstrings.
1680
55fb4286
EZ
16812008-11-14 Eli Zaretskii <eliz@gnu.org>
1682
1683 * makefile.w32-in (OBJ1, WIN32OBJ): Fix whitespace.
1684
3fda0315
KY
16852008-11-14 Katsumi Yamaoka <yamaoka@jpl.org>
1686
1687 * puresize.h (BASE_PURESIZE): Increase to 1260000.
1688
7e849c17
CY
16892008-11-12 Michal Nazarewicz <mina86@tlen.pl> (tiny change)
1690
1691 * frame.c (x_set_alpha): Set alpha to -1 if nil given.
1692
1693 * frame.h: Negative alpha means "don't touch".
1694
1695 * w32term.c (x_set_frame_alpha): Do nothing if alpha is negative.
1696
1697 * xterm.c (x_set_frame_alpha): Do nothing if alpha is negative.
1698
b9fd67bd
DN
16992008-11-12 Dan Nicolaescu <dann@ics.uci.edu>
1700
1701 * hftctl.c:
1702 * chpdef.h:
1703 * acldef.h: Remove files used only for systems no longer supported.
1704
1705 * Makefile.in: Fix .o alphabetical ordering.
1706 (hftctl.o): Remove dependency, file removed.
1707 (keymap.o, print.o): Depend on charset.h.
1708
d5998e03
KH
17092008-11-10 Kenichi Handa <handa@m17n.org>
1710
2ae37cf0 1711 * character.c (Fget_byte): Fix and make it faster for unibyte target.
d5998e03 1712
be70e183
CY
17132008-11-08 Chong Yidong <cyd@stupidchicken.com>
1714
1715 * dired.c (file_name_completion): If completion_ignore_case is
1716 enabled, ignore case when checking completion-regexp-list.
1717
7cf94eac
EZ
17182008-11-08 Eli Zaretskii <eliz@gnu.org>
1719
1720 * vm-limit.c (get_lim_data): Fix last change.
1721
ee107a89
KH
17222008-11-08 Kenichi Handa <handa@m17n.org>
1723
1724 * character.c (Fget_byte): New function.
1725 (syms_of_character): Defsubr Fget_byte.
1726
5fd15622
CY
17272008-11-07 Chong Yidong <cyd@stupidchicken.com>
1728
1729 * xdisp.c (try_window_reusing_current_matrix): Ensure that window
1730 cursor position is valid after scrolling.
1731
13d62fad
JB
17322008-11-06 Juanma Barranquero <lekktu@gmail.com>
1733
1734 * fns.c (Frandom): Rename arg N to LIMIT to match the docs; doc fix.
1735
a1dd2936
GM
17362008-11-06 Glenn Morris <rgm@gnu.org>
1737
1738 * xterm.c (handle_one_xevent): Don't let popup menus cause
1739 mouse-autoselect-window related window switching. (Bug#1261)
1740
860cd236
CY
17412008-11-04 David Smith <davidsmith@acm.org> (tiny change)
1742
1743 * xterm.c (xim_close_dpy): Avoid double-free on X11R6 XIM.
1744
653a3150
AS
17452008-11-04 Andreas Schwab <schwab@suse.de>
1746
1747 * xfns.c (Fx_wm_set_size_hint): Add missing return value.
1748
870f5cac
CY
17492008-11-03 Chong Yidong <cyd@stupidchicken.com>
1750
1751 * xfns.c (Fx_wm_set_size_hint): New function.
1752
1e02f3cb
MR
17532008-11-03 Martin Rudalics <rudalics@gmx.at>
1754
1755 * textprop.c (Fprevious_single_char_property_change): Return 0
1756 when there's no change in a string. (Bug#1301)
1757
e630dfc6
MR
17582008-11-02 Martin Rudalics <rudalics@gmx.at>
1759
1760 * frame.c (do_switch_frame): New argument NORECORD passed to
1761 Fselect_window.
1762 (Fselect_frame): New argument NORECORD passed to
1763 do_switch_frame.
1764 (Fset_frame_selected_window): New argument NORECORD passed to
1765 Fselect_frame.
1766 (Fhandle_switch_frame, Fdelete_frame): Handle NORECORD argument
1767 in call of do_switch_frame.
1768 (Fset_mouse_position, Fset_mouse_pixel_position, Fraise_frame):
1769 Handle NORECORD argument in call of Fselect_frame.
1770 * lisp.h (do_switch_frame, Fselect_frame)
1771 (Fset_frame_selected_window): Adjust declarations.
1772 * window.c (select_frame_norecord): New function.
1773 (run_window_configuration_change_hook): Use it and call
1774 Fselect_frame with NORECORD set.
1775 (Fselect_window): Pass NORECORD to Fselect_frame.
1776 (Fset_window_configuration): Handle NORECORD argument in call of
1777 do_switch_frame.
1778 * minibuf.c (choose_minibuf_frame): Handle NORECORD in call of
1779 Fset_frame_selected_window.
1780 * keyboard.c (command_loop_1): Handle NORECORD in call of
1781 Fselect_frame (currently ifdefd).
1782
9020b223
GM
17832008-11-02 Ulrich Mueller <ulm@kph.uni-mainz.de>
1784
1785 * emacs.c (USAGE2): Untabify.
1786
793ffee8
SM
17872008-11-01 Stefan Monnier <monnier@iro.umontreal.ca>
1788
1789 * composite.c (fill_gstring_header): Fix copy/paste typo.
1790
ab6d1131
MR
17912008-10-31 Martin Rudalics <rudalics@gmx.at>
1792
1793 * window.c (Fnext_window, Fprevious_window): Rewrite doc-string.
1794 (Fother_window): Rename argument and rewrite doc-string.
1795 (select_window_norecord): Fix return value. (Bug#1276)
1796
601a9cf1
JB
17972008-10-30 Juanma Barranquero <lekktu@gmail.com>
1798
1799 * w32fns.c (x_create_tip_frame): Prevent default foreground color for
1800 new frames overriding foreground for tooltips. Based on similar patch
1801 from Martin Rudalics <rudalics@gmx.at>. (Bug#1032)
1802
813b0652
CY
18032008-10-29 Chong Yidong <cyd@stupidchicken.com>
1804
1805 * emacs.c (Fdaemon_initialized): Initialize nfd.
1806
4414f58f
MR
18072008-10-29 Martin Rudalics <rudalics@gmx.at>
1808
1809 * window.c (Fwindow_height, Fdelete_window, set_window_buffer)
1810 (Fwindow_text_height): Clarify doc-strings.
1811 * xdisp.c (syms_of_xdisp): Mention set-window-buffer in
1812 doc-string of window-scroll-functions.
1813
ecdcaa09
RS
18142008-10-28 Reiner Steib <Reiner.Steib@gmx.de>
1815
1816 * category.c (syms_of_category): Fix typo in docstring.
1817
23fe745a
JB
18182008-10-28 Juanma Barranquero <lekktu@gmail.com>
1819
1820 * window.c (Fwindowp, Fwindow_live_p, Fwindow_minibuffer_p)
1821 (Fcoordinates_in_window_p, Fscroll_left, Fscroll_right):
1822 Fix typos in docstrings.
1823
ff808935
DN
18242008-10-28 Dan Nicolaescu <dann@ics.uci.edu>
1825
1826 * emacs.c (daemon_pipe): Make non-static.
1827 (IS_DAEMON): Move definition ...
1828 * lisp.h (IS_DAEMON): ... here.
1829 (daemon_pipe): Declare.
1830 (is_daemon): Remove.
1831 * dispnew.c (init_display): Use IS_DAEMON.
1832
fc012771
SM
18332008-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
1834
1835 * xdisp.c (pos_visible_p, redisplay_internal, message3_nolog)
1836 (message2_nolog): Check FRAME_INITIAL_P instead of noninteractively.
1837
1838 * emacs.c (is_daemon): Remove.
1839 (main): Don't set is_daemon.
1840 (IS_DAEMON): New macro.
1841 (Fdaemonp, Fdaemon_initialized): Use it.
601a9cf1 1842 (Fdaemon_initialized): Write a char into the pipe to make sure the
fc012771
SM
1843 parent exits.
1844 (syms_of_emacs): Explicitly initialize daemon_pipe[1].
1845
d8bdbe6f
CY
18462008-10-27 Chong Yidong <cyd@stupidchicken.com>
1847
d1a072bf
CY
1848 * nsterm.m (ns_draw_window_cursor): When hbar cursor is on
1849 over-sized glyph, draw it with the default glyph width.
1850
e2e325aa
CY
1851 * w32term.c (x_draw_bar_cursor): When hbar cursor is on over-sized
1852 glyph, draw it with the default glyph width.
1853
1854 * xterm.c (x_draw_bar_cursor): When hbar cursor is on over-sized
1855 glyph, draw it with the default glyph width.
1856
d8bdbe6f
CY
1857 * xdisp.c (try_scrolling): When computing the distance from the
1858 scroll margin to PT, try moving some distance past the window
1859 bottom before giving up.
1860
7bfac547
MR
18612008-10-27 Martin Rudalics <rudalics@gmx.at>
1862
1863 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p)
1864 (Fset_window_buffer): Explain in doc-string that a window can be
1865 "strongly" dedicated to its buffer.
1866
4ff029f6
DN
18672008-10-27 Dan Nicolaescu <dann@ics.uci.edu>
1868
1869 * emacs.c (daemon_name): New variable.
1870 (main): Deal with --daemon=SERVER_NAME.
1871 (Fdaemonp): Return a name if one was passed to --daemon.
1872
5790ef40
DN
18732008-10-26 Romain Francoise <romain@orebokech.com>
1874
f9bd0df9 1875 * emacs.c (daemon_pipe): New variable.
5790ef40
DN
1876 (main): Create a pipe before forking, make the parent exit only after
1877 the child has closed its end of the pipe. Move closing the
1878 descriptors ...
1879 (Fdaemon_initialized): ... here. New function.
1880
f5385255
SM
18812008-10-26 Stefan Monnier <monnier@iro.umontreal.ca>
1882
4d632321
SM
1883 * chartab.c (Foptimize_char_table): Make sure `ascii' doesn't point to
1884 the previous unoptimized table.
1885
f5385255
SM
1886 * window.c (Fset_window_buffer): Undo 2008-10-18 change to re-instate
1887 the distinction between non-nil and non-t value of `dedicated'.
1888
6c56a0f3
CY
18892008-10-25 Chong Yidong <cyd@stupidchicken.com>
1890
1891 * keyboard.c (read_char_minibuf_menu_prompt): Ensure that
f5385255 1892 read_char_minibuf_menu_text is large enough to hold the menu string.
6c56a0f3 1893
fec89261
MR
18942008-10-25 Martin Rudalics <rudalics@gmx.at>
1895
1896 * window.c (Fget_buffer_window, Fdelete_windows_on)
1897 (Freplace_buffer_in_windows): Make buffer argument optional and
1898 rename to buffer_or_name.
1899
34fcddd0
CY
19002008-10-24 Chong Yidong <cyd@stupidchicken.com>
1901
f5385255
SM
1902 * xdisp.c (handle_single_display_spec, handle_display_prop):
1903 Undo 2005-05-16 change.
34fcddd0
CY
1904 (handle_stop): Pop iterator if it's loaded with an empty string.
1905 (get_overlay_strings_1): Don't save iterator if it's loaded with
1906 an empty string (bug#1201).
1907
064766f2
KH
19082008-10-24 Kenichi Handa <handa@m17n.org>
1909
1910 * ftfont.c (ftfont_otf_features): Fix previous change.
1911 (ftfont_otf_capability): Check FeatureList.FeatureCount before
1912 calling ftfont_otf_features.
1913
f9bd0df9 19142008-10-24 Kenichi Handa <handa@m17n.org>
064766f2
KH
1915
1916 * font.c (font_match_p): Fix for the case that a vector of
1917 characters is in script-representative-chars.
1918
1dae9197
MA
19192008-10-24 Michael Albinus <michael.albinus@gmx.de>
1920
1921 * dbusbind.c (xd_in_read_queued_messages): New variable.
f5385255 1922 (XD_SIGNAL1, XD_SIGNAL2, XD_SIGNAL3): New macros. Throw Qdbus_error.
1dae9197
MA
1923 (xd_read_queued_messages): Catch Qdbus_error from the macros.
1924 (all): Replace xsignal1, xsignal2, xsignal3 by the respective
1925 macro. (Bug#1186).
1926
f9bd0df9 19272008-10-23 Ali Bahrami <ali_gnu@emvision.com> (tiny change)
9b3362b8
DN
1928
1929 * s/sol2-10.h: New file.
1930
878a4584
JB
19312008-10-23 Juanma Barranquero <lekktu@gmail.com>
1932
1933 * xdisp.c (fill_glyph_string): Fix typo in source (though the
1934 poor beast has survived 9+ years and the jump from xterm.c!).
1935
cd265ca6
MR
19362008-10-23 Martin Rudalics <rudalics@gmx.at>
1937
1938 * buffer.c (Fget_buffer_create): Rename arg to buffer_or_name.
1939 Reword doc-string.
f5385255 1940 (Fbury_buffer): In doc-string say what happens to the buffer's window.
cd265ca6 1941
472a4dc9
JB
19422008-10-23 Juanma Barranquero <lekktu@gmail.com>
1943
1944 * character.c (syms_of_character) <script-representative-chars>:
1945 <unicode-category-table>: Doc fixes.
1946
159bd5a2
NF
19472008-10-23 Noah Friedman <friedman@splode.com>
1948
1949 * coding.c (make_conversion_work_buffer): Check that
1950 Vcode_conversion_reused_workbuf is a live buffer, otherwise call
1951 Fget_buffer_create.
1952
49f9c344
KH
19532008-10-23 Kenichi Handa <handa@m17n.org>
1954
1955 * font.c (font_add_log): Check the values of extra properties.
1956
12bb3111
MR
19572008-10-22 Martin Rudalics <rudalics@gmx.at>
1958
1959 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
1960 Reword doc-string.
1961 (Fset_window_parameter): Use NILP.
1962 (Fscroll_up, Fscroll_down, Fminibuffer_selected_window)
f5385255 1963 (Frecenter): Use "selected" instead of "current" window in doc-strings.
12bb3111 1964
bbeb4e99
JB
19652008-10-22 Juanma Barranquero <lekktu@gmail.com>
1966
1967 * xdisp.c (next_element_from_buffer): Remove bogus xassert condition.
1968
19692008-10-22 Adrian Robert <Adrian.B.Robert@gmail.com>
cb83c00b
AR
1970
1971 * nsfns.m (ns_appkit_version): New function.
1972 (x-server-version): Use it.
1973 (syms_of_nsfns): Define ns-version-string here, not nsterm.m.
1974 (x-server-vendor): Don't check_ns().
1975
1976 * nsterm.m (syms_of_nsterm): Drop ns-version-string.
1977
a9b555d3
JB
19782008-10-22 Juanma Barranquero <lekktu@gmail.com>
1979
1980 * w32fns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert.
1981 Copied from 2005-02-03 change to xfns.c by Kim F. Storm.
1982
4626499f
KH
19832008-10-22 Kenichi Handa <handa@m17n.org>
1984
e3681952
KH
1985 * syntax.c (scan_words): Call word_boundary_p instead of comparing
1986 scripts.
1987
4626499f
KH
1988 * category.c (word_boundary_p): Check scripts instead of charset.
1989 Handle nil value in word-separating-categories and
1990 word-combining-categories.
1991 (syms_of_category): Fix docstrings of word-separating-categories
1992 and word-combining-categories.
1993
1560f91a
EZ
19942008-10-21 Eli Zaretskii <eliz@gnu.org>
1995
1996 * coding.c (Fencode_coding_region, Fdecode_coding_region)
1997 (Fdecode_coding_string, Fencode_coding_string): Doc fix.
1998
f4668441
MR
19992008-10-21 Martin Rudalics <rudalics@gmx.at>
2000
2001 * buffer.c (Fget_buffer, Fbury_buffer, switch_to_buffer_1):
2002 Rename arg "buffer" to "buffer_or_name".
2003 (Fkill_buffer): Rename arg "buffer" to "buffer_or_name" and make
2004 it optional.
2005 (no_switch_window): Remove since the return value is not used.
a9b555d3 2006 (Fswitch_to_buffer): Rename arg "buffer" to "buffer_or_name".
f4668441
MR
2007 Consider window as dedicated when Fwindow_dedicated_p returns a
2008 non-nil value.
2009 * lisp.h: Remove prototype for no_switch_window.
2010
fd75ddb2
JD
20112008-10-21 Jan Djärv <jan.h.d@swipnet.se>
2012
2013 * emacs.c (main): Unconditionally set PER_LINUX32 and exec
2ae37cf0 2014 temacs when dumping if HAVE_PERSONALITY_LINUX32 is defined.
fd75ddb2 2015
07295713
KH
20162008-10-21 Kenichi Handa <handa@m17n.org>
2017
2018 * coding.c (detect_coding_charset): For iso-8859-* coding systems,
2019 check Vlatin_extra_code_table.
2020
712adc82
EZ
20212008-10-20 Eli Zaretskii <eliz@gnu.org>
2022
2023 * fileio.c (Fset_file_modes): Doc fix.
2024
f549eb0b
MA
20252008-10-19 Michael Albinus <michael.albinus@gmx.de>
2026
2027 * dbusbind.c (XD_OBJECT_TO_DBUS_TYPE): Handle simple type symbols
2028 in arrays.
2029
aac0c6e3
MR
20302008-10-19 Martin Rudalics <rudalics@gmx.at>
2031
2032 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
2033 Mention kill-buffer in doc-string.
2034 (Fset_window_buffer): Reinsert tem check removed in last commit.
2035 (Fenlarge_window, Fshrink_window): Have argument names and
2036 doc-string follow Elisp manual more closely.
2037
20382008-10-18 Eli Zaretskii <eliz@gnu.org>
2039
2040 * fileio.c (Fset_file_modes): Doc fix.
2041
20422008-10-18 Martin Rudalics <rudalics@gmx.at>
2043
2044 * window.c (Fwindow_width, Fset_window_start)
2045 (Fwindow_parameters, Fwindow_parameter, Fset_window_parameter)
f5385255
SM
2046 (Fdelete_windows_on, Freplace_buffer_in_windows):
2047 Make doc-strings follow code and Elisp manual more closely.
aac0c6e3
MR
2048 (Fwindow_dedicated_p): Make window argument optional.
2049 (Fset_window_dedicated_p): Rename argument "arg" to "flag".
2050 (Fset_window_buffer): Respect any non-nil dedicated value for
2051 window. Rename "buffer" argument to "buffer_or_name".
2052
20532008-10-18 Ulrich Mueller <ulm@gentoo.org>
2054
2055 * m/sh3.h: New file, machine description for SuperH.
2056
20572008-10-17 Martin Rudalics <rudalics@gmx.at>
2058
2059 * window.c (Fsplit_window): Rename arg horflag to horizontal.
2060
20612008-10-17 Kenichi Handa <handa@m17n.org>
2062
2063 * ftfont.c (ftfont_otf_features): Fix indexing
2064 gsub_gpos->FeatureList.Feature. Check the validity of indices.
2065
20662008-10-16 Magnus Henoch <mange@freemail.hu>
2067
2068 * dbusbind.c (Fdbus_call_method): Unbreak usage line.
2069 (Fdbus_call_method_asynchronously): Ditto.
2070 This change makes C-h f display the argument list.
2071
20722008-10-16 Chong Yidong <cyd@stupidchicken.com>
2073
2074 * fileio.c (Fexpand_file_name): Doc fix.
2075
2076 * xfaces.c (Finternal_set_lisp_face_attribute): Make null values
2077 of :foreground and :background equivalent to unspecified (20.x
2078 compatibility).
2079
20802008-10-15 Eli Zaretskii <eliz@gnu.org>
2081
2082 * buffer.c (syms_of_buffer): Doc fix.
2083
20842008-10-14 Kenichi Handa <handa@m17n.org>
2085
2086 * font.c (font_clear_prop): When clearing font width, clear the
2087 average width field too.
2088
20892008-10-12 Andreas Schwab <schwab@suse.de>
2090
2091 * ftfont.c (ftfont_shape_by_flt): Make static.
2092 * ftfont.h (ftfont_shape_by_flt): Don't declare.
2093
2094 * font.c: Don't include <m17n-flt.h>.
2095
20962008-10-10 Eli Zaretskii <eliz@gnu.org>
2097
2098 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Decrease to 10000.
2099
21002008-10-09 Eli Zaretskii <eliz@gnu.org>
2101
2102 * frame.c (make_terminal_frame) [MSDOS]: Remove unused #ifdef'ed
2103 away code.
2104
21052008-10-09 Chong Yidong <cyd@stupidchicken.com>
2106
2107 * dispnew.c (update_text_area): Avoid looping due to large glyph
2108 overhangs (bug#1070).
2109
21102008-10-09 Kenichi Handa <handa@m17n.org>
2111
2112 * fontset.c (face_for_char): If face->fontset is negative, just
2113 return ascii_face.
2114
f5385255
SM
2115 * font.c (font_delete_unmatched): Fix previous change.
2116 Don't reject an entity if DPI and AVGWIDTH of an entity are 0.
aac0c6e3
MR
2117
21182008-10-09 Martin Rudalics <rudalics@gmx.at>
2119
2120 * frame.c (Fraise_frame): On text-only terminals select frame in
2121 order to make it visible. (Bug#1061)
2122
21232008-10-08 Chong Yidong <cyd@stupidchicken.com>
2124
2125 * fontset.c (fontset_find_font): Check frame validity.
2126
21272008-10-07 Chong Yidong <cyd@stupidchicken.com>
2128
a9b555d3 2129 * gtkutil.c (xg_display_open): Reset default display if none exists.
aac0c6e3
MR
2130 (xg_display_close): Allow Emacs to close all displays (bug#985).
2131
21322008-10-06 Andreas Schwab <schwab@suse.de>
2133
f5385255 2134 * sysdep.c (sys_signal): Always set SA_RESTART when noninteractively.
aac0c6e3
MR
2135
21362008-10-06 Chong Yidong <cyd@stupidchicken.com>
2137
f5385255 2138 * emacs.c (Vbefore_init_time, Vafter_init_time): Move from startup.el.
aac0c6e3 2139
a9b555d3 2140 * lisp.h (Vbefore_init_time, Vafter_init_time): Declare.
aac0c6e3
MR
2141
2142 * gtkutil.c (x_wm_set_size_hint): Return immediately if called
2143 during initialization.
2144
21452008-10-04 Eli Zaretskii <eliz@gnu.org>
2146
2147 * xdisp.c (redisplay_internal): If frame switched, redisplay the
2148 whole thing on MSDOS frames as well as on a TTY.
2149
2150 * dispnew.c (update_frame): Flush termscript for MSDOS frames as
2151 well as for TTY.
2152 (Fopen_termscript): Allow opening a termscript on MSDOS frames as
2153 well as on a TTY.
2154
2155 * sysdep.c (init_sys_modes): Set FRAME_GARBAGED_P for MSDOS frames
2156 as well as for TTY.
2157
2158 * systime.h (EMACS_TIME_CMP): Cast EMACS_SECS values to `long'.
2159
2160 * dispnew.c (change_frame_size_1): Set FrameRows and FrameCols for
2161 MSDOS frames as well.
2162
21632008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
2164
2165 * image.c (x_clear_image_1): Under NS, call ns_free_indexed_color with
2166 correct arguments.
2167 * menu.c (find_and_return_menu_selection) Add cast.
2168
21692008-10-03 Glenn Morris <rgm@gnu.org>
2170
2171 * emacs.c (USAGE1): Add --daemon.
2172
21732008-10-02 Eli Zaretskii <eliz@gnu.org>
2174
2175 * process.c (procfs_system_process_attributes): Multiply `pcpu' by
2176 100, so it's in percents as advertised.
2177
21782008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
2179
2180 * nsterm.h (ns_cursor_types, ns_output.desired_cursor_color)
2181 (ns_output.current_cursor, ns_output.desired_cursor)
2182 (ns_output.last_inactive, FRAME_CURSOR, FRAME_NEW_CURSOR)
2183 (FRAME_NEW_CURSOR_COLOR): Remove.
2184
2185 * nsfns.m (ns_set_cursor_color): Use FRAME_CURSOR_COLOR.
a9b555d3 2186 (ns_lisp_to_cursor_type, ns_cursor_type_to_lisp): Use core Emacs
aac0c6e3
MR
2187 enumeration (HOLLOW_BOX_CURSOR, etc.).
2188
2189 * nsterm.m (ns_frame_rehighlight): Remove commented code.
2190 (draw_window_cursor): Simplify code.
f5385255
SM
2191 (EmacsView-windowDidBecomeKey:,-windowDidResignKey:):
2192 Don't change cursor type. In latter, call rehighlight instead of doing
aac0c6e3 2193 updates manually.
a9b555d3
JB
2194 (EmacsPrefsController-setPanelFromValues,-setValuesFromPanel):
2195 Use core Emacs cursor types.
aac0c6e3 2196
b8ff72fa 2197 * xdisp.c (draw_glyphs): Don't call notice_overwritten_cursor under NS.
aac0c6e3
MR
2198
21992008-10-02 Martin Rudalics <rudalics@gmx.at>
2200
2201 * process.c (Faccept_process_output): Fix doc-string.
2202
22032008-10-02 Dan Nicolaescu <dann@ics.uci.edu>
2204
2205 * gmalloc.c (__sbrk): Also define for uClibc.
2206
2207 * s/gnu-linux.h (GNU_LIBRARY_PENDING_OUTPUT_COUNT): Add definition
2208 for uClibc.
2209
22102008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
2211
2212 * nsfont.m (nsfont_spec_to_traits): Use UnXX masks only for non-normal
2213 styles.
2214 (nsfont_open): Reenable the cache.
2215
22162008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
2217
2218 * font.c (font_matching_entity): Reflect ATTRS in font selection.
2219 (font_find_for_lface) [HAVE_NS]: Don't ignore case.
2220
22212008-09-30 Stefan Monnier <monnier@iro.umontreal.ca>
2222
2223 * dispnew.c (Fsend_string_to_terminal): Don't try to send a string to
2224 a suspended terminal.
2225
22262008-09-30 Michael Albinus <michael.albinus@gmx.de>
2227
2228 * dbusbind.c (xd_signature): Use strcat instead of sprintf.
2229
22302008-09-30 Eli Zaretskii <eliz@gnu.org>
2231
2232 * Makefile.in (MSDOS_SUPPORT): Remove ccl.elc and codepage.elc.
2233
22342008-09-30 Chong Yidong <cyd@stupidchicken.com>
2235
2236 * xdisp.c (move_it_to): Don't advance the iterator if the last tab
2237 in a continued line coincides with a line beginning.
2238
22392008-09-29 Adrian Robert <Adrian.B.Robert@gmail.com>
2240
2241 * nsfont.m (nsfont_trait_distance): Fix bug.
2242 (nsfont_list): Return a list rather than a vector (syncs with Handa
2243 changes of 2008-05-14).
2244 (nsfont_open): Improve logging.
2245
22462008-09-29 Andreas Schwab <schwab@suse.de>
2247
2248 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
2249
22502008-09-28 Martin Rudalics <rudalics@gmx.at>
2251
2252 * character.c (Fchar_resolve_modifiers): Rewrite Elisp function
2253 name as char-resolve-modifiers.
2254 Reported by: Markus Triska <markus.triska@gmx.at>
2255
22562008-09-28 Dan Nicolaescu <dann@ics.uci.edu>
2257
2258 * dispnew.c (init_display): Return earlier when running as a daemon.
2259
22602008-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
2261
2262 * nsfont.m (nsfont_draw): Fix up composition rendering (cmp_from, ...).
2263
22642008-09-27 Eli Zaretskii <eliz@gnu.org>
2265
2266 * composite.c (Fcomposition_get_gstring)
2267 (Fcompose_region_internal, Fcompose_string_internal)
2268 (Ffind_composition_internal): Doc fix.
2269 (syms_of_composite) <compose-chars-after-function>: Doc fix.
2270 (syms_of_composite) <auto-composition-function>: Doc fix.
2271 (syms_of_composite) <composition-function-table>: Doc fix.
2272
22732008-09-25 Chong Yidong <cyd@stupidchicken.com>
2274
2275 * search.c (wordify): New argument for lax word-ends.
2276 (Fword_search_forward_lax, Fword_search_backward_lax): New funs.
2277
22782008-09-24 Dan Nicolaescu <dann@ics.uci.edu>
2279
2280 * lisp.h (is_daemon): Declare.
2281 * dispnew.c (init_display): Do not try to initialize the terminal
2282 when running as a daemon.
2283
22842008-09-22 Chong Yidong <cyd@stupidchicken.com>
2285
2286 * nsfns.m (compute_tip_xy): Use x_display_pixel_width and
2287 x_display_pixel_height.
2288
22892008-09-22 Martin Rudalics <rudalics@gmx.at>
2290
2291 * undo.c (record_point): Don't call Fundo_boundary for first
2292 change. (Bug#731)
2293
22942008-09-22 Juanma Barranquero <lekktu@gmail.com>
2295
2296 * emacs.c (Fdaemonp): Doc fix.
2297
22982008-09-22 Dan Nicolaescu <dann@ics.uci.edu>
2299
2300 * emacs.c (main): Place #ifdef in the proper place.
2301
23022008-09-21 Dan Nicolaescu <dann@ics.uci.edu>
2303
2304 * emacs.c (standard_args): Add --daemon.
2305 (main): Disconnect from the terminal when --daemon is passed.
2306 (is_daemon): New variable.
2307 (Fdaemonp): New function.
2308 (syms_of_emacs): Defsubr it.
2309
23102008-09-20 Chong Yidong <cyd@stupidchicken.com>
2311
2312 * xdisp.c (get_next_display_element): Handle string display
2313 correctly when checking for the end of a box run.
2314
23152008-09-20 Glenn Morris <rgm@gnu.org>
2316
2317 * fileio.c (Qdelete_by_moving_to_trash): New Lisp_Object.
2318 (syms_of_fileio): Add Qdelete_by_moving_to_trash.
2319 (Frename_file): Avoid copying to trash if a rename involves
2320 a delete. (Bug#964).
2321
23222008-09-20 Eli Zaretskii <eliz@gnu.org>
2323
2324 * keyboard.c (Fset_quit_char, Fset_input_meta_mode)
2325 (Fset_output_flow_control, Fcurrent_input_mode): Support MSDOS
2326 frames as well as termcap frames.
2327 (handle_interrupt): Remove "#ifndef MSDOS" around the call to
2328 get_named_tty.
2329
23302008-09-19 Eli Zaretskii <eliz@gnu.org>
2331
2332 * process.c (procfs_system_process_attributes): Fix cmdline in
2333 case /proc/PID/cmdline is empty.
2334
2335 * xterm.c (x_wm_set_size_hint): Use x_display_pixel_width and
2336 x_display_pixel_height.
2337
23382008-09-19 Juanma Barranquero <lekktu@gmail.com>
2339
2340 * frame.c (x_fullscreen_adjust): Declare var as Display_Info.
2341
2342 * w32fns.c (Fx_display_pixel_width, Fx_display_pixel_height)
2343 (compute_tip_xy): Use x_display_pixel_width, x_display_pixel_height.
2344
23452008-09-19 Dan Nicolaescu <dann@ics.uci.edu>
2346
2347 * dispextern.h (struct it): Move line_wrap away from the middle of
2348 bitfields. Move voffset in struct iterator_stack_entry after the
2349 bitfields. Move tab_width near after another short.
2350
23512008-09-18 Dan Nicolaescu <dann@ics.uci.edu>
2352
2353 * frame.h (struct frame): Move alpha from the middle of bitfields.
2354
2355 * window.h (struct window): Move frozen_window_start_p after the
2356 rest of the bitfields to reduce padding.
2357
23582008-09-18 Chong Yidong <cyd@stupidchicken.com>
2359
2360 * xterm.h (x_display_info): Remove `height' and `width' members.
2361
2362 * nsterm.h (ns_display_info): Remove `height' and `width' members.
2363
2364 * w32term.h (w32_display_info): Remove `height', `width',
2365 `height_in', and `width_in' members.
2366
b8ff72fa
SM
2367 * xterm.c (x_display_pixel_height, x_display_pixel_width):
2368 New functions.
aac0c6e3
MR
2369 (x_calc_absolute_position): Use them.
2370 (x_term_init): Omit removed `height' and `width' members.
2371
b8ff72fa
SM
2372 * w32term.c (x_display_pixel_height, x_display_pixel_width):
2373 New functions.
aac0c6e3
MR
2374 (w32_read_socket, x_calc_absolute_position): Use them.
2375 (w32_initialize_display_info, w32_term_init): Omit removed members
2376 of w32_display_info.
2377
b8ff72fa
SM
2378 * nsterm.m (x_display_pixel_height, x_display_pixel_width):
2379 New functions.
2380 (ns_initialize_display_info): Omit removed members of ns_display_info.
aac0c6e3 2381
b8ff72fa
SM
2382 * xterm.c (x_display_pixel_height, x_display_pixel_width):
2383 New functions.
aac0c6e3
MR
2384 (x_calc_absolute_position): Use them.
2385 (x_term_init): Omit removed `height' and `width' members.
2386
2387 * xfns.c (Fx_display_pixel_width, Fx_display_pixel_height)
b8ff72fa
SM
2388 (compute_tip_xy):
2389 * frame.c (x_fullscreen_adjust):
aac0c6e3
MR
2390 * xmenu.c (menu_position_func): Use x_display_pixel_height and
2391 x_display_pixel_width.
2392
23932008-09-18 Kenichi Handa <handa@m17n.org>
2394
2395 * composite.c (fill_gstring_header): Don't check FROM and TO here.
2396 (composition_compute_stop_pos): Fix handling of static composition.
2397 (Fcomposition_get_gstring): Check FROM and TO at first.
2398
23992008-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
2400
2401 * composite.c (Fcomposition_get_gstring): Yet another int/Lisp_Oject
2402 mixup (YAILOM).
2403
24042008-09-17 Chong Yidong <cyd@stupidchicken.com>
2405
2406 * indent.c (Fvertical_motion): Use position reported by iterator
2407 instead of PT for determining screen motion (bug#943).
2408
24092008-09-17 Romain Francoise <romain@orebokech.com>
2410
2411 * composite.c (composition_adjust_point): Fix int/EMACS_INT mixup.
2412
24132008-09-17 Kenichi Handa <handa@m17n.org>
2414
2415 * ftfont.c (ftfont_shape_by_flt): Downcase family name.
2416
2417 * composite.c (Fcomposition_get_gstring): Make bigger gstring_work
2418 if necessary.
2419
24202008-09-16 Kenichi Handa <handa@m17n.org>
2421
2422 * coding.c (make_conversion_work_buffer): Avoid calling
2423 Fget_buffer_create if it is not necessary.
2424
24252008-09-15 Martin Rudalics <rudalics@gmx.at>
2426
2427 * window.c (Fselect_window): Don't update window_select_count and
2428 use_time when norecord is not nil.
2429
24302008-09-14 Kenichi Handa <handa@m17n.org>
2431
2432 * fileio.c (Finsert_file_contents): Delete incorrect decrement of
2433 specpdl_ptr.
2434
24352008-09-12 Kenichi Handa <handa@m17n.org>
2436
2437 * indent.c (scan_for_column): Don't handle automatic composition
2438 if the current buffer is not associated with a window.
2439
2440 * composite.c (composition_reseat_it): If the current buffer is
2441 not associated with a window, ignore the automatic composition.
2442 (find_automatic_composition): Likewise.
2443
24442008-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
2445
2446 * term.c (close_gpm): New fun extracted from Fgpm_mouse_stop.
2447 (Fgpm_mouse_stop): Use it.
2448 * termhooks.h (close_gpm): Declare.
2449 * keyboard.c (tty_read_avail_input): Forcefully close the gpm
2450 connection if Gpm_GetEvent fails.
2451
2452 * window.c (set_window_buffer): Always preserve current-buffer.
2453
24542008-09-12 Glenn Morris <rgm@gnu.org>
2455
2456 * charset.c (init_charset): Warn if etc/charsets not found. (Bug#909)
2457
24582008-09-11 Glenn Morris <rgm@gnu.org>
2459
2460 * charset.c (charset-map-path): Doc fix.
2461
24622008-09-10 Kenichi Handa <handa@m17n.org>
2463
2464 * xdisp.c (handle_composition_prop): Set it->cmp_it.ch to -1.
2465
2466 * font.c (Ffont_shape_gstring): Make glyphs of non-nil adjustment
2467 compose a grapheme cluster with the preceding base glyph.
2468
2469 * composite.c (composition_compute_stop_pos): Fix previous change.
2470 Reset cmp_it->id to -1 at first.
2471
24722008-09-10 Glenn Morris <rgm@gnu.org>
2473
2474 * Makefile.in (character.o, chartab.o): Fix config.h typo.
2475
24762008-09-09 Chong Yidong <cyd@stupidchicken.com>
2477
2478 * keyboard.c (read_key_sequence): Reapply translation maps when
2479 switching keyboards.
2480
24812008-09-09 Kenichi Handa <handa@m17n.org>
2482
2483 * ftfont.c (ftfont_shape_by_flt): Use "combining" FLT for ASCII
2484 characters.
2485
2486 * composite.c (FORWARD_CHAR): Fix calculation
2487 of (POSITION).pos_byte.
2488 (composition_compute_stop_pos): Limit the search of composition to
2489 at most 500 characters ahead. If we reach the limit or find a
2490 newline, set cmp_it->ch to -2 and return 0.
2491 (composition_reseat_it): Handle the case that cmp_it->ch is -2.
2492
24932008-09-08 Kenichi Handa <handa@m17n.org>
2494
2495 * indent.c (Fvertical_motion): Be sure to set
2496 it_overshoot_expected if it.cmp_it.id is non-negative.
2497
24982008-09-07 Andreas Schwab <schwab@suse.de>
2499
2500 * callproc.c (Fcall_process): Don't hold references to string data
2501 across garbage collection. Move initialisation of new_argv down
2502 to avoid compiler bug.
2503
25042008-09-07 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
2505
2506 * process.c (Fsystem_process_attributes): Doc fix.
2507
25082008-09-07 Chong Yidong <cyd@stupidchicken.com>
2509
2510 * callproc.c (Fcall_process): Canonicalize current directory name.
2511
2512 * xdisp.c (move_it_to): When moving by vpos, ensure that the
2513 iterator advances to the next line if the current line ends in a
2514 continued tab.
2515
25162008-09-07 Teodor Zlatanov <tzz@lifelogs.com>
2517
2518 * nsfont.m (nsfont_draw): Fix the references to missing gidx data
2519 member to point to cmp_from.
2520
2521 * xdisp.c: Doc fix for references to gidx data member.
2522
25232008-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
2524
2525 * buffer.c (Fbuffer_swap_text): Reset window->point markers.
2526
25272008-09-07 Kenichi Handa <handa@m17n.org>
2528
2529 * composite.c (FORWARD_CHAR): Check STOP after
2530 incrementing (POSITION).pos.
2531
25322008-09-06 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
2533
2534 * process.c (Fsystem_process_attributes): Doc fix.
2535
25362008-09-06 Chong Yidong <cyd@stupidchicken.com>
2537
2538 * keyboard.c (Ftop_level): Doc fix.
2539
25402008-09-06 Eli Zaretskii <eliz@gnu.org>
2541
2542 * xmenu.c (xmenu_show) [!HAVE_X_WINDOWS]: If frame has a
2543 minibuffer, don't let lower part of menu invade the echo area.
2544
2545 * msdos.c (IT_menu_display): Use STRING_CHAR_ADVANCE instead of a
2546 "char *q" to access menu text and advance through it. Revert the
2547 change that displayed ">" instead of ASCII character 0x10.
2548
25492008-09-05 Eli Zaretskii <eliz@gnu.org>
2550
2551 * menu.c (single_menu_item) [!HAVE_BOXES]: Enable emulation of
2552 toggle boxes and radio buttons on MS-DOS as well.
2553
25542008-09-05 Kenichi Handa <handa@m17n.org>
2555
2556 * composite.c (autocmp_chars): Check lookback count.
2557 (composition_compute_stop_pos): Set cmp_it->lookback.
2558 (composition_reseat_it): Check lookback count.
2559 (struct position_record): New struct.
2560 (FORWARD_CHAR, BACKWARD_CHAR, CHAR_COMPOSABLE_P): New macros.
2561 (find_automatic_composition): New function.
2562 (composition_adjust_point): Use find_automatic_composition.
2563
2564 * dispextern.h (struct composition_it): New member lookback.
2565
25662008-09-02 Chong Yidong <cyd@stupidchicken.com>
2567
2568 * indent.c (Fvertical_motion): Don't call move_it_by_lines again
2569 if moving by a single line.
2570
25712008-09-02 Andreas Schwab <schwab@suse.de>
2572
2573 * xterm.c (x_delete_display): Fix merge error.
2574
2575 * fileio.c (Fexpand_file_name): Remove unused variables.
2576
25772008-09-02 Eli Zaretskii <eliz@gnu.org>
2578
2579 * fileio.c (Fexpand_file_name): Copy argument `name' into local
2580 storage on all platforms, not just on DOS_NT.
2581
25822008-09-02 Jason Rumney <jasonr@gnu.org>
2583
b8ff72fa
SM
2584 * w32menu.c (Fx_popup_menu, Fx_popup_dialog, w32_menu_show):
2585 Ensure mouse is not grabbed after menu is finished.
aac0c6e3
MR
2586
25872008-09-01 Chong Yidong <cyd@stupidchicken.com>
2588
2589 * xfaces.c (Finternal_set_alternative_font_family_alist)
2590 (Finternal_set_alternative_font_registry_alist): Properly copy
2591 entire alist structure.
2592
25932008-09-01 Kenichi Handa <handa@m17n.org>
2594
d66c0241 2595 * ftfont.c (ftfont_spec_pattern): Don't create a charset if the
aac0c6e3 2596 representative chars of the script is a vector.
d66c0241
JB
2597 (ftfont_list): Handle the case where the representative chars of
2598 the script is a vector.
aac0c6e3
MR
2599
2600 * character.c (syms_of_character): Docstring of
2601 script-representative-chars fixed.
2602
26032008-08-31 Eli Zaretskii <eliz@gnu.org>
2604
2605 * msdos.c (BUILD_CHAR_GLYPH): New macro.
2606 (IT_menu_display): Use it instead of SET_CHAR_GLYPH to construct
2607 the menu. Allocate larger buffer for `text', to account for
2608 possible ^C characters.
2609
26102008-08-31 Martin Rudalics <rudalics@gmx.at>
2611
2612 * xdisp.c (prepare_menu_bars): Don't call
2613 Vwindow_size_change_functions with arg Qt.
2614
26152008-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
2616
2617 * font.h (font_range):
2618 * fileio.c (report_file_error):
2619 * composite.c (composition_update_it): Yet another int/Lisp_Oject mixup.
2620
26212008-08-30 Glenn Morris <rgm@gnu.org>
2622
2623 * data.c (Fmake_variable_frame_local): Doc fix.
2624
2625 * frame.c (Fmodify_frame_parameters): Doc fix.
2626
26272008-08-30 Eli Zaretskii <eliz@gnu.org>
2628
2629 * w32.c (init_user_info): Allocate buf[] with xmalloc using the size
2630 needed by GetTokenInformation.
2631 (w32_system_process_attributes): Check return values of all system
2632 APIs.
2633
2634 * msdos.c (IT_display_cursor): Write "CURSOR ON/OFF" to termscript
2635 only when the state changes.
2636 (IT_update_begin, IT_update_end): Add termscript trace.
2637
2638 * w16select.c (Fw16_set_clipboard_data): Don't encode text if
2639 clipboard is unavailable. Set dst to NULL if it doesn't point to
2640 malloc'ed data.
2641 (Fw16_get_clipboard_data): Initialize htext to NULL, to avoid
2642 passing random values to xfree.
2643
2644 * dispnew.c (init_display): Set `tty's association in frame's
b8ff72fa 2645 parameters alist to the name of the terminal device, if that is known.
aac0c6e3
MR
2646
26472008-08-29 Jason Rumney <jasonr@gnu.org>
2648
2649 * w32uniscribe.c (uniscribe_check_otf): Don't fallback on DFLT script.
2650
26512008-08-29 Eli Zaretskii <eliz@gnu.org>
2652
2653 * composite.c (fill_gstring_body): Avoid compiler warnings.
2654
2655 * font.c (font_fill_lglyph_metrics): Use EMACS_INT in
2656 LGLYPH_SET_CODE to avoid compiler warnings.
2657
2ae37cf0 2658 * makefile.w32-in ($(BLD)/w32uniscribe.$(O)): Depend on composite.h.
aac0c6e3
MR
2659
2660 * composite.h (LGLYPH_SET_CODE): Cast `val' to EMACS_INT.
2661
2662 * w32uniscribe.c (uniscribe_shape): Shut up compiler warning in
2663 LGLYPH_SET_CODE.
2664
26652008-08-29 Kenichi Handa <handa@m17n.org>
2666
2667 * fileio.c (report_file_error): Don't downcase the first character
2668 of errstring if it is still unibyte.
2669
26702008-08-29 Kenichi Handa <handa@m17n.org>
2671
2672 These changes are to re-implement the automatic composition so
2673 that it doesn't use text properties.
2674
2675 * Makefile.in (ftfont.o): Depend on composite.h.
2676 (composite.o): Depend dispextern.h, font.h, frame, and window.h.
2677
2678 * character.h (Vunicode_category_table): Extern it.
2679
2680 * character.c (Vunicode_category_table): New variable.
2681 (syms_of_character): DEFVAR_LISP Vunicode_category_table.
2682
2683 * chartab.c (optimize_sub_char_table): Perform more greedy
2684 optimization.
2685
b8ff72fa
SM
2686 * composite.h (enum composition_method):
2687 Delete COMPOSITION_WITH_GLYPH_STRING.
aac0c6e3
MR
2688 (COMPOSITION_METHOD): Don't check COMPOSITION_WITH_GLYPH_STRING.
2689 (Vcomposition_function_table): Extern it.
2690 (LGSTRING_XXX, LGLYPH_XXX): Macros moved from font.h.
2691 (composition_gstring_put_cache, composition_gstring_from_id)
2692 (composition_gstring_p, composition_gstring_width)
2693 (composition_compute_stop_pos, composition_reseat_it)
2694 (composition_update_it, composition_adjust_point): Extern them.
2695 (Fcomposition_get_gstring): EXFUN it.
2696
d66c0241 2697 * composite.c: Include window.h, frame.h, dispextern.h, font.h.
aac0c6e3
MR
2698 (Vcomposition_function_table)
2699 (get_composition_id): Don't handle COMPOSITION_WITH_GLYPH_STRING.
b8ff72fa
SM
2700 (gstring_hash_table, gstring_work, gstring_work_headers):
2701 New variables.
aac0c6e3
MR
2702 (gstring_lookup_cache, composition_gstring_put_cache)
2703 (composition_gstring_from_id, composition_gstring_p)
2704 (composition_gstring_width, fill_gstring_header)
2705 (fill_gstring_body, autocmp_chars, composition_compute_stop_pos)
2706 (composition_reseat_it, composition_update_it)
b8ff72fa 2707 (composition_adjust_point, Fcomposition_get_gstring): New functions.
aac0c6e3
MR
2708 (syms_of_composite): Initialize gstring_hash_table, gstrint_work,
2709 and gstring_work_headers. DEFVAR_LISP composition-function-table.
2710 Defsubr compostion_get_gstring.
2711
2712 * dispextern.h (struct glyph): New union u.cmp. Delete the member
2713 cmp_id.
2714 (struct glyph_string): Delete the member gidx. New members
2715 cmp_id, cmp_from, and cmp_to.
2716 (enum it_method): Delete GET_FROM_COMPOSITION.
2717 (struct composition_it): New struct.
2718 (struct it): New member cmp_it, and iterator_stack_entry.cmp_it.
2719 Delete c, len, cmp_id, cmp_len in u.comp.
2720
2721 * font.h (enum lgstring_indices): Delete it.
b8ff72fa 2722 (LGSTRING_XXX, LGLYPH_XXX): Move these macros to composite.h.
aac0c6e3 2723 (enum lglyph_indices): Likewise.
b8ff72fa 2724 (font_range): Adjust extern.
aac0c6e3
MR
2725 (font_fill_lglyph_metrics): Extern it.
2726
2727 * font.c (QCf): New variable.
2728 (check_gstring): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
2729 (font_prepare_composition): Delete this function.
2730 (font_range): Type and arguments changed.
2731 (Ffont_make_gstring, Ffont_fill_gstring): Delete them.
2732 (font_fill_lglyph_metrics): New function.
b8ff72fa 2733 (Ffont_shape_text): Rename to Ffont_shape_gstring and change arguments.
aac0c6e3 2734 (syms_of_font): DEFSYM QCf. Delete defsubr for
b8ff72fa
SM
2735 Sfont_make_gstring, Sfont_fill_gstring, Sfont_shape_text.
2736 Defsubr Sfont_shape_gstring.
aac0c6e3
MR
2737
2738 * fontset.h (font_for_char): Extern it.
2739
2740 * fontset.c (font_for_char): New function.
2741
2742 * ftfont.c: Include composite.h.
2743 (ftfont_resolve_generic_family): Add langset "en" to pattern.
b8ff72fa 2744 (ftfont_shape_by_flt): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
aac0c6e3
MR
2745
2746 * indent.c: Include composite.h and dispextern.h.
2747 (check_composition): Delete this function.
2748 (scan_for_column): Handle composition by
2749 composition_compute_stop_pos, composition_reseat_it, and
2750 composition_update_it.
2751 (compute_motion): Likewise.
2752 (Fvertical_motion): Fix checking of composition.
2753
2754 * keyboard.c (adjust_point_for_property): Check composition by
2755 composition_adjust_point.
2756
b8ff72fa 2757 * nsterm.m (ns_draw_glyph_string): Adjust for the change of
aac0c6e3
MR
2758 struct glyph_string.
2759
b8ff72fa
SM
2760 * term.c (encode_terminal_code): Adjust for the change of struct glyph.
2761 (append_composite_glyph): Adjust for the change of struct it and
aac0c6e3
MR
2762 struct glyph.
2763 (produce_composite_glyph): Likewise.
2764
b8ff72fa
SM
2765 * w32term.c (x_draw_composite_glyph_string_foreground):
2766 Adjust for the change of struct glyph_string.
aac0c6e3
MR
2767 (x_draw_glyph_string): Likewise.
2768
2769 * w32uniscribe.c (struct uniscribe_font_info): Include composite.h.
2770 (uniscribe_shape): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
2771
2772 * xdisp.c: Include font.h.
2773 (it_props): Delete the entry for Qauto_composed.
2774 (init_iterator): Initialize it->cmp_it.id to -1.
2775 (compute_stop_pos): Call composition_compute_stop_pos.
b8ff72fa 2776 (face_before_or_after_it_pos): Adjust for the change of struct it.
aac0c6e3
MR
2777 (handle_auto_composed_prop): Delete it.
2778 (handle_composition_prop): Handle only static composition.
2779 (next_overlay_string): Remove it->method == GET_FROM_COMPOSITION
2780 from xassert. Initialize it->cmp_it.stop_pos.
b8ff72fa 2781 (push_it): Adjust for the change of struct it.
aac0c6e3
MR
2782 (pop_it): Likewise.
2783 (get_next_element): Delete next_element_from_composition.
2784 (CHAR_COMPOSED_P): New macro.
2785 (get_next_display_element): For automatic composition, get a face
2786 from the font in the glyph-string.
2787 (set_iterator_to_next): For GET_FROM_BUFFER and GET_FROM_STRING,
b8ff72fa 2788 check composition by it->cmp_it.id. Delete GET_FROM_COMPOSITION case.
aac0c6e3
MR
2789 (next_element_from_string): Check if the character at the current
2790 position is composed by CHAR_COMPOSED_P.
2791 (next_element_from_buffer): Likewise.
d66c0241
JB
2792 (next_element_from_composition): Adjust for the change of struct it.
2793 Update it->cmp_it.
b8ff72fa
SM
2794 (dump_glyph): Adjust for the change of struct glyph.
2795 (fill_composite_glyph_string): Adjust for the change of struct
aac0c6e3
MR
2796 it and struct glyph. Don't handle automatic composition here.
2797 (fill_gstring_glyph_string): New function.
2798 (x_get_glyph_overhangs): Handle automatic composition.
b8ff72fa 2799 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the change of struct glyph.
aac0c6e3
MR
2800 (BUILD_GSTRING_GLYPH_STRING): New macro.
2801 (BUILD_GLYPH_STRINGS): Call BUILD_GSTRING_GLYPH_STRING for
2802 automatic composition.
b8ff72fa 2803 (append_composite_glyph): Adjust for the change of struct it and
aac0c6e3 2804 struct glyph.
b8ff72fa 2805 (x_produce_glyphs): Adjust for the change of struct it.
aac0c6e3 2806
b8ff72fa 2807 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
aac0c6e3
MR
2808 the change of struct glyph_string.
2809 (x_draw_glyph_string): Likewise.
2810
28112008-08-29 Glenn Morris <rgm@gnu.org>
2812
2813 * buffer.c (word-wrap): Doc fix.
2814 * xdisp.c (truncate-partial-width-windows): Doc fix.
2815 Increase default to 50.
2816
28172008-08-29 Chong Yidong <cyd@stupidchicken.com>
2818
2819 * xdisp.c (update_tool_bar_unwind): New function.
2820 (update_tool_bar): Temporarily set selected frame before building
2821 tool-bar items.
2822
28232008-08-28 Michael Albinus <michael.albinus@gmx.de>
2824
2825 * dbusbind.c (XD_ERROR, XD_DEBUG_MESSAGE): Use strncpy and
2826 snprintf, respectively.
2827 (xd_append_arg): Convert strings with Fstring_make_unibyte.
2828
28292008-08-28 Chong Yidong <cyd@stupidchicken.com>
2830
2831 * Makefile.in: Revert (undocumented) 2008-08-20 change adding
2832 LDFLAGS to GNUstep CC invocation.
2833
28342008-08-27 Chong Yidong <cyd@stupidchicken.com>
2835
2836 * indent.c (Fvertical_motion): Revert last change. Handle the
2837 general case where we are moving forward, and PT spans multiple
2838 screen lines.
2839
2840 * eval.c (find_handler_clause): Temporarily increase
2841 max-lisp-eval-depth while printing the backtrace buffer, to
2842 guarantee that help-mode code can run.
2843
28442008-08-27 Eli Zaretskii <eliz@gnu.org>
2845
2846 * msdos.c (Fmsdos_remember_default_colors): Don't reverse frame
2847 colors under -rv.
2848 (IT_set_frame_parameters): Don't swap foreground and background
2849 colors if `(reverse . t)' is present in the frame properties.
2850 (internal_terminal_init): Call init_frame_faces only for the
2851 initial frame.
2852
28532008-08-27 Andreas Schwab <schwab@suse.de>
2854
2855 * dired.c (Ffile_attributes): Avoid compiler warning in bitshift.
2856
28572008-08-27 Andreas Schwab <schwab@suse.de>
2858
2859 * search.c (search_buffer): Set char_base to zero only at the end.
2860
28612008-08-27 Kenichi Handa <handa@m17n.org>
2862
b8ff72fa 2863 * fileio.c (report_file_error): Fix handling of multibyte error string.
aac0c6e3
MR
2864
28652008-08-27 Andreas Seltenreich <seltenreich@gmx.de>
2866
2867 * xterm.c (x_term_init): Temporarily hide the partially
2868 initialized terminal while calling vendor-specific-keysyms.
2869
28702008-08-26 Eli Zaretskii <eliz@gnu.org>
2871
2872 * msdos.c (internal_terminal_init): Most initializations done only
2873 once, especially initial_screen_colors[] and termscript open.
2874
28752008-08-26 Chong Yidong <cyd@stupidchicken.com>
2876
2877 * eval.c (Fcondition_case): Doc fix.
2878
2879 * widgetprv.h (EmacsFramePart): Change font member to the new font
2880 struct.
2881
2882 * widget.c: Include character.h and font.h for XSETFONT.
2883 (setup_frame_gcs): Compute X font id from font struct, just once.
2884
28852008-08-26 Eli Zaretskii <eliz@gnu.org>
2886
2887 * term.c (get_named_tty): Fix last change.
2888
28892008-08-26 Chong Yidong <cyd@stupidchicken.com>
2890
2891 * indent.c (Fvertical_motion): If moving forward starting from a
b8ff72fa 2892 multi-line string, move the iterator to the last line of that string.
aac0c6e3
MR
2893
28942008-08-25 Eli Zaretskii <eliz@gnu.org>
2895
2896 * frame.c (do_switch_frame): Mark previously displayed frame as
2897 obscured for FRAME_MSDOS_P frames as well.
2898
28992008-08-24 Eli Zaretskii <eliz@gnu.org>
2900
2901 * frame.c (make_terminal_frame): Initialize f->terminal,
2902 f->terminal->reference_count, and scroll bars on MS-DOS as well.
2903 Set the top frame to newly created frame.
2904 (Fmake_terminal_frame): Reuse the_only_display_info.
2905
2906 * vm-limit.c (get_lim_data) [MSDOS]: Use alternative methods of
2907 estimating available memory.
2908
b97439ce 29092008-08-23 David Reitter <david.reitter@gmail.com>
aac0c6e3
MR
2910
2911 * nsterm.m (ns_draw_window_cursor): Don't call
2912 NSDisableScreenUpdates and NSEnableScreenUpdates on
2913 non-NS_IMPL_COCOA systems.
2914
29152008-08-23 Andreas Schwab <schwab@suse.de>
2916
2917 * process.c (procfs_system_process_attributes): Fix use of
2918 uninitialized variables.
2919
29202008-08-23 Eli Zaretskii <eliz@gnu.org>
2921
2922 * emacs.c (main) [MSDOS]: Call syms_of_xmenu.
2923
2924 * dispnew.c (init_display): Remove MS-DOS specific conditions for
2925 calling tty-set-up-initial-frame-faces.
2926
b8ff72fa
SM
2927 * xmenu.c (Fx_popup_dialog, Fx_popup_menu, xmenu_show):
2928 Allow MSDOS frames along with X frames.
aac0c6e3
MR
2929
2930 * termhooks.h (TERMINAL_ACTIVE_P): Handle output_msdos_raw in
2931 addition to output_termcap.
2932
2933 * xdisp.c (redisplay_internal) [MSDOS]: Don't call set_tty_color_mode.
2934
2935 * termchar.h (FRAME_TTY): Support output_msdos_raw.
2936 (struct tty_display_info) [MSDOS]: Add fields related to mouse
2937 highlight.
2938
2939 * process.c [!subprocesses]: Define QCname.
2940 (syms_of_process): Intern and staticpro it.
2941
2942 * w16select.c (Fw16_set_clipboard_data, Fw16_get_clipboard_data):
b8ff72fa
SM
2943 Adjust for changes in encoding/decoding routines.
2944 Use encode_coding_object and decode_coding_object instead of
aac0c6e3
MR
2945 encode_coding and decode_coding.
2946
b8ff72fa 2947 * sysdep.c (init_sys_modes): Call dos_ttraw with tty_out as argument.
aac0c6e3
MR
2948
2949 * dosfns.c: Include frame.h before termhooks.h.
2950 (dos_cleanup): Use CURTTY ()->termscript instead of a global
2951 variable termscript.
2952
2953 * s/msdos.h (USER_FULL_NAME): Define.
2954 (SYSTEM_PURESIZE_EXTRA): Bump up to 100K.
2955
2956 * editfns.c (USER_FULL_NAME): Define to pw->pw_gecos if undefined.
2957 (Fuser_full_name): Use USER_FULL_NAME instead of a literal
2958 pw->pw_gecos.
2959
2960 * keyboard.c (handle_interrupt) [MSDOS]: Call cursor_to with
2961 SELECTED_FRAME as additional (1st) argument.
2962 (tty_read_avail_input): Handle output_msdos_raw in
2963 addition to output_termcap.
2964
2965 * msdos.c: Include frame.h before termhooks.h.
2966 (mouse_on, mouse_off, mouse_moveto, mouse_init)
2967 (msdos_set_cursor_shape, IT_set_face, IT_write_glyphs)
2968 (show_mouse_face, IT_clear_end_of_line, IT_clear_screen)
2969 (IT_clear_to_end, IT_cursor_to, IT_display_cursor, IT_cmgoto)
2970 (IT_set_terminal_modes, IT_reset_terminal_modes)
2971 (IT_set_frame_parameters): Use tty->termscript instead of a global
2972 variable termscript.
2973 (IT_write_glyphs): Use tty->terminal->terminal_coding instead of a
2974 global variable terminal_coding. Don't refer to
2975 Vnonascii_translation_table.
2976 (internal_terminal_init): Set Vwindow_system in current_kboard.
2977 Don't use TTY_CHAR_INS_DEL_OK. Set Vinitial_window_system.
2978 Announce date and time of session start, if termscript is open.
2979 Don't zero out the_only_display_info (it is done in
b8ff72fa
SM
2980 term.c:init_tty). Open termscript only of not already open.
2981 Log "SCREEN SAVED" here, instead of IT_set_terminal_modes. Init mouse
aac0c6e3
MR
2982 here instead of dos_ttraw. Don't initialize display if this is an
2983 initial tty. Don't set FRAME_FONT.
2984 (Vwindow_system_version): Bump to 23.
2985 (dos_ttraw): Accept a TTY argument; all callers fixed. If mouse
2986 is available, set up mouse_position_hook.
2987 (dos_ttraw, IT_set_terminal_modes): If called with initial
2988 terminal, do nothing.
2989 (IT_set_frame_parameters): Handle the Qtty_type frame
2990 parameter by calling internal_terminal_init.
2991 (dos_set_window_size, show_mouse_face)
2992 (clear_mouse_face, IT_note_mode_line_highlight)
2993 (IT_note_mouse_highlight, IT_update_begin, IT_frame_up_to_date)
2994 (dos_rawgetc): Use tty_display_info instead of x_display_info.
2995 (initialize_msdos_display): New function.
2996 (IT_cursor_to, IT_clear_to_end, IT_clear_screen)
2997 (IT_clear_end_of_line, IT_insert_glyphs, IT_write_glyphs)
2998 (IT_delete_glyphs, IT_ring_bell, IT_reset_terminal_modes)
2999 (IT_set_terminal_modes, IT_set_terminal_window, IT_update_begin):
b8ff72fa 3000 Accept additional argument: a pointer to a frame. Update all callers.
aac0c6e3
MR
3001 (request_sigio, unrequest_sigio): Don't define, now defined on
3002 sysdep.c.
3003 (IT_write_glyphs): Rewrite to use encode_terminal_code.
3004
3005 * term.c [MSDOS]: Include msdos.h.
3006 (init_tty) [MSDOS]: Reuse most of WINDOWSNT branch. Change cpp
3007 conditional to DOS_NT. Allow only one call to this function in a
3008 session. Don't allocate a new struct tty_display_info; instead,
3009 reuse the_only_display_info. Call get_tty_size to get screen
3010 dimensions. Call init_baud_rate to set bad_rate.
3011 (dissociate_if_controlling_tty) [MSDOS]: Ifdef away function body.
3012 (Fsuspend_tty) [MSDOS]: Don't close input and output.
b8ff72fa 3013 (Fresume_tty) [MSDOS]: Don't reopen the TTY; instead, use stdin/stdout.
aac0c6e3
MR
3014 (get_tty_terminal, get_named_tty, Ftty_type)
3015 (Fcontrolling_tty_p): Handle output_msdos_raw in addition to
3016 output_termcap.
b8ff72fa
SM
3017 (Fresume_tty, Fsuspend_tty, init_tty, delete_tty):
3018 Call add_keyboard_wait_descriptor and delete_keyboard_wait_descriptor
2ae37cf0 3019 only when subprocesses are supported.
aac0c6e3
MR
3020
3021 * frame.c (make_terminal_frame) [MSDOS]: Adjust initialization of
3022 f->output_data.x.
3023 (Fmake_terminal_frame) [MSDOS]: Don't allow creation of new
3024 terminal devices.
3025
5582fbc7 3026 * msdos.h: Remove definition of struct x_display_info and struct
aac0c6e3
MR
3027 x_output.
3028 (FRAME_FONT): Use output_data.tty.
3029 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL): Don't define.
b8ff72fa
SM
3030 (struct x_display_info): Rename from display_info. Update all users in
3031 msdos.c.
aac0c6e3 3032 (struct x_output): Remove background_pixel and foreground_pixel.
b8ff72fa 3033 (the_only_display_info): Rename from the_only_x_display.
aac0c6e3
MR
3034 (dos_ttraw): Update prototype.
3035
3036 * Makefile.in (MSDOS_OBJ): Add xmenu.o.
3037 (SOME_MACHINE_LISP): Add ../lisp/term/pc-win.elc.
3038
30392008-08-23 Jason Rumney <jasonr@gnu.org>
3040
3041 * image.c (enum tiff_keyword_index, tiff_format): Add :index keyword.
3042 (fn_TIFFSetDirectory): New library function used.
3043 (init_tiff_functions) [HAVE_NTGUI]: Initialize it.
3044 (tiff_load): Use :index to select among multiple images. Set count
3045 property when multiple images exist.
3046 (gif_format): Use :index, not :image.
3047
30482008-08-23 Chong Yidong <cyd@stupidchicken.com>
3049
3050 * xdisp.c (try_scrolling): Check INT_MAX instead of
3051 MOST_POSITIVE_FIXNUM for maximum integer value. Include limits.h
3052 to obtain INT_MAX.
3053
30542008-08-21 İsmail Dönmez <ismail@namtrac.org> (tiny change)
3055
3056 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase on GTK+.
3057
30582008-08-21 Christian Faulhammer <opfer@gentoo.org> (tiny change)
3059
3060 * Makefile.in (temacs${EXEEXT}): On GNUstep, link to appropriate
3061 GNUstep library location.
3062
30632008-08-21 Chong Yidong <cyd@stupidchicken.com>
3064
3065 * xfaces.c (x_update_menu_appearance): Check validity of menu font
3066 before using it.
3067
3068 * puresize.h (BASE_PURESIZE): Increase to 1250000.
3069
30702008-08-20 Adrian Robert <Adrian.B.Robert@gmail.com>
3071
3072 * nsfns.m (ns-read-file-name): Add casts to avoid warning.
3073 (ns-convert-utf8-nfd-to-nfc): Warn if cannot execute correctly.
3074 * nsfont.m (nsfont_draw): Compare indexed colors to 0, not nil.
3075 * nsterm.h (EmacsView-unlockFocusNeedsFlush:): Add declaration.
3076 (EmacsApp-cursor_blink_handler): Remove declaration.
3077 * nsterm.m (ns_draw_glyph_string): Update first conditional body to
3078 match 01 Feb 2008 changes in xterm.c.
3079 (ns_read_socket): Add cast to avoid warning.
3080 (EmacsApp-application:openFiles:): Don't call replyToOpenOrPrint: on
3081 GNUstep.
3082
30832008-08-20 Chong Yidong <cyd@stupidchicken.com>
3084
3085 * xselect.c (x_get_foreign_selection): Return nil if desired
3086 selection could not be obtained, instead of signalling an error.
3087
30882008-08-20 David Reitter <david.reitter@gmail.com>
3089
3090 * nsfns.m (ns_lisp_to_cursor_type): Replace with generic xfns.c.
3091 * nsterm.m: Remove ns-specific code for cursor blinking.
3092 (ns_draw_window_cursor): Clear cursor properly rather than
3093 redrawing the area. Respect width of bar cursors.
3094 These changes enable the use of generic blink-cursor-mode and
3095 generic cursor types in NS and support smooth cursor movements (do
3096 not blink off after command).
3097 * xdisp.c (get_phys_cursor_geometry): Redraw wider rectangle on
3098 Nextstep, too.
3099
31002008-08-19 Kenichi Handa <handa@m17n.org>
3101
3102 * font.c (Vfont_log_deferred): New variable.
3103 (font_add_log): Check Vfont_log_deferred.
3104 (font_deferred_log): New function.
3105
3106 * font.h (font_deferred_log): Extern it.
3107
3108 * fontset.c (reorder_font_vector): Use encoding charset of fonts
3109 for sorting.
3110 (face_for_char): Use deferred log.
3111
31122008-08-18 Kenichi Handa <handa@m17n.org>
3113
3114 * fontset.c (face_for_char): Add font log.
3115
3116 * font.c (font_add_log): Add the font properties :script, :lang,
3117 and :otf in the log.
3118
31192008-08-17 Chong Yidong <cyd@stupidchicken.com>
3120
3121 * xdisp.c: Remove dead code.
3122 (handle_invisible_prop, next_overlay_string): Defer call to
3123 setup_for_ellipsis.
3124 (handle_stop, set_iterator_to_next): Call setup_for_ellipsis.
3125
31262008-08-15 Chong Yidong <cyd@stupidchicken.com>
3127
3128 * xfaces.c (lookup_derived_face): Properly handle possible zero
3129 return value of get_lface_attributes.
3130 (merge_faces): Don't tell lookup_derived_face to signal an error
3131 if face is not found.
3132
3133 * dired.c (Fdirectory_files): Doc fix.
3134
3135 * process.c (make_process): Initialize kill_without_query struct
3136 member.
3137
31382008-08-15 Eli Zaretskii <eliz@gnu.org>
3139
3140 * w32.c (w32_system_process_attributes) [_MSC_VER < 1300]:
3141 Alternative calculation of totphys for Visual Studio 6.
3142
3143 * w32fns.c [_MSC_VER && _MSC_VER < 1300]: Declare HMONITOR.
3144
3145 * w32.c (_MEMORY_STATUS_EX, MEMORY_STATUS_EX, LPMEMORY_STATUS_EX):
3146 Rename from _MEMORYSTATUSEX, MEMORYSTATUSEX, LPMEMORYSTATUSEX.
3147 All users changed.
3148 (stat): Only root directory passed to GetDriveType. Allow RAM
3149 disk as well as local fixed disk when w32-get-true-file-attributes
3150 is set to `local'.
3151 (CopySid_Proc, EqualSid_Proc, GetLengthSid_Proc): New typedefs.
3152 (equal_sid, get_length_sid, copy_sid): New wrapper functions.
3153 (w32_cached_id, w32_add_to_cache): New functions.
3154 (get_name_and_id): Look account names in the cache before calling
3155 lookup_account_sid.
3156 (g_b_init_get_length_sid, g_b_init_equal_sid, g_b_init_copy_sid):
3157 New initialization flags.
3158 (globals_of_w32): Initialize them to zero.
3159 (w32_system_process_attributes): Use w32_cached_id and
3160 w32_add_to_cache.
3161
31622008-08-14 Lawrence Mitchell <wence@gmx.li>
3163
3164 * lread.c (Fread_char, Fread_char_exclusive): If no character
3165 event is read before timeout is reached, return nil, rather than
3166 converting to a number.
3167
31682008-08-14 Chong Yidong <cyd@stupidchicken.com>
3169
3170 * fns.c (use_dialog_box): Doc fix.
3171
3172 * s/darwin.h: Undefine HAVE_RES_INIT, which appears to be harmful
3173 on OS X.
3174
31752008-08-13 Chong Yidong <cyd@stupidchicken.com>
3176
3177 * frame.c (Qns_parse_geometry): New var.
3178 (Fx_parse_geometry): For HAVE_NS, call ns-parse-geometry.
3179
31802008-08-11 Chong Yidong <cyd@stupidchicken.com>
3181
3182 * xdisp.c (x_produce_glyphs): Handle the case when font has no
3183 space character in calculating tabs.
3184
31852008-08-11 Dan Nicolaescu <dann@ics.uci.edu>
3186
3187 * Makefile.in (bootstrap-emacs): Use ln -f in the CANNOT_DUMP case.
3188
31892008-08-10 Glenn Morris <rgm@gnu.org>
3190
3191 * process.c (procfs_system_process_attributes): Use EMACS_INTs to
3192 silence gcc "limited range of data type" warnings in some
3193 make_fixnum_or_float calls.
3194
31952008-08-09 Eli Zaretskii <eliz@gnu.org>
3196
3197 * w32.c (w32_system_process_attributes): If the process does not
3198 exist, return nil.
3199
3200 * w32.c: Include thelp32.h, psapi.h and coding.h.
3201 (_MEMORYSTATUSEX, _PROCESS_MEMORY_COUNTERS_EX): New struct
3202 declarations.
3203 (CreateToolhelp32Snapshot_Proc, Process32First_Proc)
3204 (Process32Next_Proc): New typedefs.
3205 (g_b_init_create_toolhelp32_snapshot, g_b_init_process32_first)
3206 (g_b_init_process32_next, g_b_init_open_thread_token)
3207 (g_b_init_impersonate_self, g_b_init_revert_to_self)
3208 (g_b_init_get_process_memory_info, g_b_init_global_memory_status)
3209 (g_b_init_get_process_working_set_size)
3210 (g_b_init_global_memory_status_ex): New static variables.
3211 (globals_of_w32): Initialize them.
3212 (create_toolhelp32_snapshot, process32_first, process32_next)
3213 (open_thread_token, impersonate_self, revert_to_self)
3214 (get_process_memory_info, get_process_working_set_size)
3215 (global_memory_status, global_memory_status_ex): New wrapper
3216 functions.
3217 (w32_list_system_processes, w32_system_process_attributes)
3218 (enable_privilege, restore_privilege, ltime, process_times):
3219 New functions.
3220 (convert_time_raw): New function.
3221 (convert_time): Remove conversion of FILETIME into time in 100
3222 nsec units, call convert_time_raw instead.
3223
3224 * process.h (w32_list_system_processes, w32_system_process_attributes):
3225 Add prototypes.
3226 (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess, Qttname)
3227 (Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime, Qcutime)
3228 (Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs, Quser, Qgroup)
3229 (Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime): Add extern declarations.
3230
3231 * process.c (Fsystem_process_attributes): Doc fix.
3232
32332008-08-08 Chong Yidong <cyd@stupidchicken.com>
3234
3235 * xdisp.c (move_it_to): When stopping at a charpos, check if that's
3236 a continued multi-char glyph; if so, advance to the actual glyph.
3237
32382008-08-07 Dan Nicolaescu <dann@ics.uci.edu>
3239
3240 * s/darwin.h (OTHER_FILES): Do not define here, defined in config.in.
3241
3242 * Makefile.in (ALL_OBJC_CFLAGS): New variable.
3243 (.m.o): Use it.
3244 * config.in: Regenerate.
3245
32462008-08-07 Chong Yidong <cyd@stupidchicken.com>
3247
3248 * xdisp.c (redisplay_window): Revert last change.
3249 (try_window): Check bottom scroll margin too.
3250
32512008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
3252
3253 * config.in: Regenerate.
3254
3255 * Makefile.in (emacs): Remove ifndef NS conditional for 'emacs
3256 -list-load-path-shadows'.
3257 (nsgui.h): Reduce number of things depending on it.
3258
32592008-08-06 Chong Yidong <cyd@stupidchicken.com>
3260
3261 * xdisp.c (try_scrolling): Use iterator to find the scroll margin,
3262 instead of window-end which does the wrong thing at eob.
3263 (try_cursor_movement): Minor optimization.
3264 (redisplay_window): If scroll margin is defined, don't assume
3265 window doesn't need scrolling.
3266
32672008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
3268
3269 * config.in: Regenerate.
3270
3271 * Makefile.in: Move nsXXX.m dependencies into big alphabetical list.
3272 (mostlyclean): Don't delete *.d under NS.
3273
3274 * nsterm.h (NS_HAVE_INTEGER): Change to NS_HAVE_NSINTEGER.
3275
32762008-08-06 Kenichi Handa <handa@m17n.org>
3277
3278 * xfont.c (xfont_list_family): Return a list of symbols, not strings.
3279
32802008-08-06 Andreas Schwab <schwab@suse.de>
3281
3282 * config.in: Regenerate.
3283
32842008-08-05 Chong Yidong <cyd@stupidchicken.com>
3285
3286 * xdisp.c (redisplay_window): Don't enforce scroll-margin when
3287 forcing a window start.
3288
3289 * fileio.c (Vauto_save_list_file_name): Move here from file.el.
3290 (auto_save_1): Update modtime when auto-save-list-file-name is on.
3291
32922008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
3293
3294 * emacs.c (main): Under NS, set working dir to HOME when get a "psn"
3295 argument.
3296
32972008-08-05 Juanma Barranquero <lekktu@gmail.com>
3298
3299 * buffer.c (syms_of_buffer) <scroll-up-aggressively>:
3300 <scroll-down-aggressively, before-change-functions>:
3301 <after-change-functions>: Reflow docstrings.
3302
33032008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
3304 Ken Raeburn <raeburn@gnu.org>
3305
3306 Dock menu customization, based on a patch by Ken Raeburn, plus some
3307 other fixes.
3308 * nsmenu.m (dockMenu): New variable.
3309 (EmacsDialog -clicked:): Fix mistake in change of 2008-07-17.
3310
3311 * nsterm.h (dockMenu): Declare.
3312
3313 * nsterm.m (KEY_NS_NEW_FRAME): New definition.
3314 (ns_term_init): Initialize dockMenu.
3315 (EmacsApp -newFrame:, -applicationDockMenu:): New methods.
3316 (EmacsView -windowShouldClose:): Don't behave specially if <= 1 frame
3317 left.
3318
3319 * lisp.h (LSB_TAG): Use on DARWIN_OS, not NS_IMPL_COCOA.
3320
33212008-08-04 Chong Yidong <cyd@stupidchicken.com>
3322
3323 * nsterm.h: Test directly for NS_HAVE_INTEGER before defining it.
3324
3325 * config.in: Regenerate.
3326
33272008-08-04 Seiji Zenitani <zenitani@mac.com>
3328
3329 * nsfns.m (x-create-frame): Set the frame parameter alpha to nil.
3330
33312008-08-04 Chong Yidong <cyd@stupidchicken.com>
3332
3333 * nsterm.h (find_and_call_menu_selection): Fix prototype.
3334
33352008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
3336
3337 * emacs.c (main: unexec_init_emacs_zone): Call if on DARWIN_OS.
3338
3339 * keyboard.h: Comment an #endif.
3340
3341 * lisp.h (have_menus_p): Adjust comment.
3342
3343 * menu.c (find_and_return_menu_selection): Fix comparison with
3344 client_data.
3345
3346 * nsmenu.m (popup_activated_flag): New variable.
3347 (popup_activated): New function.
3348 (menu-or-popup-active-p): New exported lisp definition.
3349 (ns_popup_menu): Set popup_activated_flag. Call discard_menu_items()
3350 when popup done.
3351 (ns_popup_dialog): Set popup_activated_flag.
3352
3353 * nsterm.m (EmacsView -conversationIdentifier): Use NSInteger
3354 version for GNUstep (handled by conditional typedef in nsterm.m).
3355 (ns_get_color): Remove special-casing for "darkblue", "dark blue" (now
3356 in rgb.txt).
3357
3358 * process.c (init_process): Use DARWIN_OS, not DARWIN.
3359
3360 * sysselect.h: Conditionalize init_process undef on DARWIN_OS.
3361
3362 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): Do it also under NS.
3363
3364 * xdisp.c (redisplay_internal, note_mouse_highlight): Under NS,
3365 shortcircuit if popup_activated like GTK and X toolkit.
3366
3367 * m/inter386.h: Change DARWIN to DARWIN_OS.
3368
3369 * s/darwin.h: Add #define DARWIN_OS. Get rid of C_SWITCH_SYSTEM def.
3370 Change LIBS_MACGUI to LIBS_NSGUI. Move temacs-conditionalized defs
3371 closer to C_SWITCH_SYSTEM_TEMACS so usage is understood. Expand
3372 comment on NO_SOCK_SIGIO.
3373
33742008-08-03 Chong Yidong <cyd@stupidchicken.com>
3375
3376 * nsterm.m (windowDidResize): Remove stopModal call.
3377
33782008-08-03 Andreas Schwab <schwab@suse.de>
3379
3380 * vm-limit.c (get_lim_data) [HAVE_GETRLIMIT && RLIMIT_AS]: Define.
3381 (check_memory_limits): Don't handle HAVE_GETRLIMIT here.
3382
33832008-08-02 Chong Yidong <cyd@stupidchicken.com>
3384
3385 * vm-limit.c (check_memory_limits): Don't use getrlimit on cygwin.
3386 Don't use uninitialized pointer variable when using getrlimit.
3387
33882008-08-02 Jason Rumney <jasonr@gnu.org>
3389
3390 * w32font.c (compute_metrics): Don't mess with glyph_idx setting here.
3391
33922008-08-02 Eli Zaretskii <eliz@gnu.org>
3393
3394 * alloc.c (NSTATICS): Bump to 0x640.
3395
3396 * s/gnu-linux.h (HAVE_PROCFS, LISTPROC, PROCATTR): New defines.
3397
3398 * lisp.h: Add prototype for directory_files_internal.
3399
3400 * process.c (Fsystem_processes_list, Fsystem_process_attributes):
3401 New functions.
3402 (syms_of_process): Defsubr them. Add initializations for various
3403 Q* symbols used in procfs_system_process_attributes.
3404 (procfs_list_system_processes, procfs_system_process_attributes)
3405 [HAVE_PROCFS]: New functions.
3406 (time_from_jiffies, ltime_from_jiffies, get_up_time, procfs_ttyname)
3407 (procfs_get_total_memory): New functions.
3408
34092008-08-01 Juanma Barranquero <lekktu@gmail.com>
3410
3411 * xfaces.c (Fx_load_color_file): Fix previous change;
3412 it is #ifdef WINDOWSNT, not WINDOWS_NT.
3413
34142008-08-01 Michael Albinus <michael.albinus@gmx.de>
3415
3416 * dbusbind.c (xd_read_message): Handle D-Bus error messages.
3417
34182008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
3419
3420 * nsterm.h (NSInteger, NSUInteger): Add defines for non-Leopard.
3421
34222008-08-01 Chong Yidong <cyd@stupidchicken.com>
3423
3424 * nsfns.m (ns_frame_parm_handlers): Add empty entry for x_set_alpha.
3425
3426 * nsterm.m (EmacsApp -application:openFiles:): GNUstep does not
3427 define NSApplicationDelegateReplySuccess.
3428 (EmacsView -converstationIdentifier): Use long instead of
3429 NSInteger for GNUstep, since it doesn't have NSInteger.
3430
3431 * xmenu.c: Revert last change.
3432
3433 * keyboard.h: Fix last change.
3434
34352008-08-01 Juanma Barranquero <lekktu@gmail.com>
3436
3437 * xfaces.c (x-load-color-file): Use RGB() instead of manually shifting
3438 on Windows.
3439
34402008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
3441
3442 Warning clearing and clean-up in NS port.
3443 * keyboard.h (xmalloc_widget_value, digest_single_submenu):
3444 Add prototypes.
3445 * nsgui.h (FACE_DEFAULT): Remove, unused.
3446 (XGCValues): Change colors to unsigned long.
3447 * nsterm.h (EmacsApp): Add declaration of all methods implemented in
3448 nsterm.m.
3449 (EmacsMenu -addItemWithWidgetValue:): Change to use NSMenuItem class.
3450 (ns_list_fonts): Remove, unused.
3451 (ns_font_to_xlfd, ns_fontname_to_xlfd): Drop prototypes.
3452 * nsfns.m (interpret_services_menu): Use NSMenuItem class.
3453 * nsfont.m (nsfont_open): Fix cast error in glyphs,metrics alloc.
3454 (nsfont_draw): Compare face colors to 0, not nil.
3455 * nsmenu.m (struct widget_value): Drop unneeded declaration.
3456 (EmacsMenu -addItemWithWidgetValue:, -fillWithWidgetValue:)
3457 (-addSubmenuWithTitle:): Use NSMenuItem class.
3458 (ns_popup_menu): Use NO, not NULL, for enabled setting.
3459 * nsterm.m (ns_draw_glyph_string): Don't compare font to ~0.
3460 (ns_clip_to_row): Make gc arg a BOOL.
3461 (ns_draw_fringe_bitmap, ns_draw_window_cursor): Use YES, NO in
3462 ns_clip_to_row() call.
3463 (ns_draw_glyph_string): Drop face comparison to ~0 (no longer
3464 used). Cast FRAME_FONT assignments.
3465 (ns_read_socket): Cast call to EmacsApp-fulfillService:withArg:.
3466 (ns_string_to_lispmod): Change arg to const char.
3467 (ns_term_init): Use NSMenuItem class.
3468 (EmacsApp -openFile:): Move to different section of file.
3469 (EmacsApp -application:openFiles:): Don't return a value, call
3470 -replyToOpenOrPrint:.
3471 (EmacsView -keyDown:): Fix up cast.
3472 (EmacsView -converstationIdentifier): Use NSInteger instead of long.
3473 (EmacsView -menuDown:): Cast tag in call to
3474 find_and_call_menu_selection().
3475 (ns_list_fonts): Remove, unused.
3476 (ns_font_to_xlfd): Make static. Cast result of UTF8String.
3477 (ns_fontname_to_xlfd): Make static.
3478 * w32menu.c (xmalloc_widget_value, digest_single_submenu):
3479 Remove prototypes (now in keyboard.h).
3480 (next_menubar_widget_id): Remove, unused.
3481 * xmenu.c (xmalloc_widget_value, digest_single_submenu):
3482 Remove prototypes (now in keyboard.h).
3483 * xfaces.c (ns_list_fonts, w32_list_fonts): Remove, unused.
3484
34852008-08-01 Dan Nicolaescu <dann@ics.uci.edu>
3486
3487 * Makefile.in (dispnew.o, gtkutil.o, sound.o, atimer.o)
3488 (floatfns.o): Depend on syssignal.h.
3489 (term.o): Depend on syssignal.h, systty.h, and $(INTERVAL_SRC).
3490
3491 * systty.h: Fix previous change that removed BSD_TERMIOS.
3492 Add comments to #ifdefs.
3493
34942008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
3495
3496 * w32fns.c (w32-load-color-file): Remove.
3497 (x-open-connection): Use renamed Fx_load_color_file.
3498 * xfaces.c (x-load-color-file): Add.
3499 * nsterm.m (ns_initialize): Load colors from etc/rgb.txt instead of
3500 Emacs.clr.
3501 (hide_hourglass): BLOCK_INPUT before UNBLOCK.
3502
35032008-07-31 Michael Albinus <michael.albinus@gmx.de>
3504
3505 * dbusbind.c (Fdbus_call_method_asynchronously)
3506 (Fdbus_method_error_internal): New defuns.
3507 (xd_read_message): Handle also reply messages.
3508 (Vdbus_registered_functions_table): Extend docstring.
3509
35102008-07-31 Juanma Barranquero <lekktu@gmail.com>
3511
3512 * keyboard.c (gobble_input): Fix previous change.
3513
35142008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
3515
3516 * bitmaps/README:
3517 * xfns.c:
3518 * termcap.c:
3519 * term.c:
3520 * syswait.h:
3521 * systty.h:
3522 * systime.h:
3523 * syssignal.h:
3524 * sysdep.c:
3525 * process.h:
3526 * process.c:
3527 * print.c:
3528 * ndir.h:
3529 * lread.c:
3530 * keyboard.c:
3531 * getpagesize.h:
3532 * floatfns.c:
3533 * fileio.c:
3534 * emacs.c:
3535 * doc.c:
3536 * dispnew.c:
3537 * dired.c:
3538 * data.c:
3539 * callproc.c:
3540 * buffer.c:
3541 * README:
3542 * Makefile.in:
3543 * s/template.h:
3544 * s/msdos.h:
3545 * m/vax.h: Remove VMS support.
3546 * s/vms.h:
3547 * vlimit.h:
3548 * uaf.h:
3549 * temacs.opt:
3550 * param.h:
3551 * ioctl.h: Remove file.
3552
35532008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
3554
3555 * s/ms-w32.h (MULTI_KBOARD): Remove.
3556 * xterm.c:
3557 * xselect.c:
3558 * xfns.c:
3559 * window.c:
3560 * w32term.c:
3561 * w32fns.c:
3562 * terminal.c:
3563 * termhooks.h:
3564 * term.c:
3565 * sysdep.c:
3566 * keyboard.h:
3567 * keyboard.c:
3568 * frame.h:
3569 * frame.c:
3570 * frame.c: Remove references to MULTI_KBOARD, it is now the default.
3571 * config.in: Regenerate.
3572
35732008-07-30 Jason Rumney <jasonr@gnu.org>
3574
3575 * w32font.h (struct w32font_info): Use unicode version of textmetrics.
3576
3577 * w32font.c (w32font_encode_char): Leave as unicode if in range.
3578 (w32font_open_internal): Get unicode version of textmetrics.
3579 Don't enable or disable glyph indices here.
3580 (w32font_open): Disable use of glyph indices.
3581
3582 * w32uniscribe.c (uniscribe_open): Enable use of glyph indices.
3583
35842008-07-30 Chong Yidong <cyd@stupidchicken.com>
3585
3586 * minibuf.c (Vread_buffer_function): Doc fix.
3587
35882008-07-30 John Paul Wallington <jpw@pobox.com>
3589
3590 * minibuf.c (read_buffer_completion_ignore_case): New var.
3591 (Fread_buffer): Use it.
3592
35932008-07-30 Dan Nicolaescu <dann@ics.uci.edu>
3594
3595 * systty.h (sensemode): Remove empty #if. Remove reference to
3596 BSD_TERMIOS, unused.
3597
3598 * sysdep.c: Remove reference to DGUX.
3599 (closedir): Remove reference to BROKEN_CLOSEDIR, unused.
3600
3601 * config.in: Regenerate.
3602
36032008-07-30 Jason Rumney <jasonr@gnu.org>
3604
3605 * w32uniscribe.c (uniscribe_encode_char): Fix glyph buffer size.
3606
36072008-07-29 Jason Rumney <jasonr@gnu.org>
3608
3609 * w32uniscribe.c (uniscribe_shape): Avoid using context if cache
3610 is populated.
3611 (uniscribe_encode_char): Always use uniscribe.
3612 Avoid using context if cache is populated.
3613
36142008-07-29 Jan Djärv <jan.h.d@swipnet.se>
3615
3616 * xmenu.c (Fx_menu_bar_open_internal): Use activate_item signal to
3617 open menu.
3618
3619 * gtkutil.c (menu_nav_ended): Remove.
3620 (create_menus): Remove signal connect for menu_nav_ended.
3621
36222008-07-28 Chong Yidong <cyd@stupidchicken.com>
3623
3624 * xdisp.c (redisplay_window): Check return value of
3625 compute_window_start_on_continuation_line before forcing a window
3626 start.
3627
36282008-07-28 Jason Rumney <jasonr@gnu.org>
3629
3630 * w32font.c (w32font_text_extents): Use w32_metric_cache consistently.
3631
3632 * w32term.c (w32_enable_unicode_output, cleartype_active):
3633 Remove obsolete display options.
3634 (x_draw_glyph_string_background): Don't use old cleartype_active
3635 workaround.
3636 (w32_initialize): Remove cleartype_active initialization.
3637 (syms_of_w32term): Remove w32_enable_unicode_output initialization.
3638
36392008-07-28 Andreas Schwab <schwab@suse.de>
3640
3641 * lisp.h (init_weak_hash_tables, syms_of_font)
3642 (xd_read_queued_messages, syms_of_dbusbind): Declare.
3643 (remove_hash_entry): Don't declare.
3644 * eval.c (maybe_call_debugger): Make static and move before use.
3645 * gtkutil.c: Include <X11/Xft/Xft.h> if HAVE_XFT.
3646 * xdisp.c: Include "gtkutil.h" if USE_GTK.
3647 * xterm.h (x_set_frame_alpha): Declare.
3648
36492008-07-28 Jan Djärv <jan.h.d@swipnet.se>
3650
3651 * gtkutil.c (menu_nav_ended): Revert change from 2008-07-24.
3652 (create_menus): Connect selection-done to menu_nav_ended.
3653
36542008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
3655
3656 * nsfns.m (x-create-frame): Add copy of parms argument to beginning.
3657 Set Vx_resource_name to a fallback. Replace read of 'buffered'
3658 parameter with read of 'alpha' one.
3659 (Qns_frame_parameter): Remove.
5582fbc7 3660 * nsselect.m (selection-coding-system)
aac0c6e3
MR
3661 (next-selection-coding-system, Vselection_coding_system)
3662 (Vnext_selection_coding_system): Drop.
3663
36642008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
3665
3666 * nsfns.m (do-applescript, do_applescript): Rename to
3667 ns-do-applescript, ns_do_applescript, and move within file.
3668
36692008-07-27 Dan Nicolaescu <dann@ics.uci.edu>
3670
3671 Remove support for Mac Carbon.
3672 * mactoolbox.c:
3673 * macterm.h:
3674 * macterm.c:
3675 * macselect.c:
3676 * macmenu.c:
3677 * macgui.h:
3678 * macfns.c:
3679 * mac.c: Remove file.
3680 * s/darwin.h:
3681 * m/intel386.h:
3682 * xfaces.c:
3683 * xdisp.c:
3684 * window.c:
3685 * tparam.c:
3686 * termhooks.h:
3687 * termcap.c:
3688 * term.c:
3689 * syssignal.h:
3690 * sysselect.h:
3691 * sysdep.c:
3692 * process.c:
3693 * lread.c:
3694 * lisp.h:
3695 * keyboard.c:
3696 * image.c:
3697 * fringe.c:
3698 * frame.h:
3699 * frame.c:
3700 * fontset.c:
3701 * font.h:
3702 * font.c:
3703 * fns.c:
3704 * fileio.c:
3705 * emacs.c:
3706 * dispnew.c:
3707 * dispextern.h:
3708 * config.in:
3709 * atimer.c:
2ae37cf0 3710 * Makefile.in: Remove code for Carbon.
aac0c6e3 3711
f0131492 37122008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
aac0c6e3
MR
3713
3714 * macterm.c (XDrawLine) [USE_MAC_IMAGE_IO]: Remove spurious return.
3715
37162008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3717
3718 * macterm.h (kCGBitmapByteOrder32Host): New define for
3719 non-universal SDKs.
3720
3721 * image.c (mac_create_cg_image_from_image, image_load_image_io)
3722 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
3723
3724 * macterm.c (XDrawLine, XCreatePixmapFromBitmapData)
3725 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
3726
37272008-07-26 David Robinow <drobinow@gmail.com> (tiny change)
3728
3729 * w32inevt.c: Include dispextern.h.
3730
37312008-07-26 Andreas Schwab <schwab@suse.de>
3732
3733 * print.c (print_object): Fix off-by-one in last change.
3734
37352008-07-25 Juanma Barranquero <lekktu@gmail.com>
3736
3737 * term.c (syms_of_term): Don't initialize default_orig_pair,
3738 default_set_foreground and default_set_background on Windows.
3739
37402008-07-25 Jason Rumney <jasonr@gnu.org>
3741
3742 * w32uniscribe.c (uniscribe_shape): Pass NULL for control arg to
3743 ScriptItemize. Clean up return value checking. Remove unused
3744 variables.
3745 (uniscribe_encode_char): Encode non-BMP characters with uniscribe
3746 shaping engine.
3747
3748 * w32font.c (w32font_has_char): Handle the case where we can't
3749 determine the script for a character.
3750
37512008-07-25 Chong Yidong <cyd@stupidchicken.com>
3752
3753 * term.c (syms_of_term): Initialize default_orig_pair,
3754 default_set_foreground, and default_set_background.
3755
3756 * getloadavg.c (nl): Rename to name_list to avoid ncurses.h
3757 clash (bug#86).
3758 (getloadavg): Callers changed.
3759
3760 * image.c (svg_load_image): Fix last change.
3761 (svg_load_image): Use rsvg_handle_get_dimensions to check that
3762 image size is valid. Use g_object_unref instead of deprecated
3763 rsvg_handle_free to free rsvg handle.
3764 (x_from_xcolors): Don't initialize pixmap (silence compiler).
3765
37662008-07-25 Jason Rumney <jasonr@gnu.org>
3767
3768 * w32font.c (w32font_encode_char): Encode characters outside BMP as
3769 surrogates before looking up glyph index.
3770 (w32font_text_extents): Encode as surrogates if falling back to
3771 functions that need UTF-16 wide chars.
3772
3773 * w32uniscribe.c (uniscribe_encode_char): Encode characters outside
3774 BMP as surrogates before looking up glyph index.
3775
37762008-07-25 Chong Yidong <cyd@stupidchicken.com>
3777
3778 * image.c (svg_load_image): Check for failure in return value of
3779 rsvg_handle_get_pixbuf. Free rsvg handle when done.
3780
37812008-07-25 Jason Rumney <jasonr@gnu.org>
3782
3783 * w32font.c (Fx_select_font): Reverse sense of second arg.
3784
37852008-07-24 Stefan Monnier <monnier@iro.umontreal.ca>
3786
3787 * syntax.c (struct lisp_parse_state, char_quoted, inc_bytepos)
3788 (dec_bytepos, find_defun_start): Use EMACS_INT for buffer positions.
3789
3790 * puresize.h (PURESIZE_CHECKING_RATIO): New macro.
3791 (PURESIZE): Use it.
3792
37932008-07-24 Dan Nicolaescu <dann@ics.uci.edu>
3794
3795 * m/amdx86-64.h (HAVE_LIB64_DIR): Consolidate ifdefs.
3796 * m/alpha.h (TEXT_END):
3797 * m/ibmrs6000.h (TEXT_END):
3798 * m/macppc.h (TEXT_END):
3799 * s/darwin.h (TEXT_END):
3800 * s/msdos.h (TEXT_END): Remove, unused.
3801 * s/gnu-linux.h (BSD_PGRPS): Add a comment.
3802 * s/cygwin.h: Remove comment.
3803
3804 * ecrt0.c (NODOT_GLOBAL_START): Remove code, unused.
3805 (DOT_GLOBAL_START): Remove conditional, redundant for CRT0_DUMMIES.
3806 * m/intel386.h (DOT_GLOBAL_START):
3807 * m/vax.h (DOT_GLOBAL_START): Remove, redundant with CRT0_DUMMIES.
3808 (USG): Remove, file not used on USG platforms.
3809
3810 * Makefile.in (HAVE_X11): Remove empty #else.
3811
38122008-07-24 Andreas Schwab <schwab@suse.de>
3813
3814 * fileio.c (Finsert_file_contents): Properly adjust undo list
3815 after format conversion.
3816
38172008-07-24 Jan Djärv <jan.h.d@swipnet.se>
3818
3819 * gtkutil.c (xg_get_font_name): Cast w to GTK_FONT_SELECTION_DIALOG.
3820 (menu_nav_ended): Remove.
3821 (create_menus): Remove signal connect for menu_nav_ended.
3822 (xg_update_menubar): Also take deactivate_cb as parameter, pass it to
3823 create_menus.
3824 (xg_modify_menubar_widgets): Pass deactivate_cb to xg_update_menubar.
3825
38262008-07-23 Jason Rumney <jasonr@gnu.org>
3827
3828 * w32font.c (w32_enumfont_pattern_entity): Return height consistent
3829 with opened font.
3830 (w32font_open): Set font type to gdi.
3831
3832 * w32uniscribe.c (uniscribe_open): Set font type to uniscribe.
3833
38342008-07-23 Dan Nicolaescu <dann@ics.uci.edu>
3835
3836 * s/usg5-4.h (ADDR_CORRECT): Remove, unused.
3837 * unexaix.c (ADDR_CORRECT): Remove conditional, the only user
3838 defines it.
3839 * unexec.c (ADDR_CORRECT): Define unconditionally.
3840
3841 * m/ibmrs6000.h (C_SWITCH_MACHINE): Remove.
3842
3843 * unexec.c: Remove code depending on !COFF and USG, the file is
3844 not used for such systems.
3845
3846 * s/netbsd.h (A_TEXT_OFFSET, A_TEXT_SEEK):
3847 * s/freebsd.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, unused.
3848 (LD_SWITCH_SYSTEM_1): Remove, update users.
3849
3850 * s/darwin.h (DATA_END):
3851 * m/intel386.h (DATA_END):
3852 * m/ibmrs6000.h (DATA_END):
3853 * m/alpha.h (DATA_END): Remove, unused.
3854
3855 * config.in: Regenerate.
3856 * s/ms-w32.h (subprocesses): Define unconditionally.
3857 * s/template.h (subprocesses): Update comment.
3858 * s/vms.h (subprocesses):
3859 * s/usg5-4.h (subprocesses):
3860 * s/hpux10-20.h (subprocesses):
3861 * s/gnu-linux.h (subprocesses):
3862 * s/cygwin.h (subprocesses):
3863 * s/bsd-common.h (subprocesses):
3864 * s/aix4-2.h (subprocesses):
3865 * s/darwin.h (subprocesses): Do not define, defined by default now.
3866
3867 * Makefile.in (C_SWITCH_SITE, LD_SWITCH_SITE): Remove, unused.
3868 Remove all references.
3869 (temacs): Add GNUstep specific ld flags.
3870
3871 * nsterm.m (syms_of_nsterm): Provide ns, not ns-windowing,
3872 similarly to what X does.
3873
38742008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
3875
3876 * nsfns.m (x-list-fonts): Remove.
3877 (syms_of_nsfns): Drop the x-list-fonts declaration.
3878 * nsterm.m: Get rid of remaining "//" comments.
3879
38802008-07-22 Chong Yidong <cyd@stupidchicken.com>
3881
3882 * xselect.c (Fx_rotate_cut_buffers_internal): Doc fix.
3883
3884 * nsselect.m (Fns_selection_exists_p, Fns_selection_owner_p)
3885 (Fx_get_selection_internal, Fns_rotate_cut_buffers_internal)
3886 (Fns_own_selection_internal, Fx_disown_selection_internal)
3887 (Fns_get_cut_buffer_internal, Fns_store_cut_buffer_internal):
3888
3889 * nsmenu.m (Fns_reset_menu, Fx_popup_menu): Change to use 'doc: /*
3890 ... */' style of docstrings. Doc fixes.
3891
38922008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
3893
3894 * terminfo.c (UP, BC, PC): Undo previous change.
3895
3896 * nsfns.m: Rename ns prefixed functions/variables to the
3897 corresponding x versions. Update references.
3898
38992008-07-22 Stefan Monnier <monnier@iro.umontreal.ca>
3900
3901 * syntax.c (char_quoted): Check "charpos > beg" before decrementing.
3902
39032008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
3904
3905 * nsfns.m (x_set_menu_bar_lines, x_set_tool_bar_lines):
3906 Remove forwarding functions.
3907 (ns_set_menu_bar_lines): Rename to x_set_menu_bar_lines, make
3908 non-static.
3909 (ns_set_tool_bar_lines): Rename to x_set_tool_bar_lines, make
3910 non-static.
3911 (ns_frame_parm_handlers): Use the new names.
3912 (syms_of_nsfns): Move to the end of file.
3913
3914 * nsterm.m (syms_of_nsterm): Move to the end of file.
3915
3916 * dispnew.c (init_display): Remove code for X10.
3917
39182008-07-22 Jason Rumney <jasonr@gnu.org>
3919
3920 * w32proc.c (Fw32_long_file_name): Don't append dir separator to
3921 bare drive.
3922
39232008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
3924
3925 * nsterm.m (syms_of_nsterm): Remove debugging println.
3926
39272008-07-22 David Reitter <david.reitter@gmail.com>
3928
3929 * nsfns.m (do_applescript, F_do_applescript): NS version of the
3930 Carbon implementation of the same functionality: execute arbitrary
3931 AppleScript code.
3932
39332008-07-21 Adrian Robert <Adrian.B.Robert@gmail.com>
3934
3935 * nsfns.m (Fx_create_frame, Fx_read_file_name, Fx_get_resource)
3936 (Fx_set_resource, Fx_set_alpha, Fx_server_max_request_size)
3937 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
3938 (Fx_display_mm_height, Fx_display_mm_width)
3939 (Fx_display_backing_store, Fx_display_visual_class)
3940 (Fx_display_save_under, Fx_open_connection)
3941 (Fx_close_connection, Fx_hide_emacs, Fx_font_name)
3942 (Fx_list_colors, Fx_perform_service, Fx_color_defined_p)
3943 (Fx_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
3944 (Fx_display_pixel_width, Fx_display_pixel_height)
3945 (Fx_display_usable_bounds, Fx_display_planes)
3946 (Fx_display_color_cells, Vns_icon_type_alist): Change to use 'doc: /*
3947 ... */' style of docstrings.
3948
39492008-07-21 Dan Nicolaescu <dann@ics.uci.edu>
3950
3951 * m/mips.h (LOAD_AVE_TYPE, LOAD_AVE_CVT): Do not define, not used
3952 on this platform.
3953 (mips):
3954 * m/iris4d.h (mips): Do not define.
3955 * sysdep.c (init_sys_modes): Use __mips__ instead of mips.
3956
3957 * m/ibmrs6000.h (LD_SWITCH_SITE): Remove.
3958
3959 * image.c:
3960 * nsfns.m:
3961 * nsselect.m:
3962 * nsterm.h:
3963 * nsterm.m: Rename ns prefixed functions/variables to the
3964 corresponding x versions. Update references.
3965
3966 * m/ibms390x.h (NO_REMAP): Do not undefine.
3967
3968 * m/amdx86-64.h: Use SOLARIS2 instead of sun.
3969
39702008-07-21 Chong Yidong <cyd@stupidchicken.com>
3971
3972 * nsfns.m: Change NS to Nextstep in docstrings and error messages.
3973 (Fns_create_frame, Fns_read_file_name, Fns_get_resource)
3974 (Fns_set_resource, Fns_set_alpha, Fns_server_max_request_size)
3975 (Fns_server_vendor, Fns_server_version, Fns_display_screens)
3976 (Fns_display_mm_height, Fns_display_mm_width)
3977 (Fns_display_backing_store, Fns_display_visual_class)
3978 (Fns_display_save_under, Fns_open_connection)
3979 (Fns_close_connection, Fns_hide_emacs, Fns_font_name)
3980 (Fns_list_colors, Fns_perform_service, Fns_color_defined_p)
3981 (Fns_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
3982 (Fns_display_pixel_width, Fns_display_pixel_height)
3983 (Fns_display_usable_bounds, Fx_display_planes)
3984 (Fns_display_color_cells, Vns_icon_type_alist): Doc fixes.
3985
39862008-07-21 Ami Fischman <ami@fischman.org> (tiny change)
3987
3988 * print.c (print_object): Check print_depth before searching for
3989 circularities.
3990
39912008-07-21 Michael Albinus <michael.albinus@gmx.de>
3992
3993 * dbusbind.c (Fdbus_register_signal): Use sprintf + strcat instead
3994 only sprintf.
3995
39962008-07-21 Kenichi Handa <handa@m17n.org>
3997
3998 * ftfont.c (adjust_anchor): Check if DeltaValue is not NULL.
3999
40002008-07-20 Andreas Schwab <schwab@suse.de>
4001
4002 * syntax.c (find_start_pos, find_start_value)
4003 (find_start_value_byte, find_start_begv, find_defun_start)
4004 (back_comment, scan_sexps_forward): Use EMACS_INT for buffer positions.
4005
40062008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
4007
4008 * s/sol2-3.h: Insert contents of s/sol2.h.
4009 (LD_SWITCH_SYSTEM): Remove redundant definition.
4010 * s/sol2.h: Remove, unused.
4011
40122008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
4013
4014 * nsterm.m (ns_get_color): Recognize HSB,AHSB be synonyms for HSV,AHSV.
4015
40162008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
4017
4018 * Makefile.in (ns_appdir): Fix typo in find command.
4019
40202008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
4021
4022 * m/intel386.h (NO_REMAP): Do no define for USG, not used.
4023
4024 * s/usg5-4.h (LIBS_SYSTEM): Remove, system for which this was
4025 added not supported anymore.
4026
4027 * s/usg5-4-2.h (LIBS_SYSTEM):
4028 * s/sol2.h (LIBS_SYSTEM): Do not undefine.
4029
4030 * s/netbsd.h (GETPGRP_NO_ARG, N_TRELOFF):
4031 * s/lynxos.h (GETPGRP_NO_ARG):
4032 * s/hpux10-20.h (NO_SIOCTL_H):
4033 * s/gnu.h (GETPGRP_NO_ARG):
4034 * s/gnu-linux.h (NO_SIOCTL_H):
4035 * s/freebsd.h (GETPGRP_NO_ARG, N_TRELOFF):
4036 * s/cygwin.h (GETPGRP_NO_ARG):
4037 * s/irix6-5.h (LIBS_SYSTEM, GETPGRP_NO_ARG): Remove, unused.
4038 (C_DEBUG_SWITCH): Remove duplicate definition.
4039
4040 * m/ibms390.h: Remove boilerplate comments.
4041
4042 * sysdep.c (closedir): Use SOLARIS2 instead of sun && USG5_4.
4043
4044 * process.c (HAVE_SERIAL): Consolidate ifdefs.
4045 (wait_reading_process_output): Remove code for SunOS, platform not
4046 supported anymore. Use SOLARIS2 instead of sun.
4047
40482008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
4049
4050 * font.c (font_open_by_name): Under NS, default lface height to zero.
4051 (font_open_for_lface): Under NS, set size based on frame fontsize.
4052 * nsterm.m (EmacsView-changeFont:): Remove some commented code.
4053 * frame.c (x_set_frame_parameters): Remove HAVE_NS ifdef.
4054
40552008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
4056
4057 * nsterm.m (ns_antialias_text, ns_use_qd_smoothing)
4058 (ns_use_system_highlight_color): Switch these from DEFVAR_BOOL to
4059 DEFVAR_LISP and change all code accordingly to use Qt/Qnil instead of
4060 YES/NO.
4061 * nsterm.h (prevUseHighlightColor): Make a Lisp_Object.
4062 * nsfont.m (nsfont_draw): Treat ns_use_qd_smoothing as Lisp_Object.
4063 * Makefile.in (clean): Clear out build destination dir.
4064
40652008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
4066
4067 * Makefile.in (nsgui.h-related dependencies): Remove abbrev, xfns,
4068 xterm, xselect.
4069 * lisp.h: Remove declaration of hash_remove.
4070 * nsgui.h: Remove redefinitions of hash_remove.
4071 * fns.c (hash_remove): Rename to hash_remove_from_table.
4072
40732008-07-19 Seiji Zenitani <zenitani@mac.com>
4074
4075 * nsfont.m (nsfont_fmember_to_entity, nsfont_make_fontset_for_font):
4076 strdup() the family UTF8String before modifying it.
4077
40782008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
4079
4080 * nsterm.m (ns_maybe_dumpglyphs_background): Compare result from
4081 NS_FACE_BACKGROUND with 0 instead of nil.
4082 * nsfont.m (nsfont_draw): Same.
4083
40842008-07-19 Chong Yidong <cyd@stupidchicken.com>
4085
4086 * nsfns.m (ns_set_background_color): Fix crash.
4087
40882008-07-18 Chong Yidong <cyd@stupidchicken.com>
4089
4090 * Makefile.in (SOME_MACHINE_LISP): Remove ns-carbon-compat.elc.
4091
40922008-07-18 Dan Nicolaescu <dann@ics.uci.edu>
4093
4094 * puresize.h (BASE_PURESIZE): Increase to 1240000.
4095
40962008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4097
4098 * gtkutil.c: Include <config.h> instead of "config.h".
4099
4100 * lisp.h (Foverlay_buffer): Add EXFUN.
4101
4102 * process.c (create_process) [!WINDOWSNT && FD_CLOEXEC]: Wait for
4103 child process to complete child_setup. Undo 2005-09-21 change.
4104
4105 * s/darwin.h: Mention setsid after vfork.
4106
41072008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4108
4109 * Makefile.in (frame.o, keyboard.o, xdisp.o, xfaces.o):
4110 Depend on macgui.h.
4111
4112 * macfns.c (Fx_server_version): Don't use gestaltSystemVersionMajor,
4113 gestaltSystemVersionMinor, or gestaltSystemVersionBugFix.
4114
4115 * macterm.c (keycode_to_xkeysym_table): Add entries for f17, f18,
4116 and f19.
4117 [MAC_OSX] (fn_keycode_to_keycode_table): Likewise.
4118
4119 * macterm.h (gestaltSystemVersionMajor, gestaltSystemVersionMinor)
4120 (gestaltSystemVersionBugFix) [MAC_OS_X_VERSION_MAX_ALLOWED < 1040]:
4121 Remove enumerators.
4122
4123 * mactoolbox.c [USE_MAC_TSM] (mac_handle_text_input_event):
4124 Check if FACE_FROM_ID returns NULL.
4125
41262008-07-17 David Robinow <drobinow@gmail.com> (tiny change)
4127
4128 * w32inevt.c (change_frame_size): Remove extern declaration.
4129 (resize_event, maybe_generate_resize_event): Pass SAFE arg to
4130 change_frame_size.
4131
41322008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
4133
4134 * getloadavg.c: Revert last change (2008-07-15).
4135
41362008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
4137
4138 * Makefile.in: Replace emacsapp, emacsbindir, emacsappsrc variables
4139 set here with ns_appdir, ns_appresdir, ns_appbindir, ns_appsrc) set
4140 from configure.
4141
41422008-07-17 Dan Nicolaescu <dann@ics.uci.edu>
4143
4144 * s/sol2.h:
4145 * s/sol2-4.h: Reorganize conditionals.
4146
4147 * ecrt0.c: Remove code depending on m68000, not used anymore.
4148
4149 * fns.c (hash_remove): Make static.
4150 * lisp.h (hash_remove): Don't prototype.
4151
4152 * m/ibmrs6000.h:
4153 * m/ibms390x.h:
4154 * m/macppc.h: Remove boilerplate comments.
4155
4156 * m/sparc.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, only used on
4157 Solaris, which does not need them.
4158
4159 * m/vax.h: Remove comments about unsupported systems.
4160
4161 * s/darwin.h: Reorganize ifdefs.
4162
41632008-07-17 Andreas Schwab <schwab@suse.de>
4164
4165 * s/cygwin.h (LIB_STANDARD_LIBSRC): Don't define.
4166
41672008-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
4168
4169 Use SDATA. Follow coding convention of placing operators at
4170 beginning of next line rather than end of previous line, and placing
4171 spaces around infix operators.
4172
4173 * Makefile.in: Undef LIB_STANDARD before defining it to silence warning
4174 in case it was defined already.
4175 USE @GNUSTEP_MAKEFILES@ rather than envvars.
4176 * nsterm.m (ns_term_init): Pass Qt and Qnil rather than YES/NO to
4177 ns_default.
4178 (applicationShouldTerminate, setValuesFromPanel): Use EQ to compare
4179 Lisp_Objects.
4180 * nsterm.h (Fx_display_grayscale_p, Fx_display_planes)
4181 (ns_defined_color, ns_color_to_lisp): Declare.
4182 * nsselect.m (ns_handle_selection_request, ns_handle_selection_clear)
4183 (Fns_own_selection_internal): Make the big ugly hack more explicit, so
4184 it's accepted even with USE_LISP_UNION_TYPE.
4185 * nsmenu.m (ns_update_menubar): Use EQ to compare Lisp_Objects.
4186 (update_frame_tool_bar): Remove apparently obsolete tests for
4187 non-integerness of f->tool_bar_lines.
4188 (windowShouldClose, addButton, clicked, runDialogAt): Make the big ugly
4189 hack more explicit, so it's accepted even with USE_LISP_UNION_TYPE.
4190 * nsfont.m (nsfont_driver): Use just 0 rather than an invalid cast.
4191 (nsfont_open): Don't confuse NULL for Qnil.
4192 * nsfns.m (ns_implicitly_set_icon_type): Use EQ to compare Lisp_Objects.
4193 * menu.h (find_and_call_menu_selection):
4194 * menu.c (find_and_call_menu_selection): Use just int for vector size.
4195 (find_and_return_menu_selection): Always return something.
4196 * frame.h: Include dispextern.h for Display_Info.
4197 (display_x_get_resource): Declare.
4198
41992008-07-16 Adrian Robert <Adrian.B.Robert@gmail.com>
4200
4201 * syntax.c: Remove stdio.h include accidentally introduced in
4202 Emacs.app commit.
4203 * Makefile.in: Change GNUSTEP to NS_IMPL_GNUSTEP, COCOA to
4204 NS_IMPL_COCOA.
4205 * keyboard.c (handle_async_input, input_available_signal): Remove
4206 BSD4_1 conditional code, introduced accidentally in Emacs.app commit.
4207
42082008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
4209
4210 * nsterm.m (lisp_to_mod): Use parse_solitary_modifier instead.
4211 (ns_lisp_to_color): Don't mess with internal Lisp data fields.
4212 (ns_term_init, ns_term_shutdown, initFrameFromEmacs, ns_list_fonts):
4213 Use SDATA.
4214
4215 * keymap.c: Remove all NS-specific code.
4216 (where_is_preferred_modifier, Vwhere_is_preferred_modifier): New vars.
4217 (preferred_sequence_p): Rename from ascii_sequence_p; pay attention to
4218 where_is_preferred_modifier, return a different value depending on how
4219 preferred is the binding.
4220 (where_is_internal): Adjust accordingly.
4221 (Fwhere_is_internal): Refresh where_is_preferred_modifier.
4222 Adjust to new preferred_sequence_p.
4223 (syms_of_keymap): Declare `where-is-preferred-modifier'.
4224 * keyboard.c (parse_solitary_modifier): Not static any more.
4225 * keyboard.h (parse_solitary_modifier): Declare.
4226
42272008-07-16 Andreas Schwab <schwab@suse.de>
4228
4229 * Makefile.in (SOME_MACHINE_LISP): Remove easy-mmode, fix spelling
4230 of easymenu.
4231
42322008-07-16 Chong Yidong <cyd@stupidchicken.com>
4233
4234 * xdisp.c (move_it_in_display_line): Account for word wrap, so
4235 that we don't move off the line.
4236
42372008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
4238
4239 * keyboard.c (Qsuper): Remove.
4240 (parse_menu_item): Don't call where_is_internal specially for NS.
4241
42422008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
4243
4244 * s/gnu-linux.h: Remove boilerplate comments.
4245
4246 * m/alpha.h (__ELF__): Consolidate conditions.
4247
4248 * m/m68k.h (linux): Use GNU_LINUX instead.
4249 Remove boilerplate comments.
4250
4251 * m/intel386.h: Undo refactoring from previous change.
4252 (LIB_STANDARD): All systems that define USG define LIB_STANDARD
4253 too, remove dead code.
4254 (linux): Use GNU_LINUX instead.
4255
42562008-07-16 Jason Rumney <jasonr@gnu.org>
4257
4258 * w32gui.h: Repeat 26 June changes lost by last change.
4259
42602008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
4261
4262 * systty.h: Remove code for Aix on 386, unsupported platform.
4263
4264 * s/ms-w32.h: Remove boilerplate comments.
4265 (fcloseall, fgetchar, flushall, fputchar, getw, putw): Remove, unused.
4266
4267 * s/gnu-linux.h (TERM): Remove support.
4268 (HAVE_SYSVIPC): Remove, unused.
4269 (A_TEXT_OFFSET, A_TEXT_SEEK, ADJUST_EXEC_HEADER): Remove, not used
4270 for this system.
4271
4272 * process.c: Remove support for IRIS, unused.
4273 Remove support for TERM, not relevant anymore.
4274
4275 * unexalpha.c (DEFAULT_ENTRY_ADDRESS): Remove, replace the only
4276 used with the definition.
4277
4278 * s/aix4-2.h (static): Do not undef.
4279
4280 * m/ibmrs6000.h: Remove code depending on USG5_4, this file is
4281 only used on Aix.
4282 (HAVE_SYSVIPC): Remove, unused.
4283
4284 * m/hp800.h (CANNOT_DUMP): Do not undef.
4285
4286 * m/alpha.h: Fix comment.
4287
4288 * s/usg5-4.h (HAVE_SYSVIPC): Remove, unused.
4289 (USG_SHARED_LIBRARIES): Remove, only used in unexec.c which is not
4290 used by this configuration.
4291 * emacs.c: Remove code depending on USG_SHARED_LIBRARIES.
4292 * unexec.c: Remove code depending on HPUX and
4293 USG_SHARED_LIBRARIES, not used with this file. Remove code
4294 depending on IRIS, unused. Remove if 0-ed code.
4295
4296 * s/template.h: Remove comments about static.
4297
4298 * sysdep.c: Remove code depending on NEED_PTEM_H, unused.
4299 Remove if 0-ed code.
4300 (baud_convert): Don't depend on BAUD_CONVERT, all definitions the
4301 were the same as the default.
4302 * s/vms.h (BAUD_CONVERT): Remove, same as the default.
4303 Remove boilerplate comments.
4304 * s/hpux10-20.h (BAUD_CONVERT): Remove, same as the default.
4305 (HAVE_SYSVIPC): Remove, unused.
4306 (LD_SWITCH_SYSTEM_TEMACS): Simplify, hp9000s700 not supported anymore.
4307
4308 * m/ia64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
4309 Remove boilerplate comments.
4310 * m/amdx86-64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
4311 Remove boilerplate comments.
4312 * m/ibms390x.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
4313 Remove boilerplate comments.
4314 * lisp.h (PNTR_COMPARISON_TYPE): Define it unconditionally.
4315
4316 * m/intel386.h (DATA_SEG_BITS): Remove definitions, only used on
4317 USG systems which do not use DATA_SEG_BITS.
4318 Refactor code. Remove boilerplate comments.
4319
4320 * m/ibms390.h:
4321 * m/m68k.h:
4322 * s/bsd-common.h:
4323 * s/cygwin.h:
4324 * s/darwin.h:
4325 * s/freebsd.h:
4326 * s/gnu.h:
4327 * s/msdos.h: Remove boilerplate comments.
4328
4329 * m/iris4d.h: Remove boilerplate comments and code for systems that
4330 do not use this file.
4331 (IRIS_4D): Remove, unused.
4332
4333 * m/mips.h: Remove boilerplate comments and code for systems that
4334 do not use this file.
4335 (SIGN_EXTEND_CHAR):
4336 * m/arm.h (SIGN_EXTEND_CHAR): Remove, unused.
4337 * unexmips.c: Remove file, unused.
4338
4339 * editfns.c (Fuser_full_name): Replace the only use of
4340 USER_FULL_NAME with its value.
4341 * config.in: Regenerate.
4342
43432008-07-16 David Reitter <david.reitter@gmail.com>
4344
4345 * Makefile.in: Add ns-win, ns-carbon-compat, easy-mmode and
4346 easy-menu to SOME_MACHINE_LISP for the new NeXTstep port.
4347
43482008-07-16 Glenn Morris <rgm@gnu.org>
4349
4350 * emacs.c (system-type): Doc fix.
4351
43522008-07-15 Stefan Monnier <monnier@iro.umontreal.ca>
4353
4354 * keyboard.c (parse_menu_item): Don't use cachelist, even under NS.
4355 If the cache doesn't work, let's fix it, rather than work around it.
4356
43572008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
4358
4359 * Makefile.in: Correct additions for nsfont.o in last commit.
4360 * nsfont.m: New file (forgot last commit).
4361
43622008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
4363
4364 * callproc.c (set_initial_environment): Initialize
4365 Vprocess_environment under CANNOT_DUMP (fixes crash when
4366 batch-compiling for bootstrap).
4367
43682008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
4369 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4370
4371 (make_initial_frame): Call init_frame_faces(f) in CANNOT_DUMP case --
4372 fix crash due to different init order.
4373
43742008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
4375
4376 Changes and additions for NeXTstep windowing system (Cocoa and
4377 GNUstep) support.
4378
4379 * Makefile.in:
4380 * config.in: Support defines and build commands for NS port.
4381 * blockinput.h (BLOCK_INPUT, UNBLOCK_INPUT, TOTALLY_UNBLOCK_INPUT)
4382 (UNBLOCK_INPUT_TO): Don't use under NS unless EXPERIMENTAL_CONTROL_G.
4383 * dispextern.h: Include nsgui.h and add needed typedefs under NS
4384 windowing.
4385 (struct face): Add synth_ital field.
4386 * dispnew.c: Include nsterm.h when compiling under NS windowing.
4387 (init_display): Initialize Vinitial_window_system to "ns" when so
4388 compiled.
4389 * emacs.c: Include GSConfig.h when compiling under GNUstep.
4390 (display_arg): Use under NS.
4391 (main): Under NS, allocate autorelease pool and handle command line
4392 args. Move syms_of_xmenu() call under #ifdef HAVE_X_WINDOWS.
4393 (standard_args): Add NS-specific args.
4394 (shut_down_emacs): Shut down NS terminal if compiled under NS.
4395 * font.c (DEFAULT_ENCODING): New variable.
4396 (font_find_for_lface): Use it.
4397 (syms_of_font): Load syms_of_nsfont under NS.
4398 * font.h: Declare nsfont_driver when compiled under NS.
4399 * fontset.c: When compiling under NS, include nsterm.h.
4400 (fontset_from_font): Autoconstruct fontset under NS.
4401 * frame.c (various): Under NS, include nsterm.h, add Qns window system
4402 symbol, document and use it.
4403 (do_switch_frame): When for_deletion under Cocoa, add
4404 Fraise_frame(Qnil).
4405 (x_set_frame_parameters): Ensure font attribute changes are picked up.
4406 (x_get_arg): Allow "yes" and "no" as boolean values.
4407 (syms_of_frame): Declare Qns. Init Vdefault_frame_scroll_bars to
4408 Qright under Cocoa.
4409 (focus-follows-mouse): Default to 0 under NS.
4410 * frame.h (enum output_method): Add output_ns.
4411 (external_tool_bar, external_menu_bar, FRAME_EXTERNAL_TOOLBAR)
4412 (FRAME_EXTERNAL_MENU_BAR): Use under NS.
4413 (FRAME_WINDOW_P): NS-specific definition.
4414 * fringe.c (max_used_fringe_bitmap): Make public.
4415 * getloadavg.c (mach/mach.h): Include it under NeXT descendant OS's.
4416 (getloadavg): Use NeXT code under descendant OS's.
4417 * image.c (includes and header section, x_create_bitmap_from_data)
4418 (x_create_bitmap_from_file, free_bitmap_record, image_background)
4419 (image_background_transparent, x_clear_image_1)
4420 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
4421 (Create_Pixmap_From_Bitmap_Data, xpm_load_image, lookup_rgb_color)
4422 (x_to_xcolors, x_from_xcolors, x_disable_image)
4423 (x_build_heuristic_mask, syms_of_image): Add NS support parallel to
4424 other GUIs, including XPM support using code originally written for
4425 Carbon GUI.
4426 (png_load, jpeg_load, tiff_load, gif_load): Add implementations
4427 using NS API.
4428 (image_ascent): Use font metrics macros instead of direct struct field
4429 access.
4430 * keyboard.c (includes): Add nsterm.h when compiling under NS.
4431 (kbd_buffer_get_event): Handle NS as other GUI windowing systems.
4432 Also, handle NS as GTK for menu bar purposes.
4433 (make_lispy_event): Handle NS as other GUI windowing systems, and as X
4434 toolkit where they differ.
4435 (parse_menu_item): Prefer keybindings using 'super' modifier. Also,
4436 use cachelist, still needed under NS.
4437 * keyboard.h (ENCODE_MENU_STRING, XtPointer, Boolean): Handle as NTGUI.
4438 (struct widget_value): Define it here for menu.c.
4439 * keymap.c (includes): Include modifier internals.
4440 (lisp_to_mod, modifier_sequence_p): New functions, compiled only under
4441 NS.
4442 (where_is_internal, Fwhere_is_internal): When compiled under NS, add
4443 support for preferring sequences using certain modifiers, specified by
4444 the FIRSTONLY argument.
4445 * lisp.h (hash_remove): Rename to avoid name clash when compiling
4446 under NS GNUstep implementation.
4447 (USE_LSB_TAG): Use it under Cocoa when compiling under NS.
4448 * lread.c (init_lread): Treat NS as HAVE_CARBON for turn_off_warning.
4449 * menu.c: Include nsterm.h under NS.
4450 (single_menu_item, parse_single_submenu, xmalloc_widget_value)
4451 (free_menubar_widget_tree_value, update_submenu_strings)
4452 (find_and_call_menu_selection): Treat NS as X and NT.
4453 (find_and_return_menu_selection): New function, used for popup menus.
4454 * nsgui.h:
4455 * nsterm.h:
4456 * nsfns.m:
4457 * nsimage.m:
4458 * nsmenu.m:
4459 * nsselect.m:
4460 * nsterm.m: New files.
4461 * process.c (wait_reading_process_output): Under NS, call ns_select()
4462 instead of plain select().
4463 * syntax.c (char_quoted): Under NS, avoid a crash when called near
4464 beginning of buffer.
4465 * sysselect.h (init_process): Rename when compiling under Cocoa to
4466 avoid name conflict.
4467 * termhooks.h (display_info): Add ns_display_info to union.
4468 * terminal.c (Fterminal_live_p): Add ns to terminal types.
4469 * terminfo.c (UP, BC, PC): Don't declare when compiling under NS in
4470 COCOA environment.
4471 * unexnext.c: Update to work with mach API on Mac OS X, and to use new
4472 unexec() signature. (Note, this will dump, but the resulting file
4473 crashes; unexosx is used instead; keeping around for reference and
4474 possible aid in getting dump working under GNUstep.)
4475 * w32gui.h (button_type, widget_value): Remove definitions (now in
4476 keyboard.h).
4477 * window.c: Include nsterm.h when compiling under NS.
4478 * xdisp.c (includes): Include nsterm.h when compiling under NS.
4479 (set_frame_menubar, update_menu_bar, display_menu_bar): Handle NS as
4480 other GUI windowing systems.
4481 (update_tool_bar, redisplay_tool_bar, redisplay_window): Handle NS as
4482 GTK.
4483 (x_consider_frame_title): Under NS, set icon type and frame
4484 modified-state indicator; use ns_set_name_as_filename() when using
4485 formatted title.
4486 (update_window_cursor): Make public when compiling under NS.
4487 (display_hourglass_p, syms_of_xdisp, hourglass_shown_p)
4488 (hourglass_atimer, Vhourglass_delay
4489 * xfaces.c (header section, init_frame_faces, clear_font_table)
4490 (defined_color, unload_color, x_face_list_fonts)
4491 (prepare_face_for_display): Add NS support parallel to other GUIs.
4492 Emulate GCs like other non-X GUIs.
4493 (split_font_name): Don't lowercase font name under NS.
4494 (merge_face_ref, Finternal_set_lisp_face_attribute): Support stippling
4495 under NS.
4496 * s/darwin.h: Add support for compilation under NS.
4497
44982008-07-15 Jason Rumney <jasonr@gnu.org>
4499
4500 * w32fns.c (Fx_create_frame): Remove duplicate unwind_protect.
4501 (w32_show_hourglass): Rename from show_hourglass.
4502 (w32_hide_hourglass): Rename from hide_hourglass.
4503 (DEFAULT_HOURGLASS_DELAY): Revert from last change.
4504 (Vhourglass_delay): Declare extern.
4505 (hourglass_started): Remove.
4506
4507 * xdisp.c (Vhourglass_delay): Remove static.
4508 (hourglass_started, start_hourglass, cancel_hourglass):
4509 Don't include these versions on WINDOWSNT.
4510
45112008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
4512
4513 * dispextern.h (hourglass_shown_p, hourglass_atimer): New extern
4514 variables (formerly in xfns.c).
4515 (show_hourglass, hide_hourglass): New prototypes (same).
4516 * xdisp.c (display_hourglass_p, hourglass_shown_p, hourglass_atimer)
4517 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY): New variables (formerly
4518 in xfns.c).
4519 (syms_of_xdisp): Declare/initialize display-hourglass,
4520 hourglass-delay. Initialize hourglass_atimer, hourglass_shown_p.
4521 (hourglass_started, start_hourglass, cancel_hourglass): New functions,
4522 formerly in xfns.c.
4523 * xfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
4524 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
4525 (start_hourglass, cancel_hourglass): Remove.
4526 (show_hourglass, hide_hourglass): Remove prototypes and static
4527 modifiers.
4528 (syms_of_xfns): Remove display-hourglass, hourglass-delay,
4529 hourglass_atimer, hourglass_shown_p declaration/initialization.
4530 * macfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
4531 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
4532 (start_hourglass, cancel_hourglass): Remove.
4533 (show_hourglass, hide_hourglass): Remove prototypes and static
4534 modifiers.
4535 (syms_of_macfns): Remove display-hourglass, hourglass-delay,
4536 hourglass_atimer, hourglass_shown_p declaration/initialization.
4537 * w32fns.c (display_hourglass_p, Vhourglass_delay)
4538 (DEFAULT_HOURGLASS_DELAY): Remove.
4539 (syms_of_w32fns): Remove display-hourglass, hourglass-delay,
4540 hourglass_shown_p declaration/initialization.
4541
45422008-07-14 Jason Rumney <jasonr@gnu.org>
4543
4544 * w32fns.c (w32_get_arg): Remove wrapper function.
4545 (w32_createwindow, x_icon, x_create_tip_frame): Use x_get_arg
4546 directly.
4547 (Fx_create_frame): Sync with xfns.c. Use x_get_arg directly.
4548
45492008-07-14 Kenichi Handa <handa@m17n.org>
4550
4551 * xfont.c (xfont_open): Add workaround for X's bug.
4552
45532008-07-14 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
4554
4555 * fontset.c: Include <stdio.h> unconditionally.
4556
45572008-07-13 Michael Albinus <michael.albinus@gmx.de>
4558
4559 * dbusbind.c (Fdbus_register_signal): Allow also signal arguments
4560 for filtering.
4561
45622008-07-13 Dan Nicolaescu <dann@ics.uci.edu>
4563
4564 * s/vms.h: Use __GNUC__ instead of _GNUC_.
4565
4566 * m/macppc.h:
4567 * m/alpha.h: Use GNU_LINUX instead of LINUX. Reorganize conditionals.
4568
4569 * m/ibms390x.h (XINT, XUINT): Don't define, same as the default
4570 (SPECIAL_EMACS_INT):
4571 * m/ia64.h (SPECIAL_EMACS_INT):
4572 * m/amdx86-64.h (SPECIAL_EMACS_INT):
4573 * s/gnu.h (NLIST_STRUCT):
4574 * s/aix4-2.h (X11R5_INHIBIT_I18N):
4575 * s/gnu-linux.h (LINUX):
4576 * s/msdos.h (HAVE_FACES):
4577 * s/ms-w32.h (HAVE_FACES): Don't define, unused.
4578
4579 * systty.h:
4580 * sysdep.c (setup_pty): Don't depend on SYSV_PTYS, it is not used
4581 anymore.
4582
45832008-07-12 Dan Nicolaescu <dann@ics.uci.edu>
4584
4585 * syswait.h: Remove old if 0 code. Do not define WAITTYPE, it was
4586 always defined as int.
4587
4588 * s/netbsd.h (HAVE_UNION_WAIT, HAVE_WAIT_HEADER, WAIT_USE_INT):
4589 * s/gnu.h (HAVE_WAIT_HEADER, WAIT_USE_INT, HAVE_UNION_WAIT):
4590 * s/gnu-linux.h (HAVE_WAIT_HEADER):
4591 * s/freebsd.h (HAVE_WAIT_HEADER):
4592 * s/bsd-common.h (HAVE_UNION_WAIT):
4593 * s/aix4-2.h (HAVE_WAIT_HEADER):
4594 * m/mips.h (HAVE_UNION_WAIT):
4595 * s/usg5-4.h (HAVE_WAIT_HEADER, WAITTYPE): Do not define, not used.
4596 (COFF, static): Do not define, they are undefined later in the file.
4597
4598 * process.c (update_status): Don't use a union.
4599 (status_convert):
4600 (sigchld_handler): Use int instead of WAITTYPE.
4601
46022008-07-12 Chong Yidong <cyd@stupidchicken.com>
4603
4604 * indent.c (Fvertical_motion): Restore hscroll before moving to
4605 goal column.
4606
46072008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
4608
4609 * lisp.h: Remove left over code.
4610
46112008-07-11 Andreas Schwab <schwab@suse.de>
4612
4613 * lisp.h: Fix logic in last change.
4614
4615 * menu.h: New file.
4616 * menu.c: Include it.
4617 * xmenu.c: Likewise.
4618 * Makefile.in: Update dependencies.
4619
46202008-07-11 Kenichi Handa <handa@m17n.org>
4621
4622 * fontset.c (fontset_from_font): Cancel the previous change.
4623
46242008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
4625
4626 * lisp.h:
4627 * w32heap.c:
4628 * emacs.c:
4629 * alloc.c: Replace all references of NO_UNION_TYPE with
4630 USE_LISP_UNION_TYPE.
4631
4632 * m/xtensa.h (NO_UNION_TYPE):
4633 * m/vax.h (NO_UNION_TYPE):
4634 * m/template.h (NO_UNION_TYPE):
4635 * m/sparc.h (NO_UNION_TYPE):
4636 * m/mips.h (NO_UNION_TYPE):
4637 * m/macppc.h (NO_UNION_TYPE):
4638 * m/m68k.h (NO_UNION_TYPE):
4639 * m/iris4d.h (NO_UNION_TYPE):
4640 * m/intel386.h (NO_UNION_TYPE):
4641 * m/ibms390x.h (NO_UNION_TYPE):
4642 * m/ibms390.h (NO_UNION_TYPE):
4643 * m/ibmrs6000.h (NO_UNION_TYPE):
4644 * m/ia64.h (NO_UNION_TYPE):
4645 * m/hp800.h (NO_UNION_TYPE):
4646 * m/arm.h (NO_UNION_TYPE):
4647 * m/amdx86-64.h (NO_UNION_TYPE):
4648 * m/alpha.h (NO_UNION_TYPE): Remove definition, all platform were
4649 defining it the same.
4650
46512008-07-10 Chong Yidong <cyd@stupidchicken.com>
4652
4653 * xdisp.c (move_it_to): Backtrack if past the edge of a wrapped line.
4654
46552008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
4656
4657 * fileio.c:
4658 * sysdep.c
4659 * systty.h:
4660 * m/ibmrs6000.h:
4661 * m/iris4d.h:
4662 * s/aix4-2.h:
4663 * s/freebsd.h:
4664 * s/gnu-linux.h:
4665 * s/hpux10-20.h:
4666 * s/hpux11.h:
4667 * s/netbsd.h:
4668 * s/sol2-3.h:
4669 * s/sol2-4.h:
4670 * s/sol2.h:
4671 * s/usg5-4.h:
4672 * s/vms.h: Remove references to unused variables.
4673
46742008-07-10 Andreas Schwab <schwab@suse.de>
4675
4676 * ftfont.c (ftfont_resolve_generic_family): Remove foundry from
4677 pattern before matching the generic family.
4678
46792008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
4680
4681 * unexec.c:
4682 * s/vms.h:
4683 * s/usg5-4-2.h:
4684 * s/sol2-5.h:
4685 * s/freebsd.h:
4686 * s/darwin.h: Remove dead code.
4687
4688 * m/template.h:
4689 * m/sparc.h:
4690 * m/mips.h:
4691 * m/m68k.h:
4692 * m/iris4d.h:
4693 * m/intel386.h:
4694 * m/ibms390x.h:
4695 * m/ibms390.h:
4696 * m/ia64.h:
4697 * m/hp800.h:
4698 * m/arm.h:
4699 * m/amdx86-64.h: Remove dead code and references to unused
4700 and compiler defined symbols.
4701
4702 * unexmips.c:
4703 * unexelf.c: Remove references to desupported systems.
4704
4705 * m/powermac.h: Remove file, it is now identical to m/macppc.h.
4706
4707 * m/powermac.h: Remove boilerplate comments.
4708 (NO_REMAP): Remove unused definition.
4709
4710 * m/macppc.h (UNEXEC, NO_TERMIO): Don't define, the s/ files
4711 define them.
4712
47132008-07-10 Kenichi Handa <handa@m17n.org>
4714
4715 * xfont.c (xfont_open): Log the reason of failure.
4716
47172008-07-09 Stefan Monnier <monnier@iro.umontreal.ca>
4718
4719 * fontset.c (fontset_get_font_group):
4720 * font.c (font_check_otf): Specify argument types.
4721
47222008-07-09 Kenichi Handa <handa@m17n.org>
4723
4724 * coding.c (detect_coding_utf_8): Set detect_info->found only when
4725 non-ASCII char is found.
4726
4727 * fontset.c (fontset_compare_rfontdef): Fix plus/minus.
4728 (reorder_font_vector): Change the arg preferred_family to font.
4729 Prefer the spec matching with font.
4730 (fontset_get_font_group): New function.
4731 (fontset_find_font): Change the format of an element of a realized
4732 fontset. Use fontset_get_font_group.
4733 (fontset_font): Try the current fontset, the default fontset, the
4734 fallbacks of the current fontset, and the fallbacks of the default
4735 fontset in this order.
4736 (face_for_char): Delete the shortcut to use the current font.
4737 (fontset_from_font): Don't set fonts for Latin in the fontset.
4738
4739 * font.h (font_make_object, font_match_p): Adjust prototypes.
4740
4741 * ftfont.h [FT_BDF_H]: Include FT_BDF_H.
4742
4743 * font.c (font_make_object): New arg entity and pixelsize.
4744 (font_check_otf_features, font_check_otf): New functions.
4745 (font_match_p): Check :lang, :script, and :otf properties.
4746
4747 * xfont.c (xfont_open): Adjust it for the change of
4748 font_make_object.
4749 (xfont_text_extents): Fix initial setting of metrics.
4750
4751 * ftfont.c (struct ftfont_info): New member index, delete member
4752 fc_charset_idx. Make the member order compatible with struct
4753 xftfont_info.
4754 (fc_charset_table): Change charset names to registry names.
4755 (ftfont_pattern_entity): Delete the args registry and
4756 fc_charset_idx. Change the value of :font-entity property
4757 to (FONTNAME . INDEX). Always set :registry property to
4758 `iso10646-1'.
4759 (struct ftfont_cache_data): New struct.
4760 (ftfont_lookup_cache): New arg for_face.
4761 (ftfont_get_fc_charset, ftfont_get_otf): New functions.
4762 (ftfont_driver): Set the member otf_capability.
4763 (ftfont_get_charset): Adjust it for the change of
4764 fc_charset_table.
4765 (OTF_TAG_SYM): New macro.
4766 (ftfont_spec_pattern): Delete the arg fc_charset_idx. Adjust it
4767 for the change of fc_charset_table.
4768 (ftfont_list): Adjust it for the change of ftfont_spec_pattern and
4769 ftfont_pattern_entity. Add FC_INDEX to objset.
4770 (ftfont_match): Adjust it for the change of ftfont_spec_pattern
4771 and ftfont_pattern_entity.
4772 (ftfont_open): Adjust it for the change of ftfont_lookup_cache,
4773 font_make_object, struct ftfont_info.
4774 (ftfont_has_char): Use ftfont_get_fc_charset.
4775 (ftfont_otf_features, ftfont_otf_capability): New functions.
4776 (ftfont_shape): Use ftfont_get_otf.
4777 (ftfont_text_extents): Fix initial setting of metrics.
4778
4779 * xftfont.c (struct xftfont_info): New member ft_size. Make the
4780 member order compatible with struct ftfont_info.
4781 (xftfont_open): Add FC_CHARSET to the pattern. Set
4782 xftfont_info->ft_size. Don't unlock the face. Check BDF
4783 properties if appropriate.
4784 (xftfont_close): Unlock the face.
4785 (xftfont_anchor_point, xftfont_shape): Deleted.
4786 (syms_of_xftfont): Don't set members anchor_point and shape of
4787 xftfont_driver.
4788
4789 * w32uniscribe.c (uniscribe_open): Adjust it for the change of
4790 font_make_object.
4791
4792 * w32font.c (w32font_open): Adjust it for the change of
4793 font_make_object.
4794 (w32font_open_internal): Don't set properties of font_object here.
4795
47962008-07-08 Chong Yidong <cyd@stupidchicken.com>
4797
4798 * macfns.c (x_create_tip_frame):
4799 * w32fns.c (x_create_tip_frame):
4800 * xfns.c (x_create_tip_frame): Pass parameter argument to
4801 face-set-after-frame-default.
4802
4803 * xfaces.c (Finternal_merge_in_global_face): Save merged
4804 attributes for the default face back into the face vector.
4805
48062008-07-08 Andreas Schwab <schwab@suse.de>
4807
4808 * fontset.h: Declare fontset_from_font. Don't declare
4809 new_fontset_from_font and fontset_from_font_name.
4810 * xterm.c: Include "fontset.h".
4811 * Makefile.in (xterm.o): Update dependencies.
4812
48132008-07-08 Glenn Morris <rgm@gnu.org>
4814
4815 * m/sparc.h: Define __sparc__ rather than sparc. (Bug#507.)
4816 * alloc.c, ecrt0.c: Use __sparc__ rather than sparc.
4817
48182008-07-07 Chong Yidong <cyd@stupidchicken.com>
4819
4820 * frame.c (Qinhibit_face_set_after_frame_default): Var deleted.
4821 (x_set_frame_parameters): Don't bind it.
4822
48232008-07-07 Juanma Barranquero <lekktu@gmail.com>
4824
4825 * w32fns.c (map_w32_filename): Declare extern.
4826
48272008-07-07 Jason Rumney <jasonr@gnu.org>
4828
4829 * w32term.c (WS_EX_LAYERED): Define if not already.
4830
48312008-07-06 Chong Yidong <cyd@stupidchicken.com>
4832
4833 * xfaces.c (set_font_frame_param): Don't try to set the font
4834 parameter if it is still unspecified in the lface.
4835
48362008-07-05 Chong Yidong <cyd@stupidchicken.com>
4837
4838 * xfaces.c (Finternal_merge_in_global_face): Don't realize default
4839 face if it didn't already exist.
4840
4841 * xdisp.c (try_window_id): Give up if word-wrapping is on.
4842
48432008-07-05 Andreas Schwab <schwab@suse.de>
4844
4845 * xdisp.c (get_it_property): Move out of HAVE_WINDOW_SYSTEM section.
4846
48472008-07-05 Chong Yidong <cyd@stupidchicken.com>
4848
4849 * xdisp.c (IT_OVERFLOW_NEWLINE_INTO_FRINGE): Turn it off if
4850 word-wrapping.
4851 (IT_DISPLAYING_WHITESPACE): New macro.
4852 (move_it_in_display_line_to): Handle MOVE_TO_X requests properly
4853 when word-wrapping. Simplify word-wrapping logic. Use correct
4854 pixel positions when saving copies of the iterator.
4855 (display_line): Use proper wrap point if the last character on a
4856 line was preceded by whitespace.
4857
48582008-07-04 Stefan Monnier <monnier@iro.umontreal.ca>
4859
4860 * Makefile.in (${etc}DOC): Depend on ${lisp} rather than ${shortlisp}.
4861
48622008-07-04 Kenichi Handa <handa@m17n.org>
4863
4864 * fns.c (Fstring_to_unibyte): Delete the arg ACCEPT-LATIN-1.
4865
4866 * lisp.h: EXFUN adjusted for the change of Fstring_to_unibyte.
4867
48682008-07-02 Jason Rumney <jasonr@gnu.org>
4869
4870 * xfns.c (syms_of_xfns): Only define x-select-font when both
2ae37cf0 4871 HAVE_FREETYPE and USE_GTK.
aac0c6e3
MR
4872
4873 * xdisp.c (next_element_from_display_vector): Move assignment out
4874 of if statement.
4875
48762008-07-02 Toru Tsuneyoshi <t_tuneyosi@hotmail.com>
4877
4878 * lisp.h (Qdelete_file, Qdelete_directory): Declare extern.
4879
4880 * fileio.c (delete_by_moving_to_trash, Qmove_file_to_trash): New vars.
4881 (syms_of_fileio): Initialize and export them.
4882 (Fdelete_directory, Fdelete_file): Optionally delete via trash.
4883
4884 * w32fns.c (FOF_NO_CONNECTED_ELEMENTS): Define if not already.
4885 (Fsystem_move_file_to_trash): New function.
4886 (syms_of_w32fns): Export it to lisp.
4887
48882008-07-01 Jason Rumney <jasonr@gnu.org>
4889
4890 * w32font.c (w32font_text_extents): Don't count overhang as part
4891 of width.
4892
48932008-06-30 Miles Bader <miles@gnu.org>
4894
4895 * dispextern.h (struct glyph, struct it, struct iterator_stack_entry):
4896 Add `avoid_cursor_p' field.
4897
4898 * xdisp.c (push_it, pop_it): Save/restore avoid_cursor_p field.
4899 (set_cursor_from_row): Skip glyphs with avoid_cursor_p set.
4900 (append_glyph, append_composite_glyph, produce_image_glyph)
4901 (append_stretch_glyph): Initialize avoid_cursor_p.
4902 (get_it_property): Rename from `get_line_height_property'.
4903 (x_produce_glyphs): Use get_it_property.
4904 (handle_line_prefix, push_display_prop): New functions.
4905 (display_line, move_it_in_display_line_to): Handle line/wrap prefixes.
4906 (Vwrap_prefix, Qwrap_prefix, Vline_prefix, Qline_prefix):
4907 New variables.
4908 (syms_of_xdisp): Initialize them.
4909
49102008-06-30 Kenichi Handa <handa@m17n.org>
4911
4912 * xftfont.c (xftfont_open): Don't call FcConfigSubstitute and
4913 XftDefaultSubstitute (they are called in XftFontMatch).
4914 (xftfont_open): Fix args to ftfont_font_format.
4915
4916 * ftfont.c (fc_charset_table): New member lang.
4917 (ftfont_resolve_generic_family): New arg pattern.
60612c8f 4918 (ftfont_spec_pattern): Check fc_charset_table[]->lang.
aac0c6e3
MR
4919 (ftfont_list): Call ftfont_resolve_generic_family with `pattern'.
4920 (ftfont_open): Fix args to ftfont_font_format.
4921 (ftfont_font_format): New arg filename.
4922
49232008-06-30 Chong Yidong <cyd@stupidchicken.com>
4924
4925 * xfaces.c (Finternal_merge_in_global_face): If default face was
4926 modified, realize it again. Update the font face attribute.
4927
49282008-06-29 Jason Rumney <jasonr@gnu.org>
4929
4930 * w32term.c (x_set_frame_alpha): Fix logic.
4931
49322008-06-29 Kenichi Handa <handa@m17n.org>
4933
4934 * fontset.c (Finternal_char_font): Return font-object instead of
4935 font-name.
4936
4937 * composite.c (get_composition_id): Fix the width calculation for TAB.
4938
49392008-06-29 Stefan Monnier <monnier@iro.umontreal.ca>
4940
4941 * indent.c (Fvertical_motion): Properly handle float column arg.
4942
49432008-06-28 Jason Rumney <jasonr@gnu.org>
4944
4945 * w32term.c (pfnGetFontUnicodeRanges): Remove unused function pointer.
4946 (pfnSetLayeredWindowAttributes): New function pointer.
4947 (w32_initialize): Initialize it when supported.
4948 (x_set_frame_alpha): New function.
4949
4950 * w32fns.c (Fx_create_frame): Initialize frame parameter `alpha'.
4951 (w32_frame_parm_handlers): Set alpha handler.
4952
4953 * frame.c (x_set_alpha) [HAVE_NTGUI]: Call x_set_frame_alpha.
4954
49552008-06-27 Jason Rumney <jasonr@gnu.org>
4956
4957 * w32fns.c (x_to_w32_font, w32_to_x_font, x_to_w32_weight)
4958 (w32_to_x_weight, w32_to_all_x_charsets): Remove obsolete functions.
4959 (w32_to_x_charset, x_to_w32_charset)
4960 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
4961 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
4962 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
4963 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
4964 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
4965 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
4966 (Qw32_charset_mac, Vw32_charset_info_alist): Move to w32font.c.
4967 (Qw32_charset_unicode): Remove.
4968 (syms_of_w32fns): Update for above changes.
4969
4970 * w32font.c (w32_to_x_charset, x_to_w32_charset)
4971 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
4972 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
4973 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
4974 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
4975 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
4976 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
4977 (Qw32_charset_mac, Vw32_charset_info_alist): Move from w32fns.c.
4978 (syms_of_w32font): Update for above changes.
4979
49802008-06-27 Dan Nicolaescu <dann@ics.uci.edu>
4981
4982 * s/usg5-4.h: Fix previous change: keep the correct branch of a
4983 removed #if.
4984 (USG_SHARED_LIBRARIES): Remove duplicate definition.
4985
49862008-06-26 Juanma Barranquero <lekktu@gmail.com>
4987 Eli Zaretskii <eliz@gnu.org>
4988
4989 * makefile.w32-in (LOCAL_FLAGS):
4990 Don't include WINDOWSNT, DOS_NT and _UCHAR_T.
4991
4992 * sysdep.c (_spawnlp, _getpid):
4993 Declare with explicit _cdecl instead of _CRTAPI1.
4994
4995 * editfns.c (Fget_internal_run_time):
4996 Check for WINDOWSNT with #ifdef, not #if.
4997
49982008-06-26 Jason Rumney <jasonr@gnu.org>
4999
5000 * w32font.h (FONT_HANDLE, FONT_TEXTMETRIC): New macros.
5001
5002 * w32term.c (x_draw_glyph_string_foreground)
5003 (x_draw_composite_glyph_string_foreground): Sync with xterm.c.
5004 Use FONT_HANDLE macro.
5005 (x_draw_glyph_string): Use FONT_TEXTMETRIC macro.
5006
5007 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
5008 (uniscribe_encode_char): Use FONT_HANDLE macro.
5009
5010 * w32font.c (Fx_select_font): Use FONT_HANDLE macro.
5011 (w32font_text_extents): Use precast w32_font.
5012 (w32font_close): Free cached metrics.
5013 (w32font_open_internal): Allocate space for name on stack.
5014
50152008-06-26 Chong Yidong <cyd@stupidchicken.com>
5016
5017 * xdisp.c (extend_face_to_end_of_line): Fix last change.
5018
50192008-06-26 Jason Rumney <jasonr@gnu.org>
5020
5021 * w32term.h (FONT_AVG_WIDTH): Remove obsolete macro.
5022 (CP_8BIT, CP_UNICODE, CP_UNKNOWN): Remove obsolete constants.
5023
50242008-06-26 Juanma Barranquero <lekktu@gmail.com>
5025
5026 * Makefile.in (SOME_MACHINE_OBJECTS): Remove w32bdf.o.
5027
50282008-06-26 Jason Rumney <jasonr@gnu.org>
5029
5030 * w32bdf.c, w32bdf.h: Remove obsolete files.
5031
5032 * makefile.w32-in: Remove refs to w32bdf.h and w32bdf.c.
5033
5034 * w32gui.h: Don't include w32bdf.h.
5035 (XCharStruct, enum w32_char_font_type, W32FontStruct):
5036 Remove obsolete font support.
5037
5038 * w32font.h (struct w32font_info): Remove compat_w32_font.
5039 Add hfont member.
5040 (FONT_COMPAT): Remove obsolete macro.
5041
5042 * w32font.c (w32font_close): Remove compat code. Delete hfont member.
5043 (w32font_encode_char, w32font_text_extents): Use new hfont member.
5044 (w32font_open_internal): Remove compat code. Set new hfont member.
5045 (Fx_select_font): Use new hfont member.
5046
5047 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
5048 (uniscribe_encode_char): Use new hfont member.
5049
5050 * w32term.c (x_draw_glyph_string_foreground)
5051 (x_draw_composite_glyph_string_foreground): Use new hfont member.
5052 (x_draw_glyph_string): Use metrics in w32font_info.
5053
50542008-06-26 Kenichi Handa <handa@m17n.org>
5055
5056 * xdisp.c (handle_auto_composed_prop): Fix for the terminal case.
5057
50582008-06-26 Dan Nicolaescu <dann@ics.uci.edu>
5059
5060 * unexnext.c:
5061 * m/ews4800.h:
5062 * m/hp9000s300.h:
5063 * m/ibm370aix.h:
5064 * m/mips-siemens.h:
5065 * m/ncr386.h:
5066 * m/next.h:
5067 * m/pmax.h:
5068 * m/powerpcle.h:
5069 * m/tandem-s2.h:
5070 * s/386bsd.h:
5071 * s/bsd386.h:
5072 * s/bsd4-1.h:
5073 * s/bsd4-2.h:
5074 * s/bsdos2-1.h:
5075 * s/bsdos2.h:
5076 * s/bsdos3.h:
5077 * s/bsdos4.h:
5078 * s/nextstep.h:
5079 * s/ultrix4-3.h:
5080 * s/usg5-0.h:
5081 * s/usg5-2-2.h:
5082 * s/usg5-2.h:
5083 * s/usg5-4-3.h:
5084 * s/ux4800.h:
5085 * s/uxpds.h:
5086 * s/uxpv.h: Remove support for obsolete systems.
5087 * s/hpux.h, s/hpux10.h, s/hpux8.h, s/hpux9.h, s/hpux9shr.h:
8f3a3ac2 5088 Remove, insert contents in s/hpux10-20.h.
aac0c6e3
MR
5089 * s/aix3-1.h, s/aix3-2-5.h, s/aix3-2.h, s/aix4-1.h, s/aix4.h:
5090 Remove, insert contents in s/aix4-2.h.
5091 * s/usg5-3.h: Remove, insert contents in s/usg5-4.h.
5092 * s/bsd4-3.h: Rename to ...
5093 * s/bsd-common.h: ... this.
5094 * data.c:
5095 * doc.c:
5096 * ecrt0.c:
5097 * emacs.c:
5098 * fileio.c:
5099 * floatfns.c:
5100 * keyboard.c:
5101 * mem-limits.h:
5102 * print.c:
5103 * process.c:
5104 * sysdep.c:
5105 * syssignal.h:
5106 * systty.h:
5107 * syswait.h:
5108 * term.c:
5109 * unexec.c:
5110 * unexelf.c:
5111 * unexhp9k800.c:
5112 * m/hp800.h:
5113 * m/ibmrs6000.h:
5114 * m/mips.h:
5115 * m/vax.h:
5116 * s/darwin.h:
5117 * s/freebsd.h:
5118 * s/gnu.h:
5119 * s/ms-w32.h:
5120 * s/msdos.h:
5121 * s/netbsd.h:
5122 * s/template.h: Remove references to obsolete variables.
5123
5124 * Makefile.in: Add dependencies for all unexec files.
5125 (admindir): Remove unused variable.
5126 (UNEXEC_SRC): Remove references.
5127
51282008-06-25 Chong Yidong <cyd@stupidchicken.com>
5129
5130 * xfns.c (x_default_font_parameter): If Xft is available, first
5131 try Monospace-12 for the default font.
5132
51332008-06-25 Jason Rumney <jasonr@gnu.org>
5134
5135 * xdisp.c (get_glyph_face_and_encoding): Encode invalid glyphs as 0.
5136
51372008-06-25 Stefan Monnier <monnier@iro.umontreal.ca>
5138
5139 * bytecode.c (Fbyte_code): Disable debugging code that doesn't compile.
5140
5141 * buffer.c (syms_of_buffer): Remove default-word-wrap.
5142
51432008-06-25 Juanma Barranquero <lekktu@gmail.com>
5144
5145 * xdisp.c (syms_of_xdisp) <truncate-partial-width-windows>: Doc fix.
5146 <scroll-conservatively>: Fix typo in docstring.
5147
5148 * xselect.c (Fx_send_client_event): Doc fix.
5149
51502008-06-25 Kenichi Handa <handa@m17n.org>
5151
5152 * xfaces.c (Fx_list_fonts): Call Flist_fonts with the arg PREFER.
5153
5154 * font.c (font_parse_fcname): Remove unused variables.
5155 (font_sort_entites): Delete the arg SPEC. Caller changed.
5156 Fix for the case of ! best_only.
5157 (font_delete_unmatched): Check DPI and AVGWIDTH too.
5158
5159 * lisp.h (Fstring_to_unibyte): EXFUN it.
5160
5161 * character.h (str_to_unibyte): Extern it.
5162
5163 * character.c (str_to_unibyte): New function.
5164
5165 * fns.c (Fstring_to_unibyte): New function.
5166 (syms_of_fns): Defsubr it.
5167
51682008-06-24 Kenichi Handa <handa@m17n.org>
5169
5170 * font.c (font_score): Even if the PIXEL_SIZE is the same, check
5171 DPI too.
5172 (font_sort_entites): Setup prefer_prop[FONT_DPI_INDEX] too.
5173
51742008-06-24 Andreas Schwab <schwab@suse.de>
5175
5176 * Makefile.in (${lispsource}loaddefs.el): Rename from
5177 ../lisp/loaddefs.el.
5178 (bootstrap-clean): Do what distclean does but don't remove
5179 Makefile.
5180 (distclean): Depend on bootstrap-clean and remove Makefile.
5181
51822008-06-24 Chong Yidong <cyd@stupidchicken.com>
5183
5184 * buffer.h (struct buffer): New member word_wrap.
5185
5186 * buffer.c (syms_of_buffer): New variables default-word-wrap and
5187 word-wrap.
5188 (init_buffer_once): Initialize them.
5189
5190 * dispextern.h (struct it): Replace bool truncate_lines_p with a
5191 line_wrap enum possessing three possible values.
5192
5193 * termopts.h: Replace truncate_partial_width_windows with
5194 Vtruncate_partial_width_windows.
5195
5196 * dispnew.c (direct_output_for_insert): Avoid direct output when
5197 inserting a space with word wrap on.
5198
5199 * indent.c (compute_motion): Obey integer values of
5200 truncate-partial-width-windows.
5201
5202 * xdisp.c (Vtruncate_partial_width_windows): New Lisp_Object,
5203 replacing truncate_partial_width_windows.
5204 (init_iterator): If Vtruncate_partial_width_windows is an integer,
5205 truncate only if the window width is below that integer.
5206 (start_display, resize_mini_window, produce_stretch_glyph)
5207 (display_string, move_it_in_display_line_to): Use line_wrap.
5208 (back_to_previous_visible_line_start, reseat_1): Reset
5209 string_from_display_prop_p.
5210 (display_line): Extend default face to end of line when wrapping.
5211
52122008-06-24 Kim F. Storm <storm@cua.dk>
5213
5214 * xdisp.c (display_line, move_it_in_display_line_to): Add ability
5215 to wrap continued lines at word boundaries.
5216
52172008-06-24 Jason Rumney <jasonr@gnu.org>
5218
5219 * font.c (Ffont_face_attributes): Multiply pixel size before point
5220 conversion to avoid multiplying rounding error.
5221
52222008-06-23 Jason Rumney <jasonr@gnu.org>
5223
5224 * w32term.c (x_draw_glyph_string_background)
5225 (x_draw_glyph_string): Remove old bdf font code.
5226
5227 * w32term.h (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): Remove.
5228
52292008-06-22 Kenichi Handa <handa@m17n.org>
5230
5231 * font.c (font_find_for_lface): Try the adstyle specified in
5232 the property of LFACE_FONT of LFACE (if any).
5233
52342008-06-21 Seiji Zenitani <zenitani@mac.com>
5235 Ryo Yoshitake <ryo@shiftmode.net>
5236
5237 * xterm.c (x_set_frame_alpha): Add x_catch_errors for bug#437.
5238
52392008-06-22 Stefan Monnier <monnier@iro.umontreal.ca>
5240
5241 * Makefile.in (${lisp} ${SOME_MACHINE_LISP}, ../lisp/loaddefs.el):
5242 Use $(BOOTSTRAPEMACS) rather than witness-emacs.
5243 (bootstrap-emacs${EXEEXT}): Merge witness-emacs into it.
5244 (witness-emacs): Remove.
5245 (lisp, shortlisp): Move loaddefs.el earlier.
5246 (mostlyclean): Forget about witness-emacs.
5247
52482008-06-22 Glenn Morris <rgm@gnu.org>
5249
5250 * Makefile.in (witness-emacs): Depend on temacs${EXEEXT}.
5251 (.SUFFIXES): Declare .el.elc as a suffix rule, for non-GNU makes.
5252
52532008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
5254
5255 * Makefile.in (PRECOMP): Remove.
5256 (${lisp} ${SOME_MACHINE_LISP}): Remove pseudo dependency on PRECOMP.
5257 (witness-emacs): Run `compile-first'.
5258 (.el.elc): Use the new compile-onefile target.
5259
52602008-06-21 Kenichi Handa <handa@m17n.org>
5261
5262 * xftfont.c (xftfont_open): Handle QCembolden only when
5263 FC_EMBOLDEN is defined.
5264
52652008-06-21 Andreas Schwab <schwab@suse.de>
5266
5267 * Makefile.in (witness-emacs): Use ../lisp, not $(lispsource).
5268 (.el.elc): Likewise.
5269
52702008-06-21 Miles Bader <miles@gnu.org>
5271
5272 * Makefile.in (../lisp/loaddefs.el): Build autoloads in the lisp
5273 build dir, not the lisp source dir.
5274
52752008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
5276
5277 * Makefile.in (emacs${EXEEXT}): Link the new emacs to bootstrap-emacs.
5278 (bootstrapclean): Remove.
5279 (.el.elc): New rule.
5280 (PRECOMP): New var.
5281 (../lisp/subdirs.el): Remove.
5282 (bootstrap-emacs${EXEEXT}): Remove subdirs.el and charpro.el dependency.
5283 (witness-emacs): New target.
5284 (mostlyclean): Remove witness-emacs as well.
5285 (../lisp/loaddefs.el, ${lisp} ${SOME_MACHINE_LISP}):
5286 Add witness-emacs dependency.
5287
52882008-06-20 Chong Yidong <cyd@stupidchicken.com>
5289
5290 * font.c (Ffont_face_attributes): Omit key-attribute pairs not
5291 defined by the font.
5292
52932008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
5294
5295 * Makefile.in (emacs${EXEEXT}): Depend on the machine-specific files.
5296 (bootstrap-clean): New target that keeps TAGS around.
5297 (../lisp/subdirs.el, ../lisp/loaddefs.el): New targets.
5298 (bootstrap-emacs${EXEEXT}): Depend on subdirs.el.
5299
53002008-06-20 Jason Rumney <jasonr@gnu.org>
5301
5302 * w32fns.c, w32term.c, w32term.h, w32gui.h [OLD_FONT]:
5303 Remove obsolete font code.
5304
5305 * w32font.c (font_matches_spec): Use csb bitfield from font signature
5306 to determine language support.
5307
53082008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
5309
5310 * sysdep.c (cfsetspeed): New fun extracted from the code.
5311 (cfmakeraw): Move before first use.
5312
53132008-06-20 Angelo Graziosi <angelo.graziosi@alice.it> (tiny change)
5314
5315 * sysdep.c (cfmakeraw): Provide fallback implementation.
5316 (serial_configure): Provide fallback implementation of cfsetspeed.
5317
53182008-06-20 Kenichi Handa <handa@m17n.org>
5319
5320 * xftfont.c (xftfont_open): Add FOUNDRY, SPACING, DPI, SCALABLE to
5321 the pattern.
5322
5323 * fontset.c (fontset_from_font): Copy font_spec before changing
5324 the elements.
5325
5326 * xfns.c (x_default_font_parameter): Try "monospace-12" too.
5327
53282008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
5329
5330 * w32fns.c, xfns.c (x_default_font_parameter): Only set `font-param'
5331 for explicit `font' parameters.
5332
5333 * frame.c (x_set_font): Remove unexplained call to fix inf-recursion.
5334
53352008-06-19 Kenichi Handa <handa@m17n.org>
5336
5337 * frame.c: Include <ctype.h>.
5338 (x_set_font_backend): Allow spacing characters in the X resource
5339 for FontBackend.
5340
53412008-06-19 Stefan Monnier <monnier@iro.umontreal.ca>
5342
5343 * w32fns.c, xfns.c (Qfont_param): New var.
5344 (syms_of_w32fns): Initialize it.
5345 (x_default_font_parameter): Record explicit `font' into
5346 `font-parameter'.
5347
53482008-06-18 Kenichi Handa <handa@m17n.org>
5349
5350 * font.c (font_parse_xlfd): Fix previous change.
5351 (font_parse_fcname): Don't use :fc-unknown-spec.
5352 (FRAME_X_DISPLAY_INFO): Be sure to have at least 1 pixel height.
5353 (Fcopy_font_spec): Preserve the order of elements in FONT_EXTRA.
5354 (font_add_log): Prepend the driver name to the resulting fonts.
5355
5356 * ftfont.c (ftfont_pattern_entity): New arg extra. Caller changed.
5357 (ftfont_spec_pattern): Don't check QCfc_unknown_spec and QCname.
5358 (ftfont_list) [FC_FONTFORMAT]: Include FC_FONTFORMAT in objset.
5359
5360 * xftfont.c (QChinting , QCautohint, QChintstyle, QCrgba)
5361 (QCembolden): New variables.
5362 (syms_of_xftfont): DEFSYM them.
5363 (xftfont_open): Call XftFontMatch. Don't trust the result of
5364 XftTextExtents8 if the pixel_size is less than 5.
5365
53662008-06-18 Andreas Schwab <schwab@suse.de>
5367
5368 * font.c (Ffont_face_attributes): Only define if HAVE_WINDOW_SYSTEM.
5369 (syms_of_font): Only defsubr if HAVE_WINDOW_SYSTEM.
5370
53712008-06-18 Jason Rumney <jasonr@gnu.org>
5372
5373 * w32font.c (w32font_list, w32font_match): Add logging.
5374
5375 * w32uniscribe.c (uniscribe_list, uniscribe_match): Add logging.
5376
53772008-06-17 Chong Yidong <cyd@stupidchicken.com>
5378
5379 * font.c (font_parse_fcname): Store divider characters for
5380 unknown-spec list. For known key symbols, intern using correct
5381 symbol name.
5382
53832008-06-17 Kenichi Handa <handa@m17n.org>
5384
5385 * xfaces.c (realize_default_face): If the frame is not on window
5386 system, set the fontset of face to nil.
5387
53882008-06-17 Naohiro Aota <nao.aota@gmail.com> (tiny change)
5389
5390 * fontset.c (fontset_pattern_regexp): Escape some reg-expr characters.
5391
53922008-06-16 Juanma Barranquero <lekktu@gmail.com>
5393
5394 * dispextern.h (lookup_non_ascii_face, split_font_name_into_vector)
5395 (build_font_name_from_vector): Delete externs.
5396
5397 * xfaces.c (struct font_name): Don't declare.
5398
53992008-06-16 Stefan Monnier <monnier@iro.umontreal.ca>
5400
5401 * font.c (font_unparse_gtkname): Use EQ to compare Lisp_Objects.
5402
54032008-06-16 Chong Yidong <cyd@stupidchicken.com>
5404
5405 * font.c (font_parse_fcname): Fix handling of unknown-spec string.
5406
54072008-06-16 Juanma Barranquero <lekktu@gmail.com>
5408
5409 * font.c (Ffont_spec): Fix usage in docstring.
5410 (Ffont_face_attributes): Doc fix.
5411
54122008-06-16 Andreas Schwab <schwab@suse.de>
5413
5414 * font.c (Ffont_face_attributes): Fix definition.
5415
54162008-06-16 Jason Rumney <jasonr@gnu.org>
5417
5418 * font.h (font_style_symbolic_from_value): Remove.
5419
5420 * font.c (font_style_symbolic_from_value): Remove.
5421 (font_style_symbolic): Revert to pre 2008-06-13 version.
5422
5423 * w32font.c (w32_to_fc_weight): New function.
5424 (w32font_full_name, logfont_to_fcname): Use it.
5425
54262008-06-16 Kenichi Handa <handa@m17n.org>
5427
5428 * font.c (font_check_object): Delete it.
5429 (font_clear_cache): Check if a font-object is alive.
5430 (font_open_entity): Likewise. Set FONT_OBJLST_INDEX of a
5431 font-object to nil.
5432 (font_close_object): Don't check FONT_CLOSE_OBJECT.
5433 (font_at): Don't call font_check_object.
5434 (Ffont_get): Return a symbol for :weight, :slant, and :width.
5435
54362008-06-16 Katsumi Yamaoka <yamaoka@jpl.org>
5437
5438 * puresize.h (BASE_PURESIZE): Increase to 1230000.
5439
54402008-06-16 Chong Yidong <cyd@stupidchicken.com>
5441
5442 * font.c (font_parse_fcname): Correctly parse KEY=VAL values.
5443
54442008-06-15 Chong Yidong <cyd@stupidchicken.com>
5445
5446 * font.c (font_parse_fcname): Only one decimal point.
5447 (font_unparse_fcname): Handle data in family and foundry indices
5448 as symbols, not strings.
5449 (font_unparse_gtkname, Ffont_face_attributes): New functions.
5450
5451 * xfns.c (Fx_select_font): Give GTK font dialog the default font name.
5452
5453 * font.h (font_unparse_gtkname): Add prototype.
5454
54552008-06-15 Naohiro Aota <nao.aota@gmail.com> (tiny change)
5456
5457 * fontset.c (fontset_pattern_regexp): Escape `+' characters in pattern.
5458
54592008-06-15 Andreas Schwab <schwab@suse.de>
5460
5461 * font.c (font_update_drivers): Fix crash when no drivers match.
5462
54632008-06-15 Stefan Monnier <monnier@iro.umontreal.ca>
5464
5465 * xfns.c (Fx_create_frame): internal-border-width default to 0 for Gtk.
5466 * gtkutil.c (xg_create_frame_widgets): Don't set internal_border_width.
5467
54682008-06-14 Stefan Monnier <monnier@iro.umontreal.ca>
5469
5470 * xdisp.c (syms_of_xdisp): Default underline-minimum-offset to 1.
5471
54722008-06-13 Stefan Monnier <monnier@iro.umontreal.ca>
5473
5474 * process.c (Fserial_process_configure, Fprocess_send_eof):
5475 Use EQ to compare Lisp_Objects.
5476
54772008-06-13 Jason Rumney <jasonr@gnu.org>
5478
5479 * w32fns.c (Fw32_select_font): Remove old font API function.
5480
5481 * w32font.c (logfont_to_fcname): New function.
5482 (Fx_select_font): New font dialog function compatible with
5483 GTK/fontconfig version.
5484
5485 * font.c (font_style_symbolic_from_value): New function.
5486 (font_style_symbolic): Use it.
5487
5488 * font.h (font_style_symbolic_from_value): Declare new function.
5489
54902008-06-13 Juanma Barranquero <lekktu@gmail.com>
5491
5492 * font.c (syms_of_font) <font-weight-table, font-slant-table>:
5493 <font-width-table>: Fix typos in docstrings.
5494
54952008-06-13 Daniel Engeler <engeler@gmail.com>
5496
5497 These changes add serial port access.
5498 * process.c: Add HAVE_SERIAL.
5499 (Fdelete_process, Fprocess_status, Fset_process_buffer)
5500 (Fset_process_filter, Fset_process_sentinel, Fprocess_contact)
5501 (list_processes_1, select_wrapper, Fstop_process)
5502 (Fcontinue_process, Fprocess_send_eof, kill_buffer_processes)
5503 (status_notify): Modify to handle serial processes.
5504 [HAVE_SERIAL] (Fserial_process_configure)
5505 [HAVE_SERIAL] (make_serial_process_unwind, Fmake_serial_process):
5506 New functions.
5507 * process.h (struct Lisp_Process): Add `type'.
5508 * sysdep.c [HAVE_TERMIOS] (serial_open, serial_configure):
5509 New functions.
5510 * w32.c (_sys_read_ahead, sys_read, sys_write): Modify to handle
5511 serial ports.
5512 (serial_open, serial_configure) New functions.
5513 * w32.h: Add FILE_SERIAL.
5514 (struct _child_process): Add ovl_read, ovl_write.
5515
55162008-06-13 Kenichi Handa <handa@m17n.org>
5517
5518 * dispextern.h (enum lface_attribute_index): New member
5519 LFACE_FOUNDRY_INDEX.
5520
5521 * font.c (font_score): Delete arg alternate_families. Check only
5522 weight, slant, width, and size. Ignore the difference of alias
5523 style symbols.
5524 (font_sort_entites): Adjust for the above change. Reflect the
5525 order of font-driver to scores.
5526 (font_list_entities): Don't check alternate_familes here.
5527 (font_clear_prop): Handle foundry.
5528 (font_update_lface): Don't parse "foundry-family" form here.
5529 Handle FONT_FOUNDRY_INDEX.
5530 (font_find_for_lface): Likewise. Handle alternate families here.
5531 If registry is nil, try iso8859-1 and ascii-0.
5532 (font_open_for_lface): Pay attention to size in ENTITY.
5533 (font_open_by_name): Simplify by calling font_load_for_lface.
5534 (free_font_driver_list): Delete it.
5535 (font_update_drivers): Preserve the order of backends.
5536 (syms_of_font): Setting of sort_shift_bits adjusted for the change
5537 of font_score and font_sort_entites.
5538 (font_update_sort_order): Likewise.
5539
5540 * xfaces.c (LFACE_FOUNDRY): New macro.
5541 (check_lface_attrs): Check foundry.
5542 (set_lface_from_font): Don't parse "FOUNDRY-FAMILY" form.
5543 (merge_face_vectors): Check foundry.
5544 (merge_face_ref): Likewise.
5545 (Finternal_set_lisp_face_attribute): Likewise.
5546 (x_update_menu_appearance): Likewise.
5547 (Finternal_get_lisp_face_attribute): Likewise.
5548 (lface_hash): Likewise.
5549 (lface_same_font_attributes_p): Likewise.
5550 (x_supports_face_attributes_p): Likewise.
5551 (tty_supports_face_attributes_p): Likewise.
5552 (Finternal_set_alternative_font_family_alist): Intern strings.
5553 (Finternal_set_alternative_font_registry_alist): Downcase strings.
5554 (realize_default_face): Set LFACE_FOUNDRY (lface).
5555
5556 * xfns.c (Fx_create_frame, x_create_tip_frame): Register X
5557 font-driver at first.
5558
5559 * ftfont.c (ftfont_font_format) [! FC_FONTFORMAT]: Declare "int len;".
5560
55612008-06-12 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
5562
5563 * lread.c (Fload): Use xfree, not free on saved_doc_string.
5564
55652008-06-12 Jim Meyering <meyering@redhat.com>
5566
5567 Make unexec_free handle NULL the same way free does.
5568 * unexmacosx.c (unexec_free): Ignore a NULL argument.
5569
55702008-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
5571
5572 * character.h (CHAR_TO_BYTE_SAFE): New macro.
5573 * character.c (Fmultibyte_char_to_unibyte): Obey the docstring.
5574 * regex.c (RE_CHAR_TO_UNIBYTE): Use the new macro.
5575 (WEAK_ALIAS): Simplify.
5576 * syntax.c (skip_chars): Don't mark non-byte chars in the fastmap
5577 when searching a unibyte buffer.
5578
55792008-06-12 Chong Yidong <cyd@stupidchicken.com>
5580
5581 * xfns.c (Fx_select_font): Rename from x-font-dialog.
5582
55832008-06-12 Juanma Barranquero <lekktu@gmail.com>
5584
5585 * w32font.c: Include ctype.h.
5586
55872008-06-11 Jason Rumney <jasonr@gnu.org>
5588
5589 * w32font.c (w32font_encode_char): Detect missing glyphs that are
5590 misreported as space.
5591 (add_font_entity_to_list): Support unicode-bmp and unicode-sip
5592 as aliases for registry iso10646-1.
5593
55942008-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
5595
5596 * buffer.c (clone_per_buffer_values): Skip `name'.
5597
55982008-06-11 Chong Yidong <cyd@stupidchicken.com>
5599
5600 * font.c (font_parse_fcname): Fix last change; accept decimal
5601 points in font size.
5602
56032008-06-10 Jason Rumney <jasonr@gnu.org>
5604
5605 * w32uniscribe.c (add_opentype_font_name_to_list):
5606 Skip non unicode fonts.
5607
56082008-06-10 Chong Yidong <cyd@stupidchicken.com>
5609
5610 * xfns.c (Fx_font_dialog): New function.
5611
5612 * gtkutil.c (xg_dialog_response_cb): Rename from
5613 xg_file_response_callback.
5614 (pop_down_dialog): Rename from pop_down_file_dialog.
5615 (xg_get_file_name): Callers changed.
5616 (xg_get_font_name): New function.
5617
5618 * gtkutil.h (xg_get_font_name): Insert prototype.
5619
56202008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
5621
5622 * xdisp.c (underline_minimum_offset): Rename from xterm.c's
5623 x_underline_minimum_display_offset.
5624 (syms_of_xdisp): Declare it here rather than in xterm.c.
5625 * dispextern.h (underline_minimum_offset): Declare it.
5626 * w32term.c (x_draw_glyph_string): Use it.
5627 * xterm.c (x_underline_minimum_display_offset): Move to xdisp.c.
5628 (syms_of_xterm): Don't declare it any more.
5629 (x_draw_glyph_string): Adjust to the new name.
5630
56312008-06-10 David De La Harpe Golden <david@harpegolden.net> (tiny change)
5632
5633 * xterm.c (x_underline_minimum_display_offset): New var.
5634 (x_draw_glyph_string): Use it.
5635 (syms_of_xterm): Declare it.
5636
56372008-06-10 Chong Yidong <cyd@stupidchicken.com>
5638
5639 * font.c (font_parse_fcname): Accept GTK-style font names too.
5640
56412008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
5642
5643 * dired.c (file_name_completion): Don't return t if the match is exact
5644 but with different capitalization.
5645 * minibuf.c (Ftry_completion): Simplify.
5646
5647 * window.c (Vwindow_point_insertion_type): New var.
5648 (set_window_buffer): Use it.
5649 (syms_of_window): Init and export it to Lisp.
5650
56512008-06-10 Kenichi Handa <handa@m17n.org>
5652
5653 * font.h (font_intern_prop): Prototype adjusted.
5654
5655 * font.c (font_intern_prop): New arg force_symbol.
5656 (font_parse_xlfd, font_parse_fcname, font_parse_family_registry):
5657 Adjust for the change of font_intern_prop.
5658
5659 * ftfont.c (ftfont_pattern_entity):
5660 * w32font.c (add_font_name_to_list, w32_enumfont_pattern_entity)
5661 (w32_registry):
5662 * w32uniscribe.c (add_opentype_font_name_to_list): Adjust for
5663 the change of font_intern_prop.
5664
56652008-06-09 Juanma Barranquero <lekktu@gmail.com>
5666
5667 * w32menu.c (digest_single_submenu): Declare extern.
5668
56692008-06-09 Jason Rumney <jasonr@gnu.org>
5670
5671 * w32term.c (x_make_frame_visible): Use alternate restore flags.
5672
5673 * w32menu.c (Fx_popup_menu): Unwind protect while building menu.
5674 (parse_single_submenu): Remove.
5675 (digest_single_submenu): Remove.
5676 (syms_of_w32menu): Don't initialise variables that have moved
5677 to menu.c.
5678 (set_frame_menubar): Sync with version in xmenu.c.
5679 (w32_menu_show): Sync with xmenu_show in xmenu.c.
5680
5681 * menu.c (single_keymap_panes, push_menu_pane, push_menu_item):
5682 Make static again.
5683
56842008-06-09 Jason Rumney <jasonr@gnu.org>
5685
5686 Changes to w32 files related to the move of common menu code
5687 to menu.c on 2008-06-08 by Chong Yidong.
5688
5689 * menu.c [HAVE_NTGUI]: Include w32term.h, move widget related
5690 defs to w32gui.h.
5691 (single_keymap_panes, push_menu_item, push_menu_pane):
5692 Make globally visible.
5693
5694 * w32menu.c (enum button_type, widget_value, local_heap, local_alloc)
5695 (local_free, malloc_widget_value, free_widget_value)
5696 (MENU_ITEMS_ITEM_NAME, MENU_ITEMS_ITEM_ENABLE, MENU_ITEMS_ITEM_VALUE)
5697 (MENU_ITEMS_ITEM_EQUIV_KEY, MENU_ITEMS_ITEM_DEFINITION)
5698 (MENU_ITEMS_ITEM_TYPE, MENU_ITEMS_ITEM_SELECTED, MENU_ITEMS_ITEM_HELP)
5699 (MENU_ITEMS_ITEM_LENGTH, enum menu_item_idx): Remove defs.
5700 (menu_items, menu_items_allocated, menu_items_used)
5701 (menu_items_n_panes, menu_items_submenu_depth): Remove global vars.
5702 (init_menu_items, finish_menu_items, discard_menu_items)
5703 (grow_menu_items, push_submenu_start, push_submenu_end)
5704 (push_left_right_boundary, push_menu_pane, push_menu_item)
5705 (keymap_panes, single_keymap_panes, list_of_panes, list_of_items)
5706 (free_menubar_widget_tree_value, parse_single_submenu)
5707 (update_submenu_strings): Remove functions.
5708 (xmalloc_widget_value): Remove and declare extern.
5709
5710 * makefile.w32-in ($(SRC)/menu.$(O)): New target.
5711 (OBJ1): Build it.
5712
5713 * w32gui.h (widget_value, XtPointer, Boolean, enum button_type)
5714 (local_heap, local_alloc, local_free, malloc_widget_value)
5715 (free_widget_value): Define here.
5716
57172008-06-09 Kenichi Handa <handa@m17n.org>
5718
5719 * font.h (Qascii_0): Extern it.
5720
5721 * font.c (Qascii_0): New variable.
5722 (syms_of_font): DEFSYM it.
5723 (font_open_by_name): If the registry "iso8859-1" fails, try also
5724 "ascii-0".
5725
5726 * ftfont.c (ftfont_spec_pattern): Accept the registry `ascii-0'.
5727
57282008-06-08 Kenichi Handa <handa@m17n.org>
5729
5730 * .gdbinit (xfont): New command.
5731
57322008-06-08 Andreas Schwab <schwab@suse.de>
5733
5734 * menu.c [HAVE_X_WINDOWS]: Include "xterm.h".
5735 * Makefile.in (menu.o): Update dependencies.
5736
5737 * Makefile.in (obj): Always add menu.o.
5738 * emacs.c (main): Always call syms_of_menu.
5739 * keyboard.h: Remove extra #ifdef HAVE_X_WINDOW.
5740
57412008-06-08 Chong Yidong <cyd@stupidchicken.com>
5742
5743 * Makefile.in: Compile menu.c.
5744
5745 * lisp.h: Declare syms_of_menu.
5746
5747 * emacs.c (main): Call syms_of_menu.
5748
5749 * keyboard.h: Relocate platform-independent menu definitions from
5750 xmenu.c.
5751
5752 * menu.c: New file. Relocate platform-independent menu
5753 definitions from xmenu.c. Suggested by Adrian Robert.
5754
5755 * xmenu.c: Remove platform-independent menu definitions.
5756 (menu_items menu_items_inuse, menu_items_allocated)
5757 (menu_items_used, menu_items_n_panes)
5758 (menu_items_submenu_depth): Move to keyboard.h.
5759 (init_menu_items, finish_menu_items, unuse_menu_items)
5760 (discard_menu_items, restore_menu_items, save_menu_items)
5761 (grow_menu_items, push_submenu_start, push_submenu_end)
5762 (push_left_right_boundary, push_menu_pane, push_menu_item)
5763 (keymap_panes, single_keymap_panes, single_menu_item)
5764 (list_of_panes, list_of_items, find_and_call_menu_selection)
5765 (xmalloc_widget_value, free_menubar_widget_value_tree)
5766 (parse_single_submenu, digest_single_submenu)
5767 (update_submenu_strings): Move to menu.c.
5768
57692008-06-07 Stefan Monnier <monnier@iro.umontreal.ca>
5770
5771 * dispnew.c (Flast_nonminibuf_frame): Handle the NULL case.
5772
57732008-06-06 Miles Bader <miles@gnu.org>
5774
5775 * xdisp.c (x_produce_glyphs): Calculate tab width based on current
5776 face, not frame default.
5777
57782008-06-05 Martin Rudalics <rudalics@gmx.at>
5779
5780 * window.c (pop_up_windows, pop_up_frames)
5781 (display_buffer_reuse_frames, Vpop_up_frame_function)
5782 (Vdisplay_buffer_function, Veven_window_heights)
5783 (Vspecial_display_buffer_names, Vspecial_display_regexps)
5784 (Vspecial_display_function, Vsame_window_buffer_names)
5785 (Vsame_window_regexps, split_height_threshold)
5786 (Vsplit_window_preferred_function): Move those vars to window.el.
5787 (display_buffer_1, Fspecial_display_p, Fsame_window_p)
5788 (Fdisplay_buffer): Move those functions to window.el.
5789 (syms_of_window): Remove corresponding declarations.
5790 (display_buffer): New function.
5791 (temp_output_buffer_show, Fother_window_for_scrolling): Use it.
5792 * dispnew.c (Flast_nonminibuf_frame): New function.
5793 * buffer.c (Fpop_to_buffer): Move to window.el.
5794
57952008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
5796
5797 * data.c (set_internal): Fix up call to let_shadows_buffer_binding_p.
5798
57992008-06-05 Kenichi Handa <handa@m17n.org>
5800
5801 * coding.c (detect_coding): Fix previous change.
5802 (detect_coding_system): Likewise.
5803
58042008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
5805
5806 * character.h (MAKE_CHAR_MULTIBYTE): Check the arg is a (uni)byte.
5807
5808 * keymap.c (Vminibuffer_local_filename_must_match_map):
5809 Rename from Vminibuffer_local_must_match_filename_map.
5810 (syms_of_keymap):
5811 * minibuf.c (Fcompleting_read): Adjust accordingly.
5812 * commands.h: Rename declaration as well.
5813
58142008-06-05 Kenichi Handa <handa@m17n.org>
5815
5816 * font.c (Ffont_spec): Don't use font_parse_family_registry for
5817 family name.
5818 (Ffont_put): Likewise.
5819
5820 * fontset.c (fontset_find_font): Call font_open_for_lface with the
5821 current font-spec.
5822
5823 * xfont.c (xfont_list): Don't set registry to iso8859-1 even if it
5824 is unspecified.
5825
5826 * xfaces.c (realize_x_face): If the font-related face attributes
5827 are the same as those of default face, realize a new fontset from
5828 default->fontset.
5829 (Fx_family_fonts): Use font_parse_family_registry instead of Ffont_put.
5830
58312008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
5832
5833 * xdisp.c (move_it_in_display_line_to): Improve the type of its args.
5834 (move_it_in_display_line): New wrapper.
5835
5836 * window.c (window_scroll_pixel_based_preserve_x)
5837 (window_scroll_preserve_hpos, window_scroll_preserve_vpos): New vars.
5838 (window_scroll_pixel_based, window_scroll_line_based):
5839 Use them to preserve column positions.
5840 (syms_of_window): Initialize them.
5841
5842 * indent.c (Fvertical_motion): Extend first arg to allow passing an
5843 (HPOS . VPOS) pair.
5844
5845 * dispextern.h (move_it_in_display_line): Declare.
5846
58472008-06-05 Juanma Barranquero <lekktu@gmail.com>
5848
5849 * window.c (Fwindow_parameter): Return VALUE, not (PARAMETER . VALUE).
5850 (Fwindow_parameters): Return copy of parameter alist. Doc fix.
5851 (Fset_window_parameter): Return VALUE, not parameter alist. Doc fix.
5852
58532008-06-04 Juanma Barranquero <lekktu@gmail.com>
5854
5855 * window.c (Fset_window_parameter): Doc fix.
5856 (Fwindow_parameters, Fwindow_parameter): Remove redundant check.
5857
58582008-06-04 Joakim Verona <joakim@verona.se>
5859
5860 * window.h (struct window): Add new member window_parameters.
5861
5862 * window.c (Fwindow_parameters, Fwindow_parameter)
5863 (Fset_window_parameter): New defuns.
5864 (syms_of_window): Defsubr the new defuns.
5865 (make_window): Initialize window_parameters to nil.
5866
58672008-06-04 John Paul Wallington <jpw@pobox.com>
5868
5869 * eval.c (Fdefmacro): Doc fix.
5870
58712008-06-04 Kenichi Handa <handa@m17n.org>
5872
5873 * coding.c (detect_coding): Fix handling of coding->head_ascii.
5874 Be sure to call setup_coding_system when we find a proper coding system.
5875 (detect_coding_system): Fix handling of coding->head_ascii.
5876
58772008-06-03 Andreas Schwab <schwab@suse.de>
5878
5879 * font.c (font_prop_validate_spacing): Fix last change.
5880
58812008-06-03 Kenichi Handa <handa@m17n.org>
5882
5883 * font.c (font_prop_validate_spacing): Handle uppercase symbols.
5884 (font_parse_fcname): Fix handling of unknown key.
5885
5886 * xfont.c (xfont_list): Try an alias.
5887
5888 * charset.c (char_charset): Return NULL if the arg charset_list is
5889 specified and C doesn't belong to any of them.
5890
58912008-06-02 Chip Coldwell <coldwell@redhat.com>
5892
5893 * font.c (font_pixel_size): Don't take cdr of an integer.
5894
58952008-06-02 Jim Meyering <meyering@redhat.com>
5896
5897 Make "xfree (NULL)" a no-op; remove useless if-before-xfree.
5898 * alloc.c (xfree): Return right away for a NULL arg.
5899 * lread.c (nosuffix): Remove now-useless if-before-xfree tests.
5900 * gtkutil.c (xg_gtk_scroll_destroy): Likewise.
5901 * mac.c (create_apple_event_from_event_ref): Likewise.
5902 (create_apple_event_from_drag_ref, cfstring_create_normalized):
5903 Likewise.
5904 * doprnt.c (doprnt1): Likewise.
5905 * frame.c (frame): Likewise.
5906 * keyboard.c (wipe_kboard): Likewise.
5907 * macterm.c (x_free_frame_resources, xlfdpat_destroy, XFreePixmap)
5908 (init_font_name_table, mac_unload_font, x_delete_display): Likewise.
5909 * term.c (tty_default_color_capabilities, maybe_fatal)
5910 (delete_tty): Likewise.
5911 * w16select.c (string): Likewise.
5912 * w32.c (w32_get_resource, SET_ENV_BUF_SIZE): Likewise.
5913 * w32bdf.c (w32_free_bdf_font): Likewise.
5914 * w32fns.c (w32_unload_font): Likewise.
5915 * w32font.c (w32font_close): Likewise.
5916 * window.c (size_window): Likewise.
5917 * xselect.c (receive_incremental_selection): Likewise.
5918 * xterm.c (x_free_frame_resources, x_delete_display): Likewise.
5919 * mactoolbox.c (create_apple_event_from_drag_ref): Likewise.
5920 * w32.c (stat): Likewise.
5921
5922 Remove useless if-before-free tests.
5923 * editfns.c (Fset_time_zone_rule): Likewise.
5924 * lread.c (nosuffix): Likewise.
5925 * ralloc.c (get_bloc): Likewise.
5926 * regex.c (reg_free): Likewise.
5927 * xftfont.c (xftfont_open, xftfont_close): Likewise.
5928 * xrdb.c (get_user_app, get_environ_db, x_load_resources): Likewise.
5929 * xsmfns.c (smc_save_yourself_CB): Likewise.
5930
59312008-06-02 Kenichi Handa <handa@m17n.org>
5932
5933 * font.c (font_find_for_lface): Handle float font size.
5934 (font_open_for_lface): Likewise.
5935
5936 * xfaces.c (x_supports_face_attributes_p): Check face->font before
5937 comparing the properties.
5938
59392008-06-01 Jason Rumney <jasonr@gnu.org>
5940
5941 * w32font.c (w32_enumfont_pattern_entity): Use requested registry.
5942 Treat iso10646-1 and Windows DEFAULT_CHARSET specially.
5943 Duplicate iso8859-1 fonts as iso10646-1 if no registry specified.
5944 Don't add empty script list.
5945 (w32_registry): Only map DEFAULT_CHARSET to iso10646-1 here.
5946
59472008-06-01 Dan Nicolaescu <dann@ics.uci.edu>
5948
5949 * Makefile.in (dot, dotdot): Remove, update users.
5950 ".." has been used elsewhere in the file for a long time.
5951 (LIBXT_STATIC): Remove conditional based on unused variable.
5952
59532008-06-01 Miles Bader <miles@gnu.org>
5954
5955 * xfaces.c (Vface_remapping_alist): New variable.
5956 (syms_of_xfaces): Initialize it.
5957 (enum named_merge_point_kind): New type.
5958 (struct named_merge_point): Add `named_merge_point_kind' field.
5959 (push_named_merge_point): Make cycle detection respect different
5960 named-merge-point kinds.
5961 (lface_from_face_name_no_resolve): Rename from `lface_from_face_name'.
5962 Remove face-name alias resolution.
5963 (lface_from_face_name): New definition using
5964 `lface_from_face_name_no_resolve'.
5965 (get_lface_attributes_no_remap): Rename from `get_lface_attributes'.
5966 Call lface_from_face_name_no_resolve instead of lface_from_face_name.
5967 (get_lface_attributes): New definition that layers face-remapping on
5968 top of get_lface_attributes_no_remap. New arg `named_merge_points'.
5969 (lookup_basic_face): New function.
5970 (lookup_derived_face): Pass new last arg to `get_lface_attributes'.
5971 (realize_named_face): Call `get_lface_attributes_no_remap' instead of
5972 `get_lface_attributes'.
5973 (face_at_buffer_position): Use `lookup_basic_face' to lookup
5974 DEFAULT_FACE_ID if necessary. When optimizing the default-face case,
5975 return default_face's face-id instead of the constant DEFAULT_FACE_ID.
5976
5977 * xdisp.c (init_iterator): Pass base_face_id through
5978 `lookup_basic_face' when we actually use it as a face-id.
5979 (handle_single_display_prop): Use `lookup_basic_face' to lookup
5980 DEFAULT_FACE_ID.
5981
5982 * fontset.c (Finternal_char_font): Use `lookup_basic_face' to
5983 lookup the initial face-id.
5984
5985 * dispextern.h (lookup_basic_face, Vface_remapping_alist): New decls.
5986
59872008-06-01 Juanma Barranquero <lekktu@gmail.com>
5988
5989 * textprop.c (syms_of_textprop) <text-property-default-nonsticky>:
5990 (Fremove_text_properties): Fix typos in docstrings.
5991
59922008-05-31 Kenichi Handa <handa@m17n.org>
5993
5994 * font.c (font_list_entities): Fix the car part of data to be
5995 stored in the cache.
5996
5997 * ftfont.c (ftfont_font_format): Don't use strcasestr.
5998
59992008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
6000
6001 * chartab.c (Foptimize_char_table, optimize_sub_char_table):
6002 Add a `test' argument so another predicate than `equal' can be used.
6003 (map_sub_char_table): Use `eq' rather than `equal' to merge ranges.
6004 (map_char_table): Remove unused vars `c' and `i'.
6005 * lisp.h (Foptimize_char_table): Adjust declaration.
6006 * charset.c (Fclear_charset_maps): Adjust call to Foptimize_char_table.
6007
60082008-05-30 Kenichi Handa <handa@m17n.org>
6009
6010 * font.c (Ffont_info): Define only if HAVE_WINDOW_SYSTEM is defined.
6011 (syms_of_font): Defsubr Sfont_info only if HAVE_WINDOW_SYSTEM is
6012 defined.
6013
60142008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
6015
6016 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
6017 (Fmake_variable_frame_local): Disallow mixing buffer-local and
6018 frame-local settings for the same variable.
6019
60202008-05-30 Kenichi Handa <handa@m17n.org>
6021
6022 * fontset.c (Ffont_info): Move to font.c.
6023 (syms_of_fontset): Delete defsubr of Sfont_info.
6024
6025 * font.c (font_style_to_value, font_score): Delete casting of the
6026 args to xstcasecmp.
6027 (register_font_driver): Increment num_font_drivers only when
6028 registering the driver globally.
6029 (Ffont_info): Move from fontset.c. Handle a font object too.
6030 (syms_of_font): Defsubr Sfont_info.
6031
60322008-05-29 Kenichi Handa <handa@m17n.org>
6033
6034 * coding.h (enum define_coding_utf8_arg_index): New enum.
6035 (enum coding_attr_index): Change coding_attr_utf_16_bom to
6036 coding_attr_utf_bom.
6037 (enum utf_bom_type): Rename from utf_16_bom_type.
6038 (struct utf_16_spec): Adjust for the above change.
6039 (struct coding_system): Add utf_8_bom in `spec' union.
6040
6041 * coding.c (CODING_UTF_8_BOM): New macro.
6042 (enum coding_category): Delete coding_category_utf_8, add
6043 coding_category_utf_8_auto, coding_category_utf_8_nosig, and
6044 coding_category_utf_8_sig.
6045 (CATEGORY_MASK_UTF_8): Delete it.
6046 (CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG)
6047 (CATEGORY_MASK_UTF_8_SIG): New macros.
6048 (CATEGORY_MASK_ANY): Delete CATEGORY_MASK_UTF_8, add
6049 CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG, and
6050 CATEGORY_MASK_UTF_8_SIG.
6051 (CATEGORY_MASK_UTF_8): New macro.
6052 (UTF_BOM, UTF_8_BOM_1, UTF_8_BOM_2, UTF_8_BOM_3): New macros.
6053 (detect_coding_utf_8): Check BOM.
6054 (decode_coding_utf_8, encode_coding_utf_8): Handle BOM.
6055 (decode_coding_utf_16): Adjust for the change of enum utf_bom_type.
6056 (encode_coding_utf_16): Likewise.
6057 (setup_coding_system): Likewise. Set CODING_UTF_8_BOM (coding).
6058 (detect_coding, detect_coding_system): Handle utf-8-auto.
6059 (Fdefine_coding_system_internal): Handle `bom' property for utf-8.
6060 (syms_of_coding): Fix setting up of Vcoding_category_table.
6061
60622008-05-29 Stefan Monnier <monnier@iro.umontreal.ca>
6063
6064 * process.c (Faccept_process_output): If `millisec' is non-nil,
6065 `seconds' default to 0.
6066 (wait_reading_process_output): Also return non-nil if we read output
6067 from a non-running process.
6068
60692008-05-29 Jason Rumney <jasonr@gnu.org>
6070
6071 * w32font.c (w32font_open_internal): Prefer truetype fonts unless
6072 `raster' specified.
6073 (add_font_entity_to_list): Allow non-opentype truetype fonts back
6074 in the uniscribe backend, but disallow any font that has no
6075 unicode subrange support.
6076
60772008-05-29 Juanma Barranquero <lekktu@gmail.com>
6078
6079 * xfaces.c (Fx_list_fonts, Finternal_copy_lisp_face):
6080 Fix typos in docstrings.
6081
60822008-05-29 Kenichi Handa <handa@m17n.org>
6083
6084 * xfaces.c (Fx_list_fonts): Make it return a list of font names.
6085 (Fx_family_fonts): Set frame correctly.
6086
60872008-05-28 Jason Rumney <jasonr@gnu.org>
6088
6089 * w32term.c (x_draw_glyph_string): Use clipmask if specified.
6090
60912008-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
6092
6093 * fileio.c (Fwrite_region): Delay the defaulting to beg&z to after
6094 calling build_annotations.
6095
60962008-05-28 Juanma Barranquero <lekktu@gmail.com>
6097
6098 * coding.c (Fdecode_coding_region, Fencode_coding_region)
6099 (Fencode_coding_string):
6100 (syms_of_coding) <coding-system-for-read, coding-system-for-write>:
6101 <latin-extra-code-table>: Fix typos in docstrings.
6102 (syms_of_coding) <coding-system-alist>: Doc fix.
6103 (syms_of_coding) <translation-table-for-input>: Reflow docstring.
6104
61052008-05-28 Kenichi Handa <handa@m17n.org>
6106
6107 * fontset.c (Ffont_info): Don't call font_close_object.
6108
6109 * font.c (font_parse_family_registry): Use Ffont_put to validate
6110 foundry and family.
6111 (font_delete_unmatched): Don't check spacing.
6112 (font_list_entities): Add spacing to the spec to list fonts.
6113
6114 * ftfont.c (ftfont_spec_pattern): Don't set FC_SPACING to pattern.
6115 (ftfont_list): Check spacing here. Don't include FC_CHARSET in objset.
6116
6117 * coding.c (encode_coding_raw_text): Fix previous change.
6118 (encode_coding_object): When the dst_object is a buffer and is
6119 different from src_object, move gap to PT.
6120
61212008-05-27 Chong Yidong <cyd@stupidchicken.com>
6122
6123 * xterm.c (x_draw_glyph_string): If a clipmask is specified, use it.
6124
61252008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
6126
6127 * coding.c (encode_coding_raw_text): Set coding->produced_char for
6128 all branches. Compute it differently.
6129
6130 * xdisp.c [!HAVE_WINDOW_SYSTEM]: Include font.h for --without-x.
6131
61322008-05-27 Juanma Barranquero <lekktu@gmail.com>
6133
6134 * w32font.c (compute_metrics): Rewrite an "else { if () ... else ... }"
6135 into "else if () ... else ...".
6136
61372008-05-27 Jason Rumney <jasonr@gnu.org>
6138
6139 * w32font.c (w32font_open_internal): Determine if glyph indices
6140 are likely to work here.
6141
61422008-05-27 Chong Yidong <cyd@stupidchicken.com>
6143
6144 * xdisp.c (draw_glyphs): If mouse-highlighting is on, attempt to
6145 draw overlap glyphs with appropriate highlighting.
6146
61472008-05-27 Kenichi Handa <handa@m17n.org>
6148
6149 * xfont.c (xfont_open): Fix calculation of font->average_width.
6150
61512008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
6152
6153 * casefiddle.c (casify_object): Try to guess better whether the
6154 argument is a byte or a char.
6155
61562008-05-26 Andreas Schwab <schwab@suse.de>
6157
6158 * xselect.c (x_reply_selection_request): Properly handle format == 32.
6159 Always send multiples of format size.
6160
6161 * xterm.c (x_set_frame_alpha): Fix type mismatch.
6162
61632008-05-26 Jason Rumney <jasonr@gnu.org>
6164
6165 * w32font.c (w32font_text_extents): Zero whole metrics struct first.
6166 (compute_metrics): Don't set failure if we just cleared the cache.
6167 (w32_weight_table): Remove unused variable.
6168 (w32_enumfont_pattern_entity): Use FONT_SPACING_CHARCELL for
6169 backwards compatibility.
6170
61712008-05-25 Kenichi Handa <handa@m17n.org>
6172
6173 * w32term.c (x_draw_glyph_string):
6174 * xterm.c (x_draw_glyph_string): Fix calculation of underline position.
6175
6176 * xfaces.c: Delete unused function prototypes.
6177 (xstrlwr, font_frame): Delete them.
6178 (clear_face_cache): Delete unused variable.
6179
6180 * xftfont.c (xftfont_open): Delete unused variable.
6181 If underline_thickness is not 1, adjust underline_position.
6182
6183 * ftxfont.c (ftxfont_open): Delete unused variable.
6184
6185 * fontset.c (face_for_char): Optimize for the case of no charset
6186 property.
6187
6188 * font.c (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE)
6189 (check_gstring, check_otf_features, otf_list, otf_tag_symbol)
6190 (otf_open, font_otf_capability, generate_otf_features)
6191 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
6192 Comment out by surrounding "#if 0" and "#endif" for the moment.
6193 (Ffont_drive_otf, Ffont_otf_alternates): Likewise.
6194 (syms_of_font): Codes for accessing above commented out.
6195
61962008-05-24 Eli Zaretskii <eliz@gnu.org>
6197
6198 * w32proc.c: Include dispextern.h.
6199
6200 * w32.c: Include dispextern.h.
6201
62022008-05-23 Juanma Barranquero <lekktu@gmail.com>
6203
6204 * charset.c (Fencode_char, Fsplit_char): Doc fixes.
6205 (Fget_unused_iso_final_char, Fdecode_char, Fiso_charset):
6206 Fix typos in docstrings.
6207
62082008-05-23 Jason Rumney <jasonr@gnu.org>
6209
6210 * xsmfns.c: Remove includes that are already included by config.h.
6211
62122008-05-23 Kenichi Handa <handa@m17n.org>
6213
6214 * charset.c (Qemacs, charset_emacs): New variables.
6215 (char_charset): Fix for non-Unicode characters.
6216 (syms_of_charset): Define charset_emacs.
6217
6218 * w32term.c (x_draw_glyph_string): Be sure to update
6219 s->underline_thickness and s->underline_position. Be sure to draw
6220 underline within the current line area.
6221
6222 * xterm.c (x_draw_glyph_string): Be sure to update
6223 s->underline_thickness and s->underline_position. Be sure to draw
6224 underline within the current line area.
6225
6226 * fontset.c: Delete unused variables and add casting for char *
6227 throughout the file.
6228 (fontset_font): Try the fallback fonts of the current fontset
6229 before consulting the default fontset.
6230
6231 * ftfont.c (ftfont_spec_pattern): Free charset if necessary.
6232
6233 * xfont.c (xfont_list_pattern): Free names returned from XListFonts.
6234
62352008-05-22 Jason Rumney <jasonr@gnu.org>
6236
6237 * font.c: Don't include strings.h.
6238
6239 * dispextern.h, xfaces.c (xstrcasecmp): Rename from xstricmp.
6240
6241 * dosfns.c, fileio.c, font.c, fontset.c, image.c, macfns.c:
6242 * macterm.c, process.c, w32.c, w32fns.c, w32proc.c, xfaces.c:
6243 * xfns.c, xfont.c: All callers of stricmp and strcasecmp changed
6244 to call xstrcasecmp.
6245
6246 * xfont.c (xfont_list_pattern, compare_font_names): Use xstrcasecmp.
6247
6248 * fontset.c (fs_query_fontset): Use xstrcasecmp.
6249
6250 * font.c (font_style_to_value, font_score): Use xstrcasecmp.
6251
6252 * dosfns.c (msdos_stdcolor_idx): Use xstrcasecmp.
6253
62542008-05-22 Kenichi Handa <handa@m17n.org>
6255
6256 * puresize.h (BASE_PURESIZE): Increase to 1220000.
6257
6258 * font.c (font_prop_validate_style): Adjust for the format
6259 change of font_style_table.
6260
6261 * w32font.c (w32font_open_internal): Call Ffont_xlfd_name with
6262 two args.
6263
6264 * xfaces.c (x_update_menu_appearance): Call Ffont_xlfd_name with
6265 two args.
6266
62672008-05-22 Stefan Monnier <monnier@iro.umontreal.ca>
6268
6269 * minibuf.c (keys_of_minibuf): Delete.
6270 * lisp.h (keys_of_minibuf): Delete.
6271 * emacs.c (main): Don't call keys_of_minibuf.
6272
62732008-05-22 Kenichi Handa <handa@m17n.org>
6274
6275 * ftfont.c (ftfont_resolve_generic_family): Rename from
6276 ftfont_list_generic_family. Return a single family for each
6277 generic family.
6278 (ftfont_spec_pattern): Add FC_FAMILY to pattern.
6279 (ftfont_list): Adjust for the change of ftfont_resolve_generic_family.
6280 Call font_add_log.
6281 (ftfont_match): Call font_add_log.
6282
6283 * font.h (Ffont_xlfd_name): EXFUN adjusted.
6284 (FONT_DEBUG): Define it.
6285 (font_add_log): Extern it.
6286 (font_assert): Rename from xassert.
6287
6288 * xfont.c (xfont_get_pcm): Change xassert to font_assert.
6289 (xfont_list_family): Call font_add_log.
6290 (xfont_match): Likewise.
6291 (memq_no_quit): Delete.
6292
6293 * fontset.c (fontset_from_font, Ffontset_info): Add the 2nd arg in
6294 call of Ffont_xlfd_name.
6295
6296 * xfaces.c (struct table_entry, slant_table, weight_table)
6297 (swidth_table): Move to font.c.
6298
6299 * font.c: Checking of FONT_DEBUG is moved to font.h. All calls of
6300 xassert are changed to font_assert. Delete many unused variables.
6301 (Vfont_weight_table, Vfont_slant_table, Vfont_width_table):
6302 New variables.
6303 (struct table_entry): Move from xfaces.c and modified.
6304 (weight_table, slant_table, width_table): Move from xfaces.c and
6305 contents adjusted for the change of struct table_entry.
6306 (font_style_to_value, font_style_symbolic): Adjust for the
6307 format change of font_style_table.
6308 (font_parse_family_registry): Don't overwrite existing foundry and
6309 family of font_spec.
6310 (font_score): Fix calculation of diff for sizes.
6311 (font_sort_entites): Call font_add_log.
6312 (font_delete_unmatched): Return a newly created list.
6313 (font_list_entities): Fix previous change. Call font_add_log.
6314 (font_matching_entity, font_open_entity, font_close_entity):
6315 Call font_add_log.
6316 (Ffont_xlfd_name): New arg FOLD-WILDCARDS.
6317 (Finternal_set_font_style_table): Delete.
6318 (BUILD_STYLE_TABLE): New macro.
6319 (build_style_table): New function.
6320 (Vfont_log, font_log_env_checked): New variables.
6321 (font_add_log): New function.
6322 (syms_of_font): Delete defsubr Sinternal_set_font_style_table.
6323 Declare Lisp variables "font-weight-table", "font-slant-table",
6324 "font-width-table", and "font-log". Initialize font_style_table.
6325
63262008-05-21 Dan Nicolaescu <dann@ics.uci.edu>
6327
6328 * xterm.c (x_set_frame_alpha): Move declarations before statements.
6329
63302008-05-21 Seiji Zenitani <zenitani@mac.com>
6331 Ryo Yoshitake <ryo@shiftmode.net>
6332
6333 * frame.c (Qalpha): Add a new frame parameter `alpha'.
6334 (Vframe_alpha_lower_limit): New variable.
6335 (x_set_alpha): New function.
6336
6337 * frame.h (Qalpha, Vframe_parameter_lower_limit): Export them.
6338
6339 * xfns.c (x-create-frame, Qalpha):
6340 Initialize the frame parameter `alpha'.
6341 * xterm.c (OPAQUE, OPACITY): New.
6342 (x_set_frame_alpha): New function.
6343 (frame_highlight, frame_unhighlight): Call x_set_frame_alpha.
6344
6345 * macfns.c (mac_frame_parm_handlers): A null handler for x_set_alpha.
6346 * w32fns.c (w32_frame_parm_handlers): Likewise.
6347
63482008-05-20 Jason Rumney <jasonr@gnu.org>
6349
6350 * w32font.c (add_font_entity_to_list): Don't add non-opentype
6351 truetype fonts to opentype list.
6352
63532008-05-20 Juanma Barranquero <lekktu@gmail.com>
6354
6355 * fontset.c (Ffontset_info): Doc fix.
6356 (syms_of_fontset) <font-encoding-charset-alist, use-default-ascent>:
6357 <ignore-relative-composition>: Fix typos in docstrings.
6358
6359 * font.c (syms-of-font) <font-encoding-alist>:
6360 (Ffontp, Ffont_make_gstring): Fix typos in docstrings.
6361 (Flist_fonts, Ffont_family_list, Ffont_fill_gstring, Fquery_font)
6362 (Ffont_otf_alternates): Doc fixes.
6363
63642008-05-20 Kenichi Handa <handa@m17n.org>
6365
6366 * Makefile.in (FONTSRC): Delete it. Change all $(FONTSRC) to
6367 font.h through out the file.
6368 (FONT_DRIVERS): Rename from FONTOBJ.
6369 (obj): Change $(FONTOBJ) to $(FONT_DRIVERS). Add font.o.
6370 (SOME_MACHINE_OBJECTS): Change $(FONTOBJ) to $(FONT_DRIVERS).
6371
6372 * emacs.c (main): Call syms_of_font unconditionally.
6373
6374 * font.h (find_font_encoding): Extern it.
6375
6376 * font.c (Vfont_encoding_alist, find_font_encoding): Move from
6377 fontset.c.
6378 (font_pixel_size)[! HAVE_WINDOW_SYSTEM]: Return 1.
6379 (font_open_entity): Update FRAME_X_DISPLAY_INFO (f)->n_fonts,
6380 FRAME_SMALLEST_CHAR_WIDTH (f), and FRAME_SMALLEST_FONT_HEIGHT (f)
6381 only when HAVE_WINDOW_SYSTEM is defined.
6382 (font_close_object): Update FRAME_X_DISPLAY_INFO (f)->n_fonts only
6383 when HAVE_WINDOW_SYSTEM is defined.
6384
6385 * fontset.c (Vfont_encoding_alist, find_font_encoding): Move to font.c.
6386 (syms_of_fontset): Move declaration of font-encoding-alist to font.c.
6387
6388 * xfaces.c: Include font.h unconditionally.
6389 (merge_face_ref, merge_face_vectors)
6390 (Finternal_set_lisp_face_attribute): Cancel the previous change.
6391
63922008-05-20 Stefan Monnier <monnier@iro.umontreal.ca>
6393
6394 * xdisp.c (select_frame_for_redisplay): Adjust for last change to
6395 indirect_variable.
6396 * eval.c (lisp_indirect_variable): New fun.
6397 (Fuser_variable_p): Use it.
6398
63992008-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
6400
6401 * lisp.h (indirect_variable):
6402 * data.c (indirect_variable, let_shadows_buffer_binding_p):
6403 Use Lisp_Symbol pointers rather than Lisp_Object.
6404 Adjust callers.
6405 * buffer.c (buffer_slot_type_mismatch): Use wrong-type-argument.
6406 To this end, change calling-convention.
6407
6408 * minibuf.c (Finternal_complete_buffer): Only strip out hidden buffers
6409 if some non-hidden buffers are selected by string&pred.
6410
64112008-05-19 Chong Yidong <cyd@stupidchicken.com>
6412
6413 * process.c (wait_reading_process_output): Always check status
6414 when in batch mode.
6415
64162008-05-19 Kenichi Handa <handa@m17n.org>
6417
6418 * font.c (font_list_entities): Fix handling of cache.
6419 (font_matching_entity): Likewise.
6420
6421 * ftfont.c (cs_iso8859_1): Delete.
6422 (ft_face_cache): New variable.
6423 (struct ftfont_info): New member fc_charset_idx.
6424 (ftfont_build_basic_charsets): Delete.
6425 (fc_charset_table): New variable.
6426 (ftfont_pattern_entity): New arg fc_charset_idx. Store (FILENAME
6427 . FC_CHARSET_IDX) as :font-entity property in the font entity.
6428 Callers changed.
6429 (ftfont_lookup_cache, ftfont_get_charset): New functions.
6430 (ftfont_spec_pattern): New argument fc_charset_idx.
6431 Check registry more rigidly. Change callers.
6432 (ftfont_open, ftfont_close, ftfont_has_char): Adjust for the
6433 change of :font-entity property of the font.
6434
6435 * xftfont.c (xftfont_open): Adjust for the change of :font-entity
6436 property of the font.
6437
64382008-05-18 Juanma Barranquero <lekktu@gmail.com>
6439
6440 * coding.c (Fcoding_system_p): Rename argument to match docstring.
6441 (Funencodable_char_position, Fcheck_coding_systems_region)
6442 (Fdecode_coding_string, Fencode_coding_string): Fix typos in docstrings.
6443 (Fdetect_coding_region, Fdetect_coding_string, Fencode_coding_region)
6444 (Ffind_operation_coding_system, Fset_coding_system_priority)
6445 (Fcoding_system_eol_type): Doc fixes.
6446
64472008-05-17 Glenn Morris <rgm@gnu.org>
6448
6449 * sysdep.c (child_setup_tty): Handle systems with NLDLY, without FFDLY.
6450
64512008-05-16 Eli Zaretskii <eliz@gnu.org>
6452
6453 * dired.c (Ffile_attributes): Shut up GCC warnings about st_uid
6454 and st_gid.
6455
6456 * frame.c (Fdelete_frame): Don't call font_update_drivers if
6457 HAVE_WINDOW_SYSTEM is not defined.
6458
6459 * xfaces.c (merge_face_ref, merge_face_vectors)
6460 (Finternal_set_lisp_face_attribute): Use FONT_*_INDEX only when
6461 HAVE_WINDOW_SYSTEM is defined.
6462 (Fface_font): Fix non-HAVE_WINDOW_SYSTEM case.
6463
64642008-05-16 Stefan Monnier <monnier@iro.umontreal.ca>
6465
6466 * keyboard.c (parse_menu_item): Do not cache key shortcut any more.
6467
64682008-05-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6469
6470 * macterm.c (x_draw_relief_rect): Remove unused variable `dpy'.
6471
64722008-05-15 Kenichi Handa <handa@m17n.org>
6473
6474 * font.c (font_find_for_lface): Reflect LFACE_FONT in the font
6475 preference.
6476
64772008-05-15 Glenn Morris <rgm@gnu.org>
6478
6479 * emacs.c (USAGE1, standard_args): Remove -disable-font-backend.
6480
64812008-05-15 Chong Yidong <cyd@stupidchicken.com>
6482
6483 * fns.c (init_fns): Don't initialize weak_hash_tables here.
6484 (init_weak_hash_tables): New fun. Initialize weak_hash_tables.
6485
6486 * alloc.c (init_alloc_once): Call init_weak_hash_tables.
6487
64882008-05-15 Kenichi Handa <handa@m17n.org>
6489
6490 * ftfont.c (ftfont_list): Downcase family name to check generic
6491 families.
6492
6493 * xfaces.c (Finternal_set_lisp_face_attribute): Be sure to make a
6494 font-spec for QCfont value.
6495
6496 * fontset.c (Fnew_fontset): Call font_unparse_xlfd with 256-byte
6497 buffer. Check the return value of it.
6498
64992008-05-14 Jason Rumney <jasonr@gnu.org>
6500
6501 * w32term.c (w32_get_glyph_overhangs): Remove.
6502 (w32_redisplay_interface): Use x_get_glyph_overhangs instead.
6503
65042008-05-14 Kenichi Handa <handa@m17n.org>
6505
6506 * font.c (font_prop_validate): Make nil a valid value.
6507 (font_clear_cache): Check if the cached vector of entities is nil
6508 or not.
6509
65102008-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6511
6512 * emacs.c (main_thread): Conditionalize on
6513 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
6514 (main) [FORWARD_SIGNAL_TO_MAIN_THREAD]: Initialize it.
6515
6516 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): New define.
6517 (main_thread, SIGNAL_THREAD_CHECK): Conditionalize on
6518 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
6519
65202008-05-14 Kenichi Handa <handa@m17n.org>
6521
6522 * coding.c (detect_coding_iso_2022): Ignore a coding category that
6523 has no corresponding coding system.
6524
65252008-05-14 Jason Rumney <jasonr@gnu.org>
6526
6527 * font.h (struct font) [WINDOWSNT]: Remove codepage member.
6528
6529 * w32font.h (w32font_open_internal): Update declaration.
6530
6531 * w32font.c (w32font_open_internal): Change last argument from
6532 w32font_info struct to font object. Fill in font object from
6533 font_entity. Get Outline metrics if possible. Use them to
6534 calculate underline position and thickness. Use xlfd name as name
6535 property. Don't set codepage.
6536 (w32font_open): Pass font_object to w32font_open_internal. Don't
6537 update dpyinfo->smallest_font_height and dpyinfo->smallest_char_width.
6538 (w32font_draw): Use s->font.
6539 (clear_cached_metrics): Don't clear non-existent blocks.
6540
6541 * w32term.c (w32_compute_glyph_string_overhangs): Don't compute if
6542 font was not found.
6543 (x_draw_glyph_string): Use underline position and thickness from font.
6544
6545 * w32uniscribe.c (uniscribe_open): Pass font_object to
6546 w32font_open_internal.
6547
65482008-05-14 Kenichi Handa <handa@m17n.org>
6549
6550 These changes are to delete all legacy font-handling codes, and
6551 make Emacs use only font-backends.
6552
6553 * Makefile.in: Delete USE_FONT_BACKEND conditionals.
6554 (frame.o, image.o, print.o): Depend on $(FONTSRC).
6555
6556 * makefile.w32-in (WIN32OBJ): Add w32reg.$(O), remove w32bdf.$(O).
6557
6558 * charset.h (Vcharset_non_preferred_head)
6559 (Vcurrent_iso639_language): Extern them.
6560
6561 * charset.c (Vcharset_non_preferred_head): New variable.
6562 (Vcurrent_iso639_language): New variable.
6563 (syms_of_charset): Declare it as a Lisp variable.
6564 (char_charset): Don't check non preferred charsets. As a last
6565 resort, return charset_unicode.
6566 (Fset_charset_priority): Update Vcharset_non_preferred_head.
6567
6568 * composite.c: Throughout the file, delete all USE_FONT_BACKEND
6569 conditionals. Don't check enable_font_backend. Delete all codes
6570 used only when USE_FONT_BACKEND is not defined.
6571
6572 * dispextern.h (struct glyph_string): Change type of `font' to
6573 `struct font *'.
6574 (struct glyph_string): New member underline_position and
6575 underline_thickness.
6576 (enum lface_attribute_index): Remove LFACE_AVGWIDTH_INDEX.
6577 (struct face): Change type of `font' to `struct font *'. Remove
6578 members `font_name', `font_info_id'.
6579 (per_char_metric, encode_char): Delete externs.
6580 (calc_pixel_width_or_height): Adjust the prototype.
6581
6582 * emacs.c (enable_font_backend): Delete extern.
6583 (main): Don't set enable_font_backend. Don't check the command
6584 line argument "-disable-font-backend".
6585
6586 * font.h (Qfont_spec, Qfont_entity, Qfont_object): Extern them.
6587 (enum font_property_index): New members FONT_DPI_INDEX,
6588 FONT_SPACING_INDEX, FONT_AVGWIDTH_INDEX, FONT_NAME_INDEX,
6589 FONT_FULLNAME_INDEX, FONT_FILE_INDEX, FONT_FORMAT_INDEX,
6590 FONT_OBJECT_MAX. Delete FONT_FRAME_INDEX.
6591 (FONT_WEIGHT_NUMERIC, FONT_SLANT_NUMERIC, FONT_WIDTH_NUMERIC)
6592 (FONT_WEIGHT_SYMBOLIC, FONT_SLANT_SYMBOLIC, FONT_WIDTH_SYMBOLIC)
6593 (FONT_WEIGHT_FOR_FACE, FONT_SLANT_FOR_FACE, FONT_WIDTH_FOR_FACE)
6594 (FONT_WEIGHT_NAME_NUMERIC, FONT_SLANT_NAME_NUMERIC)
6595 (FONT_WIDTH_NAME_NUMERIC, FONT_SET_STYLE): New macros.
6596 (struct font_spec, struct font_entity): New structs.
6597 (FONT_ENCODING_NOT_DECIDED): Moved from fontset.h.
6598 (struct font): Many members from old "struct font_info" moved to
6599 here. Members font and entity deleted.
6600 (FONT_SPEC_P, FONT_ENTITY_P, FONT_OBJECT_P, FONTP): Modified for
6601 the new font-related objects.
6602 (CHECK_FONT_SPEC, CHECK_FONT_ENTITY, CHECK_FONT_OBJECT)
6603 (CHECK_FONT_GET_OBJECT): Likewise.
6604 (XFONT_SPEC, XFONT_ENTITY, XFONT_OBJECT, XSETFONT): New macros.
6605 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved from font.h.
6606 (struct font_driver): New members case_sensitive anc check. Type
6607 of the member list and open changed.
6608 (enable_font_backend, font_symbolic_weight, font_symbolic_slant)
6609 (font_symbolic_width, font_find_object, font_get_spec)
6610 (font_set_lface_from_name): Delete extern.
6611 (Fcopy_font_spec, Fmerge_font_spec, Ffont_family_list): New EXFUNs.
6612
6613 * font.c: Include <strings.h>.
6614 (enable_font_backend): Delete it.
6615 (Qfont_spec, Qfont_entity, Qfont_object): New variables.
6616 (CHECK_VALIDATE_FONT_SPEC): Delete it.
6617 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved to font.h.
6618 (null_string): Delete it.
6619 (null_vector): Make it static.
6620 (font_family_alist): Delete it.
6621 (Qnormal): Extern it.
6622 (QCextra, QClanguage): Delete it.
6623 (QClang, QCavgwidth, QCfont_entity, QCfc_unknown_spec): New variables.
6624 (font_make_spec, font_make_entity, font_make_object)
6625 (font_intern_prop): Renamed from intern_downcase. Don't downcase
6626 the string. Callers changed.
6627 (font_pixel_size): Adjusted for the format change of font-related
6628 objects.
6629 (prop_name_to_numeric, prop_numeric_to_name): Delete them.
6630 (font_style_to_value, font_style_symbolic): New function.
6631 (build_font_family_alist): Delete it.
6632 (font_registry_charsets): Use Fassoc_string instead of
6633 assq_no_quit.
6634 (font_prop_validate_symbol): Don't return null_string.
6635 (font_prop_validate_style): Adjusted for the change of
6636 style-related values in a font vector.
6637 (font_property_table): Delete entries for QClanguage and
6638 QCantialias, add entries for QCavgwidth.
6639 (get_font_prop_index): Delete the 2nd argument FROM.
6640 (font_prop_validate): Arguments changed.
6641 (font_put_extra): Adjusted for the change of font-related objects.
6642 (font_expand_wildcards, font_parse_xlfd, font_unparse_xlfd)
6643 (font_parse_fcname, font_unparse_fcname)
6644 (font_prepare_composition): Likewise.
6645 (font_parse_family_registry): Renamed from font_merge_old_spec.
6646 (otf_open): Delete the 1st arg entity.
6647 (font_otf_capability): Adjusted for the above change.
6648 (font_score): New arg alternate_families. Adjusted for the change
6649 of font-related objects.
6650 (font_sort_entites): New arg best_only.
6651 (font_symbolic_weight, font_symbolic_slant, font_symbolic_width):
6652 Delete them.
6653 (font_match_p): Check alternate families.
6654 (font_find_object): Delete it.
6655 (font_check_object): New function.
6656 (font_clear_cache): Adjusted for the change of font-related objects.
6657 (font_delete_unmatched): New arg.
6658 (font_list_entities): Call font_driver->list with a spec that
6659 doesn't specify style-related properties.
6660 (font_matching_entity): Arguments changed. Caller changed.
6661 (font_open_entity): Adjusted for the change of font-related objects.
6662 (font_close_object, font_has_char, font_encode_char)
6663 (font_get_name, font_get_spec): Likewise.
6664 (font_spec_from_name, font_clear_prop, font_update_lface):
6665 New functions.
6666 (font_find_for_lface, font_open_for_lface, font_load_for_lface)
6667 (font_prepare_for_face, font_done_for_face, font_open_by_name)
6668 (font_at): Adjusted for the change of font-related objects.
6669 (font_range): New function.
6670 (Ffontp, Ffont_spec, Ffont_get, Ffont_put, Flist_fonts)
6671 (Ffont_xlfd_name): Adjusted for the change of font-related objects.
6672 (Fcopy_font_spec, Fmerge_font_spec): New function.
6673 (Ffont_family_list): Renamed from list-families.
6674 (Finternal_set_font_style_table): Arguments changed.
6675 (Ffont_fill_gstring, Ffont_shape_text, Fopen_font)
6676 (Ffont_drive_otf, Fquery_font, Ffont_match_p): Adjusted for the
6677 change of font-related objects.
6678 (syms_of_font): Delete "ifdef USE_FONT_BACKEND". DEFSYM new symbols.
6679
6680 * fontset.h (struct font_info): Delete it. Most members go to
6681 struct font.
6682 (FONT_ENCODING_NOT_DECIDED): Moved to font.h.
6683 (enum FONT_SPEC_INDEX): Delete it.
6684 (font_info, list_fonts_func, load_font_func, query_font_func)
6685 (set_frame_fontset_func, find_ccl_program_func)
6686 (get_font_repertory_func, new_fontset_from_font_name): Delete
6687 externs.
6688 (fontset_from_font_name): Extern it.
6689 (FS_LOAD_FONT, FONT_INFO_ID, FONT_INFO_FROM_ID)
6690 (FONT_INFO_FROM_FACE): Deleted.
6691 (face_for_font): Adjust prototype.
6692
6693 * fontset.c: Throughout the file, delete all USE_FONT_BACKEND
6694 conditionals. Don't check enable_font_backend. Delete all codes
6695 used only when USE_FONT_BACKEND is not defined.
6696 (get_font_info_func, list_font_func, load_font_func)
6697 (query_font_func, set_frame_fontset_func, find_ccl_program_func)
6698 (get_font_repertory_func): Delete them.
6699 (FONTSET_SPEC, FONT_DEF_NEW, FONT_DEF_SPEC, FONT_DEF_ENCODING)
6700 (FONT_DEF_REPERTORY, RFONT_DEF_FACE, RFONT_DEF_SET_FACE)
6701 (RFONT_DEF_FONT_DEF, RFONT_DEF_SPEC, RFONT_DEF_REPERTORY)
6702 (RFONT_DEF_OBJECT, RFONT_DEF_SET_OBJECT, RFONT_DEF_SCORE)
6703 (RFONT_DEF_SET_SCORE, RFONT_DEF_NEW): New macros.
6704 (fontset_compare_rfontdef): New function.
6705 (reorder_font_vector): Remove the argument CHARSET-ID. Sort
6706 rfont-defs by qsort. Adjusted for the change of font-group vector.
6707 (load_font_get_repertory): Deleted.
6708 (fontset_find_font): Use new macros to ref/set elements of
6709 font-def and rfont-def.
6710 (fontset_font): Fix the timing of remembering that no font for C.
6711 (free_face_fontset): Do nothing if the face has no fontset.
6712 (face_suitable_for_char_p): Use new macros to ref/set elements of
6713 rfont-def.
6714 (face_for_char): Likewise. Call face_for_char with font_object.
6715 (fs_load_font): Delete. Delete #pragma surrounding it.
6716 (fs_query_fontset): Use strcasecmp instead of strcmp.
6717 (generate_ascii_font_name): Adjusted for the format change of
6718 font-spec.
6719 (Fset_fontset_font): Likewise. Use new macros to set elements of
6720 font-def.
6721 (Fnew_fontset): Use font_unparse_xlfd to generate
6722 FONTSET_ASCII (fontset).
6723 (new_fontset_from_font_name): Deleted.
6724 (fontset_from_font): Renamed from new_fontset_from_font. Check if
6725 a fontset is already created for the font. FIx updating of
6726 Vfontset_alias_alist.
6727 (fontset_ascii_font): Deleted.
6728 (Ffont_info): Adjusted for the format change of font-spec.
6729 (Finternal_char_font): Likewise.
6730 (Ffontset_info): Likewise.
6731 (syms_of_fontset): Don't check load_font_func.
6732
6733 * fns.c (internal_equal): Handle PREV_FONT.
6734
6735 * frame.h: Delete USE_FONT_BACKEND conditional.
6736
6737 * frame.c: Throughout the file, delete all USE_FONT_BACKEND
6738 conditionals. Don't check enable_font_backend. Delete all codes
6739 used only when USE_FONT_BACKEND is not defined.
6740 (x_set_font): Call x_new_font, not x_new_fontset2.
6741 (x_set_font_backend): Use FRAME_FONT macro to check if a font is
6742 already set for the frame.
6743
6744 * ftfont.c (ftfont_pattern_entity): Argument FRAME removed. Make
6745 a font-entity by font_make_entity. Use font_intern_prop instead
6746 of intern_downcase. Use FONT_SET_STYLE to set a style-related
6747 font property. If a font is scalable, set avgwidth property to 0.
6748 Set font-entity property by font_put_extra.
6749 (ftfont_list_generic_family): Argument SPEC and REGISTRY removed.
6750 (ffont_driver): Adjusted for the change of struct font_driver.
6751 (ftfont_spec_pattern): New function.
6752 (ftfont_list): Return a list, not vector.
6753 (ftfont_match): Use ftfont_spec_pattern to get a pattern.
6754 (ftfont_list_family): Don't downcase names.
6755 (ftfont_free_entity): Deleted.
6756 (ftfont_open): Return a font-object. Adjusted for the change of
6757 struct font. Get underline_thickness and underline_position from
6758 font property. Don't update dpyinfo->smallest_font_height and
6759 dpyinfo->smallest_char_width.
6760 (ftfont_close): Don't free `struct font'.
6761 (ftfont_has_char): Adjusted for the format change of font-entity.
6762 (ftfont_encode_char, ftfont_text_extents): Likewise.
6763
6764 * ftxfont.c (ftxfont_list): Return a list, not vector.
6765 (ftxfont_open): Return a font-object. Adjusted for the change of
6766 struct font. Get underline_thickness and underline_position from
6767 font property. Don't update dpyinfo->smallest_font_height and
6768 dpyinfo->smallest_char_width.
6769 (ftxfont_close): Don't decrease FRAME_X_DISPLAY_INFO (f)->n_fonts.
6770 (ftxfont_draw): Adjusted for the change of struct font.
6771
6772 * image.c (image_ascent): Don't include "charset.h". Include
6773 "character.h" and "font.h".
6774
6775 * lisp.h (enum pvec_type): New member PREV_FONT.
6776 (Fassoc_string): EXFUN it.
6777
6778 * print.c: Include font.h.
6779 (print_object): Handle font-related objects.
6780
6781 * xdisp.c: Throughout the file, delete all USE_FONT_BACKEND
6782 conditionals. Don't check enable_font_backend. Delete all codes
6783 used only when USE_FONT_BACKEND is not defined.
6784 (handle_auto_composed_prop): Do nothing if it->f is not on a
6785 window system. Check how many following characters can be
6786 displayed by the same font.
6787 (calc_pixel_width_or_height): Type of the 4th arg is changed to
6788 'struct font *'.
6789 (get_char_face_and_encoding): Assign the whole encoding task to
6790 the `encode-char' method of a font driver.
6791 (fill_composite_glyph_string): Adjusted for the change of `struct
6792 face' and `struct glyph_string'.
6793 (fill_glyph_string): Likewise.
6794 (get_per_char_metric): Arguments changed.
6795 (x_get_glyph_overhangs): Adjusted for the change of `struct face'
6796 and `struct glyph_string'.
6797 (produce_stretch_glyph, calc_line_height_property)
6798 (x_produce_glyphs): Likewise.
6799
6800 * xfaces.c: Throughout the file, delete all USE_FONT_BACKEND
6801 conditionals. Don't check enable_font_backend. Delete all codes
6802 used only when USE_FONT_BACKEND is not defined. Use
6803 FONT_XXX_NAME_NUMERIC instead of face_numeric_xxx.
6804 (QCfoundry, QCadstyle, QCregistry, QCspacing, QCsize, QCavgwidth)
6805 (Qp): Extern them.
6806 (clear_font_table, load_face_font, xlfd_lookup_field_contents):
6807 Deleted.
6808 (struct font_name): Deleted.
6809 (xlfd_numeric_value, xlfd_symbolic_value): Deleted.
6810 (compare_fonts_by_sort_order): New function.
6811 (xlfd_numeric_slant, xlfd_symbolic_slant, xlfd_numeric_weight)
6812 (xlfd_symbolic_weight, xlfd_numeric_swidth, xlfd_symbolic_swidth):
6813 Deleted.
6814 (Fx_family_fonts): Use font_list_entities, and sort fonts by
6815 compare_fonts_by_sort_order.
6816 (Fx_font_family_list): Call Ffont_family_list.
6817 (face_numeric_value, face_numeric_weight, face_numeric_slant)
6818 (face_numeric_swidth, face_symbolic_value, face_symbolic_weight)
6819 (face_symbolic_slant, face_symbolic_swidth)
6820 (split_font_name_into_vector, build_font_name_from_vector)
6821 (xlfd_fixed_p, xlfd_point_size, pixel_point_size)
6822 (font_rescale_ratio, split_font_name, build_font_name)
6823 (free_font_names, sort_fonts, x_face_list_fonts)
6824 (face_font_available_p, sorted_font_list, cmp_font_names)
6825 (font_list_1, concat_font_list, font_list, remove_duplicates):
6826 Deleted.
6827 (Fx_list_fonts): Use Ffont_list.
6828 (LFACE_AVGWIDTH): Deleted.
6829 (check_lface_attrs): Don't check LFACE_AVGWIDTH. Check LFACE_FONT
6830 by FONTP.
6831 (lface_fully_specified_p): Don't check LFACE_AVGWIDTH.
6832 (set_lface_from_font_name): Delete it.
6833 (set_lface_from_font): Renamed from
6834 set_lface_from_font_and_fontset. Caller changed. Don't set
6835 LFACE_AVGWIDTH. Use FONT_XXX_FOR_FACE to get a symbol suitable
6836 for face.
6837 (merge_face_vectors): Copy font-spec if necessary.
6838 Clear properties of the font-spec if necessary.
6839 (merge_face_ref): Clear properties of the font-spec if necessary.
6840 (Finternal_set_lisp_face_attribute): Likewise.
6841 (set_font_frame_param): Use font_load_for_lface to load a
6842 font-object, and call Fmodify_frame_parameters with it.
6843 (x_update_menu_appearance): Don't check LFACE_AVGWIDTH. Get XLFD
6844 font name by Ffont_xlfd_name.
6845 (Finternal_lisp_face_attribute_values): Don't check QCweight,
6846 QCslant, and QCwidth.
6847 (Fface_font): Get a font name from font->props[FONT_NAME_INDEX].
6848 (lface_same_font_attributes_p): Don't check LFACE_AVGWIDTH.
6849 Compare fonts by EQ.
6850 (lookup_non_ascii_face): Deleted.
6851 (face_for_font): The 2nd argument changed.
6852 (x_supports_face_attributes_p): Don't check LFACE_AVGWIDTH.
6853 Check atomic font properties by case insensitive.
6854 (realize_non_ascii_face): Set face->overstrike correctly.
6855 (realize_x_face): Likewise. Check if LFACE_FONT is a font_object.
6856 (dump_realized_face): Get font name from
6857 font->props[FONT_NAME_INDEX]. Don't print font_info_id.
6858
6859 * xfns.c: Throughout the file, delete all USE_FONT_BACKEND
6860 conditionals. Don't check enable_font_backend. Delete all codes
6861 used only when USE_FONT_BACKEND is not defined.
6862 (xic_create_xfontset): Original code deleted and renamed from
6863 xic_create_xfontset2. Use FRAME_FONT, not FRAME_FONT_OBJECT.
6864 (x_make_gc): Don't set GCFont in GCs.
6865 (Fx_create_frame) [USE_LUCID]: Set xlwmenu_default_font to a font
6866 opened by "fixed".
6867 (syms_of_xfns): Don't set get_font_info_func, load_font_func,
6868 find_ccl_program_func, query_font_func, set_frame_fontset_func,
6869 get_font_repertory_func.
6870
6871 * xfont.c: Include <stdlib.h> and "ccl.h".
6872 (struct xfont_info): New structure.
6873 (xfont_query_font): Deleted.
6874 (xfont_find_ccl_program): Renamed from x_find_ccl_program and
6875 moved from xterm.c.
6876 (xfont_driver): Adjusted for the change of struct font_driver.
6877 (compare_font_names): New function.
6878 (xfont_list_pattern): Sort font names case insensitively. Make
6879 font_entity by calling font_make_entity. Avoid auto-scaled fonts.
6880 (xfont_list): Return a list, not vector.
6881 (xfont_match): If the font doesn't have QCname property, generate
6882 a name from the other font properties.
6883 (xfont_open): Return a font-object. Adjusted for the change of
6884 struct font. Get underline_thickness and underline_position from
6885 font property. Don't update dpyinfo->smallest_font_height and
6886 dpyinfo->smallest_char_width.
6887 (xfont_close): Don't free struct font.
6888 (xfont_prepare_face): Adjusted for the change of struct font.
6889 (xfont_done_face): Deleted.
6890 (xfont_has_char): Adjusted for the change of struct font.
6891 (xfont_encode_char, xfont_draw): Likewise.
6892 (xfont_check): New function.
6893
6894 * xftfont.c (xftfont_list): Adjusted for the change of `list'
6895 callback function.
6896 (xftfont_match): Adjusted for the format change of font-entity.
6897 (xftfont_open): Adjusted for the format change of font-entity and
6898 font-object. Adjusted for the change of struct font. Return a
6899 font-object. Don't update dpyinfo->smallest_font_height and
6900 dpyinfo->smallest_char_width.
6901 (xftfont_close): Block input while calling XftFontClose.
6902 (xftfont_prepare_face): Don't block input while calling
6903 xftfont_get_colors. Adjusted for the change of struct font.
6904 (xftfont_shape): Return value of error case fixed.
6905
6906 * xrdb.c (x_load_resources): Don't setup a fontset resource.
6907
6908 * xterm.h: Throughout the file, delete all USE_FONT_BACKEND
6909 conditionals.
6910 (FONT_WIDTH): Return (f)->max_width.
6911 (struct x_display_info): Delete member `font'.
6912 (x_list_fonts, x_get_font_info, x_load_font, x_query_font)
6913 (x_find_ccl_program, x_get_font_repertory): Delete externs.
6914 (struct x_output): Change type of `font' to `struct font *'.
6915
6916 * xterm.c: Throughout the file, delete all USE_FONT_BACKEND
6917 conditionals. Don't check enable_font_backend. Delete all codes
6918 used only when USE_FONT_BACKEND is not defined. Don't include ccl.h.
6919 (x_per_char_metric, x_encode_char): Deleted.
6920 (x_set_cursor_gc, x_set_mouse_face_gc): Don't set GCFont.
6921 (x_compute_glyph_string_overhangs): Adjusted for the change of
6922 `struct face'.
6923 (x_draw_glyph_string_foreground)
6924 (x_draw_composite_glyph_string_foreground): Likewise.
6925 (x_draw_glyph_string): Likewise. Use font->underline_position and
6926 font->underline_thickness.
6927 (x_new_font): Renamed from x_new_fontset2.
6928 (x_new_fontset, x_get_font_info, x_list_fonts): Deleted.
6929 (x_check_font): Call `check' method of a font driver.
6930 (x_font_min_bounds, x_compute_min_glyph_bounds, x_load_font)
6931 (x_query_font, x_get_font_repertory): Deleted.
6932 (x_find_ccl_program): Renamed and moved to xfont.c.
6933 (x_redisplay_interface): Adjusted for the change of `struct
6934 redisplay_interface'.
6935
6936 * w32fns.c: Throughout the file, delete all USE_FONT_BACKEND
6937 conditionals. Don't check enable_font_backend. Delete all codes
6938 used only when USE_FONT_BACKEND is not defined. Surround non-used
6939 code by "#ifdef OLD_FONT" and "endif".
6940 (Fw32_select_font): Use FONT_COMPAT to get old font structure.
6941
6942 * w32font.h (struct w32font_info): New member.
6943 (FONT_COMPAT): New macro.
6944 (w32font_open_internal): Prototype adjusted.
6945
6946 * w32gui.h (XGCValues): Surround `XFontStruct *font' by "if
6947 OLD_FONT" and "endif".
6948
6949 * w32font.c: Throughout the file, delete all USE_FONT_BACKEND
6950 conditionals. Don't check enable_font_backend. Delete all codes
6951 used only when USE_FONT_BACKEND is not defined.
6952 (w32font_open): Return a font-object. Make a font-object by
6953 font_make_object. Adjusted for the change of struct w32font_info.
6954 (w32font_close): Don't free struct font. Adjusted for the change
6955 of struct w32font_info.
6956 (w32font_encode_char, w32font_text_extents, w32font_draw):
6957 Adjusted for the change of struct w32font_info.
6958 (w32font_draw): Likewise.
6959 (w32font_list_internal): Return a list, not vector.
6960 (w32font_open_internal): Change the 4th arg to font-object.
6961 Adjusted for the change of struct w32font_info and font-object format.
6962 (add_font_name_to_list): Don't downcase names.
6963 (w32_enumfont_pattern_entity): Make a font-entity by
6964 font_make_entity. Adjusted for the format change of font-entity.
6965 Use FONT_SET_STYLE to set a style-related font property. If a
6966 font is scalable, set avgwidth property to 0. Set font-entity
6967 property by font_put_extra.
6968 (font_matches_spec): Adjusted for the format change of font-entity.
6969 (w32_weight_table, w32_decode_weight): New variables.
6970 (w32_encode_weight): New function.
6971 (fill_in_logfont): Adjusted for the format change of font-spec.
6972 (w32font_full_name): Use FONT_WEIGHT_SYMBOLIC to get a symbol
6973 weight value.
6974 (w32font_driver): Adjusted for the change of struct font_driver.
6975
6976 * w32term.h: Throughout the file, delete all USE_FONT_BACKEND
6977 conditionals. Don't check enable_font_backend. Surround non-used
6978 code by "#ifdef OLD_FONT" and "endif".
6979 (FONT_WIDTH, FONT_HEIGHT, FONT_BASE, FONT_DESCENT)
6980 (FONT_AVG_WIDTH): Adjusted for the change of struct font.
6981
6982 * w32term.c: Throughout the file, delete all USE_FONT_BACKEND
6983 conditionals. Don't check enable_font_backend. Delete all codes
6984 used only when USE_FONT_BACKEND is not defined. Surround non-used
6985 code by "#ifdef OLD_FONT" and "endif".
6986
6987 * w32uniscribe.c: Delete USE_FONT_BACKEND conditional.
6988 (uniscribe_open): Return value changed to font-object.
6989 Adjusted for the format change of font-object.
6990 (uniscribe_otf_capability): Adjusted for the change of struct font.
6991 (add_opentype_font_name_to_list): Don't downcase names.
6992 (uniscribe_font_driver): Adjusted for the change of struct
6993 font_driver.
6994
69952008-05-13 Chong Yidong <cyd@stupidchicken.com>
6996
6997 * dispnew.c (update_frame_1): Check if tty output is still valid
6998 before flushing it.
6999
70002008-05-13 Jan Djärv <jan.h.d@swipnet.se>
7001
7002 * xterm.c (handle_one_xevent): Don't pass buttons higher than 3
7003 to Gtk+ menus.
7004
70052008-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
7006
7007 * dired.c (file_name_completion): Tweak the code so as to always do it
7008 in a single pass. Tighten the scope of some variables.
7009
7010 * dired.c (Qdefault_directory): New var.
7011 (file_name_completion): Use it instead of Fexpand_file_name.
7012 (syms_of_dired): Initialize it.
7013
70142008-05-12 Stefan Monnier <monnier@iro.umontreal.ca>
7015
7016 * fileio.c (double_dollars): Remove dead code.
7017
70182008-05-10 Eli Zaretskii <eliz@gnu.org>
7019
7020 * dired.c (Ffile_attributes, Fdirectory_files_and_attributes):
7021 Mention w32-get-true-file-attributes in doc string.
7022
7023 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
7024
70252008-05-09 Glenn Morris <rgm@gnu.org>
7026
7027 * fileio.c (Fread_file_name): Remove reference to insdef, deleted
7028 2008-04-23.
7029
70302008-05-09 Eli Zaretskii <eliz@gnu.org>
7031
7032 Support for reporting owner and group of each file on MS-Windows:
7033 * dired.c (stat_uname, stat_gname): New functions, with special
7034 implementation for w32.
7035 (Ffile_attributes): Use them instead of getpwuid and getgrgid.
7036
7037 * w32.c: Rename the_passwd_* to dflt_passwd_*.
7038 (dflt_group_name): New static variable.
7039 (dflt_group): Rename from the_group.
7040 (init_user_info): Init dflt_group fields. Get user's group name
7041 from LookupAccountSid.
7042 (g_b_init_get_file_security, g_b_init_get_security_descriptor_owner)
7043 (g_b_init_get_security_descriptor_group, g_b_init_is_valid_sid):
7044 New initialization states.
7045 (globals_of_w32): Initialize them to zero. Initialize the default
7046 group name to "None".
7047 (GetFileSecurity_Name): New global var, the name of the function
7048 to call for GetFileSecurity.
7049 (GetFileSecurity_Proc, GetSecurityDescriptorOwner_Proc)
7050 (GetSecurityDescriptorGroup_Proc, IsValidSid_Proc): New typedefs.
7051 (get_file_security, get_security_descriptor_owner)
7052 (get_security_descriptor_group, is_valid_sid)
7053 (get_file_security_desc, get_rid, get_name_and_id)
7054 (get_file_owner_and_group): New functions.
7055 (stat): Use get_file_security_desc and get_file_owner_and_group to
7056 report the owner and primary group of each file. Don't ignore the
7057 high 32 bits of file's size, now that st_size is 64-bit wide.
7058 Fix test when to get true file attributes.
7059 (init_user_info): Use get_rid instead of equivalent inline code.
7060 (fstat): Don't ignore the high 32 bits of file's size.
7061
70622008-05-09 Chong Yidong <cyd@stupidchicken.com>
7063
7064 * image.c (png_load): Use correct bit-depth for setting background
7065 color.
7066
70672008-05-08 Eli Zaretskii <eliz@gnu.org>
7068
7069 * Makefile.in (lisp, shortlisp): Rename epa-file-hook.elc to
7070 epa-hook.elc.
7071
70722008-05-08 Juanma Barranquero <lekktu@gmail.com>
7073
7074 * font.c (Ffont_match_p): Don't use `iff' in docstring.
7075
70762008-05-07 Dan Nicolaescu <dann@ics.uci.edu>
7077
7078 * macfns.c (Fx_create_frame): Make a copy of frame parameters
7079 because the original parameters are in pure storage now.
7080 (mac_window): Remove unused params. Update callers.
7081
70822008-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
7083
7084 * lread.c (substitute_object_recurse): Use lower-level primitives.
7085 Don't signal errors when traversing sub-char-tables.
7086 Don't loop over all the possible characters when traversing char-tables.
7087
7088 * print.c (print_preprocess): Add sub-char-tables to the print-table,
7089 just like we do in print.c.
7090
70912008-05-05 Stefan Monnier <monnier@iro.umontreal.ca>
7092
7093 * minibuf.c (Ftry_completion): Remove code left over from when we used
7094 scmp instead of Fcompare_strings.
7095
70962008-05-04 Juanma Barranquero <lekktu@gmail.com>
7097
7098 * w32fns.c (Fw32_battery_status): Fix computation of %t (h:min) format.
7099
71002008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7101
7102 * image.c [USE_MAC_IMAGE_IO] (image_load_image_io):
7103 Create bitmap context in native byte order.
7104
7105 * macterm.c (XDrawLine)
7106 (XCreatePixmapFromBitmapData) [USE_MAC_IMAGE_IO]: Create bitmap
7107 context in native byte order.
7108
71092008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7110
7111 * config.in: Regenerate.
7112
7113 * image.c (PIX_MASK_DRAW, PIX_MASK_RETAIN) [USE_MAC_IMAGE_IO]:
7114 New definitions for Image I/O support.
7115 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
7116 (mac_create_cg_image_from_image, x_create_x_image_and_pixmap)
7117 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
7118 (mac_data_provider_release_data, image_load_image_io)
7119 [USE_MAC_IMAGE_IO]: New functions.
7120 (CGImageCreateWithPNGDataProviderProcType) [MAC_OSX]: Remove typedef.
7121 (MyCGImageCreateWithPNGDataProvider) [MAC_OSX]: Remove variable.
7122 (init_image_func_pointer) [MAC_OSX]: Remove function.
7123 (image_load_quartz2d) [MAC_OSX]: Check availability of
7124 CGImageCreateWithPNGDataProvider at compile time.
7125 Use lowercase `false' for boolean constant.
7126 (png_load, jpeg_load, tiff_load, gif_load) [USE_MAC_IMAGE_IO]:
7127 Use image_load_image_io.
7128 (png_load) [!USE_MAC_IMAGE_IO && MAC_OSX]:
7129 Don't check MyCGImageCreateWithPNGDataProvider.
7130 (init_image) [MAC_OSX && TARGET_API_MAC_CARBON]:
7131 Don't call init_image_func_pointer.
7132
7133 * macgui.h (Pixmap) [USE_MAC_IMAGE_IO]: New definition for Image I/O.
7134
7135 * macterm.c (mac_cg_color_space_rgb) [USE_CG_DRAWING]:
7136 Make variable non-static.
7137 (XDrawLine, XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
7138 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
7139
7140 * macterm.h (ARGB_TO_ULONG, ALPHA_FROM_ULONG): New macros.
7141 (RED_FROM_ULONG): Mask off higher bits.
7142 (mac_cg_color_space_rgb) [USE_MAC_IMAGE_IO]: New extern.
7143
7144 * s/darwin.h [HAVE_CARBON && HAVE_AVAILABILITYMACROS_H]:
7145 Include AvailabilityMacros.h.
7146 (USE_MAC_IMAGE_IO, LIBS_IMAGE) [HAVE_CARBON]: New defines.
7147 (LIBS_CARBON) [HAVE_CARBON]: Use LIBS_IMAGE.
7148
71492008-05-03 Stefan Monnier <monnier@iro.umontreal.ca>
7150
7151 * chartab.c (Fset_char_table_range): If range is t, really set all
7152 chars to that value.
7153
71542008-05-03 Eli Zaretskii <eliz@gnu.org>
7155
7156 * dired.c (Ffile_attributes): Don't allow the device number become
7157 negative.
7158
71592008-05-02 Daiki Ueno <ueno@unixuser.org>
7160
7161 * Makefile.in (lisp, shortlisp): Add epa-file-hook.elc.
7162
71632008-05-02 Juri Linkov <juri@jurta.org>
7164
7165 * minibuf.c (Fread_from_minibuffer, Fread_string, Fread_command)
7166 (Fread_variable, Fread_buffer, Fcompleting_read): Document the
7167 DEFAULT argument as a list of default values in docstrings.
7168
71692008-05-01 Chong Yidong <cyd@stupidchicken.com>
7170
7171 * puresize.h (BASE_PURESIZE): Increase to 1210000.
7172
71732008-05-01 Martin Rudalics <rudalics@gmx.at>
7174
7175 * dispnew.c (change_frame_size_1): Preserve small windows when
7176 shrinking frames by calling set_window_height|width with third
7177 arg 2.
7178
7179 * window.h (struct window): Replace field too_small_ok by field
7180 resize_proportionally.
7181
7182 * window.c (make_window): Initialize resize_proportionally.
7183 (enlarge_window): Temporarily set resize_proportionally to make
7184 sure that shrink_windows does scale the window proportionally.
7185 (shrink_windows): When window has resize_proportionally set try
7186 to shrink it proportionally by stealing from other windows.
7187 (struct saved_window, Fset_window_configuration)
7188 (compare_window_configurations): Handle resize_proportionally.
7189 (WINDOW_TOTAL_SIZE): New macro.
7190 (window_min_size, shrink_windows, size_window): Use it.
7191 (check_min_window_sizes): Remove. Invalid values of
7192 window-min-height|width are handled by window_min_size_2 now.
7193 (size_window, Fsplit_window, enlarge_window)
7194 (adjust_window_trailing_edge, grow_mini_window): Don't call
7195 check_min_window_sizes.
7196 (window_min_size_2, window_min_size_1, window_min_size):
7197 New argument safe_p for retrieving "safe" minimum sizes.
7198 (Fdisplay_buffer, Fsplit_window, enlarge_window)
7199 (adjust_window_trailing_edge, grow_mini_window):
7200 Adjust arguments of window_min_size... functions.
7201 (shrink_windows): Argument min_size removed. New argument
7202 safe_p allows shrinking windows to their safe minimum sizes.
7203 Calculate minimum size and decide whether a window shall be
7204 deleted for each window individually.
7205 (size_window): When nodelete_p equals 2, tell shrink_windows to
7206 delete windows only if their new minimum size is no more safe.
7207 (shrink_window_lowest_first): Call window_min_size_1 to make
7208 sure to preserve modeline of bottom-most window when resizing
7209 the minibuffer.
7210 (Fset_window_configuration, Fcurrent_window_configuration)
7211 (compare_window_configurations): Do not handle
7212 window-min-height|width any more.
7213 (syms_of_window): Clarify window-min-height|width doc-strings.
7214
72152008-04-30 Stefan Monnier <monnier@iro.umontreal.ca>
7216
7217 * dired.c (file_name_completion): Fix up the encoding/decoding issue
7218 some more. Copy some of the code from Ftry_completions.
7219 Remove special case code that dates back to initial revision when the
7220 slash was only added when necessary and that can't trigger nowadays.
7221
72222008-04-27 Kenichi Handa <handa@m17n.org>
7223
7224 * font.c (font_prop_validate): Signal `error' instead of `font'.
7225
72262008-04-29 Jason Rumney <jasonr@gnu.org>
7227
7228 * w32fns.c (Fw32_battery_status): New defun.
7229 (syms_of_w32fns): Defsubr it.
7230
72312008-04-28 Andreas Schwab <schwab@suse.de>
7232
7233 * dired.c (file_name_completion): Fix another mixing of encoded
7234 and decoded names.
7235
72362008-04-28 Juanma Barranquero <lekktu@gmail.com>
7237
7238 * w32fns.c (Fw32_define_rgb_color): Fix typo in docstring.
7239
72402008-04-27 Juanma Barranquero <lekktu@gmail.com>
7241
7242 * fringe.c (Fdefine_fringe_bitmap): Doc fix.
7243
72442008-04-27 Andreas Schwab <schwab@suse.de>
7245
7246 * dired.c (file_name_completion): Fix inappropriate mixing of
7247 encoded and decoded names.
7248
7249 * xterm.c (XTread_socket): Fix use of uninitialized variable.
7250
7251 * puresize.h (BASE_PURESIZE): Increase to 1200000.
7252
72532008-04-26 Eli Zaretskii <eliz@gnu.org>
7254
7255 * dired.c (Ffile_attributes) [WINDOWSNT]: Undo change from
7256 2008-03-31, it's not needed anymore with `struct stat' definition
7257 on nt/inc/sys/stat.h. Undo changes from 2007-01-12 and 2007-01-13
7258 for the same reasons.
7259
72602008-04-25 Dennis Gilmore <ausil@fedoraproject.org> (tiny change)
7261
7262 * m/sparc.h: Additional redefinitions for GNU/Linux.
7263
72642008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7265
7266 * macterm.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: New variable.
7267 (syms_of_macterm) [USE_MAC_TSM]: Defvar it.
7268 (Qmouse_drag_overlay) [MAC_OSX]: New variable.
7269 (syms_of_macterm) [MAC_OSX]: Intern and staticpro it.
7270 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
7271 (mac_ax_selected_text_range) [MAC_OSX]: New functions.
7272 (mac_ax_number_of_characters) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
7273 Likewise.
7274
7275 * mactoolbox.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: Add extern.
7276 (fast_find_position, x_y_to_hpos_vpos, mac_ax_selected_text_range)
7277 (mac_ax_number_of_characters): Add externs.
7278 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
7279 [USE_MAC_TSM]: Likewise.
7280 (mac_handle_text_input_event) [MAC_OSX]:
7281 Handle kEventTextInputOffsetToPos for no active input area case.
7282 Handle kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
7283 (mac_handle_document_access_event)
7284 [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: New function.
7285 (install_application_handler) [MAC_OSX]: Register handlers for
7286 kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
7287 (install_application_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
7288 Register mac_handle_document_access_event.
7289
7290 * xdisp.c (x_y_to_hpos_vpos, fast_find_position) [HAVE_CARBON]:
7291 Make functions non-static.
7292
72932008-04-23 Stefan Monnier <monnier@iro.umontreal.ca>
7294
7295 * fileio.c (Vread_file_name_function, Vread_file_name_predicate)
7296 (read_file_name_completion_ignore_case, insert_default_directory)
7297 (Qdefault_directory): Move to minibuffer.el.
7298 (Fread_file_name): Call the new `read-file-name' instead.
7299
73002008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7301
7302 * mac.c (create_apple_event) [TARGET_API_MAC_CARBON]:
7303 Make function non-static.
7304 (create_apple_event_from_event_ref) [TARGET_API_MAC_CARBON]:
7305 Remove function.
7306 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
7307 Move to mactoolbox.c.
7308 (mac_event_parameters_to_lisp) [TARGET_API_MAC_CARBON]: New function.
7309
7310 * macgui.h (CGFloat) [!CGFLOAT_DEFINED]: New typedef.
7311 (mac_rect_make): New macro.
7312
7313 * macterm.c (mac_draw_image_string_atsui) [MAC_OSX]: Use CGFloat
7314 instead of float.
7315 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
7316 (init_cg_color, mac_draw_line, mac_draw_cg_image, XSetForeground)
7317 (XSetBackground) [USE_CG_DRAWING]: Likewise.
7318 (mac_draw_image_string_atsui) [MAC_OSX]: Use mac_rect_make instead of
7319 CGRectMake.
7320 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
7321 (mac_erase_rectangle, mac_draw_cg_image, mac_fill_rectangle)
7322 (mac_set_clip_rectangles) [USE_CG_DRAWING]: Likewise.
7323 (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
7324 instead of WindowRef in argument type.
7325 (XCreatePixmap) [!MAC_OS8]: Don't call SetPortWindowPort.
7326 (mac_invert_rectangle): Use CGContextSetBlendMode if available.
7327 (mac_set_clip_rectangles, mac_reset_clip_rectangles): Take argument F
7328 instead of DISPLAY. All uses changed.
7329 (mac_handle_size_change): Don't call SET_FRAME_GARBAGED.
7330 (x_calc_absolute_position): Simplify so as not to use
7331 FRAME_PIXEL_WIDTH/FRAME_PIXEL_HEIGHT.
7332
7333 * macterm.h (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
7334 instead of WindowRef in argument type.
7335 (create_apple_event_from_event_ref, create_apple_event_from_drag_ref)
7336 [TARGET_API_MAC_CARBON]: Remove externs.
7337 (create_apple_event, mac_event_parameters_to_lisp)
7338 [TARGET_API_MAC_CARBON]: Add externs.
7339
7340 * mactoolbox.c (Vmac_ts_script_language_on_focus)
7341 (saved_ts_script_language_on_focus) [USE_MAC_TSM]: Remove externs.
7342 (XTread_socket) [USE_MAC_TOOLBAR]: Select window if its structure part
7343 is clicked.
7344 (x_activate_menubar): Remove extern for saved_menu_event_location.
7345 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
7346 Move from mac.c.
7347
73482008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7349
7350 * alloc.c [!SYSTEM_MALLOC && !SYNC_INPUT] (uninterrupt_malloc)
7351 [HAVE_GTK_AND_PTHREAD && !DOUG_LEA_MALLOC]: Don't use recursive mutex.
7352
73532008-04-23 Jason Rumney <jasonr@gnu.org>
7354
7355 * w32.c (stat): When Vw32_get_true_file_attributes is Qlocal, get
7356 attributes only for local files.
7357
7358 * w32proc.c (syms_of_ntproc): Change Vw32_get_true_file attributes
7359 default to Qlocal.
7360
73612008-04-22 Juri Linkov <juri@jurta.org>
7362
7363 * buffer.c (Fswitch_to_buffer): Change interactive spec to call
7364 read-buffer-to-switch instead of using the letter "B".
7365
73662008-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
7367
7368 * fileio.c (Qdefault_directory): New variable.
7369 (Fread_file_name): Use it to pass `dir' to the completion functions.
7370
73712008-04-20 Chong Yidong <cyd@stupidchicken.com>
7372
7373 * xdisp.c (pos_visible_p): Check if iterator stops on a display string.
7374
73752008-04-19 Stefan Monnier <monnier@iro.umontreal.ca>
7376
7377 * keyboard.c (Vpre_help_message): Remove.
7378 (show_help_echo): Remove default C code.
7379
7380 * dired.c (directory_files_internal, file_name_completion):
7381 Only call ENCODE_FILE if the string is indeed decoded.
7382
73832008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
7384
7385 * Makefile.in (TOOLKIT_DEFINES): Remove.
7386 (LIBW): Use a bit less #if, remove left over OPEN_LOOK stuff.
7387
73882008-04-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7389
7390 * Makefile.in (MAC_OBJ): Add mactoolbox.o.
7391 (mactoolbox.o): New target.
7392
7393 * mac.c [MAC_OSX] (select_and_poll_event, sys_select):
7394 Use mac_run_loop_run_once instead of CFRunLoopRunInMode.
7395
7396 * macfns.c (x_set_background_color, mac_window, x_create_tip_frame):
7397 Use mac_set_frame_window_background instead of XSetWindowBackground.
7398 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]:
7399 Use mac_is_window_toolbar_visible instead of IsWindowToolbarVisible.
7400 (x_set_name_internal) [TARGET_API_MAC_CARBON]: Use mac_set_window_title
7401 instead of SetWindowTitleWithCFString.
7402 (mac_update_proxy_icon) [TARGET_API_MAC_CARBON]: Remove BLOCK_INPUT.
7403 Move function to mactoolbox.c.
7404 (mac_update_title_bar) [TARGET_API_MAC_CARBON]:
7405 Use mac_set_window_modified instead of SetWindowModified.
7406 Add BLOCK_INPUT around mac_set_window_modified/mac_update_proxy_icon.
7407 (mac_window, x_create_tip_frame): Use mac_create_frame_window.
7408 (Fx_focus_frame): Use mac_front_non_floating_window instead of
7409 FrontNonFloatingWindow. Use mac_activate_window instead of
7410 ActivateWindow. Use mac_active_non_floating_window instead of
7411 ActiveNonFloatingWindow.
7412 (show_hourglass, hide_hourglass) [TARGET_API_MAC_CARBON]:
7413 Use mac_show_hourglass and mac_hide_hourglass.
7414 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use mac_get_global_mouse
7415 instead of GetGlobalMouse.
7416 (Fx_show_tip): Use mac_move_window/mac_size_window/mac_show_window
7417 instead of MoveWindow/SizeWindow/ShowWindow, respectively.
7418 Use mac_bring_window_to_front instead of BringToFront.
7419 (Qfile_name_history) [TARGET_API_MAC_CARBON]: Move extern to
7420 mactoolbox.c.
7421 (Fx_file_dialog) [TARGET_API_MAC_CARBON]: Move function body to
7422 mac_file_dialog in mactoolbox.c. Use mac_file_dialog.
7423 (mac_nav_event_callback) [TARGET_API_MAC_CARBON]: Move function to
7424 mactoolbox.c.
7425
7426 * macgui.h [!HAVE_CARBON]: Include Quickdraw.h instead of QuickDraw.h.
7427 (XtPointer): Move typedef from macmenu.c.
7428 (enum button_type): Move enum from macmenu.c.
7429 (widget_value): Move typedef from macmenu.c.
7430 (M_APPLE, I_ABOUT, EXTRA_STACK_ALLOC, ARGV_STRING_LIST_ID)
7431 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
7432 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
7433 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
7434 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
7435 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
7436 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
7437 (DIALOG_ICON_TOP_MARGIN): Move defines from macmenu.c.
7438 (Selection): Move typedef from macselect.c.
7439 (RAM_TOO_LARGE_ALERT_ID, ABOUT_ALERT_ID) [MAC_OS8]: Move defines from
7440 macterm.c.
7441 (mac_set_window_title, mac_set_window_modified, mac_is_window_visible)
7442 (mac_is_window_collapsed, mac_bring_window_to_front)
7443 (mac_send_window_behind, mac_hide_window, mac_show_window)
7444 (mac_collapse_window, mac_front_non_floating_window)
7445 (mac_active_non_floating_window, mac_activate_window)
7446 (mac_move_window_structure, mac_move_window, mac_size_window)
7447 (mac_get_global_mouse, mac_is_window_toolbar_visible): New defines.
7448
7449 * macmenu.c [!TARGET_API_MAC_CARBON]: Move includes to mactoolbox.c.
7450 (enum mac_menu_kind): Move enum to mactoolbox.c.
7451 (min_menu_id): Move variable to mactoolbox.c.
7452 (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]: Likewise.
7453 (DIALOG_WINDOW_RESOURCE): Move define to mactoolbox.c.
7454 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
7455 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
7456 [TARGET_API_MAC_CARBON]: Likewise.
7457 (XtPointer): Move typedef to macgui.h.
7458 (enum button_type): Move enum to macgui.h.
7459 (widget_value): Move typedef to macgui.h.
7460 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
7461 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
7462 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
7463 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
7464 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
7465 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
7466 (DIALOG_ICON_TOP_MARGIN): Move defines to macgui.h.
7467 (popup_activated_flag): Make variable non-static.
7468 (x_activate_menubar, install_menu_quit_handler, pop_down_menu)
7469 (add_menu_item, fill_menu, dispose_menus):
7470 Move functions to mactoolbox.c.
7471 (restore_show_help_function, menu_target_item_handler)
7472 (install_menu_target_item_handler, mac_handle_dialog_event)
7473 (install_dialog_event_handler, pop_down_dialog, create_and_show_dialog)
7474 [TARGET_API_MAC_CARBON]: Likewise.
7475 (menu_quit_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: Likewise.
7476 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
7477 (find_and_call_menu_selection, name_is_separator): Make function
7478 non-static.
7479 (Vshow_help_function, timer_check) [TARGET_API_MAC_CARBON]: Move extern
7480 to mactoolbox.c.
7481 (set_frame_menubar): Don't call install_menu_quit_handler.
7482 (menu_item_selection): New variable.
7483 (mac_menu_show): Use create_and_show_popup_menu.
7484 (create_and_show_dialog) [TARGET_API_MAC_CARBON]: Don't return
7485 selection but set variable menu_item_selection. All uses changed.
7486 (mac_fill_menubar): Rename from fill_menubar. All uses changed.
7487 Call install_menu_quit_handler. Move to mactoolbox.c.
7488
7489 * macselect.c [!TARGET_API_MAC_CARBON]: Don't include Scrap.h.
7490 (Selection): Move typedef to macgui.h.
7491 (Vselection_converter_alist, Qmac_scrap_name, Qmac_ostype)
7492 (Vmac_apple_event_map, Qmac_apple_event_class, Qmac_apple_event_id):
7493 Make variables non-static.
7494 (Vmac_dnd_known_types) [TARGET_API_MAC_CARBON]: Likewise.
7495 (mac_handle_apple_event, cleanup_all_suspended_apple_events):
7496 Make functions non-static.
7497 (Vmac_service_selection) [MAC_OSX]: Likewise.
7498 (mac_get_selection_from_symbol, get_flavor_type_from_symbol)
7499 (mac_valid_selection_target_p, mac_clear_selection)
7500 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
7501 (mac_put_selection_value, mac_selection_has_target_p)
7502 (mac_get_selection_value, mac_get_selection_target_list)
7503 (init_apple_event_handler, install_drag_handler, remove_drag_handler):
7504 Move functions to mactoolbox.c.
7505 (mac_do_track_drag, mac_do_receive_drag) [TARGET_API_MAC_CARBON]:
7506 Likewise.
7507 (copy_scrap_flavor_data, mac_handle_service_event)
7508 (install_service_handler) [MAC_OSX]: Likewise.
7509 (syms_of_macselect) <Vmac_dnd_known_types>:
7510 Use mac_dnd_default_known_types.
7511
7512 * macterm.h (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y):
7513 Move to mactoolbox.c.
7514 (HOURGLASS_WIDTH, HOURGLASS_HEIGHT): Change to 15.
7515 (Fx_selection_owner_p): Add EXFUN.
7516 (install_window_handler, remove_window_handler, XSetWindowBackground):
7517 Remove externs.
7518 (do_apple_menu) [!TARGET_API_MAC_CARBON]: Likewise.
7519 (mac_prepare_for_quickdraw) [USE_CG_DRAWING]: Likewise.
7520 (x_raise_frame, x_lower_frame, mac_alert_sound_play)
7521 (install_application_handler, mac_get_frame_bounds, mac_get_frame_mouse)
7522 (mac_convert_frame_point_to_global, mac_set_frame_window_background)
7523 (mac_update_begin mac_update_end, mac_frame_up_to_date, x_flush)
7524 (mac_create_frame_window, mac_dispose_frame_window, mac_begin_clip)
7525 (mac_end_clip, mac_create_scroll_bar, mac_dispose_scroll_bar)
7526 (mac_set_scroll_bar_bounds, mac_redraw_scroll_bar, mac_fill_menubar)
7527 (create_and_show_popup_menu, mac_get_selection_from_symbol)
7528 (mac_valid_selection_target_p, mac_clear_selection)
7529 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
7530 (mac_put_selection_value, mac_selection_has_target_p)
7531 (mac_get_selection_value, mac_get_selection_target_list): Add externs.
7532 (mac_update_proxy_icon, mac_show_hourglass, mac_hide_hourglass)
7533 (mac_reposition_hourglass, mac_file_dialog, create_and_show_dialog)
7534 (mac_dnd_default_known_types) [TARGET_API_MAC_CARBON]: Likewise.
7535 (mac_run_loop_run_once) [MAC_OSX]: Likewise.
7536 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
7537 (mac_begin_cg_clip, mac_end_cg_clip) [USE_CG_DRAWING]: Likewise.
7538 (x_set_toolkit_scroll_bar_thumb) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
7539 (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
7540
7541 * mactoolbox.c: New file.
7542
75432008-04-18 Jason Rumney <jasonr@gnu.org>
7544
7545 * dired.c (Ffile_attributes) [WINDOWSNT]: Cast uid and gid to unsigned.
7546
75472008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
7548
7549 * character.c (Fmultibyte_char_to_unibyte):
7550 Return latin1 chars unchanged.
7551
7552 * fileio.c (Fexpand_file_name): Refine last fix so `nm' is only
7553 relocated if it points to `name'.
7554
75552008-04-17 Kenichi Handa <handa@m17n.org>
7556
7557 * data.c (Faset): Allow setting a multibyte character in an
7558 ASCII-only unibyte string.
7559
7560 * lisp.h (STRING_SET_MULTIBYTE): New macro.
7561
75622008-04-16 Stefan Monnier <monnier@iro.umontreal.ca>
7563
7564 * Makefile.in: Don't use HAVE_GTK and don't -DUSE_GTK since it's now
7565 done in config.h.
7566
75672008-04-16 Juanma Barranquero <lekktu@gmail.com>
7568
7569 * character.c (Fchar_bytes, Fchar_width, Fstring_width)
7570 (Fchar_direction): Add usage in the docstring.
7571
75722008-04-15 Chong Yidong <cyd@stupidchicken.com>
7573
7574 * keyboard.c (read_key_sequence): Remove always-true checks.
7575
75762008-04-14 Jason Rumney <jasonr@gnu.org>
7577
7578 * w32font.c (w32font_open_internal): Set max_bounds.descent in
7579 compatibility struct, for better underline positioning.
7580
75812008-04-13 David Hansen <david.hansen@gmx.net>
7582
7583 * dbusbind.c (dbus-get-unique-name): Remove extra copying of name
7584 string.
7585
75862008-04-12 Dan Nicolaescu <dann@ics.uci.edu>
7587
7588 * m/hp800.h (XUINT, XSET): Remove.
7589
75902008-04-12 Juanma Barranquero <lekktu@gmail.com>
7591
7592 * fileio.c (Fexpand_file_name): Add declaration for `p' missing in
7593 previous change.
7594
75952008-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
7596
7597 * fileio.c (Fexpand_file_name): Tighten the scope of `p' and `o' vars.
7598 Relocate `nm' after calling DECODE_FILE, in case the GC was run.
7599
76002008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
7601
7602 * keymap.h (map_keymap_canonical): Declare.
7603 * xmenu.c (single_keymap_panes): Use it.
7604
76052008-04-11 Glenn Morris <rgm@gnu.org>
7606
7607 * eval.c (Fdefvaralias): If the alias is bound and the target is not,
7608 set the target's value to that of the alias.
7609
76102008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
7611
7612 * term.c (set_tty_color_mode): Left over typo.
7613
76142008-04-10 Michael Albinus <michael.albinus@gmx.de>
7615
7616 * fileio.c (Fmake_symbolic_link): Surround code by #ifdef S_IFLNK
7617 only after check for file name handler functions. Signal, when
7618 native functionality is not supported.
7619 (syms_of_fileio): Declare it unconditionally.
7620
76212008-04-10 Jason Rumney <jasonr@gnu.org>
7622
7623 * w32menu.c (is_simple_dialog, simple_dialog_show): New functions.
7624 (Fx_popup_dialog): Handle simple yes/no questions as dialogs.
7625
7626 * w32.c (logon_network_drive): Also logon to remote drives that
7627 are mapped to drive letters.
7628
76292008-04-10 Glenn Morris <rgm@gnu.org>
7630
7631 * xdisp.c (truncate-partial-width-windows): Doc fix.
7632
76332008-04-10 Stefan Monnier <monnier@iro.umontreal.ca>
7634
7635 * fileio.c (read_file_name_cleanup, Fread_file_name_internal):
7636 Move functions to minibuffer.el.
7637 (syms_of_fileio): Don't declare them.
7638
76392008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
7640
7641 * minibuf.c (Vcompletion_auto_help): Move to minibuffer.el.
7642 (syms_of_minibuf): Remove its initialization.
7643
7644 * minibuf.c (temp_echo_area_glyphs): Remove unused function.
7645
76462008-04-09 Juanma Barranquero <lekktu@gmail.com>
7647
7648 * editfns.c (Ffield_string_no_properties): Fix typo in docstring.
7649
76502008-04-09 Jason Rumney <jasonr@gnu.org>
7651
7652 * makefile.w32-in (distclean): Delete makefile too.
7653 (maintainer-clean): New target.
7654
7655 * xdisp.c (redisplay_internal) [!WINDOWSNT]: Conditionalize last change.
7656
7657 * w32term.c (w32_compute_glyph_string_overhangs): Compute overhangs
7658 for new font backend and composite cases.
7659
76602008-04-09 Jan Djärv <jan.h.d@swipnet.se>
7661
7662 * atimer.c (alarm_signal_handler): Call run_timers if not SYNC_INPUT.
7663 Most of the code moved to run_timers.
7664 (do_pending_atimers): Call run_timers.
7665 (run_timers): New function.
7666
7667 * sysdep.c (emacs_write): If SYNC_INPUT and pending_atimers,
7668 run atimers.
7669
7670 * process.c (wait_reading_process_output): The same as above.
7671
76722008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
7673
7674 * minibuf.c (last_exact_completion): Remove variable.
7675 (Fdelete_minibuffer_contents, do_completion, Fminibuffer_complete)
7676 (complete_and_exit_1, complete_and_exit_2)
7677 (Fminibuffer_complete_and_exit, Fminibuffer_complete_word)
7678 (Fdisplay_completion_list, display_completion_list_1)
7679 (Fminibuffer_completion_help, Fself_insert_and_exit)
7680 (Fexit_minibuffer, Fminibuffer_message): Move functions to
7681 minibuffer.el.
7682 (syms_of_minibuf): Remove corresponding initializations.
7683
7684 * keyboard.c (Qdeactivate_mark): New var.
7685 (command_loop_1): Use it to call `deactivate-mark'.
7686 (syms_of_keyboard): Initialize it.
7687
7688 * xdisp.c (redisplay_internal): Reset tty's color_mode when switching
7689 to another frame.
7690 * frame.c (do_switch_frame): Refine the top_frame/async_visible code.
7691 Don't call set_tty_color_mode.
7692 (store_frame_param): Reset previous_frame rather than call
7693 set_tty_color_mode.
7694 * term.c (set_tty_color_mode): Rewrite.
7695 * dispextern.h (set_tty_color_mode): New type.
7696 * termchar.h (struct tty_display_info): Add `previous_color_mode'.
7697
76982008-04-08 Stefan Monnier <monnier@iro.umontreal.ca>
7699
7700 * keymap.c (access_keymap): Remove the value 2 for t_ok which was used
7701 for generic chars, which do not exist any more in emacs-unicode.
7702
77032008-04-08 Michael Albinus <michael.albinus@gmx.de>
7704
7705 * coding.c (detect_coding_emacs_mule)
7706 (Ffind_operation_coding_system): Fix typo.
7707
77082008-04-08 Jason Rumney <jasonr@gnu.org>
7709
7710 * w32uniscribe.c (SNAME): Extract only symbol name.
7711
7712 * w32font.h (struct w32_metric_cache): New struct.
7713 (w32font_info): Use it.
7714 (W32METRIC_NO_ATTEMPT, W32METRIC_SUCCESS, W32METRIC_FAIL)
7715 (CACHE_BLOCKSIZE): New constants.
7716
7717 * w32font.c (Qja, Qko, Qzh): New symbols.
7718 (syms_of_w32font): Initialise them.
7719 (font_matches_spec): Use them to filter by language.
7720 (recompute_cached_metrics): Remove function.
7721 (compute_metrics, clear_cached_metrics): New functions.
7722 (w32font_encode_char): Use them to manage metric cache.
7723 (w32font_text_extents): Cache metrics for all glyphs on demand.
7724 Delay converting glyph indices to WORD until needed.
7725 (w32font_open_internal): Initialize metric cache to empty.
7726 (registry_to_w32_charset): Charset should always be a symbol.
7727 (fill_in_logfont, list_all_matching_fonts): Family should
7728 always be a symbol.
7729
77302008-04-06 Jason Rumney <jasonr@gnu.org>
7731
7732 * w32uniscribe.c (uniscribe_shape): Increase items buffer size.
7733 Give up if glyph indices not supported. Use uniscribe obtained
7734 ABC widths for individual metrics. Map glyph clusters back to
7735 characters using fClusterStart flag. Return number of glyphs
7736 produced, not chars processed.
7737 (uniscribe_shape): Map char at FROM to current glyph.
7738
77392008-04-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7740
7741 * macmenu.c (fill_menu) [TARGET_API_MAC_CARBON]:
7742 Use SetMenuItemHierarchicalMenu.
7743
77442008-04-05 Jason Rumney <jasonr@gnu.org>
7745
7746 * image.c (pbm_load): Allow color values up to 65535.
7747 Throw an error if max_color_idx is outside the supported range.
7748 Report an error when image size is invalid.
7749 Read two bytes at a time when raw images have max_color_idx above 255.
7750
77512008-04-05 Eli Zaretskii <eliz@gnu.org>
7752
7753 * w32.c (readdir): If FindFirstFile/FindNextFile return in
7754 cFileName a file name that includes `?' characters, use the 8+3
7755 alias in cAlternateFileName instead.
7756
77572008-04-05 Kenichi Handa <handa@ni.aist.go.jp>
7758
7759 * ccl.c (ccl_driver): If ccl->quit_silently is nonzero, don't
7760 append "CCL: Quitted" when the CCL program is quitted.
7761 (setup_ccl_program): Initialize ccl->quit_silently to zero.
7762
7763 * ccl.h (struct ccl_program): New member quit_silently.
7764
77652008-04-05 Chong Yidong <cyd@stupidchicken.com>
7766
7767 * search.c (compile_pattern_1): Treat non-nil and non-string of
7768 search-spaces-regexp as nil.
7769
7770 * minibuf.c (Fassoc_string): Tweak docstring.
7771
77722008-04-05 Eli Zaretskii <eliz@gnu.org>
7773
7774 * dired.c (Ffile_attributes): Support inode numbers wider than 32
7775 bits. Remove ugly WINDOWSNT-specific kludge introduced on
7776 2008-03-14 to force inode be positive.
7777
7778 * w32.c (sys_chown, stat, fstat): Use S_* constants instead of
7779 _S_* ones, since we now use our own sys/stat.h.
7780 (stat, fstat): Don't mangle the inode number.
7781 (init_user_info): Don't restrict UID and GID to 0-60000 range.
7782
77832008-04-04 Stefan Monnier <monnier@iro.umontreal.ca>
7784
7785 * frame.h (struct frame): Give one more bit to `visible' since we use
7786 values larger than 1 to indicate obscured frames on ttys.
7787
7788 * keymap.c (Qkeymap_canonicalize): New var.
7789 (Fmap_keymap_internal): New fun.
7790 (describe_map): Use keymap-canonicalize.
7791
7792 * undo.c (last_boundary_buffer, last_boundary_position): New vars.
7793 (Fundo_boundary): Set them.
7794 (syms_of_undo): Initialize them.
7795 (record_point): Use them instead of last_point_position*.
7796 (last_undo_buffer): Change type.
7797
77982008-04-04 Jason Rumney <jasonr@gnu.org>
7799
7800 * w32font.c (w32font_text_extents): Use font's ascent and descent.
7801 (recompute_cached_metrics): Don't set ascent and descent per char.
7802
7803 * w32uniscribe.c (uniscribe_check_otf): Fix last change.
7804 (uniscribe_check_otf): Add GC protection before consing.
7805 Rearrange loop for counting features.
7806
78072008-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
7808
7809 * insdel.c (insert_from_buffer_1): Don't compare bytes in destination
7810 buffer with byte-size of source buffer.
7811
78122008-04-03 Chong Yidong <cyd@stupidchicken.com>
7813
7814 * callint.c (Fcall_interactively): Handle temporary region even
7815 when shift-select-mode is off.
7816
78172008-04-03 Jason Rumney <jasonr@gnu.org>
7818
7819 * w32uniscribe.c (uniscribe_check_otf): Sanity check otf_spec.
7820
78212008-04-03 Kenichi Handa <handa@m17n.org>
7822
7823 * coding.c (CATEGORY_MASK_ANY): Add CATEGORY_MASK_UTF_16_AUTO.
7824 (CATEGORY_MASK_UTF_16): Likewise.
7825 (detect_coding_utf_16): Add heuristics to reject utf-16 for a
7826 binary file.
7827 (detect_coding): Add null-byte detection for a binary file.
7828 (detect_coding_system): Likewise.
7829
78302008-04-03 Jason Rumney <jasonr@gnu.org>
7831
7832 * w32uniscribe.c: New file.
7833
7834 * font.h (uniscribe_font_driver) [WINDOWSNT]: Declare for w32fns.c.
7835
7836 * w32font.h (uniscribe_check_otf): Declare for w32font.c.
7837
7838 * w32font.c (Qbalinese, Qbuginese, Qbuhid, Qcuneiform, Qcypriot)
7839 (Qdeseret, Qglagolitic, Qgothic, Qhanunoo, Qkharoshthi)
7840 (Qlimbu, Qlinear_b, Qold_italic, Qold_persian, Qosmanya)
7841 (Qphags_pa, Qphoenician, Qshavian, Qsyloti_nagri)
7842 (Qtagalog, Qtagbanwa, Qtai_le, Qtifinagh, Qugaritic)
7843 (Qphonetic): New symbols.
7844 (syms_of_w32font): Initialize them.
7845 (font_supported_scripts): Use them.
7846 (w32font_list_family): List all charsets.
7847 (w32font_text_extents, recompute_cached_metrics): Fix metric
7848 calculations.
7849 (w32_enumfont_pattern_entity): Make full_type a DWORD.
7850 Give opentype fonts their own format.
7851 (font_matches_spec): New arguments backend and logfont.
7852 Handle :otf spec for uniscribe backend.
7853 (add_font_entity_to_list): Match truetype fonts in uniscribe backend.
7854 (fill_in_logfont): Use DEFAULT_CHARSET when charset not supplied.
7855
7856 * w32fns.c (Fx_create_frame): Conditionally register uniscribe
7857 font backend.
7858 (globals_of_w32fns): Initialize uniscribe font backend.
7859
7860 * makefile.w32-in (CONFIG_H): New variable. Use it to clean up
7861 dependencies.
7862 (w32uniscribe.$(O)): New file to build.
7863 (FONT_OBJ): Include w32uniscribe.$(O).
7864 (LIBS): Add uniscribe libraries.
7865
7866 * ftfont.c (ftfont_get_open_type_spec): Check spec->script, not val.
7867
78682008-04-02 Chong Yidong <cyd@stupidchicken.com>
7869
7870 * callint.c (Vshift_select_mode): New var.
7871 (Finteractive): Document new ^ spec.
7872 (Fcall_interactively): Call handle-shift-selection if the ^ spec
7873 is present.
7874
7875 * keyboard.c (Vthis_command_keys_shift_translated): New var.
7876 (command_loop_1): Avoid running the direct display versions of
7877 forward-char and backward-char if shift-selection may occur.
7878 (read_key_sequence): Set Vthis_command_keys_shift_translated if
7879 shift-translation takes place.
7880
7881 * buffer.c (Vtransient_mark_mode): Move docstring to simple.el to
7882 avoid clobbering by define-minor-mode.
7883
7884 * cmds.c (Fforward_char, Fbackward_char, Fforward_line)
7885 (Fbeginning_of_line, Fend_of_line): Add ^ interactive spec.
7886
7887 * syntax.c (Fforward_word): Add ^ interactive spec.
7888
7889 * window.c (Fscroll_up, Fscroll_down, Fscroll_left)
7890 (Fscroll_right): Add ^ interactive spec.
7891
78922008-04-01 Stefan Monnier <monnier@iro.umontreal.ca>
7893
7894 * xdisp.c (try_window_id): Don't forget to reset delta_bytes.
7895
7896 * casefiddle.c (casify_object): Fix up int/EMACS_INT mixup.
7897
7898 * charset.c (Funibyte_charset, Fset_unibyte_charset): Remove.
7899
79002008-03-31 Juri Linkov <juri@jurta.org>
7901
7902 * window.c (Fdisplay_buffer): Reinitialize `tem' to nil.
7903
79042008-03-30 Jan Djärv <jan.h.d@swipnet.se>
7905
7906 * gtkutil.c (xg_set_geometry): Fix indentation.
7907 (xg_resize_outer_widget): Remove.
7908 (x_wm_size_hint_off): Fix indentation.
7909 (xg_frame_set_char_size): Call flush_and_sync after
7910 gtk_window_resize.
7911 (x_wm_set_size_hint): Pass NULL as geometry window to
7912 gtk_window_set_geometry_hints due to Gtk+ bug nr 68668.
7913 Add menu bar and tool bar height to base height.
7914 (xg_update_frame_menubar, free_frame_menubar)
7915 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
7916 (update_frame_tool_bar, free_frame_tool_bar):
7917 Change xg_resize_outer_widget to xg_frame_set_char_size.
7918
79192008-03-30 Michael Albinus <michael.albinus@gmx.de>
7920
7921 * dbusbind.c (QCdbus_timeout): New D-Bus internal symbol.
7922 (Fdbus_call_method): New parameter TIMEOUT.
7923 (dbus-send-signal): Optimize UNGCPRO call.
7924
79252008-03-29 Juri Linkov <juri@jurta.org>
7926
7927 * window.c (Fdisplay_buffer): Move call to
7928 Vsplit_window_preferred_function out of conditions that check
7929 if window is eligible for vertical splitting.
7930 When Vsplit_window_preferred_function is non-nil, call it and use
7931 its non-nil return value as window. Otherwise, continue doing
7932 vertical splitting using Fsplit_window with arg horflag=nil.
7933 (syms_of_window) <Vsplit_window_preferred_function>: Change the
7934 default value from `split-window' to nil.
7935
79362008-03-29 Juri Linkov <juri@jurta.org>
7937
7938 * callint.c (Fcall_interactively): Revert 2008-03-16 change
7939 for interactive code letters 'b' and 'B'.
7940
79412008-03-29 Eli Zaretskii <eliz@gnu.org>
7942
7943 * fileio.c (Fexpand_file_name): Convert the value of $HOME to a
7944 multibyte string.
7945
79462008-03-29 Stefan Monnier <monnier@iro.umontreal.ca>
7947
7948 * keyboard.c (pending_funcalls): New var.
7949 (timer_check): Run it.
7950 (syms_of_keyboard): Initialize it.
7951 * terminal.c (Qrun_hook_with_args, Qdelete_terminal_functions)
7952 (Vdelete_terminal_functions): New vars.
7953 (syms_of_terminal): Initialize them.
7954 (Fdelete_terminal): Run delete-terminal-functions.
7955 * xdisp.c (safe_eval): Rewrite.
7956 (safe_call2): New fun.
7957 * frame.c (Qdelete_frame_functions): New var.
7958 (syms_of_frame): Initialize it.
7959 (Fdelete_frame): Use it and use safe_call2 and pending_funcalls.
7960 * lisp.h (safe_call2, pending_funcalls): Declare.
7961
79622008-03-28 Andreas Schwab <schwab@suse.de>
7963
7964 * indent.c (Fmove_to_column): Move declaration before statements.
7965
79662008-03-27 Stefan Monnier <monnier@iro.umontreal.ca>
7967
7968 * frame.h (enum fullscreen_type): Give it a name. Move it before use.
7969 (struct frame): Use bit fields for boolean vars.
7970
7971 * process.c (server_accept_connection): Simplify naming.
7972 (emacs_get_tty_pgrp): Use SDATA.
7973
7974 * coding.c (decode_coding_object): Fix last change.
7975
79762008-03-27 Jason Rumney <jasonr@gnu.org>
7977
7978 * w32fns.c (start_hourglass): Suppress hourglass on tty frames.
7979
79802008-03-27 Kenichi Handa <handa@ni.aist.go.jp>
7981
7982 * charset.c (Fdefine_charset_internal): Change the way of
7983 registering charsets in Vcharset_order_list.
7984 (syms_of_charset): Make the charset `eight-bit' supplementary.
7985
79862008-03-26 Alexandre Oliva <aoliva@redhat.com> (tiny change)
7987
7988 * regex.c (EXTEND_BUFFER): Change order of pointer addition
7989 operations, to avoid having the difference between pointers
7990 overflow.
7991
79922008-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
7993
7994 * indent.c (check_display_width): New fun.
7995 (scan_for_column): Use it.
7996
7997 * data.c (syms_of_data): Mark most-positive-fixnum and
7998 most-negative-fixnum as constants.
7999
8000 * xdisp.c (redisplay_internal): Reset selected_frame earlier.
8001
8002 * indent.c (scan_for_column): Extract from current_column_1.
8003 Merge with the same code from Fmove_to_column.
8004 (current_column_1, Fmove_to_column): Use it.
8005
80062008-03-25 Stefan Monnier <monnier@iro.umontreal.ca>
8007
8008 * keymap.c (map_keymap_internal): New fun.
8009 (map_keymap): Use it.
8010 (Fmap_keymap_internal): New fun.
8011 (Fmap_keymap): Remove left-out test from before make_save_value.
8012
8013 * keymap.c (Fmap_keymap): Use `map-keymap-sorted.
8014
8015 * frame.c (Fmodify_frame_parameters, x_set_frame_parameters):
8016 Use XCAR/XCDR.
8017
8018 * process.h (struct Lisp_Process): Remove filter_multibyte.
8019 * process.c (QCfilter_multibyte): Remove.
8020 (setup_process_coding_systems): Don't use filter_multibyte.
8021 (Fstart_process, Fmake_network_process): Don't set filter_multibyte.
8022 (read_process_output): Don't adjust multibyteness to filter_multibyte.
8023 (Fset_process_filter_multibyte): Change the coding-system to
8024 approximate the previous behavior.
8025 (Fprocess_filter_multibyte_p): Get the multibyteness straight from the
8026 coding-system.
8027
8028 * coding.c (decode_coding_object): When not decoding into a buffer,
8029 obey the coding system's preference of (uni|multi)byte.
8030
80312008-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
8032
8033 * casefiddle.c (casify_object): Avoid pathological N^2 worst case if
8034 every char is changed and has a different byte-length.
8035 (Fupcase_word, Fdowncase_word, Fcapitalize_word, operate_on_word):
8036 Fix int -> EMACS_INT.
8037
80382008-03-23 David Hansen <david.hansen@gmx.net>
8039
8040 * dbusbind.c (xd_read_message): Remove extra copying of message
8041 strings. Check for NULL `interface' or `member'.
8042
80432008-03-22 Eli Zaretskii <eliz@gnu.org>
8044
8045 * w32.c (readdir): If FindFirstFile/FindNextFile return in
8046 cFileName a file name that includes `?' characters, use the 8+3
8047 alias in cAlternateFileName instead.
8048
80492008-03-21 Stefan Monnier <monnier@iro.umontreal.ca>
8050
8051 * buffer.c (enlarge_buffer_text): Fix int -> EMACS_INT.
8052
80532008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
8054
8055 * intervals.c (temp_set_point, temp_set_point_both): Use EMACS_INT.
8056 (set_point, set_point_both): Use EMACS_INT. Remove `buffer' arg,
8057 work on current_buffer only instead (that was already the case
8058 for some of the code anyway).
8059 * buffer.h (set_point, set_point_both): Remove buffer arg, use long int.
8060 (temp_set_point, temp_set_point_both): Use EMACS_INT.
8061 (SET_PT, SET_PT_BOTH): Adjust.
8062 * intervals.h (set_point, temp_set_point, set_point_both)
8063 (temp_set_point_both): Remove redundant declarations.
8064
80652008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
8066
8067 * fileio.c (Finsert_file_contents):
8068 * lread.c (Feval_buffer): Use BUF_TEMP_SET_PT.
8069 * buffer.h (BUF_SET_PT): Remove. set_point_both doesn't work right
8070 when buffer != current_buffer anyway.
8071
80722008-03-20 Andreas Schwab <schwab@suse.de>
8073
8074 * callint.c (Fcall_interactively) [case 'B']: Use other-buffer
8075 as default.
8076
80772008-03-19 Jason Rumney <jasonr@gnu.org>
8078
8079 * w32fns.c (hourglass_timer, hourglass_hwnd): New variables.
8080 (syms_of_w32fns): Initialize them.
8081 (HOURGLASS_ID): New constant.
8082 (x_window_to_frame): Don't check hourglass_window.
8083 (w32_wnd_proc) <WM_TIMER>: Handle hourglass_timer.
8084 (w32_wnd_proc) <WM_EXITMENULOOP>: Set pending hourglass cursor.
8085 (w32_wnd_proc) <WM_SETCURSOR>: Set the hourglass or current cursor.
8086 (w32_wnd_proc) <WM_EMACS_SETCURSOR>: Set frame's current_cursor.
8087 Only change the cursor if hourglass is not active.
8088 (Fx_create_frame): Initialize frame's current_cursor.
8089 (hourglass_atimer): Remove.
8090 (hourglass_started): New function.
8091 (start_hourglass, cancel_hourglass, hide_hourglass): Adapt to w32.
8092 (show_hourglass): Adapt to w32, changing argument to frame.
8093
8094 * w32term.h (struct w32_output): Remove hourglass_window.
8095 Add current_cursor.
8096
8097 * eval.c (call_debugger, Fsignal):
8098 * keyboard.c (recursive_edit_1, cmd_error, Ftop_level)
8099 (command_loop_1, Fread_key_sequence, Fread_key_sequence_vector)
8100 (Fexecute_extended_command, cancel_hourglass_unwind):
8101 * minibuf.c (read_minibuf):
8102 * fns.c (Fy_or_n_p): Enable hourglass when HAVE_WINDOW_SYSTEM.
8103
81042008-03-19 Stefan Monnier <monnier@iro.umontreal.ca>
8105
8106 * window.c (run_funs): New fun.
8107 (run_window_configuration_change_hook): Use it to run the buffer-local
8108 and the global part of the hook.
8109
8110 * xdisp.c (format_mode_line_unwind_data): Add window argument.
8111 (unwind_format_mode_line): Restore selected window.
8112 (x_consider_frame_title, Fformat_mode_line): Set selected window.
8113
81142008-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
8115
8116 * editfns.c (Fchar_equal): Check they are valid characters.
8117
8118 * buffer.h (Fbuffer_list): Declare (for use in callint.c).
8119
81202008-03-17 Andreas Schwab <schwab@suse.de>
8121
8122 * regex.c (re_match_2_internal): Properly match raw 8-bit bytes
8123 against a charset.
8124
8125 * lisp.h (Fbuffer_list): Declare.
8126
81272008-03-17 Jan Djärv <jan.h.d@swipnet.se>
d6c952f8 8128
aac0c6e3
MR
8129 * gtkutil.c (free_frame_tool_bar): Only call gtk_container_remove if
8130 handlebox_widget is != 0.
8131
81322008-03-16 Juri Linkov <juri@jurta.org>
8133
8134 * callint.c (Fcall_interactively): For interactive code letters
8135 'b' and 'B' put the buffer list into the list of default "future"
8136 values of the minibuffer.
8137
81382008-03-16 Andreas Schwab <schwab@suse.de>
8139
8140 * keyboard.c (read_key_sequence): Fix downcasing of letters with
8141 modifiers.
8142
8143 * regex.c (re_match_2_internal): Correct matching of a charset
8144 against latin-1 characters.
8145
81462008-03-16 Kenichi Handa <handa@m17n.org>
8147
8148 * coding.c (CHAR_STRING_ADVANCE_NO_UNIFY)
8149 (STRING_CHAR_ADVANCE_NO_UNIFY): New macros.
8150 (coding_alloc_by_making_gap): Fix the way to preserve data in the gap.
8151 (alloc_destination): Fix the 2nd arg to coding_alloc_by_making_gap.
8152 (encode_coding_utf_8): Use CHAR_STRING_ADVANCE_NO_UNIFY instead of
8153 CHAR_STRING_ADVANCE.
8154 (produce_chars): Fix for the case that the source and the
8155 destination are the same buffer. Use CHAR_STRING_ADVANCE_NO_UNIFY
8156 instead of CHAR_STRING_ADVANCE.
8157 (consume_chars): Use STRING_CHAR_ADVANCE_NO_UNIFY instead of
8158 STRING_CHAR_ADVANCE.
8159
81602008-03-15 Andreas Schwab <schwab@suse.de>
8161
8162 * regex.c (re_match_2_internal): Correct matching of eight bit
8163 characters in unibyte strings.
8164
81652008-03-15 Martin Rudalics <rudalics@gmx.at>
8166
8167 * buffer.c (overlays_in, Foverlays_in): Include empty overlays
8168 at end of range when it coincides with the end of the buffer.
8169
81702008-03-14 Eli Zaretskii <eliz@gnu.org>
8171
8172 * dired.c (Ffile_attributes) [WINDOWSNT]: Force inode be positive.
8173
8174 * w32fns.c (globals_of_w32fns, Fx_create_frame): Fix last change.
8175
81762008-03-14 Jason Rumney <jasonr@gnu.org>
8177
8178 * editfns.c (initial_tz): New variable.
8179 (syms_of_editfns): Initialize it.
8180 (Fset_time_zone_rule): Set it when first called.
8181 Use it when TZSTRING is nil.
8182
8183 * w32fns.c (MONITOR_DEFAULT_TO_NEAREST, struct MONITOR_INFO)
8184 (MonitorFromPoint_Proc, GetMonitorInfo_Proc): New definitions.
8185 (monitor_from_point_fn, get_monitor_info_fn): New globals.
8186 (globals_of_w32fns): Initialize them.
8187 (compute_tip_xy): Use them to position tooltips.
8188
81892008-03-14 Glenn Morris <rgm@gnu.org>
8190
8191 * emacs.c (main): Revert previous change.
8192 (standard_args): Revert -internal-script back to -scriptload,
8193 and remove the long-option form.
8194
81952008-03-13 Glenn Morris <rgm@gnu.org>
8196
8197 * emacs.c (main, standard_args): Rename -scriptload to -internal-script.
8198 Remove option -enable-font-backend.
8199
82002008-03-12 Stefan Monnier <monnier@iro.umontreal.ca>
8201
8202 * buffer.c (Fswitch_to_buffer): Fall back on pop-to-buffer.
8203
82042008-03-11 Jan Djärv <jan.h.d@swipnet.se>
8205
8206 * xterm.c (x_connection_closed): For GTK: If this is the last
8207 terminal just exit without closing the display.
8208
82092008-03-11 Jason Rumney <jasonr@gnu.org>
8210
8211 * w32font.c (w32font_full_name): Use floor to round.
8212
f0131492 82132008-03-10 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
aac0c6e3
MR
8214
8215 * sound.c (alsa_configure): Declare vol at beginning of block.
8216
8217 * fontset.c (Ffontset_info): Remove extra semicolon.
8218
82192008-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
8220
8221 * fileio.c (Fsubstitute_in_file_name): Fix up computation of maximum
8222 size of resulting string.
8223
82242008-03-10 Jason Rumney <jasonr@gnu.org>
8225
8226 * dispnew.c (adjust_glyph_matrix): Initialize window_height.
8227
82282008-03-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8229
8230 * xdisp.c (handle_single_display_spec): Undo 2007-10-16 changes.
8231 Don't pretend as if characters with display property haven't been
8232 consumed for string-replacing-string case.
8233
82342008-03-08 Kim F. Storm <storm@cua.dk>
8235
8236 * xdisp.c (GET_NEXT_DISPLAY_ELEMENT): New macro.
8237 (get_next_display_element, next_element_from_string)
8238 (next_element_from_ellipsis, next_element_from_buffer): Use it.
8239
82402008-03-08 Andreas Schwab <schwab@suse.de>
8241
8242 * process.h (struct Lisp_Process): Declare bit fields as unsigned.
8243
82442008-03-06 Jason Rumney <jasonr@gnu.org>
8245
8246 * w32font.c (w32_registry): Take font_type argument. Use ANSI
8247 when charset not specified. Only translate ANSI to unicode when
8248 font_type is truetype.
8249 (w32font_coverage_ok): New function.
8250 (add_font_entity_to_list): Use it to filter unsuitable fonts.
8251
82522008-03-05 Kenichi Handa <handa@ni.aist.go.jp>
8253
8254 * lread.c (Fread_char): Resolve modifiers.
8255 (Fread_char_exclusive): Likewise.
8256
8257 * character.c (char_resolve_modifier_mask): New function.
8258 (char_string): Use char_resolve_modifier_mask.
8259 (Fchar_resolve_modifiers): New function.
8260 (syms_of_character): Declare Fchar_resolve_modifiers as Lisp
8261 function.
8262
82632008-03-04 Jason Rumney <jasonr@gnu.org>
8264
8265 * makefile.w32-in: Always include w32font.c in the build.
8266 * w32font.c: Wrap in USE_FONT_BACKEND conditional.
8267
82682008-03-04 Andreas Schwab <schwab@suse.de>
8269
8270 * Makefile.in (clean): Remove emacs-*.*.* instead of emacs-*.
8271 (versionclean): Likewise.
8272
82732008-03-04 Juanma Barranquero <lekktu@gmail.com>
8274
8275 * .cvsignore: Add oo.
8276
82772008-03-03 Andreas Schwab <schwab@suse.de>
8278
8279 * coding.c (decode_coding_object): Inhibit gap shrinking while
8280 decoding in place.
8281
82822008-03-03 Dan Nicolaescu <dann@ics.uci.edu>
8283
8284 * w32term.c: Remove unused include "gnu.h".
8285 * makefile.w32-in (w32term.o): Don't depend on gnu.h.
8286
8287 * gnu.h: Rename to ...
8288 * emacs-icon.h: ... this.
8289 * xterm.c: Use emacs-icon.h instead of gnu.h.
8290 * Makefile (xterm.o): Depend on emacs-icon.h, not gnu.h.
8291
82922008-03-03 Juanma Barranquero <lekktu@gmail.com>
8293
8294 * w32font.c: Include math.h.
8295
82962008-03-03 Jason Rumney <jasonr@gnu.org>
8297
8298 * w32font.c (recompute_cached_metrics): Change font arg to w32font_info.
8299 Compute options separately.
8300 (w32font_open_internal): Set glyph_idx before caching metrics.
8301
8302 * w32font.h (NTM_PS_OPENTYPE, NTM_TT_OPENTYPE, NTM_TYPE1):
8303 Define if system headers don't.
8304 (struct w32font_info): Enlarge ascii_metrics. Add glyph_idx.
8305 (w32font_encode_char): Don't declare here.
8306
8307 * w32font.c (Quniscribe, QCformat): New symbols.
8308 (syms_of_w32font): Define them.
8309 (w32font_has_char): Indicate uncertainty.
8310 (w32font_encode_char): Encode as glyph point. Make static.
8311 (recompute_cached_metrics): New function.
8312 (w32font_open_internal): Use it. Set font to use glyph points
8313 initially. Set format based on type of font.
8314 (w32font_text_extents, w32font_draw): Optionally use glyph points.
8315 (w32_enumfont_pattern_entity): Accept backend arg. Set type based
8316 on it. Set format based on information available here.
8317 (add_font_entity_to_list): Identify backend based on opentype_only.
8318
83192008-03-02 Andreas Schwab <schwab@suse.de>
8320
8321 * ftfont.c (ftfont_pattern_entity): Fix aliasing violations.
8322
8323 * coding.c (decode_coding_big5, produce_chars):
8324 Fix typos in last change.
8325
83262008-03-02 Kentaro Ohkouchi <nanasess@fsm.ne.jp>
8327
8328 * gnu.h: New icon.
8329
83302008-03-02 Kenichi Handa <handa@m17n.org>
8331
8332 * coding.c (decode_coding_utf_8): When eol-type of CODING is
8333 `dos', don't decode '\r' if that is the last in the source.
8334 (decode_coding_utf_16, decode_coding_emacs_mule)
8335 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
8336 (decode_coding_raw_text, decode_coding_charset): Likewise.
8337 (produce_chars): Don't decode EOL here. Use EMACS_INT.
8338
83392008-03-01 Jason Rumney <jasonr@gnu.org>
8340
8341 * w32font.c (w32font_full_name): Report point size for scalable fonts.
8342
83432008-03-01 Kim F. Storm <storm@cua.dk>
8344
8345 * dispextern.h (CHAR_GLYPH_SPACE_P): Check for default face.
8346
83472008-03-01 Jason Rumney <jasonr@gnu.org>
8348
8349 * w32font.c (w32font_full_name): New function.
8350 (w32font_open_internal): Use it.
8351
83522008-03-01 Kim F. Storm <storm@cua.dk>
8353
8354 * dispnew.c (line_draw_cost): Fix invalid glyph check.
8355
83562008-03-01 Jason Rumney <jasonr@gnu.org>
8357
8358 * font.c (font_unparse_fcname): Increase len when style is a symbol.
8359
83602008-03-01 Jan Djärv <jan.h.d@swipnet.se>
8361
8362 * xterm.c (handle_one_xevent): For Gtk+ and ConfigureNotify, call
8363 xg_frame_resized when the event is for the edit widget.
8364
8365 * gtkutil.h (xg_frame_resized): Renamed from xg_resize_widgets.
8366
8367 * gtkutil.c (xg_resize_outer_widget): Only do one of set_geometry or
8368 set_char_size.
8369 (xg_frame_resized): Renamed from xg_resize_widgets. Remove all
8370 operations on widgets here. Just set frame size if needed.
8371 (flush_and_sync, x_wm_size_hint_off, xg_pack_tool_bar): New functions.
8372 (xg_frame_set_char_size): Call x_wm_size_hint_off before resizing.
8373 (x_wm_set_size_hint): Set size hints on the edit widget only, not
8374 the whole frame.
8375 (xg_create_tool_bar): Move attachment of the tool bar to
8376 xg_pack_tool_bar. Do not attach the tool bar if there are no items.
8377 (free_frame_tool_bar): Remove call to SET_FRAME_GARBAGED.
8378
83792008-03-01 Jason Rumney <jasonr@gnu.org>
8380
8381 * w32fns.c (w32_msg_pump): Disable debug code.
8382
83832008-03-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8384
8385 * m/intel386.h [MAC_OSX || DARWIN]: Define NO_ARG_ARRAY if _LP64.
8386
83872008-02-29 Chong Yidong <cyd@stupidchicken.com>
8388
8389 * xdisp.c (next_overlay_string): Don't set
8390 overlay_strings_at_end_processed_p if we're currently reading from
8391 a display string.
8392
83932008-02-29 Stefan Monnier <monnier@iro.umontreal.ca>
8394
8395 * xdisp.c (get_overlay_strings_1): Fix typo.
8396
83972008-02-29 Chong Yidong <cyd@stupidchicken.com>
8398
8399 * xdisp.c (get_overlay_strings_1): Add missing argument type.
8400
84012008-02-28 Kenichi Handa <handa@ni.aist.go.jp>
8402
8403 * ftfont.c (ftfont_match): Explicitly set pixelsize in pattern.
8404
8405 * xdisp.c (display_mode_element): Cancel the previous change.
8406 (decode_mode_spec): Likewise.
8407 (handle_auto_composed_prop): Don't make composition if it->string
8408 is a string.
8409
84102008-02-27 Kim F. Storm <storm@cua.dk>
8411
8412 * lisp.h (GLYPH): Change type from int to struct with separate char
8413 and face_id members.
8414 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Delete macros.
8415 (GLYPH_CHAR, GLYPH_FACE): Remove slow versions with frame arg.
8416 (FAST_GLYPH_CHAR, FAST_GLYPH_FACE): Rename macros to ...
8417 (GLYPH_CHAR, GLYPH_FACE): ... these. Change users.
8418 (FAST_MAKE_GLYPH, MAKE_GLYPH): Remove. Rewrite users to use ...
8419 (SET_GLYPH, SET_GLYPH_CHAR, SET_GLYPH_FACE): ... these macros instead.
8420 (GLYPH_CODE_CHAR, GLYPH_CODE_FACE, GLYPH_CODE_P)
8421 (GLYPH_CODE_CHAR_VALID_P, SET_GLYPH_FROM_GLYPH_CODE): New macros to
8422 handle new Lisp glyph code encoding, either an integer or a cons.
8423
8424 * disptab.h (GLYPH_SIMPLE_P): Rewrite.
8425 (GLYPH_ALIAS): Delete.
8426 (GLYPH_ALIAS_P, GLYPH_FOLLOW_ALIASES): Rewrite.
8427 (GLYPH_LENGTH, GLYPH_STRING): Use GLYPH_CHAR.
8428 (GLYPH_FROM_CHAR): Replace macro by ...
8429 (SET_GLYPH_FROM_CHAR): ... this macro. Change users.
8430
8431 * dispextern.h (CHAR_GLYPH_SPACE_P): Simplify.
8432 (GLYPH_FROM_CHAR_GLYPH): Replace macro by ...
8433 (SET_GLYPH_FROM_CHAR_GLYPH): ... this macro. Change users.
8434 (GLYPH_INVALID_P): New macro.
8435 (spec_glyph_lookup_face): Update prototype.
8436
8437 * dispnew.c (line_draw_cost): Adapt to new glyph type.
8438 (build_frame_matrix_from_leaf_window): Adapt to new glyph type and
8439 new glyph code encoding.
8440 (spec_glyph_lookup_face): No return value; update passed glyph instead.
8441 (init_display): Use SET_CHAR_GLYPH to initialize space_glyph.
8442
8443 * xdisp.c (get_next_display_element, next_element_from_display_vector):
8444 Adapt to new glyph type and new glyph code encoding.
8445
8446 * term.c (encode_terminal_code, produce_special_glyphs): Likewise.
8447
8448 * indent.c (current_column, current_column_1, Fmove_to_column)
8449 (compute_motion): Adapt to new glyph code encoding.
8450
8451 * msdos.c (IT_write_glyphs): Adapt to new glyph type.
8452
84532008-02-27 Chong Yidong <cyd@stupidchicken.com>
8454
8455 * process.c (wait_reading_process_output): Check for window
8456 changes caused by timers.
8457 Suggested by Johan Bockgård.
8458
84592008-02-27 Glenn Morris <rgm@gnu.org>
8460
8461 * emacs.c (USAGE1): Add `--disable-font-backend'.
8462
84632008-02-27 Stefan Monnier <monnier@iro.umontreal.ca>
8464
8465 * fileio.c (Finsert_file_contents): Don't reset undo_list if no change
8466 is made to the buffer.
8467
84682008-02-26 Stefan Monnier <monnier@iro.umontreal.ca>
8469
8470 * dispextern.h (face_at_buffer_position, face_for_overlay_string)
8471 (face_at_string_position):
8472 * xfaces.c (face_at_buffer_position, face_for_overlay_string)
8473 (face_at_string_position):
8474 * xdisp.c (display_string, next_overlay_change):
8475 * buffer.h (overlays_at):
8476 * buffer.c (overlays_at): Use EMACS_INT for buffer positions.
8477 Update callers.
8478
84792008-02-26 Chong Yidong <cyd@stupidchicken.com>
8480
8481 * editfns.c (Fformat): Doc fix.
8482
84832008-02-26 Juanma Barranquero <lekktu@gmail.com>
8484
8485 * font.c (Ffont_spec, Ffont_at): Fix typos in docstrings.
8486 (Ffont_put, Flist_families, Ffont_fill_gstring, Ffont_drive_otf)
8487 (Ffont_otf_alternates, Fquery_font): Doc fixes.
8488
84892008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
8490
8491 * buffer.c (Fbuffer_swap_text): New function.
8492 (syms_of_buffer): Defsubr it.
8493
84942008-02-25 Chong Yidong <cyd@stupidchicken.com>
8495
8496 * keyboard.c (command_loop_1): Revert 2006-10-09 change.
8497
84982008-02-25 Jason Rumney <jasonr@gnu.org>
8499
8500 * w32font.c (w32font_draw): Draw one character at a time when padding.
8501
85022008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
8503
8504 * window.c (Fdelete_window, Fadjust_window_trailing_edge):
8505 Handle a nil arg. Use run_window_configuration_change_hook.
8506 (delete_window, adjust_window_trailing_edge): Don't handle nil any more.
8507 (Fenlarge_window, Fshrink_window, Fset_window_configuration):
8508 Use run_window_configuration_change_hook.
8509
85102008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
8511
8512 * xdisp.c (x_produce_glyphs): For a visible glyph, assure at least
8513 1-pixel width.
8514
85152008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
8516
8517 * xdisp.c (fill_glyph_string): Pay attention to glyph->padding_p.
8518 (append_glyph): Set glyph->pixel_width and glyph->padding_p to 1
8519 if the glyph in the font is zero pixel with.
8520
8521 * dispextern.h (struct glyph_string): New member padding_p.
8522
8523 * w32font.c (w32font_draw): Pay attention to s->padding_p.
8524
8525 * ftxfont.c (ftxfont_draw): Pay attention to s->padding_p.
8526
8527 * xfont.c (xfont_draw): Pay attention to s->padding_p.
8528
8529 * xftfont.c (xftfont_draw): Pay attention to s->padding_p.
8530
8531 * font.c: If the font driver doesn't have `shape' function, return Qnil.
8532
85332008-02-25 Jason Rumney <jasonr@gnu.org>
8534
8535 * w32fns.c (enum_font_cb2): Don't use raster fonts for Unicode.
8536
85372008-02-24 Stefan Monnier <monnier@iro.umontreal.ca>
8538
8539 Allow fine-grained image-cache flushing.
8540 * dispextern.h (struct image): Add `dependencies' field.
8541 (clear_image_caches): Change arg to Lisp_Object.
8542 * image.c (make_image): Initialize `dependencies' field.
8543 (clear_image_cache): Change arg to allow fine-grained flushing.
8544 Perform the flush even if image-cache-eviction-delay is nil.
8545 (clear_image_caches): Change arg to Lisp_Object.
8546 (Fclear_image_cache): Expand meaning of the argument.
8547 (mark_image): Mark `dependencies' field.
8548 * xfaces.c (clear_face_cache): Adapt arg to call to clear_image_caches.
8549 (lface_hash): Use XHASH rather than XFASTINT.
8550 (face_at_buffer_position): Fix int -> EMACS_INT position.
8551 * xdisp.c (next_overlay_change): Fix int -> EMACS_INT position.
8552 (select_frame_for_redisplay): Remove code duplication.
8553 (redisplay_internal): Adapt arg to call to clear_image_caches.
8554
85552008-02-24 Dan Nicolaescu <dann@ics.uci.edu>
8556
8557 * s/vms4-0.h:
8558 * s/vms4-2.h:
8559 * s/vms4-4.h:
8560 * s/vms5-5.h: Remove, unused.
8561
8562 * s/irix5-2.h:
8563 * s/irix6-0.h:
8564 * s/riscos5.h:
8565 * s/mach-bsd4-3.h:
8566 * m/mips4.h: Remove files for obsolete systems.
8567
8568 * Makefile.in:
8569 * filelock.c:
8570 * unexmips.c:
8571 * m/hp9000s300.h:
8572 * m/iris4d.h:
8573 * s/aix3-1.h:
8574 * s/hpux.h:
8575 * s/msdos.h:
8576 * s/usg5-0.h:
8577 * s/usg5-2-2.h:
8578 * s/usg5-2.h:
8579 * s/usg5-3.h: Remove references to obsolete variables.
8580
8581 * s/irix5-0.h: Remove, move all the contents ...
8582 * s/irix6-5.h: ... here. Simplify.
8583 * config.in: Regenerate.
8584
85852008-02-24 Jason Rumney <jasonr@gnu.org>
8586
8587 * w32term.c (x_draw_glyph_string_background): Clear the background
8588 manually when cleartype is in use.
8589 (x_draw_glyph_string_foreground): Draw text transparently when
8590 cleartype is in use.
8591
8592 * w32font.c (w32font_text_extents): Avoid getting HDC and selecting
8593 a font into it unless we have to.
8594
85952008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
8596
8597 * intervals.h (INT_LISPLIKE): Remove. It may misfire.
8598 (NULL_INTERVAL_P, SET_INTERVAL_PARENT): Don't use it.
d6c952f8 8599
aac0c6e3
MR
86002008-02-18 Jason Rumney <jasonr@gnu.org>
8601
8602 * w32fns.c (Fw32_shell_execute): Encode parameters.
8603
86042008-02-09 Eli Zaretskii <eliz@gnu.org>
8605
8606 * fileio.c (syms_of_fileio) <insert-default-directory>: Doc fix.
8607
86082008-02-05 Juanma Barranquero <lekktu@gmail.com>
8609
8610 * unexhp9k800.c (read_header): Replace `legal' with `valid'.
8611
86122008-02-24 Ulrich Neumerkel <ulrich@complang.tuwien.ac.at> (tiny change)
8613
8614 * xterm.c (x_set_offset): Don't change the gravity if
8615 CHANGE_GRAVITY is -1.
8616
86172008-02-23 Chong Yidong <cyd@stupidchicken.com>
8618
8619 * fileio.c (auto_save_error_occurred): New var.
8620 (auto_save_error): Set it.
8621 (Fdo_auto_save): Don't overwrite the error message if an auto-save
8622 error occurred.
8623
86242008-02-23 Eli Zaretskii <eliz@gnu.org>
8625
8626 * w32.c (globals_of_w32): Add initializations for
8627 g_b_init_get_sid_sub_authority and
8628 g_b_init_get_sid_sub_authority_count.
8629
86302008-02-22 Stefan Monnier <monnier@iro.umontreal.ca>
8631
8632 * font.c (font_match_xlfd, font_check_xlfd_parse): New funs.
8633 (font_parse_xlfd): Use them for sanity check.
8634 (Finternal_set_font_style_table): Make sure the table is bijective.
8635
8636 Consolidate the image_cache to the terminal struct.
8637 * termhooks.h (P_): Remove redundant def.
8638 (struct terminal): New field `image_cache'.
8639 * frame.h (FRAME_IMAGE_CACHE): New macro. Use it everywhere in place
8640 of FRAME_X_IMAGE_CACHE.
8641 * xterm.h (struct x_display_info): Remove image_cache field.
8642 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
8643 * w32term.h (struct w32_display_info): Remove image_cache field.
8644 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
8645 * macterm.h (struct mac_display_info): Remove image_cache field.
8646 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
8647 * xterm.c (x_term_init):
8648 * w32term.c (w32_term_init):
8649 * macterm.c (mac_term_init): Set the image_cache in the terminal.
8650 * dispextern.h (clear_image_cache, forall_images_in_image_cache):
8651 Remove declarations.
8652 (clear_image_caches, mark_image_cache): New declarations.
8653 * xfaces.c (clear_face_cache):
8654 * xdisp.c (redisplay_internal): Use clear_image_caches.
8655 * image.c (clear_image_cache): Don't check that a frame is on
8656 a window-system before checking if it shares the same cache.
8657 (clear_image_caches): New function.
8658 (Fclear_image_cache): Use it.
8659 (mark_image): Move from allo.c.
8660 (mark_image_cache): Move from alloc.c and forall_images_in_image_cache.
8661 * alloc.c (mark_image, mark_image_cache): Move to image.c.
8662 (mark_object): Don't call mark_image_cache for frames.
8663 (mark_terminals): Call mark_image_cache.
8664
8665 * lisp.h (Fdelete_terminal): Declare.
8666
8667 * charset.h (CHECK_CHARSET, CHECK_CHARSET_GET_ID)
8668 (CHECK_CHARSET_GET_ATTR): Don't use the inexistent return value of
8669 wrong_type_argument.
8670
86712008-02-22 Kenichi Handa <handa@ni.aist.go.jp>
8672
8673 * Makefile.in (lisp): Remove devanagari.el, kannada.el,
8674 malayalam.el, and tamil.el. Add sinhala.el.
8675
86762008-02-21 Stefan Monnier <monnier@iro.umontreal.ca>
8677
8678 * xterm.c (x_connection_closed): Consolidate identical tests.
8679 (x_delete_terminal): Don't crash if called via x_connection_closed.
8680
86812008-02-21 Kenichi Handa <handa@ni.aist.go.jp>
8682
8683 * xdisp.c (decode_mode_spec): New arg string.
8684 (display_mode_element): Adjust for the above change.
8685
86862008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
8687
8688 * callint.c (Fcall_interactively): Use AREF.
8689
86902008-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
8691
8692 * font.c (font_unparse_xlfd): Don't ignore integer pixel size specs.
8693
86942008-02-18 Jan Djärv <jan.h.d@swipnet.se>
8695
8696 * xfns.c (Fx_show_tip): Set string to " " if empty.
8697
86982008-02-17 Dan Nicolaescu <dann@ics.uci.edu>
8699
8700 * callint.c (syms_of_callint): Initialize Vmark_even_if_inactive
8701 with Qt.
8702
87032008-02-17 Kenichi Handa <handa@m17n.org>
8704
8705 * ftfont.c (ftfont_shape): Return Lispy number.
8706
8707 * xfaces.c (prepare_face_for_display): Use display_info->font->fid
8708 for GCs.
8709 (Finternal_set_font_selection_order): Call font_update_sort_order
8710 only when enable_font_backend is set.
8711 (realize_x_face): Set face->font_info to that of default face only
8712 when enable_font_backend is set.
8713
8714 * xdisp.c (handle_composition_prop): Set it->c to the fist
8715 character of the composed region.
8716 (fill_composite_glyph_string): Set base_face->font_info to
8717 s->font_info. Get a face for ascii from base_face->ascii_face.
8718 (BUILD_COMPOSITE_GLYPH_STRING): Call fill_composite_glyph_string
8719 with a face already decided.
8720 (x_produce_glyphs): Be sure to set it->ascent and it->descent to
8721 non-negative.
8722 (x_produce_glyphs): If the composition method is ..._WITH_GLYPH_STRING,
8723 call font_prepare_composition unconditionally.
8724
8725 * xfns.c (x_make_gc): Use the default font id of the frame for GCs.
8726
8727 * xterm.h (struct x_display_info): New member font.
8728
8729 * xterm.c (x_set_cursor_gc): Use display_info->font->fid for GCs.
8730 (x_set_mouse_face_gc, x_new_font): Likewise.
8731 (x_term_init): Setup display_info->font.
8732 (x_delete_terminal): Free display_info->font.
8733
8734 * xfont.c (xfont_draw): Use BLOCK_INPUT and UNBLOCK_INPUT.
8735
8736 * ftxfont.c (ftxfont_default_fid): Delete it.
8737 (ftxfont_open): Set xfont->fid to 0.
8738 (ftxfont_end_for_frame): Clear data specific to the frame and the
8739 font-driver.
8740
8741 * xftfont.c (xftfont_default_fid): Delete it.
8742 (xftfont_open): Set xfont->fid to 0.
8743
8744 * fontset.c (FONTSET_OBJLIST): New macro.
8745 (fontset_find_font): Update font-object list of the fontset.
8746 (free_realized_fontset): New function.
8747 (free_face_fontset): Call free_realized_fontset.
8748 (Ffont_info): Call font_close_object only when enable_font_backend
8749 is set.
8750
8751 * font.c [HAVE_X_WINDOWS]: Include xterm.h.
8752 [HAVE_NTGUI]: Include w32term.h.
8753 [MAC_OS]: Include macterm.ch.
8754 (font_otf_ValueRecord): Use make_number.
8755 (font_finish_cache): Fix handling of reference count.
8756 (font_clear_cache): Update num_fonts.
8757 (font_open_entity): Update smallest_char_width and
8758 smallest_font_height of the frame.
8759 (font_close_object): Update num_fonts.
8760 (Fclear_font_cache): Fix finding the target cache data.
8761
87622008-02-16 Glenn Morris <rgm@gnu.org>
8763
8764 * fontset.c (Finternal_char_font): Fix compilation warning.
8765
87662008-02-16 Eli Zaretskii <eliz@gnu.org>
8767
8768 * w32.c (init_user_info): Use TOKEN_USER and TOKEN_PRIMARY_GROUP
8769 instead of char arrays. Enlarge the size of array passed to
8770 get_token_information.
8771
8772 * font.c (Ffont_fill_gstring, Fget_font_glyphs): Fix compilation
8773 warnings.
8774
87752008-02-15 Dan Nicolaescu <dann@ics.uci.edu>
8776
8777 * .gdbinit: Don't set `args', it breaks gdb --args.
8778
87792008-02-14 Stefan Monnier <monnier@iro.umontreal.ca>
8780
8781 * fileio.c (Finsert_file_contents): Adjust offsets when replacing
8782 within a narrowed buffer.
8783
87842008-02-14 Kenichi Handa <handa@ni.aist.go.jp>
8785
8786 * coding.c (decode_coding_object, encode_coding_object):
8787 Preserve Vdeactivate_mark. Delete unnecessary call of Fcurrent_buffer.
8788
87892008-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
8790
8791 * coding.c (coding_set_destination): Use BEG_BYTE rather than
8792 hardcoding 1.
8793 (detect_coding_system):
8794 * lisp.h (detect_coding_system, chars_in_text, multibyte_chars_in_text)
8795 (string_char_to_byte, string_byte_to_char, insert_from_gap):
8796 * insdel.c (insert_from_gap):
8797 * fns.c (string_char_byte_cache_charpos, string_char_byte_cache_bytepos)
8798 (string_char_to_byte, string_byte_to_char, string_make_multibyte)
8799 (string_to_multibyte):
8800 * character.c (chars_in_text, multibyte_chars_in_text):
8801 * fileio.c (Finsert_file_contents): Use EMACS_INT for buffer positions.
8802
8803 * character.h (FETCH_STRING_CHAR_ADVANCE)
8804 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE)
8805 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA and SREF.
8806 (DEC_POS, BUF_DEC_POS): Use BEG_BYTE rather than hardcoding 1.
8807
8808 * casefiddle.c (casify_region): Only call after-change and composition
8809 functions on the part of the region that was changed.
8810
8811 * keyboard.c (read_avail_input):
8812 * frame.c (Fdelete_frame): Call Fdelete_terminal.
8813
88142008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
8815
8816 * buffer.c (clone_per_buffer_values, reset_buffer_local_variables)
8817 (Fbuffer_local_value, Fbuffer_local_variables): Don't forget undo_list.
8818
88192008-02-11 Juanma Barranquero <lekktu@gmail.com>
8820
8821 * w32menu.c (push_submenu_start, push_submenu_end)
8822 (push_left_right_boundary, push_menu_pane, push_menu_item):
8823 * keyboard.c (read_key_sequence): Don't pass args with side effects
8824 to AREF, it fails when compiling with -DENABLE_CHECKING.
8825
88262008-02-11 Kenichi Handa <handa@ni.aist.go.jp>
8827
8828 * Makefile.in (${lispsource}international/charprop.el):
8829 Delete this target.
8830
8831 * search.c (boyer_moore): Fix incorrect synching of the trunk and
8832 emacs-unicode-2.
8833
88342008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
8835
8836 * terminal.c (Fdelete_terminal): Clean up the `force' path.
8837
88382008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
8839
8840 * frame.c (Qnoelisp): New symbol.
8841 (syms_of_frame): Initialize it.
8842 (Fdelete_frame): Use it to distinguish a mere `force' passed from some
8843 harmless Elisp code, from a strong `force' from x_connection_closed.
8844 * frame.h (Qnoelisp): Declare.
8845 * xterm.c (x_connection_closed): Pass `noelisp'.
8846
8847 * lisp.h (struct Lisp_Misc_Any, struct Lisp_Marker)
8848 (struct Lisp_Overlay, struct Lisp_Kboard_Objfwd)
8849 (struct Lisp_Save_Value, struct Lisp_Free): Use enum Lisp_Misc_Type
8850 rather than `int' for the type of `type'.
8851
88522008-02-10 Dan Nicolaescu <dann@ics.uci.edu>
8853
8854 * s/gnu-linux.h: Remove support for non-ELF and linux-1.x.
8855
8856 * Makefile.in (GNUC): Remove support for gcc-1.x.
8857
88582008-02-10 Richard Stallman <rms@gnu.org>
8859
8860 * lisp.h (ASET): Use AREF, not ASLOT.
8861
88622008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
8863
8864 * lisp.h (ASET): Check bounds.
8865
88662008-02-10 Glenn Morris <rgm@gnu.org>
8867
8868 * buffer.c (mode-name): Doc fix.
8869
88702008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
8871
8872 * Makefile.in:
8873 * emacs.c:
8874 * gmalloc.c:
8875 * keyboard.c:
8876 * lisp.h:
8877 * m/ibm370aix.h:
8878 * process.c:
8879 * regex.c:
8880 * s/hpux.h:
8881 * sysdep.c:
8882 * sysselect.h:
8883 * systty.h:
8884 * unexec.c:
8885 * w32term.c:
8886 * xsmfns.c:
8887 * xterm.c: Remove code that deals with obsolete variables.
8888
8889 * s/msdos.h (DONT_NEED_ENVIRON): Don't define.
8890
8891 * ecrt0.c: Replace the DONT_NEED_ENVIRON test with MSDOS test,
8892 nothing else needs it anymore.
8893
88942008-02-09 Eli Zaretskii <eliz@gnu.org>
8895
8896 * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use unibyte_to_multibyte_table
8897 instead of unibyte_char_to_multibyte.
8898
88992008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
8900
8901 * s/gnu-linux.h: Remove commented out code.
8902
8903 * unexec.c: Remove references to obsolete variable COFF_ENCAPSULATE.
8904
8905 * Makefile.in: Update what RMS says about using autoconf.
8906 (C_COMPILER, COFF_ENCAPSULATE, MAKE_PARALLEL): Remove obsolete variable.
8907 (C_SWITCH_MACHINE_1, C_SWITCH_SYSTEM_1, C_SWITCH_SITE_1)
8908 (C_SWITCH_X_SITE_1, C_SWITCH_X_MACHINE_1)
8909 (C_SWITCH_X_SYSTEM_1): Move invariant code outside conditional.
8910
89112008-02-08 Stefan Monnier <monnier@iro.umontreal.ca>
8912
8913 * keymap.c (Fkey_description): Move side effect outside of macro call.
8914
8915 * xfaces.c (Finternal_make_lisp_face):
8916 * keyboard.c (add_command_key, parse_menu_item): Use ASET.
8917
8918 * fontset.c (free_face_fontset): Use FONTSET_FROM_ID.
8919 (syms_of_fontset): Use ASET.
8920
8921 * fns.c (concat): Move side effect outside of macro call.
8922 (hash_clear): Use ASET.
8923
89242008-02-08 Richard Stallman <rms@gnu.org>
8925
8926 * frame.c (Fdelete_frame): If FORCE, don't call hooks.
8927 If FORCE, and frame has a surrogate minibuffer for another frame,
8928 delete the other frame first.
8929
89302008-02-07 Timo Savola <timo.savola@iki.fi>
8931
8932 * xterm.c (x_detect_focus_change): Handle embed client message.
8933 (handle_one_xevent): Ditto.
8934 (handle_one_xevent): If embedded and we get a button press/release,
8935 request focus.
8936 (xembed_set_info, xembed_send_message): New functions.
8937 (x_make_frame_visible): Call xembed_set_info if embedded.
8938 (x_make_frame_invisible): Call xembed_set_info if embedded.
8939 (x_term_init): Initialize Xatom_XEMBED.
8940 (x_make_frame_visible): Check for FRAME_X_EMBEDDED_P also.
8941 (x_iconify_frame): Ditto.
8942
8943 * xterm.h (struct x_display_info): Add AtomXatom_XEMBED.
8944 (enum xembed_info, enum xembed_message, enum xembed_focus)
8945 (enum xembed_modifier, enum xembed_accelerator): New.
8946 (xembed_set_info, xembed_send_message): Declare.
8947 (FRAME_X_EMBEDDED_P): New.
8948
8949 * gtkutil.c (xg_create_frame_widgets): If frame is embedded, call
8950 gtk_plug_new.
8951
8952 * xfns.c (Fx_create_frame): Do not override the explicitly set parent
8953 window ID of a frame.
8954 (x_window): Reparent frame if embedded.
8955 (Fx_create_frame): Don't set border width if embedded.
8956
8957 * emacs.c (USAGE3): Add --parent-id.
8958 (standard_args): Ditto.
8959
89602008-02-07 Jan Djärv <jan.h.d@swipnet.se>
8961
8962 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): Use "do...while (0)".
8963
89642008-02-07 Jim Meyering <meyering@redhat.com>
8965
8966 Use "do...while (0)", not "if (1)...else" in macro definitions.
8967 The latter provokes a warning from gcc about the empty else, when
8968 followed by ";". Also, without that trailing semicolon, it would
8969 silently swallow up any following statement.
8970 * syntax.h (SETUP_SYNTAX_TABLE)
8971 (SETUP_SYNTAX_TABLE_FOR_OBJECT): Likewise.
8972 * buffer.h (DECODE_POSITION): Likewise.
8973 * character.h (FETCH_STRING_CHAR_ADVANCE): Likewise.
8974 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): Likewise.
8975 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Likewise.
8976 (FETCH_CHAR_ADVANCE): Likewise.
8977 (FETCH_CHAR_ADVANCE_NO_CHECK): Likewise.
8978
89792008-02-07 Jim Meyering <meyering@redhat.com>
8980
8981 * lread.c [lint]: Don't include <sys/inode.h>.
8982
89832008-02-07 Stefan Monnier <monnier@iro.umontreal.ca>
8984
8985 * xselect.c (x_handle_dnd_message):
8986 * xmenu.c (digest_single_submenu, xmenu_show):
8987 * xdisp.c (with_echo_area_buffer_unwind_data)
8988 (format_mode_line_unwind_data, unwind_format_mode_line)
8989 (display_menu_bar):
8990 * eval.c (Ffetch_bytecode):
8991 * doc.c (store_function_docstring):
8992 * ccl.c (resolve_symbol_ccl_program, ccl_get_compiled_code)
8993 (Fccl_execute, Fccl_execute_on_string, Fregister_code_conversion_map):
8994 * buffer.c (add_overlay_mod_hooklist): Use ASET.
8995
89962008-02-07 Kenichi Handa <handa@m17n.org>
8997
8998 * ftxfont.c (ftxfont_open): Don't set
8999 dpyinfo->smallest_font_height and dpyinfo->smallest_char_width to 0.
9000
9001 * ftfont.c (ftfont_open): Fix previous change.
9002
90032008-02-06 Jason Rumney <jasonr@gnu.org>
9004
9005 * w32font.c (w32font_text_extents): Fill in lbearing metric.
9006 Use cached metrics for ASCII characters.
9007 (w32font_open_internal): Don't set font's owning_frame.
9008 Cache metrics for ASCII characters.
9009
9010 * w32font.h (struct w32font_info): Add ascii_metrics.
9011 Remove owning_frame.
9012
90132008-02-06 Kenichi Handa <handa@ni.aist.go.jp>
9014
9015 * xdisp.c (x_produce_glyphs): Don't set it->ascent and it->descent
9016 to negative value.
9017
9018 * ftxfont.c (ftxfont_draw): Use s->font_info, not face->font_info.
9019
9020 * ftfont.c (ftfont_open): Fix calculation of font->font.average_width.
9021
9022 * charset.c (syms_of_charset): Set QCtest and Qeq.
9023
90242008-02-06 Stefan Monnier <monnier@iro.umontreal.ca>
9025
9026 * process.c (Fstart_process):
9027 * callproc.c (Fcall_process): Handle the case where
9028 Funhandled_file_name_directory returns nil.
9029
9030 * font.h (enum lgstring_indices, enum lglyph_indices): New enums.
9031 (LGSTRING_SLOT, LGSTRING_SET_SLOT): New macros.
9032 * font.c (check_gstring): Use them and AREF to access the vector before
9033 we know it's really a gstring.
9034 (Ffont_shape_text): Fix typo.
9035 (Ffont_shape_text, Ffont_otf_alternates): Fix up int/Lisp_Oject mixups.
9036
9037 * composite.h (Fcompose_region_internal, Fcompose_string_internal):
9038 Declare.
9039
9040 * chartab.c (make_sub_char_table): Remove noop-yet-incorrect statement.
9041
90422008-02-05 Jason Rumney <jasonr@gnu.org>
9043
9044 * w32font.c (w32font_open_internal): Fill min_width with tmAveCharWidth.
9045 Set smallest_font_height and smallest_char_width in display info.
9046
90472008-02-05 Kenichi Handa <handa@ni.aist.go.jp>
9048
9049 * coding.c (decode_eol): Pay attention to coding->dst_multibyte.
9050
90512008-02-05 Miles Bader <miles@gnu.org>
9052
9053 * xfaces.c (get_lface_attributes, merge_named_face)
9054 (lookup_named_face, lookup_derived_face, realize_named_face):
9055 Revert 2008-02-01 change by cyd@stupidchicken.com.
9056
90572008-02-04 Kenichi Handa <handa@ni.aist.go.jp>
9058
9059 * fontset.c (Ffontset_info): Handle the case of inhibitting the
9060 fallback fonts.
9061 (Ffontset_info) [USE_FONT_BACKEND]: Fix getting of opened font names.
9062
90632008-02-04 Jason Rumney <jasonr@gnu.org>
9064
9065 * w32font.c (w32font_open_internal): Use font_unparse_fcname to
9066 set full_name.
9067 (w32font_open_internal): Use xmalloc, xrealloc, xfree.
9068
90692008-02-03 Jason Rumney <jasonr@gnu.org>
9070
9071 * makefile.w32-in (OBJ1): Include font.o here.
9072 (FONTOBJ) [USE_FONTBACKEND]: Instead of here.
9073
90742008-02-02 Jason Rumney <jasonr@gnu.org>
9075
9076 * makefile.w32-in (temacs): Bump EMHEAP to 21.
9077
90782008-02-01 Jason Rumney <jasonr@gnu.org>
9079
9080 * s/cygwin.h: Define VIRT_ADDR_VARIES.
9081
9082 * puresize.h [VIRT_ADDR_VARIES]: Don't include CYGWIN in condition.
9083
90842008-02-01 Andreas Schwab <schwab@suse.de>
9085
9086 * Makefile.in (shortlisp, lisp): Update for rename of
9087 ../lisp/language/myanmar.el.
9088
90892008-02-01 Chong Yidong <cyd@stupidchicken.com>
9090
9091 * xfaces.c (get_lface_attributes): Delete function.
9092 (merge_named_face, lookup_named_face, lookup_derived_face)
9093 (realize_named_face): Call lface_from_face_name directly, and use
9094 the fact that merge_face_vectors does not alter its FROM argument.
9095
90962008-02-01 Jason Rumney <jasonr@gnu.org>
9097
9098 * w32term.c (w32_read_socket) <WM_CHAR>: Decode non-Unicode
9099 input in the default locale. Handle non-Unicode multibyte input.
9100
91012008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9102
9103 * fontset.c (reorder_font_vector): Exclude nil elements from the
9104 font group. Don't try multiple fonts.
9105 (fontset_font): Adjust for the above change.
9106 (Finternal_char_font): Return nil if the found font doesn't
9107 contain the character ch.
9108
9109 * Makefile.in (lisp, shortlisp): Add cham.el.
9110
91112008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9112
9113 * font.h (FONTP): Make it return 1 also for a font-object.
9114
9115 * .gdbinit (xfontset): New function.
9116
9117 * font.c (font_find_for_lface): Check if the character C is
9118 supported or not only for the first font.
9119
9120 * fontset.c (reorder_font_vector): Fix typo.
9121 (fontset_find_font): Don't add a font-spec specifying a script.
9122 Use 0 (not Qt) for the indication of empty font-group. Change the
9123 format of RFONT-DEF. Return Qt if no font in the font-group
9124 support the character.
9125 (fontset_font): Adjust for the above change. If no font was
9126 found the character, remember that.
9127 (face_for_char): Adjust for the change of RFONT-DEF.
9128 (Fset_fontset_font): Allow nil for FONT-SPEC to explicitly specify
9129 no font for the target.
9130 (Finternal_char_font): Adjust for the change of RFONT-DEF.
9131
91322008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9133
9134 * font.c (font_load_for_face): Handle the case that the font in
9135 face->lface is a string.
9136
91372008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9138
9139 * xfaces.c (set_lface_from_font_and_fontset): Set the fontname in lface.
9140
91412008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9142
9143 * xfaces.c (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]:
9144 Fix previous change. If the frame is not on a window system,
9145 signal an error.
9146
91472008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9148
9149 * coding.c (decode_coding_object, encode_coding_object): Adjust
9150 marker positions after conversion.
9151
9152 * lisp.h (struct Lisp_Marker): New member need_adjustment.
9153
91542008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9155
9156 * font.c (font_find_for_lface): Fix the handling of the return
9157 value of font_has_char.
9158 (Ffont_shape_text): Fix previous change.
9159
9160 * fontset.c (FONTSET_REF_AND_RANGE): Delete it.
9161 (fontset_ref_and_range): Delete it.
9162 (fontset_find_font): Call char_table_ref_and_range instead of
9163 FONTSET_REF_AND_RANGE.
9164 (make_fontset): Don't setup font groups of Latin here.
9165 (Fset_fontset_font): Don't overwrite the setting of FONTSET_ASCII.
9166 (new_fontset_from_font): Make the specified font the default for
9167 all Latin characters.
9168
91692008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9170
9171 * xfaces.c (Finternal_set_lisp_face_attribute): Check if the frame
9172 is on a window system before accessing the fontset of the frame.
9173
91742008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9175
9176 * Makefile.in (lisp, shortlisp): Add kherm.el and myanmar.el.
9177
9178 * ftfont.c (ftfont_driver): Set ftfont_shape in ftfont_driver only
9179 when both HAVE_M17N_FLT and HAVE_LIBOTF are defined.
9180
9181 * font.c (Ffont_shape_text): If the font driver doesn't have a
9182 shaper function, make zero-width glyphs to have at least one-pixel
9183 width. Fix setting of `to' field of glyphs.
9184
91852008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9186
9187 * ftfont.c (ftfont_drive_otf): Fix setting of FROM and TO slots of
9188 glyphs.
9189
9190 * font.h (struct font_driver): Improve docstring of member `shape'.
9191
91922008-02-01 Kenichi Handa <handa@m17n.org>
9193
9194 * composite.c (syms_of_composite): Fix docstring of
9195 auto-composition-function.
9196
9197 * font.h (LGLYPH_SIZE): New macro.
9198
9199 * font.c (Ffont_fill_gstring): Stop filling when a character not
9200 supported by the font is found.
9201 (Ffont_shape_text): When a shape callback function returns nil,
9202 try at most two more times with larger gstring.
9203 (Ffont_at): Fix getting of w. Call font_at with correct 5th argument.
9204
9205 * xdisp.c (handle_auto_composed_prop): Change the argument to
9206 auto-composition-function.
9207
9208 * ftfont.c (ftfont_encode_char): Use the macro FONT_INVALID_CODE.
9209 (ftfont_shape_by_flt): If an element of lgstring is nil, make a
9210 Lispy glyph and store it in the lgstring.
9211
9212 * xfont.c (xfont_encode_char): Use the macro FONT_INVALID_CODE.
9213
9214 * xftfont.c (xftfont_encode_char): Use the macro FONT_INVALID_CODE.
9215
92162008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9217
9218 * font.c (Ffont_shape_text): Avoid unnecessary composition.
9219
9220 * fontset.c (Vfont_encoding_charset_alist): New variable.
9221 (syms_of_fontset): DEFVAR it.
9222 (reorder_font_vector, fontset_find_font): Optimize for the case of
9223 no need of reordering.
9224 (face_for_char): Map the charset property by
9225 Vfont_encoding_charset_alist.
9226
92272008-02-01 Jason Rumney <jasonr@gnu.org>
9228
9229 * w32font.c (logfonts_match): Don't check adstyle here.
9230 (font_matches_spec): Check here against physical font instead.
9231 (add_font_entity_to_list): Avoid some substitutions.
9232
9233 * font.c (font_parse_fcname): Default weight and slant to normal.
9234 (font_score): Prefer normal fonts if weight or slant unspecified.
9235 (font_score) [WINDOWSNT]: Scale weight difference down to closer
9236 match freetype scores.
9237
92382008-02-01 Jason Rumney <jasonr@gnu.org>
9239
9240 * w32font.c (w32font_text_extents): Don't use the frame stored in the
9241 font, as it may have been deleted.
9242 (w32_enumfont_pattern_entity): Map generic family to adstyle using
9243 most common hyphenless variation.
9244 (logfonts_match): Check generic family.
9245 (font_matches_spec): Don't check generic family here.
9246 (fill_in_logfont): Set generic family based on adstyle.
9247
9248 * w32font.h (w32font_get_cache): Update declaration.
9249
92502008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9251
9252 * ftfont.c (ftfont_get_cache): Adjust the argument type.
9253
9254 * frame.c (x_set_font_backend): Don't call Fclear_font_cache.
9255 If none of the new drivers are available, call font_update_drivers
9256 with the old drivers.
9257
9258 * w32font.c (w32font_get_cache): Adjust the argument type.
9259
9260 * xfont.c (xfont_get_cache): Adjust the argument type.
9261
9262 * font.h (struct font_driver): Change argument type of get_cache.
9263
9264 * xftfont.c (xftfont_start_for_frame): Delete prototype.
9265
9266 * font.c (Ffont_get): Fix arguments to Fassoc.
9267 (font_prepare_cache, font_finish_cache, font_get_cache): New functions.
9268 (font_clear_cache): New function.
9269 (font_list_entities, font_matching_entity): Use font_get_cache.
9270 (font_update_drivers): Call font_clear_cache when finishing a driver.
9271
9272 * fontset.c (fontset_find_font): Fix previous change.
9273
92742008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9275
9276 * xterm.c (x_check_font) [USE_FONT_BACKEND]: Don't access
9277 dpyinfo->font_table.
9278 (x_delete_display) [USE_FONT_BACKEND]: Likewise.
9279 (x_delete_terminal) [USE_FONT_BACKEND]: Likewise.
9280
9281 * font.c (font_at): Handle the case that the arg C is negative.
9282 Handle the unibyte case.
9283 (Ffont_at): Call font_at with the arg C -1.
9284
9285 * xdisp.c (handle_auto_composed_prop): Don't get a character at
9286 the position here, and call font_at with the arg C -1.
9287 Don't check the range of the existing composition at the point.
9288
92892008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9290
9291 * fontset.c (fontset_add): New args charset_id and family.
9292 Change caller.
9293 (load_font_get_repertory, fontset_find_font): Assume that
9294 font_spec is always a font-spec object.
9295 (Fset_fontset_font): Always store a font-spec object in a fontset.
9296
9297 * xdisp.c (handle_auto_composed_prop): Use Fget_text_property
9298 instead of get_property_and_range.
9299
93002008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9301
9302 * xftfont.c (struct xftfont_info): Delete the member ft_face.
9303 (xftfont_open): Don't keep locking face.
9304 (xftfont_close): Don't unlock face.
9305 (xftfont_anchor_point, xftfont_shape): Lock and unlock face.
9306
9307 * fontset.c (fontset_find_font): Don't prefer a font of
9308 supplementary charset.
9309
93102008-02-01 Kenichi Handa <handa@m17n.org>
9311
9312 * ftfont.c (struct OpenTypeSpec): Rename members script_tag to
9313 script, langsys_tag to langsys, new member script.
9314 (OTF_TAG_STR): Terminate by '\0'.
867d4bb3 9315 (ftfont_get_open_type_spec): If :otf prop is spec, limit the
aac0c6e3
MR
9316 listing to the script specified in that property. Fix arg to
9317 OTF_check_features.
9318
93192008-02-01 Jason Rumney <jasonr@gnu.org>
9320
9321 * w32font.h: New file.
9322
9323 * w32font.c: Include it.
9324 (struct w32font_info): Add owning_frame field. Move to w32font.h.
9325 (w32font_open): Set owning_frame.
9326 (w32font_text_extents): Use owning_frame.
9327 (struct font_callback_data): Add opentype_only field.
9328 (add_font_entity_to_list): Use it to filter fonts.
9329 Don't check against full name.
9330 (w32font_list_internal): New function.
9331 (w32font_list): Use it.
9332 (w32font_match_internal): New function.
9333 (w32font_match): Use it.
9334 (w32font_open_internal): New function.
9335 (w32font_open): Use it.
9336 (w32font_get_cache, w32font_close, w32font_has_char)
9337 (w32font_encode_char, w32font_text_extents, w32font_draw):
9338 Make non-static.
9339
9340 * makefile.w32-in (w32font.o): Depend on w32font.h.
9341
93422008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9343
9344 * charset.c (Fdefine_charset_internal): Record a supplementary
9345 charset at the tail of Vcharset_order_list.
9346
9347 * font.c (Ffont_shape_text): Fix the return value.
9348
9349 * ftfont.c (OTF_SYM_TAG, OTF_TAG_STR): Fix argument names.
9350
9351 * xdisp.c (handle_auto_composed_prop): Fix previous change.
9352
93532008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9354
9355 * ftfont.c (struct OpenTypeSpec): New struct.
9356 (OTF_SYM_TAG, OTF_TAG_STR): New macros.
9357 (ftfont_get_open_type_spec): New function.
9358 (ftfont_list) [HAVE_LIBOTF]: Check otf-spec property.
9359
9360 * lread.c (read1): Redo the previous change with checking Vpurify_flag.
9361
93622008-02-01 Jason Rumney <jasonr@gnu.org>
9363
9364 * w32font.c (add_font_entity_to_list): Compare only the beginning
9365 of full name.
9366
93672008-02-01 Kenichi Handa <handa@m17n.org>
9368
9369 * xdisp.c (handle_auto_composed_prop): Simplify the code.
9370 Never return HANDLED_RECOMPUTE_PROPS.
9371
93722008-02-01 Kenichi Handa <handa@m17n.org>
9373
9374 * font.c (font_gstring_produce): Delete it.
9375
9376 * composite.h (COMPOSITION_METHOD):
9377 Handle COMPOSITION_WITH_GLYPH_STRING.
9378
93792008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9380
9381 * xfont.c (Qx): Delete.
9382 (syms_of_xfont): Don't initialize Qx.
9383
9384 * composite.h (enum composition_method):
9385 Define COMPOSITION_WITH_GLYPH_STRING unconditionally.
9386
93872008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9388
9389 * xfaces.c [HAVE_WINDOW_SYSTEM]: Include "font.h" unconditionally.
9390 (choose_face_font): Accept new form of font-spec.
9391
9392 * frame.h (font_driver_list): Declare it unconditionally.
9393 (struct frame): Define members font_driver_list and font_data_list
9394 unconditionally.
9395
9396 * fontset.c: Include "font.h" unconditionally.
9397 (generate_ascii_font_name): Use font_parse_xlfd and font_unparse_xlfd.
9398 (Fset_fontset_font): Accept a font-spec object.
9399
9400 * font.c (font_unparse_xlfd): If pixel_size is zero, make the
9401 PIXEL_SIZE part a wild card.
9402
9403 * dispextern.h (struct glyph_string): Define members clip and
9404 num_clips unconditionally.
9405 (struct face): Define members font_info and extra unconditionally.
9406
9407 * ftfont.c (ftfont_open): Set members maybe_otf and otf of
9408 ftfont_info only when HAVE_LIBOTF is defined.
9409
94102008-02-01 Andreas Schwab <schwab@suse.de>
9411
9412 * xdisp.c (back_to_previous_visible_line_start): Fix type of beg
9413 and end.
9414
94152008-02-01 Jason Rumney <jasonr@gnu.org>
9416
9417 * w32font.c (w32font_driver): Add new fields.
9418
94192008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9420
9421 * Makefile.in (ALL_CFLAGS): Add @M17N_FLT_CFLAGS@.
9422 (FONTSRC, FONTOBJ) [HAVE_WINDOW_SYSTEM]: Set them unconditionally.
9423 (LIBES): Add @M17N_FLT_CFLAGS@.
9424
9425 * composite.c (compose_text): Don't treat the new style
9426 composition specially.
9427
9428 * emacs.c (main): Call syms_of_font unconditionally.
9429
9430 * font.h (FONT_ENTITY_NOT_LOADABLE)
9431 (FONT_ENTITY_SET_NOT_LOADABLE): New macros.
9432 (LGSTRING_XXXX, LGLYPH_XXX): Adjust for the change of lispy gstring.
9433 (struct font_driver): New member shape.
9434 (font_registry_charsets): Extern it.
9435 (font_find_for_lface, font_prepare_composition): Adjust prototype.
9436 (font_otf_capability, font_drive_otf): Delete their externs.
9437
9438 * font.c [HAVE_M17N_FLT]: Include <m17n-flt.h>.
9439 (font_charset_alist, font_registry_charsets): Move from xfont.c
9440 and rename.
9441 (font_prop_validate_otf): New function.
9442 (font_property_table): Register it for QCotf.
9443 (DEVICE_DELTA, adjust_anchor, REPLACEMENT_CHARACTER)
9444 (font_drive_otf): Delete.
9445 (font_prepare_composition): New arg F. Adjust for the change of
9446 lispy gstring.
9447 (font_find_for_lface): New arg C.
9448 (font_load_for_face): Adjust for the change of font_find_for_lface.
9449 (Ffont_make_gstring, Ffont_fill_gstring): Adjust for the change of
9450 lispy gstring.
9451 (Ffont_shape_text): New function.
9452 (Fopen_font): If the font size is not given, use 12-pixel.
9453 (Ffont_at): New arg STRING.
9454 (syms_of_font): Initalize font_charset_alist.
9455 Declare Ffont_shape_text as a Lisp function. Call syms_of_XXfont
9456 conditionally.
9457
9458 * fontset.c (fontset_find_font) [USE_FONT_BACKEND]: Try multiple
9459 fonts of the same font-spec. Change the format of RFONT-DEF.
9460 (face_for_char, make_fontset_for_ascii_face, Finternal_char_font):
9461 Adjust for the change of RFONT-DEF.
9462 (Fset_fontset_font) [USE_FONT_BACKEND]: Handle new format of font-spec.
9463
9464 * ftfont.h: New file.
9465
9466 * ftfont.c: Don't include Freetype headers. Include "ftfont.h".
9467 (struct ftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
9468 (ftfont_open) [HAVE_LIBOTF]: Initialize the above members.
9469 (ftfont_driver) [HAVE_LIBOTF, HAVE_M17N_FLT]: Don't set
9470 font_otf_capability and font_drive_otf, set ftfont_shape.
9471 (ftfont_list): Adjust for the change of :otf property value.
9472 (struct MFLTFontFT) [HAVE_LIBOTF, HAVE_M17N_FLT]: New struct.
9473 (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_check_otf)
9474 (adjust_anchor, ftfont_drive_otf, ftfont_shape_by_flt)
9475 (ftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
9476 (DEVICE_DELTA) [HAVE_LIBOTF, HAVE_M17N_FLT]: New macro.
9477 (otf_gstring, gstring, m17n_flt_initialized): New variables.
9478
9479 * w32term.c (x_draw_composite_glyph_string_foreground):
9480 Adjust for the change of lispy gstring.
9481
9482 * xdisp.c (handle_composition_prop): Adjust for the change of
9483 lispy gstring. Call a function for auto-composition with the
9484 third arg it->window.
9485 (fill_composite_glyph_string): Adjust for the change of lispy string.
9486 (x_produce_glyphs): Adjust for the change of font_prepare_compositionl.
9487
9488 * xfaces.c (set_font_frame_param): Adjust for the change of
9489 font_find_for_lface.
9490
9491 * xfont.c (x_font_charset_alist): Move to font.c and rename.
9492 (xfont_registry_charsets): Likewise. Change caller.
9493 (syms_of_xfont): Don't handle x_font_charset_alist.
9494
9495 * xftfont.c: Include "ftfont.h".
9496 (struct xftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
9497 (xftfont_open) [HAVE_LIBOTF]: Initialize the above members.
9498 (xftfont_close) [HAVE_LIBOTF]: Close otf.
9499 (xftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
9500 (syms_of_xftfont) [HAVE_LIBOTF, HAVE_M17N_FLT]:
9501 Set xftfont_driver.shape to xftfont_shape.
9502
9503 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
9504 the change of lispy gstring.
9505
95062008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9507
9508 * ftxfont.c (ftxfont_end_for_frame): Fix array indexing error.
9509
95102008-02-01 Jason Rumney <jasonr@gnu.org>
9511
9512 * w32font.c (w32font_draw): Fill background manually.
9513
95142008-02-01 Jason Rumney <jasonr@gnu.org>
9515
9516 * font.c (Qfontp): Remove unused symbol.
9517 (QCantialias): New symbol.
9518 (syms_of_font): Define it.
9519 (font_property_table): Set a validator for QCantialias.
9520
9521 * w32font.c (CLEARTYPE_QUALITY, CLEARTYPE_NATURAL_QUALITY):
9522 Define if not already.
9523 (QCfamily): Share with xfaces.c.
9524 (Qstandard, Qsubpixel, Qnatural): New symbols.
9525 (syms_of_w32font): Define them. Don't define QCfamily here.
9526 (w32_antialias_type, lispy_antialias_type): New functions.
9527 (w32_enumfont_pattern_entity): New arg requested_font.
9528 Set antialias parameter if non-default was requested.
9529 (fill_in_logfont): Fill in lfQuality if :antialias specified.
9530
95312008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9532
9533 * lread.c (read1): Undo the previous change.
9534
95352008-02-01 CHENG Gao <chenggao@gmail.com> (tiny change)
9536
9537 * frame.c (Fdelete_frame): Call font_update_drivers only when
9538 USE_FONT_BACKEND is defined.
9539
95402008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9541
9542 * font.h (struct font_bitmap): New member bits_per_pixel.
9543 (struct font_driver): New members start_for_frame and end_for_frame.
9544 (struct font_data_list): New struct.
9545 (font_put_frame_data, font_get_frame_data): Extern them.
9546
9547 * frame.h (struct frame): New member font_data_list.
9548
9549 * font.c (font_update_drivers): Call driver->start_for_frame and
9550 driver->end_for_frame at proper timings.
9551 (font_put_frame_data, font_get_frame_data): New functions.
9552 (Ffont_spec): Add usage in the docstring.
9553
9554 * frame.c (make_frame): Initialize f->font_data_list to NULL.
9555 (Fdelete_frame): Call font_update_drivers.
9556
9557 * xftfont.c (struct xftface_info): Delete the member xft_draw.
9558 (xftfont_prepare_face, xftfont_done_face): Adjust for the above change.
9559 (xftfont_get_xft_draw): New function.
9560 (xftfont_draw): Get XftDraw by xftfont_get_xft_draw.
9561 (xftfont_end_for_frame): New function.
9562 (syms_of_xftfont): Set xftfont_driver.end_for_frame.
9563
9564 * ftxfont.c (ftxfont_get_gcs): Rename from ftxfont_create_gcs.
9565 Change argument. Cache GCs in the per-frame data.
9566 (struct ftxfont_frame_data): New struct.
9567 (ftxfont_draw_bitmap): New arg gc_fore and flush.
9568 (ftxfont_prepare_face, ftxfont_done_face): Delete them.
9569 (ftxfont_draw): Get GCs by ftxfont_get_gcs. Reflect s->clip in GCs.
9570 (ftxfont_end_for_frame): New function.
9571 (syms_of_ftxfont): Set ftxfont_driver.end_for_frame.
9572
9573 * ftfont.c (ftfont_get_bitmap): Set bitmap->bits_per_pixel.
9574
95752008-02-01 Kenichi Handa <handa@m17n.org>
9576
9577 * xselect.c (Vselection_coding_system)
9578 (Vnext_selection_coding_system): Delete them.
9579 (syms_of_xselect): Don't declare selection-coding-system and
9580 next-selection-coding-system. They are declared in select.el.
9581
95822008-02-01 Jason Rumney <jasonr@gnu.org>
9583
9584 * w32term.h (WM_UNICHAR, UNICODE_NOCHAR): Define if not already.
9585
9586 * w32fns.c: Include imm.h.
9587 (get_composition_string_fn, get_ime_context_fn): New optional
9588 system functions.
9589 (globals_of_w32fns): Load them from imm32.dll.
9590 (ignore_ime_char): New flag.
9591 (w32_wnd_proc): Handle WM_UNICHAR, WM_IME_CHAR and
9592 WM_IME_ENDCOMPOSITION messages.
9593
9594 * w32term.c (w32_read_socket) [WM_UNICHAR]: Handle as
9595 MULTIBYTE_CHAR_KEYSTROKE_EVENT.
9596
95972008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9598
9599 * lread.c (READCHAR): Call readchar with the 2nd arg NULL.
9600 (READCHAR_REPORT_MULTIBYTE): New macro.
9601 (readchar): New 2nd arg MULTIBYTE.
9602 (read1): Use READCHAR_REPORT_MULTIBYTE for the first read.
9603 Make symbol's name multibyte according to the multibyteness of the
9604 source.
9605
96062008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9607
9608 * xfaces.c (face_for_overlay_string): Call lookup_face with
9609 correct arguments (fix of synching with the trunk).
9610
96112008-02-01 Kenichi Handa <handa@m17n.org>
9612
9613 * font.c (font_prop_validate_symbol, font_prop_validate_style)
9614 (font_prop_validate_non_neg, font_prop_validate_spacing):
9615 Delete argument prop_index.
9616 (font_property_table): Change arguments to validater. Change Callers.
9617 (font_lispy_object): Delete.
9618 (font_at): Use font_find_object instead fo font_lispy_object.
9619
96202008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
9621
9622 * fileio.c (Fexpand_file_name): Adjust multibyteness of directory
9623 and file names.
9624
96252008-02-01 Jason Rumney <jasonr@gnu.org>
9626
9627 * w32font.c (add_font_name_to_list): Avoid vertical fonts.
9628 (font_matches_spec): Remove debug output.
9629 (add_font_entity_to_list): Avoid using substituted fonts.
9630
96312008-02-01 Jason Rumney <jasonr@gnu.org>
9632
9633 * doc.c (Fsnarf_documentation):
9634 * Makefile.in (temacs${EXEEXT}, mostlyclean): Undo last change.
9635
96362008-02-01 Miles Bader <miles@gnu.org>
9637
9638 * dispextern.h (struct glyph_row): Only define "clip" field if
9639 HAVE_WINDOW_SYSTEM is defined.
9640
96412008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
9642
9643 Fix up multi-tty merge.
9644
9645 * xterm.c (handle_one_xevent): Remove duplicate code and fix up nesting
9646 and indentation.
9647
9648 * xfaces.c (free_realized_face, clear_face_gcs):
9649 Include font_done_for_face in the input_blocked section, just in case.
9650
9651 * xdisp.c (decode_mode_spec): Use terminal-local coding systems.
9652 (get_char_face_and_encoding): Undo last change and remove the *other*
9653 duplicate definition (i.e. keep the one that's better scoped and that
9654 includes code for the font-backend).
9655
9656 * terminal.c (create_terminal): Default keyboard_coding to
9657 `no-conversion' and terminal_coding to `undecided'.
9658
9659 * lread.c (read1): Use XSETPVECTYPE to set a pseudovector's tag.
9660
9661 * fontset.c (free_realized_fontsets): Check that the table entry does
9662 contain a fontset before trying to compare it to `base'.
9663
9664 * emacs.c (main): Move syms_of_data, syms_of_fileio, syms_of_alloc,
9665 syms_of_charset, and syms_of_coding earlier because init_window_once
9666 now needs Vcoding_system_hash_table to be setup.
9667
9668 * coding.h (default_buffer_file_coding): Remove.
9669
9670 * coding.c (default_buffer_file_coding): Remove.
9671 (Fterminal_coding_system, Fkeyboard_coding_system): Use ->id rather
9672 than ->symbol, and use the terminal-local coding system.
9673 (syms_of_coding): Don't setup the coding-systems that are not
9674 terminal-local.
9675 (Fdefine_coding_system_internal): Use XCAR/XCDR.
9676
9677 * chartab.c (Fmake_char_table, make_sub_char_table, copy_char_table):
9678 Use XSETPVECTYPE now that XSETCHAR_TABLE doesn't set the tag anymore.
9679
9680 * alloc.c (Fmake_char_table, make_sub_char_table): Remove. They're now
9681 in chartab.c and were re-added here by mistake.
9682 (Fpurecopy): Use XSETPVECTYPE after copying a COMPILED pseudovector.
9683
9684 * doc.c (Fsnarf_documentation):
9685 * Makefile.in (temacs${EXEEXT}, mostlyclean): Move buildobj.lst from
9686 src to etc.
9687
9688 * ChangeLog.10: Add mistakenly removed entry.
9689
96902008-02-01 Dan Nicolaescu <dann@ics.uci.edu>
9691
9692 * Makefile.in (fringe.o, minibuf.o): Fix dependencies.
9693
96942008-02-01 Miles Bader <miles@gnu.org>
9695
9696 * xdisp.c (get_char_face_and_encoding): Remove extraneous definition.
9697 Add extra args to FACE_FOR_CHAR.
9698
96992008-02-01 Kenichi Handa <handa@m17n.org>
9700
9701 * keymap.c (where_is_internal_1): If key is a cons, store the copy
9702 in sequence.
9703
9704 * chartab.c (map_sub_char_table, map_char_table): If the range
9705 contains just one character, call the function with that character
9706 even if the depth is not 3.
9707
97082008-02-01 Jason Rumney <jasonr@gnu.org>
9709
9710 * w32font.c (w32font_text_extents): Calculate metrics for the
9711 whole string.
9712
97132008-02-01 Jason Rumney <jasonr@gnu.org>
9714
9715 * w32xfns.c (get_next_msg): Consolidate WM_PAINT messages.
9716
97172008-02-01 Jason Rumney <jasonr@gnu.org>
9718
9719 * w32term.c (x_set_glyph_string_clipping): Use
9720 get_glyph_string_clip_rects.
9721 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
9722 Adjust for the change of struct glyph_string.
9723
9724 * w32font.c (w32font_draw): Do clipping here.
9725
97262008-02-01 Kenichi Handa <handa@m17n.org>
9727
9728 * xftfont.c (xftfont_draw): Adjust for the change of struct
9729 glyph_string.
9730
9731 * xterm.c (x_set_glyph_string_clipping): Use
9732 get_glyph_string_clip_rects.
9733 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
9734 Adjust for the change of struct glyph_string.
9735
9736 * xdisp.c (get_glyph_string_clip_rects): Reflect s->row->clip to
9737 the resulting clip(s}.
9738 (expose_overlaps): Add arg r. Change callers. Set it to
9739 row->clip temporarily.
9740 (expose_window): Redraw rows overlapping the exposed area.
9741
9742 * dispextern.h (struct glyph_row): New member clip.
9743 (struct glyph_string): Delete members clip_x, clip_y, clip_width,
9744 clip_height, new member clip, and num_clips.
9745
97462008-02-01 Kenichi Handa <handa@m17n.org>
9747
9748 * data.c (Fchar_or_string_p): Fix docstring.
9749
97502008-02-01 Kenichi Handa <handa@m17n.org>
9751
9752 * xftfont.c (xftfont_draw): If s->font_info != s->face->font_info,
9753 create a temporary XftDraw object.
9754
97552008-02-01 Kenichi Handa <handa@m17n.org>
9756
9757 * font.c (Ffontp): Fix docstring.
9758
9759 * coding.c (detect_coding_iso_2022): Don't treat SI/SO codes as a
9760 strong evidence of ISO-2022.
9761
97622008-02-01 Kenichi Handa <handa@m17n.org>
9763
9764 * abbrev.c (abbrev_check_chars): Use CHAR_TABLE_REF, not
9765 SYNTAX_ENTRY_FOLLOW_PARENT.
9766
97672008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
9768
9769 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and change
9770 its type.
9771 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
9772 Update to the new type of weak_hash_tables and next_weak.
9773
9774 * lisp.h (struct Lisp_Hash_Table): Change next_weak from Lisp_Object to
9775 a plain C pointer to Lisp_Hash_Table.
9776
9777 * lisp.h (XGCTYPE, GC_HASH_TABLE_P, GC_NILP, GC_NUMBERP, GC_NATNUMP)
9778 (GC_INTEGERP, GC_SYMBOLP, GC_MISCP, GC_VECTORLIKEP, GC_STRINGP)
9779 (GC_CONSP, GC_FLOATP, GC_VECTORP, GC_OVERLAYP, GC_MARKERP)
9780 (GC_INTFWDP, GC_BOOLFWDP, GC_OBJFWDP, GC_BUFFER_OBJFWDP)
9781 (GC_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP)
9782 (GC_KBOARD_OBJFWDP, GC_PSEUDOVECTORP, GC_WINDOW_CONFIGURATIONP)
9783 (GC_PROCESSP, GC_WINDOWP, GC_SUBRP, GC_COMPILEDP, GC_BUFFERP)
9784 (GC_SUB_CHAR_TABLE_P, GC_CHAR_TABLE_P, GC_BOOL_VECTOR_P, GC_FRAMEP)
9785 (GC_EQ): Remove since they've been identical to their non-GC_
9786 alter-egos ever since the markbit was eradicated.
9787
9788 * alloc.c:
9789 * buffer.c:
9790 * buffer.h:
9791 * data.c:
9792 * fileio.c:
9793 * filelock.c:
9794 * fns.c:
9795 * frame.h:
9796 * lisp.h:
9797 * macterm.c:
9798 * print.c:
9799 * process.c:
9800 * w32fns.c:
9801 * w32menu.c:
9802 * w32term.c:
9803 * xfns.c:
9804 * xmenu.c:
9805 * xterm.c: Replace uses of GC_* macros with the non-GC_ versions.
9806
98072008-02-01 Kenichi Handa <handa@m17n.org>
9808
9809 * chartab.c (map_sub_char_table): Make it work for the top-level
9810 char-table. Fix handling of parent char-table.
9811 (map_char_table): Adjust for the above change.
9812
98132008-02-01 Jason Rumney <jasonr@gnu.org>
9814
9815 * w32font.c (Qgdi): Rename from Qw32.
9816
98172008-02-01 Jason Rumney <jasonr@gnu.org>
9818
9819 * w32bdf.c (get_quoted_string): Make function static.
9820
98212008-02-01 Kenichi Handa <handa@m17n.org>
9822
9823 * xftfont.c (xftfont_open): If one of font's ASCII glyph has
9824 bigger ascent and descent than those of the font, use them as
9825 font's ascent and descent.
9826
98272008-02-01 Kenichi Handa <handa@m17n.org>
9828
9829 * Makefile.in (${lispsource}international/charprop.el): Move this
9830 target within "#ifdef HAVE_UNIDATA" and "#endif".
9831
98322008-02-01 Kenichi Handa <handa@m17n.org>
9833
9834 * Makefile.in (lisp): Add ${lispsource}language/tai-viet.el.
9835 (shortlisp): Add ../lisp/language/tai-viet.el.
9836
98372008-02-01 Ulrich Mueller <ulm@gentoo.org>
9838
9839 * Makefile.in (${lispsource}international/charprop.el): Depend on
9840 temacs${EXEEXT}.
9841
98422008-02-01 Jason Rumney <jasonr@gnu.org>
9843
9844 * w32font.c (w32font_close): Delete the GDI font object.
9845
9846 * w32menu.c: Include character.h.
9847
9848 * w32proc.c: Likewise.
9849
9850 * w32select.c: Likewise.
9851
9852 * makefile.w32-in (w32proc.o): Depend on character.h.
9853
98542008-02-01 Jason Rumney <jasonr@gnu.org>
9855
9856 * w32fns.c (syms_of_w32fns): Use DEFSYM macro.
9857
9858 * w32menu.c (syms_of_w32menu): Likewise.
9859
9860 * w32proc.c (syms_of_ntproc): Likewise.
9861
9862 * w32select.c (syms_of_w32select): Likewise.
9863
9864 * w32term.c (syms_of_w32term): Likewise.
9865
98662008-02-01 Jason Rumney <jasonr@gnu.org>
9867
9868 * w32font.c (w32font_draw): Delete brush after using it.
9869
98702008-02-01 Jason Rumney <jasonr@gnu.org>
9871
9872 * w32font.c (w32font_open): Don't set font_idx.
9873 (w32font_text_extents): Try GetTextExtentPoint32W before defaulting
9874 to font settings.
9875 (w32font_draw): Fill background explicitly.
9876
98772008-02-01 Jason Rumney <jasonr@gnu.org>
9878
9879 * w32term.c (w32_initialize): Don't call w32font_initialize.
9880
9881 * w32font.c (w32font_info): Remove subranges.
9882 (QCsubranges, Qmodern, Qswiss, Qroman): Remove.
9883 (QCfamily, Qmonospace, Qsans_serif, Qmono, Qsans, Qsans__serif)
9884 (Qraster, Qoutline, Qlatin, Qgreek, Qcoptic, Qcyrillic, Qarmenian)
9885 (Qhebrew, Qarabic, Qsyriac, Qnko, Qthaana, Qdevanagari, Qbengali)
9886 (Qgurmukhi, Qgujarati, Qoriya, Qtamil, Qtelugu, Qkannada)
9887 (Qmalayalam, Qsinhala, Qthai, Qlao, Qtibetan, Qmyanmar, Qgeorgian)
9888 (Qhangul, Qethiopic, Qcherokee, Qcanadian_aboriginal, Qogham)
9889 (Qrunic, Qkhmer, Qmongolian, Qsymbol, Qbraille, Qhan)
9890 (Qideographic_description, Qcjk_misc, Qkana, Qbopomofo, Qkanbun)
9891 (Qyi, Qbyzantine_musical_symbol, Qmusical_symbol, Qmathematical):
9892 New symbols.
9893 (font_callback_data): New struct.
9894 (w32font_list, w32font_match): Use it.
9895 (w32font_open): Don't populate subranges.
9896 (w32font_has_char): Use script Lisp symbols, not subrange bitmask.
9897 (w32font_encode_char): Always return unicode code-point as-is.
9898 (w32font_text_extents): Supply a transformation matrix to
9899 GetGlyphOutline. Never look up by glyph index. Avoid looping
9900 twice. Use unicode version of GetTexExtentPoint32 instead of
9901 glyph index version.
9902 (set_fonts_frame): Remove.
9903 (w32_enumfont_pattern_entity): Add frame parameter, use it to
9904 set frame parameter. Use backward compatible fake foundries.
9905 Save generic family in extra slot under QCfamily. Make width slot
9906 constant. Save QCspacing value. Save list of scripts instead of
9907 binary subranges.
9908 (w32_generic_family, logfonts_match, font_matches_spec): New functions.
9909 (add_font_entity_to_list): Use font_callback_data struct. Filter
9910 unwanted fonts.
9911 (add_one_font_entity_to_list): Use font_callback_data struct.
9912 (w32_registry): Default to iso10646_1.
9913 (fill_in_logfont): Use dpi from extra slot. Don't bother with
9914 string font registries. Don't fill in font name if it is a generic
9915 family name, fill family instead. Use spacing, family and script
9916 extra info to fill pitch, family and charset fields.
9917 (list_all_matching_fonts): Use font_callback_data struct.
9918 (unicode_range_for_char): Remove.
9919 (font_supported_scripts): New function.
9920 (w32font_initialize): Remove.
9921 (syms_of_w32font): Update which symbols are defined.
9922
99232008-02-01 Jason Rumney <jasonr@gnu.org>
9924
9925 * font.c (font_pixel_size): Reverse assq_no_quit args.
9926
9927 * w32term.h (FONT_WIDTH): Report max width, not average.
9928 (FONT_MAX_WIDTH): Remove.
9929 (FONT_AVG_WIDTH): New macro.
9930
9931 * xfaces.c (Fx_list_fonts) [WINDOWSNT]: Remove Windows only
9932 redefinition of FONT_WIDTH.
9933
9934 * w32term.c (x_font_min_bounds): Use FONT_AVG_WIDTH.
9935 (w32_cache_char_metrics): Use FONT_WIDTH.
9936
9937 * w32fns.c (w32_load_system_font, w32_list_fonts): Use FONT_AVG_WIDTH.
9938
99392008-02-01 Jason Rumney <jasonr@gnu.org>
9940
9941 * w32font.c (w32font_open): Make lfHeight negative.
9942
9943 * w32fns.c (x_default_font_parameter): Use new style font name.
9944 (Fx_create_frame, x_create_tip_frame): Initialize resx and resy.
9945
99462008-02-01 Jason Rumney <jasonr@gnu.org>
9947
9948 * w32font.c (QCsubranges): New symbol.
9949 (w32font_open, w32font_has_char): Get subranges from subproperty
9950 of extra.
9951 (w32_enumfont_pattern_entity): Set subranges as subproperty of extra.
9952 (syms_of_w32font): Define :subranges symbol.
9953
9954 * font.c (font_put_extra): Expose externally.
9955
9956 * font.h (font_put_extra): Move declaration from font.c.
9957
9958 * font.c (Ffont_get): Use font driver to determine otf capability.
9959 (adjust_anchor): Check if driver defines anchor_point before using.
9960
9961 * w32font.c (w32font_open): Handle size, height and pixel_size better.
9962 (w32font_draw): Use options.
9963 (w32_enumfont_pattern_entity): Set size to 0 for scalable fonts.
9964 Fix detection of truetype fonts.
9965 (registry_to_w32_charset): Handle charsets other than iso8859-1
9966 expressed as lisp symbols.
9967 (w32_registry): Express charset as lisp symbol.
9968 (fill_in_logfont): Reverse pixel and point height logic.
9969 Don't set width here. Set quality to default.
9970
9971 * w32fns.c (w32_load_system_font): Fix detecting FIXED_PITCH fonts.
9972 (x_to_w32_font): Fill in lfPitchAndFamily correctly.
9973
9974 * xterm.c (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
9975 Remove redundant loop and allocation.
9976
9977 * makefile.w32-in (font.o, w32font.o): New objects.
9978 (fontset.o, xdisp.o, xfaces.o, w32fns.o, w32term.o): Depend on font.h.
9979 (FONTOBJ): New group of objects conditioned on USE_FONT_BACKEND.
9980
9981 * xdisp.c (fill_composite_glyph_string): Make the first arg to
9982 STORE_XCHARB a valid l-value.
9983
9984 * w32term.c (w32_native_per_char_metric): Swap width and rbearing
9985 calculations for non-Truetype fonts.
9986 (x_draw_glyph_string): Sync with xterm.c.
9987 (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
9988 Remove redundant code.
9989 (w32_initialize) [USE_FONT_BACKEND]: Call w32font_initialize.
9990
9991 * w32term.h (w32_output_data) [USE_FONT_BACKEND]: Add fontp member.
9992 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro from xterm.h.
9993
9994 * w32fns.c [USE_FONT_BACKEND]: Port font backend changes from xfns.c.
9995 (x_to_w32_charset, w32_to_x_charset): Expose externally.
9996
9997 * w32font.c: New file for w32 font backend.
9998
99992008-02-01 Kenichi Handa <handa@m17n.org>
10000
10001 * term.c: Don't include "buffer.h" twice.
10002
100032008-02-01 Kenichi Handa <handa@m17n.org>
10004
10005 * character.c (Funibyte_string): New function.
10006 (syms_of_character): Defsubr it.
10007
100082008-02-01 Jason Rumney <jasonr@gnu.org>
10009
10010 * w32term.c [USE_FONT_BACKEND]:
10011 (x_get_font_repertory, note_mouse_movement, x_set_mouse_face_gc)
10012 (x_set_glyph_string_clipping, x_set_glyph_string_clipping_exactly)
10013 (x_draw_glyph_string, x_draw_glyph_string_foreground)
10014 (x_draw_composite_glyph_string_foreground, x_new_fontset2)
10015 (x_free_frame_resources): Sync with xterm.c.
10016
100172008-02-01 Andreas Schwab <schwab@suse.de>
10018
10019 * lread.c (read1): Use CHAR_TABLE_STANDARD_SLOTS to validate
10020 char-table size.
10021
100222008-02-01 Kenichi Handa <handa@m17n.org>
10023
10024 * font.c (check_otf_features): Define it regardless of HAVE_LIBOTF.
10025
100262008-02-01 Kenichi Handa <handa@m17n.org>
10027
10028 * ftfont.c (ftfont_driver): Delete font_otf_gsub and
10029 font_otf_gpos, add font_drive_otf.
10030
10031 * fontset.c (fontset_find_font): Pay attention to font size
10032 specified for a font.
10033 (reorder_font_vector): Check contents of font_def.
10034
10035 * font.c (struct otf_list): Delete it.
10036 (otf_list): Make it a lisp variable.
10037 (otf_open): Use lispy otf_list.
10038 (generate_otf_features): Rename from parse_gsub_gpos_spec.
10039 (check_otf_features): New function.
10040 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
10041 New functions.
10042 (font_drive_otf): New function merging font_otf_gsub and
10043 font_otf_gpos.
10044 (font_open_for_lface): New arg spec. Change argument order.
10045 (font_load_for_face): Adjust for the change of font_open_for_lface.
10046 (Ffont_drive_otf): New function merging Ffont_otf_gsub and
10047 Ffont_otf_gpos.
10048 (syms_of_font): Staticpro otf_list. Delete defsubr of
10049 Sfont_otf_gsub and Sfont_otf_gpos. Defsubr Sfont_drive_otf.
10050
10051 * xfaces.c (set_font_frame_param): Adjust for the change of
10052 font_open_for_lface.
10053
10054 * font.h (font_open_for_lface): Adjust prototype.
10055 (struct font_driver): Delete members otf_gsub and otf_gpos, add
10056 member otf_drive.
10057 (font_otf_gsub, font_otf_gpos): Delete externs.
10058 (font_drive_otf): Extern it.
10059
100602008-02-01 Kenichi Handa <handa@m17n.org>
10061
10062 * font.c (font_at): If the window W is not on a window system,
10063 return Qnil.
10064
10065 * coding.c (produce_chars, encode_coding): Don't call
10066 insert_from_gap if no characters to produce.
10067
100682008-02-01 Kenichi Handa <handa@m17n.org>
10069
10070 * fontset.c (free_realized_fontsets): Avoid unnecessary call of
10071 Fclear_face_cache.
10072
10073 * xfaces.c (face_for_font): Check also face->font==font->font.font.
10074
100752008-02-01 Miles Bader <miles@gnu.org>
10076
10077 * emacs.c (main): Change default value of `enable_font_backend' to 1.
10078 Parse "--disable-font-backend" option.
10079 (standard_args): Add "--disable-font-backend" option.
10080
100812008-02-01 Kenichi Handa <handa@m17n.org>
10082
10083 * fontset.c (fontset_find_font): New function.
10084 (fontset_font): Use fontset_find_font.
10085 (make_fontset_for_ascii_face): Don't set face ID in rfont_def.
10086 Register the specified font for all Latin characters.
10087 (new_fontset_from_font): Register the specified font for all Latin
10088 characters.
10089 (dump_fontset): For a realized fontset, include the base fontset
10090 name in the returned vector.
10091
100922008-02-01 Kenichi Handa <handa@m17n.org>
10093
10094 * character.h (CHAR_STRING): Cast C to unsigned on calling
10095 char_string.
10096
10097 * character.c (char_string): Type of arg C changed to unsigned.
10098 Signal an error if C is an invalid character code.
10099
10100 * editfns.c (general_insert_function, Fchar_to_string):
10101 Use CHARACTERP, not INTEGERP.
10102
101032008-02-01 Kenichi Handa <handa@m17n.org>
10104
10105 * character.h (MIN_MULTIBYTE_LEADING_CODE)
10106 (MAX_MULTIBYTE_LEADING_CODE): New macros.
10107
10108 * regex.c (analyse_first): Fix for multibyte characters in "case
10109 charset:" and "case categoryspec:".
10110
101112008-02-01 Andreas Schwab <schwab@suse.de>
10112
10113 * Makefile.in (LIBES): Move standard libraries to the end.
10114
101152008-02-01 Kenichi Handa <handa@m17n.org>
10116
10117 * alloc.c (Fgarbage_collect): If nextb->text->inhibit_shrinking is
10118 nonzero, don't shrink the buffer nextb.
10119
10120 * buffer.h (struct buffer_text): New member inhibit_shrinking.
10121
10122 * coding.c (coding_alloc_by_making_gap): New arg offset.
10123 (alloc_destination): Call coding_alloc_by_making_gap with the arg
10124 offset.
10125 (decode_coding_iso_2022): Update coding->safe_charsets.
10126 (decode_coding_gap): Temporarily set
10127 current_buffer->text->inhibit_shrinking to 1.
10128
101292008-02-01 Kenichi Handa <handa@m17n.org>
10130
10131 * xterm.c (x_draw_composite_glyph_string_foreground): Fix
10132 indexing into elements of s->cmp and s->char2b.
10133
101342008-02-01 Juanma Barranquero <lekktu@gmail.com>
10135
10136 * regex.c (RE_STRING_CHAR_AND_LENGTH) [! emacs]: Add missing arg `len'.
10137
101382008-02-01 Kenichi Handa <handa@m17n.org>
10139
10140 * regex.c (GET_CHAR_BEFORE_2, GET_CHAR_AFTER): Check the variable
10141 target_multibyte instead of multibyte.
10142 (re_match_2_internal): Call bcmp_translate with target_multibyte.
10143 (bcmp_translate): Change the argument name from multibyte to
10144 target_multibyte.
10145
101462008-02-01 Kenichi Handa <handa@m17n.org>
10147
10148 These changes are to compile a regexp into a pattern that can be
10149 used both for multibyte and unibyte targets.
10150
10151 * Makefile.in (search.o): Depend on charset.h.
10152
10153 * character.c (multibyte_char_to_unibyte_safe): New function.
10154
10155 * search.c: Include "charset.h".
10156 (compile_pattern_1): Delete argument multibyte. Don't set
10157 cp->buf.target_multibyte here. Set cp->buf.charset_unibyte.
10158 (compile_pattern): Don't compare cp->buf.target_multibyte.
10159 Compare cp->buf.charset_unibyte.
10160 (compile_pattern): Set cp->buf.target_multibyte.
10161
10162 * lisp.h (multibyte_char_to_unibyte_safe): Extern it.
10163
10164 * regex.h (struct re_pattern_buffer): New member charset_unibyte.
10165
10166 * regex.c (RE_STRING_CHAR, RE_STRING_CHAR_AND_LENGTH): New arg
10167 multibyte. Change callers.
10168 (RE_CHAR_TO_MULTIBYTE, RE_CHAR_TO_UNIBYTE): New macros.
10169 (MAKE_CHAR_MULTIBYTE, MAKE_CHAR_UNIBYTE): Delete. Change callers
10170 to use RE_CHAR_TO_MULTIBYTE and RE_CHAR_TO_UNIBYTE, respectively.
10171 (SETUP_ASCII_RANGE, SETUP_UNIBYTE_RANGE): New macros.
10172 (SETUP_MULTIBYTE_RANGE): Generate a more compact range_table.
10173 (regex_compile): Make the compiled pattern usable both for
10174 multibyte and unibyte targets.
10175 (analyse_first): Make the fastmap usable both for multibyte and
10176 unibyte targets.
10177 (TRANSLATE_VIA_MULTIBYTE): Delete.
10178 (re_match_2_internal): Pay attention to the case that the
10179 multibyteness of bufp and target may be different.
10180
101812008-02-01 Kenichi Handa <handa@m17n.org>
10182
10183 * xdisp.c (x_produce_glyphs): When a font is not found, make the
10184 empty box occupy at least one column width.
10185
101862008-02-01 Miles Bader <miles@gnu.org>
10187
10188 * Makefile.in: Remove redundant HAVE_XFT clause.
10189
101902008-02-01 Kenichi Handa <handa@m17n.org>
10191
10192 * xrdb.c (x_load_resources): Setup the default fontSet X resource.
10193
101942008-02-01 Kenichi Handa <handa@m17n.org>
10195
10196 * fontset.c (Finternal_char_font): Fix for the case of POSITION
10197 being nil.
10198
101992008-02-01 Kenichi Handa <handa@m17n.org>
10200
10201 * xftfont.c (xftfont_open): Call FcConfigSubstitute.
10202
102032008-02-01 Kenichi Handa <handa@m17n.org>
10204
10205 * xftfont.c (xftfont_open): Don't enable antialias explicitly.
10206
102072008-02-01 Kenichi Handa <handa@m17n.org>
10208
10209 * search.c (simple_search): Fix previous change.
10210
102112008-02-01 Kenichi Handa <handa@m17n.org>
10212
10213 * xftfont.c (ftfont_font_format): Extern declaration.
10214
10215 * frame.c (x_set_font): Fix the second arg to fs_query_fontset.
10216
10217 * xfont.c (xfont_driver): Initialize ftfont_driver.type by 0.
10218 (xfont_list): Don't directly use Lisp_Object as an operand of &&.
10219
10220 * ftfont.c (ftfont_driver): Initialize ftfont_driver.type by 0.
10221 (ftfont_font_format): Fix previous change.
10222
10223 * font.h (Ffont_xlfd_name): EXFUN it.
10224
10225 * font.c (font_parse_xlfd): Fix the array size of `f'.
10226 (register_font_driver): Use EQ to compare driver->type.
10227
10228 * xfns.c (xic_create_xfontset2) [USE_FONT_BACKEND]: New function.
10229 (create_frame_xic) [USE_FONT_BACKEND]: Call xic_create_xfontset2.
10230 (xic_set_xfontset) [USE_FONT_BACKEND]: Likewise.
10231
102322008-02-01 Kenichi Handa <handa@m17n.org>
10233
10234 * ftfont.c (ftfont_pattern_entity, ftfont_list_generic_family)
10235 (ftfont_list, ftfont_font_format): Check if FC_FONTFORMAT is defined.
10236
102372008-02-01 Kenichi Handa <handa@m17n.org>
10238
10239 * xfont.c (xfont_open): Set font->format.
10240
10241 * xftfont.c (xftfont_open): Set font->format.
10242
10243 * ftfont.c (ftfont_pattern_entity): Add fontformat in a pattern.
10244 (ftfont_list): Include FC_FONTFORMAT in FcObject.
10245 (ftfont_open): Set font->format.
10246 (ftfont_font_format): New function.
10247
10248 * font.h (struct font): New member format.
10249
10250 * font.c (Qopentype): New variable.
10251 (syms_of_font): Defsym it.
10252 (Fquery_font): Change the format of the last element of the return
10253 value.
10254
102552008-02-01 Kenichi Handa <handa@m17n.org>
10256
10257 * xfns.c (xic_create_xfontset): Try the default fontset name as a
10258 last resort.
10259
102602008-02-01 Kenichi Handa <handa@m17n.org>
10261
10262 * coding.c (detect_coding_charset): Fix detection of multi-byte
10263 charset.
10264
102652008-02-01 Bob Halley <halley@play-bow.org> (tiny change)
10266
10267 * ccl.c (ccl_driver): If DST is NULL, set ccl->produced to 0.
10268
102692008-02-01 Kenichi Handa <handa@m17n.org>
10270
10271 * xdisp.c (get_next_display_element): Set it->face_id for the
10272 first component of a composition.
10273 (x_produce_glyphs): Check if the font is changed or not for composition.
10274
102752008-02-01 Kenichi Handa <handa@m17n.org>
10276
10277 * fontset.c (Qlatin): New variable.
10278 (syms_of_fontset): Define it as a lisp symbol.
10279 (Fset_fontset_font): If TARGET is `latin', use FONT_SPEC for ASCII.
10280
102812008-02-01 Kenichi Handa <handa@m17n.org>
10282
10283 * font.c (font_unparse_fcname): Pay attention to the case that
10284 some of font property is a null string.
10285
102862008-02-01 Kenichi Handa <handa@m17n.org>
10287
10288 * term.c: Include "composite.h".
10289 (encode_terminal_code): Output all components of composition.
10290 Check the size of encode_terminal_src.
10291 (produce_glyphs): For composition, call produce_composite_glyph.
10292 (append_composite_glyph, produce_composite_glyph): New functions.
10293
10294 * xdisp.c (x_produce_glyphs): In handling composition, if a font
10295 is not found, get font_info from the current ascii face.
10296
102972008-02-01 Kenichi Handa <handa@m17n.org>
10298
10299 * fileio.c (Finsert_file_contents): On replacing, temporarily bind
10300 buffer-file-name to Qnil before calling insert_from_buffer.
10301
10302 * font.c (font_unparse_fcname): Pay attention to the case that
10303 foundry is a null string.
10304
103052008-02-01 Kenichi Handa <handa@m17n.org>
10306
10307 * ftfont.c (ftfont_list): Allow registry "unicode-sip".
10308
10309 * font.c (Qunicode_sip): New variable.
10310 (syms_of_font): Declare it as a Lisp symbol.
10311
10312 * font.h (Qunicode_sip): Extern it.
10313
103142008-02-01 Kenichi Handa <handa@m17n.org>
10315
10316 * composite.c (get_composition_id): Pay attention to TAB component.
10317
10318 * xterm.c (x_draw_composite_glyph_string_foreground): Don't draw
10319 TAB. Adjust for the change of s->char2b which always points to
10320 the first element of allocated memory.
10321
10322 * xftfont.c (xftfont_text_extents): Fix calculation of descent value.
10323
10324 * xdisp.c (handle_composition_prop): Set it->c to the first
10325 non-TAB component.
10326 (fill_composite_glyph_string): Change argument.
10327 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the above change.
10328 (x_produce_glyphs): Fix handling of left/right padding.
10329
103302008-02-01 Kenichi Handa <handa@m17n.org>
10331
10332 * coding.c (detect_coding_system): Fix for handling off
10333 inhibit_iso_escape_detection. Fix for the case that no coding
10334 system is defined for a specific coding category.
10335
103362008-02-01 Kenichi Handa <handa@m17n.org>
10337
10338 * font.c (font_matching_entity): Delete unused local var.
10339
10340 * xftfont.c (xftfont_open): Call XftDefaultSubstitute before
10341 opening a font.
10342
10343 * fileio.c (Finsert_file_contents): On recovering a file, assume
10344 Unix-like eol.
10345 (choose_write_coding_system): On auto-saving a file, force
10346 Unix-like eol.
10347
10348 * coding.c (setup_coding_system): Fix setting of
10349 coding->common_flags based on eol_type.
10350 (coding_inherit_eol_type): If PARENT is not nil, be sure to
10351 inherit from it.
10352
103532008-02-01 Kenichi Handa <handa@m17n.org>
10354
10355 * alloc.c (NSTATICS): Increas to 0x600.
10356
103572008-02-01 Kenichi Handa <handa@m17n.org>
10358
10359 * ftfont.c (ftfont_driver): Set ftfont_driver.match to ftfont_match.
10360 (ftfont_list): Don't check :name property.
10361 (ftfont_match): New function.
10362 (ftfont_pattern_entity): If the pattern doesn't contain
10363 FC_SPACING, don't assume FC_MONO.
10364
10365 * font.h (struct font_driver): New member `match'.
10366 (font_update_drivers): Adjust prototype.
10367
10368 * font.c (font_parse_fcname, font_parse_name): Don't change :name
10369 property of FONT.
10370 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE, check_gstring): Define
10371 them unconditionally.
10372 (font_matching_entity): New function.
10373 (font_open_by_name): Try font_matching_entity if exact match is
10374 not found.
10375 (font_update_drivers): Delete the arg FONT. Return a list of
10376 actually used backends. Don't free faces, font caches here.
10377 Don't store data in frame parameters. Don't call x_set_font.
10378 (Ffont_spec): Store :name property as is.
10379 (Ffont_get): Check HAVE_LIBOTF before calling font_otf_capability.
10380 (Ffont_otf_gsub): Call font->driver->otf_gsub instead of font_otf_gsub.
10381 (Ffont_otf_gpos): Call font->driver->otf_gpos instead of font_otf_gpos.
10382 (Ffont_otf_alternates): Check if the driver has otf_gsub function.
10383 Call font->driver->otf_gsub instead of font_otf_gsub.
10384
10385 * frame.c (x_set_font_backend): Do more works that were done in
10386 font_update_drivers before.
10387
10388 * xfont.c (xfont_match): New function.
10389 (xfont_driver): Set xfont_driver.match to xfont_match.
10390 (xfont_draw): Set font in GC if necessary.
10391
10392 * ftxfont.c (ftxfont_match): New function.
10393 (syms_of_ftxfont): Set ftxfont_driver.match to ftxfont_match.
10394
10395 * xftfont.c (xftfont_match): New function.
10396 (syms_of_xftfont): Set xftfont_driver.match to xftfont_match.
10397
103982008-02-01 Kenichi Handa <handa@m17n.org>
10399
10400 * font.h (struct font): New member scalable.
10401 (struct font_driver): New arg ALTERANTE_SUBST to otf_gsub.
10402 (font_otf_gsub): Adjust prototype.
10403
10404 * font.c (font_otf_capability): Fix handling of the default langsys.
10405 (parse_gsub_gpos_spec): Change type to void. New arg nbytes.
10406 Check the contents of SPEC.
10407 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE): New macros.
10408 (check_gstring): New function.
10409 (REPLACEMENT_CHARACTER): New macro.
10410 (font_otf_gsub): New arg alternate_subst. Be sure to set all
10411 glyph codes of GSTRING.
10412 (font_otf_gpos): Be sure to set all glyph codes of GSTRING.
10413 (font_prepare_composition): Set cmp->glyph_len.
10414 (font_open_entity): Set font->scalable.
10415 (Ffont_get): Handle :otf property.
10416 (Ffont_otf_gsub, Ffont_otf_gpos, Ffont_otf_alternates): New
10417 functions.
10418 (Fquery_font): Use font->font.full_name.
10419 (syms_of_font): Defsubr Sfont_otf_gsub, Sfont_otf_gpos, and
10420 Sfont_otf_alternates.
10421
10422 * ftfont.c (ftfont_open): Set font->font.full_name and
10423 font->font.name properly. Fix calculation of font->font.height
10424 and font->min_width.
10425
10426 * ftxfont.c (ftxfont_create_gcs): New function.
10427 (ftxfont_draw_bitmap): Fix arg to ftfont_driver.get_bitmap.
10428 (ftxfont_draw_backgrond): Fix filling region.
10429 (ftxfont_default_fid): New function.
10430 (ftxfont_open): Set xfont->fid to the return value of
10431 ftxfont_default_fid.
10432 (ftxfont_prepare_face): Use ftxfont_create_gcs to create GCs.
10433 (ftxfont_done_face): Free only GCs that are created by
10434 ftxfont_create_gcs.
10435 (ftxfont_draw): If face->gc != s->gc, create proper GCs.
10436
10437 * xterm.c (x_set_glyph_string_clipping_exactly) [USE_FONT_BACKEND]:
10438 Clip to src->width, etc (not src->clip_XXX).
10439
10440 * xfns.c (x_create_tip_frame) [USE_FONT_BACKEND]: Handle
10441 FontBackend frame parameter.
10442
104432008-02-01 Kenichi Handa <handa@m17n.org>
10444
10445 * font.h (struct font_driver_list): New member `on'.
10446 (Fclear_font_cache): EXFUN it.
10447 (font_update_drivers): Extern it.
10448
10449 * font.c (font_unparse_fcname): Fix typo (swidth->width).
10450 (font_list_entities): Check driver_list->on.
10451 (register_font_driver): Initalize `on' member to 0.
10452 (font_update_drivers): New function.
10453 (Fclear_font_cache): Check driver_list->on.
10454
10455 * frame.h (Qfont_backend): Extern it.
10456 (x_set_font_backend): Extern it.
10457
10458 * frame.c (Qfont_backend): New variable.
10459 (frame_parms): New element for font-backend.
10460 (x_set_font_backend): New function.
10461
10462 * xfns.c (Fx_create_frame) [USE_FONT_BACKEND]: Handle
10463 FontBackend frame parameter.
10464 (x_frame_parm_handlers) [USE_FONT_BACKEND]: New element
10465 x_set_font_backend.
10466
10467 * xfont.c (xfont_list): Don't try listing by :name property if the
10468 name is not for XLFD.
10469
104702008-02-01 Kenichi Handa <handa@m17n.org>
10471
10472 * font.h (LGLYPH_FROM, LGLYPH_TO, LGLYPH_SET_FROM)
10473 (LGLYPH_SET_TO): New macros.
10474 (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WADJUST): Check if adjustment
10475 element of G is vector or not.
10476 (font_at): Extern it.
10477
10478 * font.c: Include window.h.
10479 (font_lispy_object): New function.
10480 (font_prepare_composition): Check LGLYPH_FORM (g) to detect the
10481 end of valid glyph.
10482 (font_close_object): Fix getting (struct font *).
10483 (font_at): New function.
10484 (Ffont_get): If FONT is a font-object, get entity from it.
10485 (Ffont_make_gstring): Initialize elements of glyphs with nil.
10486 (Ffont_fill_gstring): Use macro LGSTRING_XXX and LGLYPH_XXX. Fix
10487 range check.
10488 (Ffont_at): New function.
10489 (syms_of_font): Defsubr Sfont_at.
10490
10491 * xdisp.c (it_props): Move the entry for Qauto_composed to just
10492 before the entry for Qcomposition.
10493 (handle_auto_composed_prop): Call auto-composition-function with 4 args.
10494 (handle_composition_prop) [USE_FONT_BACKEND]: Set it->face_id from
10495 the font in gstring.
10496 (fill_composite_glyph_string) [USE_FONT_BACKEND]: Check
10497 LGLYPH_FORM (g) to detect the end of valid glyph.
10498 (x_produce_glyphs) [USE_FONT_BACKEND]: Don't update it->face_id if
10499 we are composing with gstring.
10500
10501 * xterm.c (x_draw_composite_glyph_string_foreground) [USE_FONT_BACKEND]:
10502 Check if adjustment is vector or not.
10503
10504 * Makefile.in (font.o): Make it depends on window.h.
10505
105062008-02-01 Kenichi Handa <handa@m17n.org>
10507
10508 * xterm.c (x_draw_composite_glyph_string_foreground): Check if
10509 adjustment is vector or not.
10510
105112008-02-01 Miles Bader <miles@gnu.org>
10512
10513 * character.h (CHECK_CHARACTER): Redefine in terms of CHECK_TYPE.
10514
105152008-02-01 Kenichi Handa <handa@m17n.org>
10516
10517 * font.h (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WIDTH, LGLYPH_WADJUST)
10518 (LGLYPH_SET_WIDTH): Adjusted for the change of LGLYPH format.
10519 (LGLYPH_ADJUSTMENT, LGLYPH_SET_ADJUSTMENT): New macros.
10520
10521 * font.c (font_merge_old_spec): Treat '*' in foundry as a wild card.
10522 (DEVICE_DELTA): Fix typo.
10523 (font_otf_gpos, font_prepare_compositio): Adjust for the change of
10524 LGLYPH format.
10525
10526 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
10527 the change of LGLYPH format.
10528
105292008-02-01 Kenichi Handa <handa@m17n.org>
10530
10531 * ftfont.c (ftfont_list): Fix typo.
10532 (ftfont_build_basic_charsets): Don't include letters with diacritics.
10533
105342008-02-01 Jan Djärv <jan.h.d@swipnet.se>
10535
10536 * xfaces.c (realize_non_ascii_face): Set face->extra to NULL.
10537
10538 * xftfont.c (xftfont_done_face): Call XftDrawDestroy only if
10539 xftface_info is non-NULL.
10540
105412008-02-01 Jan Djärv <jan.h.d@swipnet.se>
10542
10543 * ftfont.c (ftfont_list): Move misplaced #endif.
10544
105452008-02-01 Kenichi Handa <handa@m17n.org>
10546
10547 * ftfont.c (ftfont_list): Pay attention to the case that
10548 FC_CAPABILITY is not defined.
10549
105502008-02-01 Kenichi Handa <handa@m17n.org>
10551
10552 * xftfont.c (xftfont_open): Set charset related members to -1.
10553
10554 * ftfont.c (ftfont_list): Handle QCotf property. Fix handling of
10555 QCname.
10556 (ftfont_open): Set charset related members to -1.
10557
10558 * fontset.c (Votf_script_alist): New variable.
10559 (syms_of_fontset): Initialize it.
10560 (fontset_font): Delete unused variable.
10561
10562 * fontset.h (Votf_script_alist): Extern it.
10563
10564 * font.c (font_find_for_lface): Optimize code.
10565
10566 * font.h (font_close_object, font_merge_old_spec): Extern them.
10567
105682008-02-01 Kenichi Handa <handa@m17n.org>
10569
10570 * font.c (QCscalable, Qc, Qm, Qp, Qd): New variables.
10571 (syms_of_font): Initialize them.
10572 (font_pixel_size): Allow float value in dpi.
10573 (font_prop_validate_type): Delete.
10574 (font_prop_validate_symbol, font_prop_validate_style): Change argument.
10575 Change caller.
10576 (font_prop_validate_non_neg): Rename from font_prop_validate_size.
10577 (font_prop_validate_extra): Delete.
10578 (font_prop_validate_spacing): New function.
10579 (font_property_table): Add elements for all known properties.
10580 (get_font_prop_index): Rename from check_font_prop_name. New
10581 argument FROM. Change caller.
10582 (font_prop_validate): Validate all known properties.
10583 (font_put_extra): Delete argument force. Change caller.
10584 (font_expand_wildcards): Make it static. Fix the way of shrinking
10585 the possible range.
10586 (font_parse_xlfd): Delete argument merge. Fix handling of RESX,
10587 RESY, SPACING, and AVGWIDTH. Don't validate property values here.
10588 Change caller.
10589 (font_unparse_xlfd): Handle dpi, spacing, and scalable properties.
10590 (font_parse_fcname): Delete argument merge. Fix parsing of point
10591 size. Don't validate properties values here. Change caller.
10592 (font_unparse_fcname): Handle dpi, spacing, and scalable properties.
10593 (font_open_by_name): Delete unused variable.
10594 (Ffont_spec): Likewise. Validate property values.
10595 (Ffont_match_p): New function.
10596
10597 * font.h (QCscalable): Extern it.
10598 (font_parse_xlfd, font_parse_fcname): Adjust prototype.
10599
10600 * ftfont.c (ftfont_list): Handle properties dpi, spacing, and scalable.
10601
10602 * xfont.c (xfont_query_font): Adjust for the change of font_parse_xlfd.
10603 (xfont_list_pattern): New function.
10604 (xfont_list): Use xfont_list_pattern.
10605
106062008-02-01 Kenichi Handa <handa@m17n.org>
10607
10608 * font.h (Flist_fonts): EXFUN it.
10609
106102008-02-01 Jason Rumney <jasonr@gnu.org>
10611
10612 * w32term.c (w32_initialize): Add back smoothing_type and
10613 smoothing_enabled definitions.
10614
106152008-02-01 Kenichi Handa <handa@m17n.org>
10616
10617 * xterm.c (x_draw_glyph_string) [USE_FONT_BACKEND]: Check
10618 s->face->font on determining underline position.
10619
106202008-02-01 Kenichi Handa <handa@m17n.org>
10621
10622 * font.c (font_parse_xlfd): Fix generating of CHARSET_REGISTRY field.
10623 (font_has_char): Accept font-object too.
10624 (font_find_for_lface): Try at first with a size specified in face.
10625
106262008-02-01 Kenichi Handa <handa@m17n.org>
10627
10628 * frame.c (x_set_font) [USE_FONT_BACKEND]: Fix argument to
10629 font_open_by_name.
10630
106312008-02-01 Kenichi Handa <handa@m17n.org>
10632
10633 * font.h (QCspacing, QCdpi): Extern them.
10634 (enum font_spacing): New enum.
10635 (FONT_PIXEL_SIZE_QUANTUM): New macro.
10636
10637 * font.c (POINT_TO_PIXEL): Don't divide POINT by 10.
10638 (QCspacing, QCdpi): New variables.
10639 (syms_of_font): Initialize them.
10640 (font_pixel_size): New function.
10641 (font_put_extra): New function.
10642 (font_parse_xlfd): Fix handling of font size. Add QCdpi property
10643 in FONT_EXTRA.
10644 (font_parse_fcname): Handle enumerated values (e.g. bold).
10645 Fix handling font size. Add QCname property that contains only
10646 unknown properties.
10647 (font_score): Change argument. Change caller. Pay attention to
10648 FONT_PIXEL_SIZE_QUANTUM.
10649 (font_sort_entites, font_list_entities, font_find_for_lface)
10650 (font_open_for_lface, font_open_by_name): Fix handling of font size.
10651 (Ffont_spec): Add QCname property that contains only unknown properties.
10652
10653 * ftfont.c (ftfont_list): Use assq_no_quit, not Fassq. Don't
10654 include weight in listing pattern, instead check weight of each
10655 listed font. Don't include scalable in pattern. Pay attention to
10656 FONT_PIXEL_SIZE_QUANTUM.
10657
106582008-02-01 Kenichi Handa <handa@m17n.org>
10659
10660 * font.c (font_parse_fcname): Fix parsing of point-size.
10661 (font_unparse_fcname): Produce symbolic names for style properties.
10662 (font_list_entities): Handle float size correctly.
10663 (font_open_by_name): Prefer `normal' property values if the name
10664 doesn't specify them.
10665
10666 * fontset.c (Finternal_char_font): Use font_get_name, not
10667 Ffont_xlfd_name.
10668
10669 * ftfont.c (ftfont_pattern_entity): Use the numeric value 100 for
10670 FC_WEIGHT_REGULAR. Exclude FC_SIZE and FC_PIXEL_SIZE from listing
10671 pattern. Don't force scalable.
10672
10673 * xftfont.c (xftfont_open): For generating a name, start from
10674 96-byte buffer.
10675
106762008-02-01 Jan Djärv <jan.h.d@swipnet.se>
10677
10678 * frame.h (x_new_fontset2): Fix prototype.
10679
106802008-02-01 Kenichi Handa <handa@m17n.org>
10681
10682 * font.h (struct font_driver): Delete member parse_name.
10683 (font_match_p, font_get_spec, font_parse_fcname)
10684 (font_unparse_fcname): Extern them.
10685 (font_get_name): Adjust prototype.
10686
10687 * font.c (XLFD_SMALLNUM_MASK): Delete this macro.
10688 (XLFD_LARGENUM_MASK): Delete XLFD_ENCODING_MASK from it.
10689 (font_expand_wildcards): Fix handling ENCODING field. Avoid
10690 unnecessary checks for weight, slant, and swidth.
10691 (font_parse_fcname): New function.
10692 (font_unparse_fcname): New function.
10693 (font_parse_name): New function.
10694 (font_match_p): New function.
10695 (font_get_name): Change return value to Lisp string.
10696 (font_get_spec): New function.
10697 (Qunspecified, Qignore_defface): Don't extern them.
10698 (font_find_for_lface): Assume that LFACE is fully specified.
10699 (font_load_for_face): If lface[LFACE_FONT_INDEX] is an font
10700 object, use it for FACE.
10701 (font_open_by_name): Call Ffont_spec with QCname prop. Don't call
10702 driver->parse_name.
10703 (Ffont_spec): Call font_parse_name, not font_parse_xlfd.
10704
10705 * fontset.h (new_fontset_from_font) [USE_FONT_BACKEND]: Adjust
10706 prototype.
10707
10708 * fontset.c (new_fontset_from_font) [USE_FONT_BACKEND]: Delete
10709 argument F. Don't call Fnew_fontset. Instead, directly call
10710 make_fontset.
10711
10712 * frame.h (x_new_fontset2) [USE_FONT_BACKEND]: Adjust prototype.
10713
10714 * frame.c (x_set_font) [USE_FONT_BACKEND]: Adjust for the change
10715 of x_new_fontset2.
10716
10717 * ftfont.c (Qmonospace, Qsans_serif, Qserif, Qmono, Qsans)
10718 (Qsans__serif): New variables.
10719 (ftfont_generic_family_list): New variable.
10720 (syms_of_ftfont): Initialize the above variables.
10721 (ftfont_pattern_entity): Delete argument NAME.
10722 (ftfont_list_generic_family): New function.
10723 (ftfont_parse_name): Delete this function.
10724 (ftfont_list): Try generic family only when FcFontList found no font.
10725 (ftfont_list_family): Fix args to FcObjectSetBuild.
10726
10727 * xfaces.c (check_lface_attrs) [USE_FONT_BACKEND]: Accept font
10728 object in attrs[LFACE_FONT_INDEX].
10729 (set_lface_from_font_name): Cancel all changes for font-backend.
10730 (set_lface_from_font_and_fontset) [USE_FONT_BACKEND]: New
10731 function.
10732 (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]: Accept a
10733 font object in QCfont attribute.
10734 (set_font_frame_param) [USE_FONT_BACKEND]: Likewise.
10735 (realize_default_face) [USE_FONT_BACKEND]: Call
10736 set_lface_from_font_and_fontset.
10737
10738 * xfns.c (x_default_font_parameter) [USE_FONT_BACKEND]: Try also
10739 "fixed", and signal error here if no suitable font was found.
10740
10741 * xfont.c (xfont_parse_name): Delete this function.
10742
10743 * xftfont.c (xftfont_open): Change coding style of error
10744 handling. Generate fontconfig's fontname pattern.
10745
10746 * xterm.h (struct x_output) [USE_FONT_BACKEND]: New member fontp.
10747 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro.
10748
10749 * xterm.c (x_new_fontset2) [USE_FONT_BACKEND]: Change arguments.
10750 Both args FONTSET and FONT_OBJECT must be existing ones.
10751
107522008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10753
10754 * macterm.c (mac_set_unicode_keystroke_event): Don't use MAKE_CHAR.
10755
107562008-02-01 Kenichi Handa <handa@m17n.org>
10757
10758 * xfont.c (xfont_open, xfont_encode_char): Fix typo.
10759
10760 * font.h (struct font): Fix typo.
10761
10762 * font.c (enum xlfd_field_index): Rename XLFD_XXX_SIZE_INDEX to
10763 XLFD_XXX_INDEX.
10764 (enum xlfd_field_mask): New enum.
10765 (intern_font_field): Changed argument. Change caller. If digits
10766 are followed by non-digits, return a symbol.
10767 (font_expand_wildcards): New function.
10768 (font_parse_xlfd): Fix wildcard handling.
10769 (Ffont_spec): If :name is specified, reflect the info in the other
10770 properties.
10771
10772 * ftfont.c (ftfont_pattern_entity): Fix typo.
10773 (ftfont_list): Enforce FC_LANG in PATTERN to cancel the effect of
10774 locale.
10775
107762008-02-01 Kenichi Handa <handa@m17n.org>
10777
10778 * font.h (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Extern them.
10779
10780 * font.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move from ftfont.c.
10781 (font_unparse_xlfd): Fix argument type declaration. Append "*" if
10782 registry doesn't specify encoding part.
10783 (font_find_for_lface): Pay attention to LFACE_FONT_INDEX.
10784 (font_open_by_name): At first try parsing the name.
10785 (syms_of_font): Declare Qiso8859_1, Qiso10646_1, and Qunicode_bmp
10786 as Lisp symbols.
10787
10788 * fontset.c (reorder_font_vector): Pay attention to the case that
10789 the 3rd element of font_def is nil.
10790 (fontset_font): For the default fontset, append one more fontset
10791 elements for a script-based font specification. Don't add script
10792 attribute on finding a font.
10793 (new_fontset_from_font): Unconditionally set FONTSET_ASCII to the
10794 font name.
10795 (fontset_ascii_font): If a font can't be opened, return nil.
10796
10797 * ftfont.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move to font.c.
10798 (ftfont_pattern_entity): New function.
10799 (ftfont_get_cache): Assume that freetype_font_cache is already
10800 initialized.
10801 (ftfont_list): Handle the case that a file is specified in font
10802 name. Use ftfont_pattern_entity to generate entities.
10803 (ftfont_has_char): Check if the pattern contains FC_CHARSET.
10804 (syms_of_ftfont): Initialize freetype_font_cache.
10805
10806 * xftfont.c (xftfont_open): Make the font name fontconfig's
10807 style. Add BLOCK_INPUT and UNBLOCK_INPUT.
10808 (xftfont_close): Free font->font.name if not NULL.
10809
10810 * xfont.c (xfont_list): If script is specified for a font, return
10811 null_vector.
10812 (xfont_list_family): Declare argument type.
10813
10814 * xfaces.c (set_lface_from_font_name): If a font doesn't have a
10815 name, set LFACE_FONT (lface) to nil.
10816
10817 * xterm.c (x_new_fontset2): If an ASCII font couldn't be loaded,
10818 return Qnil.
10819
108202008-02-01 Kenichi Handa <handa@m17n.org>
10821
10822 * emacs.c (main): Check -enable-font-backend arg after the check of -nl.
10823 (standard_args): Add "-enable-font-backend".
10824
108252008-02-01 Kenichi Handa <handa@m17n.org>
10826
10827 * xftfont.c (xftfont_default_fid): Set fid_known to 1.
10828 (struct xftdraw_list, xftdraw_list): Delete them.
10829 (register_xftdraw, check_xftdraw): Delete them.
10830 (xftfont_prepare_face): Don't call register_xftdraw.
10831 (xftfont_done_face): Don't call check_xftdraw.
10832 (xftfont_draw): Get background color only when with_background is
10833 nonzero.
10834
10835 * xfont.c (xfont_encode_char): Fix calculation of char2b.
10836
108372008-02-01 Kenichi Handa <handa@m17n.org>
10838
10839 These changes are for the new font handling codes.
10840
10841 * Makefile.in (ALL_CFLAGS): Add @FREETYPE_CFLAGS@,
10842 @FONTCONFIG_CFLAGS@, and @LIBOTF_CFLAGS@.
10843 (LIB_X11_LIB): If HAVE_XFT is defined, set to @XFT_LIBS@.
10844 (FONTSRC, FONTOBJ): New variables.
10845 (obj): Add $(FONTOBJ).
10846 (SOME_MACHINE_OBJECTS): Lib_X11_Lib.
10847 (LIBES): Add @FREETYPE_LIBS@, @FONTCONFIG_LIBS@, and
10848 @LIBOTF_LIBS@.
10849 (font.o, ftfont.o, xfont.o, xftfont.o, ftxfont.o): New targets.
10850 (fontset.o, xdisp.o, xfaces.o, xfns.o, xterm.o): Depend on $(FONTSRC).
10851
10852 * font.h, font.c, xfont.c, ftfont.c, xftfont.c, ftxfont.c: New files.
10853
10854 * character.h (Vscript_representative_chars): Extern it.
10855
10856 * character.c (Vscript_representative_chars): New variable.
10857 (syms_of_character): Declare it as a Lisp variable.
10858
10859 * composite.c (get_composition_id) [USE_FONT_BACKEND]: If
10860 enable_font_backend is nonzero, accept the composition method
10861 COMPOSITION_WITH_GLYPH_STRING.
10862
10863 * composite.h (enum composition_method) [USE_FONT_BACKEND]: New
10864 enumeration COMPOSITION_WITH_GLYPH_STRING.
10865
10866 * dispextern.h (struct glyph_string) [USE_FONT_BACKEND]: New
10867 members clip_x, clip_y, clip_width, and clip_height.
10868 (struct face) [USE_FONT_BACKEND]: New members font_info and extra.
10869
10870 * emacs.c (main) [USE_FONT_BACKEND]: Handle arg
10871 --enable-font-backend. Call syms_of_font.
10872
10873 * fns.c (assoc_no_quit): New function.
10874
10875 * fontset.h (FONT_INFO_FROM_FACE): New macro.
10876 (face_for_font, new_fontset_from_font)
10877 (fontset_ascii_font) [USE_FONT_BACKEND]: Extern them.
10878
10879 * fontset.c [USE_FONT_BACKEND]: Include "font.h".
10880 (fontset_font, fontset_ascii, face_for_char)
10881 (make_fontset_for_ascii_face, Ffont_info)
10882 (Finternal_char_font) [USE_FONT_BACKEND]: If enable_font_backend
10883 is nonzero, use font-backend mechanism.
10884 (find_font_encoding): Make it non-static.
10885 (new_fontset_from_font, fontset_ascii_font) [USE_FONT_BACKEND]:
10886 New functions.
10887
10888 * frame.h (struct frame): New members resx and resy.
10889 (struct frame) [USE_FONT_BACKEND]: New member font_driver_list.
10890 (x_new_fontset2) [USE_FONT_BACKEND]: Extern it.
10891
10892 * frame.c [USE_FONT_BACKEND]: Include "font.h".
10893 (make_frame, x_set_font) [USE_FONT_BACKEND]: Use font-backend mechanism.
10894
10895 * lisp.h (assoc_no_quit): Extern it.
10896
10897 * xdisp.c: If USE_FONT_BACKEND is defined, include "font.h".
10898 Through out the file, use FONT_INFO_FROM_FACE instead of
10899 FONT_INFO_FROM_ID, use get_per_char_metric instead of
10900 rif->per_char_metric.
10901 (handle_composition_prop) [USE_FONT_BACKEND]: If the composition
10902 method is COMPOSITION_WITH_GLYPH_STRING, just set it->c to ' '.
10903 (get_glyph_face_and_encoding, fill_composite_glyph_string)
10904 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
10905 (x_produce_glyphs) [USE_FONT_BACKEND]: If enable_font_backend is
10906 nonzero, use font-backend mechanism.
10907 (get_per_char_metric): New function.
10908
10909 * xfaces.c [USE_FONT_BACKEND]: Include "font.h".
10910 (set_lface_from_font_name)
10911 (set_font_frame_param, free_realized_face)
10912 (prepare_face_for_display, clear_face_gcs)
10913 (Finternal_set_font_selection_order, realize_x_face)
10914 [USE_FONT_BACKEND]: If enable_font_backend is nonzero, use
10915 font-backend mechanism.
10916 (clear_face_cache) [USE_FONT_BACKEND]: Don't call clear_font_table.
10917 (load_face_font) [USE_FONT_BACKEND]: Abort.
10918 (face_symbolic_value, face_symbolic_weight, face_symbolic_slant)
10919 (face_symbolic_swidth, face_for_font) [USE_FONT_BACKEND]: New functions.
10920
10921 * xfns.c [USE_FONT_BACKEND]: Include "font.h".
10922 (x_default_font_parameter) [USE_FONT_BACKEND]: New function.
10923 (Fx_create_frame) [USE_FONT_BACKEND]: If enable_font_backend is
10924 nonzero, register all available font drivers. Call
10925 x_default_font_parameter for deciding a font.
10926 (x_create_tip_frame) [USE_FONT_BACKEND]: Likewise.
10927
10928 * xterm.c [USE_FONT_BACKEND]: Include "font.h".
10929 (x_set_mouse_face_gc, x_set_glyph_string_clipping)
10930 (x_set_glyph_string_clipping_exactly)
10931 (x_compute_glyph_string_overhangs)
10932 (x_draw_glyph_string_foreground)
10933 (x_draw_composite_glyph_string_foreground, x_draw_glyph_string)
10934 (x_free_frame_resources) [USE_FONT_BACKEND]: If
10935 enable_font_backend is nonzero, use font-backend mechanism.
10936 (x_new_fontset2) [USE_FONT_BACKEND]: New function.
10937
109382008-02-01 Kenichi Handa <handa@m17n.org>
10939
10940 * coding.c (coding_inherit_eol_type): If PARENT is nil, inherit from
10941 system_eol_type.
10942 (syms_of_coding): Initialize system_eol_type.
10943
10944 * process.c (Fset_process_coding_system): Inherit system's eol
10945 format if necessary.
10946
109472008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10948
10949 * macgui.h (USE_ATSUI): Don't enable on emacs-unicode-2 branch.
10950
109512008-02-01 Kenichi Handa <handa@m17n.org>
10952
10953 * coding.c (decode_eol): Pay attention to buffer relocation in
10954 del_range_2.
10955 (decode_coding): Call decode_eol before restoring undo_list.
10956
109572008-02-01 Kenichi Handa <handa@m17n.org>
10958
10959 * charset.c (Fdefine_charset_internal): Fix setting of
10960 emacs_mule_bytes.
10961
109622008-02-01 Kenichi Handa <handa@m17n.org>
10963
10964 * keyboard.c (read_char): Check if C is a character or not before
10965 looking up Vkeyboard_translate_table.
10966
109672008-02-01 Kenichi Handa <handa@m17n.org>
10968
10969 * coding.c (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Fix
10970 condition to terminate the loop.
10971
109722008-02-01 Kenichi Handa <handa@m17n.org>
10973
10974 * coding.c (produce_composition): Compare charbuf[i] instead of
10975 args[i] against 0.
10976 (Fterminal_coding_system): Use EQ to compare Lisp objects.
10977
109782008-02-01 Kenichi Handa <handa@m17n.org>
10979
10980 * coding.c (DECODE_COMPOSITION_START): If the source is short, set
10981 coding->result to CODING_RESULT_INSUFFICIENT_SRC.
10982 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK after the call of
10983 detect_coding.
10984 (emacs_mule_char): Handle old style (Emacs 20) component character
10985 of a composition.
10986 (DECODE_EMACS_MULE_COMPOSITION_RULE_20)
10987 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Fix parsing a
10988 composition rule.
10989 (decode_coding_emacs_mule): Handle invalid bytes correctly.
10990
109912008-02-01 Kenichi Handa <handa@m17n.org>
10992
10993 * coding.c (encode_coding_ccl): Allocate destination dynamically
10994 when necessary.
10995
109962008-02-01 Kenichi Handa <handa@m17n.org>
10997
10998 * ccl.c (Fccl_execute_on_string): Fix the condition of terminating
10999 the loop. When quitted, show a proper error message.
11000
110012008-02-01 Kenichi Handa <handa@m17n.org>
11002
11003 * xterm.c (x_set_glyph_string_clipping_exactly): Set
11004 src->clip_head and src->clip_tail temporarily instead of src->hl.
11005
11006 * ccl.c (CCL_WRITE_STRING): Handle a flag bit for multibyte
11007 character sequence.
11008 (Fccl_execute_on_string): Use ASET, not XSET.
11009
110102008-02-01 Kenichi Handa <handa@m17n.org>
11011
11012 * search.c (search_buffer): Fix handling of "\\" in a trivial regexp.
11013
110142008-02-01 Kenichi Handa <handa@m17n.org>
11015
11016 * coding.c (decode_coding): Fix the condition of terminating the
11017 decoding loop.
11018
110192008-02-01 Kenichi Handa <handa@m17n.org>
11020
11021 * data.c (Faset): On setting a character bigger than 255 in a
11022 unibyte string, signal an error instead of make the string multibyte.
11023
110242008-02-01 Kenichi Handa <handa@m17n.org>
11025
11026 * charset.c (map_charset_chars): Fix for ascii-compatible charset
11027 made by a mapping table.
11028
110292008-02-01 Kenichi Handa <handa@m17n.org>
11030
11031 * xdisp.c (fill_composite_glyph_string): Check s->face is NULL or
11032 not.
11033 (BUILD_COMPOSITE_GLYPH_STRING): If C is TAB, set s->face to NULL.
11034 (x_produce_glyphs): If CH is TAB, set cmp->offsets properly.
11035
11036 * xterm.c (x_draw_composite_glyph_string_foreground): Check
11037 s->face is NULL or not.
11038
110392008-02-01 Kenichi Handa <handa@m17n.org>
11040
11041 * xterm.c (x_set_glyph_string_clipping_exactly): New function.
11042 (x_draw_glyph_string): Fix drawing of right_overhang and
11043 left_overhang around/on cursor.
11044
11045 * xdisp.c (draw_glyphs): Fix inclusion of right_overwriting glyphs.
11046
110472008-02-01 Kenichi Handa <handa@m17n.org>
11048
11049 * xdisp.c (x_produce_glyphs): Handle composition with TAB.
11050
110512008-02-01 Kenichi Handa <handa@m17n.org>
11052
11053 * coding.c (Fdefine_coding_system_internal)
11054 (Fdefine_coding_system_alias): Avoid a duplicated element in
11055 Vcoding_system_alist.
11056
110572008-02-01 Kenichi Handa <handa@m17n.org>
11058
11059 * xterm.c (handle_one_xevent): Handle keysyms 0x1000000..0x10000FF.
11060
11061 * coding.c (Qcoding_system_define_form): New variable.
11062 (syms_of_coding): Intern and staticpro it.
11063 (Fcoding_system_p): Check Qcoding_system_define_form.
11064 (Fcheck_coding_system): Try to autoload the definition of CODING-SYSTEM.
11065
11066 * coding.h (CODING_SYSTEM_P): If ID is not available, call
11067 Fcoding_system_p.
11068 (CHECK_CODING_SYSTEM): If ID is not available, call
11069 Fcheck_coding_system.
11070 (CHECK_CODING_SYSTEM_GET_SPEC, CHECK_CODING_SYSTEM_GET_ID):
11071 Try also Fcheck_coding_system.
11072
110732008-02-01 Kenichi Handa <handa@m17n.org>
11074
11075 * coding.c (code_conversion_restore): GCPRO arg.
11076
110772008-02-01 Kenichi Handa <handa@m17n.org>
11078
11079 * character.c (lisp_string_width): Check multibyteness of STRING.
11080
110812008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11082
11083 * macterm.c (mac_encode_char): Call ccl_driver with the last arg
11084 Qnil. Use JIS_TO_SJIS instead of ENCODE_SJIS.
11085 (decode_mac_font_name): Use decode_coding_c_string instead of
11086 decode_coding.
11087 (x_load_font): Initialize fontp->fontset to -1. Set
11088 fontp->encoding_type.
11089
110902008-02-01 Kenichi Handa <handa@m17n.org>
11091
11092 * search.c (search_buffer): Give up BM search on case-fold-search
11093 if one of a target character has a case-equivalence of different
11094 byte length even if that target charcter is an ASCII.
11095 (simple_search): Fix calculation of byte length of matched text.
11096 (boyer_moore): Fix handling of case-equivalent multibyte characters.
11097
110982008-02-01 Kenichi Handa <handa@m17n.org>
11099
11100 * coding.c (decode_coding): Fix handling of invalid bytes.
11101
111022008-02-01 Kenichi Handa <handa@m17n.org>
11103
11104 * xterm.c (handle_one_xevent): Handle keysyms directly mapped to
11105 Unicode characters.
11106
111072008-02-01 Kenichi Handa <handa@m17n.org>
11108
11109 * coding.c (encode_coding_object): If a pre-write-conversion
11110 function makes a new buffer, kill it.
11111
111122008-02-01 Kenichi Handa <handa@m17n.org>
11113
11114 * coding.c (QCascii_compatible_p): New variable.
11115 (syms_of_coding): Initialize it.
11116 (ONE_MORE_BYTE, ONE_MORE_BYTE_NO_CHECK): Decrement `src' before
11117 calling string_char.
11118 (record_conversion_result): Add `default:' case.
11119 (coding_charset_list): Delete unused variable `coding_type'.
11120 (Fdefine_coding_system_internal): Add `ascii-compatible-p'
11121 property in the plist of the coding system.
11122 (Fcoding_system_put): Check QCascii_compatible_p.
11123
111242008-02-01 Miles Bader <miles@gnu.org>
11125
11126 * xfaces.c (Finternal_lisp_face_equal_p): Restore previously
11127 removed calculation of frame `f', as it's now used.
11128
111292008-02-01 Kenichi Handa <handa@m17n.org>
11130
11131 * Makefile.in (RUN_TEMACS): Include "-nl" if HAVE_SHM is defined.
11132 (emacs${EXEEXT}): Run $(RUN_TEMACS) unconditionally.
11133 (UNIDATA): New variable.
11134 (${lispsource}international/charprop.el): Depends on ${UNIDATA}.
11135 (bootstrap-emacs${EXEEXT}): Depends on charprop.el. Run
11136 $(RUN_TEMACS) unconditionally.
11137
111382008-02-01 Kenichi Handa <handa@m17n.org>
11139
11140 * Makefile.in (temacs${EXEEXT}): Build charprop.el if necessary.
11141 (admindir): New variable.
11142 ($(lispsource)international/charprop.el): New target.
11143
111442008-02-01 Miles Bader <miles@gnu.org>
11145
11146 * character.c (chars-in-region): Remove obsolete function.
11147 (syms_of_character): Remove its initialization.
11148
111492008-02-01 Benjamin Riefenstahl <b.riefenstahl@turtle-trading.net>
11150
11151 * w32select.c (validate_coding_system)
11152 (setup_windows_coding_system): New functions.
11153 (convert_to_handle_as_coded, Fw32_get_clipboard_data): Use
11154 setup_windows_coding_system.
11155 (setup_config, Fw32_get_clipboard_data): Use
11156 validate_coding_system.
11157 (Fx_selection_exists): Move call to setup_config to a place
11158 where signals are allowed.
11159
11160 * lisp.h (Fcoding_system_base, Fcoding_system_eol_type)
11161 (Fcheck_coding_system): Add declarations.
11162
111632008-02-01 Kenichi Handa <handa@m17n.org>
11164
11165 * charset.c (load_charset_map_from_vector): Fix for the first iteration.
11166
111672008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11168
11169 * macfns.c (Fx_create_frame, x_create_tip_frame): Pass Lisp
11170 string as the second argument for x_new_fontset.
11171
111722008-02-01 Kenichi Handa <handa@m17n.org>
11173
11174 * coding.c (decode_coding_object): Use safe_call1 instead of call1.
11175 (encode_coding_object): Use safe_call instead of call2.
11176
111772008-02-01 Kenichi Handa <handa@m17n.org>
11178
11179 * fontset.c (Fset_fontset_font): Check family element of a given vector.
11180
11181 * Makefile.in (lisp): Include charprop.el.
11182
111832008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11184
11185 * macfns.c (Fx_create_frame, x_create_tip_frame): Fix crash.
11186 Not sure if it's unnecessary.
11187
111882008-02-01 Steven Tamm <steventamm@mac.com>
11189
11190 * macfns.c (Fx_create_frame, x_create_tip_frame): ifdef'd out
11191 some possibly unnecessary fontset checking code that crashed
11192 when creating a new frame.
11193
111942008-02-01 Kenichi Handa <handa@m17n.org>
11195
11196 * xfaces.c (merge_faces): Fix argument to lookup_derived_face and
11197 lookup_face.
11198
11199 * xdisp.c (Fformat_mode_line): Fix argument to lookup_named_face.
11200
11201 * fringe.c (draw_fringe_bitmap_1): Fix argument to lookup_named_face.
11202
112032008-02-01 Kenichi Handa <handa@m17n.org>
11204
11205 * coding.c: Cancel the change done in HEAD on 2008-02-01.
11206 (coding_charset_list): New function.
11207
11208 * coding.h (coding_charset_list): Extern it.
11209
112102008-02-01 Kenichi Handa <handa@m17n.org>
11211
11212 * fontset.c (Fset_fontset_font): Call find_font_encoding with
11213 concatenation of family and registry.
11214
112152008-02-01 Kenichi Handa <handa@m17n.org>
11216
11217 * character.h (BYTE8_STRING): Fix typo.
11218
11219 * editfns.c (Ftranslate_region_internal): Don't convert unibyte
11220 string to multibyte (sync to HEAD).
11221
11222 * casefiddle.c (casify_region): Handle changes in byte-length
11223 using replace_range_2 (sync to HEAD).
11224
112252008-02-01 Andreas Schwab <schwab@suse.de>
11226
11227 * chartab.c (map_char_table): GCPRO table and arg.
11228
112292008-02-01 Kenichi Handa <handa@m17n.org>
11230
11231 * syntax.c (skip_syntaxes): Return lispy 0 (not nil) if point is
11232 already at limit.
11233
112342008-02-01 Kenichi Handa <handa@m17n.org>
11235
11236 * fontset.c (fs_load_font): Use fast_string_match_ignore_case
11237 instead of fast_c_string_match_ignore_case.
11238 (find_font_encoding): Change argument to Lisp_Object. Use
11239 fast_string_match_ignore_case instead of
11240 fast_c_string_match_ignore_case. Change caller.
11241
112422008-02-01 Kenichi Handa <handa@m17n.org>
11243
11244 * xdisp.c (get_next_display_element): In unibyte case, decide to
11245 display in octal form by checking a character by
11246 UNIBYTE_CHAR_HAS_MULTIBYTE_P.
11247
11248 * charset.c (Fset_unibyte_charset): Setup unibyte_has_multibyte_table.
11249
11250 * character.c (unibyte_has_multibyte_table): New variable.
11251
11252 * character.h (unibyte_has_multibyte_table): Extern it.
11253 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): New macro.
11254
112552008-02-01 Kenichi Handa <handa@m17n.org>
11256
11257 * coding.c (encode_coding_iso_2022): Fix handling of charset
11258 annotation.
11259
112602008-02-01 Kenichi Handa <handa@m17n.org>
11261
11262 * coding.c (setup_coding_system): If coding_system is nil, use
11263 Qundecided.
11264 (Fterminal_coding_system): Return nil if terminal coding system is
11265 `undecided'.
11266 (syms_of_coding): Define coding-system `undecided' here. Setup
11267 terminal_coding as `undecided'.
11268
112692008-02-01 Kenichi Handa <handa@m17n.org>
11270
11271 * xdisp.c (message_dolog, set_message_1): Call
11272 unibyte_char_to_multibyte with arg type int.
11273
11274 * lread.c (read1): Fix reading of a char-table.
11275
11276 * print.c (print_object): Include sub char-table in circularities
11277 detection.
11278
112792008-02-01 Kenichi Handa <handa@m17n.org>
11280
11281 * keymap.c (where_is_internal_2): Fix for the case that KEY is a cons.
11282 Append the found sequences in car of ARGS instead of prepending.
11283
112842008-02-01 Kenichi Handa <handa@m17n.org>
11285
11286 * fileio.c (report_file_error): Make a unibyte string from
11287 strerror (errorno).
11288 (Fsubstitute_in_file_name): Fix the arg to
11289 unibyte_char_to_multibyte. It is evaluated twice.
11290
112912008-02-01 Kenichi Handa <handa@m17n.org>
11292
11293 * charset.h (CHAR_CHARSET): Shortcut for ASCII case.
11294
112952008-02-01 Kenichi Handa <handa@m17n.org>
11296
11297 * coding.c (detect_coding_utf_16): Don't set detect_info->found if
11298 BOM is not found.
11299 (detect_coding, detect_coding_system): Optimization for ISO-2022
11300 when no 8-bit data is found.
11301
113022008-02-01 Jason Rumney <jasonr@gnu.org>
11303
11304 * w32fns.c (x_to_w32_font): Update to use new coding struct.
11305
113062008-02-01 Kenichi Handa <handa@m17n.org>
11307
11308 * charset.c (Fdeclare_equiv_charset, Fiso_charset): Fix handing of
11309 CHARS.
11310
113112008-02-01 Steven Tamm <steventamm@mac.com>
11312
11313 * macterm.c (mac_encode_char): Add charset argument and update
11314 to use encoding_type.
11315 (x_new_font, x_new_fontset): Merge in changes from xterm.c;
11316 switch to pure fontset.
11317 (decode_mac_font_name): Temporarily remove decoding.
11318 (x_font_name_to_mac_font_name): Temporarily remove encoding.
11319 (x_load_font): Temporarily remove encoding.
11320
113212008-02-01 Kenichi Handa <handa@m17n.org>
11322
11323 * xfaces.c (Fface_font): If frame is not on a window system,
11324 ignore CHARACTER arg. If HAVE_WINDOW_SYSTEM is not defined, don't
11325 refer to face->font.
11326 (split_font_name_into_vector, build_font_name_from_vector)
11327 (lookup_non_ascii_face, realize_non_ascii_face): Define them only
11328 when HAVE_WINDOW_SYSTEM is defined.
11329
113302008-02-01 Kenichi Handa <handa@m17n.org>
11331
11332 * xdisp.c (BUILD_GLYPH_STRINGS): Check if s is NULL.
11333 (x_produce_glyphs): Fix setting of members of cmp in case
11334 cmp->glyph_len is zero.
11335
11336 * fontset.c (Fset_fontset_font): Fix docstring.
11337 (Ffontset_info): Make it backward compatible. New arg ALL.
11338
113392008-02-01 Kim F. Storm <storm@cua.dk>
11340
11341 * process.c (read_process_output): Grow decoding_buf when needed;
11342 this could cause a crash in allocate_string and compact_small_strings.
11343
113442008-02-01 Kenichi Handa <handa@m17n.org>
11345
11346 * fileio.c (WRITE_BUF_SIZE): Delete this macro.
11347
113482008-02-01 Kenichi Handa <handa@m17n.org>
11349
11350 * coding.c (setup_coding_system): Set coding->common_flags
11351 correctly for raw-text.
11352 (consume_chars): On encoding unibyte text by raw-text, don't check
11353 multibyte form.
11354 (encode_coding): On encoding by raw-text, never use translation tables.
11355
11356 * fileio.c (e_write): Short cut for the case of no encoding.
11357
113582008-02-01 Kenichi Handa <handa@m17n.org>
11359
11360 * coding.c (detect_coding, detect_coding_system): Delete unused
11361 variables.
11362
113632008-02-01 Kenichi Handa <handa@m17n.org>
11364
11365 * coding.c (encode_coding_utf_8): Fix handling of raw-byte char.
11366 (consume_chars): Fix handling of 8-bit bytes in unibyte source.
11367
113682008-02-01 Kenichi Handa <handa@m17n.org>
11369
11370 * coding.c (Ffind_coding_systems_region_internal): Include
11371 raw-text and no-conversion in the result.
11372
113732008-02-01 Kenichi Handa <handa@m17n.org>
11374
11375 * fontset.c (find_font_encoding): Return `ascii' for unknown encoding.
11376 (load_font_get_repertory): Delete unnecessary check of ENCODING of
11377 FONT_DEF.
11378 (font_def_arg, add_arg, from_arg, to_arg): New args.
11379 (set_fontset_font): Change argument.
11380 (Fset_fontset_font): Fix for the case that TARGET is a script
11381 name and charset name.
11382 (new_fontset_from_font_name): Fix argument to Fnew_fontset.
11383
113842008-02-01 Kenichi Handa <handa@m17n.org>
11385
11386 * fontset.c (fontset_font): Rename from fontset_face. Change return
11387 value.
11388 (face_suitable_for_char_p, face_for_char): Adjust for the change
11389 of fontset_font.
11390 (make_fontset_for_ascii_face): Fix setting of the fontset element
11391 for ASCII.
11392 (Finternal_char_font): Use fontset_font instead of FACE_FOR_CHAR
11393 to get a font name.
11394 (Ffontset_info): Adjust for the change of fontset_font.
11395
11396 * coding.c (emacs_mule_char): Check invalid code more rigidly.
11397
11398 * character.h (LEADING_CODE_LATIN_1_MIN)
11399 (LEADING_CODE_LATIN_1_MAX): Delete these macros.
11400
114012008-02-01 Kenichi Handa <handa@m17n.org>
11402
11403 * editfns.c (check_translation): New function.
11404 (Ftranslate_region_internal): Handle M:N mapping.
11405
114062008-02-01 Kenichi Handa <handa@m17n.org>
11407
11408 * xfaces.c (xlfd_point_size): Set font->numeric[XLFD_PIXEL_SIZE].
11409
114102008-02-01 Kenichi Handa <handa@m17n.org>
11411
11412 * coding.c (DECODE_DESIGNATION): Set chars_96 to -1 instead of
11413 goto invalid_code.
11414 (decode_coding_iso_2022): Fix handling of invalid designation.
11415
11416 * fileio.c (Finsert_file_contents): Be sure to call unbind_to
11417 after calling code_conversion_save.
11418
114192008-02-01 Kenichi Handa <handa@m17n.org>
11420
11421 * xdisp.c (handle_auto_composed_prop): Fix Lisp_Object/int mixup.
11422
11423 * print.c (print_prune_string_charset): Fix Lisp_Object/int mixup.
11424
11425 * fontset.c: Include "intervals.h".
11426 (fontset_face): Fix comparing of Lisp_Objects.
11427 (free_face_fontset, new_fontset_from_font_name): Fix
11428 Lisp_Object/int mixup.
11429
11430 * editfns.c (Ftranslate_region_internal): Fix Lisp_Object/int mixup.
11431
11432 * coding.c: Add many prototypes for static functions.
11433 (get_translation_table): Allow max_lookup to be NULL.
11434 (decode_coding, Ffind_coding_systems_region_internal)
11435 (Funencodable_char_position, Fcheck_coding_systems_region): Call
11436 get_translation_table with max_lookup NULL.
11437
114382008-02-01 Kenichi Handa <handa@m17n.org>
11439
11440 * coding.c (get_translation_table): Declare it as Lisp_Object.
11441 (LOOKUP_TRANSLATION_TABLE): New macro.
11442 (produce_chars, consume_chars): Use LOOKUP_TRANSLATION_TABLE
11443 instead of CHAR_TABLE_REF.
11444
114452008-02-01 Kenichi Handa <handa@m17n.org>
11446
11447 * coding.c (MAX_ANNOTATION_LENGTH): Adjust for the change of
11448 annotation data format.
11449 (ADD_ANNOTATION_DATA, ADD_COMPOSITION_DATA, ADD_CHARSET_DATA):
11450 Change arguments FROM and TO to single argument NCHARS. Change caller.
11451 (decode_coding_utf_8, decode_coding_utf_16, decode_coding_emacs_mule)
11452 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
11453 (decode_coding_ccl, decode_coding_charset): Pay attention to
11454 coding->charbuf_used.
11455 (get_translation): New function.
11456 (produce_chars): New arguments translation_table and last_block.
11457 Translate characters here. Return number of carryover chars.
11458 Change caller.
11459 (produce_composition): New argument pos. Change caller.
11460 Adjust for the change of annotation data format.
11461 (produce_charset, produce_annotation): Likewise.
11462 (decode_coding, encode_coding): Don't call translate_chars.
11463 (consume_chars): New arg translation_table. Change caller.
11464 (translate_chars): Delete.
11465 (syms_of_coding): Make translation-table's number of extra slots 2.
11466
114672008-02-01 Kenichi Handa <handa@m17n.org>
11468
11469 * search.c (simple_search): Fix setting this_pos_byte in backward
11470 search.
11471
11472 * coding.c (detect_coding_emacs_mule): Fix counting of encoded
11473 byte sequence.
11474 (detect_coding_ccl): Fix setting of the variable valids.
11475
114762008-02-01 Kenichi Handa <handa@m17n.org>
11477
11478 * xterm.c (x_list_fonts): Fix the detection of an auto-scaled font.
11479
11480 * coding.c (decode_coding_utf_16): Fix handling of surrogate pair.
11481
11482 * editfns.c (Ftranslate_region_internal): Rename from
11483 Ftranslate_region. Accept a char-table in TABLE.
11484 (syms_of_editfns): Defsubr Stranslate_region_internal.
11485
11486 * xfaces.c (set_lface_from_font_name): If a font is specified for
11487 a frame, generate a fontset from the font.
11488 (build_scalable_font_name): If the scalable font is requested for
11489 a specific size, don't change that size.
11490 (try_font_list): Try a scalable font also in the case that a
11491 pattern string is specified.
11492
114932008-02-01 Kenichi Handa <handa@m17n.org>
11494
11495 * xfaces.c (Fface_font): New optional arg CHARACTER.
11496
114972008-02-01 Kenichi Handa <handa@m17n.org>
11498
11499 * charset.h (CHARSET_OFFSET): New macro.
11500
115012008-02-01 Kenichi Handa <handa@m17n.org>
11502
11503 * xterm.c (x_get_font_repertory): Fix for non-Unicode-bmp charset.
11504
11505 * fontset.c (fontset_face): Handle the case that repertory is a
11506 char-table.
11507 (find_font_encoding): Return nil for unknown encoding.
11508 (Fset_fontset_font): Ignore a font of unknown encoding.
11509
115102008-02-01 Kenichi Handa <handa@m17n.org>
11511
11512 * keymap.c (describe_vector): Handle default value of a char table.
11513
11514 * fontset.c (fontset_face): Handle fallback fonts correctly.
11515 (Ffontset_info): Return infomation about fallback fonts.
11516
115172008-02-01 Kenichi Handa <handa@m17n.org>
11518
11519 * fontset.c (FONTSET_DEFAULT): New macro.
11520 (FONTSET_ADD, fontset_add): Handle the case that range is nil.
11521 (Fset_fontset_font): Change the 2nd arg name to TARGET, and handle
11522 the case that it is nil.
11523 (dump_fontset): Call FONTSET_DEFAULT, not FONTSET_FALLBACK.
11524 (syms_of_fontset): Set char-table-extra-slots property of fontset to 9.
11525
11526 * charset.h (CHAR_CHARSET_P): Fix for the case that the method is
11527 subset or superset.
11528
115292008-02-01 Kenichi Handa <handa@m17n.org>
11530
11531 * emacs.c (main): Call init_charset after syms_of_XXX.
11532
11533 * charset.c (Vcharset_map_directory): Delete.
11534 (Vcharset_map_path): New variable.
11535 (load_charset_map_from_file): Use Vcharset_map_path instead.
11536 (init_charset): Initialize Vcharset_map_path.
11537 (syms_of_charset): Delete declaration of "charset-map-directory",
11538 add declaration of "charset-map-path".
11539
115402008-02-01 Kenichi Handa <handa@m17n.org>
11541
11542 * fns.c (string_char_to_byte, string_byte_to_char): Optimize for
11543 ASCII only string.
11544
11545 * fileio.c (Finsert_file_contents): Avoid detecting a code twice.
11546
11547 * coding.c (detect_coding_iso_2022): Fix handling of SS2 and SS3.
11548 (detect_coding, detect_coding_system): Treat '\0' as normal ASCII byte.
11549
115502008-02-01 Kenichi Handa <handa@m17n.org>
11551
11552 * coding.h (SJIS_TO_JIS2, JIS_TO_SJIS2): New macros.
11553
11554 * coding.c (QCmnemonic, QCdefalut_char)
11555 (QCdecode_translation_table, QCencode_translation_table)
11556 (QCpost_read_conversion, QCpre_write_conversion): New variables.
11557 (get_translation_table): Return a list of translation tables if
11558 necessary.
11559 (decode_coding): Call get_translation_table with ENCODEP 0.
11560 (char_encodable_p): If translation_table is non-nil, always call
11561 translate_char.
11562 (Fdefine_coding_system_internal): Accept list of translation
11563 tables as :encode-translation-table and :decode-translation-table.
11564 (Fcoding_system_put): New function.
11565 (syms_of_coding): Declare new symbols. Defsubr
11566 Scoding_system_put.
11567 (decode_coding_sjis, encode_coding_sjis): Handle 4th charset,
11568 typically JISX0212.
11569
11570 * charset.c (map_charset_chars): Fix arg to map_charset_chars in
11571 when the charset is superset type.
11572
11573 * character.c (translate_char): Accept list of translation tables.
11574
115752008-02-01 Kenichi Handa <handa@m17n.org>
11576
11577 * coding.h (enum coding_attr_index): New member coding_attr_trans_tbl.
11578 (CODING_ATTR_TRANS_TBL): New macro.
11579
11580 * coding.c (get_translation_table): New function.
11581 (translate_chars): Fix the bug of skipping annotation data.
11582 (decode_coding, encode_coding): Utilize get_translation_table.
11583 (char_encodable_p, Funencodable_char_position): Translate char if
11584 necessary.
11585 (Ffind_coding_systems_region_internal)
11586 (Fcheck_coding_systems_region): Setup translation table for encode
11587 in a coding system attribute vector in advance.
11588 (Fdefine_coding_system_internal): Allow a symbol as translation
11589 table. For shift-jis type coding system, allow 4th charset.
11590
115912008-02-01 Kenichi Handa <handa@m17n.org>
11592
11593 * coding.c (decode_coding_sjis): Check the first byte rigidly.
11594
11595 * xdisp.c (get_next_display_element): Pass -1 as POS to
11596 FACE_FOR_CHAR if displaying a C-string.
11597
115982008-02-01 Kenichi Handa <handa@m17n.org>
11599
11600 * composite.c (get_composition_id): Handle xoff and yoff in a
11601 composition rule.
11602
11603 * composite.h (COMPOSITION_DECODE_RULE): New arg xoff and yoff.
11604 (struct composition): New member lbearing and rbearing.
11605
11606 * xdisp.c (move_it_to): Optimize for the case (op & MOVE_TO_Y).
11607 (x_get_glyph_overhangs): Handle a composition glyph.
11608 (x_produce_glyphs): Setup lbearing and rbreaing for a composition glyph.
11609
11610 * xterm.c (x_compute_glyph_string_overhangs): Handle also a
11611 composition glyph.
11612
116132008-02-01 Kenichi Handa <handa@m17n.org>
11614
11615 * print.c: Include charset.h.
11616 (Vprint_charset_text_property): New variable.
11617 (Qdefault): Extern it.
11618 (PRINT_STRING_NON_CHARSET_FOUND)
11619 (PRINT_STRING_UNSAFE_CHARSET_FOUND): New macros.
11620 (print_check_string_result): New variable.
11621 (print_check_string_charset_prop): New function.
11622 (print_prune_charset_plist): New variable.
11623 (print_prune_string_charset): New function.
11624 (print_object): Call print_prune_string_charset if
11625 Vprint_charset_text_property is not t.
11626 (print_interval): Print nothing if interval->plist is nil.
11627 (syms_of_print): Declare Vprint_charset_text_property as a lisp
11628 variable. Init and staticpro print_prune_charset_plist.
11629
116302008-02-01 Kenichi Handa <handa@m17n.org>
11631
11632 * fontset.c (new_fontset_from_font_name): Use the specified font
11633 for all characters in the new fontset.
11634
11635 * macterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
11636 OBJECT args.
11637
11638 * xdisp.c (x_produce_glyphs): Call FACE_FOR_CHAR with POS and
11639 OBJECT args for composition too.
11640
11641 * w32term.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
11642 OBJECT args.
11643
116442008-02-01 Kenichi Handa <handa@m17n.org>
11645
11646 * dispextern.h (FACE_FOR_CHAR): New args POS and OBJECT.
11647
11648 * fontset.c (reorder_font_vector): Adjust for the change of
11649 FONT_DEF format.
11650 (fontset_face): New arg id. Change caller.
11651 (face_for_char): New args pos and object.
11652 (make_fontset_for_ascii_face): Adjust for the change of FONT_DEF format.
11653 (fs_query_fontset): Check NAME by Fassoc too.
11654 (Fset_fontset_font): Allow non-XLFD font name.
11655 (Ffontset_info): Adjust for the change of FONT_DEF format.
11656
11657 * fontset.h (face_for_char): Adjust prototype.
11658
11659 * xdisp.c (face_before_or_after_it_pos, get_next_display_element)
11660 (append_space, extend_face_to_end_of_line)
11661 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
11662 (x_produce_glyphs): Call FACE_FOR_CHAR with POS and OBJECT args.
11663
11664 * xfaces.c (compute_char_face): Call FACE_FOR_CHAR with
11665 POS and OBJECT args.
11666
11667 * xterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with
11668 POS and OBJECT args.
11669
116702008-02-01 Jason Rumney <jasonr@gnu.org>
11671
11672 * w32select.c (Fw32_set_clipboard_data): Avoid potential realloc
11673 of GlobalAlloc'ed memory.
11674
116752008-02-01 Kenichi Handa <handa@m17n.org>
11676
11677 * ccl.c (Fccl_execute_on_string): Fix the condition of loop.
11678
11679 * charset.h (charset_table_used): Delete extern.
11680
11681 * charset.c (charset_table_used): Make it static.
11682 (map_charset_chars): Fix args to c_function with.
11683
11684 * chartab.c (map_sub_char_table_for_charset): Fix args to
11685 c_function with.
11686
11687 * coding.h (enum coding_result_code): Delete
11688 CODING_RESULT_INSUFFICIENT_CMP, add CODING_RESULT_INVALID_SRC.
11689
11690 * coding.c (Qinsufficient_source, Qinconsistent_eol)
11691 (Qinvalid_source, Qinterrupted, Qinsufficient_memory): New variables.
11692 (Vlast_code_conversion_error): New variables.
11693 (syms_of_coding): DEFSYM or DEFVAR_LISP them.
11694 (ONE_MORE_BYTE): Record error if any instead of signaling an
11695 error. If non-ASCII multibyte char is found, return the negative
11696 value of the code. All callers changed to check it.
11697 (ONE_MORE_BYTE_NO_CHECK): Likewise.
11698 (record_conversion_result): New function. Change all codes setting
11699 coding->result to call this function.
11700 (detect_coding_utf_8, decode_coding_utf_8)
11701 (detect_coding_emacs_mule, detect_coding_sji, detect_coding_big5):
11702 Don't use the local variable incomplete.
11703 (emacs_mule_char): Change the second arg to `const'.
11704 (decode_coding): Fix of flushing out unprocessed data.
11705 (make_conversion_work_buffer): Fix making of a work buffer.
11706 (decode_coding_object): Return coding->dst_object.
11707
11708 * fontset.c (set_fontset_font): Fix args.
11709
11710 * lisp.h (CHARACTERBITS): Define as 22.
11711
11712 * process.c (send_process): Be sure to set coding->src_multibyte.
11713
11714 * xdisp.c (handle_auto_composed_prop): Fix setting of limit.
11715
117162008-02-01 Kenichi Handa <handa@m17n.org>
11717
11718 * xdisp.c (handle_auto_composed_prop): Give limit to
11719 Fnext_single_char_property_change.
11720
117212008-02-01 Kenichi Handa <handa@m17n.org>
11722
11723 * composite.c (syms_of_composite): Don't make the composition hash
11724 table weak.
11725
11726 * fontset.c (Fset_fontset_font): Fix docstring.
11727
11728 * lisp.h (detect_coding_system): Adjust prototype.
11729
11730 * fileio.c (kill_workbuf_unwind): Delete this function.
11731 (Finsert_file_contents): Adjust the call of detect_coding_system.
11732 Get conversion_buffer by code_conversion_save. Use the macro
11733 CODING_MAY_REQUIRE_DECODING. After decoding, update
11734 coding_system.
11735
11736 * coding.h (make_conversion_work_buffer): Delete extern.
11737 (code_conversion_save): Extern it.
11738
11739 * coding.c (enum iso_code_class_type): Delete ISO_carriage_return.
11740 (CODING_GET_INFO): Delete argument eol_type. Change callers.
11741 (decode_coding_utf_8): Don't do eol converion.
11742 (detect_coding_utf_16): Check coding->src_chars, not
11743 coding->src_bytes. Add heuristics for those that have no signature.
11744 (decode_coding_emacs_mule, decode_coding_iso_2022)
11745 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
11746 Don't do eol converion.
11747 (adjust_coding_eol_type): Return a new coding system.
11748 (detect_coding): Don't detect eol. Fix for utf-16 detection.
11749 (decode_eol): In case of CRLF->LF conversion, use del_range_2 on
11750 each change.
11751 (decode_coding): Pay attention to undo_list. Do eol conversion for
11752 all types of coding-systems (if necessary).
11753 (Vcode_conversion_work_buf_list): Delete it.
11754 (Vcode_conversion_reused_workbuf): Rename from
11755 Vcode_conversion_reused_work_buf.
11756 (Vcode_conversion_workbuf_name): New variable.
11757 (reused_workbuf_in_use): New variable.
11758 (make_conversion_work_buffer): Delete the arg DEPTH.
11759 (code_conversion_restore): Change argument to cons.
11760 (code_conversion_save): Delete the argument BUFFER. Change callers.
11761 (detect_coding_system): New argument src_chars. Change callers.
11762 Fix for utf-16 detection.
11763 (init_coding_once): Don't use ISO_carriage_return.
11764 (syms_of_coding): Initialize Vcode_conversion_workbuf_name and
11765 reused_workbuf_in_use.
11766
117672008-02-01 Kenichi Handa <handa@m17n.org>
11768
11769 * keymap.c (store_in_keymap): Pay attention to the case that idx
11770 is a cons specifying a character range.
11771
117722008-02-01 Kenichi Handa <handa@m17n.org>
11773
11774 * xdisp.c (handle_auto_composed_prop): Fix the case of returning
11775 HANDLED_RECOMPUTE_PROPS.
11776
11777 * coding.c (Fdefine_coding_system_internal): Fix checking of
11778 ascii compatibility.
11779
117802008-02-01 Kenichi Handa <handa@m17n.org>
11781
11782 * charset.c (find_charsets_in_text): Delete unused locale variable.
11783 (Fset_charset_priority): Update Vemacs_mule_charset_list too.
11784
11785 * coding.c (encode_coding_emacs_mule): Emit bytes with MSB.
11786 Resync charset_list to Vemacs_mule_charset_list.
11787
11788 * keymap.c (store_in_keymap): Pay attention to the case that idx
11789 is a cons specifying a character range.
11790
117912008-02-01 Kenichi Handa <handa@m17n.org>
11792
11793 * composite.c (update_compositions): Bind inhibit-read-only, etc
11794 to t before calling remove-list-of-text-properties.
11795
11796 * print.c (print_object): Always print ASCII chars as is.
11797
117982008-02-01 Kenichi Handa <handa@m17n.org>
11799
11800 * keymap.c (Fdefine_key): Fix handling of Lucid style event type list.
11801
11802 * fns.c (Fmapconcat, Fmapcar, Fmapc): Signal an error if SEQUENCE
11803 is a char table.
11804
118052008-02-01 Kenichi Handa <handa@m17n.org>
11806
11807 * syntax.c (skip_chars): Be sure to alloca char_ranges when necessary.
11808
118092008-02-01 Kenichi Handa <handa@m17n.org>
11810
11811 * xfaces.c (set_lface_from_font_name): Fix for the case that
11812 FONTNAME is not fontset name.
11813
118142008-02-01 Kenichi Handa <handa@m17n.org>
11815
11816 * fns.c (base64_encode_1): Fix previous change.
11817
118182008-02-01 Kenichi Handa <handa@m17n.org>
11819
11820 * fontset.c (set_fontset_font): New function.
11821 (Fset_fontset_font): If a font is specified for a charset, use
11822 map_charset_chars to store the font spec in a fontset.
11823
118242008-02-01 Kenichi Handa <handa@m17n.org>
11825
11826 * fontset.c (fontset_face): Create a fallback fontset on demand.
11827 (make_fontset): Don't create a fallback fontset here.
11828 (free_face_fontset): Free a fallback fontset (if any) too.
11829 (n_auto_fontsets): Delete this variable.
11830 (auto_fontset_alist): New variable.
11831 (new_fontset_from_font_name): Check auto_fontset_alist.
11832 (dump_fontset) [FONTSET_DEBUG]: Fully re-written.
11833 (Ffontset_list_all) [FONTSET_DEBUG]: New function.
11834 (syms_of_fontset): Initialize and staticpro auto_fontset_alist.
11835 Defsubr Sfontset_list_all.
11836
118372008-02-01 Kenichi Handa <handa@m17n.org>
11838
11839 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
11840
118412008-02-01 Kenichi Handa <handa@m17n.org>
11842
11843 * fontset.c (Fnew_fontset): Check NAME more rigidly.
11844
118452008-02-01 Kenichi Handa <handa@m17n.org>
11846
11847 * editfns.c (Fgoto_char): Fix docstring.
11848
118492008-02-01 Kenichi Handa <handa@m17n.org>
11850
11851 * insdel.c (insert_from_gap): Adjust intervals correctly.
11852
118532008-02-01 Jason Rumney <jasonr@gnu.org>
11854
11855 * w32term.c (GLYPHSET, WCRANGE): Define if system headers don't.
11856 (pfnGetFontUnicodeRanges): New dynamically loaded function.
11857 (w32_initialize): Try to load it.
11858 (x_get_font_repertory): Use it if available.
11859 (w32_encode_char): Add shortcut for unicode output.
11860
11861 * w32fns.c (w32_load_system_font): Default charset to -1.
11862 (x_to_w32_charset): Match all fonts for unicode.
11863 (w32_to_x_charset): New parameter matching. Don't return partial
11864 or wildcard charsets.
11865 (w32_to_all_x_charsets): Don't return partial or wildcard charsets.
11866 (w32_codepage_for_font): Return CP_UNICODE for unicode.
11867 (w32_to_x_font): Match charset to real charset.
11868 (enum_font_cb2): Always list unicode versions.
11869
11870 * makefile.w32-in (temacs): Increase EMHEAP.
11871
118722008-02-01 Jason Rumney <jasonr@gnu.org>
11873
11874 * w32term.c (w32_encode_char): New charset parameter.
11875 font_info.encoding becomes encoding_type.
11876 (x_get_font_repertory): New function. Warning: stub only!
11877 (x_new_font): Return quickly if font already set.
11878 (x_new_fontset): fontsetname parameter is Lisp_Object.
11879 Use new fs_query_fontset. Try new_fontset_from_font_name.
11880 Use fontset_name for return value.
11881
11882 * w32term.h: Declare x_get_font_repertory.
11883
11884 * w32select.c (Fw32_set_clipboard_data): Use string_x_string_p in
11885 place of find_charset_in_text. Use encode_coding_object in place
11886 of encode_coding.
11887 (Fw32_get_clipboard_data): Use decode_coding_c_string in place of
11888 decode_coding.
11889
11890 * w32fns.c (Fx_create_frame, x_create_tip_frame): Use new version
11891 of x_new_fontset.
11892 (w32_load_system_font): Initialize charset as unicode.
11893 font_info.encoding becomes encoding_type.
11894 (w32_to_x_font): Use decode_coding_c_string in place of decode_coding.
11895 (x_to_w32_font): Use encode_coding_object in place of encode_coding.
11896 (syms_of_w32fns): Set get_font_repertory_func.
11897
11898 * w32console.c: Include character.h. Use terminal_encode_buffer
11899 from term.c.
11900 (write_glyphs): Use new version of encode_terminal_code. Use
11901 encode_coding_object in place of encode_coding.
11902
11903 * w32bdf.c (w32_load_bdf_font): Clear font_info before filling.
11904 encoding becomes encoding_type.
11905
11906 * term.c (terminal_encode_buffer): Make externally visible.
11907
11908 * makefile.w32-in: Add character.h dependancies.
11909 (character.o, chartab.o): New targets.
11910
119112008-02-01 Kenichi Handa <handa@m17n.org>
11912
11913 * fileio.c (Finsert_file_contents) [DOS_NT]: Use the macro
11914 CODING_ID_EOL_TYPE.
11915
119162008-02-01 Andreas Schwab <schwab@suse.de>
11917
11918 * coding.c (produce_chars): Revert last change.
11919
119202008-02-01 Kenichi Handa <handa@m17n.org>
11921
11922 * charset.h (charset_unicode): Extern it.
11923
11924 * charset.c (string_xstring_p): Check by (C >= 0x100).
11925 (find_charsets_in_text): Change format of the arc CHARSETS. New
11926 arg MULTIBYTE.
11927 (Ffind_charset_region, Ffind_charset_string): Adjust for the
11928 change of find_charsets_in_text.
11929 (Fsplit_char): Fix doc. Never return unknown.
11930
11931 * chartab.c (char_table_translate): Use CHARACTERP, not INTEGERP.
11932
11933 * coding.c (Fdefine_coding_system_alias): Update
11934 Vcoding_system_list.
11935
11936 * fontset.c (load_font_get_repertory): Pay attention to the case
11937 that ENCODING of a font is specified by a char-table.
11938
11939 * xterm.c (x_get_font_repertory): Handle the case that the
11940 encoding of font is other than Unicode.
11941
119422008-02-01 Kenichi Handa <handa@m17n.org>
11943
11944 * term.c (encode_terminal_code): Don't handle glyph-table. Check
11945 if a character is encodable by the terminal coding system. If
11946 not, produces proper number of `?'s. Update
11947 terminal_encode_buffer and terminal_encode_buf_size if necessary.
11948 (produce_glyphs): Check by CHAR_BYTE8_P, not SINGLE_BYTE_CHAR_P.
11949
119502008-02-01 Kenichi Handa <handa@m17n.org>
11951
11952 * term.c (terminal_encode_buffer, terminal_encode_buf_size): New
11953 variables.
11954 (encode_terminal_code): Change argument. Encode multiple
11955 characters at once. Store the result of encoding in
11956 terminal_encode_buffer.
11957 (write_glyphs, insert_glyphs): Adjust for the change of
11958 encode_terminal_code.
11959 (term_init): Initialize terminal_encode_buffer and
11960 terminal_encode_buf_size.
11961
11962 * coding.c (consume_chars): If coding->src_object is nil, don't
11963 check annotation.
11964
119652008-02-01 Kenichi Handa <handa@m17n.org>
11966
11967 * character.c (char_string): Use ASCII_CHAR_P instead of
11968 SINGLE_BYTE_CHAR_P.
11969
119702008-02-01 Kenichi Handa <handa@m17n.org>
11971
11972 * xdisp.c (handle_auto_composed_prop): Check if the last
11973 characters of auto-composed region is newly composed with the
11974 following characters.
11975 (handle_composition_prop): Fix checking of point being inside
11976 composition.
11977
119782008-02-01 Kenichi Handa <handa@m17n.org>
11979
11980 * fns.c (concat): Don't change multibyteness of the result by
11981 concatenating an 8-bit character.
11982
11983 * data.c (Faset): Check newelt by CHECK_CHARACTER. Don't change
11984 multibyteness of the result when newelt is an 8-bit character.
11985
119862008-02-01 Dave Love <fx@gnu.org>
11987
11988 * xmenu.c (find_and_call_menu_selection): Make menu_bar_items_used
11989 EMACS_INT.
11990
11991 * xfns.c (DefaultDepthOfScreen, x_encode_text): Remove unused vars.
11992
11993 * xfaces.c (face_numeric_value): Declare dim size_t.
11994 (Finternal_lisp_face_equal_p): Remove unused f.
11995
11996 * xdisp.c (BUILD_CHAR_GLYPH_STRINGS, display_and_set_cursor)
11997 (MATRIX_ROW): Remove unused vars.
11998 (draw_glyphs, x_insert_glyphs, fast_find_position)
11999 (fast_find_position, fast_find_string_pos): Use EMACS_INT for
12000 byte/char counts.
12001
12002 * regex.c (regex_compile): Remove unused var.
12003
12004 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
12005
12006 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
12007 (Faccessible_keymaps, where_is_internal): Remove unused vars.
12008
12009 * keyboard.c (cancel_hourglass_unwind): Return Qnil.
12010
12011 * frame.c (frame_name_fnn_p): Make len EMACS_INT.
12012
12013 * fileio.c (Fwrite_region): Remove unused var.
12014
12015 * dispnew.c (adjust_frame_glyphs_for_frame_redisplay)
12016 (adjust_frame_glyphs_for_window_redisplay): Remove unused ch_dim.
12017
12018 * composite.c (Fremove_list_of_text_properties): Declare.
12019
12020 * coding.c (inhibit_pre_post_conversion): Remove (unused).
12021 (alloc_destination, produce_chars): Use EMACS_INT for byte/char counts.
12022 (coding_inherit_eol_type): Remove unused attrs.
12023 (detect_coding): Cast arg of detect_eol.
12024
12025 * charset.c (syms_of_charset): Remove unused var p.
12026 (find_charsets_in_text, Ffind_charset_region): Use EMACS_INT for
12027 byte/char counts.
12028
12029 * casetab.c (set_case_table): Remove unused var.
12030
12031 * window.c (Fdisplay_buffer, Fframe_selected_window): Remove
12032 unused vars.
12033
120342008-02-01 Dave Love <fx@gnu.org>
12035
12036 * xterm.c (x_bitmap_mask): Declare.
12037
120382008-02-01 Dave Love <fx@gnu.org>
12039
12040 * xterm.c (x_term_init): Fix type error.
12041
12042 * lisp.h: Add Funibyte_char_to_multibyte.
12043
12044 * coding.c (Fread_coding_system): Fix arg of XSETSTRING.
12045 (Fset_coding_system_priority): Doc fix.
12046
12047 * ccl.c (ccl_driver): Fix arg of CHARACTERP.
12048
12049 * indent.c (check_composition): Make start and end EMACS_INT.
12050
12051 * character.c (lisp_string_width): Make ignore and end EMACS_INT.
12052
12053 * xdisp.c (handle_composition_prop, check_point_in_composition):
12054 Make buffer positions EMACS_INT.
12055
12056 * composite.c (find_composition, run_composition_function)
12057 (update_compositions, Ffind_composition_internal): Make buffer
12058 positions EMACS_INT.
12059
12060 * composite.h (find_composition, update_compositions): Make
12061 position args EMACS_INT.
12062
12063 * keyboard.c (adjust_point_for_property): Make beg and end EMACS_INT.
12064
12065 * intervals.c (get_property_and_range):
12066 * intervals.h (get_property_and_range): Make start and end EMACS_INT.
12067
12068 * unexalpha.c: Don't include varargs.h.
12069
120702008-02-01 Dave Love <fx@gnu.org>
12071
12072 * coding.h (ENCODE_UTF_8): New.
12073
12074 * Makefile.in (gtkutil.o): Depend on coding.h.
12075
12076 * coding.c (Fset_coding_system_priority): Doc fix.
12077
120782008-02-01 Kenichi Handa <handa@m17n.org>
12079
12080 * fileio.c (Finsert_file_contents): Call setup_coding_system in
12081 the case of auto saving.
12082
120832008-02-01 Andreas Schwab <schwab@suse.de>
12084
12085 * chartab.c (map_char_table, map_char_table_for_charset): Protect
12086 `range' from GC.
12087
120882008-02-01 Kenichi Handa <handa@m17n.org>
12089
12090 * coding.c (decode_coding_sjis): Check bytes more rigidly.
12091
120922008-02-01 Kenichi Handa <handa@m17n.org>
12093
12094 * fileio.c (choose_write_coding_system): Return a decided coding system.
12095 (Fwrite_region): Set Vlast_coding_system_used to the return value
12096 of choose_write_coding_system.
12097
120982008-02-01 Kenichi Handa <handa@m17n.org>
12099
12100 * charset.c (Fset_charset_priority): Pay attention to duplicated
12101 arguments.
12102
12103 * coding.c (QCcategory): New variable.
12104 (syms_of_coding): Defsym it. Set all elements of
12105 Vcoding_category_table and their symbol values.
12106 (Fset_coding_system_priority): Doc fix. Update symbol qvalues of
12107 coding-category-XXX, and coding-category-list.
12108 (Fdefine_coding_system_internal): Add category in the plist.
12109
121102008-02-01 Kenichi Handa <handa@m17n.org>
12111
12112 * callproc.c (Fcall_process): Handle carryover correctly.
12113
12114 * coding.c (decode_coding_iso_2022): Fix handling of invalid bytes.
12115 (raw_text_coding_system): Check NILP (coding_system).
12116 (coding_inherit_eol_type): Check NILP (coding_system) and
12117 NILP (parent).
12118 (consume_chars): Fix for the case of raw-text.
12119
12120 * process.c (read_process_output): Handle carryover correctly.
12121
121222008-02-01 Dave Love <fx@gnu.org>
12123
12124 * regex.c (re_search_2): Fix last change.
12125
121262008-02-01 Kenichi Handa <handa@m17n.org>
12127
12128 * regex.c (GET_CHAR_BEFORE_2): Check multibyte, not
12129 target_multibyte. Even in a unibyte case, return a converted
12130 multibyte char.
12131 (GET_CHAR_AFTER): New macro.
12132 (PATFETCH): Translate via multibyte char.
12133 (HANDLE_UNIBYTE_RANGE): Delete this macro.
12134 (SETUP_MULTIBYTE_RANGE): New macro.
12135 (regex_compile): Setup compiled code so that its multibyteness
12136 matches that of a target. Fix the handling of "[X-YZ]" using
12137 SETUP_MULTIBYTE_RANGE.
12138 (analyse_first) <charset>: For filling fastmap for all multibyte
12139 characters, don't check by BASE_LEADING_CODE_P.
12140 (re_search_2): Don't check RE_TARGET_MULTIBYTE_P (bufp). It is
12141 the same as RE_MULTIBYTE_P (bufp) now.
12142 (mutually_exclusive_p): Check by (! multibyte || IS_REAL_ASCII (c)).
12143 (TARGET_CHAR_AND_LENGTH): Delete this macro.
12144 (TRANSLATE_VIA_MULTIBYTE): New macro.
12145 (re_match_2_internal): Don't check RE_TARGET_MULTIBYTE_P (bufp).
12146 It is the same as RE_MULTIBYTE_P (bufp) now.
12147 <exactn>: Translate via multibyte.
12148 <anychar>: Fetch a character by RE_STRING_CHAR_AND_LENGTH. Don't
12149 translate it.
12150 <charset, charset_not>: Fetch a character by
12151 RE_STRING_CHAR_AND_LENGTH. Translate via multibyte.
12152 <duplicate>: Call bcmp_translate with the last arg `multibyte'.
12153 <wordbound, notwordbound, wordbeg, wordend, syntaxspec,
12154 notsyntaxspec, categoryspec, notcategoryspec> Fetch a character
12155 by GET_CHAR_AFTER.
12156 (bcmp_translate): Likewise.
12157
12158 * search.c (compile_pattern): Check the member target_multibyte,
12159 not the member multibyte of buf.
12160
12161 * lread.c (read1): While reading a string, set force_singlebyte
12162 and force_multibyte correctly.
12163
12164 * charset.c (Fset_unibyte_charset, init_charset_once): Fix setting
12165 up of unibyte_to_multibyte_table.
12166
121672008-02-01 Kenichi Handa <handa@m17n.org>
12168
12169 * coding.c (setup_coding_system): If coding has
12170 post-read-conversion or pre-write-conversion, set
12171 CODING_REQUIRE_DECODING_MASK and CODING_REQUIRE_ENCODING_MASK
12172 respectively.
12173 (decode_coding_gap): Run post-read-conversion if any.
12174
12175 * fileio.c (Finsert_file_contents): Even if we read into a
12176 unibyte buffer, check if we must decode the result or not.
12177
121782008-02-01 Kenichi Handa <handa@m17n.org>
12179
12180 * coding.c (make_conversion_work_buffer): Change the work buffer
12181 name to the same one as that of Emacs 21.
12182
121832008-02-01 Kenichi Handa <handa@m17n.org>
12184
12185 * coding.h (make_conversion_work_buffer): Adjust prototype.
12186 (code_conversion_restore): Don't extern it.
12187
12188 * coding.c (detected_mask): Delete unused variable.
12189 (decode_coding_iso_2022): Pay attention to the byte sequence of
12190 CTEXT extended segment, and retain those bytes as is.
12191 (decode_coding_ccl): Delete unused variable `valids'.
12192 (setup_coding_system): Delete unused variable `category'.
12193 (consume_chars): Delete unused variable `category'. Make it work
12194 for non-multibyte case.
12195 (make_conversion_work_buffer): Change argument.
12196 (saved_coding): Delete unused variable.
12197 (code_conversion_restore): Don't check saved_coding->destination.
12198 (code_conversion_save): New function.
12199 (decode_coding_gap, encode_coding_gap): Call code_conversion_save
12200 instead of record_unwind_protect.
12201 (decode_coding_object, encode_coding_object): Likewise. Recover PT.
12202 (detect_coding_system): Delete unused variable `mask'.
12203 (Fdefine_coding_system_internal): Delete unused variable id.
12204
12205 * fileio.c (kill_workbuf_unwind): New function.
12206 (Finsert_file_contents): On replacing, call
12207 make_conversion_work_buffer with correct args, and call
12208 record_unwind_protect with the first arg kill_workbuf_unwind.
12209
12210 * lisp.h (Fgenerate_new_buffer_name): EXFUN it.
12211
122122008-02-01 Kenichi Handa <handa@m17n.org>
12213
12214 * fontset.c (BASE_FONTSET_P): Check FONTSET_BASE, not FONTSET_NAME.
12215 (fontset_add): Fix for the case that TO is less than TO1.
12216 (Ffontset_info): Don't use fallback fontset on checking the
12217 default fontset.
12218 (dump_fontset): New function for debugging.
12219
12220 * coding.c (Fdefine_coding_system_internal): Fix for the case that
12221 coding_type is Qcharset.
12222
122232008-02-01 Kenichi Handa <handa@m17n.org>
12224
12225 * chartab.c (map_sub_char_table): New argument DEFAULT_VAL.
12226 (map_char_table): Don't inherit the value from the parent on
12227 initializing VAL. Adjust for the above change.
12228
122292008-02-01 Kenichi Handa <handa@m17n.org>
12230
12231 * coding.c (Qsignature, Qendian): Delete these variables.
12232 (syms_of_coding): Don't initialize them.
12233 (CATEGORY_MASK_UTF_16_AUTO): New macro.
12234 (detect_coding_utf_16): Add CATEGORY_MASK_UTF_16_AUTO in
12235 detect_info->found.
12236 (decode_coding_utf_16): Don't detect BOM here.
12237 (encode_coding_utf_16): Produce BOM if CODING_UTF_16_BOM (coding)
12238 is NOT utf_16_without_bom.
12239 (setup_coding_system): For a coding system of type utf-16, check
12240 if the attribute :endian is Qbig or not (not nil or not), and set
12241 CODING_REQUIRE_DETECTION_MASK if BOM detection is required.
12242 (detect_coding): If coding type is utf-16 and BOM detection is
12243 required, detect it.
12244 (Fdefine_coding_system_internal): For a coding system of type
12245 utf-16, check if the attribute :endian is Qbig or not (not nil or not).
12246
122472008-02-01 Kenichi Handa <handa@m17n.org>
12248
12249 * coding.c (coding_set_source): Fix for the case that the current
12250 buffer is different from coding->src_object.
12251 (decode_coding_object): Don't use the conversion work buffer if
12252 DST_OBJECT is a buffer.
12253
122542008-02-01 Dave Love <fx@gnu.org>
12255
12256 * lread.c (read_emacs_mule_char) [len==2]: Index
12257 emacs_mule_charset correctly.
12258
122592008-02-01 Dave Love <fx@gnu.org>
12260
12261 * coding.c (Qbig5, Vbig5_coding_system, CATEGORY_MASK_BIG5)
12262 (detect_coding_big5, decode_coding_big5, encode_coding_big5)
12263 (Fdecode_big5_char, Fencode_big5_char): Delete. (Big5 no longer
12264 treated specially.)
12265 (setup_coding_system, coding_category, CATEGORY_MASK_ANY)
12266 (detected_mask): Remove Big5 bits.
12267
122682008-02-01 Kenichi Handa <handa@m17n.org>
12269
12270 The following changes are to make the font rescaling facility
12271 compatible with Emacs 21.
12272
12273 * xfaces.c (Vface_font_rescale_alist): Rename from
12274 Vface_resizing_fonts.
12275 (struct font_name): Rename member resizing_ratio to rescale_ratio.
12276 (font_rescale_ratio): Rename from font_resizing_ratio.
12277 (split_font_name): Set font->rescale_ratio.
12278 (better_font_p): Pay attention to font->rescale_ratio.
12279 (build_scalable_font_name): Likewise. Change RESX, and RESY
12280 fields.
12281 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
12282
122832008-02-01 Kenichi Handa <handa@m17n.org>
12284
12285 * coding.c (Qutf_16_be_nosig, Qutf_16_be, Qutf_16_le_nosig)
12286 (Qutf_16_le): Remove these variables.
12287 (syms_of_coding): Don't DEFSYM them.
12288 (decode_coding_utf_16): Fix handling of BOM.
12289 (encode_coding_utf_16): Fix handling of BOM.
12290
122912008-02-01 Kenichi Handa <handa@m17n.org>
12292
12293 * fileio.c (Finsert_file_contents): On replacing, before decoding
12294 the file into the work buffer, set point of the work buffer to the end.
12295
122962008-02-01 Dave Love <fx@gnu.org>
12297
12298 * coding.c (Fcheck_coding_systems_region): Fix type errors.
12299
123002008-02-01 Dave Love <fx@gnu.org>
12301
12302 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
12303 and fix C types.
12304
123052008-02-01 Kenichi Handa <handa@m17n.org>
12306
12307 * xdisp.c (SKIP_GLYPHS): New macro.
12308 (set_cursor_from_row): Pay attention to string display properties.
12309
12310 * category.c (copy_category_entry): Fix for the case that RANGE
12311 is an integer.
12312
12313 * xterm.c (x_encode_char): Call ccl_driver with the last arg Qnil.
12314
12315 * w32term.c (w32_encode_char): Call ccl_driver with the last arg Qnil.
12316
123172008-02-01 Kenichi Handa <handa@m17n.org>
12318
12319 * charset.c (Fcharset_id_internal): New function.
12320 (syms_of_charset): Defsubr it.
12321
12322 * coding.c (decode_coding_ccl, encode_coding_ccl): Call ccl_driver
12323 with the last arg charset_list acquired from coding.
12324 (Fdefine_coding_system_internal): For ccl-based coding system, fix
12325 the attribute coding_attr_ccl_valids.
12326
12327 * coding.h (enum define_coding_ccl_arg_index): Set the first
12328 member coding_arg_ccl_decoder to coding_arg_max.
12329
12330 * ccl.h (ccl_driver): Adjust prototype.
12331
12332 * ccl.c (CCL_DECODE_CHAR, CCL_ENCODE_CHAR): New macros.
12333 (ccl_driver): New arg CHARSET_LIST. Use the above macros instead
60612c8f 12334 of DECODE_CHAR, ENCODE_CHAR, CHAR_CHARSET.
aac0c6e3
MR
12335 (Fccl_execute, Fccl_execute_on_string): Call ccl_driver with the
12336 last arg Qnil.
12337
123382008-02-01 Kenichi Handa <handa@m17n.org>
12339
12340 * charset.h (ENCODE_CHAR): If the method is SUBSET or SUPERSET,
12341 call encode_char.
12342
12343 * charset.c (encode_char): Fix handling of methods SUBSET and SUPERSET.
12344
123452008-02-01 Dave Love <fx@gnu.org>
12346
12347 * composite.c (syms_of_composite): Make composition_hash_table weak.
12348
123492008-02-01 Kenichi Handa <handa@m17n.org>
12350
12351 * dispextern.h (check_face_attributes, generate_ascii_font_name)
12352 (font_name_registry): Don't extern them.
12353 (split_font_name_into_vector, build_font_name_from_vector): Extern them.
12354
12355 * fontset.h (Qfontset): Don't extern it.
12356 (new_fontset_from_font_name): Extern it.
12357
12358 * fontset.c: Give 8 extra slots to fontset objects.
12359 (Qfontset_info): New variable.
12360 (syms_of_fontset): Defsym it.
12361 (FONTSET_FALLBACK): New macro.
12362 (fontset_face): Try also the default fontset.
12363 (make_fontset): Realize a fallback fontset from the default fontset.
12364 (generate_ascii_font_name): Move from xfaces.c. Rewritten by
12365 using split_font_name_into_vector and build_font_name_from_vector.
12366 (Fset_fontset_font): Access the elements of font_spec by enum
12367 FONT_SPEC_INDEX. If font_spec is a string, extract the registry
12368 name by using split_font_name_into_vector.
12369 (Fnew_fontset): If no ASCII font is specified in FONTLIST,
12370 generate a proper font name from the fontset name. Update
12371 Vfontset_alias_alist.
12372 (n_auto_fontsets): New variable.
12373 (new_fontset_from_font_name): New function.
12374 (Ffont_info): Store the information about fonts generated from the
12375 default fontset in the first extra slot of the returned char-table.
12376
12377 * xfaces.c (generate_ascii_font_name): Move to fontset.c.
12378 (font_name_registry): Delete function.
12379 (split_font_name_into_vector): New function.
12380 (build_font_name_from_vector): New function.
12381 (font_list): The argument REGISTRY is now a list of registry names.
12382 (choose_face_font): If we are choosing an ASCII font, and ATTRS
12383 specifies an explicit font name, return the name as is. Make a
12384 list of registy names.
12385
12386 * xfns.c (x_set_font, x_create_tip_frame): Adjust for the change
12387 of x_new_fontset.
12388 (Fx_create_frame): Don't call x_new_fontset here. Just use
12389 x_list_fonts to check the existence of fonts.
12390
12391 * xterm.h (x_new_fontset): Adjust prototype.
12392
12393 * xterm.c (x_new_fontset): Change the arg FONTSETNAME to Lisp
12394 string. Use new_fontset_from_font_name to create a fontset from a
12395 font name.
12396
123972008-02-01 Kenichi Handa <handa@m17n.org>
12398
12399 * syntax.c (Vfind_word_boundary_function_table): New name for
12400 Vnext_word_boundary_function_table.
12401 (find-word-boundary-function-table): New name for
12402 next-word-boundary-function-table.
12403
124042008-02-01 Dave Love <fx@gnu.org>
12405
12406 * Makefile.in: Fix some dependencies.
12407
12408 * keymap.c (Fapropos_internal): Don't gcpro apropos_predicate but
12409 set it to nil before returning.
12410
12411 * composite.c (update_compositions): Fix type error.
12412
12413 * syntax.c (skip_chars, skip_syntaxes): Fix type errors.
12414
124152008-02-01 Kenichi Handa <handa@m17n.org>
12416
12417 * xterm.c (x_new_font): Optimize for the case that the font is
12418 already set for the frame.
12419
124202008-02-01 Kenichi Handa <handa@m17n.org>
12421
12422 * chartab.c (char_table_ascii): Check if the char table contents
12423 is sub-char-table or not.
12424 (char_table_set, char_table_set_range): Fix argument to
12425 char_table_ascii.
12426
12427 * coding.c (CATEGORY_MASK_RAW_TEXT): New macro.
12428 (detect_coding_utf_8, detect_coding_utf_16)
12429 (detect_coding_emacs_mule, detect_coding_iso_2022)
12430 (detect_coding_sjis, detect_coding_big5)
12431 (detect_coding_ccl, detect_coding_charset): Change argument MASK
12432 to DETECT_INFO. Update DETECT_INFO and return 1 if the byte
12433 sequence is valid in this coding system. Change callers.
12434 (MAX_ANNOTATION_LENGTH): New macro.
12435 (ADD_ANNOTATION_DATA): New macro.
12436 (ADD_COMPOSITION_DATA): Change argument. Change callers. Call
12437 ADD_ANNOTATION_DATA. Change the format of annotation data.
12438 (ADD_CHARSET_DATA): New macro.
12439 (emacs_mule_char): New argument ID. Change callers.
12440 (decode_coding_emacs_mule, decode_coding_iso_2022)
12441 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
12442 Produce charset annotation data in coding->charbuf.
12443 (encode_coding_emacs_mule, encode_coding_iso_2022): Pay attention
12444 to charset annotation data in coding->charbuf.
12445 (setup_coding_system): Add CODING_ANNOTATE_CHARSET_MASK
12446 coding->common_flags if the coding system is iso-2022 based and
12447 uses designation.
12448 (produce_composition): Adjust for the new annotation data format.
12449 (produce_charset): New function.
12450 (produce_annotation): Handle charset annotation.
12451 (handle_composition_annotation, handle_charset_annotation): New
12452 functions.
12453 (consume_chars): Handle charset annotation. Utilize the above two
12454 functions.
12455 (encode_coding_object): If SRC_OBJECT and DST_OBJECT are the same
12456 buffer, get the deleted text as a string and set
12457 coding->src_object to that string.
12458 (detect_coding, detect_coding_system): Use the new struct
12459 coding_detection_info.
12460
12461 * coding.h (struct coding_detection_info): New structure.
12462 (struct coding_system): Adjust prototype of the member `detector'.
12463 (CODING_ANNOTATE_CHARSET_MASK): New macro.
12464
124652008-02-01 Kenichi Handa <handa@m17n.org>
12466
12467 * insdel.c (insert_from_gap): Fix argument to offset_intervals.
12468
124692008-02-01 Dave Love <fx@gnu.org>
12470
12471 * keymap.c (apropos_predicate, apropos_accumulate): Declare static.
12472 (Fapropos_internal): Don't gcpro apropos_accumulate. Set result
12473 to new local and nullify apropos_accumulate before returning.
12474 (syms_of_keymap): Staticpro and initialize apropos_accumulate.
12475
124762008-02-01 Kenichi Handa <handa@m17n.org>
12477
12478 * charset.c (Fdefine_charset_internal): Setup charset.fast_map
12479 correctly.
e3eea1fc 12480
aac0c6e3
MR
124812008-02-01 Dave Love <fx@gnu.org>
12482
12483 * fns.c (Flanginfo): Call synchronize_system_time_locale.
12484
124852008-02-01 Kenichi Handa <handa@m17n.org>
12486
12487 The following changes are to make character composition happen
12488 automatically on displaying.
12489
12490 * Makefile.in (lisp, shortlisp): Add composite.elc.
12491
12492 * composite.h (Qauto_composed, Vauto_composition_function)
12493 (Qauto_composition_function): Extern them.
12494
12495 * composite.c (Vcomposition_function_table)
12496 (Qcomposition_function_table): Delete variables.
12497 (Qauto_composed, Vauto_composition_function)
12498 (Qauto_composition_function): New variables.
12499 (run_composition_function): Don't call
12500 compose-chars-after-function.
12501 (update_compositions): Clear `auto-composed' text property.
12502 (compose_chars_in_text): Delete this function.
12503 (syms_of_composite): Staticpro Qauto_composed and
12504 Qauto_composition_function. Declare Vauto_composition_function as
12505 a Lisp variable.
12506
12507 * dispextern.h (enum prop_idx): Add member AUTO_COMPOSED_PROP_IDX.
12508
12509 * xdisp.c (it_props): Add an entry for Qauto_composed.
12510 (handle_auto_composed_prop): New function.
12511
12512 * xselect.c (selection_data_to_lisp_data): Don't call
12513 compose_chars_in_text.
12514
125152008-02-01 Dave Love <fx@gnu.org>
12516
12517 * keyboard.c (read_char): Modify checking around use of
12518 Vkeyboard_translate_table.
12519
12520 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
12521 and fix C types.
12522
125232008-02-01 Kenichi Handa <handa@m17n.org>
12524
12525 * coding.c (decode_coding_utf_8, decode_coding_emacs_mule)
12526 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
12527 (decode_coding_charset, produce_chars): When eol_type is Qdos, handle
12528 the case that the last byte is '\r' correctly.
12529 (decode_coding): Flush out the unprocessed data correctly.
12530 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK bit of coding->mode.
12531
125322008-02-01 Dave Love <fx@gnu.org>
12533
12534 * xterm.c (XTread_socket): Fix changes for defined keysyms.
12535 Add XK_ISO... case.
12536 (xaw_scroll_callback): Revert last change.
12537
125382008-02-01 Kenichi Handa <handa@m17n.org>
12539
12540 * charset.c (Fset_charset_priority): Update Viso_2022_charset_list.
12541
125422008-02-01 Kenichi Handa <handa@m17n.org>
12543
12544 * xfaces.c (Vface_resizing_fonts): New variable.
12545 (struct font_name): New member `resizing_ratio'.
12546 (font_resizing_ratio): New function.
12547 (split_font_name): Set font->resizing_ratio.
12548 (better_font_p): Pay attention to font->resizing_ratio.
12549 (build_scalable_font_name): Likewise. Don't change POINT_SIZE,
12550 RESX, and RESY fields.
12551 (try_alternative_families): Try scalable fonts if
12552 Vscalable_fonts_allowed is not Qt.
12553 (syms_of_xfaces): Declare Vface_resizing_fonts as a Lisp variable.
12554
125552008-02-01 Dave Love <fx@gnu.org>
12556
12557 * xterm.c (xaw_scroll_callback): Cast correctly.
12558
125592008-02-01 Dave Love <fx@gnu.org>
12560
12561 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extend.
12562 (lispy_kana_keys): Comment out.
12563 (make_lispy_event) [XK_kana_A]: Comment out.
12564
12565 * xterm.c (xaw_scroll_callback): Cast call_data.
12566 (XTread_socket): Deal with ASCII keysyms.
12567 (syms_of_xterm) <Vx_keysym_table>: Fix args of make_hash_table.
12568
125692008-02-01 Dave Love <fx@gnu.org>
12570
12571 * xterm.c (Vx_keysym_table): New.
12572 (syms_of_xterm): Initialize it.
12573 (XTread_socket): Use it.
12574 From head: Eliminate incorrect optimization that tried to avoid
12575 decoding the output of X*LookupString.
12576 (x_get_font_repertory): Delete charset declaration.
12577
125782008-02-01 Kenichi Handa <handa@m17n.org>
12579
12580 * coding.c (detect_coding_charset): If only ASCII bytes are found,
12581 return 0.
12582 (Fdefine_coding_system_internal): Setup
12583 CODING_ATTR_ASCII_COMPAT (attrs) correctly.
12584
125852008-02-01 Dave Love <fx@gnu.org>
12586
12587 * coding.c (Fcheck_coding_system): Doc fix.
12588
12589 * editfns.c (Finsert_byte): Return a proper value.
12590
125912008-02-01 Kenichi Handa <handa@m17n.org>
12592
12593 * coding.c (decode_coding): Fix args to translate_chars. Pay
12594 attention to Vstandard_translation_table_for_decode.
12595 (encode_coding): Fix args to translate_chars. Pay attention to
12596 Vstandard_translation_table_for_encode.
12597
12598 * data.c (Faset): Check NEWELT by ASCII_CHAR_P, not by
12599 SINGLE_BYTE_CHAR_P.
12600
12601 * editfns.c (general_insert_function): Check VAL by ASCII_CHAR_P,
12602 not by SINGLE_BYTE_CHAR_P.
12603
12604 * fns.c (concat): Check CH by ASCII_CHAR_P, not by
12605 SINGLE_BYTE_CHAR_P.
12606
12607 * insdel.c (copy_text): Check C by ASCII_CHAR_P, not by
12608 SINGLE_BYTE_CHAR_P.
12609
12610 * keymap.c (Ftext_char_description): Check C by ASCII_CHAR_P, not
12611 by SINGLE_BYTE_CHAR_P.
12612
12613 * search.c (Freplace_match): Check C by ASCII_CHAR_P, not by
12614 SINGLE_BYTE_CHAR_P.
12615
126162008-02-01 Dave Love <fx@gnu.org>
12617
12618 * fns.c (Fstring_as_multibyte, Fstring_to_multibyte): Doc fix.
12619
126202008-02-01 Dave Love <fx@gnu.org>
12621
12622 * fns.c (Flanginfo): Fix typo.
12623
12624 * unexelf.c (unexec): Make last change conditional on Irix 6.5.
12625
126262008-02-01 Kenichi Handa <handa@m17n.org>
12627
12628 * coding.c (detect_coding_utf_8, detect_coding_utf_16)
12629 (detect_coding_emacs_mule, detect_coding_iso_2022)
12630 (detect_coding_sjis, detect_coding_big5, detect_coding_ccl): Check
12631 incomplete byte sequence. Don't update *mask when correctly detected.
12632 (decode_coding_sjis): Fix decoding of katakana-jisx0201.
12633 (detect_eol): Delete the argument CODING, and add the argument CATEGORY.
12634 (detect_coding, detect_coding_system): Adjust for the changes above.
12635
126362008-02-01 Kenichi Handa <handa@m17n.org>
12637
12638 * character.c (char_string): Rename from
12639 char_string_with_unification. Pay attention to CHAR_MODIFIER_MASK.
12640 (string_char): Rename from string_char.
12641
12642 * character.h (CHAR_STRING, CHAR_STRING_ADVANCE): Call char_string
12643 if C is greater than MAX_3_BYTE_CHAR.
12644 (STRING_CHAR, STRING_CHAR_AND_LENGTH, STRING_CHAR_ADVANCE): Call
12645 string_char instead of string_char_with_unification.
12646
126472008-02-01 Dave Love <fx@gnu.org>
12648
12649 * coding.c (decode_coding_utf_8): Treat surrogates as invalid.
12650
126512008-02-01 Kenichi Handa <handa@m17n.org>
12652
12653 * keymap.c (push_key_description): Pay attention to force_multibyte.
12654
12655 * regex.c (re_search_2): Fix for the case of unibyte buffer.
12656
126572008-02-01 Dave Love <fx@gnu.org>
12658
12659 * charset.c (define_charset_internal): Rename `supprementary'.
12660
12661 * Makefile.in (lisp, shortlisp): Remove latin-N.
12662
126632008-02-01 Dave Love <fx@gnu.org>
12664
12665 * xfns.c (x_window, x_window): Use use_xim.
12666
12667 * xterm.c (use_xim): Initialize.
12668 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
12669 (x_term_init): Maybe set use_xim.
12670
12671 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
12672
126732008-02-01 Kenichi Handa <handa@m17n.org>
12674
12675 * search.c (search_buffer): Fix case-fold-search of multibyte
12676 characters.
12677 (boyer_moore): Rename the last argument to char_high_bits.
12678
126792008-02-01 Kenichi Handa <handa@m17n.org>
12680
12681 * xdisp.c (display_string): Fix for the case of zero width glyph.
12682
12683 * xfns.c (x_set_font): Change the error message of the case that
12684 x_new_fontset returns Qt.
12685
12686 * xfaces.c (set_lface_from_font_name): Reject the default fontset.
12687 (Finternal_set_lisp_face_attribute): Use signal_error for the
12688 error of invalid fontset.
12689
12690 * xterm.c (x_new_fontset): If FONTSETNAME specifies the default
12691 fontset, return Qt.
12692
126932008-02-01 Dave Love <fx@gnu.org>
12694
12695 * unexelf.c (unexec): Make .got handling not SGI-specific.
12696
12697 * syntax.c (syms_of_syntax) <multibyte-syntax-as-symbol>: Doc fix.
12698
12699 * regex.c: Use `ifdef HAVE_ALLOCA_H', not `if HAVE_ALLOCA_H'.
12700
12701 * keyboard.c (read_key_sequence): Fix type error.
12702
12703 * buffer.c (Fset_buffer_multibyte, Fset_buffer_multibyte): Fix
12704 type error.
12705
12706 * fontset.c (fontset_add): Return Lisp_Object.
12707
127082008-02-01 Dave Love <fx@gnu.org>
12709
12710 * charset.h (charset_ordered_list_tick): Declare extern.
12711
127122008-02-01 Kenichi Handa <handa@m17n.org>
12713
12714 The following changes (and some of 2008-02-01 changes of mine) are
12715 for handling syntax, category, and case conversion for unibyte
12716 characters by converting them to multibyte on the fly. With these
12717 changes, we don't have to setup syntax and case tables for unibyte
12718 characters in each language environment.
12719
12720 * abbrev.c (Fexpand_abbrev): Convert a unibyte character to
12721 multibyte if necessary.
12722
12723 * bytecode.c (Fbyte_code): Likewise.
12724
12725 * character.h (LEADING_CODE_LATIN_1_MIN)
12726 (LEADING_CODE_LATIN_1_MAX): New macros.
12727 (unibyte_to_multibyte_table): Extern it.
12728 (unibyte_char_to_multibyte): New macro.
12729 (MAKE_CHAR_MULTIBYTE): Use unibyte_to_multibyte_table.
12730 (CHAR_LEADING_CODE): New macro.
12731 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): New macro.
12732
12733 * character.c (unibyte_to_multibyte_table): New variable.
12734 (unibyte_char_to_multibyte): Move to character.h and define as macro.
12735 (multibyte_char_to_unibyte): If C is an eight-bit character,
12736 convert it to the corresponding byte value.
12737
12738 * charset.c (Fset_unibyte_charset): If the dimension of CHARSET is
12739 not 1, signals an error. Update the elements of
12740 unibyte_to_multibyte_table.
12741 (init_charset_once): Initialize unibyte_to_multibyte_table.
12742 (syms_of_charset): Define the charset `iso-8859-1'.
12743
12744 * cmds.c (internal_self_insert): In a multibyte buffer, insert C
12745 as is without converting it to unibyte. In a unibyte buffer,
12746 convert C to multibyte before checking the syntax.
12747
12748 * lisp.h (unibyte_char_to_multibyte): Delete extern.
12749
12750 * minibuf.c (Fminibuffer_complete_word): Use the macro
12751 FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE.
12752
12753 * regex.h (struct re_pattern_buffer): New member target_multibyte.
12754
12755 * regex.c (RE_TARGET_MULTIBYTE_P): New macro.
12756 (GET_CHAR_BEFORE_2): Check target_multibyte, not multibyte. If
12757 that is zero, convert an eight-bit char to multibyte.
12758 (MAKE_CHAR_MULTIBYTE, CHAR_LEADING_CODE): New dummy new macros for
12759 non-emacs case.
12760 (PATFETCH): Convert an eight-bit char to multibyte.
12761 (HANDLE_UNIBYTE_RANGE): New macro.
12762 (regex_compile): Setup the compiled pattern for multibyte chars
12763 even if the given regex string is unibyte. Use PATFETCH_RAW
12764 instead of PATFETCH in many places. To handle `charset'
12765 specification of unibyte, call HANDLE_UNIBYTE_RANGE. Use bitmap
12766 only for ASCII chars.
12767 (analyse_first) <exactn>: Simplify because the compiled pattern
12768 is multibyte.
12769 <charset_not>: Setup fastmap from bitmap only for ASCII chars.
12770 <charset>: Use CHAR_LEADING_CODE to get leading codes.
12771 <categoryspec>: If multibyte, setup fastmap only for ASCII chars here.
12772 (re_compile_fastmap) [emacs]: Call analyse_first with the arg
12773 multibyte always 1.
12774 (re_search_2): In emacs, set the locale variable multibyte to 1,
12775 otherwise to 0. New local variable target_multibyte. Check it
12776 to decide the multibyteness of STR1 and STR2. If
12777 target_multibyte is zero, convert unibyte chars to multibyte
12778 before translating and checking fastmap.
12779 (TARGET_CHAR_AND_LENGTH): New macro.
12780 (re_match_2_internal): In emacs, set the locale variable multibyte
12781 to 1, otherwise to 0. New local variable target_multibyte. Check
12782 it to decide the multibyteness of STR1 and STR2. Use
12783 TARGET_CHAR_AND_LENGTH to fetch a character from D.
12784 <charset, charset_not>: If multibyte is nonzero, check fastmap
12785 only for ASCII chars. Call bcmp_translate with
12786 target_multibyte, not with multibyte.
12787 <begline>: Declare the local variable C as `unsigned'.
12788 (bcmp_translate): Change the last arg name to target_multibyte.
12789
12790 * search.c (compile_pattern_1): Don't adjust the multibyteness of
12791 the regexp pattern and the matching target. Set cp->buf.multibyte
12792 to the multibyteness of the regexp pattern. Set
12793 cp->but.target_multibyte to the multibyteness of the matching target.
12794 (wordify): Use FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE instead of
12795 FETCH_STRING_CHAR_ADVANCE.
12796 (Freplace_match): Convert unibyte chars to multibyte.
12797
12798 * syntax.c (char_quoted, back_comment, scan_words)
12799 (Fforward_comment, scan_lists, Fbackward_prefix_chars)
12800 (scan_sexps_forward): Use FETCH_CHAR_AS_MULTIBYTE to convert
12801 unibyte chars to multibyte.
12802 (skip_chars): Delete the arg syntaxp, and move the code for
12803 handling syntaxes to skip_syntaxes. Change callers.
12804 Fix the case that the multibyteness of STRING and the current
12805 buffer doesn't match.
12806 (skip_syntaxes): New function.
12807 (SYNTAX_WITH_MULTIBYTE_CHECK): Check C by ASCII_CHAR_P, not by
12808 SINGLE_BYTE_CHAR_P.
12809
128102008-02-01 Kenichi Handa <handa@m17n.org>
12811
12812 * xfaces.c (QCfontset): New variable.
12813 (LFACE_FONTSET): New macro.
12814 (check_lface_attrs): Check also LFACE_FONTSET_INDEX.
12815 (set_lface_from_font_name): Setup LFACE_FONTSET (lface).
12816 (Finternal_set_lisp_face_attribute)
12817 (Finternal_get_lisp_face_attribute): Handle QCfontset.
12818 (lface_same_font_attributes_p): Fix checking of LFACE_FONT_INDEX,
12819 check also LFACE_FONTSET_INDEX.
12820 (face_fontset): Check attrs[LFACE_FONTSET_INDEX], not
12821 attrs[LFACE_FONT_INDEX].
12822 (syms_of_xfaces): Intern and staticpro QCfontset.
12823
12824 * dispextern.h (enum lface_attribute_index): New member
12825 LFACE_FONTSET_INDEX.
12826
12827 * fns.c (base64_encode_1): Handle eight-bit chars correctly.
12828
128292008-02-01 Kenichi Handa <handa@m17n.org>
12830
12831 * coding.c (coding_set_destination): Fix coding->destination for
12832 the case converting a region.
12833 (encode_coding_utf_8): Encode eight-bit chars as single byte.
12834 (encode_coding_object): Fix coding->dst_pos and
12835 coding->dst_pos_byte for the case converting a region.
12836
12837 * insdel.c (insert_from_gap): Make it work even if PT != GTP.
12838
12839 * character.h (BYTE8_STRING): New macro.
12840
12841 * fns.c (base64_decode_1): Insert eight-bit chars correctly.
12842
128432008-02-01 Kenichi Handa <handa@m17n.org>
12844
12845 * xdisp.c (get_next_display_element): Don't display unibyte 8-bit
12846 characters by octal form.
12847
12848 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
12849
12850 * buffer.h (_fetch_multibyte_char_len): Delete extern.
12851 (FETCH_MULTIBYTE_CHAR, BUF_FETCH_MULTIBYTE_CHAR): Don't use
12852 _fetch_multibyte_char_len.
12853 (FETCH_CHAR_AS_MULTIBYTE): New macro.
12854
12855 * casetab.c (set_canon, set_identity, shuffle): Simplify.
12856
12857 * casefiddle.c (casify_object): Simplify. Handle the case that
12858 the case conversion change the byte length.
12859 (casify_region): Likewise.
12860
12861 * character.h (MAKE_CHAR_UNIBYTE, MAKE_CHAR_MULTIBYTE): New macros.
12862
12863 * character.c (_fetch_multibyte_char_len): Delete this variable.
12864 (syms_of_character): Setup Vprintable_chars.
12865
12866 * editfns.c (Fchar_equal): Fix for the unibyte case.
12867 (Finsert_byte): New function.
12868 (syms_of_editfns): Defsubr it.
12869
12870 * keyboard.c (read_key_sequence): Use ~CHAR_MODIFIER_MASK instead
12871 of direct code 0x3ffff.
12872
12873 * search.c (Freplace_match): Fix for the unibyte case.
12874
128752008-02-01 Kenichi Handa <handa@m17n.org>
12876
12877 * lread.c (safe_to_load_p): Fix the logic.
12878
12879 * syntax.c (scan_words): Don't treat characters belonging to
12880 different scripts as constituting a word.
12881
12882 * editfns.c (Fformat): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
12883
12884 * fontset.c (Fset_fontset_font): Treat `ascii' as charset, not script.
12885
12886 * emacs.c (main): In the case of --unibyte, instead of aborting on
12887 finding non-empty buffer, make it unibyte.
12888
128892008-02-01 Kenichi Handa <handa@m17n.org>
12890
12891 * xterm.c (x_new_fontset): Call `create-fontset-from-ascii-font'
12892 to create a fontset.
12893
128942008-02-01 Dave Love <fx@gnu.org>
12895
12896 * character.c (Funibyte_char_to_multibyte): Doc fix.
12897
12898 * xfns.c [HAVE_STDLIB_H]: Fix last change.
12899
129002008-02-01 Kenichi Handa <handa@m17n.org>
12901
12902 * fontset.c (fontset_add): Make the type `int'.
12903 (fontset_id_valid_p): Define it if FONTSET_DEBUG is defined.
12904
12905 * character.c (unibyte_char_to_multibyte)
12906 (multibyte_char_to_unibyte, Funibyte_char_to_multibyte): Refer to
12907 charset_unibyte, not charset_primary.
12908
12909 * charset.h (charset_unibyte): Extern it instead of charset_primary.
12910
12911 * charset.c (charset_unibyte): Rename from charset_primary.
12912 (Funibyte_charset): Rename from Fprimary_charset.
12913 (Fset_unibyte_charset): Rename from Fset_primary_charset.
12914 (syms_of_charset): Adjust for the above changes.
12915
12916 * w32term.c (x_produce_glyphs): Use ASCII_CHAR_P, not
12917 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
12918 it->multibyte_p is zero.
12919
12920 * lisp.h (nonascii_insert_offset, Vnonascii_translation_table):
12921 Delete extern.
12922
129232008-02-01 Kenichi Handa <handa@m17n.org>
12924
12925 * coding.c (Fdefine_coding_system_internal): Fix category setting
12926 for a coding system of type iso-2022.
12927
129282008-02-01 Kenichi Handa <handa@m17n.org>
12929
12930 * fontset.h (FS_LOAD_FONT): Call fs_load_font with the arg CHARSET -1.
12931
129322008-02-01 Kenichi Handa <handa@m17n.org>
12933
12934 * syntax.c (Vnext_word_boundary_function_table): New variable.
12935 (next-word-boundary-function-table): Declare it as a Lisp variable
12936 in syms_of_syntax.
12937 (scan_words): Call functions in Vnext_word_boundary_function_table
12938 if any.
12939
12940 * xterm.c (x_load_font): Initialize fontp->fontset to -1.
12941
12942 * fontset.c (fs_load_font): If fontp->charset is not negative,
12943 return fontp without setting its members.
12944
129452008-02-01 Dave Love <fx@gnu.org>
12946
12947 * xfns.c [HAVE_STDLIB_H]: Change logic (instead of fixing typo).
12948
12949 * m/sparc.h (HAVE_ALLOCA): Delete.
12950
12951 * s/irix6-5.h: Don't include strings.h.
12952 (bcopy, bzero, bcmp): Don't undef.
12953
12954 * s/irix6-0.h (bcopy, bzero, bcmp): Don't undef.
12955
12956 * s/usg5-4.h (NO_SIOCTL_H): Don't define.
12957 (TIOCSIGSEND): Don't test IRIX6.
12958 (bcopy, bzero, bcmp): Define conditionally.
12959
129602008-02-01 Kenichi Handa <handa@m17n.org>
12961
12962 * buffer.c (Qas, Qmake, Qto): New variables.
12963 (Fset_buffer_multibyte): New optional arg METHOD. Change caller.
12964 (syms_of_buffer): Intern and staticpro Qas, Qmake, and Qto.
12965
12966 * callproc.c (Fcall_process): Don't call insert_1_both directly if
12967 we are inserting a process output into a multibyte buffer.
12968
12969 * character.h (CHAR_TO_BYTE8): If C is not eight-bit char, call
12970 multibyte_char_to_unibyte.
12971
12972 * character.c (Funibyte_char_to_multibyte): If C can't be decoded
12973 by the primary charset, make it eight-bit char.
12974 (Fmultibyte_char_to_unibyte): Call CHAR_TO_BYTE8.
12975
12976 * charset.c (charset_eight_bit, Qeight_bit_control): New variables.
12977 (charset_8_bit__control, charset_8_bit_graphic)
12978 (Qeight_bit_control, Qeight_bit_graphic): Delete these variables.
12979 (define_charset_internal): New function.
12980 (syms_of_charset): Call define_charset_internal for pre-defined
12981 charsets.
12982
12983 * charset.h (charset_8_bit): Extern it.
12984
12985 * coding.c (make_conversion_work_buffer): Adjust for the change
12986 of Fset_buffer_multibyte.
12987 (encode_coding_raw_text): Increment p0 in the loop.
12988
12989 * lisp.h (Fset_buffer_multibyte): Adjust prototype.
12990
12991 * xdisp.c (setup_echo_area_for_printing, set_message_1): Adjust
12992 for the change of Fset_buffer_multibyte.
12993
12994 * fns.c (Fstring_to_multibyte): New function.
12995 (syms_of_fns): Declare Fstring_to_multibyte as Lisp subroutine.
12996
129972008-02-01 Dave Love <fx@gnu.org>
12998
12999 * xfns.c (x_put_x_image): Declare args.
13000
13001 * xfaces.c (font_name_registry, choose_face_font): Delete unused vars.
13002 (try_font_list): Declare an arg.
13003
13004 * xdisp.c (message2_nolog, set_message): Declare an arg.
13005
13006 * terminfo.c (tparam): Declare an arg. Use P_ to declare tparm.
13007
13008 * syntax.c (scan_sexps_forward): Declare an arg.
13009
13010 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
13011 Declare an arg.
13012
13013 * lisp.h (Fnew_fontset): Declare.
13014
13015 * keymap.c (push_key_description): Call CHARACTERP correctly.
13016
13017 * fontset.c (fontset_add): Declare args. Call make_number correctly.
13018 (face_for_char): Delete unused vars.
13019 (Fset_fontset_font): Doc fix. Delete unused vars.
13020
13021 * doc.c (Fsubstitute_command_keys): Delete unused vars.
13022
13023 * composite.c (update_compositions): Declare arg.
13024
13025 * cm.c (calccost, cmgoto): Declare args.
13026
13027 * charset.c: Remove `emacs' conditional. Doc fixes.
13028 (map_char_table_for_charset): Declare.
13029
13030 * character.c (syms_of_character) <translation-table-vector>: Doc fix.
13031
13032 * ccl.c: Remove `emacs' conditional.
13033
130342008-02-01 Kenichi Handa <handa@m17n.org>
13035
13036 The following changes are to allow specifying multiple font
13037 patterns for a character range (specified by script or charset).
13038
13039 * Makefile.in (abbrev.o): Depend on syntax.h.
13040 (xfaces.o): Depend on charset.h.
13041
13042 * alloc.c (Fmake_string): Use ASCII_CHAR_P, not
13043 SINGLE_BYTE_CHAR_P.
13044
13045 * ccl.c (Fccl_execute_on_string): Add `const' to local variables.
13046
13047 * character.h (Vchar_script_table): Extern it.
13048
13049 * character.c (Vscript_alist): Delete.
13050 (Vchar_script_table, Qchar_script_table): New variable.
13051 (syms_of_character): Declare Vchar_script_table as a lisp variable
13052 and initialize it.
13053
13054 * chartab.c (Fmake_char_table): Doc fix. If PURPOSE doesn't
13055 have property char-table-extra-slots, make no extra slot.
13056
13057 * dispextern.h (struct face): Delete member `charset'.
13058 (FACE_SUITABLE_FOR_CHAR_P, FACE_FOR): Use ASCII_CHAR_P, not
13059 SINGLE_BYTE_CHAR_P.
13060 (choose_face_font, lookup_non_ascii_face, font_name_registry):
13061 Add prototypes.
13062 (lookup_face, lookup_named_face, lookup_derived_face): Fix prototype.
13063 (generate_ascii_font_name): Rename from generate_ascii_font.
13064
13065 * fontset.h (get_font_repertory_func): New prototype.
13066 (make_fontset_for_ascii_face, fs_load_font): Fix prototypes.
13067 (FS_LOAD_FONT): Call fs_load_font with the 3rd arg charset_ascii.
13068
13069 * fontset.c (Qprepend, Qappend): New variables.
13070 (FONTSET_CHARSET_ALIST, FONTSET_FACE_ALIST): Delete.
13071 (FONTSET_NOFONT_FACE, FONTSET_REPERTORY): New macros.
13072 (FONTSET_REF): Optimize if FONTSET is Vdefault_fontset.
13073 (FONTSET_REF_AND_RANGE, FONTSET_ADD): New macros.
13074 (fontset_ref_and_range, fontset_add, reorder_font_vector)
13075 (load_font_get_repertory): New functions.
13076 (fontset_set): Delete.
13077 (fontset_face): New arg FACE. Return face ID, not face.
13078 Complete re-write to handle new fontset structure. Change caller.
13079 (free_face_fontset): Use ASET istead of AREF (X) = Y.
13080 (face_for_char): Don't call lookup_face.
13081 (make_fontset_for_ascii_face): New arg FACE.
13082 (fs_load_font): New arg CHARSET_ID. Don't check
13083 Vfont_encoding_alist here.
13084 (find_font_encoding): New function.
13085 (list_fontsets): Use STRINGP, not ! NILP.
13086 (accumulate_script_ranges): New function.
13087 (Fset_fontset_font, Fnew_fontset, Ffontset_info): Completely
13088 re-written to handle new fontset structure.
13089 (Ffontset_font): Return a copy of element.
13090 (syms_of_fontset): Define symbols Qprepend and Qappend. Fix
13091 docstring of font-encoding-alist.
13092
13093 * lisp.h (CHAR_TABLE_REF): Remove unnecessary check (IDX >= 0).
13094 (Fset_fotset_font): Fix arguments to 5.
13095
13096 * msdos.c (XMenuActivate): Adjust for the change of lookup_derived_face.
13097
13098 * xdisp.c (message_dolog, set_message_1, extend_face_to_end_of_line):
13099 Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
13100 (highlight_trailing_whitespace): Adjust for the change of
13101 lookup_named_face.
13102
13103 * xfaces.c: Include charset.h.
13104 (load_face_font): Delete argument C. Change caller.
13105 (generate_ascii_font_name): Rename from generate_ascii_font.
13106 (font_name_registry): New function.
13107 (cache_face): Store ascii faces before non-ascii faces in buckets.
13108 (lookup_face): Delete arguments C and BASE_FACE. Change caller.
13109 Lookup only ascii faces.
13110 (lookup_non_ascii_face): New function.
13111 (lookup_named_face): Delete argument C. Change caller.
13112 (lookup_derived_face): Delete argument C. Change caller.
13113 (try_font_list): New arg PATTERN. Change caller. If PATTERN is
13114 a string, just call font_list with it.
13115 (choose_face_font): Delete arguments FACE and C. New arg
13116 FONT_SPEC. Change caller.
13117 (realize_face, realize_x_face): Delete arguments C and BASE_FACE.
13118 Change caller.
13119 (realize_non_ascii_face): New function.
13120 (realize_x_face): Call load_face_font here.
13121 (realize_tty_face): Delete argument C. Change caller.
13122 (compute_char_face): If CH is not ascii, call FACE_FOR_CHAR to
13123 get a face ID.
13124 (dump_realized_face): Don't print charset of FACE.
13125
13126 * xfns.c (x_set_font): Always call x_new_fontset and
13127 store_frame_parameter.
13128 (Fx_create_frame): Call x_new_fontset, not x_new_font.
13129 (syms_of_xfns): Set get_font_repertory_func to x_get_font_repertory.
13130
13131 * xterm.h (x_get_font_repertory): Extern it.
13132
13133 * xterm.c (x_produce_glyphs): Use ASCII_CHAR_P, not
13134 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
13135 it->multibyte_p is zero.
13136 (XTread_socket): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
13137 (x_new_fontset): If FONTSETNAME doesn't match any existing
13138 fontsets, create a new one.
13139 (x_get_font_repertory): New function.
13140
131412008-02-01 Kenichi Handa <handa@m17n.org>
13142
13143 * coding.c (Ffind_coding_systems_region_internal): Detect an
13144 ASCII only string correctly.
13145
13146 * lread.c (Fload): Don't load with Qload_force_doc_strings t if
13147 version is 0.
13148
131492008-02-01 Kenichi Handa <handa@m17n.org>
13150
13151 * lread.c: Include "coding.h".
13152 (Qget_emacs_mule_file_char, Qload_force_doc_strings)
13153 (load_each_byte, unread_char): New variables.
13154 (readchar_backlog): Delete.
13155 (readchar): Return a character unless load_each_byte is nonzero.
13156 Handle the case that readcharfun is Qget_emacs_mule_file_char or a
13157 cons. If unread_char is not -1, simply return it.
13158 (unreadchar): Handle the case that readcharfun is
13159 Qget_emacs_mule_file_char or a cons. Set unread_char if necessary.
13160 (read_multibyte): Delete.
13161 (readbyte_for_lambda, readbyte_from_file, readbyte_from_string)
13162 (read_emacs_mule_char): New functions.
13163 (Fload): Even if the file doesn't have the extension ".elc", if
13164 safe_to_load_p returns a positive version number, assume that the
13165 file contains bytecompiled code. If the version is less than 22,
13166 load the file while decoding multibyte sequences by emacs-mule.
13167 (readevalloop): Don't use readchar_backlog.
13168 (Fread): Likewise. Pay attention to the case that STREAM is a cons.
13169 (Fread_from_string): Pay attention to the case that STREAM is a cons.
13170 (read_escape): Delete the arg BYTEREP.
13171 (read1): Set load_each_byte to 1 temporarily while handling
13172 #@NUMBER. Don't call read_multibyte.
13173 (read_vector): Call Fread with a cons. If readcharfun is
13174 Qget_emacs_mule_file_char, decode the read string by emacs-mule.
13175 (read_list): If doc_reference is 2, make the cdr part string as unibyte.
13176 (syms_of_lread): Intern and staticpro Qget_emacs_mule_file_char
13177 and Qload_force_doc_strings.
13178
131792008-02-01 Kenichi Handa <handa@m17n.org>
13180
13181 * xdisp.c (face_before_or_after_it_pos): Call
13182 FETCH_MULTIBYTE_CHAR with byte postion, not char position.
13183
131842008-02-01 Kenichi Handa <handa@m17n.org>
13185
13186 * character.h (TRAILING_CODE_P): New macro.
13187 (MAYBE_UNIFY_CHAR): Adjust for the change of Funify_charset.
13188 (string_char_with_unification): Fix prototype.
13189 (Vscript_alist): Extern it.
13190
13191 * character.c (Vscript_alist): New variable.
13192 (string_char_with_unification, str_as_unibyte)
13193 (string_escape_byte8): Add `const' to local variables.
13194 (syms_of_character): Declare script-alist as a Lisp variable.
13195
13196 * charset.h (Vcharset_ordered_list): Extern it.
13197 (charset_ordered_list_tick): Extern it.
13198 (EMACS_MULE_LEADING_CODE_PRIVATE_11)
13199 (EMACS_MULE_LEADING_CODE_PRIVATE_12)
13200 (EMACS_MULE_LEADING_CODE_PRIVATE_21)
13201 (EMACS_MULE_LEADING_CODE_PRIVATE_22): New macros.
13202 (Funify_charset): Adjust for the change of Funify_charset.
13203
13204 * charset.c (charset_ordered_list_tick): New variable.
13205 (Fdefine_charset_internal): Increment charset_ordered_list_tick.
13206 (Funify_charset): New optional arg DEUNIFY. If it is non-nil,
13207 deunify intead of unify a charset.
13208 (string_xstring_p): Add `const' to local variables.
13209 (find_charsets_in_text): Add `const' to arguments and local variables.
13210 (encode_char): Adjust for the change of Funify_charset. Fix
13211 detecting of invalid code.
13212 (Fset_charset_priority): Increment charset_ordered_list_tick.
13213 (Fmap_charset_chars): Fix handling of default value for FROM_CODE
13214 and TO_CODE.
13215
13216 * coding.c (LEADING_CODE_PRIVATE_11, LEADING_CODE_PRIVATE_12)
13217 (LEADING_CODE_PRIVATE_21, LEADING_CODE_PRIVATE_22): Delete macros.
13218 Changed callers to use EMACS_MULE_LEADING_CODE_PRIVATE_11, etc.
13219 (decode_coding_ccl, consume_chars)
13220 (Ffind_coding_systems_region_internal)
13221 (Fcheck_coding_systems_region): Add `const' to local variables.
13222
13223 * print.c (print_object): Use octal form for printing the
13224 contents of a bool vector.
13225
132262008-02-01 Dave Love <fx@gnu.org>
13227
13228 * lread.c (Fload) <!load_dangerous_libraries>: Don't leak fd.
13229 <version == 20>: Refuse to load.
13230
132312008-02-01 Dave Love <fx@gnu.org>
13232
13233 * fns.c: Move coding.h.
13234 (Qcodeset, Qdays, Qmonths): New.
13235 (concat): Use CHARACTERP instead of INTEGERP.
13236 (Flocale_codeset): Delete.
13237 (Flanginfo): New function.
13238 (syms_of_fns): Change accordingly.
13239
13240 * coding.c (adjust_coding_eol_type): Fix eol_type/eol_seen mixup.
13241
132422008-02-01 Dave Love <fx@gnu.org>
13243
13244 * casetab.c (init_casetab_once, init_casetab_once): Fix
13245 CHAR_TABLE_SET call.
13246
13247 * category.c (Fmodify_category_entry): Fix CATEGORY_MEMBER call.
13248
13249 * character.c (syms_of_character): Fix CHAR_TABLE_SET call.
13250
13251 * charset.c (Fmap_charset_chars): Check args. Convert Lisp types.
13252 (load_charset_map, Fdeclare_equiv_charset, Fencode_char)
13253 (Fset_charset_priority, syms_of_charset): Convert Lisp types.
13254
13255 * charset.h (CHECK_CHARSET_GET_ID): Use XINT on AREF result.
13256
13257 * coding.c (ENCODE_DESIGNATION, decode_eol)
13258 (make_conversion_work_buffer, code_conversion_restore)
13259 (Fdefine_coding_system_internal): Convert Lisp types.
13260 (code_conversion_restore): Use EQ, not ==.
13261 (Fencode_coding_string): Fix code_convert_string call.
13262
13263 * coding.h (code_convert_region): Fix prototype.
13264
13265 * dispextern.h (redraw_frame, redraw_garbaged_frames): Remove.
13266
13267 * fontset.c (fontset_ref, fontset_set, fs_load_font)
13268 (Ffontset_info): Convert Lisp types.
13269
13270 * syntax.h (SYNTAX_ENTRY_INT): Don't use make_number.
13271
13272 * xterm.c (note_mouse_movement): Fix call of window_from_coordinates.
13273
13274 * xdisp.c (display_mode_element): Fix call of Fset_text_properties.
13275
13276 * chartab.c: Include "...h", not <...h> in some cases.
13277
13278 * callproc.c (Fcall_process): Remove unused variables.
13279
132802008-02-01 Dave Love <fx@gnu.org>
13281
13282 * coding.c (Fset_coding_system_priority): Allow null arg list.
13283
132842008-02-01 Dave Love <fx@gnu.org>
13285
13286 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
13287 (Fself_insert_and_exit): Use CHARACTERP.
13288
13289 * callproc.c (Fcall_process): Remove unused vars.
13290
13291 * xterm.c (XTread_socket): Add extra dead keysyms.
13292
13293 * xdisp.c (decode_mode_spec_coding): Use CHARACTERP.
13294
13295 * dispextern.h: Remove prototypes for redraw_frame,
13296 redraw_garbaged_frames.
13297
13298 * cmds.c (Fself_insert_command): Use CHARACTERP.
13299
13300 * chartab.c (make_sub_char_table): Remove unused var.
13301 (Fset_char_table_default, Fmap_char_table): Doc fix.
13302
13303 * keymap.c (access_keymap): Remove generic char code.
13304 (push_key_description): Use CHARACTERP.
13305
133062008-02-01 Dave Love <fx@gnu.org>
13307
13308 * charset.c: Doc fixes.
13309 (Funify_charset): Extra checking.
13310
133112008-02-01 Dave Love <fx@gnu.org>
13312
13313 * lread.c: Remove some unused variables.
13314 (safe_to_load_p): If safe, return the magic number version byte.
13315 (Fload): Maybe use load-with-code-conversion.
13316
133172008-02-01 Kenichi Handa <handa@m17n.org>
13318
13319 * category.c (Fmodify_category_entry): Don't modify the contents
13320 of category_set for characters out of the range. Avoid
13321 unnecessary modification.
13322
13323 * character.h (MAYBE_UNIFY_CHAR): Adjust for the change of
13324 Vchar_unify_table. The default value of the table is now nil.
13325
13326 * character.c (syms_of_character): Setup Vchar_width_table for
13327 eight-bit-control and raw-byte chars.
13328
13329 * charset.h (enum define_charset_arg_index): Delete
13330 charset_arg_parents and add charset_arg_subset and
13331 charset_arg_superset.
13332 (enum charset_attr_index): Delete charset_parents and add
13333 charset_subset and charset_superset.
13334 (enum charset_method): Delete CHARSET_METHOD_INHERIT and add
13335 CHARSET_METHOD_SUBSET and CHARSET_METHOD_SUPERSET.
13336 (CHARSET_ATTR_PARENTS, CHARSET_PARENTS): Delete.
13337 (CHARSET_ATTR_SUBSET, CHARSET_ATTR_SUPERSET, CHARSET_SUBSET)
13338 (CHARSET_SUPERSET): New macros.
13339 (charset_work): Extern it.
13340 (ENCODE_CHAR): Use charset_work.
13341 (CHAR_CHARSET_P): Adjust for the change of encoder format.
13342 (map_charset_chars): Extern it.
13343
13344 * charset.c (load_charset_map): Set the default value of encoder
13345 and deunifier char-tables to nil.
13346 (map_charset_chars): Change argument. Change callers. Use
13347 map_char_table_for_charset instead of map_char_table.
13348 (Fmap_charset_chars): New optional args from_code and to_code.
13349 (Fdefine_charset_internal): Adjust for the change of
13350 `define-charset' (:parents -> :subset or :superset).
13351 (charset_work): New variable.
13352 (encode_char, syms_of_charset): Adjust for the change of
13353 Fdefine_charset_internal.
13354 (Ffind_charset_string): Setup the vector `charsets' correctly.
13355
13356 * chartab.c (sub_char_table_ref_and_range): New arg default. Fix
13357 the previous change.
13358 (char_table_ref_and_range): Adjust for the above change.
13359 (map_sub_char_table_for_charset): New function.
13360 (map_char_table_for_charset): New function.
13361
13362 * keymap.c (describe_vector): Handle a char-table directly here.
13363 (describe_char_table): Delete.
13364
13365 * lisp.h (map_charset_chars): Delete.
13366
133672008-02-01 Dave Love <fx@gnu.org>
13368
13369 * fns.c (count_combining): Comment out (unused).
13370 (Flocale_codeset): New.
13371 (syms_of_fns): Defsubr it.
13372
13373 * config.in (HAVE_PTY_H, HAVE_SIZE_T, HAVE_LANGINFO_CODESET): New.
13374 (size_t): Remove.
13375
133762008-02-01 Dave Love <fx@gnu.org>
13377
13378 * Makefile.in (chartab.o): Depend on charset.h.
13379
133802008-02-01 Kenichi Handa <handa@m17n.org>
13381
13382 * character.c (syms_of_character): Set the default value of
13383 Vprintable_chars to Qnil.
13384
133852008-02-01 Dave Love <fx@gnu.org>
13386
13387 * Makefile.in (lisp, shortlisp): Change indian.elc to indian.el.
13388
133892008-02-01 Kenichi Handa <handa@m17n.org>
13390
13391 * charset.c (load_charset_map): Handle the case that from < to
13392 correctly.
13393
13394 * coding.c (encode_coding_emacs_mule, encode_coding_iso_2022)
13395 (encode_coding_sjis, encode_coding_big5, encode_coding_charset):
13396 Pay attention to raw-8-bit chars.
13397
133982008-02-01 Kenichi Handa <handa@m17n.org>
13399
13400 * Makefile.in (lisp, shortlisp): Change chinese.elc to chinese.el.
13401 It is not bytecompiled now.
13402
13403 * charset.c (charset_jisx0201_roman, charset_jisx0208_1978)
13404 (charset_jisx0208): New variables.
13405 (Fdefine_charset_internal): Setup them if appropriate.
13406 (init_charset_once): Initialize them to -1.
13407
13408 * charset.h (charset_jisx0201_roman, charset_jisx0208_1978)
13409 (charset_jisx0208): Extern them.
13410
13411 * coding.c (CODING_ISO_FLAG_USE_ROMAN): New macro.
13412 (CODING_ISO_FLAG_USE_OLDJIS): New macro.
13413 (CODING_ISO_FLAG_FULL_SUPPORT): Change macro definition.
13414 (setup_iso_safe_charsets): Fix arguments to Fassq.
13415 (DECODE_DESIGNATION, ENCODE_ISO_CHARACTER_DIMENSION1)
13416 (ENCODE_ISO_CHARACTER_DIMENSION2): Pay attention to
13417 CODING_ISO_FLAG_USE_ROMAN and CODING_ISO_FLAG_USE_OLDJIS.
13418 (encode_coding_iso_2022): Change the 1st arg to
13419 ENCODE_ISO_CHARACTER to a variable.
13420
134212008-02-01 Kenichi Handa <handa@m17n.org>
13422
13423 * charset.h (enum define_charset_arg_index): New enums
13424 charset_arg_min_code and charset_arg_max_code.
13425 (struct charset): New member char_index_offset.
13426
13427 * charset.c (CODE_POINT_TO_INDEX, INDEX_TO_CODE_POINT):
13428 Take charset->char_index_offset into account.
13429 (Fdefine_charset_internal): Handle args[charset_arg_min_code] and
13430 args[charset_arg_max_code]. Setup charset.char_index_offset.
13431 (syms_of_charset): Fix args to Fdefine_charset_internal.
13432
134332008-02-01 Dave Love <fx@gnu.org>
13434
13435 * coding.c (decode_coding_utf_8): Reject overlong sequences.
13436
134372008-02-01 Dave Love <fx@gnu.org>
13438
13439 * coding.c: Doc fixes.
13440 (Fcoding_system_aliases): Fix return value.
13441 (Qmac): Remove (duplicated) definition.
13442
134432008-02-01 Dave Love <fx@gnu.org>
13444
13445 * charset.c (Fcharset_priority_list, Fset_charset_priority): New
13446 functions.
13447
13448 * character.c (Fstring): Doc fix.
13449
13450 * charset.c (Fdefine_charset_alias): Update Vcharset_list.
13451
13452 * fontset.c (Ffontset_info): Doc fix. Return charset names, not
13453 ids.
13454 (font-encoding-alist): Doc fix.
13455
134562008-02-01 Dave Love <fx@gnu.org>
13457
13458 * term.c (costs_set): Declare static, non-initialized for pcc.
13459 (encode_terminal_code): Remove unused var.
13460
13461 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
13462 for K&R.
13463
13464 * xterm.c (xlwmenu_window_p): Fix prototype for K&R.
13465
13466 * coding.c (setup_iso_safe_charsets): Fix arg decl for K&R.
13467 (suffixes): Move out of make_subsidiaries for K&R.
13468
13469 * charset.c (map_charset_chars): Fix c_function declaration for K&R.
13470
13471 * lisp.h (DEFUN) [!PROTOTYPES]: Remove spurious `args'.
13472
134732008-02-01 Dave Love <fx@gnu.org>
13474
13475 * data.c (Fchar_or_string_p): Doc fix. Use CHARACTERP.
13476
13477 * category.c (Fmodify_category_entry): Doc fix. Remove unused vars.
13478
134792008-02-01 Yong Lu <lyongu@asia-infonet.com>
13480
13481 * charset.c (Fdefine_charset_internal): Fix argument to bzero.
13482
13483 * coding.c (decode_coding_charset): Workaround for the bug of GCC 2.96.
13484
134852008-02-01 Kenichi Handa <handa@m17n.org>
13486
13487 * Makefile.in (lisp, shortlisp): Change cyrillic.elc to cyrillic.el,
13488 vietnamese.elc to vietnamese.el. They are not bytecompiled now.
13489
134902008-02-01 Kenichi Handa <handa@m17n.org>
13491
13492 * coding.c (decode_coding_charset): Adjust for the change of
13493 Fdefine_coding_system_internal.
13494 (Fdefine_coding_system_internal): For a coding system of
13495 `charset' type, store a list of charset IDs in
13496 `charset_attr_charset_valids' element of coding attributes.
13497
134982008-02-01 Kenichi Handa <handa@m17n.org>
13499
13500 * coding.c (ONE_MORE_BYTE_NO_CHECK): Increment consumed_chars.
13501 (emacs_mule_char): New arg src. Delete arg `composition'. Change
13502 caller. Handle 2-byte and 3-byte charsets correctly.
13503 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): Rename from
13504 DECODE_EMACS_MULE_COMPOSITION_RULE. Change caller.
13505 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New macro.
13506 (DECODE_EMACS_MULE_21_COMPOSITION): Call
13507 DECODE_EMACS_MULE_COMPOSITION_RULE_21. Produce correct annotation
13508 sequence.
13509 (decode_coding_emacs_mule): Handle composition correctly. Rewind
13510 `src' and `consumed_chars' correctly before calling emacs_mule_char.
13511 (DECODE_COMPOSITION_START): Correctly handle the case of altchar
13512 and alt&rule composition.
13513 (decode_coding_iso_2022): Handle composition correctly.
13514 (init_coding_once): Setup emacs_mule_bytes for private charsets.
13515
13516 * charset.c (Fdefine_charset_internal): Fix bug for the case of
13517 re-defining a charset. If the charset has :emacs-mule-id, setup
13518 emacs_mule_bytes.
13519 (Fmake_char): If CODE1 is nil, use the minimum code of the charset.
13520
135212008-02-01 Kenichi Handa <handa@m17n.org>
13522
13523 * coding.c (encode_coding_iso_2022, encode_coding_sjis)
13524 (encode_coding_big5, encode_coding_charset): If coding requires safe
13525 encoding, produce a character specified by
13526 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
13527
135282008-02-01 Dave Love <fx@gnu.org>
13529
13530 * xterm.c (XSetIMValues): Declare.
13531
13532 * process.c: Conditionally include sys/wait.h, pty.h.
13533
13534 * print.c (print_object): Fix print format for 64-bit systems.
13535
13536 * keyboard.c (modify_event_symbol): Fix print format for 64-bit systems.
13537
13538 * buffer.c (emacs_strerror): Declare.
13539
13540 * fontset.c (Fclear_face_cache): Declare.
13541 (accumulate_font_info): Comment-out (unused).
13542 (face_for_char, Fset_fontset_font, Ffontset_info): Remove unused
13543 variables.
13544
13545 * character.h (string_escape_byte8): Declare.
13546
13547 * charset.c (load_charset_map, load_charset_map_from_file): Remove
13548 unused vars.
13549 (Fdefine_charset_internal, Fsplit_char, syms_of_charset)
13550 (Fmap_charset_chars): Doc fix.
13551
13552 * coding.c (Vchar_coding_system_table, Qchar_coding_system): Remove.
13553 (Fset_coding_system_priority, Fset_coding_system_priority)
13554 (Fdefine_coding_system_internal): Doc fix.
13555
135562008-02-01 Dave Love <fx@gnu.org>
13557
13558 * s/osf5-0.h (C_SWITCH_SYSTEM) [!__GNUC__]: Remove -nointrinsics.
13559
135602008-02-01 Kenichi Handa <handa@m17n.org>
13561
13562 * character.c (string_escape_byte8): Make multibyte string with
13563 correct size.
13564
13565 * charset.c (Fmake_char): Delete unnecessary code.
13566
135672008-02-01 Kenichi Handa <handa@m17n.org>
13568
13569 * xfns.c (x_encode_text): Allocate coding.destination here, and
13570 call encode_coding_object with dst_object Qnil.
13571
13572 * buffer.c (Fset_buffer_multibyte): Convert 8-bit bytes to
13573 multibyte form correctly.
13574
13575 * fontset.c (fs_load_font): Check fontp->full_name (not fontname)
13576 against Vfont_encoding_alist.
13577
13578 * coding.c (Fdecode_sjis_char): Fix typo (0x7F->0xFF). Fix the
13579 handling of charset list.
13580 (encode_coding_iso_2022): Setup coding->safe_charsets in advance.
13581 (decode_coding_object): Move point to coding->dst_pos before
13582 calling post-read-conversion function.
13583 (encode_coding_object): Give correct arguments to
13584 pre-write-conversion. Ignore the return value of
13585 pre-write-conversion function. Pay attention to the case that
13586 pre-write-conversion changes the current buffer. If dst_object is
13587 Qt, even if coding->src_bytes is zero, allocate at least one byte
13588 to coding->destination.
13589
13590 * coding.h (JIS_TO_SJIS): Fix typo (j1->s1, j2->s2).
13591
13592 * charset.c (Fmake_char): Make it more backward compatible.
13593 (Fmap_charset_chars): Fix docstring.
13594
135952008-02-01 Dave Love <fx@gnu.org>
13596
13597 * coding.c: Doc fixes.
13598 (Fdefine_coding_system_alias): Use names, not symbols, in
13599 coding-system-alist.
13600
136012008-02-01 Kenichi Handa <handa@m17n.org>
13602
13603 * fontset.c (free_realized_fontsets): Call Fclear_face_cache instead
13604 of calling free_realized_face.
13605
136062008-02-01 Yong Lu <lyongu@asia-infonet.com>
13607
13608 * charset.c (read_hex): Don't treat SPC as a comment starter.
13609 (decode_char): If CODE_POINT_TO_INDEX returns -1, always return -1.
13610 (Fdecode_char): Fix typo.
13611
136122008-02-01 Kenichi Handa <handa@m17n.org>
13613
13614 * charset.h (struct charset): New member `code_space_mask'.
13615
13616 * coding.c (coding_set_source): Delete the local variable beg_byte.
13617 (encode_coding_charset, Fdefine_coding_system_internal):
13618 Delete the local variable charset.
13619 (Fdefine_coding_system_internal): Setup
13620 attrs[coding_attr_charset_valids] correctly.
13621
13622 * charset.c (CODE_POINT_TO_INDEX): Utilize `code_space_mask'
13623 member to check if CODE is valid or not.
13624 (Fdefine_charset_internal): Initialize `code_space_mask' member.
13625 (encode_char): Before calling CODE_POINT_TO_INDEX, check if CODE
13626 is within the range of charset->min_code and carset->max_code.
13627
136282008-02-01 Dave Love <fx@gnu.org>
13629
13630 * syntax.h (syntax_temp) [!__GNUC__]: Declare.
13631
13632 * dispextern.h (generate_ascii_font): Fix return type.
13633
13634 * xfaces.c (generate_ascii_font): Fix arg declaration.
13635
13636 * coding.c (coding_inherit_eol_type)
13637 (Fset_terminal_coding_system_internal)
13638 (Fset_safe_terminal_coding_system_internal): Fix arg declarations.
13639
136402008-02-01 Kenichi Handa <handa@m17n.org>
13641
13642 * coding.c (decode_coding_charset, encode_coding_charset): Handle
13643 multiple charsets correctly.
13644
136452008-02-01 Kenichi Handa <handa@m17n.org>
13646
13647 * search.c (boyer_moore): Fix handling of multibyte character
13648 translation.
13649
13650 * xdisp.c (display_mode_element): When the variable `elt' is
13651 changed, update `this' and `lisp_string'.
13652
136532008-02-01 Kenichi Handa <handa@m17n.org>
13654
13655 * buffer.c (Fset_buffer_multibyte): Fix 8-bit char handling.
13656
13657 * callproc.c (Fcall_process): Be sure to give the current buffer
13658 to decode_coding_c_string. Update PT and PT_BYTE after the insertion.
13659
13660 * charset.c (struct charset_map_entries): New struct.
13661 (load_charset_map): Rename from parse_charset_map. New args
13662 entries and n_entries. Change caller.
13663 (load_charset_map_from_file): Rename from load_charset_map.
13664 Change caller. New arg control_flag. Call load_charset_map at
13665 the tail.
13666 (load_charset_map_from_vector): New function.
13667 (Fdefine_charset_internal): Setup charset.compact_codes_p.
13668 (encode_char): If the charset is compact, change a character index
13669 to a code point.
13670
13671 * coding.c (coding_alloc_by_making_gap): Check the case that the
13672 source and destination are the same correctly.
13673 (decode_coding_raw_text): Set coding->consumed_char and
13674 coding->consumed to 0.
13675 (produce_chars): If coding->chars_at_source is nonzero, update
13676 coding->consumed_char and coding->consumed before calling
13677 alloc_destination.
13678 (Fdefine_coding_system_alias): Register ALIAS in
13679 Vcoding_system_alist.
13680 (syms_of_coding): Define `no-conversion' coding system at the tail.
13681
13682 * fileio.c (Finsert_file_contents): Set coding_system instead of
13683 val. If the current buffer is multibyte, always call
13684 decode_coding_gap.
13685
13686 * xfaces.c (try_font_list): Give higher priority to fontset's
13687 family than face's family.
13688
136892008-02-01 Kenichi Handa <handa@m17n.org>
13690
13691 * callproc.c (Fcall_process): Be sure to give the current buffer
13692 to decode_coding_c_string.
13693
13694 * xfaces.c (try_font_list): Give a family specified in a fontset
13695 higher priority than a family specified in a face.
13696
136972008-02-01 Kenichi Handa <handa@m17n.org>
13698
13699 * fileio.c (Finsert_file_contents): Fix calculation of `inserted'.
13700 Fix arguments to insert_from_buffer.
13701
13702 * xdisp.c (display_mode_element): Fix calculation of `bytepos'.
13703
137042008-02-01 Kenichi Handa <handa@m17n.org>
13705
13706 * coding.c (produce_chars): Set the variable `multibytep' correctly.
13707 (decode_coding_gap): Set coding->dst_multibyte correctly.
13708
137092008-02-01 Kenichi Handa <handa@m17n.org>
13710
13711 * coding.c (encode_coding_utf_8): Initialize produced_chars to 0.
13712 (decode_coding_utf_16): Fix converting high and low bytes to code-point.
13713 (encode_coding_utf_16): Substitute coding->default_char for
13714 non-Unicode characters.
13715 (decode_coding): Don't call record_insert here.
13716 (setup_coding_system): Initialize `surrogate' of
13717 coding->spec.utf_16 to 0.
13718 (EMIT_ONE_BYTE): Fix for multibyte case.
13719
13720 * insdel.c (insert_from_gap): Call record_insert.
13721
137222008-02-01 Kenichi Handa <handa@m17n.org>
13723
13724 * casefiddle.c (casify_region): Fix multibyte case.
13725
13726 * character.c (c_string_width): Add return type `int'.
13727 (char_string_with_unification): Delete arg ADVANCED.
13728
13729 * character.h (CHAR_VALID_P): Don't call CHARACTERP.
13730 (CHAR_STRING): Adjust for the change of char_string_with_unification.
13731 (CHAR_STRING_ADVANCE): Make it do-while statement.
13732
13733 * chartab.c (sub_char_table_set_range): Optimize for the case
13734 DEPTH == 3. Add workaround code for a GCC optimization bug.
13735
13736 * charset.c (parse_charset_map): Remove an unused variable.
13737
13738 * coding.c: Delete unused variables.
13739
13740 * fileio.c (Finsert_file_contents): Set coding_system to Qnil
13741 earlier. If inserted is zero and the coding system doesn't
13742 require flushing, don't call decode_coding_gap.
13743
13744 * syntax.h (SET_RAW_SYNTAX_ENTRY): Don't call make_number.
13745
137462008-02-01 Kenichi Handa <handa@m17n.org>
13747
13748 The following changes are for using Unicode as an internal
13749 character model, and use UTF-8 format for buffer/string
13750 representation.
13751
13752 * .gdbinit (xchartable): Adjust for the change of char table structure.
13753 (xsubchartable, xcoding, xcharset, xcurbuf): New commands.
13754
13755 * Makefile.in (obj): Add character.o and chartab.o.
13756 (lisp, shortlisp): Remove utf-8.elc.
13757 (*.o): For many files, change dependency on charset.h to
13758 character.h, and add dependency on character.h.
13759 (character.o, chartab.o): New targets.
13760
13761 * abbrev.c, bytecode.c, casefiddle.c, cmds.c, dispnew.c, doc.c:
13762 * doprnt.c, dosfns.c, frame.c, marker.c, minibuf.c, msdos.c:
13763 * w16select.c, w32bdf.c, w32console.c: Include "character.h" instead
13764 of "charset.h".
13765
13766 * dired.c, filelock.c: Include "character.h".
13767
13768 * alloc.c: Include "character.h" instead of "charset.h".
13769 (Fmake_char_table, make_sub_char_table): Move to chartab.c.
13770 (syms_of_alloc): Remove defsubr for Smake_char_table.
13771
13772 * buffer.c: Include "character.h" instead of "charset.h", don't
13773 include "coding.h".
13774 (Fset_buffer_multibyte): Adjust for UTF-8.
13775
13776 * buffer.h: EXFUN Fbuffer_live_p.
13777
13778 * callproc.c: Include "character.h" instead of "charset.h".
13779 (Fcall_process): Big change for the new code-conversion APIs.
13780
13781 * casetab.c: Include "character.h" instead of "charset.h".
13782 (set_canon, set_identity, shuffle): Adjust for the new
13783 map_char_table spec.
13784 (init_casetab_once): Call CHAR_TABLE_SET instead of directly
13785 accessing the char table structure.
13786
13787 * chartab.c: New file that implements char table.
13788
13789 * category.c: Include "character.h".
13790 (copy_category_entry): New function.
13791 (copy_category_table): Call map_char_table and copy_category_entry.
13792 (Fmake_category_table): Initialize all top-level slots.
13793 (char_category_set): New function.
13794 (modify_lower_category_set): Delete.
13795 (Fmodify_category_entry): Call char_table_ref_and_range.
13796
13797 * category.h (CATEGORY_SET): Just call char_category_set.
13798
13799 * ccl.c: Include "character.h".
13800 (Qccl, Qcclp): New variables.
13801 (CCL_WRITE_CHAR): Alway treat the arg CH as a character even if
13802 it's less than 256.
13803 (CCL_WRITE_MULTIBYTE_CHAR): Delete.
13804 (CCL_WRITE_STRING, CCL_READ_CHAR): Adjust for the change of SRC
13805 and DST type.
13806 (ccl_driver): Change types of argument, adjust code accordingly.
13807 (Fccl_execute, Fccl_execute_on_string): Adjust for the change of
13808 ccl_driver.
13809 (syms_of_ccl): Intern and staticpro Qccl and Qcclp.
13810
13811 * ccl.h (struct ccl_program): Delete members eol_type and multibyte.
13812 New members src_multibyte, dst_multibyte, consumed, and produced.
13813 (struct ccl_spec): Delete members decoder and encoder. New member ccl.
13814 (CODING_SPEC_CCL_PROGRAM): New macro.
13815 (ccl_driver): Update prototype.
13816 (Qccl, Qcclp, Fccl_program_p): Extern them.
13817 (CHECK_CCL_PROGRAM): New macro.
13818
13819 * character.c, character.h, chartab.c: New files.
13820
13821 * charset.c: Mostly re-written. Move character and multibyte sequence
13822 handling codes to character.c.
13823
13824 * charset.h: Mostly re-written. Move character and multibyte sequence
13825 handling codes to character.h.
13826
13827 * coding.c, coding.h: Mostly re-written.
13828
13829 * composite.c: Include "character.h" instead of "charset.h".
13830 (CHAR_WIDTH): Move to character.h.
13831 (HASH_KEY, HASH_VALUE): Delete.
13832
13833 * composite.h (enum composition_method): Change order of enumeration
13834 symbols.
13835
13836 * data.c: Include "character.h" instead of "charset.h".
13837 (Faref): Call CHAR_TABLE_REF for a char table.
13838 (Faset): Call CHAR_TABLE_SET for a char table.
13839
13840 * dispextern.h (free_realized_face, check_face_attribytes)
13841 (generate_ascii_font): Extern them.
13842 (free_realized_multibyte_face): Delete extern.
13843
13844 * disptab.h (DISP_CHAR_VECTOR): Adjust for the change of char
13845 table structure.
13846
13847 * editfns.c: Include "character.h" instead of "charset.h".
13848 (Fchar_to_string): Always call CHAR_STRING.
13849
13850 * emacs.c (main): Call init_charset_once, init_charset,
13851 syms_of_chartab, and syms_of_character.
13852
13853 * fileio.c: Include "character.h" instead of "charset.h".
13854 (Finsert_file_contents): Big change for the new code-conversion API.
13855 (choose_write_coding_system, Fwrite_region): Likewise.
13856 (build_annotations_2): Delete.
13857 (e_write): Big change for the new code-conversion API.
13858
13859 * fns.c: Include "character.h" instead of "charset.h".
13860 (copy_sub_char_table): Move to chartab.c.
13861 (Fcopy_sequence): Call copy_char_table for a char table.
13862 (concat): Delete codes calling count_multibyte.
13863 (string_char_to_byte, string_byte_to_char): Adjust for the new
13864 multibyte form.
13865 (internal_equal): Adjust for the change of char table structure.
13866 (Fchar_table_subtype, Fchar_table_parent, Fset_char_table_parent)
13867 (Fchar_table_extra_slot, Fset_char_table_extra_slot)
13868 (Fchar_table_range, Fset_char_table_range, Fset_char_table_default)
13869 (char_table_translate, optimize_sub_char_table)
13870 (Foptimize_char_table, map_char_table, Fmap_char_table): Move to
13871 chartab.c.
13872 (char_table_ref_and_index): Delete.
13873 (HASH_KEY, HASH_VALUE): Move to lisp.h.
13874 (Fmd5): Call preferred_coding_system instead of accessing
13875 Vcoding_category_list. Adjust for the new code-conversion API.
13876 (syms_of_fns): Move defsubr for char table related functions to
13877 chartab.c.
13878
13879 * fontset.c: Mostly re-written.
13880
13881 * fontset.h (struct font_info): Change type of the member encoding_type.
13882 (enum FONT_SPEC_INDEX): New enum.
13883 (fontset_font_pattern, fs_load_font): Update prototype.
13884 (FS_LOAD_FONT): Adjust for the change of fs_load_font.
13885
13886 * indent.c: Include "character.h" instead of "charset.h".
13887 (MULTIBYTE_BYTES_WIDTH): Call CHAR_WIDTH instead of WIDTH_BY_CHAR_HEAD.
13888
13889 * insdel.c: Include "character.h" instead of "charset.h".
13890 (copy_text): Don't refer to Vnonascii_translation_table.
13891 (insert_from_gap): New function.
13892
13893 * keyboard.c: Include "character.h" instead of "charset.h".
13894 (command_loop_1): Never call direct_output_forward_char before
13895 a non-ASCII character.
13896 (read_char): If Vkeyboard_translate_table is a char table, always
13897 translate a character.
13898
13899 * keymap.c: Include "character.h".
13900 (store_in_keymap): Handle the case that IDX is a cons.
13901 (Fdefine_key): Handle the case that KEY is a cons and the car part
13902 is also a cons (range).
13903 (push_key_description): Adjust for the new character code.
13904 (describe_vector): Call describe_char_table for a char table.
13905 (describe_char_table): New function.
13906
13907 * keymap.h (describe_char_table): Extern it.
13908
13909 * lisp.h (enum pvec_type): New member PVEC_SUB_CHAR_TABLE.
13910 (XSUB_CHAR_TABLE, XSETSUB_CHAR_TABLE): New macros.
13911 (CHAR_TABLE_ORDINARY_SLOTS, CHAR_TABLE_SINGLE_BYTE_SLOTS)
13912 (SUB_CHAR_TABLE_ORDINARY_SLOTS, SUB_CHAR_TABLE_STANDARD_SLOTS):
13913 Delete.
13914 (CHAR_TABLE_REF, CHAR_TABLE_SET): Adjust for the new char table
13915 structure.
13916 (CHAR_TABLE_TRANSLATE): Just call char_table_translate.
13917 (CHARTAB_SIZE_BITS_0, CHARTAB_SIZE_BITS_1, CHARTAB_SIZE_BITS_2)
13918 (CHARTAB_SIZE_BITS_3): New macros.
13919 (chartab_size): Extern it.
13920 (struct Lisp_Char_Table): Re-design.
13921 (struct Lisp_Sub_Char_Table): New structure.
13922 (HASH_KEY, HASH_VALUE): Move from fns.c.
13923 (CHARACTERBITS): Define as 22.
13924 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Adjust for the above change.
13925 (SUB_CHAR_TABLE_P): Check PVEC_CHAR_TABLE.
13926 (GC_SUB_CHAR_TABLE_P): New macro.
13927 (Fencode_coding_string, Fdecode_coding_string): Update EXFUN.
13928 (code_convert_string_norecord): Deleted extern.
13929 (init_character_once, syms_of_character, init_charset)
13930 (syms_of_composite, Qeq, Fmakehash, insert_from_gap): Extern them.
13931
13932 * lread.c: Include "character.h".
13933 (read_multibyte): New arg NBYTES.
13934 (read_escape): Change the meaning of returned *BYTEREP.
13935 (to_multibyte): Delete.
13936 (read1): Adjust the handling of char table and string.
13937
13938 * print.c: Include "character.h" instead of "charset.h".
13939 (print_string): Convert 8-bit raw bytes to octal form by
13940 string_escape_byte8.
13941 (print_object): Adjust for the new multibyte form. Print 8-bit
13942 raw bytes always in octal form. Handle sub char table correctly.
13943
13944 * process.c: Include "character.h" instead of "charset.h".
13945 (read_process_output, send_process): Adjust for the new
13946 code-conversion API.
13947
13948 * puresize.h (BASE_PURESIZE): Increase.
13949
13950 * regex.c: Include "character.h" instead of "charset.h".
13951 (BYTE8_TO_CHAR, CHAR_BYTE8_P) [not emacs]: New dummy macros.
13952 (regex_compile): Accept a range whose starting and ending
13953 character have different leading bytes.
13954 (analyse_first): Adjust for the above change.
13955
13956 * search.c: Include "character.h" instead of "charset.h".
13957 (search_buffer, boyer_moore): Adjust for the new multibyte form.
13958 (Freplace_match): Adjust for the change of multibyte_char_to_unibyte.
13959
13960 * syntax.c: Include "character.h" instead of "charset.h".
13961 (syntax_parent_lookup): Delete.
13962 (Fmodify_syntax_entry): Accept a cons as CHAR.
13963 (skip_chars): Adjust for the new multibyte form.
13964 (init_syntax_once): Call char_table_set_range instead of directly
13965 accessing the structure of a char table.
13966
13967 * syntax.h (SET_RAW_SYNTAX_ENTRY): Call CHAR_TABLE_SET.
13968 (SYNTAX_ENTRY_FOLLOW_PARENT): Delete macro.
13969 (SET_RAW_SYNTAX_ENTRY_RANGE): New macro.
13970 (SYNTAX_ENTRY_INT): Call CHAR_TABLE_REF.
13971
13972 * term.c: Include "buffer.h" and "character.h".
13973 (encode_terminal_code, write_glyphs): Adjust for the new
13974 code-conversion API.
13975 (produce_glyphs): Call CHAR_WIDTH instead of CHARSET_WIDTH.
13976
13977 * w32term.c (x_new_font): Adjust for the change of FS_LOAD_FONT.
13978
13979 * xdisp.c: Include "character.h".
13980 (get_next_display_element): Adjust for the new multibyte form.
13981 (disp_char_vector): Adjust for the new char table structure.
13982 (decode_mode_spec_coding): Adjust for the new structure of
13983 coding system.
13984 (decode_mode_spec): Adjust for the new code-conversion API.
13985
13986 * xfaces.c: Include "character.h" instead of "charset.h".
13987 (load_face_font): Adjust for the change of choose_face_font and
13988 FS_LOAD_FONT.
13989 (generate_ascii_font): New function.
13990 (set_lface_from_font_name): Adjust for the change of FS_LOAD_FONT.
13991 (set_font_frame_param): Adjust for the change of choose_face_font.
13992 (free_realized_face): Make it public.
13993 (free_realized_faces_for_fontset): Rename from
13994 free_realized_multibyte_face. Free also faces realized for ASCII.
13995 (choose_face_font): Change arguments. Adjust for the change of
13996 fontset_font_pattern and FS_LOAD_FONT.
13997
13998 * xfns.c: Include "character.h".
13999 (x_encode_text): Adjust for the new code-conversion API.
14000
14001 * xselect.c: Don't include "charset.h".
14002 (selection_data_to_lisp_data): Adjust for the new code conversion API.
14003
14004 * xterm.c: Include "character.h".
14005 (x_encode_char): New argument CHARSET. Change caller.
14006 (x_get_char_face_and_encoding, x_get_glyph_face_and_encoding):
14007 Call ENCODE_CHAR instead of SPLIT_CHAR.
14008 (x_produce_glyphs): Don't check Vnonascii_translation_table Call
14009 CHAR_WIDTH instead of CHARSET_WIDTH.
14010 (XTread_socket): Adjust for the new code-conversion API.
14011 (x_new_font): Adjust for the change of FS_LOAD_FONT.
14012 (x_load_font): Adjust for the change of struct font.
14013
140142008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
14015
14016 * xfaces.c (face_at_buffer_position): Remove unused vars.
14017
140182008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14019
14020 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR):
14021 Fix overflow checking.
14022
140232008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14024
14025 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR, ccl_driver):
14026 Cancel previous change.
14027
140282008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
14029
14030 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when
14031 ccl->eight_bit_control. Fix check for buffer overflow.
14032 (CCL_WRITE_MULTIBYTE_CHAR): Fix check for buffer overflow.
14033 (ccl_driver): Initialize extra_bytes to 0.
14034
140352008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
14036
14037 * keyboard.c (make_ctrl_char): If C is a multibyte character, just
14038 return it ORed with ctrl_modifier.
14039
140402008-01-29 Miles Bader <miles@gnu.org>
14041
14042 * macterm.c (XTset_vertical_scroll_bar): Fix merge mistake.
14043
140442008-01-28 Jason Rumney <jasonr@gnu.org>
14045
14046 * w32.c (stat): Don't double check for networked drive.
14047
140482008-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
14049
14050 * window.c (run_window_configuration_change_hook): New function.
14051 Code extracted from set_window_buffer. Set the selected frame.
14052 (set_window_buffer): Use it.
14053 * window.h (run_window_configuration_change_hook): Declare.
14054 * dispnew.c (change_frame_size_1): Use it instead of set-window-buffer.
14055
14056 * keyboard.c (read_char): Yet another int/Lisp_Object mixup (YAILOM).
14057
140582008-01-27 Dan Nicolaescu <dann@ics.uci.edu>
14059
14060 * Makefile.in: Remove references to unused macros.
14061
140622008-01-26 Eli Zaretskii <eliz@gnu.org>
14063
14064 * w32.c (g_b_init_get_sid_sub_authority)
14065 (g_b_init_get_sid_sub_authority_count): New static variables.
14066 (GetSidSubAuthority_Proc, GetSidSubAuthorityCount_Proc): New typedefs.
14067 (get_sid_sub_authority, get_sid_sub_authority_count): New functions.
14068 (init_user_info): Use them to retrieve uid and gid.
14069 Use 500/513, the Windows defaults, as Administrator's uid/gid.
14070 (fstat): Use pw_uid and pw_gid from the_passwd structure for
14071 st_uid and st_gid of the file.
14072
140732008-01-26 Jason Rumney <jasonr@gnu.org>
14074
14075 * w32.c (logon_network_drive): New function.
14076 (stat): Use it.
14077
140782008-01-26 Chong Yidong <cyd@stupidchicken.com>
14079
14080 * xdisp.c (pos_visible_p): Handle the case where charpos falls on
14081 invisible text covered with an ellipsis.
14082
140832008-01-25 Richard Stallman <rms@gnu.org>
14084
14085 * xdisp.c (redisplay_window): Run Qwindow_text_change_functions and
14086 jump back to beginning. Move some other initializations after that.
14087 (Qwindow_text_change_functions, Vwindow_text_change_functions):
14088 New variables.
14089 (syms_of_xdisp): Init them.
14090
14091 * keyboard.c (read_char): Restore echo_message_buffer after redisplay.
14092
14093 * buffer.c (reset_buffer_local_variables):
14094 Implement `permanent-local-hook'.
14095 (Qpermanent_local_hook): New variable.
14096 (syms_of_buffer): Init and staticpro it.
14097
140982008-01-25 Michael Albinus <michael.albinus@gmx.de>
14099
14100 * dbusbind.c (xd_retrieve_arg): Pacify GCC on x86_64 GNU/Linux.
14101
141022008-01-25 Thien-Thi Nguyen <ttn@gnuvola.org>
14103
14104 * fns.c (Fclrhash): Return TABLE.
14105
141062008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14107
14108 * macterm.c (x_scroll_bar_create): Initialize bar->redraw_needed_p.
14109 (XTset_vertical_scroll_bar): Redraw scroll bar if bar->redraw_needed_p
14110 is set even without positional changes.
14111 (x_scroll_bar_clear): Set bar->redraw_needed_p.
14112
14113 * macterm.h (struct scroll_bar): New member `redraw_needed_p'.
14114
141152008-01-23 Jason Rumney <jasonr@gnu.org>
14116
14117 * xterm.c (handle_one_xevent): Revert to counting chars not bytes.
14118
14119 * w32term.c (w32_read_socket) <WM_CHAR>: Decode characters outside
14120 the unicode range available in MULE by locale-coding-system.
14121 Improve dbcs lead byte detection. Set event timestamp and modifiers
14122 earlier.
14123
141242008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14125
14126 * mac.c (mac_emacs_pid) [MAC_OSX]: New variable.
14127 [MAC_OSX] (init_mac_osx_environment): Initialize it.
14128 [MAC_OSX] (mac_try_close_socket) [SELECT_USE_CFSOCKET]: Return 0
14129 when used on child processes.
14130
141312008-01-21 Michael Albinus <michael.albinus@gmx.de>
14132
14133 * dbusbind.c (Fdbus_method_return_internal): Rename from
14134 Fdbus_method_return.
14135 (Fdbus_unregister_object): Move to dbus.el.
14136 (Fdbus_call_method, Fdbus_method_return_internal)
14137 (Fdbus_send_signal): Improve debug messages.
14138
141392008-01-20 Martin Rudalics <rudalics@gmx.at>
14140
14141 * undo.c (undo_inhibit_record_point): New variable.
14142 (syms_of_undo): Initialize it.
14143 (record_point): Don't record point when undo_inhibit_record_point
14144 is set.
14145
141462008-01-19 Stefan Monnier <monnier@iro.umontreal.ca>
14147
14148 * process.c (list_processes_1): Don't use SCHARS on a nil buffer name.
14149
14150 * xdisp.c (Qauto_hscroll_mode): New var.
14151 (syms_of_xdisp): Initialize it.
14152 (hscroll_window_tree): Use it to lookup `auto-hscroll-mode' in each
14153 window's buffer.
14154 (hscroll_windows): Don't check automatic_hscrolling_p here.
14155
14156 * window.c (set_window_buffer): Don't unnecessarily reset hscroll and
14157 vscroll if we're setting window-buffer to the value it already has.
14158
141592008-01-18 Dan Nicolaescu <dann@ics.uci.edu>
14160
14161 * m/intel386.h: Remove references to XENIX.
14162
141632008-01-17 Andreas Schwab <schwab@suse.de>
14164
14165 * m/amdx86-64.h (START_FILES, LIB_STANDARD): Use HAVE_LIB64_DIR
14166 instead of HAVE_X86_64_LIB64_DIR.
14167 * m/ibms390x.h (START_FILES, LIB_STANDARD): Likewise.
14168
141692008-01-17 Glenn Morris <rgm@gnu.org>
14170
14171 * m/ibms390x.h (START_FILES, LIB_STANDARD): Adjust value according
14172 to HAVE_X86_64_LIB64_DIR.
14173
141742008-01-16 Dan Nicolaescu <dann@ics.uci.edu>
14175
14176 * s/irix3-3.h:
14177 * s/irix4-0.h:
14178 * s/386-ix.h:
14179 * s/domain.h:
14180 * s/hpux9-x11r4.h:
14181 * s/hpux9shxr4.h: Remove files for systems no longer supported.
14182
14183 * sysdep.c: Remove code containing references to symbols defined
14184 by unsupported systems.
14185
141862008-01-16 Glenn Morris <rgm@gnu.org>
14187
14188 * coding.c (select-safe-coding-system-function): Doc fix.
14189
141902008-01-15 Glenn Morris <rgm@gnu.org>
14191
14192 * config.in: Revert 2008-01-13 change: this is a generated file.
14193
141942008-01-13 Tom Tromey <tromey@redhat.com>
14195
14196 * lisp.h: Fix typo.
14197
141982008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
14199
14200 * m/sequent-ptx.h:
14201 * m/sequent.h:
14202 * s/ptx.h:
14203 * s/ptx4-2.h:
14204 * s/ptx4.h: Remove files for systems no longer supported.
14205
14206 * callproc.c (Fcall_process): Fix previous change.
14207
142082008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
14209
14210 * unexsunos4.c: Remove file, system not supported anymore.
14211
14212 * m/mips.h:
14213 * m/intel386.h:
14214 * callproc.c:
14215 * config.in:
14216 * ecrt0.c:
14217 * emacs.c:
14218 * fileio.c:
14219 * frame.c:
14220 * getpagesize.h:
14221 * keyboard.c:
14222 * lread.c:
14223 * process.c:
14224 * puresize.h:
14225 * sysdep.c:
14226 * systty.h:
14227 * syswait.h:
14228 * unexec.c:
14229 * xdisp.c:
14230 * alloc.c: Remove code containing references to symbols defined by
14231 unsupported systems.
14232
142332008-01-11 Kenichi Handa <handa@ni.aist.go.jp>
14234
14235 * coding.c (detect_coding_mask): Fix previous change.
14236
142372008-01-09 Kenichi Handa <handa@ni.aist.go.jp>
14238
14239 * coding.c (detect_coding_iso2022): New arg
14240 latin_extra_code_state. Allow Latin extra codes only
14241 when *latin_extra_code_state is nonzero.
14242 (detect_coding_mask): If there is a NULL byte, detect the encoding
14243 as UTF-16 or binary. If Latin extra codes exist, detect the
14244 encoding as ISO-2022 only when there's no other proper encoding is
14245 found.
14246
142472008-01-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14248
14249 * frame.c (Fmake_terminal_frame): Use #ifdef MAC_OS8 instead of
14250 #ifdef MAC_OS.
14251
142522008-01-08 Richard Stallman <rms@gnu.org>
14253
14254 * fileio.c (Ffile_name_directory, Fexpand_file_name): Doc fixes.
14255
142562008-01-06 Nick Roberts <nickrob@snap.net.nz>
14257
14258 * keyboard.c (parse_menu_item): Don't enclose key bindings on
14259 menu bar in parentheses.
14260
142612008-01-06 Dan Nicolaescu <dann@ics.uci.edu>
14262
14263 * m/7300.h:
14264 * m/acorn.h:
14265 * m/alliant-2800.h:
14266 * m/alliant.h:
14267 * m/alliant1.h:
14268 * m/alliant4.h:
14269 * m/altos.h:
14270 * m/amdahl.h:
14271 * m/apollo.h:
14272 * m/att3b.h:
14273 * m/aviion-intel.h:
14274 * m/aviion.h:
14275 * m/celerity.h:
14276 * m/clipper.h:
14277 * m/cnvrgnt.h:
14278 * m/convex.h:
14279 * m/cydra5.h:
14280 * m/delta88k.h:
14281 * m/dpx2.h:
14282 * m/dual.h:
14283 * m/elxsi.h:
14284 * m/f301.h:
14285 * m/gould-np1.h:
14286 * m/gould.h:
14287 * m/i860.h:
14288 * m/ibmps2-aix.h:
14289 * m/ibmrt-aix.h:
14290 * m/ibmrt.h:
14291 * m/irist.h:
14292 * m/is386.h:
14293 * m/isi-ov.h:
14294 * m/mega68.h:
14295 * m/mg1.h:
14296 * m/news-r6.h:
14297 * m/news-risc.h:
14298 * m/news.h:
14299 * m/nh3000.h:
14300 * m/nh4000.h:
14301 * m/ns16000.h:
14302 * m/ns32000.h:
14303 * m/nu.h:
14304 * m/orion.h:
14305 * m/orion105.h:
14306 * m/paragon.h:
14307 * m/pfa50.h:
14308 * m/plexus.h:
14309 * m/pyramid.h:
14310 * m/pyrmips.h:
14311 * m/sh3el.h:
14312 * m/sps7.h:
14313 * m/sr2k.h:
14314 * m/stride.h:
14315 * m/sun1.h:
14316 * m/sun2.h:
14317 * m/sun3-68881.h:
14318 * m/sun3-fpa.h:
14319 * m/sun3-soft.h:
14320 * m/sun3.h:
14321 * m/sun386.h:
14322 * m/symmetry.h:
14323 * m/tad68k.h:
14324 * m/tahoe.h:
14325 * m/targon31.h:
14326 * m/tek4300.h:
14327 * m/tekxd88.h:
14328 * m/tower32.h:
14329 * m/tower32v3.h:
14330 * m/ustation.h:
14331 * m/wicat.h:
14332 * m/xps100.h:
14333 * s/cxux.h:
14334 * s/cxux7.h:
14335 * s/dgux.h:
14336 * s/dgux4.h:
14337 * s/dgux5-4-3.h:
14338 * s/dgux5-4r2.h:
14339 * s/esix.h:
14340 * s/esix5r4.h:
14341 * s/hiuxmpp.h:
14342 * s/hiuxwe2.h:
14343 * s/iris3-5.h:
14344 * s/iris3-6.h:
14345 * s/isc2-2.h:
14346 * s/isc3-0.h:
14347 * s/isc4-0.h:
14348 * s/isc4-1.h:
14349 * s/newsos5.h:
14350 * s/newsos6.h:
14351 * s/osf1.h:
14352 * s/osf5-0.h:
14353 * s/riscix1-1.h:
14354 * s/riscix12.h:
14355 * s/sco4.h:
14356 * s/sco5.h:
14357 * s/sunos4-0.h:
14358 * s/sunos4-1.h:
14359 * s/sunos413.h:
14360 * s/sunos4shr.h:
14361 * s/umax.h:
14362 * s/unipl5-2.h:
14363 * s/xenix.h:
14364 * cxux-crt0.s:
14365 * unexapollo.c:
14366 * unexconvex.c:
14367 * unexenix.c:
14368 * unexsni.c: Remove files for systems no longer supported.
14369
14370 * m/intel386.h: Remove references to unsupported systems.
14371
14372 * w32.c (get_emacs_configuration): Remove reference to i860.
14373
14374 * sysdep.c: Remove dead code.
14375
143762008-01-05 Dan Nicolaescu <dann@ics.uci.edu>
14377
14378 * s/rtu.h:
14379 * m/masscomp.h: Remove files. Platform is obsolete.
14380
143812008-01-04 Michael Albinus <michael.albinus@gmx.de>
14382
14383 * dbusbind.c (Fdbus_method_return): New function.
14384 (xd_read_message): Add the serial number to the event.
14385 (Fdbus_register_method): Activate the function.
14386
143872008-01-03 Stefan Monnier <monnier@iro.umontreal.ca>
14388
14389 * keyboard.c (read_key_sequence): Fix typo.
14390
143912008-01-03 Michael Albinus <michael.albinus@gmx.de>
14392
14393 * dbusbind.c (all): Replace XCAR by CAR_SAFE and XCDR by CDR_SAFE.
14394 (xd_signature, xd_append_arg): Handle element type detection for
14395 empty arrays.
14396 (Fdbus_call_method, Fdbus_send_signal): Undo type casting for
14397 SDATA () calls; this must be solved more general.
14398 (Fdbus_register_signal): Use SBYTES instead of strlen.
14399
144002008-01-03 Magnus Henoch <magnus@zemdatav>
14401
14402 * dbusbind.c (xd_append_arg): Use unsigned char instead of
14403 unsigned int for byte values (necessary for big-endian platform).
14404 (Fdbus_call_method): Handle the case of no returned arguments.
14405
144062007-12-31 Tom Tromey <tromey@redhat.com> (tiny change)
14407
14408 * dbusbind.c (xd_read_message): Use non-static input_event struct.
14409
144102007-12-31 Magnus Henoch <mange@freemail.hu>
14411
14412 * dbusbind.c (xd_signature): Signature of variant is just "v".
14413
144142007-12-30 Michael Albinus <michael.albinus@gmx.de>
14415
14416 * dbusbind.c: Fix several errors and compiler warnings.
14417 Reported by Tom Tromey <tromey@redhat.com>.
14418 (XD_ERROR, XD_DEBUG_MESSAGE)
14419 (XD_DEBUG_VALID_LISP_OBJECT_P): Wrap code with "do ... while (0)".
14420 (xd_append_arg): Part for basic D-Bus types rewritten.
14421 (xd_retrieve_arg): Split implementation of DBUS_TYPE_BYTE and
14422 DBUS_TYPE_(U)INT16. Don't call XD_DEBUG_MESSAGE with "%f" if not
14423 appropriate.
14424 (xd_read_message): Return Qnil. Don't signal an error; it is not
14425 useful during event reading.
14426 (Fdbus_register_signal): Signal an error if the check for
14427 FUNCTIONP fails.
14428 (Fdbus_register_method): New function. The implementation is not
14429 complete, the call of the function signals an error therefore.
14430 (Fdbus_unregister_object): New function, renamed from
14431 Fdbus_unregister_signal. The initial check signals an error, if
14432 the object is not well formed.
14433
144342007-12-30 Richard Stallman <rms@gnu.org>
14435
14436 * textprop.c (get_char_property_and_overlay):
14437 Signal error if POSITION is out of range in a buffer.
14438
144392007-12-29 Martin Rudalics <rudalics@gmx.at>
14440
14441 * w32fns.c (Fx_create_frame): Make copy of frame parameters
14442 because the original parameters are in pure storage now.
14443
144442007-12-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14445
14446 * xdisp.c (phys_cursor_in_rect_p): Check if cursor is in fringe area.
14447
144482007-12-22 Eli Zaretskii <eliz@gnu.org>
14449
14450 * callint.c (syms_of_callint) <command-history>: Add reference to
14451 history-length in the doc string.
14452
144532007-12-17 Jason Rumney <jasonr@gnu.org>
14454
14455 * w32fns.c (w32_wnd_proc) <WM_KEYDOWN>: Cast char to unsigned
14456 before passing as wParam.
14457
144582007-12-22 Michael Albinus <michael.albinus@gmx.de>
14459
14460 * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_BYTE,
14461 DBUS_TYPE_INT16, DBUS_TYPE_UINT16, DBUS_TYPE_INT64,
14462 DBUS_TYPE_UINT64, DBUS_TYPE_DOUBLE and DBUS_TYPE_SIGNATURE.
14463 Return float when DBUS_TYPE_INT32 or DBUS_TYPE_UINT32 do not fit
14464 as number.
14465 (Fdbus_call_method): Fix docstring.
14466
144672007-12-21 Michael Albinus <michael.albinus@gmx.de>
14468
14469 * dbusbind.c (XD_BASIC_DBUS_TYPE, XD_DBUS_TYPE_P, XD_NEXT_VALUE):
14470 New macros.
14471 (XD_SYMBOL_TO_DBUS_TYPE): Rename from XD_LISP_SYMBOL_TO_DBUS_TYPE.
14472 (XD_OBJECT_TO_DBUS_TYPE): Rename from XD_LISP_OBJECT_TO_DBUS_TYPE.
14473 Simplify.
14474 (xd_signature): New function.
14475 (xd_append_arg): Compute also signatures. Major rewrite.
14476 (xd_retrieve_arg): Make debug messages friendly.
14477 (Fdbus_call_method, Fdbus_send_signal): Extend docstring.
14478 Check for signatures of arguments.
14479
144802007-12-19 Michael Albinus <michael.albinus@gmx.de>
14481
14482 * dbusbind.c (QCdbus_type_byte, QCdbus_type_boolean)
14483 (QCdbus_type_int16, QCdbus_type_uint16, QCdbus_type_int32)
14484 (QCdbus_type_uint32, QCdbus_type_int64, QCdbus_type_uint64)
14485 (QCdbus_type_double, QCdbus_type_string, QCdbus_type_object_path)
14486 (QCdbus_type_signature, QCdbus_type_array, QCdbus_type_variant)
14487 (QCdbus_type_struct, QCdbus_type_dict_entry): New D-Bus type symbols.
14488 (XD_LISP_SYMBOL_TO_DBUS_TYPE): New macro.
14489 (XD_LISP_OBJECT_TO_DBUS_TYPE): Add compound types.
14490 (xd_retrieve_value): Remove. Functionality included in ...
14491 (xd_append_arg): New function.
14492 (Fdbus_call_method, Fdbus_send_signal): Apply it.
14493
144942007-12-16 Michael Albinus <michael.albinus@gmx.de>
14495
14496 * dbusbind.c (top): Include <stdio.h>.
14497 (Fdbus_call_method, Fdbus_send_signal): Apply type cast in
14498 dbus_message_new_method_call and dbus_message_new_signal.
14499 (Fdbus_register_signal): Rename unique_name to uname.
14500 Check handler for FUNCTIONP instead of CHECK_SYMBOL. Handle case of
14501 non-existing unique name. Fix typos in matching rule. Return an
14502 object which is useful in Fdbus_unregister_signal.
14503 (Fdbus_unregister_signal): Reimplementation, in order to remove
14504 only the corresponding entry.
14505 (Vdbus_registered_functions_table): Change the order of entries.
14506 Apply these changes in xd_read_message and Fdbus_register_signal.
14507
145082007-12-16 Andreas Schwab <schwab@suse.de>
14509
14510 * fileio.c (Finsert_file_contents): Fix overflow check to not
14511 depend on undefined integer overflow.
14512
145132007-12-14 Jason Rumney <jasonr@gnu.org>
14514
14515 * w32term.c (w32_read_socket): Use MULTIBYTE_CHAR_KEYSTROKE_EVENT
14516 for characters above 127.
14517
145182007-12-13 Jason Rumney <jasonr@gnu.org>
14519
14520 * w32fns.c (w32_wnd_proc, Fw32_reconstruct_hot_key): Range check
14521 before dereferencing array.
14522 (lookup_vk_code): Remove zero comparison.
14523
145242007-12-14 Michael Albinus <michael.albinus@gmx.de>
14525
14526 * dbusbind.c (xd_retrieve_value, xd_retrieve_arg)
14527 (Fdbus_call_method, Fdbus_send_signal, xd_read_message):
14528 Use `unsigned int' instead of `uint'.
14529 (xd_read_message, Fdbus_register_signal): Split expressions into
14530 multiple lines before operators "&&" and "||", according to the
14531 GNU Coding Standards.
14532
145332007-12-14 Eli Zaretskii <eliz@gnu.org>
14534
14535 * dispextern.h (WINDOWS_NT): Fix incorrect spelling of WINDOWSNT.
14536
145372007-12-12 Juri Linkov <juri@jurta.org>
14538
14539 * buffer.c (Frename_buffer): In interactive spec replace
14540 `read-buffer' with `read-string' that uses `buffer-name-history'
14541 as history, and the current buffer's name as default.
14542
145432007-12-10 Stefan Monnier <monnier@iro.umontreal.ca>
14544
14545 * keyboard.c (Fcommand_execute): Call Qcall_interactively instead of
14546 manipulating the backtrace manually.
14547 (make_lispy_event): Merge the ASCII and MULTIBYTE cases.
14548 (struct backtrace, backtrace_list): Remove.
14549 (command_loop_1): Remove dead var `no_direct'.
14550
14551 * buffer.c (reset_buffer_local_variables): If permanent_too is 0, also
14552 preserve non-built-in buffer-local variables.
14553 (Fkill_all_local_variables): Don't re-create&re-set permanent
14554 buffer-local variables.
14555
145562007-12-09 Juri Linkov <juri@jurta.org>
14557
14558 * buffer.c (Frename_buffer): Change interactive spec from "s" to
14559 Lisp code that uses `read-buffer' with current buffer as default.
14560
145612007-12-08 Michael Albinus <michael.albinus@gmx.de>
14562
14563 * dbusbind.c (xd_read_message): Generate an event for every
14564 registered handler. There might be several handlers registered
14565 for the same signal.
14566 (Fdbus_register_signal): Don't overwrite a registration for the
14567 same signal. Add a new registration if handlers are different.
14568 (Vdbus_registered_functions_table): Rework doc string.
14569
145702007-12-07 Michael Albinus <michael.albinus@gmx.de>
14571
14572 * dbusbind.c (Fdbus_get_unique_name, xd_read_message)
14573 (Fdbus_register_signal): Use DBUS_MAXIMUM_NAME_LENGTH and
14574 DBUS_MAXIMUM_MATCH_RULE_LENGTH for string lengths.
14575 (Fdbus_call_method, Fdbus_send_signal, Fdbus_register_signal):
14576 Unify argument lists.
14577 (xd_read_message, Fdbus_register_signal): Reorder and extend event
14578 arguments and hash table keys. Use unique name for service.
14579 (Fdbus_unregister_signal): Remove checks.
14580 (Vdbus_registered_functions_table): Fix doc string.
14581
145822007-12-05 Magnus Henoch <mange@freemail.hu>
14583
14584 * process.c (make_process): Initialize pty_flag to 0.
14585
145862007-12-05 Jason Rumney <jasonr@gnu.org>
14587
14588 * image.c (xbm_load) [WINDOWSNT]: Shuffle the bits of directly
14589 specified XBMs.
14590
145912007-12-05 Richard Stallman <rms@gnu.org>
14592
14593 * xdisp.c (syms_of_xdisp) <scroll-conservatively>: Doc fix.
14594
145952007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14596
14597 * mac.c (cfsockets_for_select) [MAC_OSX && SELECT_USE_CFSOCKET]:
14598 New variable.
14599 (mac_try_close_socket) [MAC_OSX]: New function.
14600 [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]:
14601 Update cfsockets_for_select. Replace invalid CFRunLoop source.
14602
14603 * sysdep.c (emacs_close) [MAC_OSX && HAVE_CARBON]:
14604 Use mac_try_close_socket.
14605
146062007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14607
14608 * unexmacosx.c (unrelocate): New argument BASE. Use it instead of
14609 reloc_base.
14610 (copy_dysymtab): Compute relocation base here.
14611 (rebase_reloc_address) [__ppc64__]: New function.
14612 (copy_dysymtab) [__ppc64__]: Use it if relocation base needs to be
14613 changed.
14614
146152007-12-05 Jason Rumney <jasonr@gnu.org>
14616
14617 * w32proc.c (sys_spawnve): Quote args with wildcards.
14618
146192007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14620
14621 * unexmacosx.c (copy_data_segment): Also copy __gcc_except_tab and
14622 __objc_* sections.
14623 (unrelocate) [_LP64]: Set relocation base to address of data segment.
14624
146252007-12-05 Michael Albinus <michael.albinus@gmx.de>
14626
14627 * dbusbind.c (xd_read_message): Return value is a Lisp_Object.
14628 Move check for Vdbus_registered_functions_table to
14629 xd_read_queued_messages.
14630 (xd_read_queued_messages): Protect xd_read_message calls by
14631 internal_condition_case_1.
14632
146332007-12-04 Michael Albinus <michael.albinus@gmx.de>
14634
14635 * dbusbind.c (QCdbus_system_bus, QCdbus_session_bus): Rename from
14636 Qdbus_system_bus and Qdbus_session_bus, respectively.
14637 (Vdbus_intern_symbols): Remove.
14638 (Vdbus_registered_functions_table): New hash table.
14639 (XD_SYMBOL_INTERN_SYMBOL): Remove.
14640 (xd_read_message, Fdbus_register_signal, Fdbus_unregister_signal):
14641 Rewrite in order to manage registered functions by hash table
14642 Vdbus_registered_functions_table.
14643
146442007-12-03 Jan Djärv <jan.h.d@swipnet.se>
14645
14646 * xterm.c: Update URL to Window Manager Specification in comment.
14647
146482007-12-02 Michael Albinus <michael.albinus@gmx.de>
14649
14650 * config.in (HAVE_DBUS): Add.
14651
14652 * Makefile.in (HAVE_DBUS): Add D-Bus definitions if defined.
14653 (ALL_CFLAGS): Add ${DBUS_CFLAGS}.
14654 (obj): Add $(DBUS_OBJ).
14655 (LIBES): Add $(DBUS_LIBS).
14656 (dbusbind.o): New target.
14657
14658 * dbusbind.c: New file.
14659
14660 * emacs.c (main): Call syms_of_dbusbind when HAVE_DBUS is defined.
14661
14662 * keyboard.c: All D-Bus related code is wrapped by "#ifdef HAVE_DBUS".
14663 (Qdbus_event): New Lisp symbol.
14664 (kbd_buffer_get_event, make_lispy_event): Handle DBUS_EVENT.
14665 (gobble_input): Call xd_read_queued_messages, reading D-Bus messages.
b97439ce 14666 (keys_of_keyboard): Define dbus-event.
aac0c6e3
MR
14667
14668 * termhooks.h (event_kind): Add DBUS_EVENT when HAVE_DBUS is defined.
14669
146702007-12-01 Richard Stallman <rms@gnu.org>
14671
14672 * search.c (syms_of_search) <inhibit-changing-match-data>: Doc fix.
14673
146742007-11-30 Jason Rumney <jasonr@gnu.org>
14675
14676 * w32console.c (w32con_ins_del_lines, scroll_line): Clip to window.
14677 (w32con_reset_terminal_modes): Clear screen buffer.
14678 (w32_face_attributes): Don't use color indexes that are out of range.
14679 Only reverse the default colors.
14680
14681 * xfaces.c (map_tty_color, tty_color_name): Remove special case for
14682 WINDOWSNT.
14683
14684 * w32console.c, w32term.h (vga_stdcolor_name): Remove.
14685
146862007-11-29 Jason Rumney <jasonr@gnu.org>
14687
14688 * w32console.c: Leave HAVE_WINDOW_SYSTEM defined.
14689 (w32_face_attributes): Use Vtty_defined_color_alist to determine
14690 if the terminal colors are initialized.
14691 (unspecified_fg, unspecified_bg): Remove unused declarations.
14692
146932007-11-29 Andreas Schwab <schwab@suse.de>
14694
14695 * keyboard.c (apply_modifiers): Fix typo.
14696
146972007-11-29 Richard Stallman <rms@gnu.org>
14698
14699 * keymap.c (Fcurrent_local_map): Doc fix.
14700
147012007-11-28 Petr Salinger <Petr.Salinger@seznam.cz> (tiny change)
14702
14703 * s/gnu-kfreebsd.h: New file.
14704
147052007-11-28 Stefan Monnier <monnier@iro.umontreal.ca>
14706
14707 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer):
14708 Don't cast redundantly.
14709
14710 * keyboard.c (KEY_TO_CHAR): New macro.
14711 (parse_modifiers, apply_modifiers): Accept integer arguments.
14712 (read_key_sequence): Use them to unify the "shift->unshift" mapping
14713 for chars and symbol keys.
14714 After doing such remapping, apply function-key-map again.
14715
147162007-11-27 Dan Nicolaescu <dann@ics.uci.edu>
14717
14718 * Makefile.in (SOME_MACHINE_LISP): Remove VMS files, they are not
14719 compiled anymore.
14720
147212007-11-26 Andreas Schwab <schwab@suse.de>
14722
14723 * process.c (list_processes_1): Fix indentation level of the
14724 command column.
14725
147262007-11-23 Andreas Schwab <schwab@suse.de>
14727
14728 * editfns.c (Fformat): Handle %c specially since it requires the
14729 argument to be of type int.
14730
147312007-11-23 Markus Triska <markus.triska@gmx.at>
14732
14733 * emacs.c (main): Call init_editfns before init_process, since
14734 init_process sets Vprocess_connection_type depending on OS release.
14735
147362007-11-22 Stefan Monnier <monnier@iro.umontreal.ca>
14737
14738 * data.c (do_symval_forwarding): Use same code as in find_symbol_value.
14739 (find_symbol_value): Use do_symval_forwarding.
14740
14741 * data.c (set_internal): Set the value in the `cons-cell' (for
14742 Buffer_Local_values) not only for frame-local variables.
14743
147442007-11-22 Andreas Schwab <schwab@suse.de>
14745
14746 * data.c (Fnumber_to_string): Add cast when passing EMACS_INT
14747 values to sprintf.
14748 * keymap.c (Fsingle_key_description): Likewise.
14749 * print.c (print_object): Likewise.
14750
147512007-11-22 Jan Djärv <jan.h.d@swipnet.se>
14752
14753 * gtkutil.c (update_frame_tool_bar): Don't call x-gtk-map-stock if
14754 file for image is nil.
14755
147562007-11-22 Dan Nicolaescu <dann@ics.uci.edu>
14757
14758 * term.c: Include stdarg.h.
14759 (fatal): Implement using varargs.
14760 * lisp.h (fatal): Add argument types. (Restore 2005-09-30 change).
14761
147622007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
14763
14764 * lisp.h (struct Lisp_Buffer_Objfwd): Add a `slottype' field.
14765 * data.c (store_symval_forwarding): Get type from buffer_objfwd.
14766 Update call to buffer_slot_type_mismatch.
14767 * buffer.h (buffer_local_types, PER_BUFFER_TYPE): Remove.
14768 (buffer_slot_type_mismatch): Update.
14769 * buffer.c (buffer_local_types): Remove.
14770 (buffer_slot_type_mismatch): Get the symbol and type as arguments.
14771 (defvar_per_buffer): Set the type in the buffer_objfwd.
14772
147732007-11-21 Jason Rumney <jasonr@gnu.org>
14774
14775 * w32bdf.c (w32_init_bdf_font, w32_BDF_to_x_font):
14776 CreateFileMapping returns NULL on failure.
14777
147782007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
14779
14780 * search.c (Fset_match_data): Remove the `evaporate' feature.
14781 (unwind_set_match_data): Don't use the `evaporate' feature.
14782
147832007-11-21 Jason Rumney <jasonr@gnu.org>
14784
14785 * dispnew.c (init_display) [WINDOWSNT]: Hardcode terminal_type.
14786
14787 * w32console.c (w32con_write_glyphs): Remove unused variables.
14788
147892007-11-20 Dan Nicolaescu <dann@ics.uci.edu>
14790
14791 * macterm.c (mac_term_init): Call add_keyboard_wait_descriptor.
14792
14793 * s/darwin.h (MULTI_KBOARD): Remove.
14794
14795 * macfns.c (x_create_tip_frame, Fx_create_frame)
14796 (x_create_tip_frame): Don't deal with MULTI_KBOARD.
14797
147982007-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
14799
14800 * buffer.c (Fbuffer_local_value): Remove redundant test.
14801 (swap_out_buffer_local_variables): Swap out binding in `buffer' rather
14802 than in `current-buffer' to match the comment.
14803 Do the swap using swap_in_global_binding.
14804
14805 * data.c (store_symval_forwarding, set_internal):
14806 * eval.c (specbind): Remove dead code.
14807
14808 * coding.c (detect_coding, Fupdate_coding_systems_internal):
14809 * fns.c (Fmd5): Use find_symbol_value rather than SYMBOL_VALUE
14810 Since we do not want to see internal Lisp_*fwd objects here.
14811
148122007-11-18 Jan Djärv <jan.h.d@swipnet.se>
14813
14814 * sysdep.c (init_system_name): Use getaddrinfo if available.
14815
14816 * xterm.c (x_scroll_bar_set_handle, x_scroll_bar_handle_click)
14817 (x_scroll_bar_note_movement): start, end, with, height in struct
14818 scroll_bar are integers and not Lisp_Object, so remove XINT for them.
14819
148202007-11-17 Dan Nicolaescu <dann@ics.uci.edu>
14821
14822 * puresize.h (BASE_PURESIZE): Increase to 1190000.
14823
148242007-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
14825
14826 * buffer.h (struct buffer): Move `undo_list' back to before `name'.
14827 This undoes Richard's change of 14-Oct-2002.
14828
14829 * alloc.c (allocate_other_vector):
14830 * lisp.h (allocate_other_vector): Remove.
14831
14832 * window.c (struct save_window_data): Move non-lisp data to the end
14833 and make it `int' rather than Lisp_Object.
14834 (Fcurrent_window_configuration): Use ALLOCATE_PSEUDOVECTOR.
14835 Done wrap/unwrap integer values.
14836 (Fset_window_configuration, compare_window_configurations):
14837 Update use of fields to their new types.
14838
14839 * xterm.h (struct scroll_bar): Only use Lisp_Object for lisp data.
14840 Turn integer fields into `int'. Merge x_window_low and x_window_high.
14841 (SCROLL_BAR_PACK, SCROLL_BAR_UNPACK, SCROLL_BAR_X_WINDOW)
14842 (SET_SCROLL_BAR_X_WINDOW): Remove.
14843 (SCROLL_BAR_X_WIDGET, SET_SCROLL_BAR_X_WIDGET):
14844 Access the new x_window field directly.
14845 * xterm.c (x_scroll_bar_create): Use a pseudovector.
14846 Don't wrap/unwrap integers into Lisp_Objects.
14847 (XTset_vertical_scroll_bar, x_scroll_bar_handle_click)
14848 (x_scroll_bar_report_motion):
14849 Don't wrap/unwrap integers into Lisp_Objects.
14850 (x_term_init): Use SDATA.
14851 (x_window_to_scroll_bar, x_create_toolkit_scroll_bar)
14852 (x_scroll_bar_set_handle, x_scroll_bar_remove)
14853 (XTset_vertical_scroll_bar, x_scroll_bar_expose)
14854 (x_scroll_bar_report_motion, x_scroll_bar_clear):
14855 * xfns.c (x_set_background_color):
14856 * gtkutil.c (xg_create_scroll_bar, xg_set_toolkit_scroll_bar_thumb):
14857 Access the new x_window field directly.
14858
14859 * alloc.c (ALLOCATE_PSEUDOVECTOR): Move to lisp.h.
14860 (allocate_pseudovector): Make non-static.
14861
14862 * lisp.h (enum pvec_type): New tag PVEC_OTHER.
14863 (allocate_pseudovector): Declare.
14864 (ALLOCATE_PSEUDOVECTOR): Move from alloc.c.
14865
148662007-11-15 Andreas Schwab <schwab@suse.de>
14867
14868 * editfns.c (Fformat): Correctly format EMACS_INT values.
14869 Also take precision into account when formatting an integer.
14870
14871 * keyboard.c (Fevent_symbol_parse_modifiers): Fix declaration.
14872
148732007-11-15 Stefan Monnier <monnier@iro.umontreal.ca>
14874
14875 * keyboard.c (Fevent_symbol_parse_modifiers): New function.
14876 (syms_of_keyboard): Defsubr it.
14877
14878 * data.c (swap_in_global_binding): Fix longstanding bug where
14879 store_symval_forwarding was not called with the right second argument,
14880 thus causing objfwd-ing from being dropped.
14881
148822007-11-14 Juanma Barranquero <lekktu@gmail.com>
14883
14884 * macfns.c (Fx_create_frame, Fx_display_pixel_width)
14885 (Fx_display_pixel_height, Fx_display_planes)
14886 (Fx_display_color_cells, Fx_server_max_request_size)
14887 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
14888 (Fx_display_visual_class, Fx_display_save_under):
14889 * w32fns.c (Fx_create_frame, Fx_display_pixel_width)
14890 (Fx_display_pixel_height, Fx_display_planes)
14891 (Fx_display_color_cells, Fx_server_max_request_size)
14892 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
14893 (Fx_display_mm_height, Fx_display_mm_width)
14894 (Fx_display_backing_store, Fx_display_visual_class)
14895 (Fw32_select_font, Fx_display_save_under):
14896 * xfns.c (Fx_create_frame, Fx_display_pixel_width)
14897 (Fx_display_pixel_height, Fx_display_planes)
14898 (Fx_display_color_cells, Fx_server_max_request_size)
14899 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
14900 (Fx_display_save_under): Fix typos in docstrings.
14901
149022007-11-14 Juanma Barranquero <lekktu@gmail.com>
14903
14904 * w32fns.c (Fw32_registered_hot_keys): Don't return the nil values
14905 corresponding to deleted entries; they are an implementation detail.
14906 (gray_bitmap_width, gray_bitmap_height, gray_bitmap_bits):
14907 Remove variables.
14908 (w32_pass_extra_mouse_buttons_to_system, w32_strict_fontnames)
14909 (w32_pass_multimedia_buttons_to_system, w32_strict_painting)
14910 (Vw32_charset_info_alist, w32_to_x_color, w32_init_class)
14911 (w32_createscrollbar, w32_createwindow, my_post_msg, w32_get_modifiers)
14912 (w32_grabbed_keys, cancel_all_deferred_msgs): Make static.
14913 (Fw32_define_rgb_color, Fw32_load_color_file)
14914 (syms_of_w32fns) <w32-pass-multimedia-buttons-to-system>:
14915 Fix typos in docstrings.
14916 (Fx_server_version): Reflow docstring.
14917 (Fw32_shell_execute): Doc fixes.
14918
149192007-11-13 Juanma Barranquero <lekktu@gmail.com>
14920
14921 * w32fns.c (Fw32_register_hot_key): Don't try to register hot key
14922 if w32_parse_hot_key returned nil.
14923
149242007-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
14925
14926 * xdisp.c (load_overlay_strings): Fix copy&paste typo.
14927
149282007-11-09 Jason Rumney <jasonr@gnu.org>
d6c952f8 14929
aac0c6e3
MR
14930 * s/ms-w32.c (USE_TOOLKIT_SCROLL_BARS): Define.
14931
14932 * w32term.c (w32_scroll_bar_handle_click): Use SCROLL_BAR_CLICK_EVENT.
14933
14934 * keyboard.c (discard_mouse_events, make_lispy_event) [WINDOWSNT]:
14935 Remove W32_SCROLL_BAR_CLICK_EVENT.
14936
14937 * termhooks.h (enum event_kind) [WINDOWSNT]: Likewise.
14938 Add MULTIMEDIA_KEY_EVENT.
14939
14940 * keyboard.c (lispy_function_keys) [WINDOWSNT]: Add more keys.
14941 (lispy_multimedia_keys) [WINDOWSNT]: New array.
14942 (make_lispy_event) [WINDOWSNT]: Use it to translate
14943 MULTIMEDIA_KEY_EVENT.
14944
14945 * w32term.h (WM_APPCOMMAND): Define if not already.
14946 (GET_APPCOMMAND_LPARAM): Likewise.
14947
14948 * w32term.c (w32_read_socket): Generate MULTIMEDIA_KEY_EVENT from
14949 WM_APPCOMMAND.
14950
14951 * w32fns.c (w32_pass_multimedia_buttons_to_system): New user option.
14952 (syms_of_w32fns): Export and initialize it.
14953 (w32_wnd_proc): Pass WM_APPCOMMAND on to w32_read_socket.
14954
149552007-11-09 Chong Yidong <cyd@stupidchicken.com>
14956
14957 * dispextern.h (struct it): Don't define OVERLAY_STRING_CHUNK_SIZE
14958 twice.
14959
14960 * xdisp.c (handle_face_prop): Fix last change.
14961
149622007-11-09 Richard Stallman <rms@gnu.org>
14963
14964 * xdisp.c (handle_face_prop): Test for strings that came from overlays,
14965 not just for after-strings and before-strings.
14966 Call face_for_overlay_string and pass the overlay to it.
14967 (handle_display_prop): Determine whether property came from an overlay.
14968 Pass OVERLAY arg to handle_single_display_spec.
14969 (handle_single_display_spec): New arg OVERLAY sets it->from_overlay.
14970 (load_overlay_strings): Fill in it->string_overlays.
14971 (get_overlay_strings_1, push_it, pop_it): Handle it->from_overlays.
14972
14973 * xfaces.c (face_for_overlay_string): Function renamed from
14974 face_at_buffer_position_no_overlays, and add arg OVERLAY.
14975
14976 * dispextern.h (struct it): New elt string_overlays.
14977 New elt from_overlay, also in stack.
14978 Rearrange a few elements.
14979 (face_for_overlay_string): Decl renamed from
14980 face_at_buffer_position_no_overlays, and add argument.
14981
149822007-11-09 Richard Stallman <rms@gnu.org>
14983
14984 * xdisp.c (handle_face_prop): Use face_at_buffer_position_no_overlays
14985 to get the base face for an overlay string.
14986
14987 * dispextern.h (face_at_buffer_position_no_overlays): Add decl.
14988
14989 * xfaces.c (face_at_buffer_position_no_overlays): New function.
14990
14991 * xdisp.c (handle_stop): Move some code out of loop.
14992
149932007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14994
14995 * macfns.c [USE_ATSUI] (Fmac_atsu_font_face_attributes):
14996 Fix conversion from Lisp object to ATSUFontID.
14997
149982007-11-09 Jason Rumney <jasonr@gnu.org>
14999
15000 * xdisp.c (Fformat_mode_line): Do nothing when noninteractive.
15001
150022007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15003
15004 * unexmacosx.c (unexec_regions_recorder, unexec_regions_merge):
15005 Don't assume regions are aligned to page boundary.
15006 (print_load_command_name): Add LC_UUID if defined.
15007
150082007-11-09 Richard Stallman <rms@gnu.org>
15009
15010 * emacs.c (syms_of_emacs) <installation-directory>: Reflow docstring.
15011
150122007-11-07 Jason Rumney <jasonr@gnu.org>
15013
15014 * s/windows95.h: Remove.
15015
150162007-11-06 Jan Djärv <jan.h.d@swipnet.se>
15017
15018 * gtkutil.c (xg_tool_bar_menu_proxy): Handle GTK_IMAGE_ICON_NAME and
15019 abort with a message on unhandled store_type values.
15020
150212007-11-01 Jan Djärv <jan.h.d@swipnet.se>
15022
15023 * xterm.c, xfns.c, xselect.c, xterm.h, s/msdos.h, s/sco4.h, s/sco5.h:
15024 Remove HAVE_X11R5 and HAVE_X11R4.
15025
150262007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
15027
15028 * Makefile.in: Remove references to sunfns.c and sunfns.o.
15029
150302007-11-01 Johan Bockgård <bojohan@gnu.org>
15031
15032 * macterm.c, w32term.c, xterm.c (x_draw_stretch_glyph_string):
15033 Don't set s->stippled_p here, since it has already been set by
15034 x_set_glyph_string_gc from x_draw_glyph_string.
15035
150362007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
15037
15038 * sunfns.c: Remove file.
15039
15040 * m/sun386.h:
15041 * m/sun2.h:
15042 * m/sparc.h: Remove Sun windows code.
15043
150442007-10-31 Stefan Monnier <monnier@iro.umontreal.ca>
15045
15046 * keyboard.c (syms_of_keyboard): Initialize the initial_kboard.
15047 (init_keyboard): Set current_kboard's window-system to nil.
15048 (tty_read_avail_input): Typo.
15049 * frame.c (make_initial_frame): Don't initialize the initial_kboard.
15050
150512007-10-31 Dan Nicolaescu <dann@ics.uci.edu>
15052
15053 * s/usg5-4.h:
15054 * s/usg5-3.h:
15055 * s/ptx.h:
15056 * m/is386.h:
15057 * m/ibmps2-aix.h:
15058 * Makefile.in: Remove all mentions of X10.
15059
15060 * dispnew.c (syms_of_display): Don't mention version 10.
15061
150622007-10-28 Juanma Barranquero <lekktu@gmail.com>
15063
15064 * makefile.w32-in (OBJ1): Remove abbrev.$(O).
15065 ($(BLD)/abbrev.$(O)): Remove.
15066
150672007-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
15068
15069 Rewrite abbrev.c in Elisp.
15070 * image.c (Qcount): Don't declare as extern.
15071 (syms_of_image): Initialize and staticpro `Qcount'.
15072 * puresize.h (BASE_PURESIZE): Increase for the new abbrev.el functions.
15073 * emacs.c (main): Don't call syms_of_abbrev.
15074 * Makefile.in (obj): Remove abbrev.o.
15075 (abbrev.o): Remove.
15076 * abbrev.c: Remove.
15077
150782007-10-26 Martin Rudalics <rudalics@gmx.at>
15079
15080 * window.c (window_min_size_2): Don't count header-line.
15081
150822007-10-26 Dan Nicolaescu <dann@ics.uci.edu>
15083
15084 * frame.h (struct frame): Move all bit fields after the first bit
15085 field to take advantage of the available space. Group all the
15086 chars together to reduce wasted space due to padding.
15087
150882007-10-26 Juanma Barranquero <lekktu@gmail.com>
15089
15090 * minibuf.c (Fread_minibuffer, Feval_minibuffer): Reflow docstrings.
15091
15092 * alloc.c (spare_memory, stack_copy, stack_copy_size, ignore_warnings)
15093 (Vdead, dont_register_blocks, staticvec, staticidx, interval_block)
15094 (n_interval_blocks, init_strings, check_string_bytes, check_sblock)
15095 (init_float, free_float, n_cons_blocks, init_cons, all_vectors)
15096 (n_vectors, symbol_block, symbol_block_index, symbol_free_list)
15097 (n_symbol_blocks, init_symbol, marker_block, marker_free_list)
15098 (n_marker_blocks, init_marker, valid_pointer_p, make_pure_float)
15099 (last_marked, mark_object_loop_halt): Make static.
15100
15101 * frame.c (syms_of_frame) <delete-frame-functions>:
15102 Fix typo in docstring.
15103
151042007-10-25 Juanma Barranquero <lekktu@gmail.com>
15105
15106 * w32.c (init_environment): Fix tiny memory leak.
15107 (w32_get_resource): Remove unused variable `ok'.
15108
151092007-10-25 Stefan Monnier <monnier@iro.umontreal.ca>
15110
15111 Make `window-system' into a keyboard-local variable (rather than
15112 frame-local as done originally by multi-tty).
15113
15114 * keyboard.h (struct kboard): Add Vwindow_system.
15115 * keyboard.c (init_kboard): Set a default for Vwindow_system.
15116 (mark_kboards): Mark Vwindow_system.
15117
15118 * dispnew.c (syms_of_display) <window-system>: Declare terminal-local.
15119 (init_display): Don't set the obsolete `window-system' frame-param.
15120
15121 * xterm.c (x_term_init):
15122 * w32term.c (w32_create_terminal):
15123 * term.c (init_tty): Set Vwindow_system.
15124 * macterm.c (mac_create_terminal): Set a keyboard (missing piece of the
15125 multi-tty merge maybe?), copied from w32term.c. Set Vwindow_system.
15126
15127 * xfns.c (Fx_create_frame, x_create_tip_frame):
15128 * w32fns.c (Fx_create_frame, x_create_tip_frame):
15129 * macfns.c (Fx_create_frame):
15130 Don't set the obsolete `window-system' frame-param.
15131
15132 * frame.h (Qwindow_system): Remove.
15133 * frame.c (Qwindow_system): Remove. In `syms_of_frame' as well.
15134 (Fmake_terminal_frame): Don't set obsolete `window-system' frame-param.
15135
151362007-10-24 Richard Stallman <rms@gnu.org>
15137
15138 * frame.c (x_figure_window_size): For fullscreen case,
15139 set USPosition | PPosition without clobbering rest of window_prompting.
15140
15141 * keyboard.c (Fcurrent_idle_time): Doc fix.
15142
15143 * print.c (Fwith_output_to_temp_buffer): Doc fix.
15144
151452007-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
15146
15147 * process.c (unwind_request_sigio): Only define if __ultrix__.
15148
15149 * callproc.c (child_setup): Remove spurious *.
15150
15151 * lisp.h (Fget_text_property): Declare.
15152 (have_menus_p): Declare it here rather than in sys-dep header files.
15153 * macterm.h (have_menus_p):
15154 * msdos.h (have_menus_p):
15155 * xterm.h (have_menus_p): Remove.
15156
15157 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
15158 (Fmake_variable_frame_local): Just check the variable's const-ness
15159 rather than checking nil or t.
15160
151612007-10-22 Jason Rumney <jasonr@gnu.org>
15162
15163 * w32fns.c: Include math.h.
15164 (w32_abort): Declaration moved to nt/config.nt.
15165
15166 * s/ms-w32.h (HAVE_STDLIB_H): Define.
15167 (abort): Redefinition moved to nt/config.nt.
15168
15169 * m/windowsnt.h: Remove.
15170
151712007-10-22 Juanma Barranquero <lekktu@gmail.com>
15172
15173 * emacs.c (Fdump_emacs): Fix typo in message.
15174 (syms_of_emacs) <kill-emacs-hook>: Fix typo in docstring.
15175 <installation-directory>: Reflow docstring.
15176
151772007-10-22 Juri Linkov <juri@jurta.org>
15178
15179 * minibuf.c: Allow minibuffer default to be a list of default values.
15180 With empty input use the first element of this list as returned default.
15181 (string_to_object)
15182 (read_minibuf_noninteractive): If defalt is cons, set val to its car.
15183 (read_minibuf): If defalt is cons, set histstring to its car.
15184 (Fread_string): If default_value is cons, set val to its car.
15185 (Fread_buffer): If def is cons, use its car.
15186 (Fcompleting_read): If defalt is cons, set val to its car.
15187
151882007-10-21 Michael Albinus <michael.albinus@gmx.de>
15189
15190 * fileio.c (Fcopy_file): Call file name handler with preserve_uid_gid.
15191
151922007-10-20 Juanma Barranquero <lekktu@gmail.com>
15193
15194 * doc.c (Fdocumentation): Check for advice in all cases.
15195
151962007-10-19 Chong Yidong <cyd@stupidchicken.com>
15197
15198 * Makefile.in [HAVE_LIBRESOLV]: Add -lresolv to linker flags.
15199
152002007-10-19 Richard Stallman <rms@gnu.org>
15201
15202 * doc.c (Fdocumentation): Check for and handle an advised function.
15203
152042007-10-19 Juanma Barranquero <lekktu@gmail.com>
15205
15206 * process.c (Fset_process_filter): Doc fix.
15207
152082007-10-18 Stefan Monnier <monnier@iro.umontreal.ca>
15209
15210 * keyboard.c (read_key_sequence): Undo a change introduced by multi-tty
15211 which caused key-translation-map to applied repeatedly (thus breaking
15212 double-mode).
15213
152142007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
15215
15216 * xselect.c (x_own_selection, x_handle_selection_clear)
15217 (x_clear_frame_selections):
15218 * w32menu.c (list_of_panes, list_of_items):
15219 * w32fns.c (w32_color_map_lookup, Fx_create_frame, Fx_display_list):
15220 * textprop.c (validate_plist, interval_has_all_properties)
15221 (interval_has_some_properties, interval_has_some_properties_list)
15222 (add_properties, text_property_list):
15223 * process.c (Fget_buffer_process, list_processes_1, status_notify):
15224 * minibuf.c (Fassoc_string):
15225 * macselect.c (x_own_selection, x_clear_frame_selections)
15226 (Fx_disown_selection_internal):
15227 * keymap.c (Fcommand_remapping, where_is_internal, describe_map_tree):
15228 Use CONSP rather than !NILP and XC[AD]R rather than Fc[ad]r.
15229
152302007-10-17 Chong Yidong <cyd@stupidchicken.com>
15231
15232 * process.c: Link to libs for calling res_init() if available.
15233 (Fmake_network_process): Call res_init() before getaddrinfo or
15234 gethostbyname, if possible.
15235
152362007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
15237
15238 * lread.c (read1): Set pvectype for char_tables.
15239
15240 * lisp.h (XMISCANY, XMARKER, XINTFWD, XBOOLFWD, XOBJFWD, XOVERLAY)
15241 (XBUFFER_OBJFWD, XBUFFER_LOCAL_VALUE, XKBOARD_OBJFWD, XSAVE_VALUE):
15242 Add type checks.
15243 (SOME_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP): Remove.
15244
15245 * alloc.c (free_misc): Use XMISCTYPE.
15246 (live_misc_p, gc_sweep): Use Lisp_Misc_Any.
15247
152482007-10-17 Glenn Morris <rgm@gnu.org>
15249
15250 * minibuf.c (Qcompletion_ignore_case): New Lisp_Object.
15251 (syms_of_minibuf): Add Qcompletion_ignore_case.
15252 * dired.c (Qcompletion_ignore_case): Change to external.
15253 (syms_of_dired) [VMS]: Remove Qcompletion_ignore_case.
15254 * fileio.c (Qcompletion_ignore_case): New external Lisp_Object.
15255 (Fread_file_name): Use it rather than intern'ing.
15256
15257 * coding.c (Qcompletion_ignore_case): New external Lisp_Object.
15258 (Fread_coding_system): Ignore case of user input.
15259
152602007-10-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15261
15262 * xdisp.c (handle_display_prop): Ignore display specs after
15263 replacing one when string text is being replaced.
15264 (handle_single_display_spec): Pretend as if characters with display
15265 property haven't been consumed only when buffer text is being replaced.
15266
152672007-10-16 Stefan Monnier <monnier@iro.umontreal.ca>
15268
15269 * xfns.c (Fx_create_frame, Fx_display_list):
15270 * window.c (window_fixed_size_p, enlarge_window)
15271 (shrink_window_lowest_first):
15272 * macterm.c (init_font_name_table):
15273 * macfns.c (Fx_create_frame, Fx_display_list):
15274 * lread.c (close_load_descs):
15275 * keyboard.c (read_char_x_menu_prompt):
15276 * fns.c (Fmember, Fmemql, Fdelete, Fset_char_table_parent):
15277 * coding.c (code_convert_region_unwind): Test the type of an object
15278 rather than just !NILP before extracting data from it.
15279
15280 * alloc.c (Fpurecopy): Set the pvec tag on pseudo vectors.
15281
15282 * lisp.h (enum Lisp_Misc_Type): Del Lisp_Misc_Some_Buffer_Local_Value.
15283 (XMISCANY): New macro.
15284 (XMISCTYPE): Use it.
15285 (struct Lisp_Misc_Any): New type.
15286 (union Lisp_Misc): Use it.
15287 (struct Lisp_Buffer_Local_Value): Add `local_if_set' bit.
15288 * data.c (Fboundp, store_symval_forwarding, swap_in_global_binding)
15289 (find_symbol_value, set_internal, default_value, Fset_default)
15290 (Fmake_variable_buffer_local, Fmake_local_variable)
15291 (Fkill_local_variable, Fmake_variable_frame_local, Flocal_variable_p)
15292 (Flocal_variable_if_set_p, Fvariable_binding_locus):
15293 The SOME_BUFFER_LOCAL_VALUEP distinction is replaced by local_if_set.
15294 * alloc.c (allocate_buffer): Set the size and tag.
15295 (allocate_misc, mark_maybe_object, mark_object, survives_gc_p):
15296 Use XMISCANY.
15297 (die): Follow the GNU convention for error messages.
15298 * print.c (print_object): SOME_BUFFER_LOCAL_VALUEP -> local_if_set.
15299 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Don't set the
15300 tag any more.
15301 (set_buffer_internal_1):
15302 * frame.c (store_frame_param):
15303 * eval.c (specbind):
15304 * xdisp.c (select_frame_for_redisplay): Drop SOME_BUFFER_LOCAL_VALUEP.
15305
15306 * doc.c (Fsnarf_documentation): Simplify.
15307
153082007-10-14 Juanma Barranquero <lekktu@gmail.com>
15309
15310 * w32term.c (w32_font_is_double_byte, my_create_scrollbar): Make static.
15311 (syms_of_w32term) <w32-enable-unicode-output>: Fix typo in docstring.
15312
153132007-10-14 Stefan Monnier <monnier@iro.umontreal.ca>
15314
15315 * buffer.c (Fmake_indirect_buffer): Set the buffer's tag.
15316
153172007-10-14 Juanma Barranquero <lekktu@gmail.com>
15318
15319 * eval.c (do_autoload): Don't save autoloads.
15320
15321 * data.c (Ffset): Save autoload of the function being set.
15322
153232007-10-07 John Paul Wallington <jpw@pobox.com>
15324
15325 * xfns.c (x_create_tip_frame): Set the `display-type' frame
15326 parameter before setting up faces.
15327
153282007-10-13 Eli Zaretskii <eliz@gnu.org>
15329
15330 * ccl.c (Fregister_code_conversion_map):
15331 * keyboard.c (append_tool_bar_item): Reformat last change.
15332
15333 * lisp.h (eabs): Rename from `abs'. All callers changed.
15334
153352007-10-05 Dmitry Antipov <dmantipov@yandex.ru>
15336
15337 * buffer.c (add_overlay_mod_hooklist):
15338 * ccl.c (Fregister_ccl_program, Fregister_code_conversion_map):
15339 * fontset.c (make_fontset):
15340 * keyboard.c (GROW_RAW_KEYBUF, menu_bar_items, menu_bar_item)
15341 (append_tool_bar_item):
15342 * macmenu.c (grow_menu_items):
15343 * w32menu.c (grow_menu_items):
15344 * xmenu.c (grow_menu_items): Use larger_vector.
15345
153462007-10-13 Eli Zaretskii <eliz@gnu.org>
15347
15348 * msdos.c (dos_rawgetc): Undo last change (there's no ``leaving
15349 selected frame'' on MSDOS).
15350
153512007-10-12 Martin Rudalics <rudalics@gmx.at>
15352
15353 * frame.c (Qexplicit_name): New variable.
15354 (x_report_frame_params): Report it in parameter alist.
15355 (syms_of_frame): Intern and staticpro it.
15356
153572007-10-10 Patrick Mahan <mahan@mahan.org> (tiny change)
15358
15359 * macfns.c (x_create_tip_frame): Set terminal for frame.
15360
153612007-10-10 Stefan Monnier <monnier@iro.umontreal.ca>
15362
15363 * frame.c (Qenvironment): Remove.
15364 (syms_of_frame) <Qenvironment>: Don't initialize.
15365 (Fdelete_frame): Don't treat the `environment' param specially.
15366 * frame.h (Qenvironment): Don't declare.
15367 * callproc.c (set_initial_environment): Don't set unused frame param.
15368
15369 * frame.c (Fframe_with_environment): Remove.
15370 (syms_of_frame) <Sframe_with_environment>: Don't declare.
15371
15372 * lisp.h (Fframe_with_environment): Don't declare.
15373
153742007-10-10 Juanma Barranquero <lekktu@gmail.com>
15375
15376 * indent.c (indent_tabs_mode, last_known_column)
15377 (last_known_column_modified): Make static.
15378 (syms_of_indent) <indent-tabs-mode>: Remove redundant info in docstring.
15379
153802007-10-10 Katsumi Yamaoka <yamaoka@jpl.org>
15381
15382 * puresize.h (BASE_PURESIZE): Increase to 1170000.
15383
153842007-10-09 Jason Rumney <jasonr@gnu.org>
15385
15386 * w32term.c (x_set_window_size): Disable code that attempts to tell
15387 Lisp code about a size change before it actually happens.
15388
153892007-10-09 Richard Stallman <rms@gnu.org>
15390
15391 * xdisp.c (handle_invisible_prop): After setting up an ellipsis,
15392 return HANDLED_RETURN.
15393
153942007-10-08 Martin Rudalics <rudalics@gmx.at>
15395
15396 * keyboard.c (kbd_buffer_get_event): Break loop waiting for input
15397 when there's an unread command event.
15398
15399 * frame.c (focus_follows_mouse): Move here from frame.el to allow
15400 window autoselection act appropriately when leaving selected frame.
15401 (syms_of_frame): Initialize focus_follows_mouse.
15402 * frame.h (focus_follows_mouse): Extern it.
15403 * macterm.c (XTread_socket): When focus_follows_mouse is nil
15404 make SELECT_WINDOW_EVENT only if we don't leave the selected frame.
15405 * msdos.c (dos_rawgetc): Likewise.
15406 * w32term.c (w32_read_socket): Likewise.
15407 * xterm.c (handle_one_xevent): Likewise.
15408 * xdisp.c (syms_of_xdisp): In doc-string of
15409 mouse-autoselect-window mention focus-follows-mouse.
15410
154112007-10-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15412
15413 * macterm.c (mac_load_query_font): Fix missing return value.
15414 [USE_CG_DRAWING] (mac_define_fringe_bitmap, mac_destroy_fringe_bitmap):
15415 Add BLOCK_INPUT.
15416
154172007-10-08 Richard Stallman <rms@gnu.org>
15418
15419 * xdisp.c (get_window_cursor_type): Implement documented behavior
15420 for cursor-in-non-selected-windows = t.
15421
154222007-10-08 Jason Rumney <jasonr@gnu.org>
15423
15424 * w32.c (w32_get_resource): Always close registry keys.
15425
154262007-10-08 Jason Rumney <jasonr@gnu.org>
15427
15428 * makefile.w32-in (LIBS): Add COMCTL32.
15429
15430 * w32fns.c (globals_of_w32fns): Init common controls.
15431
154322007-10-08 Richard Stallman <rms@gnu.org>
15433
15434 * image.c (our_memory_buffer): Rename from omfib_buffer.
15435
154362007-10-08 Richard Stallman <rms@gnu.org>
15437
15438 * buffer.c (Foverlays_at): Doc fix.
15439
154402007-10-08 Stefan Monnier <monnier@iro.umontreal.ca>
15441
15442 * fns.c (Fplist_put): Preserve uneven tail data.
15443
154442007-10-08 Peter O'Gorman <bug-gnu-emacs@mlists.thewrittenword.com> (tiny change)
15445
15446 * termhooks.h (enum event_kind): Remove trailing comma.
15447
15448 * frame.h (enum): Remove trailing comma.
15449
154502007-10-08 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
15451
15452 * w32proc.c (delete_child): Don't terminate threads of zombies.
15453
154542007-10-08 Martin Rudalics <rudalics@gmx.at>
15455
15456 * keyboard.h (struct kboard): New elt Vlast_repeatable_command.
15457
15458 * keyboard.c (syms_of_keyboard): Set up new Lisp variable
15459 last-repeatable-command.
15460 (init_kboard): Initialize Vlast_repeatable_command.
15461 (command_loop_1): Set it to real_this_command unless that was
15462 bound to an input event.
15463 (mark_kboards): Mark it.
15464
154652007-10-08 Richard Stallman <rms@gnu.org>
15466
15467 * eval.c (condition-case): Doc fix.
15468
154692007-10-08 Masatake YAMATO <jet@gyve.org>
15470
15471 * xfaces.c (tty_supports_face_attributes_p): Fix code
15472 for LFACE_INVERSE_INDEX and LFACE_BACKGROUND_INDEX; code
15473 was copied and not edited.
15474
154752007-10-09 Stefan Monnier <monnier@iro.umontreal.ca>
15476
15477 Add new `input-decode-map' keymap and use it for terminal
15478 escape sequences.
15479 * keyboard.h (struct kboard): Add Vinput_decode_map.
15480 Remove Vlocal_key_translation_map.
15481 * keyboard.c (read_key_sequence): Add support for input-decode-map.
15482 (init_kboard): Init input-decode-map.
15483 Replace local-key-translation-map back with key-translation-map.
15484 (syms_of_keyboard): Declare input-decode-map.
15485 Remove local-key-translation-map. Update docstrings.
15486 (mark_kboards): Mark Vinput_decode_map.
15487 Don't mark Vlocal_key_translation_map.
15488 * keymap.c (Fdescribe_buffer_bindings): Describe input-decode-map.
15489 Replace local-key-translation-map back with key-translation-map.
15490 * term.c (term_get_fkeys_1, CONDITIONAL_REASSIGN):
15491 Bind in input-decode-map rather than function-key-map.
15492
15493 * lisp.h (XSETPSEUDOVECTOR): Don't set the tag anymore.
15494 This was made redundant by the previous introduction of XSETPVECTYPE.
15495
154962007-10-09 Richard Stallman <rms@gnu.org>
15497
15498 * image.c (free_bitmap_record): Rename from Free_Bitmap_Record.
15499
155002007-09-29 Richard Stallman <rms@gnu.org>
15501
15502 * eval.c (internal_condition_case_2, internal_condition_case_1)
15503 (internal_condition_case): Reenable abort if x_catching_errors ()
15504 to see if that really happens and why.
15505
155062007-10-06 Andreas Schwab <schwab@suse.de>
15507
15508 * fileio.c (Fwrite_region): Ignore EINVAL error from fsync.
15509
155102007-10-04 Juanma Barranquero <lekktu@gmail.com>
15511
15512 * image.c (syms_of_image) <image-types>: Fix typo in docstring.
15513
155142007-10-03 Stefan Monnier <monnier@iro.umontreal.ca>
15515
15516 * frame.h (struct frame): Don't try to GC-mark menu_bar_items_used.
15517
155182007-10-02 Stefan Monnier <monnier@iro.umontreal.ca>
15519
15520 * window.h (struct window):
15521 * window.c (struct save_window_data, struct saved_window):
15522 * termhooks.h (struct terminal):
15523 * process.h (struct Lisp_Process):
15524 * frame.h (struct frame):
15525 * buffer.h (struct buffer):
15526 * lisp.h (struct Lisp_Vector, struct Lisp_Char_Table)
15527 (struct Lisp_Bool_Vector, struct Lisp_Subr, struct Lisp_Hash_Table):
15528 The size field of (pseudo)vectors is now unsigned.
15529 (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Simplify accordingly.
15530
15531 * lisp.h (struct Lisp_Hash_Table): Move non-traced elements at the end.
15532 Turn `count' into an integer.
15533
15534 * fns.c (make_hash_table, hash_put, hash_remove, hash_clear)
15535 (sweep_weak_table, sweep_weak_hash_tables, Fhash_table_count):
15536 * print.c (print_object) <HASH_TABLE_P>: `count' is an int.
15537 * alloc.c (allocate_hash_table): Use ALLOCATE_PSEUDOVECTOR.
15538 (mark_object) <HASH_TABLE_P>: Use mark_vectorlike.
15539
15540 * alloc.c (allocate_pseudovector): New fun.
15541 (ALLOCATE_PSEUDOVECTOR): New macro.
15542 (allocate_window, allocate_terminal, allocate_frame)
15543 (allocate_process): Use it.
15544 (mark_vectorlike): New function.
15545 (mark_object) <FRAMEP, WINDOWP, BOOL_VECTOR_P, VECTORP>: Use it.
15546 (mark_terminals): Use it.
15547 (Fmake_bool_vector, Fmake_char_table, make_sub_char_table)
15548 (Fmake_byte_code): Use XSETPVECTYPE.
15549
15550 * frame.c (Fframe_parameters): Minor simplification.
15551
15552 * insdel.c (adjust_markers_for_insert): Generalize assertion checks.
15553
15554 * marker.c (Fmarker_buffer): Make test for odd case into a failure.
15555
15556 * buffer.c (Fget_buffer_create, init_buffer_once):
15557 * lread.c (defsubr):
15558 * window.c (Fcurrent_window_configuration): Use XSETPVECTYPE.
15559
15560 * lisp.h (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Don't let them be
15561 defined differently in the m/*.h files.
15562 (XCHAR_TABLE, XBOOL_VECTOR): Add assertion checking.
15563 (XSETPVECTYPE): New macro.
15564 (XSETPSEUDOVECTOR): Use it.
15565
15566 * buffer.c (syms_of_buffer) <local-abbrev-table>: Move from abbrev.c.
15567 (DEFVAR_PER_BUFFER, defvar_per_buffer): Move from lisp.h and lread.c.
15568
15569 * lisp.h (defvar_per_buffer, DEFVAR_PER_BUFFER):
15570 * lread.c (defvar_per_buffer):
15571 * abbrev.c (syms_of_abbrev) <local-abbrev-tabl>: Move to buffer.c.
15572
15573 * window.c (candidate_window_p): Only consider as visible frames that
15574 are on the same terminal.
15575
15576 * m/ibms390x.h (MARKBIT): Remove unused macro.
15577
155782007-10-01 Juanma Barranquero <lekktu@gmail.com>
15579
15580 * lread.c (Fload): Fix typo in docstring.
15581
155822007-10-01 Michaël Cadilhac <michael@cadilhac.name>
15583
15584 * floatfns.c (Fexpt): Manually check for overflows, so that a power
15585 of a non-zero value can't yield zero.
15586
155872007-09-29 Stefan Monnier <monnier@iro.umontreal.ca>
15588
15589 * term.c (term_clear_mouse_face, term_mouse_highlight)
15590 (tty_write_glyphs_with_face): Only define is HAVE_GPM.
15591
15592 * print.c (safe_debug_print): Use XHASH.
15593
15594 * lisp.h (DECL_ALIGN, USE_LSB_TAG): Move logic to before definition of
15595 Lisp elements such as tags.
15596 (XHASH): New macro.
15597 (EQ): Use it.
15598 (SREF, SSET, STRING_COPYIN): Use SDATA.
15599 (VOID_TO_LISP, CVOID_TO_LISP, LISP_TO_VOID, LISP_TO_CVOID): Remove.
15600
15601 * alloc.c (mark_terminal): Remove left-over declaration.
15602 (enum mem_type): Replace all vector subtypes -> MEM_TYPE_VECTORLIKE.
15603 (allocate_vectorlike): Remove type argument. Adjust callers.
15604 (live_vector_p, mark_maybe_pointer, valid_lisp_object_p):
15605 Only handle the one remaining MEM_TYPE_VECTORLIKE.
15606
15607 * alloc.c (MALLOC_BLOCK_INPUT, MALLOC_UNBLOCK_INPUT): New macros
15608 to avoid unnecessary BLOCK_INPUTs when SYNC_INPUT is used.
15609 (xmalloc, xrealloc, xfree, lisp_malloc, lisp_free, lisp_align_malloc)
15610 (lisp_align_free, make_interval, allocate_string, allocate_string_data)
15611 (make_float, Fcons, allocate_vectorlike, Fmake_symbol, allocate_misc):
15612 Use them.
15613
15614 * xfaces.c (load_face_font, free_realized_face, clear_face_gcs):
15615 Don't let signal handlers run when a GC is freed but not yet NULL'ed.
15616 (x_free_gc): Remove BLOCK_INPUT since it's now redundant.
15617
156182007-09-28 Dan Nicolaescu <dann@ics.uci.edu>
15619
15620 * Makefile.in (lisp, shortlisp): Delete server.elc, it is not
15621 loaded by default.
15622
156232007-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
15624
15625 * term.c (Fgpm_mouse_start): Don't signal an error if already activated
15626 on this tty.
15627 (Fgpm_mouse_stop): Only deactivate if it was activated on this tty.
15628
15629 * term.c (mouse_face_window): Rename from Qmouse_face_window.
15630 Update all users.
15631 (handle_one_term_event): Use Gpm_DrawPointer.
15632 (Fgpm_mouse_start): Rename from Fterm_open_connection.
15633 Signal errors instead of returning nil. Always return nil.
15634 (Fgpm_mouse_stop): Rename from Fterm_close_connection.
15635 Make it a noop if gpm-mouse was not activated.
15636 (syms_of_term): Update names.
15637
156382007-09-27 Stefan Monnier <monnier@iro.umontreal.ca>
15639
15640 * sysdep.c (narrow_foreground_group, widen_foreground_group): Static.
15641 (init_sys_modes): Check that gpm_tty is the current tty.
15642
15643 * alloc.c (allocate_terminal): Set the vector size to only count the
15644 lisp fields. Initialize those to nil.
15645 (mark_object): Don't treat terminals specially.
15646 (mark_terminal): Remove.
15647 (mark_terminals): Use mark_object instead.
15648
15649 * termhooks.h (struct terminal): Move all Lisp_Object fields traced by
15650 the GC to the beginning.
15651
15652 * indent.h:
15653 * indent.c: Use EMACS_INT for ints coming from Elisp data.
15654
15655 * indent.c (Fmove_to_column): Use EMACS_INT for buffer positions.
15656
156572007-09-25 Jason Rumney <jasonr@gnu.org>
15658
15659 * frame.c (make_terminal_frame): Remove special case for WINDOWSNT.
15660
15661 * w32console.c (create_w32cons_output): Remove.
15662
15663 * term.c (init_tty): Call init_sys_modes on WINDOWSNT also.
15664
15665 * sysdep.c (init_sys_modes): Use set_terminal_modes_hook.
15666 (reset_sys_modes): Use reset_terminal_modes_hook.
15667
156682007-09-24 Stefan Monnier <monnier@iro.umontreal.ca>
15669
15670 * eval.c (do_autoload): Don't output any message.
15671
156722007-09-24 Juri Linkov <juri@jurta.org>
15673
15674 * emacs.c (standard_args): Change priority of "--no-splash"
15675 from 40 to 3. Add "--no-desktop" with the same priority.
15676
156772007-09-23 Dmitry Antipov <dmantipov@yandex.ru>
15678
15679 * alloc.c (gc_sweep): Check cons cell mark bits word by word
15680 and optimize the case where they are all 1.
15681
156822007-09-23 Johannes Weiner <hannes@saeurebad.de>
15683
15684 * lisp.h (abs): Define if not defined.
15685 * keyboard.c, sound.c, w32term.c, xfaces.c, xterm.c:
15686 Don't define `abs', since it's defined in lisp.h.
15687
156882007-09-22 Eli Zaretskii <eliz@gnu.org>
15689
15690 * term.c (DEV_TTY): New macro. Provide a definition for MS-Windows.
15691 (FRAME_TERMCAP_P) [WINDOWSNT]: Don't define to zero.
15692 (Fcontrolling_tty_p, Fresume_tty, dissociate_if_controlling_tty)
15693 (init_tty): Use DEV_TTY instead of "/dev/tty".
15694 [WINDOWSNT]: No need to protect from NAME arg being null.
15695
156962007-09-21 Dan Nicolaescu <dann@ics.uci.edu>
15697
15698 * term.c (Fsuspend_tty): Run suspend-tty-functions before cleaning
15699 up the tty state.
15700
157012007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
15702
15703 * termhooks.h (term_gpm): Delete. Use gpm_tty's NULLness instead.
15704 (gpm_tty): Change its type.
15705 * term.c (term_gpm): Delete. Use gpm_tty's NULLness instead.
15706 (gpm_tty): Change its type and initialize it.
15707 (Fterm_open_connection): Check the frame is indeed a tty.
15708 Use the new gpm_tty.
15709 (Fterm_close_connection): Use the new gpm_tty.
15710 * keyboard.c (tty_read_avail_input): Use the new gpm_tty.
15711 * sysdep.c (init_sys_modes): term_gpm -> gpm_tty.
15712
157132007-09-21 Juanma Barranquero <lekktu@gmail.com>
15714
15715 * w32term.c (x_draw_glyph_string): Use strike_through_color, not
15716 underline_color, to draw strike-through.
15717
157182007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
15719
15720 * lisp.h (allocate_terminal): Declare.
15721
15722 * window.c (candidate_window_p): Consider frames that are being placed
15723 by the user as somewhere between visible and iconified.
15724 (window_loop): Prefer windows on the current frame.
15725 (Fselect_window): Move the use of select-frame to the beginning so we
15726 can just delegate all the work (it'll call us back anyway).
15727
15728 * frame.c (Qdisplay_environment_variable):
15729 * frame.h (Qdisplay_environment_variable): Delete.
15730
15731 * .gdbinit (xbacktrace): Print the arg's address rather than the value
15732 of the first arg, since that value may be a union.
15733
15734 * callproc.c (child_setup, getenv_internal): Use the frame's `display'
15735 parameter rather than Qdisplay_environment_variable. If all else
15736 fails, look for DISPLAY in initial-environment.
15737
157382007-09-21 Glenn Morris <rgm@gnu.org>
15739
15740 * Makefile.in (emacstool): Remove target.
15741 (lisp, shortlisp): Remove termdev.elc.
15742
157432007-09-21 Markus Triska <markus.triska@gmx.at>
15744
15745 * xterm.c (x_delete_display): Compile session management conditionally.
15746
157472007-09-20 Stefan Monnier <monnier@iro.umontreal.ca>
15748
15749 * callproc.c (getenv_internal_1): New function.
15750 (getenv_internal): Use it.
15751 (Fgetenv_internal): Use it. Accept an env-list as optional arg.
15752
15753 * terminal.c (get_terminal): Don't accept ints to represent terminals.
15754 (Fterminal_name, Fterminal_parameters, Fterminal_parameter)
15755 (Fset_terminal_parameter): Work with dead terminals as well.
15756 (Fmodify_terminal_parameters): Remove.
15757
15758 * terminal.c (get_terminal): Handle terminals.
15759 Make sure the terminal returned is live.
15760 (create_terminal): Use allocate_terminal.
15761 (mark_terminals): Move to alloc.c.
15762 (delete_terminal): Use terminal->name as liveness status.
15763 NULL out fields after freeing their contents.
15764 Don't deallocate the object.
15765 (Fframe_terminal): Use FRAME_TERMINAL. Return the terminal object
15766 rather than an int.
15767 (Fterminal_live_p): Accept non-integer arguments.
15768 (Fterminal_list): Return terminal objects rather than an ints.
15769
15770 * alloc.c (enum mem_type): New member for `terminal' objects.
15771 (allocate_terminal): New function.
15772 (mark_maybe_pointer, valid_lisp_object_p, mark_object):
15773 Handle terminals.
15774 (mark_terminal): New fun.
15775 (mark_terminals): Move from terminal.c.
15776
15777 * term.c (get_tty_terminal): Don't treat output_initial specially.
15778 (Fsuspend_tty, Fresume_tty): Use terminal objects rather than ints.
15779 (delete_tty): Use terminal->name as liveness status.
15780
15781 * termhooks.h (struct terminal): Make it into a pseudovector.
15782 Remove `deleted' replaced by checking `name's nullness.
15783
15784 * print.c (print_object): Handle terminals.
15785
15786 * lisp.h (enum pvec_type): New `terminal' pseudovector.
15787 (XTERMINAL, XSETTERMINAL, TERMINALP, GC_TERMINALP): New macros.
15788
15789 * frame.c (make_terminal_frame):
15790 * keyboard.c (tty_read_avail_input):
15791 * w32term.c (x_delete_terminal):
15792 * xfns.c (Fx_create_frame, x_create_tip_frame):
15793 * xterm.c (x_delete_terminal): Use terminal->name as liveness status.
15794
157952007-09-20 Glenn Morris <rgm@gnu.org>
15796
15797 * process.c (Fmake_network_process): Doc fix.
15798
157992007-09-19 Jason Rumney <jasonr@gnu.org>
15800
15801 * dispextern.h (w32_init_fringe, mac_init_fringe): Declare rif argument.
15802
158032007-09-19 Michaël Cadilhac <michael@cadilhac.name>
15804
15805 * coding.c (detect_eol_type, detect_eol_type_in_2_octet_form):
15806 Fix a C warning regarding variable constness.
15807
15808 * xterm.c (handle_one_xevent): Fix a C warning.
15809
158102007-09-18 Jason Rumney <jasonr@gnu.org>
15811
15812 * w32fns.c (Fx_focus_frame): Rename from Fw32_focus_frame.
15813
158142007-09-17 Jan Djärv <jan.h.d@swipnet.se>
15815
15816 * gtkutil.c (gdpy_def): New variable.
15817 (xg_initialize): Initialize gdpy_def.
15818 (xg_display_close): If no other display exists, set gdpy_def to a
15819 new connection.
15820
158212007-09-16 Jan Djärv <jan.h.d@swipnet.se>
15822
15823 * gtkutil.c (xg_get_image_for_pixmap): Always create a GdkPixbuf
15824 when we have no file name for the icon.
15825 (xg_tool_bar_expose_callback): Remove.
15826 (xg_create_tool_bar): Don't connect expose signal to
15827 xg_tool_bar_expose_callback.
15828 (xg_get_file_with_chooser): Move GCPRO1 after declarations.
15829
158302007-09-16 Andreas Schwab <schwab@suse.de>
15831
15832 * alloc.c (reset_malloc_hooks): Set the hooks to the previous
15833 values instead of zapping them.
15834
158352007-09-14 Glenn Morris <rgm@gnu.org>
15836
15837 * fringe.c (init_fringe_bitmap) <swap_nibble>: Move to file scope.
15838 * gtkutil.c (xg_separator_p) <separator_names>: Move to file scope.
15839 * image.c (our_memory_fill_input_buffer) <buffer>: Move to file
15840 scope and rename to omfib_buffer for clarity.
15841 (gif_load) <interlace_start, interlace_increment>: Move to file scope.
15842
158432007-09-14 Kenichi Handa <handa@m17n.org>
15844
15845 * xterm.c (handle_one_xevent): Skip decoding if nbytes is zero.
15846
158472007-09-13 Jason Rumney <jasonr@gnu.org>
15848
15849 * fringe.c (w32_init_fringe, mac_init_fringe): Add rif argument.
15850
15851 * w32term.c (w32_term_init): Pass rif to w32_init_fringe.
15852
15853 * macterm.c (mac_initialize): Don't call mac_init_fringe here.
15854 (mac_term_init): Call here instead, passing rif.
15855
158562007-09-13 Glenn Morris <rgm@gnu.org>
15857
15858 * s/hpux.h: No longer define `static' as nothing.
15859
158602007-09-13 Johan Bockgård <bojohan@gnu.org>
15861
15862 * callint.c (Fcall_interactively): Remove unused var `fun'.
15863
158642007-09-12 Romain Francoise <romain@orebokech.com>
15865
15866 * window.c (prefer_window_split_horizontally, display_buffer):
15867 Revert 2007-09-08 change.
15868
158692007-09-12 Glenn Morris <rgm@gnu.org>
15870
15871 * alloca.c: Remove file.
15872 * Makefile.in (alloca): Do not undef.
15873 (allocaobj, alloca.o): Remove.
15874 (otherobj): Remove allocaobj.
15875 * keyboard.c (command_loop_1): Remove #ifdef C_ALLOCA block.
15876 * regex.c (C_ALLOCA): Remove all references and code that was only
15877 used when this was defined.
15878 * search.c (boyer_moore): Remove #ifdef C_ALLOCA block.
15879 * xmenu.c (xmenu_show): Remove #ifdef C_ALLOCA block.
15880 * m/ibms390x.h, m/sh3el.h (C_ALLOCA): Remove references to this.
15881
15882 * Makefile.in (SOURCES, unlock, relock): Delete.
15883
15884 * gtkutil.c (cnt): Rename to menu_grab_callback_cnt for clarity.
15885 (menu_grab_callback): All uses changed.
15886
15887 * xselect.c (cnt): Rename to x_reply_selection_request_cnt for clarity.
15888 (x_reply_selection_request): All uses changed.
15889
158902007-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
15891
15892 * lread.c (load_warn_old_style_backquotes): Change message to look
15893 better when it appears in the middle of byte-compiler messages.
15894
158952007-09-10 Dan Nicolaescu <dann@ics.uci.edu>
15896
15897 * s/darwin.h (MULTI_KBOARD): Only define for Carbon.
15898
15899 * xterm.c (x_create_terminal): Add comment.
15900
15901 * term.c (clear_tty_hooks, set_tty_hooks): Add comments.
15902
159032007-09-10 Richard Stallman <rms@gnu.org>
15904
15905 * xterm.c (x_term_init): Give error if can't open DISPLAY_NAME.
15906
159072007-09-10 Michaël Cadilhac <michael@cadilhac.name>
15908
15909 * lisp.h (struct Lisp_Subr): Rename `prompt' field to `intspec'.
15910 (DEFUN): Document `intspec', use it instead of `prompt'.
15911
15912 * eval.c (Fcommandp): Change `->prompt' to `->intspec'.
15913
15914 * data.c (Finteractive_form): If the interactive specification starts
15915 with a `(', use it as a Lisp form.
15916
15917 * fileio.c (Fset_file_modes): Add an interactive spec that reads a file
15918 name and file modes.
15919
15920 * callint.c (Fcall_interactively): Comment fixes.
15921
159222007-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
15923
15924 * callint.c (Fcall_interactively): Use Finteractive_form also for subrs
15925 and compiled functions.
15926
159272007-09-08 Fredrik Axelsson <f.axelsson@gmail.com>
15928
15929 * window.c (prefer_window_split_horizontally): New variable.
15930 (display_buffer): Consider splitting window horizontally depending
15931 on prefer_window_split_horizontally.
15932
159332007-09-08 Eli Zaretskii <eliz@gnu.org>
15934
15935 * sysdep.c [WINDOWSNT]: Don't include sysselect.h.
15936
159372007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
15938
15939 * s/cygwin.h (GC_MARK_STACK): Enable conservative stack marking.
15940
15941 * frame.c (x_set_frame_parameters): Check number is positive before
15942 using XFASTINT.
15943
15944 * window.c (freeze_window_start): Don't presume selected_window holds
15945 a window object.
15946 (Fdisplay_buffer): Remove `register' since `buffer' needs to be gcpro'd.
15947
159482007-09-07 Angelo Graziosi <Angelo.Graziosi@roma1.infn.it> (tiny change)
15949
15950 * term.c (dissociate_if_controlling_tty): Call setsid on CYGWIN.
15951
159522007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
15953
15954 * window.c (Vsplit_window_preferred_function): New var.
15955 (Fdisplay_buffer): Use it.
15956 (syms_of_window): Export, and initialize it.
15957
159582007-09-06 Pixel <pixel@mandriva.com> (tiny change)
15959
15960 * image.c (gif_load): Fix bug: Handle nonexistent colormap.
15961
159622007-09-06 Glenn Morris <rgm@gnu.org>
15963
15964 * gtkutil.c (menu_grab_callback) <cnt>:
15965 * xselect.c (x_reply_selection_request) <cnt>: Move static
15966 variable to file scope.
15967
159682007-09-06 Stefan Monnier <monnier@iro.umontreal.ca>
15969
15970 * xdisp.c (redisplay_internal): Make sure Elisp code always sees
15971 consistent values of selected_frame and selected_window.
15972
159732007-09-04 Jason Rumney <jasonr@gnu.org>
15974
15975 * w32console.c (initialize_w32_display): Zero unused hooks.
15976
159772007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
15978
15979 * term.c (Vsuspend_tty_functions, Vresume_tty_functions)
15980 (syms_of_term, Fsuspend_tty, Fresume_tty): Undo previous change.
15981
159822007-09-04 Jason Rumney <jasonr@gnu.org>
15983
15984 * term.c (init_tty) [WINDOWSNT]: Add hooks that are not accessible
15985 in w32console.c. Set up input. Remove XXX comments that have been
15986 confirmed as correct.
15987
15988 * s/ms-w32.h (MULTI_KBOARD): Define.
15989
15990 * w32console.c (one_and_only_w32cons): Remove.
15991 (initialize_w32_display): Take terminal argument.
15992
15993 * term.c (init_tty) [WINDOWSNT]: Pass terminal to
15994 initialize_w32_display.
15995 (init_tty) [MULTI_KBOARD]: Include this code on WINDOWSNT too.
15996
15997 * termhooks.h (enum event_kind) <HORIZ_WHEEL_EVENT>: New event.
15998
15999 * keyboard.c (discard_mouse_events): Discard it.
16000 (make_lispy_event): Translate it to a lisp event.
16001 (lispy_wheel_names): Add wheel-left and right events.
16002 (syms_of_keyboard): Enlarge wheel_syms.
16003
16004 * w32fns.c (w32_wnd_proc) <WM_DROPFILES>: Merge with WM_MOUSEWHEEL.
16005 <WM_MOUSEHWHEEL>: Pass new system message to lisp.
16006
16007 * w32term.h (WM_MOUSEHWHEEL): Define if system headers don't.
16008
16009 * w32term.c (construct_mouse_wheel): Make HORIZ_WHEEL_EVENT
16010 from WM_MOUSEHWHEEL.
16011 (w32_read_socket) <WM_MOUSEHWHEEL>: Treat as WM_MOUSEWHEEL.
16012
16013 * w32fns.c (x_create_tip_frame) [MULTI_KBOARD]: Get keyboard from
16014 terminal.
16015
16016 * w32term.c (w32_create_terminal) [MULTI_KBOARD]: Create a new
16017 keyboard for the terminal.
16018
160192007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
16020
16021 * term.c (Vsuspend_tty_hook): Rename from Vsuspend_tty_functions.
16022 (Vresume_tty_hook): Rename from Vresume_tty_functions.
16023 (syms_of_term): Rename suspend-tty-functions to suspend-tty-hook
16024 and resume-tty-function to resume-tty-hook.
16025 (Fsuspend_tty, Fresume_tty): Use new names.
16026
160272007-09-02 Jan Djärv <jan.h.d@swipnet.se>
16028
16029 * gtkutil.c (update_frame_tool_bar): Handle stock name as a named icon
16030 if it starts with "n:".
16031
160322007-08-31 Jan Djärv <jan.h.d@swipnet.se>
16033
16034 * gtkutil.c (update_frame_tool_bar): Initialize wbutton to NULL.
16035
160362007-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
16037
16038 * frame.h:
16039 * frame.c (Qterm_environment_variable): Remove.
16040 (syms_of_frame): Don't init and staticpro it.
16041
16042 * callproc.c (getenv_internal): Remove special case for $TERM.
16043
16044 * callproc.c (Vinitial_environment): New variable.
16045 (set_initial_environment): Initialize it.
16046 (syms_of_callproc): Declare it.
16047 (child_setup): Don't mess with TERM via Qterm_environment_variable; the
16048 TERM under which a process runs is never related to the TERM in which
16049 Emacs is running.
16050
160512007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
16052
16053 * config.in (HAVE_WINDOW_SYSTEM): Don't undef MULTI_KBOARD here...
16054 * s/darwin.h: ... do it here.
16055
160562007-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
16057
16058 * lisp.h (set_initial_environment): Rename from set_global_environment.
16059
16060 * Makefile.in (${etc}DOC): Re-add a ${EXEEXT} which seems to have been
16061 removed by mistake on the multi-tty branch.
16062
16063 * frame.c (make_terminal_frame): Yet Another Int/Lisp_Object Mixup.
16064 (Fmodify_frame_parameters): Return a value.
16065
16066 * image.c (png_load): Comment-out var only used in commented-out code.
16067
16068 * term.c (mark_ttys): Don't bother checking top_frame (incorrectly)
16069 before passing it to mark_object.
16070
16071 * xfaces.c (internal_resolve_face_name): Return a value.
16072 (internal_resolve_face_name, resolve_face_name_error): Comment out.
16073
16074 * xfns.c (check_x_display_info): Yet Another Int/Lisp_Object Mixup.
16075 (x_icon): Comment-out var only used in commented-out code.
16076
160772007-08-29 Romain Francoise <romain@orebokech.com>
16078
16079 * keyboard.c (Fset_input_mode): Don't call `Fset_quit_char' if
16080 QUIT hasn't been provided.
16081
160822007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
16083
16084 * callproc.c (child_setup, getenv_internal): Use the
16085 display-environment-variable and term-environment-variable frame params.
16086 (set_initial_environment): Initialise Vprocess_environment.
16087
16088 * config.in: Disable multi-keyboard support on a mac.
16089
16090 * frame.c (Qterm_environment_variable)
16091 (Qdisplay_environment_variable): New variables.
16092 (syms_of_frame): Intern and staticpro them.
16093 (Fmake_terminal_frame): Disable output method test.
16094
16095 * frame.h: Declare them here.
16096
16097 * macfns.c (x_set_mouse_color): Get rif from the frame.
16098 (x_set_tool_bar_lines): Don't use updating_frame.
16099 (mac_window): Add 2 new parameters for consistency with other systems.
16100 (Fx_create_frame): Fix doc string. Rename the parameter. Set the
16101 frame parameters following what is done in X11 and w32. Don't use
16102 FRAME_MAC_DISPLAY_INFO.
16103 (Fx_open_connection, start_hourglass): Remove window-system check.
16104 (x_create_tip_frame): Get the keyboard from the terminal.
16105
16106 * macmenu.c: Reorder includes.
16107 (Fx_popup_menu): Use terminal specific mouse_position_hook.
16108
16109 * macterm.c (XTset_terminal_modes, XTreset_terminal_modes): Add a
16110 terminal parameter.
16111 (x_clear_frame): Add a frame parameter.
16112 (note_mouse_movement): Get rif from the frame.
16113 (mac_term_init): Initialize the terminal.
16114 (mac_initialize): Make static and move terminal initialization ...
16115 (mac_create_terminal): ... to this new function.
16116
16117 * macterm.h (struct mac_display_info): Add terminal.
16118 (mac_initialize): Delete declaration.
16119
16120 * puresize.h (BASE_PURESIZE): Increase base value to 1164000.
16121
16122 * sysdep.c: Comment out text after #endif.
16123
16124 * term.c (init_tty): Only use terminal->kboard when MULTI_KBOARD
16125 is defined. Better initialize ttys in windows. Use terminal
16126 specific mouse_position_hook.
16127
16128 * termhooks.h (union display_info): Add mac_display_info.
16129
16130 * w32fns.c (Fx_create_frame): Use kboard from the terminal.
16131 Set the default minibuffer frame, window_system and the rest of the
16132 frame parameters following what is done in X11.
16133
16134 * w32term.c (w32_initialize): Make static.
16135
16136 * xselect.c (x_handle_selection_clear): Only access
16137 terminal->kboard when MULTI_KBOARD is defined.
16138
16139 * s/darwin.h (SYSTEM_PURESIZE_EXTRA): Define here.
16140 (SYSTEM_PURESIZE_EXTRA): Only define on Carbon.
16141
161422007-08-29 Jason Rumney <jasonr@gnu.org>
16143
16144 * frame.c (Fdelete_frame): Only get kboard when MULTI_KBOARD defined.
16145 (make_terminal_frame) [WINDOWSNT]: Initialize terminal.
16146
16147 * fringe.c (w32_init_fringe w32_reset_fringes) [HAVE_NTGUI]:
16148 (mac_init_fringe) [MAC_OS]: Get rif from selected_frame.
16149
16150 * keyboard.c (restore_kboard_configuration): Only define when
16151 MULTI_KBOARD defined.
16152
16153 * makefile.w32-in: Update dependancies from Makefile.in.
16154 (OBJ1): Add terminal.$(O)
16155
16156 * term.c (dissociate_if_controlling_tty) [WINDOWSNT]:
16157 Don't define function body.
16158 (init_tty) [WINDOWSNT]: Use selected_frame for initializing.
16159
16160 * termhooks.h (display_info) [WINDOWSNT]: Add w32.
16161
16162 * w32.c (request_sigio, unrequest_sigio): Remove.
16163
16164 * w32console.c (w32con_move_cursor, w32con_clear_to_end)
16165 (w32con_clear_frame, w32con_clear_end_of_line)
16166 (w32con_ins_del_lines, w32con_insert_glyphs, w32con_write_glyphs)
16167 (w32con_delete_glyphs, w32con_set_terminal_window)
16168 (scroll_line, w32_sys_ring_bell): Add frame arg.
16169 (w32con_set_terminal_modes, w32con_reset_terminal_modes):
16170 Add terminal arg.
16171 (PICK_FRAME): Remove.
16172 (w32con_write_glyphs): Use frame specific terminal coding.
16173 (one_and_only_w32cons): New global variable.
16174 (initialize_w32_display): Use it for storing hooks.
16175 (create_w32cons_output): New function.
16176
16177 * w32inevt.c, w32inevt.h (w32_console_read_socket): Make first
16178 arg a frame.
16179
16180 * w32fns.c (x_create_tip_frame): Set terminal and ref count.
16181 Set window_system.
16182 (x_set_tool_bar_lines): Don't use updating_frame.
16183 (Fx_create_frame): Set terminal and ref count.
16184 (Fx_open_connection): Remove window-system check.
16185
16186 * w32menu.c (Fx_popup_menu): Use terminal specific mouse_position_hook.
16187
16188 * w32term.c (w32_term_init): Call add_keyboard_wait_descriptor.
16189 (w32_set_terminal_modes, w32_reset_terminal_modes): Add terminal arg.
16190 (x_clear_frame, x_delete_glyphs, w32_ring_bell, x_ins_del_lines):
16191 Add frame arg.
16192 (x_delete_terminal, w32_create_terminal): New functions.
16193 (w32_term_init): Create a terminal.
16194 (w32_initialize): Move terminal specific initialization to
16195 w32_create_terminal.
16196
16197 * w32term.h (x_output): Remove foreground_pixel and background_pixel.
16198 (w32_clear_rect, w32_clear_area): Use background from frame.
16199 (w32_display_info): Add terminal.
16200 (w32_sys_ring_bell, x_delete_display): Declare here.
16201
16202 * xdisp.c (display_menu_bar) [HAVE_NTGUI]: Check frame type.
16203
16204 * s/ms-w32.h (SYSTEM_PURESIZE_EXTRA): Bump to 50k.
16205
162062007-08-29 Kalle Olavi Niemitalo <kon@iki.fi> (tiny change)
16207
16208 * keyboard.c (interrupt_signal, handle_interrupt, Fset_quit_char):
16209 Fix get_named_tty calls for the controlling tty.
16210
162112007-08-29 ARISAWA Akihiro <ari@mbf.ocn.ne.jp> (tiny change)
16212
16213 * term.c (dissociate_if_controlling_tty)[USG]: Fix parse error.
16214
162152007-08-29 Yoshiaki Kasahara <kasahara@nc.kyushu-u.ac.jp> (tiny change)
16216
16217 * term.c (tty_insert_glyphs): Add missing first parameter.
16218
162192007-08-29 Károly Lőrentey <karoly@lorentey.hu>
16220
16221 * buffer.c (Fbuffer_list, Fbury_buffer):
16222 Take frame->buried_buffer_list into account.
16223
16224 * cm.c (current_tty): New variable, for cmputc().
16225 (cmputc): Use it.
16226 (cmcheckmagic): Add tty parameter, look up terminal streams there.
16227 (calccost): Add tty parameter. Use emacs_tputs() instead of tputs().
16228 (cmgoto): Add tty parameter. Pass it on to calccost().
16229 Use emacs_tputs() instead of tputs().
16230
16231 * cm.h (emacs_tputs): New macro to set current_tty, and then call
16232 tputs().
16233 (current_tty): New variable, for cmputc().
16234 (cmcheckmagic, cmputc, cmgoto): Add prototypes.
16235
16236 * eval.c (unwind_to_catch): Don't call x_fully_uncatch_errors.
16237 (internal_condition_case, internal_condition_case_1)
16238 (internal_condition_case_2): Don't abort when x_catching_errors.
16239
16240 * fns.c (Fyes_or_no_p): Don't try to open an X dialog on tty terminals.
16241 (Fy_or_n_p): Likewise. Use temporarily_switch_to_single_kboard to
16242 prevent crashes caused by bogus longjmps in read_char.
16243
16244 * keymap.h (Fset_keymap_parent): Add EXFUN.
16245
16246 * macterm.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL)
16247 * w32term.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
16248 Remove redundant definition.
16249
16250 * macfns.c (x_set_mouse_color, x_make_gc):
16251 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
16252
16253 * w32term.c (x_free_frame_resources):
16254 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
16255 (w32_initialize): Use the accessor macros for terminal characteristics.
16256
16257 * macterm.c (mac_initialize): Use Fset_input_interrupt_mode.
16258 Use the accessor macros for terminal characteristics.
16259 * msdos.c (internal_terminal_init): Use the accessor macros for
16260 terminal characteristics.
16261 (ScreenVisualBell, internal_terminal_init):
16262 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
16263
16264 * termopts.h (no_redraw_on_reenter): Declare.
16265
16266 * alloc.c (emacs_blocked_malloc): Disable mallopt call.
16267 (mark_terminals, mark_ttys): Declare.
16268 (Fgarbage_collect): Call them.
16269 (mark_object): Mark buried_buffer_list.
16270
16271 * prefix-args.c: Include stdlib.h for exit.
16272
16273 * syssignal.h: Add comment.
16274
16275 * indent.c: Include stdio.h.
16276
16277 * window.h (Vinitial_window_system): Declare.
16278 (Vwindow_system): Delete declaration.
16279
16280 * fontset.c (Finternal_char_font): Use FRAME_RIF.
16281
16282 * image.c (lookup_image): Don't initialize `c' until the xasserts
16283 have been run.
16284
16285 * gtkutil.c (xg_create_frame_widgets): Use FRAME_BACKGROUND_PIXEL and
16286 FRAME_FOREGROUND_PIXEL.
16287
16288 * print.c (print_preprocess): Don't lose print_depth levels while
16289 iterating.
16290
16291 * widget.c (update_from_various_frame_slots):
16292 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
16293
16294 * window.c (set_window_buffer): Don't call clear_mouse_face on tty
16295 frames.
16296 (window_internal_height): Remove bogus make_number call.
16297 (init_window_once): Call make_terminal_frame with two zero parameters.
16298
16299 * fileio.c (Fread_file_name): Update comment.
16300
16301 * callint.c (Fcall_interactively):
16302 Use temporarily_switch_to_single_kboard instead of single_kboard_state.
16303 Make sure it is correctly unwound.
16304
16305 * xsmfns.c (x_session_close): New function.
16306
16307 * coding.h (terminal_coding, safe_terminal_coding, keyboard_coding):
16308 Delete declarations.
16309
16310 * xterm.h: Remove declaration for x_fully_uncatch_errors.
16311 (x_output): Remove background_pixel and foreground_pixel fields.
16312 (x_display_info): Add new field TERMINAL. Remove KBOARD field.
16313 (x_delete_device, x_session_close): Declare.
16314
16315 * lread.c: Include setjmp.h. Update declaration of `read_char'.
16316 (read_filtered_event): Call `read_char' with a local
16317 `wrong_kboard_jmpbuf'.
16318
16319 * minibuf.c (read_minibuf): Call temporarily_switch_to_single_kboard.
16320 Don't call single_kboard_state. Use FRAME_RIF.
16321
16322 * process.c (Fmake_network_process): Don't unrequest_sigio on modern
16323 systems.
16324
16325 * lisp.h (set_process_environment): Rename to `set_global_environment'.
16326 (Fframe_with_environment, Fset_input_meta_mode)
16327 (Fset_quit_char): EXFUN.
16328 (x_create_device, tty_output, terminal, tty_display_info): Declare.
16329 (init_sys_modes, reset_sys_modes): Update prototypes.
16330 (init_all_sys_modes, reset_all_sys_modes): New prototypes.
16331
16332 * keyboard.h (struct kboard): Add new fields Vlocal_function_key_map,
16333 Vlocal_key_translation_map, and Vkeyboard_translate_table.
16334 (Vfunction_key_map, Vkeyboard_translate_table, single_kboard_state):
16335 Delete declarations.
16336 (Vfunction_key_map, Vkey_translation_map, push_kboard, pop_kboard)
16337 (temporarily_switch_to_single_kboard, tty_read_avail_input):
16338 New declarations.
16339
16340 * emacs.c (main): Don't call init_sys_modes(), the new term_init()
16341 already does that during init_display(). Call syms_of_keymap
16342 before syms_of_keyboard. Call `syms_of_terminal'.
16343 Call set_initial_environment, not set_process_environment.
16344 (shut_down_emacs): Call reset_all_sys_modes() instead of
16345 reset_sys_modes().
16346
16347 * xfaces.c (x_free_gc): Protect xassert with GLYPH_DEBUG.
16348 (internal_resolve_face_name, resolve_face_name_error): New functions.
16349 (resolve_face_name): Protect against loops and errors thrown by Fget.
16350 (realize_default_face): Don't use FRAME_FONT unless frame is an X frame.
16351 (Ftty_supports_face_attributes_p): Update tty_capable_p call.
16352
16353 * scroll.c: Replace CURTTY() with local variables throughout the
16354 file (where applicable).
16355 (calculate_scrolling, calculate_direct_scrolling)
16356 (scrolling_1, scroll_cost): Use the accessor macros for terminal
16357 characteristics.
16358
16359 * keymap.c (Vfunction_key_map): Remove.
16360 (Fdescribe_buffer_bindings): Update references to Vfunction_key_map.
16361 (syms_of_keymap): Remove DEFVAR for Vfunction_key_map.
16362 (Vkey_translation_map): Remove.
16363 (syms_of_keymap): Remove DEFVAR for key-translation-map.
16364 (Fdescribe_buffer_bindings)
16365 (read_key_sequence, init_kboard, syms_of_keyboard, mark_kboards):
16366 Update for terminal-local key-translation-map.
16367
16368 * Makefile.in (callproc.o): Update dependencies.
16369 (lisp, shortlisp): Add termdev.elc.
16370 (obj): Add terminal.o.
16371 (terminal.o): Add dependencies.
16372 [HAVE_CARBON]: Make terminal.o depend on macgui.h.
16373 (data.o, fns.o): Add termhooks.h dependency.
16374 (SOME_MACHINE_LISP): Add dnd.elc.
16375 (minibuf.o): Fix typo.
16376 Update dependencies.
16377
16378 * data.c (do_symval_forwarding, store_symval_forwarding)
16379 (find_symbol_value): Use the selected frame's keyboard, not
16380 current_kboard.
16381
16382 * .gdbinit (init_sys_modes): Use Vinitial_window_system instead of
16383 Vwindow_system.
16384
16385 * xmenu.c (Fx_menu_bar_open) [USE_X_TOOLKIT, USE_GTK]: Rename from
16386 Fmenu_bar_open.
16387 (syms_of_xmenu): Update defsubr.
16388 (mouse_position_for_popup, Fx_popup_menu)
16389 (Fx_popup_dialog, x_activate_menubar, update_frame_menubar)
16390 (set_frame_menubar, free_frame_menubar)
b97439ce 16391 (create_and_show_popup_menu, xmenu_show)
aac0c6e3
MR
16392 (create_and_show_dialog, xdialog_show, xmenu_show): Abort if not
16393 an X frame.
16394
16395 * xselect.c (x_own_selection): Abort if not an X frame.
16396 (some_frame_on_display): Check if it is an X frame.
16397 (x_handle_selection_clear): Deal with MULTI_KBOARD.
16398
16399 * coding.c: Include frame.h and termhooks.h.
16400 (terminal_coding, keyboard_coding): Delete.
16401 (Fset_terminal_coding_system_internal)
16402 (Fset_keyboard_coding_system_internal)
16403 (Fkeyboard_coding_system)
16404 (Fterminal_coding_system): Add a terminal parameter.
16405 Get terminal_coding from the terminal.
16406 (init_coding_once): Don't call setup_coding_system here.
16407
16408 * dispextern.h (set_scroll_region, turn_off_insert)
16409 (turn_off_highlight, background_highlight, clear_end_of_line_raw)
16410 (tty_clear_end_of_line, tty_setup_colors)
16411 (delete_tty, updating_frame)
16412 (produce_special_glyphs, produce_glyphs, write_glyphs)
16413 (insert_glyphs): Remove.
16414 (raw_cursor_to, clear_to_end, tty_turn_off_insert)
16415 (tty_turn_off_highlight, get_tty_size): Add declaration.
16416 (tabs_safe_p, init_baud_rate, get_tty_terminal): Update prototypes.
16417
16418 * frame.h (enum output_method): Add output_initial.
16419 (struct x_output): Delete.
16420 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
16421 Access foreground_pixel and background_pixel directly from the frame.
16422 (tty_display): Delete.
16423 (struct frame): Add buried_buffer_list, foreground_pixel,
16424 background_pixel and terminal. Delete kboard.
16425 (union output_data): Add tty.
16426 (FRAME_KBOARD): Get the kboard from the terminal.
16427 (FRAME_INITIAL_P): New macro.
16428 (Qtty, Qtty_type, Qterminal, Qterminal_live_p, Qenvironment)
16429 (Qterm_environment_variable, Qdisplay_environment_variable)
16430 (make_terminal_frame, Qburied_buffer_list, Qwindow_system):
16431 New declarations.
16432
16433 * termchar.h (tty_output, tty_display_info): New structures.
16434 (tty_list): Declare.
16435 (FRAME_TTY, CURTTY): New macros.
16436 (must_write_spaces, min_padding_speed, fast_clear_end_of_line)
16437 (line_ins_del_ok, char_ins_del_ok, scroll_region_ok)
16438 (scroll_region_cost, memory_below_frame, fast_clear_end_of_line)
16439 (dont_calculate_costs, no_redraw_on_reenter): Remove declarations.
16440
16441 * callproc.c: Include frame.h and termhooks.h, for terminal
16442 parameters.
16443 (add_env): New function.
16444 (child_setup): Use it.
16445 (child_setup, getenv_internal): Handle the new Vprocess_environment.
16446 (getenv_internal): Fix get_terminal_param call.
16447 (Fgetenv_internal, egetenv): Update doc.
16448 (syms_of_callproc): Initialize Vprocess_environment to nil.
16449 Register and initialize them. Remove obsolete defvars. Update doc
16450 strings.
16451 (child_setup): Handle Vlocal_environment_variables.
16452 (getenv_internal): Add terminal parameter.
16453 Handle Vlocal_environment_variables.
16454 (Fgetenv_internal): Add terminal parameter.
16455 (child_setup, getenv_internal, Fgetenv_internal): Store the local
16456 environment in a frame (not terminal) parameter. Update doc strings.
16457 (set_initial_environment): Rename from set_global_environment.
16458 Store Emacs environment in initial frame parameter.
16459
16460 * xdisp.c (redisplay_internal): Update references to
16461 `previous_terminal_frame'.
16462 (display_mode_line, Fformat_mode_line): Replace calls to
16463 `push_frame_kboard' with `push_kboard'.
16464 (get_glyph_string_clip_rects): Add extra parentheses and
16465 braces to prevent compiler warnings.
16466 (calc_pixel_width_or_height): Add xassert to check that the
16467 frame is alive. Don't call `lookup_image' on a termcap frame.
16468 (message2_nolog, message3_nolog, redisplay_internal)
16469 (set_vertical_scroll_bar, redisplay_window, check_x_display_info)
16470 (x_set_scroll_bar_foreground, x_set_scroll_bar_background)
16471 (Fx_create_frame, Fxw_display_color_p, Fx_display_grayscale_p)
16472 (Fx_display_pixel_width, Fx_display_pixel_height)
16473 (Fx_display_planes, Fx_display_color_cells)
16474 (Fx_server_max_request_size, Fx_server_vendor, Fx_server_version)
16475 (Fx_display_screens, Fx_display_mm_height, Fx_display_mm_width)
16476 (Fx_display_backing_store, Fx_display_visual_class)
16477 (Fx_display_save_under, Fx_close_connection, x_create_tip_frame):
16478 Use FRAME_TERMINAL_P, FRAME_WINDOW_P, FRAME_TTY and FRAME_RIF.
16479
16480 * xfns.c (x_set_foreground_color x_set_background_color)
16481 (x_set_mouse_color, x_set_cursor_color, x_make_gc):
16482 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
16483 (Fx_create_frame, x_create_tip_frame, build_string, x_window)
16484 (Fx_create_frame, x_create_tip_frame): Don't create frames on a
16485 terminal that is being deleted.
16486 (Fx_create_frame): Use `store_frame_param' to set `window-system'
16487 frame parameter, and make sure it overrides any user-supplied setting.
16488 (Fx_close_connection, Fx_synchronize): Unify argument names with
16489 the rest of the DEFUNs.
16490
16491 * dispnew.c (Fsend_string_to_terminal): Update call to
16492 `get_tty_terminal'.
16493 (Fredraw_frame, Fsend_string_to_terminal)
16494 (Fsend_string_to_terminal, init_display): Use FRAME_RIF,
16495 FRAME_TERMCAP_P and FRAME_TTY.
16496 (window_change_signal): Don't believe width/height values that are
16497 impossibly small.
16498 (Vinitial_window_system): Rename from Vwindow_system.
16499 (termscript, Wcm, rif): Delete.
16500
16501 * termhooks.h (struct terminal): New struct containing the
16502 previously global text display hooks and new members NAME,
16503 DELETED and PARAM_ALIST.
16504 (FRAME_TERMINAL, TERMINAL_TERMINAL_CODING)
16505 (TERMINAL_KEYBOARD_CODING, TERMINAL_ACTIVE_P, FRAME_WINDOW_P)
16506 (FRAME_RIF): New macros.
16507 (get_terminal_param, get_device): New declarations.
16508 (termscript): Delete declaration.
16509
16510 * xterm.c (x_initialize): Use Fset_input_interrupt_mode.
16511 (XTflash, x_free_frame_resources, x_scroll_bar_create)
16512 (x_scroll_bar_set_handle): Use FRAME_BACKGROUND_PIXEL and
16513 FRAME_FOREGROUND_PIXEL.
16514 (x_fully_uncatch_errors): Disable definition.
16515 (x_scroll_bar_expose): Fix reference to foreground pixel.
16516 (XTread_socket): Disable loop on all X displays.
16517 (x_delete_terminal): Don't set terminal->deleted and let
16518 delete_terminal delete the frames on the terminal.
16519 (x_delete_display): Doc update to reflect changes in
16520 delete_terminal.
16521 (x_display_info) <terminal>: Move member earlier in the struct.
16522 (deleting_tty): Remove old variable.
16523 (Fsuspend_tty): Call clear_tty_hooks.
16524 (Fresume_tty, init_tty): Call set_tty_hooks.
16525 (Ftty_display_color_p, Ftty_display_color_cells): Don't throw
16526 errors on X frames.
16527 (x_catch_errors_unwind): Abort if x_error_message is NULL.
16528 (handle_one_xevent): Initialize `f' to NULL.
16529 (x_delete_terminal, x_create_terminal): New functions.
16530 (XTset_terminal_modes, XTreset_terminal_modes)
16531 (XTread_socket, x_connection_closed, x_term_init)
16532 (x_term_init, x_delete_display): Add terminal parameter.
16533 (x_term_init) [!HAVE_GTK_MULTIDISPLAY]: Refuse to create secondary
16534 X connections.
16535
16536 * frame.c: Include termchar.h.
16537 (Qterminal, Qterminal_live_p, Qburied_buffer_list, Qtty, Qtty_type)
16538 (Qwindow_system, Qenvironment, Qterm_environment_variable)
16539 (Qdisplay_environment_variable): New vars.
16540 (Fframep): Deal with output_initial.
16541 (Fframe-live-p): Doc fix.
16542 (Fwindow-system): New function.
16543 (x_set_screen_gamma, store_frame_param): Fix compilation errors.
16544 (make_terminal_frame): Don't create frames on a terminal that is
16545 being deleted. Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
16546 (store_frame_param): Check for found_for_frame before calling XFRAME.
16547 (Fmake_terminal_frame): Handle NULL tty names correctly.
16548 (syms_of_frame): Enhance doc string of `default-frame-alist'.
16549 (Fdelete_frame): Remove unused variable `count'. Don't allow other
16550 frames to refer to a deleted frame in their 'environment parameter.
16551 (Fframe_with_environment): New function.
16552 (syms_of_frame): Defsubr it. Initialize and staticpro Qenvironment.
16553 (get_future_frame_param): New function.
16554 (Fmake_terminal_frame): Use it.
16555 (x_set_frame_parameters, x_set_screen_gamma): Use FRAME_RIF.
16556
16557 * sysdep.c (init_sys_modes, reset_sys_modes): Update for renames.
16558 * sysdep.c (reset_sys_modes): Update for renames.
16559
16560 * keyboard.c (tty_read_avail_input): New function.
16561 (Fset_input_interrupt_mode, Fset_output_flow_control): New functions.
16562 (syms_of_keyboard): Defsubr them.
16563 (Fset_input_meta_mode, Fset_quit_char): New functions.
16564 (Fset_input_mode): Split to above functions.
16565 (read_char_minibuf_menu_prompt): Add wrong_kboard_jmpbuf
16566 parameter. Use it in call to `read_char'.
16567 (read_char): Declare. Update call to `read_char_minibuf_menu_prompt'.
16568 Set wrong_kboard_jmpbuf correctly in recursive calls.
16569 Use current_kboard to access Vkeyboard_translate_table.
16570 Enhance comment before extra longjmp to wrong_kboard_jmpbuf.
16571 Add wrong_kboard_jmpbuf parameter to allow for recursive calls.
16572 Update longjmp invocations. Remember the original current_kboard,
16573 and longjmp to `wrong_kboard_jmpbuf' when a filter, timer or sentinel
16574 changes it. Comment out unnecessary calls to
16575 `record_single_kboard_state' and `any_kboard_state'.
16576 Update recursive calls.
16577 (wrong_kboard_jmpbuf): Remove global variable.
16578 (read_key_sequence): Remove unused variable wrong_kboard_jmpbuf.
16579 Handle deleted interrupted_kboards correctly; that is a legal
16580 case. Add `wrong_kboard_jmpbuf' local variable. Update setjmp
16581 and read_char calls. Abort if interrupted_kboard died in read_char.
16582 (any_kboard_state, single_kboard_state)
16583 (push_frame_kboard): Remove function.
16584 (pop_kboard): Switch out of single_kboard mode if the kboard has
16585 been deleted. Remove unused variable. Help debugging by not
16586 changing current_kboard unnecessarily. Set current_kboard to the
16587 kboard of the selected frame when the stored kboard object has
16588 been deleted before pop_kboard.
16589 (temporarily_switch_to_single_kboard): Change first parameter to a
16590 frame pointer. Throw an error when caller wants to change kboards
16591 while in single_kboard mode. Don't push_kboard if we weren't in
16592 single kboard state. Don't pop_kboard if we popped into any
16593 kboard state.
16594 (restore_kboard_configuration): Abort if pop_kboard changed the
16595 kboard in single_kboard mode. Call pop_kboard only after setting
16596 up single_kboard mode.
16597 (Frecursive_edit): Switch to single_kboard mode only in nested
16598 command loops.
16599 (cmd_error, command_loop, command_loop_1, timer_check):
16600 Comment out unnecessary call to `any_kboard_state' and
16601 `record_single_kboard_state'.
16602 (delete_kboard): Exit single_kboard mode if we have just deleted
16603 that kboard. Use FRAME_KBOARD.
16604 (interrupt_signal): Use `Fkill_emacs' to exit Emacs, not
16605 `fatal_error_signal'.
16606 (record_single_kboard_state): Don't push_kboard if we weren't in
16607 single kboard state. Don't pop_kboard if we popped into any
16608 kboard state.
16609 (push_frame_kboard): Rename to push_kboard.
16610 (kbd_buffer_get_event): Use FRAME_TERMINAL.
16611 (read_avail_input): Read input from all terminals.
16612 (mark_kboards): Also mark Vkeyboard_translate_table.
16613 (kbd_buffer_store_event_hold): Simplify condition.
16614 (read_key_sequence): Reinitialize fkey and keytran at each replay.
16615 (Vkeyboard_translate_table): Move to struct kboard.
16616 (init_kboard): Initialize Vkeyboard_translate_table.
16617 (syms_of_keyboard): Use DEFVAR_KBOARD to define
16618 Vkeyboard_translate_table. Update doc strings. Update docs of
16619 local-function-key-map and function-key-map.
16620
16621 * terminal.c: New file.
16622
16623 * term.c: Include errno.h.
16624 (Vring_bell_function, device_list, initial_device)
16625 (next_device_id, ring_bell, update_begin, update_end)
16626 (set_terminal_window, cursor_to, raw_cursor_to)
16627 (clear_to_end, clear_frame, clear_end_of_line)
16628 (write_glyphs, insert_glyphs, delete_glyphs, ins_del_lines)
16629 (Fdisplay_name, create_device, delete_device): Move to terminal.c.
16630 (syms_of_term): Move their initialization to terminal.c.
16631 (get_tty_terminal, Fdisplay_tty_type, Ftty_display_color_p)
16632 (Ftty_display_color_cells)
16633 (Ftty_no_underline, Fsuspend_tty, Fresume_tty, create_tty_output)
16634 (clear_tty_hooks, set_tty_hooks)
16635 (init_tty, maybe_fatal): New functions.
16636 (Ftty_type): Return nil if terminal is not on a tty instead of
16637 throwing an error. Doc update.
16638 (syms_of_term) <Vsuspend_tty_functions, Vresume_tty_functions>:
16639 Doc update. Initialize new subrs and variables.
16640 (delete_tty): Use terminal->deleted.
16641 (tty_set_terminal_modes): Rename from set_terminal_modes.
16642 (tty_reset_terminal_modes): Rename from reset_terminal_modes.
16643 (set_scroll_region): Rename to `tty_set_scroll_region'.
16644 (turn_on_insert): Rename to `tty_turn_on_insert'.
16645 (turn_off_insert): Rename to `tty_turn_off_insert'.
16646 (turn_off_highlight): Rename to `tty_turn_off_highlight'.
16647 (turn_on_highlight): Rename to `tty_turn_on_highlight'.
16648 (toggle_highligh): Rename to `tty_toggle_highlight'.
16649 (background_highlight): Rename to `tty_background_highlight'.
16650 (highlight_if_desired): Rename to `tty_highlight_if_desired'.
16651 (tty_ring_bell, tty_update_end, tty_set_terminal_window)
16652 (tty_set_scroll_region, tty_background_highlight)
16653 (tty_cursor_to, tty_raw_cursor_to, tty_clear_to_end)
16654 (tty_clear_frame, tty_clear_end_of_line, tty_write_glyphs)
16655 (tty_insert_glyphs, tty_delete_glyphs, tty_ins_del_lines)
16656 (term_get_fkeys, tty_setup_colors, dissociate_if_controlling_tty):
16657 Add static modifier.
16658 (tty_reset_terminal_modes, tty_set_terminal_window)
16659 (tty_set_scroll_region, tty_background_highlight)
16660 (tty_highlight_if_desired, tty_cursor_to)
16661 (tty_raw_cursor_to, tty_clear_to_end, tty_clear_frame)
16662 (tty_clear_end_of_line, tty_write_glyphs, tty_insert_glyphs)
16663 (tty_delete_glyphs, tty_ins_del_lines, turn_on_face): Update for
16664 renames.
16665
166662007-08-28 Jan Djärv <jan.h.d@swipnet.se>
16667
16668 * keyboard.c: Qrtl is new.
16669 (parse_tool_bar_item): Handle :rtl keyword.
16670 (syms_of_keyboard): Intern :rtl keyword.
16671
16672 * dispextern.h (enum tool_bar_item_idx): Add TOOL_BAR_ITEM_RTL_IMAGE.
16673
16674 * gtkutil.c (xg_tool_bar_expose_callback): Just do SET_FRAME_GARBAGED
16675 so no Lisp code is executed.
16676 (file_for_image, find_rtl_image): New functions.
16677 (xg_get_image_for_pixmap): Use file_for_image.
16678 (update_frame_tool_bar): If direction is RTL, use RTL image if
16679 defined. Use Gtk stock images if defined.
16680
166812007-08-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16682
16683 * macterm.c (x_draw_composite_glyph_string_foreground): Draw rectangle
16684 for nonexistent or zero-width glyph in composition glyph.
16685
166862007-08-25 Stefan Monnier <monnier@iro.umontreal.ca>
16687
16688 * m/amdx86-64.h: Redirect to intel386.h if compiling for i386.
16689
16690 * xdisp.c (Finvisible_p): New function.
16691 (syms_of_xdisp): defsubr it.
16692
166932007-08-24 Juanma Barranquero <lekktu@gmail.com>
16694
16695 * image.c (syms_of_image) <image-library-alist, cross-disabled-images>:
16696 Doc fixes.
16697
166982007-08-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16699
16700 * mac.c [MAC_OSX] (select_and_poll_event, sys_select): Fix last changes.
16701
167022007-08-24 Martin Rudalics <rudalics@gmx.at>
16703
16704 * fileio.c (Finsert_file_contents): Consult CHARS_MODIFF to tell
16705 whether decoding has modified buffer contents.
16706
167072007-08-24 Jason Rumney <jasonr@gnu.org>
16708
16709 * image.c [HAVE_NTGUI]: Define dynamic loaded functions for SVG.
16710 (Qgdk_pixbuf, Qglib) [HAVE_NTGUI]: New symbols.
16711 (syms_of_image) [HAVE_NTGUI]: Intern and staticpro them.
16712 (init_svg_functions) [HAVE_NTGUI]: New function.
16713 (fn_g_type_init, fn_g_object_unref, fn_g_error_free): New #defines.
16714 (svg_load_image): Use them.
16715 (svg_load_image) [HAVE_NTGUI]: Implement background.
16716
167172007-08-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16718
16719 * Makefile.in (RSVG_LIBS, RSVG_CFLAGS): New variables.
16720 (ALL_CFLAGS): Use ${RSVG_CFLAGS} instead of @RSVG_CFLAGS@.
16721 (LIBX): Remove @RSVG_LIBS@.
16722 (LIBES): Add $(RSVG_LIBS).
16723
16724 * image.c (svg_load_image): Blend with specified background if exists.
16725 Use IMAGE_BACKGROUND. Add Mac OS Support.
16726
16727 * mac.c (wakeup_from_rne_enabled_p) [MAC_OSX]: Remove variable.
16728 (ENABLE_WAKEUP_FROM_RNE, DISABLE_WAKEUP_FROM_RNE) [MAC_OSX]:
16729 Remove macros.
16730 [MAC_OSX] (socket_callback): Do nothing.
16731 [MAC_OSX] (select_and_poll_event): Use CFRunLoopRunInMode instead of
16732 ReceiveNextEvent.
16733 [MAC_OSX] (sys_select): Likewise. Don't set context as argument to
16734 socket_callback.
16735 (mac_wakeup_from_rne) [MAC_OSX]: Do nothing.
16736
167372007-08-22 Glenn Morris <rgm@gnu.org>
16738
16739 * image.c (x_find_image_file): Search in etc/images/ rather than etc/.
16740
167412007-08-22 Paul Pogonyshev <pogonyshev@gmx.net>
16742
16743 * Makefile.in (ALL_CFLAGS, LIBX): Add RSVG_LIBS.
16744
16745 * image.c: Add support for SVG images. Some additional comments
16746 by Joakim Verona <joakim@verona.se>. When HAVE_RSVG is defined:
16747 (svg_image_p): New function to test for SVG image.
16748 (svg_load): New function to load SVG image.
16749 (svg_load_image): New function, helper for svg_load.
16750 (Qsvg): New Lisp_object.
16751 (svg_keyword_index): New enum.
16752 (svg_format): New static `image_keyword' struct.
16753 (svg_type): New static `image_type' struct.
16754 (librsvg/rsvg.h): Include it.
16755
167562007-08-23 Stefan Monnier <monnier@iro.umontreal.ca>
16757
16758 * lread.c (load_warn_old_style_backquotes): Fix up array size typo.
16759
167602007-08-22 Stefan Monnier <monnier@iro.umontreal.ca>
16761
16762 * lread.c (Qold_style_backquotes): New var.
16763 (syms_of_lread): Init and staticpro it.
16764 (load_warn_old_style_backquotes): New fun.
16765 (Fload): Use them to warn about old style backquotes.
16766 (end_of_file_error, Fload): Remove unused vars.
16767
16768 * lisp.h (Fclear_face_cache, Fx_send_client_event): Declare.
16769
16770 * lread.c (Vold_style_backquotes): New var.
16771 (syms_of_lread): Init and export it to Elisp.
16772 (read1): Set it when we find an old-style (back)quote.
16773
167742007-08-22 Jason Rumney <jasonr@gnu.org>
16775
16776 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): Add missing NULL terminator.
16777
167782007-08-22 Katsumi Yamaoka <yamaoka@jpl.org>
16779
16780 * puresize.h (BASE_PURESIZE): Increase to 1140000.
16781
167822007-08-19 Richard Stallman <rms@gnu.org>
16783
16784 * eval.c (Ffunction, Fquote): Signal error if not 1 argument.
16785
167862007-08-19 Andreas Schwab <schwab@suse.de>
16787
16788 * alloc.c (pure): Round PURESIZE up.
16789
167902007-08-17 Jan Djärv <jan.h.d@swipnet.se>
16791
16792 * xterm.c (handle_one_xevent): Remove check that mouse click is in
16793 active frame.
16794
167952007-08-16 Richard Stallman <rms@gnu.org>
16796
16797 * eval.c (Fcommandp): Add parens to clarify.
16798
16799 * minibuf.c (Fall_completions): Use enum for type of table.
16800
16801 * emacs.c (USAGE2): Improve text.
16802
168032007-08-15 Philippe Waroquiers <philippe.waroquiers@eurocontrol.int>
16804
16805 * term.c (tty_default_color_capabilities): Declare static
16806 variables in file scope, to avoid HPUX compiler problem.
16807
168082007-08-13 Jan Djärv <jan.h.d@swipnet.se>
16809
16810 * gtkutil.c (update_frame_tool_bar): Use -1 as index
16811 to gtk_toolbar_insert.
16812
168132007-08-13 Stefan Monnier <monnier@iro.umontreal.ca>
16814
16815 * fileio.c (Finsert_file_contents): Yet Another Int/Lisp_Object Mixup.
16816
16817 * insdel.c (reset_var_on_error): New fun.
16818 (signal_before_change, signal_after_change):
16819 Use it to reset (after|before)-change-functions to nil in case of error.
16820 Bind inhibit-modification-hooks to t.
16821 Don't bind (after|before)-change-functions to nil while they run.
16822
168232007-08-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16824
16825 * xterm.c (x_draw_image_glyph_string): Adjust stipple origin when
16826 filling pixmap with stippled background.
16827
168282007-08-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16829
16830 * macterm.c [TARGET_API_MAC_CARBON] (mac_handle_window_event):
16831 Don't use invisible frame as parent window for repositioning.
16832
168332007-08-10 Stefan Monnier <monnier@iro.umontreal.ca>
16834
16835 * print.c (new_backquote_output): Rename from old_backquote_output.
16836 (print): Inverse its logic (according to its name) so as to match the
16837 behavior of new_backquote_flag in lread.c.
16838
168392007-08-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16840
16841 * gmalloc.c (posix_memalign): New function.
16842
16843 * macterm.c (frame_highlight, frame_unhighlight): Don't call
16844 ActivateControl/DeactivateControl here.
16845 [USE_MAC_TOOLBAR] (free_frame_tool_bar): Suppress animation when
16846 frame-notice-user-settings is non-nil.
16847 [USE_MAC_FONT_PANEL] (mac_handle_font_event): Also record parameter
16848 for kEventParamFMFontStyle.
16849 [TARGET_API_MAC_CARBON] (mac_handle_keyboard_event): Don't check
16850 mac_pass_command_to_system and mac_pass_control_to_system here.
16851 (XTread_socket): Call ActivateControl/DeactivateControl here.
16852 (XTread_socket) [TARGET_API_MAC_CARBON]:
16853 Check mac_pass_command_to_system and mac_pass_control_to_system here.
16854 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Add further workaround
16855 for window repositioning.
16856
168572007-08-08 Glenn Morris <rgm@gnu.org>
16858
16859 * Replace `iff' in doc-strings and comments.
16860
168612007-08-07 Chong Yidong <cyd@stupidchicken.com>
16862
16863 * xdisp.c (move_it_by_lines): Remove incorrect optimization.
16864
168652007-08-07 Martin Rudalics <rudalics@gmx.at>
16866
16867 * fileio.c (Finsert_file_contents): Run format-decode and
16868 after_insert_file_functions on entire buffer when REPLACE is
16869 non-nil and inhibit modification_hooks and point_motion_hooks.
16870 For consistency, run after_insert_file_functions iff something
16871 got inserted. Move signal_after_change and update_compositions
16872 after code running after_insert_file_functions. Make sure that
16873 undo_list doesn't record intermediate steps of the decoding process.
16874
168752007-08-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16876
16877 * emacs.c (main)
16878 [HAVE_GTK_AND_PTHREAD && !SYSTEM_MALLOC && !DOUG_LEA_MALLOC]:
16879 Call malloc_enable_thread on interactive startup.
16880
16881 * gmalloc.c (_malloc_thread_enabled_p) [USE_PTHREAD]: New variable.
16882 (LOCK, UNLOCK, LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS)
16883 [USE_PTHREAD]: Conditionalize with it.
16884 (malloc_atfork_handler_prepare, malloc_atfork_handler_parent)
16885 (malloc_atfork_handler_child, malloc_enable_thread) [USE_PTHREAD]:
16886 New functions.
16887
168882007-08-06 Chong Yidong <cyd@stupidchicken.com>
16889
16890 * xdisp.c (redisplay_window): When restoring original buffer
16891 position, make sure it is still valid.
16892
16893 * image.c (png_load): Ignore png-supplied background color.
16894
168952007-08-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16896
16897 * mac.c [TARGET_API_MAC_CARBON] (cfdate_to_lisp): Obtain microsec value.
16898 Use kCFAbsoluteTimeIntervalSince1970.
16899
16900 * macmenu.c (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]:
16901 New variable.
16902 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Set it if dialog
16903 event loop should be quit.
16904 [TARGET_API_MAC_CARBON] (create_and_show_dialog) [!MAC_OSX]:
16905 Quit dialog event loop if quit_dialog_event_loop is set.
16906
16907 * macselect.c [!TARGET_API_MAC_CARBON]: Include Scrap.h.
16908 (Selection): New typedef. Use instead of ScrapRef.
16909 (mac_get_selection_from_symbol): Rename from get_scrap_from_symbol.
16910 (mac_valid_selection_target_p): Rename from valid_scrap_target_type_p.
16911 (mac_clear_selection): Rename from clear_scrap.
16912 (get_flavor_type_from_symbol): New argument SEL and subsume function of
16913 scrap_has_target_type. All uses changed.
16914 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
16915 (mac_selection_has_target_p): New functions.
16916 (mac_put_selection_value): Rename from put_scrap_string.
16917 (mac_get_selection_value): Rename from get_scrap_string.
16918 (mac_get_selection_target_list): Rename from get_scrap_target_type_list.
16919 (put_scrap_private_timestamp, scrap_has_target_type)
16920 (get_scrap_private_timestamp): Remove functions.
16921 (SCRAP_FLAVOR_TYPE_EMACS_TIMESTAMP): Remove define.
16922 (x_own_selection, x_get_local_selection):
16923 Use mac_valid_selection_value_p.
16924 (x_own_selection): Don't use put_scrap_private_timestamp.
16925 Record OWNERSHIP-INFO into Vselection_alist instead.
16926 (x_get_local_selection): Don't check type if request is local.
16927 (Fx_selection_owner_p): Don't use get_scrap_private_timestamp.
16928 Detect ownership change with OWNERSHIP-INFO in Vselection_alist instead.
16929
169302007-08-04 Jan Djärv <jan.h.d@swipnet.se>
16931
16932 * gtkutil.c (xg_tool_bar_callback): Generate two TOOL_BAR_EVENT:s,
16933 add comment explaining why.
16934
169352007-08-03 Richard Stallman <rms@gnu.org>
16936
16937 * fileio.c (Fvisited_file_modtime): Use make_time.
16938
169392007-08-01 Ryo Yoshitake <ryo@shiftmode.net> (tiny change)
16940
16941 * mac.c (init_mac_osx_environment): Adjust load-path on self-contained
16942 build.
16943
169442007-07-31 Stefan Monnier <monnier@iro.umontreal.ca>
16945
16946 * gtkutil.c (xg_tool_bar_callback): Generate a single TOOL_BAR_EVENT.
16947
169482007-07-30 Katsumi Yamaoka <yamaoka@jpl.org>
16949
16950 * puresize.h (BASE_PURESIZE): Increase to 1130000.
16951
169522007-07-30 Richard Stallman <rms@gnu.org>
16953
16954 * lread.c (readevalloop, read1): Treat NBSP as whitespace.
16955
169562007-07-29 Jan Djärv <jan.h.d@swipnet.se>
16957
16958 * gmalloc.c (__malloc_initialize): Remove pthread_once. Not needed.
16959
169602007-07-28 Nick Roberts <nickrob@snap.net.nz>
16961
16962 * xdisp.c (decode_mode_spec): Use '@' instead of 'R' to test for
16963 remote default-directory.
16964
16965 * buffer.c (mode-line-format): Update doc string.
16966
169672007-07-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16968
16969 * w32term.c (w32_draw_fringe_bitmap): Extend fringe background to
16970 scroll bar gap.
16971 (x_scroll_bar_create): Set bar->fringe_extended_p.
16972 (w32_set_vertical_scroll_bar): Put leftmost/rightmost scroll bars
16973 on frame edge. Check fringe background extension. Don't clear
16974 extended fringe background area.
16975
16976 * w32term.h (struct scroll_bar): New member fringe_extended_p.
16977 (w32_fill_area): Enclose multiple statements with do ... while (0).
16978
16979 * xterm.c (x_draw_fringe_bitmap) [USE_TOOLKIT_SCROLL_BARS]:
16980 Extend fringe background to scroll bar gap.
16981 (x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS]:
16982 Set bar->fringe_extended_p.
16983 (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
16984 Put leftmost/rightmost scroll bars on frame edge. Check fringe
16985 background extension. Don't clear extended fringe background area.
16986
16987 * xterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
16988 New member fringe_extended_p.
16989
169902007-07-25 Glenn Morris <rgm@gnu.org>
16991
16992 * Relicense all FSF files to GPLv3 or later.
16993
16994 * COPYING: Switch to GPLv3.
16995
169962007-07-25 Stefan Monnier <monnier@iro.umontreal.ca>
16997
16998 * eval.c (Fcommandp): Pay attention to the `interactive-form' property.
16999
17000 * data.c (Finteractive_form): Check for the presence of an
17001 `interactive-form' symbol property more thoroughly.
17002
17003 * data.c (Finteractive_form): Use an `interactive-form' property if
17004 present, analogous to the function-documentation property.
17005
170062007-07-24 Jason Rumney <jasonr@gnu.org>
17007
17008 * w32fns.c (x_real_positions): Get real position from OS instead of
17009 calculating it.
17010
170112007-07-23 Jason Rumney <jasonr@gnu.org>
17012
17013 * filelock.c (current_lock_owner): Allow for @ sign in username.
17014
170152007-07-22 Nick Roberts <nickrob@snap.net.nz>
17016
17017 * xdisp.c (decode_mode_spec): Add case 'R' for to test for
17018 remote default-directory.
17019
17020 * buffer.c (mode-line-format): Describe above case in doc string.
17021
170222007-07-20 Eli Zaretskii <eliz@gnu.org>
17023
17024 * w32proc.c (IMAGE_NT_OPTIONAL_HDR32_MAGIC, IMAGE_OPTIONAL_HEADER32):
17025 Define if not defined.
17026
170272007-07-18 Jason Rumney <jasonr@gnu.org>
17028
17029 * w32proc.c (w32_executable_type): Handle 64 bit executables.
17030
170312007-07-18 Richard Stallman <rms@gnu.org>
17032
17033 * data.c (Fsetq_default): Doc fix.
17034
17035 * eval.c (Fsetq): Doc fix.
17036
170372007-07-18 Juanma Barranquero <lekktu@gmail.com>
17038
17039 * coding.c (Ffind_operation_coding_system):
17040 * eval.c (For, Fand): Doc fixes.
17041 Reported by Johan Bockgård.
17042
170432007-07-18 Jan Djärv <jan.h.d@swipnet.se>
17044
17045 * xfns.c (Fx_focus_frame): Call x_ewmh_activate_frame.
17046
17047 * xterm.h: Declare x_ewmh_activate_frame.
17048
17049 * xterm.c (x_ewmh_activate_frame): New function.
17050 (XTframe_raise_lower): Move code to x_ewmh_activate_frame.
17051
170522007-07-17 Martin Rudalics <rudalics@gmx.at>
17053
17054 * window.c (Fdisplay_buffer): If largest or LRU window is the
17055 only window, split it even if it is not eligible for splitting.
17056 This restores the original behavior broken by the 2007-07-15
17057 change.
17058
170592007-07-17 Glenn Morris <rgm@gnu.org>
17060
17061 * abbrev.c (abbrev_check_chars): New function.
17062 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
17063 Call abbrev_check_chars to check abbrev characters are word
17064 constituents. Doc fix.
17065
170662007-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
17067
17068 * process.c (Fstart_process, Fmake_network_process)
17069 (read_process_output): Fix up last changes.
17070
170712007-07-16 Eli Zaretskii <eliz@gnu.org>
17072
17073 * makefile.w32-in (clean): Don't delete *~.
17074
170752007-07-16 Andreas Schwab <schwab@suse.de>
17076
17077 * window.c (Fdisplay_buffer): Use NILP.
17078 (Fset_window_scroll_bars): Likewise.
17079
170802007-07-15 Martin Rudalics <rudalics@gmx.at>
17081
17082 * window.c (window_min_size_2): New function.
17083 (window_min_size_1, size_window, Fdisplay_buffer)
17084 (Fsplit_window, adjust_window_trailing_edge): Use it to avoid
17085 windows without mode- or header-lines when window-min-height is
17086 too small.
17087 (size_window): Reset nodelete_p after testing it, following an
17088 earlier note by Kim F. Storm.
17089 (display_buffer): Do not set split_height_threshold to twice the
17090 value of window_min_height to avoid changing the value of a
17091 customizable variable. Rather explicitly check whether the
17092 height of the window that shall be splitted is at least as large
17093 as split_height_threshold.
17094 (Fwindow_full_width_p): New defun.
17095 (syms_of_window): Defsubr it.
17096
17097 * window.h: Add EXFUN for Fwindow_full_width_p.
17098
170992007-07-14 Jason Rumney <jasonr@gnu.org>
17100
17101 * process.c [WINDOWSNT]: Don't undefine AF_INET6.
17102
171032007-07-14 Richard Stallman <rms@gnu.org>
17104
17105 * eval.c (maybe_call_debugger): New function.
17106 (find_handler_clause): Use maybe_call_debugger.
17107 Call it when the handler says `debug'.
17108 Eliminate DEBUGGER_VALUE_PTR.
17109 (Fsignal): Eliminate debugger_value.
17110 (Qdebug): New variable.
17111 (syms_of_eval): Initialize it.
17112
171132007-07-14 Juanma Barranquero <lekktu@gmail.com>
17114
17115 * eval.c (Fprogn):
17116 * keyboard.c (Ftrack_mouse):
17117 * print.c (Fwith_output_to_temp_buffer):
17118 * window.c (Fsave_window_excursion): Doc fix.
17119
171202007-07-13 Stefan Monnier <monnier@iro.umontreal.ca>
17121
17122 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 400.
17123
171242007-07-12 Stefan Monnier <monnier@iro.umontreal.ca>
17125
17126 * process.h (struct Lisp_Process): Turn slots infd, outfd,
17127 kill_without_query, pty_flag, tick, update_tick, decoding_carryover,
17128 inherit_coding_system_flag, filter_multibyte, adaptive_read_buffering,
17129 read_output_delay, and read_output_skip from Lisp_Objects to ints.
17130 Remove unused encoding_carryover.
17131 * process.c: Adjust all functions accordingly.
17132
171332007-07-12 Richard Stallman <rms@gnu.org>
17134
17135 * term.c: Include unistd.h only if HAVE_UNISTD_H.
17136
171372007-07-11 Jason Rumney <jasonr@gnu.org>
17138
17139 * makefile.w32-in (LIBS): Include OLE32.
17140
17141 * w32fns.c (w32_msg_pump) <WM_EMACS_CREATEWINDOW>: Initialize COM.
17142 (w32_msg_pump) <WM_DESTROY>: Uninitialize COM.
17143
171442007-07-11 Stefan Monnier <monnier@iro.umontreal.ca>
17145
17146 * lisp.h (struct Lisp_Hash_Table): Turn next_weak into a bare pointer.
17147 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and turned
17148 from a Lisp_Object into a bare pointer.
17149 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
17150 Adjust the code correspondingly.
17151
17152 * alloc.c (emacs_blocked_free): Remove unused var `bytes_used_now'.
17153
17154 * term.c: Include unistd.h for ttyname, used in handle_one_term_event.
17155 (term_show_mouse_face): Remove unused var `j'.
17156 (handle_one_term_event): Remove unused vars `i' and `j'.
17157 Don't cast return value of ttyname since it's not necessary.
17158
171592007-07-10 Stefan Monnier <monnier@iro.umontreal.ca>
17160
17161 * alloc.c (mark_maybe_pointer): Enforce mult-of-8 alignment when using
17162 USE_LSB_TAG. Suggested by Dmitry Antipov <dmantipov@yandex.ru>.
17163
17164 * fns.c (map_char_table): Use an array of int for `indices' rather than
17165 an array of Lisp_Objects (which are only ever integers anyway).
17166 (Fmap_char_table): Update caller.
17167 * lisp.h: Update prototype.
17168 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap):
17169 * fontset.c (Ffontset_info):
17170 * casetab.c (set_case_table): Update callers.
17171
17172 * editfns.c (Ftranspose_regions): Use EMACS_INT for positions.
17173
17174 * keymap.c (struct accessible_keymaps_data)
17175 (struct where_is_internal_data): New structures.
17176 (accessible_keymaps_1, where_is_internal_1): Use them to change
17177 interface to adhere to the one used by map_keymap.
17178 (Faccessible_keymaps, where_is_internal): Use map_keymap.
17179 (accessible_keymaps_char_table, where_is_internal_2): Remove.
17180
17181 * keymap.h (map_keymap_function_t): More informative prototype.
17182
171832007-07-10 Guanpeng Xu <herberteuler@hotmail.com>
17184
17185 * search.c (Vinhibit_changing_match_data, search_regs_1): New vars.
17186 (looking_at_1): Don't change search_regs and last_thing_searched
17187 if `inhibit-changing-match-data' is non-nil.
17188 (string_match_1, search_buffer, set_search_regs): Likewise.
17189 (syms_of_search): Add Lisp level definition for
17190 `inhibit-changing-match-data' and set it to nil.
17191 (boyer_moore): If `inhibit-changing-match-data' is non-nil, compute
17192 start and end of the match, instead of using values in search_regs.
17193
171942007-07-01 Stefan Monnier <monnier@iro.umontreal.ca>
17195
17196 * minibuf.c (Fcompleting_read): New value `confirm-only'
17197 for `require-match'.
17198
171992007-06-28 Stefan Monnier <monnier@iro.umontreal.ca>
17200
17201 * fileio.c (Fdo_auto_save): Revert last patch installed unwillingly as
17202 part of the 2007-06-27 change to syms_of_fileio.
17203
172042007-06-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17205
17206 * macterm.c [USE_MAC_TSM] (mac_handle_text_input_event):
17207 Check WINDOWP before using XWINDOW. Consolidate return statements.
17208
172092007-06-27 Richard Stallman <rms@gnu.org>
17210
17211 * fileio.c (syms_of_fileio) <after-insert-file-functions>: Doc fix.
17212
172132007-06-27 Juanma Barranquero <lekktu@gmail.com>
17214
17215 * buffer.c (syms_of_buffer) <selective-display>: Fix typo in docstring.
17216
172172007-06-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17218
17219 * gmalloc.c [HAVE_GTK_AND_PTHREAD]: Check this after including config.h.
17220 (_aligned_blocks_mutex) [USE_PTHREAD]: New variable.
17221 (LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS): New macros.
17222 (_free_internal, memalign): Use them.
17223 (_malloc_mutex, _aligned_blocks_mutex) [USE_PTHREAD]:
17224 Initialize to PTHREAD_MUTEX_INITIALIZER.
17225 (malloc_initialize_1) [USE_PTHREAD]: Don't use recursive mutex.
17226 (morecore_nolock): Rename from morecore. All uses changed.
17227 Use only nolock versions of internal allocation functions.
17228 (_malloc_internal_nolock, _realloc_internal_nolock)
17229 (_free_internal_nolock): New functions created from
17230 _malloc_internal, _realloc_internal, and _free_internal.
17231 (_malloc_internal, _realloc_internal, _free_internal): Use them.
17232 Copy hook value to automatic variable before its use.
17233 (memalign): Copy hook value to automatic variable before its use.
17234
172352007-06-26 Kenichi Handa <handa@m17n.org>
17236
17237 * coding.c (Ffind_operation_coding_system): Docstring improved.
17238 (syms_of_coding): Docstring of `file-coding-system-alist' improved.
17239
172402007-06-25 David Kastrup <dak@gnu.org>
17241
17242 * keymap.c (Fcurrent_active_maps): Add `position' argument.
17243 (Fwhere_is_internal): Adjust call to `current-active-maps' to
17244 cater for additional parameter.
17245
17246 * keymap.h: Adjust number of parameters to `current-active-maps'.
17247
17248 * doc.c (Fsubstitute_command_keys): Adjust call of
17249 `current-active-maps'.
17250
172512007-06-25 David Kastrup <dak@gnu.org>
17252
17253 * callint.c (Fcall_interactively): Make the parsing of interactive
17254 specs somewhat more readable.
17255
172562007-06-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17257
17258 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe background
17259 to scroll bar gap also when bitmap fills fringe. Draw only foreground
17260 if extended background has already been filled.
17261
172622007-06-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17263
17264 * macgui.h (USE_CG_DRAWING): Don't require USE_ATSUI.
17265 (USE_MAC_TOOLBAR): Require USE_CG_DRAWING.
17266
17267 * macmenu.c (mac_dialog_modal_filter, Fx_popup_dialog) [MAC_OSX]:
17268 Put special treatment for Fmessage_box, Fyes_or_no_p, and Fy_or_n_p
17269 in #if 0 as it is not compatible with y-or-n-p-with-timeout.
17270 (timer_check) [TARGET_API_MAC_CARBON]: Add extern.
17271 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Use QuitEventLoop
17272 instead of QuitAppModalLoopForWindow. Consolidate QuitEventLoop calls.
17273 (pop_down_dialog) [TARGET_API_MAC_CARBON]: New function.
17274 [TARGET_API_MAC_CARBON] (create_and_show_dialog): Use it for unwind.
17275 Run timers during dialog popup.
17276 (Fmenu_or_popup_active_p) [TARGET_API_MAC_CARBON]: Use popup_activated.
17277
172782007-06-21 Jason Rumney <jasonr@gnu.org>
17279
17280 * image.c (convert_mono_to_color_image): Swap fore and background.
17281
172822007-06-20 Jason Rumney <jasonr@gnu.org>
17283
17284 * w32bdf.c (w32_BDF_to_x_font): Unmap memory when finished.
17285 (w32_free_bdf_font): Unmap memory not handle.
17286
172872007-06-20 Sam Steingold <sds@gnu.org>
17288
17289 * gmalloc.c (__morecore): Fix the declaration to comply with the
17290 definition.
17291
172922007-06-20 Juanma Barranquero <lekktu@gmail.com>
17293
17294 * w32term.c (w32_delete_display): Remove leftover declaration.
17295 (w32_define_cursor, w32_initialize): Make static.
17296
17297 * w32.c (_wsa_errlist): Fix typo in error message.
17298 (init_environment): Ignore any environment variable from the
17299 registry having a null value.
17300
173012007-06-20 Glenn Morris <rgm@gnu.org>
17302
17303 * Makefile.in (LIBGIF): Default to -lgif.
17304
173052007-06-17 Jason Rumney <jasonr@gnu.org>
17306
17307 * w32menu.c (add_menu_item): Don't use multibyte string functions on
17308 unicode strings.
17309
173102007-06-16 Juanma Barranquero <lekktu@gmail.com>
17311
17312 * xdisp.c (syms_of_xdisp) <auto-resize-tool-bars>:
17313 Fix typo in docstring.
17314
173152007-06-16 Eli Zaretskii <eliz@gnu.org>
17316
17317 * w32menu.c (add_menu_item): Escape `&' characters in menu items
17318 and their keybindings.
17319
173202007-06-15 Chong Yidong <cyd@stupidchicken.com>
17321
17322 * composite.c (update_compositions): Fix last fix.
17323
173242007-06-14 Jason Rumney <jasonr@gnu.org>
17325
17326 * w32.c (get_process_times_fn): New function pointer.
17327 (globals_of_w32): Intialize it if present in kernel32.dll.
17328 (w32_get_internal_run_time): New function.
17329
17330 * editfns.c (Fget_internal_run_time) [WINDOWSNT]: Use it.
17331
173322007-06-14 Kenichi Handa <handa@etlken.m17n.org>
17333
17334 * composite.c (update_compositions): Check the validness of
17335 compositions.
17336
173372007-06-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17338
17339 * frame.h (struct frame) [MAC_OS]: New member external_tool_bar.
17340 (FRAME_EXTERNAL_TOOL_BAR) [MAC_OS]: Use it.
17341
17342 * macfns.c (mac_window) [USE_MAC_TOOLBAR]: Set toolbar_win_gravity.
17343 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]: Set FRAME_EXTERNAL_TOOL_BAR.
17344
17345 * macgui.h (USE_MAC_TOOLBAR): New define.
17346
17347 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
17348 Return immediately unless popup is activated.
17349
17350 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe
17351 background to scroll bar gap.
17352 (x_scroll_bar_create) [MAC_OSX]: Set bar->fringe_extended_p.
17353 (XTset_vertical_scroll_bar) [MAC_OSX]: Put leftmost/rightmost
17354 scroll bars on frame edge. Check fringe background extension.
17355 Don't clear extended fringe background area.
17356 (TOOLBAR_IDENTIFIER, TOOLBAR_ICON_ITEM_IDENTIFIER)
17357 (TOOLBAR_ITEM_COMMAND_ID_OFFSET, TOOLBAR_ITEM_COMMAND_ID_P)
17358 (TOOLBAR_ITEM_COMMAND_ID_VALUE, TOOLBAR_ITEM_MAKE_COMMAND_ID):
17359 [USE_MAC_TOOLBAR]: New macros.
17360 (mac_move_window_with_gravity, mac_get_window_origin_with_gravity)
17361 (mac_handle_toolbar_event, mac_image_spec_to_cg_image)
17362 (mac_create_frame_tool_bar, update_frame_tool_bar, free_frame_tool_bar)
17363 (mac_tool_bar_note_mouse_movement, mac_handle_toolbar_command_event)
17364 [USE_MAC_TOOLBAR]: New functions.
17365 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Reposition window
17366 manually if previous repositioning has failed.
17367 (mac_handle_keyboard_event): Use precomputed event kind.
17368 (XTread_socket) [USE_MAC_TOOLBAR]: Handle click in structure region
17369 as tool bar item click. Handle mouse movement over tool bar items.
17370
17371 * macterm.h (struct mac_output) [USE_MAC_TOOLBAR]: New member
17372 toolbar_win_gravity.
17373 (struct scroll_bar) [MAC_OSX]: New member fringe_extended_p.
17374 (update_frame_tool_bar, free_frame_tool_bar) [USE_MAC_TOOLBAR]:
17375 Add externs.
17376
17377 * xdisp.c (update_tool_bar, redisplay_tool_bar, redisplay_window)
17378 [USE_MAC_TOOLBAR]: Sync with GTK+ tool bar display.
17379
173802007-06-14 Chong Yidong <cyd@stupidchicken.com>
17381
17382 * image.c (search_image_cache): Remove unused variable.
17383
173842007-06-13 Chong Yidong <cyd@stupidchicken.com>
17385
17386 * xfns.c, xmenu.c: Link to xaw3d if available.
17387
173882007-06-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17389
17390 * dispextern.h (struct image) [HAVE_WINDOW_SYSTEM]: New members
17391 frame_foreground and frame_background.
17392
17393 * image.c (lookup_image): Save frame foreground and background colors.
17394 (search_image_cache): Check if saved and current frame colors match.
17395
173962007-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
17397
17398 * regex.c (regex_compile): Remove the `regnum' counter.
17399 Use bufp->re_nsub instead. Add support for \(?N:RE\).
17400
174012007-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
17402
17403 * term.c: Include intervals.h to declare Fget_text_property.
17404
174052007-06-10 Jason Rumney <jasonr@gnu.org>
17406
17407 * w32fns.c (Fx_file_dialog): Take size from struct not pointer.
17408
174092007-06-08 Juanma Barranquero <lekktu@gmail.com>
17410
17411 * callint.c (Fcall_interactively):
17412 * editfns.c (Fdelete_and_extract_region):
17413 * fileio.c (Fread_file_name):
17414 * fns.c (Fmapconcat):
17415 * keyboard.c (cmd_error_internal):
17416 * keymap.c (Fkey_description):
17417 * lread.c (openp):
17418 * minibuf.c (read_minibuf):
17419 * search.c (wordify):
17420 * sunfns.c (sel_read):
17421 * xdisp.c (Fformat_mode_line, syms_of_xdisp):
17422 * xfns.c (x_default_scroll_bar_color_parameter):
17423 * xmenu.c (menu_help_callback):
17424 * xselect.c (Fx_get_atom_name):
17425 * xterm.c (x_term_init): Use empty_unibyte_string.
17426
174272007-06-08 Dmitry Antipov <dmantipov@yandex.ru> (tiny change)
17428
17429 * alloc.c (init_strings): Initialize canonical empty strings.
17430 (make_uninit_string, make_uninit_multibyte_string): Return appropriate
17431 canonical empty string when the requested size is 0.
17432
17433 * emacs.c (empty_unibyte_string): Rename from empty_string.
17434 (empty_multibyte_string): New canonical empty string.
17435 (syms_of_emacs): Don't initialize empty_string.
17436
17437 * lisp.h (STRING_SET_UNIBYTE): Return the canonical empty unibyte
17438 string, if appropriate.
17439 (empty_unibyte_string, empty_multibyte_string): New externs.
17440 (empty_string): Remove extern.
17441
17442 * lread.c (syms_of_lread): Use empty_unibyte_string.
17443
174442007-06-07 Jason Rumney <jasonr@gnu.org>
17445
17446 * s/ms-w32.h: Don't define HAVE_TZNAME.
17447
17448 * editfns.c (Fcurrent_time_zone): Remove hack for Japanese Windows.
17449
174502007-06-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17451
17452 * mac.c (xrm_get_preference_database): Remove BLOCK_INPUT.
17453
17454 * macfns.c (mac_get_window_bounds): Move extern to macterm.h.
17455 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use GetGlobalMouse.
17456
17457 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
17458 Don't call next handler.
17459 [TARGET_API_MAC_CARBON] (install_menu_target_item_handler):
17460 Remove argument. Install handler to application.
17461 (set_frame_menubar): Don't change deep_p.
17462 (mac_menu_show): Use FRAME_OUTER_TO_INNER_DIFF_X and
17463 FRAME_OUTER_TO_INNER_DIFF_Y.
17464 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
17465 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
17466 [HAVE_DIALOGS]: New macros.
17467 [HAVE_DIALOGS] (mac_handle_dialog_event, create_and_show_dialog):
17468 Use them.
17469 (fill_menubar) [TARGET_API_MAC_CARBON]: Use CFString.
17470
17471 * macselect.c [MAC_OSX] (install_service_handler): Rename from
17472 init_service_handler. All callers changed. Return OSStatus value.
17473
17474 * macterm.c (mac_begin_cg_clip): New arg F. Call SetPortWindowPort.
17475 All callers changed so as not to call SetPortWindowPort.
17476 (mac_begin_cg_clip) [USE_CG_DRAWING]: Call mac_prepare_for_quickdraw.
17477 (mac_draw_image_string_atsui) [USE_ATSUI]: New function created from
17478 mac_draw_string_common.
17479 (mac_draw_image_string_qd): Likewise.
17480 (mac_draw_string_common): Use them. Add INLINE.
17481 (XTmouse_position, x_scroll_bar_report_motion) [TARGET_API_MAC_CARBON]:
17482 Use FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y, and
17483 GetGlobalMouse.
17484 (x_set_mouse_pixel_position) [MAC_OSX]: Use FRAME_OUTER_TO_INNER_DIFF_X
17485 and FRAME_OUTER_TO_INNER_DIFF_Y.
17486 [TARGET_API_MAC_CARBON] (mac_handle_mouse_event): Likewise.
17487 [USE_MAC_TSM] (mac_handle_text_input_event): Likewise.
17488 (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Move code for
17489 repositioning window to mac_handle_window_event.
17490 (x_make_frame_invisible) [TARGET_API_MAC_CARBON]: Move code for
17491 saving window location to mac_handle_window_event
17492 [USE_MAC_FONT_PANEL] (mac_show_hide_font_panel): Install handler here.
17493 (install_menu_target_item_handler): Remove argument in extern.
17494 [TARGET_API_MAC_CARBON] (mac_event_to_emacs_modifiers):
17495 Also accept command events.
17496 (do_keystroke): New function created from XTread_socket.
17497 (init_command_handler): Remove functions.
17498 [TARGET_API_MAC_CARBON] (mac_handle_window_event): Reposition window
17499 and save window location by kEventWindowShowing and kEventWindowHiding
17500 handlers here. Don't call next handler for window state change and
17501 focus events.
17502 (mac_handle_application_event, mac_handle_keyboard_event)
17503 [TARGET_API_MAC_CARBON]: New functions.
17504 (install_window_handler) [TARGET_API_MAC_CARBON]: Register handlers for
17505 kEventWindowShowing and kEventWindowHiding events. Move installation
17506 of mouse, font, text input and menu target item handlers to
17507 install_application_handler.
17508 (install_application_handler) [TARGET_API_MAC_CARBON]: New function.
17509 (mac_handle_cg_display_reconfig) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
17510 New function.
17511 (init_dm_notification_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
17512 Register it.
17513 (XTread_socket) [TARGET_API_MAC_CARBON]:
17514 Consolidate SendEventToEventTarget calls.
17515 Use FRAME_OUTER_TO_INNER_DIFF_X and FRAME_OUTER_TO_INNER_DIFF_Y.
17516 Move application activation handler to mac_handle_application_event.
17517 Move keyboard handler to mac_handle_keyboard_event.
17518 (XTread_socket) [!TARGET_API_MAC_CARBON]: Use do_keystroke.
17519 (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
17520 init_command_handler. Call install_application_handler.
17521
17522 * macterm.h (mac_get_window_bounds): Move extern from macfns.c.
17523 (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y): New macros.
17524
175252007-06-07 Glenn Morris <rgm@gnu.org>
17526
17527 * emacs.c (main): Use `emacs-copyright' in --version output.
17528
175292007-06-06 Chong Yidong <cyd@stupidchicken.com>
17530
17531 * image.c (xpm_load): Remove spurious call to xpm_init_color_cache.
17532
175332007-06-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17534
17535 * macfns.c (mac_window): Replace WindowPtr with WindowRef.
17536
17537 * macgui.h: Replace WindowPtr with WindowRef.
17538
17539 * macmenu.c: Replace MenuHandle and GetMenuHandle with MenuRef and
17540 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
17541 Replace ControlHandle with ControlRef.
17542 (install_menu_quit_handler): Rename arg MENU_HANDLE to ROOT_MENU.
17543
17544 * macterm.c: Replace MenuHandle and GetMenuHandle with MenuRef and
17545 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
17546 Replace ControlHandle with ControlRef.
17547 (USE_CARBON_EVENTS): Remove. Use TARGET_API_MAC_CARBON instead.
17548 [MAC_OS8] (do_get_menus): Rename variable `menu_handle' to `menu'.
17549
17550 * macterm.h (struct scroll_bar): Rename member control_handle_low
17551 and control_handle_high to control_ref_low and control_ref_high.
17552 All uses changed.
17553 (SCROLL_BAR_CONTROL_REF, SET_SCROLL_BAR_CONTROL_REF): Rename from
17554 SCROLL_BAR_CONTROL_HANDLE and SET_SCROLL_BAR_CONTROL_HANDLE,
17555 respectively. All uses changed.
17556 (XCreatePixmap, XCreatePixmapFromBitmapData, XSetWindowBackground)
17557 (install_window_handler, remove_window_handler): Replace WindowPtr
17558 with WindowRef in externs.
17559
175602007-06-05 Juanma Barranquero <lekktu@gmail.com>
17561
17562 * xfaces.c (Finternal_lisp_face_p): Signal error for face alias loops.
17563
175642007-06-03 Nick Roberts <nickrob@snap.net.nz>
17565
17566 * keyboard.c (discard_mouse_events): Add GPM_CLICK_EVENT case.
17567
17568 * frame.c (Fmouse_position, Fmouse_pixel_position):
17569 Condition on HAVE_GPM too.
17570
17571 * term.c (term_mouse_highlight): Remove unused variables.
17572 (Fterm_open_connection): Set gpm_zerobased to 1.
17573 (term_mouse_movement, term_mouse_click, handle_one_term_event):
17574 Use zero based co-ordinates.
17575 (handle_one_term_event): Report a drag as mouse movement too.
17576
17577 * Makefile.in (MOUSE_SUPPORT): Define for HAVE_GPM.
17578
175792007-06-03 Chong Yidong <cyd@stupidchicken.com>
17580
17581 * image.c (search_image_cache): New function. Require background
17582 color match if background color is unspecified in the image spec.
17583 (uncache_image, lookup_image): Use it.
17584
175852007-06-01 Juanma Barranquero <lekktu@gmail.com>
17586
17587 * window.c (Fshrink_window): Reflow docstring.
17588
175892007-06-02 Chong Yidong <cyd@stupidchicken.com>
17590
17591 * Version 22.1 released.
17592
175932007-06-01 Richard Stallman <rms@gnu.org>
17594
17595 * xfns.c (x_encode_text): Add GCPRO.
17596
175972007-06-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17598
17599 * xfns.c (x_set_name_internal): Save encoded name before
17600 x_encode_text in case string data is relocated.
17601
176022007-05-31 Richard Stallman <rms@gnu.org>
17603
17604 * buffer.c (syms_of_buffer): Doc fix.
17605
176062007-05-30 Nick Roberts <nickrob@snap.net.nz>
17607
17608 * sysdep.c (init_sys_modes): Add rather than replace with
17609 O_NONBLOCK.
17610
17611 * frame.c [HAVE_GPM] (Fset_mouse_pixel_position): Add call to
17612 term_mouse_moveto.
17613
17614 * termhooks.h (term_mouse_moveto): New extern.
17615
17616 * term.c (mouse_face_window): Rename...
17617 (Qmouse_face_window): ...to this.
17618 (term_show_mouse_face, term_clear_mouse_face)
17619 (term_mouse_highlight): Use Qmouse_face_window.
17620 (term_mouse_moveto): New function.
17621 (term_mouse_position): Make it work.
17622 (syms_of_term): Uncomment assignment to mouse_position_hook.
17623 Staticpro Qmouse_face_window.
17624
176252007-05-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17626
17627 * xdisp.c (redisplay_internal): Bind inhibit-point-motion-hooks to t
17628 around current_column call.
17629
176302007-05-26 Dan Nicolaescu <dann@ics.uci.edu>
17631
17632 * xfaces.c (syms_of_xfaces): Delete stray semicolon.
17633 * xdisp.c (next_element_from_buffer):
17634 * window.c (delete_window):
17635 * term.c (term_mouse_highlight):
17636 * msdos.c (getdefdir):
17637 * macterm.c (mac_create_bitmap_from_bitmap_data)
17638 (init_font_name_table):
17639 * fns.c (Fsxhash):
17640 * data.c (Fmake_local_variable):
17641 * ccl.c (ccl_driver): Likewise.
17642
176432007-05-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17644
17645 * macterm.c [USE_CARBON_EVENTS] (mac_handle_window_event):
17646 Call mac_wakeup_from_rne on window size change.
17647
176482007-05-25 Chong Yidong <cyd@stupidchicken.com>
17649
17650 * image.c (uncache_image): Fix typo.
17651
176522007-05-23 Johannes Weiner <hannes@saeurebad.de> (tiny change)
17653
17654 * keyboard.c (make_lispy_movement): Condition on HAVE_GPM too.
17655
176562007-05-22 Richard Stallman <rms@gnu.org>
17657
17658 * xterm.c (x_connection_closed): Remove NO_RETURN.
17659
176602007-05-22 Martin Rudalics <rudalics@gmx.at>
17661
17662 * syntax.c (scan_words): Fix arg to UPDATE_SYNTAX_TABLE_BACKWARD.
17663
176642007-05-21 Chong Yidong <cyd@stupidchicken.com>
17665
17666 * image.c (uncache_image): New function.
17667 (Fimage_refresh): New function.
17668
176692007-05-20 Jan Djärv <jan.h.d@swipnet.se>
17670
17671 * Makefile.in: Move GPM check outside HAVE_X_WINDOWS.
17672
176732007-05-20 Nick Roberts <nickrob@snap.net.nz>
17674
17675 * config.in, keyboard.c, Makefile.in, sysdep.c, term.c,
17676 * termhooks.h: Use HAVE_GPM instead of HAVE_GPM_H.
17677
176782007-05-20 Nick Roberts <nickrob@snap.net.nz>
17679
17680 * keyboard.c (make_lispy_event): Make case GPM_CLICK_EVENT
17681 conditional on [HAVE_GPM_H].
17682
176832007-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
17684
17685 * syntax.c (skip_chars): Update syntax-table only after we checked that
17686 the new location is valid.
17687
176882007-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17689
17690 * macterm.c (x_calc_absolute_position): Add BLOCK_INPUT around
17691 mac_get_window_bounds.
17692
176932007-05-20 Nick Roberts <nickrob@snap.net.nz>
17694
17695 * Makefile.in (LIBGPM): Allow it to be set from configure.
17696 If set then link Emacs with it.
17697
17698 * config.in: Regenerate.
17699
17700 * lisp.h (add_gpm_wait_descriptor, delete_gpm_wait_descriptor):
17701 New externs.
17702
17703 * termhooks.h [HAVE_GPM_H] (enum event_kind): Add GPM_CLICK_EVENT.
17704 Include gpm.h.
17705 (handle_one_term_event, term_gpm): New externs.
17706
17707 * sysdep.c [HAVE_GPM_H] (init_sys_modes): Make gpm_fd nonblocking
17708 and allow it to be interrupted by SIGIO.
17709
17710 * process.c (gpm_wait_mask, max_gpm_desc): New variables.
17711 (wait_reading_process_output): Wait on gpm_fd too.
17712 (add_gpm_wait_descriptor, delete_gpm_wait_descriptor)): New functions.
17713 (add_gpm_wait_descriptor_called_flag): New variable.
17714 (delete_keyboard_wait_descriptor): Check gpm_wait_mask.
17715
17716 * keyboard.c [HAVE_GPM_H] (Qmouse_fixup_help_message)
17717 (make_lispy_movement, tracking_off, Ftrack_mouse, some_mouse_moved)
17718 (show_help_echo, readable_events, kbd_buffer_get_event, init_keyboard):
17719 Extend HAVE_MOUSE ifdefs to HAVE_GPM_H.
17720 (make_lispy_event): Add case GPM_CLICK_EVENT.
17721 (read_avail_input): Handle mouse input.
17722
17723 * term.c (write_glyphs_with_face): New function.
17724 [HAVE_GPM_H]: Include buffer.h, sys/fcntl.h.
17725 (mouse_face_beg_row, mouse_face_beg_col, mouse_face_end_row)
17726 (mouse_face_end_col, mouse_face_past_end, mouse_face_window)
17727 (mouse_face_face_id, term_gpm, pos_x, pos_y)
17728 (last_mouse_x, last_mouse_y): New variables.
17729 (term_show_mouse_face, term_clear_mouse_face, fast_find_position)
17730 (term_mouse_highlight, term_mouse_movement, term_mouse_position)
17731 (term_mouse_click, handle_one_term_event, Fterm_open_connection)
17732 (Fterm_close_connection): New functions.
17733 (term_init): Initialise mouse_face_window.
17734
177352007-05-19 Chong Yidong <cyd@stupidchicken.com>
17736
17737 * xdisp.c (redisplay_window): If first window line is a
17738 continuation line, recompute the new window start instead of
17739 recentering.
17740
177412007-05-18 Glenn Morris <rgm@gnu.org>
17742
17743 * m/alpha.h (ORDINARY_LINK): No longer define on OpenBSD.
17744 Suggested by Alfred M. Szmidt <ams@gnu.org>.
17745
177462007-05-17 Glenn Morris <rgm@gnu.org>
17747
17748 * m/macppc.h (ORDINARY_LINK): No longer define on OpenBSD.
17749
177502007-05-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17751
17752 * macterm.c [USE_CARBON_EVENTS] (mac_convert_event_ref): Also convert
17753 dead key repeat and up events.
17754
177552007-05-14 Chong Yidong <cyd@stupidchicken.com>
17756
17757 * image.c (pbm_load): Check image size for monochrome pbm.
17758
177592007-05-13 Chong Yidong <cyd@stupidchicken.com>
17760
17761 * xterm.c (XTread_socket): Revert last change.
17762
177632007-05-12 Chong Yidong <cyd@stupidchicken.com>
17764
17765 * image.c (pbm_load): Correctly check image size for greyscale pbm.
17766
17767 * xterm.c (XTread_socket): Yet Another Uncaught X Error Crash (YAUXEC).
17768
177692007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
17770
17771 * editfns.c (Ftranspose_regions): Yet another int/Lisp_Object
17772 mixup (YAILOM).
17773
177742007-05-07 Andreas Schwab <schwab@suse.de>
17775
17776 * keymap.c (Flookup_key): Fix typo in last change.
17777
177782007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
17779
17780 * keymap.c (Fdefine_key, Flookup_key): Only do the 0x80->meta_modifier
17781 mapping for unibyte strings.
17782
177832007-05-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17784
17785 * macmenu.c (mac_dialog_show): Apply 2007-04-27 change for xmenu.c.
17786 (Fx_popup_dialog) [MAC_OSX]: Likewise.
17787
177882007-04-29 Richard Stallman <rms@gnu.org>
17789
17790 * insdel.c (replace_range): For undo, record insertion first.
17791
177922007-04-29 Andreas Schwab <schwab@suse.de>
17793
17794 * lisp.h (VECSIZE): Use OFFSETOF.
17795
177962007-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17797
17798 * xdisp.c (try_window_reusing_current_matrix): Fix number of
17799 disabled lines.
17800
178012007-04-28 Richard Stallman <rms@gnu.org>
17802
17803 * lread.c (read_escape): In a string, \s is always space.
17804
178052007-04-27 Jan Djärv <jan.h.d@swipnet.se>
17806
17807 * xmenu.c (xdialog_show): Call Fredisplay before showing the dialog.
17808
17809 * gtkutil.c (xg_update_menubar, create_menus): Create empty
17810 submenu for menu bar items.
17811
17812See ChangeLog.10 for earlier changes.
17813
17814;; Local Variables:
17815;; coding: utf-8
17816;; add-log-time-zone-rule: t
aac0c6e3
MR
17817;; End:
17818
76b6f707 17819 Copyright (C) 2007, 2008, 2009 Free Software Foundation, Inc.
aac0c6e3
MR
17820
17821 This file is part of GNU Emacs.
17822
17823 GNU Emacs is free software: you can redistribute it and/or modify
17824 it under the terms of the GNU General Public License as published by
17825 the Free Software Foundation, either version 3 of the License, or
17826 (at your option) any later version.
17827
17828 GNU Emacs is distributed in the hope that it will be useful,
17829 but WITHOUT ANY WARRANTY; without even the implied warranty of
17830 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17831 GNU General Public License for more details.
17832
17833 You should have received a copy of the GNU General Public License
17834 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
17835
17836;; arch-tag: dfb6ad96-1550-4905-9e53-d2059ee84c40